@smile_identity/react-native 10.0.0-beta01 → 10.0.0-beta02
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/android/gradle.properties +1 -1
- package/android/src/main/java/com/smileidentity/react/SmileIdModule.kt +59 -9
- package/android/src/main/java/com/smileidentity/react/SmileIdPackage.kt +4 -2
- package/android/src/main/java/com/smileidentity/react/utils/ReactUtils.kt +16 -10
- package/android/src/main/java/com/smileidentity/react/viewmanagers/SmileIDBiometricKYCViewManager.kt +38 -9
- package/android/src/main/java/com/smileidentity/react/viewmanagers/SmileIDConsentViewManager.kt +77 -0
- package/android/src/main/java/com/smileidentity/react/viewmanagers/SmileIDDocumentVerificationViewManager.kt +43 -9
- package/android/src/main/java/com/smileidentity/react/viewmanagers/SmileIDEnhancedDocumentVerificationViewManager.kt +75 -0
- package/android/src/main/java/com/smileidentity/react/viewmanagers/SmileIDSmartSelfieAuthenticationViewManager.kt +35 -9
- package/android/src/main/java/com/smileidentity/react/viewmanagers/SmileIDSmartSelfieEnrollmentViewManager.kt +35 -9
- package/android/src/main/java/com/smileidentity/react/views/SmileIDBiometricKYCView.kt +54 -0
- package/android/src/main/java/com/smileidentity/react/views/SmileIDConsentView.kt +60 -0
- package/android/src/main/java/com/smileidentity/react/views/SmileIDDocumentVerificationView.kt +69 -0
- package/android/src/main/java/com/smileidentity/react/views/SmileIDEnhancedDocumentVerificationView.kt +63 -0
- package/android/src/main/java/com/smileidentity/react/views/SmileIDSmartSelfieAuthenticationView.kt +50 -0
- package/android/src/main/java/com/smileidentity/react/views/SmileIDSmartSelfieEnrollmentView.kt +49 -0
- package/android/src/main/java/com/smileidentity/react/views/SmileIDView.kt +2 -27
- package/android/src/oldarch/SmileIdSpec.kt +4 -1
- package/ios/RNDelegates/SmileIDUIViewDelegate.swift +4 -0
- package/ios/RNDelegates/SmileIDViewDelegate.swift +5 -0
- package/ios/RNSmileID.mm +7 -0
- package/ios/RNSmileID.swift +147 -0
- package/ios/SmileId.xcodeproj/project.xcworkspace/xcshareddata/IDEWorkspaceChecks.plist +8 -0
- package/ios/SmileId.xcodeproj/project.xcworkspace/xcuserdata/japhetndhlovu.xcuserdatad/UserInterfaceState.xcuserstate +0 -0
- package/ios/SmileId.xcodeproj/xcuserdata/japhetndhlovu.xcuserdatad/xcschemes/xcschememanagement.plist +14 -0
- package/ios/Utils/SmileIDDictExt.swift +50 -0
- package/ios/Utils/SmileIDUtils.swift +10 -0
- package/ios/View/BaseSmileIDView.swift +35 -0
- package/ios/View/SmileIDBiometricKYCView.swift +44 -0
- package/ios/View/SmileIDConsentView.swift +35 -0
- package/ios/View/SmileIDDocumentVerificationView.swift +53 -0
- package/ios/View/SmileIDEnhancedDocumentVerificationView.swift +53 -0
- package/ios/View/SmileIDSmartSelfieAuthView.swift +39 -0
- package/ios/View/SmileIDSmartSelfieEnrollmentView.swift +39 -0
- package/ios/ViewManagers/SmileIDBaseViewManager.swift +17 -0
- package/ios/ViewManagers/SmileIDBiometricKYCViewManager.m +6 -0
- package/ios/ViewManagers/SmileIDBiometricKYCViewManager.swift +33 -0
- package/ios/ViewManagers/SmileIDConsentViewManager.m +6 -0
- package/ios/ViewManagers/SmileIDConsentViewManager.swift +47 -0
- package/ios/ViewManagers/SmileIDDocumentVerificationViewManager.m +6 -0
- package/ios/ViewManagers/SmileIDDocumentVerificationViewManager.swift +48 -0
- package/ios/ViewManagers/SmileIDEnhancedDocumentVerificationViewManager.m +6 -0
- package/ios/ViewManagers/SmileIDEnhancedDocumentVerificationViewManager.swift +48 -0
- package/ios/ViewManagers/SmileIDSmartSelfieAuthenticationViewManager.m +6 -0
- package/ios/ViewManagers/SmileIDSmartSelfieAuthenticationViewManager.swift +26 -0
- package/ios/ViewManagers/SmileIDSmartSelfieEnrollmentViewManager.m +6 -0
- package/ios/ViewManagers/SmileIDSmartSelfieEnrollmentViewManager.swift +26 -0
- package/ios/ViewModels/SmileIDProductModel.swift +29 -0
- package/ios/react-native-smile-id-Bridging-Header.h +8 -0
- package/lib/commonjs/NativeSmileId.js +1 -1
- package/lib/commonjs/NativeSmileId.js.map +1 -1
- package/lib/commonjs/SmileIDBiometricKYCView.js +40 -0
- package/lib/commonjs/SmileIDBiometricKYCView.js.map +1 -0
- package/lib/commonjs/SmileIDConsentView.js +40 -0
- package/lib/commonjs/SmileIDConsentView.js.map +1 -0
- package/lib/commonjs/SmileIDDocumentVerificationView.js +40 -0
- package/lib/commonjs/SmileIDDocumentVerificationView.js.map +1 -0
- package/lib/commonjs/SmileIDEnhancedDocumentVerificationView.js +40 -0
- package/lib/commonjs/SmileIDEnhancedDocumentVerificationView.js.map +1 -0
- package/lib/commonjs/SmileIDSmartSelfieAuthenticationView.js +40 -0
- package/lib/commonjs/SmileIDSmartSelfieAuthenticationView.js.map +1 -0
- package/lib/commonjs/SmileIDSmartSelfieEnrollmentView.js +40 -0
- package/lib/commonjs/SmileIDSmartSelfieEnrollmentView.js.map +1 -0
- package/lib/commonjs/index.js +98 -27
- package/lib/commonjs/index.js.map +1 -1
- package/lib/commonjs/types.js +6 -0
- package/lib/commonjs/types.js.map +1 -0
- package/lib/module/NativeSmileId.js +1 -1
- package/lib/module/NativeSmileId.js.map +1 -1
- package/lib/module/SmileIDBiometricKYCView.js +30 -0
- package/lib/module/SmileIDBiometricKYCView.js.map +1 -0
- package/lib/module/SmileIDConsentView.js +30 -0
- package/lib/module/SmileIDConsentView.js.map +1 -0
- package/lib/module/SmileIDDocumentVerificationView.js +30 -0
- package/lib/module/SmileIDDocumentVerificationView.js.map +1 -0
- package/lib/module/SmileIDEnhancedDocumentVerificationView.js +30 -0
- package/lib/module/SmileIDEnhancedDocumentVerificationView.js.map +1 -0
- package/lib/module/SmileIDSmartSelfieAuthenticationView.js +30 -0
- package/lib/module/SmileIDSmartSelfieAuthenticationView.js.map +1 -0
- package/lib/module/SmileIDSmartSelfieEnrollmentView.js +30 -0
- package/lib/module/SmileIDSmartSelfieEnrollmentView.js.map +1 -0
- package/lib/module/index.js +33 -21
- package/lib/module/index.js.map +1 -1
- package/lib/module/types.js +2 -0
- package/lib/module/types.js.map +1 -0
- package/lib/typescript/NativeSmileId.d.ts +16 -1
- package/lib/typescript/NativeSmileId.d.ts.map +1 -1
- package/lib/typescript/SmileIDBiometricKYCView.d.ts +8 -0
- package/lib/typescript/SmileIDBiometricKYCView.d.ts.map +1 -0
- package/lib/typescript/SmileIDConsentView.d.ts +8 -0
- package/lib/typescript/SmileIDConsentView.d.ts.map +1 -0
- package/lib/typescript/SmileIDDocumentVerificationView.d.ts +8 -0
- package/lib/typescript/SmileIDDocumentVerificationView.d.ts.map +1 -0
- package/lib/typescript/SmileIDEnhancedDocumentVerificationView.d.ts +8 -0
- package/lib/typescript/SmileIDEnhancedDocumentVerificationView.d.ts.map +1 -0
- package/lib/typescript/SmileIDSmartSelfieAuthenticationView.d.ts +8 -0
- package/lib/typescript/SmileIDSmartSelfieAuthenticationView.d.ts.map +1 -0
- package/lib/typescript/SmileIDSmartSelfieEnrollmentView.d.ts +8 -0
- package/lib/typescript/SmileIDSmartSelfieEnrollmentView.d.ts.map +1 -0
- package/lib/typescript/index.d.ts +24 -86
- package/lib/typescript/index.d.ts.map +1 -1
- package/lib/typescript/types.d.ts +182 -0
- package/lib/typescript/types.d.ts.map +1 -0
- package/package.json +1 -2
- package/react-native-smile-id.podspec +2 -2
- package/src/NativeSmileId.ts +17 -5
- package/src/SmileIDBiometricKYCView.tsx +45 -0
- package/src/SmileIDConsentView.tsx +44 -0
- package/src/SmileIDDocumentVerificationView.tsx +51 -0
- package/src/SmileIDEnhancedDocumentVerificationView.tsx +51 -0
- package/src/SmileIDSmartSelfieAuthenticationView.tsx +51 -0
- package/src/SmileIDSmartSelfieEnrollmentView.tsx +51 -0
- package/src/index.tsx +54 -122
- package/src/types.ts +189 -0
- package/android/src/main/java/com/smileidentity/react/viewmanagers/SmileIDBVNConsentViewManager.kt +0 -42
- package/android/src/main/java/com/smileidentity/react/views/SmileIDBVNConsentScreen.kt +0 -54
- package/android/src/main/java/com/smileidentity/react/views/SmileIDBiometricKYC.kt +0 -89
- package/android/src/main/java/com/smileidentity/react/views/SmileIDDocumentVerification.kt +0 -59
- package/android/src/main/java/com/smileidentity/react/views/SmileIDSmartSelfieAuthentication.kt +0 -47
- package/android/src/main/java/com/smileidentity/react/views/SmileIDSmartSelfieEnrollment.kt +0 -48
- package/ios/SmileId.h +0 -12
- package/ios/SmileId.mm +0 -27
|
@@ -5,6 +5,7 @@ import com.facebook.react.bridge.ReactApplicationContext
|
|
|
5
5
|
import com.facebook.react.bridge.ReactMethod
|
|
6
6
|
import com.facebook.react.bridge.ReadableMap
|
|
7
7
|
import com.smileidentity.SmileID
|
|
8
|
+
import com.smileidentity.SmileIDCrashReporting
|
|
8
9
|
import com.smileidentity.SmileIdSpec
|
|
9
10
|
import com.smileidentity.models.EnhancedKycRequest
|
|
10
11
|
import com.smileidentity.react.utils.getStringOrDefault
|
|
@@ -23,15 +24,19 @@ class SmileIdModule internal constructor(context: ReactApplicationContext) :
|
|
|
23
24
|
}
|
|
24
25
|
|
|
25
26
|
@ReactMethod
|
|
26
|
-
override fun initialize(
|
|
27
|
+
override fun initialize(useSandBox: Boolean, promise: Promise) {
|
|
27
28
|
SmileID.initialize(
|
|
28
29
|
reactApplicationContext,
|
|
29
|
-
enableCrashReporting = enableCrashReporting,
|
|
30
30
|
useSandbox = useSandBox
|
|
31
31
|
)
|
|
32
32
|
promise.resolve(null)
|
|
33
33
|
}
|
|
34
34
|
|
|
35
|
+
@ReactMethod
|
|
36
|
+
override fun disableCrashReporting(promise: Promise) {
|
|
37
|
+
SmileIDCrashReporting.disable()
|
|
38
|
+
}
|
|
39
|
+
|
|
35
40
|
@ReactMethod
|
|
36
41
|
override fun doEnhancedKycAsync(product: ReadableMap, promise: Promise) = launch(
|
|
37
42
|
work = {
|
|
@@ -39,24 +44,69 @@ class SmileIdModule internal constructor(context: ReactApplicationContext) :
|
|
|
39
44
|
partnerParams ?: run {
|
|
40
45
|
throw IllegalArgumentException("partnerParams is required for enhanced kyc")
|
|
41
46
|
}
|
|
42
|
-
val country
|
|
47
|
+
val country = product.getStringOrDefault("country", null) ?: run {
|
|
43
48
|
throw IllegalArgumentException("country is required for enhanced kyc")
|
|
44
49
|
}
|
|
45
|
-
val idType
|
|
50
|
+
val idType = product.getStringOrDefault("idType", null) ?: run {
|
|
46
51
|
throw IllegalArgumentException("idType is required for enhanced kyc")
|
|
47
52
|
}
|
|
48
|
-
val idNumber
|
|
53
|
+
val idNumber = product.getStringOrDefault("idNumber", null) ?: run {
|
|
49
54
|
throw IllegalArgumentException("idNumber is required for enhanced kyc")
|
|
50
55
|
}
|
|
51
56
|
|
|
52
|
-
val timestamp
|
|
57
|
+
val timestamp = partnerParams?.extras?.get("timestamp") ?: run {
|
|
53
58
|
throw IllegalArgumentException("partnerParams.timestamp is required for enhanced kyc")
|
|
54
59
|
}
|
|
55
|
-
val signature
|
|
60
|
+
val signature = partnerParams?.extras?.get("timestamp") ?: run {
|
|
56
61
|
throw IllegalArgumentException("partnerParams.signature is required for enhanced kyc")
|
|
57
62
|
}
|
|
58
63
|
SmileID.api.doEnhancedKycAsync(
|
|
59
|
-
EnhancedKycRequest(
|
|
64
|
+
request = EnhancedKycRequest(
|
|
65
|
+
country = country,
|
|
66
|
+
idType = idType,
|
|
67
|
+
idNumber = idNumber,
|
|
68
|
+
firstName = product.getString("firstName"),
|
|
69
|
+
middleName = product.getString("middleName"),
|
|
70
|
+
lastName = product.getString("lastName"),
|
|
71
|
+
dob = product.getString("dob"),
|
|
72
|
+
phoneNumber = product.getString("phoneNumber"),
|
|
73
|
+
bankCode = product.getString("bankCode"),
|
|
74
|
+
callbackUrl = product.getString("callbackUrl"),
|
|
75
|
+
partnerParams = partnerParams,
|
|
76
|
+
sourceSdk = "android (react-native)",
|
|
77
|
+
timestamp = timestamp,
|
|
78
|
+
signature = signature,
|
|
79
|
+
)
|
|
80
|
+
)
|
|
81
|
+
},
|
|
82
|
+
promise = promise
|
|
83
|
+
)
|
|
84
|
+
|
|
85
|
+
@ReactMethod
|
|
86
|
+
override fun doEnhancedKyc(product: ReadableMap, promise: Promise) = launch(
|
|
87
|
+
work = {
|
|
88
|
+
val partnerParams = product.partnerParams()
|
|
89
|
+
partnerParams ?: run {
|
|
90
|
+
throw IllegalArgumentException("partnerParams is required for enhanced kyc")
|
|
91
|
+
}
|
|
92
|
+
val country = product.getStringOrDefault("country", null) ?: run {
|
|
93
|
+
throw IllegalArgumentException("country is required for enhanced kyc")
|
|
94
|
+
}
|
|
95
|
+
val idType = product.getStringOrDefault("idType", null) ?: run {
|
|
96
|
+
throw IllegalArgumentException("idType is required for enhanced kyc")
|
|
97
|
+
}
|
|
98
|
+
val idNumber = product.getStringOrDefault("idNumber", null) ?: run {
|
|
99
|
+
throw IllegalArgumentException("idNumber is required for enhanced kyc")
|
|
100
|
+
}
|
|
101
|
+
|
|
102
|
+
val timestamp = partnerParams?.extras?.get("timestamp") ?: run {
|
|
103
|
+
throw IllegalArgumentException("partnerParams.timestamp is required for enhanced kyc")
|
|
104
|
+
}
|
|
105
|
+
val signature = partnerParams?.extras?.get("timestamp") ?: run {
|
|
106
|
+
throw IllegalArgumentException("partnerParams.signature is required for enhanced kyc")
|
|
107
|
+
}
|
|
108
|
+
SmileID.api.doEnhancedKyc(
|
|
109
|
+
request = EnhancedKycRequest(
|
|
60
110
|
country = country,
|
|
61
111
|
idType = idType,
|
|
62
112
|
idNumber = idNumber,
|
|
@@ -92,6 +142,6 @@ class SmileIdModule internal constructor(context: ReactApplicationContext) :
|
|
|
92
142
|
}
|
|
93
143
|
|
|
94
144
|
companion object {
|
|
95
|
-
const val NAME = "
|
|
145
|
+
const val NAME = "RNSmileID"
|
|
96
146
|
}
|
|
97
147
|
}
|
|
@@ -6,9 +6,10 @@ import com.facebook.react.bridge.ReactApplicationContext
|
|
|
6
6
|
import com.facebook.react.module.model.ReactModuleInfo
|
|
7
7
|
import com.facebook.react.module.model.ReactModuleInfoProvider
|
|
8
8
|
import com.facebook.react.uimanager.ViewManager
|
|
9
|
-
import com.smileidentity.react.viewmanagers.SmileIDBVNConsentViewManager
|
|
10
9
|
import com.smileidentity.react.viewmanagers.SmileIDBiometricKYCViewManager
|
|
10
|
+
import com.smileidentity.react.viewmanagers.SmileIDConsentViewManager
|
|
11
11
|
import com.smileidentity.react.viewmanagers.SmileIDDocumentVerificationViewManager
|
|
12
|
+
import com.smileidentity.react.viewmanagers.SmileIDEnhancedDocumentVerificationViewManager
|
|
12
13
|
import com.smileidentity.react.viewmanagers.SmileIDSmartSelfieAuthenticationViewManager
|
|
13
14
|
import com.smileidentity.react.viewmanagers.SmileIDSmartSelfieEnrollmentViewManager
|
|
14
15
|
|
|
@@ -18,7 +19,8 @@ class SmileIdPackage : TurboReactPackage() {
|
|
|
18
19
|
listOf(SmileIDSmartSelfieEnrollmentViewManager(reactContext),
|
|
19
20
|
SmileIDSmartSelfieAuthenticationViewManager(reactContext),
|
|
20
21
|
SmileIDDocumentVerificationViewManager(reactContext),
|
|
21
|
-
|
|
22
|
+
SmileIDEnhancedDocumentVerificationViewManager(reactContext),
|
|
23
|
+
SmileIDConsentViewManager(reactContext),
|
|
22
24
|
SmileIDBiometricKYCViewManager(reactContext),
|
|
23
25
|
)
|
|
24
26
|
|
|
@@ -27,21 +27,20 @@ fun ReadableMap.toMap(): Map<String, String> {
|
|
|
27
27
|
}
|
|
28
28
|
|
|
29
29
|
fun ReadableMap.idInfo(): IdInfo? {
|
|
30
|
-
val
|
|
31
|
-
val country = idInfoMap?.getStringOrDefault("country", null) ?: run {
|
|
30
|
+
val country = getStringOrDefault("country", null) ?: run {
|
|
32
31
|
Timber.e("idInfo.country is required")
|
|
33
32
|
return null
|
|
34
33
|
}
|
|
35
34
|
return IdInfo(
|
|
36
35
|
country = country,
|
|
37
|
-
idType =
|
|
38
|
-
idNumber =
|
|
39
|
-
firstName =
|
|
40
|
-
middleName =
|
|
41
|
-
lastName =
|
|
42
|
-
dob =
|
|
43
|
-
bankCode =
|
|
44
|
-
entered =
|
|
36
|
+
idType = getStringOrDefault("idType", null),
|
|
37
|
+
idNumber = getStringOrDefault("idNumber", null),
|
|
38
|
+
firstName = getStringOrDefault("firstName", null),
|
|
39
|
+
middleName = getStringOrDefault("middleName", null),
|
|
40
|
+
lastName = getStringOrDefault("lastName", null),
|
|
41
|
+
dob = getStringOrDefault("dob", null),
|
|
42
|
+
bankCode = getStringOrDefault("bankCode", null),
|
|
43
|
+
entered = getBoolOrDefault("entered", false),
|
|
45
44
|
)
|
|
46
45
|
}
|
|
47
46
|
|
|
@@ -69,6 +68,13 @@ fun ReadableMap.getBoolOrDefault(key: String, defaultValue: Boolean): Boolean {
|
|
|
69
68
|
return defaultValue
|
|
70
69
|
}
|
|
71
70
|
|
|
71
|
+
fun ReadableMap.getFloatOrDefault(key: String, defaultValue: Float?): Float? {
|
|
72
|
+
if (hasKey(key)) {
|
|
73
|
+
return getDouble(key).toFloat()
|
|
74
|
+
}
|
|
75
|
+
return defaultValue
|
|
76
|
+
}
|
|
77
|
+
|
|
72
78
|
fun ReadableMap.getStringOrDefault(key: String, defaultValue: String?): String? {
|
|
73
79
|
if (hasKey(key)) {
|
|
74
80
|
return getString(key)
|
package/android/src/main/java/com/smileidentity/react/viewmanagers/SmileIDBiometricKYCViewManager.kt
CHANGED
|
@@ -1,17 +1,20 @@
|
|
|
1
1
|
package com.smileidentity.react.viewmanagers
|
|
2
2
|
|
|
3
3
|
import com.facebook.react.bridge.ReactApplicationContext
|
|
4
|
-
import com.facebook.react.bridge.
|
|
4
|
+
import com.facebook.react.bridge.ReadableArray
|
|
5
5
|
import com.facebook.react.module.annotations.ReactModule
|
|
6
6
|
import com.facebook.react.uimanager.SimpleViewManager
|
|
7
7
|
import com.facebook.react.uimanager.ThemedReactContext
|
|
8
|
-
import com.
|
|
9
|
-
import com.smileidentity.react.
|
|
8
|
+
import com.smileidentity.react.utils.getBoolOrDefault
|
|
9
|
+
import com.smileidentity.react.utils.getStringOrDefault
|
|
10
|
+
import com.smileidentity.react.utils.idInfo
|
|
11
|
+
import com.smileidentity.react.utils.toMap
|
|
12
|
+
import com.smileidentity.react.views.SmileIDBiometricKYCView
|
|
10
13
|
|
|
11
14
|
|
|
12
15
|
@ReactModule(name = SmileIDBiometricKYCViewManager.NAME)
|
|
13
16
|
class SmileIDBiometricKYCViewManager(private val reactApplicationContext: ReactApplicationContext) :
|
|
14
|
-
SimpleViewManager<
|
|
17
|
+
SimpleViewManager<SmileIDBiometricKYCView>() {
|
|
15
18
|
override fun getName(): String {
|
|
16
19
|
return NAME
|
|
17
20
|
}
|
|
@@ -26,17 +29,43 @@ class SmileIDBiometricKYCViewManager(private val reactApplicationContext: ReactA
|
|
|
26
29
|
)
|
|
27
30
|
}
|
|
28
31
|
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
view.product = product
|
|
32
|
+
override fun getCommandsMap(): Map<String, Int> {
|
|
33
|
+
return mapOf("setParams" to COMMAND_SET_PARAMS)
|
|
32
34
|
}
|
|
33
35
|
|
|
34
|
-
override fun
|
|
35
|
-
|
|
36
|
+
override fun receiveCommand(
|
|
37
|
+
view: SmileIDBiometricKYCView,
|
|
38
|
+
commandId: String?,
|
|
39
|
+
args: ReadableArray?
|
|
40
|
+
) {
|
|
41
|
+
super.receiveCommand(view, commandId, args)
|
|
42
|
+
when (commandId?.toInt()) {
|
|
43
|
+
COMMAND_SET_PARAMS -> {
|
|
44
|
+
// Extract params from args and apply to view
|
|
45
|
+
val params = args?.getMap(0)
|
|
46
|
+
params?.let {
|
|
47
|
+
val idInfoMap = params.getMap("idInfo") ?: return view.emitFailure(IllegalArgumentException("idInfo is required to run Biometric KYC"))
|
|
48
|
+
val idInfo = idInfoMap.idInfo() ?: return view.emitFailure(IllegalArgumentException("idInfo is required to run Biometric KYC"))
|
|
49
|
+
view.extraPartnerParams = params.getMap("extraPartnerParams")?.toMap()
|
|
50
|
+
view.userId = params.getStringOrDefault("userId",null)
|
|
51
|
+
view.jobId = params.getStringOrDefault("jobId",null)
|
|
52
|
+
view.idInfo = idInfo
|
|
53
|
+
view.allowAgentMode = params.getBoolOrDefault("allowAgentMode",false)
|
|
54
|
+
view.showAttribution = params.getBoolOrDefault("showAttribution",true)
|
|
55
|
+
view.showInstructions = params.getBoolOrDefault("showInstructions",true)
|
|
56
|
+
view.renderContent()
|
|
57
|
+
}
|
|
58
|
+
}
|
|
59
|
+
}
|
|
60
|
+
}
|
|
61
|
+
|
|
62
|
+
override fun createViewInstance(p0: ThemedReactContext): SmileIDBiometricKYCView {
|
|
63
|
+
return SmileIDBiometricKYCView(reactApplicationContext)
|
|
36
64
|
}
|
|
37
65
|
|
|
38
66
|
companion object {
|
|
39
67
|
const val NAME = "SmileIDBiometricKYCView"
|
|
68
|
+
const val COMMAND_SET_PARAMS = 6
|
|
40
69
|
}
|
|
41
70
|
|
|
42
71
|
}
|
package/android/src/main/java/com/smileidentity/react/viewmanagers/SmileIDConsentViewManager.kt
ADDED
|
@@ -0,0 +1,77 @@
|
|
|
1
|
+
package com.smileidentity.react.viewmanagers
|
|
2
|
+
|
|
3
|
+
import com.facebook.react.bridge.ReactApplicationContext
|
|
4
|
+
import com.facebook.react.bridge.ReadableArray
|
|
5
|
+
import com.facebook.react.module.annotations.ReactModule
|
|
6
|
+
import com.facebook.react.uimanager.SimpleViewManager
|
|
7
|
+
import com.facebook.react.uimanager.ThemedReactContext
|
|
8
|
+
import com.smileidentity.react.utils.getBoolOrDefault
|
|
9
|
+
import com.smileidentity.react.utils.getMapOrDefault
|
|
10
|
+
import com.smileidentity.react.utils.getStringOrDefault
|
|
11
|
+
import com.smileidentity.react.utils.toMap
|
|
12
|
+
import com.smileidentity.react.views.SmileIDConsentView
|
|
13
|
+
|
|
14
|
+
|
|
15
|
+
@ReactModule(name = SmileIDConsentViewManager.NAME)
|
|
16
|
+
class SmileIDConsentViewManager(private val reactApplicationContext: ReactApplicationContext) :
|
|
17
|
+
SimpleViewManager<SmileIDConsentView>() {
|
|
18
|
+
override fun getName(): String {
|
|
19
|
+
return NAME
|
|
20
|
+
}
|
|
21
|
+
|
|
22
|
+
override fun getExportedCustomBubblingEventTypeConstants(): Map<String, Any> {
|
|
23
|
+
return mapOf(
|
|
24
|
+
"onSmileResult" to mapOf(
|
|
25
|
+
"phasedRegistrationNames" to mapOf(
|
|
26
|
+
"bubbled" to "onResult"
|
|
27
|
+
)
|
|
28
|
+
)
|
|
29
|
+
)
|
|
30
|
+
}
|
|
31
|
+
|
|
32
|
+
override fun getCommandsMap(): Map<String, Int> {
|
|
33
|
+
return mapOf("setParams" to COMMAND_SET_PARAMS)
|
|
34
|
+
}
|
|
35
|
+
|
|
36
|
+
override fun receiveCommand(
|
|
37
|
+
view: SmileIDConsentView,
|
|
38
|
+
commandId: String?,
|
|
39
|
+
args: ReadableArray?
|
|
40
|
+
) {
|
|
41
|
+
super.receiveCommand(view, commandId, args)
|
|
42
|
+
when (commandId?.toInt()) {
|
|
43
|
+
COMMAND_SET_PARAMS -> {
|
|
44
|
+
// Extract params from args and apply to view
|
|
45
|
+
val params = args?.getMap(0)
|
|
46
|
+
params?.let {
|
|
47
|
+
|
|
48
|
+
val partnerName = params.getString("partnerName") ?: return view.emitFailure(IllegalArgumentException("partnerName is required to show Consent Screen"))
|
|
49
|
+
val partnerPrivacyPolicy = params.getString("partnerPrivacyPolicy") ?: return view.emitFailure(IllegalArgumentException("partnerPrivacyPolicy is required to show Consent Screen"))
|
|
50
|
+
val logoResName = params.getString("partnerIcon") ?: return view.emitFailure(IllegalArgumentException("partnerIcon is required to show Consent Screen"))
|
|
51
|
+
val productName = params.getString("productName") ?: return view.emitFailure(IllegalArgumentException("productName is required to show Consent Screen"))
|
|
52
|
+
|
|
53
|
+
view.extraPartnerParams = params.getMapOrDefault("extraPartnerParams",null)?.toMap()
|
|
54
|
+
view.userId = params.getStringOrDefault("userId",null)
|
|
55
|
+
view.jobId = params.getStringOrDefault("jobId",null)
|
|
56
|
+
view.partnerName = partnerName
|
|
57
|
+
view.partnerPrivacyPolicy = partnerPrivacyPolicy
|
|
58
|
+
view.logoResName = logoResName
|
|
59
|
+
view.productName = productName
|
|
60
|
+
view.allowAgentMode = params.getBoolOrDefault("allowAgentMode",false)
|
|
61
|
+
view.showAttribution = params.getBoolOrDefault("showAttribution",true)
|
|
62
|
+
view.showInstructions = params.getBoolOrDefault("showInstructions",true)
|
|
63
|
+
view.renderContent()
|
|
64
|
+
}
|
|
65
|
+
}
|
|
66
|
+
}
|
|
67
|
+
}
|
|
68
|
+
override fun createViewInstance(p0: ThemedReactContext): SmileIDConsentView {
|
|
69
|
+
return SmileIDConsentView(reactApplicationContext)
|
|
70
|
+
}
|
|
71
|
+
|
|
72
|
+
companion object {
|
|
73
|
+
const val NAME = "SmileIDConsentView"
|
|
74
|
+
const val COMMAND_SET_PARAMS = 5
|
|
75
|
+
}
|
|
76
|
+
|
|
77
|
+
}
|
|
@@ -1,17 +1,21 @@
|
|
|
1
1
|
package com.smileidentity.react.viewmanagers
|
|
2
2
|
|
|
3
3
|
import com.facebook.react.bridge.ReactApplicationContext
|
|
4
|
-
import com.facebook.react.bridge.
|
|
4
|
+
import com.facebook.react.bridge.ReadableArray
|
|
5
5
|
import com.facebook.react.module.annotations.ReactModule
|
|
6
6
|
import com.facebook.react.uimanager.SimpleViewManager
|
|
7
7
|
import com.facebook.react.uimanager.ThemedReactContext
|
|
8
|
-
import com.
|
|
9
|
-
import com.smileidentity.react.
|
|
8
|
+
import com.smileidentity.react.utils.getBoolOrDefault
|
|
9
|
+
import com.smileidentity.react.utils.getFloatOrDefault
|
|
10
|
+
import com.smileidentity.react.utils.getMapOrDefault
|
|
11
|
+
import com.smileidentity.react.utils.getStringOrDefault
|
|
12
|
+
import com.smileidentity.react.utils.toMap
|
|
13
|
+
import com.smileidentity.react.views.SmileIDDocumentVerificationView
|
|
10
14
|
|
|
11
15
|
|
|
12
16
|
@ReactModule(name = SmileIDDocumentVerificationViewManager.NAME)
|
|
13
17
|
class SmileIDDocumentVerificationViewManager(private val reactApplicationContext: ReactApplicationContext) :
|
|
14
|
-
SimpleViewManager<
|
|
18
|
+
SimpleViewManager<SmileIDDocumentVerificationView>() {
|
|
15
19
|
override fun getName(): String {
|
|
16
20
|
return NAME
|
|
17
21
|
}
|
|
@@ -26,17 +30,47 @@ class SmileIDDocumentVerificationViewManager(private val reactApplicationContext
|
|
|
26
30
|
)
|
|
27
31
|
}
|
|
28
32
|
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
view.product = product
|
|
33
|
+
override fun getCommandsMap(): Map<String, Int> {
|
|
34
|
+
return mapOf("setParams" to COMMAND_SET_PARAMS)
|
|
32
35
|
}
|
|
33
36
|
|
|
34
|
-
override fun
|
|
35
|
-
|
|
37
|
+
override fun receiveCommand(
|
|
38
|
+
view: SmileIDDocumentVerificationView,
|
|
39
|
+
commandId: String?,
|
|
40
|
+
args: ReadableArray?
|
|
41
|
+
) {
|
|
42
|
+
super.receiveCommand(view, commandId, args)
|
|
43
|
+
when (commandId?.toInt()) {
|
|
44
|
+
COMMAND_SET_PARAMS -> {
|
|
45
|
+
// Extract params from args and apply to view
|
|
46
|
+
val params = args?.getMap(0)
|
|
47
|
+
params?.let {
|
|
48
|
+
val countryCode = params.getString("countryCode") ?: return view.emitFailure(IllegalArgumentException("countryCode is required to run Document Verification"))
|
|
49
|
+
view.extraPartnerParams = params.getMapOrDefault("extraPartnerParams", null)?.toMap()
|
|
50
|
+
view.userId = params.getStringOrDefault("userId",null)
|
|
51
|
+
view.jobId = params.getStringOrDefault("jobId",null)
|
|
52
|
+
view.countryCode = countryCode
|
|
53
|
+
view.allowAgentMode = params.getBoolOrDefault("allowAgentMode",false)
|
|
54
|
+
view.showAttribution = params.getBoolOrDefault("showAttribution",true)
|
|
55
|
+
view.captureBothSides = params.getBoolOrDefault("captureBothSides",false)
|
|
56
|
+
view.showInstructions = params.getBoolOrDefault("showInstructions",true)
|
|
57
|
+
view.allowGalleryUpload = params.getBoolOrDefault("allowGalleryUpload",false)
|
|
58
|
+
view.bypassSelfieCaptureWithFilePath = params.getStringOrDefault("bypassSelfieCaptureWithFilePath",null)
|
|
59
|
+
view.documentType = params.getStringOrDefault("documentType",null)
|
|
60
|
+
view.idAspectRatio = params.getFloatOrDefault("idAspectRatio",-1f)
|
|
61
|
+
view.renderContent()
|
|
62
|
+
}
|
|
63
|
+
}
|
|
64
|
+
}
|
|
65
|
+
}
|
|
66
|
+
|
|
67
|
+
override fun createViewInstance(p0: ThemedReactContext): SmileIDDocumentVerificationView {
|
|
68
|
+
return SmileIDDocumentVerificationView(reactApplicationContext)
|
|
36
69
|
}
|
|
37
70
|
|
|
38
71
|
companion object {
|
|
39
72
|
const val NAME = "SmileIDDocumentVerificationView"
|
|
73
|
+
const val COMMAND_SET_PARAMS = 4
|
|
40
74
|
}
|
|
41
75
|
|
|
42
76
|
}
|
|
@@ -0,0 +1,75 @@
|
|
|
1
|
+
package com.smileidentity.react.viewmanagers
|
|
2
|
+
|
|
3
|
+
import com.facebook.react.bridge.ReactApplicationContext
|
|
4
|
+
import com.facebook.react.bridge.ReadableArray
|
|
5
|
+
import com.facebook.react.module.annotations.ReactModule
|
|
6
|
+
import com.facebook.react.uimanager.SimpleViewManager
|
|
7
|
+
import com.facebook.react.uimanager.ThemedReactContext
|
|
8
|
+
import com.smileidentity.react.utils.getBoolOrDefault
|
|
9
|
+
import com.smileidentity.react.utils.getFloatOrDefault
|
|
10
|
+
import com.smileidentity.react.utils.getMapOrDefault
|
|
11
|
+
import com.smileidentity.react.utils.getStringOrDefault
|
|
12
|
+
import com.smileidentity.react.utils.toMap
|
|
13
|
+
import com.smileidentity.react.views.SmileIDEnhancedDocumentVerificationView
|
|
14
|
+
|
|
15
|
+
|
|
16
|
+
@ReactModule(name = SmileIDEnhancedDocumentVerificationViewManager.NAME)
|
|
17
|
+
class SmileIDEnhancedDocumentVerificationViewManager(private val reactApplicationContext: ReactApplicationContext) :
|
|
18
|
+
SimpleViewManager<SmileIDEnhancedDocumentVerificationView>() {
|
|
19
|
+
override fun getName(): String {
|
|
20
|
+
return NAME
|
|
21
|
+
}
|
|
22
|
+
|
|
23
|
+
override fun getExportedCustomBubblingEventTypeConstants(): Map<String, Any> {
|
|
24
|
+
return mapOf(
|
|
25
|
+
"onSmileResult" to mapOf(
|
|
26
|
+
"phasedRegistrationNames" to mapOf(
|
|
27
|
+
"bubbled" to "onResult"
|
|
28
|
+
)
|
|
29
|
+
)
|
|
30
|
+
)
|
|
31
|
+
}
|
|
32
|
+
|
|
33
|
+
override fun getCommandsMap(): Map<String, Int> {
|
|
34
|
+
return mapOf("setParams" to COMMAND_SET_PARAMS)
|
|
35
|
+
}
|
|
36
|
+
|
|
37
|
+
override fun receiveCommand(
|
|
38
|
+
view: SmileIDEnhancedDocumentVerificationView,
|
|
39
|
+
commandId: String?,
|
|
40
|
+
args: ReadableArray?
|
|
41
|
+
) {
|
|
42
|
+
super.receiveCommand(view, commandId, args)
|
|
43
|
+
when (commandId?.toInt()) {
|
|
44
|
+
COMMAND_SET_PARAMS -> {
|
|
45
|
+
// Extract params from args and apply to view
|
|
46
|
+
val params = args?.getMap(0)
|
|
47
|
+
params?.let {
|
|
48
|
+
val countryCode = params.getString("countryCode") ?: return view.emitFailure(IllegalArgumentException("countryCode is required to run Enhanced Document Verification"))
|
|
49
|
+
view.extraPartnerParams = params.getMapOrDefault("extraPartnerParams", null)?.toMap()
|
|
50
|
+
view.userId = params.getStringOrDefault("userId",null)
|
|
51
|
+
view.jobId = params.getStringOrDefault("jobId",null)
|
|
52
|
+
view.countryCode = countryCode
|
|
53
|
+
view.allowAgentMode = params.getBoolOrDefault("allowAgentMode",false)
|
|
54
|
+
view.showAttribution = params.getBoolOrDefault("showAttribution",true)
|
|
55
|
+
view.captureBothSides = params.getBoolOrDefault("captureBothSides",false)
|
|
56
|
+
view.showInstructions = params.getBoolOrDefault("showInstructions",true)
|
|
57
|
+
view.allowGalleryUpload = params.getBoolOrDefault("allowGalleryUpload",false)
|
|
58
|
+
view.documentType = params.getStringOrDefault("documentType",null)
|
|
59
|
+
view.idAspectRatio = params.getFloatOrDefault("idAspectRatio",-1f)
|
|
60
|
+
view.renderContent()
|
|
61
|
+
}
|
|
62
|
+
}
|
|
63
|
+
}
|
|
64
|
+
}
|
|
65
|
+
|
|
66
|
+
override fun createViewInstance(p0: ThemedReactContext): SmileIDEnhancedDocumentVerificationView {
|
|
67
|
+
return SmileIDEnhancedDocumentVerificationView(reactApplicationContext)
|
|
68
|
+
}
|
|
69
|
+
|
|
70
|
+
companion object {
|
|
71
|
+
const val NAME = "SmileIDEnhancedDocumentVerificationView"
|
|
72
|
+
const val COMMAND_SET_PARAMS = 3
|
|
73
|
+
}
|
|
74
|
+
|
|
75
|
+
}
|
|
@@ -1,17 +1,20 @@
|
|
|
1
1
|
package com.smileidentity.react.viewmanagers
|
|
2
2
|
|
|
3
3
|
import com.facebook.react.bridge.ReactApplicationContext
|
|
4
|
-
import com.facebook.react.bridge.
|
|
4
|
+
import com.facebook.react.bridge.ReadableArray
|
|
5
5
|
import com.facebook.react.module.annotations.ReactModule
|
|
6
6
|
import com.facebook.react.uimanager.SimpleViewManager
|
|
7
7
|
import com.facebook.react.uimanager.ThemedReactContext
|
|
8
|
-
import com.
|
|
9
|
-
import com.smileidentity.react.
|
|
8
|
+
import com.smileidentity.react.utils.getBoolOrDefault
|
|
9
|
+
import com.smileidentity.react.utils.getMapOrDefault
|
|
10
|
+
import com.smileidentity.react.utils.getStringOrDefault
|
|
11
|
+
import com.smileidentity.react.utils.toMap
|
|
12
|
+
import com.smileidentity.react.views.SmileIDSmartSelfieAuthenticationView
|
|
10
13
|
|
|
11
14
|
|
|
12
15
|
@ReactModule(name = SmileIDSmartSelfieAuthenticationViewManager.NAME)
|
|
13
16
|
class SmileIDSmartSelfieAuthenticationViewManager(private val reactApplicationContext: ReactApplicationContext) :
|
|
14
|
-
SimpleViewManager<
|
|
17
|
+
SimpleViewManager<SmileIDSmartSelfieAuthenticationView>() {
|
|
15
18
|
override fun getName(): String {
|
|
16
19
|
return NAME
|
|
17
20
|
}
|
|
@@ -26,17 +29,40 @@ class SmileIDSmartSelfieAuthenticationViewManager(private val reactApplicationCo
|
|
|
26
29
|
)
|
|
27
30
|
}
|
|
28
31
|
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
view.product = product
|
|
32
|
+
override fun getCommandsMap(): Map<String, Int> {
|
|
33
|
+
return mapOf("setParams" to COMMAND_SET_PARAMS)
|
|
32
34
|
}
|
|
33
35
|
|
|
34
|
-
override fun
|
|
35
|
-
|
|
36
|
+
override fun receiveCommand(
|
|
37
|
+
view: SmileIDSmartSelfieAuthenticationView,
|
|
38
|
+
commandId: String?,
|
|
39
|
+
args: ReadableArray?
|
|
40
|
+
) {
|
|
41
|
+
super.receiveCommand(view, commandId, args)
|
|
42
|
+
when (commandId?.toInt()) {
|
|
43
|
+
COMMAND_SET_PARAMS -> {
|
|
44
|
+
// Extract params from args and apply to view
|
|
45
|
+
val params = args?.getMap(0)
|
|
46
|
+
params?.let {
|
|
47
|
+
view.extraPartnerParams = params.getMapOrDefault("extraPartnerParams", null)?.toMap()
|
|
48
|
+
view.userId = params.getStringOrDefault("userId",null)
|
|
49
|
+
view.jobId = params.getStringOrDefault("jobId",null)
|
|
50
|
+
view.allowAgentMode = params.getBoolOrDefault("allowAgentMode",false)
|
|
51
|
+
view.showAttribution = params.getBoolOrDefault("showAttribution",true)
|
|
52
|
+
view.showInstructions = params.getBoolOrDefault("showInstructions",true)
|
|
53
|
+
view.renderContent()
|
|
54
|
+
}
|
|
55
|
+
}
|
|
56
|
+
}
|
|
57
|
+
}
|
|
58
|
+
|
|
59
|
+
override fun createViewInstance(p0: ThemedReactContext): SmileIDSmartSelfieAuthenticationView {
|
|
60
|
+
return SmileIDSmartSelfieAuthenticationView(reactApplicationContext)
|
|
36
61
|
}
|
|
37
62
|
|
|
38
63
|
companion object {
|
|
39
64
|
const val NAME = "SmileIDSmartSelfieAuthenticationView"
|
|
65
|
+
const val COMMAND_SET_PARAMS = 2
|
|
40
66
|
}
|
|
41
67
|
|
|
42
68
|
}
|
|
@@ -1,17 +1,20 @@
|
|
|
1
1
|
package com.smileidentity.react.viewmanagers
|
|
2
2
|
|
|
3
3
|
import com.facebook.react.bridge.ReactApplicationContext
|
|
4
|
-
import com.facebook.react.bridge.
|
|
4
|
+
import com.facebook.react.bridge.ReadableArray
|
|
5
5
|
import com.facebook.react.module.annotations.ReactModule
|
|
6
6
|
import com.facebook.react.uimanager.SimpleViewManager
|
|
7
7
|
import com.facebook.react.uimanager.ThemedReactContext
|
|
8
|
-
import com.
|
|
9
|
-
import com.smileidentity.react.
|
|
8
|
+
import com.smileidentity.react.utils.getBoolOrDefault
|
|
9
|
+
import com.smileidentity.react.utils.getMapOrDefault
|
|
10
|
+
import com.smileidentity.react.utils.getStringOrDefault
|
|
11
|
+
import com.smileidentity.react.utils.toMap
|
|
12
|
+
import com.smileidentity.react.views.SmileIDSmartSelfieEnrollmentView
|
|
10
13
|
|
|
11
14
|
|
|
12
15
|
@ReactModule(name = SmileIDSmartSelfieEnrollmentViewManager.NAME)
|
|
13
16
|
class SmileIDSmartSelfieEnrollmentViewManager(private val reactApplicationContext: ReactApplicationContext) :
|
|
14
|
-
SimpleViewManager<
|
|
17
|
+
SimpleViewManager<SmileIDSmartSelfieEnrollmentView>() {
|
|
15
18
|
override fun getName(): String {
|
|
16
19
|
return NAME
|
|
17
20
|
}
|
|
@@ -26,17 +29,40 @@ class SmileIDSmartSelfieEnrollmentViewManager(private val reactApplicationContex
|
|
|
26
29
|
)
|
|
27
30
|
}
|
|
28
31
|
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
view.product = product
|
|
32
|
+
override fun getCommandsMap(): Map<String, Int> {
|
|
33
|
+
return mapOf("setParams" to COMMAND_SET_PARAMS)
|
|
32
34
|
}
|
|
33
35
|
|
|
34
|
-
override fun
|
|
35
|
-
|
|
36
|
+
override fun receiveCommand(
|
|
37
|
+
view: SmileIDSmartSelfieEnrollmentView,
|
|
38
|
+
commandId: String?,
|
|
39
|
+
args: ReadableArray?
|
|
40
|
+
) {
|
|
41
|
+
super.receiveCommand(view, commandId, args)
|
|
42
|
+
when (commandId?.toInt()) {
|
|
43
|
+
COMMAND_SET_PARAMS -> {
|
|
44
|
+
// Extract params from args and apply to view
|
|
45
|
+
val params = args?.getMap(0)
|
|
46
|
+
params?.let {
|
|
47
|
+
view.extraPartnerParams = params.getMapOrDefault("extraPartnerParams", null)?.toMap()
|
|
48
|
+
view.userId = params.getStringOrDefault("userId",null)
|
|
49
|
+
view.jobId = params.getStringOrDefault("jobId",null)
|
|
50
|
+
view.allowAgentMode = params.getBoolOrDefault("allowAgentMode",false)
|
|
51
|
+
view.showAttribution = params.getBoolOrDefault("showAttribution",true)
|
|
52
|
+
view.showInstructions = params.getBoolOrDefault("showInstructions",true)
|
|
53
|
+
view.renderContent()
|
|
54
|
+
}
|
|
55
|
+
}
|
|
56
|
+
}
|
|
57
|
+
}
|
|
58
|
+
|
|
59
|
+
override fun createViewInstance(p0: ThemedReactContext): SmileIDSmartSelfieEnrollmentView {
|
|
60
|
+
return SmileIDSmartSelfieEnrollmentView(reactApplicationContext)
|
|
36
61
|
}
|
|
37
62
|
|
|
38
63
|
companion object {
|
|
39
64
|
const val NAME = "SmileIDSmartSelfieEnrollmentView"
|
|
65
|
+
const val COMMAND_SET_PARAMS = 1
|
|
40
66
|
}
|
|
41
67
|
|
|
42
68
|
}
|