@@ -3,21 +3,21 @@ import BlockingView from '@components/BlockingViews/BlockingView';
33import RadioListItem from '@components/SelectionList/ListItem/RadioListItem' ;
44import type { SelectorType } from '@components/SelectionScreen' ;
55import SelectionScreen from '@components/SelectionScreen' ;
6- import useDynamicBackPath from '@hooks/useDynamicBackPath' ;
76import { useMemoizedLazyIllustrations } from '@hooks/useLazyAsset' ;
87import useLocalize from '@hooks/useLocalize' ;
98import usePermissions from '@hooks/usePermissions' ;
109import useThemeStyles from '@hooks/useThemeStyles' ;
1110import { updateNetSuiteTaxPostingAccount } from '@libs/actions/connections/NetSuiteCommands' ;
1211import { getLatestErrorField } from '@libs/ErrorUtils' ;
12+ import createDynamicRoute from '@libs/Navigation/helpers/dynamicRoutesUtils/createDynamicRoute' ;
1313import Navigation from '@libs/Navigation/Navigation' ;
1414import { canUseTaxNetSuite , getNetSuiteTaxAccountOptions , settingsPendingAction } from '@libs/PolicyUtils' ;
1515import type { WithPolicyConnectionsProps } from '@pages/workspace/withPolicyConnections' ;
1616import withPolicyConnections from '@pages/workspace/withPolicyConnections' ;
1717import variables from '@styles/variables' ;
1818import { clearNetSuiteErrorField } from '@userActions/Policy/Policy' ;
1919import CONST from '@src/CONST' ;
20- import { DYNAMIC_ROUTES } from '@src/ROUTES' ;
20+ import ROUTES , { DYNAMIC_ROUTES } from '@src/ROUTES' ;
2121
2222function NetSuiteTaxPostingAccountSelectPage ( { policy} : WithPolicyConnectionsProps ) {
2323 const styles = useThemeStyles ( ) ;
@@ -26,7 +26,12 @@ function NetSuiteTaxPostingAccountSelectPage({policy}: WithPolicyConnectionsProp
2626 const { isBetaEnabled} = usePermissions ( ) ;
2727
2828 const policyID = policy ?. id ;
29- const backPath = useDynamicBackPath ( DYNAMIC_ROUTES . POLICY_ACCOUNTING_NETSUITE_EXPORT . path ) ;
29+ const netSuiteExportBackPath = useMemo ( ( ) => {
30+ if ( ! policyID ) {
31+ return ROUTES . HOME ;
32+ }
33+ return createDynamicRoute ( DYNAMIC_ROUTES . POLICY_ACCOUNTING_NETSUITE_EXPORT . path , ROUTES . WORKSPACE_ACCOUNTING . getRoute ( policyID ) ) ;
34+ } , [ policyID ] ) ;
3035
3136 const config = policy ?. connections ?. netsuite ?. options . config ;
3237 const { subsidiaryList} = policy ?. connections ?. netsuite ?. options ?. data ?? { } ;
@@ -44,9 +49,9 @@ function NetSuiteTaxPostingAccountSelectPage({policy}: WithPolicyConnectionsProp
4449 if ( config ?. taxPostingAccount !== value && policyID ) {
4550 updateNetSuiteTaxPostingAccount ( policyID , value , config ?. taxPostingAccount ) ;
4651 }
47- Navigation . goBack ( backPath ) ;
52+ Navigation . goBack ( netSuiteExportBackPath ) ;
4853 } ,
49- [ backPath , policyID , config ?. taxPostingAccount ] ,
54+ [ netSuiteExportBackPath , policyID , config ?. taxPostingAccount ] ,
5055 ) ;
5156
5257 const listEmptyContent = useMemo (
@@ -73,7 +78,7 @@ function NetSuiteTaxPostingAccountSelectPage({policy}: WithPolicyConnectionsProp
7378 listItem = { RadioListItem }
7479 onSelectRow = { updateTaxAccount }
7580 initiallyFocusedOptionKey = { initiallyFocusedOptionKey }
76- onBackButtonPress = { ( ) => Navigation . goBack ( backPath ) }
81+ onBackButtonPress = { ( ) => Navigation . goBack ( netSuiteExportBackPath ) }
7782 title = "workspace.netsuite.journalEntriesTaxPostingAccount"
7883 listEmptyContent = { listEmptyContent }
7984 connectionName = { CONST . POLICY . CONNECTIONS . NAME . NETSUITE }
0 commit comments