diff --git a/src/languages/de.ts b/src/languages/de.ts index 57d96966642e7..ec97c2b010701 100644 --- a/src/languages/de.ts +++ b/src/languages/de.ts @@ -1130,7 +1130,6 @@ const translations: TranslationDeepObject = { movedFromReport: ({reportName}: MovedFromReportParams) => `hat eine Ausgabe verschoben${reportName ? `von ${reportName}` : ''}`, movedTransactionTo: ({reportUrl, reportName}: MovedTransactionParams) => `hat diese Ausgabe verschoben${reportName ? `zu ${reportName}` : ''}`, movedTransactionFrom: ({reportUrl, reportName}: MovedTransactionParams) => `hat diese Ausgabe verschoben${reportName ? `von ${reportName}` : ''}`, - movedUnreportedTransaction: ({reportUrl}: MovedTransactionParams) => `hat diese Ausgabe aus deinem Persönlichen Bereich verschoben`, unreportedTransaction: ({reportUrl}: MovedTransactionParams) => `hat diese Ausgabe in deinen persönlichen Bereich verschoben`, movedAction: ({shouldHideMovedReportUrl, movedReportUrl, newParentReportUrl, toPolicyName}: MovedActionParams) => { if (shouldHideMovedReportUrl) { diff --git a/src/languages/en.ts b/src/languages/en.ts index 6f35244788d7c..c033a9e7cf5c1 100755 --- a/src/languages/en.ts +++ b/src/languages/en.ts @@ -1121,7 +1121,6 @@ const translations = { movedFromReport: ({reportName}: MovedFromReportParams) => `moved an expense${reportName ? ` from ${reportName}` : ''}`, movedTransactionTo: ({reportUrl, reportName}: MovedTransactionParams) => `moved this expense${reportName ? ` to ${reportName}` : ''}`, movedTransactionFrom: ({reportUrl, reportName}: MovedTransactionParams) => `moved this expense${reportName ? ` from ${reportName}` : ''}`, - movedUnreportedTransaction: ({reportUrl}: MovedTransactionParams) => `moved this expense from your personal space`, unreportedTransaction: ({reportUrl}: MovedTransactionParams) => `moved this expense to your personal space`, movedAction: ({shouldHideMovedReportUrl, movedReportUrl, newParentReportUrl, toPolicyName}: MovedActionParams) => { if (shouldHideMovedReportUrl) { diff --git a/src/languages/es.ts b/src/languages/es.ts index 32ad83a652641..6d0b7b070270e 100644 --- a/src/languages/es.ts +++ b/src/languages/es.ts @@ -851,7 +851,6 @@ const translations: TranslationDeepObject = { movedFromReport: ({reportName}) => `movió un gasto${reportName ? ` desde ${reportName}` : ''}`, movedTransactionTo: ({reportUrl, reportName}) => `movió este gasto${reportName ? ` a ${reportName}` : ''}`, movedTransactionFrom: ({reportUrl, reportName}) => `movió este gasto${reportName ? ` desde ${reportName}` : ''}`, - movedUnreportedTransaction: ({reportUrl}) => `movió este gasto desde tu espacio personal`, unreportedTransaction: ({reportUrl}) => `movió este gasto a tu espacio personal`, movedAction: ({shouldHideMovedReportUrl, movedReportUrl, newParentReportUrl, toPolicyName}) => { if (shouldHideMovedReportUrl) { diff --git a/src/languages/fr.ts b/src/languages/fr.ts index c6f45622df332..266bec3171701 100644 --- a/src/languages/fr.ts +++ b/src/languages/fr.ts @@ -1129,7 +1129,6 @@ const translations: TranslationDeepObject = { movedFromReport: ({reportName}: MovedFromReportParams) => `a déplacé une dépense${reportName ? `de ${reportName}` : ''}`, movedTransactionTo: ({reportUrl, reportName}: MovedTransactionParams) => `a déplacé cette dépense${reportName ? `à ${reportName}` : ''}`, movedTransactionFrom: ({reportUrl, reportName}: MovedTransactionParams) => `a déplacé cette dépense${reportName ? `de ${reportName}` : ''}`, - movedUnreportedTransaction: ({reportUrl}: MovedTransactionParams) => `a déplacé cette dépense depuis votre espace personnel`, unreportedTransaction: ({reportUrl}: MovedTransactionParams) => `a déplacé cette dépense dans votre espace personnel`, movedAction: ({shouldHideMovedReportUrl, movedReportUrl, newParentReportUrl, toPolicyName}: MovedActionParams) => { if (shouldHideMovedReportUrl) { diff --git a/src/languages/it.ts b/src/languages/it.ts index 81ba8a1337858..3b9084004ee52 100644 --- a/src/languages/it.ts +++ b/src/languages/it.ts @@ -1125,7 +1125,6 @@ const translations: TranslationDeepObject = { movedFromReport: ({reportName}: MovedFromReportParams) => `ha spostato una spesa${reportName ? `da ${reportName}` : ''}`, movedTransactionTo: ({reportUrl, reportName}: MovedTransactionParams) => `spostato questa spesa${reportName ? `a ${reportName}` : ''}`, movedTransactionFrom: ({reportUrl, reportName}: MovedTransactionParams) => `ha spostato questa spesa${reportName ? `da ${reportName}` : ''}`, - movedUnreportedTransaction: ({reportUrl}: MovedTransactionParams) => `ha spostato questa spesa dal tuo spazio personale`, unreportedTransaction: ({reportUrl}: MovedTransactionParams) => `ha spostato questa spesa nel tuo spazio personale`, movedAction: ({shouldHideMovedReportUrl, movedReportUrl, newParentReportUrl, toPolicyName}: MovedActionParams) => { if (shouldHideMovedReportUrl) { diff --git a/src/languages/ja.ts b/src/languages/ja.ts index 35e3b5104d6cd..2021f5b7646f0 100644 --- a/src/languages/ja.ts +++ b/src/languages/ja.ts @@ -1126,7 +1126,6 @@ const translations: TranslationDeepObject = { movedFromReport: ({reportName}: MovedFromReportParams) => `経費を移動しました${reportName ? `${reportName} から` : ''}`, movedTransactionTo: ({reportUrl, reportName}: MovedTransactionParams) => `この経費を移動しました${reportName ? `${reportName} へ` : ''}`, movedTransactionFrom: ({reportUrl, reportName}: MovedTransactionParams) => `この経費を移動しました${reportName ? `${reportName} から` : ''}`, - movedUnreportedTransaction: ({reportUrl}: MovedTransactionParams) => `この経費を個人スペースから移動しました`, unreportedTransaction: ({reportUrl}: MovedTransactionParams) => `この経費はあなたのパーソナルスペースに移動されました`, movedAction: ({shouldHideMovedReportUrl, movedReportUrl, newParentReportUrl, toPolicyName}: MovedActionParams) => { if (shouldHideMovedReportUrl) { diff --git a/src/languages/nl.ts b/src/languages/nl.ts index e6b30faa49b9b..0b210251e00c7 100644 --- a/src/languages/nl.ts +++ b/src/languages/nl.ts @@ -1125,7 +1125,6 @@ const translations: TranslationDeepObject = { movedFromReport: ({reportName}: MovedFromReportParams) => `heeft een uitgave verplaatst${reportName ? `van ${reportName}` : ''}`, movedTransactionTo: ({reportUrl, reportName}: MovedTransactionParams) => `heeft deze uitgave verplaatst${reportName ? `naar ${reportName}` : ''}`, movedTransactionFrom: ({reportUrl, reportName}: MovedTransactionParams) => `heeft deze uitgave verplaatst${reportName ? `van ${reportName}` : ''}`, - movedUnreportedTransaction: ({reportUrl}: MovedTransactionParams) => `heeft deze uitgave verplaatst uit je persoonlijke ruimte`, unreportedTransaction: ({reportUrl}: MovedTransactionParams) => `heeft deze uitgave verplaatst naar je persoonlijke ruimte`, movedAction: ({shouldHideMovedReportUrl, movedReportUrl, newParentReportUrl, toPolicyName}: MovedActionParams) => { if (shouldHideMovedReportUrl) { diff --git a/src/languages/pl.ts b/src/languages/pl.ts index 224c0cae4ed0d..c01f4cc0aab2f 100644 --- a/src/languages/pl.ts +++ b/src/languages/pl.ts @@ -1124,7 +1124,6 @@ const translations: TranslationDeepObject = { movedFromReport: ({reportName}: MovedFromReportParams) => `przeniesiono wydatek${reportName ? `z ${reportName}` : ''}`, movedTransactionTo: ({reportUrl, reportName}: MovedTransactionParams) => `przeniósł ten wydatek${reportName ? `do ${reportName}` : ''}`, movedTransactionFrom: ({reportUrl, reportName}: MovedTransactionParams) => `przeniósł ten wydatek${reportName ? `z ${reportName}` : ''}`, - movedUnreportedTransaction: ({reportUrl}: MovedTransactionParams) => `przeniósł ten wydatek z twojej przestrzeni osobistej`, unreportedTransaction: ({reportUrl}: MovedTransactionParams) => `przeniósł ten wydatek do twojej przestrzeni osobistej`, movedAction: ({shouldHideMovedReportUrl, movedReportUrl, newParentReportUrl, toPolicyName}: MovedActionParams) => { if (shouldHideMovedReportUrl) { diff --git a/src/languages/pt-BR.ts b/src/languages/pt-BR.ts index fa4e117eeaf13..cb9b28215fd0c 100644 --- a/src/languages/pt-BR.ts +++ b/src/languages/pt-BR.ts @@ -1124,7 +1124,6 @@ const translations: TranslationDeepObject = { movedFromReport: ({reportName}: MovedFromReportParams) => `moveu uma despesa${reportName ? `de ${reportName}` : ''}`, movedTransactionTo: ({reportUrl, reportName}: MovedTransactionParams) => `moveu esta despesa${reportName ? `para ${reportName}` : ''}`, movedTransactionFrom: ({reportUrl, reportName}: MovedTransactionParams) => `moveu esta despesa${reportName ? `de ${reportName}` : ''}`, - movedUnreportedTransaction: ({reportUrl}: MovedTransactionParams) => `moveu esta despesa do seu espaço pessoal`, unreportedTransaction: ({reportUrl}: MovedTransactionParams) => `moveu esta despesa para o seu espaço pessoal`, movedAction: ({shouldHideMovedReportUrl, movedReportUrl, newParentReportUrl, toPolicyName}: MovedActionParams) => { if (shouldHideMovedReportUrl) { diff --git a/src/languages/zh-hans.ts b/src/languages/zh-hans.ts index 54c8a9790b204..5e51c32982fa6 100644 --- a/src/languages/zh-hans.ts +++ b/src/languages/zh-hans.ts @@ -1110,7 +1110,6 @@ const translations: TranslationDeepObject = { movedFromReport: ({reportName}: MovedFromReportParams) => `移动了一笔报销${reportName ? `来自 ${reportName}` : ''}`, movedTransactionTo: ({reportUrl, reportName}: MovedTransactionParams) => `已移动此报销${reportName ? `到 ${reportName}` : ''}`, movedTransactionFrom: ({reportUrl, reportName}: MovedTransactionParams) => `已移动此报销${reportName ? `来自 ${reportName}` : ''}`, - movedUnreportedTransaction: ({reportUrl}: MovedTransactionParams) => `已将此费用从您的个人空间中移出`, unreportedTransaction: ({reportUrl}: MovedTransactionParams) => `已将此报销移动到你的个人空间`, movedAction: ({shouldHideMovedReportUrl, movedReportUrl, newParentReportUrl, toPolicyName}: MovedActionParams) => { if (shouldHideMovedReportUrl) { diff --git a/src/libs/ReportActionsUtils.ts b/src/libs/ReportActionsUtils.ts index 6020e6e84994e..46ad2a1f832a5 100644 --- a/src/libs/ReportActionsUtils.ts +++ b/src/libs/ReportActionsUtils.ts @@ -1049,9 +1049,14 @@ function shouldReportActionBeVisible(reportAction: OnyxEntry, key: const movedTransactionOriginalMessage = getOriginalMessage(reportAction); const toReportID = movedTransactionOriginalMessage?.toReportID; const fromReportID = movedTransactionOriginalMessage?.fromReportID; + + if (fromReportID === CONST.REPORT.UNREPORTED_REPORT_ID) { + return false; + } + const toReport = allReports?.[`${ONYXKEYS.COLLECTION.REPORT}${toReportID}`]; - const fromReport = fromReportID === CONST.REPORT.UNREPORTED_REPORT_ID ? true : !!allReports?.[`${ONYXKEYS.COLLECTION.REPORT}${fromReportID}`]; - return fromReport || !!toReport; + const fromReport = allReports?.[`${ONYXKEYS.COLLECTION.REPORT}${fromReportID}`]; + return !!fromReport || !!toReport; } // Ignore closed action here since we're already displaying a footer that explains why the report was closed diff --git a/src/libs/ReportUtils.ts b/src/libs/ReportUtils.ts index 2d9dc2abe9926..0a82933a2c2e0 100644 --- a/src/libs/ReportUtils.ts +++ b/src/libs/ReportUtils.ts @@ -6891,7 +6891,7 @@ function getMovedTransactionMessage(action: ReportAction) { // This will be fixed as follow up https://github.com/Expensify/App/pull/75357 // eslint-disable-next-line @typescript-eslint/no-deprecated const reportName = getReportName(report) ?? report?.reportName ?? ''; - let reportUrl = getReportURLForCurrentContext(report?.reportID); + const reportUrl = getReportURLForCurrentContext(report?.reportID); if (typeof fromReportID === 'undefined') { // eslint-disable-next-line @typescript-eslint/no-deprecated return translateLocal('iou.movedTransactionTo', { @@ -6899,13 +6899,6 @@ function getMovedTransactionMessage(action: ReportAction) { reportName, }); } - if (fromReportID === CONST.REPORT.UNREPORTED_REPORT_ID) { - reportUrl = `${environmentURL}/r/${findSelfDMReportID()}`; - // eslint-disable-next-line @typescript-eslint/no-deprecated - return translateLocal('iou.movedUnreportedTransaction', { - reportUrl, - }); - } // eslint-disable-next-line @typescript-eslint/no-deprecated return translateLocal('iou.movedTransactionFrom', { reportUrl, @@ -7370,9 +7363,7 @@ function buildOptimisticTransactionAction( const isFromPersonalSpace = originalReportID === CONST.REPORT.UNREPORTED_REPORT_ID; const reportName = allReports?.[`${ONYXKEYS.COLLECTION.REPORT}${originalReportID}`]?.reportName ?? ''; const url = isFromPersonalSpace ? getReportURLForCurrentContext(findSelfDMReportID()) : getReportURLForCurrentContext(originalReportID); - const [actionText, messageHtml] = isFromPersonalSpace - ? ['moved this expense from your personal space', `moved this expense from your personal space`] - : [`moved this expense from ${reportName}`, `moved this expense from ${reportName}`]; + const [actionText, messageHtml] = [`moved this expense from ${reportName}`, `moved this expense from ${reportName}`]; return { actionName: type, diff --git a/tests/unit/OptionsListUtilsTest.tsx b/tests/unit/OptionsListUtilsTest.tsx index 283a8a23b5890..63440bb93eefd 100644 --- a/tests/unit/OptionsListUtilsTest.tsx +++ b/tests/unit/OptionsListUtilsTest.tsx @@ -2675,7 +2675,7 @@ describe('OptionsListUtils', () => { it('MOVED_TRANSACTION action', async () => { const mockIsSearchTopmostFullScreenRoute = jest.mocked(isSearchTopmostFullScreenRoute); mockIsSearchTopmostFullScreenRoute.mockReturnValue(false); - const report: Report = createRandomReport(0, undefined); + const report: Report = createRandomReport(2, undefined); const report2: Report = { ...createRandomReport(1, undefined), reportName: 'Expense Report #123', diff --git a/tests/unit/ReportActionsUtilsTest.ts b/tests/unit/ReportActionsUtilsTest.ts index 83722cc40aa08..c0c5cabe997d3 100644 --- a/tests/unit/ReportActionsUtilsTest.ts +++ b/tests/unit/ReportActionsUtilsTest.ts @@ -667,6 +667,40 @@ describe('ReportActionsUtils', () => { expect(result).toStrictEqual(expectedOutput); }); + it('should not show moved transaction system message when expense is moved from personal space', () => { + const movedTransactionAction: ReportAction = { + created: '2022-11-13 22:27:01.825', + reportActionID: '8401445780099177', + actionName: CONST.REPORT.ACTIONS.TYPE.MOVED_TRANSACTION, + originalMessage: { + fromReportID: CONST.REPORT.UNREPORTED_REPORT_ID, + toReportID: '123', + }, + }; + + const addCommentAction: ReportAction = { + created: '2022-11-12 22:27:01.825', + reportActionID: '6401435781022176', + actionName: CONST.REPORT.ACTIONS.TYPE.ADD_COMMENT, + originalMessage: { + html: 'Hello world', + whisperedTo: [], + }, + message: [ + { + html: 'Hello world', + type: 'Action type', + text: 'Action text', + }, + ], + }; + + const input: ReportAction[] = [movedTransactionAction, addCommentAction]; + const result = ReportActionsUtils.getSortedReportActionsForDisplay(input, true); + + expect(result).toStrictEqual([addCommentAction]); + }); + it('should filter out closed actions', () => { const input: ReportAction[] = [ { @@ -1432,7 +1466,7 @@ describe('ReportActionsUtils', () => { created: '2025-09-29', originalMessage: { toReportID: report.reportID, - fromReportID: CONST.REPORT.UNREPORTED_REPORT_ID, + fromReportID: '1', }, };