diff --git a/src/ROUTES.ts b/src/ROUTES.ts index 153b50d6a5a7..94608c6bdbaa 100644 --- a/src/ROUTES.ts +++ b/src/ROUTES.ts @@ -2372,6 +2372,10 @@ const ROUTES = { // eslint-disable-next-line no-restricted-syntax -- Legacy route generation getRoute: (domain: string, backTo?: string) => getUrlWithBackToParam(`travel/${domain}/workspace-address`, backTo), }, + TRAVEL_VERIFY_ACCOUNT: { + route: `travel/:domain/${VERIFY_ACCOUNT}`, + getRoute: (domain: string) => `travel/${domain}/${VERIFY_ACCOUNT}` as const, + }, ONBOARDING_ROOT: { route: 'onboarding', diff --git a/src/SCREENS.ts b/src/SCREENS.ts index 8b81db19c86d..a36c9940af38 100644 --- a/src/SCREENS.ts +++ b/src/SCREENS.ts @@ -36,6 +36,7 @@ const SCREENS = { PUBLIC_DOMAIN_ERROR: 'Travel_PublicDomainError', WORKSPACE_ADDRESS: 'Travel_WorkspaceAddress', TRAVEL_DOT_LINK_WEB_VIEW: 'Travel_DotLinkWebView', + VERIFY_ACCOUNT: 'Travel_VerifyAccount', }, SEARCH: { ROOT: 'Search_Root', diff --git a/src/components/BookTravelButton.tsx b/src/components/BookTravelButton.tsx index b3ef4173ec83..8acae07beb97 100644 --- a/src/components/BookTravelButton.tsx +++ b/src/components/BookTravelButton.tsx @@ -42,7 +42,7 @@ const navigateToAcceptTerms = (domain: string, isUserValidated?: boolean) => { Navigation.navigate(ROUTES.TRAVEL_TCS.getRoute(domain)); return; } - Navigation.navigate(ROUTES.SETTINGS_CONTACT_METHOD_VERIFY_ACCOUNT.getRoute(Navigation.getActiveRoute(), ROUTES.TRAVEL_TCS.getRoute(domain))); + Navigation.navigate(ROUTES.TRAVEL_VERIFY_ACCOUNT.getRoute(domain)); }; function BookTravelButton({text, shouldRenderErrorMessageBelowButton = false, setShouldScrollToBottom}: BookTravelButtonProps) { diff --git a/src/libs/Navigation/AppNavigator/ModalStackNavigators/index.tsx b/src/libs/Navigation/AppNavigator/ModalStackNavigators/index.tsx index 0c8b027483e7..1a9836d9e91b 100644 --- a/src/libs/Navigation/AppNavigator/ModalStackNavigators/index.tsx +++ b/src/libs/Navigation/AppNavigator/ModalStackNavigators/index.tsx @@ -191,6 +191,7 @@ const TravelModalStackNavigator = createModalStackNavigator require('../../../../pages/Travel/DomainPermissionInfoPage').default, [SCREENS.TRAVEL.PUBLIC_DOMAIN_ERROR]: () => require('../../../../pages/Travel/PublicDomainErrorPage').default, [SCREENS.TRAVEL.WORKSPACE_ADDRESS]: () => require('../../../../pages/Travel/WorkspaceAddressForTravelPage').default, + [SCREENS.TRAVEL.VERIFY_ACCOUNT]: () => require('../../../../pages/Travel/VerifyAccountPage').default, }); const SplitDetailsModalStackNavigator = createModalStackNavigator({ diff --git a/src/libs/Navigation/linkingConfig/config.ts b/src/libs/Navigation/linkingConfig/config.ts index 7047a5c6bed0..4a44a78115ce 100644 --- a/src/libs/Navigation/linkingConfig/config.ts +++ b/src/libs/Navigation/linkingConfig/config.ts @@ -1476,6 +1476,7 @@ const config: LinkingOptions['config'] = { [SCREENS.TRAVEL.DOMAIN_PERMISSION_INFO]: ROUTES.TRAVEL_DOMAIN_PERMISSION_INFO.route, [SCREENS.TRAVEL.PUBLIC_DOMAIN_ERROR]: ROUTES.TRAVEL_PUBLIC_DOMAIN_ERROR.route, [SCREENS.TRAVEL.WORKSPACE_ADDRESS]: ROUTES.TRAVEL_WORKSPACE_ADDRESS.route, + [SCREENS.TRAVEL.VERIFY_ACCOUNT]: ROUTES.TRAVEL_VERIFY_ACCOUNT.route, }, }, [SCREENS.RIGHT_MODAL.SEARCH_REPORT]: { diff --git a/src/libs/Navigation/types.ts b/src/libs/Navigation/types.ts index b47b5c7f7c5d..f73c86a4e845 100644 --- a/src/libs/Navigation/types.ts +++ b/src/libs/Navigation/types.ts @@ -1861,6 +1861,9 @@ type TravelNavigatorParamList = { [SCREENS.TRAVEL.DOMAIN_SELECTOR]: { backTo?: Routes; }; + [SCREENS.TRAVEL.VERIFY_ACCOUNT]: { + domain: string; + }; }; type ReportsSplitNavigatorParamList = { diff --git a/src/pages/Travel/VerifyAccountPage.tsx b/src/pages/Travel/VerifyAccountPage.tsx new file mode 100644 index 000000000000..fdbd3ccab649 --- /dev/null +++ b/src/pages/Travel/VerifyAccountPage.tsx @@ -0,0 +1,20 @@ +import type {StackScreenProps} from '@react-navigation/stack'; +import React from 'react'; +import type {TravelNavigatorParamList} from '@libs/Navigation/types'; +import VerifyAccountPageBase from '@pages/settings/VerifyAccountPageBase'; +import ROUTES from '@src/ROUTES'; +import type SCREENS from '@src/SCREENS'; + +type VerifyAccountPageProps = StackScreenProps; + +function VerifyAccountPage({route}: VerifyAccountPageProps) { + return ( + + ); +} + +VerifyAccountPage.displayName = 'VerifyAccountPage'; +export default VerifyAccountPage; diff --git a/src/pages/Travel/WorkspaceAddressForTravelPage.tsx b/src/pages/Travel/WorkspaceAddressForTravelPage.tsx index 962ee258fcd5..cc7ad439bc75 100644 --- a/src/pages/Travel/WorkspaceAddressForTravelPage.tsx +++ b/src/pages/Travel/WorkspaceAddressForTravelPage.tsx @@ -33,9 +33,7 @@ function WorkspaceAddressForTravelPage({route}: WorkspaceAddressForTravelPagePro country: values.country, }); if (!isUserValidated) { - Navigation.navigate( - ROUTES.SETTINGS_CONTACT_METHOD_VERIFY_ACCOUNT.getRoute(ROUTES.TRAVEL_MY_TRIPS, ROUTES.TRAVEL_TCS.getRoute(route.params.domain) ?? CONST.TRAVEL.DEFAULT_DOMAIN), - ); + Navigation.navigate(ROUTES.TRAVEL_VERIFY_ACCOUNT.getRoute(route.params.domain)); return; } Navigation.navigate(ROUTES.TRAVEL_TCS.getRoute(route.params.domain ?? CONST.TRAVEL.DEFAULT_DOMAIN), {forceReplace: true});