Skip to content

Commit b42e0c5

Browse files
puneetlathOSBotify
authored andcommitted
Merge pull request #56381 from Expensify/revert-55015-fix/54058
Revert "fix: navigate to parent report on delete track expense" (cherry picked from commit 1ab0695) (CP triggered by roryabraham)
1 parent db05963 commit b42e0c5

File tree

4 files changed

+5
-46
lines changed

4 files changed

+5
-46
lines changed

src/libs/Navigation/Navigation.ts

+1-23
Original file line numberDiff line numberDiff line change
@@ -11,7 +11,7 @@ import NAVIGATORS from '@src/NAVIGATORS';
1111
import ONYXKEYS from '@src/ONYXKEYS';
1212
import type {HybridAppRoute, Route} from '@src/ROUTES';
1313
import ROUTES, {HYBRID_APP_ROUTES} from '@src/ROUTES';
14-
import SCREENS, {PROTECTED_SCREENS} from '@src/SCREENS';
14+
import {PROTECTED_SCREENS} from '@src/SCREENS';
1515
import type {Screen} from '@src/SCREENS';
1616
import type {Report} from '@src/types/onyx';
1717
import originalCloseRHPFlow from './closeRHPFlow';
@@ -428,13 +428,6 @@ function getTopMostCentralPaneRouteFromRootState() {
428428
return getTopmostCentralPaneRoute(navigationRef.getRootState() as State<RootStackParamList>);
429429
}
430430

431-
function getReportRouteByID(reportID?: string) {
432-
if (!reportID) {
433-
return null;
434-
}
435-
return navigationRef.getRootState().routes.find((r) => r.name === SCREENS.REPORT && !!r.params && 'reportID' in r.params && r.params.reportID === reportID);
436-
}
437-
438431
function removeScreenFromNavigationState(screen: Screen) {
439432
isNavigationReady().then(() => {
440433
navigationRef.dispatch((state) => {
@@ -449,19 +442,6 @@ function removeScreenFromNavigationState(screen: Screen) {
449442
});
450443
}
451444

452-
function removeScreenFromNavigationStateByKey(key: string) {
453-
const state = navigationRef.getRootState();
454-
const routes = state.routes.filter((item) => item.key !== key);
455-
456-
navigationRef.current?.dispatch(() => {
457-
return CommonActions.reset({
458-
...state,
459-
routes,
460-
index: routes.length < state.routes.length ? state.index - 1 : state.index,
461-
});
462-
});
463-
}
464-
465445
export default {
466446
setShouldPopAllStateOnUP,
467447
navigate,
@@ -487,8 +467,6 @@ export default {
487467
setNavigationActionToMicrotaskQueue,
488468
getTopMostCentralPaneRouteFromRootState,
489469
removeScreenFromNavigationState,
490-
getReportRouteByID,
491-
removeScreenFromNavigationStateByKey,
492470
};
493471

494472
export {navigationRef};

src/libs/ReportUtils.ts

+2-9
Original file line numberDiff line numberDiff line change
@@ -4474,7 +4474,7 @@ function goBackToDetailsPage(report: OnyxEntry<Report>, backTo?: string) {
44744474
}
44754475
}
44764476

4477-
function navigateBackOnDeleteTransaction(backRoute: Route | undefined, isFromRHP?: boolean, reportIDToRemove?: string) {
4477+
function navigateBackOnDeleteTransaction(backRoute: Route | undefined, isFromRHP?: boolean) {
44784478
if (!backRoute) {
44794479
return;
44804480
}
@@ -4484,14 +4484,7 @@ function navigateBackOnDeleteTransaction(backRoute: Route | undefined, isFromRHP
44844484
return;
44854485
}
44864486
if (isFromRHP) {
4487-
const report = allReports?.[`${ONYXKEYS.COLLECTION.REPORT}${reportIDToRemove}`];
4488-
if (report && isTrackExpenseReport(report)) {
4489-
const trackReportRoute = Navigation.getReportRouteByID(reportIDToRemove);
4490-
if (trackReportRoute?.key) {
4491-
Navigation.removeScreenFromNavigationStateByKey(trackReportRoute.key);
4492-
}
4493-
}
4494-
Navigation.isNavigationReady().then(() => Navigation.dismissModal());
4487+
Navigation.dismissModal();
44954488
}
44964489
Navigation.isNavigationReady().then(() => {
44974490
Navigation.goBack(backRoute);

src/pages/ReportDetailsPage.tsx

+2-2
Original file line numberDiff line numberDiff line change
@@ -969,9 +969,9 @@ function ReportDetailsPage({policies, report, route, reportMetadata}: ReportDeta
969969
Navigation.dismissModal();
970970
} else {
971971
setDeleteTransactionNavigateBackUrl(urlToNavigateBack);
972-
navigateBackOnDeleteTransaction(urlToNavigateBack as Route, true, report.reportID);
972+
navigateBackOnDeleteTransaction(urlToNavigateBack as Route, true);
973973
}
974-
}, [iouTransactionID, requestParentReportAction, isSingleTransactionView, isTransactionDeleted, moneyRequestReport?.reportID, report.reportID]);
974+
}, [iouTransactionID, requestParentReportAction, isSingleTransactionView, isTransactionDeleted, moneyRequestReport?.reportID]);
975975

976976
const mentionReportContextValue = useMemo(() => ({currentReportID: report.reportID, exactlyMatch: true}), [report.reportID]);
977977

tests/actions/IOUTest.ts

-12
Original file line numberDiff line numberDiff line change
@@ -77,19 +77,8 @@ jest.mock('@src/libs/Navigation/Navigation', () => ({
7777
goBack: jest.fn(),
7878
getTopmostReportId: jest.fn(() => topMostReportID),
7979
setNavigationActionToMicrotaskQueue: jest.fn(),
80-
removeScreenByKey: jest.fn(),
81-
isNavigationReady: jest.fn(() => Promise.resolve()),
82-
getPreviousTrackReport: jest.fn(),
8380
}));
8481

85-
jest.mock('@src/libs/Navigation/navigationRef', () => ({
86-
getRootState: () => ({
87-
routes: [],
88-
}),
89-
}));
90-
91-
jest.mock('@react-navigation/native');
92-
9382
jest.mock('@src/libs/actions/Report', () => {
9483
// eslint-disable-next-line @typescript-eslint/no-unsafe-assignment
9584
const originalModule = jest.requireActual('@src/libs/actions/Report');
@@ -99,7 +88,6 @@ jest.mock('@src/libs/actions/Report', () => {
9988
notifyNewAction: jest.fn(),
10089
};
10190
});
102-
10391
jest.mock('@src/libs/Navigation/isSearchTopmostCentralPane', () => jest.fn());
10492

10593
const CARLOS_EMAIL = '[email protected]';

0 commit comments

Comments
 (0)