refactor league module (wip)

This commit is contained in:
2025-12-22 12:57:10 +01:00
parent 9da528d5bd
commit 03dc81b0ba
39 changed files with 546 additions and 405 deletions

View File

@@ -1,19 +1,23 @@
import { LeagueStatsOutputPort } from '@core/racing/application/ports/output/LeagueStatsOutputPort';
import type { GetLeagueStatsResult } from '@core/racing/application/use-cases/GetLeagueStatsUseCase';
import { LeagueStatsDTO } from '../dtos/LeagueStatsDTO';
import type { Presenter } from '@core/shared/presentation';
export class LeagueStatsPresenter implements Presenter<LeagueStatsOutputPort, LeagueStatsDTO> {
export class LeagueStatsPresenter implements Presenter<GetLeagueStatsResult, LeagueStatsDTO> {
private result: LeagueStatsDTO | null = null;
reset() {
this.result = null;
}
present(dto: LeagueStatsOutputPort) {
this.result = dto;
present(dto: GetLeagueStatsResult) {
this.result = {
totalMembers: dto.driverCount,
totalRaces: dto.raceCount,
averageRating: dto.averageRating,
};
}
getViewModel(): LeagueStatsDTO | null {
getResponseModel(): LeagueStatsDTO | null {
return this.result;
}
}