@vue/compat 3.4.4 → 3.4.6
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 +113 -24
- package/dist/vue.cjs.prod.js +48 -17
- package/dist/vue.esm-browser.js +94 -22
- package/dist/vue.esm-browser.prod.js +2 -2
- package/dist/vue.esm-bundler.js +94 -22
- package/dist/vue.global.js +94 -22
- package/dist/vue.global.prod.js +5 -5
- package/dist/vue.runtime.esm-browser.js +94 -22
- package/dist/vue.runtime.esm-browser.prod.js +2 -2
- package/dist/vue.runtime.esm-bundler.js +94 -22
- package/dist/vue.runtime.global.js +94 -22
- package/dist/vue.runtime.global.prod.js +5 -5
- package/package.json +2 -2
package/dist/vue.esm-bundler.js
CHANGED
|
@@ -1893,7 +1893,9 @@ function flushPreFlushCbs(instance, seen, i = isFlushing ? flushIndex + 1 : 0) {
|
|
|
1893
1893
|
}
|
|
1894
1894
|
function flushPostFlushCbs(seen) {
|
|
1895
1895
|
if (pendingPostFlushCbs.length) {
|
|
1896
|
-
const deduped = [...new Set(pendingPostFlushCbs)]
|
|
1896
|
+
const deduped = [...new Set(pendingPostFlushCbs)].sort(
|
|
1897
|
+
(a, b) => getId(a) - getId(b)
|
|
1898
|
+
);
|
|
1897
1899
|
pendingPostFlushCbs.length = 0;
|
|
1898
1900
|
if (activePostFlushCbs) {
|
|
1899
1901
|
activePostFlushCbs.push(...deduped);
|
|
@@ -1903,7 +1905,6 @@ function flushPostFlushCbs(seen) {
|
|
|
1903
1905
|
if (!!(process.env.NODE_ENV !== "production")) {
|
|
1904
1906
|
seen = seen || /* @__PURE__ */ new Map();
|
|
1905
1907
|
}
|
|
1906
|
-
activePostFlushCbs.sort((a, b) => getId(a) - getId(b));
|
|
1907
1908
|
for (postFlushIndex = 0; postFlushIndex < activePostFlushCbs.length; postFlushIndex++) {
|
|
1908
1909
|
if (!!(process.env.NODE_ENV !== "production") && checkRecursiveUpdates(seen, activePostFlushCbs[postFlushIndex])) {
|
|
1909
1910
|
continue;
|
|
@@ -3520,6 +3521,7 @@ function createSuspenseBoundary(vnode, parentSuspense, parentComponent, containe
|
|
|
3520
3521
|
if (!!(process.env.NODE_ENV !== "production")) {
|
|
3521
3522
|
assertNumber(timeout, `Suspense timeout`);
|
|
3522
3523
|
}
|
|
3524
|
+
const initialAnchor = anchor;
|
|
3523
3525
|
const suspense = {
|
|
3524
3526
|
vnode,
|
|
3525
3527
|
parent: parentSuspense,
|
|
@@ -3527,7 +3529,6 @@ function createSuspenseBoundary(vnode, parentSuspense, parentComponent, containe
|
|
|
3527
3529
|
namespace,
|
|
3528
3530
|
container,
|
|
3529
3531
|
hiddenContainer,
|
|
3530
|
-
anchor,
|
|
3531
3532
|
deps: 0,
|
|
3532
3533
|
pendingId: suspenseId++,
|
|
3533
3534
|
timeout: typeof timeout === "number" ? timeout : -1,
|
|
@@ -3570,20 +3571,21 @@ function createSuspenseBoundary(vnode, parentSuspense, parentComponent, containe
|
|
|
3570
3571
|
move(
|
|
3571
3572
|
pendingBranch,
|
|
3572
3573
|
container2,
|
|
3573
|
-
next(activeBranch),
|
|
3574
|
+
anchor === initialAnchor ? next(activeBranch) : anchor,
|
|
3574
3575
|
0
|
|
3575
3576
|
);
|
|
3576
3577
|
queuePostFlushCb(effects);
|
|
3577
3578
|
}
|
|
3578
3579
|
};
|
|
3579
3580
|
}
|
|
3580
|
-
let { anchor: anchor2 } = suspense;
|
|
3581
3581
|
if (activeBranch) {
|
|
3582
|
-
|
|
3582
|
+
if (parentNode(activeBranch.el) !== suspense.hiddenContainer) {
|
|
3583
|
+
anchor = next(activeBranch);
|
|
3584
|
+
}
|
|
3583
3585
|
unmount(activeBranch, parentComponent2, suspense, true);
|
|
3584
3586
|
}
|
|
3585
3587
|
if (!delayEnter) {
|
|
3586
|
-
move(pendingBranch, container2,
|
|
3588
|
+
move(pendingBranch, container2, anchor, 0);
|
|
3587
3589
|
}
|
|
3588
3590
|
}
|
|
3589
3591
|
setActiveBranch(suspense, pendingBranch);
|
|
@@ -4066,10 +4068,11 @@ function doWatch(source, cb, {
|
|
|
4066
4068
|
scheduler = () => queueJob(job);
|
|
4067
4069
|
}
|
|
4068
4070
|
const effect = new ReactiveEffect(getter, NOOP, scheduler);
|
|
4071
|
+
const scope = getCurrentScope();
|
|
4069
4072
|
const unwatch = () => {
|
|
4070
4073
|
effect.stop();
|
|
4071
|
-
if (
|
|
4072
|
-
remove(
|
|
4074
|
+
if (scope) {
|
|
4075
|
+
remove(scope.effects, effect);
|
|
4073
4076
|
}
|
|
4074
4077
|
};
|
|
4075
4078
|
if (!!(process.env.NODE_ENV !== "production")) {
|
|
@@ -6561,7 +6564,7 @@ function createCompatVue$1(createApp, createSingletonApp) {
|
|
|
6561
6564
|
return vm;
|
|
6562
6565
|
}
|
|
6563
6566
|
}
|
|
6564
|
-
Vue.version = `2.6.14-compat:${"3.4.
|
|
6567
|
+
Vue.version = `2.6.14-compat:${"3.4.6"}`;
|
|
6565
6568
|
Vue.config = singletonApp.config;
|
|
6566
6569
|
Vue.use = (p, ...options) => {
|
|
6567
6570
|
if (p && isFunction(p.install)) {
|
|
@@ -8109,7 +8112,7 @@ Server rendered element contains more child nodes than client vdom.`
|
|
|
8109
8112
|
if (props) {
|
|
8110
8113
|
if (!!(process.env.NODE_ENV !== "production") || forcePatch || !optimized || patchFlag & (16 | 32)) {
|
|
8111
8114
|
for (const key in props) {
|
|
8112
|
-
if (!!(process.env.NODE_ENV !== "production") && propHasMismatch(el, key, props[key])) {
|
|
8115
|
+
if (!!(process.env.NODE_ENV !== "production") && propHasMismatch(el, key, props[key], vnode)) {
|
|
8113
8116
|
hasMismatch = true;
|
|
8114
8117
|
}
|
|
8115
8118
|
if (forcePatch && (key.endsWith("value") || key === "indeterminate") || isOn(key) && !isReservedProp(key) || // force hydrate v-bind with .prop modifiers
|
|
@@ -8294,7 +8297,7 @@ Server rendered element contains fewer child nodes than client vdom.`
|
|
|
8294
8297
|
};
|
|
8295
8298
|
return [hydrate, hydrateNode];
|
|
8296
8299
|
}
|
|
8297
|
-
function propHasMismatch(el, key, clientValue) {
|
|
8300
|
+
function propHasMismatch(el, key, clientValue, vnode) {
|
|
8298
8301
|
let mismatchType;
|
|
8299
8302
|
let mismatchKey;
|
|
8300
8303
|
let actual;
|
|
@@ -8306,14 +8309,23 @@ function propHasMismatch(el, key, clientValue) {
|
|
|
8306
8309
|
mismatchType = mismatchKey = `class`;
|
|
8307
8310
|
}
|
|
8308
8311
|
} else if (key === "style") {
|
|
8309
|
-
actual = el.getAttribute("style");
|
|
8310
|
-
expected =
|
|
8311
|
-
|
|
8312
|
+
actual = toStyleMap(el.getAttribute("style") || "");
|
|
8313
|
+
expected = toStyleMap(
|
|
8314
|
+
isString(clientValue) ? clientValue : stringifyStyle(normalizeStyle(clientValue))
|
|
8315
|
+
);
|
|
8316
|
+
if (vnode.dirs) {
|
|
8317
|
+
for (const { dir, value } of vnode.dirs) {
|
|
8318
|
+
if (dir.name === "show" && !value) {
|
|
8319
|
+
expected.set("display", "none");
|
|
8320
|
+
}
|
|
8321
|
+
}
|
|
8322
|
+
}
|
|
8323
|
+
if (!isMapEqual(actual, expected)) {
|
|
8312
8324
|
mismatchType = mismatchKey = "style";
|
|
8313
8325
|
}
|
|
8314
8326
|
} else if (el instanceof SVGElement && isKnownSvgAttr(key) || el instanceof HTMLElement && (isBooleanAttr(key) || isKnownHtmlAttr(key))) {
|
|
8315
|
-
actual = el.hasAttribute(key)
|
|
8316
|
-
expected = isBooleanAttr(key) ? includeBooleanAttr(clientValue) ? "" : false : clientValue == null ?
|
|
8327
|
+
actual = el.hasAttribute(key) ? el.getAttribute(key) : key in el ? el[key] : "";
|
|
8328
|
+
expected = isBooleanAttr(key) ? includeBooleanAttr(clientValue) ? "" : false : clientValue == null ? "" : String(clientValue);
|
|
8317
8329
|
if (actual !== expected) {
|
|
8318
8330
|
mismatchType = `attribute`;
|
|
8319
8331
|
mismatchKey = key;
|
|
@@ -8348,6 +8360,29 @@ function isSetEqual(a, b) {
|
|
|
8348
8360
|
}
|
|
8349
8361
|
return true;
|
|
8350
8362
|
}
|
|
8363
|
+
function toStyleMap(str) {
|
|
8364
|
+
const styleMap = /* @__PURE__ */ new Map();
|
|
8365
|
+
for (const item of str.split(";")) {
|
|
8366
|
+
let [key, value] = item.split(":");
|
|
8367
|
+
key = key == null ? void 0 : key.trim();
|
|
8368
|
+
value = value == null ? void 0 : value.trim();
|
|
8369
|
+
if (key && value) {
|
|
8370
|
+
styleMap.set(key, value);
|
|
8371
|
+
}
|
|
8372
|
+
}
|
|
8373
|
+
return styleMap;
|
|
8374
|
+
}
|
|
8375
|
+
function isMapEqual(a, b) {
|
|
8376
|
+
if (a.size !== b.size) {
|
|
8377
|
+
return false;
|
|
8378
|
+
}
|
|
8379
|
+
for (const [key, value] of a) {
|
|
8380
|
+
if (value !== b.get(key)) {
|
|
8381
|
+
return false;
|
|
8382
|
+
}
|
|
8383
|
+
}
|
|
8384
|
+
return true;
|
|
8385
|
+
}
|
|
8351
8386
|
|
|
8352
8387
|
let supported;
|
|
8353
8388
|
let perf;
|
|
@@ -8961,7 +8996,11 @@ function baseCreateRenderer(options, createHydrationFns) {
|
|
|
8961
8996
|
hostInsert(fragmentStartAnchor, container, anchor);
|
|
8962
8997
|
hostInsert(fragmentEndAnchor, container, anchor);
|
|
8963
8998
|
mountChildren(
|
|
8964
|
-
|
|
8999
|
+
// #10007
|
|
9000
|
+
// such fragment like `<></>` will be compiled into
|
|
9001
|
+
// a fragment which doesn't have a children.
|
|
9002
|
+
// In this case fallback to an empty array
|
|
9003
|
+
n2.children || [],
|
|
8965
9004
|
container,
|
|
8966
9005
|
fragmentEndAnchor,
|
|
8967
9006
|
parentComponent,
|
|
@@ -9842,6 +9881,7 @@ function baseCreateRenderer(options, createHydrationFns) {
|
|
|
9842
9881
|
}
|
|
9843
9882
|
return hostNextSibling(vnode.anchor || vnode.el);
|
|
9844
9883
|
};
|
|
9884
|
+
let isFlushing = false;
|
|
9845
9885
|
const render = (vnode, container, namespace) => {
|
|
9846
9886
|
if (vnode == null) {
|
|
9847
9887
|
if (container._vnode) {
|
|
@@ -9858,8 +9898,12 @@ function baseCreateRenderer(options, createHydrationFns) {
|
|
|
9858
9898
|
namespace
|
|
9859
9899
|
);
|
|
9860
9900
|
}
|
|
9861
|
-
|
|
9862
|
-
|
|
9901
|
+
if (!isFlushing) {
|
|
9902
|
+
isFlushing = true;
|
|
9903
|
+
flushPreFlushCbs();
|
|
9904
|
+
flushPostFlushCbs();
|
|
9905
|
+
isFlushing = false;
|
|
9906
|
+
}
|
|
9863
9907
|
container._vnode = vnode;
|
|
9864
9908
|
};
|
|
9865
9909
|
const internals = {
|
|
@@ -10765,7 +10809,14 @@ function createComponentInstance(vnode, parent, suspense) {
|
|
|
10765
10809
|
return instance;
|
|
10766
10810
|
}
|
|
10767
10811
|
let currentInstance = null;
|
|
10768
|
-
const getCurrentInstance = () =>
|
|
10812
|
+
const getCurrentInstance = () => {
|
|
10813
|
+
if (!!(process.env.NODE_ENV !== "production") && isInComputedGetter) {
|
|
10814
|
+
warn$1(
|
|
10815
|
+
`getCurrentInstance() called inside a computed getter. This is incorrect usage as computed getters are not guaranteed to be executed with an active component instance. If you are using a composable inside a computed getter, move it ouside to the setup scope.`
|
|
10816
|
+
);
|
|
10817
|
+
}
|
|
10818
|
+
return currentInstance || currentRenderingInstance;
|
|
10819
|
+
};
|
|
10769
10820
|
let internalSetCurrentInstance;
|
|
10770
10821
|
let setInSSRSetupState;
|
|
10771
10822
|
{
|
|
@@ -11122,7 +11173,25 @@ function isClassComponent(value) {
|
|
|
11122
11173
|
return isFunction(value) && "__vccOpts" in value;
|
|
11123
11174
|
}
|
|
11124
11175
|
|
|
11176
|
+
let isInComputedGetter = false;
|
|
11177
|
+
function wrapComputedGetter(getter) {
|
|
11178
|
+
return () => {
|
|
11179
|
+
isInComputedGetter = true;
|
|
11180
|
+
try {
|
|
11181
|
+
return getter();
|
|
11182
|
+
} finally {
|
|
11183
|
+
isInComputedGetter = false;
|
|
11184
|
+
}
|
|
11185
|
+
};
|
|
11186
|
+
}
|
|
11125
11187
|
const computed = (getterOrOptions, debugOptions) => {
|
|
11188
|
+
if (!!(process.env.NODE_ENV !== "production")) {
|
|
11189
|
+
if (isFunction(getterOrOptions)) {
|
|
11190
|
+
getterOrOptions = wrapComputedGetter(getterOrOptions);
|
|
11191
|
+
} else {
|
|
11192
|
+
getterOrOptions.get = wrapComputedGetter(getterOrOptions.get);
|
|
11193
|
+
}
|
|
11194
|
+
}
|
|
11126
11195
|
return computed$1(getterOrOptions, debugOptions, isInSSRComponentSetup);
|
|
11127
11196
|
};
|
|
11128
11197
|
|
|
@@ -11348,7 +11417,7 @@ function isMemoSame(cached, memo) {
|
|
|
11348
11417
|
return true;
|
|
11349
11418
|
}
|
|
11350
11419
|
|
|
11351
|
-
const version = "3.4.
|
|
11420
|
+
const version = "3.4.6";
|
|
11352
11421
|
const warn = !!(process.env.NODE_ENV !== "production") ? warn$1 : NOOP;
|
|
11353
11422
|
const ErrorTypeStrings = ErrorTypeStrings$1 ;
|
|
11354
11423
|
const devtools = !!(process.env.NODE_ENV !== "production") || __VUE_PROD_DEVTOOLS__ ? devtools$1 : void 0;
|
|
@@ -11797,6 +11866,9 @@ const vShow = {
|
|
|
11797
11866
|
setDisplay(el, value);
|
|
11798
11867
|
}
|
|
11799
11868
|
};
|
|
11869
|
+
if (!!(process.env.NODE_ENV !== "production")) {
|
|
11870
|
+
vShow.name = "show";
|
|
11871
|
+
}
|
|
11800
11872
|
function setDisplay(el, value) {
|
|
11801
11873
|
el.style.display = value ? el[vShowOldKey] : "none";
|
|
11802
11874
|
}
|
package/dist/vue.global.js
CHANGED
|
@@ -1892,7 +1892,9 @@ var Vue = (function () {
|
|
|
1892
1892
|
}
|
|
1893
1893
|
function flushPostFlushCbs(seen) {
|
|
1894
1894
|
if (pendingPostFlushCbs.length) {
|
|
1895
|
-
const deduped = [...new Set(pendingPostFlushCbs)]
|
|
1895
|
+
const deduped = [...new Set(pendingPostFlushCbs)].sort(
|
|
1896
|
+
(a, b) => getId(a) - getId(b)
|
|
1897
|
+
);
|
|
1896
1898
|
pendingPostFlushCbs.length = 0;
|
|
1897
1899
|
if (activePostFlushCbs) {
|
|
1898
1900
|
activePostFlushCbs.push(...deduped);
|
|
@@ -1902,7 +1904,6 @@ var Vue = (function () {
|
|
|
1902
1904
|
{
|
|
1903
1905
|
seen = seen || /* @__PURE__ */ new Map();
|
|
1904
1906
|
}
|
|
1905
|
-
activePostFlushCbs.sort((a, b) => getId(a) - getId(b));
|
|
1906
1907
|
for (postFlushIndex = 0; postFlushIndex < activePostFlushCbs.length; postFlushIndex++) {
|
|
1907
1908
|
if (checkRecursiveUpdates(seen, activePostFlushCbs[postFlushIndex])) {
|
|
1908
1909
|
continue;
|
|
@@ -3516,6 +3517,7 @@ If this is a native custom element, make sure to exclude it from component resol
|
|
|
3516
3517
|
{
|
|
3517
3518
|
assertNumber(timeout, `Suspense timeout`);
|
|
3518
3519
|
}
|
|
3520
|
+
const initialAnchor = anchor;
|
|
3519
3521
|
const suspense = {
|
|
3520
3522
|
vnode,
|
|
3521
3523
|
parent: parentSuspense,
|
|
@@ -3523,7 +3525,6 @@ If this is a native custom element, make sure to exclude it from component resol
|
|
|
3523
3525
|
namespace,
|
|
3524
3526
|
container,
|
|
3525
3527
|
hiddenContainer,
|
|
3526
|
-
anchor,
|
|
3527
3528
|
deps: 0,
|
|
3528
3529
|
pendingId: suspenseId++,
|
|
3529
3530
|
timeout: typeof timeout === "number" ? timeout : -1,
|
|
@@ -3566,20 +3567,21 @@ If this is a native custom element, make sure to exclude it from component resol
|
|
|
3566
3567
|
move(
|
|
3567
3568
|
pendingBranch,
|
|
3568
3569
|
container2,
|
|
3569
|
-
next(activeBranch),
|
|
3570
|
+
anchor === initialAnchor ? next(activeBranch) : anchor,
|
|
3570
3571
|
0
|
|
3571
3572
|
);
|
|
3572
3573
|
queuePostFlushCb(effects);
|
|
3573
3574
|
}
|
|
3574
3575
|
};
|
|
3575
3576
|
}
|
|
3576
|
-
let { anchor: anchor2 } = suspense;
|
|
3577
3577
|
if (activeBranch) {
|
|
3578
|
-
|
|
3578
|
+
if (parentNode(activeBranch.el) !== suspense.hiddenContainer) {
|
|
3579
|
+
anchor = next(activeBranch);
|
|
3580
|
+
}
|
|
3579
3581
|
unmount(activeBranch, parentComponent2, suspense, true);
|
|
3580
3582
|
}
|
|
3581
3583
|
if (!delayEnter) {
|
|
3582
|
-
move(pendingBranch, container2,
|
|
3584
|
+
move(pendingBranch, container2, anchor, 0);
|
|
3583
3585
|
}
|
|
3584
3586
|
}
|
|
3585
3587
|
setActiveBranch(suspense, pendingBranch);
|
|
@@ -4037,10 +4039,11 @@ If this is a native custom element, make sure to exclude it from component resol
|
|
|
4037
4039
|
scheduler = () => queueJob(job);
|
|
4038
4040
|
}
|
|
4039
4041
|
const effect = new ReactiveEffect(getter, NOOP, scheduler);
|
|
4042
|
+
const scope = getCurrentScope();
|
|
4040
4043
|
const unwatch = () => {
|
|
4041
4044
|
effect.stop();
|
|
4042
|
-
if (
|
|
4043
|
-
remove(
|
|
4045
|
+
if (scope) {
|
|
4046
|
+
remove(scope.effects, effect);
|
|
4044
4047
|
}
|
|
4045
4048
|
};
|
|
4046
4049
|
{
|
|
@@ -6520,7 +6523,7 @@ If this is a native custom element, make sure to exclude it from component resol
|
|
|
6520
6523
|
return vm;
|
|
6521
6524
|
}
|
|
6522
6525
|
}
|
|
6523
|
-
Vue.version = `2.6.14-compat:${"3.4.
|
|
6526
|
+
Vue.version = `2.6.14-compat:${"3.4.6"}`;
|
|
6524
6527
|
Vue.config = singletonApp.config;
|
|
6525
6528
|
Vue.use = (p, ...options) => {
|
|
6526
6529
|
if (p && isFunction(p.install)) {
|
|
@@ -8065,7 +8068,7 @@ Server rendered element contains more child nodes than client vdom.`
|
|
|
8065
8068
|
if (props) {
|
|
8066
8069
|
{
|
|
8067
8070
|
for (const key in props) {
|
|
8068
|
-
if (propHasMismatch(el, key, props[key])) {
|
|
8071
|
+
if (propHasMismatch(el, key, props[key], vnode)) {
|
|
8069
8072
|
hasMismatch = true;
|
|
8070
8073
|
}
|
|
8071
8074
|
if (forcePatch && (key.endsWith("value") || key === "indeterminate") || isOn(key) && !isReservedProp(key) || // force hydrate v-bind with .prop modifiers
|
|
@@ -8240,7 +8243,7 @@ Server rendered element contains fewer child nodes than client vdom.`
|
|
|
8240
8243
|
};
|
|
8241
8244
|
return [hydrate, hydrateNode];
|
|
8242
8245
|
}
|
|
8243
|
-
function propHasMismatch(el, key, clientValue) {
|
|
8246
|
+
function propHasMismatch(el, key, clientValue, vnode) {
|
|
8244
8247
|
let mismatchType;
|
|
8245
8248
|
let mismatchKey;
|
|
8246
8249
|
let actual;
|
|
@@ -8252,14 +8255,23 @@ Server rendered element contains fewer child nodes than client vdom.`
|
|
|
8252
8255
|
mismatchType = mismatchKey = `class`;
|
|
8253
8256
|
}
|
|
8254
8257
|
} else if (key === "style") {
|
|
8255
|
-
actual = el.getAttribute("style");
|
|
8256
|
-
expected =
|
|
8257
|
-
|
|
8258
|
+
actual = toStyleMap(el.getAttribute("style") || "");
|
|
8259
|
+
expected = toStyleMap(
|
|
8260
|
+
isString(clientValue) ? clientValue : stringifyStyle(normalizeStyle(clientValue))
|
|
8261
|
+
);
|
|
8262
|
+
if (vnode.dirs) {
|
|
8263
|
+
for (const { dir, value } of vnode.dirs) {
|
|
8264
|
+
if (dir.name === "show" && !value) {
|
|
8265
|
+
expected.set("display", "none");
|
|
8266
|
+
}
|
|
8267
|
+
}
|
|
8268
|
+
}
|
|
8269
|
+
if (!isMapEqual(actual, expected)) {
|
|
8258
8270
|
mismatchType = mismatchKey = "style";
|
|
8259
8271
|
}
|
|
8260
8272
|
} else if (el instanceof SVGElement && isKnownSvgAttr(key) || el instanceof HTMLElement && (isBooleanAttr(key) || isKnownHtmlAttr(key))) {
|
|
8261
|
-
actual = el.hasAttribute(key)
|
|
8262
|
-
expected = isBooleanAttr(key) ? includeBooleanAttr(clientValue) ? "" : false : clientValue == null ?
|
|
8273
|
+
actual = el.hasAttribute(key) ? el.getAttribute(key) : key in el ? el[key] : "";
|
|
8274
|
+
expected = isBooleanAttr(key) ? includeBooleanAttr(clientValue) ? "" : false : clientValue == null ? "" : String(clientValue);
|
|
8263
8275
|
if (actual !== expected) {
|
|
8264
8276
|
mismatchType = `attribute`;
|
|
8265
8277
|
mismatchKey = key;
|
|
@@ -8294,6 +8306,29 @@ Server rendered element contains fewer child nodes than client vdom.`
|
|
|
8294
8306
|
}
|
|
8295
8307
|
return true;
|
|
8296
8308
|
}
|
|
8309
|
+
function toStyleMap(str) {
|
|
8310
|
+
const styleMap = /* @__PURE__ */ new Map();
|
|
8311
|
+
for (const item of str.split(";")) {
|
|
8312
|
+
let [key, value] = item.split(":");
|
|
8313
|
+
key = key == null ? void 0 : key.trim();
|
|
8314
|
+
value = value == null ? void 0 : value.trim();
|
|
8315
|
+
if (key && value) {
|
|
8316
|
+
styleMap.set(key, value);
|
|
8317
|
+
}
|
|
8318
|
+
}
|
|
8319
|
+
return styleMap;
|
|
8320
|
+
}
|
|
8321
|
+
function isMapEqual(a, b) {
|
|
8322
|
+
if (a.size !== b.size) {
|
|
8323
|
+
return false;
|
|
8324
|
+
}
|
|
8325
|
+
for (const [key, value] of a) {
|
|
8326
|
+
if (value !== b.get(key)) {
|
|
8327
|
+
return false;
|
|
8328
|
+
}
|
|
8329
|
+
}
|
|
8330
|
+
return true;
|
|
8331
|
+
}
|
|
8297
8332
|
|
|
8298
8333
|
let supported;
|
|
8299
8334
|
let perf;
|
|
@@ -8882,7 +8917,11 @@ Server rendered element contains fewer child nodes than client vdom.`
|
|
|
8882
8917
|
hostInsert(fragmentStartAnchor, container, anchor);
|
|
8883
8918
|
hostInsert(fragmentEndAnchor, container, anchor);
|
|
8884
8919
|
mountChildren(
|
|
8885
|
-
|
|
8920
|
+
// #10007
|
|
8921
|
+
// such fragment like `<></>` will be compiled into
|
|
8922
|
+
// a fragment which doesn't have a children.
|
|
8923
|
+
// In this case fallback to an empty array
|
|
8924
|
+
n2.children || [],
|
|
8886
8925
|
container,
|
|
8887
8926
|
fragmentEndAnchor,
|
|
8888
8927
|
parentComponent,
|
|
@@ -9750,6 +9789,7 @@ Server rendered element contains fewer child nodes than client vdom.`
|
|
|
9750
9789
|
}
|
|
9751
9790
|
return hostNextSibling(vnode.anchor || vnode.el);
|
|
9752
9791
|
};
|
|
9792
|
+
let isFlushing = false;
|
|
9753
9793
|
const render = (vnode, container, namespace) => {
|
|
9754
9794
|
if (vnode == null) {
|
|
9755
9795
|
if (container._vnode) {
|
|
@@ -9766,8 +9806,12 @@ Server rendered element contains fewer child nodes than client vdom.`
|
|
|
9766
9806
|
namespace
|
|
9767
9807
|
);
|
|
9768
9808
|
}
|
|
9769
|
-
|
|
9770
|
-
|
|
9809
|
+
if (!isFlushing) {
|
|
9810
|
+
isFlushing = true;
|
|
9811
|
+
flushPreFlushCbs();
|
|
9812
|
+
flushPostFlushCbs();
|
|
9813
|
+
isFlushing = false;
|
|
9814
|
+
}
|
|
9771
9815
|
container._vnode = vnode;
|
|
9772
9816
|
};
|
|
9773
9817
|
const internals = {
|
|
@@ -10671,7 +10715,14 @@ Component that was made reactive: `,
|
|
|
10671
10715
|
return instance;
|
|
10672
10716
|
}
|
|
10673
10717
|
let currentInstance = null;
|
|
10674
|
-
const getCurrentInstance = () =>
|
|
10718
|
+
const getCurrentInstance = () => {
|
|
10719
|
+
if (isInComputedGetter) {
|
|
10720
|
+
warn$1(
|
|
10721
|
+
`getCurrentInstance() called inside a computed getter. This is incorrect usage as computed getters are not guaranteed to be executed with an active component instance. If you are using a composable inside a computed getter, move it ouside to the setup scope.`
|
|
10722
|
+
);
|
|
10723
|
+
}
|
|
10724
|
+
return currentInstance || currentRenderingInstance;
|
|
10725
|
+
};
|
|
10675
10726
|
let internalSetCurrentInstance;
|
|
10676
10727
|
let setInSSRSetupState;
|
|
10677
10728
|
{
|
|
@@ -10997,7 +11048,25 @@ Component that was made reactive: `,
|
|
|
10997
11048
|
return isFunction(value) && "__vccOpts" in value;
|
|
10998
11049
|
}
|
|
10999
11050
|
|
|
11051
|
+
let isInComputedGetter = false;
|
|
11052
|
+
function wrapComputedGetter(getter) {
|
|
11053
|
+
return () => {
|
|
11054
|
+
isInComputedGetter = true;
|
|
11055
|
+
try {
|
|
11056
|
+
return getter();
|
|
11057
|
+
} finally {
|
|
11058
|
+
isInComputedGetter = false;
|
|
11059
|
+
}
|
|
11060
|
+
};
|
|
11061
|
+
}
|
|
11000
11062
|
const computed = (getterOrOptions, debugOptions) => {
|
|
11063
|
+
{
|
|
11064
|
+
if (isFunction(getterOrOptions)) {
|
|
11065
|
+
getterOrOptions = wrapComputedGetter(getterOrOptions);
|
|
11066
|
+
} else {
|
|
11067
|
+
getterOrOptions.get = wrapComputedGetter(getterOrOptions.get);
|
|
11068
|
+
}
|
|
11069
|
+
}
|
|
11001
11070
|
return computed$1(getterOrOptions, debugOptions, isInSSRComponentSetup);
|
|
11002
11071
|
};
|
|
11003
11072
|
|
|
@@ -11223,7 +11292,7 @@ Component that was made reactive: `,
|
|
|
11223
11292
|
return true;
|
|
11224
11293
|
}
|
|
11225
11294
|
|
|
11226
|
-
const version = "3.4.
|
|
11295
|
+
const version = "3.4.6";
|
|
11227
11296
|
const warn = warn$1 ;
|
|
11228
11297
|
const ErrorTypeStrings = ErrorTypeStrings$1 ;
|
|
11229
11298
|
const devtools = devtools$1 ;
|
|
@@ -11664,6 +11733,9 @@ Component that was made reactive: `,
|
|
|
11664
11733
|
setDisplay(el, value);
|
|
11665
11734
|
}
|
|
11666
11735
|
};
|
|
11736
|
+
{
|
|
11737
|
+
vShow.name = "show";
|
|
11738
|
+
}
|
|
11667
11739
|
function setDisplay(el, value) {
|
|
11668
11740
|
el.style.display = value ? el[vShowOldKey] : "none";
|
|
11669
11741
|
}
|