OptionalclassOne or more CSS class names appended to the root <div> wrapper.
OptionalcloseWhen true, clicking outside the picker closes the calendar.
OptionalcloseWhen true, the calendar closes automatically as soon as the user
selects a value from the final view (day for a date picker, etc.).
OptionalcloseWhen true, pressing the Tab key closes the calendar.
OptionaldateDay.js format string for the date portion (e.g. 'YYYY-MM-DD').
Pass false to hide the date part entirely (time-only picker).
Pass true to use the locale default.
OptionaldisplayA timezone zone name
(e.g. 'America/New_York').
OptionalinitialInitial value for the picker in uncontrolled mode.
Accepts a dayjs object, a native Date, or a date string.
OptionalinitialThe date/time that the calendar initially navigates to (i.e. the month
shown when the picker first opens). Defaults to value, initialValue,
or today if neither is set.
OptionalinitialWhich calendar view to show first.
OptionalinputWhen true, the picker is displayed inside an <input> field that
opens a floating calendar. When false, the calendar is always visible
(static / inline mode).
OptionalinputProps forwarded directly to the underlying <input> element.
Any standard React.InputHTMLAttributes are accepted in addition to
arbitrary data attributes.
OptionalisReturn true for dates that should be selectable, false to disable them.
The dayjs date being evaluated.
true if the date is valid/selectable.
OptionallocaleA dayjs locale identifier string
(e.g. 'es', 'fr', 'de'). Applied to month/day names and the default
date/time format.
OptionalonCalled before the view changes, allowing the host to veto or redirect navigation.
Return nextView to allow, or a different ViewMode to redirect.
OptionalonCalled every time the user changes the selected value, whether by clicking a day/month/year, adjusting the time spinner, or typing in the input field.
A valid dayjs object when the input is parseable,
or the raw string when it cannot be parsed.
OptionalonCalled when the calendar/time-picker overlay is closed.
The currently selected value at close time.
OptionalonCalled when the user navigates to a different view (e.g. from days to months).
OptionalonCalled when the user clicks the "previous" navigation arrow.
Number of units navigated back.
Unit of navigation (e.g. 'months', 'years').
OptionalonCalled when the user clicks the "next" navigation arrow.
Number of units navigated forward.
Unit of navigation (e.g. 'months', 'years').
OptionalonCalled when the calendar/time-picker overlay is opened.
OptionalopenProgrammatically control whether the calendar overlay is open.
When set, the component becomes fully controlled — use onOpen/onClose
to manage the state externally.
OptionalrenderCustom render function for each day cell in the calendar grid.
Props to spread on the <td> element (includes click handlers).
The dayjs date for this cell.
OptionalselectedDate: DayjsThe currently selected date, if any.
OptionalrenderCustom render function for the text input.
Props to spread on your custom input element.
Call to open the calendar programmatically.
Call to close the calendar programmatically.
OptionalrenderCustom render function for each month cell in the month-selection view.
Props to spread on the <td> element.
Zero-based month index (0 = January).
Full four-digit year.
OptionalselectedDate: DayjsThe currently selected date, if any.
OptionalrenderCustom render function that wraps (or replaces) the default calendar view.
OptionalrenderCustom render function for each year cell in the year-selection view.
Props to spread on the <td> element.
Full four-digit year.
OptionalselectedDate: DayjsThe currently selected date, if any.
OptionalstrictWhen true, only dates that strictly match dateFormat are accepted
as valid when typing in the input field.
OptionaltimeFine-grained constraints for the time spinner. Each key corresponds to a
time unit; each value may contain min, max, and step.
OptionaltimeDay.js format string for the time portion (e.g. 'HH:mm:ss').
Pass false to hide the time part entirely (date-only picker).
Pass true to use the locale default.
OptionalupdateWhich calendar view triggers an onChange call.
By default, determined from dateFormat (e.g. 'days' for a full date format).
Set to 'months' to only fire onChange when a month is picked.
OptionalutcWhen true, all dates/times are interpreted and displayed in UTC.
OptionalvalueThe currently selected date/time value (controlled mode).
Accepts a dayjs object, a native Date, or a date string.
When provided the picker becomes a controlled component.
Props accepted by the Datetime component.
Every prop is optional; sensible defaults are applied for all of them.