import {
  IsBoolean,
  IsEmail,
  IsNotEmpty,
  IsOptional,
  IsString,
} from 'class-validator';
import { ApiProperty } from '@nestjs/swagger';

// 로그인 DTO — 이메일/비밀번호 + 로그인 유지 여부
export class LoginDto {
  @ApiProperty({ description: '사용자 이메일', example: 'sykim@acme.co' })
  @IsEmail({}, { message: '올바른 이메일 형식을 입력해 주세요.' })
  @IsNotEmpty({ message: '이메일은 필수 입력 항목입니다.' })
  email!: string;

  @ApiProperty({ description: '비밀번호', example: 'password123' })
  @IsString()
  @IsNotEmpty({ message: '비밀번호는 필수 입력 항목입니다.' })
  password!: string;

  @ApiProperty({
    description: '로그인 상태 유지 여부',
    example: true,
    required: false,
  })
  @IsOptional()
  @IsBoolean()
  keepLogin?: boolean;
}
