import sendLoginUserRequest from '@/requests/sendLoginUserRequest'; import LoginValidationSchema from '@/services/user/schema/LoginValidationSchema'; import { zodResolver } from '@hookform/resolvers/zod'; import { useRouter } from 'next/router'; import { useForm, SubmitHandler } from 'react-hook-form'; import { z } from 'zod'; import FormError from '../ui/forms/FormError'; import FormInfo from '../ui/forms/FormInfo'; import FormLabel from '../ui/forms/FormLabel'; import FormSegment from '../ui/forms/FormSegment'; import FormTextInput from '../ui/forms/FormTextInput'; type LoginT = z.infer; const LoginForm = () => { const router = useRouter(); const { register, handleSubmit, formState } = useForm({ resolver: zodResolver(LoginValidationSchema), defaultValues: { username: '', password: '', }, }); const { errors } = formState; const onSubmit: SubmitHandler = async (data) => { try { const response = await sendLoginUserRequest(data); router.push(`/users/${response.id}`); } catch (error) { console.error(error); } }; return (
username {errors.username?.message} password {errors.password?.message}
); }; export default LoginForm;