UNPKG

@papernote/ui

Version:

A modern React component library with a paper notebook aesthetic - minimal, professional, and expressive

44 lines 1.65 kB
export interface CalendarEvent { date: Date; title: string; color?: 'primary' | 'success' | 'warning' | 'error' | 'accent'; metadata?: Record<string, unknown>; } export interface CalendarProps { /** Selected date */ value?: Date; /** Callback when date is selected */ onChange?: (date: Date) => void; /** Callback when displayed month changes (via navigation buttons or goToToday) */ onMonthChange?: (date: Date) => void; /** Events to display on calendar */ events?: CalendarEvent[]; /** Callback when event marker is clicked */ onEventClick?: (event: CalendarEvent) => void; /** Enable date range selection */ rangeMode?: boolean; /** Selected date range (start and end) */ rangeValue?: { start: Date | null; end: Date | null; }; /** Callback when range is selected */ onRangeChange?: (range: { start: Date | null; end: Date | null; }) => void; /** Minimum selectable date */ minDate?: Date; /** Maximum selectable date */ maxDate?: Date; /** Dates that cannot be selected */ disabledDates?: Date[]; /** Show week numbers */ showWeekNumbers?: boolean; /** First day of week (0 = Sunday, 1 = Monday) */ firstDayOfWeek?: 0 | 1; /** Custom class name */ className?: string; } export default function Calendar({ value, onChange, onMonthChange, events, onEventClick, rangeMode, rangeValue, onRangeChange, minDate, maxDate, disabledDates, showWeekNumbers, firstDayOfWeek, className, }: CalendarProps): import("react/jsx-runtime").JSX.Element; //# sourceMappingURL=Calendar.d.ts.map