@myazahq/kyc-sdk-react-native 2.0.1 → 2.1.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (283) hide show
  1. package/README.md +111 -8
  2. package/android/build.gradle +6 -0
  3. package/android/src/main/AndroidManifest.xml +14 -4
  4. package/android/src/main/java/com/margelo/nitro/myazakyc/HybridMyazaEmrtd.kt +358 -0
  5. package/android/src/main/java/com/margelo/nitro/myazakyc/HybridMyazaFaceDetector.kt +88 -1
  6. package/android/src/main/java/com/margelo/nitro/myazakyc/HybridMyazaRectDetector.kt +34 -0
  7. package/android/src/main/java/com/margelo/nitro/myazakyc/HybridMyazaTextRecognizer.kt +118 -0
  8. package/android/src/main/java/com/margelo/nitro/myazakyc/Jp2Decoder.kt +117 -0
  9. package/app.plugin.js +102 -13
  10. package/ios/HybridMyazaEmrtd.swift +447 -0
  11. package/ios/HybridMyazaFaceDetector.swift +104 -2
  12. package/ios/HybridMyazaRectDetector.swift +103 -0
  13. package/ios/HybridMyazaTextRecognizer.swift +111 -0
  14. package/nitrogen/generated/.gitattributes +1 -0
  15. package/nitrogen/generated/android/KycSdkReactNative+autolinking.cmake +87 -0
  16. package/nitrogen/generated/android/KycSdkReactNative+autolinking.gradle +27 -0
  17. package/nitrogen/generated/android/KycSdkReactNativeOnLoad.cpp +102 -0
  18. package/nitrogen/generated/android/KycSdkReactNativeOnLoad.hpp +34 -0
  19. package/nitrogen/generated/android/c++/JDetectedRect.hpp +81 -0
  20. package/nitrogen/generated/android/c++/JEmrtdApduResponse.hpp +61 -0
  21. package/nitrogen/generated/android/c++/JEmrtdTagInfo.hpp +61 -0
  22. package/nitrogen/generated/android/c++/JFaceResult.hpp +113 -0
  23. package/nitrogen/generated/android/c++/JHybridMyazaEmrtdSpec.cpp +176 -0
  24. package/nitrogen/generated/android/c++/JHybridMyazaEmrtdSpec.hpp +75 -0
  25. package/nitrogen/generated/android/c++/JHybridMyazaFaceDetectorSpec.cpp +60 -0
  26. package/nitrogen/generated/android/c++/JHybridMyazaFaceDetectorSpec.hpp +63 -0
  27. package/nitrogen/generated/android/c++/JHybridMyazaRectDetectorSpec.cpp +60 -0
  28. package/nitrogen/generated/android/c++/JHybridMyazaRectDetectorSpec.hpp +63 -0
  29. package/nitrogen/generated/android/c++/JHybridMyazaTextRecognizerSpec.cpp +80 -0
  30. package/nitrogen/generated/android/c++/JHybridMyazaTextRecognizerSpec.hpp +64 -0
  31. package/nitrogen/generated/android/c++/JTextResult.hpp +76 -0
  32. package/nitrogen/generated/android/kotlin/com/margelo/nitro/myazakyc/DetectedRect.kt +81 -0
  33. package/nitrogen/generated/android/kotlin/com/margelo/nitro/myazakyc/EmrtdApduResponse.kt +56 -0
  34. package/nitrogen/generated/android/kotlin/com/margelo/nitro/myazakyc/EmrtdTagInfo.kt +56 -0
  35. package/nitrogen/generated/android/kotlin/com/margelo/nitro/myazakyc/FaceResult.kt +121 -0
  36. package/nitrogen/generated/android/kotlin/com/margelo/nitro/myazakyc/HybridMyazaEmrtdSpec.kt +103 -0
  37. package/nitrogen/generated/android/kotlin/com/margelo/nitro/myazakyc/HybridMyazaFaceDetectorSpec.kt +55 -0
  38. package/nitrogen/generated/android/kotlin/com/margelo/nitro/myazakyc/HybridMyazaRectDetectorSpec.kt +55 -0
  39. package/nitrogen/generated/android/kotlin/com/margelo/nitro/myazakyc/HybridMyazaTextRecognizerSpec.kt +60 -0
  40. package/nitrogen/generated/android/kotlin/com/margelo/nitro/myazakyc/KycSdkReactNativeOnLoad.kt +35 -0
  41. package/nitrogen/generated/android/kotlin/com/margelo/nitro/myazakyc/TextResult.kt +51 -0
  42. package/nitrogen/generated/ios/KycSdkReactNative+autolinking.rb +62 -0
  43. package/nitrogen/generated/ios/KycSdkReactNative-Swift-Cxx-Bridge.cpp +143 -0
  44. package/nitrogen/generated/ios/KycSdkReactNative-Swift-Cxx-Bridge.hpp +423 -0
  45. package/nitrogen/generated/ios/KycSdkReactNative-Swift-Cxx-Umbrella.hpp +81 -0
  46. package/nitrogen/generated/ios/KycSdkReactNativeAutolinking.mm +57 -0
  47. package/nitrogen/generated/ios/KycSdkReactNativeAutolinking.swift +62 -0
  48. package/nitrogen/generated/ios/c++/HybridMyazaEmrtdSpecSwift.cpp +11 -0
  49. package/nitrogen/generated/ios/c++/HybridMyazaEmrtdSpecSwift.hpp +184 -0
  50. package/nitrogen/generated/ios/c++/HybridMyazaFaceDetectorSpecSwift.cpp +11 -0
  51. package/nitrogen/generated/ios/c++/HybridMyazaFaceDetectorSpecSwift.hpp +87 -0
  52. package/nitrogen/generated/ios/c++/HybridMyazaRectDetectorSpecSwift.cpp +11 -0
  53. package/nitrogen/generated/ios/c++/HybridMyazaRectDetectorSpecSwift.hpp +87 -0
  54. package/nitrogen/generated/ios/c++/HybridMyazaTextRecognizerSpecSwift.cpp +11 -0
  55. package/nitrogen/generated/ios/c++/HybridMyazaTextRecognizerSpecSwift.hpp +98 -0
  56. package/nitrogen/generated/ios/swift/DetectedRect.swift +59 -0
  57. package/nitrogen/generated/ios/swift/EmrtdApduResponse.swift +34 -0
  58. package/nitrogen/generated/ios/swift/EmrtdTagInfo.swift +34 -0
  59. package/nitrogen/generated/ios/swift/FaceResult.swift +99 -0
  60. package/nitrogen/generated/ios/swift/Func_void.swift +46 -0
  61. package/nitrogen/generated/ios/swift/Func_void_EmrtdApduResponse.swift +46 -0
  62. package/nitrogen/generated/ios/swift/Func_void_EmrtdTagInfo.swift +46 -0
  63. package/nitrogen/generated/ios/swift/Func_void_TextResult.swift +46 -0
  64. package/nitrogen/generated/ios/swift/Func_void_std__exception_ptr.swift +46 -0
  65. package/nitrogen/generated/ios/swift/Func_void_std__string.swift +46 -0
  66. package/nitrogen/generated/ios/swift/HybridMyazaEmrtdSpec.swift +67 -0
  67. package/nitrogen/generated/ios/swift/HybridMyazaEmrtdSpec_cxx.swift +317 -0
  68. package/nitrogen/generated/ios/swift/HybridMyazaFaceDetectorSpec.swift +56 -0
  69. package/nitrogen/generated/ios/swift/HybridMyazaFaceDetectorSpec_cxx.swift +143 -0
  70. package/nitrogen/generated/ios/swift/HybridMyazaRectDetectorSpec.swift +56 -0
  71. package/nitrogen/generated/ios/swift/HybridMyazaRectDetectorSpec_cxx.swift +143 -0
  72. package/nitrogen/generated/ios/swift/HybridMyazaTextRecognizerSpec.swift +57 -0
  73. package/nitrogen/generated/ios/swift/HybridMyazaTextRecognizerSpec_cxx.swift +162 -0
  74. package/nitrogen/generated/ios/swift/TextResult.swift +35 -0
  75. package/nitrogen/generated/shared/c++/DetectedRect.hpp +107 -0
  76. package/nitrogen/generated/shared/c++/EmrtdApduResponse.hpp +87 -0
  77. package/nitrogen/generated/shared/c++/EmrtdTagInfo.hpp +87 -0
  78. package/nitrogen/generated/shared/c++/FaceResult.hpp +139 -0
  79. package/nitrogen/generated/shared/c++/HybridMyazaEmrtdSpec.cpp +33 -0
  80. package/nitrogen/generated/shared/c++/HybridMyazaEmrtdSpec.hpp +80 -0
  81. package/nitrogen/generated/shared/c++/HybridMyazaFaceDetectorSpec.cpp +21 -0
  82. package/nitrogen/generated/shared/c++/HybridMyazaFaceDetectorSpec.hpp +67 -0
  83. package/nitrogen/generated/shared/c++/HybridMyazaRectDetectorSpec.cpp +21 -0
  84. package/nitrogen/generated/shared/c++/HybridMyazaRectDetectorSpec.hpp +67 -0
  85. package/nitrogen/generated/shared/c++/HybridMyazaTextRecognizerSpec.cpp +22 -0
  86. package/nitrogen/generated/shared/c++/HybridMyazaTextRecognizerSpec.hpp +70 -0
  87. package/nitrogen/generated/shared/c++/TextResult.hpp +84 -0
  88. package/package.json +16 -4
  89. package/src/MyazaKYC.tsx +115 -22
  90. package/src/capture/documentIdentity.ts +153 -0
  91. package/src/capture/documentSignals.ts +177 -0
  92. package/src/capture/documentTextGate.ts +171 -0
  93. package/src/capture/hints.ts +57 -0
  94. package/src/capture/index.ts +24 -0
  95. package/src/capture/rectDetector.ts +84 -0
  96. package/src/capture/rectGate.ts +91 -0
  97. package/src/capture/useAutoCapture.ts +198 -0
  98. package/src/components/CameraPermissionView.tsx +39 -3
  99. package/src/components/CameraViewfinder.tsx +226 -70
  100. package/src/components/ContactCodeEntry.tsx +139 -0
  101. package/src/components/CountryField.tsx +87 -0
  102. package/src/components/CountryFlag.tsx +15 -15
  103. package/src/components/DialCodePicker.tsx +186 -0
  104. package/src/components/DocumentCropper.tsx +1 -1
  105. package/src/components/DocumentReview.tsx +142 -0
  106. package/src/components/DocumentReviewSide.tsx +135 -0
  107. package/src/components/DocumentReviewZoom.tsx +119 -0
  108. package/src/components/ExpiryCountdown.tsx +52 -0
  109. package/src/components/FlashOverlay.tsx +156 -0
  110. package/src/components/Icon.tsx +67 -1
  111. package/src/components/KycFlow.tsx +66 -94
  112. package/src/components/KycSheet.tsx +148 -18
  113. package/src/components/MediaSourceSheet.tsx +163 -0
  114. package/src/components/MyazaButton.tsx +14 -2
  115. package/src/components/MyazaDateField.tsx +240 -0
  116. package/src/components/MyazaInput.tsx +73 -26
  117. package/src/components/MyazaSelect.tsx +283 -0
  118. package/src/components/MyazaWordmark.tsx +33 -0
  119. package/src/components/OptionRow.tsx +132 -0
  120. package/src/components/PhoneNumberInput.tsx +149 -0
  121. package/src/components/PoweredBy.tsx +89 -0
  122. package/src/components/ReadyPrimer.tsx +149 -0
  123. package/src/components/StepView.tsx +91 -0
  124. package/src/components/Typography.tsx +18 -3
  125. package/src/components/VerifiedNotice.tsx +38 -0
  126. package/src/components/WhatsAppIcon.tsx +29 -0
  127. package/src/components/WorkflowGate.tsx +128 -0
  128. package/src/components/brand-font.ts +113 -0
  129. package/src/components/flashHoleGeometry.ts +35 -0
  130. package/src/components/flow/FatalConfigError.tsx +56 -0
  131. package/src/components/fonts.ts +2 -19
  132. package/src/components/readyPrimerContent.ts +52 -0
  133. package/src/components/runtime.tsx +38 -43
  134. package/src/components/stepHeaderMeta.tsx +87 -0
  135. package/src/components/theme-provider.tsx +89 -0
  136. package/src/components/useWorkflowMount.ts +116 -0
  137. package/src/components/viewfinder/CardGuide.tsx +60 -0
  138. package/src/components/viewfinder/DocumentGhost.tsx +149 -0
  139. package/src/components/viewfinder/ImmersiveBottomBar.tsx +172 -0
  140. package/src/components/viewfinder/ImmersiveControls.tsx +127 -0
  141. package/src/components/viewfinder/ImmersiveGuide.tsx +174 -0
  142. package/src/components/viewfinder/ImmersiveOverlay.tsx +79 -0
  143. package/src/components/viewfinder/ViewfinderControls.tsx +154 -0
  144. package/src/config/brand.ts +97 -0
  145. package/src/config/business.ts +179 -0
  146. package/src/config/businessSteps.ts +105 -0
  147. package/src/config/contact.ts +159 -0
  148. package/src/config/countryNames.g.ts +254 -0
  149. package/src/config/currencyFlags.ts +144 -0
  150. package/src/config/font-resolve.ts +78 -0
  151. package/src/config/idTypes.ts +98 -1
  152. package/src/config/keyPeople.ts +152 -0
  153. package/src/config/phone.ts +39 -0
  154. package/src/config/proofOfAddress.ts +75 -0
  155. package/src/config/questionnaire.ts +153 -0
  156. package/src/config/regions.ts +118 -0
  157. package/src/config/registrationHint.ts +87 -0
  158. package/src/config/stepOrder.ts +118 -0
  159. package/src/config/theme.ts +38 -2
  160. package/src/config/workflowMerge.ts +124 -0
  161. package/src/emrtd/bac.ts +128 -0
  162. package/src/emrtd/bytes.ts +127 -0
  163. package/src/emrtd/crypto.ts +163 -0
  164. package/src/emrtd/der.ts +192 -0
  165. package/src/emrtd/dg2.ts +111 -0
  166. package/src/emrtd/files.ts +215 -0
  167. package/src/emrtd/index.ts +30 -0
  168. package/src/emrtd/mrzKey.ts +54 -0
  169. package/src/emrtd/native.ts +79 -0
  170. package/src/emrtd/optionalRead.ts +42 -0
  171. package/src/emrtd/read.ts +224 -0
  172. package/src/emrtd/retry.ts +98 -0
  173. package/src/emrtd/secureMessaging.ts +178 -0
  174. package/src/emrtd/session.ts +200 -0
  175. package/src/emrtd/stages.ts +122 -0
  176. package/src/index.ts +110 -0
  177. package/src/lib/calendar.ts +71 -0
  178. package/src/lib/use-keyboard-inset.ts +34 -0
  179. package/src/liveness/challengeManager.ts +27 -1
  180. package/src/liveness/faceContinuity.ts +153 -0
  181. package/src/liveness/flashDetector.ts +145 -0
  182. package/src/liveness/flashReadyGate.ts +106 -0
  183. package/src/liveness/flashRunner.ts +118 -0
  184. package/src/liveness/integritySignals.ts +60 -0
  185. package/src/liveness/livenessState.ts +139 -0
  186. package/src/liveness/speech.ts +19 -1
  187. package/src/liveness/types.ts +48 -1
  188. package/src/liveness/useFlashPhase.ts +78 -0
  189. package/src/liveness/useLiveness.ts +260 -75
  190. package/src/liveness/visionCameraFaceDetector.ts +14 -0
  191. package/src/mrz/extract.ts +101 -0
  192. package/src/mrz/parse.ts +178 -0
  193. package/src/mrz/textRecognizer.ts +149 -0
  194. package/src/screens/ApplicantRoleStep.tsx +331 -0
  195. package/src/screens/BusinessDetailsStep.tsx +212 -0
  196. package/src/screens/BusinessDocumentSlot.tsx +167 -0
  197. package/src/screens/BusinessDocumentsStep.tsx +213 -0
  198. package/src/screens/BusinessKeyPeopleStep.tsx +151 -0
  199. package/src/screens/BusinessKeyPersonRow.tsx +170 -0
  200. package/src/screens/CompanyInfoFields.tsx +83 -0
  201. package/src/screens/ConsentStep.tsx +68 -68
  202. package/src/screens/ContactChannelChoice.tsx +133 -0
  203. package/src/screens/ContactCodeStep.tsx +130 -0
  204. package/src/screens/ContactDestinationField.tsx +70 -0
  205. package/src/screens/ContactFooterNote.tsx +34 -0
  206. package/src/screens/ContactVerificationStep.tsx +199 -0
  207. package/src/screens/ContactVerifiedPanel.tsx +36 -0
  208. package/src/screens/CountrySelectStep.tsx +210 -0
  209. package/src/screens/DocumentCaptureStep.tsx +190 -145
  210. package/src/screens/IdInputStep.tsx +19 -9
  211. package/src/screens/IdTypeStep.tsx +74 -33
  212. package/src/screens/KeyPeopleInviteLinks.tsx +239 -0
  213. package/src/screens/LivenessStep.tsx +181 -267
  214. package/src/screens/MrzScanView.tsx +173 -0
  215. package/src/screens/NfcStep.tsx +290 -0
  216. package/src/screens/ProofOfAddressStep.tsx +238 -0
  217. package/src/screens/QuestionnaireField.tsx +219 -0
  218. package/src/screens/QuestionnaireMoneyField.tsx +134 -0
  219. package/src/screens/QuestionnaireStep.tsx +76 -0
  220. package/src/screens/SubmittedStep.tsx +5 -0
  221. package/src/screens/consent/model.ts +109 -0
  222. package/src/screens/document/CameraPhase.tsx +150 -0
  223. package/src/screens/document/RequiredPill.tsx +60 -0
  224. package/src/screens/liveness/LightingBanner.tsx +50 -0
  225. package/src/screens/liveness/LivenessOutcome.tsx +109 -0
  226. package/src/screens/liveness/ProgressDots.tsx +67 -0
  227. package/src/screens/liveness/SelfiePreview.tsx +39 -0
  228. package/src/screens/liveness/constants.ts +31 -0
  229. package/src/screens/liveness/index.ts +8 -0
  230. package/src/screens/liveness/resolveGuidance.ts +27 -0
  231. package/src/screens/liveness/useSelfieUpload.ts +107 -0
  232. package/src/screens/nfc/NfcMrzPrompt.tsx +40 -0
  233. package/src/screens/nfc/NfcReadBody.tsx +63 -0
  234. package/src/screens/nfc/NfcReadProgress.tsx +96 -0
  235. package/src/screens/nfc/NfcScanIllustration.tsx +244 -0
  236. package/src/screens/nfc/NfcScannedSummary.tsx +74 -0
  237. package/src/screens/nfc/NfcSuccessPanel.tsx +162 -0
  238. package/src/screens/nfc/availability.ts +73 -0
  239. package/src/screens/nfc/readErrorMessage.ts +93 -0
  240. package/src/screens/nfc/useChipPortrait.ts +58 -0
  241. package/src/screens/nfc/useNfcAvailability.ts +82 -0
  242. package/src/screens/useFlashHole.ts +105 -0
  243. package/src/screens/useFlashSequence.ts +96 -0
  244. package/src/screens/usePoaAttach.ts +121 -0
  245. package/src/services/api-types.ts +164 -0
  246. package/src/services/api-verify-types.ts +99 -0
  247. package/src/services/api.ts +72 -102
  248. package/src/services/cardCrop.ts +25 -10
  249. package/src/services/contactErrors.ts +43 -0
  250. package/src/services/deviceMetadata.ts +1 -1
  251. package/src/services/documentPicker.ts +20 -0
  252. package/src/services/fingerprint-sources.ts +129 -0
  253. package/src/services/fingerprint.ts +101 -0
  254. package/src/services/haptics.ts +38 -0
  255. package/src/services/mediaCompress.ts +7 -2
  256. package/src/services/resolveUrl.ts +3 -2
  257. package/src/services/validators.ts +3 -0
  258. package/src/services/workflowGate.ts +138 -0
  259. package/src/specs/MyazaEmrtd.nitro.ts +114 -0
  260. package/src/specs/MyazaFaceDetector.nitro.ts +10 -0
  261. package/src/specs/MyazaRectDetector.nitro.ts +50 -0
  262. package/src/specs/MyazaTextRecognizer.nitro.ts +48 -0
  263. package/src/store/derive.ts +225 -0
  264. package/src/store/kycStore.ts +250 -149
  265. package/src/store/state.ts +253 -0
  266. package/src/store/submit.ts +101 -0
  267. package/src/store/submitApplicant.ts +81 -0
  268. package/src/types/appearance.ts +113 -0
  269. package/src/types/business.ts +131 -0
  270. package/src/types/config.ts +150 -119
  271. package/src/types/id-types.ts +57 -0
  272. package/src/types/verification.ts +5 -0
  273. package/src/types/workflow.ts +141 -0
  274. package/src/utils/amountFormat.ts +73 -0
  275. package/src/utils/tokens.ts +4 -2
  276. package/src/__tests__/cardCrop.test.ts +0 -39
  277. package/src/__tests__/deviceMetadata.test.ts +0 -34
  278. package/src/__tests__/errors.test.ts +0 -34
  279. package/src/__tests__/flow.test.ts +0 -61
  280. package/src/__tests__/gestureDetector.test.ts +0 -37
  281. package/src/__tests__/liveness.test.ts +0 -112
  282. package/src/__tests__/resolveUrl.test.ts +0 -64
  283. package/src/__tests__/validators.test.ts +0 -38
@@ -0,0 +1,76 @@
1
+ ///
2
+ /// JTextResult.hpp
3
+ /// This file was generated by nitrogen. DO NOT MODIFY THIS FILE.
4
+ /// https://github.com/mrousavy/nitro
5
+ /// Copyright © Marc Rousavy @ Margelo
6
+ ///
7
+
8
+ #pragma once
9
+
10
+ #include <fbjni/fbjni.h>
11
+ #include "TextResult.hpp"
12
+
13
+ #include <string>
14
+ #include <vector>
15
+
16
+ namespace margelo::nitro::myazakyc {
17
+
18
+ using namespace facebook;
19
+
20
+ /**
21
+ * The C++ JNI bridge between the C++ struct "TextResult" and the the Kotlin data class "TextResult".
22
+ */
23
+ struct JTextResult final: public jni::JavaClass<JTextResult> {
24
+ public:
25
+ static constexpr auto kJavaDescriptor = "Lcom/margelo/nitro/myazakyc/TextResult;";
26
+
27
+ public:
28
+ /**
29
+ * Convert this Java/Kotlin-based struct to the C++ struct TextResult by copying all values to C++.
30
+ */
31
+ [[maybe_unused]]
32
+ [[nodiscard]]
33
+ TextResult toCpp() const {
34
+ static const auto clazz = javaClassStatic();
35
+ static const auto fieldLines = clazz->getField<jni::JArrayClass<jni::JString>>("lines");
36
+ jni::local_ref<jni::JArrayClass<jni::JString>> lines = this->getFieldValue(fieldLines);
37
+ return TextResult(
38
+ [&](auto&& __input) {
39
+ size_t __size = __input->size();
40
+ std::vector<std::string> __vector;
41
+ __vector.reserve(__size);
42
+ for (size_t __i = 0; __i < __size; __i++) {
43
+ auto __element = __input->getElement(__i);
44
+ __vector.push_back(__element->toStdString());
45
+ }
46
+ return __vector;
47
+ }(lines)
48
+ );
49
+ }
50
+
51
+ public:
52
+ /**
53
+ * Create a Java/Kotlin-based struct by copying all values from the given C++ struct to Java.
54
+ */
55
+ [[maybe_unused]]
56
+ static jni::local_ref<JTextResult::javaobject> fromCpp(const TextResult& value) {
57
+ using JSignature = JTextResult(jni::alias_ref<jni::JArrayClass<jni::JString>>);
58
+ static const auto clazz = javaClassStatic();
59
+ static const auto create = clazz->getStaticMethod<JSignature>("fromCpp");
60
+ return create(
61
+ clazz,
62
+ [&](auto&& __input) {
63
+ size_t __size = __input.size();
64
+ jni::local_ref<jni::JArrayClass<jni::JString>> __array = jni::JArrayClass<jni::JString>::newArray(__size);
65
+ for (size_t __i = 0; __i < __size; __i++) {
66
+ const auto& __element = __input[__i];
67
+ auto __elementJni = jni::make_jstring(__element);
68
+ __array->setElement(__i, *__elementJni);
69
+ }
70
+ return __array;
71
+ }(value.lines)
72
+ );
73
+ }
74
+ };
75
+
76
+ } // namespace margelo::nitro::myazakyc
@@ -0,0 +1,81 @@
1
+ ///
2
+ /// DetectedRect.kt
3
+ /// This file was generated by nitrogen. DO NOT MODIFY THIS FILE.
4
+ /// https://github.com/mrousavy/nitro
5
+ /// Copyright © Marc Rousavy @ Margelo
6
+ ///
7
+
8
+ package com.margelo.nitro.myazakyc
9
+
10
+ import androidx.annotation.Keep
11
+ import com.facebook.proguard.annotations.DoNotStrip
12
+ import java.util.Objects
13
+
14
+
15
+ /**
16
+ * Represents the JavaScript object/struct "DetectedRect".
17
+ */
18
+ @DoNotStrip
19
+ @Keep
20
+ data class DetectedRect(
21
+ @DoNotStrip
22
+ @Keep
23
+ val found: Boolean,
24
+ @DoNotStrip
25
+ @Keep
26
+ val x: Double,
27
+ @DoNotStrip
28
+ @Keep
29
+ val y: Double,
30
+ @DoNotStrip
31
+ @Keep
32
+ val width: Double,
33
+ @DoNotStrip
34
+ @Keep
35
+ val height: Double,
36
+ @DoNotStrip
37
+ @Keep
38
+ val aspect: Double,
39
+ @DoNotStrip
40
+ @Keep
41
+ val confidence: Double
42
+ ) {
43
+ /* primary constructor */
44
+
45
+ override fun equals(other: Any?): Boolean {
46
+ if (this === other) return true
47
+ if (other !is DetectedRect) return false
48
+ return Objects.deepEquals(this.found, other.found)
49
+ && Objects.deepEquals(this.x, other.x)
50
+ && Objects.deepEquals(this.y, other.y)
51
+ && Objects.deepEquals(this.width, other.width)
52
+ && Objects.deepEquals(this.height, other.height)
53
+ && Objects.deepEquals(this.aspect, other.aspect)
54
+ && Objects.deepEquals(this.confidence, other.confidence)
55
+ }
56
+
57
+ override fun hashCode(): Int {
58
+ return arrayOf<Any?>(
59
+ found,
60
+ x,
61
+ y,
62
+ width,
63
+ height,
64
+ aspect,
65
+ confidence
66
+ ).contentDeepHashCode()
67
+ }
68
+
69
+ companion object {
70
+ /**
71
+ * Constructor called from C++
72
+ */
73
+ @DoNotStrip
74
+ @Keep
75
+ @Suppress("unused")
76
+ @JvmStatic
77
+ private fun fromCpp(found: Boolean, x: Double, y: Double, width: Double, height: Double, aspect: Double, confidence: Double): DetectedRect {
78
+ return DetectedRect(found, x, y, width, height, aspect, confidence)
79
+ }
80
+ }
81
+ }
@@ -0,0 +1,56 @@
1
+ ///
2
+ /// EmrtdApduResponse.kt
3
+ /// This file was generated by nitrogen. DO NOT MODIFY THIS FILE.
4
+ /// https://github.com/mrousavy/nitro
5
+ /// Copyright © Marc Rousavy @ Margelo
6
+ ///
7
+
8
+ package com.margelo.nitro.myazakyc
9
+
10
+ import androidx.annotation.Keep
11
+ import com.facebook.proguard.annotations.DoNotStrip
12
+ import java.util.Objects
13
+
14
+
15
+ /**
16
+ * Represents the JavaScript object/struct "EmrtdApduResponse".
17
+ */
18
+ @DoNotStrip
19
+ @Keep
20
+ data class EmrtdApduResponse(
21
+ @DoNotStrip
22
+ @Keep
23
+ val data: String,
24
+ @DoNotStrip
25
+ @Keep
26
+ val statusWord: Double
27
+ ) {
28
+ /* primary constructor */
29
+
30
+ override fun equals(other: Any?): Boolean {
31
+ if (this === other) return true
32
+ if (other !is EmrtdApduResponse) return false
33
+ return Objects.deepEquals(this.data, other.data)
34
+ && Objects.deepEquals(this.statusWord, other.statusWord)
35
+ }
36
+
37
+ override fun hashCode(): Int {
38
+ return arrayOf<Any?>(
39
+ data,
40
+ statusWord
41
+ ).contentDeepHashCode()
42
+ }
43
+
44
+ companion object {
45
+ /**
46
+ * Constructor called from C++
47
+ */
48
+ @DoNotStrip
49
+ @Keep
50
+ @Suppress("unused")
51
+ @JvmStatic
52
+ private fun fromCpp(data: String, statusWord: Double): EmrtdApduResponse {
53
+ return EmrtdApduResponse(data, statusWord)
54
+ }
55
+ }
56
+ }
@@ -0,0 +1,56 @@
1
+ ///
2
+ /// EmrtdTagInfo.kt
3
+ /// This file was generated by nitrogen. DO NOT MODIFY THIS FILE.
4
+ /// https://github.com/mrousavy/nitro
5
+ /// Copyright © Marc Rousavy @ Margelo
6
+ ///
7
+
8
+ package com.margelo.nitro.myazakyc
9
+
10
+ import androidx.annotation.Keep
11
+ import com.facebook.proguard.annotations.DoNotStrip
12
+ import java.util.Objects
13
+
14
+
15
+ /**
16
+ * Represents the JavaScript object/struct "EmrtdTagInfo".
17
+ */
18
+ @DoNotStrip
19
+ @Keep
20
+ data class EmrtdTagInfo(
21
+ @DoNotStrip
22
+ @Keep
23
+ val connected: Boolean,
24
+ @DoNotStrip
25
+ @Keep
26
+ val uid: String
27
+ ) {
28
+ /* primary constructor */
29
+
30
+ override fun equals(other: Any?): Boolean {
31
+ if (this === other) return true
32
+ if (other !is EmrtdTagInfo) return false
33
+ return Objects.deepEquals(this.connected, other.connected)
34
+ && Objects.deepEquals(this.uid, other.uid)
35
+ }
36
+
37
+ override fun hashCode(): Int {
38
+ return arrayOf<Any?>(
39
+ connected,
40
+ uid
41
+ ).contentDeepHashCode()
42
+ }
43
+
44
+ companion object {
45
+ /**
46
+ * Constructor called from C++
47
+ */
48
+ @DoNotStrip
49
+ @Keep
50
+ @Suppress("unused")
51
+ @JvmStatic
52
+ private fun fromCpp(connected: Boolean, uid: String): EmrtdTagInfo {
53
+ return EmrtdTagInfo(connected, uid)
54
+ }
55
+ }
56
+ }
@@ -0,0 +1,121 @@
1
+ ///
2
+ /// FaceResult.kt
3
+ /// This file was generated by nitrogen. DO NOT MODIFY THIS FILE.
4
+ /// https://github.com/mrousavy/nitro
5
+ /// Copyright © Marc Rousavy @ Margelo
6
+ ///
7
+
8
+ package com.margelo.nitro.myazakyc
9
+
10
+ import androidx.annotation.Keep
11
+ import com.facebook.proguard.annotations.DoNotStrip
12
+ import java.util.Objects
13
+
14
+
15
+ /**
16
+ * Represents the JavaScript object/struct "FaceResult".
17
+ */
18
+ @DoNotStrip
19
+ @Keep
20
+ data class FaceResult(
21
+ @DoNotStrip
22
+ @Keep
23
+ val headEulerAngleX: Double,
24
+ @DoNotStrip
25
+ @Keep
26
+ val headEulerAngleY: Double,
27
+ @DoNotStrip
28
+ @Keep
29
+ val headEulerAngleZ: Double,
30
+ @DoNotStrip
31
+ @Keep
32
+ val smilingProbability: Double,
33
+ @DoNotStrip
34
+ @Keep
35
+ val leftEyeOpenProbability: Double,
36
+ @DoNotStrip
37
+ @Keep
38
+ val rightEyeOpenProbability: Double,
39
+ @DoNotStrip
40
+ @Keep
41
+ val faceSizeRatio: Double,
42
+ @DoNotStrip
43
+ @Keep
44
+ val faceCount: Double,
45
+ @DoNotStrip
46
+ @Keep
47
+ val brightness: Double,
48
+ @DoNotStrip
49
+ @Keep
50
+ val faceCenterX: Double,
51
+ @DoNotStrip
52
+ @Keep
53
+ val faceCenterY: Double,
54
+ @DoNotStrip
55
+ @Keep
56
+ val trackingId: Double,
57
+ @DoNotStrip
58
+ @Keep
59
+ val faceR: Double,
60
+ @DoNotStrip
61
+ @Keep
62
+ val faceG: Double,
63
+ @DoNotStrip
64
+ @Keep
65
+ val faceB: Double
66
+ ) {
67
+ /* primary constructor */
68
+
69
+ override fun equals(other: Any?): Boolean {
70
+ if (this === other) return true
71
+ if (other !is FaceResult) return false
72
+ return Objects.deepEquals(this.headEulerAngleX, other.headEulerAngleX)
73
+ && Objects.deepEquals(this.headEulerAngleY, other.headEulerAngleY)
74
+ && Objects.deepEquals(this.headEulerAngleZ, other.headEulerAngleZ)
75
+ && Objects.deepEquals(this.smilingProbability, other.smilingProbability)
76
+ && Objects.deepEquals(this.leftEyeOpenProbability, other.leftEyeOpenProbability)
77
+ && Objects.deepEquals(this.rightEyeOpenProbability, other.rightEyeOpenProbability)
78
+ && Objects.deepEquals(this.faceSizeRatio, other.faceSizeRatio)
79
+ && Objects.deepEquals(this.faceCount, other.faceCount)
80
+ && Objects.deepEquals(this.brightness, other.brightness)
81
+ && Objects.deepEquals(this.faceCenterX, other.faceCenterX)
82
+ && Objects.deepEquals(this.faceCenterY, other.faceCenterY)
83
+ && Objects.deepEquals(this.trackingId, other.trackingId)
84
+ && Objects.deepEquals(this.faceR, other.faceR)
85
+ && Objects.deepEquals(this.faceG, other.faceG)
86
+ && Objects.deepEquals(this.faceB, other.faceB)
87
+ }
88
+
89
+ override fun hashCode(): Int {
90
+ return arrayOf<Any?>(
91
+ headEulerAngleX,
92
+ headEulerAngleY,
93
+ headEulerAngleZ,
94
+ smilingProbability,
95
+ leftEyeOpenProbability,
96
+ rightEyeOpenProbability,
97
+ faceSizeRatio,
98
+ faceCount,
99
+ brightness,
100
+ faceCenterX,
101
+ faceCenterY,
102
+ trackingId,
103
+ faceR,
104
+ faceG,
105
+ faceB
106
+ ).contentDeepHashCode()
107
+ }
108
+
109
+ companion object {
110
+ /**
111
+ * Constructor called from C++
112
+ */
113
+ @DoNotStrip
114
+ @Keep
115
+ @Suppress("unused")
116
+ @JvmStatic
117
+ private fun fromCpp(headEulerAngleX: Double, headEulerAngleY: Double, headEulerAngleZ: Double, smilingProbability: Double, leftEyeOpenProbability: Double, rightEyeOpenProbability: Double, faceSizeRatio: Double, faceCount: Double, brightness: Double, faceCenterX: Double, faceCenterY: Double, trackingId: Double, faceR: Double, faceG: Double, faceB: Double): FaceResult {
118
+ return FaceResult(headEulerAngleX, headEulerAngleY, headEulerAngleZ, smilingProbability, leftEyeOpenProbability, rightEyeOpenProbability, faceSizeRatio, faceCount, brightness, faceCenterX, faceCenterY, trackingId, faceR, faceG, faceB)
119
+ }
120
+ }
121
+ }
@@ -0,0 +1,103 @@
1
+ ///
2
+ /// HybridMyazaEmrtdSpec.kt
3
+ /// This file was generated by nitrogen. DO NOT MODIFY THIS FILE.
4
+ /// https://github.com/mrousavy/nitro
5
+ /// Copyright © Marc Rousavy @ Margelo
6
+ ///
7
+
8
+ package com.margelo.nitro.myazakyc
9
+
10
+ import androidx.annotation.Keep
11
+ import com.facebook.jni.HybridData
12
+ import com.facebook.proguard.annotations.DoNotStrip
13
+ import com.margelo.nitro.core.Promise
14
+ import com.margelo.nitro.core.HybridObject
15
+
16
+ /**
17
+ * A Kotlin class representing the MyazaEmrtd HybridObject.
18
+ * Implement this abstract class to create Kotlin-based instances of MyazaEmrtd.
19
+ */
20
+ @DoNotStrip
21
+ @Keep
22
+ @Suppress(
23
+ "KotlinJniMissingFunction", "unused",
24
+ "RedundantSuppression", "RedundantUnitReturnType", "SimpleRedundantLet",
25
+ "LocalVariableName", "PropertyName", "PrivatePropertyName", "FunctionName"
26
+ )
27
+ abstract class HybridMyazaEmrtdSpec: HybridObject() {
28
+ // Properties
29
+
30
+
31
+ // Methods
32
+ @DoNotStrip
33
+ @Keep
34
+ abstract fun isAvailable(): Boolean
35
+
36
+ @DoNotStrip
37
+ @Keep
38
+ abstract fun startSession(alertMessage: String): Promise<EmrtdTagInfo>
39
+
40
+ @DoNotStrip
41
+ @Keep
42
+ abstract fun stopSession(message: String): Promise<Unit>
43
+
44
+ @DoNotStrip
45
+ @Keep
46
+ abstract fun updateSessionMessage(message: String): Promise<Unit>
47
+
48
+ @DoNotStrip
49
+ @Keep
50
+ abstract fun transceive(apduBase64: String): Promise<EmrtdApduResponse>
51
+
52
+ @DoNotStrip
53
+ @Keep
54
+ abstract fun decodeImage(dataBase64: String): Promise<String>
55
+
56
+ @DoNotStrip
57
+ @Keep
58
+ abstract fun sha1(dataBase64: String): String
59
+
60
+ @DoNotStrip
61
+ @Keep
62
+ abstract fun sha256(dataBase64: String): String
63
+
64
+ @DoNotStrip
65
+ @Keep
66
+ abstract fun desEde2Cbc(keyBase64: String, dataBase64: String, ivBase64: String, encrypt: Boolean): String
67
+
68
+ @DoNotStrip
69
+ @Keep
70
+ abstract fun desBlock(keyBase64: String, blockBase64: String, encrypt: Boolean): String
71
+
72
+ @DoNotStrip
73
+ @Keep
74
+ abstract fun aesCbc(keyBase64: String, dataBase64: String, ivBase64: String, encrypt: Boolean): String
75
+
76
+ @DoNotStrip
77
+ @Keep
78
+ abstract fun aesCmac(keyBase64: String, dataBase64: String): String
79
+
80
+ @DoNotStrip
81
+ @Keep
82
+ abstract fun randomBytes(length: Double): String
83
+
84
+ // Default implementation of `HybridObject.toString()`
85
+ override fun toString(): String {
86
+ return "[HybridObject MyazaEmrtd]"
87
+ }
88
+
89
+ // C++ backing class
90
+ @DoNotStrip
91
+ @Keep
92
+ protected open class CxxPart(javaPart: HybridMyazaEmrtdSpec): HybridObject.CxxPart(javaPart) {
93
+ // C++ JHybridMyazaEmrtdSpec::CxxPart::initHybrid(...)
94
+ external override fun initHybrid(): HybridData
95
+ }
96
+ override fun createCxxPart(): CxxPart {
97
+ return CxxPart(this)
98
+ }
99
+
100
+ companion object {
101
+ protected const val TAG = "HybridMyazaEmrtdSpec"
102
+ }
103
+ }
@@ -0,0 +1,55 @@
1
+ ///
2
+ /// HybridMyazaFaceDetectorSpec.kt
3
+ /// This file was generated by nitrogen. DO NOT MODIFY THIS FILE.
4
+ /// https://github.com/mrousavy/nitro
5
+ /// Copyright © Marc Rousavy @ Margelo
6
+ ///
7
+
8
+ package com.margelo.nitro.myazakyc
9
+
10
+ import androidx.annotation.Keep
11
+ import com.facebook.jni.HybridData
12
+ import com.facebook.proguard.annotations.DoNotStrip
13
+ import com.margelo.nitro.camera.HybridFrameSpec
14
+ import com.margelo.nitro.core.HybridObject
15
+
16
+ /**
17
+ * A Kotlin class representing the MyazaFaceDetector HybridObject.
18
+ * Implement this abstract class to create Kotlin-based instances of MyazaFaceDetector.
19
+ */
20
+ @DoNotStrip
21
+ @Keep
22
+ @Suppress(
23
+ "KotlinJniMissingFunction", "unused",
24
+ "RedundantSuppression", "RedundantUnitReturnType", "SimpleRedundantLet",
25
+ "LocalVariableName", "PropertyName", "PrivatePropertyName", "FunctionName"
26
+ )
27
+ abstract class HybridMyazaFaceDetectorSpec: HybridObject() {
28
+ // Properties
29
+
30
+
31
+ // Methods
32
+ @DoNotStrip
33
+ @Keep
34
+ abstract fun detectFace(frame: com.margelo.nitro.camera.HybridFrameSpec): FaceResult
35
+
36
+ // Default implementation of `HybridObject.toString()`
37
+ override fun toString(): String {
38
+ return "[HybridObject MyazaFaceDetector]"
39
+ }
40
+
41
+ // C++ backing class
42
+ @DoNotStrip
43
+ @Keep
44
+ protected open class CxxPart(javaPart: HybridMyazaFaceDetectorSpec): HybridObject.CxxPart(javaPart) {
45
+ // C++ JHybridMyazaFaceDetectorSpec::CxxPart::initHybrid(...)
46
+ external override fun initHybrid(): HybridData
47
+ }
48
+ override fun createCxxPart(): CxxPart {
49
+ return CxxPart(this)
50
+ }
51
+
52
+ companion object {
53
+ protected const val TAG = "HybridMyazaFaceDetectorSpec"
54
+ }
55
+ }
@@ -0,0 +1,55 @@
1
+ ///
2
+ /// HybridMyazaRectDetectorSpec.kt
3
+ /// This file was generated by nitrogen. DO NOT MODIFY THIS FILE.
4
+ /// https://github.com/mrousavy/nitro
5
+ /// Copyright © Marc Rousavy @ Margelo
6
+ ///
7
+
8
+ package com.margelo.nitro.myazakyc
9
+
10
+ import androidx.annotation.Keep
11
+ import com.facebook.jni.HybridData
12
+ import com.facebook.proguard.annotations.DoNotStrip
13
+ import com.margelo.nitro.camera.HybridFrameSpec
14
+ import com.margelo.nitro.core.HybridObject
15
+
16
+ /**
17
+ * A Kotlin class representing the MyazaRectDetector HybridObject.
18
+ * Implement this abstract class to create Kotlin-based instances of MyazaRectDetector.
19
+ */
20
+ @DoNotStrip
21
+ @Keep
22
+ @Suppress(
23
+ "KotlinJniMissingFunction", "unused",
24
+ "RedundantSuppression", "RedundantUnitReturnType", "SimpleRedundantLet",
25
+ "LocalVariableName", "PropertyName", "PrivatePropertyName", "FunctionName"
26
+ )
27
+ abstract class HybridMyazaRectDetectorSpec: HybridObject() {
28
+ // Properties
29
+
30
+
31
+ // Methods
32
+ @DoNotStrip
33
+ @Keep
34
+ abstract fun detectRect(frame: com.margelo.nitro.camera.HybridFrameSpec): DetectedRect
35
+
36
+ // Default implementation of `HybridObject.toString()`
37
+ override fun toString(): String {
38
+ return "[HybridObject MyazaRectDetector]"
39
+ }
40
+
41
+ // C++ backing class
42
+ @DoNotStrip
43
+ @Keep
44
+ protected open class CxxPart(javaPart: HybridMyazaRectDetectorSpec): HybridObject.CxxPart(javaPart) {
45
+ // C++ JHybridMyazaRectDetectorSpec::CxxPart::initHybrid(...)
46
+ external override fun initHybrid(): HybridData
47
+ }
48
+ override fun createCxxPart(): CxxPart {
49
+ return CxxPart(this)
50
+ }
51
+
52
+ companion object {
53
+ protected const val TAG = "HybridMyazaRectDetectorSpec"
54
+ }
55
+ }
@@ -0,0 +1,60 @@
1
+ ///
2
+ /// HybridMyazaTextRecognizerSpec.kt
3
+ /// This file was generated by nitrogen. DO NOT MODIFY THIS FILE.
4
+ /// https://github.com/mrousavy/nitro
5
+ /// Copyright © Marc Rousavy @ Margelo
6
+ ///
7
+
8
+ package com.margelo.nitro.myazakyc
9
+
10
+ import androidx.annotation.Keep
11
+ import com.facebook.jni.HybridData
12
+ import com.facebook.proguard.annotations.DoNotStrip
13
+ import com.margelo.nitro.camera.HybridFrameSpec
14
+ import com.margelo.nitro.core.Promise
15
+ import com.margelo.nitro.core.HybridObject
16
+
17
+ /**
18
+ * A Kotlin class representing the MyazaTextRecognizer HybridObject.
19
+ * Implement this abstract class to create Kotlin-based instances of MyazaTextRecognizer.
20
+ */
21
+ @DoNotStrip
22
+ @Keep
23
+ @Suppress(
24
+ "KotlinJniMissingFunction", "unused",
25
+ "RedundantSuppression", "RedundantUnitReturnType", "SimpleRedundantLet",
26
+ "LocalVariableName", "PropertyName", "PrivatePropertyName", "FunctionName"
27
+ )
28
+ abstract class HybridMyazaTextRecognizerSpec: HybridObject() {
29
+ // Properties
30
+
31
+
32
+ // Methods
33
+ @DoNotStrip
34
+ @Keep
35
+ abstract fun recognizeText(frame: com.margelo.nitro.camera.HybridFrameSpec, bottomFraction: Double): TextResult
36
+
37
+ @DoNotStrip
38
+ @Keep
39
+ abstract fun recognizeTextInImage(uri: String, bottomFraction: Double): Promise<TextResult>
40
+
41
+ // Default implementation of `HybridObject.toString()`
42
+ override fun toString(): String {
43
+ return "[HybridObject MyazaTextRecognizer]"
44
+ }
45
+
46
+ // C++ backing class
47
+ @DoNotStrip
48
+ @Keep
49
+ protected open class CxxPart(javaPart: HybridMyazaTextRecognizerSpec): HybridObject.CxxPart(javaPart) {
50
+ // C++ JHybridMyazaTextRecognizerSpec::CxxPart::initHybrid(...)
51
+ external override fun initHybrid(): HybridData
52
+ }
53
+ override fun createCxxPart(): CxxPart {
54
+ return CxxPart(this)
55
+ }
56
+
57
+ companion object {
58
+ protected const val TAG = "HybridMyazaTextRecognizerSpec"
59
+ }
60
+ }
@@ -0,0 +1,35 @@
1
+ ///
2
+ /// KycSdkReactNativeOnLoad.kt
3
+ /// This file was generated by nitrogen. DO NOT MODIFY THIS FILE.
4
+ /// https://github.com/mrousavy/nitro
5
+ /// Copyright © Marc Rousavy @ Margelo
6
+ ///
7
+
8
+ package com.margelo.nitro.myazakyc
9
+
10
+ import android.util.Log
11
+
12
+ internal class KycSdkReactNativeOnLoad {
13
+ companion object {
14
+ private const val TAG = "KycSdkReactNativeOnLoad"
15
+ private var didLoad = false
16
+ /**
17
+ * Initializes the native part of "KycSdkReactNative".
18
+ * This method is idempotent and can be called more than once.
19
+ */
20
+ @JvmStatic
21
+ fun initializeNative() {
22
+ if (didLoad) return
23
+ try {
24
+ Log.i(TAG, "Loading KycSdkReactNative C++ library...")
25
+ System.loadLibrary("KycSdkReactNative")
26
+ Log.i(TAG, "Successfully loaded KycSdkReactNative C++ library!")
27
+ didLoad = true
28
+ } catch (e: Error) {
29
+ Log.e(TAG, "Failed to load KycSdkReactNative C++ library! Is it properly installed and linked? " +
30
+ "Is the name correct? (see `CMakeLists.txt`, at `add_library(...)`)", e)
31
+ throw e
32
+ }
33
+ }
34
+ }
35
+ }