Orders events by time among all calendar views regardless of calendar

This commit is contained in:
Andrew Gioia 2026-02-04 16:04:25 -05:00
parent 7ba5041ba6
commit c7ac146fab
Signed by: andrew
GPG Key ID: FC09694A000800C8

View File

@ -28,7 +28,7 @@ class CalendarViewBuilder
$gridStartMinutes = $daytimeHours ? ((int) $daytimeHours['start'] * 60) : 0; $gridStartMinutes = $daytimeHours ? ((int) $daytimeHours['start'] * 60) : 0;
$gridEndMinutes = $daytimeHours ? ((int) $daytimeHours['end'] * 60) : (24 * 60); $gridEndMinutes = $daytimeHours ? ((int) $daytimeHours['end'] * 60) : (24 * 60);
return $events->flatMap(function ($e) use ( $payloads = $events->flatMap(function ($e) use (
$calendarMap, $calendarMap,
$uiFormat, $uiFormat,
$view, $view,
@ -151,7 +151,12 @@ class CalendarViewBuilder
'duration' => $placement['duration'], 'duration' => $placement['duration'],
]; ];
})->filter()->values(); })->filter()->values();
})->keyBy('occurrence_id'); })->filter();
// ensure chronological ordering across calendars for all views
return $payloads
->sortBy('start')
->keyBy('occurrence_id');
} }
/** /**