joist-core 2.3.0-next.2 → 2.3.0-next.21
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/build/AliasAssigner.d.ts +0 -1
- package/build/Aliases.d.ts +0 -1
- package/build/BaseEntity.d.ts +0 -1
- package/build/ConditionBuilder.d.ts +0 -1
- package/build/ConditionBuilder.js +1 -1
- package/build/ConditionBuilder.js.map +1 -1
- package/build/Entity.d.ts +0 -1
- package/build/EntityFields.d.ts +0 -1
- package/build/EntityFilter.d.ts +0 -1
- package/build/EntityGraphQLFilter.d.ts +0 -1
- package/build/EntityManager.d.ts +3 -3
- package/build/EntityManager.js +298 -115
- package/build/EntityManager.js.map +1 -1
- package/build/EntityMetadata.d.ts +22 -3
- package/build/EntityMetadata.js +5 -3
- package/build/EntityMetadata.js.map +1 -1
- package/build/EnumMetadata.d.ts +0 -1
- package/build/FlushLock.d.ts +0 -1
- package/build/HintTree.d.ts +0 -1
- package/build/IndexManager.d.ts +4 -3
- package/build/IndexManager.js +4 -2
- package/build/IndexManager.js.map +1 -1
- package/build/InstanceData.d.ts +8 -8
- package/build/InstanceData.js +57 -25
- package/build/InstanceData.js.map +1 -1
- package/build/IsLoadedCache.d.ts +0 -1
- package/build/JoinRows.d.ts +0 -1
- package/build/PendingChanges.d.ts +0 -1
- package/build/PluginManager.d.ts +0 -1
- package/build/QueryParser.collectionJoins.d.ts +0 -1
- package/build/QueryParser.d.ts +7 -1
- package/build/QueryParser.js +25 -1
- package/build/QueryParser.js.map +1 -1
- package/build/QueryParser.pruning.d.ts +0 -1
- package/build/QueryVisitor.d.ts +0 -1
- package/build/ReactionsManager.d.ts +1 -2
- package/build/ReactionsManager.js +24 -20
- package/build/ReactionsManager.js.map +1 -1
- package/build/Todo.d.ts +1 -2
- package/build/Todo.js +16 -5
- package/build/Todo.js.map +1 -1
- package/build/batchloaders/BatchLoader.d.ts +0 -1
- package/build/batchloaders/enumCollectionBatchLoader.d.ts +0 -1
- package/build/batchloaders/loadBatchLoader.d.ts +0 -1
- package/build/batchloaders/loadBatchLoader.js +1 -1
- package/build/batchloaders/loadBatchLoader.js.map +1 -1
- package/build/batchloaders/manyToManyBatchLoader.d.ts +0 -1
- package/build/batchloaders/oneToManyBatchLoader.d.ts +0 -1
- package/build/batchloaders/oneToOneBatchLoader.d.ts +0 -1
- package/build/batchloaders/populateBatchLoader.d.ts +0 -1
- package/build/batchloaders/populateBatchLoader.js +4 -2
- package/build/batchloaders/populateBatchLoader.js.map +1 -1
- package/build/batchloaders/recursiveChildrenBatchLoader.d.ts +0 -1
- package/build/batchloaders/recursiveChildrenBatchLoader.js +3 -1
- package/build/batchloaders/recursiveChildrenBatchLoader.js.map +1 -1
- package/build/batchloaders/recursiveM2mBatchLoader.d.ts +0 -1
- package/build/batchloaders/recursiveM2mBatchLoader.js +1 -1
- package/build/batchloaders/recursiveM2mBatchLoader.js.map +1 -1
- package/build/batchloaders/recursiveParentsBatchLoader.d.ts +0 -1
- package/build/batchloaders/recursiveParentsBatchLoader.js +1 -1
- package/build/batchloaders/recursiveParentsBatchLoader.js.map +1 -1
- package/build/changes.d.ts +0 -1
- package/build/changes.js +4 -1
- package/build/changes.js.map +1 -1
- package/build/config.d.ts +19 -1
- package/build/config.js +36 -23
- package/build/config.js.map +1 -1
- package/build/configure.d.ts +0 -1
- package/build/configure.js +66 -2
- package/build/configure.js.map +1 -1
- package/build/dataloaders/fastWhereFilterHash.d.ts +0 -1
- package/build/dataloaders/findByUniqueDataLoader.d.ts +0 -1
- package/build/dataloaders/findCountDataLoader.d.ts +0 -1
- package/build/dataloaders/findDataLoader.d.ts +0 -1
- package/build/dataloaders/findDataLoader.js +21 -21
- package/build/dataloaders/findDataLoader.js.map +1 -1
- package/build/dataloaders/findIdsDataLoader.d.ts +0 -1
- package/build/dataloaders/findOrCreateDataLoader.d.ts +0 -1
- package/build/dataloaders/findOrCreateDataLoader.js +2 -2
- package/build/dataloaders/findOrCreateDataLoader.js.map +1 -1
- package/build/dataloaders/findPaginatedDataLoader.d.ts +0 -1
- package/build/dataloaders/lensDataLoader.d.ts +0 -1
- package/build/dataloaders/manyToManyFindDataLoader.d.ts +0 -1
- package/build/dataloaders/oneToManyFindDataLoader.d.ts +0 -1
- package/build/defaults.d.ts +0 -1
- package/build/driverApi.d.ts +0 -1
- package/build/drivers/Driver.d.ts +0 -1
- package/build/drivers/EntityWriter.d.ts +0 -1
- package/build/drivers/EntityWriter.js +32 -3
- package/build/drivers/EntityWriter.js.map +1 -1
- package/build/drivers/IdAssigner.d.ts +0 -1
- package/build/drivers/buildRawQuery.d.ts +0 -1
- package/build/drivers/buildUtils.d.ts +0 -1
- package/build/drivers/index.d.ts +0 -1
- package/build/fields.d.ts +0 -1
- package/build/fields.js +2 -2
- package/build/fields.js.map +1 -1
- package/build/getProperties.d.ts +3 -4
- package/build/getProperties.js +3 -3
- package/build/getProperties.js.map +1 -1
- package/build/index.d.ts +1 -2
- package/build/index.js +5 -1
- package/build/index.js.map +1 -1
- package/build/json.d.ts +0 -1
- package/build/k.d.ts +0 -1
- package/build/keys.d.ts +7 -7
- package/build/keys.js +102 -46
- package/build/keys.js.map +1 -1
- package/build/keywords.d.ts +0 -1
- package/build/loadHints.d.ts +0 -1
- package/build/loadLens.d.ts +0 -1
- package/build/logging/FactoryLogger.d.ts +0 -1
- package/build/logging/FieldLogger.d.ts +2 -1
- package/build/logging/FieldLogger.js +10 -1
- package/build/logging/FieldLogger.js.map +1 -1
- package/build/logging/ReactionLogger.d.ts +2 -1
- package/build/logging/ReactionLogger.js +15 -1
- package/build/logging/ReactionLogger.js.map +1 -1
- package/build/newEntity.d.ts +2 -3
- package/build/newEntity.js +10 -8
- package/build/newEntity.js.map +1 -1
- package/build/newTestInstance.d.ts +0 -1
- package/build/newTestInstance.js +4 -0
- package/build/newTestInstance.js.map +1 -1
- package/build/normalizeHints.d.ts +0 -1
- package/build/plugins/ImmutableEntitiesPlugin.d.ts +0 -1
- package/build/plugins/PreloadPlugin.d.ts +0 -1
- package/build/preloading/JsonAggregatePreloader.d.ts +0 -1
- package/build/preloading/JsonAggregatePreloader.js +4 -3
- package/build/preloading/JsonAggregatePreloader.js.map +1 -1
- package/build/preloading/canPreload.d.ts +0 -1
- package/build/preloading/partitionHint.d.ts +0 -1
- package/build/reactiveHints.d.ts +0 -1
- package/build/relations/AbstractPropertyImpl.d.ts +0 -1
- package/build/relations/AbstractRelationImpl.d.ts +0 -1
- package/build/relations/AsyncProperty.d.ts +0 -1
- package/build/relations/AsyncReactiveField.d.ts +13 -9
- package/build/relations/AsyncReactiveField.js +22 -19
- package/build/relations/AsyncReactiveField.js.map +1 -1
- package/build/relations/Collection.d.ts +0 -1
- package/build/relations/CustomCollection.d.ts +0 -1
- package/build/relations/CustomReference.d.ts +0 -1
- package/build/relations/EnumCollection.d.ts +0 -1
- package/build/relations/LargeCollection.d.ts +0 -1
- package/build/relations/LazyField.d.ts +46 -0
- package/build/relations/LazyField.js +133 -0
- package/build/relations/LazyField.js.map +1 -0
- package/build/relations/ManyToManyCollection.d.ts +0 -1
- package/build/relations/ManyToManyCollection.js +5 -3
- package/build/relations/ManyToManyCollection.js.map +1 -1
- package/build/relations/ManyToManyLargeCollection.d.ts +0 -1
- package/build/relations/ManyToOneReference.d.ts +0 -1
- package/build/relations/OneToManyCollection.d.ts +0 -1
- package/build/relations/OneToManyCollection.js +3 -1
- package/build/relations/OneToManyCollection.js.map +1 -1
- package/build/relations/OneToManyLargeCollection.d.ts +0 -1
- package/build/relations/OneToOneReference.d.ts +0 -1
- package/build/relations/OneToOneReference.js +1 -1
- package/build/relations/OneToOneReference.js.map +1 -1
- package/build/relations/PolymorphicReference.d.ts +0 -1
- package/build/relations/ReactiveField.d.ts +0 -1
- package/build/relations/ReactiveGetter.d.ts +0 -1
- package/build/relations/ReactiveManyToMany.d.ts +0 -1
- package/build/relations/ReactiveManyToMany.js +1 -1
- package/build/relations/ReactiveManyToMany.js.map +1 -1
- package/build/relations/ReactiveManyToManyOtherSide.d.ts +0 -1
- package/build/relations/ReactiveManyToManyOtherSide.js +1 -1
- package/build/relations/ReactiveManyToManyOtherSide.js.map +1 -1
- package/build/relations/ReactiveReference.d.ts +0 -1
- package/build/relations/ReactiveReference.js +1 -1
- package/build/relations/ReactiveReference.js.map +1 -1
- package/build/relations/ReadOnlyCollection.d.ts +0 -1
- package/build/relations/RecursiveCollection.d.ts +0 -1
- package/build/relations/RecursiveCycleError.d.ts +0 -1
- package/build/relations/Reference.d.ts +0 -1
- package/build/relations/Relation.d.ts +0 -1
- package/build/relations/hasAsyncMethod.d.ts +0 -1
- package/build/relations/hasManyDerived.d.ts +0 -1
- package/build/relations/hasManyThrough.d.ts +0 -1
- package/build/relations/hasOneDerived.d.ts +0 -1
- package/build/relations/hasOneThrough.d.ts +0 -1
- package/build/relations/hasProperty.d.ts +0 -1
- package/build/relations/index.d.ts +1 -1
- package/build/relations/index.js +7 -2
- package/build/relations/index.js.map +1 -1
- package/build/resurrection.d.ts +0 -1
- package/build/rules.d.ts +8 -1
- package/build/rules.js +17 -0
- package/build/rules.js.map +1 -1
- package/build/runtimeConfig.d.ts +4 -1
- package/build/runtimeConfig.js +5 -0
- package/build/runtimeConfig.js.map +1 -1
- package/build/scopes.d.ts +0 -1
- package/build/serde.d.ts +0 -1
- package/build/serde.js +9 -7
- package/build/serde.js.map +1 -1
- package/build/temporal.d.ts +0 -1
- package/build/temporalMappers.d.ts +0 -1
- package/build/trusted.d.ts +0 -1
- package/build/typeMap.d.ts +0 -1
- package/build/unnest.d.ts +0 -1
- package/build/upsert.d.ts +0 -1
- package/build/utils.d.ts +2 -1
- package/build/utils.js +7 -0
- package/build/utils.js.map +1 -1
- package/build/withLoaded.d.ts +0 -1
- package/package.json +2 -2
- package/build/AliasAssigner.d.ts.map +0 -1
- package/build/Aliases.d.ts.map +0 -1
- package/build/BaseEntity.d.ts.map +0 -1
- package/build/ConditionBuilder.d.ts.map +0 -1
- package/build/Entity.d.ts.map +0 -1
- package/build/EntityFields.d.ts.map +0 -1
- package/build/EntityFilter.d.ts.map +0 -1
- package/build/EntityGraphQLFilter.d.ts.map +0 -1
- package/build/EntityManager.d.ts.map +0 -1
- package/build/EntityMetadata.d.ts.map +0 -1
- package/build/EnumMetadata.d.ts.map +0 -1
- package/build/FlushLock.d.ts.map +0 -1
- package/build/HintTree.d.ts.map +0 -1
- package/build/IndexManager.d.ts.map +0 -1
- package/build/InstanceData.d.ts.map +0 -1
- package/build/IsLoadedCache.d.ts.map +0 -1
- package/build/JoinRows.d.ts.map +0 -1
- package/build/PendingChanges.d.ts.map +0 -1
- package/build/PluginManager.d.ts.map +0 -1
- package/build/QueryParser.collectionJoins.d.ts.map +0 -1
- package/build/QueryParser.collectionJoins.test.d.ts +0 -2
- package/build/QueryParser.collectionJoins.test.d.ts.map +0 -1
- package/build/QueryParser.collectionJoins.test.js +0 -772
- package/build/QueryParser.collectionJoins.test.js.map +0 -1
- package/build/QueryParser.d.ts.map +0 -1
- package/build/QueryParser.pruning.d.ts.map +0 -1
- package/build/QueryParser.pruning.test.d.ts +0 -2
- package/build/QueryParser.pruning.test.d.ts.map +0 -1
- package/build/QueryParser.pruning.test.js +0 -106
- package/build/QueryParser.pruning.test.js.map +0 -1
- package/build/QueryParser.test.d.ts +0 -2
- package/build/QueryParser.test.d.ts.map +0 -1
- package/build/QueryParser.test.js +0 -27
- package/build/QueryParser.test.js.map +0 -1
- package/build/QueryVisitor.d.ts.map +0 -1
- package/build/ReactionsManager.d.ts.map +0 -1
- package/build/Todo.d.ts.map +0 -1
- package/build/batchloaders/BatchLoader.d.ts.map +0 -1
- package/build/batchloaders/enumCollectionBatchLoader.d.ts.map +0 -1
- package/build/batchloaders/loadBatchLoader.d.ts.map +0 -1
- package/build/batchloaders/manyToManyBatchLoader.d.ts.map +0 -1
- package/build/batchloaders/oneToManyBatchLoader.d.ts.map +0 -1
- package/build/batchloaders/oneToOneBatchLoader.d.ts.map +0 -1
- package/build/batchloaders/populateBatchLoader.d.ts.map +0 -1
- package/build/batchloaders/recursiveChildrenBatchLoader.d.ts.map +0 -1
- package/build/batchloaders/recursiveM2mBatchLoader.d.ts.map +0 -1
- package/build/batchloaders/recursiveParentsBatchLoader.d.ts.map +0 -1
- package/build/changes.d.ts.map +0 -1
- package/build/config.d.ts.map +0 -1
- package/build/config.test.d.ts +0 -2
- package/build/config.test.d.ts.map +0 -1
- package/build/config.test.js +0 -53
- package/build/config.test.js.map +0 -1
- package/build/configure.d.ts.map +0 -1
- package/build/dataloaders/fastWhereFilterHash.d.ts.map +0 -1
- package/build/dataloaders/fastWhereFilterHash.test.d.ts +0 -2
- package/build/dataloaders/fastWhereFilterHash.test.d.ts.map +0 -1
- package/build/dataloaders/fastWhereFilterHash.test.js +0 -59
- package/build/dataloaders/fastWhereFilterHash.test.js.map +0 -1
- package/build/dataloaders/findByUniqueDataLoader.d.ts.map +0 -1
- package/build/dataloaders/findCountDataLoader.d.ts.map +0 -1
- package/build/dataloaders/findDataLoader.d.ts.map +0 -1
- package/build/dataloaders/findIdsDataLoader.d.ts.map +0 -1
- package/build/dataloaders/findOrCreateDataLoader.d.ts.map +0 -1
- package/build/dataloaders/findPaginatedDataLoader.d.ts.map +0 -1
- package/build/dataloaders/lensDataLoader.d.ts.map +0 -1
- package/build/dataloaders/manyToManyFindDataLoader.d.ts.map +0 -1
- package/build/dataloaders/oneToManyFindDataLoader.d.ts.map +0 -1
- package/build/defaults.d.ts.map +0 -1
- package/build/driverApi.d.ts.map +0 -1
- package/build/drivers/Driver.d.ts.map +0 -1
- package/build/drivers/EntityWriter.d.ts.map +0 -1
- package/build/drivers/IdAssigner.d.ts.map +0 -1
- package/build/drivers/buildRawQuery.d.ts.map +0 -1
- package/build/drivers/buildUtils.d.ts.map +0 -1
- package/build/drivers/index.d.ts.map +0 -1
- package/build/fields.d.ts.map +0 -1
- package/build/getProperties.d.ts.map +0 -1
- package/build/index.d.ts.map +0 -1
- package/build/json.d.ts.map +0 -1
- package/build/k.d.ts.map +0 -1
- package/build/keys.d.ts.map +0 -1
- package/build/keywords.d.ts.map +0 -1
- package/build/loadHints.d.ts.map +0 -1
- package/build/loadLens.d.ts.map +0 -1
- package/build/logging/FactoryLogger.d.ts.map +0 -1
- package/build/logging/FieldLogger.d.ts.map +0 -1
- package/build/logging/ReactionLogger.d.ts.map +0 -1
- package/build/newEntity.d.ts.map +0 -1
- package/build/newTestInstance.d.ts.map +0 -1
- package/build/normalizeHints.d.ts.map +0 -1
- package/build/plugins/ImmutableEntitiesPlugin.d.ts.map +0 -1
- package/build/plugins/PreloadPlugin.d.ts.map +0 -1
- package/build/preloading/JsonAggregatePreloader.d.ts.map +0 -1
- package/build/preloading/canPreload.d.ts.map +0 -1
- package/build/preloading/partitionHint.d.ts.map +0 -1
- package/build/reactiveHints.d.ts.map +0 -1
- package/build/relations/AbstractPropertyImpl.d.ts.map +0 -1
- package/build/relations/AbstractRelationImpl.d.ts.map +0 -1
- package/build/relations/AsyncProperty.d.ts.map +0 -1
- package/build/relations/AsyncReactiveField.d.ts.map +0 -1
- package/build/relations/Collection.d.ts.map +0 -1
- package/build/relations/CustomCollection.d.ts.map +0 -1
- package/build/relations/CustomReference.d.ts.map +0 -1
- package/build/relations/EnumCollection.d.ts.map +0 -1
- package/build/relations/LargeCollection.d.ts.map +0 -1
- package/build/relations/ManyToManyCollection.d.ts.map +0 -1
- package/build/relations/ManyToManyLargeCollection.d.ts.map +0 -1
- package/build/relations/ManyToOneReference.d.ts.map +0 -1
- package/build/relations/OneToManyCollection.d.ts.map +0 -1
- package/build/relations/OneToManyLargeCollection.d.ts.map +0 -1
- package/build/relations/OneToOneReference.d.ts.map +0 -1
- package/build/relations/PolymorphicReference.d.ts.map +0 -1
- package/build/relations/ReactiveField.d.ts.map +0 -1
- package/build/relations/ReactiveGetter.d.ts.map +0 -1
- package/build/relations/ReactiveManyToMany.d.ts.map +0 -1
- package/build/relations/ReactiveManyToManyOtherSide.d.ts.map +0 -1
- package/build/relations/ReactiveReference.d.ts.map +0 -1
- package/build/relations/ReadOnlyCollection.d.ts.map +0 -1
- package/build/relations/RecursiveCollection.d.ts.map +0 -1
- package/build/relations/RecursiveCycleError.d.ts.map +0 -1
- package/build/relations/Reference.d.ts.map +0 -1
- package/build/relations/Relation.d.ts.map +0 -1
- package/build/relations/hasAsyncMethod.d.ts.map +0 -1
- package/build/relations/hasManyDerived.d.ts.map +0 -1
- package/build/relations/hasManyThrough.d.ts.map +0 -1
- package/build/relations/hasOneDerived.d.ts.map +0 -1
- package/build/relations/hasOneThrough.d.ts.map +0 -1
- package/build/relations/hasProperty.d.ts.map +0 -1
- package/build/relations/index.d.ts.map +0 -1
- package/build/resurrection.d.ts.map +0 -1
- package/build/rules.d.ts.map +0 -1
- package/build/runtimeConfig.d.ts.map +0 -1
- package/build/scopes.d.ts.map +0 -1
- package/build/serde.d.ts.map +0 -1
- package/build/temporal.d.ts.map +0 -1
- package/build/temporalMappers.d.ts.map +0 -1
- package/build/trusted.d.ts.map +0 -1
- package/build/typeMap.d.ts.map +0 -1
- package/build/unnest.d.ts.map +0 -1
- package/build/upsert.d.ts.map +0 -1
- package/build/utils.d.ts.map +0 -1
- package/build/withLoaded.d.ts.map +0 -1
|
@@ -30,7 +30,7 @@ class ReactionsManager {
|
|
|
30
30
|
processedActions = new Set();
|
|
31
31
|
#needsRecalc = { populate: false, query: false, reaction: false };
|
|
32
32
|
// Accessible for EntityManager.runValidation to reuse
|
|
33
|
-
logger = ReactionLogger_1.globalLogger;
|
|
33
|
+
logger = ReactionLogger_1.globalLogger ?? ReactionLogger_1.noopReactionLogger;
|
|
34
34
|
em;
|
|
35
35
|
/** These are NPEs that *might* have been from invalid m2o fields, so we only throw them after validation. */
|
|
36
36
|
suppressedTypeErrors = [];
|
|
@@ -56,9 +56,8 @@ class ReactionsManager {
|
|
|
56
56
|
// its `.load()` called again so that it's `setField` marks `initials` as
|
|
57
57
|
// dirty, otherwise it will be left out of any INSERTs/UPDATEs.
|
|
58
58
|
this.getPending(r).todo.add(entity);
|
|
59
|
-
this.getDirtyFields((0, EntityMetadata_1.getMetadata)(r.cstr)).add(r.name);
|
|
60
59
|
this.#needsRecalc[r.kind] = true;
|
|
61
|
-
this.logger
|
|
60
|
+
this.logger.logQueued(entity, fieldName, r);
|
|
62
61
|
}
|
|
63
62
|
}
|
|
64
63
|
/** Dequeues reactivity on `fieldName`, i.e. if it's no longer dirty. */
|
|
@@ -90,9 +89,8 @@ class ReactionsManager {
|
|
|
90
89
|
queueAllDownstreamFields(entity, reason) {
|
|
91
90
|
for (const r of this.getReactables(entity)) {
|
|
92
91
|
this.getPending(r).todo.add(entity);
|
|
93
|
-
this.getDirtyFields((0, EntityMetadata_1.getMetadata)(r.cstr)).add(r.name);
|
|
94
92
|
this.#needsRecalc[r.kind] = true;
|
|
95
|
-
this.logger
|
|
93
|
+
this.logger.logQueuedAll(entity, reason, r);
|
|
96
94
|
}
|
|
97
95
|
}
|
|
98
96
|
/**
|
|
@@ -122,7 +120,7 @@ class ReactionsManager {
|
|
|
122
120
|
*/
|
|
123
121
|
async recalcPendingReactables(kind) {
|
|
124
122
|
if (this.needsRecalc(kind))
|
|
125
|
-
this.logger
|
|
123
|
+
this.logger.logStartingRecalc(this.em, kind);
|
|
126
124
|
let loops = 0;
|
|
127
125
|
while (this.needsRecalc(kind)) {
|
|
128
126
|
// ...we probably should only loop for `kind=reactables` Reactables, and `kind=reactiveQueries`
|
|
@@ -153,7 +151,7 @@ class ReactionsManager {
|
|
|
153
151
|
// Walk back from the source to any downstream entities
|
|
154
152
|
const entities = r.path.length === 0 ? todo : await (0, reactiveHints_1.followReverseHint)(r.name, todo, r.path);
|
|
155
153
|
const actionableEntities = entities.filter((entity) => !entity.isDeletedEntity && entity instanceof r.cstr);
|
|
156
|
-
this.logger
|
|
154
|
+
this.logger.logWalked(todo, r, actionableEntities, "recalc");
|
|
157
155
|
actionableEntities.forEach((entity) => {
|
|
158
156
|
const key = makeActionKey(entity, r);
|
|
159
157
|
// We could arrive at the same reactable from multiple paths (eg, 2 dependent fields changed), so we need to
|
|
@@ -167,13 +165,13 @@ class ReactionsManager {
|
|
|
167
165
|
});
|
|
168
166
|
}));
|
|
169
167
|
const actions = [...actionsMap.values()];
|
|
170
|
-
this.logger
|
|
168
|
+
this.logger.logLoadingStart(this.em, actions);
|
|
171
169
|
// Use allSettled so that we can watch for derived values that want to use an entity's id
|
|
172
170
|
// i.e. they can fail, but we'll queue them from later.
|
|
173
|
-
const startTime = this.logger
|
|
171
|
+
const startTime = this.logger.now();
|
|
174
172
|
const results = await (0, trusted_1.runInTrustedContext)(() => Promise.allSettled(actions.map((a) => this.#doAction(a))));
|
|
175
|
-
const endTime = this.logger
|
|
176
|
-
this.logger
|
|
173
|
+
const endTime = this.logger.now();
|
|
174
|
+
this.logger.logLoadingEnd(this.em, endTime - startTime);
|
|
177
175
|
const actionsPendingAssignedIds = new Map();
|
|
178
176
|
const failures = [];
|
|
179
177
|
results.forEach((result, i) => {
|
|
@@ -197,11 +195,11 @@ class ReactionsManager {
|
|
|
197
195
|
if (actionsPendingAssignedIds.size > 0) {
|
|
198
196
|
await this.em.assignNewIds();
|
|
199
197
|
const actions = [...actionsPendingAssignedIds.values()];
|
|
200
|
-
this.logger
|
|
201
|
-
const startTime = this.logger
|
|
198
|
+
this.logger.logLoadingStart(this.em, actions);
|
|
199
|
+
const startTime = this.logger.now();
|
|
202
200
|
const results = await (0, trusted_1.runInTrustedContext)(() => Promise.allSettled(actions.map((a) => this.#doAction(a))));
|
|
203
|
-
const endTime = this.logger
|
|
204
|
-
this.logger
|
|
201
|
+
const endTime = this.logger.now();
|
|
202
|
+
this.logger.logLoadingEnd(this.em, endTime - startTime);
|
|
205
203
|
results.forEach((result, i) => {
|
|
206
204
|
if (result.status === "rejected") {
|
|
207
205
|
if (result.reason instanceof TypeError) {
|
|
@@ -232,10 +230,10 @@ class ReactionsManager {
|
|
|
232
230
|
async recalcPendingTypeErrors() {
|
|
233
231
|
const actions = [...this.actionsPendingTypeErrors.values()];
|
|
234
232
|
this.actionsPendingTypeErrors.clear();
|
|
235
|
-
const startTime = this.logger
|
|
233
|
+
const startTime = this.logger.now();
|
|
236
234
|
const results = await (0, trusted_1.runInTrustedContext)(() => Promise.allSettled(actions.filter((a) => !a.entity.isDeletedEntity).map((a) => this.#doAction(a))));
|
|
237
|
-
const endTime = this.logger
|
|
238
|
-
this.logger
|
|
235
|
+
const endTime = this.logger.now();
|
|
236
|
+
this.logger.logLoadingEnd(this.em, endTime - startTime);
|
|
239
237
|
const failures = [];
|
|
240
238
|
results.forEach((result) => {
|
|
241
239
|
if (result.status === "rejected") {
|
|
@@ -260,7 +258,7 @@ class ReactionsManager {
|
|
|
260
258
|
this.processedActions.clear();
|
|
261
259
|
}
|
|
262
260
|
setLogger(logger) {
|
|
263
|
-
this.logger = logger;
|
|
261
|
+
this.logger = logger ?? ReactionLogger_1.noopReactionLogger;
|
|
264
262
|
}
|
|
265
263
|
clearSuppressedTypeErrors() {
|
|
266
264
|
this.suppressedTypeErrors = [];
|
|
@@ -282,6 +280,9 @@ class ReactionsManager {
|
|
|
282
280
|
if (!pending) {
|
|
283
281
|
pending = { todo: new Set(), done: new Set() };
|
|
284
282
|
this.pendingReactables.set(r, pending);
|
|
283
|
+
// The dirty field name is constant per reactable, so mark it once on the first
|
|
284
|
+
// queue instead of paying the `getMetadata` + map lookup on every queued entity.
|
|
285
|
+
this.getDirtyFields((0, EntityMetadata_1.getMetadata)(r.cstr)).add(r.name);
|
|
285
286
|
}
|
|
286
287
|
return pending;
|
|
287
288
|
}
|
|
@@ -304,10 +305,13 @@ class ReactionsManager {
|
|
|
304
305
|
const byField = (0, index_1.getEmInternalApi)(this.em).isMerging(entity)
|
|
305
306
|
? meta.reactablesIncludingReadOnlyByField
|
|
306
307
|
: meta.reactablesByField;
|
|
307
|
-
return
|
|
308
|
+
// Most fields have no reactables, so return a shared empty array instead of allocating one per set
|
|
309
|
+
return byField.get(fieldName) ?? noReactables;
|
|
308
310
|
}
|
|
309
311
|
}
|
|
310
312
|
exports.ReactionsManager = ReactionsManager;
|
|
313
|
+
/** A shared frozen array for fields with no downstream reactables. */
|
|
314
|
+
const noReactables = Object.freeze([]);
|
|
311
315
|
/** Returns a stable dedupe key for retry/runOnce reaction bookkeeping. */
|
|
312
316
|
function makeActionKey(entity, r) {
|
|
313
317
|
return `${entity.toTaggedString()}_${r.name}`;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ReactionsManager.js","sourceRoot":"","sources":["../src/ReactionsManager.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"ReactionsManager.js","sourceRoot":"","sources":["../src/ReactionsManager.ts"],"names":[],"mappings":"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"}
|
package/build/Todo.d.ts
CHANGED
|
@@ -17,7 +17,7 @@ export declare class Todo {
|
|
|
17
17
|
/**
|
|
18
18
|
* Scans `entities` for new/updated entities and groups them by type (by base type if applicable).
|
|
19
19
|
*/
|
|
20
|
-
export declare function createTodos(entities:
|
|
20
|
+
export declare function createTodos(entities: Iterable<Entity>): Record<string, Todo>;
|
|
21
21
|
/** getOrSets a `Todo` for `entity` in `todos`. */
|
|
22
22
|
export declare function getTodo(todos: Record<string, Todo>, entity: Entity): Todo;
|
|
23
23
|
export interface JoinRowTodo {
|
|
@@ -32,4 +32,3 @@ export interface JoinRowTodo {
|
|
|
32
32
|
}
|
|
33
33
|
/** Given a list of `JoinRow`s for a given table, combine them into a single logical `JoinRowTodo`. */
|
|
34
34
|
export declare function combineJoinRows(joinRows: Record<string, JoinRows>): Record<string, JoinRowTodo>;
|
|
35
|
-
//# sourceMappingURL=Todo.d.ts.map
|
package/build/Todo.js
CHANGED
|
@@ -13,11 +13,22 @@ class Todo {
|
|
|
13
13
|
metadata;
|
|
14
14
|
/** Groups `todos` by their base/subtype, currently only inserts. */
|
|
15
15
|
static groupInsertsByTypeAndSubType(todos) {
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
16
|
+
const map = new Map();
|
|
17
|
+
for (const todoKey in todos) {
|
|
18
|
+
const todo = todos[todoKey];
|
|
19
|
+
// Skip update/delete-only todos so hook loops don't allocate entries for empty insert lists
|
|
20
|
+
if (todo.inserts.length === 0)
|
|
21
|
+
continue;
|
|
22
|
+
if (todo.metadata.inheritanceType) {
|
|
23
|
+
for (const [meta, inserts] of (0, utils_1.groupBy)(todo.inserts, (e) => (0, EntityMetadata_1.getMetadata)(e))) {
|
|
24
|
+
map.set(meta, inserts);
|
|
25
|
+
}
|
|
26
|
+
}
|
|
27
|
+
else {
|
|
28
|
+
map.set(todo.metadata, todo.inserts);
|
|
29
|
+
}
|
|
30
|
+
}
|
|
31
|
+
return map;
|
|
21
32
|
}
|
|
22
33
|
inserts = [];
|
|
23
34
|
updates = [];
|
package/build/Todo.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Todo.js","sourceRoot":"","sources":["../src/Todo.ts"],"names":[],"mappings":";;;
|
|
1
|
+
{"version":3,"file":"Todo.js","sourceRoot":"","sources":["../src/Todo.ts"],"names":[],"mappings":"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"}
|
|
@@ -4,4 +4,3 @@ import { BatchLoader } from "./BatchLoader";
|
|
|
4
4
|
export declare const enumCollectionLoadOperation = "enum-collection-load";
|
|
5
5
|
/** Batches `EnumCollection.load` calls via BatchLoader; keys are the owning entities' tagged ids. */
|
|
6
6
|
export declare function enumCollectionBatchLoader(em: EntityManager, collection: ManyToManyLike): BatchLoader<string>;
|
|
7
|
-
//# sourceMappingURL=enumCollectionBatchLoader.d.ts.map
|
|
@@ -21,7 +21,7 @@ function loadBatchLoader(em, meta, overwriteExisting = false) {
|
|
|
21
21
|
const keys = loads.map((l) => (0, keys_1.keyToNumber)(meta, l.taggedId));
|
|
22
22
|
const alias = (0, utils_1.abbreviation)(meta.tableName);
|
|
23
23
|
const query = {
|
|
24
|
-
selects: [`"${alias}".*`],
|
|
24
|
+
selects: meta.hasLazyColumns ? (0, QueryParser_1.lazyExcludedSelects)(meta, alias) : [`"${alias}".*`],
|
|
25
25
|
tables: [{ alias, join: "primary", table: meta.tableName }],
|
|
26
26
|
condition: {
|
|
27
27
|
kind: "exp",
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"loadBatchLoader.js","sourceRoot":"","sources":["../../src/batchloaders/loadBatchLoader.ts"],"names":[],"mappings":";;;AAmBA,0CAwCC;AA3DD,8CAAgD;AAChD,oDAAmE;AAEnE,0CAA4C;AAC5C,
|
|
1
|
+
{"version":3,"file":"loadBatchLoader.js","sourceRoot":"","sources":["../../src/batchloaders/loadBatchLoader.ts"],"names":[],"mappings":"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"}
|
|
@@ -4,4 +4,3 @@ import { BatchLoader } from "./BatchLoader";
|
|
|
4
4
|
export declare const manyToManyLoadOperation = "m2m-load";
|
|
5
5
|
/** Batches m2m.packages/core/src/relations/ReactiveManyToMany.tsload calls via BatchLoader. */
|
|
6
6
|
export declare function manyToManyBatchLoader(em: EntityManager, collection: ManyToManyLike): BatchLoader<string>;
|
|
7
|
-
//# sourceMappingURL=manyToManyBatchLoader.d.ts.map
|
|
@@ -4,4 +4,3 @@ import { OneToManyCollection } from "../index";
|
|
|
4
4
|
import { BatchLoader } from "./BatchLoader";
|
|
5
5
|
export declare const oneToManyLoadOperation = "o2m-load";
|
|
6
6
|
export declare function oneToManyBatchLoader<T extends Entity, U extends Entity>(em: EntityManager, collection: OneToManyCollection<T, U>): BatchLoader<string>;
|
|
7
|
-
//# sourceMappingURL=oneToManyBatchLoader.d.ts.map
|
|
@@ -4,4 +4,3 @@ import { OneToOneReferenceImpl } from "../relations/OneToOneReference";
|
|
|
4
4
|
import { BatchLoader } from "./BatchLoader";
|
|
5
5
|
export declare const oneToOneLoadOperation = "o2o-load";
|
|
6
6
|
export declare function oneToOneBatchLoader<T extends Entity, U extends Entity>(em: EntityManager, reference: OneToOneReferenceImpl<T, U>): BatchLoader<string>;
|
|
7
|
-
//# sourceMappingURL=oneToOneBatchLoader.d.ts.map
|
|
@@ -80,6 +80,8 @@ function populateBatchLoader(em, meta, hint, mode, opts = {}) {
|
|
|
80
80
|
const fallbackPromises = [];
|
|
81
81
|
for (const [key, tree] of Object.entries(layerNode.hints)) {
|
|
82
82
|
const field = layerMeta?.allFields[key];
|
|
83
|
+
// Hoist the poly-key parsing out of the per-entity loop; most keys are not poly
|
|
84
|
+
const isPoly = (0, reactiveHints_1.isPolyHint)(key);
|
|
83
85
|
let oneToManyLoader;
|
|
84
86
|
let oneToManyPromise;
|
|
85
87
|
let manyToManyLoader;
|
|
@@ -89,12 +91,12 @@ function populateBatchLoader(em, meta, hint, mode, opts = {}) {
|
|
|
89
91
|
let manyToOneLoader;
|
|
90
92
|
let manyToOnePromise;
|
|
91
93
|
for (const entity of tree.entities) {
|
|
92
|
-
const relation = (0, reactiveHints_1.getRelationFromMaybePolyKey)(entity, key);
|
|
94
|
+
const relation = isPoly ? (0, reactiveHints_1.getRelationFromMaybePolyKey)(entity, key) : entity[key];
|
|
93
95
|
// This happens to let through non-relation hints like 'name' on user, which wasn't intentional,
|
|
94
96
|
// but currently doesn't blow up (somehow), and is depended on by internal tests.
|
|
95
97
|
if (!relation || typeof relation.load !== "function") {
|
|
96
98
|
// We don't want to throw on poly hints, because they're not actually loaded on the entity
|
|
97
|
-
if (
|
|
99
|
+
if (isPoly)
|
|
98
100
|
continue;
|
|
99
101
|
throw new Error(`Invalid load hint '${key}' on ${entity}`);
|
|
100
102
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"populateBatchLoader.js","sourceRoot":"","sources":["../../src/batchloaders/populateBatchLoader.ts"],"names":[],"mappings":";;;AA0BA,
|
|
1
|
+
{"version":3,"file":"populateBatchLoader.js","sourceRoot":"","sources":["../../src/batchloaders/populateBatchLoader.ts"],"names":[],"mappings":"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"}
|
|
@@ -4,4 +4,3 @@ import { RecursiveChildrenCollectionImpl } from "../relations/RecursiveCollectio
|
|
|
4
4
|
import { BatchLoader } from "./BatchLoader";
|
|
5
5
|
export declare const recursiveChildrenOperation = "o2m-recursive";
|
|
6
6
|
export declare function recursiveChildrenBatchLoader<T extends Entity, U extends Entity>(em: EntityManager, collection: RecursiveChildrenCollectionImpl<T, U>): BatchLoader<Entity>;
|
|
7
|
-
//# sourceMappingURL=recursiveChildrenBatchLoader.d.ts.map
|
|
@@ -43,7 +43,9 @@ function recursiveChildrenBatchLoader(em, collection) {
|
|
|
43
43
|
SELECT r.id, r.${columnName} FROM ${(0, index_1.kq)(meta.tableName)} r JOIN ${alias}_cte ON r.${columnName} = ${alias}_cte.id
|
|
44
44
|
`,
|
|
45
45
|
// RecursiveChildrenCollectionImpl won't call `.load` on new entities, so we can assume entities have an id
|
|
46
|
-
bindings: [
|
|
46
|
+
bindings: [
|
|
47
|
+
(0, index_1.deTagIds)(meta, parents.map((e) => e.idTagged)),
|
|
48
|
+
],
|
|
47
49
|
},
|
|
48
50
|
recursive: true,
|
|
49
51
|
},
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"recursiveChildrenBatchLoader.js","sourceRoot":"","sources":["../../src/batchloaders/recursiveChildrenBatchLoader.ts"],"names":[],"mappings":";;;AAsBA,
|
|
1
|
+
{"version":3,"file":"recursiveChildrenBatchLoader.js","sourceRoot":"","sources":["../../src/batchloaders/recursiveChildrenBatchLoader.ts"],"names":[],"mappings":"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"}
|
|
@@ -4,4 +4,3 @@ import { RecursiveM2mCollectionImpl } from "../relations/RecursiveCollection";
|
|
|
4
4
|
import { BatchLoader } from "./BatchLoader";
|
|
5
5
|
export declare const recursiveM2mOperation = "m2m-recursive";
|
|
6
6
|
export declare function recursiveM2mBatchLoader<T extends Entity, U extends Entity>(em: EntityManager, collection: RecursiveM2mCollectionImpl<T, U>): BatchLoader<Entity>;
|
|
7
|
-
//# sourceMappingURL=recursiveM2mBatchLoader.d.ts.map
|
|
@@ -15,7 +15,7 @@ function recursiveM2mBatchLoader(em, collection) {
|
|
|
15
15
|
const { joinTableName, columnNames } = m2mField;
|
|
16
16
|
const thisColumn = columnNames[0];
|
|
17
17
|
const otherColumn = columnNames[1];
|
|
18
|
-
const seedIds = (0, index_1.
|
|
18
|
+
const seedIds = (0, index_1.deTagIds)(meta, entities.map((e) => e.idTagged));
|
|
19
19
|
// Use a recursive CTE to walk the join table and return all join rows for the seed
|
|
20
20
|
// entities and all transitively-reachable entities. JoinRows.loadRows then calls
|
|
21
21
|
// em.loadAll internally to hydrate the actual entities on both sides.
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"recursiveM2mBatchLoader.js","sourceRoot":"","sources":["../../src/batchloaders/recursiveM2mBatchLoader.ts"],"names":[],"mappings":";;;AAmBA,
|
|
1
|
+
{"version":3,"file":"recursiveM2mBatchLoader.js","sourceRoot":"","sources":["../../src/batchloaders/recursiveM2mBatchLoader.ts"],"names":[],"mappings":"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"}
|
|
@@ -4,4 +4,3 @@ import { RecursiveParentsCollectionImpl } from "../relations/RecursiveCollection
|
|
|
4
4
|
import { BatchLoader } from "./BatchLoader";
|
|
5
5
|
export declare const recursiveParentsOperation = "m2o-recursive";
|
|
6
6
|
export declare function recursiveParentsBatchLoader<T extends Entity, U extends Entity>(em: EntityManager, collection: RecursiveParentsCollectionImpl<T, U>): BatchLoader<Entity>;
|
|
7
|
-
//# sourceMappingURL=recursiveParentsBatchLoader.d.ts.map
|
|
@@ -43,7 +43,7 @@ function recursiveParentsBatchLoader(em, collection) {
|
|
|
43
43
|
UNION
|
|
44
44
|
SELECT r.id, r.${columnName} FROM ${(0, index_1.kq)(meta.tableName)} r JOIN ${alias}_cte ON r.id = ${alias}_cte.${columnName}
|
|
45
45
|
`,
|
|
46
|
-
bindings: [(0, index_1.
|
|
46
|
+
bindings: [(0, index_1.deTagIds)(meta, immediateParentIds)],
|
|
47
47
|
},
|
|
48
48
|
recursive: true,
|
|
49
49
|
},
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"recursiveParentsBatchLoader.js","sourceRoot":"","sources":["../../src/batchloaders/recursiveParentsBatchLoader.ts"],"names":[],"mappings":";;;
|
|
1
|
+
{"version":3,"file":"recursiveParentsBatchLoader.js","sourceRoot":"","sources":["../../src/batchloaders/recursiveParentsBatchLoader.ts"],"names":[],"mappings":"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"}
|
package/build/changes.d.ts
CHANGED
package/build/changes.js
CHANGED
|
@@ -4,6 +4,7 @@ exports.newChangesProxy = newChangesProxy;
|
|
|
4
4
|
const BaseEntity_1 = require("./BaseEntity");
|
|
5
5
|
const fields_1 = require("./fields");
|
|
6
6
|
const index_1 = require("./index");
|
|
7
|
+
const LazyField_1 = require("./relations/LazyField");
|
|
7
8
|
/**
|
|
8
9
|
* Provides a base class for field/primitive & m2o status impls.
|
|
9
10
|
*
|
|
@@ -21,7 +22,9 @@ class BaseFieldStatusImpl {
|
|
|
21
22
|
get originalValue() {
|
|
22
23
|
const { originalData, data } = (0, BaseEntity_1.getInstanceData)(this.entity);
|
|
23
24
|
// If `p` is in originalData, always respect that, even if it's undefined
|
|
24
|
-
|
|
25
|
+
const value = this.fieldName in originalData ? originalData[this.fieldName] : (0, fields_1.getField)(this.entity, this.fieldName);
|
|
26
|
+
// An unloaded lazy column's original value is unknown
|
|
27
|
+
return value === LazyField_1.notLoadedValue ? undefined : value;
|
|
25
28
|
}
|
|
26
29
|
get hasChanged() {
|
|
27
30
|
const { originalData, data } = (0, BaseEntity_1.getInstanceData)(this.entity);
|
package/build/changes.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"changes.js","sourceRoot":"","sources":["../src/changes.ts"],"names":[],"mappings":";;
|
|
1
|
+
{"version":3,"file":"changes.js","sourceRoot":"","sources":["../src/changes.ts"],"names":[],"mappings":"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"}
|
package/build/config.d.ts
CHANGED
|
@@ -55,6 +55,22 @@ export declare class ConfigApi<T extends Entity, C> {
|
|
|
55
55
|
*/
|
|
56
56
|
addRule<H extends ReactiveHint<T>>(hint: H, rule: ValidationRule<Reacted<T, H>>): void;
|
|
57
57
|
addRule(rule: ValidationRule<T>): void;
|
|
58
|
+
/**
|
|
59
|
+
* Adds a "commit rule" that runs like a regular validation rule (see {@link addRule}), but *after*
|
|
60
|
+
* the entity's `INSERT`/`UPDATE`/`DELETE` has been flushed to the database and *before* the
|
|
61
|
+
* transaction `COMMIT`s, i.e. still within the transaction.
|
|
62
|
+
*
|
|
63
|
+
* The point of running this late is that any `em.find`s the rule makes will query the _changed_
|
|
64
|
+
* state (the just-flushed rows), instead of the pre-flush state that regular `addRule` rules see.
|
|
65
|
+
* This is useful for cross-row invariants that are easiest to express as a query, e.g. "at most
|
|
66
|
+
* one active `AuthorSchedule` per author", where the rule wants to `em.find` the sibling rows
|
|
67
|
+
* that were themselves just inserted/updated in this same flush.
|
|
68
|
+
*
|
|
69
|
+
* Like `addRule`, if a `hint` is passed the rule is reactive: it runs whenever any field in the
|
|
70
|
+
* hint changes (walking back to the owning entity), and the lambda gets a `Reacted` view.
|
|
71
|
+
*/
|
|
72
|
+
addCommitRule<H extends ReactiveHint<T>>(hint: H, rule: ValidationRule<Reacted<T, H>>): void;
|
|
73
|
+
addCommitRule(rule: ValidationRule<T>): void;
|
|
58
74
|
/** If both this entity, and `cstr` entities, are in the same `em.flush`, run us first. */
|
|
59
75
|
runHooksBefore(cstr: EntityConstructor<any>): void;
|
|
60
76
|
/** Deletes any entity/entities pointed to by `relation` when this entity is deleted. */
|
|
@@ -220,6 +236,8 @@ export declare class ConfigData<T extends Entity, C> {
|
|
|
220
236
|
runHooksBefore: EntityConstructor<any>[];
|
|
221
237
|
/** The validation rules for this entity type. */
|
|
222
238
|
rules: ValidationRuleInternal<T>[];
|
|
239
|
+
/** The "commit rules" for this entity type, i.e. validation rules that run post-flush/pre-commit. */
|
|
240
|
+
commitRules: ValidationRuleInternal<T>[];
|
|
223
241
|
/** The reactions for this entity type. */
|
|
224
242
|
reactions: ReactionInternal<T, any, C>[];
|
|
225
243
|
/** The hooks for this entity type. */
|
|
@@ -229,6 +247,7 @@ export declare class ConfigData<T extends Entity, C> {
|
|
|
229
247
|
/** Asynchronous defaults for this entity type, invoked on `em.flush`. */
|
|
230
248
|
asyncDefaults: Record<string, AsyncDefault<T>>;
|
|
231
249
|
reactiveRules: ReactiveRule[];
|
|
250
|
+
reactiveCommitRules: ReactiveRule[];
|
|
232
251
|
reactables: Reactable[];
|
|
233
252
|
cascadeDeleteFields: Array<keyof RelationsIn<T>>;
|
|
234
253
|
touchOnChange: Set<keyof RelationsIn<T>>;
|
|
@@ -247,4 +266,3 @@ export declare function getFilePath(line: string): string;
|
|
|
247
266
|
/** Given a callstack, uses heuristics to find the first line that looks like user code. */
|
|
248
267
|
export declare function findUserCodeLine(lines: string[]): string;
|
|
249
268
|
export {};
|
|
250
|
-
//# sourceMappingURL=config.d.ts.map
|