import { IsString, IsOptional, IsBoolean, IsInt, Min, IsEnum, IsNotEmpty } from 'class-validator'; import { ApiPropertyOptional, ApiProperty } from '@nestjs/swagger'; import { Type } from 'class-transformer'; import { FieldType } from '../interface/print'; export class CreateFieldDto { @IsString() @ApiProperty() name: string; @IsBoolean() @Type(() => Boolean) @ApiPropertyOptional({ example: true }) isRequired: boolean; @IsBoolean() @Type(() => Boolean) @ApiPropertyOptional({ example: true }) multiple: boolean; @IsNotEmpty() @IsEnum(FieldType) @ApiProperty({ enum: FieldType, example: FieldType.select }) type: FieldType; @IsOptional() @IsInt() @Min(0) @Type(() => Number) @ApiPropertyOptional({ example: 1 }) order?: number; }