@expo/entity 0.60.0 → 0.62.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/src/AuthorizationResultBasedEntityAssociationLoader.d.ts +6 -6
- package/build/src/AuthorizationResultBasedEntityAssociationLoader.js +5 -10
- package/build/src/AuthorizationResultBasedEntityLoader.d.ts +9 -9
- package/build/src/AuthorizationResultBasedEntityLoader.js +27 -35
- package/build/src/AuthorizationResultBasedEntityMutator.d.ts +13 -13
- package/build/src/AuthorizationResultBasedEntityMutator.js +54 -65
- package/build/src/ComposedEntityCacheAdapter.d.ts +3 -3
- package/build/src/ComposedEntityCacheAdapter.js +15 -23
- package/build/src/ComposedSecondaryEntityCache.d.ts +1 -1
- package/build/src/ComposedSecondaryEntityCache.js +4 -12
- package/build/src/EnforcingEntityAssociationLoader.d.ts +5 -5
- package/build/src/EnforcingEntityAssociationLoader.js +6 -11
- package/build/src/EnforcingEntityCreator.d.ts +4 -4
- package/build/src/EnforcingEntityCreator.js +3 -8
- package/build/src/EnforcingEntityDeleter.d.ts +4 -4
- package/build/src/EnforcingEntityDeleter.js +3 -8
- package/build/src/EnforcingEntityLoader.d.ts +5 -5
- package/build/src/EnforcingEntityLoader.js +9 -14
- package/build/src/EnforcingEntityUpdater.d.ts +4 -4
- package/build/src/EnforcingEntityUpdater.js +3 -8
- package/build/src/Entity.d.ts +9 -9
- package/build/src/Entity.js +11 -16
- package/build/src/EntityAssociationLoader.d.ts +5 -5
- package/build/src/EntityAssociationLoader.js +5 -10
- package/build/src/EntityCompanion.d.ts +9 -9
- package/build/src/EntityCompanion.js +6 -11
- package/build/src/EntityCompanionProvider.d.ts +13 -12
- package/build/src/EntityCompanionProvider.js +13 -21
- package/build/src/EntityConfiguration.d.ts +4 -4
- package/build/src/EntityConfiguration.js +14 -23
- package/build/src/EntityConstructionUtils.d.ts +8 -8
- package/build/src/EntityConstructionUtils.js +15 -23
- package/build/src/EntityCreator.d.ts +7 -7
- package/build/src/EntityCreator.js +3 -8
- package/build/src/EntityDatabaseAdapter.d.ts +4 -4
- package/build/src/EntityDatabaseAdapter.js +19 -27
- package/build/src/EntityDeleter.d.ts +7 -7
- package/build/src/EntityDeleter.js +3 -8
- package/build/src/EntityFieldDefinition.d.ts +4 -4
- package/build/src/EntityFieldDefinition.js +5 -10
- package/build/src/EntityFields.d.ts +2 -1
- package/build/src/EntityFields.js +12 -27
- package/build/src/EntityInvalidationUtils.d.ts +8 -10
- package/build/src/EntityInvalidationUtils.js +5 -10
- package/build/src/EntityLoader.d.ts +7 -7
- package/build/src/EntityLoader.js +3 -8
- package/build/src/EntityLoaderFactory.d.ts +11 -11
- package/build/src/EntityLoaderFactory.js +7 -12
- package/build/src/EntityMutationInfo.d.ts +2 -2
- package/build/src/EntityMutationInfo.js +2 -6
- package/build/src/EntityMutationTriggerConfiguration.d.ts +4 -4
- package/build/src/EntityMutationTriggerConfiguration.js +2 -8
- package/build/src/EntityMutationValidatorConfiguration.d.ts +4 -4
- package/build/src/EntityMutationValidatorConfiguration.js +1 -6
- package/build/src/EntityMutatorFactory.d.ts +13 -13
- package/build/src/EntityMutatorFactory.js +5 -10
- package/build/src/EntityPrivacyPolicy.d.ts +7 -7
- package/build/src/EntityPrivacyPolicy.js +22 -27
- package/build/src/EntityQueryContext.d.ts +1 -1
- package/build/src/EntityQueryContext.js +11 -22
- package/build/src/EntityQueryContextProvider.d.ts +2 -1
- package/build/src/EntityQueryContextProvider.js +7 -12
- package/build/src/EntitySecondaryCacheLoader.d.ts +7 -7
- package/build/src/EntitySecondaryCacheLoader.js +4 -9
- package/build/src/EntityUpdater.d.ts +7 -7
- package/build/src/EntityUpdater.js +3 -8
- package/build/src/GenericEntityCacheAdapter.d.ts +4 -4
- package/build/src/GenericEntityCacheAdapter.js +5 -13
- package/build/src/GenericSecondaryEntityCache.d.ts +2 -2
- package/build/src/GenericSecondaryEntityCache.js +10 -18
- package/build/src/IEntityCacheAdapter.d.ts +2 -2
- package/build/src/IEntityCacheAdapter.js +1 -3
- package/build/src/IEntityCacheAdapterProvider.d.ts +2 -2
- package/build/src/IEntityCacheAdapterProvider.js +1 -3
- package/build/src/IEntityDatabaseAdapterProvider.d.ts +2 -2
- package/build/src/IEntityDatabaseAdapterProvider.js +1 -3
- package/build/src/IEntityGenericCacher.d.ts +2 -2
- package/build/src/IEntityGenericCacher.js +1 -3
- package/build/src/ReadonlyEntity.d.ts +10 -10
- package/build/src/ReadonlyEntity.js +9 -17
- package/build/src/ViewerContext.d.ts +6 -6
- package/build/src/ViewerContext.js +3 -8
- package/build/src/ViewerScopedEntityCompanion.d.ts +8 -8
- package/build/src/ViewerScopedEntityCompanion.js +5 -10
- package/build/src/ViewerScopedEntityCompanionProvider.d.ts +6 -6
- package/build/src/ViewerScopedEntityCompanionProvider.js +3 -8
- package/build/src/ViewerScopedEntityLoaderFactory.d.ts +9 -9
- package/build/src/ViewerScopedEntityLoaderFactory.js +1 -6
- package/build/src/ViewerScopedEntityMutatorFactory.d.ts +7 -7
- package/build/src/ViewerScopedEntityMutatorFactory.js +1 -6
- package/build/src/entityUtils.d.ts +1 -1
- package/build/src/entityUtils.js +9 -21
- package/build/src/errors/EntityCacheAdapterError.d.ts +1 -1
- package/build/src/errors/EntityCacheAdapterError.js +5 -11
- package/build/src/errors/EntityDatabaseAdapterError.d.ts +1 -1
- package/build/src/errors/EntityDatabaseAdapterError.js +41 -59
- package/build/src/errors/EntityError.js +5 -10
- package/build/src/errors/EntityInvalidFieldValueError.d.ts +5 -5
- package/build/src/errors/EntityInvalidFieldValueError.js +4 -9
- package/build/src/errors/EntityNotAuthorizedError.d.ts +4 -4
- package/build/src/errors/EntityNotAuthorizedError.js +6 -11
- package/build/src/errors/EntityNotFoundError.d.ts +5 -5
- package/build/src/errors/EntityNotFoundError.js +4 -9
- package/build/src/index.d.ts +77 -77
- package/build/src/index.js +77 -94
- package/build/src/internal/CompositeFieldHolder.d.ts +3 -2
- package/build/src/internal/CompositeFieldHolder.js +11 -21
- package/build/src/internal/CompositeFieldValueMap.d.ts +2 -2
- package/build/src/internal/CompositeFieldValueMap.js +7 -12
- package/build/src/internal/EntityDataManager.d.ts +6 -6
- package/build/src/internal/EntityDataManager.js +25 -33
- package/build/src/internal/EntityFieldTransformationUtils.d.ts +1 -1
- package/build/src/internal/EntityFieldTransformationUtils.js +11 -23
- package/build/src/internal/EntityLoadInterfaces.d.ts +3 -2
- package/build/src/internal/EntityLoadInterfaces.js +4 -9
- package/build/src/internal/EntityTableDataCoordinator.d.ts +8 -8
- package/build/src/internal/EntityTableDataCoordinator.js +4 -9
- package/build/src/internal/ReadThroughEntityCache.d.ts +3 -3
- package/build/src/internal/ReadThroughEntityCache.js +7 -15
- package/build/src/internal/SingleFieldHolder.d.ts +3 -2
- package/build/src/internal/SingleFieldHolder.js +9 -19
- package/build/src/metrics/EntityMetricsUtils.d.ts +3 -3
- package/build/src/metrics/EntityMetricsUtils.js +6 -14
- package/build/src/metrics/IEntityMetricsAdapter.d.ts +2 -2
- package/build/src/metrics/IEntityMetricsAdapter.js +8 -12
- package/build/src/metrics/NoOpEntityMetricsAdapter.d.ts +1 -1
- package/build/src/metrics/NoOpEntityMetricsAdapter.js +1 -6
- package/build/src/rules/AllowIfAllSubRulesAllowPrivacyPolicyRule.d.ts +5 -5
- package/build/src/rules/AllowIfAllSubRulesAllowPrivacyPolicyRule.js +5 -10
- package/build/src/rules/AllowIfAnySubRuleAllowsPrivacyPolicyRule.d.ts +5 -5
- package/build/src/rules/AllowIfAnySubRuleAllowsPrivacyPolicyRule.js +5 -10
- package/build/src/rules/AllowIfInParentCascadeDeletionPrivacyPolicyRule.d.ts +6 -6
- package/build/src/rules/AllowIfInParentCascadeDeletionPrivacyPolicyRule.js +6 -11
- package/build/src/rules/AlwaysAllowPrivacyPolicyRule.d.ts +5 -5
- package/build/src/rules/AlwaysAllowPrivacyPolicyRule.js +3 -8
- package/build/src/rules/AlwaysDenyPrivacyPolicyRule.d.ts +5 -5
- package/build/src/rules/AlwaysDenyPrivacyPolicyRule.js +3 -8
- package/build/src/rules/AlwaysSkipPrivacyPolicyRule.d.ts +5 -5
- package/build/src/rules/AlwaysSkipPrivacyPolicyRule.js +3 -8
- package/build/src/rules/EvaluateIfEntityFieldPredicatePrivacyPolicyRule.d.ts +5 -5
- package/build/src/rules/EvaluateIfEntityFieldPredicatePrivacyPolicyRule.js +3 -8
- package/build/src/rules/PrivacyPolicyRule.d.ts +4 -4
- package/build/src/rules/PrivacyPolicyRule.js +3 -8
- package/build/src/utils/EntityCreationUtils.d.ts +5 -5
- package/build/src/utils/EntityCreationUtils.js +6 -11
- package/build/src/utils/EntityPrivacyUtils.d.ts +5 -5
- package/build/src/utils/EntityPrivacyUtils.js +20 -27
- package/build/src/utils/collections/SerializableKeyMap.js +1 -6
- package/build/src/utils/collections/maps.js +11 -27
- package/build/src/utils/collections/sets.js +1 -5
- package/build/src/utils/mergeEntityMutationTriggerConfigurations.d.ts +3 -3
- package/build/src/utils/mergeEntityMutationTriggerConfigurations.js +1 -5
- package/package.json +8 -7
- package/src/AuthorizationResultBasedEntityAssociationLoader.ts +7 -6
- package/src/AuthorizationResultBasedEntityLoader.ts +19 -17
- package/src/AuthorizationResultBasedEntityMutator.ts +24 -22
- package/src/ComposedEntityCacheAdapter.ts +5 -4
- package/src/ComposedSecondaryEntityCache.ts +2 -2
- package/src/EnforcingEntityAssociationLoader.ts +7 -7
- package/src/EnforcingEntityCreator.ts +4 -4
- package/src/EnforcingEntityDeleter.ts +4 -4
- package/src/EnforcingEntityLoader.ts +8 -8
- package/src/EnforcingEntityUpdater.ts +4 -4
- package/src/Entity.ts +13 -13
- package/src/EntityAssociationLoader.ts +6 -6
- package/src/EntityCompanion.ts +13 -10
- package/src/EntityCompanionProvider.ts +15 -14
- package/src/EntityConfiguration.ts +6 -8
- package/src/EntityConstructionUtils.ts +16 -12
- package/src/EntityCreator.ts +7 -7
- package/src/EntityDatabaseAdapter.ts +6 -6
- package/src/EntityDeleter.ts +7 -7
- package/src/EntityFieldDefinition.ts +4 -4
- package/src/EntityFields.ts +3 -3
- package/src/EntityInvalidationUtils.ts +8 -25
- package/src/EntityLoader.ts +7 -7
- package/src/EntityLoaderFactory.ts +13 -12
- package/src/EntityMutationInfo.ts +2 -2
- package/src/EntityMutationTriggerConfiguration.ts +4 -4
- package/src/EntityMutationValidatorConfiguration.ts +4 -4
- package/src/EntityMutatorFactory.ts +13 -13
- package/src/EntityPrivacyPolicy.ts +9 -10
- package/src/EntityQueryContext.ts +1 -1
- package/src/EntityQueryContextProvider.ts +2 -2
- package/src/EntitySecondaryCacheLoader.ts +8 -8
- package/src/EntityUpdater.ts +7 -7
- package/src/GenericEntityCacheAdapter.ts +5 -5
- package/src/GenericSecondaryEntityCache.ts +4 -4
- package/src/IEntityCacheAdapter.ts +2 -2
- package/src/IEntityCacheAdapterProvider.ts +2 -2
- package/src/IEntityDatabaseAdapterProvider.ts +2 -2
- package/src/IEntityGenericCacher.ts +2 -2
- package/src/ReadonlyEntity.ts +12 -19
- package/src/ViewerContext.ts +8 -8
- package/src/ViewerScopedEntityCompanion.ts +8 -8
- package/src/ViewerScopedEntityCompanionProvider.ts +6 -6
- package/src/ViewerScopedEntityLoaderFactory.ts +11 -9
- package/src/ViewerScopedEntityMutatorFactory.ts +8 -8
- package/src/__tests__/AuthorizationResultBasedEntityAssociationLoader-test.ts +6 -6
- package/src/__tests__/AuthorizationResultBasedEntityLoader-constructor-test.ts +16 -15
- package/src/__tests__/AuthorizationResultBasedEntityLoader-test.ts +21 -21
- package/src/__tests__/ComposedCacheAdapter-test.ts +8 -7
- package/src/__tests__/ComposedSecondaryEntityCache-test.ts +3 -3
- package/src/__tests__/EnforcingEntityAssociationLoader-test.ts +2 -2
- package/src/__tests__/EnforcingEntityLoader-test.ts +4 -4
- package/src/__tests__/Entity-test.ts +8 -8
- package/src/__tests__/EntityAssociationLoader-test.ts +6 -6
- package/src/__tests__/EntityCommonUseCases-test.ts +17 -13
- package/src/__tests__/EntityCompanion-test.ts +11 -11
- package/src/__tests__/EntityCompanionProvider-test.ts +8 -7
- package/src/__tests__/EntityConfiguration-test.ts +3 -3
- package/src/__tests__/EntityDatabaseAdapter-test.ts +11 -7
- package/src/__tests__/EntityEdges-test.ts +17 -19
- package/src/__tests__/EntityFields-test.ts +3 -3
- package/src/__tests__/EntityLoader-test.ts +7 -7
- package/src/__tests__/EntityMutator-MutationCacheConsistency-test.ts +12 -11
- package/src/__tests__/EntityMutator-SingleCompositeFieldCacheConsistency-test.ts +4 -4
- package/src/__tests__/EntityMutator-test.ts +32 -36
- package/src/__tests__/EntityPrivacyPolicy-test.ts +19 -19
- package/src/__tests__/EntityQueryContext-test.ts +9 -9
- package/src/__tests__/EntitySecondaryCacheLoader-test.ts +8 -7
- package/src/__tests__/EntitySelfReferentialEdges-test.ts +12 -12
- package/src/__tests__/GenericEntityCacheAdapter-test.ts +6 -6
- package/src/__tests__/GenericSecondaryEntityCache-test.ts +16 -18
- package/src/__tests__/ReadonlyEntity-test.ts +10 -10
- package/src/__tests__/ViewerContext-test.ts +3 -3
- package/src/__tests__/ViewerScopedEntityCompanion-test.ts +7 -7
- package/src/__tests__/ViewerScopedEntityCompanionProvider-test.ts +5 -5
- package/src/__tests__/ViewerScopedEntityLoaderFactory-test.ts +5 -5
- package/src/__tests__/ViewerScopedEntityMutatorFactory-test.ts +6 -6
- package/src/__tests__/cases/TwoEntitySameTableDisjointRows-test.ts +9 -9
- package/src/__tests__/cases/TwoEntitySameTableOverlappingRows-test.ts +8 -8
- package/src/__tests__/entityUtils-test.ts +4 -4
- package/src/entityUtils.ts +1 -1
- package/src/errors/EntityCacheAdapterError.ts +1 -1
- package/src/errors/EntityDatabaseAdapterError.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 +2 -2
- package/src/errors/__tests__/EntityError-test.ts +7 -7
- package/src/index.ts +77 -77
- package/src/internal/CompositeFieldHolder.ts +6 -10
- package/src/internal/CompositeFieldValueMap.ts +3 -5
- package/src/internal/EntityDataManager.ts +11 -14
- package/src/internal/EntityFieldTransformationUtils.ts +2 -2
- package/src/internal/EntityLoadInterfaces.ts +3 -2
- package/src/internal/EntityTableDataCoordinator.ts +9 -9
- package/src/internal/ReadThroughEntityCache.ts +4 -4
- package/src/internal/SingleFieldHolder.ts +4 -8
- package/src/internal/__tests__/CompositeFieldHolder-test.ts +1 -1
- package/src/internal/__tests__/CompositeFieldValueMap-test.ts +3 -3
- package/src/internal/__tests__/EntityDataManager-test.ts +15 -18
- package/src/internal/__tests__/EntityFieldTransformationUtils-test.ts +3 -3
- package/src/internal/__tests__/ReadThroughEntityCache-test.ts +6 -6
- package/src/metrics/EntityMetricsUtils.ts +5 -5
- package/src/metrics/IEntityMetricsAdapter.ts +3 -3
- package/src/metrics/NoOpEntityMetricsAdapter.ts +2 -2
- package/src/metrics/__tests__/EntityMetricsUtils-test.ts +4 -7
- package/src/rules/AllowIfAllSubRulesAllowPrivacyPolicyRule.ts +5 -5
- package/src/rules/AllowIfAnySubRuleAllowsPrivacyPolicyRule.ts +5 -5
- package/src/rules/AllowIfInParentCascadeDeletionPrivacyPolicyRule.ts +9 -6
- package/src/rules/AlwaysAllowPrivacyPolicyRule.ts +5 -5
- package/src/rules/AlwaysDenyPrivacyPolicyRule.ts +5 -5
- package/src/rules/AlwaysSkipPrivacyPolicyRule.ts +5 -5
- package/src/rules/EvaluateIfEntityFieldPredicatePrivacyPolicyRule.ts +5 -5
- package/src/rules/PrivacyPolicyRule.ts +4 -4
- package/src/rules/__tests__/AllowIfAllSubRulesAllowPrivacyPolicyRule-test.ts +8 -8
- package/src/rules/__tests__/AllowIfAnySubRuleAllowsPrivacyPolicyRule-test.ts +8 -8
- package/src/rules/__tests__/AllowIfInParentCascadeDeletionPrivacyPolicyRule-test.ts +7 -7
- package/src/rules/__tests__/AlwaysAllowPrivacyPolicyRule-test.ts +5 -5
- package/src/rules/__tests__/AlwaysDenyPrivacyPolicyRule-test.ts +5 -5
- package/src/rules/__tests__/AlwaysSkipPrivacyPolicyRule-test.ts +5 -5
- package/src/rules/__tests__/EvaluateIfEntityFieldPredicatePrivacyPolicyRule-test.ts +9 -8
- package/src/utils/EntityCreationUtils.ts +7 -7
- package/src/utils/EntityPrivacyUtils.ts +13 -9
- package/src/utils/__testfixtures__/PrivacyPolicyRuleTestUtils.ts +6 -5
- package/src/utils/__testfixtures__/SimpleTestEntity.ts +7 -7
- package/src/utils/__testfixtures__/StubCacheAdapter.ts +6 -5
- package/src/utils/__testfixtures__/StubDatabaseAdapter.ts +6 -6
- package/src/utils/__testfixtures__/StubDatabaseAdapterProvider.ts +4 -4
- package/src/utils/__testfixtures__/StubQueryContextProvider.ts +2 -2
- package/src/utils/__testfixtures__/TSMockitoExtensions.ts +5 -5
- package/src/utils/__testfixtures__/TestEntity.ts +9 -8
- package/src/utils/__testfixtures__/TestEntity2.ts +7 -7
- package/src/utils/__testfixtures__/TestEntityWithMutationTriggers.ts +10 -10
- package/src/utils/__testfixtures__/TestViewerContext.ts +1 -1
- package/src/utils/__testfixtures__/createUnitTestEntityCompanionProvider.ts +6 -6
- package/src/utils/__testfixtures__/describeFieldTestCase.ts +1 -1
- package/src/utils/__tests__/EntityCreationUtils-test.ts +7 -7
- package/src/utils/__tests__/EntityPrivacyUtils-test.ts +20 -21
- package/src/utils/__tests__/canViewerDeleteAsync-edgeDeletionPermissionInferenceBehavior-test.ts +12 -12
- package/src/utils/__tests__/mergeEntityMutationTriggerConfigurations-test.ts +2 -2
- package/src/utils/collections/__tests__/SerializableKeyMap-test.ts +2 -1
- package/src/utils/collections/__tests__/maps-test.ts +5 -5
- package/src/utils/collections/__tests__/sets-test.ts +1 -1
- package/src/utils/mergeEntityMutationTriggerConfigurations.ts +3 -3
- package/build/src/AuthorizationResultBasedEntityAssociationLoader.js.map +0 -1
- package/build/src/AuthorizationResultBasedEntityLoader.js.map +0 -1
- package/build/src/AuthorizationResultBasedEntityMutator.js.map +0 -1
- package/build/src/ComposedEntityCacheAdapter.js.map +0 -1
- package/build/src/ComposedSecondaryEntityCache.js.map +0 -1
- package/build/src/EnforcingEntityAssociationLoader.js.map +0 -1
- package/build/src/EnforcingEntityCreator.js.map +0 -1
- package/build/src/EnforcingEntityDeleter.js.map +0 -1
- package/build/src/EnforcingEntityLoader.js.map +0 -1
- package/build/src/EnforcingEntityUpdater.js.map +0 -1
- package/build/src/Entity.js.map +0 -1
- package/build/src/EntityAssociationLoader.js.map +0 -1
- package/build/src/EntityCompanion.js.map +0 -1
- package/build/src/EntityCompanionProvider.js.map +0 -1
- package/build/src/EntityConfiguration.js.map +0 -1
- package/build/src/EntityConstructionUtils.js.map +0 -1
- package/build/src/EntityCreator.js.map +0 -1
- package/build/src/EntityDatabaseAdapter.js.map +0 -1
- package/build/src/EntityDeleter.js.map +0 -1
- package/build/src/EntityFieldDefinition.js.map +0 -1
- package/build/src/EntityFields.js.map +0 -1
- package/build/src/EntityInvalidationUtils.js.map +0 -1
- package/build/src/EntityLoader.js.map +0 -1
- package/build/src/EntityLoaderFactory.js.map +0 -1
- package/build/src/EntityMutationInfo.js.map +0 -1
- package/build/src/EntityMutationTriggerConfiguration.js.map +0 -1
- package/build/src/EntityMutationValidatorConfiguration.js.map +0 -1
- package/build/src/EntityMutatorFactory.js.map +0 -1
- package/build/src/EntityPrivacyPolicy.js.map +0 -1
- package/build/src/EntityQueryContext.js.map +0 -1
- package/build/src/EntityQueryContextProvider.js.map +0 -1
- package/build/src/EntitySecondaryCacheLoader.js.map +0 -1
- package/build/src/EntityUpdater.js.map +0 -1
- package/build/src/GenericEntityCacheAdapter.js.map +0 -1
- package/build/src/GenericSecondaryEntityCache.js.map +0 -1
- package/build/src/IEntityCacheAdapter.js.map +0 -1
- package/build/src/IEntityCacheAdapterProvider.js.map +0 -1
- package/build/src/IEntityDatabaseAdapterProvider.js.map +0 -1
- package/build/src/IEntityGenericCacher.js.map +0 -1
- package/build/src/ReadonlyEntity.js.map +0 -1
- package/build/src/ViewerContext.js.map +0 -1
- package/build/src/ViewerScopedEntityCompanion.js.map +0 -1
- package/build/src/ViewerScopedEntityCompanionProvider.js.map +0 -1
- package/build/src/ViewerScopedEntityLoaderFactory.js.map +0 -1
- package/build/src/ViewerScopedEntityMutatorFactory.js.map +0 -1
- package/build/src/entityUtils.js.map +0 -1
- package/build/src/errors/EntityCacheAdapterError.js.map +0 -1
- package/build/src/errors/EntityDatabaseAdapterError.js.map +0 -1
- package/build/src/errors/EntityError.js.map +0 -1
- package/build/src/errors/EntityInvalidFieldValueError.js.map +0 -1
- package/build/src/errors/EntityNotAuthorizedError.js.map +0 -1
- package/build/src/errors/EntityNotFoundError.js.map +0 -1
- package/build/src/index.js.map +0 -1
- package/build/src/internal/CompositeFieldHolder.js.map +0 -1
- package/build/src/internal/CompositeFieldValueMap.js.map +0 -1
- package/build/src/internal/EntityDataManager.js.map +0 -1
- package/build/src/internal/EntityFieldTransformationUtils.js.map +0 -1
- package/build/src/internal/EntityLoadInterfaces.js.map +0 -1
- package/build/src/internal/EntityTableDataCoordinator.js.map +0 -1
- package/build/src/internal/ReadThroughEntityCache.js.map +0 -1
- package/build/src/internal/SingleFieldHolder.js.map +0 -1
- package/build/src/metrics/EntityMetricsUtils.js.map +0 -1
- package/build/src/metrics/IEntityMetricsAdapter.js.map +0 -1
- package/build/src/metrics/NoOpEntityMetricsAdapter.js.map +0 -1
- package/build/src/rules/AllowIfAllSubRulesAllowPrivacyPolicyRule.js.map +0 -1
- package/build/src/rules/AllowIfAnySubRuleAllowsPrivacyPolicyRule.js.map +0 -1
- package/build/src/rules/AllowIfInParentCascadeDeletionPrivacyPolicyRule.js.map +0 -1
- package/build/src/rules/AlwaysAllowPrivacyPolicyRule.js.map +0 -1
- package/build/src/rules/AlwaysDenyPrivacyPolicyRule.js.map +0 -1
- package/build/src/rules/AlwaysSkipPrivacyPolicyRule.js.map +0 -1
- package/build/src/rules/EvaluateIfEntityFieldPredicatePrivacyPolicyRule.js.map +0 -1
- package/build/src/rules/PrivacyPolicyRule.js.map +0 -1
- package/build/src/utils/EntityCreationUtils.js.map +0 -1
- package/build/src/utils/EntityPrivacyUtils.js.map +0 -1
- package/build/src/utils/collections/SerializableKeyMap.js.map +0 -1
- package/build/src/utils/collections/maps.js.map +0 -1
- package/build/src/utils/collections/sets.js.map +0 -1
- package/build/src/utils/mergeEntityMutationTriggerConfigurations.js.map +0 -1
|
@@ -1,101 +1,89 @@
|
|
|
1
|
-
|
|
2
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.BufferField = exports.StrictEnumField = exports.EnumField = exports.JSONObjectField = exports.StringArrayField = exports.FloatField = exports.IntField = exports.BooleanField = exports.DateField = exports.UUIDField = exports.StringField = void 0;
|
|
4
|
-
const EntityFieldDefinition_1 = require("./EntityFieldDefinition");
|
|
1
|
+
import { EntityFieldDefinition } from "./EntityFieldDefinition.js";
|
|
5
2
|
// Use our own regex since the `uuid` package doesn't support validating UUIDv6/7/8 yet
|
|
6
3
|
const UUID_REGEX = /^(?:[0-9a-f]{8}-[0-9a-f]{4}-[1-8][0-9a-f]{3}-[89ab][0-9a-f]{3}-[0-9a-f]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$/;
|
|
7
4
|
/**
|
|
8
5
|
* EntityFieldDefinition for a column with a JS string type.
|
|
9
6
|
*/
|
|
10
|
-
class StringField extends
|
|
7
|
+
export class StringField extends EntityFieldDefinition {
|
|
11
8
|
validateInputValueInternal(value) {
|
|
12
9
|
return typeof value === 'string';
|
|
13
10
|
}
|
|
14
11
|
}
|
|
15
|
-
exports.StringField = StringField;
|
|
16
12
|
/**
|
|
17
13
|
* EntityFieldDefinition for a column with a JS string type.
|
|
18
14
|
* Enforces that the string is a valid UUID and that it is lowercase. Entity requires UUIDs to be lowercase since most
|
|
19
15
|
* databases (e.g. Postgres) treat UUIDs as case-insensitive, which can lead to unexpected entity load results if mixed-case
|
|
20
16
|
* UUIDs are used.
|
|
21
17
|
*/
|
|
22
|
-
class UUIDField extends StringField {
|
|
18
|
+
export class UUIDField extends StringField {
|
|
23
19
|
validateInputValueInternal(value) {
|
|
24
20
|
return super.validateInputValueInternal(value) && UUID_REGEX.test(value);
|
|
25
21
|
}
|
|
26
22
|
}
|
|
27
|
-
exports.UUIDField = UUIDField;
|
|
28
23
|
/**
|
|
29
24
|
* EntityFieldDefinition for a column with a JS Date type.
|
|
30
25
|
*/
|
|
31
|
-
class DateField extends
|
|
26
|
+
export class DateField extends EntityFieldDefinition {
|
|
32
27
|
validateInputValueInternal(value) {
|
|
33
28
|
return value instanceof Date;
|
|
34
29
|
}
|
|
35
30
|
}
|
|
36
|
-
exports.DateField = DateField;
|
|
37
31
|
/**
|
|
38
32
|
* EntityFieldDefinition for a column with a JS boolean type.
|
|
39
33
|
*/
|
|
40
|
-
class BooleanField extends
|
|
34
|
+
export class BooleanField extends EntityFieldDefinition {
|
|
41
35
|
validateInputValueInternal(value) {
|
|
42
36
|
return typeof value === 'boolean';
|
|
43
37
|
}
|
|
44
38
|
}
|
|
45
|
-
exports.BooleanField = BooleanField;
|
|
46
39
|
/**
|
|
47
40
|
* EntityFieldDefinition for a column with a JS number type.
|
|
48
41
|
* Enforces that the number is an integer.
|
|
49
42
|
*/
|
|
50
|
-
class IntField extends
|
|
43
|
+
export class IntField extends EntityFieldDefinition {
|
|
51
44
|
validateInputValueInternal(value) {
|
|
52
45
|
return typeof value === 'number' && Number.isInteger(value);
|
|
53
46
|
}
|
|
54
47
|
}
|
|
55
|
-
exports.IntField = IntField;
|
|
56
48
|
/**
|
|
57
49
|
* EntityFieldDefinition for a column with a JS number type.
|
|
58
50
|
* Enforces that the number is a float (which includes integers in JS).
|
|
59
51
|
*/
|
|
60
|
-
class FloatField extends
|
|
52
|
+
export class FloatField extends EntityFieldDefinition {
|
|
61
53
|
validateInputValueInternal(value) {
|
|
62
54
|
return typeof value === 'number';
|
|
63
55
|
}
|
|
64
56
|
}
|
|
65
|
-
exports.FloatField = FloatField;
|
|
66
57
|
/**
|
|
67
58
|
* EntityFieldDefinition for a column with a JS string array type.
|
|
68
59
|
* Enforces that every member of the string array is a string.
|
|
69
60
|
*/
|
|
70
|
-
class StringArrayField extends
|
|
61
|
+
export class StringArrayField extends EntityFieldDefinition {
|
|
71
62
|
validateInputValueInternal(value) {
|
|
72
63
|
return Array.isArray(value) && value.every((subValue) => typeof subValue === 'string');
|
|
73
64
|
}
|
|
74
65
|
}
|
|
75
|
-
exports.StringArrayField = StringArrayField;
|
|
76
66
|
/**
|
|
77
67
|
* EntityFieldDefinition for a column with a JS JSON object type.
|
|
78
68
|
*/
|
|
79
|
-
class JSONObjectField extends
|
|
69
|
+
export class JSONObjectField extends EntityFieldDefinition {
|
|
80
70
|
validateInputValueInternal(value) {
|
|
81
71
|
return typeof value === 'object' && !Array.isArray(value);
|
|
82
72
|
}
|
|
83
73
|
}
|
|
84
|
-
exports.JSONObjectField = JSONObjectField;
|
|
85
74
|
/**
|
|
86
75
|
* EntityFieldDefinition for a enum column with a JS string or number type.
|
|
87
76
|
*/
|
|
88
|
-
class EnumField extends
|
|
77
|
+
export class EnumField extends EntityFieldDefinition {
|
|
89
78
|
validateInputValueInternal(value) {
|
|
90
79
|
return typeof value === 'number' || typeof value === 'string';
|
|
91
80
|
}
|
|
92
81
|
}
|
|
93
|
-
exports.EnumField = EnumField;
|
|
94
82
|
/**
|
|
95
83
|
* EntityFieldDefinition for a enum column with a strict typescript enum type.
|
|
96
84
|
* The strict version checks that the value of the field adheres to a particular typescript enum
|
|
97
85
|
*/
|
|
98
|
-
class StrictEnumField extends EnumField {
|
|
86
|
+
export class StrictEnumField extends EnumField {
|
|
99
87
|
enum;
|
|
100
88
|
constructor(options) {
|
|
101
89
|
super(options);
|
|
@@ -105,14 +93,11 @@ class StrictEnumField extends EnumField {
|
|
|
105
93
|
return super.validateInputValueInternal(value) && Object.values(this.enum).includes(value);
|
|
106
94
|
}
|
|
107
95
|
}
|
|
108
|
-
exports.StrictEnumField = StrictEnumField;
|
|
109
96
|
/**
|
|
110
97
|
* EntityFieldDefinition for a column with a JS Buffer type.
|
|
111
98
|
*/
|
|
112
|
-
class BufferField extends
|
|
99
|
+
export class BufferField extends EntityFieldDefinition {
|
|
113
100
|
validateInputValueInternal(value) {
|
|
114
101
|
return Buffer.isBuffer(value);
|
|
115
102
|
}
|
|
116
103
|
}
|
|
117
|
-
exports.BufferField = BufferField;
|
|
118
|
-
//# sourceMappingURL=EntityFields.js.map
|
|
@@ -1,20 +1,18 @@
|
|
|
1
|
-
import {
|
|
2
|
-
import {
|
|
3
|
-
import {
|
|
4
|
-
import {
|
|
5
|
-
import {
|
|
6
|
-
import {
|
|
7
|
-
import { EntityDataManager } from './internal/EntityDataManager';
|
|
8
|
-
import { IEntityMetricsAdapter } from './metrics/IEntityMetricsAdapter';
|
|
1
|
+
import type { EntityConfiguration } from './EntityConfiguration.ts';
|
|
2
|
+
import type { EntityTransactionalQueryContext } from './EntityQueryContext.ts';
|
|
3
|
+
import type { ReadonlyEntity } from './ReadonlyEntity.ts';
|
|
4
|
+
import type { ViewerContext } from './ViewerContext.ts';
|
|
5
|
+
import type { EntityDataManager } from './internal/EntityDataManager.ts';
|
|
6
|
+
import type { IEntityMetricsAdapter } from './metrics/IEntityMetricsAdapter.ts';
|
|
9
7
|
/**
|
|
10
8
|
* Entity invalidation utilities.
|
|
11
9
|
* Methods are exposed publicly since in rare cases they may need to be called manually.
|
|
12
10
|
*/
|
|
13
|
-
export declare class EntityInvalidationUtils<TFields extends Record<string, any>, TIDField extends keyof NonNullable<Pick<TFields, TSelectedFields>>, TViewerContext extends ViewerContext, TEntity extends ReadonlyEntity<TFields, TIDField, TViewerContext, TSelectedFields>,
|
|
11
|
+
export declare class EntityInvalidationUtils<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> {
|
|
14
12
|
private readonly entityConfiguration;
|
|
15
13
|
private readonly dataManager;
|
|
16
14
|
protected readonly metricsAdapter: IEntityMetricsAdapter;
|
|
17
|
-
constructor(entityConfiguration: EntityConfiguration<TFields, TIDField>,
|
|
15
|
+
constructor(entityConfiguration: EntityConfiguration<TFields, TIDField>, dataManager: EntityDataManager<TFields, TIDField>, metricsAdapter: IEntityMetricsAdapter);
|
|
18
16
|
private getKeyValuePairsFromObjectFields;
|
|
19
17
|
/**
|
|
20
18
|
* Invalidate all caches and local dataloaders for an entity's fields. Exposed primarily for internal use by EntityMutator.
|
|
@@ -1,16 +1,13 @@
|
|
|
1
|
-
|
|
2
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.EntityInvalidationUtils = void 0;
|
|
4
|
-
const SingleFieldHolder_1 = require("./internal/SingleFieldHolder");
|
|
1
|
+
import { SingleFieldHolder, SingleFieldValueHolder } from "./internal/SingleFieldHolder.js";
|
|
5
2
|
/**
|
|
6
3
|
* Entity invalidation utilities.
|
|
7
4
|
* Methods are exposed publicly since in rare cases they may need to be called manually.
|
|
8
5
|
*/
|
|
9
|
-
class EntityInvalidationUtils {
|
|
6
|
+
export class EntityInvalidationUtils {
|
|
10
7
|
entityConfiguration;
|
|
11
8
|
dataManager;
|
|
12
9
|
metricsAdapter;
|
|
13
|
-
constructor(entityConfiguration,
|
|
10
|
+
constructor(entityConfiguration, dataManager, metricsAdapter) {
|
|
14
11
|
this.entityConfiguration = entityConfiguration;
|
|
15
12
|
this.dataManager = dataManager;
|
|
16
13
|
this.metricsAdapter = metricsAdapter;
|
|
@@ -22,8 +19,8 @@ class EntityInvalidationUtils {
|
|
|
22
19
|
const value = objectFields[fieldName];
|
|
23
20
|
if (value !== undefined && value !== null) {
|
|
24
21
|
singleFieldKeyValues.push([
|
|
25
|
-
new
|
|
26
|
-
new
|
|
22
|
+
new SingleFieldHolder(fieldName),
|
|
23
|
+
new SingleFieldValueHolder(value),
|
|
27
24
|
]);
|
|
28
25
|
}
|
|
29
26
|
}
|
|
@@ -67,5 +64,3 @@ class EntityInvalidationUtils {
|
|
|
67
64
|
this.invalidateFieldsForTransaction(queryContext, entity.getAllDatabaseFields());
|
|
68
65
|
}
|
|
69
66
|
}
|
|
70
|
-
exports.EntityInvalidationUtils = EntityInvalidationUtils;
|
|
71
|
-
//# sourceMappingURL=EntityInvalidationUtils.js.map
|
|
@@ -1,10 +1,10 @@
|
|
|
1
|
-
import { AuthorizationResultBasedEntityLoader } from './AuthorizationResultBasedEntityLoader';
|
|
2
|
-
import { EnforcingEntityLoader } from './EnforcingEntityLoader';
|
|
3
|
-
import { IEntityClass } from './Entity';
|
|
4
|
-
import { EntityPrivacyPolicy } from './EntityPrivacyPolicy';
|
|
5
|
-
import { EntityQueryContext } from './EntityQueryContext';
|
|
6
|
-
import { ReadonlyEntity } from './ReadonlyEntity';
|
|
7
|
-
import { ViewerContext } from './ViewerContext';
|
|
1
|
+
import type { AuthorizationResultBasedEntityLoader } from './AuthorizationResultBasedEntityLoader.ts';
|
|
2
|
+
import { EnforcingEntityLoader } from './EnforcingEntityLoader.ts';
|
|
3
|
+
import type { IEntityClass } from './Entity.ts';
|
|
4
|
+
import type { EntityPrivacyPolicy } from './EntityPrivacyPolicy.ts';
|
|
5
|
+
import type { EntityQueryContext } from './EntityQueryContext.ts';
|
|
6
|
+
import type { ReadonlyEntity } from './ReadonlyEntity.ts';
|
|
7
|
+
import type { ViewerContext } from './ViewerContext.ts';
|
|
8
8
|
/**
|
|
9
9
|
* The primary interface for loading entities. All normal loads are batched,
|
|
10
10
|
* cached, and authorized against the entity's EntityPrivacyPolicy.
|
|
@@ -1,12 +1,9 @@
|
|
|
1
|
-
|
|
2
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.EntityLoader = void 0;
|
|
4
|
-
const EnforcingEntityLoader_1 = require("./EnforcingEntityLoader");
|
|
1
|
+
import { EnforcingEntityLoader } from "./EnforcingEntityLoader.js";
|
|
5
2
|
/**
|
|
6
3
|
* The primary interface for loading entities. All normal loads are batched,
|
|
7
4
|
* cached, and authorized against the entity's EntityPrivacyPolicy.
|
|
8
5
|
*/
|
|
9
|
-
class EntityLoader {
|
|
6
|
+
export class EntityLoader {
|
|
10
7
|
viewerContext;
|
|
11
8
|
queryContext;
|
|
12
9
|
entityClass;
|
|
@@ -21,7 +18,7 @@ class EntityLoader {
|
|
|
21
18
|
* and will throw otherwise.
|
|
22
19
|
*/
|
|
23
20
|
enforcing() {
|
|
24
|
-
return new
|
|
21
|
+
return new EnforcingEntityLoader(this.withAuthorizationResults());
|
|
25
22
|
}
|
|
26
23
|
/**
|
|
27
24
|
* Authorization-result-based entity loader. All loads through this
|
|
@@ -35,5 +32,3 @@ class EntityLoader {
|
|
|
35
32
|
.forLoad(this.queryContext, { previousValue: null, cascadingDeleteCause: null });
|
|
36
33
|
}
|
|
37
34
|
}
|
|
38
|
-
exports.EntityLoader = EntityLoader;
|
|
39
|
-
//# sourceMappingURL=EntityLoader.js.map
|
|
@@ -1,13 +1,13 @@
|
|
|
1
|
-
import { AuthorizationResultBasedEntityLoader } from './AuthorizationResultBasedEntityLoader';
|
|
2
|
-
import { EntityCompanion } from './EntityCompanion';
|
|
3
|
-
import { EntityConstructionUtils } from './EntityConstructionUtils';
|
|
4
|
-
import { EntityInvalidationUtils } from './EntityInvalidationUtils';
|
|
5
|
-
import { EntityPrivacyPolicy, EntityPrivacyPolicyEvaluationContext } from './EntityPrivacyPolicy';
|
|
6
|
-
import { EntityQueryContext } from './EntityQueryContext';
|
|
7
|
-
import { ReadonlyEntity } from './ReadonlyEntity';
|
|
8
|
-
import { ViewerContext } from './ViewerContext';
|
|
9
|
-
import { EntityDataManager } from './internal/EntityDataManager';
|
|
10
|
-
import { IEntityMetricsAdapter } from './metrics/IEntityMetricsAdapter';
|
|
1
|
+
import { AuthorizationResultBasedEntityLoader } from './AuthorizationResultBasedEntityLoader.ts';
|
|
2
|
+
import type { EntityCompanion } from './EntityCompanion.ts';
|
|
3
|
+
import { EntityConstructionUtils } from './EntityConstructionUtils.ts';
|
|
4
|
+
import { EntityInvalidationUtils } from './EntityInvalidationUtils.ts';
|
|
5
|
+
import type { EntityPrivacyPolicy, EntityPrivacyPolicyEvaluationContext } from './EntityPrivacyPolicy.ts';
|
|
6
|
+
import type { EntityQueryContext } from './EntityQueryContext.ts';
|
|
7
|
+
import type { ReadonlyEntity } from './ReadonlyEntity.ts';
|
|
8
|
+
import type { ViewerContext } from './ViewerContext.ts';
|
|
9
|
+
import type { EntityDataManager } from './internal/EntityDataManager.ts';
|
|
10
|
+
import type { IEntityMetricsAdapter } from './metrics/IEntityMetricsAdapter.ts';
|
|
11
11
|
/**
|
|
12
12
|
* The primary entry point for loading entities.
|
|
13
13
|
*/
|
|
@@ -16,7 +16,7 @@ export declare class EntityLoaderFactory<TFields extends Record<string, any>, TI
|
|
|
16
16
|
private readonly dataManager;
|
|
17
17
|
protected readonly metricsAdapter: IEntityMetricsAdapter;
|
|
18
18
|
constructor(entityCompanion: EntityCompanion<TFields, TIDField, TViewerContext, TEntity, TPrivacyPolicy, TSelectedFields>, dataManager: EntityDataManager<TFields, TIDField>, metricsAdapter: IEntityMetricsAdapter);
|
|
19
|
-
invalidationUtils(): EntityInvalidationUtils<TFields, TIDField, TViewerContext, TEntity,
|
|
19
|
+
invalidationUtils(): EntityInvalidationUtils<TFields, TIDField, TViewerContext, TEntity, TSelectedFields>;
|
|
20
20
|
constructionUtils(viewerContext: TViewerContext, queryContext: EntityQueryContext, privacyPolicyEvaluationContext: EntityPrivacyPolicyEvaluationContext<TFields, TIDField, TViewerContext, TEntity, TSelectedFields>): EntityConstructionUtils<TFields, TIDField, TViewerContext, TEntity, TPrivacyPolicy, TSelectedFields>;
|
|
21
21
|
/**
|
|
22
22
|
* Vend loader for loading an entity in a given query context.
|
|
@@ -1,13 +1,10 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
const AuthorizationResultBasedEntityLoader_1 = require("./AuthorizationResultBasedEntityLoader");
|
|
5
|
-
const EntityConstructionUtils_1 = require("./EntityConstructionUtils");
|
|
6
|
-
const EntityInvalidationUtils_1 = require("./EntityInvalidationUtils");
|
|
1
|
+
import { AuthorizationResultBasedEntityLoader } from "./AuthorizationResultBasedEntityLoader.js";
|
|
2
|
+
import { EntityConstructionUtils } from "./EntityConstructionUtils.js";
|
|
3
|
+
import { EntityInvalidationUtils } from "./EntityInvalidationUtils.js";
|
|
7
4
|
/**
|
|
8
5
|
* The primary entry point for loading entities.
|
|
9
6
|
*/
|
|
10
|
-
class EntityLoaderFactory {
|
|
7
|
+
export class EntityLoaderFactory {
|
|
11
8
|
entityCompanion;
|
|
12
9
|
dataManager;
|
|
13
10
|
metricsAdapter;
|
|
@@ -17,10 +14,10 @@ class EntityLoaderFactory {
|
|
|
17
14
|
this.metricsAdapter = metricsAdapter;
|
|
18
15
|
}
|
|
19
16
|
invalidationUtils() {
|
|
20
|
-
return new
|
|
17
|
+
return new EntityInvalidationUtils(this.entityCompanion.entityCompanionDefinition.entityConfiguration, this.dataManager, this.metricsAdapter);
|
|
21
18
|
}
|
|
22
19
|
constructionUtils(viewerContext, queryContext, privacyPolicyEvaluationContext) {
|
|
23
|
-
return new
|
|
20
|
+
return new EntityConstructionUtils(viewerContext, queryContext, privacyPolicyEvaluationContext, this.entityCompanion.entityCompanionDefinition.entityConfiguration, this.entityCompanion.entityCompanionDefinition.entityClass, this.entityCompanion.entityCompanionDefinition.entitySelectedFields, this.entityCompanion.privacyPolicy, this.metricsAdapter);
|
|
24
21
|
}
|
|
25
22
|
/**
|
|
26
23
|
* Vend loader for loading an entity in a given query context.
|
|
@@ -29,8 +26,6 @@ class EntityLoaderFactory {
|
|
|
29
26
|
*/
|
|
30
27
|
forLoad(viewerContext, queryContext, privacyPolicyEvaluationContext) {
|
|
31
28
|
const constructionUtils = this.constructionUtils(viewerContext, queryContext, privacyPolicyEvaluationContext);
|
|
32
|
-
return new
|
|
29
|
+
return new AuthorizationResultBasedEntityLoader(queryContext, this.entityCompanion.entityCompanionDefinition.entityConfiguration, this.entityCompanion.entityCompanionDefinition.entityClass, this.dataManager, constructionUtils);
|
|
33
30
|
}
|
|
34
31
|
}
|
|
35
|
-
exports.EntityLoaderFactory = EntityLoaderFactory;
|
|
36
|
-
//# sourceMappingURL=EntityLoaderFactory.js.map
|
|
@@ -1,10 +1,6 @@
|
|
|
1
|
-
|
|
2
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.EntityMutationType = void 0;
|
|
4
|
-
var EntityMutationType;
|
|
1
|
+
export var EntityMutationType;
|
|
5
2
|
(function (EntityMutationType) {
|
|
6
3
|
EntityMutationType[EntityMutationType["CREATE"] = 0] = "CREATE";
|
|
7
4
|
EntityMutationType[EntityMutationType["UPDATE"] = 1] = "UPDATE";
|
|
8
5
|
EntityMutationType[EntityMutationType["DELETE"] = 2] = "DELETE";
|
|
9
|
-
})(EntityMutationType || (
|
|
10
|
-
//# sourceMappingURL=EntityMutationInfo.js.map
|
|
6
|
+
})(EntityMutationType || (EntityMutationType = {}));
|
|
@@ -1,7 +1,7 @@
|
|
|
1
|
-
import { EntityTriggerMutationInfo } from './EntityMutationInfo';
|
|
2
|
-
import { EntityTransactionalQueryContext } from './EntityQueryContext';
|
|
3
|
-
import { ReadonlyEntity } from './ReadonlyEntity';
|
|
4
|
-
import { ViewerContext } from './ViewerContext';
|
|
1
|
+
import type { EntityTriggerMutationInfo } from './EntityMutationInfo.ts';
|
|
2
|
+
import type { EntityTransactionalQueryContext } from './EntityQueryContext.ts';
|
|
3
|
+
import type { ReadonlyEntity } from './ReadonlyEntity.ts';
|
|
4
|
+
import type { ViewerContext } from './ViewerContext.ts';
|
|
5
5
|
/**
|
|
6
6
|
* Interface to define trigger behavior for entities.
|
|
7
7
|
*/
|
|
@@ -1,18 +1,12 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.EntityNonTransactionalMutationTrigger = exports.EntityMutationTrigger = void 0;
|
|
4
1
|
/**
|
|
5
2
|
* A transactional trigger is a way to specify entity mutation operation side-effects that run within the
|
|
6
3
|
* same transaction as the mutation itself.
|
|
7
4
|
*/
|
|
8
|
-
class EntityMutationTrigger {
|
|
5
|
+
export class EntityMutationTrigger {
|
|
9
6
|
}
|
|
10
|
-
exports.EntityMutationTrigger = EntityMutationTrigger;
|
|
11
7
|
/**
|
|
12
8
|
* A non-transactional trigger is like a EntityMutationTrigger but used for afterCommit triggers
|
|
13
9
|
* since they run after the transaction is committed.
|
|
14
10
|
*/
|
|
15
|
-
class EntityNonTransactionalMutationTrigger {
|
|
11
|
+
export class EntityNonTransactionalMutationTrigger {
|
|
16
12
|
}
|
|
17
|
-
exports.EntityNonTransactionalMutationTrigger = EntityNonTransactionalMutationTrigger;
|
|
18
|
-
//# sourceMappingURL=EntityMutationTriggerConfiguration.js.map
|
|
@@ -1,7 +1,7 @@
|
|
|
1
|
-
import { EntityValidatorMutationInfo } from './EntityMutationInfo';
|
|
2
|
-
import { EntityTransactionalQueryContext } from './EntityQueryContext';
|
|
3
|
-
import { ReadonlyEntity } from './ReadonlyEntity';
|
|
4
|
-
import { ViewerContext } from './ViewerContext';
|
|
1
|
+
import type { EntityValidatorMutationInfo } from './EntityMutationInfo.ts';
|
|
2
|
+
import type { EntityTransactionalQueryContext } from './EntityQueryContext.ts';
|
|
3
|
+
import type { ReadonlyEntity } from './ReadonlyEntity.ts';
|
|
4
|
+
import type { ViewerContext } from './ViewerContext.ts';
|
|
5
5
|
/**
|
|
6
6
|
* Interface to define validator behavior for entities.
|
|
7
7
|
*/
|
|
@@ -1,11 +1,6 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.EntityMutationValidator = void 0;
|
|
4
1
|
/**
|
|
5
2
|
* A validator is a way to specify side-effect-free entity mutation validation that runs within the
|
|
6
3
|
* same transaction as the mutation itself.
|
|
7
4
|
*/
|
|
8
|
-
class EntityMutationValidator {
|
|
5
|
+
export class EntityMutationValidator {
|
|
9
6
|
}
|
|
10
|
-
exports.EntityMutationValidator = EntityMutationValidator;
|
|
11
|
-
//# sourceMappingURL=EntityMutationValidatorConfiguration.js.map
|
|
@@ -1,16 +1,16 @@
|
|
|
1
|
-
import { AuthorizationResultBasedCreateMutator, AuthorizationResultBasedDeleteMutator, AuthorizationResultBasedUpdateMutator } from './AuthorizationResultBasedEntityMutator';
|
|
2
|
-
import { Entity, IEntityClass } from './Entity';
|
|
3
|
-
import { EntityCompanionProvider } from './EntityCompanionProvider';
|
|
4
|
-
import { EntityConfiguration } from './EntityConfiguration';
|
|
5
|
-
import { EntityDatabaseAdapter } from './EntityDatabaseAdapter';
|
|
6
|
-
import { EntityLoaderFactory } from './EntityLoaderFactory';
|
|
7
|
-
import { EntityCascadingDeletionInfo } from './EntityMutationInfo';
|
|
8
|
-
import { EntityMutationTriggerConfiguration } from './EntityMutationTriggerConfiguration';
|
|
9
|
-
import { EntityMutationValidatorConfiguration } from './EntityMutationValidatorConfiguration';
|
|
10
|
-
import { EntityPrivacyPolicy } from './EntityPrivacyPolicy';
|
|
11
|
-
import { EntityQueryContext } from './EntityQueryContext';
|
|
12
|
-
import { ViewerContext } from './ViewerContext';
|
|
13
|
-
import { IEntityMetricsAdapter } from './metrics/IEntityMetricsAdapter';
|
|
1
|
+
import { AuthorizationResultBasedCreateMutator, AuthorizationResultBasedDeleteMutator, AuthorizationResultBasedUpdateMutator } from './AuthorizationResultBasedEntityMutator.ts';
|
|
2
|
+
import type { Entity, IEntityClass } from './Entity.ts';
|
|
3
|
+
import type { EntityCompanionProvider } from './EntityCompanionProvider.ts';
|
|
4
|
+
import type { EntityConfiguration } from './EntityConfiguration.ts';
|
|
5
|
+
import type { EntityDatabaseAdapter } from './EntityDatabaseAdapter.ts';
|
|
6
|
+
import type { EntityLoaderFactory } from './EntityLoaderFactory.ts';
|
|
7
|
+
import type { EntityCascadingDeletionInfo } from './EntityMutationInfo.ts';
|
|
8
|
+
import type { EntityMutationTriggerConfiguration } from './EntityMutationTriggerConfiguration.ts';
|
|
9
|
+
import type { EntityMutationValidatorConfiguration } from './EntityMutationValidatorConfiguration.ts';
|
|
10
|
+
import type { EntityPrivacyPolicy } from './EntityPrivacyPolicy.ts';
|
|
11
|
+
import type { EntityQueryContext } from './EntityQueryContext.ts';
|
|
12
|
+
import type { ViewerContext } from './ViewerContext.ts';
|
|
13
|
+
import type { IEntityMetricsAdapter } from './metrics/IEntityMetricsAdapter.ts';
|
|
14
14
|
/**
|
|
15
15
|
* The primary interface for creating, mutating, and deleting entities.
|
|
16
16
|
*/
|
|
@@ -1,11 +1,8 @@
|
|
|
1
|
-
|
|
2
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.EntityMutatorFactory = void 0;
|
|
4
|
-
const AuthorizationResultBasedEntityMutator_1 = require("./AuthorizationResultBasedEntityMutator");
|
|
1
|
+
import { AuthorizationResultBasedCreateMutator, AuthorizationResultBasedDeleteMutator, AuthorizationResultBasedUpdateMutator, } from "./AuthorizationResultBasedEntityMutator.js";
|
|
5
2
|
/**
|
|
6
3
|
* The primary interface for creating, mutating, and deleting entities.
|
|
7
4
|
*/
|
|
8
|
-
class EntityMutatorFactory {
|
|
5
|
+
export class EntityMutatorFactory {
|
|
9
6
|
entityCompanionProvider;
|
|
10
7
|
entityConfiguration;
|
|
11
8
|
entityClass;
|
|
@@ -33,7 +30,7 @@ class EntityMutatorFactory {
|
|
|
33
30
|
* @returns mutator for creating an entity
|
|
34
31
|
*/
|
|
35
32
|
forCreate(viewerContext, queryContext) {
|
|
36
|
-
return new
|
|
33
|
+
return new AuthorizationResultBasedCreateMutator(this.entityCompanionProvider, viewerContext, queryContext, this.entityConfiguration, this.entityClass, this.privacyPolicy, this.mutationValidators, this.mutationTriggers, this.entityLoaderFactory, this.databaseAdapter, this.metricsAdapter);
|
|
37
34
|
}
|
|
38
35
|
/**
|
|
39
36
|
* Vend mutator for updating an existing entity in given query context.
|
|
@@ -42,7 +39,7 @@ class EntityMutatorFactory {
|
|
|
42
39
|
* @returns mutator for updating existingEntity
|
|
43
40
|
*/
|
|
44
41
|
forUpdate(existingEntity, queryContext, cascadingDeleteCause) {
|
|
45
|
-
return new
|
|
42
|
+
return new AuthorizationResultBasedUpdateMutator(this.entityCompanionProvider, existingEntity.getViewerContext(), queryContext, this.entityConfiguration, this.entityClass, this.privacyPolicy, this.mutationValidators, this.mutationTriggers, this.entityLoaderFactory, this.databaseAdapter, this.metricsAdapter, existingEntity, cascadingDeleteCause);
|
|
46
43
|
}
|
|
47
44
|
/**
|
|
48
45
|
* Delete an existing entity in given query context.
|
|
@@ -50,8 +47,6 @@ class EntityMutatorFactory {
|
|
|
50
47
|
* @param queryContext - query context in which to perform the delete
|
|
51
48
|
*/
|
|
52
49
|
forDelete(existingEntity, queryContext, cascadingDeleteCause) {
|
|
53
|
-
return new
|
|
50
|
+
return new AuthorizationResultBasedDeleteMutator(this.entityCompanionProvider, existingEntity.getViewerContext(), queryContext, this.entityConfiguration, this.entityClass, this.privacyPolicy, this.mutationValidators, this.mutationTriggers, this.entityLoaderFactory, this.databaseAdapter, this.metricsAdapter, existingEntity, cascadingDeleteCause);
|
|
54
51
|
}
|
|
55
52
|
}
|
|
56
|
-
exports.EntityMutatorFactory = EntityMutatorFactory;
|
|
57
|
-
//# sourceMappingURL=EntityMutatorFactory.js.map
|
|
@@ -1,10 +1,10 @@
|
|
|
1
|
-
import { EntityCascadingDeletionInfo } from './EntityMutationInfo';
|
|
2
|
-
import { EntityQueryContext } from './EntityQueryContext';
|
|
3
|
-
import { ReadonlyEntity } from './ReadonlyEntity';
|
|
4
|
-
import { ViewerContext } from './ViewerContext';
|
|
5
|
-
import { EntityNotAuthorizedError } from './errors/EntityNotAuthorizedError';
|
|
6
|
-
import { IEntityMetricsAdapter } from './metrics/IEntityMetricsAdapter';
|
|
7
|
-
import { PrivacyPolicyRule } from './rules/PrivacyPolicyRule';
|
|
1
|
+
import type { EntityCascadingDeletionInfo } from './EntityMutationInfo.ts';
|
|
2
|
+
import type { EntityQueryContext } from './EntityQueryContext.ts';
|
|
3
|
+
import type { ReadonlyEntity } from './ReadonlyEntity.ts';
|
|
4
|
+
import type { ViewerContext } from './ViewerContext.ts';
|
|
5
|
+
import { EntityNotAuthorizedError } from './errors/EntityNotAuthorizedError.ts';
|
|
6
|
+
import type { IEntityMetricsAdapter } from './metrics/IEntityMetricsAdapter.ts';
|
|
7
|
+
import type { PrivacyPolicyRule } from './rules/PrivacyPolicyRule.ts';
|
|
8
8
|
/**
|
|
9
9
|
* Information about the reason this privacy policy is being evaluated.
|
|
10
10
|
*/
|