Skip to content

CalendarPicker API

API documentation for the React CalendarPicker component. Learn about the available props, and the CSS API.

Import

import CalendarPicker from '@material-ui/lab/CalendarPicker';
// or
import { CalendarPicker } from '@material-ui/lab';
You can learn about the difference by reading this guide on minimizing bundle size.

Component name

The name MuiCalendarPicker can be used when providing default props or style overrides in the theme.

Props

NameTypeDefaultDescription
onChange*funcCallback fired on date change
allowKeyboardControlboolfalseEnables keyboard listener for moving between days in calendar. Defaults to true unless the ClockPicker is used inside a Static* picker component.
defaultCalendarMonthanyDefault calendar month displayed when value={null}.
loadingboolfalseIf true renders LoadingComponent in calendar instead of calendar view. Can be used to preload information and show it in calendar.
maxDateanyMax selectable date. @DateIOType
minDateanyMin selectable date. @DateIOType
onMonthChangefuncCallback firing on month change. @DateIOType
onViewChangefuncCallback fired on view change.
openTo'day'
| 'month'
| 'year'
'day'Initially open view.
reduceAnimationsbooltypeof navigator !== 'undefined' && /(android)/i.test(navigator.userAgent)Disable heavy animations.
renderLoadingfunc() => <span data-mui-test="loading-progress">...</span>Component displaying when passed loading true.
shouldDisableDatefuncDisable specific date. @DateIOType
shouldDisableYearfuncDisable specific years dynamically. Works like shouldDisableDate but for year selection view @DateIOType.
view'day'
| 'month'
| 'year'
Controlled open view.
viewsArray<'day'
| 'month'
| 'year'>
['year', 'day']Views for calendar picker.

The ref is forwarded to the root element.

CSS

Rule nameGlobal classDescription
root.MuiCalendarPicker-root
viewTransitionContainer.MuiCalendarPicker-viewTransitionContainer
fullHeightContainer.MuiCalendarPicker-fullHeightContainer

You can override the style of the component using one of these customization options: If that isn't sufficient, you can check the implementation of the component for more detail.

Demos