@finspringinnovations/fixeddepositsdk 1.0.2 → 1.0.4
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/lib/api/customerApi.js +1 -0
- package/lib/api/fdApi.d.ts +401 -1
- package/lib/api/fdApi.js +24 -2
- package/lib/components/PendingFDBottomSheet.js +27 -18
- package/lib/config/appDataConfig.js +3 -2
- package/lib/config/workflowConstants.d.ts +40 -30
- package/lib/config/workflowConstants.js +35 -24
- package/lib/constants/strings/fd.d.ts +2 -2
- package/lib/constants/strings/fd.js +2 -2
- package/lib/navigation/RootNavigator.js +167 -196
- package/lib/navigation/types.d.ts +4 -1
- package/lib/navigation/workflowNavigator.d.ts +1 -1
- package/lib/navigation/workflowNavigator.js +107 -26
- package/lib/screens/AadhaarVerification.js +1 -11
- package/lib/screens/AddBankAccount.js +1 -11
- package/lib/screens/BankDetail.js +1 -11
- package/lib/screens/Employee.js +1 -11
- package/lib/screens/FDCalculator.js +2 -12
- package/lib/screens/FDList.js +531 -417
- package/lib/screens/FindIFSC.js +1 -11
- package/lib/screens/NomineeDetail.js +12 -22
- package/lib/screens/PayNow.js +1 -11
- package/lib/screens/Payment.js +2 -11
- package/lib/screens/PaymentStatus.js +24 -21
- package/lib/screens/ReviewKYC.js +3 -12
- package/lib/types/workflowTypes.d.ts +1 -1
- package/package.json +50 -50
- package/src/api/customerApi.ts +1 -0
- package/src/api/fdApi.ts +28 -1
- package/src/components/PendingFDBottomSheet.tsx +151 -123
- package/src/config/appDataConfig.ts +245 -242
- package/src/config/workflowConstants.ts +51 -39
- package/src/constants/strings/bank.ts +80 -80
- package/src/constants/strings/fd.ts +2 -2
- package/src/navigation/RootNavigator.tsx +667 -651
- package/src/navigation/types.ts +4 -1
- package/src/navigation/workflowNavigator.ts +170 -107
- package/src/screens/AadhaarVerification.tsx +1 -15
- package/src/screens/AddBankAccount.tsx +2 -16
- package/src/screens/BankDetail.tsx +1 -15
- package/src/screens/Employee.tsx +1 -15
- package/src/screens/FDCalculator.tsx +4 -18
- package/src/screens/FDList.tsx +2311 -2170
- package/src/screens/FindIFSC.tsx +2 -16
- package/src/screens/NomineeDetail.tsx +762 -775
- package/src/screens/PayNow.tsx +2 -16
- package/src/screens/Payment.tsx +190 -203
- package/src/screens/PaymentStatus.tsx +574 -576
- package/src/screens/ReviewKYC.tsx +2 -15
- package/src/types/workflowTypes.ts +1 -10
|
@@ -3,29 +3,87 @@ Object.defineProperty(exports, "__esModule", { value: true });
|
|
|
3
3
|
exports.handleWorkflowNavigation = handleWorkflowNavigation;
|
|
4
4
|
exports.handleFDSelection = handleFDSelection;
|
|
5
5
|
exports.navigateFDCreationFlow = navigateFDCreationFlow;
|
|
6
|
-
const helpers_1 = require("./helpers");
|
|
7
6
|
const workflowConstants_1 = require("../config/workflowConstants");
|
|
7
|
+
const helpers_1 = require("./helpers");
|
|
8
8
|
/**
|
|
9
9
|
* Centralized navigation for FD workflow based on Flutter implementation
|
|
10
10
|
*/
|
|
11
11
|
async function handleWorkflowNavigation({ workflowState, investmentData, customerData, appData, fdData, completedApplications = [], transactionId, }) {
|
|
12
|
-
|
|
12
|
+
// Normalize workflow state from caption if needed
|
|
13
|
+
let normalizedState = workflowState;
|
|
14
|
+
// Map Shriram captions to common states if necessary, or handle directly
|
|
15
|
+
const isShriramCaption = Object.values(workflowConstants_1.SHRIRAM_WORKFLOW_STATES).includes(workflowState);
|
|
16
|
+
const isMahindraCaption = Object.values(workflowConstants_1.MAHINDRA_WORKFLOW_STATES).includes(workflowState);
|
|
17
|
+
if (isShriramCaption) {
|
|
18
|
+
if (workflowState === workflowConstants_1.SHRIRAM_WORKFLOW_STATES.START || workflowState === workflowConstants_1.SHRIRAM_WORKFLOW_STATES.INITIATION)
|
|
19
|
+
normalizedState = workflowConstants_1.WORKFLOW_STATES.START;
|
|
20
|
+
else if (workflowState === workflowConstants_1.SHRIRAM_WORKFLOW_STATES.KYC)
|
|
21
|
+
normalizedState = workflowConstants_1.WORKFLOW_STATES.KYC;
|
|
22
|
+
else if (workflowState === workflowConstants_1.SHRIRAM_WORKFLOW_STATES.OCCUPATION)
|
|
23
|
+
normalizedState = workflowConstants_1.WORKFLOW_STATES.OCCUPATION;
|
|
24
|
+
else if (workflowState === workflowConstants_1.SHRIRAM_WORKFLOW_STATES.NOMINEE)
|
|
25
|
+
normalizedState = workflowConstants_1.WORKFLOW_STATES.NOMINEE;
|
|
26
|
+
else if (workflowState === workflowConstants_1.SHRIRAM_WORKFLOW_STATES.BANK_DETAILS)
|
|
27
|
+
normalizedState = workflowConstants_1.WORKFLOW_STATES.BANK_DETAILS;
|
|
28
|
+
else if (workflowState === workflowConstants_1.SHRIRAM_WORKFLOW_STATES.CREATE_FD)
|
|
29
|
+
normalizedState = workflowConstants_1.WORKFLOW_STATES.CREATE_FD;
|
|
30
|
+
else if (workflowState === workflowConstants_1.SHRIRAM_WORKFLOW_STATES.PAYMENT)
|
|
31
|
+
normalizedState = workflowConstants_1.WORKFLOW_STATES.PAYMENT;
|
|
32
|
+
else if (workflowState === workflowConstants_1.SHRIRAM_WORKFLOW_STATES.END)
|
|
33
|
+
normalizedState = workflowConstants_1.WORKFLOW_STATES.END;
|
|
34
|
+
}
|
|
35
|
+
else if (isMahindraCaption) {
|
|
36
|
+
if (workflowState === workflowConstants_1.MAHINDRA_WORKFLOW_STATES.START || workflowState === workflowConstants_1.MAHINDRA_WORKFLOW_STATES.INITIATION)
|
|
37
|
+
normalizedState = workflowConstants_1.WORKFLOW_STATES.START;
|
|
38
|
+
else if (workflowState === workflowConstants_1.MAHINDRA_WORKFLOW_STATES.KYC || workflowState === workflowConstants_1.MAHINDRA_WORKFLOW_STATES.AADHAAR_VERIFICATION) {
|
|
39
|
+
(0, helpers_1.navigate)('AadhaarVerification');
|
|
40
|
+
return;
|
|
41
|
+
}
|
|
42
|
+
else if (workflowState === workflowConstants_1.MAHINDRA_WORKFLOW_STATES.DEMOGRAPHIC_INFO)
|
|
43
|
+
normalizedState = workflowConstants_1.WORKFLOW_STATES.KYC; // Map demographic to KYC
|
|
44
|
+
else if (workflowState === workflowConstants_1.MAHINDRA_WORKFLOW_STATES.OCCUPATION)
|
|
45
|
+
normalizedState = workflowConstants_1.WORKFLOW_STATES.OCCUPATION;
|
|
46
|
+
else if (workflowState === workflowConstants_1.MAHINDRA_WORKFLOW_STATES.NOMINEE)
|
|
47
|
+
normalizedState = workflowConstants_1.WORKFLOW_STATES.NOMINEE;
|
|
48
|
+
else if (workflowState === workflowConstants_1.MAHINDRA_WORKFLOW_STATES.BANK_DETAILS)
|
|
49
|
+
normalizedState = workflowConstants_1.WORKFLOW_STATES.BANK_DETAILS;
|
|
50
|
+
else if (workflowState === workflowConstants_1.MAHINDRA_WORKFLOW_STATES.CREATE_FD)
|
|
51
|
+
normalizedState = workflowConstants_1.WORKFLOW_STATES.CREATE_FD;
|
|
52
|
+
else if (workflowState === workflowConstants_1.MAHINDRA_WORKFLOW_STATES.PAYMENT)
|
|
53
|
+
normalizedState = workflowConstants_1.WORKFLOW_STATES.PAYMENT;
|
|
54
|
+
else if (workflowState === workflowConstants_1.MAHINDRA_WORKFLOW_STATES.END)
|
|
55
|
+
normalizedState = workflowConstants_1.WORKFLOW_STATES.END;
|
|
56
|
+
}
|
|
57
|
+
switch (normalizedState) {
|
|
13
58
|
case workflowConstants_1.WORKFLOW_STATES.START:
|
|
14
59
|
case workflowConstants_1.WORKFLOW_STATES.INITIATION:
|
|
15
60
|
// No navigation required
|
|
16
61
|
break;
|
|
17
62
|
case workflowConstants_1.WORKFLOW_STATES.CREATE_FD:
|
|
18
|
-
//
|
|
19
|
-
(
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
63
|
+
// For Shriram, CREATE_FD means we should show payment if possible
|
|
64
|
+
if (isShriramCaption) {
|
|
65
|
+
(0, helpers_1.navigate)('PayNow', {
|
|
66
|
+
fdData: fdData ? {
|
|
67
|
+
companyName: fdData.name,
|
|
68
|
+
amount: fdData.amount,
|
|
69
|
+
fdRate: fdData.roi,
|
|
70
|
+
tenure: fdData.tenure,
|
|
71
|
+
interestPayout: ''
|
|
72
|
+
} : undefined
|
|
73
|
+
});
|
|
74
|
+
}
|
|
75
|
+
else {
|
|
76
|
+
// Default behavior for other providers
|
|
77
|
+
(0, helpers_1.navigate)('PayNow', {
|
|
78
|
+
fdData: fdData ? {
|
|
79
|
+
companyName: fdData.name,
|
|
80
|
+
amount: fdData.amount,
|
|
81
|
+
fdRate: fdData.roi,
|
|
82
|
+
tenure: fdData.tenure,
|
|
83
|
+
interestPayout: 'Yearly'
|
|
84
|
+
} : undefined
|
|
85
|
+
});
|
|
86
|
+
}
|
|
29
87
|
break;
|
|
30
88
|
case workflowConstants_1.WORKFLOW_STATES.OCCUPATION:
|
|
31
89
|
(0, helpers_1.navigate)('Employee');
|
|
@@ -34,7 +92,15 @@ async function handleWorkflowNavigation({ workflowState, investmentData, custome
|
|
|
34
92
|
(0, helpers_1.navigate)('NomineeDetail');
|
|
35
93
|
break;
|
|
36
94
|
case workflowConstants_1.WORKFLOW_STATES.BANK_DETAILS:
|
|
37
|
-
|
|
95
|
+
if (isShriramCaption) {
|
|
96
|
+
(0, helpers_1.navigate)('ExternalSDK', { sdkType: 'shriram', initialRouteName: 'BankDetail' });
|
|
97
|
+
}
|
|
98
|
+
else if (isMahindraCaption) {
|
|
99
|
+
(0, helpers_1.navigate)('ExternalSDK', { sdkType: 'mahindra', initialRouteName: 'BankDetail' });
|
|
100
|
+
}
|
|
101
|
+
else {
|
|
102
|
+
(0, helpers_1.navigate)('BankDetail');
|
|
103
|
+
}
|
|
38
104
|
break;
|
|
39
105
|
case workflowConstants_1.WORKFLOW_STATES.KYC:
|
|
40
106
|
(0, helpers_1.navigate)('ReviewKYC');
|
|
@@ -42,7 +108,6 @@ async function handleWorkflowNavigation({ workflowState, investmentData, custome
|
|
|
42
108
|
case workflowConstants_1.WORKFLOW_STATES.PAYMENT:
|
|
43
109
|
// Handle payment status check and navigation
|
|
44
110
|
if (transactionId) {
|
|
45
|
-
// Navigate to payment screen with transaction ID
|
|
46
111
|
(0, helpers_1.navigate)('Payment');
|
|
47
112
|
}
|
|
48
113
|
else {
|
|
@@ -52,24 +117,40 @@ async function handleWorkflowNavigation({ workflowState, investmentData, custome
|
|
|
52
117
|
amount: fdData.amount,
|
|
53
118
|
fdRate: fdData.roi,
|
|
54
119
|
tenure: fdData.tenure,
|
|
55
|
-
interestPayout: ''
|
|
120
|
+
interestPayout: ''
|
|
56
121
|
} : undefined
|
|
57
122
|
});
|
|
58
123
|
}
|
|
59
124
|
break;
|
|
60
125
|
case workflowConstants_1.WORKFLOW_STATES.END:
|
|
61
|
-
(
|
|
62
|
-
|
|
63
|
-
|
|
64
|
-
|
|
65
|
-
|
|
66
|
-
|
|
67
|
-
|
|
68
|
-
|
|
69
|
-
|
|
70
|
-
|
|
126
|
+
if (isShriramCaption) {
|
|
127
|
+
(0, helpers_1.navigate)('ExternalSDK', {
|
|
128
|
+
sdkType: 'shriram',
|
|
129
|
+
initialRouteName: 'PayNow',
|
|
130
|
+
fdData: fdData ? {
|
|
131
|
+
companyName: fdData.name,
|
|
132
|
+
amount: fdData.amount,
|
|
133
|
+
fdRate: fdData.roi,
|
|
134
|
+
tenure: fdData.tenure,
|
|
135
|
+
interestPayout: ''
|
|
136
|
+
} : undefined
|
|
137
|
+
});
|
|
138
|
+
}
|
|
139
|
+
else {
|
|
140
|
+
(0, helpers_1.navigate)('PaymentStatus', {
|
|
141
|
+
transactionId,
|
|
142
|
+
fdData: fdData ? {
|
|
143
|
+
companyName: fdData.name,
|
|
144
|
+
amount: fdData.amount,
|
|
145
|
+
fdRate: fdData.roi,
|
|
146
|
+
tenure: fdData.tenure,
|
|
147
|
+
interestPayout: ''
|
|
148
|
+
} : undefined
|
|
149
|
+
});
|
|
150
|
+
}
|
|
71
151
|
break;
|
|
72
152
|
default:
|
|
153
|
+
break;
|
|
73
154
|
}
|
|
74
155
|
}
|
|
75
156
|
/**
|
|
@@ -560,17 +560,7 @@ const AadhaarVerification = ({ onGoBack, onVerificationComplete, }) => {
|
|
|
560
560
|
(0, helpers_1.navigate)('ReviewKYC');
|
|
561
561
|
}
|
|
562
562
|
};
|
|
563
|
-
//
|
|
564
|
-
(0, react_1.useEffect)(() => {
|
|
565
|
-
if (react_native_1.Platform.OS !== 'android')
|
|
566
|
-
return;
|
|
567
|
-
const onHardwareBackPress = () => {
|
|
568
|
-
handleBackPress();
|
|
569
|
-
return true; // Prevent default behavior
|
|
570
|
-
};
|
|
571
|
-
const backHandler = react_native_1.BackHandler.addEventListener('hardwareBackPress', onHardwareBackPress);
|
|
572
|
-
return () => backHandler.remove();
|
|
573
|
-
}, [defultProviderId, workflowInstanceId, applicationId, entityId]);
|
|
563
|
+
// Removed screen-level hardware back handler to allow only header back button navigation
|
|
574
564
|
return (react_1.default.createElement(SafeAreaWrapper_1.default, { includeTop: false, bottomPadding: 25, statusBarColor: "#000000", statusBarStyle: "light-content" },
|
|
575
565
|
react_1.default.createElement(components_1.Header, { title: kyc_1.KYC_STRINGS.AADHAAR_VERIFICATION_TITLE, onBackPress: handleBackPress }),
|
|
576
566
|
react_1.default.createElement(react_native_1.KeyboardAvoidingView, { style: { flex: 1 }, behavior: react_native_1.Platform.OS === 'ios' ? 'padding' : 'height', keyboardVerticalOffset: react_native_1.Platform.OS === 'ios' ? 0 : 20 },
|
|
@@ -245,17 +245,7 @@ const AddBankAccount = ({ onGoBack, onContinue, onFindIFSC, initialData, selecte
|
|
|
245
245
|
const handleBackPress = () => {
|
|
246
246
|
(0, helpers_1.navigate)('BankDetail');
|
|
247
247
|
};
|
|
248
|
-
//
|
|
249
|
-
(0, react_1.useEffect)(() => {
|
|
250
|
-
if (react_native_1.Platform.OS !== 'android')
|
|
251
|
-
return;
|
|
252
|
-
const onHardwareBackPress = () => {
|
|
253
|
-
handleBackPress();
|
|
254
|
-
return true; // Prevent default behavior
|
|
255
|
-
};
|
|
256
|
-
const backHandler = react_native_1.BackHandler.addEventListener('hardwareBackPress', onHardwareBackPress);
|
|
257
|
-
return () => backHandler.remove();
|
|
258
|
-
}, []);
|
|
248
|
+
// Removed screen-level hardware back handler to allow only header back button navigation
|
|
259
249
|
return (react_1.default.createElement(SafeAreaWrapper_1.default, { includeTop: false, bottomPadding: 25, statusBarColor: "#000000", statusBarStyle: "light-content" },
|
|
260
250
|
react_1.default.createElement(components_1.Header, { title: bank_1.BANK_STRINGS.ADD_BANK_ACCOUNT_TITLE, onBackPress: handleBackPress, backgroundColor: colors.primary }),
|
|
261
251
|
react_1.default.createElement(react_native_1.KeyboardAvoidingView, { style: { flex: 1 }, behavior: react_native_1.Platform.OS === 'ios' ? 'padding' : undefined, keyboardVerticalOffset: react_native_1.Platform.OS === 'ios' ? 0 : 0 },
|
|
@@ -495,17 +495,7 @@ const BankDetail = ({ onGoBack, onContinue, onAddAccount, initialData }) => {
|
|
|
495
495
|
(0, helpers_1.navigate)('NomineeDetail');
|
|
496
496
|
}
|
|
497
497
|
};
|
|
498
|
-
//
|
|
499
|
-
(0, react_1.useEffect)(() => {
|
|
500
|
-
if (react_native_1.Platform.OS !== 'android')
|
|
501
|
-
return;
|
|
502
|
-
const onHardwareBackPress = () => {
|
|
503
|
-
handleBackPress();
|
|
504
|
-
return true; // Prevent default behavior
|
|
505
|
-
};
|
|
506
|
-
const backHandler = react_native_1.BackHandler.addEventListener('hardwareBackPress', onHardwareBackPress);
|
|
507
|
-
return () => backHandler.remove();
|
|
508
|
-
}, [defaultProviderId, workflowInstanceId, applicationId, entityId, appData === null || appData === void 0 ? void 0 : appData.userReferenceId]);
|
|
498
|
+
// Removed screen-level hardware back handler to allow only header back button navigation
|
|
509
499
|
return (react_1.default.createElement(SafeAreaWrapper_1.default, { includeTop: false, bottomPadding: 25, statusBarColor: "#000000", statusBarStyle: "light-content" },
|
|
510
500
|
react_1.default.createElement(components_1.Header, { title: bank_1.BANK_STRINGS.BANK_DETAILS_TITLE, onBackPress: handleBackPress, backgroundColor: colors.primary }),
|
|
511
501
|
react_1.default.createElement(react_native_1.KeyboardAvoidingView, { behavior: react_native_1.Platform.OS === 'ios' ? 'padding' : undefined, style: styles.keyboardAvoidingView, keyboardVerticalOffset: react_native_1.Platform.OS === 'ios' ? 0 : 0 },
|
package/lib/screens/Employee.js
CHANGED
|
@@ -458,17 +458,7 @@ const Employee = ({ onGoBack, onContinue, initialData }) => {
|
|
|
458
458
|
(0, helpers_1.navigate)('ReviewKYC');
|
|
459
459
|
}
|
|
460
460
|
};
|
|
461
|
-
//
|
|
462
|
-
(0, react_1.useEffect)(() => {
|
|
463
|
-
if (react_native_1.Platform.OS !== 'android')
|
|
464
|
-
return;
|
|
465
|
-
const onHardwareBackPress = () => {
|
|
466
|
-
handleBackPress();
|
|
467
|
-
return true; // Prevent default behavior
|
|
468
|
-
};
|
|
469
|
-
const backHandler = react_native_1.BackHandler.addEventListener('hardwareBackPress', onHardwareBackPress);
|
|
470
|
-
return () => backHandler.remove();
|
|
471
|
-
}, [defaultProviderId, workflowInstanceId, applicationId]);
|
|
461
|
+
// Removed screen-level hardware back handler to allow only header back button navigation
|
|
472
462
|
return (react_1.default.createElement(SafeAreaWrapper_1.default, { includeTop: false, bottomPadding: 25, statusBarColor: "#000000", statusBarStyle: "light-content" },
|
|
473
463
|
react_1.default.createElement(components_1.Header, { title: employee_1.EMPLOYEE_STRINGS.OCCUPATION_DETAILS_TITLE, onBackPress: handleBackPress, backgroundColor: colors.primary }),
|
|
474
464
|
react_1.default.createElement(react_native_1.KeyboardAvoidingView, { behavior: react_native_1.Platform.OS === 'ios' ? 'padding' : undefined, style: styles.keyboardAvoidingView, keyboardVerticalOffset: react_native_1.Platform.OS === 'ios' ? 0 : 0 },
|
|
@@ -535,24 +535,14 @@ const FDCalculator = ({ onGoBack, onNavigateToReviewKYC, fdData }) => {
|
|
|
535
535
|
}
|
|
536
536
|
return fallback;
|
|
537
537
|
}, [effectiveMasterData]);
|
|
538
|
-
//
|
|
539
|
-
(0, react_1.useEffect)(() => {
|
|
540
|
-
if (react_native_1.Platform.OS !== 'android')
|
|
541
|
-
return;
|
|
542
|
-
const onHardwareBackPress = () => {
|
|
543
|
-
(0, helpers_1.navigate)('FDList'); // Same as header back button
|
|
544
|
-
return true; // Prevent default behavior
|
|
545
|
-
};
|
|
546
|
-
const backHandler = react_native_1.BackHandler.addEventListener('hardwareBackPress', onHardwareBackPress);
|
|
547
|
-
return () => backHandler.remove();
|
|
548
|
-
}, []);
|
|
538
|
+
// Removed screen-level hardware back handler to allow only header back button navigation
|
|
549
539
|
return (react_1.default.createElement(SafeAreaWrapper_1.default, { includeTop: false, bottomPadding: 25, statusBarColor: "#000000", statusBarStyle: "light-content" },
|
|
550
540
|
react_1.default.createElement(react_native_1.View, { style: styles.header },
|
|
551
541
|
react_1.default.createElement(react_native_1.TouchableOpacity, { onPress: () => (0, helpers_1.navigate)('FDList'), style: styles.backButton },
|
|
552
542
|
react_1.default.createElement(react_native_1.Image, { source: { uri: base64Images_1.base64Images.backArrow }, style: [styles.backIcon, { tintColor: themeName === 'dark' ? colors.headerText : undefined }], resizeMode: "contain", width: 24, height: 24 }))),
|
|
553
543
|
react_1.default.createElement(react_native_1.View, { style: { flex: 1, justifyContent: 'space-between' } },
|
|
554
544
|
react_1.default.createElement(react_native_1.ScrollView, { style: styles.scrollContainer, contentContainerStyle: styles.scrollContent, showsVerticalScrollIndicator: false, onScrollBeginDrag: closeAllMenus, scrollEnabled: !(isOnboarding || isBooking), keyboardShouldPersistTaps: "handled", bounces: true, alwaysBounceVertical: true },
|
|
555
|
-
react_1.default.createElement(components_1.CompanyHeader, { companyName: (effectiveFdData === null || effectiveFdData === void 0 ? void 0 : effectiveFdData.name) || '', rating:
|
|
545
|
+
react_1.default.createElement(components_1.CompanyHeader, { companyName: (effectiveFdData === null || effectiveFdData === void 0 ? void 0 : effectiveFdData.name) || '', rating: "AAA" }),
|
|
556
546
|
react_1.default.createElement(components_1.AmountInput, { label: strings_1.FD_STRINGS.INVESTMENT_AMOUNT_LABEL, value: amount, onChangeText: handleAmountChange, onFocus: closeAllMenus, placeholder: strings_1.FD_STRINGS.AMOUNT_PLACEHOLDER, noteText: strings_1.FD_STRINGS.AMOUNT_NOTE, minMaxText: strings_1.FD_STRINGS.AMOUNT_MIN_MAX, errorMessage: amountError }),
|
|
557
547
|
react_1.default.createElement(components_1.DropdownSelector, { label: strings_1.FD_STRINGS.TENURE_LABEL, value: tenureValue || strings_1.COMMON_STRINGS.SELECT, onPress: () => {
|
|
558
548
|
react_native_1.Keyboard.dismiss();
|