Skip to main content

Configure the following properties on the TimeField component.

Anchor to details
details
string

The additional text to provide context or guidance for the field. This text is displayed along with the field and its label to offer more information or instructions to the user. This will also be exposed to screen reader users.

Anchor to disabled
disabled
boolean
Default: false

Whether the field is disabled, preventing user interaction. Use when the field is temporarily unavailable due to application state, permissions, or dependencies.

Anchor to error
error
string

An error message to indicate a problem to the user. The field will be given specific stylistic treatment to communicate issues that must be resolved immediately.

string

A unique identifier for the element used for targeting with CSS, JavaScript, or accessibility features.

Anchor to label
label
string

The content to use as the field label that describes the time information being requested.

Anchor to value
value
string

The current selected value in 24-hour format. An empty string means no time is selected. The value must be in HH:mm:ss format with leading zeros (for example, "00:00:00", "09:05:00", "23:59:00", "14:03:30"). This follows the HTML time input value format, which is always 24-hour with leading zeros regardless of UI presentation.

The time field component provides event callbacks for handling user interactions. Learn more about handling events.

(event: <"s-time-field">) => void

Called when the element loses focus.

Anchor to change
change
(event: <"s-time-field">) => void

Called after editing completes, typically on blur.

Anchor to focus
focus
(event: <"s-time-field">) => void

Called when the element receives focus.

Anchor to input
input
(event: <"s-time-field">) => void

Called when the user makes any changes in the field.


Anchor to Capture time input with a time fieldCapture time input with a time field

Capture time input using a time field component. This example shows a basic time field with a label for time entry.

Capture time input with a time field

Capture time input using a time field component. This example shows a basic time field with a label for time entry.

Capture time input with a time field

<s-time-field
label="Time"
value="11:42"
/>

Anchor to Handle time selection eventsHandle time selection events

Subscribe to time input events to respond when merchants select or enter times. This example shows how to handle onChange events to capture time selections, enabling real-time validation, time range checks, or dynamic scheduling behavior based on merchant input.

Handle time selection events

<s-time-field
label="Appointment time"
value="14:30"
onInput={(event) => console.log('Input:', event.currentTarget.value)}
onChange={(event) => console.log('Change:', event.currentTarget.value)}
onFocus={(event) => console.log('Focused')}
onBlur={(event) => console.log('Blurred')}
/>

  • Use correct format: Always use HH:mm:ss format with leading zeros (like "09:05:00" not "9:5:0").
  • Explain time constraints: Use details to clarify requirements like "Business hours only (09:00-17:00)" or "Must be a future time."

Was this page helpful?