@incodetech/core 2.1.1 → 2.2.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 (328) hide show
  1. package/dist/{3dAvatarProvider-BwOmTMOy.esm.js → 3dAvatarProvider-g02DTFqT.esm.js} +811 -880
  2. package/dist/Actor-iTq7YY48.d.ts +1 -0
  3. package/dist/BrowserDiagnosticsCryptoProvider-BwGL3Lmi.esm.js +95 -0
  4. package/dist/BrowserLazyImportProvider-BhoA957O.esm.js +114 -0
  5. package/dist/{BrowserStorageProvider-CBHBhKQN.esm.js → BrowserStorageProvider-k-FDkC4W.esm.js} +2 -4
  6. package/dist/{BrowserTimerProvider-CHloo0eQ.esm.js → BrowserTimerProvider-BXhgNxLt.esm.js} +1 -2
  7. package/dist/{BrowserVisibilityObserverProvider-GBS6XSii.esm.js → BrowserVisibilityObserverProvider-BX1BiLDK.esm.js} +1 -2
  8. package/dist/Face2DProvider-UUQt_vRC.esm.js +437 -0
  9. package/dist/{createFaceAvatar-CpdYp9Iy.d.ts → FaceDetectionProvider-Mh6q3EbA.d.ts} +107 -159
  10. package/dist/IBrowserEnvironmentCapability-DEaRRk-R.esm.js +9 -0
  11. package/dist/IFaceAvatarCapability-BrL19G0s.d.ts +23 -0
  12. package/dist/IFeatureManagementCapability-DdEUp6tB.d.ts +1125 -0
  13. package/dist/IIdCaptureCapability-DHTT3FC2.d.ts +237 -0
  14. package/dist/IStorageCapability-ORkQfK3F.d.ts +242 -0
  15. package/dist/{ITimerCapability-DJ73P4RK.esm.js → ITimerCapability-DgdDzp8G.esm.js} +1 -2
  16. package/dist/{Manager-goNPc_h_.d.ts → Manager-CQQ99QOI.d.ts} +1 -0
  17. package/dist/{MotionSensorProvider-BHuHoYvJ.esm.js → MotionSensorProvider-DGiV77J_.esm.js} +2 -37
  18. package/dist/{OpenViduRecordingProvider-CK6A5kiU.esm.js → OpenViduRecordingProvider-Du98qevC.esm.js} +2 -4
  19. package/dist/PrivacyLensProvider-D8PS7AJa.esm.js +405 -0
  20. package/dist/StateMachine-EDpYWy0i.d.ts +6 -0
  21. package/dist/{StreamCanvasCapture-CAqUdVkM.esm.js → StreamCanvasCapture-D2XcXCZ4.esm.js} +2 -4
  22. package/dist/{addressSearch-D7msRieq.esm.js → addressSearch-DQyrvDQj.esm.js} +10 -21
  23. package/dist/ae-signature.d.ts +4 -6
  24. package/dist/ae-signature.esm.js +10 -11
  25. package/dist/antifraud.d.ts +1 -6
  26. package/dist/antifraud.esm.js +3 -8
  27. package/dist/{antifraudManager-5KA84wtF.esm.js → antifraudManager-B8Plzf7a.esm.js} +11 -8
  28. package/dist/{antifraudManager-DCiNI6np.d.ts → antifraudManager-BY36bS12.d.ts} +3 -3
  29. package/dist/{antifraudStateMachine-BQVw46N5.esm.js → antifraudStateMachine-r4VxSBS4.esm.js} +5 -7
  30. package/dist/api-Bx3gKW_y.esm.js +129 -0
  31. package/dist/{apiError-DkOXfFBu.esm.js → apiError-oiEnJIlk.esm.js} +25 -3
  32. package/dist/authentication.d.ts +3 -19
  33. package/dist/authentication.esm.js +3 -35
  34. package/dist/{authenticationManager-BeT6tNZm.d.ts → authenticationManager-BBMGTcwW.d.ts} +3 -4
  35. package/dist/{authenticationManager-BryLnSaF.esm.js → authenticationManager-Dq_tudSW.esm.js} +7 -10
  36. package/dist/{authenticationStateMachine-DbdxfGHx.esm.js → authenticationStateMachine-D4koAtP3.esm.js} +11 -15
  37. package/dist/avatar.d.ts +2 -2
  38. package/dist/avatar.esm.js +2 -3
  39. package/dist/avatar2dWarm-DqucNFX4.esm.js +1330 -0
  40. package/dist/avatarStats-CdUOb3VD.esm.js +136 -0
  41. package/dist/{backCameraStream-ChrMTJv-.esm.js → backCameraStream-CUeYm5eu.esm.js} +20 -8
  42. package/dist/browser-DlFgHpoC-DnyrCR8r.esm.js +1513 -0
  43. package/dist/callback-645_omgz.d.ts +133 -0
  44. package/dist/camera-_2sXMXiF.esm.js +140 -0
  45. package/dist/camera.d.ts +19 -2
  46. package/dist/camera.esm.js +2 -6
  47. package/dist/{canvas-Pi10hG_l.esm.js → canvas-E1zGkel4.esm.js} +1 -2
  48. package/dist/certificate-issuance.d.ts +34 -39
  49. package/dist/certificate-issuance.esm.js +4 -11
  50. package/dist/{certificateIssuanceStateMachine-DlZQT1_u.esm.js → certificateIssuanceStateMachine-COd7_l2T.esm.js} +7 -11
  51. package/dist/consent.d.ts +1 -4
  52. package/dist/consent.esm.js +3 -8
  53. package/dist/{consentManager-BwNu-uC-.esm.js → consentManager-BApTlfA0.esm.js} +5 -7
  54. package/dist/{consentManager-B4PMGXW-.d.ts → consentManager-uhDPdU6i.d.ts} +55 -61
  55. package/dist/{consentStateMachine-BOkVFiU7.esm.js → consentStateMachine-WD-S-Yhs.esm.js} +5 -7
  56. package/dist/{cpf-16m_cGAM.esm.js → cpf-BIADjddF.esm.js} +1 -2
  57. package/dist/createFaceAvatar-BEj18KXi.d.ts +50 -0
  58. package/dist/createFaceAvatar-DQKaRise.esm.js +103 -0
  59. package/dist/cross-document-data-match.d.ts +2 -26
  60. package/dist/cross-document-data-match.esm.js +2 -71
  61. package/dist/crossDocumentDataMatchManager-Dq8Z3SOg.d.ts +41 -0
  62. package/dist/crossDocumentDataMatchManager-OmYvyung.esm.js +84 -0
  63. package/dist/curp-validation.d.ts +1 -11
  64. package/dist/curp-validation.esm.js +3 -8
  65. package/dist/{curpValidationManager-CoqODZx5.d.ts → curpValidationManager-DVGr7Fq7.d.ts} +4 -6
  66. package/dist/{curpValidationManager-Cbji2inV.esm.js → curpValidationManager-UZxcrsrz.esm.js} +11 -7
  67. package/dist/{curpValidationStateMachine-Dlw4qfFb.esm.js → curpValidationStateMachine-9KwnqeoB.esm.js} +22 -14
  68. package/dist/custom-fields.d.ts +2 -5
  69. package/dist/custom-fields.esm.js +24 -11
  70. package/dist/custom-watchlist.d.ts +1 -3
  71. package/dist/custom-watchlist.esm.js +11 -10
  72. package/dist/{customWatchlistStateMachine-D8w0mNxm.esm.js → customWatchlistStateMachine-B_ey3TFj.esm.js} +5 -7
  73. package/dist/{dateUtils-BW6mBV6p.esm.js → dateUtils-CvG0FvK8.esm.js} +1 -2
  74. package/dist/{deepsightService-CViys6T4.esm.js → deepsightLoader-CWE0SvF1.esm.js} +68 -14
  75. package/dist/{deepsightService-BuTOFTr8.d.ts → deepsightService-DLVQS_RH.d.ts} +41 -2
  76. package/dist/device.d.ts +10 -2
  77. package/dist/device.esm.js +21 -21
  78. package/dist/document-capture.d.ts +3 -1816
  79. package/dist/document-capture.esm.js +3 -245
  80. package/dist/document-upload.d.ts +48 -55
  81. package/dist/document-upload.esm.js +8 -14
  82. package/dist/documentCaptureManager-B3t0ydtg.d.ts +2062 -0
  83. package/dist/documentCaptureManager-DszmcU-l.esm.js +296 -0
  84. package/dist/{documentCaptureStateMachine-BkTvU3yq.esm.js → documentCaptureStateMachine-D2jBwwVb.esm.js} +66 -40
  85. package/dist/dynamic-forms.d.ts +2 -4
  86. package/dist/dynamic-forms.esm.js +3 -9
  87. package/dist/{dynamicFormsManager-CHXUBNs4.esm.js → dynamicFormsManager-B-OmpJkU.esm.js} +48 -9
  88. package/dist/{dynamicFormsManager-CKZkE7Wo.d.ts → dynamicFormsManager-fhK0yINk.d.ts} +22 -46
  89. package/dist/{dynamicFormsStateMachine-DJ1HGZff.esm.js → dynamicFormsStateMachine-D_3oLtOE.esm.js} +161 -34
  90. package/dist/ekyb.d.ts +5 -137
  91. package/dist/ekyb.esm.js +4 -179
  92. package/dist/ekybManager-BJVp2ahf.esm.js +178 -0
  93. package/dist/ekybManager-Dzswb_b8.d.ts +114 -0
  94. package/dist/{ekybStateMachine-D9GzA4MW.esm.js → ekybStateMachine-BYcc9VaR.esm.js} +16 -193
  95. package/dist/ekyc.d.ts +2 -79
  96. package/dist/ekyc.esm.js +4 -154
  97. package/dist/ekycManager-BFpHbBoT.d.ts +97 -0
  98. package/dist/ekycManager-oTstTJuL.esm.js +156 -0
  99. package/dist/{ekycStateMachine-DnVRiu3s.esm.js → ekycStateMachine-DHvksnrr.esm.js} +141 -423
  100. package/dist/ekycUtils-Dew1rBG0.esm.js +223 -0
  101. package/dist/electronic-signature.d.ts +3 -5
  102. package/dist/electronic-signature.esm.js +2 -10
  103. package/dist/{electronicSignatureManager-DESRgObX.esm.js → electronicSignatureManager-CApcBEQd.esm.js} +47 -33
  104. package/dist/{index-36QX_21w.d.ts → electronicSignatureManager-CcUXQZS7.d.ts} +220 -251
  105. package/dist/email.d.ts +1 -5
  106. package/dist/email.esm.js +3 -10
  107. package/dist/{emailManager-CMS4q_r6.d.ts → emailManager-CADXW_9X.d.ts} +4 -7
  108. package/dist/{emailManager-B9Vrv3Ma.esm.js → emailManager-tE-YvNtS.esm.js} +76 -12
  109. package/dist/{emailStateMachine-CbmKFVSi.esm.js → emailStateMachine-Bm894MHB.esm.js} +7 -9
  110. package/dist/{endpoints-CwrFQfW7.esm.js → endpoints-CCzL3XD_.esm.js} +55 -6
  111. package/dist/{events-1wxZ97yf.esm.js → events-CxfNJVZW.esm.js} +43 -176
  112. package/dist/events.d.ts +28 -10
  113. package/dist/events.esm.js +2 -4
  114. package/dist/extensibility.d.ts +37 -37
  115. package/dist/extensibility.esm.js +31 -80
  116. package/dist/{externalFetch-hvmz_npP.esm.js → externalFetch-BKBThAUC.esm.js} +2 -4
  117. package/dist/face-match.d.ts +2 -225
  118. package/dist/face-match.esm.js +3 -173
  119. package/dist/{faceCaptureManagerFactory-C9TiGbkA.esm.js → faceCaptureManagerFactory-4VejGOQX.esm.js} +52 -31
  120. package/dist/{faceCaptureManagerFactory-DiJ64oem.d.ts → faceCaptureManagerFactory-BxWPpxyd.d.ts} +63 -24
  121. package/dist/{faceCaptureSetup-BqhqfFHL.esm.js → faceCaptureSetup-BB5KEtbV.esm.js} +57 -36
  122. package/dist/faceMatchManager-BXp2WUT-.esm.js +201 -0
  123. package/dist/faceMatchManager-BnvrZM2F.d.ts +268 -0
  124. package/dist/{faceMatchStateMachine-MDb30gCm.esm.js → faceMatchStateMachine-CJiO2yLO.esm.js} +14 -10
  125. package/dist/feature-management-DS_Nj5Gg.esm.js +615 -0
  126. package/dist/feature-management.d.ts +173 -0
  127. package/dist/feature-management.esm.js +2 -0
  128. package/dist/field-comparison.d.ts +1 -4
  129. package/dist/field-comparison.esm.js +2 -7
  130. package/dist/{fieldComparisonManager-OLKVsG2Z.d.ts → fieldComparisonManager-CBvEGxFx.d.ts} +3 -5
  131. package/dist/{fieldComparisonManager-Cw4uzD7S.esm.js → fieldComparisonManager-DhnYdYZ2.esm.js} +6 -11
  132. package/dist/fiscal-qr.d.ts +1 -6
  133. package/dist/fiscal-qr.esm.js +14 -29
  134. package/dist/flow-events.d.ts +2 -9
  135. package/dist/flow.d.ts +59 -21
  136. package/dist/flow.esm.js +132 -49
  137. package/dist/{flowCompletionService-B6P6_EF3.esm.js → flowCompletionService-Bt3wD28k.esm.js} +4 -6
  138. package/dist/flowServices-b0Pd4F1K.esm.js +620 -0
  139. package/dist/geolocation.d.ts +1 -4
  140. package/dist/geolocation.esm.js +3 -9
  141. package/dist/geolocationManager-Cz744E5S.d.ts +506 -0
  142. package/dist/{geolocationManager-CF6-NizA.esm.js → geolocationManager-DGwnL5lg.esm.js} +44 -16
  143. package/dist/{geolocationStateMachine-CD2XJs1b.esm.js → geolocationStateMachine-il6jz5DZ.esm.js} +53 -28
  144. package/dist/{getBrowser-1yNcfFZR.esm.js → getBrowser-Cb8Zgrgp.esm.js} +1 -2
  145. package/dist/getBrowser-DNrQeL4T.esm.js +16 -0
  146. package/dist/getDeviceClass-9y-kbVDw.esm.js +19 -0
  147. package/dist/{getDeviceClass-C-Dg6IsJ.esm.js → getDeviceClass-CeBiEayS.esm.js} +1 -2
  148. package/dist/getParsedUserAgent-pJjATANs.esm.js +1622 -0
  149. package/dist/government-validation.d.ts +3 -6
  150. package/dist/government-validation.esm.js +7 -13
  151. package/dist/{governmentValidationStateMachine-BE5wiQ7Y.esm.js → governmentValidationStateMachine-BYKYUdza.esm.js} +8 -11
  152. package/dist/home.d.ts +14 -22
  153. package/dist/home.esm.js +3 -8
  154. package/dist/http.d.ts +0 -1
  155. package/dist/http.esm.js +2 -4
  156. package/dist/id-ocr.d.ts +8 -7
  157. package/dist/id-ocr.esm.js +20 -9
  158. package/dist/id-selfie-flow.d.ts +179 -0
  159. package/dist/id-selfie-flow.esm.js +917 -0
  160. package/dist/id-verification.d.ts +2 -191
  161. package/dist/id-verification.esm.js +3 -43
  162. package/dist/id.d.ts +7 -18
  163. package/dist/id.esm.js +47 -53
  164. package/dist/{idCaptureDefaults-CZajItdO.esm.js → idCaptureDefaults-WeHbQM7W.esm.js} +54 -17
  165. package/dist/idCaptureManager-BjU-Wyow.d.ts +429 -0
  166. package/dist/{idCaptureManager-DASPUMtC.esm.js → idCaptureManager-DgohUfUQ.esm.js} +173 -34
  167. package/dist/idCaptureServices-RDiDS9tg.esm.js +396 -0
  168. package/dist/{idCaptureStateMachine-DZ2ZTSxu.esm.js → idCaptureStateMachine-DWocZD_m.esm.js} +438 -585
  169. package/dist/{idOcrManager-Tm4LzKR0.esm.js → idOcrManager-CvJZhmBR.esm.js} +4 -7
  170. package/dist/{idOcrManager-DLfAjDZn.d.ts → idOcrManager-DXc_xRN7.d.ts} +62 -229
  171. package/dist/{idOcrStateMachine-BJxZCxwS.esm.js → idOcrStateMachine-Bq_e3l4E.esm.js} +15 -20
  172. package/dist/idVerificationManager-BB4Pj_N6.d.ts +197 -0
  173. package/dist/idVerificationManager-CduNXhWd.esm.js +51 -0
  174. package/dist/{idVerificationStateMachine-DXN9WcdM.esm.js → idVerificationStateMachine-GEQWUPU2.esm.js} +5 -7
  175. package/dist/identity-reuse.d.ts +1 -4
  176. package/dist/identity-reuse.esm.js +3 -8
  177. package/dist/{identityReuseManager-LjkPvSQN.esm.js → identityReuseManager-D5vXknnJ.esm.js} +24 -7
  178. package/dist/{identityReuseManager-CLVOYxcp.d.ts → identityReuseManager-v2TH5g7e.d.ts} +38 -43
  179. package/dist/{identityReuseStateMachine-Bp-zONoV.esm.js → identityReuseStateMachine-AubRPhIi.esm.js} +6 -8
  180. package/dist/index-B8weJxmL.d.ts +1 -0
  181. package/dist/index-BKOWUhxG.d.ts +258 -0
  182. package/dist/{index-DrpWp15Z.d.ts → index-CLMF0QLQ.d.ts} +3 -3
  183. package/dist/index.d.ts +1 -3
  184. package/dist/index.esm.js +2 -15
  185. package/dist/{invokeOnCaptureCallback-CCS2Ruzi.esm.js → invokeOnCaptureCallback-1m1VJ3Q4.esm.js} +2 -4
  186. package/dist/{lib-Bjd6nOLG.esm.js → lib-DAyUtOTj.esm.js} +1510 -1589
  187. package/dist/mandatory-consent.d.ts +2 -10
  188. package/dist/mandatory-consent.esm.js +3 -8
  189. package/dist/{mandatoryConsentManager-DeBmOHcQ.d.ts → mandatoryConsentManager-B29kR0XA.d.ts} +60 -85
  190. package/dist/{mandatoryConsentManager-DZ26sg4B.esm.js → mandatoryConsentManager-BeELm1zS.esm.js} +4 -7
  191. package/dist/{mandatoryConsentStateMachine-_44ZoDSh.esm.js → mandatoryConsentStateMachine-zroQGzwb.esm.js} +5 -7
  192. package/dist/manualReviewService-D4IkipnN.esm.js +15 -0
  193. package/dist/{mediaRecorderOptions-CClCKAiF.esm.js → mediaRecorderOptions-dALSV8af.esm.js} +2 -4
  194. package/dist/{mediapipeShared-Bcmkzs3x.esm.js → mediapipeShared-B6oNoXEQ.esm.js} +21 -9
  195. package/dist/{onDeviceFaceResults-DILtthks.esm.js → onDeviceFaceResults-C6IRJHQB.esm.js} +30 -87
  196. package/dist/openviduLazy-CCDpFWg1.esm.js +10 -0
  197. package/dist/{otp-B1YeyRXu.d.ts → otp-CEWfTj9v.d.ts} +0 -1
  198. package/dist/{otp-uaXiKt_R.esm.js → otp-D2k3PeSL.esm.js} +3 -14
  199. package/dist/{permissionGuards-BNOe4Tnu.esm.js → permissionGuards-KINpmKtI.esm.js} +2 -4
  200. package/dist/{permissionServices-C_kxhNeo.esm.js → permissionServices-UvUcOSRb.esm.js} +35 -28
  201. package/dist/personhood.d.ts +13 -20
  202. package/dist/personhood.esm.js +153 -85
  203. package/dist/phone.d.ts +1 -5
  204. package/dist/phone.esm.js +3 -10
  205. package/dist/{phoneManager-_KtitbUA.d.ts → phoneManager-BBU8Lq0O.d.ts} +4 -7
  206. package/dist/{phoneManager-CRblfdcI.esm.js → phoneManager-Cpiai2IM.esm.js} +82 -12
  207. package/dist/{phoneStateMachine-DjFGWMjQ.esm.js → phoneStateMachine-E1fUUcNM.esm.js} +7 -9
  208. package/dist/{platform-0Ot-bF_a.esm.js → platform-BJrm5nzZ.esm.js} +31 -11
  209. package/dist/privacyLensWorker-DI-Rg83h.esm.js +355 -0
  210. package/dist/qe-signature.d.ts +4 -6
  211. package/dist/qe-signature.esm.js +10 -11
  212. package/dist/{recordingService-CxaYkITO.esm.js → recordingService-N4RhdyiT.esm.js} +13 -31
  213. package/dist/redirect-to-mobile.d.ts +2 -6
  214. package/dist/redirect-to-mobile.esm.js +3 -10
  215. package/dist/{redirectToMobileManager-dv29o_LS.d.ts → redirectToMobileManager-BD2PvT5B.d.ts} +8 -44
  216. package/dist/{redirectToMobileManager-DbuNUlru.esm.js → redirectToMobileManager-C0dfc7f6.esm.js} +28 -8
  217. package/dist/{redirectToMobileStateMachine-BRaIJWOM.esm.js → redirectToMobileStateMachine-C9SYCJcH.esm.js} +74 -18
  218. package/dist/rolldown-runtime-FZ4Itg2g.esm.js +42 -0
  219. package/dist/{runChildModule-kojSv3MH.esm.js → runChildModule-DpRmKWV0.esm.js} +10 -9
  220. package/dist/{WasmUtilProvider-BgzcXBdl.esm.js → safeStorage-Ep56I-f_.esm.js} +98 -473
  221. package/dist/selfie.d.ts +8 -21
  222. package/dist/selfie.esm.js +40 -47
  223. package/dist/selfieErrorUtils-C2PYBVsp.esm.js +90 -0
  224. package/dist/{selfieManager-B1Px3GGa.esm.js → selfieManager-CmoNiluM.esm.js} +7 -10
  225. package/dist/{selfieManager-4juKfrHG.d.ts → selfieManager-DwlCppg0.d.ts} +3 -4
  226. package/dist/{selfieStateMachine-D0TS93Tu.esm.js → selfieStateMachine-L9pghTly.esm.js} +14 -29
  227. package/dist/{session-CLsU2Jnb.esm.js → session-DeR_I24J.esm.js} +16 -7
  228. package/dist/session.d.ts +12 -10
  229. package/dist/session.esm.js +5 -15
  230. package/dist/sessionInitializer-DNgRpf5Y.esm.js +1865 -0
  231. package/dist/{setup-CfNsYAeB.esm.js → setup-DuYKUt0r.esm.js} +319 -137
  232. package/dist/{setup-CmA2apmN.d.ts → setup-DywQeePQ.d.ts} +186 -4
  233. package/dist/signature.d.ts +2 -96
  234. package/dist/signature.esm.js +3 -108
  235. package/dist/signatureManager-DGBSWz2_.d.ts +106 -0
  236. package/dist/signatureManager-DdPgcmou.esm.js +113 -0
  237. package/dist/{signatureStateMachine-CdhlMih-.esm.js → signatureStateMachine-Cf73DGWO.esm.js} +5 -7
  238. package/dist/spawn-D9jgw9pW.d.ts +1441 -0
  239. package/dist/src-0Jurt29N.esm.js +4482 -0
  240. package/dist/{stats-BVy52wLy.esm.js → stats-B0nFKawG.esm.js} +3 -5
  241. package/dist/stats.esm.js +2 -5
  242. package/dist/topLevelStateName-B5i2avbh.esm.js +41 -0
  243. package/dist/{tri-CFAPtAUM.esm.js → tri-4RsGrIt6.esm.js} +3 -119
  244. package/dist/tri.d.ts +2 -2
  245. package/dist/tri.esm-BIjHhBJ2.esm.js +2620 -0
  246. package/dist/tri.esm.js +2 -4
  247. package/dist/trueSight-BTl_vvd3.esm.js +1 -0
  248. package/dist/trueSightService-s3T95geD.esm.js +1894 -0
  249. package/dist/trust-graph.d.ts +4 -5
  250. package/dist/trust-graph.esm.js +13 -9
  251. package/dist/types-BEwVKkLJ.d.ts +15 -0
  252. package/dist/{types-BKLb3C42.esm.js → types-BN5RPPIZ.esm.js} +1 -2
  253. package/dist/types-BSBzhHRH.d.ts +57 -0
  254. package/dist/types-BX_XkMsQ2.d.ts +21 -0
  255. package/dist/types-BfHiko5D.d.ts +48 -0
  256. package/dist/{types-D8Cl1N2Z.d.ts → types-BfgmV7s72.d.ts} +2 -2
  257. package/dist/types-CJ7Yl9K-2.d.ts +164 -0
  258. package/dist/types-DPIDuhut.d.ts +40 -0
  259. package/dist/types-DVmXIdzW.d.ts +82 -0
  260. package/dist/types-DelMqZLe.d.ts +105 -0
  261. package/dist/types-EELWyWpd.d.ts +6 -0
  262. package/dist/{types-fO6KIdol.d.ts → types-Hmd7U0JA.d.ts} +80 -6
  263. package/dist/{types-BUgeB2X6.d.ts → types-KPvmag_B.d.ts} +7 -7
  264. package/dist/types-M6eb82ra2.d.ts +589 -0
  265. package/dist/{types-DV3wkhQ4.d.ts → types-Vb4P9ovf.d.ts} +1 -3
  266. package/dist/{urlUtils-CpiYwn7w.esm.js → urlUtils-D6phjq1-.esm.js} +1 -2
  267. package/dist/{video-ZY92rkel.esm.js → video-BtSWtHy1.esm.js} +1 -2
  268. package/dist/video-selfie.d.ts +71 -117
  269. package/dist/video-selfie.esm.js +575 -643
  270. package/dist/videoSelfieCameraWarmer-DPx5Lm3d.esm.js +651 -0
  271. package/dist/videoSelfieStepDetector-D3oo2ofo.d.ts +123 -0
  272. package/dist/wasm.d.ts +2 -4
  273. package/dist/wasm.esm.js +4 -15
  274. package/dist/wasmDefaults-DTUrftxR.esm.js +125 -0
  275. package/dist/{wasmDsFlagSync-Ch0mFJNT.esm.js → wasmDsFlagSync-BqUCwLY8.esm.js} +2 -4
  276. package/dist/wasmWebClient-DM8lkb0z.esm.js +407 -0
  277. package/dist/watchlist-for-business.d.ts +1 -3
  278. package/dist/watchlist-for-business.esm.js +9 -9
  279. package/dist/watchlist.d.ts +1 -52
  280. package/dist/watchlist.esm.js +3 -70
  281. package/dist/{watchlistForBusinessStateMachine-R1Yp1g5A.esm.js → watchlistForBusinessStateMachine-BcBMkMvV.esm.js} +5 -7
  282. package/dist/watchlistManager-CjSMmbyq.esm.js +83 -0
  283. package/dist/watchlistManager-DLXef90v.d.ts +68 -0
  284. package/dist/{watchlistStateMachine-D07UVq1m.esm.js → watchlistStateMachine-Bl7Wy9Cm.esm.js} +5 -7
  285. package/dist/workflow.d.ts +239 -203
  286. package/dist/workflow.esm.js +156 -101
  287. package/dist/xstate-actors.esm-CtI5S0f4.esm.js +310 -0
  288. package/dist/{xstate.esm-nY3M5UYm.esm.js → xstate.esm-Cf4e0Cfd.esm.js} +136 -610
  289. package/package.json +14 -9
  290. package/dist/Actor-BwgmOPkb.d.ts +0 -2
  291. package/dist/Face2DProvider-CZU11g6r.esm.js +0 -824
  292. package/dist/FaceDetectionProvider-CPWg-PAH.d.ts +0 -119
  293. package/dist/IWasmUtilCapability-DaSNxgA8.d.ts +0 -150
  294. package/dist/PrivacyLensProvider-B_zrV25p.esm.js +0 -339
  295. package/dist/StateMachine-D5WO6lHS.d.ts +0 -2
  296. package/dist/StreamCanvasCapture-DHaWferF.d.ts +0 -42
  297. package/dist/ae-signature-Pp4oCAHD.esm.js +0 -12
  298. package/dist/api-DsbUi7TO.esm.js +0 -72
  299. package/dist/browser-DlFgHpoC-Br3G10gw.esm.js +0 -1425
  300. package/dist/browserSimulation-DZwEy9bu.esm.js +0 -2804
  301. package/dist/camera-CxxXV0VN.esm.js +0 -79
  302. package/dist/canvas-90BqS0NF.d.ts +0 -112
  303. package/dist/chunk-CIKcdghV.esm.js +0 -49
  304. package/dist/clientLifecycle-VyzRfALg.esm.js +0 -534
  305. package/dist/cpf-ocr.d.ts +0 -10
  306. package/dist/cpf-ocr.esm.js +0 -8
  307. package/dist/cpfOcrManager-9eM4z4o7.esm.js +0 -190
  308. package/dist/cpfOcrManager-C5U9E0hf.d.ts +0 -216
  309. package/dist/createFaceAvatar-BZSg2MNo.esm.js +0 -46
  310. package/dist/deepsightLoader-CU_tiLMx.esm.js +0 -62
  311. package/dist/flowServices-DkQmOkLV.esm.js +0 -208
  312. package/dist/geolocationManager-DaHYFkVO.d.ts +0 -156
  313. package/dist/getDeviceClass-DIjnTPjR.esm.js +0 -14
  314. package/dist/http-CnsKEaJY.esm.js +0 -0
  315. package/dist/idCaptureManager-CwuXtVu6.d.ts +0 -1013
  316. package/dist/index-BAyZ8_iI.d.ts +0 -93
  317. package/dist/openviduLazy-jPgABwrt.esm.js +0 -3
  318. package/dist/openviduLazy-wEojM41w.esm.js +0 -12
  319. package/dist/qe-signature-BnWIpR-O.esm.js +0 -12
  320. package/dist/sessionInitializer-Dj7-aJaP.esm.js +0 -547
  321. package/dist/tri.esm-DDJ1zOqG.esm.js +0 -2593
  322. package/dist/types-BcF-fii5.d.ts +0 -5
  323. package/dist/videoSelfieSteps-Djpv7cjb.esm.js +0 -58
  324. /package/dist/{IVisibilityObserverCapability-BZ1rE7ly.d.ts → IVisibilityObserverCapability-D4tvIB5v.d.ts} +0 -0
  325. /package/dist/{camera-CKU96nwJ.d.ts → camera-9wWD-pwg.d.ts} +0 -0
  326. /package/dist/{flowCompletionService-BOSTlAWo.d.ts → flowCompletionService-BlAHsKyv.d.ts} +0 -0
  327. /package/dist/{types-BgjMAEXl.d.ts → types-Bk_6dmDa.d.ts} +0 -0
  328. /package/dist/{warmup-Dd0iq6KF.d.ts → warmup-Dv2alr2-.d.ts} +0 -0
@@ -1,47 +1,7 @@
1
- import { t as Manager } from "./Manager-goNPc_h_.js";
2
- import { t as ActorRefFrom } from "./Actor-BwgmOPkb.js";
3
-
4
- //#region src/modules/dynamic-forms/types.d.ts
5
-
6
- /**
7
- * Input types supported by dynamic form questions.
8
- * `inputType` on `Question` is optional so unknown future API values degrade
9
- * gracefully to the text fallback rather than requiring this union to be widened.
10
- */
11
- type InputType = 'TEXT' | 'DATE' | 'COUNTRY' | 'NATIONALITY' | 'NUMBER' | 'EMAIL' | 'PHONE' | 'CPF' | 'NAME' | 'YESNO' | 'SELECT' | 'MULTISELECT';
12
- /**
13
- * A single question within a dynamic form screen.
14
- */
15
- type Question = {
16
- questionId: string;
17
- /** Display label shown to the user */
18
- question: string;
19
- inputType?: InputType;
20
- /** Fallback type used when `inputType` is absent */
21
- overrides?: InputType;
22
- isPredefined?: boolean;
23
- isOptional?: boolean;
24
- options?: string[];
25
- };
26
- /**
27
- * A single screen within the dynamic form flow.
28
- */
29
- type Screen = {
30
- title?: string;
31
- hideTitle?: boolean;
32
- questions: Question[];
33
- };
34
- /**
35
- * Configuration for the dynamic forms module.
36
- * Provide either `screens` (pre-loaded) or `flowId` (fetched from API).
37
- */
38
- type DynamicFormsConfig = {
39
- /** Flow ID used to fetch screens from the API when `screens` is not provided */
40
- flowId?: string;
41
- /** Pre-loaded screens — skips the API fetch when provided */
42
- screens?: Screen[];
43
- };
44
- //#endregion
1
+ import { i as ActorRefFrom } from "./spawn-D9jgw9pW.js";
2
+ import { t as Manager } from "./Manager-CQQ99QOI.js";
3
+ import "./Actor-iTq7YY48.js";
4
+ import { i as Screen, t as DynamicFormsConfig } from "./types-BSBzhHRH.js";
45
5
  //#region src/modules/dynamic-forms/dynamicFormsFields.d.ts
46
6
  /** Map of `questionId` → currently-displayed i18n error key. */
47
7
  type DynamicFormsValidationErrors = Partial<Record<string, string>>;
@@ -86,6 +46,10 @@ type DynamicFormsInputtingState = {
86
46
  answerValidity: Record<string, boolean>;
87
47
  validationErrors?: DynamicFormsValidationErrors;
88
48
  canSubmit: boolean;
49
+ /** questionIds that received a prefilled value — show the "from ID" marker. */
50
+ prefilledQuestionIds: string[];
51
+ /** questionIds prefilled with a non-editable value — render read-only. */
52
+ nonEditableQuestionIds: string[];
89
53
  };
90
54
  /**
91
55
  * Submitting the current screen's answers to the backend.
@@ -105,6 +69,10 @@ type DynamicFormsSubmittingState = {
105
69
  answers: Record<string, string>;
106
70
  answerValidity: Record<string, boolean>;
107
71
  validationErrors?: DynamicFormsValidationErrors;
72
+ /** questionIds that received a prefilled value — show the "from ID" marker. */
73
+ prefilledQuestionIds: string[];
74
+ /** questionIds prefilled with a non-editable value — render read-only. */
75
+ nonEditableQuestionIds: string[];
108
76
  };
109
77
  /**
110
78
  * All screens submitted — success screen visible for ~3 s before
@@ -133,10 +101,18 @@ type DynamicFormsMisconfiguredState = {
133
101
  type DynamicFormsClosedState = {
134
102
  status: 'closed';
135
103
  };
104
+ /**
105
+ * Login-hint lockout — the backend reported status `4302` ("Login hint attempts
106
+ * exceeded") on a form-answer rejection. Terminal, non-recoverable screen with
107
+ * no retry; the module parks here (user must contact their administrator).
108
+ */
109
+ type DynamicFormsAttemptsExhaustedState = {
110
+ status: 'attemptsExhausted';
111
+ };
136
112
  /**
137
113
  * Union of all possible dynamic forms manager states.
138
114
  */
139
- type DynamicFormsState = DynamicFormsIdleState | DynamicFormsLoadingState | DynamicFormsInputtingState | DynamicFormsSubmittingState | DynamicFormsSuccessState | DynamicFormsFinishedState | DynamicFormsMisconfiguredState | DynamicFormsClosedState;
115
+ type DynamicFormsState = DynamicFormsIdleState | DynamicFormsLoadingState | DynamicFormsInputtingState | DynamicFormsSubmittingState | DynamicFormsSuccessState | DynamicFormsFinishedState | DynamicFormsMisconfiguredState | DynamicFormsClosedState | DynamicFormsAttemptsExhaustedState;
140
116
  /**
141
117
  * Creates a dynamic forms manager for headless or UI-driven usage.
142
118
  *
@@ -236,4 +212,4 @@ declare function createDynamicFormsManagerFromActor(actor: DynamicFormsActor): M
236
212
  /** Type representing a dynamic forms manager instance. */
237
213
  type DynamicFormsManager = ReturnType<typeof createDynamicFormsManager>;
238
214
  //#endregion
239
- export { DynamicFormsActor as a, DynamicFormsValidationErrors as c, Question as d, Screen as f, createDynamicFormsManagerFromActor as i, DynamicFormsConfig as l, DynamicFormsState as n, DynamicFormsResult as o, createDynamicFormsManager as r, dynamicFormsMachine as s, DynamicFormsManager as t, InputType as u };
215
+ export { DynamicFormsActor as a, DynamicFormsValidationErrors as c, createDynamicFormsManagerFromActor as i, DynamicFormsState as n, DynamicFormsResult as o, createDynamicFormsManager as r, dynamicFormsMachine as s, DynamicFormsManager as t };
@@ -1,8 +1,9 @@
1
- import { t as api } from "./api-DsbUi7TO.esm.js";
2
- import { t as endpoints } from "./endpoints-CwrFQfW7.esm.js";
3
- import { a as fromPromise, r as assign, t as setup } from "./xstate.esm-nY3M5UYm.esm.js";
4
- import { t as isoDateToMs } from "./dateUtils-BW6mBV6p.esm.js";
5
-
1
+ import { t as api } from "./api-Bx3gKW_y.esm.js";
2
+ import { t as endpoints } from "./endpoints-CCzL3XD_.esm.js";
3
+ import { r as toIncodeApiError, t as IncodeApiError } from "./apiError-oiEnJIlk.esm.js";
4
+ import { r as assign, t as setup } from "./xstate.esm-Cf4e0Cfd.esm.js";
5
+ import { n as fromPromise } from "./xstate-actors.esm-CtI5S0f4.esm.js";
6
+ import { t as isoDateToMs } from "./dateUtils-CvG0FvK8.esm.js";
6
7
  //#region src/modules/dynamic-forms/dynamicFormsFields.ts
7
8
  function getEffectiveType(question) {
8
9
  return question.inputType ?? question.overrides ?? "TEXT";
@@ -31,7 +32,6 @@ function buildScreenFields(formScreen) {
31
32
  validation: buildQuestionValidation(q)
32
33
  }));
33
34
  }
34
-
35
35
  //#endregion
36
36
  //#region src/modules/dynamic-forms/dynamicFormsValidators.ts
37
37
  const VALIDATORS = {
@@ -67,7 +67,6 @@ function validateScreenField(answers, questionId, fields, answerValidity) {
67
67
  answerValidity
68
68
  }, field.validation);
69
69
  }
70
-
71
70
  //#endregion
72
71
  //#region src/modules/dynamic-forms/dynamicFormsServices.ts
73
72
  async function fetchForms(flowId, signal) {
@@ -76,17 +75,46 @@ async function fetchForms(flowId, signal) {
76
75
  if (!res.ok) throw new Error(`GET ${endpoints.moduleConfig} failed: ${res.status} ${res.statusText}`);
77
76
  return res.data;
78
77
  }
79
- async function submitFormAnswer(params, signal) {
80
- const res = await api.post(endpoints.dynamicFormsSubmitAnswer, {
81
- questionId: params.questionId,
82
- answerDetails: { singleAnswer: params.singleAnswer }
83
- }, { signal });
84
- if (!res.ok) throw new Error(`POST ${endpoints.dynamicFormsSubmitAnswer} failed: ${res.status} ${res.statusText}`);
78
+ /**
79
+ * Fetches Form Pre-fill values resolved from the interview. Keyed by session
80
+ * token (no flowId param). Called once per form only when >=1 question has a
81
+ * `prefillSource`. A failure throws — the machine degrades to a blank form.
82
+ */
83
+ async function fetchPrefill(signal) {
84
+ const res = await api.get(endpoints.dynamicFormsPrefill, { signal });
85
+ if (!res.ok) throw new Error(`GET ${endpoints.dynamicFormsPrefill} failed: ${res.status} ${res.statusText}`);
85
86
  return res.data;
86
87
  }
87
-
88
+ async function submitFormAnswer(params, signal) {
89
+ try {
90
+ return (await api.post(endpoints.dynamicFormsSubmitAnswer, {
91
+ questionId: params.questionId,
92
+ answerDetails: { singleAnswer: params.singleAnswer }
93
+ }, { signal })).data;
94
+ } catch (error) {
95
+ throw toIncodeApiError(endpoints.dynamicFormsSubmitAnswer, error);
96
+ }
97
+ }
88
98
  //#endregion
89
99
  //#region src/modules/dynamic-forms/dynamicFormsStateMachine.ts
100
+ const INVALID_LOGIN_HINT_STATUS = 4301;
101
+ const LOGIN_HINT_LOCKED_STATUS = 4302;
102
+ /**
103
+ * Thrown from the submit actor when a form answer is rejected with a login-hint
104
+ * status ({@link INVALID_LOGIN_HINT_STATUS} or {@link LOGIN_HINT_LOCKED_STATUS}).
105
+ * Carries the failing question so the inline error attaches to the right field,
106
+ * the backend status so the machine can decide between "retry" and "locked", and
107
+ * the answers already accepted before the failure so a retry doesn't re-POST them.
108
+ */
109
+ var LoginHintSubmitError = class extends Error {
110
+ constructor(questionId, status, submitted) {
111
+ super("Login hint rejected");
112
+ this.name = "LoginHintSubmitError";
113
+ this.questionId = questionId;
114
+ this.status = status;
115
+ this.submitted = submitted;
116
+ }
117
+ };
90
118
  function transformAnswerValue(inputType, value) {
91
119
  switch (inputType) {
92
120
  case "CPF": return value.replace(/[-.]/g, "");
@@ -106,6 +134,37 @@ const upsertKey = (errors, key, message) => {
106
134
  else delete next[key];
107
135
  return Object.keys(next).length > 0 ? next : void 0;
108
136
  };
137
+ /**
138
+ * Seeds the first screen's sole answer from `config.prefillValue`, but ONLY when
139
+ * the form is exactly one screen with one question — so an unrelated multi-field
140
+ * form never gets a stray value stuffed in. The single-question guard lives here
141
+ * (the machine owns the screens); the seeded answer stays editable. Blank or
142
+ * whitespace-only values (e.g. `?login_hint=%20`) are ignored.
143
+ */
144
+ function buildPrefillAnswers(screens, prefillValue) {
145
+ const value = prefillValue?.trim();
146
+ if (!value || screens.length !== 1) return {};
147
+ const { questions } = screens[0];
148
+ if (questions.length !== 1) return {};
149
+ return { [questions[0].questionId]: value };
150
+ }
151
+ const PREFILL_UNSUPPORTED_TYPES = /* @__PURE__ */ new Set(["PHONE", "MULTISELECT"]);
152
+ function effectiveInputType(question) {
153
+ return question.inputType ?? question.overrides ?? "TEXT";
154
+ }
155
+ function isPrefillSupported(question) {
156
+ return !PREFILL_UNSUPPORTED_TYPES.has(effectiveInputType(question));
157
+ }
158
+ /** The prefilled values that belong to a given screen's questions. */
159
+ function pickPrefillForScreen(formScreen, prefilledValues) {
160
+ if (!formScreen) return {};
161
+ const picked = {};
162
+ for (const question of formScreen.questions) {
163
+ const value = prefilledValues[question.questionId];
164
+ if (value !== void 0) picked[question.questionId] = value;
165
+ }
166
+ return picked;
167
+ }
109
168
  const dynamicFormsMachine = setup({
110
169
  types: {
111
170
  context: {},
@@ -116,27 +175,34 @@ const dynamicFormsMachine = setup({
116
175
  fetchScreens: fromPromise(async ({ input, signal }) => {
117
176
  return fetchForms(input.flowId, signal);
118
177
  }),
178
+ fetchPrefill: fromPromise(async ({ signal }) => fetchPrefill(signal)),
119
179
  submitScreenAnswers: fromPromise(async ({ input, signal }) => {
120
- const { screen: formScreen, answers } = input;
180
+ const { screen: formScreen, answers, submittedAnswers } = input;
181
+ const submitted = { ...submittedAnswers };
121
182
  for (const question of formScreen.questions) {
122
183
  const singleAnswer = transformAnswerValue(question.inputType ?? question.overrides ?? "TEXT", answers[question.questionId] ?? "");
184
+ if (submitted[question.questionId] === singleAnswer) continue;
123
185
  try {
124
186
  await submitFormAnswer({
125
187
  questionId: question.questionId,
126
188
  singleAnswer
127
189
  }, signal);
128
- } catch {}
190
+ submitted[question.questionId] = singleAnswer;
191
+ } catch (error) {
192
+ if (error instanceof IncodeApiError && (error.status === INVALID_LOGIN_HINT_STATUS || error.status === LOGIN_HINT_LOCKED_STATUS)) throw new LoginHintSubmitError(question.questionId, error.status, submitted);
193
+ }
129
194
  }
130
195
  return { success: true };
131
196
  })
132
197
  },
133
198
  actions: {
134
- setScreens: assign(({ event }) => {
199
+ setScreens: assign(({ context, event }) => {
135
200
  const screens = event.output.screens;
136
201
  const firstScreen = screens[0];
137
202
  return {
138
203
  screens,
139
- answers: {},
204
+ answers: buildPrefillAnswers(screens, context.config.prefillValue),
205
+ submittedAnswers: {},
140
206
  currentScreenFields: firstScreen ? buildScreenFields(firstScreen) : []
141
207
  };
142
208
  }),
@@ -174,20 +240,59 @@ const dynamicFormsMachine = setup({
174
240
  const nextScreen = context.screens[nextIndex];
175
241
  return {
176
242
  currentScreenIndex: nextIndex,
177
- answers: {},
243
+ answers: pickPrefillForScreen(nextScreen, context.prefilledValues),
244
+ submittedAnswers: {},
178
245
  answerValidity: {},
179
246
  currentScreenFields: nextScreen ? buildScreenFields(nextScreen) : [],
180
247
  validationErrors: void 0
181
248
  };
182
249
  }),
250
+ seedPrefill: assign(({ context, event }) => {
251
+ const resolved = event.output;
252
+ const typeById = /* @__PURE__ */ new Map();
253
+ for (const formScreen of context.screens) for (const question of formScreen.questions) typeById.set(question.questionId, effectiveInputType(question));
254
+ const prefilledValues = {};
255
+ const nonEditableQuestionIds = [];
256
+ for (const questionId of Object.keys(resolved)) {
257
+ const type = typeById.get(questionId);
258
+ if (!type || PREFILL_UNSUPPORTED_TYPES.has(type)) continue;
259
+ prefilledValues[questionId] = resolved[questionId].value;
260
+ if (resolved[questionId].editable === false) nonEditableQuestionIds.push(questionId);
261
+ }
262
+ return {
263
+ prefilledValues,
264
+ nonEditableQuestionIds,
265
+ answers: {
266
+ ...context.answers,
267
+ ...prefilledValues
268
+ }
269
+ };
270
+ }),
183
271
  markCompleted: assign({ result: "completed" }),
184
- markSkipped: assign({ result: "skipped" })
272
+ markSkipped: assign({ result: "skipped" }),
273
+ setLoginHintError: assign(({ context, event }) => {
274
+ const err = event.error;
275
+ if (!(err instanceof LoginHintSubmitError)) return {};
276
+ return {
277
+ validationErrors: upsertKey(context.validationErrors, err.questionId, "forms.errors.invalidLoginHint"),
278
+ submittedAnswers: err.submitted
279
+ };
280
+ })
185
281
  },
186
282
  guards: {
187
283
  hasPreloadedScreens: ({ context }) => (context.config.screens?.length ?? 0) > 0,
188
284
  hasFlowId: ({ context }) => !!context.config.flowId,
285
+ hasPrefillSources: ({ context }) => context.screens.some((formScreen) => formScreen.questions.some((question) => question.prefillSource != null && isPrefillSupported(question))),
189
286
  isLastScreen: ({ context }) => context.currentScreenIndex >= context.screens.length - 1,
190
- isScreenValid: ({ context }) => Object.keys(context.validationErrors ?? {}).length === 0
287
+ isScreenValid: ({ context }) => Object.keys(context.validationErrors ?? {}).length === 0,
288
+ isLoginHintLocked: ({ event }) => {
289
+ const err = event.error;
290
+ return err instanceof LoginHintSubmitError && err.status === LOGIN_HINT_LOCKED_STATUS;
291
+ },
292
+ isLoginHintInvalid: ({ event }) => {
293
+ const err = event.error;
294
+ return err instanceof LoginHintSubmitError && err.status === INVALID_LOGIN_HINT_STATUS;
295
+ }
191
296
  }
192
297
  }).createMachine({
193
298
  id: "dynamicForms",
@@ -199,16 +304,19 @@ const dynamicFormsMachine = setup({
199
304
  config: input.config,
200
305
  screens,
201
306
  currentScreenIndex: 0,
202
- answers: {},
307
+ answers: buildPrefillAnswers(screens, input.config.prefillValue),
308
+ submittedAnswers: {},
203
309
  answerValidity: {},
204
310
  currentScreenFields: firstScreen ? buildScreenFields(firstScreen) : [],
311
+ prefilledValues: {},
312
+ nonEditableQuestionIds: [],
205
313
  result: null
206
314
  };
207
315
  },
208
316
  states: {
209
317
  idle: { on: { LOAD: [
210
318
  {
211
- target: "inputting",
319
+ target: "resolvingPrefill",
212
320
  guard: "hasPreloadedScreens"
213
321
  },
214
322
  {
@@ -222,7 +330,7 @@ const dynamicFormsMachine = setup({
222
330
  src: "fetchScreens",
223
331
  input: ({ context }) => ({ flowId: context.config.flowId ?? "" }),
224
332
  onDone: {
225
- target: "inputting",
333
+ target: "resolvingPrefill",
226
334
  actions: "setScreens"
227
335
  },
228
336
  onError: {
@@ -230,6 +338,19 @@ const dynamicFormsMachine = setup({
230
338
  actions: "markSkipped"
231
339
  }
232
340
  } },
341
+ resolvingPrefill: { always: [{
342
+ guard: "hasPrefillSources",
343
+ target: "prefilling"
344
+ }, { target: "inputting" }] },
345
+ prefilling: { invoke: {
346
+ id: "fetchPrefill",
347
+ src: "fetchPrefill",
348
+ onDone: {
349
+ target: "inputting",
350
+ actions: "seedPrefill"
351
+ },
352
+ onError: { target: "inputting" }
353
+ } },
233
354
  inputting: {
234
355
  initial: "editing",
235
356
  states: {
@@ -253,7 +374,8 @@ const dynamicFormsMachine = setup({
253
374
  src: "submitScreenAnswers",
254
375
  input: ({ context }) => ({
255
376
  screen: context.screens[context.currentScreenIndex],
256
- answers: context.answers
377
+ answers: context.answers,
378
+ submittedAnswers: context.submittedAnswers
257
379
  }),
258
380
  onDone: [{
259
381
  target: "success",
@@ -262,13 +384,18 @@ const dynamicFormsMachine = setup({
262
384
  target: "inputting",
263
385
  actions: "advanceScreen"
264
386
  }],
265
- onError: [{
266
- target: "success",
267
- guard: "isLastScreen"
268
- }, {
269
- target: "inputting",
270
- actions: "advanceScreen"
271
- }]
387
+ onError: [
388
+ {
389
+ guard: "isLoginHintLocked",
390
+ target: "attemptsExhausted"
391
+ },
392
+ {
393
+ guard: "isLoginHintInvalid",
394
+ target: "inputting",
395
+ actions: "setLoginHintError"
396
+ },
397
+ { target: "inputting" }
398
+ ]
272
399
  } },
273
400
  success: { after: { 3e3: {
274
401
  target: "finished",
@@ -276,9 +403,9 @@ const dynamicFormsMachine = setup({
276
403
  } } },
277
404
  finished: { type: "final" },
278
405
  misconfigured: { on: { CLOSE: { target: "closed" } } },
406
+ attemptsExhausted: {},
279
407
  closed: { type: "final" }
280
408
  }
281
409
  });
282
-
283
410
  //#endregion
284
- export { dynamicFormsMachine as t };
411
+ export { dynamicFormsMachine as t };
package/dist/ekyb.d.ts CHANGED
@@ -1,140 +1,8 @@
1
- import "./StateMachine-D5WO6lHS.js";
2
- import { t as Manager } from "./Manager-goNPc_h_.js";
3
- import "./Actor-BwgmOPkb.js";
4
- import "./camera-CKU96nwJ.js";
5
- import "./types-DV3wkhQ4.js";
6
- import { c as AddressSuggestion, l as FieldDef } from "./types-BgjMAEXl.js";
7
- import "./canvas-90BqS0NF.js";
8
- import "./createFaceAvatar-CpdYp9Iy.js";
9
- import { i as FlowModuleConfig } from "./types-BUgeB2X6.js";
10
-
11
- //#region src/modules/ekyb/types.d.ts
12
- type UboEntry = {
13
- id: string;
14
- name: string;
15
- surname: string;
16
- };
17
- type EkybFormValues = {
18
- country: string;
19
- businessName?: string;
20
- street?: string;
21
- houseNo?: string;
22
- addressLine2?: string;
23
- city?: string;
24
- state?: string;
25
- postalCode?: string;
26
- taxId?: string;
27
- };
28
- type EkybConfig = {
29
- flowId?: string;
30
- verificationFields?: string[];
31
- checkBusinessName?: boolean;
32
- checkAddress?: boolean;
33
- checkTaxId?: boolean;
34
- checkUniqueBeneficialOwner?: boolean;
35
- };
36
- type EkybValidationRule = {
37
- type: 'required';
38
- } | {
39
- type: 'streetLevelRequired';
40
- } | {
41
- type: 'cnpj';
42
- } | {
43
- type: 'postalCodeFormat';
44
- country: string;
45
- };
46
- type EkybValidationError = {
47
- key: string;
48
- params?: Record<string, string | number>;
49
- };
50
- type EkybValidationErrors = Partial<Record<string, EkybValidationError>>;
51
- type EkybFieldDef = FieldDef & {
52
- optionalForCountries?: string[];
53
- validation?: EkybValidationRule[];
54
- };
55
- type EkybCountry = 'BR' | 'US' | 'GB' | 'ES' | 'IT' | 'FR' | 'DE' | 'IL' | 'MX' | 'CN' | 'NG' | 'CM' | 'KE';
56
- //#endregion
57
- //#region src/modules/ekyb/ekybStateMachine.d.ts
58
- declare const ekybMachine: any;
59
- //#endregion
60
- //#region src/modules/ekyb/ekybActor.d.ts
61
- type CreateEkybActorOptions = {
62
- config: EkybConfig;
63
- };
64
- //#endregion
65
- //#region src/modules/ekyb/ekybManager.d.ts
66
-
67
- type EkybLoadingState = {
68
- status: 'loading';
69
- };
70
- type EkybFormState = {
71
- status: 'form';
72
- country: string;
73
- availableCountries: readonly string[];
74
- fields: EkybFieldDef[];
75
- values: EkybFormValues;
76
- validationErrors?: EkybValidationErrors;
77
- /**
78
- * True when no validation errors are currently displayed.
79
- * Optimistic semantic: starts true on initial empty form.
80
- * Derived as `Object.keys(validationErrors ?? {}).length === 0`.
81
- */
82
- isValid: boolean;
83
- ubos: UboEntry[];
84
- canAddUbo: boolean;
85
- addressSuggestions: AddressSuggestion[];
86
- };
87
- type EkybSubmittingState = {
88
- status: 'submitting';
89
- };
90
- type EkybSuccessState = {
91
- status: 'success';
92
- };
93
- type EkybErrorState = {
94
- status: 'error';
95
- errorMessage: string;
96
- };
97
- type EkybFinishedState = {
98
- status: 'finished';
99
- };
100
- type EkybClosedState = {
101
- status: 'closed';
102
- };
103
- /**
104
- * Discriminated union of all possible eKYB manager states.
105
- */
106
- type EkybState = EkybLoadingState | EkybFormState | EkybSubmittingState | EkybSuccessState | EkybErrorState | EkybFinishedState | EkybClosedState;
107
- /**
108
- * Creates an eKYB manager for headless or UI-driven usage.
109
- */
110
- declare function createEkybManager(options: CreateEkybActorOptions): Manager<EkybState> & {
111
- /** Initializes the eKYB flow — builds form fields from the provided config */
112
- load(): void;
113
- /** Sets the country and resets/revalidates fields */
114
- setCountry(country: string): void;
115
- /** Sets a form field value and clears its current validation error */
116
- setField(name: string, value: string): void;
117
- /** Runs single-field validation (call on blur) */
118
- validateField(name: string): void;
119
- /** Adds a new UBO entry (max 8) */
120
- addUbo(): void;
121
- /** Removes a UBO entry by index */
122
- removeUbo(index: number): void;
123
- /** Sets a UBO field (name or surname) */
124
- setUboField(index: number, field: "name" | "surname", value: string): void;
125
- /** Searches for address suggestions (debounced) */
126
- searchAddress(query: string): void;
127
- /** Fills address fields from a selected suggestion */
128
- selectAddress(suggestion: AddressSuggestion): void;
129
- /** Submits the form (requires isValid to be true) */
130
- submit(): void;
131
- /** Retries from failure state, returning to the form */
132
- retry(): void;
133
- /** Closes/dismisses the module */
134
- close(): void;
135
- };
136
- type EkybManager = ReturnType<typeof createEkybManager>;
137
- //#endregion
1
+ import "./StateMachine-EDpYWy0i.js";
2
+ import { c as AddressSuggestion } from "./types-Bk_6dmDa.js";
3
+ import { i as FlowModuleConfig } from "./types-KPvmag_B.js";
4
+ import { a as EkybValidationError, n as EkybCountry, o as EkybValidationErrors, r as EkybFieldDef, s as UboEntry, t as EkybConfig } from "./types-BfHiko5D.js";
5
+ import { n as EkybState, o as ekybMachine, r as createEkybManager, t as EkybManager } from "./ekybManager-Dzswb_b8.js";
138
6
  //#region src/modules/ekyb/ekybServices.d.ts
139
7
  type EkybFlowConfig = FlowModuleConfig['EKYB'];
140
8
  //#endregion