import { RaceListItem } from '@/components/races/RaceListItem'; import { routes } from '@/lib/routing/RouteConfig'; import type { RaceViewData } from '@/lib/view-data/RacesViewData'; import { DateHeader } from '@/ui/DateHeader'; import { EmptyState } from '@/ui/EmptyState'; import { Stack } from '@/ui/Stack'; import { Calendar, CheckCircle2, Clock, PlayCircle, XCircle } from 'lucide-react'; interface RaceListProps { racesByDate: Array<{ dateKey: string; dateLabel: string; races: RaceViewData[]; }>; totalCount: number; onRaceClick: (raceId: string) => void; } export function RaceList({ racesByDate, totalCount, onRaceClick }: RaceListProps) { if (racesByDate.length === 0) { return ( ); } return ( {racesByDate.map((group) => ( {group.races.map((race) => { return ( onRaceClick(race.id)} statusLabel={race.statusLabel} statusVariant={race.statusVariant as any} statusIconName={race.statusIconName} /> ); })} ))} ); }