Documentation
    Preparing search index...

    Class BaseTransformer<T>Abstract

    Serves as the base for creating custom data transformers.

    // Creates a one-to-one relationship between two transformers
    transformer.item(value)

    // Creates a one-to-many relationship between two transformer
    transformer.collection(values)

    // Wraps the value inside a Maybe to allow undefined values when forming a relation
    transformer.whenLoaded(value)

    // Lazily compute value when a conditional is true. A simpler way of writing ternary
    transformer.when(conditon, () => computeValue())

    // Sets the value when an aggregate was computed for the relationship. Think
    // of it as a shorthand of self reading the value from the $extras object
    transformer.whenCounted('relationName')

    Type Parameters

    • T
    Index

    Constructors

    Methods

    • Specify a one-to-one relationship with a given transformer.

      Type Parameters

      • Self extends new (...args: any[]) => any

      Parameters

      Returns undefined | Item<InstanceType<Self>, 1, "toObject", null>

    • Specify a one-to-one relationship with a given transformer.

      Type Parameters

      • Self extends new (...args: any[]) => any

      Parameters

      • this: Self
      • data: null | ConstructorParameters<Self>[0]

      Returns Item<InstanceType<Self>, 1, "toObject", null>

    • Specify a many relationship with a given transformer.

      Type Parameters

      • Self extends new (...args: any[]) => any

      Parameters

      Returns undefined | Collection<InstanceType<Self>, 1, "toObject">

    • Specify a many relationship with a given transformer.

      Type Parameters

      • Self extends new (...args: any[]) => any

      Parameters

      • this: Self
      • data: ConstructorParameters<Self>[0][]

      Returns Collection<InstanceType<Self>, 1, "toObject">

    • Wrap the value into an optional to not fail when the collection or item data is undefined

      Type Parameters

      • Value

      Parameters

      Returns Maybe<Value>

    • Omits the given keys from the data-set. The return value is a shallow copy of the original data-set.

      Type Parameters

      • Data extends Record<string, any>
      • Keys extends string | number | symbol

      Parameters

      Returns Exclude<Data, Keys>

    • Given the given keys from the data-set. The return value is a shallow copy of the original data-set.

      Type Parameters

      • Data extends Record<string, any>
      • Keys extends string | number | symbol

      Parameters

      Returns Pick<Data, Keys>

    • Conditionally compute a value

      Type Parameters

      • Value
      • Fallback = undefined

      Parameters

      • conditional: boolean
      • resolver: () => Value
      • Optionalfallback: Fallback

      Returns Value | Fallback