idmission-web-sdk 1.0.397 → 1.0.398

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.
@@ -44,6 +44,8 @@ export interface FaceValidationProps extends PropsWithChildren {
44
44
  modelLoadTimeoutMs?: number;
45
45
  /** Boolean or async function to indicate whether to proceed automatically after capture guidance is satisfied. If an async function is supplied returning a boolean, it will be evaluated at the time of capture guidance satisfaction. Defaults to `false`. */
46
46
  skipSuccessScreen?: boolean | (() => Promise<boolean>);
47
+ /** String containing a base64 image or document service ID pointing to an ID card front image that should be used to match the user's face against. Leave blank to disable face matching. */
48
+ idCardForFaceMatch?: string;
47
49
  /** Callback function that fires immediately prior to each document upload, giving the client application an opportunity to specify custom asynchronous logic that captures the document contents before it is exchanged for a document token. The document content and metadata are passed in as parameters and a promise resolving to void or false should be returned. If the returned promise resolves to false, the document will not be uploaded. */
48
50
  onBeforeDocumentUpload?: OnBeforeDocumentUpload;
49
51
  /** Callback function that fires when progress information is available for a document upload. The progress info and metadata are passed in as parameters. */
@@ -31,6 +31,8 @@ export interface IdValidationProps extends PropsWithChildren {
31
31
  lang?: LangOption;
32
32
  /** A session identifier generated with your IDmission credentials. */
33
33
  sessionId: string | (() => Promise<string>);
34
+ /** The ClientRequestID field is typically populated with the Form ID and is used to link records together - in this case an id validation record to the original form */
35
+ clientRequestID?: string;
34
36
  /** URL to hit with all API requests. Defaults to the value specified in your decoded `submissionToken`. */
35
37
  submissionUrl?: string;
36
38
  /** URL to validate session against. Defaults to https://portal-api.idmission.com. */
@@ -10,6 +10,8 @@ export interface SignatureKYCProps extends PropsWithChildren {
10
10
  lang?: LangOption;
11
11
  /** A session identifier generated with your IDmission credentials. */
12
12
  sessionId: string | (() => Promise<string>);
13
+ /** The ClientRequestID field is typically populated with the Form ID and is used to link records together - in this case an id validation record to the original form */
14
+ clientRequestID?: string;
13
15
  /** URL to hit with all API requests. Defaults to the value specified in your decoded `submissionToken`. */
14
16
  submissionUrl?: string;
15
17
  /** URL to validate session against. Defaults to https://portal-api.idmission.com. */
@@ -42,6 +44,8 @@ export interface SignatureKYCProps extends PropsWithChildren {
42
44
  loadingOverlayMode?: SelfieCaptureLoadingOverlayMode;
43
45
  /** Boolean or async function to indicate whether to proceed automatically after capture guidance is satisfied. If an async function is supplied returning a boolean, it will be evaluated at the time of capture guidance satisfaction. Defaults to `false`. */
44
46
  skipSuccessScreen?: boolean | (() => Promise<boolean>);
47
+ /** String containing a base64 image or document service ID pointing to an ID card front image that should be used to match the user's face against. Leave blank to disable face matching. */
48
+ idCardForFaceMatch?: string;
45
49
  /** Number of milliseconds indicating the maximum amount of time that should be spent trying to load the guided capture experience before giving up and resorting to the stock camera instead. Defaults to 45000 (45 seconds). */
46
50
  modelLoadTimeoutMs?: number;
47
51
  /** Name of an included theme or object containing theme properties. **/
@@ -32,6 +32,8 @@ export interface VideoIdValidationProps extends PropsWithChildren {
32
32
  lang?: LangOption;
33
33
  /** A session identifier generated with your IDmission credentials. */
34
34
  sessionId: string | (() => Promise<string>);
35
+ /** The ClientRequestID field is typically populated with the Form ID and is used to link records together - in this case an id validation record to the original form */
36
+ clientRequestID?: string;
35
37
  /** URL to hit with all API requests. Defaults to the value specified in your decoded `submissionToken`. */
36
38
  submissionUrl?: string;
37
39
  /** URL to validate session against. Defaults to https://portal-api.idmission.com. */
@@ -138,6 +140,8 @@ export interface VideoIdValidationProps extends PropsWithChildren {
138
140
  idCapturePortraitGuidesOnMobile?: boolean;
139
141
  /** Boolean to indicate whether loading overlay image should be rotated on when mobile guides are rotated. Defaults to `true`. */
140
142
  idCaptureRotateLoadingOverlayImageWhenPortrait?: boolean;
143
+ /** String containing a base64 image or document service ID pointing to an ID card front image that should be used to match the user's face against. Leave blank to disable face matching. */
144
+ idCardForFaceMatch?: string;
141
145
  /** String indicating which face liveness loading overlay screen should be used. Supported values: 'default' and 'legacy'. Defaults to 'default'. */
142
146
  faceLivenessLoadingOverlayMode?: SelfieCaptureLoadingOverlayMode;
143
147
  /** Boolean to disable face detection during audio capture after X seconds as defined by disableFaceDetectionWhileAudioCaptureMsDelay. Defaults to false. */
@@ -79,6 +79,7 @@ export type SubmissionProviderProps = {
79
79
  verifyIdWithExternalDatabases?: boolean;
80
80
  deduplicationEnabled?: boolean;
81
81
  deduplicationSynchronous?: boolean;
82
+ idCardForFaceMatch?: string;
82
83
  geolocationEnabled?: boolean;
83
84
  geolocationRequired?: boolean;
84
85
  webhooksEnabled?: boolean;
@@ -100,5 +101,6 @@ export type SubmissionProviderProps = {
100
101
  onResponseReceived?: (res: SubmissionResponse, req: SubmissionRequest) => void;
101
102
  onRequestFailure?: (err: Error) => void;
102
103
  readTextPrompt?: string;
104
+ clientRequestID?: string;
103
105
  };
104
- export declare const SubmissionProvider: ({ action, children, submissionUrl, environment, companyId, enrollmentId, personalData, cardData, bypassAgeValidation, bypassNameMatching, needImmediateResponse, manualReviewRequired, idBackImageRequired, idImageResolutionCheck, verifyIdWithExternalDatabases, deduplicationEnabled, deduplicationSynchronous, geolocationEnabled, geolocationRequired, webhooksEnabled, webhooksClientTraceId, webhooksStripSpecialCharacters, webhooksSendInputImages, webhooksSendProcessedImages, webhooksFireOnReview, precapturedDocuments, documentServiceUrl, sendBase64DocumentsInSwaggerProxy, onSubmit, onBeforeSubmit, onBeforeLivenessCheck, onBeforeDocumentUpload, onDocumentUploadProgress, onDocumentUploaded, onDocumentUploadFailed, onResponseReceived, onRequestFailure, }: SubmissionProviderProps) => ReactElement;
106
+ export declare const SubmissionProvider: ({ action, children, submissionUrl, environment, companyId, enrollmentId, personalData, cardData, bypassAgeValidation, bypassNameMatching, needImmediateResponse, manualReviewRequired, idBackImageRequired, idImageResolutionCheck, verifyIdWithExternalDatabases, deduplicationEnabled, deduplicationSynchronous, idCardForFaceMatch, geolocationEnabled, geolocationRequired, webhooksEnabled, webhooksClientTraceId, webhooksStripSpecialCharacters, webhooksSendInputImages, webhooksSendProcessedImages, webhooksFireOnReview, precapturedDocuments, documentServiceUrl, sendBase64DocumentsInSwaggerProxy, onSubmit, onBeforeSubmit, onBeforeLivenessCheck, onBeforeDocumentUpload, onDocumentUploadProgress, onDocumentUploaded, onDocumentUploadFailed, onResponseReceived, onRequestFailure, clientRequestID, }: SubmissionProviderProps) => ReactElement;
@@ -54,6 +54,7 @@ export type SubmissionRequest = {
54
54
  };
55
55
  additionalData: {
56
56
  uniqueRequestId: string;
57
+ clientRequestID?: string;
57
58
  clientTraceId?: string;
58
59
  manualReviewRequired: 'Y' | 'N';
59
60
  bypassAgeValidation: 'Y' | 'N';
@@ -132,12 +133,19 @@ export type LivenessCheckRequest = {
132
133
  merchantId: number;
133
134
  };
134
135
  customerData: {
136
+ additionalData?: {
137
+ uniqueRequestId?: string;
138
+ };
135
139
  biometricData: {
136
140
  selfie: string;
137
141
  };
142
+ idData?: {
143
+ idImageFront?: string;
144
+ };
138
145
  };
139
146
  additionalData: {
140
147
  uniqueRequestId: string;
148
+ clientRequestID?: string;
141
149
  stripSpecialCharacters: 'Y' | 'N';
142
150
  estimateAge: 'Y' | 'N';
143
151
  predictGender: 'Y' | 'N';
@@ -161,7 +169,7 @@ export type LiveCheckResponse = {
161
169
  export declare function parseJwt(token: string): Record<string, unknown>;
162
170
  export declare function determineSubmissionHost(environment: SubmissionEnvironment, token?: string): string;
163
171
  export declare function determineSubmissionEndpoint(action: SubmissionAction, hasId: boolean, hasSelfie: boolean): string;
164
- export declare function liveCheckEndpoint(): string;
172
+ export declare function liveCheckEndpoint(hasDocumentToMatchFace?: boolean): string;
165
173
  export declare function apiHeaders(sessionId?: string, sendBase64DocumentsInSwaggerProxy?: boolean): HeadersInit;
166
174
  export declare function attachMetadataToRequest(request: SubmissionRequest | LivenessCheckRequest, { selfieCaptureAttempts, idFrontCaptureAttempts, idBackCaptureAttempts, geolocationResult, }: {
167
175
  selfieCaptureAttempts: CaptureAttemptMetadata[];
@@ -49,7 +49,7 @@ var LanguageDetector__default = /*#__PURE__*/_interopDefaultLegacy(LanguageDetec
49
49
  var i18n__default = /*#__PURE__*/_interopDefaultLegacy(i18n);
50
50
  var SignatureCanvas__default = /*#__PURE__*/_interopDefaultLegacy(SignatureCanvas);
51
51
 
52
- var webSdkVersion = '1.0.397';
52
+ var webSdkVersion = '1.0.398';
53
53
 
54
54
  function getPlatform() {
55
55
  // eslint-disable-next-line @typescript-eslint/ban-ts-comment
@@ -163,8 +163,11 @@ function determineSubmissionEndpoint(action, hasId, hasSelfie) {
163
163
  throw new Error("unrecognized SubmissionAction ".concat(action));
164
164
  }
165
165
  }
166
- function liveCheckEndpoint() {
167
- return "/v4/customer/live-check";
166
+ function liveCheckEndpoint(hasDocumentToMatchFace) {
167
+ if (hasDocumentToMatchFace === void 0) {
168
+ hasDocumentToMatchFace = false;
169
+ }
170
+ return hasDocumentToMatchFace ? "/v4/customer/match-id-face" : "/v4/customer/live-check";
168
171
  }
169
172
  function apiHeaders(sessionId, sendBase64DocumentsInSwaggerProxy) {
170
173
  if (sendBase64DocumentsInSwaggerProxy === void 0) {
@@ -941,6 +944,7 @@ var SubmissionProvider = function SubmissionProvider(_a) {
941
944
  deduplicationEnabled = _l === void 0 ? false : _l,
942
945
  _m = _a.deduplicationSynchronous,
943
946
  deduplicationSynchronous = _m === void 0 ? false : _m,
947
+ idCardForFaceMatch = _a.idCardForFaceMatch,
944
948
  _o = _a.geolocationEnabled,
945
949
  geolocationEnabled = _o === void 0 ? true : _o,
946
950
  _p = _a.geolocationRequired,
@@ -969,7 +973,8 @@ var SubmissionProvider = function SubmissionProvider(_a) {
969
973
  onDocumentUploaded = _a.onDocumentUploaded,
970
974
  onDocumentUploadFailed = _a.onDocumentUploadFailed,
971
975
  onResponseReceived = _a.onResponseReceived,
972
- onRequestFailure = _a.onRequestFailure;
976
+ onRequestFailure = _a.onRequestFailure,
977
+ clientRequestID = _a.clientRequestID;
973
978
  var sessionId = useAuthContext()[0].sessionId;
974
979
  var _x = React.useState(SubmissionStatus.READY),
975
980
  submissionStatus = _x[0],
@@ -1242,6 +1247,9 @@ var SubmissionProvider = function SubmissionProvider(_a) {
1242
1247
  idImageResolutionCheck: idImageResolutionCheck ? 'Y' : 'N'
1243
1248
  }
1244
1249
  };
1250
+ if (clientRequestID) {
1251
+ submissionRequest.additionalData.clientRequestID = clientRequestID;
1252
+ }
1245
1253
  if (documents.idFrontImage) {
1246
1254
  submissionRequest.customerData.idData.idImageFront = documents.idFrontImage;
1247
1255
  }
@@ -1252,12 +1260,10 @@ var SubmissionProvider = function SubmissionProvider(_a) {
1252
1260
  submissionRequest.customerData.idData.idImageFront = documents.passportImage;
1253
1261
  }
1254
1262
  if (documents.selfieImage) {
1255
- if (action === SubmissionAction.IDENTIFY) {
1256
- // TODO: remove once API is fixed
1257
- submissionRequest.biometricData = {
1258
- selfie: documents.selfieImage
1259
- };
1260
- }
1263
+ // if (action === SubmissionAction.IDENTIFY) {
1264
+ // // TODO: remove once API is fixed
1265
+ // submissionRequest.biometricData = { selfie: documents.selfieImage }
1266
+ // }
1261
1267
  submissionRequest.customerData.biometricData = {
1262
1268
  selfie: documents.selfieImage
1263
1269
  };
@@ -1453,6 +1459,18 @@ var SubmissionProvider = function SubmissionProvider(_a) {
1453
1459
  estimateAge: 'N',
1454
1460
  predictGender: 'N'
1455
1461
  }, _a);
1462
+ if (clientRequestID) {
1463
+ request.additionalData.clientRequestID = clientRequestID;
1464
+ }
1465
+ if (idCardForFaceMatch) {
1466
+ request.customerData.idData = {
1467
+ idImageFront: idCardForFaceMatch
1468
+ };
1469
+ // TODO: remove when fixed
1470
+ request.customerData.additionalData = {
1471
+ uniqueRequestId: request.additionalData.uniqueRequestId
1472
+ };
1473
+ }
1456
1474
  attachMetadataToRequest(request, {
1457
1475
  selfieCaptureAttempts: selfieCaptureAttempts,
1458
1476
  idFrontCaptureAttempts: idFrontCaptureAttempts,
@@ -1468,7 +1486,7 @@ var SubmissionProvider = function SubmissionProvider(_a) {
1468
1486
  _d.label = 3;
1469
1487
  case 3:
1470
1488
  host = submissionUrl || determineSubmissionHost(environment);
1471
- endpoint = liveCheckEndpoint();
1489
+ endpoint = liveCheckEndpoint(!!idCardForFaceMatch);
1472
1490
  return [4 /*yield*/, fetch(host + endpoint, {
1473
1491
  method: 'POST',
1474
1492
  headers: apiHeaders(sessionId, sendBase64DocumentsInSwaggerProxy),
@@ -1517,7 +1535,7 @@ var SubmissionProvider = function SubmissionProvider(_a) {
1517
1535
  }
1518
1536
  });
1519
1537
  });
1520
- }, [environment, geolocationResult, idBackCaptureAttempts, idFrontCaptureAttempts, onBeforeLivenessCheck, onRequestFailure, sessionId, selfieCaptureAttempts, submissionUrl, webhooksStripSpecialCharacters]);
1538
+ }, [webhooksStripSpecialCharacters, idCardForFaceMatch, selfieCaptureAttempts, idFrontCaptureAttempts, idBackCaptureAttempts, geolocationResult, onBeforeLivenessCheck, submissionUrl, environment, sessionId, onRequestFailure]);
1521
1539
  var retryLocationAccess = React.useCallback(function () {
1522
1540
  setGeolocationAttempts(function (n) {
1523
1541
  return n + 1;
@@ -8233,7 +8251,7 @@ var reducer$2 = function reducer(state, action) {
8233
8251
  requestError: new Error("".concat(statusMessage, ": ").concat(errorData))
8234
8252
  });
8235
8253
  }
8236
- var faceLive = resultData.verificationResult === 'Live Face Detected';
8254
+ var faceLive = ['Live Face Detected', 'Approved'].includes(resultData.verificationResult);
8237
8255
  var eyeCoveringDetected = resultData.eyeCovering === 'true';
8238
8256
  var maskDetected = resultData.faceMask === 'true';
8239
8257
  var headCoveringDetected = resultData.headCovering === 'true';
@@ -9805,31 +9823,53 @@ var VideoSignatureCapture = function VideoSignatureCapture(_a) {
9805
9823
  clearBtnText: 'Clear'
9806
9824
  });
9807
9825
  var outputCanvas = React.useRef(null);
9826
+ var recordingLock = React.useRef(false);
9808
9827
  React.useEffect(function () {
9809
- // delay 100ms to make sure outputCanvas has rendered.
9810
- setTimeout(function () {
9811
- if (!isRecordingVideo && !videoUrl && !!outputCanvas.current) {
9812
- startRecordingVideo();
9813
- var stream = outputCanvas.current.captureStream(25 /* fps */);
9814
- signatureRecorder.current = new MediaRecorder(stream, {
9815
- videoBitsPerSecond: 270000
9816
- });
9817
- signatureRecorder.current.start();
9818
- signatureRecorder.current.ondataavailable = function (event) {
9819
- var _a;
9820
- recordedChunks.current.push(event.data);
9821
- if (((_a = signatureRecorder.current) === null || _a === void 0 ? void 0 : _a.state) === 'recording') {
9822
- signatureRecorder.current.stop();
9828
+ if (recordingLock.current) return;
9829
+ recordingLock.current = true;
9830
+ (function () {
9831
+ return tslib.__awaiter(void 0, void 0, void 0, function () {
9832
+ var stream;
9833
+ return tslib.__generator(this, function (_a) {
9834
+ switch (_a.label) {
9835
+ case 0:
9836
+ if (!!outputCanvas.current) return [3 /*break*/, 2];
9837
+ return [4 /*yield*/, new Promise(function (resolve) {
9838
+ var interval = setInterval(function () {
9839
+ if (outputCanvas.current) {
9840
+ clearInterval(interval);
9841
+ resolve(null);
9842
+ }
9843
+ }, 10);
9844
+ })];
9845
+ case 1:
9846
+ _a.sent();
9847
+ _a.label = 2;
9848
+ case 2:
9849
+ startRecordingVideo();
9850
+ stream = outputCanvas.current.captureStream(24 /* fps */);
9851
+ signatureRecorder.current = new MediaRecorder(stream, {
9852
+ videoBitsPerSecond: 270000
9853
+ });
9854
+ signatureRecorder.current.start();
9855
+ signatureRecorder.current.ondataavailable = function (event) {
9856
+ var _a;
9857
+ recordedChunks.current.push(event.data);
9858
+ if (((_a = signatureRecorder.current) === null || _a === void 0 ? void 0 : _a.state) === 'recording') {
9859
+ signatureRecorder.current.stop();
9860
+ }
9861
+ };
9862
+ signatureRecorder.current.onstop = function () {
9863
+ var blob = new Blob(recordedChunks.current, {
9864
+ type: 'video/mp4'
9865
+ });
9866
+ setSignatureVideoData(blob);
9867
+ };
9868
+ return [2 /*return*/];
9823
9869
  }
9824
- };
9825
- signatureRecorder.current.onstop = function () {
9826
- var blob = new Blob(recordedChunks.current, {
9827
- type: 'video/mp4'
9828
- });
9829
- setSignatureVideoData(blob);
9830
- };
9831
- }
9832
- }, 100);
9870
+ });
9871
+ });
9872
+ })();
9833
9873
  }, [isRecordingVideo, startRecordingVideo, videoUrl]);
9834
9874
  React.useEffect(function () {
9835
9875
  if (signatureVideoData && signatureData && signatureDataUrl) {
@@ -11635,6 +11675,7 @@ var IdValidation = function IdValidation(_a) {
11635
11675
  var _d = _a.lang,
11636
11676
  lang = _d === void 0 ? 'auto' : _d,
11637
11677
  sessionId = _a.sessionId,
11678
+ clientRequestID = _a.clientRequestID,
11638
11679
  submissionUrl = _a.submissionUrl,
11639
11680
  authUrl = _a.authUrl,
11640
11681
  documentServiceUrl = _a.documentServiceUrl,
@@ -11790,6 +11831,7 @@ var IdValidation = function IdValidation(_a) {
11790
11831
  }, /*#__PURE__*/React__default['default'].createElement(SubmissionProvider, {
11791
11832
  action: SubmissionAction.VALIDATE,
11792
11833
  submissionUrl: submissionUrl,
11834
+ clientRequestID: clientRequestID,
11793
11835
  documentServiceUrl: documentServiceUrl,
11794
11836
  companyId: companyId,
11795
11837
  needImmediateResponse: needImmediateResponse,
@@ -11855,6 +11897,7 @@ var FaceValidation = function FaceValidation(_a) {
11855
11897
  modelLoadTimeoutMs = _e === void 0 ? defaultSelfieCaptureModelLoadTimeoutMs : _e,
11856
11898
  _f = _a.skipSuccessScreen,
11857
11899
  skipSuccessScreen = _f === void 0 ? false : _f,
11900
+ idCardForFaceMatch = _a.idCardForFaceMatch,
11858
11901
  onBeforeDocumentUpload = _a.onBeforeDocumentUpload,
11859
11902
  onDocumentUploadProgress = _a.onDocumentUploadProgress,
11860
11903
  onDocumentUploaded = _a.onDocumentUploaded,
@@ -11919,6 +11962,7 @@ var FaceValidation = function FaceValidation(_a) {
11919
11962
  webhooksSendInputImages: webhooksSendInputImages,
11920
11963
  webhooksSendProcessedImages: webhooksSendProcessedImages,
11921
11964
  sendBase64DocumentsInSwaggerProxy: sendBase64DocumentsInSwaggerProxy,
11965
+ idCardForFaceMatch: idCardForFaceMatch,
11922
11966
  onBeforeDocumentUpload: onBeforeDocumentUpload,
11923
11967
  onDocumentUploadProgress: onDocumentUploadProgress,
11924
11968
  onDocumentUploaded: onDocumentUploaded,
@@ -13493,6 +13537,7 @@ var SignatureKYC = function SignatureKYC(_a) {
13493
13537
  var _b = _a.lang,
13494
13538
  lang = _b === void 0 ? 'auto' : _b,
13495
13539
  sessionId = _a.sessionId,
13540
+ clientRequestID = _a.clientRequestID,
13496
13541
  authUrl = _a.authUrl,
13497
13542
  submissionUrl = _a.submissionUrl,
13498
13543
  documentServiceUrl = _a.documentServiceUrl,
@@ -13511,6 +13556,7 @@ var SignatureKYC = function SignatureKYC(_a) {
13511
13556
  loadingOverlayMode = _c === void 0 ? 'default' : _c,
13512
13557
  _d = _a.skipSuccessScreen,
13513
13558
  skipSuccessScreen = _d === void 0 ? false : _d,
13559
+ idCardForFaceMatch = _a.idCardForFaceMatch,
13514
13560
  _e = _a.modelLoadTimeoutMs,
13515
13561
  modelLoadTimeoutMs = _e === void 0 ? defaultSelfieCaptureModelLoadTimeoutMs : _e,
13516
13562
  _f = _a.theme,
@@ -13532,7 +13578,9 @@ var SignatureKYC = function SignatureKYC(_a) {
13532
13578
  }, /*#__PURE__*/React__default['default'].createElement(SubmissionProvider, {
13533
13579
  action: SubmissionAction.NONE,
13534
13580
  submissionUrl: submissionUrl,
13581
+ clientRequestID: clientRequestID,
13535
13582
  documentServiceUrl: documentServiceUrl,
13583
+ idCardForFaceMatch: idCardForFaceMatch,
13536
13584
  sendBase64DocumentsInSwaggerProxy: sendBase64DocumentsInSwaggerProxy,
13537
13585
  onBeforeDocumentUpload: onBeforeDocumentUpload,
13538
13586
  onDocumentUploadProgress: onDocumentUploadProgress,
@@ -13571,6 +13619,7 @@ var VideoIdValidation = function VideoIdValidation(_a) {
13571
13619
  var _b = _a.lang,
13572
13620
  lang = _b === void 0 ? 'auto' : _b,
13573
13621
  sessionId = _a.sessionId,
13622
+ clientRequestID = _a.clientRequestID,
13574
13623
  authUrl = _a.authUrl,
13575
13624
  submissionUrl = _a.submissionUrl,
13576
13625
  documentServiceUrl = _a.documentServiceUrl,
@@ -13637,6 +13686,7 @@ var VideoIdValidation = function VideoIdValidation(_a) {
13637
13686
  idCapturePortraitGuidesOnMobile = _s === void 0 ? false : _s,
13638
13687
  _t = _a.idCaptureRotateLoadingOverlayImageWhenPortrait,
13639
13688
  idCaptureRotateLoadingOverlayImageWhenPortrait = _t === void 0 ? true : _t,
13689
+ idCardForFaceMatch = _a.idCardForFaceMatch,
13640
13690
  _u = _a.faceLivenessLoadingOverlayMode,
13641
13691
  faceLivenessLoadingOverlayMode = _u === void 0 ? 'default' : _u,
13642
13692
  _v = _a.disableFaceDetectionWhileAudioCapture,
@@ -13736,6 +13786,7 @@ var VideoIdValidation = function VideoIdValidation(_a) {
13736
13786
  }, /*#__PURE__*/React__default['default'].createElement(SubmissionProvider, {
13737
13787
  action: skipIdCapture ? SubmissionAction.NONE : SubmissionAction.VALIDATE,
13738
13788
  submissionUrl: submissionUrl,
13789
+ clientRequestID: clientRequestID,
13739
13790
  documentServiceUrl: documentServiceUrl,
13740
13791
  companyId: companyId,
13741
13792
  needImmediateResponse: needImmediateResponse,
@@ -13753,6 +13804,7 @@ var VideoIdValidation = function VideoIdValidation(_a) {
13753
13804
  webhooksSendProcessedImages: webhooksSendProcessedImages,
13754
13805
  webhooksFireOnReview: webhooksFireOnReview,
13755
13806
  sendBase64DocumentsInSwaggerProxy: sendBase64DocumentsInSwaggerProxy,
13807
+ idCardForFaceMatch: idCardForFaceMatch,
13756
13808
  onBeforeDocumentUpload: onBeforeDocumentUpload,
13757
13809
  onDocumentUploadProgress: onDocumentUploadProgress,
13758
13810
  onDocumentUploaded: onDocumentUploaded,