Skip to content

Commit 9824a80

Browse files
authored
Merge pull request Expensify#66728 from cretadn22/cretadn22-make-getReportDetails-to-pure-func
Remove getReportDetails function
2 parents 2f3f413 + 01c2203 commit 9824a80

3 files changed

Lines changed: 15 additions & 16 deletions

File tree

src/libs/OptionsListUtils.ts

Lines changed: 5 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -31,6 +31,7 @@ import type {
3131
} from '@src/types/onyx';
3232
import type {Attendee, Participant} from '@src/types/onyx/IOU';
3333
import type {Icon, PendingAction} from '@src/types/onyx/OnyxCommon';
34+
import type {OriginalMessageMovedTransaction} from '@src/types/onyx/OriginalMessage';
3435
import {isEmptyObject} from '@src/types/utils/EmptyObject';
3536
import Timing from './actions/Timing';
3637
import {getEnabledCategoriesCount} from './CategoryUtils';
@@ -787,7 +788,10 @@ function getLastMessageTextForReport(report: OnyxEntry<Report>, lastActorDetails
787788
const properSchemaForModifiedExpenseMessage = ModifiedExpenseMessage.getForReportAction({reportOrID: report?.reportID, reportAction: lastReportAction});
788789
lastMessageTextFromReport = formatReportLastMessageText(properSchemaForModifiedExpenseMessage, true);
789790
} else if (isMovedTransactionAction(lastReportAction)) {
790-
lastMessageTextFromReport = getMovedTransactionMessage(lastReportAction);
791+
const movedTransactionOriginalMessage = getOriginalMessage(lastReportAction) ?? {};
792+
const {toReportID} = movedTransactionOriginalMessage as OriginalMessageMovedTransaction;
793+
const toReport = allReports?.[`${ONYXKEYS.COLLECTION.REPORT}${toReportID}`];
794+
lastMessageTextFromReport = getMovedTransactionMessage(toReport);
791795
} else if (isTaskAction(lastReportAction)) {
792796
lastMessageTextFromReport = formatReportLastMessageText(getTaskReportActionMessage(lastReportAction).text);
793797
} else if (isCreatedTaskReportAction(lastReportAction)) {

src/libs/ReportUtils.ts

Lines changed: 4 additions & 13 deletions
Original file line numberDiff line numberDiff line change
@@ -11,7 +11,7 @@ import lodashMaxBy from 'lodash/maxBy';
1111
import type {OnyxCollection, OnyxEntry, OnyxUpdate} from 'react-native-onyx';
1212
import Onyx from 'react-native-onyx';
1313
import type {SvgProps} from 'react-native-svg';
14-
import type {OriginalMessageChangePolicy, OriginalMessageExportIntegration, OriginalMessageModifiedExpense, OriginalMessageMovedTransaction} from 'src/types/onyx/OriginalMessage';
14+
import type {OriginalMessageChangePolicy, OriginalMessageExportIntegration, OriginalMessageModifiedExpense} from 'src/types/onyx/OriginalMessage';
1515
import type {SetRequired, TupleToUnion, ValueOf} from 'type-fest';
1616
import {FallbackAvatar, IntacctSquare, NetSuiteSquare, QBDSquare, QBOSquare, XeroSquare} from '@components/Icon/Expensicons';
1717
import * as defaultGroupAvatars from '@components/Icon/GroupDefaultAvatars';
@@ -6085,18 +6085,9 @@ function getDeletedTransactionMessage(action: ReportAction) {
60856085
return message;
60866086
}
60876087

6088-
function getReportDetails(reportID: string): {reportName: string; reportUrl: string} {
6089-
const report = allReports?.[`${ONYXKEYS.COLLECTION.REPORT}${reportID}`];
6090-
return {
6091-
reportName: getReportName(report) ?? report?.reportName ?? '',
6092-
reportUrl: `${environmentURL}/r/${reportID}`,
6093-
};
6094-
}
6095-
6096-
function getMovedTransactionMessage(action: ReportAction) {
6097-
const movedTransactionOriginalMessage = getOriginalMessage(action as ReportAction<typeof CONST.REPORT.ACTIONS.TYPE.MOVED_TRANSACTION>) ?? {};
6098-
const {toReportID} = movedTransactionOriginalMessage as OriginalMessageMovedTransaction;
6099-
const {reportName, reportUrl} = getReportDetails(toReportID);
6088+
function getMovedTransactionMessage(report: OnyxEntry<Report>) {
6089+
const reportName = getReportName(report) ?? report?.reportName ?? '';
6090+
const reportUrl = `${environmentURL}/r/${report?.reportID}`;
61006091
const message = translateLocal('iou.movedTransaction', {
61016092
reportUrl,
61026093
reportName,

src/pages/home/report/PureReportActionItem.tsx

Lines changed: 6 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -164,10 +164,11 @@ import {isAnonymousUser, signOutAndRedirectToSignIn} from '@userActions/Session'
164164
import {isBlockedFromConcierge} from '@userActions/User';
165165
import type {IOUAction} from '@src/CONST';
166166
import CONST from '@src/CONST';
167+
import ONYXKEYS from '@src/ONYXKEYS';
167168
import ROUTES from '@src/ROUTES';
168169
import type * as OnyxTypes from '@src/types/onyx';
169170
import type {Errors} from '@src/types/onyx/OnyxCommon';
170-
import type {JoinWorkspaceResolution} from '@src/types/onyx/OriginalMessage';
171+
import type {JoinWorkspaceResolution, OriginalMessageMovedTransaction} from '@src/types/onyx/OriginalMessage';
171172
import type {SearchReport} from '@src/types/onyx/SearchResults';
172173
import {isEmptyObject} from '@src/types/utils/EmptyObject';
173174
import {RestrictedReadOnlyContextMenuActions} from './ContextMenu/ContextMenuActions';
@@ -1072,9 +1073,12 @@ function PureReportActionItem({
10721073
} else if (action.actionName === CONST.REPORT.ACTIONS.TYPE.DELETED_TRANSACTION) {
10731074
children = <ReportActionItemBasicMessage message={getDeletedTransactionMessage(action)} />;
10741075
} else if (action.actionName === CONST.REPORT.ACTIONS.TYPE.MOVED_TRANSACTION) {
1076+
const movedTransactionOriginalMessage = getOriginalMessage(action as OnyxTypes.ReportAction<typeof CONST.REPORT.ACTIONS.TYPE.MOVED_TRANSACTION>) ?? {};
1077+
const {toReportID} = movedTransactionOriginalMessage as OriginalMessageMovedTransaction;
1078+
const toReport = allReports?.[`${ONYXKEYS.COLLECTION.REPORT}${toReportID}`];
10751079
children = (
10761080
<ReportActionItemBasicMessage message="">
1077-
<RenderHTML html={`<comment><muted-text>${getMovedTransactionMessage(action)}</muted-text></comment>`} />
1081+
<RenderHTML html={`<comment><muted-text>${getMovedTransactionMessage(toReport)}</muted-text></comment>`} />
10781082
</ReportActionItemBasicMessage>
10791083
);
10801084
} else if (isActionOfType(action, CONST.REPORT.ACTIONS.TYPE.TRAVEL_UPDATE)) {

0 commit comments

Comments
 (0)