@regulaforensics/react-native-document-reader-api 9.4.547-rc → 9.4.549-rc
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/build.gradle +1 -1
- package/android/src/main/java/com/regula/plugin/documentreader/JSONConstructor.kt +36 -0
- package/android/src/main/java/com/regula/plugin/documentreader/Main.kt +46 -43
- package/example/App.tsx +2 -2
- package/example/package-lock.json +60 -46
- package/example/package.json +2 -2
- package/index.d.ts +74 -5
- package/index.js +59 -5
- package/ios/RGLWJSONConstructor.h +4 -0
- package/ios/RGLWJSONConstructor.m +93 -47
- package/ios/RGLWMain.h +2 -4
- package/ios/RGLWMain.m +49 -13
- package/ios/RNRegulaDocumentReader.m +2 -0
- package/package.json +1 -1
package/android/build.gradle
CHANGED
|
@@ -29,7 +29,7 @@ dependencies {
|
|
|
29
29
|
//noinspection GradleDynamicVersion
|
|
30
30
|
implementation 'com.facebook.react:react-native:+'
|
|
31
31
|
//noinspection GradleDependency
|
|
32
|
-
implementation('com.regula.documentreader:api:9.
|
|
32
|
+
implementation('com.regula.documentreader:api:9.3.12784') {
|
|
33
33
|
transitive = true
|
|
34
34
|
}
|
|
35
35
|
}
|
|
@@ -47,7 +47,9 @@ import com.regula.documentreader.api.params.mdl.DeviceRetrievalMethod
|
|
|
47
47
|
import com.regula.documentreader.api.params.mdl.DocumentRequest18013MDL
|
|
48
48
|
import com.regula.documentreader.api.params.mdl.DocumentRequestMDL
|
|
49
49
|
import com.regula.documentreader.api.params.mdl.NameSpaceMDL
|
|
50
|
+
import com.regula.documentreader.api.params.rfid.CaProtocol
|
|
50
51
|
import com.regula.documentreader.api.params.rfid.PKDCertificate
|
|
52
|
+
import com.regula.documentreader.api.params.rfid.PaceProtocol
|
|
51
53
|
import com.regula.documentreader.api.params.rfid.RFIDParams
|
|
52
54
|
import com.regula.documentreader.api.params.rfid.TccParams
|
|
53
55
|
import com.regula.documentreader.api.params.rfid.authorization.PAAttribute
|
|
@@ -2138,3 +2140,37 @@ fun generateFinalizeConfig(input: FinalizeConfig?) = input?.let {
|
|
|
2138
2140
|
"mdlSession" to it.getPrivateProperty("mdlSession"),
|
|
2139
2141
|
).toJson()
|
|
2140
2142
|
}
|
|
2143
|
+
|
|
2144
|
+
fun paceProtocolFromJSON(input: JSONObject?) = input?.let {
|
|
2145
|
+
PaceProtocol(
|
|
2146
|
+
it.getString("version"),
|
|
2147
|
+
it.getString("stdDomainParams"),
|
|
2148
|
+
it.getString("keyAlgorithm"),
|
|
2149
|
+
)
|
|
2150
|
+
}
|
|
2151
|
+
|
|
2152
|
+
fun generatePaceProtocol(input: PaceProtocol?) = input?.let {
|
|
2153
|
+
mapOf(
|
|
2154
|
+
"version" to it.version,
|
|
2155
|
+
"stdDomainParams" to it.stdDomainParams,
|
|
2156
|
+
"keyAlgorithm" to it.keyAlgorithm,
|
|
2157
|
+
).toJson()
|
|
2158
|
+
}
|
|
2159
|
+
|
|
2160
|
+
fun caProtocolFromJSON(input: JSONObject?) = input?.let {
|
|
2161
|
+
CaProtocol(
|
|
2162
|
+
it.getString("version"),
|
|
2163
|
+
it.getString("scheme"),
|
|
2164
|
+
it.getString("keyAlgorithm"),
|
|
2165
|
+
it.getBoolean("chipIndividual"),
|
|
2166
|
+
)
|
|
2167
|
+
}
|
|
2168
|
+
|
|
2169
|
+
fun generateCaProtocol(input: CaProtocol?) = input?.let {
|
|
2170
|
+
mapOf(
|
|
2171
|
+
"version" to it.version,
|
|
2172
|
+
"scheme" to it.scheme,
|
|
2173
|
+
"keyAlgorithm" to it.keyAlgorithm,
|
|
2174
|
+
"chipIndividual" to it.isChipIndividual,
|
|
2175
|
+
).toJson()
|
|
2176
|
+
}
|
|
@@ -19,13 +19,13 @@ import com.regula.documentreader.api.completions.IDocumentReaderInitCompletion
|
|
|
19
19
|
import com.regula.documentreader.api.completions.IDocumentReaderPrepareDbCompletion
|
|
20
20
|
import com.regula.documentreader.api.completions.IVideoEncoderCompletion
|
|
21
21
|
import com.regula.documentreader.api.completions.model.PrepareProgress
|
|
22
|
+
import com.regula.documentreader.api.completions.rfid.ICaProtocolCompletion
|
|
23
|
+
import com.regula.documentreader.api.completions.rfid.IPaceProtocolCompletion
|
|
22
24
|
import com.regula.documentreader.api.completions.rfid.IRfidPKDCertificateCompletion
|
|
23
25
|
import com.regula.documentreader.api.completions.rfid.IRfidReaderCompletion
|
|
24
26
|
import com.regula.documentreader.api.completions.rfid.IRfidReaderRequest
|
|
25
27
|
import com.regula.documentreader.api.completions.rfid.IRfidTASignatureCompletion
|
|
26
|
-
import com.regula.documentreader.api.completions.rfid.certificates.
|
|
27
|
-
import com.regula.documentreader.api.completions.rfid.certificates.IRfidTACertificates
|
|
28
|
-
import com.regula.documentreader.api.completions.rfid.certificates.IRfidTASignature
|
|
28
|
+
import com.regula.documentreader.api.completions.rfid.certificates.IRfidAccessControl
|
|
29
29
|
import com.regula.documentreader.api.enums.DocReaderAction
|
|
30
30
|
import com.regula.documentreader.api.enums.LCID
|
|
31
31
|
import com.regula.documentreader.api.enums.eImageQualityCheckType
|
|
@@ -39,6 +39,8 @@ import com.regula.documentreader.api.errors.DocReaderRfidException
|
|
|
39
39
|
import com.regula.documentreader.api.errors.DocumentReaderException
|
|
40
40
|
import com.regula.documentreader.api.internal.core.CoreScenarioUtil
|
|
41
41
|
import com.regula.documentreader.api.params.mdl.DataRetrieval
|
|
42
|
+
import com.regula.documentreader.api.params.rfid.CaProtocol
|
|
43
|
+
import com.regula.documentreader.api.params.rfid.PaceProtocol
|
|
42
44
|
import com.regula.documentreader.api.results.DocumentReaderNotification
|
|
43
45
|
import com.regula.documentreader.api.results.DocumentReaderResults
|
|
44
46
|
import com.regula.documentreader.api.results.DocumentReaderResults.fromRawResults
|
|
@@ -84,12 +86,14 @@ fun methodCall(method: String, callback: (Any?) -> Unit): Any = when (method) {
|
|
|
84
86
|
"recognize" -> recognize(args(0))
|
|
85
87
|
"startNewPage" -> startNewPage()
|
|
86
88
|
"stopScanner" -> stopScanner()
|
|
87
|
-
"startRFIDReader" -> startRFIDReader(
|
|
88
|
-
"readRFID" -> readRFID(
|
|
89
|
+
"startRFIDReader" -> startRFIDReader(argsNullable(0))
|
|
90
|
+
"readRFID" -> readRFID(argsNullable(0))
|
|
89
91
|
"stopRFIDReader" -> stopRFIDReader()
|
|
90
92
|
"providePACertificates" -> providePACertificates(argsNullable(0))
|
|
91
93
|
"provideTACertificates" -> provideTACertificates(argsNullable(0))
|
|
92
94
|
"provideTASignature" -> provideTASignature(args(0))
|
|
95
|
+
"selectPACEProtocol" -> selectPACEProtocol(args(0))
|
|
96
|
+
"selectCAProtocol" -> selectCAProtocol(args(0))
|
|
93
97
|
"setTCCParams" -> setTCCParams(callback, args(0))
|
|
94
98
|
"addPKDCertificates" -> addPKDCertificates(args(0))
|
|
95
99
|
"clearPKDCertificates" -> clearPKDCertificates()
|
|
@@ -150,6 +154,8 @@ const val rfidOnRetryReadChipEvent = "rfidOnRetryReadChipEvent"
|
|
|
150
154
|
const val paCertificateCompletionEvent = "pa_certificate_completion"
|
|
151
155
|
const val taCertificateCompletionEvent = "ta_certificate_completion"
|
|
152
156
|
const val taSignatureCompletionEvent = "ta_signature_completion"
|
|
157
|
+
const val paceProtocolCompletionEvent = "paceProtocolCompletionEvent"
|
|
158
|
+
const val caProtocolCompletionEvent = "caProtocolCompletionEvent"
|
|
153
159
|
|
|
154
160
|
const val videoEncoderCompletionEvent = "video_encoder_completion"
|
|
155
161
|
const val onCustomButtonTappedEvent = "onCustomButtonTappedEvent"
|
|
@@ -248,22 +254,13 @@ fun startNewPage() = Instance().startNewPage()
|
|
|
248
254
|
|
|
249
255
|
fun stopScanner() = Instance().stopScanner(context)
|
|
250
256
|
|
|
251
|
-
fun startRFIDReader(
|
|
257
|
+
fun startRFIDReader(config: JSONObject?) {
|
|
252
258
|
stopBackgroundRFID()
|
|
253
|
-
|
|
254
|
-
onRequestPACertificates,
|
|
255
|
-
onRequestTACertificates,
|
|
256
|
-
onRequestTASignature
|
|
257
|
-
)
|
|
258
|
-
Instance().startRFIDReader(activity, rfidReaderCompletion, requestType.getRfidReaderRequest())
|
|
259
|
+
Instance().startRFIDReader(activity, rfidReaderCompletion, getRfidReaderRequest(config))
|
|
259
260
|
}
|
|
260
261
|
|
|
261
|
-
fun readRFID(
|
|
262
|
-
|
|
263
|
-
onRequestPACertificates,
|
|
264
|
-
onRequestTACertificates,
|
|
265
|
-
onRequestTASignature
|
|
266
|
-
)
|
|
262
|
+
fun readRFID(config: JSONObject?) {
|
|
263
|
+
rfidReaderRequest = getRfidReaderRequest(config)
|
|
267
264
|
startForegroundDispatch("readRFID")
|
|
268
265
|
}
|
|
269
266
|
|
|
@@ -284,6 +281,14 @@ fun provideTASignature(signature: String?) = taSignatureCompletion.onSignatureRe
|
|
|
284
281
|
signature.toByteArray()
|
|
285
282
|
)
|
|
286
283
|
|
|
284
|
+
fun selectPACEProtocol(protocol: JSONObject) = paceProtocolCompletion.onPaceProtocolSelected(
|
|
285
|
+
paceProtocolFromJSON(protocol)!!
|
|
286
|
+
)
|
|
287
|
+
|
|
288
|
+
fun selectCAProtocol(protocol: JSONObject) = caProtocolCompletion.onCaProtocolSelected(
|
|
289
|
+
caProtocolFromJSON(protocol)!!
|
|
290
|
+
)
|
|
291
|
+
|
|
287
292
|
fun setTCCParams(callback: Callback, params: JSONObject) {
|
|
288
293
|
Instance().setTccParams(tccParamsFromJSON(params)) { success, error ->
|
|
289
294
|
callback(generateSuccessCompletion(success, error))
|
|
@@ -545,49 +550,47 @@ fun initCompletion(callback: Callback) = IDocumentReaderInitCompletion { success
|
|
|
545
550
|
lateinit var paCertificateCompletion: IRfidPKDCertificateCompletion
|
|
546
551
|
lateinit var taCertificateCompletion: IRfidPKDCertificateCompletion
|
|
547
552
|
lateinit var taSignatureCompletion: IRfidTASignatureCompletion
|
|
553
|
+
lateinit var paceProtocolCompletion: IPaceProtocolCompletion
|
|
554
|
+
lateinit var caProtocolCompletion: ICaProtocolCompletion
|
|
555
|
+
|
|
556
|
+
var rfidReaderRequest = getRfidReaderRequest()
|
|
557
|
+
|
|
558
|
+
fun getRfidReaderRequest(config: JSONObject? = null): IRfidReaderRequest {
|
|
559
|
+
val result = IRfidReaderRequest()
|
|
560
|
+
if (config == null) return result
|
|
548
561
|
|
|
549
|
-
|
|
550
|
-
val doPACertificates: Boolean,
|
|
551
|
-
val doTACertificates: Boolean,
|
|
552
|
-
val doTASignature: Boolean
|
|
553
|
-
) {
|
|
554
|
-
private val onRequestPACertificates = IRfidPACertificates { serialNumber, issuer, completion ->
|
|
562
|
+
if (config.getBoolean("paCertificates")) result.setPACertificates { serialNumber, issuer, completion ->
|
|
555
563
|
paCertificateCompletion = completion
|
|
556
564
|
sendEvent(paCertificateCompletionEvent, generatePACertificateCompletion(serialNumber, issuer))
|
|
557
565
|
}
|
|
558
|
-
|
|
566
|
+
if (config.getBoolean("taCertificates")) result.setTACertificates { keyCAR, completion ->
|
|
559
567
|
taCertificateCompletion = completion
|
|
560
568
|
sendEvent(taCertificateCompletionEvent, keyCAR)
|
|
561
569
|
}
|
|
562
|
-
|
|
570
|
+
if (config.getBoolean("taSignature")) result.setTASignature { challenge, completion ->
|
|
563
571
|
taSignatureCompletion = completion
|
|
564
572
|
sendEvent(taSignatureCompletionEvent, generateTAChallenge(challenge))
|
|
565
573
|
}
|
|
574
|
+
if (config.getBoolean("paceProtocol") || config.getBoolean("caProtocol")) result.setRfidAccessControl(object : IRfidAccessControl {
|
|
575
|
+
override fun onRequestPaceProtocol(list: List<PaceProtocol?>, completion: IPaceProtocolCompletion) {
|
|
576
|
+
paceProtocolCompletion = completion
|
|
577
|
+
sendEvent(paceProtocolCompletionEvent, list.toJson(::generatePaceProtocol))
|
|
578
|
+
}
|
|
579
|
+
override fun onRequestCaProtocol(list: List<CaProtocol?>, completion: ICaProtocolCompletion) {
|
|
580
|
+
caProtocolCompletion = completion
|
|
581
|
+
sendEvent(caProtocolCompletionEvent, list.toJson(::generateCaProtocol))
|
|
582
|
+
}
|
|
583
|
+
})
|
|
566
584
|
|
|
567
|
-
|
|
568
|
-
!doPACertificates && !doTACertificates && doTASignature -> IRfidReaderRequest(onRequestTASignature)
|
|
569
|
-
!doPACertificates && doTACertificates && !doTASignature -> IRfidReaderRequest(onRequestTACertificates)
|
|
570
|
-
!doPACertificates && doTACertificates && doTASignature -> IRfidReaderRequest(onRequestTACertificates, onRequestTASignature)
|
|
571
|
-
doPACertificates && !doTACertificates && !doTASignature -> IRfidReaderRequest(onRequestPACertificates)
|
|
572
|
-
doPACertificates && !doTACertificates && doTASignature -> IRfidReaderRequest(onRequestPACertificates, onRequestTASignature)
|
|
573
|
-
doPACertificates && doTACertificates && !doTASignature -> IRfidReaderRequest(onRequestPACertificates, onRequestTACertificates)
|
|
574
|
-
doPACertificates && doTACertificates && doTASignature -> IRfidReaderRequest(onRequestPACertificates, onRequestTACertificates, onRequestTASignature)
|
|
575
|
-
else -> null
|
|
576
|
-
}
|
|
585
|
+
return result
|
|
577
586
|
}
|
|
578
587
|
|
|
579
|
-
var requestType = RfidReaderRequestType(
|
|
580
|
-
doPACertificates = false,
|
|
581
|
-
doTACertificates = false,
|
|
582
|
-
doTASignature = false
|
|
583
|
-
)
|
|
584
|
-
|
|
585
588
|
@Suppress("DEPRECATION", "MissingPermission")
|
|
586
589
|
fun newIntent(intent: Intent): Boolean {
|
|
587
590
|
if (intent.action != NfcAdapter.ACTION_TECH_DISCOVERED) return false
|
|
588
591
|
val isoDep = IsoDep.get(intent.getParcelableExtra(NfcAdapter.EXTRA_TAG))
|
|
589
592
|
when (nfcFunction) {
|
|
590
|
-
"readRFID" -> Instance().readRFID(isoDep, rfidReaderCompletion,
|
|
593
|
+
"readRFID" -> Instance().readRFID(isoDep, rfidReaderCompletion, rfidReaderRequest)
|
|
591
594
|
"engageDeviceNFC" -> Instance().engageDeviceNFC(isoDep) { v1, v2 -> engageDeviceNFCCallback(generateDeviceEngagementCompletion(v1, v2)) }
|
|
592
595
|
"retrieveDataNFC" -> Instance().retrieveDataNFC(isoDep, retrieveDataNFCProp) { v1, v2, v3 -> retrieveDataNFCCallback(generateCompletion(v1, v2, v3)) }
|
|
593
596
|
}
|
package/example/App.tsx
CHANGED
|
@@ -210,12 +210,12 @@ export default class App extends React.Component<IProps, IState> {
|
|
|
210
210
|
|
|
211
211
|
customRFID() {
|
|
212
212
|
this.showRfidUI()
|
|
213
|
-
DocumentReader.readRFID(
|
|
213
|
+
DocumentReader.readRFID(null, _ => { }, _ => { })
|
|
214
214
|
}
|
|
215
215
|
|
|
216
216
|
usualRFID() {
|
|
217
217
|
isReadingRfid = true
|
|
218
|
-
DocumentReader.startRFIDReader(
|
|
218
|
+
DocumentReader.startRFIDReader(null, _ => { }, _ => { })
|
|
219
219
|
}
|
|
220
220
|
|
|
221
221
|
handleResults(results: DocumentReaderResults) {
|
|
@@ -2078,9 +2078,9 @@
|
|
|
2078
2078
|
"license": "Python-2.0"
|
|
2079
2079
|
},
|
|
2080
2080
|
"node_modules/@eslint/eslintrc/node_modules/brace-expansion": {
|
|
2081
|
-
"version": "1.1.
|
|
2082
|
-
"resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.
|
|
2083
|
-
"integrity": "sha512-
|
|
2081
|
+
"version": "1.1.13",
|
|
2082
|
+
"resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.13.tgz",
|
|
2083
|
+
"integrity": "sha512-9ZLprWS6EENmhEOpjCYW2c8VkmOvckIJZfkr7rBW6dObmfgJ/L1GpSYW5Hpo9lDz4D1+n0Ckz8rU7FwHDQiG/w==",
|
|
2084
2084
|
"dev": true,
|
|
2085
2085
|
"license": "MIT",
|
|
2086
2086
|
"dependencies": {
|
|
@@ -2158,9 +2158,9 @@
|
|
|
2158
2158
|
}
|
|
2159
2159
|
},
|
|
2160
2160
|
"node_modules/@humanwhocodes/config-array/node_modules/brace-expansion": {
|
|
2161
|
-
"version": "1.1.
|
|
2162
|
-
"resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.
|
|
2163
|
-
"integrity": "sha512-
|
|
2161
|
+
"version": "1.1.13",
|
|
2162
|
+
"resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.13.tgz",
|
|
2163
|
+
"integrity": "sha512-9ZLprWS6EENmhEOpjCYW2c8VkmOvckIJZfkr7rBW6dObmfgJ/L1GpSYW5Hpo9lDz4D1+n0Ckz8rU7FwHDQiG/w==",
|
|
2164
2164
|
"dev": true,
|
|
2165
2165
|
"license": "MIT",
|
|
2166
2166
|
"dependencies": {
|
|
@@ -2718,6 +2718,19 @@
|
|
|
2718
2718
|
"eslint-scope": "5.1.1"
|
|
2719
2719
|
}
|
|
2720
2720
|
},
|
|
2721
|
+
"node_modules/@nodable/entities": {
|
|
2722
|
+
"version": "2.1.0",
|
|
2723
|
+
"resolved": "https://registry.npmjs.org/@nodable/entities/-/entities-2.1.0.tgz",
|
|
2724
|
+
"integrity": "sha512-nyT7T3nbMyBI/lvr6L5TyWbFJAI9FTgVRakNoBqCD+PmID8DzFrrNdLLtHMwMszOtqZa8PAOV24ZqDnQrhQINA==",
|
|
2725
|
+
"devOptional": true,
|
|
2726
|
+
"funding": [
|
|
2727
|
+
{
|
|
2728
|
+
"type": "github",
|
|
2729
|
+
"url": "https://github.com/sponsors/nodable"
|
|
2730
|
+
}
|
|
2731
|
+
],
|
|
2732
|
+
"license": "MIT"
|
|
2733
|
+
},
|
|
2721
2734
|
"node_modules/@nodelib/fs.scandir": {
|
|
2722
2735
|
"version": "2.1.5",
|
|
2723
2736
|
"resolved": "https://registry.npmjs.org/@nodelib/fs.scandir/-/fs.scandir-2.1.5.tgz",
|
|
@@ -4468,9 +4481,9 @@
|
|
|
4468
4481
|
"peer": true
|
|
4469
4482
|
},
|
|
4470
4483
|
"node_modules/brace-expansion": {
|
|
4471
|
-
"version": "2.0.
|
|
4472
|
-
"resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-2.0.
|
|
4473
|
-
"integrity": "sha512-
|
|
4484
|
+
"version": "2.0.3",
|
|
4485
|
+
"resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-2.0.3.tgz",
|
|
4486
|
+
"integrity": "sha512-MCV/fYJEbqx68aE58kv2cA/kiky1G8vux3OR6/jbS+jIMe/6fJWa0DTzJU7dqijOWYwHi1t29FlfYI9uytqlpA==",
|
|
4474
4487
|
"dev": true,
|
|
4475
4488
|
"license": "MIT",
|
|
4476
4489
|
"dependencies": {
|
|
@@ -6158,9 +6171,9 @@
|
|
|
6158
6171
|
"license": "MIT"
|
|
6159
6172
|
},
|
|
6160
6173
|
"node_modules/eslint-plugin-react/node_modules/brace-expansion": {
|
|
6161
|
-
"version": "1.1.
|
|
6162
|
-
"resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.
|
|
6163
|
-
"integrity": "sha512-
|
|
6174
|
+
"version": "1.1.13",
|
|
6175
|
+
"resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.13.tgz",
|
|
6176
|
+
"integrity": "sha512-9ZLprWS6EENmhEOpjCYW2c8VkmOvckIJZfkr7rBW6dObmfgJ/L1GpSYW5Hpo9lDz4D1+n0Ckz8rU7FwHDQiG/w==",
|
|
6164
6177
|
"dev": true,
|
|
6165
6178
|
"license": "MIT",
|
|
6166
6179
|
"dependencies": {
|
|
@@ -6260,9 +6273,9 @@
|
|
|
6260
6273
|
"license": "Python-2.0"
|
|
6261
6274
|
},
|
|
6262
6275
|
"node_modules/eslint/node_modules/brace-expansion": {
|
|
6263
|
-
"version": "1.1.
|
|
6264
|
-
"resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.
|
|
6265
|
-
"integrity": "sha512-
|
|
6276
|
+
"version": "1.1.13",
|
|
6277
|
+
"resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.13.tgz",
|
|
6278
|
+
"integrity": "sha512-9ZLprWS6EENmhEOpjCYW2c8VkmOvckIJZfkr7rBW6dObmfgJ/L1GpSYW5Hpo9lDz4D1+n0Ckz8rU7FwHDQiG/w==",
|
|
6266
6279
|
"dev": true,
|
|
6267
6280
|
"license": "MIT",
|
|
6268
6281
|
"dependencies": {
|
|
@@ -6541,9 +6554,9 @@
|
|
|
6541
6554
|
"license": "MIT"
|
|
6542
6555
|
},
|
|
6543
6556
|
"node_modules/fast-xml-builder": {
|
|
6544
|
-
"version": "1.1.
|
|
6545
|
-
"resolved": "https://registry.npmjs.org/fast-xml-builder/-/fast-xml-builder-1.1.
|
|
6546
|
-
"integrity": "sha512-
|
|
6557
|
+
"version": "1.1.5",
|
|
6558
|
+
"resolved": "https://registry.npmjs.org/fast-xml-builder/-/fast-xml-builder-1.1.5.tgz",
|
|
6559
|
+
"integrity": "sha512-4TJn/8FKLeslLAH3dnohXqE3QSoxkhvaMzepOIZytwJXZO69Bfz0HBdDHzOTOon6G59Zrk6VQ2bEiv1t61rfkA==",
|
|
6547
6560
|
"devOptional": true,
|
|
6548
6561
|
"funding": [
|
|
6549
6562
|
{
|
|
@@ -6557,9 +6570,9 @@
|
|
|
6557
6570
|
}
|
|
6558
6571
|
},
|
|
6559
6572
|
"node_modules/fast-xml-parser": {
|
|
6560
|
-
"version": "5.
|
|
6561
|
-
"resolved": "https://registry.npmjs.org/fast-xml-parser/-/fast-xml-parser-5.
|
|
6562
|
-
"integrity": "sha512-
|
|
6573
|
+
"version": "5.7.2",
|
|
6574
|
+
"resolved": "https://registry.npmjs.org/fast-xml-parser/-/fast-xml-parser-5.7.2.tgz",
|
|
6575
|
+
"integrity": "sha512-P7oW7tLbYnhOLQk/Gv7cZgzgMPP/XN03K02/Jy6Y/NHzyIAIpxuZIM/YqAkfiXFPxA2CTm7NtCijK9EDu09u2w==",
|
|
6563
6576
|
"devOptional": true,
|
|
6564
6577
|
"funding": [
|
|
6565
6578
|
{
|
|
@@ -6569,9 +6582,10 @@
|
|
|
6569
6582
|
],
|
|
6570
6583
|
"license": "MIT",
|
|
6571
6584
|
"dependencies": {
|
|
6572
|
-
"
|
|
6573
|
-
"
|
|
6574
|
-
"
|
|
6585
|
+
"@nodable/entities": "^2.1.0",
|
|
6586
|
+
"fast-xml-builder": "^1.1.5",
|
|
6587
|
+
"path-expression-matcher": "^1.5.0",
|
|
6588
|
+
"strnum": "^2.2.3"
|
|
6575
6589
|
},
|
|
6576
6590
|
"bin": {
|
|
6577
6591
|
"fxparser": "src/cli/cli.js"
|
|
@@ -6954,9 +6968,9 @@
|
|
|
6954
6968
|
}
|
|
6955
6969
|
},
|
|
6956
6970
|
"node_modules/glob/node_modules/brace-expansion": {
|
|
6957
|
-
"version": "1.1.
|
|
6958
|
-
"resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.
|
|
6959
|
-
"integrity": "sha512-
|
|
6971
|
+
"version": "1.1.13",
|
|
6972
|
+
"resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.13.tgz",
|
|
6973
|
+
"integrity": "sha512-9ZLprWS6EENmhEOpjCYW2c8VkmOvckIJZfkr7rBW6dObmfgJ/L1GpSYW5Hpo9lDz4D1+n0Ckz8rU7FwHDQiG/w==",
|
|
6960
6974
|
"license": "MIT",
|
|
6961
6975
|
"dependencies": {
|
|
6962
6976
|
"balanced-match": "^1.0.0",
|
|
@@ -9105,9 +9119,9 @@
|
|
|
9105
9119
|
}
|
|
9106
9120
|
},
|
|
9107
9121
|
"node_modules/lodash": {
|
|
9108
|
-
"version": "4.
|
|
9109
|
-
"resolved": "https://registry.npmjs.org/lodash/-/lodash-4.
|
|
9110
|
-
"integrity": "sha512-
|
|
9122
|
+
"version": "4.18.1",
|
|
9123
|
+
"resolved": "https://registry.npmjs.org/lodash/-/lodash-4.18.1.tgz",
|
|
9124
|
+
"integrity": "sha512-dMInicTPVE8d1e5otfwmmjlxkZoUpiVLwyeTdUsi/Caj/gfzzblBcCE5sRHV/AsjuCmxWrte2TNGSYuCeCq+0Q==",
|
|
9111
9125
|
"license": "MIT"
|
|
9112
9126
|
},
|
|
9113
9127
|
"node_modules/lodash.debounce": {
|
|
@@ -10351,9 +10365,9 @@
|
|
|
10351
10365
|
}
|
|
10352
10366
|
},
|
|
10353
10367
|
"node_modules/path-expression-matcher": {
|
|
10354
|
-
"version": "1.
|
|
10355
|
-
"resolved": "https://registry.npmjs.org/path-expression-matcher/-/path-expression-matcher-1.
|
|
10356
|
-
"integrity": "sha512-
|
|
10368
|
+
"version": "1.5.0",
|
|
10369
|
+
"resolved": "https://registry.npmjs.org/path-expression-matcher/-/path-expression-matcher-1.5.0.tgz",
|
|
10370
|
+
"integrity": "sha512-cbrerZV+6rvdQrrD+iGMcZFEiiSrbv9Tfdkvnusy6y0x0GKBXREFg/Y65GhIfm0tnLntThhzCnfKwp1WRjeCyQ==",
|
|
10357
10371
|
"devOptional": true,
|
|
10358
10372
|
"funding": [
|
|
10359
10373
|
{
|
|
@@ -10409,9 +10423,9 @@
|
|
|
10409
10423
|
"license": "ISC"
|
|
10410
10424
|
},
|
|
10411
10425
|
"node_modules/picomatch": {
|
|
10412
|
-
"version": "2.3.
|
|
10413
|
-
"resolved": "https://registry.npmjs.org/picomatch/-/picomatch-2.3.
|
|
10414
|
-
"integrity": "sha512-
|
|
10426
|
+
"version": "2.3.2",
|
|
10427
|
+
"resolved": "https://registry.npmjs.org/picomatch/-/picomatch-2.3.2.tgz",
|
|
10428
|
+
"integrity": "sha512-V7+vQEJ06Z+c5tSye8S+nHUfI51xoXIXjHQ99cQtKUkQqqO1kO/KCJUfZXuB47h/YBlDhah2H3hdUGXn8ie0oA==",
|
|
10415
10429
|
"license": "MIT",
|
|
10416
10430
|
"engines": {
|
|
10417
10431
|
"node": ">=8.6"
|
|
@@ -12085,9 +12099,9 @@
|
|
|
12085
12099
|
}
|
|
12086
12100
|
},
|
|
12087
12101
|
"node_modules/strnum": {
|
|
12088
|
-
"version": "2.2.
|
|
12089
|
-
"resolved": "https://registry.npmjs.org/strnum/-/strnum-2.2.
|
|
12090
|
-
"integrity": "sha512-
|
|
12102
|
+
"version": "2.2.3",
|
|
12103
|
+
"resolved": "https://registry.npmjs.org/strnum/-/strnum-2.2.3.tgz",
|
|
12104
|
+
"integrity": "sha512-oKx6RUCuHfT3oyVjtnrmn19H1SiCqgJSg+54XqURKp5aCMbrXrhLjRN9TjuwMjiYstZ0MzDrHqkGZ5dFTKd+zg==",
|
|
12091
12105
|
"devOptional": true,
|
|
12092
12106
|
"funding": [
|
|
12093
12107
|
{
|
|
@@ -12171,9 +12185,9 @@
|
|
|
12171
12185
|
}
|
|
12172
12186
|
},
|
|
12173
12187
|
"node_modules/test-exclude/node_modules/brace-expansion": {
|
|
12174
|
-
"version": "1.1.
|
|
12175
|
-
"resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.
|
|
12176
|
-
"integrity": "sha512-
|
|
12188
|
+
"version": "1.1.13",
|
|
12189
|
+
"resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.13.tgz",
|
|
12190
|
+
"integrity": "sha512-9ZLprWS6EENmhEOpjCYW2c8VkmOvckIJZfkr7rBW6dObmfgJ/L1GpSYW5Hpo9lDz4D1+n0Ckz8rU7FwHDQiG/w==",
|
|
12177
12191
|
"license": "MIT",
|
|
12178
12192
|
"dependencies": {
|
|
12179
12193
|
"balanced-match": "^1.0.0",
|
|
@@ -12399,7 +12413,7 @@
|
|
|
12399
12413
|
"version": "5.7.3",
|
|
12400
12414
|
"resolved": "https://registry.npmjs.org/typescript/-/typescript-5.7.3.tgz",
|
|
12401
12415
|
"integrity": "sha512-84MVSjMEHP+FQRPy3pX9sTVV/INIex71s9TL2Gm5FG/WG1SqXeKyZ0k7/blY/4FdOzI12CBy1vGc4og/eus0fw==",
|
|
12402
|
-
"
|
|
12416
|
+
"dev": true,
|
|
12403
12417
|
"license": "Apache-2.0",
|
|
12404
12418
|
"bin": {
|
|
12405
12419
|
"tsc": "bin/tsc",
|
|
@@ -12805,9 +12819,9 @@
|
|
|
12805
12819
|
"license": "ISC"
|
|
12806
12820
|
},
|
|
12807
12821
|
"node_modules/yaml": {
|
|
12808
|
-
"version": "2.8.
|
|
12809
|
-
"resolved": "https://registry.npmjs.org/yaml/-/yaml-2.8.
|
|
12810
|
-
"integrity": "sha512-
|
|
12822
|
+
"version": "2.8.3",
|
|
12823
|
+
"resolved": "https://registry.npmjs.org/yaml/-/yaml-2.8.3.tgz",
|
|
12824
|
+
"integrity": "sha512-AvbaCLOO2Otw/lW5bmh9d/WEdcDFdQp2Z2ZUH3pX9U2ihyUY0nvLv7J6TrWowklRGPYbB/IuIMfYgxaCPg5Bpg==",
|
|
12811
12825
|
"devOptional": true,
|
|
12812
12826
|
"license": "ISC",
|
|
12813
12827
|
"bin": {
|
package/example/package.json
CHANGED
|
@@ -10,8 +10,8 @@
|
|
|
10
10
|
"test": "jest"
|
|
11
11
|
},
|
|
12
12
|
"dependencies": {
|
|
13
|
-
"@regulaforensics/react-native-document-reader-api": "9.4.
|
|
14
|
-
"@regulaforensics/react-native-document-reader-core-fullauthrfid": "9.4.
|
|
13
|
+
"@regulaforensics/react-native-document-reader-api": "9.4.549-rc",
|
|
14
|
+
"@regulaforensics/react-native-document-reader-core-fullauthrfid": "9.4.2334-rc",
|
|
15
15
|
"@rneui/base": "4.0.0-rc.7",
|
|
16
16
|
"@rneui/themed": "4.0.0-rc.7",
|
|
17
17
|
"react": "19.0.0",
|
package/index.d.ts
CHANGED
|
@@ -3398,6 +3398,63 @@ export class FinalizeCompletion {
|
|
|
3398
3398
|
}
|
|
3399
3399
|
}
|
|
3400
3400
|
|
|
3401
|
+
export class PACEProtocol {
|
|
3402
|
+
version?: string
|
|
3403
|
+
stdDomainParams?: string
|
|
3404
|
+
keyAlgorithm?: string
|
|
3405
|
+
|
|
3406
|
+
static fromJson(jsonObject?: any): PACEProtocol | undefined {
|
|
3407
|
+
if (jsonObject == null || jsonObject == undefined) return undefined
|
|
3408
|
+
const result = new PACEProtocol
|
|
3409
|
+
|
|
3410
|
+
result.version = jsonObject["version"]
|
|
3411
|
+
result.stdDomainParams = jsonObject["stdDomainParams"]
|
|
3412
|
+
result.keyAlgorithm = jsonObject["keyAlgorithm"]
|
|
3413
|
+
|
|
3414
|
+
return result
|
|
3415
|
+
}
|
|
3416
|
+
}
|
|
3417
|
+
|
|
3418
|
+
export class CAProtocol {
|
|
3419
|
+
version?: string
|
|
3420
|
+
scheme?: string
|
|
3421
|
+
keyAlgorithm?: string
|
|
3422
|
+
chipIndividual?: boolean
|
|
3423
|
+
|
|
3424
|
+
static fromJson(jsonObject?: any): CAProtocol | undefined {
|
|
3425
|
+
if (jsonObject == null || jsonObject == undefined) return undefined
|
|
3426
|
+
const result = new CAProtocol
|
|
3427
|
+
|
|
3428
|
+
result.version = jsonObject["version"]
|
|
3429
|
+
result.scheme = jsonObject["scheme"]
|
|
3430
|
+
result.keyAlgorithm = jsonObject["keyAlgorithm"]
|
|
3431
|
+
result.chipIndividual = jsonObject["chipIndividual"]
|
|
3432
|
+
|
|
3433
|
+
return result
|
|
3434
|
+
}
|
|
3435
|
+
}
|
|
3436
|
+
|
|
3437
|
+
export class RFIDConfig {
|
|
3438
|
+
onRequestPACertificates?: boolean
|
|
3439
|
+
onRequestTACertificates?: boolean
|
|
3440
|
+
onRequestTASignature?: boolean
|
|
3441
|
+
onRequestPACEProtocol?: boolean
|
|
3442
|
+
onRequestCAProtocol?: boolean
|
|
3443
|
+
|
|
3444
|
+
static fromJson(jsonObject?: any): RFIDConfig | undefined {
|
|
3445
|
+
if (jsonObject == null || jsonObject == undefined) return undefined
|
|
3446
|
+
const result = new RFIDConfig
|
|
3447
|
+
|
|
3448
|
+
result.onRequestPACertificates = jsonObject["onRequestPACertificates"]
|
|
3449
|
+
result.onRequestTACertificates = jsonObject["onRequestTACertificates"]
|
|
3450
|
+
result.onRequestTASignature = jsonObject["onRequestTASignature"]
|
|
3451
|
+
result.onRequestPACEProtocol = jsonObject["onRequestPACEProtocol"]
|
|
3452
|
+
result.onRequestCAProtocol = jsonObject["onRequestCAProtocol"]
|
|
3453
|
+
|
|
3454
|
+
return result
|
|
3455
|
+
}
|
|
3456
|
+
}
|
|
3457
|
+
|
|
3401
3458
|
export const FontStyle = {
|
|
3402
3459
|
NORMAL: 0,
|
|
3403
3460
|
BOLD: 1,
|
|
@@ -4003,9 +4060,9 @@ export const eRFID_NotificationCodes = {
|
|
|
4003
4060
|
RFID_NOTIFICATION_AUXILIARY_DATA_VALIDATION: 0x000D0000,
|
|
4004
4061
|
RFID_NOTIFICATION_RI_SECTOR_ID: 0x000E0000,
|
|
4005
4062
|
RFID_NOTIFICATION_BIOMETRICS_EMPTY_PLACEHOLDER: 0x000F0000,
|
|
4006
|
-
RFID_NOTIFICATION_SESSION_FILE_DATA_UPDATED:
|
|
4007
|
-
RFID_NOTIFICATION_TCC_TA_RESOURCES:
|
|
4008
|
-
RFID_NOTIFICATION_TCC_TA_SIGNATURE:
|
|
4063
|
+
RFID_NOTIFICATION_SESSION_FILE_DATA_UPDATED: 0x00100000,
|
|
4064
|
+
RFID_NOTIFICATION_TCC_TA_RESOURCES: 0x00110000,
|
|
4065
|
+
RFID_NOTIFICATION_TCC_TA_SIGNATURE: 0x00110001,
|
|
4009
4066
|
}
|
|
4010
4067
|
|
|
4011
4068
|
export const CameraPosition = {
|
|
@@ -4535,6 +4592,8 @@ export const eLDS_ParsingNotificationCodes = {
|
|
|
4535
4592
|
NTF_LDS_ICAO_CERTIFICATE_MRZ_COUNTRY_NON_MATCHING: 0x90000252,
|
|
4536
4593
|
NTF_LDS_ICAO_CERTIFICATE_ISSUER_COUNTRY_NON_UPPER_CASE: 0x90000253,
|
|
4537
4594
|
NTF_LDS_ICAO_CERTIFICATE_SUBJECT_COUNTRY_NON_UPPER_CASE: 0x90000254,
|
|
4595
|
+
NTFLDS_SI_STORAGE_CS_NONCONSISTANT: 0x91000111,
|
|
4596
|
+
NTFLDS_SI_STORAGE_CS_PACE_CAM_KEY_MISSING: 0x9100011,
|
|
4538
4597
|
}
|
|
4539
4598
|
|
|
4540
4599
|
export const eImageQualityCheckType = {
|
|
@@ -5101,6 +5160,13 @@ export const eRFID_DataFile_Type = {
|
|
|
5101
5160
|
DFT_VDS: 900,
|
|
5102
5161
|
DFT_VDSNC: 901,
|
|
5103
5162
|
DFT_USERDEFINED: 1000,
|
|
5163
|
+
DFT_POST_CA_RESPONSE: 710,
|
|
5164
|
+
DFT_POST_CA_PUBLIC_KEY: 711,
|
|
5165
|
+
DFT_POST_CA_INFO: 712,
|
|
5166
|
+
DFT_POST_CA_DPARAMS: 713,
|
|
5167
|
+
DFT_POST_CA_CHECK_PK: 714,
|
|
5168
|
+
DFT_POST_CA_CHECK_SK: 715,
|
|
5169
|
+
DFT_ID_DG22: 122,
|
|
5104
5170
|
}
|
|
5105
5171
|
|
|
5106
5172
|
export const eVisualFieldType = {
|
|
@@ -5761,6 +5827,7 @@ export const eVisualFieldType = {
|
|
|
5761
5827
|
FT_NON_DOMICILED_INDICATOR: 702,
|
|
5762
5828
|
FT_JURISDICTION_SPECIFIC_DATA: 703,
|
|
5763
5829
|
FT_DATA_DATE_OF_EXPIRY: 704,
|
|
5830
|
+
FT_CONSUL: 705,
|
|
5764
5831
|
}
|
|
5765
5832
|
|
|
5766
5833
|
export const DocReaderOrientation = {
|
|
@@ -6114,12 +6181,14 @@ export default class DocumentReader {
|
|
|
6114
6181
|
static recognize(config: RecognizeConfig, successCallback: (response: string) => void, errorCallback?: (error: string) => void): void
|
|
6115
6182
|
static startNewPage(successCallback: (response: string) => void, errorCallback?: (error: string) => void): void
|
|
6116
6183
|
static stopScanner(successCallback: (response: string) => void, errorCallback?: (error: string) => void): void
|
|
6117
|
-
static startRFIDReader(
|
|
6118
|
-
static readRFID(
|
|
6184
|
+
static startRFIDReader(config: RFIDConfig | null, successCallback: (response: string) => void, errorCallback?: (error: string) => void): void
|
|
6185
|
+
static readRFID(config: RFIDConfig | null, successCallback: (response: string) => void, errorCallback?: (error: string) => void): void
|
|
6119
6186
|
static stopRFIDReader(successCallback: (response: string) => void, errorCallback?: (error: string) => void): void
|
|
6120
6187
|
static providePACertificates(certificates: PKDCertificate[] | null, successCallback: (response: string) => void, errorCallback?: (error: string) => void): void
|
|
6121
6188
|
static provideTACertificates(certificates: PKDCertificate[] | null, successCallback: (response: string) => void, errorCallback?: (error: string) => void): void
|
|
6122
6189
|
static provideTASignature(signature: string, successCallback: (response: string) => void, errorCallback?: (error: string) => void): void
|
|
6190
|
+
static selectPACEProtocol(protocol: PACEProtocol, successCallback: (response: string) => void, errorCallback?: (error: string) => void): void
|
|
6191
|
+
static selectCAProtocol(protocol: CAProtocol, successCallback: (response: string) => void, errorCallback?: (error: string) => void): void
|
|
6123
6192
|
static setTCCParams(params: TccParams, successCallback: (response: string) => void, errorCallback?: (error: string) => void): void
|
|
6124
6193
|
static addPKDCertificates(certificates: PKDCertificate[], successCallback: (response: string) => void, errorCallback?: (error: string) => void): void
|
|
6125
6194
|
static clearPKDCertificates(successCallback: (response: string) => void, errorCallback?: (error: string) => void): void
|
package/index.js
CHANGED
|
@@ -2205,6 +2205,48 @@ export class FinalizeCompletion {
|
|
|
2205
2205
|
}
|
|
2206
2206
|
}
|
|
2207
2207
|
|
|
2208
|
+
export class PACEProtocol {
|
|
2209
|
+
static fromJson(jsonObject) {
|
|
2210
|
+
if (jsonObject == null) return null
|
|
2211
|
+
const result = new PACEProtocol()
|
|
2212
|
+
|
|
2213
|
+
result.version = jsonObject["version"]
|
|
2214
|
+
result.stdDomainParams = jsonObject["stdDomainParams"]
|
|
2215
|
+
result.keyAlgorithm = jsonObject["keyAlgorithm"]
|
|
2216
|
+
|
|
2217
|
+
return result
|
|
2218
|
+
}
|
|
2219
|
+
}
|
|
2220
|
+
|
|
2221
|
+
export class CAProtocol {
|
|
2222
|
+
static fromJson(jsonObject) {
|
|
2223
|
+
if (jsonObject == null) return null
|
|
2224
|
+
const result = new CAProtocol()
|
|
2225
|
+
|
|
2226
|
+
result.version = jsonObject["version"]
|
|
2227
|
+
result.scheme = jsonObject["scheme"]
|
|
2228
|
+
result.keyAlgorithm = jsonObject["keyAlgorithm"]
|
|
2229
|
+
result.chipIndividual = jsonObject["chipIndividual"]
|
|
2230
|
+
|
|
2231
|
+
return result
|
|
2232
|
+
}
|
|
2233
|
+
}
|
|
2234
|
+
|
|
2235
|
+
export class RFIDConfig {
|
|
2236
|
+
static fromJson(jsonObject) {
|
|
2237
|
+
if (jsonObject == null) return null
|
|
2238
|
+
const result = new RFIDConfig()
|
|
2239
|
+
|
|
2240
|
+
result.onRequestPACertificates = jsonObject["onRequestPACertificates"]
|
|
2241
|
+
result.onRequestTACertificates = jsonObject["onRequestTACertificates"]
|
|
2242
|
+
result.onRequestTASignature = jsonObject["onRequestTASignature"]
|
|
2243
|
+
result.onRequestPACEProtocol = jsonObject["onRequestPACEProtocol"]
|
|
2244
|
+
result.onRequestCAProtocol = jsonObject["onRequestCAProtocol"]
|
|
2245
|
+
|
|
2246
|
+
return result
|
|
2247
|
+
}
|
|
2248
|
+
}
|
|
2249
|
+
|
|
2208
2250
|
// Enum
|
|
2209
2251
|
|
|
2210
2252
|
export const FontStyle = {
|
|
@@ -2812,9 +2854,9 @@ export const eRFID_NotificationCodes = {
|
|
|
2812
2854
|
RFID_NOTIFICATION_AUXILIARY_DATA_VALIDATION: 0x000D0000,
|
|
2813
2855
|
RFID_NOTIFICATION_RI_SECTOR_ID: 0x000E0000,
|
|
2814
2856
|
RFID_NOTIFICATION_BIOMETRICS_EMPTY_PLACEHOLDER: 0x000F0000,
|
|
2815
|
-
RFID_NOTIFICATION_SESSION_FILE_DATA_UPDATED:
|
|
2816
|
-
RFID_NOTIFICATION_TCC_TA_RESOURCES:
|
|
2817
|
-
RFID_NOTIFICATION_TCC_TA_SIGNATURE:
|
|
2857
|
+
RFID_NOTIFICATION_SESSION_FILE_DATA_UPDATED: 0x00100000,
|
|
2858
|
+
RFID_NOTIFICATION_TCC_TA_RESOURCES: 0x00110000,
|
|
2859
|
+
RFID_NOTIFICATION_TCC_TA_SIGNATURE: 0x00110001,
|
|
2818
2860
|
}
|
|
2819
2861
|
|
|
2820
2862
|
export const CameraPosition = {
|
|
@@ -3344,6 +3386,8 @@ export const eLDS_ParsingNotificationCodes = {
|
|
|
3344
3386
|
NTF_LDS_ICAO_CERTIFICATE_MRZ_COUNTRY_NON_MATCHING: 0x90000252,
|
|
3345
3387
|
NTF_LDS_ICAO_CERTIFICATE_ISSUER_COUNTRY_NON_UPPER_CASE: 0x90000253,
|
|
3346
3388
|
NTF_LDS_ICAO_CERTIFICATE_SUBJECT_COUNTRY_NON_UPPER_CASE: 0x90000254,
|
|
3389
|
+
NTFLDS_SI_STORAGE_CS_NONCONSISTANT: 0x91000111,
|
|
3390
|
+
NTFLDS_SI_STORAGE_CS_PACE_CAM_KEY_MISSING: 0x9100011,
|
|
3347
3391
|
}
|
|
3348
3392
|
|
|
3349
3393
|
export const eImageQualityCheckType = {
|
|
@@ -3910,6 +3954,13 @@ export const eRFID_DataFile_Type = {
|
|
|
3910
3954
|
DFT_VDS: 900,
|
|
3911
3955
|
DFT_VDSNC: 901,
|
|
3912
3956
|
DFT_USERDEFINED: 1000,
|
|
3957
|
+
DFT_POST_CA_RESPONSE: 710,
|
|
3958
|
+
DFT_POST_CA_PUBLIC_KEY: 711,
|
|
3959
|
+
DFT_POST_CA_INFO: 712,
|
|
3960
|
+
DFT_POST_CA_DPARAMS: 713,
|
|
3961
|
+
DFT_POST_CA_CHECK_PK: 714,
|
|
3962
|
+
DFT_POST_CA_CHECK_SK: 715,
|
|
3963
|
+
DFT_ID_DG22: 122,
|
|
3913
3964
|
}
|
|
3914
3965
|
|
|
3915
3966
|
export const eVisualFieldType = {
|
|
@@ -4570,6 +4621,7 @@ export const eVisualFieldType = {
|
|
|
4570
4621
|
FT_NON_DOMICILED_INDICATOR: 702,
|
|
4571
4622
|
FT_JURISDICTION_SPECIFIC_DATA: 703,
|
|
4572
4623
|
FT_DATA_DATE_OF_EXPIRY: 704,
|
|
4624
|
+
FT_CONSUL: 705,
|
|
4573
4625
|
}
|
|
4574
4626
|
|
|
4575
4627
|
export const DocReaderOrientation = {
|
|
@@ -4924,12 +4976,14 @@ DocumentReader.startScanner = (config, successCallback, errorCallback) => RNRegu
|
|
|
4924
4976
|
DocumentReader.recognize = (config, successCallback, errorCallback) => RNRegulaDocumentReader.exec("DocumentReader", "recognize", [config], successCallback, errorCallback)
|
|
4925
4977
|
DocumentReader.startNewPage = (successCallback, errorCallback) => RNRegulaDocumentReader.exec("DocumentReader", "startNewPage", [], successCallback, errorCallback)
|
|
4926
4978
|
DocumentReader.stopScanner = (successCallback, errorCallback) => RNRegulaDocumentReader.exec("DocumentReader", "stopScanner", [], successCallback, errorCallback)
|
|
4927
|
-
DocumentReader.startRFIDReader = (
|
|
4928
|
-
DocumentReader.readRFID = (
|
|
4979
|
+
DocumentReader.startRFIDReader = (config, successCallback, errorCallback) => RNRegulaDocumentReader.exec("DocumentReader", "startRFIDReader", [config], successCallback, errorCallback)
|
|
4980
|
+
DocumentReader.readRFID = (config, successCallback, errorCallback) => RNRegulaDocumentReader.exec("DocumentReader", "readRFID", [config], successCallback, errorCallback)
|
|
4929
4981
|
DocumentReader.stopRFIDReader = (successCallback, errorCallback) => RNRegulaDocumentReader.exec("DocumentReader", "stopRFIDReader", [], successCallback, errorCallback)
|
|
4930
4982
|
DocumentReader.providePACertificates = (certificates, successCallback, errorCallback) => RNRegulaDocumentReader.exec("DocumentReader", "providePACertificates", [certificates], successCallback, errorCallback)
|
|
4931
4983
|
DocumentReader.provideTACertificates = (certificates, successCallback, errorCallback) => RNRegulaDocumentReader.exec("DocumentReader", "provideTACertificates", [certificates], successCallback, errorCallback)
|
|
4932
4984
|
DocumentReader.provideTASignature = (signature, successCallback, errorCallback) => RNRegulaDocumentReader.exec("DocumentReader", "provideTASignature", [signature], successCallback, errorCallback)
|
|
4985
|
+
DocumentReader.selectPACEProtocol = (protocol, successCallback, errorCallback) => RNRegulaDocumentReader.exec("DocumentReader", "selectPACEProtocol", [protocol], successCallback, errorCallback)
|
|
4986
|
+
DocumentReader.selectCAProtocol = (protocol, successCallback, errorCallback) => RNRegulaDocumentReader.exec("DocumentReader", "selectCAProtocol", [protocol], successCallback, errorCallback)
|
|
4933
4987
|
DocumentReader.setTCCParams = (params, successCallback, errorCallback) => RNRegulaDocumentReader.exec("DocumentReader", "setTCCParams", [params], successCallback, errorCallback)
|
|
4934
4988
|
DocumentReader.addPKDCertificates = (certificates, successCallback, errorCallback) => RNRegulaDocumentReader.exec("DocumentReader", "addPKDCertificates", [certificates], successCallback, errorCallback)
|
|
4935
4989
|
DocumentReader.clearPKDCertificates = (successCallback, errorCallback) => RNRegulaDocumentReader.exec("DocumentReader", "clearPKDCertificates", [], successCallback, errorCallback)
|
|
@@ -198,6 +198,10 @@
|
|
|
198
198
|
+(NSDictionary* _Nullable)generateDocumentRequestMDL:(RGLDocumentRequestMDL* _Nullable)input;
|
|
199
199
|
+(RGLFinalizeConfig* _Nullable)finalizeConfigFromJson:(NSDictionary* _Nullable)input;
|
|
200
200
|
+(NSDictionary* _Nullable)generateFinalizeConfig:(RGLFinalizeConfig* _Nullable)input;
|
|
201
|
+
+(RGLRFIDAccessControlPACE* _Nullable)paceProtocolFromJson:(NSDictionary* _Nullable)input;
|
|
202
|
+
+(NSDictionary* _Nullable)generatePaceProtocol:(RGLRFIDAccessControlPACE* _Nullable)input;
|
|
203
|
+
+(RGLRFIDAccessControlCA* _Nullable)caProtocolFromJson:(NSDictionary* _Nullable)input;
|
|
204
|
+
+(NSDictionary* _Nullable)generateCaProtocol:(RGLRFIDAccessControlCA* _Nullable)input;
|
|
201
205
|
|
|
202
206
|
@end
|
|
203
207
|
|
|
@@ -61,22 +61,22 @@ static NSMutableArray* weakReferencesHolder;
|
|
|
61
61
|
+(NSDictionary*)generateError:(NSError*)input {
|
|
62
62
|
if(input == nil) return nil;
|
|
63
63
|
NSMutableDictionary *result = [NSMutableDictionary new];
|
|
64
|
-
|
|
64
|
+
|
|
65
65
|
result[@"code"] = [NSNumber numberWithInteger:input.code];
|
|
66
66
|
result[@"message"] = input.localizedDescription;
|
|
67
|
-
|
|
67
|
+
|
|
68
68
|
return result;
|
|
69
69
|
}
|
|
70
70
|
|
|
71
71
|
+(NSString*)generateCompletion:(NSNumber*)action :(RGLDocumentReaderResults*)results :(NSError*)error {
|
|
72
72
|
NSMutableDictionary *result = [NSMutableDictionary new];
|
|
73
73
|
int actionInt = [action intValue];
|
|
74
|
-
|
|
74
|
+
|
|
75
75
|
if(actionInt == 0 || actionInt == 2 || actionInt == 3 || actionInt == 4 || actionInt == 6)
|
|
76
76
|
result[@"results"] = [self generateDocumentReaderResults:results];
|
|
77
77
|
result[@"action"] = action;
|
|
78
78
|
result[@"error"] = [self generateError:error];
|
|
79
|
-
|
|
79
|
+
|
|
80
80
|
return [RGLWJSONConstructor dictToString: result];
|
|
81
81
|
}
|
|
82
82
|
|
|
@@ -100,11 +100,11 @@ static NSMutableArray* weakReferencesHolder;
|
|
|
100
100
|
|
|
101
101
|
+(NSString*)generateFinalizePackageCompletion:(NSNumber*)action :(RGLTransactionInfo*)info :(NSError*)error {
|
|
102
102
|
NSMutableDictionary *result = [NSMutableDictionary new];
|
|
103
|
-
|
|
103
|
+
|
|
104
104
|
result[@"action"] = action;
|
|
105
105
|
result[@"info"] = [self generateTransactionInfo:info];
|
|
106
106
|
result[@"error"] = [self generateError:error];
|
|
107
|
-
|
|
107
|
+
|
|
108
108
|
return [RGLWJSONConstructor dictToString: result];
|
|
109
109
|
}
|
|
110
110
|
|
|
@@ -158,12 +158,12 @@ static NSMutableArray* weakReferencesHolder;
|
|
|
158
158
|
if (!input) return nil;
|
|
159
159
|
if (!input[@"license"]) return nil;
|
|
160
160
|
RGLConfig *config = [[RGLConfig alloc] initWithLicenseData:[self base64Decode: input[@"license"]]];
|
|
161
|
-
|
|
161
|
+
|
|
162
162
|
if (input[@"databasePath"]) config.databasePath = input[@"databasePath"];
|
|
163
163
|
if (input[@"licenseUpdateTimeout"]) config.licenseUpdateTimeout = input[@"licenseUpdateTimeout"];
|
|
164
164
|
if (input[@"licenseUpdate"]) config.licenseUpdateCheck = [input[@"licenseUpdate"] boolValue];
|
|
165
165
|
if (input[@"delayedNNLoad"]) config.delayedNNLoadEnabled = [input[@"delayedNNLoad"] boolValue];
|
|
166
|
-
|
|
166
|
+
|
|
167
167
|
return config;
|
|
168
168
|
}
|
|
169
169
|
|
|
@@ -176,19 +176,19 @@ static NSMutableArray* weakReferencesHolder;
|
|
|
176
176
|
result[@"licenseUpdateTimeout"] = input.licenseUpdateTimeout;
|
|
177
177
|
result[@"licenseUpdate"] = @(input.licenseUpdateCheck);
|
|
178
178
|
result[@"delayedNNLoad"] = @(input.delayedNNLoadEnabled);
|
|
179
|
-
|
|
179
|
+
|
|
180
180
|
return result;
|
|
181
181
|
}
|
|
182
182
|
|
|
183
183
|
+(RGLBleConfig*)bleDeviceConfigFromJson:(NSDictionary*)input :(RGLBluetooth*)bluetooth {
|
|
184
184
|
if (!input) return nil;
|
|
185
185
|
RGLBleConfig *config = [[RGLBleConfig alloc] initWithBluetooth:bluetooth];
|
|
186
|
-
|
|
186
|
+
|
|
187
187
|
if (input[@"databasePath"]) config.databasePath = input[@"databasePath"];
|
|
188
188
|
if (input[@"licenseUpdateTimeout"]) config.licenseUpdateTimeout = input[@"licenseUpdateTimeout"];
|
|
189
189
|
if (input[@"licenseUpdate"]) config.licenseUpdateCheck = [input[@"licenseUpdate"] boolValue];
|
|
190
190
|
if (input[@"delayedNNLoad"]) config.delayedNNLoadEnabled = [input[@"delayedNNLoad"] boolValue];
|
|
191
|
-
|
|
191
|
+
|
|
192
192
|
return config;
|
|
193
193
|
}
|
|
194
194
|
|
|
@@ -223,7 +223,7 @@ static NSMutableArray* weakReferencesHolder;
|
|
|
223
223
|
RGLRecognizeConfig *config = [RGLRecognizeConfig alloc];
|
|
224
224
|
if (input[@"scenario"]) config = [config initWithScenario:input[@"scenario"]];
|
|
225
225
|
else config = [config initWithOnlineProcessingConfig:[self onlineProcessingConfigFromJson:input[@"onlineProcessingConfig"]]];
|
|
226
|
-
|
|
226
|
+
|
|
227
227
|
if (input[@"image"]) config.image = [RGLWJSONConstructor imageWithBase64:input[@"image"]];
|
|
228
228
|
if (input[@"data"]) config.imageData = [RGLWJSONConstructor base64Decode:input[@"data"]];
|
|
229
229
|
if (input[@"images"]) {
|
|
@@ -238,13 +238,13 @@ static NSMutableArray* weakReferencesHolder;
|
|
|
238
238
|
[imageInputs addObject:[RGLWJSONConstructor imageInputFromJson: imageInput]];
|
|
239
239
|
config.imageInputs = imageInputs;
|
|
240
240
|
}
|
|
241
|
-
|
|
241
|
+
|
|
242
242
|
if (input[@"scenario"]) config.scenario = input[@"scenario"];
|
|
243
243
|
if (input[@"livePortrait"]) config.livePortrait = [self imageWithBase64:input[@"livePortrait"]];
|
|
244
244
|
if (input[@"extPortrait"]) config.extPortrait = [self imageWithBase64:input[@"extPortrait"]];
|
|
245
245
|
if (input[@"oneShotIdentification"]) config.oneShotIdentification = input[@"oneShotIdentification"];
|
|
246
246
|
if (input[@"dtc"]) config.dtc = [RGLWJSONConstructor base64Decode:input[@"dtc"]];
|
|
247
|
-
|
|
247
|
+
|
|
248
248
|
return config;
|
|
249
249
|
}
|
|
250
250
|
|
|
@@ -533,10 +533,10 @@ static NSMutableArray* weakReferencesHolder;
|
|
|
533
533
|
|
|
534
534
|
+(RGLRFIDParams*)rfidParamsFromJson:(NSDictionary*)input {
|
|
535
535
|
RGLRFIDParams* result = [RGLRFIDParams new];
|
|
536
|
-
|
|
536
|
+
|
|
537
537
|
if([input valueForKey:@"paIgnoreNotificationCodes"] != nil)
|
|
538
538
|
result.paIgnoreNotificationCodes = [input valueForKey:@"paIgnoreNotificationCodes"];
|
|
539
|
-
|
|
539
|
+
|
|
540
540
|
return result;
|
|
541
541
|
}
|
|
542
542
|
|
|
@@ -561,7 +561,7 @@ static NSMutableArray* weakReferencesHolder;
|
|
|
561
561
|
|
|
562
562
|
+(RGLFaceAPIParams*)faceAPIParamsFromJson:(NSDictionary*)input {
|
|
563
563
|
RGLFaceAPIParams* result = [RGLFaceAPIParams defaultParams];
|
|
564
|
-
|
|
564
|
+
|
|
565
565
|
if([input valueForKey:@"url"] != nil)
|
|
566
566
|
result.url = [input valueForKey:@"url"];
|
|
567
567
|
if([input valueForKey:@"mode"] != nil)
|
|
@@ -578,7 +578,7 @@ static NSMutableArray* weakReferencesHolder;
|
|
|
578
578
|
result.proxyPassword = [input valueForKey:@"proxyPassword"];
|
|
579
579
|
if([input valueForKey:@"proxyType"] != nil)
|
|
580
580
|
result.proxyType = [input valueForKey:@"proxyType"];
|
|
581
|
-
|
|
581
|
+
|
|
582
582
|
return result;
|
|
583
583
|
}
|
|
584
584
|
|
|
@@ -600,14 +600,14 @@ static NSMutableArray* weakReferencesHolder;
|
|
|
600
600
|
|
|
601
601
|
+(RGLFaceAPISearchParams*)faceAPISearchParamsFromJson:(NSDictionary*)input {
|
|
602
602
|
RGLFaceAPISearchParams* result = [RGLFaceAPISearchParams new];
|
|
603
|
-
|
|
603
|
+
|
|
604
604
|
if([input valueForKey:@"limit"] != nil)
|
|
605
605
|
result.limit = [input valueForKey:@"limit"];
|
|
606
606
|
if([input valueForKey:@"threshold"] != nil)
|
|
607
607
|
result.threshold = [input valueForKey:@"threshold"];
|
|
608
608
|
if([input valueForKey:@"groupIds"] != nil)
|
|
609
609
|
result.groupIDs = [input valueForKey:@"groupIds"];
|
|
610
|
-
|
|
610
|
+
|
|
611
611
|
return result;
|
|
612
612
|
}
|
|
613
613
|
|
|
@@ -1055,7 +1055,7 @@ static NSMutableArray* weakReferencesHolder;
|
|
|
1055
1055
|
result[@"notificationCode"] = @(input.code & -0x10000);
|
|
1056
1056
|
result[@"dataFileType"] = @((int)input.attachment);
|
|
1057
1057
|
result[@"progress"] = @((int)input.value);
|
|
1058
|
-
|
|
1058
|
+
|
|
1059
1059
|
return [RGLWJSONConstructor dictToString: result];
|
|
1060
1060
|
}
|
|
1061
1061
|
|
|
@@ -1714,10 +1714,10 @@ static NSMutableArray* weakReferencesHolder;
|
|
|
1714
1714
|
+(NSDictionary*)generateDataField:(RGLDataField*)input {
|
|
1715
1715
|
NSMutableDictionary *result = [NSMutableDictionary new];
|
|
1716
1716
|
if(input == nil) return nil;
|
|
1717
|
-
|
|
1717
|
+
|
|
1718
1718
|
result[@"data"] = input.data;
|
|
1719
1719
|
result[@"fieldType"] = @(input.fieldType);
|
|
1720
|
-
|
|
1720
|
+
|
|
1721
1721
|
return result;
|
|
1722
1722
|
}
|
|
1723
1723
|
|
|
@@ -1835,7 +1835,7 @@ static NSMutableArray* weakReferencesHolder;
|
|
|
1835
1835
|
for(NSDictionary* item in [input valueForKey:@"checks"])
|
|
1836
1836
|
[array addObject:[self authenticityCheckFromJson:item]];
|
|
1837
1837
|
RGLDocumentReaderAuthenticityResult* result = [[RGLDocumentReaderAuthenticityResult alloc]
|
|
1838
|
-
|
|
1838
|
+
initWithAuthenticityChecks:array];
|
|
1839
1839
|
if (input[@"status"]) [result setValue:input[@"status"] forKey:@"_security"];
|
|
1840
1840
|
return result;
|
|
1841
1841
|
}
|
|
@@ -2434,7 +2434,7 @@ static NSMutableArray* weakReferencesHolder;
|
|
|
2434
2434
|
for (NSString* key in map) {
|
|
2435
2435
|
[result addField:key intentToRetain:[map[key] integerValue]];
|
|
2436
2436
|
}
|
|
2437
|
-
|
|
2437
|
+
|
|
2438
2438
|
return result;
|
|
2439
2439
|
|
|
2440
2440
|
}
|
|
@@ -2459,7 +2459,7 @@ static NSMutableArray* weakReferencesHolder;
|
|
|
2459
2459
|
[nameSpaces addObject:[self nameSpaceMDLFromJson: item]];
|
|
2460
2460
|
}
|
|
2461
2461
|
[result setValue:nameSpaces forKey:@"nameSpaces"];
|
|
2462
|
-
|
|
2462
|
+
|
|
2463
2463
|
return result;
|
|
2464
2464
|
|
|
2465
2465
|
}
|
|
@@ -2632,7 +2632,7 @@ static NSMutableArray* weakReferencesHolder;
|
|
|
2632
2632
|
if (input[@"video"]) result.video = [input[@"video"] boolValue];
|
|
2633
2633
|
if (input[@"rfidSession"]) result.rfidSession = [input[@"rfidSession"] boolValue];
|
|
2634
2634
|
if (input[@"mdlSession"]) result.mdlSession = [input[@"mdlSession"] boolValue];
|
|
2635
|
-
|
|
2635
|
+
|
|
2636
2636
|
return result;
|
|
2637
2637
|
}
|
|
2638
2638
|
|
|
@@ -2648,6 +2648,52 @@ static NSMutableArray* weakReferencesHolder;
|
|
|
2648
2648
|
return result;
|
|
2649
2649
|
}
|
|
2650
2650
|
|
|
2651
|
+
+(RGLRFIDAccessControlPACE*)paceProtocolFromJson:(NSDictionary*)input {
|
|
2652
|
+
NSMutableDictionary* json = input.mutableCopy;
|
|
2653
|
+
|
|
2654
|
+
json[@"Version"] = input[@"version"];
|
|
2655
|
+
json[@"StdDomainParams"] = input[@"stdDomainParams"];
|
|
2656
|
+
json[@"KeyAlgorithm"] = input[@"keyAlgorithm"];
|
|
2657
|
+
#pragma clang diagnostic ignored "-Warc-performSelector-leaks"
|
|
2658
|
+
return [[RGLRFIDAccessControlPACE alloc] performSelector:NSSelectorFromString(@"initWithJSON:") withObject:json];
|
|
2659
|
+
#pragma clang diagnostic pop
|
|
2660
|
+
}
|
|
2661
|
+
|
|
2662
|
+
+(NSDictionary*)generatePaceProtocol:(RGLRFIDAccessControlPACE*)input {
|
|
2663
|
+
if(input == nil) return nil;
|
|
2664
|
+
NSMutableDictionary* result = [NSMutableDictionary new];
|
|
2665
|
+
|
|
2666
|
+
result[@"version"] = [NSString stringWithFormat:@"%ld", (long)input.version];
|
|
2667
|
+
result[@"stdDomainParams"] = input.stdDomainParams;
|
|
2668
|
+
result[@"keyAlgorithm"] = input.keyAlgorithm;
|
|
2669
|
+
|
|
2670
|
+
return result;
|
|
2671
|
+
}
|
|
2672
|
+
|
|
2673
|
+
+(RGLRFIDAccessControlCA*)caProtocolFromJson:(NSDictionary*)input {
|
|
2674
|
+
NSMutableDictionary* json = input.mutableCopy;
|
|
2675
|
+
|
|
2676
|
+
json[@"Version"] = input[@"version"];
|
|
2677
|
+
json[@"Scheme"] = input[@"scheme"];
|
|
2678
|
+
json[@"KeyAlgorithm"] = input[@"keyAlgorithm"];
|
|
2679
|
+
json[@"ChipIndividual"] = input[@"chipIndividual"];
|
|
2680
|
+
#pragma clang diagnostic ignored "-Warc-performSelector-leaks"
|
|
2681
|
+
return [[RGLRFIDAccessControlCA alloc] performSelector:NSSelectorFromString(@"initWithJSON:") withObject:json];
|
|
2682
|
+
#pragma clang diagnostic pop
|
|
2683
|
+
}
|
|
2684
|
+
|
|
2685
|
+
+(NSDictionary*)generateCaProtocol:(RGLRFIDAccessControlCA*)input {
|
|
2686
|
+
if(input == nil) return nil;
|
|
2687
|
+
NSMutableDictionary* result = [NSMutableDictionary new];
|
|
2688
|
+
|
|
2689
|
+
result[@"version"] = [NSString stringWithFormat:@"%ld", (long)input.version];
|
|
2690
|
+
result[@"scheme"] = input.scheme;
|
|
2691
|
+
result[@"keyAlgorithm"] = input.keyAlgorithm;
|
|
2692
|
+
result[@"chipIndividual"] = [NSNumber numberWithBool: input.chipIndividual];
|
|
2693
|
+
|
|
2694
|
+
return result;
|
|
2695
|
+
}
|
|
2696
|
+
|
|
2651
2697
|
+(RGLDocumentReaderResults*)documentReaderResultsFromJson:(NSDictionary*)input {
|
|
2652
2698
|
NSMutableArray<RGLDocumentReaderDocumentType*>* documentType = [NSMutableArray new];
|
|
2653
2699
|
for(NSDictionary* item in [input valueForKey:@"documentType"]){
|
|
@@ -2671,26 +2717,26 @@ static NSMutableArray* weakReferencesHolder;
|
|
|
2671
2717
|
}
|
|
2672
2718
|
|
|
2673
2719
|
RGLDocumentReaderResults* result = [[RGLDocumentReaderResults alloc]
|
|
2674
|
-
|
|
2675
|
-
|
|
2676
|
-
|
|
2677
|
-
|
|
2678
|
-
|
|
2679
|
-
|
|
2680
|
-
|
|
2681
|
-
|
|
2682
|
-
|
|
2683
|
-
|
|
2684
|
-
|
|
2685
|
-
|
|
2686
|
-
|
|
2687
|
-
|
|
2688
|
-
|
|
2689
|
-
|
|
2690
|
-
|
|
2691
|
-
|
|
2692
|
-
|
|
2693
|
-
|
|
2720
|
+
initWithDocumentTypes:documentType
|
|
2721
|
+
textResult:[self documentReaderTextResultFromJson: [input valueForKey:@"textResult"]]
|
|
2722
|
+
graphicResult:[self documentReaderGraphicResultFromJson: [input valueForKey:@"graphicResult"]]
|
|
2723
|
+
rawResult:[input valueForKey:@"rawResult"]
|
|
2724
|
+
documentPosition:documentPosition
|
|
2725
|
+
barcodePosition:barcodePosition
|
|
2726
|
+
mrzPosition:mrzPosition
|
|
2727
|
+
imageQualityGroup:imageQuality
|
|
2728
|
+
authenticityResults:[self documentReaderAuthenticityResultFromJson: [input valueForKey:@"authenticityResult"]]
|
|
2729
|
+
rfidSessionData:[self rfidSessionDataFromJson: [input valueForKey:@"rfidSessionData"]]
|
|
2730
|
+
chipPage:[[input valueForKey:@"chipPage"] integerValue]
|
|
2731
|
+
barcodeResult:[self documentReaderBarcodeResultFromJson: [input valueForKey:@"barcodeResult"]]
|
|
2732
|
+
vdsncData:[self vdsncDataFromJson: [input valueForKey:@"vdsncData"]]
|
|
2733
|
+
vdsData:[self vdsDataFromJson: [input valueForKey:@"vdsData"]]
|
|
2734
|
+
status:[self documentReaderResultsStatusFromJson: [input valueForKey:@"status"]]
|
|
2735
|
+
processingFinished:[[input valueForKey:@"processingFinishedStatus"] integerValue]
|
|
2736
|
+
morePagesAvailable:[[input valueForKey:@"morePagesAvailable"] integerValue]
|
|
2737
|
+
elapsedTime:[[input valueForKey:@"elapsedTime"] integerValue]
|
|
2738
|
+
elapsedTimeRFID:[[input valueForKey:@"elapsedTimeRFID"] integerValue]
|
|
2739
|
+
transactionInfo:[self transactionInfoFromJson:[input valueForKey:@"transactionInfo"]]];
|
|
2694
2740
|
|
|
2695
2741
|
[result setValue:[RGLWJSONConstructor base64Decode:input[@"dtcData"]] forKey:@"dtcData"];
|
|
2696
2742
|
[result setValue:input[@"bsiTr03135Results"] forKey:@"bsiTr03135Results"];
|
package/ios/RGLWMain.h
CHANGED
|
@@ -18,10 +18,6 @@ extern UIViewController*_Nonnull(^ _Nonnull RGLWRootViewController)(void);
|
|
|
18
18
|
:(RGLWCallback _Nonnull)callback
|
|
19
19
|
:(RGLWEventSender _Nonnull)eventSender;
|
|
20
20
|
|
|
21
|
-
@property NSNumber* _Nonnull doRequestPACertificates;
|
|
22
|
-
@property NSNumber* _Nonnull doRequestTACertificates;
|
|
23
|
-
@property NSNumber* _Nonnull doRequestTASignature;
|
|
24
|
-
|
|
25
21
|
@end
|
|
26
22
|
|
|
27
23
|
static NSString* _Nonnull completionEvent = @"completion";
|
|
@@ -32,5 +28,7 @@ static NSString* _Nonnull rfidOnRetryReadChipEvent = @"rfidOnRetryReadChipEvent"
|
|
|
32
28
|
static NSString* _Nonnull paCertificateCompletionEvent = @"pa_certificate_completion";
|
|
33
29
|
static NSString* _Nonnull taCertificateCompletionEvent = @"ta_certificate_completion";
|
|
34
30
|
static NSString* _Nonnull taSignatureCompletionEvent = @"ta_signature_completion";
|
|
31
|
+
static NSString* _Nonnull paceProtocolCompletionEvent = @"paceProtocolCompletionEvent";
|
|
32
|
+
static NSString* _Nonnull caProtocolCompletionEvent = @"caProtocolCompletionEvent";
|
|
35
33
|
static NSString* _Nonnull drVideoEncoderCompletionEvent = @"video_encoder_completion";
|
|
36
34
|
static NSString* _Nonnull drOnCustomButtonTappedEvent = @"onCustomButtonTappedEvent";
|
package/ios/RGLWMain.m
CHANGED
|
@@ -41,12 +41,14 @@
|
|
|
41
41
|
@"recognize": ^{ [self recognize :args[0]]; },
|
|
42
42
|
@"startNewPage": ^{ [self startNewPage]; },
|
|
43
43
|
@"stopScanner": ^{ [self stopScanner]; },
|
|
44
|
-
@"startRFIDReader": ^{ [self startRFIDReader :args[0]
|
|
45
|
-
@"readRFID": ^{ [self readRFID :args[0]
|
|
44
|
+
@"startRFIDReader": ^{ [self startRFIDReader :args[0]]; },
|
|
45
|
+
@"readRFID": ^{ [self readRFID :args[0]]; },
|
|
46
46
|
@"stopRFIDReader": ^{ [self stopRFIDReader]; },
|
|
47
47
|
@"providePACertificates": ^{ [self providePACertificates :args[0]]; },
|
|
48
48
|
@"provideTACertificates": ^{ [self provideTACertificates :args[0]]; },
|
|
49
49
|
@"provideTASignature": ^{ [self provideTASignature :args[0]]; },
|
|
50
|
+
@"selectPACEProtocol": ^{ [self selectPACEProtocol :args[0]]; },
|
|
51
|
+
@"selectCAProtocol": ^{ [self selectCAProtocol :args[0]]; },
|
|
50
52
|
@"setTCCParams": ^{ [self setTCCParams :args[0] :callback]; },
|
|
51
53
|
@"addPKDCertificates": ^{ [self addPKDCertificates :args[0]]; },
|
|
52
54
|
@"clearPKDCertificates": ^{ [self clearPKDCertificates]; },
|
|
@@ -249,19 +251,15 @@ static NSDictionary* headers;
|
|
|
249
251
|
});
|
|
250
252
|
}
|
|
251
253
|
|
|
252
|
-
+(void)startRFIDReader:(
|
|
253
|
-
|
|
254
|
-
this.doRequestTACertificates = taCert;
|
|
255
|
-
this.doRequestTASignature = taSig;
|
|
254
|
+
+(void)startRFIDReader:(NSDictionary*)config {
|
|
255
|
+
rfidReaderRequest = config;
|
|
256
256
|
dispatch_async(dispatch_get_main_queue(), ^{
|
|
257
257
|
[RGLDocReader.shared startRFIDReaderFromPresenter:RGLWRootViewController() completion:[self completion]];
|
|
258
258
|
});
|
|
259
259
|
}
|
|
260
260
|
|
|
261
|
-
+(void)readRFID:(
|
|
262
|
-
|
|
263
|
-
this.doRequestTACertificates = taCert;
|
|
264
|
-
this.doRequestTASignature = taSig;
|
|
261
|
+
+(void)readRFID:(NSDictionary*)config {
|
|
262
|
+
rfidReaderRequest = config;
|
|
265
263
|
[RGLDocReader.shared readRFID:^(RGLRFIDNotificationAction notificationAction, RGLRFIDNotify* _Nullable notification) {
|
|
266
264
|
if (notification != nil) sendEvent(rfidOnProgressEvent, [RGLWJSONConstructor generateDocumentReaderNotification:notification]);
|
|
267
265
|
} completion :^(RGLRFIDCompleteAction action, RGLDocumentReaderResults * _Nullable results, NSError * _Nullable error, RGLRFIDErrorCodes errorCode) {
|
|
@@ -291,6 +289,14 @@ static NSDictionary* headers;
|
|
|
291
289
|
taSignatureCompletion([RGLWJSONConstructor base64Decode:signature]);
|
|
292
290
|
}
|
|
293
291
|
|
|
292
|
+
+(void)selectPACEProtocol:(NSDictionary*)protocol {
|
|
293
|
+
paceProtocolCompletion([RGLWJSONConstructor paceProtocolFromJson:protocol]);
|
|
294
|
+
}
|
|
295
|
+
|
|
296
|
+
+(void)selectCAProtocol:(NSDictionary*)protocol {
|
|
297
|
+
caProtocolCompletion([RGLWJSONConstructor caProtocolFromJson:protocol]);
|
|
298
|
+
}
|
|
299
|
+
|
|
294
300
|
+(void)setTCCParams:(NSDictionary*)params :(RGLWCallback)callback {
|
|
295
301
|
[RGLDocReader.shared setTCCParams:[RGLWJSONConstructor tccParamsFromJson:params] completion:^(BOOL success, NSError * _Nullable error) {
|
|
296
302
|
callback([RGLWJSONConstructor generateSuccessCompletion:success :error]);
|
|
@@ -626,9 +632,13 @@ RGLWCallback savedCallbackForBluetoothResult;
|
|
|
626
632
|
RGLRFIDCertificatesCallback paCertificateCompletion;
|
|
627
633
|
RGLRFIDCertificatesCallback taCertificateCompletion;
|
|
628
634
|
RGLWRFIDSignatureCallback taSignatureCompletion;
|
|
635
|
+
RGLRFIDAccessControlPACECallback paceProtocolCompletion;
|
|
636
|
+
RGLRFIDAccessControlCACallback caProtocolCompletion;
|
|
637
|
+
|
|
638
|
+
NSDictionary* rfidReaderRequest;
|
|
629
639
|
|
|
630
640
|
- (void)onRequestPACertificatesWithSerial:(NSData *)serialNumber issuer:(RGLPAResourcesIssuer *)issuer callback:(RGLRFIDCertificatesCallback)callback {
|
|
631
|
-
if([
|
|
641
|
+
if (rfidReaderRequest && [rfidReaderRequest[@"paCertificates"] boolValue]) {
|
|
632
642
|
paCertificateCompletion = callback;
|
|
633
643
|
sendEvent(paCertificateCompletionEvent, [RGLWJSONConstructor generatePACertificateCompletion:serialNumber :issuer]);
|
|
634
644
|
} else {
|
|
@@ -638,7 +648,7 @@ RGLWRFIDSignatureCallback taSignatureCompletion;
|
|
|
638
648
|
}
|
|
639
649
|
|
|
640
650
|
- (void)onRequestTACertificatesWithKey:(NSString *)keyCAR callback:(RGLRFIDCertificatesCallback)callback {
|
|
641
|
-
if([
|
|
651
|
+
if (rfidReaderRequest && [rfidReaderRequest[@"taCertificates"] boolValue]) {
|
|
642
652
|
taCertificateCompletion = callback;
|
|
643
653
|
sendEvent(taCertificateCompletionEvent, keyCAR);
|
|
644
654
|
} else {
|
|
@@ -648,7 +658,7 @@ RGLWRFIDSignatureCallback taSignatureCompletion;
|
|
|
648
658
|
}
|
|
649
659
|
|
|
650
660
|
- (void)onRequestTASignatureWithChallenge:(RGLTAChallenge *)challenge callback:(void(^)(NSData *signature))callback {
|
|
651
|
-
if([
|
|
661
|
+
if (rfidReaderRequest && [rfidReaderRequest[@"taSignature"] boolValue]) {
|
|
652
662
|
taSignatureCompletion = callback;
|
|
653
663
|
sendEvent(taSignatureCompletionEvent, [RGLWJSONConstructor dictToString: [RGLWJSONConstructor generateTAChallenge:challenge]]);
|
|
654
664
|
} else {
|
|
@@ -657,6 +667,32 @@ RGLWRFIDSignatureCallback taSignatureCompletion;
|
|
|
657
667
|
}
|
|
658
668
|
}
|
|
659
669
|
|
|
670
|
+
- (void)onRequestPACEProtocolWithOptions:(NSArray<RGLRFIDAccessControlPACE*>*)protocols callback:(RGLRFIDAccessControlPACECallback)callback {
|
|
671
|
+
if (rfidReaderRequest && [rfidReaderRequest[@"paceProtocol"] boolValue]) {
|
|
672
|
+
paceProtocolCompletion = callback;
|
|
673
|
+
NSMutableArray *array = [NSMutableArray new];
|
|
674
|
+
for(RGLRFIDAccessControlPACE* item in protocols)
|
|
675
|
+
[array addObject:[RGLWJSONConstructor generatePaceProtocol:item]];
|
|
676
|
+
sendEvent(paceProtocolCompletionEvent, [RGLWJSONConstructor arrayToString: array]);
|
|
677
|
+
} else {
|
|
678
|
+
paceProtocolCompletion = nil;
|
|
679
|
+
callback(nil);
|
|
680
|
+
}
|
|
681
|
+
}
|
|
682
|
+
|
|
683
|
+
- (void)onRequestCAProtocolWithOptions:(NSArray<RGLRFIDAccessControlCA*>*)protocols callback:(RGLRFIDAccessControlCACallback)callback {
|
|
684
|
+
if (rfidReaderRequest && [rfidReaderRequest[@"caProtocol"] boolValue]) {
|
|
685
|
+
caProtocolCompletion = callback;
|
|
686
|
+
NSMutableArray *array = [NSMutableArray new];
|
|
687
|
+
for(RGLRFIDAccessControlCA* item in protocols)
|
|
688
|
+
[array addObject:[RGLWJSONConstructor generateCaProtocol:item]];
|
|
689
|
+
sendEvent(caProtocolCompletionEvent, [RGLWJSONConstructor arrayToString: array]);
|
|
690
|
+
} else {
|
|
691
|
+
caProtocolCompletionEvent = nil;
|
|
692
|
+
callback(nil);
|
|
693
|
+
}
|
|
694
|
+
}
|
|
695
|
+
|
|
660
696
|
- (void)didChipConnected {
|
|
661
697
|
sendEvent(rfidOnChipDetectedEvent, @"");
|
|
662
698
|
}
|
package/package.json
CHANGED