uqudosdk-web 3.6.2 → 4.0.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.
package/CHANGELOG.md CHANGED
@@ -55,7 +55,7 @@
55
55
  ## 3.3.0
56
56
 
57
57
  - In this latest release, we've revamped the facial recognition step. We've eliminated the nodding step, transforming facial recognition into a straightforward process easy as capturing a selfie. Under the hood, numerous enhancements have been implemented to ensure speed, simplicity, and enhanced accuracy. There are no changes in terms of business logic for your integration process.
58
- To accomplish the aforementioned outcome, we integrated AI capabilities directly into the Web SDK, resulting in a substantial increase in the SDK's size. To ensure the utmost efficiency with our latest SDK version, it's recommended to follow performance best practices. Enhance performance by reducing imports and incorporating techniques like lazy loading, code splitting, and memoization (specifically for React). To implement these strategies, consult the documentation of the framework you are utilizing.
58
+ To accomplish the aforementioned outcome, we integrated AI capabilities directly into the Web SDK, resulting in a substantial increase in the SDK's size. To ensure the utmost efficiency with our latest SDK version, it's recommended to follow performance best practices. Enhance performance by reducing imports and incorporating techniques like lazy loading, code splitting, and memoization (specifically for React). To implement these strategies, consult the documentation of the framework you are utilizing.
59
59
  - Added support for Lebanon ID and Driving License
60
60
 
61
61
  ## 3.2.3
package/index.d.ts CHANGED
@@ -9,21 +9,14 @@ export declare class OperationError extends Error {
9
9
  public data: IResultInfo | undefined;
10
10
  }
11
11
 
12
- export declare const isOperationError: (
13
- error: unknown
14
- ) => error is OperationError;
12
+ export declare const isOperationError: (error: unknown) => error is OperationError;
15
13
 
16
14
  // ---------- uqudo sdk --------- //
17
15
 
18
16
  export declare class UqudoSdk {
19
17
  enrollment(configProcess: IEnrollmentConfig): Promise<ReturnEnrollmentType>;
20
- accountRecovery(
21
- configProcess: IAccountRecoveryConfig
22
- ): Promise<ReturnAccountRecoveryType>;
23
- faceSession(
24
- configProcess: IFaceSessionConfig
25
- ): Promise<ReturnFaceSessionType>;
26
- dispose(): Promise<void>;
18
+ faceSession(configProcess: IFaceSessionConfig): Promise<ReturnFaceSessionType>;
19
+ dispose(): void;
27
20
  }
28
21
 
29
22
  declare class UqudoSdkFactory {
@@ -44,7 +37,8 @@ export enum ErrorCode {
44
37
  MEDIA_UNKNOWN_ERROR = "MEDIA_UNKNOWN_ERROR",
45
38
  USER_CANCEL = "USER_CANCEL",
46
39
  INVALID_CONFIG = "INVALID_CONFIG",
47
- SESSION_INVALIDATED_TOO_MANY_ATTEMPTS = "SESSION_INVALIDATED_TOO_MANY_ATTEMPTS",
40
+ SESSION_INVALIDATED_FACE_RECOGNITION_TOO_MANY_ATTEMPTS = "SESSION_INVALIDATED_FACE_RECOGNITION_TOO_MANY_ATTEMPTS",
41
+ WASM_NOT_SUPPORTED = "WASM_NOT_SUPPORTED",
48
42
  }
49
43
 
50
44
  // ---------- enum --------- //
@@ -58,6 +52,7 @@ export enum ErrorDisplayCode {
58
52
  PAYLOAD_TOO_LARGE = "PAYLOAD_TOO_LARGE",
59
53
  SCAN_DOCUMENT_AGE_VERIFICATION_FAILED = "SCAN_DOCUMENT_AGE_VERIFICATION_FAILED",
60
54
  UNEXPECTED_ERROR = "UNEXPECTED_ERROR",
55
+ UNSUPPORTED_DOCUMENT_TYPE = "UNSUPPORTED_DOCUMENT_TYPE",
61
56
  }
62
57
 
63
58
  // document type
@@ -83,7 +78,6 @@ export enum DocumentType {
83
78
  NGA_DL = "NGA_DL",
84
79
  NGA_VOTER_ID = "NGA_VOTER_ID",
85
80
  NGA_NIN = "NGA_NIN",
86
- UAE_VL_PDF = "UAE_VL_PDF",
87
81
  GBR_DL = "GBR_DL",
88
82
  SAU_DL = "SAU_DL",
89
83
  ZAF_ID = "ZAF_ID",
@@ -118,21 +112,44 @@ export enum DocumentType {
118
112
  UAE_ID_DIGITAL = "UAE_ID_DIGITAL",
119
113
  QAT_VL = "QAT_VL",
120
114
  UAE_PASSPORT_DIGITAL = "UAE_PASSPORT_DIGITAL",
115
+ TUN_ID = "TUN_ID",
116
+ SOM_ID = "SOM_ID",
117
+ BHR_VL = "BHR_VL",
118
+ JOR_VL = "JOR_VL",
119
+ SAU_VL = "SAU_VL",
121
120
  }
122
121
 
123
122
  export enum BackgroundCheckType {
124
123
  RDC = "RDC",
125
124
  }
126
125
 
127
- export enum LivenessDetectionMessageCode {
126
+ export enum FaceMessageCode {
128
127
  OK = "OK",
128
+ MULTIPLE_PERSON_DETECTED = "MULTIPLE_PERSON_DETECTED",
129
129
  MOVE_CLOSER = "MOVE_CLOSER",
130
130
  GO_BACK = "GO_BACK",
131
- LOOK_STRAIGHT = "LOOK_STRAIGHT",
131
+ MOVE_TO_CENTER = "MOVE_TO_CENTER",
132
+ DARK_ENVIRONMENT_DETECTED = "DARK_ENVIRONMENT_DETECTED",
133
+ BLUR_DETECTED = "BLUR_DETECTED",
134
+ MOUTH_COVER_DETECTED = "MOUTH_COVER_DETECTED",
132
135
  EYE_CLOSED = "EYE_CLOSED",
136
+ EYE_COVER = "EYE_COVER",
137
+ SPOTLIGHT_DETECTED = "SPOTLIGHT_DETECTED",
138
+ SHADOW_DETECTED = "SHADOW_DETECTED",
139
+ ERROR = "ERROR",
140
+ }
141
+
142
+ export enum ScanMessageCode {
143
+ OK = "OK",
144
+ LOW_LIGHT = "LOW_LIGHT",
145
+ MOVE_CLOSER = "MOVE_CLOSER",
146
+ UNCLEAR_IMAGE = "UNCLEAR_IMAGE",
147
+ WRONG_DOCUMENT_TYPE = "WRONG_DOCUMENT_TYPE",
148
+ WRONG_DOCUMENT_SIDE = "WRONG_DOCUMENT_SIDE",
149
+ AVOID_GLARE = "AVOID_GLARE",
150
+ REMOVE_FINGER = "REMOVE_FINGER",
151
+ BAD_QUALITY = "BAD_QUALITY",
133
152
  MOVE_TO_CENTER = "MOVE_TO_CENTER",
134
- NO_PERSON_DETECTED = "NO_PERSON_DETECTED",
135
- MULTIPLE_PERSON_DETECTED = "MULTIPLE_PERSON_DETECTED",
136
153
  ERROR = "ERROR",
137
154
  }
138
155
 
@@ -185,17 +202,28 @@ export interface ITextsArg {
185
202
  facialRecognition?: {
186
203
  title?: string;
187
204
  description?: string;
188
- livenessDetectionMessages?: Record<LivenessDetectionMessageCode, string>;
205
+ livenessDetectionMessages?: Record<FaceMessageCode, string>;
189
206
  };
190
207
  scan?: CanBeArray<{
208
+ titlePhotoPage?: string;
191
209
  titleFrontSide?: string;
192
210
  titleBackSide?: string;
211
+ frontLabel?: string;
212
+ backLabel?: string;
213
+ photoPageLabel?: string;
214
+
193
215
  rescanButtonText?: string;
194
216
  continueButtonText?: string;
195
217
  turnDocumentDescription?: string;
196
218
  tipDescription?: string;
197
219
  tipDescription2?: string;
198
220
  description?: string;
221
+ messages?: Record<ScanMessageCode, string>;
222
+ cameraSelection?: {
223
+ title?: string;
224
+ description?: string;
225
+ button?: string;
226
+ };
199
227
  }>;
200
228
  documentTypes?: Record<string | DocumentType, string>;
201
229
  errors?: Record<string | ErrorDisplayCode, ITextErrorDisplay>;
@@ -206,15 +234,17 @@ export interface ITextsArg {
206
234
  export interface IAssetsArg {
207
235
  logo?: string;
208
236
  logoWhite?: string;
209
- turnOverImage?: string;
237
+ turnOverImageUrl?: string;
210
238
  closeSessionIcon?: string;
239
+ closeSessionIconCameraMode?: string;
211
240
  addFileIcon?: string;
212
241
  hintIcon?: string;
213
242
  recordIcon?: string;
214
- takePictureIcon?: string;
215
243
  spinnerIcon?: string;
216
244
  removeIcon?: string;
217
245
  updateIcon?: string;
246
+ okImageUrl?: string;
247
+ cameraIcon?: string;
218
248
  }
219
249
 
220
250
  // ---------- common type --------- //
@@ -264,7 +294,6 @@ export type IEnrollmentConfig = IConfigProcess &
264
294
  scan: IScanConfig | IScanConfig[];
265
295
  face?: {
266
296
  enableFacialRecognition?: boolean;
267
- enrollFace?: boolean;
268
297
  maxAttempts?: number;
269
298
  minimumMatchLevel?: number;
270
299
  enableOneToNVerification?: boolean;
@@ -293,17 +322,6 @@ export type IFaceSessionConfig = IConfigProcess &
293
322
  minimumMatchLevel?: number;
294
323
  };
295
324
 
296
- // ---------- Account Recovery type --------- //
297
-
298
- export type ReturnAccountRecoveryType = IResultInfo;
299
-
300
- export type IAccountRecoveryConfig = IConfigProcess &
301
- IObservableFunctionsType<ReturnAccountRecoveryType> & {
302
- enrollmentIdentifier: string;
303
- maxAttempts?: number;
304
- minimumMatchLevel?: number;
305
- };
306
-
307
325
  // ---------- Tracing mechanism type --------- //
308
326
 
309
327
  export enum TraceCategory {
@@ -331,6 +349,36 @@ export enum TraceStatus {
331
349
  FAILURE = "FAILURE",
332
350
  }
333
351
 
352
+ export enum SCAN_DOCUMENT_STATUS_CODE {
353
+ OK = "OK",
354
+ SCAN_DOCUMENT_DARK_ENVIRONMENT_DETECTED = "SCAN_DOCUMENT_DARK_ENVIRONMENT_DETECTED",
355
+ SCAN_DOCUMENT_INCORRECT_DISTANCE_DETECTED = "SCAN_DOCUMENT_INCORRECT_DISTANCE_DETECTED",
356
+ SCAN_DOCUMENT_BLUR_DETECTED = "SCAN_DOCUMENT_BLUR_DETECTED",
357
+ SCAN_DOCUMENT_INCORRECT_TYPE_DETECTED = "SCAN_DOCUMENT_INCORRECT_TYPE_DETECTED",
358
+ SCAN_DOCUMENT_INCORRECT_SIDE_DETECTED = "SCAN_DOCUMENT_INCORRECT_SIDE_DETECTED",
359
+ SCAN_DOCUMENT_GLARE_DETECTED = "SCAN_DOCUMENT_GLARE_DETECTED",
360
+ SCAN_DOCUMENT_FINGER_DETECTED = "SCAN_DOCUMENT_FINGER_DETECTED",
361
+ SCAN_DOCUMENT_ID_PHOTO_BAD_QUALITY_DETECTED = "SCAN_DOCUMENT_ID_PHOTO_BAD_QUALITY_DETECTED",
362
+ SCAN_DOCUMENT_INCORRECT_POSITION_DETECTED = "SCAN_DOCUMENT_INCORRECT_POSITION_DETECTED",
363
+ }
364
+
365
+ export enum FACE_STATUS_CODE {
366
+ OK = "OK",
367
+ FACE_MULTIPLE_FACES_DETECTED = "FACE_MULTIPLE_FACES_DETECTED",
368
+ FACE_INCORRECT_DISTANCE_DETECTED_TOO_FAR = "FACE_INCORRECT_DISTANCE_DETECTED_TOO_FAR",
369
+ FACE_INCORRECT_DISTANCE_DETECTED_TOO_CLOSE = "FACE_INCORRECT_DISTANCE_DETECTED_TOO_CLOSE",
370
+ FACE_INCORRECT_POSITION_DETECTED = "FACE_INCORRECT_POSITION_DETECTED",
371
+ FACE_INCORRECT_DISTANCE_DETECTED = "FACE_INCORRECT_DISTANCE_DETECTED",
372
+ FACE_DARK_ENVIRONMENT_DETECTED = "FACE_DARK_ENVIRONMENT_DETECTED",
373
+ FACE_BLUR_DETECTED = "FACE_BLUR_DETECTED",
374
+ FACE_MOUTH_COVER_DETECTED = "FACE_MOUTH_COVER_DETECTED",
375
+ FACE_EYES_COVER_DETECTED = "FACE_EYES_COVER_DETECTED",
376
+ FACE_EYES_CLOSED_DETECTED = "FACE_EYES_CLOSED_DETECTED",
377
+ FACE_SPOTLIGHT_DETECTED = "FACE_SPOTLIGHT_DETECTED",
378
+ FACE_SHADOW_DETECTED = "FACE_SHADOW_DETECTED",
379
+ FACE_EYES_SHADOW_DETECTED = "FACE_EYES_SHADOW_DETECTED",
380
+ }
381
+
334
382
  export enum TraceStatusCode {
335
383
  USER_CANCEL = "USER_CANCEL",
336
384
  SESSION_EXPIRED = "SESSION_EXPIRED",
@@ -345,12 +393,30 @@ export enum TraceStatusCode {
345
393
  SCAN_DOCUMENT_AGE_VERIFICATION_FAILED = "SCAN_DOCUMENT_AGE_VERIFICATION_FAILED",
346
394
  FACE_LIVENESS_FAILED = "FACE_LIVENESS_FAILED",
347
395
  FACE_NO_MATCH = "FACE_NO_MATCH",
348
- FACE_TIMEOUT = "FACE_TIMEOUT",
349
396
  FACE_RECOGNITION_TOO_MANY_ATTEMPTS = "FACE_RECOGNITION_TOO_MANY_ATTEMPTS",
397
+ MEDIA_VIRTUAL_CAMERA_DETECTED = "MEDIA_VIRTUAL_CAMERA_DETECTED",
398
+ WASM_NOT_SUPPORTED = "WASM_NOT_SUPPORTED",
399
+ // scan
400
+ SCAN_DOCUMENT_DARK_ENVIRONMENT_DETECTED = "SCAN_DOCUMENT_DARK_ENVIRONMENT_DETECTED",
401
+ SCAN_DOCUMENT_INCORRECT_DISTANCE_DETECTED = "SCAN_DOCUMENT_INCORRECT_DISTANCE_DETECTED",
402
+ SCAN_DOCUMENT_BLUR_DETECTED = "SCAN_DOCUMENT_BLUR_DETECTED",
403
+ SCAN_DOCUMENT_INCORRECT_TYPE_DETECTED = "SCAN_DOCUMENT_INCORRECT_TYPE_DETECTED",
404
+ SCAN_DOCUMENT_INCORRECT_SIDE_DETECTED = "SCAN_DOCUMENT_INCORRECT_SIDE_DETECTED",
405
+ SCAN_DOCUMENT_GLARE_DETECTED = "SCAN_DOCUMENT_GLARE_DETECTED",
406
+ SCAN_DOCUMENT_FINGER_DETECTED = "SCAN_DOCUMENT_FINGER_DETECTED",
407
+ SCAN_DOCUMENT_ID_PHOTO_BAD_QUALITY_DETECTED = "SCAN_DOCUMENT_ID_PHOTO_BAD_QUALITY_DETECTED",
408
+ SCAN_DOCUMENT_INCORRECT_POSITION_DETECTED = "SCAN_DOCUMENT_INCORRECT_POSITION_DETECTED",
409
+ // face
410
+ FACE_MULTIPLE_FACES_DETECTED = "FACE_MULTIPLE_FACES_DETECTED",
350
411
  FACE_INCORRECT_POSITION_DETECTED = "FACE_INCORRECT_POSITION_DETECTED",
351
- FACE_INCORRECT_DISTANCE_DETECTED = "FACE_INCORRECT_DISTANCE_DETECTED",
412
+ FACE_DARK_ENVIRONMENT_DETECTED = "FACE_DARK_ENVIRONMENT_DETECTED",
413
+ FACE_BLUR_DETECTED = "FACE_BLUR_DETECTED",
414
+ FACE_MOUTH_COVER_DETECTED = "FACE_MOUTH_COVER_DETECTED",
415
+ FACE_EYES_COVER_DETECTED = "FACE_EYES_COVER_DETECTED",
352
416
  FACE_EYES_CLOSED_DETECTED = "FACE_EYES_CLOSED_DETECTED",
353
- MEDIA_VIRTUAL_CAMERA_DETECTED = "MEDIA_VIRTUAL_CAMERA_DETECTED",
417
+ FACE_SPOTLIGHT_DETECTED = "FACE_SPOTLIGHT_DETECTED",
418
+ FACE_SHADOW_DETECTED = "FACE_SHADOW_DETECTED",
419
+ FACE_EYES_SHADOW_DETECTED = "FACE_EYES_SHADOW_DETECTED",
354
420
  }
355
421
 
356
422
  export type ITrace = {