Files
duorigin-v2/backend/src/auth/dto/registro.dto.ts

25 lines
880 B
TypeScript

import { IsEmail, IsString, MinLength, IsOptional, IsEnum } from 'class-validator';
import { ApiProperty, ApiPropertyOptional } from '@nestjs/swagger';
import { Role } from '@prisma/client';
export class RegistroDto {
@ApiProperty({ example: 'usuario@duorigin.com', description: 'Email do usuário' })
@IsEmail({}, { message: 'Email inválido' })
email: string;
@ApiProperty({ example: 'Senha123!', description: 'Senha do usuário' })
@IsString()
@MinLength(6, { message: 'Senha deve ter no mínimo 6 caracteres' })
password: string;
@ApiProperty({ example: 'João Silva', description: 'Nome completo do usuário' })
@IsString()
@MinLength(2, { message: 'Nome deve ter no mínimo 2 caracteres' })
nome: string;
@ApiPropertyOptional({ enum: Role, example: 'OPERADOR', description: 'Papel do usuário' })
@IsOptional()
@IsEnum(Role)
role?: Role;
}