@microblink/blinkid-react-native 8000.0.0 → 8001.0.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 (205) hide show
  1. package/README.md +185 -53
  2. package/android/build.gradle +1 -1
  3. package/android/src/main/java/com/microblink/blinkid/reactnative/BlinkIdClassInfoIdMappings.kt +33 -0
  4. package/android/src/main/java/com/microblink/blinkid/reactnative/BlinkIdDeserializationUtilities.kt +90 -41
  5. package/android/src/main/java/com/microblink/blinkid/reactnative/BlinkIdSerializationUtilities.kt +44 -14
  6. package/android/src/main/java/com/microblink/blinkid/reactnative/BlinkidReactNativeModule.kt +15 -0
  7. package/ios/BlinkidReactNative.mm +7 -0
  8. package/ios/BlinkidReactNativeModule.swift +22 -0
  9. package/ios/Frameworks/BlinkID.xcframework/Info.plist +5 -9
  10. package/ios/Frameworks/BlinkID.xcframework/ios-arm64/BlinkID.framework/BlinkID +0 -0
  11. package/ios/Frameworks/BlinkID.xcframework/ios-arm64/BlinkID.framework/Headers/BlinkID.h +893 -14
  12. package/ios/Frameworks/BlinkID.xcframework/ios-arm64/BlinkID.framework/Info.plist +0 -0
  13. package/ios/Frameworks/BlinkID.xcframework/ios-arm64/BlinkID.framework/Modules/BlinkID.swiftmodule/{arm64-apple-ios.swiftdoc → arm64.swiftdoc} +0 -0
  14. package/ios/Frameworks/BlinkID.xcframework/ios-arm64/BlinkID.framework/Modules/BlinkID.swiftmodule/{arm64-apple-ios.swiftinterface → arm64.swiftinterface} +2343 -2228
  15. package/ios/Frameworks/BlinkID.xcframework/ios-arm64/BlinkID.framework/Modules/module.modulemap +1 -7
  16. package/ios/Frameworks/BlinkID.xcframework/ios-arm64/BlinkID.framework/PrivacyInfo.xcprivacy +0 -0
  17. package/ios/Frameworks/BlinkID.xcframework/ios-arm64_x86_64-simulator/BlinkID.framework/BlinkID +0 -0
  18. package/ios/Frameworks/BlinkID.xcframework/ios-arm64_x86_64-simulator/BlinkID.framework/Headers/BlinkID.h +893 -14
  19. package/ios/Frameworks/BlinkID.xcframework/ios-arm64_x86_64-simulator/BlinkID.framework/Info.plist +0 -0
  20. package/ios/Frameworks/BlinkID.xcframework/ios-arm64_x86_64-simulator/BlinkID.framework/Modules/BlinkID.swiftmodule/{arm64-apple-ios-simulator.swiftdoc → arm64.swiftdoc} +0 -0
  21. package/ios/Frameworks/BlinkID.xcframework/ios-arm64_x86_64-simulator/BlinkID.framework/Modules/BlinkID.swiftmodule/{arm64-apple-ios-simulator.private.swiftinterface → arm64.swiftinterface} +2343 -2228
  22. package/ios/Frameworks/BlinkID.xcframework/ios-arm64_x86_64-simulator/BlinkID.framework/Modules/BlinkID.swiftmodule/{x86_64-apple-ios-simulator.swiftdoc → x86_64.swiftdoc} +0 -0
  23. package/ios/Frameworks/BlinkID.xcframework/ios-arm64_x86_64-simulator/BlinkID.framework/Modules/BlinkID.swiftmodule/{x86_64-apple-ios-simulator.private.swiftinterface → x86_64.swiftinterface} +2343 -2228
  24. package/ios/Frameworks/BlinkID.xcframework/ios-arm64_x86_64-simulator/BlinkID.framework/Modules/module.modulemap +1 -7
  25. package/ios/Frameworks/BlinkIDUX.xcframework/Info.plist +5 -5
  26. package/ios/Frameworks/BlinkIDUX.xcframework/_CodeSignature/CodeDirectory +0 -0
  27. package/ios/Frameworks/BlinkIDUX.xcframework/_CodeSignature/CodeResources +276 -276
  28. package/ios/Frameworks/BlinkIDUX.xcframework/_CodeSignature/CodeSignature +0 -0
  29. package/ios/Frameworks/BlinkIDUX.xcframework/ios-arm64/BlinkIDUX.framework/BlinkIDUX +0 -0
  30. package/ios/Frameworks/BlinkIDUX.xcframework/ios-arm64/BlinkIDUX.framework/BlinkIDUX_BlinkIDUX.bundle/Assets.car +0 -0
  31. package/ios/Frameworks/BlinkIDUX.xcframework/ios-arm64/BlinkIDUX.framework/BlinkIDUX_BlinkIDUX.bundle/Info.plist +0 -0
  32. package/ios/Frameworks/BlinkIDUX.xcframework/ios-arm64/BlinkIDUX.framework/BlinkIDUX_BlinkIDUX.bundle/ak.lproj/Localizable.strings +0 -0
  33. package/ios/Frameworks/BlinkIDUX.xcframework/ios-arm64/BlinkIDUX.framework/BlinkIDUX_BlinkIDUX.bundle/am.lproj/Localizable.strings +0 -0
  34. package/ios/Frameworks/BlinkIDUX.xcframework/ios-arm64/BlinkIDUX.framework/BlinkIDUX_BlinkIDUX.bundle/ar.lproj/Localizable.strings +0 -0
  35. package/ios/Frameworks/BlinkIDUX.xcframework/ios-arm64/BlinkIDUX.framework/BlinkIDUX_BlinkIDUX.bundle/bn.lproj/Localizable.strings +0 -0
  36. package/ios/Frameworks/BlinkIDUX.xcframework/ios-arm64/BlinkIDUX.framework/BlinkIDUX_BlinkIDUX.bundle/cs.lproj/Localizable.strings +0 -0
  37. package/ios/Frameworks/BlinkIDUX.xcframework/ios-arm64/BlinkIDUX.framework/BlinkIDUX_BlinkIDUX.bundle/da.lproj/Localizable.strings +0 -0
  38. package/ios/Frameworks/BlinkIDUX.xcframework/ios-arm64/BlinkIDUX.framework/BlinkIDUX_BlinkIDUX.bundle/de.lproj/Localizable.strings +0 -0
  39. package/ios/Frameworks/BlinkIDUX.xcframework/ios-arm64/BlinkIDUX.framework/BlinkIDUX_BlinkIDUX.bundle/el.lproj/Localizable.strings +0 -0
  40. package/ios/Frameworks/BlinkIDUX.xcframework/ios-arm64/BlinkIDUX.framework/BlinkIDUX_BlinkIDUX.bundle/en-GB.lproj/Localizable.strings +0 -0
  41. package/ios/Frameworks/BlinkIDUX.xcframework/ios-arm64/BlinkIDUX.framework/BlinkIDUX_BlinkIDUX.bundle/en.lproj/Localizable.strings +0 -0
  42. package/ios/Frameworks/BlinkIDUX.xcframework/ios-arm64/BlinkIDUX.framework/BlinkIDUX_BlinkIDUX.bundle/es-MX.lproj/Localizable.strings +0 -0
  43. package/ios/Frameworks/BlinkIDUX.xcframework/ios-arm64/BlinkIDUX.framework/BlinkIDUX_BlinkIDUX.bundle/es.lproj/Localizable.strings +0 -0
  44. package/ios/Frameworks/BlinkIDUX.xcframework/ios-arm64/BlinkIDUX.framework/BlinkIDUX_BlinkIDUX.bundle/fa.lproj/Localizable.strings +0 -0
  45. package/ios/Frameworks/BlinkIDUX.xcframework/ios-arm64/BlinkIDUX.framework/BlinkIDUX_BlinkIDUX.bundle/fi.lproj/Localizable.strings +0 -0
  46. package/ios/Frameworks/BlinkIDUX.xcframework/ios-arm64/BlinkIDUX.framework/BlinkIDUX_BlinkIDUX.bundle/fil.lproj/Localizable.strings +0 -0
  47. package/ios/Frameworks/BlinkIDUX.xcframework/ios-arm64/BlinkIDUX.framework/BlinkIDUX_BlinkIDUX.bundle/fr-CA.lproj/Localizable.strings +0 -0
  48. package/ios/Frameworks/BlinkIDUX.xcframework/ios-arm64/BlinkIDUX.framework/BlinkIDUX_BlinkIDUX.bundle/fr.lproj/Localizable.strings +0 -0
  49. package/ios/Frameworks/BlinkIDUX.xcframework/ios-arm64/BlinkIDUX.framework/BlinkIDUX_BlinkIDUX.bundle/ha.lproj/Localizable.strings +0 -0
  50. package/ios/Frameworks/BlinkIDUX.xcframework/ios-arm64/BlinkIDUX.framework/BlinkIDUX_BlinkIDUX.bundle/he.lproj/Localizable.strings +0 -0
  51. package/ios/Frameworks/BlinkIDUX.xcframework/ios-arm64/BlinkIDUX.framework/BlinkIDUX_BlinkIDUX.bundle/hi.lproj/Localizable.strings +0 -0
  52. package/ios/Frameworks/BlinkIDUX.xcframework/ios-arm64/BlinkIDUX.framework/BlinkIDUX_BlinkIDUX.bundle/hr.lproj/Localizable.strings +0 -0
  53. package/ios/Frameworks/BlinkIDUX.xcframework/ios-arm64/BlinkIDUX.framework/BlinkIDUX_BlinkIDUX.bundle/hu.lproj/Localizable.strings +0 -0
  54. package/ios/Frameworks/BlinkIDUX.xcframework/ios-arm64/BlinkIDUX.framework/BlinkIDUX_BlinkIDUX.bundle/id.lproj/Localizable.strings +0 -0
  55. package/ios/Frameworks/BlinkIDUX.xcframework/ios-arm64/BlinkIDUX.framework/BlinkIDUX_BlinkIDUX.bundle/is.lproj/Localizable.strings +0 -0
  56. package/ios/Frameworks/BlinkIDUX.xcframework/ios-arm64/BlinkIDUX.framework/BlinkIDUX_BlinkIDUX.bundle/it.lproj/Localizable.strings +0 -0
  57. package/ios/Frameworks/BlinkIDUX.xcframework/ios-arm64/BlinkIDUX.framework/BlinkIDUX_BlinkIDUX.bundle/ja.lproj/Localizable.strings +0 -0
  58. package/ios/Frameworks/BlinkIDUX.xcframework/ios-arm64/BlinkIDUX.framework/BlinkIDUX_BlinkIDUX.bundle/ka-GE.lproj/Localizable.strings +0 -0
  59. package/ios/Frameworks/BlinkIDUX.xcframework/ios-arm64/BlinkIDUX.framework/BlinkIDUX_BlinkIDUX.bundle/kk.lproj/Localizable.strings +0 -0
  60. package/ios/Frameworks/BlinkIDUX.xcframework/ios-arm64/BlinkIDUX.framework/BlinkIDUX_BlinkIDUX.bundle/km-KH.lproj/Localizable.strings +0 -0
  61. package/ios/Frameworks/BlinkIDUX.xcframework/ios-arm64/BlinkIDUX.framework/BlinkIDUX_BlinkIDUX.bundle/ko.lproj/Localizable.strings +0 -0
  62. package/ios/Frameworks/BlinkIDUX.xcframework/ios-arm64/BlinkIDUX.framework/BlinkIDUX_BlinkIDUX.bundle/lv.lproj/Localizable.strings +0 -0
  63. package/ios/Frameworks/BlinkIDUX.xcframework/ios-arm64/BlinkIDUX.framework/BlinkIDUX_BlinkIDUX.bundle/ms.lproj/Localizable.strings +0 -0
  64. package/ios/Frameworks/BlinkIDUX.xcframework/ios-arm64/BlinkIDUX.framework/BlinkIDUX_BlinkIDUX.bundle/nb.lproj/Localizable.strings +0 -0
  65. package/ios/Frameworks/BlinkIDUX.xcframework/ios-arm64/BlinkIDUX.framework/BlinkIDUX_BlinkIDUX.bundle/ne.lproj/Localizable.strings +0 -0
  66. package/ios/Frameworks/BlinkIDUX.xcframework/ios-arm64/BlinkIDUX.framework/BlinkIDUX_BlinkIDUX.bundle/nl.lproj/Localizable.strings +0 -0
  67. package/ios/Frameworks/BlinkIDUX.xcframework/ios-arm64/BlinkIDUX.framework/BlinkIDUX_BlinkIDUX.bundle/pl.lproj/Localizable.strings +0 -0
  68. package/ios/Frameworks/BlinkIDUX.xcframework/ios-arm64/BlinkIDUX.framework/BlinkIDUX_BlinkIDUX.bundle/ps-AF.lproj/Localizable.strings +0 -0
  69. package/ios/Frameworks/BlinkIDUX.xcframework/ios-arm64/BlinkIDUX.framework/BlinkIDUX_BlinkIDUX.bundle/pt-BR.lproj/Localizable.strings +0 -0
  70. package/ios/Frameworks/BlinkIDUX.xcframework/ios-arm64/BlinkIDUX.framework/BlinkIDUX_BlinkIDUX.bundle/pt.lproj/Localizable.strings +0 -0
  71. package/ios/Frameworks/BlinkIDUX.xcframework/ios-arm64/BlinkIDUX.framework/BlinkIDUX_BlinkIDUX.bundle/ro.lproj/Localizable.strings +0 -0
  72. package/ios/Frameworks/BlinkIDUX.xcframework/ios-arm64/BlinkIDUX.framework/BlinkIDUX_BlinkIDUX.bundle/ru.lproj/Localizable.strings +0 -0
  73. package/ios/Frameworks/BlinkIDUX.xcframework/ios-arm64/BlinkIDUX.framework/BlinkIDUX_BlinkIDUX.bundle/si.lproj/Localizable.strings +0 -0
  74. package/ios/Frameworks/BlinkIDUX.xcframework/ios-arm64/BlinkIDUX.framework/BlinkIDUX_BlinkIDUX.bundle/sk.lproj/Localizable.strings +0 -0
  75. package/ios/Frameworks/BlinkIDUX.xcframework/ios-arm64/BlinkIDUX.framework/BlinkIDUX_BlinkIDUX.bundle/sl.lproj/Localizable.strings +0 -0
  76. package/ios/Frameworks/BlinkIDUX.xcframework/ios-arm64/BlinkIDUX.framework/BlinkIDUX_BlinkIDUX.bundle/sr.lproj/Localizable.strings +0 -0
  77. package/ios/Frameworks/BlinkIDUX.xcframework/ios-arm64/BlinkIDUX.framework/BlinkIDUX_BlinkIDUX.bundle/sv.lproj/Localizable.strings +0 -0
  78. package/ios/Frameworks/BlinkIDUX.xcframework/ios-arm64/BlinkIDUX.framework/BlinkIDUX_BlinkIDUX.bundle/sw.lproj/Localizable.strings +0 -0
  79. package/ios/Frameworks/BlinkIDUX.xcframework/ios-arm64/BlinkIDUX.framework/BlinkIDUX_BlinkIDUX.bundle/th.lproj/Localizable.strings +0 -0
  80. package/ios/Frameworks/BlinkIDUX.xcframework/ios-arm64/BlinkIDUX.framework/BlinkIDUX_BlinkIDUX.bundle/tr.lproj/Localizable.strings +0 -0
  81. package/ios/Frameworks/BlinkIDUX.xcframework/ios-arm64/BlinkIDUX.framework/BlinkIDUX_BlinkIDUX.bundle/uk.lproj/Localizable.strings +0 -0
  82. package/ios/Frameworks/BlinkIDUX.xcframework/ios-arm64/BlinkIDUX.framework/BlinkIDUX_BlinkIDUX.bundle/ur.lproj/Localizable.strings +0 -0
  83. package/ios/Frameworks/BlinkIDUX.xcframework/ios-arm64/BlinkIDUX.framework/BlinkIDUX_BlinkIDUX.bundle/uz.lproj/Localizable.strings +0 -0
  84. package/ios/Frameworks/BlinkIDUX.xcframework/ios-arm64/BlinkIDUX.framework/BlinkIDUX_BlinkIDUX.bundle/vi.lproj/Localizable.strings +0 -0
  85. package/ios/Frameworks/BlinkIDUX.xcframework/ios-arm64/BlinkIDUX.framework/BlinkIDUX_BlinkIDUX.bundle/yo.lproj/Localizable.strings +0 -0
  86. package/ios/Frameworks/BlinkIDUX.xcframework/ios-arm64/BlinkIDUX.framework/BlinkIDUX_BlinkIDUX.bundle/zh-Hans.lproj/Localizable.strings +0 -0
  87. package/ios/Frameworks/BlinkIDUX.xcframework/ios-arm64/BlinkIDUX.framework/BlinkIDUX_BlinkIDUX.bundle/zh-Hant.lproj/Localizable.strings +0 -0
  88. package/ios/Frameworks/BlinkIDUX.xcframework/ios-arm64/BlinkIDUX.framework/Info.plist +0 -0
  89. package/ios/Frameworks/BlinkIDUX.xcframework/ios-arm64/BlinkIDUX.framework/Modules/BlinkIDUX.swiftmodule/arm64-apple-ios.abi.json +1327 -733
  90. package/ios/Frameworks/BlinkIDUX.xcframework/ios-arm64/BlinkIDUX.framework/Modules/BlinkIDUX.swiftmodule/arm64-apple-ios.package.swiftinterface +32 -50
  91. package/ios/Frameworks/BlinkIDUX.xcframework/ios-arm64/BlinkIDUX.framework/Modules/BlinkIDUX.swiftmodule/arm64-apple-ios.private.swiftinterface +32 -50
  92. package/ios/Frameworks/BlinkIDUX.xcframework/ios-arm64/BlinkIDUX.framework/Modules/BlinkIDUX.swiftmodule/arm64-apple-ios.swiftdoc +0 -0
  93. package/ios/Frameworks/BlinkIDUX.xcframework/ios-arm64/BlinkIDUX.framework/Modules/BlinkIDUX.swiftmodule/arm64-apple-ios.swiftinterface +32 -50
  94. package/ios/Frameworks/BlinkIDUX.xcframework/ios-arm64_x86_64-simulator/BlinkIDUX.framework/BlinkIDUX +0 -0
  95. package/ios/Frameworks/BlinkIDUX.xcframework/ios-arm64_x86_64-simulator/BlinkIDUX.framework/BlinkIDUX_BlinkIDUX.bundle/Assets.car +0 -0
  96. package/ios/Frameworks/BlinkIDUX.xcframework/ios-arm64_x86_64-simulator/BlinkIDUX.framework/BlinkIDUX_BlinkIDUX.bundle/Info.plist +0 -0
  97. package/ios/Frameworks/BlinkIDUX.xcframework/ios-arm64_x86_64-simulator/BlinkIDUX.framework/BlinkIDUX_BlinkIDUX.bundle/_CodeSignature/CodeDirectory +0 -0
  98. package/ios/Frameworks/BlinkIDUX.xcframework/ios-arm64_x86_64-simulator/BlinkIDUX.framework/BlinkIDUX_BlinkIDUX.bundle/_CodeSignature/CodeResources +114 -114
  99. package/ios/Frameworks/BlinkIDUX.xcframework/ios-arm64_x86_64-simulator/BlinkIDUX.framework/BlinkIDUX_BlinkIDUX.bundle/ak.lproj/Localizable.strings +0 -0
  100. package/ios/Frameworks/BlinkIDUX.xcframework/ios-arm64_x86_64-simulator/BlinkIDUX.framework/BlinkIDUX_BlinkIDUX.bundle/am.lproj/Localizable.strings +0 -0
  101. package/ios/Frameworks/BlinkIDUX.xcframework/ios-arm64_x86_64-simulator/BlinkIDUX.framework/BlinkIDUX_BlinkIDUX.bundle/ar.lproj/Localizable.strings +0 -0
  102. package/ios/Frameworks/BlinkIDUX.xcframework/ios-arm64_x86_64-simulator/BlinkIDUX.framework/BlinkIDUX_BlinkIDUX.bundle/bn.lproj/Localizable.strings +0 -0
  103. package/ios/Frameworks/BlinkIDUX.xcframework/ios-arm64_x86_64-simulator/BlinkIDUX.framework/BlinkIDUX_BlinkIDUX.bundle/cs.lproj/Localizable.strings +0 -0
  104. package/ios/Frameworks/BlinkIDUX.xcframework/ios-arm64_x86_64-simulator/BlinkIDUX.framework/BlinkIDUX_BlinkIDUX.bundle/da.lproj/Localizable.strings +0 -0
  105. package/ios/Frameworks/BlinkIDUX.xcframework/ios-arm64_x86_64-simulator/BlinkIDUX.framework/BlinkIDUX_BlinkIDUX.bundle/de.lproj/Localizable.strings +0 -0
  106. package/ios/Frameworks/BlinkIDUX.xcframework/ios-arm64_x86_64-simulator/BlinkIDUX.framework/BlinkIDUX_BlinkIDUX.bundle/el.lproj/Localizable.strings +0 -0
  107. package/ios/Frameworks/BlinkIDUX.xcframework/ios-arm64_x86_64-simulator/BlinkIDUX.framework/BlinkIDUX_BlinkIDUX.bundle/en-GB.lproj/Localizable.strings +0 -0
  108. package/ios/Frameworks/BlinkIDUX.xcframework/ios-arm64_x86_64-simulator/BlinkIDUX.framework/BlinkIDUX_BlinkIDUX.bundle/en.lproj/Localizable.strings +0 -0
  109. package/ios/Frameworks/BlinkIDUX.xcframework/ios-arm64_x86_64-simulator/BlinkIDUX.framework/BlinkIDUX_BlinkIDUX.bundle/es-MX.lproj/Localizable.strings +0 -0
  110. package/ios/Frameworks/BlinkIDUX.xcframework/ios-arm64_x86_64-simulator/BlinkIDUX.framework/BlinkIDUX_BlinkIDUX.bundle/es.lproj/Localizable.strings +0 -0
  111. package/ios/Frameworks/BlinkIDUX.xcframework/ios-arm64_x86_64-simulator/BlinkIDUX.framework/BlinkIDUX_BlinkIDUX.bundle/fa.lproj/Localizable.strings +0 -0
  112. package/ios/Frameworks/BlinkIDUX.xcframework/ios-arm64_x86_64-simulator/BlinkIDUX.framework/BlinkIDUX_BlinkIDUX.bundle/fi.lproj/Localizable.strings +0 -0
  113. package/ios/Frameworks/BlinkIDUX.xcframework/ios-arm64_x86_64-simulator/BlinkIDUX.framework/BlinkIDUX_BlinkIDUX.bundle/fil.lproj/Localizable.strings +0 -0
  114. package/ios/Frameworks/BlinkIDUX.xcframework/ios-arm64_x86_64-simulator/BlinkIDUX.framework/BlinkIDUX_BlinkIDUX.bundle/fr-CA.lproj/Localizable.strings +0 -0
  115. package/ios/Frameworks/BlinkIDUX.xcframework/ios-arm64_x86_64-simulator/BlinkIDUX.framework/BlinkIDUX_BlinkIDUX.bundle/fr.lproj/Localizable.strings +0 -0
  116. package/ios/Frameworks/BlinkIDUX.xcframework/ios-arm64_x86_64-simulator/BlinkIDUX.framework/BlinkIDUX_BlinkIDUX.bundle/ha.lproj/Localizable.strings +0 -0
  117. package/ios/Frameworks/BlinkIDUX.xcframework/ios-arm64_x86_64-simulator/BlinkIDUX.framework/BlinkIDUX_BlinkIDUX.bundle/he.lproj/Localizable.strings +0 -0
  118. package/ios/Frameworks/BlinkIDUX.xcframework/ios-arm64_x86_64-simulator/BlinkIDUX.framework/BlinkIDUX_BlinkIDUX.bundle/hi.lproj/Localizable.strings +0 -0
  119. package/ios/Frameworks/BlinkIDUX.xcframework/ios-arm64_x86_64-simulator/BlinkIDUX.framework/BlinkIDUX_BlinkIDUX.bundle/hr.lproj/Localizable.strings +0 -0
  120. package/ios/Frameworks/BlinkIDUX.xcframework/ios-arm64_x86_64-simulator/BlinkIDUX.framework/BlinkIDUX_BlinkIDUX.bundle/hu.lproj/Localizable.strings +0 -0
  121. package/ios/Frameworks/BlinkIDUX.xcframework/ios-arm64_x86_64-simulator/BlinkIDUX.framework/BlinkIDUX_BlinkIDUX.bundle/id.lproj/Localizable.strings +0 -0
  122. package/ios/Frameworks/BlinkIDUX.xcframework/ios-arm64_x86_64-simulator/BlinkIDUX.framework/BlinkIDUX_BlinkIDUX.bundle/is.lproj/Localizable.strings +0 -0
  123. package/ios/Frameworks/BlinkIDUX.xcframework/ios-arm64_x86_64-simulator/BlinkIDUX.framework/BlinkIDUX_BlinkIDUX.bundle/it.lproj/Localizable.strings +0 -0
  124. package/ios/Frameworks/BlinkIDUX.xcframework/ios-arm64_x86_64-simulator/BlinkIDUX.framework/BlinkIDUX_BlinkIDUX.bundle/ja.lproj/Localizable.strings +0 -0
  125. package/ios/Frameworks/BlinkIDUX.xcframework/ios-arm64_x86_64-simulator/BlinkIDUX.framework/BlinkIDUX_BlinkIDUX.bundle/ka-GE.lproj/Localizable.strings +0 -0
  126. package/ios/Frameworks/BlinkIDUX.xcframework/ios-arm64_x86_64-simulator/BlinkIDUX.framework/BlinkIDUX_BlinkIDUX.bundle/kk.lproj/Localizable.strings +0 -0
  127. package/ios/Frameworks/BlinkIDUX.xcframework/ios-arm64_x86_64-simulator/BlinkIDUX.framework/BlinkIDUX_BlinkIDUX.bundle/km-KH.lproj/Localizable.strings +0 -0
  128. package/ios/Frameworks/BlinkIDUX.xcframework/ios-arm64_x86_64-simulator/BlinkIDUX.framework/BlinkIDUX_BlinkIDUX.bundle/ko.lproj/Localizable.strings +0 -0
  129. package/ios/Frameworks/BlinkIDUX.xcframework/ios-arm64_x86_64-simulator/BlinkIDUX.framework/BlinkIDUX_BlinkIDUX.bundle/lv.lproj/Localizable.strings +0 -0
  130. package/ios/Frameworks/BlinkIDUX.xcframework/ios-arm64_x86_64-simulator/BlinkIDUX.framework/BlinkIDUX_BlinkIDUX.bundle/ms.lproj/Localizable.strings +0 -0
  131. package/ios/Frameworks/BlinkIDUX.xcframework/ios-arm64_x86_64-simulator/BlinkIDUX.framework/BlinkIDUX_BlinkIDUX.bundle/nb.lproj/Localizable.strings +0 -0
  132. package/ios/Frameworks/BlinkIDUX.xcframework/ios-arm64_x86_64-simulator/BlinkIDUX.framework/BlinkIDUX_BlinkIDUX.bundle/ne.lproj/Localizable.strings +0 -0
  133. package/ios/Frameworks/BlinkIDUX.xcframework/ios-arm64_x86_64-simulator/BlinkIDUX.framework/BlinkIDUX_BlinkIDUX.bundle/nl.lproj/Localizable.strings +0 -0
  134. package/ios/Frameworks/BlinkIDUX.xcframework/ios-arm64_x86_64-simulator/BlinkIDUX.framework/BlinkIDUX_BlinkIDUX.bundle/pl.lproj/Localizable.strings +0 -0
  135. package/ios/Frameworks/BlinkIDUX.xcframework/ios-arm64_x86_64-simulator/BlinkIDUX.framework/BlinkIDUX_BlinkIDUX.bundle/ps-AF.lproj/Localizable.strings +0 -0
  136. package/ios/Frameworks/BlinkIDUX.xcframework/ios-arm64_x86_64-simulator/BlinkIDUX.framework/BlinkIDUX_BlinkIDUX.bundle/pt-BR.lproj/Localizable.strings +0 -0
  137. package/ios/Frameworks/BlinkIDUX.xcframework/ios-arm64_x86_64-simulator/BlinkIDUX.framework/BlinkIDUX_BlinkIDUX.bundle/pt.lproj/Localizable.strings +0 -0
  138. package/ios/Frameworks/BlinkIDUX.xcframework/ios-arm64_x86_64-simulator/BlinkIDUX.framework/BlinkIDUX_BlinkIDUX.bundle/ro.lproj/Localizable.strings +0 -0
  139. package/ios/Frameworks/BlinkIDUX.xcframework/ios-arm64_x86_64-simulator/BlinkIDUX.framework/BlinkIDUX_BlinkIDUX.bundle/ru.lproj/Localizable.strings +0 -0
  140. package/ios/Frameworks/BlinkIDUX.xcframework/ios-arm64_x86_64-simulator/BlinkIDUX.framework/BlinkIDUX_BlinkIDUX.bundle/si.lproj/Localizable.strings +0 -0
  141. package/ios/Frameworks/BlinkIDUX.xcframework/ios-arm64_x86_64-simulator/BlinkIDUX.framework/BlinkIDUX_BlinkIDUX.bundle/sk.lproj/Localizable.strings +0 -0
  142. package/ios/Frameworks/BlinkIDUX.xcframework/ios-arm64_x86_64-simulator/BlinkIDUX.framework/BlinkIDUX_BlinkIDUX.bundle/sl.lproj/Localizable.strings +0 -0
  143. package/ios/Frameworks/BlinkIDUX.xcframework/ios-arm64_x86_64-simulator/BlinkIDUX.framework/BlinkIDUX_BlinkIDUX.bundle/sr.lproj/Localizable.strings +0 -0
  144. package/ios/Frameworks/BlinkIDUX.xcframework/ios-arm64_x86_64-simulator/BlinkIDUX.framework/BlinkIDUX_BlinkIDUX.bundle/sv.lproj/Localizable.strings +0 -0
  145. package/ios/Frameworks/BlinkIDUX.xcframework/ios-arm64_x86_64-simulator/BlinkIDUX.framework/BlinkIDUX_BlinkIDUX.bundle/sw.lproj/Localizable.strings +0 -0
  146. package/ios/Frameworks/BlinkIDUX.xcframework/ios-arm64_x86_64-simulator/BlinkIDUX.framework/BlinkIDUX_BlinkIDUX.bundle/th.lproj/Localizable.strings +0 -0
  147. package/ios/Frameworks/BlinkIDUX.xcframework/ios-arm64_x86_64-simulator/BlinkIDUX.framework/BlinkIDUX_BlinkIDUX.bundle/tr.lproj/Localizable.strings +0 -0
  148. package/ios/Frameworks/BlinkIDUX.xcframework/ios-arm64_x86_64-simulator/BlinkIDUX.framework/BlinkIDUX_BlinkIDUX.bundle/uk.lproj/Localizable.strings +0 -0
  149. package/ios/Frameworks/BlinkIDUX.xcframework/ios-arm64_x86_64-simulator/BlinkIDUX.framework/BlinkIDUX_BlinkIDUX.bundle/ur.lproj/Localizable.strings +0 -0
  150. package/ios/Frameworks/BlinkIDUX.xcframework/ios-arm64_x86_64-simulator/BlinkIDUX.framework/BlinkIDUX_BlinkIDUX.bundle/uz.lproj/Localizable.strings +0 -0
  151. package/ios/Frameworks/BlinkIDUX.xcframework/ios-arm64_x86_64-simulator/BlinkIDUX.framework/BlinkIDUX_BlinkIDUX.bundle/vi.lproj/Localizable.strings +0 -0
  152. package/ios/Frameworks/BlinkIDUX.xcframework/ios-arm64_x86_64-simulator/BlinkIDUX.framework/BlinkIDUX_BlinkIDUX.bundle/yo.lproj/Localizable.strings +0 -0
  153. package/ios/Frameworks/BlinkIDUX.xcframework/ios-arm64_x86_64-simulator/BlinkIDUX.framework/BlinkIDUX_BlinkIDUX.bundle/zh-Hans.lproj/Localizable.strings +0 -0
  154. package/ios/Frameworks/BlinkIDUX.xcframework/ios-arm64_x86_64-simulator/BlinkIDUX.framework/BlinkIDUX_BlinkIDUX.bundle/zh-Hant.lproj/Localizable.strings +0 -0
  155. package/ios/Frameworks/BlinkIDUX.xcframework/ios-arm64_x86_64-simulator/BlinkIDUX.framework/Info.plist +0 -0
  156. package/ios/Frameworks/BlinkIDUX.xcframework/ios-arm64_x86_64-simulator/BlinkIDUX.framework/Modules/BlinkIDUX.swiftmodule/arm64-apple-ios-simulator.abi.json +1327 -733
  157. package/ios/Frameworks/BlinkIDUX.xcframework/ios-arm64_x86_64-simulator/BlinkIDUX.framework/Modules/BlinkIDUX.swiftmodule/arm64-apple-ios-simulator.package.swiftinterface +32 -50
  158. package/ios/Frameworks/BlinkIDUX.xcframework/ios-arm64_x86_64-simulator/BlinkIDUX.framework/Modules/BlinkIDUX.swiftmodule/arm64-apple-ios-simulator.private.swiftinterface +32 -50
  159. package/ios/Frameworks/BlinkIDUX.xcframework/ios-arm64_x86_64-simulator/BlinkIDUX.framework/Modules/BlinkIDUX.swiftmodule/arm64-apple-ios-simulator.swiftdoc +0 -0
  160. package/ios/Frameworks/BlinkIDUX.xcframework/ios-arm64_x86_64-simulator/BlinkIDUX.framework/Modules/BlinkIDUX.swiftmodule/arm64-apple-ios-simulator.swiftinterface +32 -50
  161. package/ios/Frameworks/BlinkIDUX.xcframework/ios-arm64_x86_64-simulator/BlinkIDUX.framework/Modules/BlinkIDUX.swiftmodule/x86_64-apple-ios-simulator.abi.json +1327 -733
  162. package/ios/Frameworks/BlinkIDUX.xcframework/ios-arm64_x86_64-simulator/BlinkIDUX.framework/Modules/BlinkIDUX.swiftmodule/x86_64-apple-ios-simulator.package.swiftinterface +32 -50
  163. package/ios/Frameworks/BlinkIDUX.xcframework/ios-arm64_x86_64-simulator/BlinkIDUX.framework/Modules/BlinkIDUX.swiftmodule/x86_64-apple-ios-simulator.private.swiftinterface +32 -50
  164. package/ios/Frameworks/BlinkIDUX.xcframework/ios-arm64_x86_64-simulator/BlinkIDUX.framework/Modules/BlinkIDUX.swiftmodule/x86_64-apple-ios-simulator.swiftdoc +0 -0
  165. package/ios/Frameworks/BlinkIDUX.xcframework/ios-arm64_x86_64-simulator/BlinkIDUX.framework/Modules/BlinkIDUX.swiftmodule/x86_64-apple-ios-simulator.swiftinterface +32 -50
  166. package/ios/Frameworks/BlinkIDUX.xcframework/ios-arm64_x86_64-simulator/BlinkIDUX.framework/_CodeSignature/CodeResources +1 -1
  167. package/ios/Serialization/BlinkIdDeserializationUtils.swift +145 -23
  168. package/ios/Serialization/BlinkIdSerializationUtils.swift +57 -8
  169. package/lib/module/NativeBlinkidReactNative.js.map +1 -1
  170. package/lib/module/index.js +13 -0
  171. package/lib/module/index.js.map +1 -1
  172. package/lib/module/types.js +65 -11
  173. package/lib/module/types.js.map +1 -1
  174. package/lib/typescript/src/NativeBlinkidReactNative.d.ts +10 -0
  175. package/lib/typescript/src/NativeBlinkidReactNative.d.ts.map +1 -1
  176. package/lib/typescript/src/blinkIdResult.d.ts +5 -0
  177. package/lib/typescript/src/blinkIdResult.d.ts.map +1 -1
  178. package/lib/typescript/src/blinkIdSettings.d.ts +160 -21
  179. package/lib/typescript/src/blinkIdSettings.d.ts.map +1 -1
  180. package/lib/typescript/src/index.d.ts +10 -0
  181. package/lib/typescript/src/index.d.ts.map +1 -1
  182. package/lib/typescript/src/types.d.ts +120 -46
  183. package/lib/typescript/src/types.d.ts.map +1 -1
  184. package/package.json +1 -1
  185. package/src/NativeBlinkidReactNative.ts +11 -0
  186. package/src/blinkIdResult.ts +6 -0
  187. package/src/blinkIdSettings.ts +170 -21
  188. package/src/index.tsx +13 -0
  189. package/src/types.ts +168 -52
  190. package/ios/Frameworks/BlinkID.xcframework/ios-arm64/BlinkID.framework/Headers/BlinkID-Swift.h +0 -48714
  191. package/ios/Frameworks/BlinkID.xcframework/ios-arm64/BlinkID.framework/Modules/BlinkID.swiftmodule/arm64-apple-ios.abi.json +0 -91790
  192. package/ios/Frameworks/BlinkID.xcframework/ios-arm64/BlinkID.framework/Modules/BlinkID.swiftmodule/arm64-apple-ios.private.swiftinterface +0 -2534
  193. package/ios/Frameworks/BlinkID.xcframework/ios-arm64/BlinkID.framework/Modules/module.private.modulemap +0 -12
  194. package/ios/Frameworks/BlinkID.xcframework/ios-arm64/BlinkID.framework/PrivateHeaders/SwiftCxxBridge.hpp +0 -19
  195. package/ios/Frameworks/BlinkID.xcframework/ios-arm64/BlinkID.framework/_CodeSignature/CodeResources +0 -234
  196. package/ios/Frameworks/BlinkID.xcframework/ios-arm64/BlinkID.framework/conan.xcconfig +0 -40
  197. package/ios/Frameworks/BlinkID.xcframework/ios-arm64_x86_64-simulator/BlinkID.framework/Headers/BlinkID-Swift.h +0 -97424
  198. package/ios/Frameworks/BlinkID.xcframework/ios-arm64_x86_64-simulator/BlinkID.framework/Modules/BlinkID.swiftmodule/arm64-apple-ios-simulator.abi.json +0 -91790
  199. package/ios/Frameworks/BlinkID.xcframework/ios-arm64_x86_64-simulator/BlinkID.framework/Modules/BlinkID.swiftmodule/arm64-apple-ios-simulator.swiftinterface +0 -2534
  200. package/ios/Frameworks/BlinkID.xcframework/ios-arm64_x86_64-simulator/BlinkID.framework/Modules/BlinkID.swiftmodule/x86_64-apple-ios-simulator.abi.json +0 -91790
  201. package/ios/Frameworks/BlinkID.xcframework/ios-arm64_x86_64-simulator/BlinkID.framework/Modules/BlinkID.swiftmodule/x86_64-apple-ios-simulator.swiftinterface +0 -2534
  202. package/ios/Frameworks/BlinkID.xcframework/ios-arm64_x86_64-simulator/BlinkID.framework/Modules/module.private.modulemap +0 -12
  203. package/ios/Frameworks/BlinkID.xcframework/ios-arm64_x86_64-simulator/BlinkID.framework/PrivateHeaders/SwiftCxxBridge.hpp +0 -19
  204. package/ios/Frameworks/BlinkID.xcframework/ios-arm64_x86_64-simulator/BlinkID.framework/_CodeSignature/CodeResources +0 -289
  205. package/ios/Frameworks/BlinkID.xcframework/ios-arm64_x86_64-simulator/BlinkID.framework/conan.xcconfig +0 -40
@@ -4,11 +4,13 @@ import android.graphics.Bitmap
4
4
  import android.graphics.BitmapFactory
5
5
  import android.util.Base64
6
6
  import com.microblink.blinkid.core.BlinkIdSdkSettings
7
+ import com.microblink.blinkid.core.settings.ResourcesConfig
8
+ import com.microblink.blinkid.core.settings.OtaResourcesConfig
7
9
  import com.microblink.blinkid.core.result.FieldType
8
- import com.microblink.blinkid.core.result.classinfo.Country
10
+ import com.microblink.blinkid.core.result.classinfo.CountryId
9
11
  import com.microblink.blinkid.core.result.classinfo.DocumentClassInfo
10
- import com.microblink.blinkid.core.result.classinfo.Region
11
- import com.microblink.blinkid.core.result.classinfo.Type
12
+ import com.microblink.blinkid.core.result.classinfo.RegionId
13
+ import com.microblink.blinkid.core.result.classinfo.DocumentTypeId
12
14
  import com.microblink.blinkid.core.session.BlinkIdSessionSettings
13
15
  import com.microblink.blinkid.core.session.ScanningMode
14
16
  import com.microblink.blinkid.core.settings.DocumentNumberRedactionSettings
@@ -16,6 +18,8 @@ import com.microblink.blinkid.core.settings.RedactionSettings
16
18
  import com.microblink.blinkid.core.settings.RedactionSettingsResolver
17
19
  import com.microblink.blinkid.core.settings.ScanningSettings
18
20
  import com.microblink.blinkid.core.settings.SensitivityLevel
21
+ import com.microblink.blinkid.core.image.InputImageCropType
22
+ import com.microblink.blinkid.core.image.InputImageSelectionStrategy
19
23
  import com.microblink.blinkid.core.settings.scanning.BarcodeModuleSettings
20
24
  import com.microblink.blinkid.core.settings.scanning.DocumentCaptureModuleSettings
21
25
  import com.microblink.blinkid.core.settings.scanning.MrzModuleSettings
@@ -27,6 +31,7 @@ import com.microblink.blinkid.core.session.InputImageSource
27
31
  import com.microblink.blinkid.core.settings.RedactionMode
28
32
  import com.microblink.blinkid.ux.camera.CameraLensFacing
29
33
  import com.microblink.blinkid.ux.camera.CameraSettings
34
+ import kotlin.time.Duration
30
35
  import kotlin.time.Duration.Companion.milliseconds
31
36
  import android.os.Parcelable
32
37
  import kotlinx.parcelize.Parcelize
@@ -36,26 +41,45 @@ import org.json.JSONObject
36
41
  object BlinkIdDeserializationUtilities {
37
42
 
38
43
  private const val DEFAULT_RESOURCE_DOWNLOAD_URL = "https://models.cdn.microblink.com/resources"
39
- private const val DEFAULT_RESOURCES_LOCAL_FOLDER = "MLModels"
44
+ private const val DEFAULT_RESOURCES_LOCAL_FOLDER = "microblink/blinkid"
45
+
46
+ private const val DEFAULT_OTA_DOWNLOAD_URL = "https://blinkid-ota.microblink.com"
47
+ private const val DEFAULT_OTA_RESOURCES_LOCAL_FOLDER = "microblink/blinkid/ota"
40
48
 
41
49
  fun deserializeBlinkIdSdkSettings(blinkIdSdkSettingsMap: JSONObject?): BlinkIdSdkSettings? {
42
50
  val licenseKey = blinkIdSdkSettingsMap?.optString("licenseKey")?.takeIf { it.isNotBlank() }
43
51
  ?: return null
44
52
 
53
+ val resourcesMap = blinkIdSdkSettingsMap.optJSONObject("resourcesConfig")
54
+ val otaResourcesMap = blinkIdSdkSettingsMap.optJSONObject("otaResourcesConfig")
55
+
45
56
  return BlinkIdSdkSettings(
46
57
  licenseKey = licenseKey,
47
58
  licensee = blinkIdSdkSettingsMap.optString("licensee").takeIf { it.isNotBlank() },
48
- downloadResources = blinkIdSdkSettingsMap.optBoolean("downloadResources", true),
49
- resourceDownloadUrl = blinkIdSdkSettingsMap.optString(
50
- "resourceDownloadUrl",
51
- DEFAULT_RESOURCE_DOWNLOAD_URL
52
- ),
53
- resourceLocalFolder = blinkIdSdkSettingsMap.optString(
54
- "resourceLocalFolder",
55
- DEFAULT_RESOURCES_LOCAL_FOLDER
59
+ resourcesConfig = ResourcesConfig(
60
+ download = resourcesMap?.optBoolean("download", true) ?: true,
61
+ serviceUrl = resourcesMap?.optString("serviceUrl")
62
+ ?.takeIf { it.isNotBlank() }
63
+ ?: DEFAULT_RESOURCE_DOWNLOAD_URL,
64
+ localFolder = resourcesMap?.optString("localFolder")
65
+ ?.takeIf { it.isNotBlank() }
66
+ ?: DEFAULT_RESOURCES_LOCAL_FOLDER,
67
+ requestTimeout = deserializeResourceRequestTimeout(
68
+ resourcesMap?.opt("requestTimeout")
69
+ ),
56
70
  ),
57
- resourceRequestTimeout = deserializeResourceRequestTimeout(
58
- blinkIdSdkSettingsMap.opt("resourceRequestTimeout")
71
+ otaResourcesConfig = OtaResourcesConfig(
72
+ checkForUpdates = otaResourcesMap?.optBoolean("checkForUpdates", true) ?: true,
73
+ strict = otaResourcesMap?.optBoolean("strict", false) ?: false,
74
+ serviceUrl = otaResourcesMap?.optString("serviceUrl")
75
+ ?.takeIf { it.isNotBlank() }
76
+ ?: DEFAULT_OTA_DOWNLOAD_URL,
77
+ localFolder = otaResourcesMap?.optString("localFolder")
78
+ ?.takeIf { it.isNotBlank() }
79
+ ?: DEFAULT_OTA_RESOURCES_LOCAL_FOLDER,
80
+ requestTimeout = deserializeResourceRequestTimeout(
81
+ otaResourcesMap?.opt("requestTimeout")
82
+ ),
59
83
  ),
60
84
  microblinkProxyUrl = blinkIdSdkSettingsMap.optString("microblinkProxyURL")
61
85
  .takeIf { it.isNotBlank() },
@@ -219,7 +243,8 @@ object BlinkIdDeserializationUtilities {
219
243
  moduleMap: JSONObject
220
244
  ): DocumentCaptureModuleSettings {
221
245
  return DocumentCaptureModuleSettings(
222
- inputImageCropped = moduleMap.optBoolean("inputImageCropped", false),
246
+ cropType = parseInputImageCropType(moduleMap.optString("cropType", "not-cropped")),
247
+ inputImageSelectionStrategy = parseInputImageSelectionStrategy(moduleMap.optString("inputImageSelectionStrategy", "balanced")),
223
248
  unsupportedDocumentsAllowed = moduleMap.optBoolean("unsupportedDocumentsAllowed", false),
224
249
  secondSideWithNoExtractableDataSkipped = moduleMap.optBoolean(
225
250
  "secondSideWithNoExtractableDataSkipped",
@@ -263,6 +288,7 @@ object BlinkIdDeserializationUtilities {
263
288
  ean13ScanningEnabled = moduleMap.optBoolean("ean13ScanningEnabled", false),
264
289
  itfScanningEnabled = moduleMap.optBoolean("itfScanningEnabled", false),
265
290
  dataMatrixScanningEnabled = moduleMap.optBoolean("dataMatrixScanningEnabled", false),
291
+ aztecScanningEnabled = moduleMap.optBoolean("aztecScanningEnabled", false),
266
292
  )
267
293
  }
268
294
 
@@ -298,23 +324,28 @@ object BlinkIdDeserializationUtilities {
298
324
  }
299
325
 
300
326
  private fun deserializeResourceRequestTimeout(timeoutValue: Any?): RequestTimeout {
301
- return when (timeoutValue) {
302
- is Number -> {
303
- val timeout = timeoutValue.toInt().milliseconds
304
- RequestTimeout(
305
- connectionTimeout = timeout,
306
- writeTimeout = timeout,
307
- readTimeout = timeout,
308
- )
309
- }
310
- is JSONObject -> RequestTimeout(
311
- connectionTimeout = timeoutValue
312
- .optInt("connectionTimeoutMilliseconds", 10_000)
313
- .milliseconds,
314
- writeTimeout = timeoutValue.optInt("writeTimeoutMilliseconds", 10_000).milliseconds,
315
- readTimeout = timeoutValue.optInt("readTimeoutMilliseconds", 10_000).milliseconds,
316
- )
317
- else -> RequestTimeout.DEFAULT
327
+ val resourceRequestTimeoutMap = timeoutValue as? JSONObject ?: return RequestTimeout.DEFAULT
328
+ val defaultTimeout = RequestTimeout.DEFAULT
329
+ return RequestTimeout(
330
+ connectionTimeout = deserializeTimeoutMilliseconds(
331
+ resourceRequestTimeoutMap.opt("connectionTimeoutMilliseconds"),
332
+ defaultTimeout.connectionTimeout,
333
+ ),
334
+ writeTimeout = deserializeTimeoutMilliseconds(
335
+ resourceRequestTimeoutMap.opt("writeTimeoutMilliseconds"),
336
+ defaultTimeout.writeTimeout,
337
+ ),
338
+ readTimeout = deserializeTimeoutMilliseconds(
339
+ resourceRequestTimeoutMap.opt("readTimeoutMilliseconds"),
340
+ defaultTimeout.readTimeout,
341
+ ),
342
+ )
343
+ }
344
+
345
+ private fun deserializeTimeoutMilliseconds(value: Any?, default: Duration): Duration {
346
+ return when (value) {
347
+ is Number -> value.toInt().milliseconds
348
+ else -> default
318
349
  }
319
350
  }
320
351
 
@@ -325,6 +356,24 @@ object BlinkIdDeserializationUtilities {
325
356
  }
326
357
  }
327
358
 
359
+ private fun parseInputImageCropType(value: String): InputImageCropType {
360
+ return when (value.lowercase()) {
361
+ "cropped" -> InputImageCropType.Cropped
362
+ "unknown" -> InputImageCropType.Unknown
363
+ else -> InputImageCropType.NotCropped
364
+ }
365
+ }
366
+
367
+ private fun parseInputImageSelectionStrategy(value: String): InputImageSelectionStrategy {
368
+ return when (value.lowercase()) {
369
+ "single-image" -> InputImageSelectionStrategy.SingleImage
370
+ "optimize-for-speed" -> InputImageSelectionStrategy.OptimizeForSpeed
371
+ "balanced" -> InputImageSelectionStrategy.Balanced
372
+ "optimize-for-quality" -> InputImageSelectionStrategy.OptimizeForQuality
373
+ else -> InputImageSelectionStrategy.Balanced
374
+ }
375
+ }
376
+
328
377
  private fun parseSensitivityLevel(value: String): SensitivityLevel {
329
378
  return when (value.lowercase()) {
330
379
  "off" -> SensitivityLevel.Off
@@ -390,19 +439,19 @@ object BlinkIdDeserializationUtilities {
390
439
  val region = filteredClass.optString("region").takeIf { it.isNotBlank() }
391
440
  val documentType = filteredClass.optString("documentType").takeIf { it.isNotBlank() }
392
441
 
393
- return (country == null || parseCountry(country) == classInfo.country) &&
394
- (region == null || parseRegion(region) == classInfo.region) &&
395
- (documentType == null || parseDocumentType(documentType) == classInfo.type)
442
+ return (country == null || parseCountryId(country) == classInfo.country?.id) &&
443
+ (region == null || parseRegionId(region) == classInfo.region?.id) &&
444
+ (documentType == null || parseDocumentTypeId(documentType) == classInfo.documentType?.id)
396
445
  }
397
446
 
398
- private fun parseCountry(value: String): Country? =
399
- Country.entries.find { it.name.equals(value, ignoreCase = true) }
447
+ private fun parseCountryId(value: String): CountryId? =
448
+ BlinkIdClassInfoIdMappings.parseCountryId(value)
400
449
 
401
- private fun parseRegion(value: String): Region? =
402
- Region.entries.find { it.name.equals(value, ignoreCase = true) }
450
+ private fun parseRegionId(value: String): RegionId? =
451
+ BlinkIdClassInfoIdMappings.parseRegionId(value)
403
452
 
404
- private fun parseDocumentType(value: String): Type? =
405
- Type.entries.find { it.name.equals(value, ignoreCase = true) }
453
+ private fun parseDocumentTypeId(value: String): DocumentTypeId? =
454
+ BlinkIdClassInfoIdMappings.parseDocumentTypeId(value)
406
455
  }
407
456
 
408
457
  @Parcelize
@@ -83,6 +83,9 @@ object BlinkIdSerializationUtilities {
83
83
  scanningResult?.race?.let {
84
84
  scanningResultJson.put("race", serializeStringResult(it))
85
85
  }
86
+ scanningResult?.ethnicity?.let {
87
+ scanningResultJson.put("ethnicity", serializeStringResult(it))
88
+ }
86
89
  scanningResult?.religion?.let {
87
90
  scanningResultJson.put("religion", serializeStringResult(it))
88
91
  }
@@ -296,19 +299,23 @@ object BlinkIdSerializationUtilities {
296
299
 
297
300
  private fun serializeDocumentClassInfo(documentClassInfo: DocumentClassInfo): JSONObject {
298
301
  val documentClassInfoJson = JSONObject()
299
- // TODO: Align country/region/documentType strings with iOS (rawValue). Android uses
300
- // enum.name with only the first character lowercased; values usually match but are not
301
- // guaranteed identical for every enum. Prefer shared explicit string mappers on both platforms.
302
- documentClassInfo.country?.name?.let {
303
- documentClassInfoJson.put("country", it.replaceFirstChar { char -> char.lowercase() })
304
- }
305
- documentClassInfo.region?.name?.let {
306
- documentClassInfoJson.put("region", it.replaceFirstChar { char -> char.lowercase() })
307
- }
308
- documentClassInfo.type?.name?.let {
309
- documentClassInfoJson.put(
310
- "documentType",
311
- it.replaceFirstChar { char -> char.lowercase() })
302
+ documentClassInfo.country?.let { country ->
303
+ documentClassInfoJson.put("country", serializeClassInfoComponent(
304
+ id = country.id?.let { BlinkIdClassInfoIdMappings.serializeCountryId(it) },
305
+ rawValue = country.rawValue
306
+ ))
307
+ }
308
+ documentClassInfo.region?.let { region ->
309
+ documentClassInfoJson.put("region", serializeClassInfoComponent(
310
+ id = region.id?.let { BlinkIdClassInfoIdMappings.serializeRegionId(it) },
311
+ rawValue = region.rawValue
312
+ ))
313
+ }
314
+ documentClassInfo.documentType?.let { documentType ->
315
+ documentClassInfoJson.put("documentType", serializeClassInfoComponent(
316
+ id = documentType.id?.let { BlinkIdClassInfoIdMappings.serializeDocumentTypeId(it) },
317
+ rawValue = documentType.rawValue
318
+ ))
312
319
  }
313
320
  documentClassInfo.countryName?.let {
314
321
  documentClassInfoJson.put("countryName", it)
@@ -322,10 +329,26 @@ object BlinkIdSerializationUtilities {
322
329
  documentClassInfo.isoNumericCountryCode?.let {
323
330
  documentClassInfoJson.put("isoNumericCountryCode", it)
324
331
  }
325
- documentClassInfoJson.put("empty", documentClassInfo.isEmpty())
332
+ documentClassInfoJson.put("empty", isDocumentClassInfoEmpty(documentClassInfo))
326
333
  return documentClassInfoJson
327
334
  }
328
335
 
336
+ private fun isDocumentClassInfoEmpty(documentClassInfo: DocumentClassInfo): Boolean {
337
+ val classIds = listOf(
338
+ documentClassInfo.country?.id?.name,
339
+ documentClassInfo.region?.id?.name,
340
+ documentClassInfo.documentType?.id?.name
341
+ )
342
+ return classIds.any { it == null } || classIds.all { it == "None" }
343
+ }
344
+
345
+ private fun serializeClassInfoComponent(id: String?, rawValue: String): JSONObject {
346
+ val json = JSONObject()
347
+ id?.let { json.put("id", it) }
348
+ json.put("rawValue", rawValue)
349
+ return json
350
+ }
351
+
329
352
  private fun serializeDataMatchResult(dataMatchResult: DataMatchResult): JSONObject {
330
353
  val dataMatchResultJson = JSONObject()
331
354
 
@@ -731,6 +754,9 @@ object BlinkIdSerializationUtilities {
731
754
  vizResult?.race?.let {
732
755
  vizResultJson.put("race", serializeStringResult(it))
733
756
  }
757
+ vizResult?.ethnicity?.let {
758
+ vizResultJson.put("ethnicity", serializeStringResult(it))
759
+ }
734
760
  vizResult?.religion?.let {
735
761
  vizResultJson.put("religion", serializeStringResult(it))
736
762
  }
@@ -858,6 +884,10 @@ object BlinkIdSerializationUtilities {
858
884
  parentInfoJson.put("lastName", serializeStringResult(it))
859
885
  }
860
886
 
887
+ parentInfo.fullName?.let {
888
+ parentInfoJson.put("fullName", serializeStringResult(it))
889
+ }
890
+
861
891
  return parentInfoJson
862
892
  }
863
893
 
@@ -234,6 +234,21 @@ class BlinkidReactNativeModule(reactContext: ReactApplicationContext) :
234
234
  }
235
235
  }
236
236
 
237
+ override fun refreshLicenseLease(promise: Promise?) {
238
+ CoroutineScope(Dispatchers.Main).launch {
239
+ try {
240
+ val sdk = BlinkIdSdk.sdkInstance
241
+ ?: throw IllegalStateException(
242
+ "The BlinkID SDK is not initialized. Call loadBlinkIdSdk() first, or perform a scan."
243
+ )
244
+ sdk.refreshLicenseLease()
245
+ promise?.resolve(null)
246
+ } catch (error: Exception) {
247
+ promise?.reject(BLINKID_ERROR_RESULT_CODE, error.message)
248
+ }
249
+ }
250
+ }
251
+
237
252
  private suspend fun ensureLoadedSdk(blinkidSdkSettings: JSONObject?): BlinkIdSdk? {
238
253
 
239
254
  blinkIdSdk?.let { return it }
@@ -58,6 +58,13 @@ RCT_EXPORT_METHOD(performDirectApiScan:(nonnull NSString *)blinkIdSdkSettings bl
58
58
  }];
59
59
  }
60
60
 
61
+ RCT_EXPORT_METHOD(refreshLicenseLease:(RCTPromiseResolveBlock)resolve reject:(RCTPromiseRejectBlock)reject) {
62
+ [self->moduleImplementation refreshLicenseLeaseOnResolve:^(NSString * _Nonnull) {
63
+ resolve(@"");
64
+ } onReject:^(NSString * _Nonnull error) {
65
+ reject(@"BlinkIdIosError", error, nil);
66
+ }];
67
+ }
61
68
 
62
69
  RCT_EXPORT_METHOD(performScan:(NSString *)blinkIdSdkSettings blinkIdSessionSettings:(NSString *)blinkIdSessionSettings blinkIdScanningUxSettings:(NSString *)blinkIdScanningUxSettings classFilter:(NSString *)classFilter redactionSettingsResolver:(NSString *)redactionSettingsResolver resolve:(RCTPromiseResolveBlock)resolve reject:(RCTPromiseRejectBlock)reject) {
63
70
  dispatch_async(dispatch_get_main_queue(), ^{
@@ -155,6 +155,28 @@ import BlinkIDUX
155
155
  }
156
156
  }
157
157
  }
158
+
159
+ @objc public func refreshLicenseLease(onResolve: @escaping (String) -> Void, onReject: @escaping (String) -> Void) {
160
+ Task {
161
+ do {
162
+ guard blinkIdSdk != nil else {
163
+ throw BlinkIdReactNativeError.initError(
164
+ "The BlinkID SDK is not initialized. Call the loadBlinkIdSdk() method to pre-load the SDK first, or perform a scan."
165
+ )
166
+ }
167
+ try await BlinkIDSdk.refreshLicenseLease()
168
+ onResolve("")
169
+ } catch let blinkIdError as BlinkIdReactNativeError {
170
+ onReject(BlinkIdReactNativeError.message(for: blinkIdError))
171
+ } catch {
172
+ if let sdkError = error as? InvalidLicenseKeyError {
173
+ onReject(sdkError.message)
174
+ } else {
175
+ onReject(BlinkIdReactNativeError.message(for: error))
176
+ }
177
+ }
178
+ }
179
+ }
158
180
 
159
181
  private func presentScanningUI(_ model: BlinkIDUXModel, _ rootVc: UIViewController) {
160
182
  DispatchQueue.main.async {
@@ -5,35 +5,31 @@
5
5
  <key>AvailableLibraries</key>
6
6
  <array>
7
7
  <dict>
8
- <key>BinaryPath</key>
9
- <string>BlinkID.framework/BlinkID</string>
10
8
  <key>LibraryIdentifier</key>
11
- <string>ios-arm64_x86_64-simulator</string>
9
+ <string>ios-arm64</string>
12
10
  <key>LibraryPath</key>
13
11
  <string>BlinkID.framework</string>
14
12
  <key>SupportedArchitectures</key>
15
13
  <array>
16
14
  <string>arm64</string>
17
- <string>x86_64</string>
18
15
  </array>
19
16
  <key>SupportedPlatform</key>
20
17
  <string>ios</string>
21
- <key>SupportedPlatformVariant</key>
22
- <string>simulator</string>
23
18
  </dict>
24
19
  <dict>
25
- <key>BinaryPath</key>
26
- <string>BlinkID.framework/BlinkID</string>
27
20
  <key>LibraryIdentifier</key>
28
- <string>ios-arm64</string>
21
+ <string>ios-arm64_x86_64-simulator</string>
29
22
  <key>LibraryPath</key>
30
23
  <string>BlinkID.framework</string>
31
24
  <key>SupportedArchitectures</key>
32
25
  <array>
33
26
  <string>arm64</string>
27
+ <string>x86_64</string>
34
28
  </array>
35
29
  <key>SupportedPlatform</key>
36
30
  <string>ios</string>
31
+ <key>SupportedPlatformVariant</key>
32
+ <string>simulator</string>
37
33
  </dict>
38
34
  </array>
39
35
  <key>CFBundlePackageType</key>