Skip to content

Commit 1bb4a0c

Browse files
authored
Merge pull request Expensify#80976 from ryntgh/issue-80703
Fix: Some approvals pages are shown when workflows is disabled in another browser
2 parents 50c493c + 7bc7fc6 commit 1bb4a0c

3 files changed

Lines changed: 9 additions & 5 deletions

File tree

src/pages/workspace/rules/RulesAutoApproveReportsUnderPage.tsx

Lines changed: 3 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -14,7 +14,7 @@ import {convertToFrontendAmountAsString} from '@libs/CurrencyUtils';
1414
import Navigation from '@libs/Navigation/Navigation';
1515
import type {PlatformStackScreenProps} from '@libs/Navigation/PlatformStackNavigation/types';
1616
import type {SettingsNavigatorParamList} from '@libs/Navigation/types';
17-
import {getWorkflowApprovalsUnavailable} from '@libs/PolicyUtils';
17+
import {getWorkflowApprovalsUnavailable, isPolicyFeatureEnabled} from '@libs/PolicyUtils';
1818
import AccessOrNotFoundWrapper from '@pages/workspace/AccessOrNotFoundWrapper';
1919
import {setPolicyAutomaticApprovalLimit} from '@userActions/Policy/Policy';
2020
import CONST from '@src/CONST';
@@ -33,14 +33,15 @@ function RulesAutoApproveReportsUnderPage({route}: RulesAutoApproveReportsUnderP
3333
const styles = useThemeStyles();
3434

3535
const workflowApprovalsUnavailable = getWorkflowApprovalsUnavailable(policy);
36+
const isWorkflowsEnabled = isPolicyFeatureEnabled(policy, CONST.POLICY.MORE_FEATURES.ARE_WORKFLOWS_ENABLED);
3637
const defaultValue = convertToFrontendAmountAsString(policy?.autoApproval?.limit ?? CONST.POLICY.AUTO_APPROVE_REPORTS_UNDER_DEFAULT_CENTS, policy?.outputCurrency);
3738

3839
return (
3940
<AccessOrNotFoundWrapper
4041
policyID={route.params.policyID}
4142
accessVariants={[CONST.POLICY.ACCESS_VARIANTS.ADMIN, CONST.POLICY.ACCESS_VARIANTS.PAID]}
4243
featureName={CONST.POLICY.MORE_FEATURES.ARE_WORKFLOWS_ENABLED}
43-
shouldBeBlocked={!policy?.shouldShowAutoApprovalOptions || workflowApprovalsUnavailable}
44+
shouldBeBlocked={isWorkflowsEnabled && (!policy?.shouldShowAutoApprovalOptions || workflowApprovalsUnavailable)}
4445
>
4546
<ScreenWrapper
4647
enableEdgeToEdgeBottomSafeAreaPadding

src/pages/workspace/rules/RulesAutoPayReportsUnderPage.tsx

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -16,6 +16,7 @@ import {convertToBackendAmount, convertToFrontendAmountAsString} from '@libs/Cur
1616
import Navigation from '@libs/Navigation/Navigation';
1717
import type {PlatformStackScreenProps} from '@libs/Navigation/PlatformStackNavigation/types';
1818
import type {SettingsNavigatorParamList} from '@libs/Navigation/types';
19+
import {isPolicyFeatureEnabled} from '@libs/PolicyUtils';
1920
import AccessOrNotFoundWrapper from '@pages/workspace/AccessOrNotFoundWrapper';
2021
import {setPolicyAutoReimbursementLimit} from '@userActions/Policy/Policy';
2122
import CONST from '@src/CONST';
@@ -37,6 +38,7 @@ function RulesAutoPayReportsUnderPage({route}: RulesAutoPayReportsUnderPageProps
3738
const currency = policy?.outputCurrency ?? CONST.CURRENCY.USD;
3839
const currencySymbol = getCurrencySymbol(currency);
3940
const autoPayApprovedReportsUnavailable = policy?.reimbursementChoice === CONST.POLICY.REIMBURSEMENT_CHOICES.REIMBURSEMENT_NO;
41+
const isWorkflowsEnabled = isPolicyFeatureEnabled(policy, CONST.POLICY.MORE_FEATURES.ARE_WORKFLOWS_ENABLED);
4042
const defaultValue = convertToFrontendAmountAsString(policy?.autoReimbursement?.limit ?? CONST.POLICY.AUTO_REIMBURSEMENT_LIMIT_DEFAULT_CENTS, policy?.outputCurrency);
4143

4244
const validateLimit = ({maxExpenseAutoPayAmount}: FormOnyxValues<typeof ONYXKEYS.FORMS.RULES_AUTO_PAY_REPORTS_UNDER_MODAL_FORM>) => {
@@ -52,7 +54,7 @@ function RulesAutoPayReportsUnderPage({route}: RulesAutoPayReportsUnderPageProps
5254
policyID={policyID}
5355
accessVariants={[CONST.POLICY.ACCESS_VARIANTS.ADMIN, CONST.POLICY.ACCESS_VARIANTS.PAID]}
5456
featureName={CONST.POLICY.MORE_FEATURES.ARE_WORKFLOWS_ENABLED}
55-
shouldBeBlocked={!policy?.shouldShowAutoReimbursementLimitOption || autoPayApprovedReportsUnavailable}
57+
shouldBeBlocked={isWorkflowsEnabled && (!policy?.shouldShowAutoReimbursementLimitOption || autoPayApprovedReportsUnavailable)}
5658
>
5759
<ScreenWrapper
5860
enableEdgeToEdgeBottomSafeAreaPadding

src/pages/workspace/rules/RulesRandomReportAuditPage.tsx

Lines changed: 3 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -13,7 +13,7 @@ import useThemeStyles from '@hooks/useThemeStyles';
1313
import Navigation from '@libs/Navigation/Navigation';
1414
import type {PlatformStackScreenProps} from '@libs/Navigation/PlatformStackNavigation/types';
1515
import type {SettingsNavigatorParamList} from '@libs/Navigation/types';
16-
import {getWorkflowApprovalsUnavailable} from '@libs/PolicyUtils';
16+
import {getWorkflowApprovalsUnavailable, isPolicyFeatureEnabled} from '@libs/PolicyUtils';
1717
import AccessOrNotFoundWrapper from '@pages/workspace/AccessOrNotFoundWrapper';
1818
import {setPolicyAutomaticApprovalRate} from '@userActions/Policy/Policy';
1919
import CONST from '@src/CONST';
@@ -32,13 +32,14 @@ function RulesRandomReportAuditPage({route}: RulesRandomReportAuditPageProps) {
3232
const styles = useThemeStyles();
3333

3434
const workflowApprovalsUnavailable = getWorkflowApprovalsUnavailable(policy);
35+
const isWorkflowsEnabled = isPolicyFeatureEnabled(policy, CONST.POLICY.MORE_FEATURES.ARE_WORKFLOWS_ENABLED);
3536
const defaultValue = Math.round((policy?.autoApproval?.auditRate ?? CONST.POLICY.RANDOM_AUDIT_DEFAULT_PERCENTAGE) * 100);
3637
return (
3738
<AccessOrNotFoundWrapper
3839
policyID={policyID}
3940
accessVariants={[CONST.POLICY.ACCESS_VARIANTS.ADMIN, CONST.POLICY.ACCESS_VARIANTS.PAID]}
4041
featureName={CONST.POLICY.MORE_FEATURES.ARE_WORKFLOWS_ENABLED}
41-
shouldBeBlocked={!policy?.shouldShowAutoApprovalOptions || workflowApprovalsUnavailable}
42+
shouldBeBlocked={isWorkflowsEnabled && (!policy?.shouldShowAutoApprovalOptions || workflowApprovalsUnavailable)}
4243
>
4344
<ScreenWrapper
4445
enableEdgeToEdgeBottomSafeAreaPadding

0 commit comments

Comments
 (0)