@vue/runtime-dom 3.5.28 → 3.5.29

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -1,5 +1,5 @@
1
1
  /**
2
- * @vue/runtime-dom v3.5.28
2
+ * @vue/runtime-dom v3.5.29
3
3
  * (c) 2018-present Yuxi (Evan) You and Vue contributors
4
4
  * @license MIT
5
5
  **/
@@ -3736,6 +3736,7 @@ var VueRuntimeDOM = (function (exports) {
3736
3736
  callHook(hook, [el]);
3737
3737
  },
3738
3738
  enter(el) {
3739
+ if (leavingVNodesCache[key] === vnode) return;
3739
3740
  let hook = onEnter;
3740
3741
  let afterHook = onAfterEnter;
3741
3742
  let cancelHook = onEnterCancelled;
@@ -5829,13 +5830,24 @@ If this is a native custom element, make sure to exclude it from component resol
5829
5830
  }
5830
5831
  let awaitable = getAwaitable();
5831
5832
  unsetCurrentInstance();
5833
+ const cleanup = () => {
5834
+ if (getCurrentInstance() !== ctx) ctx.scope.off();
5835
+ unsetCurrentInstance();
5836
+ };
5832
5837
  if (isPromise(awaitable)) {
5833
5838
  awaitable = awaitable.catch((e) => {
5834
5839
  setCurrentInstance(ctx);
5840
+ Promise.resolve().then(() => Promise.resolve().then(cleanup));
5835
5841
  throw e;
5836
5842
  });
5837
5843
  }
5838
- return [awaitable, () => setCurrentInstance(ctx)];
5844
+ return [
5845
+ awaitable,
5846
+ () => {
5847
+ setCurrentInstance(ctx);
5848
+ Promise.resolve().then(cleanup);
5849
+ }
5850
+ ];
5839
5851
  }
5840
5852
 
5841
5853
  function createDuplicateChecker() {
@@ -10672,7 +10684,7 @@ Component that was made reactive: `,
10672
10684
  return true;
10673
10685
  }
10674
10686
 
10675
- const version = "3.5.28";
10687
+ const version = "3.5.29";
10676
10688
  const warn = warn$1 ;
10677
10689
  const ErrorTypeStrings = ErrorTypeStrings$1 ;
10678
10690
  const devtools = devtools$1 ;