diff --git a/src/components/MoneyReportHeader.tsx b/src/components/MoneyReportHeader.tsx index 9b030f9bfede..43caf87d1bae 100644 --- a/src/components/MoneyReportHeader.tsx +++ b/src/components/MoneyReportHeader.tsx @@ -41,7 +41,6 @@ import { isPending, isReceiptBeingScanned, shouldShowBrokenConnectionViolation as shouldShowBrokenConnectionViolationTransactionUtils, - shouldShowRTERViolationMessage, } from '@libs/TransactionUtils'; import variables from '@styles/variables'; import { @@ -185,7 +184,7 @@ function MoneyReportHeader({policy, report: moneyRequestReport, transactionThrea const shouldShowSettlementButton = !shouldShowSubmitButton && (shouldShowPayButton || shouldShowApproveButton) && - !shouldShowRTERViolationMessage(transactions) && + !hasAllPendingRTERViolations && !shouldShowExportIntegrationButton && !shouldShowBrokenConnectionViolation; diff --git a/src/components/ReportActionItem/ReportPreview.tsx b/src/components/ReportActionItem/ReportPreview.tsx index 4616feeffbca..90cca73b8307 100644 --- a/src/components/ReportActionItem/ReportPreview.tsx +++ b/src/components/ReportActionItem/ReportPreview.tsx @@ -70,12 +70,13 @@ import StringUtils from '@libs/StringUtils'; import { getDescription, getMerchant, + getTransactionViolations, + hasPendingUI, isCardTransaction, isPartialMerchant, isPending, isReceiptBeingScanned, shouldShowBrokenConnectionViolation as shouldShowBrokenConnectionViolationTransactionUtils, - shouldShowRTERViolationMessage, } from '@libs/TransactionUtils'; import type {ContextMenuAnchor} from '@pages/home/report/ContextMenu/ReportActionContextMenu'; import variables from '@styles/variables'; @@ -235,7 +236,7 @@ function ReportPreview({ const lastThreeTransactions = transactions?.slice(-3) ?? []; const lastTransaction = transactions?.at(0); const lastThreeReceipts = lastThreeTransactions.map((transaction) => ({...getThumbnailAndImageURIs(transaction), transaction})); - const showRTERViolationMessage = shouldShowRTERViolationMessage(transactions); + const showRTERViolationMessage = numberOfRequests === 1 && hasPendingUI(lastTransaction, getTransactionViolations(lastTransaction?.transactionID, transactionViolations)); const transactionIDList = [lastTransaction?.transactionID].filter((transactionID): transactionID is string => transactionID !== undefined); const shouldShowBrokenConnectionViolation = numberOfRequests === 1 && shouldShowBrokenConnectionViolationTransactionUtils(transactionIDList, iouReport, policy); let formattedMerchant = numberOfRequests === 1 ? getMerchant(lastTransaction) : null; diff --git a/src/libs/TransactionUtils/index.ts b/src/libs/TransactionUtils/index.ts index ca826f202d88..b60419090c41 100644 --- a/src/libs/TransactionUtils/index.ts +++ b/src/libs/TransactionUtils/index.ts @@ -1366,10 +1366,6 @@ function getAllSortedTransactions(iouReportID?: string): Array { expect(updatedTransaction.taxAmount).toBe(5); }); }); - - describe('shouldShowRTERViolationMessage', () => { - it('should return true if transaction is receipt being scanned', () => { - const transaction = generateTransaction({ - receipt: { - state: CONST.IOU.RECEIPT_STATE.SCANREADY, - }, - }); - expect(TransactionUtils.shouldShowRTERViolationMessage([transaction])).toBe(true); - }); - }); });