@smileid/usesmileid 12.0.0-beta01 → 12.0.1

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 (556) hide show
  1. package/CHANGELOG.md +15 -0
  2. package/README.md +701 -89
  3. package/dist/camera/camera_defaults.d.ts +14 -9
  4. package/dist/camera/camera_defaults.d.ts.map +1 -1
  5. package/dist/camera/camera_defaults.js +11 -9
  6. package/dist/camera/camera_defaults.js.map +1 -1
  7. package/dist/camera/orientation_degrees.d.ts +5 -6
  8. package/dist/camera/orientation_degrees.d.ts.map +1 -1
  9. package/dist/camera/orientation_degrees.js +5 -6
  10. package/dist/camera/orientation_degrees.js.map +1 -1
  11. package/dist/core/exception/agent_mode_with_enhanced_liveness_exception.d.ts +11 -0
  12. package/dist/core/exception/agent_mode_with_enhanced_liveness_exception.d.ts.map +1 -0
  13. package/dist/core/exception/agent_mode_with_enhanced_liveness_exception.js +17 -0
  14. package/dist/core/exception/agent_mode_with_enhanced_liveness_exception.js.map +1 -0
  15. package/dist/core/exception/capture_validation_exceptions.d.ts +1 -0
  16. package/dist/core/exception/capture_validation_exceptions.d.ts.map +1 -1
  17. package/dist/core/exception/capture_validation_exceptions.js +1 -0
  18. package/dist/core/exception/capture_validation_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/use_smile_id_error_code.d.ts +1 -0
  24. package/dist/core/exception/use_smile_id_error_code.d.ts.map +1 -1
  25. package/dist/core/exception/use_smile_id_error_code.js +1 -0
  26. package/dist/core/exception/use_smile_id_error_code.js.map +1 -1
  27. package/dist/core/models/config.d.ts +19 -0
  28. package/dist/core/models/config.d.ts.map +1 -1
  29. package/dist/core/models/document_capture_mode.d.ts +8 -0
  30. package/dist/core/models/document_capture_mode.d.ts.map +1 -1
  31. package/dist/core/models/document_capture_mode.js +24 -0
  32. package/dist/core/models/document_capture_mode.js.map +1 -1
  33. package/dist/core/models/document_type.d.ts +2 -2
  34. package/dist/core/models/document_type.d.ts.map +1 -1
  35. package/dist/core/models/document_type.js +7 -5
  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/core/models/result.d.ts +9 -8
  44. package/dist/core/models/result.d.ts.map +1 -1
  45. package/dist/core/models/result.js +5 -6
  46. package/dist/core/models/result.js.map +1 -1
  47. package/dist/data/api/interceptors/smile_auth_interceptor.d.ts.map +1 -1
  48. package/dist/data/api/interceptors/smile_auth_interceptor.js +3 -17
  49. package/dist/data/api/interceptors/smile_auth_interceptor.js.map +1 -1
  50. package/dist/data/api/interceptors/smile_integrity_interceptor.d.ts +11 -0
  51. package/dist/data/api/interceptors/smile_integrity_interceptor.d.ts.map +1 -1
  52. package/dist/data/api/interceptors/smile_integrity_interceptor.js +13 -0
  53. package/dist/data/api/interceptors/smile_integrity_interceptor.js.map +1 -1
  54. package/dist/data/api/interceptors/smile_request_mac_interceptor.d.ts +8 -0
  55. package/dist/data/api/interceptors/smile_request_mac_interceptor.d.ts.map +1 -1
  56. package/dist/data/api/interceptors/smile_request_mac_interceptor.js +11 -0
  57. package/dist/data/api/interceptors/smile_request_mac_interceptor.js.map +1 -1
  58. package/dist/data/api/smile_id_api.d.ts +1 -1
  59. package/dist/data/api/smile_id_api.d.ts.map +1 -1
  60. package/dist/data/compression/compressible_asset.d.ts +41 -0
  61. package/dist/data/compression/compressible_asset.d.ts.map +1 -0
  62. package/dist/data/compression/compressible_asset.js +34 -0
  63. package/dist/data/compression/compressible_asset.js.map +1 -0
  64. package/dist/data/compression/payload_compression_config.d.ts +36 -0
  65. package/dist/data/compression/payload_compression_config.d.ts.map +1 -0
  66. package/dist/data/compression/payload_compression_config.js +52 -0
  67. package/dist/data/compression/payload_compression_config.js.map +1 -0
  68. package/dist/data/compression/payload_compression_runner.d.ts +29 -0
  69. package/dist/data/compression/payload_compression_runner.d.ts.map +1 -0
  70. package/dist/data/compression/payload_compression_runner.js +55 -0
  71. package/dist/data/compression/payload_compression_runner.js.map +1 -0
  72. package/dist/data/compression/payload_compressor.d.ts +40 -0
  73. package/dist/data/compression/payload_compressor.d.ts.map +1 -0
  74. package/dist/data/compression/payload_compressor.js +126 -0
  75. package/dist/data/compression/payload_compressor.js.map +1 -0
  76. package/dist/data/compression/uri_compressible_asset.d.ts +23 -0
  77. package/dist/data/compression/uri_compressible_asset.d.ts.map +1 -0
  78. package/dist/data/compression/uri_compressible_asset.js +77 -0
  79. package/dist/data/compression/uri_compressible_asset.js.map +1 -0
  80. package/dist/data/dsl/builder/cache_config_builder.d.ts +2 -1
  81. package/dist/data/dsl/builder/cache_config_builder.d.ts.map +1 -1
  82. package/dist/data/dsl/builder/cache_config_builder.js +2 -1
  83. package/dist/data/dsl/builder/cache_config_builder.js.map +1 -1
  84. package/dist/data/dsl/builder/config_builder.d.ts +40 -14
  85. package/dist/data/dsl/builder/config_builder.d.ts.map +1 -1
  86. package/dist/data/dsl/builder/config_builder.js +40 -14
  87. package/dist/data/dsl/builder/config_builder.js.map +1 -1
  88. package/dist/data/dsl/builder/interceptor_config_builder.d.ts +9 -7
  89. package/dist/data/dsl/builder/interceptor_config_builder.d.ts.map +1 -1
  90. package/dist/data/dsl/builder/interceptor_config_builder.js +9 -7
  91. package/dist/data/dsl/builder/interceptor_config_builder.js.map +1 -1
  92. package/dist/data/dsl/builder/retry_config_builder.d.ts +19 -4
  93. package/dist/data/dsl/builder/retry_config_builder.d.ts.map +1 -1
  94. package/dist/data/dsl/builder/retry_config_builder.js +21 -6
  95. package/dist/data/dsl/builder/retry_config_builder.js.map +1 -1
  96. package/dist/data/dsl/builder/timeout_config_builder.d.ts +4 -0
  97. package/dist/data/dsl/builder/timeout_config_builder.d.ts.map +1 -1
  98. package/dist/data/dsl/builder/timeout_config_builder.js +4 -0
  99. package/dist/data/dsl/builder/timeout_config_builder.js.map +1 -1
  100. package/dist/data/dsl/use_smile_id_network_builder.d.ts +17 -0
  101. package/dist/data/dsl/use_smile_id_network_builder.d.ts.map +1 -1
  102. package/dist/data/dsl/use_smile_id_network_builder.js +17 -0
  103. package/dist/data/dsl/use_smile_id_network_builder.js.map +1 -1
  104. package/dist/data/factory/networking_factory.d.ts.map +1 -1
  105. package/dist/data/factory/networking_factory.js +11 -1
  106. package/dist/data/factory/networking_factory.js.map +1 -1
  107. package/dist/data/repository/use_smile_id_repository_impl.d.ts +6 -0
  108. package/dist/data/repository/use_smile_id_repository_impl.d.ts.map +1 -1
  109. package/dist/data/repository/use_smile_id_repository_impl.js +82 -8
  110. package/dist/data/repository/use_smile_id_repository_impl.js.map +1 -1
  111. package/dist/data/security/request_canonicalizer.d.ts.map +1 -1
  112. package/dist/data/security/request_canonicalizer.js +14 -2
  113. package/dist/data/security/request_canonicalizer.js.map +1 -1
  114. package/dist/data/security/security_policy.d.ts +43 -0
  115. package/dist/data/security/security_policy.d.ts.map +1 -0
  116. package/dist/data/security/security_policy.js +61 -0
  117. package/dist/data/security/security_policy.js.map +1 -0
  118. package/dist/data/smile_id_urls.d.ts +1 -1
  119. package/dist/data/smile_id_urls.js +1 -1
  120. package/dist/data/smile_id_urls.js.map +1 -1
  121. package/dist/data/util/retry_util.d.ts +2 -2
  122. package/dist/data/util/retry_util.d.ts.map +1 -1
  123. package/dist/data/util/retry_util.js +7 -1
  124. package/dist/data/util/retry_util.js.map +1 -1
  125. package/dist/data/util/use_smile_id_token_decoder.d.ts +22 -0
  126. package/dist/data/util/use_smile_id_token_decoder.d.ts.map +1 -1
  127. package/dist/data/util/use_smile_id_token_decoder.js +58 -24
  128. package/dist/data/util/use_smile_id_token_decoder.js.map +1 -1
  129. package/dist/index.d.ts +2 -2
  130. package/dist/index.d.ts.map +1 -1
  131. package/dist/index.js +2 -2
  132. package/dist/index.js.map +1 -1
  133. package/dist/l10n/strings_en.d.ts +2 -1
  134. package/dist/l10n/strings_en.d.ts.map +1 -1
  135. package/dist/l10n/strings_en.js +2 -1
  136. package/dist/l10n/strings_en.js.map +1 -1
  137. package/dist/l10n/use_smile_id_localizations.d.ts +1 -0
  138. package/dist/l10n/use_smile_id_localizations.d.ts.map +1 -1
  139. package/dist/l10n/use_smile_id_localizations.js +3 -0
  140. package/dist/l10n/use_smile_id_localizations.js.map +1 -1
  141. package/dist/metadata/builder_configuration.d.ts +44 -0
  142. package/dist/metadata/builder_configuration.d.ts.map +1 -0
  143. package/dist/metadata/builder_configuration.js +35 -0
  144. package/dist/metadata/builder_configuration.js.map +1 -0
  145. package/dist/metadata/captured_image_properties.d.ts +11 -0
  146. package/dist/metadata/captured_image_properties.d.ts.map +1 -0
  147. package/dist/metadata/captured_image_properties.js +11 -0
  148. package/dist/metadata/captured_image_properties.js.map +1 -0
  149. package/dist/metadata/device_orientation_collector.d.ts +17 -0
  150. package/dist/metadata/device_orientation_collector.d.ts.map +1 -0
  151. package/dist/metadata/device_orientation_collector.js +66 -0
  152. package/dist/metadata/device_orientation_collector.js.map +1 -0
  153. package/dist/metadata/geolocation.d.ts +20 -0
  154. package/dist/metadata/geolocation.d.ts.map +1 -0
  155. package/dist/metadata/geolocation.js +40 -0
  156. package/dist/metadata/geolocation.js.map +1 -0
  157. package/dist/metadata/metadata_configuration_mappers.d.ts +47 -0
  158. package/dist/metadata/metadata_configuration_mappers.d.ts.map +1 -0
  159. package/dist/metadata/metadata_configuration_mappers.js +178 -0
  160. package/dist/metadata/metadata_configuration_mappers.js.map +1 -0
  161. package/dist/metadata/model_configuration.d.ts +41 -0
  162. package/dist/metadata/model_configuration.d.ts.map +1 -0
  163. package/dist/metadata/model_configuration.js +44 -0
  164. package/dist/metadata/model_configuration.js.map +1 -0
  165. package/dist/metadata/optional_native_modules.d.ts +79 -3
  166. package/dist/metadata/optional_native_modules.d.ts.map +1 -1
  167. package/dist/metadata/optional_native_modules.js +108 -3
  168. package/dist/metadata/optional_native_modules.js.map +1 -1
  169. package/dist/metadata/use_smile_id_metadata.d.ts +45 -7
  170. package/dist/metadata/use_smile_id_metadata.d.ts.map +1 -1
  171. package/dist/metadata/use_smile_id_metadata.js +85 -13
  172. package/dist/metadata/use_smile_id_metadata.js.map +1 -1
  173. package/dist/metadata/use_smile_id_metadata_factory.d.ts +37 -0
  174. package/dist/metadata/use_smile_id_metadata_factory.d.ts.map +1 -1
  175. package/dist/metadata/use_smile_id_metadata_factory.js +197 -16
  176. package/dist/metadata/use_smile_id_metadata_factory.js.map +1 -1
  177. package/dist/presentation/assets/svg/document_shimmer_strings.d.ts +14 -0
  178. package/dist/presentation/assets/svg/document_shimmer_strings.d.ts.map +1 -0
  179. package/dist/presentation/assets/svg/document_shimmer_strings.js +14 -0
  180. package/dist/presentation/assets/svg/document_shimmer_strings.js.map +1 -0
  181. package/dist/presentation/assets/svg/instruction_svg_strings.d.ts +12 -4
  182. package/dist/presentation/assets/svg/instruction_svg_strings.d.ts.map +1 -1
  183. package/dist/presentation/assets/svg/instruction_svg_strings.js +19 -8
  184. package/dist/presentation/assets/svg/instruction_svg_strings.js.map +1 -1
  185. package/dist/presentation/components/helpers/enhanced_smart_selfie_animation_frames.d.ts +0 -5
  186. package/dist/presentation/components/helpers/enhanced_smart_selfie_animation_frames.d.ts.map +1 -1
  187. package/dist/presentation/components/helpers/enhanced_smart_selfie_animation_frames.js +0 -5
  188. package/dist/presentation/components/helpers/enhanced_smart_selfie_animation_frames.js.map +1 -1
  189. package/dist/presentation/components/icons/index.d.ts +24 -8
  190. package/dist/presentation/components/icons/index.d.ts.map +1 -1
  191. package/dist/presentation/components/icons/index.js +31 -11
  192. package/dist/presentation/components/icons/index.js.map +1 -1
  193. package/dist/presentation/components/use_smile_id_attribution.d.ts +1 -1
  194. package/dist/presentation/components/use_smile_id_button.d.ts +2 -2
  195. package/dist/presentation/components/use_smile_id_button.js +4 -4
  196. package/dist/presentation/components/use_smile_id_button.js.map +1 -1
  197. package/dist/presentation/components/use_smile_id_capture_content.d.ts +13 -0
  198. package/dist/presentation/components/use_smile_id_capture_content.d.ts.map +1 -1
  199. package/dist/presentation/components/use_smile_id_capture_content.js +15 -9
  200. package/dist/presentation/components/use_smile_id_capture_content.js.map +1 -1
  201. package/dist/presentation/components/use_smile_id_captured_document_image.d.ts +2 -3
  202. package/dist/presentation/components/use_smile_id_captured_document_image.d.ts.map +1 -1
  203. package/dist/presentation/components/use_smile_id_captured_document_image.js +1 -3
  204. package/dist/presentation/components/use_smile_id_captured_document_image.js.map +1 -1
  205. package/dist/presentation/components/use_smile_id_document_capture_controls.d.ts +12 -6
  206. package/dist/presentation/components/use_smile_id_document_capture_controls.d.ts.map +1 -1
  207. package/dist/presentation/components/use_smile_id_document_capture_controls.js +59 -16
  208. package/dist/presentation/components/use_smile_id_document_capture_controls.js.map +1 -1
  209. package/dist/presentation/components/use_smile_id_document_overlay.d.ts +22 -5
  210. package/dist/presentation/components/use_smile_id_document_overlay.d.ts.map +1 -1
  211. package/dist/presentation/components/use_smile_id_document_overlay.js +80 -40
  212. package/dist/presentation/components/use_smile_id_document_overlay.js.map +1 -1
  213. package/dist/presentation/components/use_smile_id_document_shimmer.d.ts +15 -0
  214. package/dist/presentation/components/use_smile_id_document_shimmer.d.ts.map +1 -0
  215. package/dist/presentation/components/use_smile_id_document_shimmer.js +23 -0
  216. package/dist/presentation/components/use_smile_id_document_shimmer.js.map +1 -0
  217. package/dist/presentation/components/use_smile_id_enhanced_smart_selfie_clip.d.ts +5 -2
  218. package/dist/presentation/components/use_smile_id_enhanced_smart_selfie_clip.d.ts.map +1 -1
  219. package/dist/presentation/components/use_smile_id_enhanced_smart_selfie_clip.js +9 -6
  220. package/dist/presentation/components/use_smile_id_enhanced_smart_selfie_clip.js.map +1 -1
  221. package/dist/presentation/components/use_smile_id_guideline_thumbnail.d.ts.map +1 -1
  222. package/dist/presentation/components/use_smile_id_guideline_thumbnail.js +84 -1
  223. package/dist/presentation/components/use_smile_id_guideline_thumbnail.js.map +1 -1
  224. package/dist/presentation/components/use_smile_id_instructions_hero.d.ts +3 -1
  225. package/dist/presentation/components/use_smile_id_instructions_hero.d.ts.map +1 -1
  226. package/dist/presentation/components/use_smile_id_instructions_hero.js +25 -5
  227. package/dist/presentation/components/use_smile_id_instructions_hero.js.map +1 -1
  228. package/dist/presentation/components/use_smile_id_oval_border_palette.d.ts.map +1 -1
  229. package/dist/presentation/components/use_smile_id_oval_border_palette.js +7 -3
  230. package/dist/presentation/components/use_smile_id_oval_border_palette.js.map +1 -1
  231. package/dist/presentation/flow/dsl/builder/config_builder.d.ts +28 -0
  232. package/dist/presentation/flow/dsl/builder/config_builder.d.ts.map +1 -1
  233. package/dist/presentation/flow/dsl/builder/config_builder.js +30 -0
  234. package/dist/presentation/flow/dsl/builder/config_builder.js.map +1 -1
  235. package/dist/presentation/flow/dsl/builder/ml_builder.d.ts +13 -4
  236. package/dist/presentation/flow/dsl/builder/ml_builder.d.ts.map +1 -1
  237. package/dist/presentation/flow/dsl/builder/ml_builder.js +3 -2
  238. package/dist/presentation/flow/dsl/builder/ml_builder.js.map +1 -1
  239. package/dist/presentation/flow/dsl/builder/screens_builder.d.ts +110 -12
  240. package/dist/presentation/flow/dsl/builder/screens_builder.d.ts.map +1 -1
  241. package/dist/presentation/flow/dsl/builder/screens_builder.js +110 -12
  242. package/dist/presentation/flow/dsl/builder/screens_builder.js.map +1 -1
  243. package/dist/presentation/flow/dsl/builder/theme_builder.d.ts +15 -2
  244. package/dist/presentation/flow/dsl/builder/theme_builder.d.ts.map +1 -1
  245. package/dist/presentation/flow/dsl/builder/theme_builder.js +15 -2
  246. package/dist/presentation/flow/dsl/builder/theme_builder.js.map +1 -1
  247. package/dist/presentation/flow/dsl/use_smile_id_builder.d.ts +6 -4
  248. package/dist/presentation/flow/dsl/use_smile_id_builder.d.ts.map +1 -1
  249. package/dist/presentation/flow/dsl/use_smile_id_builder.js.map +1 -1
  250. package/dist/presentation/flow/dsl/use_smile_id_flow_builder.d.ts +62 -36
  251. package/dist/presentation/flow/dsl/use_smile_id_flow_builder.d.ts.map +1 -1
  252. package/dist/presentation/flow/dsl/use_smile_id_flow_builder.js +62 -36
  253. package/dist/presentation/flow/dsl/use_smile_id_flow_builder.js.map +1 -1
  254. package/dist/presentation/flow/flow_navigation_manager.d.ts +44 -5
  255. package/dist/presentation/flow/flow_navigation_manager.d.ts.map +1 -1
  256. package/dist/presentation/flow/flow_navigation_manager.js +148 -11
  257. package/dist/presentation/flow/flow_navigation_manager.js.map +1 -1
  258. package/dist/presentation/flow/model/instruction_guideline.d.ts +9 -0
  259. package/dist/presentation/flow/model/instruction_guideline.d.ts.map +1 -1
  260. package/dist/presentation/flow/model/instructions_defaults.d.ts +11 -2
  261. package/dist/presentation/flow/model/instructions_defaults.d.ts.map +1 -1
  262. package/dist/presentation/flow/model/instructions_defaults.js +74 -26
  263. package/dist/presentation/flow/model/instructions_defaults.js.map +1 -1
  264. package/dist/presentation/flow/screen/orchestrated_capture_screen.d.ts.map +1 -1
  265. package/dist/presentation/flow/screen/orchestrated_capture_screen.js +48 -14
  266. package/dist/presentation/flow/screen/orchestrated_capture_screen.js.map +1 -1
  267. package/dist/presentation/flow/screen/orchestrated_consent_screen.d.ts.map +1 -1
  268. package/dist/presentation/flow/screen/orchestrated_consent_screen.js +3 -1
  269. package/dist/presentation/flow/screen/orchestrated_consent_screen.js.map +1 -1
  270. package/dist/presentation/flow/screen/orchestrated_instructions_screen.js +1 -1
  271. package/dist/presentation/flow/screen/orchestrated_instructions_screen.js.map +1 -1
  272. package/dist/presentation/flow/screen/orchestrated_preview_screen.d.ts.map +1 -1
  273. package/dist/presentation/flow/screen/orchestrated_preview_screen.js +3 -9
  274. package/dist/presentation/flow/screen/orchestrated_preview_screen.js.map +1 -1
  275. package/dist/presentation/flow/screen/orchestrated_processing_screen.js +3 -3
  276. package/dist/presentation/flow/screen/orchestrated_processing_screen.js.map +1 -1
  277. package/dist/presentation/flow/use_smile_id_flow.d.ts.map +1 -1
  278. package/dist/presentation/flow/use_smile_id_flow.js +10 -4
  279. package/dist/presentation/flow/use_smile_id_flow.js.map +1 -1
  280. package/dist/presentation/flow/validation/flow_validator.d.ts.map +1 -1
  281. package/dist/presentation/flow/validation/flow_validator.js +42 -20
  282. package/dist/presentation/flow/validation/flow_validator.js.map +1 -1
  283. package/dist/presentation/flow/validation/job_type_validator.d.ts.map +1 -1
  284. package/dist/presentation/flow/validation/job_type_validator.js +14 -0
  285. package/dist/presentation/flow/validation/job_type_validator.js.map +1 -1
  286. package/dist/presentation/screen/helpers/capture_screen_helpers.d.ts.map +1 -1
  287. package/dist/presentation/screen/helpers/capture_screen_helpers.js +1 -0
  288. package/dist/presentation/screen/helpers/capture_screen_helpers.js.map +1 -1
  289. package/dist/presentation/screen/helpers/capture_ui_state.d.ts +6 -6
  290. package/dist/presentation/screen/helpers/capture_ui_state.d.ts.map +1 -1
  291. package/dist/presentation/screen/helpers/capture_ui_state.js +19 -19
  292. package/dist/presentation/screen/helpers/capture_ui_state.js.map +1 -1
  293. package/dist/presentation/screen/helpers/ess_turn_haptics.d.ts +2 -2
  294. package/dist/presentation/screen/helpers/ess_turn_haptics.d.ts.map +1 -1
  295. package/dist/presentation/screen/helpers/ess_turn_haptics.js +6 -6
  296. package/dist/presentation/screen/helpers/ess_turn_haptics.js.map +1 -1
  297. package/dist/presentation/screen/helpers/instructions_screen_helpers.d.ts +1 -0
  298. package/dist/presentation/screen/helpers/instructions_screen_helpers.d.ts.map +1 -1
  299. package/dist/presentation/screen/helpers/instructions_screen_helpers.js +6 -2
  300. package/dist/presentation/screen/helpers/instructions_screen_helpers.js.map +1 -1
  301. package/dist/presentation/screen/helpers/scan_state_to_overlay_state.d.ts +5 -5
  302. package/dist/presentation/screen/helpers/scan_state_to_overlay_state.d.ts.map +1 -1
  303. package/dist/presentation/screen/helpers/scan_state_to_overlay_state.js +14 -11
  304. package/dist/presentation/screen/helpers/scan_state_to_overlay_state.js.map +1 -1
  305. package/dist/presentation/screen/helpers/use_capture_orientation_lock.d.ts +13 -3
  306. package/dist/presentation/screen/helpers/use_capture_orientation_lock.d.ts.map +1 -1
  307. package/dist/presentation/screen/helpers/use_capture_orientation_lock.js +48 -6
  308. package/dist/presentation/screen/helpers/use_capture_orientation_lock.js.map +1 -1
  309. package/dist/presentation/screen/use_smile_id_capture_screen.d.ts +21 -3
  310. package/dist/presentation/screen/use_smile_id_capture_screen.d.ts.map +1 -1
  311. package/dist/presentation/screen/use_smile_id_capture_screen.js +188 -32
  312. package/dist/presentation/screen/use_smile_id_capture_screen.js.map +1 -1
  313. package/dist/presentation/screen/use_smile_id_consent_screen.d.ts +7 -0
  314. package/dist/presentation/screen/use_smile_id_consent_screen.d.ts.map +1 -1
  315. package/dist/presentation/screen/use_smile_id_consent_screen.js +6 -5
  316. package/dist/presentation/screen/use_smile_id_consent_screen.js.map +1 -1
  317. package/dist/presentation/screen/use_smile_id_document_back_instructions.d.ts.map +1 -1
  318. package/dist/presentation/screen/use_smile_id_document_back_instructions.js +5 -13
  319. package/dist/presentation/screen/use_smile_id_document_back_instructions.js.map +1 -1
  320. package/dist/presentation/screen/use_smile_id_document_preview_screen.d.ts +2 -3
  321. package/dist/presentation/screen/use_smile_id_document_preview_screen.d.ts.map +1 -1
  322. package/dist/presentation/screen/use_smile_id_document_preview_screen.js +17 -12
  323. package/dist/presentation/screen/use_smile_id_document_preview_screen.js.map +1 -1
  324. package/dist/presentation/screen/use_smile_id_instructions_screen.d.ts +2 -0
  325. package/dist/presentation/screen/use_smile_id_instructions_screen.d.ts.map +1 -1
  326. package/dist/presentation/screen/use_smile_id_instructions_screen.js +2 -1
  327. package/dist/presentation/screen/use_smile_id_instructions_screen.js.map +1 -1
  328. package/dist/presentation/screen/use_smile_id_preview_screen.d.ts +7 -26
  329. package/dist/presentation/screen/use_smile_id_preview_screen.d.ts.map +1 -1
  330. package/dist/presentation/screen/use_smile_id_preview_screen.js +10 -20
  331. package/dist/presentation/screen/use_smile_id_preview_screen.js.map +1 -1
  332. package/dist/presentation/screen/use_smile_id_processing_screen.d.ts +2 -3
  333. package/dist/presentation/screen/use_smile_id_processing_screen.d.ts.map +1 -1
  334. package/dist/presentation/screen/use_smile_id_processing_screen.js +4 -3
  335. package/dist/presentation/screen/use_smile_id_processing_screen.js.map +1 -1
  336. package/dist/presentation/theme/theme.d.ts +1 -1
  337. package/dist/presentation/theme/theme.d.ts.map +1 -1
  338. package/dist/presentation/theme/theme.js +20 -18
  339. package/dist/presentation/theme/theme.js.map +1 -1
  340. package/dist/presentation/utils/force_max_brightness.d.ts +4 -4
  341. package/dist/presentation/utils/locale_utils.d.ts +10 -4
  342. package/dist/presentation/utils/locale_utils.d.ts.map +1 -1
  343. package/dist/presentation/utils/locale_utils.js +13 -5
  344. package/dist/presentation/utils/locale_utils.js.map +1 -1
  345. package/dist/testing/fake_face_analyzer.d.ts +43 -0
  346. package/dist/testing/fake_face_analyzer.d.ts.map +1 -0
  347. package/dist/testing/fake_face_analyzer.js +52 -0
  348. package/dist/testing/fake_face_analyzer.js.map +1 -0
  349. package/dist/testing/index.d.ts +5 -0
  350. package/dist/testing/index.d.ts.map +1 -0
  351. package/dist/testing/index.js +7 -0
  352. package/dist/testing/index.js.map +1 -0
  353. package/dist/testing/scenario_expectations.d.ts +28 -0
  354. package/dist/testing/scenario_expectations.d.ts.map +1 -0
  355. package/dist/testing/scenario_expectations.js +65 -0
  356. package/dist/testing/scenario_expectations.js.map +1 -0
  357. package/dist/testing/scenario_loader.d.ts +11 -0
  358. package/dist/testing/scenario_loader.d.ts.map +1 -0
  359. package/dist/testing/scenario_loader.js +64 -0
  360. package/dist/testing/scenario_loader.js.map +1 -0
  361. package/dist/testing/scripted_scan_results.d.ts +17 -0
  362. package/dist/testing/scripted_scan_results.d.ts.map +1 -0
  363. package/dist/testing/scripted_scan_results.js +52 -0
  364. package/dist/testing/scripted_scan_results.js.map +1 -0
  365. package/package.json +34 -7
  366. package/src/__tests__/dsl.test.ts +51 -1
  367. package/src/__tests__/react_native_mock.tsx +8 -0
  368. package/src/__tests__/setup_react_native.ts +17 -2
  369. package/src/__tests__/snapshots/__snapshots__/screens_structural.test.tsx.snap +5261 -0
  370. package/src/__tests__/snapshots/screens_structural.test.tsx +230 -0
  371. package/src/camera/__tests__/use_smile_id_camera_system.test.ts +103 -0
  372. package/src/camera/camera_defaults.ts +11 -9
  373. package/src/camera/orientation_degrees.ts +5 -6
  374. package/src/core/exception/__tests__/builder_validation_exceptions.test.ts +67 -0
  375. package/src/core/exception/agent_mode_with_enhanced_liveness_exception.ts +20 -0
  376. package/src/core/exception/capture_validation_exceptions.ts +1 -0
  377. package/src/core/exception/index.ts +1 -0
  378. package/src/core/exception/use_smile_id_error_code.ts +1 -0
  379. package/src/core/models/__tests__/document_type.test.ts +7 -5
  380. package/src/core/models/__tests__/flow_models.test.ts +26 -0
  381. package/src/core/models/config.ts +22 -0
  382. package/src/core/models/document_capture_mode.ts +27 -0
  383. package/src/core/models/document_type.ts +7 -5
  384. package/src/core/models/global_privacy_control.ts +45 -0
  385. package/src/core/models/network_config.ts +2 -2
  386. package/src/core/models/result.ts +9 -8
  387. package/src/data/api/__tests__/smile_id_api.test.ts +1 -1
  388. package/src/data/api/interceptors/__tests__/gzip_interceptor.test.ts +83 -0
  389. package/src/data/api/interceptors/__tests__/smile_integrity_interceptor.test.ts +37 -1
  390. package/src/data/api/interceptors/__tests__/smile_request_mac_interceptor.test.ts +59 -1
  391. package/src/data/api/interceptors/smile_auth_interceptor.ts +3 -18
  392. package/src/data/api/interceptors/smile_integrity_interceptor.ts +20 -0
  393. package/src/data/api/interceptors/smile_request_mac_interceptor.ts +13 -0
  394. package/src/data/compression/__tests__/payload_compressor.test.ts +200 -0
  395. package/src/data/compression/__tests__/payload_compressor_real_jpeg.test.ts +226 -0
  396. package/src/data/compression/compressible_asset.ts +62 -0
  397. package/src/data/compression/payload_compression_config.ts +53 -0
  398. package/src/data/compression/payload_compression_runner.ts +102 -0
  399. package/src/data/compression/payload_compressor.ts +164 -0
  400. package/src/data/compression/uri_compressible_asset.ts +85 -0
  401. package/src/data/dsl/builder/__tests__/config_builders.test.ts +62 -0
  402. package/src/data/dsl/builder/cache_config_builder.ts +3 -1
  403. package/src/data/dsl/builder/config_builder.ts +45 -14
  404. package/src/data/dsl/builder/interceptor_config_builder.ts +9 -7
  405. package/src/data/dsl/builder/retry_config_builder.ts +27 -6
  406. package/src/data/dsl/builder/timeout_config_builder.ts +7 -0
  407. package/src/data/dsl/use_smile_id_network_builder.ts +17 -0
  408. package/src/data/factory/__tests__/retry_gzip_mac_composition.test.ts +163 -0
  409. package/src/data/factory/__tests__/signed_job_submission_headers.test.ts +1 -1
  410. package/src/data/factory/networking_factory.ts +14 -1
  411. package/src/data/repository/__tests__/network_retries.test.ts +117 -0
  412. package/src/data/repository/__tests__/use_smile_id_repository.test.ts +1 -1
  413. package/src/data/repository/use_smile_id_repository_impl.ts +96 -9
  414. package/src/data/security/__tests__/request_canonicalizer.test.ts +132 -0
  415. package/src/data/security/__tests__/security_policy.test.ts +96 -0
  416. package/src/data/security/__tests__/smile_id_crypto_manager.test.ts +18 -0
  417. package/src/data/security/request_canonicalizer.ts +15 -2
  418. package/src/data/security/security_policy.ts +70 -0
  419. package/src/data/smile_id_urls.ts +1 -1
  420. package/src/data/util/__tests__/retry_util.test.ts +25 -0
  421. package/src/data/util/__tests__/use_smile_id_token_decoder.test.ts +57 -1
  422. package/src/data/util/retry_util.ts +12 -3
  423. package/src/data/util/use_smile_id_token_decoder.ts +76 -28
  424. package/src/index.ts +6 -4
  425. package/src/l10n/strings_en.ts +2 -1
  426. package/src/l10n/use_smile_id_localizations.ts +3 -0
  427. package/src/metadata/__tests__/device_orientation_collector.test.ts +15 -0
  428. package/src/metadata/__tests__/metadata_configuration_mappers.test.ts +254 -0
  429. package/src/metadata/__tests__/metadata_configuration_objects.test.ts +86 -0
  430. package/src/metadata/__tests__/metadata_device_context.test.ts +147 -0
  431. package/src/metadata/__tests__/metadata_device_os_android.test.ts +18 -0
  432. package/src/metadata/__tests__/metadata_golden_fixture.json +13 -0
  433. package/src/metadata/__tests__/metadata_payload_golden.test.ts +193 -0
  434. package/src/metadata/__tests__/use_smile_id_metadata.test.ts +19 -25
  435. package/src/metadata/builder_configuration.ts +69 -0
  436. package/src/metadata/captured_image_properties.ts +10 -0
  437. package/src/metadata/device_orientation_collector.ts +75 -0
  438. package/src/metadata/geolocation.ts +46 -0
  439. package/src/metadata/metadata_configuration_mappers.ts +248 -0
  440. package/src/metadata/model_configuration.ts +68 -0
  441. package/src/metadata/optional_native_modules.ts +157 -3
  442. package/src/metadata/use_smile_id_metadata.ts +140 -17
  443. package/src/metadata/use_smile_id_metadata_factory.ts +211 -16
  444. package/src/presentation/assets/si_document_green_book_hero_animation.json +1 -4668
  445. package/src/presentation/assets/si_document_hero_animation.json +1 -4799
  446. package/src/presentation/assets/si_document_hero_back_animation.json +1 -2039
  447. package/src/presentation/assets/si_document_passport_hero_animation.json +1 -14491
  448. package/src/presentation/assets/si_ess_all_directions_hero_animation.json +1 -0
  449. package/src/presentation/assets/si_ess_animation_all_directions.json +1 -5575
  450. package/src/presentation/assets/si_selfie_hero_animation.json +1 -1439
  451. package/src/presentation/assets/si_smile_to_capture_animation.json +1 -1439
  452. package/src/presentation/assets/svg/document_shimmer_strings.ts +17 -0
  453. package/src/presentation/assets/svg/instruction_svg_strings.ts +34 -12
  454. package/src/presentation/components/__tests__/enhanced_smart_selfie_animation_frames.test.ts +1 -3
  455. package/src/presentation/components/__tests__/use_smile_id_enhanced_smart_selfie_clip.test.tsx +12 -8
  456. package/src/presentation/components/__tests__/use_smile_id_guideline_thumbnail.test.tsx +34 -1
  457. package/src/presentation/components/__tests__/use_smile_id_instructions_hero.test.tsx +71 -0
  458. package/src/presentation/components/__tests__/use_smile_id_oval_border_palette.test.ts +7 -5
  459. package/src/presentation/components/helpers/enhanced_smart_selfie_animation_frames.ts +0 -6
  460. package/src/presentation/components/icons/index.tsx +65 -18
  461. package/src/presentation/components/use_smile_id_attribution.tsx +1 -1
  462. package/src/presentation/components/use_smile_id_button.tsx +4 -4
  463. package/src/presentation/components/use_smile_id_capture_content.tsx +36 -12
  464. package/src/presentation/components/use_smile_id_captured_document_image.tsx +3 -8
  465. package/src/presentation/components/use_smile_id_document_capture_controls.tsx +103 -39
  466. package/src/presentation/components/use_smile_id_document_overlay.tsx +134 -44
  467. package/src/presentation/components/use_smile_id_document_shimmer.tsx +51 -0
  468. package/src/presentation/components/use_smile_id_enhanced_smart_selfie_clip.tsx +9 -6
  469. package/src/presentation/components/use_smile_id_guideline_thumbnail.tsx +131 -2
  470. package/src/presentation/components/use_smile_id_instructions_hero.tsx +111 -60
  471. package/src/presentation/components/use_smile_id_oval_border_palette.ts +7 -3
  472. package/src/presentation/flow/__tests__/document_flow_navigation.test.ts +203 -4
  473. package/src/presentation/flow/__tests__/flow_navigation_manager.test.ts +49 -0
  474. package/src/presentation/flow/dsl/builder/__tests__/config_builder.test.ts +25 -0
  475. package/src/presentation/flow/dsl/builder/config_builder.ts +35 -0
  476. package/src/presentation/flow/dsl/builder/ml_builder.ts +13 -4
  477. package/src/presentation/flow/dsl/builder/screens_builder.ts +110 -12
  478. package/src/presentation/flow/dsl/builder/theme_builder.ts +19 -2
  479. package/src/presentation/flow/dsl/use_smile_id_builder.tsx +6 -4
  480. package/src/presentation/flow/dsl/use_smile_id_flow_builder.ts +62 -36
  481. package/src/presentation/flow/flow_navigation_manager.ts +185 -14
  482. package/src/presentation/flow/model/instruction_guideline.ts +6 -0
  483. package/src/presentation/flow/model/instructions_defaults.ts +104 -26
  484. package/src/presentation/flow/screen/orchestrated_capture_screen.tsx +60 -12
  485. package/src/presentation/flow/screen/orchestrated_consent_screen.tsx +5 -0
  486. package/src/presentation/flow/screen/orchestrated_instructions_screen.tsx +1 -0
  487. package/src/presentation/flow/screen/orchestrated_preview_screen.tsx +4 -14
  488. package/src/presentation/flow/screen/orchestrated_processing_screen.tsx +3 -3
  489. package/src/presentation/flow/use_smile_id_flow.tsx +11 -4
  490. package/src/presentation/flow/validation/__tests__/flow_validator.test.ts +61 -1
  491. package/src/presentation/flow/validation/__tests__/job_type_validator.test.ts +64 -0
  492. package/src/presentation/flow/validation/flow_validator.ts +55 -26
  493. package/src/presentation/flow/validation/job_type_validator.ts +24 -0
  494. package/src/presentation/screen/__tests__/capture_ui_state.test.ts +66 -47
  495. package/src/presentation/screen/__tests__/ess_turn_haptics.test.ts +15 -11
  496. package/src/presentation/screen/__tests__/instructions_screen_helpers.test.ts +15 -3
  497. package/src/presentation/screen/__tests__/scan_state_to_overlay_state.test.ts +47 -27
  498. package/src/presentation/screen/__tests__/use_smile_id_capture_screen.test.tsx +182 -18
  499. package/src/presentation/screen/__tests__/use_smile_id_document_back_instructions.test.tsx +1 -1
  500. package/src/presentation/screen/__tests__/use_smile_id_preview_screen.test.tsx +10 -40
  501. package/src/presentation/screen/helpers/__tests__/use_capture_orientation_lock.test.tsx +212 -0
  502. package/src/presentation/screen/helpers/capture_screen_helpers.ts +1 -0
  503. package/src/presentation/screen/helpers/capture_ui_state.ts +27 -27
  504. package/src/presentation/screen/helpers/ess_turn_haptics.ts +9 -9
  505. package/src/presentation/screen/helpers/instructions_screen_helpers.ts +7 -2
  506. package/src/presentation/screen/helpers/scan_state_to_overlay_state.ts +16 -13
  507. package/src/presentation/screen/helpers/use_capture_orientation_lock.ts +69 -7
  508. package/src/presentation/screen/use_smile_id_capture_screen.tsx +280 -54
  509. package/src/presentation/screen/use_smile_id_consent_screen.tsx +16 -5
  510. package/src/presentation/screen/use_smile_id_document_back_instructions.tsx +14 -23
  511. package/src/presentation/screen/use_smile_id_document_preview_screen.tsx +33 -23
  512. package/src/presentation/screen/use_smile_id_instructions_screen.tsx +4 -0
  513. package/src/presentation/screen/use_smile_id_preview_screen.tsx +21 -53
  514. package/src/presentation/screen/use_smile_id_processing_screen.tsx +8 -8
  515. package/src/presentation/theme/theme.ts +21 -19
  516. package/src/presentation/utils/__tests__/locale_utils.test.ts +46 -5
  517. package/src/presentation/utils/force_max_brightness.tsx +4 -4
  518. package/src/presentation/utils/locale_utils.ts +13 -4
  519. package/src/testing/__tests__/fake_face_analyzer.test.ts +42 -0
  520. package/src/testing/__tests__/scenario_expectations.test.ts +110 -0
  521. package/src/testing/__tests__/scenario_loader.test.ts +64 -0
  522. package/src/testing/fake_face_analyzer.ts +82 -0
  523. package/src/testing/index.ts +15 -0
  524. package/src/testing/scenario_expectations.ts +87 -0
  525. package/src/testing/scenario_loader.ts +83 -0
  526. package/src/testing/scripted_scan_results.ts +66 -0
  527. package/dist/camera/frame_processor_plugin.d.ts +0 -28
  528. package/dist/camera/frame_processor_plugin.d.ts.map +0 -1
  529. package/dist/camera/frame_processor_plugin.js +0 -21
  530. package/dist/camera/frame_processor_plugin.js.map +0 -1
  531. package/dist/camera/use_smile_id_frame_processor.d.ts +0 -38
  532. package/dist/camera/use_smile_id_frame_processor.d.ts.map +0 -1
  533. package/dist/camera/use_smile_id_frame_processor.js +0 -2
  534. package/dist/camera/use_smile_id_frame_processor.js.map +0 -1
  535. package/dist/presentation/components/use_smile_id_document_frame_glyph.d.ts +0 -17
  536. package/dist/presentation/components/use_smile_id_document_frame_glyph.d.ts.map +0 -1
  537. package/dist/presentation/components/use_smile_id_document_frame_glyph.js +0 -17
  538. package/dist/presentation/components/use_smile_id_document_frame_glyph.js.map +0 -1
  539. package/dist/presentation/components/use_smile_id_enhanced_smart_selfie_animation.d.ts +0 -24
  540. package/dist/presentation/components/use_smile_id_enhanced_smart_selfie_animation.d.ts.map +0 -1
  541. package/dist/presentation/components/use_smile_id_enhanced_smart_selfie_animation.js +0 -91
  542. package/dist/presentation/components/use_smile_id_enhanced_smart_selfie_animation.js.map +0 -1
  543. package/dist/presentation/components/use_smile_id_face_silhouette_overlay.d.ts +0 -15
  544. package/dist/presentation/components/use_smile_id_face_silhouette_overlay.d.ts.map +0 -1
  545. package/dist/presentation/components/use_smile_id_face_silhouette_overlay.js +0 -19
  546. package/dist/presentation/components/use_smile_id_face_silhouette_overlay.js.map +0 -1
  547. package/dist/presentation/components/use_smile_id_instruction_card.d.ts +0 -31
  548. package/dist/presentation/components/use_smile_id_instruction_card.d.ts.map +0 -1
  549. package/dist/presentation/components/use_smile_id_instruction_card.js +0 -43
  550. package/dist/presentation/components/use_smile_id_instruction_card.js.map +0 -1
  551. package/dist/presentation/screen/helpers/use_document_orientation_lock.d.ts +0 -24
  552. package/dist/presentation/screen/helpers/use_document_orientation_lock.d.ts.map +0 -1
  553. package/dist/presentation/screen/helpers/use_document_orientation_lock.js +0 -47
  554. package/dist/presentation/screen/helpers/use_document_orientation_lock.js.map +0 -1
  555. package/src/presentation/components/use_smile_id_document_frame_glyph.tsx +0 -162
  556. package/src/presentation/components/use_smile_id_face_silhouette_overlay.tsx +0 -27
@@ -70,18 +70,18 @@ export declare class UseSmileIDFlowBuilder {
70
70
  */
71
71
  localizations?: UseSmileIDLocalizations;
72
72
  /**
73
- * Notified when the flow completes (success or failure). Defaults
74
- * to a no-op so partners who don't need result handling still get
75
- * a valid configuration; in production set this to wire the
76
- * server-issued `JobSubmissionResponse` (`userId` / `jobId` /
77
- * `status` / `message` / `createdAt`) into the partner's job-status
78
- * pipeline.
73
+ * Invoked once when the flow terminates — with the submitted job on
74
+ * success, a typed error on failure, or a cancellation when the user
75
+ * exits before completing. Wire the returned user id / job id into
76
+ * your job-status pipeline. Defaults to a no-op so partners who don't
77
+ * need result handling still get a valid configuration; the
78
+ * server-issued `JobSubmissionResponse` carries `userId` / `jobId` /
79
+ * `status` / `message` / `createdAt`.
79
80
  */
80
81
  onResult: (result: UseSmileIDResult<JobSubmissionResponse>) => void;
81
82
  /**
82
- * Optional. Notified for each analytics event during the flow.
83
- * Stub note: orchestrator does not yet emit events — see
84
- * `docs/Architecture.md § Rollout`.
83
+ * Invoked for every analytics event the SDK emits during the flow.
84
+ * Optional — leave unset to ignore analytics.
85
85
  */
86
86
  onAnalyticsEvent?: (event: UseSmileIDAnalyticsEvent) => void;
87
87
  private _config?;
@@ -90,15 +90,19 @@ export declare class UseSmileIDFlowBuilder {
90
90
  private _ml?;
91
91
  private _screens?;
92
92
  /**
93
- * `b.config((c) => { c.enableCrashReporting = false; })`
93
+ * Configures global SDK feature flags (debug mode, offline mode, crash
94
+ * reporting). Repeated calls compose against the same configuration —
95
+ * `enableCrashReporting` set in one call and `enableDebugMode` set in
96
+ * another both end up on the final config.
94
97
  *
95
- * Compose-friendly: repeated calls reuse the same builder, so
96
- * `enableCrashReporting` set in one call and `enableDebugMode` set
97
- * in another both end up on the final config.
98
+ * `b.config((c) => { c.enableCrashReporting = false; })`
98
99
  */
99
100
  config(block: (c: UseSmileIDConfigBuilder) => void): void;
100
101
  /**
101
- * `b.theme((t) => { t.primaryColor = '#1A73E8'; t.buttonShape = 12; })`
102
+ * Configures the visual theme — colors, fonts, and corner shapes —
103
+ * applied to every SDK screen in the flow.
104
+ *
105
+ * `b.theme((t) => { t.primaryColor = t.color('#1A73E8', '#4DA3FF'); t.buttonShape = 12; })`
102
106
  *
103
107
  * Each call replaces the prior theme builder — partners typically
104
108
  * configure the theme in one place, and accumulating across helpers
@@ -107,6 +111,10 @@ export declare class UseSmileIDFlowBuilder {
107
111
  */
108
112
  theme(block: (t: ThemeConfigBuilder) => void): void;
109
113
  /**
114
+ * Configures the network stack: partner credentials, job type,
115
+ * timeouts, retry policy, response cache, and custom interceptors.
116
+ * Required for any flow that submits a job.
117
+ *
110
118
  * `b.network((n) => { n.config((c) => { c.partnerConfig((p) => { p.partnerId = ...; }); }); })`
111
119
  *
112
120
  * Each call replaces the prior network builder. Network config
@@ -115,10 +123,17 @@ export declare class UseSmileIDFlowBuilder {
115
123
  */
116
124
  network(block: (n: UseSmileIDNetworkBuilder) => void): void;
117
125
  /**
126
+ * Registers the on-device ML analyzers used for face and document
127
+ * detection, keyed by capture type.
128
+ *
118
129
  * `b.ml((m) => { m.analyzers((a) => { a.forCaptureType(CaptureType.selfie, (face) => face.add(useSmileIDVisionFace)); }); })`
119
130
  */
120
131
  ml(block: (m: UseSmileIDMLBuilder) => void): void;
121
132
  /**
133
+ * Declares the ordered sequence of screens the flow presents. Screens
134
+ * render in the order they are added; the same screen type may be
135
+ * added more than once.
136
+ *
122
137
  * `b.screens((screens) => { screens.instructions(); screens.capture((c) => { c.captureType = CaptureType.selfie; }); })`
123
138
  *
124
139
  * Each screen-builder call appends a step to the orchestrator's
@@ -126,10 +141,11 @@ export declare class UseSmileIDFlowBuilder {
126
141
  */
127
142
  screens(block: (s: ScreensBuilder) => void): void;
128
143
  /**
129
- * Quick triage of the in-progress builder state. Today the only
130
- * rule it surfaces is the empty-screens-block error — `b.screens`
131
- * must register at least one screen before the builder can produce
132
- * a flow.
144
+ * Runs a pre-flight check of the current builder configuration and
145
+ * returns a `ValidationState` describing any blocking issues, without
146
+ * throwing. Today the only rule it surfaces is the empty-screens-block
147
+ * error — `b.screens` must register at least one screen before the
148
+ * builder can produce a flow.
133
149
  *
134
150
  * The full rule set (screen ordering, dependency rules, KYC and
135
151
  * consent payload validation, etc.) runs inside `build()` and is
@@ -137,38 +153,48 @@ export declare class UseSmileIDFlowBuilder {
137
153
  * the full picture during configuration should call
138
154
  * `useSmileIDBuilder(...)` and pattern-match on the returned
139
155
  * `result.kind`.
156
+ *
157
+ * @returns a `ValidationState` describing any blocking issues.
140
158
  */
141
159
  validate(): ValidationState;
142
160
  /**
143
- * Validate a `ConsentInformation` payload in isolation — useful
144
- * when the source of truth is dynamic (e.g. a payload pulled from
145
- * partner storage or a remote config) and the partner wants to
146
- * pre-flight it before assigning to `b.consentInformation`.
161
+ * Validates a `ConsentInformation` payload in isolation and returns a
162
+ * `ValidationState`, without throwing. Useful when the payload comes
163
+ * from dynamic partner storage or remote config — pre-flight it before
164
+ * assigning to `b.consentInformation`.
147
165
  */
148
166
  validateConsent(consent: ConsentInformation): ValidationState;
149
167
  /**
150
- * Validate an `EnhancedKYCParams` payload in isolation — useful
151
- * when the partner pulls KYC fields from a form or remote config
152
- * and wants to pre-flight them before assigning to
153
- * `b.enhancedKYCParams`.
168
+ * Validates an `EnhancedKYCParams` payload in isolation and returns a
169
+ * `ValidationState`, without throwing. Useful when the partner pulls
170
+ * KYC fields from a form or remote config and wants to pre-flight them
171
+ * before assigning to `b.enhancedKYCParams`.
154
172
  */
155
173
  validateEnhancedKYCParams(params: EnhancedKYCParams): ValidationState;
156
174
  /**
157
- * Validate a `BiometricKYCParams` payload in isolation. Same
158
- * semantics as `validateEnhancedKYCParams` — same field rules,
159
- * different param shape.
175
+ * Validates a `BiometricKYCParams` payload in isolation and returns a
176
+ * `ValidationState`, without throwing.
160
177
  */
161
178
  validateBiometricKYCParams(params: BiometricKYCParams): ValidationState;
162
- /** Validate a `DocumentVerificationParams` payload in isolation. */
179
+ /**
180
+ * Validates a `DocumentVerificationParams` payload in isolation and
181
+ * returns a `ValidationState`, without throwing. Only `country` is
182
+ * required; `idType` is optional.
183
+ */
163
184
  validateDocumentVerificationParams(params: DocumentVerificationParams): ValidationState;
164
- /** Validate an `EnhancedDocumentVerificationParams` payload in isolation. */
185
+ /**
186
+ * Validates an `EnhancedDocumentVerificationParams` payload in
187
+ * isolation and returns a `ValidationState`, without throwing. Both
188
+ * `country` and `idType` are required.
189
+ */
165
190
  validateEnhancedDocumentVerificationParams(params: EnhancedDocumentVerificationParams): ValidationState;
166
191
  /**
167
- * Validate a `UserDetails` payload in isolation — useful when the
168
- * partner pulls user PII from a form or remote config and wants to
169
- * pre-flight it before assigning to `b.userDetails`. Surfaces the
170
- * same dotted-path field names (`userDetails.givenNames` etc.) that
171
- * the in-build validator emits.
192
+ * Validates a `UserDetails` payload in isolation and returns a
193
+ * `ValidationState`, without throwing. Useful when the partner pulls
194
+ * user PII from a form or remote config and wants to pre-flight it
195
+ * before assigning to `b.userDetails`. Surfaces the same dotted-path
196
+ * field names (`userDetails.givenNames` etc.) that the in-build
197
+ * validator emits.
172
198
  */
173
199
  validateUserDetails(userDetails: UserDetails): ValidationState;
174
200
  /**
@@ -1 +1 @@
1
- {"version":3,"file":"use_smile_id_flow_builder.d.ts","sourceRoot":"","sources":["../../../../src/presentation/flow/dsl/use_smile_id_flow_builder.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,6BAA6B,CAAC;AACjE,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,yBAAyB,CAAC;AAClE,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,qCAAqC,CAAC;AACzE,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,gCAAgC,CAAC;AAC/D,OAAO,KAAK,EACV,kBAAkB,EAClB,iBAAiB,EACjB,kBAAkB,EAClB,0BAA0B,EAC1B,kCAAkC,EAClC,WAAW,EACZ,MAAM,6BAA6B,CAAC;AACrC,OAAO,KAAK,EAAE,wBAAwB,EAAE,MAAM,2CAA2C,CAAC;AAC1F,OAAO,KAAK,EAAE,qBAAqB,EAAE,MAAM,6CAA6C,CAAC;AACzF,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,6BAA6B,CAAC;AACpE,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,2BAA2B,CAAC;AAC/D,OAAO,EAAE,uBAAuB,EAAE,MAAM,0BAA0B,CAAC;AACnE,OAAO,EAAE,kBAAkB,EAAE,MAAM,yBAAyB,CAAC;AAC7D,OAAO,EAAE,wBAAwB,EAAE,MAAM,gDAAgD,CAAC;AAC1F,OAAO,EAAE,mBAAmB,EAAE,MAAM,sBAAsB,CAAC;AAC3D,OAAO,EAAE,cAAc,EAAE,MAAM,2BAA2B,CAAC;AAC3D,OAAO,KAAK,EAAE,uBAAuB,EAAE,MAAM,0CAA0C,CAAC;AAYxF,OAAO,EAAE,eAAe,EAAE,MAAM,gCAAgC,CAAC;AACjE,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,qBAAqB,CAAC;AAE3D;;;;;;;;;GASG;AACH,qBAAa,qBAAqB;IAChC;;;OAGG;IACH,kBAAkB,CAAC,EAAE,kBAAkB,CAAC;IAExC,yDAAyD;IACzD,iBAAiB,CAAC,EAAE,iBAAiB,CAAC;IAEtC,0DAA0D;IAC1D,kBAAkB,CAAC,EAAE,kBAAkB,CAAC;IAExC,kEAAkE;IAClE,0BAA0B,CAAC,EAAE,0BAA0B,CAAC;IAExD,0EAA0E;IAC1E,kCAAkC,CAAC,EAAE,kCAAkC,CAAC;IAExE;;;;;;;;;;OAUG;IACH,WAAW,CAAC,EAAE,WAAW,CAAC;IAE1B;;;;;;OAMG;IACH,MAAM,CAAC,EAAE,MAAM,CAAC;IAEhB;;;;;;;;OAQG;IACH,aAAa,CAAC,EAAE,uBAAuB,CAAC;IAExC;;;;;;;OAOG;IACH,QAAQ,EAAE,CAAC,MAAM,EAAE,gBAAgB,CAAC,qBAAqB,CAAC,KAAK,IAAI,CACxD;IAEX;;;;OAIG;IACH,gBAAgB,CAAC,EAAE,CAAC,KAAK,EAAE,wBAAwB,KAAK,IAAI,CAAC;IAI7D,OAAO,CAAC,OAAO,CAAC,CAA0B;IAC1C,OAAO,CAAC,MAAM,CAAC,CAAqB;IACpC,OAAO,CAAC,QAAQ,CAAC,CAA2B;IAC5C,OAAO,CAAC,GAAG,CAAC,CAAsB;IAClC,OAAO,CAAC,QAAQ,CAAC,CAAiB;IAElC;;;;;;OAMG;IACH,MAAM,CAAC,KAAK,EAAE,CAAC,CAAC,EAAE,uBAAuB,KAAK,IAAI,GAAG,IAAI;IAKzD;;;;;;;OAOG;IACH,KAAK,CAAC,KAAK,EAAE,CAAC,CAAC,EAAE,kBAAkB,KAAK,IAAI,GAAG,IAAI;IAKnD;;;;;;OAMG;IACH,OAAO,CAAC,KAAK,EAAE,CAAC,CAAC,EAAE,wBAAwB,KAAK,IAAI,GAAG,IAAI;IAK3D;;OAEG;IACH,EAAE,CAAC,KAAK,EAAE,CAAC,CAAC,EAAE,mBAAmB,KAAK,IAAI,GAAG,IAAI;IAKjD;;;;;OAKG;IACH,OAAO,CAAC,KAAK,EAAE,CAAC,CAAC,EAAE,cAAc,KAAK,IAAI,GAAG,IAAI;IAKjD;;;;;;;;;;;;OAYG;IACH,QAAQ,IAAI,eAAe;IAM3B;;;;;OAKG;IACH,eAAe,CAAC,OAAO,EAAE,kBAAkB,GAAG,eAAe;IAI7D;;;;;OAKG;IACH,yBAAyB,CAAC,MAAM,EAAE,iBAAiB,GAAG,eAAe;IAIrE;;;;OAIG;IACH,0BAA0B,CAAC,MAAM,EAAE,kBAAkB,GAAG,eAAe;IAIvE,oEAAoE;IACpE,kCAAkC,CAChC,MAAM,EAAE,0BAA0B,GACjC,eAAe;IAMlB,6EAA6E;IAC7E,0CAA0C,CACxC,MAAM,EAAE,kCAAkC,GACzC,eAAe;IAMlB;;;;;;OAMG;IACH,mBAAmB,CAAC,WAAW,EAAE,WAAW,GAAG,eAAe;IAI9D;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;OAwCG;IACH,KAAK,IAAI,eAAe;CA8EzB;AAED;;;;;;GAMG;AACH,MAAM,MAAM,yBAAyB,GAAG;IACtC,QAAQ,CAAC,kBAAkB,CAAC,EAAE,kBAAkB,CAAC;IACjD,QAAQ,CAAC,iBAAiB,CAAC,EAAE,iBAAiB,CAAC;IAC/C,QAAQ,CAAC,kBAAkB,CAAC,EAAE,kBAAkB,CAAC;IACjD,QAAQ,CAAC,0BAA0B,CAAC,EAAE,0BAA0B,CAAC;IACjE,QAAQ,CAAC,kCAAkC,CAAC,EAAE,kCAAkC,CAAC;IACjF,QAAQ,CAAC,WAAW,CAAC,EAAE,WAAW,CAAC;IACnC,QAAQ,CAAC,MAAM,CAAC,EAAE,MAAM,CAAC;IACzB,QAAQ,CAAC,MAAM,CAAC,EAAE,aAAa,CAAC;IAChC,QAAQ,CAAC,KAAK,CAAC,EAAE,kBAAkB,CAAC;IACpC,QAAQ,CAAC,OAAO,CAAC,EAAE,aAAa,CAAC;IACjC,QAAQ,CAAC,EAAE,CAAC,EAAE,QAAQ,CAAC;IACvB,QAAQ,CAAC,OAAO,EAAE,aAAa,CAAC;IAChC,QAAQ,CAAC,aAAa,CAAC,EAAE,uBAAuB,CAAC;IACjD,QAAQ,CAAC,QAAQ,EAAE,CAAC,MAAM,EAAE,gBAAgB,CAAC,qBAAqB,CAAC,KAAK,IAAI,CAAC;IAC7E,QAAQ,CAAC,gBAAgB,CAAC,EAAE,CAAC,KAAK,EAAE,wBAAwB,KAAK,IAAI,CAAC;CACvE,CAAC"}
1
+ {"version":3,"file":"use_smile_id_flow_builder.d.ts","sourceRoot":"","sources":["../../../../src/presentation/flow/dsl/use_smile_id_flow_builder.ts"],"names":[],"mappings":"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"}
@@ -60,18 +60,18 @@ export class UseSmileIDFlowBuilder {
60
60
  */
61
61
  localizations;
62
62
  /**
63
- * Notified when the flow completes (success or failure). Defaults
64
- * to a no-op so partners who don't need result handling still get
65
- * a valid configuration; in production set this to wire the
66
- * server-issued `JobSubmissionResponse` (`userId` / `jobId` /
67
- * `status` / `message` / `createdAt`) into the partner's job-status
68
- * pipeline.
63
+ * Invoked once when the flow terminates — with the submitted job on
64
+ * success, a typed error on failure, or a cancellation when the user
65
+ * exits before completing. Wire the returned user id / job id into
66
+ * your job-status pipeline. Defaults to a no-op so partners who don't
67
+ * need result handling still get a valid configuration; the
68
+ * server-issued `JobSubmissionResponse` carries `userId` / `jobId` /
69
+ * `status` / `message` / `createdAt`.
69
70
  */
70
71
  onResult = () => { };
71
72
  /**
72
- * Optional. Notified for each analytics event during the flow.
73
- * Stub note: orchestrator does not yet emit events — see
74
- * `docs/Architecture.md § Rollout`.
73
+ * Invoked for every analytics event the SDK emits during the flow.
74
+ * Optional — leave unset to ignore analytics.
75
75
  */
76
76
  onAnalyticsEvent;
77
77
  // --- Internal block builders ---------------------------------------------
@@ -81,11 +81,12 @@ export class UseSmileIDFlowBuilder {
81
81
  _ml;
82
82
  _screens;
83
83
  /**
84
- * `b.config((c) => { c.enableCrashReporting = false; })`
84
+ * Configures global SDK feature flags (debug mode, offline mode, crash
85
+ * reporting). Repeated calls compose against the same configuration —
86
+ * `enableCrashReporting` set in one call and `enableDebugMode` set in
87
+ * another both end up on the final config.
85
88
  *
86
- * Compose-friendly: repeated calls reuse the same builder, so
87
- * `enableCrashReporting` set in one call and `enableDebugMode` set
88
- * in another both end up on the final config.
89
+ * `b.config((c) => { c.enableCrashReporting = false; })`
89
90
  */
90
91
  config(block) {
91
92
  if (!this._config)
@@ -93,7 +94,10 @@ export class UseSmileIDFlowBuilder {
93
94
  block(this._config);
94
95
  }
95
96
  /**
96
- * `b.theme((t) => { t.primaryColor = '#1A73E8'; t.buttonShape = 12; })`
97
+ * Configures the visual theme — colors, fonts, and corner shapes —
98
+ * applied to every SDK screen in the flow.
99
+ *
100
+ * `b.theme((t) => { t.primaryColor = t.color('#1A73E8', '#4DA3FF'); t.buttonShape = 12; })`
97
101
  *
98
102
  * Each call replaces the prior theme builder — partners typically
99
103
  * configure the theme in one place, and accumulating across helpers
@@ -105,6 +109,10 @@ export class UseSmileIDFlowBuilder {
105
109
  block(this._theme);
106
110
  }
107
111
  /**
112
+ * Configures the network stack: partner credentials, job type,
113
+ * timeouts, retry policy, response cache, and custom interceptors.
114
+ * Required for any flow that submits a job.
115
+ *
108
116
  * `b.network((n) => { n.config((c) => { c.partnerConfig((p) => { p.partnerId = ...; }); }); })`
109
117
  *
110
118
  * Each call replaces the prior network builder. Network config
@@ -116,6 +124,9 @@ export class UseSmileIDFlowBuilder {
116
124
  block(this._network);
117
125
  }
118
126
  /**
127
+ * Registers the on-device ML analyzers used for face and document
128
+ * detection, keyed by capture type.
129
+ *
119
130
  * `b.ml((m) => { m.analyzers((a) => { a.forCaptureType(CaptureType.selfie, (face) => face.add(useSmileIDVisionFace)); }); })`
120
131
  */
121
132
  ml(block) {
@@ -124,6 +135,10 @@ export class UseSmileIDFlowBuilder {
124
135
  block(this._ml);
125
136
  }
126
137
  /**
138
+ * Declares the ordered sequence of screens the flow presents. Screens
139
+ * render in the order they are added; the same screen type may be
140
+ * added more than once.
141
+ *
127
142
  * `b.screens((screens) => { screens.instructions(); screens.capture((c) => { c.captureType = CaptureType.selfie; }); })`
128
143
  *
129
144
  * Each screen-builder call appends a step to the orchestrator's
@@ -135,10 +150,11 @@ export class UseSmileIDFlowBuilder {
135
150
  block(this._screens);
136
151
  }
137
152
  /**
138
- * Quick triage of the in-progress builder state. Today the only
139
- * rule it surfaces is the empty-screens-block error — `b.screens`
140
- * must register at least one screen before the builder can produce
141
- * a flow.
153
+ * Runs a pre-flight check of the current builder configuration and
154
+ * returns a `ValidationState` describing any blocking issues, without
155
+ * throwing. Today the only rule it surfaces is the empty-screens-block
156
+ * error — `b.screens` must register at least one screen before the
157
+ * builder can produce a flow.
142
158
  *
143
159
  * The full rule set (screen ordering, dependency rules, KYC and
144
160
  * consent payload validation, etc.) runs inside `build()` and is
@@ -146,50 +162,60 @@ export class UseSmileIDFlowBuilder {
146
162
  * the full picture during configuration should call
147
163
  * `useSmileIDBuilder(...)` and pattern-match on the returned
148
164
  * `result.kind`.
165
+ *
166
+ * @returns a `ValidationState` describing any blocking issues.
149
167
  */
150
168
  validate() {
151
169
  return ValidationState.invalid(runBuilderValidation(this._screens?.build().steps ?? []));
152
170
  }
153
171
  /**
154
- * Validate a `ConsentInformation` payload in isolation — useful
155
- * when the source of truth is dynamic (e.g. a payload pulled from
156
- * partner storage or a remote config) and the partner wants to
157
- * pre-flight it before assigning to `b.consentInformation`.
172
+ * Validates a `ConsentInformation` payload in isolation and returns a
173
+ * `ValidationState`, without throwing. Useful when the payload comes
174
+ * from dynamic partner storage or remote config — pre-flight it before
175
+ * assigning to `b.consentInformation`.
158
176
  */
159
177
  validateConsent(consent) {
160
178
  return ValidationState.invalid(runConsentValidation(consent));
161
179
  }
162
180
  /**
163
- * Validate an `EnhancedKYCParams` payload in isolation — useful
164
- * when the partner pulls KYC fields from a form or remote config
165
- * and wants to pre-flight them before assigning to
166
- * `b.enhancedKYCParams`.
181
+ * Validates an `EnhancedKYCParams` payload in isolation and returns a
182
+ * `ValidationState`, without throwing. Useful when the partner pulls
183
+ * KYC fields from a form or remote config and wants to pre-flight them
184
+ * before assigning to `b.enhancedKYCParams`.
167
185
  */
168
186
  validateEnhancedKYCParams(params) {
169
187
  return ValidationState.invalid(runEnhancedKYCParamsValidation(params));
170
188
  }
171
189
  /**
172
- * Validate a `BiometricKYCParams` payload in isolation. Same
173
- * semantics as `validateEnhancedKYCParams` — same field rules,
174
- * different param shape.
190
+ * Validates a `BiometricKYCParams` payload in isolation and returns a
191
+ * `ValidationState`, without throwing.
175
192
  */
176
193
  validateBiometricKYCParams(params) {
177
194
  return ValidationState.invalid(runBiometricKYCParamsValidation(params));
178
195
  }
179
- /** Validate a `DocumentVerificationParams` payload in isolation. */
196
+ /**
197
+ * Validates a `DocumentVerificationParams` payload in isolation and
198
+ * returns a `ValidationState`, without throwing. Only `country` is
199
+ * required; `idType` is optional.
200
+ */
180
201
  validateDocumentVerificationParams(params) {
181
202
  return ValidationState.invalid(runDocumentVerificationParamsValidation(params));
182
203
  }
183
- /** Validate an `EnhancedDocumentVerificationParams` payload in isolation. */
204
+ /**
205
+ * Validates an `EnhancedDocumentVerificationParams` payload in
206
+ * isolation and returns a `ValidationState`, without throwing. Both
207
+ * `country` and `idType` are required.
208
+ */
184
209
  validateEnhancedDocumentVerificationParams(params) {
185
210
  return ValidationState.invalid(runEnhancedDocumentVerificationParamsValidation(params));
186
211
  }
187
212
  /**
188
- * Validate a `UserDetails` payload in isolation — useful when the
189
- * partner pulls user PII from a form or remote config and wants to
190
- * pre-flight it before assigning to `b.userDetails`. Surfaces the
191
- * same dotted-path field names (`userDetails.givenNames` etc.) that
192
- * the in-build validator emits.
213
+ * Validates a `UserDetails` payload in isolation and returns a
214
+ * `ValidationState`, without throwing. Useful when the partner pulls
215
+ * user PII from a form or remote config and wants to pre-flight it
216
+ * before assigning to `b.userDetails`. Surfaces the same dotted-path
217
+ * field names (`userDetails.givenNames` etc.) that the in-build
218
+ * validator emits.
193
219
  */
194
220
  validateUserDetails(userDetails) {
195
221
  return ValidationState.invalid(runUserDetailsValidation(userDetails));
@@ -1 +1 @@
1
- {"version":3,"file":"use_smile_id_flow_builder.js","sourceRoot":"","sources":["../../../../src/presentation/flow/dsl/use_smile_id_flow_builder.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"use_smile_id_flow_builder.js","sourceRoot":"","sources":["../../../../src/presentation/flow/dsl/use_smile_id_flow_builder.ts"],"names":[],"mappings":"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"}
@@ -3,10 +3,11 @@ import type { FlowConfigurationSnapshot } from "./dsl/use_smile_id_flow_builder"
3
3
  import type { JobSubmissionState } from "./job_submission_state";
4
4
  import type { UseSmileIDRepository } from "../../data/repository/use_smile_id_repository";
5
5
  import type { ConsentInformation } from "../../core/models/params";
6
- import type { DocumentType } from "../../core/models/document_type";
6
+ import { type DocumentType } from "../../core/models/document_type";
7
7
  import type { JobSubmissionResponse } from "../../data/model/job_submission_response";
8
8
  import { type MetadataProvider } from "../../metadata/use_smile_id_metadata_factory";
9
9
  import { type DocumentImageOrigin } from "../../metadata/document_image_origin";
10
+ import type { CaptureTelemetry } from "../screen/use_smile_id_capture_screen";
10
11
  import type { SdkConfig } from "../../data/model/sdk_config";
11
12
  import { DocumentSide } from "@smileid/usesmileid_bridge";
12
13
  /**
@@ -76,6 +77,11 @@ export declare class FlowNavigationManager {
76
77
  * removed when its side is retaken.
77
78
  */
78
79
  private readonly _documentImageOrigins;
80
+ private _selfieCaptureTelemetry;
81
+ private readonly _documentCaptureTelemetry;
82
+ private _cameraName;
83
+ private _devicePositions;
84
+ private _deviceMovementDetected;
79
85
  private _jobSubmissionState;
80
86
  private readonly _listeners;
81
87
  private readonly _steps;
@@ -91,6 +97,17 @@ export declare class FlowNavigationManager {
91
97
  * defaults apply throughout the flow in those cases.
92
98
  */
93
99
  readonly resolvedSdkConfig: SdkConfig | undefined;
100
+ /** Canonical `partner_id` decoded from the JWT (raw); resolved via the [partnerId] getter. */
101
+ private readonly _resolvedPartnerId;
102
+ /**
103
+ * Partner identifier the capture screen stamps into the Smile EXIF tag — the tag's HMAC/AES
104
+ * keys derive from it and the backend validates the tag against the request's partner_id.
105
+ *
106
+ * Sourced from the JWT `partner_id` claim (server-canonical form, e.g. `"002"`) so the stamped
107
+ * value matches what the backend keys on; falls back to the partner-supplied config value when
108
+ * the claim is absent/blank. Empty = skip tagging.
109
+ */
110
+ get partnerId(): string;
94
111
  /** Stable per-flow session id, stamped into every analytics event's `session_id`. */
95
112
  private readonly _sessionId;
96
113
  /** Submission attempts so far — stamped into `job_submitted` as `attempt`. */
@@ -101,6 +118,12 @@ export declare class FlowNavigationManager {
101
118
  get enhancedLivenessEnabled(): boolean;
102
119
  /** Document type from the flow's document capture step, if any (drives the instructions document variant). */
103
120
  get documentType(): DocumentType | undefined;
121
+ /**
122
+ * Resolved document capture-frame aspect ratio (width / height), shared by
123
+ * capture, preview, and processing. Precedence: type `knownAspectRatio` →
124
+ * partner `knownIdAspectRatio` → orientation default.
125
+ */
126
+ get documentFrameAspectRatio(): number | undefined;
104
127
  /** Read-only navigation stack; top is the active screen. */
105
128
  get navigationPath(): readonly ScreenSpec[];
106
129
  /** Active screen (top of the path); `undefined` only when no screens are configured. */
@@ -155,8 +178,20 @@ export declare class FlowNavigationManager {
155
178
  * metadata). Metadata-only, so it intentionally does not `_notify()`.
156
179
  */
157
180
  recordDocumentImageOrigin(side: DocumentSide, origin: DocumentImageOrigin): void;
181
+ /** Records selfie capture telemetry (duration + retries) at capture completion. */
182
+ recordSelfieCaptureTelemetry(telemetry: CaptureTelemetry): void;
183
+ /** Records per-side document capture telemetry at each side's completion. */
184
+ recordDocumentCaptureTelemetry(side: DocumentSide, telemetry: CaptureTelemetry): void;
185
+ private _captureCameraName;
158
186
  /** Per-side document origin wire entries (front then back; omitted when unset). */
159
187
  private _documentImageOriginEntries;
188
+ /**
189
+ * Capture telemetry + image-property wire entries. Durations and retries keep
190
+ * a meaningful 0 (capture ran) and are omitted only when that capture type
191
+ * never ran. Color depth / pixel config are emitted for each present capture;
192
+ * document sizes when measured.
193
+ */
194
+ private _captureTelemetryEntries;
160
195
  private _precedingStepIsDocumentCapture;
161
196
  setConsent(info: ConsentInformation): void;
162
197
  get jobSubmissionState(): JobSubmissionState;
@@ -165,7 +200,11 @@ export declare class FlowNavigationManager {
165
200
  * mount). The `notAttempted` guard prevents re-mounts re-firing.
166
201
  */
167
202
  beginSubmissionIfNeeded(): void;
168
- /** Reset to `notAttempted` and re-fire submission (processing screen's onRetry). */
203
+ /**
204
+ * Reset to `notAttempted` and re-fire submission (processing screen's
205
+ * onRetry). Ignored while a submission is in flight — resetting then would
206
+ * defeat `beginSubmissionIfNeeded()`'s single-flight guard.
207
+ */
169
208
  retrySubmission(): void;
170
209
  private _setSubmissionState;
171
210
  /**
@@ -207,10 +246,10 @@ export declare class FlowNavigationManager {
207
246
  */
208
247
  private _expectedLivenessImageCount;
209
248
  /**
210
- * Decode the `sdk_config` JWT claim. `undefined` for offline mode,
211
- * no token, or no valid claim — SDK defaults apply in those cases.
249
+ * Decode the partner JWT into its claims (`sdk_config`, `partner_id`). `undefined` for offline
250
+ * mode, no token, or an unparseable token — SDK defaults apply in those cases.
212
251
  */
213
- private static _decodeSdkConfig;
252
+ private static _decodeToken;
214
253
  private _notify;
215
254
  }
216
255
  export {};
@@ -1 +1 @@
1
- {"version":3,"file":"flow_navigation_manager.d.ts","sourceRoot":"","sources":["../../../src/presentation/flow/flow_navigation_manager.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"flow_navigation_manager.d.ts","sourceRoot":"","sources":["../../../src/presentation/flow/flow_navigation_manager.ts"],"names":[],"mappings":"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"}