import { ValidationClass } from '@humand-packages/common';
import { Expose } from 'class-transformer';
import { IsIn, IsNotEmpty, IsOptional, IsString, MaxLength } from 'class-validator';
import { TimeTrackingCategorizedHourStatus } from '../../../infrastructure/constants/timeTracking/categorizedHourStatus';

export class EditCategorizedHourStatusVC extends ValidationClass {
    @IsNotEmpty()
    @IsIn([TimeTrackingCategorizedHourStatus.APPROVED, TimeTrackingCategorizedHourStatus.REJECTED])
    @Expose()
    status!: TimeTrackingCategorizedHourStatus;

    @IsOptional()
    @IsString()
    @MaxLength(1000)
    @Expose()
    comment?: string;
}
