finalized signup/signin ux regarding redirects

This commit is contained in:
Sheen Capadngan
2023-05-07 20:54:30 +08:00
parent ea86e59d4f
commit 4c434555a4
9 changed files with 46 additions and 12 deletions
+16 -4
View File
@@ -9,14 +9,19 @@ export const useProviderAuth = () => {
const [providerAuthToken, setProviderAuthToken] = useState<string>(
SecurityClient.getProviderAuthToken() || ''
);
const [isProviderUserCompleted, setIsProviderUserCompleted] = useState<boolean>();
useEffect(() => {
const handleStorageChange = (event: StorageEvent) => {
if (event.storageArea === localStorage && event.key === PROVIDER_AUTH_TOKEN_KEY) {
if (event.newValue) {
const token = event.newValue;
const { userId: resultUserId, email: resultEmail } = jwt_decode(token) as any;
const {
userId: resultUserId,
email: resultEmail,
isUserCompleted: resultIsUserCompleted,
} = jwt_decode(token) as any;
setIsProviderUserCompleted(resultIsUserCompleted);
setProviderAuthToken(token);
setEmail(resultEmail);
setUserId(resultUserId);
@@ -24,6 +29,7 @@ export const useProviderAuth = () => {
setProviderAuthToken('');
setEmail('');
setUserId('');
setIsProviderUserCompleted(false);
}
setProviderAuthToken(event.newValue || '');
}
@@ -32,9 +38,14 @@ export const useProviderAuth = () => {
window.addEventListener('storage', handleStorageChange);
if (providerAuthToken) {
const { userId: resultUserId, email: resultEmail } = jwt_decode(providerAuthToken) as any;
const {
userId: resultUserId,
email: resultEmail,
isUserCompleted: resultIsUserCompleted,
} = jwt_decode(providerAuthToken) as any;
setEmail(resultEmail);
setUserId(resultUserId);
setIsProviderUserCompleted(resultIsUserCompleted);
}
return () => {
@@ -44,10 +55,11 @@ export const useProviderAuth = () => {
return {
email,
isProviderUserCompleted,
providerAuthToken,
userId,
setProviderAuthToken,
setEmail,
setProviderAuthToken,
setUserId,
};
};