Form layout format
Introduced in 2023.2
The layout of Alloy Navigator forms is represented as a hierarchical JSON structure that consists of an array of form elements. Each form element is an object with specific properties that define its behavior and appearance within the layout. Among these properties only type
is mandatory, while the rest are optional. All the available properties are described below:
Type property
type
is a key property that describes the type of the form element. This is the only mandatory property. It has a predefined set of possible values that can be split into two lists:
The first list includes these basic (or elementary) components that serve as building blocks to create a form. Those are:
-
tabs
-
tab
-
row
-
column
-
container
-
field
-
calculatedField
-
label
-
button
INFO: For details about each elementary component, see Basic UI elements.
The second list consists of more advanced (or complex) components that are specific to particular forms. These components are typically large, self-contained sections of the form that can only be manipulated as a whole. These components are as follows:
-
grid
-
feedback
-
activity
-
modificationInfo
-
customData
-
serviceInfo
-
assosiatedInfo
-
assetCategorization
-
vendorInfo
-
licenseSummary
-
licenseRestrictions
-
trackedSoftwareSummary
INFO: For details about each complex component, see Advanced UI elements.
Optional properties
-
key
: A unique identifier for the form element. Its usage varies depending on the element's type. For certain types, liketab
,field
,calculatedField
, andgrid
, it is mandatory. For other types, it is optional string. -
caption
: String property that allows for the customization of the element's displayed name. This is particularly useful for elements of typecontainer
. -
mandatory
: Boolean property that can be used to override the requirement for filling in a field. It is applicable to elements of typefield
. -
readonly
: Boolean property that can be used to override the ability to edit or change the value of a field. It is applicable to elements of typefield
. -
customMarking
: This property is used for elements of typetab
. It specifies custom markings for tabs, such asbullet
orcounter
. -
container
: An object property used to describe settings for elements of typecontainer
. It includes properties likeshowHeader
(a boolean indicating header visibility) andcollapsible
" (a boolean indicating the ability to collapse the container's contents). -
component
: A property used for elements of typetab
to specify the content or functionality associated with the tab. Values likelayout
,notes
,resolution
, and others determine the tab's behavior. -
styles
: String property that allows for the customization of styles associated with the form element, such as column width. -
items
: Nested array property used for certain types liketabs
,tab
,row
,column
, andcontainer
. It allows for the inclusion of additional form elements within the current element. For example, inside atabs
element, onlytab
elements can be included.row
andcolumn
types help arrange form elements horizontally or vertically, respectively, andcontainer
is used to group other form elements together.