@regulaforensics/face-sdk 6.4.310-rc → 6.4.315-nightly
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/RNFaceSDK.podspec +2 -2
- package/android/build.gradle +2 -2
- package/android/cordova.gradle +2 -2
- package/android/src/main/java/com/regula/plugin/facesdk/JSONConstructor.kt +3 -3
- package/android/src/main/java/com/regula/plugin/facesdk/Main.kt +29 -27
- package/android/src/main/java/com/regula/plugin/facesdk/RNFaceApiModule.kt +2 -2
- package/examples/capacitor/android/app/src/main/AndroidManifest.xml +6 -11
- package/examples/capacitor/package.json +2 -2
- package/examples/cordova/package.json +2 -2
- package/examples/ionic/package.json +2 -2
- package/examples/react_native/app.config.ts +3 -1
- package/examples/react_native/package.json +2 -2
- package/ios/CVDFaceSDK.m +7 -0
- package/ios/RFSWMain.h +1 -0
- package/ios/RFSWMain.m +0 -8
- package/ios/RNFaceSDK.h +1 -0
- package/ios/RNFaceSDK.m +4 -0
- package/package.json +1 -1
- package/plugin.xml +2 -2
package/RNFaceSDK.podspec
CHANGED
|
@@ -5,7 +5,7 @@ source = File.join(__dir__, 'ios')
|
|
|
5
5
|
|
|
6
6
|
Pod::Spec.new do |s|
|
|
7
7
|
s.name = 'RNFaceSDK'
|
|
8
|
-
s.version = '6.4.
|
|
8
|
+
s.version = '6.4.315-nightly'
|
|
9
9
|
s.summary = package['description']
|
|
10
10
|
s.license = package['license']
|
|
11
11
|
|
|
@@ -16,6 +16,6 @@ Pod::Spec.new do |s|
|
|
|
16
16
|
s.ios.deployment_target = '13.0'
|
|
17
17
|
s.source_files = 'ios/**/*.{h,m}'
|
|
18
18
|
s.exclude_files = [ 'ios/CVDFaceSDK.h', 'ios/CVDFaceSDK.m' ]
|
|
19
|
-
s.dependency '
|
|
19
|
+
s.dependency 'FaceSDKNightly', '6.4.2729'
|
|
20
20
|
s.dependency 'React'
|
|
21
21
|
end
|
package/android/build.gradle
CHANGED
|
@@ -32,7 +32,7 @@ android {
|
|
|
32
32
|
rootProject.allprojects {
|
|
33
33
|
repositories {
|
|
34
34
|
maven {
|
|
35
|
-
url "https://maven.regulaforensics.com/RegulaDocumentReader/
|
|
35
|
+
url "https://maven.regulaforensics.com/RegulaDocumentReader/Nightly"
|
|
36
36
|
}
|
|
37
37
|
}
|
|
38
38
|
}
|
|
@@ -41,7 +41,7 @@ dependencies {
|
|
|
41
41
|
//noinspection GradleDynamicVersion
|
|
42
42
|
implementation 'com.facebook.react:react-native:+'
|
|
43
43
|
//noinspection GradleDependency
|
|
44
|
-
implementation('com.regula.face:api:6.4.
|
|
44
|
+
implementation('com.regula.face:api:6.4.3781'){
|
|
45
45
|
transitive = true
|
|
46
46
|
}
|
|
47
47
|
}
|
package/android/cordova.gradle
CHANGED
|
@@ -6,13 +6,13 @@ android {
|
|
|
6
6
|
|
|
7
7
|
repositories {
|
|
8
8
|
maven {
|
|
9
|
-
url "https://maven.regulaforensics.com/RegulaDocumentReader/
|
|
9
|
+
url "https://maven.regulaforensics.com/RegulaDocumentReader/Nightly"
|
|
10
10
|
}
|
|
11
11
|
}
|
|
12
12
|
|
|
13
13
|
dependencies {
|
|
14
14
|
//noinspection GradleDependency
|
|
15
|
-
implementation('com.regula.face:api:6.4.
|
|
15
|
+
implementation('com.regula.face:api:6.4.3781'){
|
|
16
16
|
transitive = true
|
|
17
17
|
}
|
|
18
18
|
}
|
|
@@ -314,7 +314,7 @@ fun faceCaptureImageFromJSON(input: JSONObject?) = input?.let {
|
|
|
314
314
|
Image(
|
|
315
315
|
it.getInt("imageType").toImageType(),
|
|
316
316
|
it.getStringOrNull("tag"),
|
|
317
|
-
it.getString("image").toBitmap()
|
|
317
|
+
it.getString("image").toBitmap()!!,
|
|
318
318
|
)
|
|
319
319
|
}
|
|
320
320
|
|
|
@@ -378,7 +378,7 @@ fun generateLivenessNotification(it: LivenessNotification) = mapOf(
|
|
|
378
378
|
|
|
379
379
|
fun matchFacesImageFromJSON(input: JSONObject?) = input?.let {
|
|
380
380
|
val result = MatchFacesImage(
|
|
381
|
-
it.getString("image").toBitmap()
|
|
381
|
+
it.getString("image").toBitmap()!!,
|
|
382
382
|
it.getInt("imageType").toImageType(),
|
|
383
383
|
it.optBoolean("detectAll", false)
|
|
384
384
|
)
|
|
@@ -676,7 +676,7 @@ fun detectFacesAttributeResultFromJSON(it: JSONObject) = DetectFacesAttributeRes
|
|
|
676
676
|
)
|
|
677
677
|
|
|
678
678
|
fun generateDetectFacesAttributeResult(it: DetectFacesAttributeResult) = mapOf(
|
|
679
|
-
"attribute" to it.attribute
|
|
679
|
+
"attribute" to it.attribute?.value,
|
|
680
680
|
"value" to it.value,
|
|
681
681
|
"confidence" to it.confidence,
|
|
682
682
|
"range" to generateImageQualityRange(it.range)
|
|
@@ -3,7 +3,6 @@ package com.regula.plugin.facesdk
|
|
|
3
3
|
import android.annotation.SuppressLint
|
|
4
4
|
import com.regula.plugin.facesdk.Convert.toBase64
|
|
5
5
|
import com.regula.common.LocalizationCallbacks
|
|
6
|
-
import com.regula.common.ble.BLEWrapper
|
|
7
6
|
import com.regula.facesdk.FaceSDK.Instance
|
|
8
7
|
import com.regula.facesdk.callback.DetectFacesCompletion
|
|
9
8
|
import com.regula.facesdk.callback.FaceCaptureCallback
|
|
@@ -14,6 +13,8 @@ import com.regula.facesdk.callback.LivenessNotificationCallback
|
|
|
14
13
|
import com.regula.facesdk.callback.MatchFaceCallback
|
|
15
14
|
import com.regula.facesdk.callback.PersonDBCallback
|
|
16
15
|
import com.regula.facesdk.configuration.InitializationBleDeviceConfiguration
|
|
16
|
+
import com.regula.facesdk.enums.InitErrorCode
|
|
17
|
+
import com.regula.facesdk.exception.InitException
|
|
17
18
|
import com.regula.facesdk.listener.NetworkInterceptorListener
|
|
18
19
|
import com.regula.facesdk.model.LivenessNotification
|
|
19
20
|
import com.regula.facesdk.model.results.matchfaces.MatchFacesSimilarityThresholdSplit
|
|
@@ -103,8 +104,7 @@ fun initialize(callback: Callback, config: JSONObject?) =
|
|
|
103
104
|
else
|
|
104
105
|
getBleWrapper()?.let {
|
|
105
106
|
Instance().initialize(context, InitializationBleDeviceConfiguration(it), initCompletion(callback))
|
|
106
|
-
} ?: callback(false)
|
|
107
|
-
// TODO return an exception telling that btDevice is not connected
|
|
107
|
+
} ?: callback(generateInitCompletion(false, InitException(InitErrorCode.LICENSE_IS_NULL)))
|
|
108
108
|
|
|
109
109
|
fun deinitialize() = Instance().deinitialize()
|
|
110
110
|
|
|
@@ -158,16 +158,19 @@ fun splitComparedFaces(callback: Callback, faces: JSONArray, similarity: Double)
|
|
|
158
158
|
}
|
|
159
159
|
|
|
160
160
|
fun detectFaces(callback: Callback, request: JSONObject) = Instance().detectFaces(
|
|
161
|
+
context,
|
|
161
162
|
detectFacesRequestFromJSON(request),
|
|
162
163
|
detectFacesCompletion(callback)
|
|
163
164
|
)
|
|
164
165
|
|
|
166
|
+
val db get() = Instance().personDatabase(context)!!
|
|
167
|
+
|
|
165
168
|
fun createPerson(
|
|
166
169
|
callback: Callback,
|
|
167
170
|
name: String,
|
|
168
171
|
groupIds: JSONArray?,
|
|
169
172
|
metadata: JSONObject?
|
|
170
|
-
) =
|
|
173
|
+
) = db.createPerson(
|
|
171
174
|
name,
|
|
172
175
|
metadata,
|
|
173
176
|
groupIds.toArray(),
|
|
@@ -175,8 +178,8 @@ fun createPerson(
|
|
|
175
178
|
)
|
|
176
179
|
|
|
177
180
|
fun updatePerson(callback: Callback, personJson: JSONObject) =
|
|
178
|
-
|
|
179
|
-
override fun onSuccess(person: Person?) =
|
|
181
|
+
db.getPerson(idFromJSON(personJson), object : PersonDBCallback<Person?> {
|
|
182
|
+
override fun onSuccess(person: Person?) = db.updatePerson(
|
|
180
183
|
updatePersonFromJSON(person!!, personJson),
|
|
181
184
|
databaseItemCompletion(callback, null)
|
|
182
185
|
)
|
|
@@ -184,29 +187,29 @@ fun updatePerson(callback: Callback, personJson: JSONObject) =
|
|
|
184
187
|
override fun onFailure(error: String) = callback(generatePersonDBResponse(null, error))
|
|
185
188
|
})
|
|
186
189
|
|
|
187
|
-
fun deletePerson(callback: Callback, personId: String) =
|
|
190
|
+
fun deletePerson(callback: Callback, personId: String) = db.deletePerson(
|
|
188
191
|
personId,
|
|
189
192
|
databaseItemCompletion(callback, null)
|
|
190
193
|
)
|
|
191
194
|
|
|
192
|
-
fun getPerson(callback: Callback, personId: String) =
|
|
195
|
+
fun getPerson(callback: Callback, personId: String) = db.getPerson(
|
|
193
196
|
personId,
|
|
194
197
|
databaseItemCompletion(callback, ::generatePerson)
|
|
195
198
|
)
|
|
196
199
|
|
|
197
|
-
fun addPersonImage(callback: Callback, personId: String, image: JSONObject) =
|
|
200
|
+
fun addPersonImage(callback: Callback, personId: String, image: JSONObject) = db.addPersonImage(
|
|
198
201
|
personId,
|
|
199
202
|
imageUploadFromJSON(image),
|
|
200
203
|
databaseItemCompletion(callback, ::generatePersonImage)
|
|
201
204
|
)
|
|
202
205
|
|
|
203
|
-
fun deletePersonImage(callback: Callback, personId: String, imageId: String) =
|
|
206
|
+
fun deletePersonImage(callback: Callback, personId: String, imageId: String) = db.deletePersonImage(
|
|
204
207
|
personId,
|
|
205
208
|
imageId,
|
|
206
209
|
databaseItemCompletion(callback, null)
|
|
207
210
|
)
|
|
208
211
|
|
|
209
|
-
fun getPersonImage(callback: Callback, personId: String, imageId: String) =
|
|
212
|
+
fun getPersonImage(callback: Callback, personId: String, imageId: String) = db.getPersonImageById(
|
|
210
213
|
personId,
|
|
211
214
|
imageId,
|
|
212
215
|
object : PersonDBCallback<ByteArray> {
|
|
@@ -215,7 +218,7 @@ fun getPersonImage(callback: Callback, personId: String, imageId: String) = Inst
|
|
|
215
218
|
}
|
|
216
219
|
)
|
|
217
220
|
|
|
218
|
-
fun getPersonImages(callback: Callback, personId: String) =
|
|
221
|
+
fun getPersonImages(callback: Callback, personId: String) = db.getPersonImages(
|
|
219
222
|
personId,
|
|
220
223
|
databasePageCompletion(callback, ::generatePersonImage)
|
|
221
224
|
)
|
|
@@ -225,22 +228,22 @@ fun getPersonImagesForPage(
|
|
|
225
228
|
personId: String,
|
|
226
229
|
page: Int,
|
|
227
230
|
size: Int
|
|
228
|
-
) =
|
|
231
|
+
) = db.getPersonImagesForPage(
|
|
229
232
|
personId,
|
|
230
233
|
page,
|
|
231
234
|
size,
|
|
232
235
|
databasePageCompletion(callback, ::generatePersonImage)
|
|
233
236
|
)
|
|
234
237
|
|
|
235
|
-
fun createGroup(callback: Callback, name: String, metadata: JSONObject?) =
|
|
238
|
+
fun createGroup(callback: Callback, name: String, metadata: JSONObject?) = db.createGroup(
|
|
236
239
|
name,
|
|
237
240
|
metadata,
|
|
238
241
|
databaseItemCompletion(callback, ::generatePersonGroup)
|
|
239
242
|
)
|
|
240
243
|
|
|
241
244
|
fun updateGroup(callback: Callback, groupJson: JSONObject) =
|
|
242
|
-
|
|
243
|
-
override fun onSuccess(group: PersonGroup?) =
|
|
245
|
+
db.getGroup(idFromJSON(groupJson), object : PersonDBCallback<PersonGroup?> {
|
|
246
|
+
override fun onSuccess(group: PersonGroup?) = db.updateGroup(
|
|
244
247
|
updatePersonGroupFromJSON(group!!, groupJson),
|
|
245
248
|
databaseItemCompletion(callback, null)
|
|
246
249
|
)
|
|
@@ -249,32 +252,31 @@ fun updateGroup(callback: Callback, groupJson: JSONObject) =
|
|
|
249
252
|
})
|
|
250
253
|
|
|
251
254
|
fun editPersonsInGroup(callback: Callback, groupId: String, editGroupPersonsRequest: JSONObject) =
|
|
252
|
-
|
|
255
|
+
db.editPersonsInGroup(
|
|
253
256
|
groupId,
|
|
254
257
|
editGroupPersonsRequestFromJSON(editGroupPersonsRequest),
|
|
255
258
|
databaseItemCompletion(callback, null)
|
|
256
259
|
)
|
|
257
260
|
|
|
258
|
-
fun deleteGroup(callback: Callback, groupId: String) =
|
|
261
|
+
fun deleteGroup(callback: Callback, groupId: String) = db.deleteGroup(
|
|
259
262
|
groupId,
|
|
260
263
|
databaseItemCompletion(callback, null)
|
|
261
264
|
)
|
|
262
265
|
|
|
263
|
-
fun getGroup(callback: Callback, groupId: String) =
|
|
266
|
+
fun getGroup(callback: Callback, groupId: String) = db.getGroup(
|
|
264
267
|
groupId,
|
|
265
268
|
databaseItemCompletion(callback, ::generatePersonGroup)
|
|
266
269
|
)
|
|
267
270
|
|
|
268
|
-
fun getGroups(callback: Callback) =
|
|
269
|
-
Instance().personDatabase().getGroups(databasePageCompletion(callback, ::generatePersonGroup))
|
|
271
|
+
fun getGroups(callback: Callback) = db.getGroups(databasePageCompletion(callback, ::generatePersonGroup))
|
|
270
272
|
|
|
271
|
-
fun getGroupsForPage(callback: Callback, page: Int, size: Int) =
|
|
273
|
+
fun getGroupsForPage(callback: Callback, page: Int, size: Int) = db.getGroupsForPage(
|
|
272
274
|
page,
|
|
273
275
|
size,
|
|
274
276
|
databasePageCompletion(callback, ::generatePersonGroup)
|
|
275
277
|
)
|
|
276
278
|
|
|
277
|
-
fun getPersonGroups(callback: Callback, personId: String) =
|
|
279
|
+
fun getPersonGroups(callback: Callback, personId: String) = db.getPersonGroups(
|
|
278
280
|
personId,
|
|
279
281
|
databasePageCompletion(callback, ::generatePersonGroup)
|
|
280
282
|
)
|
|
@@ -284,14 +286,14 @@ fun getPersonGroupsForPage(
|
|
|
284
286
|
personId: String,
|
|
285
287
|
page: Int,
|
|
286
288
|
size: Int
|
|
287
|
-
) =
|
|
289
|
+
) = db.getPersonGroupsForPage(
|
|
288
290
|
personId,
|
|
289
291
|
page,
|
|
290
292
|
size,
|
|
291
293
|
databasePageCompletion(callback, ::generatePersonGroup)
|
|
292
294
|
)
|
|
293
295
|
|
|
294
|
-
fun getPersonsInGroup(callback: Callback, groupId: String) =
|
|
296
|
+
fun getPersonsInGroup(callback: Callback, groupId: String) = db.getPersonsInGroup(
|
|
295
297
|
groupId,
|
|
296
298
|
databasePageCompletion(callback, ::generatePerson)
|
|
297
299
|
)
|
|
@@ -301,14 +303,14 @@ fun getPersonsInGroupForPage(
|
|
|
301
303
|
groupId: String,
|
|
302
304
|
page: Int,
|
|
303
305
|
size: Int
|
|
304
|
-
) =
|
|
306
|
+
) = db.getPersonsInGroupForPage(
|
|
305
307
|
groupId,
|
|
306
308
|
page,
|
|
307
309
|
size,
|
|
308
310
|
databasePageCompletion(callback, ::generatePerson)
|
|
309
311
|
)
|
|
310
312
|
|
|
311
|
-
fun searchPerson(callback: Callback, searchPersonRequest: JSONObject) =
|
|
313
|
+
fun searchPerson(callback: Callback, searchPersonRequest: JSONObject) = db.searchPerson(
|
|
312
314
|
searchPersonRequestFromJSON(searchPersonRequest),
|
|
313
315
|
object : PersonDBCallback<List<SearchPerson>> {
|
|
314
316
|
override fun onSuccess(data: List<SearchPerson>?) = callback(generatePersonDBResponse(data.toJsonNullable(::generateSearchPerson)!!, null))
|
|
@@ -37,8 +37,8 @@ fun <T> argsNullable(index: Int): T? {
|
|
|
37
37
|
|
|
38
38
|
@Suppress("unused")
|
|
39
39
|
class RNFaceSDKPackage : ReactPackage {
|
|
40
|
-
override fun createNativeModules(
|
|
41
|
-
override fun createViewManagers(
|
|
40
|
+
override fun createNativeModules(reactContext: ReactApplicationContext) = listOf(RNFaceSDKModule(reactContext))
|
|
41
|
+
override fun createViewManagers(reactContext: ReactApplicationContext) = emptyList<ViewManager<*, *>>()
|
|
42
42
|
}
|
|
43
43
|
|
|
44
44
|
@Suppress("unused", "UNUSED_PARAMETER")
|
|
@@ -1,4 +1,3 @@
|
|
|
1
|
-
<?xml version="1.0" encoding="utf-8"?>
|
|
2
1
|
<manifest xmlns:android="http://schemas.android.com/apk/res/android">
|
|
3
2
|
|
|
4
3
|
<application
|
|
@@ -6,16 +5,15 @@
|
|
|
6
5
|
android:icon="@drawable/ic_launcher"
|
|
7
6
|
android:label="FaceSDK"
|
|
8
7
|
android:supportsRtl="true"
|
|
9
|
-
android:theme="@style/AppTheme"
|
|
10
|
-
|
|
8
|
+
android:theme="@style/AppTheme"
|
|
9
|
+
android:usesCleartextTraffic="true">
|
|
11
10
|
<activity
|
|
12
|
-
android:screenOrientation="portrait"
|
|
13
|
-
android:configChanges="orientation|keyboardHidden|keyboard|screenSize|locale|smallestScreenSize|screenLayout|uiMode|navigation"
|
|
14
11
|
android:name=".MainActivity"
|
|
15
|
-
android:
|
|
12
|
+
android:configChanges="orientation|keyboardHidden|keyboard|screenSize|locale|smallestScreenSize|screenLayout|uiMode|navigation"
|
|
13
|
+
android:exported="true"
|
|
16
14
|
android:launchMode="singleTask"
|
|
17
|
-
android:
|
|
18
|
-
|
|
15
|
+
android:screenOrientation="portrait"
|
|
16
|
+
android:theme="@style/AppTheme.NoActionBarLaunch">
|
|
19
17
|
<intent-filter>
|
|
20
18
|
<action android:name="android.intent.action.MAIN" />
|
|
21
19
|
<category android:name="android.intent.category.LAUNCHER" />
|
|
@@ -23,8 +21,5 @@
|
|
|
23
21
|
|
|
24
22
|
</activity>
|
|
25
23
|
</application>
|
|
26
|
-
|
|
27
|
-
<!-- Permissions -->
|
|
28
|
-
|
|
29
24
|
<uses-permission android:name="android.permission.INTERNET" />
|
|
30
25
|
</manifest>
|
|
@@ -6,8 +6,8 @@
|
|
|
6
6
|
"android": "scripts/android.sh"
|
|
7
7
|
},
|
|
8
8
|
"dependencies": {
|
|
9
|
-
"@regulaforensics/face-sdk": "6.4.
|
|
10
|
-
"@regulaforensics/face-core-basic": "
|
|
9
|
+
"@regulaforensics/face-sdk": "6.4.315-nightly",
|
|
10
|
+
"@regulaforensics/face-core-basic": "6.4.171-nightly",
|
|
11
11
|
"@awesome-cordova-plugins/file": "6.6.0",
|
|
12
12
|
"@awesome-cordova-plugins/camera": "6.6.0",
|
|
13
13
|
"cordova-plugin-file": "8.1.3",
|
|
@@ -6,8 +6,8 @@
|
|
|
6
6
|
"android": "scripts/android.sh"
|
|
7
7
|
},
|
|
8
8
|
"dependencies": {
|
|
9
|
-
"@regulaforensics/face-sdk": "6.4.
|
|
10
|
-
"@regulaforensics/face-core-basic": "
|
|
9
|
+
"@regulaforensics/face-sdk": "6.4.315-nightly",
|
|
10
|
+
"@regulaforensics/face-core-basic": "6.4.171-nightly",
|
|
11
11
|
"cordova-ios": "7.1.1",
|
|
12
12
|
"cordova-android": "13.0.0",
|
|
13
13
|
"cordova-plugin-file": "8.1.3",
|
|
@@ -6,8 +6,8 @@
|
|
|
6
6
|
"android": "scripts/android.sh"
|
|
7
7
|
},
|
|
8
8
|
"dependencies": {
|
|
9
|
-
"@regulaforensics/face-sdk": "6.4.
|
|
10
|
-
"@regulaforensics/face-core-basic": "
|
|
9
|
+
"@regulaforensics/face-sdk": "6.4.315-nightly",
|
|
10
|
+
"@regulaforensics/face-core-basic": "6.4.171-nightly",
|
|
11
11
|
"@awesome-cordova-plugins/file": "6.16.0",
|
|
12
12
|
"@awesome-cordova-plugins/camera": "6.16.0",
|
|
13
13
|
"@awesome-cordova-plugins/dialogs": "6.16.0",
|
|
@@ -32,7 +32,9 @@ export default ({ config }: ConfigContext): ExpoConfig => ({
|
|
|
32
32
|
{ url: 'https://maven.regulaforensics.com/RegulaDocumentReader/Nightly' },
|
|
33
33
|
{ url: 'https://maven.regulaforensics.com/RegulaDocumentReader/Stage' }
|
|
34
34
|
]
|
|
35
|
-
}
|
|
35
|
+
},
|
|
36
|
+
// This fixes a bug in expo v53. https://github.com/expo/expo/issues/36908
|
|
37
|
+
ios: { networkInspector: false }
|
|
36
38
|
}]
|
|
37
39
|
]
|
|
38
40
|
})
|
|
@@ -8,8 +8,8 @@
|
|
|
8
8
|
"start": "expo start"
|
|
9
9
|
},
|
|
10
10
|
"dependencies": {
|
|
11
|
-
"@regulaforensics/face-sdk": "6.4.
|
|
12
|
-
"@regulaforensics/face-core-basic": "
|
|
11
|
+
"@regulaforensics/face-sdk": "6.4.315-nightly",
|
|
12
|
+
"@regulaforensics/face-core-basic": "6.4.171-nightly",
|
|
13
13
|
"react-native": "0.79.2",
|
|
14
14
|
"react-native-fs": "2.20.0",
|
|
15
15
|
"react-native-image-picker": "8.2.1",
|
package/ios/CVDFaceSDK.m
CHANGED
|
@@ -8,6 +8,13 @@ static NSMutableDictionary<NSString*, NSString*>* _eventCallbackIds = nil;
|
|
|
8
8
|
return _eventCallbackIds;
|
|
9
9
|
}
|
|
10
10
|
|
|
11
|
+
UIViewController*(^rootViewController)(void) = ^UIViewController*(){
|
|
12
|
+
for (UIWindow *window in UIApplication.sharedApplication.windows)
|
|
13
|
+
if (window.isKeyWindow)
|
|
14
|
+
return window.rootViewController;
|
|
15
|
+
return nil;
|
|
16
|
+
};
|
|
17
|
+
|
|
11
18
|
- (void) exec:(CDVInvokedUrlCommand*)command {
|
|
12
19
|
NSString* method = command.arguments[0];
|
|
13
20
|
NSMutableArray* args = [NSMutableArray new];
|
package/ios/RFSWMain.h
CHANGED
|
@@ -3,6 +3,7 @@
|
|
|
3
3
|
|
|
4
4
|
typedef void (^RFSWCallback)(id _Nullable response);
|
|
5
5
|
typedef void (^RFSWEventSender)(NSString* _Nonnull event, id _Nullable data);
|
|
6
|
+
extern UIViewController*_Nonnull(^ _Nonnull rootViewController)(void);
|
|
6
7
|
|
|
7
8
|
@interface RFSWMain: NSObject<RFSURLRequestInterceptingDelegate,
|
|
8
9
|
RFSVideoUploadingDelegate,
|
package/ios/RFSWMain.m
CHANGED
|
@@ -49,16 +49,8 @@
|
|
|
49
49
|
|
|
50
50
|
static RFSWMain* this;
|
|
51
51
|
static RFSWEventSender sendEvent;
|
|
52
|
-
|
|
53
52
|
static NSDictionary* headers;
|
|
54
53
|
|
|
55
|
-
static UIViewController*(^rootViewController)(void) = ^UIViewController*(){
|
|
56
|
-
for (UIWindow *window in UIApplication.sharedApplication.windows)
|
|
57
|
-
if (window.isKeyWindow)
|
|
58
|
-
return window.rootViewController;
|
|
59
|
-
return nil;
|
|
60
|
-
};
|
|
61
|
-
|
|
62
54
|
+(void)getVersion:(RFSWCallback)callback {
|
|
63
55
|
callback([RFSWJSONConstructor generateFaceSDKVersion:RFSFaceSDK.service.version]);
|
|
64
56
|
}
|
package/ios/RNFaceSDK.h
CHANGED
package/ios/RNFaceSDK.m
CHANGED
|
@@ -20,6 +20,10 @@ static bool hasListeners;
|
|
|
20
20
|
- (void)startObserving { hasListeners = YES; }
|
|
21
21
|
- (void)stopObserving { hasListeners = NO; }
|
|
22
22
|
|
|
23
|
+
UIViewController*(^rootViewController)(void) = ^UIViewController*(){
|
|
24
|
+
return RCTPresentedViewController();
|
|
25
|
+
};
|
|
26
|
+
|
|
23
27
|
RCT_EXPORT_METHOD(exec:(NSString*)method:(NSArray*)args:(RCTPromiseResolveBlock)resolve:(RCTPromiseRejectBlock)reject) {
|
|
24
28
|
RFSWCallback callback = ^(id _Nullable data) {
|
|
25
29
|
if ([self.firedCallbacks containsObject:resolve]) return;
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@regulaforensics/face-sdk",
|
|
3
|
-
"version": "6.4.
|
|
3
|
+
"version": "6.4.315-nightly",
|
|
4
4
|
"description": "This is an npm module for Regula Face SDK. It allows you to easily compaire faces using your phone's camera.",
|
|
5
5
|
"main": "www/react-native/index.js",
|
|
6
6
|
"module": "www/capacitor/index.js",
|
package/plugin.xml
CHANGED
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
<?xml version='1.0' encoding='utf-8'?>
|
|
2
|
-
<plugin id="@regulaforensics/face-sdk" version="6.4.
|
|
2
|
+
<plugin id="@regulaforensics/face-sdk" version="6.4.315-nightly" xmlns="http://apache.org/cordova/ns/plugins/1.0">
|
|
3
3
|
<name>FaceSDK</name>
|
|
4
4
|
<description>Cordova plugin for Regula Face SDK</description>
|
|
5
5
|
<license>commercial</license>
|
|
@@ -29,7 +29,7 @@
|
|
|
29
29
|
<source url="https://github.com/CocoaPods/Specs.git" />
|
|
30
30
|
</config>
|
|
31
31
|
<pods>
|
|
32
|
-
<pod name="
|
|
32
|
+
<pod name="FaceSDKNightly" spec="6.4.2729" />
|
|
33
33
|
</pods>
|
|
34
34
|
</podspec>
|
|
35
35
|
</platform>
|