@vue/runtime-core 3.4.26 → 3.5.0-alpha.1
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/runtime-core.cjs.js +123 -94
- package/dist/runtime-core.cjs.prod.js +110 -80
- package/dist/runtime-core.d.ts +478 -399
- package/dist/runtime-core.esm-bundler.js +126 -97
- package/package.json +3 -3
package/dist/runtime-core.cjs.js
CHANGED
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
/**
|
|
2
|
-
* @vue/runtime-core v3.
|
|
2
|
+
* @vue/runtime-core v3.5.0-alpha.1
|
|
3
3
|
* (c) 2018-present Yuxi (Evan) You and Vue contributors
|
|
4
4
|
* @license MIT
|
|
5
5
|
**/
|
|
@@ -290,7 +290,7 @@ function findInsertionIndex(id) {
|
|
|
290
290
|
const middle = start + end >>> 1;
|
|
291
291
|
const middleJob = queue[middle];
|
|
292
292
|
const middleJobId = getId(middleJob);
|
|
293
|
-
if (middleJobId < id || middleJobId === id && middleJob.
|
|
293
|
+
if (middleJobId < id || middleJobId === id && middleJob.flags & 2) {
|
|
294
294
|
start = middle + 1;
|
|
295
295
|
} else {
|
|
296
296
|
end = middle;
|
|
@@ -299,15 +299,21 @@ function findInsertionIndex(id) {
|
|
|
299
299
|
return start;
|
|
300
300
|
}
|
|
301
301
|
function queueJob(job) {
|
|
302
|
-
|
|
303
|
-
|
|
304
|
-
isFlushing && job.allowRecurse ? flushIndex + 1 : flushIndex
|
|
305
|
-
)) {
|
|
302
|
+
var _a;
|
|
303
|
+
if (!(job.flags & 1)) {
|
|
306
304
|
if (job.id == null) {
|
|
307
305
|
queue.push(job);
|
|
306
|
+
} else if (
|
|
307
|
+
// fast path when the job id is larger than the tail
|
|
308
|
+
!(job.flags & 2) && job.id >= (((_a = queue[queue.length - 1]) == null ? void 0 : _a.id) || 0)
|
|
309
|
+
) {
|
|
310
|
+
queue.push(job);
|
|
308
311
|
} else {
|
|
309
312
|
queue.splice(findInsertionIndex(job.id), 0, job);
|
|
310
313
|
}
|
|
314
|
+
if (!(job.flags & 4)) {
|
|
315
|
+
job.flags |= 1;
|
|
316
|
+
}
|
|
311
317
|
queueFlush();
|
|
312
318
|
}
|
|
313
319
|
}
|
|
@@ -325,11 +331,11 @@ function invalidateJob(job) {
|
|
|
325
331
|
}
|
|
326
332
|
function queuePostFlushCb(cb) {
|
|
327
333
|
if (!shared.isArray(cb)) {
|
|
328
|
-
if (!
|
|
329
|
-
cb,
|
|
330
|
-
cb.allowRecurse ? postFlushIndex + 1 : postFlushIndex
|
|
331
|
-
)) {
|
|
334
|
+
if (!(cb.flags & 1)) {
|
|
332
335
|
pendingPostFlushCbs.push(cb);
|
|
336
|
+
if (!(cb.flags & 4)) {
|
|
337
|
+
cb.flags |= 1;
|
|
338
|
+
}
|
|
333
339
|
}
|
|
334
340
|
} else {
|
|
335
341
|
pendingPostFlushCbs.push(...cb);
|
|
@@ -342,7 +348,7 @@ function flushPreFlushCbs(instance, seen, i = isFlushing ? flushIndex + 1 : 0) {
|
|
|
342
348
|
}
|
|
343
349
|
for (; i < queue.length; i++) {
|
|
344
350
|
const cb = queue[i];
|
|
345
|
-
if (cb && cb.
|
|
351
|
+
if (cb && cb.flags & 2) {
|
|
346
352
|
if (instance && cb.id !== instance.uid) {
|
|
347
353
|
continue;
|
|
348
354
|
}
|
|
@@ -352,6 +358,7 @@ function flushPreFlushCbs(instance, seen, i = isFlushing ? flushIndex + 1 : 0) {
|
|
|
352
358
|
queue.splice(i, 1);
|
|
353
359
|
i--;
|
|
354
360
|
cb();
|
|
361
|
+
cb.flags &= ~1;
|
|
355
362
|
}
|
|
356
363
|
}
|
|
357
364
|
}
|
|
@@ -374,6 +381,7 @@ function flushPostFlushCbs(seen) {
|
|
|
374
381
|
continue;
|
|
375
382
|
}
|
|
376
383
|
activePostFlushCbs[postFlushIndex]();
|
|
384
|
+
activePostFlushCbs[postFlushIndex].flags &= ~1;
|
|
377
385
|
}
|
|
378
386
|
activePostFlushCbs = null;
|
|
379
387
|
postFlushIndex = 0;
|
|
@@ -383,9 +391,11 @@ const getId = (job) => job.id == null ? Infinity : job.id;
|
|
|
383
391
|
const comparator = (a, b) => {
|
|
384
392
|
const diff = getId(a) - getId(b);
|
|
385
393
|
if (diff === 0) {
|
|
386
|
-
|
|
394
|
+
const isAPre = a.flags & 2;
|
|
395
|
+
const isBPre = b.flags & 2;
|
|
396
|
+
if (isAPre && !isBPre)
|
|
387
397
|
return -1;
|
|
388
|
-
if (
|
|
398
|
+
if (isBPre && !isAPre)
|
|
389
399
|
return 1;
|
|
390
400
|
}
|
|
391
401
|
return diff;
|
|
@@ -401,11 +411,12 @@ function flushJobs(seen) {
|
|
|
401
411
|
try {
|
|
402
412
|
for (flushIndex = 0; flushIndex < queue.length; flushIndex++) {
|
|
403
413
|
const job = queue[flushIndex];
|
|
404
|
-
if (job && job.
|
|
414
|
+
if (job && !(job.flags & 8)) {
|
|
405
415
|
if (check(job)) {
|
|
406
416
|
continue;
|
|
407
417
|
}
|
|
408
418
|
callWithErrorHandling(job, null, 14);
|
|
419
|
+
job.flags &= ~1;
|
|
409
420
|
}
|
|
410
421
|
}
|
|
411
422
|
} finally {
|
|
@@ -487,7 +498,6 @@ function rerender(id, newRender) {
|
|
|
487
498
|
}
|
|
488
499
|
instance.renderCache = [];
|
|
489
500
|
isHmrUpdating = true;
|
|
490
|
-
instance.effect.dirty = true;
|
|
491
501
|
instance.update();
|
|
492
502
|
isHmrUpdating = false;
|
|
493
503
|
});
|
|
@@ -515,7 +525,6 @@ function reload(id, newComp) {
|
|
|
515
525
|
instance.ceReload(newComp.styles);
|
|
516
526
|
hmrDirtyComponents.delete(oldComp);
|
|
517
527
|
} else if (instance.parent) {
|
|
518
|
-
instance.parent.effect.dirty = true;
|
|
519
528
|
queueJob(instance.parent.update);
|
|
520
529
|
} else if (instance.appContext.reload) {
|
|
521
530
|
instance.appContext.reload();
|
|
@@ -904,7 +913,7 @@ function renderComponentRoot(instance) {
|
|
|
904
913
|
true ? {
|
|
905
914
|
get attrs() {
|
|
906
915
|
markAttrsAccessed();
|
|
907
|
-
return
|
|
916
|
+
return attrs;
|
|
908
917
|
},
|
|
909
918
|
slots,
|
|
910
919
|
emit
|
|
@@ -937,7 +946,7 @@ function renderComponentRoot(instance) {
|
|
|
937
946
|
propsOptions
|
|
938
947
|
);
|
|
939
948
|
}
|
|
940
|
-
root = cloneVNode(root, fallthroughAttrs
|
|
949
|
+
root = cloneVNode(root, fallthroughAttrs);
|
|
941
950
|
} else if (!accessedAttrs && root.type !== Comment) {
|
|
942
951
|
const allAttrs = Object.keys(attrs);
|
|
943
952
|
const eventAttrs = [];
|
|
@@ -971,7 +980,7 @@ function renderComponentRoot(instance) {
|
|
|
971
980
|
`Runtime directive used on component with non-element root node. The directives will not function as intended.`
|
|
972
981
|
);
|
|
973
982
|
}
|
|
974
|
-
root = cloneVNode(root
|
|
983
|
+
root = cloneVNode(root);
|
|
975
984
|
root.dirs = root.dirs ? root.dirs.concat(vnode.dirs) : vnode.dirs;
|
|
976
985
|
}
|
|
977
986
|
if (vnode.transition) {
|
|
@@ -1462,7 +1471,7 @@ function createSuspenseBoundary(vnode, parentSuspense, parentComponent, containe
|
|
|
1462
1471
|
let parentSuspenseId;
|
|
1463
1472
|
const isSuspensible = isVNodeSuspensible(vnode);
|
|
1464
1473
|
if (isSuspensible) {
|
|
1465
|
-
if (parentSuspense
|
|
1474
|
+
if (parentSuspense == null ? void 0 : parentSuspense.pendingBranch) {
|
|
1466
1475
|
parentSuspenseId = parentSuspense.pendingId;
|
|
1467
1476
|
parentSuspense.deps++;
|
|
1468
1477
|
}
|
|
@@ -1774,8 +1783,8 @@ function setActiveBranch(suspense, branch) {
|
|
|
1774
1783
|
}
|
|
1775
1784
|
}
|
|
1776
1785
|
function isVNodeSuspensible(vnode) {
|
|
1777
|
-
|
|
1778
|
-
return suspensible != null && suspensible !== false;
|
|
1786
|
+
var _a;
|
|
1787
|
+
return ((_a = vnode.props) == null ? void 0 : _a.suspensible) != null && vnode.props.suspensible !== false;
|
|
1779
1788
|
}
|
|
1780
1789
|
|
|
1781
1790
|
const ssrContextKey = Symbol.for("v-scx");
|
|
@@ -1940,8 +1949,8 @@ function doWatch(source, cb, {
|
|
|
1940
1949
|
}
|
|
1941
1950
|
}
|
|
1942
1951
|
let oldValue = isMultiSource ? new Array(source.length).fill(INITIAL_WATCHER_VALUE) : INITIAL_WATCHER_VALUE;
|
|
1943
|
-
const job = () => {
|
|
1944
|
-
if (!effect.
|
|
1952
|
+
const job = (immediateFirstRun) => {
|
|
1953
|
+
if (!(effect.flags & 1) || !effect.dirty && !immediateFirstRun) {
|
|
1945
1954
|
return;
|
|
1946
1955
|
}
|
|
1947
1956
|
if (cb) {
|
|
@@ -1962,19 +1971,22 @@ function doWatch(source, cb, {
|
|
|
1962
1971
|
effect.run();
|
|
1963
1972
|
}
|
|
1964
1973
|
};
|
|
1965
|
-
|
|
1974
|
+
if (cb)
|
|
1975
|
+
job.flags |= 4;
|
|
1976
|
+
const effect = new reactivity.ReactiveEffect(getter);
|
|
1966
1977
|
let scheduler;
|
|
1967
1978
|
if (flush === "sync") {
|
|
1979
|
+
effect.flags |= 64;
|
|
1968
1980
|
scheduler = job;
|
|
1969
1981
|
} else if (flush === "post") {
|
|
1970
1982
|
scheduler = () => queuePostRenderEffect(job, instance && instance.suspense);
|
|
1971
1983
|
} else {
|
|
1972
|
-
job.
|
|
1984
|
+
job.flags |= 2;
|
|
1973
1985
|
if (instance)
|
|
1974
1986
|
job.id = instance.uid;
|
|
1975
1987
|
scheduler = () => queueJob(job);
|
|
1976
1988
|
}
|
|
1977
|
-
|
|
1989
|
+
effect.scheduler = scheduler;
|
|
1978
1990
|
const scope = reactivity.getCurrentScope();
|
|
1979
1991
|
const unwatch = () => {
|
|
1980
1992
|
effect.stop();
|
|
@@ -1988,7 +2000,7 @@ function doWatch(source, cb, {
|
|
|
1988
2000
|
}
|
|
1989
2001
|
if (cb) {
|
|
1990
2002
|
if (immediate) {
|
|
1991
|
-
job();
|
|
2003
|
+
job(true);
|
|
1992
2004
|
} else {
|
|
1993
2005
|
oldValue = effect.run();
|
|
1994
2006
|
}
|
|
@@ -2029,29 +2041,34 @@ function createPathGetter(ctx, path) {
|
|
|
2029
2041
|
return cur;
|
|
2030
2042
|
};
|
|
2031
2043
|
}
|
|
2032
|
-
function traverse(value, depth =
|
|
2033
|
-
if (
|
|
2044
|
+
function traverse(value, depth, currentDepth = 0, seen) {
|
|
2045
|
+
if (!shared.isObject(value) || value["__v_skip"]) {
|
|
2034
2046
|
return value;
|
|
2035
2047
|
}
|
|
2048
|
+
if (depth && depth > 0) {
|
|
2049
|
+
if (currentDepth >= depth) {
|
|
2050
|
+
return value;
|
|
2051
|
+
}
|
|
2052
|
+
currentDepth++;
|
|
2053
|
+
}
|
|
2036
2054
|
seen = seen || /* @__PURE__ */ new Set();
|
|
2037
2055
|
if (seen.has(value)) {
|
|
2038
2056
|
return value;
|
|
2039
2057
|
}
|
|
2040
2058
|
seen.add(value);
|
|
2041
|
-
depth--;
|
|
2042
2059
|
if (reactivity.isRef(value)) {
|
|
2043
|
-
traverse(value.value, depth, seen);
|
|
2060
|
+
traverse(value.value, depth, currentDepth, seen);
|
|
2044
2061
|
} else if (shared.isArray(value)) {
|
|
2045
2062
|
for (let i = 0; i < value.length; i++) {
|
|
2046
|
-
traverse(value[i], depth, seen);
|
|
2063
|
+
traverse(value[i], depth, currentDepth, seen);
|
|
2047
2064
|
}
|
|
2048
2065
|
} else if (shared.isSet(value) || shared.isMap(value)) {
|
|
2049
2066
|
value.forEach((v) => {
|
|
2050
|
-
traverse(v, depth, seen);
|
|
2067
|
+
traverse(v, depth, currentDepth, seen);
|
|
2051
2068
|
});
|
|
2052
2069
|
} else if (shared.isPlainObject(value)) {
|
|
2053
2070
|
for (const key in value) {
|
|
2054
|
-
traverse(value[key], depth, seen);
|
|
2071
|
+
traverse(value[key], depth, currentDepth, seen);
|
|
2055
2072
|
}
|
|
2056
2073
|
}
|
|
2057
2074
|
return value;
|
|
@@ -2164,22 +2181,7 @@ const BaseTransitionImpl = {
|
|
|
2164
2181
|
if (!children || !children.length) {
|
|
2165
2182
|
return;
|
|
2166
2183
|
}
|
|
2167
|
-
|
|
2168
|
-
if (children.length > 1) {
|
|
2169
|
-
let hasFound = false;
|
|
2170
|
-
for (const c of children) {
|
|
2171
|
-
if (c.type !== Comment) {
|
|
2172
|
-
if (hasFound) {
|
|
2173
|
-
warn$1(
|
|
2174
|
-
"<transition> can only be used on a single element or component. Use <transition-group> for lists."
|
|
2175
|
-
);
|
|
2176
|
-
break;
|
|
2177
|
-
}
|
|
2178
|
-
child = c;
|
|
2179
|
-
hasFound = true;
|
|
2180
|
-
}
|
|
2181
|
-
}
|
|
2182
|
-
}
|
|
2184
|
+
const child = findNonCommentChild(children);
|
|
2183
2185
|
const rawProps = reactivity.toRaw(props);
|
|
2184
2186
|
const { mode } = rawProps;
|
|
2185
2187
|
if (mode && mode !== "in-out" && mode !== "out-in" && mode !== "default") {
|
|
@@ -2188,7 +2190,7 @@ const BaseTransitionImpl = {
|
|
|
2188
2190
|
if (state.isLeaving) {
|
|
2189
2191
|
return emptyPlaceholder(child);
|
|
2190
2192
|
}
|
|
2191
|
-
const innerChild =
|
|
2193
|
+
const innerChild = getInnerChild$1(child);
|
|
2192
2194
|
if (!innerChild) {
|
|
2193
2195
|
return emptyPlaceholder(child);
|
|
2194
2196
|
}
|
|
@@ -2200,7 +2202,7 @@ const BaseTransitionImpl = {
|
|
|
2200
2202
|
);
|
|
2201
2203
|
setTransitionHooks(innerChild, enterHooks);
|
|
2202
2204
|
const oldChild = instance.subTree;
|
|
2203
|
-
const oldInnerChild = oldChild &&
|
|
2205
|
+
const oldInnerChild = oldChild && getInnerChild$1(oldChild);
|
|
2204
2206
|
if (oldInnerChild && oldInnerChild.type !== Comment && !isSameVNodeType(innerChild, oldInnerChild)) {
|
|
2205
2207
|
const leavingHooks = resolveTransitionHooks(
|
|
2206
2208
|
oldInnerChild,
|
|
@@ -2209,12 +2211,11 @@ const BaseTransitionImpl = {
|
|
|
2209
2211
|
instance
|
|
2210
2212
|
);
|
|
2211
2213
|
setTransitionHooks(oldInnerChild, leavingHooks);
|
|
2212
|
-
if (mode === "out-in"
|
|
2214
|
+
if (mode === "out-in") {
|
|
2213
2215
|
state.isLeaving = true;
|
|
2214
2216
|
leavingHooks.afterLeave = () => {
|
|
2215
2217
|
state.isLeaving = false;
|
|
2216
|
-
if (instance.
|
|
2217
|
-
instance.effect.dirty = true;
|
|
2218
|
+
if (!(instance.job.flags & 8)) {
|
|
2218
2219
|
instance.update();
|
|
2219
2220
|
}
|
|
2220
2221
|
};
|
|
@@ -2239,6 +2240,25 @@ const BaseTransitionImpl = {
|
|
|
2239
2240
|
};
|
|
2240
2241
|
}
|
|
2241
2242
|
};
|
|
2243
|
+
function findNonCommentChild(children) {
|
|
2244
|
+
let child = children[0];
|
|
2245
|
+
if (children.length > 1) {
|
|
2246
|
+
let hasFound = false;
|
|
2247
|
+
for (const c of children) {
|
|
2248
|
+
if (c.type !== Comment) {
|
|
2249
|
+
if (hasFound) {
|
|
2250
|
+
warn$1(
|
|
2251
|
+
"<transition> can only be used on a single element or component. Use <transition-group> for lists."
|
|
2252
|
+
);
|
|
2253
|
+
break;
|
|
2254
|
+
}
|
|
2255
|
+
child = c;
|
|
2256
|
+
hasFound = true;
|
|
2257
|
+
}
|
|
2258
|
+
}
|
|
2259
|
+
}
|
|
2260
|
+
return child;
|
|
2261
|
+
}
|
|
2242
2262
|
const BaseTransition = BaseTransitionImpl;
|
|
2243
2263
|
function getLeavingNodesForType(state, vnode) {
|
|
2244
2264
|
const { leavingVNodes } = state;
|
|
@@ -2393,8 +2413,11 @@ function emptyPlaceholder(vnode) {
|
|
|
2393
2413
|
return vnode;
|
|
2394
2414
|
}
|
|
2395
2415
|
}
|
|
2396
|
-
function
|
|
2416
|
+
function getInnerChild$1(vnode) {
|
|
2397
2417
|
if (!isKeepAlive(vnode)) {
|
|
2418
|
+
if (isTeleport(vnode.type) && vnode.children) {
|
|
2419
|
+
return findNonCommentChild(vnode.children);
|
|
2420
|
+
}
|
|
2398
2421
|
return vnode;
|
|
2399
2422
|
}
|
|
2400
2423
|
if (vnode.component) {
|
|
@@ -2563,7 +2586,6 @@ function defineAsyncComponent(source) {
|
|
|
2563
2586
|
load().then(() => {
|
|
2564
2587
|
loaded.value = true;
|
|
2565
2588
|
if (instance.parent && isKeepAlive(instance.parent.vnode)) {
|
|
2566
|
-
instance.parent.effect.dirty = true;
|
|
2567
2589
|
queueJob(instance.parent.update);
|
|
2568
2590
|
}
|
|
2569
2591
|
}).catch((err) => {
|
|
@@ -2730,7 +2752,7 @@ const KeepAliveImpl = {
|
|
|
2730
2752
|
return () => {
|
|
2731
2753
|
pendingCacheKey = null;
|
|
2732
2754
|
if (!slots.default) {
|
|
2733
|
-
return null;
|
|
2755
|
+
return current = null;
|
|
2734
2756
|
}
|
|
2735
2757
|
const children = slots.default();
|
|
2736
2758
|
const rawVNode = children[0];
|
|
@@ -2894,10 +2916,20 @@ function onErrorCaptured(hook, target = currentInstance) {
|
|
|
2894
2916
|
function renderList(source, renderItem, cache, index) {
|
|
2895
2917
|
let ret;
|
|
2896
2918
|
const cached = cache && cache[index];
|
|
2897
|
-
|
|
2919
|
+
const sourceIsArray = shared.isArray(source);
|
|
2920
|
+
const sourceIsReactiveArray = sourceIsArray && reactivity.isReactive(source);
|
|
2921
|
+
if (sourceIsArray || shared.isString(source)) {
|
|
2922
|
+
if (sourceIsReactiveArray) {
|
|
2923
|
+
source = reactivity.shallowReadArray(source);
|
|
2924
|
+
}
|
|
2898
2925
|
ret = new Array(source.length);
|
|
2899
2926
|
for (let i = 0, l = source.length; i < l; i++) {
|
|
2900
|
-
ret[i] = renderItem(
|
|
2927
|
+
ret[i] = renderItem(
|
|
2928
|
+
sourceIsReactiveArray ? reactivity.toReactive(source[i]) : source[i],
|
|
2929
|
+
i,
|
|
2930
|
+
void 0,
|
|
2931
|
+
cached && cached[i]
|
|
2932
|
+
);
|
|
2901
2933
|
}
|
|
2902
2934
|
} else if (typeof source === "number") {
|
|
2903
2935
|
if (!Number.isInteger(source)) {
|
|
@@ -3032,7 +3064,6 @@ const publicPropertiesMap = (
|
|
|
3032
3064
|
$emit: (i) => i.emit,
|
|
3033
3065
|
$options: (i) => resolveMergedOptions(i) ,
|
|
3034
3066
|
$forceUpdate: (i) => i.f || (i.f = () => {
|
|
3035
|
-
i.effect.dirty = true;
|
|
3036
3067
|
queueJob(i.update);
|
|
3037
3068
|
}),
|
|
3038
3069
|
$nextTick: (i) => i.n || (i.n = nextTick.bind(i.proxy)),
|
|
@@ -4365,7 +4396,9 @@ const isSimpleType = /* @__PURE__ */ shared.makeMap(
|
|
|
4365
4396
|
function assertType(value, type) {
|
|
4366
4397
|
let valid;
|
|
4367
4398
|
const expectedType = getType(type);
|
|
4368
|
-
if (
|
|
4399
|
+
if (expectedType === "null") {
|
|
4400
|
+
valid = value === null;
|
|
4401
|
+
} else if (isSimpleType(expectedType)) {
|
|
4369
4402
|
const t = typeof value;
|
|
4370
4403
|
valid = t === expectedType.toLowerCase();
|
|
4371
4404
|
if (!valid && t === "object") {
|
|
@@ -4375,8 +4408,6 @@ function assertType(value, type) {
|
|
|
4375
4408
|
valid = shared.isObject(value);
|
|
4376
4409
|
} else if (expectedType === "Array") {
|
|
4377
4410
|
valid = shared.isArray(value);
|
|
4378
|
-
} else if (expectedType === "null") {
|
|
4379
|
-
valid = value === null;
|
|
4380
4411
|
} else {
|
|
4381
4412
|
valid = value instanceof type;
|
|
4382
4413
|
}
|
|
@@ -4471,7 +4502,7 @@ const initSlots = (instance, children) => {
|
|
|
4471
4502
|
const type = children._;
|
|
4472
4503
|
if (type) {
|
|
4473
4504
|
shared.extend(slots, children);
|
|
4474
|
-
shared.def(slots, "_", type
|
|
4505
|
+
shared.def(slots, "_", type);
|
|
4475
4506
|
} else {
|
|
4476
4507
|
normalizeObjectSlots(children, slots);
|
|
4477
4508
|
}
|
|
@@ -5900,7 +5931,6 @@ function baseCreateRenderer(options, createHydrationFns) {
|
|
|
5900
5931
|
} else {
|
|
5901
5932
|
instance.next = n2;
|
|
5902
5933
|
invalidateJob(instance.update);
|
|
5903
|
-
instance.effect.dirty = true;
|
|
5904
5934
|
instance.update();
|
|
5905
5935
|
}
|
|
5906
5936
|
} else {
|
|
@@ -6083,24 +6113,18 @@ function baseCreateRenderer(options, createHydrationFns) {
|
|
|
6083
6113
|
}
|
|
6084
6114
|
}
|
|
6085
6115
|
};
|
|
6086
|
-
|
|
6087
|
-
|
|
6088
|
-
|
|
6089
|
-
|
|
6090
|
-
|
|
6091
|
-
|
|
6092
|
-
);
|
|
6093
|
-
const update = instance.update = () => {
|
|
6094
|
-
if (effect.dirty) {
|
|
6095
|
-
effect.run();
|
|
6096
|
-
}
|
|
6097
|
-
};
|
|
6098
|
-
update.id = instance.uid;
|
|
6116
|
+
instance.scope.on();
|
|
6117
|
+
const effect = instance.effect = new reactivity.ReactiveEffect(componentUpdateFn);
|
|
6118
|
+
instance.scope.off();
|
|
6119
|
+
const update = instance.update = effect.run.bind(effect);
|
|
6120
|
+
const job = instance.job = effect.runIfDirty.bind(effect);
|
|
6121
|
+
job.id = instance.uid;
|
|
6122
|
+
effect.scheduler = () => queueJob(job);
|
|
6099
6123
|
toggleRecurse(instance, true);
|
|
6100
6124
|
{
|
|
6101
6125
|
effect.onTrack = instance.rtc ? (e) => shared.invokeArrayFns(instance.rtc, e) : void 0;
|
|
6102
6126
|
effect.onTrigger = instance.rtg ? (e) => shared.invokeArrayFns(instance.rtg, e) : void 0;
|
|
6103
|
-
|
|
6127
|
+
job.ownerInstance = instance;
|
|
6104
6128
|
}
|
|
6105
6129
|
update();
|
|
6106
6130
|
};
|
|
@@ -6567,13 +6591,13 @@ function baseCreateRenderer(options, createHydrationFns) {
|
|
|
6567
6591
|
if (instance.type.__hmrId) {
|
|
6568
6592
|
unregisterHMR(instance);
|
|
6569
6593
|
}
|
|
6570
|
-
const { bum, scope,
|
|
6594
|
+
const { bum, scope, job, subTree, um } = instance;
|
|
6571
6595
|
if (bum) {
|
|
6572
6596
|
shared.invokeArrayFns(bum);
|
|
6573
6597
|
}
|
|
6574
6598
|
scope.stop();
|
|
6575
|
-
if (
|
|
6576
|
-
|
|
6599
|
+
if (job) {
|
|
6600
|
+
job.flags |= 8;
|
|
6577
6601
|
unmount(subTree, instance, parentSuspense, doRemove);
|
|
6578
6602
|
}
|
|
6579
6603
|
if (um) {
|
|
@@ -6659,8 +6683,14 @@ function baseCreateRenderer(options, createHydrationFns) {
|
|
|
6659
6683
|
function resolveChildrenNamespace({ type, props }, currentNamespace) {
|
|
6660
6684
|
return currentNamespace === "svg" && type === "foreignObject" || currentNamespace === "mathml" && type === "annotation-xml" && props && props.encoding && props.encoding.includes("html") ? void 0 : currentNamespace;
|
|
6661
6685
|
}
|
|
6662
|
-
function toggleRecurse({ effect,
|
|
6663
|
-
|
|
6686
|
+
function toggleRecurse({ effect, job }, allowed) {
|
|
6687
|
+
if (allowed) {
|
|
6688
|
+
effect.flags |= 32;
|
|
6689
|
+
job.flags |= 4;
|
|
6690
|
+
} else {
|
|
6691
|
+
effect.flags &= ~32;
|
|
6692
|
+
job.flags &= ~4;
|
|
6693
|
+
}
|
|
6664
6694
|
}
|
|
6665
6695
|
function needTransition(parentSuspense, transition) {
|
|
6666
6696
|
return (!parentSuspense || parentSuspense && !parentSuspense.pendingBranch) && transition && !transition.persisted;
|
|
@@ -7218,8 +7248,8 @@ function guardReactiveProps(props) {
|
|
|
7218
7248
|
return null;
|
|
7219
7249
|
return reactivity.isProxy(props) || isInternalObject(props) ? shared.extend({}, props) : props;
|
|
7220
7250
|
}
|
|
7221
|
-
function cloneVNode(vnode, extraProps, mergeRef = false
|
|
7222
|
-
const { props, ref, patchFlag, children
|
|
7251
|
+
function cloneVNode(vnode, extraProps, mergeRef = false) {
|
|
7252
|
+
const { props, ref, patchFlag, children } = vnode;
|
|
7223
7253
|
const mergedProps = extraProps ? mergeProps(props || {}, extraProps) : props;
|
|
7224
7254
|
const cloned = {
|
|
7225
7255
|
__v_isVNode: true,
|
|
@@ -7249,7 +7279,7 @@ function cloneVNode(vnode, extraProps, mergeRef = false, cloneTransition = false
|
|
|
7249
7279
|
dynamicChildren: vnode.dynamicChildren,
|
|
7250
7280
|
appContext: vnode.appContext,
|
|
7251
7281
|
dirs: vnode.dirs,
|
|
7252
|
-
transition,
|
|
7282
|
+
transition: vnode.transition,
|
|
7253
7283
|
// These should technically only be non-null on mounted VNodes. However,
|
|
7254
7284
|
// they *should* be copied for kept-alive vnodes. So we just always copy
|
|
7255
7285
|
// them since them being non-null during a mount doesn't affect the logic as
|
|
@@ -7263,9 +7293,6 @@ function cloneVNode(vnode, extraProps, mergeRef = false, cloneTransition = false
|
|
|
7263
7293
|
ctx: vnode.ctx,
|
|
7264
7294
|
ce: vnode.ce
|
|
7265
7295
|
};
|
|
7266
|
-
if (transition && cloneTransition) {
|
|
7267
|
-
cloned.transition = transition.clone(cloned);
|
|
7268
|
-
}
|
|
7269
7296
|
return cloned;
|
|
7270
7297
|
}
|
|
7271
7298
|
function deepCloneVNode(vnode) {
|
|
@@ -7400,6 +7427,7 @@ function createComponentInstance(vnode, parent, suspense) {
|
|
|
7400
7427
|
effect: null,
|
|
7401
7428
|
update: null,
|
|
7402
7429
|
// will be set synchronously right after creation
|
|
7430
|
+
job: null,
|
|
7403
7431
|
scope: new reactivity.EffectScope(
|
|
7404
7432
|
true
|
|
7405
7433
|
/* detached */
|
|
@@ -7910,7 +7938,8 @@ function initCustomFormatter() {
|
|
|
7910
7938
|
{},
|
|
7911
7939
|
["span", vueStyle, genRefFlag(obj)],
|
|
7912
7940
|
"<",
|
|
7913
|
-
|
|
7941
|
+
// avoid debugger accessing value affecting behavior
|
|
7942
|
+
formatValue("_value" in obj ? obj._value : obj),
|
|
7914
7943
|
`>`
|
|
7915
7944
|
];
|
|
7916
7945
|
} else if (reactivity.isReactive(obj)) {
|
|
@@ -8090,7 +8119,7 @@ function isMemoSame(cached, memo) {
|
|
|
8090
8119
|
return true;
|
|
8091
8120
|
}
|
|
8092
8121
|
|
|
8093
|
-
const version = "3.
|
|
8122
|
+
const version = "3.5.0-alpha.1";
|
|
8094
8123
|
const warn = warn$1 ;
|
|
8095
8124
|
const ErrorTypeStrings = ErrorTypeStrings$1 ;
|
|
8096
8125
|
const devtools = devtools$1 ;
|