import { ApiPropertyOptional, PartialType, PickType } from '@nestjs/swagger'; import { IsEnum, IsOptional } from 'class-validator'; import { ColonyStatus } from '../../../generated/prisma'; import { CreateColonyDto } from './create-colony.dto'; class UpdatableColonyFieldsDto extends PartialType( PickType(CreateColonyDto, [ 'hiveType', 'originText', 'colonyType', 'strength', 'broodStatus', 'feedStatus', 'healthStatus', 'notes', ] as const), ) {} export class UpdateColonyDto extends UpdatableColonyFieldsDto { @ApiPropertyOptional({ enum: ColonyStatus }) @IsOptional() @IsEnum(ColonyStatus) status?: ColonyStatus; }