atom.io 0.29.3 → 0.29.4
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/data/dist/index.d.ts +18 -94
- package/data/dist/index.js +1 -2
- package/data/src/join.ts +13 -14
- package/dist/{chunk-HH7WBSVS.js → chunk-TCINPEYE.js} +260 -2
- package/internal/dist/index.d.ts +58 -67
- package/internal/dist/index.js +1 -2
- package/internal/src/index.ts +1 -0
- package/internal/src/junction.ts +375 -0
- package/internal/src/store/store.ts +4 -6
- package/internal/src/transaction/build-transaction.ts +1 -2
- package/json/dist/index.js +1 -2
- package/package.json +10 -8
- package/dist/chunk-IZXKJOQQ.js +0 -256
package/internal/dist/index.d.ts
CHANGED
|
@@ -1,7 +1,8 @@
|
|
|
1
1
|
import * as atom_io from 'atom.io';
|
|
2
|
-
import { MutableAtomFamilyToken, MutableAtomToken, RegularAtomFamilyToken, RegularAtomToken, AtomFamilyToken, AtomToken, WritableSelectorFamilyToken, WritableSelectorToken, ReadonlySelectorFamilyToken, ReadonlySelectorToken, SelectorFamilyToken, SelectorToken, WritableFamilyToken, WritableToken, ReadableFamilyToken, ReadableToken, MoleculeConstructor, MoleculeFamilyToken, MoleculeKey, TransactionToken, TransactionUpdate, TransactionOptions, ActorToolkit, MoleculeFamily, MoleculeToken, TimelineManageable, StateUpdate, TokenType, FamilyMetadata,
|
|
3
|
-
import { Json
|
|
2
|
+
import { MutableAtomFamilyToken, MutableAtomToken, RegularAtomFamilyToken, RegularAtomToken, AtomFamilyToken, AtomToken, WritableSelectorFamilyToken, WritableSelectorToken, ReadonlySelectorFamilyToken, ReadonlySelectorToken, SelectorFamilyToken, SelectorToken, WritableFamilyToken, WritableToken, ReadableFamilyToken, ReadableToken, MoleculeConstructor, MoleculeFamilyToken, MoleculeKey, TransactionToken, TransactionUpdate, TransactionOptions, ActorToolkit, MoleculeFamily, MoleculeToken, MoleculeFamilyOptions, StateCreation, StateDisposal, MoleculeParams, TimelineManageable, StateUpdate, TokenType, FamilyMetadata, MoleculeCreation, MoleculeDisposal, TimelineUpdate, TimelineOptions, TimelineToken, AtomIOLogger, Logger, MutableAtomOptions, MutableAtomFamilyOptions, RegularAtomOptions, RegularAtomFamilyOptions, ReadonlySelectorFamilyOptions, WritableSelectorFamilyOptions, KeyedStateUpdate, ReadonlySelectorOptions, WritableSelectorOptions, SetterToolkit, UpdateHandler, TransactionUpdateHandler } from 'atom.io';
|
|
3
|
+
import { Json, Canonical, JsonInterface } from 'atom.io/json';
|
|
4
4
|
import { Join } from 'atom.io/data';
|
|
5
|
+
import { Refinement } from 'atom.io/introspection';
|
|
5
6
|
import { Store as Store$1, Func as Func$1 } from 'atom.io/internal';
|
|
6
7
|
|
|
7
8
|
declare const FAMILY_MEMBER_TOKEN_TYPES: {
|
|
@@ -11,7 +12,7 @@ declare const FAMILY_MEMBER_TOKEN_TYPES: {
|
|
|
11
12
|
readonly readonly_selector_family: "readonly_selector";
|
|
12
13
|
readonly molecule_family: "molecule";
|
|
13
14
|
};
|
|
14
|
-
declare function counterfeit<T extends Transceiver<any>, J extends Json
|
|
15
|
+
declare function counterfeit<T extends Transceiver<any>, J extends Json.Serializable, K extends Canonical, Key extends K>(token: MutableAtomFamilyToken<T, J, K>, key: Key): MutableAtomToken<T, J>;
|
|
15
16
|
declare function counterfeit<T, K extends Canonical, Key extends K>(token: RegularAtomFamilyToken<T, K>, key: Key): RegularAtomToken<T>;
|
|
16
17
|
declare function counterfeit<T, K extends Canonical, Key extends K>(token: AtomFamilyToken<T, K>, key: Key): AtomToken<T>;
|
|
17
18
|
declare function counterfeit<T, K extends Canonical, Key extends K>(token: WritableSelectorFamilyToken<T, K>, key: Key): WritableSelectorToken<T>;
|
|
@@ -21,25 +22,13 @@ declare function counterfeit<T, K extends Canonical, Key extends K>(token: Writa
|
|
|
21
22
|
declare function counterfeit<T, K extends Canonical, Key extends K>(token: ReadableFamilyToken<T, K>, key: Key): ReadableToken<T>;
|
|
22
23
|
declare function counterfeit<M extends MoleculeConstructor>(token: MoleculeFamilyToken<M>, key: MoleculeKey<M>): MoleculeKey<M>;
|
|
23
24
|
|
|
24
|
-
type primitive = boolean | number | string | null;
|
|
25
|
-
declare namespace Json {
|
|
26
|
-
type Serializable = primitive | Readonly<{
|
|
27
|
-
[key: string]: Serializable;
|
|
28
|
-
}> | ReadonlyArray<Serializable>;
|
|
29
|
-
type Object<Key extends string = string, Value extends Serializable = Serializable> = Record<Key, Value>;
|
|
30
|
-
type Array<Element extends Serializable = Serializable> = ReadonlyArray<Element>;
|
|
31
|
-
}
|
|
32
|
-
|
|
33
|
-
type Refinement<Unrefined, Refined extends Unrefined> = (value: Unrefined) => value is Refined;
|
|
34
|
-
type Cardinality = `1:1` | `1:n` | `n:n`;
|
|
35
|
-
|
|
36
25
|
interface JunctionEntries<Content extends Json.Object | null> extends Json.Object {
|
|
37
26
|
readonly relations: [string, string[]][];
|
|
38
27
|
readonly contents: [string, Content][];
|
|
39
28
|
}
|
|
40
29
|
interface JunctionSchema<ASide extends string, BSide extends string> extends Json.Object {
|
|
41
30
|
readonly between: [a: ASide, b: BSide];
|
|
42
|
-
readonly cardinality:
|
|
31
|
+
readonly cardinality: `1:1` | `1:n` | `n:n`;
|
|
43
32
|
}
|
|
44
33
|
type BaseExternalStoreConfiguration = {
|
|
45
34
|
addRelation: (a: string, b: string) => void;
|
|
@@ -59,6 +48,7 @@ type Empty<Obj extends object> = {
|
|
|
59
48
|
};
|
|
60
49
|
type ExternalStoreConfiguration<Content extends Json.Object | null> = Content extends Json.Object ? BaseExternalStoreConfiguration & ExternalStoreWithContentConfiguration<Content> : BaseExternalStoreConfiguration & Empty<ExternalStoreWithContentConfiguration<Json.Object>>;
|
|
61
50
|
type JunctionAdvancedConfiguration<Content extends Json.Object | null> = {
|
|
51
|
+
warn?: (...args: any[]) => void;
|
|
62
52
|
externalStore?: ExternalStoreConfiguration<Content>;
|
|
63
53
|
isContent?: Refinement<unknown, Content>;
|
|
64
54
|
makeContentKey?: (a: string, b: string) => string;
|
|
@@ -67,11 +57,12 @@ type JunctionJSON<ASide extends string, BSide extends string, Content extends Js
|
|
|
67
57
|
declare class Junction<const ASide extends string, const BSide extends string, const Content extends Json.Object | null = null> {
|
|
68
58
|
readonly a: ASide;
|
|
69
59
|
readonly b: BSide;
|
|
70
|
-
readonly cardinality:
|
|
60
|
+
readonly cardinality: `1:1` | `1:n` | `n:n`;
|
|
71
61
|
readonly relations: Map<string, Set<string>>;
|
|
72
62
|
readonly contents: Map<string, Content>;
|
|
73
63
|
isContent: Refinement<unknown, Content> | null;
|
|
74
64
|
makeContentKey: (a: string, b: string) => string;
|
|
65
|
+
warn?: (...args: any[]) => void;
|
|
75
66
|
getRelatedKeys(key: string): Set<string> | undefined;
|
|
76
67
|
protected addRelation(a: string, b: string): void;
|
|
77
68
|
protected deleteRelation(a: string, b: string): void;
|
|
@@ -178,7 +169,7 @@ declare function deposit<T>(state: Selector<T>): SelectorToken<T>;
|
|
|
178
169
|
declare function deposit<T>(state: WritableState<T>): WritableToken<T>;
|
|
179
170
|
declare function deposit<T>(state: ReadableState<T>): ReadableToken<T>;
|
|
180
171
|
declare function deposit<T, K extends Canonical>(state: RegularAtomFamily<T, K>): RegularAtomFamilyToken<T, K>;
|
|
181
|
-
declare function deposit<T extends Transceiver<any>, J extends Json
|
|
172
|
+
declare function deposit<T extends Transceiver<any>, J extends Json.Serializable, K extends Canonical>(state: MutableAtomFamily<T, J, K>): MutableAtomFamilyToken<T, J, K>;
|
|
182
173
|
declare function deposit<T>(state: AtomFamily<T, any>): AtomFamilyToken<T, any>;
|
|
183
174
|
declare function deposit<T>(state: WritableSelectorFamily<T, any>): WritableSelectorFamilyToken<T, any>;
|
|
184
175
|
declare function deposit<T>(state: ReadonlySelectorFamily<T, any>): ReadonlySelectorFamilyToken<T, any>;
|
|
@@ -198,6 +189,35 @@ interface Lineage {
|
|
|
198
189
|
declare function newest<T extends Lineage>(scion: T): T;
|
|
199
190
|
declare function eldest<T extends Lineage>(scion: T): T;
|
|
200
191
|
|
|
192
|
+
declare function createMoleculeFamily<M extends MoleculeConstructor>(store: Store, options: MoleculeFamilyOptions<M>): MoleculeFamilyToken<M>;
|
|
193
|
+
|
|
194
|
+
declare function disposeMolecule<M extends MoleculeConstructor>(token: MoleculeToken<M>, store: Store): void;
|
|
195
|
+
|
|
196
|
+
declare class Molecule<M extends MoleculeConstructor> implements MoleculeToken<M> {
|
|
197
|
+
readonly key: MoleculeKey<M>;
|
|
198
|
+
readonly type = "molecule";
|
|
199
|
+
stringKey: string;
|
|
200
|
+
family?: MoleculeFamilyToken<M>;
|
|
201
|
+
readonly subject: Subject<StateCreation<any> | StateDisposal<any>>;
|
|
202
|
+
tokens: Map<string, ReadableToken<any>>;
|
|
203
|
+
above: Map<string, Molecule<any>>;
|
|
204
|
+
below: Map<string, Molecule<any>>;
|
|
205
|
+
joins: Map<string, Join<any, any, any, any>>;
|
|
206
|
+
instance: InstanceType<M>;
|
|
207
|
+
constructor(ctx: Molecule<any> | Molecule<any>[] | undefined, key: MoleculeKey<M>, family?: MoleculeFamilyToken<M>);
|
|
208
|
+
}
|
|
209
|
+
|
|
210
|
+
declare function growMoleculeInStore<T extends Transceiver<any>, J extends Json.Serializable, K extends Canonical>(molecule: Molecule<any>, family: MutableAtomFamilyToken<T, J, K>, store: Store): MutableAtomToken<T, J>;
|
|
211
|
+
declare function growMoleculeInStore<T, K extends Canonical>(molecule: Molecule<any>, family: RegularAtomFamilyToken<T, K>, store: Store): RegularAtomToken<T>;
|
|
212
|
+
declare function growMoleculeInStore<T, K extends Canonical>(molecule: Molecule<any>, family: AtomFamilyToken<T, K>, store: Store): AtomToken<T>;
|
|
213
|
+
declare function growMoleculeInStore<T, K extends Canonical>(molecule: Molecule<any>, family: WritableSelectorFamilyToken<T, K>, store: Store): WritableSelectorToken<T>;
|
|
214
|
+
declare function growMoleculeInStore<T, K extends Canonical>(molecule: Molecule<any>, family: ReadonlySelectorFamilyToken<T, K>, store: Store): ReadonlySelectorToken<T>;
|
|
215
|
+
declare function growMoleculeInStore<T, K extends Canonical>(molecule: Molecule<any>, family: SelectorFamilyToken<T, K>, store: Store): SelectorToken<T>;
|
|
216
|
+
declare function growMoleculeInStore<T, K extends Canonical>(molecule: Molecule<any>, family: WritableFamilyToken<T, K>, store: Store): WritableToken<T>;
|
|
217
|
+
declare function growMoleculeInStore<T, K extends Canonical>(molecule: Molecule<any>, family: ReadableFamilyToken<T, K>, store: Store): ReadableToken<T>;
|
|
218
|
+
|
|
219
|
+
declare function makeMoleculeInStore<M extends MoleculeConstructor>(store: Store, context: MoleculeToken<M> | MoleculeToken<M>[], familyToken: MoleculeFamilyToken<M>, key: MoleculeKey<M>, ...params: MoleculeParams<M>): MoleculeToken<M>;
|
|
220
|
+
|
|
201
221
|
type OperationProgress = {
|
|
202
222
|
open: false;
|
|
203
223
|
} | {
|
|
@@ -339,7 +359,7 @@ declare function withdraw<T>(token: SelectorToken<T>, store: Store): Selector<T>
|
|
|
339
359
|
declare function withdraw<T>(token: WritableToken<T>, store: Store): WritableState<T>;
|
|
340
360
|
declare function withdraw<T>(token: ReadableToken<T>, store: Store): ReadableState<T>;
|
|
341
361
|
declare function withdraw<T, K extends Canonical>(token: RegularAtomFamilyToken<T, K>, store: Store): RegularAtomFamily<T, K>;
|
|
342
|
-
declare function withdraw<T extends Transceiver<any>, J extends Json
|
|
362
|
+
declare function withdraw<T extends Transceiver<any>, J extends Json.Serializable, K extends Canonical>(token: MutableAtomFamilyToken<T, J, K>, store: Store): MutableAtomFamily<T, J, K>;
|
|
343
363
|
declare function withdraw<T, K extends Canonical>(token: AtomFamilyToken<T>, store: Store): AtomFamily<T, any>;
|
|
344
364
|
declare function withdraw<T, K extends Canonical>(token: ReadonlySelectorFamilyToken<T, K>, store: Store): ReadonlySelectorFamily<T, any>;
|
|
345
365
|
declare function withdraw<T, K extends Canonical>(token: WritableSelectorFamilyToken<T, K>, store: Store): WritableSelectorFamily<T, any>;
|
|
@@ -352,28 +372,28 @@ declare function withdraw<T extends Func>(token: TransactionToken<T>, store: Sto
|
|
|
352
372
|
declare function withdraw<T>(token: TimelineToken<T>, store: Store): Timeline<T extends TimelineManageable ? T : never>;
|
|
353
373
|
declare function withdraw<T, M extends MoleculeConstructor>(token: MoleculeToken<M> | ReadableToken<T>, store: Store): Molecule<M> | ReadableState<T>;
|
|
354
374
|
|
|
355
|
-
interface Transceiver<Signal extends Json
|
|
375
|
+
interface Transceiver<Signal extends Json.Serializable> {
|
|
356
376
|
do: (update: Signal) => number | `OUT_OF_RANGE` | null;
|
|
357
377
|
undo: (update: Signal) => void;
|
|
358
378
|
subscribe: (key: string, fn: (update: Signal) => void) => () => void;
|
|
359
379
|
cacheUpdateNumber: number;
|
|
360
380
|
getUpdateNumber: (update: Signal) => number;
|
|
361
381
|
}
|
|
362
|
-
declare function isTransceiver(value: unknown): value is Transceiver<Json
|
|
382
|
+
declare function isTransceiver(value: unknown): value is Transceiver<Json.Serializable>;
|
|
363
383
|
type TransceiverMode = `playback` | `record` | `transaction`;
|
|
364
384
|
type Signal<TVR extends Transceiver<any>> = TVR extends Transceiver<infer S> ? S : never;
|
|
365
385
|
|
|
366
|
-
declare function createMutableAtom<T extends Transceiver<any>, J extends Json
|
|
386
|
+
declare function createMutableAtom<T extends Transceiver<any>, J extends Json.Serializable>(store: Store, options: MutableAtomOptions<T, J>, family: FamilyMetadata | undefined): MutableAtomToken<T, J>;
|
|
367
387
|
|
|
368
|
-
declare function createMutableAtomFamily<T extends Transceiver<any>, J extends Json
|
|
388
|
+
declare function createMutableAtomFamily<T extends Transceiver<any>, J extends Json.Serializable, K extends string>(store: Store, options: MutableAtomFamilyOptions<T, J, K>, internalRoles?: string[]): MutableAtomFamilyToken<T, J, K>;
|
|
369
389
|
|
|
370
|
-
declare const getJsonFamily: <Core extends Transceiver<Json
|
|
390
|
+
declare const getJsonFamily: <Core extends Transceiver<Json.Serializable>, SerializableCore extends Json.Serializable, Key extends string>(mutableAtomFamily: MutableAtomFamilyToken<Core, SerializableCore, Key>, store: Store) => WritableSelectorFamily<SerializableCore, Key>;
|
|
371
391
|
|
|
372
|
-
declare const getJsonToken: <Core extends Transceiver<any>, SerializableCore extends Json
|
|
392
|
+
declare const getJsonToken: <Core extends Transceiver<any>, SerializableCore extends Json.Serializable>(store: Store, mutableAtomToken: MutableAtomToken<Core, SerializableCore>) => WritableSelectorToken<SerializableCore>;
|
|
373
393
|
|
|
374
|
-
declare const getUpdateFamily: <Core extends Transceiver<Json
|
|
394
|
+
declare const getUpdateFamily: <Core extends Transceiver<Json.Serializable>, SerializableCore extends Json.Serializable, Key extends string>(mutableAtomFamily: MutableAtomFamilyToken<Core, SerializableCore, Key>, store: Store) => AtomFamily<Signal<Core>, Key>;
|
|
375
395
|
|
|
376
|
-
declare const getUpdateToken: <Core extends Transceiver<any>, SerializableCore extends Json
|
|
396
|
+
declare const getUpdateToken: <Core extends Transceiver<any>, SerializableCore extends Json.Serializable>(mutableAtomToken: MutableAtomToken<Core, SerializableCore>) => RegularAtomToken<Signal<Core>>;
|
|
377
397
|
|
|
378
398
|
/**
|
|
379
399
|
* @internal Give the tracker a transceiver state and a store, and it will
|
|
@@ -387,10 +407,10 @@ declare class Tracker<Mutable extends Transceiver<any>> {
|
|
|
387
407
|
private unsubscribeFromState;
|
|
388
408
|
private observeCore;
|
|
389
409
|
private updateCore;
|
|
390
|
-
mutableState: MutableAtomToken<Mutable, Json
|
|
410
|
+
mutableState: MutableAtomToken<Mutable, Json.Serializable>;
|
|
391
411
|
latestUpdateState: RegularAtomToken<typeof this.Update | null>;
|
|
392
412
|
dispose: () => void;
|
|
393
|
-
constructor(mutableState: MutableAtomToken<Mutable, Json
|
|
413
|
+
constructor(mutableState: MutableAtomToken<Mutable, Json.Serializable>, store: Store);
|
|
394
414
|
}
|
|
395
415
|
|
|
396
416
|
declare class FamilyTracker<Core extends Transceiver<any>, FamilyMemberKey extends Canonical> {
|
|
@@ -405,7 +425,7 @@ declare function arbitrary(random?: () => number): string;
|
|
|
405
425
|
declare function createRegularAtom<T>(store: Store, options: RegularAtomOptions<T>, family: FamilyMetadata | undefined): RegularAtomToken<T>;
|
|
406
426
|
|
|
407
427
|
declare function createStandaloneAtom<T>(store: Store, options: RegularAtomOptions<T>): RegularAtomToken<T>;
|
|
408
|
-
declare function createStandaloneAtom<T extends Transceiver<any>, J extends Json
|
|
428
|
+
declare function createStandaloneAtom<T extends Transceiver<any>, J extends Json.Serializable>(store: Store, options: MutableAtomOptions<T, J>): MutableAtomToken<T, J>;
|
|
409
429
|
|
|
410
430
|
declare function disposeAtom(atomToken: AtomToken<unknown>, store: Store): void;
|
|
411
431
|
|
|
@@ -438,7 +458,7 @@ declare function cacheValue<T extends Promise<any>>(key: string, value: T, subje
|
|
|
438
458
|
declare const readCachedValue: <T>(token: ReadableState<any>, target: Store) => T;
|
|
439
459
|
declare const evictCachedValue: (key: string, target: Store) => void;
|
|
440
460
|
|
|
441
|
-
declare function createAtomFamily<T extends Transceiver<any>, J extends Json
|
|
461
|
+
declare function createAtomFamily<T extends Transceiver<any>, J extends Json.Serializable, K extends Canonical>(store: Store, options: MutableAtomFamilyOptions<T, J, K>): MutableAtomFamilyToken<T, J, K>;
|
|
442
462
|
declare function createAtomFamily<T, K extends Canonical>(store: Store, options: RegularAtomFamilyOptions<T, K>): RegularAtomFamilyToken<T, K>;
|
|
443
463
|
|
|
444
464
|
declare function createReadonlySelectorFamily<T, K extends Canonical>(store: Store, options: ReadonlySelectorFamilyOptions<T, K>, internalRoles?: string[]): ReadonlySelectorFamilyToken<T, K>;
|
|
@@ -452,7 +472,7 @@ declare function disposeFromStore(store: Store, token: MoleculeToken<any> | Read
|
|
|
452
472
|
declare function disposeFromStore<K extends Canonical>(store: Store, token: ReadableFamilyToken<any, K>, key: K): void;
|
|
453
473
|
declare function disposeFromStore<M extends MoleculeConstructor>(store: Store, token: MoleculeFamilyToken<M>, key: MoleculeKey<M>): void;
|
|
454
474
|
|
|
455
|
-
declare function findInStore<T extends Transceiver<any>, J extends Json
|
|
475
|
+
declare function findInStore<T extends Transceiver<any>, J extends Json.Serializable, K extends Canonical, Key extends K>(store: Store, token: MutableAtomFamilyToken<T, J, K>, key: Key): MutableAtomToken<T, J, K>;
|
|
456
476
|
declare function findInStore<T, K extends Canonical, Key extends K>(store: Store, token: RegularAtomFamilyToken<T, K>, key: Key): RegularAtomToken<T, K>;
|
|
457
477
|
declare function findInStore<T, K extends Canonical, Key extends K>(store: Store, token: AtomFamilyToken<T, K>, key: Key): AtomToken<T, K>;
|
|
458
478
|
declare function findInStore<T, K extends Canonical, Key extends K>(store: Store, token: WritableSelectorFamilyToken<T, K>, key: Key): WritableSelectorToken<T, K>;
|
|
@@ -461,7 +481,7 @@ declare function findInStore<T, K extends Canonical, Key extends K>(store: Store
|
|
|
461
481
|
declare function findInStore<T, K extends Canonical, Key extends K>(store: Store, token: WritableFamilyToken<T, K>, key: Key): WritableToken<T, K>;
|
|
462
482
|
declare function findInStore<T, K extends Canonical, Key extends K>(store: Store, token: ReadableFamilyToken<T, K>, key: Key): ReadableToken<T, K>;
|
|
463
483
|
|
|
464
|
-
declare function initFamilyMemberInStore<T extends Transceiver<any>, J extends Json
|
|
484
|
+
declare function initFamilyMemberInStore<T extends Transceiver<any>, J extends Json.Serializable, K extends Canonical, Key extends K>(store: Store, token: MutableAtomFamilyToken<T, J, K>, key: Key): MutableAtomToken<T, J, K>;
|
|
465
485
|
declare function initFamilyMemberInStore<T, K extends Canonical, Key extends K>(store: Store, token: RegularAtomFamilyToken<T, K>, key: Key): RegularAtomToken<T, K>;
|
|
466
486
|
declare function initFamilyMemberInStore<T, K extends Canonical, Key extends K>(store: Store, token: AtomFamilyToken<T, K>, key: Key): AtomToken<T, K>;
|
|
467
487
|
declare function initFamilyMemberInStore<T, K extends Canonical, Key extends K>(store: Store, token: WritableSelectorFamilyToken<T, K>, key: Key): WritableSelectorToken<T, K>;
|
|
@@ -470,7 +490,7 @@ declare function initFamilyMemberInStore<T, K extends Canonical, Key extends K>(
|
|
|
470
490
|
declare function initFamilyMemberInStore<T, K extends Canonical, Key extends K>(store: Store, token: WritableFamilyToken<T, K>, key: Key): WritableToken<T, K>;
|
|
471
491
|
declare function initFamilyMemberInStore<T, K extends Canonical, Key extends K>(store: Store, token: ReadableFamilyToken<T, K>, key: Key): ReadableToken<T, K>;
|
|
472
492
|
|
|
473
|
-
declare function seekInStore<T extends Transceiver<any>, J extends Json
|
|
493
|
+
declare function seekInStore<T extends Transceiver<any>, J extends Json.Serializable, K extends Canonical, Key extends K>(store: Store, token: MutableAtomFamilyToken<T, J, K>, key: Key): MutableAtomToken<T, J, K> | undefined;
|
|
474
494
|
declare function seekInStore<T, K extends Canonical, Key extends K>(store: Store, token: RegularAtomFamilyToken<T, K>, key: Key): RegularAtomToken<T, K> | undefined;
|
|
475
495
|
declare function seekInStore<T, K extends Canonical, Key extends K>(store: Store, token: AtomFamilyToken<T, K>, key: Key): AtomToken<T, K> | undefined;
|
|
476
496
|
declare function seekInStore<T, K extends Canonical, Key extends K>(store: Store, token: WritableSelectorFamilyToken<T, K>, key: Key): WritableSelectorToken<T, K> | undefined;
|
|
@@ -534,41 +554,12 @@ declare class LazyMap<K, V> extends Map<K, V> {
|
|
|
534
554
|
delete(key: K): boolean;
|
|
535
555
|
}
|
|
536
556
|
|
|
537
|
-
declare function createMoleculeFamily<M extends MoleculeConstructor>(store: Store, options: MoleculeFamilyOptions<M>): MoleculeFamilyToken<M>;
|
|
538
|
-
|
|
539
|
-
declare function disposeMolecule<M extends MoleculeConstructor>(token: MoleculeToken<M>, store: Store): void;
|
|
540
|
-
|
|
541
|
-
declare class Molecule<M extends MoleculeConstructor> implements MoleculeToken<M> {
|
|
542
|
-
readonly key: MoleculeKey<M>;
|
|
543
|
-
readonly type = "molecule";
|
|
544
|
-
stringKey: string;
|
|
545
|
-
family?: MoleculeFamilyToken<M>;
|
|
546
|
-
readonly subject: Subject<StateCreation<any> | StateDisposal<any>>;
|
|
547
|
-
tokens: Map<string, ReadableToken<any>>;
|
|
548
|
-
above: Map<string, Molecule<any>>;
|
|
549
|
-
below: Map<string, Molecule<any>>;
|
|
550
|
-
joins: Map<string, Join<any, any, any, any>>;
|
|
551
|
-
instance: InstanceType<M>;
|
|
552
|
-
constructor(ctx: Molecule<any> | Molecule<any>[] | undefined, key: MoleculeKey<M>, family?: MoleculeFamilyToken<M>);
|
|
553
|
-
}
|
|
554
|
-
|
|
555
|
-
declare function growMoleculeInStore<T extends Transceiver<any>, J extends Json$1.Serializable, K extends Canonical>(molecule: Molecule<any>, family: MutableAtomFamilyToken<T, J, K>, store: Store): MutableAtomToken<T, J>;
|
|
556
|
-
declare function growMoleculeInStore<T, K extends Canonical>(molecule: Molecule<any>, family: RegularAtomFamilyToken<T, K>, store: Store): RegularAtomToken<T>;
|
|
557
|
-
declare function growMoleculeInStore<T, K extends Canonical>(molecule: Molecule<any>, family: AtomFamilyToken<T, K>, store: Store): AtomToken<T>;
|
|
558
|
-
declare function growMoleculeInStore<T, K extends Canonical>(molecule: Molecule<any>, family: WritableSelectorFamilyToken<T, K>, store: Store): WritableSelectorToken<T>;
|
|
559
|
-
declare function growMoleculeInStore<T, K extends Canonical>(molecule: Molecule<any>, family: ReadonlySelectorFamilyToken<T, K>, store: Store): ReadonlySelectorToken<T>;
|
|
560
|
-
declare function growMoleculeInStore<T, K extends Canonical>(molecule: Molecule<any>, family: SelectorFamilyToken<T, K>, store: Store): SelectorToken<T>;
|
|
561
|
-
declare function growMoleculeInStore<T, K extends Canonical>(molecule: Molecule<any>, family: WritableFamilyToken<T, K>, store: Store): WritableToken<T>;
|
|
562
|
-
declare function growMoleculeInStore<T, K extends Canonical>(molecule: Molecule<any>, family: ReadableFamilyToken<T, K>, store: Store): ReadableToken<T>;
|
|
563
|
-
|
|
564
|
-
declare function makeMoleculeInStore<M extends MoleculeConstructor>(store: Store, context: MoleculeToken<M> | MoleculeToken<M>[], familyToken: MoleculeFamilyToken<M>, key: MoleculeKey<M>, ...params: MoleculeParams<M>): MoleculeToken<M>;
|
|
565
|
-
|
|
566
557
|
type AtomIOToken = MoleculeFamilyToken<any> | MoleculeToken<any> | ReadableFamilyToken<any, any> | ReadableToken<any> | TimelineToken<any> | TransactionToken<any>;
|
|
567
558
|
declare function prettyPrintTokenType(token: AtomIOToken): string;
|
|
568
559
|
|
|
569
560
|
declare class NotFoundError extends Error {
|
|
570
561
|
constructor(token: AtomIOToken, store: Store);
|
|
571
|
-
constructor(familyToken: AtomIOToken, key: Json
|
|
562
|
+
constructor(familyToken: AtomIOToken, key: Json.Serializable, store: Store);
|
|
572
563
|
}
|
|
573
564
|
|
|
574
565
|
declare const createReadonlySelector: <T>(store: Store, options: ReadonlySelectorOptions<T>, family: FamilyMetadata | undefined) => ReadonlySelectorToken<T>;
|
|
@@ -626,7 +617,7 @@ type RegularAtom<T> = AtomIOState & {
|
|
|
626
617
|
default: T | (() => T);
|
|
627
618
|
cleanup?: () => void;
|
|
628
619
|
};
|
|
629
|
-
type MutableAtom<T extends Transceiver<any>, J extends Json
|
|
620
|
+
type MutableAtom<T extends Transceiver<any>, J extends Json.Serializable> = AtomIOState & JsonInterface<T, J> & {
|
|
630
621
|
type: `mutable_atom`;
|
|
631
622
|
default: T | (() => T);
|
|
632
623
|
cleanup?: () => void;
|
|
@@ -650,7 +641,7 @@ type RegularAtomFamily<T, K extends Canonical> = RegularAtomFamilyToken<T, K> &
|
|
|
650
641
|
install: (store: Store) => void;
|
|
651
642
|
internalRoles: string[] | undefined;
|
|
652
643
|
};
|
|
653
|
-
type MutableAtomFamily<T extends Transceiver<any>, J extends Json
|
|
644
|
+
type MutableAtomFamily<T extends Transceiver<any>, J extends Json.Serializable, K extends Canonical> = JsonInterface<T, J> & MutableAtomFamilyToken<T, J, K> & {
|
|
654
645
|
(key: K): MutableAtomToken<T, J>;
|
|
655
646
|
subject: Subject<StateCreation<MutableAtomToken<T, J>> | StateDisposal<MutableAtomToken<T, J>>>;
|
|
656
647
|
install: (store: Store) => void;
|
|
@@ -673,4 +664,4 @@ type SelectorFamily<T, K extends Canonical> = ReadonlySelectorFamily<T, K> | Wri
|
|
|
673
664
|
type WritableFamily<T, K extends Canonical> = AtomFamily<T, K> | WritableSelectorFamily<T, K>;
|
|
674
665
|
type ReadableFamily<T, K extends Canonical> = AtomFamily<T, K> | SelectorFamily<T, K>;
|
|
675
666
|
|
|
676
|
-
export { type Atom, type AtomFamily, type AtomIOState, type AtomIOToken, type AtomKey, type ChildStore, type EnvironmentData, FAMILY_MEMBER_TOKEN_TYPES, FamilyTracker, type Flat, type Func, Future, IMPLICIT, LazyMap, type Lineage, type Modify, Molecule, type MutableAtom, type MutableAtomFamily, NotFoundError, type OperationProgress, type Range, type ReadableFamily, type ReadableState, type ReadonlySelector, type ReadonlySelectorFamily, type ReadonlySelectorKey, type RegularAtom, type RegularAtomFamily, type RootStore, type Selector, type SelectorFamily, type SelectorKey, type Signal, type StateKey, StatefulSubject, Store, Subject, TRANSACTION_PHASES, type Timeline, type TimelineAtomUpdate, type TimelineMoleculeCreation, type TimelineMoleculeDisposal, type TimelineSelectorUpdate, type TimelineStateCreation, type TimelineStateDisposal, type TimelineTransactionUpdate, Tracker, type Transaction, type TransactionEpoch, type TransactionPhase, type TransactionProgress, type Transceiver, type TransceiverMode, type Withdrawable, type WritableFamily, type WritableSelector, type WritableSelectorFamily, type WritableState, abortTransaction, actUponStore, applyTransaction, arbitrary, assignTransactionToContinuity, become, buildTransaction, cacheValue, clearStore, closeOperation, counterfeit, createAtomFamily, createMoleculeFamily, createMutableAtom, createMutableAtomFamily, createReadonlySelector, createReadonlySelectorFamily, createRegularAtom, createRegularAtomFamily, createSelectorFamily, createStandaloneAtom, createStandaloneSelector, createTimeline, createTransaction, createWritableSelector, deposit, disposeAtom, disposeFromStore, disposeMolecule, disposeSelector, eldest, evictCachedValue, findInStore, getContinuityKey, getEnvironmentData, getEpochNumberOfAction, getEpochNumberOfContinuity, getFromStore, getJsonFamily, getJsonToken, getSelectorDependencyKeys, getUpdateFamily, getUpdateToken, growMoleculeInStore, ingestAtomUpdate, ingestCreationEvent, ingestDisposalEvent, ingestMoleculeCreationEvent, ingestMoleculeDisposalEvent, ingestSelectorUpdate, ingestTransactionUpdate, initFamilyMemberInStore, isAtomDefault, isAtomKey, isChildStore, isDone, isReadonlySelectorKey, isRootStore, isSelectorKey, isStateKey, isTransceiver, makeMoleculeInStore, markAtomAsDefault, markAtomAsNotDefault, markDone, newest, openOperation, prettyPrintTokenType, readCachedValue, readOrComputeValue, recallState, registerSelector, seekInStore, setAtomOrSelector, setEpochNumberOfAction, setEpochNumberOfContinuity, setIntoStore, subscribeInStore, subscribeToRootAtoms, subscribeToState, subscribeToTimeline, subscribeToTransaction, timeTravel, traceAllSelectorAtoms, traceSelectorAtoms, updateSelectorAtoms, withdraw };
|
|
667
|
+
export { type Atom, type AtomFamily, type AtomIOState, type AtomIOToken, type AtomKey, type BaseExternalStoreConfiguration, type ChildStore, type Empty, type EnvironmentData, type ExternalStoreConfiguration, type ExternalStoreWithContentConfiguration, FAMILY_MEMBER_TOKEN_TYPES, FamilyTracker, type Flat, type Func, Future, IMPLICIT, Junction, type JunctionAdvancedConfiguration, type JunctionEntries, type JunctionJSON, type JunctionSchema, LazyMap, type Lineage, type Modify, Molecule, type MutableAtom, type MutableAtomFamily, NotFoundError, type OperationProgress, type Range, type ReadableFamily, type ReadableState, type ReadonlySelector, type ReadonlySelectorFamily, type ReadonlySelectorKey, type RegularAtom, type RegularAtomFamily, type RootStore, type Selector, type SelectorFamily, type SelectorKey, type Signal, type StateKey, StatefulSubject, Store, Subject, TRANSACTION_PHASES, type Timeline, type TimelineAtomUpdate, type TimelineMoleculeCreation, type TimelineMoleculeDisposal, type TimelineSelectorUpdate, type TimelineStateCreation, type TimelineStateDisposal, type TimelineTransactionUpdate, Tracker, type Transaction, type TransactionEpoch, type TransactionPhase, type TransactionProgress, type Transceiver, type TransceiverMode, type Withdrawable, type WritableFamily, type WritableSelector, type WritableSelectorFamily, type WritableState, abortTransaction, actUponStore, applyTransaction, arbitrary, assignTransactionToContinuity, become, buildTransaction, cacheValue, clearStore, closeOperation, counterfeit, createAtomFamily, createMoleculeFamily, createMutableAtom, createMutableAtomFamily, createReadonlySelector, createReadonlySelectorFamily, createRegularAtom, createRegularAtomFamily, createSelectorFamily, createStandaloneAtom, createStandaloneSelector, createTimeline, createTransaction, createWritableSelector, deposit, disposeAtom, disposeFromStore, disposeMolecule, disposeSelector, eldest, evictCachedValue, findInStore, getContinuityKey, getEnvironmentData, getEpochNumberOfAction, getEpochNumberOfContinuity, getFromStore, getJsonFamily, getJsonToken, getSelectorDependencyKeys, getUpdateFamily, getUpdateToken, growMoleculeInStore, ingestAtomUpdate, ingestCreationEvent, ingestDisposalEvent, ingestMoleculeCreationEvent, ingestMoleculeDisposalEvent, ingestSelectorUpdate, ingestTransactionUpdate, initFamilyMemberInStore, isAtomDefault, isAtomKey, isChildStore, isDone, isReadonlySelectorKey, isRootStore, isSelectorKey, isStateKey, isTransceiver, makeMoleculeInStore, markAtomAsDefault, markAtomAsNotDefault, markDone, newest, openOperation, prettyPrintTokenType, readCachedValue, readOrComputeValue, recallState, registerSelector, seekInStore, setAtomOrSelector, setEpochNumberOfAction, setEpochNumberOfContinuity, setIntoStore, subscribeInStore, subscribeToRootAtoms, subscribeToState, subscribeToTimeline, subscribeToTransaction, timeTravel, traceAllSelectorAtoms, traceSelectorAtoms, updateSelectorAtoms, withdraw };
|
package/internal/dist/index.js
CHANGED
|
@@ -1,3 +1,2 @@
|
|
|
1
|
-
export { FAMILY_MEMBER_TOKEN_TYPES, FamilyTracker, Future, IMPLICIT, LazyMap, Molecule, NotFoundError, StatefulSubject, Store, Subject, TRANSACTION_PHASES, Tracker, abortTransaction, actUponStore, applyTransaction, arbitrary, assignTransactionToContinuity, become, buildTransaction, cacheValue, clearStore, closeOperation, counterfeit, createAtomFamily, createMoleculeFamily, createMutableAtom, createMutableAtomFamily, createReadonlySelector, createReadonlySelectorFamily, createRegularAtom, createRegularAtomFamily, createSelectorFamily, createStandaloneAtom, createStandaloneSelector, createTimeline, createTransaction, createWritableSelector, deposit, disposeAtom, disposeFromStore, disposeMolecule, disposeSelector, eldest, evictCachedValue, findInStore, getContinuityKey, getEnvironmentData, getEpochNumberOfAction, getEpochNumberOfContinuity, getFromStore, getJsonFamily, getJsonToken, getSelectorDependencyKeys, getUpdateFamily, getUpdateToken, growMoleculeInStore, ingestAtomUpdate, ingestCreationEvent, ingestDisposalEvent, ingestMoleculeCreationEvent, ingestMoleculeDisposalEvent, ingestSelectorUpdate, ingestTransactionUpdate, initFamilyMemberInStore, isAtomDefault, isAtomKey, isChildStore, isDone, isReadonlySelectorKey, isRootStore, isSelectorKey, isStateKey, isTransceiver, makeMoleculeInStore, markAtomAsDefault, markAtomAsNotDefault, markDone, newest, openOperation, prettyPrintTokenType, readCachedValue, readOrComputeValue, recallState, registerSelector, seekInStore, setAtomOrSelector, setEpochNumberOfAction, setEpochNumberOfContinuity, setIntoStore, subscribeInStore, subscribeToRootAtoms, subscribeToState, subscribeToTimeline, subscribeToTransaction, timeTravel, traceAllSelectorAtoms, traceSelectorAtoms, updateSelectorAtoms, withdraw } from '../../dist/chunk-
|
|
2
|
-
import '../../dist/chunk-IZXKJOQQ.js';
|
|
1
|
+
export { FAMILY_MEMBER_TOKEN_TYPES, FamilyTracker, Future, IMPLICIT, Junction, LazyMap, Molecule, NotFoundError, StatefulSubject, Store, Subject, TRANSACTION_PHASES, Tracker, abortTransaction, actUponStore, applyTransaction, arbitrary, assignTransactionToContinuity, become, buildTransaction, cacheValue, clearStore, closeOperation, counterfeit, createAtomFamily, createMoleculeFamily, createMutableAtom, createMutableAtomFamily, createReadonlySelector, createReadonlySelectorFamily, createRegularAtom, createRegularAtomFamily, createSelectorFamily, createStandaloneAtom, createStandaloneSelector, createTimeline, createTransaction, createWritableSelector, deposit, disposeAtom, disposeFromStore, disposeMolecule, disposeSelector, eldest, evictCachedValue, findInStore, getContinuityKey, getEnvironmentData, getEpochNumberOfAction, getEpochNumberOfContinuity, getFromStore, getJsonFamily, getJsonToken, getSelectorDependencyKeys, getUpdateFamily, getUpdateToken, growMoleculeInStore, ingestAtomUpdate, ingestCreationEvent, ingestDisposalEvent, ingestMoleculeCreationEvent, ingestMoleculeDisposalEvent, ingestSelectorUpdate, ingestTransactionUpdate, initFamilyMemberInStore, isAtomDefault, isAtomKey, isChildStore, isDone, isReadonlySelectorKey, isRootStore, isSelectorKey, isStateKey, isTransceiver, makeMoleculeInStore, markAtomAsDefault, markAtomAsNotDefault, markDone, newest, openOperation, prettyPrintTokenType, readCachedValue, readOrComputeValue, recallState, registerSelector, seekInStore, setAtomOrSelector, setEpochNumberOfAction, setEpochNumberOfContinuity, setIntoStore, subscribeInStore, subscribeToRootAtoms, subscribeToState, subscribeToTimeline, subscribeToTransaction, timeTravel, traceAllSelectorAtoms, traceSelectorAtoms, updateSelectorAtoms, withdraw } from '../../dist/chunk-TCINPEYE.js';
|
|
3
2
|
import '../../dist/chunk-XWL6SNVU.js';
|
package/internal/src/index.ts
CHANGED