@@ -5,14 +5,21 @@ import styles from '../auth.module.css';
55import { useNavigate } from 'react-router-dom' ;
66import { faChevronRight } from '@fortawesome/free-solid-svg-icons' ;
77import { BASE_PATH } from '../../../../config/config' ;
8- import { loginAction , loginError } from '../../../../store/User/UserSlice' ;
8+ import {
9+ isloggedIn ,
10+ loginAction ,
11+ loginError ,
12+ loading ,
13+ } from '../../../../store/User/UserSlice' ;
914import { useAppSelector , useAppDispatch } from '../../../../store/hooks' ;
1015import { IconProp } from '@fortawesome/fontawesome-svg-core' ;
1116import ForgetPassword from './ForgetPassword/ForgetPassword' ;
1217import toast from 'react-hot-toast' ;
1318
1419function Login ( ) : JSX . Element {
1520 const navigate = useNavigate ( ) ;
21+ const isLoggedIn = useAppSelector ( isloggedIn ) ;
22+ const loadingAuth = useAppSelector ( loading ) ;
1623 const [ email , setEmail ] = useState ( '' ) ;
1724 const [ password , setPassword ] = useState ( '' ) ;
1825 const [ open , isOpen ] = useState < boolean > ( false ) ;
@@ -23,10 +30,10 @@ function Login(): JSX.Element {
2330 } , [ loggedInError ] ) ;
2431
2532 useEffect ( ( ) => {
26- if ( localStorage . getItem ( 'token' ) != null ) {
33+ if ( isLoggedIn && ! loadingAuth ) {
2734 navigate ( '/dashboard' , { replace : true } ) ;
2835 }
29- } , [ localStorage . getItem ( 'token' ) ] ) ;
36+ } , [ isLoggedIn , loadingAuth ] ) ;
3037 const handleForgetPassword = ( ) => {
3138 if ( open == false ) isOpen ( true ) ;
3239 else isOpen ( false ) ;
0 commit comments