@transfergratis/react-native-sdk 0.1.3 → 0.1.5

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 (308) hide show
  1. package/android/.idea/caches/deviceStreaming.xml +860 -0
  2. package/android/build/.transforms/{7ec900c0f64f5f1a7c88998dd44001b8 → 01c28d00c798aa4846f16ce72123ebf9}/transformed/classes/classes_dex/classes.dex +0 -0
  3. package/android/build/intermediates/aapt_friendly_merged_manifests/debug/processDebugManifest/aapt/AndroidManifest.xml +1 -0
  4. package/android/build/intermediates/aar_main_jar/debug/syncDebugLibJars/classes.jar +0 -0
  5. package/android/build/intermediates/annotations_typedef_file/debug/extractDebugAnnotations/typedefs.txt +0 -0
  6. package/android/build/intermediates/compile_library_classes_jar/debug/bundleLibCompileToJarDebug/classes.jar +0 -0
  7. package/android/build/intermediates/incremental/debug/packageDebugResources/compile-file-map.properties +2 -2
  8. package/android/build/intermediates/incremental/debug-mergeJavaRes/merge-state +0 -0
  9. package/android/build/intermediates/manifest_merge_blame_file/debug/processDebugManifest/manifest-merger-blame-debug-report.txt +51 -48
  10. package/android/build/intermediates/merged_java_res/debug/mergeDebugJavaResource/feature-transfergratis-react-native-sdk.jar +0 -0
  11. package/android/build/intermediates/merged_manifest/debug/processDebugManifest/AndroidManifest.xml +1 -0
  12. package/android/build/intermediates/runtime_library_classes_jar/debug/bundleLibRuntimeToJarDebug/classes.jar +0 -0
  13. package/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/inputs/source-to-output.tab +0 -0
  14. package/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/inputs/source-to-output.tab.values.at +0 -0
  15. package/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/jvm/kotlin/class-attributes.tab +0 -0
  16. package/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/jvm/kotlin/class-attributes.tab.values.at +0 -0
  17. package/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/jvm/kotlin/class-fq-name-to-source.tab +0 -0
  18. package/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/jvm/kotlin/class-fq-name-to-source.tab.values.at +0 -0
  19. package/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/jvm/kotlin/internal-name-to-source.tab +0 -0
  20. package/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/jvm/kotlin/internal-name-to-source.tab.keystream +0 -0
  21. package/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/jvm/kotlin/internal-name-to-source.tab.keystream.len +0 -0
  22. package/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/jvm/kotlin/internal-name-to-source.tab.len +0 -0
  23. package/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/jvm/kotlin/internal-name-to-source.tab.values.at +0 -0
  24. package/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/jvm/kotlin/internal-name-to-source.tab_i +0 -0
  25. package/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/jvm/kotlin/proto.tab +0 -0
  26. package/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/jvm/kotlin/proto.tab.values.at +0 -0
  27. package/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/jvm/kotlin/source-to-classes.tab +0 -0
  28. package/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/jvm/kotlin/source-to-classes.tab.values.at +0 -0
  29. package/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/jvm/kotlin/subtypes.tab +0 -0
  30. package/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/jvm/kotlin/subtypes.tab.values.at +0 -0
  31. package/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/jvm/kotlin/supertypes.tab +0 -0
  32. package/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/jvm/kotlin/supertypes.tab.values.at +0 -0
  33. package/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/lookups/counters.tab +1 -1
  34. package/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/lookups/file-to-id.tab +0 -0
  35. package/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/lookups/file-to-id.tab.values.at +0 -0
  36. package/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/lookups/id-to-file.tab +0 -0
  37. package/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/lookups/id-to-file.tab.keystream +0 -0
  38. package/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/lookups/id-to-file.tab.keystream.len +0 -0
  39. package/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/lookups/id-to-file.tab.len +0 -0
  40. package/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/lookups/id-to-file.tab.values.at +0 -0
  41. package/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/lookups/id-to-file.tab_i +0 -0
  42. package/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/lookups/lookups.tab +0 -0
  43. package/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/lookups/lookups.tab.keystream +0 -0
  44. package/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/lookups/lookups.tab.keystream.len +0 -0
  45. package/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/lookups/lookups.tab.len +0 -0
  46. package/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/lookups/lookups.tab.values.at +0 -0
  47. package/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/lookups/lookups.tab_i +0 -0
  48. package/android/build/kotlin/compileDebugKotlin/cacheable/last-build.bin +0 -0
  49. package/android/build/kotlin/compileDebugKotlin/classpath-snapshot/shrunk-classpath-snapshot.bin +0 -0
  50. package/android/build/kotlin/compileDebugKotlin/local-state/build-history.bin +0 -0
  51. package/android/build/outputs/aar/transfergratis-react-native-sdk-debug.aar +0 -0
  52. package/android/build/outputs/logs/manifest-merger-debug-report.txt +27 -23
  53. package/android/build/tmp/kotlin-classes/debug/kyc/transfergratis/com/TransfergratisSdkModule.class +0 -0
  54. package/android/build/tmp/kotlin-classes/debug/kyc/transfergratis/com/TransfergratisSdkView.class +0 -0
  55. package/android/build.gradle +1 -5
  56. package/android/src/main/AndroidManifest.xml +1 -0
  57. package/build/api/axios.d.ts +30 -0
  58. package/build/api/axios.d.ts.map +1 -0
  59. package/build/api/axios.js +92 -0
  60. package/build/api/axios.js.map +1 -0
  61. package/build/components/EnhancedCameraView.d.ts +1 -41
  62. package/build/components/EnhancedCameraView.d.ts.map +1 -1
  63. package/build/components/EnhancedCameraView.js +76 -35
  64. package/build/components/EnhancedCameraView.js.map +1 -1
  65. package/build/components/EnhancedCameraView.web.d.ts +1 -41
  66. package/build/components/EnhancedCameraView.web.d.ts.map +1 -1
  67. package/build/components/EnhancedCameraView.web.js +28 -4
  68. package/build/components/EnhancedCameraView.web.js.map +1 -1
  69. package/build/components/KYCElements/CountrySelectionTemplate.d.ts +2 -2
  70. package/build/components/KYCElements/CountrySelectionTemplate.d.ts.map +1 -1
  71. package/build/components/KYCElements/CountrySelectionTemplate.js +71 -114
  72. package/build/components/KYCElements/CountrySelectionTemplate.js.map +1 -1
  73. package/build/components/KYCElements/FileUploadTemplate.d.ts.map +1 -1
  74. package/build/components/KYCElements/FileUploadTemplate.js +7 -3
  75. package/build/components/KYCElements/FileUploadTemplate.js.map +1 -1
  76. package/build/components/KYCElements/IDCardCapture.d.ts +7 -2
  77. package/build/components/KYCElements/IDCardCapture.d.ts.map +1 -1
  78. package/build/components/KYCElements/IDCardCapture.js +253 -104
  79. package/build/components/KYCElements/IDCardCapture.js.map +1 -1
  80. package/build/components/KYCElements/InitializationStep.d.ts +5 -0
  81. package/build/components/KYCElements/InitializationStep.d.ts.map +1 -0
  82. package/build/components/KYCElements/InitializationStep.js +41 -0
  83. package/build/components/KYCElements/InitializationStep.js.map +1 -0
  84. package/build/components/KYCElements/LocationCaptureTemplate.d.ts.map +1 -1
  85. package/build/components/KYCElements/LocationCaptureTemplate.js +15 -13
  86. package/build/components/KYCElements/LocationCaptureTemplate.js.map +1 -1
  87. package/build/components/KYCElements/OrientationVideoCapture.d.ts +2 -2
  88. package/build/components/KYCElements/OrientationVideoCapture.d.ts.map +1 -1
  89. package/build/components/KYCElements/OrientationVideoCapture.js.map +1 -1
  90. package/build/components/KYCElements/OrientationVideoCaptureEnhanced.d.ts +2 -2
  91. package/build/components/KYCElements/OrientationVideoCaptureEnhanced.d.ts.map +1 -1
  92. package/build/components/KYCElements/OrientationVideoCaptureEnhanced.js.map +1 -1
  93. package/build/components/KYCElements/OrientationVideoCaptureFinal.d.ts +2 -2
  94. package/build/components/KYCElements/OrientationVideoCaptureFinal.d.ts.map +1 -1
  95. package/build/components/KYCElements/OrientationVideoCaptureFinal.js.map +1 -1
  96. package/build/components/KYCElements/ReviewSubmitTemplate.d.ts +12 -0
  97. package/build/components/KYCElements/ReviewSubmitTemplate.d.ts.map +1 -0
  98. package/build/components/KYCElements/ReviewSubmitTemplate.js +171 -0
  99. package/build/components/KYCElements/ReviewSubmitTemplate.js.map +1 -0
  100. package/build/components/KYCElements/SelfieCaptureTemplate.d.ts +6 -2
  101. package/build/components/KYCElements/SelfieCaptureTemplate.d.ts.map +1 -1
  102. package/build/components/KYCElements/SelfieCaptureTemplate.js +105 -35
  103. package/build/components/KYCElements/SelfieCaptureTemplate.js.map +1 -1
  104. package/build/components/KYCElements/VerificationProgressTemplate.d.ts +12 -0
  105. package/build/components/KYCElements/VerificationProgressTemplate.d.ts.map +1 -0
  106. package/build/components/KYCElements/VerificationProgressTemplate.js +93 -0
  107. package/build/components/KYCElements/VerificationProgressTemplate.js.map +1 -0
  108. package/build/components/OverLay/IdCard.d.ts +1 -1
  109. package/build/components/OverLay/IdCard.d.ts.map +1 -1
  110. package/build/components/OverLay/IdCard.js +10 -6
  111. package/build/components/OverLay/IdCard.js.map +1 -1
  112. package/build/components/OverLay/SelfieOverlay.d.ts +1 -1
  113. package/build/components/OverLay/SelfieOverlay.d.ts.map +1 -1
  114. package/build/components/OverLay/SelfieOverlay.js +5 -4
  115. package/build/components/OverLay/SelfieOverlay.js.map +1 -1
  116. package/build/components/OverLay/type.d.ts +71 -1
  117. package/build/components/OverLay/type.d.ts.map +1 -1
  118. package/build/components/OverLay/type.js.map +1 -1
  119. package/build/components/TemplateKYCExample.d.ts.map +1 -1
  120. package/build/components/TemplateKYCExample.js +72 -197
  121. package/build/components/TemplateKYCExample.js.map +1 -1
  122. package/build/components/TemplateKYCFlowRefactored.d.ts.map +1 -1
  123. package/build/components/TemplateKYCFlowRefactored.js +63 -39
  124. package/build/components/TemplateKYCFlowRefactored.js.map +1 -1
  125. package/build/components/VisionCameraView.js +1 -1
  126. package/build/components/VisionCameraView.js.map +1 -1
  127. package/build/components/example/OrientationVideoExample.d.ts.map +1 -1
  128. package/build/components/example/OrientationVideoExample.js +1 -5
  129. package/build/components/example/OrientationVideoExample.js.map +1 -1
  130. package/build/components/ui/Button.js +1 -1
  131. package/build/components/ui/Button.js.map +1 -1
  132. package/build/config/countriesData.d.ts +3 -0
  133. package/build/config/countriesData.d.ts.map +1 -0
  134. package/build/config/countriesData.js +79 -0
  135. package/build/config/countriesData.js.map +1 -0
  136. package/build/config/region_mapping.d.ts +3 -0
  137. package/build/config/region_mapping.d.ts.map +1 -0
  138. package/build/config/region_mapping.js +687 -0
  139. package/build/config/region_mapping.js.map +1 -0
  140. package/build/hooks/useI18n.d.ts +11 -0
  141. package/build/hooks/useI18n.d.ts.map +1 -0
  142. package/build/hooks/useI18n.js +37 -0
  143. package/build/hooks/useI18n.js.map +1 -0
  144. package/build/hooks/useOrientationVideo.d.ts +1 -2
  145. package/build/hooks/useOrientationVideo.d.ts.map +1 -1
  146. package/build/hooks/useOrientationVideo.js +2 -1
  147. package/build/hooks/useOrientationVideo.js.map +1 -1
  148. package/build/hooks/useRealtimeVerifier.d.ts +28 -0
  149. package/build/hooks/useRealtimeVerifier.d.ts.map +1 -0
  150. package/build/hooks/useRealtimeVerifier.js +91 -0
  151. package/build/hooks/useRealtimeVerifier.js.map +1 -0
  152. package/build/hooks/useTemplateKYCFlow.d.ts +1 -0
  153. package/build/hooks/useTemplateKYCFlow.d.ts.map +1 -1
  154. package/build/hooks/useTemplateKYCFlow.js +337 -38
  155. package/build/hooks/useTemplateKYCFlow.js.map +1 -1
  156. package/build/i18n/en/index.d.ts +168 -0
  157. package/build/i18n/en/index.d.ts.map +1 -0
  158. package/build/i18n/en/index.js +195 -0
  159. package/build/i18n/en/index.js.map +1 -0
  160. package/build/i18n/fr/index.d.ts +168 -0
  161. package/build/i18n/fr/index.d.ts.map +1 -0
  162. package/build/i18n/fr/index.js +194 -0
  163. package/build/i18n/fr/index.js.map +1 -0
  164. package/build/i18n/index.d.ts +10 -0
  165. package/build/i18n/index.d.ts.map +1 -0
  166. package/build/i18n/index.js +56 -0
  167. package/build/i18n/index.js.map +1 -0
  168. package/build/i18n/types.d.ts +153 -0
  169. package/build/i18n/types.d.ts.map +1 -0
  170. package/build/i18n/types.js +3 -0
  171. package/build/i18n/types.js.map +1 -0
  172. package/build/i18n/usage-example.d.ts +4 -0
  173. package/build/i18n/usage-example.d.ts.map +1 -0
  174. package/build/i18n/usage-example.js +189 -0
  175. package/build/i18n/usage-example.js.map +1 -0
  176. package/build/modules/api/CardAuthentification.d.ts +22 -0
  177. package/build/modules/api/CardAuthentification.d.ts.map +1 -0
  178. package/build/modules/api/CardAuthentification.js +107 -0
  179. package/build/modules/api/CardAuthentification.js.map +1 -0
  180. package/build/modules/api/KYCService.d.ts +57 -1
  181. package/build/modules/api/KYCService.d.ts.map +1 -1
  182. package/build/modules/api/KYCService.js +348 -27
  183. package/build/modules/api/KYCService.js.map +1 -1
  184. package/build/modules/api/SelfieVerification.d.ts +3 -0
  185. package/build/modules/api/SelfieVerification.d.ts.map +1 -0
  186. package/build/modules/api/SelfieVerification.js +9 -0
  187. package/build/modules/api/SelfieVerification.js.map +1 -0
  188. package/build/modules/api/backendApi.d.ts +2 -0
  189. package/build/modules/api/backendApi.d.ts.map +1 -0
  190. package/build/modules/api/backendApi.js +6 -0
  191. package/build/modules/api/backendApi.js.map +1 -0
  192. package/build/modules/api/types.d.ts +20 -0
  193. package/build/modules/api/types.d.ts.map +1 -0
  194. package/build/modules/api/types.js +2 -0
  195. package/build/modules/api/types.js.map +1 -0
  196. package/build/modules/camera/VisionCameraModule.d.ts +1 -1
  197. package/build/modules/camera/VisionCameraModule.d.ts.map +1 -1
  198. package/build/modules/camera/VisionCameraModule.js +8 -2
  199. package/build/modules/camera/VisionCameraModule.js.map +1 -1
  200. package/build/types/KYC.types.d.ts +59 -7
  201. package/build/types/KYC.types.d.ts.map +1 -1
  202. package/build/types/KYC.types.js +9 -1
  203. package/build/types/KYC.types.js.map +1 -1
  204. package/build/utils/cropByObb.d.ts +11 -0
  205. package/build/utils/cropByObb.d.ts.map +1 -0
  206. package/build/utils/cropByObb.js +78 -0
  207. package/build/utils/cropByObb.js.map +1 -0
  208. package/build/utils/get-document-type-info.d.ts +13 -0
  209. package/build/utils/get-document-type-info.d.ts.map +1 -0
  210. package/build/utils/get-document-type-info.js +59 -0
  211. package/build/utils/get-document-type-info.js.map +1 -0
  212. package/build/utils/pathToBase64.d.ts +3 -0
  213. package/build/utils/pathToBase64.d.ts.map +1 -0
  214. package/build/utils/pathToBase64.js +47 -0
  215. package/build/utils/pathToBase64.js.map +1 -0
  216. package/build/utils/remove-duplicate.d.ts +2 -0
  217. package/build/utils/remove-duplicate.d.ts.map +1 -0
  218. package/build/utils/remove-duplicate.js +4 -0
  219. package/build/utils/remove-duplicate.js.map +1 -0
  220. package/package.json +3 -1
  221. package/src/api/axios.ts +144 -0
  222. package/src/components/EnhancedCameraView.tsx +96 -78
  223. package/src/components/EnhancedCameraView.web.tsx +41 -40
  224. package/src/components/KYCElements/CountrySelectionTemplate.tsx +104 -136
  225. package/src/components/KYCElements/FileUploadTemplate.tsx +14 -8
  226. package/src/components/KYCElements/IDCardCapture.tsx +311 -115
  227. package/src/components/KYCElements/InitializationStep.tsx +53 -0
  228. package/src/components/KYCElements/LocationCaptureTemplate.tsx +17 -15
  229. package/src/components/KYCElements/OrientationVideoCapture.tsx +2 -2
  230. package/src/components/KYCElements/OrientationVideoCaptureEnhanced.tsx +2 -2
  231. package/src/components/KYCElements/OrientationVideoCaptureFinal.tsx +2 -2
  232. package/src/components/KYCElements/ReviewSubmitTemplate.tsx +201 -0
  233. package/src/components/KYCElements/SelfieCaptureTemplate.tsx +140 -53
  234. package/src/components/KYCElements/VerificationProgressTemplate.tsx +123 -0
  235. package/src/components/OverLay/IdCard.tsx +17 -9
  236. package/src/components/OverLay/SelfieOverlay.tsx +6 -5
  237. package/src/components/OverLay/type.ts +64 -2
  238. package/src/components/TemplateKYCExample.tsx +76 -197
  239. package/src/components/TemplateKYCFlowRefactored.tsx +74 -46
  240. package/src/components/VisionCameraView.tsx +1 -1
  241. package/src/components/example/OrientationVideoExample.tsx +3 -7
  242. package/src/components/ui/Button.tsx +1 -1
  243. package/src/config/countriesData.ts +84 -0
  244. package/src/config/region_mapping.ts +688 -0
  245. package/src/hooks/useI18n.ts +53 -0
  246. package/src/hooks/useOrientationVideo.ts +2 -2
  247. package/src/hooks/useRealtimeVerifier.ts +128 -0
  248. package/src/hooks/useTemplateKYCFlow.tsx +375 -53
  249. package/src/i18n/README.md +288 -0
  250. package/src/i18n/en/index.ts +206 -0
  251. package/src/i18n/fr/index.ts +205 -0
  252. package/src/i18n/index.ts +65 -0
  253. package/src/i18n/types.ts +172 -0
  254. package/src/i18n/usage-example.tsx +202 -0
  255. package/src/modules/api/CardAuthentification.ts +114 -0
  256. package/src/modules/api/KYCService.ts +403 -30
  257. package/src/modules/api/SelfieVerification.ts +11 -0
  258. package/src/modules/api/backendApi.ts +8 -0
  259. package/src/modules/api/types.ts +24 -0
  260. package/src/modules/camera/VisionCameraModule.ts +16 -7
  261. package/src/types/KYC.types.ts +83 -14
  262. package/src/utils/cropByObb.ts +99 -0
  263. package/src/utils/get-document-type-info.ts +62 -0
  264. package/src/utils/pathToBase64.ts +47 -0
  265. package/src/utils/remove-duplicate.ts +3 -0
  266. package/android/build/.transforms/d6df0e53bfc3165a876965af720f910a/results.bin +0 -1
  267. package/android/build/.transforms/d6df0e53bfc3165a876965af720f910a/transformed/bundleLibRuntimeToDirDebug/bundleLibRuntimeToDirDebug_dex/kyc/transfergratis/com/BuildConfig.dex +0 -0
  268. package/android/build/.transforms/d6df0e53bfc3165a876965af720f910a/transformed/bundleLibRuntimeToDirDebug/bundleLibRuntimeToDirDebug_dex/kyc/transfergratis/com/TransfergratisSdkModule$definition$1$5$1.dex +0 -0
  269. package/android/build/.transforms/d6df0e53bfc3165a876965af720f910a/transformed/bundleLibRuntimeToDirDebug/bundleLibRuntimeToDirDebug_dex/kyc/transfergratis/com/TransfergratisSdkModule$definition$1$5$2.dex +0 -0
  270. package/android/build/.transforms/d6df0e53bfc3165a876965af720f910a/transformed/bundleLibRuntimeToDirDebug/bundleLibRuntimeToDirDebug_dex/kyc/transfergratis/com/TransfergratisSdkModule$definition$lambda$5$$inlined$AsyncFunction$1.dex +0 -0
  271. package/android/build/.transforms/d6df0e53bfc3165a876965af720f910a/transformed/bundleLibRuntimeToDirDebug/bundleLibRuntimeToDirDebug_dex/kyc/transfergratis/com/TransfergratisSdkModule$definition$lambda$5$$inlined$AsyncFunction$2.dex +0 -0
  272. package/android/build/.transforms/d6df0e53bfc3165a876965af720f910a/transformed/bundleLibRuntimeToDirDebug/bundleLibRuntimeToDirDebug_dex/kyc/transfergratis/com/TransfergratisSdkModule$definition$lambda$5$$inlined$AsyncFunction$3.dex +0 -0
  273. package/android/build/.transforms/d6df0e53bfc3165a876965af720f910a/transformed/bundleLibRuntimeToDirDebug/bundleLibRuntimeToDirDebug_dex/kyc/transfergratis/com/TransfergratisSdkModule$definition$lambda$5$$inlined$AsyncFunction$4.dex +0 -0
  274. package/android/build/.transforms/d6df0e53bfc3165a876965af720f910a/transformed/bundleLibRuntimeToDirDebug/bundleLibRuntimeToDirDebug_dex/kyc/transfergratis/com/TransfergratisSdkModule$definition$lambda$5$$inlined$AsyncFunction$5.dex +0 -0
  275. package/android/build/.transforms/d6df0e53bfc3165a876965af720f910a/transformed/bundleLibRuntimeToDirDebug/bundleLibRuntimeToDirDebug_dex/kyc/transfergratis/com/TransfergratisSdkModule$definition$lambda$5$$inlined$AsyncFunction$6.dex +0 -0
  276. package/android/build/.transforms/d6df0e53bfc3165a876965af720f910a/transformed/bundleLibRuntimeToDirDebug/bundleLibRuntimeToDirDebug_dex/kyc/transfergratis/com/TransfergratisSdkModule$definition$lambda$5$$inlined$AsyncFunctionWithPromise$1.dex +0 -0
  277. package/android/build/.transforms/d6df0e53bfc3165a876965af720f910a/transformed/bundleLibRuntimeToDirDebug/bundleLibRuntimeToDirDebug_dex/kyc/transfergratis/com/TransfergratisSdkModule$definition$lambda$5$$inlined$AsyncFunctionWithPromise$2.dex +0 -0
  278. package/android/build/.transforms/d6df0e53bfc3165a876965af720f910a/transformed/bundleLibRuntimeToDirDebug/bundleLibRuntimeToDirDebug_dex/kyc/transfergratis/com/TransfergratisSdkModule$definition$lambda$5$$inlined$AsyncFunctionWithPromise$3.dex +0 -0
  279. package/android/build/.transforms/d6df0e53bfc3165a876965af720f910a/transformed/bundleLibRuntimeToDirDebug/bundleLibRuntimeToDirDebug_dex/kyc/transfergratis/com/TransfergratisSdkModule$definition$lambda$5$$inlined$AsyncFunctionWithPromise$4.dex +0 -0
  280. package/android/build/.transforms/d6df0e53bfc3165a876965af720f910a/transformed/bundleLibRuntimeToDirDebug/bundleLibRuntimeToDirDebug_dex/kyc/transfergratis/com/TransfergratisSdkModule$definition$lambda$5$$inlined$View$1.dex +0 -0
  281. package/android/build/.transforms/d6df0e53bfc3165a876965af720f910a/transformed/bundleLibRuntimeToDirDebug/bundleLibRuntimeToDirDebug_dex/kyc/transfergratis/com/TransfergratisSdkModule$definition$lambda$5$lambda$4$$inlined$Prop$1.dex +0 -0
  282. package/android/build/.transforms/d6df0e53bfc3165a876965af720f910a/transformed/bundleLibRuntimeToDirDebug/bundleLibRuntimeToDirDebug_dex/kyc/transfergratis/com/TransfergratisSdkModule$definition$lambda$5$lambda$4$$inlined$Prop$2.dex +0 -0
  283. package/android/build/.transforms/d6df0e53bfc3165a876965af720f910a/transformed/bundleLibRuntimeToDirDebug/bundleLibRuntimeToDirDebug_dex/kyc/transfergratis/com/TransfergratisSdkModule.dex +0 -0
  284. package/android/build/.transforms/d6df0e53bfc3165a876965af720f910a/transformed/bundleLibRuntimeToDirDebug/bundleLibRuntimeToDirDebug_dex/kyc/transfergratis/com/TransfergratisSdkView.dex +0 -0
  285. package/android/build/.transforms/d6df0e53bfc3165a876965af720f910a/transformed/bundleLibRuntimeToDirDebug/desugar_graph.bin +0 -0
  286. package/android/build/intermediates/runtime_library_classes_dir/debug/bundleLibRuntimeToDirDebug/kyc/transfergratis/com/BuildConfig.class +0 -0
  287. package/android/build/intermediates/runtime_library_classes_dir/debug/bundleLibRuntimeToDirDebug/kyc/transfergratis/com/TransfergratisSdkModule$definition$1$5$1.class +0 -0
  288. package/android/build/intermediates/runtime_library_classes_dir/debug/bundleLibRuntimeToDirDebug/kyc/transfergratis/com/TransfergratisSdkModule$definition$1$5$2.class +0 -0
  289. package/android/build/intermediates/runtime_library_classes_dir/debug/bundleLibRuntimeToDirDebug/kyc/transfergratis/com/TransfergratisSdkModule$definition$lambda$5$$inlined$AsyncFunction$1.class +0 -0
  290. package/android/build/intermediates/runtime_library_classes_dir/debug/bundleLibRuntimeToDirDebug/kyc/transfergratis/com/TransfergratisSdkModule$definition$lambda$5$$inlined$AsyncFunction$2.class +0 -0
  291. package/android/build/intermediates/runtime_library_classes_dir/debug/bundleLibRuntimeToDirDebug/kyc/transfergratis/com/TransfergratisSdkModule$definition$lambda$5$$inlined$AsyncFunction$3.class +0 -0
  292. package/android/build/intermediates/runtime_library_classes_dir/debug/bundleLibRuntimeToDirDebug/kyc/transfergratis/com/TransfergratisSdkModule$definition$lambda$5$$inlined$AsyncFunction$4.class +0 -0
  293. package/android/build/intermediates/runtime_library_classes_dir/debug/bundleLibRuntimeToDirDebug/kyc/transfergratis/com/TransfergratisSdkModule$definition$lambda$5$$inlined$AsyncFunction$5.class +0 -0
  294. package/android/build/intermediates/runtime_library_classes_dir/debug/bundleLibRuntimeToDirDebug/kyc/transfergratis/com/TransfergratisSdkModule$definition$lambda$5$$inlined$AsyncFunction$6.class +0 -0
  295. package/android/build/intermediates/runtime_library_classes_dir/debug/bundleLibRuntimeToDirDebug/kyc/transfergratis/com/TransfergratisSdkModule$definition$lambda$5$$inlined$AsyncFunctionWithPromise$1.class +0 -0
  296. package/android/build/intermediates/runtime_library_classes_dir/debug/bundleLibRuntimeToDirDebug/kyc/transfergratis/com/TransfergratisSdkModule$definition$lambda$5$$inlined$AsyncFunctionWithPromise$2.class +0 -0
  297. package/android/build/intermediates/runtime_library_classes_dir/debug/bundleLibRuntimeToDirDebug/kyc/transfergratis/com/TransfergratisSdkModule$definition$lambda$5$$inlined$AsyncFunctionWithPromise$3.class +0 -0
  298. package/android/build/intermediates/runtime_library_classes_dir/debug/bundleLibRuntimeToDirDebug/kyc/transfergratis/com/TransfergratisSdkModule$definition$lambda$5$$inlined$AsyncFunctionWithPromise$4.class +0 -0
  299. package/android/build/intermediates/runtime_library_classes_dir/debug/bundleLibRuntimeToDirDebug/kyc/transfergratis/com/TransfergratisSdkModule$definition$lambda$5$$inlined$View$1.class +0 -0
  300. package/android/build/intermediates/runtime_library_classes_dir/debug/bundleLibRuntimeToDirDebug/kyc/transfergratis/com/TransfergratisSdkModule$definition$lambda$5$lambda$4$$inlined$Prop$1.class +0 -0
  301. package/android/build/intermediates/runtime_library_classes_dir/debug/bundleLibRuntimeToDirDebug/kyc/transfergratis/com/TransfergratisSdkModule$definition$lambda$5$lambda$4$$inlined$Prop$2.class +0 -0
  302. package/android/build/intermediates/runtime_library_classes_dir/debug/bundleLibRuntimeToDirDebug/kyc/transfergratis/com/TransfergratisSdkModule.class +0 -0
  303. package/android/build/intermediates/runtime_library_classes_dir/debug/bundleLibRuntimeToDirDebug/kyc/transfergratis/com/TransfergratisSdkView.class +0 -0
  304. package/android/build/tmp/kotlin-classes/debug/META-INF/transfergratis-sdk_debug.kotlin_module +0 -0
  305. package/src/types/nativewind.d.ts +0 -2
  306. /package/android/build/.transforms/{7ec900c0f64f5f1a7c88998dd44001b8 → 01c28d00c798aa4846f16ce72123ebf9}/results.bin +0 -0
  307. /package/android/build/intermediates/java_res/debug/processDebugJavaRes/out/META-INF/{transfergratis-sdk_debug.kotlin_module → transfergratis-react-native-sdk_debug.kotlin_module} +0 -0
  308. /package/android/build/{intermediates/runtime_library_classes_dir/debug/bundleLibRuntimeToDirDebug/META-INF/transfergratis-sdk_debug.kotlin_module → tmp/kotlin-classes/debug/META-INF/transfergratis-react-native-sdk_debug.kotlin_module} +0 -0
@@ -1 +1 @@
1
- {"version":3,"file":"TemplateKYCFlowRefactored.js","sourceRoot":"","sources":["../../src/components/TemplateKYCFlowRefactored.tsx"],"names":[],"mappings":"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","sourcesContent":["import React from 'react';\nimport { View, Text, StyleSheet, SafeAreaView, TouchableOpacity } from 'react-native';\nimport { KYCTemplate } from '../types/KYC.types';\nimport { TemplateKYCFlowProvider, useTemplateKYCFlowContext } from '../hooks/useTemplateKYCFlow';\nimport { IDCardCapture } from './KYCElements/IDCardCapture';\nimport { SelfieCaptureTemplate } from './KYCElements/SelfieCaptureTemplate';\nimport { FileUploadTemplate } from './KYCElements/FileUploadTemplate';\nimport { LocationCaptureTemplate } from './KYCElements/LocationCaptureTemplate';\nimport { CountrySelectionTemplate } from './KYCElements/CountrySelectionTemplate';\n\ninterface TemplateKYCFlowProps {\n template: KYCTemplate;\n onComplete?: (data: Record<number, unknown>) => void;\n onError?: (error: string) => void;\n language?: string;\n onCancel?: () => void;\n}\n\nexport const TemplateKYCFlow: React.FC<TemplateKYCFlowProps> = ({\n template,\n onComplete,\n onError,\n language = 'en',\n onCancel,\n}) => {\n return (\n <TemplateKYCFlowProvider\n template={template}\n onComplete={onComplete}\n onError={onError}\n initialLanguage={language}\n >\n <TemplateKYCFlowContent onCancel={onCancel} />\n </TemplateKYCFlowProvider>\n );\n};\n\nconst TemplateKYCFlowContent: React.FC<{ onCancel?: () => void }> = ({ onCancel }) => {\n const {\n state,\n actions,\n currentComponent,\n progress,\n } = useTemplateKYCFlowContext();\n\n // Fonction pour déterminer le côté actuel d'une carte d'identité\n const getCurrentSideForComponent = (componentId: number): string => {\n const component = state.template.components.find(c => c.id === componentId);\n if (!component || component.type !== 'id_card') return 'front';\n\n const idConfig = component.config as any;\n const sides = idConfig.sides || ['front', 'back'];\n\n // Calculer le côté basé sur l'ordre dans le template\n const componentIndex = state.template.components.findIndex(c => c.id === componentId);\n const sideIndex = componentIndex % sides.length;\n\n return sides[sideIndex];\n };\n\n const updateComponentData = (componentId: number, data: unknown) => {\n actions.updateComponentData(componentId, data);\n };\n\n if (!currentComponent) {\n return (\n <View style={styles.container}>\n <Text style={styles.errorText}>Aucun composant trouvé</Text>\n </View>\n );\n }\n\n // Rendu du composant actuel\n const renderCurrentComponent = () => {\n const commonProps = {\n component: currentComponent,\n value: state.componentData[currentComponent.id],\n onValueChange: (data: unknown) => updateComponentData(currentComponent.id, data),\n error: state.errors[currentComponent.id],\n language: state.currentLanguage,\n };\n\n switch (currentComponent.type) {\n case 'id_card':\n return <IDCardCapture {...commonProps} currentSide={getCurrentSideForComponent(currentComponent.id)} />;\n\n case 'selfie':\n return <SelfieCaptureTemplate {...commonProps} />;\n\n case 'file_upload':\n return <FileUploadTemplate {...commonProps} />;\n\n case 'location':\n return <LocationCaptureTemplate {...commonProps} />;\n\n case 'country_selection':\n return <CountrySelectionTemplate {...commonProps} />;\n\n default:\n return (\n <View style={styles.unsupportedContainer}>\n <Text style={styles.unsupportedText}>\n Type de composant non supporté: {currentComponent.type}\n </Text>\n </View>\n );\n }\n };\n\n return (\n <SafeAreaView style={styles.container}>\n {/* Header avec informations sur l'étape */}\n {state.showCustomStepper ? (\n <View style={styles.header}>\n <Text style={styles.progressText}>\n Étape {state.currentComponentIndex + 1} sur {state.template.components.length}\n </Text>\n <View style={styles.progressContainer}>\n <View style={styles.progressBar}>\n <View\n style={[\n styles.progressFill,\n { width: `${progress}%` }\n ]}\n />\n </View>\n\n </View>\n\n <View style={{ position: 'absolute', right: 12, top: 12 }}>\n <TouchableOpacity onPress={onCancel} disabled={!onCancel} style={{ opacity: onCancel ? 1 : 0.5 }}>\n <Text style={{ fontSize: 20, fontWeight: 'bold', color: '#333' }}>{`X`}</Text>\n </TouchableOpacity>\n </View>\n </View>\n ) : null}\n\n {/* Contenu principal */}\n <View style={styles.content}>\n {renderCurrentComponent()}\n </View>\n </SafeAreaView>\n );\n};\n\nconst styles = StyleSheet.create({\n container: {\n flex: 1,\n backgroundColor: '#f5f5f5',\n \n },\n header: {\n backgroundColor: 'white',\n paddingVertical: 20,\n paddingHorizontal: 12,\n borderBottomWidth: 1,\n borderBottomColor: '#e0e0e0',\n marginHorizontal: 12,\n marginTop: 12,\n // shadow\n shadowColor: '#000',\n shadowOffset: { width: 0, height: 2 },\n shadowOpacity: 0.15,\n shadowRadius: 1.84,\n elevation: 5,\n },\n title: {\n fontSize: 24,\n fontWeight: 'bold',\n color: '#333',\n marginBottom: 8,\n },\n description: {\n fontSize: 16,\n color: '#666',\n marginBottom: 20,\n },\n progressContainer: {\n // marginBottom: 20,\n },\n progressBar: {\n height: 8,\n backgroundColor: '#e0e0e0',\n borderRadius: 4,\n overflow: 'hidden',\n },\n progressFill: {\n height: '100%',\n backgroundColor: '#2DBD60',\n borderRadius: 4,\n },\n progressText: {\n fontSize: 14,\n color: 'black',\n fontWeight: '600',\n textAlign: 'left',\n marginBottom: 8,\n },\n stepInfo: {\n backgroundColor: '#f8f9fa',\n padding: 16,\n borderRadius: 8,\n borderLeftWidth: 4,\n borderLeftColor: '#2DBD60',\n },\n stepTitle: {\n fontSize: 18,\n fontWeight: '600',\n color: '#333',\n marginBottom: 8,\n },\n stepDescription: {\n fontSize: 14,\n color: '#666',\n lineHeight: 20,\n },\n content: {\n flex: 1,\n // justifyContent: 'center',\n alignItems: 'center',\n // paddingTop: Dimensions.get('window').height > 760 ? 12 : 0,\n },\n navigation: {\n flexDirection: 'row',\n justifyContent: 'space-between',\n padding: 20,\n backgroundColor: 'white',\n borderTopWidth: 1,\n borderTopColor: '#e0e0e0',\n },\n navButton: {\n paddingHorizontal: 24,\n paddingVertical: 12,\n borderRadius: 8,\n minWidth: 100,\n alignItems: 'center',\n },\n primaryButton: {\n backgroundColor: '#2DBD60',\n },\n navButtonText: {\n fontSize: 16,\n fontWeight: '600',\n color: 'white',\n },\n errorText: {\n color: '#dc2626',\n fontSize: 16,\n textAlign: 'center',\n margin: 20,\n },\n unsupportedContainer: {\n flex: 1,\n justifyContent: 'center',\n alignItems: 'center',\n padding: 20,\n },\n unsupportedText: {\n fontSize: 16,\n color: '#666',\n textAlign: 'center',\n },\n}); "]}
1
+ {"version":3,"file":"TemplateKYCFlowRefactored.js","sourceRoot":"","sources":["../../src/components/TemplateKYCFlowRefactored.tsx"],"names":[],"mappings":"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","sourcesContent":["import React from 'react';\nimport { View, Text, StyleSheet, SafeAreaView, TouchableOpacity, ActivityIndicator, Dimensions } from 'react-native';\nimport { KYCTemplate } from '../types/KYC.types';\nimport { TemplateKYCFlowProvider, useTemplateKYCFlowContext } from '../hooks/useTemplateKYCFlow';\nimport { useI18n } from '../hooks/useI18n';\nimport { IDCardCapture } from './KYCElements/IDCardCapture';\nimport { SelfieCaptureTemplate } from './KYCElements/SelfieCaptureTemplate';\nimport { FileUploadTemplate } from './KYCElements/FileUploadTemplate';\nimport { LocationCaptureTemplate } from './KYCElements/LocationCaptureTemplate';\nimport { CountrySelectionTemplate } from './KYCElements/CountrySelectionTemplate';\nimport { InitializationStep } from './KYCElements/InitializationStep';\nimport { ReviewSubmitTemplate } from './KYCElements/ReviewSubmitTemplate';\nimport { VerificationProgressTemplate } from './KYCElements/VerificationProgressTemplate';\n\ninterface TemplateKYCFlowProps {\n template: KYCTemplate;\n onComplete?: (data: Record<number, unknown>) => void;\n onError?: (error: string) => void;\n language?: string;\n onCancel?: () => void;\n}\n\nexport const TemplateKYCFlow: React.FC<TemplateKYCFlowProps> = ({\n template,\n onComplete,\n onError,\n language = 'fr',\n onCancel,\n}) => {\n return (\n <TemplateKYCFlowProvider\n template={template}\n onComplete={onComplete}\n onError={onError}\n initialLanguage={language}\n >\n <TemplateKYCFlowContent onCancel={onCancel} />\n </TemplateKYCFlowProvider>\n );\n};\n\nconst TemplateKYCFlowContent: React.FC<{ onCancel?: () => void }> = ({ onCancel }) => {\n const {\n state,\n actions,\n currentComponent,\n progress,\n } = useTemplateKYCFlowContext();\n\n const { t } = useI18n();\n\n const updateComponentData = (componentId: number, data: unknown) => {\n actions.updateComponentData(componentId, data);\n };\n\n if (!currentComponent) {\n return (\n <View style={styles.container}>\n <Text style={styles.errorText}>{t('errors.unknownError')}</Text>\n </View>\n );\n }\n\n // Rendu du composant actuel\n const renderCurrentComponent = () => {\n const commonProps = {\n component: currentComponent,\n value: state.componentData[currentComponent.id],\n onValueChange: (data: unknown) => updateComponentData(currentComponent.id, data),\n error: state.errors[currentComponent.id],\n language: state.currentLanguage,\n };\n\n if (!state.session.isInitialized) {\n return <InitializationStep session={state.session} />\n }\n\n switch (currentComponent.type) {\n case 'id_card':\n return <IDCardCapture {...commonProps} />;\n\n case 'selfie':\n return <SelfieCaptureTemplate {...commonProps} />;\n\n case 'file_upload':\n return <FileUploadTemplate {...commonProps} />;\n\n case 'location':\n return <LocationCaptureTemplate {...commonProps} />;\n\n case 'country_selection':\n return <CountrySelectionTemplate {...commonProps} />;\n\n case 'review_submit':\n return <ReviewSubmitTemplate {...commonProps} />;\n\n case 'verification_progress':\n return <VerificationProgressTemplate {...commonProps} />;\n\n default:\n return (\n <View style={styles.unsupportedContainer}>\n <Text style={styles.unsupportedText}>\n {t('errors.unknownError')}: {currentComponent.type}\n </Text>\n </View>\n );\n }\n };\n\n return (\n <View style={{ flex: 1 }}>\n {state.isProcessing && (\n <View style={styles.processingContainer}>\n <Text style={styles.processingText}>{t('common.loading')}</Text>\n <ActivityIndicator size=\"large\" color=\"#fff\" />\n </View>\n )}\n <SafeAreaView style={styles.container}>\n {/* Header avec informations sur l'étape */}\n\n {(state.showCustomStepper && state.session.isInitialized) ? (\n <View style={styles.header}>\n <Text style={styles.progressText}>\n {t('kyc.step', { current: state.currentComponentIndex + 1, total: state.template.components.length })}\n </Text>\n <View style={styles.progressContainer}>\n <View style={styles.progressBar}>\n <View\n style={[\n styles.progressFill,\n { width: `${progress}%` }\n ]}\n />\n </View>\n\n </View>\n\n <View style={{ position: 'absolute', right: 12, top: 12 }}>\n <TouchableOpacity onPress={onCancel} disabled={!onCancel} style={{ opacity: onCancel ? 1 : 0.5 }}>\n <Text style={{ fontSize: 20, fontWeight: 'bold', color: '#333' }}>{`X`}</Text>\n </TouchableOpacity>\n </View>\n </View>\n ) : null}\n\n {/* Contenu principal */}\n <View style={styles.content}>\n {renderCurrentComponent()}\n </View>\n </SafeAreaView>\n </View>\n\n );\n};\n\nconst styles = StyleSheet.create({\n container: {\n flex: 1,\n backgroundColor: '#f5f5f5',\n\n },\n header: {\n backgroundColor: 'white',\n paddingVertical: 20,\n paddingHorizontal: 12,\n borderBottomWidth: 1,\n borderBottomColor: '#e0e0e0',\n marginHorizontal: 12,\n marginTop: 12,\n // shadow\n shadowColor: '#000',\n shadowOffset: { width: 0, height: 2 },\n shadowOpacity: 0.15,\n shadowRadius: 1.84,\n elevation: 5,\n },\n title: {\n fontSize: 24,\n fontWeight: 'bold',\n color: '#333',\n marginBottom: 8,\n },\n description: {\n fontSize: 16,\n color: '#666',\n marginBottom: 20,\n },\n progressContainer: {\n // marginBottom: 20,\n },\n progressBar: {\n height: 8,\n backgroundColor: '#e0e0e0',\n borderRadius: 4,\n overflow: 'hidden',\n },\n progressFill: {\n height: '100%',\n backgroundColor: '#2DBD60',\n borderRadius: 4,\n },\n progressText: {\n fontSize: 14,\n color: 'black',\n fontWeight: '600',\n textAlign: 'left',\n marginBottom: 8,\n },\n stepInfo: {\n backgroundColor: '#f8f9fa',\n padding: 16,\n borderRadius: 8,\n borderLeftWidth: 4,\n borderLeftColor: '#2DBD60',\n },\n stepTitle: {\n fontSize: 18,\n fontWeight: '600',\n color: '#333',\n marginBottom: 8,\n },\n stepDescription: {\n fontSize: 14,\n color: '#666',\n lineHeight: 20,\n },\n content: {\n flex: 1,\n // justifyContent: 'center',\n alignItems: 'center',\n // paddingTop: Dimensions.get('window').height > 760 ? 12 : 0,\n },\n navigation: {\n flexDirection: 'row',\n justifyContent: 'space-between',\n padding: 20,\n backgroundColor: 'white',\n borderTopWidth: 1,\n borderTopColor: '#e0e0e0',\n },\n navButton: {\n paddingHorizontal: 24,\n paddingVertical: 12,\n borderRadius: 8,\n minWidth: 100,\n alignItems: 'center',\n },\n primaryButton: {\n backgroundColor: '#2DBD60',\n },\n navButtonText: {\n fontSize: 16,\n fontWeight: '600',\n color: 'white',\n },\n errorText: {\n color: '#dc2626',\n fontSize: 16,\n textAlign: 'center',\n margin: 20,\n },\n unsupportedContainer: {\n flex: 1,\n justifyContent: 'center',\n alignItems: 'center',\n padding: 20,\n },\n unsupportedText: {\n fontSize: 16,\n color: '#666',\n textAlign: 'center',\n },\n processingContainer: {\n position: 'absolute',\n flex: 1,\n width: Dimensions.get('window').width,\n height: Dimensions.get('window').height,\n backgroundColor: 'rgba(0, 0, 0, 0.5)',\n justifyContent: 'center',\n alignItems: 'center',\n zIndex: 1000,\n },\n processingText: {\n fontSize: 16,\n color: '#fff',\n textAlign: 'center',\n fontWeight: 'bold',\n marginBottom: 10,\n },\n}); "]}
@@ -46,7 +46,7 @@ export const VisionCameraView = ({ instructions = 'Position yourself in the fram
46
46
  const photo = await camera.current.takePhoto({
47
47
  enableShutterSound: true,
48
48
  });
49
- const result = VisionCameraModule.processPhotoResult(photo);
49
+ const result = await VisionCameraModule.processPhotoResult(photo);
50
50
  onCapture?.(result);
51
51
  }
52
52
  catch (error) {
@@ -1 +1 @@
1
- {"version":3,"file":"VisionCameraView.js","sourceRoot":"","sources":["../../src/components/VisionCameraView.tsx"],"names":[],"mappings":"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","sourcesContent":["import React, { useCallback, useEffect, useRef, useState } from 'react';\nimport { View, StyleSheet, Platform, ViewStyle, Text } from 'react-native';\nimport { Camera, useCameraDevice } from 'react-native-vision-camera';\nimport VisionCameraModule from '../modules/camera/VisionCameraModule';\n\nexport interface VisionCameraViewProps {\n instructions?: string;\n showCamera: boolean;\n cameraType?: 'front' | 'back';\n style?: ViewStyle;\n onCapture?: (result: { success: boolean; path?: string; error?: string }) => void;\n onError?: (event: { message: string }) => void;\n onPermissionError?: () => void;\n enableHdr?: boolean;\n enableNightMode?: boolean;\n quality?: 'low' | 'medium' | 'high';\n}\n\nexport const VisionCameraView: React.FC<VisionCameraViewProps> = ({\n instructions = 'Position yourself in the frame and tap to capture',\n showCamera,\n cameraType = 'front',\n style,\n onCapture,\n onError,\n onPermissionError,\n enableHdr = false,\n enableNightMode = false,\n quality = 'high',\n}) => {\n const camera = useRef<Camera>(null);\n const device = useCameraDevice(cameraType);\n const [hasPermission, setHasPermission] = useState(false);\n const [isInitialized, setIsInitialized] = useState(false);\n\n // Check permissions on component mount\n useEffect(() => {\n checkPermissions();\n }, []);\n\n const checkPermissions = async () => {\n try {\n const hasAllPermissions = await VisionCameraModule.hasAllPermissions();\n if (!hasAllPermissions) {\n const granted = await VisionCameraModule.requestAllPermissions();\n if (!granted) {\n onPermissionError?.();\n onError?.({ message: 'Camera permissions not granted' });\n return;\n }\n }\n setHasPermission(true);\n } catch (error) {\n console.error('Error checking permissions:', error);\n onError?.({ message: 'Error checking camera permissions' });\n }\n };\n\n const onInitialized = useCallback(() => {\n console.log('Camera initialized!');\n setIsInitialized(true);\n }, []);\n\n const onCameraError = useCallback((error: any) => {\n console.error('Camera error:', error);\n onError?.({ message: error.message || 'Camera error occurred' });\n }, [onError]);\n\n const capturePhoto = useCallback(async () => {\n try {\n if (!camera.current || !isInitialized) {\n onError?.({ message: 'Camera not ready' });\n return;\n }\n\n const photo = await camera.current.takePhoto({\n enableShutterSound: true,\n });\n\n const result = VisionCameraModule.processPhotoResult(photo);\n onCapture?.(result);\n } catch (error) {\n console.error('Error taking photo:', error);\n onCapture?.({\n success: false,\n error: error instanceof Error ? error.message : 'Failed to capture photo',\n });\n }\n }, [isInitialized, quality, onCapture, onError]);\n\n // Auto-capture functionality (can be triggered externally)\n useEffect(() => {\n if (showCamera && isInitialized && hasPermission) {\n // Auto-capture after a short delay when camera is ready\n const timer = setTimeout(() => {\n capturePhoto();\n }, 1000);\n \n return () => clearTimeout(timer);\n }\n return undefined;\n }, [showCamera, isInitialized, hasPermission, capturePhoto]);\n\n if (Platform.OS === 'web') {\n return (\n <View style={[styles.container, style]}>\n <Text style={styles.webMessage}>\n Camera is not supported on web platform. Please use the mobile app.\n </Text>\n </View>\n );\n }\n\n if (!hasPermission) {\n return (\n <View style={[styles.container, style]}>\n <Text style={styles.permissionMessage}>\n Camera permission required. Please grant permission to continue.\n </Text>\n </View>\n );\n }\n\n if (!device) {\n return (\n <View style={[styles.container, style]}>\n <Text style={styles.errorMessage}>\n Camera device not available\n </Text>\n </View>\n );\n }\n\n if (!showCamera) {\n return <View style={[styles.container, style]} />;\n }\n\n return (\n <View style={[styles.container, style]}>\n <Camera\n ref={camera}\n style={StyleSheet.absoluteFill}\n device={device}\n isActive={showCamera}\n photo={true}\n onInitialized={onInitialized}\n onError={onCameraError}\n />\n \n {instructions && (\n <View style={styles.instructionsOverlay}>\n <Text style={styles.instructions}>{instructions}</Text>\n </View>\n )}\n </View>\n );\n};\n\nconst styles = StyleSheet.create({\n container: {\n flex: 1,\n backgroundColor: 'black',\n },\n instructionsOverlay: {\n position: 'absolute',\n top: 60,\n left: 20,\n right: 20,\n backgroundColor: 'rgba(0, 0, 0, 0.7)',\n padding: 15,\n borderRadius: 10,\n },\n instructions: {\n color: 'white',\n fontSize: 16,\n textAlign: 'center',\n fontWeight: '500',\n },\n permissionMessage: {\n color: 'white',\n fontSize: 16,\n textAlign: 'center',\n margin: 20,\n },\n errorMessage: {\n color: 'red',\n fontSize: 16,\n textAlign: 'center',\n margin: 20,\n },\n webMessage: {\n color: 'white',\n fontSize: 16,\n textAlign: 'center',\n margin: 20,\n },\n});"]}
1
+ {"version":3,"file":"VisionCameraView.js","sourceRoot":"","sources":["../../src/components/VisionCameraView.tsx"],"names":[],"mappings":"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","sourcesContent":["import React, { useCallback, useEffect, useRef, useState } from 'react';\nimport { View, StyleSheet, Platform, ViewStyle, Text } from 'react-native';\nimport { Camera, useCameraDevice } from 'react-native-vision-camera';\nimport VisionCameraModule from '../modules/camera/VisionCameraModule';\n\nexport interface VisionCameraViewProps {\n instructions?: string;\n showCamera: boolean;\n cameraType?: 'front' | 'back';\n style?: ViewStyle;\n onCapture?: (result: { success: boolean; path?: string; error?: string }) => void;\n onError?: (event: { message: string }) => void;\n onPermissionError?: () => void;\n enableHdr?: boolean;\n enableNightMode?: boolean;\n quality?: 'low' | 'medium' | 'high';\n}\n\nexport const VisionCameraView: React.FC<VisionCameraViewProps> = ({\n instructions = 'Position yourself in the frame and tap to capture',\n showCamera,\n cameraType = 'front',\n style,\n onCapture,\n onError,\n onPermissionError,\n enableHdr = false,\n enableNightMode = false,\n quality = 'high',\n}) => {\n const camera = useRef<Camera>(null);\n const device = useCameraDevice(cameraType);\n const [hasPermission, setHasPermission] = useState(false);\n const [isInitialized, setIsInitialized] = useState(false);\n\n // Check permissions on component mount\n useEffect(() => {\n checkPermissions();\n }, []);\n\n const checkPermissions = async () => {\n try {\n const hasAllPermissions = await VisionCameraModule.hasAllPermissions();\n if (!hasAllPermissions) {\n const granted = await VisionCameraModule.requestAllPermissions();\n if (!granted) {\n onPermissionError?.();\n onError?.({ message: 'Camera permissions not granted' });\n return;\n }\n }\n setHasPermission(true);\n } catch (error) {\n console.error('Error checking permissions:', error);\n onError?.({ message: 'Error checking camera permissions' });\n }\n };\n\n const onInitialized = useCallback(() => {\n console.log('Camera initialized!');\n setIsInitialized(true);\n }, []);\n\n const onCameraError = useCallback((error: any) => {\n console.error('Camera error:', error);\n onError?.({ message: error.message || 'Camera error occurred' });\n }, [onError]);\n\n const capturePhoto = useCallback(async () => {\n try {\n if (!camera.current || !isInitialized) {\n onError?.({ message: 'Camera not ready' });\n return;\n }\n\n const photo = await camera.current.takePhoto({\n enableShutterSound: true,\n });\n\n const result = await VisionCameraModule.processPhotoResult(photo);\n onCapture?.(result);\n } catch (error) {\n console.error('Error taking photo:', error);\n onCapture?.({\n success: false,\n error: error instanceof Error ? error.message : 'Failed to capture photo',\n });\n }\n }, [isInitialized, quality, onCapture, onError]);\n\n // Auto-capture functionality (can be triggered externally)\n useEffect(() => {\n if (showCamera && isInitialized && hasPermission) {\n // Auto-capture after a short delay when camera is ready\n const timer = setTimeout(() => {\n capturePhoto();\n }, 1000);\n \n return () => clearTimeout(timer);\n }\n return undefined;\n }, [showCamera, isInitialized, hasPermission, capturePhoto]);\n\n if (Platform.OS === 'web') {\n return (\n <View style={[styles.container, style]}>\n <Text style={styles.webMessage}>\n Camera is not supported on web platform. Please use the mobile app.\n </Text>\n </View>\n );\n }\n\n if (!hasPermission) {\n return (\n <View style={[styles.container, style]}>\n <Text style={styles.permissionMessage}>\n Camera permission required. Please grant permission to continue.\n </Text>\n </View>\n );\n }\n\n if (!device) {\n return (\n <View style={[styles.container, style]}>\n <Text style={styles.errorMessage}>\n Camera device not available\n </Text>\n </View>\n );\n }\n\n if (!showCamera) {\n return <View style={[styles.container, style]} />;\n }\n\n return (\n <View style={[styles.container, style]}>\n <Camera\n ref={camera}\n style={StyleSheet.absoluteFill}\n device={device}\n isActive={showCamera}\n photo={true}\n onInitialized={onInitialized}\n onError={onCameraError}\n />\n \n {instructions && (\n <View style={styles.instructionsOverlay}>\n <Text style={styles.instructions}>{instructions}</Text>\n </View>\n )}\n </View>\n );\n};\n\nconst styles = StyleSheet.create({\n container: {\n flex: 1,\n backgroundColor: 'black',\n },\n instructionsOverlay: {\n position: 'absolute',\n top: 60,\n left: 20,\n right: 20,\n backgroundColor: 'rgba(0, 0, 0, 0.7)',\n padding: 15,\n borderRadius: 10,\n },\n instructions: {\n color: 'white',\n fontSize: 16,\n textAlign: 'center',\n fontWeight: '500',\n },\n permissionMessage: {\n color: 'white',\n fontSize: 16,\n textAlign: 'center',\n margin: 20,\n },\n errorMessage: {\n color: 'red',\n fontSize: 16,\n textAlign: 'center',\n margin: 20,\n },\n webMessage: {\n color: 'white',\n fontSize: 16,\n textAlign: 'center',\n margin: 20,\n },\n});"]}
@@ -1 +1 @@
1
- {"version":3,"file":"OrientationVideoExample.d.ts","sourceRoot":"","sources":["../../../src/components/example/OrientationVideoExample.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAmB,MAAM,OAAO,CAAC;AAaxC,QAAA,MAAM,uBAAuB,EAAE,KAAK,CAAC,EA0MpC,CAAC;AAwKF,eAAe,uBAAuB,CAAC"}
1
+ {"version":3,"file":"OrientationVideoExample.d.ts","sourceRoot":"","sources":["../../../src/components/example/OrientationVideoExample.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAmB,MAAM,OAAO,CAAC;AAaxC,QAAA,MAAM,uBAAuB,EAAE,KAAK,CAAC,EAsMpC,CAAC;AAwKF,eAAe,uBAAuB,CAAC"}
@@ -1,15 +1,11 @@
1
1
  import React, { useState } from 'react';
2
2
  import { View, Text, StyleSheet, TouchableOpacity, Alert, ScrollView, } from 'react-native';
3
- import KYCService from '../../modules/api/KYCService';
4
3
  import OrientationVideoCaptureEnhanced from '../KYCElements/OrientationVideoCaptureEnhanced';
4
+ import kycService from '../../modules/api/KYCService';
5
5
  const OrientationVideoExample = () => {
6
6
  const [showVideoCapture, setShowVideoCapture] = useState(false);
7
7
  const [result, setResult] = useState(null);
8
8
  const [isLoading] = useState(false);
9
- // Initialize KYC Service with your API configuration
10
- const kycService = new KYCService('http://18.188.180.154:8001/', // Replace with your actual API base URL
11
- '1234567890' // Replace with your actual API key
12
- );
13
9
  const handleComplete = (orientationResult) => {
14
10
  setResult(orientationResult);
15
11
  setShowVideoCapture(false);
@@ -1 +1 @@
1
- {"version":3,"file":"OrientationVideoExample.js","sourceRoot":"","sources":["../../../src/components/example/OrientationVideoExample.tsx"],"names":[],"mappings":"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","sourcesContent":["import React, { useState } from 'react';\nimport {\n View,\n Text,\n StyleSheet,\n TouchableOpacity,\n Alert,\n ScrollView,\n} from 'react-native';\nimport KYCService from '../../modules/api/KYCService';\nimport { OrientationVideoResult } from '../../types/KYC.types';\nimport OrientationVideoCaptureEnhanced from '../KYCElements/OrientationVideoCaptureEnhanced';\n\nconst OrientationVideoExample: React.FC = () => {\n const [showVideoCapture, setShowVideoCapture] = useState(false);\n const [result, setResult] = useState<OrientationVideoResult | null>(null);\n const [isLoading] = useState(false);\n\n // Initialize KYC Service with your API configuration\n const kycService = new KYCService(\n 'http://18.188.180.154:8001/', // Replace with your actual API base URL\n '1234567890' // Replace with your actual API key\n );\n\n const handleComplete = (orientationResult: OrientationVideoResult) => {\n setResult(orientationResult);\n setShowVideoCapture(false);\n \n // Check if all orientations were captured\n const allCaptured = orientationResult.center.captured && \n orientationResult.left.captured && \n orientationResult.right.captured;\n \n if (allCaptured) {\n Alert.alert(\n 'Success!',\n 'All face orientations have been successfully captured and verified.',\n [{ text: 'OK' }]\n );\n } else {\n Alert.alert(\n 'Partial Success',\n 'Some orientations were not captured. You may need to retake the video.',\n [{ text: 'OK' }]\n );\n }\n };\n\n const handleError = (error: string) => {\n setShowVideoCapture(false);\n Alert.alert('Error', error, [{ text: 'OK' }]);\n };\n\n const startOrientationCapture = () => {\n setShowVideoCapture(true);\n setResult(null);\n };\n\n const resetExample = () => {\n setShowVideoCapture(false);\n setResult(null);\n };\n\n const renderResult = () => {\n if (!result) return null;\n\n const { center, left, right } = result;\n const allCaptured = center.captured && left.captured && right.captured;\n\n return (\n <View style={styles.resultContainer}>\n <Text style={styles.resultTitle}>\n Orientation Video Analysis Results\n </Text>\n \n <View style={styles.statusContainer}>\n <Text style={[\n styles.statusText,\n allCaptured ? styles.successText : styles.warningText\n ]}>\n {allCaptured ? '✅ All orientations captured' : '⚠️ Some orientations missing'}\n </Text>\n </View>\n\n <View style={styles.orientationDetails}>\n <View style={styles.orientationItem}>\n <Text style={styles.orientationLabel}>Center</Text>\n <Text style={[\n styles.orientationStatus,\n center.captured ? styles.capturedText : styles.notCapturedText\n ]}>\n {center.captured ? '✅ Captured' : '❌ Not captured'}\n </Text>\n {center.captured && (\n <Text style={styles.frameText}>Frame: {center.frame}</Text>\n )}\n </View>\n\n <View style={styles.orientationItem}>\n <Text style={styles.orientationLabel}>Left</Text>\n <Text style={[\n styles.orientationStatus,\n left.captured ? styles.capturedText : styles.notCapturedText\n ]}>\n {left.captured ? '✅ Captured' : '❌ Not captured'}\n </Text>\n {left.captured && (\n <Text style={styles.frameText}>Frame: {left.frame}</Text>\n )}\n </View>\n\n <View style={styles.orientationItem}>\n <Text style={styles.orientationLabel}>Right</Text>\n <Text style={[\n styles.orientationStatus,\n right.captured ? styles.capturedText : styles.notCapturedText\n ]}>\n {right.captured ? '✅ Captured' : '❌ Not captured'}\n </Text>\n {right.captured && (\n <Text style={styles.frameText}>Frame: {right.frame}</Text>\n )}\n </View>\n </View>\n\n <View style={styles.instructionsContainer}>\n <Text style={styles.instructionsTitle}>Instructions for Liveness Detection:</Text>\n <Text style={styles.instructionText}>• Look straight ahead at the camera</Text>\n <Text style={styles.instructionText}>• Turn your head to the left</Text>\n <Text style={styles.instructionText}>• Turn your head to the right</Text>\n <Text style={styles.instructionText}>• Keep your face within the frame</Text>\n <Text style={styles.instructionText}>• Ensure good lighting conditions</Text>\n </View>\n </View>\n );\n };\n\n if (showVideoCapture) {\n return (\n <OrientationVideoCaptureEnhanced\n config={{\n duration: 10,\n orientations: ['center', 'left', 'right'],\n instructions: {\n center: 'Look straight ahead at the camera',\n left: 'Turn your head to the left',\n right: 'Turn your head to the right',\n },\n showPreview: true,\n allowRetake: true,\n maxRetakes: 3,\n quality: 0.8,\n aspectRatio: 16 / 9,\n }}\n onComplete={handleComplete}\n onError={handleError}\n kycService={kycService}\n />\n );\n }\n\n return (\n <ScrollView style={styles.container}>\n <View style={styles.header}>\n <Text style={styles.title}>Orientation Video Capture Example</Text>\n <Text style={styles.subtitle}>\n This example demonstrates liveness detection through face orientation analysis\n </Text>\n </View>\n\n <View style={styles.content}>\n <View style={styles.infoContainer}>\n <Text style={styles.infoTitle}>What is Liveness Detection?</Text>\n <Text style={styles.infoText}>\n Liveness detection is a security feature that verifies a real person is present \n during the verification process, preventing spoofing attacks using photos or videos.\n </Text>\n </View>\n\n <View style={styles.infoContainer}>\n <Text style={styles.infoTitle}>How it works:</Text>\n <Text style={styles.infoText}>\n 1. Record a short video (10 seconds){'\\n'}\n 2. Follow the on-screen instructions{'\\n'}\n 3. Turn your head in different directions{'\\n'}\n 4. The system analyzes the video to detect face orientations{'\\n'}\n 5. Results show which orientations were successfully captured\n </Text>\n </View>\n\n {renderResult()}\n\n <View style={styles.buttonContainer}>\n <TouchableOpacity \n style={styles.startButton} \n onPress={startOrientationCapture}\n disabled={isLoading}\n >\n <Text style={styles.startButtonText}>\n {isLoading ? 'Loading...' : 'Start Orientation Capture'}\n </Text>\n </TouchableOpacity>\n\n {result && (\n <TouchableOpacity \n style={styles.resetButton} \n onPress={resetExample}\n >\n <Text style={styles.resetButtonText}>Reset Example</Text>\n </TouchableOpacity>\n )}\n </View>\n </View>\n </ScrollView>\n );\n};\n\nconst styles = StyleSheet.create({\n container: {\n flex: 1,\n backgroundColor: '#f5f5f5',\n },\n header: {\n backgroundColor: '#007AFF',\n padding: 20,\n alignItems: 'center',\n },\n title: {\n fontSize: 24,\n fontWeight: 'bold',\n color: '#fff',\n textAlign: 'center',\n marginBottom: 10,\n },\n subtitle: {\n fontSize: 16,\n color: '#fff',\n textAlign: 'center',\n opacity: 0.9,\n },\n content: {\n padding: 20,\n },\n infoContainer: {\n backgroundColor: '#fff',\n padding: 20,\n borderRadius: 10,\n marginBottom: 20,\n shadowColor: '#000',\n shadowOffset: {\n width: 0,\n height: 2,\n },\n shadowOpacity: 0.1,\n shadowRadius: 3.84,\n elevation: 5,\n },\n infoTitle: {\n fontSize: 18,\n fontWeight: 'bold',\n color: '#333',\n marginBottom: 10,\n },\n infoText: {\n fontSize: 14,\n color: '#666',\n lineHeight: 20,\n },\n resultContainer: {\n backgroundColor: '#fff',\n padding: 20,\n borderRadius: 10,\n marginBottom: 20,\n shadowColor: '#000',\n shadowOffset: {\n width: 0,\n height: 2,\n },\n shadowOpacity: 0.1,\n shadowRadius: 3.84,\n elevation: 5,\n },\n resultTitle: {\n fontSize: 20,\n fontWeight: 'bold',\n color: '#333',\n textAlign: 'center',\n marginBottom: 15,\n },\n statusContainer: {\n alignItems: 'center',\n marginBottom: 20,\n },\n statusText: {\n fontSize: 16,\n fontWeight: 'bold',\n },\n successText: {\n color: '#34C759',\n },\n warningText: {\n color: '#FF9500',\n },\n orientationDetails: {\n marginBottom: 20,\n },\n orientationItem: {\n flexDirection: 'row',\n justifyContent: 'space-between',\n alignItems: 'center',\n paddingVertical: 10,\n borderBottomWidth: 1,\n borderBottomColor: '#f0f0f0',\n },\n orientationLabel: {\n fontSize: 16,\n fontWeight: '600',\n color: '#333',\n flex: 1,\n },\n orientationStatus: {\n fontSize: 14,\n fontWeight: '500',\n flex: 1,\n textAlign: 'center',\n },\n capturedText: {\n color: '#34C759',\n },\n notCapturedText: {\n color: '#FF3B30',\n },\n frameText: {\n fontSize: 12,\n color: '#666',\n flex: 1,\n textAlign: 'right',\n },\n instructionsContainer: {\n backgroundColor: '#f8f9fa',\n padding: 15,\n borderRadius: 8,\n },\n instructionsTitle: {\n fontSize: 16,\n fontWeight: 'bold',\n color: '#333',\n marginBottom: 10,\n },\n instructionText: {\n fontSize: 14,\n color: '#666',\n marginBottom: 5,\n },\n buttonContainer: {\n gap: 15,\n },\n startButton: {\n backgroundColor: '#007AFF',\n paddingVertical: 15,\n paddingHorizontal: 30,\n borderRadius: 25,\n alignItems: 'center',\n },\n startButtonText: {\n color: '#fff',\n fontSize: 18,\n fontWeight: 'bold',\n },\n resetButton: {\n backgroundColor: '#FF3B30',\n paddingVertical: 15,\n paddingHorizontal: 30,\n borderRadius: 25,\n alignItems: 'center',\n },\n resetButtonText: {\n color: '#fff',\n fontSize: 18,\n fontWeight: 'bold',\n },\n});\n\nexport default OrientationVideoExample; "]}
1
+ {"version":3,"file":"OrientationVideoExample.js","sourceRoot":"","sources":["../../../src/components/example/OrientationVideoExample.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,EAAE,QAAQ,EAAE,MAAM,OAAO,CAAC;AACxC,OAAO,EACL,IAAI,EACJ,IAAI,EACJ,UAAU,EACV,gBAAgB,EAChB,KAAK,EACL,UAAU,GACX,MAAM,cAAc,CAAC;AAEtB,OAAO,+BAA+B,MAAM,gDAAgD,CAAC;AAC7F,OAAO,UAAU,MAAM,8BAA8B,CAAC;AAEtD,MAAM,uBAAuB,GAAa,GAAG,EAAE;IAC7C,MAAM,CAAC,gBAAgB,EAAE,mBAAmB,CAAC,GAAG,QAAQ,CAAC,KAAK,CAAC,CAAC;IAChE,MAAM,CAAC,MAAM,EAAE,SAAS,CAAC,GAAG,QAAQ,CAAgC,IAAI,CAAC,CAAC;IAC1E,MAAM,CAAC,SAAS,CAAC,GAAG,QAAQ,CAAC,KAAK,CAAC,CAAC;IAIpC,MAAM,cAAc,GAAG,CAAC,iBAAyC,EAAE,EAAE;QACnE,SAAS,CAAC,iBAAiB,CAAC,CAAC;QAC7B,mBAAmB,CAAC,KAAK,CAAC,CAAC;QAE3B,0CAA0C;QAC1C,MAAM,WAAW,GAAG,iBAAiB,CAAC,MAAM,CAAC,QAAQ;YAClC,iBAAiB,CAAC,IAAI,CAAC,QAAQ;YAC/B,iBAAiB,CAAC,KAAK,CAAC,QAAQ,CAAC;QAEpD,IAAI,WAAW,EAAE,CAAC;YAChB,KAAK,CAAC,KAAK,CACT,UAAU,EACV,qEAAqE,EACrE,CAAC,EAAE,IAAI,EAAE,IAAI,EAAE,CAAC,CACjB,CAAC;QACJ,CAAC;aAAM,CAAC;YACN,KAAK,CAAC,KAAK,CACT,iBAAiB,EACjB,wEAAwE,EACxE,CAAC,EAAE,IAAI,EAAE,IAAI,EAAE,CAAC,CACjB,CAAC;QACJ,CAAC;IACH,CAAC,CAAC;IAEF,MAAM,WAAW,GAAG,CAAC,KAAa,EAAE,EAAE;QACpC,mBAAmB,CAAC,KAAK,CAAC,CAAC;QAC3B,KAAK,CAAC,KAAK,CAAC,OAAO,EAAE,KAAK,EAAE,CAAC,EAAE,IAAI,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC;IAChD,CAAC,CAAC;IAEF,MAAM,uBAAuB,GAAG,GAAG,EAAE;QACnC,mBAAmB,CAAC,IAAI,CAAC,CAAC;QAC1B,SAAS,CAAC,IAAI,CAAC,CAAC;IAClB,CAAC,CAAC;IAEF,MAAM,YAAY,GAAG,GAAG,EAAE;QACxB,mBAAmB,CAAC,KAAK,CAAC,CAAC;QAC3B,SAAS,CAAC,IAAI,CAAC,CAAC;IAClB,CAAC,CAAC;IAEF,MAAM,YAAY,GAAG,GAAG,EAAE;QACxB,IAAI,CAAC,MAAM;YAAE,OAAO,IAAI,CAAC;QAEzB,MAAM,EAAE,MAAM,EAAE,IAAI,EAAE,KAAK,EAAE,GAAG,MAAM,CAAC;QACvC,MAAM,WAAW,GAAG,MAAM,CAAC,QAAQ,IAAI,IAAI,CAAC,QAAQ,IAAI,KAAK,CAAC,QAAQ,CAAC;QAEvE,OAAO,CACL,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,MAAM,CAAC,eAAe,CAAC,CAClC;QAAA,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,MAAM,CAAC,WAAW,CAAC,CAC9B;;QACF,EAAE,IAAI,CAEN;;QAAA,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,MAAM,CAAC,eAAe,CAAC,CAClC;UAAA,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;gBACX,MAAM,CAAC,UAAU;gBACjB,WAAW,CAAC,CAAC,CAAC,MAAM,CAAC,WAAW,CAAC,CAAC,CAAC,MAAM,CAAC,WAAW;aACtD,CAAC,CACA;YAAA,CAAC,WAAW,CAAC,CAAC,CAAC,6BAA6B,CAAC,CAAC,CAAC,8BAA8B,CAC/E;UAAA,EAAE,IAAI,CACR;QAAA,EAAE,IAAI,CAEN;;QAAA,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,MAAM,CAAC,kBAAkB,CAAC,CACrC;UAAA,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,MAAM,CAAC,eAAe,CAAC,CAClC;YAAA,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,MAAM,CAAC,gBAAgB,CAAC,CAAC,MAAM,EAAE,IAAI,CAClD;YAAA,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;gBACX,MAAM,CAAC,iBAAiB;gBACxB,MAAM,CAAC,QAAQ,CAAC,CAAC,CAAC,MAAM,CAAC,YAAY,CAAC,CAAC,CAAC,MAAM,CAAC,eAAe;aAC/D,CAAC,CACA;cAAA,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC,CAAC,YAAY,CAAC,CAAC,CAAC,gBAAgB,CACpD;YAAA,EAAE,IAAI,CACN;YAAA,CAAC,MAAM,CAAC,QAAQ,IAAI,CAClB,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,MAAM,CAAC,SAAS,CAAC,CAAC,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,EAAE,IAAI,CAAC,CAC5D,CACH;UAAA,EAAE,IAAI,CAEN;;UAAA,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,MAAM,CAAC,eAAe,CAAC,CAClC;YAAA,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,MAAM,CAAC,gBAAgB,CAAC,CAAC,IAAI,EAAE,IAAI,CAChD;YAAA,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;gBACX,MAAM,CAAC,iBAAiB;gBACxB,IAAI,CAAC,QAAQ,CAAC,CAAC,CAAC,MAAM,CAAC,YAAY,CAAC,CAAC,CAAC,MAAM,CAAC,eAAe;aAC7D,CAAC,CACA;cAAA,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC,CAAC,YAAY,CAAC,CAAC,CAAC,gBAAgB,CAClD;YAAA,EAAE,IAAI,CACN;YAAA,CAAC,IAAI,CAAC,QAAQ,IAAI,CAChB,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,MAAM,CAAC,SAAS,CAAC,CAAC,OAAO,CAAC,IAAI,CAAC,KAAK,CAAC,EAAE,IAAI,CAAC,CAC1D,CACH;UAAA,EAAE,IAAI,CAEN;;UAAA,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,MAAM,CAAC,eAAe,CAAC,CAClC;YAAA,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,MAAM,CAAC,gBAAgB,CAAC,CAAC,KAAK,EAAE,IAAI,CACjD;YAAA,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;gBACX,MAAM,CAAC,iBAAiB;gBACxB,KAAK,CAAC,QAAQ,CAAC,CAAC,CAAC,MAAM,CAAC,YAAY,CAAC,CAAC,CAAC,MAAM,CAAC,eAAe;aAC9D,CAAC,CACA;cAAA,CAAC,KAAK,CAAC,QAAQ,CAAC,CAAC,CAAC,YAAY,CAAC,CAAC,CAAC,gBAAgB,CACnD;YAAA,EAAE,IAAI,CACN;YAAA,CAAC,KAAK,CAAC,QAAQ,IAAI,CACjB,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,MAAM,CAAC,SAAS,CAAC,CAAC,OAAO,CAAC,KAAK,CAAC,KAAK,CAAC,EAAE,IAAI,CAAC,CAC3D,CACH;UAAA,EAAE,IAAI,CACR;QAAA,EAAE,IAAI,CAEN;;QAAA,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,MAAM,CAAC,qBAAqB,CAAC,CACxC;UAAA,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,MAAM,CAAC,iBAAiB,CAAC,CAAC,oCAAoC,EAAE,IAAI,CACjF;UAAA,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,MAAM,CAAC,eAAe,CAAC,CAAC,mCAAmC,EAAE,IAAI,CAC9E;UAAA,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,MAAM,CAAC,eAAe,CAAC,CAAC,4BAA4B,EAAE,IAAI,CACvE;UAAA,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,MAAM,CAAC,eAAe,CAAC,CAAC,6BAA6B,EAAE,IAAI,CACxE;UAAA,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,MAAM,CAAC,eAAe,CAAC,CAAC,iCAAiC,EAAE,IAAI,CAC5E;UAAA,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,MAAM,CAAC,eAAe,CAAC,CAAC,iCAAiC,EAAE,IAAI,CAC9E;QAAA,EAAE,IAAI,CACR;MAAA,EAAE,IAAI,CAAC,CACR,CAAC;IACJ,CAAC,CAAC;IAEF,IAAI,gBAAgB,EAAE,CAAC;QACrB,OAAO,CACL,CAAC,+BAA+B,CAC9B,MAAM,CAAC,CAAC;gBACN,QAAQ,EAAE,EAAE;gBACZ,YAAY,EAAE,CAAC,QAAQ,EAAE,MAAM,EAAE,OAAO,CAAC;gBACzC,YAAY,EAAE;oBACZ,MAAM,EAAE,mCAAmC;oBAC3C,IAAI,EAAE,4BAA4B;oBAClC,KAAK,EAAE,6BAA6B;iBACrC;gBACD,WAAW,EAAE,IAAI;gBACjB,WAAW,EAAE,IAAI;gBACjB,UAAU,EAAE,CAAC;gBACb,OAAO,EAAE,GAAG;gBACZ,WAAW,EAAE,EAAE,GAAG,CAAC;aACpB,CAAC,CACF,UAAU,CAAC,CAAC,cAAc,CAAC,CAC3B,OAAO,CAAC,CAAC,WAAW,CAAC,CACrB,UAAU,CAAC,CAAC,UAAU,CAAC,EACvB,CACH,CAAC;IACJ,CAAC;IAED,OAAO,CACL,CAAC,UAAU,CAAC,KAAK,CAAC,CAAC,MAAM,CAAC,SAAS,CAAC,CAClC;MAAA,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,MAAM,CAAC,MAAM,CAAC,CACzB;QAAA,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,iCAAiC,EAAE,IAAI,CAClE;QAAA,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,MAAM,CAAC,QAAQ,CAAC,CAC3B;;QACF,EAAE,IAAI,CACR;MAAA,EAAE,IAAI,CAEN;;MAAA,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,MAAM,CAAC,OAAO,CAAC,CAC1B;QAAA,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,MAAM,CAAC,aAAa,CAAC,CAChC;UAAA,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,MAAM,CAAC,SAAS,CAAC,CAAC,2BAA2B,EAAE,IAAI,CAChE;UAAA,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,MAAM,CAAC,QAAQ,CAAC,CAC3B;;;UAEF,EAAE,IAAI,CACR;QAAA,EAAE,IAAI,CAEN;;QAAA,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,MAAM,CAAC,aAAa,CAAC,CAChC;UAAA,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,MAAM,CAAC,SAAS,CAAC,CAAC,aAAa,EAAE,IAAI,CAClD;UAAA,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,MAAM,CAAC,QAAQ,CAAC,CAC3B;gDAAoC,CAAC,IAAI,CACzC;gDAAoC,CAAC,IAAI,CACzC;qDAAyC,CAAC,IAAI,CAC9C;wEAA4D,CAAC,IAAI,CACjE;;UACF,EAAE,IAAI,CACR;QAAA,EAAE,IAAI,CAEN;;QAAA,CAAC,YAAY,EAAE,CAEf;;QAAA,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,MAAM,CAAC,eAAe,CAAC,CAClC;UAAA,CAAC,gBAAgB,CACf,KAAK,CAAC,CAAC,MAAM,CAAC,WAAW,CAAC,CAC1B,OAAO,CAAC,CAAC,uBAAuB,CAAC,CACjC,QAAQ,CAAC,CAAC,SAAS,CAAC,CAEpB;YAAA,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,MAAM,CAAC,eAAe,CAAC,CAClC;cAAA,CAAC,SAAS,CAAC,CAAC,CAAC,YAAY,CAAC,CAAC,CAAC,2BAA2B,CACzD;YAAA,EAAE,IAAI,CACR;UAAA,EAAE,gBAAgB,CAElB;;UAAA,CAAC,MAAM,IAAI,CACT,CAAC,gBAAgB,CACf,KAAK,CAAC,CAAC,MAAM,CAAC,WAAW,CAAC,CAC1B,OAAO,CAAC,CAAC,YAAY,CAAC,CAEtB;cAAA,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,MAAM,CAAC,eAAe,CAAC,CAAC,aAAa,EAAE,IAAI,CAC1D;YAAA,EAAE,gBAAgB,CAAC,CACpB,CACH;QAAA,EAAE,IAAI,CACR;MAAA,EAAE,IAAI,CACR;IAAA,EAAE,UAAU,CAAC,CACd,CAAC;AACJ,CAAC,CAAC;AAEF,MAAM,MAAM,GAAG,UAAU,CAAC,MAAM,CAAC;IAC/B,SAAS,EAAE;QACT,IAAI,EAAE,CAAC;QACP,eAAe,EAAE,SAAS;KAC3B;IACD,MAAM,EAAE;QACN,eAAe,EAAE,SAAS;QAC1B,OAAO,EAAE,EAAE;QACX,UAAU,EAAE,QAAQ;KACrB;IACD,KAAK,EAAE;QACL,QAAQ,EAAE,EAAE;QACZ,UAAU,EAAE,MAAM;QAClB,KAAK,EAAE,MAAM;QACb,SAAS,EAAE,QAAQ;QACnB,YAAY,EAAE,EAAE;KACjB;IACD,QAAQ,EAAE;QACR,QAAQ,EAAE,EAAE;QACZ,KAAK,EAAE,MAAM;QACb,SAAS,EAAE,QAAQ;QACnB,OAAO,EAAE,GAAG;KACb;IACD,OAAO,EAAE;QACP,OAAO,EAAE,EAAE;KACZ;IACD,aAAa,EAAE;QACb,eAAe,EAAE,MAAM;QACvB,OAAO,EAAE,EAAE;QACX,YAAY,EAAE,EAAE;QAChB,YAAY,EAAE,EAAE;QAChB,WAAW,EAAE,MAAM;QACnB,YAAY,EAAE;YACZ,KAAK,EAAE,CAAC;YACR,MAAM,EAAE,CAAC;SACV;QACD,aAAa,EAAE,GAAG;QAClB,YAAY,EAAE,IAAI;QAClB,SAAS,EAAE,CAAC;KACb;IACD,SAAS,EAAE;QACT,QAAQ,EAAE,EAAE;QACZ,UAAU,EAAE,MAAM;QAClB,KAAK,EAAE,MAAM;QACb,YAAY,EAAE,EAAE;KACjB;IACD,QAAQ,EAAE;QACR,QAAQ,EAAE,EAAE;QACZ,KAAK,EAAE,MAAM;QACb,UAAU,EAAE,EAAE;KACf;IACD,eAAe,EAAE;QACf,eAAe,EAAE,MAAM;QACvB,OAAO,EAAE,EAAE;QACX,YAAY,EAAE,EAAE;QAChB,YAAY,EAAE,EAAE;QAChB,WAAW,EAAE,MAAM;QACnB,YAAY,EAAE;YACZ,KAAK,EAAE,CAAC;YACR,MAAM,EAAE,CAAC;SACV;QACD,aAAa,EAAE,GAAG;QAClB,YAAY,EAAE,IAAI;QAClB,SAAS,EAAE,CAAC;KACb;IACD,WAAW,EAAE;QACX,QAAQ,EAAE,EAAE;QACZ,UAAU,EAAE,MAAM;QAClB,KAAK,EAAE,MAAM;QACb,SAAS,EAAE,QAAQ;QACnB,YAAY,EAAE,EAAE;KACjB;IACD,eAAe,EAAE;QACf,UAAU,EAAE,QAAQ;QACpB,YAAY,EAAE,EAAE;KACjB;IACD,UAAU,EAAE;QACV,QAAQ,EAAE,EAAE;QACZ,UAAU,EAAE,MAAM;KACnB;IACD,WAAW,EAAE;QACX,KAAK,EAAE,SAAS;KACjB;IACD,WAAW,EAAE;QACX,KAAK,EAAE,SAAS;KACjB;IACD,kBAAkB,EAAE;QAClB,YAAY,EAAE,EAAE;KACjB;IACD,eAAe,EAAE;QACf,aAAa,EAAE,KAAK;QACpB,cAAc,EAAE,eAAe;QAC/B,UAAU,EAAE,QAAQ;QACpB,eAAe,EAAE,EAAE;QACnB,iBAAiB,EAAE,CAAC;QACpB,iBAAiB,EAAE,SAAS;KAC7B;IACD,gBAAgB,EAAE;QAChB,QAAQ,EAAE,EAAE;QACZ,UAAU,EAAE,KAAK;QACjB,KAAK,EAAE,MAAM;QACb,IAAI,EAAE,CAAC;KACR;IACD,iBAAiB,EAAE;QACjB,QAAQ,EAAE,EAAE;QACZ,UAAU,EAAE,KAAK;QACjB,IAAI,EAAE,CAAC;QACP,SAAS,EAAE,QAAQ;KACpB;IACD,YAAY,EAAE;QACZ,KAAK,EAAE,SAAS;KACjB;IACD,eAAe,EAAE;QACf,KAAK,EAAE,SAAS;KACjB;IACD,SAAS,EAAE;QACT,QAAQ,EAAE,EAAE;QACZ,KAAK,EAAE,MAAM;QACb,IAAI,EAAE,CAAC;QACP,SAAS,EAAE,OAAO;KACnB;IACD,qBAAqB,EAAE;QACrB,eAAe,EAAE,SAAS;QAC1B,OAAO,EAAE,EAAE;QACX,YAAY,EAAE,CAAC;KAChB;IACD,iBAAiB,EAAE;QACjB,QAAQ,EAAE,EAAE;QACZ,UAAU,EAAE,MAAM;QAClB,KAAK,EAAE,MAAM;QACb,YAAY,EAAE,EAAE;KACjB;IACD,eAAe,EAAE;QACf,QAAQ,EAAE,EAAE;QACZ,KAAK,EAAE,MAAM;QACb,YAAY,EAAE,CAAC;KAChB;IACD,eAAe,EAAE;QACf,GAAG,EAAE,EAAE;KACR;IACD,WAAW,EAAE;QACX,eAAe,EAAE,SAAS;QAC1B,eAAe,EAAE,EAAE;QACnB,iBAAiB,EAAE,EAAE;QACrB,YAAY,EAAE,EAAE;QAChB,UAAU,EAAE,QAAQ;KACrB;IACD,eAAe,EAAE;QACf,KAAK,EAAE,MAAM;QACb,QAAQ,EAAE,EAAE;QACZ,UAAU,EAAE,MAAM;KACnB;IACD,WAAW,EAAE;QACX,eAAe,EAAE,SAAS;QAC1B,eAAe,EAAE,EAAE;QACnB,iBAAiB,EAAE,EAAE;QACrB,YAAY,EAAE,EAAE;QAChB,UAAU,EAAE,QAAQ;KACrB;IACD,eAAe,EAAE;QACf,KAAK,EAAE,MAAM;QACb,QAAQ,EAAE,EAAE;QACZ,UAAU,EAAE,MAAM;KACnB;CACF,CAAC,CAAC;AAEH,eAAe,uBAAuB,CAAC","sourcesContent":["import React, { useState } from 'react';\nimport {\n View,\n Text,\n StyleSheet,\n TouchableOpacity,\n Alert,\n ScrollView,\n} from 'react-native'; \nimport { OrientationVideoResult } from '../../types/KYC.types';\nimport OrientationVideoCaptureEnhanced from '../KYCElements/OrientationVideoCaptureEnhanced';\nimport kycService from '../../modules/api/KYCService';\n\nconst OrientationVideoExample: React.FC = () => {\n const [showVideoCapture, setShowVideoCapture] = useState(false);\n const [result, setResult] = useState<OrientationVideoResult | null>(null);\n const [isLoading] = useState(false);\n\n \n\n const handleComplete = (orientationResult: OrientationVideoResult) => {\n setResult(orientationResult);\n setShowVideoCapture(false);\n \n // Check if all orientations were captured\n const allCaptured = orientationResult.center.captured && \n orientationResult.left.captured && \n orientationResult.right.captured;\n \n if (allCaptured) {\n Alert.alert(\n 'Success!',\n 'All face orientations have been successfully captured and verified.',\n [{ text: 'OK' }]\n );\n } else {\n Alert.alert(\n 'Partial Success',\n 'Some orientations were not captured. You may need to retake the video.',\n [{ text: 'OK' }]\n );\n }\n };\n\n const handleError = (error: string) => {\n setShowVideoCapture(false);\n Alert.alert('Error', error, [{ text: 'OK' }]);\n };\n\n const startOrientationCapture = () => {\n setShowVideoCapture(true);\n setResult(null);\n };\n\n const resetExample = () => {\n setShowVideoCapture(false);\n setResult(null);\n };\n\n const renderResult = () => {\n if (!result) return null;\n\n const { center, left, right } = result;\n const allCaptured = center.captured && left.captured && right.captured;\n\n return (\n <View style={styles.resultContainer}>\n <Text style={styles.resultTitle}>\n Orientation Video Analysis Results\n </Text>\n \n <View style={styles.statusContainer}>\n <Text style={[\n styles.statusText,\n allCaptured ? styles.successText : styles.warningText\n ]}>\n {allCaptured ? '✅ All orientations captured' : '⚠️ Some orientations missing'}\n </Text>\n </View>\n\n <View style={styles.orientationDetails}>\n <View style={styles.orientationItem}>\n <Text style={styles.orientationLabel}>Center</Text>\n <Text style={[\n styles.orientationStatus,\n center.captured ? styles.capturedText : styles.notCapturedText\n ]}>\n {center.captured ? '✅ Captured' : '❌ Not captured'}\n </Text>\n {center.captured && (\n <Text style={styles.frameText}>Frame: {center.frame}</Text>\n )}\n </View>\n\n <View style={styles.orientationItem}>\n <Text style={styles.orientationLabel}>Left</Text>\n <Text style={[\n styles.orientationStatus,\n left.captured ? styles.capturedText : styles.notCapturedText\n ]}>\n {left.captured ? '✅ Captured' : '❌ Not captured'}\n </Text>\n {left.captured && (\n <Text style={styles.frameText}>Frame: {left.frame}</Text>\n )}\n </View>\n\n <View style={styles.orientationItem}>\n <Text style={styles.orientationLabel}>Right</Text>\n <Text style={[\n styles.orientationStatus,\n right.captured ? styles.capturedText : styles.notCapturedText\n ]}>\n {right.captured ? '✅ Captured' : '❌ Not captured'}\n </Text>\n {right.captured && (\n <Text style={styles.frameText}>Frame: {right.frame}</Text>\n )}\n </View>\n </View>\n\n <View style={styles.instructionsContainer}>\n <Text style={styles.instructionsTitle}>Instructions for Liveness Detection:</Text>\n <Text style={styles.instructionText}>• Look straight ahead at the camera</Text>\n <Text style={styles.instructionText}>• Turn your head to the left</Text>\n <Text style={styles.instructionText}>• Turn your head to the right</Text>\n <Text style={styles.instructionText}>• Keep your face within the frame</Text>\n <Text style={styles.instructionText}>• Ensure good lighting conditions</Text>\n </View>\n </View>\n );\n };\n\n if (showVideoCapture) {\n return (\n <OrientationVideoCaptureEnhanced\n config={{\n duration: 10,\n orientations: ['center', 'left', 'right'],\n instructions: {\n center: 'Look straight ahead at the camera',\n left: 'Turn your head to the left',\n right: 'Turn your head to the right',\n },\n showPreview: true,\n allowRetake: true,\n maxRetakes: 3,\n quality: 0.8,\n aspectRatio: 16 / 9,\n }}\n onComplete={handleComplete}\n onError={handleError}\n kycService={kycService}\n />\n );\n }\n\n return (\n <ScrollView style={styles.container}>\n <View style={styles.header}>\n <Text style={styles.title}>Orientation Video Capture Example</Text>\n <Text style={styles.subtitle}>\n This example demonstrates liveness detection through face orientation analysis\n </Text>\n </View>\n\n <View style={styles.content}>\n <View style={styles.infoContainer}>\n <Text style={styles.infoTitle}>What is Liveness Detection?</Text>\n <Text style={styles.infoText}>\n Liveness detection is a security feature that verifies a real person is present \n during the verification process, preventing spoofing attacks using photos or videos.\n </Text>\n </View>\n\n <View style={styles.infoContainer}>\n <Text style={styles.infoTitle}>How it works:</Text>\n <Text style={styles.infoText}>\n 1. Record a short video (10 seconds){'\\n'}\n 2. Follow the on-screen instructions{'\\n'}\n 3. Turn your head in different directions{'\\n'}\n 4. The system analyzes the video to detect face orientations{'\\n'}\n 5. Results show which orientations were successfully captured\n </Text>\n </View>\n\n {renderResult()}\n\n <View style={styles.buttonContainer}>\n <TouchableOpacity \n style={styles.startButton} \n onPress={startOrientationCapture}\n disabled={isLoading}\n >\n <Text style={styles.startButtonText}>\n {isLoading ? 'Loading...' : 'Start Orientation Capture'}\n </Text>\n </TouchableOpacity>\n\n {result && (\n <TouchableOpacity \n style={styles.resetButton} \n onPress={resetExample}\n >\n <Text style={styles.resetButtonText}>Reset Example</Text>\n </TouchableOpacity>\n )}\n </View>\n </View>\n </ScrollView>\n );\n};\n\nconst styles = StyleSheet.create({\n container: {\n flex: 1,\n backgroundColor: '#f5f5f5',\n },\n header: {\n backgroundColor: '#007AFF',\n padding: 20,\n alignItems: 'center',\n },\n title: {\n fontSize: 24,\n fontWeight: 'bold',\n color: '#fff',\n textAlign: 'center',\n marginBottom: 10,\n },\n subtitle: {\n fontSize: 16,\n color: '#fff',\n textAlign: 'center',\n opacity: 0.9,\n },\n content: {\n padding: 20,\n },\n infoContainer: {\n backgroundColor: '#fff',\n padding: 20,\n borderRadius: 10,\n marginBottom: 20,\n shadowColor: '#000',\n shadowOffset: {\n width: 0,\n height: 2,\n },\n shadowOpacity: 0.1,\n shadowRadius: 3.84,\n elevation: 5,\n },\n infoTitle: {\n fontSize: 18,\n fontWeight: 'bold',\n color: '#333',\n marginBottom: 10,\n },\n infoText: {\n fontSize: 14,\n color: '#666',\n lineHeight: 20,\n },\n resultContainer: {\n backgroundColor: '#fff',\n padding: 20,\n borderRadius: 10,\n marginBottom: 20,\n shadowColor: '#000',\n shadowOffset: {\n width: 0,\n height: 2,\n },\n shadowOpacity: 0.1,\n shadowRadius: 3.84,\n elevation: 5,\n },\n resultTitle: {\n fontSize: 20,\n fontWeight: 'bold',\n color: '#333',\n textAlign: 'center',\n marginBottom: 15,\n },\n statusContainer: {\n alignItems: 'center',\n marginBottom: 20,\n },\n statusText: {\n fontSize: 16,\n fontWeight: 'bold',\n },\n successText: {\n color: '#34C759',\n },\n warningText: {\n color: '#FF9500',\n },\n orientationDetails: {\n marginBottom: 20,\n },\n orientationItem: {\n flexDirection: 'row',\n justifyContent: 'space-between',\n alignItems: 'center',\n paddingVertical: 10,\n borderBottomWidth: 1,\n borderBottomColor: '#f0f0f0',\n },\n orientationLabel: {\n fontSize: 16,\n fontWeight: '600',\n color: '#333',\n flex: 1,\n },\n orientationStatus: {\n fontSize: 14,\n fontWeight: '500',\n flex: 1,\n textAlign: 'center',\n },\n capturedText: {\n color: '#34C759',\n },\n notCapturedText: {\n color: '#FF3B30',\n },\n frameText: {\n fontSize: 12,\n color: '#666',\n flex: 1,\n textAlign: 'right',\n },\n instructionsContainer: {\n backgroundColor: '#f8f9fa',\n padding: 15,\n borderRadius: 8,\n },\n instructionsTitle: {\n fontSize: 16,\n fontWeight: 'bold',\n color: '#333',\n marginBottom: 10,\n },\n instructionText: {\n fontSize: 14,\n color: '#666',\n marginBottom: 5,\n },\n buttonContainer: {\n gap: 15,\n },\n startButton: {\n backgroundColor: '#007AFF',\n paddingVertical: 15,\n paddingHorizontal: 30,\n borderRadius: 25,\n alignItems: 'center',\n },\n startButtonText: {\n color: '#fff',\n fontSize: 18,\n fontWeight: 'bold',\n },\n resetButton: {\n backgroundColor: '#FF3B30',\n paddingVertical: 15,\n paddingHorizontal: 30,\n borderRadius: 25,\n alignItems: 'center',\n },\n resetButtonText: {\n color: '#fff',\n fontSize: 18,\n fontWeight: 'bold',\n },\n});\n\nexport default OrientationVideoExample; "]}
@@ -17,7 +17,7 @@ const buttonVariants = {
17
17
  disabledText: '#ADB5BD',
18
18
  },
19
19
  outline: {
20
- backgroundColor: 'transparent',
20
+ backgroundColor: '#F8F9FA',
21
21
  borderColor: '#2DBD60',
22
22
  textColor: '#2DBD60',
23
23
  disabledBackground: 'transparent',
@@ -1 +1 @@
1
- {"version":3,"file":"Button.js","sourceRoot":"","sources":["../../../src/components/ui/Button.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,OAAO,CAAC;AAC1B,OAAO,EAAE,gBAAgB,EAAE,IAAI,EAAE,UAAU,EAAwB,iBAAiB,EAAE,MAAM,cAAc,CAAC;AA6B3G,8BAA8B;AAC9B,MAAM,cAAc,GAAG;IACrB,OAAO,EAAE;QACP,eAAe,EAAE,SAAS;QAC1B,WAAW,EAAE,SAAS;QACtB,SAAS,EAAE,SAAS;QACpB,kBAAkB,EAAE,SAAS;QAC7B,YAAY,EAAE,SAAS;KACxB;IACD,SAAS,EAAE;QACT,eAAe,EAAE,SAAS;QAC1B,WAAW,EAAE,SAAS;QACtB,SAAS,EAAE,SAAS;QACpB,kBAAkB,EAAE,SAAS;QAC7B,YAAY,EAAE,SAAS;KACxB;IACD,OAAO,EAAE;QACP,eAAe,EAAE,aAAa;QAC9B,WAAW,EAAE,SAAS;QACtB,SAAS,EAAE,SAAS;QACpB,kBAAkB,EAAE,aAAa;QACjC,YAAY,EAAE,SAAS;KACxB;IACD,KAAK,EAAE;QACL,eAAe,EAAE,aAAa;QAC9B,WAAW,EAAE,aAAa;QAC1B,SAAS,EAAE,SAAS;QACpB,kBAAkB,EAAE,aAAa;QACjC,YAAY,EAAE,SAAS;KACxB;IACD,MAAM,EAAE;QACN,eAAe,EAAE,SAAS;QAC1B,WAAW,EAAE,SAAS;QACtB,SAAS,EAAE,SAAS;QACpB,kBAAkB,EAAE,SAAS;QAC7B,YAAY,EAAE,SAAS;KACxB;IACD,OAAO,EAAE;QACP,eAAe,EAAE,SAAS;QAC1B,WAAW,EAAE,SAAS;QACtB,SAAS,EAAE,SAAS;QACpB,kBAAkB,EAAE,SAAS;QAC7B,YAAY,EAAE,SAAS;KACxB;IACD,IAAI,EAAE;QACJ,eAAe,EAAE,SAAS;QAC1B,WAAW,EAAE,SAAS;QACtB,SAAS,EAAE,SAAS;QACpB,kBAAkB,EAAE,SAAS;QAC7B,YAAY,EAAE,SAAS;KACxB;IACD,OAAO,EAAE;QACP,eAAe,EAAE,SAAS;QAC1B,WAAW,EAAE,SAAS;QACtB,SAAS,EAAE,SAAS;QACpB,kBAAkB,EAAE,SAAS;QAC7B,YAAY,EAAE,SAAS;KACxB;IACD,OAAO,EAAE;QACP,eAAe,EAAE,SAAS;QAC1B,WAAW,EAAE,SAAS;QACtB,SAAS,EAAE,SAAS;QACpB,kBAAkB,EAAE,SAAS;QAC7B,YAAY,EAAE,SAAS;KACxB;CACF,CAAC;AAEF,4BAA4B;AAC5B,MAAM,WAAW,GAAG;IAClB,KAAK,EAAE;QACL,eAAe,EAAE,CAAC;QAClB,iBAAiB,EAAE,EAAE;QACrB,QAAQ,EAAE,EAAE;QACZ,YAAY,EAAE,CAAC;QACf,QAAQ,EAAE,EAAE;KACb;IACD,MAAM,EAAE;QACN,eAAe,EAAE,EAAE;QACnB,iBAAiB,EAAE,EAAE;QACrB,QAAQ,EAAE,EAAE;QACZ,YAAY,EAAE,CAAC;QACf,QAAQ,EAAE,EAAE;KACb;IACD,KAAK,EAAE;QACL,eAAe,EAAE,EAAE;QACnB,iBAAiB,EAAE,EAAE;QACrB,QAAQ,EAAE,EAAE;QACZ,YAAY,EAAE,EAAE;QAChB,QAAQ,EAAE,EAAE;KACb;CACF,CAAC;AAEF,MAAM,CAAC,MAAM,MAAM,GAA0B,CAAC,EAC5C,KAAK,EACL,OAAO,EACP,OAAO,GAAG,SAAS,EACnB,IAAI,GAAG,QAAQ,EACf,IAAI,EACJ,YAAY,GAAG,MAAM,EACrB,QAAQ,GAAG,KAAK,EAChB,OAAO,GAAG,KAAK,EACf,KAAK,EACL,SAAS,EACT,SAAS,GAAG,KAAK,EACjB,OAAO,GAAG,KAAK,GAChB,EAAE,EAAE;IACH,0CAA0C;IAC1C,MAAM,aAAa,GAAG,cAAc,CAAC,OAAO,CAAC,CAAC;IAC9C,MAAM,UAAU,GAAG,WAAW,CAAC,IAAI,CAAC,CAAC;IAErC,mCAAmC;IACnC,MAAM,aAAa,GAAc;QAC/B,eAAe,EAAE,QAAQ,CAAC,CAAC,CAAC,aAAa,CAAC,kBAAkB,CAAC,CAAC,CAAC,aAAa,CAAC,eAAe;QAC5F,WAAW,EAAE,aAAa,CAAC,WAAW;QACtC,eAAe,EAAE,UAAU,CAAC,eAAe;QAC3C,iBAAiB,EAAE,UAAU,CAAC,iBAAiB;QAC/C,YAAY,EAAE,OAAO,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,UAAU,CAAC,YAAY;QACpD,KAAK,EAAE,SAAS,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,MAAM;QAClC,WAAW,EAAE,OAAO,KAAK,SAAS,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;KAC3C,CAAC;IAEF,MAAM,iBAAiB,GAAc;QACnC,KAAK,EAAE,QAAQ,CAAC,CAAC,CAAC,aAAa,CAAC,YAAY,CAAC,CAAC,CAAC,aAAa,CAAC,SAAS;QACtE,QAAQ,EAAE,UAAU,CAAC,QAAQ;QAC7B,UAAU,EAAE,KAAK;KAClB,CAAC;IAEF,mBAAmB;IACnB,MAAM,UAAU,GAAG,GAAG,EAAE;QACtB,IAAI,CAAC,IAAI,IAAI,OAAO;YAAE,OAAO,IAAI,CAAC;QAElC,OAAO,CACL,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,MAAM,CAAC,IAAI,EAAE,EAAE,QAAQ,EAAE,UAAU,CAAC,QAAQ,EAAE,CAAC,CAAC,CAC5D;QAAA,CAAC,IAAI,CACP;MAAA,EAAE,IAAI,CAAC,CACR,CAAC;IACJ,CAAC,CAAC;IAEF,mBAAmB;IACnB,MAAM,aAAa,GAAG,GAAG,EAAE;QACzB,IAAI,OAAO,EAAE,CAAC;YACZ,OAAO,CACL,EACE;UAAA,CAAC,iBAAiB,CAChB,IAAI,CAAC,OAAO,CACZ,KAAK,CAAC,CAAC,aAAa,CAAC,SAAS,CAAC,CAC/B,KAAK,CAAC,CAAC,MAAM,CAAC,cAAc,CAAC,EAE/B;UAAA,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,MAAM,CAAC,IAAI,EAAE,iBAAiB,EAAE,SAAS,CAAC,CAAC,CACvD;;UACF,EAAE,IAAI,CACR;QAAA,GAAG,CACJ,CAAC;QACJ,CAAC;QAED,IAAI,YAAY,KAAK,OAAO,EAAE,CAAC;YAC7B,OAAO,CACL,EACE;UAAA,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,MAAM,CAAC,IAAI,EAAE,iBAAiB,EAAE,SAAS,CAAC,CAAC,CACvD;YAAA,CAAC,KAAK,CACR;UAAA,EAAE,IAAI,CACN;UAAA,CAAC,UAAU,EAAE,CACf;QAAA,GAAG,CACJ,CAAC;QACJ,CAAC;QAED,OAAO,CACL,EACE;QAAA,CAAC,UAAU,EAAE,CACb;QAAA,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,MAAM,CAAC,IAAI,EAAE,iBAAiB,EAAE,SAAS,CAAC,CAAC,CACvD;UAAA,CAAC,KAAK,CACR;QAAA,EAAE,IAAI,CACR;MAAA,GAAG,CACJ,CAAC;IACJ,CAAC,CAAC;IAEF,OAAO,CACL,CAAC,gBAAgB,CACf,KAAK,CAAC,CAAC,CAAC,MAAM,CAAC,MAAM,EAAE,aAAa,EAAE,KAAK,CAAC,CAAC,CAC7C,OAAO,CAAC,CAAC,OAAO,CAAC,CACjB,QAAQ,CAAC,CAAC,QAAQ,IAAI,OAAO,CAAC,CAC9B,aAAa,CAAC,CAAC,GAAG,CAAC,CAEnB;MAAA,CAAC,aAAa,EAAE,CAClB;IAAA,EAAE,gBAAgB,CAAC,CACpB,CAAC;AACJ,CAAC,CAAC;AAEF,MAAM,MAAM,GAAG,UAAU,CAAC,MAAM,CAAC;IAC/B,MAAM,EAAE;QACN,aAAa,EAAE,KAAK;QACpB,UAAU,EAAE,QAAQ;QACpB,cAAc,EAAE,QAAQ;QACxB,SAAS,EAAE,EAAE;QACb,WAAW,EAAE,MAAM;QACnB,YAAY,EAAE;YACZ,KAAK,EAAE,CAAC;YACR,MAAM,EAAE,CAAC;SACV;QACD,aAAa,EAAE,GAAG;QAClB,YAAY,EAAE,IAAI;QAClB,SAAS,EAAE,CAAC;KACb;IACD,IAAI,EAAE;QACJ,UAAU,EAAE,KAAK;QACjB,SAAS,EAAE,QAAQ;KACpB;IACD,IAAI,EAAE;QACJ,gBAAgB,EAAE,CAAC;KACpB;IACD,cAAc,EAAE;QACd,WAAW,EAAE,CAAC;KACf;CACF,CAAC,CAAC;AAEH,sDAAsD;AACtD,MAAM,CAAC,MAAM,aAAa,GAA2C,CAAC,KAAK,EAAE,EAAE,CAAC,CAC9E,CAAC,MAAM,CAAC,OAAO,CAAC,SAAS,CAAC,IAAI,KAAK,CAAC,EAAG,CACxC,CAAC;AAEF,MAAM,CAAC,MAAM,eAAe,GAA2C,CAAC,KAAK,EAAE,EAAE,CAAC,CAChF,CAAC,MAAM,CAAC,OAAO,CAAC,WAAW,CAAC,IAAI,KAAK,CAAC,EAAG,CAC1C,CAAC;AAEF,MAAM,CAAC,MAAM,aAAa,GAA2C,CAAC,KAAK,EAAE,EAAE,CAAC,CAC9E,CAAC,MAAM,CAAC,OAAO,CAAC,SAAS,CAAC,IAAI,KAAK,CAAC,EAAG,CACxC,CAAC;AAEF,MAAM,CAAC,MAAM,WAAW,GAA2C,CAAC,KAAK,EAAE,EAAE,CAAC,CAC5E,CAAC,MAAM,CAAC,OAAO,CAAC,OAAO,CAAC,IAAI,KAAK,CAAC,EAAG,CACtC,CAAC;AAEF,MAAM,CAAC,MAAM,YAAY,GAA2C,CAAC,KAAK,EAAE,EAAE,CAAC,CAC7E,CAAC,MAAM,CAAC,OAAO,CAAC,QAAQ,CAAC,IAAI,KAAK,CAAC,EAAG,CACvC,CAAC;AAEF,MAAM,CAAC,MAAM,aAAa,GAA2C,CAAC,KAAK,EAAE,EAAE,CAAC,CAC9E,CAAC,MAAM,CAAC,OAAO,CAAC,SAAS,CAAC,IAAI,KAAK,CAAC,EAAG,CACxC,CAAC;AAEF,MAAM,CAAC,MAAM,aAAa,GAA2C,CAAC,KAAK,EAAE,EAAE,CAAC,CAC9E,CAAC,MAAM,CAAC,OAAO,CAAC,SAAS,CAAC,IAAI,KAAK,CAAC,EAAG,CACxC,CAAC;AAEF,kCAAkC;AAClC,MAAM,CAAC,MAAM,WAAW,GAAwC,CAAC,KAAK,EAAE,EAAE,CAAC,CACzE,CAAC,MAAM,CAAC,IAAI,CAAC,OAAO,CAAC,IAAI,KAAK,CAAC,EAAG,CACnC,CAAC;AAEF,MAAM,CAAC,MAAM,WAAW,GAAwC,CAAC,KAAK,EAAE,EAAE,CAAC,CACzE,CAAC,MAAM,CAAC,IAAI,CAAC,OAAO,CAAC,IAAI,KAAK,CAAC,EAAG,CACnC,CAAC;AAEF,qCAAqC;AACrC,MAAM,CAAC,MAAM,UAAU,GAAiD,CAAC,EAAE,QAAQ,EAAE,GAAG,KAAK,EAAE,EAAE,EAAE,CAAC,CAClG,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC,QAAQ,CAAC,CAAC,IAAI,KAAK,CAAC,EAAG,CACtC,CAAC;AAEF,MAAM,CAAC,MAAM,UAAU,GAA8F,CAAC,EAAE,MAAM,EAAE,GAAG,KAAK,EAAE,EAAE,EAAE,CAAC,CAC7I,CAAC,MAAM,CACL,IAAI,CAAC,GAAG,CACR,YAAY,CAAC,MAAM,CACnB,OAAO,CAAC,CAAC,MAAM,CAAC,CAChB,OAAO,CAAC,OAAO,CACf,IAAI,CAAC,QAAQ,CACb,IAAI,KAAK,CAAC,EACV,CACH,CAAC;AAEF,MAAM,CAAC,MAAM,UAAU,GAAyD,CAAC,KAAK,EAAE,EAAE,CAAC,CACzF,CAAC,MAAM,CACL,IAAI,CAAC,GAAG,CACR,YAAY,CAAC,OAAO,CACpB,OAAO,CAAC,SAAS,CACjB,IAAI,CAAC,QAAQ,CACb,IAAI,KAAK,CAAC,EACV,CACH,CAAC;AAEF,MAAM,CAAC,MAAM,YAAY,GAAqE,CAAC,KAAK,EAAE,EAAE,CAAC,CACvG,CAAC,MAAM,CACL,OAAO,CAAC,SAAS,CACjB,IAAI,CAAC,OAAO,CACZ,SAAS,CACT,IAAI,KAAK,CAAC,EACV,CACH,CAAC;AAEF,MAAM,CAAC,MAAM,YAAY,GAAqE,CAAC,KAAK,EAAE,EAAE,CAAC,CACvG,CAAC,MAAM,CACL,OAAO,CAAC,WAAW,CACnB,IAAI,CAAC,QAAQ,CACb,IAAI,KAAK,CAAC,EACV,CACH,CAAC;AAEF,wCAAwC;AACxC,OAAO,EAAE,WAAW,EAAE,MAAM,gBAAgB,CAAC","sourcesContent":["import React from 'react';\nimport { TouchableOpacity, Text, StyleSheet, ViewStyle, TextStyle, ActivityIndicator } from 'react-native';\n\n// Types pour les props du bouton\ninterface ButtonProps {\n // Contenu\n title: string;\n onPress: () => void;\n \n // Variantes\n variant?: 'primary' | 'secondary' | 'outline' | 'ghost' | 'danger' | 'success' | 'warning' | 'info' | \"neutral\";\n size?: 'small' | 'medium' | 'large';\n \n // Icône\n icon?: React.ReactNode;\n iconPosition?: 'left' | 'right';\n \n // État\n disabled?: boolean;\n loading?: boolean;\n \n // Style personnalisé\n style?: ViewStyle;\n textStyle?: TextStyle;\n \n // Autres props\n fullWidth?: boolean;\n rounded?: boolean;\n}\n\n// Configuration des variantes\nconst buttonVariants = {\n primary: {\n backgroundColor: '#2DBD60',\n borderColor: '#2DBD60',\n textColor: '#FFFFFF',\n disabledBackground: '#E5E5E5',\n disabledText: '#999999',\n },\n secondary: {\n backgroundColor: '#F8F9FA',\n borderColor: '#E9ECEF',\n textColor: '#495057',\n disabledBackground: '#F8F9FA',\n disabledText: '#ADB5BD',\n },\n outline: {\n backgroundColor: 'transparent',\n borderColor: '#2DBD60',\n textColor: '#2DBD60',\n disabledBackground: 'transparent',\n disabledText: '#ADB5BD',\n },\n ghost: {\n backgroundColor: 'transparent',\n borderColor: 'transparent',\n textColor: '#2DBD60',\n disabledBackground: 'transparent',\n disabledText: '#ADB5BD',\n },\n danger: {\n backgroundColor: '#DC3545',\n borderColor: '#DC3545',\n textColor: '#FFFFFF',\n disabledBackground: '#E5E5E5',\n disabledText: '#999999',\n },\n success: {\n backgroundColor: '#28A745',\n borderColor: '#28A745',\n textColor: '#FFFFFF',\n disabledBackground: '#E5E5E5',\n disabledText: '#999999',\n },\n info: {\n backgroundColor: '#17A2B8',\n borderColor: '#17A2B8',\n textColor: '#FFFFFF',\n disabledBackground: '#E5E5E5',\n disabledText: '#999999',\n },\n warning: {\n backgroundColor: '#FFC107',\n borderColor: '#FFC107',\n textColor: '#212529',\n disabledBackground: '#E5E5E5',\n disabledText: '#999999',\n },\n neutral: {\n backgroundColor: '#6c757d',\n borderColor: '#6c757d',\n textColor: '#FFFFFF',\n disabledBackground: '#E5E5E5',\n disabledText: '#999999',\n },\n};\n\n// Configuration des tailles\nconst buttonSizes = {\n small: {\n paddingVertical: 8,\n paddingHorizontal: 16,\n fontSize: 14,\n borderRadius: 6,\n iconSize: 16,\n },\n medium: {\n paddingVertical: 12,\n paddingHorizontal: 24,\n fontSize: 16,\n borderRadius: 8,\n iconSize: 20,\n },\n large: {\n paddingVertical: 16,\n paddingHorizontal: 32,\n fontSize: 18,\n borderRadius: 12,\n iconSize: 24,\n },\n};\n\nexport const Button: React.FC<ButtonProps> = ({\n title,\n onPress,\n variant = 'primary',\n size = 'medium',\n icon,\n iconPosition = 'left',\n disabled = false,\n loading = false,\n style,\n textStyle,\n fullWidth = false,\n rounded = false,\n}) => {\n // Obtenir la configuration de la variante\n const variantConfig = buttonVariants[variant];\n const sizeConfig = buttonSizes[size];\n \n // Déterminer les styles dynamiques\n const dynamicStyles: ViewStyle = {\n backgroundColor: disabled ? variantConfig.disabledBackground : variantConfig.backgroundColor,\n borderColor: variantConfig.borderColor,\n paddingVertical: sizeConfig.paddingVertical,\n paddingHorizontal: sizeConfig.paddingHorizontal,\n borderRadius: rounded ? 50 : sizeConfig.borderRadius,\n width: fullWidth ? '100%' : 'auto',\n borderWidth: variant === 'outline' ? 2 : 0,\n };\n\n const dynamicTextStyles: TextStyle = {\n color: disabled ? variantConfig.disabledText : variantConfig.textColor,\n fontSize: sizeConfig.fontSize,\n fontWeight: '600',\n };\n\n // Rendu de l'icône\n const renderIcon = () => {\n if (!icon || loading) return null;\n \n return (\n <Text style={[styles.icon, { fontSize: sizeConfig.iconSize }]}>\n {icon}\n </Text>\n );\n };\n\n // Rendu du contenu\n const renderContent = () => {\n if (loading) {\n return (\n <>\n <ActivityIndicator \n size=\"small\" \n color={variantConfig.textColor} \n style={styles.loadingSpinner}\n />\n <Text style={[styles.text, dynamicTextStyles, textStyle]}>\n Chargement...\n </Text>\n </>\n );\n }\n\n if (iconPosition === 'right') {\n return (\n <>\n <Text style={[styles.text, dynamicTextStyles, textStyle]}>\n {title}\n </Text>\n {renderIcon()}\n </>\n );\n }\n\n return (\n <>\n {renderIcon()}\n <Text style={[styles.text, dynamicTextStyles, textStyle]}>\n {title}\n </Text>\n </>\n );\n };\n\n return (\n <TouchableOpacity\n style={[styles.button, dynamicStyles, style]}\n onPress={onPress}\n disabled={disabled || loading}\n activeOpacity={0.8}\n >\n {renderContent()}\n </TouchableOpacity>\n );\n};\n\nconst styles = StyleSheet.create({\n button: {\n flexDirection: 'row',\n alignItems: 'center',\n justifyContent: 'center',\n minHeight: 44,\n shadowColor: '#000',\n shadowOffset: {\n width: 0,\n height: 2,\n },\n shadowOpacity: 0.1,\n shadowRadius: 3.84,\n elevation: 5,\n },\n text: {\n fontWeight: '600',\n textAlign: 'center',\n },\n icon: {\n marginHorizontal: 8,\n },\n loadingSpinner: {\n marginRight: 8,\n },\n});\n\n// Composants prédéfinis pour des cas d'usage courants\nexport const PrimaryButton: React.FC<Omit<ButtonProps, 'variant'>> = (props) => (\n <Button variant=\"primary\" {...props} />\n);\n\nexport const SecondaryButton: React.FC<Omit<ButtonProps, 'variant'>> = (props) => (\n <Button variant=\"secondary\" {...props} />\n);\n\nexport const OutlineButton: React.FC<Omit<ButtonProps, 'variant'>> = (props) => (\n <Button variant=\"outline\" {...props} />\n);\n\nexport const GhostButton: React.FC<Omit<ButtonProps, 'variant'>> = (props) => (\n <Button variant=\"ghost\" {...props} />\n);\n\nexport const DangerButton: React.FC<Omit<ButtonProps, 'variant'>> = (props) => (\n <Button variant=\"danger\" {...props} />\n);\n\nexport const SuccessButton: React.FC<Omit<ButtonProps, 'variant'>> = (props) => (\n <Button variant=\"success\" {...props} />\n);\n\nexport const WarningButton: React.FC<Omit<ButtonProps, 'variant'>> = (props) => (\n <Button variant=\"warning\" {...props} />\n);\n\n// Composants de taille prédéfinie\nexport const SmallButton: React.FC<Omit<ButtonProps, 'size'>> = (props) => (\n <Button size=\"small\" {...props} />\n);\n\nexport const LargeButton: React.FC<Omit<ButtonProps, 'size'>> = (props) => (\n <Button size=\"large\" {...props} />\n);\n\n// Composants avec icônes prédéfinies\nexport const IconButton: React.FC<ButtonProps & { iconName: string }> = ({ iconName, ...props }) => (\n <Button icon={iconName} {...props} />\n);\n\nexport const BackButton: React.FC<Omit<ButtonProps, 'icon' | 'iconPosition' | 'onPress'> & { onBack: () => void }> = ({ onBack, ...props }) => (\n <Button \n icon=\"←\" \n iconPosition=\"left\" \n onPress={onBack} \n variant=\"ghost\"\n size=\"medium\"\n {...props} \n />\n);\n\nexport const NextButton: React.FC<Omit<ButtonProps, 'icon' | 'iconPosition'>> = (props) => (\n <Button \n icon=\"→\" \n iconPosition=\"right\" \n variant=\"primary\"\n size=\"medium\"\n {...props} \n />\n);\n\nexport const SubmitButton: React.FC<Omit<ButtonProps, 'variant' | 'icon' | 'iconPosition'>> = (props) => (\n <Button \n variant=\"primary\"\n size=\"large\"\n fullWidth\n {...props} \n />\n);\n\nexport const CancelButton: React.FC<Omit<ButtonProps, 'variant' | 'icon' | 'iconPosition'>> = (props) => (\n <Button \n variant=\"secondary\"\n size=\"medium\"\n {...props} \n />\n);\n\n// Export des icônes depuis ButtonStyles\nexport { buttonIcons } from './ButtonStyles'; "]}
1
+ {"version":3,"file":"Button.js","sourceRoot":"","sources":["../../../src/components/ui/Button.tsx"],"names":[],"mappings":"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","sourcesContent":["import React from 'react';\nimport { TouchableOpacity, Text, StyleSheet, ViewStyle, TextStyle, ActivityIndicator } from 'react-native';\n\n// Types pour les props du bouton\ninterface ButtonProps {\n // Contenu\n title: string;\n onPress: () => void;\n \n // Variantes\n variant?: 'primary' | 'secondary' | 'outline' | 'ghost' | 'danger' | 'success' | 'warning' | 'info' | \"neutral\";\n size?: 'small' | 'medium' | 'large';\n \n // Icône\n icon?: React.ReactNode;\n iconPosition?: 'left' | 'right';\n \n // État\n disabled?: boolean;\n loading?: boolean;\n \n // Style personnalisé\n style?: ViewStyle;\n textStyle?: TextStyle;\n \n // Autres props\n fullWidth?: boolean;\n rounded?: boolean;\n}\n\n// Configuration des variantes\nconst buttonVariants = {\n primary: {\n backgroundColor: '#2DBD60',\n borderColor: '#2DBD60',\n textColor: '#FFFFFF',\n disabledBackground: '#E5E5E5',\n disabledText: '#999999',\n },\n secondary: {\n backgroundColor: '#F8F9FA',\n borderColor: '#E9ECEF',\n textColor: '#495057',\n disabledBackground: '#F8F9FA',\n disabledText: '#ADB5BD',\n },\n outline: {\n backgroundColor: '#F8F9FA',\n borderColor: '#2DBD60',\n textColor: '#2DBD60',\n disabledBackground: 'transparent',\n disabledText: '#ADB5BD',\n },\n ghost: {\n backgroundColor: 'transparent',\n borderColor: 'transparent',\n textColor: '#2DBD60',\n disabledBackground: 'transparent',\n disabledText: '#ADB5BD',\n },\n danger: {\n backgroundColor: '#DC3545',\n borderColor: '#DC3545',\n textColor: '#FFFFFF',\n disabledBackground: '#E5E5E5',\n disabledText: '#999999',\n },\n success: {\n backgroundColor: '#28A745',\n borderColor: '#28A745',\n textColor: '#FFFFFF',\n disabledBackground: '#E5E5E5',\n disabledText: '#999999',\n },\n info: {\n backgroundColor: '#17A2B8',\n borderColor: '#17A2B8',\n textColor: '#FFFFFF',\n disabledBackground: '#E5E5E5',\n disabledText: '#999999',\n },\n warning: {\n backgroundColor: '#FFC107',\n borderColor: '#FFC107',\n textColor: '#212529',\n disabledBackground: '#E5E5E5',\n disabledText: '#999999',\n },\n neutral: {\n backgroundColor: '#6c757d',\n borderColor: '#6c757d',\n textColor: '#FFFFFF',\n disabledBackground: '#E5E5E5',\n disabledText: '#999999',\n },\n};\n\n// Configuration des tailles\nconst buttonSizes = {\n small: {\n paddingVertical: 8,\n paddingHorizontal: 16,\n fontSize: 14,\n borderRadius: 6,\n iconSize: 16,\n },\n medium: {\n paddingVertical: 12,\n paddingHorizontal: 24,\n fontSize: 16,\n borderRadius: 8,\n iconSize: 20,\n },\n large: {\n paddingVertical: 16,\n paddingHorizontal: 32,\n fontSize: 18,\n borderRadius: 12,\n iconSize: 24,\n },\n};\n\nexport const Button: React.FC<ButtonProps> = ({\n title,\n onPress,\n variant = 'primary',\n size = 'medium',\n icon,\n iconPosition = 'left',\n disabled = false,\n loading = false,\n style,\n textStyle,\n fullWidth = false,\n rounded = false,\n}) => {\n // Obtenir la configuration de la variante\n const variantConfig = buttonVariants[variant];\n const sizeConfig = buttonSizes[size];\n \n // Déterminer les styles dynamiques\n const dynamicStyles: ViewStyle = {\n backgroundColor: disabled ? variantConfig.disabledBackground : variantConfig.backgroundColor,\n borderColor: variantConfig.borderColor,\n paddingVertical: sizeConfig.paddingVertical,\n paddingHorizontal: sizeConfig.paddingHorizontal,\n borderRadius: rounded ? 50 : sizeConfig.borderRadius,\n width: fullWidth ? '100%' : 'auto',\n borderWidth: variant === 'outline' ? 2 : 0,\n };\n\n const dynamicTextStyles: TextStyle = {\n color: disabled ? variantConfig.disabledText : variantConfig.textColor,\n fontSize: sizeConfig.fontSize,\n fontWeight: '600',\n };\n\n // Rendu de l'icône\n const renderIcon = () => {\n if (!icon || loading) return null;\n \n return (\n <Text style={[styles.icon, { fontSize: sizeConfig.iconSize }]}>\n {icon}\n </Text>\n );\n };\n\n // Rendu du contenu\n const renderContent = () => {\n if (loading) {\n return (\n <>\n <ActivityIndicator \n size=\"small\" \n color={variantConfig.textColor} \n style={styles.loadingSpinner}\n />\n <Text style={[styles.text, dynamicTextStyles, textStyle]}>\n Chargement...\n </Text>\n </>\n );\n }\n\n if (iconPosition === 'right') {\n return (\n <>\n <Text style={[styles.text, dynamicTextStyles, textStyle]}>\n {title}\n </Text>\n {renderIcon()}\n </>\n );\n }\n\n return (\n <>\n {renderIcon()}\n <Text style={[styles.text, dynamicTextStyles, textStyle]}>\n {title}\n </Text>\n </>\n );\n };\n\n return (\n <TouchableOpacity\n style={[styles.button, dynamicStyles, style]}\n onPress={onPress}\n disabled={disabled || loading}\n activeOpacity={0.8}\n >\n {renderContent()}\n </TouchableOpacity>\n );\n};\n\nconst styles = StyleSheet.create({\n button: {\n flexDirection: 'row',\n alignItems: 'center',\n justifyContent: 'center',\n minHeight: 44,\n shadowColor: '#000',\n shadowOffset: {\n width: 0,\n height: 2,\n },\n shadowOpacity: 0.1,\n shadowRadius: 3.84,\n elevation: 5,\n },\n text: {\n fontWeight: '600',\n textAlign: 'center',\n },\n icon: {\n marginHorizontal: 8,\n },\n loadingSpinner: {\n marginRight: 8,\n },\n});\n\n// Composants prédéfinis pour des cas d'usage courants\nexport const PrimaryButton: React.FC<Omit<ButtonProps, 'variant'>> = (props) => (\n <Button variant=\"primary\" {...props} />\n);\n\nexport const SecondaryButton: React.FC<Omit<ButtonProps, 'variant'>> = (props) => (\n <Button variant=\"secondary\" {...props} />\n);\n\nexport const OutlineButton: React.FC<Omit<ButtonProps, 'variant'>> = (props) => (\n <Button variant=\"outline\" {...props} />\n);\n\nexport const GhostButton: React.FC<Omit<ButtonProps, 'variant'>> = (props) => (\n <Button variant=\"ghost\" {...props} />\n);\n\nexport const DangerButton: React.FC<Omit<ButtonProps, 'variant'>> = (props) => (\n <Button variant=\"danger\" {...props} />\n);\n\nexport const SuccessButton: React.FC<Omit<ButtonProps, 'variant'>> = (props) => (\n <Button variant=\"success\" {...props} />\n);\n\nexport const WarningButton: React.FC<Omit<ButtonProps, 'variant'>> = (props) => (\n <Button variant=\"warning\" {...props} />\n);\n\n// Composants de taille prédéfinie\nexport const SmallButton: React.FC<Omit<ButtonProps, 'size'>> = (props) => (\n <Button size=\"small\" {...props} />\n);\n\nexport const LargeButton: React.FC<Omit<ButtonProps, 'size'>> = (props) => (\n <Button size=\"large\" {...props} />\n);\n\n// Composants avec icônes prédéfinies\nexport const IconButton: React.FC<ButtonProps & { iconName: string }> = ({ iconName, ...props }) => (\n <Button icon={iconName} {...props} />\n);\n\nexport const BackButton: React.FC<Omit<ButtonProps, 'icon' | 'iconPosition' | 'onPress'> & { onBack: () => void }> = ({ onBack, ...props }) => (\n <Button \n icon=\"←\" \n iconPosition=\"left\" \n onPress={onBack} \n variant=\"ghost\"\n size=\"medium\"\n {...props} \n />\n);\n\nexport const NextButton: React.FC<Omit<ButtonProps, 'icon' | 'iconPosition'>> = (props) => (\n <Button \n icon=\"→\" \n iconPosition=\"right\" \n variant=\"primary\"\n size=\"medium\"\n {...props} \n />\n);\n\nexport const SubmitButton: React.FC<Omit<ButtonProps, 'variant' | 'icon' | 'iconPosition'>> = (props) => (\n <Button \n variant=\"primary\"\n size=\"large\"\n fullWidth\n {...props} \n />\n);\n\nexport const CancelButton: React.FC<Omit<ButtonProps, 'variant' | 'icon' | 'iconPosition'>> = (props) => (\n <Button \n variant=\"secondary\"\n size=\"medium\"\n {...props} \n />\n);\n\n// Export des icônes depuis ButtonStyles\nexport { buttonIcons } from './ButtonStyles'; "]}
@@ -0,0 +1,3 @@
1
+ import { Country } from "../types/KYC.types";
2
+ export declare const countryData: Record<string, Country>;
3
+ //# sourceMappingURL=countriesData.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"countriesData.d.ts","sourceRoot":"","sources":["../../src/config/countriesData.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,MAAM,oBAAoB,CAAC;AAM7C,eAAO,MAAM,WAAW,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CA6E/C,CAAC"}
@@ -0,0 +1,79 @@
1
+ export const countryData = {
2
+ FR: { name: 'France', name_en: "France", flag: '🇫🇷' },
3
+ CM: { name: 'Cameroun', name_en: "Cameroon", flag: '🇨🇲' },
4
+ US: { name: 'États-Unis', name_en: "United States of America", flag: '🇺🇸' },
5
+ DE: { name: 'Allemagne', name_en: "Germany", flag: '🇩🇪' },
6
+ BE: { name: 'Belgique', name_en: "Belgium", flag: '🇧🇪' },
7
+ LU: { name: 'Luxembourg', name_en: "Luxembourg", flag: '🇱🇺' },
8
+ IT: { name: 'Italie', name_en: "Italy", flag: '🇮🇹' },
9
+ ES: { name: 'Espagne', name_en: "Spain", flag: '🇪🇸' },
10
+ PT: { name: 'Portugal', name_en: "Portugal", flag: '🇵🇹' },
11
+ AT: { name: 'Autriche', name_en: "Austria", flag: '🇦🇹' },
12
+ CH: { name: 'Suisse', name_en: "Switzerland", flag: '🇨🇭' },
13
+ NL: { name: 'Pays-Bas', name_en: "Netherlands", flag: '🇳🇱' },
14
+ CA: { name: 'Canada', name_en: "Canada", flag: '🇨🇦', hasRegions: true },
15
+ GB: { name: 'Royaume-Uni', name_en: "United Kingdom", flag: '🇬🇧' },
16
+ AU: { name: 'Australie', name_en: "Australia", flag: '🇦🇺' },
17
+ JP: { name: 'Japon', name_en: "Japan", flag: '🇯🇵' },
18
+ KR: { name: 'Corée du Sud', name_en: "South Korea", flag: '🇰🇷' },
19
+ SG: { name: 'Singapour', name_en: "Singapore", flag: '🇸🇬' },
20
+ HK: { name: 'Hong Kong', name_en: "Hong Kong", flag: '🇭🇰' },
21
+ AE: { name: 'Émirats Arabes Unis', name_en: "United Arab Emirates", flag: '🇦🇪' },
22
+ SA: { name: 'Arabie Saoudite', name_en: "Saudi Arabia", flag: '🇸🇦' },
23
+ QA: { name: 'Qatar', name_en: "Qatar", flag: '🇶🇦' },
24
+ KW: { name: 'Koweït', name_en: "Kuwait", flag: '🇰🇼' },
25
+ BH: { name: 'Bahreïn', name_en: "Bahrain", flag: '🇧🇭' },
26
+ OM: { name: 'Oman', name_en: "Oman", flag: '🇴🇲' },
27
+ JO: { name: 'Jordanie', name_en: "Jordan", flag: '🇯🇴' },
28
+ LB: { name: 'Liban', name_en: "Lebanon", flag: '🇱🇧' },
29
+ EG: { name: 'Égypte', name_en: "Egypt", flag: '🇪🇬' },
30
+ MA: { name: 'Maroc', name_en: "Morocco", flag: '🇲🇦' },
31
+ TN: { name: 'Tunisie', name_en: "Tunisia", flag: '🇹🇳' },
32
+ DZ: { name: 'Algérie', name_en: "Algeria", flag: '🇩🇿' },
33
+ SN: { name: 'Sénégal', name_en: "Senegal", flag: '🇸🇳' },
34
+ CI: { name: 'Côte d\'Ivoire', name_en: "Ivory Coast", flag: '🇨🇮' },
35
+ NG: { name: 'Nigeria', name_en: "Nigeria", flag: '🇳🇬' },
36
+ KE: { name: 'Kenya', name_en: "Kenya", flag: '🇰🇪' },
37
+ ZA: { name: 'Afrique du Sud', name_en: "South Africa", flag: '🇿🇦' },
38
+ BR: { name: 'Brésil', name_en: "Brazil", flag: '🇧🇷' },
39
+ MX: { name: 'Mexique', name_en: "Mexico", flag: '🇲🇽' },
40
+ AR: { name: 'Argentine', name_en: "Argentina", flag: '🇦🇷' },
41
+ CL: { name: 'Chili', name_en: "Chile", flag: '🇨🇱' },
42
+ PE: { name: 'Pérou', name_en: "Peru", flag: '🇵🇪' },
43
+ CO: { name: 'Colombie', name_en: "Colombia", flag: '🇨🇴' },
44
+ VE: { name: 'Venezuela', name_en: "Venezuela", flag: '🇻🇪' },
45
+ EC: { name: 'Équateur', name_en: "Ecuador", flag: '🇪🇨' },
46
+ UY: { name: 'Uruguay', name_en: "Uruguay", flag: '🇺🇾' },
47
+ PY: { name: 'Paraguay', name_en: "Paraguay", flag: '🇵🇾' },
48
+ BO: { name: 'Bolivie', name_en: "Bolivia", flag: '🇧🇴' },
49
+ IN: { name: 'Inde', name_en: "India", flag: '🇮🇳' },
50
+ CN: { name: 'Chine', name_en: "China", flag: '🇨🇳' },
51
+ TH: { name: 'Thaïlande', name_en: "Thailand", flag: '🇹🇭' },
52
+ VN: { name: 'Vietnam', name_en: "Vietnam", flag: '🇻🇳' },
53
+ ID: { name: 'Indonésie', name_en: "Indonesia", flag: '🇮🇩' },
54
+ MY: { name: 'Malaisie', name_en: "Malaysia", flag: '🇲🇾' },
55
+ PH: { name: 'Philippines', name_en: "Philippines", flag: '🇵🇭' },
56
+ TR: { name: 'Turquie', name_en: "Turkey", flag: '🇹🇷' },
57
+ IL: { name: 'Israël', name_en: "Israel", flag: '🇮🇱' },
58
+ RU: { name: 'Russie', name_en: "Russia", flag: '🇷🇺' },
59
+ UA: { name: 'Ukraine', name_en: "Ukraine", flag: '🇺🇦' },
60
+ PL: { name: 'Pologne', name_en: "Poland", flag: '🇵🇱' },
61
+ CZ: { name: 'République Tchèque', name_en: "Czech Republic", flag: '🇨🇿' },
62
+ HU: { name: 'Hongrie', name_en: "Hungary", flag: '🇭🇺' },
63
+ RO: { name: 'Roumanie', name_en: "Romania", flag: '🇷🇴' },
64
+ BG: { name: 'Bulgarie', name_en: "Bulgaria", flag: '🇧🇬' },
65
+ HR: { name: 'Croatie', name_en: "Croatia", flag: '🇭🇷' },
66
+ SI: { name: 'Slovénie', name_en: "Slovenia", flag: '🇸🇮' },
67
+ SK: { name: 'Slovaquie', name_en: "Slovakia", flag: '🇸🇰' },
68
+ LT: { name: 'Lituanie', name_en: "Lithuania", flag: '🇱🇹' },
69
+ LV: { name: 'Lettonie', name_en: "Latvia", flag: '🇱🇻' },
70
+ EE: { name: 'Estonie', name_en: "Estonia", flag: '🇪🇪' },
71
+ FI: { name: 'Finlande', name_en: "Finland", flag: '🇫🇮' },
72
+ SE: { name: 'Suède', name_en: "Sweden", flag: '🇸🇪' },
73
+ NO: { name: 'Norvège', name_en: "Norway", flag: '🇳🇴' },
74
+ DK: { name: 'Danemark', name_en: "Denmark", flag: '🇩🇰' },
75
+ IS: { name: 'Islande', name_en: "Iceland", flag: '🇮🇸' },
76
+ IE: { name: 'Irlande', name_en: "Ireland", flag: '🇮🇪' },
77
+ NZ: { name: 'Nouvelle-Zélande', name_en: "New Zealand", flag: '🇳🇿' },
78
+ };
79
+ //# sourceMappingURL=countriesData.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"countriesData.js","sourceRoot":"","sources":["../../src/config/countriesData.ts"],"names":[],"mappings":"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","sourcesContent":["import { Country } from \"../types/KYC.types\";\n\n\n\n\n\nexport const countryData: Record<string, Country> = {\n FR: { name: 'France', name_en: \"France\", flag: '🇫🇷' },\n CM: { name: 'Cameroun', name_en: \"Cameroon\", flag: '🇨🇲' },\n US: { name: 'États-Unis', name_en: \"United States of America\", flag: '🇺🇸' },\n DE: { name: 'Allemagne', name_en: \"Germany\", flag: '🇩🇪' },\n BE: { name: 'Belgique', name_en: \"Belgium\", flag: '🇧🇪' },\n LU: { name: 'Luxembourg', name_en: \"Luxembourg\", flag: '🇱🇺' },\n IT: { name: 'Italie', name_en: \"Italy\", flag: '🇮🇹' },\n ES: { name: 'Espagne', name_en: \"Spain\", flag: '🇪🇸' },\n PT: { name: 'Portugal', name_en: \"Portugal\", flag: '🇵🇹' },\n AT: { name: 'Autriche', name_en: \"Austria\", flag: '🇦🇹' },\n CH: { name: 'Suisse', name_en: \"Switzerland\", flag: '🇨🇭' },\n NL: { name: 'Pays-Bas', name_en: \"Netherlands\", flag: '🇳🇱' },\n CA: { name: 'Canada', name_en: \"Canada\", flag: '🇨🇦', hasRegions: true },\n GB: { name: 'Royaume-Uni', name_en: \"United Kingdom\", flag: '🇬🇧' },\n AU: { name: 'Australie', name_en: \"Australia\", flag: '🇦🇺' },\n JP: { name: 'Japon', name_en: \"Japan\", flag: '🇯🇵' },\n KR: { name: 'Corée du Sud', name_en: \"South Korea\", flag: '🇰🇷' },\n SG: { name: 'Singapour', name_en: \"Singapore\", flag: '🇸🇬' },\n HK: { name: 'Hong Kong', name_en: \"Hong Kong\", flag: '🇭🇰' },\n AE: { name: 'Émirats Arabes Unis', name_en: \"United Arab Emirates\", flag: '🇦🇪' },\n SA: { name: 'Arabie Saoudite', name_en: \"Saudi Arabia\", flag: '🇸🇦' },\n QA: { name: 'Qatar', name_en: \"Qatar\", flag: '🇶🇦' },\n KW: { name: 'Koweït', name_en: \"Kuwait\", flag: '🇰🇼' },\n BH: { name: 'Bahreïn', name_en: \"Bahrain\", flag: '🇧🇭' },\n OM: { name: 'Oman', name_en: \"Oman\", flag: '🇴🇲' },\n JO: { name: 'Jordanie', name_en: \"Jordan\", flag: '🇯🇴' },\n LB: { name: 'Liban', name_en: \"Lebanon\", flag: '🇱🇧' },\n EG: { name: 'Égypte', name_en: \"Egypt\", flag: '🇪🇬' },\n MA: { name: 'Maroc', name_en: \"Morocco\", flag: '🇲🇦' },\n TN: { name: 'Tunisie', name_en: \"Tunisia\", flag: '🇹🇳' },\n DZ: { name: 'Algérie', name_en: \"Algeria\", flag: '🇩🇿' },\n SN: { name: 'Sénégal', name_en: \"Senegal\", flag: '🇸🇳' },\n CI: { name: 'Côte d\\'Ivoire', name_en: \"Ivory Coast\", flag: '🇨🇮' },\n NG: { name: 'Nigeria', name_en: \"Nigeria\", flag: '🇳🇬' },\n KE: { name: 'Kenya', name_en: \"Kenya\", flag: '🇰🇪' },\n ZA: { name: 'Afrique du Sud', name_en: \"South Africa\", flag: '🇿🇦' },\n BR: { name: 'Brésil', name_en: \"Brazil\", flag: '🇧🇷' },\n MX: { name: 'Mexique', name_en: \"Mexico\", flag: '🇲🇽' },\n AR: { name: 'Argentine', name_en: \"Argentina\", flag: '🇦🇷' },\n CL: { name: 'Chili', name_en: \"Chile\", flag: '🇨🇱' },\n PE: { name: 'Pérou', name_en: \"Peru\", flag: '🇵🇪' },\n CO: { name: 'Colombie', name_en: \"Colombia\", flag: '🇨🇴' },\n VE: { name: 'Venezuela', name_en: \"Venezuela\", flag: '🇻🇪' },\n EC: { name: 'Équateur', name_en: \"Ecuador\", flag: '🇪🇨' },\n UY: { name: 'Uruguay', name_en: \"Uruguay\", flag: '🇺🇾' },\n PY: { name: 'Paraguay', name_en: \"Paraguay\", flag: '🇵🇾' },\n BO: { name: 'Bolivie', name_en: \"Bolivia\", flag: '🇧🇴' },\n IN: { name: 'Inde', name_en: \"India\", flag: '🇮🇳' },\n CN: { name: 'Chine', name_en: \"China\", flag: '🇨🇳' },\n TH: { name: 'Thaïlande', name_en: \"Thailand\", flag: '🇹🇭' },\n VN: { name: 'Vietnam', name_en: \"Vietnam\", flag: '🇻🇳' },\n ID: { name: 'Indonésie', name_en: \"Indonesia\", flag: '🇮🇩' },\n MY: { name: 'Malaisie', name_en: \"Malaysia\", flag: '🇲🇾' },\n PH: { name: 'Philippines', name_en: \"Philippines\", flag: '🇵🇭' },\n TR: { name: 'Turquie', name_en: \"Turkey\", flag: '🇹🇷' },\n IL: { name: 'Israël', name_en: \"Israel\", flag: '🇮🇱' },\n RU: { name: 'Russie', name_en: \"Russia\", flag: '🇷🇺' },\n UA: { name: 'Ukraine', name_en: \"Ukraine\", flag: '🇺🇦' },\n PL: { name: 'Pologne', name_en: \"Poland\", flag: '🇵🇱' },\n CZ: { name: 'République Tchèque', name_en: \"Czech Republic\", flag: '🇨🇿' },\n HU: { name: 'Hongrie', name_en: \"Hungary\", flag: '🇭🇺' },\n RO: { name: 'Roumanie', name_en: \"Romania\", flag: '🇷🇴' },\n BG: { name: 'Bulgarie', name_en: \"Bulgaria\", flag: '🇧🇬' },\n HR: { name: 'Croatie', name_en: \"Croatia\", flag: '🇭🇷' },\n SI: { name: 'Slovénie', name_en: \"Slovenia\", flag: '🇸🇮' },\n SK: { name: 'Slovaquie', name_en: \"Slovakia\", flag: '🇸🇰' },\n LT: { name: 'Lituanie', name_en: \"Lithuania\", flag: '🇱🇹' },\n LV: { name: 'Lettonie', name_en: \"Latvia\", flag: '🇱🇻' },\n EE: { name: 'Estonie', name_en: \"Estonia\", flag: '🇪🇪' },\n FI: { name: 'Finlande', name_en: \"Finland\", flag: '🇫🇮' },\n SE: { name: 'Suède', name_en: \"Sweden\", flag: '🇸🇪' },\n NO: { name: 'Norvège', name_en: \"Norway\", flag: '🇳🇴' },\n DK: { name: 'Danemark', name_en: \"Denmark\", flag: '🇩🇰' },\n IS: { name: 'Islande', name_en: \"Iceland\", flag: '🇮🇸' },\n IE: { name: 'Irlande', name_en: \"Ireland\", flag: '🇮🇪' },\n NZ: { name: 'Nouvelle-Zélande', name_en: \"New Zealand\", flag: '🇳🇿' },\n};\n"]}
@@ -0,0 +1,3 @@
1
+ import { ICountryMapping } from "../types/KYC.types";
2
+ export declare const countryMapping: Record<string, Record<string, Record<string, ICountryMapping[]>>>;
3
+ //# sourceMappingURL=region_mapping.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"region_mapping.d.ts","sourceRoot":"","sources":["../../src/config/region_mapping.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,eAAe,EAAE,MAAM,oBAAoB,CAAC;AAErD,eAAO,MAAM,cAAc,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,eAAe,EAAE,CAAC,CAAC,CA6qB5F,CAAA"}