26 lines
998 B
TypeScript
26 lines
998 B
TypeScript
import { injectable } from 'inversify';
|
|
import { TransformationType } from '../../../entities/library/transformation-type';
|
|
import { getDeserializedEntityPromise } from '../get-deserialized';
|
|
import { serializeName } from '../serialize-name';
|
|
import { Serializer } from '../serializer';
|
|
|
|
@injectable()
|
|
export class TransformationTypeNameSerializer extends Serializer<
|
|
TransformationTypeNameEntityInterface,
|
|
TransformationTypeNameSerializedInterface
|
|
> {
|
|
public serialize(entity: TransformationTypeNameEntityInterface): Promise<TransformationTypeNameSerializedInterface> {
|
|
return serializeName(entity);
|
|
}
|
|
|
|
public deserialize(
|
|
partial: Partial<TransformationTypeNameSerializedInterface>,
|
|
): Partial<TransformationTypeNameEntityInterface> {
|
|
return {
|
|
...(partial.id ? { id: partial.id } : {}),
|
|
...(partial.name ? { name: partial.name } : {}),
|
|
...(partial.entity ? { entity: getDeserializedEntityPromise(partial.entity, TransformationType) } : {}),
|
|
};
|
|
}
|
|
}
|