Grid

Properties

Data

Type: GridData | Promise<GridDataBag>
Required

The data to be displayed in the grid. This may either be an object that contains the grid data directly or a function that returns the grid data. The function may return a Promise which will be waited asynchronously until the data is ready.

Definition

Type: GridDefinitionBag

Contains the definition data about the grid. This contains information about the fields, action URLS and other features of the grid.

keyField

Type: string

Identifies the field that will be used to uniquely identify each row. This is not required but many advanced features of the grid require this to function.

personKeyField

Type: string

Identifies the field that will contain the person key. If the grid does not represent Person records then leave this unset.

communicationRecipientPersonKeyFields

Type: string[]

Specifies the fields to be used to identify communication recipients when using the communicate action. This will take precedence over the personKeyField if both are set.

tooltipField

Type: string

Identifies the key that will be used to provide the tooltip text for each row in the Grid. This property is not reactive.

light

Type: boolean
Default: false

Indicates that this grid should operate in light mode which disables a number of features. This is intended to be used with small grids that are embedded inside other blocks or controls.

liveUpdates

Type: boolean
Default: false

Determines if the grid will monitor for changes in the data of existing rows, new rows and removed rows. Should not be used for grids with more than 10,000 rows. This property is not reactive.

stickyHeader

Type: boolean
Default: false

If enabled then the grid will have a sticky header.

itemTerm

Type: string
Optional

The term that identifies individual rows in the grid. This property is not reactive. If not specified it will default to "item". This value should be singular and not plural.

entityTypeGuid

Type: Guid
Optional

exportTitle

The unique identifier of the entity type that the rows represent.

personAsBusiness

Type: string
Optional

The title to use when exporting the grid contents. This is used as the exported filename as well as some other information inside the export file. If not specified it will default to the itemTerm property.

mergeTemplateAsPerson

Type: boolean
Default: false

If true, then any Person operations will instead be Business operations.

showBulkUpdate

Type: boolean
Default: false

If true, then the merge template operation will operate as if the records are Person records. If they are not then it will not work correctly. This required that personKeyField also be set.

showPersonMerge

Type: boolean
Optional

Determines if the bulk update action will be available. If not explicitly set then it will default to enabled if the personKeyField property has been set.

showLaunchWorkflow

Type: boolean
Optional

Determines if the merge person/business action will be available. If not explicitly set then it will default to enabled if the personKeyField property has been set.

showCommunicate

Type: boolean
Optional

Determines if the launch workflow action will be available. If not explicitly set then it will default to enabled if the entityTypeGuid and keyField properties have been set.

showMergeTemplate

Type: boolean
Optional

Determines if the communicate action will be available. If not explicitly set then it will default to enabled if either the personKeyField or communicationRecipientPersonKeyFields properties have been set.

showExport

Type: boolean
Optional

Determines if the merge template action will be available. If not explicitly set then it will default to being shown. In the future this default state might change.

communicationMergeFields

Type: boolean
Optional

Determines if the export action will be available. If not explicitly set then it will default to being shown. In the future this default state might change.

expectedRowCount

Type: string[]
Optional

Any fields that should be included when sending a communication. If a column name matches the field name then the formatted value of the column will be used. Otherwise the raw field value will be used.

customActions

Type: number
Optional

The number of rows expected to fill the table. This does not need to be anywhere close to the real number. It is used to determine optimization settings and calculate how many skeleton rows to display while loading.

preferencePrefix

Type: GridAction[]
Optional

Any custom actions that should be available for the individual to see in the list of actions.

disabledPreferences

Type: string
Optional

The custom prefix to use when accessing person preferences related to the grid. This prefix is appended to the standard prefix used by the grid. This property is not reactive.

gridSettings

Type: boolean
Default: false

When true, all preferences will be disabled on the grid. Preferences will not be read nor will they be saved. This property is not reactive.

gridSettingsActive

Type: boolean
Default: false

When true, a grid settings icon will be displayed and emit the gridSettingsClick event when clicked.

gridSettingsActive

Type: boolean
Default: false

When true, the grid settings icon will be displayed in an active state. When false, the grid settings icon will be displayed in an in-active state.

onAddItem

Type: () => void | Promise<void>
Optional

The function to call in response to the add button being clicked. Providing this function will automatically enable the add button.

onSelectItem

Type: (key: string) => void | Promise<void>
Optional

The function to call in response to a row being clicked. This requires that an keyField be specified. Providing this function will automatically enable row selection.