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

Mutator for creating a new 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>
    • CreateMutator

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 CreateMutator<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: Partial<TFields> = {}
metricsAdapter: IEntityMetricsAdapter
mutationTriggers: EntityMutationTriggerConfiguration<TFields, TID, TViewerContext, TEntity, TSelectedFields>
mutationValidators: EntityMutationValidator<TFields, TID, TViewerContext, TEntity, TSelectedFields>[]
privacyPolicy: TPrivacyPolicy
queryContext: EntityQueryContext
viewerContext: TViewerContext

Methods

  • Commit the new entity after authorizing against creation privacy rules. Invalidates all caches for queries that would return new entity.

    Returns Promise<Result<TEntity>>

    authorized, cached, newly-created entity result, where result error can be UnauthorizedError

  • 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 CreateMutator<TFields, TID, TViewerContext, TEntity, TPrivacyPolicy, TSelectedFields>

Generated using TypeDoc