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
+12 -9
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 <></>;