Usage
TimeInput from @prepared911/ui/time-input is the field for a time of day. Use it for a meeting start, a reminder, or the start and end of a window. Pass range for a start and end. When timeZone is set, the zone name after the segments uses the design system's monospace role. Do not compose two native input type="time" fields.
The list button opens a popover of times with Reset and Apply in the footer (applyLabel, resetLabel, required). List presses change a draft until Apply. min and max disable rows outside the bounds. Copy for the label and the list is a prop; the component does not call formatMessage itself.
For limit-style ranges (before, after, between) with one or two time fields under a calendar, use DateRangeInput or DateTimeInput with modes (advanced date-time range picker). TimeInput range is only two editable times in one frame, without a mode strip.
Pair it with Calendar when the workflow also needs a date. The date grid does not embed a time field.