Date picker: Range
<DateRangePicker /> shows two months on larger screens. The first click always starts a new range, even when one is set, and the second click finishes it in either order and closes the picker.
This adds the example as components/examples/date-picker/range.tsx, together with the Date picker component and the HextaUI theme tokens it needs.
pnpm dlx shadcn@latest add https://hextaui.com/r/date-picker-range.jsonTo add only the component, follow the Date picker installation.
Props in this example
The Date picker props this example sets, from the API reference.
| Prop | Type | Default |
|---|---|---|
value | { from: Date; to?: Date } | null | – |
onValueChangeCalled once the second day is picked. | (value: DateRange | null) => void | – |
clearableAdds a Clear button below the calendar once there is a value. | boolean | false |
Every prop is in the Date picker API reference.
- Controlled
- Disabled days
- Month and year dropdowns
- In a form
- Disabled
- Narrow container
- Inside a sheet
- Right to left
See them all, with keyboard support and accessibility notes, on the Date picker page.
- ButtonButtons in every variant and size, with a built-in loading, success and error flow that skips the spinner for fast requests.
- CalendarA date grid for single, range and multiple selection, with sliding months, range previews and touch-sized days.
- PopoverA floating panel anchored to a trigger that resizes smoothly with its content and follows the trigger’s direction.
- SheetA panel that slides in from any edge, with swipe-to-dismiss, scroll lock and stacked nesting.
- CheckboxA checkbox whose check draws in, with indeterminate parents, groups and labels that share its hover.
- ComboboxA filterable select with chips, groups and async results, in a popup that resizes as you type.