Skip to content

Commit 758fbb3

Browse files
committed
fix linter
1 parent e63f110 commit 758fbb3

File tree

5 files changed

+598
-559
lines changed

5 files changed

+598
-559
lines changed

src/components/MoneyRequestReportView/MoneyRequestReportView.tsx

Lines changed: 31 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -7,17 +7,23 @@ import MoneyReportHeader from '@components/MoneyReportHeader';
77
import OfflineWithFeedback from '@components/OfflineWithFeedback';
88
import ReportActionsSkeletonView from '@components/ReportActionsSkeletonView';
99
import ReportHeaderSkeletonView from '@components/ReportHeaderSkeletonView';
10+
import useActiveWorkspace from '@hooks/useActiveWorkspace';
1011
import useNetwork from '@hooks/useNetwork';
1112
import usePaginatedReportActions from '@hooks/usePaginatedReportActions';
1213
import useThemeStyles from '@hooks/useThemeStyles';
1314
import {removeReport} from '@libs/actions/Report';
1415
import getNonEmptyStringOnyxID from '@libs/getNonEmptyStringOnyxID';
16+
import Log from '@libs/Log';
17+
import navigationRef from '@libs/Navigation/navigationRef';
1518
import {isMoneyRequestAction} from '@libs/ReportActionsUtils';
1619
import {canEditReportAction, getReportOfflinePendingActionAndErrors} from '@libs/ReportUtils';
20+
import {buildCannedSearchQuery} from '@libs/SearchQueryUtils';
1721
import Navigation from '@navigation/Navigation';
1822
import ReportFooter from '@pages/home/report/ReportFooter';
23+
import NAVIGATORS from '@src/NAVIGATORS';
1924
import ONYXKEYS from '@src/ONYXKEYS';
2025
import type {Route} from '@src/ROUTES';
26+
import ROUTES from '@src/ROUTES';
2127
import type {ThemeStyles} from '@src/styles';
2228
import type * as OnyxTypes from '@src/types/onyx';
2329
import MoneyRequestReportActionsList from './MoneyRequestReportActionsList';
@@ -39,6 +45,24 @@ type MoneyRequestReportViewProps = {
3945
backToRoute: Route | undefined;
4046
};
4147

48+
function goBackFromSearchMoneyRequest(policyID: string | undefined) {
49+
const rootState = navigationRef.getRootState();
50+
const lastRoute = rootState.routes.at(-1);
51+
52+
if (lastRoute?.name !== NAVIGATORS.SEARCH_FULLSCREEN_NAVIGATOR) {
53+
Log.hmmm('[goBackFromSearchMoneyRequest()] goBackFromSearchMoneyRequest was called from a different navigator than SearchFullscreenNavigator.');
54+
return;
55+
}
56+
57+
if (rootState.routes.length > 1) {
58+
Navigation.goBack();
59+
return;
60+
}
61+
62+
const query = buildCannedSearchQuery({policyID});
63+
Navigation.goBack(ROUTES.SEARCH_ROOT.getRoute({query}));
64+
}
65+
4266
function InitialLoadingSkeleton({styles}: {styles: ThemeStyles}) {
4367
return (
4468
<View style={[styles.flex1]}>
@@ -60,6 +84,7 @@ function getParentReportAction(parentReportActions: OnyxEntry<OnyxTypes.ReportAc
6084
function MoneyRequestReportView({report, policy, reportMetadata, shouldDisplayReportFooter, backToRoute}: MoneyRequestReportViewProps) {
6185
const styles = useThemeStyles();
6286
const {isOffline} = useNetwork();
87+
const {activeWorkspaceID} = useActiveWorkspace();
6388

6489
const reportID = report?.reportID;
6590
const [isLoadingApp] = useOnyx(ONYXKEYS.IS_LOADING_APP);
@@ -77,9 +102,9 @@ function MoneyRequestReportView({report, policy, reportMetadata, shouldDisplayRe
77102
const isLoadingInitialReportActions = reportMetadata?.isLoadingInitialReportActions;
78103

79104
const dismissReportCreationError = useCallback(() => {
80-
Navigation.goBack(backToRoute);
105+
goBackFromSearchMoneyRequest(activeWorkspaceID);
81106
removeReport(reportID);
82-
}, [backToRoute, reportID]);
107+
}, [activeWorkspaceID, reportID]);
83108

84109
if (isLoadingInitialReportActions && reportActions.length === 0 && !isOffline) {
85110
return <InitialLoadingSkeleton styles={styles} />;
@@ -113,6 +138,10 @@ function MoneyRequestReportView({report, policy, reportMetadata, shouldDisplayRe
113138
transactionThreadReportID={undefined}
114139
shouldDisplayBackButton
115140
onBackButtonPress={() => {
141+
if (!backToRoute) {
142+
goBackFromSearchMoneyRequest(activeWorkspaceID);
143+
return;
144+
}
116145
Navigation.goBack(backToRoute);
117146
}}
118147
/>

src/libs/DebugUtils.ts

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -627,6 +627,7 @@ function validateReportDraftProperty(key: keyof Report | keyof ReportNameValuePa
627627
preview: CONST.RED_BRICK_ROAD_PENDING_ACTION,
628628
welcomeMessage: CONST.RED_BRICK_ROAD_PENDING_ACTION,
629629
errors: CONST.RED_BRICK_ROAD_PENDING_ACTION,
630+
createReport: CONST.RED_BRICK_ROAD_PENDING_ACTION,
630631
});
631632
}
632633
}

0 commit comments

Comments
 (0)