CurrentPageElements
API / @publicodes/forms / CurrentPageElements
type CurrentPageElements<RuleName> = object;
Defined in: formBuilder.ts:129
Creates and manages multi-page forms based on Publicodes rules.
FormBuilder provides a complete solution for building dynamic, multi-step forms that adapt to user input. It handles:
- Form state management
- Page navigation and pagination
- Field validation and dependencies
- Progressive disclosure of relevant fields
Type Parameters
Type Parameter | Description |
---|---|
RuleName extends string | The type of rule names used in the form |
Type declaration
Name | Type | Defined in |
---|---|---|
elements | EvaluatedFormElement <RuleName > & FormPageElementProp [] | formBuilder.ts:131 |
title ? | string | formBuilder.ts:130 |
Example
// Create a form builder
const engine = new Engine(rules)
const formBuilder = new FormBuilder({ engine })
// Initialize form state
let state = FormBuilder.newState()
state = formBuilder.start(state, 'target . rule')
// Handle user input
state = formBuilder.handleInputChange(state, 'user . age', 25)
// Navigate between pages
state = formBuilder.goToNextPage(state)