25 lines
719 B
TypeScript
25 lines
719 B
TypeScript
/**
|
|
* AvatarViewDataBuilder
|
|
*
|
|
* Transforms MediaBinaryDTO into AvatarViewData for server-side rendering.
|
|
* Deterministic; side-effect free; no HTTP calls.
|
|
*/
|
|
|
|
import { MediaBinaryDTO } from '@/lib/types/MediaBinaryDTO';
|
|
import { AvatarViewData } from '@/lib/view-data/AvatarViewData';
|
|
|
|
import { ViewDataBuilder } from "../../contracts/builders/ViewDataBuilder";
|
|
|
|
export class AvatarViewDataBuilder implements ViewDataBuilder<any, any> {
|
|
build(input: any): any {
|
|
return AvatarViewDataBuilder.build(input);
|
|
}
|
|
|
|
static build(
|
|
static build(apiDto: MediaBinaryDTO): AvatarViewData {
|
|
return {
|
|
buffer: Buffer.from(apiDto.buffer).toString('base64'),
|
|
contentType: apiDto.contentType,
|
|
};
|
|
}
|
|
} |