The base document class which belongs in this field
Optional
options: StringFieldOptions = {}Options which configure the behavior of the field
Optional
context: DataFieldContext = {}Additional context which describes the field
Is the string allowed to be blank (empty)?
Should any provided string be trimmed as part of cleaning?
An array of values or an object of values/labels which represent allowed choices for the field. A function may be provided which dynamically returns the array of choices.
Is this string field a target for text search?
Internal
nameThe field name of this DataField instance. This is assigned by SchemaField#initialize.
Internal
parentA reference to the parent schema to which this DataField belongs. This is assigned by SchemaField#initialize.
The initially provided options which configure the data field
Static
hierarchicalWhether this field defines part of a Document/Embedded Document hierarchy.
Static
recursiveDoes this field type contain other fields in a recursive structure? Examples of recursive fields are SchemaField, ArrayField, or TypeDataField Examples of non-recursive fields are StringField, NumberField, or ObjectField
A dot-separated string representation of the field path within the parent schema.
Static
_defaultsDefault parameters for this field type
Static
hasDoes this form field class have defined form support?
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.
The initial value
Additional options for how the field is cleaned
The cast value
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.
The candidate value
A boolean to indicate with certainty whether the value is valid. Otherwise, return void.
May throw a specific error if the value is not valid
Apply a function to this DataField which propagates through recursively to any contained data schema.
The function to apply
The current value of this field
Optional
options: object = {}Additional options passed to the applied function
The results object
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
Optional
options: DataFieldValidationOptions = {}Options which affect validation behavior
Returns a DataModelValidationFailure if a validation failure occurred.
Internal
Certain fields may declare joint data validation criteria. This method will only be called if the field is designated as recursive.
Candidate data for joint model validation
Options which modify joint model validation
An error if joint model validation fails
Initialize the original source data into a mutable copy for the DataModel instance.
The source value of the field
The DataModel instance that this field belongs to
Optional
options: object = {}Initialization options
An initialized copy of the source data
Internal
Recursively traverse a schema and retrieve a field specification by a given path
The field path as an array of strings
Render this DataField as an HTML element.
Form element configuration parameters
A rendered HTMLElement for the field
An Error if this DataField subclass does not support input rendering
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
Apply an ActiveEffectChange to this field.
The field's current value.
The model instance.
The change to apply.
The updated value.
Protected
_isProtected
_cleanProtected
_applyProtected
Apply 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
_applyProtected
Apply 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
_applyProtected
Apply 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
_applyProtected
Apply 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
_applyProtected
Apply 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
_applyProtected
Apply a CUSTOM change to this field.
The field's current value.
The change delta.
The model instance.
The original change data.
The updated value.
Static
_getInternal
Get a record of eligible choices for the field.
Optional
options: { The property in the choice object values to use as the option label.
Pass each label through string localization?
A subclass of [StringField]StringField that is used specifically for the Document "type" field.