Files
Goa-gel-fullstack/backend/src/modules/workflows/dto/create-workflow.dto.ts

38 lines
732 B
TypeScript
Raw Normal View History

import { IsString, IsOptional, IsArray, ValidateNested } from 'class-validator';
import { Type } from 'class-transformer';
import { WorkflowStageDto } from './workflow-stage.dto';
export class CreateWorkflowDto {
@IsString()
workflowType: string;
@IsString()
name: string;
@IsOptional()
@IsString()
description?: string;
@IsArray()
@ValidateNested({ each: true })
@Type(() => WorkflowStageDto)
stages: WorkflowStageDto[];
@IsOptional()
@IsArray()
@IsString({ each: true })
onSuccessActions?: string[];
@IsOptional()
@IsArray()
@IsString({ each: true })
onFailureActions?: string[];
@IsOptional()
metadata?: Record<string, any>;
@IsOptional()
@IsString()
createdBy?: string;
}