@e280/strata 0.2.0-6 → 0.2.0-7

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 CHANGED
@@ -82,13 +82,13 @@ import {signal, effect} from "@e280/strata"
82
82
  // when $count is changed, the effect fn is run
83
83
  ```
84
84
 
85
- ### 🚦 `signal.derive` and `signal.lazy` are computed signals
86
- - **signal.derive**
85
+ ### 🚦 `signal.derived` and `signal.lazy` are computed signals
86
+ - **signal.derived**
87
87
  is for combining signals
88
88
  ```ts
89
89
  const $a = signal(1)
90
90
  const $b = signal(10)
91
- const $product = signal.derive(() => $a() * $b())
91
+ const $product = signal.derived(() => $a() * $b())
92
92
 
93
93
  $product() // 10
94
94
 
@@ -100,7 +100,7 @@ import {signal, effect} from "@e280/strata"
100
100
  ```
101
101
  - **signal.lazy**
102
102
  is for making special optimizations.
103
- it's like derive, except it cannot trigger effects,
103
+ it's like derived, except it cannot trigger effects,
104
104
  because it's so lazy it only computes the value on read, and only when necessary.
105
105
  > *i repeat: lazy signals cannot trigger effects!*
106
106
 
@@ -122,27 +122,27 @@ import {signal, effect} from "@e280/strata"
122
122
  $count()
123
123
  $count(2)
124
124
  ```
125
- - **same thing for derive/lazy**
125
+ - **same thing for derived/lazy**
126
126
  ```ts
127
- const $product = new Derive(() => $a() * $b())
127
+ const $product = new Derived(() => $a() * $b())
128
128
  ```
129
129
  ```ts
130
130
  const $product = new Lazy(() => $a() * $b())
131
131
  ```
132
132
  - **conversions**
133
- - all core primitives (signal/derive/lazy) have a convert-to-hipster-fn method
133
+ - all core primitives (signal/derived/lazy) have a convert-to-hipster-fn method
134
134
  ```ts
135
135
  new Signal(1).fn() // SignalFn<number>, hipster-fn
136
136
  ```
137
- - and all hipster fns (signal/derive/lazy) have a `.core` property to get the primitive
137
+ - and all hipster fns (signal/derived/lazy) have a `.core` property to get the primitive
138
138
  ```ts
139
139
  signal(0).core // Signal<number>, primitive instance
140
140
  ```
141
141
 
142
142
  ### 🚦 types
143
- - **`Signaly<V>`** — can be `Signal<V>` or `Derive<V>` or `Lazy<V>`
143
+ - **`Signaly<V>`** — can be `Signal<V>` or `Derived<V>` or `Lazy<V>`
144
144
  - these are types for the core primitive classes
145
- - **`SignalyFn<V>`** — can be `SignalFn<V>` or `DeriveFn<V>` or `LazyFn<V>`
145
+ - **`SignalyFn<V>`** — can be `SignalFn<V>` or `DerivedFn<V>` or `LazyFn<V>`
146
146
  - these `*Fn` types are for the hipster-syntax enabled variants
147
147
 
148
148
 
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@e280/strata",
3
- "version": "0.2.0-6",
3
+ "version": "0.2.0-7",
4
4
  "description": "state management",
5
5
  "license": "MIT",
6
6
  "author": "Chase Moskal <chasemoskal@gmail.com>",
@@ -2,10 +2,10 @@
2
2
  import {collectorEffect} from "./effect.js"
3
3
  import {Reactive} from "./parts/reactive.js"
4
4
  import {tracker} from "../tracker/tracker.js"
5
- import {DeriveFn, SignalOptions} from "./types.js"
5
+ import {DerivedFn, SignalOptions} from "./types.js"
6
6
  import {defaultCompare} from "./utils/default-compare.js"
7
7
 
8
- export class Derive<V> extends Reactive<V> {
8
+ export class Derived<V> extends Reactive<V> {
9
9
  #dispose: () => void
10
10
 
11
11
  constructor(formula: () => V, options?: Partial<SignalOptions>) {
@@ -35,7 +35,7 @@ export class Derive<V> extends Reactive<V> {
35
35
  }
36
36
 
37
37
  fn() {
38
- const that = this as Derive<V>
38
+ const that = this as Derived<V>
39
39
 
40
40
  function f(): V {
41
41
  return that.get()
@@ -55,7 +55,7 @@ export class Derive<V> extends Reactive<V> {
55
55
  get: () => that.sneak,
56
56
  })
57
57
 
58
- return f as DeriveFn<V>
58
+ return f as DerivedFn<V>
59
59
  }
60
60
  }
61
61
 
@@ -2,7 +2,7 @@
2
2
  export * from "./parts/reactive.js"
3
3
  export * from "./parts/readable.js"
4
4
 
5
- export * from "./derive.js"
5
+ export * from "./derived.js"
6
6
  export * from "./effect.js"
7
7
  export * from "./porcelain.js"
8
8
  export * from "./lazy.js"
@@ -1,7 +1,7 @@
1
1
 
2
2
  import {Lazy} from "./lazy.js"
3
3
  import {Signal} from "./signal.js"
4
- import {Derive} from "./derive.js"
4
+ import {Derived} from "./derived.js"
5
5
  import {SignalOptions} from "./types.js"
6
6
 
7
7
  export function lazy<V>(
@@ -11,11 +11,11 @@ export function lazy<V>(
11
11
  return new Lazy<V>(formula, options).fn()
12
12
  }
13
13
 
14
- export function derive<V>(
14
+ export function derived<V>(
15
15
  formula: () => V,
16
16
  options?: Partial<SignalOptions>,
17
17
  ) {
18
- return new Derive<V>(formula, options).fn()
18
+ return new Derived<V>(formula, options).fn()
19
19
  }
20
20
 
21
21
  export function signal<V>(
@@ -26,5 +26,5 @@ export function signal<V>(
26
26
  }
27
27
 
28
28
  signal.lazy = lazy
29
- signal.derive = derive
29
+ signal.derived = derived
30
30
 
@@ -3,13 +3,13 @@ import {Science} from "@e280/science"
3
3
 
4
4
  import effectTest from "./tests/effect.test.js"
5
5
  import signalTest from "./tests/signal.test.js"
6
- import deriveTest from "./tests/derive.test.js"
6
+ import derivedTest from "./tests/derived.test.js"
7
7
  import lazyTest from "./tests/lazy.test.js"
8
8
 
9
9
  export default Science.suite({
10
10
  "effect": effectTest,
11
11
  "signal": signalTest,
12
- "derive": deriveTest,
12
+ "derived": derivedTest,
13
13
  "lazy": lazyTest,
14
14
  })
15
15
 
@@ -1,13 +1,13 @@
1
1
 
2
2
  import {Science, test, expect, spy} from "@e280/science"
3
3
  import {effect} from "../effect.js"
4
- import {derive, signal} from "../porcelain.js"
4
+ import {derived, signal} from "../porcelain.js"
5
5
 
6
6
  export default Science.suite({
7
7
  "basic": test(async() => {
8
8
  const a = signal(1)
9
9
  const b = signal(10)
10
- const product = derive(() => a.get() * b.get())
10
+ const product = derived(() => a.get() * b.get())
11
11
  expect(product.get()).is(10)
12
12
 
13
13
  await a.set(2)
@@ -17,7 +17,7 @@ export default Science.suite({
17
17
  "effect reacts to derived changes": test(async() => {
18
18
  const a = signal(1)
19
19
  const b = signal(10)
20
- const product = derive(() => a.value * b.value)
20
+ const product = derived(() => a.value * b.value)
21
21
 
22
22
  let mutations = 0
23
23
  effect(() => {
@@ -39,7 +39,7 @@ export default Science.suite({
39
39
  "effect doesn't overreact to derived": test(async() => {
40
40
  const a = signal(1)
41
41
  const b = signal(10)
42
- const product = signal.derive(() => a.value * b.value)
42
+ const product = signal.derived(() => a.value * b.value)
43
43
 
44
44
  const derivedSpy = spy(() => {})
45
45
  product.on(derivedSpy)
@@ -63,7 +63,7 @@ export default Science.suite({
63
63
  "derived.on": test(async() => {
64
64
  const a = signal(1)
65
65
  const b = signal(10)
66
- const product = signal.derive(() => a.value * b.value)
66
+ const product = signal.derived(() => a.value * b.value)
67
67
  expect(product.value).is(10)
68
68
 
69
69
  const mole = spy((_v: number) => {})
@@ -79,7 +79,7 @@ export default Science.suite({
79
79
  "derived.on not called if result doesn't change": test(async() => {
80
80
  const a = signal(1)
81
81
  const b = signal(10)
82
- const product = signal.derive(() => a.value * b.value)
82
+ const product = signal.derived(() => a.value * b.value)
83
83
  expect(product.value).is(10)
84
84
 
85
85
  const mole = spy((_v: number) => {})
@@ -100,7 +100,7 @@ export default Science.suite({
100
100
  "basic": test(async() => {
101
101
  const a = signal(1)
102
102
  const b = signal(10)
103
- const product = derive(() => a() * b())
103
+ const product = derived(() => a() * b())
104
104
  expect(product()).is(10)
105
105
 
106
106
  await a(2)
@@ -1,10 +1,10 @@
1
1
 
2
2
  import {Lazy} from "./lazy.js"
3
3
  import {Signal} from "./signal.js"
4
- import {Derive} from "./derive.js"
4
+ import {Derived} from "./derived.js"
5
5
 
6
- export type Signaly<V> = Signal<V> | Derive<V> | Lazy<V>
7
- export type SignalyFn<V> = SignalFn<V> | DeriveFn<V> | LazyFn<V>
6
+ export type Signaly<V> = Signal<V> | Derived<V> | Lazy<V>
7
+ export type SignalyFn<V> = SignalFn<V> | DerivedFn<V> | LazyFn<V>
8
8
 
9
9
  export type SignalOptions = {
10
10
  compare: (a: any, b: any) => boolean
@@ -23,8 +23,8 @@ export type LazyFn<V> = {
23
23
  core: Lazy<V>
24
24
  } & Lazy<V>
25
25
 
26
- export type DeriveFn<V> = {
26
+ export type DerivedFn<V> = {
27
27
  (): V
28
- core: Derive<V>
29
- } & Derive<V>
28
+ core: Derived<V>
29
+ } & Derived<V>
30
30
 
@@ -1,11 +1,11 @@
1
1
 
2
2
  import {deep} from "@e280/stz"
3
- import {derive} from "../../signals/porcelain.js"
4
- import {Derive} from "../../signals/derive.js"
3
+ import {derived} from "../../signals/porcelain.js"
4
+ import {Derived} from "../../signals/derived.js"
5
5
  import {Branchstate, Immutable, Mutator, Options, Selector, Tree} from "./types.js"
6
6
 
7
7
  export class Branch<S extends Branchstate, ParentState extends Branchstate = any> implements Tree<S> {
8
- #immutable: Derive<Immutable<S>>
8
+ #immutable: Derived<Immutable<S>>
9
9
 
10
10
  constructor(
11
11
  private parent: Tree<ParentState>,
@@ -13,7 +13,7 @@ export class Branch<S extends Branchstate, ParentState extends Branchstate = any
13
13
  private options: Options,
14
14
  ) {
15
15
 
16
- this.#immutable = derive(() => {
16
+ this.#immutable = derived(() => {
17
17
  const state = selector(parent.state as any)
18
18
  return deep.freeze(options.clone(state)) as Immutable<S>
19
19
  }, {compare: deep.equal})
@@ -3,7 +3,7 @@ import {deep} from "@e280/stz"
3
3
  import {Branch} from "./branch.js"
4
4
  import {signal} from "../../signals/porcelain.js"
5
5
  import {trunkSetup} from "./utils/setup.js"
6
- import {Derive} from "../../signals/derive.js"
6
+ import {Derived} from "../../signals/derived.js"
7
7
  import {Signal} from "../../signals/signal.js"
8
8
  import {Chronobranch} from "./chronobranch.js"
9
9
  import {processOptions} from "./utils/process-options.js"
@@ -19,14 +19,14 @@ export class Trunk<S extends Trunkstate> implements Tree<S> {
19
19
 
20
20
  options: Options
21
21
 
22
- #immutable: Derive<Immutable<S>>
22
+ #immutable: Derived<Immutable<S>>
23
23
  #mutable: Signal<S>
24
24
  #mutationLock = 0
25
25
 
26
26
  constructor(state: S, options: Partial<Options> = {}) {
27
27
  this.options = processOptions(options)
28
28
  this.#mutable = signal(state)
29
- this.#immutable = signal.derive(() =>
29
+ this.#immutable = signal.derived(() =>
30
30
  deep.freeze(this.options.clone(this.#mutable.get())) as Immutable<S>
31
31
  )
32
32
  }
@@ -1,9 +1,9 @@
1
1
  import { Reactive } from "./parts/reactive.js";
2
- import { DeriveFn, SignalOptions } from "./types.js";
3
- export declare class Derive<V> extends Reactive<V> {
2
+ import { DerivedFn, SignalOptions } from "./types.js";
3
+ export declare class Derived<V> extends Reactive<V> {
4
4
  #private;
5
5
  constructor(formula: () => V, options?: Partial<SignalOptions>);
6
6
  dispose(): void;
7
7
  get core(): this;
8
- fn(): DeriveFn<V>;
8
+ fn(): DerivedFn<V>;
9
9
  }
@@ -2,7 +2,7 @@ import { collectorEffect } from "./effect.js";
2
2
  import { Reactive } from "./parts/reactive.js";
3
3
  import { tracker } from "../tracker/tracker.js";
4
4
  import { defaultCompare } from "./utils/default-compare.js";
5
- export class Derive extends Reactive {
5
+ export class Derived extends Reactive {
6
6
  #dispose;
7
7
  constructor(formula, options) {
8
8
  const compare = options?.compare ?? defaultCompare;
@@ -46,4 +46,4 @@ export class Derive extends Reactive {
46
46
  return f;
47
47
  }
48
48
  }
49
- //# sourceMappingURL=derive.js.map
49
+ //# sourceMappingURL=derived.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"derived.js","sourceRoot":"","sources":["../../s/signals/derived.ts"],"names":[],"mappings":"AACA,OAAO,EAAC,eAAe,EAAC,MAAM,aAAa,CAAA;AAC3C,OAAO,EAAC,QAAQ,EAAC,MAAM,qBAAqB,CAAA;AAC5C,OAAO,EAAC,OAAO,EAAC,MAAM,uBAAuB,CAAA;AAE7C,OAAO,EAAC,cAAc,EAAC,MAAM,4BAA4B,CAAA;AAEzD,MAAM,OAAO,OAAW,SAAQ,QAAW;IAC1C,QAAQ,CAAY;IAEpB,YAAY,OAAgB,EAAE,OAAgC;QAC7D,MAAM,OAAO,GAAG,OAAO,EAAE,OAAO,IAAI,cAAc,CAAA;QAClD,MAAM,EAAC,MAAM,EAAE,OAAO,EAAC,GAAG,eAAe,CAAC,OAAO,EAAE,KAAK,IAAG,EAAE;YAC5D,MAAM,KAAK,GAAG,OAAO,EAAE,CAAA;YACvB,MAAM,SAAS,GAAG,CAAC,OAAO,CAAC,IAAI,CAAC,KAAK,EAAE,KAAK,CAAC,CAAA;YAC7C,IAAI,SAAS,EAAE,CAAC;gBACf,IAAI,CAAC,KAAK,GAAG,KAAK,CAAA;gBAClB,MAAM,OAAO,CAAC,GAAG,CAAC;oBACjB,OAAO,CAAC,WAAW,CAAC,IAAI,CAAC;oBACzB,IAAI,CAAC,EAAE,CAAC,GAAG,CAAC,KAAK,CAAC;iBAClB,CAAC,CAAA;YACH,CAAC;QACF,CAAC,CAAC,CAAA;QACF,KAAK,CAAC,MAAM,CAAC,CAAA;QACb,IAAI,CAAC,QAAQ,GAAG,OAAO,CAAA;IACxB,CAAC;IAED,OAAO;QACN,KAAK,CAAC,OAAO,EAAE,CAAA;QACf,IAAI,CAAC,QAAQ,EAAE,CAAA;IAChB,CAAC;IAED,IAAI,IAAI;QACP,OAAO,IAAI,CAAA;IACZ,CAAC;IAED,EAAE;QACD,MAAM,IAAI,GAAG,IAAkB,CAAA;QAE/B,SAAS,CAAC;YACT,OAAO,IAAI,CAAC,GAAG,EAAE,CAAA;QAClB,CAAC;QAED,CAAC,CAAC,IAAI,GAAG,IAAI,CAAA;QACb,CAAC,CAAC,GAAG,GAAG,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,IAAI,CAAC,CAAA;QAC3B,CAAC,CAAC,EAAE,GAAG,IAAI,CAAC,EAAE,CAAA;QACd,CAAC,CAAC,OAAO,GAAG,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC,CAAA;QACnC,CAAC,CAAC,EAAE,GAAG,IAAI,CAAC,EAAE,CAAC,IAAI,CAAC,IAAI,CAAC,CAAA;QAEzB,MAAM,CAAC,cAAc,CAAC,CAAC,EAAE,OAAO,EAAE;YACjC,GAAG,EAAE,GAAG,EAAE,CAAC,IAAI,CAAC,KAAK;SACrB,CAAC,CAAA;QAEF,MAAM,CAAC,cAAc,CAAC,CAAC,EAAE,OAAO,EAAE;YACjC,GAAG,EAAE,GAAG,EAAE,CAAC,IAAI,CAAC,KAAK;SACrB,CAAC,CAAA;QAEF,OAAO,CAAiB,CAAA;IACzB,CAAC;CACD"}
@@ -1,6 +1,6 @@
1
1
  export * from "./parts/reactive.js";
2
2
  export * from "./parts/readable.js";
3
- export * from "./derive.js";
3
+ export * from "./derived.js";
4
4
  export * from "./effect.js";
5
5
  export * from "./porcelain.js";
6
6
  export * from "./lazy.js";
@@ -1,6 +1,6 @@
1
1
  export * from "./parts/reactive.js";
2
2
  export * from "./parts/readable.js";
3
- export * from "./derive.js";
3
+ export * from "./derived.js";
4
4
  export * from "./effect.js";
5
5
  export * from "./porcelain.js";
6
6
  export * from "./lazy.js";
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../s/signals/index.ts"],"names":[],"mappings":"AACA,cAAc,qBAAqB,CAAA;AACnC,cAAc,qBAAqB,CAAA;AAEnC,cAAc,aAAa,CAAA;AAC3B,cAAc,aAAa,CAAA;AAC3B,cAAc,gBAAgB,CAAA;AAC9B,cAAc,WAAW,CAAA;AACzB,cAAc,aAAa,CAAA;AAC3B,cAAc,YAAY,CAAA"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../s/signals/index.ts"],"names":[],"mappings":"AACA,cAAc,qBAAqB,CAAA;AACnC,cAAc,qBAAqB,CAAA;AAEnC,cAAc,cAAc,CAAA;AAC5B,cAAc,aAAa,CAAA;AAC3B,cAAc,gBAAgB,CAAA;AAC9B,cAAc,WAAW,CAAA;AACzB,cAAc,aAAa,CAAA;AAC3B,cAAc,YAAY,CAAA"}
@@ -1,8 +1,8 @@
1
1
  import { SignalOptions } from "./types.js";
2
2
  export declare function lazy<V>(formula: () => V, options?: Partial<SignalOptions>): import("./types.js").LazyFn<V>;
3
- export declare function derive<V>(formula: () => V, options?: Partial<SignalOptions>): import("./types.js").DeriveFn<V>;
3
+ export declare function derived<V>(formula: () => V, options?: Partial<SignalOptions>): import("./types.js").DerivedFn<V>;
4
4
  export declare function signal<V>(value: V, options?: Partial<SignalOptions>): import("./types.js").SignalFn<V>;
5
5
  export declare namespace signal {
6
6
  var lazy: typeof import("./porcelain.js").lazy;
7
- var derive: typeof import("./porcelain.js").derive;
7
+ var derived: typeof import("./porcelain.js").derived;
8
8
  }
@@ -1,15 +1,15 @@
1
1
  import { Lazy } from "./lazy.js";
2
2
  import { Signal } from "./signal.js";
3
- import { Derive } from "./derive.js";
3
+ import { Derived } from "./derived.js";
4
4
  export function lazy(formula, options) {
5
5
  return new Lazy(formula, options).fn();
6
6
  }
7
- export function derive(formula, options) {
8
- return new Derive(formula, options).fn();
7
+ export function derived(formula, options) {
8
+ return new Derived(formula, options).fn();
9
9
  }
10
10
  export function signal(value, options) {
11
11
  return new Signal(value, options).fn();
12
12
  }
13
13
  signal.lazy = lazy;
14
- signal.derive = derive;
14
+ signal.derived = derived;
15
15
  //# sourceMappingURL=porcelain.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"porcelain.js","sourceRoot":"","sources":["../../s/signals/porcelain.ts"],"names":[],"mappings":"AACA,OAAO,EAAC,IAAI,EAAC,MAAM,WAAW,CAAA;AAC9B,OAAO,EAAC,MAAM,EAAC,MAAM,aAAa,CAAA;AAClC,OAAO,EAAC,MAAM,EAAC,MAAM,aAAa,CAAA;AAGlC,MAAM,UAAU,IAAI,CAClB,OAAgB,EAChB,OAAgC;IAEjC,OAAO,IAAI,IAAI,CAAI,OAAO,EAAE,OAAO,CAAC,CAAC,EAAE,EAAE,CAAA;AAC1C,CAAC;AAED,MAAM,UAAU,MAAM,CACpB,OAAgB,EAChB,OAAgC;IAEjC,OAAO,IAAI,MAAM,CAAI,OAAO,EAAE,OAAO,CAAC,CAAC,EAAE,EAAE,CAAA;AAC5C,CAAC;AAED,MAAM,UAAU,MAAM,CACpB,KAAQ,EACR,OAAgC;IAEjC,OAAO,IAAI,MAAM,CAAI,KAAK,EAAE,OAAO,CAAC,CAAC,EAAE,EAAE,CAAA;AAC1C,CAAC;AAED,MAAM,CAAC,IAAI,GAAG,IAAI,CAAA;AAClB,MAAM,CAAC,MAAM,GAAG,MAAM,CAAA"}
1
+ {"version":3,"file":"porcelain.js","sourceRoot":"","sources":["../../s/signals/porcelain.ts"],"names":[],"mappings":"AACA,OAAO,EAAC,IAAI,EAAC,MAAM,WAAW,CAAA;AAC9B,OAAO,EAAC,MAAM,EAAC,MAAM,aAAa,CAAA;AAClC,OAAO,EAAC,OAAO,EAAC,MAAM,cAAc,CAAA;AAGpC,MAAM,UAAU,IAAI,CAClB,OAAgB,EAChB,OAAgC;IAEjC,OAAO,IAAI,IAAI,CAAI,OAAO,EAAE,OAAO,CAAC,CAAC,EAAE,EAAE,CAAA;AAC1C,CAAC;AAED,MAAM,UAAU,OAAO,CACrB,OAAgB,EAChB,OAAgC;IAEjC,OAAO,IAAI,OAAO,CAAI,OAAO,EAAE,OAAO,CAAC,CAAC,EAAE,EAAE,CAAA;AAC7C,CAAC;AAED,MAAM,UAAU,MAAM,CACpB,KAAQ,EACR,OAAgC;IAEjC,OAAO,IAAI,MAAM,CAAI,KAAK,EAAE,OAAO,CAAC,CAAC,EAAE,EAAE,CAAA;AAC1C,CAAC;AAED,MAAM,CAAC,IAAI,GAAG,IAAI,CAAA;AAClB,MAAM,CAAC,OAAO,GAAG,OAAO,CAAA"}
@@ -24,7 +24,7 @@ declare const _default: {
24
24
  ".on 'this' interrogation": Science.Test;
25
25
  };
26
26
  };
27
- derive: {
27
+ derived: {
28
28
  basic: Science.Test;
29
29
  "effect reacts to derived changes": Science.Test;
30
30
  "effect doesn't overreact to derived": Science.Test;
@@ -1,12 +1,12 @@
1
1
  import { Science } from "@e280/science";
2
2
  import effectTest from "./tests/effect.test.js";
3
3
  import signalTest from "./tests/signal.test.js";
4
- import deriveTest from "./tests/derive.test.js";
4
+ import derivedTest from "./tests/derived.test.js";
5
5
  import lazyTest from "./tests/lazy.test.js";
6
6
  export default Science.suite({
7
7
  "effect": effectTest,
8
8
  "signal": signalTest,
9
- "derive": deriveTest,
9
+ "derived": derivedTest,
10
10
  "lazy": lazyTest,
11
11
  });
12
12
  //# sourceMappingURL=signals.test.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"signals.test.js","sourceRoot":"","sources":["../../s/signals/signals.test.ts"],"names":[],"mappings":"AACA,OAAO,EAAC,OAAO,EAAC,MAAM,eAAe,CAAA;AAErC,OAAO,UAAU,MAAM,wBAAwB,CAAA;AAC/C,OAAO,UAAU,MAAM,wBAAwB,CAAA;AAC/C,OAAO,UAAU,MAAM,wBAAwB,CAAA;AAC/C,OAAO,QAAQ,MAAM,sBAAsB,CAAA;AAE3C,eAAe,OAAO,CAAC,KAAK,CAAC;IAC5B,QAAQ,EAAE,UAAU;IACpB,QAAQ,EAAE,UAAU;IACpB,QAAQ,EAAE,UAAU;IACpB,MAAM,EAAE,QAAQ;CAChB,CAAC,CAAA"}
1
+ {"version":3,"file":"signals.test.js","sourceRoot":"","sources":["../../s/signals/signals.test.ts"],"names":[],"mappings":"AACA,OAAO,EAAC,OAAO,EAAC,MAAM,eAAe,CAAA;AAErC,OAAO,UAAU,MAAM,wBAAwB,CAAA;AAC/C,OAAO,UAAU,MAAM,wBAAwB,CAAA;AAC/C,OAAO,WAAW,MAAM,yBAAyB,CAAA;AACjD,OAAO,QAAQ,MAAM,sBAAsB,CAAA;AAE3C,eAAe,OAAO,CAAC,KAAK,CAAC;IAC5B,QAAQ,EAAE,UAAU;IACpB,QAAQ,EAAE,UAAU;IACpB,SAAS,EAAE,WAAW;IACtB,MAAM,EAAE,QAAQ;CAChB,CAAC,CAAA"}
@@ -1,11 +1,11 @@
1
1
  import { Science, test, expect, spy } from "@e280/science";
2
2
  import { effect } from "../effect.js";
3
- import { derive, signal } from "../porcelain.js";
3
+ import { derived, signal } from "../porcelain.js";
4
4
  export default Science.suite({
5
5
  "basic": test(async () => {
6
6
  const a = signal(1);
7
7
  const b = signal(10);
8
- const product = derive(() => a.get() * b.get());
8
+ const product = derived(() => a.get() * b.get());
9
9
  expect(product.get()).is(10);
10
10
  await a.set(2);
11
11
  expect(product.get()).is(20);
@@ -13,7 +13,7 @@ export default Science.suite({
13
13
  "effect reacts to derived changes": test(async () => {
14
14
  const a = signal(1);
15
15
  const b = signal(10);
16
- const product = derive(() => a.value * b.value);
16
+ const product = derived(() => a.value * b.value);
17
17
  let mutations = 0;
18
18
  effect(() => {
19
19
  void product.get();
@@ -31,7 +31,7 @@ export default Science.suite({
31
31
  "effect doesn't overreact to derived": test(async () => {
32
32
  const a = signal(1);
33
33
  const b = signal(10);
34
- const product = signal.derive(() => a.value * b.value);
34
+ const product = signal.derived(() => a.value * b.value);
35
35
  const derivedSpy = spy(() => { });
36
36
  product.on(derivedSpy);
37
37
  let mutations = 0;
@@ -51,7 +51,7 @@ export default Science.suite({
51
51
  "derived.on": test(async () => {
52
52
  const a = signal(1);
53
53
  const b = signal(10);
54
- const product = signal.derive(() => a.value * b.value);
54
+ const product = signal.derived(() => a.value * b.value);
55
55
  expect(product.value).is(10);
56
56
  const mole = spy((_v) => { });
57
57
  product.on(mole);
@@ -64,7 +64,7 @@ export default Science.suite({
64
64
  "derived.on not called if result doesn't change": test(async () => {
65
65
  const a = signal(1);
66
66
  const b = signal(10);
67
- const product = signal.derive(() => a.value * b.value);
67
+ const product = signal.derived(() => a.value * b.value);
68
68
  expect(product.value).is(10);
69
69
  const mole = spy((_v) => { });
70
70
  product.on(mole);
@@ -81,11 +81,11 @@ export default Science.suite({
81
81
  "basic": test(async () => {
82
82
  const a = signal(1);
83
83
  const b = signal(10);
84
- const product = derive(() => a() * b());
84
+ const product = derived(() => a() * b());
85
85
  expect(product()).is(10);
86
86
  await a(2);
87
87
  expect(product()).is(20);
88
88
  }),
89
89
  }),
90
90
  });
91
- //# sourceMappingURL=derive.test.js.map
91
+ //# sourceMappingURL=derived.test.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"derived.test.js","sourceRoot":"","sources":["../../../s/signals/tests/derived.test.ts"],"names":[],"mappings":"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"}
@@ -1,8 +1,8 @@
1
1
  import { Lazy } from "./lazy.js";
2
2
  import { Signal } from "./signal.js";
3
- import { Derive } from "./derive.js";
4
- export type Signaly<V> = Signal<V> | Derive<V> | Lazy<V>;
5
- export type SignalyFn<V> = SignalFn<V> | DeriveFn<V> | LazyFn<V>;
3
+ import { Derived } from "./derived.js";
4
+ export type Signaly<V> = Signal<V> | Derived<V> | Lazy<V>;
5
+ export type SignalyFn<V> = SignalFn<V> | DerivedFn<V> | LazyFn<V>;
6
6
  export type SignalOptions = {
7
7
  compare: (a: any, b: any) => boolean;
8
8
  };
@@ -16,7 +16,7 @@ export type LazyFn<V> = {
16
16
  (): V;
17
17
  core: Lazy<V>;
18
18
  } & Lazy<V>;
19
- export type DeriveFn<V> = {
19
+ export type DerivedFn<V> = {
20
20
  (): V;
21
- core: Derive<V>;
22
- } & Derive<V>;
21
+ core: Derived<V>;
22
+ } & Derived<V>;
@@ -1,5 +1,5 @@
1
1
  import { deep } from "@e280/stz";
2
- import { derive } from "../../signals/porcelain.js";
2
+ import { derived } from "../../signals/porcelain.js";
3
3
  export class Branch {
4
4
  parent;
5
5
  selector;
@@ -9,7 +9,7 @@ export class Branch {
9
9
  this.parent = parent;
10
10
  this.selector = selector;
11
11
  this.options = options;
12
- this.#immutable = derive(() => {
12
+ this.#immutable = derived(() => {
13
13
  const state = selector(parent.state);
14
14
  return deep.freeze(options.clone(state));
15
15
  }, { compare: deep.equal });
@@ -1 +1 @@
1
- {"version":3,"file":"branch.js","sourceRoot":"","sources":["../../../s/tree/parts/branch.ts"],"names":[],"mappings":"AACA,OAAO,EAAC,IAAI,EAAC,MAAM,WAAW,CAAA;AAC9B,OAAO,EAAC,MAAM,EAAC,MAAM,4BAA4B,CAAA;AAIjD,MAAM,OAAO,MAAM;IAIR;IACA;IACA;IALV,UAAU,CAAsB;IAEhC,YACU,MAAyB,EACzB,QAAkC,EAClC,OAAgB;QAFhB,WAAM,GAAN,MAAM,CAAmB;QACzB,aAAQ,GAAR,QAAQ,CAA0B;QAClC,YAAO,GAAP,OAAO,CAAS;QAGzB,IAAI,CAAC,UAAU,GAAG,MAAM,CAAC,GAAG,EAAE;YAC7B,MAAM,KAAK,GAAG,QAAQ,CAAC,MAAM,CAAC,KAAY,CAAC,CAAA;YAC3C,OAAO,IAAI,CAAC,MAAM,CAAC,OAAO,CAAC,KAAK,CAAC,KAAK,CAAC,CAAiB,CAAA;QACzD,CAAC,EAAE,EAAC,OAAO,EAAE,IAAI,CAAC,KAAK,EAAC,CAAC,CAAA;IAC1B,CAAC;IAED,IAAI,KAAK;QACR,OAAO,IAAI,CAAC,UAAU,CAAC,GAAG,EAAE,CAAA;IAC7B,CAAC;IAED,IAAI,EAAE;QACL,OAAO,IAAI,CAAC,UAAU,CAAC,EAAE,CAAA;IAC1B,CAAC;IAED,KAAK,CAAC,MAAM,CAAC,OAAmB;QAC/B,MAAM,IAAI,CAAC,MAAM,CAAC,MAAM,CAAC,WAAW,CAAC,EAAE,CACtC,OAAO,CAAC,IAAI,CAAC,QAAQ,CAAC,WAAW,CAAC,CAAC,CACnC,CAAA;QACD,OAAO,IAAI,CAAC,UAAU,CAAC,GAAG,EAAE,CAAA;IAC7B,CAAC;IAED,MAAM,CAA0B,QAA0B;QACzD,OAAO,IAAI,MAAM,CAAC,IAAI,EAAE,QAAQ,EAAE,IAAI,CAAC,OAAO,CAAC,CAAA;IAChD,CAAC;CACD"}
1
+ {"version":3,"file":"branch.js","sourceRoot":"","sources":["../../../s/tree/parts/branch.ts"],"names":[],"mappings":"AACA,OAAO,EAAC,IAAI,EAAC,MAAM,WAAW,CAAA;AAC9B,OAAO,EAAC,OAAO,EAAC,MAAM,4BAA4B,CAAA;AAIlD,MAAM,OAAO,MAAM;IAIR;IACA;IACA;IALV,UAAU,CAAuB;IAEjC,YACU,MAAyB,EACzB,QAAkC,EAClC,OAAgB;QAFhB,WAAM,GAAN,MAAM,CAAmB;QACzB,aAAQ,GAAR,QAAQ,CAA0B;QAClC,YAAO,GAAP,OAAO,CAAS;QAGzB,IAAI,CAAC,UAAU,GAAG,OAAO,CAAC,GAAG,EAAE;YAC9B,MAAM,KAAK,GAAG,QAAQ,CAAC,MAAM,CAAC,KAAY,CAAC,CAAA;YAC3C,OAAO,IAAI,CAAC,MAAM,CAAC,OAAO,CAAC,KAAK,CAAC,KAAK,CAAC,CAAiB,CAAA;QACzD,CAAC,EAAE,EAAC,OAAO,EAAE,IAAI,CAAC,KAAK,EAAC,CAAC,CAAA;IAC1B,CAAC;IAED,IAAI,KAAK;QACR,OAAO,IAAI,CAAC,UAAU,CAAC,GAAG,EAAE,CAAA;IAC7B,CAAC;IAED,IAAI,EAAE;QACL,OAAO,IAAI,CAAC,UAAU,CAAC,EAAE,CAAA;IAC1B,CAAC;IAED,KAAK,CAAC,MAAM,CAAC,OAAmB;QAC/B,MAAM,IAAI,CAAC,MAAM,CAAC,MAAM,CAAC,WAAW,CAAC,EAAE,CACtC,OAAO,CAAC,IAAI,CAAC,QAAQ,CAAC,WAAW,CAAC,CAAC,CACnC,CAAA;QACD,OAAO,IAAI,CAAC,UAAU,CAAC,GAAG,EAAE,CAAA;IAC7B,CAAC;IAED,MAAM,CAA0B,QAA0B;QACzD,OAAO,IAAI,MAAM,CAAC,IAAI,EAAE,QAAQ,EAAE,IAAI,CAAC,OAAO,CAAC,CAAA;IAChD,CAAC;CACD"}
@@ -18,7 +18,7 @@ export class Trunk {
18
18
  constructor(state, options = {}) {
19
19
  this.options = processOptions(options);
20
20
  this.#mutable = signal(state);
21
- this.#immutable = signal.derive(() => deep.freeze(this.options.clone(this.#mutable.get())));
21
+ this.#immutable = signal.derived(() => deep.freeze(this.options.clone(this.#mutable.get())));
22
22
  }
23
23
  get state() {
24
24
  return this.#immutable.get();
@@ -1 +1 @@
1
- {"version":3,"file":"trunk.js","sourceRoot":"","sources":["../../../s/tree/parts/trunk.ts"],"names":[],"mappings":"AACA,OAAO,EAAC,IAAI,EAAC,MAAM,WAAW,CAAA;AAC9B,OAAO,EAAC,MAAM,EAAC,MAAM,aAAa,CAAA;AAClC,OAAO,EAAC,MAAM,EAAC,MAAM,4BAA4B,CAAA;AACjD,OAAO,EAAC,UAAU,EAAC,MAAM,kBAAkB,CAAA;AAG3C,OAAO,EAAC,YAAY,EAAC,MAAM,mBAAmB,CAAA;AAC9C,OAAO,EAAC,cAAc,EAAC,MAAM,4BAA4B,CAAA;AAGzD,MAAM,OAAO,KAAK;IACjB,MAAM,CAAC,KAAK,GAAG,UAAU,CAAA;IACzB,MAAM,CAAC,SAAS,GAAG,CAAwB,KAAQ,EAAgB,EAAE,CAAC,CAAC;QACtE,OAAO,EAAE,KAAK;QACd,IAAI,EAAE,EAAE;QACR,MAAM,EAAE,EAAE;KACV,CAAC,CAAA;IAEF,OAAO,CAAS;IAEhB,UAAU,CAAsB;IAChC,QAAQ,CAAW;IACnB,aAAa,GAAG,CAAC,CAAA;IAEjB,YAAY,KAAQ,EAAE,UAA4B,EAAE;QACnD,IAAI,CAAC,OAAO,GAAG,cAAc,CAAC,OAAO,CAAC,CAAA;QACtC,IAAI,CAAC,QAAQ,GAAG,MAAM,CAAC,KAAK,CAAC,CAAA;QAC7B,IAAI,CAAC,UAAU,GAAG,MAAM,CAAC,MAAM,CAAC,GAAG,EAAE,CACpC,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,OAAO,CAAC,KAAK,CAAC,IAAI,CAAC,QAAQ,CAAC,GAAG,EAAE,CAAC,CAAiB,CACpE,CAAA;IACF,CAAC;IAED,IAAI,KAAK;QACR,OAAO,IAAI,CAAC,UAAU,CAAC,GAAG,EAAE,CAAA;IAC7B,CAAC;IAED,IAAI,EAAE;QACL,OAAO,IAAI,CAAC,UAAU,CAAC,EAAE,CAAA;IAC1B,CAAC;IAED,KAAK,CAAC,MAAM,CAAC,OAAmB;QAC/B,MAAM,QAAQ,GAAG,IAAI,CAAC,OAAO,CAAC,KAAK,CAAC,IAAI,CAAC,QAAQ,CAAC,GAAG,EAAE,CAAC,CAAA;QACxD,IAAI,IAAI,CAAC,aAAa,GAAG,CAAC;YACzB,MAAM,IAAI,KAAK,CAAC,gCAAgC,CAAC,CAAA;QAClD,IAAI,CAAC;YACJ,IAAI,CAAC,aAAa,EAAE,CAAA;YACpB,MAAM,KAAK,GAAG,IAAI,CAAC,QAAQ,CAAC,GAAG,EAAE,CAAA;YACjC,OAAO,CAAC,KAAK,CAAC,CAAA;YACd,MAAM,QAAQ,GAAG,KAAK,CAAA;YACtB,MAAM,SAAS,GAAG,CAAC,IAAI,CAAC,KAAK,CAAC,QAAQ,EAAE,QAAQ,CAAC,CAAA;YACjD,IAAI,SAAS;gBACZ,MAAM,IAAI,CAAC,SAAS,CAAC,QAAQ,CAAC,CAAA;QAChC,CAAC;gBACO,CAAC;YAAC,IAAI,CAAC,aAAa,EAAE,CAAA;QAAC,CAAC;QAChC,OAAO,IAAI,CAAC,UAAU,CAAC,GAAG,EAAE,CAAA;IAC7B,CAAC;IAED,KAAK,CAAC,SAAS,CAAC,KAAQ;QACvB,MAAM,IAAI,CAAC,QAAQ,CAAC,OAAO,CAAC,KAAK,CAAC,CAAA;IACnC,CAAC;IAED,MAAM,CAA0B,QAA0B;QACzD,OAAO,IAAI,MAAM,CAAC,IAAI,EAAE,QAAQ,EAAE,IAAI,CAAC,OAAO,CAAC,CAAA;IAChD,CAAC;IAED,YAAY,CACV,KAAa,EACb,QAAqC;QAEtC,OAAO,IAAI,YAAY,CAAC,KAAK,EAAE,IAAI,EAAE,QAAQ,EAAE,IAAI,CAAC,OAAO,CAAC,CAAA;IAC7D,CAAC"}
1
+ {"version":3,"file":"trunk.js","sourceRoot":"","sources":["../../../s/tree/parts/trunk.ts"],"names":[],"mappings":"AACA,OAAO,EAAC,IAAI,EAAC,MAAM,WAAW,CAAA;AAC9B,OAAO,EAAC,MAAM,EAAC,MAAM,aAAa,CAAA;AAClC,OAAO,EAAC,MAAM,EAAC,MAAM,4BAA4B,CAAA;AACjD,OAAO,EAAC,UAAU,EAAC,MAAM,kBAAkB,CAAA;AAG3C,OAAO,EAAC,YAAY,EAAC,MAAM,mBAAmB,CAAA;AAC9C,OAAO,EAAC,cAAc,EAAC,MAAM,4BAA4B,CAAA;AAGzD,MAAM,OAAO,KAAK;IACjB,MAAM,CAAC,KAAK,GAAG,UAAU,CAAA;IACzB,MAAM,CAAC,SAAS,GAAG,CAAwB,KAAQ,EAAgB,EAAE,CAAC,CAAC;QACtE,OAAO,EAAE,KAAK;QACd,IAAI,EAAE,EAAE;QACR,MAAM,EAAE,EAAE;KACV,CAAC,CAAA;IAEF,OAAO,CAAS;IAEhB,UAAU,CAAuB;IACjC,QAAQ,CAAW;IACnB,aAAa,GAAG,CAAC,CAAA;IAEjB,YAAY,KAAQ,EAAE,UAA4B,EAAE;QACnD,IAAI,CAAC,OAAO,GAAG,cAAc,CAAC,OAAO,CAAC,CAAA;QACtC,IAAI,CAAC,QAAQ,GAAG,MAAM,CAAC,KAAK,CAAC,CAAA;QAC7B,IAAI,CAAC,UAAU,GAAG,MAAM,CAAC,OAAO,CAAC,GAAG,EAAE,CACrC,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,OAAO,CAAC,KAAK,CAAC,IAAI,CAAC,QAAQ,CAAC,GAAG,EAAE,CAAC,CAAiB,CACpE,CAAA;IACF,CAAC;IAED,IAAI,KAAK;QACR,OAAO,IAAI,CAAC,UAAU,CAAC,GAAG,EAAE,CAAA;IAC7B,CAAC;IAED,IAAI,EAAE;QACL,OAAO,IAAI,CAAC,UAAU,CAAC,EAAE,CAAA;IAC1B,CAAC;IAED,KAAK,CAAC,MAAM,CAAC,OAAmB;QAC/B,MAAM,QAAQ,GAAG,IAAI,CAAC,OAAO,CAAC,KAAK,CAAC,IAAI,CAAC,QAAQ,CAAC,GAAG,EAAE,CAAC,CAAA;QACxD,IAAI,IAAI,CAAC,aAAa,GAAG,CAAC;YACzB,MAAM,IAAI,KAAK,CAAC,gCAAgC,CAAC,CAAA;QAClD,IAAI,CAAC;YACJ,IAAI,CAAC,aAAa,EAAE,CAAA;YACpB,MAAM,KAAK,GAAG,IAAI,CAAC,QAAQ,CAAC,GAAG,EAAE,CAAA;YACjC,OAAO,CAAC,KAAK,CAAC,CAAA;YACd,MAAM,QAAQ,GAAG,KAAK,CAAA;YACtB,MAAM,SAAS,GAAG,CAAC,IAAI,CAAC,KAAK,CAAC,QAAQ,EAAE,QAAQ,CAAC,CAAA;YACjD,IAAI,SAAS;gBACZ,MAAM,IAAI,CAAC,SAAS,CAAC,QAAQ,CAAC,CAAA;QAChC,CAAC;gBACO,CAAC;YAAC,IAAI,CAAC,aAAa,EAAE,CAAA;QAAC,CAAC;QAChC,OAAO,IAAI,CAAC,UAAU,CAAC,GAAG,EAAE,CAAA;IAC7B,CAAC;IAED,KAAK,CAAC,SAAS,CAAC,KAAQ;QACvB,MAAM,IAAI,CAAC,QAAQ,CAAC,OAAO,CAAC,KAAK,CAAC,CAAA;IACnC,CAAC;IAED,MAAM,CAA0B,QAA0B;QACzD,OAAO,IAAI,MAAM,CAAC,IAAI,EAAE,QAAQ,EAAE,IAAI,CAAC,OAAO,CAAC,CAAA;IAChD,CAAC;IAED,YAAY,CACV,KAAa,EACb,QAAqC;QAEtC,OAAO,IAAI,YAAY,CAAC,KAAK,EAAE,IAAI,EAAE,QAAQ,EAAE,IAAI,CAAC,OAAO,CAAC,CAAA;IAC7D,CAAC"}
@@ -1 +0,0 @@
1
- {"version":3,"file":"derive.js","sourceRoot":"","sources":["../../s/signals/derive.ts"],"names":[],"mappings":"AACA,OAAO,EAAC,eAAe,EAAC,MAAM,aAAa,CAAA;AAC3C,OAAO,EAAC,QAAQ,EAAC,MAAM,qBAAqB,CAAA;AAC5C,OAAO,EAAC,OAAO,EAAC,MAAM,uBAAuB,CAAA;AAE7C,OAAO,EAAC,cAAc,EAAC,MAAM,4BAA4B,CAAA;AAEzD,MAAM,OAAO,MAAU,SAAQ,QAAW;IACzC,QAAQ,CAAY;IAEpB,YAAY,OAAgB,EAAE,OAAgC;QAC7D,MAAM,OAAO,GAAG,OAAO,EAAE,OAAO,IAAI,cAAc,CAAA;QAClD,MAAM,EAAC,MAAM,EAAE,OAAO,EAAC,GAAG,eAAe,CAAC,OAAO,EAAE,KAAK,IAAG,EAAE;YAC5D,MAAM,KAAK,GAAG,OAAO,EAAE,CAAA;YACvB,MAAM,SAAS,GAAG,CAAC,OAAO,CAAC,IAAI,CAAC,KAAK,EAAE,KAAK,CAAC,CAAA;YAC7C,IAAI,SAAS,EAAE,CAAC;gBACf,IAAI,CAAC,KAAK,GAAG,KAAK,CAAA;gBAClB,MAAM,OAAO,CAAC,GAAG,CAAC;oBACjB,OAAO,CAAC,WAAW,CAAC,IAAI,CAAC;oBACzB,IAAI,CAAC,EAAE,CAAC,GAAG,CAAC,KAAK,CAAC;iBAClB,CAAC,CAAA;YACH,CAAC;QACF,CAAC,CAAC,CAAA;QACF,KAAK,CAAC,MAAM,CAAC,CAAA;QACb,IAAI,CAAC,QAAQ,GAAG,OAAO,CAAA;IACxB,CAAC;IAED,OAAO;QACN,KAAK,CAAC,OAAO,EAAE,CAAA;QACf,IAAI,CAAC,QAAQ,EAAE,CAAA;IAChB,CAAC;IAED,IAAI,IAAI;QACP,OAAO,IAAI,CAAA;IACZ,CAAC;IAED,EAAE;QACD,MAAM,IAAI,GAAG,IAAiB,CAAA;QAE9B,SAAS,CAAC;YACT,OAAO,IAAI,CAAC,GAAG,EAAE,CAAA;QAClB,CAAC;QAED,CAAC,CAAC,IAAI,GAAG,IAAI,CAAA;QACb,CAAC,CAAC,GAAG,GAAG,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,IAAI,CAAC,CAAA;QAC3B,CAAC,CAAC,EAAE,GAAG,IAAI,CAAC,EAAE,CAAA;QACd,CAAC,CAAC,OAAO,GAAG,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC,CAAA;QACnC,CAAC,CAAC,EAAE,GAAG,IAAI,CAAC,EAAE,CAAC,IAAI,CAAC,IAAI,CAAC,CAAA;QAEzB,MAAM,CAAC,cAAc,CAAC,CAAC,EAAE,OAAO,EAAE;YACjC,GAAG,EAAE,GAAG,EAAE,CAAC,IAAI,CAAC,KAAK;SACrB,CAAC,CAAA;QAEF,MAAM,CAAC,cAAc,CAAC,CAAC,EAAE,OAAO,EAAE;YACjC,GAAG,EAAE,GAAG,EAAE,CAAC,IAAI,CAAC,KAAK;SACrB,CAAC,CAAA;QAEF,OAAO,CAAgB,CAAA;IACxB,CAAC;CACD"}
@@ -1 +0,0 @@
1
- {"version":3,"file":"derive.test.js","sourceRoot":"","sources":["../../../s/signals/tests/derive.test.ts"],"names":[],"mappings":"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"}