Skip to main content

Forms


Forms

A form definition configures which columns (verticals), datasets, and services power a form component. Each vertical maps to a rendered column in the form layout and can contain sections (collapsible groups) or a flat list of field references.

Field names referenced inside verticals/sections must match keys defined in the Fields configuration.

"createIssueForm": {
"verticals": [
{
"name": "column1",
"sections": [
{
"id": "basicInfo",
"title": "Basic Information",
"fields": [
"issue_title",
"issue_desc"
]
}
]
},
{
"name": "column2",
"fields": [
"issue_priority",
"issue_state"
]
}
],
"datasets": [
"contextNode"
],
"services": [
"fetchIssueTypes"
],
"edit": {
"services": [
{ "name": "updateIssue" }
]
}
}

Form properties

PropertyTypeRequiredDescription
verticalsarrayyesOrdered list of column definitions rendered left-to-right in the form. Each entry is a Vertical.
datasetsarray<string>yesDataset definition name references that provide the graph/node data context. Field values are resolved against these datasets.
servicesarray<string>noService definition names called eagerly on form load to fetch initial data into the graph before fields are resolved.
deferredServicesarray<string>noService definition names called lazily after initial load. Useful when a service depends on a value only available after the form has first rendered.
editobjectnoConfiguration applied when the form is saved in edit mode. See Edit.

Vertical properties

Each entry in verticals defines one column in the form layout.

PropertyTypeRequiredDescription
namestringyesUnique name for this column, used to reference it from the verticals list.
titlestringnoOptional display title for the column.
sectionsarraynoList of Section objects that group related fields under collapsible headers. Use either sections or fields, not both.
fieldsarraynoFlat list of field references rendered directly in the column without grouping. Use either fields or sections, not both.

Section properties

Sections group fields within a column under a collapsible header.

PropertyTypeRequiredDescription
idstringyesUnique identifier for the section within the form.
titlestringnoHeader label displayed in the section's toggle bar.
collapsedbooleannoWhen true, the section starts collapsed. Defaults to false (expanded).
hiddenbooleannoWhen true, the section and all its fields are hidden. Can be driven dynamically via visibility.
visibilityobjectnoControls section visibility based on another field's value. See Visibility.
fieldsarraynoOrdered list of field references to render inside this section.

Section visibility

PropertyTypeDescription
dependsOnstringThe name or id of the field whose value controls this section's visibility.
dependsOnValuestring or array<string>The value(s) the dependsOn field must match for the section to be shown. Any other value hides the section.

Field reference

Each item in a vertical's fields array or a section's fields array is a string reference to a field definition key.

ValueTypeRequiredDescription
field keystringyesThe key of the field definition as declared in the fields configuration.

Edit properties

PropertyTypeDescription
servicesarray<object>List of services called when the form is saved in edit mode. Each object has a name property with the service definition name to invoke (typically a PATCH or POST service).

Edit services example

"edit": {
"services": [
{ "name": "updateIssue" }
]
}