Reference Field Reference
fields.tableInput()
Structured table editor with configurable columns and input types per column.
Structured table editor. Maps to editor { name: 'str-table-input', type: 'table-input' }. Each row is stored as an object keyed by the camelCased header names, so the read type is Record<string, unknown>[].
Example
fields.tableInput({
label: 'Pricing tiers',
headers: ['Plan', 'Price', 'Seats'],
inputTypes: ['text', 'number', 'number'],
rowNumbers: true,
})Options
| Option | Type | Required | Description |
|---|---|---|---|
label | string | Yes | Label shown to editors in Strife Studio. |
headers | string[] | Yes | Column header names, one per column. |
inputTypes | string[] | Yes | Input type per column, parallel to headers (e.g. 'text', 'number'). |
description | string | No | Tooltip shown to editors. |
searchable | boolean | No | Include in the team's search index. |
filterable | boolean | No | Allow filtering content lists by this value. |
protected | boolean | No | Restrict editing to users with the appropriate permission. |
propertyName | string | No | Override the stored property name. |
sortable | boolean | No | Allow row sorting. |
searchableRows | boolean | No | Show a search box over rows. |
rowNumbers | boolean | No | Render a leading row-number column. |
exportable | boolean | No | Allow exporting the table. |
headers and inputTypes are emitted as plain JSON arrays — the editor binds them directly to the component's array props, and they must stay the same length/order (parallel arrays, not paired objects).
No localizable option.
Output type
Record<string, unknown>[] — one object per row, keyed by camelCased header names.
See also
- Table Input~ — the same editor, documented from the Strife Studio UI side.