From d157c6d0ac573682c96d944e6e633d6f5e0ab356 Mon Sep 17 00:00:00 2001 From: mhawryluk Date: Tue, 2 Sep 2025 16:10:12 +0200 Subject: [PATCH 1/3] BookTravelButton - remove verify account's backTo & forwardTo --- src/ROUTES.ts | 4 ++++ src/SCREENS.ts | 1 + src/components/BookTravelButton.tsx | 2 +- .../ModalStackNavigators/index.tsx | 1 + src/libs/Navigation/linkingConfig/config.ts | 1 + src/libs/Navigation/types.ts | 3 +++ src/pages/Travel/VerifyAccountPage.tsx | 19 +++++++++++++++++++ .../Travel/WorkspaceAddressForTravelPage.tsx | 4 +--- 8 files changed, 31 insertions(+), 4 deletions(-) create mode 100644 src/pages/Travel/VerifyAccountPage.tsx diff --git a/src/ROUTES.ts b/src/ROUTES.ts index e2db4020e702..ec9bb9c59377 100644 --- a/src/ROUTES.ts +++ b/src/ROUTES.ts @@ -2038,6 +2038,10 @@ const ROUTES = { route: 'travel/:domain/workspace-address', 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', getRoute: (backTo?: string) => getUrlWithBackToParam(`onboarding`, backTo), diff --git a/src/SCREENS.ts b/src/SCREENS.ts index d7f78e1ddaba..94d51388a090 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 c757fc41e209..0a02538d0584 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 410880b0f148..2036bf84db5a 100644 --- a/src/libs/Navigation/AppNavigator/ModalStackNavigators/index.tsx +++ b/src/libs/Navigation/AppNavigator/ModalStackNavigators/index.tsx @@ -145,6 +145,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 ffe17de0d8be..3f2b4b651486 100644 --- a/src/libs/Navigation/linkingConfig/config.ts +++ b/src/libs/Navigation/linkingConfig/config.ts @@ -1450,6 +1450,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 8467d812cb89..c75f824af19a 100644 --- a/src/libs/Navigation/types.ts +++ b/src/libs/Navigation/types.ts @@ -1833,6 +1833,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..ee39a525d189 --- /dev/null +++ b/src/pages/Travel/VerifyAccountPage.tsx @@ -0,0 +1,19 @@ +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 ( + + ); +} + +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}); From 088e39527f3bd7253da4fd165bc0c4e61303d7a9 Mon Sep 17 00:00:00 2001 From: mhawryluk Date: Thu, 4 Sep 2025 17:34:30 +0200 Subject: [PATCH 2/3] Use constant in the Route --- src/ROUTES.ts | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/src/ROUTES.ts b/src/ROUTES.ts index 57693dfd5fb5..ad874a53f43e 100644 --- a/src/ROUTES.ts +++ b/src/ROUTES.ts @@ -2063,8 +2063,8 @@ const ROUTES = { 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, + route: `travel/:domain/${VERIFY_ACCOUNT}`, + getRoute: (domain: string) => `travel/${domain}/${VERIFY_ACCOUNT}` as const, }, ONBOARDING_ROOT: { route: 'onboarding', From c72e122b3c4570d5456b386c6dc32f4b888f88c4 Mon Sep 17 00:00:00 2001 From: mhawryluk Date: Wed, 10 Sep 2025 11:15:35 +0200 Subject: [PATCH 3/3] Set displayName on VerifyAccountPage component --- src/pages/Travel/VerifyAccountPage.tsx | 1 + 1 file changed, 1 insertion(+) diff --git a/src/pages/Travel/VerifyAccountPage.tsx b/src/pages/Travel/VerifyAccountPage.tsx index ee39a525d189..fdbd3ccab649 100644 --- a/src/pages/Travel/VerifyAccountPage.tsx +++ b/src/pages/Travel/VerifyAccountPage.tsx @@ -16,4 +16,5 @@ function VerifyAccountPage({route}: VerifyAccountPageProps) { ); } +VerifyAccountPage.displayName = 'VerifyAccountPage'; export default VerifyAccountPage;