Date Picker
Labeled date field with an anchored calendar panel, bound to OrbitalDateTime.
DatePicker is a labeled-ready date field: users type a locale-formatted date or open the calendar panel to pick a day. The bound value is OrbitalDateTime at start-of-day in your chosen DatetimeTimezone. Convert at API boundaries via ToUnixSeconds or ToIso8601. Display format is controlled via DatetimeFormat. Pair with TimePicker when you need time-of-day. For an inline month grid without a text field, use Calendar instead.
- Single-date form fields (start date, birth date, due date)
- Filter bars where a calendar affordance beats free-text parsing alone
- Flows that need locale-specific display format while storing a canonical timestamp
- Create an
Option<OrbitalDateTime>signal and pass it viaDatePickerBind. - Set
appearance.formatandappearance.timezonewhen display differs from defaults. - Wrap in Field with
DatePickerRule::requiredwhen a date is mandatory. - Wrap preview examples in a native element with
data-testidfor E2E selectors.
Empty date field with calendar suffix button.
Existing unix seconds populate the text input on mount.
Panel selection updates the bound unix signal and readout text.
Year-month-day display for locales that prefer ISO ordering.
Formatting uses UTC regardless of browser local offset.
Display anchored to a fixed offset from UTC (e.g. EST).
Required rule shows validation messaging on blur when empty.
Input and calendar button cannot be interacted with.
Default US format with UTC timezone reflected in the bound readout.
Field shows an error when the typed date falls outside the allowed range.