@vue/compat 3.6.0-rc.10 → 3.6.0-rc.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/vue-compat.d.ts +9 -1
- package/dist/vue.cjs.js +273 -89
- package/dist/vue.cjs.prod.js +305 -86
- package/dist/vue.esm-browser.js +267 -85
- package/dist/vue.esm-browser.prod.js +7 -7
- package/dist/vue.esm-bundler.js +288 -92
- package/dist/vue.global.js +267 -85
- package/dist/vue.global.prod.js +7 -7
- package/dist/vue.runtime.esm-browser.js +267 -85
- package/dist/vue.runtime.esm-browser.prod.js +7 -7
- package/dist/vue.runtime.esm-bundler.js +288 -92
- package/dist/vue.runtime.global.js +267 -85
- package/dist/vue.runtime.global.prod.js +7 -7
- package/package.json +4 -4
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
/**
|
|
2
|
-
* @vue/compat v3.6.0-rc.
|
|
2
|
+
* @vue/compat v3.6.0-rc.12
|
|
3
3
|
* (c) 2018-present Yuxi (Evan) You and Vue contributors
|
|
4
4
|
* @license MIT
|
|
5
5
|
**/
|
|
@@ -312,9 +312,10 @@ var Vue = (function() {
|
|
|
312
312
|
* - ismap -> isMap
|
|
313
313
|
* - nomodule -> noModule
|
|
314
314
|
* - novalidate -> noValidate
|
|
315
|
+
* - playsinline -> playsInline
|
|
315
316
|
* - readonly -> readOnly
|
|
316
317
|
*/
|
|
317
|
-
const specialBooleanAttrs = `itemscope,allowfullscreen,formnovalidate,ismap,nomodule,novalidate,readonly`;
|
|
318
|
+
const specialBooleanAttrs = `itemscope,allowfullscreen,formnovalidate,ismap,nomodule,novalidate,playsinline,readonly`;
|
|
318
319
|
const isSpecialBooleanAttr = /*@__PURE__*/ makeMap(specialBooleanAttrs);
|
|
319
320
|
/**
|
|
320
321
|
* The full list is needed during SSR to produce the correct initial markup.
|
|
@@ -1005,17 +1006,33 @@ var Vue = (function() {
|
|
|
1005
1006
|
};
|
|
1006
1007
|
function iterator(self, method, wrapValue) {
|
|
1007
1008
|
const arr = shallowReadArray(self);
|
|
1008
|
-
const
|
|
1009
|
+
const methodFn = arr[method];
|
|
1010
|
+
const iter = methodFn.call(arr);
|
|
1009
1011
|
if (arr !== self && !/* @__PURE__ */ isShallow(self)) {
|
|
1012
|
+
if (iter[Symbol.toStringTag] === "Array Iterator") {
|
|
1013
|
+
const wrapped = Object.create(Object.getPrototypeOf(iter));
|
|
1014
|
+
wrapped.next = () => wrapResult(iter.next(), wrapValue);
|
|
1015
|
+
if (methodFn !== arrayProto[method]) Object.defineProperties(wrapped, {
|
|
1016
|
+
return: { get() {
|
|
1017
|
+
const fn = iter.return;
|
|
1018
|
+
return typeof fn === "function" ? fn.bind(iter) : fn;
|
|
1019
|
+
} },
|
|
1020
|
+
throw: { get() {
|
|
1021
|
+
const fn = iter.throw;
|
|
1022
|
+
return typeof fn === "function" ? fn.bind(iter) : fn;
|
|
1023
|
+
} }
|
|
1024
|
+
});
|
|
1025
|
+
return wrapped;
|
|
1026
|
+
}
|
|
1010
1027
|
iter._next = iter.next;
|
|
1011
|
-
iter.next = () =>
|
|
1012
|
-
const result = iter._next();
|
|
1013
|
-
if (!result.done) result.value = wrapValue(result.value);
|
|
1014
|
-
return result;
|
|
1015
|
-
};
|
|
1028
|
+
iter.next = () => wrapResult(iter._next(), wrapValue);
|
|
1016
1029
|
}
|
|
1017
1030
|
return iter;
|
|
1018
1031
|
}
|
|
1032
|
+
function wrapResult(result, wrapValue) {
|
|
1033
|
+
if (!result.done) result.value = wrapValue(result.value);
|
|
1034
|
+
return result;
|
|
1035
|
+
}
|
|
1019
1036
|
const arrayProto = Array.prototype;
|
|
1020
1037
|
function apply(self, method, fn, thisArg, wrappedRetFn, args) {
|
|
1021
1038
|
const arr = shallowReadArray(self);
|
|
@@ -1333,6 +1350,7 @@ var Vue = (function() {
|
|
|
1333
1350
|
return (target, key, receiver) => {
|
|
1334
1351
|
if (key === "__v_isReactive") return !isReadonly;
|
|
1335
1352
|
else if (key === "__v_isReadonly") return isReadonly;
|
|
1353
|
+
else if (key === "__v_isShallow") return shallow;
|
|
1336
1354
|
else if (key === "__v_raw") return target;
|
|
1337
1355
|
return Reflect.get(hasOwn(instrumentations, key) && key in target ? instrumentations : target, key, receiver);
|
|
1338
1356
|
};
|
|
@@ -2242,8 +2260,9 @@ var Vue = (function() {
|
|
|
2242
2260
|
function onWatcherCleanup(cleanupFn, failSilently = false, owner = activeWatcher) {
|
|
2243
2261
|
if (owner) {
|
|
2244
2262
|
const { call } = owner.options;
|
|
2245
|
-
|
|
2246
|
-
|
|
2263
|
+
const cleanup = call ? () => call(cleanupFn, 4) : cleanupFn;
|
|
2264
|
+
if (owner.cb) (owner.cbCleanups || (owner.cbCleanups = [])).push(cleanup);
|
|
2265
|
+
else owner.cleanups[owner.cleanupsLength++] = cleanup;
|
|
2247
2266
|
} else if (!failSilently) warn$2("onWatcherCleanup() was called when there was no active watcher to associate with.");
|
|
2248
2267
|
}
|
|
2249
2268
|
var WatcherEffect = class extends ReactiveEffect {
|
|
@@ -2304,9 +2323,11 @@ var Vue = (function() {
|
|
|
2304
2323
|
if (once && cb) {
|
|
2305
2324
|
const _cb = cb;
|
|
2306
2325
|
cb = (...args) => {
|
|
2307
|
-
|
|
2308
|
-
|
|
2309
|
-
|
|
2326
|
+
try {
|
|
2327
|
+
return _cb(...args);
|
|
2328
|
+
} finally {
|
|
2329
|
+
this.stop();
|
|
2330
|
+
}
|
|
2310
2331
|
};
|
|
2311
2332
|
}
|
|
2312
2333
|
this.cb = cb;
|
|
@@ -2314,6 +2335,19 @@ var Vue = (function() {
|
|
|
2314
2335
|
this.onTrack = options.onTrack;
|
|
2315
2336
|
this.onTrigger = options.onTrigger;
|
|
2316
2337
|
}
|
|
2338
|
+
cleanupCallback() {
|
|
2339
|
+
const cleanups = this.cbCleanups;
|
|
2340
|
+
if (cleanups) {
|
|
2341
|
+
this.cbCleanups = void 0;
|
|
2342
|
+
for (let i = 0, l = cleanups.length; i < l; i++) cleanups[i]();
|
|
2343
|
+
}
|
|
2344
|
+
}
|
|
2345
|
+
stop() {
|
|
2346
|
+
if (this.active) {
|
|
2347
|
+
super.stop();
|
|
2348
|
+
this.cleanupCallback();
|
|
2349
|
+
}
|
|
2350
|
+
}
|
|
2317
2351
|
run(initialRun = false) {
|
|
2318
2352
|
const oldValue = this.oldValue;
|
|
2319
2353
|
const newValue = this.oldValue = super.run();
|
|
@@ -2321,10 +2355,11 @@ var Vue = (function() {
|
|
|
2321
2355
|
const { immediate, deep, call } = this.options;
|
|
2322
2356
|
if (initialRun && !immediate) return;
|
|
2323
2357
|
if (initialRun || deep || this.forceTrigger || (this.isMultiSource ? newValue.some((v, i) => hasChanged(v, oldValue[i])) : hasChanged(newValue, oldValue))) {
|
|
2324
|
-
cleanup(this);
|
|
2325
2358
|
const currentWatcher = activeWatcher;
|
|
2326
|
-
|
|
2359
|
+
const prevSub = setActiveSub();
|
|
2327
2360
|
try {
|
|
2361
|
+
this.cleanupCallback();
|
|
2362
|
+
activeWatcher = this;
|
|
2328
2363
|
const args = [
|
|
2329
2364
|
newValue,
|
|
2330
2365
|
oldValue === INITIAL_WATCHER_VALUE ? void 0 : this.isMultiSource && oldValue[0] === INITIAL_WATCHER_VALUE ? [] : oldValue,
|
|
@@ -2333,6 +2368,7 @@ var Vue = (function() {
|
|
|
2333
2368
|
call ? call(this.cb, 3, args) : this.cb(...args);
|
|
2334
2369
|
} finally {
|
|
2335
2370
|
activeWatcher = currentWatcher;
|
|
2371
|
+
setActiveSub(prevSub);
|
|
2336
2372
|
}
|
|
2337
2373
|
}
|
|
2338
2374
|
}
|
|
@@ -2663,15 +2699,15 @@ var Vue = (function() {
|
|
|
2663
2699
|
} else for (let i = 0; i < jobs.length; i++) queueJobWorker(jobs[i], id, postJobs, postJobs.length, 0);
|
|
2664
2700
|
queueFlush();
|
|
2665
2701
|
}
|
|
2666
|
-
function flushPreFlushCbs(instance, seen) {
|
|
2702
|
+
function flushPreFlushCbs(instance, minUid, seen) {
|
|
2667
2703
|
seen = seen || /* @__PURE__ */ new Map();
|
|
2668
2704
|
for (let i = flushIndex; i < jobsLength; i++) {
|
|
2669
2705
|
const cb = jobs[i];
|
|
2670
2706
|
if (cb.order & 1 || cb.order === Infinity) continue;
|
|
2671
|
-
if (instance && cb.order !== instance.uid * 2) continue;
|
|
2707
|
+
if (instance && cb.order !== instance.uid * 2 || minUid !== void 0 && !(cb.order >= minUid * 2)) continue;
|
|
2672
2708
|
if (checkRecursiveUpdates(seen, cb)) continue;
|
|
2673
2709
|
jobs.splice(i, 1);
|
|
2674
|
-
i
|
|
2710
|
+
i = instance ? i - 1 : flushIndex - 1;
|
|
2675
2711
|
jobsLength--;
|
|
2676
2712
|
if (cb.flags & 2) cb.flags &= -2;
|
|
2677
2713
|
try {
|
|
@@ -2681,15 +2717,24 @@ var Vue = (function() {
|
|
|
2681
2717
|
}
|
|
2682
2718
|
}
|
|
2683
2719
|
}
|
|
2684
|
-
function flushPostFlushCbs(seen) {
|
|
2720
|
+
function flushPostFlushCbs(seen, skip, minUid = 0) {
|
|
2685
2721
|
if (postJobs.length) {
|
|
2722
|
+
let cbs = postJobs;
|
|
2723
|
+
if (skip) {
|
|
2724
|
+
cbs = [];
|
|
2725
|
+
let kept = 0;
|
|
2726
|
+
for (let i = 0; i < postJobs.length; i++) {
|
|
2727
|
+
const cb = postJobs[i];
|
|
2728
|
+
if (cb.i !== void 0 ? !cb.i || cb.i.uid < minUid : skip.has(cb)) postJobs[kept++] = cb;
|
|
2729
|
+
else cbs.push(cb);
|
|
2730
|
+
}
|
|
2731
|
+
postJobs.length = kept;
|
|
2732
|
+
} else postJobs = [];
|
|
2686
2733
|
if (activePostJobs) {
|
|
2687
|
-
for (let i = 0; i <
|
|
2688
|
-
postJobs.length = 0;
|
|
2734
|
+
for (let i = 0; i < cbs.length; i++) activePostJobs.push(cbs[i]);
|
|
2689
2735
|
return;
|
|
2690
2736
|
}
|
|
2691
|
-
activePostJobs =
|
|
2692
|
-
postJobs = [];
|
|
2737
|
+
activePostJobs = cbs;
|
|
2693
2738
|
seen = seen || /* @__PURE__ */ new Map();
|
|
2694
2739
|
try {
|
|
2695
2740
|
while (postFlushIndex < activePostJobs.length) {
|
|
@@ -2711,17 +2756,28 @@ var Vue = (function() {
|
|
|
2711
2756
|
}
|
|
2712
2757
|
let isFlushing = false;
|
|
2713
2758
|
/**
|
|
2759
|
+
* Run a root render, then flush the jobs it is responsible for. A mount or
|
|
2760
|
+
* unmount (`minUid` given) only flushes the jobs of the components it created
|
|
2761
|
+
* and the post cbs it queued, so pre watchers triggered in setup run before
|
|
2762
|
+
* mounted (#5721) while the jobs of other components stay in the queue and
|
|
2763
|
+
* keep their order (#6728). A root update keeps flushing all pending pre jobs
|
|
2764
|
+
* and post cbs, as the jobs of the components it re-renders may predate it.
|
|
2765
|
+
*
|
|
2714
2766
|
* @internal
|
|
2715
2767
|
*/
|
|
2716
|
-
function flushOnAppMount(
|
|
2717
|
-
if (
|
|
2718
|
-
|
|
2719
|
-
|
|
2720
|
-
|
|
2721
|
-
|
|
2722
|
-
|
|
2723
|
-
|
|
2724
|
-
|
|
2768
|
+
function flushOnAppMount(fn, minUid) {
|
|
2769
|
+
if (isFlushing) {
|
|
2770
|
+
fn();
|
|
2771
|
+
return;
|
|
2772
|
+
}
|
|
2773
|
+
const queued = minUid === void 0 ? void 0 : new Set(postJobs);
|
|
2774
|
+
fn();
|
|
2775
|
+
isFlushing = true;
|
|
2776
|
+
try {
|
|
2777
|
+
flushPreFlushCbs(void 0, minUid);
|
|
2778
|
+
flushPostFlushCbs(void 0, queued, minUid);
|
|
2779
|
+
} finally {
|
|
2780
|
+
isFlushing = false;
|
|
2725
2781
|
}
|
|
2726
2782
|
}
|
|
2727
2783
|
function flushJobs(seen) {
|
|
@@ -3538,7 +3594,7 @@ var Vue = (function() {
|
|
|
3538
3594
|
this.flags |= 128;
|
|
3539
3595
|
job.flags |= 2;
|
|
3540
3596
|
}
|
|
3541
|
-
|
|
3597
|
+
job.i = instance;
|
|
3542
3598
|
this.job = job;
|
|
3543
3599
|
}
|
|
3544
3600
|
notify() {
|
|
@@ -3731,7 +3787,11 @@ var Vue = (function() {
|
|
|
3731
3787
|
hydrate: hydrateTeleport
|
|
3732
3788
|
};
|
|
3733
3789
|
function moveTeleport(vnode, container, parentAnchor, { o: { insert }, m: move }, parentComponent, moveType = 2) {
|
|
3734
|
-
if (moveType === 0)
|
|
3790
|
+
if (moveType === 0) {
|
|
3791
|
+
if (vnode.targetStart) insert(vnode.targetStart, container, parentAnchor);
|
|
3792
|
+
insert(vnode.targetAnchor, container, parentAnchor);
|
|
3793
|
+
parentAnchor = vnode.targetAnchor;
|
|
3794
|
+
}
|
|
3735
3795
|
const { el, anchor, shapeFlag, children, props } = vnode;
|
|
3736
3796
|
const isReorder = moveType === 2;
|
|
3737
3797
|
if (isReorder) insert(el, container, parentAnchor);
|
|
@@ -3850,10 +3910,15 @@ var Vue = (function() {
|
|
|
3850
3910
|
onAfterAppear: TransitionHookValidator,
|
|
3851
3911
|
onAppearCancelled: TransitionHookValidator
|
|
3852
3912
|
};
|
|
3853
|
-
|
|
3854
|
-
|
|
3855
|
-
|
|
3856
|
-
|
|
3913
|
+
function isEmptyTransitionChild(vnode, instance) {
|
|
3914
|
+
if (vnode.type === Comment) return true;
|
|
3915
|
+
if (vnode.type === Fragment) {
|
|
3916
|
+
const child = isArray(vnode.children) && filterSingleRoot(vnode.children, false);
|
|
3917
|
+
return !child || isEmptyTransitionChild(child, instance);
|
|
3918
|
+
}
|
|
3919
|
+
if (vnode.type === VaporSlot || isVaporComponent(vnode.type)) return !getVaporInterface(instance, vnode).hasTransitionChild(vnode);
|
|
3920
|
+
return !!vnode.component && isEmptyTransitionChild(vnode.component.subTree, instance);
|
|
3921
|
+
}
|
|
3857
3922
|
const BaseTransitionImpl = {
|
|
3858
3923
|
name: `BaseTransition`,
|
|
3859
3924
|
props: BaseTransitionPropsValidators,
|
|
@@ -3902,7 +3967,7 @@ var Vue = (function() {
|
|
|
3902
3967
|
function resolveTransitionHooks(vnode, props, state, instance, postClone) {
|
|
3903
3968
|
const key = String(vnode.key);
|
|
3904
3969
|
const leavingVNodesCache = getLeavingNodesForType(state, vnode);
|
|
3905
|
-
|
|
3970
|
+
const hooks = baseResolveTransitionHooks({
|
|
3906
3971
|
isLeaving: () => leavingVNodesCache[key] === vnode,
|
|
3907
3972
|
setLeavingNodeCache: () => {
|
|
3908
3973
|
leavingVNodesCache[key] = vnode;
|
|
@@ -3912,7 +3977,14 @@ var Vue = (function() {
|
|
|
3912
3977
|
},
|
|
3913
3978
|
earlyRemove: () => {
|
|
3914
3979
|
const leavingVNode = leavingVNodesCache[key];
|
|
3915
|
-
if (leavingVNode && isSameVNodeType(vnode, leavingVNode)
|
|
3980
|
+
if (leavingVNode && isSameVNodeType(vnode, leavingVNode)) {
|
|
3981
|
+
let leavingCb = leavingVNode.el[leaveCbKey];
|
|
3982
|
+
if (!leavingCb) {
|
|
3983
|
+
const leavingRoot = getTransitionRoot(leavingVNode);
|
|
3984
|
+
leavingCb = leavingRoot && leavingRoot.el[leaveCbKey];
|
|
3985
|
+
}
|
|
3986
|
+
if (leavingCb) leavingCb();
|
|
3987
|
+
}
|
|
3916
3988
|
},
|
|
3917
3989
|
cloneHooks: (vnode) => {
|
|
3918
3990
|
const hooks = resolveTransitionHooks(vnode, props, state, instance, postClone);
|
|
@@ -3920,6 +3992,13 @@ var Vue = (function() {
|
|
|
3920
3992
|
return hooks;
|
|
3921
3993
|
}
|
|
3922
3994
|
}, props, state, instance);
|
|
3995
|
+
if (vnode.type === VaporSlot) extend(hooks, {
|
|
3996
|
+
__vapor: true,
|
|
3997
|
+
props,
|
|
3998
|
+
state,
|
|
3999
|
+
instance
|
|
4000
|
+
});
|
|
4001
|
+
return hooks;
|
|
3923
4002
|
}
|
|
3924
4003
|
function baseResolveTransitionHooks(context, props, state, instance) {
|
|
3925
4004
|
const { isLeaving, setLeavingNodeCache, unsetLeavingNodeCache, earlyRemove, cloneHooks } = context;
|
|
@@ -4035,7 +4114,7 @@ var Vue = (function() {
|
|
|
4035
4114
|
if (nextInner.type !== Comment) setTransitionHooks(nextInner, enterHooks);
|
|
4036
4115
|
const mode = props.mode;
|
|
4037
4116
|
const previousInner = previous && getInnerChild$1(previous);
|
|
4038
|
-
if (previous && previousInner &&
|
|
4117
|
+
if (previous && previousInner && !isSameVNodeType(previousInner, nextInner) && !isEmptyTransitionChild(previousInner, instance)) {
|
|
4039
4118
|
const leavingHooks = prepareLeavingTransitionHooks(previousInner, props, state, instance);
|
|
4040
4119
|
if (nextInner.type !== Comment && (mode === "out-in" || mode === "in-out") && applyTransitionModeSwitch(previousInner, leavingHooks, mode === "in-out" ? () => enterHooks : void 0, props, state, resumeAfterLeave)) return emptyPlaceholder(next);
|
|
4041
4120
|
}
|
|
@@ -4099,7 +4178,13 @@ var Vue = (function() {
|
|
|
4099
4178
|
const contentHooks = vnode.ssContent.transition = hooks.clone(vnode.ssContent);
|
|
4100
4179
|
const fallbackHooks = vnode.ssFallback.transition = hooks.clone(vnode.ssFallback);
|
|
4101
4180
|
return vnode.suspense && vnode.suspense.activeBranch === vnode.ssFallback ? fallbackHooks : contentHooks;
|
|
4102
|
-
} else
|
|
4181
|
+
} else {
|
|
4182
|
+
vnode.transition = hooks;
|
|
4183
|
+
if (vnode.type === Fragment && isArray(vnode.children)) {
|
|
4184
|
+
const child = filterSingleRoot(vnode.children, false);
|
|
4185
|
+
if (child) setTransitionHooks(child, hooks);
|
|
4186
|
+
}
|
|
4187
|
+
}
|
|
4103
4188
|
return hooks;
|
|
4104
4189
|
}
|
|
4105
4190
|
function getTransitionRawChildren(children, keepComment = false, parentKey) {
|
|
@@ -4122,6 +4207,14 @@ var Vue = (function() {
|
|
|
4122
4207
|
function checkTransitionMode(mode) {
|
|
4123
4208
|
if (mode && mode !== "in-out" && mode !== "out-in" && mode !== "default") warn$1(`invalid <transition> mode: ${mode}`);
|
|
4124
4209
|
}
|
|
4210
|
+
function getTransitionRoot(vnode) {
|
|
4211
|
+
if (vnode.component && !isVaporComponent(vnode.type)) return getTransitionRoot(vnode.component.subTree);
|
|
4212
|
+
if (vnode.type === Fragment) {
|
|
4213
|
+
const child = isArray(vnode.children) && filterSingleRoot(vnode.children, false);
|
|
4214
|
+
return child ? getTransitionRoot(child) : void 0;
|
|
4215
|
+
}
|
|
4216
|
+
if (vnode.type !== Comment) return vnode;
|
|
4217
|
+
}
|
|
4125
4218
|
//#endregion
|
|
4126
4219
|
//#region packages/runtime-core/src/apiDefineComponent.ts
|
|
4127
4220
|
/*@__NO_SIDE_EFFECTS__*/
|
|
@@ -4751,14 +4844,20 @@ var Vue = (function() {
|
|
|
4751
4844
|
break;
|
|
4752
4845
|
}
|
|
4753
4846
|
}, opts);
|
|
4754
|
-
|
|
4755
|
-
if (!(el instanceof Element)) return;
|
|
4847
|
+
const observe = (el) => {
|
|
4756
4848
|
if (elementIsVisibleInViewport(el)) {
|
|
4757
4849
|
hydrate();
|
|
4758
4850
|
ob.disconnect();
|
|
4759
4851
|
return false;
|
|
4760
4852
|
}
|
|
4853
|
+
if (getComputedStyle(el).display === "contents") {
|
|
4854
|
+
for (let i = 0; i < el.children.length; i++) if (observe(el.children[i]) === false) return false;
|
|
4855
|
+
}
|
|
4761
4856
|
ob.observe(el);
|
|
4857
|
+
};
|
|
4858
|
+
forEach((el) => {
|
|
4859
|
+
if (!(el instanceof Element)) return;
|
|
4860
|
+
return observe(el);
|
|
4762
4861
|
});
|
|
4763
4862
|
return () => ob.disconnect();
|
|
4764
4863
|
};
|
|
@@ -5016,7 +5115,10 @@ var Vue = (function() {
|
|
|
5016
5115
|
function pruneCacheEntry(key) {
|
|
5017
5116
|
const cached = cache.get(key);
|
|
5018
5117
|
if (cached && (!current || !isSameVNodeType(cached, current))) unmount(cached);
|
|
5019
|
-
else if (current)
|
|
5118
|
+
else if (current) {
|
|
5119
|
+
resetShapeFlag(current);
|
|
5120
|
+
if (cached) resetShapeFlag(cached);
|
|
5121
|
+
}
|
|
5020
5122
|
cache.delete(key);
|
|
5021
5123
|
keys.delete(key);
|
|
5022
5124
|
}
|
|
@@ -5562,6 +5664,11 @@ var Vue = (function() {
|
|
|
5562
5664
|
owner: currentRenderingInstance
|
|
5563
5665
|
}] : void 0
|
|
5564
5666
|
};
|
|
5667
|
+
if (branchKey != null && props.key == null) {
|
|
5668
|
+
ret.vs.props = ret.props;
|
|
5669
|
+
ret.props = extend({}, ret.props, { key: branchKey });
|
|
5670
|
+
ret.key = branchKey;
|
|
5671
|
+
}
|
|
5565
5672
|
if (!noSlotted && ret.scopeId) ret.slotScopeIds = [ret.scopeId + "-s"];
|
|
5566
5673
|
return ret;
|
|
5567
5674
|
}
|
|
@@ -5765,6 +5872,7 @@ var Vue = (function() {
|
|
|
5765
5872
|
const privateAPIs = {
|
|
5766
5873
|
$vnode: (i) => i.vnode,
|
|
5767
5874
|
_self: (i) => i.proxy,
|
|
5875
|
+
_setupProxy: (i) => i.setupState,
|
|
5768
5876
|
_uid: (i) => i.uid,
|
|
5769
5877
|
_data: (i) => i.data,
|
|
5770
5878
|
_isMounted: (i) => i.isMounted,
|
|
@@ -6540,7 +6648,7 @@ var Vue = (function() {
|
|
|
6540
6648
|
if (options.el) return vm.$mount(options.el);
|
|
6541
6649
|
else return vm;
|
|
6542
6650
|
}
|
|
6543
|
-
Vue.version = `2.6.14-compat:3.6.0-rc.
|
|
6651
|
+
Vue.version = `2.6.14-compat:3.6.0-rc.12`;
|
|
6544
6652
|
Vue.config = singletonApp.config;
|
|
6545
6653
|
Vue.use = (plugin, ...options) => {
|
|
6546
6654
|
if (plugin && isFunction(plugin.install)) plugin.install(Vue, ...options);
|
|
@@ -7358,7 +7466,7 @@ var Vue = (function() {
|
|
|
7358
7466
|
if (nextKeys.length !== Object.keys(prevProps).length) return true;
|
|
7359
7467
|
for (let i = 0; i < nextKeys.length; i++) {
|
|
7360
7468
|
const key = nextKeys[i];
|
|
7361
|
-
if (hasPropValueChanged(nextProps, prevProps, key) && !isEmitListener(emitsOptions, key)) return true;
|
|
7469
|
+
if (!hasOwn(prevProps, key) || hasPropValueChanged(nextProps, prevProps, key) && !isEmitListener(emitsOptions, key)) return true;
|
|
7362
7470
|
}
|
|
7363
7471
|
return false;
|
|
7364
7472
|
}
|
|
@@ -8082,7 +8190,8 @@ var Vue = (function() {
|
|
|
8082
8190
|
for (let i = 0; i < newChildren.length; i++) {
|
|
8083
8191
|
const oldVNode = oldChildren[i];
|
|
8084
8192
|
const newVNode = newChildren[i];
|
|
8085
|
-
const
|
|
8193
|
+
const oldEl = oldVNode.el || resolveAsyncComponentPlaceholder(oldVNode);
|
|
8194
|
+
const container = oldEl && (oldVNode.type === Fragment || !isSameVNodeType(oldVNode, newVNode) || oldVNode.shapeFlag & 198) ? hostParentNode(oldEl) : fallbackContainer;
|
|
8086
8195
|
patch(oldVNode, newVNode, container, null, parentComponent, parentSuspense, namespace, slotScopeIds, true);
|
|
8087
8196
|
}
|
|
8088
8197
|
};
|
|
@@ -8177,6 +8286,7 @@ var Vue = (function() {
|
|
|
8177
8286
|
if (instance.asyncDep && !instance.asyncResolved) {
|
|
8178
8287
|
pushWarningContext(n2);
|
|
8179
8288
|
n2.el = n1.el;
|
|
8289
|
+
n2.placeholder = n1.placeholder;
|
|
8180
8290
|
updateComponentPreRender(instance, n2, optimized);
|
|
8181
8291
|
popWarningContext();
|
|
8182
8292
|
return;
|
|
@@ -8186,6 +8296,7 @@ var Vue = (function() {
|
|
|
8186
8296
|
}
|
|
8187
8297
|
} else {
|
|
8188
8298
|
n2.el = n1.el;
|
|
8299
|
+
n2.placeholder = n1.placeholder;
|
|
8189
8300
|
instance.vnode = n2;
|
|
8190
8301
|
}
|
|
8191
8302
|
};
|
|
@@ -8537,12 +8648,9 @@ var Vue = (function() {
|
|
|
8537
8648
|
};
|
|
8538
8649
|
const remove = (vnode) => {
|
|
8539
8650
|
const { type, el, anchor, transition } = vnode;
|
|
8540
|
-
|
|
8541
|
-
|
|
8542
|
-
|
|
8543
|
-
else remove(child);
|
|
8544
|
-
});
|
|
8545
|
-
else removeFragment(el, anchor);
|
|
8651
|
+
const isFragment = type === Fragment;
|
|
8652
|
+
if (isFragment && !transition) {
|
|
8653
|
+
removeFragment(el, anchor);
|
|
8546
8654
|
return;
|
|
8547
8655
|
}
|
|
8548
8656
|
if (type === Static) {
|
|
@@ -8550,8 +8658,21 @@ var Vue = (function() {
|
|
|
8550
8658
|
if (transition && !transition.persisted && transition.afterLeave) transition.afterLeave();
|
|
8551
8659
|
return;
|
|
8552
8660
|
}
|
|
8553
|
-
|
|
8554
|
-
|
|
8661
|
+
const leavingNode = isFragment ? getTransitionRoot(vnode) : vnode;
|
|
8662
|
+
const performRemove = () => {
|
|
8663
|
+
if (isFragment) {
|
|
8664
|
+
if (hostParentNode(el)) removeFragment(el, anchor);
|
|
8665
|
+
} else hostRemove(el);
|
|
8666
|
+
};
|
|
8667
|
+
if (transition) {
|
|
8668
|
+
let leavingEl = leavingNode && leavingNode.el;
|
|
8669
|
+
let isElement = !!(leavingNode && leavingNode.shapeFlag & 1);
|
|
8670
|
+
if (isFragment && leavingNode && isVaporComponent(leavingNode.type)) {
|
|
8671
|
+
leavingEl = getVaporInterface(leavingNode.component, leavingNode).getTransitionElement(leavingNode);
|
|
8672
|
+
isElement = !!leavingEl;
|
|
8673
|
+
}
|
|
8674
|
+
performTransitionLeave(leavingEl || el, transition, performRemove, isElement);
|
|
8675
|
+
} else performRemove();
|
|
8555
8676
|
};
|
|
8556
8677
|
const removeFragment = (cur, end) => {
|
|
8557
8678
|
let next;
|
|
@@ -8596,15 +8717,12 @@ var Vue = (function() {
|
|
|
8596
8717
|
return teleportEnd ? hostNextSibling(teleportEnd) : el;
|
|
8597
8718
|
};
|
|
8598
8719
|
const render = (vnode, container, namespace) => {
|
|
8599
|
-
|
|
8600
|
-
|
|
8601
|
-
|
|
8602
|
-
|
|
8603
|
-
|
|
8604
|
-
|
|
8605
|
-
} else patch(container._vnode || null, vnode, container, null, null, null, namespace);
|
|
8606
|
-
container._vnode = vnode;
|
|
8607
|
-
flushOnAppMount(instance);
|
|
8720
|
+
flushOnAppMount(() => {
|
|
8721
|
+
if (vnode == null) {
|
|
8722
|
+
if (container._vnode) unmount(container._vnode, null, null, true);
|
|
8723
|
+
} else patch(container._vnode || null, vnode, container, null, null, null, namespace);
|
|
8724
|
+
container._vnode = vnode;
|
|
8725
|
+
}, vnode && container._vnode ? void 0 : vnode && vnode.component ? vnode.component.uid : getNextUid());
|
|
8608
8726
|
};
|
|
8609
8727
|
const internals = {
|
|
8610
8728
|
p: patch,
|
|
@@ -8997,13 +9115,12 @@ var Vue = (function() {
|
|
|
8997
9115
|
registerDep(instance, onResolve) {
|
|
8998
9116
|
const isInPendingSuspense = !!suspense.pendingBranch;
|
|
8999
9117
|
if (isInPendingSuspense) suspense.deps++;
|
|
9000
|
-
const hydratedEl = instance.vnode && instance.vnode.el;
|
|
9001
9118
|
instance.asyncDep.catch((err) => {
|
|
9002
9119
|
handleError(err, instance, 0);
|
|
9003
9120
|
}).then((asyncSetupResult) => {
|
|
9004
9121
|
if (instance.isUnmounted || suspense.isUnmounted || suspense.pendingId !== instance.suspenseId) return;
|
|
9005
9122
|
setCurrentInstance(null, void 0);
|
|
9006
|
-
if (
|
|
9123
|
+
if (!instance.scope.active) {
|
|
9007
9124
|
if (isInPendingSuspense && --suspense.deps === 0) suspense.resolve();
|
|
9008
9125
|
return;
|
|
9009
9126
|
}
|
|
@@ -9359,7 +9476,7 @@ var Vue = (function() {
|
|
|
9359
9476
|
ctx: vnode.ctx,
|
|
9360
9477
|
ce: vnode.ce,
|
|
9361
9478
|
vi: vnode.vi,
|
|
9362
|
-
vs: cloneVaporSlotMeta(vnode),
|
|
9479
|
+
vs: cloneVaporSlotMeta(vnode, extraProps),
|
|
9363
9480
|
vb: vnode.vb,
|
|
9364
9481
|
ibu: vnode.ibu,
|
|
9365
9482
|
iu: vnode.iu,
|
|
@@ -9369,13 +9486,22 @@ var Vue = (function() {
|
|
|
9369
9486
|
defineLegacyVNodeProperties(cloned);
|
|
9370
9487
|
return cloned;
|
|
9371
9488
|
}
|
|
9372
|
-
function cloneVaporSlotMeta(vnode) {
|
|
9489
|
+
function cloneVaporSlotMeta(vnode, extraProps) {
|
|
9373
9490
|
const vaporSlot = vnode.vs;
|
|
9374
9491
|
if (!vaporSlot) return vaporSlot;
|
|
9375
9492
|
const cloned = {
|
|
9376
9493
|
slot: vaporSlot.slot,
|
|
9377
|
-
outlets: vaporSlot.outlets
|
|
9494
|
+
outlets: vaporSlot.outlets,
|
|
9495
|
+
props: vaporSlot.props
|
|
9378
9496
|
};
|
|
9497
|
+
if (vaporSlot.props && extraProps) {
|
|
9498
|
+
let extraSlotProps;
|
|
9499
|
+
for (const key in extraProps) if (key !== "key") {
|
|
9500
|
+
if (!extraSlotProps) extraSlotProps = {};
|
|
9501
|
+
extraSlotProps[key] = extraProps[key];
|
|
9502
|
+
}
|
|
9503
|
+
if (extraSlotProps) cloned.props = mergeProps(vaporSlot.props, extraSlotProps);
|
|
9504
|
+
}
|
|
9379
9505
|
if (vnode.el) {
|
|
9380
9506
|
cloned.state = vaporSlot.state;
|
|
9381
9507
|
cloned.ref = vaporSlot.ref;
|
|
@@ -9558,6 +9684,9 @@ var Vue = (function() {
|
|
|
9558
9684
|
//#region packages/runtime-core/src/component.ts
|
|
9559
9685
|
const emptyAppContext = /*@__PURE__*/ createAppContext();
|
|
9560
9686
|
let uid = 0;
|
|
9687
|
+
function getNextUid() {
|
|
9688
|
+
return uid;
|
|
9689
|
+
}
|
|
9561
9690
|
function createComponentInstance(vnode, parent, suspense) {
|
|
9562
9691
|
const type = vnode.type;
|
|
9563
9692
|
const appContext = (parent ? parent.appContext : vnode.appContext) || emptyAppContext;
|
|
@@ -10066,7 +10195,7 @@ var Vue = (function() {
|
|
|
10066
10195
|
}
|
|
10067
10196
|
//#endregion
|
|
10068
10197
|
//#region packages/runtime-core/src/index.ts
|
|
10069
|
-
const version = "3.6.0-rc.
|
|
10198
|
+
const version = "3.6.0-rc.12";
|
|
10070
10199
|
const warn = warn$1;
|
|
10071
10200
|
/**
|
|
10072
10201
|
* Runtime error messages. Only exposed in dev or esm builds.
|
|
@@ -10569,7 +10698,7 @@ var Vue = (function() {
|
|
|
10569
10698
|
else el.removeAttribute("style");
|
|
10570
10699
|
}
|
|
10571
10700
|
if (vShowOriginalDisplay in el) {
|
|
10572
|
-
el[vShowOriginalDisplay] = hasControlledDisplay ? style.display : "";
|
|
10701
|
+
if (!isCssString || prev !== next) el[vShowOriginalDisplay] = hasControlledDisplay ? style.display : "";
|
|
10573
10702
|
if (el[vShowHidden]) style.display = "none";
|
|
10574
10703
|
}
|
|
10575
10704
|
}
|
|
@@ -10899,7 +11028,7 @@ var Vue = (function() {
|
|
|
10899
11028
|
this._resolveProps(def);
|
|
10900
11029
|
if (this.shadowRoot) this._applyStyles(styles);
|
|
10901
11030
|
else if (styles) warn("Custom element style injection is not supported when using shadowRoot: false");
|
|
10902
|
-
this._mountComponent(def);
|
|
11031
|
+
if (this._connected) this._mountComponent(def);
|
|
10903
11032
|
};
|
|
10904
11033
|
const asyncDef = this._def.__asyncLoader;
|
|
10905
11034
|
if (asyncDef) {
|
|
@@ -11201,6 +11330,7 @@ var Vue = (function() {
|
|
|
11201
11330
|
const newPositionMap = /* @__PURE__ */ new WeakMap();
|
|
11202
11331
|
const moveCbKey = Symbol("_moveCb");
|
|
11203
11332
|
const enterCbKey = Symbol("_enterCb");
|
|
11333
|
+
const pendingGroups = /* @__PURE__ */ new WeakMap();
|
|
11204
11334
|
/**
|
|
11205
11335
|
* Wrap logic that modifies TransitionGroup properties in a function
|
|
11206
11336
|
* so that it can be annotated as pure
|
|
@@ -11221,15 +11351,24 @@ var Vue = (function() {
|
|
|
11221
11351
|
const state = useTransitionState();
|
|
11222
11352
|
let prevChildren;
|
|
11223
11353
|
let children;
|
|
11354
|
+
let origins;
|
|
11355
|
+
let moves;
|
|
11356
|
+
const willMove = () => {
|
|
11357
|
+
if (moves === void 0) moves = prevChildren.length > 0 && hasCSSTransform(prevChildren[0].el, instance.vnode.el, resolveMoveClass(props));
|
|
11358
|
+
return moves;
|
|
11359
|
+
};
|
|
11224
11360
|
onUpdated(() => {
|
|
11225
|
-
|
|
11226
|
-
|
|
11227
|
-
if (!hasCSSTransform(prevChildren[0].el, instance.vnode.el, moveClass)) {
|
|
11361
|
+
pendingGroups.delete(instance);
|
|
11362
|
+
if (!willMove()) {
|
|
11228
11363
|
prevChildren = [];
|
|
11364
|
+
origins = void 0;
|
|
11229
11365
|
return;
|
|
11230
11366
|
}
|
|
11367
|
+
const moveClass = resolveMoveClass(props);
|
|
11231
11368
|
prevChildren.forEach((vnode) => callPendingCbs(vnode.el));
|
|
11232
|
-
|
|
11369
|
+
const shift = origins && getOriginShift(origins, instance.vnode.el);
|
|
11370
|
+
origins = void 0;
|
|
11371
|
+
prevChildren.forEach((c) => recordPosition(c, shift));
|
|
11233
11372
|
const movedChildren = prevChildren.filter(applyTranslation);
|
|
11234
11373
|
forceReflow(instance.vnode.el);
|
|
11235
11374
|
movedChildren.forEach((c) => {
|
|
@@ -11244,6 +11383,7 @@ var Vue = (function() {
|
|
|
11244
11383
|
let tag = rawProps.tag || Fragment;
|
|
11245
11384
|
if (!rawProps.tag && compatUtils.checkCompatEnabled("TRANSITION_GROUP_ROOT", instance.parent)) tag = "span";
|
|
11246
11385
|
prevChildren = [];
|
|
11386
|
+
moves = void 0;
|
|
11247
11387
|
if (children) for (let i = 0; i < children.length; i++) {
|
|
11248
11388
|
const child = children[i];
|
|
11249
11389
|
if (child.el && child.el instanceof Element && !child.el[vShowHidden]) {
|
|
@@ -11258,6 +11398,14 @@ var Vue = (function() {
|
|
|
11258
11398
|
if (child.key != null) setTransitionHooks(child, resolveTransitionHooks(child, cssTransitionProps, state, instance));
|
|
11259
11399
|
else if (child.type !== Text) warn(`<TransitionGroup> children must be keyed.`);
|
|
11260
11400
|
}
|
|
11401
|
+
if (prevChildren.length) {
|
|
11402
|
+
const root = instance.vnode.el;
|
|
11403
|
+
origins = getOrigins(instance, root);
|
|
11404
|
+
pendingGroups.set(instance, {
|
|
11405
|
+
root,
|
|
11406
|
+
willMove
|
|
11407
|
+
});
|
|
11408
|
+
}
|
|
11261
11409
|
return createVNode(tag, null, children);
|
|
11262
11410
|
};
|
|
11263
11411
|
}
|
|
@@ -11266,8 +11414,11 @@ var Vue = (function() {
|
|
|
11266
11414
|
if (el[moveCbKey]) el[moveCbKey]();
|
|
11267
11415
|
if (el[enterCbKey]) el[enterCbKey]();
|
|
11268
11416
|
}
|
|
11269
|
-
function
|
|
11270
|
-
|
|
11417
|
+
function resolveMoveClass(props) {
|
|
11418
|
+
return props.moveClass || `${props.name || "v"}-move`;
|
|
11419
|
+
}
|
|
11420
|
+
function recordPosition(c, shift) {
|
|
11421
|
+
newPositionMap.set(c, getPosition(c.el, shift));
|
|
11271
11422
|
}
|
|
11272
11423
|
function applyTranslation(c) {
|
|
11273
11424
|
if (baseApplyTranslation(positionMap.get(c), newPositionMap.get(c), c.el)) return c;
|
|
@@ -11292,13 +11443,36 @@ var Vue = (function() {
|
|
|
11292
11443
|
}
|
|
11293
11444
|
return false;
|
|
11294
11445
|
}
|
|
11295
|
-
function getPosition(el) {
|
|
11446
|
+
function getPosition(el, shift) {
|
|
11296
11447
|
const rect = el.getBoundingClientRect();
|
|
11297
11448
|
return {
|
|
11298
|
-
left: rect.left,
|
|
11299
|
-
top: rect.top
|
|
11449
|
+
left: rect.left - (shift ? shift.left : 0),
|
|
11450
|
+
top: rect.top - (shift ? shift.top : 0)
|
|
11300
11451
|
};
|
|
11301
11452
|
}
|
|
11453
|
+
function getOrigins(instance, root) {
|
|
11454
|
+
let origins;
|
|
11455
|
+
for (let group = instance.parent; group; group = group.parent) {
|
|
11456
|
+
const pending = pendingGroups.get(group);
|
|
11457
|
+
if (pending) {
|
|
11458
|
+
const item = findItem(pending.root, root);
|
|
11459
|
+
if (item) (origins || (origins = [])).push(extend(getPosition(item), {
|
|
11460
|
+
item,
|
|
11461
|
+
willMove: pending.willMove
|
|
11462
|
+
}));
|
|
11463
|
+
}
|
|
11464
|
+
}
|
|
11465
|
+
return origins;
|
|
11466
|
+
}
|
|
11467
|
+
function findItem(root, node) {
|
|
11468
|
+
const container = root.nodeType === 1 ? root : root.parentNode;
|
|
11469
|
+
while (node && node.parentNode !== container) node = node.parentNode;
|
|
11470
|
+
if (node && node.nodeType === 1) return node;
|
|
11471
|
+
}
|
|
11472
|
+
function getOriginShift(origins, root) {
|
|
11473
|
+
const origin = origins.find((o) => o.willMove() && o.item.contains(root));
|
|
11474
|
+
return origin && getPosition(origin.item, origin);
|
|
11475
|
+
}
|
|
11302
11476
|
function hasCSSTransform(el, root, moveClass) {
|
|
11303
11477
|
const clone = el.cloneNode();
|
|
11304
11478
|
const _vtc = el[vtcKey];
|
|
@@ -13050,7 +13224,7 @@ var Vue = (function() {
|
|
|
13050
13224
|
[41]: `v-model is missing expression.`,
|
|
13051
13225
|
[42]: `v-model value must be a valid JavaScript member expression.`,
|
|
13052
13226
|
[43]: `v-model cannot be used on v-for or v-slot scope variables because they are not writable.`,
|
|
13053
|
-
[44]: `v-model cannot be used on a prop, because local prop bindings are not writable.\nUse a v-bind binding combined with a v-on listener that emits update:x event instead.`,
|
|
13227
|
+
[44]: `v-model cannot be used on a prop, because local prop bindings are not writable.\nUse a v-bind binding combined with a v-on listener that emits update:x event instead.\nFor props declared with defineModel(), assign the returned ref to a variable and use v-model on that variable.`,
|
|
13054
13228
|
[45]: `v-model cannot be used on a const binding because it is not writable.`,
|
|
13055
13229
|
[46]: `Error parsing JavaScript expression: `,
|
|
13056
13230
|
[47]: `<KeepAlive> expects exactly one child component.`,
|
|
@@ -14873,7 +15047,11 @@ var Vue = (function() {
|
|
|
14873
15047
|
]),
|
|
14874
15048
|
createCompoundExpression([
|
|
14875
15049
|
`if (_cached && _cached.el`,
|
|
14876
|
-
...keyExp ? [
|
|
15050
|
+
...keyExp ? [
|
|
15051
|
+
` && _cached.key === (`,
|
|
15052
|
+
keyExp,
|
|
15053
|
+
`)`
|
|
15054
|
+
] : [],
|
|
14877
15055
|
` && ${context.helperString(IS_MEMO_SAME)}(_cached, _memo)) return _cached`
|
|
14878
15056
|
]),
|
|
14879
15057
|
createCompoundExpression([`const _item = `, childBlock]),
|
|
@@ -16295,7 +16473,11 @@ var Vue = (function() {
|
|
|
16295
16473
|
};
|
|
16296
16474
|
//#endregion
|
|
16297
16475
|
//#region packages/compiler-dom/src/index.ts
|
|
16298
|
-
const DOMNodeTransforms = [
|
|
16476
|
+
const DOMNodeTransforms = [
|
|
16477
|
+
transformStyle,
|
|
16478
|
+
transformTransition,
|
|
16479
|
+
...[validateHtmlNesting]
|
|
16480
|
+
];
|
|
16299
16481
|
const DOMDirectiveTransforms = {
|
|
16300
16482
|
cloak: noopDirectiveTransform,
|
|
16301
16483
|
html: transformVHtml,
|