import { IsEmail, IsString, MinLength, ValidateNested } from 'class-validator'; import { Type } from 'class-transformer'; import { ApiProperty } from '@nestjs/swagger'; export class NameDto { @ApiProperty({ example: 'ቀለሙ ቀጸላ' }) @IsString() am: string; @ApiProperty({ example: 'Kelemu Ketsela' }) @IsString() en: string; } export class RegisterDto { @ApiProperty({ example: 'kelemu@email.com' }) @IsEmail() email: string; @ApiProperty({ example: 'kelemu.ketsela' }) @IsString() username: string; @ApiProperty({ example: '+251912345678' }) @IsString() phoneNumber: string; @ApiProperty({ type: NameDto }) @ValidateNested() @Type(() => NameDto) name: NameDto; @ApiProperty({ example: 'SecurePass123', minLength: 8, format: 'password' }) @IsString() @MinLength(8) password: string; @ApiProperty({ example: 'SecurePass123', format: 'password' }) @IsString() confirmPassword: string; } export class LoginDto { @ApiProperty({ example: 'kelemu@email.com' }) @IsEmail() email: string; @ApiProperty({ example: 'password123', format: 'password' }) @IsString() password: string; }