@smileid/usesmileid 12.0.0 → 12.0.2

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 (365) hide show
  1. package/CHANGELOG.md +8 -0
  2. package/README.md +1 -1
  3. package/dist/camera/camera_defaults.d.ts +2 -0
  4. package/dist/camera/camera_defaults.d.ts.map +1 -1
  5. package/dist/camera/camera_defaults.js +2 -0
  6. package/dist/camera/camera_defaults.js.map +1 -1
  7. package/dist/core/exception/agent_mode_with_enhanced_liveness_exception.d.ts +11 -0
  8. package/dist/core/exception/agent_mode_with_enhanced_liveness_exception.d.ts.map +1 -0
  9. package/dist/core/exception/agent_mode_with_enhanced_liveness_exception.js +17 -0
  10. package/dist/core/exception/agent_mode_with_enhanced_liveness_exception.js.map +1 -0
  11. package/dist/core/exception/capture_validation_exceptions.d.ts +1 -0
  12. package/dist/core/exception/capture_validation_exceptions.d.ts.map +1 -1
  13. package/dist/core/exception/capture_validation_exceptions.js +1 -0
  14. package/dist/core/exception/capture_validation_exceptions.js.map +1 -1
  15. package/dist/core/exception/flow_exceptions.d.ts +4 -2
  16. package/dist/core/exception/flow_exceptions.d.ts.map +1 -1
  17. package/dist/core/exception/flow_exceptions.js +3 -2
  18. package/dist/core/exception/flow_exceptions.js.map +1 -1
  19. package/dist/core/exception/index.d.ts +1 -0
  20. package/dist/core/exception/index.d.ts.map +1 -1
  21. package/dist/core/exception/index.js +1 -0
  22. package/dist/core/exception/index.js.map +1 -1
  23. package/dist/core/exception/missing_job_type_exception.d.ts +1 -3
  24. package/dist/core/exception/missing_job_type_exception.d.ts.map +1 -1
  25. package/dist/core/exception/missing_job_type_exception.js +2 -4
  26. package/dist/core/exception/missing_job_type_exception.js.map +1 -1
  27. package/dist/core/exception/use_smile_id_error_code.d.ts +1 -0
  28. package/dist/core/exception/use_smile_id_error_code.d.ts.map +1 -1
  29. package/dist/core/exception/use_smile_id_error_code.js +1 -0
  30. package/dist/core/exception/use_smile_id_error_code.js.map +1 -1
  31. package/dist/core/models/config.d.ts +19 -0
  32. package/dist/core/models/config.d.ts.map +1 -1
  33. package/dist/core/models/document_type.d.ts +1 -1
  34. package/dist/core/models/document_type.d.ts.map +1 -1
  35. package/dist/core/models/document_type.js +2 -2
  36. package/dist/core/models/document_type.js.map +1 -1
  37. package/dist/core/models/global_privacy_control.d.ts +36 -0
  38. package/dist/core/models/global_privacy_control.d.ts.map +1 -0
  39. package/dist/core/models/global_privacy_control.js +39 -0
  40. package/dist/core/models/global_privacy_control.js.map +1 -0
  41. package/dist/core/models/network_config.d.ts +2 -2
  42. package/dist/core/models/network_config.js +2 -2
  43. package/dist/data/api/interceptors/smile_auth_interceptor.d.ts.map +1 -1
  44. package/dist/data/api/interceptors/smile_auth_interceptor.js +3 -17
  45. package/dist/data/api/interceptors/smile_auth_interceptor.js.map +1 -1
  46. package/dist/data/api/smile_id_api.d.ts +5 -1
  47. package/dist/data/api/smile_id_api.d.ts.map +1 -1
  48. package/dist/data/api/smile_id_api.js +30 -27
  49. package/dist/data/api/smile_id_api.js.map +1 -1
  50. package/dist/data/dsl/builder/retry_config_builder.d.ts +4 -4
  51. package/dist/data/dsl/builder/retry_config_builder.d.ts.map +1 -1
  52. package/dist/data/dsl/builder/retry_config_builder.js +6 -6
  53. package/dist/data/dsl/builder/retry_config_builder.js.map +1 -1
  54. package/dist/data/model/job_request.d.ts +28 -12
  55. package/dist/data/model/job_request.d.ts.map +1 -1
  56. package/dist/data/model/token_payload.d.ts +78 -0
  57. package/dist/data/model/token_payload.d.ts.map +1 -0
  58. package/dist/data/model/token_payload.js +132 -0
  59. package/dist/data/model/token_payload.js.map +1 -0
  60. package/dist/data/model/user_details_payload.d.ts +39 -0
  61. package/dist/data/model/user_details_payload.d.ts.map +1 -0
  62. package/dist/data/model/user_details_payload.js +53 -0
  63. package/dist/data/model/user_details_payload.js.map +1 -0
  64. package/dist/data/smile_id_urls.d.ts +1 -1
  65. package/dist/data/smile_id_urls.js +1 -1
  66. package/dist/data/smile_id_urls.js.map +1 -1
  67. package/dist/data/util/retry_util.d.ts +1 -1
  68. package/dist/data/util/retry_util.d.ts.map +1 -1
  69. package/dist/data/util/retry_util.js +5 -0
  70. package/dist/data/util/retry_util.js.map +1 -1
  71. package/dist/data/util/use_smile_id_token_decoder.d.ts +15 -3
  72. package/dist/data/util/use_smile_id_token_decoder.d.ts.map +1 -1
  73. package/dist/data/util/use_smile_id_token_decoder.js +20 -8
  74. package/dist/data/util/use_smile_id_token_decoder.js.map +1 -1
  75. package/dist/index.d.ts +2 -2
  76. package/dist/index.d.ts.map +1 -1
  77. package/dist/index.js +2 -2
  78. package/dist/index.js.map +1 -1
  79. package/dist/l10n/strings_en.d.ts +4 -1
  80. package/dist/l10n/strings_en.d.ts.map +1 -1
  81. package/dist/l10n/strings_en.js +4 -1
  82. package/dist/l10n/strings_en.js.map +1 -1
  83. package/dist/l10n/use_smile_id_localizations.d.ts +10 -0
  84. package/dist/l10n/use_smile_id_localizations.d.ts.map +1 -1
  85. package/dist/l10n/use_smile_id_localizations.js +59 -3
  86. package/dist/l10n/use_smile_id_localizations.js.map +1 -1
  87. package/dist/metadata/builder_configuration.d.ts +5 -0
  88. package/dist/metadata/builder_configuration.d.ts.map +1 -1
  89. package/dist/metadata/builder_configuration.js +1 -0
  90. package/dist/metadata/builder_configuration.js.map +1 -1
  91. package/dist/metadata/metadata_configuration_mappers.d.ts +2 -3
  92. package/dist/metadata/metadata_configuration_mappers.d.ts.map +1 -1
  93. package/dist/metadata/metadata_configuration_mappers.js +13 -6
  94. package/dist/metadata/metadata_configuration_mappers.js.map +1 -1
  95. package/dist/metadata/use_smile_id_metadata_factory.d.ts.map +1 -1
  96. package/dist/metadata/use_smile_id_metadata_factory.js +14 -5
  97. package/dist/metadata/use_smile_id_metadata_factory.js.map +1 -1
  98. package/dist/presentation/components/use_smile_id_button.d.ts.map +1 -1
  99. package/dist/presentation/components/use_smile_id_button.js +8 -2
  100. package/dist/presentation/components/use_smile_id_button.js.map +1 -1
  101. package/dist/presentation/components/use_smile_id_enhanced_smart_selfie_clip.d.ts +5 -2
  102. package/dist/presentation/components/use_smile_id_enhanced_smart_selfie_clip.d.ts.map +1 -1
  103. package/dist/presentation/components/use_smile_id_enhanced_smart_selfie_clip.js +8 -3
  104. package/dist/presentation/components/use_smile_id_enhanced_smart_selfie_clip.js.map +1 -1
  105. package/dist/presentation/components/use_smile_id_instructions_hero.d.ts.map +1 -1
  106. package/dist/presentation/components/use_smile_id_instructions_hero.js +8 -3
  107. package/dist/presentation/components/use_smile_id_instructions_hero.js.map +1 -1
  108. package/dist/presentation/flow/dsl/builder/config_builder.d.ts +16 -0
  109. package/dist/presentation/flow/dsl/builder/config_builder.d.ts.map +1 -1
  110. package/dist/presentation/flow/dsl/builder/config_builder.js +18 -0
  111. package/dist/presentation/flow/dsl/builder/config_builder.js.map +1 -1
  112. package/dist/presentation/flow/dsl/builder/screens_builder.d.ts +6 -12
  113. package/dist/presentation/flow/dsl/builder/screens_builder.d.ts.map +1 -1
  114. package/dist/presentation/flow/dsl/builder/screens_builder.js +7 -12
  115. package/dist/presentation/flow/dsl/builder/screens_builder.js.map +1 -1
  116. package/dist/presentation/flow/dsl/use_smile_id_flow_builder.d.ts.map +1 -1
  117. package/dist/presentation/flow/dsl/use_smile_id_flow_builder.js +23 -1
  118. package/dist/presentation/flow/dsl/use_smile_id_flow_builder.js.map +1 -1
  119. package/dist/presentation/flow/flow_navigation_manager.d.ts +22 -3
  120. package/dist/presentation/flow/flow_navigation_manager.d.ts.map +1 -1
  121. package/dist/presentation/flow/flow_navigation_manager.js +84 -46
  122. package/dist/presentation/flow/flow_navigation_manager.js.map +1 -1
  123. package/dist/presentation/flow/model/instructions_defaults.d.ts.map +1 -1
  124. package/dist/presentation/flow/model/instructions_defaults.js +1 -1
  125. package/dist/presentation/flow/model/instructions_defaults.js.map +1 -1
  126. package/dist/presentation/flow/screen/orchestrated_capture_screen.d.ts.map +1 -1
  127. package/dist/presentation/flow/screen/orchestrated_capture_screen.js +13 -3
  128. package/dist/presentation/flow/screen/orchestrated_capture_screen.js.map +1 -1
  129. package/dist/presentation/flow/screen/orchestrated_consent_screen.d.ts.map +1 -1
  130. package/dist/presentation/flow/screen/orchestrated_consent_screen.js +3 -1
  131. package/dist/presentation/flow/screen/orchestrated_consent_screen.js.map +1 -1
  132. package/dist/presentation/flow/screen/orchestrated_preview_screen.d.ts.map +1 -1
  133. package/dist/presentation/flow/screen/orchestrated_preview_screen.js +0 -8
  134. package/dist/presentation/flow/screen/orchestrated_preview_screen.js.map +1 -1
  135. package/dist/presentation/flow/screen/orchestrated_processing_screen.d.ts.map +1 -1
  136. package/dist/presentation/flow/screen/orchestrated_processing_screen.js +25 -5
  137. package/dist/presentation/flow/screen/orchestrated_processing_screen.js.map +1 -1
  138. package/dist/presentation/flow/use_smile_id_flow.d.ts.map +1 -1
  139. package/dist/presentation/flow/use_smile_id_flow.js +45 -12
  140. package/dist/presentation/flow/use_smile_id_flow.js.map +1 -1
  141. package/dist/presentation/flow/validation/flow_validator.d.ts +16 -2
  142. package/dist/presentation/flow/validation/flow_validator.d.ts.map +1 -1
  143. package/dist/presentation/flow/validation/flow_validator.js +61 -47
  144. package/dist/presentation/flow/validation/flow_validator.js.map +1 -1
  145. package/dist/presentation/flow/validation/job_type_validator.d.ts +7 -0
  146. package/dist/presentation/flow/validation/job_type_validator.d.ts.map +1 -1
  147. package/dist/presentation/flow/validation/job_type_validator.js +52 -27
  148. package/dist/presentation/flow/validation/job_type_validator.js.map +1 -1
  149. package/dist/presentation/flow/validation/user_details_validator.d.ts +9 -0
  150. package/dist/presentation/flow/validation/user_details_validator.d.ts.map +1 -0
  151. package/dist/presentation/flow/validation/user_details_validator.js +40 -0
  152. package/dist/presentation/flow/validation/user_details_validator.js.map +1 -0
  153. package/dist/presentation/screen/helpers/capture_screen_helpers.d.ts.map +1 -1
  154. package/dist/presentation/screen/helpers/capture_screen_helpers.js +1 -0
  155. package/dist/presentation/screen/helpers/capture_screen_helpers.js.map +1 -1
  156. package/dist/presentation/screen/helpers/capture_ui_state.d.ts +6 -6
  157. package/dist/presentation/screen/helpers/capture_ui_state.d.ts.map +1 -1
  158. package/dist/presentation/screen/helpers/capture_ui_state.js +19 -19
  159. package/dist/presentation/screen/helpers/capture_ui_state.js.map +1 -1
  160. package/dist/presentation/screen/helpers/ess_turn_haptics.d.ts +2 -2
  161. package/dist/presentation/screen/helpers/ess_turn_haptics.d.ts.map +1 -1
  162. package/dist/presentation/screen/helpers/ess_turn_haptics.js +6 -6
  163. package/dist/presentation/screen/helpers/ess_turn_haptics.js.map +1 -1
  164. package/dist/presentation/screen/helpers/scan_state_to_overlay_state.d.ts +5 -5
  165. package/dist/presentation/screen/helpers/scan_state_to_overlay_state.d.ts.map +1 -1
  166. package/dist/presentation/screen/helpers/scan_state_to_overlay_state.js +11 -11
  167. package/dist/presentation/screen/helpers/scan_state_to_overlay_state.js.map +1 -1
  168. package/dist/presentation/screen/helpers/use_capture_orientation_lock.d.ts +13 -3
  169. package/dist/presentation/screen/helpers/use_capture_orientation_lock.d.ts.map +1 -1
  170. package/dist/presentation/screen/helpers/use_capture_orientation_lock.js +48 -6
  171. package/dist/presentation/screen/helpers/use_capture_orientation_lock.js.map +1 -1
  172. package/dist/presentation/screen/use_smile_id_capture_screen.d.ts +4 -2
  173. package/dist/presentation/screen/use_smile_id_capture_screen.d.ts.map +1 -1
  174. package/dist/presentation/screen/use_smile_id_capture_screen.js +90 -23
  175. package/dist/presentation/screen/use_smile_id_capture_screen.js.map +1 -1
  176. package/dist/presentation/screen/use_smile_id_consent_screen.d.ts +7 -0
  177. package/dist/presentation/screen/use_smile_id_consent_screen.d.ts.map +1 -1
  178. package/dist/presentation/screen/use_smile_id_consent_screen.js +6 -5
  179. package/dist/presentation/screen/use_smile_id_consent_screen.js.map +1 -1
  180. package/dist/presentation/screen/use_smile_id_document_back_instructions.d.ts.map +1 -1
  181. package/dist/presentation/screen/use_smile_id_document_back_instructions.js +5 -13
  182. package/dist/presentation/screen/use_smile_id_document_back_instructions.js.map +1 -1
  183. package/dist/presentation/screen/use_smile_id_document_preview_screen.js +1 -1
  184. package/dist/presentation/screen/use_smile_id_document_preview_screen.js.map +1 -1
  185. package/dist/presentation/screen/use_smile_id_preview_screen.d.ts +1 -21
  186. package/dist/presentation/screen/use_smile_id_preview_screen.d.ts.map +1 -1
  187. package/dist/presentation/screen/use_smile_id_preview_screen.js +3 -14
  188. package/dist/presentation/screen/use_smile_id_preview_screen.js.map +1 -1
  189. package/dist/presentation/screen/use_smile_id_processing_screen.js +1 -1
  190. package/dist/presentation/screen/use_smile_id_processing_screen.js.map +1 -1
  191. package/dist/presentation/utils/locale_utils.d.ts +10 -4
  192. package/dist/presentation/utils/locale_utils.d.ts.map +1 -1
  193. package/dist/presentation/utils/locale_utils.js +13 -5
  194. package/dist/presentation/utils/locale_utils.js.map +1 -1
  195. package/dist/testing/fake_face_analyzer.d.ts +43 -0
  196. package/dist/testing/fake_face_analyzer.d.ts.map +1 -0
  197. package/dist/testing/fake_face_analyzer.js +52 -0
  198. package/dist/testing/fake_face_analyzer.js.map +1 -0
  199. package/dist/testing/index.d.ts +5 -0
  200. package/dist/testing/index.d.ts.map +1 -0
  201. package/dist/testing/index.js +7 -0
  202. package/dist/testing/index.js.map +1 -0
  203. package/dist/testing/scenario_expectations.d.ts +28 -0
  204. package/dist/testing/scenario_expectations.d.ts.map +1 -0
  205. package/dist/testing/scenario_expectations.js +65 -0
  206. package/dist/testing/scenario_expectations.js.map +1 -0
  207. package/dist/testing/scenario_loader.d.ts +11 -0
  208. package/dist/testing/scenario_loader.d.ts.map +1 -0
  209. package/dist/testing/scenario_loader.js +64 -0
  210. package/dist/testing/scenario_loader.js.map +1 -0
  211. package/dist/testing/scripted_scan_results.d.ts +17 -0
  212. package/dist/testing/scripted_scan_results.d.ts.map +1 -0
  213. package/dist/testing/scripted_scan_results.js +52 -0
  214. package/dist/testing/scripted_scan_results.js.map +1 -0
  215. package/package.json +11 -4
  216. package/src/__tests__/dsl.test.ts +51 -1
  217. package/src/__tests__/react_native_mock.tsx +22 -0
  218. package/src/__tests__/setup_react_native.ts +17 -2
  219. package/src/__tests__/snapshots/__snapshots__/screens_structural.test.tsx.snap +5267 -0
  220. package/src/__tests__/snapshots/screens_structural.test.tsx +230 -0
  221. package/src/camera/__tests__/camera_permissions.test.ts +72 -0
  222. package/src/camera/__tests__/camera_system_focus.test.ts +173 -0
  223. package/src/camera/__tests__/use_smile_id_camera_preview.test.tsx +461 -0
  224. package/src/camera/__tests__/use_smile_id_camera_system.test.ts +103 -0
  225. package/src/camera/__tests__/use_smile_id_frame_stream_hook.test.tsx +229 -0
  226. package/src/camera/camera_defaults.ts +3 -0
  227. package/src/core/exception/__tests__/builder_validation_exceptions.test.ts +81 -0
  228. package/src/core/exception/agent_mode_with_enhanced_liveness_exception.ts +20 -0
  229. package/src/core/exception/capture_validation_exceptions.ts +1 -0
  230. package/src/core/exception/flow_exceptions.test.ts +10 -0
  231. package/src/core/exception/flow_exceptions.ts +3 -2
  232. package/src/core/exception/index.ts +1 -0
  233. package/src/core/exception/missing_job_type_exception.ts +2 -4
  234. package/src/core/exception/use_smile_id_error_code.ts +1 -0
  235. package/src/core/models/__tests__/document_type.test.ts +2 -2
  236. package/src/core/models/__tests__/flow_models.test.ts +26 -0
  237. package/src/core/models/config.ts +22 -0
  238. package/src/core/models/document_type.ts +2 -2
  239. package/src/core/models/global_privacy_control.ts +45 -0
  240. package/src/core/models/network_config.ts +2 -2
  241. package/src/data/api/__tests__/smile_id_api.test.ts +275 -1
  242. package/src/data/api/interceptors/__tests__/credential_header_redaction.test.ts +144 -0
  243. package/src/data/api/interceptors/__tests__/gzip_interceptor.test.ts +83 -0
  244. package/src/data/api/interceptors/smile_auth_interceptor.ts +3 -18
  245. package/src/data/api/smile_id_api.ts +36 -49
  246. package/src/data/compression/__tests__/payload_compressor_real_jpeg.test.ts +6 -2
  247. package/src/data/dsl/__tests__/use_smile_id_network_builder.test.ts +157 -0
  248. package/src/data/dsl/builder/__tests__/config_builders.test.ts +62 -0
  249. package/src/data/dsl/builder/retry_config_builder.ts +6 -6
  250. package/src/data/factory/__tests__/retry_gzip_mac_composition.test.ts +163 -0
  251. package/src/data/factory/__tests__/signed_job_submission_headers.test.ts +1 -1
  252. package/src/data/model/__tests__/token_payload.test.ts +224 -0
  253. package/src/data/model/__tests__/user_details_payload.test.ts +100 -0
  254. package/src/data/model/job_request.ts +27 -12
  255. package/src/data/model/token_payload.ts +182 -0
  256. package/src/data/model/user_details_payload.ts +84 -0
  257. package/src/data/repository/__tests__/network_retries.test.ts +1 -1
  258. package/src/data/repository/__tests__/repository_dispatch.test.ts +366 -0
  259. package/src/data/repository/__tests__/use_smile_id_repository.test.ts +1 -1
  260. package/src/data/security/__tests__/request_canonicalizer.test.ts +132 -0
  261. package/src/data/security/__tests__/signing_crypto.test.ts +203 -0
  262. package/src/data/smile_id_urls.ts +1 -1
  263. package/src/data/util/__tests__/retry_util.test.ts +25 -0
  264. package/src/data/util/__tests__/use_smile_id_token_decoder.test.ts +179 -0
  265. package/src/data/util/retry_util.ts +9 -1
  266. package/src/data/util/use_smile_id_token_decoder.ts +29 -8
  267. package/src/index.ts +6 -4
  268. package/src/l10n/__tests__/use_smile_id_localizations.test.ts +122 -5
  269. package/src/l10n/__tests__/use_smile_id_localizations_provider.test.tsx +112 -0
  270. package/src/l10n/__tests__/use_smile_id_localizations_surface.test.ts +231 -0
  271. package/src/l10n/strings_en.ts +5 -1
  272. package/src/l10n/use_smile_id_localizations.ts +80 -3
  273. package/src/metadata/__tests__/device_orientation_sampling.test.ts +165 -0
  274. package/src/metadata/__tests__/geolocation.test.ts +150 -0
  275. package/src/metadata/__tests__/metadata_configuration_mappers.test.ts +39 -0
  276. package/src/metadata/__tests__/metadata_configuration_objects.test.ts +2 -1
  277. package/src/metadata/__tests__/metadata_device_context.test.ts +3 -3
  278. package/src/metadata/__tests__/metadata_device_os_android.test.ts +18 -0
  279. package/src/metadata/__tests__/metadata_golden_fixture.json +1 -1
  280. package/src/metadata/__tests__/metadata_payload_golden.test.ts +4 -4
  281. package/src/metadata/__tests__/optional_native_modules.test.ts +234 -0
  282. package/src/metadata/__tests__/use_smile_id_metadata.test.ts +1 -1
  283. package/src/metadata/__tests__/use_smile_id_metadata_factory.test.ts +615 -0
  284. package/src/metadata/builder_configuration.ts +6 -0
  285. package/src/metadata/metadata_configuration_mappers.ts +21 -7
  286. package/src/metadata/use_smile_id_metadata_factory.ts +17 -6
  287. package/src/presentation/assets/si_document_green_book_hero_animation.json +1 -4668
  288. package/src/presentation/assets/si_document_hero_animation.json +1 -4799
  289. package/src/presentation/assets/si_document_hero_back_animation.json +1 -2039
  290. package/src/presentation/assets/si_document_passport_hero_animation.json +1 -14491
  291. package/src/presentation/assets/si_ess_all_directions_hero_animation.json +1 -0
  292. package/src/presentation/assets/si_ess_animation_all_directions.json +1 -6589
  293. package/src/presentation/assets/si_selfie_hero_animation.json +1 -1439
  294. package/src/presentation/assets/si_smile_to_capture_animation.json +1 -1439
  295. package/src/presentation/components/__tests__/use_smile_id_content_card.test.tsx +112 -0
  296. package/src/presentation/components/__tests__/use_smile_id_enhanced_smart_selfie_clip.test.tsx +9 -4
  297. package/src/presentation/components/__tests__/use_smile_id_face_oval_image.test.tsx +190 -0
  298. package/src/presentation/components/__tests__/use_smile_id_instructions_hero.test.tsx +44 -0
  299. package/src/presentation/components/__tests__/use_smile_id_learn_more_content.test.tsx +159 -0
  300. package/src/presentation/components/__tests__/use_smile_id_processing_center_indicator.test.tsx +88 -0
  301. package/src/presentation/components/use_smile_id_button.tsx +7 -2
  302. package/src/presentation/components/use_smile_id_enhanced_smart_selfie_clip.tsx +9 -3
  303. package/src/presentation/components/use_smile_id_instructions_hero.tsx +10 -0
  304. package/src/presentation/flow/__tests__/document_flow_navigation.test.ts +3 -3
  305. package/src/presentation/flow/__tests__/flow_navigation_manager.test.ts +372 -1
  306. package/src/presentation/flow/__tests__/use_smile_id_flow.test.tsx +651 -0
  307. package/src/presentation/flow/dsl/__tests__/use_smile_id_builder_component.test.tsx +120 -0
  308. package/src/presentation/flow/dsl/builder/__tests__/config_builder.test.ts +25 -0
  309. package/src/presentation/flow/dsl/builder/config_builder.ts +21 -0
  310. package/src/presentation/flow/dsl/builder/screens_builder.ts +7 -12
  311. package/src/presentation/flow/dsl/use_smile_id_flow_builder.ts +27 -1
  312. package/src/presentation/flow/flow_navigation_manager.ts +108 -93
  313. package/src/presentation/flow/graph/__tests__/screen_renderer.test.tsx +102 -0
  314. package/src/presentation/flow/model/instructions_defaults.ts +1 -1
  315. package/src/presentation/flow/screen/__tests__/orchestrated_capture_screen.test.tsx +836 -0
  316. package/src/presentation/flow/screen/__tests__/orchestrated_consent_screen.test.tsx +165 -0
  317. package/src/presentation/flow/screen/__tests__/orchestrated_instructions_screen.test.tsx +163 -0
  318. package/src/presentation/flow/screen/__tests__/orchestrated_preview_screen.test.tsx +224 -0
  319. package/src/presentation/flow/screen/__tests__/orchestrated_processing_screen.test.tsx +338 -0
  320. package/src/presentation/flow/screen/orchestrated_capture_screen.tsx +18 -3
  321. package/src/presentation/flow/screen/orchestrated_consent_screen.tsx +5 -0
  322. package/src/presentation/flow/screen/orchestrated_preview_screen.tsx +0 -12
  323. package/src/presentation/flow/screen/orchestrated_processing_screen.tsx +42 -5
  324. package/src/presentation/flow/use_smile_id_flow.tsx +63 -12
  325. package/src/presentation/flow/validation/__tests__/flow_validator.test.ts +219 -1
  326. package/src/presentation/flow/validation/__tests__/job_type_validator.test.ts +200 -0
  327. package/src/presentation/flow/validation/flow_validator.ts +85 -57
  328. package/src/presentation/flow/validation/job_type_validator.ts +73 -39
  329. package/src/presentation/flow/validation/user_details_validator.ts +53 -0
  330. package/src/presentation/screen/__tests__/capture_ui_state.test.ts +66 -47
  331. package/src/presentation/screen/__tests__/ess_turn_haptics.test.ts +15 -11
  332. package/src/presentation/screen/__tests__/feedback_copy_table.test.ts +145 -0
  333. package/src/presentation/screen/__tests__/scan_state_to_overlay_state.test.ts +47 -27
  334. package/src/presentation/screen/__tests__/use_smile_id_capture_screen.test.tsx +524 -14
  335. package/src/presentation/screen/__tests__/use_smile_id_document_back_instructions.test.tsx +4 -2
  336. package/src/presentation/screen/__tests__/use_smile_id_permission_screen.test.tsx +68 -0
  337. package/src/presentation/screen/__tests__/use_smile_id_preview_screen.test.tsx +10 -40
  338. package/src/presentation/screen/helpers/__tests__/use_capture_orientation_lock.test.tsx +212 -0
  339. package/src/presentation/screen/helpers/capture_screen_helpers.ts +1 -0
  340. package/src/presentation/screen/helpers/capture_ui_state.ts +27 -27
  341. package/src/presentation/screen/helpers/ess_turn_haptics.ts +9 -9
  342. package/src/presentation/screen/helpers/scan_state_to_overlay_state.ts +13 -13
  343. package/src/presentation/screen/helpers/use_capture_orientation_lock.ts +69 -7
  344. package/src/presentation/screen/use_smile_id_capture_screen.tsx +107 -28
  345. package/src/presentation/screen/use_smile_id_consent_screen.tsx +16 -5
  346. package/src/presentation/screen/use_smile_id_document_back_instructions.tsx +14 -23
  347. package/src/presentation/screen/use_smile_id_document_preview_screen.tsx +1 -1
  348. package/src/presentation/screen/use_smile_id_preview_screen.tsx +13 -45
  349. package/src/presentation/screen/use_smile_id_processing_screen.tsx +1 -1
  350. package/src/presentation/theme/__tests__/use_use_smile_id_fonts.test.tsx +166 -0
  351. package/src/presentation/utils/__tests__/locale_utils.test.ts +46 -5
  352. package/src/presentation/utils/locale_utils.ts +13 -4
  353. package/src/testing/__tests__/fake_face_analyzer.test.ts +42 -0
  354. package/src/testing/__tests__/scenario_expectations.test.ts +110 -0
  355. package/src/testing/__tests__/scenario_loader.test.ts +64 -0
  356. package/src/testing/fake_face_analyzer.ts +82 -0
  357. package/src/testing/index.ts +15 -0
  358. package/src/testing/scenario_expectations.ts +87 -0
  359. package/src/testing/scenario_loader.ts +83 -0
  360. package/src/testing/scripted_scan_results.ts +66 -0
  361. package/dist/presentation/components/use_smile_id_face_silhouette_overlay.d.ts +0 -15
  362. package/dist/presentation/components/use_smile_id_face_silhouette_overlay.d.ts.map +0 -1
  363. package/dist/presentation/components/use_smile_id_face_silhouette_overlay.js +0 -19
  364. package/dist/presentation/components/use_smile_id_face_silhouette_overlay.js.map +0 -1
  365. package/src/presentation/components/use_smile_id_face_silhouette_overlay.tsx +0 -27
package/CHANGELOG.md CHANGED
@@ -1,3 +1,11 @@
1
+ ## 12.0.2
2
+
3
+ See the repository CHANGELOG for the 12.0.2 release notes.
4
+
5
+ ## 12.0.1
6
+
7
+ See the repository CHANGELOG for the 12.0.1 release notes.
8
+
1
9
  ## 12.0.0
2
10
 
3
11
  First stable release of the Smile ID React Native (Expo) SDK v12, shipping
package/README.md CHANGED
@@ -29,7 +29,7 @@ Sizes are measured on every push to `main` and updated automatically by CI.
29
29
  - React Native 0.83+ or Expo SDK 55+
30
30
  - Node 20.18+
31
31
  - React 19.2+
32
- - Xcode (latest stable) — iOS 15.0+ deployment target
32
+ - Xcode (latest stable) — iOS 16.4 deployment target (set by Expo SDK 56's modules; the Smile ID iOS SDK itself supports iOS 15)
33
33
  - Android Gradle Plugin 8.x — `compileSdk` 37, `minSdk` 26 (the
34
34
  `com.usesmileid:*` 12.0.0 AARs are built with compileSdk 37 and
35
35
  enforce it as the consumer minimum — set `android.compileSdkVersion=37` in
@@ -16,6 +16,8 @@ export declare const CameraDefaults: {
16
16
  readonly width: 1280;
17
17
  readonly height: 720;
18
18
  };
19
+ /** How long a streaming capture waits for its first analyzed frame before reporting the camera unavailable. */
20
+ readonly firstFrameTimeoutMs: 10000;
19
21
  /** Longest-edge ceiling (px) for an imported document image; downscale-only. */
20
22
  readonly documentMaxDimension: 1600;
21
23
  /** JPEG quality (0–1) for imported document images. */
@@ -1 +1 @@
1
- {"version":3,"file":"camera_defaults.d.ts","sourceRoot":"","sources":["../../src/camera/camera_defaults.ts"],"names":[],"mappings":"AAAA,qCAAqC;AACrC,eAAO,MAAM,cAAc;IACzB,wDAAwD;;IAExD,wDAAwD;;IAGxD,gFAAgF;;IAEhF,yFAAyF;;;;;IAEzF,gHAAgH;;;;;IAGhH,gFAAgF;;IAEhF,uDAAuD;;IAEvD,oFAAoF;;IAEpF,gFAAgF;;IAEhF,kFAAkF;;CAE1E,CAAC"}
1
+ {"version":3,"file":"camera_defaults.d.ts","sourceRoot":"","sources":["../../src/camera/camera_defaults.ts"],"names":[],"mappings":"AAAA,qCAAqC;AACrC,eAAO,MAAM,cAAc;IACzB,wDAAwD;;IAExD,wDAAwD;;IAGxD,gFAAgF;;IAEhF,yFAAyF;;;;;IAEzF,gHAAgH;;;;;IAGhH,+GAA+G;;IAG/G,gFAAgF;;IAEhF,uDAAuD;;IAEvD,oFAAoF;;IAEpF,gFAAgF;;IAEhF,kFAAkF;;CAE1E,CAAC"}
@@ -10,6 +10,8 @@ export const CameraDefaults = {
10
10
  analysisTargetResolution: { width: 640, height: 480 },
11
11
  /** Document analysis resolution (16:9, matched to the visible preview so the guide-rect crop stays aligned). */
12
12
  documentAnalysisResolution: { width: 1280, height: 720 },
13
+ /** How long a streaming capture waits for its first analyzed frame before reporting the camera unavailable. */
14
+ firstFrameTimeoutMs: 10_000,
13
15
  /** Longest-edge ceiling (px) for an imported document image; downscale-only. */
14
16
  documentMaxDimension: 1600,
15
17
  /** JPEG quality (0–1) for imported document images. */
@@ -1 +1 @@
1
- {"version":3,"file":"camera_defaults.js","sourceRoot":"","sources":["../../src/camera/camera_defaults.ts"],"names":[],"mappings":"AAAA,qCAAqC;AACrC,MAAM,CAAC,MAAM,cAAc,GAAG;IAC5B,wDAAwD;IACxD,sBAAsB,EAAE,GAAG;IAC3B,wDAAwD;IACxD,sBAAsB,EAAE,GAAG;IAE3B,gFAAgF;IAChF,iBAAiB,EAAE,EAAE;IACrB,yFAAyF;IACzF,wBAAwB,EAAE,EAAE,KAAK,EAAE,GAAG,EAAE,MAAM,EAAE,GAAG,EAAW;IAC9D,gHAAgH;IAChH,0BAA0B,EAAE,EAAE,KAAK,EAAE,IAAI,EAAE,MAAM,EAAE,GAAG,EAAW;IAEjE,gFAAgF;IAChF,oBAAoB,EAAE,IAAI;IAC1B,uDAAuD;IACvD,mBAAmB,EAAE,IAAI;IACzB,oFAAoF;IACpF,6BAA6B,EAAE,GAAG;IAClC,gFAAgF;IAChF,qBAAqB,EAAE,GAAG;IAC1B,kFAAkF;IAClF,sBAAsB,EAAE,GAAG;CACnB,CAAC"}
1
+ {"version":3,"file":"camera_defaults.js","sourceRoot":"","sources":["../../src/camera/camera_defaults.ts"],"names":[],"mappings":"AAAA,qCAAqC;AACrC,MAAM,CAAC,MAAM,cAAc,GAAG;IAC5B,wDAAwD;IACxD,sBAAsB,EAAE,GAAG;IAC3B,wDAAwD;IACxD,sBAAsB,EAAE,GAAG;IAE3B,gFAAgF;IAChF,iBAAiB,EAAE,EAAE;IACrB,yFAAyF;IACzF,wBAAwB,EAAE,EAAE,KAAK,EAAE,GAAG,EAAE,MAAM,EAAE,GAAG,EAAW;IAC9D,gHAAgH;IAChH,0BAA0B,EAAE,EAAE,KAAK,EAAE,IAAI,EAAE,MAAM,EAAE,GAAG,EAAW;IAEjE,+GAA+G;IAC/G,mBAAmB,EAAE,MAAM;IAE3B,gFAAgF;IAChF,oBAAoB,EAAE,IAAI;IAC1B,uDAAuD;IACvD,mBAAmB,EAAE,IAAI;IACzB,oFAAoF;IACpF,6BAA6B,EAAE,GAAG;IAClC,gFAAgF;IAChF,qBAAqB,EAAE,GAAG;IAC1B,kFAAkF;IAClF,sBAAsB,EAAE,GAAG;CACnB,CAAC"}
@@ -0,0 +1,11 @@
1
+ import { UseSmileIDBuilderException } from "./use_smile_id_builder_exception";
2
+ /**
3
+ * Agent mode was combined with enhanced liveness. The head-turn challenge is
4
+ * validated for front-camera capture only, so the two options are mutually
5
+ * exclusive.
6
+ */
7
+ export declare class AgentModeWithEnhancedLivenessException extends UseSmileIDBuilderException {
8
+ readonly errorCode: "BUILDER_AGENT_MODE_WITH_ENHANCED_LIVENESS";
9
+ constructor();
10
+ }
11
+ //# sourceMappingURL=agent_mode_with_enhanced_liveness_exception.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"agent_mode_with_enhanced_liveness_exception.d.ts","sourceRoot":"","sources":["../../../src/core/exception/agent_mode_with_enhanced_liveness_exception.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,0BAA0B,EAAE,MAAM,kCAAkC,CAAC;AAG9E;;;;GAIG;AACH,qBAAa,sCAAuC,SAAQ,0BAA0B;IACpF,QAAQ,CAAC,SAAS,8CAC0C;;CAS7D"}
@@ -0,0 +1,17 @@
1
+ import { UseSmileIDBuilderException } from "./use_smile_id_builder_exception";
2
+ import { UseSmileIDErrorCode } from "./use_smile_id_error_code";
3
+ /**
4
+ * Agent mode was combined with enhanced liveness. The head-turn challenge is
5
+ * validated for front-camera capture only, so the two options are mutually
6
+ * exclusive.
7
+ */
8
+ export class AgentModeWithEnhancedLivenessException extends UseSmileIDBuilderException {
9
+ errorCode = UseSmileIDErrorCode.Builder.AgentModeWithEnhancedLiveness;
10
+ constructor() {
11
+ super({
12
+ message: "allowAgentMode is not supported with enableEnhancedLiveness",
13
+ suggestedFix: "Disable one of them inside selfie { }: allowAgentMode for rear-camera agent capture, or enableEnhancedLiveness for the head-turn challenge",
14
+ });
15
+ }
16
+ }
17
+ //# sourceMappingURL=agent_mode_with_enhanced_liveness_exception.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"agent_mode_with_enhanced_liveness_exception.js","sourceRoot":"","sources":["../../../src/core/exception/agent_mode_with_enhanced_liveness_exception.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,0BAA0B,EAAE,MAAM,kCAAkC,CAAC;AAC9E,OAAO,EAAE,mBAAmB,EAAE,MAAM,2BAA2B,CAAC;AAEhE;;;;GAIG;AACH,MAAM,OAAO,sCAAuC,SAAQ,0BAA0B;IAC3E,SAAS,GAChB,mBAAmB,CAAC,OAAO,CAAC,6BAA6B,CAAC;IAE5D;QACE,KAAK,CAAC;YACJ,OAAO,EAAE,6DAA6D;YACtE,YAAY,EACV,4IAA4I;SAC/I,CAAC,CAAC;IACL,CAAC;CACF"}
@@ -3,6 +3,7 @@
3
3
  * Each concrete class lives in its own file; this module keeps the
4
4
  * legacy import path stable.
5
5
  */
6
+ export { AgentModeWithEnhancedLivenessException } from "./agent_mode_with_enhanced_liveness_exception";
6
7
  export { InvalidSelfieCaptureConfigException } from "./invalid_selfie_capture_config_exception";
7
8
  export { InvalidDocumentCaptureConfigException } from "./invalid_document_capture_config_exception";
8
9
  export { InvalidMissingCaptureTypeException } from "./invalid_missing_capture_type_exception";
@@ -1 +1 @@
1
- {"version":3,"file":"capture_validation_exceptions.d.ts","sourceRoot":"","sources":["../../../src/core/exception/capture_validation_exceptions.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AACH,OAAO,EAAE,mCAAmC,EAAE,MAAM,2CAA2C,CAAC;AAChG,OAAO,EAAE,qCAAqC,EAAE,MAAM,6CAA6C,CAAC;AACpG,OAAO,EAAE,kCAAkC,EAAE,MAAM,0CAA0C,CAAC"}
1
+ {"version":3,"file":"capture_validation_exceptions.d.ts","sourceRoot":"","sources":["../../../src/core/exception/capture_validation_exceptions.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AACH,OAAO,EAAE,sCAAsC,EAAE,MAAM,+CAA+C,CAAC;AACvG,OAAO,EAAE,mCAAmC,EAAE,MAAM,2CAA2C,CAAC;AAChG,OAAO,EAAE,qCAAqC,EAAE,MAAM,6CAA6C,CAAC;AACpG,OAAO,EAAE,kCAAkC,EAAE,MAAM,0CAA0C,CAAC"}
@@ -3,6 +3,7 @@
3
3
  * Each concrete class lives in its own file; this module keeps the
4
4
  * legacy import path stable.
5
5
  */
6
+ export { AgentModeWithEnhancedLivenessException } from "./agent_mode_with_enhanced_liveness_exception";
6
7
  export { InvalidSelfieCaptureConfigException } from "./invalid_selfie_capture_config_exception";
7
8
  export { InvalidDocumentCaptureConfigException } from "./invalid_document_capture_config_exception";
8
9
  export { InvalidMissingCaptureTypeException } from "./invalid_missing_capture_type_exception";
@@ -1 +1 @@
1
- {"version":3,"file":"capture_validation_exceptions.js","sourceRoot":"","sources":["../../../src/core/exception/capture_validation_exceptions.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AACH,OAAO,EAAE,mCAAmC,EAAE,MAAM,2CAA2C,CAAC;AAChG,OAAO,EAAE,qCAAqC,EAAE,MAAM,6CAA6C,CAAC;AACpG,OAAO,EAAE,kCAAkC,EAAE,MAAM,0CAA0C,CAAC"}
1
+ {"version":3,"file":"capture_validation_exceptions.js","sourceRoot":"","sources":["../../../src/core/exception/capture_validation_exceptions.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AACH,OAAO,EAAE,sCAAsC,EAAE,MAAM,+CAA+C,CAAC;AACvG,OAAO,EAAE,mCAAmC,EAAE,MAAM,2CAA2C,CAAC;AAChG,OAAO,EAAE,qCAAqC,EAAE,MAAM,6CAA6C,CAAC;AACpG,OAAO,EAAE,kCAAkC,EAAE,MAAM,0CAA0C,CAAC"}
@@ -18,10 +18,12 @@ export declare class ConsentDeniedException extends UseSmileIDGeneralException {
18
18
  *
19
19
  * Surfaced through `onResult.failure` so partners can distinguish a
20
20
  * user-initiated cancellation from a submission error, mirroring the
21
- * native SDKs' `ProcessingCancelledException`.
21
+ * native SDKs' `ProcessingCancelledException`. An optional `cause` carries a submission failure that preceded the exit.
22
22
  */
23
23
  export declare class ProcessingCancelledException extends UseSmileIDGeneralException {
24
24
  readonly errorCode: "GENERAL_OPERATION_FAILED";
25
- constructor();
25
+ constructor(args?: {
26
+ cause?: unknown;
27
+ });
26
28
  }
27
29
  //# sourceMappingURL=flow_exceptions.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"flow_exceptions.d.ts","sourceRoot":"","sources":["../../../src/core/exception/flow_exceptions.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,0BAA0B,EAAE,MAAM,kCAAkC,CAAC;AAE9E;;;;;;;GAOG;AACH,qBAAa,sBAAuB,SAAQ,0BAA0B;IACpE,QAAQ,CAAC,SAAS,6BAA+C;gBAErD,IAAI,EAAE;QAAE,SAAS,EAAE,MAAM,CAAA;KAAE;CAQxC;AAED;;;;;;GAMG;AACH,qBAAa,4BAA6B,SAAQ,0BAA0B;IAC1E,QAAQ,CAAC,SAAS,6BAA+C;;CASlE"}
1
+ {"version":3,"file":"flow_exceptions.d.ts","sourceRoot":"","sources":["../../../src/core/exception/flow_exceptions.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,0BAA0B,EAAE,MAAM,kCAAkC,CAAC;AAE9E;;;;;;;GAOG;AACH,qBAAa,sBAAuB,SAAQ,0BAA0B;IACpE,QAAQ,CAAC,SAAS,6BAA+C;gBAErD,IAAI,EAAE;QAAE,SAAS,EAAE,MAAM,CAAA;KAAE;CAQxC;AAED;;;;;;GAMG;AACH,qBAAa,4BAA6B,SAAQ,0BAA0B;IAC1E,QAAQ,CAAC,SAAS,6BAA+C;gBAErD,IAAI,GAAE;QAAE,KAAK,CAAC,EAAE,OAAO,CAAA;KAAO;CAQ3C"}
@@ -23,14 +23,15 @@ export class ConsentDeniedException extends UseSmileIDGeneralException {
23
23
  *
24
24
  * Surfaced through `onResult.failure` so partners can distinguish a
25
25
  * user-initiated cancellation from a submission error, mirroring the
26
- * native SDKs' `ProcessingCancelledException`.
26
+ * native SDKs' `ProcessingCancelledException`. An optional `cause` carries a submission failure that preceded the exit.
27
27
  */
28
28
  export class ProcessingCancelledException extends UseSmileIDGeneralException {
29
29
  errorCode = UseSmileIDErrorCode.General.OperationFailed;
30
- constructor() {
30
+ constructor(args = {}) {
31
31
  super({
32
32
  message: "Processing was cancelled",
33
33
  suggestedFix: "The user exited the processing screen before submission completed.",
34
+ ...(args.cause !== undefined ? { cause: args.cause } : {}),
34
35
  });
35
36
  }
36
37
  }
@@ -1 +1 @@
1
- {"version":3,"file":"flow_exceptions.js","sourceRoot":"","sources":["../../../src/core/exception/flow_exceptions.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,mBAAmB,EAAE,MAAM,2BAA2B,CAAC;AAChE,OAAO,EAAE,0BAA0B,EAAE,MAAM,kCAAkC,CAAC;AAE9E;;;;;;;GAOG;AACH,MAAM,OAAO,sBAAuB,SAAQ,0BAA0B;IAC3D,SAAS,GAAG,mBAAmB,CAAC,OAAO,CAAC,eAAe,CAAC;IAEjE,YAAY,IAA2B;QACrC,KAAK,CAAC;YACJ,OAAO,EAAE,qBAAqB;YAC9B,YAAY,EACV,sEAAsE;YACxE,YAAY,EAAE,EAAE,SAAS,EAAE,IAAI,CAAC,SAAS,EAAE;SAC5C,CAAC,CAAC;IACL,CAAC;CACF;AAED;;;;;;GAMG;AACH,MAAM,OAAO,4BAA6B,SAAQ,0BAA0B;IACjE,SAAS,GAAG,mBAAmB,CAAC,OAAO,CAAC,eAAe,CAAC;IAEjE;QACE,KAAK,CAAC;YACJ,OAAO,EAAE,0BAA0B;YACnC,YAAY,EACV,oEAAoE;SACvE,CAAC,CAAC;IACL,CAAC;CACF"}
1
+ {"version":3,"file":"flow_exceptions.js","sourceRoot":"","sources":["../../../src/core/exception/flow_exceptions.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,mBAAmB,EAAE,MAAM,2BAA2B,CAAC;AAChE,OAAO,EAAE,0BAA0B,EAAE,MAAM,kCAAkC,CAAC;AAE9E;;;;;;;GAOG;AACH,MAAM,OAAO,sBAAuB,SAAQ,0BAA0B;IAC3D,SAAS,GAAG,mBAAmB,CAAC,OAAO,CAAC,eAAe,CAAC;IAEjE,YAAY,IAA2B;QACrC,KAAK,CAAC;YACJ,OAAO,EAAE,qBAAqB;YAC9B,YAAY,EACV,sEAAsE;YACxE,YAAY,EAAE,EAAE,SAAS,EAAE,IAAI,CAAC,SAAS,EAAE;SAC5C,CAAC,CAAC;IACL,CAAC;CACF;AAED;;;;;;GAMG;AACH,MAAM,OAAO,4BAA6B,SAAQ,0BAA0B;IACjE,SAAS,GAAG,mBAAmB,CAAC,OAAO,CAAC,eAAe,CAAC;IAEjE,YAAY,OAA4B,EAAE;QACxC,KAAK,CAAC;YACJ,OAAO,EAAE,0BAA0B;YACnC,YAAY,EACV,oEAAoE;YACtE,GAAG,CAAC,IAAI,CAAC,KAAK,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,KAAK,EAAE,IAAI,CAAC,KAAK,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;SAC3D,CAAC,CAAC;IACL,CAAC;CACF"}
@@ -24,6 +24,7 @@ export { EmptyScreensBlockException } from "./empty_screens_block_exception";
24
24
  export { InvalidScreenOrderException } from "./invalid_screen_order_exception";
25
25
  export { MissingCaptureForPreviewException } from "./missing_capture_for_preview_exception";
26
26
  export { DuplicateScreenTypeException } from "./duplicate_screen_type_exception";
27
+ export { AgentModeWithEnhancedLivenessException } from "./agent_mode_with_enhanced_liveness_exception";
27
28
  export { InvalidSelfieCaptureConfigException } from "./invalid_selfie_capture_config_exception";
28
29
  export { InvalidDocumentCaptureConfigException } from "./invalid_document_capture_config_exception";
29
30
  export { InvalidMissingCaptureTypeException } from "./invalid_missing_capture_type_exception";
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/core/exception/index.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;GAUG;AAGH,OAAO,EAAE,aAAa,EAAE,MAAM,kBAAkB,CAAC;AAIjD,OAAO,EAAE,mBAAmB,EAAE,MAAM,2BAA2B,CAAC;AAGhE,OAAO,EAAE,mBAAmB,EAAE,MAAM,0BAA0B,CAAC;AAC/D,OAAO,EAAE,6BAA6B,EAAE,MAAM,qCAAqC,CAAC;AACpF,OAAO,EAAE,0BAA0B,EAAE,MAAM,kCAAkC,CAAC;AAC9E,OAAO,EAAE,yBAAyB,EAAE,MAAM,iCAAiC,CAAC;AAC5E,OAAO,EAAE,0BAA0B,EAAE,MAAM,kCAAkC,CAAC;AAC9E,OAAO,EAAE,8BAA8B,EAAE,MAAM,sCAAsC,CAAC;AACtF,OAAO,EAAE,0BAA0B,EAAE,MAAM,kCAAkC,CAAC;AAG9E,OAAO,EAAE,0BAA0B,EAAE,MAAM,gCAAgC,CAAC;AAI5E,OAAO,EACL,sBAAsB,EACtB,4BAA4B,GAC7B,MAAM,mBAAmB,CAAC;AAG3B,OAAO,EAAE,0BAA0B,EAAE,MAAM,iCAAiC,CAAC;AAC7E,OAAO,EAAE,2BAA2B,EAAE,MAAM,kCAAkC,CAAC;AAC/E,OAAO,EAAE,iCAAiC,EAAE,MAAM,yCAAyC,CAAC;AAC5F,OAAO,EAAE,4BAA4B,EAAE,MAAM,mCAAmC,CAAC;AAGjF,OAAO,EAAE,mCAAmC,EAAE,MAAM,2CAA2C,CAAC;AAChG,OAAO,EAAE,qCAAqC,EAAE,MAAM,6CAA6C,CAAC;AACpG,OAAO,EAAE,kCAAkC,EAAE,MAAM,0CAA0C,CAAC;AAG9F,OAAO,EAAE,6BAA6B,EAAE,MAAM,oCAAoC,CAAC;AACnF,OAAO,EAAE,kCAAkC,EAAE,MAAM,yCAAyC,CAAC;AAG7F,OAAO,EAAE,oCAAoC,EAAE,MAAM,4CAA4C,CAAC;AAClG,OAAO,EAAE,yCAAyC,EAAE,MAAM,iDAAiD,CAAC;AAC5G,OAAO,EAAE,6BAA6B,EAAE,MAAM,oCAAoC,CAAC;AACnF,OAAO,EAAE,2BAA2B,EAAE,MAAM,kCAAkC,CAAC;AAC/E,OAAO,EAAE,uBAAuB,EAAE,MAAM,8BAA8B,CAAC;AACvE,OAAO,EAAE,6BAA6B,EAAE,MAAM,oCAAoC,CAAC;AACnF,OAAO,EAAE,mCAAmC,EAAE,MAAM,4CAA4C,CAAC;AACjG,OAAO,EAAE,0BAA0B,EAAE,MAAM,iCAAiC,CAAC;AAG7E,OAAO,EACL,sBAAsB,EACtB,yBAAyB,EACzB,uBAAuB,EACvB,6BAA6B,EAC7B,4BAA4B,EAC5B,uBAAuB,EACvB,aAAa,GACd,MAAM,kCAAkC,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/core/exception/index.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;GAUG;AAGH,OAAO,EAAE,aAAa,EAAE,MAAM,kBAAkB,CAAC;AAIjD,OAAO,EAAE,mBAAmB,EAAE,MAAM,2BAA2B,CAAC;AAGhE,OAAO,EAAE,mBAAmB,EAAE,MAAM,0BAA0B,CAAC;AAC/D,OAAO,EAAE,6BAA6B,EAAE,MAAM,qCAAqC,CAAC;AACpF,OAAO,EAAE,0BAA0B,EAAE,MAAM,kCAAkC,CAAC;AAC9E,OAAO,EAAE,yBAAyB,EAAE,MAAM,iCAAiC,CAAC;AAC5E,OAAO,EAAE,0BAA0B,EAAE,MAAM,kCAAkC,CAAC;AAC9E,OAAO,EAAE,8BAA8B,EAAE,MAAM,sCAAsC,CAAC;AACtF,OAAO,EAAE,0BAA0B,EAAE,MAAM,kCAAkC,CAAC;AAG9E,OAAO,EAAE,0BAA0B,EAAE,MAAM,gCAAgC,CAAC;AAI5E,OAAO,EACL,sBAAsB,EACtB,4BAA4B,GAC7B,MAAM,mBAAmB,CAAC;AAG3B,OAAO,EAAE,0BAA0B,EAAE,MAAM,iCAAiC,CAAC;AAC7E,OAAO,EAAE,2BAA2B,EAAE,MAAM,kCAAkC,CAAC;AAC/E,OAAO,EAAE,iCAAiC,EAAE,MAAM,yCAAyC,CAAC;AAC5F,OAAO,EAAE,4BAA4B,EAAE,MAAM,mCAAmC,CAAC;AAGjF,OAAO,EAAE,sCAAsC,EAAE,MAAM,+CAA+C,CAAC;AACvG,OAAO,EAAE,mCAAmC,EAAE,MAAM,2CAA2C,CAAC;AAChG,OAAO,EAAE,qCAAqC,EAAE,MAAM,6CAA6C,CAAC;AACpG,OAAO,EAAE,kCAAkC,EAAE,MAAM,0CAA0C,CAAC;AAG9F,OAAO,EAAE,6BAA6B,EAAE,MAAM,oCAAoC,CAAC;AACnF,OAAO,EAAE,kCAAkC,EAAE,MAAM,yCAAyC,CAAC;AAG7F,OAAO,EAAE,oCAAoC,EAAE,MAAM,4CAA4C,CAAC;AAClG,OAAO,EAAE,yCAAyC,EAAE,MAAM,iDAAiD,CAAC;AAC5G,OAAO,EAAE,6BAA6B,EAAE,MAAM,oCAAoC,CAAC;AACnF,OAAO,EAAE,2BAA2B,EAAE,MAAM,kCAAkC,CAAC;AAC/E,OAAO,EAAE,uBAAuB,EAAE,MAAM,8BAA8B,CAAC;AACvE,OAAO,EAAE,6BAA6B,EAAE,MAAM,oCAAoC,CAAC;AACnF,OAAO,EAAE,mCAAmC,EAAE,MAAM,4CAA4C,CAAC;AACjG,OAAO,EAAE,0BAA0B,EAAE,MAAM,iCAAiC,CAAC;AAG7E,OAAO,EACL,sBAAsB,EACtB,yBAAyB,EACzB,uBAAuB,EACvB,6BAA6B,EAC7B,4BAA4B,EAC5B,uBAAuB,EACvB,aAAa,GACd,MAAM,kCAAkC,CAAC"}
@@ -33,6 +33,7 @@ export { InvalidScreenOrderException } from "./invalid_screen_order_exception";
33
33
  export { MissingCaptureForPreviewException } from "./missing_capture_for_preview_exception";
34
34
  export { DuplicateScreenTypeException } from "./duplicate_screen_type_exception";
35
35
  // Capture-config validation (`capture { }` block).
36
+ export { AgentModeWithEnhancedLivenessException } from "./agent_mode_with_enhanced_liveness_exception";
36
37
  export { InvalidSelfieCaptureConfigException } from "./invalid_selfie_capture_config_exception";
37
38
  export { InvalidDocumentCaptureConfigException } from "./invalid_document_capture_config_exception";
38
39
  export { InvalidMissingCaptureTypeException } from "./invalid_missing_capture_type_exception";
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/core/exception/index.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;GAUG;AAEH,4CAA4C;AAC5C,OAAO,EAAE,aAAa,EAAE,MAAM,kBAAkB,CAAC;AAEjD,qEAAqE;AACrE,kCAAkC;AAClC,OAAO,EAAE,mBAAmB,EAAE,MAAM,2BAA2B,CAAC;AAEhE,sCAAsC;AACtC,OAAO,EAAE,mBAAmB,EAAE,MAAM,0BAA0B,CAAC;AAC/D,OAAO,EAAE,6BAA6B,EAAE,MAAM,qCAAqC,CAAC;AACpF,OAAO,EAAE,0BAA0B,EAAE,MAAM,kCAAkC,CAAC;AAC9E,OAAO,EAAE,yBAAyB,EAAE,MAAM,iCAAiC,CAAC;AAC5E,OAAO,EAAE,0BAA0B,EAAE,MAAM,kCAAkC,CAAC;AAC9E,OAAO,EAAE,8BAA8B,EAAE,MAAM,sCAAsC,CAAC;AACtF,OAAO,EAAE,0BAA0B,EAAE,MAAM,kCAAkC,CAAC;AAE9E,6DAA6D;AAC7D,OAAO,EAAE,0BAA0B,EAAE,MAAM,gCAAgC,CAAC;AAE5E,yEAAyE;AACzE,4BAA4B;AAC5B,OAAO,EACL,sBAAsB,EACtB,4BAA4B,GAC7B,MAAM,mBAAmB,CAAC;AAE3B,kDAAkD;AAClD,OAAO,EAAE,0BAA0B,EAAE,MAAM,iCAAiC,CAAC;AAC7E,OAAO,EAAE,2BAA2B,EAAE,MAAM,kCAAkC,CAAC;AAC/E,OAAO,EAAE,iCAAiC,EAAE,MAAM,yCAAyC,CAAC;AAC5F,OAAO,EAAE,4BAA4B,EAAE,MAAM,mCAAmC,CAAC;AAEjF,mDAAmD;AACnD,OAAO,EAAE,mCAAmC,EAAE,MAAM,2CAA2C,CAAC;AAChG,OAAO,EAAE,qCAAqC,EAAE,MAAM,6CAA6C,CAAC;AACpG,OAAO,EAAE,kCAAkC,EAAE,MAAM,0CAA0C,CAAC;AAE9F,0DAA0D;AAC1D,OAAO,EAAE,6BAA6B,EAAE,MAAM,oCAAoC,CAAC;AACnF,OAAO,EAAE,kCAAkC,EAAE,MAAM,yCAAyC,CAAC;AAE7F,uCAAuC;AACvC,OAAO,EAAE,oCAAoC,EAAE,MAAM,4CAA4C,CAAC;AAClG,OAAO,EAAE,yCAAyC,EAAE,MAAM,iDAAiD,CAAC;AAC5G,OAAO,EAAE,6BAA6B,EAAE,MAAM,oCAAoC,CAAC;AACnF,OAAO,EAAE,2BAA2B,EAAE,MAAM,kCAAkC,CAAC;AAC/E,OAAO,EAAE,uBAAuB,EAAE,MAAM,8BAA8B,CAAC;AACvE,OAAO,EAAE,6BAA6B,EAAE,MAAM,oCAAoC,CAAC;AACnF,OAAO,EAAE,mCAAmC,EAAE,MAAM,4CAA4C,CAAC;AACjG,OAAO,EAAE,0BAA0B,EAAE,MAAM,iCAAiC,CAAC;AAE7E,yDAAyD;AACzD,OAAO,EACL,sBAAsB,EACtB,yBAAyB,EACzB,uBAAuB,EACvB,6BAA6B,EAC7B,4BAA4B,EAC5B,uBAAuB,EACvB,aAAa,GACd,MAAM,kCAAkC,CAAC"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/core/exception/index.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;GAUG;AAEH,4CAA4C;AAC5C,OAAO,EAAE,aAAa,EAAE,MAAM,kBAAkB,CAAC;AAEjD,qEAAqE;AACrE,kCAAkC;AAClC,OAAO,EAAE,mBAAmB,EAAE,MAAM,2BAA2B,CAAC;AAEhE,sCAAsC;AACtC,OAAO,EAAE,mBAAmB,EAAE,MAAM,0BAA0B,CAAC;AAC/D,OAAO,EAAE,6BAA6B,EAAE,MAAM,qCAAqC,CAAC;AACpF,OAAO,EAAE,0BAA0B,EAAE,MAAM,kCAAkC,CAAC;AAC9E,OAAO,EAAE,yBAAyB,EAAE,MAAM,iCAAiC,CAAC;AAC5E,OAAO,EAAE,0BAA0B,EAAE,MAAM,kCAAkC,CAAC;AAC9E,OAAO,EAAE,8BAA8B,EAAE,MAAM,sCAAsC,CAAC;AACtF,OAAO,EAAE,0BAA0B,EAAE,MAAM,kCAAkC,CAAC;AAE9E,6DAA6D;AAC7D,OAAO,EAAE,0BAA0B,EAAE,MAAM,gCAAgC,CAAC;AAE5E,yEAAyE;AACzE,4BAA4B;AAC5B,OAAO,EACL,sBAAsB,EACtB,4BAA4B,GAC7B,MAAM,mBAAmB,CAAC;AAE3B,kDAAkD;AAClD,OAAO,EAAE,0BAA0B,EAAE,MAAM,iCAAiC,CAAC;AAC7E,OAAO,EAAE,2BAA2B,EAAE,MAAM,kCAAkC,CAAC;AAC/E,OAAO,EAAE,iCAAiC,EAAE,MAAM,yCAAyC,CAAC;AAC5F,OAAO,EAAE,4BAA4B,EAAE,MAAM,mCAAmC,CAAC;AAEjF,mDAAmD;AACnD,OAAO,EAAE,sCAAsC,EAAE,MAAM,+CAA+C,CAAC;AACvG,OAAO,EAAE,mCAAmC,EAAE,MAAM,2CAA2C,CAAC;AAChG,OAAO,EAAE,qCAAqC,EAAE,MAAM,6CAA6C,CAAC;AACpG,OAAO,EAAE,kCAAkC,EAAE,MAAM,0CAA0C,CAAC;AAE9F,0DAA0D;AAC1D,OAAO,EAAE,6BAA6B,EAAE,MAAM,oCAAoC,CAAC;AACnF,OAAO,EAAE,kCAAkC,EAAE,MAAM,yCAAyC,CAAC;AAE7F,uCAAuC;AACvC,OAAO,EAAE,oCAAoC,EAAE,MAAM,4CAA4C,CAAC;AAClG,OAAO,EAAE,yCAAyC,EAAE,MAAM,iDAAiD,CAAC;AAC5G,OAAO,EAAE,6BAA6B,EAAE,MAAM,oCAAoC,CAAC;AACnF,OAAO,EAAE,2BAA2B,EAAE,MAAM,kCAAkC,CAAC;AAC/E,OAAO,EAAE,uBAAuB,EAAE,MAAM,8BAA8B,CAAC;AACvE,OAAO,EAAE,6BAA6B,EAAE,MAAM,oCAAoC,CAAC;AACnF,OAAO,EAAE,mCAAmC,EAAE,MAAM,4CAA4C,CAAC;AACjG,OAAO,EAAE,0BAA0B,EAAE,MAAM,iCAAiC,CAAC;AAE7E,yDAAyD;AACzD,OAAO,EACL,sBAAsB,EACtB,yBAAyB,EACzB,uBAAuB,EACvB,6BAA6B,EAC7B,4BAA4B,EAC5B,uBAAuB,EACvB,aAAa,GACd,MAAM,kCAAkC,CAAC"}
@@ -1,8 +1,6 @@
1
1
  import { UseSmileIDBuilderException } from "./use_smile_id_builder_exception";
2
2
  /**
3
- * The `network { config { } }` block is present but `jobType` was
4
- * never set — the orchestrator can't pick a submission path without
5
- * it.
3
+ * `jobType` was never set, or was set to a value that is not one of the SDK's job types.
6
4
  */
7
5
  export declare class MissingJobTypeException extends UseSmileIDBuilderException {
8
6
  readonly errorCode: "BUILDER_MISSING_JOB_TYPE";
@@ -1 +1 @@
1
- {"version":3,"file":"missing_job_type_exception.d.ts","sourceRoot":"","sources":["../../../src/core/exception/missing_job_type_exception.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,0BAA0B,EAAE,MAAM,kCAAkC,CAAC;AAG9E;;;;GAIG;AACH,qBAAa,uBAAwB,SAAQ,0BAA0B;IACrE,QAAQ,CAAC,SAAS,6BAA8C;;CAUjE"}
1
+ {"version":3,"file":"missing_job_type_exception.d.ts","sourceRoot":"","sources":["../../../src/core/exception/missing_job_type_exception.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,0BAA0B,EAAE,MAAM,kCAAkC,CAAC;AAG9E;;GAEG;AACH,qBAAa,uBAAwB,SAAQ,0BAA0B;IACrE,QAAQ,CAAC,SAAS,6BAA8C;;CAUjE"}
@@ -1,15 +1,13 @@
1
1
  import { UseSmileIDBuilderException } from "./use_smile_id_builder_exception";
2
2
  import { UseSmileIDErrorCode } from "./use_smile_id_error_code";
3
3
  /**
4
- * The `network { config { } }` block is present but `jobType` was
5
- * never set — the orchestrator can't pick a submission path without
6
- * it.
4
+ * `jobType` was never set, or was set to a value that is not one of the SDK's job types.
7
5
  */
8
6
  export class MissingJobTypeException extends UseSmileIDBuilderException {
9
7
  errorCode = UseSmileIDErrorCode.Builder.MissingJobType;
10
8
  constructor() {
11
9
  super({
12
- message: "jobType is not set — it must be configured explicitly in the network { config { } } block",
10
+ message: "jobType is not set to one of the SDK's job types — it must be configured explicitly in the network { config { } } block",
13
11
  suggestedFix: "Set config.jobType in the network { config { } } block, e.g. config.jobType = JobType.DocumentVerification",
14
12
  });
15
13
  }
@@ -1 +1 @@
1
- {"version":3,"file":"missing_job_type_exception.js","sourceRoot":"","sources":["../../../src/core/exception/missing_job_type_exception.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,0BAA0B,EAAE,MAAM,kCAAkC,CAAC;AAC9E,OAAO,EAAE,mBAAmB,EAAE,MAAM,2BAA2B,CAAC;AAEhE;;;;GAIG;AACH,MAAM,OAAO,uBAAwB,SAAQ,0BAA0B;IAC5D,SAAS,GAAG,mBAAmB,CAAC,OAAO,CAAC,cAAc,CAAC;IAEhE;QACE,KAAK,CAAC;YACJ,OAAO,EACL,2FAA2F;YAC7F,YAAY,EACV,4GAA4G;SAC/G,CAAC,CAAC;IACL,CAAC;CACF"}
1
+ {"version":3,"file":"missing_job_type_exception.js","sourceRoot":"","sources":["../../../src/core/exception/missing_job_type_exception.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,0BAA0B,EAAE,MAAM,kCAAkC,CAAC;AAC9E,OAAO,EAAE,mBAAmB,EAAE,MAAM,2BAA2B,CAAC;AAEhE;;GAEG;AACH,MAAM,OAAO,uBAAwB,SAAQ,0BAA0B;IAC5D,SAAS,GAAG,mBAAmB,CAAC,OAAO,CAAC,cAAc,CAAC;IAEhE;QACE,KAAK,CAAC;YACJ,OAAO,EACL,yHAAyH;YAC3H,YAAY,EACV,4GAA4G;SAC/G,CAAC,CAAC;IACL,CAAC;CACF"}
@@ -24,6 +24,7 @@ export declare const UseSmileIDErrorCode: {
24
24
  readonly MissingScreenConfiguration: "BUILDER_MISSING_SCREEN_CONFIG";
25
25
  readonly DuplicateScreenType: "BUILDER_DUPLICATE_SCREEN";
26
26
  readonly InvalidSelfieCaptureConfig: "BUILDER_INVALID_SELFIE_CONFIG";
27
+ readonly AgentModeWithEnhancedLiveness: "BUILDER_AGENT_MODE_WITH_ENHANCED_LIVENESS";
27
28
  readonly InvalidDocumentCaptureConfig: "BUILDER_INVALID_DOCUMENT_CONFIG";
28
29
  readonly MissingMLConfiguration: "BUILDER_MISSING_ML_CONFIG";
29
30
  readonly MissingNetworkConfiguration: "BUILDER_MISSING_NETWORK_CONFIG";
@@ -1 +1 @@
1
- {"version":3,"file":"use_smile_id_error_code.d.ts","sourceRoot":"","sources":["../../../src/core/exception/use_smile_id_error_code.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;GAaG;AACH,eAAO,MAAM,mBAAmB;IAC9B,0CAA0C;;;;;;;;;;;;;;;;;;;;;IAqB1C,gCAAgC;;;;;;;;IAQhC,4BAA4B;;;;;;;;;;;;IAY5B,wCAAwC;;;;;;IAMxC,wDAAwD;;;;;;CAMhD,CAAC;AAEX,KAAK,4BAA4B,GAAG,OAAO,mBAAmB,CAAC;AAE/D;;;;GAIG;AACH,MAAM,MAAM,mBAAmB,GAC3B,4BAA4B,CAAC,SAAS,CAAC,CAAC,MAAM,4BAA4B,CAAC,SAAS,CAAC,CAAC,GACtF,4BAA4B,CAAC,QAAQ,CAAC,CAAC,MAAM,4BAA4B,CAAC,QAAQ,CAAC,CAAC,GACpF,4BAA4B,CAAC,SAAS,CAAC,CAAC,MAAM,4BAA4B,CAAC,SAAS,CAAC,CAAC,GACtF,4BAA4B,CAAC,YAAY,CAAC,CAAC,MAAM,4BAA4B,CAAC,YAAY,CAAC,CAAC,GAC5F,4BAA4B,CAAC,SAAS,CAAC,CAAC,MAAM,4BAA4B,CAAC,SAAS,CAAC,CAAC,CAAC"}
1
+ {"version":3,"file":"use_smile_id_error_code.d.ts","sourceRoot":"","sources":["../../../src/core/exception/use_smile_id_error_code.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;GAaG;AACH,eAAO,MAAM,mBAAmB;IAC9B,0CAA0C;;;;;;;;;;;;;;;;;;;;;;IAsB1C,gCAAgC;;;;;;;;IAQhC,4BAA4B;;;;;;;;;;;;IAY5B,wCAAwC;;;;;;IAMxC,wDAAwD;;;;;;CAMhD,CAAC;AAEX,KAAK,4BAA4B,GAAG,OAAO,mBAAmB,CAAC;AAE/D;;;;GAIG;AACH,MAAM,MAAM,mBAAmB,GAC3B,4BAA4B,CAAC,SAAS,CAAC,CAAC,MAAM,4BAA4B,CAAC,SAAS,CAAC,CAAC,GACtF,4BAA4B,CAAC,QAAQ,CAAC,CAAC,MAAM,4BAA4B,CAAC,QAAQ,CAAC,CAAC,GACpF,4BAA4B,CAAC,SAAS,CAAC,CAAC,MAAM,4BAA4B,CAAC,SAAS,CAAC,CAAC,GACtF,4BAA4B,CAAC,YAAY,CAAC,CAAC,MAAM,4BAA4B,CAAC,YAAY,CAAC,CAAC,GAC5F,4BAA4B,CAAC,SAAS,CAAC,CAAC,MAAM,4BAA4B,CAAC,SAAS,CAAC,CAAC,CAAC"}
@@ -24,6 +24,7 @@ export const UseSmileIDErrorCode = {
24
24
  MissingScreenConfiguration: "BUILDER_MISSING_SCREEN_CONFIG",
25
25
  DuplicateScreenType: "BUILDER_DUPLICATE_SCREEN",
26
26
  InvalidSelfieCaptureConfig: "BUILDER_INVALID_SELFIE_CONFIG",
27
+ AgentModeWithEnhancedLiveness: "BUILDER_AGENT_MODE_WITH_ENHANCED_LIVENESS",
27
28
  InvalidDocumentCaptureConfig: "BUILDER_INVALID_DOCUMENT_CONFIG",
28
29
  MissingMLConfiguration: "BUILDER_MISSING_ML_CONFIG",
29
30
  MissingNetworkConfiguration: "BUILDER_MISSING_NETWORK_CONFIG",
@@ -1 +1 @@
1
- {"version":3,"file":"use_smile_id_error_code.js","sourceRoot":"","sources":["../../../src/core/exception/use_smile_id_error_code.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;GAaG;AACH,MAAM,CAAC,MAAM,mBAAmB,GAAG;IACjC,0CAA0C;IAC1C,OAAO,EAAE;QACP,eAAe,EAAE,0BAA0B;QAC3C,oBAAoB,EAAE,wBAAwB;QAC9C,oBAAoB,EAAE,uBAAuB;QAC7C,oBAAoB,EAAE,gCAAgC;QACtD,kBAAkB,EAAE,8BAA8B;QAClD,iBAAiB,EAAE,uBAAuB;QAC1C,0BAA0B,EAAE,+BAA+B;QAC3D,mBAAmB,EAAE,0BAA0B;QAC/C,0BAA0B,EAAE,+BAA+B;QAC3D,4BAA4B,EAAE,iCAAiC;QAC/D,sBAAsB,EAAE,2BAA2B;QACnD,2BAA2B,EAAE,gCAAgC;QAC7D,cAAc,EAAE,0BAA0B;QAC1C,wBAAwB,EAAE,qCAAqC;QAC/D,kBAAkB,EAAE,8BAA8B;QAClD,wBAAwB,EAAE,6BAA6B;QACvD,yBAAyB,EAAE,qCAAqC;QAChE,0BAA0B,EAAE,wCAAwC;KACrE;IACD,gCAAgC;IAChC,MAAM,EAAE;QACN,oBAAoB,EAAE,oBAAoB;QAC1C,gBAAgB,EAAE,0BAA0B;QAC5C,aAAa,EAAE,uBAAuB;QACtC,mBAAmB,EAAE,+BAA+B;QACpD,OAAO,EAAE,sBAAsB;KAChC;IACD,4BAA4B;IAC5B,OAAO,EAAE;QACP,gBAAgB,EAAE,2BAA2B;QAC7C,OAAO,EAAE,iBAAiB;QAC1B,aAAa,EAAE,wBAAwB;QACvC,kBAAkB,EAAE,qBAAqB;QACzC,YAAY,EAAE,sBAAsB;QACpC,SAAS,EAAE,mBAAmB;QAC9B,QAAQ,EAAE,mBAAmB;QAC7B,SAAS,EAAE,oBAAoB;QAC/B,WAAW,EAAE,sBAAsB;KACpC;IACD,wCAAwC;IACxC,UAAU,EAAE;QACV,YAAY,EAAE,0BAA0B;QACxC,YAAY,EAAE,0BAA0B;QACxC,mBAAmB,EAAE,iCAAiC;KACvD;IACD,wDAAwD;IACxD,OAAO,EAAE;QACP,OAAO,EAAE,uBAAuB;QAChC,YAAY,EAAE,uBAAuB;QACrC,eAAe,EAAE,0BAA0B;KAC5C;CACO,CAAC"}
1
+ {"version":3,"file":"use_smile_id_error_code.js","sourceRoot":"","sources":["../../../src/core/exception/use_smile_id_error_code.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;GAaG;AACH,MAAM,CAAC,MAAM,mBAAmB,GAAG;IACjC,0CAA0C;IAC1C,OAAO,EAAE;QACP,eAAe,EAAE,0BAA0B;QAC3C,oBAAoB,EAAE,wBAAwB;QAC9C,oBAAoB,EAAE,uBAAuB;QAC7C,oBAAoB,EAAE,gCAAgC;QACtD,kBAAkB,EAAE,8BAA8B;QAClD,iBAAiB,EAAE,uBAAuB;QAC1C,0BAA0B,EAAE,+BAA+B;QAC3D,mBAAmB,EAAE,0BAA0B;QAC/C,0BAA0B,EAAE,+BAA+B;QAC3D,6BAA6B,EAAE,2CAA2C;QAC1E,4BAA4B,EAAE,iCAAiC;QAC/D,sBAAsB,EAAE,2BAA2B;QACnD,2BAA2B,EAAE,gCAAgC;QAC7D,cAAc,EAAE,0BAA0B;QAC1C,wBAAwB,EAAE,qCAAqC;QAC/D,kBAAkB,EAAE,8BAA8B;QAClD,wBAAwB,EAAE,6BAA6B;QACvD,yBAAyB,EAAE,qCAAqC;QAChE,0BAA0B,EAAE,wCAAwC;KACrE;IACD,gCAAgC;IAChC,MAAM,EAAE;QACN,oBAAoB,EAAE,oBAAoB;QAC1C,gBAAgB,EAAE,0BAA0B;QAC5C,aAAa,EAAE,uBAAuB;QACtC,mBAAmB,EAAE,+BAA+B;QACpD,OAAO,EAAE,sBAAsB;KAChC;IACD,4BAA4B;IAC5B,OAAO,EAAE;QACP,gBAAgB,EAAE,2BAA2B;QAC7C,OAAO,EAAE,iBAAiB;QAC1B,aAAa,EAAE,wBAAwB;QACvC,kBAAkB,EAAE,qBAAqB;QACzC,YAAY,EAAE,sBAAsB;QACpC,SAAS,EAAE,mBAAmB;QAC9B,QAAQ,EAAE,mBAAmB;QAC7B,SAAS,EAAE,oBAAoB;QAC/B,WAAW,EAAE,sBAAsB;KACpC;IACD,wCAAwC;IACxC,UAAU,EAAE;QACV,YAAY,EAAE,0BAA0B;QACxC,YAAY,EAAE,0BAA0B;QACxC,mBAAmB,EAAE,iCAAiC;KACvD;IACD,wDAAwD;IACxD,OAAO,EAAE;QACP,OAAO,EAAE,uBAAuB;QAChC,YAAY,EAAE,uBAAuB;QACrC,eAAe,EAAE,0BAA0B;KAC5C;CACO,CAAC"}
@@ -1,3 +1,5 @@
1
+ import type * as ScreenOrientation from "expo-screen-orientation";
2
+ import type { GlobalPrivacyControl } from "./global_privacy_control";
1
3
  /**
2
4
  * Global SDK configuration flags. Snapshot produced by
3
5
  * `UseSmileIDConfigBuilder.build()` — every field is populated, with
@@ -31,5 +33,22 @@ export type ConfigOptions = {
31
33
  * `docs/Architecture.md § Rollout`.
32
34
  */
33
35
  readonly allowOfflineMode: boolean;
36
+ /**
37
+ * Partner-declared consent posture (`global_privacy_control`).
38
+ * `GlobalPrivacyControl.OptOut` (the default) forces the opt-out consent
39
+ * layout universally; `OptIn` keeps the legacy regional mechanics.
40
+ */
41
+ readonly globalPrivacyControl: GlobalPrivacyControl;
42
+ /**
43
+ * Orientation lock the SDK applies when a capture screen leaves the screen.
44
+ * Defaults to `PORTRAIT_UP`, the posture most hosts pin at their root
45
+ * layout; multi-orientation hosts set `DEFAULT` so the flow releases the
46
+ * clamp instead of leaving the app portrait-only after verification.
47
+ *
48
+ * Optional so a hand-written `ConfigOptions` literal still compiles; the
49
+ * builder always populates it, and an absent value takes the same
50
+ * `PORTRAIT_UP` default at the capture screen.
51
+ */
52
+ readonly exitOrientations?: ScreenOrientation.OrientationLock;
34
53
  };
35
54
  //# sourceMappingURL=config.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"config.d.ts","sourceRoot":"","sources":["../../../src/core/models/config.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AACH,MAAM,MAAM,aAAa,GAAG;IAC1B;;;;;;;;;OASG;IACH,QAAQ,CAAC,oBAAoB,EAAE,OAAO,CAAC;IAEvC;;;;;;OAMG;IACH,QAAQ,CAAC,eAAe,EAAE,OAAO,CAAC;IAElC;;;;;;OAMG;IACH,QAAQ,CAAC,gBAAgB,EAAE,OAAO,CAAC;CACpC,CAAC"}
1
+ {"version":3,"file":"config.d.ts","sourceRoot":"","sources":["../../../src/core/models/config.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,KAAK,iBAAiB,MAAM,yBAAyB,CAAC;AAClE,OAAO,KAAK,EAAE,oBAAoB,EAAE,MAAM,0BAA0B,CAAC;AAErE;;;;GAIG;AACH,MAAM,MAAM,aAAa,GAAG;IAC1B;;;;;;;;;OASG;IACH,QAAQ,CAAC,oBAAoB,EAAE,OAAO,CAAC;IAEvC;;;;;;OAMG;IACH,QAAQ,CAAC,eAAe,EAAE,OAAO,CAAC;IAElC;;;;;;OAMG;IACH,QAAQ,CAAC,gBAAgB,EAAE,OAAO,CAAC;IAEnC;;;;OAIG;IACH,QAAQ,CAAC,oBAAoB,EAAE,oBAAoB,CAAC;IAEpD;;;;;;;;;OASG;IACH,QAAQ,CAAC,gBAAgB,CAAC,EAAE,iBAAiB,CAAC,eAAe,CAAC;CAC/D,CAAC"}
@@ -35,7 +35,7 @@ export declare const DocumentType: {
35
35
  readonly SouthAfricaGreenBook: {
36
36
  readonly kind: "southAfricaGreenBook";
37
37
  } & DocumentTypeFields;
38
- /** Passport — single data page, no back side, landscape. */
38
+ /** Passport — landscape data page followed by a back-side capture. */
39
39
  readonly Passport: {
40
40
  readonly kind: "passport";
41
41
  } & DocumentTypeFields;
@@ -1 +1 @@
1
- {"version":3,"file":"document_type.d.ts","sourceRoot":"","sources":["../../../src/core/models/document_type.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,sDAAsD;AACtD,MAAM,MAAM,mBAAmB,GAAG,WAAW,GAAG,UAAU,CAAC;AAE3D,KAAK,kBAAkB,GAAG;IACxB,qDAAqD;IACrD,QAAQ,CAAC,WAAW,EAAE,MAAM,CAAC;IAC7B,8EAA8E;IAC9E,QAAQ,CAAC,WAAW,EAAE,OAAO,CAAC;IAC9B,QAAQ,CAAC,WAAW,EAAE,mBAAmB,CAAC;IAC1C,4FAA4F;IAC5F,QAAQ,CAAC,gBAAgB,CAAC,EAAE,MAAM,CAAC;CACpC,CAAC;AAEF,gFAAgF;AAChF,MAAM,MAAM,YAAY,GACpB,CAAC;IAAE,QAAQ,CAAC,IAAI,EAAE,sBAAsB,CAAA;CAAE,GAAG,kBAAkB,CAAC,GAChE,CAAC;IAAE,QAAQ,CAAC,IAAI,EAAE,UAAU,CAAA;CAAE,GAAG,kBAAkB,CAAC,GACpD,CAAC;IAAE,QAAQ,CAAC,IAAI,EAAE,iBAAiB,CAAA;CAAE,GAAG,kBAAkB,CAAC,CAAC;AAkBhE,oEAAoE;AACpE,MAAM,MAAM,mBAAmB,GAAG;IAChC,QAAQ,CAAC,WAAW,CAAC,EAAE,MAAM,CAAC;IAC9B,QAAQ,CAAC,WAAW,CAAC,EAAE,OAAO,CAAC;IAC/B,QAAQ,CAAC,WAAW,CAAC,EAAE,mBAAmB,CAAC;IAC3C,QAAQ,CAAC,gBAAgB,CAAC,EAAE,MAAM,CAAC;CACpC,CAAC;AAEF,gFAAgF;AAChF,eAAO,MAAM,YAAY;IACvB,sEAAsE;;uBA9BlD,sBAAsB;;IAgC1C,4DAA4D;;uBA/BxC,UAAU;;IAiC9B,iFAAiF;sCAC3D,mBAAmB,KAAQ,YAAY;CAWrD,CAAC;AAEX;;;;GAIG;AACH,wBAAgB,uBAAuB,CACrC,WAAW,EAAE,mBAAmB,GAC/B,MAAM,CAER"}
1
+ {"version":3,"file":"document_type.d.ts","sourceRoot":"","sources":["../../../src/core/models/document_type.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,sDAAsD;AACtD,MAAM,MAAM,mBAAmB,GAAG,WAAW,GAAG,UAAU,CAAC;AAE3D,KAAK,kBAAkB,GAAG;IACxB,qDAAqD;IACrD,QAAQ,CAAC,WAAW,EAAE,MAAM,CAAC;IAC7B,8EAA8E;IAC9E,QAAQ,CAAC,WAAW,EAAE,OAAO,CAAC;IAC9B,QAAQ,CAAC,WAAW,EAAE,mBAAmB,CAAC;IAC1C,4FAA4F;IAC5F,QAAQ,CAAC,gBAAgB,CAAC,EAAE,MAAM,CAAC;CACpC,CAAC;AAEF,gFAAgF;AAChF,MAAM,MAAM,YAAY,GACpB,CAAC;IAAE,QAAQ,CAAC,IAAI,EAAE,sBAAsB,CAAA;CAAE,GAAG,kBAAkB,CAAC,GAChE,CAAC;IAAE,QAAQ,CAAC,IAAI,EAAE,UAAU,CAAA;CAAE,GAAG,kBAAkB,CAAC,GACpD,CAAC;IAAE,QAAQ,CAAC,IAAI,EAAE,iBAAiB,CAAA;CAAE,GAAG,kBAAkB,CAAC,CAAC;AAkBhE,oEAAoE;AACpE,MAAM,MAAM,mBAAmB,GAAG;IAChC,QAAQ,CAAC,WAAW,CAAC,EAAE,MAAM,CAAC;IAC9B,QAAQ,CAAC,WAAW,CAAC,EAAE,OAAO,CAAC;IAC/B,QAAQ,CAAC,WAAW,CAAC,EAAE,mBAAmB,CAAC;IAC3C,QAAQ,CAAC,gBAAgB,CAAC,EAAE,MAAM,CAAC;CACpC,CAAC;AAEF,gFAAgF;AAChF,eAAO,MAAM,YAAY;IACvB,sEAAsE;;uBA9BlD,sBAAsB;;IAgC1C,sEAAsE;;uBA/BlD,UAAU;;IAiC9B,iFAAiF;sCAC3D,mBAAmB,KAAQ,YAAY;CAWrD,CAAC;AAEX;;;;GAIG;AACH,wBAAgB,uBAAuB,CACrC,WAAW,EAAE,mBAAmB,GAC/B,MAAM,CAER"}
@@ -13,7 +13,7 @@ const SOUTH_AFRICA_GREEN_BOOK = Object.freeze({
13
13
  const PASSPORT = Object.freeze({
14
14
  kind: "passport",
15
15
  displayName: "Passport",
16
- hasBackSide: false,
16
+ hasBackSide: true,
17
17
  orientation: "Landscape",
18
18
  knownAspectRatio: 356 / 272,
19
19
  });
@@ -21,7 +21,7 @@ const PASSPORT = Object.freeze({
21
21
  export const DocumentType = {
22
22
  /** South Africa Green Book — booklet-style, single-side, portrait. */
23
23
  SouthAfricaGreenBook: SOUTH_AFRICA_GREEN_BOOK,
24
- /** Passport — single data page, no back side, landscape. */
24
+ /** Passport — landscape data page followed by a back-side capture. */
25
25
  Passport: PASSPORT,
26
26
  /** Catch-all without a preset; defaults to a landscape, two-sided "Document". */
27
27
  GenericDocument(args = {}) {
@@ -1 +1 @@
1
- {"version":3,"file":"document_type.js","sourceRoot":"","sources":["../../../src/core/models/document_type.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAqBH,MAAM,uBAAuB,GAAiB,MAAM,CAAC,MAAM,CAAC;IAC1D,IAAI,EAAE,sBAAsB;IAC5B,WAAW,EAAE,YAAY;IACzB,WAAW,EAAE,KAAK;IAClB,WAAW,EAAE,UAAU;IACvB,gBAAgB,EAAE,GAAG,GAAG,GAAG;CAC5B,CAAC,CAAC;AAEH,MAAM,QAAQ,GAAiB,MAAM,CAAC,MAAM,CAAC;IAC3C,IAAI,EAAE,UAAU;IAChB,WAAW,EAAE,UAAU;IACvB,WAAW,EAAE,KAAK;IAClB,WAAW,EAAE,WAAW;IACxB,gBAAgB,EAAE,GAAG,GAAG,GAAG;CAC5B,CAAC,CAAC;AAUH,gFAAgF;AAChF,MAAM,CAAC,MAAM,YAAY,GAAG;IAC1B,sEAAsE;IACtE,oBAAoB,EAAE,uBAAuB;IAC7C,4DAA4D;IAC5D,QAAQ,EAAE,QAAQ;IAClB,iFAAiF;IACjF,eAAe,CAAC,OAA4B,EAAE;QAC5C,OAAO,MAAM,CAAC,MAAM,CAAC;YACnB,IAAI,EAAE,iBAAiB;YACvB,WAAW,EAAE,IAAI,CAAC,WAAW,IAAI,UAAU;YAC3C,WAAW,EAAE,IAAI,CAAC,WAAW,IAAI,IAAI;YACrC,WAAW,EAAE,IAAI,CAAC,WAAW,IAAI,WAAW;YAC5C,GAAG,CAAC,IAAI,CAAC,gBAAgB,KAAK,SAAS;gBACrC,CAAC,CAAC,EAAE,gBAAgB,EAAE,IAAI,CAAC,gBAAgB,EAAE;gBAC7C,CAAC,CAAC,EAAE,CAAC;SACR,CAAC,CAAC;IACL,CAAC;CACO,CAAC;AAEX;;;;GAIG;AACH,MAAM,UAAU,uBAAuB,CACrC,WAAgC;IAEhC,OAAO,WAAW,KAAK,UAAU,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,KAAK,CAAC;AACnD,CAAC"}
1
+ {"version":3,"file":"document_type.js","sourceRoot":"","sources":["../../../src/core/models/document_type.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAqBH,MAAM,uBAAuB,GAAiB,MAAM,CAAC,MAAM,CAAC;IAC1D,IAAI,EAAE,sBAAsB;IAC5B,WAAW,EAAE,YAAY;IACzB,WAAW,EAAE,KAAK;IAClB,WAAW,EAAE,UAAU;IACvB,gBAAgB,EAAE,GAAG,GAAG,GAAG;CAC5B,CAAC,CAAC;AAEH,MAAM,QAAQ,GAAiB,MAAM,CAAC,MAAM,CAAC;IAC3C,IAAI,EAAE,UAAU;IAChB,WAAW,EAAE,UAAU;IACvB,WAAW,EAAE,IAAI;IACjB,WAAW,EAAE,WAAW;IACxB,gBAAgB,EAAE,GAAG,GAAG,GAAG;CAC5B,CAAC,CAAC;AAUH,gFAAgF;AAChF,MAAM,CAAC,MAAM,YAAY,GAAG;IAC1B,sEAAsE;IACtE,oBAAoB,EAAE,uBAAuB;IAC7C,sEAAsE;IACtE,QAAQ,EAAE,QAAQ;IAClB,iFAAiF;IACjF,eAAe,CAAC,OAA4B,EAAE;QAC5C,OAAO,MAAM,CAAC,MAAM,CAAC;YACnB,IAAI,EAAE,iBAAiB;YACvB,WAAW,EAAE,IAAI,CAAC,WAAW,IAAI,UAAU;YAC3C,WAAW,EAAE,IAAI,CAAC,WAAW,IAAI,IAAI;YACrC,WAAW,EAAE,IAAI,CAAC,WAAW,IAAI,WAAW;YAC5C,GAAG,CAAC,IAAI,CAAC,gBAAgB,KAAK,SAAS;gBACrC,CAAC,CAAC,EAAE,gBAAgB,EAAE,IAAI,CAAC,gBAAgB,EAAE;gBAC7C,CAAC,CAAC,EAAE,CAAC;SACR,CAAC,CAAC;IACL,CAAC;CACO,CAAC;AAEX;;;;GAIG;AACH,MAAM,UAAU,uBAAuB,CACrC,WAAgC;IAEhC,OAAO,WAAW,KAAK,UAAU,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,KAAK,CAAC;AACnD,CAAC"}
@@ -0,0 +1,36 @@
1
+ /**
2
+ * Partner-declared Global Privacy Control posture for the consent screen
3
+ * (`global_privacy_control` on the wire).
4
+ *
5
+ * Native mobile platforms expose no OS-level equivalent of the web's GPC
6
+ * signal, so the SDK performs no runtime user-signal tracking: the partner
7
+ * declares the posture once at initialization
8
+ * (`b.config((c) => { c.globalPrivacyControl = ...; })`) and it governs
9
+ * every session.
10
+ *
11
+ * Const-object pattern (see `KameraEventType`-style types): enum ergonomics,
12
+ * string wire format.
13
+ */
14
+ export declare const GlobalPrivacyControl: {
15
+ /**
16
+ * Default. Forces the opt-out consent layout universally: consent starts
17
+ * granted (pre-selected) for every session regardless of region — the
18
+ * user unticks to opt out. Regional detection is never consulted.
19
+ */
20
+ readonly OptOut: "opt-out";
21
+ /**
22
+ * Legacy regional mechanics: consent starts granted outside the EU and
23
+ * starts ungranted (explicit opt-in required) when the device locale is
24
+ * an EU member state.
25
+ */
26
+ readonly OptIn: "opt-in";
27
+ };
28
+ export type GlobalPrivacyControl = (typeof GlobalPrivacyControl)[keyof typeof GlobalPrivacyControl];
29
+ /** Configuration key this setting is transported under. */
30
+ export declare const GLOBAL_PRIVACY_CONTROL_WIRE_KEY = "global_privacy_control";
31
+ /**
32
+ * Parses a wire value ("opt-out" / "opt-in"); anything else falls back to
33
+ * the `OptOut` baseline default.
34
+ */
35
+ export declare function globalPrivacyControlFromWire(value: string | null | undefined): GlobalPrivacyControl;
36
+ //# sourceMappingURL=global_privacy_control.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"global_privacy_control.d.ts","sourceRoot":"","sources":["../../../src/core/models/global_privacy_control.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;GAYG;AACH,eAAO,MAAM,oBAAoB;IAC/B;;;;OAIG;;IAGH;;;;OAIG;;CAEK,CAAC;AACX,MAAM,MAAM,oBAAoB,GAC9B,CAAC,OAAO,oBAAoB,CAAC,CAAC,MAAM,OAAO,oBAAoB,CAAC,CAAC;AAEnE,2DAA2D;AAC3D,eAAO,MAAM,+BAA+B,2BAA2B,CAAC;AAExE;;;GAGG;AACH,wBAAgB,4BAA4B,CAC1C,KAAK,EAAE,MAAM,GAAG,IAAI,GAAG,SAAS,GAC/B,oBAAoB,CAItB"}
@@ -0,0 +1,39 @@
1
+ /**
2
+ * Partner-declared Global Privacy Control posture for the consent screen
3
+ * (`global_privacy_control` on the wire).
4
+ *
5
+ * Native mobile platforms expose no OS-level equivalent of the web's GPC
6
+ * signal, so the SDK performs no runtime user-signal tracking: the partner
7
+ * declares the posture once at initialization
8
+ * (`b.config((c) => { c.globalPrivacyControl = ...; })`) and it governs
9
+ * every session.
10
+ *
11
+ * Const-object pattern (see `KameraEventType`-style types): enum ergonomics,
12
+ * string wire format.
13
+ */
14
+ export const GlobalPrivacyControl = {
15
+ /**
16
+ * Default. Forces the opt-out consent layout universally: consent starts
17
+ * granted (pre-selected) for every session regardless of region — the
18
+ * user unticks to opt out. Regional detection is never consulted.
19
+ */
20
+ OptOut: "opt-out",
21
+ /**
22
+ * Legacy regional mechanics: consent starts granted outside the EU and
23
+ * starts ungranted (explicit opt-in required) when the device locale is
24
+ * an EU member state.
25
+ */
26
+ OptIn: "opt-in",
27
+ };
28
+ /** Configuration key this setting is transported under. */
29
+ export const GLOBAL_PRIVACY_CONTROL_WIRE_KEY = "global_privacy_control";
30
+ /**
31
+ * Parses a wire value ("opt-out" / "opt-in"); anything else falls back to
32
+ * the `OptOut` baseline default.
33
+ */
34
+ export function globalPrivacyControlFromWire(value) {
35
+ return value === GlobalPrivacyControl.OptIn
36
+ ? GlobalPrivacyControl.OptIn
37
+ : GlobalPrivacyControl.OptOut;
38
+ }
39
+ //# sourceMappingURL=global_privacy_control.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"global_privacy_control.js","sourceRoot":"","sources":["../../../src/core/models/global_privacy_control.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;GAYG;AACH,MAAM,CAAC,MAAM,oBAAoB,GAAG;IAClC;;;;OAIG;IACH,MAAM,EAAE,SAAS;IAEjB;;;;OAIG;IACH,KAAK,EAAE,QAAQ;CACP,CAAC;AAIX,2DAA2D;AAC3D,MAAM,CAAC,MAAM,+BAA+B,GAAG,wBAAwB,CAAC;AAExE;;;GAGG;AACH,MAAM,UAAU,4BAA4B,CAC1C,KAAgC;IAEhC,OAAO,KAAK,KAAK,oBAAoB,CAAC,KAAK;QACzC,CAAC,CAAC,oBAAoB,CAAC,KAAK;QAC5B,CAAC,CAAC,oBAAoB,CAAC,MAAM,CAAC;AAClC,CAAC"}
@@ -88,10 +88,10 @@ export type CacheConfig = {
88
88
  readonly maxSize: number;
89
89
  };
90
90
  /**
91
- * Retry strategy.
91
+ * Retry strategy. `none` is the default.
92
+ * - `none`: one attempt, no retry — `maxAttempts` is forced to 1
92
93
  * - `exponential`: `delay = min(initialDelay × multiplier^attempt, maxDelay)` plus `±jitter`
93
94
  * - `fixed`: constant `fixedDelay` between attempts
94
- * - `none`: no retry (`maxAttempts: 1`)
95
95
  */
96
96
  export declare enum RetryStrategy {
97
97
  exponential = "exponential",
@@ -27,10 +27,10 @@ export var LogLevel;
27
27
  LogLevel["body"] = "body";
28
28
  })(LogLevel || (LogLevel = {}));
29
29
  /**
30
- * Retry strategy.
30
+ * Retry strategy. `none` is the default.
31
+ * - `none`: one attempt, no retry — `maxAttempts` is forced to 1
31
32
  * - `exponential`: `delay = min(initialDelay × multiplier^attempt, maxDelay)` plus `±jitter`
32
33
  * - `fixed`: constant `fixedDelay` between attempts
33
- * - `none`: no retry (`maxAttempts: 1`)
34
34
  */
35
35
  export var RetryStrategy;
36
36
  (function (RetryStrategy) {
@@ -1 +1 @@
1
- {"version":3,"file":"smile_auth_interceptor.d.ts","sourceRoot":"","sources":["../../../../src/data/api/interceptors/smile_auth_interceptor.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,aAAa,EAA8B,MAAM,OAAO,CAAC;AAGvE,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,qCAAqC,CAAC;AAEzE,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,sBAAsB,CAAC;AAwCxD,MAAM,MAAM,2BAA2B,GAAG;IACxC,QAAQ,CAAC,aAAa,EAAE,aAAa,CAAC;IACtC,QAAQ,CAAC,WAAW,EAAE,WAAW,CAAC;CACnC,CAAC;AAEF,qBAAa,oBAAoB;IAC/B,OAAO,CAAC,QAAQ,CAAC,cAAc,CAAgB;IAC/C,OAAO,CAAC,QAAQ,CAAC,YAAY,CAAc;gBAE/B,OAAO,EAAE,2BAA2B;IAKhD;;;;OAIG;IACH,MAAM,CAAC,MAAM,EAAE,aAAa,GAAG;QAAE,OAAO,EAAE,MAAM,CAAA;KAAE;YAOpC,UAAU;CAgBzB"}
1
+ {"version":3,"file":"smile_auth_interceptor.d.ts","sourceRoot":"","sources":["../../../../src/data/api/interceptors/smile_auth_interceptor.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,aAAa,EAA8B,MAAM,OAAO,CAAC;AAGvE,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,qCAAqC,CAAC;AAEzE,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,sBAAsB,CAAC;AAyBxD,MAAM,MAAM,2BAA2B,GAAG;IACxC,QAAQ,CAAC,aAAa,EAAE,aAAa,CAAC;IACtC,QAAQ,CAAC,WAAW,EAAE,WAAW,CAAC;CACnC,CAAC;AAEF,qBAAa,oBAAoB;IAC/B,OAAO,CAAC,QAAQ,CAAC,cAAc,CAAgB;IAC/C,OAAO,CAAC,QAAQ,CAAC,YAAY,CAAc;gBAE/B,OAAO,EAAE,2BAA2B;IAKhD;;;;OAIG;IACH,MAAM,CAAC,MAAM,EAAE,aAAa,GAAG;QAAE,OAAO,EAAE,MAAM,CAAA;KAAE;YAOpC,UAAU;CAgBzB"}
@@ -1,4 +1,4 @@
1
- import { Platform } from "react-native";
1
+ import { sourceSdkIdentifier } from "@smileid/usesmileid_bridge";
2
2
  import { currentRequestTimestamp } from "../../security/request_timestamp";
3
3
  /**
4
4
  * Auth interceptor.
@@ -20,21 +20,7 @@ import { currentRequestTimestamp } from "../../security/request_timestamp";
20
20
  * value written by `TokenRefreshInterceptor` is observed automatically
21
21
  * by the next outgoing request.
22
22
  */
23
- const SDK_VERSION = "12.0.0";
24
- /**
25
- * Source-SDK identifier, suffixed with the runtime platform so the server can
26
- * attribute the request and resolve the matching per-SDK signing secret.
27
- */
28
- function sourceSdk() {
29
- switch (Platform.OS) {
30
- case "android":
31
- return "react-native-expo (android)";
32
- case "ios":
33
- return "react-native-expo (iOS)";
34
- default:
35
- return "react-native-expo";
36
- }
37
- }
23
+ const SDK_VERSION = "12.0.2"; // x-release-please-version
38
24
  export class SmileAuthInterceptor {
39
25
  _partnerConfig;
40
26
  _tokenHolder;
@@ -55,7 +41,7 @@ export class SmileAuthInterceptor {
55
41
  }
56
42
  async _onRequest(config) {
57
43
  config.headers.set("smileid-token", this._tokenHolder.current);
58
- config.headers.set("smileid-source-sdk", sourceSdk());
44
+ config.headers.set("smileid-source-sdk", sourceSdkIdentifier());
59
45
  config.headers.set("smileid-source-sdk-version", SDK_VERSION);
60
46
  config.headers.set("smileid-partner-id", this._partnerConfig.partnerId);
61
47
  if (this._partnerConfig.callbackUrl) {
@@ -1 +1 @@
1
- {"version":3,"file":"smile_auth_interceptor.js","sourceRoot":"","sources":["../../../../src/data/api/interceptors/smile_auth_interceptor.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,QAAQ,EAAE,MAAM,cAAc,CAAC;AAGxC,OAAO,EAAE,uBAAuB,EAAE,MAAM,kCAAkC,CAAC;AAG3E;;;;;;;;;;;;;;;;;;;GAmBG;AAEH,MAAM,WAAW,GAAG,QAAQ,CAAC;AAE7B;;;GAGG;AACH,SAAS,SAAS;IAChB,QAAQ,QAAQ,CAAC,EAAE,EAAE,CAAC;QACpB,KAAK,SAAS;YACZ,OAAO,6BAA6B,CAAC;QACvC,KAAK,KAAK;YACR,OAAO,yBAAyB,CAAC;QACnC;YACE,OAAO,mBAAmB,CAAC;IAC/B,CAAC;AACH,CAAC;AAOD,MAAM,OAAO,oBAAoB;IACd,cAAc,CAAgB;IAC9B,YAAY,CAAc;IAE3C,YAAY,OAAoC;QAC9C,IAAI,CAAC,cAAc,GAAG,OAAO,CAAC,aAAa,CAAC;QAC5C,IAAI,CAAC,YAAY,GAAG,OAAO,CAAC,WAAW,CAAC;IAC1C,CAAC;IAED;;;;OAIG;IACH,MAAM,CAAC,MAAqB;QAC1B,MAAM,SAAS,GAAG,MAAM,CAAC,YAAY,CAAC,OAAO,CAAC,GAAG,CAAC,KAAK,EAAE,MAAM,EAAE,EAAE;YACjE,OAAO,IAAI,CAAC,UAAU,CAAC,MAAM,CAAC,CAAC;QACjC,CAAC,CAAC,CAAC;QACH,OAAO,EAAE,OAAO,EAAE,SAAS,EAAE,CAAC;IAChC,CAAC;IAEO,KAAK,CAAC,UAAU,CACtB,MAAkC;QAElC,MAAM,CAAC,OAAO,CAAC,GAAG,CAAC,eAAe,EAAE,IAAI,CAAC,YAAY,CAAC,OAAO,CAAC,CAAC;QAC/D,MAAM,CAAC,OAAO,CAAC,GAAG,CAAC,oBAAoB,EAAE,SAAS,EAAE,CAAC,CAAC;QACtD,MAAM,CAAC,OAAO,CAAC,GAAG,CAAC,4BAA4B,EAAE,WAAW,CAAC,CAAC;QAC9D,MAAM,CAAC,OAAO,CAAC,GAAG,CAAC,oBAAoB,EAAE,IAAI,CAAC,cAAc,CAAC,SAAS,CAAC,CAAC;QACxE,IAAI,IAAI,CAAC,cAAc,CAAC,WAAW,EAAE,CAAC;YACpC,MAAM,CAAC,OAAO,CAAC,GAAG,CAAC,cAAc,EAAE,IAAI,CAAC,cAAc,CAAC,WAAW,CAAC,CAAC;QACtE,CAAC;QACD,2EAA2E;QAC3E,uEAAuE;QACvE,yEAAyE;QACzE,MAAM,CAAC,OAAO,CAAC,GAAG,CAAC,2BAA2B,EAAE,uBAAuB,EAAE,CAAC,CAAC;QAC3E,OAAO,MAAM,CAAC;IAChB,CAAC;CACF"}
1
+ {"version":3,"file":"smile_auth_interceptor.js","sourceRoot":"","sources":["../../../../src/data/api/interceptors/smile_auth_interceptor.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,mBAAmB,EAAE,MAAM,4BAA4B,CAAC;AAGjE,OAAO,EAAE,uBAAuB,EAAE,MAAM,kCAAkC,CAAC;AAG3E;;;;;;;;;;;;;;;;;;;GAmBG;AAEH,MAAM,WAAW,GAAG,QAAQ,CAAC,CAAC,2BAA2B;AAOzD,MAAM,OAAO,oBAAoB;IACd,cAAc,CAAgB;IAC9B,YAAY,CAAc;IAE3C,YAAY,OAAoC;QAC9C,IAAI,CAAC,cAAc,GAAG,OAAO,CAAC,aAAa,CAAC;QAC5C,IAAI,CAAC,YAAY,GAAG,OAAO,CAAC,WAAW,CAAC;IAC1C,CAAC;IAED;;;;OAIG;IACH,MAAM,CAAC,MAAqB;QAC1B,MAAM,SAAS,GAAG,MAAM,CAAC,YAAY,CAAC,OAAO,CAAC,GAAG,CAAC,KAAK,EAAE,MAAM,EAAE,EAAE;YACjE,OAAO,IAAI,CAAC,UAAU,CAAC,MAAM,CAAC,CAAC;QACjC,CAAC,CAAC,CAAC;QACH,OAAO,EAAE,OAAO,EAAE,SAAS,EAAE,CAAC;IAChC,CAAC;IAEO,KAAK,CAAC,UAAU,CACtB,MAAkC;QAElC,MAAM,CAAC,OAAO,CAAC,GAAG,CAAC,eAAe,EAAE,IAAI,CAAC,YAAY,CAAC,OAAO,CAAC,CAAC;QAC/D,MAAM,CAAC,OAAO,CAAC,GAAG,CAAC,oBAAoB,EAAE,mBAAmB,EAAE,CAAC,CAAC;QAChE,MAAM,CAAC,OAAO,CAAC,GAAG,CAAC,4BAA4B,EAAE,WAAW,CAAC,CAAC;QAC9D,MAAM,CAAC,OAAO,CAAC,GAAG,CAAC,oBAAoB,EAAE,IAAI,CAAC,cAAc,CAAC,SAAS,CAAC,CAAC;QACxE,IAAI,IAAI,CAAC,cAAc,CAAC,WAAW,EAAE,CAAC;YACpC,MAAM,CAAC,OAAO,CAAC,GAAG,CAAC,cAAc,EAAE,IAAI,CAAC,cAAc,CAAC,WAAW,CAAC,CAAC;QACtE,CAAC;QACD,2EAA2E;QAC3E,uEAAuE;QACvE,yEAAyE;QACzE,MAAM,CAAC,OAAO,CAAC,GAAG,CAAC,2BAA2B,EAAE,uBAAuB,EAAE,CAAC,CAAC;QAC3E,OAAO,MAAM,CAAC;IAChB,CAAC;CACF"}
@@ -19,7 +19,7 @@ import type { JobSubmissionResponse } from "../model/job_submission_response";
19
19
  * infrastructure for future divergence.
20
20
  */
21
21
  declare const PROD_BASE_URL: "https://api.smileidentity.com/";
22
- declare const SANDBOX_BASE_URL: "https://devapi.smileidentity.com/";
22
+ declare const SANDBOX_BASE_URL: "https://testapi.smileidentity.com/";
23
23
  export declare class SmileIDAPI {
24
24
  private readonly _client;
25
25
  private readonly _partnerConfig;
@@ -106,6 +106,10 @@ export declare class SmileIDAPI {
106
106
  * the part with `Content-Type: application/json` causes the parser
107
107
  * to reject the part as "missing or invalid".
108
108
  *
109
+ * `consent` is `undefined` only when the token binds complete
110
+ * consent and no local source exists — the part is then omitted
111
+ * entirely and the server injects the token's consent.
112
+ *
109
113
  * The `metadata` snapshot is built by the request-construction site
110
114
  * (the flow navigation manager) and travels on the request — this
111
115
  * method serializes the snapshot it is handed rather than generating
@@ -1 +1 @@
1
- {"version":3,"file":"smile_id_api.d.ts","sourceRoot":"","sources":["../../../src/data/api/smile_id_api.ts"],"names":[],"mappings":"AAAA,OAAc,EAAE,KAAK,aAAa,EAAE,MAAM,OAAO,CAAC;AAClD,OAAO,KAAK,EACV,aAAa,EACb,aAAa,EACd,MAAM,kCAAkC,CAAC;AAG1C,OAAO,KAAK,EACV,mBAAmB,EACnB,2BAA2B,EAC3B,mCAAmC,EACnC,kBAAkB,EAClB,gCAAgC,EAChC,4BAA4B,EAC7B,MAAM,sBAAsB,CAAC;AAC9B,OAAO,EAAE,oBAAoB,EAAE,MAAM,uCAAuC,CAAC;AAC7E,OAAO,EAAE,wBAAwB,EAAE,MAAM,oCAAoC,CAAC;AAG9E,OAAO,KAAK,EAAE,qBAAqB,EAAE,MAAM,kCAAkC,CAAC;AAK9E;;;;;;;;;;;;;GAaG;AAQH,QAAA,MAAM,aAAa,kCAAyB,CAAC;AAC7C,QAAA,MAAM,gBAAgB,qCAAsB,CAAC;AAY7C,qBAAa,UAAU;IACrB,OAAO,CAAC,QAAQ,CAAC,OAAO,CAAgB;IACxC,OAAO,CAAC,QAAQ,CAAC,cAAc,CAAgB;gBAEnC,MAAM,EAAE,aAAa,EAAE,aAAa,EAAE,aAAa;IAK/D;;;;;;;;;;;;;;;;;OAiBG;IACG,qBAAqB,CACzB,OAAO,EAAE,4BAA4B,GACpC,OAAO,CAAC,qBAAqB,CAAC;IAYjC;;;;;OAKG;IACG,yBAAyB,CAC7B,OAAO,EAAE,gCAAgC,GACxC,OAAO,CAAC,qBAAqB,CAAC;IAa3B,WAAW,CACf,OAAO,EAAE,kBAAkB,GAC1B,OAAO,CAAC,qBAAqB,CAAC;IAuB3B,YAAY,CAChB,OAAO,EAAE,mBAAmB,GAC3B,OAAO,CAAC,qBAAqB,CAAC;IAqB3B,oBAAoB,CACxB,OAAO,EAAE,2BAA2B,GACnC,OAAO,CAAC,qBAAqB,CAAC;IAI3B,4BAA4B,CAChC,OAAO,EAAE,mCAAmC,GAC3C,OAAO,CAAC,qBAAqB,CAAC;YAOnB,yBAAyB;IAyBvC;;;;;;;;;;;OAWG;IACH,OAAO,CAAC,oBAAoB;IAiB5B;;;;;;;;OAQG;IACH,OAAO,CAAC,MAAM,CAAC,sBAAsB;IAYrC;;;;;;OAMG;IACH,OAAO,CAAC,eAAe;IAavB;;;;;;;;;;;OAWG;IACH,OAAO,CAAC,yBAAyB;IAWjC;;;;;;;;;;;OAWG;IACH,OAAO,CAAC,yBAAyB;YAkBnB,cAAc;CAY7B;AAoHD;;;;GAIG;AACH,wBAAgB,gBAAgB,CAAC,MAAM,EAAE,aAAa,GAAG,aAAa,CAgBrE;AAED,OAAO,EACL,oBAAoB,EACpB,wBAAwB,EACxB,aAAa,EACb,gBAAgB,GACjB,CAAC"}
1
+ {"version":3,"file":"smile_id_api.d.ts","sourceRoot":"","sources":["../../../src/data/api/smile_id_api.ts"],"names":[],"mappings":"AAAA,OAAc,EAAE,KAAK,aAAa,EAAE,MAAM,OAAO,CAAC;AAClD,OAAO,KAAK,EACV,aAAa,EACb,aAAa,EACd,MAAM,kCAAkC,CAAC;AAK1C,OAAO,KAAK,EACV,mBAAmB,EACnB,2BAA2B,EAC3B,mCAAmC,EACnC,kBAAkB,EAClB,gCAAgC,EAChC,4BAA4B,EAC7B,MAAM,sBAAsB,CAAC;AAC9B,OAAO,EAAE,oBAAoB,EAAE,MAAM,uCAAuC,CAAC;AAC7E,OAAO,EAAE,wBAAwB,EAAE,MAAM,oCAAoC,CAAC;AAG9E,OAAO,KAAK,EAAE,qBAAqB,EAAE,MAAM,kCAAkC,CAAC;AAK9E;;;;;;;;;;;;;GAaG;AAQH,QAAA,MAAM,aAAa,kCAAyB,CAAC;AAC7C,QAAA,MAAM,gBAAgB,sCAAsB,CAAC;AAY7C,qBAAa,UAAU;IACrB,OAAO,CAAC,QAAQ,CAAC,OAAO,CAAgB;IACxC,OAAO,CAAC,QAAQ,CAAC,cAAc,CAAgB;gBAEnC,MAAM,EAAE,aAAa,EAAE,aAAa,EAAE,aAAa;IAK/D;;;;;;;;;;;;;;;;;OAiBG;IACG,qBAAqB,CACzB,OAAO,EAAE,4BAA4B,GACpC,OAAO,CAAC,qBAAqB,CAAC;IAQjC;;;;;OAKG;IACG,yBAAyB,CAC7B,OAAO,EAAE,gCAAgC,GACxC,OAAO,CAAC,qBAAqB,CAAC;IAS3B,WAAW,CACf,OAAO,EAAE,kBAAkB,GAC1B,OAAO,CAAC,qBAAqB,CAAC;IAmB3B,YAAY,CAChB,OAAO,EAAE,mBAAmB,GAC3B,OAAO,CAAC,qBAAqB,CAAC;IAiB3B,oBAAoB,CACxB,OAAO,EAAE,2BAA2B,GACnC,OAAO,CAAC,qBAAqB,CAAC;IAI3B,4BAA4B,CAChC,OAAO,EAAE,mCAAmC,GAC3C,OAAO,CAAC,qBAAqB,CAAC;YAOnB,yBAAyB;IAqBvC;;;;;;;;;;;OAWG;IACH,OAAO,CAAC,oBAAoB;IAiB5B;;;;;;;;OAQG;IACH,OAAO,CAAC,MAAM,CAAC,sBAAsB;IAYrC;;;;;;OAMG;IACH,OAAO,CAAC,eAAe;IAavB;;;;;;;;;;;OAWG;IACH,OAAO,CAAC,yBAAyB;IAWjC;;;;;;;;;;;;;;;OAeG;IACH,OAAO,CAAC,yBAAyB;YAoBnB,cAAc;CAY7B;AAmHD;;;;GAIG;AACH,wBAAgB,gBAAgB,CAAC,MAAM,EAAE,aAAa,GAAG,aAAa,CAgBrE;AAED,OAAO,EACL,oBAAoB,EACpB,wBAAwB,EACxB,aAAa,EACb,gBAAgB,GACjB,CAAC"}