Skip to content

Commit 1d16d77

Browse files
committed
fix: remove exitToIssueNew param
1 parent 46244eb commit 1d16d77

7 files changed

Lines changed: 17 additions & 80 deletions

File tree

src/ROUTES.ts

Lines changed: 4 additions & 29 deletions
Original file line numberDiff line numberDiff line change
@@ -2712,38 +2712,16 @@ const ROUTES = {
27122712
},
27132713
WORKSPACE_EXPENSIFY_CARD_SELECT_FEED: {
27142714
route: 'workspaces/:policyID/expensify-card/select-feed',
2715-
2716-
getRoute: (policyID: string, backTo?: string, exitToIssueNew?: boolean) => {
2717-
// eslint-disable-next-line no-restricted-syntax -- Legacy route generation
2718-
const base = getUrlWithBackToParam(`workspaces/${policyID}/expensify-card/select-feed`, backTo);
2719-
if (!exitToIssueNew) {
2720-
return base;
2721-
}
2722-
const separator = base.includes('?') ? '&' : '?';
2723-
return `${base}${separator}exitToIssueNew=true` as const;
2724-
},
2715+
// eslint-disable-next-line no-restricted-syntax -- Legacy route generation
2716+
getRoute: (policyID: string, backTo?: string) => getUrlWithBackToParam(`workspaces/${policyID}/expensify-card/select-feed`, backTo),
27252717
},
27262718
WORKSPACE_EXPENSIFY_CARD_ADD_WORK_EMAIL: {
27272719
route: 'workspaces/:policyID/expensify-card/:fundID/work-email',
2728-
getRoute: (policyID: string, fundID: number, exitToIssueNew?: boolean) => {
2729-
const base = `workspaces/${policyID}/expensify-card/${encodeURIComponent(fundID)}/work-email` as const;
2730-
if (!exitToIssueNew) {
2731-
return base;
2732-
}
2733-
const separator = base.includes('?') ? '&' : '?';
2734-
return `${base}${separator}exitToIssueNew=true` as const;
2735-
},
2720+
getRoute: (policyID: string, fundID: number) => `workspaces/${policyID}/expensify-card/${encodeURIComponent(fundID)}/work-email` as const,
27362721
},
27372722
WORKSPACE_EXPENSIFY_CARD_VERIFY_WORK_EMAIL: {
27382723
route: 'workspaces/:policyID/expensify-card/:fundID/verify-work-email',
2739-
getRoute: (policyID: string, fundID: number, exitToIssueNew?: boolean) => {
2740-
const base = `workspaces/${policyID}/expensify-card/${encodeURIComponent(fundID)}/verify-work-email` as const;
2741-
if (!exitToIssueNew) {
2742-
return base;
2743-
}
2744-
const separator = base.includes('?') ? '&' : '?';
2745-
return `${base}${separator}exitToIssueNew=true` as const;
2746-
},
2724+
getRoute: (policyID: string, fundID: number) => `workspaces/${policyID}/expensify-card/${encodeURIComponent(fundID)}/verify-work-email` as const,
27472725
},
27482726
WORKSPACE_EXPENSIFY_CARD_SETTINGS_FREQUENCY: {
27492727
route: 'workspaces/:policyID/expensify-card/settings/frequency',
@@ -4158,9 +4136,6 @@ const ROUTES = {
41584136
*/
41594137
const SHARED_ROUTE_PARAMS: Partial<Record<Screen, string[]>> = {
41604138
[SCREENS.WORKSPACE.INITIAL]: ['backTo'],
4161-
[SCREENS.WORKSPACE.EXPENSIFY_CARD_SELECT_FEED]: ['exitToIssueNew'],
4162-
[SCREENS.WORKSPACE.EXPENSIFY_CARD_ADD_WORK_EMAIL]: ['exitToIssueNew'],
4163-
[SCREENS.WORKSPACE.EXPENSIFY_CARD_VERIFY_WORK_EMAIL]: ['exitToIssueNew'],
41644139
} as const;
41654140

41664141
export {PUBLIC_SCREENS_ROUTES, SHARED_ROUTE_PARAMS, VERIFY_ACCOUNT, DYNAMIC_ROUTES};

src/libs/Navigation/linkingConfig/config.ts

Lines changed: 0 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -850,21 +850,12 @@ const config: LinkingOptions<RootNavigatorParamList>['config'] = {
850850
},
851851
[SCREENS.WORKSPACE.EXPENSIFY_CARD_SELECT_FEED]: {
852852
path: ROUTES.WORKSPACE_EXPENSIFY_CARD_SELECT_FEED.route,
853-
parse: {
854-
exitToIssueNew: (value?: string) => value,
855-
},
856853
},
857854
[SCREENS.WORKSPACE.EXPENSIFY_CARD_ADD_WORK_EMAIL]: {
858855
path: ROUTES.WORKSPACE_EXPENSIFY_CARD_ADD_WORK_EMAIL.route,
859-
parse: {
860-
exitToIssueNew: (value?: string) => value,
861-
},
862856
},
863857
[SCREENS.WORKSPACE.EXPENSIFY_CARD_VERIFY_WORK_EMAIL]: {
864858
path: ROUTES.WORKSPACE_EXPENSIFY_CARD_VERIFY_WORK_EMAIL.route,
865-
parse: {
866-
exitToIssueNew: (value?: string) => value,
867-
},
868859
},
869860
[SCREENS.WORKSPACE.TRAVEL_SETTINGS_ACCOUNT]: {
870861
path: ROUTES.WORKSPACE_TRAVEL_SETTINGS_ACCOUNT.route,

src/libs/Navigation/types.ts

Lines changed: 0 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1291,17 +1291,14 @@ type SettingsNavigatorParamList = {
12911291
};
12921292
[SCREENS.WORKSPACE.EXPENSIFY_CARD_SELECT_FEED]: {
12931293
policyID: string;
1294-
exitToIssueNew?: string;
12951294
};
12961295
[SCREENS.WORKSPACE.EXPENSIFY_CARD_ADD_WORK_EMAIL]: {
12971296
policyID: string;
12981297
fundID: number;
1299-
exitToIssueNew?: string;
13001298
};
13011299
[SCREENS.WORKSPACE.EXPENSIFY_CARD_VERIFY_WORK_EMAIL]: {
13021300
policyID: string;
13031301
fundID: number;
1304-
exitToIssueNew?: string;
13051302
};
13061303
[SCREENS.WORKSPACE.TRAVEL_SETTINGS_ACCOUNT]: {
13071304
policyID: string;

src/pages/workspace/expensifyCard/WorkspaceExpensifyCardAddWorkEmailPage.tsx

Lines changed: 5 additions & 12 deletions
Original file line numberDiff line numberDiff line change
@@ -14,7 +14,7 @@ import useNetwork from '@hooks/useNetwork';
1414
import useOnyx from '@hooks/useOnyx';
1515
import usePrimaryContactMethod from '@hooks/usePrimaryContactMethod';
1616
import useThemeStyles from '@hooks/useThemeStyles';
17-
import {setIssueNewCardStepAndData, updateSelectedExpensifyCardFeed} from '@libs/actions/Card';
17+
import {updateSelectedExpensifyCardFeed} from '@libs/actions/Card';
1818
import {setContactMethodAsDefault} from '@libs/actions/User';
1919
import {addErrorMessage, getMicroSecondOnyxErrorWithMessage} from '@libs/ErrorUtils';
2020
import Log from '@libs/Log';
@@ -36,10 +36,8 @@ import type {Errors} from '@src/types/onyx/OnyxCommon';
3636

3737
type WorkspaceExpensifyCardAddWorkEmailPageProps = PlatformStackScreenProps<SettingsNavigatorParamList, typeof SCREENS.WORKSPACE.EXPENSIFY_CARD_ADD_WORK_EMAIL>;
3838

39-
const DEFAULT_ISSUE_NEW = 'true';
4039
function WorkspaceExpensifyCardAddWorkEmailPage({route}: WorkspaceExpensifyCardAddWorkEmailPageProps) {
41-
const {policyID, fundID, exitToIssueNew: exitToIssueNewParam} = route.params;
42-
const exitToIssueNew = exitToIssueNewParam === DEFAULT_ISSUE_NEW;
40+
const {policyID, fundID} = route.params;
4341
const primaryContactMethod = usePrimaryContactMethod();
4442
const [loginList] = useOnyx(ONYXKEYS.LOGIN_LIST);
4543
const currentUserPersonalDetails = useCurrentUserPersonalDetails();
@@ -63,19 +61,14 @@ function WorkspaceExpensifyCardAddWorkEmailPage({route}: WorkspaceExpensifyCardA
6361
if (existingLoginKey) {
6462
if (!isExistingLoginValidated) {
6563
setEmail(submittedEmail);
66-
Navigation.navigate(ROUTES.WORKSPACE_EXPENSIFY_CARD_VERIFY_WORK_EMAIL.getRoute(policyID, fundID, exitToIssueNew));
64+
Navigation.navigate(ROUTES.WORKSPACE_EXPENSIFY_CARD_VERIFY_WORK_EMAIL.getRoute(policyID, fundID));
6765
return;
6866
}
6967
setContactMethodAsDefault(currentUserPersonalDetails, allPolicies, existingLoginKey, formatPhoneNumber, undefined, true);
7068
setLoading(true);
7169
linkCardFeedToPolicy(Number(fundID), policyID, CONST.COMPANY_CARD.LINK_FEED_TYPE.EXPENSIFY_CARD)
7270
.then(() => {
7371
updateSelectedExpensifyCardFeed(Number(fundID), policyID);
74-
if (exitToIssueNew) {
75-
setIssueNewCardStepAndData({policyID, isChangeAssigneeDisabled: false});
76-
Navigation.navigate(ROUTES.WORKSPACE_EXPENSIFY_CARD_ISSUE_NEW.getRoute(policyID, ROUTES.WORKSPACE_EXPENSIFY_CARD.getRoute(policyID)));
77-
return;
78-
}
7972
Navigation.closeRHPFlow();
8073
})
8174
.catch((error: TranslationPaths) => {
@@ -96,8 +89,8 @@ function WorkspaceExpensifyCardAddWorkEmailPage({route}: WorkspaceExpensifyCardA
9689
if (!email || !primaryContactMethod || primaryContactMethod.toLowerCase() !== email.toLowerCase() || isWorkEmailValidated) {
9790
return;
9891
}
99-
Navigation.navigate(ROUTES.WORKSPACE_EXPENSIFY_CARD_VERIFY_WORK_EMAIL.getRoute(policyID, fundID, exitToIssueNew));
100-
}, [primaryContactMethod, email, policyID, fundID, isWorkEmailValidated, exitToIssueNew]);
92+
Navigation.navigate(ROUTES.WORKSPACE_EXPENSIFY_CARD_VERIFY_WORK_EMAIL.getRoute(policyID, fundID));
93+
}, [primaryContactMethod, email, policyID, fundID, isWorkEmailValidated]);
10194

10295
const validate = (values: FormOnyxValues<typeof ONYXKEYS.FORMS.ADD_WORK_EMAIL_FORM>): Errors => {
10396
const errors = {};

src/pages/workspace/expensifyCard/WorkspaceExpensifyCardBankAccounts.tsx

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -121,7 +121,7 @@ function WorkspaceExpensifyCardBankAccounts({route}: WorkspaceExpensifyCardBankA
121121
}
122122
if (hasAnyAdminExpensifyCardFeed) {
123123
Navigation.dismissModal();
124-
Navigation.navigate(ROUTES.WORKSPACE_EXPENSIFY_CARD_SELECT_FEED.getRoute(policyID, undefined, true));
124+
Navigation.navigate(ROUTES.WORKSPACE_EXPENSIFY_CARD_SELECT_FEED.getRoute(policyID, undefined));
125125
return;
126126
}
127127
setIssueNewCardStepAndData({policyID, isChangeAssigneeDisabled: false});

src/pages/workspace/expensifyCard/WorkspaceExpensifyCardFeedSelectorPage.tsx

Lines changed: 4 additions & 15 deletions
Original file line numberDiff line numberDiff line change
@@ -45,8 +45,7 @@ type ExpensifyFeedListItem = ListItem & {
4545
type WorkspaceExpensifyCardFeedSelectorPageProps = PlatformStackScreenProps<SettingsNavigatorParamList, typeof SCREENS.WORKSPACE.EXPENSIFY_CARD_SELECT_FEED>;
4646

4747
function WorkspaceExpensifyCardFeedSelectorPage({route}: WorkspaceExpensifyCardFeedSelectorPageProps) {
48-
const {policyID, exitToIssueNew: exitToIssueNewParam} = route.params;
49-
const exitToIssueNew = exitToIssueNewParam === 'true';
48+
const {policyID} = route.params;
5049
const {translate} = useLocalize();
5150
const {isOffline} = useNetwork();
5251
const styles = useThemeStyles();
@@ -98,7 +97,7 @@ function WorkspaceExpensifyCardFeedSelectorPage({route}: WorkspaceExpensifyCardF
9897
}
9998
updateSelectedExpensifyCardFeed(issueCardFundID, policyID);
10099
setIssueNewCardStepAndData({policyID, isChangeAssigneeDisabled: false});
101-
Navigation.navigate(ROUTES.WORKSPACE_EXPENSIFY_CARD_ISSUE_NEW.getRoute(policyID, exitToIssueNew ? ROUTES.WORKSPACE_EXPENSIFY_CARD.getRoute(policyID) : Navigation.getActiveRoute()));
100+
Navigation.navigate(ROUTES.WORKSPACE_EXPENSIFY_CARD_ISSUE_NEW.getRoute(policyID, Navigation.getActiveRoute()));
102101
};
103102

104103
/** When there is no primary feed for this workspace, mirror empty-state flow: bank account / new program setup (same as WORKSPACE_EXPENSIFY_CARD_BANK_ACCOUNT). */
@@ -141,25 +140,20 @@ function WorkspaceExpensifyCardFeedSelectorPage({route}: WorkspaceExpensifyCardF
141140
const selectOtherFeed = (feed: ExpensifyFeedListItem) => {
142141
const isUserFromPublicDomain = isEmailPublicDomain(primaryContactMethod);
143142
if (!isUserValidated || isUserFromPublicDomain) {
144-
Navigation.navigate(ROUTES.WORKSPACE_EXPENSIFY_CARD_ADD_WORK_EMAIL.getRoute(policyID, feed.value, exitToIssueNew));
143+
Navigation.navigate(ROUTES.WORKSPACE_EXPENSIFY_CARD_ADD_WORK_EMAIL.getRoute(policyID, feed.value));
145144
return;
146145
}
147146

148147
const primaryLoginKey = primaryContactMethod ? Object.keys(loginList ?? {}).find((login) => login.toLowerCase() === primaryContactMethod.toLowerCase()) : undefined;
149148
const isPrimaryContactValidated = primaryLoginKey ? !!loginList?.[primaryLoginKey]?.validatedDate : !primaryContactMethod;
150149
if (!isPrimaryContactValidated) {
151-
Navigation.navigate(ROUTES.WORKSPACE_EXPENSIFY_CARD_VERIFY_WORK_EMAIL.getRoute(policyID, feed.value, exitToIssueNew));
150+
Navigation.navigate(ROUTES.WORKSPACE_EXPENSIFY_CARD_VERIFY_WORK_EMAIL.getRoute(policyID, feed.value));
152151
return;
153152
}
154153

155154
linkCardFeedToPolicy(feed.value, policyID, CONST.COMPANY_CARD.LINK_FEED_TYPE.EXPENSIFY_CARD)
156155
.then(() => {
157156
updateSelectedExpensifyCardFeed(feed.value, policyID);
158-
if (exitToIssueNew) {
159-
setIssueNewCardStepAndData({policyID, isChangeAssigneeDisabled: false});
160-
Navigation.navigate(ROUTES.WORKSPACE_EXPENSIFY_CARD_ISSUE_NEW.getRoute(policyID, ROUTES.WORKSPACE_EXPENSIFY_CARD.getRoute(policyID)));
161-
return;
162-
}
163157
goBack();
164158
})
165159
.catch((error: TranslationPaths) => {
@@ -172,11 +166,6 @@ function WorkspaceExpensifyCardFeedSelectorPage({route}: WorkspaceExpensifyCardF
172166

173167
const selectFeed = (feed: ExpensifyFeedListItem) => {
174168
updateSelectedExpensifyCardFeed(feed.value, policyID);
175-
if (exitToIssueNew) {
176-
setIssueNewCardStepAndData({policyID, isChangeAssigneeDisabled: false});
177-
Navigation.navigate(ROUTES.WORKSPACE_EXPENSIFY_CARD_ISSUE_NEW.getRoute(policyID, ROUTES.WORKSPACE_EXPENSIFY_CARD.getRoute(policyID)));
178-
return;
179-
}
180169
goBack();
181170
};
182171

src/pages/workspace/expensifyCard/WorkspaceExpensifyCardVerifyWorkAccountPage.tsx

Lines changed: 3 additions & 11 deletions
Original file line numberDiff line numberDiff line change
@@ -3,7 +3,7 @@ import ValidateCodeActionContent from '@components/ValidateCodeActionModal/Valid
33
import useLocalize from '@hooks/useLocalize';
44
import useOnyx from '@hooks/useOnyx';
55
import usePrimaryContactMethod from '@hooks/usePrimaryContactMethod';
6-
import {setIssueNewCardStepAndData, updateSelectedExpensifyCardFeed} from '@libs/actions/Card';
6+
import {updateSelectedExpensifyCardFeed} from '@libs/actions/Card';
77
import {getMicroSecondOnyxErrorWithTranslationKey} from '@libs/ErrorUtils';
88
import Navigation from '@navigation/Navigation';
99
import type {PlatformStackScreenProps} from '@navigation/PlatformStackNavigation/types';
@@ -14,16 +14,13 @@ import {resendValidateCode} from '@userActions/User';
1414
import CONST from '@src/CONST';
1515
import type {TranslationPaths} from '@src/languages/types';
1616
import ONYXKEYS from '@src/ONYXKEYS';
17-
import ROUTES from '@src/ROUTES';
1817
import type SCREENS from '@src/SCREENS';
1918
import type {Errors} from '@src/types/onyx/OnyxCommon';
2019

2120
type WorkspaceExpensifyCardVerifyWorkAccountPageProps = PlatformStackScreenProps<SettingsNavigatorParamList, typeof SCREENS.WORKSPACE.EXPENSIFY_CARD_VERIFY_WORK_EMAIL>;
2221

23-
const DEFAULT_ISSUE_NEW = 'true';
2422
function WorkspaceExpensifyCardVerifyWorkAccountPage({route}: WorkspaceExpensifyCardVerifyWorkAccountPageProps) {
25-
const {policyID, fundID, exitToIssueNew: exitToIssueNewParam} = route.params;
26-
const exitToIssueNew = exitToIssueNewParam === DEFAULT_ISSUE_NEW;
23+
const {policyID, fundID} = route.params;
2724
const {translate} = useLocalize();
2825
const [loginList] = useOnyx(ONYXKEYS.LOGIN_LIST);
2926
const workEmail = usePrimaryContactMethod();
@@ -54,19 +51,14 @@ function WorkspaceExpensifyCardVerifyWorkAccountPage({route}: WorkspaceExpensify
5451
linkCardFeedToPolicy(Number(fundID), policyID, CONST.COMPANY_CARD.LINK_FEED_TYPE.EXPENSIFY_CARD)
5552
.then(() => {
5653
updateSelectedExpensifyCardFeed(Number(fundID), policyID);
57-
if (exitToIssueNew) {
58-
setIssueNewCardStepAndData({policyID, isChangeAssigneeDisabled: false});
59-
Navigation.navigate(ROUTES.WORKSPACE_EXPENSIFY_CARD_ISSUE_NEW.getRoute(policyID, ROUTES.WORKSPACE_EXPENSIFY_CARD.getRoute(policyID)));
60-
return;
61-
}
6254
Navigation.closeRHPFlow();
6355
})
6456
.catch((error: TranslationPaths) => {
6557
setFeedWithError({
6658
error: getMicroSecondOnyxErrorWithTranslationKey(error),
6759
});
6860
});
69-
}, [fundID, isWorkEmailValidated, policyID, exitToIssueNew]);
61+
}, [fundID, isWorkEmailValidated, policyID]);
7062

7163
return (
7264
<ValidateCodeActionContent

0 commit comments

Comments
 (0)