| Prop | Type | Default | Description |
|---|---|---|---|
| numberOfMonths | number | undefined | 1 | Number of months to display simultaneously (1–12). |
| fixedWeeks | boolean | undefined | false | When true, always render 6 week rows per month grid.
Prevents layout shifts when navigating between months. |
| outsideDays | OutsideDays | undefined | "enabled" | Controls how days from adjacent months are displayed. |
| outOfRangeBehavior | MonthOutOfRangeBehavior | undefined | "unbounded" | How month navigation behaves at the min/max bounds. min/max always
restrict which **days are selectable**; this controls whether you can still
**view** months outside them. See MonthOutOfRangeBehavior.
- "unbounded" — Prev/Next are never disabled by min/max; you can page
to any month, with out-of-range days rendered disabled.
- "stop" — Prev/Next disable once the destination month crosses the bound. |
| month | PlainYearMonth | undefined | — | The controlled visible month. When provided, the component is controlled.
Interpreted in the ISO calendar (the year/month are read as ISO values).
The locale only affects how the month is displayed, so this value
round-trips directly with onMonthChange. |
| defaultMonth | PlainYearMonth | undefined | — | The initial visible month (uncontrolled). Interpreted in the ISO calendar. |
| onMonthChange | ((month: PlainYearMonth) => void) | undefined | — | Called when the visible month changes via navigation or focus movement.
Not called on initial mount. The argument is an ISO PlainYearMonth. |
| children | React.ReactNode | — | React children. |
Guides
Components
Components
- CalendarProvider
- DateString
- DayButton
- DayCellTemplate
- Grid
- GridBody
- GridHeader
- GridHeaderCell
- MonthSeparator
- MonthSeparatorCell
- MonthSeparatorMonth
- MonthSeparatorRow
- MonthSeparatorWeekCount
- MonthSeparatorYear
- MonthView
- MonthViewRoot
- MonthYearString
- NextMonthButton
- NextWeeksButton
- PrevMonthButton
- PrevWeeksButton
- RangeEndDragHandle
- RangePreview
- RangeSelected
- RangeStartDragHandle
- TimeString
- WeekCount
- WeekNumberCell
- WeekNumberHeader
- WeeksView
- WeeksViewRoot
- WeekTemplate
Hooks
Types
- CalendarProviderProps
- CalendarStableContextValue
- CalendarStateContextValue
- DateRange
- DateStringProps
- DateStringState
- DateValueObject
- DayButtonProps
- DayButtonState
- DayCellTemplateProps
- DayCellTemplateState
- DragHandleOwnProps
- DragHandleState
- FirstWeekSpec
- GridBodyProps
- GridBodyState
- GridHeaderCellProps
- GridHeaderCellState
- GridHeaderProps
- GridHeaderState
- GridProps
- GridState
- MonthData
- MonthOutOfRangeBehavior
- MonthSeparatorState
- MonthViewProps
- MonthViewRootProps
- MonthViewStableContextValue
- MonthViewStateContextValue
- MonthYearStringProps
- MonthYearStringState
- NavButtonState
- NextMonthButtonProps
- NextWeeksButtonProps
- OutOfRangeBehavior
- OutsideDays
- PlainDateObject
- PrevMonthButtonProps
- PrevWeeksButtonProps
- RangeEndDragHandleProps
- RangeMode
- RangePreviewProps
- RangePreviewState
- RangeSelectedProps
- RangeSelectedState
- RangeStartDragHandleProps
- RawValueForFormat
- RootState
- ScrollToWeekSnap
- TemporalNamespace
- TimeStringProps
- TimeStringState
- ValueChangeMeta
- ValueForFormat
- ValueFormat
- ViewContextValue
- VisibleMonth
- WeekCountProps
- WeekCountState
- WeekDescriptor
- WeekNumberCellProps
- WeekNumberCellState
- WeekNumberHeaderProps
- WeekNumberHeaderState
- WeeksNavButtonOwnProps
- WeeksNavButtonState
- WeekStartDay
- WeeksViewProps
- WeeksViewRootHandle
- WeeksViewRootProps
- WeeksViewStableContextValue
- WeeksViewStateContextValue
- WeekTemplateProps
- WeekTemplateState
- WindowInfo