@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
@@ -0,0 +1,11 @@
1
+ /**
2
+ * Fixed image properties for the captured artifacts, emitted as `*_image_color_depth` and
3
+ * `*_image_pixel_config`.
4
+ *
5
+ * These describe the submitted artifact — a baseline JPEG (3-channel RGB, no alpha) — not the
6
+ * 32-bit RGBA bitmap it decodes to in memory. Per-image byte sizes (`*_original_size` /
7
+ * `*_final_compressed_size`) are measured in the repository around the compression pass.
8
+ */
9
+ export const CAPTURE_IMAGE_COLOR_DEPTH = 24;
10
+ export const CAPTURE_IMAGE_PIXEL_CONFIG = "RGB_888";
11
+ //# sourceMappingURL=captured_image_properties.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"captured_image_properties.js","sourceRoot":"","sources":["../../src/metadata/captured_image_properties.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AACH,MAAM,CAAC,MAAM,yBAAyB,GAAG,EAAE,CAAC;AAC5C,MAAM,CAAC,MAAM,0BAA0B,GAAG,SAAS,CAAC"}
@@ -0,0 +1,17 @@
1
+ export declare class DeviceOrientationCollector {
2
+ private subscription;
3
+ private positions;
4
+ private movements;
5
+ private startedAt;
6
+ private lastSampleMs;
7
+ /** Begins accelerometer sampling for a fresh capture session. No-op if running or unavailable. */
8
+ start(): void;
9
+ /** Stops sampling but preserves the collected data for the getters below. */
10
+ stop(): void;
11
+ private onSample;
12
+ /** Collected `"epochMs,x,y,z"` samples (empty when no capture ran). */
13
+ get devicePositions(): readonly string[];
14
+ /** Span of movement magnitude across the session; `null` when no samples were collected. */
15
+ get deviceMovementDetected(): number | null;
16
+ }
17
+ //# sourceMappingURL=device_orientation_collector.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"device_orientation_collector.d.ts","sourceRoot":"","sources":["../../src/metadata/device_orientation_collector.ts"],"names":[],"mappings":"AAqBA,qBAAa,0BAA0B;IACrC,OAAO,CAAC,YAAY,CAA0C;IAC9D,OAAO,CAAC,SAAS,CAAgB;IACjC,OAAO,CAAC,SAAS,CAAgB;IACjC,OAAO,CAAC,SAAS,CAAK;IACtB,OAAO,CAAC,YAAY,CAAK;IAEzB,kGAAkG;IAClG,KAAK,IAAI,IAAI;IAcb,6EAA6E;IAC7E,IAAI,IAAI,IAAI;IAKZ,OAAO,CAAC,QAAQ;IAehB,uEAAuE;IACvE,IAAI,eAAe,IAAI,SAAS,MAAM,EAAE,CAEvC;IAED,4FAA4F;IAC5F,IAAI,sBAAsB,IAAI,MAAM,GAAG,IAAI,CAG1C;CACF"}
@@ -0,0 +1,66 @@
1
+ import { loadExpoSensors, } from "./optional_native_modules";
2
+ /**
3
+ * Samples the accelerometer during capture for two metadata signals:
4
+ * - `device_positions`: `"epochMs,x,y,z"` samples throttled to ~15 Hz, capped at
5
+ * {@link MAX_DURATION_MS} to bound payload size.
6
+ * - `device_movement_detected`: the span (max − min) of movement magnitude
7
+ * (`|‖accel‖ − gravity|`, in g) across the session, or `null` when no samples ran.
8
+ *
9
+ * The `expo-sensors` subscription lives only between {@link start} and {@link stop}
10
+ * (tied to the capture screen lifecycle). When `expo-sensors` isn't installed the
11
+ * collector silently no-ops and the keys are omitted.
12
+ */
13
+ const SAMPLE_INTERVAL_MS = Math.floor(1000 / 15);
14
+ const MAX_DURATION_MS = 90 * 1000;
15
+ // expo-sensors reports acceleration in g; gravity is ~1 g (v11 parity value).
16
+ const GRAVITY = 0.981;
17
+ export class DeviceOrientationCollector {
18
+ subscription = null;
19
+ positions = [];
20
+ movements = [];
21
+ startedAt = 0;
22
+ lastSampleMs = 0;
23
+ /** Begins accelerometer sampling for a fresh capture session. No-op if running or unavailable. */
24
+ start() {
25
+ if (this.subscription)
26
+ return;
27
+ const sensors = loadExpoSensors();
28
+ if (!sensors)
29
+ return;
30
+ this.positions = [];
31
+ this.movements = [];
32
+ this.startedAt = Date.now();
33
+ this.lastSampleMs = 0;
34
+ sensors.Accelerometer.setUpdateInterval(SAMPLE_INTERVAL_MS);
35
+ this.subscription = sensors.Accelerometer.addListener((data) => this.onSample(data));
36
+ }
37
+ /** Stops sampling but preserves the collected data for the getters below. */
38
+ stop() {
39
+ this.subscription?.remove();
40
+ this.subscription = null;
41
+ }
42
+ onSample(data) {
43
+ const now = Date.now();
44
+ if (now - this.startedAt > MAX_DURATION_MS) {
45
+ this.stop();
46
+ return;
47
+ }
48
+ if (now - this.lastSampleMs < SAMPLE_INTERVAL_MS)
49
+ return;
50
+ this.lastSampleMs = now;
51
+ this.positions.push(`${now},${data.x},${data.y},${data.z}`);
52
+ const magnitude = Math.sqrt(data.x * data.x + data.y * data.y + data.z * data.z);
53
+ this.movements.push(Math.abs(magnitude - GRAVITY));
54
+ }
55
+ /** Collected `"epochMs,x,y,z"` samples (empty when no capture ran). */
56
+ get devicePositions() {
57
+ return this.positions;
58
+ }
59
+ /** Span of movement magnitude across the session; `null` when no samples were collected. */
60
+ get deviceMovementDetected() {
61
+ if (this.movements.length === 0)
62
+ return null;
63
+ return Math.max(...this.movements) - Math.min(...this.movements);
64
+ }
65
+ }
66
+ //# sourceMappingURL=device_orientation_collector.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"device_orientation_collector.js","sourceRoot":"","sources":["../../src/metadata/device_orientation_collector.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,eAAe,GAEhB,MAAM,2BAA2B,CAAC;AAEnC;;;;;;;;;;GAUG;AACH,MAAM,kBAAkB,GAAG,IAAI,CAAC,KAAK,CAAC,IAAI,GAAG,EAAE,CAAC,CAAC;AACjD,MAAM,eAAe,GAAG,EAAE,GAAG,IAAI,CAAC;AAClC,8EAA8E;AAC9E,MAAM,OAAO,GAAG,KAAK,CAAC;AAEtB,MAAM,OAAO,0BAA0B;IAC7B,YAAY,GAAqC,IAAI,CAAC;IACtD,SAAS,GAAa,EAAE,CAAC;IACzB,SAAS,GAAa,EAAE,CAAC;IACzB,SAAS,GAAG,CAAC,CAAC;IACd,YAAY,GAAG,CAAC,CAAC;IAEzB,kGAAkG;IAClG,KAAK;QACH,IAAI,IAAI,CAAC,YAAY;YAAE,OAAO;QAC9B,MAAM,OAAO,GAAG,eAAe,EAAE,CAAC;QAClC,IAAI,CAAC,OAAO;YAAE,OAAO;QACrB,IAAI,CAAC,SAAS,GAAG,EAAE,CAAC;QACpB,IAAI,CAAC,SAAS,GAAG,EAAE,CAAC;QACpB,IAAI,CAAC,SAAS,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC;QAC5B,IAAI,CAAC,YAAY,GAAG,CAAC,CAAC;QACtB,OAAO,CAAC,aAAa,CAAC,iBAAiB,CAAC,kBAAkB,CAAC,CAAC;QAC5D,IAAI,CAAC,YAAY,GAAG,OAAO,CAAC,aAAa,CAAC,WAAW,CAAC,CAAC,IAAI,EAAE,EAAE,CAC7D,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,CACpB,CAAC;IACJ,CAAC;IAED,6EAA6E;IAC7E,IAAI;QACF,IAAI,CAAC,YAAY,EAAE,MAAM,EAAE,CAAC;QAC5B,IAAI,CAAC,YAAY,GAAG,IAAI,CAAC;IAC3B,CAAC;IAEO,QAAQ,CAAC,IAAyC;QACxD,MAAM,GAAG,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC;QACvB,IAAI,GAAG,GAAG,IAAI,CAAC,SAAS,GAAG,eAAe,EAAE,CAAC;YAC3C,IAAI,CAAC,IAAI,EAAE,CAAC;YACZ,OAAO;QACT,CAAC;QACD,IAAI,GAAG,GAAG,IAAI,CAAC,YAAY,GAAG,kBAAkB;YAAE,OAAO;QACzD,IAAI,CAAC,YAAY,GAAG,GAAG,CAAC;QACxB,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,GAAG,GAAG,IAAI,IAAI,CAAC,CAAC,IAAI,IAAI,CAAC,CAAC,IAAI,IAAI,CAAC,CAAC,EAAE,CAAC,CAAC;QAC5D,MAAM,SAAS,GAAG,IAAI,CAAC,IAAI,CACzB,IAAI,CAAC,CAAC,GAAG,IAAI,CAAC,CAAC,GAAG,IAAI,CAAC,CAAC,GAAG,IAAI,CAAC,CAAC,GAAG,IAAI,CAAC,CAAC,GAAG,IAAI,CAAC,CAAC,CACpD,CAAC;QACF,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,SAAS,GAAG,OAAO,CAAC,CAAC,CAAC;IACrD,CAAC;IAED,uEAAuE;IACvE,IAAI,eAAe;QACjB,OAAO,IAAI,CAAC,SAAS,CAAC;IACxB,CAAC;IAED,4FAA4F;IAC5F,IAAI,sBAAsB;QACxB,IAAI,IAAI,CAAC,SAAS,CAAC,MAAM,KAAK,CAAC;YAAE,OAAO,IAAI,CAAC;QAC7C,OAAO,IAAI,CAAC,GAAG,CAAC,GAAG,IAAI,CAAC,SAAS,CAAC,GAAG,IAAI,CAAC,GAAG,CAAC,GAAG,IAAI,CAAC,SAAS,CAAC,CAAC;IACnE,CAAC;CACF"}
@@ -0,0 +1,20 @@
1
+ /**
2
+ * Coarse last-known location, emitted as the `geolocation` metadata (JSON-object string).
3
+ *
4
+ * `accuracy` is `precise` (<20 m), `approximate` (<100 m), or `unknown`; `source` is `gps`.
5
+ */
6
+ export interface Geolocation {
7
+ readonly latitude: number;
8
+ readonly longitude: number;
9
+ readonly accuracy: string;
10
+ readonly source: string;
11
+ }
12
+ /**
13
+ * Resolves the last-known location for the `geolocation` metadata — only when a location
14
+ * permission is **already** granted. The SDK never requests it (uses
15
+ * `getForegroundPermissionsAsync`, not `requestForegroundPermissionsAsync`), so this never
16
+ * prompts. Returns `null` when permission is absent, no cached fix exists, or `expo-location`
17
+ * isn't installed.
18
+ */
19
+ export declare function resolveGeolocation(): Promise<Geolocation | null>;
20
+ //# sourceMappingURL=geolocation.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"geolocation.d.ts","sourceRoot":"","sources":["../../src/metadata/geolocation.ts"],"names":[],"mappings":"AAEA;;;;GAIG;AACH,MAAM,WAAW,WAAW;IAC1B,QAAQ,CAAC,QAAQ,EAAE,MAAM,CAAC;IAC1B,QAAQ,CAAC,SAAS,EAAE,MAAM,CAAC;IAC3B,QAAQ,CAAC,QAAQ,EAAE,MAAM,CAAC;IAC1B,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAC;CACzB;AASD;;;;;;GAMG;AACH,wBAAsB,kBAAkB,IAAI,OAAO,CAAC,WAAW,GAAG,IAAI,CAAC,CAiBtE"}
@@ -0,0 +1,40 @@
1
+ import { loadExpoLocation } from "./optional_native_modules";
2
+ function classifyAccuracy(meters) {
3
+ if (meters === null || meters <= 0)
4
+ return "unknown";
5
+ if (meters < 20)
6
+ return "precise";
7
+ if (meters < 100)
8
+ return "approximate";
9
+ return "unknown";
10
+ }
11
+ /**
12
+ * Resolves the last-known location for the `geolocation` metadata — only when a location
13
+ * permission is **already** granted. The SDK never requests it (uses
14
+ * `getForegroundPermissionsAsync`, not `requestForegroundPermissionsAsync`), so this never
15
+ * prompts. Returns `null` when permission is absent, no cached fix exists, or `expo-location`
16
+ * isn't installed.
17
+ */
18
+ export async function resolveGeolocation() {
19
+ const location = loadExpoLocation();
20
+ if (!location)
21
+ return null;
22
+ try {
23
+ const permission = await location.getForegroundPermissionsAsync();
24
+ if (!permission.granted)
25
+ return null;
26
+ const position = await location.getLastKnownPositionAsync();
27
+ if (!position)
28
+ return null;
29
+ return {
30
+ latitude: position.coords.latitude,
31
+ longitude: position.coords.longitude,
32
+ accuracy: classifyAccuracy(position.coords.accuracy),
33
+ source: "gps",
34
+ };
35
+ }
36
+ catch {
37
+ return null;
38
+ }
39
+ }
40
+ //# sourceMappingURL=geolocation.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"geolocation.js","sourceRoot":"","sources":["../../src/metadata/geolocation.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,gBAAgB,EAAE,MAAM,2BAA2B,CAAC;AAc7D,SAAS,gBAAgB,CAAC,MAAqB;IAC7C,IAAI,MAAM,KAAK,IAAI,IAAI,MAAM,IAAI,CAAC;QAAE,OAAO,SAAS,CAAC;IACrD,IAAI,MAAM,GAAG,EAAE;QAAE,OAAO,SAAS,CAAC;IAClC,IAAI,MAAM,GAAG,GAAG;QAAE,OAAO,aAAa,CAAC;IACvC,OAAO,SAAS,CAAC;AACnB,CAAC;AAED;;;;;;GAMG;AACH,MAAM,CAAC,KAAK,UAAU,kBAAkB;IACtC,MAAM,QAAQ,GAAG,gBAAgB,EAAE,CAAC;IACpC,IAAI,CAAC,QAAQ;QAAE,OAAO,IAAI,CAAC;IAC3B,IAAI,CAAC;QACH,MAAM,UAAU,GAAG,MAAM,QAAQ,CAAC,6BAA6B,EAAE,CAAC;QAClE,IAAI,CAAC,UAAU,CAAC,OAAO;YAAE,OAAO,IAAI,CAAC;QACrC,MAAM,QAAQ,GAAG,MAAM,QAAQ,CAAC,yBAAyB,EAAE,CAAC;QAC5D,IAAI,CAAC,QAAQ;YAAE,OAAO,IAAI,CAAC;QAC3B,OAAO;YACL,QAAQ,EAAE,QAAQ,CAAC,MAAM,CAAC,QAAQ;YAClC,SAAS,EAAE,QAAQ,CAAC,MAAM,CAAC,SAAS;YACpC,QAAQ,EAAE,gBAAgB,CAAC,QAAQ,CAAC,MAAM,CAAC,QAAQ,CAAC;YACpD,MAAM,EAAE,KAAK;SACd,CAAC;IACJ,CAAC;IAAC,MAAM,CAAC;QACP,OAAO,IAAI,CAAC;IACd,CAAC;AACH,CAAC"}
@@ -0,0 +1,47 @@
1
+ import type { FlowConfiguration } from "../presentation/flow/config/flow_configuration";
2
+ import { type BuilderConfiguration } from "./builder_configuration";
3
+ import { type ModelConfiguration } from "./model_configuration";
4
+ import type { MetadataEntry } from "./use_smile_id_metadata";
5
+ /**
6
+ * Projects the resolved [FlowConfiguration] into the request-metadata
7
+ * configuration objects, so the telemetry layer never needs a parallel copy of
8
+ * the partner's choices.
9
+ *
10
+ * Fields that do not apply to the assembled flow report their accurate "absent"
11
+ * value (`false`, or `autocapture_default` for the capture mode) rather than
12
+ * being omitted, so the object always carries the full schema.
13
+ * `consent_icon_dimensions` is always `null`: the consent icon is a `ReactNode`
14
+ * with no measurable pixel size at configuration time.
15
+ */
16
+ export declare function flowConfigurationToBuilderConfiguration(configuration: FlowConfiguration): BuilderConfiguration;
17
+ /**
18
+ * Describes the face and document models backing this flow.
19
+ *
20
+ * The face model is resolved from the registered selfie analyzer factory key;
21
+ * the document model reports the native no-op fallback, since the React Native
22
+ * document detector is not selectable from JS.
23
+ */
24
+ export declare function flowConfigurationToModelConfiguration(configuration: FlowConfiguration): ModelConfiguration;
25
+ /**
26
+ * The `builder_configuration_object` + `model_configuration_object` wire
27
+ * entries, encoded as JSON-string values so the metadata payload stays a flat
28
+ * `{name, value}` array.
29
+ */
30
+ export declare function configurationMetadataEntries(configuration: FlowConfiguration): MetadataEntry[];
31
+ type SelfieLivenessTelemetry = {
32
+ readonly activeLivenessType: string;
33
+ readonly activeLivenessVersion: string;
34
+ readonly selfieImageOrigin: string;
35
+ } | {
36
+ readonly activeLivenessType: null;
37
+ readonly activeLivenessVersion: null;
38
+ readonly selfieImageOrigin: null;
39
+ };
40
+ /**
41
+ * Flow-derived selfie liveness telemetry. All-`null` for flows without a selfie
42
+ * capture; otherwise the active-liveness check, the version, and the lens the
43
+ * selfie came from (the selfie SDK has no gallery path).
44
+ */
45
+ export declare function flowConfigurationToSelfieLivenessTelemetry(configuration: FlowConfiguration): SelfieLivenessTelemetry;
46
+ export {};
47
+ //# sourceMappingURL=metadata_configuration_mappers.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"metadata_configuration_mappers.d.ts","sourceRoot":"","sources":["../../src/metadata/metadata_configuration_mappers.ts"],"names":[],"mappings":"AAKA,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,gDAAgD,CAAC;AAKxF,OAAO,EACL,KAAK,oBAAoB,EAE1B,MAAM,yBAAyB,CAAC;AACjC,OAAO,EAEL,KAAK,kBAAkB,EAIxB,MAAM,uBAAuB,CAAC;AAC/B,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,yBAAyB,CAAC;AAE7D;;;;;;;;;;GAUG;AACH,wBAAgB,uCAAuC,CACrD,aAAa,EAAE,iBAAiB,GAC/B,oBAAoB,CA2DtB;AAED;;;;;;GAMG;AACH,wBAAgB,qCAAqC,CACnD,aAAa,EAAE,iBAAiB,GAC/B,kBAAkB,CAMpB;AAED;;;;GAIG;AACH,wBAAgB,4BAA4B,CAC1C,aAAa,EAAE,iBAAiB,GAC/B,aAAa,EAAE,CAiCjB;AAED,KAAK,uBAAuB,GACxB;IACE,QAAQ,CAAC,kBAAkB,EAAE,MAAM,CAAC;IACpC,QAAQ,CAAC,qBAAqB,EAAE,MAAM,CAAC;IACvC,QAAQ,CAAC,iBAAiB,EAAE,MAAM,CAAC;CACpC,GACD;IACE,QAAQ,CAAC,kBAAkB,EAAE,IAAI,CAAC;IAClC,QAAQ,CAAC,qBAAqB,EAAE,IAAI,CAAC;IACrC,QAAQ,CAAC,iBAAiB,EAAE,IAAI,CAAC;CAClC,CAAC;AAEN;;;;GAIG;AACH,wBAAgB,0CAA0C,CACxD,aAAa,EAAE,iBAAiB,GAC/B,uBAAuB,CAuBzB"}
@@ -0,0 +1,178 @@
1
+ import { GlobalPrivacyControl } from "../core/models/global_privacy_control";
2
+ import { AnalyzerFactoryKey } from "@smileid/usesmileid_bridge";
3
+ import { CaptureType } from "../core/models/ml_config";
4
+ import { autoCaptureWireValue } from "../core/models/document_capture_mode";
5
+ import { builderConfigurationToJson, } from "./builder_configuration";
6
+ import { MODEL_DESCRIPTOR_UNKNOWN, ModelProvider, modelConfigurationToJson, } from "./model_configuration";
7
+ /**
8
+ * Projects the resolved [FlowConfiguration] into the request-metadata
9
+ * configuration objects, so the telemetry layer never needs a parallel copy of
10
+ * the partner's choices.
11
+ *
12
+ * Fields that do not apply to the assembled flow report their accurate "absent"
13
+ * value (`false`, or `autocapture_default` for the capture mode) rather than
14
+ * being omitted, so the object always carries the full schema.
15
+ * `consent_icon_dimensions` is always `null`: the consent icon is a `ReactNode`
16
+ * with no measurable pixel size at configuration time.
17
+ */
18
+ export function flowConfigurationToBuilderConfiguration(configuration) {
19
+ const steps = configuration.screens.steps;
20
+ let consent;
21
+ const captures = [];
22
+ let instructionsUsed = false;
23
+ let previewUsed = false;
24
+ let processingUsed = false;
25
+ for (const step of steps) {
26
+ switch (step.kind) {
27
+ case "consent":
28
+ consent = step.config;
29
+ break;
30
+ case "instructions":
31
+ instructionsUsed = true;
32
+ break;
33
+ case "capture":
34
+ captures.push(step.config);
35
+ break;
36
+ case "preview":
37
+ previewUsed = true;
38
+ break;
39
+ case "processing":
40
+ processingUsed = true;
41
+ break;
42
+ }
43
+ }
44
+ const selfie = captures.find((capture) => capture.selfieConfig)?.selfieConfig;
45
+ const document = captures.find((capture) => capture.documentConfig)?.documentConfig;
46
+ const hasSelfieCapture = selfie !== undefined ||
47
+ captures.some((capture) => capture.captureType === CaptureType.selfie);
48
+ const hasDocumentCapture = document !== undefined ||
49
+ captures.some((capture) => capture.captureType === CaptureType.document);
50
+ return {
51
+ consentScreenUsed: consent !== undefined,
52
+ consentIconProvided: consent?.partnerIcon != null,
53
+ // A React Native consent icon is a ReactNode with no measurable pixel size.
54
+ consentIconDimensions: null,
55
+ consentAttributionShown: consent?.showAttribution ?? false,
56
+ instructionsScreenUsed: instructionsUsed,
57
+ selfiePreviewEnabled: previewUsed && hasSelfieCapture,
58
+ documentPreviewEnabled: previewUsed && hasDocumentCapture,
59
+ // No processing screen means the flow captures without submitting to the API.
60
+ submissionSkipped: !processingUsed,
61
+ allowAgentMode: selfie?.allowAgentMode ?? false,
62
+ enhancedLivenessEnabled: selfie?.enableEnhancedLiveness ?? false,
63
+ autoCaptureEnabled: autoCaptureWireValue(document?.captureMode),
64
+ allowGalleryUpload: document?.allowGalleryUpload ?? false,
65
+ captureBothSides: document?.captureBothSides ?? false,
66
+ allowSkipBack: document?.allowSkipBack ?? false,
67
+ globalPrivacyControl: configuration.config?.globalPrivacyControl ?? GlobalPrivacyControl.OptOut,
68
+ };
69
+ }
70
+ /**
71
+ * Describes the face and document models backing this flow.
72
+ *
73
+ * The face model is resolved from the registered selfie analyzer factory key;
74
+ * the document model reports the native no-op fallback, since the React Native
75
+ * document detector is not selectable from JS.
76
+ */
77
+ export function flowConfigurationToModelConfiguration(configuration) {
78
+ const faceKey = configuration.ml?.analyzers.selfieConfig?.analyzerFactoryKey;
79
+ return {
80
+ faceModel: faceDescriptorOf(faceKey),
81
+ documentModel: NOOP_DOCUMENT_DESCRIPTOR,
82
+ };
83
+ }
84
+ /**
85
+ * The `builder_configuration_object` + `model_configuration_object` wire
86
+ * entries, encoded as JSON-string values so the metadata payload stays a flat
87
+ * `{name, value}` array.
88
+ */
89
+ export function configurationMetadataEntries(configuration) {
90
+ const entries = [
91
+ {
92
+ name: "builder_configuration_object",
93
+ value: JSON.stringify(builderConfigurationToJson(flowConfigurationToBuilderConfiguration(configuration))),
94
+ },
95
+ {
96
+ name: "model_configuration_object",
97
+ value: JSON.stringify(modelConfigurationToJson(flowConfigurationToModelConfiguration(configuration))),
98
+ },
99
+ ];
100
+ // Flow-derived selfie liveness telemetry — appended only for selfie flows.
101
+ const liveness = flowConfigurationToSelfieLivenessTelemetry(configuration);
102
+ if (liveness.activeLivenessType !== null) {
103
+ entries.push({ name: "active_liveness_type", value: liveness.activeLivenessType }, {
104
+ name: "active_liveness_version",
105
+ value: liveness.activeLivenessVersion,
106
+ }, { name: "selfie_image_origin", value: liveness.selfieImageOrigin });
107
+ }
108
+ return entries;
109
+ }
110
+ /**
111
+ * Flow-derived selfie liveness telemetry. All-`null` for flows without a selfie
112
+ * capture; otherwise the active-liveness check, the version, and the lens the
113
+ * selfie came from (the selfie SDK has no gallery path).
114
+ */
115
+ export function flowConfigurationToSelfieLivenessTelemetry(configuration) {
116
+ let selfie;
117
+ let hasSelfieCapture = false;
118
+ for (const step of configuration.screens.steps) {
119
+ if (step.kind === "capture") {
120
+ selfie ??= step.config.selfieConfig;
121
+ if (step.config.captureType === CaptureType.selfie) {
122
+ hasSelfieCapture = true;
123
+ }
124
+ }
125
+ }
126
+ if (!hasSelfieCapture && selfie === undefined) {
127
+ return {
128
+ activeLivenessType: null,
129
+ activeLivenessVersion: null,
130
+ selfieImageOrigin: null,
131
+ };
132
+ }
133
+ return {
134
+ activeLivenessType: activeLivenessTypeOf(selfie),
135
+ activeLivenessVersion: "2.0.0",
136
+ selfieImageOrigin: selfieImageOriginOf(selfie),
137
+ };
138
+ }
139
+ function activeLivenessTypeOf(selfie) {
140
+ return selfie?.enableEnhancedLiveness ? "head_pose" : "smile";
141
+ }
142
+ function selfieImageOriginOf(selfie) {
143
+ return selfie?.allowAgentMode ? "back_camera" : "front_camera";
144
+ }
145
+ function faceDescriptorOf(key) {
146
+ switch (key) {
147
+ case AnalyzerFactoryKey.MLKitFace:
148
+ return {
149
+ provider: ModelProvider.Google,
150
+ name: "play-services-mlkit-face-detection",
151
+ version: "17.1.0",
152
+ bundled: false,
153
+ };
154
+ case AnalyzerFactoryKey.HuaweiFace:
155
+ return {
156
+ provider: ModelProvider.Huawei,
157
+ name: "ml-computer-vision-face",
158
+ version: "3.18.1.300",
159
+ bundled: false,
160
+ };
161
+ case AnalyzerFactoryKey.VisionFace:
162
+ return {
163
+ provider: ModelProvider.Apple,
164
+ name: "vision_face_detector",
165
+ version: "system",
166
+ bundled: true,
167
+ };
168
+ default:
169
+ return MODEL_DESCRIPTOR_UNKNOWN;
170
+ }
171
+ }
172
+ const NOOP_DOCUMENT_DESCRIPTOR = {
173
+ provider: ModelProvider.Smile,
174
+ name: "noop_document_detector",
175
+ version: "12.0.1",
176
+ bundled: true,
177
+ };
178
+ //# sourceMappingURL=metadata_configuration_mappers.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"metadata_configuration_mappers.js","sourceRoot":"","sources":["../../src/metadata/metadata_configuration_mappers.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,oBAAoB,EAAE,MAAM,uCAAuC,CAAC;AAC7E,OAAO,EAAE,kBAAkB,EAAE,MAAM,4BAA4B,CAAC;AAEhE,OAAO,EAAE,WAAW,EAAE,MAAM,0BAA0B,CAAC;AACvD,OAAO,EAAE,oBAAoB,EAAE,MAAM,sCAAsC,CAAC;AAM5E,OAAO,EAEL,0BAA0B,GAC3B,MAAM,yBAAyB,CAAC;AACjC,OAAO,EACL,wBAAwB,EAGxB,aAAa,EACb,wBAAwB,GACzB,MAAM,uBAAuB,CAAC;AAG/B;;;;;;;;;;GAUG;AACH,MAAM,UAAU,uCAAuC,CACrD,aAAgC;IAEhC,MAAM,KAAK,GAAG,aAAa,CAAC,OAAO,CAAC,KAAK,CAAC;IAE1C,IAAI,OAAyC,CAAC;IAC9C,MAAM,QAAQ,GAA2B,EAAE,CAAC;IAC5C,IAAI,gBAAgB,GAAG,KAAK,CAAC;IAC7B,IAAI,WAAW,GAAG,KAAK,CAAC;IACxB,IAAI,cAAc,GAAG,KAAK,CAAC;IAC3B,KAAK,MAAM,IAAI,IAAI,KAAK,EAAE,CAAC;QACzB,QAAQ,IAAI,CAAC,IAAI,EAAE,CAAC;YAClB,KAAK,SAAS;gBACZ,OAAO,GAAG,IAAI,CAAC,MAAM,CAAC;gBACtB,MAAM;YACR,KAAK,cAAc;gBACjB,gBAAgB,GAAG,IAAI,CAAC;gBACxB,MAAM;YACR,KAAK,SAAS;gBACZ,QAAQ,CAAC,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;gBAC3B,MAAM;YACR,KAAK,SAAS;gBACZ,WAAW,GAAG,IAAI,CAAC;gBACnB,MAAM;YACR,KAAK,YAAY;gBACf,cAAc,GAAG,IAAI,CAAC;gBACtB,MAAM;QACV,CAAC;IACH,CAAC;IAED,MAAM,MAAM,GAAG,QAAQ,CAAC,IAAI,CAAC,CAAC,OAAO,EAAE,EAAE,CAAC,OAAO,CAAC,YAAY,CAAC,EAAE,YAAY,CAAC;IAC9E,MAAM,QAAQ,GAAG,QAAQ,CAAC,IAAI,CAC5B,CAAC,OAAO,EAAE,EAAE,CAAC,OAAO,CAAC,cAAc,CACpC,EAAE,cAAc,CAAC;IAClB,MAAM,gBAAgB,GACpB,MAAM,KAAK,SAAS;QACpB,QAAQ,CAAC,IAAI,CAAC,CAAC,OAAO,EAAE,EAAE,CAAC,OAAO,CAAC,WAAW,KAAK,WAAW,CAAC,MAAM,CAAC,CAAC;IACzE,MAAM,kBAAkB,GACtB,QAAQ,KAAK,SAAS;QACtB,QAAQ,CAAC,IAAI,CAAC,CAAC,OAAO,EAAE,EAAE,CAAC,OAAO,CAAC,WAAW,KAAK,WAAW,CAAC,QAAQ,CAAC,CAAC;IAE3E,OAAO;QACL,iBAAiB,EAAE,OAAO,KAAK,SAAS;QACxC,mBAAmB,EAAE,OAAO,EAAE,WAAW,IAAI,IAAI;QACjD,4EAA4E;QAC5E,qBAAqB,EAAE,IAAI;QAC3B,uBAAuB,EAAE,OAAO,EAAE,eAAe,IAAI,KAAK;QAC1D,sBAAsB,EAAE,gBAAgB;QACxC,oBAAoB,EAAE,WAAW,IAAI,gBAAgB;QACrD,sBAAsB,EAAE,WAAW,IAAI,kBAAkB;QACzD,8EAA8E;QAC9E,iBAAiB,EAAE,CAAC,cAAc;QAClC,cAAc,EAAE,MAAM,EAAE,cAAc,IAAI,KAAK;QAC/C,uBAAuB,EAAE,MAAM,EAAE,sBAAsB,IAAI,KAAK;QAChE,kBAAkB,EAAE,oBAAoB,CAAC,QAAQ,EAAE,WAAW,CAAC;QAC/D,kBAAkB,EAAE,QAAQ,EAAE,kBAAkB,IAAI,KAAK;QACzD,gBAAgB,EAAE,QAAQ,EAAE,gBAAgB,IAAI,KAAK;QACrD,aAAa,EAAE,QAAQ,EAAE,aAAa,IAAI,KAAK;QAC/C,oBAAoB,EAClB,aAAa,CAAC,MAAM,EAAE,oBAAoB,IAAI,oBAAoB,CAAC,MAAM;KAC5E,CAAC;AACJ,CAAC;AAED;;;;;;GAMG;AACH,MAAM,UAAU,qCAAqC,CACnD,aAAgC;IAEhC,MAAM,OAAO,GAAG,aAAa,CAAC,EAAE,EAAE,SAAS,CAAC,YAAY,EAAE,kBAAkB,CAAC;IAC7E,OAAO;QACL,SAAS,EAAE,gBAAgB,CAAC,OAAO,CAAC;QACpC,aAAa,EAAE,wBAAwB;KACxC,CAAC;AACJ,CAAC;AAED;;;;GAIG;AACH,MAAM,UAAU,4BAA4B,CAC1C,aAAgC;IAEhC,MAAM,OAAO,GAAoB;QAC/B;YACE,IAAI,EAAE,8BAA8B;YACpC,KAAK,EAAE,IAAI,CAAC,SAAS,CACnB,0BAA0B,CACxB,uCAAuC,CAAC,aAAa,CAAC,CACvD,CACF;SACF;QACD;YACE,IAAI,EAAE,4BAA4B;YAClC,KAAK,EAAE,IAAI,CAAC,SAAS,CACnB,wBAAwB,CACtB,qCAAqC,CAAC,aAAa,CAAC,CACrD,CACF;SACF;KACF,CAAC;IAEF,2EAA2E;IAC3E,MAAM,QAAQ,GAAG,0CAA0C,CAAC,aAAa,CAAC,CAAC;IAC3E,IAAI,QAAQ,CAAC,kBAAkB,KAAK,IAAI,EAAE,CAAC;QACzC,OAAO,CAAC,IAAI,CACV,EAAE,IAAI,EAAE,sBAAsB,EAAE,KAAK,EAAE,QAAQ,CAAC,kBAAkB,EAAE,EACpE;YACE,IAAI,EAAE,yBAAyB;YAC/B,KAAK,EAAE,QAAQ,CAAC,qBAAqB;SACtC,EACD,EAAE,IAAI,EAAE,qBAAqB,EAAE,KAAK,EAAE,QAAQ,CAAC,iBAAiB,EAAE,CACnE,CAAC;IACJ,CAAC;IACD,OAAO,OAAO,CAAC;AACjB,CAAC;AAcD;;;;GAIG;AACH,MAAM,UAAU,0CAA0C,CACxD,aAAgC;IAEhC,IAAI,MAA4B,CAAC;IACjC,IAAI,gBAAgB,GAAG,KAAK,CAAC;IAC7B,KAAK,MAAM,IAAI,IAAI,aAAa,CAAC,OAAO,CAAC,KAAK,EAAE,CAAC;QAC/C,IAAI,IAAI,CAAC,IAAI,KAAK,SAAS,EAAE,CAAC;YAC5B,MAAM,KAAK,IAAI,CAAC,MAAM,CAAC,YAAY,CAAC;YACpC,IAAI,IAAI,CAAC,MAAM,CAAC,WAAW,KAAK,WAAW,CAAC,MAAM,EAAE,CAAC;gBACnD,gBAAgB,GAAG,IAAI,CAAC;YAC1B,CAAC;QACH,CAAC;IACH,CAAC;IACD,IAAI,CAAC,gBAAgB,IAAI,MAAM,KAAK,SAAS,EAAE,CAAC;QAC9C,OAAO;YACL,kBAAkB,EAAE,IAAI;YACxB,qBAAqB,EAAE,IAAI;YAC3B,iBAAiB,EAAE,IAAI;SACxB,CAAC;IACJ,CAAC;IACD,OAAO;QACL,kBAAkB,EAAE,oBAAoB,CAAC,MAAM,CAAC;QAChD,qBAAqB,EAAE,OAAO;QAC9B,iBAAiB,EAAE,mBAAmB,CAAC,MAAM,CAAC;KAC/C,CAAC;AACJ,CAAC;AAMD,SAAS,oBAAoB,CAAC,MAA4B;IACxD,OAAO,MAAM,EAAE,sBAAsB,CAAC,CAAC,CAAC,WAAW,CAAC,CAAC,CAAC,OAAO,CAAC;AAChE,CAAC;AAED,SAAS,mBAAmB,CAAC,MAA4B;IACvD,OAAO,MAAM,EAAE,cAAc,CAAC,CAAC,CAAC,aAAa,CAAC,CAAC,CAAC,cAAc,CAAC;AACjE,CAAC;AAED,SAAS,gBAAgB,CACvB,GAAmC;IAEnC,QAAQ,GAAG,EAAE,CAAC;QACZ,KAAK,kBAAkB,CAAC,SAAS;YAC/B,OAAO;gBACL,QAAQ,EAAE,aAAa,CAAC,MAAM;gBAC9B,IAAI,EAAE,oCAAoC;gBAC1C,OAAO,EAAE,QAAQ;gBACjB,OAAO,EAAE,KAAK;aACf,CAAC;QACJ,KAAK,kBAAkB,CAAC,UAAU;YAChC,OAAO;gBACL,QAAQ,EAAE,aAAa,CAAC,MAAM;gBAC9B,IAAI,EAAE,yBAAyB;gBAC/B,OAAO,EAAE,YAAY;gBACrB,OAAO,EAAE,KAAK;aACf,CAAC;QACJ,KAAK,kBAAkB,CAAC,UAAU;YAChC,OAAO;gBACL,QAAQ,EAAE,aAAa,CAAC,KAAK;gBAC7B,IAAI,EAAE,sBAAsB;gBAC5B,OAAO,EAAE,QAAQ;gBACjB,OAAO,EAAE,IAAI;aACd,CAAC;QACJ;YACE,OAAO,wBAAwB,CAAC;IACpC,CAAC;AACH,CAAC;AAED,MAAM,wBAAwB,GAAoB;IAChD,QAAQ,EAAE,aAAa,CAAC,KAAK;IAC7B,IAAI,EAAE,wBAAwB;IAC9B,OAAO,EAAE,QAAQ;IACjB,OAAO,EAAE,IAAI;CACd,CAAC"}
@@ -0,0 +1,41 @@
1
+ /**
2
+ * Client-side detection-model metadata appended to a job request as the
3
+ * `model_configuration_object` entry, so the server can attribute face /
4
+ * document detection behaviour to a concrete component and version during
5
+ * fraud analysis.
6
+ *
7
+ * `ModelProvider` is a stable lowercase wire token; `apple` covers detectors
8
+ * backed by Apple's Vision framework on iOS. New providers are additive.
9
+ */
10
+ export declare const ModelProvider: {
11
+ readonly Google: "google";
12
+ readonly Huawei: "huawei";
13
+ readonly Smile: "smile";
14
+ readonly Apple: "apple";
15
+ readonly Custom: "custom";
16
+ };
17
+ export type ModelProvider = (typeof ModelProvider)[keyof typeof ModelProvider];
18
+ export type ModelDescriptor = {
19
+ readonly provider: ModelProvider;
20
+ /** Human-readable model identifier (e.g. the native artefact id). */
21
+ readonly name: string;
22
+ /** The model / framework version in use on the device. */
23
+ readonly version: string;
24
+ /** `true` when the model ships with the app / OS, `false` when downloaded on demand. */
25
+ readonly bundled: boolean;
26
+ };
27
+ /**
28
+ * Placeholder used when the active model for a capture type cannot be
29
+ * resolved, so the `model_configuration_object` always carries both
30
+ * `face_model` and `document_model` rather than omitting a side.
31
+ */
32
+ export declare const MODEL_DESCRIPTOR_UNKNOWN: ModelDescriptor;
33
+ export type ModelConfiguration = {
34
+ readonly faceModel: ModelDescriptor;
35
+ readonly documentModel: ModelDescriptor;
36
+ };
37
+ /** Serialises a [ModelDescriptor] to its snake_case wire object. */
38
+ export declare function modelDescriptorToJson(descriptor: ModelDescriptor): Record<string, unknown>;
39
+ /** Serialises a [ModelConfiguration] to its snake_case wire object. */
40
+ export declare function modelConfigurationToJson(configuration: ModelConfiguration): Record<string, unknown>;
41
+ //# sourceMappingURL=model_configuration.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"model_configuration.d.ts","sourceRoot":"","sources":["../../src/metadata/model_configuration.ts"],"names":[],"mappings":"AAAA;;;;;;;;GAQG;AAEH,eAAO,MAAM,aAAa;;;;;;CAMhB,CAAC;AAEX,MAAM,MAAM,aAAa,GAAG,CAAC,OAAO,aAAa,CAAC,CAAC,MAAM,OAAO,aAAa,CAAC,CAAC;AAE/E,MAAM,MAAM,eAAe,GAAG;IAC5B,QAAQ,CAAC,QAAQ,EAAE,aAAa,CAAC;IACjC,qEAAqE;IACrE,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;IACtB,0DAA0D;IAC1D,QAAQ,CAAC,OAAO,EAAE,MAAM,CAAC;IACzB,wFAAwF;IACxF,QAAQ,CAAC,OAAO,EAAE,OAAO,CAAC;CAC3B,CAAC;AAEF;;;;GAIG;AACH,eAAO,MAAM,wBAAwB,EAAE,eAKrC,CAAC;AAEH,MAAM,MAAM,kBAAkB,GAAG;IAC/B,QAAQ,CAAC,SAAS,EAAE,eAAe,CAAC;IACpC,QAAQ,CAAC,aAAa,EAAE,eAAe,CAAC;CACzC,CAAC;AAEF,oEAAoE;AACpE,wBAAgB,qBAAqB,CACnC,UAAU,EAAE,eAAe,GAC1B,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAOzB;AAED,uEAAuE;AACvE,wBAAgB,wBAAwB,CACtC,aAAa,EAAE,kBAAkB,GAChC,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAKzB"}
@@ -0,0 +1,44 @@
1
+ /**
2
+ * Client-side detection-model metadata appended to a job request as the
3
+ * `model_configuration_object` entry, so the server can attribute face /
4
+ * document detection behaviour to a concrete component and version during
5
+ * fraud analysis.
6
+ *
7
+ * `ModelProvider` is a stable lowercase wire token; `apple` covers detectors
8
+ * backed by Apple's Vision framework on iOS. New providers are additive.
9
+ */
10
+ export const ModelProvider = {
11
+ Google: "google",
12
+ Huawei: "huawei",
13
+ Smile: "smile",
14
+ Apple: "apple",
15
+ Custom: "custom",
16
+ };
17
+ /**
18
+ * Placeholder used when the active model for a capture type cannot be
19
+ * resolved, so the `model_configuration_object` always carries both
20
+ * `face_model` and `document_model` rather than omitting a side.
21
+ */
22
+ export const MODEL_DESCRIPTOR_UNKNOWN = Object.freeze({
23
+ provider: ModelProvider.Custom,
24
+ name: "unknown",
25
+ version: "unknown",
26
+ bundled: false,
27
+ });
28
+ /** Serialises a [ModelDescriptor] to its snake_case wire object. */
29
+ export function modelDescriptorToJson(descriptor) {
30
+ return {
31
+ provider: descriptor.provider,
32
+ name: descriptor.name,
33
+ version: descriptor.version,
34
+ bundled: descriptor.bundled,
35
+ };
36
+ }
37
+ /** Serialises a [ModelConfiguration] to its snake_case wire object. */
38
+ export function modelConfigurationToJson(configuration) {
39
+ return {
40
+ face_model: modelDescriptorToJson(configuration.faceModel),
41
+ document_model: modelDescriptorToJson(configuration.documentModel),
42
+ };
43
+ }
44
+ //# sourceMappingURL=model_configuration.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"model_configuration.js","sourceRoot":"","sources":["../../src/metadata/model_configuration.ts"],"names":[],"mappings":"AAAA;;;;;;;;GAQG;AAEH,MAAM,CAAC,MAAM,aAAa,GAAG;IAC3B,MAAM,EAAE,QAAQ;IAChB,MAAM,EAAE,QAAQ;IAChB,KAAK,EAAE,OAAO;IACd,KAAK,EAAE,OAAO;IACd,MAAM,EAAE,QAAQ;CACR,CAAC;AAcX;;;;GAIG;AACH,MAAM,CAAC,MAAM,wBAAwB,GAAoB,MAAM,CAAC,MAAM,CAAC;IACrE,QAAQ,EAAE,aAAa,CAAC,MAAM;IAC9B,IAAI,EAAE,SAAS;IACf,OAAO,EAAE,SAAS;IAClB,OAAO,EAAE,KAAK;CACf,CAAC,CAAC;AAOH,oEAAoE;AACpE,MAAM,UAAU,qBAAqB,CACnC,UAA2B;IAE3B,OAAO;QACL,QAAQ,EAAE,UAAU,CAAC,QAAQ;QAC7B,IAAI,EAAE,UAAU,CAAC,IAAI;QACrB,OAAO,EAAE,UAAU,CAAC,OAAO;QAC3B,OAAO,EAAE,UAAU,CAAC,OAAO;KAC5B,CAAC;AACJ,CAAC;AAED,uEAAuE;AACvE,MAAM,UAAU,wBAAwB,CACtC,aAAiC;IAEjC,OAAO;QACL,UAAU,EAAE,qBAAqB,CAAC,aAAa,CAAC,SAAS,CAAC;QAC1D,cAAc,EAAE,qBAAqB,CAAC,aAAa,CAAC,aAAa,CAAC;KACnE,CAAC;AACJ,CAAC"}
@@ -1,7 +1,8 @@
1
1
  /**
2
- * Lazy bridges to optional `expo-device` / `expo-network` peer deps.
3
- * Both are declared `optional: true` in `peerDependenciesMeta` so
4
- * partners who don't need richer metadata don't pay the install cost.
2
+ * Lazy bridges to optional `expo-device` / `expo-network` / `expo-battery` /
3
+ * `expo-cellular` peer deps. All are declared `optional: true` in
4
+ * `peerDependenciesMeta` so partners who don't need richer metadata don't pay
5
+ * the install cost.
5
6
  *
6
7
  * **Pattern:** dynamic `require()` wrapped in `try/catch`. Metro
7
8
  * tolerates the missing-module case without failing the build —
@@ -18,6 +19,10 @@ type DeviceModule = {
18
19
  readonly brand?: string | null;
19
20
  readonly supportedCpuArchitectures?: readonly string[] | null;
20
21
  readonly totalMemory?: number | null;
22
+ readonly designName?: string | null;
23
+ readonly productName?: string | null;
24
+ readonly osBuildFingerprint?: string | null;
25
+ readonly modelId?: string | null;
21
26
  };
22
27
  type NetworkModule = {
23
28
  getNetworkStateAsync(): Promise<{
@@ -27,6 +32,44 @@ type NetworkModule = {
27
32
  }>;
28
33
  getIpAddressAsync?(): Promise<string>;
29
34
  };
35
+ type BatteryModule = {
36
+ getBatteryStateAsync(): Promise<number>;
37
+ };
38
+ type CellularModule = {
39
+ readonly carrier?: string | null;
40
+ };
41
+ type AsyncStorageModule = {
42
+ getItem(key: string): Promise<string | null>;
43
+ setItem(key: string, value: string): Promise<void>;
44
+ };
45
+ /** Subscription returned by `Accelerometer.addListener`. */
46
+ export type AccelerometerSubscription = {
47
+ remove(): void;
48
+ };
49
+ /** Minimal `expo-sensors` surface used for device_positions / device_movement_detected. */
50
+ type SensorsModule = {
51
+ Accelerometer: {
52
+ setUpdateInterval(intervalMs: number): void;
53
+ addListener(listener: (data: {
54
+ x: number;
55
+ y: number;
56
+ z: number;
57
+ }) => void): AccelerometerSubscription;
58
+ };
59
+ };
60
+ /** Minimal `expo-location` surface used for the geolocation metadata. */
61
+ type LocationModule = {
62
+ getForegroundPermissionsAsync(): Promise<{
63
+ granted: boolean;
64
+ }>;
65
+ getLastKnownPositionAsync(): Promise<{
66
+ coords: {
67
+ latitude: number;
68
+ longitude: number;
69
+ accuracy: number | null;
70
+ };
71
+ } | null>;
72
+ };
30
73
  /**
31
74
  * Load `expo-device`'s native module once, cached for the process
32
75
  * lifetime. Returns `null` if the native module isn't linked into
@@ -79,6 +122,39 @@ export declare function loadExpoDevice(): DeviceModule | null;
79
122
  * fire-and-forget and falls back to empty defaults until it settles.
80
123
  */
81
124
  export declare function loadExpoNetwork(): NetworkModule | null;
125
+ /**
126
+ * Load `expo-battery`'s native module once, cached for the process lifetime.
127
+ * Returns `null` when the native module isn't linked (graceful degradation).
128
+ * Mirrors [loadExpoDevice] — pulls the raw `ExpoBattery` native module via
129
+ * `expo-modules-core`'s non-throwing `requireOptionalNativeModule`.
130
+ */
131
+ export declare function loadExpoBattery(): BatteryModule | null;
132
+ /**
133
+ * Load `expo-cellular`'s native module once, cached for the process lifetime.
134
+ * Returns `null` when the native module isn't linked (graceful degradation).
135
+ * The raw `ExpoCellular` module exposes the `carrier` name constant directly.
136
+ */
137
+ export declare function loadExpoCellular(): CellularModule | null;
138
+ /**
139
+ * Load `@react-native-async-storage/async-storage` once, cached for the process
140
+ * lifetime. Returns `null` when the package isn't installed (graceful
141
+ * degradation). Unlike the expo modules, async-storage's JS entry does not throw
142
+ * at import when the native side is missing, so a plain `require` (wrapped in
143
+ * try/catch for the not-installed case) is sufficient; per-call native errors
144
+ * are handled by the caller. Backed by Android `SharedPreferences` /
145
+ * iOS `NSUserDefaults`.
146
+ */
147
+ export declare function loadAsyncStorage(): AsyncStorageModule | null;
148
+ /**
149
+ * Load `expo-sensors` for accelerometer sampling. Returns `null` when the peer
150
+ * dep isn't installed/linked (graceful degradation — device_positions omitted).
151
+ */
152
+ export declare function loadExpoSensors(): SensorsModule | null;
153
+ /**
154
+ * Load `expo-location` for the geolocation metadata. Returns `null` when the
155
+ * peer dep isn't installed/linked (graceful degradation — geolocation omitted).
156
+ */
157
+ export declare function loadExpoLocation(): LocationModule | null;
82
158
  /** Test-only seam — clears the module cache so tests can re-evaluate. */
83
159
  export declare function _resetOptionalModulesForTesting(): void;
84
160
  export {};
@@ -1 +1 @@
1
- {"version":3,"file":"optional_native_modules.d.ts","sourceRoot":"","sources":["../../src/metadata/optional_native_modules.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;GAcG;AAEH,KAAK,YAAY,GAAG;IAClB,QAAQ,CAAC,SAAS,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IACnC,QAAQ,CAAC,KAAK,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IAC/B,QAAQ,CAAC,yBAAyB,CAAC,EAAE,SAAS,MAAM,EAAE,GAAG,IAAI,CAAC;IAC9D,QAAQ,CAAC,WAAW,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;CACtC,CAAC;AAEF,KAAK,aAAa,GAAG;IACnB,oBAAoB,IAAI,OAAO,CAAC;QAC9B,QAAQ,CAAC,IAAI,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;QAC9B,QAAQ,CAAC,WAAW,CAAC,EAAE,OAAO,GAAG,IAAI,CAAC;QACtC,QAAQ,CAAC,mBAAmB,CAAC,EAAE,OAAO,GAAG,IAAI,CAAC;KAC/C,CAAC,CAAC;IACH,iBAAiB,CAAC,IAAI,OAAO,CAAC,MAAM,CAAC,CAAC;CACvC,CAAC;AAKF;;;;;;;;;;;;;;;;;;;;;;;;;;GA0BG;AACH,wBAAgB,cAAc,IAAI,YAAY,GAAG,IAAI,CAapD;AAED;;;;;;;;;;;;;;;;;;;;;;GAsBG;AACH,wBAAgB,eAAe,IAAI,aAAa,GAAG,IAAI,CAatD;AAED,yEAAyE;AACzE,wBAAgB,+BAA+B,IAAI,IAAI,CAGtD"}
1
+ {"version":3,"file":"optional_native_modules.d.ts","sourceRoot":"","sources":["../../src/metadata/optional_native_modules.ts"],"names":[],"mappings":"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"}