Form
The form widget lets you build dynamic, data-driven forms with a wide variety of input types. Configure the layout, create complex field groups, and connect the widget to backend logic to handle submission, validation, and live updates.

Data binding
Widget to function input
Property
Description
Type
formData
Fires whenever any field value changes. The payload is an object holding all current form data.
object
validationResult
Fires after a validate command executes. Contains an object describing the validation outcome with isValid, status, and brokenRules.
object
Function output or modifier to widget
Property
Description
Type
autoFill
Pre-fills the form with the provided data object. The structure must match the dataField names.
object
clear
Clears all data from the form when set to true.
boolean
validate
Triggers form validation when set to true.
boolean
readOnly
Sets the read-only state of the entire form when set to true.
boolean
options
Provides options for select, tags, or radioGroup editors at runtime. The object keys must match the dataField of the target editor.
object
addFields
Adds new fields to the form dynamically. Accepts an array of field objects for a single group, or an object mapping group dataField keys to arrays of fields.
array or object
setFields
Replaces all existing fields with a new set dynamically. Accepts an array of field objects for a single group, or a full group-structure object.
array or object
Data structure
Autofilling the form (autoFill)
To pre-fill the form, pass a YAML object to the autoFill property. Its structure must mirror your form configuration.
Keys: Keys in your YAML object must match the
dataFieldnames defined for each field in the configuration.Nesting: Nest your YAML object to match if you use form groups with a designated
dataField. The group'sdataFieldbecomes the key for a nested object holding that group's fields.
Example configuration:
The object stays flat if your form configuration uses no groups with dataField names:
Setting options at runtime (options)
To populate a select, tags, or radioGroup editor at runtime, pass a YAML object to the options property.
Keys: Keys of this object must match the
dataFieldname of the specific editor you want to update.Values: The value for each key must be an array of options.
The options in the array support two formats:
Simple array of strings: Use this format when the display text and the value match. For example:
["Apple", "Banana", "Cherry"]Array of key-value pairs: Use this format when you require different text for display and for the submitted value. Follow the format
["Display Text", "value"]. For example:[ ["New York", "NY"], ["California", "CA"] ]
Example configuration:
Extended location field data
When a user selects a place using a location editor, the widget adds an extended object to the formData payload. The standard field (dataField) contains the formatted address string, while a secondary field with an Ext suffix (dataFieldExt) contains a detailed object with properties like name, address, city, postcode, country, and geoJson.
Example payload for a location field named officeAddress:
Configuration
Style settings
These properties control the overall appearance and layout of the form widget.
Property
Label
Description
Type
colCount
Column count
Sets the number of columns arranging the form items.
integer
labelLocation
Label location
Controls where field labels sit relative to the editors.
string
labelMode
Label mode
Defines how labels display, supporting static, floating, hidden, or outside.
string
showColonAfterLabel
Show colon
Adds a colon after each field label when set to true.
boolean
initiallyReadOnly
Initially read-only
Renders the entire form as read-only when it first loads.
boolean
triggerFormDataOnAutoFill
Trigger form data event on autofill
Automatically triggers an outgoing formData event when an autoFill command executes.
boolean
fontSizeContent
Content font size
Sets the font size in pixels for text inside the form fields.
integer
fontSizeLabel
Label font size
Sets the font size in pixels for the field labels.
integer
Screen-specific column layouts
Modify the column count for each screen type separately to display a different number of columns across interfaces. The platform automatically applies other style settings to all screens at once to preserve layout consistency.
Data settings
Define the structure and content of your form by configuring groups and fields.
Form groups
Organize your form into one or more groups. With multiple groups, you can optionally display them as tabs.
Property
Label
Description
Type
dataField
Group field name
A unique name for the group. On submit, every field in this group nests under this key.
string
label
Group label
A visible title displayed above the group of fields.
string
tabView
Tab label
Groups sharing an identical tabView label render as tabs within a tab panel.
string
fields
Fields
An array of field objects belonging to this group.
array
Form fields
Each item in the fields array defines an active input editor in your form.
Property
Label
Description
Type
dataField
Field name
A unique name for the field that serves as the key in the form data object.
string
label
Label
The text label displayed for the field editor.
string
helpText
Help text
Hint text to guide the user.
string
colSpan
Column span
The number of columns the field occupies in the layout.
integer
isRequired
Required
Marks the field as mandatory during form validation.
boolean
disabled
Disabled
Disables the field to prevent user interaction.
boolean
readOnly
Read-only
Makes the specific field read-only.
boolean
editor
Editor type
The input control type to render. Supports sixteen different editor options.
string
Editor types
The editor property configuration determines which interface control renders on screen:
Editor type
Description or value type
text
Text box, outputs a string value.
select
Select box, outputs a string selection value.
number
Number box, outputs a numeric value.
checkbox
Check box, outputs a boolean value.
password
Password text box, hides characters and outputs a string value.
tags
Tag box, outputs an array of selected values.
dateTime
Date/time select, outputs a serialized date string.
dateRange
Date range selector, outputs an array containing date spans.
color
Color select, outputs a hexadecimal color number.
location
Location select, provides Google Maps autocompletion to output a geojson object.
radioGroup
Radio button group, outputs a string selection value.
textarea
Text area field, spans multiple lines and outputs a string value.
slider
Range slider, outputs a numeric value.
switch
Binary switch toggle, outputs a boolean value.
calendar
Inline calendar picker, outputs a selected date value.
edgeConnector
Specialized dropdown that lists available edge-connector data sources.
Editor-specific configuration options
Configure the specific behavioral parameters of your selected input controllers using the unified options table below.
Property
Label
Description
Type
accentColor
Use accent color
Applies the global theme accent color style (text only).
boolean
min
Minimum
Sets the minimum allowed numeric boundary value (number and slider only).
number
max
Maximum
Sets the maximum allowed numeric boundary value (number and slider only).
number
defaultValue
Default value
Defines the initial pre-selected state or fallback content value (number, slider, select, tags, radioGroup, switch only).
string, number, or boolean
prefix
Prefix
Prepend text formatting before the number string representation (number only).
string
suffix
Suffix
Append text formatting after the number string representation (number only).
string
showSeparator
Show separator
Employs thousands punctuation marks within the text layout representation (number only).
boolean
precision
Precision
Enforces a maximum scale count constraint for floating decimal places (number only).
number
step
Step
Defines the strict adjustment interval stepping sequence increment value (slider only).
number
options
Options
Comma-separated alternative options layout configurations matching the display:value pair structure rule (select, tags, radioGroup only).
string
searchEnabled
Enable searching
Grants interactive textual lookup filters functionality over lists (select and edgeConnector only).
boolean
showClearButton
Show clear button
Introduces an interactive clearing icon button utility component structure (select only).
boolean
showDropDownButton
Show drop down button
Toggles structural layout rendering visibility for the dropdown expansion anchor indicator box (select and edgeConnector only).
boolean
layout
Layout
Dictates explicit positioning configuration structures, allowing vertically or horizontally options (radioGroup only).
string
switchedOnText
Switched on text
Overrides text layout representations matching active structural states (switch only).
string
switchedOffText
Switched off text
Overrides text layout representations matching inactive structural states (switch only).
string
dateType
Date type
Configures target structural picker focus formats among date, time, or datetime models (dateTime only).
string
locationType
Location type
Declares target Google Places endpoint filtering scopes matching address or establishment classifications (location only).
string
Last updated
Was this helpful?