joist-core 2.3.0-next.4 → 2.3.0-next.41
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/AliasAssigner.js.map +1 -1
- package/build/Aliases.d.ts +1 -2
- package/build/Aliases.js +2 -2
- package/build/Aliases.js.map +1 -1
- package/build/BaseEntity.d.ts +0 -1
- package/build/BaseEntity.js.map +1 -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/Entity.js.map +1 -1
- package/build/EntityFields.d.ts +0 -1
- package/build/EntityFilter.d.ts +0 -1
- package/build/EntityFilter.js.map +1 -1
- package/build/EntityGraphQLFilter.d.ts +0 -1
- package/build/EntityManager.d.ts +41 -7
- package/build/EntityManager.js +410 -143
- 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/FlushLock.js.map +1 -1
- package/build/HintTree.d.ts +0 -1
- package/build/HintTree.js.map +1 -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 +25 -10
- package/build/InstanceData.js +76 -28
- package/build/InstanceData.js.map +1 -1
- package/build/IsLoadedCache.d.ts +0 -1
- package/build/IsLoadedCache.js.map +1 -1
- package/build/JoinRows.d.ts +0 -1
- package/build/JoinRows.js.map +1 -1
- package/build/PendingChanges.d.ts +0 -1
- package/build/PluginManager.d.ts +13 -5
- package/build/PluginManager.js +4 -0
- package/build/PluginManager.js.map +1 -1
- package/build/QueryParser.collectionJoins.d.ts +0 -1
- package/build/QueryParser.collectionJoins.js.map +1 -1
- package/build/QueryParser.d.ts +7 -1
- package/build/QueryParser.js +44 -10
- package/build/QueryParser.js.map +1 -1
- package/build/QueryParser.pruning.d.ts +0 -1
- package/build/QueryParser.pruning.js.map +1 -1
- package/build/QueryVisitor.d.ts +0 -1
- package/build/QueryVisitor.js.map +1 -1
- package/build/ReactionsManager.d.ts +13 -4
- package/build/ReactionsManager.js +77 -50
- package/build/ReactionsManager.js.map +1 -1
- package/build/RowData.d.ts +49 -0
- package/build/RowData.js +37 -0
- package/build/RowData.js.map +1 -0
- 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/BatchLoader.js.map +1 -1
- package/build/batchloaders/enumCollectionBatchLoader.d.ts +0 -1
- package/build/batchloaders/enumCollectionBatchLoader.js.map +1 -1
- package/build/batchloaders/loadBatchLoader.d.ts +0 -1
- package/build/batchloaders/loadBatchLoader.js +21 -15
- package/build/batchloaders/loadBatchLoader.js.map +1 -1
- package/build/batchloaders/manyToManyBatchLoader.d.ts +0 -1
- package/build/batchloaders/manyToManyBatchLoader.js.map +1 -1
- package/build/batchloaders/oneToManyBatchLoader.d.ts +0 -1
- package/build/batchloaders/oneToManyBatchLoader.js +2 -2
- package/build/batchloaders/oneToManyBatchLoader.js.map +1 -1
- package/build/batchloaders/oneToOneBatchLoader.d.ts +0 -1
- package/build/batchloaders/oneToOneBatchLoader.js +2 -2
- package/build/batchloaders/oneToOneBatchLoader.js.map +1 -1
- package/build/batchloaders/populateBatchLoader.d.ts +0 -1
- package/build/batchloaders/populateBatchLoader.js +12 -22
- package/build/batchloaders/populateBatchLoader.js.map +1 -1
- package/build/batchloaders/recursiveChildrenBatchLoader.d.ts +0 -1
- package/build/batchloaders/recursiveChildrenBatchLoader.js +5 -3
- 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 +3 -3
- package/build/batchloaders/recursiveParentsBatchLoader.js.map +1 -1
- package/build/changes.d.ts +1 -2
- package/build/changes.js +4 -1
- package/build/changes.js.map +1 -1
- package/build/config.d.ts +21 -3
- package/build/config.js +36 -23
- package/build/config.js.map +1 -1
- package/build/configure.d.ts +0 -1
- package/build/configure.js +67 -3
- package/build/configure.js.map +1 -1
- package/build/dataloaders/fastWhereFilterHash.d.ts +0 -1
- package/build/dataloaders/fastWhereFilterHash.js.map +1 -1
- package/build/dataloaders/findByUniqueDataLoader.d.ts +0 -1
- package/build/dataloaders/findByUniqueDataLoader.js.map +1 -1
- package/build/dataloaders/findCountDataLoader.d.ts +0 -1
- package/build/dataloaders/findCountDataLoader.js.map +1 -1
- package/build/dataloaders/findDataLoader.d.ts +2 -3
- package/build/dataloaders/findDataLoader.js +41 -38
- package/build/dataloaders/findDataLoader.js.map +1 -1
- package/build/dataloaders/findIdsDataLoader.d.ts +0 -1
- package/build/dataloaders/findIdsDataLoader.js.map +1 -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/findPaginatedDataLoader.js.map +1 -1
- package/build/dataloaders/lensDataLoader.d.ts +0 -1
- package/build/dataloaders/lensDataLoader.js +1 -1
- package/build/dataloaders/lensDataLoader.js.map +1 -1
- package/build/dataloaders/manyToManyFindDataLoader.d.ts +0 -1
- package/build/dataloaders/manyToManyFindDataLoader.js.map +1 -1
- package/build/dataloaders/oneToManyFindDataLoader.d.ts +0 -1
- package/build/dataloaders/oneToManyFindDataLoader.js.map +1 -1
- package/build/defaults.d.ts +0 -1
- package/build/defaults.js.map +1 -1
- package/build/driverApi.d.ts +1 -2
- package/build/driverApi.js +1 -1
- package/build/driverApi.js.map +1 -1
- package/build/drivers/Driver.d.ts +13 -2
- 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/IdAssigner.js.map +1 -1
- package/build/drivers/buildRawQuery.d.ts +0 -1
- package/build/drivers/buildRawQuery.js +1 -3
- package/build/drivers/buildRawQuery.js.map +1 -1
- package/build/drivers/buildUtils.d.ts +0 -1
- package/build/drivers/buildUtils.js.map +1 -1
- package/build/drivers/index.d.ts +0 -1
- package/build/fields.d.ts +0 -1
- package/build/fields.js +5 -4
- 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 +6 -6
- package/build/index.js +11 -4
- package/build/index.js.map +1 -1
- package/build/json.d.ts +0 -1
- package/build/json.js +2 -2
- package/build/json.js.map +1 -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/keywords.js.map +1 -1
- package/build/loadHints.d.ts +0 -1
- package/build/loadHints.js.map +1 -1
- package/build/loadLens.d.ts +0 -1
- package/build/loadLens.js +1 -1
- package/build/loadLens.js.map +1 -1
- package/build/logging/FactoryLogger.d.ts +0 -1
- package/build/logging/FactoryLogger.js.map +1 -1
- package/build/logging/FieldLogger.d.ts +2 -1
- package/build/logging/FieldLogger.js +11 -2
- 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 +5 -1
- package/build/newTestInstance.js.map +1 -1
- package/build/normalizeHints.d.ts +0 -1
- package/build/normalizeHints.js.map +1 -1
- package/build/plugins/ImmutableEntitiesPlugin.d.ts +0 -1
- package/build/plugins/ImmutableEntitiesPlugin.js.map +1 -1
- package/build/plugins/PreloadPlugin.d.ts +10 -6
- package/build/preloading/JsonAggregatePreloader.d.ts +0 -1
- package/build/preloading/JsonAggregatePreloader.js +14 -9
- package/build/preloading/JsonAggregatePreloader.js.map +1 -1
- package/build/preloading/canPreload.d.ts +0 -1
- package/build/preloading/canPreload.js.map +1 -1
- package/build/preloading/partitionHint.d.ts +0 -1
- package/build/preloading/partitionHint.js.map +1 -1
- package/build/reactiveHints.d.ts +2 -3
- package/build/reactiveHints.js.map +1 -1
- package/build/relations/AbstractPropertyImpl.d.ts +0 -1
- package/build/relations/AbstractPropertyImpl.js.map +1 -1
- package/build/relations/AbstractRelationImpl.d.ts +0 -1
- package/build/relations/AbstractRelationImpl.js.map +1 -1
- package/build/relations/AsyncProperty.d.ts +0 -1
- package/build/relations/AsyncProperty.js.map +1 -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/Collection.js.map +1 -1
- package/build/relations/CustomCollection.d.ts +0 -1
- package/build/relations/CustomCollection.js.map +1 -1
- package/build/relations/CustomReference.d.ts +0 -1
- package/build/relations/CustomReference.js.map +1 -1
- package/build/relations/EnumCollection.d.ts +0 -1
- package/build/relations/EnumCollection.js.map +1 -1
- package/build/relations/LargeCollection.d.ts +0 -1
- package/build/relations/LazyField.d.ts +46 -0
- package/build/relations/LazyField.js +135 -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/ManyToManyLargeCollection.js.map +1 -1
- package/build/relations/ManyToOneReference.d.ts +0 -1
- package/build/relations/ManyToOneReference.js.map +1 -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/OneToManyLargeCollection.js.map +1 -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/PolymorphicReference.js +1 -1
- package/build/relations/PolymorphicReference.js.map +1 -1
- package/build/relations/ReactiveField.d.ts +0 -1
- package/build/relations/ReactiveField.js.map +1 -1
- package/build/relations/ReactiveGetter.d.ts +0 -1
- package/build/relations/ReactiveGetter.js.map +1 -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/ReadOnlyCollection.js.map +1 -1
- package/build/relations/RecursiveCollection.d.ts +0 -1
- package/build/relations/RecursiveCollection.js.map +1 -1
- package/build/relations/RecursiveCycleError.d.ts +0 -1
- package/build/relations/RecursiveCycleError.js.map +1 -1
- package/build/relations/Reference.d.ts +0 -1
- package/build/relations/Reference.js.map +1 -1
- package/build/relations/Relation.d.ts +0 -1
- package/build/relations/Relation.js.map +1 -1
- package/build/relations/hasAsyncMethod.d.ts +0 -1
- package/build/relations/hasAsyncMethod.js.map +1 -1
- package/build/relations/hasManyDerived.d.ts +0 -1
- package/build/relations/hasManyDerived.js.map +1 -1
- package/build/relations/hasManyThrough.d.ts +0 -1
- package/build/relations/hasManyThrough.js.map +1 -1
- package/build/relations/hasOneDerived.d.ts +0 -1
- package/build/relations/hasOneDerived.js.map +1 -1
- package/build/relations/hasOneThrough.d.ts +0 -1
- package/build/relations/hasOneThrough.js.map +1 -1
- package/build/relations/hasProperty.d.ts +0 -1
- package/build/relations/hasProperty.js.map +1 -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/resurrection.js.map +1 -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 +1 -2
- package/build/scopes.js.map +1 -1
- package/build/serde.d.ts +29 -17
- package/build/serde.js +46 -33
- package/build/serde.js.map +1 -1
- package/build/temporal.d.ts +0 -1
- package/build/temporal.js.map +1 -1
- package/build/temporalMappers.d.ts +11 -4
- package/build/temporalMappers.js +22 -11
- package/build/temporalMappers.js.map +1 -1
- package/build/trusted.d.ts +0 -1
- package/build/trusted.js.map +1 -1
- package/build/typeMap.d.ts +0 -1
- package/build/unnest.d.ts +0 -1
- package/build/unnest.js.map +1 -1
- package/build/upsert.d.ts +0 -1
- package/build/upsert.js.map +1 -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 +1 -2
- package/build/withLoaded.js.map +1 -1
- package/package.json +6 -10
- 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
|
@@ -16,6 +16,7 @@ const trusted_1 = require("./trusted");
|
|
|
16
16
|
class ReactionsManager {
|
|
17
17
|
/** Stores all source `Reactables`s that have been marked for later traversal. */
|
|
18
18
|
pendingReactables = new Map();
|
|
19
|
+
/** Failed actions to retry post-hooks, deduped by target field name -> entity (rare error path). */
|
|
19
20
|
actionsPendingTypeErrors = new Map();
|
|
20
21
|
/**
|
|
21
22
|
* A map of entity tagName -> fields that have been marked as dirty.
|
|
@@ -27,10 +28,18 @@ class ReactionsManager {
|
|
|
27
28
|
* Instead, we just track the dirty fields by type-of-entity, which is enough for `isPendingRecalc`.
|
|
28
29
|
*/
|
|
29
30
|
dirtyFields = new Map();
|
|
30
|
-
|
|
31
|
+
/**
|
|
32
|
+
* Tracks which entities have already run a `runOnce` reactable, keyed by the target field
|
|
33
|
+
* name -> entities. We key on `r.name` (not `r` itself) b/c two `Reactable`s reverse-indexed
|
|
34
|
+
* from different source paths can target the same derived field, and must dedupe together.
|
|
35
|
+
* Keying the outer map by field name (of which there are few) instead of by entity (of which
|
|
36
|
+
* there are many) means we allocate just one `Set` per distinct field name, rather than a
|
|
37
|
+
* `Set` per entity or the old per-action `${entity.toTaggedString()}_${r.name}` key strings.
|
|
38
|
+
*/
|
|
39
|
+
processedActions = new Map();
|
|
31
40
|
#needsRecalc = { populate: false, query: false, reaction: false };
|
|
32
41
|
// Accessible for EntityManager.runValidation to reuse
|
|
33
|
-
logger = ReactionLogger_1.globalLogger;
|
|
42
|
+
logger = ReactionLogger_1.globalLogger ?? ReactionLogger_1.noopReactionLogger;
|
|
34
43
|
em;
|
|
35
44
|
/** These are NPEs that *might* have been from invalid m2o fields, so we only throw them after validation. */
|
|
36
45
|
suppressedTypeErrors = [];
|
|
@@ -56,9 +65,8 @@ class ReactionsManager {
|
|
|
56
65
|
// its `.load()` called again so that it's `setField` marks `initials` as
|
|
57
66
|
// dirty, otherwise it will be left out of any INSERTs/UPDATEs.
|
|
58
67
|
this.getPending(r).todo.add(entity);
|
|
59
|
-
this.getDirtyFields((0, EntityMetadata_1.getMetadata)(r.cstr)).add(r.name);
|
|
60
68
|
this.#needsRecalc[r.kind] = true;
|
|
61
|
-
this.logger
|
|
69
|
+
this.logger.logQueued(entity, fieldName, r);
|
|
62
70
|
}
|
|
63
71
|
}
|
|
64
72
|
/** Dequeues reactivity on `fieldName`, i.e. if it's no longer dirty. */
|
|
@@ -90,9 +98,8 @@ class ReactionsManager {
|
|
|
90
98
|
queueAllDownstreamFields(entity, reason) {
|
|
91
99
|
for (const r of this.getReactables(entity)) {
|
|
92
100
|
this.getPending(r).todo.add(entity);
|
|
93
|
-
this.getDirtyFields((0, EntityMetadata_1.getMetadata)(r.cstr)).add(r.name);
|
|
94
101
|
this.#needsRecalc[r.kind] = true;
|
|
95
|
-
this.logger
|
|
102
|
+
this.logger.logQueuedAll(entity, reason, r);
|
|
96
103
|
}
|
|
97
104
|
}
|
|
98
105
|
/**
|
|
@@ -122,7 +129,7 @@ class ReactionsManager {
|
|
|
122
129
|
*/
|
|
123
130
|
async recalcPendingReactables(kind) {
|
|
124
131
|
if (this.needsRecalc(kind))
|
|
125
|
-
this.logger
|
|
132
|
+
this.logger.logStartingRecalc(this.em, kind);
|
|
126
133
|
let loops = 0;
|
|
127
134
|
while (this.needsRecalc(kind)) {
|
|
128
135
|
// ...we probably should only loop for `kind=reactables` Reactables, and `kind=reactiveQueries`
|
|
@@ -136,7 +143,10 @@ class ReactionsManager {
|
|
|
136
143
|
else {
|
|
137
144
|
this.#needsRecalc.query = false;
|
|
138
145
|
}
|
|
139
|
-
|
|
146
|
+
// Dedupe actions by (target field name, entity); see the `processedActions` docs for why
|
|
147
|
+
// we key on `r.name` instead of `r` or the old per-action key strings
|
|
148
|
+
const seen = new Map();
|
|
149
|
+
const actions = [];
|
|
140
150
|
await Promise.all([...this.pendingReactables.entries()].map(async ([r, pending]) => {
|
|
141
151
|
// Skip reactive queries until post-flush
|
|
142
152
|
if (kind === "reactables" && r.kind === "query")
|
|
@@ -153,39 +163,41 @@ class ReactionsManager {
|
|
|
153
163
|
// Walk back from the source to any downstream entities
|
|
154
164
|
const entities = r.path.length === 0 ? todo : await (0, reactiveHints_1.followReverseHint)(r.name, todo, r.path);
|
|
155
165
|
const actionableEntities = entities.filter((entity) => !entity.isDeletedEntity && entity instanceof r.cstr);
|
|
156
|
-
this.logger
|
|
157
|
-
|
|
158
|
-
|
|
166
|
+
this.logger.logWalked(todo, r, actionableEntities, "recalc");
|
|
167
|
+
let seenEntities = seen.get(r.name);
|
|
168
|
+
if (!seenEntities)
|
|
169
|
+
seen.set(r.name, (seenEntities = new Set()));
|
|
170
|
+
const processed = r.runOnce ? this.processedActions.get(r.name) : undefined;
|
|
171
|
+
for (const entity of actionableEntities) {
|
|
159
172
|
// We could arrive at the same reactable from multiple paths (eg, 2 dependent fields changed), so we need to
|
|
160
173
|
// dedupe based on the entity and reactable to only run each action once for any given entity per loop
|
|
161
|
-
if (
|
|
162
|
-
|
|
174
|
+
if (seenEntities.has(entity))
|
|
175
|
+
continue;
|
|
163
176
|
// If this reactable has already run and shouldn't run again, then skip it
|
|
164
|
-
if (
|
|
165
|
-
|
|
166
|
-
|
|
167
|
-
|
|
177
|
+
if (processed && processed.has(entity))
|
|
178
|
+
continue;
|
|
179
|
+
seenEntities.add(entity);
|
|
180
|
+
actions.push({ r, entity });
|
|
181
|
+
}
|
|
168
182
|
}));
|
|
169
|
-
|
|
170
|
-
this.logger?.logLoadingStart(this.em, actions);
|
|
183
|
+
this.logger.logLoadingStart(this.em, actions);
|
|
171
184
|
// Use allSettled so that we can watch for derived values that want to use an entity's id
|
|
172
185
|
// i.e. they can fail, but we'll queue them from later.
|
|
173
|
-
const startTime = this.logger
|
|
186
|
+
const startTime = this.logger.now();
|
|
174
187
|
const results = await (0, trusted_1.runInTrustedContext)(() => Promise.allSettled(actions.map((a) => this.#doAction(a))));
|
|
175
|
-
const endTime = this.logger
|
|
176
|
-
this.logger
|
|
177
|
-
|
|
188
|
+
const endTime = this.logger.now();
|
|
189
|
+
this.logger.logLoadingEnd(this.em, endTime - startTime);
|
|
190
|
+
// This loop's actions are already unique by (name, entity), so a plain array dedupes fine
|
|
191
|
+
const actionsPendingAssignedIds = [];
|
|
178
192
|
const failures = [];
|
|
179
193
|
results.forEach((result, i) => {
|
|
180
194
|
if (result.status === "rejected") {
|
|
181
195
|
// Let `author.id` and `book.author.get.firstName` errors run again after flush/hooks fills them in
|
|
182
196
|
if (result.reason instanceof index_1.NoIdError) {
|
|
183
|
-
|
|
184
|
-
actionsPendingAssignedIds.set(action.key, action);
|
|
197
|
+
actionsPendingAssignedIds.push(actions[i]);
|
|
185
198
|
}
|
|
186
199
|
else if (result.reason instanceof TypeError) {
|
|
187
|
-
|
|
188
|
-
this.actionsPendingTypeErrors.set(action.key, action);
|
|
200
|
+
this.addPendingTypeError(actions[i]);
|
|
189
201
|
}
|
|
190
202
|
else {
|
|
191
203
|
failures.push(result.reason);
|
|
@@ -194,19 +206,17 @@ class ReactionsManager {
|
|
|
194
206
|
});
|
|
195
207
|
// If we have any actions that need to be re-run because they failed due to a missing id, then we assign ids and
|
|
196
208
|
// re-run them.
|
|
197
|
-
if (actionsPendingAssignedIds.
|
|
209
|
+
if (actionsPendingAssignedIds.length > 0) {
|
|
198
210
|
await this.em.assignNewIds();
|
|
199
|
-
|
|
200
|
-
this.logger
|
|
201
|
-
const
|
|
202
|
-
const
|
|
203
|
-
|
|
204
|
-
this.logger?.logLoadingEnd(this.em, endTime - startTime);
|
|
211
|
+
this.logger.logLoadingStart(this.em, actionsPendingAssignedIds);
|
|
212
|
+
const startTime = this.logger.now();
|
|
213
|
+
const results = await (0, trusted_1.runInTrustedContext)(() => Promise.allSettled(actionsPendingAssignedIds.map((a) => this.#doAction(a))));
|
|
214
|
+
const endTime = this.logger.now();
|
|
215
|
+
this.logger.logLoadingEnd(this.em, endTime - startTime);
|
|
205
216
|
results.forEach((result, i) => {
|
|
206
217
|
if (result.status === "rejected") {
|
|
207
218
|
if (result.reason instanceof TypeError) {
|
|
208
|
-
|
|
209
|
-
this.actionsPendingTypeErrors.set(action.key, action);
|
|
219
|
+
this.addPendingTypeError(actionsPendingAssignedIds[i]);
|
|
210
220
|
}
|
|
211
221
|
else {
|
|
212
222
|
failures.push(result.reason);
|
|
@@ -217,10 +227,14 @@ class ReactionsManager {
|
|
|
217
227
|
if (failures.length > 0)
|
|
218
228
|
throw failures[0];
|
|
219
229
|
// Record any successful actions that should only run once so we don't run them again
|
|
220
|
-
|
|
221
|
-
if (action.r.runOnce)
|
|
222
|
-
this.processedActions.
|
|
223
|
-
|
|
230
|
+
for (const action of actions) {
|
|
231
|
+
if (action.r.runOnce) {
|
|
232
|
+
let set = this.processedActions.get(action.r.name);
|
|
233
|
+
if (!set)
|
|
234
|
+
this.processedActions.set(action.r.name, (set = new Set()));
|
|
235
|
+
set.add(action.entity);
|
|
236
|
+
}
|
|
237
|
+
}
|
|
224
238
|
// This should generally not happen, only if two reactive fields depend on each other,
|
|
225
239
|
// which in theory should probably be caught/blow up in the `configureMetadata` step,
|
|
226
240
|
// but if it's not caught sooner, at least don't infinite loop.
|
|
@@ -230,12 +244,16 @@ class ReactionsManager {
|
|
|
230
244
|
}
|
|
231
245
|
}
|
|
232
246
|
async recalcPendingTypeErrors() {
|
|
233
|
-
const actions = [
|
|
247
|
+
const actions = [];
|
|
248
|
+
for (const byEntity of this.actionsPendingTypeErrors.values()) {
|
|
249
|
+
for (const action of byEntity.values())
|
|
250
|
+
actions.push(action);
|
|
251
|
+
}
|
|
234
252
|
this.actionsPendingTypeErrors.clear();
|
|
235
|
-
const startTime = this.logger
|
|
253
|
+
const startTime = this.logger.now();
|
|
236
254
|
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
|
|
255
|
+
const endTime = this.logger.now();
|
|
256
|
+
this.logger.logLoadingEnd(this.em, endTime - startTime);
|
|
239
257
|
const failures = [];
|
|
240
258
|
results.forEach((result) => {
|
|
241
259
|
if (result.status === "rejected") {
|
|
@@ -260,7 +278,7 @@ class ReactionsManager {
|
|
|
260
278
|
this.processedActions.clear();
|
|
261
279
|
}
|
|
262
280
|
setLogger(logger) {
|
|
263
|
-
this.logger = logger;
|
|
281
|
+
this.logger = logger ?? ReactionLogger_1.noopReactionLogger;
|
|
264
282
|
}
|
|
265
283
|
clearSuppressedTypeErrors() {
|
|
266
284
|
this.suppressedTypeErrors = [];
|
|
@@ -274,6 +292,13 @@ class ReactionsManager {
|
|
|
274
292
|
const { r, entity } = action;
|
|
275
293
|
return r.kind === "reaction" ? r.fn(entity, this.em.ctx) : entity[r.name].load();
|
|
276
294
|
}
|
|
295
|
+
/** Remembers a TypeError'd action to retry post-hooks, deduped by (target field name, entity). */
|
|
296
|
+
addPendingTypeError(action) {
|
|
297
|
+
let byEntity = this.actionsPendingTypeErrors.get(action.r.name);
|
|
298
|
+
if (!byEntity)
|
|
299
|
+
this.actionsPendingTypeErrors.set(action.r.name, (byEntity = new Map()));
|
|
300
|
+
byEntity.set(action.entity, action);
|
|
301
|
+
}
|
|
277
302
|
needsRecalc(kind) {
|
|
278
303
|
return kind === "reactables" ? this.#needsRecalc.populate || this.#needsRecalc.reaction : this.#needsRecalc.query;
|
|
279
304
|
}
|
|
@@ -282,6 +307,9 @@ class ReactionsManager {
|
|
|
282
307
|
if (!pending) {
|
|
283
308
|
pending = { todo: new Set(), done: new Set() };
|
|
284
309
|
this.pendingReactables.set(r, pending);
|
|
310
|
+
// The dirty field name is constant per reactable, so mark it once on the first
|
|
311
|
+
// queue instead of paying the `getMetadata` + map lookup on every queued entity.
|
|
312
|
+
this.getDirtyFields((0, EntityMetadata_1.getMetadata)(r.cstr)).add(r.name);
|
|
285
313
|
}
|
|
286
314
|
return pending;
|
|
287
315
|
}
|
|
@@ -304,12 +332,11 @@ class ReactionsManager {
|
|
|
304
332
|
const byField = (0, index_1.getEmInternalApi)(this.em).isMerging(entity)
|
|
305
333
|
? meta.reactablesIncludingReadOnlyByField
|
|
306
334
|
: meta.reactablesByField;
|
|
307
|
-
return
|
|
335
|
+
// Most fields have no reactables, so return a shared empty array instead of allocating one per set
|
|
336
|
+
return byField.get(fieldName) ?? noReactables;
|
|
308
337
|
}
|
|
309
338
|
}
|
|
310
339
|
exports.ReactionsManager = ReactionsManager;
|
|
311
|
-
/**
|
|
312
|
-
|
|
313
|
-
return `${entity.toTaggedString()}_${r.name}`;
|
|
314
|
-
}
|
|
340
|
+
/** A shared frozen array for fields with no downstream reactables. */
|
|
341
|
+
const noReactables = Object.freeze([]);
|
|
315
342
|
//# sourceMappingURL=ReactionsManager.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ReactionsManager.js","sourceRoot":"","sources":["../src/ReactionsManager.ts"],"names":[],"mappings":";;;AACA,qDAA+D;AAE/D,mCAAqE;AACrE,6DAAwE;AACxE,mDAAoD;AACpD,uCAAgD;AAGhD;;;;;;GAMG;AACH,MAAa,gBAAgB;IAC3B,iFAAiF;IACzE,iBAAiB,GAA6D,IAAI,GAAG,EAAE,CAAC;IACxF,wBAAwB,GAAgC,IAAI,GAAG,EAAE,CAAC;IAC1E;;;;;;;;OAQG;IACK,WAAW,GAA6B,IAAI,GAAG,EAAE,CAAC;IAClD,gBAAgB,GAAgB,IAAI,GAAG,EAAE,CAAC;IAClD,YAAY,GAAG,EAAE,QAAQ,EAAE,KAAK,EAAE,KAAK,EAAE,KAAK,EAAE,QAAQ,EAAE,KAAK,EAAE,CAAC;IAClE,sDAAsD;IACtD,MAAM,GAA+B,6BAAY,CAAC;IAC1C,EAAE,CAAgB;IAC1B,6GAA6G;IACrG,oBAAoB,GAAY,EAAE,CAAC;IAE3C,YAAY,EAAiB;QAC3B,IAAI,CAAC,EAAE,GAAG,EAAE,CAAC;IACf,CAAC;IAED;;;;;;OAMG;IACH,yBAAyB,CAAC,MAAc,EAAE,SAAiB;QACzD,qEAAqE;QACrE,KAAK,MAAM,CAAC,IAAI,IAAI,CAAC,oBAAoB,CAAC,MAAM,EAAE,SAAS,CAAC,EAAE,CAAC;YAC7D,8FAA8F;YAC9F,uCAAuC;YACvC,0EAA0E;YAC1E,mFAAmF;YACnF,yEAAyE;YACzE,mFAAmF;YACnF,2EAA2E;YAC3E,iEAAiE;YACjE,IAAI,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC;YACpC,IAAI,CAAC,cAAc,CAAC,IAAA,4BAAW,EAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC;YACrD,IAAI,CAAC,YAAY,CAAC,CAAC,CAAC,IAAI,CAAC,GAAG,IAAI,CAAC;YACjC,IAAI,CAAC,MAAM,EAAE,SAAS,CAAC,MAAM,EAAE,SAAS,EAAE,CAAC,CAAC,CAAC;QAC/C,CAAC;IACH,CAAC;IAED,wEAAwE;IACxE,2BAA2B,CAAC,MAAc,EAAE,SAAiB;QAC3D,qEAAqE;QACrE,KAAK,MAAM,CAAC,IAAI,IAAI,CAAC,oBAAoB,CAAC,MAAM,EAAE,SAAS,CAAC,EAAE,CAAC;YAC7D,MAAM,OAAO,GAAG,IAAI,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC;YACnC,IAAI,OAAO,CAAC,IAAI,CAAC,GAAG,CAAC,MAAM,CAAC,EAAE,CAAC;gBAC7B,oFAAoF;gBACpF,6FAA6F;gBAC7F,2BAA2B;gBAC3B,4DAA4D;gBAC5D,8EAA8E;gBAC9E,wCAAwC;gBACxC,0EAA0E;gBAC1E,OAAO,CAAC,IAAI,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC;gBACzB,IAAI,CAAC,YAAY,CAAC,CAAC,CAAC,IAAI,CAAC,GAAG,IAAI,CAAC;YACnC,CAAC;iBAAM,IAAI,CAAC,CAAC,MAAM,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;gBACjC,iFAAiF;gBACjF,gFAAgF;gBAChF,8EAA8E;gBAC9E,sCAAsC;gBACtC,OAAO,CAAC,IAAI,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC;YAC9B,CAAC;QACH,CAAC;IACH,CAAC;IAED,gGAAgG;IAChG,wBAAwB,CAAC,MAAc,EAAE,MAA6B;QACpE,KAAK,MAAM,CAAC,IAAI,IAAI,CAAC,aAAa,CAAC,MAAM,CAAC,EAAE,CAAC;YAC3C,IAAI,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC;YACpC,IAAI,CAAC,cAAc,CAAC,IAAA,4BAAW,EAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC;YACrD,IAAI,CAAC,YAAY,CAAC,CAAC,CAAC,IAAI,CAAC,GAAG,IAAI,CAAC;YACjC,IAAI,CAAC,MAAM,EAAE,YAAY,CAAC,MAAM,EAAE,MAAM,EAAE,CAAC,CAAC,CAAC;QAC/C,CAAC;IACH,CAAC;IAED;;;;;;;;;;;OAWG;IACH,oBAAoB,CAAC,MAAc,EAAE,SAAiB;QACpD,OAAO,IAAI,CAAC,cAAc,CAAC,IAAA,4BAAW,EAAC,MAAM,CAAC,CAAC,CAAC,GAAG,CAAC,SAAS,CAAC,CAAC;IACjE,CAAC;IAED,yBAAyB;QACvB,OAAO,IAAI,CAAC,YAAY,CAAC,KAAK,CAAC;IACjC,CAAC;IAED;;;;;;OAMG;IACH,KAAK,CAAC,uBAAuB,CAAC,IAAsC;QAClE,IAAI,IAAI,CAAC,WAAW,CAAC,IAAI,CAAC;YAAE,IAAI,CAAC,MAAM,EAAE,iBAAiB,CAAC,IAAI,CAAC,EAAE,EAAE,IAAI,CAAC,CAAC;QAE1E,IAAI,KAAK,GAAG,CAAC,CAAC;QACd,OAAO,IAAI,CAAC,WAAW,CAAC,IAAI,CAAC,EAAE,CAAC;YAC9B,+FAA+F;YAC/F,yFAAyF;YACzF,wFAAwF;YACxF,6BAA6B;YAC7B,IAAI,IAAI,KAAK,YAAY,EAAE,CAAC;gBAC1B,IAAI,CAAC,YAAY,CAAC,QAAQ,GAAG,KAAK,CAAC;gBACnC,IAAI,CAAC,YAAY,CAAC,QAAQ,GAAG,KAAK,CAAC;YACrC,CAAC;iBAAM,CAAC;gBACN,IAAI,CAAC,YAAY,CAAC,KAAK,GAAG,KAAK,CAAC;YAClC,CAAC;YAED,MAAM,UAAU,GAAgC,IAAI,GAAG,EAAE,CAAC;YAE1D,MAAM,OAAO,CAAC,GAAG,CACf,CAAC,GAAG,IAAI,CAAC,iBAAiB,CAAC,OAAO,EAAE,CAAC,CAAC,GAAG,CAAC,KAAK,EAAE,CAAC,CAAC,EAAE,OAAO,CAAC,EAAE,EAAE;gBAC/D,yCAAyC;gBACzC,IAAI,IAAI,KAAK,YAAY,IAAI,CAAC,CAAC,IAAI,KAAK,OAAO;oBAAE,OAAO,EAAE,CAAC;gBAC3D,IAAI,IAAI,KAAK,iBAAiB,IAAI,CAAC,CAAC,CAAC,IAAI,KAAK,UAAU,IAAI,CAAC,CAAC,IAAI,KAAK,UAAU,CAAC;oBAAE,OAAO,EAAE,CAAC;gBAC9F,4BAA4B;gBAC5B,MAAM,IAAI,GAAG,CAAC,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;gBAC/B,IAAI,IAAI,CAAC,MAAM,KAAK,CAAC;oBAAE,OAAO,EAAE,CAAC;gBACjC,OAAO,CAAC,IAAI,CAAC,KAAK,EAAE,CAAC;gBACrB,KAAK,MAAM,KAAK,IAAI,IAAI;oBAAE,OAAO,CAAC,IAAI,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC;gBAClD,uDAAuD;gBACvD,MAAM,QAAQ,GAAG,CAAC,CAAC,IAAI,CAAC,MAAM,KAAK,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,MAAM,IAAA,iCAAiB,EAAC,CAAC,CAAC,IAAI,EAAE,IAAI,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC;gBAC5F,MAAM,kBAAkB,GAAG,QAAQ,CAAC,MAAM,CAAC,CAAC,MAAM,EAAE,EAAE,CAAC,CAAC,MAAM,CAAC,eAAe,IAAI,MAAM,YAAY,CAAC,CAAC,IAAI,CAAC,CAAC;gBAC5G,IAAI,CAAC,MAAM,EAAE,SAAS,CAAC,IAAI,EAAE,CAAC,EAAE,kBAAkB,EAAE,QAAQ,CAAC,CAAC;gBAC9D,kBAAkB,CAAC,OAAO,CAAC,CAAC,MAAM,EAAE,EAAE;oBACpC,MAAM,GAAG,GAAG,aAAa,CAAC,MAAM,EAAE,CAAC,CAAC,CAAC;oBACrC,4GAA4G;oBAC5G,sGAAsG;oBACtG,IAAI,UAAU,CAAC,GAAG,CAAC,GAAG,CAAC;wBAAE,OAAO;oBAChC,0EAA0E;oBAC1E,IAAI,CAAC,CAAC,OAAO,IAAI,IAAI,CAAC,gBAAgB,CAAC,GAAG,CAAC,GAAG,CAAC;wBAAE,OAAO;oBACxD,UAAU,CAAC,GAAG,CAAC,GAAG,EAAE,EAAE,GAAG,EAAE,CAAC,EAAE,MAAM,EAAE,CAAC,CAAC;gBAC1C,CAAC,CAAC,CAAC;YACL,CAAC,CAAC,CACH,CAAC;YAEF,MAAM,OAAO,GAAG,CAAC,GAAG,UAAU,CAAC,MAAM,EAAE,CAAC,CAAC;YACzC,IAAI,CAAC,MAAM,EAAE,eAAe,CAAC,IAAI,CAAC,EAAE,EAAE,OAAO,CAAC,CAAC;YAC/C,yFAAyF;YACzF,uDAAuD;YACvD,MAAM,SAAS,GAAG,IAAI,CAAC,MAAM,EAAE,GAAG,EAAE,IAAI,CAAC,CAAC;YAC1C,MAAM,OAAO,GAAG,MAAM,IAAA,6BAAmB,EAAC,GAAG,EAAE,CAAC,OAAO,CAAC,UAAU,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;YAC3G,MAAM,OAAO,GAAG,IAAI,CAAC,MAAM,EAAE,GAAG,EAAE,IAAI,CAAC,CAAC;YACxC,IAAI,CAAC,MAAM,EAAE,aAAa,CAAC,IAAI,CAAC,EAAE,EAAE,OAAO,GAAG,SAAS,CAAC,CAAC;YAEzD,MAAM,yBAAyB,GAAgC,IAAI,GAAG,EAAE,CAAC;YACzE,MAAM,QAAQ,GAAU,EAAE,CAAC;YAC3B,OAAO,CAAC,OAAO,CAAC,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE;gBAC5B,IAAI,MAAM,CAAC,MAAM,KAAK,UAAU,EAAE,CAAC;oBACjC,mGAAmG;oBACnG,IAAI,MAAM,CAAC,MAAM,YAAY,iBAAS,EAAE,CAAC;wBACvC,MAAM,MAAM,GAAG,OAAO,CAAC,CAAC,CAAC,CAAC;wBAC1B,yBAAyB,CAAC,GAAG,CAAC,MAAM,CAAC,GAAG,EAAE,MAAM,CAAC,CAAC;oBACpD,CAAC;yBAAM,IAAI,MAAM,CAAC,MAAM,YAAY,SAAS,EAAE,CAAC;wBAC9C,MAAM,MAAM,GAAG,OAAO,CAAC,CAAC,CAAC,CAAC;wBAC1B,IAAI,CAAC,wBAAwB,CAAC,GAAG,CAAC,MAAM,CAAC,GAAG,EAAE,MAAM,CAAC,CAAC;oBACxD,CAAC;yBAAM,CAAC;wBACN,QAAQ,CAAC,IAAI,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC;oBAC/B,CAAC;gBACH,CAAC;YACH,CAAC,CAAC,CAAC;YAEH,gHAAgH;YAChH,eAAe;YACf,IAAI,yBAAyB,CAAC,IAAI,GAAG,CAAC,EAAE,CAAC;gBACvC,MAAM,IAAI,CAAC,EAAE,CAAC,YAAY,EAAE,CAAC;gBAC7B,MAAM,OAAO,GAAG,CAAC,GAAG,yBAAyB,CAAC,MAAM,EAAE,CAAC,CAAC;gBACxD,IAAI,CAAC,MAAM,EAAE,eAAe,CAAC,IAAI,CAAC,EAAE,EAAE,OAAO,CAAC,CAAC;gBAC/C,MAAM,SAAS,GAAG,IAAI,CAAC,MAAM,EAAE,GAAG,EAAE,IAAI,CAAC,CAAC;gBAC1C,MAAM,OAAO,GAAG,MAAM,IAAA,6BAAmB,EAAC,GAAG,EAAE,CAAC,OAAO,CAAC,UAAU,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;gBAC3G,MAAM,OAAO,GAAG,IAAI,CAAC,MAAM,EAAE,GAAG,EAAE,IAAI,CAAC,CAAC;gBACxC,IAAI,CAAC,MAAM,EAAE,aAAa,CAAC,IAAI,CAAC,EAAE,EAAE,OAAO,GAAG,SAAS,CAAC,CAAC;gBACzD,OAAO,CAAC,OAAO,CAAC,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE;oBAC5B,IAAI,MAAM,CAAC,MAAM,KAAK,UAAU,EAAE,CAAC;wBACjC,IAAI,MAAM,CAAC,MAAM,YAAY,SAAS,EAAE,CAAC;4BACvC,MAAM,MAAM,GAAG,OAAO,CAAC,CAAC,CAAC,CAAC;4BAC1B,IAAI,CAAC,wBAAwB,CAAC,GAAG,CAAC,MAAM,CAAC,GAAG,EAAE,MAAM,CAAC,CAAC;wBACxD,CAAC;6BAAM,CAAC;4BACN,QAAQ,CAAC,IAAI,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC;wBAC/B,CAAC;oBACH,CAAC;gBACH,CAAC,CAAC,CAAC;YACL,CAAC;YAED,IAAI,QAAQ,CAAC,MAAM,GAAG,CAAC;gBAAE,MAAM,QAAQ,CAAC,CAAC,CAAC,CAAC;YAC3C,qFAAqF;YACrF,OAAO,CAAC,OAAO,CAAC,CAAC,MAAM,EAAE,EAAE;gBACzB,IAAI,MAAM,CAAC,CAAC,CAAC,OAAO;oBAAE,IAAI,CAAC,gBAAgB,CAAC,GAAG,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC;YAC9D,CAAC,CAAC,CAAC;YACH,sFAAsF;YACtF,qFAAqF;YACrF,+DAA+D;YAC/D,IAAI,KAAK,EAAE,GAAG,EAAE,EAAE,CAAC;gBACjB,MAAM,IAAI,KAAK,CAAC,8DAA8D,CAAC,CAAC;YAClF,CAAC;QACH,CAAC;IACH,CAAC;IAED,KAAK,CAAC,uBAAuB;QAC3B,MAAM,OAAO,GAAG,CAAC,GAAG,IAAI,CAAC,wBAAwB,CAAC,MAAM,EAAE,CAAC,CAAC;QAC5D,IAAI,CAAC,wBAAwB,CAAC,KAAK,EAAE,CAAC;QAEtC,MAAM,SAAS,GAAG,IAAI,CAAC,MAAM,EAAE,GAAG,EAAE,IAAI,CAAC,CAAC;QAC1C,MAAM,OAAO,GAAG,MAAM,IAAA,6BAAmB,EAAC,GAAG,EAAE,CAC7C,OAAO,CAAC,UAAU,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,eAAe,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,CAAC,CACnG,CAAC;QACF,MAAM,OAAO,GAAG,IAAI,CAAC,MAAM,EAAE,GAAG,EAAE,IAAI,CAAC,CAAC;QACxC,IAAI,CAAC,MAAM,EAAE,aAAa,CAAC,IAAI,CAAC,EAAE,EAAE,OAAO,GAAG,SAAS,CAAC,CAAC;QAEzD,MAAM,QAAQ,GAAU,EAAE,CAAC;QAC3B,OAAO,CAAC,OAAO,CAAC,CAAC,MAAM,EAAE,EAAE;YACzB,IAAI,MAAM,CAAC,MAAM,KAAK,UAAU,EAAE,CAAC;gBACjC,IAAI,MAAM,CAAC,MAAM,YAAY,SAAS,EAAE,CAAC;oBACvC,8CAA8C;oBAC9C,IAAI,CAAC,oBAAoB,CAAC,IAAI,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC;gBAChD,CAAC;qBAAM,CAAC;oBACN,QAAQ,CAAC,IAAI,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC;gBAC/B,CAAC;YACH,CAAC;QACH,CAAC,CAAC,CAAC;QACH,IAAI,QAAQ,CAAC,MAAM,GAAG,CAAC;YAAE,MAAM,QAAQ,CAAC,CAAC,CAAC,CAAC;IAC7C,CAAC;IAED,IAAI,oBAAoB;QACtB,OAAO,IAAI,CAAC,wBAAwB,CAAC,IAAI,GAAG,CAAC,CAAC;IAChD,CAAC;IAED,+EAA+E;IAC/E,KAAK;QACH,IAAI,CAAC,iBAAiB,GAAG,IAAI,GAAG,EAAE,CAAC;QACnC,IAAI,CAAC,gBAAgB,CAAC,KAAK,EAAE,CAAC;IAChC,CAAC;IAED,SAAS,CAAC,MAAkC;QAC1C,IAAI,CAAC,MAAM,GAAG,MAAM,CAAC;IACvB,CAAC;IAED,yBAAyB;QACvB,IAAI,CAAC,oBAAoB,GAAG,EAAE,CAAC;IACjC,CAAC;IAED,8BAA8B;QAC5B,IAAI,IAAI,CAAC,oBAAoB,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;YACzC,MAAM,IAAI,CAAC,oBAAoB,CAAC,CAAC,CAAC,CAAC;QACrC,CAAC;IACH,CAAC;IAED,SAAS,CAAC,MAAsB;QAC9B,MAAM,EAAE,CAAC,EAAE,MAAM,EAAE,GAAG,MAAM,CAAC;QAC7B,OAAO,CAAC,CAAC,IAAI,KAAK,UAAU,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,MAAM,EAAE,IAAI,CAAC,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC,CAAE,MAAc,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,IAAI,EAAE,CAAC;IAC5F,CAAC;IAED,WAAW,CAAC,IAAsC;QAChD,OAAO,IAAI,KAAK,YAAY,CAAC,CAAC,CAAC,IAAI,CAAC,YAAY,CAAC,QAAQ,IAAI,IAAI,CAAC,YAAY,CAAC,QAAQ,CAAC,CAAC,CAAC,IAAI,CAAC,YAAY,CAAC,KAAK,CAAC;IACpH,CAAC;IAEO,UAAU,CAAC,CAAY;QAC7B,IAAI,OAAO,GAAG,IAAI,CAAC,iBAAiB,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC;QAC5C,IAAI,CAAC,OAAO,EAAE,CAAC;YACb,OAAO,GAAG,EAAE,IAAI,EAAE,IAAI,GAAG,EAAE,EAAE,IAAI,EAAE,IAAI,GAAG,EAAE,EAAE,CAAC;YAC/C,IAAI,CAAC,iBAAiB,CAAC,GAAG,CAAC,CAAC,EAAE,OAAO,CAAC,CAAC;QACzC,CAAC;QACD,OAAO,OAAO,CAAC;IACjB,CAAC;IAEO,cAAc,CAAC,IAAoB;QACzC,IAAI,KAAK,GAAG,IAAI,CAAC,WAAW,CAAC,GAAG,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;QAC/C,IAAI,CAAC,KAAK,EAAE,CAAC;YACX,KAAK,GAAG,IAAI,GAAG,EAAE,CAAC;YAClB,IAAI,CAAC,WAAW,CAAC,GAAG,CAAC,IAAI,CAAC,OAAO,EAAE,KAAK,CAAC,CAAC;QAC5C,CAAC;QACD,OAAO,KAAK,CAAC;IACf,CAAC;IAEO,aAAa,CAAC,MAAc;QAClC,mGAAmG;QACnG,+DAA+D;QAC/D,MAAM,IAAI,GAAG,IAAA,4BAAW,EAAC,MAAM,CAAC,CAAC;QACjC,OAAO,IAAA,wBAAgB,EAAC,IAAI,CAAC,EAAE,CAAC,CAAC,SAAS,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,2BAA4B,CAAC,CAAC,CAAC,IAAI,CAAC,UAAW,CAAC;IAC5G,CAAC;IAEO,oBAAoB,CAAC,MAAc,EAAE,SAAiB;QAC5D,MAAM,IAAI,GAAG,IAAA,4BAAW,EAAC,MAAM,CAAC,CAAC;QACjC,MAAM,OAAO,GAAG,IAAA,wBAAgB,EAAC,IAAI,CAAC,EAAE,CAAC,CAAC,SAAS,CAAC,MAAM,CAAC;YACzD,CAAC,CAAC,IAAI,CAAC,kCAAmC;YAC1C,CAAC,CAAC,IAAI,CAAC,iBAAkB,CAAC;QAC5B,OAAO,OAAO,CAAC,GAAG,CAAC,SAAS,CAAC,IAAI,EAAE,CAAC;IACtC,CAAC;CACF;AArTD,4CAqTC;AAED,0EAA0E;AAC1E,SAAS,aAAa,CAAC,MAAc,EAAE,CAAY;IACjD,OAAO,GAAG,MAAM,CAAC,cAAc,EAAE,IAAI,CAAC,CAAC,IAAI,EAAE,CAAC;AAChD,CAAC"}
|
|
1
|
+
{"version":3,"file":"ReactionsManager.js","sourceRoot":"","sources":["../src/ReactionsManager.ts"],"names":[],"mappings":";;;AAEA,qDAA+D;AAC/D,mCAAqE;AACrE,6DAA4F;AAC5F,mDAAoD;AACpD,uCAAgD;AAGhD;;;;;;GAMG;AACH;IACE,iFAAiF;IACzE,iBAAiB,GAA6D,IAAI,GAAG,EAAE,CAAC;IAChG,oGAAoG;IAC5F,wBAAwB,GAA6C,IAAI,GAAG,EAAE,CAAC;IACvF;;;;;;;;OAQG;IACK,WAAW,GAA6B,IAAI,GAAG,EAAE,CAAC;IAC1D;;;;;;;OAOG;IACK,gBAAgB,GAA6B,IAAI,GAAG,EAAE,CAAC;IAC/D,YAAY,GAAG,EAAE,QAAQ,EAAE,KAAK,EAAE,KAAK,EAAE,KAAK,EAAE,QAAQ,EAAE,KAAK,EAAE,CAAC;IAClE,sDAAsD;IACtD,MAAM,GAAmB,6BAAY,IAAI,mCAAkB,CAAC;IACpD,EAAE,CAAgB;IAC1B,6GAA6G;IACrG,oBAAoB,GAAY,EAAE,CAAC;IAE3C,YAAY,EAAiB;QAC3B,IAAI,CAAC,EAAE,GAAG,EAAE,CAAC;IACf,CAAC;IAED;;;;;;OAMG;IACH,yBAAyB,CAAC,MAAc,EAAE,SAAiB;QACzD,qEAAqE;QACrE,KAAK,MAAM,CAAC,IAAI,IAAI,CAAC,oBAAoB,CAAC,MAAM,EAAE,SAAS,CAAC,EAAE,CAAC;YAC7D,8FAA8F;YAC9F,uCAAuC;YACvC,0EAA0E;YAC1E,mFAAmF;YACnF,yEAAyE;YACzE,mFAAmF;YACnF,2EAA2E;YAC3E,iEAAiE;YACjE,IAAI,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC;YACpC,IAAI,CAAC,YAAY,CAAC,CAAC,CAAC,IAAI,CAAC,GAAG,IAAI,CAAC;YACjC,IAAI,CAAC,MAAM,CAAC,SAAS,CAAC,MAAM,EAAE,SAAS,EAAE,CAAC,CAAC,CAAC;QAC9C,CAAC;IACH,CAAC;IAED,wEAAwE;IACxE,2BAA2B,CAAC,MAAc,EAAE,SAAiB;QAC3D,qEAAqE;QACrE,KAAK,MAAM,CAAC,IAAI,IAAI,CAAC,oBAAoB,CAAC,MAAM,EAAE,SAAS,CAAC,EAAE,CAAC;YAC7D,MAAM,OAAO,GAAG,IAAI,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC;YACnC,IAAI,OAAO,CAAC,IAAI,CAAC,GAAG,CAAC,MAAM,CAAC,EAAE,CAAC;gBAC7B,oFAAoF;gBACpF,6FAA6F;gBAC7F,2BAA2B;gBAC3B,4DAA4D;gBAC5D,8EAA8E;gBAC9E,wCAAwC;gBACxC,0EAA0E;gBAC1E,OAAO,CAAC,IAAI,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC;gBACzB,IAAI,CAAC,YAAY,CAAC,CAAC,CAAC,IAAI,CAAC,GAAG,IAAI,CAAC;YACnC,CAAC;iBAAM,IAAI,CAAC,CAAC,MAAM,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;gBACjC,iFAAiF;gBACjF,gFAAgF;gBAChF,8EAA8E;gBAC9E,sCAAsC;gBACtC,OAAO,CAAC,IAAI,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC;YAC9B,CAAC;QACH,CAAC;IACH,CAAC;IAED,gGAAgG;IAChG,wBAAwB,CAAC,MAAc,EAAE,MAA6B;QACpE,KAAK,MAAM,CAAC,IAAI,IAAI,CAAC,aAAa,CAAC,MAAM,CAAC,EAAE,CAAC;YAC3C,IAAI,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC;YACpC,IAAI,CAAC,YAAY,CAAC,CAAC,CAAC,IAAI,CAAC,GAAG,IAAI,CAAC;YACjC,IAAI,CAAC,MAAM,CAAC,YAAY,CAAC,MAAM,EAAE,MAAM,EAAE,CAAC,CAAC,CAAC;QAC9C,CAAC;IACH,CAAC;IAED;;;;;;;;;;;OAWG;IACH,oBAAoB,CAAC,MAAc,EAAE,SAAiB;QACpD,OAAO,IAAI,CAAC,cAAc,CAAC,IAAA,4BAAW,EAAC,MAAM,CAAC,CAAC,CAAC,GAAG,CAAC,SAAS,CAAC,CAAC;IACjE,CAAC;IAED,yBAAyB;QACvB,OAAO,IAAI,CAAC,YAAY,CAAC,KAAK,CAAC;IACjC,CAAC;IAED;;;;;;OAMG;IACH,KAAK,CAAC,uBAAuB,CAAC,IAAsC;QAClE,IAAI,IAAI,CAAC,WAAW,CAAC,IAAI,CAAC;YAAE,IAAI,CAAC,MAAM,CAAC,iBAAiB,CAAC,IAAI,CAAC,EAAE,EAAE,IAAI,CAAC,CAAC;QAEzE,IAAI,KAAK,GAAG,CAAC,CAAC;QACd,OAAO,IAAI,CAAC,WAAW,CAAC,IAAI,CAAC,EAAE,CAAC;YAC9B,+FAA+F;YAC/F,yFAAyF;YACzF,wFAAwF;YACxF,6BAA6B;YAC7B,IAAI,IAAI,KAAK,YAAY,EAAE,CAAC;gBAC1B,IAAI,CAAC,YAAY,CAAC,QAAQ,GAAG,KAAK,CAAC;gBACnC,IAAI,CAAC,YAAY,CAAC,QAAQ,GAAG,KAAK,CAAC;YACrC,CAAC;iBAAM,CAAC;gBACN,IAAI,CAAC,YAAY,CAAC,KAAK,GAAG,KAAK,CAAC;YAClC,CAAC;YAED,yFAAyF;YACzF,sEAAsE;YACtE,MAAM,IAAI,GAA6B,IAAI,GAAG,EAAE,CAAC;YACjD,MAAM,OAAO,GAAqB,EAAE,CAAC;YAErC,MAAM,OAAO,CAAC,GAAG,CACf,CAAC,GAAG,IAAI,CAAC,iBAAiB,CAAC,OAAO,EAAE,CAAC,CAAC,GAAG,CAAC,KAAK,EAAE,CAAC,CAAC,EAAE,OAAO,CAAC,EAAE,EAAE;gBAC/D,yCAAyC;gBACzC,IAAI,IAAI,KAAK,YAAY,IAAI,CAAC,CAAC,IAAI,KAAK,OAAO;oBAAE,OAAO,EAAE,CAAC;gBAC3D,IAAI,IAAI,KAAK,iBAAiB,IAAI,CAAC,CAAC,CAAC,IAAI,KAAK,UAAU,IAAI,CAAC,CAAC,IAAI,KAAK,UAAU,CAAC;oBAAE,OAAO,EAAE,CAAC;gBAC9F,4BAA4B;gBAC5B,MAAM,IAAI,GAAG,CAAC,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;gBAC/B,IAAI,IAAI,CAAC,MAAM,KAAK,CAAC;oBAAE,OAAO,EAAE,CAAC;gBACjC,OAAO,CAAC,IAAI,CAAC,KAAK,EAAE,CAAC;gBACrB,KAAK,MAAM,KAAK,IAAI,IAAI;oBAAE,OAAO,CAAC,IAAI,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC;gBAClD,uDAAuD;gBACvD,MAAM,QAAQ,GAAG,CAAC,CAAC,IAAI,CAAC,MAAM,KAAK,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,MAAM,IAAA,iCAAiB,EAAC,CAAC,CAAC,IAAI,EAAE,IAAI,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC;gBAC5F,MAAM,kBAAkB,GAAG,QAAQ,CAAC,MAAM,CAAC,CAAC,MAAM,EAAE,EAAE,CAAC,CAAC,MAAM,CAAC,eAAe,IAAI,MAAM,YAAY,CAAC,CAAC,IAAI,CAAC,CAAC;gBAC5G,IAAI,CAAC,MAAM,CAAC,SAAS,CAAC,IAAI,EAAE,CAAC,EAAE,kBAAkB,EAAE,QAAQ,CAAC,CAAC;gBAC7D,IAAI,YAAY,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC;gBACpC,IAAI,CAAC,YAAY;oBAAE,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC,YAAY,GAAG,IAAI,GAAG,EAAE,CAAC,CAAC,CAAC;gBAChE,MAAM,SAAS,GAAG,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,IAAI,CAAC,gBAAgB,CAAC,GAAG,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC;gBAC5E,KAAK,MAAM,MAAM,IAAI,kBAAkB,EAAE,CAAC;oBACxC,4GAA4G;oBAC5G,sGAAsG;oBACtG,IAAI,YAAY,CAAC,GAAG,CAAC,MAAM,CAAC;wBAAE,SAAS;oBACvC,0EAA0E;oBAC1E,IAAI,SAAS,IAAI,SAAS,CAAC,GAAG,CAAC,MAAM,CAAC;wBAAE,SAAS;oBACjD,YAAY,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC;oBACzB,OAAO,CAAC,IAAI,CAAC,EAAE,CAAC,EAAE,MAAM,EAAE,CAAC,CAAC;gBAC9B,CAAC;YACH,CAAC,CAAC,CACH,CAAC;YACF,IAAI,CAAC,MAAM,CAAC,eAAe,CAAC,IAAI,CAAC,EAAE,EAAE,OAAO,CAAC,CAAC;YAC9C,yFAAyF;YACzF,uDAAuD;YACvD,MAAM,SAAS,GAAG,IAAI,CAAC,MAAM,CAAC,GAAG,EAAE,CAAC;YACpC,MAAM,OAAO,GAAG,MAAM,IAAA,6BAAmB,EAAC,GAAG,EAAE,CAAC,OAAO,CAAC,UAAU,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;YAC3G,MAAM,OAAO,GAAG,IAAI,CAAC,MAAM,CAAC,GAAG,EAAE,CAAC;YAClC,IAAI,CAAC,MAAM,CAAC,aAAa,CAAC,IAAI,CAAC,EAAE,EAAE,OAAO,GAAG,SAAS,CAAC,CAAC;YAExD,0FAA0F;YAC1F,MAAM,yBAAyB,GAAqB,EAAE,CAAC;YACvD,MAAM,QAAQ,GAAU,EAAE,CAAC;YAC3B,OAAO,CAAC,OAAO,CAAC,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE;gBAC5B,IAAI,MAAM,CAAC,MAAM,KAAK,UAAU,EAAE,CAAC;oBACjC,mGAAmG;oBACnG,IAAI,MAAM,CAAC,MAAM,YAAY,iBAAS,EAAE,CAAC;wBACvC,yBAAyB,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,CAAC;oBAC7C,CAAC;yBAAM,IAAI,MAAM,CAAC,MAAM,YAAY,SAAS,EAAE,CAAC;wBAC9C,IAAI,CAAC,mBAAmB,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,CAAC;oBACvC,CAAC;yBAAM,CAAC;wBACN,QAAQ,CAAC,IAAI,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC;oBAC/B,CAAC;gBACH,CAAC;YACH,CAAC,CAAC,CAAC;YAEH,gHAAgH;YAChH,eAAe;YACf,IAAI,yBAAyB,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;gBACzC,MAAM,IAAI,CAAC,EAAE,CAAC,YAAY,EAAE,CAAC;gBAC7B,IAAI,CAAC,MAAM,CAAC,eAAe,CAAC,IAAI,CAAC,EAAE,EAAE,yBAAyB,CAAC,CAAC;gBAChE,MAAM,SAAS,GAAG,IAAI,CAAC,MAAM,CAAC,GAAG,EAAE,CAAC;gBACpC,MAAM,OAAO,GAAG,MAAM,IAAA,6BAAmB,EAAC,GAAG,EAAE,CAC7C,OAAO,CAAC,UAAU,CAAC,yBAAyB,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,CAAC,CAC5E,CAAC;gBACF,MAAM,OAAO,GAAG,IAAI,CAAC,MAAM,CAAC,GAAG,EAAE,CAAC;gBAClC,IAAI,CAAC,MAAM,CAAC,aAAa,CAAC,IAAI,CAAC,EAAE,EAAE,OAAO,GAAG,SAAS,CAAC,CAAC;gBACxD,OAAO,CAAC,OAAO,CAAC,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE;oBAC5B,IAAI,MAAM,CAAC,MAAM,KAAK,UAAU,EAAE,CAAC;wBACjC,IAAI,MAAM,CAAC,MAAM,YAAY,SAAS,EAAE,CAAC;4BACvC,IAAI,CAAC,mBAAmB,CAAC,yBAAyB,CAAC,CAAC,CAAC,CAAC,CAAC;wBACzD,CAAC;6BAAM,CAAC;4BACN,QAAQ,CAAC,IAAI,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC;wBAC/B,CAAC;oBACH,CAAC;gBACH,CAAC,CAAC,CAAC;YACL,CAAC;YAED,IAAI,QAAQ,CAAC,MAAM,GAAG,CAAC;gBAAE,MAAM,QAAQ,CAAC,CAAC,CAAC,CAAC;YAC3C,qFAAqF;YACrF,KAAK,MAAM,MAAM,IAAI,OAAO,EAAE,CAAC;gBAC7B,IAAI,MAAM,CAAC,CAAC,CAAC,OAAO,EAAE,CAAC;oBACrB,IAAI,GAAG,GAAG,IAAI,CAAC,gBAAgB,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC;oBACnD,IAAI,CAAC,GAAG;wBAAE,IAAI,CAAC,gBAAgB,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC,GAAG,GAAG,IAAI,GAAG,EAAE,CAAC,CAAC,CAAC;oBACtE,GAAG,CAAC,GAAG,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC;gBACzB,CAAC;YACH,CAAC;YACD,sFAAsF;YACtF,qFAAqF;YACrF,+DAA+D;YAC/D,IAAI,KAAK,EAAE,GAAG,EAAE,EAAE,CAAC;gBACjB,MAAM,IAAI,KAAK,CAAC,8DAA8D,CAAC,CAAC;YAClF,CAAC;QACH,CAAC;IACH,CAAC;IAED,KAAK,CAAC,uBAAuB;QAC3B,MAAM,OAAO,GAAqB,EAAE,CAAC;QACrC,KAAK,MAAM,QAAQ,IAAI,IAAI,CAAC,wBAAwB,CAAC,MAAM,EAAE,EAAE,CAAC;YAC9D,KAAK,MAAM,MAAM,IAAI,QAAQ,CAAC,MAAM,EAAE;gBAAE,OAAO,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;QAC/D,CAAC;QACD,IAAI,CAAC,wBAAwB,CAAC,KAAK,EAAE,CAAC;QAEtC,MAAM,SAAS,GAAG,IAAI,CAAC,MAAM,CAAC,GAAG,EAAE,CAAC;QACpC,MAAM,OAAO,GAAG,MAAM,IAAA,6BAAmB,EAAC,GAAG,EAAE,CAC7C,OAAO,CAAC,UAAU,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,eAAe,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,CAAC,CACnG,CAAC;QACF,MAAM,OAAO,GAAG,IAAI,CAAC,MAAM,CAAC,GAAG,EAAE,CAAC;QAClC,IAAI,CAAC,MAAM,CAAC,aAAa,CAAC,IAAI,CAAC,EAAE,EAAE,OAAO,GAAG,SAAS,CAAC,CAAC;QAExD,MAAM,QAAQ,GAAU,EAAE,CAAC;QAC3B,OAAO,CAAC,OAAO,CAAC,CAAC,MAAM,EAAE,EAAE;YACzB,IAAI,MAAM,CAAC,MAAM,KAAK,UAAU,EAAE,CAAC;gBACjC,IAAI,MAAM,CAAC,MAAM,YAAY,SAAS,EAAE,CAAC;oBACvC,8CAA8C;oBAC9C,IAAI,CAAC,oBAAoB,CAAC,IAAI,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC;gBAChD,CAAC;qBAAM,CAAC;oBACN,QAAQ,CAAC,IAAI,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC;gBAC/B,CAAC;YACH,CAAC;QACH,CAAC,CAAC,CAAC;QACH,IAAI,QAAQ,CAAC,MAAM,GAAG,CAAC;YAAE,MAAM,QAAQ,CAAC,CAAC,CAAC,CAAC;IAC7C,CAAC;IAED,IAAI,oBAAoB;QACtB,OAAO,IAAI,CAAC,wBAAwB,CAAC,IAAI,GAAG,CAAC,CAAC;IAChD,CAAC;IAED,+EAA+E;IAC/E,KAAK;QACH,IAAI,CAAC,iBAAiB,GAAG,IAAI,GAAG,EAAE,CAAC;QACnC,IAAI,CAAC,gBAAgB,CAAC,KAAK,EAAE,CAAC;IAChC,CAAC;IAED,SAAS,CAAC,MAAkC;QAC1C,IAAI,CAAC,MAAM,GAAG,MAAM,IAAI,mCAAkB,CAAC;IAC7C,CAAC;IAED,yBAAyB;QACvB,IAAI,CAAC,oBAAoB,GAAG,EAAE,CAAC;IACjC,CAAC;IAED,8BAA8B;QAC5B,IAAI,IAAI,CAAC,oBAAoB,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;YACzC,MAAM,IAAI,CAAC,oBAAoB,CAAC,CAAC,CAAC,CAAC;QACrC,CAAC;IACH,CAAC;IAED,SAAS,CAAC,MAAsB;QAC9B,MAAM,EAAE,CAAC,EAAE,MAAM,EAAE,GAAG,MAAM,CAAC;QAC7B,OAAO,CAAC,CAAC,IAAI,KAAK,UAAU,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,MAAM,EAAE,IAAI,CAAC,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC,CAAE,MAAc,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,IAAI,EAAE,CAAC;IAC5F,CAAC;IAED,kGAAkG;IAC1F,mBAAmB,CAAC,MAAsB;QAChD,IAAI,QAAQ,GAAG,IAAI,CAAC,wBAAwB,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC;QAChE,IAAI,CAAC,QAAQ;YAAE,IAAI,CAAC,wBAAwB,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC,QAAQ,GAAG,IAAI,GAAG,EAAE,CAAC,CAAC,CAAC;QACxF,QAAQ,CAAC,GAAG,CAAC,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IACtC,CAAC;IAED,WAAW,CAAC,IAAsC;QAChD,OAAO,IAAI,KAAK,YAAY,CAAC,CAAC,CAAC,IAAI,CAAC,YAAY,CAAC,QAAQ,IAAI,IAAI,CAAC,YAAY,CAAC,QAAQ,CAAC,CAAC,CAAC,IAAI,CAAC,YAAY,CAAC,KAAK,CAAC;IACpH,CAAC;IAEO,UAAU,CAAC,CAAY;QAC7B,IAAI,OAAO,GAAG,IAAI,CAAC,iBAAiB,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC;QAC5C,IAAI,CAAC,OAAO,EAAE,CAAC;YACb,OAAO,GAAG,EAAE,IAAI,EAAE,IAAI,GAAG,EAAE,EAAE,IAAI,EAAE,IAAI,GAAG,EAAE,EAAE,CAAC;YAC/C,IAAI,CAAC,iBAAiB,CAAC,GAAG,CAAC,CAAC,EAAE,OAAO,CAAC,CAAC;YACvC,+EAA+E;YAC/E,iFAAiF;YACjF,IAAI,CAAC,cAAc,CAAC,IAAA,4BAAW,EAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC;QACvD,CAAC;QACD,OAAO,OAAO,CAAC;IACjB,CAAC;IAEO,cAAc,CAAC,IAAoB;QACzC,IAAI,KAAK,GAAG,IAAI,CAAC,WAAW,CAAC,GAAG,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;QAC/C,IAAI,CAAC,KAAK,EAAE,CAAC;YACX,KAAK,GAAG,IAAI,GAAG,EAAE,CAAC;YAClB,IAAI,CAAC,WAAW,CAAC,GAAG,CAAC,IAAI,CAAC,OAAO,EAAE,KAAK,CAAC,CAAC;QAC5C,CAAC;QACD,OAAO,KAAK,CAAC;IACf,CAAC;IAEO,aAAa,CAAC,MAAc;QAClC,mGAAmG;QACnG,+DAA+D;QAC/D,MAAM,IAAI,GAAG,IAAA,4BAAW,EAAC,MAAM,CAAC,CAAC;QACjC,OAAO,IAAA,wBAAgB,EAAC,IAAI,CAAC,EAAE,CAAC,CAAC,SAAS,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,2BAA4B,CAAC,CAAC,CAAC,IAAI,CAAC,UAAW,CAAC;IAC5G,CAAC;IAEO,oBAAoB,CAAC,MAAc,EAAE,SAAiB;QAC5D,MAAM,IAAI,GAAG,IAAA,4BAAW,EAAC,MAAM,CAAC,CAAC;QACjC,MAAM,OAAO,GAAG,IAAA,wBAAgB,EAAC,IAAI,CAAC,EAAE,CAAC,CAAC,SAAS,CAAC,MAAM,CAAC;YACzD,CAAC,CAAC,IAAI,CAAC,kCAAmC;YAC1C,CAAC,CAAC,IAAI,CAAC,iBAAkB,CAAC;QAC5B,mGAAmG;QACnG,OAAO,OAAO,CAAC,GAAG,CAAC,SAAS,CAAC,IAAI,YAAY,CAAC;IAChD,CAAC;CACF;;AAED,sEAAsE;AACtE,MAAM,YAAY,GAAyB,MAAM,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC"}
|
|
@@ -0,0 +1,49 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* A read-only view of one query's result rows; each entity references its as-loaded row as a
|
|
3
|
+
* `(rowData, rowIndex)` pair on its `InstanceData`.
|
|
4
|
+
*
|
|
5
|
+
* Each query result gets its own individual `RowData` — results are never combined or appended
|
|
6
|
+
* across queries. An entity keeps pointing at the `RowData` of whichever query first loaded it
|
|
7
|
+
* (or, for `em.refresh`, the query that most recently refreshed it), and the `RowData` is never
|
|
8
|
+
* written to: mutations go into the entity's `data`/`originalData` bags as usual, so a `RowData`
|
|
9
|
+
* stays a snapshot of "what the database returned for this query".
|
|
10
|
+
*
|
|
11
|
+
* This is the seam that lets rows be backed by different representations:
|
|
12
|
+
*
|
|
13
|
+
* - `PojoRowData` wraps the classic node-pg POJO rows, i.e. for the public
|
|
14
|
+
* `em.hydrate(type, rows)` API and drivers that return materialized rows, and
|
|
15
|
+
* - lazy/columnar results (`WireRowData` in joist-orm, see `JS-ROW-STORE-DESIGN.md`) keep raw
|
|
16
|
+
* wire bytes in off-heap arenas and only decode a `row × column` cell when a field is read.
|
|
17
|
+
*
|
|
18
|
+
* Values returned from `get` are "driver-level" values, i.e. whatever the pg type
|
|
19
|
+
* parsers produce (numbers for `int4`, parsed objects for `jsonb`, strings for
|
|
20
|
+
* deferred temporals); the field serdes then convert them to domain values.
|
|
21
|
+
*/
|
|
22
|
+
export interface RowData {
|
|
23
|
+
/** The number of rows in this query result. */
|
|
24
|
+
readonly rowCount: number;
|
|
25
|
+
/** Returns the driver-level column value for a row, i.e. `rowData.get(0, "first_name")`. */
|
|
26
|
+
get(rowIndex: number, columnName: string): any;
|
|
27
|
+
/** Materializes one row as a classic POJO, i.e. for debugging and differential tests. */
|
|
28
|
+
toRow(rowIndex: number): any;
|
|
29
|
+
/** Materializes classic POJO rows, i.e. for `afterFind` observation or debugging. */
|
|
30
|
+
toRows(): any[];
|
|
31
|
+
/** Optionally marks `rowIndex` as retained by a hydrated entity; see `finalize`. */
|
|
32
|
+
retain?(rowIndex: number): void;
|
|
33
|
+
/**
|
|
34
|
+
* Optionally trims/compacts the result after hydration + sidecar reads are complete, i.e. so
|
|
35
|
+
* lazy results only retain bytes for rows whose entities were actually kept.
|
|
36
|
+
*/
|
|
37
|
+
finalize?(): void;
|
|
38
|
+
}
|
|
39
|
+
/** Wraps classic materialized POJO rows, i.e. from node-pg results or hand-built test rows. */
|
|
40
|
+
export declare class PojoRowData implements RowData {
|
|
41
|
+
private rows;
|
|
42
|
+
constructor(rows: readonly any[]);
|
|
43
|
+
get rowCount(): number;
|
|
44
|
+
get(rowIndex: number, columnName: string): any;
|
|
45
|
+
toRow(rowIndex: number): any;
|
|
46
|
+
toRows(): any[];
|
|
47
|
+
}
|
|
48
|
+
/** A shared `RowData` for new entities, which have no database row yet (all columns undefined). */
|
|
49
|
+
export declare const emptyRowData: RowData;
|
package/build/RowData.js
ADDED
|
@@ -0,0 +1,37 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.emptyRowData = exports.PojoRowData = void 0;
|
|
4
|
+
/** Wraps classic materialized POJO rows, i.e. from node-pg results or hand-built test rows. */
|
|
5
|
+
class PojoRowData {
|
|
6
|
+
rows;
|
|
7
|
+
constructor(rows) {
|
|
8
|
+
this.rows = rows;
|
|
9
|
+
}
|
|
10
|
+
get rowCount() {
|
|
11
|
+
return this.rows.length;
|
|
12
|
+
}
|
|
13
|
+
get(rowIndex, columnName) {
|
|
14
|
+
return this.rows[rowIndex][columnName];
|
|
15
|
+
}
|
|
16
|
+
toRow(rowIndex) {
|
|
17
|
+
return this.rows[rowIndex];
|
|
18
|
+
}
|
|
19
|
+
toRows() {
|
|
20
|
+
return this.rows;
|
|
21
|
+
}
|
|
22
|
+
}
|
|
23
|
+
exports.PojoRowData = PojoRowData;
|
|
24
|
+
/** A shared `RowData` for new entities, which have no database row yet (all columns undefined). */
|
|
25
|
+
exports.emptyRowData = {
|
|
26
|
+
rowCount: 0,
|
|
27
|
+
get() {
|
|
28
|
+
return undefined;
|
|
29
|
+
},
|
|
30
|
+
toRow() {
|
|
31
|
+
return {};
|
|
32
|
+
},
|
|
33
|
+
toRows() {
|
|
34
|
+
return [];
|
|
35
|
+
},
|
|
36
|
+
};
|
|
37
|
+
//# sourceMappingURL=RowData.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"RowData.js","sourceRoot":"","sources":["../src/RowData.ts"],"names":[],"mappings":";;;AAuCA,+FAA+F;AAC/F;IACsB,IAAI;IAAxB,YAAoB,IAAoB;oBAApB,IAAI;IAAmB,CAAC;IAE5C,IAAI,QAAQ;QACV,OAAO,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC;IAC1B,CAAC;IAED,GAAG,CAAC,QAAgB,EAAE,UAAkB;QACtC,OAAO,IAAI,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC,UAAU,CAAC,CAAC;IACzC,CAAC;IAED,KAAK,CAAC,QAAgB;QACpB,OAAO,IAAI,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;IAC7B,CAAC;IAED,MAAM;QACJ,OAAO,IAAI,CAAC,IAAa,CAAC;IAC5B,CAAC;CACF;;AAED,mGAAmG;AACtF,QAAA,YAAY,GAAY;IACnC,QAAQ,EAAE,CAAC;IACX,GAAG;QACD,OAAO,SAAS,CAAC;IACnB,CAAC;IACD,KAAK;QACH,OAAO,EAAE,CAAC;IACZ,CAAC;IACD,MAAM;QACJ,OAAO,EAAE,CAAC;IACZ,CAAC;CACF,CAAC"}
|
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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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"BatchLoader.js","sourceRoot":"","sources":["../../src/batchloaders/BatchLoader.ts"],"names":[],"mappings":";;;AAAA;;;;;;GAMG;AACH
|
|
1
|
+
{"version":3,"file":"BatchLoader.js","sourceRoot":"","sources":["../../src/batchloaders/BatchLoader.ts"],"names":[],"mappings":";;;AAAA;;;;;;GAMG;AACH;IACE,QAAQ,CAA+B;IACvC,QAAQ,CAAkB;IAC1B,aAAa,CAA4B;IAEzC,YAAY,OAAqC;QAC/C,IAAI,CAAC,QAAQ,GAAG,OAAO,CAAC;IAC1B,CAAC;IAED,IAAI,CAAC,GAAM;QACT,IAAI,CAAC,YAAY,EAAE,CAAC;QACpB,IAAI,CAAC,QAAS,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;QACzB,OAAO,IAAI,CAAC,aAAc,CAAC;IAC7B,CAAC;IAED,OAAO,CAAC,IAAS;QACf,IAAI,CAAC,YAAY,EAAE,CAAC;QACpB,+FAA+F;QAC/F,gGAAgG;QAChG,2EAA2E;QAC3E,MAAM,OAAO,GAAG,IAAI,CAAC,QAAS,CAAC;QAC/B,MAAM,KAAK,GAAG,OAAO,CAAC,MAAM,CAAC;QAC7B,OAAO,CAAC,MAAM,IAAI,IAAI,CAAC,MAAM,CAAC;QAC9B,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,IAAI,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE,CAAC;YACrC,OAAO,CAAC,KAAK,GAAG,CAAC,CAAC,GAAG,IAAI,CAAC,CAAC,CAAC,CAAC;QAC/B,CAAC;QACD,OAAO,IAAI,CAAC,aAAc,CAAC;IAC7B,CAAC;IAED,YAAY;QACV,IAAI,CAAC,IAAI,CAAC,QAAQ,EAAE,CAAC;YACnB,IAAI,CAAC,QAAQ,GAAG,EAAE,CAAC;YACnB,IAAI,CAAC,aAAa,GAAG,IAAI,OAAO,CAAO,CAAC,OAAO,EAAE,MAAM,EAAE,EAAE;gBACzD,qBAAqB,CAAC,GAAG,EAAE;oBACzB,MAAM,IAAI,GAAG,IAAI,CAAC,QAAS,CAAC;oBAC5B,IAAI,CAAC,QAAQ,GAAG,SAAS,CAAC;oBAC1B,IAAI,CAAC,aAAa,GAAG,SAAS,CAAC;oBAC/B,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC,IAAI,CAAC,OAAO,EAAE,MAAM,CAAC,CAAC;gBAC5C,CAAC,CAAC,CAAC;YACL,CAAC,CAAC,CAAC;QACL,CAAC;IACH,CAAC;CACF;;AAED,MAAM,eAAe,GAAG,OAAO,CAAC,OAAO,EAAE,CAAC;AAE1C,yDAAyD;AACzD,oEAAoE;AACpE,MAAM,qBAAqB,GACzB,OAAO,OAAO,KAAK,QAAQ,IAAI,OAAO,OAAO,CAAC,QAAQ,KAAK,UAAU;IACnE,CAAC,CAAC,CAAC,EAAc,EAAE,EAAE,CAAC,eAAe,CAAC,IAAI,CAAC,GAAG,EAAE,CAAC,OAAO,CAAC,QAAQ,CAAC,EAAE,CAAC,CAAC;IACtE,CAAC,CAAC,CAAC,EAAc,EAAE,EAAE,CAAC,UAAU,CAAC,EAAE,CAAC,CAAC"}
|
|
@@ -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
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"enumCollectionBatchLoader.js","sourceRoot":"","sources":["../../src/batchloaders/enumCollectionBatchLoader.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"enumCollectionBatchLoader.js","sourceRoot":"","sources":["../../src/batchloaders/enumCollectionBatchLoader.ts"],"names":[],"mappings":";;;;AAAA,oDAAmE;AACnE,oCAAwE;AACxE,oCAAwC;AAG3B,QAAA,2BAA2B,GAAG,sBAAsB,CAAC;AAElE,qGAAqG;AACrG,mCAA0C,EAAiB,EAAE,UAA0B;IACrF,OAAO,EAAE,CAAC,cAAc,CAAC,QAAA,2BAA2B,EAAE,UAAU,CAAC,aAAa,EAAE,CAAC,IAAI,EAAE,EAAE,CACvF,SAAS,CAAC,EAAE,EAAE,UAAU,EAAE,IAAI,CAAC,CAChC,CAAC;AACJ,CAAC;AAED,KAAK,UAAU,SAAS,CAAC,EAAiB,EAAE,UAA0B,EAAE,IAAc;IACpF,MAAM,EAAE,IAAI,EAAE,UAAU,EAAE,eAAe,EAAE,aAAa,EAAE,cAAc,EAAE,SAAS,EAAE,SAAS,EAAE,GAAG,UAAU,CAAC;IAC9G,MAAM,QAAQ,GAAG,IAAA,gCAAgB,EAAC,EAAE,CAAC,CAAC,QAAQ,CAAC,UAAU,CAAC,CAAC;IAE3D,MAAM,KAAK,GAAG,IAAA,oBAAY,EAAC,aAAa,CAAC,CAAC;IAC1C,MAAM,KAAK,GAAoB;QAC7B,OAAO,EAAE,CAAC,IAAI,KAAK,KAAK,CAAC;QACzB,MAAM,EAAE,CAAC,EAAE,KAAK,EAAE,IAAI,EAAE,SAAS,EAAE,KAAK,EAAE,aAAa,EAAE,CAAC;QAC1D,SAAS,EAAE;YACT,IAAI,EAAE,KAAK;YACX,EAAE,EAAE,KAAK;YACT,UAAU,EAAE;gBACV;oBACE,IAAI,EAAE,QAAQ;oBACd,KAAK;oBACL,MAAM,EAAE,UAAU;oBAClB,MAAM,EAAE,IAAI,CAAC,QAAQ;oBACrB,IAAI,EAAE,EAAE,IAAI,EAAE,IAAI,EAAE,KAAK,EAAE,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,EAAE,EAAE,CAAC,IAAA,mBAAW,EAAC,IAAI,EAAE,EAAE,CAAE,CAAC,EAAE;iBACtE;aACF;SACF;QACD,4FAA4F;QAC5F,QAAQ,EAAE,cAAc;YACtB,CAAC,CAAC,CAAC,EAAE,KAAK,EAAE,MAAM,EAAE,IAAI,EAAE,KAAK,EAAE,KAAK,EAAE,CAAC;YACzC,CAAC,CAAC;gBACE,EAAE,KAAK,EAAE,MAAM,EAAE,UAAU,EAAE,KAAK,EAAE,KAAK,EAAE;gBAC3C,EAAE,KAAK,EAAE,MAAM,EAAE,eAAe,EAAE,KAAK,EAAE,KAAK,EAAE;aACjD;KACN,CAAC;IAEF,MAAM,IAAI,GAAG,MAAM,EAAE,CAAC,aAAa,CAAC,CAAC,IAAI,EAAE,QAAA,2BAA2B,EAAE,KAAK,EAAE,EAAE,KAAK,EAAE,SAAS,EAAE,CAAC,CAAC;IACrG,MAAM,QAAQ,CAAC,QAAQ,CACrB,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,EAAE,EAAE,CAAC,CAAC,UAAU,EAAE,EAAE,CAAC,CAAC,EAClC,IAAI,CACL,CAAC;IAEF,MAAM,GAAG,GAAG,IAAA,gCAAgB,EAAC,EAAE,CAAC,CAAC;IACjC,KAAK,MAAM,EAAE,IAAI,IAAI,EAAE,CAAC;QACtB,MAAM,MAAM,GAAG,EAAE,CAAC,SAAS,CAAC,EAAE,CAAC,CAAC;QAChC,IAAI,CAAC,MAAM;YAAE,SAAS;QACtB,MAAM,KAAK,GAAI,QAAQ,CAAC,SAAS,CAAC,UAAU,EAAE,MAAM,CAAc;aAC/D,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC,GAAG,CAAC,CAAC;aACrB,GAAG,CAAC,CAAC,MAAM,EAAE,EAAE,CAAC,SAAU,CAAC,QAAQ,CAAC,MAAM,CAAE,CAAC,IAAI,CAAC,CAAC;QACtD,GAAG,CAAC,oBAAoB,CAAC,MAAM,CAAC,QAAS,EAAE,SAAS,EAAE,KAAK,CAAC,CAAC;IAC/D,CAAC;AACH,CAAC"}
|
|
@@ -5,8 +5,8 @@ exports.loadBatchLoader = loadBatchLoader;
|
|
|
5
5
|
const BaseEntity_1 = require("../BaseEntity");
|
|
6
6
|
const EntityManager_1 = require("../EntityManager");
|
|
7
7
|
const HintTree_1 = require("../HintTree");
|
|
8
|
-
const QueryParser_1 = require("../QueryParser");
|
|
9
8
|
const keys_1 = require("../keys");
|
|
9
|
+
const QueryParser_1 = require("../QueryParser");
|
|
10
10
|
const utils_1 = require("../utils");
|
|
11
11
|
exports.loadOperation = "load";
|
|
12
12
|
/**
|
|
@@ -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",
|
|
@@ -35,21 +35,27 @@ function loadBatchLoader(em, meta, overwriteExisting = false) {
|
|
|
35
35
|
const { preloader } = (0, EntityManager_1.getEmInternalApi)(em);
|
|
36
36
|
const preloadHydrator = preloader &&
|
|
37
37
|
preloader.addPreloading(meta, (0, HintTree_1.buildHintTree)(loads.map((l) => ({ entity: l.taggedId, hint: l.hint }))), query);
|
|
38
|
-
const
|
|
39
|
-
|
|
40
|
-
|
|
41
|
-
|
|
42
|
-
|
|
43
|
-
|
|
44
|
-
|
|
45
|
-
|
|
46
|
-
|
|
47
|
-
|
|
48
|
-
|
|
38
|
+
const rowData = await em["executeFindRowData"](meta, exports.loadOperation, query, {});
|
|
39
|
+
em["hydrateAndFinalize"](meta.cstr, rowData, {
|
|
40
|
+
overwriteExisting,
|
|
41
|
+
sidecars: (entities) => {
|
|
42
|
+
preloadHydrator && preloadHydrator(rowData, entities);
|
|
43
|
+
// If we're missing any requested rows, mark any requested-but-not-found entities as deleted
|
|
44
|
+
if (rowData.rowCount !== loads.length) {
|
|
45
|
+
const foundIds = new Set();
|
|
46
|
+
for (let i = 0; i < rowData.rowCount; i++)
|
|
47
|
+
foundIds.add((0, keys_1.tagId)(meta, rowData.get(i, "id")));
|
|
48
|
+
for (const load of loads) {
|
|
49
|
+
if (!foundIds.has(load.taggedId)) {
|
|
50
|
+
const existingEntity = em.findExistingInstance(load.taggedId);
|
|
51
|
+
if (existingEntity) {
|
|
52
|
+
(0, BaseEntity_1.getInstanceData)(existingEntity).markDeletedBecauseNotFound();
|
|
53
|
+
}
|
|
54
|
+
}
|
|
49
55
|
}
|
|
50
56
|
}
|
|
51
|
-
}
|
|
52
|
-
}
|
|
57
|
+
},
|
|
58
|
+
});
|
|
53
59
|
});
|
|
54
60
|
}
|
|
55
61
|
//# sourceMappingURL=loadBatchLoader.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"loadBatchLoader.js","sourceRoot":"","sources":["../../src/batchloaders/loadBatchLoader.ts"],"names":[],"mappings":"
|
|
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
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"manyToManyBatchLoader.js","sourceRoot":"","sources":["../../src/batchloaders/manyToManyBatchLoader.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"manyToManyBatchLoader.js","sourceRoot":"","sources":["../../src/batchloaders/manyToManyBatchLoader.ts"],"names":[],"mappings":"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"}
|
|
@@ -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
|
|
@@ -36,8 +36,8 @@ function oneToManyBatchLoader(em, collection) {
|
|
|
36
36
|
orderBys: [{ alias, column: "id", order: "ASC" }],
|
|
37
37
|
};
|
|
38
38
|
(0, index_1.addTablePerClassJoinsAndClassTag)(query, meta, alias, true);
|
|
39
|
-
const
|
|
40
|
-
const entities = em
|
|
39
|
+
const rowData = await em["executeFindRowData"](meta, exports.oneToManyLoadOperation, query, {});
|
|
40
|
+
const entities = em["hydrateAndFinalize"](meta.cstr, rowData);
|
|
41
41
|
const entitiesById = (0, utils_1.groupBy)(entities, (entity) => {
|
|
42
42
|
const ownerId = (0, index_1.maybeResolveReferenceToId)((0, fields_1.getField)(entity, collection.otherFieldName));
|
|
43
43
|
return ownerId ?? "dummyNoLongerOwned";
|