@@ -2,6 +2,7 @@ import type {StackScreenProps} from '@react-navigation/stack';
2
2
import React , { useEffect } from 'react' ;
3
3
import { useOnyx } from 'react-native-onyx' ;
4
4
import type { SettingsNavigatorParamList } from '@navigation/types' ;
5
+ import AccessOrNotFoundWrapper from '@pages/workspace/AccessOrNotFoundWrapper' ;
5
6
import type { WithPolicyAndFullscreenLoadingProps } from '@pages/workspace/withPolicyAndFullscreenLoading' ;
6
7
import withPolicyAndFullscreenLoading from '@pages/workspace/withPolicyAndFullscreenLoading' ;
7
8
import * as Card from '@userActions/Card' ;
@@ -29,27 +30,39 @@ function IssueNewCardPage({policy, route}: IssueNewCardPageProps) {
29
30
Card . startIssueNewCardFlow ( policyID ) ;
30
31
} , [ policyID ] ) ;
31
32
32
- switch ( currentStep ) {
33
- case CONST . EXPENSIFY_CARD . STEP . ASSIGNEE :
34
- return < AssigneeStep policy = { policy } /> ;
35
- case CONST . EXPENSIFY_CARD . STEP . CARD_TYPE :
36
- return < CardTypeStep /> ;
37
- case CONST . EXPENSIFY_CARD . STEP . LIMIT_TYPE :
38
- return < LimitTypeStep policy = { policy } /> ;
39
- case CONST . EXPENSIFY_CARD . STEP . LIMIT :
40
- return < LimitStep /> ;
41
- case CONST . EXPENSIFY_CARD . STEP . CARD_NAME :
42
- return < CardNameStep /> ;
43
- case CONST . EXPENSIFY_CARD . STEP . CONFIRMATION :
44
- return (
45
- < ConfirmationStep
46
- policyID = { policyID }
47
- backTo = { backTo }
48
- />
49
- ) ;
50
- default :
51
- return < AssigneeStep policy = { policy } /> ;
52
- }
33
+ const getCurrentStep = ( ) => {
34
+ switch ( currentStep ) {
35
+ case CONST . EXPENSIFY_CARD . STEP . ASSIGNEE :
36
+ return < AssigneeStep policy = { policy } /> ;
37
+ case CONST . EXPENSIFY_CARD . STEP . CARD_TYPE :
38
+ return < CardTypeStep /> ;
39
+ case CONST . EXPENSIFY_CARD . STEP . LIMIT_TYPE :
40
+ return < LimitTypeStep policy = { policy } /> ;
41
+ case CONST . EXPENSIFY_CARD . STEP . LIMIT :
42
+ return < LimitStep /> ;
43
+ case CONST . EXPENSIFY_CARD . STEP . CARD_NAME :
44
+ return < CardNameStep /> ;
45
+ case CONST . EXPENSIFY_CARD . STEP . CONFIRMATION :
46
+ return (
47
+ < ConfirmationStep
48
+ policyID = { policyID }
49
+ backTo = { backTo }
50
+ />
51
+ ) ;
52
+ default :
53
+ return < AssigneeStep policy = { policy } /> ;
54
+ }
55
+ } ;
56
+
57
+ return (
58
+ < AccessOrNotFoundWrapper
59
+ accessVariants = { [ CONST . POLICY . ACCESS_VARIANTS . ADMIN , CONST . POLICY . ACCESS_VARIANTS . PAID ] }
60
+ policyID = { policyID }
61
+ featureName = { CONST . POLICY . MORE_FEATURES . ARE_EXPENSIFY_CARDS_ENABLED }
62
+ >
63
+ { getCurrentStep ( ) }
64
+ </ AccessOrNotFoundWrapper >
65
+ ) ;
53
66
}
54
67
55
68
IssueNewCardPage . displayName = 'IssueNewCardPage' ;
0 commit comments