import { Transform } from 'class-transformer'; import { IsEnum, IsInt, IsOptional, IsString, Min } from 'class-validator'; export class ListSimulationTemplateOptionsQueryDto { @IsEnum(['STYLIST', 'SYSTEM']) source!: 'STYLIST' | 'SYSTEM'; @IsOptional() @IsEnum(['LONG', 'MEDIUM', 'SHORT', 'DYE']) category?: 'LONG' | 'MEDIUM' | 'SHORT' | 'DYE'; @IsOptional() @IsString() q?: string; @Transform(({ value }) => Number(value ?? 1)) @IsInt() @Min(1) page = 1; @Transform(({ value }) => Number(value ?? 12)) @IsInt() @Min(1) pageSize = 12; }