From 088a3659ae3e5dedc9afc44990d9efdf1bd34fc0 Mon Sep 17 00:00:00 2001 From: Eskalifer1 Date: Mon, 24 Nov 2025 16:34:19 +0200 Subject: [PATCH] fix: updated getCashExpenseReimbursableMode to accept policy instead of policyID --- src/libs/actions/Policy/Policy.ts | 3 +-- src/pages/workspace/rules/IndividualExpenseRulesSection.tsx | 2 +- src/pages/workspace/rules/RulesReimbursableDefaultPage.tsx | 5 ++++- 3 files changed, 6 insertions(+), 4 deletions(-) diff --git a/src/libs/actions/Policy/Policy.ts b/src/libs/actions/Policy/Policy.ts index 1327f3526110..0b4957a9c2ed 100644 --- a/src/libs/actions/Policy/Policy.ts +++ b/src/libs/actions/Policy/Policy.ts @@ -5265,8 +5265,7 @@ function setPolicyBillableMode(policyID: string, defaultBillable: boolean) { API.write(WRITE_COMMANDS.SET_POLICY_BILLABLE_MODE, parameters, onyxData); } -function getCashExpenseReimbursableMode(policyID: string): PolicyCashExpenseMode | undefined { - const policy = allPolicies?.[`${ONYXKEYS.COLLECTION.POLICY}${policyID}`]; +function getCashExpenseReimbursableMode(policy: OnyxEntry): PolicyCashExpenseMode | undefined { if (!policy) { return undefined; } diff --git a/src/pages/workspace/rules/IndividualExpenseRulesSection.tsx b/src/pages/workspace/rules/IndividualExpenseRulesSection.tsx index f9e7c49a763d..033c38d29f3b 100644 --- a/src/pages/workspace/rules/IndividualExpenseRulesSection.tsx +++ b/src/pages/workspace/rules/IndividualExpenseRulesSection.tsx @@ -97,7 +97,7 @@ function IndividualExpenseRulesSection({policyID}: IndividualExpenseRulesSection return translate('workspace.rules.individualExpenseRules.maxExpenseAgeDays', {count: policy?.maxExpenseAge ?? 0}); }, [policy?.maxExpenseAge, translate]); - const reimbursableMode = getCashExpenseReimbursableMode(policyID) ?? CONST.POLICY.CASH_EXPENSE_REIMBURSEMENT_CHOICES.REIMBURSABLE_DEFAULT; + const reimbursableMode = getCashExpenseReimbursableMode(policy) ?? CONST.POLICY.CASH_EXPENSE_REIMBURSEMENT_CHOICES.REIMBURSABLE_DEFAULT; const reimbursableModeText = translate(`workspace.rules.individualExpenseRules.${reimbursableMode}`); const billableModeText = translate(`workspace.rules.individualExpenseRules.${policy?.defaultBillable ? 'billable' : 'nonBillable'}`); diff --git a/src/pages/workspace/rules/RulesReimbursableDefaultPage.tsx b/src/pages/workspace/rules/RulesReimbursableDefaultPage.tsx index 5b427512f59b..7d719dc3d3e0 100644 --- a/src/pages/workspace/rules/RulesReimbursableDefaultPage.tsx +++ b/src/pages/workspace/rules/RulesReimbursableDefaultPage.tsx @@ -5,6 +5,7 @@ import SelectionList from '@components/SelectionList'; import RadioListItem from '@components/SelectionList/ListItem/RadioListItem'; import Text from '@components/Text'; import useLocalize from '@hooks/useLocalize'; +import usePolicy from '@hooks/usePolicy'; import useThemeStyles from '@hooks/useThemeStyles'; import {getCashExpenseReimbursableMode, setPolicyReimbursableMode} from '@libs/actions/Policy/Policy'; import Navigation from '@libs/Navigation/Navigation'; @@ -23,7 +24,9 @@ function RulesReimbursableDefaultPage({ }: RulesReimbursableDefaultPageProps) { const {translate} = useLocalize(); const styles = useThemeStyles(); - const reimbursableMode = getCashExpenseReimbursableMode(policyID); + const policy = usePolicy(policyID); + + const reimbursableMode = getCashExpenseReimbursableMode(policy); const reimbursableModes = Object.values(CONST.POLICY.CASH_EXPENSE_REIMBURSEMENT_CHOICES).map((mode) => ({ text: translate(`workspace.rules.individualExpenseRules.${mode}`),