petrus-react-native 0.1.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (163) hide show
  1. package/PetrusReactNative.podspec +20 -0
  2. package/android/build.gradle +64 -0
  3. package/android/src/main/AndroidManifest.xml +4 -0
  4. package/android/src/main/java/com/petrusreactnative/PDF417ScanSession.kt +86 -0
  5. package/android/src/main/java/com/petrusreactnative/PassportScanSession.kt +137 -0
  6. package/android/src/main/java/com/petrusreactnative/PetrusCameraView.kt +146 -0
  7. package/android/src/main/java/com/petrusreactnative/PetrusCameraViewManager.kt +93 -0
  8. package/android/src/main/java/com/petrusreactnative/PetrusOverlayView.kt +87 -0
  9. package/android/src/main/java/com/petrusreactnative/PetrusReactNativeModule.kt +253 -0
  10. package/android/src/main/java/com/petrusreactnative/PetrusReactNativePackage.kt +38 -0
  11. package/android/src/main/java/com/petrusreactnative/VehicleRegistrationScanSession.kt +119 -0
  12. package/android/src/main/java/com/petrusreactnative/events/CapturedEvent.kt +30 -0
  13. package/android/src/main/java/com/petrusreactnative/events/DocumentDetectedEvent.kt +49 -0
  14. package/android/src/main/java/com/petrusreactnative/events/FrameMetadataEvent.kt +24 -0
  15. package/android/src/main/java/com/petrusreactnative/mrz/PassportResultMapping.kt +54 -0
  16. package/android/src/main/java/com/petrusreactnative/ocr/OCRResultMapping.kt +52 -0
  17. package/android/src/main/java/com/petrusreactnative/pdf417/SouthAfricanDriversLicenseResultMapping.kt +80 -0
  18. package/android/src/main/java/com/petrusreactnative/sa/SouthAfricanIDResultMapping.kt +50 -0
  19. package/android/src/main/java/com/petrusreactnative/vehicle/VehicleRegistrationResultMapping.kt +72 -0
  20. package/ios/PetrusReactNative.h +5 -0
  21. package/ios/PetrusReactNative.mm +21 -0
  22. package/lib/module/NativePetrusReactNative.js +5 -0
  23. package/lib/module/NativePetrusReactNative.js.map +1 -0
  24. package/lib/module/PetrusCameraView.js +6 -0
  25. package/lib/module/PetrusCameraView.js.map +1 -0
  26. package/lib/module/PetrusCameraView.native.js +24 -0
  27. package/lib/module/PetrusCameraView.native.js.map +1 -0
  28. package/lib/module/PetrusCameraViewNativeComponent.ts +47 -0
  29. package/lib/module/cameraPermissions.js +9 -0
  30. package/lib/module/cameraPermissions.js.map +1 -0
  31. package/lib/module/cameraPermissions.native.js +10 -0
  32. package/lib/module/cameraPermissions.native.js.map +1 -0
  33. package/lib/module/getPipelineVersion.js +6 -0
  34. package/lib/module/getPipelineVersion.js.map +1 -0
  35. package/lib/module/getPipelineVersion.native.js +7 -0
  36. package/lib/module/getPipelineVersion.native.js.map +1 -0
  37. package/lib/module/index.js +45 -0
  38. package/lib/module/index.js.map +1 -0
  39. package/lib/module/package.json +1 -0
  40. package/lib/module/parseMRZ.js +6 -0
  41. package/lib/module/parseMRZ.js.map +1 -0
  42. package/lib/module/parseMRZ.native.js +12 -0
  43. package/lib/module/parseMRZ.native.js.map +1 -0
  44. package/lib/module/parseSouthAfricanDriversLicense.js +6 -0
  45. package/lib/module/parseSouthAfricanDriversLicense.js.map +1 -0
  46. package/lib/module/parseSouthAfricanDriversLicense.native.js +12 -0
  47. package/lib/module/parseSouthAfricanDriversLicense.native.js.map +1 -0
  48. package/lib/module/parseSouthAfricanID.js +6 -0
  49. package/lib/module/parseSouthAfricanID.js.map +1 -0
  50. package/lib/module/parseSouthAfricanID.native.js +8 -0
  51. package/lib/module/parseSouthAfricanID.native.js.map +1 -0
  52. package/lib/module/parseVehicleRegistration.js +6 -0
  53. package/lib/module/parseVehicleRegistration.js.map +1 -0
  54. package/lib/module/parseVehicleRegistration.native.js +8 -0
  55. package/lib/module/parseVehicleRegistration.native.js.map +1 -0
  56. package/lib/module/recognizeText.js +6 -0
  57. package/lib/module/recognizeText.js.map +1 -0
  58. package/lib/module/recognizeText.native.js +8 -0
  59. package/lib/module/recognizeText.native.js.map +1 -0
  60. package/lib/module/scanPDF417.js +6 -0
  61. package/lib/module/scanPDF417.js.map +1 -0
  62. package/lib/module/scanPDF417.native.js +8 -0
  63. package/lib/module/scanPDF417.native.js.map +1 -0
  64. package/lib/module/scanPassport.js +6 -0
  65. package/lib/module/scanPassport.js.map +1 -0
  66. package/lib/module/scanPassport.native.js +13 -0
  67. package/lib/module/scanPassport.native.js.map +1 -0
  68. package/lib/module/scanSouthAfricanDriversLicense.js +6 -0
  69. package/lib/module/scanSouthAfricanDriversLicense.js.map +1 -0
  70. package/lib/module/scanSouthAfricanDriversLicense.native.js +12 -0
  71. package/lib/module/scanSouthAfricanDriversLicense.native.js.map +1 -0
  72. package/lib/module/scanVehicleRegistration.js +6 -0
  73. package/lib/module/scanVehicleRegistration.js.map +1 -0
  74. package/lib/module/scanVehicleRegistration.native.js +13 -0
  75. package/lib/module/scanVehicleRegistration.native.js.map +1 -0
  76. package/lib/module/types.js +2 -0
  77. package/lib/module/types.js.map +1 -0
  78. package/lib/typescript/package.json +1 -0
  79. package/lib/typescript/src/NativePetrusReactNative.d.ts +271 -0
  80. package/lib/typescript/src/NativePetrusReactNative.d.ts.map +1 -0
  81. package/lib/typescript/src/PetrusCameraView.d.ts +10 -0
  82. package/lib/typescript/src/PetrusCameraView.d.ts.map +1 -0
  83. package/lib/typescript/src/PetrusCameraView.native.d.ts +4 -0
  84. package/lib/typescript/src/PetrusCameraView.native.d.ts.map +1 -0
  85. package/lib/typescript/src/PetrusCameraViewNativeComponent.d.ts +38 -0
  86. package/lib/typescript/src/PetrusCameraViewNativeComponent.d.ts.map +1 -0
  87. package/lib/typescript/src/cameraPermissions.d.ts +4 -0
  88. package/lib/typescript/src/cameraPermissions.d.ts.map +1 -0
  89. package/lib/typescript/src/cameraPermissions.native.d.ts +4 -0
  90. package/lib/typescript/src/cameraPermissions.native.d.ts.map +1 -0
  91. package/lib/typescript/src/getPipelineVersion.d.ts +2 -0
  92. package/lib/typescript/src/getPipelineVersion.d.ts.map +1 -0
  93. package/lib/typescript/src/getPipelineVersion.native.d.ts +2 -0
  94. package/lib/typescript/src/getPipelineVersion.native.d.ts.map +1 -0
  95. package/lib/typescript/src/index.d.ts +45 -0
  96. package/lib/typescript/src/index.d.ts.map +1 -0
  97. package/lib/typescript/src/parseMRZ.d.ts +3 -0
  98. package/lib/typescript/src/parseMRZ.d.ts.map +1 -0
  99. package/lib/typescript/src/parseMRZ.native.d.ts +8 -0
  100. package/lib/typescript/src/parseMRZ.native.d.ts.map +1 -0
  101. package/lib/typescript/src/parseSouthAfricanDriversLicense.d.ts +3 -0
  102. package/lib/typescript/src/parseSouthAfricanDriversLicense.d.ts.map +1 -0
  103. package/lib/typescript/src/parseSouthAfricanDriversLicense.native.d.ts +8 -0
  104. package/lib/typescript/src/parseSouthAfricanDriversLicense.native.d.ts.map +1 -0
  105. package/lib/typescript/src/parseSouthAfricanID.d.ts +3 -0
  106. package/lib/typescript/src/parseSouthAfricanID.d.ts.map +1 -0
  107. package/lib/typescript/src/parseSouthAfricanID.native.d.ts +4 -0
  108. package/lib/typescript/src/parseSouthAfricanID.native.d.ts.map +1 -0
  109. package/lib/typescript/src/parseVehicleRegistration.d.ts +3 -0
  110. package/lib/typescript/src/parseVehicleRegistration.d.ts.map +1 -0
  111. package/lib/typescript/src/parseVehicleRegistration.native.d.ts +4 -0
  112. package/lib/typescript/src/parseVehicleRegistration.native.d.ts.map +1 -0
  113. package/lib/typescript/src/recognizeText.d.ts +3 -0
  114. package/lib/typescript/src/recognizeText.d.ts.map +1 -0
  115. package/lib/typescript/src/recognizeText.native.d.ts +4 -0
  116. package/lib/typescript/src/recognizeText.native.d.ts.map +1 -0
  117. package/lib/typescript/src/scanPDF417.d.ts +3 -0
  118. package/lib/typescript/src/scanPDF417.d.ts.map +1 -0
  119. package/lib/typescript/src/scanPDF417.native.d.ts +4 -0
  120. package/lib/typescript/src/scanPDF417.native.d.ts.map +1 -0
  121. package/lib/typescript/src/scanPassport.d.ts +3 -0
  122. package/lib/typescript/src/scanPassport.d.ts.map +1 -0
  123. package/lib/typescript/src/scanPassport.native.d.ts +9 -0
  124. package/lib/typescript/src/scanPassport.native.d.ts.map +1 -0
  125. package/lib/typescript/src/scanSouthAfricanDriversLicense.d.ts +3 -0
  126. package/lib/typescript/src/scanSouthAfricanDriversLicense.d.ts.map +1 -0
  127. package/lib/typescript/src/scanSouthAfricanDriversLicense.native.d.ts +8 -0
  128. package/lib/typescript/src/scanSouthAfricanDriversLicense.native.d.ts.map +1 -0
  129. package/lib/typescript/src/scanVehicleRegistration.d.ts +3 -0
  130. package/lib/typescript/src/scanVehicleRegistration.d.ts.map +1 -0
  131. package/lib/typescript/src/scanVehicleRegistration.native.d.ts +9 -0
  132. package/lib/typescript/src/scanVehicleRegistration.native.d.ts.map +1 -0
  133. package/lib/typescript/src/types.d.ts +237 -0
  134. package/lib/typescript/src/types.d.ts.map +1 -0
  135. package/package.json +124 -0
  136. package/src/NativePetrusReactNative.ts +303 -0
  137. package/src/PetrusCameraView.native.tsx +44 -0
  138. package/src/PetrusCameraView.tsx +19 -0
  139. package/src/PetrusCameraViewNativeComponent.ts +47 -0
  140. package/src/cameraPermissions.native.tsx +10 -0
  141. package/src/cameraPermissions.tsx +13 -0
  142. package/src/getPipelineVersion.native.tsx +5 -0
  143. package/src/getPipelineVersion.tsx +5 -0
  144. package/src/index.tsx +83 -0
  145. package/src/parseMRZ.native.tsx +11 -0
  146. package/src/parseMRZ.tsx +7 -0
  147. package/src/parseSouthAfricanDriversLicense.native.tsx +13 -0
  148. package/src/parseSouthAfricanDriversLicense.tsx +9 -0
  149. package/src/parseSouthAfricanID.native.tsx +7 -0
  150. package/src/parseSouthAfricanID.tsx +7 -0
  151. package/src/parseVehicleRegistration.native.tsx +9 -0
  152. package/src/parseVehicleRegistration.tsx +9 -0
  153. package/src/recognizeText.native.tsx +7 -0
  154. package/src/recognizeText.tsx +7 -0
  155. package/src/scanPDF417.native.tsx +7 -0
  156. package/src/scanPDF417.tsx +7 -0
  157. package/src/scanPassport.native.tsx +12 -0
  158. package/src/scanPassport.tsx +7 -0
  159. package/src/scanSouthAfricanDriversLicense.native.tsx +11 -0
  160. package/src/scanSouthAfricanDriversLicense.tsx +7 -0
  161. package/src/scanVehicleRegistration.native.tsx +12 -0
  162. package/src/scanVehicleRegistration.tsx +7 -0
  163. package/src/types.ts +272 -0
@@ -0,0 +1,80 @@
1
+ package com.petrusreactnative.pdf417
2
+
3
+ import android.util.Base64
4
+ import com.facebook.react.bridge.Arguments
5
+ import com.facebook.react.bridge.WritableArray
6
+ import com.facebook.react.bridge.WritableMap
7
+ import com.petrus.vision.pdf417.CalendarDate
8
+ import com.petrus.vision.pdf417.PDF417Result
9
+ import com.petrus.vision.pdf417.SouthAfricanDriversLicenseResult
10
+ import com.petrus.vision.pdf417.SouthAfricanDriversLicenseVersion
11
+ import com.petrus.vision.sa.SouthAfricanGender
12
+ import com.petrus.vision.sa.SouthAfricanIDValidator
13
+
14
+ /** Converts petrus-core's plain-Kotlin PDF417/licence model into RN bridge (WritableMap) types. */
15
+
16
+ fun PDF417Result.toWritableMap(): WritableMap =
17
+ Arguments.createMap().apply {
18
+ putString("rawDataBase64", Base64.encodeToString(rawBytes, Base64.NO_WRAP))
19
+ putString("rawText", rawText)
20
+ }
21
+
22
+ fun SouthAfricanDriversLicenseResult.toWritableMap(): WritableMap =
23
+ Arguments.createMap().apply {
24
+ putString("version", version.toWireValue())
25
+ putString("surname", surname)
26
+ putString("initials", initials)
27
+ if (idNumber != null) putString("idNumber", idNumber) else putNull("idNumber")
28
+ if (idNumberValidation != null) {
29
+ putMap("idNumberValidation", idNumberValidation.toWritableMap())
30
+ } else {
31
+ putNull("idNumberValidation")
32
+ }
33
+ putString("licenseNumber", licenseNumber)
34
+ putArray("vehicleCodes", vehicleCodes.toWritableStringArray())
35
+ putArray("vehicleRestrictions", vehicleRestrictions.toWritableStringArray())
36
+ if (prdpCode != null) putString("prdpCode", prdpCode) else putNull("prdpCode")
37
+ putString("idCountryOfIssue", idCountryOfIssue)
38
+ putString("licenseCountryOfIssue", licenseCountryOfIssue)
39
+ if (gender != null) putString("gender", gender.toWireValue()) else putNull("gender")
40
+ if (dateOfBirth != null) putMap("dateOfBirth", dateOfBirth.toWritableMap()) else putNull("dateOfBirth")
41
+ if (licenseIssueNumber != null) putInt("licenseIssueNumber", licenseIssueNumber) else putNull("licenseIssueNumber")
42
+ if (licenseValidFrom != null) putMap("licenseValidFrom", licenseValidFrom.toWritableMap()) else putNull("licenseValidFrom")
43
+ if (licenseValidTo != null) putMap("licenseValidTo", licenseValidTo.toWritableMap()) else putNull("licenseValidTo")
44
+ if (prdpExpiry != null) putMap("prdpExpiry", prdpExpiry.toWritableMap()) else putNull("prdpExpiry")
45
+ putArray("driverRestrictionCodes", driverRestrictionCodes.toWritableIntArray())
46
+ putArray("parseWarnings", parseWarnings.toWritableStringArray())
47
+ }
48
+
49
+ private fun SouthAfricanDriversLicenseVersion.toWireValue(): String =
50
+ when (this) {
51
+ SouthAfricanDriversLicenseVersion.V1 -> "v1"
52
+ SouthAfricanDriversLicenseVersion.V2 -> "v2"
53
+ }
54
+
55
+ private fun SouthAfricanGender.toWireValue(): String =
56
+ when (this) {
57
+ SouthAfricanGender.MALE -> "male"
58
+ SouthAfricanGender.FEMALE -> "female"
59
+ }
60
+
61
+ private fun CalendarDate.toWritableMap(): WritableMap =
62
+ Arguments.createMap().apply {
63
+ putInt("year", year)
64
+ putInt("month", month)
65
+ putInt("day", day)
66
+ }
67
+
68
+ private fun SouthAfricanIDValidator.ValidationResult.toWritableMap(): WritableMap =
69
+ Arguments.createMap().apply {
70
+ putBoolean("isValid", isValid)
71
+ putBoolean("hasValidChecksum", hasValidChecksum)
72
+ putBoolean("hasValidDateOfBirth", hasValidDateOfBirth)
73
+ putBoolean("hasValidCitizenshipDigit", hasValidCitizenshipDigit)
74
+ }
75
+
76
+ private fun List<String>.toWritableStringArray(): WritableArray =
77
+ Arguments.createArray().apply { forEach { pushString(it) } }
78
+
79
+ private fun List<Int>.toWritableIntArray(): WritableArray =
80
+ Arguments.createArray().apply { forEach { pushInt(it) } }
@@ -0,0 +1,50 @@
1
+ package com.petrusreactnative.sa
2
+
3
+ import com.facebook.react.bridge.Arguments
4
+ import com.facebook.react.bridge.WritableMap
5
+ import com.petrus.vision.sa.SouthAfricanCitizenship
6
+ import com.petrus.vision.sa.SouthAfricanDateOfBirth
7
+ import com.petrus.vision.sa.SouthAfricanGender
8
+ import com.petrus.vision.sa.SouthAfricanIDResult
9
+ import com.petrus.vision.sa.SouthAfricanIDValidator
10
+
11
+ /** Converts petrus-core's plain-Kotlin SA ID model into RN bridge (WritableMap) types. */
12
+
13
+ fun SouthAfricanIDResult.toWritableMap(): WritableMap =
14
+ Arguments.createMap().apply {
15
+ if (idNumber != null) putString("idNumber", idNumber) else putNull("idNumber")
16
+ putBoolean("isValid", isValid)
17
+ if (dateOfBirth != null) putMap("dateOfBirth", dateOfBirth.toWritableMap()) else putNull("dateOfBirth")
18
+ if (gender != null) putString("gender", gender.toWireValue()) else putNull("gender")
19
+ if (citizenship != null) putString("citizenship", citizenship.toWireValue()) else putNull("citizenship")
20
+ if (validation != null) putMap("validation", validation.toWritableMap()) else putNull("validation")
21
+ }
22
+
23
+ private fun SouthAfricanDateOfBirth.toWritableMap(): WritableMap =
24
+ Arguments.createMap().apply {
25
+ putInt("year", year)
26
+ putInt("month", month)
27
+ putInt("day", day)
28
+ }
29
+
30
+ private fun SouthAfricanGender.toWireValue(): String =
31
+ when (this) {
32
+ SouthAfricanGender.MALE -> "male"
33
+ SouthAfricanGender.FEMALE -> "female"
34
+ }
35
+
36
+ private fun SouthAfricanCitizenship.toWireValue(): String =
37
+ when (this) {
38
+ SouthAfricanCitizenship.CITIZEN -> "citizen"
39
+ SouthAfricanCitizenship.PERMANENT_RESIDENT -> "permanent_resident"
40
+ SouthAfricanCitizenship.REFUGEE -> "refugee"
41
+ SouthAfricanCitizenship.UNKNOWN -> "unknown"
42
+ }
43
+
44
+ private fun SouthAfricanIDValidator.ValidationResult.toWritableMap(): WritableMap =
45
+ Arguments.createMap().apply {
46
+ putBoolean("isValid", isValid)
47
+ putBoolean("hasValidChecksum", hasValidChecksum)
48
+ putBoolean("hasValidDateOfBirth", hasValidDateOfBirth)
49
+ putBoolean("hasValidCitizenshipDigit", hasValidCitizenshipDigit)
50
+ }
@@ -0,0 +1,72 @@
1
+ package com.petrusreactnative.vehicle
2
+
3
+ import com.facebook.react.bridge.Arguments
4
+ import com.facebook.react.bridge.WritableMap
5
+ import com.petrus.vision.sa.SouthAfricanIDValidator
6
+ import com.petrus.vision.vehicle.VINValidator
7
+ import com.petrus.vision.vehicle.VehicleDocumentType
8
+ import com.petrus.vision.vehicle.VehicleRegistrationResult
9
+ import com.petrus.vision.vehicle.VehicleRegistrationValidator
10
+
11
+ /** Converts petrus-core's plain-Kotlin vehicle registration model into RN bridge (WritableMap) types. */
12
+
13
+ fun VehicleRegistrationResult.toWritableMap(): WritableMap =
14
+ Arguments.createMap().apply {
15
+ putString("documentType", documentType.toWireValue())
16
+ if (registrationNumber != null) putString("registrationNumber", registrationNumber) else putNull("registrationNumber")
17
+ if (vin != null) putString("vin", vin) else putNull("vin")
18
+ if (vinValidation != null) putMap("vinValidation", vinValidation.toWritableMap()) else putNull("vinValidation")
19
+ if (engineNumber != null) putString("engineNumber", engineNumber) else putNull("engineNumber")
20
+ if (make != null) putString("make", make) else putNull("make")
21
+ if (model != null) putString("model", model) else putNull("model")
22
+ if (yearModel != null) putInt("yearModel", yearModel) else putNull("yearModel")
23
+ if (ownerName != null) putString("ownerName", ownerName) else putNull("ownerName")
24
+ if (ownerIdNumber != null) putString("ownerIdNumber", ownerIdNumber) else putNull("ownerIdNumber")
25
+ if (ownerIdValidation != null) {
26
+ putMap("ownerIdValidation", ownerIdValidation.toWritableMap())
27
+ } else {
28
+ putNull("ownerIdValidation")
29
+ }
30
+ putMap("validation", validation.toWritableMap())
31
+ putArray("parseWarnings", parseWarnings.toWritableStringArray())
32
+ }
33
+
34
+ private fun VehicleDocumentType.toWireValue(): String =
35
+ when (this) {
36
+ VehicleDocumentType.REGISTRATION_CERTIFICATE -> "registration_certificate"
37
+ VehicleDocumentType.LICENSE_DISC -> "license_disc"
38
+ VehicleDocumentType.NOTIFICATION_OF_CHANGE -> "notification_of_change"
39
+ VehicleDocumentType.ROADWORTHY_CERTIFICATE -> "roadworthy_certificate"
40
+ VehicleDocumentType.UNKNOWN -> "unknown"
41
+ }
42
+
43
+ private fun VINValidator.ValidationResult.toWritableMap(): WritableMap =
44
+ Arguments.createMap().apply {
45
+ putBoolean("hasValidLength", hasValidLength)
46
+ putBoolean("hasValidCharacterSet", hasValidCharacterSet)
47
+ putBoolean("isStructurallyValid", isStructurallyValid)
48
+ if (northAmericanCheckDigitValid != null) {
49
+ putBoolean("northAmericanCheckDigitValid", northAmericanCheckDigitValid)
50
+ } else {
51
+ putNull("northAmericanCheckDigitValid")
52
+ }
53
+ }
54
+
55
+ private fun VehicleRegistrationValidator.ValidationResult.toWritableMap(): WritableMap =
56
+ Arguments.createMap().apply {
57
+ putBoolean("isValid", isValid)
58
+ putBoolean("hasStructurallyValidVin", hasStructurallyValidVin)
59
+ putBoolean("hasPlausibleRegistrationNumber", hasPlausibleRegistrationNumber)
60
+ putBoolean("hasPlausibleYearModel", hasPlausibleYearModel)
61
+ }
62
+
63
+ private fun SouthAfricanIDValidator.ValidationResult.toWritableMap(): WritableMap =
64
+ Arguments.createMap().apply {
65
+ putBoolean("isValid", isValid)
66
+ putBoolean("hasValidChecksum", hasValidChecksum)
67
+ putBoolean("hasValidDateOfBirth", hasValidDateOfBirth)
68
+ putBoolean("hasValidCitizenshipDigit", hasValidCitizenshipDigit)
69
+ }
70
+
71
+ private fun List<String>.toWritableStringArray() =
72
+ Arguments.createArray().apply { forEach { pushString(it) } }
@@ -0,0 +1,5 @@
1
+ #import <PetrusReactNativeSpec/PetrusReactNativeSpec.h>
2
+
3
+ @interface PetrusReactNative : NSObject <NativePetrusReactNativeSpec>
4
+
5
+ @end
@@ -0,0 +1,21 @@
1
+ #import "PetrusReactNative.h"
2
+
3
+ @implementation PetrusReactNative
4
+ // Phase 0 placeholder: petrus-core is Android-only so far (see architecture doc),
5
+ // this just keeps the iOS side of the TurboModule contract compiling/inert.
6
+ - (NSString *)getPipelineVersion {
7
+ return @"petrus-core@unavailable-ios-phase0";
8
+ }
9
+
10
+ - (std::shared_ptr<facebook::react::TurboModule>)getTurboModule:
11
+ (const facebook::react::ObjCTurboModule::InitParams &)params
12
+ {
13
+ return std::make_shared<facebook::react::NativePetrusReactNativeSpecJSI>(params);
14
+ }
15
+
16
+ + (NSString *)moduleName
17
+ {
18
+ return @"PetrusReactNative";
19
+ }
20
+
21
+ @end
@@ -0,0 +1,5 @@
1
+ "use strict";
2
+
3
+ import { TurboModuleRegistry } from 'react-native';
4
+ export default TurboModuleRegistry.getEnforcing('PetrusReactNative');
5
+ //# sourceMappingURL=NativePetrusReactNative.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":["TurboModuleRegistry","getEnforcing"],"sourceRoot":"..\\..\\src","sources":["NativePetrusReactNative.ts"],"mappings":";;AAAA,SAASA,mBAAmB,QAA0B,cAAc;AA8SpE,eAAeA,mBAAmB,CAACC,YAAY,CAAO,mBAAmB,CAAC","ignoreList":[]}
@@ -0,0 +1,6 @@
1
+ "use strict";
2
+
3
+ export function PetrusCameraView(_props) {
4
+ throw new Error("'petrus-react-native's PetrusCameraView is only supported on native platforms.");
5
+ }
6
+ //# sourceMappingURL=PetrusCameraView.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":["PetrusCameraView","_props","Error"],"sourceRoot":"..\\..\\src","sources":["PetrusCameraView.tsx"],"mappings":";;AAcA,OAAO,SAASA,gBAAgBA,CAACC,MAA6B,EAAS;EACrE,MAAM,IAAIC,KAAK,CACb,gFACF,CAAC;AACH","ignoreList":[]}
@@ -0,0 +1,24 @@
1
+ "use strict";
2
+
3
+ import NativePetrusCameraView from './PetrusCameraViewNativeComponent';
4
+ import { jsx as _jsx } from "react/jsx-runtime";
5
+ export function PetrusCameraView({
6
+ onFrameMetadata,
7
+ onDocumentDetected,
8
+ onCaptured,
9
+ ...rest
10
+ }) {
11
+ return /*#__PURE__*/_jsx(NativePetrusCameraView, {
12
+ ...rest,
13
+ onFrameMetadata: onFrameMetadata == null ? undefined : event => {
14
+ onFrameMetadata(event.nativeEvent);
15
+ },
16
+ onDocumentDetected: onDocumentDetected == null ? undefined : event => {
17
+ onDocumentDetected(event.nativeEvent);
18
+ },
19
+ onCaptured: onCaptured == null ? undefined : event => {
20
+ onCaptured(event.nativeEvent);
21
+ }
22
+ });
23
+ }
24
+ //# sourceMappingURL=PetrusCameraView.native.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":["NativePetrusCameraView","jsx","_jsx","PetrusCameraView","onFrameMetadata","onDocumentDetected","onCaptured","rest","undefined","event","nativeEvent"],"sourceRoot":"..\\..\\src","sources":["PetrusCameraView.native.tsx"],"mappings":";;AACA,OAAOA,sBAAsB,MAAM,mCAAmC;AAAC,SAAAC,GAAA,IAAAC,IAAA;AAUvE,OAAO,SAASC,gBAAgBA,CAAC;EAC/BC,eAAe;EACfC,kBAAkB;EAClBC,UAAU;EACV,GAAGC;AACkB,CAAC,EAAE;EACxB,oBACEL,IAAA,CAACF,sBAAsB;IAAA,GACjBO,IAAI;IACRH,eAAe,EACbA,eAAe,IAAI,IAAI,GACnBI,SAAS,GACRC,KAAgD,IAAK;MACpDL,eAAe,CAACK,KAAK,CAACC,WAAW,CAAC;IACpC,CACL;IACDL,kBAAkB,EAChBA,kBAAkB,IAAI,IAAI,GACtBG,SAAS,GACRC,KAAwD,IAAK;MAC5DJ,kBAAkB,CAACI,KAAK,CAACC,WAAW,CAAC;IACvC,CACL;IACDJ,UAAU,EACRA,UAAU,IAAI,IAAI,GACdE,SAAS,GACRC,KAAgD,IAAK;MACpDH,UAAU,CAACG,KAAK,CAACC,WAAW,CAAC;IAC/B;EACL,CACF,CAAC;AAEN","ignoreList":[]}
@@ -0,0 +1,47 @@
1
+ import { codegenNativeComponent, type ViewProps, type CodegenTypes } from 'react-native';
2
+
3
+ type NativePoint2D = Readonly<{
4
+ x: CodegenTypes.Double;
5
+ y: CodegenTypes.Double;
6
+ }>;
7
+
8
+ // Always sent as a well-formed object (zeroed when nothing's detected), never
9
+ // null/omitted -- avoids relying on nullable/optional object support in the event
10
+ // codegen path. `detected`/callers should treat these as meaningless when unset.
11
+ type NativeDocumentCorners = Readonly<{
12
+ topLeft: NativePoint2D;
13
+ topRight: NativePoint2D;
14
+ bottomRight: NativePoint2D;
15
+ bottomLeft: NativePoint2D;
16
+ frameWidth: CodegenTypes.Int32;
17
+ frameHeight: CodegenTypes.Int32;
18
+ rotationDegrees: CodegenTypes.Int32;
19
+ }>;
20
+
21
+ export interface NativeProps extends ViewProps {
22
+ isActive?: CodegenTypes.WithDefault<boolean, false>;
23
+
24
+ onFrameMetadata?: CodegenTypes.DirectEventHandler<{
25
+ width: CodegenTypes.Int32;
26
+ height: CodegenTypes.Int32;
27
+ rotation: CodegenTypes.Int32;
28
+ // Epoch milliseconds -- exceeds Int32 range, so this must be Double.
29
+ timestamp: CodegenTypes.Double;
30
+ }>;
31
+
32
+ onDocumentDetected?: CodegenTypes.DirectEventHandler<{
33
+ detected: boolean;
34
+ isStable: boolean;
35
+ stableDurationMs: CodegenTypes.Double;
36
+ confidence: CodegenTypes.Double;
37
+ corners: NativeDocumentCorners;
38
+ }>;
39
+
40
+ onCaptured?: CodegenTypes.DirectEventHandler<{
41
+ corners: NativeDocumentCorners;
42
+ confidence: CodegenTypes.Double;
43
+ timestamp: CodegenTypes.Double;
44
+ }>;
45
+ }
46
+
47
+ export default codegenNativeComponent<NativeProps>('PetrusCameraView');
@@ -0,0 +1,9 @@
1
+ "use strict";
2
+
3
+ export function checkPermission() {
4
+ return Promise.reject(new Error("'petrus-react-native' is only supported on native platforms."));
5
+ }
6
+ export function requestPermission() {
7
+ return Promise.reject(new Error("'petrus-react-native' is only supported on native platforms."));
8
+ }
9
+ //# sourceMappingURL=cameraPermissions.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":["checkPermission","Promise","reject","Error","requestPermission"],"sourceRoot":"..\\..\\src","sources":["cameraPermissions.tsx"],"mappings":";;AAEA,OAAO,SAASA,eAAeA,CAAA,EAA0C;EACvE,OAAOC,OAAO,CAACC,MAAM,CACnB,IAAIC,KAAK,CAAC,8DAA8D,CAC1E,CAAC;AACH;AAEA,OAAO,SAASC,iBAAiBA,CAAA,EAA0C;EACzE,OAAOH,OAAO,CAACC,MAAM,CACnB,IAAIC,KAAK,CAAC,8DAA8D,CAC1E,CAAC;AACH","ignoreList":[]}
@@ -0,0 +1,10 @@
1
+ "use strict";
2
+
3
+ import PetrusReactNative from "./NativePetrusReactNative.js";
4
+ export function checkPermission() {
5
+ return PetrusReactNative.checkPermission();
6
+ }
7
+ export function requestPermission() {
8
+ return PetrusReactNative.requestPermission();
9
+ }
10
+ //# sourceMappingURL=cameraPermissions.native.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":["PetrusReactNative","checkPermission","requestPermission"],"sourceRoot":"..\\..\\src","sources":["cameraPermissions.native.tsx"],"mappings":";;AAAA,OAAOA,iBAAiB,MAAM,8BAA2B;AAGzD,OAAO,SAASC,eAAeA,CAAA,EAA0C;EACvE,OAAOD,iBAAiB,CAACC,eAAe,CAAC,CAAC;AAC5C;AAEA,OAAO,SAASC,iBAAiBA,CAAA,EAA0C;EACzE,OAAOF,iBAAiB,CAACE,iBAAiB,CAAC,CAAC;AAC9C","ignoreList":[]}
@@ -0,0 +1,6 @@
1
+ "use strict";
2
+
3
+ export function getPipelineVersion() {
4
+ throw new Error("'petrus-react-native' is only supported on native platforms.");
5
+ }
6
+ //# sourceMappingURL=getPipelineVersion.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":["getPipelineVersion","Error"],"sourceRoot":"..\\..\\src","sources":["getPipelineVersion.tsx"],"mappings":";;AAAA,OAAO,SAASA,kBAAkBA,CAAA,EAAW;EAC3C,MAAM,IAAIC,KAAK,CACb,8DACF,CAAC;AACH","ignoreList":[]}
@@ -0,0 +1,7 @@
1
+ "use strict";
2
+
3
+ import PetrusReactNative from "./NativePetrusReactNative.js";
4
+ export function getPipelineVersion() {
5
+ return PetrusReactNative.getPipelineVersion();
6
+ }
7
+ //# sourceMappingURL=getPipelineVersion.native.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":["PetrusReactNative","getPipelineVersion"],"sourceRoot":"..\\..\\src","sources":["getPipelineVersion.native.tsx"],"mappings":";;AAAA,OAAOA,iBAAiB,MAAM,8BAA2B;AAEzD,OAAO,SAASC,kBAAkBA,CAAA,EAAW;EAC3C,OAAOD,iBAAiB,CAACC,kBAAkB,CAAC,CAAC;AAC/C","ignoreList":[]}
@@ -0,0 +1,45 @@
1
+ "use strict";
2
+
3
+ import { getPipelineVersion } from './getPipelineVersion';
4
+ import { checkPermission, requestPermission } from './cameraPermissions';
5
+ import { recognizeText } from './recognizeText';
6
+ import { parseSouthAfricanID } from './parseSouthAfricanID';
7
+ import { scanPDF417 } from './scanPDF417';
8
+ import { parseSouthAfricanDriversLicense } from './parseSouthAfricanDriversLicense';
9
+ import { scanSouthAfricanDriversLicense } from './scanSouthAfricanDriversLicense';
10
+ import { parseVehicleRegistration } from './parseVehicleRegistration';
11
+ import { scanVehicleRegistration } from './scanVehicleRegistration';
12
+ import { parseMRZ } from './parseMRZ';
13
+ import { scanPassport } from './scanPassport';
14
+ export { getPipelineVersion } from './getPipelineVersion';
15
+ export { PetrusCameraView } from './PetrusCameraView';
16
+ export { checkPermission, requestPermission } from './cameraPermissions';
17
+ export { recognizeText } from './recognizeText';
18
+ export { parseSouthAfricanID } from './parseSouthAfricanID';
19
+ export { scanPDF417 } from './scanPDF417';
20
+ export { parseSouthAfricanDriversLicense } from './parseSouthAfricanDriversLicense';
21
+ export { scanSouthAfricanDriversLicense } from './scanSouthAfricanDriversLicense';
22
+ export { parseVehicleRegistration } from './parseVehicleRegistration';
23
+ export { scanVehicleRegistration } from './scanVehicleRegistration';
24
+ export { parseMRZ } from './parseMRZ';
25
+ export { scanPassport } from './scanPassport';
26
+ /**
27
+ * Namespaced convenience alias over the same functions above (e.g.
28
+ * `Petrus.parseSouthAfricanID(text)`), for callers who prefer a single import over
29
+ * multiple named ones. Both forms call the same underlying implementation.
30
+ */
31
+ export const Petrus = {
32
+ getPipelineVersion,
33
+ checkPermission,
34
+ requestPermission,
35
+ recognizeText,
36
+ parseSouthAfricanID,
37
+ scanPDF417,
38
+ parseSouthAfricanDriversLicense,
39
+ scanSouthAfricanDriversLicense,
40
+ parseVehicleRegistration,
41
+ scanVehicleRegistration,
42
+ parseMRZ,
43
+ scanPassport
44
+ };
45
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":["getPipelineVersion","checkPermission","requestPermission","recognizeText","parseSouthAfricanID","scanPDF417","parseSouthAfricanDriversLicense","scanSouthAfricanDriversLicense","parseVehicleRegistration","scanVehicleRegistration","parseMRZ","scanPassport","PetrusCameraView","Petrus"],"sourceRoot":"..\\..\\src","sources":["index.tsx"],"mappings":";;AAAA,SAASA,kBAAkB,QAAQ,sBAAsB;AACzD,SAASC,eAAe,EAAEC,iBAAiB,QAAQ,qBAAqB;AACxE,SAASC,aAAa,QAAQ,iBAAiB;AAC/C,SAASC,mBAAmB,QAAQ,uBAAuB;AAC3D,SAASC,UAAU,QAAQ,cAAc;AACzC,SAASC,+BAA+B,QAAQ,mCAAmC;AACnF,SAASC,8BAA8B,QAAQ,kCAAkC;AACjF,SAASC,wBAAwB,QAAQ,4BAA4B;AACrE,SAASC,uBAAuB,QAAQ,2BAA2B;AACnE,SAASC,QAAQ,QAAQ,YAAY;AACrC,SAASC,YAAY,QAAQ,gBAAgB;AAE7C,SAASX,kBAAkB,QAAQ,sBAAsB;AAEzD,SAASY,gBAAgB,QAAQ,oBAAoB;AAGrD,SAASX,eAAe,EAAEC,iBAAiB,QAAQ,qBAAqB;AAExE,SAASC,aAAa,QAAQ,iBAAiB;AAE/C,SAASC,mBAAmB,QAAQ,uBAAuB;AAE3D,SAASC,UAAU,QAAQ,cAAc;AACzC,SAASC,+BAA+B,QAAQ,mCAAmC;AACnF,SAASC,8BAA8B,QAAQ,kCAAkC;AAEjF,SAASC,wBAAwB,QAAQ,4BAA4B;AACrE,SAASC,uBAAuB,QAAQ,2BAA2B;AAEnE,SAASC,QAAQ,QAAQ,YAAY;AACrC,SAASC,YAAY,QAAQ,gBAAgB;AAiC7C;AACA;AACA;AACA;AACA;AACA,OAAO,MAAME,MAAM,GAAG;EACpBb,kBAAkB;EAClBC,eAAe;EACfC,iBAAiB;EACjBC,aAAa;EACbC,mBAAmB;EACnBC,UAAU;EACVC,+BAA+B;EAC/BC,8BAA8B;EAC9BC,wBAAwB;EACxBC,uBAAuB;EACvBC,QAAQ;EACRC;AACF,CAAC","ignoreList":[]}
@@ -0,0 +1 @@
1
+ {"type":"module"}
@@ -0,0 +1,6 @@
1
+ "use strict";
2
+
3
+ export function parseMRZ(_text) {
4
+ throw new Error("'petrus-react-native' is only supported on native platforms.");
5
+ }
6
+ //# sourceMappingURL=parseMRZ.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":["parseMRZ","_text","Error"],"sourceRoot":"..\\..\\src","sources":["parseMRZ.tsx"],"mappings":";;AAEA,OAAO,SAASA,QAAQA,CAACC,KAAa,EAAkB;EACtD,MAAM,IAAIC,KAAK,CACb,8DACF,CAAC;AACH","ignoreList":[]}
@@ -0,0 +1,12 @@
1
+ "use strict";
2
+
3
+ import PetrusReactNative from "./NativePetrusReactNative.js";
4
+ /**
5
+ * `text` is expected to be MRZ OCR output (e.g. recognizeText's `fullText`,
6
+ * already cropped to the MRZ region, or pasted raw two-line MRZ text). Never
7
+ * throws -- see PassportResult's doc comment for the "no MRZ found" shape.
8
+ */
9
+ export function parseMRZ(text) {
10
+ return PetrusReactNative.parseMRZ(text);
11
+ }
12
+ //# sourceMappingURL=parseMRZ.native.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":["PetrusReactNative","parseMRZ","text"],"sourceRoot":"..\\..\\src","sources":["parseMRZ.native.tsx"],"mappings":";;AAAA,OAAOA,iBAAiB,MAAM,8BAA2B;AAGzD;AACA;AACA;AACA;AACA;AACA,OAAO,SAASC,QAAQA,CAACC,IAAY,EAAkB;EACrD,OAAOF,iBAAiB,CAACC,QAAQ,CAACC,IAAI,CAAC;AACzC","ignoreList":[]}
@@ -0,0 +1,6 @@
1
+ "use strict";
2
+
3
+ export function parseSouthAfricanDriversLicense(_rawDataBase64) {
4
+ throw new Error("'petrus-react-native' is only supported on native platforms.");
5
+ }
6
+ //# sourceMappingURL=parseSouthAfricanDriversLicense.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":["parseSouthAfricanDriversLicense","_rawDataBase64","Error"],"sourceRoot":"..\\..\\src","sources":["parseSouthAfricanDriversLicense.tsx"],"mappings":";;AAEA,OAAO,SAASA,+BAA+BA,CAC7CC,cAAsB,EACY;EAClC,MAAM,IAAIC,KAAK,CACb,8DACF,CAAC;AACH","ignoreList":[]}
@@ -0,0 +1,12 @@
1
+ "use strict";
2
+
3
+ import PetrusReactNative from "./NativePetrusReactNative.js";
4
+ /**
5
+ * `rawDataBase64` is expected to be already-scanned raw barcode bytes (e.g.
6
+ * scanPDF417's `rawDataBase64`). Throws if it doesn't decode to a recognized SA
7
+ * driver's licence barcode format.
8
+ */
9
+ export function parseSouthAfricanDriversLicense(rawDataBase64) {
10
+ return PetrusReactNative.parseSouthAfricanDriversLicense(rawDataBase64);
11
+ }
12
+ //# sourceMappingURL=parseSouthAfricanDriversLicense.native.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":["PetrusReactNative","parseSouthAfricanDriversLicense","rawDataBase64"],"sourceRoot":"..\\..\\src","sources":["parseSouthAfricanDriversLicense.native.tsx"],"mappings":";;AAAA,OAAOA,iBAAiB,MAAM,8BAA2B;AAGzD;AACA;AACA;AACA;AACA;AACA,OAAO,SAASC,+BAA+BA,CAC7CC,aAAqB,EACa;EAClC,OAAOF,iBAAiB,CAACC,+BAA+B,CAACC,aAAa,CAAC;AACzE","ignoreList":[]}
@@ -0,0 +1,6 @@
1
+ "use strict";
2
+
3
+ export function parseSouthAfricanID(_text) {
4
+ throw new Error("'petrus-react-native' is only supported on native platforms.");
5
+ }
6
+ //# sourceMappingURL=parseSouthAfricanID.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":["parseSouthAfricanID","_text","Error"],"sourceRoot":"..\\..\\src","sources":["parseSouthAfricanID.tsx"],"mappings":";;AAEA,OAAO,SAASA,mBAAmBA,CAACC,KAAa,EAAwB;EACvE,MAAM,IAAIC,KAAK,CACb,8DACF,CAAC;AACH","ignoreList":[]}
@@ -0,0 +1,8 @@
1
+ "use strict";
2
+
3
+ import PetrusReactNative from "./NativePetrusReactNative.js";
4
+ /** `text` is expected to be OCR output (e.g. recognizeText's `fullText`). */
5
+ export function parseSouthAfricanID(text) {
6
+ return PetrusReactNative.parseSouthAfricanID(text);
7
+ }
8
+ //# sourceMappingURL=parseSouthAfricanID.native.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":["PetrusReactNative","parseSouthAfricanID","text"],"sourceRoot":"..\\..\\src","sources":["parseSouthAfricanID.native.tsx"],"mappings":";;AAAA,OAAOA,iBAAiB,MAAM,8BAA2B;AAGzD;AACA,OAAO,SAASC,mBAAmBA,CAACC,IAAY,EAAwB;EACtE,OAAOF,iBAAiB,CAACC,mBAAmB,CAACC,IAAI,CAAC;AACpD","ignoreList":[]}
@@ -0,0 +1,6 @@
1
+ "use strict";
2
+
3
+ export function parseVehicleRegistration(_text) {
4
+ throw new Error("'petrus-react-native' is only supported on native platforms.");
5
+ }
6
+ //# sourceMappingURL=parseVehicleRegistration.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":["parseVehicleRegistration","_text","Error"],"sourceRoot":"..\\..\\src","sources":["parseVehicleRegistration.tsx"],"mappings":";;AAEA,OAAO,SAASA,wBAAwBA,CACtCC,KAAa,EACc;EAC3B,MAAM,IAAIC,KAAK,CACb,8DACF,CAAC;AACH","ignoreList":[]}
@@ -0,0 +1,8 @@
1
+ "use strict";
2
+
3
+ import PetrusReactNative from "./NativePetrusReactNative.js";
4
+ /** `text` is expected to be OCR output (e.g. recognizeText's `fullText`). */
5
+ export function parseVehicleRegistration(text) {
6
+ return PetrusReactNative.parseVehicleRegistration(text);
7
+ }
8
+ //# sourceMappingURL=parseVehicleRegistration.native.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":["PetrusReactNative","parseVehicleRegistration","text"],"sourceRoot":"..\\..\\src","sources":["parseVehicleRegistration.native.tsx"],"mappings":";;AAAA,OAAOA,iBAAiB,MAAM,8BAA2B;AAGzD;AACA,OAAO,SAASC,wBAAwBA,CACtCC,IAAY,EACe;EAC3B,OAAOF,iBAAiB,CAACC,wBAAwB,CAACC,IAAI,CAAC;AACzD","ignoreList":[]}
@@ -0,0 +1,6 @@
1
+ "use strict";
2
+
3
+ export function recognizeText(_imagePath) {
4
+ return Promise.reject(new Error("'petrus-react-native' is only supported on native platforms."));
5
+ }
6
+ //# sourceMappingURL=recognizeText.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":["recognizeText","_imagePath","Promise","reject","Error"],"sourceRoot":"..\\..\\src","sources":["recognizeText.tsx"],"mappings":";;AAEA,OAAO,SAASA,aAAaA,CAACC,UAAkB,EAAsB;EACpE,OAAOC,OAAO,CAACC,MAAM,CACnB,IAAIC,KAAK,CAAC,8DAA8D,CAC1E,CAAC;AACH","ignoreList":[]}
@@ -0,0 +1,8 @@
1
+ "use strict";
2
+
3
+ import PetrusReactNative from "./NativePetrusReactNative.js";
4
+ /** `imagePath` may be a bare filesystem path or a URI (file://, content://, ...). */
5
+ export function recognizeText(imagePath) {
6
+ return PetrusReactNative.recognizeText(imagePath);
7
+ }
8
+ //# sourceMappingURL=recognizeText.native.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":["PetrusReactNative","recognizeText","imagePath"],"sourceRoot":"..\\..\\src","sources":["recognizeText.native.tsx"],"mappings":";;AAAA,OAAOA,iBAAiB,MAAM,8BAA2B;AAGzD;AACA,OAAO,SAASC,aAAaA,CAACC,SAAiB,EAAsB;EACnE,OAAOF,iBAAiB,CAACC,aAAa,CAACC,SAAS,CAAC;AACnD","ignoreList":[]}
@@ -0,0 +1,6 @@
1
+ "use strict";
2
+
3
+ export function scanPDF417(_imagePath) {
4
+ return Promise.reject(new Error("'petrus-react-native' is only supported on native platforms."));
5
+ }
6
+ //# sourceMappingURL=scanPDF417.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":["scanPDF417","_imagePath","Promise","reject","Error"],"sourceRoot":"..\\..\\src","sources":["scanPDF417.tsx"],"mappings":";;AAEA,OAAO,SAASA,UAAUA,CAACC,UAAkB,EAA6B;EACxE,OAAOC,OAAO,CAACC,MAAM,CACnB,IAAIC,KAAK,CAAC,8DAA8D,CAC1E,CAAC;AACH","ignoreList":[]}
@@ -0,0 +1,8 @@
1
+ "use strict";
2
+
3
+ import PetrusReactNative from "./NativePetrusReactNative.js";
4
+ /** `imagePath` may be a bare filesystem path or a URI (file://, content://, ...). */
5
+ export function scanPDF417(imagePath) {
6
+ return PetrusReactNative.scanPDF417(imagePath);
7
+ }
8
+ //# sourceMappingURL=scanPDF417.native.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":["PetrusReactNative","scanPDF417","imagePath"],"sourceRoot":"..\\..\\src","sources":["scanPDF417.native.tsx"],"mappings":";;AAAA,OAAOA,iBAAiB,MAAM,8BAA2B;AAGzD;AACA,OAAO,SAASC,UAAUA,CAACC,SAAiB,EAA6B;EACvE,OAAOF,iBAAiB,CAACC,UAAU,CAACC,SAAS,CAAC;AAChD","ignoreList":[]}
@@ -0,0 +1,6 @@
1
+ "use strict";
2
+
3
+ export function scanPassport() {
4
+ return Promise.reject(new Error("'petrus-react-native' is only supported on native platforms."));
5
+ }
6
+ //# sourceMappingURL=scanPassport.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":["scanPassport","Promise","reject","Error"],"sourceRoot":"..\\..\\src","sources":["scanPassport.tsx"],"mappings":";;AAEA,OAAO,SAASA,YAAYA,CAAA,EAA4B;EACtD,OAAOC,OAAO,CAACC,MAAM,CACnB,IAAIC,KAAK,CAAC,8DAA8D,CAC1E,CAAC;AACH","ignoreList":[]}
@@ -0,0 +1,13 @@
1
+ "use strict";
2
+
3
+ import PetrusReactNative from "./NativePetrusReactNative.js";
4
+ /**
5
+ * Opens a headless (no preview UI) camera session; per frame, detects the
6
+ * document boundary, crops just the MRZ band, runs OCR on only that crop, and
7
+ * parses it -- stops once a frame yields a non-empty passport number. Rejects
8
+ * on timeout (~20s) or if no Activity is available.
9
+ */
10
+ export function scanPassport() {
11
+ return PetrusReactNative.scanPassport();
12
+ }
13
+ //# sourceMappingURL=scanPassport.native.js.map