From 8afd8a6aa58166e9a3f8a4b69660d4f0ebeb62e5 Mon Sep 17 00:00:00 2001 From: nkdengineer Date: Wed, 15 Oct 2025 21:26:49 +0700 Subject: [PATCH] use write API solution --- src/libs/actions/Policy/Category.ts | 3 ++- src/libs/actions/Policy/DistanceRate.ts | 3 ++- src/libs/actions/Policy/Policy.ts | 7 +++++-- src/libs/actions/Policy/Tag.ts | 3 ++- 4 files changed, 11 insertions(+), 5 deletions(-) diff --git a/src/libs/actions/Policy/Category.ts b/src/libs/actions/Policy/Category.ts index cb578bdfa4bb..0fb335673025 100644 --- a/src/libs/actions/Policy/Category.ts +++ b/src/libs/actions/Policy/Category.ts @@ -1142,7 +1142,8 @@ function enablePolicyCategories( const parameters: EnablePolicyCategoriesParams = {policyID, enabled}; - API.writeWithNoDuplicatesEnableFeatureConflicts(WRITE_COMMANDS.ENABLE_POLICY_CATEGORIES, parameters, onyxData); + // We can't use writeWithNoDuplicatesEnableFeatureConflicts because the categories data is also changed when disabling/enabling this feature + API.write(WRITE_COMMANDS.ENABLE_POLICY_CATEGORIES, parameters, onyxData); if (enabled && getIsNarrowLayout() && shouldGoBack) { goBackWhenEnableFeature(policyID); diff --git a/src/libs/actions/Policy/DistanceRate.ts b/src/libs/actions/Policy/DistanceRate.ts index 941f1fdfccd5..03a6cf7e36a0 100644 --- a/src/libs/actions/Policy/DistanceRate.ts +++ b/src/libs/actions/Policy/DistanceRate.ts @@ -118,7 +118,8 @@ function enablePolicyDistanceRates(policyID: string, enabled: boolean, customUni const parameters: EnablePolicyDistanceRatesParams = {policyID, enabled}; - API.writeWithNoDuplicatesEnableFeatureConflicts(WRITE_COMMANDS.ENABLE_POLICY_DISTANCE_RATES, parameters, onyxData); + // We can't use writeWithNoDuplicatesEnableFeatureConflicts because the distance rates data is also changed when disabling/enabling this feature + API.write(WRITE_COMMANDS.ENABLE_POLICY_DISTANCE_RATES, parameters, onyxData); if (enabled && getIsNarrowLayout()) { goBackWhenEnableFeature(policyID); diff --git a/src/libs/actions/Policy/Policy.ts b/src/libs/actions/Policy/Policy.ts index 77819aad7264..a25a558bf2da 100644 --- a/src/libs/actions/Policy/Policy.ts +++ b/src/libs/actions/Policy/Policy.ts @@ -4284,7 +4284,8 @@ function enablePolicyWorkflows(policyID: string, enabled: boolean) { setWorkspaceAutoReportingFrequency(policyID, CONST.POLICY.AUTO_REPORTING_FREQUENCIES.INSTANT); } - API.writeWithNoDuplicatesEnableFeatureConflicts(WRITE_COMMANDS.ENABLE_POLICY_WORKFLOWS, parameters, onyxData); + // We can't use writeWithNoDuplicatesEnableFeatureConflicts because the workflows data is also changed when disabling/enabling this feature + API.write(WRITE_COMMANDS.ENABLE_POLICY_WORKFLOWS, parameters, onyxData); if (enabled && getIsNarrowLayout()) { goBackWhenEnableFeature(policyID); @@ -4357,7 +4358,9 @@ function enablePolicyRules(policyID: string, enabled: boolean, shouldGoBack = tr } const parameters: SetPolicyRulesEnabledParams = {policyID, enabled}; - API.writeWithNoDuplicatesEnableFeatureConflicts(WRITE_COMMANDS.SET_POLICY_RULES_ENABLED, parameters, onyxData); + + // We can't use writeWithNoDuplicatesEnableFeatureConflicts because the expense rule values are also changed when disabling/enabling this feature + API.write(WRITE_COMMANDS.SET_POLICY_RULES_ENABLED, parameters, onyxData); if (enabled && getIsNarrowLayout() && shouldGoBack) { goBackWhenEnableFeature(policyID); diff --git a/src/libs/actions/Policy/Tag.ts b/src/libs/actions/Policy/Tag.ts index 69171310f946..9e46826f6bc2 100644 --- a/src/libs/actions/Policy/Tag.ts +++ b/src/libs/actions/Policy/Tag.ts @@ -748,7 +748,8 @@ function enablePolicyTags(policyID: string, enabled: boolean) { const parameters: EnablePolicyTagsParams = {policyID, enabled}; - API.writeWithNoDuplicatesEnableFeatureConflicts(WRITE_COMMANDS.ENABLE_POLICY_TAGS, parameters, onyxData); + // We can't use writeWithNoDuplicatesEnableFeatureConflicts because the tags data is also changed when disabling/enabling this feature + API.write(WRITE_COMMANDS.ENABLE_POLICY_TAGS, parameters, onyxData); if (enabled && getIsNarrowLayout()) { goBackWhenEnableFeature(policyID);