@pravosleva/reactive-engine 2.0.0-beta → 2.0.0
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/dist/reactive-engine.umd.js +1 -1
- package/package.json +1 -1
- package/dist/report/reactive-framework-test-suite/scripts/update-readme.d.mts +0 -2
- package/dist/report/reactive-framework-test-suite/scripts/update-readme.d.mts.map +0 -1
- package/dist/report/reactive-framework-test-suite/src/assert.d.ts +0 -10
- package/dist/report/reactive-framework-test-suite/src/assert.d.ts.map +0 -1
- package/dist/report/reactive-framework-test-suite/src/batching.d.ts +0 -19
- package/dist/report/reactive-framework-test-suite/src/batching.d.ts.map +0 -1
- package/dist/report/reactive-framework-test-suite/src/behaviorDifferences.d.ts +0 -19
- package/dist/report/reactive-framework-test-suite/src/behaviorDifferences.d.ts.map +0 -1
- package/dist/report/reactive-framework-test-suite/src/computedEval.d.ts +0 -19
- package/dist/report/reactive-framework-test-suite/src/computedEval.d.ts.map +0 -1
- package/dist/report/reactive-framework-test-suite/src/cycleDetection.d.ts +0 -18
- package/dist/report/reactive-framework-test-suite/src/cycleDetection.d.ts.map +0 -1
- package/dist/report/reactive-framework-test-suite/src/dynamicDeps.d.ts +0 -20
- package/dist/report/reactive-framework-test-suite/src/dynamicDeps.d.ts.map +0 -1
- package/dist/report/reactive-framework-test-suite/src/effectLifecycle.d.ts +0 -20
- package/dist/report/reactive-framework-test-suite/src/effectLifecycle.d.ts.map +0 -1
- package/dist/report/reactive-framework-test-suite/src/equality.d.ts +0 -19
- package/dist/report/reactive-framework-test-suite/src/equality.d.ts.map +0 -1
- package/dist/report/reactive-framework-test-suite/src/errorHandling.d.ts +0 -20
- package/dist/report/reactive-framework-test-suite/src/errorHandling.d.ts.map +0 -1
- package/dist/report/reactive-framework-test-suite/src/framework.d.ts +0 -24
- package/dist/report/reactive-framework-test-suite/src/framework.d.ts.map +0 -1
- package/dist/report/reactive-framework-test-suite/src/graphPropagation.d.ts +0 -18
- package/dist/report/reactive-framework-test-suite/src/graphPropagation.d.ts.map +0 -1
- package/dist/report/reactive-framework-test-suite/src/index.d.ts +0 -11
- package/dist/report/reactive-framework-test-suite/src/index.d.ts.map +0 -1
- package/dist/report/reactive-framework-test-suite/src/innerWrite.d.ts +0 -20
- package/dist/report/reactive-framework-test-suite/src/innerWrite.d.ts.map +0 -1
- package/dist/report/reactive-framework-test-suite/src/memoryGc.d.ts +0 -18
- package/dist/report/reactive-framework-test-suite/src/memoryGc.d.ts.map +0 -1
- package/dist/report/reactive-framework-test-suite/src/nestedEffects.d.ts +0 -20
- package/dist/report/reactive-framework-test-suite/src/nestedEffects.d.ts.map +0 -1
- package/dist/report/reactive-framework-test-suite/src/reactiveEngine.test.d.ts +0 -2
- package/dist/report/reactive-framework-test-suite/src/reactiveEngine.test.d.ts.map +0 -1
- package/dist/report/reactive-framework-test-suite/src/staleEvaluation.d.ts +0 -18
- package/dist/report/reactive-framework-test-suite/src/staleEvaluation.d.ts.map +0 -1
- package/dist/report/reactive-framework-test-suite/src/untracked.d.ts +0 -18
- package/dist/report/reactive-framework-test-suite/src/untracked.d.ts.map +0 -1
- package/dist/report/reactive-framework-test-suite/test/frameworks/alienSignals.d.ts +0 -3
- package/dist/report/reactive-framework-test-suite/test/frameworks/alienSignals.d.ts.map +0 -1
- package/dist/report/reactive-framework-test-suite/test/frameworks/angularSignals.d.ts +0 -3
- package/dist/report/reactive-framework-test-suite/test/frameworks/angularSignals.d.ts.map +0 -1
- package/dist/report/reactive-framework-test-suite/test/frameworks/anod.d.ts +0 -3
- package/dist/report/reactive-framework-test-suite/test/frameworks/anod.d.ts.map +0 -1
- package/dist/report/reactive-framework-test-suite/test/frameworks/index.d.ts +0 -3
- package/dist/report/reactive-framework-test-suite/test/frameworks/index.d.ts.map +0 -1
- package/dist/report/reactive-framework-test-suite/test/frameworks/mobx.d.ts +0 -3
- package/dist/report/reactive-framework-test-suite/test/frameworks/mobx.d.ts.map +0 -1
- package/dist/report/reactive-framework-test-suite/test/frameworks/pota.d.ts +0 -3
- package/dist/report/reactive-framework-test-suite/test/frameworks/pota.d.ts.map +0 -1
- package/dist/report/reactive-framework-test-suite/test/frameworks/preactSignals.d.ts +0 -3
- package/dist/report/reactive-framework-test-suite/test/frameworks/preactSignals.d.ts.map +0 -1
- package/dist/report/reactive-framework-test-suite/test/frameworks/reactively.d.ts +0 -3
- package/dist/report/reactive-framework-test-suite/test/frameworks/reactively.d.ts.map +0 -1
- package/dist/report/reactive-framework-test-suite/test/frameworks/reatom.d.ts +0 -3
- package/dist/report/reactive-framework-test-suite/test/frameworks/reatom.d.ts.map +0 -1
- package/dist/report/reactive-framework-test-suite/test/frameworks/sjs.d.ts +0 -3
- package/dist/report/reactive-framework-test-suite/test/frameworks/sjs.d.ts.map +0 -1
- package/dist/report/reactive-framework-test-suite/test/frameworks/solid.d.ts +0 -3
- package/dist/report/reactive-framework-test-suite/test/frameworks/solid.d.ts.map +0 -1
- package/dist/report/reactive-framework-test-suite/test/frameworks/solidSignals.d.ts +0 -3
- package/dist/report/reactive-framework-test-suite/test/frameworks/solidSignals.d.ts.map +0 -1
- package/dist/report/reactive-framework-test-suite/test/frameworks/svelte.d.ts +0 -3
- package/dist/report/reactive-framework-test-suite/test/frameworks/svelte.d.ts.map +0 -1
- package/dist/report/reactive-framework-test-suite/test/frameworks/tansu.d.ts +0 -3
- package/dist/report/reactive-framework-test-suite/test/frameworks/tansu.d.ts.map +0 -1
- package/dist/report/reactive-framework-test-suite/test/frameworks/tc39Signals.d.ts +0 -3
- package/dist/report/reactive-framework-test-suite/test/frameworks/tc39Signals.d.ts.map +0 -1
- package/dist/report/reactive-framework-test-suite/test/frameworks/vueReactivity.d.ts +0 -3
- package/dist/report/reactive-framework-test-suite/test/frameworks/vueReactivity.d.ts.map +0 -1
- package/dist/report/reactive-framework-test-suite/test/run.test.d.ts +0 -2
- package/dist/report/reactive-framework-test-suite/test/run.test.d.ts.map +0 -1
- package/dist/report/reactive-framework-test-suite/vitest.config.d.ts +0 -3
- package/dist/report/reactive-framework-test-suite/vitest.config.d.ts.map +0 -1
package/package.json
CHANGED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"update-readme.d.mts","sourceRoot":"","sources":["../../../../../report/reactive-framework-test-suite/scripts/update-readme.mjs"],"names":[],"mappings":""}
|
|
@@ -1,10 +0,0 @@
|
|
|
1
|
-
type ExpectFn = (actual: unknown) => any;
|
|
2
|
-
/**
|
|
3
|
-
* Replace the built-in expect with one from your test runner
|
|
4
|
-
* (e.g. vitest's `expect`) for richer error messages and tighter
|
|
5
|
-
* integration. Pass nothing to restore the built-in implementation.
|
|
6
|
-
*/
|
|
7
|
-
export declare function setExpect(fn?: ExpectFn): void;
|
|
8
|
-
export declare function expect(actual: unknown): any;
|
|
9
|
-
export {};
|
|
10
|
-
//# sourceMappingURL=assert.d.ts.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"assert.d.ts","sourceRoot":"","sources":["../../../../../report/reactive-framework-test-suite/src/assert.ts"],"names":[],"mappings":"AAAA,KAAK,QAAQ,GAAG,CAAC,MAAM,EAAE,OAAO,KAAK,GAAG,CAAC;AA8FzC;;;;GAIG;AACH,wBAAgB,SAAS,CAAC,EAAE,CAAC,EAAE,QAAQ,GAAG,IAAI,CAE7C;AAED,wBAAgB,MAAM,CAAC,MAAM,EAAE,OAAO,OAErC"}
|
|
@@ -1,19 +0,0 @@
|
|
|
1
|
-
import { ReactiveFramework } from './framework.js';
|
|
2
|
-
/**
|
|
3
|
-
* Batching / Transaction
|
|
4
|
-
*
|
|
5
|
-
* Tests that writes inside a batch (transaction) are deferred:
|
|
6
|
-
* effects and computed nodes only re-evaluate once when the
|
|
7
|
-
* outermost batch completes, intermediate values are never
|
|
8
|
-
* observed by effects, and value-equality elision still applies.
|
|
9
|
-
*
|
|
10
|
-
* Legend:
|
|
11
|
-
* S signal (source)
|
|
12
|
-
* C computed
|
|
13
|
-
* *C computed that always returns a constant (value-equality cut)
|
|
14
|
-
* E / eff effect
|
|
15
|
-
* ─→ dependency edge (downstream reads upstream)
|
|
16
|
-
*/
|
|
17
|
-
export declare const section = "Batching / Transaction";
|
|
18
|
-
export declare const cases: Record<string, (fw: ReactiveFramework) => any>;
|
|
19
|
-
//# sourceMappingURL=batching.d.ts.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"batching.d.ts","sourceRoot":"","sources":["../../../../../report/reactive-framework-test-suite/src/batching.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,gBAAgB,CAAC;AAGxD;;;;;;;;;;;;;;GAcG;AACH,eAAO,MAAM,OAAO,2BAA2B,CAAC;AAChD,eAAO,MAAM,KAAK,EAAE,MAAM,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE,iBAAiB,KAAK,GAAG,CAgjBhE,CAAC"}
|
|
@@ -1,19 +0,0 @@
|
|
|
1
|
-
import { ReactiveFramework } from './framework.js';
|
|
2
|
-
/**
|
|
3
|
-
* Behavioral Differences
|
|
4
|
-
*
|
|
5
|
-
* Tests that probe framework-specific semantics where reactive
|
|
6
|
-
* libraries legitimately diverge. Each test returns a descriptive
|
|
7
|
-
* string (e.g. "lazy" / "eager") rather than asserting a single
|
|
8
|
-
* correct answer — useful for characterizing a framework's design
|
|
9
|
-
* choices.
|
|
10
|
-
*
|
|
11
|
-
* Legend:
|
|
12
|
-
* S signal (source)
|
|
13
|
-
* C computed
|
|
14
|
-
* E / eff effect
|
|
15
|
-
* ─→ dependency edge
|
|
16
|
-
*/
|
|
17
|
-
export declare const section = "Behavioral Differences";
|
|
18
|
-
export declare const cases: Record<string, (fw: ReactiveFramework) => any>;
|
|
19
|
-
//# sourceMappingURL=behaviorDifferences.d.ts.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"behaviorDifferences.d.ts","sourceRoot":"","sources":["../../../../../report/reactive-framework-test-suite/src/behaviorDifferences.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,gBAAgB,CAAC;AAGxD;;;;;;;;;;;;;;GAcG;AACH,eAAO,MAAM,OAAO,2BAA2B,CAAC;AAChD,eAAO,MAAM,KAAK,EAAE,MAAM,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE,iBAAiB,KAAK,GAAG,CAsfhE,CAAC"}
|
|
@@ -1,19 +0,0 @@
|
|
|
1
|
-
import { ReactiveFramework } from './framework.js';
|
|
2
|
-
/**
|
|
3
|
-
* Computed Evaluation
|
|
4
|
-
*
|
|
5
|
-
* Tests that computed nodes evaluate lazily and cache their results:
|
|
6
|
-
* re-computation only happens when a dependency actually changes,
|
|
7
|
-
* chained computeds propagate correctly, and value-equality cuts
|
|
8
|
-
* prevent unnecessary downstream work.
|
|
9
|
-
*
|
|
10
|
-
* Legend:
|
|
11
|
-
* S signal (source)
|
|
12
|
-
* C computed
|
|
13
|
-
* *C computed that always returns a constant (value-equality cut)
|
|
14
|
-
* E / eff effect
|
|
15
|
-
* ─→ dependency edge (downstream reads upstream)
|
|
16
|
-
*/
|
|
17
|
-
export declare const section = "Computed Evaluation";
|
|
18
|
-
export declare const cases: Record<string, (fw: ReactiveFramework) => any>;
|
|
19
|
-
//# sourceMappingURL=computedEval.d.ts.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"computedEval.d.ts","sourceRoot":"","sources":["../../../../../report/reactive-framework-test-suite/src/computedEval.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,gBAAgB,CAAC;AAGxD;;;;;;;;;;;;;;GAcG;AACH,eAAO,MAAM,OAAO,wBAAwB,CAAC;AAC7C,eAAO,MAAM,KAAK,EAAE,MAAM,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE,iBAAiB,KAAK,GAAG,CA+XhE,CAAC"}
|
|
@@ -1,18 +0,0 @@
|
|
|
1
|
-
import { ReactiveFramework } from './framework.js';
|
|
2
|
-
/**
|
|
3
|
-
* Cycle & Infinite Loop Detection
|
|
4
|
-
*
|
|
5
|
-
* Tests that a framework handles circular dependencies and runaway
|
|
6
|
-
* effects without hanging or crashing: cycles are detected (throw or
|
|
7
|
-
* graceful fallback), and iteration counts stay bounded.
|
|
8
|
-
*
|
|
9
|
-
* Legend:
|
|
10
|
-
* S signal (source)
|
|
11
|
-
* C computed
|
|
12
|
-
* E / eff effect
|
|
13
|
-
* ─→ dependency edge (downstream reads upstream)
|
|
14
|
-
* ↔ / ⟳ cyclic dependency
|
|
15
|
-
*/
|
|
16
|
-
export declare const section = "Cycle & Infinite Loop Detection";
|
|
17
|
-
export declare const cases: Record<string, (fw: ReactiveFramework) => any>;
|
|
18
|
-
//# sourceMappingURL=cycleDetection.d.ts.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"cycleDetection.d.ts","sourceRoot":"","sources":["../../../../../report/reactive-framework-test-suite/src/cycleDetection.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,gBAAgB,CAAC;AAGxD;;;;;;;;;;;;;GAaG;AACH,eAAO,MAAM,OAAO,oCAAoC,CAAC;AACzD,eAAO,MAAM,KAAK,EAAE,MAAM,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE,iBAAiB,KAAK,GAAG,CA2MhE,CAAC"}
|
|
@@ -1,20 +0,0 @@
|
|
|
1
|
-
import { ReactiveFramework } from './framework.js';
|
|
2
|
-
/**
|
|
3
|
-
* Dynamic Dependencies
|
|
4
|
-
*
|
|
5
|
-
* Tests that dependency tracking adapts at runtime when conditional
|
|
6
|
-
* branches change which signals/computeds are read. A reactive
|
|
7
|
-
* framework must add newly-reached deps, remove no-longer-reached
|
|
8
|
-
* deps, and avoid redundant evaluations of nodes that become
|
|
9
|
-
* unreachable after a branch switch.
|
|
10
|
-
*
|
|
11
|
-
* Legend:
|
|
12
|
-
* S signal (source)
|
|
13
|
-
* C computed
|
|
14
|
-
* E / eff effect
|
|
15
|
-
* ─→ dependency edge
|
|
16
|
-
* ?─→ conditional (dynamic) dependency edge
|
|
17
|
-
*/
|
|
18
|
-
export declare const section = "Dynamic Dependencies";
|
|
19
|
-
export declare const cases: Record<string, (fw: ReactiveFramework) => any>;
|
|
20
|
-
//# sourceMappingURL=dynamicDeps.d.ts.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"dynamicDeps.d.ts","sourceRoot":"","sources":["../../../../../report/reactive-framework-test-suite/src/dynamicDeps.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,gBAAgB,CAAC;AAGxD;;;;;;;;;;;;;;;GAeG;AACH,eAAO,MAAM,OAAO,yBAAyB,CAAC;AAC9C,eAAO,MAAM,KAAK,EAAE,MAAM,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE,iBAAiB,KAAK,GAAG,CAygBhE,CAAC"}
|
|
@@ -1,20 +0,0 @@
|
|
|
1
|
-
import { ReactiveFramework } from './framework.js';
|
|
2
|
-
/**
|
|
3
|
-
* Effect Lifecycle
|
|
4
|
-
*
|
|
5
|
-
* Tests the full lifecycle of effects: creation, re-execution on
|
|
6
|
-
* dependency changes, cleanup functions, disposal (including self-
|
|
7
|
-
* disposal and double-disposal), and interactions between disposal
|
|
8
|
-
* and the reactive graph (computed-triggered disposal, inner
|
|
9
|
-
* computed recreation, subscription leaks).
|
|
10
|
-
*
|
|
11
|
-
* Legend:
|
|
12
|
-
* S signal (source)
|
|
13
|
-
* C computed
|
|
14
|
-
* E / eff effect
|
|
15
|
-
* ─→ dependency edge (downstream reads upstream)
|
|
16
|
-
* dispose effect disposal call
|
|
17
|
-
*/
|
|
18
|
-
export declare const section = "Effect Lifecycle";
|
|
19
|
-
export declare const cases: Record<string, (fw: ReactiveFramework) => any>;
|
|
20
|
-
//# sourceMappingURL=effectLifecycle.d.ts.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"effectLifecycle.d.ts","sourceRoot":"","sources":["../../../../../report/reactive-framework-test-suite/src/effectLifecycle.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,gBAAgB,CAAC;AAGxD;;;;;;;;;;;;;;;GAeG;AACH,eAAO,MAAM,OAAO,qBAAqB,CAAC;AAC1C,eAAO,MAAM,KAAK,EAAE,MAAM,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE,iBAAiB,KAAK,GAAG,CAk8BhE,CAAC"}
|
|
@@ -1,19 +0,0 @@
|
|
|
1
|
-
import { ReactiveFramework } from './framework.js';
|
|
2
|
-
/**
|
|
3
|
-
* Equality & Same-Value Optimization
|
|
4
|
-
*
|
|
5
|
-
* Tests that the framework skips propagation when a signal is
|
|
6
|
-
* written with the same value, or when a computed re-evaluates
|
|
7
|
-
* but returns an identical result. Downstream nodes must not
|
|
8
|
-
* re-evaluate when their inputs have not actually changed.
|
|
9
|
-
*
|
|
10
|
-
* Legend:
|
|
11
|
-
* S signal (source)
|
|
12
|
-
* C computed
|
|
13
|
-
* *C computed that always returns a constant (value-equality cut)
|
|
14
|
-
* E / eff effect
|
|
15
|
-
* ─→ dependency edge (downstream reads upstream)
|
|
16
|
-
*/
|
|
17
|
-
export declare const section = "Equality & Same-Value Optimization";
|
|
18
|
-
export declare const cases: Record<string, (fw: ReactiveFramework) => any>;
|
|
19
|
-
//# sourceMappingURL=equality.d.ts.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"equality.d.ts","sourceRoot":"","sources":["../../../../../report/reactive-framework-test-suite/src/equality.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,gBAAgB,CAAC;AAGxD;;;;;;;;;;;;;;GAcG;AACH,eAAO,MAAM,OAAO,uCAAuC,CAAC;AAC5D,eAAO,MAAM,KAAK,EAAE,MAAM,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE,iBAAiB,KAAK,GAAG,CA+HhE,CAAC"}
|
|
@@ -1,20 +0,0 @@
|
|
|
1
|
-
import { ReactiveFramework } from './framework.js';
|
|
2
|
-
/**
|
|
3
|
-
* Error Handling
|
|
4
|
-
*
|
|
5
|
-
* Tests that exceptions thrown inside computeds, effects, or
|
|
6
|
-
* cleanup functions do not corrupt the reactive graph. After an
|
|
7
|
-
* error the framework must remain consistent: recovery writes
|
|
8
|
-
* produce correct values, unrelated branches stay intact, and
|
|
9
|
-
* no stale scheduled work leaks across updates.
|
|
10
|
-
*
|
|
11
|
-
* Legend:
|
|
12
|
-
* S signal (source)
|
|
13
|
-
* C computed
|
|
14
|
-
* E / eff effect
|
|
15
|
-
* ─→ dependency edge (downstream reads upstream)
|
|
16
|
-
* ⚡ node that may throw
|
|
17
|
-
*/
|
|
18
|
-
export declare const section = "Error Handling";
|
|
19
|
-
export declare const cases: Record<string, (fw: ReactiveFramework) => any>;
|
|
20
|
-
//# sourceMappingURL=errorHandling.d.ts.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"errorHandling.d.ts","sourceRoot":"","sources":["../../../../../report/reactive-framework-test-suite/src/errorHandling.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,gBAAgB,CAAC;AAGxD;;;;;;;;;;;;;;;GAeG;AACH,eAAO,MAAM,OAAO,mBAAmB,CAAC;AACxC,eAAO,MAAM,KAAK,EAAE,MAAM,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE,iBAAiB,KAAK,GAAG,CAkXhE,CAAC"}
|
|
@@ -1,24 +0,0 @@
|
|
|
1
|
-
export interface ReactiveFramework {
|
|
2
|
-
name?: string;
|
|
3
|
-
signal<T>(initialValue: T): Signal<T>;
|
|
4
|
-
computed<T>(fn: () => T): Computed<T>;
|
|
5
|
-
effect(fn: () => void | (() => void)): () => void;
|
|
6
|
-
run(fn: () => void): void;
|
|
7
|
-
batch?(fn: () => void): void;
|
|
8
|
-
untracked?<T>(fn: () => T): T;
|
|
9
|
-
}
|
|
10
|
-
export declare function detectCapabilities(fw: ReactiveFramework): void;
|
|
11
|
-
export declare function hasEffectCleanup(fw: ReactiveFramework): boolean;
|
|
12
|
-
export declare function hasComputedThrows(fw: ReactiveFramework): boolean;
|
|
13
|
-
export interface Signal<T> {
|
|
14
|
-
read(): T;
|
|
15
|
-
write(v: T): void;
|
|
16
|
-
}
|
|
17
|
-
export interface Computed<T> {
|
|
18
|
-
read(): T;
|
|
19
|
-
}
|
|
20
|
-
export declare class SkipTest extends Error {
|
|
21
|
-
reason: string;
|
|
22
|
-
constructor(reason: string);
|
|
23
|
-
}
|
|
24
|
-
//# sourceMappingURL=framework.d.ts.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"framework.d.ts","sourceRoot":"","sources":["../../../../../report/reactive-framework-test-suite/src/framework.ts"],"names":[],"mappings":"AAAA,MAAM,WAAW,iBAAiB;IAChC,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,MAAM,CAAC,CAAC,EAAE,YAAY,EAAE,CAAC,GAAG,MAAM,CAAC,CAAC,CAAC,CAAC;IACtC,QAAQ,CAAC,CAAC,EAAE,EAAE,EAAE,MAAM,CAAC,GAAG,QAAQ,CAAC,CAAC,CAAC,CAAC;IACtC,MAAM,CAAC,EAAE,EAAE,MAAM,IAAI,GAAG,CAAC,MAAM,IAAI,CAAC,GAAG,MAAM,IAAI,CAAC;IAClD,GAAG,CAAC,EAAE,EAAE,MAAM,IAAI,GAAG,IAAI,CAAC;IAC1B,KAAK,CAAC,CAAC,EAAE,EAAE,MAAM,IAAI,GAAG,IAAI,CAAC;IAC7B,SAAS,CAAC,CAAC,CAAC,EAAE,EAAE,EAAE,MAAM,CAAC,GAAG,CAAC,CAAC;CAC/B;AAID,wBAAgB,kBAAkB,CAAC,EAAE,EAAE,iBAAiB,GAAG,IAAI,CAqC9D;AAED,wBAAgB,gBAAgB,CAAC,EAAE,EAAE,iBAAiB,GAAG,OAAO,CAG/D;AAED,wBAAgB,iBAAiB,CAAC,EAAE,EAAE,iBAAiB,GAAG,OAAO,CAGhE;AAED,MAAM,WAAW,MAAM,CAAC,CAAC;IACvB,IAAI,IAAI,CAAC,CAAC;IACV,KAAK,CAAC,CAAC,EAAE,CAAC,GAAG,IAAI,CAAC;CACnB;AAED,MAAM,WAAW,QAAQ,CAAC,CAAC;IACzB,IAAI,IAAI,CAAC,CAAC;CACX;AAED,qBAAa,QAAS,SAAQ,KAAK;IACd,MAAM,EAAE,MAAM;gBAAd,MAAM,EAAE,MAAM;CAGlC"}
|
|
@@ -1,18 +0,0 @@
|
|
|
1
|
-
import { ReactiveFramework } from './framework.js';
|
|
2
|
-
/**
|
|
3
|
-
* Graph Propagation
|
|
4
|
-
*
|
|
5
|
-
* Tests that changes propagate correctly through dependency graphs:
|
|
6
|
-
* each node evaluates at most once, topological order is respected,
|
|
7
|
-
* and value-equality cuts propagation.
|
|
8
|
-
*
|
|
9
|
-
* Legend:
|
|
10
|
-
* S signal (source)
|
|
11
|
-
* C computed
|
|
12
|
-
* *C computed that always returns a constant (value-equality cut)
|
|
13
|
-
* E / eff effect
|
|
14
|
-
* ─→ dependency edge (downstream reads upstream)
|
|
15
|
-
*/
|
|
16
|
-
export declare const section = "Graph Propagation";
|
|
17
|
-
export declare const cases: Record<string, (fw: ReactiveFramework) => any>;
|
|
18
|
-
//# sourceMappingURL=graphPropagation.d.ts.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"graphPropagation.d.ts","sourceRoot":"","sources":["../../../../../report/reactive-framework-test-suite/src/graphPropagation.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,gBAAgB,CAAC;AAGxD;;;;;;;;;;;;;GAaG;AACH,eAAO,MAAM,OAAO,sBAAsB,CAAC;AAC3C,eAAO,MAAM,KAAK,EAAE,MAAM,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE,iBAAiB,KAAK,GAAG,CA4yBhE,CAAC"}
|
|
@@ -1,11 +0,0 @@
|
|
|
1
|
-
import { ReactiveFramework } from './framework.js';
|
|
2
|
-
export type { ReactiveFramework, Signal, Computed } from './framework.js';
|
|
3
|
-
export { SkipTest } from './framework.js';
|
|
4
|
-
export { expect, setExpect } from './assert.js';
|
|
5
|
-
export interface TestSection {
|
|
6
|
-
section: string;
|
|
7
|
-
cases: Record<string, (fw: ReactiveFramework) => any>;
|
|
8
|
-
type?: "behavioral";
|
|
9
|
-
}
|
|
10
|
-
export declare const testSuite: TestSection[];
|
|
11
|
-
//# sourceMappingURL=index.d.ts.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../report/reactive-framework-test-suite/src/index.ts"],"names":[],"mappings":"AAAA,YAAY,EAAE,iBAAiB,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,gBAAgB,CAAC;AAC1E,OAAO,EAAE,QAAQ,EAAE,MAAM,gBAAgB,CAAC;AAC1C,OAAO,EAAE,MAAM,EAAE,SAAS,EAAE,MAAM,aAAa,CAAC;AAEhD,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,gBAAgB,CAAC;AAiBxD,MAAM,WAAW,WAAW;IAC1B,OAAO,EAAE,MAAM,CAAC;IAChB,KAAK,EAAE,MAAM,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE,iBAAiB,KAAK,GAAG,CAAC,CAAC;IACtD,IAAI,CAAC,EAAE,YAAY,CAAC;CACrB;AAED,eAAO,MAAM,SAAS,EAAE,WAAW,EAelC,CAAC"}
|
|
@@ -1,20 +0,0 @@
|
|
|
1
|
-
import { ReactiveFramework } from './framework.js';
|
|
2
|
-
/**
|
|
3
|
-
* Inner Write
|
|
4
|
-
*
|
|
5
|
-
* Tests signal writes that originate from inside effects or
|
|
6
|
-
* computed callbacks ("inner writes" / "side-effect writes").
|
|
7
|
-
* Covers write-back from effects, computed side-channel writes,
|
|
8
|
-
* convergence behavior, and interactions with batching and
|
|
9
|
-
* dynamic dependency switching.
|
|
10
|
-
*
|
|
11
|
-
* Legend:
|
|
12
|
-
* S signal (source)
|
|
13
|
-
* C computed
|
|
14
|
-
* E / eff effect
|
|
15
|
-
* ─→ dependency edge (downstream reads upstream)
|
|
16
|
-
* ═→ inner write (node writes to a signal during evaluation)
|
|
17
|
-
*/
|
|
18
|
-
export declare const section = "Inner Write";
|
|
19
|
-
export declare const cases: Record<string, (fw: ReactiveFramework) => any>;
|
|
20
|
-
//# sourceMappingURL=innerWrite.d.ts.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"innerWrite.d.ts","sourceRoot":"","sources":["../../../../../report/reactive-framework-test-suite/src/innerWrite.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,gBAAgB,CAAC;AAGxD;;;;;;;;;;;;;;;GAeG;AACH,eAAO,MAAM,OAAO,gBAAgB,CAAC;AACrC,eAAO,MAAM,KAAK,EAAE,MAAM,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE,iBAAiB,KAAK,GAAG,CAu7BhE,CAAC"}
|
|
@@ -1,18 +0,0 @@
|
|
|
1
|
-
import { ReactiveFramework } from './framework.js';
|
|
2
|
-
/**
|
|
3
|
-
* Memory & GC
|
|
4
|
-
*
|
|
5
|
-
* Tests that disposing effects and removing listeners correctly
|
|
6
|
-
* cleans up subscriptions and dependency links, preventing
|
|
7
|
-
* memory leaks and stale re-executions.
|
|
8
|
-
*
|
|
9
|
-
* Legend:
|
|
10
|
-
* S signal (source)
|
|
11
|
-
* C computed
|
|
12
|
-
* E / eff effect
|
|
13
|
-
* ─→ dependency edge
|
|
14
|
-
* ──X disposed / removed edge
|
|
15
|
-
*/
|
|
16
|
-
export declare const section = "Memory & GC";
|
|
17
|
-
export declare const cases: Record<string, (fw: ReactiveFramework) => any>;
|
|
18
|
-
//# sourceMappingURL=memoryGc.d.ts.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"memoryGc.d.ts","sourceRoot":"","sources":["../../../../../report/reactive-framework-test-suite/src/memoryGc.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,gBAAgB,CAAC;AAGxD;;;;;;;;;;;;;GAaG;AACH,eAAO,MAAM,OAAO,gBAAgB,CAAC;AACrC,eAAO,MAAM,KAAK,EAAE,MAAM,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE,iBAAiB,KAAK,GAAG,CAsJhE,CAAC"}
|
|
@@ -1,20 +0,0 @@
|
|
|
1
|
-
import { ReactiveFramework } from './framework.js';
|
|
2
|
-
/**
|
|
3
|
-
* Nested Effects & Ordering
|
|
4
|
-
*
|
|
5
|
-
* Tests that effects created inside other effects behave correctly:
|
|
6
|
-
* outer effects run before inner effects, inner effects are disposed
|
|
7
|
-
* when the outer re-runs, disposal cascades through multiple levels,
|
|
8
|
-
* and recursive writes inside effects do not cause infinite loops.
|
|
9
|
-
*
|
|
10
|
-
* Legend:
|
|
11
|
-
* S signal (source)
|
|
12
|
-
* C computed
|
|
13
|
-
* E effect
|
|
14
|
-
* E{E} outer effect containing an inner effect
|
|
15
|
-
* ─→ dependency edge (downstream reads upstream)
|
|
16
|
-
* ✕ disposed / cleaned up
|
|
17
|
-
*/
|
|
18
|
-
export declare const section = "Nested Effects & Ordering";
|
|
19
|
-
export declare const cases: Record<string, (fw: ReactiveFramework) => any>;
|
|
20
|
-
//# sourceMappingURL=nestedEffects.d.ts.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"nestedEffects.d.ts","sourceRoot":"","sources":["../../../../../report/reactive-framework-test-suite/src/nestedEffects.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,gBAAgB,CAAC;AAGxD;;;;;;;;;;;;;;;GAeG;AACH,eAAO,MAAM,OAAO,8BAA8B,CAAC;AACnD,eAAO,MAAM,KAAK,EAAE,MAAM,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE,iBAAiB,KAAK,GAAG,CA+ZhE,CAAC"}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"reactiveEngine.test.d.ts","sourceRoot":"","sources":["../../../../../report/reactive-framework-test-suite/src/reactiveEngine.test.ts"],"names":[],"mappings":""}
|
|
@@ -1,18 +0,0 @@
|
|
|
1
|
-
import { ReactiveFramework } from './framework.js';
|
|
2
|
-
/**
|
|
3
|
-
* Stale Evaluation Order
|
|
4
|
-
*
|
|
5
|
-
* Tests that computeds are re-evaluated in topological
|
|
6
|
-
* (dependency-respecting) order after a source signal changes.
|
|
7
|
-
* A correct framework must never evaluate a downstream computed
|
|
8
|
-
* before its upstream dependency has been refreshed.
|
|
9
|
-
*
|
|
10
|
-
* Legend:
|
|
11
|
-
* S signal (source)
|
|
12
|
-
* C computed
|
|
13
|
-
* E / eff effect
|
|
14
|
-
* ─→ dependency edge
|
|
15
|
-
*/
|
|
16
|
-
export declare const section = "Stale Evaluation Order";
|
|
17
|
-
export declare const cases: Record<string, (fw: ReactiveFramework) => any>;
|
|
18
|
-
//# sourceMappingURL=staleEvaluation.d.ts.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"staleEvaluation.d.ts","sourceRoot":"","sources":["../../../../../report/reactive-framework-test-suite/src/staleEvaluation.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,gBAAgB,CAAC;AAExD;;;;;;;;;;;;;GAaG;AACH,eAAO,MAAM,OAAO,2BAA2B,CAAC;AAChD,eAAO,MAAM,KAAK,EAAE,MAAM,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE,iBAAiB,KAAK,GAAG,CA8IhE,CAAC"}
|
|
@@ -1,18 +0,0 @@
|
|
|
1
|
-
import { ReactiveFramework } from './framework.js';
|
|
2
|
-
/**
|
|
3
|
-
* Untracked / Unsampled Reads
|
|
4
|
-
*
|
|
5
|
-
* Tests that `fw.untracked()` suppresses dependency tracking.
|
|
6
|
-
* Reads performed inside an untracked scope must not subscribe the
|
|
7
|
-
* enclosing effect or computed to the read signal.
|
|
8
|
-
*
|
|
9
|
-
* Legend:
|
|
10
|
-
* S signal (source)
|
|
11
|
-
* C computed
|
|
12
|
-
* E / eff effect
|
|
13
|
-
* ─→ dependency edge
|
|
14
|
-
* ╌╌→ untracked read (no dependency created)
|
|
15
|
-
*/
|
|
16
|
-
export declare const section = "Untracked / Unsampled Reads";
|
|
17
|
-
export declare const cases: Record<string, (fw: ReactiveFramework) => any>;
|
|
18
|
-
//# sourceMappingURL=untracked.d.ts.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"untracked.d.ts","sourceRoot":"","sources":["../../../../../report/reactive-framework-test-suite/src/untracked.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,gBAAgB,CAAC;AAGxD;;;;;;;;;;;;;GAaG;AACH,eAAO,MAAM,OAAO,gCAAgC,CAAC;AACrD,eAAO,MAAM,KAAK,EAAE,MAAM,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE,iBAAiB,KAAK,GAAG,CAsNhE,CAAC"}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"alienSignals.d.ts","sourceRoot":"","sources":["../../../../../../report/reactive-framework-test-suite/test/frameworks/alienSignals.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,wBAAwB,CAAC;AAUhE,eAAO,MAAM,qBAAqB,EAAE,iBAmCnC,CAAC"}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"angularSignals.d.ts","sourceRoot":"","sources":["../../../../../../report/reactive-framework-test-suite/test/frameworks/angularSignals.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,wBAAwB,CAAC;AAahE,eAAO,MAAM,uBAAuB,EAAE,iBAwCrC,CAAC"}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"anod.d.ts","sourceRoot":"","sources":["../../../../../../report/reactive-framework-test-suite/test/frameworks/anod.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,wBAAwB,CAAC;AAWhE,eAAO,MAAM,aAAa,EAAE,iBAqE3B,CAAC"}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../../report/reactive-framework-test-suite/test/frameworks/index.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,wBAAwB,CAAC;AAkBhE,eAAO,MAAM,UAAU,EAAE,iBAAiB,EAgBzC,CAAC"}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"mobx.d.ts","sourceRoot":"","sources":["../../../../../../report/reactive-framework-test-suite/test/frameworks/mobx.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,wBAAwB,CAAC;AAUhE,eAAO,MAAM,aAAa,EAAE,iBAyB3B,CAAC"}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"pota.d.ts","sourceRoot":"","sources":["../../../../../../report/reactive-framework-test-suite/test/frameworks/pota.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,wBAAwB,CAAC;AAOhE,eAAO,MAAM,aAAa,EAAE,iBAkC3B,CAAC"}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"preactSignals.d.ts","sourceRoot":"","sources":["../../../../../../report/reactive-framework-test-suite/test/frameworks/preactSignals.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,wBAAwB,CAAC;AAShE,eAAO,MAAM,sBAAsB,EAAE,iBAyBpC,CAAC"}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"reactively.d.ts","sourceRoot":"","sources":["../../../../../../report/reactive-framework-test-suite/test/frameworks/reactively.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,wBAAwB,CAAC;AAKhE,eAAO,MAAM,mBAAmB,EAAE,iBAwCjC,CAAC"}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"reatom.d.ts","sourceRoot":"","sources":["../../../../../../report/reactive-framework-test-suite/test/frameworks/reatom.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,wBAAwB,CAAC;AAWhE,eAAO,MAAM,eAAe,EAAE,iBA+C7B,CAAC"}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"sjs.d.ts","sourceRoot":"","sources":["../../../../../../report/reactive-framework-test-suite/test/frameworks/sjs.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,wBAAwB,CAAC;AAGhE,eAAO,MAAM,YAAY,EAAE,iBAsC1B,CAAC"}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"solid.d.ts","sourceRoot":"","sources":["../../../../../../report/reactive-framework-test-suite/test/frameworks/solid.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,wBAAwB,CAAC;AAehE,eAAO,MAAM,cAAc,EAAE,iBAqC5B,CAAC"}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"solidSignals.d.ts","sourceRoot":"","sources":["../../../../../../report/reactive-framework-test-suite/test/frameworks/solidSignals.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,wBAAwB,CAAC;AAmBhE,eAAO,MAAM,qBAAqB,EAAE,iBA4CnC,CAAC"}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"svelte.d.ts","sourceRoot":"","sources":["../../../../../../report/reactive-framework-test-suite/test/frameworks/svelte.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,wBAAwB,CAAC;AAIhE,eAAO,MAAM,eAAe,EAAE,iBA8B7B,CAAC"}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"tansu.d.ts","sourceRoot":"","sources":["../../../../../../report/reactive-framework-test-suite/test/frameworks/tansu.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,wBAAwB,CAAC;AAGhE,eAAO,MAAM,cAAc,EAAE,iBA2B5B,CAAC"}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"tc39Signals.d.ts","sourceRoot":"","sources":["../../../../../../report/reactive-framework-test-suite/test/frameworks/tc39Signals.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,wBAAwB,CAAC;AAsBhE,eAAO,MAAM,oBAAoB,EAAE,iBAmClC,CAAC"}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"vueReactivity.d.ts","sourceRoot":"","sources":["../../../../../../report/reactive-framework-test-suite/test/frameworks/vueReactivity.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,wBAAwB,CAAC;AA0BhE,eAAO,MAAM,sBAAsB,EAAE,iBAsDpC,CAAC"}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"run.test.d.ts","sourceRoot":"","sources":["../../../../../report/reactive-framework-test-suite/test/run.test.ts"],"names":[],"mappings":""}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"vitest.config.d.ts","sourceRoot":"","sources":["../../../../report/reactive-framework-test-suite/vitest.config.ts"],"names":[],"mappings":";AAEA,wBASG"}
|