FormBuilderDSL.Context (form_builder_dsl v0.1.2)

View Source

Provides form context and state management.

This module helps manage form state, including:

  • Field values
  • Validation errors
  • Form submission state
  • Field dependencies

Summary

Functions

Gets the error message for a field.

Checks if a field has an error.

Creates a new form context.

Updates a field value in the form context.

Checks if the form is valid.

Validates all fields in the form context.

Types

t()

@type t() :: %FormBuilderDSL.Context{
  dependencies: map(),
  errors: map(),
  fields: [FormBuilderDSL.Field.t()],
  form_name: atom(),
  submitted: boolean(),
  values: map()
}

Functions

error_for(context, field)

Gets the error message for a field.

Parameters

  • context - The form context
  • field - The field key

Returns

  • Error message if the field has an error
  • nil if the field has no error

has_error?(context, field)

Checks if a field has an error.

Parameters

  • context - The form context
  • field - The field key

Returns

  • true if the field has an error
  • false otherwise

new(form_name, fields, opts \\ [])

Creates a new form context.

Parameters

  • form_name - The name of the form
  • fields - List of field definitions
  • opts - Additional options

Options

  • :values - Initial field values
  • :dependencies - Field dependencies

update_value(context, field, value)

Updates a field value in the form context.

Parameters

  • context - The form context
  • field - The field key
  • value - The new value

valid?(context)

Checks if the form is valid.

Parameters

  • context - The form context

Returns

  • true if the form has no errors
  • false otherwise

validate(context)

Validates all fields in the form context.

Parameters

  • context - The form context

Returns

  • Updated context with validation errors