import { ApiProperty, ApiPropertyOptional } from '@nestjs/swagger';
import { IsBoolean, IsInt, IsNotEmpty, IsOptional, IsString, MaxLength, Min } from 'class-validator';

export class CreatePipelineDto {
  @ApiProperty({ example: 'Ventas mostrador' })
  @IsString()
  @IsNotEmpty()
  @MaxLength(100)
  nombre: string;

  @ApiPropertyOptional({ example: 'Oportunidades que nacen en el local' })
  @IsOptional()
  @IsString()
  @MaxLength(255)
  descripcion?: string;

  @ApiPropertyOptional({ example: 0, description: 'Orden en los selectores.' })
  @IsOptional()
  @IsInt()
  @Min(0)
  orden?: number;

  @ApiPropertyOptional({
    example: true,
    description: 'Pipeline que se preselecciona al convertir un lead. Sólo uno por empresa.',
  })
  @IsOptional()
  @IsBoolean()
  es_default?: boolean;
}
