fix: onboarded steps validation in web app (#4527)

This commit is contained in:
guru_sainath 2024-05-20 16:12:56 +05:30 committed by GitHub
parent 1355873e32
commit 4c5d66d6d1
No known key found for this signature in database
GPG Key ID: B5690EEEBB952194

View File

@ -37,6 +37,14 @@ export const AuthenticationWrapper: FC<TAuthenticationWrapper> = observer((props
shouldRetryOnError: false,
});
const isUserOnboard =
currentUserProfile?.is_onboarded ||
(currentUserProfile?.onboarding_step?.profile_complete &&
currentUserProfile?.onboarding_step?.workspace_create &&
currentUserProfile?.onboarding_step?.workspace_invite &&
currentUserProfile?.onboarding_step?.workspace_join) ||
false;
const getWorkspaceRedirectionUrl = (): string => {
let redirectionRoute = "/profile";
@ -72,7 +80,7 @@ export const AuthenticationWrapper: FC<TAuthenticationWrapper> = observer((props
if (pageType === EPageTypes.NON_AUTHENTICATED) {
if (!currentUser?.id) return <>{children}</>;
else {
if (currentUserProfile?.id && currentUserProfile?.is_onboarded) {
if (currentUserProfile?.id && isUserOnboard) {
const currentRedirectRoute = getWorkspaceRedirectionUrl();
router.push(currentRedirectRoute);
return <></>;
@ -88,7 +96,7 @@ export const AuthenticationWrapper: FC<TAuthenticationWrapper> = observer((props
router.push("/sign-in");
return <></>;
} else {
if (currentUser && currentUserProfile?.id && currentUserProfile?.is_onboarded) {
if (currentUser && currentUserProfile?.id && isUserOnboard) {
const currentRedirectRoute = getWorkspaceRedirectionUrl();
router.push(currentRedirectRoute);
return <></>;
@ -101,12 +109,7 @@ export const AuthenticationWrapper: FC<TAuthenticationWrapper> = observer((props
router.push("/sign-in");
return <></>;
} else {
if (
currentUser &&
!currentUser?.is_password_autoset &&
currentUserProfile?.id &&
currentUserProfile?.is_onboarded
) {
if (currentUser && !currentUser?.is_password_autoset && currentUserProfile?.id && isUserOnboard) {
const currentRedirectRoute = getWorkspaceRedirectionUrl();
router.push(currentRedirectRoute);
return <></>;
@ -116,7 +119,7 @@ export const AuthenticationWrapper: FC<TAuthenticationWrapper> = observer((props
if (pageType === EPageTypes.AUTHENTICATED) {
if (currentUser?.id) {
if (currentUserProfile && currentUserProfile?.id && currentUserProfile?.is_onboarded) return <>{children}</>;
if (currentUserProfile && currentUserProfile?.id && isUserOnboard) return <>{children}</>;
else {
router.push(`/onboarding`);
return <></>;