The contained field definitions.
InternalnameThe field name of this DataField instance. This is assigned by SchemaField#initialize.
The initially provided options which configure the data field
InternalparentA reference to the parent schema to which this DataField belongs. This is assigned by SchemaField#initialize.
StatichierarchicalWhether this field defines part of a Document/Embedded Document hierarchy.
StaticrecursiveA dot-separated string representation of the field path within the parent schema.
Static_defaultsDefault parameters for this field type
StatichasDoes this form field class have defined form support?
InternalCast a change delta into an appropriate type to be applied to this field.
The change delta.
Apply any cleaning logic specific to this DataField type.
The appropriately coerced value.
Additional options for how the field is cleaned.
The cleaned value.
The SchemaField#update method plays a special role of recursively dispatching DataField#update operations to the constituent fields within the schema.
Iterate over a SchemaField by iterating over its fields.
Apply an ActiveEffectChange to this field.
The field's current value.
The model instance.
The change to apply.
The updated value.
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.
An initial requested value
Optionaloptions: { partial?: boolean; source?: object } = {}Additional options for how the field is cleaned
Optionalpartial?: booleanWhether to perform partial cleaning?
Optionalsource?: objectThe root data model being cleaned
The cast value
An array of [name, DataField] tuples which define the schema.
Get a DataField instance from the schema by name.
The field name
The DataField instance or undefined
Traverse the schema, obtaining the DataField definition for a particular field.
A field path like ["abilities", "strength"] or "abilities.strength"
The corresponding DataField definition for that field, or undefined
Test whether a certain field name belongs to this schema definition.
The field name
Does the named field exist in this schema?
An array of field names which are present in the schema.
Migrate this field's candidate source data.
Candidate source data of the root model
The value of this field within the source data
Render this DataField as a standardized form-group element.
Configuration options passed to the wrapping form-group
Input element configuration options passed to DataField#toInput
The rendered form group element
Render this DataField as an HTML element.
Form element configuration parameters
A rendered HTMLElement for the field
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), by returning false, or by returning a DataModelValidationFailure instance. A validator which returns true denotes that the result is certainly valid and further validations are unnecessary.
The initial value
Optionaloptions: DataFieldValidationOptions = {}Options which affect validation behavior
Returns a DataModelValidationFailure if a validation failure occurred.
An array of DataField instances which are present in the schema.
Protected_applyProtectedApply an ADD change to this field.
The field's current value.
The change delta.
The model instance.
The original change data.
The updated value.
Protected_applyProtectedApply a CUSTOM change to this field.
The field's current value.
The change delta.
The model instance.
The original change data.
The updated value.
Protected_applyProtectedApply a DOWNGRADE change to this field.
The field's current value.
The change delta.
The model instance.
The original change data.
The updated value.
Protected_applyProtectedApply a MULTIPLY change to this field.
The field's current value.
The change delta.
The model instance.
The original change data.
The updated value.
Protected_applyProtectedApply an OVERRIDE change to this field.
The field's current value.
The change delta.
The model instance.
The original change data.
The updated value.
Protected_applyProtectedApply an UPGRADE change to this field.
The field's current value.
The change delta.
The model instance.
The original change data.
The updated value.
Protected_initializeProtectedInitialize and validate the structure of the provided field definitions.
The provided field definitions
The validated schema
Protected_toProtectedRender this DataField as an HTML element. Subclasses should implement this method rather than the public toInput method which wraps it.
Form element configuration parameters
A rendered HTMLElement for the field
Protected_validateProtectedSpecial validation rules which supersede regular field validation. This validator screens for certain values which are otherwise incompatible with this field like null or undefined.
The candidate value
A boolean to indicate with certainty whether the value is valid. Otherwise, return void.
A custom SchemaField for defining package relationships.
Mixes
PackageRelationshipsData