import type { GetAvatarOutputDto, RequestAvatarGenerationOutputDto, UpdateAvatarOutputDto } from '../dtos'; import type { AvatarViewModel, RequestAvatarGenerationViewModel, UpdateAvatarViewModel } from '../view-models'; /** * Avatar Presenter * Transforms avatar DTOs to ViewModels */ export class AvatarPresenter { presentAvatar(dto: GetAvatarOutputDto): AvatarViewModel { return { driverId: dto.driverId, avatarUrl: dto.avatarUrl, hasAvatar: dto.hasAvatar, }; } presentRequestGeneration(dto: RequestAvatarGenerationOutputDto): RequestAvatarGenerationViewModel { return { success: dto.success, avatarUrl: dto.avatarUrl, error: dto.error, }; } presentUpdate(dto: UpdateAvatarOutputDto): UpdateAvatarViewModel { return { success: dto.success, error: dto.error, }; } }