diff --git a/app/client/src/constants/routes.ts b/app/client/src/constants/routes.ts
index 0233df0583..f3cbee4136 100644
--- a/app/client/src/constants/routes.ts
+++ b/app/client/src/constants/routes.ts
@@ -278,5 +278,8 @@ export const extractAppIdAndPageIdFromUrl = (url = "") => {
};
}
- return {};
+ return {
+ applicationId: "",
+ pageId: "",
+ };
};
diff --git a/app/client/src/pages/Applications/index.tsx b/app/client/src/pages/Applications/index.tsx
index 8d10a8c0cc..6765a73869 100644
--- a/app/client/src/pages/Applications/index.tsx
+++ b/app/client/src/pages/Applications/index.tsx
@@ -81,11 +81,13 @@ import { createOrganizationSubmitHandler } from "../organization/helpers";
import UserApi from "api/UserApi";
import ImportApplicationModal from "./ImportApplicationModal";
import {
+ BUILDER_PAGE_URL,
extractAppIdAndPageIdFromUrl,
SIGNUP_SUCCESS_URL,
} from "constants/routes";
import { getIsSafeRedirectURL } from "utils/helpers";
+import history from "utils/history";
const OrgDropDown = styled.div`
display: flex;
@@ -940,14 +942,7 @@ class Applications extends Component<
);
if (applicationId && pageId) {
this.props.enableFirstTimeUserOnboarding(applicationId);
- /*
- * window.location.replace resets the application, adding
- * this timeout to store onboarding variables in indexdb
- */
-
- setTimeout(() => {
- window.location.replace(redirectUrl);
- });
+ history.replace(BUILDER_PAGE_URL(applicationId, pageId));
}
} else if (getIsSafeRedirectURL(redirectUrl)) {
window.location.replace(redirectUrl);
diff --git a/app/client/src/pages/Editor/EditorHeader.tsx b/app/client/src/pages/Editor/EditorHeader.tsx
index 77ede318f5..550a3adb4f 100644
--- a/app/client/src/pages/Editor/EditorHeader.tsx
+++ b/app/client/src/pages/Editor/EditorHeader.tsx
@@ -58,6 +58,7 @@ import { setIsGitSyncModalOpen } from "actions/gitSyncActions";
import RealtimeAppEditors from "./RealtimeAppEditors";
import { EditorSaveIndicator } from "./EditorSaveIndicator";
import getFeatureFlags from "utils/featureFlags";
+import { getIsInOnboarding } from "selectors/onboardingSelectors";
const HeaderWrapper = styled(StyledHeader)`
width: 100%;
@@ -169,6 +170,7 @@ type EditorHeaderProps = {
isSaving: boolean;
publishApplication: (appId: string) => void;
lastUpdatedTime?: number;
+ inOnboarding: boolean;
};
export function EditorHeader(props: EditorHeaderProps) {
@@ -342,7 +344,7 @@ export function EditorHeader(props: EditorHeaderProps) {
)}
-
+ {props.inOnboarding && }
{isSnipingMode && (
@@ -363,6 +365,7 @@ const mapStateToProps = (state: AppState) => ({
currentApplication: state.ui.applications.currentApplication,
isPublishing: getIsPublishingApplication(state),
pageId: getCurrentPageId(state),
+ inOnboarding: getIsInOnboarding(state),
});
const mapDispatchToProps = (dispatch: any) => ({
diff --git a/app/client/src/selectors/onboardingSelectors.tsx b/app/client/src/selectors/onboardingSelectors.tsx
index 5b12440905..e6471efd98 100644
--- a/app/client/src/selectors/onboardingSelectors.tsx
+++ b/app/client/src/selectors/onboardingSelectors.tsx
@@ -32,3 +32,6 @@ export const getIsFirstTimeUserOnboardingEnabled = createSelector(
return enabled && currentApplicationId === applicationId;
},
);
+
+export const getIsInOnboarding = (state: AppState) =>
+ state.ui.onBoarding.inOnboarding;