TimePicker

Native time input wrapper with label, hint, error, and size variants

Category: inputs · WCAG 2.2-AA · time, input, form

Sizes

States

Props

PropTypeDefaultDescription
valuestringControlled value (HH:mm)
defaultValuestringThe initial value when uncontrolled.
onValueChange(value: string) => voidCalled with the new HH:MM time string when the value changes.
onChange(value: string) => voidDeprecated: use onValueChange (same time string).
minstringMinimum allowed value.
maxstringMaximum allowed value.
stepnumberIncrement between allowed values.
labelstringText label for the control.
hintstringSupplementary hint text shown with the control.
errorstringError message shown when the value is invalid.
size'sm' | 'md' | 'lg''md'Visual size of the component (e.g. 'sm', 'md', 'lg').
disabledbooleanWhen true, disables the control and removes it from the tab order.
classNamestringAdditional CSS class names merged onto the root element.

Design tokens

When to use

When not to use

How to build an accessible TimePicker in React →

Examples

Basic time picker

<TimePicker label="Meeting time" onChange={(v) => console.log(v)} />

Related components

← Back to docs