сначала измените Entity на обычный json, используя classToPlain класса-преобразователя
, затем измените обычный json на DTO, используя plainToClass класса-преобразователя, как показано ниже
public async getAll(): Promise<ItemDTO[]> {
return await this.repo.find()
.then(items => items.map(e=>plainToClass(ItemDTO, classToPlain(e), { excludeExtraneousValues: true })));
}
дополнительно, давайте использовать Исключить, Выставить преобразователь класса в DTO для данных клиента, которые вы хотите, чтобы клиент увидел.
@Exclude()
export class ItemDTO implements Readonly<ItemDTO> {
@ApiProperty({ required: true })
@IsUUID()
@Expose()
id: string;
}