@vue/runtime-dom 3.6.0-beta.11 → 3.6.0-beta.12

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.6.0-beta.11
2
+ * @vue/runtime-dom v3.6.0-beta.12
3
3
  * (c) 2018-present Yuxi (Evan) You and Vue contributors
4
4
  * @license MIT
5
5
  **/
@@ -1,5 +1,5 @@
1
1
  /**
2
- * @vue/runtime-dom v3.6.0-beta.11
2
+ * @vue/runtime-dom v3.6.0-beta.12
3
3
  * (c) 2018-present Yuxi (Evan) You and Vue contributors
4
4
  * @license MIT
5
5
  **/
@@ -1,5 +1,5 @@
1
1
  /**
2
- * @vue/runtime-dom v3.6.0-beta.11
2
+ * @vue/runtime-dom v3.6.0-beta.12
3
3
  * (c) 2018-present Yuxi (Evan) You and Vue contributors
4
4
  * @license MIT
5
5
  **/
@@ -431,6 +431,13 @@ function warn$2(msg, ...args) {
431
431
  const notifyBuffer = [];
432
432
  let batchDepth = 0;
433
433
  let activeSub = void 0;
434
+ let runDepth = 0;
435
+ function incRunDepth() {
436
+ ++runDepth;
437
+ }
438
+ function decRunDepth() {
439
+ --runDepth;
440
+ }
434
441
  let globalVersion = 0;
435
442
  let notifyIndex = 0;
436
443
  let notifyBufferLength = 0;
@@ -504,8 +511,10 @@ function propagate(link) {
504
511
  const sub = link.sub;
505
512
  let flags = sub.flags;
506
513
  if (flags & 3) {
507
- if (!(flags & 60)) sub.flags = flags | 32;
508
- else if (!(flags & 12)) flags = 0;
514
+ if (!(flags & 60)) {
515
+ sub.flags = flags | 32;
516
+ if (runDepth) sub.flags |= 8;
517
+ } else if (!(flags & 12)) flags = 0;
509
518
  else if (!(flags & 4)) sub.flags = flags & -9 | 32;
510
519
  else if (!(flags & 48) && isValidLink(link, sub)) {
511
520
  sub.flags = flags | 40;
@@ -574,13 +583,13 @@ function checkDirty(link, sub) {
574
583
  let dirty = false;
575
584
  if (sub.flags & 16) dirty = true;
576
585
  else if ((depFlags & 17) === 17) {
586
+ const subs = dep.subs;
577
587
  if (dep.update()) {
578
- const subs = dep.subs;
579
588
  if (subs.nextSub !== void 0) shallowPropagate(subs);
580
589
  dirty = true;
581
590
  }
582
591
  } else if ((depFlags & 33) === 33) {
583
- if (link.nextSub !== void 0 || link.prevSub !== void 0) stack = {
592
+ stack = {
584
593
  value: link,
585
594
  prev: stack
586
595
  };
@@ -595,15 +604,12 @@ function checkDirty(link, sub) {
595
604
  }
596
605
  while (checkDepth) {
597
606
  --checkDepth;
598
- const firstSub = sub.subs;
599
- const hasMultipleSubs = firstSub.nextSub !== void 0;
600
- if (hasMultipleSubs) {
601
- link = stack.value;
602
- stack = stack.prev;
603
- } else link = firstSub;
607
+ link = stack.value;
608
+ stack = stack.prev;
604
609
  if (dirty) {
610
+ const subs = sub.subs;
605
611
  if (sub.update()) {
606
- if (hasMultipleSubs) shallowPropagate(firstSub);
612
+ if (subs.nextSub !== void 0) shallowPropagate(subs);
607
613
  sub = link.sub;
608
614
  continue;
609
615
  }
@@ -615,7 +621,7 @@ function checkDirty(link, sub) {
615
621
  }
616
622
  dirty = false;
617
623
  }
618
- return dirty;
624
+ return dirty && !!sub.flags;
619
625
  } while (true);
620
626
  }
621
627
  function shallowPropagate(link) {
@@ -1767,9 +1773,11 @@ var ReactiveEffect = class {
1767
1773
  if (!this.active) return this.fn();
1768
1774
  cleanup(this);
1769
1775
  const prevSub = startTracking(this);
1776
+ incRunDepth();
1770
1777
  try {
1771
1778
  return this.fn();
1772
1779
  } finally {
1780
+ decRunDepth();
1773
1781
  endTracking(this, prevSub);
1774
1782
  const flags = this.flags;
1775
1783
  if ((flags & 136) === 136) {
@@ -8360,7 +8368,7 @@ function isMemoSame(cached, memo) {
8360
8368
  }
8361
8369
  //#endregion
8362
8370
  //#region packages/runtime-core/src/index.ts
8363
- const version = "3.6.0-beta.11";
8371
+ const version = "3.6.0-beta.12";
8364
8372
  const warn = warn$1;
8365
8373
  /**
8366
8374
  * Runtime error messages. Only exposed in dev or esm builds.