import { useState } from 'react'; import { Navigate, useNavigate } from 'react-router-dom'; import { Eye, EyeOff, Lock, User } from 'lucide-react'; import { useForm } from 'react-hook-form'; import { yupResolver } from '@hookform/resolvers/yup'; import { useAuth } from '../contexts/AuthContext'; import { Button } from '../components/ui/Button'; import { Input } from '../components/ui/Input'; import { loginSchema, LoginFormData } from '../utils/validationSchemas'; import { useLogin } from './auth/core/_hooks'; export const Login = () => { const { isAuthenticated, restoreSession } = useAuth(); const navigate = useNavigate(); const [showPassword, setShowPassword] = useState(false); const [error, setError] = useState(''); const { mutate: login, isPending: isLoading } = useLogin(); const { register, handleSubmit, formState: { errors, isValid }, } = useForm({ resolver: yupResolver(loginSchema), mode: 'onChange', }); if (isAuthenticated) { return ; } const onSubmit = async (data: LoginFormData) => { setError(''); login(data, { onSuccess: () => { restoreSession(); navigate('/'); }, onError: () => { setError('نام کاربری یا رمز عبور اشتباه است'); } }); }; return (

ورود به پنل مدیریت

لطفا اطلاعات خود را وارد کنید

{errors.password && (

{errors.password.message}

)}
{error && (
{error}
)}
); };