@incodetech/core 2.2.0 → 2.3.0-rc.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 (258) hide show
  1. package/THIRD_PARTY_NOTICES.txt +281 -0
  2. package/dist/BaseWasmProvider-Dyi6dKp1.d.ts +65 -0
  3. package/dist/{BrowserDiagnosticsCryptoProvider-B8vorxN5.esm.js → BrowserDiagnosticsCryptoProvider-CU6kBvqv.esm.js} +1 -1
  4. package/dist/{BrowserVisibilityObserverProvider-BX1BiLDK.esm.js → BrowserVisibilityObserverProvider-BrJN1B8A.esm.js} +2 -0
  5. package/dist/FaceDetectionProvider-BfhWkK90.esm.js +431 -0
  6. package/dist/FaceDetectionProvider-LdZ47bWy.d.ts +36 -0
  7. package/dist/{IIdCaptureCapability-DHTT3FC2.d.ts → IIdCaptureCapability-RNiFhvXR.d.ts} +7 -33
  8. package/dist/IWasmUtilCapability-CNWRl7jr.d.ts +117 -0
  9. package/dist/{MotionSensorProvider-DGiV77J_.esm.js → MotionSensorProvider-BgTYwg9L.esm.js} +1 -1
  10. package/dist/{StreamCanvasCapture-D2XcXCZ4.esm.js → StreamCanvasCapture-C9jtgBdT.esm.js} +2 -2
  11. package/dist/{deepsightService-DLVQS_RH.d.ts → StreamCanvasCapture-_8gdW5Lk.d.ts} +54 -41
  12. package/dist/StreamCanvasProcessingSession-CBnbTnOr.esm.js +42 -0
  13. package/dist/{addressSearch-D1XpBdUS.esm.js → addressSearch-DyHGgeX8.esm.js} +1 -1
  14. package/dist/advanceableErrors-CpF2cBy6.esm.js +21 -0
  15. package/dist/ae-signature.d.ts +4 -2
  16. package/dist/ae-signature.esm.js +1 -1
  17. package/dist/antifraud.esm.js +2 -2
  18. package/dist/{antifraudManager-CQFNgSPt.esm.js → antifraudManager-DNkw66oW.esm.js} +2 -2
  19. package/dist/{antifraudStateMachine-Bf_JVNwn.esm.js → antifraudStateMachine-DBeq47D2.esm.js} +1 -1
  20. package/dist/{apiError-BA1d_au0.esm.js → apiError-Budb6m6w.esm.js} +14 -2
  21. package/dist/authentication.d.ts +3 -3
  22. package/dist/authentication.esm.js +2 -2
  23. package/dist/{authenticationManager-BBMGTcwW.d.ts → authenticationManager-CjXBjC-c.d.ts} +7 -1
  24. package/dist/{authenticationManager-zh9TC62P.esm.js → authenticationManager-cMXhG70r.esm.js} +5 -5
  25. package/dist/{authenticationStateMachine-xzi-vnvE.esm.js → authenticationStateMachine-MOYz4HCf.esm.js} +6 -62
  26. package/dist/avatar.d.ts +1 -2
  27. package/dist/avatar.esm.js +1 -1
  28. package/dist/{backCameraStream-CUeYm5eu.esm.js → backCameraStream-BOtyQowf.esm.js} +83 -22
  29. package/dist/{camera-_2sXMXiF.esm.js → camera-sIa9ceW2.esm.js} +19 -1
  30. package/dist/camera.esm.js +1 -1
  31. package/dist/{canvas-E1zGkel4.esm.js → canvas-BxFzWTt-.esm.js} +19 -0
  32. package/dist/certificate-issuance.d.ts +2 -302
  33. package/dist/certificate-issuance.esm.js +3 -66
  34. package/dist/certificateIssuanceManager-C3-CI0_s.esm.js +69 -0
  35. package/dist/certificateIssuanceManager-DCgEidHz.d.ts +312 -0
  36. package/dist/{certificateIssuanceStateMachine-D_R92TYu.esm.js → certificateIssuanceStateMachine-CxqS_nD-.esm.js} +1 -1
  37. package/dist/consent.d.ts +1 -1
  38. package/dist/consent.esm.js +2 -2
  39. package/dist/{consentManager-BxjpLZAG.esm.js → consentManager-B6E1XJDw.esm.js} +2 -2
  40. package/dist/{consentManager-3Pbtj-RV.d.ts → consentManager-BhYFeKiG.d.ts} +4 -4
  41. package/dist/{consentStateMachine-D9D4ON8Z.esm.js → consentStateMachine-DTSfdGiW.esm.js} +1 -1
  42. package/dist/createCameraCycleOwnership-CX3hJGKc.esm.js +826 -0
  43. package/dist/{createFaceAvatar-DQKaRise.esm.js → createFaceAvatar-BNHdeFj8.esm.js} +2 -2
  44. package/dist/createFaceAvatar-BlcTYgJv.d.ts +497 -0
  45. package/dist/cross-document-data-match.esm.js +1 -1
  46. package/dist/{crossDocumentDataMatchManager-CGT0V6RV.esm.js → crossDocumentDataMatchManager-9XhFVZ5S.esm.js} +2 -2
  47. package/dist/curp-validation.d.ts +1 -1
  48. package/dist/curp-validation.esm.js +2 -2
  49. package/dist/{curpValidationManager-6Nmkn5u1.esm.js → curpValidationManager-DbIMYFcJ.esm.js} +2 -2
  50. package/dist/{curpValidationManager-DVGr7Fq7.d.ts → curpValidationManager-SSKNrm5Z.d.ts} +1 -1
  51. package/dist/{curpValidationStateMachine-Ds7KMacK.esm.js → curpValidationStateMachine-g5kMfuLj.esm.js} +1 -1
  52. package/dist/custom-fields.d.ts +2 -114
  53. package/dist/custom-fields.esm.js +2 -232
  54. package/dist/custom-watchlist.d.ts +2 -51
  55. package/dist/custom-watchlist.esm.js +3 -70
  56. package/dist/customFieldsManager-8-W2KY4n.d.ts +141 -0
  57. package/dist/customFieldsManager-CzWZTkW-.esm.js +264 -0
  58. package/dist/customWatchlistManager-DWTED5Ur.esm.js +73 -0
  59. package/dist/customWatchlistManager-PBWHr_oM.d.ts +64 -0
  60. package/dist/{customWatchlistStateMachine-YWSgKLbF.esm.js → customWatchlistStateMachine-DOQou6TW.esm.js} +1 -1
  61. package/dist/{deepsightLoader--wMKWECS.esm.js → deepsightLoader-DDv3vhXU.esm.js} +27 -71
  62. package/dist/device.d.ts +25 -2
  63. package/dist/device.esm.js +69 -7
  64. package/dist/document-capture.d.ts +2 -2
  65. package/dist/document-capture.esm.js +2 -2
  66. package/dist/{documentCaptureManager-DsQQhWry.esm.js → documentCaptureManager-CwAiM9WY.esm.js} +2 -2
  67. package/dist/{documentCaptureManager-B3t0ydtg.d.ts → documentCaptureManager-DensIj5F.d.ts} +83 -83
  68. package/dist/{documentCaptureStateMachine-BM4Ex_5x.esm.js → documentCaptureStateMachine-DfGOBapD.esm.js} +5 -5
  69. package/dist/dynamic-forms.d.ts +1 -1
  70. package/dist/dynamic-forms.esm.js +2 -2
  71. package/dist/{dynamicFormsManager-fFVIRBNv.esm.js → dynamicFormsManager-BbS-XMFc.esm.js} +16 -5
  72. package/dist/{dynamicFormsManager-fhK0yINk.d.ts → dynamicFormsManager-D5R_uxLQ.d.ts} +25 -3
  73. package/dist/{dynamicFormsStateMachine-D6D7oEYk.esm.js → dynamicFormsStateMachine-D8zHBCh4.esm.js} +35 -3
  74. package/dist/ekyb.d.ts +1 -1
  75. package/dist/ekyb.esm.js +3 -3
  76. package/dist/{ekybManager-Y3MkoXpC.esm.js → ekybManager-5aiac8wL.esm.js} +2 -2
  77. package/dist/{ekybStateMachine-3nlnqdlr.esm.js → ekybStateMachine-Bn2IE9rx.esm.js} +3 -3
  78. package/dist/ekyc.esm.js +2 -2
  79. package/dist/{ekycManager-DgT48ky6.esm.js → ekycManager-BlQ-Qj4E.esm.js} +2 -2
  80. package/dist/{ekycStateMachine-CQwqiR-R.esm.js → ekycStateMachine-CshSNJhh.esm.js} +2 -2
  81. package/dist/electronic-signature.d.ts +3 -3
  82. package/dist/electronic-signature.esm.js +2 -2
  83. package/dist/{electronicSignatureManager-DGbAJ00W.esm.js → electronicSignatureManager-BJJH0Tvi.esm.js} +357 -51
  84. package/dist/electronicSignatureManager-Ds-KEVTq.d.ts +2786 -0
  85. package/dist/email.esm.js +2 -2
  86. package/dist/{emailManager-BY0jeYwR.esm.js → emailManager-bR1N5rV_.esm.js} +2 -2
  87. package/dist/{emailStateMachine-Crw8QVmc.esm.js → emailStateMachine-Bc_6oIYw.esm.js} +1 -1
  88. package/dist/{endpoints-CCzL3XD_.esm.js → endpoints-B-3Q-LUw.esm.js} +24 -10
  89. package/dist/{events-DYiyoSlx.esm.js → events-ijlbX_Wx.esm.js} +2 -2
  90. package/dist/events.d.ts +1 -1
  91. package/dist/events.esm.js +1 -1
  92. package/dist/extensibility.d.ts +24 -64
  93. package/dist/extensibility.esm.js +35 -29
  94. package/dist/face-match.esm.js +2 -2
  95. package/dist/{faceCaptureManagerFactory-CVnZ0fa5.esm.js → faceCaptureManagerFactory-B7Ms6pSs.esm.js} +68 -7
  96. package/dist/{faceCaptureManagerFactory-BxWPpxyd.d.ts → faceCaptureManagerFactory-BeUl8fl1.d.ts} +86 -54
  97. package/dist/faceCaptureSetup-bkAlr5d8.esm.js +2067 -0
  98. package/dist/{faceMatchManager-Ri4UbNz0.esm.js → faceMatchManager-Bmv0HzuY.esm.js} +2 -2
  99. package/dist/{faceMatchStateMachine-20DdZ3jg.esm.js → faceMatchStateMachine-mRIHQ3dA.esm.js} +1 -1
  100. package/dist/{feature-management-CPQ4qv3F.esm.js → feature-management-E0mq0pMs.esm.js} +32 -7
  101. package/dist/feature-management.d.ts +1 -1
  102. package/dist/feature-management.esm.js +1 -1
  103. package/dist/field-comparison.esm.js +1 -1
  104. package/dist/{fieldComparisonManager-Cg6kPQQx.esm.js → fieldComparisonManager-CC-klG0h.esm.js} +2 -2
  105. package/dist/fiscal-qr.d.ts +2 -56
  106. package/dist/fiscal-qr.esm.js +2 -308
  107. package/dist/fiscalQrManager-B1STmT6z.d.ts +71 -0
  108. package/dist/fiscalQrManager-BunLVFbd.esm.js +34143 -0
  109. package/dist/flow-events.d.ts +1 -1
  110. package/dist/flow.d.ts +212 -185
  111. package/dist/flow.esm.js +119 -30
  112. package/dist/{flowCompletionService-tfeoGre9.esm.js → flowCompletionService-DJp1odGN.esm.js} +2 -2
  113. package/dist/{flowServices-f5Ruz7R9.esm.js → flowServices-DjPFGs_D.esm.js} +91 -26
  114. package/dist/geolocation.esm.js +2 -2
  115. package/dist/{geolocationManager-CH6RfqFH.esm.js → geolocationManager-D5906YXx.esm.js} +2 -2
  116. package/dist/{geolocationStateMachine-DmbWFely.esm.js → geolocationStateMachine-BVOduc3y.esm.js} +3 -3
  117. package/dist/getBrowser-CBiibsL-.esm.js +19 -0
  118. package/dist/{getBrowser-DNrQeL4T.esm.js → getBrowser-Cbe1C4Tn.esm.js} +2 -1
  119. package/dist/{getDeviceClass-9y-kbVDw.esm.js → getDeviceClass-5NYZg9s6.esm.js} +2 -2
  120. package/dist/getParsedUserAgent-B2iFDql1.esm.js +1278 -0
  121. package/dist/government-validation.d.ts +2 -85
  122. package/dist/government-validation.esm.js +3 -120
  123. package/dist/governmentValidationManager-CacFOtKO.esm.js +79 -0
  124. package/dist/governmentValidationManager-D02vT4yY.d.ts +63 -0
  125. package/dist/governmentValidationStateMachine-CoaZOSTP.esm.js +54 -0
  126. package/dist/home.d.ts +1 -1
  127. package/dist/home.esm.js +1 -1
  128. package/dist/id-ocr.d.ts +2 -2
  129. package/dist/id-ocr.esm.js +2 -2
  130. package/dist/id-selfie-flow.d.ts +3 -2
  131. package/dist/id-selfie-flow.esm.js +11 -10
  132. package/dist/id-verification.esm.js +2 -2
  133. package/dist/id.d.ts +29 -5
  134. package/dist/id.esm.js +48 -46
  135. package/dist/idCaptureDefaults-CbPA-Auz.esm.js +727 -0
  136. package/dist/{idCaptureManager-CqrqSjJV.d.ts → idCaptureManager-DKESug0R.d.ts} +230 -43
  137. package/dist/{idCaptureManager-BYwTZ2H8.esm.js → idCaptureManager-rfV9dIXy.esm.js} +259 -46
  138. package/dist/{idCaptureServices-44kwQItl.esm.js → idCaptureServices-i1KxugN7.esm.js} +285 -72
  139. package/dist/idCaptureStateMachine-Ne_PXth_.esm.js +5333 -0
  140. package/dist/{idOcrManager-DXc_xRN7.d.ts → idOcrManager-BF_cXZq8.d.ts} +1 -1
  141. package/dist/{idOcrManager-BIQYQXXj.esm.js → idOcrManager-r46XfZGE.esm.js} +2 -2
  142. package/dist/{idOcrStateMachine-cSxzHpHt.esm.js → idOcrStateMachine-ClDEP-VI.esm.js} +1 -1
  143. package/dist/{idVerificationManager-JpV_SAsl.esm.js → idVerificationManager-DT42c77H.esm.js} +2 -2
  144. package/dist/{idVerificationStateMachine-nPeUNyFq.esm.js → idVerificationStateMachine-DbDVIh9t.esm.js} +1 -1
  145. package/dist/identity-reuse.esm.js +2 -2
  146. package/dist/{identityReuseManager-kNCg9AbD.esm.js → identityReuseManager-yG3acUrQ.esm.js} +2 -2
  147. package/dist/{identityReuseStateMachine-DyulxDjP.esm.js → identityReuseStateMachine-BhAkuIra.esm.js} +1 -1
  148. package/dist/{index-CLMF0QLQ.d.ts → index-DLcJT5YP.d.ts} +1 -1
  149. package/dist/index.d.ts +1 -1
  150. package/dist/index.esm.js +1 -1
  151. package/dist/{invokeOnCaptureCallback-GpvMuz9o.esm.js → invokeOnCaptureCallback-BjzPjJ_p.esm.js} +1 -1
  152. package/dist/mandatory-consent.d.ts +2 -2
  153. package/dist/mandatory-consent.esm.js +2 -2
  154. package/dist/{mandatoryConsentManager-B4Niyg_u.esm.js → mandatoryConsentManager-7dI0D08q.esm.js} +2 -2
  155. package/dist/{mandatoryConsentManager-DyPzUmsZ.d.ts → mandatoryConsentManager-vhv1co_n.d.ts} +1 -1
  156. package/dist/{mandatoryConsentStateMachine-B4-1u-L8.esm.js → mandatoryConsentStateMachine-DC5Mo6M1.esm.js} +1 -1
  157. package/dist/multipartRecordingService-OEgIRvqC.esm.js +605 -0
  158. package/dist/{permissionGuards-KINpmKtI.esm.js → permissionGuards-uYZYFu4J.esm.js} +1 -1
  159. package/dist/{permissionServices-UvUcOSRb.esm.js → permissionServices-Bj_fyWtv.esm.js} +5 -5
  160. package/dist/personhood.d.ts +6 -5
  161. package/dist/personhood.esm.js +10 -10
  162. package/dist/phone.esm.js +2 -2
  163. package/dist/{phoneManager-FsJ0W2Ei.esm.js → phoneManager-IjhSv5XS.esm.js} +2 -2
  164. package/dist/{phoneStateMachine-Ba0wKHyX.esm.js → phoneStateMachine-CXdXufKg.esm.js} +1 -1
  165. package/dist/{platform-BJrm5nzZ.esm.js → platform-DkcRc9JV.esm.js} +29 -1
  166. package/dist/qe-signature.d.ts +5 -3
  167. package/dist/qe-signature.esm.js +2 -2
  168. package/dist/redirect-to-mobile.esm.js +2 -2
  169. package/dist/{redirectToMobileManager-y4VQB11M.esm.js → redirectToMobileManager-FLEWJtv8.esm.js} +2 -2
  170. package/dist/{redirectToMobileStateMachine-Cyv2x0PP.esm.js → redirectToMobileStateMachine-CSWWgUTO.esm.js} +1 -1
  171. package/dist/{rolldown-runtime-FZ4Itg2g.esm.js → rolldown-runtime-FDOR9p9I.esm.js} +1 -19
  172. package/dist/{runChildModule-Dukuw23X.esm.js → runChildModule-CI1gGWN1.esm.js} +3 -21
  173. package/dist/safeStorage-B-trhxg6.esm.js +423 -0
  174. package/dist/{sdkVersion-D1Bm59g6.esm.js → sdkVersion-BZh6dj53.esm.js} +1 -1
  175. package/dist/selfie.d.ts +5 -5
  176. package/dist/selfie.esm.js +14 -76
  177. package/dist/{selfieErrorUtils-C2PYBVsp.esm.js → selfieErrorUtils-UiQ46EBa.esm.js} +30 -4
  178. package/dist/{selfieManager-DwlCppg0.d.ts → selfieManager-4RRLi21P.d.ts} +8 -11
  179. package/dist/{selfieManager-Bj6B2ZVy.esm.js → selfieManager-B-2c1n_x.esm.js} +5 -5
  180. package/dist/selfieStateMachine-Bzx41R8d.esm.js +69 -0
  181. package/dist/{session-BFdLgN4i.esm.js → session-3LmvAU4S.esm.js} +4 -5
  182. package/dist/session.d.ts +21 -11
  183. package/dist/session.esm.js +5 -5
  184. package/dist/{sessionInitializer-dlfDehHk.esm.js → sessionInitializer-BFk33E67.esm.js} +187 -68
  185. package/dist/{setup-BIAtLa8k.esm.js → setup-BWG-hivt.esm.js} +226 -100
  186. package/dist/{setup-BgoWtvIS.d.ts → setup-Cv-JM9QC.d.ts} +63 -69
  187. package/dist/signature.esm.js +2 -2
  188. package/dist/{signatureManager-Ca43yhwk.esm.js → signatureManager-B72np4ZO.esm.js} +2 -2
  189. package/dist/{signatureStateMachine-K1LMRrxG.esm.js → signatureStateMachine-ce_XMA3l.esm.js} +1 -1
  190. package/dist/{src-0Jurt29N.esm.js → src-35ekGRzK.esm.js} +1 -1
  191. package/dist/{stats-B0nFKawG.esm.js → stats-CZcy2J53.esm.js} +1 -1
  192. package/dist/stats.esm.js +1 -1
  193. package/dist/{trueSightService---iW2KKJ.esm.js → trueSightService-BN-Hzw82.esm.js} +7 -7
  194. package/dist/trust-graph.esm.js +1 -1
  195. package/dist/{types-BX_XkMsQ2.d.ts → types-9_esGTPj.d.ts} +1 -1
  196. package/dist/types-BT_Oalip.d.ts +1 -0
  197. package/dist/{types-DelMqZLe.d.ts → types-BjSly8cp.d.ts} +1 -1
  198. package/dist/{types-Hmd7U0JA.d.ts → types-Bnl58jUQ.d.ts} +6 -85
  199. package/dist/types-ChAowIxT.d.ts +6 -0
  200. package/dist/{types-DVmXIdzW.d.ts → types-D0gekt4U.d.ts} +38 -5
  201. package/dist/types-DgDvvzg0.d.ts +10 -0
  202. package/dist/{types-KPvmag_B.d.ts → types-Do5rEXij.d.ts} +7 -4
  203. package/dist/{types-Bdf8_LYB2.d.ts → types-byBHOzCG2.d.ts} +305 -25
  204. package/dist/video-selfie.d.ts +59 -35
  205. package/dist/video-selfie.esm.js +510 -601
  206. package/dist/{videoSelfieCameraWarmer-NEhFZvWx.esm.js → videoSelfieCameraWarmer-B8PcYqmz.esm.js} +14 -153
  207. package/dist/videoSelfieFlowModuleMachine-BUe2uACW.esm.js +32 -0
  208. package/dist/{videoSelfieStepDetector-D3oo2ofo.d.ts → videoSelfieStepDetector-Co0Gu2k2.d.ts} +59 -13
  209. package/dist/virtualCameraCheck-Cjab7FTI.esm.js +48 -0
  210. package/dist/warmup-CUUnwYxe.esm.js +714 -0
  211. package/dist/warmup-Cis2p6O0.d.ts +128 -0
  212. package/dist/wasm.d.ts +30 -6
  213. package/dist/wasm.esm.js +36 -4
  214. package/dist/{wasmDsFlagSync-BqUCwLY8.esm.js → wasmDsFlagSync-B2e8p268.esm.js} +2 -2
  215. package/dist/{wasmWebClient-DM8lkb0z.esm.js → wasmWebClient-B7baE-Wf.esm.js} +358 -28
  216. package/dist/watchlist-for-business.d.ts +2 -78
  217. package/dist/watchlist-for-business.esm.js +3 -102
  218. package/dist/watchlist.esm.js +2 -2
  219. package/dist/watchlistForBusinessManager-CIMkpEhu.esm.js +107 -0
  220. package/dist/watchlistForBusinessManager-CsnJnG-C.d.ts +99 -0
  221. package/dist/{watchlistForBusinessStateMachine-CxFnlshm.esm.js → watchlistForBusinessStateMachine-CJ-MvUre.esm.js} +13 -6
  222. package/dist/{watchlistManager-LoNZH9qm.esm.js → watchlistManager-CixcLNDT.esm.js} +2 -2
  223. package/dist/{watchlistStateMachine-DIKQDoUT.esm.js → watchlistStateMachine-CBqk2w-h.esm.js} +1 -1
  224. package/dist/workflow.d.ts +12 -8
  225. package/dist/workflow.esm.js +48 -39
  226. package/package.json +4 -10
  227. package/dist/BrowserStorageProvider-k-FDkC4W.esm.js +0 -67
  228. package/dist/FaceDetectionProvider-Mh6q3EbA.d.ts +0 -349
  229. package/dist/IFaceAvatarCapability-BrL19G0s.d.ts +0 -23
  230. package/dist/IStorageCapability-ORkQfK3F.d.ts +0 -242
  231. package/dist/OpenViduRecordingProvider-Du98qevC.esm.js +0 -85
  232. package/dist/createFaceAvatar-BEj18KXi.d.ts +0 -50
  233. package/dist/document-upload.d.ts +0 -325
  234. package/dist/document-upload.esm.js +0 -197
  235. package/dist/electronicSignatureManager-CcUXQZS7.d.ts +0 -1300
  236. package/dist/faceCaptureSetup-Cd-04W_X.esm.js +0 -863
  237. package/dist/getBrowser-Cb8Zgrgp.esm.js +0 -7
  238. package/dist/getParsedUserAgent-pJjATANs.esm.js +0 -1622
  239. package/dist/governmentValidationStateMachine-CK9DrZXX.esm.js +0 -226
  240. package/dist/idCaptureDefaults-WeHbQM7W.esm.js +0 -225
  241. package/dist/idCaptureStateMachine-kZ5OpdfM.esm.js +0 -3342
  242. package/dist/lib-DAyUtOTj.esm.js +0 -12420
  243. package/dist/manualReviewService-D4IkipnN.esm.js +0 -15
  244. package/dist/mediaRecorderOptions-dALSV8af.esm.js +0 -40
  245. package/dist/onDeviceFaceResults-CUHwyZT4.esm.js +0 -646
  246. package/dist/openviduLazy-CCDpFWg1.esm.js +0 -10
  247. package/dist/recordingService-3NSENVwp.esm.js +0 -329
  248. package/dist/safeStorage-Ep56I-f_.esm.js +0 -982
  249. package/dist/selfieStateMachine-CHV_WNst.esm.js +0 -55
  250. package/dist/trueSight-B_icM8r2.esm.js +0 -1
  251. package/dist/types-EELWyWpd.d.ts +0 -6
  252. package/dist/types-Vb4P9ovf.d.ts +0 -22
  253. package/dist/warmup-Dv2alr2-.d.ts +0 -82
  254. package/dist/wasmDefaults-DTUrftxR.esm.js +0 -125
  255. package/dist/{Face2DProvider-UUQt_vRC.esm.js → Face2DProvider-BF48sz5c.esm.js} +1 -1
  256. package/dist/{PrivacyLensProvider-D8PS7AJa.esm.js → PrivacyLensProvider-EwnC_C5n.esm.js} +1 -1
  257. /package/dist/{types-BfgmV7s72.d.ts → types-BfgmV7s7.d.ts} +0 -0
  258. /package/dist/{types-CJ7Yl9K-2.d.ts → types-CJ7Yl9K-.d.ts} +0 -0
@@ -0,0 +1,264 @@
1
+ import { t as api } from "./api-Bx3gKW_y.esm.js";
2
+ import { n as eventModuleNames, o as createManagerInstrumentation } from "./events-ijlbX_Wx.esm.js";
3
+ import { t as topLevelStateName } from "./topLevelStateName-B5i2avbh.esm.js";
4
+ import { t as endpoints } from "./endpoints-B-3Q-LUw.esm.js";
5
+ import { i as assign, s as createActor, t as setup, u as createManager } from "./xstate.esm-BuFLFuzz.esm.js";
6
+ import { n as fromPromise } from "./xstate-actors.esm-BXeQ-Ucz.esm.js";
7
+ import { t as isoDateToMs } from "./dateUtils-CvG0FvK8.esm.js";
8
+ //#region src/modules/custom-fields/customFieldsServices.ts
9
+ async function submitCustomFields(params, signal) {
10
+ const res = await api.post(endpoints.addCustomFields, params.fields, { signal });
11
+ if (!res.ok) throw new Error(`POST ${endpoints.addCustomFields} failed: ${res.status} ${res.statusText}`);
12
+ return res.data;
13
+ }
14
+ //#endregion
15
+ //#region src/modules/custom-fields/customFieldsStateMachine.ts
16
+ const REQUIRED_FIELD_ERROR = "dynamicForms.fieldRequired";
17
+ function transformFields(fields, customFields) {
18
+ const result = {};
19
+ for (const [key, value] of Object.entries(fields)) if (customFields.find((f) => f.name === key)?.type === "DATE" && typeof value === "string" && value !== "") result[key] = isoDateToMs(value);
20
+ else result[key] = value;
21
+ return result;
22
+ }
23
+ function isFormComplete(fields, customFields) {
24
+ return customFields.every((field) => {
25
+ if (field.type === "BOOLEAN") return true;
26
+ const value = fields[field.name];
27
+ return value !== void 0 && value !== "";
28
+ });
29
+ }
30
+ function validateRequiredFields(fields, customFields) {
31
+ const errors = {};
32
+ for (const field of customFields) {
33
+ if (field.type === "BOOLEAN") continue;
34
+ const value = fields[field.name];
35
+ if (value === void 0 || value === "") errors[field.name] = REQUIRED_FIELD_ERROR;
36
+ }
37
+ return Object.keys(errors).length > 0 ? errors : void 0;
38
+ }
39
+ const customFieldsMachine = setup({
40
+ types: {
41
+ context: {},
42
+ events: {},
43
+ input: {}
44
+ },
45
+ actors: { submitFields: fromPromise(async ({ input, signal }) => {
46
+ return submitCustomFields({ fields: transformFields(input.fields, input.customFields) }, signal);
47
+ }) },
48
+ actions: {
49
+ setField: assign(({ context, event }) => {
50
+ const e = event;
51
+ const validationErrors = { ...context.validationErrors };
52
+ delete validationErrors[e.name];
53
+ return {
54
+ fields: {
55
+ ...context.fields,
56
+ [e.name]: e.value
57
+ },
58
+ validationErrors: Object.keys(validationErrors).length > 0 ? validationErrors : void 0
59
+ };
60
+ }),
61
+ setValidationErrors: assign(({ context }) => ({ validationErrors: validateRequiredFields(context.fields, context.config.customFields) })),
62
+ markSuccess: assign({ result: "success" }),
63
+ markFailed: assign({ result: "failed" })
64
+ },
65
+ guards: {
66
+ apiSucceeded: ({ event }) => event.output.success,
67
+ isFormComplete: ({ context }) => isFormComplete(context.fields, context.config.customFields)
68
+ }
69
+ }).createMachine({
70
+ id: "customFields",
71
+ initial: "idle",
72
+ context: ({ input }) => ({
73
+ config: input.config,
74
+ fields: {},
75
+ validationErrors: void 0,
76
+ result: null
77
+ }),
78
+ states: {
79
+ idle: { on: { LOAD: { target: "inputting" } } },
80
+ inputting: { on: {
81
+ FIELD_CHANGED: { actions: "setField" },
82
+ SUBMIT: [{
83
+ guard: "isFormComplete",
84
+ target: "submitting"
85
+ }, { actions: "setValidationErrors" }]
86
+ } },
87
+ submitting: { invoke: {
88
+ id: "submitFields",
89
+ src: "submitFields",
90
+ input: ({ context }) => ({
91
+ fields: context.fields,
92
+ customFields: context.config.customFields
93
+ }),
94
+ onDone: [{
95
+ target: "success",
96
+ guard: "apiSucceeded"
97
+ }, {
98
+ target: "finished",
99
+ actions: "markFailed"
100
+ }],
101
+ onError: {
102
+ target: "finished",
103
+ actions: "markFailed"
104
+ }
105
+ } },
106
+ success: { after: { 3e3: {
107
+ target: "finished",
108
+ actions: "markSuccess"
109
+ } } },
110
+ finished: { type: "final" }
111
+ }
112
+ });
113
+ //#endregion
114
+ //#region src/modules/custom-fields/customFieldsActor.ts
115
+ function createCustomFieldsActor(options) {
116
+ return createActor(customFieldsMachine, { input: { config: options.config } }).start();
117
+ }
118
+ //#endregion
119
+ //#region src/modules/custom-fields/customFieldsManager.ts
120
+ /**
121
+ * Maps a custom-fields state-machine snapshot to the exact Figma "Tracked
122
+ * Events" screen name. Returned strings are the Figma-verbatim absolute
123
+ * analytics path emitted as-is on `event.screen` by
124
+ * `createManagerInstrumentation`'s `getEventScreenName` path. See
125
+ * `docs/patterns/INSTRUMENTATION.md`.
126
+ *
127
+ * Source of truth: Custom Fields Figma file → Tracked Events canvas
128
+ * (`https://www.figma.com/design/Fb4Jp6kal8clAD05Kh6l4e/Custom-fields---Latest-Design?node-id=2026-30075`).
129
+ * The canvas mixes two casings — sections name the input surfaces
130
+ * `Customfield.{empty,filled}` (capital `C`) and the post-input surfaces
131
+ * `customfield.{processing,complete}` (lowercase `c`). Both spellings are
132
+ * preserved verbatim as Figma is the source of truth.
133
+ *
134
+ * State → screen mapping rationale:
135
+ *
136
+ * - `idle`/`inputting` collapse to `Customfield.empty` — the SM stays in
137
+ * `inputting` throughout typing (field-level `FIELD_CHANGED` events are
138
+ * context-only and don't fire a new `screenOpened`). The Figma
139
+ * `Customfield.filled` surface is therefore a UI sub-state of `inputting`,
140
+ * not a discrete SM state, and collapses onto the section's primary
141
+ * `Customfield.empty` screen.
142
+ * - `submitting` → `customfield.processing` — submit in-flight.
143
+ * - `success` → `customfield.complete` — happy-path success surface (auto-
144
+ * advances to `finished` after 3 s).
145
+ * - `finished` is intentionally unmapped: it is dual-outcome (success or
146
+ * failed — failures route here with `result: 'failed'` since the machine
147
+ * has no `error` state) and Figma defines no failure screen. Mapping
148
+ * `finished` onto `customfield.complete` would mis-report failures, so the
149
+ * adapter falls back to the generic `<module>.finished` default.
150
+ */
151
+ function getCustomFieldsScreenName(snapshot) {
152
+ const stateName = topLevelStateName(snapshot.value);
153
+ if (stateName === void 0) return void 0;
154
+ switch (stateName) {
155
+ case "idle":
156
+ case "inputting": return "Customfield.empty";
157
+ case "submitting": return "customfield.processing";
158
+ case "success": return "customfield.complete";
159
+ default: return;
160
+ }
161
+ }
162
+ function toDisplayLabel(field) {
163
+ if (field.alias) return field.alias;
164
+ return field.name.replace(/([A-Z])/g, " $1").replace(/^./, (s) => s.toUpperCase());
165
+ }
166
+ function mapState(snapshot) {
167
+ const typedSnapshot = snapshot;
168
+ const { context } = typedSnapshot;
169
+ if (typedSnapshot.matches("idle")) return { status: "idle" };
170
+ if (typedSnapshot.matches("inputting")) return {
171
+ status: "inputting",
172
+ title: context.config.title,
173
+ customFields: context.config.customFields.map((f) => ({
174
+ ...f,
175
+ label: toDisplayLabel(f)
176
+ })),
177
+ validationErrors: context.validationErrors,
178
+ canSubmit: Object.keys(context.validationErrors ?? {}).length === 0
179
+ };
180
+ if (typedSnapshot.matches("submitting")) return {
181
+ status: "submitting",
182
+ title: context.config.title
183
+ };
184
+ if (typedSnapshot.matches("success")) return { status: "success" };
185
+ return {
186
+ status: "finished",
187
+ result: typedSnapshot.context.result
188
+ };
189
+ }
190
+ function createApi({ actor }) {
191
+ return {
192
+ /**
193
+ * Initializes the custom fields flow.
194
+ * Transitions from 'idle' to 'inputting'.
195
+ * Must be called before any other method.
196
+ */
197
+ load() {
198
+ actor.send({ type: "LOAD" });
199
+ },
200
+ /**
201
+ * Updates the value of a single field.
202
+ * Should be called when state is 'inputting'.
203
+ *
204
+ * @param name - The field name (matches CustomField.name)
205
+ * @param value - The field value (string, number, or boolean)
206
+ */
207
+ setField(name, value) {
208
+ actor.send({
209
+ type: "FIELD_CHANGED",
210
+ name,
211
+ value
212
+ });
213
+ },
214
+ /**
215
+ * Submits all custom field values to the backend.
216
+ * Transitions to 'submitting', then 'finished' regardless of outcome.
217
+ */
218
+ submit() {
219
+ actor.send({ type: "SUBMIT" });
220
+ }
221
+ };
222
+ }
223
+ /**
224
+ * Creates a custom fields manager for headless or UI-driven usage.
225
+ *
226
+ * @param options - Configuration options
227
+ * @param options.config - Custom fields configuration (title + field definitions)
228
+ *
229
+ * @returns Custom fields manager with state, API methods, and subscription
230
+ *
231
+ * @example Headless usage
232
+ * ```typescript
233
+ * const manager = createCustomFieldsManager({
234
+ * config: {
235
+ * title: 'Additional Information',
236
+ * customFields: [{ name: 'company', alias: 'Company', type: 'STRING' }],
237
+ * },
238
+ * });
239
+ *
240
+ * manager.subscribe((state) => console.log(state.status));
241
+ * manager.load();
242
+ * manager.setField('company', 'Incode');
243
+ * manager.submit();
244
+ * manager.stop();
245
+ * ```
246
+ */
247
+ function createCustomFieldsManager(options) {
248
+ return createManager({
249
+ actor: createCustomFieldsActor(options),
250
+ mapState,
251
+ createApi,
252
+ instrumentation: createManagerInstrumentation(eventModuleNames.customFields, { getEventScreenName: getCustomFieldsScreenName })
253
+ });
254
+ }
255
+ function createCustomFieldsManagerFromActor(actor) {
256
+ return createManager({
257
+ actor,
258
+ mapState,
259
+ createApi,
260
+ instrumentation: createManagerInstrumentation(eventModuleNames.customFields, { getEventScreenName: getCustomFieldsScreenName })
261
+ });
262
+ }
263
+ //#endregion
264
+ export { createCustomFieldsManagerFromActor as n, customFieldsMachine as r, createCustomFieldsManager as t };
@@ -0,0 +1,73 @@
1
+ import { n as eventModuleNames, o as createManagerInstrumentation } from "./events-ijlbX_Wx.esm.js";
2
+ import { t as topLevelStateName } from "./topLevelStateName-B5i2avbh.esm.js";
3
+ import { s as createActor, u as createManager } from "./xstate.esm-BuFLFuzz.esm.js";
4
+ import { t as customWatchlistMachine } from "./customWatchlistStateMachine-DOQou6TW.esm.js";
5
+ //#region src/modules/custom-watchlist/customWatchlistActor.ts
6
+ function createCustomWatchlistActor() {
7
+ return createActor(customWatchlistMachine).start();
8
+ }
9
+ //#endregion
10
+ //#region src/modules/custom-watchlist/customWatchlistManager.ts
11
+ /**
12
+ * Maps a Custom Watchlist state-machine snapshot to the exact Figma
13
+ * "Tracked Events" screen name. Source: Watchlist | Custom Watchlist
14
+ * Figma file (`https://www.figma.com/design/Xm4BgXotNwdi5iRdHTIX0N/Watchlist-%7C-Custom-Watchlist----Latest-Design?node-id=3031-82920`).
15
+ * Family is `watchlist.*`, shared with the global watchlist manager — both
16
+ * keep their own module token (`watchlist` vs `customWatchlist`) per the
17
+ * AdSign/QSign precedent.
18
+ *
19
+ * `idle` and `finished` are intentionally unmapped — the Figma canvas does
20
+ * not define screens for them; `finished` collapses into `moduleClosed`.
21
+ */
22
+ function getCustomWatchlistScreenName(snapshot) {
23
+ const stateName = topLevelStateName(snapshot.value);
24
+ if (stateName === void 0) return void 0;
25
+ switch (stateName) {
26
+ case "processing": return "watchlist.processing";
27
+ case "success": return "watchlist.success";
28
+ default: return;
29
+ }
30
+ }
31
+ function mapState(snapshot) {
32
+ const typedSnapshot = snapshot;
33
+ if (typedSnapshot.matches("processing")) return { status: "processing" };
34
+ if (typedSnapshot.matches("success")) return { status: "success" };
35
+ if (typedSnapshot.matches("finished")) return {
36
+ status: "finished",
37
+ result: typedSnapshot.context.result ?? "skipped"
38
+ };
39
+ return { status: "idle" };
40
+ }
41
+ function createApi({ actor }) {
42
+ return {
43
+ /**
44
+ * Kicks off the custom watchlist check.
45
+ * Transitions from 'idle' to 'processing'.
46
+ */
47
+ load() {
48
+ actor.send({ type: "LOAD" });
49
+ } };
50
+ }
51
+ /**
52
+ * Creates a custom watchlist manager for headless or UI-driven usage.
53
+ *
54
+ * @example Headless usage
55
+ * ```typescript
56
+ * const manager = createCustomWatchlistManager();
57
+ * manager.subscribe((state) => console.log(state.status));
58
+ * manager.load();
59
+ * ```
60
+ */
61
+ function createCustomWatchlistManager() {
62
+ return createCustomWatchlistManagerFromActor(createCustomWatchlistActor());
63
+ }
64
+ function createCustomWatchlistManagerFromActor(actor) {
65
+ return createManager({
66
+ actor,
67
+ mapState,
68
+ createApi,
69
+ instrumentation: createManagerInstrumentation(eventModuleNames.customWatchList, { getEventScreenName: getCustomWatchlistScreenName })
70
+ });
71
+ }
72
+ //#endregion
73
+ export { createCustomWatchlistManagerFromActor as n, createCustomWatchlistManager as t };
@@ -0,0 +1,64 @@
1
+ import { i as ActorRefFrom } from "./spawn-D9jgw9pW.js";
2
+ import { t as Manager } from "./Manager-CQQ99QOI.js";
3
+ import "./Actor-iTq7YY48.js";
4
+ //#region src/modules/custom-watchlist/customWatchlistStateMachine.d.ts
5
+ type CustomWatchlistResult = 'success' | 'skipped';
6
+ declare const customWatchlistMachine: any;
7
+ type CustomWatchlistMachine = typeof customWatchlistMachine;
8
+ //#endregion
9
+ //#region src/modules/custom-watchlist/customWatchlistActor.d.ts
10
+ type CustomWatchlistActor = ActorRefFrom<CustomWatchlistMachine>;
11
+ //#endregion
12
+ //#region src/modules/custom-watchlist/customWatchlistManager.d.ts
13
+ type CustomWatchlistIdleState = {
14
+ status: 'idle';
15
+ };
16
+ type CustomWatchlistProcessingState = {
17
+ status: 'processing';
18
+ };
19
+ type CustomWatchlistSuccessState = {
20
+ status: 'success';
21
+ };
22
+ type CustomWatchlistFinishedState = {
23
+ status: 'finished';
24
+ result: CustomWatchlistResult;
25
+ };
26
+ /**
27
+ * Union of all possible custom watchlist manager states.
28
+ *
29
+ * @example
30
+ * ```typescript
31
+ * const state = customWatchlistManager.getState();
32
+ * if (state.status === 'finished') {
33
+ * console.log('Custom watchlist check complete');
34
+ * }
35
+ * ```
36
+ */
37
+ type CustomWatchlistState = CustomWatchlistIdleState | CustomWatchlistProcessingState | CustomWatchlistSuccessState | CustomWatchlistFinishedState;
38
+ /**
39
+ * Creates a custom watchlist manager for headless or UI-driven usage.
40
+ *
41
+ * @example Headless usage
42
+ * ```typescript
43
+ * const manager = createCustomWatchlistManager();
44
+ * manager.subscribe((state) => console.log(state.status));
45
+ * manager.load();
46
+ * ```
47
+ */
48
+ declare function createCustomWatchlistManager(): Manager<CustomWatchlistState> & {
49
+ /**
50
+ * Kicks off the custom watchlist check.
51
+ * Transitions from 'idle' to 'processing'.
52
+ */
53
+ load(): void;
54
+ };
55
+ declare function createCustomWatchlistManagerFromActor(actor: CustomWatchlistActor): Manager<CustomWatchlistState> & {
56
+ /**
57
+ * Kicks off the custom watchlist check.
58
+ * Transitions from 'idle' to 'processing'.
59
+ */
60
+ load(): void;
61
+ };
62
+ type CustomWatchlistManager = ReturnType<typeof createCustomWatchlistManager>;
63
+ //#endregion
64
+ export { CustomWatchlistActor as a, createCustomWatchlistManagerFromActor as i, CustomWatchlistState as n, customWatchlistMachine as o, createCustomWatchlistManager as r, CustomWatchlistManager as t };
@@ -1,5 +1,5 @@
1
1
  import { t as api } from "./api-Bx3gKW_y.esm.js";
2
- import { t as endpoints } from "./endpoints-CCzL3XD_.esm.js";
2
+ import { t as endpoints } from "./endpoints-B-3Q-LUw.esm.js";
3
3
  import { i as assign, t as setup } from "./xstate.esm-BuFLFuzz.esm.js";
4
4
  import { n as fromPromise } from "./xstate-actors.esm-BXeQ-Ucz.esm.js";
5
5
  //#region src/modules/custom-watchlist/customWatchlistServices.ts
@@ -1,17 +1,15 @@
1
- import { r as WasmUtilProvider } from "./safeStorage-Ep56I-f_.esm.js";
2
- import { t as api } from "./api-Bx3gKW_y.esm.js";
3
- import { l as trueSightLog } from "./trueSightService---iW2KKJ.esm.js";
4
- import { g as getThumbmarkId, h as IpifyProvider, n as getFingerprintEnabled, p as isBrowserSimulation, t as getDisableIpify, v as BrowserEnvironmentProvider } from "./sessionInitializer-dlfDehHk.esm.js";
5
- import "./trueSight-B_icM8r2.esm.js";
6
- import { t as addDeviceStats } from "./stats-B0nFKawG.esm.js";
7
- import { t as getParsedUserAgent } from "./getParsedUserAgent-pJjATANs.esm.js";
8
- import { t as getUserAgent } from "./getBrowser-Cb8Zgrgp.esm.js";
9
- import { t as setWasmDsFlagSync } from "./wasmDsFlagSync-BqUCwLY8.esm.js";
10
- import { t as MotionSensorProvider } from "./MotionSensorProvider-DGiV77J_.esm.js";
11
- import { a as stopCameraStream, r as requestCameraAccess } from "./camera-_2sXMXiF.esm.js";
12
- import { t as IncodeCanvas } from "./canvas-E1zGkel4.esm.js";
1
+ import { r as WasmUtilProvider } from "./safeStorage-B-trhxg6.esm.js";
2
+ import { l as trueSightLog } from "./trueSightService-BN-Hzw82.esm.js";
3
+ import { _ as IpifyProvider, b as BrowserEnvironmentProvider, h as isBrowserSimulation, n as getFingerprintEnabled, t as getDisableIpify, v as getThumbmarkId } from "./sessionInitializer-BFk33E67.esm.js";
4
+ import { t as SDK_VERSION } from "./sdkVersion-BZh6dj53.esm.js";
5
+ import { t as getParsedUserAgent } from "./getParsedUserAgent-B2iFDql1.esm.js";
6
+ import { t as getUserAgent } from "./getBrowser-CBiibsL-.esm.js";
7
+ import { t as setWasmDsFlagSync } from "./wasmDsFlagSync-B2e8p268.esm.js";
8
+ import { t as MotionSensorProvider } from "./MotionSensorProvider-BgTYwg9L.esm.js";
9
+ import { i as requestCameraAccess, o as stopCameraStream } from "./camera-sIa9ceW2.esm.js";
13
10
  import { t as createHiddenVideoElement } from "./video-BtSWtHy1.esm.js";
14
11
  import { t as getDeviceInfo } from "./getDeviceClass-CeBiEayS.esm.js";
12
+ import { n as runVirtualCameraCheck } from "./virtualCameraCheck-Cjab7FTI.esm.js";
15
13
  //#region src/internal/deepsight/metadataService.ts
16
14
  function createMetadataService(wasmUtil, visibility, browserEnv, ipLookup) {
17
15
  return {
@@ -134,49 +132,17 @@ function createMotionStatusService(motionSensor) {
134
132
  };
135
133
  }
136
134
  //#endregion
137
- //#region src/internal/virtualCameraCheck.ts
138
- /**
139
- * Sends the analyzed frame image to the backend for logging.
140
- */
141
- async function logFrame({ source, base64Image, token }) {
142
- try {
143
- return (await api.post("/omni/log/frame/v2", { base64Image }, {
144
- query: { source },
145
- headers: { "X-Incode-Hardware-Id": token }
146
- })).data;
147
- } catch {
148
- return;
149
- }
150
- }
151
- /**
152
- * Runs the WASM virtual camera check and handles logging and stats.
153
- */
154
- async function runVirtualCameraCheck({ wasmUtil, source, token }) {
155
- const output = {
156
- canvas: null,
157
- itr: null,
158
- skipped: null
159
- };
160
- await wasmUtil.poc(output);
161
- if (output.skipped !== false) return;
162
- if (output.canvas && token) {
163
- const base64Image = new IncodeCanvas(output.canvas).getBase64Image();
164
- if (base64Image) await logFrame({
165
- source,
166
- base64Image,
167
- token
168
- });
169
- }
170
- if (output.itr === true) {
171
- addDeviceStats({ virtualCameraDetected: true });
172
- wasmUtil.setZc("FAIL");
173
- } else if (output.itr === false) wasmUtil.setZc("PASS");
174
- }
175
- //#endregion
176
135
  //#region src/internal/deepsight/deepsightService.ts
177
136
  function createDeepsightService(config) {
178
137
  const metadata = createMetadataService(config.wasmUtil, config.visibility, config.browserEnv, config.ipLookup);
179
138
  const motion = createMotionStatusService(config.motionSensor);
139
+ const finalizeCaptureMetadata = () => {
140
+ metadata.preparePipelineState();
141
+ const motionStatus = motion.check();
142
+ metadata.setMotionStatus(motionStatus);
143
+ metadata.getCheck();
144
+ metadata.setBackgroundMode(false);
145
+ };
180
146
  return {
181
147
  metadata,
182
148
  motion,
@@ -190,10 +156,6 @@ function createDeepsightService(config) {
190
156
  async startMotionSensors() {
191
157
  await motion.start();
192
158
  },
193
- async primeWasmMotionSensor() {
194
- await config.wasmUtil.rsp();
195
- config.wasmUtil.ssl();
196
- },
197
159
  stopMotionSensors() {
198
160
  motion.stop();
199
161
  },
@@ -221,11 +183,11 @@ function createDeepsightService(config) {
221
183
  async analyzeFrame(imageData) {
222
184
  await motion.start();
223
185
  await metadata.analyzeFrame(imageData);
224
- metadata.preparePipelineState();
225
- const motionStatus = motion.check();
226
- metadata.setMotionStatus(motionStatus);
227
- metadata.getCheck();
228
- metadata.setBackgroundMode(false);
186
+ finalizeCaptureMetadata();
187
+ },
188
+ async finalizeProtectedCaptureMetadata() {
189
+ await motion.start();
190
+ finalizeCaptureMetadata();
229
191
  },
230
192
  getMetadata() {
231
193
  return metadata.getMetadata();
@@ -267,7 +229,6 @@ var VisibilityProvider = class {
267
229
  };
268
230
  //#endregion
269
231
  //#region src/internal/deepsight/deepsightLoader.ts
270
- const SDK_VERSION = "2.0.0";
271
232
  async function loadDeepsightSession(options) {
272
233
  try {
273
234
  return await loadDeepsightSessionInternal(options);
@@ -278,18 +239,13 @@ async function loadDeepsightSession(options) {
278
239
  }
279
240
  async function loadDeepsightSessionInternal(options) {
280
241
  setWasmDsFlagSync(options.ds === true);
281
- const wasmUtil = await WasmUtilProvider.getInstance();
282
- const visibility = new VisibilityProvider();
283
- const browserEnv = new BrowserEnvironmentProvider();
284
- const motionSensor = new MotionSensorProvider();
285
- const ipLookup = new IpifyProvider();
286
242
  const service = createDeepsightService({
287
243
  sdkVersion: SDK_VERSION,
288
- wasmUtil,
289
- visibility,
290
- browserEnv,
291
- motionSensor,
292
- ipLookup
244
+ wasmUtil: await WasmUtilProvider.getInstance(),
245
+ visibility: new VisibilityProvider(),
246
+ browserEnv: new BrowserEnvironmentProvider(),
247
+ motionSensor: new MotionSensorProvider(),
248
+ ipLookup: new IpifyProvider()
293
249
  });
294
250
  const disableIpify = options.disableIpify ?? getDisableIpify();
295
251
  const disableFingerprint = options.disableFingerprint ?? !getFingerprintEnabled();
package/dist/device.d.ts CHANGED
@@ -27,9 +27,32 @@ declare class ScreenOrientationProvider implements IScreenOrientationCapability
27
27
  }
28
28
  //#endregion
29
29
  //#region src/internal/device/getBrowser.d.ts
30
- type Browser = 'chrome' | 'firefox' | 'safari' | 'edge' | 'opera' | 'other' | 'samsung_browser';
30
+ type Browser = 'chrome' | 'firefox' | 'safari' | 'edge' | 'opera' | 'other' | 'samsung_browser' | 'miui_browser';
31
31
  declare function getBrowser(): Browser;
32
32
  //#endregion
33
+ //#region src/internal/device/browserSupportClassification.d.ts
34
+ /** iOS/iPadOS/macOS — the only platforms where Safari is a supported option. */
35
+ declare function isApplePlatform(): boolean;
36
+ /**
37
+ * Whether capture/WASM are known to work in the current browser.
38
+ *
39
+ * Native Android and iOS WebViews are supported; third-party in-app browsers
40
+ * are not, on either platform. Outside a WebView, only Chrome is supported on
41
+ * every platform and Safari is supported on Apple platforms.
42
+ *
43
+ * The rejections run first, because a browser that is unsupported on its own is
44
+ * still unsupported when it hosts the page as a WebView (ENG-51674).
45
+ *
46
+ * Identity comes from the user agent, plus `navigator.brave`/`navigator.island`
47
+ * and Client Hint brands where available. `navigator.island` is load-bearing:
48
+ * Island can be configured (or itself strip) the "Island Browser" UA token and
49
+ * still report Chrome-only Client Hint brands, so the UA and brands alone are
50
+ * not sufficient (ENG-51674). A browser that spoofs a Chrome user agent, exposes
51
+ * no Client Hints, and identifies itself nowhere else cannot be distinguished
52
+ * here.
53
+ */
54
+ declare function isSupportedBrowser(): boolean;
55
+ //#endregion
33
56
  //#region src/internal/device/getDeviceClass.d.ts
34
57
  type DeviceClass = 'ios' | 'android' | 'desktop';
35
58
  declare function getDeviceClass(): DeviceClass;
@@ -51,4 +74,4 @@ type ScreenOrientationObserver = {
51
74
  };
52
75
  declare function createScreenOrientationObserver(provider: IScreenOrientationCapability, deviceClass: DeviceClass): ScreenOrientationObserver;
53
76
  //#endregion
54
- export { type Browser, type DeviceClass, type ScreenOrientationObserver, ScreenOrientationProvider, createScreenOrientationObserver, getBrowser, getDeviceClass, isDesktopDeviceEmulation, isDesktopOrEmulated, isIPad };
77
+ export { type Browser, type DeviceClass, type ScreenOrientationObserver, ScreenOrientationProvider, createScreenOrientationObserver, getBrowser, getDeviceClass, isApplePlatform, isDesktopDeviceEmulation, isDesktopOrEmulated, isIPad, isSupportedBrowser };