Files
gridpilot.gg/adapters/media/ports/InMemoryImageServiceAdapter.ts
2025-12-30 18:33:15 +01:00

28 lines
1.1 KiB
TypeScript

import type { IImageServicePort } from '@core/racing/application/ports/IImageServicePort';
import type { Logger } from '@core/shared/application';
export class InMemoryImageServiceAdapter implements IImageServicePort {
constructor(private readonly logger: Logger) {
this.logger.info('InMemoryImageServiceAdapter initialized.');
}
getDriverAvatar(driverId: string): string {
this.logger.debug(`[InMemoryImageServiceAdapter] Getting avatar for driver: ${driverId}`);
return `/media/avatar/${driverId}`;
}
getTeamLogo(teamId: string): string {
this.logger.debug(`[InMemoryImageServiceAdapter] Getting logo for team: ${teamId}`);
return `/media/teams/${teamId}/logo`;
}
getLeagueCover(leagueId: string): string {
this.logger.debug(`[InMemoryImageServiceAdapter] Getting cover for league: ${leagueId}`);
return `/media/leagues/${leagueId}/cover`;
}
getLeagueLogo(leagueId: string): string {
this.logger.debug(`[InMemoryImageServiceAdapter] Getting logo for league: ${leagueId}`);
return `/media/leagues/${leagueId}/logo`;
}
}