@incodetech/core 2.0.1-rc.0 → 2.1.0-rc.0

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 (218) hide show
  1. package/dist/{BrowserStorageProvider-CuOW1Er2.esm.js → BrowserStorageProvider-BpJM-gIl.esm.js} +8 -1
  2. package/dist/{IpifyProvider-D7jx52AL.esm.js → IpifyProvider-D4LWD15E.esm.js} +28 -0
  3. package/dist/{MotionSensorProvider-4v7xkqAp.esm.js → MotionSensorProvider-Bx7Mpzt0.esm.js} +63 -13
  4. package/dist/{OpenViduRecordingProvider-CMu6XVdc.esm.js → OpenViduRecordingProvider-O4GjBseO.esm.js} +1 -1
  5. package/dist/StateMachine-BC_nGvrc.d.ts +2 -0
  6. package/dist/StreamCanvasCapture-ImiDQdVA.esm.js +118 -0
  7. package/dist/StreamCanvasCapture-yyl20qd9.d.ts +152 -0
  8. package/dist/{BaseWasmProvider-C_DLEI40.esm.js → WasmUtilProvider-CiEN7Gjn.esm.js} +183 -11
  9. package/dist/{addressSearch-BpTbTWCa.esm.js → addressSearch-DvmWXKZg.esm.js} +63 -57
  10. package/dist/{ae-signature-DDDZmWXj.esm.js → ae-signature-BFZta3TZ.esm.js} +1 -1
  11. package/dist/ae-signature.d.ts +3 -3
  12. package/dist/ae-signature.esm.js +6 -5
  13. package/dist/antifraud.d.ts +5 -46
  14. package/dist/antifraud.esm.js +6 -43
  15. package/dist/antifraudManager-CkV4u-LE.esm.js +55 -0
  16. package/dist/antifraudManager-CznnhyvD.d.ts +63 -0
  17. package/dist/{antifraudStateMachine-O0TMf6yc.esm.js → antifraudStateMachine-Ccrb-Jxc.esm.js} +2 -2
  18. package/dist/apiError-B-j-gyDx.esm.js +51 -0
  19. package/dist/authentication.d.ts +13 -11
  20. package/dist/authentication.esm.js +26 -22
  21. package/dist/{authenticationManager-C83GNIhl.d.ts → authenticationManager-CIVY80H9.d.ts} +4 -4
  22. package/dist/{authenticationManager-5M-fKzXx.esm.js → authenticationManager-ZNotsWnC.esm.js} +6 -6
  23. package/dist/{authenticationStateMachine-BMZqatiF.esm.js → authenticationStateMachine-DksVbF_H.esm.js} +21 -9
  24. package/dist/{backCameraStream-DMdMeGk2.esm.js → backCameraStream-D7Wo4Nbx.esm.js} +95 -7
  25. package/dist/{session-CGtQJJzB.esm.js → browserSimulation-B1dWiXp7.esm.js} +61 -476
  26. package/dist/camera.d.ts +4 -3
  27. package/dist/camera.esm.js +4 -3
  28. package/dist/canvas-SKcRBxsk.esm.js +230 -0
  29. package/dist/consent.d.ts +4 -398
  30. package/dist/consent.esm.js +6 -77
  31. package/dist/consentManager-BLd51QiW.d.ts +419 -0
  32. package/dist/consentManager-BYo9Nu1r.esm.js +90 -0
  33. package/dist/{consentStateMachine-CCT-B60O.esm.js → consentStateMachine-BG3yL8aC.esm.js} +9 -6
  34. package/dist/cpf-ocr.d.ts +4 -199
  35. package/dist/cpf-ocr.esm.js +8 -177
  36. package/dist/cpfOcrManager-BnieFXuG.d.ts +216 -0
  37. package/dist/cpfOcrManager-sSKegxox.esm.js +190 -0
  38. package/dist/cross-document-data-match.d.ts +1 -1
  39. package/dist/cross-document-data-match.esm.js +4 -4
  40. package/dist/curp-validation.d.ts +8 -158
  41. package/dist/curp-validation.esm.js +6 -108
  42. package/dist/curpValidationManager-CFem6zP9.esm.js +122 -0
  43. package/dist/curpValidationManager-RttixpIc.d.ts +184 -0
  44. package/dist/{curpValidationStateMachine-CitWLr2c.esm.js → curpValidationStateMachine-B7V_qp66.esm.js} +20 -13
  45. package/dist/custom-fields.d.ts +2 -2
  46. package/dist/custom-fields.esm.js +4 -4
  47. package/dist/custom-watchlist.d.ts +1 -1
  48. package/dist/custom-watchlist.esm.js +4 -41
  49. package/dist/customWatchlistStateMachine-HmFybXLX.esm.js +50 -0
  50. package/dist/{deepsightLoader-Cm4JIT_z.esm.js → deepsightLoader-65k1Appi.esm.js} +19 -10
  51. package/dist/{deepsightService-CEVxzehb.d.ts → deepsightService-B7ShOkWL.d.ts} +8 -160
  52. package/dist/deepsightService-CrHmvx8X.esm.js +276 -0
  53. package/dist/device.esm.js +4 -3
  54. package/dist/document-capture.d.ts +992 -83
  55. package/dist/document-capture.esm.js +34 -8
  56. package/dist/document-upload.d.ts +47 -47
  57. package/dist/document-upload.esm.js +7 -7
  58. package/dist/{documentCaptureStateMachine-BqzTDy9k.esm.js → documentCaptureStateMachine-WYV1r9le.esm.js} +90 -6
  59. package/dist/dynamic-forms.d.ts +20 -5
  60. package/dist/dynamic-forms.esm.js +150 -61
  61. package/dist/ekyb.d.ts +32 -13
  62. package/dist/ekyb.esm.js +25 -15
  63. package/dist/{ekybStateMachine-BR2let5f.esm.js → ekybStateMachine-aYixw2sL.esm.js} +319 -207
  64. package/dist/ekyc.d.ts +10 -78
  65. package/dist/ekyc.esm.js +17 -12
  66. package/dist/{ekycStateMachine-oeO0Iekd.esm.js → ekycStateMachine-CXbpaJJn.esm.js} +201 -113
  67. package/dist/electronic-signature.d.ts +3 -3
  68. package/dist/electronic-signature.esm.js +5 -4
  69. package/dist/{electronicSignatureManager-D9OHzTpG.esm.js → electronicSignatureManager-BaECdJ1u.esm.js} +91 -23
  70. package/dist/email.d.ts +4 -3
  71. package/dist/email.esm.js +6 -5
  72. package/dist/{emailManager-wAV0LE-H.esm.js → emailManager--D5G3ChB.esm.js} +30 -7
  73. package/dist/{emailManager-DIfnS5g1.d.ts → emailManager-lAzDoQOs.d.ts} +66 -8
  74. package/dist/{emailStateMachine-DOf4j58N.esm.js → emailStateMachine-CxTOMAjC.esm.js} +46 -11
  75. package/dist/{endpoints-CnN3SyDa.esm.js → endpoints-BeTK0Mlt.esm.js} +6 -3
  76. package/dist/{events-D6-e4vok.esm.js → events-Dvvriq9l.esm.js} +3 -1
  77. package/dist/events.d.ts +2 -0
  78. package/dist/events.esm.js +1 -1
  79. package/dist/extensibility.d.ts +32 -16
  80. package/dist/extensibility.esm.js +55 -33
  81. package/dist/face-match.d.ts +32 -2
  82. package/dist/face-match.esm.js +5 -5
  83. package/dist/{faceCaptureManagerFactory-yqtpxjnN.d.ts → faceCaptureManagerFactory-C_hRHx8a.d.ts} +35 -11
  84. package/dist/{faceCaptureManagerFactory-Dh2PdGlF.esm.js → faceCaptureManagerFactory-kqbUqtrr.esm.js} +21 -5
  85. package/dist/{faceCaptureSetup-B3faSpYA.esm.js → faceCaptureSetup-CtvHWd3x.esm.js} +68 -183
  86. package/dist/{faceMatchStateMachine-DNFrxTFS.esm.js → faceMatchStateMachine-DdGXUBnx.esm.js} +60 -6
  87. package/dist/field-comparison.d.ts +4 -0
  88. package/dist/field-comparison.esm.js +7 -0
  89. package/dist/fieldComparisonManager-Bu5TaSr3.d.ts +76 -0
  90. package/dist/fieldComparisonManager-COGI2ARD.esm.js +162 -0
  91. package/dist/fiscal-qr.d.ts +59 -0
  92. package/dist/fiscal-qr.esm.js +323 -0
  93. package/dist/flow-events.d.ts +6 -5
  94. package/dist/flow.d.ts +23 -15
  95. package/dist/flow.esm.js +63 -17
  96. package/dist/flowCompletionService-BdR2cGgB.d.ts +19 -0
  97. package/dist/flowCompletionService-DdGojV9K.esm.js +20 -0
  98. package/dist/{flowServices-DG3IdWw6.esm.js → flowServices-BTuHLHVr.esm.js} +10 -5
  99. package/dist/geolocation.d.ts +4 -4
  100. package/dist/geolocation.esm.js +6 -6
  101. package/dist/{geolocationStateMachine-asasuHY2.esm.js → geolocationStateMachine-Dvh7X0wF.esm.js} +5 -5
  102. package/dist/getBrowser-C8DP7oTB.esm.js +8 -0
  103. package/dist/{getBrowser-BSXUTWXw.esm.js → getDeviceClass-C0olyNFS.esm.js} +1 -8
  104. package/dist/{getDeviceClass-BSntT9_j.esm.js → getDeviceClass-C8Do2qYu.esm.js} +1 -1
  105. package/dist/government-validation.d.ts +28 -8
  106. package/dist/government-validation.esm.js +19 -8
  107. package/dist/{governmentValidationStateMachine-BDDYrJTo.esm.js → governmentValidationStateMachine-DcJ-BfsC.esm.js} +35 -77
  108. package/dist/home.d.ts +15 -14
  109. package/dist/home.esm.js +2 -2
  110. package/dist/http-Cai3IoLS.esm.js +0 -0
  111. package/dist/http.esm.js +1 -0
  112. package/dist/id-ocr.d.ts +54 -54
  113. package/dist/id-ocr.esm.js +5 -5
  114. package/dist/id-verification.d.ts +27 -27
  115. package/dist/id-verification.esm.js +4 -4
  116. package/dist/id.d.ts +12 -10
  117. package/dist/id.esm.js +36 -26
  118. package/dist/{idCaptureManager-Fyd0eam-.d.ts → idCaptureManager-D-QYESvF.d.ts} +28 -14
  119. package/dist/{idCaptureManager-ZPkD7Gjk.esm.js → idCaptureManager-DGVv5l1_.esm.js} +22 -7
  120. package/dist/{idCaptureStateMachine-BK0bPHoc.esm.js → idCaptureStateMachine-DHi7HydI.esm.js} +172 -123
  121. package/dist/{idOcrStateMachine-YbjjC_Gg.esm.js → idOcrStateMachine-CDQ5d_VM.esm.js} +4 -4
  122. package/dist/{idVerificationStateMachine-xbw9HP1Z.esm.js → idVerificationStateMachine-kRxwImzO.esm.js} +2 -2
  123. package/dist/identity-reuse.d.ts +4 -530
  124. package/dist/identity-reuse.esm.js +8 -274
  125. package/dist/identityReuseManager-C6n_97dw.esm.js +95 -0
  126. package/dist/identityReuseManager-DwLtVzUn.d.ts +428 -0
  127. package/dist/identityReuseStateMachine-BfE5YiEr.esm.js +148 -0
  128. package/dist/{index-BcRG8rtJ.d.ts → index-B5hPA0Bg.d.ts} +2 -2
  129. package/dist/{index-DZoqeAo9.d.ts → index-B9NysVDB.d.ts} +469 -195
  130. package/dist/index.d.ts +2 -2
  131. package/dist/index.esm.js +10 -8
  132. package/dist/{invokeOnCaptureCallback-rc6kBHo5.esm.js → invokeOnCaptureCallback-ygByVdnn.esm.js} +1 -1
  133. package/dist/{lib-BB0B_qQX.esm.js → lib-BY67lgbq.esm.js} +1 -1
  134. package/dist/mandatory-consent.d.ts +8 -412
  135. package/dist/mandatory-consent.esm.js +6 -76
  136. package/dist/mandatoryConsentManager-H6D18cZB.esm.js +89 -0
  137. package/dist/mandatoryConsentManager-KfIlURRY.d.ts +429 -0
  138. package/dist/{mandatoryConsentStateMachine-Cnco1jvn.esm.js → mandatoryConsentStateMachine-DtQNW1ji.esm.js} +6 -6
  139. package/dist/openviduLazy-B8L--0oe.esm.js +3 -0
  140. package/dist/{openviduLazy-Cok70ZSg.esm.js → openviduLazy-Dh14JNJc.esm.js} +2 -2
  141. package/dist/otp-CGMdUzBC.esm.js +33 -0
  142. package/dist/otp-DF5A0sFx.d.ts +8 -0
  143. package/dist/permissionGuards-C1ispV96.esm.js +23 -0
  144. package/dist/permissionServices-CG3bMSfG.esm.js +130 -0
  145. package/dist/phone.d.ts +4 -3
  146. package/dist/phone.esm.js +6 -5
  147. package/dist/{phoneManager-DAJbGhlY.esm.js → phoneManager-BmF-0Ez4.esm.js} +30 -7
  148. package/dist/{phoneManager-B6M30hKE.d.ts → phoneManager-fPmIBYQK.d.ts} +65 -7
  149. package/dist/{phoneStateMachine-CuPARRaT.esm.js → phoneStateMachine-BiV0yoEx.esm.js} +46 -11
  150. package/dist/{qe-signature-DFo_Cc-I.esm.js → qe-signature-CUYPcHVo.esm.js} +1 -1
  151. package/dist/qe-signature.d.ts +3 -3
  152. package/dist/qe-signature.esm.js +6 -5
  153. package/dist/{recordingService-Ig2UgbLv.esm.js → recordingService-Bn9EdCmz.esm.js} +197 -179
  154. package/dist/redirect-to-mobile.d.ts +6 -104
  155. package/dist/redirect-to-mobile.esm.js +6 -99
  156. package/dist/redirectToMobileManager-BNe3IzC_.d.ts +178 -0
  157. package/dist/redirectToMobileManager-Dy3t7o0C.esm.js +159 -0
  158. package/dist/{redirectToMobileStateMachine-BOEqe46A.esm.js → redirectToMobileStateMachine-DyAdRxfP.esm.js} +28 -19
  159. package/dist/{runChildModule-CqqwqAkW.esm.js → runChildModule-CuoHZ1cx.esm.js} +35 -3
  160. package/dist/selfie.d.ts +13 -11
  161. package/dist/selfie.esm.js +27 -23
  162. package/dist/{selfieManager-Duisl7qN.esm.js → selfieManager-BjCoKRy0.esm.js} +6 -6
  163. package/dist/{selfieManager-D0lSgd-J.d.ts → selfieManager-dUbKRzOh.d.ts} +4 -4
  164. package/dist/{selfieStateMachine-D76whWEf.esm.js → selfieStateMachine-b4F2q9zw.esm.js} +5 -3
  165. package/dist/session-DoVb-OcB.esm.js +152 -0
  166. package/dist/session.d.ts +37 -5
  167. package/dist/session.esm.js +12 -7
  168. package/dist/sessionInitializer-B8H5MsXM.esm.js +366 -0
  169. package/dist/{setup-C5AITV8m.d.ts → setup-BbkprdVv.d.ts} +57 -6
  170. package/dist/{setup-DsM8IG7k.esm.js → setup-BqEfrdja.esm.js} +162 -24
  171. package/dist/signature.d.ts +2 -2
  172. package/dist/signature.esm.js +4 -4
  173. package/dist/{signatureStateMachine-B5-QVUve.esm.js → signatureStateMachine-C5qqYLRz.esm.js} +3 -3
  174. package/dist/stats-BMNUG1AU.esm.js +41 -0
  175. package/dist/stats.d.ts +13 -2
  176. package/dist/stats.esm.js +3 -2
  177. package/dist/trust-graph.d.ts +33 -4
  178. package/dist/trust-graph.esm.js +21 -15
  179. package/dist/{types-CFV9G_7j.d.ts → types-Bj9hdFjU.d.ts} +1 -1
  180. package/dist/{types-BP1m8VRw.d.ts → types-DOUhndhT.d.ts} +14 -2
  181. package/dist/types-DsnEVMhr.esm.js +34 -0
  182. package/dist/types-DvGZI7BF.d.ts +131 -0
  183. package/dist/{types-B06Ypu2F.d.ts → types-NuT8ftBV.d.ts} +1 -1
  184. package/dist/types-ya0LN_MX.d.ts +5 -0
  185. package/dist/{warmup-CEcppFiS.d.ts → warmup-Dg8Lh-50.d.ts} +8 -0
  186. package/dist/wasm.d.ts +6 -4
  187. package/dist/wasm.esm.js +11 -9
  188. package/dist/watchlist-for-business.d.ts +1 -1
  189. package/dist/watchlist-for-business.esm.js +5 -73
  190. package/dist/watchlist.d.ts +1 -1
  191. package/dist/watchlist.esm.js +4 -41
  192. package/dist/watchlistForBusinessStateMachine-DMl8j2Ov.esm.js +74 -0
  193. package/dist/watchlistStateMachine-DmQlqI6L.esm.js +50 -0
  194. package/dist/workflow.d.ts +153 -100
  195. package/dist/workflow.esm.js +156 -80
  196. package/package.json +19 -1
  197. package/dist/StateMachine-BCQrZJhf.d.ts +0 -2
  198. package/dist/WasmUtilProvider-j98OJf-S.esm.js +0 -114
  199. package/dist/browserSimulation-gxD8cSpM.esm.js +0 -20
  200. package/dist/deepsightService-O74l4Y__.esm.js +0 -489
  201. package/dist/displayErrors-DqJ_IbsG.d.ts +0 -39
  202. package/dist/flowCompletionService-DhkT4SRY.d.ts +0 -10
  203. package/dist/flowCompletionService-P54yzGvA.esm.js +0 -13
  204. package/dist/openviduLazy-Cm0XFh_v.esm.js +0 -3
  205. package/dist/permissionServices-D_i6nzEw.esm.js +0 -50
  206. package/dist/stats-CIfiPzb1.esm.js +0 -16
  207. package/dist/types-CAD4va6a.d.ts +0 -5
  208. package/dist/watchlistServices-DMbUhkBX.esm.js +0 -12
  209. /package/dist/{Actor-CI32dTbG.d.ts → Actor-Y0_Fj-KL.d.ts} +0 -0
  210. /package/dist/{ITimerCapability-C67ZRskg.esm.js → ITimerCapability-CB0I1Uf2.esm.js} +0 -0
  211. /package/dist/{Manager-C8PrhBOx.d.ts → Manager-BHn8wH8K.d.ts} +0 -0
  212. /package/dist/{camera-PA2Ljri3.esm.js → camera-DJWm3V4g.esm.js} +0 -0
  213. /package/dist/{camera-DBSxa6ML.d.ts → camera-SRBpPq2X.d.ts} +0 -0
  214. /package/dist/{chunk-CRF6K_H_.esm.js → chunk-CMUKZ2uL.esm.js} +0 -0
  215. /package/dist/{cpf-PPz2Njto.esm.js → cpf-BRzggV8G.esm.js} +0 -0
  216. /package/dist/{dateUtils-UoN5xswP.esm.js → dateUtils-AksLQmgV.esm.js} +0 -0
  217. /package/dist/{platform-CfrjKhmi.esm.js → platform-SKvEfCBh.esm.js} +0 -0
  218. /package/dist/{xstate.esm-B70JrNqo.esm.js → xstate.esm-C9wncMQa.esm.js} +0 -0
@@ -1,3 +1,10 @@
1
+ //#region ../infra/src/wasm/wasmDsFlagSync.ts
2
+ function setWasmDsFlagSync(enabled) {
3
+ if (typeof localStorage === "undefined") return;
4
+ localStorage.setItem("ds", enabled ? "1" : "0");
5
+ }
6
+
7
+ //#endregion
1
8
  //#region ../infra/src/providers/browser/BrowserStorageProvider.ts
2
9
  /**
3
10
  * Browser-based storage provider wrapping localStorage.
@@ -52,4 +59,4 @@ var BrowserStorageProvider = class {
52
59
  };
53
60
 
54
61
  //#endregion
55
- export { BrowserStorageProvider as t };
62
+ export { setWasmDsFlagSync as n, BrowserStorageProvider as t };
@@ -60,6 +60,34 @@ var BrowserEnvironmentProvider = class {
60
60
  ms: nav.msGetUserMedia !== void 0
61
61
  };
62
62
  }
63
+ getMaxTouchPoints() {
64
+ if (typeof navigator === "undefined") return 0;
65
+ return navigator.maxTouchPoints;
66
+ }
67
+ hasOnTouchStart() {
68
+ if (typeof window !== "undefined" && "ontouchstart" in window) return true;
69
+ if (typeof document !== "undefined") return "ontouchstart" in document.documentElement;
70
+ return false;
71
+ }
72
+ getNavigatorProductSub() {
73
+ if (typeof navigator === "undefined") return;
74
+ return navigator.productSub;
75
+ }
76
+ getEvalToStringLength() {
77
+ return eval.toString().length;
78
+ }
79
+ tryFirefoxToSource() {
80
+ try {
81
+ throw "a";
82
+ } catch (err) {
83
+ try {
84
+ err.toSource();
85
+ return true;
86
+ } catch {
87
+ return false;
88
+ }
89
+ }
90
+ }
63
91
  async fetchJson(url, timeoutMs = 3e3) {
64
92
  try {
65
93
  if (typeof fetch === "undefined") return null;
@@ -1,11 +1,25 @@
1
1
  //#region ../infra/src/providers/browser/MotionSensorProvider.ts
2
- var MotionSensorProvider = class {
2
+ const MOTION_PERMISSION_GRANTED_KEY = "motionSensorsPermissionsGranted";
3
+ const MOTION_PERMISSION_DENIED_KEY = "motionSensorsPermissionsDenied";
4
+ var MotionSensorProvider = class MotionSensorProvider {
5
+ static isIosMotionPermissionRequired() {
6
+ return typeof DeviceMotionEvent !== "undefined" && typeof DeviceMotionEvent.requestPermission === "function";
7
+ }
8
+ static readSessionFlag(key) {
9
+ if (typeof sessionStorage === "undefined") return false;
10
+ return sessionStorage.getItem(key) === "true";
11
+ }
12
+ static hasMotionPermissionGrantedInSession() {
13
+ return MotionSensorProvider.readSessionFlag(MOTION_PERMISSION_GRANTED_KEY);
14
+ }
15
+ static hasMotionPermissionDeniedInSession() {
16
+ return MotionSensorProvider.readSessionFlag(MOTION_PERMISSION_DENIED_KEY);
17
+ }
3
18
  constructor(thresholds) {
4
19
  this._isRunning = false;
5
- this._hasPermission = true;
6
20
  this.acl = null;
7
21
  this.gyro = null;
8
- this.minNumberOfFrames = 3;
22
+ this.minNumberOfFrames = 10;
9
23
  this.maxFrequency = 60;
10
24
  this.emptyParams = {
11
25
  meanX: 0,
@@ -71,6 +85,7 @@ var MotionSensorProvider = class {
71
85
  this.updateParams(this.paramsOrientationOld, orientationVal);
72
86
  }
73
87
  };
88
+ this._hasPermission = MotionSensorProvider.isIosMotionPermissionRequired() ? MotionSensorProvider.hasMotionPermissionGrantedInSession() : true;
74
89
  this.thresholds = {
75
90
  accThreshold: thresholds?.accThreshold ?? .3,
76
91
  gyroThreshold: thresholds?.gyroThreshold ?? .3,
@@ -92,21 +107,55 @@ var MotionSensorProvider = class {
92
107
  get hasPermission() {
93
108
  return this._hasPermission;
94
109
  }
110
+ hasBeenRequestedThisSession() {
111
+ return MotionSensorProvider.hasMotionPermissionGrantedInSession();
112
+ }
113
+ hasMotionPermissionDeniedThisSession() {
114
+ return MotionSensorProvider.hasMotionPermissionDeniedInSession();
115
+ }
116
+ markMotionPermissionGrantedInSession() {
117
+ if (typeof sessionStorage === "undefined") return;
118
+ sessionStorage.setItem(MOTION_PERMISSION_GRANTED_KEY, String(true));
119
+ sessionStorage.removeItem(MOTION_PERMISSION_DENIED_KEY);
120
+ sessionStorage.setItem("motionSensorsPermissionsRequested", String(true));
121
+ }
122
+ markMotionPermissionDeniedInSession() {
123
+ if (typeof sessionStorage === "undefined") return;
124
+ sessionStorage.setItem(MOTION_PERMISSION_DENIED_KEY, String(true));
125
+ sessionStorage.removeItem(MOTION_PERMISSION_GRANTED_KEY);
126
+ }
127
+ syncSessionPermission() {
128
+ if (!MotionSensorProvider.isIosMotionPermissionRequired()) {
129
+ this._hasPermission = true;
130
+ return;
131
+ }
132
+ if (MotionSensorProvider.hasMotionPermissionGrantedInSession()) this._hasPermission = true;
133
+ else if (MotionSensorProvider.hasMotionPermissionDeniedInSession()) this._hasPermission = false;
134
+ }
95
135
  async requestPermission() {
96
- if (typeof DeviceMotionEvent !== "undefined" && typeof DeviceMotionEvent.requestPermission === "function") {
97
- sessionStorage.setItem("motionSensorsPermissionsRequested", String(true));
98
- try {
99
- if (await DeviceMotionEvent.requestPermission() !== "granted") {
100
- this._hasPermission = false;
101
- return "denied";
102
- }
103
- return "granted";
104
- } catch {
136
+ if (!MotionSensorProvider.isIosMotionPermissionRequired()) return "not-required";
137
+ if (MotionSensorProvider.hasMotionPermissionGrantedInSession()) {
138
+ this._hasPermission = true;
139
+ return "granted";
140
+ }
141
+ if (MotionSensorProvider.hasMotionPermissionDeniedInSession()) {
142
+ this._hasPermission = false;
143
+ return "denied";
144
+ }
145
+ try {
146
+ if (await DeviceMotionEvent.requestPermission() !== "granted") {
105
147
  this._hasPermission = false;
148
+ this.markMotionPermissionDeniedInSession();
106
149
  return "denied";
107
150
  }
151
+ this._hasPermission = true;
152
+ this.markMotionPermissionGrantedInSession();
153
+ return "granted";
154
+ } catch {
155
+ this._hasPermission = false;
156
+ this.markMotionPermissionDeniedInSession();
157
+ return "denied";
108
158
  }
109
- return "not-required";
110
159
  }
111
160
  initializeAccelerometer() {
112
161
  if (!("Accelerometer" in window)) return;
@@ -129,6 +178,7 @@ var MotionSensorProvider = class {
129
178
  } catch {}
130
179
  }
131
180
  async start() {
181
+ this.syncSessionPermission();
132
182
  if (this._isRunning || !this._hasPermission) return;
133
183
  try {
134
184
  this.initializeAccelerometer();
@@ -1,4 +1,4 @@
1
- import { t as loadOpenVidu } from "./openviduLazy-Cok70ZSg.esm.js";
1
+ import { t as loadOpenVidu } from "./openviduLazy-Dh14JNJc.esm.js";
2
2
 
3
3
  //#region ../infra/src/providers/browser/OpenViduRecordingProvider.ts
4
4
  function createHiddenContainer() {
@@ -0,0 +1,2 @@
1
+ import { AnyStateMachine, StateMachine, fromCallback, fromPromise } from "xstate";
2
+ export { fromPromise as i, StateMachine as n, fromCallback as r, AnyStateMachine as t };
@@ -0,0 +1,118 @@
1
+ import { t as IncodeCanvas } from "./canvas-SKcRBxsk.esm.js";
2
+
3
+ //#region ../infra/src/media/StreamCanvasCapture.ts
4
+ var StreamCanvasCapture = class {
5
+ constructor(stream, options) {
6
+ this.hasFrame = false;
7
+ this.disposed = false;
8
+ this.eventTarget = new EventTarget();
9
+ this.video = document.createElement("video");
10
+ this.video.srcObject = stream;
11
+ this.video.autoplay = true;
12
+ this.video.playsInline = true;
13
+ this.video.muted = true;
14
+ const settings = stream.getVideoTracks()[0]?.getSettings();
15
+ const initialWidth = options?.width ?? settings?.width ?? 1280;
16
+ const initialHeight = options?.height ?? settings?.height ?? 720;
17
+ this.canvas = document.createElement("canvas");
18
+ this.canvas.width = initialWidth;
19
+ this.canvas.height = initialHeight;
20
+ this.ctx = this.canvas.getContext("2d", { willReadFrequently: true });
21
+ const fps = options?.fps ?? 10;
22
+ const intervalMs = fps > 0 ? Math.max(16, Math.floor(1e3 / fps)) : 0;
23
+ this.video.addEventListener("loadedmetadata", () => {
24
+ if (this.video.videoWidth > 0 && this.video.videoHeight > 0) {
25
+ this.canvas.width = this.video.videoWidth;
26
+ this.canvas.height = this.video.videoHeight;
27
+ }
28
+ });
29
+ try {
30
+ this.video.play();
31
+ } catch {}
32
+ this.rafLoop(intervalMs);
33
+ }
34
+ addEventListener(type, listener, options) {
35
+ this.eventTarget.addEventListener(type, listener, options);
36
+ }
37
+ removeEventListener(type, listener, options) {
38
+ this.eventTarget.removeEventListener(type, listener, options);
39
+ }
40
+ /**
41
+ * Returns the latest cached frame as an {@link IncodeCanvas}.
42
+ */
43
+ getLatestCanvas() {
44
+ if (!this.hasFrame) this.tick();
45
+ if (!this.hasFrame) return null;
46
+ return new IncodeCanvas(this.canvas);
47
+ }
48
+ /**
49
+ * Returns the latest cached frame as raw {@link ImageData}.
50
+ */
51
+ getLatestFrame() {
52
+ if (!this.ctx) return null;
53
+ if (!this.hasFrame) this.tick();
54
+ if (!this.hasFrame) return null;
55
+ try {
56
+ return this.ctx.getImageData(0, 0, this.canvas.width, this.canvas.height);
57
+ } catch {
58
+ return null;
59
+ }
60
+ }
61
+ /**
62
+ * Disposes internal resources and stops the capture loop.
63
+ */
64
+ dispose() {
65
+ if (this.disposed) return;
66
+ this.disposed = true;
67
+ if (this.rafId !== void 0) {
68
+ window.cancelAnimationFrame(this.rafId);
69
+ this.rafId = void 0;
70
+ }
71
+ this.video.srcObject = null;
72
+ this.canvas.width = 0;
73
+ this.canvas.height = 0;
74
+ this.hasFrame = false;
75
+ }
76
+ rafLoop(intervalMs) {
77
+ const loop = (timeMs) => {
78
+ if (this.disposed) return;
79
+ if (intervalMs <= 0 || this.lastTickTimeMs === void 0 || timeMs - this.lastTickTimeMs >= intervalMs) {
80
+ this.lastTickTimeMs = timeMs;
81
+ const previousFrameTimeSeconds = this.lastFrameTimeSeconds;
82
+ this.tick();
83
+ const currentFrameTimeSeconds = this.video.currentTime;
84
+ if (previousFrameTimeSeconds === void 0) {
85
+ if (this.hasFrame) {
86
+ this.lastFrameTimeSeconds = currentFrameTimeSeconds;
87
+ this.eventTarget.dispatchEvent(new Event("frame"));
88
+ }
89
+ } else if (this.hasFrame && currentFrameTimeSeconds !== previousFrameTimeSeconds) {
90
+ this.lastFrameTimeSeconds = currentFrameTimeSeconds;
91
+ this.eventTarget.dispatchEvent(new Event("frame"));
92
+ }
93
+ }
94
+ this.rafId = window.requestAnimationFrame(loop);
95
+ };
96
+ this.rafId = window.requestAnimationFrame(loop);
97
+ }
98
+ tick() {
99
+ if (!this.ctx) return;
100
+ if (this.video.readyState < HTMLMediaElement.HAVE_CURRENT_DATA) return;
101
+ const videoWidth = this.video.videoWidth;
102
+ const videoHeight = this.video.videoHeight;
103
+ if (videoWidth === 0 || videoHeight === 0) return;
104
+ if (this.canvas.width !== videoWidth || this.canvas.height !== videoHeight) {
105
+ this.canvas.width = videoWidth;
106
+ this.canvas.height = videoHeight;
107
+ }
108
+ try {
109
+ this.ctx.drawImage(this.video, 0, 0);
110
+ this.hasFrame = true;
111
+ } catch {
112
+ this.hasFrame = false;
113
+ }
114
+ }
115
+ };
116
+
117
+ //#endregion
118
+ export { StreamCanvasCapture as t };
@@ -0,0 +1,152 @@
1
+ import { t as CameraStream } from "./camera-SRBpPq2X.js";
2
+
3
+ //#region ../infra/src/media/canvas.d.ts
4
+ /**
5
+ * Class representing a canvas element for image capture and manipulation.
6
+ */
7
+ declare class IncodeCanvas {
8
+ canvas: HTMLCanvasElement;
9
+ private base64Image;
10
+ private blobData;
11
+ /**
12
+ * Creates an {@link IncodeCanvas} from a raw {@link ImageData} frame.
13
+ * @param imageData - Frame pixels in RGBA format
14
+ * @returns An {@link IncodeCanvas} containing the provided pixels
15
+ */
16
+ static fromImageData(imageData: ImageData): IncodeCanvas;
17
+ /**
18
+ * Create a new canvas element.
19
+ * @param canvas_ - The canvas element to clone.
20
+ */
21
+ constructor(canvas_: HTMLCanvasElement);
22
+ /**
23
+ * Check if the current canvas is valid.
24
+ */
25
+ private checkCanvas;
26
+ /**
27
+ * Disposes of resources, including revoking object URLs to prevent memory leaks.
28
+ */
29
+ dispose(): void;
30
+ /**
31
+ * Release the data stored by IncodeCanvas.
32
+ */
33
+ release(): void;
34
+ /**
35
+ * Revokes the object URL if one exists, preventing memory leaks.
36
+ * Use this when you no longer need the preview image URL.
37
+ */
38
+ revokeObjectURL(): void;
39
+ /**
40
+ * Get the width of the canvas.
41
+ */
42
+ width(): number | null;
43
+ /**
44
+ * Get the height of the canvas.
45
+ */
46
+ height(): number | null;
47
+ /**
48
+ * Set the width of the canvas.
49
+ */
50
+ setWidth(width: number): void;
51
+ /**
52
+ * Set the height of the canvas.
53
+ */
54
+ setHeight(height: number): void;
55
+ /**
56
+ * Clone the current canvas.
57
+ */
58
+ clone(): IncodeCanvas | null;
59
+ /**
60
+ * Deep clone the current IncodeCanvas including blob data.
61
+ */
62
+ deepClone(): Promise<IncodeCanvas | null>;
63
+ /**
64
+ * Returns the drawing context on the canvas.
65
+ */
66
+ getContext(contextId: '2d', contextAttributes?: CanvasRenderingContext2DSettings): CanvasRenderingContext2D | null;
67
+ /**
68
+ * Retrieves the image data from the canvas.
69
+ */
70
+ getImageData(): ImageData | null;
71
+ /**
72
+ * Updates the base64 representation of the current canvas image.
73
+ */
74
+ updateBase64Image(jpegQuality?: number): void;
75
+ /**
76
+ * Converts the current canvas element to a base64 string.
77
+ */
78
+ getBase64Image(jpegQuality?: number, includeDataURLPrefix?: boolean): string | null;
79
+ /**
80
+ * Sets the base64 representation of the current canvas image.
81
+ */
82
+ setBase64Image(base64Image: string | null): void;
83
+ /**
84
+ * Updates the Blob representation of the current canvas image.
85
+ */
86
+ updateBlob(jpegQuality?: number, includeDataURLPrefix?: boolean): void;
87
+ /**
88
+ * Converts a base64 string to a Blob and creates a URL for it.
89
+ */
90
+ static base64ToBlob(base64: string): {
91
+ blob: Blob;
92
+ url: string;
93
+ } | null;
94
+ /**
95
+ * Retrieves the Blob data and its URL from the current canvas.
96
+ */
97
+ getBlobData(jpegQuality?: number, includeDataURLPrefix?: boolean): {
98
+ blob: Blob;
99
+ url: string;
100
+ } | null;
101
+ /**
102
+ * Sets the Blob data of the current canvas image.
103
+ */
104
+ setBlobData(blobData: {
105
+ blob: Blob;
106
+ url: string;
107
+ }): Promise<void>;
108
+ /**
109
+ * Returns a resized canvas according to video element size.
110
+ */
111
+ getResizedCanvas(videoElementWidth: number, videoElementHeight: number): IncodeCanvas | null;
112
+ }
113
+ //#endregion
114
+ //#region ../infra/src/media/StreamCanvasCapture.d.ts
115
+ type StreamCanvasCaptureOptions = {
116
+ fps?: number;
117
+ width?: number;
118
+ height?: number;
119
+ };
120
+ type StreamCanvasCaptureEventMap = {
121
+ frame: Event;
122
+ };
123
+ declare class StreamCanvasCapture {
124
+ private video;
125
+ private canvas;
126
+ private ctx;
127
+ private rafId;
128
+ private lastFrameTimeSeconds;
129
+ private lastTickTimeMs;
130
+ private hasFrame;
131
+ private disposed;
132
+ private eventTarget;
133
+ constructor(stream: CameraStream, options?: StreamCanvasCaptureOptions);
134
+ addEventListener(type: keyof StreamCanvasCaptureEventMap, listener: EventListenerOrEventListenerObject | null, options?: boolean | AddEventListenerOptions): void;
135
+ removeEventListener(type: keyof StreamCanvasCaptureEventMap, listener: EventListenerOrEventListenerObject | null, options?: boolean | EventListenerOptions): void;
136
+ /**
137
+ * Returns the latest cached frame as an {@link IncodeCanvas}.
138
+ */
139
+ getLatestCanvas(): IncodeCanvas | null;
140
+ /**
141
+ * Returns the latest cached frame as raw {@link ImageData}.
142
+ */
143
+ getLatestFrame(): ImageData | null;
144
+ /**
145
+ * Disposes internal resources and stops the capture loop.
146
+ */
147
+ dispose(): void;
148
+ private rafLoop;
149
+ private tick;
150
+ }
151
+ //#endregion
152
+ export { IncodeCanvas as n, StreamCanvasCapture as t };
@@ -1,3 +1,13 @@
1
+ //#region ../infra/src/wasm/wasmPathUtils.ts
2
+ function deriveSiblingJsPath(wasmPath) {
3
+ const index = wasmPath.lastIndexOf(".wasm");
4
+ if (index === -1) return wasmPath;
5
+ const rest = wasmPath.slice(index + 5);
6
+ if (rest !== "" && !rest.startsWith("?")) return wasmPath;
7
+ return `${wasmPath.slice(0, index)}.js${rest}`;
8
+ }
9
+
10
+ //#endregion
1
11
  //#region ../infra/src/providers/browser/SemaphoreProvider.ts
2
12
  const DEFAULT_ACQUIRE_TIMEOUT_MS = 3e4;
3
13
  /**
@@ -99,6 +109,26 @@ var SemaphoreProvider = class {
99
109
 
100
110
  //#endregion
101
111
  //#region ../infra/src/wasm/apiUtilities.ts
112
+ /**
113
+ * Shared WASM module loader.
114
+ *
115
+ * The pinned `webLib.wasm` (see `wasmDefaults.ts`) bundles BOTH the ML pipeline
116
+ * APIs (used by `mlWasmJSApi.ts`) AND a C++ `WebClient` HTTP client (used by
117
+ * `wasmWebClient.ts`). Both consumers must share a single instantiated
118
+ * `wasmModule` — calling the glue `Module()` factory twice would re-instantiate
119
+ * the WASM heap and produce divergent state.
120
+ *
121
+ * This module memoizes the load: the first caller (whichever arrives first —
122
+ * ML init or HTTP init) triggers the fetch + glue load, and subsequent callers
123
+ * await the same promise. Idempotent on success; on failure, the singleton is
124
+ * cleared so the next caller retries.
125
+ *
126
+ * SIMD fallback mirrors the legacy behavior: try the SIMD binary + SIMD glue
127
+ * (`webLibSimd.js` + `webLibSimd.wasm`) first, fall back to the non-SIMD pair
128
+ * (`webLib.js` + `webLib.wasm`) on instantiation failure. Each binary MUST be
129
+ * paired with its matching glue — the CDN ships them as paired artifacts and
130
+ * mixing them produces an unusable module.
131
+ */
102
132
  if (typeof window !== "undefined" && window.wasmArrayBuffer === void 0) window.wasmArrayBuffer = null;
103
133
  let loadPromise = null;
104
134
  let loadedResult = null;
@@ -122,15 +152,6 @@ async function instantiate(factory, libPath) {
122
152
  return await factory();
123
153
  }
124
154
  /**
125
- * Derive a sibling `.js` path from a `.wasm` path by replacing the trailing
126
- * extension. Used as a last-resort default when callers pass a `wasmSimdPath`
127
- * without an accompanying `glueCodeSimdPath` — matches the legacy CDN naming
128
- * convention (`webLibSimd.wasm` <-> `webLibSimd.js`).
129
- */
130
- function deriveSiblingJsPath(wasmPath) {
131
- return wasmPath.replace(/\.wasm($|\?)/, ".js$1");
132
- }
133
- /**
134
155
  * Load the WASM module, memoized. Subsequent calls return the same instance.
135
156
  *
136
157
  * SIMD-first with fallback: if `useSimd !== false` and a `wasmSimdPath` is
@@ -752,12 +773,32 @@ var MlWasmJSApi = class MlWasmJSApi {
752
773
  }
753
774
  async prc() {
754
775
  this.checkWasmInitialization("Unable to prc, cpp API hasn't been initialized");
755
- await wasmCallWrapper(this.wasmCallSemaphore, () => this.utilityApi.prc(), true);
776
+ await wasmCallWrapper(this.wasmCallSemaphore, () => this.utilityApi.prc(false), true);
756
777
  }
757
778
  async poc(output) {
758
779
  this.checkWasmInitialization("Unable to poc, cpp API hasn't been initialized");
759
780
  await wasmCallWrapper(this.wasmCallSemaphore, () => this.utilityApi.poc(output), true);
760
781
  }
782
+ async rsp() {
783
+ this.checkWasmInitialization("Unable to rsp, cpp API hasn't been initialized");
784
+ await wasmCallWrapper(this.wasmCallSemaphore, () => this.utilityApi.rsp(), true);
785
+ }
786
+ ssl() {
787
+ this.checkWasmInitialization("Unable to ssl, cpp API hasn't been initialized");
788
+ this.utilityApi.ssl();
789
+ }
790
+ stl() {
791
+ this.checkWasmInitialization("Unable to stl, cpp API hasn't been initialized");
792
+ this.utilityApi.stl();
793
+ }
794
+ osv() {
795
+ this.checkWasmInitialization("Unable to set sensor beginning timestamp, cpp API hasn't been initialized");
796
+ this.utilityApi.osv();
797
+ }
798
+ oev() {
799
+ this.checkWasmInitialization("Unable to set sensor ending timestamp, cpp API hasn't been initialized");
800
+ this.utilityApi.oev();
801
+ }
761
802
  ckvcks(data) {
762
803
  this.checkWasmInitialization("Unable to ckvcks, cpp API hasn't been initialized");
763
804
  this.utilityApi.ckvcks(data);
@@ -1115,4 +1156,135 @@ var BaseWasmProvider = class {
1115
1156
  };
1116
1157
 
1117
1158
  //#endregion
1118
- export { executeWasmRequest as a, setupWasmConnection as c, WasmWebClientError as i, WasmPipelineType as l, warmupWasm as n, initializeWasmWebClient as o, mlWasmJSApi_default as r, setWebApiHttpTransport as s, BaseWasmProvider as t, IdCaptureModelType as u };
1159
+ //#region ../infra/src/providers/wasm/WasmUtilProvider.ts
1160
+ var WasmUtilProvider = class WasmUtilProvider extends BaseWasmProvider {
1161
+ static async getInstance() {
1162
+ if (WasmUtilProvider.instance) return WasmUtilProvider.instance;
1163
+ if (WasmUtilProvider.initPromise) return WasmUtilProvider.initPromise;
1164
+ WasmUtilProvider.initPromise = (async () => {
1165
+ const instance = new WasmUtilProvider();
1166
+ await instance.initializeBase({}, "selfie");
1167
+ WasmUtilProvider.instance = instance;
1168
+ return instance;
1169
+ })();
1170
+ return WasmUtilProvider.initPromise;
1171
+ }
1172
+ static resetInstance() {
1173
+ WasmUtilProvider.instance = void 0;
1174
+ WasmUtilProvider.initPromise = void 0;
1175
+ }
1176
+ constructor() {
1177
+ super(void 0);
1178
+ }
1179
+ async initialize(config) {
1180
+ if (this.initialized) return;
1181
+ const pipeline = config.pipelines?.[0] ?? "selfie";
1182
+ await this.initializeBase(config, pipeline);
1183
+ }
1184
+ async processFrame(_image) {
1185
+ throw new Error("WasmUtilProvider does not support frame processing. Use encryptImage() instead.");
1186
+ }
1187
+ encryptImage(image) {
1188
+ this.ensureInitialized();
1189
+ return mlWasmJSApi_default.ens(image);
1190
+ }
1191
+ setSdkVersion(version) {
1192
+ this.ensureInitialized();
1193
+ mlWasmJSApi_default.setSdkVersion(version);
1194
+ }
1195
+ setSdkPlatform(platform) {
1196
+ this.ensureInitialized();
1197
+ mlWasmJSApi_default.setSdkPlatform(platform);
1198
+ }
1199
+ setDeviceInfo(deviceInfo, overrideExisting = true) {
1200
+ this.ensureInitialized();
1201
+ mlWasmJSApi_default.setDeviceInfo(deviceInfo, overrideExisting);
1202
+ }
1203
+ setBrowserInfo(browserInfo, overrideExisting = true) {
1204
+ this.ensureInitialized();
1205
+ mlWasmJSApi_default.setBrowserInfo(browserInfo, overrideExisting);
1206
+ }
1207
+ setCameraInfo(cameraInfo, overrideExisting = true) {
1208
+ this.ensureInitialized();
1209
+ mlWasmJSApi_default.setCameraInfo(cameraInfo, overrideExisting);
1210
+ }
1211
+ setMotionStatus(status) {
1212
+ this.ensureInitialized();
1213
+ mlWasmJSApi_default.setMotionStatus(status);
1214
+ }
1215
+ setBackgroundMode(backgroundMode) {
1216
+ this.ensureInitialized();
1217
+ mlWasmJSApi_default.setBackgroundMode(backgroundMode);
1218
+ }
1219
+ setZc(zc) {
1220
+ this.ensureInitialized();
1221
+ mlWasmJSApi_default.setZc(zc);
1222
+ }
1223
+ setInspectorOpened(opened) {
1224
+ this.ensureInitialized();
1225
+ mlWasmJSApi_default.setInspectorOpened(opened);
1226
+ }
1227
+ getMetadata() {
1228
+ this.ensureInitialized();
1229
+ return mlWasmJSApi_default.getMetadata();
1230
+ }
1231
+ async analyzeFrame(image) {
1232
+ this.ensureInitialized();
1233
+ await mlWasmJSApi_default.analyzeFrame(image);
1234
+ }
1235
+ getCheck() {
1236
+ this.ensureInitialized();
1237
+ return mlWasmJSApi_default.getCheck();
1238
+ }
1239
+ getPipelineState() {
1240
+ this.ensureInitialized();
1241
+ return mlWasmJSApi_default.getPipelineState();
1242
+ }
1243
+ estimatePerformance() {
1244
+ this.ensureInitialized();
1245
+ return mlWasmJSApi_default.estimatePerformance();
1246
+ }
1247
+ isVirtualCamera(label) {
1248
+ this.ensureInitialized();
1249
+ return mlWasmJSApi_default.isVirtualCamera(label);
1250
+ }
1251
+ async prc() {
1252
+ this.ensureInitialized();
1253
+ await mlWasmJSApi_default.prc();
1254
+ }
1255
+ async poc(output) {
1256
+ this.ensureInitialized();
1257
+ await mlWasmJSApi_default.poc(output);
1258
+ }
1259
+ async rsp() {
1260
+ this.ensureInitialized();
1261
+ await mlWasmJSApi_default.rsp();
1262
+ }
1263
+ ssl() {
1264
+ this.ensureInitialized();
1265
+ mlWasmJSApi_default.ssl();
1266
+ }
1267
+ stl() {
1268
+ this.ensureInitialized();
1269
+ mlWasmJSApi_default.stl();
1270
+ }
1271
+ osv() {
1272
+ this.ensureInitialized();
1273
+ mlWasmJSApi_default.osv();
1274
+ }
1275
+ oev() {
1276
+ this.ensureInitialized();
1277
+ mlWasmJSApi_default.oev();
1278
+ }
1279
+ ckvcks(data) {
1280
+ this.ensureInitialized();
1281
+ mlWasmJSApi_default.ckvcks(data);
1282
+ }
1283
+ async getVersions() {
1284
+ this.ensureInitialized();
1285
+ return mlWasmJSApi_default.getVersions();
1286
+ }
1287
+ };
1288
+
1289
+ //#endregion
1290
+ export { WasmWebClientError as a, setWebApiHttpTransport as c, IdCaptureModelType as d, deriveSiblingJsPath as f, mlWasmJSApi_default as i, setupWasmConnection as l, BaseWasmProvider as n, executeWasmRequest as o, warmupWasm as r, initializeWasmWebClient as s, WasmUtilProvider as t, WasmPipelineType as u };