atom.io 0.23.4 → 0.24.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/data/dist/index.cjs +51 -27
- package/data/dist/index.d.ts +5 -4
- package/data/dist/index.js +625 -9
- package/data/src/join.ts +74 -46
- package/dist/chunk-BF4MVQF6.js +44 -0
- package/dist/index.cjs +27 -0
- package/dist/index.d.ts +63 -18
- package/dist/index.js +27 -3
- package/immortal/dist/index.cjs +4 -262
- package/immortal/dist/index.d.ts +4 -94
- package/immortal/dist/index.js +3 -215
- package/immortal/src/index.ts +0 -2
- package/immortal/src/seek-state.ts +10 -11
- package/internal/dist/index.cjs +279 -111
- package/internal/dist/index.d.ts +63 -93
- package/internal/dist/index.js +273 -88
- package/internal/src/families/dispose-from-store.ts +11 -7
- package/internal/src/families/find-in-store.ts +2 -2
- package/internal/src/families/init-family-member.ts +37 -25
- package/internal/src/families/seek-in-store.ts +11 -15
- package/internal/src/get-environment-data.ts +0 -4
- package/internal/src/index.ts +1 -0
- package/internal/src/ingest-updates/ingest-creation-disposal.ts +8 -8
- package/internal/src/molecule/create-molecule-family.ts +30 -0
- package/internal/src/molecule/dispose-molecule.ts +76 -0
- package/internal/src/molecule/grow-molecule-in-store.ts +89 -0
- package/internal/src/molecule/index.ts +5 -0
- package/internal/src/molecule/make-molecule-in-store.ts +122 -0
- package/internal/src/molecule/molecule-internal.ts +48 -0
- package/internal/src/not-found-error.ts +4 -3
- package/internal/src/set-state/emit-update.ts +1 -2
- package/internal/src/store/deposit.ts +16 -30
- package/internal/src/store/store.ts +7 -12
- package/internal/src/store/withdraw.ts +30 -19
- package/internal/src/timeline/create-timeline.ts +7 -6
- package/internal/src/transaction/build-transaction.ts +2 -1
- package/introspection/dist/index.cjs +29 -33
- package/introspection/dist/index.js +1 -1
- package/introspection/src/auditor.ts +6 -6
- package/json/dist/index.cjs +4 -4
- package/json/dist/index.js +7 -8
- package/json/src/select-json-family.ts +6 -5
- package/package.json +2 -2
- package/react-devtools/dist/index.js +2 -3
- package/realtime-client/dist/index.js +362 -15
- package/realtime-react/dist/index.cjs +1 -326
- package/realtime-react/dist/index.d.ts +1 -14
- package/realtime-react/dist/index.js +1 -1
- package/realtime-react/src/use-sync-continuity.ts +2 -2
- package/realtime-server/dist/index.cjs +3 -151
- package/realtime-server/dist/index.d.ts +1 -3
- package/realtime-server/dist/index.js +2 -18
- package/realtime-server/src/index.ts +0 -2
- package/realtime-server/src/realtime-continuity-synchronizer.ts +1 -1
- package/realtime-testing/dist/index.cjs +4 -82
- package/realtime-testing/dist/index.js +2 -4
- package/realtime-testing/src/setup-realtime-test.tsx +2 -3
- package/src/dispose-state.ts +2 -2
- package/src/index.ts +1 -0
- package/src/logger.ts +2 -0
- package/src/molecule.ts +133 -0
- package/src/timeline.ts +3 -3
- package/src/transaction.ts +15 -13
- package/dist/chunk-6MLFYN32.js +0 -18
- package/dist/chunk-7DT3PVS3.js +0 -598
- package/dist/chunk-GVHKIJ3G.js +0 -329
- package/dist/chunk-O47EQUM6.js +0 -29
- package/dist/chunk-OAYGID5B.js +0 -27
- package/dist/chunk-PNIHPILQ.js +0 -8
- package/immortal/src/make-molecule.ts +0 -234
- package/immortal/src/molecule.ts +0 -167
- package/realtime-server/src/realtime-state-synchronizer.ts +0 -23
package/internal/dist/index.d.ts
CHANGED
|
@@ -1,9 +1,7 @@
|
|
|
1
|
-
import
|
|
1
|
+
import * as atom_io from 'atom.io';
|
|
2
|
+
import { Func, TransactionToken, TransactionUpdate, TransactionOptions, TransactorsWithRunAndEnv, RegularAtomToken, MutableAtomToken, AtomToken, WritableSelectorToken, ReadonlySelectorToken, SelectorToken, WritableToken, MoleculeToken, MoleculeFamily, MoleculeFamilyToken, ReadableToken, TimelineManageable, Flat, StateUpdate, TokenType, FamilyMetadata, StateCreation, StateDisposal, MoleculeConstructor, MoleculeCreation, MoleculeDisposal, TimelineUpdate, TimelineOptions, TimelineToken, WritableSelectorFamily, MutableAtomFamily, RegularAtomFamily, ReadonlySelectorFamily, AtomIOLogger, Logger, AtomFamily, ReadableFamily, SelectorFamily, WritableFamily, RegularAtomFamilyToken, MutableAtomFamilyToken, AtomFamilyToken, ReadonlySelectorFamilyToken, WritableSelectorFamilyToken, SelectorFamilyToken, ReadableFamilyToken, WritableFamilyToken, MutableAtomOptions, MutableAtomFamilyOptions, RegularAtomOptions, RegularAtomFamilyOptions, ReadonlySelectorFamilyOptions, WritableSelectorFamilyOptions, MoleculeKey, KeyedStateUpdate, MoleculeFamilyOptions, MK, MoleculeParams, ReadonlySelectorOptions, WritableSelectorOptions, Transactors, UpdateHandler, TransactionUpdateHandler } from 'atom.io';
|
|
2
3
|
import { Json, JsonInterface } from 'atom.io/json';
|
|
3
|
-
import {
|
|
4
|
-
import * as Internal from 'atom.io/internal';
|
|
5
|
-
import { Store as Store$1, Subject as Subject$1, Transceiver as Transceiver$1 } from 'atom.io/internal';
|
|
6
|
-
import { Join, JoinToken } from 'atom.io/data';
|
|
4
|
+
import { Join } from 'atom.io/data';
|
|
7
5
|
|
|
8
6
|
type primitive = boolean | number | string | null;
|
|
9
7
|
|
|
@@ -152,68 +150,13 @@ declare function deposit<T>(state: Selector<T>): SelectorToken<T>;
|
|
|
152
150
|
declare function deposit<T>(state: WritableState<T>): WritableToken<T>;
|
|
153
151
|
declare function deposit<K extends Json.Serializable, S extends {
|
|
154
152
|
[key: string]: any;
|
|
155
|
-
}, P extends any[]>(state: Molecule
|
|
153
|
+
}, P extends any[]>(state: Molecule<any>): MoleculeToken<any>;
|
|
156
154
|
declare function deposit<K extends Json.Serializable, S extends {
|
|
157
155
|
[key: string]: any;
|
|
158
|
-
}, P extends any[]>(state: MoleculeFamily
|
|
156
|
+
}, P extends any[]>(state: MoleculeFamily<any>): MoleculeFamilyToken<any>;
|
|
159
157
|
declare function deposit<T extends Func>(state: Transaction<T>): TransactionToken<T>;
|
|
160
158
|
declare function deposit<T>(state: ReadableState<T>): ReadableToken<T>;
|
|
161
159
|
|
|
162
|
-
declare class Molecule<Key extends Json.Serializable> {
|
|
163
|
-
readonly store: Store$1;
|
|
164
|
-
readonly token: MoleculeToken<Key, any, any>;
|
|
165
|
-
readonly type = "molecule";
|
|
166
|
-
get key(): Key;
|
|
167
|
-
readonly family?: MoleculeFamilyToken<Key, any, any>;
|
|
168
|
-
readonly above: Molecule<any>[];
|
|
169
|
-
readonly below: Molecule<any>[];
|
|
170
|
-
readonly tokens: ReadableToken<any>[];
|
|
171
|
-
readonly joins: Join<any, any, any, any>[];
|
|
172
|
-
readonly subject: Subject$1<StateCreation<any> | StateDisposal<any>>;
|
|
173
|
-
constructor(store: Store$1, above: Molecule<any> | Molecule<any>[] | undefined, token: MoleculeToken<Key, any, any>);
|
|
174
|
-
bond<T extends Transceiver$1<any>, J extends Json.Serializable, K extends string>(token: MutableAtomFamilyToken<T, J, K>): MutableAtomToken<T, J>;
|
|
175
|
-
bond<T, K extends Key>(token: RegularAtomFamilyToken<T, K>): RegularAtomToken<T>;
|
|
176
|
-
bond<T, K extends Json.Serializable>(token: WritableSelectorFamilyToken<T, K>): WritableSelectorToken<T>;
|
|
177
|
-
bond<T, K extends Json.Serializable>(token: ReadonlySelectorFamilyToken<T, K>): ReadonlySelectorToken<T>;
|
|
178
|
-
bond<T, K extends Json.Serializable>(token: WritableFamilyToken<T, K>): WritableToken<T>;
|
|
179
|
-
bond<T, K extends Json.Serializable>(token: ReadableFamilyToken<T, K>): ReadableToken<T>;
|
|
180
|
-
spawn<K extends Json.Serializable>(key: K): Molecule<K>;
|
|
181
|
-
with(molecule: Molecule<any>): (key: string) => Molecule<any>;
|
|
182
|
-
detach(child: Molecule<any>): void;
|
|
183
|
-
claim(child: Molecule<any>): void;
|
|
184
|
-
clear(): void;
|
|
185
|
-
join(token: JoinToken<any, any, any, any>): void;
|
|
186
|
-
protected [Symbol.dispose](): void;
|
|
187
|
-
dispose: () => void;
|
|
188
|
-
}
|
|
189
|
-
|
|
190
|
-
type MoleculeConstructor<Key extends Json.Serializable, Struct extends {
|
|
191
|
-
[key: string]: any;
|
|
192
|
-
}, Params extends any[]> = new (context: Molecule<any>[], token: MoleculeToken<Key, Struct, Params>, ...params: Params) => Molecule<Key> & Struct;
|
|
193
|
-
type MoleculeFamilyToken<Key extends Json.Serializable, Struct extends {
|
|
194
|
-
[key: string]: any;
|
|
195
|
-
}, Params extends any[]> = {
|
|
196
|
-
key: string;
|
|
197
|
-
type: `molecule_family`;
|
|
198
|
-
__K?: Key;
|
|
199
|
-
__S?: Struct;
|
|
200
|
-
__P?: Params;
|
|
201
|
-
};
|
|
202
|
-
type MoleculeFamily<Key extends Json.Serializable, Struct extends {
|
|
203
|
-
[key: string]: any;
|
|
204
|
-
}, Params extends any[]> = Flat<MoleculeFamilyToken<Key, Struct, Params> & {
|
|
205
|
-
subject: Internal.Subject<MoleculeCreation<Key> | MoleculeDisposal<Key>>;
|
|
206
|
-
}> & MoleculeConstructor<Key, Struct, Params>;
|
|
207
|
-
type MoleculeToken<Key extends Json.Serializable, Struct extends {
|
|
208
|
-
[key: string]: any;
|
|
209
|
-
}, Params extends any[]> = {
|
|
210
|
-
key: Key;
|
|
211
|
-
type: `molecule`;
|
|
212
|
-
family?: MoleculeFamilyToken<Key, Struct, Params>;
|
|
213
|
-
__S?: Struct;
|
|
214
|
-
__P?: Params;
|
|
215
|
-
};
|
|
216
|
-
|
|
217
160
|
interface Lineage {
|
|
218
161
|
parent: typeof this | null;
|
|
219
162
|
child: typeof this | null;
|
|
@@ -257,10 +200,10 @@ type TimelineStateCreation<T extends ReadableToken<any>> = Flat<StateCreation<T>
|
|
|
257
200
|
type TimelineStateDisposal<T extends ReadableToken<any>> = Flat<StateDisposal<T> & {
|
|
258
201
|
timestamp: number;
|
|
259
202
|
}>;
|
|
260
|
-
type TimelineMoleculeCreation<
|
|
203
|
+
type TimelineMoleculeCreation<M extends MoleculeConstructor> = Flat<MoleculeCreation<M> & {
|
|
261
204
|
timestamp: number;
|
|
262
205
|
}>;
|
|
263
|
-
type TimelineMoleculeDisposal
|
|
206
|
+
type TimelineMoleculeDisposal = Flat<MoleculeDisposal & {
|
|
264
207
|
timestamp: number;
|
|
265
208
|
}>;
|
|
266
209
|
type Timeline<ManagedAtom extends TimelineManageable> = {
|
|
@@ -299,8 +242,12 @@ declare class Store implements Lineage {
|
|
|
299
242
|
selectorGraph: Junction<"upstreamSelectorKey", "downstreamSelectorKey", {
|
|
300
243
|
source: string;
|
|
301
244
|
}>;
|
|
302
|
-
molecules: Map<string, Molecule
|
|
303
|
-
moleculeFamilies: Map<string,
|
|
245
|
+
molecules: Map<string, Molecule<any>>;
|
|
246
|
+
moleculeFamilies: Map<string, atom_io.Flat<atom_io.MoleculeFamilyToken<any> & {
|
|
247
|
+
subject: Subject<atom_io.MoleculeDisposal | atom_io.MoleculeCreation<any>>;
|
|
248
|
+
dependsOn: "all" | "any";
|
|
249
|
+
new: any;
|
|
250
|
+
}>>;
|
|
304
251
|
miscResources: Map<string, Disposable>;
|
|
305
252
|
on: {
|
|
306
253
|
atomCreation: Subject<AtomToken<unknown>>;
|
|
@@ -311,9 +258,9 @@ declare class Store implements Lineage {
|
|
|
311
258
|
transactionCreation: Subject<TransactionToken<Func>>;
|
|
312
259
|
transactionApplying: StatefulSubject<TransactionProgress<Func> | null>;
|
|
313
260
|
operationClose: Subject<OperationProgress>;
|
|
314
|
-
moleculeCreationStart: Subject<MoleculeToken<any
|
|
315
|
-
moleculeCreationDone: Subject<MoleculeToken<any
|
|
316
|
-
moleculeDisposal: Subject<MoleculeToken<any
|
|
261
|
+
moleculeCreationStart: Subject<MoleculeToken<any>>;
|
|
262
|
+
moleculeCreationDone: Subject<MoleculeToken<any>>;
|
|
263
|
+
moleculeDisposal: Subject<MoleculeToken<any>>;
|
|
317
264
|
};
|
|
318
265
|
operation: OperationProgress;
|
|
319
266
|
transactionMeta: TransactionEpoch | TransactionProgress<Func>;
|
|
@@ -331,7 +278,7 @@ declare const IMPLICIT: {
|
|
|
331
278
|
};
|
|
332
279
|
declare const clearStore: (store: Store) => void;
|
|
333
280
|
|
|
334
|
-
type Withdrawable = Atom<any> | AtomFamily<any, any> | Molecule
|
|
281
|
+
type Withdrawable = Atom<any> | AtomFamily<any, any> | Molecule<any> | MoleculeFamily<any> | MutableAtom<any, any> | MutableAtomFamily<any, any, any> | ReadableFamily<any, any> | ReadableState<any> | ReadonlySelector<any> | ReadonlySelectorFamily<any, any> | RegularAtom<any> | RegularAtomFamily<any, any> | Selector<any> | SelectorFamily<any, any> | Timeline<any> | Transaction<any> | WritableFamily<any, any> | WritableSelector<any> | WritableSelectorFamily<any, any> | WritableState<any>;
|
|
335
282
|
declare function withdraw<T>(token: RegularAtomToken<T>, store: Store): RegularAtom<T>;
|
|
336
283
|
declare function withdraw<T extends Transceiver<any>>(token: MutableAtomToken<T, any>, store: Store): MutableAtom<T, any>;
|
|
337
284
|
declare function withdraw<T>(token: AtomToken<T>, store: Store): Atom<T>;
|
|
@@ -346,12 +293,10 @@ declare function withdraw<T, K extends Json.Serializable>(token: AtomFamilyToken
|
|
|
346
293
|
declare function withdraw<T, K extends Json.Serializable>(token: ReadonlySelectorFamilyToken<T, K>, store: Store): ReadonlySelectorFamily<T, any>;
|
|
347
294
|
declare function withdraw<T, K extends Json.Serializable>(token: WritableSelectorFamilyToken<T, K>, store: Store): WritableSelectorFamily<T, any>;
|
|
348
295
|
declare function withdraw<T, K extends Json.Serializable>(token: SelectorFamilyToken<T, K>, store: Store): SelectorFamily<T, any>;
|
|
349
|
-
declare function withdraw<K extends Json.Serializable,
|
|
350
|
-
|
|
351
|
-
|
|
352
|
-
declare function withdraw<
|
|
353
|
-
[key: string]: any;
|
|
354
|
-
}, P extends any[]>(token: MoleculeFamilyToken$1<K, S, P>, store: Store): MoleculeFamily$1<K, S, P>;
|
|
296
|
+
declare function withdraw<T, K extends Json.Serializable>(token: ReadableFamilyToken<T, K>, store: Store): ReadableFamily<T, any>;
|
|
297
|
+
declare function withdraw<T, K extends Json.Serializable>(token: WritableFamilyToken<T, K>, store: Store): WritableFamily<T, any>;
|
|
298
|
+
declare function withdraw<M extends MoleculeConstructor>(token: MoleculeToken<M>, store: Store): Molecule<M>;
|
|
299
|
+
declare function withdraw<M extends MoleculeConstructor>(token: MoleculeFamilyToken<M>, store: Store): MoleculeFamily<M>;
|
|
355
300
|
declare function withdraw<T extends Func>(token: TransactionToken<T>, store: Store): Transaction<T extends Func ? T : never>;
|
|
356
301
|
declare function withdraw<T>(token: TimelineToken<T>, store: Store): Timeline<T extends TimelineManageable ? T : never>;
|
|
357
302
|
|
|
@@ -451,7 +396,7 @@ declare function createRegularAtomFamily<T, K extends Json.Serializable>(options
|
|
|
451
396
|
declare function createSelectorFamily<T, K extends Json.Serializable>(options: WritableSelectorFamilyOptions<T, K>, store: Store): WritableSelectorFamily<T, K>;
|
|
452
397
|
declare function createSelectorFamily<T, K extends Json.Serializable>(options: ReadonlySelectorFamilyOptions<T, K>, store: Store): ReadonlySelectorFamily<T, K>;
|
|
453
398
|
|
|
454
|
-
declare function disposeFromStore(token: MoleculeToken
|
|
399
|
+
declare function disposeFromStore(token: MoleculeToken<any> | ReadableToken<any>, store?: Store): void;
|
|
455
400
|
|
|
456
401
|
declare function findInStore<T extends Transceiver<any>, J extends Json.Serializable, K extends Json.Serializable, Key extends K>(token: MutableAtomFamilyToken<T, J, K>, key: Key, store: Store): MutableAtomToken<T, J>;
|
|
457
402
|
declare function findInStore<T, K extends Json.Serializable, Key extends K>(token: RegularAtomFamilyToken<T, K>, key: Key, store: Store): RegularAtomToken<T>;
|
|
@@ -462,14 +407,14 @@ declare function findInStore<T, K extends Json.Serializable, Key extends K>(toke
|
|
|
462
407
|
declare function findInStore<T, K extends Json.Serializable, Key extends K>(token: WritableFamilyToken<T, K>, key: Key, store: Store): WritableToken<T>;
|
|
463
408
|
declare function findInStore<T, K extends Json.Serializable, Key extends K>(token: ReadableFamilyToken<T, K>, key: Key, store: Store): ReadableToken<T>;
|
|
464
409
|
|
|
465
|
-
declare function
|
|
466
|
-
declare function
|
|
467
|
-
declare function
|
|
468
|
-
declare function
|
|
469
|
-
declare function
|
|
470
|
-
declare function
|
|
471
|
-
declare function
|
|
472
|
-
declare function
|
|
410
|
+
declare function initFamilyMemberInStore<T extends Transceiver<any>, J extends Json.Serializable, K extends Json.Serializable, Key extends K>(token: MutableAtomFamilyToken<T, J, K>, key: Key, store: Store): MutableAtomToken<T, J>;
|
|
411
|
+
declare function initFamilyMemberInStore<T, K extends Json.Serializable, Key extends K>(token: RegularAtomFamilyToken<T, K>, key: Key, store: Store): RegularAtomToken<T>;
|
|
412
|
+
declare function initFamilyMemberInStore<T, K extends Json.Serializable, Key extends K>(token: AtomFamilyToken<T, K>, key: Key, store: Store): AtomToken<T>;
|
|
413
|
+
declare function initFamilyMemberInStore<T, K extends Json.Serializable, Key extends K>(token: WritableSelectorFamilyToken<T, K>, key: Key, store: Store): WritableSelectorToken<T>;
|
|
414
|
+
declare function initFamilyMemberInStore<T, K extends Json.Serializable, Key extends K>(token: ReadonlySelectorFamilyToken<T, K>, key: Key, store: Store): ReadonlySelectorToken<T>;
|
|
415
|
+
declare function initFamilyMemberInStore<T, K extends Json.Serializable, Key extends K>(token: SelectorFamilyToken<T, K>, key: Key, store: Store): SelectorToken<T>;
|
|
416
|
+
declare function initFamilyMemberInStore<T, K extends Json.Serializable, Key extends K>(token: WritableFamilyToken<T, K>, key: Key, store: Store): WritableToken<T>;
|
|
417
|
+
declare function initFamilyMemberInStore<T, K extends Json.Serializable, Key extends K>(token: ReadableFamilyToken<T, K>, key: Key, store: Store): ReadableToken<T>;
|
|
473
418
|
|
|
474
419
|
declare function seekInStore<T extends Transceiver<any>, J extends Json.Serializable, K extends Json.Serializable, Key extends K>(token: MutableAtomFamilyToken<T, J, K>, key: Key, store: Store): MutableAtomToken<T, J> | undefined;
|
|
475
420
|
declare function seekInStore<T, K extends Json.Serializable, Key extends K>(token: RegularAtomFamilyToken<T, K>, key: Key, store: Store): RegularAtomToken<T> | undefined;
|
|
@@ -479,13 +424,9 @@ declare function seekInStore<T, K extends Json.Serializable, Key extends K>(toke
|
|
|
479
424
|
declare function seekInStore<T, K extends Json.Serializable, Key extends K>(token: SelectorFamilyToken<T, K>, key: Key, store: Store): SelectorToken<T> | undefined;
|
|
480
425
|
declare function seekInStore<T, K extends Json.Serializable, Key extends K>(token: WritableFamilyToken<T, K>, key: Key, store: Store): WritableToken<T> | undefined;
|
|
481
426
|
declare function seekInStore<T, K extends Json.Serializable, Key extends K>(token: ReadableFamilyToken<T, K>, key: Key, store: Store): ReadableToken<T> | undefined;
|
|
482
|
-
declare function seekInStore<
|
|
483
|
-
[key: string]: any;
|
|
484
|
-
}>(token: MoleculeFamilyToken$1<K, S, any[]>, key: K, store: Store): MoleculeToken$1<K, S, any[]> | undefined;
|
|
427
|
+
declare function seekInStore<M extends MoleculeConstructor>(token: MoleculeFamilyToken<M>, key: MoleculeKey<M>, store: Store): MoleculeKey<M> | undefined;
|
|
485
428
|
|
|
486
429
|
type EnvironmentData = {
|
|
487
|
-
window: typeof window | undefined;
|
|
488
|
-
global: typeof global | undefined;
|
|
489
430
|
store: Store;
|
|
490
431
|
};
|
|
491
432
|
declare function getEnvironmentData(store: Store): EnvironmentData;
|
|
@@ -499,7 +440,7 @@ declare function ingestAtomUpdate(applying: `newValue` | `oldValue`, atomUpdate:
|
|
|
499
440
|
declare function ingestCreationEvent(update: StateCreation<any>, applying: `newValue` | `oldValue`, store: Store): void;
|
|
500
441
|
declare function ingestDisposalEvent(update: StateDisposal<any>, applying: `newValue` | `oldValue`, store: Store): void;
|
|
501
442
|
declare function ingestMoleculeCreationEvent(update: MoleculeCreation<any>, applying: `newValue` | `oldValue`, store: Store): void;
|
|
502
|
-
declare function ingestMoleculeDisposalEvent(update: MoleculeDisposal
|
|
443
|
+
declare function ingestMoleculeDisposalEvent(update: MoleculeDisposal, applying: `newValue` | `oldValue`, store: Store): void;
|
|
503
444
|
|
|
504
445
|
declare function ingestSelectorUpdate(applying: `newValue` | `oldValue`, selectorUpdate: TimelineSelectorUpdate<any>, store: Store): void;
|
|
505
446
|
|
|
@@ -534,7 +475,36 @@ declare class LazyMap<K, V> extends Map<K, V> {
|
|
|
534
475
|
delete(key: K): boolean;
|
|
535
476
|
}
|
|
536
477
|
|
|
537
|
-
|
|
478
|
+
declare function createMoleculeFamily<M extends MoleculeConstructor>(options: MoleculeFamilyOptions<M>, store: Store): MoleculeFamilyToken<M>;
|
|
479
|
+
|
|
480
|
+
declare function disposeMolecule<M extends MoleculeConstructor>(token: MoleculeToken<M>, store: Store): void;
|
|
481
|
+
|
|
482
|
+
declare class Molecule<M extends MoleculeConstructor> implements MoleculeToken<M> {
|
|
483
|
+
readonly key: MK<M>;
|
|
484
|
+
readonly type = "molecule";
|
|
485
|
+
stringKey: string;
|
|
486
|
+
family?: MoleculeFamilyToken<M>;
|
|
487
|
+
readonly subject: Subject<StateCreation<any> | StateDisposal<any>>;
|
|
488
|
+
tokens: Map<string, ReadableToken<any>>;
|
|
489
|
+
above: Map<string, Molecule<any>>;
|
|
490
|
+
below: Map<string, Molecule<any>>;
|
|
491
|
+
joins: Map<string, Join<any, any, any, any>>;
|
|
492
|
+
instance: InstanceType<M>;
|
|
493
|
+
constructor(ctx: Molecule<any> | Molecule<any>[] | undefined, key: MK<M>, family?: MoleculeFamilyToken<M>);
|
|
494
|
+
}
|
|
495
|
+
|
|
496
|
+
declare function growMoleculeInStore<T extends Transceiver<any>, J extends Json.Serializable, K extends Json.Serializable>(molecule: Molecule<any>, family: MutableAtomFamily<T, J, K>, store: Store): MutableAtomToken<T, J>;
|
|
497
|
+
declare function growMoleculeInStore<T, K extends Json.Serializable>(molecule: Molecule<any>, family: RegularAtomFamily<T, K>, store: Store): RegularAtomToken<T>;
|
|
498
|
+
declare function growMoleculeInStore<T, K extends Json.Serializable>(molecule: Molecule<any>, family: AtomFamily<T, K>, store: Store): AtomToken<T>;
|
|
499
|
+
declare function growMoleculeInStore<T, K extends Json.Serializable>(molecule: Molecule<any>, family: WritableSelectorFamily<T, K>, store: Store): WritableSelectorToken<T>;
|
|
500
|
+
declare function growMoleculeInStore<T, K extends Json.Serializable>(molecule: Molecule<any>, family: ReadonlySelectorFamily<T, K>, store: Store): ReadonlySelectorToken<T>;
|
|
501
|
+
declare function growMoleculeInStore<T, K extends Json.Serializable>(molecule: Molecule<any>, family: SelectorFamily<T, K>, store: Store): SelectorToken<T>;
|
|
502
|
+
declare function growMoleculeInStore<T, K extends Json.Serializable>(molecule: Molecule<any>, family: WritableFamily<T, K>, store: Store): WritableToken<T>;
|
|
503
|
+
declare function growMoleculeInStore<T, K extends Json.Serializable>(molecule: Molecule<any>, family: ReadableFamily<T, K>, store: Store): ReadableToken<T>;
|
|
504
|
+
|
|
505
|
+
declare function makeMoleculeInStore<M extends MoleculeConstructor>(store: Store, context: MoleculeToken<M> | MoleculeToken<M>[], familyToken: MoleculeFamilyToken<M>, key: MoleculeKey<M>, ...params: MoleculeParams<M>): MoleculeToken<M>;
|
|
506
|
+
|
|
507
|
+
type AtomIOToken = MoleculeFamilyToken<any> | MoleculeToken<any> | ReadableFamilyToken<any, any> | ReadableToken<any> | TimelineToken<any> | TransactionToken<any>;
|
|
538
508
|
declare class NotFoundError extends Error {
|
|
539
509
|
constructor(token: AtomIOToken, store: Store);
|
|
540
510
|
}
|
|
@@ -605,4 +575,4 @@ type Selector<T> = ReadonlySelector<T> | WritableSelector<T>;
|
|
|
605
575
|
type WritableState<T> = Atom<T> | WritableSelector<T>;
|
|
606
576
|
type ReadableState<T> = Atom<T> | Selector<T>;
|
|
607
577
|
|
|
608
|
-
export { type Atom, type AtomIOState, type AtomKey, type ChildStore, type EnvironmentData, FamilyTracker, Future, IMPLICIT, LazyMap, type Lineage, type Modify, type MutableAtom, NotFoundError, type OperationProgress, type ReadableState, type ReadonlySelector, type ReadonlySelectorKey, type RegularAtom, type RootStore, type Selector, 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 WritableSelector, type WritableState, abortTransaction, actUponStore, addAtomToTimeline, applyTransaction, arbitrary, assignTransactionToContinuity, become, buildTransaction, cacheValue, clearStore, closeOperation, createAtomFamily, createMutableAtom, createMutableAtomFamily, createReadonlySelector, createReadonlySelectorFamily, createRegularAtom, createRegularAtomFamily, createSelectorFamily, createStandaloneAtom, createStandaloneSelector, createTimeline, createTransaction, createWritableSelector, deposit, disposeAtom, disposeFromStore, disposeSelector, evictCachedValue, findInStore, getContinuityKey, getEnvironmentData, getEpochNumberOfAction, getEpochNumberOfContinuity, getFromStore, getJsonFamily, getJsonToken, getSelectorDependencyKeys, getUpdateToken, ingestAtomUpdate, ingestCreationEvent, ingestDisposalEvent, ingestMoleculeCreationEvent, ingestMoleculeDisposalEvent, ingestSelectorUpdate, ingestTransactionUpdate,
|
|
578
|
+
export { type Atom, type AtomIOState, type AtomKey, type ChildStore, type EnvironmentData, FamilyTracker, Future, IMPLICIT, LazyMap, type Lineage, type Modify, Molecule, type MutableAtom, NotFoundError, type OperationProgress, type ReadableState, type ReadonlySelector, type ReadonlySelectorKey, type RegularAtom, type RootStore, type Selector, 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 WritableSelector, type WritableState, abortTransaction, actUponStore, addAtomToTimeline, applyTransaction, arbitrary, assignTransactionToContinuity, become, buildTransaction, cacheValue, clearStore, closeOperation, createAtomFamily, createMoleculeFamily, createMutableAtom, createMutableAtomFamily, createReadonlySelector, createReadonlySelectorFamily, createRegularAtom, createRegularAtomFamily, createSelectorFamily, createStandaloneAtom, createStandaloneSelector, createTimeline, createTransaction, createWritableSelector, deposit, disposeAtom, disposeFromStore, disposeMolecule, disposeSelector, evictCachedValue, findInStore, getContinuityKey, getEnvironmentData, getEpochNumberOfAction, getEpochNumberOfContinuity, getFromStore, getJsonFamily, getJsonToken, getSelectorDependencyKeys, getUpdateToken, growMoleculeInStore, ingestAtomUpdate, ingestCreationEvent, ingestDisposalEvent, ingestMoleculeCreationEvent, ingestMoleculeDisposalEvent, ingestSelectorUpdate, ingestTransactionUpdate, initFamilyMemberInStore, isAtomDefault, isAtomKey, isChildStore, isDone, isMutable, isReadonlySelectorKey, isRootStore, isSelectorKey, isStateKey, isTransceiver, makeMoleculeInStore, markAtomAsDefault, markAtomAsNotDefault, markDone, newest, openOperation, readCachedValue, readOrComputeValue, registerSelector, seekInStore, setAtomOrSelector, setEpochNumberOfAction, setEpochNumberOfContinuity, setIntoStore, subscribeToRootAtoms, subscribeToState, subscribeToTimeline, subscribeToTransaction, timeTravel, traceAllSelectorAtoms, traceSelectorAtoms, updateSelectorAtoms, withdraw };
|