@serenity-is/corelib / PropertyItem
Interface: PropertyItem
Defined in: src/base/propertyitem.ts:40
Describes a single field / column / form property as returned by server-side metadata. Drives form generation, grid columns, editors, formatters and filtering. Each property corresponds to a row field or an unbound UI field.
Properties
alignment?
optionalalignment:string
Defined in: src/base/propertyitem.ts:116
Horizontal alignment for the column ("left" | "center" | "right" or similar).
allowHide?
optionalallowHide:boolean
Defined in: src/base/propertyitem.ts:106
Whether the user is allowed to hide the column via the column picker.
category?
optionalcategory:string
Defined in: src/base/propertyitem.ts:58
Category group shown as a collapsible section in forms.
collapsed?
optionalcollapsed:boolean
Defined in: src/base/propertyitem.ts:62
Whether the category starts collapsed. Only meaningful when collapsible is true.
collapsible?
optionalcollapsible:boolean
Defined in: src/base/propertyitem.ts:60
Whether the category section can be collapsed.
cssClass?
optionalcssClass:string
Defined in: src/base/propertyitem.ts:66
CSS class applied to the grid cell / column.
defaultValue?
optionaldefaultValue:any
Defined in: src/base/propertyitem.ts:100
Default value applied to new records / empty editors.
displayFormat?
optionaldisplayFormat:string
Defined in: src/base/propertyitem.ts:114
Display format string (e.g. date / number format) consumed by the formatter.
editLink?
optionaleditLink:boolean
Defined in: src/base/propertyitem.ts:144
When true the cell value is rendered as a link that opens the record's edit dialog.
editLinkCssClass?
optionaleditLinkCssClass:string
Defined in: src/base/propertyitem.ts:150
Extra CSS class for the edit link anchor.
editLinkIdField?
optionaleditLinkIdField:string
Defined in: src/base/propertyitem.ts:148
Field name that provides the ID for the edit link (defaults to the identity field).
editLinkItemType?
optionaleditLinkItemType:string
Defined in: src/base/propertyitem.ts:146
Row type key used for the edit link dialog (defaults to the current row type).
editorAddons?
optionaleditorAddons:object[]
Defined in: src/base/propertyitem.ts:54
Addons rendered alongside the editor (e.g. buttons). Each entry specifies a type key or EditorAddon callback and optional params.
params?
optionalparams:any
type
type:
string|EditorAddon
editorCssClass?
optionaleditorCssClass:string
Defined in: src/base/propertyitem.ts:56
Extra CSS class(es) applied to the editor element.
editorParams?
optionaleditorParams:any
Defined in: src/base/propertyitem.ts:52
Options passed to the editor constructor.
editorType?
optionaleditorType:string| (props?) =>any|PromiseLike<(props?) =>any>
Defined in: src/base/propertyitem.ts:50
Editor type key (e.g. "String", "Date") or a constructor / lazy import for a custom editor.
filteringIdField?
optionalfilteringIdField:string
Defined in: src/base/propertyitem.ts:156
Field that provides the ID value for filtering (useful for lookup display fields).
filteringParams?
optionalfilteringParams:any
Defined in: src/base/propertyitem.ts:154
Options passed to the filtering editor.
filteringType?
optionalfilteringType:string
Defined in: src/base/propertyitem.ts:152
Filter editor type key that determines the filtering UI for this field (e.g. "String", "Date").
filterOnly?
optionalfilterOnly:boolean
Defined in: src/base/propertyitem.ts:160
When true the field appears only in filter dialogs / panels and not in the grid itself.
focusable?
optionalfocusable:boolean
Defined in: src/base/propertyitem.ts:108
Whether the column can receive focus / be navigated via keyboard.
formatterParams?
optionalformatterParams:any
Defined in: src/base/propertyitem.ts:112
Options passed to the formatter.
formatterType?
optionalformatterType:string| (props?) =>object|PromiseLike<(props?) =>object>
Defined in: src/base/propertyitem.ts:110
Formatter type key or constructor / lazy import used to render the cell value.
formCssClass?
optionalformCssClass:string
Defined in: src/base/propertyitem.ts:70
CSS class applied to the form field container (<div class="field">).
groupOrder?
optionalgroupOrder:number
Defined in: src/base/propertyitem.ts:140
Order index for grouping; controls group-by precedence when multiple columns are grouped.
headerCssClass?
optionalheaderCssClass:string
Defined in: src/base/propertyitem.ts:68
CSS class applied to the column header.
hideOnInsert?
optionalhideOnInsert:boolean
Defined in: src/base/propertyitem.ts:80
Hides the field in insert (create) mode.
hideOnUpdate?
optionalhideOnUpdate:boolean
Defined in: src/base/propertyitem.ts:86
Hides the field in update (edit) mode.
hint?
optionalhint:string
Defined in: src/base/propertyitem.ts:46
Tooltip / hint shown on hover or beside the label.
insertable?
optionalinsertable:boolean
Defined in: src/base/propertyitem.ts:76
Whether the field can be set on insert. When false the field is read-only during creation.
insertPermission?
optionalinsertPermission:string
Defined in: src/base/propertyitem.ts:78
Permission key required to set the field on insert.
labelWidth?
optionallabelWidth:string
Defined in: src/base/propertyitem.ts:128
Width of the form label for this field (e.g. "150px").
localizable?
optionallocalizable:boolean
Defined in: src/base/propertyitem.ts:102
Whether the field supports per-language values (requires Localizations).
maxLength?
optionalmaxLength:number
Defined in: src/base/propertyitem.ts:72
Maximum string length for validation.
maxWidth?
optionalmaxWidth:number
Defined in: src/base/propertyitem.ts:126
Maximum column width in pixels.
minWidth?
optionalminWidth:number
Defined in: src/base/propertyitem.ts:124
Minimum column width in pixels.
name
name:
string
Defined in: src/base/propertyitem.ts:42
Field / property key (usually the row field name).
notFilterable?
optionalnotFilterable:boolean
Defined in: src/base/propertyitem.ts:158
When true the column cannot be used as a filter criterion.
oneWay?
optionaloneWay:boolean
Defined in: src/base/propertyitem.ts:98
Deprecated
use skipOnSave instead — kept for backward compatibility.
pin?
optionalpin:boolean|"start"|"end"
Defined in: src/base/propertyitem.ts:118
Pin / freeze the column to the start (left) or end (right) of the grid, or true for start.
placeholder?
optionalplaceholder:string
Defined in: src/base/propertyitem.ts:48
Placeholder text for the editor input.
quickFilter?
optionalquickFilter:boolean
Defined in: src/base/propertyitem.ts:162
Whether the field appears in the quick-filter bar above the grid.
quickFilterCssClass?
optionalquickFilterCssClass:string
Defined in: src/base/propertyitem.ts:168
Extra CSS class for the quick-filter item.
quickFilterParams?
optionalquickFilterParams:any
Defined in: src/base/propertyitem.ts:164
Options for the quick-filter editor.
quickFilterSeparator?
optionalquickFilterSeparator:boolean
Defined in: src/base/propertyitem.ts:166
When true a separator is rendered before this quick filter in the bar.
readOnly?
optionalreadOnly:boolean
Defined in: src/base/propertyitem.ts:88
Whether the field is read-only in the UI (still submitted unless skipOnSave is set).
readPermission?
optionalreadPermission:string
Defined in: src/base/propertyitem.ts:90
Permission key required to read / view the field. Clients may hide the field when the user lacks it.
required?
optionalrequired:boolean
Defined in: src/base/propertyitem.ts:74
Whether a value is required.
resizable?
optionalresizable:boolean
Defined in: src/base/propertyitem.ts:130
Whether the column is user-resizable.
showSelection?
optionalshowSelection:boolean
Defined in: src/base/propertyitem.ts:132
Whether to show a selection checkbox column behavior for this column.
skipOnLoad?
optionalskipOnLoad:boolean
Defined in: src/base/propertyitem.ts:92
When true the field is not populated on load (e.g. sensitive data).
skipOnSave?
optionalskipOnSave:boolean
Defined in: src/base/propertyitem.ts:94
When true the field value is not sent back on save.
sortable?
optionalsortable:boolean
Defined in: src/base/propertyitem.ts:134
Whether the column can be sorted.
sortOrder?
optionalsortOrder:number
Defined in: src/base/propertyitem.ts:136
Default sort order index (lower values are sorted first). Negative or undefined means no default sort.
summaryType?
optionalsummaryType:SummaryType
Defined in: src/base/propertyitem.ts:142
Aggregation used for group / footer summaries. See SummaryType.
tab?
optionaltab:string
Defined in: src/base/propertyitem.ts:64
Tab name the field belongs to when the form uses tabs.
tabbable?
optionaltabbable:boolean
Defined in: src/base/propertyitem.ts:138
Whether the column participates in tab-stop navigation.
title?
optionaltitle:string
Defined in: src/base/propertyitem.ts:44
Display title / column header / form label. Falls back to name when omitted.
unbound?
optionalunbound:boolean
Defined in: src/base/propertyitem.ts:96
True for unbound fields that do not map to a row column (e.g. calculated UI-only fields).
updatable?
optionalupdatable:boolean
Defined in: src/base/propertyitem.ts:82
Whether the field can be updated after creation.
updatePermission?
optionalupdatePermission:string
Defined in: src/base/propertyitem.ts:84
Permission key required to update the field.
visible?
optionalvisible:boolean
Defined in: src/base/propertyitem.ts:104
Whether the column / field is visible by default. Hidden columns can still be shown via column picker.
width?
optionalwidth:number
Defined in: src/base/propertyitem.ts:120
Preferred column width in pixels.
widthSet?
optionalwidthSet:boolean
Defined in: src/base/propertyitem.ts:122
True when width was explicitly set (vs. auto-calculated).