login error msg timeout #8

Merged
ameye merged 4 commits from login-error-msg-timeout into master 2023-04-18 09:11:59 +00:00
2 changed files with 14 additions and 2 deletions
+1
View File
@@ -19,3 +19,4 @@ REACT_APP_CONTACT_LINK='https://www.float.sg/contact'
REACT_APP_ABOUT_LINK='https://www.float.sg/about' REACT_APP_ABOUT_LINK='https://www.float.sg/about'
REACT_APP_LOGIN_ERROR_TIMEOUT=5000 REACT_APP_LOGIN_ERROR_TIMEOUT=5000
REACT_APP_LOGOUT_SESSION_TIMEOUT=300000
+12 -1
View File
@@ -8,6 +8,7 @@ import {
Dispatch, Dispatch,
SetStateAction, SetStateAction,
} from 'react' } from 'react'
import {useLocation} from 'react-router-dom'
import {LayoutSplashScreen} from '../../../../_res/layout/core' import {LayoutSplashScreen} from '../../../../_res/layout/core'
import {AuthModel, UserModel} from './_models' import {AuthModel, UserModel} from './_models'
import * as authHelper from './AuthHelpers' import * as authHelper from './AuthHelpers'
@@ -61,6 +62,7 @@ const AuthProvider: FC<WithChildren> = ({children}) => {
} }
const AuthInit: FC<WithChildren> = ({children}) => { const AuthInit: FC<WithChildren> = ({children}) => {
const {pathname} = useLocation()
const {auth, logout, setCurrentUser} = useAuth() const {auth, logout, setCurrentUser} = useAuth()
const didRequest = useRef(false) const didRequest = useRef(false)
const [showSplashScreen, setShowSplashScreen] = useState(true) const [showSplashScreen, setShowSplashScreen] = useState(true)
@@ -95,8 +97,17 @@ const AuthInit: FC<WithChildren> = ({children}) => {
logout() logout()
setShowSplashScreen(false) setShowSplashScreen(false)
} }
// adding a timeout for 5mins
const logOutSession = setTimeout(() => {
logout()
}, Number(process.env.REACT_APP_LOGOUT_SESSION_TIMEOUT))
return (() => {
clearInterval(logOutSession)
})
// eslint-disable-next-line // eslint-disable-next-line
}, []) }, [pathname])
return showSplashScreen ? <LayoutSplashScreen /> : <>{children}</> return showSplashScreen ? <LayoutSplashScreen /> : <>{children}</>
} }