Color
Typography
Spacing
Radius
Border
Opacity
Elevation
Blur
Avatar
Badge
Button
Checkbox
Input
ProgressBar
RadioButton
Separator
Slider
Switch
TextArea
TextLink
Accordion
Breadcrumb
ButtonGroup
Combobox
DropdownMenu
ListItem
Pagination
SegmentedControl
Select
Tooltip
Calendar
Card
CommandMenu
DatePicker
Dialog
Drawer
EmptyState
Footer
Form
NavigationBar
Sidebar
Skeleton
Table
Tabs
Toaster

DatePicker

A date field that opens a Calendar: type the date, or pick it from the month grid.

Select a date

Size
Calendar

Usage

Import the component and render it.

import { DatePicker } from 'src/components/DatePicker/DatePicker';

<DatePicker size="sm" label="Date" helperText="Select a date" today="2026-10-01" />

Accessibility

Role: combobox field (aria-haspopup="dialog", aria-expanded) that opens a dialog with the Calendar (WAI-ARIA date picker combobox).

KeyAction
↓ (in the field)Opens the Calendar and moves focus into the grid
TypingEnters the date as MM / DD / YYYY; Enter or leaving the field applies it
Calendar keysArrows, Home/End, Page Up/Down, Enter (see Calendar)
EscapeCloses the Calendar and returns focus to the field
  • The trailing icon is decorative: the field itself opens the Calendar.
  • Choosing a date fills the field, closes the Calendar and returns focus to the field.

Size

Set the size prop: Small is "sm", Medium is "md".

Select a date

Small

Select a date

Medium
<DatePicker size="sm" />
<DatePicker size="md" />

Calendar

Set the open prop: Closed is {false}, Open is {true}.

Select a date

Closed

Select a date

Open
<DatePicker />
<DatePicker open />

States

Disabled comes from the disabled prop; Error from the error prop. Hover and Focus follow the pointer and the keyboard: try them in the playground.

Select a date

Default

Select a date

Disabled

Select a date

Error
<DatePicker disabled />
<DatePicker error />

Composition

Use the following composition to build a DatePicker:

DatePicker
├── Input
└── Calendar

Actions

Pass callbacks to respond to the component.

import { DatePicker } from 'src/components/DatePicker/DatePicker';

<DatePicker
  size="sm"
  label="Date"
  helperText="Select a date"
  today="2026-10-01"
  onOpenChange={(open) => console.log(open)}
  onValueChange={(value) => console.log(value)}
/>
CallbackWhen
onOpenChangeCalled when the Calendar opens or closes.
onValueChangeCalled with the picked date, or a typed one that is complete and valid (on Enter or blur).