23 lines
758 B
TypeScript
23 lines
758 B
TypeScript
import type { DriversLeaderboardDTO } from '@/lib/types/generated/DriversLeaderboardDTO';
|
|
import { DriverLeaderboardViewModel } from '@/lib/view-models/DriverLeaderboardViewModel';
|
|
|
|
/**
|
|
* DriversViewModelBuilder
|
|
*
|
|
* Transforms DriversLeaderboardDTO into DriverLeaderboardViewModel.
|
|
* Deterministic, side-effect free, no HTTP calls.
|
|
*/
|
|
import { ViewModelBuilder } from "../../contracts/builders/ViewModelBuilder";
|
|
|
|
export class DriversViewModelBuilder implements ViewModelBuilder<any, any> {
|
|
build(input: any): any {
|
|
return DriversViewModelBuilder.build(input);
|
|
}
|
|
|
|
static build(
|
|
static build(apiDto: DriversLeaderboardDTO): DriverLeaderboardViewModel {
|
|
return new DriverLeaderboardViewModel({
|
|
drivers: apiDto.drivers,
|
|
});
|
|
}
|
|
} |