Hapio Calendar

HapioCalendar

Every prop of the registry block, and the props of the wrappers and parts the registry adds.

HapioCalendar (components/hapio-calendar/hapio-calendar.tsx after shadcn add) takes every calendar option, the UI props of the registry, and className and style for its root. Its props type, HapioCalendarProps<TData, TRes, V, TDrag>, is published in @hapio/calendar-react, so wrappers can produce it: TData is inferred from events or eventItems, V from views, TDrag from acceptExternal or nativeDrop.

Props

The props of the registry block HapioCalendar: every calendar option, every UI prop, plus className and style for the root (its height includes the toolbar; the view fills the rest and scrolls inside). Declared here, in npm, so wrappers such as @hapio/calendar-compat can produce them; the registry file re-exports it.

Prop

Type

The wrappers

CalendarSelection (calendar-selection.tsx), CalendarEditing (calendar-editing.tsx) and CalendarExternalDrops (calendar-external-drops.tsx) take only children: the calendars inside them get the selection engine, both editing engines, or the external-drop engine added to whichever of the two is around it. See Selection, Editing and Dragging in.

CalendarDraggable

calendar-draggable.tsx: an item to drop on the calendars inside a <CalendarExternalDrops>.

Prop

Type

EventCalendar

components/event-calendar.tsx (the event-calendar item) takes the options of the calendar you migrate from: see Compat and the migration guide.