Calendar

Calendário mensal para seleção de datas. Suporta modos single, multiple e range.

Demonstração

Single

July 2026

Range

July 2026

Props

PropTipoPadrãoDescrição
mode"single" | "multiple" | "range""single"Modo de seleção: single, multiple ou range
selectedDate | Date[] | DateRangeData(s) selecionada(s)
onSelect(date) => voidCallback quando a seleção muda
disabledDate | Date[] | MatcherData(s) desabilitada(s) ou função matcher
showOutsideDaysbooleantrueExibe dias dos meses adjacentes

Uso

import { Calendar } from '@ghiberti85/ui'

// Single date
const [date, setDate] = useState<Date | undefined>()
<Calendar mode="single" selected={date} onSelect={setDate} />

// Date range
const [range, setRange] = useState<{ from?: Date; to?: Date }>()
<Calendar mode="range" selected={range} onSelect={setRange} />

// Multiple dates
const [dates, setDates] = useState<Date[]>()
<Calendar mode="multiple" selected={dates} onSelect={setDates} />

// Disable weekends
<Calendar mode="single" disabled={{ dayOfWeek: [0, 6] }} />

Ver no Storybook

Abrir no Storybook
Ghiberti UI — Design System