import { Button } from "@/components/ui/button"; import { Input } from "@/components/ui/input"; import { Label } from "@/components/ui/label"; import { Card, CardContent, CardDescription, CardHeader, CardTitle } from "@/components/ui/card"; import { Eye, EyeOff, Loader2, ArrowLeft } from "lucide-react"; import { RegisterFormData } from "@/types/auth"; import { ErrorMessage } from "./ErrorMessage"; import Link from "next/link"; interface RegisterFormProps { formData: RegisterFormData; isLoading: boolean; error: string; validationErrors: Record; showPassword: boolean; showPasswordConfirm: boolean; isFormValid: boolean; onInputChange: (e: React.ChangeEvent) => void; onSubmit: (e: React.FormEvent) => void; onTogglePassword: () => void; onTogglePasswordConfirm: () => void; } /** * 회원가입 폼 컴포넌트 */ export function RegisterForm({ formData, isLoading, error, validationErrors, showPassword, showPasswordConfirm, isFormValid, onInputChange, onSubmit, onTogglePassword, onTogglePasswordConfirm, }: RegisterFormProps) { return ( 회원가입 새로운 계정을 생성합니다
{/* 사용자 ID */}
{validationErrors.userId && (

{validationErrors.userId}

)}
{/* 비밀번호 */}
{validationErrors.password && (

{validationErrors.password}

)}
{/* 비밀번호 확인 */}
{validationErrors.passwordConfirm && (

{validationErrors.passwordConfirm}

)}
{/* 이름 */}
{validationErrors.userName && (

{validationErrors.userName}

)}
{/* 면허번호 */}
{validationErrors.licenseNumber && (

{validationErrors.licenseNumber}

)}

운전면허번호를 하이픈(-)을 포함하여 입력해주세요

{/* 차량 번호 */}
{validationErrors.vehicleNumber && (

{validationErrors.vehicleNumber}

)}

한국 차량 번호 형식으로 입력해주세요

{/* 휴대폰 번호 */}
{validationErrors.phoneNumber && (

{validationErrors.phoneNumber}

)}

하이픈(-)을 포함하여 입력해주세요

{/* 버튼 그룹 */}
); }