smartcomply-web-sdk 1.0.49 → 1.0.51

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 (41) hide show
  1. package/dist/camera/ActionDetector.d.ts +15 -21
  2. package/dist/camera/ActionDetector.d.ts.map +1 -1
  3. package/dist/camera/ActionDetector.js +51 -104
  4. package/dist/camera/ActionDetector.js.map +1 -1
  5. package/dist/esm/camera/ActionDetector.d.ts +15 -21
  6. package/dist/esm/camera/ActionDetector.d.ts.map +1 -1
  7. package/dist/esm/camera/ActionDetector.js +51 -104
  8. package/dist/esm/camera/ActionDetector.js.map +1 -1
  9. package/dist/esm/flow/SmartComplyFlow.d.ts.map +1 -1
  10. package/dist/esm/flow/SmartComplyFlow.js +3 -4
  11. package/dist/esm/flow/SmartComplyFlow.js.map +1 -1
  12. package/dist/esm/modules/liveness/LivenessUI.d.ts +19 -15
  13. package/dist/esm/modules/liveness/LivenessUI.d.ts.map +1 -1
  14. package/dist/esm/modules/liveness/LivenessUI.js +99 -311
  15. package/dist/esm/modules/liveness/LivenessUI.js.map +1 -1
  16. package/dist/esm/modules/liveness/liveness.d.ts +10 -9
  17. package/dist/esm/modules/liveness/liveness.d.ts.map +1 -1
  18. package/dist/esm/modules/liveness/liveness.js +57 -104
  19. package/dist/esm/modules/liveness/liveness.js.map +1 -1
  20. package/dist/esm/utils/constants.d.ts +12 -6
  21. package/dist/esm/utils/constants.d.ts.map +1 -1
  22. package/dist/esm/utils/constants.js +13 -7
  23. package/dist/esm/utils/constants.js.map +1 -1
  24. package/dist/flow/SmartComplyFlow.d.ts.map +1 -1
  25. package/dist/flow/SmartComplyFlow.js +3 -4
  26. package/dist/flow/SmartComplyFlow.js.map +1 -1
  27. package/dist/modules/liveness/LivenessUI.d.ts +19 -15
  28. package/dist/modules/liveness/LivenessUI.d.ts.map +1 -1
  29. package/dist/modules/liveness/LivenessUI.js +99 -311
  30. package/dist/modules/liveness/LivenessUI.js.map +1 -1
  31. package/dist/modules/liveness/liveness.d.ts +10 -9
  32. package/dist/modules/liveness/liveness.d.ts.map +1 -1
  33. package/dist/modules/liveness/liveness.js +56 -103
  34. package/dist/modules/liveness/liveness.js.map +1 -1
  35. package/dist/smartcomply.browser.js +213 -513
  36. package/dist/smartcomply.browser.js.map +3 -3
  37. package/dist/utils/constants.d.ts +12 -6
  38. package/dist/utils/constants.d.ts.map +1 -1
  39. package/dist/utils/constants.js +13 -7
  40. package/dist/utils/constants.js.map +1 -1
  41. package/package.json +2 -2
@@ -22,13 +22,19 @@ export declare const MAX_SNAPSHOT_BYTES: number;
22
22
  export declare const ACCEPTED_IMAGE_TYPES: readonly ["image/jpeg", "image/png", "image/webp"];
23
23
  /** JPEG quality used when encoding captured frames (0–1). */
24
24
  export declare const CAPTURE_JPEG_QUALITY = 0.92;
25
- /** Backend-accepted challenge actions (UPPERCASE). */
25
+ /** Backend-accepted challenge actions (UPPERCASE). Kept for backward compatibility. */
26
26
  export declare const CHALLENGE_ACTIONS: readonly ["BLINK", "TURN_LEFT", "TURN_RIGHT", "TURN_HEAD", "OPEN_MOUTH"];
27
- /** Default set sent when the caller does not specify actions. */
28
- export declare const DEFAULT_CHALLENGE_ACTIONS: readonly ["BLINK", "TURN_HEAD", "OPEN_MOUTH"];
29
- /** Time limit per liveness attempt in seconds. */
30
- export declare const LIVENESS_TIME_LIMIT_SECONDS = 45;
31
- /** Milliseconds to pause after all actions before capturing the final snapshot. */
27
+ /**
28
+ * Default action tag sent to the backend. The widget no longer runs a
29
+ * discrete multi-step challenge (turn left/right, open mouth) — it's a
30
+ * single passive scan window where the user is asked to "blink and look
31
+ * around naturally." BLINK is sent as the liveness proof tag; the backend
32
+ * already accepts a single-action list unchanged.
33
+ */
34
+ export declare const DEFAULT_CHALLENGE_ACTIONS: readonly ["BLINK"];
35
+ /** Time limit for the natural-motion scan window, in seconds. */
36
+ export declare const LIVENESS_TIME_LIMIT_SECONDS = 12;
37
+ /** Milliseconds to pause after the scan completes before capturing the final snapshot. */
32
38
  export declare const POST_ACTION_SETTLE_MS = 800;
33
39
  /** Ideal resolution for the front-facing liveness camera. */
34
40
  export declare const CAMERA_IDEAL_WIDTH = 640;
@@ -1 +1 @@
1
- {"version":3,"file":"constants.d.ts","sourceRoot":"","sources":["../../src/utils/constants.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAIH,wDAAwD;AACxD,eAAO,MAAM,cAAc,QAAiB,CAAC;AAE7C,yDAAyD;AACzD,eAAO,MAAM,sBAAsB,QAAgB,CAAC;AAIpD,+CAA+C;AAC/C,eAAO,MAAM,kBAAkB,QAAS,CAAC;AAEzC,+DAA+D;AAC/D,eAAO,MAAM,WAAW,IAAI,CAAC;AAE7B,6CAA6C;AAC7C,eAAO,MAAM,cAAc,OAAQ,CAAC;AAIpC,8DAA8D;AAC9D,eAAO,MAAM,kBAAkB,QAAkB,CAAC;AAElD,sDAAsD;AACtD,eAAO,MAAM,eAAe,QAAmB,CAAC;AAEhD,+CAA+C;AAC/C,eAAO,MAAM,kBAAkB,QAAkB,CAAC;AAElD,+CAA+C;AAC/C,eAAO,MAAM,oBAAoB,oDAAqD,CAAC;AAEvF,6DAA6D;AAC7D,eAAO,MAAM,oBAAoB,OAAO,CAAC;AAIzC,sDAAsD;AACtD,eAAO,MAAM,iBAAiB,0EAA2E,CAAC;AAE1G,iEAAiE;AACjE,eAAO,MAAM,yBAAyB,+CAAgD,CAAC;AAEvF,kDAAkD;AAClD,eAAO,MAAM,2BAA2B,KAAK,CAAC;AAE9C,mFAAmF;AACnF,eAAO,MAAM,qBAAqB,MAAM,CAAC;AAIzC,6DAA6D;AAC7D,eAAO,MAAM,kBAAkB,MAAO,CAAC;AACvC,eAAO,MAAM,mBAAmB,MAAM,CAAC;AAEvC,gEAAgE;AAChE,eAAO,MAAM,sBAAsB,OAAQ,CAAC;AAC5C,eAAO,MAAM,uBAAuB,MAAM,CAAC;AAE3C,oFAAoF;AACpF,eAAO,MAAM,yBAAyB,SAAU,CAAC;AAIjD,gFAAgF;AAChF,eAAO,MAAM,sBAAsB,QAAS,CAAC;AAE7C,wDAAwD;AACxD,eAAO,MAAM,mBAAmB,MAAM,CAAC;AAIvC,2EAA2E;AAC3E,eAAO,MAAM,0BAA0B,OAAQ,CAAC;AAEhD,mEAAmE;AACnE,eAAO,MAAM,uBAAuB,gBAAgB,CAAC;AAErD,8EAA8E;AAC9E,eAAO,MAAM,eAAe,QAAS,CAAC"}
1
+ {"version":3,"file":"constants.d.ts","sourceRoot":"","sources":["../../src/utils/constants.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAIH,wDAAwD;AACxD,eAAO,MAAM,cAAc,QAAiB,CAAC;AAE7C,yDAAyD;AACzD,eAAO,MAAM,sBAAsB,QAAgB,CAAC;AAIpD,+CAA+C;AAC/C,eAAO,MAAM,kBAAkB,QAAS,CAAC;AAEzC,+DAA+D;AAC/D,eAAO,MAAM,WAAW,IAAI,CAAC;AAE7B,6CAA6C;AAC7C,eAAO,MAAM,cAAc,OAAQ,CAAC;AAIpC,8DAA8D;AAC9D,eAAO,MAAM,kBAAkB,QAAkB,CAAC;AAElD,sDAAsD;AACtD,eAAO,MAAM,eAAe,QAAmB,CAAC;AAEhD,+CAA+C;AAC/C,eAAO,MAAM,kBAAkB,QAAkB,CAAC;AAElD,+CAA+C;AAC/C,eAAO,MAAM,oBAAoB,oDAAqD,CAAC;AAEvF,6DAA6D;AAC7D,eAAO,MAAM,oBAAoB,OAAO,CAAC;AAIzC,uFAAuF;AACvF,eAAO,MAAM,iBAAiB,0EAA2E,CAAC;AAE1G;;;;;;GAMG;AACH,eAAO,MAAM,yBAAyB,oBAAqB,CAAC;AAE5D,iEAAiE;AACjE,eAAO,MAAM,2BAA2B,KAAK,CAAC;AAE9C,0FAA0F;AAC1F,eAAO,MAAM,qBAAqB,MAAM,CAAC;AAIzC,6DAA6D;AAC7D,eAAO,MAAM,kBAAkB,MAAO,CAAC;AACvC,eAAO,MAAM,mBAAmB,MAAM,CAAC;AAEvC,gEAAgE;AAChE,eAAO,MAAM,sBAAsB,OAAQ,CAAC;AAC5C,eAAO,MAAM,uBAAuB,MAAM,CAAC;AAE3C,oFAAoF;AACpF,eAAO,MAAM,yBAAyB,SAAU,CAAC;AAIjD,gFAAgF;AAChF,eAAO,MAAM,sBAAsB,QAAS,CAAC;AAE7C,wDAAwD;AACxD,eAAO,MAAM,mBAAmB,MAAM,CAAC;AAIvC,2EAA2E;AAC3E,eAAO,MAAM,0BAA0B,OAAQ,CAAC;AAEhD,mEAAmE;AACnE,eAAO,MAAM,uBAAuB,gBAAgB,CAAC;AAErD,8EAA8E;AAC9E,eAAO,MAAM,eAAe,QAAS,CAAC"}
@@ -28,14 +28,20 @@ exports.MAX_SNAPSHOT_BYTES = 2 * 1024 * 1024;
28
28
  exports.ACCEPTED_IMAGE_TYPES = ["image/jpeg", "image/png", "image/webp"];
29
29
  /** JPEG quality used when encoding captured frames (0–1). */
30
30
  exports.CAPTURE_JPEG_QUALITY = 0.92;
31
- // ── Liveness challenge ───────────────────────────────────────────────────────
32
- /** Backend-accepted challenge actions (UPPERCASE). */
31
+ // ── Liveness scan ────────────────────────────────────────────────────────────
32
+ /** Backend-accepted challenge actions (UPPERCASE). Kept for backward compatibility. */
33
33
  exports.CHALLENGE_ACTIONS = ["BLINK", "TURN_LEFT", "TURN_RIGHT", "TURN_HEAD", "OPEN_MOUTH"];
34
- /** Default set sent when the caller does not specify actions. */
35
- exports.DEFAULT_CHALLENGE_ACTIONS = ["BLINK", "TURN_HEAD", "OPEN_MOUTH"];
36
- /** Time limit per liveness attempt in seconds. */
37
- exports.LIVENESS_TIME_LIMIT_SECONDS = 45;
38
- /** Milliseconds to pause after all actions before capturing the final snapshot. */
34
+ /**
35
+ * Default action tag sent to the backend. The widget no longer runs a
36
+ * discrete multi-step challenge (turn left/right, open mouth) — it's a
37
+ * single passive scan window where the user is asked to "blink and look
38
+ * around naturally." BLINK is sent as the liveness proof tag; the backend
39
+ * already accepts a single-action list unchanged.
40
+ */
41
+ exports.DEFAULT_CHALLENGE_ACTIONS = ["BLINK"];
42
+ /** Time limit for the natural-motion scan window, in seconds. */
43
+ exports.LIVENESS_TIME_LIMIT_SECONDS = 12;
44
+ /** Milliseconds to pause after the scan completes before capturing the final snapshot. */
39
45
  exports.POST_ACTION_SETTLE_MS = 800;
40
46
  // ── Camera ───────────────────────────────────────────────────────────────────
41
47
  /** Ideal resolution for the front-facing liveness camera. */
@@ -1 +1 @@
1
- {"version":3,"file":"constants.js","sourceRoot":"","sources":["../../src/utils/constants.ts"],"names":[],"mappings":";AAAA;;;GAGG;;;AAEH,gFAAgF;AAEhF,wDAAwD;AAC3C,QAAA,cAAc,GAAG,EAAE,GAAG,EAAE,GAAG,IAAI,CAAC;AAE7C,yDAAyD;AAC5C,QAAA,sBAAsB,GAAG,CAAC,GAAG,EAAE,GAAG,IAAI,CAAC;AAEpD,gFAAgF;AAEhF,+CAA+C;AAClC,QAAA,kBAAkB,GAAG,KAAM,CAAC;AAEzC,+DAA+D;AAClD,QAAA,WAAW,GAAG,CAAC,CAAC;AAE7B,6CAA6C;AAChC,QAAA,cAAc,GAAG,IAAK,CAAC;AAEpC,gFAAgF;AAEhF,8DAA8D;AACjD,QAAA,kBAAkB,GAAG,CAAC,GAAG,IAAI,GAAG,IAAI,CAAC;AAElD,sDAAsD;AACzC,QAAA,eAAe,GAAG,EAAE,GAAG,IAAI,GAAG,IAAI,CAAC;AAEhD,+CAA+C;AAClC,QAAA,kBAAkB,GAAG,CAAC,GAAG,IAAI,GAAG,IAAI,CAAC;AAElD,+CAA+C;AAClC,QAAA,oBAAoB,GAAG,CAAC,YAAY,EAAE,WAAW,EAAE,YAAY,CAAU,CAAC;AAEvF,6DAA6D;AAChD,QAAA,oBAAoB,GAAG,IAAI,CAAC;AAEzC,gFAAgF;AAEhF,sDAAsD;AACzC,QAAA,iBAAiB,GAAG,CAAC,OAAO,EAAE,WAAW,EAAE,YAAY,EAAE,WAAW,EAAE,YAAY,CAAU,CAAC;AAE1G,iEAAiE;AACpD,QAAA,yBAAyB,GAAG,CAAC,OAAO,EAAE,WAAW,EAAE,YAAY,CAAU,CAAC;AAEvF,kDAAkD;AACrC,QAAA,2BAA2B,GAAG,EAAE,CAAC;AAE9C,mFAAmF;AACtE,QAAA,qBAAqB,GAAG,GAAG,CAAC;AAEzC,gFAAgF;AAEhF,6DAA6D;AAChD,QAAA,kBAAkB,GAAI,GAAG,CAAC;AAC1B,QAAA,mBAAmB,GAAG,GAAG,CAAC;AAEvC,gEAAgE;AACnD,QAAA,sBAAsB,GAAI,IAAI,CAAC;AAC/B,QAAA,uBAAuB,GAAG,GAAG,CAAC;AAE3C,oFAAoF;AACvE,QAAA,yBAAyB,GAAG,MAAO,CAAC;AAEjD,gFAAgF;AAEhF,gFAAgF;AACnE,QAAA,sBAAsB,GAAG,KAAM,CAAC;AAE7C,wDAAwD;AAC3C,QAAA,mBAAmB,GAAG,GAAG,CAAC;AAEvC,gFAAgF;AAEhF,2EAA2E;AAC9D,QAAA,0BAA0B,GAAG,IAAK,CAAC;AAEhD,mEAAmE;AACtD,QAAA,uBAAuB,GAAG,aAAa,CAAC;AAErD,8EAA8E;AACjE,QAAA,eAAe,GAAG,KAAM,CAAC"}
1
+ {"version":3,"file":"constants.js","sourceRoot":"","sources":["../../src/utils/constants.ts"],"names":[],"mappings":";AAAA;;;GAGG;;;AAEH,gFAAgF;AAEhF,wDAAwD;AAC3C,QAAA,cAAc,GAAG,EAAE,GAAG,EAAE,GAAG,IAAI,CAAC;AAE7C,yDAAyD;AAC5C,QAAA,sBAAsB,GAAG,CAAC,GAAG,EAAE,GAAG,IAAI,CAAC;AAEpD,gFAAgF;AAEhF,+CAA+C;AAClC,QAAA,kBAAkB,GAAG,KAAM,CAAC;AAEzC,+DAA+D;AAClD,QAAA,WAAW,GAAG,CAAC,CAAC;AAE7B,6CAA6C;AAChC,QAAA,cAAc,GAAG,IAAK,CAAC;AAEpC,gFAAgF;AAEhF,8DAA8D;AACjD,QAAA,kBAAkB,GAAG,CAAC,GAAG,IAAI,GAAG,IAAI,CAAC;AAElD,sDAAsD;AACzC,QAAA,eAAe,GAAG,EAAE,GAAG,IAAI,GAAG,IAAI,CAAC;AAEhD,+CAA+C;AAClC,QAAA,kBAAkB,GAAG,CAAC,GAAG,IAAI,GAAG,IAAI,CAAC;AAElD,+CAA+C;AAClC,QAAA,oBAAoB,GAAG,CAAC,YAAY,EAAE,WAAW,EAAE,YAAY,CAAU,CAAC;AAEvF,6DAA6D;AAChD,QAAA,oBAAoB,GAAG,IAAI,CAAC;AAEzC,gFAAgF;AAEhF,uFAAuF;AAC1E,QAAA,iBAAiB,GAAG,CAAC,OAAO,EAAE,WAAW,EAAE,YAAY,EAAE,WAAW,EAAE,YAAY,CAAU,CAAC;AAE1G;;;;;;GAMG;AACU,QAAA,yBAAyB,GAAG,CAAC,OAAO,CAAU,CAAC;AAE5D,iEAAiE;AACpD,QAAA,2BAA2B,GAAG,EAAE,CAAC;AAE9C,0FAA0F;AAC7E,QAAA,qBAAqB,GAAG,GAAG,CAAC;AAEzC,gFAAgF;AAEhF,6DAA6D;AAChD,QAAA,kBAAkB,GAAI,GAAG,CAAC;AAC1B,QAAA,mBAAmB,GAAG,GAAG,CAAC;AAEvC,gEAAgE;AACnD,QAAA,sBAAsB,GAAI,IAAI,CAAC;AAC/B,QAAA,uBAAuB,GAAG,GAAG,CAAC;AAE3C,oFAAoF;AACvE,QAAA,yBAAyB,GAAG,MAAO,CAAC;AAEjD,gFAAgF;AAEhF,gFAAgF;AACnE,QAAA,sBAAsB,GAAG,KAAM,CAAC;AAE7C,wDAAwD;AAC3C,QAAA,mBAAmB,GAAG,GAAG,CAAC;AAEvC,gFAAgF;AAEhF,2EAA2E;AAC9D,QAAA,0BAA0B,GAAG,IAAK,CAAC;AAEhD,mEAAmE;AACtD,QAAA,uBAAuB,GAAG,aAAa,CAAC;AAErD,8EAA8E;AACjE,QAAA,eAAe,GAAG,KAAM,CAAC"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "smartcomply-web-sdk",
3
- "version": "1.0.49",
3
+ "version": "1.0.51",
4
4
  "description": "Drop-in identity verification (KYC) widget for web apps — face liveness, NIN/BVN, document verification",
5
5
  "main": "dist/index.js",
6
6
  "module": "dist/esm/index.js",
@@ -21,7 +21,7 @@
21
21
  "scripts": {
22
22
  "build": "tsc",
23
23
  "build:esm": "tsc -p tsconfig.esm.json",
24
- "build:browser": "npx esbuild src/index.ts --bundle --format=iife --global-name=SmartComplySDK --outfile=dist/smartcomply.browser.js --target=es2020 --sourcemap",
24
+ "build:browser": "npx esbuild src/index.ts --bundle --format=iife --global-name=SmartComplySDK --outfile=dist/smartcomply.browser.js --target=es2020 --sourcemap --charset=utf8",
25
25
  "build:all": "npm run build && npm run build:esm && npm run build:browser",
26
26
  "prepublishOnly": "npm run build:all",
27
27
  "typecheck": "tsc --noEmit"