diff --git a/app/models/__tests__/scoring-event-dashboard.test.ts b/app/models/__tests__/scoring-event-dashboard.test.ts index 3de7659..b2b631d 100644 --- a/app/models/__tests__/scoring-event-dashboard.test.ts +++ b/app/models/__tests__/scoring-event-dashboard.test.ts @@ -298,7 +298,7 @@ describe("getEventsForDates", () => { const result = await getEventsForDates(["2026-03-20", "2026-03-21"]); expect(result).toHaveLength(2); - const displayDates = result.map((e) => e.displayDate).sort(); + const displayDates = result.map((e) => e.displayDate).toSorted(); expect(displayDates).toEqual(["2026-03-20", "2026-03-21"]); // Both entries share the same event id expect(result[0].id).toBe("e1"); diff --git a/app/models/scoring-event.ts b/app/models/scoring-event.ts index 211fea7..1c900b3 100644 --- a/app/models/scoring-event.ts +++ b/app/models/scoring-event.ts @@ -676,7 +676,8 @@ export async function getEventsForDates( if (!eventDatesMap.has(row.id)) { eventDatesMap.set(row.id, new Set()); } - const dateSet = eventDatesMap.get(row.id)!; + const dateSet = eventDatesMap.get(row.id); + if (!dateSet) continue; if (row.eventDate && dates.includes(row.eventDate)) { dateSet.add(row.eventDate); } @@ -712,7 +713,7 @@ export async function getEventsForDates( // Return one entry per (event, date) pair so that an event with games on // both today and tomorrow appears in both tabs of the dashboard widget. return events.flatMap((e) => { - const matchingDates = [...(eventDatesMap.get(e.id) ?? [])].sort(); + const matchingDates = [...(eventDatesMap.get(e.id) ?? [])].toSorted(); const base = { id: e.id, name: e.name,