Skip to content

API: Form Containers

Form

Class Signature

Properties

PropertyTypeDefaultDescription
formIdString--Unique identifier
titleString?--Form title
descriptionString?--Form description
hSpacingdouble--Horizontal grid spacing
vSpacingdouble--Vertical grid spacing
itemsList<ContentItem>--Fields, sections, repeating sections
formGroupFormGroup--reactive_forms FormGroup
validObservable<bool>--MobX-reactive validity

Methods

  • currentValues
    Map<String, dynamic> currentValues

    Current field values

  • savedValues
    Map<String, dynamic> savedValues

    Alias for currentValues

  • getFieldValue
    dynamic getFieldValue(String name)

    Single field value

  • setFieldValue
    void setFieldValue(String name, dynamic value)

    Set single field

  • patchValues
    void patchValues(Map<String, dynamic> values)

    Patch multiple fields

  • validate
    bool validate({bool focusOnInvalid})

    Mark touched, check validity

  • saveAndValidate
    bool saveAndValidate({bool focusOnInvalid})

    Alias for validate

  • isValid
    bool isValid

    Synchronous validity check

  • resetForm
    void resetForm()

    Reset to initial values

  • isDirty
    bool isDirty

    Any field modified

  • isTouched
    bool isTouched

    Any field interacted with

  • validateAllAsync
    Future<bool> validateAllAsync()

    Run all async validations

  • getAllErrors
    Map<String, String> getAllErrors()

    All validation errors

  • getAsyncErrors
    Map<String, String?> getAsyncErrors()

    Async validation errors

  • collectSoftBreaches
    List<SoftBreachDetails> collectSoftBreaches()

    Soft validation warnings

  • hasSoftValidations
    bool hasSoftValidations

    Any soft validation configured

  • addListener
    void addListener(VoidCallback)

    Value change listener

  • removeListener
    void removeListener(VoidCallback)

    Remove listener

  • addDerivations
    void addDerivations(List<FieldDerivation>)

    Register field derivations

  • dispose
    void dispose()

    Clean up subscriptions

Schema: vyuh.form

Top-level form container that creates and owns a FormGroup.


FormDescriptor

Class Signature

Registration descriptor used to declare validations, conditions, actions, and layouts available to a Form.


FormSection

Class Signature

Schema: vyuh.form.section

Visual grouping container. Not a form field -- creates no control.


RepeatingSection

Class Signature

Methods

  • canAddInstance
    bool canAddInstance

    Whether more instances can be added

  • namespacedFieldName
    String namespacedFieldName(int index, String fieldName)

    Generate name.index.fieldName

Schema: vyuh.form.repeating_section

Dynamic array of field groups using FormArray.

Enums

dart
enum RepeatDisplayMode { accordion, expanded }

StepForm

Class Signature

Schema: vyuh.stepForm

Multi-step wizard where each step is a Form.

Enums

dart
enum ProgressTrackingType { none, all, required }

StepFormDescriptor

Class Signature

Registration descriptor for StepForm, declaring layouts and controllers.

Next Steps