vue 2.7.12 → 2.7.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.js v2.7.12
2
+ * Vue.js v2.7.13
3
3
  * (c) 2014-2022 Evan You
4
4
  * Released under the MIT License.
5
5
  */
@@ -3434,6 +3434,7 @@ function doWatch(source, cb, { immediate, deep, flush = 'pre', onTrack, onTrigge
3434
3434
  let activeEffectScope;
3435
3435
  class EffectScope {
3436
3436
  constructor(detached = false) {
3437
+ this.detached = detached;
3437
3438
  /**
3438
3439
  * @internal
3439
3440
  */
@@ -3446,8 +3447,8 @@ class EffectScope {
3446
3447
  * @internal
3447
3448
  */
3448
3449
  this.cleanups = [];
3450
+ this.parent = activeEffectScope;
3449
3451
  if (!detached && activeEffectScope) {
3450
- this.parent = activeEffectScope;
3451
3452
  this.index =
3452
3453
  (activeEffectScope.scopes || (activeEffectScope.scopes = [])).push(this) - 1;
3453
3454
  }
@@ -3496,7 +3497,7 @@ class EffectScope {
3496
3497
  }
3497
3498
  }
3498
3499
  // nested scope, dereference from parent to avoid memory leaks
3499
- if (this.parent && !fromParent) {
3500
+ if (!this.detached && this.parent && !fromParent) {
3500
3501
  // optimized O(1) removal
3501
3502
  const last = this.parent.scopes.pop();
3502
3503
  if (last && last !== this) {
@@ -3504,6 +3505,7 @@ class EffectScope {
3504
3505
  last.index = this.index;
3505
3506
  }
3506
3507
  }
3508
+ this.parent = undefined;
3507
3509
  this.active = false;
3508
3510
  }
3509
3511
  }
@@ -3931,7 +3933,7 @@ function onErrorCaptured(hook, target = currentInstance) {
3931
3933
  /**
3932
3934
  * Note: also update dist/vue.runtime.mjs when adding new exports to this file.
3933
3935
  */
3934
- const version = '2.7.12';
3936
+ const version = '2.7.13';
3935
3937
  /**
3936
3938
  * @internal type is manually declared in <root>/types/v3-define-component.d.ts
3937
3939
  */
@@ -4014,6 +4016,7 @@ function _traverse(val, seen) {
4014
4016
  let i, keys;
4015
4017
  const isA = isArray(val);
4016
4018
  if ((!isA && !isObject(val)) ||
4019
+ val.__v_skip /* ReactiveFlags.SKIP */ ||
4017
4020
  Object.isFrozen(val) ||
4018
4021
  val instanceof VNode) {
4019
4022
  return;