boxpay-checkout-reactnative-sdk 1.1.7-beta2 → 2.0.1

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 (610) hide show
  1. package/README.md +66 -6
  2. package/android/build.gradle +1 -1
  3. package/android/src/main/java/com/reactnativemodule/BoxPayElementsView.kt +62 -0
  4. package/android/src/main/java/com/reactnativemodule/CrossPlaform.kt +48 -19
  5. package/android/src/main/java/com/reactnativemodule/ReactNativeModulePackage.kt +2 -3
  6. package/cross_platform_react_native_plugin.podspec +1 -1
  7. package/ios/BoxPayElementsView.m +10 -0
  8. package/ios/BoxPayElementsView.swift +82 -0
  9. package/ios/CrossPlatform.m +5 -2
  10. package/ios/CrossPlatform.swift +74 -26
  11. package/lib/module/index.js +108 -13
  12. package/lib/module/index.js.map +1 -1
  13. package/lib/module/interface.js +10 -30
  14. package/lib/module/interface.js.map +1 -1
  15. package/lib/module/native.js +35 -0
  16. package/lib/module/native.js.map +1 -0
  17. package/lib/typescript/src/index.d.ts +3 -3
  18. package/lib/typescript/src/index.d.ts.map +1 -1
  19. package/lib/typescript/src/interface.d.ts +20 -522
  20. package/lib/typescript/src/interface.d.ts.map +1 -1
  21. package/lib/typescript/src/native.d.ts +24 -0
  22. package/lib/typescript/src/native.d.ts.map +1 -0
  23. package/package.json +15 -21
  24. package/src/index.tsx +106 -13
  25. package/src/interface.ts +25 -602
  26. package/src/native.ts +72 -0
  27. package/assets/animations/boxpayLogo.json +0 -1135
  28. package/assets/animations/payment_failed.json +0 -487
  29. package/assets/animations/payment_status_pending.json +0 -750
  30. package/assets/animations/payment_successful.json +0 -1602
  31. package/assets/fonts/Inter_18pt-Bold.ttf +0 -0
  32. package/assets/fonts/Inter_18pt-ExtraBold.ttf +0 -0
  33. package/assets/fonts/Inter_18pt-Medium.ttf +0 -0
  34. package/assets/fonts/Inter_18pt-Regular.ttf +0 -0
  35. package/assets/fonts/Inter_18pt-SemiBold.ttf +0 -0
  36. package/assets/fonts/Poppins-Bold.ttf +0 -0
  37. package/assets/fonts/Poppins-ExtraBold.ttf +0 -0
  38. package/assets/fonts/Poppins-Medium.ttf +0 -0
  39. package/assets/fonts/Poppins-Regular.ttf +0 -0
  40. package/assets/fonts/Poppins-SemiBold.ttf +0 -0
  41. package/assets/images/Lock.png +0 -0
  42. package/assets/images/add_icon.png +0 -0
  43. package/assets/images/add_upi_id_background.png +0 -0
  44. package/assets/images/arrow-left.png +0 -0
  45. package/assets/images/chervon-down.png +0 -0
  46. package/assets/images/cvv_info_image.png +0 -0
  47. package/assets/images/cvv_info_image_amex.png +0 -0
  48. package/assets/images/favicon.png +0 -0
  49. package/assets/images/gpay-icon.png +0 -0
  50. package/assets/images/ic_amex.png +0 -0
  51. package/assets/images/ic_bnpl.png +0 -0
  52. package/assets/images/ic_bnpl_semi_bold.png +0 -0
  53. package/assets/images/ic_card.png +0 -0
  54. package/assets/images/ic_card_add.png +0 -0
  55. package/assets/images/ic_card_lock.png +0 -0
  56. package/assets/images/ic_cross.png +0 -0
  57. package/assets/images/ic_cvv_info.png +0 -0
  58. package/assets/images/ic_default_card.png +0 -0
  59. package/assets/images/ic_emi.png +0 -0
  60. package/assets/images/ic_home.png +0 -0
  61. package/assets/images/ic_info.png +0 -0
  62. package/assets/images/ic_location.png +0 -0
  63. package/assets/images/ic_maestro.png +0 -0
  64. package/assets/images/ic_masterCard.png +0 -0
  65. package/assets/images/ic_more.png +0 -0
  66. package/assets/images/ic_netbanking.png +0 -0
  67. package/assets/images/ic_netbanking_semi_bold.png +0 -0
  68. package/assets/images/ic_offer_tag.png +0 -0
  69. package/assets/images/ic_other.png +0 -0
  70. package/assets/images/ic_qr.png +0 -0
  71. package/assets/images/ic_rupay.png +0 -0
  72. package/assets/images/ic_search.png +0 -0
  73. package/assets/images/ic_trash.png +0 -0
  74. package/assets/images/ic_upi.png +0 -0
  75. package/assets/images/ic_upi_error.png +0 -0
  76. package/assets/images/ic_user.png +0 -0
  77. package/assets/images/ic_visa.png +0 -0
  78. package/assets/images/ic_wallet.png +0 -0
  79. package/assets/images/ic_wallet_semi_bold.png +0 -0
  80. package/assets/images/ic_work.png +0 -0
  81. package/assets/images/no_results_found.png +0 -0
  82. package/assets/images/other-intent-icon.png +0 -0
  83. package/assets/images/paytm-icon.png +0 -0
  84. package/assets/images/phonepe-icon.png +0 -0
  85. package/assets/images/splash-icon.png +0 -0
  86. package/assets/images/upi-icon.png +0 -0
  87. package/assets/images/upi-timer-sheet-upi-icon.png +0 -0
  88. package/assets/json/countryCodes.json +0 -1490
  89. package/ios/Framework/CrossPlatformSDK.xcframework/Info.plist +0 -48
  90. package/ios/Framework/CrossPlatformSDK.xcframework/ios-arm64/CrossPlatformSDK.framework/CrossPlatformSDK +0 -0
  91. package/ios/Framework/CrossPlatformSDK.xcframework/ios-arm64/CrossPlatformSDK.framework/Headers/CrossPlatformSDK.h +0 -168
  92. package/ios/Framework/CrossPlatformSDK.xcframework/ios-arm64/CrossPlatformSDK.framework/Info.plist +0 -35
  93. package/ios/Framework/CrossPlatformSDK.xcframework/ios-arm64/CrossPlatformSDK.framework/Modules/module.modulemap +0 -8
  94. package/ios/Framework/CrossPlatformSDK.xcframework/ios-arm64/dSYMs/CrossPlatformSDK.framework.dSYM/Contents/Info.plist +0 -20
  95. package/ios/Framework/CrossPlatformSDK.xcframework/ios-arm64_x86_64-simulator/CrossPlatformSDK.framework/CrossPlatformSDK +0 -0
  96. package/ios/Framework/CrossPlatformSDK.xcframework/ios-arm64_x86_64-simulator/CrossPlatformSDK.framework/Headers/CrossPlatformSDK.h +0 -168
  97. package/ios/Framework/CrossPlatformSDK.xcframework/ios-arm64_x86_64-simulator/CrossPlatformSDK.framework/Info.plist +0 -31
  98. package/ios/Framework/CrossPlatformSDK.xcframework/ios-arm64_x86_64-simulator/CrossPlatformSDK.framework/Modules/module.modulemap +0 -5
  99. package/ios/Framework/CrossPlatformSDK.xcframework/ios-arm64_x86_64-simulator/dSYMs/CrossPlatformSDK.framework.dSYM/Contents/Info.plist +0 -20
  100. package/lib/assets/animations/boxpayLogo.json +0 -1135
  101. package/lib/assets/animations/payment_failed.json +0 -487
  102. package/lib/assets/animations/payment_status_pending.json +0 -750
  103. package/lib/assets/animations/payment_successful.json +0 -1602
  104. package/lib/assets/assets/animations/boxpayLogo.json +0 -1135
  105. package/lib/assets/assets/animations/payment_failed.json +0 -487
  106. package/lib/assets/assets/animations/payment_status_pending.json +0 -750
  107. package/lib/assets/assets/animations/payment_successful.json +0 -1602
  108. package/lib/assets/assets/fonts/Inter_18pt-Bold.ttf +0 -0
  109. package/lib/assets/assets/fonts/Inter_18pt-ExtraBold.ttf +0 -0
  110. package/lib/assets/assets/fonts/Inter_18pt-Medium.ttf +0 -0
  111. package/lib/assets/assets/fonts/Inter_18pt-Regular.ttf +0 -0
  112. package/lib/assets/assets/fonts/Inter_18pt-SemiBold.ttf +0 -0
  113. package/lib/assets/assets/fonts/Poppins-Bold.ttf +0 -0
  114. package/lib/assets/assets/fonts/Poppins-ExtraBold.ttf +0 -0
  115. package/lib/assets/assets/fonts/Poppins-Medium.ttf +0 -0
  116. package/lib/assets/assets/fonts/Poppins-Regular.ttf +0 -0
  117. package/lib/assets/assets/fonts/Poppins-SemiBold.ttf +0 -0
  118. package/lib/assets/assets/images/Lock.png +0 -0
  119. package/lib/assets/assets/images/add_icon.png +0 -0
  120. package/lib/assets/assets/images/add_upi_id_background.png +0 -0
  121. package/lib/assets/assets/images/arrow-left.png +0 -0
  122. package/lib/assets/assets/images/chervon-down.png +0 -0
  123. package/lib/assets/assets/images/cvv_info_image.png +0 -0
  124. package/lib/assets/assets/images/cvv_info_image_amex.png +0 -0
  125. package/lib/assets/assets/images/favicon.png +0 -0
  126. package/lib/assets/assets/images/gpay-icon.png +0 -0
  127. package/lib/assets/assets/images/ic_amex.png +0 -0
  128. package/lib/assets/assets/images/ic_bnpl.png +0 -0
  129. package/lib/assets/assets/images/ic_bnpl_semi_bold.png +0 -0
  130. package/lib/assets/assets/images/ic_card.png +0 -0
  131. package/lib/assets/assets/images/ic_card_add.png +0 -0
  132. package/lib/assets/assets/images/ic_card_lock.png +0 -0
  133. package/lib/assets/assets/images/ic_cross.png +0 -0
  134. package/lib/assets/assets/images/ic_cvv_info.png +0 -0
  135. package/lib/assets/assets/images/ic_default_card.png +0 -0
  136. package/lib/assets/assets/images/ic_emi.png +0 -0
  137. package/lib/assets/assets/images/ic_home.png +0 -0
  138. package/lib/assets/assets/images/ic_info.png +0 -0
  139. package/lib/assets/assets/images/ic_location.png +0 -0
  140. package/lib/assets/assets/images/ic_maestro.png +0 -0
  141. package/lib/assets/assets/images/ic_masterCard.png +0 -0
  142. package/lib/assets/assets/images/ic_more.png +0 -0
  143. package/lib/assets/assets/images/ic_netbanking.png +0 -0
  144. package/lib/assets/assets/images/ic_netbanking_semi_bold.png +0 -0
  145. package/lib/assets/assets/images/ic_offer_tag.png +0 -0
  146. package/lib/assets/assets/images/ic_other.png +0 -0
  147. package/lib/assets/assets/images/ic_qr.png +0 -0
  148. package/lib/assets/assets/images/ic_rupay.png +0 -0
  149. package/lib/assets/assets/images/ic_search.png +0 -0
  150. package/lib/assets/assets/images/ic_trash.png +0 -0
  151. package/lib/assets/assets/images/ic_upi.png +0 -0
  152. package/lib/assets/assets/images/ic_upi_error.png +0 -0
  153. package/lib/assets/assets/images/ic_user.png +0 -0
  154. package/lib/assets/assets/images/ic_visa.png +0 -0
  155. package/lib/assets/assets/images/ic_wallet.png +0 -0
  156. package/lib/assets/assets/images/ic_wallet_semi_bold.png +0 -0
  157. package/lib/assets/assets/images/ic_work.png +0 -0
  158. package/lib/assets/assets/images/no_results_found.png +0 -0
  159. package/lib/assets/assets/images/other-intent-icon.png +0 -0
  160. package/lib/assets/assets/images/paytm-icon.png +0 -0
  161. package/lib/assets/assets/images/phonepe-icon.png +0 -0
  162. package/lib/assets/assets/images/splash-icon.png +0 -0
  163. package/lib/assets/assets/images/upi-icon.png +0 -0
  164. package/lib/assets/assets/images/upi-timer-sheet-upi-icon.png +0 -0
  165. package/lib/assets/assets/json/countryCodes.json +0 -1490
  166. package/lib/assets/fonts/Inter_18pt-Bold.ttf +0 -0
  167. package/lib/assets/fonts/Inter_18pt-ExtraBold.ttf +0 -0
  168. package/lib/assets/fonts/Inter_18pt-Medium.ttf +0 -0
  169. package/lib/assets/fonts/Inter_18pt-Regular.ttf +0 -0
  170. package/lib/assets/fonts/Inter_18pt-SemiBold.ttf +0 -0
  171. package/lib/assets/fonts/Poppins-Bold.ttf +0 -0
  172. package/lib/assets/fonts/Poppins-ExtraBold.ttf +0 -0
  173. package/lib/assets/fonts/Poppins-Medium.ttf +0 -0
  174. package/lib/assets/fonts/Poppins-Regular.ttf +0 -0
  175. package/lib/assets/fonts/Poppins-SemiBold.ttf +0 -0
  176. package/lib/assets/images/Lock.png +0 -0
  177. package/lib/assets/images/add_icon.png +0 -0
  178. package/lib/assets/images/add_upi_id_background.png +0 -0
  179. package/lib/assets/images/arrow-left.png +0 -0
  180. package/lib/assets/images/chervon-down.png +0 -0
  181. package/lib/assets/images/cvv_info_image.png +0 -0
  182. package/lib/assets/images/cvv_info_image_amex.png +0 -0
  183. package/lib/assets/images/favicon.png +0 -0
  184. package/lib/assets/images/gpay-icon.png +0 -0
  185. package/lib/assets/images/ic_amex.png +0 -0
  186. package/lib/assets/images/ic_bnpl.png +0 -0
  187. package/lib/assets/images/ic_bnpl_semi_bold.png +0 -0
  188. package/lib/assets/images/ic_card.png +0 -0
  189. package/lib/assets/images/ic_card_add.png +0 -0
  190. package/lib/assets/images/ic_card_lock.png +0 -0
  191. package/lib/assets/images/ic_cross.png +0 -0
  192. package/lib/assets/images/ic_cvv_info.png +0 -0
  193. package/lib/assets/images/ic_default_card.png +0 -0
  194. package/lib/assets/images/ic_emi.png +0 -0
  195. package/lib/assets/images/ic_home.png +0 -0
  196. package/lib/assets/images/ic_info.png +0 -0
  197. package/lib/assets/images/ic_location.png +0 -0
  198. package/lib/assets/images/ic_maestro.png +0 -0
  199. package/lib/assets/images/ic_masterCard.png +0 -0
  200. package/lib/assets/images/ic_more.png +0 -0
  201. package/lib/assets/images/ic_netbanking.png +0 -0
  202. package/lib/assets/images/ic_netbanking_semi_bold.png +0 -0
  203. package/lib/assets/images/ic_offer_tag.png +0 -0
  204. package/lib/assets/images/ic_other.png +0 -0
  205. package/lib/assets/images/ic_qr.png +0 -0
  206. package/lib/assets/images/ic_rupay.png +0 -0
  207. package/lib/assets/images/ic_search.png +0 -0
  208. package/lib/assets/images/ic_trash.png +0 -0
  209. package/lib/assets/images/ic_upi.png +0 -0
  210. package/lib/assets/images/ic_upi_error.png +0 -0
  211. package/lib/assets/images/ic_user.png +0 -0
  212. package/lib/assets/images/ic_visa.png +0 -0
  213. package/lib/assets/images/ic_wallet.png +0 -0
  214. package/lib/assets/images/ic_wallet_semi_bold.png +0 -0
  215. package/lib/assets/images/ic_work.png +0 -0
  216. package/lib/assets/images/no_results_found.png +0 -0
  217. package/lib/assets/images/other-intent-icon.png +0 -0
  218. package/lib/assets/images/paytm-icon.png +0 -0
  219. package/lib/assets/images/phonepe-icon.png +0 -0
  220. package/lib/assets/images/splash-icon.png +0 -0
  221. package/lib/assets/images/upi-icon.png +0 -0
  222. package/lib/assets/images/upi-timer-sheet-upi-icon.png +0 -0
  223. package/lib/assets/json/countryCodes.json +0 -1490
  224. package/lib/module/components/addressCard.js +0 -186
  225. package/lib/module/components/addressCard.js.map +0 -1
  226. package/lib/module/components/applyCouponCard.js +0 -145
  227. package/lib/module/components/applyCouponCard.js.map +0 -1
  228. package/lib/module/components/bankCard.js +0 -59
  229. package/lib/module/components/bankCard.js.map +0 -1
  230. package/lib/module/components/cancelPaymentModal.js +0 -74
  231. package/lib/module/components/cancelPaymentModal.js.map +0 -1
  232. package/lib/module/components/checkboxContainer.js +0 -65
  233. package/lib/module/components/checkboxContainer.js.map +0 -1
  234. package/lib/module/components/circularProgress.js +0 -75
  235. package/lib/module/components/circularProgress.js.map +0 -1
  236. package/lib/module/components/cvvInfoBottomSheet.js +0 -73
  237. package/lib/module/components/cvvInfoBottomSheet.js.map +0 -1
  238. package/lib/module/components/deleteAddressModal.js +0 -120
  239. package/lib/module/components/deleteAddressModal.js.map +0 -1
  240. package/lib/module/components/fontFamily.js +0 -30
  241. package/lib/module/components/fontFamily.js.map +0 -1
  242. package/lib/module/components/getInstalledUPI.js +0 -27
  243. package/lib/module/components/getInstalledUPI.js.map +0 -1
  244. package/lib/module/components/header.js +0 -127
  245. package/lib/module/components/header.js.map +0 -1
  246. package/lib/module/components/imageLoader.js +0 -93
  247. package/lib/module/components/imageLoader.js.map +0 -1
  248. package/lib/module/components/knowMoreBottomSheet.js +0 -113
  249. package/lib/module/components/knowMoreBottomSheet.js.map +0 -1
  250. package/lib/module/components/morePaymentContainer.js +0 -66
  251. package/lib/module/components/morePaymentContainer.js.map +0 -1
  252. package/lib/module/components/morePaymentMethods.js +0 -177
  253. package/lib/module/components/morePaymentMethods.js.map +0 -1
  254. package/lib/module/components/offerCard.js +0 -148
  255. package/lib/module/components/offerCard.js.map +0 -1
  256. package/lib/module/components/orderDetails.js +0 -404
  257. package/lib/module/components/orderDetails.js.map +0 -1
  258. package/lib/module/components/paymentFailed.js +0 -98
  259. package/lib/module/components/paymentFailed.js.map +0 -1
  260. package/lib/module/components/paymentSelector.js +0 -158
  261. package/lib/module/components/paymentSelector.js.map +0 -1
  262. package/lib/module/components/paymentSuccess.js +0 -244
  263. package/lib/module/components/paymentSuccess.js.map +0 -1
  264. package/lib/module/components/savedAddressBottomSheet.js +0 -130
  265. package/lib/module/components/savedAddressBottomSheet.js.map +0 -1
  266. package/lib/module/components/savedAddressCard.js +0 -117
  267. package/lib/module/components/savedAddressCard.js.map +0 -1
  268. package/lib/module/components/savedCardComponent.js +0 -238
  269. package/lib/module/components/savedCardComponent.js.map +0 -1
  270. package/lib/module/components/selectTenureCard.js +0 -393
  271. package/lib/module/components/selectTenureCard.js.map +0 -1
  272. package/lib/module/components/sessionExpire.js +0 -96
  273. package/lib/module/components/sessionExpire.js.map +0 -1
  274. package/lib/module/components/shimmerView.js +0 -40
  275. package/lib/module/components/shimmerView.js.map +0 -1
  276. package/lib/module/navigation.js +0 -87
  277. package/lib/module/navigation.js.map +0 -1
  278. package/lib/module/postRequest/callUIAnalytics.js +0 -43
  279. package/lib/module/postRequest/callUIAnalytics.js.map +0 -1
  280. package/lib/module/postRequest/cardPostRequest.js +0 -60
  281. package/lib/module/postRequest/cardPostRequest.js.map +0 -1
  282. package/lib/module/postRequest/deleteSavedAddress.js +0 -33
  283. package/lib/module/postRequest/deleteSavedAddress.js.map +0 -1
  284. package/lib/module/postRequest/emiPostRequest.js +0 -68
  285. package/lib/module/postRequest/emiPostRequest.js.map +0 -1
  286. package/lib/module/postRequest/fetchCardDetails.js +0 -26
  287. package/lib/module/postRequest/fetchCardDetails.js.map +0 -1
  288. package/lib/module/postRequest/fetchInstantOffer.js +0 -29
  289. package/lib/module/postRequest/fetchInstantOffer.js.map +0 -1
  290. package/lib/module/postRequest/fetchPaymentMethods.js +0 -25
  291. package/lib/module/postRequest/fetchPaymentMethods.js.map +0 -1
  292. package/lib/module/postRequest/fetchRecommendedInstruments.js +0 -30
  293. package/lib/module/postRequest/fetchRecommendedInstruments.js.map +0 -1
  294. package/lib/module/postRequest/fetchSavedAddress.js +0 -30
  295. package/lib/module/postRequest/fetchSavedAddress.js.map +0 -1
  296. package/lib/module/postRequest/fetchSessionDetails.js +0 -25
  297. package/lib/module/postRequest/fetchSessionDetails.js.map +0 -1
  298. package/lib/module/postRequest/fetchStatus.js +0 -25
  299. package/lib/module/postRequest/fetchStatus.js.map +0 -1
  300. package/lib/module/postRequest/fetchSurcharge.js +0 -36
  301. package/lib/module/postRequest/fetchSurcharge.js.map +0 -1
  302. package/lib/module/postRequest/methodsPostRequest.js +0 -48
  303. package/lib/module/postRequest/methodsPostRequest.js.map +0 -1
  304. package/lib/module/postRequest/upiPostRequest.js +0 -46
  305. package/lib/module/postRequest/upiPostRequest.js.map +0 -1
  306. package/lib/module/screens/addressScreen.js +0 -771
  307. package/lib/module/screens/addressScreen.js.map +0 -1
  308. package/lib/module/screens/bnplScreen.js +0 -249
  309. package/lib/module/screens/bnplScreen.js.map +0 -1
  310. package/lib/module/screens/cardScreen.js +0 -903
  311. package/lib/module/screens/cardScreen.js.map +0 -1
  312. package/lib/module/screens/emiScreen.js +0 -638
  313. package/lib/module/screens/emiScreen.js.map +0 -1
  314. package/lib/module/screens/instantOfferList.js +0 -117
  315. package/lib/module/screens/instantOfferList.js.map +0 -1
  316. package/lib/module/screens/mainScreen.js +0 -873
  317. package/lib/module/screens/mainScreen.js.map +0 -1
  318. package/lib/module/screens/netBankingScreen.js +0 -360
  319. package/lib/module/screens/netBankingScreen.js.map +0 -1
  320. package/lib/module/screens/savedAddressScreen.js +0 -274
  321. package/lib/module/screens/savedAddressScreen.js.map +0 -1
  322. package/lib/module/screens/selectTenureScreen.js +0 -105
  323. package/lib/module/screens/selectTenureScreen.js.map +0 -1
  324. package/lib/module/screens/upiScreen.js +0 -557
  325. package/lib/module/screens/upiScreen.js.map +0 -1
  326. package/lib/module/screens/upiTimerScreen.js +0 -212
  327. package/lib/module/screens/upiTimerScreen.js.map +0 -1
  328. package/lib/module/screens/walletScreen.js +0 -327
  329. package/lib/module/screens/walletScreen.js.map +0 -1
  330. package/lib/module/screens/webViewScreen.js +0 -87
  331. package/lib/module/screens/webViewScreen.js.map +0 -1
  332. package/lib/module/sdk-version.json +0 -1
  333. package/lib/module/serviceRequest.js +0 -27
  334. package/lib/module/serviceRequest.js.map +0 -1
  335. package/lib/module/sharedContext/checkoutDetailsHandler.js +0 -98
  336. package/lib/module/sharedContext/checkoutDetailsHandler.js.map +0 -1
  337. package/lib/module/sharedContext/handlePaymentResponseHandler.js +0 -278
  338. package/lib/module/sharedContext/handlePaymentResponseHandler.js.map +0 -1
  339. package/lib/module/sharedContext/paymentStatusHandler.js +0 -9
  340. package/lib/module/sharedContext/paymentStatusHandler.js.map +0 -1
  341. package/lib/module/sharedContext/userdataHandler.js +0 -50
  342. package/lib/module/sharedContext/userdataHandler.js.map +0 -1
  343. package/lib/module/styles/components/addressCardStyles.js +0 -55
  344. package/lib/module/styles/components/addressCardStyles.js.map +0 -1
  345. package/lib/module/styles/components/bankCardStyles.js +0 -61
  346. package/lib/module/styles/components/bankCardStyles.js.map +0 -1
  347. package/lib/module/styles/components/cancelPaymentModalStyles.js +0 -83
  348. package/lib/module/styles/components/cancelPaymentModalStyles.js.map +0 -1
  349. package/lib/module/styles/components/cvvInfoBottomSheetStyles.js +0 -52
  350. package/lib/module/styles/components/cvvInfoBottomSheetStyles.js.map +0 -1
  351. package/lib/module/styles/components/savedAddressCardStyles.js +0 -64
  352. package/lib/module/styles/components/savedAddressCardStyles.js.map +0 -1
  353. package/lib/module/styles/indexStyles.js +0 -70
  354. package/lib/module/styles/indexStyles.js.map +0 -1
  355. package/lib/module/styles/screens/addressScreenStyles..js +0 -61
  356. package/lib/module/styles/screens/addressScreenStyles..js.map +0 -1
  357. package/lib/module/styles/screens/bnplScreenStyles.js +0 -81
  358. package/lib/module/styles/screens/bnplScreenStyles.js.map +0 -1
  359. package/lib/module/styles/screens/cardScreenStyles.js +0 -164
  360. package/lib/module/styles/screens/cardScreenStyles.js.map +0 -1
  361. package/lib/module/styles/screens/emiScreenStyles.js +0 -130
  362. package/lib/module/styles/screens/emiScreenStyles.js.map +0 -1
  363. package/lib/module/styles/screens/instantOfferScreenStyles.js +0 -45
  364. package/lib/module/styles/screens/instantOfferScreenStyles.js.map +0 -1
  365. package/lib/module/styles/screens/netBankingScreenStyles.js +0 -102
  366. package/lib/module/styles/screens/netBankingScreenStyles.js.map +0 -1
  367. package/lib/module/styles/screens/savedAddressScreenStyles.js +0 -52
  368. package/lib/module/styles/screens/savedAddressScreenStyles.js.map +0 -1
  369. package/lib/module/styles/screens/selectTenureScreenStyles.js +0 -45
  370. package/lib/module/styles/screens/selectTenureScreenStyles.js.map +0 -1
  371. package/lib/module/styles/screens/upiScreenStyles.js +0 -172
  372. package/lib/module/styles/screens/upiScreenStyles.js.map +0 -1
  373. package/lib/module/styles/screens/upiTimerScreenStyle.js +0 -97
  374. package/lib/module/styles/screens/upiTimerScreenStyle.js.map +0 -1
  375. package/lib/module/styles/screens/walletScreenStyles.js +0 -99
  376. package/lib/module/styles/screens/walletScreenStyles.js.map +0 -1
  377. package/lib/module/utility.js +0 -172
  378. package/lib/module/utility.js.map +0 -1
  379. package/lib/typescript/src/components/addressCard.d.ts +0 -7
  380. package/lib/typescript/src/components/addressCard.d.ts.map +0 -1
  381. package/lib/typescript/src/components/applyCouponCard.d.ts +0 -15
  382. package/lib/typescript/src/components/applyCouponCard.d.ts.map +0 -1
  383. package/lib/typescript/src/components/bankCard.d.ts +0 -11
  384. package/lib/typescript/src/components/bankCard.d.ts.map +0 -1
  385. package/lib/typescript/src/components/cancelPaymentModal.d.ts +0 -8
  386. package/lib/typescript/src/components/cancelPaymentModal.d.ts.map +0 -1
  387. package/lib/typescript/src/components/checkboxContainer.d.ts +0 -8
  388. package/lib/typescript/src/components/checkboxContainer.d.ts.map +0 -1
  389. package/lib/typescript/src/components/circularProgress.d.ts +0 -10
  390. package/lib/typescript/src/components/circularProgress.d.ts.map +0 -1
  391. package/lib/typescript/src/components/cvvInfoBottomSheet.d.ts +0 -7
  392. package/lib/typescript/src/components/cvvInfoBottomSheet.d.ts.map +0 -1
  393. package/lib/typescript/src/components/deleteAddressModal.d.ts +0 -9
  394. package/lib/typescript/src/components/deleteAddressModal.d.ts.map +0 -1
  395. package/lib/typescript/src/components/fontFamily.d.ts +0 -14
  396. package/lib/typescript/src/components/fontFamily.d.ts.map +0 -1
  397. package/lib/typescript/src/components/getInstalledUPI.d.ts +0 -2
  398. package/lib/typescript/src/components/getInstalledUPI.d.ts.map +0 -1
  399. package/lib/typescript/src/components/header.d.ts +0 -10
  400. package/lib/typescript/src/components/header.d.ts.map +0 -1
  401. package/lib/typescript/src/components/imageLoader.d.ts +0 -8
  402. package/lib/typescript/src/components/imageLoader.d.ts.map +0 -1
  403. package/lib/typescript/src/components/knowMoreBottomSheet.d.ts +0 -6
  404. package/lib/typescript/src/components/knowMoreBottomSheet.d.ts.map +0 -1
  405. package/lib/typescript/src/components/morePaymentContainer.d.ts +0 -10
  406. package/lib/typescript/src/components/morePaymentContainer.d.ts.map +0 -1
  407. package/lib/typescript/src/components/morePaymentMethods.d.ts +0 -11
  408. package/lib/typescript/src/components/morePaymentMethods.d.ts.map +0 -1
  409. package/lib/typescript/src/components/offerCard.d.ts +0 -15
  410. package/lib/typescript/src/components/offerCard.d.ts.map +0 -1
  411. package/lib/typescript/src/components/orderDetails.d.ts +0 -23
  412. package/lib/typescript/src/components/orderDetails.d.ts.map +0 -1
  413. package/lib/typescript/src/components/paymentFailed.d.ts +0 -8
  414. package/lib/typescript/src/components/paymentFailed.d.ts.map +0 -1
  415. package/lib/typescript/src/components/paymentSelector.d.ts +0 -12
  416. package/lib/typescript/src/components/paymentSelector.d.ts.map +0 -1
  417. package/lib/typescript/src/components/paymentSuccess.d.ts +0 -10
  418. package/lib/typescript/src/components/paymentSuccess.d.ts.map +0 -1
  419. package/lib/typescript/src/components/savedAddressBottomSheet.d.ts +0 -14
  420. package/lib/typescript/src/components/savedAddressBottomSheet.d.ts.map +0 -1
  421. package/lib/typescript/src/components/savedAddressCard.d.ts +0 -9
  422. package/lib/typescript/src/components/savedAddressCard.d.ts.map +0 -1
  423. package/lib/typescript/src/components/savedCardComponent.d.ts +0 -12
  424. package/lib/typescript/src/components/savedCardComponent.d.ts.map +0 -1
  425. package/lib/typescript/src/components/selectTenureCard.d.ts +0 -21
  426. package/lib/typescript/src/components/selectTenureCard.d.ts.map +0 -1
  427. package/lib/typescript/src/components/sessionExpire.d.ts +0 -7
  428. package/lib/typescript/src/components/sessionExpire.d.ts.map +0 -1
  429. package/lib/typescript/src/components/shimmerView.d.ts +0 -3
  430. package/lib/typescript/src/components/shimmerView.d.ts.map +0 -1
  431. package/lib/typescript/src/navigation.d.ts +0 -17
  432. package/lib/typescript/src/navigation.d.ts.map +0 -1
  433. package/lib/typescript/src/postRequest/callUIAnalytics.d.ts +0 -4
  434. package/lib/typescript/src/postRequest/callUIAnalytics.d.ts.map +0 -1
  435. package/lib/typescript/src/postRequest/cardPostRequest.d.ts +0 -4
  436. package/lib/typescript/src/postRequest/cardPostRequest.d.ts.map +0 -1
  437. package/lib/typescript/src/postRequest/deleteSavedAddress.d.ts +0 -4
  438. package/lib/typescript/src/postRequest/deleteSavedAddress.d.ts.map +0 -1
  439. package/lib/typescript/src/postRequest/emiPostRequest.d.ts +0 -13
  440. package/lib/typescript/src/postRequest/emiPostRequest.d.ts.map +0 -1
  441. package/lib/typescript/src/postRequest/fetchCardDetails.d.ts +0 -4
  442. package/lib/typescript/src/postRequest/fetchCardDetails.d.ts.map +0 -1
  443. package/lib/typescript/src/postRequest/fetchInstantOffer.d.ts +0 -4
  444. package/lib/typescript/src/postRequest/fetchInstantOffer.d.ts.map +0 -1
  445. package/lib/typescript/src/postRequest/fetchPaymentMethods.d.ts +0 -4
  446. package/lib/typescript/src/postRequest/fetchPaymentMethods.d.ts.map +0 -1
  447. package/lib/typescript/src/postRequest/fetchRecommendedInstruments.d.ts +0 -4
  448. package/lib/typescript/src/postRequest/fetchRecommendedInstruments.d.ts.map +0 -1
  449. package/lib/typescript/src/postRequest/fetchSavedAddress.d.ts +0 -4
  450. package/lib/typescript/src/postRequest/fetchSavedAddress.d.ts.map +0 -1
  451. package/lib/typescript/src/postRequest/fetchSessionDetails.d.ts +0 -4
  452. package/lib/typescript/src/postRequest/fetchSessionDetails.d.ts.map +0 -1
  453. package/lib/typescript/src/postRequest/fetchStatus.d.ts +0 -4
  454. package/lib/typescript/src/postRequest/fetchStatus.d.ts.map +0 -1
  455. package/lib/typescript/src/postRequest/fetchSurcharge.d.ts +0 -4
  456. package/lib/typescript/src/postRequest/fetchSurcharge.d.ts.map +0 -1
  457. package/lib/typescript/src/postRequest/methodsPostRequest.d.ts +0 -4
  458. package/lib/typescript/src/postRequest/methodsPostRequest.d.ts.map +0 -1
  459. package/lib/typescript/src/postRequest/upiPostRequest.d.ts +0 -4
  460. package/lib/typescript/src/postRequest/upiPostRequest.d.ts.map +0 -1
  461. package/lib/typescript/src/screens/addressScreen.d.ts +0 -11
  462. package/lib/typescript/src/screens/addressScreen.d.ts.map +0 -1
  463. package/lib/typescript/src/screens/bnplScreen.d.ts +0 -9
  464. package/lib/typescript/src/screens/bnplScreen.d.ts.map +0 -1
  465. package/lib/typescript/src/screens/cardScreen.d.ts +0 -11
  466. package/lib/typescript/src/screens/cardScreen.d.ts.map +0 -1
  467. package/lib/typescript/src/screens/emiScreen.d.ts +0 -9
  468. package/lib/typescript/src/screens/emiScreen.d.ts.map +0 -1
  469. package/lib/typescript/src/screens/instantOfferList.d.ts +0 -19
  470. package/lib/typescript/src/screens/instantOfferList.d.ts.map +0 -1
  471. package/lib/typescript/src/screens/mainScreen.d.ts +0 -11
  472. package/lib/typescript/src/screens/mainScreen.d.ts.map +0 -1
  473. package/lib/typescript/src/screens/netBankingScreen.d.ts +0 -9
  474. package/lib/typescript/src/screens/netBankingScreen.d.ts.map +0 -1
  475. package/lib/typescript/src/screens/savedAddressScreen.d.ts +0 -9
  476. package/lib/typescript/src/screens/savedAddressScreen.d.ts.map +0 -1
  477. package/lib/typescript/src/screens/selectTenureScreen.d.ts +0 -12
  478. package/lib/typescript/src/screens/selectTenureScreen.d.ts.map +0 -1
  479. package/lib/typescript/src/screens/upiScreen.d.ts +0 -20
  480. package/lib/typescript/src/screens/upiScreen.d.ts.map +0 -1
  481. package/lib/typescript/src/screens/upiTimerScreen.d.ts +0 -11
  482. package/lib/typescript/src/screens/upiTimerScreen.d.ts.map +0 -1
  483. package/lib/typescript/src/screens/walletScreen.d.ts +0 -9
  484. package/lib/typescript/src/screens/walletScreen.d.ts.map +0 -1
  485. package/lib/typescript/src/screens/webViewScreen.d.ts +0 -9
  486. package/lib/typescript/src/screens/webViewScreen.d.ts.map +0 -1
  487. package/lib/typescript/src/serviceRequest.d.ts +0 -3
  488. package/lib/typescript/src/serviceRequest.d.ts.map +0 -1
  489. package/lib/typescript/src/sharedContext/checkoutDetailsHandler.d.ts +0 -8
  490. package/lib/typescript/src/sharedContext/checkoutDetailsHandler.d.ts.map +0 -1
  491. package/lib/typescript/src/sharedContext/handlePaymentResponseHandler.d.ts +0 -16
  492. package/lib/typescript/src/sharedContext/handlePaymentResponseHandler.d.ts.map +0 -1
  493. package/lib/typescript/src/sharedContext/paymentStatusHandler.d.ts +0 -7
  494. package/lib/typescript/src/sharedContext/paymentStatusHandler.d.ts.map +0 -1
  495. package/lib/typescript/src/sharedContext/userdataHandler.d.ts +0 -8
  496. package/lib/typescript/src/sharedContext/userdataHandler.d.ts.map +0 -1
  497. package/lib/typescript/src/styles/components/addressCardStyles.d.ts +0 -52
  498. package/lib/typescript/src/styles/components/addressCardStyles.d.ts.map +0 -1
  499. package/lib/typescript/src/styles/components/bankCardStyles.d.ts +0 -58
  500. package/lib/typescript/src/styles/components/bankCardStyles.d.ts.map +0 -1
  501. package/lib/typescript/src/styles/components/cancelPaymentModalStyles.d.ts +0 -80
  502. package/lib/typescript/src/styles/components/cancelPaymentModalStyles.d.ts.map +0 -1
  503. package/lib/typescript/src/styles/components/cvvInfoBottomSheetStyles.d.ts +0 -49
  504. package/lib/typescript/src/styles/components/cvvInfoBottomSheetStyles.d.ts.map +0 -1
  505. package/lib/typescript/src/styles/components/savedAddressCardStyles.d.ts +0 -61
  506. package/lib/typescript/src/styles/components/savedAddressCardStyles.d.ts.map +0 -1
  507. package/lib/typescript/src/styles/indexStyles.d.ts +0 -67
  508. package/lib/typescript/src/styles/indexStyles.d.ts.map +0 -1
  509. package/lib/typescript/src/styles/screens/addressScreenStyles..d.ts +0 -58
  510. package/lib/typescript/src/styles/screens/addressScreenStyles..d.ts.map +0 -1
  511. package/lib/typescript/src/styles/screens/bnplScreenStyles.d.ts +0 -78
  512. package/lib/typescript/src/styles/screens/bnplScreenStyles.d.ts.map +0 -1
  513. package/lib/typescript/src/styles/screens/cardScreenStyles.d.ts +0 -161
  514. package/lib/typescript/src/styles/screens/cardScreenStyles.d.ts.map +0 -1
  515. package/lib/typescript/src/styles/screens/emiScreenStyles.d.ts +0 -127
  516. package/lib/typescript/src/styles/screens/emiScreenStyles.d.ts.map +0 -1
  517. package/lib/typescript/src/styles/screens/instantOfferScreenStyles.d.ts +0 -42
  518. package/lib/typescript/src/styles/screens/instantOfferScreenStyles.d.ts.map +0 -1
  519. package/lib/typescript/src/styles/screens/netBankingScreenStyles.d.ts +0 -99
  520. package/lib/typescript/src/styles/screens/netBankingScreenStyles.d.ts.map +0 -1
  521. package/lib/typescript/src/styles/screens/savedAddressScreenStyles.d.ts +0 -49
  522. package/lib/typescript/src/styles/screens/savedAddressScreenStyles.d.ts.map +0 -1
  523. package/lib/typescript/src/styles/screens/selectTenureScreenStyles.d.ts +0 -42
  524. package/lib/typescript/src/styles/screens/selectTenureScreenStyles.d.ts.map +0 -1
  525. package/lib/typescript/src/styles/screens/upiScreenStyles.d.ts +0 -168
  526. package/lib/typescript/src/styles/screens/upiScreenStyles.d.ts.map +0 -1
  527. package/lib/typescript/src/styles/screens/upiTimerScreenStyle.d.ts +0 -94
  528. package/lib/typescript/src/styles/screens/upiTimerScreenStyle.d.ts.map +0 -1
  529. package/lib/typescript/src/styles/screens/walletScreenStyles.d.ts +0 -96
  530. package/lib/typescript/src/styles/screens/walletScreenStyles.d.ts.map +0 -1
  531. package/lib/typescript/src/utility.d.ts +0 -59
  532. package/lib/typescript/src/utility.d.ts.map +0 -1
  533. package/src/components/addressCard.tsx +0 -219
  534. package/src/components/applyCouponCard.tsx +0 -197
  535. package/src/components/bankCard.tsx +0 -50
  536. package/src/components/cancelPaymentModal.tsx +0 -68
  537. package/src/components/checkboxContainer.tsx +0 -66
  538. package/src/components/circularProgress.tsx +0 -74
  539. package/src/components/cvvInfoBottomSheet.tsx +0 -58
  540. package/src/components/deleteAddressModal.tsx +0 -105
  541. package/src/components/fontFamily.tsx +0 -33
  542. package/src/components/getInstalledUPI.ts +0 -32
  543. package/src/components/header.tsx +0 -112
  544. package/src/components/imageLoader.tsx +0 -110
  545. package/src/components/knowMoreBottomSheet.tsx +0 -111
  546. package/src/components/morePaymentContainer.tsx +0 -66
  547. package/src/components/morePaymentMethods.tsx +0 -236
  548. package/src/components/offerCard.tsx +0 -173
  549. package/src/components/orderDetails.tsx +0 -503
  550. package/src/components/paymentFailed.tsx +0 -95
  551. package/src/components/paymentSelector.tsx +0 -186
  552. package/src/components/paymentSuccess.tsx +0 -266
  553. package/src/components/savedAddressBottomSheet.tsx +0 -123
  554. package/src/components/savedAddressCard.tsx +0 -113
  555. package/src/components/savedCardComponent.tsx +0 -271
  556. package/src/components/selectTenureCard.tsx +0 -475
  557. package/src/components/sessionExpire.tsx +0 -89
  558. package/src/components/shimmerView.tsx +0 -31
  559. package/src/navigation.tsx +0 -81
  560. package/src/postRequest/callUIAnalytics.ts +0 -36
  561. package/src/postRequest/cardPostRequest.ts +0 -57
  562. package/src/postRequest/deleteSavedAddress.ts +0 -20
  563. package/src/postRequest/emiPostRequest.ts +0 -77
  564. package/src/postRequest/fetchCardDetails.ts +0 -16
  565. package/src/postRequest/fetchInstantOffer.ts +0 -19
  566. package/src/postRequest/fetchPaymentMethods.ts +0 -14
  567. package/src/postRequest/fetchRecommendedInstruments.tsx +0 -17
  568. package/src/postRequest/fetchSavedAddress.ts +0 -16
  569. package/src/postRequest/fetchSessionDetails.tsx +0 -13
  570. package/src/postRequest/fetchStatus.tsx +0 -14
  571. package/src/postRequest/fetchSurcharge.ts +0 -23
  572. package/src/postRequest/methodsPostRequest.tsx +0 -41
  573. package/src/postRequest/upiPostRequest.tsx +0 -37
  574. package/src/screens/addressScreen.tsx +0 -887
  575. package/src/screens/bnplScreen.tsx +0 -309
  576. package/src/screens/cardScreen.tsx +0 -1114
  577. package/src/screens/emiScreen.tsx +0 -856
  578. package/src/screens/instantOfferList.tsx +0 -180
  579. package/src/screens/mainScreen.tsx +0 -1022
  580. package/src/screens/netBankingScreen.tsx +0 -460
  581. package/src/screens/savedAddressScreen.tsx +0 -294
  582. package/src/screens/selectTenureScreen.tsx +0 -137
  583. package/src/screens/upiScreen.tsx +0 -658
  584. package/src/screens/upiTimerScreen.tsx +0 -263
  585. package/src/screens/walletScreen.tsx +0 -401
  586. package/src/screens/webViewScreen.tsx +0 -90
  587. package/src/sdk-version.json +0 -1
  588. package/src/serviceRequest.ts +0 -27
  589. package/src/sharedContext/checkoutDetailsHandler.ts +0 -104
  590. package/src/sharedContext/handlePaymentResponseHandler.ts +0 -301
  591. package/src/sharedContext/paymentStatusHandler.ts +0 -12
  592. package/src/sharedContext/userdataHandler.ts +0 -55
  593. package/src/styles/components/addressCardStyles.ts +0 -55
  594. package/src/styles/components/bankCardStyles.ts +0 -58
  595. package/src/styles/components/cancelPaymentModalStyles.ts +0 -82
  596. package/src/styles/components/cvvInfoBottomSheetStyles.ts +0 -49
  597. package/src/styles/components/savedAddressCardStyles.ts +0 -60
  598. package/src/styles/indexStyles.ts +0 -60
  599. package/src/styles/screens/addressScreenStyles..ts +0 -60
  600. package/src/styles/screens/bnplScreenStyles.ts +0 -78
  601. package/src/styles/screens/cardScreenStyles.ts +0 -153
  602. package/src/styles/screens/emiScreenStyles.ts +0 -112
  603. package/src/styles/screens/instantOfferScreenStyles.ts +0 -43
  604. package/src/styles/screens/netBankingScreenStyles.ts +0 -84
  605. package/src/styles/screens/savedAddressScreenStyles.ts +0 -49
  606. package/src/styles/screens/selectTenureScreenStyles.ts +0 -37
  607. package/src/styles/screens/upiScreenStyles.ts +0 -167
  608. package/src/styles/screens/upiTimerScreenStyle.ts +0 -91
  609. package/src/styles/screens/walletScreenStyles.ts +0 -96
  610. package/src/utility.ts +0 -201
@@ -1,856 +0,0 @@
1
- import {
2
- View,
3
- Text,
4
- BackHandler,
5
- Dimensions,
6
- ScrollView,
7
- Image
8
- } from 'react-native';
9
- import { useEffect, useRef, useState } from 'react';
10
- import {
11
- type Bank,
12
- type ChooseEmiModel,
13
- type Emi,
14
- type PaymentResultObject,
15
- type PaymentMethod,
16
- APIStatus
17
- } from '../interface';
18
- import { checkoutDetailsHandler, setCheckOutDetailsHandlerToDefault } from '../sharedContext/checkoutDetailsHandler';
19
- import fetchPaymentMethods from '../postRequest/fetchPaymentMethods';
20
- import ShimmerView from '../components/shimmerView';
21
- import Header from '../components/header';
22
- import { TextInput } from 'react-native-paper';
23
- import BankCard from '../components/bankCard';
24
- import SelectTenureScreen from './selectTenureScreen';
25
- import emiPostRequest from '../postRequest/emiPostRequest';
26
- import LottieView from 'lottie-react-native';
27
- import PaymentFailed from '../components/paymentFailed';
28
- import PaymentSuccess from '../components/paymentSuccess';
29
- import SessionExpire from '../components/sessionExpire';
30
- import { paymentHandler } from '../sharedContext/paymentStatusHandler';
31
- import WebViewScreen from './webViewScreen';
32
- import fetchStatus from '../postRequest/fetchStatus';
33
- import PaymentSelectorView from '../components/paymentSelector';
34
- import Toast from 'react-native-toast-message'
35
- import styles from '../styles/screens/emiScreenStyles';
36
- import { handleFetchStatusResponseHandler, handlePaymentResponse } from '../sharedContext/handlePaymentResponseHandler';
37
- import type { CheckoutStackParamList } from '../navigation';
38
- import type { NavigationProp } from '@react-navigation/native';
39
- import { setUserDataHandlerToDefault } from '../sharedContext/userdataHandler';
40
-
41
- type EmiScreenNavigationProp = NavigationProp<CheckoutStackParamList, 'EmiScreen'>;
42
-
43
- interface Props {
44
- navigation: EmiScreenNavigationProp;
45
- }
46
-
47
- const EmiScreen = ({ navigation }: Props) => {
48
- const [emiBankList, setEmiBankList] = useState<ChooseEmiModel>({ cards: [] });
49
- const [defaultEmiBankList, setDefaultEmiBankList] = useState<ChooseEmiModel>({
50
- cards: [],
51
- });
52
- const [selectedOthersOption, setSelectedOthersOption] = useState('');
53
- const [searchText, setSearchText] = useState<string>('');
54
- const [filterList, setFilterList] = useState<[string, boolean][]>([]);
55
- const [isFilterExisted, setIsFilterExisted] = useState<boolean>(false);
56
- const { checkoutDetails } = checkoutDetailsHandler;
57
- const order: Record<string, number> = {
58
- 'Credit Card': 0,
59
- 'Debit Card': 1,
60
- 'Others': 2,
61
- };
62
- const screenHeight = Dimensions.get('window').height;
63
- const [isSearchVisible, setIsSearchVisible] = useState(true);
64
- const [checkedOnce, setCheckedOnce] = useState(false);
65
- const [isFirstLoad, setIsFirstLoad] = useState(true);
66
- const [searchTextFocused, setSearchTextFocused] = useState(false);
67
-
68
- const [selectTenureScreen, setSelectTenureScreen] = useState(false);
69
-
70
- const [selectedCard, setSelectedCard] = useState<string>('');
71
- const [selectedBank, setSelectedBank] = useState<Bank>();
72
- const [selectedEmi, setSelectedEmi] = useState<Emi[]>([]);
73
-
74
- const [loading, setLoading] = useState(false);
75
- const [failedModalOpen, setFailedModalOpen] = useState(false);
76
- const [successModalOpen, setSuccessModalOpen] = useState(false);
77
- const [sessionExpireModalOpen, setSessionExppireModalOpen] = useState(false);
78
- const [successfulTimeStamp, setSuccessfulTimeStamp] = useState('');
79
-
80
- const [status, setStatus] = useState('');
81
- const [transactionId, setTransactionId] = useState('');
82
-
83
- const [paymentHtml, setPaymentHtml] = useState('');
84
- const [paymentUrl, setPaymentUrl] = useState('');
85
-
86
- const [showWebView, setShowWebView] = useState(false);
87
- const backgroundApiInterval = useRef<NodeJS.Timeout | null>(null);
88
-
89
- const paymentFailedMessage = useRef<string>(
90
- 'You may have cancelled the payment or there was a delay in response. Please retry.'
91
- );
92
-
93
- useEffect(() => {
94
- const fetchData = async () => {
95
- const response = await fetchPaymentMethods()
96
- switch(response.apiStatus) {
97
- case APIStatus.Success : {
98
- const data = response.data
99
- data.forEach((paymentMethod: PaymentMethod) => {
100
- if (paymentMethod.type === 'Emi') {
101
- const title = paymentMethod.title;
102
- const emiCardName = title?.includes('Credit')
103
- ? 'Credit Card'
104
- : title?.includes('Debit')
105
- ? 'Debit Card'
106
- : 'Others';
107
-
108
- let emiBankImage = paymentMethod.logoUrl;
109
- if (emiBankImage?.startsWith('/assets')) {
110
- emiBankImage = `https://checkout.boxpay.in${emiBankImage}`;
111
- }
112
-
113
- const emiMethod = paymentMethod.emiMethod;
114
- if(emiMethod) {
115
- const bankName =
116
- emiCardName === 'Others'
117
- ? emiMethod.cardlessEmiProviderTitle
118
- : emiMethod.issuerTitle;
119
- const effectiveInterestRate =
120
- emiMethod.effectiveInterestRate || 0.0;
121
- const bankInterestRate =
122
- emiCardName === 'Others' ? 0.0 : effectiveInterestRate;
123
-
124
- let noApplicableOffer = false;
125
- let lowApplicableOffer = false;
126
- if (emiMethod.applicableOffer) {
127
- const discount = emiMethod.applicableOffer.discount;
128
- noApplicableOffer = discount.type === 'NoCostEmi';
129
- lowApplicableOffer = discount.type === 'LowCostEmi';
130
- }
131
-
132
- const bank: Bank = {
133
- iconUrl: emiBankImage ?? '',
134
- name: bankName ?? '',
135
- percent: noApplicableOffer
136
- ? (emiMethod.merchantBorneInterestRate ?? 0)
137
- : bankInterestRate,
138
- noCostApplied: noApplicableOffer,
139
- lowCostApplied: lowApplicableOffer,
140
- emiList: [],
141
- cardLessEmiValue: emiMethod.cardlessEmiProviderValue ?? '',
142
- issuerBrand:
143
- emiCardName === 'Others' ? '' : (emiMethod.issuer ?? ''),
144
- };
145
-
146
- const emi: Emi = {
147
- duration: emiMethod.duration ?? 0,
148
- percent: noApplicableOffer
149
- ? (emiMethod.merchantBorneInterestRate ?? 0)
150
- : bankInterestRate,
151
- amount: emiMethod.emiAmountLocaleFull ?? '',
152
- totalAmount: emiMethod.totalAmountLocaleFull ?? '',
153
- discount: emiMethod.merchantBorneInterestAmountLocaleFull ?? '',
154
- interestCharged: lowApplicableOffer
155
- ? (emiMethod.interestChargedAmountLocaleFull ?? '')
156
- : (emiMethod.bankChargedInterestAmountLocaleFull ?? ''),
157
- noCostApplied: noApplicableOffer,
158
- processingFee: emiMethod.processingFee?.amountLocaleFull || '0',
159
- lowCostApplied: lowApplicableOffer,
160
- code: emiMethod.applicableOffer?.code || '',
161
- netAmount: emiMethod.netAmountLocaleFull ?? '',
162
- };
163
-
164
- addBankDetails(emiCardName, bank, emi);
165
- }
166
- }
167
- });
168
- break
169
- }
170
- case APIStatus.Failed : {
171
- Toast.show({
172
- type: 'error',
173
- text1: 'Oops!',
174
- text2: 'Something went wrong. Please try again.'
175
- });
176
- break
177
- }
178
- }
179
- }
180
-
181
- fetchData()
182
- }, []);
183
-
184
- useEffect(() => {
185
- if (defaultEmiBankList.cards.length > 0) {
186
- setEmiBankList(defaultEmiBankList);
187
- }
188
- }, [defaultEmiBankList]);
189
-
190
- const startBackgroundApiTask = () => {
191
- backgroundApiInterval.current = setInterval(() => {
192
- callFetchStatusApi();
193
- }, 4000);
194
- };
195
-
196
- const stopBackgroundApiTask = () => {
197
- if (backgroundApiInterval.current) {
198
- clearInterval(backgroundApiInterval.current);
199
- }
200
- };
201
-
202
- const callFetchStatusApi = async () => {
203
- const response = await fetchStatus();
204
- handleFetchStatusResponseHandler({
205
- response: response,
206
- checkoutDetailsErrorMessage: checkoutDetailsHandler.checkoutDetails.errorMessage,
207
- onSetStatus: setStatus,
208
- onSetTransactionId: setTransactionId,
209
- onSetFailedMessage: (msg) => {
210
- paymentFailedMessage.current = msg
211
- },
212
- onShowFailedModal: () => {
213
- setFailedModalOpen(true)
214
- },
215
- onShowSuccessModal: (ts) => {
216
- setSuccessfulTimeStamp(ts);
217
- setSuccessModalOpen(true);
218
- },
219
- onShowSessionExpiredModal: () => {
220
- setSessionExppireModalOpen(true)
221
- },
222
- setLoading: setLoading,
223
- stopBackgroundApiTask: stopBackgroundApiTask,
224
- isFromUPIIntentFlow : false
225
- });
226
- };
227
-
228
- useEffect(() => {
229
- if (emiBankList.cards.length > 0) {
230
- setIsFirstLoad(false);
231
- }
232
- }, [emiBankList]);
233
-
234
- useEffect(() => {
235
- if (paymentUrl) {
236
- setShowWebView(true);
237
- }
238
- }, [paymentUrl]);
239
-
240
- useEffect(() => {
241
- if (paymentHtml) {
242
- setShowWebView(true);
243
- }
244
- }, [paymentHtml]);
245
-
246
- const onProceedForward = async (instrumentValue: string) => {
247
- let response;
248
- setLoading(true);
249
- response = await emiPostRequest({duration:instrumentValue});
250
- handlePaymentResponse({
251
- response: response,
252
- checkoutDetailsErrorMessage: checkoutDetails.errorMessage,
253
- onSetStatus: setStatus,
254
- onSetTransactionId: setTransactionId,
255
- onSetPaymentHtml: setPaymentHtml,
256
- onSetPaymentUrl: setPaymentUrl,
257
- onSetFailedMessage: (msg) => (paymentFailedMessage.current = msg),
258
- onShowFailedModal: () => setFailedModalOpen(true),
259
- onShowSuccessModal: (ts) => {
260
- setSuccessfulTimeStamp(ts);
261
- setSuccessModalOpen(true);
262
- },
263
- onShowSessionExpiredModal: () => setSessionExppireModalOpen(true),
264
- setLoading: setLoading
265
- });
266
- };
267
-
268
- const addBankDetails = (cardType: string, bank: Bank, emi: Emi) => {
269
- try {
270
- setDefaultEmiBankList((prev) => {
271
- const existingCardType = prev.cards.find(
272
- (card) => card.cardType.toLowerCase() === cardType.toLowerCase()
273
- );
274
-
275
- if (bank.noCostApplied) {
276
- setIsFilterExisted(true);
277
- if (!filterList.some(([filter]) => filter === 'No Cost EMI')) {
278
- setFilterList([...filterList, ['No Cost EMI', false]]);
279
- }
280
- }
281
-
282
- let updatedCards;
283
- if (existingCardType) {
284
- let updatedBanks = [...existingCardType.banks];
285
- const existingBankIndex = updatedBanks.findIndex(
286
- (b) => b.name === bank.name && b.iconUrl === bank.iconUrl
287
- );
288
-
289
- if (existingBankIndex !== -1) {
290
- const existingBank = { ...updatedBanks[existingBankIndex] };
291
- const emiExists = existingBank.emiList?.some(
292
- (e) => e.duration === emi.duration && e.amount === emi.amount
293
- );
294
-
295
- if (!emiExists) {
296
- existingBank.emiList = existingBank.emiList
297
- ? [...existingBank.emiList, emi]
298
- : [emi];
299
- existingBank.noCostApplied ||= emi.noCostApplied;
300
- existingBank.lowCostApplied ||= emi.lowCostApplied;
301
- existingBank.percent = Math.min(
302
- existingBank.percent ?? bank.percent,
303
- bank.percent
304
- );
305
-
306
- updatedBanks[existingBankIndex] = existingBank as Bank;
307
- }
308
- } else {
309
- updatedBanks = [...updatedBanks, { ...bank, emiList: [emi] }];
310
- }
311
-
312
- // 🔽 Sort updated banks inside card
313
- updatedBanks.sort((a, b) => {
314
- if (b.noCostApplied !== a.noCostApplied)
315
- return b.noCostApplied ? 1 : -1;
316
- if (b.lowCostApplied !== a.lowCostApplied)
317
- return b.lowCostApplied ? 1 : -1;
318
- return a.name.localeCompare(b.name);
319
- });
320
-
321
- updatedCards = prev.cards.map((card) =>
322
- card.cardType.toLowerCase() === cardType.toLowerCase()
323
- ? { ...card, banks: updatedBanks }
324
- : card
325
- );
326
- } else {
327
- updatedCards = [
328
- ...prev.cards,
329
- {
330
- cardType,
331
- banks: [{ ...bank, emiList: [emi] }],
332
- },
333
- ];
334
- }
335
-
336
- // 🔽 Sort cards based on predefined order
337
- updatedCards.sort(
338
- (a, b) =>
339
- (order[a.cardType as keyof typeof order] ?? 3) -
340
- (order[b.cardType as keyof typeof order] ?? 3)
341
- );
342
-
343
- const newEmiBankList = { ...prev, cards: updatedCards };
344
-
345
- // 🔽 Set default selected card
346
- if (
347
- newEmiBankList.cards.some(
348
- (card) => card.cardType.toLowerCase() === 'credit card'
349
- )
350
- ) {
351
- setSelectedCard('Credit Card');
352
- } else if (
353
- newEmiBankList.cards.some(
354
- (card) => card.cardType.toLowerCase() === 'debit card'
355
- )
356
- ) {
357
- setSelectedCard('Debit Card');
358
- } else if (
359
- newEmiBankList.cards.some(
360
- (card) => card.cardType.toLowerCase() === 'others'
361
- )
362
- ) {
363
- setSelectedCard('Others');
364
- } else {
365
- setSelectedCard(cardType);
366
- }
367
-
368
- return newEmiBankList;
369
- });
370
- } catch (error) {}
371
- };
372
-
373
- const onProceedBack = () => {
374
- navigation.goBack()
375
- return true;
376
- };
377
-
378
- useEffect(() => {
379
-
380
- const backAction = () => {
381
- if (showWebView) {
382
- setShowWebView(false);
383
- paymentFailedMessage.current = checkoutDetails.errorMessage;
384
- setStatus('Failed');
385
- setFailedModalOpen(true);
386
- setLoading(false);
387
- return true;
388
- } else if (loading) {
389
- return true; // Prevent default back action
390
- } else if (selectTenureScreen) {
391
- setSelectTenureScreen(false);
392
- return true;
393
- }
394
- return onProceedBack();
395
- }
396
- const backHandler = BackHandler.addEventListener(
397
- 'hardwareBackPress',
398
- backAction,
399
- );
400
-
401
- return () => backHandler.remove();
402
- }, [navigation]);
403
-
404
- const navigateToCardScreen = (
405
- duration: number,
406
- bankName: string,
407
- bankUrl: string,
408
- offerCode: string,
409
- amount: string,
410
- percent: number
411
- ) => {
412
- navigation.navigate("CardScreen", {
413
- duration: duration,
414
- bankName: bankName,
415
- bankUrl: bankUrl,
416
- offerCode: offerCode,
417
- amount: amount,
418
- percent: percent,
419
- cardType: selectedCard,
420
- issuerBrand: selectedBank?.issuerBrand,
421
- })
422
- };
423
-
424
- useEffect(() => {
425
- if (searchText.trim() === '') {
426
- // Reset to original bank list if search query is empty
427
- setEmiBankList(defaultEmiBankList);
428
- } else {
429
- // Filter banks whose name starts with the search query (case-insensitive)
430
- const filteredList: ChooseEmiModel = {
431
- ...defaultEmiBankList,
432
- cards: defaultEmiBankList.cards.map((card) => ({
433
- ...card,
434
- banks: card.banks.filter((bank) =>
435
- bank.name.toLowerCase().startsWith(searchText.toLowerCase())
436
- ),
437
- })),
438
- };
439
- setEmiBankList(filteredList);
440
- }
441
- }, [searchText]);
442
-
443
- const getBanksByFilter = (cardType: string, filterApplied: string) => {
444
- setFilterList((prevFilters) => {
445
- // Toggle the filter: if already active, deactivate it, else activate it and deactivate others
446
- const newFilters: [string, boolean][] = prevFilters.map(
447
- ([filter, isActive]) =>
448
- filter === filterApplied ? [filter, !isActive] : [filter, false]
449
- );
450
-
451
- // Check if any filter is active
452
- const isAnyFilterActive = newFilters.some(([, isActive]) => isActive);
453
-
454
- setEmiBankList(() => {
455
- if (!isAnyFilterActive) {
456
- return defaultEmiBankList; // Reset if no filter is active
457
- }
458
-
459
- return {
460
- cards: defaultEmiBankList.cards.map((card) => {
461
- if (card.cardType.toLowerCase() === cardType.toLowerCase()) {
462
- let filteredBanks = card.banks;
463
-
464
- // Apply filters based on the active filter
465
- if (
466
- newFilters.some(
467
- ([filter, isActive]) => isActive && filter.includes('No Cost')
468
- )
469
- ) {
470
- filteredBanks = card.banks.filter((bank) => bank.noCostApplied);
471
- } else if (
472
- newFilters.some(
473
- ([filter, isActive]) =>
474
- isActive && filter.includes('Low Cost')
475
- )
476
- ) {
477
- filteredBanks = card.banks.filter(
478
- (bank) => bank.lowCostApplied
479
- );
480
- }
481
-
482
- return { ...card, banks: filteredBanks };
483
- }
484
- return card;
485
- }),
486
- };
487
- });
488
-
489
- return newFilters;
490
- });
491
- };
492
-
493
- const handleCardClick = (cardType: string) => {
494
- setSelectedCard(cardType);
495
- setSearchText('');
496
- setFilterList((prevFilters) =>
497
- prevFilters.map(([filter]) => [filter, false])
498
- );
499
- };
500
-
501
- const handleSelectedBank = (selectedBank: Bank) => {
502
- try {
503
- setSelectedBank(selectedBank);
504
- setFilterList((prevFilters) =>
505
- prevFilters.map(([filter]) => [filter, false])
506
- );
507
- setSelectedEmi(sortEmiList(selectedBank));
508
- setSelectTenureScreen(true);
509
- } catch (error) {}
510
- };
511
-
512
- const sortEmiList = (bank: Bank): Emi[] => {
513
- return [...bank.emiList].sort((a, b) => {
514
- // Sort by `noCostApplied` first (true comes before false)
515
- if (a.noCostApplied !== b.noCostApplied) {
516
- return a.noCostApplied ? -1 : 1;
517
- }
518
- // Then by `lowCostApplied` (true comes before false)
519
- if (a.lowCostApplied !== b.lowCostApplied) {
520
- return a.lowCostApplied ? -1 : 1;
521
- }
522
- // Finally, sort by `duration` in ascending order
523
- return a.duration - b.duration;
524
- });
525
- };
526
-
527
- const onExitCheckout = () => {
528
- setSuccessModalOpen(false)
529
- setSessionExppireModalOpen(false)
530
- const mockPaymentResult: PaymentResultObject = {
531
- status: status || '',
532
- transactionId: transactionId || '',
533
- };
534
- setCheckOutDetailsHandlerToDefault()
535
- setUserDataHandlerToDefault()
536
- paymentHandler.onPaymentResult(mockPaymentResult);
537
- };
538
-
539
- return (
540
- <View style={styles.screenView}>
541
- {isFirstLoad ? (
542
- <ShimmerView/>
543
- ) : loading ? (
544
- <View
545
- style={styles.loadingContainer}
546
- >
547
- <LottieView
548
- source={require('../../assets/animations/boxpayLogo.json')}
549
- autoPlay
550
- loop
551
- style={styles.lottieStyle}
552
- />
553
- <Text>Loading...</Text>
554
- </View>
555
- ) : (
556
- <View style={styles.availableScreenView}>
557
- {!selectTenureScreen && (
558
- <>
559
- <Header
560
- onBackPress={onProceedBack}
561
- showDesc={true}
562
- showSecure={false}
563
- text="Choose EMI Option"
564
- />
565
- <View
566
- style={styles.container}
567
- >
568
- <View
569
- style={styles.insideContainer}
570
- >
571
- {emiBankList.cards.map((item, index) => (
572
- <View
573
- key={index}
574
- style={styles.cardsContainer}
575
- >
576
- <Text
577
- style={[styles.cardsText,{
578
- color:
579
- selectedCard === item.cardType
580
- ? checkoutDetails.buttonColor
581
- : '#01010273',
582
- fontFamily: checkoutDetails.fontFamily.semiBold,
583
- }]}
584
- onPress={() => handleCardClick(item.cardType)}
585
- >
586
- {item.cardType}
587
- </Text>
588
- <View
589
- style={[styles.highlightedDivider,{
590
- backgroundColor:
591
- selectedCard === item.cardType
592
- ? checkoutDetails.buttonColor
593
- : '',
594
- }]}
595
- />
596
- </View>
597
- ))}
598
- </View>
599
- <View
600
- style={styles.divider}
601
- />
602
- {isSearchVisible && (
603
- <View style={{ backgroundColor: 'white' }}>
604
- <TextInput
605
- mode="outlined"
606
- label={
607
- <Text
608
- style={[styles.searchTextLable,{
609
- color: searchTextFocused
610
- ? '#2D2B32'
611
- : searchText != '' && searchText != null
612
- ? '#2D2B32'
613
- : '#ADACB0',
614
- fontFamily: checkoutDetails.fontFamily.regular,
615
- }]}
616
- >
617
- {selectedCard === 'Others'
618
- ? 'Search for other EMI options'
619
- : 'Search for bank'}
620
- </Text>
621
- }
622
- value={searchText}
623
- onChangeText={(it) => {
624
- setSearchText(it);
625
- }}
626
- theme={{
627
- colors: {
628
- primary: '#2D2B32',
629
- outline: '#E6E6E6',
630
- },
631
- }}
632
- style={[styles.textInputStyle, {fontFamily: checkoutDetails.fontFamily.regular,}]}
633
- left={
634
- <TextInput.Icon
635
- icon={() => (
636
- <Image
637
- source={require('../../assets/images/ic_search.png')}
638
- style={{ width: 20, height: 20 }}
639
- />
640
- )}
641
- />
642
- }
643
- outlineStyle={{
644
- borderRadius: 6,
645
- borderWidth: 1,
646
- }}
647
- onFocus={() => setSearchTextFocused(true)}
648
- onBlur={() => setSearchTextFocused(false)}
649
- />
650
- </View>
651
- )}
652
- {isFilterExisted &&
653
- selectedCard != 'Others' &&
654
- filterList.map(([item, isSelected], index) => (
655
- <View
656
- key={index}
657
- style={styles.filterContainer}
658
- >
659
- <View
660
- style={[styles.filterBox,{
661
- borderColor: isSelected ? '#1CA672' : '#E6E6E6',
662
- backgroundColor: isSelected ? '#E8F6F1' : 'white',
663
- }]}
664
- >
665
- <Text
666
- style={[styles.filterText, {fontFamily: checkoutDetails.fontFamily.semiBold,}]}
667
- onPress={() => {
668
- getBanksByFilter(selectedCard, item);
669
- }}
670
- >
671
- {item}
672
- </Text>
673
- <Image
674
- source={
675
- isSelected
676
- ? require('../../assets/images/ic_cross.png')
677
- : require('../../assets/images/add_icon.png')
678
- }
679
- style={[styles.filterImage,{
680
- tintColor: isSelected ? '#2D2B32' : '#7F7D83',
681
- }]}
682
- />
683
- </View>
684
- </View>
685
- ))}
686
- </View>
687
- <ScrollView
688
- contentContainerStyle={{ flexGrow: 1 }}
689
- keyboardShouldPersistTaps="handled"
690
- onContentSizeChange={(_, contentHeight) => {
691
- if (!checkedOnce) {
692
- if (contentHeight > screenHeight) {
693
- setIsSearchVisible(true);
694
- }
695
- setCheckedOnce(true);
696
- }
697
- }}
698
- >
699
- <Text
700
- style={[styles.headingText, {fontFamily: checkoutDetails.fontFamily.semiBold,}]}
701
- >
702
- {selectedCard === 'Others' ? 'Others' : 'All Banks'}
703
- </Text>
704
- <View
705
- style={styles.listContainer}
706
- >
707
- {(() => {
708
- const selectedCardData = emiBankList.cards.find(
709
- (card) => card.cardType === selectedCard
710
- );
711
-
712
- if (
713
- !selectedCardData ||
714
- selectedCardData.banks?.length === 0
715
- ) {
716
- return (
717
- <View
718
- style={styles.emptyListContainer}
719
- >
720
- <Image
721
- source={require('../../assets/images/no_results_found.png')}
722
- style={styles.emptyListImage}
723
- />
724
- <Text
725
- style={[styles.emptyListHeadingText, {fontFamily: checkoutDetails.fontFamily.semiBold,}]}
726
- >
727
- Oops!! No result found
728
- </Text>
729
- <Text
730
- style={[styles.emptyListDescText, {fontFamily: checkoutDetails.fontFamily.regular,}]}
731
- >
732
- Please try another search
733
- </Text>
734
- </View>
735
- );
736
- }
737
-
738
- if (selectedCard === 'Others') {
739
- return (
740
- <PaymentSelectorView
741
- providerList={selectedCardData.banks.map((bank) => ({
742
- type: 'EMI',
743
- id: bank.cardLessEmiValue,
744
- displayName: '',
745
- displayValue: bank.name,
746
- iconUrl: bank.iconUrl,
747
- instrumentTypeValue: bank.cardLessEmiValue,
748
- isSelected:
749
- selectedOthersOption === bank.cardLessEmiValue,
750
- }))}
751
- onProceedForward={(_, instrumentValue) =>
752
- onProceedForward(instrumentValue)
753
- }
754
- errorImage={require('../../assets/images/ic_bnpl_semi_bold.png')}
755
- onClickRadio={(selectedInstumentValue) => {
756
- setSelectedOthersOption(selectedInstumentValue);
757
- }}
758
- />
759
- );
760
- }
761
-
762
- // For Credit or Debit
763
- return selectedCardData.banks.map(
764
- (bank, index, bankArray) => (
765
- <View key={index} style={{ flexDirection: 'column' }}>
766
- <BankCard
767
- name={bank.name}
768
- iconUrl={bank.iconUrl}
769
- hasNoCostEmi={bank.noCostApplied}
770
- hasLowCostEmi={bank.lowCostApplied}
771
- onPress={() => handleSelectedBank(bank)}
772
- />
773
- {index !== bankArray.length - 1 && (
774
- <View
775
- style={styles.divider}
776
- />
777
- )}
778
- </View>
779
- )
780
- );
781
- })()}
782
- </View>
783
- </ScrollView>
784
- </>
785
- )}
786
-
787
- {selectTenureScreen && (
788
- <View style={styles.availableScreenView}>
789
- <SelectTenureScreen
790
- bankName={selectedBank?.name || ''}
791
- bankUrl={selectedBank?.iconUrl || ''}
792
- onbackPress={() => {
793
- setSelectTenureScreen(false);
794
- }}
795
- cardType={selectedCard}
796
- emiModel={selectedEmi ? selectedEmi : []}
797
- onProceedForward={(
798
- duration: number,
799
- bankName: string,
800
- bankUrl: string,
801
- offerCode: string,
802
- amount: string,
803
- percent: number
804
- ) => {
805
- navigateToCardScreen(
806
- duration,
807
- bankName,
808
- bankUrl,
809
- offerCode,
810
- amount,
811
- percent
812
- );
813
- }}
814
- />
815
- </View>
816
- )}
817
- </View>
818
- )}
819
- {failedModalOpen && (
820
- <PaymentFailed
821
- onClick={() => setFailedModalOpen(false)}
822
- errorMessage={paymentFailedMessage.current}
823
- />
824
- )}
825
-
826
- {successModalOpen && (
827
- <PaymentSuccess
828
- onClick={onExitCheckout}
829
- transactionId={transactionId || ''}
830
- method="Card"
831
- localDateTime={successfulTimeStamp}
832
- />
833
- )}
834
-
835
- {sessionExpireModalOpen && <SessionExpire onClick={onExitCheckout} />}
836
-
837
- {showWebView && (
838
- <View
839
- style={styles.webViewScreenStyle}
840
- >
841
- <WebViewScreen
842
- url={paymentUrl}
843
- html={paymentHtml}
844
- onBackPress={() => {
845
- startBackgroundApiTask();
846
- setLoading(true);
847
- setShowWebView(false);
848
- }}
849
- />
850
- </View>
851
- )}
852
- </View>
853
- );
854
- };
855
-
856
- export default EmiScreen;