Skip to content

Commit 018f304

Browse files
committed
fix: lint
1 parent f052397 commit 018f304

2 files changed

Lines changed: 30 additions & 19 deletions

File tree

src/ROUTES.ts

Lines changed: 12 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -2218,8 +2218,12 @@ const ROUTES = {
22182218
},
22192219
POLICY_ACCOUNTING_NETSUITE_IMPORT_CUSTOM_FIELD_MAPPING: {
22202220
route: 'workspaces/:policyID/accounting/netsuite/import/custom/:importCustomField',
2221-
getRoute: (policyID: string, importCustomField: ValueOf<typeof CONST.NETSUITE_CONFIG.IMPORT_CUSTOM_FIELDS>) =>
2222-
`workspaces/${policyID}/accounting/netsuite/import/custom/${importCustomField as string}` as const,
2221+
getRoute: (policyID: string | undefined, importCustomField: ValueOf<typeof CONST.NETSUITE_CONFIG.IMPORT_CUSTOM_FIELDS>) => {
2222+
if (!policyID) {
2223+
Log.warn('Invalid policyID is used to build the POLICY_ACCOUNTING_NETSUITE_IMPORT_CUSTOM_FIELD_MAPPING route');
2224+
}
2225+
return `workspaces/${policyID}/accounting/netsuite/import/custom/${importCustomField as string}` as const;
2226+
},
22232227
},
22242228
POLICY_ACCOUNTING_NETSUITE_IMPORT_CUSTOM_FIELD_VIEW: {
22252229
route: 'workspaces/:policyID/accounting/netsuite/import/custom/:importCustomField/view/:valueIndex',
@@ -2228,8 +2232,12 @@ const ROUTES = {
22282232
},
22292233
POLICY_ACCOUNTING_NETSUITE_IMPORT_CUSTOM_FIELD_EDIT: {
22302234
route: 'workspaces/:policyID/accounting/netsuite/import/custom/:importCustomField/edit/:valueIndex/:fieldName',
2231-
getRoute: (policyID: string, importCustomField: ValueOf<typeof CONST.NETSUITE_CONFIG.IMPORT_CUSTOM_FIELDS>, valueIndex: number, fieldName: string) =>
2232-
`workspaces/${policyID}/accounting/netsuite/import/custom/${importCustomField as string}/edit/${valueIndex}/${fieldName}` as const,
2235+
getRoute: (policyID: string | undefined, importCustomField: ValueOf<typeof CONST.NETSUITE_CONFIG.IMPORT_CUSTOM_FIELDS>, valueIndex: number, fieldName: string) => {
2236+
if (!policyID) {
2237+
Log.warn('Invalid policyID is used to build the POLICY_ACCOUNTING_NETSUITE_IMPORT_CUSTOM_FIELD_EDIT route');
2238+
}
2239+
return `workspaces/${policyID}/accounting/netsuite/import/custom/${importCustomField as string}/edit/${valueIndex}/${fieldName}` as const;
2240+
},
22332241
},
22342242
POLICY_ACCOUNTING_NETSUITE_IMPORT_CUSTOM_LIST_ADD: {
22352243
route: 'workspaces/:policyID/accounting/netsuite/import/custom-list/new',

src/pages/workspace/accounting/netsuite/import/NetSuiteImportCustomFieldView.tsx

Lines changed: 18 additions & 15 deletions
Original file line numberDiff line numberDiff line change
@@ -9,13 +9,12 @@ import OfflineWithFeedback from '@components/OfflineWithFeedback';
99
import useLocalize from '@hooks/useLocalize';
1010
import useThemeStyles from '@hooks/useThemeStyles';
1111
import {updateNetSuiteCustomLists, updateNetSuiteCustomSegments} from '@libs/actions/connections/NetSuiteCommands';
12-
import * as ErrorUtils from '@libs/ErrorUtils';
12+
import {clearNetSuiteErrorField, clearNetSuitePendingField, removeNetSuiteCustomFieldByIndex} from '@libs/actions/Policy/Policy';
13+
import {getLatestErrorField} from '@libs/ErrorUtils';
1314
import Navigation from '@libs/Navigation/Navigation';
14-
import * as PolicyUtils from '@libs/PolicyUtils';
15-
import {settingsPendingAction} from '@libs/PolicyUtils';
15+
import {getNameFromNetSuiteCustomField, isNetSuiteCustomFieldPropertyEditable, isNetSuiteCustomSegmentRecord, settingsPendingAction} from '@libs/PolicyUtils';
1616
import withPolicyConnections from '@pages/workspace/withPolicyConnections';
1717
import type {WithPolicyConnectionsProps} from '@pages/workspace/withPolicyConnections';
18-
import * as Policy from '@userActions/Policy/Policy';
1918
import CONST from '@src/CONST';
2019
import type {TranslationPaths} from '@src/languages/types';
2120
import ROUTES from '@src/ROUTES';
@@ -43,7 +42,7 @@ function NetSuiteImportCustomFieldView({
4342
params: {importCustomField, valueIndex},
4443
},
4544
}: NetSuiteImportCustomFieldViewProps) {
46-
const policyID = policy?.id ?? '-1';
45+
const policyID = policy?.id;
4746
const styles = useThemeStyles();
4847
const {translate} = useLocalize();
4948
const [isRemoveModalOpen, setIsRemoveModalOpen] = useState<boolean>(false);
@@ -53,16 +52,17 @@ function NetSuiteImportCustomFieldView({
5352

5453
const customField: CustomField | undefined = allRecords[valueIndex];
5554
const fieldList =
56-
customField && PolicyUtils.isNetSuiteCustomSegmentRecord(customField)
57-
? CONST.NETSUITE_CONFIG.CUSTOM_SEGMENT_FIELDS
58-
: [INPUT_IDS.LIST_NAME, INPUT_IDS.TRANSACTION_FIELD_ID, INPUT_IDS.MAPPING];
55+
customField && isNetSuiteCustomSegmentRecord(customField) ? CONST.NETSUITE_CONFIG.CUSTOM_SEGMENT_FIELDS : [INPUT_IDS.LIST_NAME, INPUT_IDS.TRANSACTION_FIELD_ID, INPUT_IDS.MAPPING];
5956

6057
const removeRecord = useCallback(() => {
58+
if (!policyID) {
59+
return;
60+
}
6161
if (customField) {
6262
// We allow multiple custom list records with the same internalID. Hence it is safe to remove by index.
6363
const filteredRecords = allRecords.filter((_, index) => index !== Number(valueIndex));
6464

65-
if (PolicyUtils.isNetSuiteCustomSegmentRecord(customField)) {
65+
if (isNetSuiteCustomSegmentRecord(customField)) {
6666
updateNetSuiteCustomSegments(
6767
policyID,
6868
filteredRecords as NetSuiteCustomSegment[],
@@ -86,7 +86,7 @@ function NetSuiteImportCustomFieldView({
8686
return (
8787
<ConnectionLayout
8888
displayName={NetSuiteImportCustomFieldView.displayName}
89-
headerTitleAlreadyTranslated={customField ? PolicyUtils.getNameFromNetSuiteCustomField(customField) : ''}
89+
headerTitleAlreadyTranslated={customField ? getNameFromNetSuiteCustomField(customField) : ''}
9090
accessVariants={[CONST.POLICY.ACCESS_VARIANTS.ADMIN, CONST.POLICY.ACCESS_VARIANTS.CONTROL]}
9191
policyID={policyID}
9292
featureName={CONST.POLICY.MORE_FEATURES.ARE_CONNECTIONS_ENABLED}
@@ -98,21 +98,24 @@ function NetSuiteImportCustomFieldView({
9898
>
9999
{!!customField && (
100100
<OfflineWithFeedback
101-
errors={ErrorUtils.getLatestErrorField(config ?? {}, `${importCustomField}_${valueIndex}`)}
101+
errors={getLatestErrorField(config ?? {}, `${importCustomField}_${valueIndex}`)}
102102
errorRowStyles={[styles.ph5, styles.pv3]}
103103
pendingAction={settingsPendingAction([`${importCustomField}_${valueIndex}`], config?.pendingFields)}
104104
onClose={() => {
105-
Policy.clearNetSuiteErrorField(policyID, `${importCustomField}_${valueIndex}`);
105+
if (!policyID) {
106+
return;
107+
}
108+
clearNetSuiteErrorField(policyID, `${importCustomField}_${valueIndex}`);
106109
const pendingAction = settingsPendingAction([`${importCustomField}_${valueIndex}`], config?.pendingFields);
107110
if (pendingAction === CONST.RED_BRICK_ROAD_PENDING_ACTION.ADD) {
108-
Policy.removeNetSuiteCustomFieldByIndex(allRecords, policyID, importCustomField, valueIndex);
111+
removeNetSuiteCustomFieldByIndex(allRecords, policyID, importCustomField, valueIndex);
109112
Navigation.goBack();
110113
}
111-
Policy.clearNetSuitePendingField(policyID, `${importCustomField}_${valueIndex}`);
114+
clearNetSuitePendingField(policyID, `${importCustomField}_${valueIndex}`);
112115
}}
113116
>
114117
{fieldList.map((fieldName) => {
115-
const isEditable = !config?.pendingFields?.[importCustomField] && PolicyUtils.isNetSuiteCustomFieldPropertyEditable(customField, fieldName);
118+
const isEditable = !config?.pendingFields?.[importCustomField] && isNetSuiteCustomFieldPropertyEditable(customField, fieldName);
116119
return (
117120
<MenuItemWithTopDescription
118121
key={fieldName}

0 commit comments

Comments
 (0)