@expo/entity 0.45.0 → 0.47.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 → src/AuthorizationResultBasedEntityAssociationLoader.d.ts} +4 -4
- package/build/{AuthorizationResultBasedEntityAssociationLoader.js → src/AuthorizationResultBasedEntityAssociationLoader.js} +2 -1
- package/build/src/AuthorizationResultBasedEntityAssociationLoader.js.map +1 -0
- package/build/{AuthorizationResultBasedEntityLoader.d.ts → src/AuthorizationResultBasedEntityLoader.d.ts} +8 -8
- package/build/{AuthorizationResultBasedEntityLoader.js → src/AuthorizationResultBasedEntityLoader.js} +6 -5
- package/build/src/AuthorizationResultBasedEntityLoader.js.map +1 -0
- package/build/{AuthorizationResultBasedEntityMutator.d.ts → src/AuthorizationResultBasedEntityMutator.d.ts} +15 -13
- package/build/{AuthorizationResultBasedEntityMutator.js → src/AuthorizationResultBasedEntityMutator.js} +77 -39
- package/build/src/AuthorizationResultBasedEntityMutator.js.map +1 -0
- package/build/{ComposedEntityCacheAdapter.d.ts → src/ComposedEntityCacheAdapter.d.ts} +2 -2
- package/build/{ComposedEntityCacheAdapter.js → src/ComposedEntityCacheAdapter.js} +2 -1
- package/build/src/ComposedEntityCacheAdapter.js.map +1 -0
- package/build/{ComposedSecondaryEntityCache.d.ts → src/ComposedSecondaryEntityCache.d.ts} +1 -1
- package/build/{ComposedSecondaryEntityCache.js → src/ComposedSecondaryEntityCache.js} +2 -1
- package/build/src/ComposedSecondaryEntityCache.js.map +1 -0
- package/build/{EnforcingEntityAssociationLoader.d.ts → src/EnforcingEntityAssociationLoader.d.ts} +5 -5
- package/build/{EnforcingEntityAssociationLoader.js → src/EnforcingEntityAssociationLoader.js} +2 -1
- package/build/src/EnforcingEntityAssociationLoader.js.map +1 -0
- package/build/{EnforcingEntityCreator.d.ts → src/EnforcingEntityCreator.d.ts} +4 -4
- package/build/{EnforcingEntityCreator.js → src/EnforcingEntityCreator.js} +2 -1
- package/build/src/EnforcingEntityCreator.js.map +1 -0
- package/build/{EnforcingEntityDeleter.d.ts → src/EnforcingEntityDeleter.d.ts} +4 -4
- package/build/{EnforcingEntityDeleter.js → src/EnforcingEntityDeleter.js} +2 -1
- package/build/src/EnforcingEntityDeleter.js.map +1 -0
- package/build/{EnforcingEntityLoader.d.ts → src/EnforcingEntityLoader.d.ts} +5 -5
- package/build/{EnforcingEntityLoader.js → src/EnforcingEntityLoader.js} +2 -1
- package/build/src/EnforcingEntityLoader.js.map +1 -0
- package/build/{EnforcingEntityUpdater.d.ts → src/EnforcingEntityUpdater.d.ts} +4 -4
- package/build/{EnforcingEntityUpdater.js → src/EnforcingEntityUpdater.js} +2 -1
- package/build/src/EnforcingEntityUpdater.js.map +1 -0
- package/build/{Entity.d.ts → src/Entity.d.ts} +7 -7
- package/build/{Entity.js → src/Entity.js} +13 -15
- package/build/src/Entity.js.map +1 -0
- package/build/{EntityAssociationLoader.d.ts → src/EntityAssociationLoader.d.ts} +5 -5
- package/build/{EntityAssociationLoader.js → src/EntityAssociationLoader.js} +6 -8
- package/build/src/EntityAssociationLoader.js.map +1 -0
- package/build/{EntityCompanion.d.ts → src/EntityCompanion.d.ts} +10 -10
- package/build/{EntityCompanion.js → src/EntityCompanion.js} +6 -8
- package/build/src/EntityCompanion.js.map +1 -0
- package/build/{EntityCompanionProvider.d.ts → src/EntityCompanionProvider.d.ts} +12 -12
- package/build/{EntityCompanionProvider.js → src/EntityCompanionProvider.js} +6 -5
- package/build/src/EntityCompanionProvider.js.map +1 -0
- package/build/{EntityConfiguration.d.ts → src/EntityConfiguration.d.ts} +2 -2
- package/build/{EntityConfiguration.js → src/EntityConfiguration.js} +2 -2
- package/build/src/EntityConfiguration.js.map +1 -0
- package/build/{EntityCreator.d.ts → src/EntityCreator.d.ts} +5 -5
- package/build/{EntityCreator.js → src/EntityCreator.js} +4 -6
- package/build/{EntityCreator.js.map → src/EntityCreator.js.map} +1 -1
- package/build/{EntityDatabaseAdapter.d.ts → src/EntityDatabaseAdapter.d.ts} +2 -2
- package/build/{EntityDatabaseAdapter.js → src/EntityDatabaseAdapter.js} +2 -2
- package/build/src/EntityDatabaseAdapter.js.map +1 -0
- package/build/{EntityDeleter.d.ts → src/EntityDeleter.d.ts} +5 -5
- package/build/{EntityDeleter.js → src/EntityDeleter.js} +5 -7
- package/build/{EntityDeleter.js.map → src/EntityDeleter.js.map} +1 -1
- package/build/{EntityFieldDefinition.d.ts → src/EntityFieldDefinition.d.ts} +3 -3
- package/build/src/EntityFieldDefinition.js.map +1 -0
- package/build/{EntityFields.d.ts → src/EntityFields.d.ts} +7 -0
- package/build/{EntityFields.js → src/EntityFields.js} +11 -1
- package/build/src/EntityFields.js.map +1 -0
- package/build/{EntityLoader.d.ts → src/EntityLoader.d.ts} +7 -7
- package/build/{EntityLoader.js → src/EntityLoader.js} +4 -6
- package/build/{EntityLoader.js.map → src/EntityLoader.js.map} +1 -1
- package/build/{EntityLoaderFactory.d.ts → src/EntityLoaderFactory.d.ts} +8 -8
- package/build/src/EntityLoaderFactory.js +29 -0
- package/build/src/EntityLoaderFactory.js.map +1 -0
- package/build/{EntityLoaderUtils.d.ts → src/EntityLoaderUtils.d.ts} +7 -7
- package/build/{EntityLoaderUtils.js → src/EntityLoaderUtils.js} +2 -1
- package/build/src/EntityLoaderUtils.js.map +1 -0
- package/build/{EntityMutationInfo.d.ts → src/EntityMutationInfo.d.ts} +2 -2
- package/build/src/EntityMutationInfo.js.map +1 -0
- package/build/{EntityMutationTriggerConfiguration.d.ts → src/EntityMutationTriggerConfiguration.d.ts} +3 -3
- package/build/src/EntityMutationTriggerConfiguration.js.map +1 -0
- package/build/{EntityMutationValidator.d.ts → src/EntityMutationValidator.d.ts} +3 -3
- package/build/{EntityMutationValidator.js → src/EntityMutationValidator.js} +2 -1
- package/build/src/EntityMutationValidator.js.map +1 -0
- package/build/{EntityMutatorFactory.d.ts → src/EntityMutatorFactory.d.ts} +15 -14
- package/build/{EntityMutatorFactory.js → src/EntityMutatorFactory.js} +6 -5
- package/build/src/EntityMutatorFactory.js.map +1 -0
- package/build/{EntityPrivacyPolicy.d.ts → src/EntityPrivacyPolicy.d.ts} +6 -6
- package/build/{EntityPrivacyPolicy.js → src/EntityPrivacyPolicy.js} +8 -11
- package/build/{EntityPrivacyPolicy.js.map → src/EntityPrivacyPolicy.js.map} +1 -1
- package/build/{EntityQueryContext.d.ts → src/EntityQueryContext.d.ts} +1 -1
- package/build/src/EntityQueryContext.js.map +1 -0
- package/build/{EntityQueryContextProvider.d.ts → src/EntityQueryContextProvider.d.ts} +2 -2
- package/build/{EntityQueryContextProvider.js → src/EntityQueryContextProvider.js} +2 -1
- package/build/src/EntityQueryContextProvider.js.map +1 -0
- package/build/{EntitySecondaryCacheLoader.d.ts → src/EntitySecondaryCacheLoader.d.ts} +5 -5
- package/build/{EntitySecondaryCacheLoader.js → src/EntitySecondaryCacheLoader.js} +2 -1
- package/build/src/EntitySecondaryCacheLoader.js.map +1 -0
- package/build/{EntityUpdater.d.ts → src/EntityUpdater.d.ts} +5 -5
- package/build/{EntityUpdater.js → src/EntityUpdater.js} +5 -7
- package/build/{EntityUpdater.js.map → src/EntityUpdater.js.map} +1 -1
- package/build/{GenericEntityCacheAdapter.d.ts → src/GenericEntityCacheAdapter.d.ts} +3 -3
- package/build/{GenericEntityCacheAdapter.js → src/GenericEntityCacheAdapter.js} +2 -1
- package/build/src/GenericEntityCacheAdapter.js.map +1 -0
- package/build/{GenericSecondaryEntityCache.d.ts → src/GenericSecondaryEntityCache.d.ts} +2 -2
- package/build/{GenericSecondaryEntityCache.js → src/GenericSecondaryEntityCache.js} +2 -1
- package/build/src/GenericSecondaryEntityCache.js.map +1 -0
- package/build/{IEntityCacheAdapter.d.ts → src/IEntityCacheAdapter.d.ts} +1 -1
- package/build/src/IEntityCacheAdapter.js.map +1 -0
- package/build/{IEntityCacheAdapterProvider.d.ts → src/IEntityCacheAdapterProvider.d.ts} +3 -3
- package/build/src/IEntityCacheAdapterProvider.js.map +1 -0
- package/build/{IEntityDatabaseAdapterProvider.d.ts → src/IEntityDatabaseAdapterProvider.d.ts} +3 -3
- package/build/src/IEntityDatabaseAdapterProvider.js.map +1 -0
- package/build/{IEntityGenericCacher.d.ts → src/IEntityGenericCacher.d.ts} +1 -1
- package/build/src/IEntityGenericCacher.js.map +1 -0
- package/build/{ReadonlyEntity.d.ts → src/ReadonlyEntity.d.ts} +8 -8
- package/build/{ReadonlyEntity.js → src/ReadonlyEntity.js} +9 -8
- package/build/src/ReadonlyEntity.js.map +1 -0
- package/build/{ViewerContext.d.ts → src/ViewerContext.d.ts} +5 -5
- package/build/{ViewerContext.js → src/ViewerContext.js} +4 -6
- package/build/{ViewerContext.js.map → src/ViewerContext.js.map} +1 -1
- package/build/{ViewerScopedEntityCompanion.d.ts → src/ViewerScopedEntityCompanion.d.ts} +9 -9
- package/build/{ViewerScopedEntityCompanion.js → src/ViewerScopedEntityCompanion.js} +6 -8
- package/build/{ViewerScopedEntityCompanion.js.map → src/ViewerScopedEntityCompanion.js.map} +1 -1
- package/build/{ViewerScopedEntityCompanionProvider.d.ts → src/ViewerScopedEntityCompanionProvider.d.ts} +6 -6
- package/build/{ViewerScopedEntityCompanionProvider.js → src/ViewerScopedEntityCompanionProvider.js} +4 -6
- package/build/src/ViewerScopedEntityCompanionProvider.js.map +1 -0
- package/build/{ViewerScopedEntityLoaderFactory.d.ts → src/ViewerScopedEntityLoaderFactory.d.ts} +6 -6
- package/build/{ViewerScopedEntityLoaderFactory.js → src/ViewerScopedEntityLoaderFactory.js} +2 -1
- package/build/src/ViewerScopedEntityLoaderFactory.js.map +1 -0
- package/build/{ViewerScopedEntityMutatorFactory.d.ts → src/ViewerScopedEntityMutatorFactory.d.ts} +9 -8
- package/build/{ViewerScopedEntityMutatorFactory.js → src/ViewerScopedEntityMutatorFactory.js} +6 -5
- package/build/src/ViewerScopedEntityMutatorFactory.js.map +1 -0
- package/build/src/entityUtils.js.map +1 -0
- package/build/{errors → src/errors}/EntityCacheAdapterError.d.ts +2 -2
- package/build/src/errors/EntityCacheAdapterError.js +13 -0
- package/build/src/errors/EntityCacheAdapterError.js.map +1 -0
- package/build/{errors → src/errors}/EntityDatabaseAdapterError.d.ts +2 -2
- package/build/{errors → src/errors}/EntityDatabaseAdapterError.js +4 -37
- package/build/src/errors/EntityDatabaseAdapterError.js.map +1 -0
- package/build/{errors → src/errors}/EntityError.d.ts +1 -1
- package/build/{errors → src/errors}/EntityError.js +2 -2
- package/build/src/errors/EntityError.js.map +1 -0
- package/build/{errors → src/errors}/EntityInvalidFieldValueError.d.ts +5 -5
- package/build/src/errors/EntityInvalidFieldValueError.js +13 -0
- package/build/src/errors/EntityInvalidFieldValueError.js.map +1 -0
- package/build/{errors → src/errors}/EntityNotAuthorizedError.d.ts +4 -4
- package/build/src/errors/EntityNotAuthorizedError.js +16 -0
- package/build/src/errors/EntityNotAuthorizedError.js.map +1 -0
- package/build/{errors → src/errors}/EntityNotFoundError.d.ts +5 -5
- package/build/src/errors/EntityNotFoundError.js +18 -0
- package/build/src/errors/EntityNotFoundError.js.map +1 -0
- package/build/src/index.d.ts +76 -0
- package/build/src/index.js +94 -0
- package/build/src/index.js.map +1 -0
- package/build/{internal → src/internal}/CompositeFieldHolder.d.ts +1 -1
- package/build/src/internal/CompositeFieldHolder.js.map +1 -0
- package/build/src/internal/CompositeFieldValueMap.js.map +1 -0
- package/build/{internal → src/internal}/EntityDataManager.d.ts +5 -5
- package/build/{internal → src/internal}/EntityDataManager.js +2 -1
- package/build/src/internal/EntityDataManager.js.map +1 -0
- package/build/{internal → src/internal}/EntityFieldTransformationUtils.d.ts +1 -1
- package/build/src/internal/EntityFieldTransformationUtils.js.map +1 -0
- package/build/{internal → src/internal}/EntityLoadInterfaces.d.ts +1 -1
- package/build/src/internal/EntityLoadInterfaces.js.map +1 -0
- package/build/{internal → src/internal}/EntityTableDataCoordinator.d.ts +9 -9
- package/build/{internal → src/internal}/EntityTableDataCoordinator.js +5 -7
- package/build/{internal → src/internal}/EntityTableDataCoordinator.js.map +1 -1
- package/build/{internal → src/internal}/ReadThroughEntityCache.d.ts +3 -3
- package/build/{internal → src/internal}/ReadThroughEntityCache.js +2 -2
- package/build/src/internal/ReadThroughEntityCache.js.map +1 -0
- package/build/{internal → src/internal}/SingleFieldHolder.d.ts +1 -1
- package/build/src/internal/SingleFieldHolder.js.map +1 -0
- package/build/{metrics → src/metrics}/EntityMetricsUtils.d.ts +1 -1
- package/build/src/metrics/EntityMetricsUtils.js.map +1 -0
- package/build/{metrics → src/metrics}/IEntityMetricsAdapter.d.ts +1 -1
- package/build/src/metrics/IEntityMetricsAdapter.js.map +1 -0
- package/build/{metrics → src/metrics}/NoOpEntityMetricsAdapter.d.ts +2 -2
- package/build/{metrics → src/metrics}/NoOpEntityMetricsAdapter.js +2 -1
- package/build/src/metrics/NoOpEntityMetricsAdapter.js.map +1 -0
- package/build/{rules → src/rules}/AlwaysAllowPrivacyPolicyRule.d.ts +4 -4
- package/build/src/rules/AlwaysAllowPrivacyPolicyRule.js +14 -0
- package/build/src/rules/AlwaysAllowPrivacyPolicyRule.js.map +1 -0
- package/build/{rules → src/rules}/AlwaysDenyPrivacyPolicyRule.d.ts +4 -4
- package/build/src/rules/AlwaysDenyPrivacyPolicyRule.js +14 -0
- package/build/src/rules/AlwaysDenyPrivacyPolicyRule.js.map +1 -0
- package/build/{rules → src/rules}/AlwaysSkipPrivacyPolicyRule.d.ts +4 -4
- package/build/src/rules/AlwaysSkipPrivacyPolicyRule.js +14 -0
- package/build/src/rules/AlwaysSkipPrivacyPolicyRule.js.map +1 -0
- package/build/{rules → src/rules}/PrivacyPolicyRule.d.ts +3 -3
- package/build/{rules → src/rules}/PrivacyPolicyRule.js +2 -2
- package/build/src/rules/PrivacyPolicyRule.js.map +1 -0
- package/build/{utils → src/utils}/EntityCreationUtils.d.ts +3 -3
- package/build/{utils → src/utils}/EntityCreationUtils.js +2 -5
- package/build/{utils → src/utils}/EntityCreationUtils.js.map +1 -1
- package/build/{utils → src/utils}/EntityPrivacyUtils.d.ts +4 -4
- package/build/{utils → src/utils}/EntityPrivacyUtils.js +4 -7
- package/build/{utils → src/utils}/EntityPrivacyUtils.js.map +1 -1
- package/build/src/utils/collections/SerializableKeyMap.js.map +1 -0
- package/build/src/utils/collections/maps.js.map +1 -0
- package/build/src/utils/collections/sets.js.map +1 -0
- package/build/{utils → src/utils}/mergeEntityMutationTriggerConfigurations.d.ts +3 -3
- package/build/src/utils/mergeEntityMutationTriggerConfigurations.js.map +1 -0
- package/package.json +14 -24
- package/src/AuthorizationResultBasedEntityAssociationLoader.ts +4 -4
- package/src/AuthorizationResultBasedEntityLoader.ts +13 -12
- package/src/AuthorizationResultBasedEntityMutator.ts +78 -63
- package/src/ComposedEntityCacheAdapter.ts +3 -3
- package/src/ComposedSecondaryEntityCache.ts +1 -1
- package/src/EnforcingEntityAssociationLoader.ts +6 -5
- package/src/EnforcingEntityCreator.ts +4 -4
- package/src/EnforcingEntityDeleter.ts +4 -4
- package/src/EnforcingEntityLoader.ts +5 -5
- package/src/EnforcingEntityUpdater.ts +4 -4
- package/src/Entity.ts +10 -10
- package/src/EntityAssociationLoader.ts +5 -5
- package/src/EntityCompanion.ts +10 -10
- package/src/EntityCompanionProvider.ts +13 -13
- package/src/EntityConfiguration.ts +3 -3
- package/src/EntityCreator.ts +5 -5
- package/src/EntityDatabaseAdapter.ts +3 -3
- package/src/EntityDeleter.ts +6 -6
- package/src/EntityFieldDefinition.ts +3 -3
- package/src/EntityFields.ts +13 -0
- package/src/EntityLoader.ts +7 -7
- package/src/EntityLoaderFactory.ts +9 -9
- package/src/EntityLoaderUtils.ts +7 -7
- package/src/EntityMutationInfo.ts +2 -2
- package/src/EntityMutationTriggerConfiguration.ts +3 -3
- package/src/EntityMutationValidator.ts +3 -3
- package/src/EntityMutatorFactory.ts +17 -12
- package/src/EntityPrivacyPolicy.ts +7 -6
- package/src/EntityQueryContext.ts +1 -1
- package/src/EntityQueryContextProvider.ts +3 -3
- package/src/EntitySecondaryCacheLoader.ts +5 -5
- package/src/EntityUpdater.ts +6 -6
- package/src/GenericEntityCacheAdapter.ts +3 -3
- package/src/GenericSecondaryEntityCache.ts +2 -2
- package/src/IEntityCacheAdapter.ts +1 -1
- package/src/IEntityCacheAdapterProvider.ts +3 -3
- package/src/IEntityDatabaseAdapterProvider.ts +3 -3
- package/src/IEntityGenericCacher.ts +1 -1
- package/src/ReadonlyEntity.ts +10 -10
- package/src/ViewerContext.ts +6 -6
- package/src/ViewerScopedEntityCompanion.ts +9 -9
- package/src/ViewerScopedEntityCompanionProvider.ts +6 -6
- package/src/ViewerScopedEntityLoaderFactory.ts +6 -6
- package/src/ViewerScopedEntityMutatorFactory.ts +11 -8
- package/src/__tests__/AuthorizationResultBasedEntityAssociationLoader-test.ts +5 -4
- package/src/__tests__/AuthorizationResultBasedEntityLoader-constructor-test.ts +14 -18
- package/src/__tests__/AuthorizationResultBasedEntityLoader-test.ts +18 -16
- package/src/__tests__/ComposedCacheAdapter-test.ts +5 -3
- package/src/__tests__/ComposedSecondaryEntityCache-test.ts +2 -1
- package/src/__tests__/EnforcingEntityAssociationLoader-test.ts +4 -3
- package/src/__tests__/EnforcingEntityLoader-test.ts +4 -3
- package/src/__tests__/Entity-test.ts +8 -6
- package/src/__tests__/EntityAssociationLoader-test.ts +7 -5
- package/src/__tests__/EntityCommonUseCases-test.ts +10 -9
- package/src/__tests__/EntityCompanion-test.ts +13 -11
- package/src/__tests__/EntityCompanionProvider-test.ts +7 -5
- package/src/__tests__/EntityConfiguration-test.ts +3 -1
- package/src/__tests__/EntityDatabaseAdapter-test.ts +9 -7
- package/src/__tests__/EntityEdges-test.ts +10 -8
- package/src/__tests__/EntityFields-test.ts +15 -7
- package/src/__tests__/EntityLoader-test.ts +8 -6
- package/src/__tests__/EntityMutator-MutationCacheConsistency-test.ts +8 -6
- package/src/__tests__/EntityMutator-SingleCompositeFieldCacheConsistency-test.ts +5 -3
- package/src/__tests__/EntityMutator-test.ts +250 -45
- package/src/__tests__/EntityPrivacyPolicy-test.ts +19 -16
- package/src/__tests__/EntityQueryContext-test.ts +7 -6
- package/src/__tests__/EntitySecondaryCacheLoader-test.ts +5 -3
- package/src/__tests__/EntitySelfReferentialEdges-test.ts +7 -5
- package/src/__tests__/GenericEntityCacheAdapter-test.ts +4 -3
- package/src/__tests__/ReadonlyEntity-test.ts +10 -9
- package/src/__tests__/ViewerContext-test.ts +3 -1
- package/src/__tests__/ViewerScopedEntityCompanion-test.ts +10 -8
- package/src/__tests__/ViewerScopedEntityCompanionProvider-test.ts +7 -6
- package/src/__tests__/ViewerScopedEntityLoaderFactory-test.ts +5 -4
- package/src/__tests__/ViewerScopedEntityMutatorFactory-test.ts +8 -6
- package/src/__tests__/cases/TwoEntitySameTableDisjointRows-test.ts +15 -13
- package/src/__tests__/cases/TwoEntitySameTableOverlappingRows-test.ts +7 -5
- package/src/__tests__/entityUtils-test.ts +3 -2
- package/src/errors/EntityCacheAdapterError.ts +2 -2
- package/src/errors/EntityDatabaseAdapterError.ts +2 -2
- package/src/errors/EntityError.ts +1 -1
- package/src/errors/EntityInvalidFieldValueError.ts +5 -5
- package/src/errors/EntityNotAuthorizedError.ts +4 -4
- package/src/errors/EntityNotFoundError.ts +5 -5
- package/src/errors/__tests__/EntityDatabaseAdapterError-test.ts +6 -3
- package/src/index.ts +39 -54
- package/src/internal/CompositeFieldHolder.ts +2 -1
- package/src/internal/EntityDataManager.ts +7 -5
- package/src/internal/EntityFieldTransformationUtils.ts +1 -1
- package/src/internal/EntityLoadInterfaces.ts +1 -1
- package/src/internal/EntityTableDataCoordinator.ts +10 -10
- package/src/internal/ReadThroughEntityCache.ts +3 -3
- package/src/internal/SingleFieldHolder.ts +1 -1
- package/src/internal/__tests__/CompositeFieldHolder-test.ts +2 -0
- package/src/internal/__tests__/CompositeFieldValueMap-test.ts +2 -0
- package/src/internal/__tests__/EntityDataManager-test.ts +34 -31
- package/src/internal/__tests__/EntityFieldTransformationUtils-test.ts +5 -3
- package/src/internal/__tests__/ReadThroughEntityCache-test.ts +5 -4
- package/src/metrics/EntityMetricsUtils.ts +3 -2
- package/src/metrics/IEntityMetricsAdapter.ts +1 -1
- package/src/metrics/NoOpEntityMetricsAdapter.ts +3 -2
- package/src/rules/AlwaysAllowPrivacyPolicyRule.ts +4 -4
- package/src/rules/AlwaysDenyPrivacyPolicyRule.ts +4 -4
- package/src/rules/AlwaysSkipPrivacyPolicyRule.ts +4 -4
- package/src/rules/PrivacyPolicyRule.ts +3 -3
- package/src/rules/__tests__/AlwaysAllowPrivacyPolicyRule-test.ts +3 -3
- package/src/rules/__tests__/AlwaysDenyPrivacyPolicyRule-test.ts +3 -3
- package/src/rules/__tests__/AlwaysSkipPrivacyPolicyRule-test.ts +3 -3
- package/src/utils/EntityCreationUtils.ts +4 -4
- package/src/utils/EntityPrivacyUtils.ts +5 -5
- package/src/utils/__testfixtures__/PrivacyPolicyRuleTestUtils.ts +5 -3
- package/src/utils/__testfixtures__/SimpleTestEntity.ts +6 -6
- package/src/utils/__testfixtures__/StubCacheAdapter.ts +4 -4
- package/src/utils/__testfixtures__/StubDatabaseAdapter.ts +8 -7
- package/src/utils/__testfixtures__/StubDatabaseAdapterProvider.ts +5 -5
- package/src/utils/__testfixtures__/StubQueryContextProvider.ts +2 -2
- package/src/utils/__testfixtures__/TestEntity.ts +7 -7
- package/src/utils/__testfixtures__/TestEntity2.ts +6 -6
- package/src/utils/__testfixtures__/TestEntityWithMutationTriggers.ts +6 -10
- package/src/utils/__testfixtures__/TestViewerContext.ts +2 -2
- package/src/utils/__testfixtures__/createUnitTestEntityCompanionProvider.ts +5 -5
- package/src/utils/__testfixtures__/describeFieldTestCase.ts +3 -1
- package/src/utils/__tests__/EntityCreationUtils-test.ts +5 -3
- package/src/utils/__tests__/EntityPrivacyUtils-test.ts +15 -13
- package/src/utils/__tests__/canViewerDeleteAsync-edgeDeletionPermissionInferenceBehavior-test.ts +10 -8
- package/src/utils/__tests__/mergeEntityMutationTriggerConfigurations-test.ts +2 -0
- package/src/utils/collections/__tests__/SerializableKeyMap-test.ts +2 -0
- package/src/utils/collections/__tests__/maps-test.ts +3 -1
- package/src/utils/collections/__tests__/sets-test.ts +2 -0
- package/src/utils/mergeEntityMutationTriggerConfigurations.ts +3 -3
- package/LICENSE +0 -21
- package/build/AuthorizationResultBasedEntityAssociationLoader.js.map +0 -1
- package/build/AuthorizationResultBasedEntityLoader.js.map +0 -1
- package/build/AuthorizationResultBasedEntityMutator.js.map +0 -1
- package/build/ComposedEntityCacheAdapter.js.map +0 -1
- package/build/ComposedSecondaryEntityCache.js.map +0 -1
- package/build/EnforcingEntityAssociationLoader.js.map +0 -1
- package/build/EnforcingEntityCreator.js.map +0 -1
- package/build/EnforcingEntityDeleter.js.map +0 -1
- package/build/EnforcingEntityLoader.js.map +0 -1
- package/build/EnforcingEntityUpdater.js.map +0 -1
- package/build/Entity.js.map +0 -1
- package/build/EntityAssociationLoader.js.map +0 -1
- package/build/EntityCompanion.js.map +0 -1
- package/build/EntityCompanionProvider.js.map +0 -1
- package/build/EntityConfiguration.js.map +0 -1
- package/build/EntityDatabaseAdapter.js.map +0 -1
- package/build/EntityFieldDefinition.js.map +0 -1
- package/build/EntityFields.js.map +0 -1
- package/build/EntityLoaderFactory.js +0 -31
- package/build/EntityLoaderFactory.js.map +0 -1
- package/build/EntityLoaderUtils.js.map +0 -1
- package/build/EntityMutationInfo.js.map +0 -1
- package/build/EntityMutationTriggerConfiguration.js.map +0 -1
- package/build/EntityMutationValidator.js.map +0 -1
- package/build/EntityMutatorFactory.js.map +0 -1
- package/build/EntityQueryContext.js.map +0 -1
- package/build/EntityQueryContextProvider.js.map +0 -1
- package/build/EntitySecondaryCacheLoader.js.map +0 -1
- package/build/GenericEntityCacheAdapter.js.map +0 -1
- package/build/GenericSecondaryEntityCache.js.map +0 -1
- package/build/IEntityCacheAdapter.js.map +0 -1
- package/build/IEntityCacheAdapterProvider.js.map +0 -1
- package/build/IEntityDatabaseAdapterProvider.js.map +0 -1
- package/build/IEntityGenericCacher.js.map +0 -1
- package/build/ReadonlyEntity.js.map +0 -1
- package/build/ViewerScopedEntityCompanionProvider.js.map +0 -1
- package/build/ViewerScopedEntityLoaderFactory.js.map +0 -1
- package/build/ViewerScopedEntityMutatorFactory.js.map +0 -1
- package/build/entityUtils.js.map +0 -1
- package/build/errors/EntityCacheAdapterError.js +0 -46
- package/build/errors/EntityCacheAdapterError.js.map +0 -1
- package/build/errors/EntityDatabaseAdapterError.js.map +0 -1
- package/build/errors/EntityError.js.map +0 -1
- package/build/errors/EntityInvalidFieldValueError.js +0 -45
- package/build/errors/EntityInvalidFieldValueError.js.map +0 -1
- package/build/errors/EntityNotAuthorizedError.js +0 -48
- package/build/errors/EntityNotAuthorizedError.js.map +0 -1
- package/build/errors/EntityNotFoundError.js +0 -50
- package/build/errors/EntityNotFoundError.js.map +0 -1
- package/build/index.d.ts +0 -91
- package/build/index.js +0 -155
- package/build/index.js.map +0 -1
- package/build/internal/CompositeFieldHolder.js.map +0 -1
- package/build/internal/CompositeFieldValueMap.js.map +0 -1
- package/build/internal/EntityDataManager.js.map +0 -1
- package/build/internal/EntityFieldTransformationUtils.js.map +0 -1
- package/build/internal/EntityLoadInterfaces.js.map +0 -1
- package/build/internal/ReadThroughEntityCache.js.map +0 -1
- package/build/internal/SingleFieldHolder.js.map +0 -1
- package/build/metrics/EntityMetricsUtils.js.map +0 -1
- package/build/metrics/IEntityMetricsAdapter.js.map +0 -1
- package/build/metrics/NoOpEntityMetricsAdapter.js.map +0 -1
- package/build/rules/AlwaysAllowPrivacyPolicyRule.js +0 -46
- package/build/rules/AlwaysAllowPrivacyPolicyRule.js.map +0 -1
- package/build/rules/AlwaysDenyPrivacyPolicyRule.js +0 -46
- package/build/rules/AlwaysDenyPrivacyPolicyRule.js.map +0 -1
- package/build/rules/AlwaysSkipPrivacyPolicyRule.js +0 -46
- package/build/rules/AlwaysSkipPrivacyPolicyRule.js.map +0 -1
- package/build/rules/PrivacyPolicyRule.js.map +0 -1
- package/build/tsconfig.build.tsbuildinfo +0 -1
- package/build/utils/collections/SerializableKeyMap.js.map +0 -1
- package/build/utils/collections/maps.js.map +0 -1
- package/build/utils/collections/sets.js.map +0 -1
- package/build/utils/mergeEntityMutationTriggerConfigurations.js.map +0 -1
- /package/build/{EntityFieldDefinition.js → src/EntityFieldDefinition.js} +0 -0
- /package/build/{EntityMutationInfo.js → src/EntityMutationInfo.js} +0 -0
- /package/build/{EntityMutationTriggerConfiguration.js → src/EntityMutationTriggerConfiguration.js} +0 -0
- /package/build/{EntityQueryContext.js → src/EntityQueryContext.js} +0 -0
- /package/build/{IEntityCacheAdapter.js → src/IEntityCacheAdapter.js} +0 -0
- /package/build/{IEntityCacheAdapterProvider.js → src/IEntityCacheAdapterProvider.js} +0 -0
- /package/build/{IEntityDatabaseAdapterProvider.js → src/IEntityDatabaseAdapterProvider.js} +0 -0
- /package/build/{IEntityGenericCacher.js → src/IEntityGenericCacher.js} +0 -0
- /package/build/{entityUtils.d.ts → src/entityUtils.d.ts} +0 -0
- /package/build/{entityUtils.js → src/entityUtils.js} +0 -0
- /package/build/{internal → src/internal}/CompositeFieldHolder.js +0 -0
- /package/build/{internal → src/internal}/CompositeFieldValueMap.d.ts +0 -0
- /package/build/{internal → src/internal}/CompositeFieldValueMap.js +0 -0
- /package/build/{internal → src/internal}/EntityFieldTransformationUtils.js +0 -0
- /package/build/{internal → src/internal}/EntityLoadInterfaces.js +0 -0
- /package/build/{internal → src/internal}/SingleFieldHolder.js +0 -0
- /package/build/{metrics → src/metrics}/EntityMetricsUtils.js +0 -0
- /package/build/{metrics → src/metrics}/IEntityMetricsAdapter.js +0 -0
- /package/build/{utils → src/utils}/collections/SerializableKeyMap.d.ts +0 -0
- /package/build/{utils → src/utils}/collections/SerializableKeyMap.js +0 -0
- /package/build/{utils → src/utils}/collections/maps.d.ts +0 -0
- /package/build/{utils → src/utils}/collections/maps.js +0 -0
- /package/build/{utils → src/utils}/collections/sets.d.ts +0 -0
- /package/build/{utils → src/utils}/collections/sets.js +0 -0
- /package/build/{utils → src/utils}/mergeEntityMutationTriggerConfigurations.js +0 -0
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"EntityQueryContext.js","sourceRoot":"","sources":["../../src/EntityQueryContext.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,8 +1,8 @@
|
|
|
1
|
-
import {
|
|
1
|
+
import { EntityNestedTransactionalQueryContext, EntityNonTransactionalQueryContext, EntityTransactionalQueryContext, TransactionConfig, TransactionalDataLoaderMode } from './EntityQueryContext';
|
|
2
2
|
/**
|
|
3
3
|
* A query context provider vends transactional and non-transactional query contexts.
|
|
4
4
|
*/
|
|
5
|
-
export
|
|
5
|
+
export declare abstract class EntityQueryContextProvider {
|
|
6
6
|
/**
|
|
7
7
|
* Vend a regular (non-transactional) entity query context.
|
|
8
8
|
*/
|
|
@@ -1,5 +1,6 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.EntityQueryContextProvider = void 0;
|
|
3
4
|
const node_crypto_1 = require("node:crypto");
|
|
4
5
|
const EntityQueryContext_1 = require("./EntityQueryContext");
|
|
5
6
|
/**
|
|
@@ -50,5 +51,5 @@ class EntityQueryContextProvider {
|
|
|
50
51
|
return returnedValue;
|
|
51
52
|
}
|
|
52
53
|
}
|
|
53
|
-
exports.
|
|
54
|
+
exports.EntityQueryContextProvider = EntityQueryContextProvider;
|
|
54
55
|
//# sourceMappingURL=EntityQueryContextProvider.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"EntityQueryContextProvider.js","sourceRoot":"","sources":["../../src/EntityQueryContextProvider.ts"],"names":[],"mappings":";;;AAAA,6CAAyC;AAEzC,6DAM8B;AAE9B;;GAEG;AACH,MAAsB,0BAA0B;IAC9C;;OAEG;IACI,eAAe;QACpB,OAAO,IAAI,uDAAkC,CAAC,IAAI,CAAC,iBAAiB,EAAE,EAAE,IAAI,CAAC,CAAC;IAChF,CAAC;IAOD;;OAEG;IACO,kCAAkC;QAC1C,OAAO,gDAA2B,CAAC,OAAO,CAAC;IAC7C,CAAC;IAaD;;;OAGG;IACH,KAAK,CAAC,qBAAqB,CACzB,gBAA+E,EAC/E,iBAAqC;QAErC,MAAM,CAAC,aAAa,EAAE,YAAY,CAAC,GAAG,MAAM,IAAI,CAAC,uBAAuB,CAEtE,iBAAiB,CAAC,CAAC,KAAK,EAAE,cAAc,EAAE,EAAE;YAC5C,MAAM,YAAY,GAAG,IAAI,oDAA+B,CACtD,cAAc,EACd,IAAI,EACJ,IAAA,wBAAU,GAAE,EACZ,iBAAiB,EAAE,2BAA2B,IAAI,IAAI,CAAC,kCAAkC,EAAE,CAC5F,CAAC;YACF,MAAM,MAAM,GAAG,MAAM,gBAAgB,CAAC,YAAY,CAAC,CAAC;YACpD,MAAM,YAAY,CAAC,0BAA0B,EAAE,CAAC;YAChD,OAAO,CAAC,MAAM,EAAE,YAAY,CAAC,CAAC;QAChC,CAAC,CAAC,CAAC;QACH,MAAM,YAAY,CAAC,2BAA2B,EAAE,CAAC;QACjD,OAAO,aAAa,CAAC;IACvB,CAAC;IAED;;;;;OAKG;IACH,KAAK,CAAC,2BAA2B,CAC/B,iBAAkD,EAClD,gBAA0F;QAE1F,MAAM,CAAC,aAAa,EAAE,iBAAiB,CAAC,GAAG,MAAM,IAAI,CAAC,6BAA6B,CAEjF,iBAAiB,CAAC,iBAAiB,EAAE,CAAC,CAAC,KAAK,EAAE,mBAAmB,EAAE,EAAE;YACrE,MAAM,iBAAiB,GAAG,IAAI,0DAAqC,CACjE,mBAAmB,EACnB,iBAAiB,EACjB,IAAI,EACJ,IAAA,wBAAU,GAAE,EACZ,iBAAiB,CAAC,2BAA2B,CAC9C,CAAC;YACF,MAAM,MAAM,GAAG,MAAM,gBAAgB,CAAC,iBAAiB,CAAC,CAAC;YACzD,MAAM,iBAAiB,CAAC,0BAA0B,EAAE,CAAC;YACrD,OAAO,CAAC,MAAM,EAAE,iBAAiB,CAAC,CAAC;QACrC,CAAC,CAAC,CAAC;QACH,8GAA8G;QAC9G,MAAM,iBAAiB,CAAC,2BAA2B,EAAE,CAAC;QACtD,OAAO,aAAa,CAAC;IACvB,CAAC;CACF;AApFD,gEAoFC"}
|
|
@@ -1,8 +1,8 @@
|
|
|
1
1
|
import { Result } from '@expo/results';
|
|
2
|
-
import AuthorizationResultBasedEntityLoader from './AuthorizationResultBasedEntityLoader';
|
|
3
|
-
import EntityPrivacyPolicy from './EntityPrivacyPolicy';
|
|
4
|
-
import ReadonlyEntity from './ReadonlyEntity';
|
|
5
|
-
import ViewerContext from './ViewerContext';
|
|
2
|
+
import { AuthorizationResultBasedEntityLoader } from './AuthorizationResultBasedEntityLoader';
|
|
3
|
+
import { EntityPrivacyPolicy } from './EntityPrivacyPolicy';
|
|
4
|
+
import { ReadonlyEntity } from './ReadonlyEntity';
|
|
5
|
+
import { ViewerContext } from './ViewerContext';
|
|
6
6
|
/**
|
|
7
7
|
* An interface that knows how to load many objects from a cache by load params and invalidate
|
|
8
8
|
* those same load params.
|
|
@@ -33,7 +33,7 @@ export interface ISecondaryEntityCache<TFields extends Record<string, any>, TLoa
|
|
|
33
33
|
* due to use of a non-unique-field-based EntityLoader method like `loadManyByFieldEqualityConjunctionAsync` or
|
|
34
34
|
* `loadManyByRawWhereClauseAsync`.
|
|
35
35
|
*/
|
|
36
|
-
export
|
|
36
|
+
export declare abstract class EntitySecondaryCacheLoader<TLoadParams, TFields extends Record<string, any>, TIDField extends keyof NonNullable<Pick<TFields, TSelectedFields>>, TViewerContext extends ViewerContext, TEntity extends ReadonlyEntity<TFields, TIDField, TViewerContext, TSelectedFields>, TPrivacyPolicy extends EntityPrivacyPolicy<TFields, TIDField, TViewerContext, TEntity, TSelectedFields>, TSelectedFields extends keyof TFields = keyof TFields> {
|
|
37
37
|
private readonly secondaryEntityCache;
|
|
38
38
|
protected readonly entityLoader: AuthorizationResultBasedEntityLoader<TFields, TIDField, TViewerContext, TEntity, TPrivacyPolicy, TSelectedFields>;
|
|
39
39
|
constructor(secondaryEntityCache: ISecondaryEntityCache<TFields, TLoadParams>, entityLoader: AuthorizationResultBasedEntityLoader<TFields, TIDField, TViewerContext, TEntity, TPrivacyPolicy, TSelectedFields>);
|
|
@@ -1,5 +1,6 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.EntitySecondaryCacheLoader = void 0;
|
|
3
4
|
const maps_1 = require("./utils/collections/maps");
|
|
4
5
|
/**
|
|
5
6
|
* A secondary cache loader allows for arbitrary cache keying for load params, which are a set of params used to load
|
|
@@ -39,5 +40,5 @@ class EntitySecondaryCacheLoader {
|
|
|
39
40
|
await this.secondaryEntityCache.invalidateManyAsync(loadParamsArray);
|
|
40
41
|
}
|
|
41
42
|
}
|
|
42
|
-
exports.
|
|
43
|
+
exports.EntitySecondaryCacheLoader = EntitySecondaryCacheLoader;
|
|
43
44
|
//# sourceMappingURL=EntitySecondaryCacheLoader.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"EntitySecondaryCacheLoader.js","sourceRoot":"","sources":["../../src/EntitySecondaryCacheLoader.ts"],"names":[],"mappings":";;;AAMA,mDAAkD;AA4BlD;;;;;;;;;;GAUG;AACH,MAAsB,0BAA0B;IAgB3B;IACE;IAFrB,YACmB,oBAAiE,EAC/D,YAOlB;QARgB,yBAAoB,GAApB,oBAAoB,CAA6C;QAC/D,iBAAY,GAAZ,YAAY,CAO9B;IACA,CAAC;IAEJ;;;;OAIG;IACI,KAAK,CAAC,aAAa,CACxB,eAAiD;QAEjD,MAAM,wBAAwB,GAAG,MAAM,IAAI,CAAC,oBAAoB,CAAC,oBAAoB,CACnF,eAAe,EACf,IAAI,CAAC,6BAA6B,CAAC,IAAI,CAAC,IAAI,CAAC,CAC9C,CAAC;QAEF,wDAAwD;QACxD,MAAM,WAAW,GAAG,MAAM,IAAI,CAAC,YAAY,CAAC,KAAK,CAAC,kCAAkC,CAClF,IAAA,aAAM,EAAC,wBAAwB,EAAE,CAAC,WAAW,EAAE,EAAE,CAAC,CAAC,WAAW,CAAC,CAAC,CAAC,CAAC,WAAW,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CACtF,CAAC;QACF,OAAO,IAAA,aAAM,EAAC,WAAW,EAAE,CAAC,YAAY,EAAE,EAAE,CAAC,YAAY,CAAC,CAAC,CAAC,IAAI,IAAI,CAAC,CAAC;IACxE,CAAC;IAED;;;;OAIG;IACI,KAAK,CAAC,mBAAmB,CAC9B,eAAiD;QAEjD,MAAM,IAAI,CAAC,oBAAoB,CAAC,mBAAmB,CAAC,eAAe,CAAC,CAAC;IACvE,CAAC;CAUF;AAlED,gEAkEC"}
|
|
@@ -1,14 +1,14 @@
|
|
|
1
1
|
import { AuthorizationResultBasedUpdateMutator } from './AuthorizationResultBasedEntityMutator';
|
|
2
|
-
import EnforcingEntityUpdater from './EnforcingEntityUpdater';
|
|
2
|
+
import { EnforcingEntityUpdater } from './EnforcingEntityUpdater';
|
|
3
3
|
import { IEntityClass } from './Entity';
|
|
4
|
-
import EntityPrivacyPolicy from './EntityPrivacyPolicy';
|
|
4
|
+
import { EntityPrivacyPolicy } from './EntityPrivacyPolicy';
|
|
5
5
|
import { EntityQueryContext } from './EntityQueryContext';
|
|
6
|
-
import ReadonlyEntity from './ReadonlyEntity';
|
|
7
|
-
import ViewerContext from './ViewerContext';
|
|
6
|
+
import { ReadonlyEntity } from './ReadonlyEntity';
|
|
7
|
+
import { ViewerContext } from './ViewerContext';
|
|
8
8
|
/**
|
|
9
9
|
* The primary interface for updating entities.
|
|
10
10
|
*/
|
|
11
|
-
export
|
|
11
|
+
export declare class EntityUpdater<TFields extends Record<string, any>, TIDField extends keyof NonNullable<Pick<TFields, TSelectedFields>>, TViewerContext extends ViewerContext, TEntity extends ReadonlyEntity<TFields, TIDField, TViewerContext, TSelectedFields>, TPrivacyPolicy extends EntityPrivacyPolicy<TFields, TIDField, TViewerContext, TEntity, TSelectedFields>, TSelectedFields extends keyof TFields> {
|
|
12
12
|
private readonly existingEntity;
|
|
13
13
|
private readonly queryContext;
|
|
14
14
|
private readonly entityClass;
|
|
@@ -1,9 +1,7 @@
|
|
|
1
1
|
"use strict";
|
|
2
|
-
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
3
|
-
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
4
|
-
};
|
|
5
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
6
|
-
|
|
3
|
+
exports.EntityUpdater = void 0;
|
|
4
|
+
const EnforcingEntityUpdater_1 = require("./EnforcingEntityUpdater");
|
|
7
5
|
/**
|
|
8
6
|
* The primary interface for updating entities.
|
|
9
7
|
*/
|
|
@@ -21,7 +19,7 @@ class EntityUpdater {
|
|
|
21
19
|
* guaranteed to be successful and will throw otherwise.
|
|
22
20
|
*/
|
|
23
21
|
enforcing() {
|
|
24
|
-
return new EnforcingEntityUpdater_1.
|
|
22
|
+
return new EnforcingEntityUpdater_1.EnforcingEntityUpdater(this.withAuthorizationResults());
|
|
25
23
|
}
|
|
26
24
|
/**
|
|
27
25
|
* Authorization-result-based entity updater. All updates through this
|
|
@@ -33,8 +31,8 @@ class EntityUpdater {
|
|
|
33
31
|
.getViewerContext()
|
|
34
32
|
.getViewerScopedEntityCompanionForClass(this.entityClass)
|
|
35
33
|
.getMutatorFactory()
|
|
36
|
-
.forUpdate(this.existingEntity, this.queryContext);
|
|
34
|
+
.forUpdate(this.existingEntity, this.queryContext, /* cascadingDeleteCause */ null);
|
|
37
35
|
}
|
|
38
36
|
}
|
|
39
|
-
exports.
|
|
37
|
+
exports.EntityUpdater = EntityUpdater;
|
|
40
38
|
//# sourceMappingURL=EntityUpdater.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"EntityUpdater.js","sourceRoot":"","sources":["
|
|
1
|
+
{"version":3,"file":"EntityUpdater.js","sourceRoot":"","sources":["../../src/EntityUpdater.ts"],"names":[],"mappings":";;;AACA,qEAAkE;AAOlE;;GAEG;AACH,MAAa,aAAa;IAeL;IACA;IACA;IAHnB,YACmB,cAAuB,EACvB,YAAgC,EAChC,WAOhB;QATgB,mBAAc,GAAd,cAAc,CAAS;QACvB,iBAAY,GAAZ,YAAY,CAAoB;QAChC,gBAAW,GAAX,WAAW,CAO3B;IACA,CAAC;IAEJ;;;OAGG;IACH,SAAS;QAQP,OAAO,IAAI,+CAAsB,CAAC,IAAI,CAAC,wBAAwB,EAAE,CAAC,CAAC;IACrE,CAAC;IAED;;;;OAIG;IACH,wBAAwB;QAQtB,OAAO,IAAI,CAAC,cAAc;aACvB,gBAAgB,EAAE;aAClB,sCAAsC,CAAC,IAAI,CAAC,WAAW,CAAC;aACxD,iBAAiB,EAAE;aACnB,SAAS,CAAC,IAAI,CAAC,cAAc,EAAE,IAAI,CAAC,YAAY,EAAE,0BAA0B,CAAC,IAAI,CAAC,CAAC;IACxF,CAAC;CACF;AA7DD,sCA6DC"}
|
|
@@ -1,11 +1,11 @@
|
|
|
1
|
-
import IEntityCacheAdapter from './IEntityCacheAdapter';
|
|
2
|
-
import IEntityGenericCacher from './IEntityGenericCacher';
|
|
1
|
+
import { IEntityCacheAdapter } from './IEntityCacheAdapter';
|
|
2
|
+
import { IEntityGenericCacher } from './IEntityGenericCacher';
|
|
3
3
|
import { IEntityLoadKey, IEntityLoadValue } from './internal/EntityLoadInterfaces';
|
|
4
4
|
import { CacheLoadResult } from './internal/ReadThroughEntityCache';
|
|
5
5
|
/**
|
|
6
6
|
* A standard IEntityCacheAdapter that coordinates caching through an IEntityGenericCacher.
|
|
7
7
|
*/
|
|
8
|
-
export
|
|
8
|
+
export declare class GenericEntityCacheAdapter<TFields extends Record<string, any>, TIDField extends keyof TFields> implements IEntityCacheAdapter<TFields, TIDField> {
|
|
9
9
|
private readonly genericCacher;
|
|
10
10
|
constructor(genericCacher: IEntityGenericCacher<TFields, TIDField>);
|
|
11
11
|
loadManyAsync<TLoadKey extends IEntityLoadKey<TFields, TIDField, TSerializedLoadValue, TLoadValue>, TSerializedLoadValue, TLoadValue extends IEntityLoadValue<TSerializedLoadValue>>(key: TLoadKey, values: readonly TLoadValue[]): Promise<ReadonlyMap<TLoadValue, CacheLoadResult<TFields>>>;
|
|
@@ -3,6 +3,7 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
|
3
3
|
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
4
4
|
};
|
|
5
5
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
6
|
+
exports.GenericEntityCacheAdapter = void 0;
|
|
6
7
|
const invariant_1 = __importDefault(require("invariant"));
|
|
7
8
|
const maps_1 = require("./utils/collections/maps");
|
|
8
9
|
/**
|
|
@@ -34,5 +35,5 @@ class GenericEntityCacheAdapter {
|
|
|
34
35
|
await this.genericCacher.invalidateManyAsync(values.flatMap((value) => this.genericCacher.makeCacheKeysForInvalidation(key, value)));
|
|
35
36
|
}
|
|
36
37
|
}
|
|
37
|
-
exports.
|
|
38
|
+
exports.GenericEntityCacheAdapter = GenericEntityCacheAdapter;
|
|
38
39
|
//# sourceMappingURL=GenericEntityCacheAdapter.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"GenericEntityCacheAdapter.js","sourceRoot":"","sources":["../../src/GenericEntityCacheAdapter.ts"],"names":[],"mappings":";;;;;;AAAA,0DAAkC;AAMlC,mDAAmD;AAEnD;;GAEG;AACH,MAAa,yBAAyB;IAKP;IAA7B,YAA6B,aAAsD;QAAtD,kBAAa,GAAb,aAAa,CAAyC;IAAG,CAAC;IAEhF,KAAK,CAAC,aAAa,CAKxB,GAAa,EACb,MAA6B;QAE7B,MAAM,gCAAgC,GAAG,IAAI,GAAG,CAC9C,MAAM,CAAC,GAAG,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,CAAC,IAAI,CAAC,aAAa,CAAC,sBAAsB,CAAC,GAAG,EAAE,KAAK,CAAC,EAAE,KAAK,CAAC,CAAC,CACtF,CAAC;QACF,MAAM,YAAY,GAAG,MAAM,IAAI,CAAC,aAAa,CAAC,aAAa,CACzD,KAAK,CAAC,IAAI,CAAC,gCAAgC,CAAC,IAAI,EAAE,CAAC,CACpD,CAAC;QAEF,MAAM,MAAM,GAAG,GAAG,CAAC,mBAAmB,EAA4B,CAAC;QACnE,KAAK,MAAM,CAAC,aAAa,EAAE,WAAW,CAAC,IAAI,YAAY,EAAE,CAAC;YACxD,MAAM,UAAU,GAAG,gCAAgC,CAAC,GAAG,CAAC,aAAa,CAAC,CAAC;YACvE,IAAA,mBAAS,EACP,UAAU,KAAK,SAAS,EACxB,uDAAuD,EACvD,aAAa,CACd,CAAC;YACF,MAAM,CAAC,GAAG,CAAC,UAAU,EAAE,WAAW,CAAC,CAAC;QACtC,CAAC;QACD,OAAO,MAAM,CAAC;IAChB,CAAC;IAEM,KAAK,CAAC,cAAc,CAIzB,GAAa,EAAE,SAAqD;QACpE,MAAM,IAAI,CAAC,aAAa,CAAC,cAAc,CACrC,IAAA,cAAO,EAAC,SAAS,EAAE,CAAC,KAAK,EAAE,EAAE,CAAC,IAAI,CAAC,aAAa,CAAC,sBAAsB,CAAC,GAAG,EAAE,KAAK,CAAC,CAAC,CACrF,CAAC;IACJ,CAAC;IAEM,KAAK,CAAC,kBAAkB,CAI7B,GAAa,EAAE,MAA6B;QAC5C,MAAM,IAAI,CAAC,aAAa,CAAC,kBAAkB,CACzC,MAAM,CAAC,GAAG,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,IAAI,CAAC,aAAa,CAAC,sBAAsB,CAAC,GAAG,EAAE,KAAK,CAAC,CAAC,CAC7E,CAAC;IACJ,CAAC;IAEM,KAAK,CAAC,mBAAmB,CAI9B,GAAa,EAAE,MAA6B;QAC5C,MAAM,IAAI,CAAC,aAAa,CAAC,mBAAmB,CAC1C,MAAM,CAAC,OAAO,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,IAAI,CAAC,aAAa,CAAC,4BAA4B,CAAC,GAAG,EAAE,KAAK,CAAC,CAAC,CACvF,CAAC;IACJ,CAAC;CACF;AAhED,8DAgEC"}
|
|
@@ -1,11 +1,11 @@
|
|
|
1
1
|
import { ISecondaryEntityCache } from './EntitySecondaryCacheLoader';
|
|
2
|
-
import IEntityGenericCacher from './IEntityGenericCacher';
|
|
2
|
+
import { IEntityGenericCacher } from './IEntityGenericCacher';
|
|
3
3
|
/**
|
|
4
4
|
* A custom secondary read-through entity cache is a way to add a custom second layer of caching for a particular
|
|
5
5
|
* single entity load. One common way this may be used is to add a second layer of caching in a hot path that makes
|
|
6
6
|
* a call to EntityLoader.loadManyByFieldEqualityConjunctionAsync is guaranteed to return at most one entity.
|
|
7
7
|
*/
|
|
8
|
-
export
|
|
8
|
+
export declare abstract class GenericSecondaryEntityCache<TFields extends Record<string, any>, TIDField extends keyof TFields, TLoadParams> implements ISecondaryEntityCache<TFields, TLoadParams> {
|
|
9
9
|
protected readonly cacher: IEntityGenericCacher<TFields, TIDField>;
|
|
10
10
|
protected readonly constructCacheKey: (params: Readonly<TLoadParams>) => string;
|
|
11
11
|
constructor(cacher: IEntityGenericCacher<TFields, TIDField>, constructCacheKey: (params: Readonly<TLoadParams>) => string);
|
|
@@ -3,6 +3,7 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
|
3
3
|
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
4
4
|
};
|
|
5
5
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
6
|
+
exports.GenericSecondaryEntityCache = void 0;
|
|
6
7
|
const invariant_1 = __importDefault(require("invariant"));
|
|
7
8
|
const ReadThroughEntityCache_1 = require("./internal/ReadThroughEntityCache");
|
|
8
9
|
const maps_1 = require("./utils/collections/maps");
|
|
@@ -72,5 +73,5 @@ class GenericSecondaryEntityCache {
|
|
|
72
73
|
return this.cacher.invalidateManyAsync(cacheKeys);
|
|
73
74
|
}
|
|
74
75
|
}
|
|
75
|
-
exports.
|
|
76
|
+
exports.GenericSecondaryEntityCache = GenericSecondaryEntityCache;
|
|
76
77
|
//# sourceMappingURL=GenericSecondaryEntityCache.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"GenericSecondaryEntityCache.js","sourceRoot":"","sources":["../../src/GenericSecondaryEntityCache.ts"],"names":[],"mappings":"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"}
|
|
@@ -4,7 +4,7 @@ import { CacheLoadResult } from './internal/ReadThroughEntityCache';
|
|
|
4
4
|
* A cache adapter is an interface by which objects can be
|
|
5
5
|
* cached, fetched from cache, and removed from cache (invalidated).
|
|
6
6
|
*/
|
|
7
|
-
export
|
|
7
|
+
export interface IEntityCacheAdapter<TFields extends Record<string, any>, TIDField extends keyof TFields> {
|
|
8
8
|
/**
|
|
9
9
|
* Load many objects from cache.
|
|
10
10
|
* @param key - load key to load
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"IEntityCacheAdapter.js","sourceRoot":"","sources":["../../src/IEntityCacheAdapter.ts"],"names":[],"mappings":""}
|
|
@@ -1,10 +1,10 @@
|
|
|
1
|
-
import EntityConfiguration from './EntityConfiguration';
|
|
2
|
-
import IEntityCacheAdapter from './IEntityCacheAdapter';
|
|
1
|
+
import { EntityConfiguration } from './EntityConfiguration';
|
|
2
|
+
import { IEntityCacheAdapter } from './IEntityCacheAdapter';
|
|
3
3
|
/**
|
|
4
4
|
* A cache adapter provider vends cache adapters for a particular cache adapter type.
|
|
5
5
|
* Allows for passing global configuration to cache adapters.
|
|
6
6
|
*/
|
|
7
|
-
export
|
|
7
|
+
export interface IEntityCacheAdapterProvider {
|
|
8
8
|
/**
|
|
9
9
|
* Vend a cache adapter for an entity configuration.
|
|
10
10
|
*/
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"IEntityCacheAdapterProvider.js","sourceRoot":"","sources":["../../src/IEntityCacheAdapterProvider.ts"],"names":[],"mappings":""}
|
package/build/{IEntityDatabaseAdapterProvider.d.ts → src/IEntityDatabaseAdapterProvider.d.ts}
RENAMED
|
@@ -1,10 +1,10 @@
|
|
|
1
|
-
import EntityConfiguration from './EntityConfiguration';
|
|
2
|
-
import EntityDatabaseAdapter from './EntityDatabaseAdapter';
|
|
1
|
+
import { EntityConfiguration } from './EntityConfiguration';
|
|
2
|
+
import { EntityDatabaseAdapter } from './EntityDatabaseAdapter';
|
|
3
3
|
/**
|
|
4
4
|
* A database adapter provider vends database adapters for a particular database adapter type.
|
|
5
5
|
* Allows for passing global configuration to databse adapters, making testing easier.
|
|
6
6
|
*/
|
|
7
|
-
export
|
|
7
|
+
export interface IEntityDatabaseAdapterProvider {
|
|
8
8
|
/**
|
|
9
9
|
* Vend a database adapter.
|
|
10
10
|
*/
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"IEntityDatabaseAdapterProvider.js","sourceRoot":"","sources":["../../src/IEntityDatabaseAdapterProvider.ts"],"names":[],"mappings":""}
|
|
@@ -4,7 +4,7 @@ import { CacheLoadResult } from './internal/ReadThroughEntityCache';
|
|
|
4
4
|
* A generic cacher stores and loads key-value pairs. It also supports negative caching - it stores the absence
|
|
5
5
|
* of keys that don't exist in the backing datastore. It is also responsible for cache key creation.
|
|
6
6
|
*/
|
|
7
|
-
export
|
|
7
|
+
export interface IEntityGenericCacher<TFields extends Record<string, any>, TIDField extends keyof TFields> {
|
|
8
8
|
/**
|
|
9
9
|
* Load many keys from the cache. Return info in a format that is useful for read-through caching and
|
|
10
10
|
* negative caching.
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"IEntityGenericCacher.js","sourceRoot":"","sources":["../../src/IEntityGenericCacher.ts"],"names":[],"mappings":""}
|
|
@@ -1,12 +1,12 @@
|
|
|
1
|
-
import AuthorizationResultBasedEntityAssociationLoader from './AuthorizationResultBasedEntityAssociationLoader';
|
|
2
|
-
import AuthorizationResultBasedEntityLoader from './AuthorizationResultBasedEntityLoader';
|
|
3
|
-
import EnforcingEntityAssociationLoader from './EnforcingEntityAssociationLoader';
|
|
4
|
-
import EnforcingEntityLoader from './EnforcingEntityLoader';
|
|
1
|
+
import { AuthorizationResultBasedEntityAssociationLoader } from './AuthorizationResultBasedEntityAssociationLoader';
|
|
2
|
+
import { AuthorizationResultBasedEntityLoader } from './AuthorizationResultBasedEntityLoader';
|
|
3
|
+
import { EnforcingEntityAssociationLoader } from './EnforcingEntityAssociationLoader';
|
|
4
|
+
import { EnforcingEntityLoader } from './EnforcingEntityLoader';
|
|
5
5
|
import { IEntityClass } from './Entity';
|
|
6
|
-
import EntityLoaderUtils from './EntityLoaderUtils';
|
|
7
|
-
import EntityPrivacyPolicy from './EntityPrivacyPolicy';
|
|
6
|
+
import { EntityLoaderUtils } from './EntityLoaderUtils';
|
|
7
|
+
import { EntityPrivacyPolicy } from './EntityPrivacyPolicy';
|
|
8
8
|
import { EntityQueryContext } from './EntityQueryContext';
|
|
9
|
-
import ViewerContext from './ViewerContext';
|
|
9
|
+
import { ViewerContext } from './ViewerContext';
|
|
10
10
|
/**
|
|
11
11
|
* A readonly entity exposes only the read functionality of an Entity. Used as the base
|
|
12
12
|
* type for most entity operations excluding mutations.
|
|
@@ -15,7 +15,7 @@ import ViewerContext from './ViewerContext';
|
|
|
15
15
|
* - Entities representing SQL views.
|
|
16
16
|
* - Entities representing immutable tables.
|
|
17
17
|
*/
|
|
18
|
-
export
|
|
18
|
+
export declare abstract class ReadonlyEntity<TFields extends Record<string, any>, TIDField extends keyof NonNullable<Pick<TFields, TSelectedFields>>, TViewerContext extends ViewerContext, TSelectedFields extends keyof TFields = keyof TFields> {
|
|
19
19
|
private readonly viewerContext;
|
|
20
20
|
private readonly id;
|
|
21
21
|
private readonly databaseFields;
|
|
@@ -3,9 +3,10 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
|
3
3
|
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
4
4
|
};
|
|
5
5
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
6
|
+
exports.ReadonlyEntity = void 0;
|
|
6
7
|
const invariant_1 = __importDefault(require("invariant"));
|
|
7
|
-
const EntityAssociationLoader_1 =
|
|
8
|
-
const EntityLoader_1 =
|
|
8
|
+
const EntityAssociationLoader_1 = require("./EntityAssociationLoader");
|
|
9
|
+
const EntityLoader_1 = require("./EntityLoader");
|
|
9
10
|
/**
|
|
10
11
|
* A readonly entity exposes only the read functionality of an Entity. Used as the base
|
|
11
12
|
* type for most entity operations excluding mutations.
|
|
@@ -62,13 +63,13 @@ class ReadonlyEntity {
|
|
|
62
63
|
* @returns EnforcingEntityAssociationLoader for this entity
|
|
63
64
|
*/
|
|
64
65
|
associationLoader(queryContext) {
|
|
65
|
-
return new EntityAssociationLoader_1.
|
|
66
|
+
return new EntityAssociationLoader_1.EntityAssociationLoader(this, queryContext).enforcing();
|
|
66
67
|
}
|
|
67
68
|
/**
|
|
68
69
|
* @returns AuthorizationResultBasedEntityAssociationLoader for this entity
|
|
69
70
|
*/
|
|
70
71
|
associationLoaderWithAuthorizationResults(queryContext) {
|
|
71
|
-
return new EntityAssociationLoader_1.
|
|
72
|
+
return new EntityAssociationLoader_1.EntityAssociationLoader(this, queryContext).withAuthorizationResults();
|
|
72
73
|
}
|
|
73
74
|
/**
|
|
74
75
|
* Get a underlying field from this entity's data
|
|
@@ -99,7 +100,7 @@ class ReadonlyEntity {
|
|
|
99
100
|
.getViewerScopedEntityCompanionForClass(this)
|
|
100
101
|
.getQueryContextProvider()
|
|
101
102
|
.getQueryContext()) {
|
|
102
|
-
return new EntityLoader_1.
|
|
103
|
+
return new EntityLoader_1.EntityLoader(viewerContext, queryContext, this).enforcing();
|
|
103
104
|
}
|
|
104
105
|
/**
|
|
105
106
|
* Vend loader for loading an entity in a given query context.
|
|
@@ -110,7 +111,7 @@ class ReadonlyEntity {
|
|
|
110
111
|
.getViewerScopedEntityCompanionForClass(this)
|
|
111
112
|
.getQueryContextProvider()
|
|
112
113
|
.getQueryContext()) {
|
|
113
|
-
return new EntityLoader_1.
|
|
114
|
+
return new EntityLoader_1.EntityLoader(viewerContext, queryContext, this).withAuthorizationResults();
|
|
114
115
|
}
|
|
115
116
|
/**
|
|
116
117
|
* Vend loader for loading an entity in a given query context.
|
|
@@ -121,8 +122,8 @@ class ReadonlyEntity {
|
|
|
121
122
|
.getViewerScopedEntityCompanionForClass(this)
|
|
122
123
|
.getQueryContextProvider()
|
|
123
124
|
.getQueryContext()) {
|
|
124
|
-
return new EntityLoader_1.
|
|
125
|
+
return new EntityLoader_1.EntityLoader(viewerContext, queryContext, this).utils();
|
|
125
126
|
}
|
|
126
127
|
}
|
|
127
|
-
exports.
|
|
128
|
+
exports.ReadonlyEntity = ReadonlyEntity;
|
|
128
129
|
//# sourceMappingURL=ReadonlyEntity.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"ReadonlyEntity.js","sourceRoot":"","sources":["../../src/ReadonlyEntity.ts"],"names":[],"mappings":";;;;;;AAAA,0DAAkC;AAOlC,uEAAoE;AACpE,iDAA8C;AAM9C;;;;;;;GAOG;AACH,MAAsB,cAAc;IAMjB,aAAa,CAAiB;IAC9B,EAAE,CAAoB;IACtB,cAAc,CAAoB;IAClC,cAAc,CAA2C;IAE1E;;;;;;;;;;;;;OAaG;IACH,YAAY,EACV,aAAa,EACb,EAAE,EACF,cAAc,EACd,cAAc,GAMf;QACC,IAAA,mBAAS,EAAC,EAAE,KAAK,IAAI,IAAI,EAAE,KAAK,SAAS,EAAE,qBAAqB,CAAC,CAAC;QAElE,IAAI,CAAC,aAAa,GAAG,aAAa,CAAC;QACnC,IAAI,CAAC,EAAE,GAAG,EAAE,CAAC;QACb,IAAI,CAAC,cAAc,GAAG,cAAc,CAAC;QACrC,IAAI,CAAC,cAAc,GAAG,cAAc,CAAC;IACvC,CAAC;IAED,QAAQ;QACN,OAAO,GAAG,IAAI,CAAC,WAAW,CAAC,IAAI,IAAI,IAAI,CAAC,KAAK,EAAE,GAAG,CAAC;IACrD,CAAC;IAED,mBAAmB;QACjB,OAAO,IAAI,CAAC,QAAQ,EAAE,CAAC;IACzB,CAAC;IAED;;OAEG;IACH,gBAAgB;QACd,OAAO,IAAI,CAAC,aAAa,CAAC;IAC5B,CAAC;IAED;;OAEG;IACH,KAAK;QACH,OAAO,IAAI,CAAC,EAAE,CAAC;IACjB,CAAC;IAED;;OAEG;IACH,iBAAiB,CACf,YAAiC;QAEjC,OAAO,IAAI,iDAAuB,CAChC,IAAI,EACJ,YAAY,CACb,CAAC,SAAS,EAAE,CAAC;IAChB,CAAC;IAED;;OAEG;IACH,yCAAyC,CACvC,YAAiC;QAQjC,OAAO,IAAI,iDAAuB,CAChC,IAAI,EACJ,YAAY,CACb,CAAC,wBAAwB,EAAE,CAAC;IAC/B,CAAC;IAED;;;;OAIG;IACH,QAAQ,CACN,SAAY;QAEZ,OAAO,IAAI,CAAC,cAAc,CAAC,SAAS,CAAC,CAAC;IACxC,CAAC;IAED;;OAEG;IACH,YAAY;QACV,OAAO,EAAE,GAAG,IAAI,CAAC,cAAc,EAAE,CAAC;IACpC,CAAC;IAED;;OAEG;IACH,oBAAoB;QAClB,OAAO,EAAE,GAAG,IAAI,CAAC,cAAc,EAAE,CAAC;IACpC,CAAC;IAED;;;;OAIG;IACH,MAAM,CAAC,MAAM,CAuBX,aAA+B,EAC/B,eAAmC,aAAa;SAC7C,sCAAsC,CAAC,IAAI,CAAC;SAC5C,uBAAuB,EAAE;SACzB,eAAe,EAAE;QASpB,OAAO,IAAI,2BAAY,CAAC,aAAa,EAAE,YAAY,EAAE,IAAI,CAAC,CAAC,SAAS,EAAE,CAAC;IACzE,CAAC;IAED;;;;OAIG;IACH,MAAM,CAAC,8BAA8B,CAuBnC,aAA+B,EAC/B,eAAmC,aAAa;SAC7C,sCAAsC,CAAC,IAAI,CAAC;SAC5C,uBAAuB,EAAE;SACzB,eAAe,EAAE;QASpB,OAAO,IAAI,2BAAY,CAAC,aAAa,EAAE,YAAY,EAAE,IAAI,CAAC,CAAC,wBAAwB,EAAE,CAAC;IACxF,CAAC;IAED;;;;OAIG;IACH,MAAM,CAAC,WAAW,CAuBhB,aAA+B,EAC/B,eAAmC,aAAa;SAC7C,sCAAsC,CAAC,IAAI,CAAC;SAC5C,uBAAuB,EAAE;SACzB,eAAe,EAAE;QASpB,OAAO,IAAI,2BAAY,CAAC,aAAa,EAAE,YAAY,EAAE,IAAI,CAAC,CAAC,KAAK,EAAE,CAAC;IACrE,CAAC;CACF;AA5PD,wCA4PC"}
|
|
@@ -1,16 +1,16 @@
|
|
|
1
1
|
import { IEntityClass } from './Entity';
|
|
2
|
-
import
|
|
3
|
-
import EntityPrivacyPolicy from './EntityPrivacyPolicy';
|
|
2
|
+
import { DatabaseAdapterFlavor, EntityCompanionProvider } from './EntityCompanionProvider';
|
|
3
|
+
import { EntityPrivacyPolicy } from './EntityPrivacyPolicy';
|
|
4
4
|
import { EntityQueryContext, EntityTransactionalQueryContext, TransactionConfig } from './EntityQueryContext';
|
|
5
|
-
import ReadonlyEntity from './ReadonlyEntity';
|
|
6
|
-
import ViewerScopedEntityCompanion from './ViewerScopedEntityCompanion';
|
|
5
|
+
import { ReadonlyEntity } from './ReadonlyEntity';
|
|
6
|
+
import { ViewerScopedEntityCompanion } from './ViewerScopedEntityCompanion';
|
|
7
7
|
/**
|
|
8
8
|
* A viewer context encapsulates all information necessary to evaluate an EntityPrivacyPolicy.
|
|
9
9
|
*
|
|
10
10
|
* In combination with an EntityCompanionProvider, a viewer context is the
|
|
11
11
|
* entry point into the Entity framework.
|
|
12
12
|
*/
|
|
13
|
-
export
|
|
13
|
+
export declare class ViewerContext {
|
|
14
14
|
readonly entityCompanionProvider: EntityCompanionProvider;
|
|
15
15
|
private readonly viewerScopedEntityCompanionProvider;
|
|
16
16
|
constructor(entityCompanionProvider: EntityCompanionProvider);
|
|
@@ -1,9 +1,7 @@
|
|
|
1
1
|
"use strict";
|
|
2
|
-
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
3
|
-
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
4
|
-
};
|
|
5
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
6
|
-
|
|
3
|
+
exports.ViewerContext = void 0;
|
|
4
|
+
const ViewerScopedEntityCompanionProvider_1 = require("./ViewerScopedEntityCompanionProvider");
|
|
7
5
|
/**
|
|
8
6
|
* A viewer context encapsulates all information necessary to evaluate an EntityPrivacyPolicy.
|
|
9
7
|
*
|
|
@@ -15,7 +13,7 @@ class ViewerContext {
|
|
|
15
13
|
viewerScopedEntityCompanionProvider;
|
|
16
14
|
constructor(entityCompanionProvider) {
|
|
17
15
|
this.entityCompanionProvider = entityCompanionProvider;
|
|
18
|
-
this.viewerScopedEntityCompanionProvider = new ViewerScopedEntityCompanionProvider_1.
|
|
16
|
+
this.viewerScopedEntityCompanionProvider = new ViewerScopedEntityCompanionProvider_1.ViewerScopedEntityCompanionProvider(entityCompanionProvider, this);
|
|
19
17
|
}
|
|
20
18
|
get [Symbol.toStringTag]() {
|
|
21
19
|
return this.constructor.name;
|
|
@@ -45,5 +43,5 @@ class ViewerContext {
|
|
|
45
43
|
.runInTransactionIfNotInTransactionAsync(transactionScope, transactionConfig);
|
|
46
44
|
}
|
|
47
45
|
}
|
|
48
|
-
exports.
|
|
46
|
+
exports.ViewerContext = ViewerContext;
|
|
49
47
|
//# sourceMappingURL=ViewerContext.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ViewerContext.js","sourceRoot":"","sources":["
|
|
1
|
+
{"version":3,"file":"ViewerContext.js","sourceRoot":"","sources":["../../src/ViewerContext.ts"],"names":[],"mappings":";;;AAUA,+FAA4F;AAE5F;;;;;GAKG;AACH,MAAa,aAAa;IAGI;IAFX,mCAAmC,CAAsC;IAE1F,YAA4B,uBAAgD;QAAhD,4BAAuB,GAAvB,uBAAuB,CAAyB;QAC1E,IAAI,CAAC,mCAAmC,GAAG,IAAI,yEAAmC,CAChF,uBAAuB,EACvB,IAAI,CACL,CAAC;IACJ,CAAC;IAED,IAAI,CAAC,MAAM,CAAC,WAAW,CAAC;QACtB,OAAO,IAAI,CAAC,WAAW,CAAC,IAAI,CAAC;IAC/B,CAAC;IAED,sCAAsC,CAcpC,WAOC;QASD,OAAO,IAAI,CAAC,mCAAmC,CAAC,iCAAiC,CAAC,WAAW,CAAC,CAAC;IACjG,CAAC;IAED;;;OAGG;IACH,uCAAuC,CACrC,qBAA4C;QAE5C,OAAO,IAAI,CAAC,uBAAuB;aAChC,+CAA+C,CAAC,qBAAqB,CAAC;aACtE,eAAe,EAAE,CAAC;IACvB,CAAC;IAED;;;;;OAKG;IACH,KAAK,CAAC,6CAA6C,CACjD,qBAA4C,EAC5C,gBAAqF,EACrF,iBAAqC;QAErC,OAAO,MAAM,IAAI,CAAC,uBAAuB;aACtC,+CAA+C,CAAC,qBAAqB,CAAC;aACtE,eAAe,EAAE;aACjB,uCAAuC,CAAC,gBAAgB,EAAE,iBAAiB,CAAC,CAAC;IAClF,CAAC;CACF;AA3ED,sCA2EC"}
|
|
@@ -1,16 +1,16 @@
|
|
|
1
|
-
import EntityCompanion from './EntityCompanion';
|
|
2
|
-
import EntityPrivacyPolicy from './EntityPrivacyPolicy';
|
|
3
|
-
import EntityQueryContextProvider from './EntityQueryContextProvider';
|
|
4
|
-
import ReadonlyEntity from './ReadonlyEntity';
|
|
5
|
-
import ViewerContext from './ViewerContext';
|
|
6
|
-
import ViewerScopedEntityLoaderFactory from './ViewerScopedEntityLoaderFactory';
|
|
7
|
-
import ViewerScopedEntityMutatorFactory from './ViewerScopedEntityMutatorFactory';
|
|
8
|
-
import IEntityMetricsAdapter from './metrics/IEntityMetricsAdapter';
|
|
1
|
+
import { EntityCompanion } from './EntityCompanion';
|
|
2
|
+
import { EntityPrivacyPolicy } from './EntityPrivacyPolicy';
|
|
3
|
+
import { EntityQueryContextProvider } from './EntityQueryContextProvider';
|
|
4
|
+
import { ReadonlyEntity } from './ReadonlyEntity';
|
|
5
|
+
import { ViewerContext } from './ViewerContext';
|
|
6
|
+
import { ViewerScopedEntityLoaderFactory } from './ViewerScopedEntityLoaderFactory';
|
|
7
|
+
import { ViewerScopedEntityMutatorFactory } from './ViewerScopedEntityMutatorFactory';
|
|
8
|
+
import { IEntityMetricsAdapter } from './metrics/IEntityMetricsAdapter';
|
|
9
9
|
/**
|
|
10
10
|
* Provides a simpler API for loading and mutating entities by injecting the ViewerContext
|
|
11
11
|
* from the viewer-scoped entity companion provider.
|
|
12
12
|
*/
|
|
13
|
-
export
|
|
13
|
+
export declare class ViewerScopedEntityCompanion<TFields extends Record<string, any>, TIDField extends keyof NonNullable<Pick<TFields, TSelectedFields>>, TViewerContext extends ViewerContext, TEntity extends ReadonlyEntity<TFields, TIDField, TViewerContext, TSelectedFields>, TPrivacyPolicy extends EntityPrivacyPolicy<TFields, TIDField, TViewerContext, TEntity, TSelectedFields>, TSelectedFields extends keyof TFields> {
|
|
14
14
|
readonly entityCompanion: EntityCompanion<TFields, TIDField, TViewerContext, TEntity, TPrivacyPolicy, TSelectedFields>;
|
|
15
15
|
private readonly viewerContext;
|
|
16
16
|
constructor(entityCompanion: EntityCompanion<TFields, TIDField, TViewerContext, TEntity, TPrivacyPolicy, TSelectedFields>, viewerContext: TViewerContext);
|
|
@@ -1,10 +1,8 @@
|
|
|
1
1
|
"use strict";
|
|
2
|
-
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
3
|
-
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
4
|
-
};
|
|
5
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
6
|
-
|
|
7
|
-
const
|
|
3
|
+
exports.ViewerScopedEntityCompanion = void 0;
|
|
4
|
+
const ViewerScopedEntityLoaderFactory_1 = require("./ViewerScopedEntityLoaderFactory");
|
|
5
|
+
const ViewerScopedEntityMutatorFactory_1 = require("./ViewerScopedEntityMutatorFactory");
|
|
8
6
|
/**
|
|
9
7
|
* Provides a simpler API for loading and mutating entities by injecting the ViewerContext
|
|
10
8
|
* from the viewer-scoped entity companion provider.
|
|
@@ -20,13 +18,13 @@ class ViewerScopedEntityCompanion {
|
|
|
20
18
|
* Vend a viewer-scoped entity loader.
|
|
21
19
|
*/
|
|
22
20
|
getLoaderFactory() {
|
|
23
|
-
return new ViewerScopedEntityLoaderFactory_1.
|
|
21
|
+
return new ViewerScopedEntityLoaderFactory_1.ViewerScopedEntityLoaderFactory(this.entityCompanion.getLoaderFactory(), this.viewerContext);
|
|
24
22
|
}
|
|
25
23
|
/**
|
|
26
24
|
* Vend a viewer-scoped entity mutator factory.
|
|
27
25
|
*/
|
|
28
26
|
getMutatorFactory() {
|
|
29
|
-
return new ViewerScopedEntityMutatorFactory_1.
|
|
27
|
+
return new ViewerScopedEntityMutatorFactory_1.ViewerScopedEntityMutatorFactory(this.entityCompanion.getMutatorFactory(), this.viewerContext);
|
|
30
28
|
}
|
|
31
29
|
/**
|
|
32
30
|
* Get the query context provider for this entity.
|
|
@@ -41,5 +39,5 @@ class ViewerScopedEntityCompanion {
|
|
|
41
39
|
return this.entityCompanion.getMetricsAdapter();
|
|
42
40
|
}
|
|
43
41
|
}
|
|
44
|
-
exports.
|
|
42
|
+
exports.ViewerScopedEntityCompanion = ViewerScopedEntityCompanion;
|
|
45
43
|
//# sourceMappingURL=ViewerScopedEntityCompanion.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ViewerScopedEntityCompanion.js","sourceRoot":"","sources":["
|
|
1
|
+
{"version":3,"file":"ViewerScopedEntityCompanion.js","sourceRoot":"","sources":["../../src/ViewerScopedEntityCompanion.ts"],"names":[],"mappings":";;;AAKA,uFAAoF;AACpF,yFAAsF;AAGtF;;;GAGG;AACH,MAAa,2BAA2B;IAepB;IAQC;IATnB,YACkB,eAOf,EACgB,aAA6B;QAR9B,oBAAe,GAAf,eAAe,CAO9B;QACgB,kBAAa,GAAb,aAAa,CAAgB;IAC7C,CAAC;IAEJ;;OAEG;IACH,gBAAgB;QAQd,OAAO,IAAI,iEAA+B,CACxC,IAAI,CAAC,eAAe,CAAC,gBAAgB,EAAE,EACvC,IAAI,CAAC,aAAa,CACnB,CAAC;IACJ,CAAC;IAED;;OAEG;IACH,iBAAiB;QAQf,OAAO,IAAI,mEAAgC,CACzC,IAAI,CAAC,eAAe,CAAC,iBAAiB,EAAE,EACxC,IAAI,CAAC,aAAa,CACnB,CAAC;IACJ,CAAC;IAED;;OAEG;IACH,uBAAuB;QACrB,OAAO,IAAI,CAAC,eAAe,CAAC,uBAAuB,EAAE,CAAC;IACxD,CAAC;IAED;;OAEG;IACH,iBAAiB;QACf,OAAO,IAAI,CAAC,eAAe,CAAC,iBAAiB,EAAE,CAAC;IAClD,CAAC;CACF;AAzED,kEAyEC"}
|
|
@@ -1,13 +1,13 @@
|
|
|
1
1
|
import { IEntityClass } from './Entity';
|
|
2
|
-
import EntityCompanionProvider from './EntityCompanionProvider';
|
|
3
|
-
import EntityPrivacyPolicy from './EntityPrivacyPolicy';
|
|
4
|
-
import ReadonlyEntity from './ReadonlyEntity';
|
|
5
|
-
import ViewerContext from './ViewerContext';
|
|
6
|
-
import ViewerScopedEntityCompanion from './ViewerScopedEntityCompanion';
|
|
2
|
+
import { EntityCompanionProvider } from './EntityCompanionProvider';
|
|
3
|
+
import { EntityPrivacyPolicy } from './EntityPrivacyPolicy';
|
|
4
|
+
import { ReadonlyEntity } from './ReadonlyEntity';
|
|
5
|
+
import { ViewerContext } from './ViewerContext';
|
|
6
|
+
import { ViewerScopedEntityCompanion } from './ViewerScopedEntityCompanion';
|
|
7
7
|
/**
|
|
8
8
|
* Provides viewer-scoped entity companions providers for a simpler API.
|
|
9
9
|
*/
|
|
10
|
-
export
|
|
10
|
+
export declare class ViewerScopedEntityCompanionProvider {
|
|
11
11
|
private readonly entityCompanionProvider;
|
|
12
12
|
private readonly viewerContext;
|
|
13
13
|
constructor(entityCompanionProvider: EntityCompanionProvider, viewerContext: ViewerContext);
|
package/build/{ViewerScopedEntityCompanionProvider.js → src/ViewerScopedEntityCompanionProvider.js}
RENAMED
|
@@ -1,9 +1,7 @@
|
|
|
1
1
|
"use strict";
|
|
2
|
-
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
3
|
-
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
4
|
-
};
|
|
5
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
6
|
-
|
|
3
|
+
exports.ViewerScopedEntityCompanionProvider = void 0;
|
|
4
|
+
const ViewerScopedEntityCompanion_1 = require("./ViewerScopedEntityCompanion");
|
|
7
5
|
/**
|
|
8
6
|
* Provides viewer-scoped entity companions providers for a simpler API.
|
|
9
7
|
*/
|
|
@@ -21,8 +19,8 @@ class ViewerScopedEntityCompanionProvider {
|
|
|
21
19
|
* @param entityClass - entity class to load
|
|
22
20
|
*/
|
|
23
21
|
getViewerScopedCompanionForEntity(entityClass) {
|
|
24
|
-
return new ViewerScopedEntityCompanion_1.
|
|
22
|
+
return new ViewerScopedEntityCompanion_1.ViewerScopedEntityCompanion(this.entityCompanionProvider.getCompanionForEntity(entityClass), this.viewerContext);
|
|
25
23
|
}
|
|
26
24
|
}
|
|
27
|
-
exports.
|
|
25
|
+
exports.ViewerScopedEntityCompanionProvider = ViewerScopedEntityCompanionProvider;
|
|
28
26
|
//# sourceMappingURL=ViewerScopedEntityCompanionProvider.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"ViewerScopedEntityCompanionProvider.js","sourceRoot":"","sources":["../../src/ViewerScopedEntityCompanionProvider.ts"],"names":[],"mappings":";;;AAKA,+EAA4E;AAE5E;;GAEG;AACH,MAAa,mCAAmC;IAE3B;IACA;IAFnB,YACmB,uBAAgD,EAChD,aAA4B;QAD5B,4BAAuB,GAAvB,uBAAuB,CAAyB;QAChD,kBAAa,GAAb,aAAa,CAAe;IAC5C,CAAC;IAEJ;;;;;OAKG;IACH,iCAAiC,CAc/B,WAOC;QASD,OAAO,IAAI,yDAA2B,CACpC,IAAI,CAAC,uBAAuB,CAAC,qBAAqB,CAAC,WAAW,CAAC,EAC/D,IAAI,CAAC,aAA+B,CACrC,CAAC;IACJ,CAAC;CACF;AA/CD,kFA+CC"}
|
package/build/{ViewerScopedEntityLoaderFactory.d.ts → src/ViewerScopedEntityLoaderFactory.d.ts}
RENAMED
|
@@ -1,13 +1,13 @@
|
|
|
1
|
-
import AuthorizationResultBasedEntityLoader from './AuthorizationResultBasedEntityLoader';
|
|
2
|
-
import EntityLoaderFactory from './EntityLoaderFactory';
|
|
3
|
-
import EntityPrivacyPolicy,
|
|
1
|
+
import { AuthorizationResultBasedEntityLoader } from './AuthorizationResultBasedEntityLoader';
|
|
2
|
+
import { EntityLoaderFactory } from './EntityLoaderFactory';
|
|
3
|
+
import { EntityPrivacyPolicy, EntityPrivacyPolicyEvaluationContext } from './EntityPrivacyPolicy';
|
|
4
4
|
import { EntityQueryContext } from './EntityQueryContext';
|
|
5
|
-
import ReadonlyEntity from './ReadonlyEntity';
|
|
6
|
-
import ViewerContext from './ViewerContext';
|
|
5
|
+
import { ReadonlyEntity } from './ReadonlyEntity';
|
|
6
|
+
import { ViewerContext } from './ViewerContext';
|
|
7
7
|
/**
|
|
8
8
|
* Provides a cleaner API for loading entities by passing through the ViewerContext.
|
|
9
9
|
*/
|
|
10
|
-
export
|
|
10
|
+
export declare class ViewerScopedEntityLoaderFactory<TFields extends Record<string, any>, TIDField extends keyof NonNullable<Pick<TFields, TSelectedFields>>, TViewerContext extends ViewerContext, TEntity extends ReadonlyEntity<TFields, TIDField, TViewerContext, TSelectedFields>, TPrivacyPolicy extends EntityPrivacyPolicy<TFields, TIDField, TViewerContext, TEntity, TSelectedFields>, TSelectedFields extends keyof TFields> {
|
|
11
11
|
private readonly entityLoaderFactory;
|
|
12
12
|
private readonly viewerContext;
|
|
13
13
|
constructor(entityLoaderFactory: EntityLoaderFactory<TFields, TIDField, TViewerContext, TEntity, TPrivacyPolicy, TSelectedFields>, viewerContext: TViewerContext);
|