@vue/runtime-core 3.6.0-beta.11 → 3.6.0-beta.13

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.
@@ -1,5 +1,5 @@
1
1
  /**
2
- * @vue/runtime-core v3.6.0-beta.11
2
+ * @vue/runtime-core v3.6.0-beta.13
3
3
  * (c) 2018-present Yuxi (Evan) You and Vue contributors
4
4
  * @license MIT
5
5
  **/
@@ -970,17 +970,16 @@ const TeleportImpl = {
970
970
  },
971
971
  remove(vnode, parentComponent, parentSuspense, { um: unmount, o: { remove: hostRemove } }, doRemove) {
972
972
  const { shapeFlag, children, anchor, targetStart, targetAnchor, props } = vnode;
973
- let shouldRemove = doRemove || !isTeleportDisabled(props);
973
+ const shouldRemove = doRemove || !isTeleportDisabled(props);
974
974
  const pendingMount = pendingMounts.get(vnode);
975
975
  if (pendingMount) {
976
976
  pendingMount.flags |= 4;
977
977
  pendingMounts.delete(vnode);
978
- shouldRemove = false;
979
978
  }
980
979
  if (targetStart) hostRemove(targetStart);
981
980
  if (targetAnchor) hostRemove(targetAnchor);
982
981
  doRemove && hostRemove(anchor);
983
- if (shapeFlag & 16) for (let i = 0; i < children.length; i++) {
982
+ if (!pendingMount && shapeFlag & 16) for (let i = 0; i < children.length; i++) {
984
983
  const child = children[i];
985
984
  unmount(child, parentComponent, parentSuspense, shouldRemove, !!child.dynamicChildren);
986
985
  }
@@ -1632,15 +1631,11 @@ function createHydrationFunctions(rendererInternals) {
1632
1631
  }
1633
1632
  if (shapeFlag & 16 && !(props && (props.innerHTML || props.textContent))) {
1634
1633
  let next = hydrateChildren(el.firstChild, vnode, el, parentComponent, parentSuspense, slotScopeIds, optimized);
1635
- let hasWarned = false;
1634
+ if (next && !isMismatchAllowed(el, 1)) {
1635
+ warn$1(`Hydration children mismatch on`, el, `\nServer rendered element contains more child nodes than client vdom.`);
1636
+ logMismatchError();
1637
+ }
1636
1638
  while (next) {
1637
- if (!isMismatchAllowed(el, 1)) {
1638
- if (!hasWarned) {
1639
- warn$1(`Hydration children mismatch on`, el, `\nServer rendered element contains more child nodes than client vdom.`);
1640
- hasWarned = true;
1641
- }
1642
- logMismatchError();
1643
- }
1644
1639
  const cur = next;
1645
1640
  next = next.nextSibling;
1646
1641
  remove(cur);
@@ -1679,7 +1674,7 @@ function createHydrationFunctions(rendererInternals) {
1679
1674
  optimized = optimized || !!parentVNode.dynamicChildren;
1680
1675
  const children = parentVNode.children;
1681
1676
  const l = children.length;
1682
- let hasWarned = false;
1677
+ let hasCheckedMismatch = false;
1683
1678
  for (let i = 0; i < l; i++) {
1684
1679
  const vnode = optimized ? children[i] : children[i] = normalizeVNode(children[i]);
1685
1680
  const isText = vnode.type === Text;
@@ -1693,12 +1688,12 @@ function createHydrationFunctions(rendererInternals) {
1693
1688
  node = hydrateNode(node, vnode, parentComponent, parentSuspense, slotScopeIds, optimized);
1694
1689
  } else if (isText && !vnode.children) insert(vnode.el = createText(""), container);
1695
1690
  else {
1696
- if (!isMismatchAllowed(container, 1)) {
1697
- if (!hasWarned) {
1691
+ if (!hasCheckedMismatch) {
1692
+ hasCheckedMismatch = true;
1693
+ if (!isMismatchAllowed(container, 1)) {
1698
1694
  warn$1(`Hydration children mismatch on`, container, `\nServer rendered element contains fewer child nodes than client vdom.`);
1699
- hasWarned = true;
1695
+ logMismatchError();
1700
1696
  }
1701
- logMismatchError();
1702
1697
  }
1703
1698
  patch(null, vnode, container, null, parentComponent, parentSuspense, getContainerType(container), slotScopeIds);
1704
1699
  }
@@ -4716,8 +4711,10 @@ function baseCreateRenderer(options, createHydrationFns) {
4716
4711
  else hostInsert(el, container, anchor);
4717
4712
  };
4718
4713
  const performLeave = () => {
4714
+ const wasLeaving = el._isLeaving || !!el[leaveCbKey];
4719
4715
  if (el._isLeaving) el[leaveCbKey](true);
4720
- leave(el, () => {
4716
+ if (transition.persisted && !wasLeaving) remove();
4717
+ else leave(el, () => {
4721
4718
  remove();
4722
4719
  afterLeave && afterLeave();
4723
4720
  });
@@ -4938,6 +4935,10 @@ function invalidateMount(hooks) {
4938
4935
  if (hooks) for (let i = 0; i < hooks.length; i++) hooks[i].flags |= 4;
4939
4936
  }
4940
4937
  function performTransitionEnter(el, transition, insert, parentSuspense, force = false) {
4938
+ if (force && transition.persisted && !el[leaveCbKey]) {
4939
+ insert();
4940
+ return;
4941
+ }
4941
4942
  if (force || needTransition(parentSuspense, transition)) {
4942
4943
  transition.beforeEnter(el);
4943
4944
  insert();
@@ -6194,7 +6195,7 @@ function isMemoSame(cached, memo) {
6194
6195
  }
6195
6196
  //#endregion
6196
6197
  //#region packages/runtime-core/src/index.ts
6197
- const version = "3.6.0-beta.11";
6198
+ const version = "3.6.0-beta.13";
6198
6199
  const warn = warn$1;
6199
6200
  /**
6200
6201
  * Runtime error messages. Only exposed in dev or esm builds.
@@ -1,5 +1,5 @@
1
1
  /**
2
- * @vue/runtime-core v3.6.0-beta.11
2
+ * @vue/runtime-core v3.6.0-beta.13
3
3
  * (c) 2018-present Yuxi (Evan) You and Vue contributors
4
4
  * @license MIT
5
5
  **/
@@ -623,17 +623,16 @@ const TeleportImpl = {
623
623
  },
624
624
  remove(vnode, parentComponent, parentSuspense, { um: unmount, o: { remove: hostRemove } }, doRemove) {
625
625
  const { shapeFlag, children, anchor, targetStart, targetAnchor, props } = vnode;
626
- let shouldRemove = doRemove || !isTeleportDisabled(props);
626
+ const shouldRemove = doRemove || !isTeleportDisabled(props);
627
627
  const pendingMount = pendingMounts.get(vnode);
628
628
  if (pendingMount) {
629
629
  pendingMount.flags |= 4;
630
630
  pendingMounts.delete(vnode);
631
- shouldRemove = false;
632
631
  }
633
632
  if (targetStart) hostRemove(targetStart);
634
633
  if (targetAnchor) hostRemove(targetAnchor);
635
634
  doRemove && hostRemove(anchor);
636
- if (shapeFlag & 16) for (let i = 0; i < children.length; i++) {
635
+ if (!pendingMount && shapeFlag & 16) for (let i = 0; i < children.length; i++) {
637
636
  const child = children[i];
638
637
  unmount(child, parentComponent, parentSuspense, shouldRemove, !!child.dynamicChildren);
639
638
  }
@@ -1256,8 +1255,8 @@ function createHydrationFunctions(rendererInternals) {
1256
1255
  }
1257
1256
  if (shapeFlag & 16 && !(props && (props.innerHTML || props.textContent))) {
1258
1257
  let next = hydrateChildren(el.firstChild, vnode, el, parentComponent, parentSuspense, slotScopeIds, optimized);
1258
+ if (next && !isMismatchAllowed(el, 1)) logMismatchError();
1259
1259
  while (next) {
1260
- if (!isMismatchAllowed(el, 1)) logMismatchError();
1261
1260
  const cur = next;
1262
1261
  next = next.nextSibling;
1263
1262
  remove(cur);
@@ -1293,6 +1292,7 @@ function createHydrationFunctions(rendererInternals) {
1293
1292
  optimized = optimized || !!parentVNode.dynamicChildren;
1294
1293
  const children = parentVNode.children;
1295
1294
  const l = children.length;
1295
+ let hasCheckedMismatch = false;
1296
1296
  for (let i = 0; i < l; i++) {
1297
1297
  const vnode = optimized ? children[i] : children[i] = normalizeVNode(children[i]);
1298
1298
  const isText = vnode.type === Text;
@@ -1306,7 +1306,10 @@ function createHydrationFunctions(rendererInternals) {
1306
1306
  node = hydrateNode(node, vnode, parentComponent, parentSuspense, slotScopeIds, optimized);
1307
1307
  } else if (isText && !vnode.children) insert(vnode.el = createText(""), container);
1308
1308
  else {
1309
- if (!isMismatchAllowed(container, 1)) logMismatchError();
1309
+ if (!hasCheckedMismatch) {
1310
+ hasCheckedMismatch = true;
1311
+ if (!isMismatchAllowed(container, 1)) logMismatchError();
1312
+ }
1310
1313
  patch(null, vnode, container, null, parentComponent, parentSuspense, getContainerType(container), slotScopeIds);
1311
1314
  }
1312
1315
  }
@@ -3709,8 +3712,10 @@ function baseCreateRenderer(options, createHydrationFns) {
3709
3712
  else hostInsert(el, container, anchor);
3710
3713
  };
3711
3714
  const performLeave = () => {
3715
+ const wasLeaving = el._isLeaving || !!el[leaveCbKey];
3712
3716
  if (el._isLeaving) el[leaveCbKey](true);
3713
- leave(el, () => {
3717
+ if (transition.persisted && !wasLeaving) remove();
3718
+ else leave(el, () => {
3714
3719
  remove();
3715
3720
  afterLeave && afterLeave();
3716
3721
  });
@@ -3919,6 +3924,10 @@ function invalidateMount(hooks) {
3919
3924
  if (hooks) for (let i = 0; i < hooks.length; i++) hooks[i].flags |= 4;
3920
3925
  }
3921
3926
  function performTransitionEnter(el, transition, insert, parentSuspense, force = false) {
3927
+ if (force && transition.persisted && !el[leaveCbKey]) {
3928
+ insert();
3929
+ return;
3930
+ }
3922
3931
  if (force || needTransition(parentSuspense, transition)) {
3923
3932
  transition.beforeEnter(el);
3924
3933
  insert();
@@ -4882,7 +4891,7 @@ function isMemoSame(cached, memo) {
4882
4891
  }
4883
4892
  //#endregion
4884
4893
  //#region packages/runtime-core/src/index.ts
4885
- const version = "3.6.0-beta.11";
4894
+ const version = "3.6.0-beta.13";
4886
4895
  const warn = _vue_shared.NOOP;
4887
4896
  /**
4888
4897
  * Runtime error messages. Only exposed in dev or esm builds.
@@ -1,5 +1,5 @@
1
1
  /**
2
- * @vue/runtime-core v3.6.0-beta.11
2
+ * @vue/runtime-core v3.6.0-beta.13
3
3
  * (c) 2018-present Yuxi (Evan) You and Vue contributors
4
4
  * @license MIT
5
5
  **/
@@ -978,17 +978,16 @@ const TeleportImpl = {
978
978
  },
979
979
  remove(vnode, parentComponent, parentSuspense, { um: unmount, o: { remove: hostRemove } }, doRemove) {
980
980
  const { shapeFlag, children, anchor, targetStart, targetAnchor, props } = vnode;
981
- let shouldRemove = doRemove || !isTeleportDisabled(props);
981
+ const shouldRemove = doRemove || !isTeleportDisabled(props);
982
982
  const pendingMount = pendingMounts.get(vnode);
983
983
  if (pendingMount) {
984
984
  pendingMount.flags |= 4;
985
985
  pendingMounts.delete(vnode);
986
- shouldRemove = false;
987
986
  }
988
987
  if (targetStart) hostRemove(targetStart);
989
988
  if (targetAnchor) hostRemove(targetAnchor);
990
989
  doRemove && hostRemove(anchor);
991
- if (shapeFlag & 16) for (let i = 0; i < children.length; i++) {
990
+ if (!pendingMount && shapeFlag & 16) for (let i = 0; i < children.length; i++) {
992
991
  const child = children[i];
993
992
  unmount(child, parentComponent, parentSuspense, shouldRemove, !!child.dynamicChildren);
994
993
  }
@@ -1654,15 +1653,11 @@ function createHydrationFunctions(rendererInternals) {
1654
1653
  }
1655
1654
  if (shapeFlag & 16 && !(props && (props.innerHTML || props.textContent))) {
1656
1655
  let next = hydrateChildren(el.firstChild, vnode, el, parentComponent, parentSuspense, slotScopeIds, optimized);
1657
- let hasWarned = false;
1656
+ if (next && !isMismatchAllowed(el, 1)) {
1657
+ (process.env.NODE_ENV !== "production" || __VUE_PROD_HYDRATION_MISMATCH_DETAILS__) && warn$1(`Hydration children mismatch on`, el, `\nServer rendered element contains more child nodes than client vdom.`);
1658
+ logMismatchError();
1659
+ }
1658
1660
  while (next) {
1659
- if (!isMismatchAllowed(el, 1)) {
1660
- if ((!!(process.env.NODE_ENV !== "production") || __VUE_PROD_HYDRATION_MISMATCH_DETAILS__) && !hasWarned) {
1661
- warn$1(`Hydration children mismatch on`, el, `\nServer rendered element contains more child nodes than client vdom.`);
1662
- hasWarned = true;
1663
- }
1664
- logMismatchError();
1665
- }
1666
1661
  const cur = next;
1667
1662
  next = next.nextSibling;
1668
1663
  remove(cur);
@@ -1704,7 +1699,7 @@ function createHydrationFunctions(rendererInternals) {
1704
1699
  optimized = optimized || !!parentVNode.dynamicChildren;
1705
1700
  const children = parentVNode.children;
1706
1701
  const l = children.length;
1707
- let hasWarned = false;
1702
+ let hasCheckedMismatch = false;
1708
1703
  for (let i = 0; i < l; i++) {
1709
1704
  const vnode = optimized ? children[i] : children[i] = normalizeVNode(children[i]);
1710
1705
  const isText = vnode.type === Text;
@@ -1718,12 +1713,12 @@ function createHydrationFunctions(rendererInternals) {
1718
1713
  node = hydrateNode(node, vnode, parentComponent, parentSuspense, slotScopeIds, optimized);
1719
1714
  } else if (isText && !vnode.children) insert(vnode.el = createText(""), container);
1720
1715
  else {
1721
- if (!isMismatchAllowed(container, 1)) {
1722
- if ((!!(process.env.NODE_ENV !== "production") || __VUE_PROD_HYDRATION_MISMATCH_DETAILS__) && !hasWarned) {
1723
- warn$1(`Hydration children mismatch on`, container, `\nServer rendered element contains fewer child nodes than client vdom.`);
1724
- hasWarned = true;
1716
+ if (!hasCheckedMismatch) {
1717
+ hasCheckedMismatch = true;
1718
+ if (!isMismatchAllowed(container, 1)) {
1719
+ (process.env.NODE_ENV !== "production" || __VUE_PROD_HYDRATION_MISMATCH_DETAILS__) && warn$1(`Hydration children mismatch on`, container, `\nServer rendered element contains fewer child nodes than client vdom.`);
1720
+ logMismatchError();
1725
1721
  }
1726
- logMismatchError();
1727
1722
  }
1728
1723
  patch(null, vnode, container, null, parentComponent, parentSuspense, getContainerType(container), slotScopeIds);
1729
1724
  }
@@ -4803,8 +4798,10 @@ function baseCreateRenderer(options, createHydrationFns) {
4803
4798
  else hostInsert(el, container, anchor);
4804
4799
  };
4805
4800
  const performLeave = () => {
4801
+ const wasLeaving = el._isLeaving || !!el[leaveCbKey];
4806
4802
  if (el._isLeaving) el[leaveCbKey](true);
4807
- leave(el, () => {
4803
+ if (transition.persisted && !wasLeaving) remove();
4804
+ else leave(el, () => {
4808
4805
  remove();
4809
4806
  afterLeave && afterLeave();
4810
4807
  });
@@ -5025,6 +5022,10 @@ function invalidateMount(hooks) {
5025
5022
  if (hooks) for (let i = 0; i < hooks.length; i++) hooks[i].flags |= 4;
5026
5023
  }
5027
5024
  function performTransitionEnter(el, transition, insert, parentSuspense, force = false) {
5025
+ if (force && transition.persisted && !el[leaveCbKey]) {
5026
+ insert();
5027
+ return;
5028
+ }
5028
5029
  if (force || needTransition(parentSuspense, transition)) {
5029
5030
  transition.beforeEnter(el);
5030
5031
  insert();
@@ -6302,7 +6303,7 @@ function isMemoSame(cached, memo) {
6302
6303
  }
6303
6304
  //#endregion
6304
6305
  //#region packages/runtime-core/src/index.ts
6305
- const version = "3.6.0-beta.11";
6306
+ const version = "3.6.0-beta.13";
6306
6307
  const warn = !!(process.env.NODE_ENV !== "production") ? warn$1 : NOOP;
6307
6308
  /**
6308
6309
  * Runtime error messages. Only exposed in dev or esm builds.
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@vue/runtime-core",
3
- "version": "3.6.0-beta.11",
3
+ "version": "3.6.0-beta.13",
4
4
  "description": "@vue/runtime-core",
5
5
  "main": "index.js",
6
6
  "module": "dist/runtime-core.esm-bundler.js",
@@ -46,7 +46,7 @@
46
46
  },
47
47
  "homepage": "https://github.com/vuejs/core/tree/main/packages/runtime-core#readme",
48
48
  "dependencies": {
49
- "@vue/shared": "3.6.0-beta.11",
50
- "@vue/reactivity": "3.6.0-beta.11"
49
+ "@vue/shared": "3.6.0-beta.13",
50
+ "@vue/reactivity": "3.6.0-beta.13"
51
51
  }
52
52
  }