import {Link} from "react-router-dom"; import "./auth.css" import {useDispatch} from "react-redux"; import {useNavigate} from "react-router"; import * as yup from "yup"; import {useForm} from "react-hook-form"; import {yupResolver} from "@hookform/resolvers/yup"; import {AuthActions} from "../../redux/actions/authActions"; import {notifyIncorrectEmailOrPassword} from "../../utils/toastUtils"; import {GoogleOAuthProvider, GoogleLogin} from "@react-oauth/google"; export const SignInForm = () => { const dispatch = useDispatch(); const navigate = useNavigate() const schema = yup.object().shape({ emailLog: yup.string().required("Email is required.").email("Email is not valid."), passwordLog: yup.string().min(3, "Password must be at least 6 characters.").required("Password is required."), }); const {register, handleSubmit, formState: {errors}} = useForm({ resolver: yupResolver(schema), }); const signIn = async (values) => { try { dispatch(AuthActions.signIn(values.emailLog, values.passwordLog, success => { if(success) { navigate("/") } else { notifyIncorrectEmailOrPassword() } })); } catch (err) { // console.error(err); } } const handleGoogleSuccess = (response) => { const tokenId = response.credential; dispatch(AuthActions.signInGoogle(tokenId, (success, error) => { if (success) { console.log("User signed in successfully"); if(success) { navigate("/") } } else { console.error("Google sign-in failed", error); } })); }; const handleGoogleFailure = (error) => { console.error(error); }; return (

Sign in

{/*
*/} {/* Forgot password?*/} {/*
*/}
or

Don't have an account?
SIGN UP AS RECRUITER
SIGN UP AS JOB SEEKER
) }