time Field Type
type: 'time' marks a field as a time-of-day value. Pair it with renderAs: 'time' and parseMode: 'iso-time' to render it in a locale-aware format. Use showSeconds and hour12 to control display granularity.
Core Examples
Basic Time Rendering
ISO time string rendered in 24-hour format with seconds.
{
key: 'checkpointTime',
label: 'Checkpoint',
type: 'time',
renderAs: 'time',
renderAsOptions: { parseMode: 'iso-time', locale: 'en-US', showSeconds: true, hour12: false },
}
Condition
Scheduled time hidden for Invoice Clear.
{
key: 'scheduledTime',
label: 'Scheduled',
type: 'time',
renderAs: 'time',
renderAsOptions: { parseMode: 'iso-time', locale: 'en-US', showSeconds: false, hour12: false },
condition: (entity) => entity.operation !== 'Invoice Clear',
}
Field Options Reference
| Option | Type | Default | Effect |
|---|---|---|---|
key | string | required | Entity property to read the time value from. |
label | string | unset | Column header or card label. |
type | 'time' | — | Marks the field as a time-of-day value. Pair with renderAs: 'time'. |
renderAs | 'time' | unset | Required for formatted time output. Without it, raw value renders as plain text. |
condition | (entity) => boolean | unset | Hides the field for rows where the function returns false. |
sortable | boolean | false | Enables column sorting. Sorts chronologically when parseMode is set. |
width | CSS length or number | unset | Sets column width in table mode. |
align | 'left', 'center', 'right' | 'left' | Text alignment in table mode. |
renderAsOptions for renderAs: 'time'
parseMode is required — without it the field renders 'Invalid'. All other display options (showSeconds, hour12, locale, timezone, formatOptions, etc.) are documented on the time Renderer page.
Caveats
parseModeis required. Without it, the field renders'Invalid'.parseMode: 'iso-time'expectsHH:mm:ss. Values without seconds (HH:mm) may parse differently across environments — include seconds for reliability.type: 'time'has norelativeTimeoption — relative time is not meaningful for time-of-day values. Usetype: 'datetime'ortype: 'timestamp'for relative display.timezoneaffects display only. Aniso-timevalue has no inherent timezone — the time is interpreted as-is in the requested timezone.
See Also
- time Renderer — full
renderAsOptionsreference - Temporal Fields Guide — cross-type contracts, sorting behavior, migration checklist
- datetime Field Type
- Item Config — item-level shape and layout contract
- Field Config