@smile_identity/react-native 11.1.3 → 11.1.8

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 (60) hide show
  1. package/android/gradle.properties +1 -1
  2. package/android/src/main/java/com/smileidentity/react/SmileIdModule.kt +10 -0
  3. package/android/src/main/java/com/smileidentity/react/viewmanagers/SmileIDBiometricKYCViewManager.kt +2 -0
  4. package/android/src/main/java/com/smileidentity/react/viewmanagers/SmileIDConsentViewManager.kt +0 -1
  5. package/android/src/main/java/com/smileidentity/react/viewmanagers/SmileIDDocumentCaptureViewManager.kt +0 -1
  6. package/android/src/main/java/com/smileidentity/react/viewmanagers/SmileIDDocumentVerificationViewManager.kt +2 -0
  7. package/android/src/main/java/com/smileidentity/react/viewmanagers/SmileIDEnhancedDocumentVerificationViewManager.kt +2 -0
  8. package/android/src/main/java/com/smileidentity/react/viewmanagers/SmileIDSmartSelfieAuthenticationViewManager.kt +1 -0
  9. package/android/src/main/java/com/smileidentity/react/viewmanagers/SmileIDSmartSelfieCaptureViewManager.kt +1 -0
  10. package/android/src/main/java/com/smileidentity/react/viewmanagers/SmileIDSmartSelfieEnrollmentViewManager.kt +1 -0
  11. package/android/src/main/java/com/smileidentity/react/views/SmileIDBiometricKYCView.kt +2 -0
  12. package/android/src/main/java/com/smileidentity/react/views/SmileIDConsentView.kt +1 -0
  13. package/android/src/main/java/com/smileidentity/react/views/SmileIDDocumentCaptureView.kt +0 -10
  14. package/android/src/main/java/com/smileidentity/react/views/SmileIDDocumentVerificationView.kt +2 -0
  15. package/android/src/main/java/com/smileidentity/react/views/SmileIDEnhancedDocumentVerificationView.kt +2 -0
  16. package/android/src/main/java/com/smileidentity/react/views/SmileIDSmartSelfieAuthenticationView.kt +1 -0
  17. package/android/src/main/java/com/smileidentity/react/views/SmileIDSmartSelfieCaptureView.kt +17 -3
  18. package/android/src/main/java/com/smileidentity/react/views/SmileIDSmartSelfieEnrollmentView.kt +1 -0
  19. package/android/src/main/java/com/smileidentity/react/views/SmileIDView.kt +5 -6
  20. package/android/src/oldarch/SmileIdSpec.kt +2 -0
  21. package/ios/RNSmileID.mm +1 -0
  22. package/ios/RNSmileID.swift +511 -497
  23. package/ios/View/SmileIDBiometricKYCView.swift +2 -0
  24. package/ios/View/SmileIDDocumentVerificationView.swift +1 -0
  25. package/ios/View/SmileIDEnhancedDocumentVerificationView.swift +1 -0
  26. package/ios/View/SmileIDSmartSelfieAuthView.swift +1 -0
  27. package/ios/View/SmileIDSmartSelfieCaptureView.swift +58 -38
  28. package/ios/View/SmileIDSmartSelfieEnrollmentView.swift +1 -0
  29. package/ios/ViewManagers/SmileIDBiometricKYCViewManager.swift +2 -0
  30. package/ios/ViewManagers/SmileIDDocumentCaptureViewManager.swift +0 -1
  31. package/ios/ViewManagers/SmileIDDocumentVerificationViewManager.swift +1 -0
  32. package/ios/ViewManagers/SmileIDEnhancedDocumentVerificationViewManager.swift +1 -0
  33. package/ios/ViewManagers/SmileIDSmartSelfieAuthenticationViewManager.swift +1 -0
  34. package/ios/ViewManagers/SmileIDSmartSelfieCaptureViewManager.swift +5 -7
  35. package/ios/ViewManagers/SmileIDSmartSelfieEnrollmentViewManager.swift +1 -0
  36. package/ios/ViewModels/SmileIDProductModel.swift +2 -0
  37. package/lib/commonjs/NativeSmileId.js.map +1 -1
  38. package/lib/commonjs/index.js +8 -0
  39. package/lib/commonjs/index.js.map +1 -1
  40. package/lib/commonjs/types.js.map +1 -1
  41. package/lib/commonjs/useSmileIDView.js +1 -1
  42. package/lib/commonjs/useSmileIDView.js.map +1 -1
  43. package/lib/module/NativeSmileId.js.map +1 -1
  44. package/lib/module/index.js +9 -1
  45. package/lib/module/index.js.map +1 -1
  46. package/lib/module/types.js.map +1 -1
  47. package/lib/module/useSmileIDView.js +1 -1
  48. package/lib/module/useSmileIDView.js.map +1 -1
  49. package/lib/typescript/NativeSmileId.d.ts +8 -1
  50. package/lib/typescript/NativeSmileId.d.ts.map +1 -1
  51. package/lib/typescript/index.d.ts +10 -2
  52. package/lib/typescript/index.d.ts.map +1 -1
  53. package/lib/typescript/types.d.ts +6 -1
  54. package/lib/typescript/types.d.ts.map +1 -1
  55. package/package.json +3 -2
  56. package/react-native-smile-id.podspec +1 -1
  57. package/src/NativeSmileId.ts +9 -1
  58. package/src/index.tsx +24 -15
  59. package/src/types.ts +11 -1
  60. package/src/useSmileIDView.tsx +1 -1
@@ -3,5 +3,5 @@ SmileId_minSdkVersion=21
3
3
  SmileId_targetSdkVersion=36
4
4
  SmileId_compileSdkVersion=36
5
5
  SmileId_ndkversion=21.4.7075529
6
- SmileId_androidVersion=11.1.6
6
+ SmileId_androidVersion=11.1.9
7
7
  SmileId_kotlinCompilerExtensionVersion=1.5.11
@@ -118,6 +118,16 @@ class SmileIdModule internal constructor(
118
118
  promise.resolve(null)
119
119
  }
120
120
 
121
+ @ReactMethod
122
+ override fun applyLocalization(
123
+ promise: Promise,
124
+ ) {
125
+ // On Android, localization is handled automatically via string resources.
126
+ // Users provide translations in values-<lang>/strings.xml and Android
127
+ // resolves them based on the device locale. No additional setup needed.
128
+ promise.resolve(null)
129
+ }
130
+
121
131
  @ReactMethod
122
132
  override fun submitJob(
123
133
  jobId: String,
@@ -37,10 +37,12 @@ class SmileIDBiometricKYCViewManager(
37
37
  view.jobId = it.getStringOrDefault("jobId")
38
38
  view.idInfo = idInfo
39
39
  view.allowAgentMode = it.getBoolOrDefault("allowAgentMode", false)
40
+ view.forceAgentMode = it.getBoolOrDefault("forceAgentMode", false)
40
41
  view.showAttribution = it.getBoolOrDefault("showAttribution", true)
41
42
  view.showInstructions = it.getBoolOrDefault("showInstructions", true)
42
43
  view.allowNewEnroll = it.getBoolOrDefault("allowNewEnroll", false)
43
44
  view.useStrictMode = it.getBoolOrDefault("useStrictMode", false)
45
+ view.skipApiSubmission = it.getBoolOrDefault("skipApiSubmission", false)
44
46
  view.smileSensitivity =
45
47
  it.getStringOrDefault("smileSensitivity", null)?.toSmileSensitivity()
46
48
  }
@@ -43,7 +43,6 @@ class SmileIDConsentViewManager(
43
43
  view.partnerPrivacyPolicy = partnerPrivacyPolicy
44
44
  view.logoResName = logoResName
45
45
  view.productName = productName
46
- view.allowAgentMode = it.getBoolOrDefault("allowAgentMode", false)
47
46
  view.showAttribution = it.getBoolOrDefault("showAttribution", true)
48
47
  view.showInstructions = it.getBoolOrDefault("showInstructions", true)
49
48
  }
@@ -27,7 +27,6 @@ class SmileIDDocumentCaptureViewManager(
27
27
  args?.let {
28
28
  view.userId = it.getStringOrDefault("userId")
29
29
  view.jobId = it.getStringOrDefault("jobId")
30
- view.allowAgentMode = it.getBoolOrDefault("allowAgentMode", true)
31
30
  view.showAttribution = it.getBoolOrDefault("showAttribution", true)
32
31
  view.showInstructions = it.getBoolOrDefault("showInstructions", true)
33
32
  view.showConfirmation = it.getBoolOrDefault("showConfirmation", true)
@@ -37,6 +37,7 @@ class SmileIDDocumentVerificationViewManager(
37
37
  view.autoCaptureTimeout = it.getIntOrDefault("autoCaptureTimeout", null)
38
38
  view.autoCapture = it.getStringOrDefault("autoCapture", null)?.toAutoCapture()
39
39
  view.allowAgentMode = it.getBoolOrDefault("allowAgentMode", false)
40
+ view.forceAgentMode = it.getBoolOrDefault("forceAgentMode", false)
40
41
  view.showAttribution = it.getBoolOrDefault("showAttribution", true)
41
42
  view.captureBothSides = it.getBoolOrDefault("captureBothSides", false)
42
43
  view.showInstructions = it.getBoolOrDefault("showInstructions", true)
@@ -46,6 +47,7 @@ class SmileIDDocumentVerificationViewManager(
46
47
  view.idAspectRatio = it.getFloatOrDefault("idAspectRatio")
47
48
  view.allowNewEnroll = it.getBoolOrDefault("allowNewEnroll", false)
48
49
  view.useStrictMode = it.getBoolOrDefault("useStrictMode", false)
50
+ view.skipApiSubmission = it.getBoolOrDefault("skipApiSubmission", false)
49
51
  view.smileSensitivity =
50
52
  it.getStringOrDefault("smileSensitivity", null)?.toSmileSensitivity()
51
53
  }
@@ -46,6 +46,7 @@ class SmileIDEnhancedDocumentVerificationViewManager(
46
46
  view.autoCaptureTimeout = it.getIntOrDefault("autoCaptureTimeout", null)
47
47
  view.autoCapture = it.getStringOrDefault("autoCapture", null)?.toAutoCapture()
48
48
  view.allowAgentMode = it.getBoolOrDefault("allowAgentMode", false)
49
+ view.forceAgentMode = it.getBoolOrDefault("forceAgentMode", false)
49
50
  view.showAttribution = it.getBoolOrDefault("showAttribution", true)
50
51
  view.captureBothSides = it.getBoolOrDefault("captureBothSides", false)
51
52
  view.showInstructions = it.getBoolOrDefault("showInstructions", true)
@@ -54,6 +55,7 @@ class SmileIDEnhancedDocumentVerificationViewManager(
54
55
  view.idAspectRatio = it.getFloatOrDefault("idAspectRatio")
55
56
  view.allowNewEnroll = it.getBoolOrDefault("allowNewEnroll", false)
56
57
  view.useStrictMode = it.getBoolOrDefault("useStrictMode", false)
58
+ view.skipApiSubmission = it.getBoolOrDefault("skipApiSubmission", false)
57
59
  }
58
60
  }
59
61
 
@@ -31,6 +31,7 @@ class SmileIDSmartSelfieAuthenticationViewManager(
31
31
  view.userId = it.getStringOrDefault("userId")
32
32
  view.jobId = it.getStringOrDefault("jobId")
33
33
  view.allowAgentMode = it.getBoolOrDefault("allowAgentMode", false)
34
+ view.forceAgentMode = it.getBoolOrDefault("forceAgentMode", false)
34
35
  view.showAttribution = it.getBoolOrDefault("showAttribution", true)
35
36
  view.showInstructions = it.getBoolOrDefault("showInstructions", true)
36
37
  view.allowNewEnroll = it.getBoolOrDefault("allowNewEnroll", false)
@@ -28,6 +28,7 @@ class SmileIDSmartSelfieCaptureViewManager(
28
28
  view.userId = it.getStringOrDefault("userId")
29
29
  view.jobId = it.getStringOrDefault("jobId")
30
30
  view.allowAgentMode = it.getBoolOrDefault("allowAgentMode", false)
31
+ view.forceAgentMode = it.getBoolOrDefault("forceAgentMode", false)
31
32
  view.showAttribution = it.getBoolOrDefault("showAttribution", true)
32
33
  view.showInstructions = it.getBoolOrDefault("showInstructions", true)
33
34
  view.useStrictMode = it.getBoolOrDefault("useStrictMode", false)
@@ -26,6 +26,7 @@ class SmileIDSmartSelfieEnrollmentViewManager(
26
26
  view.userId = it.getStringOrDefault("userId")
27
27
  view.jobId = it.getStringOrDefault("jobId")
28
28
  view.allowAgentMode = it.getBoolOrDefault("allowAgentMode", false)
29
+ view.forceAgentMode = it.getBoolOrDefault("forceAgentMode", false)
29
30
  view.showAttribution = it.getBoolOrDefault("showAttribution", true)
30
31
  view.showInstructions = it.getBoolOrDefault("showInstructions", true)
31
32
  view.allowNewEnroll = it.getBoolOrDefault("allowNewEnroll", false)
@@ -36,6 +36,7 @@ class SmileIDBiometricKYCView(context: ReactApplicationContext) : SmileIDView(co
36
36
  userId = userId ?: rememberSaveable { randomUserId() },
37
37
  jobId = jobId ?: rememberSaveable { randomJobId() },
38
38
  allowAgentMode = allowAgentMode ?: false,
39
+ forceAgentMode = forceAgentMode ?: false,
39
40
  allowNewEnroll = allowNewEnroll ?: false,
40
41
  showAttribution = showAttribution,
41
42
  showInstructions = showInstructions,
@@ -43,6 +44,7 @@ class SmileIDBiometricKYCView(context: ReactApplicationContext) : SmileIDView(co
43
44
  extraPartnerParams = extraPartnerParams,
44
45
  consentInformation = consentInformation,
45
46
  useStrictMode = useStrictMode ?: false,
47
+ skipApiSubmission = skipApiSubmission
46
48
  ) { res ->
47
49
  when (res) {
48
50
  is SmileIDResult.Success -> {
@@ -58,6 +58,7 @@ class SmileIDConsentView(context: ReactApplicationContext) : SmileIDView(context
58
58
  onConsentGranted = {
59
59
  emitSuccess("accepted")
60
60
  },
61
+ showAttribution = showAttribution
61
62
  )
62
63
  }
63
64
  }
@@ -1,25 +1,15 @@
1
1
  package com.smileidentity.react.views
2
2
 
3
- import androidx.compose.foundation.background
4
- import androidx.compose.foundation.layout.Box
5
- import androidx.compose.foundation.layout.WindowInsets
6
- import androidx.compose.foundation.layout.consumeWindowInsets
7
- import androidx.compose.foundation.layout.fillMaxSize
8
- import androidx.compose.foundation.layout.statusBars
9
- import androidx.compose.foundation.layout.windowInsetsPadding
10
3
  import androidx.compose.material3.MaterialTheme
11
4
  import androidx.compose.material3.Surface
12
5
  import androidx.compose.runtime.Composable
13
6
  import androidx.compose.runtime.CompositionLocalProvider
14
7
  import androidx.compose.runtime.saveable.rememberSaveable
15
- import androidx.compose.ui.Modifier
16
- import androidx.compose.ui.graphics.Color
17
8
  import androidx.compose.ui.res.stringResource
18
9
  import androidx.lifecycle.viewmodel.compose.LocalViewModelStoreOwner
19
10
  import com.facebook.react.bridge.ReactApplicationContext
20
11
  import com.smileidentity.R
21
12
  import com.smileidentity.SmileID
22
- import com.smileidentity.compose.SmartSelfieEnrollmentEnhanced
23
13
  import com.smileidentity.compose.document.DocumentCaptureScreen
24
14
  import com.smileidentity.compose.document.DocumentCaptureSide
25
15
  import com.smileidentity.compose.theme.colorScheme
@@ -53,6 +53,7 @@ class SmileIDDocumentVerificationView(context: ReactApplicationContext) : SmileI
53
53
  idAspectRatio = idAspectRatio,
54
54
  showAttribution = showAttribution,
55
55
  allowAgentMode = allowAgentMode ?: false,
56
+ forceAgentMode = forceAgentMode ?: false,
56
57
  showInstructions = showInstructions,
57
58
  allowGalleryUpload = allowGalleryUpload,
58
59
  captureBothSides = captureBothSides,
@@ -61,6 +62,7 @@ class SmileIDDocumentVerificationView(context: ReactApplicationContext) : SmileI
61
62
  smileSensitivity = smileSensitivity ?: SmileSensitivity.NORMAL,
62
63
  extraPartnerParams = extraPartnerParams,
63
64
  useStrictMode = useStrictMode ?: false,
65
+ skipApiSubmission = skipApiSubmission
64
66
  ) { res ->
65
67
  when (res) {
66
68
  is SmileIDResult.Success -> {
@@ -48,6 +48,7 @@ class SmileIDEnhancedDocumentVerificationView(context: ReactApplicationContext)
48
48
  idAspectRatio = idAspectRatio,
49
49
  showAttribution = showAttribution,
50
50
  allowAgentMode = allowAgentMode ?: false,
51
+ forceAgentMode = forceAgentMode ?: false,
51
52
  showInstructions = showInstructions,
52
53
  allowNewEnroll = allowNewEnroll ?: false,
53
54
  allowGalleryUpload = allowGalleryUpload,
@@ -55,6 +56,7 @@ class SmileIDEnhancedDocumentVerificationView(context: ReactApplicationContext)
55
56
  extraPartnerParams = extraPartnerParams,
56
57
  consentInformation = consentInformation,
57
58
  useStrictMode = useStrictMode ?: false,
59
+ skipApiSubmission = skipApiSubmission
58
60
  ) { res ->
59
61
  when (res) {
60
62
  is SmileIDResult.Success -> {
@@ -27,6 +27,7 @@ class SmileIDSmartSelfieAuthenticationView(context: ReactApplicationContext) :
27
27
  userId = userId ?: rememberSaveable { randomUserId() },
28
28
  jobId = jobId ?: rememberSaveable { randomJobId() },
29
29
  allowAgentMode = allowAgentMode ?: false,
30
+ forceAgentMode = forceAgentMode ?: false,
30
31
  allowNewEnroll = allowNewEnroll ?: false,
31
32
  showAttribution = showAttribution,
32
33
  showInstructions = showInstructions,
@@ -70,7 +70,9 @@ class SmileIDSmartSelfieCaptureView(context: ReactApplicationContext) : SmileIDS
70
70
  )
71
71
  } else {
72
72
  RenderSmartSelfieCaptureContent(
73
- smileSensitivity = smileSensitivity ?: SmileSensitivity.NORMAL
73
+ smileSensitivity = smileSensitivity ?: SmileSensitivity.NORMAL,
74
+ allowAgentMode = allowAgentMode ?: false,
75
+ forceAgentMode = forceAgentMode ?: false,
74
76
  )
75
77
  }
76
78
  })
@@ -84,7 +86,9 @@ class SmileIDSmartSelfieCaptureView(context: ReactApplicationContext) : SmileIDS
84
86
 
85
87
  @Composable
86
88
  private fun RenderSmartSelfieCaptureContent(
87
- smileSensitivity: SmileSensitivity
89
+ smileSensitivity: SmileSensitivity,
90
+ allowAgentMode: Boolean,
91
+ forceAgentMode: Boolean,
88
92
  ) {
89
93
  val userId = randomUserId()
90
94
  val jobId = randomJobId()
@@ -96,6 +100,8 @@ class SmileIDSmartSelfieCaptureView(context: ReactApplicationContext) : SmileIDS
96
100
  jobId = jobId,
97
101
  allowNewEnroll = false,
98
102
  skipApiSubmission = true,
103
+ allowAgentMode = allowAgentMode,
104
+ forceAgentMode = forceAgentMode,
99
105
  metadata = mutableListOf(),
100
106
  smileSensitivity = smileSensitivity
101
107
  )
@@ -119,7 +125,13 @@ class SmileIDSmartSelfieCaptureView(context: ReactApplicationContext) : SmileIDS
119
125
  viewModel,
120
126
  )
121
127
 
122
- else -> RenderSelfieCaptureScreen(userId, jobId, allowAgentMode ?: true, viewModel)
128
+ else -> RenderSelfieCaptureScreen(
129
+ userId = userId,
130
+ jobId = jobId,
131
+ allowAgentMode = allowAgentMode,
132
+ forceAgentMode = forceAgentMode,
133
+ viewModel = viewModel,
134
+ )
123
135
  }
124
136
  }
125
137
 
@@ -128,6 +140,7 @@ class SmileIDSmartSelfieCaptureView(context: ReactApplicationContext) : SmileIDS
128
140
  userId: String,
129
141
  jobId: String,
130
142
  allowAgentMode: Boolean,
143
+ forceAgentMode: Boolean,
131
144
  viewModel: SelfieViewModel,
132
145
  ) {
133
146
  Box(
@@ -141,6 +154,7 @@ class SmileIDSmartSelfieCaptureView(context: ReactApplicationContext) : SmileIDS
141
154
  userId = userId,
142
155
  jobId = jobId,
143
156
  allowAgentMode = allowAgentMode,
157
+ forceAgentMode = forceAgentMode,
144
158
  allowNewEnroll = false,
145
159
  skipApiSubmission = true,
146
160
  viewModel = viewModel,
@@ -26,6 +26,7 @@ class SmileIDSmartSelfieEnrollmentView(context: Context) : SmileIDSelfieView(con
26
26
  userId = userId ?: rememberSaveable { randomUserId() },
27
27
  jobId = jobId ?: rememberSaveable { randomJobId() },
28
28
  allowAgentMode = allowAgentMode ?: false,
29
+ forceAgentMode = forceAgentMode ?: false,
29
30
  allowNewEnroll = allowNewEnroll ?: false,
30
31
  showAttribution = showAttribution,
31
32
  showInstructions = showInstructions,
@@ -29,6 +29,7 @@ abstract class SmileIDView(private val currentContext: Context) : LinearLayout(c
29
29
  var jobId: String? = null
30
30
  private var jobType: JobType? = null
31
31
  var allowAgentMode: Boolean? = false
32
+ var forceAgentMode: Boolean? = false
32
33
  var smileViewListener: SmileViewListener? = null
33
34
  var allowNewEnroll: Boolean? = false
34
35
  var showInstructions: Boolean = true
@@ -36,12 +37,10 @@ abstract class SmileIDView(private val currentContext: Context) : LinearLayout(c
36
37
  var showAttribution: Boolean = true
37
38
  var extraPartnerParams: ImmutableMap<String, String> = persistentMapOf()
38
39
 
39
- private var productThrowable: Throwable? = null
40
-
41
40
  init {
42
41
  val layoutParams = ViewGroup.LayoutParams(
43
- ViewGroup.LayoutParams.WRAP_CONTENT,
44
- ViewGroup.LayoutParams.WRAP_CONTENT
42
+ LayoutParams.WRAP_CONTENT,
43
+ LayoutParams.WRAP_CONTENT
45
44
  )
46
45
  setLayoutParams(layoutParams)
47
46
  orientation = VERTICAL
@@ -59,8 +58,8 @@ abstract class SmileIDView(private val currentContext: Context) : LinearLayout(c
59
58
  it.runOnUiThread {
60
59
  composeView = ComposeView(it)
61
60
  composeView.layoutParams = ViewGroup.LayoutParams(
62
- ViewGroup.LayoutParams.MATCH_PARENT,
63
- ViewGroup.LayoutParams.MATCH_PARENT
61
+ LayoutParams.MATCH_PARENT,
62
+ LayoutParams.MATCH_PARENT
64
63
  )
65
64
  addView(composeView)
66
65
  }
@@ -61,4 +61,6 @@ abstract class SmileIdSpec internal constructor(context: ReactApplicationContext
61
61
  abstract fun pollBiometricKycJobStatus(request: ReadableMap, promise: Promise)
62
62
 
63
63
  abstract fun pollEnhancedDocumentVerificationJobStatus(request: ReadableMap, promise: Promise)
64
+
65
+ abstract fun applyLocalization(promise: Promise)
64
66
  }
package/ios/RNSmileID.mm CHANGED
@@ -30,4 +30,5 @@ RCT_EXTERN_METHOD(pollSmartSelfieJobStatus:(NSDictionary *)request withResolver:
30
30
  RCT_EXTERN_METHOD(pollDocumentVerificationJobStatus:(NSDictionary *)request withResolver:(RCTPromiseResolveBlock)resolve withRejecter:(RCTPromiseRejectBlock)reject)
31
31
  RCT_EXTERN_METHOD(pollBiometricKycJobStatus:(NSDictionary *)request withResolver:(RCTPromiseResolveBlock)resolve withRejecter:(RCTPromiseRejectBlock)reject)
32
32
  RCT_EXTERN_METHOD(pollEnhancedDocumentVerificationJobStatus:(NSDictionary *)request withResolver:(RCTPromiseResolveBlock)resolve withRejecter:(RCTPromiseRejectBlock)reject)
33
+ RCT_EXTERN_METHOD(applyLocalization:(RCTPromiseResolveBlock)resolve withRejecter:(RCTPromiseRejectBlock)reject)
33
34
  @end