Skip to content

Commit 0190b0a

Browse files
authored
Merge pull request #55389 from daledah/fix/55238
fix: Advanced page for "custom form ID" detail is not visible
2 parents eef098d + 2c20f6c commit 0190b0a

File tree

2 files changed

+33
-25
lines changed

2 files changed

+33
-25
lines changed

src/pages/workspace/accounting/intacct/import/SageIntacctEditUserDimensionsPage.tsx

Lines changed: 7 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -19,7 +19,7 @@ import {
1919
removeSageIntacctUserDimensions,
2020
removeSageIntacctUserDimensionsByName,
2121
} from '@libs/actions/connections/SageIntacct';
22-
import * as ErrorUtils from '@libs/ErrorUtils';
22+
import {addErrorMessage, getLatestErrorField} from '@libs/ErrorUtils';
2323
import Navigation from '@libs/Navigation/Navigation';
2424
import type {PlatformStackScreenProps} from '@libs/Navigation/PlatformStackNavigation/types';
2525
import type {SettingsNavigatorParamList} from '@libs/Navigation/types';
@@ -39,7 +39,7 @@ function SageIntacctEditUserDimensionsPage({route}: SageIntacctEditUserDimension
3939

4040
const editedUserDimensionName: string = route.params.dimensionName;
4141
const policy = usePolicy(route.params.policyID);
42-
const policyID: string = policy?.id ?? '-1';
42+
const policyID: string = policy?.id ?? `${CONST.DEFAULT_NUMBER_ID}`;
4343
const config = policy?.connections?.intacct?.config;
4444
const userDimensions = policy?.connections?.intacct?.config?.mappings?.dimensions;
4545
const editedUserDimension = userDimensions?.find((userDimension) => userDimension.dimension === editedUserDimensionName);
@@ -50,15 +50,15 @@ function SageIntacctEditUserDimensionsPage({route}: SageIntacctEditUserDimension
5050
const errors: FormInputErrors<typeof ONYXKEYS.FORMS.SAGE_INTACCT_DIMENSION_TYPE_FORM> = {};
5151

5252
if (!values[INPUT_IDS.INTEGRATION_NAME]) {
53-
ErrorUtils.addErrorMessage(errors, INPUT_IDS.INTEGRATION_NAME, translate('common.error.fieldRequired'));
53+
addErrorMessage(errors, INPUT_IDS.INTEGRATION_NAME, translate('common.error.fieldRequired'));
5454
}
5555

5656
if (userDimensions?.some((userDimension) => userDimension.dimension === values[INPUT_IDS.INTEGRATION_NAME] && editedUserDimensionName !== values[INPUT_IDS.INTEGRATION_NAME])) {
57-
ErrorUtils.addErrorMessage(errors, INPUT_IDS.INTEGRATION_NAME, translate('workspace.intacct.dimensionExists'));
57+
addErrorMessage(errors, INPUT_IDS.INTEGRATION_NAME, translate('workspace.intacct.dimensionExists'));
5858
}
5959

6060
if (!values[INPUT_IDS.DIMENSION_TYPE]) {
61-
ErrorUtils.addErrorMessage(errors, INPUT_IDS.DIMENSION_TYPE, translate('common.error.fieldRequired'));
61+
addErrorMessage(errors, INPUT_IDS.DIMENSION_TYPE, translate('common.error.fieldRequired'));
6262
}
6363
return errors;
6464
},
@@ -74,6 +74,7 @@ function SageIntacctEditUserDimensionsPage({route}: SageIntacctEditUserDimension
7474
featureName={CONST.POLICY.MORE_FEATURES.ARE_CONNECTIONS_ENABLED}
7575
contentContainerStyle={styles.flex1}
7676
shouldUseScrollView={false}
77+
shouldIncludeSafeAreaPaddingBottom
7778
titleStyle={styles.ph5}
7879
connectionName={CONST.POLICY.CONNECTIONS.NAME.SAGE_INTACCT}
7980
onBackButtonPress={() => Navigation.goBack(ROUTES.POLICY_ACCOUNTING_SAGE_INTACCT_USER_DIMENSIONS.getRoute(policyID))}
@@ -93,7 +94,7 @@ function SageIntacctEditUserDimensionsPage({route}: SageIntacctEditUserDimension
9394
>
9495
<OfflineWithFeedback
9596
pendingAction={settingsPendingAction([`${CONST.SAGE_INTACCT_CONFIG.DIMENSION_PREFIX}${editedUserDimensionName}`], config?.pendingFields)}
96-
errors={ErrorUtils.getLatestErrorField(config ?? {}, `${CONST.SAGE_INTACCT_CONFIG.DIMENSION_PREFIX}${editedUserDimensionName}`)}
97+
errors={getLatestErrorField(config ?? {}, `${CONST.SAGE_INTACCT_CONFIG.DIMENSION_PREFIX}${editedUserDimensionName}`)}
9798
errorRowStyles={[styles.pb3]}
9899
onClose={() => {
99100
clearSageIntacctErrorField(policyID, `${CONST.SAGE_INTACCT_CONFIG.DIMENSION_PREFIX}${editedUserDimensionName}`);

src/pages/workspace/accounting/netsuite/advanced/NetSuiteAdvancedPage.tsx

Lines changed: 26 additions & 19 deletions
Original file line numberDiff line numberDiff line change
@@ -6,8 +6,15 @@ import MenuItemWithTopDescription from '@components/MenuItemWithTopDescription';
66
import OfflineWithFeedback from '@components/OfflineWithFeedback';
77
import useLocalize from '@hooks/useLocalize';
88
import useThemeStyles from '@hooks/useThemeStyles';
9-
import * as Connections from '@libs/actions/connections/NetSuiteCommands';
10-
import * as ErrorUtils from '@libs/ErrorUtils';
9+
import {
10+
updateNetSuiteAutoCreateEntities,
11+
updateNetSuiteCustomFormIDOptionsEnabled,
12+
updateNetSuiteEnableNewCategories,
13+
updateNetSuiteSyncPeople,
14+
updateNetSuiteSyncReimbursedReports,
15+
} from '@libs/actions/connections/NetSuiteCommands';
16+
import {clearNetSuiteErrorField} from '@libs/actions/Policy/Policy';
17+
import {getLatestErrorField} from '@libs/ErrorUtils';
1118
import Navigation from '@libs/Navigation/Navigation';
1219
import {
1320
areSettingsInErrorFields,
@@ -28,7 +35,6 @@ import {
2835
import type {WithPolicyConnectionsProps} from '@pages/workspace/withPolicyConnections';
2936
import withPolicyConnections from '@pages/workspace/withPolicyConnections';
3037
import ToggleSettingOptionRow from '@pages/workspace/workflows/ToggleSettingsOptionRow';
31-
import * as Policy from '@userActions/Policy/Policy';
3238
import CONST from '@src/CONST';
3339
import type {TranslationPaths} from '@src/languages/types';
3440
import ROUTES from '@src/ROUTES';
@@ -38,7 +44,7 @@ type MenuItemWithSubscribedSettings = Pick<MenuItem, 'type' | 'description' | 't
3844
function NetSuiteAdvancedPage({policy}: WithPolicyConnectionsProps) {
3945
const {translate} = useLocalize();
4046
const styles = useThemeStyles();
41-
const policyID = policy?.id ?? '-1';
47+
const policyID = policy?.id ?? `${CONST.DEFAULT_NUMBER_ID}`;
4248

4349
const config = policy?.connections?.netsuite?.options?.config;
4450
const autoSyncConfig = policy?.connections?.netsuite?.config;
@@ -90,10 +96,10 @@ function NetSuiteAdvancedPage({policy}: WithPolicyConnectionsProps) {
9096
isActive: !!config?.syncOptions.syncReimbursedReports,
9197
switchAccessibilityLabel: translate('workspace.netsuite.advancedConfig.reimbursedReportsDescription'),
9298
shouldPlaceSubtitleBelowSwitch: true,
93-
onCloseError: () => Policy.clearNetSuiteErrorField(policyID, CONST.NETSUITE_CONFIG.SYNC_OPTIONS.SYNC_REIMBURSED_REPORTS),
94-
onToggle: (isEnabled) => Connections.updateNetSuiteSyncReimbursedReports(policyID, isEnabled),
99+
onCloseError: () => clearNetSuiteErrorField(policyID, CONST.NETSUITE_CONFIG.SYNC_OPTIONS.SYNC_REIMBURSED_REPORTS),
100+
onToggle: (isEnabled) => updateNetSuiteSyncReimbursedReports(policyID, isEnabled),
95101
pendingAction: settingsPendingAction([CONST.NETSUITE_CONFIG.SYNC_OPTIONS.SYNC_REIMBURSED_REPORTS], config?.pendingFields),
96-
errors: ErrorUtils.getLatestErrorField(config, CONST.NETSUITE_CONFIG.SYNC_OPTIONS.SYNC_REIMBURSED_REPORTS),
102+
errors: getLatestErrorField(config, CONST.NETSUITE_CONFIG.SYNC_OPTIONS.SYNC_REIMBURSED_REPORTS),
97103
shouldHide: shouldHideReimbursedReportsSection(config),
98104
},
99105
{
@@ -125,20 +131,20 @@ function NetSuiteAdvancedPage({policy}: WithPolicyConnectionsProps) {
125131
switchAccessibilityLabel: translate('workspace.netsuite.advancedConfig.inviteEmployeesDescription'),
126132
shouldPlaceSubtitleBelowSwitch: true,
127133
shouldParseSubtitle: true,
128-
onCloseError: () => Policy.clearNetSuiteErrorField(policyID, CONST.NETSUITE_CONFIG.SYNC_OPTIONS.SYNC_PEOPLE),
129-
onToggle: (isEnabled) => Connections.updateNetSuiteSyncPeople(policyID, isEnabled),
134+
onCloseError: () => clearNetSuiteErrorField(policyID, CONST.NETSUITE_CONFIG.SYNC_OPTIONS.SYNC_PEOPLE),
135+
onToggle: (isEnabled) => updateNetSuiteSyncPeople(policyID, isEnabled),
130136
pendingAction: settingsPendingAction([CONST.NETSUITE_CONFIG.SYNC_OPTIONS.SYNC_PEOPLE], config?.pendingFields),
131-
errors: ErrorUtils.getLatestErrorField(config, CONST.NETSUITE_CONFIG.SYNC_OPTIONS.SYNC_PEOPLE),
137+
errors: getLatestErrorField(config, CONST.NETSUITE_CONFIG.SYNC_OPTIONS.SYNC_PEOPLE),
132138
},
133139
{
134140
type: 'toggle',
135141
title: translate('workspace.netsuite.advancedConfig.autoCreateEntities'),
136142
isActive: !!config?.autoCreateEntities,
137143
switchAccessibilityLabel: translate('workspace.netsuite.advancedConfig.autoCreateEntities'),
138-
onCloseError: () => Policy.clearNetSuiteErrorField(policyID, CONST.NETSUITE_CONFIG.AUTO_CREATE_ENTITIES),
139-
onToggle: (isEnabled) => Connections.updateNetSuiteAutoCreateEntities(policyID, isEnabled),
144+
onCloseError: () => clearNetSuiteErrorField(policyID, CONST.NETSUITE_CONFIG.AUTO_CREATE_ENTITIES),
145+
onToggle: (isEnabled) => updateNetSuiteAutoCreateEntities(policyID, isEnabled),
140146
pendingAction: settingsPendingAction([CONST.NETSUITE_CONFIG.AUTO_CREATE_ENTITIES], config?.pendingFields),
141-
errors: ErrorUtils.getLatestErrorField(config, CONST.NETSUITE_CONFIG.AUTO_CREATE_ENTITIES),
147+
errors: getLatestErrorField(config, CONST.NETSUITE_CONFIG.AUTO_CREATE_ENTITIES),
142148
},
143149
{
144150
type: 'divider',
@@ -149,10 +155,10 @@ function NetSuiteAdvancedPage({policy}: WithPolicyConnectionsProps) {
149155
title: translate('workspace.netsuite.advancedConfig.enableCategories'),
150156
isActive: !!config?.syncOptions.enableNewCategories,
151157
switchAccessibilityLabel: translate('workspace.netsuite.advancedConfig.enableCategories'),
152-
onCloseError: () => Policy.clearNetSuiteErrorField(policyID, CONST.NETSUITE_CONFIG.SYNC_OPTIONS.ENABLE_NEW_CATEGORIES),
153-
onToggle: (isEnabled) => Connections.updateNetSuiteEnableNewCategories(policyID, isEnabled),
158+
onCloseError: () => clearNetSuiteErrorField(policyID, CONST.NETSUITE_CONFIG.SYNC_OPTIONS.ENABLE_NEW_CATEGORIES),
159+
onToggle: (isEnabled) => updateNetSuiteEnableNewCategories(policyID, isEnabled),
154160
pendingAction: settingsPendingAction([CONST.NETSUITE_CONFIG.SYNC_OPTIONS.ENABLE_NEW_CATEGORIES], config?.pendingFields),
155-
errors: ErrorUtils.getLatestErrorField(config, CONST.NETSUITE_CONFIG.SYNC_OPTIONS.ENABLE_NEW_CATEGORIES),
161+
errors: getLatestErrorField(config, CONST.NETSUITE_CONFIG.SYNC_OPTIONS.ENABLE_NEW_CATEGORIES),
156162
},
157163
{
158164
type: 'divider',
@@ -200,10 +206,10 @@ function NetSuiteAdvancedPage({policy}: WithPolicyConnectionsProps) {
200206
isActive: !!config?.customFormIDOptions?.enabled,
201207
switchAccessibilityLabel: translate('workspace.netsuite.advancedConfig.customFormIDDescription'),
202208
shouldPlaceSubtitleBelowSwitch: true,
203-
onCloseError: () => Policy.clearNetSuiteErrorField(policyID, CONST.NETSUITE_CONFIG.CUSTOM_FORM_ID_ENABLED),
204-
onToggle: (isEnabled) => Connections.updateNetSuiteCustomFormIDOptionsEnabled(policyID, isEnabled),
209+
onCloseError: () => clearNetSuiteErrorField(policyID, CONST.NETSUITE_CONFIG.CUSTOM_FORM_ID_ENABLED),
210+
onToggle: (isEnabled) => updateNetSuiteCustomFormIDOptionsEnabled(policyID, isEnabled),
205211
pendingAction: settingsPendingAction([CONST.NETSUITE_CONFIG.CUSTOM_FORM_ID_ENABLED], config?.pendingFields),
206-
errors: ErrorUtils.getLatestErrorField(config, CONST.NETSUITE_CONFIG.CUSTOM_FORM_ID_ENABLED),
212+
errors: getLatestErrorField(config, CONST.NETSUITE_CONFIG.CUSTOM_FORM_ID_ENABLED),
207213
},
208214
{
209215
type: 'menuitem',
@@ -225,6 +231,7 @@ function NetSuiteAdvancedPage({policy}: WithPolicyConnectionsProps) {
225231

226232
return (
227233
<ConnectionLayout
234+
shouldIncludeSafeAreaPaddingBottom
228235
displayName={NetSuiteAdvancedPage.displayName}
229236
headerTitle="workspace.accounting.advanced"
230237
headerSubtitle={config?.subsidiary ?? ''}

0 commit comments

Comments
 (0)