Skip to content

Commit ad56ca9

Browse files
committedJun 10, 2024··
add memo to getTransactionDetails
1 parent 4fcc5a9 commit ad56ca9

File tree

2 files changed

+10
-2
lines changed

2 files changed

+10
-2
lines changed
 

‎src/components/ReportActionItem/MoneyRequestPreview/MoneyRequestPreviewContent.tsx

+8-1
Original file line numberDiff line numberDiff line change
@@ -28,6 +28,7 @@ import * as OptionsListUtils from '@libs/OptionsListUtils';
2828
import * as ReceiptUtils from '@libs/ReceiptUtils';
2929
import * as ReportActionsUtils from '@libs/ReportActionsUtils';
3030
import * as ReportUtils from '@libs/ReportUtils';
31+
import type {TransactionDetails} from '@libs/ReportUtils';
3132
import StringUtils from '@libs/StringUtils';
3233
import * as TransactionUtils from '@libs/TransactionUtils';
3334
import ViolationsUtils from '@libs/Violations/ViolationsUtils';
@@ -83,7 +84,13 @@ function MoneyRequestPreviewContent({
8384
// Pay button should only be visible to the manager of the report.
8485
const isCurrentUserManager = managerID === sessionAccountID;
8586

86-
const {amount: requestAmount, currency: requestCurrency, comment: requestComment, merchant} = ReportUtils.getTransactionDetails(transaction) ?? {};
87+
const {
88+
amount: requestAmount,
89+
currency: requestCurrency,
90+
comment: requestComment,
91+
merchant,
92+
} = useMemo<Partial<TransactionDetails>>(() => ReportUtils.getTransactionDetails(transaction) ?? {}, [transaction]);
93+
8794
const description = truncate(StringUtils.lineBreaksToSpaces(requestComment), {length: CONST.REQUEST_PREVIEW.MAX_LENGTH});
8895
const requestMerchant = truncate(merchant, {length: CONST.REQUEST_PREVIEW.MAX_LENGTH});
8996
const hasReceipt = TransactionUtils.hasReceipt(transaction);

‎src/components/ReportActionItem/MoneyRequestView.tsx

+2-1
Original file line numberDiff line numberDiff line change
@@ -28,6 +28,7 @@ import {isTaxTrackingEnabled} from '@libs/PolicyUtils';
2828
import * as ReceiptUtils from '@libs/ReceiptUtils';
2929
import * as ReportActionsUtils from '@libs/ReportActionsUtils';
3030
import * as ReportUtils from '@libs/ReportUtils';
31+
import type {TransactionDetails} from '@libs/ReportUtils';
3132
import * as TransactionUtils from '@libs/TransactionUtils';
3233
import ViolationsUtils from '@libs/Violations/ViolationsUtils';
3334
import Navigation from '@navigation/Navigation';
@@ -115,7 +116,7 @@ function MoneyRequestView({
115116
originalAmount: transactionOriginalAmount,
116117
originalCurrency: transactionOriginalCurrency,
117118
cardID: transactionCardID,
118-
} = ReportUtils.getTransactionDetails(transaction) ?? {};
119+
} = useMemo<Partial<TransactionDetails>>(() => ReportUtils.getTransactionDetails(transaction) ?? {}, [transaction]);
119120
const isEmptyMerchant = transactionMerchant === '' || transactionMerchant === CONST.TRANSACTION.PARTIAL_TRANSACTION_MERCHANT;
120121
const isDistanceRequest = TransactionUtils.isDistanceRequest(transaction);
121122
const formattedTransactionAmount = transactionAmount ? CurrencyUtils.convertToDisplayString(transactionAmount, transactionCurrency) : '';

0 commit comments

Comments
 (0)
Please sign in to comment.