Class UpdateMutator<TFields, TID, TViewerContext, TEntity, TPrivacyPolicy, TSelectedFields>

Mutator for updating an existing entity.

Type Parameters

  • TFields extends object

  • TID extends NonNullable<TFields[TSelectedFields]>

  • TViewerContext extends ViewerContext

  • TEntity extends Entity<TFields, TID, TViewerContext, TSelectedFields>

  • TPrivacyPolicy extends EntityPrivacyPolicy<TFields, TID, TViewerContext, TEntity, TSelectedFields>

  • TSelectedFields extends keyof TFields

Hierarchy

  • BaseMutator<TFields, TID, TViewerContext, TEntity, TPrivacyPolicy, TSelectedFields>
    • UpdateMutator

Constructors

  • Type Parameters

    • TFields extends object

    • TID extends {}

    • TViewerContext extends ViewerContext<TViewerContext>

    • TEntity extends Entity<TFields, TID, TViewerContext, TSelectedFields, TEntity>

    • TPrivacyPolicy extends EntityPrivacyPolicy<TFields, TID, TViewerContext, TEntity, TSelectedFields, TPrivacyPolicy>

    • TSelectedFields extends string | number | symbol

    Parameters

    Returns UpdateMutator<TFields, TID, TViewerContext, TEntity, TPrivacyPolicy, TSelectedFields>

Properties

companionProvider: EntityCompanionProvider
databaseAdapter: EntityDatabaseAdapter<TFields>
entityClass: IEntityClass<TFields, TID, TViewerContext, TEntity, TPrivacyPolicy, TSelectedFields>
entityConfiguration: EntityConfiguration<TFields>
entityLoaderFactory: EntityLoaderFactory<TFields, TID, TViewerContext, TEntity, TPrivacyPolicy, TSelectedFields>
fieldsForEntity: TFields
metricsAdapter: IEntityMetricsAdapter
mutationTriggers: EntityMutationTriggerConfiguration<TFields, TID, TViewerContext, TEntity, TSelectedFields>
mutationValidators: EntityMutationValidator<TFields, TID, TViewerContext, TEntity, TSelectedFields>[]
originalEntity: TEntity
privacyPolicy: TPrivacyPolicy
queryContext: EntityQueryContext
updatedFields: Partial<TFields> = {}
viewerContext: TViewerContext

Methods

  • Set the value for entity field.

    Type Parameters

    • K extends string | number | symbol

    Parameters

    • fieldName: K

      entity field being updated

    • value: TFields[K]

      value for entity field

    Returns UpdateMutator<TFields, TID, TViewerContext, TEntity, TPrivacyPolicy, TSelectedFields>

  • Commit the changes to the entity after authorizing against update privacy rules. Invalidates all caches for pre-update entity.

    Returns Promise<Result<TEntity>>

    authorized updated entity result, where result error can be UnauthorizedError

Generated using TypeDoc