RenaiApp/src/main/modules/serialization/serializers/transformation-type-name-se...

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) } : {}),
};
}
}