"Gantt-chart" style timeline component with drag-and-drop. Try dragging slots between different rows and watch for conflict validation. Press ESC to cancel a drag operation.
Zoom level
Conference Room A
12
Conference Room B
8
Meeting Room 1
6
Meeting Room 2
4
Training Room
20
config - TimelineConfig (required) - Timeline configuration objectpercentageInView - number - Zoom level (default: 100)onSlotPositionChange - (slotId: string, newTime: string, newRowId: string) => Promise<boolean> - Callback when slot position changesonValidateDrop - (slotId: string, newTime: string, newRowId: string) => boolean - Validation callback for drop operationsonSlotClick - (slotId: string) => void - Click handler for slotsclassName - stringchildren - React.ReactNodeslots - TimelineSlotData[] (required) - Array of slot datarows - TimelineRowData[] (required) - Array of row dataclassName - stringchildren - React.ReactNodeclassName - stringchildren - React.ReactNode - TimelineHeader, TimelineRow, and TimelineCurrentTime componentscolumnLabel - React.ReactNode - Label for the left column (default: "Row")className - stringrow - TimelineRowData (required) - Row data objectslots - TimelineSlotData[] (required) - Array of slots for this rowchildren - (slot: TimelineSlotData) => React.ReactNode (required) - Render function for slotsrenderRowHeader - (row: TimelineRowData) => React.ReactNode - Custom row header rendererclassName - stringslot - TimelineSlotData (required) - Slot data objectclassName - stringchildren - React.ReactNode - Slot content (use TimelineSlotLabel and TimelineSlotContent)className - stringchildren - React.ReactNodeclassName - stringchildren - React.ReactNodenowLabel - string - Label for current time indicator (default: "Now")className - stringstartHour - number - Start hour (e.g., 9 for 9:00 AM)endHour - number - End hour (e.g., 18 for 6:00 PM)snapIntervalMinutes - number - Snap interval in minutes (default: 15)columnWidth - number - Width of left column in pixels (default: 112)id - string - Unique slot identifierrowId - string - Parent row identifierstartTime - string - Start time in "HH:MM" format (e.g., "14:30")duration - number - Duration in minutesid - string - Unique row identifierlabel - string - Row label/nameConverts time string (e.g., "14:30") to total minutes from midnight.
Converts total minutes from midnight to time string in "HH:MM" format.