Skip to content
Strife Docs

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

TypeScript
fields.tableInput({
  label: 'Pricing tiers',
  headers: ['Plan', 'Price', 'Seats'],
  inputTypes: ['text', 'number', 'number'],
  rowNumbers: true,
})

Options

OptionTypeRequiredDescription
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.