@contember/bindx 0.1.46 → 0.1.47
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/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/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
|
@@ -63,7 +63,10 @@ export declare class ActionDispatcher {
|
|
|
63
63
|
* Can inspect/modify actions before execution.
|
|
64
64
|
* Return false to cancel the action.
|
|
65
65
|
*/
|
|
66
|
-
export
|
|
66
|
+
export interface ActionMiddleware {
|
|
67
|
+
(action: Action, store: SnapshotStore): boolean | void;
|
|
68
|
+
dispose?: () => void;
|
|
69
|
+
}
|
|
67
70
|
/**
|
|
68
71
|
* Creates a logging middleware for debugging.
|
|
69
72
|
*/
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ActionDispatcher.d.ts","sourceRoot":"","sources":["../../src/core/ActionDispatcher.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,2BAA2B,CAAA;AAC9D,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,cAAc,CAAA;AAC1C,OAAO,EAAE,YAAY,EAAE,MAAM,2BAA2B,CAAA;AAOxD;;;;;;;;;;GAUG;AACH,qBAAa,gBAAgB;IAK3B,OAAO,CAAC,QAAQ,CAAC,KAAK;IAJvB,OAAO,CAAC,QAAQ,CAAC,WAAW,CAAyB;IACrD,OAAO,CAAC,QAAQ,CAAC,YAAY,CAAc;gBAGzB,KAAK,EAAE,aAAa,EACrC,YAAY,CAAC,EAAE,YAAY;
|
|
1
|
+
{"version":3,"file":"ActionDispatcher.d.ts","sourceRoot":"","sources":["../../src/core/ActionDispatcher.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,2BAA2B,CAAA;AAC9D,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,cAAc,CAAA;AAC1C,OAAO,EAAE,YAAY,EAAE,MAAM,2BAA2B,CAAA;AAOxD;;;;;;;;;;GAUG;AACH,qBAAa,gBAAgB;IAK3B,OAAO,CAAC,QAAQ,CAAC,KAAK;IAJvB,OAAO,CAAC,QAAQ,CAAC,WAAW,CAAyB;IACrD,OAAO,CAAC,QAAQ,CAAC,YAAY,CAAc;gBAGzB,KAAK,EAAE,aAAa,EACrC,YAAY,CAAC,EAAE,YAAY;IAM5B;;OAEG;IACH,eAAe,IAAI,YAAY;IAI/B;;;;OAIG;IACH,QAAQ,CAAC,MAAM,EAAE,MAAM,GAAG,IAAI;IA4C9B;;;OAGG;IACG,aAAa,CAAC,MAAM,EAAE,MAAM,GAAG,OAAO,CAAC,OAAO,CAAC;IA2CrD;;;OAGG;IACH,OAAO,CAAC,qBAAqB;IAmC7B;;;OAGG;IACH,aAAa,CAAC,UAAU,EAAE,gBAAgB,GAAG,IAAI;IAIjD;;OAEG;IACH,gBAAgB,CAAC,UAAU,EAAE,gBAAgB,GAAG,IAAI;IAUpD;;;;;OAKG;IACH,OAAO,CAAC,kBAAkB;IAQ1B;;OAEG;IACH,OAAO,CAAC,OAAO;CA+Pf;AAED;;;;GAIG;AACH,MAAM,WAAW,gBAAgB;IAChC,CAAC,MAAM,EAAE,MAAM,EAAE,KAAK,EAAE,aAAa,GAAG,OAAO,GAAG,IAAI,CAAA;IACtD,OAAO,CAAC,EAAE,MAAM,IAAI,CAAA;CACpB;AAED;;GAEG;AACH,wBAAgB,uBAAuB,CACtC,MAAM,GAAE,MAAkB,GACxB,gBAAgB,CAIlB"}
|
package/dist/core/actions.d.ts
CHANGED
|
@@ -173,6 +173,12 @@ export interface SetPersistingAction {
|
|
|
173
173
|
readonly entityType: string;
|
|
174
174
|
readonly entityId: string;
|
|
175
175
|
readonly isPersisting: boolean;
|
|
176
|
+
/**
|
|
177
|
+
* Whether this persist is pessimistic. While a pessimistic persist is
|
|
178
|
+
* in-flight, handles present the server baseline instead of the (still dirty)
|
|
179
|
+
* local data. Ignored when isPersisting is false.
|
|
180
|
+
*/
|
|
181
|
+
readonly pessimistic?: boolean;
|
|
176
182
|
}
|
|
177
183
|
/**
|
|
178
184
|
* Adds an error to a field
|
|
@@ -294,7 +300,7 @@ export declare function setLoadState(entityType: string, entityId: string, statu
|
|
|
294
300
|
/**
|
|
295
301
|
* Creates a SET_PERSISTING action
|
|
296
302
|
*/
|
|
297
|
-
export declare function setPersisting(entityType: string, entityId: string, isPersisting: boolean): SetPersistingAction;
|
|
303
|
+
export declare function setPersisting(entityType: string, entityId: string, isPersisting: boolean, pessimistic?: boolean): SetPersistingAction;
|
|
298
304
|
/**
|
|
299
305
|
* Creates a SET_PLACEHOLDER_DATA action
|
|
300
306
|
*/
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"actions.d.ts","sourceRoot":"","sources":["../../src/core/actions.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,oBAAoB,CAAA;AAEpD;;;GAGG;AAIH;;GAEG;AACH,MAAM,WAAW,cAAc;IAC9B,QAAQ,CAAC,IAAI,EAAE,WAAW,CAAA;IAC1B,QAAQ,CAAC,UAAU,EAAE,MAAM,CAAA;IAC3B,QAAQ,CAAC,QAAQ,EAAE,MAAM,CAAA;IACzB,QAAQ,CAAC,SAAS,EAAE,MAAM,EAAE,CAAA;IAC5B,QAAQ,CAAC,KAAK,EAAE,OAAO,CAAA;CACvB;AAID;;GAEG;AACH,MAAM,WAAW,iBAAiB;IACjC,QAAQ,CAAC,IAAI,EAAE,cAAc,CAAA;IAC7B,QAAQ,CAAC,UAAU,EAAE,MAAM,CAAA;IAC3B,QAAQ,CAAC,QAAQ,EAAE,MAAM,CAAA;CACzB;AAED;;GAEG;AACH,MAAM,WAAW,kBAAkB;IAClC,QAAQ,CAAC,IAAI,EAAE,eAAe,CAAA;IAC9B,QAAQ,CAAC,UAAU,EAAE,MAAM,CAAA;IAC3B,QAAQ,CAAC,QAAQ,EAAE,MAAM,CAAA;CACzB;AAED;;GAEG;AACH,MAAM,WAAW,mBAAmB;IACnC,QAAQ,CAAC,IAAI,EAAE,iBAAiB,CAAA;IAChC,QAAQ,CAAC,UAAU,EAAE,MAAM,CAAA;IAC3B,QAAQ,CAAC,QAAQ,EAAE,MAAM,CAAA;IACzB,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAA;IACtC,QAAQ,CAAC,YAAY,EAAE,OAAO,CAAA;CAC9B;AAED;;GAEG;AACH,MAAM,WAAW,uBAAuB;IACvC,QAAQ,CAAC,IAAI,EAAE,qBAAqB,CAAA;IACpC,QAAQ,CAAC,UAAU,EAAE,MAAM,CAAA;IAC3B,QAAQ,CAAC,QAAQ,EAAE,MAAM,CAAA;IACzB,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAA;CACtC;AAID;;GAEG;AACH,MAAM,WAAW,qBAAqB;IACrC,QAAQ,CAAC,IAAI,EAAE,kBAAkB,CAAA;IACjC,QAAQ,CAAC,UAAU,EAAE,MAAM,CAAA;IAC3B,QAAQ,CAAC,QAAQ,EAAE,MAAM,CAAA;IACzB,QAAQ,CAAC,SAAS,EAAE,MAAM,CAAA;IAC1B,QAAQ,CAAC,QAAQ,EAAE,MAAM,CAAA;IACzB,QAAQ,CAAC,UAAU,EAAE,MAAM,CAAA;CAC3B;AAED;;GAEG;AACH,MAAM,WAAW,wBAAwB;IACxC,QAAQ,CAAC,IAAI,EAAE,qBAAqB,CAAA;IACpC,QAAQ,CAAC,UAAU,EAAE,MAAM,CAAA;IAC3B,QAAQ,CAAC,QAAQ,EAAE,MAAM,CAAA;IACzB,QAAQ,CAAC,SAAS,EAAE,MAAM,CAAA;CAC1B;AAED;;GAEG;AACH,MAAM,WAAW,oBAAoB;IACpC,QAAQ,CAAC,IAAI,EAAE,iBAAiB,CAAA;IAChC,QAAQ,CAAC,UAAU,EAAE,MAAM,CAAA;IAC3B,QAAQ,CAAC,QAAQ,EAAE,MAAM,CAAA;IACzB,QAAQ,CAAC,SAAS,EAAE,MAAM,CAAA;CAC1B;AAED;;GAEG;AACH,MAAM,WAAW,mBAAmB;IACnC,QAAQ,CAAC,IAAI,EAAE,gBAAgB,CAAA;IAC/B,QAAQ,CAAC,UAAU,EAAE,MAAM,CAAA;IAC3B,QAAQ,CAAC,QAAQ,EAAE,MAAM,CAAA;IACzB,QAAQ,CAAC,SAAS,EAAE,MAAM,CAAA;CAC1B;AAED;;GAEG;AACH,MAAM,WAAW,oBAAoB;IACpC,QAAQ,CAAC,IAAI,EAAE,iBAAiB,CAAA;IAChC,QAAQ,CAAC,UAAU,EAAE,MAAM,CAAA;IAC3B,QAAQ,CAAC,QAAQ,EAAE,MAAM,CAAA;IACzB,QAAQ,CAAC,SAAS,EAAE,MAAM,CAAA;CAC1B;AAED;;GAEG;AACH,MAAM,WAAW,wBAAwB;IACxC,QAAQ,CAAC,IAAI,EAAE,sBAAsB,CAAA;IACrC,QAAQ,CAAC,UAAU,EAAE,MAAM,CAAA;IAC3B,QAAQ,CAAC,QAAQ,EAAE,MAAM,CAAA;IACzB,QAAQ,CAAC,SAAS,EAAE,MAAM,CAAA;IAC1B,QAAQ,CAAC,SAAS,EAAE,MAAM,EAAE,CAAA;IAC5B,QAAQ,CAAC,KAAK,EAAE,OAAO,CAAA;CACvB;AAID;;GAEG;AACH,MAAM,WAAW,mBAAmB;IACnC,QAAQ,CAAC,IAAI,EAAE,iBAAiB,CAAA;IAChC,QAAQ,CAAC,UAAU,EAAE,MAAM,CAAA;IAC3B,QAAQ,CAAC,QAAQ,EAAE,MAAM,CAAA;IACzB,QAAQ,CAAC,SAAS,EAAE,MAAM,CAAA;IAC1B,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAA;IACvB,QAAQ,CAAC,UAAU,EAAE,MAAM,CAAA;IAC3B,QAAQ,CAAC,KAAK,CAAC,EAAE,MAAM,CAAA;CACvB;AAED;;GAEG;AACH,MAAM,WAAW,eAAe;IAC/B,QAAQ,CAAC,IAAI,EAAE,aAAa,CAAA;IAC5B,QAAQ,CAAC,UAAU,EAAE,MAAM,CAAA;IAC3B,QAAQ,CAAC,QAAQ,EAAE,MAAM,CAAA;IACzB,QAAQ,CAAC,SAAS,EAAE,MAAM,CAAA;IAC1B,QAAQ,CAAC,UAAU,EAAE,MAAM,CAAA;IAC3B,QAAQ,CAAC,QAAQ,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAA;IAC3C,QAAQ,CAAC,MAAM,CAAC,EAAE,MAAM,CAAA;IACxB,QAAQ,CAAC,KAAK,CAAC,EAAE,MAAM,CAAA;CACvB;AAED;;GAEG;AACH,MAAM,WAAW,oBAAoB;IACpC,QAAQ,CAAC,IAAI,EAAE,kBAAkB,CAAA;IACjC,QAAQ,CAAC,UAAU,EAAE,MAAM,CAAA;IAC3B,QAAQ,CAAC,QAAQ,EAAE,MAAM,CAAA;IACzB,QAAQ,CAAC,SAAS,EAAE,MAAM,CAAA;IAC1B,QAAQ,CAAC,OAAO,EAAE,MAAM,CAAA;IACxB,QAAQ,CAAC,WAAW,EAAE,YAAY,GAAG,QAAQ,CAAA;IAC7C,QAAQ,CAAC,KAAK,CAAC,EAAE,MAAM,CAAA;CACvB;AAED;;GAEG;AACH,MAAM,WAAW,gBAAgB;IAChC,QAAQ,CAAC,IAAI,EAAE,cAAc,CAAA;IAC7B,QAAQ,CAAC,UAAU,EAAE,MAAM,CAAA;IAC3B,QAAQ,CAAC,QAAQ,EAAE,MAAM,CAAA;IACzB,QAAQ,CAAC,SAAS,EAAE,MAAM,CAAA;IAC1B,QAAQ,CAAC,SAAS,EAAE,MAAM,CAAA;IAC1B,QAAQ,CAAC,OAAO,EAAE,MAAM,CAAA;IACxB,QAAQ,CAAC,KAAK,CAAC,EAAE,MAAM,CAAA;CACvB;AAID;;GAEG;AACH,MAAM,WAAW,kBAAkB;IAClC,QAAQ,CAAC,IAAI,EAAE,gBAAgB,CAAA;IAC/B,QAAQ,CAAC,UAAU,EAAE,MAAM,CAAA;IAC3B,QAAQ,CAAC,QAAQ,EAAE,MAAM,CAAA;IACzB,QAAQ,CAAC,MAAM,EAAE,MAAM,GAAG,SAAS,GAAG,SAAS,GAAG,OAAO,GAAG,WAAW,CAAA;IACvE,QAAQ,CAAC,KAAK,CAAC,EAAE,UAAU,CAAA;CAC3B;AAED;;GAEG;AACH,MAAM,WAAW,mBAAmB;IACnC,QAAQ,CAAC,IAAI,EAAE,gBAAgB,CAAA;IAC/B,QAAQ,CAAC,UAAU,EAAE,MAAM,CAAA;IAC3B,QAAQ,CAAC,QAAQ,EAAE,MAAM,CAAA;IACzB,QAAQ,CAAC,YAAY,EAAE,OAAO,CAAA;CAC9B;AAID;;GAEG;AACH,MAAM,WAAW,mBAAmB;IACnC,QAAQ,CAAC,IAAI,EAAE,iBAAiB,CAAA;IAChC,QAAQ,CAAC,UAAU,EAAE,MAAM,CAAA;IAC3B,QAAQ,CAAC,QAAQ,EAAE,MAAM,CAAA;IACzB,QAAQ,CAAC,SAAS,EAAE,MAAM,CAAA;IAC1B,QAAQ,CAAC,KAAK,EAAE,UAAU,CAAA;CAC1B;AAED;;GAEG;AACH,MAAM,WAAW,sBAAsB;IACtC,QAAQ,CAAC,IAAI,EAAE,oBAAoB,CAAA;IACnC,QAAQ,CAAC,UAAU,EAAE,MAAM,CAAA;IAC3B,QAAQ,CAAC,QAAQ,EAAE,MAAM,CAAA;IACzB,QAAQ,CAAC,SAAS,EAAE,MAAM,CAAA;IAC1B,QAAQ,CAAC,MAAM,CAAC,EAAE,QAAQ,GAAG,QAAQ,CAAA;CACrC;AAED;;GAEG;AACH,MAAM,WAAW,oBAAoB;IACpC,QAAQ,CAAC,IAAI,EAAE,kBAAkB,CAAA;IACjC,QAAQ,CAAC,UAAU,EAAE,MAAM,CAAA;IAC3B,QAAQ,CAAC,QAAQ,EAAE,MAAM,CAAA;IACzB,QAAQ,CAAC,KAAK,EAAE,UAAU,CAAA;CAC1B;AAED;;GAEG;AACH,MAAM,WAAW,uBAAuB;IACvC,QAAQ,CAAC,IAAI,EAAE,qBAAqB,CAAA;IACpC,QAAQ,CAAC,UAAU,EAAE,MAAM,CAAA;IAC3B,QAAQ,CAAC,QAAQ,EAAE,MAAM,CAAA;IACzB,QAAQ,CAAC,MAAM,CAAC,EAAE,QAAQ,GAAG,QAAQ,CAAA;CACrC;AAED;;GAEG;AACH,MAAM,WAAW,sBAAsB;IACtC,QAAQ,CAAC,IAAI,EAAE,oBAAoB,CAAA;IACnC,QAAQ,CAAC,UAAU,EAAE,MAAM,CAAA;IAC3B,QAAQ,CAAC,QAAQ,EAAE,MAAM,CAAA;IACzB,QAAQ,CAAC,YAAY,EAAE,MAAM,CAAA;IAC7B,QAAQ,CAAC,KAAK,EAAE,UAAU,CAAA;CAC1B;AAED;;GAEG;AACH,MAAM,WAAW,yBAAyB;IACzC,QAAQ,CAAC,IAAI,EAAE,uBAAuB,CAAA;IACtC,QAAQ,CAAC,UAAU,EAAE,MAAM,CAAA;IAC3B,QAAQ,CAAC,QAAQ,EAAE,MAAM,CAAA;IACzB,QAAQ,CAAC,YAAY,EAAE,MAAM,CAAA;IAC7B,QAAQ,CAAC,MAAM,CAAC,EAAE,QAAQ,GAAG,QAAQ,CAAA;CACrC;AAED;;GAEG;AACH,MAAM,WAAW,0BAA0B;IAC1C,QAAQ,CAAC,IAAI,EAAE,yBAAyB,CAAA;IACxC,QAAQ,CAAC,UAAU,EAAE,MAAM,CAAA;IAC3B,QAAQ,CAAC,QAAQ,EAAE,MAAM,CAAA;CACzB;AAED;;GAEG;AACH,MAAM,WAAW,oBAAoB;IACpC,QAAQ,CAAC,IAAI,EAAE,kBAAkB,CAAA;IACjC,QAAQ,CAAC,UAAU,EAAE,MAAM,CAAA;IAC3B,QAAQ,CAAC,QAAQ,EAAE,MAAM,CAAA;CACzB;AAID;;GAEG;AACH,MAAM,MAAM,MAAM,GACf,cAAc,GACd,iBAAiB,GACjB,kBAAkB,GAClB,mBAAmB,GACnB,uBAAuB,GACvB,qBAAqB,GACrB,wBAAwB,GACxB,oBAAoB,GACpB,mBAAmB,GACnB,oBAAoB,GACpB,wBAAwB,GACxB,mBAAmB,GACnB,eAAe,GACf,oBAAoB,GACpB,gBAAgB,GAChB,kBAAkB,GAClB,mBAAmB,GACnB,mBAAmB,GACnB,sBAAsB,GACtB,oBAAoB,GACpB,uBAAuB,GACvB,sBAAsB,GACtB,yBAAyB,GACzB,0BAA0B,GAC1B,oBAAoB,CAAA;AAIvB;;GAEG;AACH,wBAAgB,QAAQ,CACvB,UAAU,EAAE,MAAM,EAClB,QAAQ,EAAE,MAAM,EAChB,SAAS,EAAE,MAAM,EAAE,EACnB,KAAK,EAAE,OAAO,GACZ,cAAc,CAEhB;AAED;;GAEG;AACH,wBAAgB,WAAW,CAAC,UAAU,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,GAAG,iBAAiB,CAEnF;AAED;;GAEG;AACH,wBAAgB,YAAY,CAAC,UAAU,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,GAAG,kBAAkB,CAErF;AAED;;GAEG;AACH,wBAAgB,aAAa,CAC5B,UAAU,EAAE,MAAM,EAClB,QAAQ,EAAE,MAAM,EAChB,IAAI,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EAC7B,YAAY,GAAE,OAAe,GAC3B,mBAAmB,CAErB;AAED;;;;;GAKG;AACH,wBAAgB,iBAAiB,CAChC,UAAU,EAAE,MAAM,EAClB,QAAQ,EAAE,MAAM,EAChB,IAAI,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAC3B,uBAAuB,CAEzB;AAED;;GAEG;AACH,wBAAgB,eAAe,CAC9B,UAAU,EAAE,MAAM,EAClB,QAAQ,EAAE,MAAM,EAChB,SAAS,EAAE,MAAM,EACjB,QAAQ,EAAE,MAAM,EAChB,UAAU,EAAE,MAAM,GAChB,qBAAqB,CAEvB;AAED;;GAEG;AACH,wBAAgB,kBAAkB,CACjC,UAAU,EAAE,MAAM,EAClB,QAAQ,EAAE,MAAM,EAChB,SAAS,EAAE,MAAM,GACf,wBAAwB,CAE1B;AAED;;GAEG;AACH,wBAAgB,cAAc,CAC7B,UAAU,EAAE,MAAM,EAClB,QAAQ,EAAE,MAAM,EAChB,SAAS,EAAE,MAAM,GACf,oBAAoB,CAEtB;AAED;;GAEG;AACH,wBAAgB,YAAY,CAC3B,UAAU,EAAE,MAAM,EAClB,QAAQ,EAAE,MAAM,EAChB,MAAM,EAAE,MAAM,GAAG,SAAS,GAAG,SAAS,GAAG,OAAO,GAAG,WAAW,EAC9D,KAAK,CAAC,EAAE,UAAU,GAChB,kBAAkB,CAEpB;AAED;;GAEG;AACH,wBAAgB,aAAa,CAC5B,UAAU,EAAE,MAAM,EAClB,QAAQ,EAAE,MAAM,EAChB,YAAY,EAAE,OAAO,
|
|
1
|
+
{"version":3,"file":"actions.d.ts","sourceRoot":"","sources":["../../src/core/actions.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,oBAAoB,CAAA;AAEpD;;;GAGG;AAIH;;GAEG;AACH,MAAM,WAAW,cAAc;IAC9B,QAAQ,CAAC,IAAI,EAAE,WAAW,CAAA;IAC1B,QAAQ,CAAC,UAAU,EAAE,MAAM,CAAA;IAC3B,QAAQ,CAAC,QAAQ,EAAE,MAAM,CAAA;IACzB,QAAQ,CAAC,SAAS,EAAE,MAAM,EAAE,CAAA;IAC5B,QAAQ,CAAC,KAAK,EAAE,OAAO,CAAA;CACvB;AAID;;GAEG;AACH,MAAM,WAAW,iBAAiB;IACjC,QAAQ,CAAC,IAAI,EAAE,cAAc,CAAA;IAC7B,QAAQ,CAAC,UAAU,EAAE,MAAM,CAAA;IAC3B,QAAQ,CAAC,QAAQ,EAAE,MAAM,CAAA;CACzB;AAED;;GAEG;AACH,MAAM,WAAW,kBAAkB;IAClC,QAAQ,CAAC,IAAI,EAAE,eAAe,CAAA;IAC9B,QAAQ,CAAC,UAAU,EAAE,MAAM,CAAA;IAC3B,QAAQ,CAAC,QAAQ,EAAE,MAAM,CAAA;CACzB;AAED;;GAEG;AACH,MAAM,WAAW,mBAAmB;IACnC,QAAQ,CAAC,IAAI,EAAE,iBAAiB,CAAA;IAChC,QAAQ,CAAC,UAAU,EAAE,MAAM,CAAA;IAC3B,QAAQ,CAAC,QAAQ,EAAE,MAAM,CAAA;IACzB,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAA;IACtC,QAAQ,CAAC,YAAY,EAAE,OAAO,CAAA;CAC9B;AAED;;GAEG;AACH,MAAM,WAAW,uBAAuB;IACvC,QAAQ,CAAC,IAAI,EAAE,qBAAqB,CAAA;IACpC,QAAQ,CAAC,UAAU,EAAE,MAAM,CAAA;IAC3B,QAAQ,CAAC,QAAQ,EAAE,MAAM,CAAA;IACzB,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAA;CACtC;AAID;;GAEG;AACH,MAAM,WAAW,qBAAqB;IACrC,QAAQ,CAAC,IAAI,EAAE,kBAAkB,CAAA;IACjC,QAAQ,CAAC,UAAU,EAAE,MAAM,CAAA;IAC3B,QAAQ,CAAC,QAAQ,EAAE,MAAM,CAAA;IACzB,QAAQ,CAAC,SAAS,EAAE,MAAM,CAAA;IAC1B,QAAQ,CAAC,QAAQ,EAAE,MAAM,CAAA;IACzB,QAAQ,CAAC,UAAU,EAAE,MAAM,CAAA;CAC3B;AAED;;GAEG;AACH,MAAM,WAAW,wBAAwB;IACxC,QAAQ,CAAC,IAAI,EAAE,qBAAqB,CAAA;IACpC,QAAQ,CAAC,UAAU,EAAE,MAAM,CAAA;IAC3B,QAAQ,CAAC,QAAQ,EAAE,MAAM,CAAA;IACzB,QAAQ,CAAC,SAAS,EAAE,MAAM,CAAA;CAC1B;AAED;;GAEG;AACH,MAAM,WAAW,oBAAoB;IACpC,QAAQ,CAAC,IAAI,EAAE,iBAAiB,CAAA;IAChC,QAAQ,CAAC,UAAU,EAAE,MAAM,CAAA;IAC3B,QAAQ,CAAC,QAAQ,EAAE,MAAM,CAAA;IACzB,QAAQ,CAAC,SAAS,EAAE,MAAM,CAAA;CAC1B;AAED;;GAEG;AACH,MAAM,WAAW,mBAAmB;IACnC,QAAQ,CAAC,IAAI,EAAE,gBAAgB,CAAA;IAC/B,QAAQ,CAAC,UAAU,EAAE,MAAM,CAAA;IAC3B,QAAQ,CAAC,QAAQ,EAAE,MAAM,CAAA;IACzB,QAAQ,CAAC,SAAS,EAAE,MAAM,CAAA;CAC1B;AAED;;GAEG;AACH,MAAM,WAAW,oBAAoB;IACpC,QAAQ,CAAC,IAAI,EAAE,iBAAiB,CAAA;IAChC,QAAQ,CAAC,UAAU,EAAE,MAAM,CAAA;IAC3B,QAAQ,CAAC,QAAQ,EAAE,MAAM,CAAA;IACzB,QAAQ,CAAC,SAAS,EAAE,MAAM,CAAA;CAC1B;AAED;;GAEG;AACH,MAAM,WAAW,wBAAwB;IACxC,QAAQ,CAAC,IAAI,EAAE,sBAAsB,CAAA;IACrC,QAAQ,CAAC,UAAU,EAAE,MAAM,CAAA;IAC3B,QAAQ,CAAC,QAAQ,EAAE,MAAM,CAAA;IACzB,QAAQ,CAAC,SAAS,EAAE,MAAM,CAAA;IAC1B,QAAQ,CAAC,SAAS,EAAE,MAAM,EAAE,CAAA;IAC5B,QAAQ,CAAC,KAAK,EAAE,OAAO,CAAA;CACvB;AAID;;GAEG;AACH,MAAM,WAAW,mBAAmB;IACnC,QAAQ,CAAC,IAAI,EAAE,iBAAiB,CAAA;IAChC,QAAQ,CAAC,UAAU,EAAE,MAAM,CAAA;IAC3B,QAAQ,CAAC,QAAQ,EAAE,MAAM,CAAA;IACzB,QAAQ,CAAC,SAAS,EAAE,MAAM,CAAA;IAC1B,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAA;IACvB,QAAQ,CAAC,UAAU,EAAE,MAAM,CAAA;IAC3B,QAAQ,CAAC,KAAK,CAAC,EAAE,MAAM,CAAA;CACvB;AAED;;GAEG;AACH,MAAM,WAAW,eAAe;IAC/B,QAAQ,CAAC,IAAI,EAAE,aAAa,CAAA;IAC5B,QAAQ,CAAC,UAAU,EAAE,MAAM,CAAA;IAC3B,QAAQ,CAAC,QAAQ,EAAE,MAAM,CAAA;IACzB,QAAQ,CAAC,SAAS,EAAE,MAAM,CAAA;IAC1B,QAAQ,CAAC,UAAU,EAAE,MAAM,CAAA;IAC3B,QAAQ,CAAC,QAAQ,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAA;IAC3C,QAAQ,CAAC,MAAM,CAAC,EAAE,MAAM,CAAA;IACxB,QAAQ,CAAC,KAAK,CAAC,EAAE,MAAM,CAAA;CACvB;AAED;;GAEG;AACH,MAAM,WAAW,oBAAoB;IACpC,QAAQ,CAAC,IAAI,EAAE,kBAAkB,CAAA;IACjC,QAAQ,CAAC,UAAU,EAAE,MAAM,CAAA;IAC3B,QAAQ,CAAC,QAAQ,EAAE,MAAM,CAAA;IACzB,QAAQ,CAAC,SAAS,EAAE,MAAM,CAAA;IAC1B,QAAQ,CAAC,OAAO,EAAE,MAAM,CAAA;IACxB,QAAQ,CAAC,WAAW,EAAE,YAAY,GAAG,QAAQ,CAAA;IAC7C,QAAQ,CAAC,KAAK,CAAC,EAAE,MAAM,CAAA;CACvB;AAED;;GAEG;AACH,MAAM,WAAW,gBAAgB;IAChC,QAAQ,CAAC,IAAI,EAAE,cAAc,CAAA;IAC7B,QAAQ,CAAC,UAAU,EAAE,MAAM,CAAA;IAC3B,QAAQ,CAAC,QAAQ,EAAE,MAAM,CAAA;IACzB,QAAQ,CAAC,SAAS,EAAE,MAAM,CAAA;IAC1B,QAAQ,CAAC,SAAS,EAAE,MAAM,CAAA;IAC1B,QAAQ,CAAC,OAAO,EAAE,MAAM,CAAA;IACxB,QAAQ,CAAC,KAAK,CAAC,EAAE,MAAM,CAAA;CACvB;AAID;;GAEG;AACH,MAAM,WAAW,kBAAkB;IAClC,QAAQ,CAAC,IAAI,EAAE,gBAAgB,CAAA;IAC/B,QAAQ,CAAC,UAAU,EAAE,MAAM,CAAA;IAC3B,QAAQ,CAAC,QAAQ,EAAE,MAAM,CAAA;IACzB,QAAQ,CAAC,MAAM,EAAE,MAAM,GAAG,SAAS,GAAG,SAAS,GAAG,OAAO,GAAG,WAAW,CAAA;IACvE,QAAQ,CAAC,KAAK,CAAC,EAAE,UAAU,CAAA;CAC3B;AAED;;GAEG;AACH,MAAM,WAAW,mBAAmB;IACnC,QAAQ,CAAC,IAAI,EAAE,gBAAgB,CAAA;IAC/B,QAAQ,CAAC,UAAU,EAAE,MAAM,CAAA;IAC3B,QAAQ,CAAC,QAAQ,EAAE,MAAM,CAAA;IACzB,QAAQ,CAAC,YAAY,EAAE,OAAO,CAAA;IAC9B;;;;OAIG;IACH,QAAQ,CAAC,WAAW,CAAC,EAAE,OAAO,CAAA;CAC9B;AAID;;GAEG;AACH,MAAM,WAAW,mBAAmB;IACnC,QAAQ,CAAC,IAAI,EAAE,iBAAiB,CAAA;IAChC,QAAQ,CAAC,UAAU,EAAE,MAAM,CAAA;IAC3B,QAAQ,CAAC,QAAQ,EAAE,MAAM,CAAA;IACzB,QAAQ,CAAC,SAAS,EAAE,MAAM,CAAA;IAC1B,QAAQ,CAAC,KAAK,EAAE,UAAU,CAAA;CAC1B;AAED;;GAEG;AACH,MAAM,WAAW,sBAAsB;IACtC,QAAQ,CAAC,IAAI,EAAE,oBAAoB,CAAA;IACnC,QAAQ,CAAC,UAAU,EAAE,MAAM,CAAA;IAC3B,QAAQ,CAAC,QAAQ,EAAE,MAAM,CAAA;IACzB,QAAQ,CAAC,SAAS,EAAE,MAAM,CAAA;IAC1B,QAAQ,CAAC,MAAM,CAAC,EAAE,QAAQ,GAAG,QAAQ,CAAA;CACrC;AAED;;GAEG;AACH,MAAM,WAAW,oBAAoB;IACpC,QAAQ,CAAC,IAAI,EAAE,kBAAkB,CAAA;IACjC,QAAQ,CAAC,UAAU,EAAE,MAAM,CAAA;IAC3B,QAAQ,CAAC,QAAQ,EAAE,MAAM,CAAA;IACzB,QAAQ,CAAC,KAAK,EAAE,UAAU,CAAA;CAC1B;AAED;;GAEG;AACH,MAAM,WAAW,uBAAuB;IACvC,QAAQ,CAAC,IAAI,EAAE,qBAAqB,CAAA;IACpC,QAAQ,CAAC,UAAU,EAAE,MAAM,CAAA;IAC3B,QAAQ,CAAC,QAAQ,EAAE,MAAM,CAAA;IACzB,QAAQ,CAAC,MAAM,CAAC,EAAE,QAAQ,GAAG,QAAQ,CAAA;CACrC;AAED;;GAEG;AACH,MAAM,WAAW,sBAAsB;IACtC,QAAQ,CAAC,IAAI,EAAE,oBAAoB,CAAA;IACnC,QAAQ,CAAC,UAAU,EAAE,MAAM,CAAA;IAC3B,QAAQ,CAAC,QAAQ,EAAE,MAAM,CAAA;IACzB,QAAQ,CAAC,YAAY,EAAE,MAAM,CAAA;IAC7B,QAAQ,CAAC,KAAK,EAAE,UAAU,CAAA;CAC1B;AAED;;GAEG;AACH,MAAM,WAAW,yBAAyB;IACzC,QAAQ,CAAC,IAAI,EAAE,uBAAuB,CAAA;IACtC,QAAQ,CAAC,UAAU,EAAE,MAAM,CAAA;IAC3B,QAAQ,CAAC,QAAQ,EAAE,MAAM,CAAA;IACzB,QAAQ,CAAC,YAAY,EAAE,MAAM,CAAA;IAC7B,QAAQ,CAAC,MAAM,CAAC,EAAE,QAAQ,GAAG,QAAQ,CAAA;CACrC;AAED;;GAEG;AACH,MAAM,WAAW,0BAA0B;IAC1C,QAAQ,CAAC,IAAI,EAAE,yBAAyB,CAAA;IACxC,QAAQ,CAAC,UAAU,EAAE,MAAM,CAAA;IAC3B,QAAQ,CAAC,QAAQ,EAAE,MAAM,CAAA;CACzB;AAED;;GAEG;AACH,MAAM,WAAW,oBAAoB;IACpC,QAAQ,CAAC,IAAI,EAAE,kBAAkB,CAAA;IACjC,QAAQ,CAAC,UAAU,EAAE,MAAM,CAAA;IAC3B,QAAQ,CAAC,QAAQ,EAAE,MAAM,CAAA;CACzB;AAID;;GAEG;AACH,MAAM,MAAM,MAAM,GACf,cAAc,GACd,iBAAiB,GACjB,kBAAkB,GAClB,mBAAmB,GACnB,uBAAuB,GACvB,qBAAqB,GACrB,wBAAwB,GACxB,oBAAoB,GACpB,mBAAmB,GACnB,oBAAoB,GACpB,wBAAwB,GACxB,mBAAmB,GACnB,eAAe,GACf,oBAAoB,GACpB,gBAAgB,GAChB,kBAAkB,GAClB,mBAAmB,GACnB,mBAAmB,GACnB,sBAAsB,GACtB,oBAAoB,GACpB,uBAAuB,GACvB,sBAAsB,GACtB,yBAAyB,GACzB,0BAA0B,GAC1B,oBAAoB,CAAA;AAIvB;;GAEG;AACH,wBAAgB,QAAQ,CACvB,UAAU,EAAE,MAAM,EAClB,QAAQ,EAAE,MAAM,EAChB,SAAS,EAAE,MAAM,EAAE,EACnB,KAAK,EAAE,OAAO,GACZ,cAAc,CAEhB;AAED;;GAEG;AACH,wBAAgB,WAAW,CAAC,UAAU,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,GAAG,iBAAiB,CAEnF;AAED;;GAEG;AACH,wBAAgB,YAAY,CAAC,UAAU,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,GAAG,kBAAkB,CAErF;AAED;;GAEG;AACH,wBAAgB,aAAa,CAC5B,UAAU,EAAE,MAAM,EAClB,QAAQ,EAAE,MAAM,EAChB,IAAI,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EAC7B,YAAY,GAAE,OAAe,GAC3B,mBAAmB,CAErB;AAED;;;;;GAKG;AACH,wBAAgB,iBAAiB,CAChC,UAAU,EAAE,MAAM,EAClB,QAAQ,EAAE,MAAM,EAChB,IAAI,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAC3B,uBAAuB,CAEzB;AAED;;GAEG;AACH,wBAAgB,eAAe,CAC9B,UAAU,EAAE,MAAM,EAClB,QAAQ,EAAE,MAAM,EAChB,SAAS,EAAE,MAAM,EACjB,QAAQ,EAAE,MAAM,EAChB,UAAU,EAAE,MAAM,GAChB,qBAAqB,CAEvB;AAED;;GAEG;AACH,wBAAgB,kBAAkB,CACjC,UAAU,EAAE,MAAM,EAClB,QAAQ,EAAE,MAAM,EAChB,SAAS,EAAE,MAAM,GACf,wBAAwB,CAE1B;AAED;;GAEG;AACH,wBAAgB,cAAc,CAC7B,UAAU,EAAE,MAAM,EAClB,QAAQ,EAAE,MAAM,EAChB,SAAS,EAAE,MAAM,GACf,oBAAoB,CAEtB;AAED;;GAEG;AACH,wBAAgB,YAAY,CAC3B,UAAU,EAAE,MAAM,EAClB,QAAQ,EAAE,MAAM,EAChB,MAAM,EAAE,MAAM,GAAG,SAAS,GAAG,SAAS,GAAG,OAAO,GAAG,WAAW,EAC9D,KAAK,CAAC,EAAE,UAAU,GAChB,kBAAkB,CAEpB;AAED;;GAEG;AACH,wBAAgB,aAAa,CAC5B,UAAU,EAAE,MAAM,EAClB,QAAQ,EAAE,MAAM,EAChB,YAAY,EAAE,OAAO,EACrB,WAAW,GAAE,OAAe,GAC1B,mBAAmB,CAErB;AAED;;GAEG;AACH,wBAAgB,kBAAkB,CACjC,UAAU,EAAE,MAAM,EAClB,QAAQ,EAAE,MAAM,EAChB,SAAS,EAAE,MAAM,EACjB,SAAS,EAAE,MAAM,EAAE,EACnB,KAAK,EAAE,OAAO,GACZ,wBAAwB,CAE1B;AAED;;GAEG;AACH,wBAAgB,aAAa,CAC5B,UAAU,EAAE,MAAM,EAClB,QAAQ,EAAE,MAAM,EAChB,SAAS,EAAE,MAAM,EACjB,KAAK,EAAE,UAAU,GACf,mBAAmB,CAErB;AAED;;GAEG;AACH,wBAAgB,gBAAgB,CAC/B,UAAU,EAAE,MAAM,EAClB,QAAQ,EAAE,MAAM,EAChB,SAAS,EAAE,MAAM,EACjB,MAAM,CAAC,EAAE,QAAQ,GAAG,QAAQ,GAC1B,sBAAsB,CAExB;AAED;;GAEG;AACH,wBAAgB,cAAc,CAC7B,UAAU,EAAE,MAAM,EAClB,QAAQ,EAAE,MAAM,EAChB,KAAK,EAAE,UAAU,GACf,oBAAoB,CAEtB;AAED;;GAEG;AACH,wBAAgB,iBAAiB,CAChC,UAAU,EAAE,MAAM,EAClB,QAAQ,EAAE,MAAM,EAChB,MAAM,CAAC,EAAE,QAAQ,GAAG,QAAQ,GAC1B,uBAAuB,CAEzB;AAED;;GAEG;AACH,wBAAgB,gBAAgB,CAC/B,UAAU,EAAE,MAAM,EAClB,QAAQ,EAAE,MAAM,EAChB,YAAY,EAAE,MAAM,EACpB,KAAK,EAAE,UAAU,GACf,sBAAsB,CAExB;AAED;;GAEG;AACH,wBAAgB,mBAAmB,CAClC,UAAU,EAAE,MAAM,EAClB,QAAQ,EAAE,MAAM,EAChB,YAAY,EAAE,MAAM,EACpB,MAAM,CAAC,EAAE,QAAQ,GAAG,QAAQ,GAC1B,yBAAyB,CAE3B;AAED;;GAEG;AACH,wBAAgB,oBAAoB,CACnC,UAAU,EAAE,MAAM,EAClB,QAAQ,EAAE,MAAM,GACd,0BAA0B,CAE5B;AAED;;GAEG;AACH,wBAAgB,cAAc,CAC7B,UAAU,EAAE,MAAM,EAClB,QAAQ,EAAE,MAAM,GACd,oBAAoB,CAEtB;AAID;;GAEG;AACH,wBAAgB,aAAa,CAC5B,UAAU,EAAE,MAAM,EAClB,QAAQ,EAAE,MAAM,EAChB,SAAS,EAAE,MAAM,EACjB,MAAM,EAAE,MAAM,EACd,UAAU,EAAE,MAAM,EAClB,KAAK,CAAC,EAAE,MAAM,GACZ,mBAAmB,CAErB;AAED;;GAEG;AACH,wBAAgB,SAAS,CACxB,UAAU,EAAE,MAAM,EAClB,QAAQ,EAAE,MAAM,EAChB,SAAS,EAAE,MAAM,EACjB,UAAU,EAAE,MAAM,EAClB,MAAM,EAAE,MAAM,EACd,KAAK,CAAC,EAAE,MAAM,GACZ,eAAe,CAEjB;AAED;;GAEG;AACH,wBAAgB,cAAc,CAC7B,UAAU,EAAE,MAAM,EAClB,QAAQ,EAAE,MAAM,EAChB,SAAS,EAAE,MAAM,EACjB,OAAO,EAAE,MAAM,EACf,WAAW,EAAE,YAAY,GAAG,QAAQ,EACpC,KAAK,CAAC,EAAE,MAAM,GACZ,oBAAoB,CAEtB;AAED;;GAEG;AACH,wBAAgB,UAAU,CACzB,UAAU,EAAE,MAAM,EAClB,QAAQ,EAAE,MAAM,EAChB,SAAS,EAAE,MAAM,EACjB,SAAS,EAAE,MAAM,EACjB,OAAO,EAAE,MAAM,EACf,KAAK,CAAC,EAAE,MAAM,GACZ,gBAAgB,CAElB"}
|
|
@@ -3,6 +3,7 @@
|
|
|
3
3
|
* Supports both scoped (entity/field-level) and global subscriptions.
|
|
4
4
|
*/
|
|
5
5
|
import type { AfterEvent, AfterEventTypes, BeforeEvent, BeforeEventTypes, EventListener, EventTypeMap, Interceptor, Unsubscribe } from './types.js';
|
|
6
|
+
import type { RekeyContext, Rekeyable } from '../store/RekeyOrchestrator.js';
|
|
6
7
|
/**
|
|
7
8
|
* EventEmitter for the bindx event system.
|
|
8
9
|
*
|
|
@@ -12,11 +13,13 @@ import type { AfterEvent, AfterEventTypes, BeforeEvent, BeforeEventTypes, EventL
|
|
|
12
13
|
* - Field-scoped subscriptions (events for a specific field/relation)
|
|
13
14
|
* - Interceptors for before-events (can cancel or modify)
|
|
14
15
|
*/
|
|
15
|
-
export declare class EventEmitter {
|
|
16
|
+
export declare class EventEmitter implements Rekeyable {
|
|
16
17
|
private readonly globalListeners;
|
|
17
18
|
private readonly scopedListeners;
|
|
18
19
|
private readonly globalInterceptors;
|
|
19
20
|
private readonly scopedInterceptors;
|
|
21
|
+
/** Old scope keys retained so pre-rekey unsubscribe closures still resolve. */
|
|
22
|
+
private readonly scopeKeyRedirects;
|
|
20
23
|
/**
|
|
21
24
|
* Subscribe to an event globally (receives all events of that type).
|
|
22
25
|
*/
|
|
@@ -42,6 +45,11 @@ export declare class EventEmitter {
|
|
|
42
45
|
* Add a field-scoped interceptor.
|
|
43
46
|
*/
|
|
44
47
|
interceptField<T extends BeforeEventTypes>(eventType: T, entityType: string, entityId: string, fieldName: string, interceptor: Interceptor<EventTypeMap[T] & BeforeEvent>): Unsubscribe;
|
|
48
|
+
/**
|
|
49
|
+
* Whether any interceptor could receive this event for the given entity.
|
|
50
|
+
* Lets a caller skip the (async) interceptor pipeline when nothing is listening.
|
|
51
|
+
*/
|
|
52
|
+
hasInterceptors(eventType: string, entityType: string, entityId: string): boolean;
|
|
45
53
|
/**
|
|
46
54
|
* Runs interceptors for a before event.
|
|
47
55
|
* Returns the (possibly modified) event or null if cancelled.
|
|
@@ -55,6 +63,10 @@ export declare class EventEmitter {
|
|
|
55
63
|
* Builds a scope key for listener/interceptor lookup.
|
|
56
64
|
*/
|
|
57
65
|
private buildScopeKey;
|
|
66
|
+
private resolveScopeKey;
|
|
67
|
+
private removeScoped;
|
|
68
|
+
rekey(ctx: RekeyContext): void;
|
|
69
|
+
private rekeyScopedMap;
|
|
58
70
|
/**
|
|
59
71
|
* Gets or creates a Set in a Map.
|
|
60
72
|
*/
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"EventEmitter.d.ts","sourceRoot":"","sources":["../../src/events/EventEmitter.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,OAAO,KAAK,EACX,UAAU,EACV,eAAe,EACf,WAAW,EACX,gBAAgB,EAChB,aAAa,EACb,YAAY,EAEZ,WAAW,EAEX,WAAW,EACX,MAAM,YAAY,CAAA;
|
|
1
|
+
{"version":3,"file":"EventEmitter.d.ts","sourceRoot":"","sources":["../../src/events/EventEmitter.ts"],"names":[],"mappings":"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"}
|
|
@@ -33,8 +33,10 @@ export declare abstract class BaseHandle {
|
|
|
33
33
|
*/
|
|
34
34
|
export declare abstract class EntityRelatedHandle extends BaseHandle {
|
|
35
35
|
protected readonly entityType: string;
|
|
36
|
-
|
|
37
|
-
constructor(entityType: string,
|
|
36
|
+
private readonly sourceEntityId;
|
|
37
|
+
constructor(entityType: string, sourceEntityId: string, store: SnapshotStore, dispatcher: ActionDispatcher);
|
|
38
|
+
/** Current canonical id; the handle keeps no mutable rekey state. */
|
|
39
|
+
protected get entityId(): string;
|
|
38
40
|
/**
|
|
39
41
|
* Subscribe to entity changes.
|
|
40
42
|
*/
|
|
@@ -44,9 +46,18 @@ export declare abstract class EntityRelatedHandle extends BaseHandle {
|
|
|
44
46
|
*/
|
|
45
47
|
getVersion(): number;
|
|
46
48
|
/**
|
|
47
|
-
* Get entity data.
|
|
49
|
+
* Get the CANONICAL entity data — the live, possibly-dirty values. Use this
|
|
50
|
+
* for dirty tracking and any logic that must reflect the user's edits, even
|
|
51
|
+
* while a pessimistic persist is in-flight. For values to DISPLAY, use
|
|
52
|
+
* {@link getPresentationData}.
|
|
48
53
|
*/
|
|
49
54
|
protected getEntityData(): Record<string, unknown> | undefined;
|
|
55
|
+
/**
|
|
56
|
+
* Get the entity data a consumer should DISPLAY. Equals {@link getEntityData}
|
|
57
|
+
* except while the entity is pessimistically in-flight, when it returns the
|
|
58
|
+
* server baseline (the canonical data stays dirty underneath).
|
|
59
|
+
*/
|
|
60
|
+
protected getPresentationData(): Record<string, unknown> | undefined;
|
|
50
61
|
/**
|
|
51
62
|
* Get entity server data.
|
|
52
63
|
*/
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"BaseHandle.d.ts","sourceRoot":"","sources":["../../src/handles/BaseHandle.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,6BAA6B,CAAA;AACnE,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,2BAA2B,CAAA;AAE9D;;;;;;;;;;;;;GAaG;AACH,8BAAsB,UAAU;IAE9B,SAAS,CAAC,QAAQ,CAAC,KAAK,EAAE,aAAa;IACvC,SAAS,CAAC,QAAQ,CAAC,UAAU,EAAE,gBAAgB;gBAD5B,KAAK,EAAE,aAAa,EACpB,UAAU,EAAE,gBAAgB;IAGhD;;OAEG;IACH,QAAQ,CAAC,SAAS,CAAC,QAAQ,EAAE,MAAM,IAAI,GAAG,MAAM,IAAI;IAEpD;;OAEG;IACH,QAAQ,CAAC,UAAU,IAAI,MAAM;CAC7B;AAED;;;GAGG;AACH,8BAAsB,mBAAoB,SAAQ,UAAU;IAE1D,SAAS,CAAC,QAAQ,CAAC,UAAU,EAAE,MAAM;IACrC,
|
|
1
|
+
{"version":3,"file":"BaseHandle.d.ts","sourceRoot":"","sources":["../../src/handles/BaseHandle.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,6BAA6B,CAAA;AACnE,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,2BAA2B,CAAA;AAE9D;;;;;;;;;;;;;GAaG;AACH,8BAAsB,UAAU;IAE9B,SAAS,CAAC,QAAQ,CAAC,KAAK,EAAE,aAAa;IACvC,SAAS,CAAC,QAAQ,CAAC,UAAU,EAAE,gBAAgB;gBAD5B,KAAK,EAAE,aAAa,EACpB,UAAU,EAAE,gBAAgB;IAGhD;;OAEG;IACH,QAAQ,CAAC,SAAS,CAAC,QAAQ,EAAE,MAAM,IAAI,GAAG,MAAM,IAAI;IAEpD;;OAEG;IACH,QAAQ,CAAC,UAAU,IAAI,MAAM;CAC7B;AAED;;;GAGG;AACH,8BAAsB,mBAAoB,SAAQ,UAAU;IAE1D,SAAS,CAAC,QAAQ,CAAC,UAAU,EAAE,MAAM;IACrC,OAAO,CAAC,QAAQ,CAAC,cAAc;gBADZ,UAAU,EAAE,MAAM,EACpB,cAAc,EAAE,MAAM,EACvC,KAAK,EAAE,aAAa,EACpB,UAAU,EAAE,gBAAgB;IAK7B,qEAAqE;IACrE,SAAS,KAAK,QAAQ,IAAI,MAAM,CAE/B;IAED;;OAEG;IACH,SAAS,CAAC,QAAQ,EAAE,MAAM,IAAI,GAAG,MAAM,IAAI;IAI3C;;OAEG;IACH,UAAU,IAAI,MAAM;IAKpB;;;;;OAKG;IACH,SAAS,CAAC,aAAa,IAAI,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,SAAS;IAK9D;;;;OAIG;IACH,SAAS,CAAC,mBAAmB,IAAI,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,SAAS;IAIpE;;OAEG;IACH,SAAS,CAAC,aAAa,IAAI,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,SAAS;CAI9D;AAED;;;GAGG;AACH,wBAAgB,2BAA2B,CAC1C,QAAQ,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EACjC,QAAQ,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAC/B,OAAO,CAOT"}
|
|
@@ -27,6 +27,7 @@ import type { SelectionMeta } from '../selection/types.js';
|
|
|
27
27
|
export declare class EntityHandle<T extends object = object, TSelected = T> extends EntityRelatedHandle {
|
|
28
28
|
private readonly schema;
|
|
29
29
|
private readonly selection?;
|
|
30
|
+
private readonly entityPath;
|
|
30
31
|
/** Cache for field handles to ensure stable identity */
|
|
31
32
|
private readonly fieldHandleCache;
|
|
32
33
|
/** Cache for relation handles */
|
|
@@ -34,9 +35,14 @@ export declare class EntityHandle<T extends object = object, TSelected = T> exte
|
|
|
34
35
|
/** Runtime brand symbols for validation */
|
|
35
36
|
readonly __brands?: Set<symbol>;
|
|
36
37
|
private constructor();
|
|
37
|
-
static create<T extends object = object, TSelected = T>(id: string, entityType: string, store: SnapshotStore, dispatcher: ActionDispatcher, schema: SchemaRegistry, brands?: Set<symbol>, selection?: SelectionMeta): EntityAccessor<T, TSelected>;
|
|
38
|
-
static createRaw<T extends object = object, TSelected = T>(id: string, entityType: string, store: SnapshotStore, dispatcher: ActionDispatcher, schema: SchemaRegistry, brands?: Set<symbol>, selection?: SelectionMeta): EntityHandle<T, TSelected>;
|
|
38
|
+
static create<T extends object = object, TSelected = T>(id: string, entityType: string, store: SnapshotStore, dispatcher: ActionDispatcher, schema: SchemaRegistry, brands?: Set<symbol>, selection?: SelectionMeta, entityPath?: readonly string[]): EntityAccessor<T, TSelected>;
|
|
39
|
+
static createRaw<T extends object = object, TSelected = T>(id: string, entityType: string, store: SnapshotStore, dispatcher: ActionDispatcher, schema: SchemaRegistry, brands?: Set<symbol>, selection?: SelectionMeta, entityPath?: readonly string[]): EntityHandle<T, TSelected>;
|
|
39
40
|
static wrapProxy<T extends object, TSelected>(handle: EntityHandle<T, TSelected>): EntityAccessor<T, TSelected>;
|
|
41
|
+
/**
|
|
42
|
+
* Field names the handle's selection exposes, for enumeration. Without a selection
|
|
43
|
+
* nothing is validated and nothing is listed.
|
|
44
|
+
*/
|
|
45
|
+
get selectedFieldNames(): readonly string[];
|
|
40
46
|
get [FIELD_REF_META](): FieldRefMeta;
|
|
41
47
|
/**
|
|
42
48
|
* Gets the entity ID.
|
|
@@ -47,8 +53,11 @@ export declare class EntityHandle<T extends object = object, TSelected = T> exte
|
|
|
47
53
|
*/
|
|
48
54
|
getSnapshot(): EntitySnapshot<T> | undefined;
|
|
49
55
|
/**
|
|
50
|
-
* Gets the current entity data.
|
|
56
|
+
* Gets the current entity data to DISPLAY.
|
|
51
57
|
* Returns selected fields subset as specified by TSelected type parameter.
|
|
58
|
+
* While a pessimistic persist is in-flight this is the server baseline; the
|
|
59
|
+
* canonical snapshot (see {@link getSnapshot}, used for dirty tracking) stays
|
|
60
|
+
* dirty underneath.
|
|
52
61
|
*/
|
|
53
62
|
get data(): TSelected | null;
|
|
54
63
|
/**
|
|
@@ -93,11 +102,11 @@ export declare class EntityHandle<T extends object = object, TSelected = T> exte
|
|
|
93
102
|
* Gets a field handle for a specific field.
|
|
94
103
|
* Returns cached handle to ensure stable identity.
|
|
95
104
|
*/
|
|
96
|
-
field<K extends keyof T>(fieldName: K): FieldAccessor<T[K]>;
|
|
105
|
+
field<K extends keyof T>(fieldName: K, dataFieldName?: string): FieldAccessor<T[K]>;
|
|
97
106
|
/**
|
|
98
107
|
* Gets a has-one relation handle.
|
|
99
108
|
*/
|
|
100
|
-
hasOne<TRelated extends object>(fieldName: string, nestedSelection?: SelectionMeta): HasOneAccessor<TRelated>;
|
|
109
|
+
hasOne<TRelated extends object>(fieldName: string, nestedSelection?: SelectionMeta, dataFieldName?: string): HasOneAccessor<TRelated>;
|
|
101
110
|
/**
|
|
102
111
|
* Gets a has-many relation handle.
|
|
103
112
|
*
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"EntityHandle.d.ts","sourceRoot":"","sources":["../../src/handles/EntityHandle.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,mBAAmB,EAAE,MAAM,iBAAiB,CAAA;AAErD,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,6BAA6B,CAAA;AACnE,OAAO,EAAE,KAAK,aAAa,EAAE,MAAM,2BAA2B,CAAA;AAC9D,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,6BAA6B,CAAA;AACjE,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,uBAAuB,CAAA;AAQ3D,OAAO,EAAE,cAAc,EAAE,KAAK,YAAY,EAAE,KAAK,aAAa,EAAE,KAAK,cAAc,EAAE,KAAK,eAAe,EAAE,KAAK,oBAAoB,EAAE,KAAK,WAAW,EAAE,KAAK,cAAc,EAAE,MAAM,YAAY,CAAA;AAE/L,OAAO,EAAqB,KAAK,UAAU,EAAE,KAAK,UAAU,EAAE,MAAM,oBAAoB,CAAA;AACxF,OAAO,KAAK,EACX,YAAY,EACZ,eAAe,EACf,gBAAgB,EAChB,aAAa,EACb,WAAW,EACX,oBAAoB,EACpB,qBAAqB,EACrB,MAAM,oBAAoB,CAAA;AAI3B,OAAO,KAAK,EAAE,aAAa,EAAsB,MAAM,uBAAuB,CAAA;AAmB9E;;;;;;;;;;;;;;;;GAgBG;AACH,qBAAa,YAAY,CAAC,CAAC,SAAS,MAAM,GAAG,MAAM,EAAE,SAAS,GAAG,CAAC,CAAE,SAAQ,mBAAmB;IAe7F,OAAO,CAAC,QAAQ,CAAC,MAAM;IAEvB,OAAO,CAAC,QAAQ,CAAC,SAAS,CAAC;
|
|
1
|
+
{"version":3,"file":"EntityHandle.d.ts","sourceRoot":"","sources":["../../src/handles/EntityHandle.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,mBAAmB,EAAE,MAAM,iBAAiB,CAAA;AAErD,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,6BAA6B,CAAA;AACnE,OAAO,EAAE,KAAK,aAAa,EAAE,MAAM,2BAA2B,CAAA;AAC9D,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,6BAA6B,CAAA;AACjE,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,uBAAuB,CAAA;AAQ3D,OAAO,EAAE,cAAc,EAAE,KAAK,YAAY,EAAE,KAAK,aAAa,EAAE,KAAK,cAAc,EAAE,KAAK,eAAe,EAAE,KAAK,oBAAoB,EAAE,KAAK,WAAW,EAAE,KAAK,cAAc,EAAE,MAAM,YAAY,CAAA;AAE/L,OAAO,EAAqB,KAAK,UAAU,EAAE,KAAK,UAAU,EAAE,MAAM,oBAAoB,CAAA;AACxF,OAAO,KAAK,EACX,YAAY,EACZ,eAAe,EACf,gBAAgB,EAChB,aAAa,EACb,WAAW,EACX,oBAAoB,EACpB,qBAAqB,EACrB,MAAM,oBAAoB,CAAA;AAI3B,OAAO,KAAK,EAAE,aAAa,EAAsB,MAAM,uBAAuB,CAAA;AAmB9E;;;;;;;;;;;;;;;;GAgBG;AACH,qBAAa,YAAY,CAAC,CAAC,SAAS,MAAM,GAAG,MAAM,EAAE,SAAS,GAAG,CAAC,CAAE,SAAQ,mBAAmB;IAe7F,OAAO,CAAC,QAAQ,CAAC,MAAM;IAEvB,OAAO,CAAC,QAAQ,CAAC,SAAS,CAAC;IAG3B,OAAO,CAAC,QAAQ,CAAC,UAAU;IAnB5B,wDAAwD;IACxD,OAAO,CAAC,QAAQ,CAAC,gBAAgB,CAAuC;IAExE,iCAAiC;IACjC,OAAO,CAAC,QAAQ,CAAC,mBAAmB,CAA0C;IAE9E,2CAA2C;IAC3C,QAAQ,CAAC,QAAQ,CAAC,EAAE,GAAG,CAAC,MAAM,CAAC,CAAA;IAE/B,OAAO;IAgBP,MAAM,CAAC,MAAM,CAAC,CAAC,SAAS,MAAM,GAAG,MAAM,EAAE,SAAS,GAAG,CAAC,EACrD,EAAE,EAAE,MAAM,EACV,UAAU,EAAE,MAAM,EAClB,KAAK,EAAE,aAAa,EACpB,UAAU,EAAE,gBAAgB,EAC5B,MAAM,EAAE,cAAc,EACtB,MAAM,CAAC,EAAE,GAAG,CAAC,MAAM,CAAC,EACpB,SAAS,CAAC,EAAE,aAAa,EACzB,UAAU,CAAC,EAAE,SAAS,MAAM,EAAE,GAC5B,cAAc,CAAC,CAAC,EAAE,SAAS,CAAC;IAI/B,MAAM,CAAC,SAAS,CAAC,CAAC,SAAS,MAAM,GAAG,MAAM,EAAE,SAAS,GAAG,CAAC,EACxD,EAAE,EAAE,MAAM,EACV,UAAU,EAAE,MAAM,EAClB,KAAK,EAAE,aAAa,EACpB,UAAU,EAAE,gBAAgB,EAC5B,MAAM,EAAE,cAAc,EACtB,MAAM,CAAC,EAAE,GAAG,CAAC,MAAM,CAAC,EACpB,SAAS,CAAC,EAAE,aAAa,EACzB,UAAU,CAAC,EAAE,SAAS,MAAM,EAAE,GAC5B,YAAY,CAAC,CAAC,EAAE,SAAS,CAAC;IAI7B,MAAM,CAAC,SAAS,CAAC,CAAC,SAAS,MAAM,EAAE,SAAS,EAAE,MAAM,EAAE,YAAY,CAAC,CAAC,EAAE,SAAS,CAAC,GAAG,cAAc,CAAC,CAAC,EAAE,SAAS,CAAC;IAQ/G;;;OAGG;IACH,IAAI,kBAAkB,IAAI,SAAS,MAAM,EAAE,CAG1C;IAED,IAAI,CAAC,cAAc,CAAC,IAAI,YAAY,CASnC;IAED;;OAEG;IACH,IAAI,EAAE,IAAI,MAAM,CAEf;IAED;;OAEG;IACH,WAAW,IAAI,cAAc,CAAC,CAAC,CAAC,GAAG,SAAS;IAI5C;;;;;;OAMG;IACH,IAAI,IAAI,IAAI,SAAS,GAAG,IAAI,CAG3B;IAED;;OAEG;IACH,IAAI,UAAU,IAAI,CAAC,GAAG,SAAS,CAG9B;IAED;;OAEG;IACH,IAAI,QAAQ,IAAI,OAAO,CAEtB;IAED;;OAEG;IACH,IAAI,SAAS,IAAI,OAAO,CAGvB;IAED;;OAEG;IACH,IAAI,OAAO,IAAI,OAAO,CAGrB;IAED;;OAEG;IACH,IAAI,KAAK,IAAI,UAAU,GAAG,SAAS,CAGlC;IAED;;OAEG;IACH,IAAI,YAAY,IAAI,OAAO,CAE1B;IAED;;;OAGG;IACH,IAAI,OAAO,IAAI,OAAO,CAiCrB;IAED;;;OAGG;IACH,IAAI,WAAW,IAAI,MAAM,GAAG,IAAI,CAE/B;IAED;;OAEG;IACH,IAAI,KAAK,IAAI,OAAO,CAEnB;IAED;;;OAGG;IACH,KAAK,CAAC,CAAC,SAAS,MAAM,CAAC,EAAE,SAAS,EAAE,CAAC,EAAE,aAAa,SAAoB,GAAG,aAAa,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;IA4B9F;;OAEG;IACH,MAAM,CAAC,QAAQ,SAAS,MAAM,EAAE,SAAS,EAAE,MAAM,EAAE,eAAe,CAAC,EAAE,aAAa,EAAE,aAAa,SAAY,GAAG,cAAc,CAAC,QAAQ,CAAC;IAkCxI;;;;;OAKG;IACH,OAAO,CAAC,KAAK,SAAS,MAAM,EAAE,SAAS,EAAE,MAAM,EAAE,KAAK,CAAC,EAAE,MAAM,EAAE,eAAe,CAAC,EAAE,aAAa,GAAG,eAAe,CAAC,KAAK,CAAC;IAkCzH;;;OAGG;IACH,OAAO,CAAC,kBAAkB;IAkC1B;;;OAGG;IACH,OAAO,CAAC,mBAAmB;IAgC3B;;;OAGG;IACH,KAAK,IAAI,IAAI;IASb;;OAEG;IACH,MAAM,IAAI,IAAI;IAId;;;;;;;;OAQG;IACH,IAAI,MAAM,IAAI,oBAAoB,CAAC,CAAC,EAAE,SAAS,CAAC,CAsC/C;IAED;;;;;;;;;;OAUG;IACH,OAAO,CAAC,qBAAqB;IAa7B;;;;OAIG;IACH,IAAI,YAAY,IAAI,CAAC,CAEpB;IAED;;;;OAIG;IACH,IAAI,YAAY,IAAI,MAAM,CAEzB;IAED;;OAEG;IACH,IAAI,MAAM,IAAI,SAAS,UAAU,EAAE,CAElC;IAED;;OAEG;IACH,IAAI,QAAQ,IAAI,OAAO,CAEtB;IAED;;OAEG;IACH,QAAQ,CAAC,KAAK,EAAE,UAAU,GAAG,IAAI;IAMjC;;OAEG;IACH,WAAW,IAAI,IAAI;IAMnB;;OAEG;IACH,cAAc,IAAI,IAAI;IAQtB;;OAEG;IACH,cAAc,IAAI,SAAS,MAAM,EAAE;IAInC;;OAEG;IACH,iBAAiB,IAAI,SAAS,MAAM,EAAE;IAMtC;;OAEG;IACH,EAAE,CAAC,CAAC,SAAS,eAAe,EAC3B,SAAS,EAAE,CAAC,EACZ,QAAQ,EAAE,aAAa,CAAC,YAAY,CAAC,CAAC,CAAC,CAAC,GACtC,WAAW;IAKd;;OAEG;IACH,SAAS,CAAC,CAAC,SAAS,gBAAgB,EACnC,SAAS,EAAE,CAAC,EACZ,WAAW,EAAE,WAAW,CAAC,YAAY,CAAC,CAAC,CAAC,CAAC,GACvC,WAAW;IAKd;;OAEG;IACH,WAAW,CAAC,QAAQ,EAAE,aAAa,CAAC,oBAAoB,CAAC,GAAG,WAAW;IAIvE;;OAEG;IACH,mBAAmB,CAAC,WAAW,EAAE,WAAW,CAAC,qBAAqB,CAAC,GAAG,WAAW;CAIjF"}
|
|
@@ -18,12 +18,14 @@ export declare class FieldHandle<T = unknown> extends EntityRelatedHandle {
|
|
|
18
18
|
private readonly fieldPath;
|
|
19
19
|
private readonly _enumName?;
|
|
20
20
|
private readonly _columnType?;
|
|
21
|
+
private readonly dataFieldPath;
|
|
22
|
+
private readonly _fullPath;
|
|
21
23
|
private _cachedInputProps;
|
|
22
24
|
private _cachedInputPropsValue;
|
|
23
25
|
private readonly _boundSetValue;
|
|
24
26
|
private constructor();
|
|
25
|
-
static create<T = unknown>(entityType: string, entityId: string, fieldPath: string[], store: SnapshotStore, dispatcher: ActionDispatcher, enumName?: string, columnType?: string): FieldAccessor<T>;
|
|
26
|
-
static createRaw<T = unknown>(entityType: string, entityId: string, fieldPath: string[], store: SnapshotStore, dispatcher: ActionDispatcher, enumName?: string, columnType?: string): FieldHandle<T>;
|
|
27
|
+
static create<T = unknown>(entityType: string, entityId: string, fieldPath: string[], store: SnapshotStore, dispatcher: ActionDispatcher, enumName?: string, columnType?: string, dataFieldPath?: string[], fullPath?: readonly string[]): FieldAccessor<T>;
|
|
28
|
+
static createRaw<T = unknown>(entityType: string, entityId: string, fieldPath: string[], store: SnapshotStore, dispatcher: ActionDispatcher, enumName?: string, columnType?: string, dataFieldPath?: string[], fullPath?: readonly string[]): FieldHandle<T>;
|
|
27
29
|
static wrapProxy<T>(handle: FieldHandle<T>): FieldAccessor<T>;
|
|
28
30
|
/**
|
|
29
31
|
* JSX field reference metadata for collection phase.
|
|
@@ -31,7 +33,8 @@ export declare class FieldHandle<T = unknown> extends EntityRelatedHandle {
|
|
|
31
33
|
*/
|
|
32
34
|
get [FIELD_REF_META](): FieldRefMeta;
|
|
33
35
|
/**
|
|
34
|
-
* Gets the current field value.
|
|
36
|
+
* Gets the current field value to DISPLAY. While a pessimistic persist is
|
|
37
|
+
* in-flight this is the server baseline; otherwise it is the live value.
|
|
35
38
|
*/
|
|
36
39
|
get value(): T | null;
|
|
37
40
|
/**
|
|
@@ -39,9 +42,13 @@ export declare class FieldHandle<T = unknown> extends EntityRelatedHandle {
|
|
|
39
42
|
*/
|
|
40
43
|
get serverValue(): T | null;
|
|
41
44
|
/**
|
|
42
|
-
* Checks if the field has been modified.
|
|
45
|
+
* Checks if the field has been modified. Compares the CANONICAL value against
|
|
46
|
+
* the server value — never the presented value, so a field stays correctly
|
|
47
|
+
* dirty even while its display shows the server baseline mid-pessimistic-persist.
|
|
43
48
|
*/
|
|
44
49
|
get isDirty(): boolean;
|
|
50
|
+
private getCurrentValue;
|
|
51
|
+
private getServerValue;
|
|
45
52
|
/**
|
|
46
53
|
* Checks if the field has been touched (interacted with by the user).
|
|
47
54
|
* Useful for showing errors only after user interaction.
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"FieldHandle.d.ts","sourceRoot":"","sources":["../../src/handles/FieldHandle.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,mBAAmB,EAAE,MAAM,iBAAiB,CAAA;AACrD,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,6BAA6B,CAAA;AACnE,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,2BAA2B,CAAA;AAE9D,OAAO,EAAE,cAAc,EAAE,KAAK,aAAa,EAAE,KAAK,YAAY,EAAE,KAAK,UAAU,EAAE,KAAK,WAAW,EAAE,MAAM,YAAY,CAAA;AAErH,OAAO,EAAqB,KAAK,UAAU,EAAE,KAAK,UAAU,EAAE,MAAM,oBAAoB,CAAA;AACxF,OAAO,KAAK,EACX,iBAAiB,EACjB,kBAAkB,EAClB,aAAa,EACb,WAAW,EACX,MAAM,oBAAoB,CAAA;AAG3B;;;;;;;;;GASG;AACH,qBAAa,WAAW,CAAC,CAAC,GAAG,OAAO,CAAE,SAAQ,mBAAmB;IAS/D,OAAO,CAAC,QAAQ,CAAC,SAAS;IAG1B,OAAO,CAAC,QAAQ,CAAC,SAAS,CAAC;IAC3B,OAAO,CAAC,QAAQ,CAAC,WAAW,CAAC;
|
|
1
|
+
{"version":3,"file":"FieldHandle.d.ts","sourceRoot":"","sources":["../../src/handles/FieldHandle.ts"],"names":[],"mappings":"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"}
|
|
@@ -18,7 +18,7 @@ export declare class HasManyListHandle<TEntity extends object = object, TSelecte
|
|
|
18
18
|
private readonly itemType;
|
|
19
19
|
private readonly schema;
|
|
20
20
|
private readonly selection?;
|
|
21
|
-
private
|
|
21
|
+
private readonly relationPath;
|
|
22
22
|
private itemHandleCacheProxy;
|
|
23
23
|
/** Runtime brand symbols for validation */
|
|
24
24
|
readonly __brands?: Set<symbol>;
|
|
@@ -39,7 +39,12 @@ export declare class HasManyListHandle<TEntity extends object = object, TSelecte
|
|
|
39
39
|
*/
|
|
40
40
|
private readonly alias;
|
|
41
41
|
private constructor();
|
|
42
|
-
static create<TEntity extends object = object, TSelected = TEntity>(parentEntityType: string, parentEntityId: string, fieldName: string, itemType: string, store: SnapshotStore, dispatcher: ActionDispatcher, schema: SchemaRegistry, brands?: Set<symbol>, alias?: string, selection?: SelectionMeta): HasManyAccessor<TEntity, TSelected>;
|
|
42
|
+
static create<TEntity extends object = object, TSelected = TEntity>(parentEntityType: string, parentEntityId: string, fieldName: string, itemType: string, store: SnapshotStore, dispatcher: ActionDispatcher, schema: SchemaRegistry, brands?: Set<symbol>, alias?: string, selection?: SelectionMeta, relationPath?: readonly string[]): HasManyAccessor<TEntity, TSelected>;
|
|
43
|
+
/**
|
|
44
|
+
* Creates the handle without the alias proxy. Mirrors {@link EntityHandle.createRaw}:
|
|
45
|
+
* the class surface (e.g. {@link itemHandleCacheSize}) is not part of HasManyAccessor.
|
|
46
|
+
*/
|
|
47
|
+
static createRaw<TEntity extends object = object, TSelected = TEntity>(parentEntityType: string, parentEntityId: string, fieldName: string, itemType: string, store: SnapshotStore, dispatcher: ActionDispatcher, schema: SchemaRegistry, brands?: Set<symbol>, alias?: string, selection?: SelectionMeta, relationPath?: readonly string[]): HasManyListHandle<TEntity, TSelected>;
|
|
43
48
|
/**
|
|
44
49
|
* JSX field reference metadata for collection phase.
|
|
45
50
|
* Implements HasManyRef interface.
|
|
@@ -50,8 +55,31 @@ export declare class HasManyListHandle<TEntity extends object = object, TSelecte
|
|
|
50
55
|
* Returns selection-aware EntityAccessors that support `item.fieldName.value`.
|
|
51
56
|
* Includes planned connections and excludes planned removals.
|
|
52
57
|
* Uses ordered IDs to preserve order including after move() operations.
|
|
58
|
+
*
|
|
59
|
+
* This is also where the item-accessor cache is pruned — see {@link syncItemHandleCache}.
|
|
53
60
|
*/
|
|
54
61
|
get items(): EntityAccessor<TEntity, TSelected>[];
|
|
62
|
+
/**
|
|
63
|
+
* Canonical cache key for an item id: a temp id follows its temp→persisted rekey, so a
|
|
64
|
+
* lookup by the now-dead temp id reuses the persisted item's handle instead of minting a
|
|
65
|
+
* duplicate for the same entity.
|
|
66
|
+
*/
|
|
67
|
+
private resolveItemKey;
|
|
68
|
+
/**
|
|
69
|
+
* Drops cached item accessors for ids that have left the list. Without it the cache keeps an
|
|
70
|
+
* accessor for every id the relation has ever shown, for as long as the parent handle lives
|
|
71
|
+
* — a paginated / filtered / refetched has-many grows without bound.
|
|
72
|
+
*
|
|
73
|
+
* Runs before the accessors are resolved and never touches a live id, so an item that is
|
|
74
|
+
* still listed keeps the exact same proxy and the exact same handle behind it.
|
|
75
|
+
*/
|
|
76
|
+
private syncItemHandleCache;
|
|
77
|
+
private canonicalizeItemHandleCache;
|
|
78
|
+
/**
|
|
79
|
+
* @internal Occupancy of the item-accessor cache. Exposed only so eviction tests can
|
|
80
|
+
* assert the cache stays bounded; not part of the HasManyAccessor API.
|
|
81
|
+
*/
|
|
82
|
+
get itemHandleCacheSize(): number;
|
|
55
83
|
/**
|
|
56
84
|
* Propagates the parent's embedded has-many data into per-item snapshots and
|
|
57
85
|
* ensures the has-many state exists in the store.
|
|
@@ -61,6 +89,12 @@ export declare class HasManyListHandle<TEntity extends object = object, TSelecte
|
|
|
61
89
|
* without ever reading `items`, and that path must also see populated data.
|
|
62
90
|
* Idempotent within a render — guarded by hasEmbeddedDataChanged.
|
|
63
91
|
*
|
|
92
|
+
* For the same reason EVERY entry point that reads or writes the has-many state
|
|
93
|
+
* calls this first — isDirty and the mutators as well as items/getById. An
|
|
94
|
+
* embedded list has no state in the store until it is materialised, so a
|
|
95
|
+
* consumer that never iterated saw isDirty === false and had its mutation land
|
|
96
|
+
* on a state nobody reads. Keep new entry points on this guard.
|
|
97
|
+
*
|
|
64
98
|
* @returns false when there is no embedded list data to materialise.
|
|
65
99
|
*/
|
|
66
100
|
private materializeEmbeddedItems;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"HasManyListHandle.d.ts","sourceRoot":"","sources":["../../src/handles/HasManyListHandle.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,mBAAmB,EAA+B,MAAM,iBAAiB,CAAA;AAElF,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,6BAA6B,CAAA;AACnE,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,2BAA2B,CAAA;AAE9D,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,6BAA6B,CAAA;AACjE,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,uBAAuB,CAAA;AAS1D,OAAO,EAAE,cAAc,EAAE,KAAK,eAAe,EAAE,KAAK,YAAY,EAAE,KAAK,cAAc,EAAE,KAAK,WAAW,EAAE,MAAM,YAAY,CAAA;AAC3H,OAAO,EAAqB,KAAK,UAAU,EAAE,KAAK,UAAU,EAAE,MAAM,oBAAoB,CAAA;AACxF,OAAO,KAAK,EACX,aAAa,EACb,WAAW,EACX,qBAAqB,EACrB,wBAAwB,EACxB,sBAAsB,EACtB,yBAAyB,EACzB,MAAM,oBAAoB,CAAA;AAG3B;;;;;;GAMG;AACH,qBAAa,iBAAiB,CAAC,OAAO,SAAS,MAAM,GAAG,MAAM,EAAE,SAAS,GAAG,OAAO,CAAE,SAAQ,mBAAmB;
|
|
1
|
+
{"version":3,"file":"HasManyListHandle.d.ts","sourceRoot":"","sources":["../../src/handles/HasManyListHandle.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,mBAAmB,EAA+B,MAAM,iBAAiB,CAAA;AAElF,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,6BAA6B,CAAA;AACnE,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,2BAA2B,CAAA;AAE9D,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,6BAA6B,CAAA;AACjE,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,uBAAuB,CAAA;AAS1D,OAAO,EAAE,cAAc,EAAE,KAAK,eAAe,EAAE,KAAK,YAAY,EAAE,KAAK,cAAc,EAAE,KAAK,WAAW,EAAE,MAAM,YAAY,CAAA;AAC3H,OAAO,EAAqB,KAAK,UAAU,EAAE,KAAK,UAAU,EAAE,MAAM,oBAAoB,CAAA;AACxF,OAAO,KAAK,EACX,aAAa,EACb,WAAW,EACX,qBAAqB,EACrB,wBAAwB,EACxB,sBAAsB,EACtB,yBAAyB,EACzB,MAAM,oBAAoB,CAAA;AAG3B;;;;;;GAMG;AACH,qBAAa,iBAAiB,CAAC,OAAO,SAAS,MAAM,GAAG,MAAM,EAAE,SAAS,GAAG,OAAO,CAAE,SAAQ,mBAAmB;IAoC9G,OAAO,CAAC,QAAQ,CAAC,SAAS;IAC1B,OAAO,CAAC,QAAQ,CAAC,QAAQ;IAGzB,OAAO,CAAC,QAAQ,CAAC,MAAM;IAGvB,OAAO,CAAC,QAAQ,CAAC,SAAS,CAAC;IAG3B,OAAO,CAAC,QAAQ,CAAC,YAAY;IAzC9B,OAAO,CAAC,oBAAoB,CAAwD;IAEpF,2CAA2C;IAC3C,QAAQ,CAAC,QAAQ,CAAC,EAAE,GAAG,CAAC,MAAM,CAAC,CAAA;IAE/B;;;OAGG;IACH,IAAI,YAAY,IAAI,MAAM,CAEzB;IAED;;;OAGG;IACH,IAAI,QAAQ,IAAI,SAAS,CAExB;IAED;;;;OAIG;IACH,OAAO,CAAC,QAAQ,CAAC,KAAK,CAAQ;IAE9B,OAAO;IAoBP,MAAM,CAAC,MAAM,CAAC,OAAO,SAAS,MAAM,GAAG,MAAM,EAAE,SAAS,GAAG,OAAO,EACjE,gBAAgB,EAAE,MAAM,EACxB,cAAc,EAAE,MAAM,EACtB,SAAS,EAAE,MAAM,EACjB,QAAQ,EAAE,MAAM,EAChB,KAAK,EAAE,aAAa,EACpB,UAAU,EAAE,gBAAgB,EAC5B,MAAM,EAAE,cAAc,EACtB,MAAM,CAAC,EAAE,GAAG,CAAC,MAAM,CAAC,EACpB,KAAK,CAAC,EAAE,MAAM,EACd,SAAS,CAAC,EAAE,aAAa,EACzB,YAAY,CAAC,EAAE,SAAS,MAAM,EAAE,GAC9B,eAAe,CAAC,OAAO,EAAE,SAAS,CAAC;IAMtC;;;OAGG;IACH,MAAM,CAAC,SAAS,CAAC,OAAO,SAAS,MAAM,GAAG,MAAM,EAAE,SAAS,GAAG,OAAO,EACpE,gBAAgB,EAAE,MAAM,EACxB,cAAc,EAAE,MAAM,EACtB,SAAS,EAAE,MAAM,EACjB,QAAQ,EAAE,MAAM,EAChB,KAAK,EAAE,aAAa,EACpB,UAAU,EAAE,gBAAgB,EAC5B,MAAM,EAAE,cAAc,EACtB,MAAM,CAAC,EAAE,GAAG,CAAC,MAAM,CAAC,EACpB,KAAK,CAAC,EAAE,MAAM,EACd,SAAS,CAAC,EAAE,aAAa,EACzB,YAAY,CAAC,EAAE,SAAS,MAAM,EAAE,GAC9B,iBAAiB,CAAC,OAAO,EAAE,SAAS,CAAC;IAIxC;;;OAGG;IACH,IAAI,CAAC,cAAc,CAAC,IAAI,YAAY,CAWnC;IAED;;;;;;;OAOG;IACH,IAAI,KAAK,IAAI,cAAc,CAAC,OAAO,EAAE,SAAS,CAAC,EAAE,CAchD;IAED;;;;OAIG;IACH,OAAO,CAAC,cAAc;IAItB;;;;;;;OAOG;IACH,OAAO,CAAC,mBAAmB;IAe3B,OAAO,CAAC,2BAA2B;IAWnC;;;OAGG;IACH,IAAI,mBAAmB,IAAI,MAAM,CAEhC;IAED;;;;;;;;;;;;;;;;OAgBG;IACH,OAAO,CAAC,wBAAwB;IA0ChC;;;OAGG;IACH,OAAO,CAAC,mBAAmB;IA6B3B;;;OAGG;IACH,OAAO,CAAC,YAAY;IA0BpB;;;;OAIG;IACH,IAAI,UAAU,IAAI,MAAM,GAAG,SAAS,CASnC;IAED;;OAEG;IACH,IAAI,MAAM,IAAI,MAAM,CAEnB;IAED;;;OAGG;IACH,aAAa,CAAC,MAAM,EAAE,MAAM,GAAG,cAAc,CAAC,OAAO,EAAE,SAAS,CAAC;IAsBjE;;;;OAIG;IACH,OAAO,CAAC,EAAE,EAAE,MAAM,GAAG,cAAc,CAAC,OAAO,EAAE,SAAS,CAAC;IAQvD;;OAEG;IACH,IAAI,OAAO,IAAI,OAAO,CAiBrB;IAED;;;OAGG;IACH,GAAG,CAAC,CAAC,EAAE,EAAE,EAAE,CAAC,IAAI,EAAE,cAAc,CAAC,OAAO,EAAE,SAAS,CAAC,EAAE,KAAK,EAAE,MAAM,KAAK,CAAC,GAAG,CAAC,EAAE;IAI/E;;OAEG;IACH,OAAO,CAAC,MAAM,EAAE,MAAM,GAAG,IAAI;IAO7B;;;;OAIG;IACH,UAAU,CAAC,MAAM,EAAE,MAAM,GAAG,IAAI;IAOhC;;;;OAIG;IACH,MAAM,CAAC,MAAM,EAAE,MAAM,GAAG,IAAI;IAO5B;;;;OAIG;IACH,GAAG,CAAC,IAAI,CAAC,EAAE,OAAO,CAAC,OAAO,CAAC,GAAG,MAAM;IAkBpC;;;;;;;;OAQG;IACH,MAAM,CAAC,MAAM,EAAE,MAAM,GAAG,IAAI;IAO5B;;;;;;OAMG;IACH,OAAO,CAAC,kBAAkB;IAY1B;;;;OAIG;IACH,IAAI,CAAC,SAAS,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,GAAG,IAAI;IAO9C;;;OAGG;IACH,KAAK,IAAI,IAAI;IAUb;;;OAGG;IACH,IAAI,YAAY,IAAI,OAAO,CAE1B;IAED;;OAEG;IACH,IAAI,MAAM,IAAI,SAAS,UAAU,EAAE,CAElC;IAED;;OAEG;IACH,IAAI,QAAQ,IAAI,OAAO,CAEtB;IAED;;OAEG;IACH,QAAQ,CAAC,KAAK,EAAE,UAAU,GAAG,IAAI;IAMjC;;OAEG;IACH,WAAW,IAAI,IAAI;IAQnB;;OAEG;IACH,eAAe,CAAC,QAAQ,EAAE,aAAa,CAAC,qBAAqB,CAAC,GAAG,WAAW;IAW5E;;OAEG;IACH,kBAAkB,CAAC,QAAQ,EAAE,aAAa,CAAC,wBAAwB,CAAC,GAAG,WAAW;IAWlF;;OAEG;IACH,uBAAuB,CAAC,WAAW,EAAE,WAAW,CAAC,sBAAsB,CAAC,GAAG,WAAW;IAWtF;;OAEG;IACH,0BAA0B,CAAC,WAAW,EAAE,WAAW,CAAC,yBAAyB,CAAC,GAAG,WAAW;CAW5F"}
|
|
@@ -3,7 +3,7 @@ import type { ActionDispatcher } from '../core/ActionDispatcher.js';
|
|
|
3
3
|
import type { SnapshotStore } from '../store/SnapshotStore.js';
|
|
4
4
|
import type { SchemaRegistry } from '../schema/SchemaRegistry.js';
|
|
5
5
|
import type { SelectionMeta } from '../selection/types.js';
|
|
6
|
-
import { FIELD_REF_META, type FieldRefMeta, type EntityFieldsAccessor, type Unsubscribe, type EntityAccessor, type HasOneAccessor } from './types.js';
|
|
6
|
+
import { FIELD_REF_META, type FieldRefMeta, type EntityFieldsAccessor, type Unsubscribe, type EntityAccessor, type HasOneAccessor, type HasOneRelationState } from './types.js';
|
|
7
7
|
import { type ErrorInput, type FieldError } from '../errors/types.js';
|
|
8
8
|
import type { EventTypeMap, AfterEventTypes, BeforeEventTypes, EventListener, Interceptor, EntityPersistedEvent, EntityPersistingEvent, RelationConnectedEvent, RelationDisconnectedEvent, RelationConnectingEvent, RelationDisconnectingEvent } from '../events/types.js';
|
|
9
9
|
import { EntityHandle } from './EntityHandle.js';
|
|
@@ -20,6 +20,8 @@ export declare class HasOneHandle<TEntity extends object = object, TSelected = T
|
|
|
20
20
|
private readonly targetType;
|
|
21
21
|
private readonly schema;
|
|
22
22
|
private readonly selection?;
|
|
23
|
+
private readonly dataFieldName;
|
|
24
|
+
private readonly relationPath;
|
|
23
25
|
private entityHandleCacheRaw;
|
|
24
26
|
private entityHandleCacheProxy;
|
|
25
27
|
private placeholderCacheRaw;
|
|
@@ -27,8 +29,8 @@ export declare class HasOneHandle<TEntity extends object = object, TSelected = T
|
|
|
27
29
|
/** Runtime brand symbols for validation */
|
|
28
30
|
readonly __brands?: Set<symbol>;
|
|
29
31
|
private constructor();
|
|
30
|
-
static create<TEntity extends object = object, TSelected = TEntity>(parentEntityType: string, parentEntityId: string, fieldName: string, targetType: string, store: SnapshotStore, dispatcher: ActionDispatcher, schema: SchemaRegistry, brands?: Set<symbol>, selection?: SelectionMeta): HasOneAccessor<TEntity, TSelected>;
|
|
31
|
-
static createRaw<TEntity extends object = object, TSelected = TEntity>(parentEntityType: string, parentEntityId: string, fieldName: string, targetType: string, store: SnapshotStore, dispatcher: ActionDispatcher, schema: SchemaRegistry, brands?: Set<symbol>, selection?: SelectionMeta): HasOneHandle<TEntity, TSelected>;
|
|
32
|
+
static create<TEntity extends object = object, TSelected = TEntity>(parentEntityType: string, parentEntityId: string, fieldName: string, targetType: string, store: SnapshotStore, dispatcher: ActionDispatcher, schema: SchemaRegistry, brands?: Set<symbol>, selection?: SelectionMeta, dataFieldName?: string, relationPath?: readonly string[]): HasOneAccessor<TEntity, TSelected>;
|
|
33
|
+
static createRaw<TEntity extends object = object, TSelected = TEntity>(parentEntityType: string, parentEntityId: string, fieldName: string, targetType: string, store: SnapshotStore, dispatcher: ActionDispatcher, schema: SchemaRegistry, brands?: Set<symbol>, selection?: SelectionMeta, dataFieldName?: string, relationPath?: readonly string[]): HasOneHandle<TEntity, TSelected>;
|
|
32
34
|
static wrapProxy<TEntity extends object, TSelected>(handle: HasOneHandle<TEntity, TSelected>): HasOneAccessor<TEntity, TSelected>;
|
|
33
35
|
/**
|
|
34
36
|
* JSX field reference metadata for collection phase.
|
|
@@ -41,16 +43,57 @@ export declare class HasOneHandle<TEntity extends object = object, TSelected = T
|
|
|
41
43
|
subscribe(callback: () => void): () => void;
|
|
42
44
|
/**
|
|
43
45
|
* Gets the relation state.
|
|
44
|
-
*
|
|
45
|
-
*
|
|
46
|
-
* requiring a prior RelationStore entry.
|
|
46
|
+
* Materializes the RelationStore entry from embedded snapshot data first, so a
|
|
47
|
+
* server-loaded has-one reports 'connected' without a prior explicit entry.
|
|
47
48
|
*/
|
|
48
|
-
get state():
|
|
49
|
+
get state(): HasOneRelationState;
|
|
49
50
|
/**
|
|
50
|
-
* Gets the current related entity ID
|
|
51
|
-
*
|
|
51
|
+
* Gets the current related entity ID — read exclusively from the RelationStore
|
|
52
|
+
* after materializing the entry from embedded snapshot data.
|
|
52
53
|
*/
|
|
53
54
|
get relatedId(): string | null;
|
|
55
|
+
/**
|
|
56
|
+
* Materializes this has-one's RelationStore entry from the parent's embedded
|
|
57
|
+
* snapshot data, so the store is the single source of truth (symmetric with
|
|
58
|
+
* {@link HasManyListHandle.materializeEmbeddedItems}).
|
|
59
|
+
*
|
|
60
|
+
* Only the relation entry is touched here — child-snapshot propagation stays in
|
|
61
|
+
* {@link ensureRelatedEntitySnapshot}, which owns the per-relation propagation
|
|
62
|
+
* slot so the two paths never double-consume it.
|
|
63
|
+
*
|
|
64
|
+
* - No entry yet + the parent embeds a related object with an id → create a
|
|
65
|
+
* `connected` entry (non-notifying) whose server baseline comes from the
|
|
66
|
+
* parent's serverData, so a freshly loaded relation is not dirty
|
|
67
|
+
* (currentId === serverId, state === serverState).
|
|
68
|
+
* - Existing entry + parent re-fetch (embedded reference changed) that is NOT
|
|
69
|
+
* locally dirty → advance the server baseline to the new related id.
|
|
70
|
+
* - A local connect/disconnect, a placeholder, or a `creating` entry is left
|
|
71
|
+
* untouched — it is detected as a locally-dirty relation.
|
|
72
|
+
* - No embedded data and no entry → the relation stays unmaterialized (null).
|
|
73
|
+
*/
|
|
74
|
+
private ensureEntry;
|
|
75
|
+
/**
|
|
76
|
+
* On a parent re-fetch (embedded reference changed) advances the relation's
|
|
77
|
+
* server baseline to the embedded related id, but only when the relation is
|
|
78
|
+
* not locally dirty — a local connect/disconnect/create must survive a re-fetch.
|
|
79
|
+
*
|
|
80
|
+
* Does NOT consume the propagation slot — {@link ensureRelatedEntitySnapshot}
|
|
81
|
+
* owns it. The same reference-change signal drives both, so both run within the
|
|
82
|
+
* one render that observes a new parent reference.
|
|
83
|
+
*
|
|
84
|
+
* The baseline write is NON-NOTIFYING: it runs during a render-phase read, and
|
|
85
|
+
* the parent re-fetch that produced the new embedded reference already notified
|
|
86
|
+
* subscribers. Notifying again here would mutate the store and synchronously call
|
|
87
|
+
* subscribers mid-render, violating the external-store contract (cf.
|
|
88
|
+
* {@link ensureRelatedEntitySnapshot}, which refreshes server data with skipNotify
|
|
89
|
+
* for the same reason).
|
|
90
|
+
*/
|
|
91
|
+
private advanceServerBaselineOnRefetch;
|
|
92
|
+
private isLocallyDirty;
|
|
93
|
+
/** Reads the embedded related object from the parent's canonical current data. */
|
|
94
|
+
private readEmbeddedRelatedData;
|
|
95
|
+
/** Extracts the related id from the parent's embedded server data, or null. */
|
|
96
|
+
private readServerRelatedId;
|
|
54
97
|
/**
|
|
55
98
|
* Gets the related entity ID.
|
|
56
99
|
* Returns the actual ID if connected, or placeholder ID if disconnected.
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"HasOneHandle.d.ts","sourceRoot":"","sources":["../../src/handles/HasOneHandle.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,mBAAmB,EAA+B,MAAM,iBAAiB,CAAA;AAClF,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,6BAA6B,CAAA;AACnE,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,2BAA2B,CAAA;
|
|
1
|
+
{"version":3,"file":"HasOneHandle.d.ts","sourceRoot":"","sources":["../../src/handles/HasOneHandle.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import type { ActionDispatcher } from '../core/ActionDispatcher.js';
|
|
2
2
|
import type { SnapshotStore } from '../store/SnapshotStore.js';
|
|
3
|
-
import { type EntityFieldsAccessor, type Unsubscribe, type EntityAccessor } from './types.js';
|
|
3
|
+
import { FIELD_REF_META, type EntityFieldsAccessor, type FieldRefMeta, type Unsubscribe, type EntityAccessor } from './types.js';
|
|
4
4
|
import type { ErrorInput, FieldError } from '../errors/types.js';
|
|
5
5
|
import type { EventTypeMap, AfterEventTypes, BeforeEventTypes, EventListener, Interceptor, EntityPersistedEvent, EntityPersistingEvent } from '../events/types.js';
|
|
6
6
|
import type { SchemaRegistry } from '../schema/SchemaRegistry.js';
|
|
@@ -14,12 +14,13 @@ import type { SchemaRegistry } from '../schema/SchemaRegistry.js';
|
|
|
14
14
|
*/
|
|
15
15
|
export declare class PlaceholderHandle<TEntity extends object = object, TSelected = TEntity> {
|
|
16
16
|
private readonly parentEntityType;
|
|
17
|
-
private readonly
|
|
17
|
+
private readonly sourceParentEntityId;
|
|
18
18
|
private readonly fieldName;
|
|
19
19
|
private readonly targetType;
|
|
20
20
|
private readonly store;
|
|
21
21
|
private readonly dispatcher;
|
|
22
22
|
private readonly schema;
|
|
23
|
+
private readonly relationPath;
|
|
23
24
|
/** Runtime brand symbols for validation */
|
|
24
25
|
readonly __brands?: Set<symbol>;
|
|
25
26
|
/** Placeholder ID for this handle */
|
|
@@ -29,10 +30,21 @@ export declare class PlaceholderHandle<TEntity extends object = object, TSelecte
|
|
|
29
30
|
* (the first time a child is added to one of its has-many relations). Lazily minted.
|
|
30
31
|
*/
|
|
31
32
|
private materializedId;
|
|
33
|
+
private readonly pendingEventSubscriptions;
|
|
34
|
+
private pendingRelationUnsubscribe;
|
|
32
35
|
private constructor();
|
|
33
|
-
|
|
34
|
-
|
|
36
|
+
private get parentEntityId();
|
|
37
|
+
private get currentEntityId();
|
|
38
|
+
private findCurrentEntityId;
|
|
39
|
+
private watchPendingMaterialization;
|
|
40
|
+
private activatePendingEventSubscriptions;
|
|
41
|
+
private stopWatchingMaterializationWhenIdle;
|
|
42
|
+
static create<TEntity extends object = object, TSelected = TEntity>(parentEntityType: string, parentEntityId: string, fieldName: string, targetType: string, store: SnapshotStore, dispatcher: ActionDispatcher, schema?: SchemaRegistry | null, brands?: Set<symbol>, relationPath?: readonly string[]): EntityAccessor<TEntity, TSelected>;
|
|
43
|
+
static createRaw<TEntity extends object = object, TSelected = TEntity>(parentEntityType: string, parentEntityId: string, fieldName: string, targetType: string, store: SnapshotStore, dispatcher: ActionDispatcher, schema?: SchemaRegistry | null, brands?: Set<symbol>, relationPath?: readonly string[]): PlaceholderHandle<TEntity, TSelected>;
|
|
35
44
|
static wrapProxy<TEntity extends object, TSelected>(handle: PlaceholderHandle<TEntity, TSelected>): EntityAccessor<TEntity, TSelected>;
|
|
45
|
+
/** A placeholder carries no selection, so enumeration lists nothing beyond `id`. */
|
|
46
|
+
get selectedFieldNames(): readonly string[];
|
|
47
|
+
get [FIELD_REF_META](): FieldRefMeta;
|
|
36
48
|
/**
|
|
37
49
|
* Gets the placeholder ID.
|
|
38
50
|
*/
|
|
@@ -52,7 +64,7 @@ export declare class PlaceholderHandle<TEntity extends object = object, TSelecte
|
|
|
52
64
|
/**
|
|
53
65
|
* Placeholder entities are always new (not yet persisted).
|
|
54
66
|
*/
|
|
55
|
-
get persistedId(): null;
|
|
67
|
+
get persistedId(): string | null;
|
|
56
68
|
/**
|
|
57
69
|
* Placeholder entities are always new.
|
|
58
70
|
*/
|
|
@@ -128,20 +140,20 @@ export declare class PlaceholderHandle<TEntity extends object = object, TSelecte
|
|
|
128
140
|
*/
|
|
129
141
|
clearAllErrors(): void;
|
|
130
142
|
/**
|
|
131
|
-
*
|
|
143
|
+
* Activates the subscription when the placeholder materializes.
|
|
132
144
|
*/
|
|
133
|
-
on<E extends AfterEventTypes>(
|
|
145
|
+
on<E extends AfterEventTypes>(eventType: E, listener: EventListener<EventTypeMap[E]>): Unsubscribe;
|
|
134
146
|
/**
|
|
135
|
-
*
|
|
147
|
+
* Activates the interceptor when the placeholder materializes.
|
|
136
148
|
*/
|
|
137
|
-
intercept<E extends BeforeEventTypes>(
|
|
149
|
+
intercept<E extends BeforeEventTypes>(eventType: E, interceptor: Interceptor<EventTypeMap[E]>): Unsubscribe;
|
|
138
150
|
/**
|
|
139
|
-
*
|
|
151
|
+
* Subscribes to persistence after materialization.
|
|
140
152
|
*/
|
|
141
|
-
onPersisted(
|
|
153
|
+
onPersisted(listener: EventListener<EntityPersistedEvent>): Unsubscribe;
|
|
142
154
|
/**
|
|
143
|
-
*
|
|
155
|
+
* Intercepts persistence after materialization.
|
|
144
156
|
*/
|
|
145
|
-
interceptPersisting(
|
|
157
|
+
interceptPersisting(interceptor: Interceptor<EntityPersistingEvent>): Unsubscribe;
|
|
146
158
|
}
|
|
147
159
|
//# sourceMappingURL=PlaceholderHandle.d.ts.map
|