@contember/bindx 0.1.46 → 0.1.48
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/adapter/MockAdapter.d.ts +4 -1
- package/dist/adapter/MockAdapter.d.ts.map +1 -1
- package/dist/core/ActionDispatcher.d.ts +4 -1
- package/dist/core/ActionDispatcher.d.ts.map +1 -1
- package/dist/core/actions.d.ts +7 -1
- package/dist/core/actions.d.ts.map +1 -1
- package/dist/events/EventEmitter.d.ts +13 -1
- package/dist/events/EventEmitter.d.ts.map +1 -1
- package/dist/handles/BaseHandle.d.ts +14 -3
- package/dist/handles/BaseHandle.d.ts.map +1 -1
- package/dist/handles/EntityHandle.d.ts +14 -5
- package/dist/handles/EntityHandle.d.ts.map +1 -1
- package/dist/handles/FieldHandle.d.ts +11 -4
- package/dist/handles/FieldHandle.d.ts.map +1 -1
- package/dist/handles/HasManyListHandle.d.ts +36 -2
- package/dist/handles/HasManyListHandle.d.ts.map +1 -1
- package/dist/handles/HasOneHandle.d.ts +52 -9
- package/dist/handles/HasOneHandle.d.ts.map +1 -1
- package/dist/handles/PlaceholderHandle.d.ts +25 -13
- package/dist/handles/PlaceholderHandle.d.ts.map +1 -1
- package/dist/handles/index.d.ts +1 -1
- package/dist/handles/index.d.ts.map +1 -1
- package/dist/handles/proxyFactory.d.ts +7 -1
- package/dist/handles/proxyFactory.d.ts.map +1 -1
- package/dist/handles/types.d.ts +33 -0
- package/dist/handles/types.d.ts.map +1 -1
- package/dist/index.d.ts +3 -3
- package/dist/index.d.ts.map +1 -1
- package/dist/persistence/BatchPersister.d.ts +53 -37
- package/dist/persistence/BatchPersister.d.ts.map +1 -1
- package/dist/persistence/ChangeRegistry.d.ts +15 -0
- package/dist/persistence/ChangeRegistry.d.ts.map +1 -1
- package/dist/persistence/MutationCollector.d.ts +106 -3
- package/dist/persistence/MutationCollector.d.ts.map +1 -1
- package/dist/persistence/PersistExecution.d.ts +26 -0
- package/dist/persistence/PersistExecution.d.ts.map +1 -0
- package/dist/persistence/types.d.ts +8 -2
- package/dist/persistence/types.d.ts.map +1 -1
- package/dist/store/EntityMetaStore.d.ts +32 -10
- package/dist/store/EntityMetaStore.d.ts.map +1 -1
- package/dist/store/EntitySnapshotStore.d.ts +50 -3
- package/dist/store/EntitySnapshotStore.d.ts.map +1 -1
- package/dist/store/ErrorStore.d.ts +3 -2
- package/dist/store/ErrorStore.d.ts.map +1 -1
- package/dist/store/HasManyStore.d.ts +214 -0
- package/dist/store/HasManyStore.d.ts.map +1 -0
- package/dist/store/HasOneStore.d.ts +159 -0
- package/dist/store/HasOneStore.d.ts.map +1 -0
- package/dist/store/ReachabilityAnalyzer.d.ts +19 -0
- package/dist/store/ReachabilityAnalyzer.d.ts.map +1 -1
- package/dist/store/RekeyOrchestrator.d.ts +76 -0
- package/dist/store/RekeyOrchestrator.d.ts.map +1 -0
- package/dist/store/RelationEdgeIndex.d.ts +34 -0
- package/dist/store/RelationEdgeIndex.d.ts.map +1 -0
- package/dist/store/RelationStore.d.ts +74 -137
- package/dist/store/RelationStore.d.ts.map +1 -1
- package/dist/store/RootRegistry.d.ts +25 -4
- package/dist/store/RootRegistry.d.ts.map +1 -1
- package/dist/store/SnapshotStore.d.ts +137 -13
- package/dist/store/SnapshotStore.d.ts.map +1 -1
- package/dist/store/SubscriptionManager.d.ts +63 -14
- package/dist/store/SubscriptionManager.d.ts.map +1 -1
- package/dist/store/TouchedStore.d.ts +3 -2
- package/dist/store/TouchedStore.d.ts.map +1 -1
- package/dist/store/relationKey.d.ts +15 -0
- package/dist/store/relationKey.d.ts.map +1 -0
- package/dist/undo/UndoJournal.d.ts +133 -0
- package/dist/undo/UndoJournal.d.ts.map +1 -0
- package/dist/undo/UndoManager.d.ts +25 -82
- package/dist/undo/UndoManager.d.ts.map +1 -1
- package/dist/undo/UnrecordedWriteError.d.ts +16 -0
- package/dist/undo/UnrecordedWriteError.d.ts.map +1 -0
- package/dist/undo/index.d.ts +3 -1
- package/dist/undo/index.d.ts.map +1 -1
- package/dist/undo/rekeyJournalEntry.d.ts +20 -0
- package/dist/undo/rekeyJournalEntry.d.ts.map +1 -0
- package/dist/undo/types.d.ts +0 -48
- package/dist/undo/types.d.ts.map +1 -1
- package/package.json +2 -2
- package/src/adapter/MockAdapter.ts +15 -5
- package/src/core/ActionDispatcher.ts +56 -36
- package/src/core/actions.ts +8 -1
- package/src/events/EventEmitter.ts +78 -24
- package/src/handles/BaseHandle.ts +19 -2
- package/src/handles/EntityHandle.ts +48 -17
- package/src/handles/FieldHandle.ts +36 -10
- package/src/handles/HasManyListHandle.ts +120 -16
- package/src/handles/HasOneHandle.ts +177 -44
- package/src/handles/PlaceholderHandle.ts +184 -36
- package/src/handles/index.ts +3 -0
- package/src/handles/proxyFactory.ts +27 -0
- package/src/handles/types.ts +39 -0
- package/src/index.ts +4 -4
- package/src/persistence/BatchPersister.ts +810 -446
- package/src/persistence/ChangeRegistry.ts +27 -3
- package/src/persistence/MutationCollector.ts +265 -31
- package/src/persistence/PersistExecution.ts +217 -0
- package/src/persistence/types.ts +8 -2
- package/src/store/EntityMetaStore.ts +89 -45
- package/src/store/EntitySnapshotStore.ts +102 -19
- package/src/store/ErrorStore.ts +6 -5
- package/src/store/HasManyStore.ts +810 -0
- package/src/store/HasOneStore.ts +454 -0
- package/src/store/ReachabilityAnalyzer.ts +37 -0
- package/src/store/RekeyOrchestrator.ts +123 -0
- package/src/store/RelationEdgeIndex.ts +79 -0
- package/src/store/RelationStore.ts +176 -725
- package/src/store/RootRegistry.ts +50 -8
- package/src/store/SnapshotStore.ts +572 -101
- package/src/store/SubscriptionManager.ts +122 -75
- package/src/store/TouchedStore.ts +5 -2
- package/src/store/relationKey.ts +20 -0
- package/src/undo/UndoJournal.ts +258 -0
- package/src/undo/UndoManager.ts +151 -281
- package/src/undo/UnrecordedWriteError.ts +23 -0
- package/src/undo/index.ts +8 -7
- package/src/undo/rekeyJournalEntry.ts +145 -0
- package/src/undo/types.ts +0 -58
- package/dist/core/actionClassification.d.ts +0 -48
- package/dist/core/actionClassification.d.ts.map +0 -1
- package/src/core/actionClassification.ts +0 -199
|
@@ -1,189 +1,131 @@
|
|
|
1
|
-
import type { HasOneRelationState } from '../handles/types.js';
|
|
2
1
|
import type { EntitySnapshot } from './snapshots.js';
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
export type
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
export
|
|
11
|
-
/** IDs of items from server */
|
|
12
|
-
serverIds: Set<string>;
|
|
13
|
-
/** Explicit ordered list of item IDs, null means use default order (serverIds + plannedConnections) */
|
|
14
|
-
orderedIds: string[] | null;
|
|
15
|
-
/** Planned removals (disconnect or delete) keyed by entity ID */
|
|
16
|
-
plannedRemovals: Map<string, HasManyRemovalType>;
|
|
17
|
-
/** Planned connections (IDs to add to the list) */
|
|
18
|
-
plannedConnections: Set<string>;
|
|
19
|
-
/** Entity IDs created via add() - tracked for proper remove() semantics and mutation generation */
|
|
20
|
-
createdEntities: Set<string>;
|
|
21
|
-
version: number;
|
|
22
|
-
}
|
|
23
|
-
/**
|
|
24
|
-
* Relation state stored in SnapshotStore
|
|
25
|
-
*/
|
|
26
|
-
export interface StoredRelationState {
|
|
27
|
-
currentId: string | null;
|
|
28
|
-
serverId: string | null;
|
|
29
|
-
state: HasOneRelationState;
|
|
30
|
-
serverState: HasOneRelationState;
|
|
31
|
-
placeholderData: Record<string, unknown>;
|
|
32
|
-
version: number;
|
|
33
|
-
}
|
|
2
|
+
import type { RekeyContext, Rekeyable } from './RekeyOrchestrator.js';
|
|
3
|
+
import { type SentHasOneTransition, type StoredRelationState } from './HasOneStore.js';
|
|
4
|
+
import { type HasManyRemovalType, type SentHasManyDelta, type StoredHasManyState } from './HasManyStore.js';
|
|
5
|
+
export type { StoredRelationState } from './HasOneStore.js';
|
|
6
|
+
export type { SentHasOneTransition } from './HasOneStore.js';
|
|
7
|
+
export type { HasManyAdditionKind, HasManyRemovalType, SentHasManyAddition, SentHasManyDelta, SentHasManyRemoval, StoredHasManyState, } from './HasManyStore.js';
|
|
8
|
+
export { computeDefaultOrderedIds } from './HasManyStore.js';
|
|
9
|
+
export type RelationReconciliationResult = 'applied' | 'conflict';
|
|
34
10
|
/**
|
|
35
11
|
* Manages has-one and has-many relation state.
|
|
36
12
|
*
|
|
37
13
|
* Relation keys use the format "parentType:parentId:fieldName".
|
|
38
14
|
* Notification is handled by callers via callback returns.
|
|
15
|
+
*
|
|
16
|
+
* Thin facade composing a {@link HasOneStore} and a {@link HasManyStore}: each
|
|
17
|
+
* sub-store owns its own state map and write helper, and the facade merges the
|
|
18
|
+
* cross-cutting queries (mutation version sum; live-child/parent-key unions;
|
|
19
|
+
* dirty union) and fans out the cross-cutting mutations (rekey, removeOwned,
|
|
20
|
+
* clear) to both.
|
|
39
21
|
*/
|
|
40
|
-
export declare class RelationStore {
|
|
41
|
-
|
|
42
|
-
private readonly
|
|
43
|
-
/**
|
|
44
|
-
|
|
45
|
-
|
|
46
|
-
*
|
|
47
|
-
*/
|
|
22
|
+
export declare class RelationStore implements Rekeyable {
|
|
23
|
+
private readonly hasOne;
|
|
24
|
+
private readonly hasMany;
|
|
25
|
+
/**
|
|
26
|
+
* Increases whenever EITHER sub-store mutates. Used by {@link ReachabilityAnalyzer}
|
|
27
|
+
* to memoize its walk; only monotonic-increase-on-mutation matters, so the sum
|
|
28
|
+
* of the two per-store counters is sufficient.
|
|
29
|
+
*/
|
|
30
|
+
getMutationVersion(): number;
|
|
31
|
+
/** Editable-layer has-one write counter — read by the undo write-guard. */
|
|
32
|
+
getEditableHasOneWriteVersion(): number;
|
|
33
|
+
/** Editable-layer has-many write counter — read by the undo write-guard. */
|
|
34
|
+
getEditableHasManyWriteVersion(): number;
|
|
48
35
|
getOrCreateRelation(key: string, initial: Omit<StoredRelationState, 'version'>): StoredRelationState;
|
|
49
|
-
/**
|
|
50
|
-
* Gets relation state.
|
|
51
|
-
*/
|
|
52
36
|
getRelation(key: string): StoredRelationState | undefined;
|
|
53
|
-
/**
|
|
54
|
-
* Updates relation state.
|
|
55
|
-
* If the relation state doesn't exist, creates it using entity snapshot for server data.
|
|
56
|
-
*/
|
|
57
37
|
setRelation(key: string, updates: Partial<Omit<StoredRelationState, 'version'>>, entitySnapshot: EntitySnapshot | undefined, fieldName: string): void;
|
|
58
|
-
/**
|
|
59
|
-
* Commits relation state (server = current).
|
|
60
|
-
*/
|
|
61
38
|
commitRelation(key: string): void;
|
|
62
|
-
|
|
63
|
-
* Resets relation to server state.
|
|
64
|
-
*/
|
|
39
|
+
reconcileSentRelation(key: string, transition: SentHasOneTransition): RelationReconciliationResult;
|
|
65
40
|
resetRelation(key: string): void;
|
|
66
|
-
/**
|
|
67
|
-
* Gets or creates has-many list state.
|
|
68
|
-
*/
|
|
69
41
|
getOrCreateHasMany(key: string, serverIds?: string[]): StoredHasManyState;
|
|
70
|
-
/**
|
|
71
|
-
* Gets has-many list state.
|
|
72
|
-
*/
|
|
73
42
|
getHasMany(key: string): StoredHasManyState | undefined;
|
|
74
|
-
/**
|
|
75
|
-
* Sets server IDs for a has-many relation.
|
|
76
|
-
*/
|
|
77
43
|
setHasManyServerIds(key: string, serverIds: string[]): void;
|
|
78
|
-
/**
|
|
79
|
-
* Plans a removal for a has-many item.
|
|
80
|
-
*/
|
|
81
44
|
planHasManyRemoval(key: string, itemId: string, type: HasManyRemovalType): void;
|
|
82
|
-
/**
|
|
83
|
-
* Plans a connection for a has-many item.
|
|
84
|
-
*/
|
|
85
45
|
planHasManyConnection(key: string, itemId: string): void;
|
|
86
|
-
/**
|
|
87
|
-
* Commits has-many state after successful persist.
|
|
88
|
-
*/
|
|
89
46
|
commitHasMany(key: string, newServerIds: string[]): void;
|
|
90
|
-
|
|
91
|
-
* Resets has-many state to server state (clears planned operations).
|
|
92
|
-
*/
|
|
47
|
+
reconcileSentHasMany(key: string, delta: SentHasManyDelta): RelationReconciliationResult;
|
|
93
48
|
resetHasMany(key: string): void;
|
|
94
|
-
/**
|
|
95
|
-
* Adds a newly created entity to a has-many relation.
|
|
96
|
-
* Used by HasManyListHandle.add() for inline entity creation.
|
|
97
|
-
*/
|
|
98
49
|
addToHasMany(key: string, itemId: string): void;
|
|
99
|
-
/**
|
|
100
|
-
* Connects an existing (persisted) entity to a has-many relation.
|
|
101
|
-
* Unlike addToHasMany, does NOT add to createdEntities — used for
|
|
102
|
-
* materializing embedded connect references to existing entities.
|
|
103
|
-
*/
|
|
104
50
|
connectExistingToHasMany(key: string, itemId: string): void;
|
|
105
|
-
/**
|
|
106
|
-
* Removes an entity from a has-many relation.
|
|
107
|
-
* For newly created entities (via add()), cancels the connection.
|
|
108
|
-
* For existing server entities, plans the specified removal type.
|
|
109
|
-
* Returns true if the state changed (caller should notify), false if it was a no-op.
|
|
110
|
-
*/
|
|
111
51
|
removeFromHasMany(key: string, itemId: string, removalType: HasManyRemovalType): boolean;
|
|
52
|
+
moveInHasMany(key: string, fromIndex: number, toIndex: number): void;
|
|
53
|
+
getHasManyOrderedIds(key: string): string[];
|
|
112
54
|
/**
|
|
113
55
|
* Collects the ids of child entities currently reachable through an entity's
|
|
114
|
-
* LIVE relations (key prefix "parentType:parentId:").
|
|
115
|
-
*
|
|
116
|
-
*
|
|
117
|
-
* Live edges are:
|
|
118
|
-
* - has-one: currentId, when the relation is not disconnected/deleted
|
|
119
|
-
* (a disconnected relation has a null currentId; a 'deleted' relation is
|
|
120
|
-
* removing its target, so the target is not anchored by it).
|
|
121
|
-
* - has-many: effective members = (serverIds ∪ plannedConnections ∪
|
|
122
|
-
* createdEntities) minus plannedRemovals.
|
|
56
|
+
* LIVE relations (key prefix "parentType:parentId:"). Unions the live has-one
|
|
57
|
+
* edges with the live has-many members.
|
|
123
58
|
*/
|
|
124
59
|
getLiveChildIds(keyPrefix: string): string[];
|
|
125
60
|
/**
|
|
126
|
-
*
|
|
127
|
-
*
|
|
128
|
-
*
|
|
61
|
+
* Collects the composite keys ("parentType:parentId") of every entity that
|
|
62
|
+
* currently has a LIVE relation edge pointing at {@link childId} — the reverse
|
|
63
|
+
* of {@link getLiveChildIds}. Unions both sub-stores' results, scanning the
|
|
64
|
+
* same live edges the forward query reads so the two never disagree.
|
|
65
|
+
*
|
|
66
|
+
* {@link childId} is a BARE entity id (no type): relation state records child ids
|
|
67
|
+
* without their type, so the match is by id alone. This deliberately relies on
|
|
68
|
+
* the store-wide invariant that entity ids are globally unique across types
|
|
69
|
+
* (server UUIDs / minted temp ids — the same invariant behind
|
|
70
|
+
* EntitySnapshotStore's idIndex / keyForId), so a bare id resolves to exactly one
|
|
71
|
+
* entity. The forward reachability walk matches on the same bare ids, so making
|
|
72
|
+
* this type-aware in isolation would only diverge the two halves of one query.
|
|
129
73
|
*/
|
|
130
|
-
|
|
74
|
+
getParentKeysForChild(childId: string): Set<string>;
|
|
131
75
|
/**
|
|
132
|
-
*
|
|
76
|
+
* Keys of every has-one relation owned by an entity (owner prefix
|
|
77
|
+
* "parentType:parentId:"). Used by the journal's entry-closure to enumerate a
|
|
78
|
+
* detached created entity's own relation cells.
|
|
133
79
|
*/
|
|
134
|
-
|
|
80
|
+
getOwnedRelationKeys(keyPrefix: string): string[];
|
|
135
81
|
/**
|
|
136
|
-
*
|
|
82
|
+
* Keys of every has-many list owned by an entity (owner prefix
|
|
83
|
+
* "parentType:parentId:"). Counterpart of {@link getOwnedRelationKeys}.
|
|
137
84
|
*/
|
|
138
|
-
|
|
85
|
+
getOwnedHasManyKeys(keyPrefix: string): string[];
|
|
139
86
|
/**
|
|
140
|
-
*
|
|
141
|
-
*
|
|
87
|
+
* Removes a single has-one relation state by key (undo restore of an
|
|
88
|
+
* absent-before-the-gesture relation).
|
|
142
89
|
*/
|
|
143
|
-
|
|
90
|
+
removeRelationState(key: string): void;
|
|
144
91
|
/**
|
|
145
|
-
*
|
|
92
|
+
* Removes a single has-many list state by key (undo restore of an
|
|
93
|
+
* absent-before-the-gesture list).
|
|
146
94
|
*/
|
|
147
|
-
|
|
95
|
+
removeHasManyState(key: string): void;
|
|
148
96
|
/**
|
|
149
|
-
*
|
|
97
|
+
* Removes all relation and has-many state owned by an entity (keys under the
|
|
98
|
+
* given owner prefix). Called by removeEntity so a removed entity leaves no
|
|
99
|
+
* stale relation state behind.
|
|
150
100
|
*/
|
|
151
|
-
|
|
101
|
+
removeOwnedRelations(keyPrefix: string): void;
|
|
152
102
|
/**
|
|
153
|
-
*
|
|
103
|
+
* Commits all relations (hasOne and hasMany) for an entity.
|
|
154
104
|
*/
|
|
155
|
-
|
|
105
|
+
commitAllRelations(keyPrefix: string, pendingItems?: ReadonlyMap<string, ReadonlySet<string>>): void;
|
|
156
106
|
/**
|
|
157
|
-
*
|
|
107
|
+
* Resets all relations (hasOne and hasMany) for an entity to server state.
|
|
158
108
|
*/
|
|
159
|
-
|
|
109
|
+
resetAllRelations(keyPrefix: string): void;
|
|
160
110
|
/**
|
|
161
|
-
* Gets the list of dirty relations for an entity.
|
|
111
|
+
* Gets the list of dirty relations (has-one and has-many) for an entity.
|
|
162
112
|
*/
|
|
163
113
|
getDirtyRelations(keyPrefix: string): string[];
|
|
164
|
-
/**
|
|
165
|
-
* Exports relation states for given keys.
|
|
166
|
-
*/
|
|
167
114
|
exportRelationStates(keys: string[]): Map<string, StoredRelationState>;
|
|
168
|
-
/**
|
|
169
|
-
* Exports has-many states for given keys.
|
|
170
|
-
*/
|
|
171
115
|
exportHasManyStates(keys: string[]): Map<string, StoredHasManyState>;
|
|
172
|
-
/**
|
|
173
|
-
* Imports relation states from a snapshot.
|
|
174
|
-
* Returns the keys that were imported for notification.
|
|
175
|
-
*/
|
|
176
116
|
importRelationStates(states: Map<string, StoredRelationState>): string[];
|
|
177
|
-
/**
|
|
178
|
-
* Imports has-many states from a snapshot.
|
|
179
|
-
* Returns the keys that were imported for notification.
|
|
180
|
-
*/
|
|
181
117
|
importHasManyStates(states: Map<string, StoredHasManyState>): string[];
|
|
182
118
|
/**
|
|
183
119
|
* Replaces all occurrences of oldId with newId across relation and hasMany states.
|
|
184
120
|
* Used after persist to rekey temp IDs to server-assigned IDs.
|
|
185
121
|
*/
|
|
186
122
|
replaceEntityId(oldId: string, newId: string): void;
|
|
123
|
+
/**
|
|
124
|
+
* Migrates an entity's relation state for a temp→persisted rekey: first the
|
|
125
|
+
* relation/has-many keys it owns (the parent id in the key), then every value
|
|
126
|
+
* reference to its id from other entities' relations.
|
|
127
|
+
*/
|
|
128
|
+
rekey(ctx: RekeyContext): void;
|
|
187
129
|
/**
|
|
188
130
|
* Rekeys relation/hasMany entries owned by an entity (changes the parent ID in the key).
|
|
189
131
|
*/
|
|
@@ -193,9 +135,4 @@ export declare class RelationStore {
|
|
|
193
135
|
*/
|
|
194
136
|
clear(): void;
|
|
195
137
|
}
|
|
196
|
-
/**
|
|
197
|
-
* Computes the default ordered IDs for a has-many relation.
|
|
198
|
-
* Order is: serverIds (minus removals) + plannedConnections
|
|
199
|
-
*/
|
|
200
|
-
export declare function computeDefaultOrderedIds(state: StoredHasManyState): string[];
|
|
201
138
|
//# sourceMappingURL=RelationStore.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"RelationStore.d.ts","sourceRoot":"","sources":["../../src/store/RelationStore.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,
|
|
1
|
+
{"version":3,"file":"RelationStore.d.ts","sourceRoot":"","sources":["../../src/store/RelationStore.ts"],"names":[],"mappings":"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"}
|
|
@@ -13,16 +13,37 @@
|
|
|
13
13
|
*
|
|
14
14
|
* Keys use the same composite format as the rest of the store: "entityType:id".
|
|
15
15
|
*/
|
|
16
|
-
|
|
16
|
+
import type { RekeyContext, Rekeyable } from './RekeyOrchestrator.js';
|
|
17
|
+
export declare class RootRegistry implements Rekeyable {
|
|
17
18
|
private readonly roots;
|
|
19
|
+
/**
|
|
20
|
+
* Monotonic counter bumped whenever the root set actually changes. Used by
|
|
21
|
+
* {@link ReachabilityAnalyzer} to memoize the reachability walk. Bumps happen
|
|
22
|
+
* only on a real change so the per-render `registerParentChild` → `unregister`
|
|
23
|
+
* call (almost always a no-op for an already-anchored child) does not
|
|
24
|
+
* needlessly invalidate the cache.
|
|
25
|
+
*/
|
|
26
|
+
private mutationVersion;
|
|
27
|
+
/**
|
|
28
|
+
* Monotonic counter bumped on EDITABLE-layer root changes — the create-root
|
|
29
|
+
* register/unregister that back an undoable gesture (createEntity,
|
|
30
|
+
* registerParentChild). The persist rekey and full clear deliberately do NOT
|
|
31
|
+
* bump it. Read by the undo write-guard (see UndoJournal). The unjournaled
|
|
32
|
+
* register/unregister callers (undo restore, memory sweep, unmount cleanup) all
|
|
33
|
+
* run outside a journal transaction, so counting them here is harmless.
|
|
34
|
+
*/
|
|
35
|
+
private editableWriteVersion;
|
|
18
36
|
register(key: string): void;
|
|
19
37
|
unregister(key: string): void;
|
|
38
|
+
getEditableWriteVersion(): number;
|
|
20
39
|
keys(): IterableIterator<string>;
|
|
40
|
+
has(key: string): boolean;
|
|
21
41
|
/**
|
|
22
|
-
* Moves a root entry from
|
|
23
|
-
* id to a server-assigned id).
|
|
42
|
+
* Moves a root entry from the temp key to the persisted key (used after
|
|
43
|
+
* persist rekeys a temp id to a server-assigned id).
|
|
24
44
|
*/
|
|
25
|
-
rekey(
|
|
45
|
+
rekey(ctx: RekeyContext): void;
|
|
26
46
|
clear(): void;
|
|
47
|
+
getMutationVersion(): number;
|
|
27
48
|
}
|
|
28
49
|
//# sourceMappingURL=RootRegistry.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"RootRegistry.d.ts","sourceRoot":"","sources":["../../src/store/RootRegistry.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;GAcG;AACH,
|
|
1
|
+
{"version":3,"file":"RootRegistry.d.ts","sourceRoot":"","sources":["../../src/store/RootRegistry.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;GAcG;AACH,OAAO,KAAK,EAAE,YAAY,EAAE,SAAS,EAAE,MAAM,wBAAwB,CAAA;AAErE,qBAAa,YAAa,YAAW,SAAS;IAC7C,OAAO,CAAC,QAAQ,CAAC,KAAK,CAAoB;IAE1C;;;;;;OAMG;IACH,OAAO,CAAC,eAAe,CAAI;IAE3B;;;;;;;OAOG;IACH,OAAO,CAAC,oBAAoB,CAAI;IAEhC,QAAQ,CAAC,GAAG,EAAE,MAAM,GAAG,IAAI;IAQ3B,UAAU,CAAC,GAAG,EAAE,MAAM,GAAG,IAAI;IAO7B,uBAAuB,IAAI,MAAM;IAIjC,IAAI,IAAI,gBAAgB,CAAC,MAAM,CAAC;IAIhC,GAAG,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO;IAIzB;;;OAGG;IACH,KAAK,CAAC,GAAG,EAAE,YAAY,GAAG,IAAI;IAO9B,KAAK,IAAI,IAAI;IAKb,kBAAkB,IAAI,MAAM;CAG5B"}
|
|
@@ -1,9 +1,11 @@
|
|
|
1
1
|
import type { EntitySnapshot, LoadStatus } from './snapshots.js';
|
|
2
2
|
import type { FieldError } from '../errors/types.js';
|
|
3
3
|
import { type SnapshotVersionBumper } from './SubscriptionManager.js';
|
|
4
|
-
import { type HasManyRemovalType, type StoredHasManyState, type StoredRelationState } from './RelationStore.js';
|
|
4
|
+
import { type HasManyRemovalType, type RelationReconciliationResult, type SentHasManyDelta, type SentHasOneTransition, type StoredHasManyState, type StoredRelationState } from './RelationStore.js';
|
|
5
5
|
import { type EntityMeta } from './EntityMetaStore.js';
|
|
6
|
-
|
|
6
|
+
import type { Rekeyable } from './RekeyOrchestrator.js';
|
|
7
|
+
import type { UndoJournal, JournalTarget, JournalCellImage, EntityCellImage, RelationCellImage, HasManyCellImage, EditableWriteCounters } from '../undo/UndoJournal.js';
|
|
8
|
+
export type { HasManyRemovalType, RelationReconciliationResult, SentHasManyAddition, SentHasManyDelta, SentHasManyRemoval, SentHasOneTransition, StoredHasManyState, StoredRelationState, } from './RelationStore.js';
|
|
7
9
|
export type { EntityMeta } from './EntityMetaStore.js';
|
|
8
10
|
export { isTempId, isPlaceholderId, isPersistedId, generatePlaceholderId } from './entityId.js';
|
|
9
11
|
type Subscriber = () => void;
|
|
@@ -24,7 +26,7 @@ type Subscriber = () => void;
|
|
|
24
26
|
* - EntityMetaStore — entity metadata, load state, persisting, temp ID mapping
|
|
25
27
|
* - TouchedStore — field touched state tracking
|
|
26
28
|
*/
|
|
27
|
-
export declare class SnapshotStore implements SnapshotVersionBumper {
|
|
29
|
+
export declare class SnapshotStore implements SnapshotVersionBumper, JournalTarget {
|
|
28
30
|
private readonly entitySnapshots;
|
|
29
31
|
private readonly subscriptions;
|
|
30
32
|
private readonly errors;
|
|
@@ -34,6 +36,7 @@ export declare class SnapshotStore implements SnapshotVersionBumper {
|
|
|
34
36
|
private readonly roots;
|
|
35
37
|
private readonly reachability;
|
|
36
38
|
private readonly dirtyTracker;
|
|
39
|
+
private readonly rekeyOrchestrator;
|
|
37
40
|
/**
|
|
38
41
|
* Tracks the last embedded data reference propagated from parent to child.
|
|
39
42
|
* Used to detect whether the parent was re-fetched (new reference) vs. stale
|
|
@@ -41,15 +44,47 @@ export declare class SnapshotStore implements SnapshotVersionBumper {
|
|
|
41
44
|
* Keyed by "parentType:parentId:fieldName".
|
|
42
45
|
*/
|
|
43
46
|
private readonly lastPropagatedData;
|
|
47
|
+
/**
|
|
48
|
+
* Optional write-journal. When set (by an attached UndoManager), mutating
|
|
49
|
+
* methods record editable-layer pre-images of the cells they touch so a gesture
|
|
50
|
+
* can be undone. Null ⇒ no undo tracking and the transaction helpers are no-ops.
|
|
51
|
+
*/
|
|
52
|
+
private journal;
|
|
44
53
|
constructor();
|
|
45
|
-
/**
|
|
46
|
-
|
|
54
|
+
/**
|
|
55
|
+
* Attaches (or detaches) the write-journal. Called by UndoManager when it is
|
|
56
|
+
* wired to a dispatcher.
|
|
57
|
+
*/
|
|
58
|
+
setJournal(journal: UndoJournal | null): void;
|
|
59
|
+
clearJournal(journal: UndoJournal): void;
|
|
60
|
+
private recordExistingEntity;
|
|
61
|
+
/**
|
|
62
|
+
* Aggregates the sub-stores' editable-layer write counters into the three
|
|
63
|
+
* journal kinds. The "entity" kind fuses snapshot + meta + roots — the cells a
|
|
64
|
+
* single {@link recordEntity} pre-image captures together. Read by the journal's
|
|
65
|
+
* write-guard at each transaction boundary; a few integer adds, hot-path cheap.
|
|
66
|
+
*/
|
|
67
|
+
getEditableWriteCounters(): EditableWriteCounters;
|
|
68
|
+
/**
|
|
69
|
+
* Opens a journal transaction (re-entrant). All primary-store writes until the
|
|
70
|
+
* matching {@link commitTransaction} are captured as ONE undoable gesture.
|
|
71
|
+
*/
|
|
72
|
+
beginTransaction(): void;
|
|
73
|
+
commitTransaction(): void;
|
|
74
|
+
/**
|
|
75
|
+
* Runs a gesture as a single undoable transaction. Used by handle operations
|
|
76
|
+
* (e.g. list add / has-one create) that write to the store outside the
|
|
77
|
+
* dispatcher, so their pre-create writes join the same undo entry.
|
|
78
|
+
*/
|
|
79
|
+
transaction<T>(fn: () => T): T;
|
|
47
80
|
private getEntityKey;
|
|
48
81
|
private getRelationKey;
|
|
49
82
|
/**
|
|
50
83
|
* Resolves an ID to its persisted ID if it has been rekeyed.
|
|
51
84
|
*/
|
|
52
|
-
|
|
85
|
+
resolveEntityId(entityType: string, id: string): string;
|
|
86
|
+
/** Attaches identity-keyed state to the store's single rekey fan-out. */
|
|
87
|
+
attachRekeyParticipant(participant: Rekeyable): void;
|
|
53
88
|
bumpEntitySnapshotVersion(key: string): void;
|
|
54
89
|
private notifyEntitySubscribers;
|
|
55
90
|
private notifyRelationSubscribers;
|
|
@@ -136,16 +171,32 @@ export declare class SnapshotStore implements SnapshotVersionBumper {
|
|
|
136
171
|
planHasManyConnection(parentType: string, parentId: string, fieldName: string, itemId: string, alias?: string): void;
|
|
137
172
|
getHasManyPlannedConnections(parentType: string, parentId: string, fieldName: string, alias?: string): Set<string> | undefined;
|
|
138
173
|
commitHasMany(parentType: string, parentId: string, fieldName: string, newServerIds: string[], alias?: string): void;
|
|
174
|
+
reconcileSentHasMany(parentType: string, parentId: string, fieldName: string, delta: SentHasManyDelta, alias?: string): RelationReconciliationResult;
|
|
139
175
|
resetHasMany(parentType: string, parentId: string, fieldName: string, alias?: string): void;
|
|
140
176
|
addToHasMany(parentType: string, parentId: string, fieldName: string, itemId: string, alias?: string): void;
|
|
141
177
|
connectExistingToHasMany(parentType: string, parentId: string, fieldName: string, itemId: string): void;
|
|
142
178
|
removeFromHasMany(parentType: string, parentId: string, fieldName: string, itemId: string, removalType: HasManyRemovalType, alias?: string): void;
|
|
143
179
|
moveInHasMany(parentType: string, parentId: string, fieldName: string, fromIndex: number, toIndex: number, alias?: string): void;
|
|
144
180
|
getHasManyOrderedIds(parentType: string, parentId: string, fieldName: string, alias?: string): string[];
|
|
181
|
+
getPresentationHasManyOrderedIds(parentType: string, parentId: string, fieldName: string, alias?: string): string[];
|
|
145
182
|
isHasManyItemCreated(parentType: string, parentId: string, fieldName: string, itemId: string, alias?: string): boolean;
|
|
146
183
|
getHasManyCreatedEntities(parentType: string, parentId: string, fieldName: string, alias?: string): Set<string> | undefined;
|
|
147
184
|
isPersisting(entityType: string, id: string): boolean;
|
|
148
|
-
setPersisting(entityType: string, id: string, isPersisting: boolean): void;
|
|
185
|
+
setPersisting(entityType: string, id: string, isPersisting: boolean, pessimistic?: boolean): void;
|
|
186
|
+
/**
|
|
187
|
+
* Returns the snapshot a consumer should DISPLAY for an entity.
|
|
188
|
+
*
|
|
189
|
+
* This equals the canonical {@link getEntitySnapshot} except while the entity
|
|
190
|
+
* is pessimistically in-flight, when it returns the server baseline (data ===
|
|
191
|
+
* serverData) WITHOUT mutating the store. The canonical snapshot stays dirty,
|
|
192
|
+
* so dirty tracking, mutation building, and retry are unaffected — only the
|
|
193
|
+
* presented value is the pre-persist server view.
|
|
194
|
+
*
|
|
195
|
+
* Inert until consumers route their display reads through it (see PR 4); a
|
|
196
|
+
* non-pessimistic entity is returned verbatim, so optimistic mode and the
|
|
197
|
+
* not-persisting case share this one path.
|
|
198
|
+
*/
|
|
199
|
+
getPresentationSnapshot<T extends object>(entityType: string, id: string): EntitySnapshot<T> | undefined;
|
|
149
200
|
getFieldErrors(entityType: string, id: string, fieldName: string): readonly FieldError[];
|
|
150
201
|
addFieldError(entityType: string, id: string, fieldName: string, error: FieldError): void;
|
|
151
202
|
clearFieldErrors(entityType: string, id: string, fieldName: string, source?: 'client' | 'server'): void;
|
|
@@ -165,21 +216,34 @@ export declare class SnapshotStore implements SnapshotVersionBumper {
|
|
|
165
216
|
clearEntityTouchedState(entityType: string, id: string): void;
|
|
166
217
|
getOrCreateRelation(parentType: string, parentId: string, fieldName: string, initial: Omit<StoredRelationState, 'version'>): StoredRelationState;
|
|
167
218
|
getRelation(parentType: string, parentId: string, fieldName: string): StoredRelationState | undefined;
|
|
168
|
-
|
|
219
|
+
getPresentationRelation(parentType: string, parentId: string, fieldName: string): StoredRelationState | undefined;
|
|
220
|
+
setRelation(parentType: string, parentId: string, fieldName: string, updates: Partial<Omit<StoredRelationState, 'version'>>, skipNotify?: boolean): void;
|
|
169
221
|
commitRelation(parentType: string, parentId: string, fieldName: string): void;
|
|
222
|
+
reconcileSentRelation(parentType: string, parentId: string, fieldName: string, transition: SentHasOneTransition): RelationReconciliationResult;
|
|
170
223
|
resetRelation(parentType: string, parentId: string, fieldName: string): void;
|
|
171
|
-
|
|
224
|
+
/**
|
|
225
|
+
* Commits every relation of an entity. Items listed in `pendingItems` (by relation
|
|
226
|
+
* key) were not sent in the persist and stay planned.
|
|
227
|
+
*/
|
|
228
|
+
commitAllRelations(entityType: string, entityId: string, pendingItems?: ReadonlyMap<string, ReadonlySet<string>>): void;
|
|
172
229
|
resetAllRelations(entityType: string, entityId: string): void;
|
|
173
|
-
getAllRelationsForEntity(entityType: string, entityId: string): Map<string, StoredRelationState>;
|
|
174
|
-
getAllHasManyForEntity(entityType: string, entityId: string): Map<string, StoredHasManyState>;
|
|
175
|
-
restoreHasManyState(parentType: string, parentId: string, fieldName: string, state: StoredHasManyState, alias?: string): void;
|
|
176
230
|
subscribeToEntity(entityType: string, id: string, callback: Subscriber): () => void;
|
|
177
231
|
subscribeToRelation(parentType: string, parentId: string, fieldName: string, callback: Subscriber): () => void;
|
|
178
232
|
subscribe(callback: Subscriber): () => void;
|
|
179
233
|
getVersion(): number;
|
|
180
234
|
notify(): void;
|
|
235
|
+
/**
|
|
236
|
+
* Anchors a child under a parent relation. Parent re-render notification is now
|
|
237
|
+
* DERIVED from the relation store's live edges (see
|
|
238
|
+
* {@link SubscriptionManager.getParentKeys}), so the only remaining effect is
|
|
239
|
+
* the reachability one: a child anchored by a parent relation is no longer a
|
|
240
|
+
* top-level root; its reachability flows through the parent. (No-op for server
|
|
241
|
+
* children that were never roots.)
|
|
242
|
+
*
|
|
243
|
+
* Callers (handles, the action dispatcher) keep calling this on connect so the
|
|
244
|
+
* root-unregister stays centralized in one place.
|
|
245
|
+
*/
|
|
181
246
|
registerParentChild(parentType: string, parentId: string, childType: string, childId: string): void;
|
|
182
|
-
unregisterParentChild(parentType: string, parentId: string, childType: string, childId: string): void;
|
|
183
247
|
exportPartialSnapshot(keys: {
|
|
184
248
|
entityKeys: string[];
|
|
185
249
|
relationKeys: string[];
|
|
@@ -196,6 +260,66 @@ export declare class SnapshotStore implements SnapshotVersionBumper {
|
|
|
196
260
|
hasManyStates: Map<string, StoredHasManyState>;
|
|
197
261
|
entityMetas: Map<string, EntityMeta>;
|
|
198
262
|
}): void;
|
|
263
|
+
/**
|
|
264
|
+
* Captures the editable-layer pre-image of an entity cell: the current snapshot
|
|
265
|
+
* (data + baseline), plus the meta and root membership needed to restore or
|
|
266
|
+
* re-create it. `present: false` means the entity did not exist — undo removes it.
|
|
267
|
+
*/
|
|
268
|
+
exportEntityCell(key: string): EntityCellImage;
|
|
269
|
+
exportRelationCell(key: string): RelationCellImage;
|
|
270
|
+
/**
|
|
271
|
+
* Live server-member ids of a has-many list by its raw relation key. Used by the
|
|
272
|
+
* journal's rekey to rebase a pre-image when a just-persisted create became a
|
|
273
|
+
* permanent member of the list (membership rebase for sealed creates).
|
|
274
|
+
*/
|
|
275
|
+
getLiveHasManyServerIds(relationKey: string): Set<string>;
|
|
276
|
+
exportHasManyCell(key: string): HasManyCellImage;
|
|
277
|
+
/**
|
|
278
|
+
* Entry-closure export: starting from the given seed ids, walks and exports the
|
|
279
|
+
* entity + owned-relation cell images of every created, currently-unreachable
|
|
280
|
+
* subtree — the exact `!existsOnServer && !reachable` set {@link sweepUnreachableCreated}
|
|
281
|
+
* may reclaim. Referenced children (has-one currentId, has-many members / planned
|
|
282
|
+
* additions) are pushed back on the worklist, so nested created grandchildren are
|
|
283
|
+
* captured transitively. Lets an undo restore a detached create even after a sweep.
|
|
284
|
+
*/
|
|
285
|
+
exportUnreachableCreatedSubgraph(seedIds: ReadonlySet<string>): JournalCellImage[];
|
|
286
|
+
/**
|
|
287
|
+
* Restores a set of cell pre-images through the write paths (so the edge index
|
|
288
|
+
* reconciles and the reachability cache invalidates). Order matters: present
|
|
289
|
+
* entities are restored/recreated first so relations can reference live targets,
|
|
290
|
+
* then present relations, then un-creates, then dropped relations.
|
|
291
|
+
*/
|
|
292
|
+
applyJournalImages(images: JournalCellImage[]): void;
|
|
293
|
+
private applyEntityImage;
|
|
294
|
+
private applyRelationImage;
|
|
295
|
+
/**
|
|
296
|
+
* Sum of the monotonic mutation counters of every sub-store {@link getAllDirtyEntities}
|
|
297
|
+
* reads. Strictly increasing, so an unchanged value proves no write could have
|
|
298
|
+
* changed the dirty set — the cache key {@link ChangeRegistry} memoizes the
|
|
299
|
+
* full-store scan on.
|
|
300
|
+
*
|
|
301
|
+
* Deliberately NOT derived from {@link getVersion} (the notification version):
|
|
302
|
+
* several writes change dirtiness without notifying — `createEntity` registers
|
|
303
|
+
* its root after its last notify, `registerParentChild` un-registers one,
|
|
304
|
+
* `commit/resetAllRelations` never notify, and `refreshServerData` can skip it —
|
|
305
|
+
* so a notification-keyed memo would serve a stale result. Counters bump inside
|
|
306
|
+
* the write itself and cannot be bypassed that way.
|
|
307
|
+
*
|
|
308
|
+
* The entity snapshot store contributes its data-write counter alone: it bumps
|
|
309
|
+
* on a superset of the writes `getMutationVersion()` covers.
|
|
310
|
+
*
|
|
311
|
+
* REQUIRES snapshot values to be replaced, never mutated in place.
|
|
312
|
+
* `createEntitySnapshot` freezes only the top level, so a nested object inside
|
|
313
|
+
* `data` (a rich-text JSON payload, say) stays writable. Editing one in place
|
|
314
|
+
* changes dirtiness without touching any counter, and the memo will serve the
|
|
315
|
+
* pre-edit answer — where the former unconditional scan happened to notice it on
|
|
316
|
+
* the next read. The store already implies this rule by freezing at all; the memo
|
|
317
|
+
* is what makes breaking it consequential.
|
|
318
|
+
*
|
|
319
|
+
* @internal Cache key for the dirty-scan memo. Monotonic and otherwise
|
|
320
|
+
* meaningless — the absolute value carries no consumer-facing information.
|
|
321
|
+
*/
|
|
322
|
+
getDirtyVersion(): number;
|
|
199
323
|
getAllDirtyEntities(): Array<{
|
|
200
324
|
entityType: string;
|
|
201
325
|
entityId: string;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"SnapshotStore.d.ts","sourceRoot":"","sources":["../../src/store/SnapshotStore.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"SnapshotStore.d.ts","sourceRoot":"","sources":["../../src/store/SnapshotStore.ts"],"names":[],"mappings":"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"}
|