Options
All
  • Public
  • Public/Protected
  • All
Menu

A subclass of ObjectField which supports a system-level data object.

Hierarchy

Index

Constructors

Properties

document: {}

The canonical document name of the document type which belongs in this field

Type declaration

    The initially provided options which configure the data field

    name: any

    The field name of this DataField instance. This is assigned by SchemaField#initialize.

    internal
    parent: any

    A reference to the parent schema to which this DataField belongs. This is assigned by SchemaField#initialize.

    internal

    Accessors

    • get documentName(): string
    • A convenience accessor for the name of the document type associated with this SystemDataField

      Returns string

    • get fieldPath(): string
    • A dot-separated string representation of the field path within the parent schema.

      Returns string

    • get _defaults(): any
    • inheritdoc

      Returns any

    Methods

    • getModelForType(type: string): typeof DataModel
    • Get the DataModel definition that should be used for this type of document.

      Parameters

      • type: string

        The Document instance type

      Returns typeof DataModel

      The DataModel class, or null

    • getInitialValue(data: any): any
    • _cleanType(value: any, options: any): any
    • initialize(value: any, model: any, options?: {}): any
    • _validateType(data: any, options?: {}): void
    • toObject(value: any): any
    • _cast(value: any): any
    • apply(fn: string | Function, value: any, options?: any): any
    • Apply a function to this DataField which propagates through recursively to any contained data schema.

      Parameters

      • fn: string | Function

        The function to apply

      • value: any

        The current value of this field

      • options: any = {}

      Returns any

      The results object

    • clean(value: any, options: { partial: boolean; source: any }): any
    • Coerce source data to ensure that it conforms to the correct data type for the field. Data coercion operations should be simple and synchronous as these are applied whenever a DataModel is constructed. For one-off cleaning of user-provided input the sanitize method should be used.

      Parameters

      • value: any

        The initial value

      • options: { partial: boolean; source: any }
        • partial: boolean
        • source: any

      Returns any

      The cast value

    • Validate a candidate input for this field, ensuring it meets the field requirements. A validation failure can be provided as a raised Error (with a string message) or by returning false. A validator which returns true denotes that the result is certainly valid and further validations are unnecessary.

      Parameters

      • value: any

        The initial value

      • options: any = {}

      Returns ModelValidationError

      Returns a ModelValidationError if a validation failure occurred

    • _validateSpecial(value: any): boolean | void
    • Special validation rules which supersede regular field validation. This validator screens for certain values which are otherwise incompatible with this field like null or undefined.

      throws

      May throw a specific error if the value is not valid

      Parameters

      • value: any

        The candidate value

      Returns boolean | void

      A boolean to indicate with certainty whether the value is valid. Otherwise, return void.