diff --git a/src/libs/actions/IOU/Duplicate.ts b/src/libs/actions/IOU/Duplicate.ts index 8a80219cc518..91b55e72e979 100644 --- a/src/libs/actions/IOU/Duplicate.ts +++ b/src/libs/actions/IOU/Duplicate.ts @@ -718,6 +718,7 @@ function createExpenseByType({ hasViolations: false, customUnitPolicyID, isTrackIntentUser, + formatPhoneNumber, }; return submitPerDiemExpense(perDiemParams); } diff --git a/src/libs/actions/IOU/PerDiem.ts b/src/libs/actions/IOU/PerDiem.ts index 463f104f7455..52e488d38147 100644 --- a/src/libs/actions/IOU/PerDiem.ts +++ b/src/libs/actions/IOU/PerDiem.ts @@ -1,3 +1,5 @@ +import type {LocaleContextProps} from '@components/LocaleContextProvider'; + import * as API from '@libs/API'; import type {CreatePerDiemRequestParams} from '@libs/API/parameters'; import {WRITE_COMMANDS} from '@libs/API/types'; @@ -6,7 +8,6 @@ import DateUtils from '@libs/DateUtils'; import {deferOrExecuteWrite} from '@libs/deferredLayoutWrite'; import {getMicroSecondOnyxErrorWithTranslationKey} from '@libs/ErrorUtils'; import {updateIOUOwnerAndTotal} from '@libs/IOUUtils'; -import {formatPhoneNumber} from '@libs/LocalePhoneNumber'; import {validateAmount} from '@libs/MoneyRequestUtils'; import Navigation from '@libs/Navigation/Navigation'; import TransitionTracker from '@libs/Navigation/TransitionTracker'; @@ -240,6 +241,7 @@ type PerDiemExpenseInformation = { shouldDeferAutoSubmit?: boolean; optimisticChatReportID?: string; optimisticTransactionID?: string; + formatPhoneNumber: LocaleContextProps['formatPhoneNumber']; // TODO: delegateAccountID will be made required in PR 13 when all callers pass the value (https://github.com/Expensify/App/issues/66425) delegateAccountID?: number | undefined; isTrackIntentUser: boolean | undefined; @@ -264,6 +266,7 @@ type PerDiemExpenseInformationParams = { personalDetails: OnyxEntry; optimisticChatReportID?: string; optimisticTransactionID?: string; + formatPhoneNumber: LocaleContextProps['formatPhoneNumber']; // TODO: delegateAccountID will be made required in PR 13 when all callers pass the value (https://github.com/Expensify/App/issues/66425) delegateAccountID?: number | undefined; isTrackIntentUser: boolean | undefined; @@ -322,6 +325,7 @@ function getPerDiemExpenseInformation(perDiemExpenseInformation: PerDiemExpenseI personalDetails, optimisticChatReportID, optimisticTransactionID: uiProvidedOptimisticTransactionID, + formatPhoneNumber, delegateAccountID, isTrackIntentUser, } = perDiemExpenseInformation; @@ -934,6 +938,7 @@ function submitPerDiemExpense(submitPerDiemExpenseInformation: PerDiemExpenseInf shouldDeferAutoSubmit, optimisticChatReportID, optimisticTransactionID, + formatPhoneNumber, delegateAccountID, isTrackIntentUser, } = submitPerDiemExpenseInformation; @@ -987,6 +992,7 @@ function submitPerDiemExpense(submitPerDiemExpenseInformation: PerDiemExpenseInf personalDetails, optimisticChatReportID, optimisticTransactionID, + formatPhoneNumber, delegateAccountID, isTrackIntentUser, }); diff --git a/src/pages/iou/request/step/confirmation/useExpenseSubmission.ts b/src/pages/iou/request/step/confirmation/useExpenseSubmission.ts index a23c7a7e06b2..1b0c7a522a2d 100644 --- a/src/pages/iou/request/step/confirmation/useExpenseSubmission.ts +++ b/src/pages/iou/request/step/confirmation/useExpenseSubmission.ts @@ -638,6 +638,7 @@ function useExpenseSubmission(params: UseExpenseSubmissionParams) { betas, personalDetails, optimisticChatReportID, + formatPhoneNumber, isTrackIntentUser, }); const targetReportID = backToReport ?? activeReportID; diff --git a/tests/actions/IOU/PerDiemTest.ts b/tests/actions/IOU/PerDiemTest.ts index 6bf078ed40bd..bdcee45cd97d 100644 --- a/tests/actions/IOU/PerDiemTest.ts +++ b/tests/actions/IOU/PerDiemTest.ts @@ -20,7 +20,7 @@ import createRandomPolicyCategories from '../../utils/collections/policyCategory import createRandomPolicyTags from '../../utils/collections/policyTags'; import createRandomTransaction from '../../utils/collections/transaction'; import getOnyxValue from '../../utils/getOnyxValue'; -import {getGlobalFetchMock} from '../../utils/TestHelper'; +import {formatPhoneNumber, getGlobalFetchMock} from '../../utils/TestHelper'; import waitForBatchedUpdates from '../../utils/waitForBatchedUpdates'; jest.mock('@src/libs/Navigation/Navigation', () => ({ @@ -326,6 +326,7 @@ describe('PerDiem', () => { quickAction: undefined, betas: [CONST.BETAS.ALL], personalDetails: {[mockParticipantParams.payeeAccountID]: {accountID: mockParticipantParams.payeeAccountID, login: 'payee@example.com'}}, + formatPhoneNumber, isTrackIntentUser: false, }); @@ -417,6 +418,7 @@ describe('PerDiem', () => { quickAction: undefined, betas: [CONST.BETAS.ALL], personalDetails: {[mockParticipant.accountID]: {accountID: mockParticipant.accountID, login: 'existing@example.com'}}, + formatPhoneNumber, isTrackIntentUser: false, }); @@ -507,6 +509,7 @@ describe('PerDiem', () => { betas: [CONST.BETAS.ALL], personalDetails: {[mockParticipantParams.payeeAccountID]: {accountID: mockParticipantParams.payeeAccountID, login: 'payee@example.com'}}, isTrackIntentUser: false, + formatPhoneNumber, }); // The builder must not produce a transaction thread — the backend creates it lazily when first needed. @@ -607,6 +610,7 @@ describe('PerDiem', () => { quickAction: undefined, betas: [CONST.BETAS.ALL], personalDetails: {[mockParticipant.accountID]: {accountID: mockParticipant.accountID, login: 'existing@example.com'}}, + formatPhoneNumber, isTrackIntentUser: false, }); @@ -696,6 +700,7 @@ describe('PerDiem', () => { quickAction: undefined, betas: [CONST.BETAS.ALL], personalDetails: {[mockParticipant.accountID]: {accountID: mockParticipant.accountID, login: 'existing@example.com'}}, + formatPhoneNumber, isTrackIntentUser: false, }); @@ -772,6 +777,7 @@ describe('PerDiem', () => { quickAction: undefined, betas: [CONST.BETAS.ALL], personalDetails: {[RORY_ACCOUNT_ID]: {accountID: RORY_ACCOUNT_ID, login: RORY_EMAIL}}, + formatPhoneNumber, isTrackIntentUser: false, }); @@ -841,6 +847,7 @@ describe('PerDiem', () => { betas: [CONST.BETAS.ALL], personalDetails: {[RORY_ACCOUNT_ID]: {accountID: RORY_ACCOUNT_ID, login: RORY_EMAIL}}, optimisticTransactionID, + formatPhoneNumber, isTrackIntentUser: false, }); @@ -914,6 +921,7 @@ describe('PerDiem', () => { quickAction: undefined, betas: [CONST.BETAS.ALL], personalDetails: personalDetailsList, + formatPhoneNumber, isTrackIntentUser: false, }); @@ -979,6 +987,7 @@ describe('PerDiem', () => { quickAction: undefined, betas: [CONST.BETAS.ALL], personalDetails: personalDetailsList, + formatPhoneNumber, isTrackIntentUser: false, });