Skip to Content
ComponentsCalendar

Calendar

A standalone date picker grid built without an external primitive. Supports controlled and uncontrolled selection, min/max bounds, and custom disabled-date predicates.

Import

import { Calendar } from "chunks-ui";

Basic Usage

<Calendar />
March 2026
SuMoTuWeThFrSa

Controlled

function ControlledCalendar() { const [date, setDate] = useState<Date | null>(null); return ( <Calendar value={date} onValueChange={setDate} /> ); }
March 2026
SuMoTuWeThFrSa

No date selected

Disabled Dates

Use min/max to set a date range, or isDateDisabled to disable individual dates with a predicate:

const today = new Date(); const isWeekend = (date: Date) => date.getDay() === 0 || date.getDay() === 6; <Calendar min={today} isDateDisabled={isWeekend} />
March 2026
SuMoTuWeThFrSa

Calendar Props

PropTypeDefaultDescription
valueDate | nullControlled selected date
defaultValueDate | nullnullInitial selected date (uncontrolled)
onValueChange(date: Date | null) => voidCalled when the selected date changes
minDateEarliest selectable date (inclusive)
maxDateLatest selectable date (inclusive)
isDateDisabled(date: Date) => booleanPredicate to disable individual dates
classNamestringAdditional CSS classes
Last updated on