| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194 |
- diff --git a/dist/dev.cjs b/dist/dev.cjs
- index 7104749..dc3eac9 100644
- --- a/dist/dev.cjs
- +++ b/dist/dev.cjs
- @@ -764,6 +764,8 @@ function runComputation(node, value, time) {
- if (node.updatedAt != null && "observers" in node) {
- writeSignal(node, nextValue, true);
- } else if (Transition && Transition.running && node.pure) {
- + // On first computation during transition, also set committed value #2046
- + if (!Transition.sources.has(node)) node.value = nextValue;
- Transition.sources.add(node);
- node.tValue = nextValue;
- } else node.value = nextValue;
- @@ -987,18 +989,21 @@ function cleanNode(node) {
- }
- }
- if (node.tOwned) {
- - for (i = node.tOwned.length - 1; i >= 0; i--) cleanNode(node.tOwned[i]);
- + const tOwned = node.tOwned;
- delete node.tOwned;
- + for (i = tOwned.length - 1; i >= 0; i--) cleanNode(tOwned[i]);
- }
- if (Transition && Transition.running && node.pure) {
- reset(node, true);
- } else if (node.owned) {
- - for (i = node.owned.length - 1; i >= 0; i--) cleanNode(node.owned[i]);
- + const owned = node.owned;
- node.owned = null;
- + for (i = owned.length - 1; i >= 0; i--) cleanNode(owned[i]);
- }
- if (node.cleanups) {
- - for (i = node.cleanups.length - 1; i >= 0; i--) node.cleanups[i]();
- + const cleanups = node.cleanups;
- node.cleanups = null;
- + for (i = cleanups.length - 1; i >= 0; i--) cleanups[i]();
- }
- if (Transition && Transition.running) node.tState = 0;else node.state = 0;
- delete node.sourceMap;
- diff --git a/dist/dev.js b/dist/dev.js
- index ea5e4bc..a2e2d59 100644
- --- a/dist/dev.js
- +++ b/dist/dev.js
- @@ -762,6 +762,8 @@ function runComputation(node, value, time) {
- if (node.updatedAt != null && "observers" in node) {
- writeSignal(node, nextValue, true);
- } else if (Transition && Transition.running && node.pure) {
- + // On first computation during transition, also set committed value #2046
- + if (!Transition.sources.has(node)) node.value = nextValue;
- Transition.sources.add(node);
- node.tValue = nextValue;
- } else node.value = nextValue;
- @@ -985,18 +987,21 @@ function cleanNode(node) {
- }
- }
- if (node.tOwned) {
- - for (i = node.tOwned.length - 1; i >= 0; i--) cleanNode(node.tOwned[i]);
- + const tOwned = node.tOwned;
- delete node.tOwned;
- + for (i = tOwned.length - 1; i >= 0; i--) cleanNode(tOwned[i]);
- }
- if (Transition && Transition.running && node.pure) {
- reset(node, true);
- } else if (node.owned) {
- - for (i = node.owned.length - 1; i >= 0; i--) cleanNode(node.owned[i]);
- + const owned = node.owned;
- node.owned = null;
- + for (i = owned.length - 1; i >= 0; i--) cleanNode(owned[i]);
- }
- if (node.cleanups) {
- - for (i = node.cleanups.length - 1; i >= 0; i--) node.cleanups[i]();
- + const cleanups = node.cleanups;
- node.cleanups = null;
- + for (i = cleanups.length - 1; i >= 0; i--) cleanups[i]();
- }
- if (Transition && Transition.running) node.tState = 0;else node.state = 0;
- delete node.sourceMap;
- diff --git a/dist/server.cjs b/dist/server.cjs
- index e715309..188ba81 100644
- --- a/dist/server.cjs
- +++ b/dist/server.cjs
- @@ -127,12 +127,14 @@ function onCleanup(fn) {
- }
- function cleanNode(node) {
- if (node.owned) {
- - for (let i = 0; i < node.owned.length; i++) cleanNode(node.owned[i]);
- + const owned = node.owned;
- node.owned = null;
- + for (let i = 0; i < owned.length; i++) cleanNode(owned[i]);
- }
- if (node.cleanups) {
- - for (let i = 0; i < node.cleanups.length; i++) node.cleanups[i]();
- + const cleanups = node.cleanups;
- node.cleanups = null;
- + for (let i = 0; i < cleanups.length; i++) cleanups[i]();
- }
- }
- function catchError(fn, handler) {
- diff --git a/dist/server.js b/dist/server.js
- index d5f8803..320d9af 100644
- --- a/dist/server.js
- +++ b/dist/server.js
- @@ -125,12 +125,14 @@ function onCleanup(fn) {
- }
- function cleanNode(node) {
- if (node.owned) {
- - for (let i = 0; i < node.owned.length; i++) cleanNode(node.owned[i]);
- + const owned = node.owned;
- node.owned = null;
- + for (let i = 0; i < owned.length; i++) cleanNode(owned[i]);
- }
- if (node.cleanups) {
- - for (let i = 0; i < node.cleanups.length; i++) node.cleanups[i]();
- + const cleanups = node.cleanups;
- node.cleanups = null;
- + for (let i = 0; i < cleanups.length; i++) cleanups[i]();
- }
- }
- function catchError(fn, handler) {
- diff --git a/dist/solid.cjs b/dist/solid.cjs
- index 7c133a2..5ef1501 100644
- --- a/dist/solid.cjs
- +++ b/dist/solid.cjs
- @@ -717,6 +717,8 @@ function runComputation(node, value, time) {
- if (node.updatedAt != null && "observers" in node) {
- writeSignal(node, nextValue, true);
- } else if (Transition && Transition.running && node.pure) {
- + // On first computation during transition, also set committed value #2046
- + if (!Transition.sources.has(node)) node.value = nextValue;
- Transition.sources.add(node);
- node.tValue = nextValue;
- } else node.value = nextValue;
- @@ -938,18 +940,21 @@ function cleanNode(node) {
- }
- }
- if (node.tOwned) {
- - for (i = node.tOwned.length - 1; i >= 0; i--) cleanNode(node.tOwned[i]);
- + const tOwned = node.tOwned;
- delete node.tOwned;
- + for (i = tOwned.length - 1; i >= 0; i--) cleanNode(tOwned[i]);
- }
- if (Transition && Transition.running && node.pure) {
- reset(node, true);
- } else if (node.owned) {
- - for (i = node.owned.length - 1; i >= 0; i--) cleanNode(node.owned[i]);
- + const owned = node.owned;
- node.owned = null;
- + for (i = owned.length - 1; i >= 0; i--) cleanNode(owned[i]);
- }
- if (node.cleanups) {
- - for (i = node.cleanups.length - 1; i >= 0; i--) node.cleanups[i]();
- + const cleanups = node.cleanups;
- node.cleanups = null;
- + for (i = cleanups.length - 1; i >= 0; i--) cleanups[i]();
- }
- if (Transition && Transition.running) node.tState = 0;else node.state = 0;
- }
- diff --git a/dist/solid.js b/dist/solid.js
- index 656fd26..6e0038c 100644
- --- a/dist/solid.js
- +++ b/dist/solid.js
- @@ -715,6 +715,8 @@ function runComputation(node, value, time) {
- if (node.updatedAt != null && "observers" in node) {
- writeSignal(node, nextValue, true);
- } else if (Transition && Transition.running && node.pure) {
- + // On first computation during transition, also set committed value #2046
- + if (!Transition.sources.has(node)) node.value = nextValue;
- Transition.sources.add(node);
- node.tValue = nextValue;
- } else node.value = nextValue;
- @@ -936,18 +938,21 @@ function cleanNode(node) {
- }
- }
- if (node.tOwned) {
- - for (i = node.tOwned.length - 1; i >= 0; i--) cleanNode(node.tOwned[i]);
- + const tOwned = node.tOwned;
- delete node.tOwned;
- + for (i = tOwned.length - 1; i >= 0; i--) cleanNode(tOwned[i]);
- }
- if (Transition && Transition.running && node.pure) {
- reset(node, true);
- } else if (node.owned) {
- - for (i = node.owned.length - 1; i >= 0; i--) cleanNode(node.owned[i]);
- + const owned = node.owned;
- node.owned = null;
- + for (i = owned.length - 1; i >= 0; i--) cleanNode(owned[i]);
- }
- if (node.cleanups) {
- - for (i = node.cleanups.length - 1; i >= 0; i--) node.cleanups[i]();
- + const cleanups = node.cleanups;
- node.cleanups = null;
- + for (i = cleanups.length - 1; i >= 0; i--) cleanups[i]();
- }
- if (Transition && Transition.running) node.tState = 0;else node.state = 0;
- }
|