import React, { useState } from 'react' import { useMutation } from '@tanstack/react-query' import { useDispatch } from 'react-redux' import LoginImg from '../../assets/bg/login.svg' import { Link, useNavigate } from 'react-router-dom' import siteLinks from '../../links/siteLinks' import { loginUser } from '../../services/services' import { updateUserDetails } from '../../store/UserDetails' import GoogleDownload from '../../assets/img/download/andriod.jpg' import IOSDownload from '../../assets/img/download/apple.jpg' export default function Login() { const dispatch = useDispatch() const navigate = useNavigate() const [fields, setFields] = useState({ username: '', password: '', // remember: false }) const handleChange = ({target:{name, value}}) => { // if(name == 'remember'){ // return setFields(prev => ({...prev, remember:!prev.remember})) // } setFields(prev => ({...prev, [name]:value})) } const login = useMutation({ mutationFn: (fields) => { if(!fields.username || !fields.password){ throw new Error('Please provide all fields marked *') } return loginUser(fields) }, onError: (error) => { console.log(error) }, onSuccess: (res) => { const {token} = res?.data?.data if(token){ localStorage.setItem('token', token) // const data = {token} // dispatch(updateUserDetails({ ...data })); navigate('/dash') // later add redux to dispatch state } } }) return (
) }