| Sun | Mon | Tue | Wed | Thu | Fri | Sat | 
|---|---|---|---|---|---|---|
26  | 27  | 28  | 29  | 30  | 31  | 1  | 
2  | 3  | 4  | 5  | 6  | 7  | 8  | 
9  | 10  | 11  | 12  | 13  | 14  | 15  | 
16  | 17  | 18  | 19  | 20  | 21  | 22  | 
23  | 24  | 25  | 26  | 27  | 28  | 29  | 
30  | 1  | 2  | 3  | 4  | 5  | 6  | 
Jan  | Feb  | Mar  | Apr  | 
May  | Jun  | Jul  | Aug  | 
Sep  | Oct  | Nov  | Dec  | 
2020  | 2021  | 2022  | 2023  | 
2024  | 2025  | 2026  | 2027  | 
2028  | 2029  | 2030  | 2031  | 
| Sun | Mon | Tue | Wed | Thu | Fri | Sat | 
|---|---|---|---|---|---|---|
26  | 27  | 28  | 29  | 30  | 31  | 1  | 
2  | 3  | 4  | 5  | 6  | 7  | 8  | 
9  | 10  | 11  | 12  | 13  | 14  | 15  | 
16  | 17  | 18  | 19  | 20  | 21  | 22  | 
23  | 24  | 25  | 26  | 27  | 28  | 29  | 
30  | 1  | 2  | 3  | 4  | 5  | 6  | 
Jan  | Feb  | Mar  | Apr  | 
May  | Jun  | Jul  | Aug  | 
Sep  | Oct  | Nov  | Dec  | 
2020  | 2021  | 2022  | 2023  | 
2024  | 2025  | 2026  | 2027  | 
2028  | 2029  | 2030  | 2031  | 
Controlled
Manage the selected date value with controlled state.
| Sun | Mon | Tue | Wed | Thu | Fri | Sat | 
|---|---|---|---|---|---|---|
28  | 29  | 30  | 1  | 2  | 3  | 4  | 
5  | 6  | 7  | 8  | 9  | 10  | 11  | 
12  | 13  | 14  | 15  | 16  | 17  | 18  | 
19  | 20  | 21  | 22  | 23  | 24  | 25  | 
26  | 27  | 28  | 29  | 30  | 31  | 1  | 
Jan  | Feb  | Mar  | Apr  | 
May  | Jun  | Jul  | Aug  | 
Sep  | Oct  | Nov  | Dec  | 
2020  | 2021  | 2022  | 2023  | 
2024  | 2025  | 2026  | 2027  | 
2028  | 2029  | 2030  | 2031  | 
| Sun | Mon | Tue | Wed | Thu | Fri | Sat | 
|---|---|---|---|---|---|---|
28  | 29  | 30  | 1  | 2  | 3  | 4  | 
5  | 6  | 7  | 8  | 9  | 10  | 11  | 
12  | 13  | 14  | 15  | 16  | 17  | 18  | 
19  | 20  | 21  | 22  | 23  | 24  | 25  | 
26  | 27  | 28  | 29  | 30  | 31  | 1  | 
Jan  | Feb  | Mar  | Apr  | 
May  | Jun  | Jul  | Aug  | 
Sep  | Oct  | Nov  | Dec  | 
2020  | 2021  | 2022  | 2023  | 
2024  | 2025  | 2026  | 2027  | 
2028  | 2029  | 2030  | 2031  | 
Disabled
Disable the date picker to prevent user interaction.
| Sun | Mon | Tue | Wed | Thu | Fri | Sat | 
|---|---|---|---|---|---|---|
26  | 27  | 28  | 29  | 30  | 31  | 1  | 
2  | 3  | 4  | 5  | 6  | 7  | 8  | 
9  | 10  | 11  | 12  | 13  | 14  | 15  | 
16  | 17  | 18  | 19  | 20  | 21  | 22  | 
23  | 24  | 25  | 26  | 27  | 28  | 29  | 
30  | 1  | 2  | 3  | 4  | 5  | 6  | 
Jan  | Feb  | Mar  | Apr  | 
May  | Jun  | Jul  | Aug  | 
Sep  | Oct  | Nov  | Dec  | 
2020  | 2021  | 2022  | 2023  | 
2024  | 2025  | 2026  | 2027  | 
2028  | 2029  | 2030  | 2031  | 
| Sun | Mon | Tue | Wed | Thu | Fri | Sat | 
|---|---|---|---|---|---|---|
26  | 27  | 28  | 29  | 30  | 31  | 1  | 
2  | 3  | 4  | 5  | 6  | 7  | 8  | 
9  | 10  | 11  | 12  | 13  | 14  | 15  | 
16  | 17  | 18  | 19  | 20  | 21  | 22  | 
23  | 24  | 25  | 26  | 27  | 28  | 29  | 
30  | 1  | 2  | 3  | 4  | 5  | 6  | 
Jan  | Feb  | Mar  | Apr  | 
May  | Jun  | Jul  | Aug  | 
Sep  | Oct  | Nov  | Dec  | 
2020  | 2021  | 2022  | 2023  | 
2024  | 2025  | 2026  | 2027  | 
2028  | 2029  | 2030  | 2031  | 
Minimum and Maximum
Restrict date selection to a specific range using the min and max props with the parseDate helper function.
| Sun | Mon | Tue | Wed | Thu | Fri | Sat | 
|---|---|---|---|---|---|---|
1  | 2  | 3  | 4  | 5  | 6  | 7  | 
8  | 9  | 10  | 11  | 12  | 13  | 14  | 
15  | 16  | 17  | 18  | 19  | 20  | 21  | 
22  | 23  | 24  | 25  | 26  | 27  | 28  | 
29  | 30  | 31  | 1  | 2  | 3  | 4  | 
Jan  | Feb  | Mar  | Apr  | 
May  | Jun  | Jul  | Aug  | 
Sep  | Oct  | Nov  | Dec  | 
2020  | 2021  | 2022  | 2023  | 
2024  | 2025  | 2026  | 2027  | 
2028  | 2029  | 2030  | 2031  | 
| Sun | Mon | Tue | Wed | Thu | Fri | Sat | 
|---|---|---|---|---|---|---|
1  | 2  | 3  | 4  | 5  | 6  | 7  | 
8  | 9  | 10  | 11  | 12  | 13  | 14  | 
15  | 16  | 17  | 18  | 19  | 20  | 21  | 
22  | 23  | 24  | 25  | 26  | 27  | 28  | 
29  | 30  | 31  | 1  | 2  | 3  | 4  | 
Jan  | Feb  | Mar  | Apr  | 
May  | Jun  | Jul  | Aug  | 
Sep  | Oct  | Nov  | Dec  | 
2020  | 2021  | 2022  | 2023  | 
2024  | 2025  | 2026  | 2027  | 
2028  | 2029  | 2030  | 2031  | 
Range Selection
Enable range selection by setting selectionMode="range" on the root component. Pair with two inputs fields:
index={0}to represent the start dates.index={1}to represent the end dates.
| Sun | Mon | Tue | Wed | Thu | Fri | Sat | 
|---|---|---|---|---|---|---|
26  | 27  | 28  | 29  | 30  | 31  | 1  | 
2  | 3  | 4  | 5  | 6  | 7  | 8  | 
9  | 10  | 11  | 12  | 13  | 14  | 15  | 
16  | 17  | 18  | 19  | 20  | 21  | 22  | 
23  | 24  | 25  | 26  | 27  | 28  | 29  | 
30  | 1  | 2  | 3  | 4  | 5  | 6  | 
Jan  | Feb  | Mar  | Apr  | 
May  | Jun  | Jul  | Aug  | 
Sep  | Oct  | Nov  | Dec  | 
2020  | 2021  | 2022  | 2023  | 
2024  | 2025  | 2026  | 2027  | 
2028  | 2029  | 2030  | 2031  | 
| Sun | Mon | Tue | Wed | Thu | Fri | Sat | 
|---|---|---|---|---|---|---|
26  | 27  | 28  | 29  | 30  | 31  | 1  | 
2  | 3  | 4  | 5  | 6  | 7  | 8  | 
9  | 10  | 11  | 12  | 13  | 14  | 15  | 
16  | 17  | 18  | 19  | 20  | 21  | 22  | 
23  | 24  | 25  | 26  | 27  | 28  | 29  | 
30  | 1  | 2  | 3  | 4  | 5  | 6  | 
Jan  | Feb  | Mar  | Apr  | 
May  | Jun  | Jul  | Aug  | 
Sep  | Oct  | Nov  | Dec  | 
2020  | 2021  | 2022  | 2023  | 
2024  | 2025  | 2026  | 2027  | 
2028  | 2029  | 2030  | 2031  | 
Inline calendar
Display the calendar inline without a popover by adding the inline prop to the root component. When using inline mode, omit the Portal and Positioner components.
| Sun | Mon | Tue | Wed | Thu | Fri | Sat | 
|---|---|---|---|---|---|---|
26  | 27  | 28  | 29  | 30  | 31  | 1  | 
2  | 3  | 4  | 5  | 6  | 7  | 8  | 
9  | 10  | 11  | 12  | 13  | 14  | 15  | 
16  | 17  | 18  | 19  | 20  | 21  | 22  | 
23  | 24  | 25  | 26  | 27  | 28  | 29  | 
30  | 1  | 2  | 3  | 4  | 5  | 6  | 
Jan  | Feb  | Mar  | Apr  | 
May  | Jun  | Jul  | Aug  | 
Sep  | Oct  | Nov  | Dec  | 
2020  | 2021  | 2022  | 2023  | 
2024  | 2025  | 2026  | 2027  | 
2028  | 2029  | 2030  | 2031  | 
| Sun | Mon | Tue | Wed | Thu | Fri | Sat | 
|---|---|---|---|---|---|---|
26  | 27  | 28  | 29  | 30  | 31  | 1  | 
2  | 3  | 4  | 5  | 6  | 7  | 8  | 
9  | 10  | 11  | 12  | 13  | 14  | 15  | 
16  | 17  | 18  | 19  | 20  | 21  | 22  | 
23  | 24  | 25  | 26  | 27  | 28  | 29  | 
30  | 1  | 2  | 3  | 4  | 5  | 6  | 
Jan  | Feb  | Mar  | Apr  | 
May  | Jun  | Jul  | Aug  | 
Sep  | Oct  | Nov  | Dec  | 
2020  | 2021  | 2022  | 2023  | 
2024  | 2025  | 2026  | 2027  | 
2028  | 2029  | 2030  | 2031  | 
Month and Year Selection
Add MonthSelect and YearSelect components to provide selectors for quickly changing the month and year.
| Sun | Mon | Tue | Wed | Thu | Fri | Sat | 
|---|---|---|---|---|---|---|
26  | 27  | 28  | 29  | 30  | 31  | 1  | 
2  | 3  | 4  | 5  | 6  | 7  | 8  | 
9  | 10  | 11  | 12  | 13  | 14  | 15  | 
16  | 17  | 18  | 19  | 20  | 21  | 22  | 
23  | 24  | 25  | 26  | 27  | 28  | 29  | 
30  | 1  | 2  | 3  | 4  | 5  | 6  | 
Jan  | Feb  | Mar  | Apr  | 
May  | Jun  | Jul  | Aug  | 
Sep  | Oct  | Nov  | Dec  | 
2020  | 2021  | 2022  | 2023  | 
2024  | 2025  | 2026  | 2027  | 
2028  | 2029  | 2030  | 2031  | 
| Sun | Mon | Tue | Wed | Thu | Fri | Sat | 
|---|---|---|---|---|---|---|
26  | 27  | 28  | 29  | 30  | 31  | 1  | 
2  | 3  | 4  | 5  | 6  | 7  | 8  | 
9  | 10  | 11  | 12  | 13  | 14  | 15  | 
16  | 17  | 18  | 19  | 20  | 21  | 22  | 
23  | 24  | 25  | 26  | 27  | 28  | 29  | 
30  | 1  | 2  | 3  | 4  | 5  | 6  | 
Jan  | Feb  | Mar  | Apr  | 
May  | Jun  | Jul  | Aug  | 
Sep  | Oct  | Nov  | Dec  | 
2020  | 2021  | 2022  | 2023  | 
2024  | 2025  | 2026  | 2027  | 
2028  | 2029  | 2030  | 2031  | 
API Reference
Root
flex flex-col gap-2| Prop | Default | Type | 
|---|---|---|
locale | "en-US" | string | undefined The locale (BCP 47 language tag) to use when formatting the date.  | 
translations | — | IntlTranslations | undefined The localized messages to use.  | 
ids | — | Partial<{ root: string; label: (index: number) => string; table: (id: string) => string; tableHeader: (id: string) => string; tableBody: (id: string) => string; tableRow: (id: string) => string; ... 11 more ...; positioner: string; }> | undefined The ids of the elements in the date picker. Useful for composition.  | 
name | — | string | undefined The `name` attribute of the input element.  | 
timeZone | "UTC" | string | undefined The time zone to use  | 
disabled | — | boolean | undefined Whether the calendar is disabled.  | 
readOnly | — | boolean | undefined Whether the calendar is read-only.  | 
outsideDaySelectable | false | boolean | undefined Whether day outside the visible range can be selected.  | 
min | — | DateValue | undefined The minimum date that can be selected.  | 
max | — | DateValue | undefined The maximum date that can be selected.  | 
closeOnSelect | true | boolean | undefined Whether the calendar should close after the date selection is complete. This is ignored when the selection mode is `multiple`.  | 
value | — | DateValue[] | undefined The controlled selected date(s).  | 
defaultValue | — | DateValue[] | undefined The initial selected date(s) when rendered. Use when you don't need to control the selected date(s) of the date picker.  | 
focusedValue | — | DateValue | undefined The controlled focused date.  | 
defaultFocusedValue | — | DateValue | undefined The initial focused date when rendered. Use when you don't need to control the focused date of the date picker.  | 
numOfMonths | — | number | undefined The number of months to display.  | 
startOfWeek | — | number | undefined The first day of the week. `0` - Sunday `1` - Monday `2` - Tuesday `3` - Wednesday `4` - Thursday `5` - Friday `6` - Saturday  | 
fixedWeeks | — | boolean | undefined Whether the calendar should have a fixed number of weeks. This renders the calendar with 6 weeks instead of 5 or 6.  | 
onValueChange | — | ((details: ValueChangeDetails) => void) | undefined Function called when the value changes.  | 
onFocusChange | — | ((details: FocusChangeDetails) => void) | undefined Function called when the focused date changes.  | 
onViewChange | — | ((details: ViewChangeDetails) => void) | undefined Function called when the view changes.  | 
onOpenChange | — | ((details: OpenChangeDetails) => void) | undefined Function called when the calendar opens or closes.  | 
isDateUnavailable | — | ((date: DateValue, locale: string) => boolean) | undefined Returns whether a date of the calendar is available.  | 
selectionMode | "single" | SelectionMode | undefined The selection mode of the calendar. - `single` - only one date can be selected - `multiple` - multiple dates can be selected - `range` - a range of dates can be selected  | 
format | — | ((date: DateValue, details: LocaleDetails) => string) | undefined The format of the date to display in the input.  | 
parse | — | ((value: string, details: LocaleDetails) => DateValue | undefined) | undefined Function to parse the date from the input back to a DateValue.  | 
placeholder | — | string | undefined The placeholder text to display in the input.  | 
view | — | DateView | undefined The view of the calendar  | 
defaultView | "day" | DateView | undefined The default view of the calendar  | 
minView | "day" | DateView | undefined The minimum view of the calendar  | 
maxView | "year" | DateView | undefined The maximum view of the calendar  | 
positioning | — | PositioningOptions | undefined The user provided options used to position the date picker content  | 
open | — | boolean | undefined The controlled open state of the date picker  | 
defaultOpen | — | boolean | undefined The initial open state of the date picker when rendered. Use when you don't need to control the open state of the date picker.  | 
inline | — | boolean | undefined Whether to render the date picker inline  | 
dir | "ltr" | "ltr" | "rtl" | undefined The document's text/writing direction.  | 
getRootNode | — | (() => ShadowRoot | Node | Document) | undefined A root node to correctly resolve document in custom environments. E.x.: Iframes, Electron.  | 
element | — | ((attributes: HTMLAttributes<"div">) => Element) | undefined Render the element yourself  | 
Provider
| Prop | Default | Type | 
|---|---|---|
value | — | DatePickerApi<PropTypes> | 
element | — | ((attributes: HTMLAttributes<"div">) => Element) | undefined Render the element yourself  | 
Context
| Prop | Default | Type | 
|---|---|---|
children | — | (datePicker: DatePickerApi<PropTypes>) => ReactNode | 
Label
label-text| Prop | Default | Type | 
|---|---|---|
element | — | ((attributes: HTMLAttributes<"label">) => Element) | undefined Render the element yourself  | 
Control
relative flex flex-col gap-2| Prop | Default | Type | 
|---|---|---|
element | — | ((attributes: HTMLAttributes<"div">) => Element) | undefined Render the element yourself  | 
PresetTrigger
| Prop | Default | Type | 
|---|---|---|
value | — | PresetTriggerValue | 
element | — | ((attributes: HTMLAttributes<"button">) => Element) | undefined Render the element yourself  | 
Input
input| Prop | Default | Type | 
|---|---|---|
index | — | number | undefined The index of the input to focus.  | 
fixOnBlur | true | boolean | undefined Whether to fix the input value on blur.  | 
element | — | ((attributes: HTMLAttributes<"input">) => Element) | undefined Render the element yourself  | 
Trigger
btn-icon btn-icon-sm preset-tonal absolute end-1.5 top-[calc(var(--spacing)*1.25)]| Prop | Default | Type | 
|---|---|---|
element | — | ((attributes: HTMLAttributes<"button">) => Element) | undefined Render the element yourself  | 
Positioner
| Prop | Default | Type | 
|---|---|---|
element | — | ((attributes: HTMLAttributes<"div">) => Element) | undefined Render the element yourself  | 
Content
card bg-surface-50-950 border border-surface-200-800 p-2 flex flex-col gap-2| Prop | Default | Type | 
|---|---|---|
element | — | ((attributes: HTMLAttributes<"div">) => Element) | undefined Render the element yourself  | 
YearSelect
select| Prop | Default | Type | 
|---|---|---|
element | — | ((attributes: HTMLAttributes<"select">) => Element) | undefined Render the element yourself  | 
MonthSelect
select| Prop | Default | Type | 
|---|---|---|
element | — | ((attributes: HTMLAttributes<"select">) => Element) | undefined Render the element yourself  | 
View
flex flex-col gap-2| Prop | Default | Type | 
|---|---|---|
view | — | DateView | undefined | 
element | — | ((attributes: HTMLAttributes<"div">) => Element) | undefined Render the element yourself  | 
ViewControl
flex gap-2 justify-between| Prop | Default | Type | 
|---|---|---|
element | — | ((attributes: HTMLAttributes<"div">) => Element) | undefined Render the element yourself  | 
PrevTrigger
btn-icon hover:preset-tonal| Prop | Default | Type | 
|---|---|---|
element | — | ((attributes: HTMLAttributes<"button">) => Element) | undefined Render the element yourself  | 
ViewTrigger
btn hover:preset-tonal| Prop | Default | Type | 
|---|---|---|
element | — | ((attributes: HTMLAttributes<"button">) => Element) | undefined Render the element yourself  | 
RangeText
| Prop | Default | Type | 
|---|---|---|
element | — | ((attributes: HTMLAttributes<"div">) => Element) | undefined Render the element yourself  | 
NextTrigger
btn-icon hover:preset-tonal| Prop | Default | Type | 
|---|---|---|
element | — | ((attributes: HTMLAttributes<"button">) => Element) | undefined Render the element yourself  | 
Table
border-separate border-spacing-2| Prop | Default | Type | 
|---|---|---|
element | — | ((attributes: HTMLAttributes<"table">) => Element) | undefined Render the element yourself  | 
TableHead
| Prop | Default | Type | 
|---|---|---|
element | — | ((attributes: HTMLAttributes<"thead">) => Element) | undefined Render the element yourself  | 
TableRow
| Prop | Default | Type | 
|---|---|---|
element | — | ((attributes: HTMLAttributes<"tr">) => Element) | undefined Render the element yourself  | 
TableHeader
size-10| Prop | Default | Type | 
|---|---|---|
element | — | ((attributes: HTMLAttributes<"th">) => Element) | undefined Render the element yourself  | 
TableBody
| Prop | Default | Type | 
|---|---|---|
element | — | ((attributes: HTMLAttributes<"tbody">) => Element) | undefined Render the element yourself  | 
TableCell
size-10| Prop | Default | Type | 
|---|---|---|
disabled | — | boolean | undefined | 
value | — | number | DateValue | 
columns | — | number | undefined | 
visibleRange | — | VisibleRange | undefined | 
element | — | ((attributes: HTMLAttributes<"td">) => Element) | undefined Render the element yourself  | 
TableCellTrigger
size-full btn p-0 hover:preset-tonal cursor-pointer data-focus-visible:outline-2 data-focus-visible:outline-offset-1 data-focus-visible:outline-surface-950-50 data-selected:preset-filled data-in-range:preset-filled data-today:underline data-today:underline-offset-4 data-disabled:pointer-events-none data-disabled:opacity-50| Prop | Default | Type | 
|---|---|---|
element | — | ((attributes: HTMLAttributes<"div">) => Element) | undefined Render the element yourself  | 
Root
flex flex-col gap-2| Prop | Default | Type | 
|---|---|---|
locale | "en-US" | string | undefined The locale (BCP 47 language tag) to use when formatting the date.  | 
translations | — | IntlTranslations | undefined The localized messages to use.  | 
ids | — | Partial<{ root: string; label: (index: number) => string; table: (id: string) => string; tableHeader: (id: string) => string; tableBody: (id: string) => string; tableRow: (id: string) => string; ... 11 more ...; positioner: string; }> | undefined The ids of the elements in the date picker. Useful for composition.  | 
name | — | string | undefined The `name` attribute of the input element.  | 
timeZone | "UTC" | string | undefined The time zone to use  | 
disabled | — | boolean | undefined Whether the calendar is disabled.  | 
readOnly | — | boolean | undefined Whether the calendar is read-only.  | 
outsideDaySelectable | false | boolean | undefined Whether day outside the visible range can be selected.  | 
min | — | DateValue | undefined The minimum date that can be selected.  | 
max | — | DateValue | undefined The maximum date that can be selected.  | 
closeOnSelect | true | boolean | undefined Whether the calendar should close after the date selection is complete. This is ignored when the selection mode is `multiple`.  | 
value | — | DateValue[] | undefined The controlled selected date(s).  | 
defaultValue | — | DateValue[] | undefined The initial selected date(s) when rendered. Use when you don't need to control the selected date(s) of the date picker.  | 
focusedValue | — | DateValue | undefined The controlled focused date.  | 
defaultFocusedValue | — | DateValue | undefined The initial focused date when rendered. Use when you don't need to control the focused date of the date picker.  | 
numOfMonths | — | number | undefined The number of months to display.  | 
startOfWeek | — | number | undefined The first day of the week. `0` - Sunday `1` - Monday `2` - Tuesday `3` - Wednesday `4` - Thursday `5` - Friday `6` - Saturday  | 
fixedWeeks | — | boolean | undefined Whether the calendar should have a fixed number of weeks. This renders the calendar with 6 weeks instead of 5 or 6.  | 
onValueChange | — | ((details: ValueChangeDetails) => void) | undefined Function called when the value changes.  | 
onFocusChange | — | ((details: FocusChangeDetails) => void) | undefined Function called when the focused date changes.  | 
onViewChange | — | ((details: ViewChangeDetails) => void) | undefined Function called when the view changes.  | 
onOpenChange | — | ((details: OpenChangeDetails) => void) | undefined Function called when the calendar opens or closes.  | 
isDateUnavailable | — | ((date: DateValue, locale: string) => boolean) | undefined Returns whether a date of the calendar is available.  | 
selectionMode | "single" | SelectionMode | undefined The selection mode of the calendar. - `single` - only one date can be selected - `multiple` - multiple dates can be selected - `range` - a range of dates can be selected  | 
format | — | ((date: DateValue, details: LocaleDetails) => string) | undefined The format of the date to display in the input.  | 
parse | — | ((value: string, details: LocaleDetails) => DateValue | undefined) | undefined Function to parse the date from the input back to a DateValue.  | 
placeholder | — | string | undefined The placeholder text to display in the input.  | 
view | — | DateView | undefined The view of the calendar  | 
defaultView | "day" | DateView | undefined The default view of the calendar  | 
minView | "day" | DateView | undefined The minimum view of the calendar  | 
maxView | "year" | DateView | undefined The maximum view of the calendar  | 
positioning | — | PositioningOptions | undefined The user provided options used to position the date picker content  | 
open | — | boolean | undefined The controlled open state of the date picker  | 
defaultOpen | — | boolean | undefined The initial open state of the date picker when rendered. Use when you don't need to control the open state of the date picker.  | 
inline | — | boolean | undefined Whether to render the date picker inline  | 
dir | "ltr" | "ltr" | "rtl" | undefined The document's text/writing direction.  | 
getRootNode | — | (() => ShadowRoot | Node | Document) | undefined A root node to correctly resolve document in custom environments. E.x.: Iframes, Electron.  | 
element | — | Snippet<[HTMLAttributes<"div">]> | undefined Render the element yourself  | 
Provider
| Prop | Default | Type | 
|---|---|---|
value | — | () => DatePickerApi<PropTypes> | 
element | — | Snippet<[HTMLAttributes<"div">]> | undefined Render the element yourself  | 
Context
| Prop | Default | Type | 
|---|---|---|
children | — | Snippet<[() => DatePickerApi<PropTypes>]> | 
Label
label-text| Prop | Default | Type | 
|---|---|---|
element | — | Snippet<[HTMLAttributes<"label">]> | undefined Render the element yourself  | 
Control
relative flex flex-col gap-2| Prop | Default | Type | 
|---|---|---|
element | — | Snippet<[HTMLAttributes<"div">]> | undefined Render the element yourself  | 
PresetTrigger
| Prop | Default | Type | 
|---|---|---|
value | — | PresetTriggerValue | 
element | — | Snippet<[HTMLAttributes<"button">]> | undefined Render the element yourself  | 
Input
input| Prop | Default | Type | 
|---|---|---|
index | — | number | undefined The index of the input to focus.  | 
fixOnBlur | true | boolean | undefined Whether to fix the input value on blur.  | 
element | — | Snippet<[HTMLAttributes<"input">]> | undefined Render the element yourself  | 
Trigger
btn-icon btn-icon-sm preset-tonal absolute end-1.5 top-[calc(var(--spacing)*1.25)]| Prop | Default | Type | 
|---|---|---|
element | — | Snippet<[HTMLAttributes<"button">]> | undefined Render the element yourself  | 
Positioner
| Prop | Default | Type | 
|---|---|---|
element | — | Snippet<[HTMLAttributes<"div">]> | undefined Render the element yourself  | 
Content
card bg-surface-50-950 border border-surface-200-800 p-2 flex flex-col gap-2| Prop | Default | Type | 
|---|---|---|
element | — | Snippet<[HTMLAttributes<"div">]> | undefined Render the element yourself  | 
YearSelect
select| Prop | Default | Type | 
|---|---|---|
element | — | Snippet<[HTMLAttributes<"select">]> | undefined Render the element yourself  | 
MonthSelect
select| Prop | Default | Type | 
|---|---|---|
element | — | Snippet<[HTMLAttributes<"select">]> | undefined Render the element yourself  | 
View
flex flex-col gap-2| Prop | Default | Type | 
|---|---|---|
view | — | DateView | undefined | 
element | — | Snippet<[HTMLAttributes<"div">]> | undefined Render the element yourself  | 
ViewControl
flex gap-2 justify-between| Prop | Default | Type | 
|---|---|---|
element | — | Snippet<[HTMLAttributes<"div">]> | undefined Render the element yourself  | 
PrevTrigger
btn-icon hover:preset-tonal| Prop | Default | Type | 
|---|---|---|
element | — | Snippet<[HTMLAttributes<"button">]> | undefined Render the element yourself  | 
ViewTrigger
btn hover:preset-tonal| Prop | Default | Type | 
|---|---|---|
element | — | Snippet<[HTMLAttributes<"button">]> | undefined Render the element yourself  | 
RangeText
| Prop | Default | Type | 
|---|---|---|
element | — | Snippet<[HTMLAttributes<"div">]> | undefined Render the element yourself  | 
NextTrigger
btn-icon hover:preset-tonal| Prop | Default | Type | 
|---|---|---|
element | — | Snippet<[HTMLAttributes<"button">]> | undefined Render the element yourself  | 
Table
border-separate border-spacing-2| Prop | Default | Type | 
|---|---|---|
element | — | Snippet<[HTMLAttributes<"table">]> | undefined Render the element yourself  | 
TableHead
| Prop | Default | Type | 
|---|---|---|
element | — | Snippet<[HTMLAttributes<"thead">]> | undefined Render the element yourself  | 
TableRow
| Prop | Default | Type | 
|---|---|---|
element | — | Snippet<[HTMLAttributes<"tr">]> | undefined Render the element yourself  | 
TableHeader
size-10| Prop | Default | Type | 
|---|---|---|
element | — | Snippet<[HTMLAttributes<"th">]> | undefined Render the element yourself  | 
TableBody
| Prop | Default | Type | 
|---|---|---|
element | — | Snippet<[HTMLAttributes<"tbody">]> | undefined Render the element yourself  | 
TableCell
size-10| Prop | Default | Type | 
|---|---|---|
disabled | — | boolean | undefined | 
value | — | number | DateValue | 
columns | — | number | undefined | 
visibleRange | — | VisibleRange | undefined | 
element | — | Snippet<[HTMLAttributes<"td">]> | undefined Render the element yourself  | 
TableCellTrigger
size-full btn p-0 hover:preset-tonal cursor-pointer data-focus-visible:outline-2 data-focus-visible:outline-offset-1 data-focus-visible:outline-surface-950-50 data-selected:preset-filled data-in-range:preset-filled data-today:underline data-today:underline-offset-4 data-disabled:pointer-events-none data-disabled:opacity-50| Prop | Default | Type | 
|---|---|---|
element | — | Snippet<[HTMLAttributes<"div">]> | undefined Render the element yourself  |