@finspringinnovations/fixeddepositsdk 1.0.0

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.
Files changed (311) hide show
  1. package/README.md +128 -0
  2. package/lib/api/applicationApi.d.ts +1 -0
  3. package/lib/api/applicationApi.js +11 -0
  4. package/lib/api/bankApi.d.ts +352 -0
  5. package/lib/api/bankApi.js +54 -0
  6. package/lib/api/baseApi.d.ts +6 -0
  7. package/lib/api/baseApi.js +406 -0
  8. package/lib/api/customerApi.d.ts +855 -0
  9. package/lib/api/customerApi.js +241 -0
  10. package/lib/api/fdApi.d.ts +979 -0
  11. package/lib/api/fdApi.js +112 -0
  12. package/lib/api/fdCalculatorApi.d.ts +179 -0
  13. package/lib/api/fdCalculatorApi.js +36 -0
  14. package/lib/api/index.d.ts +14 -0
  15. package/lib/api/index.js +45 -0
  16. package/lib/api/interestRateApi.d.ts +585 -0
  17. package/lib/api/interestRateApi.js +101 -0
  18. package/lib/api/kycApi.d.ts +486 -0
  19. package/lib/api/kycApi.js +71 -0
  20. package/lib/api/masterDataApi.d.ts +158 -0
  21. package/lib/api/masterDataApi.js +35 -0
  22. package/lib/api/nomineeApi.d.ts +325 -0
  23. package/lib/api/nomineeApi.js +46 -0
  24. package/lib/api/onboardingApi.d.ts +192 -0
  25. package/lib/api/onboardingApi.js +41 -0
  26. package/lib/api/panApi.d.ts +0 -0
  27. package/lib/api/panApi.js +23 -0
  28. package/lib/api/paymentApi.d.ts +325 -0
  29. package/lib/api/paymentApi.js +46 -0
  30. package/lib/api/workflowApi.d.ts +654 -0
  31. package/lib/api/workflowApi.js +90 -0
  32. package/lib/assets/images/images.d.ts +6 -0
  33. package/lib/assets/images/images.js +12 -0
  34. package/lib/components/AadhaarInput.d.ts +13 -0
  35. package/lib/components/AadhaarInput.js +47 -0
  36. package/lib/components/ActionButton.d.ts +12 -0
  37. package/lib/components/ActionButton.js +87 -0
  38. package/lib/components/ActiveFDCard.d.ts +18 -0
  39. package/lib/components/ActiveFDCard.js +116 -0
  40. package/lib/components/AmountInput.d.ts +20 -0
  41. package/lib/components/AmountInput.js +142 -0
  42. package/lib/components/CheckboxOption.d.ts +11 -0
  43. package/lib/components/CheckboxOption.js +41 -0
  44. package/lib/components/CompanyHeader.d.ts +7 -0
  45. package/lib/components/CompanyHeader.js +59 -0
  46. package/lib/components/DropdownSelector.d.ts +9 -0
  47. package/lib/components/DropdownSelector.js +49 -0
  48. package/lib/components/EmptyState.d.ts +17 -0
  49. package/lib/components/EmptyState.js +44 -0
  50. package/lib/components/ErrorDisplay.d.ts +17 -0
  51. package/lib/components/ErrorDisplay.js +69 -0
  52. package/lib/components/FAQItem.d.ts +9 -0
  53. package/lib/components/FAQItem.js +52 -0
  54. package/lib/components/FDCard.d.ts +23 -0
  55. package/lib/components/FDCard.js +116 -0
  56. package/lib/components/FormDropdown.d.ts +18 -0
  57. package/lib/components/FormDropdown.js +155 -0
  58. package/lib/components/FormSection.d.ts +14 -0
  59. package/lib/components/FormSection.js +38 -0
  60. package/lib/components/Header.d.ts +14 -0
  61. package/lib/components/Header.js +52 -0
  62. package/lib/components/IFSCSearchResultCard.d.ts +13 -0
  63. package/lib/components/IFSCSearchResultCard.js +70 -0
  64. package/lib/components/InfoBox.d.ts +8 -0
  65. package/lib/components/InfoBox.js +39 -0
  66. package/lib/components/InterestRateCard.d.ts +8 -0
  67. package/lib/components/InterestRateCard.js +46 -0
  68. package/lib/components/LoadingIndicator.d.ts +12 -0
  69. package/lib/components/LoadingIndicator.js +30 -0
  70. package/lib/components/OTPInput.d.ts +17 -0
  71. package/lib/components/OTPInput.js +144 -0
  72. package/lib/components/PaymentDetailsCard.d.ts +20 -0
  73. package/lib/components/PaymentDetailsCard.js +68 -0
  74. package/lib/components/PendingFDBottomSheet.d.ts +19 -0
  75. package/lib/components/PendingFDBottomSheet.js +122 -0
  76. package/lib/components/SafeAreaWrapper.d.ts +13 -0
  77. package/lib/components/SafeAreaWrapper.js +41 -0
  78. package/lib/components/ScreenHeader.d.ts +11 -0
  79. package/lib/components/ScreenHeader.js +46 -0
  80. package/lib/components/StatusDisplay.d.ts +15 -0
  81. package/lib/components/StatusDisplay.js +88 -0
  82. package/lib/components/TextFieldWithLabel.d.ts +46 -0
  83. package/lib/components/TextFieldWithLabel.js +326 -0
  84. package/lib/components/TrustBox.d.ts +8 -0
  85. package/lib/components/TrustBox.js +46 -0
  86. package/lib/components/ValidationErrorAlert.d.ts +23 -0
  87. package/lib/components/ValidationErrorAlert.js +39 -0
  88. package/lib/components/ValidationMessage.d.ts +9 -0
  89. package/lib/components/ValidationMessage.js +98 -0
  90. package/lib/components/index.d.ts +35 -0
  91. package/lib/components/index.js +64 -0
  92. package/lib/config/apiConfig.d.ts +34 -0
  93. package/lib/config/apiConfig.js +158 -0
  94. package/lib/config/appDataConfig.d.ts +159 -0
  95. package/lib/config/appDataConfig.js +310 -0
  96. package/lib/config/encryptionConfig.d.ts +21 -0
  97. package/lib/config/encryptionConfig.js +61 -0
  98. package/lib/config/workflowConstants.d.ts +62 -0
  99. package/lib/config/workflowConstants.js +63 -0
  100. package/lib/constants/strings/bank.d.ts +72 -0
  101. package/lib/constants/strings/bank.js +86 -0
  102. package/lib/constants/strings/base64Images.d.ts +26 -0
  103. package/lib/constants/strings/base64Images.js +29 -0
  104. package/lib/constants/strings/common.d.ts +53 -0
  105. package/lib/constants/strings/common.js +62 -0
  106. package/lib/constants/strings/employee.d.ts +61 -0
  107. package/lib/constants/strings/employee.js +77 -0
  108. package/lib/constants/strings/faq.d.ts +14 -0
  109. package/lib/constants/strings/faq.js +20 -0
  110. package/lib/constants/strings/fd.d.ts +122 -0
  111. package/lib/constants/strings/fd.js +151 -0
  112. package/lib/constants/strings/home.d.ts +49 -0
  113. package/lib/constants/strings/home.js +62 -0
  114. package/lib/constants/strings/index.d.ts +16 -0
  115. package/lib/constants/strings/index.js +44 -0
  116. package/lib/constants/strings/kyc.d.ts +80 -0
  117. package/lib/constants/strings/kyc.js +94 -0
  118. package/lib/constants/strings/nominee.d.ts +64 -0
  119. package/lib/constants/strings/nominee.js +81 -0
  120. package/lib/hooks/useAuth.d.ts +25 -0
  121. package/lib/hooks/useAuth.js +39 -0
  122. package/lib/hooks/useFDData.d.ts +11 -0
  123. package/lib/hooks/useFDData.js +40 -0
  124. package/lib/index.d.ts +48 -0
  125. package/lib/index.js +161 -0
  126. package/lib/navigation/RootNavigator.d.ts +9 -0
  127. package/lib/navigation/RootNavigator.js +459 -0
  128. package/lib/navigation/SimpleNavigator.d.ts +11 -0
  129. package/lib/navigation/SimpleNavigator.js +114 -0
  130. package/lib/navigation/helpers.d.ts +11 -0
  131. package/lib/navigation/helpers.js +83 -0
  132. package/lib/navigation/index.d.ts +17 -0
  133. package/lib/navigation/index.js +42 -0
  134. package/lib/navigation/types.d.ts +139 -0
  135. package/lib/navigation/types.js +2 -0
  136. package/lib/navigation/workflowNavigator.d.ts +22 -0
  137. package/lib/navigation/workflowNavigator.js +104 -0
  138. package/lib/providers/ApiProvider.d.ts +7 -0
  139. package/lib/providers/ApiProvider.js +16 -0
  140. package/lib/providers/MasterDataProvider.d.ts +10 -0
  141. package/lib/providers/MasterDataProvider.js +54 -0
  142. package/lib/screens/AadhaarVerification.d.ts +7 -0
  143. package/lib/screens/AadhaarVerification.js +627 -0
  144. package/lib/screens/AddBankAccount.d.ts +22 -0
  145. package/lib/screens/AddBankAccount.js +381 -0
  146. package/lib/screens/BankDetail.d.ts +16 -0
  147. package/lib/screens/BankDetail.js +596 -0
  148. package/lib/screens/Employee.d.ts +18 -0
  149. package/lib/screens/Employee.js +594 -0
  150. package/lib/screens/FDCalculator.d.ts +18 -0
  151. package/lib/screens/FDCalculator.js +767 -0
  152. package/lib/screens/FDList.d.ts +28 -0
  153. package/lib/screens/FDList.js +1853 -0
  154. package/lib/screens/FindIFSC.d.ts +16 -0
  155. package/lib/screens/FindIFSC.js +248 -0
  156. package/lib/screens/NomineeDetail.d.ts +17 -0
  157. package/lib/screens/NomineeDetail.js +592 -0
  158. package/lib/screens/PayNow.d.ts +14 -0
  159. package/lib/screens/PayNow.js +230 -0
  160. package/lib/screens/Payment.d.ts +11 -0
  161. package/lib/screens/Payment.js +191 -0
  162. package/lib/screens/PaymentStatus.d.ts +16 -0
  163. package/lib/screens/PaymentStatus.js +431 -0
  164. package/lib/screens/ReviewKYC.d.ts +23 -0
  165. package/lib/screens/ReviewKYC.js +727 -0
  166. package/lib/state/paymentSession.d.ts +8 -0
  167. package/lib/state/paymentSession.js +13 -0
  168. package/lib/store/fdListSelectedSlice.d.ts +21 -0
  169. package/lib/store/fdListSelectedSlice.js +26 -0
  170. package/lib/store/hooks.d.ts +8 -0
  171. package/lib/store/hooks.js +8 -0
  172. package/lib/store/index.d.ts +3 -0
  173. package/lib/store/index.js +8 -0
  174. package/lib/store/onboardingSlice.d.ts +12 -0
  175. package/lib/store/onboardingSlice.js +32 -0
  176. package/lib/store/store.d.ts +13 -0
  177. package/lib/store/store.js +27 -0
  178. package/lib/theme/ThemeContext.d.ts +210 -0
  179. package/lib/theme/ThemeContext.js +92 -0
  180. package/lib/theme/colors.d.ts +80 -0
  181. package/lib/theme/colors.js +85 -0
  182. package/lib/theme/index.d.ts +35 -0
  183. package/lib/theme/index.js +78 -0
  184. package/lib/theme/shadows.d.ts +53 -0
  185. package/lib/theme/shadows.js +58 -0
  186. package/lib/theme/typography.d.ts +134 -0
  187. package/lib/theme/typography.js +143 -0
  188. package/lib/types/dataTypes.d.ts +34 -0
  189. package/lib/types/dataTypes.js +2 -0
  190. package/lib/types/workflowTypes.d.ts +2 -0
  191. package/lib/types/workflowTypes.js +2 -0
  192. package/lib/utils/apiLogger.d.ts +48 -0
  193. package/lib/utils/apiLogger.js +105 -0
  194. package/lib/utils/encryption.d.ts +28 -0
  195. package/lib/utils/encryption.js +113 -0
  196. package/lib/utils/getFDData.d.ts +48 -0
  197. package/lib/utils/getFDData.js +145 -0
  198. package/lib/utils/globalData.d.ts +2 -0
  199. package/lib/utils/globalData.js +10 -0
  200. package/package.json +51 -0
  201. package/src/api/applicationApi.ts +12 -0
  202. package/src/api/bankApi.ts +42 -0
  203. package/src/api/baseApi.ts +463 -0
  204. package/src/api/customerApi.ts +324 -0
  205. package/src/api/fdApi.ts +150 -0
  206. package/src/api/fdCalculatorApi.ts +41 -0
  207. package/src/api/index.ts +29 -0
  208. package/src/api/interestRateApi.ts +143 -0
  209. package/src/api/kycApi.ts +63 -0
  210. package/src/api/masterDataApi.ts +37 -0
  211. package/src/api/nomineeApi.ts +34 -0
  212. package/src/api/onboardingApi.ts +64 -0
  213. package/src/api/panApi.ts +25 -0
  214. package/src/api/paymentApi.ts +34 -0
  215. package/src/api/workflowApi.ts +94 -0
  216. package/src/assets/images/Mahindra.png +0 -0
  217. package/src/assets/images/arrow-filled.png +0 -0
  218. package/src/assets/images/arrow-left.png +0 -0
  219. package/src/assets/images/backicon.png +0 -0
  220. package/src/assets/images/calendar.png +0 -0
  221. package/src/assets/images/chevron-down.png +0 -0
  222. package/src/assets/images/chevron-down@2x.png +0 -0
  223. package/src/assets/images/chevron-down@3x.png +0 -0
  224. package/src/assets/images/images.js +10 -0
  225. package/src/assets/images/shriram_logo.png +0 -0
  226. package/src/components/AadhaarInput.tsx +91 -0
  227. package/src/components/ActionButton.tsx +129 -0
  228. package/src/components/ActiveFDCard.tsx +188 -0
  229. package/src/components/AmountInput.tsx +217 -0
  230. package/src/components/CheckboxOption.tsx +93 -0
  231. package/src/components/CompanyHeader.tsx +80 -0
  232. package/src/components/DropdownSelector.tsx +77 -0
  233. package/src/components/EmptyState.tsx +109 -0
  234. package/src/components/ErrorDisplay.tsx +135 -0
  235. package/src/components/FAQItem.tsx +90 -0
  236. package/src/components/FDCard.tsx +186 -0
  237. package/src/components/FormDropdown.tsx +214 -0
  238. package/src/components/FormSection.tsx +86 -0
  239. package/src/components/Header.tsx +110 -0
  240. package/src/components/IFSCSearchResultCard.tsx +139 -0
  241. package/src/components/InfoBox.tsx +55 -0
  242. package/src/components/InterestRateCard.tsx +77 -0
  243. package/src/components/LoadingIndicator.tsx +63 -0
  244. package/src/components/OTPInput.tsx +213 -0
  245. package/src/components/PaymentDetailsCard.tsx +120 -0
  246. package/src/components/PendingFDBottomSheet.tsx +237 -0
  247. package/src/components/README.md +210 -0
  248. package/src/components/SafeAreaWrapper.tsx +68 -0
  249. package/src/components/ScreenHeader.tsx +83 -0
  250. package/src/components/StatusDisplay.tsx +139 -0
  251. package/src/components/TextFieldWithLabel.tsx +502 -0
  252. package/src/components/TrustBox.tsx +63 -0
  253. package/src/components/ValidationErrorAlert.tsx +57 -0
  254. package/src/components/ValidationMessage.tsx +134 -0
  255. package/src/components/index.tsx +47 -0
  256. package/src/config/apiConfig.ts +217 -0
  257. package/src/config/appDataConfig.ts +358 -0
  258. package/src/config/encryptionConfig.ts +65 -0
  259. package/src/config/workflowConstants.ts +70 -0
  260. package/src/constants/strings/README.md +146 -0
  261. package/src/constants/strings/bank.ts +92 -0
  262. package/src/constants/strings/base64Images.ts +31 -0
  263. package/src/constants/strings/common.ts +63 -0
  264. package/src/constants/strings/employee.ts +85 -0
  265. package/src/constants/strings/faq.ts +23 -0
  266. package/src/constants/strings/fd.ts +172 -0
  267. package/src/constants/strings/home.ts +67 -0
  268. package/src/constants/strings/index.ts +21 -0
  269. package/src/constants/strings/kyc.ts +100 -0
  270. package/src/constants/strings/nominee.ts +90 -0
  271. package/src/hooks/useAuth.ts +42 -0
  272. package/src/hooks/useFDData.ts +48 -0
  273. package/src/index.tsx +139 -0
  274. package/src/navigation/RootNavigator.tsx +687 -0
  275. package/src/navigation/SimpleNavigator.tsx +123 -0
  276. package/src/navigation/helpers.ts +85 -0
  277. package/src/navigation/index.tsx +84 -0
  278. package/src/navigation/types.ts +146 -0
  279. package/src/navigation/workflowNavigator.ts +131 -0
  280. package/src/providers/ApiProvider.tsx +23 -0
  281. package/src/providers/MasterDataProvider.tsx +30 -0
  282. package/src/screens/AadhaarVerification.tsx +809 -0
  283. package/src/screens/AddBankAccount.tsx +541 -0
  284. package/src/screens/BankDetail.tsx +826 -0
  285. package/src/screens/Employee.tsx +822 -0
  286. package/src/screens/FDCalculator.tsx +1002 -0
  287. package/src/screens/FDList.tsx +2199 -0
  288. package/src/screens/FindIFSC.tsx +332 -0
  289. package/src/screens/NomineeDetail.tsx +800 -0
  290. package/src/screens/PayNow.tsx +282 -0
  291. package/src/screens/Payment.tsx +224 -0
  292. package/src/screens/PaymentStatus.tsx +595 -0
  293. package/src/screens/ReviewKYC.tsx +1062 -0
  294. package/src/state/paymentSession.ts +13 -0
  295. package/src/store/fdListSelectedSlice.ts +42 -0
  296. package/src/store/hooks.ts +6 -0
  297. package/src/store/index.ts +3 -0
  298. package/src/store/onboardingSlice.ts +37 -0
  299. package/src/store/store.ts +27 -0
  300. package/src/theme/ThemeContext.tsx +84 -0
  301. package/src/theme/colors.ts +90 -0
  302. package/src/theme/index.ts +85 -0
  303. package/src/theme/shadows.ts +61 -0
  304. package/src/theme/typography.ts +151 -0
  305. package/src/types/dataTypes.ts +37 -0
  306. package/src/types/env.d.ts +93 -0
  307. package/src/types/workflowTypes.ts +12 -0
  308. package/src/utils/apiLogger.ts +166 -0
  309. package/src/utils/encryption.ts +159 -0
  310. package/src/utils/getFDData.ts +165 -0
  311. package/src/utils/globalData.ts +7 -0
@@ -0,0 +1,90 @@
1
+ "use strict";
2
+ var __rest = (this && this.__rest) || function (s, e) {
3
+ var t = {};
4
+ for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0)
5
+ t[p] = s[p];
6
+ if (s != null && typeof Object.getOwnPropertySymbols === "function")
7
+ for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) {
8
+ if (e.indexOf(p[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i]))
9
+ t[p[i]] = s[p[i]];
10
+ }
11
+ return t;
12
+ };
13
+ Object.defineProperty(exports, "__esModule", { value: true });
14
+ exports.usePreviousStateMutation = exports.useUpdateStateMutation = exports.useUpdateTaskMutation = exports.useTerminateWorkflowMutation = exports.workflowApi = void 0;
15
+ const baseApi_1 = require("./baseApi");
16
+ exports.workflowApi = baseApi_1.baseApi.injectEndpoints({
17
+ endpoints: (builder) => ({
18
+ terminateWorkflow: builder.mutation({
19
+ query: ({ providerId, workflowInstanceId, entityId, applicationId }) => {
20
+ const requestConfig = {
21
+ url: 'workflow/terminate',
22
+ method: 'POST',
23
+ headers: {
24
+ provider: providerId || '{{shriramprovider}}',
25
+ workflowInstanceId: workflowInstanceId,
26
+ applicationId: applicationId,
27
+ },
28
+ body: {
29
+ workflowInstanceId,
30
+ entityid: entityId,
31
+ applicationId,
32
+ },
33
+ };
34
+ return requestConfig;
35
+ },
36
+ }),
37
+ updateTask: builder.mutation({
38
+ query: (body) => {
39
+ const { providerId, workflowInstanceId, userreferenceid, applicationid, entityid } = body, requestBody = __rest(body, ["providerId", "workflowInstanceId", "userreferenceid", "applicationid", "entityid"]);
40
+ return {
41
+ url: 'taskflow/update',
42
+ method: 'POST',
43
+ body: Object.assign(Object.assign({}, requestBody), { workflowInstanceId: workflowInstanceId }),
44
+ headers: {
45
+ provider: providerId || '{{shriramprovider}}',
46
+ workflowInstanceId: workflowInstanceId || '{{workflowInstanceId}}',
47
+ userreferenceid: userreferenceid || '{{userreferenceid}}',
48
+ applicationid: applicationid || '{{applicationid}}',
49
+ entityid: entityid || '{{entityid}}',
50
+ },
51
+ };
52
+ },
53
+ }),
54
+ updateState: builder.mutation({
55
+ query: (body) => {
56
+ const { providerId, workflowInstanceId, userreferenceid, applicationid, entityid } = body;
57
+ return {
58
+ url: 'workflow/update/state',
59
+ method: 'POST',
60
+ body: {},
61
+ headers: {
62
+ provider: providerId || '{{shriramprovider}}',
63
+ workflowInstanceId: workflowInstanceId || '{{workflowInstanceId}}',
64
+ userreferenceid: userreferenceid || '{{userreferenceid}}',
65
+ applicationid: applicationid || '{{applicationid}}',
66
+ entityid: entityid || '{{entityid}}',
67
+ },
68
+ };
69
+ },
70
+ }),
71
+ previousState: builder.mutation({
72
+ query: (body) => {
73
+ const { providerId, workflowInstanceId, userreferenceid, applicationid, entityid } = body;
74
+ return {
75
+ url: 'previous/state',
76
+ method: 'POST',
77
+ body: {}, // No body parameters
78
+ headers: {
79
+ provider: providerId || '{{shriramprovider}}',
80
+ workflowInstanceId: workflowInstanceId || '{{workflowInstanceId}}',
81
+ userreferenceid: userreferenceid || '{{userreferenceid}}',
82
+ applicationid: applicationid || '{{applicationid}}',
83
+ entityid: entityid || '{{entityid}}',
84
+ },
85
+ };
86
+ },
87
+ }),
88
+ }),
89
+ });
90
+ exports.useTerminateWorkflowMutation = exports.workflowApi.useTerminateWorkflowMutation, exports.useUpdateTaskMutation = exports.workflowApi.useUpdateTaskMutation, exports.useUpdateStateMutation = exports.workflowApi.useUpdateStateMutation, exports.usePreviousStateMutation = exports.workflowApi.usePreviousStateMutation;
@@ -0,0 +1,6 @@
1
+ export namespace images {
2
+ let arrowLeft: any;
3
+ let chevronDown: any;
4
+ let shriramLogo: any;
5
+ let mahindraLogo: any;
6
+ }
@@ -0,0 +1,12 @@
1
+ "use strict";
2
+ // export const images = {
3
+ // arrowLeft: require('./chevron-down.png'),
4
+ // }
5
+ Object.defineProperty(exports, "__esModule", { value: true });
6
+ exports.images = void 0;
7
+ exports.images = {
8
+ arrowLeft: require('./arrow-left.png'),
9
+ chevronDown: require('./chevron-down.png'),
10
+ shriramLogo: require('./shriram_logo.png'),
11
+ mahindraLogo: require('./Mahindra.png'),
12
+ };
@@ -0,0 +1,13 @@
1
+ import React from 'react';
2
+ export interface AadhaarInputProps {
3
+ label: string;
4
+ value: string;
5
+ onChangeText: (text: string) => void;
6
+ placeholder?: string;
7
+ isSuccess?: boolean;
8
+ isLoading?: boolean;
9
+ editable?: boolean;
10
+ maxLength?: number;
11
+ }
12
+ declare const AadhaarInput: React.FC<AadhaarInputProps>;
13
+ export default AadhaarInput;
@@ -0,0 +1,47 @@
1
+ "use strict";
2
+ var __importDefault = (this && this.__importDefault) || function (mod) {
3
+ return (mod && mod.__esModule) ? mod : { "default": mod };
4
+ };
5
+ Object.defineProperty(exports, "__esModule", { value: true });
6
+ const react_1 = __importDefault(require("react"));
7
+ const react_native_1 = require("react-native");
8
+ const ThemeContext_1 = require("../theme/ThemeContext");
9
+ const theme_1 = require("../theme");
10
+ const AadhaarInput = ({ label, value, onChangeText, placeholder = "Aadhaar Card", isSuccess = false, isLoading = false, editable = true, maxLength = 14, }) => {
11
+ const colors = (0, ThemeContext_1.useColors)();
12
+ const typography = (0, ThemeContext_1.useTypography)();
13
+ const { themeName } = (0, ThemeContext_1.useTheme)();
14
+ const styles = createStyles(colors, typography, themeName);
15
+ return (react_1.default.createElement(react_native_1.View, null,
16
+ react_1.default.createElement(react_native_1.Text, { style: styles.label }, label),
17
+ react_1.default.createElement(react_native_1.View, { style: [
18
+ styles.inputContainer,
19
+ isSuccess && styles.successInput
20
+ ] },
21
+ react_1.default.createElement(react_native_1.TextInput, { style: styles.input, placeholder: placeholder, placeholderTextColor: themeName === 'dark' ? colors.placeholderColor : colors.textLight, value: value, onChangeText: onChangeText, keyboardType: "numeric", maxLength: maxLength, editable: editable && !isLoading }))));
22
+ };
23
+ const createStyles = (colors, typography, themeName) => react_native_1.StyleSheet.create({
24
+ label: Object.assign(Object.assign({}, typography.styles.bodyLarge), { color: colors.textLight, marginBottom: 8, fontWeight: '500' }),
25
+ inputContainer: {
26
+ borderWidth: themeName === 'dark' ? 1 : 0.5,
27
+ borderColor: themeName === 'dark' ? colors.inputBorder : (0, theme_1.getBorderColor)({ colors }, 0.36),
28
+ borderRadius: themeName === 'dark' ? 5 : 25,
29
+ backgroundColor: themeName === 'dark' ? colors.inputBackground : 'white',
30
+ marginBottom: 8,
31
+ height: 50,
32
+ },
33
+ successInput: {
34
+ borderColor: colors.success,
35
+ borderWidth: 1,
36
+ shadowColor: colors.success,
37
+ shadowOffset: {
38
+ width: 0,
39
+ height: 2,
40
+ },
41
+ shadowOpacity: 0.1,
42
+ shadowRadius: 4,
43
+ elevation: 3,
44
+ },
45
+ input: Object.assign(Object.assign({}, typography.styles.bodyLarge), { paddingHorizontal: 16, paddingVertical: 0, color: colors.text, height: '100%', textAlignVertical: 'center' }),
46
+ });
47
+ exports.default = AadhaarInput;
@@ -0,0 +1,12 @@
1
+ import React from 'react';
2
+ export interface ActionButtonProps {
3
+ title: string;
4
+ onPress: () => void;
5
+ disabled?: boolean;
6
+ loading?: boolean;
7
+ variant?: 'primary' | 'secondary';
8
+ style?: any;
9
+ textStyle?: any;
10
+ }
11
+ declare const ActionButton: React.FC<ActionButtonProps>;
12
+ export default ActionButton;
@@ -0,0 +1,87 @@
1
+ "use strict";
2
+ var __importDefault = (this && this.__importDefault) || function (mod) {
3
+ return (mod && mod.__esModule) ? mod : { "default": mod };
4
+ };
5
+ Object.defineProperty(exports, "__esModule", { value: true });
6
+ const react_1 = __importDefault(require("react"));
7
+ const react_native_1 = require("react-native");
8
+ const ThemeContext_1 = require("../theme/ThemeContext");
9
+ const ActionButton = ({ title, onPress, disabled = false, loading = false, variant = 'primary', style, textStyle, }) => {
10
+ const colors = (0, ThemeContext_1.useColors)();
11
+ const typography = (0, ThemeContext_1.useTypography)();
12
+ const { themeName } = (0, ThemeContext_1.useTheme)();
13
+ const styles = createStyles(colors, typography, themeName);
14
+ const isDisabled = disabled || loading;
15
+ const getButtonStyle = () => {
16
+ const baseStyle = [styles.button];
17
+ if (variant === 'primary') {
18
+ baseStyle.push(isDisabled ? styles.primaryDisabled : styles.primaryEnabled);
19
+ }
20
+ else {
21
+ baseStyle.push(isDisabled ? styles.secondaryDisabled : styles.secondaryEnabled);
22
+ }
23
+ if (style) {
24
+ baseStyle.push(style);
25
+ }
26
+ return baseStyle;
27
+ };
28
+ const getTextStyle = () => {
29
+ const baseStyle = [styles.buttonText];
30
+ if (variant === 'primary') {
31
+ baseStyle.push(isDisabled ? styles.primaryTextDisabled : styles.primaryTextEnabled);
32
+ }
33
+ else {
34
+ baseStyle.push(isDisabled ? styles.secondaryTextDisabled : styles.secondaryTextEnabled);
35
+ }
36
+ if (textStyle) {
37
+ baseStyle.push(textStyle);
38
+ }
39
+ return baseStyle;
40
+ };
41
+ return (react_1.default.createElement(react_native_1.TouchableOpacity, { style: getButtonStyle(), onPress: onPress, disabled: isDisabled, activeOpacity: isDisabled ? 1 : 0.7 }, loading ? (react_1.default.createElement(react_native_1.View, { style: { flexDirection: 'row', alignItems: 'center', justifyContent: 'center' } },
42
+ react_1.default.createElement(react_native_1.ActivityIndicator, { size: "small", color: themeName === 'dark' ? colors.buttonTextColor : colors.background, style: { marginRight: 8 } }),
43
+ react_1.default.createElement(react_native_1.Text, { style: getTextStyle() }, "Loading..."))) : (react_1.default.createElement(react_native_1.Text, { style: getTextStyle() }, title))));
44
+ };
45
+ const createStyles = (colors, typography, themeName) => react_native_1.StyleSheet.create({
46
+ button: {
47
+ marginHorizontal: 16,
48
+ marginBottom: 20,
49
+ marginTop: 15,
50
+ padding: 20,
51
+ borderRadius: themeName === 'dark' ? 10 : 30,
52
+ alignItems: 'center',
53
+ justifyContent: 'center',
54
+ height: themeName === 'dark' ? 50 : 56,
55
+ width: 330,
56
+ alignSelf: 'center',
57
+ },
58
+ primaryEnabled: {
59
+ backgroundColor: themeName === 'dark' ? colors.buttonBackground : colors.headerBg,
60
+ },
61
+ primaryDisabled: {
62
+ backgroundColor: '#909090',
63
+ },
64
+ secondaryEnabled: {
65
+ backgroundColor: colors.surface,
66
+ borderWidth: 1,
67
+ borderColor: colors.border,
68
+ },
69
+ secondaryDisabled: {
70
+ borderColor: colors.border,
71
+ opacity: 0.5,
72
+ },
73
+ buttonText: Object.assign(Object.assign({}, typography.styles.button), { fontWeight: '600', height: 20 }),
74
+ primaryTextEnabled: {
75
+ color: themeName === 'dark' ? colors.buttonTextColor : colors.background,
76
+ },
77
+ primaryTextDisabled: {
78
+ color: colors.background,
79
+ },
80
+ secondaryTextEnabled: {
81
+ color: colors.text,
82
+ },
83
+ secondaryTextDisabled: {
84
+ color: colors.textLight,
85
+ },
86
+ });
87
+ exports.default = ActionButton;
@@ -0,0 +1,18 @@
1
+ import React from 'react';
2
+ interface ActiveFDCardProps {
3
+ name: string;
4
+ invested: number;
5
+ value: number;
6
+ returns: number;
7
+ maturityDate: string;
8
+ /** Company logo: 'shriram' | 'mahindra' – shows in card header when set */
9
+ logoType?: 'shriram' | 'mahindra';
10
+ customStyles?: {
11
+ container?: object;
12
+ name?: object;
13
+ amount?: object;
14
+ returns?: object;
15
+ };
16
+ }
17
+ declare const ActiveFDCard: React.FC<ActiveFDCardProps>;
18
+ export default ActiveFDCard;
@@ -0,0 +1,116 @@
1
+ "use strict";
2
+ var __importDefault = (this && this.__importDefault) || function (mod) {
3
+ return (mod && mod.__esModule) ? mod : { "default": mod };
4
+ };
5
+ var _a;
6
+ Object.defineProperty(exports, "__esModule", { value: true });
7
+ const react_1 = __importDefault(require("react"));
8
+ const react_native_1 = require("react-native");
9
+ const ThemeContext_1 = require("../theme/ThemeContext");
10
+ const theme_1 = require("../theme");
11
+ const base64Images_1 = require("../constants/strings/base64Images");
12
+ // Enable Fast Refresh for this module
13
+ if (__DEV__) {
14
+ // @ts-ignore
15
+ (_a = module.hot) === null || _a === void 0 ? void 0 : _a.accept();
16
+ }
17
+ const ActiveFDCard = ({ name, invested, value, returns, maturityDate, logoType, customStyles = {}, }) => {
18
+ const colors = (0, ThemeContext_1.useColors)();
19
+ const typography = (0, ThemeContext_1.useTypography)();
20
+ const spacing = (0, ThemeContext_1.useSpacing)();
21
+ const shadows = (0, ThemeContext_1.useShadows)();
22
+ const { themeName } = (0, ThemeContext_1.useTheme)();
23
+ const styles = createStyles(colors, typography, spacing, shadows, themeName);
24
+ const formatCurrency = (amount) => {
25
+ return amount.toLocaleString('en-IN');
26
+ };
27
+ const logoUri = logoType === 'shriram'
28
+ ? base64Images_1.base64Images.shriramLogo
29
+ : logoType === 'mahindra'
30
+ ? base64Images_1.base64Images.mahindraLogo
31
+ : undefined;
32
+ return (react_1.default.createElement(react_native_1.View, { style: [styles.activeFDCard, customStyles.container] },
33
+ react_1.default.createElement(react_native_1.View, { style: styles.activeFDHeader },
34
+ logoUri != null && (react_1.default.createElement(react_native_1.View, { style: styles.logoContainer },
35
+ react_1.default.createElement(react_native_1.Image, { source: { uri: logoUri }, style: styles.logoImage, resizeMode: "contain" }))),
36
+ react_1.default.createElement(react_native_1.Text, { style: [styles.activeFDName, customStyles.name] }, name),
37
+ react_1.default.createElement(react_native_1.View, { style: styles.maturityContainer },
38
+ react_1.default.createElement(react_native_1.Text, { style: styles.maturityLabel }, "Maturity Date"),
39
+ react_1.default.createElement(react_native_1.Text, { style: styles.maturityDate }, maturityDate))),
40
+ react_1.default.createElement(react_native_1.View, { style: styles.activeFDDetails },
41
+ react_1.default.createElement(react_native_1.View, { style: styles.activeFDLeft },
42
+ react_1.default.createElement(react_native_1.Text, { style: styles.activeFDLabel }, "Invested"),
43
+ react_1.default.createElement(react_native_1.Text, { style: [styles.activeFDAmount, customStyles.amount] },
44
+ "\u20B9 ",
45
+ formatCurrency(invested))),
46
+ react_1.default.createElement(react_native_1.View, { style: styles.activeFDRight },
47
+ react_1.default.createElement(react_native_1.Text, { style: styles.activeFDLabel }, "Value"),
48
+ react_1.default.createElement(react_native_1.Text, { style: [styles.activeFDAmount, customStyles.amount] },
49
+ "\u20B9 ",
50
+ formatCurrency(value)),
51
+ react_1.default.createElement(react_native_1.Text, { style: [styles.activeFDReturns, customStyles.returns] },
52
+ returns,
53
+ "%")))));
54
+ };
55
+ const createStyles = (colors, typography, spacing, shadows, themeName) => {
56
+ var _a, _b, _c, _d, _e, _f, _g, _h, _j;
57
+ return react_native_1.StyleSheet.create({
58
+ activeFDCard: {
59
+ backgroundColor: colors.surface,
60
+ borderRadius: 4, // Reduced corner radius
61
+ padding: spacing.md,
62
+ borderWidth: themeName === 'dark' ? 1 : 0.5, // Same as FDCard
63
+ borderColor: themeName === 'dark' ? colors.border : (0, theme_1.getBorderColor)({ colors }, 0.36), // Same as FDCard
64
+ shadowColor: '#000000',
65
+ shadowOffset: {
66
+ width: 0,
67
+ height: 2,
68
+ },
69
+ shadowOpacity: 0.1, // 10% shadow spread
70
+ shadowRadius: 4,
71
+ elevation: 3,
72
+ },
73
+ activeFDHeader: {
74
+ marginTop: -8,
75
+ flexDirection: 'row',
76
+ justifyContent: 'space-between',
77
+ alignItems: 'center', // Changed to center for vertical alignment
78
+ marginBottom: spacing.sm, // Reduced from lg to sm to decrease card height
79
+ },
80
+ logoContainer: {
81
+ width: 30,
82
+ height: 30,
83
+ borderRadius: 4,
84
+ marginRight: spacing.sm,
85
+ overflow: 'hidden',
86
+ backgroundColor: 'transparent',
87
+ },
88
+ logoImage: {
89
+ width: 30,
90
+ height: 30,
91
+ borderRadius: 15,
92
+ },
93
+ activeFDName: Object.assign(Object.assign({}, typography.styles.text14Medium), { fontWeight: '600', color: colors.text, flex: 1, lineHeight: react_native_1.Platform.OS === 'ios' ? ((_b = (_a = typography.styles.text14Medium) === null || _a === void 0 ? void 0 : _a.lineHeight) !== null && _b !== void 0 ? _b : 14) + 3 : (_c = typography.styles.text14Medium) === null || _c === void 0 ? void 0 : _c.lineHeight }),
94
+ maturityContainer: {
95
+ alignItems: 'flex-end',
96
+ },
97
+ maturityLabel: Object.assign(Object.assign({}, typography.styles.text10Regular), { color: colors.textSecondary, marginBottom: 3, marginTop: 2 }),
98
+ maturityDate: Object.assign(Object.assign({}, typography.styles.text10Regular), { color: colors.tabSelected }),
99
+ activeFDDetails: {
100
+ flexDirection: 'row',
101
+ justifyContent: 'space-between',
102
+ },
103
+ activeFDLeft: {
104
+ flex: 1,
105
+ marginRight: 10, // Increased right spacing by 10px
106
+ },
107
+ activeFDRight: {
108
+ alignItems: 'flex-end',
109
+ marginLeft: 10, // Increased left spacing by 10px
110
+ },
111
+ activeFDLabel: Object.assign(Object.assign({}, typography.styles.text12Regular), { color: colors.textSecondary, marginBottom: spacing.xs + 3, lineHeight: react_native_1.Platform.OS === 'ios' ? ((_e = (_d = typography.styles.text12Regular) === null || _d === void 0 ? void 0 : _d.lineHeight) !== null && _e !== void 0 ? _e : 12) + 3 : (_f = typography.styles.text12Regular) === null || _f === void 0 ? void 0 : _f.lineHeight }),
112
+ activeFDAmount: Object.assign(Object.assign({}, typography.styles.text14Medium), { fontWeight: '600', color: colors.text, marginBottom: spacing.xs + 2, lineHeight: react_native_1.Platform.OS === 'ios' ? ((_h = (_g = typography.styles.text14Medium) === null || _g === void 0 ? void 0 : _g.lineHeight) !== null && _h !== void 0 ? _h : 14) + 3 : (_j = typography.styles.text14Medium) === null || _j === void 0 ? void 0 : _j.lineHeight }),
113
+ activeFDReturns: Object.assign(Object.assign({}, typography.styles.text14Medium), { color: colors.success, marginTop: 2 }),
114
+ });
115
+ };
116
+ exports.default = ActiveFDCard;
@@ -0,0 +1,20 @@
1
+ import React from 'react';
2
+ import { TextInput } from 'react-native';
3
+ interface AmountInputProps {
4
+ label: string;
5
+ value: string;
6
+ onChangeText: (text: string) => void;
7
+ onBlur?: () => void;
8
+ onFocus?: () => void;
9
+ placeholder?: string;
10
+ noteText?: string;
11
+ minMaxText?: string;
12
+ errorMessage?: string;
13
+ inputRef?: React.RefObject<TextInput>;
14
+ selection?: {
15
+ start: number;
16
+ end: number;
17
+ };
18
+ }
19
+ declare const AmountInput: React.FC<AmountInputProps>;
20
+ export default AmountInput;
@@ -0,0 +1,142 @@
1
+ "use strict";
2
+ var __importDefault = (this && this.__importDefault) || function (mod) {
3
+ return (mod && mod.__esModule) ? mod : { "default": mod };
4
+ };
5
+ Object.defineProperty(exports, "__esModule", { value: true });
6
+ const react_1 = __importDefault(require("react"));
7
+ const react_native_1 = require("react-native");
8
+ const base64Images_1 = require("../constants/strings/base64Images");
9
+ const ThemeContext_1 = require("../theme/ThemeContext");
10
+ const theme_1 = require("../theme");
11
+ const AmountInput = ({ label, value, onChangeText, onBlur, onFocus, placeholder = '25,000', noteText, minMaxText, errorMessage, selection, }) => {
12
+ const colors = (0, ThemeContext_1.useColors)();
13
+ const typography = (0, ThemeContext_1.useTypography)();
14
+ const { themeName } = (0, ThemeContext_1.useTheme)();
15
+ const styles = createStyles(colors, typography, themeName);
16
+ // Handle text changes to filter invalid data (including pasted content)
17
+ const handleTextChange = (text) => {
18
+ // Remove all non-numeric characters
19
+ let cleanedText = text.replace(/[^0-9]/g, '');
20
+ // Remove leading zeros (but keep single zero if that's all there is)
21
+ if (cleanedText.length > 1) {
22
+ cleanedText = cleanedText.replace(/^0+/, '');
23
+ }
24
+ // If all zeros were removed, set to empty string
25
+ if (cleanedText === '') {
26
+ cleanedText = '';
27
+ }
28
+ // Only call onChangeText if the text has changed (to avoid infinite loops)
29
+ if (cleanedText !== value) {
30
+ onChangeText(cleanedText);
31
+ }
32
+ };
33
+ return (react_1.default.createElement(react_native_1.View, null,
34
+ react_1.default.createElement(react_native_1.Text, { style: styles.label }, label),
35
+ react_1.default.createElement(react_native_1.View, { style: styles.inputContainer },
36
+ react_1.default.createElement(react_native_1.TextInput, { style: styles.currencyInput, value: "\u20B9", editable: false }),
37
+ react_1.default.createElement(react_native_1.TextInput, { style: styles.amountInput, keyboardType: "number-pad", value: value, onChangeText: handleTextChange, onFocus: onFocus, onBlur: onBlur, placeholder: placeholder, placeholderTextColor: '#9ca9b0', returnKeyType: react_native_1.Platform.OS === 'ios' ? 'done' : 'default', blurOnSubmit: react_native_1.Platform.OS === 'ios', selection: selection })),
38
+ errorMessage && (react_1.default.createElement(react_native_1.View, { style: styles.errorContainer },
39
+ react_1.default.createElement(react_native_1.Image, { source: { uri: base64Images_1.base64Images.error }, style: { width: 16, height: 16, marginRight: 6 }, resizeMode: "contain" }),
40
+ react_1.default.createElement(react_native_1.Text, { style: styles.errorText }, errorMessage))),
41
+ noteText && (react_1.default.createElement(react_native_1.View, { style: styles.noteRow },
42
+ react_1.default.createElement(react_native_1.Text, { style: styles.noteText }, noteText))),
43
+ minMaxText && (react_1.default.createElement(react_native_1.View, { style: styles.limitContainer },
44
+ react_1.default.createElement(react_native_1.Text, { style: styles.limitLabel }, "Min: "),
45
+ react_1.default.createElement(react_native_1.Text, { style: styles.limitValue }, "\u20B95 K"),
46
+ react_1.default.createElement(react_native_1.Text, { style: styles.limitSeparator }, " | "),
47
+ react_1.default.createElement(react_native_1.Text, { style: styles.limitLabel }, "Max: "),
48
+ react_1.default.createElement(react_native_1.Text, { style: styles.limitValue }, "\u20B95 Cr")))));
49
+ };
50
+ const createStyles = (colors, typography, themeName) => react_native_1.StyleSheet.create({
51
+ textviewspace: {
52
+ marginLeft: 10,
53
+ },
54
+ label: Object.assign(Object.assign({}, typography.styles.bodyMedium), { fontWeight: '400', marginTop: 25, marginBottom: 8, color: themeName === 'dark' ? colors.labelColor : colors.text }),
55
+ inputContainer: {
56
+ flexDirection: 'row',
57
+ alignItems: 'center',
58
+ justifyContent: 'space-between',
59
+ backgroundColor: themeName === 'dark' ? colors.background : "white",
60
+ height: 48,
61
+ paddingHorizontal: 0,
62
+ gap: 12,
63
+ },
64
+ currencyInput: {
65
+ width: 50,
66
+ textAlign: 'center',
67
+ fontSize: 14,
68
+ color: colors.text,
69
+ borderWidth: themeName === 'dark' ? 1 : 0.5,
70
+ borderRadius: 4,
71
+ borderColor: themeName === 'dark' ? colors.inputBorder : (0, theme_1.getBorderColor)({ colors }, 0.36),
72
+ height: '100%',
73
+ paddingVertical: 0,
74
+ backgroundColor: themeName === 'dark' ? colors.inputBackground : colors.surface
75
+ },
76
+ amountInput: {
77
+ flex: 1,
78
+ fontSize: 14,
79
+ color: colors.text,
80
+ paddingHorizontal: 16,
81
+ height: '100%',
82
+ marginLeft: 0,
83
+ borderColor: themeName === 'dark' ? colors.inputBorder : (0, theme_1.getBorderColor)({ colors }, 0.36),
84
+ borderWidth: themeName === 'dark' ? 1 : 0.5,
85
+ borderRadius: 4,
86
+ backgroundColor: themeName === 'dark' ? colors.inputBackground : colors.surface
87
+ },
88
+ noteRow: {
89
+ flexDirection: 'row',
90
+ alignItems: 'flex-start',
91
+ marginTop: 8,
92
+ },
93
+ noteIcon: {
94
+ marginRight: 6,
95
+ marginTop: 1,
96
+ },
97
+ noteText: {
98
+ fontSize: 11,
99
+ color: themeName === 'dark' ? colors.labelColor : colors.textLight,
100
+ flex: 1,
101
+ },
102
+ limitText: {
103
+ fontSize: 14,
104
+ color: themeName === 'dark' ? colors.labelColor : colors.textLight,
105
+ marginTop: 10,
106
+ marginBottom: 1,
107
+ },
108
+ limitContainer: {
109
+ flexDirection: 'row',
110
+ alignItems: 'center',
111
+ marginTop: 10,
112
+ marginBottom: 1,
113
+ },
114
+ limitLabel: {
115
+ fontSize: 12,
116
+ color: themeName === 'dark' ? colors.labelColor : '#000000', // White for dark theme, black for others
117
+ fontWeight: '400',
118
+ },
119
+ limitValue: {
120
+ fontSize: 14,
121
+ color: themeName === 'dark' ? colors.labelColor : colors.textLight, // White for dark theme
122
+ },
123
+ limitSeparator: {
124
+ fontSize: 14,
125
+ color: themeName === 'dark' ? colors.labelColor : colors.textLight, // White for dark theme
126
+ },
127
+ errorContainer: {
128
+ flexDirection: 'row',
129
+ alignItems: 'center',
130
+ marginTop: 8,
131
+ },
132
+ errorIcon: {
133
+ marginRight: 6,
134
+ },
135
+ errorText: {
136
+ fontSize: 12,
137
+ color: colors.error || '#FF0000',
138
+ fontWeight: '500',
139
+ flex: 1,
140
+ },
141
+ });
142
+ exports.default = AmountInput;
@@ -0,0 +1,11 @@
1
+ import React from 'react';
2
+ interface CheckboxOptionProps {
3
+ label: string;
4
+ checked: boolean;
5
+ onPress: () => void;
6
+ numberOfLines?: number;
7
+ containerStyle?: object;
8
+ disabled?: boolean;
9
+ }
10
+ declare const CheckboxOption: React.FC<CheckboxOptionProps>;
11
+ export default CheckboxOption;
@@ -0,0 +1,41 @@
1
+ "use strict";
2
+ var __importDefault = (this && this.__importDefault) || function (mod) {
3
+ return (mod && mod.__esModule) ? mod : { "default": mod };
4
+ };
5
+ Object.defineProperty(exports, "__esModule", { value: true });
6
+ const react_1 = __importDefault(require("react"));
7
+ const react_native_1 = require("react-native");
8
+ const ThemeContext_1 = require("../theme/ThemeContext");
9
+ const base64Images_1 = require("../constants/strings/base64Images");
10
+ const CheckboxOption = ({ label, checked, onPress, numberOfLines, containerStyle, disabled = false, }) => {
11
+ const colors = (0, ThemeContext_1.useColors)();
12
+ const typography = (0, ThemeContext_1.useTypography)();
13
+ const { themeName } = (0, ThemeContext_1.useTheme)();
14
+ const styles = createStyles(colors, typography, themeName);
15
+ return (react_1.default.createElement(react_native_1.TouchableOpacity, { style: [styles.container, containerStyle], onPress: onPress, disabled: disabled, activeOpacity: disabled ? 1 : 0.7 },
16
+ react_1.default.createElement(react_native_1.View, { style: [styles.checkbox, checked && styles.checkboxChecked] }, themeName === 'dark' ? (react_1.default.createElement(react_native_1.Image, { source: { uri: checked ? base64Images_1.base64Images.checkBoxDark : base64Images_1.base64Images.unCheckBoxDark }, resizeMode: "cover", width: 20, height: 20 })) : (checked ? (react_1.default.createElement(react_native_1.Image, { source: { uri: base64Images_1.base64Images.filledCheckBox }, resizeMode: "cover", width: 20, height: 20 })) : null)),
17
+ react_1.default.createElement(react_native_1.Text, { style: styles.label, numberOfLines: numberOfLines, ellipsizeMode: "tail" }, label)));
18
+ };
19
+ const createStyles = (colors, typography, themeName) => react_native_1.StyleSheet.create({
20
+ container: {
21
+ flexDirection: 'row',
22
+ alignItems: 'center',
23
+ paddingVertical: 0,
24
+ },
25
+ checkbox: {
26
+ width: 18,
27
+ height: 18,
28
+ borderRadius: 3,
29
+ borderWidth: 1.5,
30
+ borderColor: themeName === 'dark' ? colors.tabSelected : colors.primary,
31
+ marginRight: 12,
32
+ alignItems: 'center',
33
+ justifyContent: 'center',
34
+ },
35
+ checkboxChecked: {
36
+ // backgroundColor: colors.tabSelected,
37
+ borderColor: colors.tabSelected,
38
+ },
39
+ label: Object.assign(Object.assign({}, typography.styles.bodyMedium), { color: colors.text, flex: 1 }),
40
+ });
41
+ exports.default = CheckboxOption;
@@ -0,0 +1,7 @@
1
+ import React from 'react';
2
+ interface CompanyHeaderProps {
3
+ companyName: string;
4
+ rating: string;
5
+ }
6
+ declare const CompanyHeader: React.FC<CompanyHeaderProps>;
7
+ export default CompanyHeader;