@vue/compat 3.5.27 → 3.5.29
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/vue.cjs.js +125 -72
- package/dist/vue.cjs.prod.js +123 -63
- package/dist/vue.esm-browser.js +125 -72
- package/dist/vue.esm-browser.prod.js +8 -8
- package/dist/vue.esm-bundler.js +125 -72
- package/dist/vue.global.js +125 -72
- package/dist/vue.global.prod.js +8 -8
- package/dist/vue.runtime.esm-browser.js +125 -72
- package/dist/vue.runtime.esm-browser.prod.js +3 -3
- package/dist/vue.runtime.esm-bundler.js +125 -72
- package/dist/vue.runtime.global.js +125 -72
- package/dist/vue.runtime.global.prod.js +3 -3
- package/package.json +3 -3
package/dist/vue.cjs.prod.js
CHANGED
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
/**
|
|
2
|
-
* @vue/compat v3.5.
|
|
2
|
+
* @vue/compat v3.5.29
|
|
3
3
|
* (c) 2018-present Yuxi (Evan) You and Vue contributors
|
|
4
4
|
* @license MIT
|
|
5
5
|
**/
|
|
@@ -359,6 +359,7 @@ const stringifySymbol = (v, i = "") => {
|
|
|
359
359
|
|
|
360
360
|
let activeEffectScope;
|
|
361
361
|
class EffectScope {
|
|
362
|
+
// TODO isolatedDeclarations "__v_skip"
|
|
362
363
|
constructor(detached = false) {
|
|
363
364
|
this.detached = detached;
|
|
364
365
|
/**
|
|
@@ -378,6 +379,7 @@ class EffectScope {
|
|
|
378
379
|
*/
|
|
379
380
|
this.cleanups = [];
|
|
380
381
|
this._isPaused = false;
|
|
382
|
+
this.__v_skip = true;
|
|
381
383
|
this.parent = activeEffectScope;
|
|
382
384
|
if (!detached && activeEffectScope) {
|
|
383
385
|
this.index = (activeEffectScope.scopes || (activeEffectScope.scopes = [])).push(
|
|
@@ -3067,7 +3069,22 @@ function moveTeleport(vnode, container, parentAnchor, { o: { insert }, m: move }
|
|
|
3067
3069
|
function hydrateTeleport(node, vnode, parentComponent, parentSuspense, slotScopeIds, optimized, {
|
|
3068
3070
|
o: { nextSibling, parentNode, querySelector, insert, createText }
|
|
3069
3071
|
}, hydrateChildren) {
|
|
3070
|
-
function
|
|
3072
|
+
function hydrateAnchor(target2, targetNode) {
|
|
3073
|
+
let targetAnchor = targetNode;
|
|
3074
|
+
while (targetAnchor) {
|
|
3075
|
+
if (targetAnchor && targetAnchor.nodeType === 8) {
|
|
3076
|
+
if (targetAnchor.data === "teleport start anchor") {
|
|
3077
|
+
vnode.targetStart = targetAnchor;
|
|
3078
|
+
} else if (targetAnchor.data === "teleport anchor") {
|
|
3079
|
+
vnode.targetAnchor = targetAnchor;
|
|
3080
|
+
target2._lpa = vnode.targetAnchor && nextSibling(vnode.targetAnchor);
|
|
3081
|
+
break;
|
|
3082
|
+
}
|
|
3083
|
+
}
|
|
3084
|
+
targetAnchor = nextSibling(targetAnchor);
|
|
3085
|
+
}
|
|
3086
|
+
}
|
|
3087
|
+
function hydrateDisabledTeleport(node2, vnode2) {
|
|
3071
3088
|
vnode2.anchor = hydrateChildren(
|
|
3072
3089
|
nextSibling(node2),
|
|
3073
3090
|
vnode2,
|
|
@@ -3077,8 +3094,6 @@ function hydrateTeleport(node, vnode, parentComponent, parentSuspense, slotScope
|
|
|
3077
3094
|
slotScopeIds,
|
|
3078
3095
|
optimized
|
|
3079
3096
|
);
|
|
3080
|
-
vnode2.targetStart = targetStart;
|
|
3081
|
-
vnode2.targetAnchor = targetAnchor;
|
|
3082
3097
|
}
|
|
3083
3098
|
const target = vnode.target = resolveTarget(
|
|
3084
3099
|
vnode.props,
|
|
@@ -3089,27 +3104,22 @@ function hydrateTeleport(node, vnode, parentComponent, parentSuspense, slotScope
|
|
|
3089
3104
|
const targetNode = target._lpa || target.firstChild;
|
|
3090
3105
|
if (vnode.shapeFlag & 16) {
|
|
3091
3106
|
if (disabled) {
|
|
3092
|
-
hydrateDisabledTeleport(
|
|
3093
|
-
|
|
3094
|
-
|
|
3095
|
-
|
|
3096
|
-
|
|
3097
|
-
|
|
3107
|
+
hydrateDisabledTeleport(node, vnode);
|
|
3108
|
+
hydrateAnchor(target, targetNode);
|
|
3109
|
+
if (!vnode.targetAnchor) {
|
|
3110
|
+
prepareAnchor(
|
|
3111
|
+
target,
|
|
3112
|
+
vnode,
|
|
3113
|
+
createText,
|
|
3114
|
+
insert,
|
|
3115
|
+
// if target is the same as the main view, insert anchors before current node
|
|
3116
|
+
// to avoid hydrating mismatch
|
|
3117
|
+
parentNode(node) === target ? node : null
|
|
3118
|
+
);
|
|
3119
|
+
}
|
|
3098
3120
|
} else {
|
|
3099
3121
|
vnode.anchor = nextSibling(node);
|
|
3100
|
-
|
|
3101
|
-
while (targetAnchor) {
|
|
3102
|
-
if (targetAnchor && targetAnchor.nodeType === 8) {
|
|
3103
|
-
if (targetAnchor.data === "teleport start anchor") {
|
|
3104
|
-
vnode.targetStart = targetAnchor;
|
|
3105
|
-
} else if (targetAnchor.data === "teleport anchor") {
|
|
3106
|
-
vnode.targetAnchor = targetAnchor;
|
|
3107
|
-
target._lpa = vnode.targetAnchor && nextSibling(vnode.targetAnchor);
|
|
3108
|
-
break;
|
|
3109
|
-
}
|
|
3110
|
-
}
|
|
3111
|
-
targetAnchor = nextSibling(targetAnchor);
|
|
3112
|
-
}
|
|
3122
|
+
hydrateAnchor(target, targetNode);
|
|
3113
3123
|
if (!vnode.targetAnchor) {
|
|
3114
3124
|
prepareAnchor(target, vnode, createText, insert);
|
|
3115
3125
|
}
|
|
@@ -3127,7 +3137,9 @@ function hydrateTeleport(node, vnode, parentComponent, parentSuspense, slotScope
|
|
|
3127
3137
|
updateCssVars(vnode, disabled);
|
|
3128
3138
|
} else if (disabled) {
|
|
3129
3139
|
if (vnode.shapeFlag & 16) {
|
|
3130
|
-
hydrateDisabledTeleport(node, vnode
|
|
3140
|
+
hydrateDisabledTeleport(node, vnode);
|
|
3141
|
+
vnode.targetStart = node;
|
|
3142
|
+
vnode.targetAnchor = nextSibling(node);
|
|
3131
3143
|
}
|
|
3132
3144
|
}
|
|
3133
3145
|
return vnode.anchor && nextSibling(vnode.anchor);
|
|
@@ -3151,13 +3163,13 @@ function updateCssVars(vnode, isDisabled) {
|
|
|
3151
3163
|
ctx.ut();
|
|
3152
3164
|
}
|
|
3153
3165
|
}
|
|
3154
|
-
function prepareAnchor(target, vnode, createText, insert) {
|
|
3166
|
+
function prepareAnchor(target, vnode, createText, insert, anchor = null) {
|
|
3155
3167
|
const targetStart = vnode.targetStart = createText("");
|
|
3156
3168
|
const targetAnchor = vnode.targetAnchor = createText("");
|
|
3157
3169
|
targetStart[TeleportEndKey] = targetAnchor;
|
|
3158
3170
|
if (target) {
|
|
3159
|
-
insert(targetStart, target);
|
|
3160
|
-
insert(targetAnchor, target);
|
|
3171
|
+
insert(targetStart, target, anchor);
|
|
3172
|
+
insert(targetAnchor, target, anchor);
|
|
3161
3173
|
}
|
|
3162
3174
|
return targetAnchor;
|
|
3163
3175
|
}
|
|
@@ -3372,6 +3384,7 @@ function resolveTransitionHooks(vnode, props, state, instance, postClone) {
|
|
|
3372
3384
|
callHook(hook, [el]);
|
|
3373
3385
|
},
|
|
3374
3386
|
enter(el) {
|
|
3387
|
+
if (leavingVNodesCache[key] === vnode) return;
|
|
3375
3388
|
let hook = onEnter;
|
|
3376
3389
|
let afterHook = onAfterEnter;
|
|
3377
3390
|
let cancelHook = onEnterCancelled;
|
|
@@ -3385,7 +3398,7 @@ function resolveTransitionHooks(vnode, props, state, instance, postClone) {
|
|
|
3385
3398
|
}
|
|
3386
3399
|
}
|
|
3387
3400
|
let called = false;
|
|
3388
|
-
|
|
3401
|
+
el[enterCbKey$1] = (cancelled) => {
|
|
3389
3402
|
if (called) return;
|
|
3390
3403
|
called = true;
|
|
3391
3404
|
if (cancelled) {
|
|
@@ -3398,6 +3411,7 @@ function resolveTransitionHooks(vnode, props, state, instance, postClone) {
|
|
|
3398
3411
|
}
|
|
3399
3412
|
el[enterCbKey$1] = void 0;
|
|
3400
3413
|
};
|
|
3414
|
+
const done = el[enterCbKey$1].bind(null, false);
|
|
3401
3415
|
if (hook) {
|
|
3402
3416
|
callAsyncHook(hook, [el, done]);
|
|
3403
3417
|
} else {
|
|
@@ -3417,7 +3431,7 @@ function resolveTransitionHooks(vnode, props, state, instance, postClone) {
|
|
|
3417
3431
|
}
|
|
3418
3432
|
callHook(onBeforeLeave, [el]);
|
|
3419
3433
|
let called = false;
|
|
3420
|
-
|
|
3434
|
+
el[leaveCbKey] = (cancelled) => {
|
|
3421
3435
|
if (called) return;
|
|
3422
3436
|
called = true;
|
|
3423
3437
|
remove();
|
|
@@ -3431,6 +3445,7 @@ function resolveTransitionHooks(vnode, props, state, instance, postClone) {
|
|
|
3431
3445
|
delete leavingVNodesCache[key2];
|
|
3432
3446
|
}
|
|
3433
3447
|
};
|
|
3448
|
+
const done = el[leaveCbKey].bind(null, false);
|
|
3434
3449
|
leavingVNodesCache[key2] = vnode;
|
|
3435
3450
|
if (onLeave) {
|
|
3436
3451
|
callAsyncHook(onLeave, [el, done]);
|
|
@@ -3549,6 +3564,10 @@ function useTemplateRef(key) {
|
|
|
3549
3564
|
const ret = r;
|
|
3550
3565
|
return ret;
|
|
3551
3566
|
}
|
|
3567
|
+
function isTemplateRefKey(refs, key) {
|
|
3568
|
+
let desc;
|
|
3569
|
+
return !!((desc = Object.getOwnPropertyDescriptor(refs, key)) && !desc.configurable);
|
|
3570
|
+
}
|
|
3552
3571
|
|
|
3553
3572
|
const pendingSetRefMap = /* @__PURE__ */ new WeakMap();
|
|
3554
3573
|
function setRef(rawRef, oldRawRef, parentSuspense, vnode, isUnmount = false) {
|
|
@@ -3578,8 +3597,17 @@ function setRef(rawRef, oldRawRef, parentSuspense, vnode, isUnmount = false) {
|
|
|
3578
3597
|
const setupState = owner.setupState;
|
|
3579
3598
|
const rawSetupState = toRaw(setupState);
|
|
3580
3599
|
const canSetSetupRef = setupState === EMPTY_OBJ ? NO : (key) => {
|
|
3600
|
+
if (isTemplateRefKey(refs, key)) {
|
|
3601
|
+
return false;
|
|
3602
|
+
}
|
|
3581
3603
|
return hasOwn(rawSetupState, key);
|
|
3582
3604
|
};
|
|
3605
|
+
const canSetRef = (ref2, key) => {
|
|
3606
|
+
if (key && isTemplateRefKey(refs, key)) {
|
|
3607
|
+
return false;
|
|
3608
|
+
}
|
|
3609
|
+
return true;
|
|
3610
|
+
};
|
|
3583
3611
|
if (oldRef != null && oldRef !== ref) {
|
|
3584
3612
|
invalidatePendingSetRef(oldRawRef);
|
|
3585
3613
|
if (isString(oldRef)) {
|
|
@@ -3588,10 +3616,10 @@ function setRef(rawRef, oldRawRef, parentSuspense, vnode, isUnmount = false) {
|
|
|
3588
3616
|
setupState[oldRef] = null;
|
|
3589
3617
|
}
|
|
3590
3618
|
} else if (isRef(oldRef)) {
|
|
3591
|
-
|
|
3619
|
+
const oldRawRefAtom = oldRawRef;
|
|
3620
|
+
if (canSetRef(oldRef, oldRawRefAtom.k)) {
|
|
3592
3621
|
oldRef.value = null;
|
|
3593
3622
|
}
|
|
3594
|
-
const oldRawRefAtom = oldRawRef;
|
|
3595
3623
|
if (oldRawRefAtom.k) refs[oldRawRefAtom.k] = null;
|
|
3596
3624
|
}
|
|
3597
3625
|
}
|
|
@@ -3603,7 +3631,7 @@ function setRef(rawRef, oldRawRef, parentSuspense, vnode, isUnmount = false) {
|
|
|
3603
3631
|
if (_isString || _isRef) {
|
|
3604
3632
|
const doSet = () => {
|
|
3605
3633
|
if (rawRef.f) {
|
|
3606
|
-
const existing = _isString ? canSetSetupRef(ref) ? setupState[ref] : refs[ref] : ref.value ;
|
|
3634
|
+
const existing = _isString ? canSetSetupRef(ref) ? setupState[ref] : refs[ref] : canSetRef() || !rawRef.k ? ref.value : refs[rawRef.k];
|
|
3607
3635
|
if (isUnmount) {
|
|
3608
3636
|
isArray(existing) && remove(existing, refValue);
|
|
3609
3637
|
} else {
|
|
@@ -3615,7 +3643,7 @@ function setRef(rawRef, oldRawRef, parentSuspense, vnode, isUnmount = false) {
|
|
|
3615
3643
|
}
|
|
3616
3644
|
} else {
|
|
3617
3645
|
const newVal = [refValue];
|
|
3618
|
-
{
|
|
3646
|
+
if (canSetRef(ref, rawRef.k)) {
|
|
3619
3647
|
ref.value = newVal;
|
|
3620
3648
|
}
|
|
3621
3649
|
if (rawRef.k) refs[rawRef.k] = newVal;
|
|
@@ -3630,7 +3658,7 @@ function setRef(rawRef, oldRawRef, parentSuspense, vnode, isUnmount = false) {
|
|
|
3630
3658
|
setupState[ref] = value;
|
|
3631
3659
|
}
|
|
3632
3660
|
} else if (_isRef) {
|
|
3633
|
-
{
|
|
3661
|
+
if (canSetRef(ref, rawRef.k)) {
|
|
3634
3662
|
ref.value = value;
|
|
3635
3663
|
}
|
|
3636
3664
|
if (rawRef.k) refs[rawRef.k] = value;
|
|
@@ -5590,13 +5618,24 @@ function withAsyncContext(getAwaitable) {
|
|
|
5590
5618
|
const ctx = getCurrentInstance();
|
|
5591
5619
|
let awaitable = getAwaitable();
|
|
5592
5620
|
unsetCurrentInstance();
|
|
5621
|
+
const cleanup = () => {
|
|
5622
|
+
if (getCurrentInstance() !== ctx) ctx.scope.off();
|
|
5623
|
+
unsetCurrentInstance();
|
|
5624
|
+
};
|
|
5593
5625
|
if (isPromise(awaitable)) {
|
|
5594
5626
|
awaitable = awaitable.catch((e) => {
|
|
5595
5627
|
setCurrentInstance(ctx);
|
|
5628
|
+
Promise.resolve().then(() => Promise.resolve().then(cleanup));
|
|
5596
5629
|
throw e;
|
|
5597
5630
|
});
|
|
5598
5631
|
}
|
|
5599
|
-
return [
|
|
5632
|
+
return [
|
|
5633
|
+
awaitable,
|
|
5634
|
+
() => {
|
|
5635
|
+
setCurrentInstance(ctx);
|
|
5636
|
+
Promise.resolve().then(cleanup);
|
|
5637
|
+
}
|
|
5638
|
+
];
|
|
5600
5639
|
}
|
|
5601
5640
|
|
|
5602
5641
|
let shouldCacheAccess = true;
|
|
@@ -6014,7 +6053,7 @@ function createCompatVue$1(createApp, createSingletonApp) {
|
|
|
6014
6053
|
return vm;
|
|
6015
6054
|
}
|
|
6016
6055
|
}
|
|
6017
|
-
Vue.version = `2.6.14-compat:${"3.5.
|
|
6056
|
+
Vue.version = `2.6.14-compat:${"3.5.29"}`;
|
|
6018
6057
|
Vue.config = singletonApp.config;
|
|
6019
6058
|
Vue.use = (plugin, ...options) => {
|
|
6020
6059
|
if (plugin && isFunction(plugin.install)) {
|
|
@@ -6869,7 +6908,7 @@ function shouldUpdateComponent(prevVNode, nextVNode, optimized) {
|
|
|
6869
6908
|
const dynamicProps = nextVNode.dynamicProps;
|
|
6870
6909
|
for (let i = 0; i < dynamicProps.length; i++) {
|
|
6871
6910
|
const key = dynamicProps[i];
|
|
6872
|
-
if (nextProps
|
|
6911
|
+
if (hasPropValueChanged(nextProps, prevProps, key) && !isEmitListener(emits, key)) {
|
|
6873
6912
|
return true;
|
|
6874
6913
|
}
|
|
6875
6914
|
}
|
|
@@ -6900,12 +6939,20 @@ function hasPropsChanged(prevProps, nextProps, emitsOptions) {
|
|
|
6900
6939
|
}
|
|
6901
6940
|
for (let i = 0; i < nextKeys.length; i++) {
|
|
6902
6941
|
const key = nextKeys[i];
|
|
6903
|
-
if (nextProps
|
|
6942
|
+
if (hasPropValueChanged(nextProps, prevProps, key) && !isEmitListener(emitsOptions, key)) {
|
|
6904
6943
|
return true;
|
|
6905
6944
|
}
|
|
6906
6945
|
}
|
|
6907
6946
|
return false;
|
|
6908
6947
|
}
|
|
6948
|
+
function hasPropValueChanged(nextProps, prevProps, key) {
|
|
6949
|
+
const nextProp = nextProps[key];
|
|
6950
|
+
const prevProp = prevProps[key];
|
|
6951
|
+
if (key === "style" && isObject(nextProp) && isObject(prevProp)) {
|
|
6952
|
+
return !looseEqual(nextProp, prevProp);
|
|
6953
|
+
}
|
|
6954
|
+
return nextProp !== prevProp;
|
|
6955
|
+
}
|
|
6909
6956
|
function updateHOCHostEl({ vnode, parent }, el) {
|
|
6910
6957
|
while (parent) {
|
|
6911
6958
|
const root = parent.subTree;
|
|
@@ -7483,9 +7530,7 @@ function baseCreateRenderer(options, createHydrationFns) {
|
|
|
7483
7530
|
} else {
|
|
7484
7531
|
const el = n2.el = n1.el;
|
|
7485
7532
|
if (n2.children !== n1.children) {
|
|
7486
|
-
|
|
7487
|
-
hostSetText(el, n2.children);
|
|
7488
|
-
}
|
|
7533
|
+
hostSetText(el, n2.children);
|
|
7489
7534
|
}
|
|
7490
7535
|
}
|
|
7491
7536
|
};
|
|
@@ -7546,7 +7591,7 @@ function baseCreateRenderer(options, createHydrationFns) {
|
|
|
7546
7591
|
optimized
|
|
7547
7592
|
);
|
|
7548
7593
|
} else {
|
|
7549
|
-
const customElement =
|
|
7594
|
+
const customElement = n1.el && n1.el._isVueCE ? n1.el : null;
|
|
7550
7595
|
try {
|
|
7551
7596
|
if (customElement) {
|
|
7552
7597
|
customElement._beginPatch();
|
|
@@ -7981,8 +8026,7 @@ function baseCreateRenderer(options, createHydrationFns) {
|
|
|
7981
8026
|
hydrateSubTree();
|
|
7982
8027
|
}
|
|
7983
8028
|
} else {
|
|
7984
|
-
if (root.ce &&
|
|
7985
|
-
root.ce._def.shadowRoot !== false) {
|
|
8029
|
+
if (root.ce && root.ce._hasShadowRoot()) {
|
|
7986
8030
|
root.ce._injectChildStyle(type);
|
|
7987
8031
|
}
|
|
7988
8032
|
const subTree = instance.subTree = renderComponentRoot(instance);
|
|
@@ -8034,9 +8078,9 @@ function baseCreateRenderer(options, createHydrationFns) {
|
|
|
8034
8078
|
updateComponentPreRender(instance, next, optimized);
|
|
8035
8079
|
}
|
|
8036
8080
|
nonHydratedAsyncRoot.asyncDep.then(() => {
|
|
8037
|
-
|
|
8038
|
-
|
|
8039
|
-
}
|
|
8081
|
+
queuePostRenderEffect(() => {
|
|
8082
|
+
if (!instance.isUnmounted) update();
|
|
8083
|
+
}, parentSuspense);
|
|
8040
8084
|
});
|
|
8041
8085
|
return;
|
|
8042
8086
|
}
|
|
@@ -8705,12 +8749,10 @@ function traverseStaticChildren(n1, n2, shallow = false) {
|
|
|
8705
8749
|
traverseStaticChildren(c1, c2);
|
|
8706
8750
|
}
|
|
8707
8751
|
if (c2.type === Text) {
|
|
8708
|
-
if (c2.patchFlag
|
|
8709
|
-
c2
|
|
8710
|
-
} else {
|
|
8711
|
-
c2.__elIndex = i + // take fragment start anchor into account
|
|
8712
|
-
(n1.type === Fragment ? 1 : 0);
|
|
8752
|
+
if (c2.patchFlag === -1) {
|
|
8753
|
+
c2 = ch2[i] = cloneIfMounted(c2);
|
|
8713
8754
|
}
|
|
8755
|
+
c2.el = c1.el;
|
|
8714
8756
|
}
|
|
8715
8757
|
if (c2.type === Comment && !c2.el) {
|
|
8716
8758
|
c2.el = c1.el;
|
|
@@ -10123,7 +10165,7 @@ function isMemoSame(cached, memo) {
|
|
|
10123
10165
|
return true;
|
|
10124
10166
|
}
|
|
10125
10167
|
|
|
10126
|
-
const version = "3.5.
|
|
10168
|
+
const version = "3.5.29";
|
|
10127
10169
|
const warn$1 = NOOP;
|
|
10128
10170
|
const ErrorTypeStrings = ErrorTypeStrings$1 ;
|
|
10129
10171
|
const devtools = void 0;
|
|
@@ -11345,6 +11387,12 @@ class VueElement extends BaseClass {
|
|
|
11345
11387
|
this._update();
|
|
11346
11388
|
}
|
|
11347
11389
|
}
|
|
11390
|
+
/**
|
|
11391
|
+
* @internal
|
|
11392
|
+
*/
|
|
11393
|
+
_hasShadowRoot() {
|
|
11394
|
+
return this._def.shadowRoot !== false;
|
|
11395
|
+
}
|
|
11348
11396
|
/**
|
|
11349
11397
|
* @internal
|
|
11350
11398
|
*/
|
|
@@ -11465,10 +11513,7 @@ const TransitionGroupImpl = /* @__PURE__ */ decorate({
|
|
|
11465
11513
|
instance
|
|
11466
11514
|
)
|
|
11467
11515
|
);
|
|
11468
|
-
positionMap.set(child,
|
|
11469
|
-
left: child.el.offsetLeft,
|
|
11470
|
-
top: child.el.offsetTop
|
|
11471
|
-
});
|
|
11516
|
+
positionMap.set(child, getPosition(child.el));
|
|
11472
11517
|
}
|
|
11473
11518
|
}
|
|
11474
11519
|
}
|
|
@@ -11497,10 +11542,7 @@ function callPendingCbs(c) {
|
|
|
11497
11542
|
}
|
|
11498
11543
|
}
|
|
11499
11544
|
function recordPosition(c) {
|
|
11500
|
-
newPositionMap.set(c,
|
|
11501
|
-
left: c.el.offsetLeft,
|
|
11502
|
-
top: c.el.offsetTop
|
|
11503
|
-
});
|
|
11545
|
+
newPositionMap.set(c, getPosition(c.el));
|
|
11504
11546
|
}
|
|
11505
11547
|
function applyTranslation(c) {
|
|
11506
11548
|
const oldPos = positionMap.get(c);
|
|
@@ -11508,12 +11550,29 @@ function applyTranslation(c) {
|
|
|
11508
11550
|
const dx = oldPos.left - newPos.left;
|
|
11509
11551
|
const dy = oldPos.top - newPos.top;
|
|
11510
11552
|
if (dx || dy) {
|
|
11511
|
-
const
|
|
11512
|
-
s
|
|
11553
|
+
const el = c.el;
|
|
11554
|
+
const s = el.style;
|
|
11555
|
+
const rect = el.getBoundingClientRect();
|
|
11556
|
+
let scaleX = 1;
|
|
11557
|
+
let scaleY = 1;
|
|
11558
|
+
if (el.offsetWidth) scaleX = rect.width / el.offsetWidth;
|
|
11559
|
+
if (el.offsetHeight) scaleY = rect.height / el.offsetHeight;
|
|
11560
|
+
if (!Number.isFinite(scaleX) || scaleX === 0) scaleX = 1;
|
|
11561
|
+
if (!Number.isFinite(scaleY) || scaleY === 0) scaleY = 1;
|
|
11562
|
+
if (Math.abs(scaleX - 1) < 0.01) scaleX = 1;
|
|
11563
|
+
if (Math.abs(scaleY - 1) < 0.01) scaleY = 1;
|
|
11564
|
+
s.transform = s.webkitTransform = `translate(${dx / scaleX}px,${dy / scaleY}px)`;
|
|
11513
11565
|
s.transitionDuration = "0s";
|
|
11514
11566
|
return c;
|
|
11515
11567
|
}
|
|
11516
11568
|
}
|
|
11569
|
+
function getPosition(el) {
|
|
11570
|
+
const rect = el.getBoundingClientRect();
|
|
11571
|
+
return {
|
|
11572
|
+
left: rect.left,
|
|
11573
|
+
top: rect.top
|
|
11574
|
+
};
|
|
11575
|
+
}
|
|
11517
11576
|
function hasCSSTransform(el, root, moveClass) {
|
|
11518
11577
|
const clone = el.cloneNode();
|
|
11519
11578
|
const _vtc = el[vtcKey];
|
|
@@ -11821,6 +11880,7 @@ const modifierGuards = {
|
|
|
11821
11880
|
exact: (e, modifiers) => systemModifiers.some((m) => e[`${m}Key`] && !modifiers.includes(m))
|
|
11822
11881
|
};
|
|
11823
11882
|
const withModifiers = (fn, modifiers) => {
|
|
11883
|
+
if (!fn) return fn;
|
|
11824
11884
|
const cache = fn._withMods || (fn._withMods = {});
|
|
11825
11885
|
const cacheKey = modifiers.join(".");
|
|
11826
11886
|
return cache[cacheKey] || (cache[cacheKey] = ((event, ...args) => {
|