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 `https://cdn.example.com/avatars/${driverId}.png`; // Mock URL
  }

  getTeamLogo(teamId: string): string {
    this.logger.debug(`[InMemoryImageServiceAdapter] Getting logo for team: ${teamId}`);
    return `https://cdn.example.com/logos/team-${teamId}.png`; // Mock URL
  }

  getLeagueCover(leagueId: string): string {
    this.logger.debug(`[InMemoryImageServiceAdapter] Getting cover for league: ${leagueId}`);
    return `https://cdn.example.com/covers/league-${leagueId}.png`; // Mock URL
  }

  getLeagueLogo(leagueId: string): string {
    this.logger.debug(`[InMemoryImageServiceAdapter] Getting logo for league: ${leagueId}`);
    return `https://cdn.example.com/logos/league-${leagueId}.png`; // Mock URL
  }
}
