From a23976a681df6e600287bb73bb9bacf058a29eb2 Mon Sep 17 00:00:00 2001 From: Bernhard Owen Josephus Date: Sat, 10 Aug 2024 14:42:18 +0800 Subject: [PATCH 1/3] optimistically remove hold when paying --- src/libs/actions/IOU.ts | 23 +++++++++++++++++++++++ 1 file changed, 23 insertions(+) diff --git a/src/libs/actions/IOU.ts b/src/libs/actions/IOU.ts index ef5f6d6d61c00..c1d55a6afd1a3 100644 --- a/src/libs/actions/IOU.ts +++ b/src/libs/actions/IOU.ts @@ -6705,6 +6705,29 @@ function getPayMoneyRequestParams( }); } + if (full) { + for (const transaction of TransactionUtils.getAllReportTransactions(iouReport.reportID)) { + optimisticData.push({ + onyxMethod: Onyx.METHOD.MERGE, + key: `${ONYXKEYS.COLLECTION.TRANSACTION}${transaction.transactionID}`, + value: { + comment: { + hold: null, + }, + }, + }); + failureData.push({ + onyxMethod: Onyx.METHOD.MERGE, + key: `${ONYXKEYS.COLLECTION.TRANSACTION}${transaction.transactionID}`, + value: { + comment: { + hold: transaction.comment?.hold, + }, + }, + }); + } + } + let optimisticHoldReportID; let optimisticHoldActionID; let optimisticHoldReportExpenseActionIDs; From 7a3f3060bf1f0f213d9869c38f583e62a4463ddd Mon Sep 17 00:00:00 2001 From: Bernhard Owen Josephus Date: Thu, 29 Aug 2024 10:00:58 +0800 Subject: [PATCH 2/3] add comment --- src/libs/actions/IOU.ts | 1 + 1 file changed, 1 insertion(+) diff --git a/src/libs/actions/IOU.ts b/src/libs/actions/IOU.ts index c177de581e4e8..7c202be45efc7 100644 --- a/src/libs/actions/IOU.ts +++ b/src/libs/actions/IOU.ts @@ -6719,6 +6719,7 @@ function getPayMoneyRequestParams( }); } + // Optimistically unhold all transactions if we pay all requests if (full) { for (const transaction of TransactionUtils.getAllReportTransactions(iouReport.reportID)) { optimisticData.push({ From 4a042d0b74828a234b13e0edd89fa7c64bc2f0f1 Mon Sep 17 00:00:00 2001 From: Bernhard Owen Josephus Date: Thu, 29 Aug 2024 10:01:20 +0800 Subject: [PATCH 3/3] clean up --- src/libs/actions/IOU.ts | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/src/libs/actions/IOU.ts b/src/libs/actions/IOU.ts index 7c202be45efc7..29d4817377908 100644 --- a/src/libs/actions/IOU.ts +++ b/src/libs/actions/IOU.ts @@ -6721,7 +6721,8 @@ function getPayMoneyRequestParams( // Optimistically unhold all transactions if we pay all requests if (full) { - for (const transaction of TransactionUtils.getAllReportTransactions(iouReport.reportID)) { + const reportTransactions = TransactionUtils.getAllReportTransactions(iouReport.reportID); + for (const transaction of reportTransactions) { optimisticData.push({ onyxMethod: Onyx.METHOD.MERGE, key: `${ONYXKEYS.COLLECTION.TRANSACTION}${transaction.transactionID}`,