@expo/entity 0.41.0 → 0.42.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/build/AuthorizationResultBasedEntityAssociationLoader.d.ts +16 -16
- package/build/AuthorizationResultBasedEntityAssociationLoader.js.map +1 -1
- package/build/AuthorizationResultBasedEntityLoader.d.ts +39 -67
- package/build/AuthorizationResultBasedEntityLoader.js +85 -62
- package/build/AuthorizationResultBasedEntityLoader.js.map +1 -1
- package/build/AuthorizationResultBasedEntityMutator.d.ts +16 -16
- package/build/AuthorizationResultBasedEntityMutator.js.map +1 -1
- package/build/ComposedEntityCacheAdapter.d.ts +7 -6
- package/build/ComposedEntityCacheAdapter.js +28 -28
- package/build/ComposedEntityCacheAdapter.js.map +1 -1
- package/build/ComposedSecondaryEntityCache.d.ts +1 -1
- package/build/ComposedSecondaryEntityCache.js.map +1 -1
- package/build/EnforcingEntityAssociationLoader.d.ts +15 -15
- package/build/EnforcingEntityAssociationLoader.js.map +1 -1
- package/build/EnforcingEntityCreator.d.ts +2 -2
- package/build/EnforcingEntityDeleter.d.ts +2 -2
- package/build/EnforcingEntityLoader.d.ts +104 -18
- package/build/EnforcingEntityLoader.js +113 -12
- package/build/EnforcingEntityLoader.js.map +1 -1
- package/build/EnforcingEntityUpdater.d.ts +2 -2
- package/build/Entity.d.ts +10 -10
- package/build/Entity.js.map +1 -1
- package/build/EntityAssociationLoader.d.ts +3 -3
- package/build/EntityCompanion.d.ts +5 -5
- package/build/EntityCompanion.js.map +1 -1
- package/build/EntityCompanionProvider.d.ts +6 -6
- package/build/EntityCompanionProvider.js.map +1 -1
- package/build/EntityConfiguration.d.ts +46 -5
- package/build/EntityConfiguration.js +39 -1
- package/build/EntityConfiguration.js.map +1 -1
- package/build/EntityCreator.d.ts +4 -4
- package/build/EntityDatabaseAdapter.d.ts +15 -14
- package/build/EntityDatabaseAdapter.js +20 -12
- package/build/EntityDatabaseAdapter.js.map +1 -1
- package/build/EntityDeleter.d.ts +4 -4
- package/build/EntityFieldDefinition.d.ts +20 -10
- package/build/EntityFieldDefinition.js +3 -1
- package/build/EntityFieldDefinition.js.map +1 -1
- package/build/EntityFields.d.ts +14 -12
- package/build/EntityFields.js.map +1 -1
- package/build/EntityLoader.d.ts +5 -5
- package/build/EntityLoaderFactory.d.ts +3 -3
- package/build/EntityLoaderFactory.js.map +1 -1
- package/build/EntityLoaderUtils.d.ts +2 -2
- package/build/EntityLoaderUtils.js +27 -1
- package/build/EntityLoaderUtils.js.map +1 -1
- package/build/EntityMutationInfo.d.ts +2 -2
- package/build/EntityMutationTriggerConfiguration.d.ts +14 -14
- package/build/EntityMutationTriggerConfiguration.js.map +1 -1
- package/build/EntityMutationValidator.d.ts +2 -2
- package/build/EntityMutatorFactory.d.ts +5 -5
- package/build/EntityMutatorFactory.js.map +1 -1
- package/build/EntityPrivacyPolicy.d.ts +14 -14
- package/build/EntityPrivacyPolicy.js.map +1 -1
- package/build/EntitySecondaryCacheLoader.d.ts +4 -4
- package/build/EntityUpdater.d.ts +4 -4
- package/build/GenericEntityCacheAdapter.d.ts +7 -6
- package/build/GenericEntityCacheAdapter.js +13 -14
- package/build/GenericEntityCacheAdapter.js.map +1 -1
- package/build/GenericSecondaryEntityCache.d.ts +3 -3
- package/build/GenericSecondaryEntityCache.js.map +1 -1
- package/build/IEntityCacheAdapter.d.ts +17 -16
- package/build/IEntityCacheAdapterProvider.d.ts +1 -1
- package/build/IEntityDatabaseAdapterProvider.d.ts +1 -1
- package/build/IEntityGenericCacher.d.ts +15 -5
- package/build/ReadonlyEntity.d.ts +8 -8
- package/build/ReadonlyEntity.js.map +1 -1
- package/build/ViewerContext.d.ts +1 -1
- package/build/ViewerScopedEntityCompanion.d.ts +5 -5
- package/build/ViewerScopedEntityCompanionProvider.d.ts +1 -1
- package/build/ViewerScopedEntityLoaderFactory.d.ts +3 -3
- package/build/ViewerScopedEntityMutatorFactory.d.ts +5 -5
- package/build/entityUtils.d.ts +1 -1
- package/build/entityUtils.js.map +1 -1
- package/build/errors/EntityInvalidFieldValueError.d.ts +2 -2
- package/build/errors/EntityNotAuthorizedError.d.ts +1 -1
- package/build/errors/EntityNotFoundError.d.ts +2 -2
- package/build/index.d.ts +7 -7
- package/build/index.js +8 -13
- package/build/index.js.map +1 -1
- package/build/internal/CompositeFieldHolder.d.ts +48 -0
- package/build/internal/CompositeFieldHolder.js +116 -0
- package/build/internal/CompositeFieldHolder.js.map +1 -0
- package/build/internal/CompositeFieldValueMap.d.ts +15 -0
- package/build/internal/CompositeFieldValueMap.js +51 -0
- package/build/internal/CompositeFieldValueMap.js.map +1 -0
- package/build/internal/EntityDataManager.d.ts +16 -16
- package/build/internal/EntityDataManager.js +42 -45
- package/build/internal/EntityDataManager.js.map +1 -1
- package/build/internal/EntityFieldTransformationUtils.d.ts +5 -5
- package/build/internal/EntityFieldTransformationUtils.js.map +1 -1
- package/build/internal/EntityLoadInterfaces.d.ts +104 -0
- package/build/internal/EntityLoadInterfaces.js +25 -0
- package/build/internal/EntityLoadInterfaces.js.map +1 -0
- package/build/internal/EntityTableDataCoordinator.d.ts +6 -6
- package/build/internal/EntityTableDataCoordinator.js.map +1 -1
- package/build/internal/ReadThroughEntityCache.d.ts +17 -16
- package/build/internal/ReadThroughEntityCache.js +36 -36
- package/build/internal/ReadThroughEntityCache.js.map +1 -1
- package/build/internal/SingleFieldHolder.d.ts +34 -0
- package/build/internal/SingleFieldHolder.js +90 -0
- package/build/internal/SingleFieldHolder.js.map +1 -0
- package/build/metrics/EntityMetricsUtils.d.ts +2 -1
- package/build/metrics/EntityMetricsUtils.js.map +1 -1
- package/build/metrics/IEntityMetricsAdapter.d.ts +5 -0
- package/build/metrics/IEntityMetricsAdapter.js.map +1 -1
- package/build/rules/AlwaysAllowPrivacyPolicyRule.d.ts +2 -2
- package/build/rules/AlwaysAllowPrivacyPolicyRule.js.map +1 -1
- package/build/rules/AlwaysDenyPrivacyPolicyRule.d.ts +2 -2
- package/build/rules/AlwaysDenyPrivacyPolicyRule.js.map +1 -1
- package/build/rules/AlwaysSkipPrivacyPolicyRule.d.ts +2 -2
- package/build/rules/AlwaysSkipPrivacyPolicyRule.js.map +1 -1
- package/build/rules/PrivacyPolicyRule.d.ts +2 -2
- package/build/tsconfig.build.tsbuildinfo +1 -0
- package/build/utils/EntityPrivacyUtils.d.ts +4 -4
- package/build/utils/EntityPrivacyUtils.js.map +1 -1
- package/build/utils/collections/SerializableKeyMap.d.ts +27 -0
- package/build/utils/collections/SerializableKeyMap.js +60 -0
- package/build/utils/collections/SerializableKeyMap.js.map +1 -0
- package/build/utils/collections/maps.js +1 -2
- package/build/utils/collections/maps.js.map +1 -1
- package/build/utils/collections/sets.d.ts +1 -0
- package/build/utils/collections/sets.js +7 -0
- package/build/utils/collections/sets.js.map +1 -0
- package/build/utils/mergeEntityMutationTriggerConfigurations.d.ts +1 -1
- package/package.json +8 -5
- package/src/AuthorizationResultBasedEntityAssociationLoader.ts +56 -49
- package/src/AuthorizationResultBasedEntityLoader.ts +194 -81
- package/src/AuthorizationResultBasedEntityMutator.ts +71 -45
- package/src/ComposedEntityCacheAdapter.ts +55 -46
- package/src/ComposedSecondaryEntityCache.ts +5 -2
- package/src/EnforcingEntityAssociationLoader.ts +52 -44
- package/src/EnforcingEntityCreator.ts +5 -5
- package/src/EnforcingEntityDeleter.ts +5 -5
- package/src/EnforcingEntityLoader.ts +158 -21
- package/src/EnforcingEntityUpdater.ts +5 -5
- package/src/Entity.ts +39 -39
- package/src/EntityAssociationLoader.ts +6 -6
- package/src/EntityCompanion.ts +11 -11
- package/src/EntityCompanionProvider.ts +21 -18
- package/src/EntityConfiguration.ts +123 -9
- package/src/EntityCreator.ts +7 -7
- package/src/EntityDatabaseAdapter.ts +51 -28
- package/src/EntityDeleter.ts +7 -7
- package/src/EntityFieldDefinition.ts +32 -12
- package/src/EntityFields.ts +49 -12
- package/src/EntityLoader.ts +8 -8
- package/src/EntityLoaderFactory.ts +8 -8
- package/src/EntityLoaderUtils.ts +39 -10
- package/src/EntityMutationInfo.ts +6 -6
- package/src/EntityMutationTriggerConfiguration.ts +68 -20
- package/src/EntityMutationValidator.ts +4 -4
- package/src/EntityMutatorFactory.ts +13 -13
- package/src/EntityPrivacyPolicy.ts +50 -26
- package/src/EntitySecondaryCacheLoader.ts +6 -6
- package/src/EntityUpdater.ts +7 -7
- package/src/GenericEntityCacheAdapter.ts +39 -28
- package/src/GenericSecondaryEntityCache.ts +6 -3
- package/src/IEntityCacheAdapter.ts +45 -25
- package/src/IEntityCacheAdapterProvider.ts +3 -3
- package/src/IEntityDatabaseAdapterProvider.ts +3 -3
- package/src/IEntityGenericCacher.ts +33 -5
- package/src/ReadonlyEntity.ts +24 -24
- package/src/ViewerContext.ts +5 -5
- package/src/ViewerScopedEntityCompanion.ts +7 -7
- package/src/ViewerScopedEntityCompanionProvider.ts +6 -6
- package/src/ViewerScopedEntityLoaderFactory.ts +7 -7
- package/src/ViewerScopedEntityMutatorFactory.ts +8 -8
- package/src/__tests__/AuthorizationResultBasedEntityAssociationLoader-test.ts +4 -4
- package/src/__tests__/AuthorizationResultBasedEntityLoader-constructor-test.ts +14 -13
- package/src/__tests__/AuthorizationResultBasedEntityLoader-test.ts +367 -69
- package/src/__tests__/ComposedCacheAdapter-test.ts +235 -117
- package/src/__tests__/EnforcingEntityLoader-test.ts +135 -1
- package/src/__tests__/Entity-test.ts +2 -2
- package/src/__tests__/EntityAssociationLoader-test.ts +2 -2
- package/src/__tests__/EntityCommonUseCases-test.ts +11 -11
- package/src/__tests__/EntityCompanion-test.ts +4 -4
- package/src/__tests__/EntityCompanionProvider-test.ts +9 -8
- package/src/__tests__/EntityConfiguration-test.ts +85 -6
- package/src/__tests__/EntityDatabaseAdapter-test.ts +113 -17
- package/src/__tests__/EntityEdges-test.ts +97 -72
- package/src/__tests__/EntityFields-test.ts +2 -2
- package/src/__tests__/EntityLoader-test.ts +2 -2
- package/src/__tests__/EntityMutator-MutationCacheConsistency-test.ts +11 -11
- package/src/__tests__/EntityMutator-SingleCompositeFieldCacheConsistency-test.ts +73 -0
- package/src/__tests__/EntityMutator-test.ts +74 -46
- package/src/__tests__/EntityPrivacyPolicy-test.ts +51 -74
- package/src/__tests__/EntityQueryContext-test.ts +1 -1
- package/src/__tests__/EntitySecondaryCacheLoader-test.ts +3 -3
- package/src/__tests__/EntitySelfReferentialEdges-test.ts +64 -39
- package/src/__tests__/GenericEntityCacheAdapter-test.ts +83 -28
- package/src/__tests__/ReadonlyEntity-test.ts +3 -3
- package/src/__tests__/ViewerContext-test.ts +1 -1
- package/src/__tests__/ViewerScopedEntityCompanion-test.ts +5 -2
- package/src/__tests__/ViewerScopedEntityCompanionProvider-test.ts +1 -1
- package/src/__tests__/ViewerScopedEntityMutatorFactory-test.ts +12 -3
- package/src/__tests__/cases/TwoEntitySameTableDisjointRows-test.ts +12 -12
- package/src/__tests__/cases/TwoEntitySameTableOverlappingRows-test.ts +12 -12
- package/src/entityUtils.ts +4 -1
- package/src/errors/EntityInvalidFieldValueError.ts +5 -5
- package/src/errors/EntityNotAuthorizedError.ts +3 -3
- package/src/errors/EntityNotFoundError.ts +5 -5
- package/src/index.ts +7 -7
- package/src/internal/CompositeFieldHolder.ts +218 -0
- package/src/internal/CompositeFieldValueMap.ts +78 -0
- package/src/internal/EntityDataManager.ts +107 -96
- package/src/internal/EntityFieldTransformationUtils.ts +33 -14
- package/src/internal/EntityLoadInterfaces.ts +143 -0
- package/src/internal/EntityTableDataCoordinator.ts +8 -5
- package/src/internal/ReadThroughEntityCache.ts +63 -50
- package/src/internal/SingleFieldHolder.ts +131 -0
- package/src/internal/__tests__/CompositeFieldHolder-test.ts +25 -0
- package/src/internal/__tests__/CompositeFieldValueMap-test.ts +43 -0
- package/src/internal/__tests__/EntityDataManager-test.ts +308 -91
- package/src/internal/__tests__/EntityFieldTransformationUtils-test.ts +3 -2
- package/src/internal/__tests__/ReadThroughEntityCache-test.ts +315 -107
- package/src/metrics/EntityMetricsUtils.ts +7 -2
- package/src/metrics/IEntityMetricsAdapter.ts +6 -0
- package/src/rules/AlwaysAllowPrivacyPolicyRule.ts +5 -5
- package/src/rules/AlwaysDenyPrivacyPolicyRule.ts +5 -5
- package/src/rules/AlwaysSkipPrivacyPolicyRule.ts +5 -5
- package/src/rules/PrivacyPolicyRule.ts +4 -4
- package/src/rules/__tests__/AlwaysAllowPrivacyPolicyRule-test.ts +1 -1
- package/src/rules/__tests__/AlwaysDenyPrivacyPolicyRule-test.ts +1 -1
- package/src/rules/__tests__/AlwaysSkipPrivacyPolicyRule-test.ts +1 -1
- package/src/utils/EntityPrivacyUtils.ts +72 -30
- package/src/utils/{testing → __testfixtures__}/PrivacyPolicyRuleTestUtils.ts +26 -26
- package/src/{testfixtures → utils/__testfixtures__}/SimpleTestEntity.ts +16 -15
- package/src/utils/__testfixtures__/StubCacheAdapter.ts +164 -0
- package/src/utils/{testing → __testfixtures__}/StubDatabaseAdapter.ts +19 -12
- package/src/utils/{testing → __testfixtures__}/StubDatabaseAdapterProvider.ts +4 -4
- package/src/utils/__testfixtures__/TSMockitoExtensions.ts +69 -0
- package/src/{testfixtures → utils/__testfixtures__}/TestEntity.ts +21 -15
- package/src/{testfixtures → utils/__testfixtures__}/TestEntity2.ts +16 -15
- package/src/{testfixtures → utils/__testfixtures__}/TestEntityWithMutationTriggers.ts +23 -22
- package/src/{testfixtures → utils/__testfixtures__}/TestViewerContext.ts +1 -1
- package/src/utils/{testing → __testfixtures__}/describeFieldTestCase.ts +1 -1
- package/src/utils/__tests__/EntityPrivacyUtils-test.ts +62 -66
- package/src/utils/__tests__/canViewerDeleteAsync-edgeDeletionPermissionInferenceBehavior-test.ts +29 -25
- package/src/utils/__tests__/mergeEntityMutationTriggerConfigurations-test.ts +1 -1
- package/src/utils/collections/SerializableKeyMap.ts +84 -0
- package/src/utils/collections/__tests__/SerializableKeyMap-test.ts +119 -0
- package/src/utils/collections/__tests__/sets-test.ts +17 -0
- package/src/utils/collections/maps.ts +7 -8
- package/src/utils/collections/sets.ts +3 -0
- package/src/utils/mergeEntityMutationTriggerConfigurations.ts +5 -5
- package/build/__tests__/AuthorizationResultBasedEntityAssociationLoader-test.d.ts +0 -1
- package/build/__tests__/AuthorizationResultBasedEntityAssociationLoader-test.js +0 -242
- package/build/__tests__/AuthorizationResultBasedEntityAssociationLoader-test.js.map +0 -1
- package/build/__tests__/AuthorizationResultBasedEntityLoader-constructor-test.d.ts +0 -26
- package/build/__tests__/AuthorizationResultBasedEntityLoader-constructor-test.js +0 -110
- package/build/__tests__/AuthorizationResultBasedEntityLoader-constructor-test.js.map +0 -1
- package/build/__tests__/AuthorizationResultBasedEntityLoader-test.d.ts +0 -1
- package/build/__tests__/AuthorizationResultBasedEntityLoader-test.js +0 -401
- package/build/__tests__/AuthorizationResultBasedEntityLoader-test.js.map +0 -1
- package/build/__tests__/ComposedCacheAdapter-test.d.ts +0 -1
- package/build/__tests__/ComposedCacheAdapter-test.js +0 -229
- package/build/__tests__/ComposedCacheAdapter-test.js.map +0 -1
- package/build/__tests__/ComposedSecondaryEntityCache-test.d.ts +0 -1
- package/build/__tests__/ComposedSecondaryEntityCache-test.js +0 -66
- package/build/__tests__/ComposedSecondaryEntityCache-test.js.map +0 -1
- package/build/__tests__/EnforcingEntityAssociationLoader-test.d.ts +0 -1
- package/build/__tests__/EnforcingEntityAssociationLoader-test.js +0 -115
- package/build/__tests__/EnforcingEntityAssociationLoader-test.js.map +0 -1
- package/build/__tests__/EnforcingEntityLoader-test.d.ts +0 -1
- package/build/__tests__/EnforcingEntityLoader-test.js +0 -253
- package/build/__tests__/EnforcingEntityLoader-test.js.map +0 -1
- package/build/__tests__/Entity-test.d.ts +0 -1
- package/build/__tests__/Entity-test.js +0 -94
- package/build/__tests__/Entity-test.js.map +0 -1
- package/build/__tests__/EntityAssociationLoader-test.d.ts +0 -1
- package/build/__tests__/EntityAssociationLoader-test.js +0 -30
- package/build/__tests__/EntityAssociationLoader-test.js.map +0 -1
- package/build/__tests__/EntityCommonUseCases-test.d.ts +0 -1
- package/build/__tests__/EntityCommonUseCases-test.js +0 -146
- package/build/__tests__/EntityCommonUseCases-test.js.map +0 -1
- package/build/__tests__/EntityCompanion-test.d.ts +0 -1
- package/build/__tests__/EntityCompanion-test.js +0 -77
- package/build/__tests__/EntityCompanion-test.js.map +0 -1
- package/build/__tests__/EntityCompanionProvider-test.d.ts +0 -1
- package/build/__tests__/EntityCompanionProvider-test.js +0 -54
- package/build/__tests__/EntityCompanionProvider-test.js.map +0 -1
- package/build/__tests__/EntityConfiguration-test.d.ts +0 -1
- package/build/__tests__/EntityConfiguration-test.js +0 -103
- package/build/__tests__/EntityConfiguration-test.js.map +0 -1
- package/build/__tests__/EntityDatabaseAdapter-test.d.ts +0 -1
- package/build/__tests__/EntityDatabaseAdapter-test.js +0 -146
- package/build/__tests__/EntityDatabaseAdapter-test.js.map +0 -1
- package/build/__tests__/EntityEdges-test.d.ts +0 -1
- package/build/__tests__/EntityEdges-test.js +0 -723
- package/build/__tests__/EntityEdges-test.js.map +0 -1
- package/build/__tests__/EntityFields-test.d.ts +0 -1
- package/build/__tests__/EntityFields-test.js +0 -63
- package/build/__tests__/EntityFields-test.js.map +0 -1
- package/build/__tests__/EntityLoader-test.d.ts +0 -1
- package/build/__tests__/EntityLoader-test.js +0 -36
- package/build/__tests__/EntityLoader-test.js.map +0 -1
- package/build/__tests__/EntityMutator-MutationCacheConsistency-test.d.ts +0 -1
- package/build/__tests__/EntityMutator-MutationCacheConsistency-test.js +0 -73
- package/build/__tests__/EntityMutator-MutationCacheConsistency-test.js.map +0 -1
- package/build/__tests__/EntityMutator-test.d.ts +0 -1
- package/build/__tests__/EntityMutator-test.js +0 -741
- package/build/__tests__/EntityMutator-test.js.map +0 -1
- package/build/__tests__/EntityPrivacyPolicy-test.d.ts +0 -1
- package/build/__tests__/EntityPrivacyPolicy-test.js +0 -463
- package/build/__tests__/EntityPrivacyPolicy-test.js.map +0 -1
- package/build/__tests__/EntityQueryContext-test.d.ts +0 -1
- package/build/__tests__/EntityQueryContext-test.js +0 -116
- package/build/__tests__/EntityQueryContext-test.js.map +0 -1
- package/build/__tests__/EntitySecondaryCacheLoader-test.d.ts +0 -1
- package/build/__tests__/EntitySecondaryCacheLoader-test.js +0 -60
- package/build/__tests__/EntitySecondaryCacheLoader-test.js.map +0 -1
- package/build/__tests__/EntitySelfReferentialEdges-test.d.ts +0 -1
- package/build/__tests__/EntitySelfReferentialEdges-test.js +0 -201
- package/build/__tests__/EntitySelfReferentialEdges-test.js.map +0 -1
- package/build/__tests__/GenericEntityCacheAdapter-test.d.ts +0 -1
- package/build/__tests__/GenericEntityCacheAdapter-test.js +0 -80
- package/build/__tests__/GenericEntityCacheAdapter-test.js.map +0 -1
- package/build/__tests__/ReadonlyEntity-test.d.ts +0 -1
- package/build/__tests__/ReadonlyEntity-test.js +0 -211
- package/build/__tests__/ReadonlyEntity-test.js.map +0 -1
- package/build/__tests__/ViewerContext-test.d.ts +0 -1
- package/build/__tests__/ViewerContext-test.js +0 -30
- package/build/__tests__/ViewerContext-test.js.map +0 -1
- package/build/__tests__/ViewerScopedEntityCompanion-test.d.ts +0 -1
- package/build/__tests__/ViewerScopedEntityCompanion-test.js +0 -20
- package/build/__tests__/ViewerScopedEntityCompanion-test.js.map +0 -1
- package/build/__tests__/ViewerScopedEntityCompanionProvider-test.d.ts +0 -1
- package/build/__tests__/ViewerScopedEntityCompanionProvider-test.js +0 -20
- package/build/__tests__/ViewerScopedEntityCompanionProvider-test.js.map +0 -1
- package/build/__tests__/ViewerScopedEntityLoaderFactory-test.d.ts +0 -1
- package/build/__tests__/ViewerScopedEntityLoaderFactory-test.js +0 -23
- package/build/__tests__/ViewerScopedEntityLoaderFactory-test.js.map +0 -1
- package/build/__tests__/ViewerScopedEntityMutatorFactory-test.d.ts +0 -1
- package/build/__tests__/ViewerScopedEntityMutatorFactory-test.js +0 -22
- package/build/__tests__/ViewerScopedEntityMutatorFactory-test.js.map +0 -1
- package/build/__tests__/cases/TwoEntitySameTableDisjointRows-test.d.ts +0 -1
- package/build/__tests__/cases/TwoEntitySameTableDisjointRows-test.js +0 -123
- package/build/__tests__/cases/TwoEntitySameTableDisjointRows-test.js.map +0 -1
- package/build/__tests__/cases/TwoEntitySameTableOverlappingRows-test.d.ts +0 -1
- package/build/__tests__/cases/TwoEntitySameTableOverlappingRows-test.js +0 -121
- package/build/__tests__/cases/TwoEntitySameTableOverlappingRows-test.js.map +0 -1
- package/build/__tests__/entityUtils-test.d.ts +0 -1
- package/build/__tests__/entityUtils-test.js +0 -87
- package/build/__tests__/entityUtils-test.js.map +0 -1
- package/build/internal/__tests__/EntityDataManager-test.d.ts +0 -1
- package/build/internal/__tests__/EntityDataManager-test.js +0 -373
- package/build/internal/__tests__/EntityDataManager-test.js.map +0 -1
- package/build/internal/__tests__/EntityFieldTransformationUtils-test.d.ts +0 -1
- package/build/internal/__tests__/EntityFieldTransformationUtils-test.js +0 -136
- package/build/internal/__tests__/EntityFieldTransformationUtils-test.js.map +0 -1
- package/build/internal/__tests__/ReadThroughEntityCache-test.d.ts +0 -1
- package/build/internal/__tests__/ReadThroughEntityCache-test.js +0 -206
- package/build/internal/__tests__/ReadThroughEntityCache-test.js.map +0 -1
- package/build/rules/__tests__/AlwaysAllowPrivacyPolicyRule-test.d.ts +0 -1
- package/build/rules/__tests__/AlwaysAllowPrivacyPolicyRule-test.js +0 -21
- package/build/rules/__tests__/AlwaysAllowPrivacyPolicyRule-test.js.map +0 -1
- package/build/rules/__tests__/AlwaysDenyPrivacyPolicyRule-test.d.ts +0 -1
- package/build/rules/__tests__/AlwaysDenyPrivacyPolicyRule-test.js +0 -21
- package/build/rules/__tests__/AlwaysDenyPrivacyPolicyRule-test.js.map +0 -1
- package/build/rules/__tests__/AlwaysSkipPrivacyPolicyRule-test.d.ts +0 -1
- package/build/rules/__tests__/AlwaysSkipPrivacyPolicyRule-test.js +0 -21
- package/build/rules/__tests__/AlwaysSkipPrivacyPolicyRule-test.js.map +0 -1
- package/build/testfixtures/DateIDTestEntity.d.ts +0 -19
- package/build/testfixtures/DateIDTestEntity.js +0 -48
- package/build/testfixtures/DateIDTestEntity.js.map +0 -1
- package/build/testfixtures/SimpleTestEntity.d.ts +0 -20
- package/build/testfixtures/SimpleTestEntity.js +0 -48
- package/build/testfixtures/SimpleTestEntity.js.map +0 -1
- package/build/testfixtures/TestEntity.d.ts +0 -30
- package/build/testfixtures/TestEntity.js +0 -93
- package/build/testfixtures/TestEntity.js.map +0 -1
- package/build/testfixtures/TestEntity2.d.ts +0 -20
- package/build/testfixtures/TestEntity2.js +0 -51
- package/build/testfixtures/TestEntity2.js.map +0 -1
- package/build/testfixtures/TestEntityNumberKey.d.ts +0 -19
- package/build/testfixtures/TestEntityNumberKey.js +0 -48
- package/build/testfixtures/TestEntityNumberKey.js.map +0 -1
- package/build/testfixtures/TestEntityWithMutationTriggers.d.ts +0 -36
- package/build/testfixtures/TestEntityWithMutationTriggers.js +0 -82
- package/build/testfixtures/TestEntityWithMutationTriggers.js.map +0 -1
- package/build/testfixtures/TestViewerContext.d.ts +0 -3
- package/build/testfixtures/TestViewerContext.js +0 -10
- package/build/testfixtures/TestViewerContext.js.map +0 -1
- package/build/utils/__tests__/EntityPrivacyUtils-test.d.ts +0 -1
- package/build/utils/__tests__/EntityPrivacyUtils-test.js +0 -486
- package/build/utils/__tests__/EntityPrivacyUtils-test.js.map +0 -1
- package/build/utils/__tests__/canViewerDeleteAsync-edgeDeletionPermissionInferenceBehavior-test.d.ts +0 -1
- package/build/utils/__tests__/canViewerDeleteAsync-edgeDeletionPermissionInferenceBehavior-test.js +0 -178
- package/build/utils/__tests__/canViewerDeleteAsync-edgeDeletionPermissionInferenceBehavior-test.js.map +0 -1
- package/build/utils/__tests__/mergeEntityMutationTriggerConfigurations-test.d.ts +0 -1
- package/build/utils/__tests__/mergeEntityMutationTriggerConfigurations-test.js +0 -26
- package/build/utils/__tests__/mergeEntityMutationTriggerConfigurations-test.js.map +0 -1
- package/build/utils/collections/__tests__/maps-test.d.ts +0 -1
- package/build/utils/collections/__tests__/maps-test.js +0 -120
- package/build/utils/collections/__tests__/maps-test.js.map +0 -1
- package/build/utils/testing/PrivacyPolicyRuleTestUtils.d.ts +0 -28
- package/build/utils/testing/PrivacyPolicyRuleTestUtils.js +0 -52
- package/build/utils/testing/PrivacyPolicyRuleTestUtils.js.map +0 -1
- package/build/utils/testing/StubCacheAdapter.d.ts +0 -27
- package/build/utils/testing/StubCacheAdapter.js +0 -86
- package/build/utils/testing/StubCacheAdapter.js.map +0 -1
- package/build/utils/testing/StubDatabaseAdapter.d.ts +0 -25
- package/build/utils/testing/StubDatabaseAdapter.js +0 -191
- package/build/utils/testing/StubDatabaseAdapter.js.map +0 -1
- package/build/utils/testing/StubDatabaseAdapterProvider.d.ts +0 -7
- package/build/utils/testing/StubDatabaseAdapterProvider.js +0 -14
- package/build/utils/testing/StubDatabaseAdapterProvider.js.map +0 -1
- package/build/utils/testing/StubQueryContextProvider.d.ts +0 -7
- package/build/utils/testing/StubQueryContextProvider.js +0 -19
- package/build/utils/testing/StubQueryContextProvider.js.map +0 -1
- package/build/utils/testing/__tests__/PrivacyPolicyRuleTestUtils-test.d.ts +0 -1
- package/build/utils/testing/__tests__/PrivacyPolicyRuleTestUtils-test.js +0 -42
- package/build/utils/testing/__tests__/PrivacyPolicyRuleTestUtils-test.js.map +0 -1
- package/build/utils/testing/__tests__/StubDatabaseAdapter-test.d.ts +0 -1
- package/build/utils/testing/__tests__/StubDatabaseAdapter-test.js +0 -402
- package/build/utils/testing/__tests__/StubDatabaseAdapter-test.js.map +0 -1
- package/build/utils/testing/createUnitTestEntityCompanionProvider.d.ts +0 -7
- package/build/utils/testing/createUnitTestEntityCompanionProvider.js +0 -36
- package/build/utils/testing/createUnitTestEntityCompanionProvider.js.map +0 -1
- package/build/utils/testing/describeFieldTestCase.d.ts +0 -2
- package/build/utils/testing/describeFieldTestCase.js +0 -18
- package/build/utils/testing/describeFieldTestCase.js.map +0 -1
- package/src/testfixtures/DateIDTestEntity.ts +0 -59
- package/src/testfixtures/TestEntityNumberKey.ts +0 -59
- package/src/utils/testing/StubCacheAdapter.ts +0 -122
- package/src/utils/testing/__tests__/PrivacyPolicyRuleTestUtils-test.ts +0 -42
- package/src/utils/testing/__tests__/StubDatabaseAdapter-test.ts +0 -548
- /package/src/utils/{testing → __testfixtures__}/StubQueryContextProvider.ts +0 -0
- /package/src/utils/{testing → __testfixtures__}/createUnitTestEntityCompanionProvider.ts +0 -0
|
@@ -0,0 +1,60 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.SerializableKeyMap = void 0;
|
|
4
|
+
/**
|
|
5
|
+
* A map with keys that are serializable. Serialized keys are considered equal if their serialized values are equal.
|
|
6
|
+
* Otherwise, the map behaves like a regular Map.
|
|
7
|
+
*/
|
|
8
|
+
class SerializableKeyMap {
|
|
9
|
+
underlyingMap;
|
|
10
|
+
constructor(iterable) {
|
|
11
|
+
this.underlyingMap = new Map(Array.from(iterable ?? []).map(([key, value]) => [key.serialize(), value]));
|
|
12
|
+
}
|
|
13
|
+
forEach(callbackfn, thisArg) {
|
|
14
|
+
this.underlyingMap.forEach((value, key) => {
|
|
15
|
+
callbackfn.call(thisArg, value, this.deserializeKey(key), this);
|
|
16
|
+
});
|
|
17
|
+
}
|
|
18
|
+
get(key) {
|
|
19
|
+
return this.underlyingMap.get(key.serialize());
|
|
20
|
+
}
|
|
21
|
+
has(key) {
|
|
22
|
+
return this.underlyingMap.has(key.serialize());
|
|
23
|
+
}
|
|
24
|
+
clear() {
|
|
25
|
+
this.underlyingMap.clear();
|
|
26
|
+
}
|
|
27
|
+
delete(key) {
|
|
28
|
+
return this.underlyingMap.delete(key.serialize());
|
|
29
|
+
}
|
|
30
|
+
set(key, value) {
|
|
31
|
+
this.underlyingMap.set(key.serialize(), value);
|
|
32
|
+
return this;
|
|
33
|
+
}
|
|
34
|
+
get size() {
|
|
35
|
+
return this.underlyingMap.size;
|
|
36
|
+
}
|
|
37
|
+
*entries() {
|
|
38
|
+
for (const [key, value] of this.underlyingMap.entries()) {
|
|
39
|
+
yield [this.deserializeKey(key), value];
|
|
40
|
+
}
|
|
41
|
+
}
|
|
42
|
+
*keys() {
|
|
43
|
+
for (const key of this.underlyingMap.keys()) {
|
|
44
|
+
yield this.deserializeKey(key);
|
|
45
|
+
}
|
|
46
|
+
}
|
|
47
|
+
*values() {
|
|
48
|
+
for (const value of this.underlyingMap.values()) {
|
|
49
|
+
yield value;
|
|
50
|
+
}
|
|
51
|
+
}
|
|
52
|
+
[Symbol.iterator]() {
|
|
53
|
+
return this.entries();
|
|
54
|
+
}
|
|
55
|
+
get [Symbol.toStringTag]() {
|
|
56
|
+
return 'SerializableKeyMap';
|
|
57
|
+
}
|
|
58
|
+
}
|
|
59
|
+
exports.SerializableKeyMap = SerializableKeyMap;
|
|
60
|
+
//# sourceMappingURL=SerializableKeyMap.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"SerializableKeyMap.js","sourceRoot":"","sources":["../../../src/utils/collections/SerializableKeyMap.ts"],"names":[],"mappings":";;;AAOA;;;GAGG;AACH,MAAsB,kBAAkB;IAGnB,aAAa,CAAsB;IAEtD,YAAY,QAA2C;QACrD,IAAI,CAAC,aAAa,GAAG,IAAI,GAAG,CAC1B,KAAK,CAAC,IAAI,CAAC,QAAQ,IAAI,EAAE,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,EAAE,KAAK,CAAC,EAAE,EAAE,CAAC,CAAC,GAAG,CAAC,SAAS,EAAE,EAAE,KAAK,CAAC,CAAC,CAC3E,CAAC;IACJ,CAAC;IAID,OAAO,CACL,UAAkF,EAClF,OAAa;QAEb,IAAI,CAAC,aAAa,CAAC,OAAO,CAAC,CAAC,KAAK,EAAE,GAAG,EAAE,EAAE;YACxC,UAAU,CAAC,IAAI,CAAC,OAAO,EAAE,KAAK,EAAE,IAAI,CAAC,cAAc,CAAC,GAAG,CAAC,EAAE,IAAI,CAAC,CAAC;QAClE,CAAC,CAAC,CAAC;IACL,CAAC;IAED,GAAG,CAAC,GAAM;QACR,OAAO,IAAI,CAAC,aAAa,CAAC,GAAG,CAAC,GAAG,CAAC,SAAS,EAAE,CAAC,CAAC;IACjD,CAAC;IAED,GAAG,CAAC,GAAM;QACR,OAAO,IAAI,CAAC,aAAa,CAAC,GAAG,CAAC,GAAG,CAAC,SAAS,EAAE,CAAC,CAAC;IACjD,CAAC;IAED,KAAK;QACH,IAAI,CAAC,aAAa,CAAC,KAAK,EAAE,CAAC;IAC7B,CAAC;IAED,MAAM,CAAC,GAAM;QACX,OAAO,IAAI,CAAC,aAAa,CAAC,MAAM,CAAC,GAAG,CAAC,SAAS,EAAE,CAAC,CAAC;IACpD,CAAC;IAED,GAAG,CAAC,GAAM,EAAE,KAAQ;QAClB,IAAI,CAAC,aAAa,CAAC,GAAG,CAAC,GAAG,CAAC,SAAS,EAAE,EAAE,KAAK,CAAC,CAAC;QAC/C,OAAO,IAAI,CAAC;IACd,CAAC;IAED,IAAI,IAAI;QACN,OAAO,IAAI,CAAC,aAAa,CAAC,IAAI,CAAC;IACjC,CAAC;IAED,CAAC,OAAO;QACN,KAAK,MAAM,CAAC,GAAG,EAAE,KAAK,CAAC,IAAI,IAAI,CAAC,aAAa,CAAC,OAAO,EAAE,EAAE,CAAC;YACxD,MAAM,CAAC,IAAI,CAAC,cAAc,CAAC,GAAG,CAAC,EAAE,KAAK,CAAC,CAAC;QAC1C,CAAC;IACH,CAAC;IAED,CAAC,IAAI;QACH,KAAK,MAAM,GAAG,IAAI,IAAI,CAAC,aAAa,CAAC,IAAI,EAAE,EAAE,CAAC;YAC5C,MAAM,IAAI,CAAC,cAAc,CAAC,GAAG,CAAC,CAAC;QACjC,CAAC;IACH,CAAC;IAED,CAAC,MAAM;QACL,KAAK,MAAM,KAAK,IAAI,IAAI,CAAC,aAAa,CAAC,MAAM,EAAE,EAAE,CAAC;YAChD,MAAM,KAAK,CAAC;QACd,CAAC;IACH,CAAC;IAED,CAAC,MAAM,CAAC,QAAQ,CAAC;QACf,OAAO,IAAI,CAAC,OAAO,EAAE,CAAC;IACxB,CAAC;IAED,IAAI,CAAC,MAAM,CAAC,WAAW,CAAC;QACtB,OAAO,oBAAoB,CAAC;IAC9B,CAAC;CACF;AAxED,gDAwEC"}
|
|
@@ -84,8 +84,7 @@ const zipToMap = (keys, values) => {
|
|
|
84
84
|
(0, invariant_1.default)(keys.length === values.length, `zipToMap input length mismatch: keys[${keys.length}], values[${values.length}]`);
|
|
85
85
|
const resultingMap = new Map();
|
|
86
86
|
for (let i = 0; i < keys.length; i++) {
|
|
87
|
-
|
|
88
|
-
resultingMap.set(key, values[i]);
|
|
87
|
+
resultingMap.set(keys[i], values[i]);
|
|
89
88
|
}
|
|
90
89
|
return resultingMap;
|
|
91
90
|
};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"maps.js","sourceRoot":"","sources":["../../../src/utils/collections/maps.ts"],"names":[],"mappings":";;;;;;
|
|
1
|
+
{"version":3,"file":"maps.js","sourceRoot":"","sources":["../../../src/utils/collections/maps.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export declare function areSetsEqual<T>(a: ReadonlySet<T>, b: ReadonlySet<T>): boolean;
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"sets.js","sourceRoot":"","sources":["../../../src/utils/collections/sets.ts"],"names":[],"mappings":";;AAAA,oCAEC;AAFD,SAAgB,YAAY,CAAI,CAAiB,EAAE,CAAiB;IAClE,OAAO,CAAC,CAAC,IAAI,KAAK,CAAC,CAAC,IAAI,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,CAAC,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC,CAAC;AACpE,CAAC"}
|
|
@@ -1,4 +1,4 @@
|
|
|
1
1
|
import EntityMutationTriggerConfiguration from '../EntityMutationTriggerConfiguration';
|
|
2
2
|
import ReadonlyEntity from '../ReadonlyEntity';
|
|
3
3
|
import ViewerContext from '../ViewerContext';
|
|
4
|
-
export declare function mergeEntityMutationTriggerConfigurations<TFields extends
|
|
4
|
+
export declare function mergeEntityMutationTriggerConfigurations<TFields extends Record<string, any>, TIDField extends keyof NonNullable<Pick<TFields, TSelectedFields>>, TViewerContext extends ViewerContext, TEntity extends ReadonlyEntity<TFields, TIDField, TViewerContext, TSelectedFields>, TSelectedFields extends keyof TFields>(...mutationTriggerConfigurations: EntityMutationTriggerConfiguration<TFields, TIDField, TViewerContext, TEntity, TSelectedFields>[]): EntityMutationTriggerConfiguration<TFields, TIDField, TViewerContext, TEntity, TSelectedFields>;
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@expo/entity",
|
|
3
|
-
"version": "0.
|
|
3
|
+
"version": "0.42.0",
|
|
4
4
|
"description": "A privacy-first data model",
|
|
5
5
|
"files": [
|
|
6
6
|
"build",
|
|
@@ -10,6 +10,7 @@
|
|
|
10
10
|
"types": "build/index.d.ts",
|
|
11
11
|
"scripts": {
|
|
12
12
|
"tsc": "tsc",
|
|
13
|
+
"build": "tsc -b tsconfig.build.json",
|
|
13
14
|
"clean": "rm -rf build coverage coverage-integration",
|
|
14
15
|
"lint": "eslint src",
|
|
15
16
|
"lint-fix": "eslint src --fix",
|
|
@@ -36,7 +37,8 @@
|
|
|
36
37
|
},
|
|
37
38
|
"devDependencies": {
|
|
38
39
|
"@types/invariant": "^2.2.37",
|
|
39
|
-
"@types/jest": "^29.5.
|
|
40
|
+
"@types/jest": "^29.5.14",
|
|
41
|
+
"@types/lodash": "^4.17.16",
|
|
40
42
|
"@types/node": "^20.14.1",
|
|
41
43
|
"@types/uuid": "^8.3.0",
|
|
42
44
|
"ctix": "^2.7.0",
|
|
@@ -44,11 +46,12 @@
|
|
|
44
46
|
"eslint-config-universe": "^14.0.0",
|
|
45
47
|
"eslint-plugin-tsdoc": "^0.3.0",
|
|
46
48
|
"jest": "^29.7.0",
|
|
49
|
+
"lodash": "^4.17.21",
|
|
47
50
|
"prettier": "^3.3.3",
|
|
48
51
|
"prettier-plugin-organize-imports": "^4.1.0",
|
|
49
|
-
"ts-jest": "^29.
|
|
52
|
+
"ts-jest": "^29.3.1",
|
|
50
53
|
"ts-mockito": "^2.6.1",
|
|
51
|
-
"typescript": "^5.
|
|
54
|
+
"typescript": "^5.8.3"
|
|
52
55
|
},
|
|
53
|
-
"gitHead": "
|
|
56
|
+
"gitHead": "8414d96d948882735687da146e84913397cd8368"
|
|
54
57
|
}
|
|
@@ -12,10 +12,10 @@ import ViewerContext from './ViewerContext';
|
|
|
12
12
|
* by foreign keys.
|
|
13
13
|
*/
|
|
14
14
|
export default class AuthorizationResultBasedEntityAssociationLoader<
|
|
15
|
-
TFields extends
|
|
16
|
-
|
|
15
|
+
TFields extends Record<string, any>,
|
|
16
|
+
TIDField extends keyof NonNullable<Pick<TFields, TSelectedFields>>,
|
|
17
17
|
TViewerContext extends ViewerContext,
|
|
18
|
-
TEntity extends ReadonlyEntity<TFields,
|
|
18
|
+
TEntity extends ReadonlyEntity<TFields, TIDField, TViewerContext, TSelectedFields>,
|
|
19
19
|
TSelectedFields extends keyof TFields,
|
|
20
20
|
> {
|
|
21
21
|
constructor(
|
|
@@ -32,16 +32,18 @@ export default class AuthorizationResultBasedEntityAssociationLoader<
|
|
|
32
32
|
async loadAssociatedEntityAsync<
|
|
33
33
|
TIdentifyingField extends keyof Pick<TFields, TSelectedFields>,
|
|
34
34
|
TAssociatedFields extends object,
|
|
35
|
-
|
|
35
|
+
TAssociatedIDField extends keyof NonNullable<
|
|
36
|
+
Pick<TAssociatedFields, TAssociatedSelectedFields>
|
|
37
|
+
>,
|
|
36
38
|
TAssociatedEntity extends ReadonlyEntity<
|
|
37
39
|
TAssociatedFields,
|
|
38
|
-
|
|
40
|
+
TAssociatedIDField,
|
|
39
41
|
TViewerContext,
|
|
40
42
|
TAssociatedSelectedFields
|
|
41
43
|
>,
|
|
42
44
|
TAssociatedPrivacyPolicy extends EntityPrivacyPolicy<
|
|
43
45
|
TAssociatedFields,
|
|
44
|
-
|
|
46
|
+
TAssociatedIDField,
|
|
45
47
|
TViewerContext,
|
|
46
48
|
TAssociatedEntity,
|
|
47
49
|
TAssociatedSelectedFields
|
|
@@ -51,7 +53,7 @@ export default class AuthorizationResultBasedEntityAssociationLoader<
|
|
|
51
53
|
fieldIdentifyingAssociatedEntity: TIdentifyingField,
|
|
52
54
|
associatedEntityClass: IEntityClass<
|
|
53
55
|
TAssociatedFields,
|
|
54
|
-
|
|
56
|
+
TAssociatedIDField,
|
|
55
57
|
TViewerContext,
|
|
56
58
|
TAssociatedEntity,
|
|
57
59
|
TAssociatedPrivacyPolicy,
|
|
@@ -72,8 +74,7 @@ export default class AuthorizationResultBasedEntityAssociationLoader<
|
|
|
72
74
|
.getViewerScopedEntityCompanionForClass(associatedEntityClass)
|
|
73
75
|
.getLoaderFactory()
|
|
74
76
|
.forLoad(this.queryContext, { previousValue: null, cascadingDeleteCause: null });
|
|
75
|
-
|
|
76
|
-
return (await loader.loadByIDAsync(associatedEntityID as unknown as TAssociatedID)) as Result<
|
|
77
|
+
return (await loader.loadByIDAsync(associatedEntityID)) as Result<
|
|
77
78
|
null extends TFields[TIdentifyingField] ? TAssociatedEntity | null : TAssociatedEntity
|
|
78
79
|
>;
|
|
79
80
|
}
|
|
@@ -88,16 +89,18 @@ export default class AuthorizationResultBasedEntityAssociationLoader<
|
|
|
88
89
|
*/
|
|
89
90
|
async loadManyAssociatedEntitiesAsync<
|
|
90
91
|
TAssociatedFields extends object,
|
|
91
|
-
|
|
92
|
+
TAssociatedIDField extends keyof NonNullable<
|
|
93
|
+
Pick<TAssociatedFields, TAssociatedSelectedFields>
|
|
94
|
+
>,
|
|
92
95
|
TAssociatedEntity extends ReadonlyEntity<
|
|
93
96
|
TAssociatedFields,
|
|
94
|
-
|
|
97
|
+
TAssociatedIDField,
|
|
95
98
|
TViewerContext,
|
|
96
99
|
TAssociatedSelectedFields
|
|
97
100
|
>,
|
|
98
101
|
TAssociatedPrivacyPolicy extends EntityPrivacyPolicy<
|
|
99
102
|
TAssociatedFields,
|
|
100
|
-
|
|
103
|
+
TAssociatedIDField,
|
|
101
104
|
TViewerContext,
|
|
102
105
|
TAssociatedEntity,
|
|
103
106
|
TAssociatedSelectedFields
|
|
@@ -106,7 +109,7 @@ export default class AuthorizationResultBasedEntityAssociationLoader<
|
|
|
106
109
|
>(
|
|
107
110
|
associatedEntityClass: IEntityClass<
|
|
108
111
|
TAssociatedFields,
|
|
109
|
-
|
|
112
|
+
TAssociatedIDField,
|
|
110
113
|
TViewerContext,
|
|
111
114
|
TAssociatedEntity,
|
|
112
115
|
TAssociatedPrivacyPolicy,
|
|
@@ -135,16 +138,18 @@ export default class AuthorizationResultBasedEntityAssociationLoader<
|
|
|
135
138
|
*/
|
|
136
139
|
async loadAssociatedEntityByFieldEqualingAsync<
|
|
137
140
|
TAssociatedFields extends object,
|
|
138
|
-
|
|
141
|
+
TAssociatedIDField extends keyof NonNullable<
|
|
142
|
+
Pick<TAssociatedFields, TAssociatedSelectedFields>
|
|
143
|
+
>,
|
|
139
144
|
TAssociatedEntity extends ReadonlyEntity<
|
|
140
145
|
TAssociatedFields,
|
|
141
|
-
|
|
146
|
+
TAssociatedIDField,
|
|
142
147
|
TViewerContext,
|
|
143
148
|
TAssociatedSelectedFields
|
|
144
149
|
>,
|
|
145
150
|
TAssociatedPrivacyPolicy extends EntityPrivacyPolicy<
|
|
146
151
|
TAssociatedFields,
|
|
147
|
-
|
|
152
|
+
TAssociatedIDField,
|
|
148
153
|
TViewerContext,
|
|
149
154
|
TAssociatedEntity,
|
|
150
155
|
TAssociatedSelectedFields
|
|
@@ -154,7 +159,7 @@ export default class AuthorizationResultBasedEntityAssociationLoader<
|
|
|
154
159
|
fieldIdentifyingAssociatedEntity: keyof Pick<TFields, TSelectedFields>,
|
|
155
160
|
associatedEntityClass: IEntityClass<
|
|
156
161
|
TAssociatedFields,
|
|
157
|
-
|
|
162
|
+
TAssociatedIDField,
|
|
158
163
|
TViewerContext,
|
|
159
164
|
TAssociatedEntity,
|
|
160
165
|
TAssociatedPrivacyPolicy,
|
|
@@ -186,16 +191,18 @@ export default class AuthorizationResultBasedEntityAssociationLoader<
|
|
|
186
191
|
*/
|
|
187
192
|
async loadManyAssociatedEntitiesByFieldEqualingAsync<
|
|
188
193
|
TAssociatedFields extends object,
|
|
189
|
-
|
|
194
|
+
TAssociatedIDField extends keyof NonNullable<
|
|
195
|
+
Pick<TAssociatedFields, TAssociatedSelectedFields>
|
|
196
|
+
>,
|
|
190
197
|
TAssociatedEntity extends ReadonlyEntity<
|
|
191
198
|
TAssociatedFields,
|
|
192
|
-
|
|
199
|
+
TAssociatedIDField,
|
|
193
200
|
TViewerContext,
|
|
194
201
|
TAssociatedSelectedFields
|
|
195
202
|
>,
|
|
196
203
|
TAssociatedPrivacyPolicy extends EntityPrivacyPolicy<
|
|
197
204
|
TAssociatedFields,
|
|
198
|
-
|
|
205
|
+
TAssociatedIDField,
|
|
199
206
|
TViewerContext,
|
|
200
207
|
TAssociatedEntity,
|
|
201
208
|
TAssociatedSelectedFields
|
|
@@ -205,7 +212,7 @@ export default class AuthorizationResultBasedEntityAssociationLoader<
|
|
|
205
212
|
fieldIdentifyingAssociatedEntity: keyof Pick<TFields, TSelectedFields>,
|
|
206
213
|
associatedEntityClass: IEntityClass<
|
|
207
214
|
TAssociatedFields,
|
|
208
|
-
|
|
215
|
+
TAssociatedIDField,
|
|
209
216
|
TViewerContext,
|
|
210
217
|
TAssociatedEntity,
|
|
211
218
|
TAssociatedPrivacyPolicy,
|
|
@@ -236,11 +243,11 @@ export default class AuthorizationResultBasedEntityAssociationLoader<
|
|
|
236
243
|
*/
|
|
237
244
|
async loadAssociatedEntityThroughAsync<
|
|
238
245
|
TFields2 extends object,
|
|
239
|
-
|
|
240
|
-
TEntity2 extends ReadonlyEntity<TFields2,
|
|
246
|
+
TIDField2 extends keyof NonNullable<Pick<TFields2, TSelectedFields2>>,
|
|
247
|
+
TEntity2 extends ReadonlyEntity<TFields2, TIDField2, TViewerContext, TSelectedFields2>,
|
|
241
248
|
TPrivacyPolicy2 extends EntityPrivacyPolicy<
|
|
242
249
|
TFields2,
|
|
243
|
-
|
|
250
|
+
TIDField2,
|
|
244
251
|
TViewerContext,
|
|
245
252
|
TEntity2,
|
|
246
253
|
TSelectedFields2
|
|
@@ -252,7 +259,7 @@ export default class AuthorizationResultBasedEntityAssociationLoader<
|
|
|
252
259
|
TViewerContext,
|
|
253
260
|
TFields,
|
|
254
261
|
TFields2,
|
|
255
|
-
|
|
262
|
+
TIDField2,
|
|
256
263
|
TEntity2,
|
|
257
264
|
TPrivacyPolicy2,
|
|
258
265
|
TSelectedFields,
|
|
@@ -268,21 +275,21 @@ export default class AuthorizationResultBasedEntityAssociationLoader<
|
|
|
268
275
|
*/
|
|
269
276
|
async loadAssociatedEntityThroughAsync<
|
|
270
277
|
TFields2 extends object,
|
|
271
|
-
|
|
272
|
-
TEntity2 extends ReadonlyEntity<TFields2,
|
|
278
|
+
TIDField2 extends keyof NonNullable<Pick<TFields2, TSelectedFields2>>,
|
|
279
|
+
TEntity2 extends ReadonlyEntity<TFields2, TIDField2, TViewerContext, TSelectedFields2>,
|
|
273
280
|
TPrivacyPolicy2 extends EntityPrivacyPolicy<
|
|
274
281
|
TFields2,
|
|
275
|
-
|
|
282
|
+
TIDField2,
|
|
276
283
|
TViewerContext,
|
|
277
284
|
TEntity2,
|
|
278
285
|
TSelectedFields2
|
|
279
286
|
>,
|
|
280
287
|
TFields3 extends object,
|
|
281
|
-
|
|
282
|
-
TEntity3 extends ReadonlyEntity<TFields3,
|
|
288
|
+
TIDField3 extends keyof NonNullable<Pick<TFields3, TSelectedFields3>>,
|
|
289
|
+
TEntity3 extends ReadonlyEntity<TFields3, TIDField3, TViewerContext, TSelectedFields3>,
|
|
283
290
|
TPrivacyPolicy3 extends EntityPrivacyPolicy<
|
|
284
291
|
TFields3,
|
|
285
|
-
|
|
292
|
+
TIDField3,
|
|
286
293
|
TViewerContext,
|
|
287
294
|
TEntity3,
|
|
288
295
|
TSelectedFields3
|
|
@@ -295,7 +302,7 @@ export default class AuthorizationResultBasedEntityAssociationLoader<
|
|
|
295
302
|
TViewerContext,
|
|
296
303
|
TFields,
|
|
297
304
|
TFields2,
|
|
298
|
-
|
|
305
|
+
TIDField2,
|
|
299
306
|
TEntity2,
|
|
300
307
|
TPrivacyPolicy2,
|
|
301
308
|
TSelectedFields,
|
|
@@ -305,7 +312,7 @@ export default class AuthorizationResultBasedEntityAssociationLoader<
|
|
|
305
312
|
TViewerContext,
|
|
306
313
|
TFields2,
|
|
307
314
|
TFields3,
|
|
308
|
-
|
|
315
|
+
TIDField3,
|
|
309
316
|
TEntity3,
|
|
310
317
|
TPrivacyPolicy3,
|
|
311
318
|
TSelectedFields2,
|
|
@@ -321,31 +328,31 @@ export default class AuthorizationResultBasedEntityAssociationLoader<
|
|
|
321
328
|
*/
|
|
322
329
|
async loadAssociatedEntityThroughAsync<
|
|
323
330
|
TFields2 extends object,
|
|
324
|
-
|
|
325
|
-
TEntity2 extends ReadonlyEntity<TFields2,
|
|
331
|
+
TIDField2 extends keyof NonNullable<Pick<TFields2, TSelectedFields2>>,
|
|
332
|
+
TEntity2 extends ReadonlyEntity<TFields2, TIDField2, TViewerContext, TSelectedFields2>,
|
|
326
333
|
TPrivacyPolicy2 extends EntityPrivacyPolicy<
|
|
327
334
|
TFields2,
|
|
328
|
-
|
|
335
|
+
TIDField2,
|
|
329
336
|
TViewerContext,
|
|
330
337
|
TEntity2,
|
|
331
338
|
TSelectedFields2
|
|
332
339
|
>,
|
|
333
340
|
TFields3 extends object,
|
|
334
|
-
|
|
335
|
-
TEntity3 extends ReadonlyEntity<TFields3,
|
|
341
|
+
TIDField3 extends keyof NonNullable<Pick<TFields3, TSelectedFields3>>,
|
|
342
|
+
TEntity3 extends ReadonlyEntity<TFields3, TIDField3, TViewerContext, TSelectedFields3>,
|
|
336
343
|
TPrivacyPolicy3 extends EntityPrivacyPolicy<
|
|
337
344
|
TFields3,
|
|
338
|
-
|
|
345
|
+
TIDField3,
|
|
339
346
|
TViewerContext,
|
|
340
347
|
TEntity3,
|
|
341
348
|
TSelectedFields3
|
|
342
349
|
>,
|
|
343
350
|
TFields4 extends object,
|
|
344
|
-
|
|
345
|
-
TEntity4 extends ReadonlyEntity<TFields4,
|
|
351
|
+
TIDField4 extends keyof NonNullable<Pick<TFields4, TSelectedFields4>>,
|
|
352
|
+
TEntity4 extends ReadonlyEntity<TFields4, TIDField4, TViewerContext, TSelectedFields4>,
|
|
346
353
|
TPrivacyPolicy4 extends EntityPrivacyPolicy<
|
|
347
354
|
TFields4,
|
|
348
|
-
|
|
355
|
+
TIDField4,
|
|
349
356
|
TViewerContext,
|
|
350
357
|
TEntity4,
|
|
351
358
|
TSelectedFields4
|
|
@@ -359,7 +366,7 @@ export default class AuthorizationResultBasedEntityAssociationLoader<
|
|
|
359
366
|
TViewerContext,
|
|
360
367
|
TFields,
|
|
361
368
|
TFields2,
|
|
362
|
-
|
|
369
|
+
TIDField2,
|
|
363
370
|
TEntity2,
|
|
364
371
|
TPrivacyPolicy2,
|
|
365
372
|
TSelectedFields,
|
|
@@ -369,7 +376,7 @@ export default class AuthorizationResultBasedEntityAssociationLoader<
|
|
|
369
376
|
TViewerContext,
|
|
370
377
|
TFields2,
|
|
371
378
|
TFields3,
|
|
372
|
-
|
|
379
|
+
TIDField3,
|
|
373
380
|
TEntity3,
|
|
374
381
|
TPrivacyPolicy3,
|
|
375
382
|
TSelectedFields2,
|
|
@@ -379,7 +386,7 @@ export default class AuthorizationResultBasedEntityAssociationLoader<
|
|
|
379
386
|
TViewerContext,
|
|
380
387
|
TFields3,
|
|
381
388
|
TFields4,
|
|
382
|
-
|
|
389
|
+
TIDField4,
|
|
383
390
|
TEntity4,
|
|
384
391
|
TPrivacyPolicy4,
|
|
385
392
|
TSelectedFields3,
|
|
@@ -448,16 +455,16 @@ export interface EntityLoadThroughDirective<
|
|
|
448
455
|
TViewerContext extends ViewerContext,
|
|
449
456
|
TFields,
|
|
450
457
|
TAssociatedFields extends object,
|
|
451
|
-
|
|
458
|
+
TAssociatedIDField extends keyof NonNullable<Pick<TAssociatedFields, TAssociatedSelectedFields>>,
|
|
452
459
|
TAssociatedEntity extends ReadonlyEntity<
|
|
453
460
|
TAssociatedFields,
|
|
454
|
-
|
|
461
|
+
TAssociatedIDField,
|
|
455
462
|
TViewerContext,
|
|
456
463
|
TAssociatedSelectedFields
|
|
457
464
|
>,
|
|
458
465
|
TAssociatedPrivacyPolicy extends EntityPrivacyPolicy<
|
|
459
466
|
TAssociatedFields,
|
|
460
|
-
|
|
467
|
+
TAssociatedIDField,
|
|
461
468
|
TViewerContext,
|
|
462
469
|
TAssociatedEntity,
|
|
463
470
|
TAssociatedSelectedFields
|
|
@@ -470,7 +477,7 @@ export interface EntityLoadThroughDirective<
|
|
|
470
477
|
*/
|
|
471
478
|
associatedEntityClass: IEntityClass<
|
|
472
479
|
TAssociatedFields,
|
|
473
|
-
|
|
480
|
+
TAssociatedIDField,
|
|
474
481
|
TViewerContext,
|
|
475
482
|
TAssociatedEntity,
|
|
476
483
|
TAssociatedPrivacyPolicy,
|