smartcomply-web-sdk 1.0.60 → 1.0.62
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.
- package/dist/camera/CameraManager.d.ts +8 -0
- package/dist/camera/CameraManager.d.ts.map +1 -1
- package/dist/camera/CameraManager.js +13 -2
- package/dist/camera/CameraManager.js.map +1 -1
- package/dist/camera/Permission.d.ts +11 -0
- package/dist/camera/Permission.d.ts.map +1 -1
- package/dist/camera/Permission.js +23 -0
- package/dist/camera/Permission.js.map +1 -1
- package/dist/esm/camera/CameraManager.d.ts +8 -0
- package/dist/esm/camera/CameraManager.d.ts.map +1 -1
- package/dist/esm/camera/CameraManager.js +11 -1
- package/dist/esm/camera/CameraManager.js.map +1 -1
- package/dist/esm/camera/Permission.d.ts +11 -0
- package/dist/esm/camera/Permission.d.ts.map +1 -1
- package/dist/esm/camera/Permission.js +22 -0
- package/dist/esm/camera/Permission.js.map +1 -1
- package/dist/esm/flow/DocumentCapture.d.ts +1 -4
- package/dist/esm/flow/DocumentCapture.d.ts.map +1 -1
- package/dist/esm/flow/DocumentCapture.js +54 -132
- package/dist/esm/flow/DocumentCapture.js.map +1 -1
- package/dist/esm/flow/SmartComplyFlow.d.ts.map +1 -1
- package/dist/esm/flow/SmartComplyFlow.js +8 -13
- package/dist/esm/flow/SmartComplyFlow.js.map +1 -1
- package/dist/esm/utils/constants.d.ts +11 -3
- package/dist/esm/utils/constants.d.ts.map +1 -1
- package/dist/esm/utils/constants.js +11 -3
- package/dist/esm/utils/constants.js.map +1 -1
- package/dist/esm/utils/documentRules.d.ts +15 -0
- package/dist/esm/utils/documentRules.d.ts.map +1 -0
- package/dist/esm/utils/documentRules.js +27 -0
- package/dist/esm/utils/documentRules.js.map +1 -0
- package/dist/flow/DocumentCapture.d.ts +1 -4
- package/dist/flow/DocumentCapture.d.ts.map +1 -1
- package/dist/flow/DocumentCapture.js +54 -132
- package/dist/flow/DocumentCapture.js.map +1 -1
- package/dist/flow/SmartComplyFlow.d.ts.map +1 -1
- package/dist/flow/SmartComplyFlow.js +11 -16
- package/dist/flow/SmartComplyFlow.js.map +1 -1
- package/dist/smartcomply.browser.js +62 -113
- package/dist/smartcomply.browser.js.map +4 -4
- package/dist/utils/constants.d.ts +11 -3
- package/dist/utils/constants.d.ts.map +1 -1
- package/dist/utils/constants.js +11 -3
- package/dist/utils/constants.js.map +1 -1
- package/dist/utils/documentRules.d.ts +15 -0
- package/dist/utils/documentRules.d.ts.map +1 -0
- package/dist/utils/documentRules.js +31 -0
- package/dist/utils/documentRules.js.map +1 -0
- package/package.json +6 -3
|
@@ -37,9 +37,17 @@ export declare const LIVENESS_TIME_LIMIT_SECONDS = 12;
|
|
|
37
37
|
/** Ideal resolution for the front-facing liveness camera. */
|
|
38
38
|
export declare const CAMERA_IDEAL_WIDTH = 640;
|
|
39
39
|
export declare const CAMERA_IDEAL_HEIGHT = 480;
|
|
40
|
-
/**
|
|
41
|
-
|
|
42
|
-
|
|
40
|
+
/**
|
|
41
|
+
* Ideal resolution for rear-facing document capture camera. Matches the
|
|
42
|
+
* document-photo compression target (see compressImage calls in
|
|
43
|
+
* DocumentCapture.ts) — requesting less here would cap captured photos
|
|
44
|
+
* below what compression is allowed to keep, which is what let camera
|
|
45
|
+
* captures come out under-resolution for face-comparison cropping even
|
|
46
|
+
* after the compression target itself was raised. `ideal` (not `exact`)
|
|
47
|
+
* constraints degrade gracefully on hardware that can't hit this.
|
|
48
|
+
*/
|
|
49
|
+
export declare const DOC_CAMERA_IDEAL_WIDTH = 2000;
|
|
50
|
+
export declare const DOC_CAMERA_IDEAL_HEIGHT = 1500;
|
|
43
51
|
/**
|
|
44
52
|
* Video bitrate used by MediaRecorder for liveness recordings — raised from
|
|
45
53
|
* an earlier 250k baseline for sharper frames for SmartComply's face
|
|
@@ -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,uFAAuF;AACvF,eAAO,MAAM,iBAAiB,0EAA2E,CAAC;AAE1G;;;;;;GAMG;AACH,eAAO,MAAM,yBAAyB,oBAAqB,CAAC;AAE5D,iEAAiE;AACjE,eAAO,MAAM,2BAA2B,KAAK,CAAC;AAI9C,6DAA6D;AAC7D,eAAO,MAAM,kBAAkB,MAAO,CAAC;AACvC,eAAO,MAAM,mBAAmB,MAAM,CAAC;AAEvC
|
|
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;AAI9C,6DAA6D;AAC7D,eAAO,MAAM,kBAAkB,MAAO,CAAC;AACvC,eAAO,MAAM,mBAAmB,MAAM,CAAC;AAEvC;;;;;;;;GAQG;AACH,eAAO,MAAM,sBAAsB,OAAQ,CAAC;AAC5C,eAAO,MAAM,uBAAuB,OAAO,CAAC;AAE5C;;;;GAIG;AACH,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"}
|
package/dist/utils/constants.js
CHANGED
|
@@ -45,9 +45,17 @@ exports.LIVENESS_TIME_LIMIT_SECONDS = 12;
|
|
|
45
45
|
/** Ideal resolution for the front-facing liveness camera. */
|
|
46
46
|
exports.CAMERA_IDEAL_WIDTH = 640;
|
|
47
47
|
exports.CAMERA_IDEAL_HEIGHT = 480;
|
|
48
|
-
/**
|
|
49
|
-
|
|
50
|
-
|
|
48
|
+
/**
|
|
49
|
+
* Ideal resolution for rear-facing document capture camera. Matches the
|
|
50
|
+
* document-photo compression target (see compressImage calls in
|
|
51
|
+
* DocumentCapture.ts) — requesting less here would cap captured photos
|
|
52
|
+
* below what compression is allowed to keep, which is what let camera
|
|
53
|
+
* captures come out under-resolution for face-comparison cropping even
|
|
54
|
+
* after the compression target itself was raised. `ideal` (not `exact`)
|
|
55
|
+
* constraints degrade gracefully on hardware that can't hit this.
|
|
56
|
+
*/
|
|
57
|
+
exports.DOC_CAMERA_IDEAL_WIDTH = 2000;
|
|
58
|
+
exports.DOC_CAMERA_IDEAL_HEIGHT = 1500;
|
|
51
59
|
/**
|
|
52
60
|
* Video bitrate used by MediaRecorder for liveness recordings — raised from
|
|
53
61
|
* an earlier 250k baseline for sharper frames for SmartComply's face
|
|
@@ -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,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,gFAAgF;AAEhF,6DAA6D;AAChD,QAAA,kBAAkB,GAAI,GAAG,CAAC;AAC1B,QAAA,mBAAmB,GAAG,GAAG,CAAC;AAEvC
|
|
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,gFAAgF;AAEhF,6DAA6D;AAChD,QAAA,kBAAkB,GAAI,GAAG,CAAC;AAC1B,QAAA,mBAAmB,GAAG,GAAG,CAAC;AAEvC;;;;;;;;GAQG;AACU,QAAA,sBAAsB,GAAI,IAAI,CAAC;AAC/B,QAAA,uBAAuB,GAAG,IAAI,CAAC;AAE5C;;;;GAIG;AACU,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"}
|
|
@@ -0,0 +1,15 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Shared document-type rules used by both the ID-type selection screen
|
|
3
|
+
* (SmartComplyFlow) and the capture component (DocumentCapture) — kept in
|
|
4
|
+
* one place so the two can't silently diverge on which documents need a
|
|
5
|
+
* back-side photo.
|
|
6
|
+
*/
|
|
7
|
+
/** Documents where the backend OCR pipeline needs the reverse side. */
|
|
8
|
+
export declare function requiresBackSide(documentType: string): boolean;
|
|
9
|
+
/**
|
|
10
|
+
* Scale ratio for fitting an image within maxWidth x maxHeight, never
|
|
11
|
+
* upscaling. Shared by DocumentCapture's canvas sizing and compressImage so
|
|
12
|
+
* both agree on the same clamp-at-1 behavior.
|
|
13
|
+
*/
|
|
14
|
+
export declare function computeScaleRatio(srcWidth: number, srcHeight: number, maxWidth: number, maxHeight: number): number;
|
|
15
|
+
//# sourceMappingURL=documentRules.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"documentRules.d.ts","sourceRoot":"","sources":["../../src/utils/documentRules.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,uEAAuE;AACvE,wBAAgB,gBAAgB,CAAC,YAAY,EAAE,MAAM,GAAG,OAAO,CAU9D;AAED;;;;GAIG;AACH,wBAAgB,iBAAiB,CAC/B,QAAQ,EAAE,MAAM,EAChB,SAAS,EAAE,MAAM,EACjB,QAAQ,EAAE,MAAM,EAChB,SAAS,EAAE,MAAM,GAChB,MAAM,CAER"}
|
|
@@ -0,0 +1,31 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
/**
|
|
3
|
+
* Shared document-type rules used by both the ID-type selection screen
|
|
4
|
+
* (SmartComplyFlow) and the capture component (DocumentCapture) — kept in
|
|
5
|
+
* one place so the two can't silently diverge on which documents need a
|
|
6
|
+
* back-side photo.
|
|
7
|
+
*/
|
|
8
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
9
|
+
exports.requiresBackSide = requiresBackSide;
|
|
10
|
+
exports.computeScaleRatio = computeScaleRatio;
|
|
11
|
+
/** Documents where the backend OCR pipeline needs the reverse side. */
|
|
12
|
+
function requiresBackSide(documentType) {
|
|
13
|
+
const type = documentType.toLowerCase();
|
|
14
|
+
return type.includes("voter") ||
|
|
15
|
+
type.includes("driver") ||
|
|
16
|
+
type.includes("license") ||
|
|
17
|
+
type.includes("national id") ||
|
|
18
|
+
type.includes("national id card") ||
|
|
19
|
+
type.includes("ghana");
|
|
20
|
+
// Passport: back side is the machine-readable zone but OCR reads from front only.
|
|
21
|
+
// NIN / NIN with face: front only needed — the NIN card is single-sided for OCR.
|
|
22
|
+
}
|
|
23
|
+
/**
|
|
24
|
+
* Scale ratio for fitting an image within maxWidth x maxHeight, never
|
|
25
|
+
* upscaling. Shared by DocumentCapture's canvas sizing and compressImage so
|
|
26
|
+
* both agree on the same clamp-at-1 behavior.
|
|
27
|
+
*/
|
|
28
|
+
function computeScaleRatio(srcWidth, srcHeight, maxWidth, maxHeight) {
|
|
29
|
+
return Math.min(maxWidth / srcWidth, maxHeight / srcHeight, 1);
|
|
30
|
+
}
|
|
31
|
+
//# sourceMappingURL=documentRules.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"documentRules.js","sourceRoot":"","sources":["../../src/utils/documentRules.ts"],"names":[],"mappings":";AAAA;;;;;GAKG;;AAGH,4CAUC;AAOD,8CAOC;AAzBD,uEAAuE;AACvE,SAAgB,gBAAgB,CAAC,YAAoB;IACnD,MAAM,IAAI,GAAG,YAAY,CAAC,WAAW,EAAE,CAAC;IACxC,OAAO,IAAI,CAAC,QAAQ,CAAC,OAAO,CAAC;QACtB,IAAI,CAAC,QAAQ,CAAC,QAAQ,CAAC;QACvB,IAAI,CAAC,QAAQ,CAAC,SAAS,CAAC;QACxB,IAAI,CAAC,QAAQ,CAAC,aAAa,CAAC;QAC5B,IAAI,CAAC,QAAQ,CAAC,kBAAkB,CAAC;QACjC,IAAI,CAAC,QAAQ,CAAC,OAAO,CAAC,CAAC;IAC9B,kFAAkF;IAClF,iFAAiF;AACnF,CAAC;AAED;;;;GAIG;AACH,SAAgB,iBAAiB,CAC/B,QAAgB,EAChB,SAAiB,EACjB,QAAgB,EAChB,SAAiB;IAEjB,OAAO,IAAI,CAAC,GAAG,CAAC,QAAQ,GAAG,QAAQ,EAAE,SAAS,GAAG,SAAS,EAAE,CAAC,CAAC,CAAC;AACjE,CAAC"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "smartcomply-web-sdk",
|
|
3
|
-
"version": "1.0.
|
|
3
|
+
"version": "1.0.62",
|
|
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",
|
|
@@ -24,7 +24,9 @@
|
|
|
24
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
|
-
"typecheck": "tsc --noEmit"
|
|
27
|
+
"typecheck": "tsc --noEmit",
|
|
28
|
+
"test": "vitest run",
|
|
29
|
+
"test:watch": "vitest"
|
|
28
30
|
},
|
|
29
31
|
"repository": {
|
|
30
32
|
"type": "git",
|
|
@@ -50,7 +52,8 @@
|
|
|
50
52
|
"homepage": "https://github.com/386konsult/smartcomply-web-sdk#readme",
|
|
51
53
|
"devDependencies": {
|
|
52
54
|
"esbuild": "^0.28.0",
|
|
53
|
-
"typescript": "^5.9.3"
|
|
55
|
+
"typescript": "^5.9.3",
|
|
56
|
+
"vitest": "^4.1.10"
|
|
54
57
|
},
|
|
55
58
|
"dependencies": {
|
|
56
59
|
"@mediapipe/tasks-vision": "^0.10.32"
|