33 lines
1.0 KiB
TypeScript
33 lines
1.0 KiB
TypeScript
/**
|
|
* GenerateAvatars ViewData Builder
|
|
*
|
|
* Transforms avatar generation result into ViewData for templates.
|
|
* Must be used in mutations to avoid returning DTOs directly.
|
|
*/
|
|
|
|
import { RequestAvatarGenerationOutputDTO } from '@/lib/types/generated/RequestAvatarGenerationOutputDTO';
|
|
import { GenerateAvatarsViewData } from './GenerateAvatarsViewData';
|
|
import { ViewData } from '@/lib/contracts/view-data/ViewData';
|
|
|
|
import { ViewDataBuilder } from "../../contracts/builders/ViewDataBuilder";
|
|
|
|
export class GenerateAvatarsViewDataBuilder implements ViewDataBuilder<any, any> {
|
|
build(input: any): any {
|
|
return GenerateAvatarsViewDataBuilder.build(input);
|
|
}
|
|
|
|
static build(
|
|
/**
|
|
* Transform DTO into ViewData
|
|
*
|
|
* @param apiDto - The API DTO to transform
|
|
* @returns ViewData for templates
|
|
*/
|
|
static build(apiDto: RequestAvatarGenerationOutputDTO): GenerateAvatarsViewData {
|
|
return {
|
|
success: apiDto.success,
|
|
avatarUrls: apiDto.avatarUrls || [],
|
|
errorMessage: apiDto.errorMessage,
|
|
};
|
|
}
|
|
} |