layoutDaySchedule

fun <T> layoutDaySchedule(date: LocalDate, events: Iterable<CalendarEvent<T>>, minDurationMinutes: Int = 15): DayScheduleLayout<T>

Computes DayScheduleLayout for events occurring on date.

Timed events are clipped to date's 00:00..24:00 window, grouped into connected overlap clusters, packed greedily into the lowest free column, and then widened to the right across columns that are free for their whole span. Events in separate clusters never affect each other's widths. An overnight event that ends exactly at 00:00 on date is not placed on date.

Parameters

minDurationMinutes

Minimum visual height in minutes so 0-minute or 5-minute events remain legible and tappable (default 15 minutes).