diff --git a/app/components/sport-season/EventSchedule.tsx b/app/components/sport-season/EventSchedule.tsx index 3b21e99..013a94f 100644 --- a/app/components/sport-season/EventSchedule.tsx +++ b/app/components/sport-season/EventSchedule.tsx @@ -113,9 +113,13 @@ export function EventSchedule({ upcomingEvents, recentEvents, leagueId, sportsSe

{getDisplayDate(event)} - {isMounted && (event.earliestGameTime ?? event.eventStartsAt) && ( - · {new Date(event.earliestGameTime ?? (event.eventStartsAt as string)).toLocaleTimeString(undefined, { hour: "numeric", minute: "2-digit" })} - )} + {isMounted && (() => { + const ts = event.earliestGameTime ?? (event.eventStartsAt as string | null | undefined); + if (!ts) return null; + const d = new Date(ts); + if (isNaN(d.getTime())) return null; + return · {d.toLocaleTimeString(undefined, { hour: "numeric", minute: "2-digit" })}; + })()}

{event.eventType === "schedule_event" ? ( diff --git a/app/models/scoring-event.ts b/app/models/scoring-event.ts index 26e31e9..80e45f4 100644 --- a/app/models/scoring-event.ts +++ b/app/models/scoring-event.ts @@ -379,7 +379,9 @@ export async function getUpcomingScoringEvents( .slice(0, limit) .map((e) => ({ ...e, - earliestGameTime: earliestGameById.get(e.id)?.toISOString() ?? null, + earliestGameTime: earliestGameById.get(e.id)?.toISOString() + ?? e.eventStartsAt?.toISOString() + ?? null, })); } diff --git a/database/schema.ts b/database/schema.ts index 96fadae..8cbb2be 100644 --- a/database/schema.ts +++ b/database/schema.ts @@ -886,7 +886,9 @@ export const tournamentGroups = pgTable("tournament_groups", { .references(() => scoringEvents.id, { onDelete: "cascade" }), groupName: varchar("group_name", { length: 10 }).notNull(), // "A" through "L" createdAt: timestamp("created_at").defaultNow().notNull(), -}); +}, (t) => [ + index("tournament_groups_scoring_event_id_idx").on(t.scoringEventId), +]); export const tournamentGroupMembers = pgTable("tournament_group_members", { id: uuid("id").primaryKey().defaultRandom(),