diff --git a/src/libs/Navigation/AppNavigator/AuthScreens.js b/src/libs/Navigation/AppNavigator/AuthScreens.js index f033f5a8a243..554890b4056d 100644 --- a/src/libs/Navigation/AppNavigator/AuthScreens.js +++ b/src/libs/Navigation/AppNavigator/AuthScreens.js @@ -4,6 +4,7 @@ import PropTypes from 'prop-types'; import moment from 'moment'; import _ from 'underscore'; import lodashGet from 'lodash/get'; +import Str from 'expensify-common/lib/str'; import getNavigationModalCardStyle from '../../../styles/getNavigationModalCardStyles'; import withWindowDimensions, {windowDimensionsPropTypes} from '../../../components/withWindowDimensions'; import CONST from '../../../CONST'; @@ -199,7 +200,7 @@ class AuthScreens extends React.Component { const MainDrawerNavigator = require('./MainDrawerNavigator').default; return MainDrawerNavigator; }} - initialParams={{openOnAdminRoom: openOnAdminRoom === 'true'}} + initialParams={{openOnAdminRoom: Str.toBool(openOnAdminRoom) || undefined}} /> { + const routes = navigationRef.current && lodashGet(navigationRef.current.getState(), 'routes'); + const homeRoute = _.find(routes, route => route.name === SCREENS.HOME); + + const emptyParams = {}; + _.keys(lodashGet(homeRoute, 'params')).forEach((paramKey) => { + emptyParams[paramKey] = undefined; + }); + + Navigation.setParams(emptyParams, lodashGet(homeRoute, 'key', '')); + }); +} + /** * Cleanup actions resulting in the user being redirected to the Sign-in page * - Clears the Onyx store - removing the authToken redirects the user to the Sign-in page * - Cancels pending network calls - any lingering requests are discarded to prevent unwanted storage writes + * - Clears all current params of the Home route - the login page URL should not contain any parameter * * Normally this method would live in Session.js, but that would cause a circular dependency with Network.js. * @@ -64,6 +87,7 @@ function redirectToSignIn(errorMessage) { PersistedRequests.clear(); NetworkConnection.clearReconnectionCallbacks(); clearStorageAndRedirect(errorMessage); + resetHomeRouteParams(); } export default redirectToSignIn;