Skip to content
Draft
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
11 changes: 8 additions & 3 deletions src/libs/actions/IOU/Duplicate.ts
Original file line number Diff line number Diff line change
Expand Up @@ -18,7 +18,7 @@ import {
buildTransactionThread,
getTransactionDetails,
} from '@libs/ReportUtils';
import {getRequestType, getTransactionType, isDistanceRequest, isExpenseSplit} from '@libs/TransactionUtils';
import {getRequestType, getTransactionType, isDistanceRequest, isExpenseSplit, isOdometerDistanceRequest} from '@libs/TransactionUtils';
import CONST from '@src/CONST';
import ONYXKEYS from '@src/ONYXKEYS';
import type * as OnyxTypes from '@src/types/onyx';
Expand Down Expand Up @@ -564,6 +564,8 @@ function duplicateExpenseTransaction({
merchant: transaction?.modifiedMerchant ? transaction.modifiedMerchant : (transaction?.merchant ?? ''),
modifiedAmount: undefined,
originalTransactionID: undefined,
odometerStart: transaction?.comment?.odometerStart ?? undefined,
odometerEnd: transaction?.comment?.odometerEnd ?? undefined,
receipt: undefined,
source: undefined,
waypoints,
Expand All @@ -587,8 +589,9 @@ function duplicateExpenseTransaction({
personalDetails,
};

// Since we remove waypoints for split distance expenses, we need to re-add the distance param here
if (isExpenseSplit(transaction) && isDistanceRequest(transaction)) {
// We remove waypoints for split distance expenses, so we have to re-add the distance param here.
// Odometer expenses don't have the distance parameter so we also need to pass it here.
if (isDistanceRequest(transaction) && (isExpenseSplit(transaction) || isOdometerDistanceRequest(transaction))) {
params.transactionParams.distance = transaction.comment?.customUnit?.quantity ?? undefined;
}

Expand All @@ -606,6 +609,7 @@ function duplicateExpenseTransaction({
...transaction.comment,
originalTransactionID: undefined,
source: undefined,
waypoints,
},
iouRequestType: getRequestType(transaction),
modifiedCreated: '',
Expand Down Expand Up @@ -648,6 +652,7 @@ function duplicateExpenseTransaction({
...transaction.comment,
originalTransactionID: undefined,
source: undefined,
waypoints,
},
iouRequestType: getRequestType(transaction),
modifiedCreated: '',
Expand Down
Loading