import { RacesAllViewData, RacesAllRace } from '@/lib/view-data/races/RacesAllViewData'; /** * Races All View Data Builder * * Transforms API DTO into ViewData for the all races template. * Deterministic, side-effect free. */ export class RacesAllViewDataBuilder { static build(apiDto: any): RacesAllViewData { const races = apiDto.races.map((race: any) => ({ id: race.id, track: race.track, car: race.car, scheduledAt: race.scheduledAt, status: race.status as 'scheduled' | 'running' | 'completed' | 'cancelled', sessionType: 'race', leagueId: race.leagueId, leagueName: race.leagueName, strengthOfField: race.strengthOfField ?? undefined, })); return { races, }; } }