import { Transform, Type } from 'class-transformer'; import { IsBoolean, IsISO8601, IsInt, IsOptional, Matches, Max, Min } from 'class-validator'; export class ScheduleSyncQueryDto { @IsOptional() @Matches(/^\d{4}-\d{2}-\d{2}$/) @IsISO8601({ strict: true }) dateFrom?: string; @IsOptional() @Type(() => Number) @IsInt() @Min(1) @Max(90) days: number = 30; @IsOptional() @Transform(({ value }) => value === true || value === 'true') @IsBoolean() attendanceMachineOnly: boolean = false; }