@solidjs/signals 2.0.0-rc.0 → 2.0.0-rc.10
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.
- package/README.md +1 -1
- package/dist/dev-shared.js +7138 -0
- package/dist/dev.attribution.js +3307 -0
- package/dist/dev.js +8076 -6692
- package/dist/observe/affects.js +129 -0
- package/dist/observe/attribution.js +7 -0
- package/dist/observe/boundaries.js +793 -0
- package/dist/observe/core/action.js +177 -0
- package/dist/observe/core/async.js +849 -0
- package/dist/observe/core/attribution-costs.js +66 -0
- package/dist/observe/core/attribution-feedback.js +280 -0
- package/dist/observe/core/attribution-hooks.js +83 -0
- package/dist/observe/core/attribution-queries.js +43 -0
- package/dist/observe/core/attribution.js +2904 -0
- package/dist/observe/core/constants.js +283 -0
- package/dist/{types-cjs/core/context.d.cts → observe/core/context.js} +37 -12
- package/dist/observe/core/core.js +1999 -0
- package/dist/observe/core/dev.js +343 -0
- package/dist/observe/core/effect.js +200 -0
- package/dist/observe/core/error-hooks.js +71 -0
- package/dist/observe/core/error.js +80 -0
- package/dist/observe/core/external.js +98 -0
- package/dist/observe/core/graph.js +155 -0
- package/dist/observe/core/heap.js +147 -0
- package/dist/observe/core/invariants.js +45 -0
- package/dist/observe/core/lanes.js +205 -0
- package/dist/observe/core/optimistic.js +627 -0
- package/dist/observe/core/owner.js +353 -0
- package/dist/observe/core/scheduler.js +1547 -0
- package/dist/observe/core/verdict.js +674 -0
- package/dist/observe/index.js +59 -0
- package/dist/observe/map.js +484 -0
- package/dist/observe/signals.js +731 -0
- package/dist/observe/store/index.js +44 -0
- package/dist/observe/store/next/optimistic.js +717 -0
- package/dist/observe/store/next/projection.js +266 -0
- package/dist/observe/store/next/reconcile.js +375 -0
- package/dist/observe/store/next/store.js +2480 -0
- package/dist/observe/store/next/target.js +51 -0
- package/dist/observe/store/store.js +331 -0
- package/dist/observe/store/storePath.js +103 -0
- package/dist/observe/store/utils.js +1070 -0
- package/dist/prod/affects.js +10 -9
- package/dist/prod/attribution.js +45 -0
- package/dist/prod/boundaries.js +388 -178
- package/dist/prod/core/action.js +65 -37
- package/dist/prod/core/async.js +477 -208
- package/dist/prod/core/attribution-hooks.js +3 -0
- package/dist/prod/core/constants.js +186 -1
- package/dist/prod/core/context.js +10 -16
- package/dist/prod/core/core.js +1556 -415
- package/dist/prod/core/dev.js +18 -1
- package/dist/prod/core/effect.js +119 -79
- package/dist/prod/core/error-hooks.js +71 -0
- package/dist/prod/core/error.js +13 -1
- package/dist/prod/core/external.js +4 -4
- package/dist/prod/core/graph.js +105 -54
- package/dist/prod/core/heap.js +72 -65
- package/dist/prod/core/invariants.js +3 -2
- package/dist/prod/core/lanes.js +117 -52
- package/dist/prod/core/optimistic.js +474 -103
- package/dist/prod/core/owner.js +131 -84
- package/dist/prod/core/scheduler.js +1013 -248
- package/dist/prod/core/verdict.js +418 -113
- package/dist/prod/index.js +25 -13
- package/dist/prod/map.js +314 -151
- package/dist/prod/signals.js +382 -32
- package/dist/prod/store/index.js +38 -0
- package/dist/prod/store/next/optimistic.js +710 -0
- package/dist/prod/store/next/projection.js +257 -0
- package/dist/prod/store/next/reconcile.js +373 -0
- package/dist/prod/store/next/store.js +2356 -0
- package/dist/prod/store/next/target.js +51 -0
- package/dist/prod/store/store.js +129 -881
- package/dist/prod/store/utils.js +982 -242
- package/dist/types/attribution.d.ts +19 -0
- package/dist/types/attribution.prod.d.ts +22 -0
- package/dist/types/boundaries.d.ts +78 -5
- package/dist/types/core/action.d.ts +12 -5
- package/dist/types/core/async.d.ts +3 -1
- package/dist/types/core/attribution-costs.d.ts +35 -0
- package/dist/types/core/attribution-feedback.d.ts +133 -0
- package/dist/types/core/attribution-hooks.d.ts +304 -0
- package/dist/types/core/attribution-queries.d.ts +24 -0
- package/dist/types/core/attribution.d.ts +892 -0
- package/dist/types/core/constants.d.ts +179 -0
- package/dist/types/core/core.d.ts +305 -23
- package/dist/types/core/dev.d.ts +421 -8
- package/dist/types/core/effect.d.ts +8 -1
- package/dist/types/core/error-hooks.d.ts +71 -0
- package/dist/types/core/error.d.ts +9 -0
- package/dist/types/core/graph.d.ts +23 -0
- package/dist/types/core/heap.d.ts +5 -3
- package/dist/types/core/index.d.ts +6 -3
- package/dist/types/core/invariants.d.ts +5 -1
- package/dist/types/core/lanes.d.ts +51 -19
- package/dist/types/core/owner.d.ts +15 -3
- package/dist/types/core/scheduler.d.ts +252 -3
- package/dist/types/core/types.d.ts +124 -41
- package/dist/types/index.d.ts +18 -5
- package/dist/types/map.d.ts +2 -0
- package/dist/types/signals.d.ts +164 -13
- package/dist/types/store/index.d.ts +16 -5
- package/dist/types/store/next/optimistic.d.ts +25 -0
- package/dist/types/store/next/projection.d.ts +27 -0
- package/dist/types/store/next/reconcile.d.ts +10 -0
- package/dist/types/store/next/store.d.ts +143 -0
- package/dist/types/store/next/target.d.ts +196 -0
- package/dist/types/store/store.d.ts +46 -112
- package/dist/types/store/utils.d.ts +188 -40
- package/package.json +32 -26
- package/dist/node.cjs +0 -7938
- package/dist/prod/store/optimistic.js +0 -217
- package/dist/prod/store/projection.js +0 -231
- package/dist/prod/store/reconcile.js +0 -707
- package/dist/types/store/optimistic.d.ts +0 -45
- package/dist/types/store/projection.d.ts +0 -70
- package/dist/types/store/reconcile.d.ts +0 -46
- package/dist/types-cjs/affects.d.cts +0 -47
- package/dist/types-cjs/boundaries.d.cts +0 -175
- package/dist/types-cjs/core/action.d.cts +0 -64
- package/dist/types-cjs/core/async.d.cts +0 -21
- package/dist/types-cjs/core/constants.d.cts +0 -71
- package/dist/types-cjs/core/core.d.cts +0 -148
- package/dist/types-cjs/core/dev.d.cts +0 -64
- package/dist/types-cjs/core/effect.d.cts +0 -30
- package/dist/types-cjs/core/error.d.cts +0 -47
- package/dist/types-cjs/core/external.d.cts +0 -15
- package/dist/types-cjs/core/graph.d.cts +0 -5
- package/dist/types-cjs/core/heap.d.cts +0 -22
- package/dist/types-cjs/core/index.d.cts +0 -13
- package/dist/types-cjs/core/invariants.d.cts +0 -59
- package/dist/types-cjs/core/lanes.d.cts +0 -56
- package/dist/types-cjs/core/optimistic.d.cts +0 -6
- package/dist/types-cjs/core/owner.d.cts +0 -124
- package/dist/types-cjs/core/scheduler.d.cts +0 -170
- package/dist/types-cjs/core/types.d.cts +0 -148
- package/dist/types-cjs/core/verdict.d.cts +0 -2
- package/dist/types-cjs/index.d.cts +0 -10
- package/dist/types-cjs/map.d.cts +0 -69
- package/dist/types-cjs/package.json +0 -3
- package/dist/types-cjs/signals.d.cts +0 -605
- package/dist/types-cjs/store/index.d.cts +0 -9
- package/dist/types-cjs/store/optimistic.d.cts +0 -45
- package/dist/types-cjs/store/projection.d.cts +0 -70
- package/dist/types-cjs/store/reconcile.d.cts +0 -46
- package/dist/types-cjs/store/store.d.cts +0 -213
- package/dist/types-cjs/store/storePath.d.cts +0 -58
- package/dist/types-cjs/store/utils.d.cts +0 -114
package/dist/prod/affects.js
CHANGED
|
@@ -1,11 +1,11 @@
|
|
|
1
1
|
import { forEachDependent } from "./core/async.js";
|
|
2
2
|
|
|
3
|
+
import { ext, statusNotifierOf } from "./core/core.js";
|
|
4
|
+
|
|
3
5
|
import { $REFRESH, STATUS_PENDING } from "./core/constants.js";
|
|
4
6
|
|
|
5
7
|
import { NotReadyError } from "./core/error.js";
|
|
6
8
|
|
|
7
|
-
import "./core/core.js";
|
|
8
|
-
|
|
9
9
|
import { GlobalQueue, globalQueue, schedule, shiftAffectsMarks } from "./core/scheduler.js";
|
|
10
10
|
|
|
11
11
|
import "./core/verdict.js";
|
|
@@ -24,7 +24,7 @@ import { $TARGET, getStoreAffectsNodes } from "./store/store.js";
|
|
|
24
24
|
* nothing is stored downstream and nothing can be stranded or stripped by
|
|
25
25
|
* mid-window recomputes.
|
|
26
26
|
*/ function markAffects(e) {
|
|
27
|
-
e.t = (e.t || 0) + 1;
|
|
27
|
+
ext(e).t = (e.o?.t || 0) + 1;
|
|
28
28
|
shiftAffectsMarks(1);
|
|
29
29
|
}
|
|
30
30
|
|
|
@@ -40,7 +40,7 @@ import { $TARGET, getStoreAffectsNodes } from "./store/store.js";
|
|
|
40
40
|
* flush that would surface them, before effects run — verdict-only, netting
|
|
41
41
|
* no visual change.
|
|
42
42
|
*/ function notifyMarkBoundaries(e) {
|
|
43
|
-
if (!e.
|
|
43
|
+
if (!e.u && !e.o?.i) return;
|
|
44
44
|
const r = new NotReadyError(e);
|
|
45
45
|
r.l = true;
|
|
46
46
|
const t = new Set;
|
|
@@ -49,8 +49,9 @@ import { $TARGET, getStoreAffectsNodes } from "./store/store.js";
|
|
|
49
49
|
t.add(e);
|
|
50
50
|
// Display consumers (render effects, boundary computeds) act on the
|
|
51
51
|
// notification; descent stops there, exactly like the status rails.
|
|
52
|
-
|
|
53
|
-
|
|
52
|
+
const o = statusNotifierOf(e);
|
|
53
|
+
if (o) {
|
|
54
|
+
o.call(e, STATUS_PENDING, r);
|
|
54
55
|
return;
|
|
55
56
|
}
|
|
56
57
|
forEachDependent(e, visit);
|
|
@@ -83,8 +84,8 @@ import { $TARGET, getStoreAffectsNodes } from "./store/store.js";
|
|
|
83
84
|
* setSignal would open a fresh override window that nothing settles).
|
|
84
85
|
*/ function releaseAffectsMark(e) {
|
|
85
86
|
shiftAffectsMarks(-1);
|
|
86
|
-
e.t--;
|
|
87
|
-
if (!e.t) {
|
|
87
|
+
e.o.t--;
|
|
88
|
+
if (!e.o.t) {
|
|
88
89
|
GlobalQueue.k !== null && GlobalQueue.k(e, true);
|
|
89
90
|
GlobalQueue.p?.(e);
|
|
90
91
|
}
|
|
@@ -107,7 +108,7 @@ GlobalQueue.G = releaseAffectsMarks;
|
|
|
107
108
|
|
|
108
109
|
GlobalQueue.M = markAffects;
|
|
109
110
|
|
|
110
|
-
GlobalQueue.
|
|
111
|
+
GlobalQueue.N = releaseAffectsMark;
|
|
111
112
|
|
|
112
113
|
function affects(e, r) {
|
|
113
114
|
const t = e?.[$TARGET];
|
|
@@ -0,0 +1,45 @@
|
|
|
1
|
+
const EMPTY = Object.freeze([]);
|
|
2
|
+
|
|
3
|
+
const noop = () => {};
|
|
4
|
+
|
|
5
|
+
const attribution = {
|
|
6
|
+
enable: () => noop,
|
|
7
|
+
disable: noop,
|
|
8
|
+
history: () => EMPTY,
|
|
9
|
+
markFlight: noop
|
|
10
|
+
};
|
|
11
|
+
|
|
12
|
+
// The named surface, inert: every fold empty, every query empty, every
|
|
13
|
+
// formatter blank. Typed against the real entry's exports so the two cannot
|
|
14
|
+
// drift.
|
|
15
|
+
const costs = () => ({
|
|
16
|
+
scopes: [],
|
|
17
|
+
writes: []
|
|
18
|
+
});
|
|
19
|
+
|
|
20
|
+
const feedback = () => ({
|
|
21
|
+
sources: [],
|
|
22
|
+
interactions: [],
|
|
23
|
+
navigations: [],
|
|
24
|
+
flights: [],
|
|
25
|
+
fallbacks: []
|
|
26
|
+
});
|
|
27
|
+
|
|
28
|
+
const why = () => [];
|
|
29
|
+
|
|
30
|
+
const subscriptions = () => [];
|
|
31
|
+
|
|
32
|
+
const formatRerun = () => "";
|
|
33
|
+
|
|
34
|
+
const formatOrigin = () => "";
|
|
35
|
+
|
|
36
|
+
// Prod registers no roots: the graph has no observable size.
|
|
37
|
+
const graphSize = () => ({
|
|
38
|
+
roots: 0,
|
|
39
|
+
owners: 0,
|
|
40
|
+
computations: 0,
|
|
41
|
+
signals: 0,
|
|
42
|
+
edges: 0
|
|
43
|
+
});
|
|
44
|
+
|
|
45
|
+
export { attribution, costs, feedback, formatOrigin, formatRerun, graphSize, subscriptions, why };
|