idmission-web-sdk 2.3.59 → 2.3.61

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 (69) hide show
  1. package/dist/components/common/GuidanceMessage.d.ts.map +1 -1
  2. package/dist/components/common/overlay.d.ts.map +1 -1
  3. package/dist/components/customer_flows/CustomerBiometricsEnrollment.d.ts +2 -0
  4. package/dist/components/customer_flows/CustomerBiometricsEnrollment.d.ts.map +1 -1
  5. package/dist/components/customer_flows/CustomerIdAndBiometricsEnrollment.d.ts +2 -0
  6. package/dist/components/customer_flows/CustomerIdAndBiometricsEnrollment.d.ts.map +1 -1
  7. package/dist/components/customer_flows/CustomerIdentification.d.ts +2 -0
  8. package/dist/components/customer_flows/CustomerIdentification.d.ts.map +1 -1
  9. package/dist/components/customer_flows/CustomerVerification.d.ts +2 -0
  10. package/dist/components/customer_flows/CustomerVerification.d.ts.map +1 -1
  11. package/dist/components/customer_flows/FaceValidation.d.ts +2 -0
  12. package/dist/components/customer_flows/FaceValidation.d.ts.map +1 -1
  13. package/dist/components/customer_flows/IdAndFaceValidation.d.ts +2 -0
  14. package/dist/components/customer_flows/IdAndFaceValidation.d.ts.map +1 -1
  15. package/dist/components/customer_flows/IdValidation.d.ts +2 -0
  16. package/dist/components/customer_flows/IdValidation.d.ts.map +1 -1
  17. package/dist/components/customer_flows/SignatureKYC.d.ts +4 -0
  18. package/dist/components/customer_flows/SignatureKYC.d.ts.map +1 -1
  19. package/dist/components/customer_flows/VideoIdValidation.d.ts +2 -0
  20. package/dist/components/customer_flows/VideoIdValidation.d.ts.map +1 -1
  21. package/dist/components/customer_identification/CustomerIdentificationCapture.d.ts.map +1 -1
  22. package/dist/components/customer_identification/CustomerIdentificationWizard.d.ts +2 -1
  23. package/dist/components/customer_identification/CustomerIdentificationWizard.d.ts.map +1 -1
  24. package/dist/components/customer_verification/CustomerVerificationCapture.d.ts.map +1 -1
  25. package/dist/components/customer_verification/CustomerVerificationWizard.d.ts +2 -1
  26. package/dist/components/customer_verification/CustomerVerificationWizard.d.ts.map +1 -1
  27. package/dist/components/face_liveness/FaceLivenessCapture.d.ts +2 -1
  28. package/dist/components/face_liveness/FaceLivenessCapture.d.ts.map +1 -1
  29. package/dist/components/face_liveness/FaceLivenessWizard.d.ts +3 -1
  30. package/dist/components/face_liveness/FaceLivenessWizard.d.ts.map +1 -1
  31. package/dist/components/id_capture/IdCaptureLoadingOverlay.d.ts +1 -0
  32. package/dist/components/id_capture/IdCaptureLoadingOverlay.d.ts.map +1 -1
  33. package/dist/components/id_capture/IdCaptureLoadingOverlayDefault.d.ts +1 -1
  34. package/dist/components/id_capture/IdCaptureLoadingOverlayDefault.d.ts.map +1 -1
  35. package/dist/components/id_capture/IdCaptureWizard.d.ts +2 -1
  36. package/dist/components/id_capture/IdCaptureWizard.d.ts.map +1 -1
  37. package/dist/components/selfie_capture/SelfieCapture.d.ts +5 -2
  38. package/dist/components/selfie_capture/SelfieCapture.d.ts.map +1 -1
  39. package/dist/components/selfie_capture/SelfieCaptureLoadingOverlay.d.ts +2 -0
  40. package/dist/components/selfie_capture/SelfieCaptureLoadingOverlay.d.ts.map +1 -1
  41. package/dist/components/selfie_capture/SelfieCaptureLoadingOverlayDefault.d.ts +1 -1
  42. package/dist/components/selfie_capture/SelfieCaptureLoadingOverlayDefault.d.ts.map +1 -1
  43. package/dist/components/selfie_capture/SelfieCaptureWizard.d.ts +3 -1
  44. package/dist/components/selfie_capture/SelfieCaptureWizard.d.ts.map +1 -1
  45. package/dist/components/submission/SubmissionProvider.d.ts.map +1 -1
  46. package/dist/components/submission/types.d.ts +2 -0
  47. package/dist/components/submission/types.d.ts.map +1 -1
  48. package/dist/components/video_id/IdVideoCaptureWizard.d.ts +2 -1
  49. package/dist/components/video_id/IdVideoCaptureWizard.d.ts.map +1 -1
  50. package/dist/components/video_signature_capture/VideoSignatureCapture.d.ts.map +1 -1
  51. package/dist/components/video_signature_capture/VideoSignatureWizard.d.ts +3 -1
  52. package/dist/components/video_signature_capture/VideoSignatureWizard.d.ts.map +1 -1
  53. package/dist/lib/models/FaceDetection.d.ts.map +1 -1
  54. package/dist/lib/models/loadProgressHooks.d.ts +3 -1
  55. package/dist/lib/models/loadProgressHooks.d.ts.map +1 -1
  56. package/dist/lib/utils/cropping.d.ts +1 -1
  57. package/dist/lib/utils/cropping.d.ts.map +1 -1
  58. package/dist/sdk2.cjs.development.js +448 -318
  59. package/dist/sdk2.cjs.development.js.map +1 -1
  60. package/dist/sdk2.cjs.production.js +1 -1
  61. package/dist/sdk2.cjs.production.js.map +1 -1
  62. package/dist/sdk2.esm.js +448 -318
  63. package/dist/sdk2.esm.js.map +1 -1
  64. package/dist/sdk2.umd.development.js +448 -318
  65. package/dist/sdk2.umd.development.js.map +1 -1
  66. package/dist/sdk2.umd.production.js +1 -1
  67. package/dist/sdk2.umd.production.js.map +1 -1
  68. package/dist/version.d.ts +1 -1
  69. package/package.json +1 -1
@@ -236,7 +236,7 @@ typeof SuppressedError === "function" ? SuppressedError : function (error, suppr
236
236
  return e.name = "SuppressedError", e.error = error, e.suppressed = suppressed, e;
237
237
  };
238
238
 
239
- var webSdkVersion = '2.3.59';
239
+ var webSdkVersion = '2.3.61';
240
240
 
241
241
  function getPlatform() {
242
242
  // eslint-disable-next-line @typescript-eslint/ban-ts-comment
@@ -484,7 +484,7 @@ var templateObject_1$S;
484
484
  var ButtonsRow$2 = styled__default.default.div(templateObject_1$R || (templateObject_1$R = __makeTemplateObject(["\n display: flex;\n gap: 0 15px;\n justify-content: center;\n text-align: left;\n"], ["\n display: flex;\n gap: 0 15px;\n justify-content: center;\n text-align: left;\n"])));
485
485
  var templateObject_1$R;
486
486
 
487
- var GuidanceMessageContainerDiv = styled__default.default.div(templateObject_1$Q || (templateObject_1$Q = __makeTemplateObject(["\n position: absolute;\n top: calc(", ");\n ", "\n font-weight: bold;\n width: 100%;\n display: flex;\n"], ["\n position: absolute;\n top: calc(", ");\n ", "\n font-weight: bold;\n width: 100%;\n display: flex;\n"])), function (_a) {
487
+ var GuidanceMessageContainerDiv = styled__default.default.div(templateObject_1$Q || (templateObject_1$Q = __makeTemplateObject(["\n position: absolute;\n top: calc(", ");\n ", "\n font-weight: bold;\n width: 100%;\n display: flex;\n padding: 0 10%;\n box-sizing: border-box;\n"], ["\n position: absolute;\n top: calc(", ");\n ", "\n font-weight: bold;\n width: 100%;\n display: flex;\n padding: 0 10%;\n box-sizing: border-box;\n"])), function (_a) {
488
488
  var $top = _a.$top;
489
489
  return $top !== null && $top !== void 0 ? $top : '10%';
490
490
  }, function (_a) {
@@ -497,33 +497,33 @@ var GuidanceMessageContainer = function GuidanceMessageContainer(props) {
497
497
  if (!portalLocation) return element;
498
498
  return /*#__PURE__*/reactDom.createPortal(element, portalLocation);
499
499
  };
500
- var GuidanceMessage = styled__default.default.div(templateObject_2$H || (templateObject_2$H = __makeTemplateObject(["\n margin-left: auto;\n margin-right: auto;\n background: ", ";\n color: ", ";\n padding: 10px 12px 8px;\n border-radius: 8px;\n z-index: 10001;\n"], ["\n margin-left: auto;\n margin-right: auto;\n background: ", ";\n color: ", ";\n padding: 10px 12px 8px;\n border-radius: 8px;\n z-index: 10001;\n"])), function (props) {
500
+ var GuidanceMessage = styled__default.default.div(templateObject_2$I || (templateObject_2$I = __makeTemplateObject(["\n margin-left: auto;\n margin-right: auto;\n background: ", ";\n color: ", ";\n border-radius: 8px;\n z-index: 10001;\n padding: 16px 24px;\n font-size: 18px;\n font-weight: bold;\n box-shadow:\n 0 1px 3px 0 rgb(0 0 0 / 0.1),\n 0 1px 2px -1px rgb(0 0 0 / 0.1);\n"], ["\n margin-left: auto;\n margin-right: auto;\n background: ", ";\n color: ", ";\n border-radius: 8px;\n z-index: 10001;\n padding: 16px 24px;\n font-size: 18px;\n font-weight: bold;\n box-shadow:\n 0 1px 3px 0 rgb(0 0 0 / 0.1),\n 0 1px 2px -1px rgb(0 0 0 / 0.1);\n"])), function (props) {
501
501
  var _a, _b, _c, _d, _e, _f;
502
- return (_f = (_a = props.$background) !== null && _a !== void 0 ? _a : (_e = (_c = (_b = props.theme) === null || _b === void 0 ? void 0 : _b.guidanceMessages) === null || _c === void 0 ? void 0 : _c[(_d = props.$variant) !== null && _d !== void 0 ? _d : 'default']) === null || _e === void 0 ? void 0 : _e.backgroundColor) !== null && _f !== void 0 ? _f : '#ccc';
502
+ return (_f = (_a = props.$background) !== null && _a !== void 0 ? _a : (_e = (_c = (_b = props.theme) === null || _b === void 0 ? void 0 : _b.guidanceMessages) === null || _c === void 0 ? void 0 : _c[(_d = props.$variant) !== null && _d !== void 0 ? _d : 'default']) === null || _e === void 0 ? void 0 : _e.backgroundColor) !== null && _f !== void 0 ? _f : 'white';
503
503
  }, function (props) {
504
504
  var _a, _b, _c, _d, _e, _f;
505
505
  return (_f = (_a = props.$textColor) !== null && _a !== void 0 ? _a : (_e = (_c = (_b = props.theme) === null || _b === void 0 ? void 0 : _b.guidanceMessages) === null || _c === void 0 ? void 0 : _c[(_d = props.$variant) !== null && _d !== void 0 ? _d : 'default']) === null || _e === void 0 ? void 0 : _e.textColor) !== null && _f !== void 0 ? _f : 'black';
506
506
  });
507
- var templateObject_1$Q, templateObject_2$H;
507
+ var templateObject_1$Q, templateObject_2$I;
508
508
 
509
509
  var wavesAnimation = styled.keyframes(templateObject_1$P || (templateObject_1$P = __makeTemplateObject(["\n 0% {\n opacity: 0;\n transform: scale3d(1, 1, 1);\n }\n 80% {\n opacity: 1;\n }\n 100% {\n transform: scale3d(2, 2, 1);\n opacity: 0;\n }\n"], ["\n 0% {\n opacity: 0;\n transform: scale3d(1, 1, 1);\n }\n 80% {\n opacity: 1;\n }\n 100% {\n transform: scale3d(2, 2, 1);\n opacity: 0;\n }\n"])));
510
- var progressBarAnimation = styled.keyframes(templateObject_2$G || (templateObject_2$G = __makeTemplateObject(["\n 0% {\n width: 0;\n }\n 100% {\n width: 100%;\n }\n"], ["\n 0% {\n width: 0;\n }\n 100% {\n width: 100%;\n }\n"])));
511
- var dualRingSpinnerAnimation = styled.keyframes(templateObject_3$t || (templateObject_3$t = __makeTemplateObject(["\n 0% {\n transform: rotate(0deg);\n }\n 100% {\n transform: rotate(360deg);\n }\n"], ["\n 0% {\n transform: rotate(0deg);\n }\n 100% {\n transform: rotate(360deg);\n }\n"])));
510
+ var progressBarAnimation = styled.keyframes(templateObject_2$H || (templateObject_2$H = __makeTemplateObject(["\n 0% {\n width: 0;\n }\n 100% {\n width: 100%;\n }\n"], ["\n 0% {\n width: 0;\n }\n 100% {\n width: 100%;\n }\n"])));
511
+ var dualRingSpinnerAnimation = styled.keyframes(templateObject_3$u || (templateObject_3$u = __makeTemplateObject(["\n 0% {\n transform: rotate(0deg);\n }\n 100% {\n transform: rotate(360deg);\n }\n"], ["\n 0% {\n transform: rotate(0deg);\n }\n 100% {\n transform: rotate(360deg);\n }\n"])));
512
512
  var progressBorderAnimation = styled.keyframes(templateObject_4$n || (templateObject_4$n = __makeTemplateObject(["\n to {\n stroke-dashoffset: 0;\n }\n"], ["\n to {\n stroke-dashoffset: 0;\n }\n"])));
513
- var templateObject_1$P, templateObject_2$G, templateObject_3$t, templateObject_4$n;
513
+ var templateObject_1$P, templateObject_2$H, templateObject_3$u, templateObject_4$n;
514
514
 
515
515
  var OverlayContainer = styled__default.default.div(templateObject_1$O || (templateObject_1$O = __makeTemplateObject(["\n position: absolute;\n top: 0;\n left: 0;\n width: 100%;\n height: 100%;\n\n display: flex;\n flex-direction: column;\n\n overflow-x: hidden;\n overflow-y: auto;\n\n background: ", ";\n ", "\n\n z-index: 10000;\n"], ["\n position: absolute;\n top: 0;\n left: 0;\n width: 100%;\n height: 100%;\n\n display: flex;\n flex-direction: column;\n\n overflow-x: hidden;\n overflow-y: auto;\n\n background: ", ";\n ", "\n\n z-index: 10000;\n"])), function (props) {
516
516
  return props.theme.background ? "".concat(props.theme.background) : "white";
517
517
  }, function (props) {
518
518
  return props.theme.textColor ? "color: ".concat(props.theme.textColor, ";") : "";
519
519
  });
520
- var OverlayInner$2 = styled__default.default.div(templateObject_2$F || (templateObject_2$F = __makeTemplateObject(["\n text-align: ", ";\n display: flex;\n flex-direction: column;\n flex-wrap: nowrap;\n width: 100%;\n height: 100%;\n ", "\n"], ["\n text-align: ", ";\n display: flex;\n flex-direction: column;\n flex-wrap: nowrap;\n width: 100%;\n height: 100%;\n ", "\n"])), function (props) {
520
+ var OverlayInner$2 = styled__default.default.div(templateObject_2$G || (templateObject_2$G = __makeTemplateObject(["\n text-align: ", ";\n display: flex;\n flex-direction: column;\n flex-wrap: nowrap;\n width: 100%;\n height: 100%;\n ", "\n"], ["\n text-align: ", ";\n display: flex;\n flex-direction: column;\n flex-wrap: nowrap;\n width: 100%;\n height: 100%;\n ", "\n"])), function (props) {
521
521
  var _a;
522
522
  return (_a = props.theme.textAlign) !== null && _a !== void 0 ? _a : 'center';
523
523
  }, function (props) {
524
524
  return props.theme.padding ? "box-sizing: border-box; padding: ".concat(props.theme.padding, ";") : "";
525
525
  });
526
- var OverlayImageContainer = styled__default.default.div(templateObject_3$s || (templateObject_3$s = __makeTemplateObject(["\n position: relative;\n display: flex;\n flex-grow: 1;\n padding-bottom: 25px;\n overflow: hidden;\n\n & > img,\n & > svg {\n margin: 0 auto;\n width: max-content;\n max-width: 100%;\n max-height: 100%;\n aspect-ratio: initial;\n object-fit: contain;\n display: block;\n }\n"], ["\n position: relative;\n display: flex;\n flex-grow: 1;\n padding-bottom: 25px;\n overflow: hidden;\n\n & > img,\n & > svg {\n margin: 0 auto;\n width: max-content;\n max-width: 100%;\n max-height: 100%;\n aspect-ratio: initial;\n object-fit: contain;\n display: block;\n }\n"])));
526
+ var OverlayImageContainer = styled__default.default.div(templateObject_3$t || (templateObject_3$t = __makeTemplateObject(["\n position: relative;\n display: flex;\n flex-grow: 1;\n padding-bottom: 25px;\n overflow: hidden;\n\n & > img,\n & > svg {\n margin: 0 auto;\n width: max-content;\n max-width: 100%;\n max-height: 100%;\n aspect-ratio: initial;\n object-fit: contain;\n display: block;\n }\n"], ["\n position: relative;\n display: flex;\n flex-grow: 1;\n padding-bottom: 25px;\n overflow: hidden;\n\n & > img,\n & > svg {\n margin: 0 auto;\n width: max-content;\n max-width: 100%;\n max-height: 100%;\n aspect-ratio: initial;\n object-fit: contain;\n display: block;\n }\n"])));
527
527
  var OverlayImageRow = styled__default.default.div(templateObject_4$m || (templateObject_4$m = __makeTemplateObject(["\n display: flex;\n margin: auto;\n\n & > div {\n max-height: calc(100% - 320px);\n\n & > img {\n width: 100%;\n max-height: 100%;\n height: auto;\n object-fit: contain;\n }\n }\n"], ["\n display: flex;\n margin: auto;\n\n & > div {\n max-height: calc(100% - 320px);\n\n & > img {\n width: 100%;\n max-height: 100%;\n height: auto;\n object-fit: contain;\n }\n }\n"])));
528
528
  var GrayOverlayContainer = styled__default.default(OverlayContainer)(templateObject_5$e || (templateObject_5$e = __makeTemplateObject(["\n background: #f7f6fb;\n"], ["\n background: #f7f6fb;\n"])));
529
529
  var ButtonsColumn = styled__default.default.div(templateObject_6$9 || (templateObject_6$9 = __makeTemplateObject(["\n display: flex;\n flex-direction: column;\n gap: 15px 0;\n justify-content: center;\n margin-top: 24px;\n"], ["\n display: flex;\n flex-direction: column;\n gap: 15px 0;\n justify-content: center;\n margin-top: 24px;\n"])));
@@ -545,7 +545,7 @@ var LoadingOverlayHeader = styled__default.default.div(templateObject_10$1 || (t
545
545
  }, function (props) {
546
546
  return props.theme.padding ? "box-sizing: border-box; padding: ".concat(props.theme.padding, ";") : "";
547
547
  });
548
- var LoadingOverlayGuidanceMessage = styled__default.default(GuidanceMessage)(templateObject_11$1 || (templateObject_11$1 = __makeTemplateObject(["\n padding: 16px 24px;\n margin-top: 16px;\n font-size: 18px;\n font-weight: bold;\n background: white;\n box-shadow:\n 0 1px 3px 0 rgb(0 0 0 / 0.1),\n 0 1px 2px -1px rgb(0 0 0 / 0.1);\n"], ["\n padding: 16px 24px;\n margin-top: 16px;\n font-size: 18px;\n font-weight: bold;\n background: white;\n box-shadow:\n 0 1px 3px 0 rgb(0 0 0 / 0.1),\n 0 1px 2px -1px rgb(0 0 0 / 0.1);\n"])));
548
+ var LoadingOverlayGuidanceMessage = styled__default.default(GuidanceMessage)(templateObject_11$1 || (templateObject_11$1 = __makeTemplateObject(["\n padding: 16px 24px;\n margin-top: 16px;\n font-size: 18px;\n font-weight: bold;\n"], ["\n padding: 16px 24px;\n margin-top: 16px;\n font-size: 18px;\n font-weight: bold;\n"])));
549
549
  var LoadingOverlayImageContainer = styled__default.default(OverlayImageContainer)(templateObject_12$1 || (templateObject_12$1 = __makeTemplateObject(["\n padding: 0;\n max-height: 100%;\n pointer-events: none;\n"], ["\n padding: 0;\n max-height: 100%;\n pointer-events: none;\n"])));
550
550
  var LoadingOverlayProgressBarBackground = styled__default.default.div.attrs({
551
551
  className: 'loading-overlay-progress-bar-background'
@@ -565,7 +565,7 @@ var LoadingOverlayLoadingListItem = styled__default.default.li(templateObject_19
565
565
  var LoadingOverlayProgressContainer = styled__default.default.div(templateObject_20 || (templateObject_20 = __makeTemplateObject(["\n position: absolute;\n top: 0;\n left: 0;\n width: 100%;\n height: 100%;\n"], ["\n position: absolute;\n top: 0;\n left: 0;\n width: 100%;\n height: 100%;\n"])));
566
566
  var LoadingOverlayCustomLoadingGraphic = styled__default.default.img(templateObject_21 || (templateObject_21 = __makeTemplateObject(["\n transform-style: preserve-3d;\n"], ["\n transform-style: preserve-3d;\n"])));
567
567
  var LoadingOverlayContinueButtonContainer = styled__default.default.div(templateObject_22 || (templateObject_22 = __makeTemplateObject(["\n display: flex;\n"], ["\n display: flex;\n"])));
568
- var templateObject_1$O, templateObject_2$F, templateObject_3$s, templateObject_4$m, templateObject_5$e, templateObject_6$9, templateObject_7$5, templateObject_8$4, templateObject_9$2, templateObject_10$1, templateObject_11$1, templateObject_12$1, templateObject_13$1, templateObject_14, templateObject_15, templateObject_16, templateObject_17, templateObject_18, templateObject_19, templateObject_20, templateObject_21, templateObject_22;
568
+ var templateObject_1$O, templateObject_2$G, templateObject_3$t, templateObject_4$m, templateObject_5$e, templateObject_6$9, templateObject_7$5, templateObject_8$4, templateObject_9$2, templateObject_10$1, templateObject_11$1, templateObject_12$1, templateObject_13$1, templateObject_14, templateObject_15, templateObject_16, templateObject_17, templateObject_18, templateObject_19, templateObject_20, templateObject_21, templateObject_22;
569
569
 
570
570
  var GeolocationAccessDeniedOverlay = function GeolocationAccessDeniedOverlay(_a) {
571
571
  var accessBlockedImageUrl = _a.accessBlockedImageUrl;
@@ -1596,6 +1596,9 @@ var SubmissionProvider = function SubmissionProvider(_a) {
1596
1596
  if (clientRequestID) {
1597
1597
  submissionRequest.additionalData.clientRequestID = clientRequestID;
1598
1598
  }
1599
+ if (jobId) {
1600
+ submissionRequest.additionalData.jobID = jobId;
1601
+ }
1599
1602
  if (documents.idFrontImage) {
1600
1603
  submissionRequest.customerData.idData.idImageFront = documents.idFrontImage;
1601
1604
  }
@@ -1693,7 +1696,7 @@ var SubmissionProvider = function SubmissionProvider(_a) {
1693
1696
  }
1694
1697
  });
1695
1698
  });
1696
- }, [additionalDocuments, bypassAgeValidation, bypassNameMatching, cardData, clientRequestID, companyId, customerDataMatchConfig, deduplicationEnabled, deduplicationSynchronous, documentServiceUrl, enrollmentId, expectedAudioText, geolocationResult, idBackCaptureAttempts, idBackImage, idBackImageRequired, idBackIrImage, idBackUvImage, idCaptureVideoAudioStartsAt, idCaptureVideoAudioUrl, idCaptureVideoIdBackImage, idCaptureVideoIdFrontImage, idCaptureVideoUrl, idCardForFaceMatch, idData, idFrontCaptureAttempts, idFrontImage, idFrontIrImage, idFrontUvImage, idImageResolutionCheck, manualReviewRequired, needImmediateResponse, passportImage, personalData, selfieCaptureAttempts, selfieImage, signatureData, signatureVideoUrl, uploadDocument, verifyIdWithExternalDatabases, webhooksClientTraceId, webhooksEnabled, webhooksFireOnReview, webhooksFireOnReviewURL, webhooksSendInputImages, webhooksSendProcessedImages, webhooksStripSpecialCharacters, webhooksURL]);
1699
+ }, [additionalDocuments, bypassAgeValidation, bypassNameMatching, cardData, clientRequestID, companyId, customerDataMatchConfig, deduplicationEnabled, deduplicationSynchronous, documentServiceUrl, enrollmentId, expectedAudioText, geolocationResult, idBackCaptureAttempts, idBackImage, idBackImageRequired, idBackIrImage, idBackUvImage, idCaptureVideoAudioStartsAt, idCaptureVideoAudioUrl, idCaptureVideoIdBackImage, idCaptureVideoIdFrontImage, idCaptureVideoUrl, idCardForFaceMatch, idData, idFrontCaptureAttempts, idFrontImage, idFrontIrImage, idFrontUvImage, idImageResolutionCheck, jobId, manualReviewRequired, needImmediateResponse, passportImage, personalData, selfieCaptureAttempts, selfieImage, signatureData, signatureVideoUrl, uploadDocument, verifyIdWithExternalDatabases, webhooksClientTraceId, webhooksEnabled, webhooksFireOnReview, webhooksFireOnReviewURL, webhooksSendInputImages, webhooksSendProcessedImages, webhooksStripSpecialCharacters, webhooksURL]);
1697
1700
  var defaultOnSubmit = React.useCallback(function () {
1698
1701
  return __awaiter(void 0, void 0, void 0, function () {
1699
1702
  var submissionResponse_1, payload, host, endpoint, response, statusMessage, submissionResponse_2, e_1, err;
@@ -1837,6 +1840,9 @@ var SubmissionProvider = function SubmissionProvider(_a) {
1837
1840
  if (clientRequestID) {
1838
1841
  request.additionalData.clientRequestID = clientRequestID;
1839
1842
  }
1843
+ if (jobId) {
1844
+ request.additionalData.jobID = jobId;
1845
+ }
1840
1846
  if (idCardForFaceMatch) {
1841
1847
  request.customerData.idData = {
1842
1848
  idImageFront: idCardForFaceMatch
@@ -1864,7 +1870,7 @@ var SubmissionProvider = function SubmissionProvider(_a) {
1864
1870
  }
1865
1871
  });
1866
1872
  });
1867
- }, [clientRequestID, documentServiceUrl, estimateAge, geolocationResult, idBackCaptureAttempts, idCardForFaceMatch, idFrontCaptureAttempts, predictGender, selfieCaptureAttempts, uploadDocument, useDocumentServiceForLivenessChecks, webhooksStripSpecialCharacters]);
1873
+ }, [clientRequestID, documentServiceUrl, estimateAge, geolocationResult, idBackCaptureAttempts, idCardForFaceMatch, idFrontCaptureAttempts, jobId, predictGender, selfieCaptureAttempts, uploadDocument, useDocumentServiceForLivenessChecks, webhooksStripSpecialCharacters]);
1868
1874
  var checkLiveness = React.useCallback(function (imageDataUrl) {
1869
1875
  return __awaiter(void 0, void 0, void 0, function () {
1870
1876
  var request, host, endpoint, response, statusMessage, submissionResponse_3, e_2, err;
@@ -2233,6 +2239,7 @@ function clearCanvas(canvas) {
2233
2239
  var templateObject_1$N;
2234
2240
 
2235
2241
  function cropToShoulders(rawCanvas, cropCanvas, resizeCanvas, frame, face, quality, maxHeight) {
2242
+ var _a;
2236
2243
  if (quality === void 0) {
2237
2244
  quality = 0.92;
2238
2245
  }
@@ -2249,10 +2256,14 @@ function cropToShoulders(rawCanvas, cropCanvas, resizeCanvas, frame, face, quali
2249
2256
  cropCanvas.height = frame.height;
2250
2257
  cropCtx.drawImage(rawCanvas, 0, 0, cropCanvas.width, cropCanvas.height);
2251
2258
  } else {
2252
- var _a = face.box,
2253
- xMin = _a.xMin,
2254
- width = _a.width;
2259
+ var _b = (_a = face === null || face === void 0 ? void 0 : face.box) !== null && _a !== void 0 ? _a : {
2260
+ xMin: 0,
2261
+ width: frame.width
2262
+ },
2263
+ xMin = _b.xMin,
2264
+ width = _b.width;
2255
2265
  var desiredWidth = frame.height * 0.6;
2266
+ alert("this side! ".concat(desiredWidth, "x").concat(frame.height));
2256
2267
  var faceCenterX = xMin + width / 2;
2257
2268
  var xPos = Math.max(0, faceCenterX - desiredWidth / 2);
2258
2269
  cropCanvas.width = desiredWidth;
@@ -2751,6 +2762,9 @@ function useLoadFaceDetector(_a) {
2751
2762
  clearTimeout(modelLoadTimeout);
2752
2763
  setModelLoadState('warming');
2753
2764
  setModelWarmingStartedAt(new Date().getTime());
2765
+ return [4 /*yield*/, testFaceDetectionAgainstKnownImage(model)];
2766
+ case 1:
2767
+ _b.sent();
2754
2768
  _a = waitForVideoReady(videoRef), videoReady = _a[0], cancel = _a[1];
2755
2769
  cancelled = false;
2756
2770
  cancelVideoReady = function cancelVideoReady() {
@@ -2758,7 +2772,7 @@ function useLoadFaceDetector(_a) {
2758
2772
  cancel();
2759
2773
  };
2760
2774
  return [4 /*yield*/, videoReady];
2761
- case 1:
2775
+ case 2:
2762
2776
  _b.sent();
2763
2777
  if (cancelled) return [2 /*return*/];
2764
2778
  model.detectForVideo(videoRef.current, performance.now());
@@ -2910,6 +2924,26 @@ function processFaceDetectorPrediction(_a) {
2910
2924
  faceIsStable: faceIsStable
2911
2925
  };
2912
2926
  }
2927
+ function testFaceDetectionAgainstKnownImage(detector) {
2928
+ return new Promise(function (resolve, reject) {
2929
+ var img = new Image();
2930
+ img.crossOrigin = 'anonymous';
2931
+ img.onload = function () {
2932
+ var prediction = detector.detectForVideo(img, performance.now());
2933
+ if (prediction.detections.length > 0) {
2934
+ debug('face detection test result', prediction.detections);
2935
+ resolve(void 0);
2936
+ } else {
2937
+ warn('face detection test failed');
2938
+ reject(new Error('testFaceDetectionAgainstKnownImage failed to predict'));
2939
+ }
2940
+ };
2941
+ img.onerror = function () {
2942
+ return reject(new Error('testFaceDetectionAgainstKnownImage failed to load image'));
2943
+ };
2944
+ img.src = "".concat(DEFAULT_CDN_URL, "/head-test.jpg");
2945
+ });
2946
+ }
2913
2947
 
2914
2948
  var preloadModels = function preloadModels(_a) {
2915
2949
  return __awaiter(void 0, [_a], void 0, function (_b) {
@@ -5280,13 +5314,13 @@ function CameraTamperSeal(_a) {
5280
5314
  }, messageText)));
5281
5315
  }
5282
5316
  var StyledOverlayInner$4 = styled__default.default(OverlayInner$2)(templateObject_1$M || (templateObject_1$M = __makeTemplateObject(["\n justify-content: center;\n"], ["\n justify-content: center;\n"])));
5283
- var StyledOverlayHeading = styled__default.default.h3(templateObject_2$E || (templateObject_2$E = __makeTemplateObject(["\n margin-bottom: 8px;\n"], ["\n margin-bottom: 8px;\n"])));
5317
+ var StyledOverlayHeading = styled__default.default.h3(templateObject_2$F || (templateObject_2$F = __makeTemplateObject(["\n margin-bottom: 8px;\n"], ["\n margin-bottom: 8px;\n"])));
5284
5318
  function useCameraStore(selector) {
5285
5319
  var store = React.useContext(CameraStoreContext);
5286
5320
  if (!store) throw new Error('useCameraStore cannot be used without Provider');
5287
5321
  return zustand.useStore(store, selector);
5288
5322
  }
5289
- var templateObject_1$M, templateObject_2$E;
5323
+ var templateObject_1$M, templateObject_2$F;
5290
5324
 
5291
5325
  var DocumentDetectionModelContext = /*#__PURE__*/React.createContext({
5292
5326
  startDocumentDetection: function startDocumentDetection() {
@@ -6271,11 +6305,11 @@ function DebugStatsPane(_a) {
6271
6305
  return /*#__PURE__*/reactDom.createPortal(element, portalLocation);
6272
6306
  }
6273
6307
  var DebugStatsPaneDiv = styled__default.default.span(templateObject_1$L || (templateObject_1$L = __makeTemplateObject(["\n font-size: 16px;\n font-family: monospace;\n position: absolute;\n left: 20px;\n bottom: 20px;\n margin-right: 20px;\n padding: 8px;\n color: limegreen;\n background: rgba(0, 0, 0, 0.5);\n z-index: 10002;\n pointer-events: none;\n"], ["\n font-size: 16px;\n font-family: monospace;\n position: absolute;\n left: 20px;\n bottom: 20px;\n margin-right: 20px;\n padding: 8px;\n color: limegreen;\n background: rgba(0, 0, 0, 0.5);\n z-index: 10002;\n pointer-events: none;\n"])));
6274
- var ObjectDetectionDebugOverlayDiv = styled__default.default.div(templateObject_2$D || (templateObject_2$D = __makeTemplateObject(["\n position: absolute;\n z-index: 1001;\n top: 0;\n left: 0;\n width: 100%;\n height: 100%;\n max-width: 100%;\n max-height: 100%;\n overflow: hidden;\n pointer-events: none;\n ", "\n transform-style: preserve-3d;\n"], ["\n position: absolute;\n z-index: 1001;\n top: 0;\n left: 0;\n width: 100%;\n height: 100%;\n max-width: 100%;\n max-height: 100%;\n overflow: hidden;\n pointer-events: none;\n ", "\n transform-style: preserve-3d;\n"])), function (_a) {
6308
+ var ObjectDetectionDebugOverlayDiv = styled__default.default.div(templateObject_2$E || (templateObject_2$E = __makeTemplateObject(["\n position: absolute;\n z-index: 1001;\n top: 0;\n left: 0;\n width: 100%;\n height: 100%;\n max-width: 100%;\n max-height: 100%;\n overflow: hidden;\n pointer-events: none;\n ", "\n transform-style: preserve-3d;\n"], ["\n position: absolute;\n z-index: 1001;\n top: 0;\n left: 0;\n width: 100%;\n height: 100%;\n max-width: 100%;\n max-height: 100%;\n overflow: hidden;\n pointer-events: none;\n ", "\n transform-style: preserve-3d;\n"])), function (_a) {
6275
6309
  var $flipX = _a.$flipX;
6276
6310
  return $flipX ? 'transform: scaleX(-1);' : '';
6277
6311
  });
6278
- var ObjectDetectionDebugBox = styled__default.default.div(templateObject_3$r || (templateObject_3$r = __makeTemplateObject(["\n font: 10px monospace;\n position: absolute;\n border: 3px solid ", ";\n color: ", ";\n ", "\n transform-style: preserve-3d;\n"], ["\n font: 10px monospace;\n position: absolute;\n border: 3px solid ", ";\n color: ", ";\n ", "\n transform-style: preserve-3d;\n"])), function (_a) {
6312
+ var ObjectDetectionDebugBox = styled__default.default.div(templateObject_3$s || (templateObject_3$s = __makeTemplateObject(["\n font: 10px monospace;\n position: absolute;\n border: 3px solid ", ";\n color: ", ";\n ", "\n transform-style: preserve-3d;\n"], ["\n font: 10px monospace;\n position: absolute;\n border: 3px solid ", ";\n color: ", ";\n ", "\n transform-style: preserve-3d;\n"])), function (_a) {
6279
6313
  var $color = _a.$color;
6280
6314
  return $color !== null && $color !== void 0 ? $color : 'green';
6281
6315
  }, function (_a) {
@@ -6482,7 +6516,7 @@ function SelfieCaptureFaceKeypoint(_a) {
6482
6516
  }
6483
6517
  });
6484
6518
  }
6485
- var templateObject_1$L, templateObject_2$D, templateObject_3$r, templateObject_4$l;
6519
+ var templateObject_1$L, templateObject_2$E, templateObject_3$s, templateObject_4$l;
6486
6520
 
6487
6521
  function OverrideWrongDocumentTypeGuidanceDialog(_a) {
6488
6522
  var _b = _a.classNames,
@@ -6522,11 +6556,11 @@ var Container$7 = styled__default.default.div(templateObject_1$K || (templateObj
6522
6556
  var _a, _b, _c;
6523
6557
  return (_c = (_b = (_a = props.theme.idCapture) === null || _a === void 0 ? void 0 : _a.overrideWrongDocumentTypeGuidance) === null || _b === void 0 ? void 0 : _b.textColor) !== null && _c !== void 0 ? _c : 'black';
6524
6558
  });
6525
- var InnerContainer = styled__default.default.div(templateObject_2$C || (templateObject_2$C = __makeTemplateObject(["\n display: flex;\n flex-direction: row;\n padding: 16px 24px;\n margin: auto 0;\n width: 100%;\n"], ["\n display: flex;\n flex-direction: row;\n padding: 16px 24px;\n margin: auto 0;\n width: 100%;\n"])));
6526
- var Message = styled__default.default.span(templateObject_3$q || (templateObject_3$q = __makeTemplateObject(["\n display: block;\n margin: auto 12px auto 0;\n"], ["\n display: block;\n margin: auto 12px auto 0;\n"])));
6559
+ var InnerContainer = styled__default.default.div(templateObject_2$D || (templateObject_2$D = __makeTemplateObject(["\n display: flex;\n flex-direction: row;\n padding: 16px 24px;\n margin: auto 0;\n width: 100%;\n"], ["\n display: flex;\n flex-direction: row;\n padding: 16px 24px;\n margin: auto 0;\n width: 100%;\n"])));
6560
+ var Message = styled__default.default.span(templateObject_3$r || (templateObject_3$r = __makeTemplateObject(["\n display: block;\n margin: auto 12px auto 0;\n"], ["\n display: block;\n margin: auto 12px auto 0;\n"])));
6527
6561
  var ButtonContainer = styled__default.default.div(templateObject_4$k || (templateObject_4$k = __makeTemplateObject(["\n display: flex;\n margin-left: auto;\n"], ["\n display: flex;\n margin-left: auto;\n"])));
6528
6562
  var Button$1 = styled__default.default(LoaderButton)(templateObject_5$d || (templateObject_5$d = __makeTemplateObject(["\n white-space: nowrap;\n margin: auto;\n"], ["\n white-space: nowrap;\n margin: auto;\n"])));
6529
- var templateObject_1$K, templateObject_2$C, templateObject_3$q, templateObject_4$k, templateObject_5$d;
6563
+ var templateObject_1$K, templateObject_2$D, templateObject_3$r, templateObject_4$k, templateObject_5$d;
6530
6564
 
6531
6565
  // This is a simplified version of https://github.com/ZeeCoder/use-resize-observer.
6532
6566
  // We have removed all options and made it compliant with React Compiler/React 19.
@@ -6840,12 +6874,12 @@ var CameraAccessDeniedOverlay = function CameraAccessDeniedOverlay(_a) {
6840
6874
  }, verbiage.retryBtnText)));
6841
6875
  };
6842
6876
  var StyledOverlayInner$3 = styled__default.default(OverlayInner$2)(templateObject_1$J || (templateObject_1$J = __makeTemplateObject(["\n max-width: 500px;\n height: auto;\n margin: auto;\n"], ["\n max-width: 500px;\n height: auto;\n margin: auto;\n"])));
6843
- var StyledOverlayImageContainer$1 = styled__default.default(OverlayImageContainer)(templateObject_2$B || (templateObject_2$B = __makeTemplateObject(["\n flex-grow: 0;\n"], ["\n flex-grow: 0;\n"])));
6844
- var Description$4 = styled__default.default.p(templateObject_3$p || (templateObject_3$p = __makeTemplateObject(["\n line-height: 1.5;\n margin-bottom: 50px;\n"], ["\n line-height: 1.5;\n margin-bottom: 50px;\n"])));
6877
+ var StyledOverlayImageContainer$1 = styled__default.default(OverlayImageContainer)(templateObject_2$C || (templateObject_2$C = __makeTemplateObject(["\n flex-grow: 0;\n"], ["\n flex-grow: 0;\n"])));
6878
+ var Description$4 = styled__default.default.p(templateObject_3$q || (templateObject_3$q = __makeTemplateObject(["\n line-height: 1.5;\n margin-bottom: 50px;\n"], ["\n line-height: 1.5;\n margin-bottom: 50px;\n"])));
6845
6879
  var RetryButton$1 = styled__default.default(LoaderButton)(templateObject_4$j || (templateObject_4$j = __makeTemplateObject(["\n width: 200px;\n margin: 0 auto;\n"], ["\n width: 200px;\n margin: 0 auto;\n"])));
6846
- var templateObject_1$J, templateObject_2$B, templateObject_3$p, templateObject_4$j;
6880
+ var templateObject_1$J, templateObject_2$C, templateObject_3$q, templateObject_4$j;
6847
6881
 
6848
- var ExitCaptureStyledButton = styled__default.default.button(templateObject_1$I || (templateObject_1$I = __makeTemplateObject(["\n position: absolute;\n top: 12px;\n right: 12px;\n font-size: 20px;\n width: 32px;\n height: 32px;\n font-family: monospace;\n z-index: 1002;\n border: none;\n border-radius: 4px;\n background: #ccc;\n cursor: pointer;\n padding: 8px;\n box-sizing: border-box;\n display: flex;\n\n &:hover {\n background: #ddd;\n }\n\n & > svg {\n margin: 0;\n padding: 0;\n box-sizing: border-box;\n }\n"], ["\n position: absolute;\n top: 12px;\n right: 12px;\n font-size: 20px;\n width: 32px;\n height: 32px;\n font-family: monospace;\n z-index: 1002;\n border: none;\n border-radius: 4px;\n background: #ccc;\n cursor: pointer;\n padding: 8px;\n box-sizing: border-box;\n display: flex;\n\n &:hover {\n background: #ddd;\n }\n\n & > svg {\n margin: 0;\n padding: 0;\n box-sizing: border-box;\n }\n"])));
6882
+ var ExitCaptureStyledButton = styled__default.default.button(templateObject_1$I || (templateObject_1$I = __makeTemplateObject(["\n position: absolute;\n top: 12px;\n right: 12px;\n font-size: 20px;\n width: 32px;\n height: 32px;\n font-family: monospace;\n z-index: 10002;\n border: none;\n border-radius: 4px;\n background: var(--idm-color-secondary-200);\n cursor: pointer;\n padding: 8px;\n box-sizing: border-box;\n display: flex;\n\n &:hover {\n background: #ddd;\n }\n\n & > svg {\n margin: 0;\n padding: 0;\n box-sizing: border-box;\n }\n"], ["\n position: absolute;\n top: 12px;\n right: 12px;\n font-size: 20px;\n width: 32px;\n height: 32px;\n font-family: monospace;\n z-index: 10002;\n border: none;\n border-radius: 4px;\n background: var(--idm-color-secondary-200);\n cursor: pointer;\n padding: 8px;\n box-sizing: border-box;\n display: flex;\n\n &:hover {\n background: #ddd;\n }\n\n & > svg {\n margin: 0;\n padding: 0;\n box-sizing: border-box;\n }\n"])));
6849
6883
  var ExitCaptureButton = function ExitCaptureButton(_a) {
6850
6884
  var onClick = _a.onClick,
6851
6885
  className = _a.className;
@@ -7365,20 +7399,20 @@ function IdCaptureLoadingGraphicMobile(_a) {
7365
7399
  }))));
7366
7400
  }
7367
7401
  var LoadingGraphicWrapper = styled__default.default.div(templateObject_1$H || (templateObject_1$H = __makeTemplateObject(["\n display: flex;\n width: 100%;\n height: 100%;\n"], ["\n display: flex;\n width: 100%;\n height: 100%;\n"])));
7368
- var LoadingGraphicSvg = styled__default.default.svg(templateObject_2$A || (templateObject_2$A = __makeTemplateObject(["\n margin: auto;\n transform: scale(\n ", "\n );\n transform-style: preserve-3d;\n transition:\n transform 0.2s linear,\n border-width 0.2s linear;\n border: ", "px solid\n ", ";\n max-height: 80%;\n max-width: 80%;\n"], ["\n margin: auto;\n transform: scale(\n ", "\n );\n transform-style: preserve-3d;\n transition:\n transform 0.2s linear,\n border-width 0.2s linear;\n border: ", "px solid\n ", ";\n max-height: 80%;\n max-width: 80%;\n"])), function (props) {
7402
+ var LoadingGraphicSvg = styled__default.default.svg(templateObject_2$B || (templateObject_2$B = __makeTemplateObject(["\n margin: auto;\n transform: scale(\n ", "\n );\n transform-style: preserve-3d;\n transition:\n transform 0.2s linear,\n border-width 0.2s linear;\n border: ", "px solid\n ", ";\n max-height: 80%;\n max-width: 80%;\n"], ["\n margin: auto;\n transform: scale(\n ", "\n );\n transform-style: preserve-3d;\n transition:\n transform 0.2s linear,\n border-width 0.2s linear;\n border: ", "px solid\n ", ";\n max-height: 80%;\n max-width: 80%;\n"])), function (props) {
7369
7403
  return props.$frame > 1 ? 1 : props.$frame === 1 ? 1.25 : 0.75;
7370
7404
  }, function (props) {
7371
7405
  return props.$frame >= 5 ? 10 : 0;
7372
7406
  }, function (props) {
7373
7407
  return props.$borderColor;
7374
7408
  });
7375
- var LoadingGraphicCardGroup = styled__default.default.g(templateObject_3$o || (templateObject_3$o = __makeTemplateObject(["\n transform: translate(", ", 0);\n transform-style: preserve-3d;\n transition: transform 0.3s linear;\n"], ["\n transform: translate(", ", 0);\n transform-style: preserve-3d;\n transition: transform 0.3s linear;\n"])), function (props) {
7409
+ var LoadingGraphicCardGroup = styled__default.default.g(templateObject_3$p || (templateObject_3$p = __makeTemplateObject(["\n transform: translate(", ", 0);\n transform-style: preserve-3d;\n transition: transform 0.3s linear;\n"], ["\n transform: translate(", ", 0);\n transform-style: preserve-3d;\n transition: transform 0.3s linear;\n"])), function (props) {
7376
7410
  return props.$offScreen ? '-500px' : '0';
7377
7411
  });
7378
7412
  var LoadingGraphicPhoneGroup = styled__default.default.g(templateObject_4$i || (templateObject_4$i = __makeTemplateObject(["\n transform: translate(", ", 0);\n transform-style: preserve-3d;\n transition: transform 0.3s linear;\n"], ["\n transform: translate(", ", 0);\n transform-style: preserve-3d;\n transition: transform 0.3s linear;\n"])), function (props) {
7379
7413
  return props.$offScreen ? '40px' : '0';
7380
7414
  });
7381
- var templateObject_1$H, templateObject_2$A, templateObject_3$o, templateObject_4$i;
7415
+ var templateObject_1$H, templateObject_2$B, templateObject_3$p, templateObject_4$i;
7382
7416
 
7383
7417
  function LoadingListItemIndicator(_a) {
7384
7418
  var _b = _a.state,
@@ -7433,9 +7467,11 @@ function useLoadProgressHooks(_a) {
7433
7467
  var ready = _a.ready,
7434
7468
  modelLoadState = _a.modelLoadState,
7435
7469
  modelLoadProgress = _a.modelLoadProgress,
7470
+ modelError = _a.modelError,
7436
7471
  onLoadingStarted = _a.onLoadingStarted,
7437
7472
  onLoadingProgress = _a.onLoadingProgress,
7438
- onLoadingCompleted = _a.onLoadingCompleted;
7473
+ onLoadingCompleted = _a.onLoadingCompleted,
7474
+ onLoadingFailed = _a.onLoadingFailed;
7439
7475
  var onLoadingStartedRef = React.useRef(onLoadingStarted);
7440
7476
  React.useEffect(function () {
7441
7477
  onLoadingStartedRef.current = onLoadingStarted;
@@ -7448,6 +7484,10 @@ function useLoadProgressHooks(_a) {
7448
7484
  React.useEffect(function () {
7449
7485
  onLoadingCompletedRef.current = onLoadingCompleted;
7450
7486
  }, [onLoadingCompleted]);
7487
+ var onLoadingFailedRef = React.useRef(onLoadingFailed);
7488
+ React.useEffect(function () {
7489
+ onLoadingFailedRef.current = onLoadingFailed;
7490
+ }, [onLoadingFailed]);
7451
7491
  var loadingStarted = modelLoadState !== 'not-started';
7452
7492
  React.useEffect(function () {
7453
7493
  var _a;
@@ -7463,6 +7503,12 @@ function useLoadProgressHooks(_a) {
7463
7503
  var _a;
7464
7504
  if (ready) (_a = onLoadingCompletedRef.current) === null || _a === void 0 ? void 0 : _a.call(onLoadingCompletedRef);
7465
7505
  }, [ready]);
7506
+ React.useEffect(function () {
7507
+ var _a;
7508
+ if (modelLoadState === 'error') {
7509
+ (_a = onLoadingFailedRef.current) === null || _a === void 0 ? void 0 : _a.call(onLoadingFailedRef, modelError !== null && modelError !== void 0 ? modelError : undefined);
7510
+ }
7511
+ }, [modelLoadState, modelError]);
7466
7512
  }
7467
7513
 
7468
7514
  var legacyInstructionImageUrl$1 = "".concat(DEFAULT_CDN_URL, "/WebSDK-Instruction-DL-Capture-3-Portrait.png");
@@ -7471,6 +7517,7 @@ var IdCaptureLoadingOverlayDefault = function IdCaptureLoadingOverlayDefault(_a)
7471
7517
  var onLoadingStarted = _a.onLoadingStarted,
7472
7518
  onLoadingProgress = _a.onLoadingProgress,
7473
7519
  onLoadingCompleted = _a.onLoadingCompleted,
7520
+ onLoadingFailed = _a.onLoadingFailed,
7474
7521
  onDismissed = _a.onDismissed,
7475
7522
  onUserCancel = _a.onUserCancel,
7476
7523
  instructions = _a.instructions,
@@ -7491,7 +7538,8 @@ var IdCaptureLoadingOverlayDefault = function IdCaptureLoadingOverlayDefault(_a)
7491
7538
  modelsReady = _o.ready,
7492
7539
  modelLoadState = _o.modelLoadState,
7493
7540
  modelDownloadProgress = _o.modelDownloadProgress,
7494
- modelWarmingStartedAt = _o.modelWarmingStartedAt;
7541
+ modelWarmingStartedAt = _o.modelWarmingStartedAt,
7542
+ modelError = _o.modelError;
7495
7543
  var _p = useCameraStore(),
7496
7544
  cameraReady = _p.cameraReady,
7497
7545
  cameraAccessDenied = _p.cameraAccessDenied,
@@ -7535,9 +7583,11 @@ var IdCaptureLoadingOverlayDefault = function IdCaptureLoadingOverlayDefault(_a)
7535
7583
  ready: ready,
7536
7584
  modelLoadState: modelLoadState,
7537
7585
  modelLoadProgress: modelLoadProgress,
7586
+ modelError: modelError,
7538
7587
  onLoadingStarted: onLoadingStarted,
7539
7588
  onLoadingProgress: onLoadingProgress,
7540
- onLoadingCompleted: onLoadingCompleted
7589
+ onLoadingCompleted: onLoadingCompleted,
7590
+ onLoadingFailed: onLoadingFailed
7541
7591
  });
7542
7592
  if (dismissed) return /*#__PURE__*/React__namespace.default.createElement(React__namespace.default.Fragment, null);
7543
7593
  if (cameraAccessDenied) {
@@ -7638,8 +7688,8 @@ var OverlayInner$1 = styled__default.default(LoadingOverlayInner)(templateObject
7638
7688
  var _a, _b, _c, _d;
7639
7689
  return (_d = (_c = (_b = (_a = props.theme) === null || _a === void 0 ? void 0 : _a.idCapture) === null || _b === void 0 ? void 0 : _b.loadingOverlay) === null || _c === void 0 ? void 0 : _c.textColor) !== null && _d !== void 0 ? _d : 'black';
7640
7690
  });
7641
- var ContinuityCameraCheckboxContainer$1 = styled__default.default.div(templateObject_2$z || (templateObject_2$z = __makeTemplateObject(["\n position: absolute;\n bottom: 120px;\n width: 100%;\n display: flex;\n"], ["\n position: absolute;\n bottom: 120px;\n width: 100%;\n display: flex;\n"])));
7642
- var ContinuityCameraCheckboxInner = styled__default.default(GuidanceMessage)(templateObject_3$n || (templateObject_3$n = __makeTemplateObject(["\n display: flex;\n gap: 8px;\n align-items: center;\n padding: 12px 18px;\n margin: 0 auto;\n font-size: 14px;\n font-weight: bold;\n background: white;\n box-shadow:\n 0 1px 3px 0 rgb(0 0 0 / 0.1),\n 0 1px 2px -1px rgb(0 0 0 / 0.1);\n"], ["\n display: flex;\n gap: 8px;\n align-items: center;\n padding: 12px 18px;\n margin: 0 auto;\n font-size: 14px;\n font-weight: bold;\n background: white;\n box-shadow:\n 0 1px 3px 0 rgb(0 0 0 / 0.1),\n 0 1px 2px -1px rgb(0 0 0 / 0.1);\n"])));
7691
+ var ContinuityCameraCheckboxContainer$1 = styled__default.default.div(templateObject_2$A || (templateObject_2$A = __makeTemplateObject(["\n position: absolute;\n bottom: 120px;\n width: 100%;\n display: flex;\n"], ["\n position: absolute;\n bottom: 120px;\n width: 100%;\n display: flex;\n"])));
7692
+ var ContinuityCameraCheckboxInner = styled__default.default(GuidanceMessage)(templateObject_3$o || (templateObject_3$o = __makeTemplateObject(["\n display: flex;\n gap: 8px;\n align-items: center;\n padding: 12px 18px;\n margin: 0 auto;\n font-size: 14px;\n font-weight: bold;\n background: white;\n box-shadow:\n 0 1px 3px 0 rgb(0 0 0 / 0.1),\n 0 1px 2px -1px rgb(0 0 0 / 0.1);\n"], ["\n display: flex;\n gap: 8px;\n align-items: center;\n padding: 12px 18px;\n margin: 0 auto;\n font-size: 14px;\n font-weight: bold;\n background: white;\n box-shadow:\n 0 1px 3px 0 rgb(0 0 0 / 0.1),\n 0 1px 2px -1px rgb(0 0 0 / 0.1);\n"])));
7643
7693
  var ContinuityCameraCheckbox$1 = styled__default.default.input(templateObject_4$h || (templateObject_4$h = __makeTemplateObject(["\n margin: 0;\n"], ["\n margin: 0;\n"])));
7644
7694
  var ButtonsRow$1 = styled__default.default(LoadingOverlayButtonsRow)(templateObject_5$c || (templateObject_5$c = __makeTemplateObject(["\n color: ", ";\n ", "\n"], ["\n color: ", ";\n ", "\n"])), function (props) {
7645
7695
  var _a, _b, _c, _d;
@@ -7678,10 +7728,10 @@ var ContinueButton$1 = styled__default.default(LoaderButton)(templateObject_8$3
7678
7728
  var _a, _b, _c, _d;
7679
7729
  return (_d = (_c = (_b = (_a = props.theme) === null || _a === void 0 ? void 0 : _a.idCapture) === null || _b === void 0 ? void 0 : _b.loadingOverlay) === null || _c === void 0 ? void 0 : _c.continueBtnDisabledBorder) !== null && _d !== void 0 ? _d : 'none';
7680
7730
  });
7681
- var templateObject_1$G, templateObject_2$z, templateObject_3$n, templateObject_4$h, templateObject_5$c, templateObject_6$8, templateObject_7$4, templateObject_8$3;
7731
+ var templateObject_1$G, templateObject_2$A, templateObject_3$o, templateObject_4$h, templateObject_5$c, templateObject_6$8, templateObject_7$4, templateObject_8$3;
7682
7732
 
7683
7733
  var ContinuityCameraCheckboxContainer = styled__default.default.div(templateObject_1$F || (templateObject_1$F = __makeTemplateObject(["\n margin-top: 15px;\n margin-bottom: 15px;\n"], ["\n margin-top: 15px;\n margin-bottom: 15px;\n"])));
7684
- var ContinuityCameraCheckbox = styled__default.default.input(templateObject_2$y || (templateObject_2$y = __makeTemplateObject(["\n margin-right: 8px;\n"], ["\n margin-right: 8px;\n"])));
7734
+ var ContinuityCameraCheckbox = styled__default.default.input(templateObject_2$z || (templateObject_2$z = __makeTemplateObject(["\n margin-right: 8px;\n"], ["\n margin-right: 8px;\n"])));
7685
7735
  var IdCaptureLoadingOverlayLegacy = function IdCaptureLoadingOverlayLegacy(_a) {
7686
7736
  var _b, _c, _d, _e;
7687
7737
  var onDismissed = _a.onDismissed,
@@ -7802,7 +7852,7 @@ var IdCaptureLoadingOverlayLegacy = function IdCaptureLoadingOverlayLegacy(_a) {
7802
7852
  }
7803
7853
  }, ready ? verbiage.continueText : modelsReady ? verbiage.cameraInitializingText : modelDownloadProgress >= 100 ? verbiage.modelsWarmingUpText : "".concat(verbiage.downloadingText, " (").concat(modelDownloadProgress, "%)"))));
7804
7854
  };
7805
- var templateObject_1$F, templateObject_2$y;
7855
+ var templateObject_1$F, templateObject_2$z;
7806
7856
 
7807
7857
  var components$1 = {
7808
7858
  "default": IdCaptureLoadingOverlayDefault,
@@ -7861,8 +7911,8 @@ var CapturedDocumentImg = function CapturedDocumentImg(_a) {
7861
7911
  };
7862
7912
 
7863
7913
  var Card = styled__default.default.div(templateObject_1$E || (templateObject_1$E = __makeTemplateObject(["\n background: white;\n border-radius: 8px;\n padding: 24px;\n box-shadow: 0 0 8px rgba(0, 0, 0, 0.1);\n margin: auto;\n max-width: min(500px, 100% - 48px);\n max-height: 100%;\n overflow: auto;\n box-sizing: border-box;\n"], ["\n background: white;\n border-radius: 8px;\n padding: 24px;\n box-shadow: 0 0 8px rgba(0, 0, 0, 0.1);\n margin: auto;\n max-width: min(500px, 100% - 48px);\n max-height: 100%;\n overflow: auto;\n box-sizing: border-box;\n"])));
7864
- var FlexCard = styled__default.default(Card)(templateObject_2$x || (templateObject_2$x = __makeTemplateObject(["\n display: flex;\n flex-direction: column;\n"], ["\n display: flex;\n flex-direction: column;\n"])));
7865
- var templateObject_1$E, templateObject_2$x;
7914
+ var FlexCard = styled__default.default(Card)(templateObject_2$y || (templateObject_2$y = __makeTemplateObject(["\n display: flex;\n flex-direction: column;\n"], ["\n display: flex;\n flex-direction: column;\n"])));
7915
+ var templateObject_1$E, templateObject_2$y;
7866
7916
 
7867
7917
  var imageDisplayOrder = ['idCardFront', 'idCardBack', 'passport', 'singlePage', 'idFrontIrImage', 'idBackIrImage', 'idFrontUvImage', 'idBackUvImage'];
7868
7918
  var IdCaptureSuccess = function IdCaptureSuccess(_a) {
@@ -7925,12 +7975,12 @@ var IdCaptureSuccess = function IdCaptureSuccess(_a) {
7925
7975
  }, verbiage.retryText)))));
7926
7976
  };
7927
7977
  var Heading$a = styled__default.default.h1(templateObject_1$D || (templateObject_1$D = __makeTemplateObject(["\n font-size: 1.5rem;\n margin-top: 0;\n margin-bottom: 1.5rem;\n"], ["\n font-size: 1.5rem;\n margin-top: 0;\n margin-bottom: 1.5rem;\n"])));
7928
- var ImagesContainer = styled__default.default(OverlayImageContainer)(templateObject_2$w || (templateObject_2$w = __makeTemplateObject(["\n flex-grow: 1;\n overflow-y: auto;\n padding-bottom: 0;\n max-width: 100%;\n"], ["\n flex-grow: 1;\n overflow-y: auto;\n padding-bottom: 0;\n max-width: 100%;\n"])));
7929
- var ImageRow = styled__default.default(OverlayImageRow)(templateObject_3$m || (templateObject_3$m = __makeTemplateObject(["\n max-width: 100%;\n flex-direction: column;\n position: relative;\n width: 100%;\n"], ["\n max-width: 100%;\n flex-direction: column;\n position: relative;\n width: 100%;\n"])));
7978
+ var ImagesContainer = styled__default.default(OverlayImageContainer)(templateObject_2$x || (templateObject_2$x = __makeTemplateObject(["\n flex-grow: 1;\n overflow-y: auto;\n padding-bottom: 0;\n max-width: 100%;\n"], ["\n flex-grow: 1;\n overflow-y: auto;\n padding-bottom: 0;\n max-width: 100%;\n"])));
7979
+ var ImageRow = styled__default.default(OverlayImageRow)(templateObject_3$n || (templateObject_3$n = __makeTemplateObject(["\n max-width: 100%;\n flex-direction: column;\n position: relative;\n width: 100%;\n"], ["\n max-width: 100%;\n flex-direction: column;\n position: relative;\n width: 100%;\n"])));
7930
7980
  var ImageCol$1 = styled__default.default.div(templateObject_4$g || (templateObject_4$g = __makeTemplateObject(["\n width: 450px;\n max-width: 100%;\n max-height: none !important;\n"], ["\n width: 450px;\n max-width: 100%;\n max-height: none !important;\n"])));
7931
7981
  var StyledImage = styled__default.default(CapturedDocumentImg)(templateObject_5$b || (templateObject_5$b = __makeTemplateObject(["\n width: 100%;\n border-radius: 12px;\n"], ["\n width: 100%;\n border-radius: 12px;\n"])));
7932
7982
  var DebugPre = styled__default.default.pre(templateObject_6$7 || (templateObject_6$7 = __makeTemplateObject(["\n display: block;\n text-align: left;\n width: 100%;\n max-width: 100%;\n overflow-x: auto;\n"], ["\n display: block;\n text-align: left;\n width: 100%;\n max-width: 100%;\n overflow-x: auto;\n"])));
7933
- var templateObject_1$D, templateObject_2$w, templateObject_3$m, templateObject_4$g, templateObject_5$b, templateObject_6$7;
7983
+ var templateObject_1$D, templateObject_2$x, templateObject_3$n, templateObject_4$g, templateObject_5$b, templateObject_6$7;
7934
7984
 
7935
7985
  function useShowSuccessScreen(skipSuccessScreen, successScreenReady, onDoneCallback) {
7936
7986
  var _this = this;
@@ -7987,7 +8037,7 @@ var IdCardGuideImageContainer = styled__default.default(IdCardBorder)(templateOb
7987
8037
  }, function (props) {
7988
8038
  return props.$isMobile ? props.$isLandscape ? 'height: 100%;' : 'width: 80%;' : props.$isLandscape ? 'height: 70%;' : 'width: 82%;';
7989
8039
  });
7990
- var IdCardGuideImage = styled__default.default.img(templateObject_2$v || (templateObject_2$v = __makeTemplateObject(["\n max-height: 100%;\n transform-style: preserve-3d;\n ", "\n ", "\n"], ["\n max-height: 100%;\n transform-style: preserve-3d;\n ", "\n ", "\n"])), function (props) {
8040
+ var IdCardGuideImage = styled__default.default.img(templateObject_2$w || (templateObject_2$w = __makeTemplateObject(["\n max-height: 100%;\n transform-style: preserve-3d;\n ", "\n ", "\n"], ["\n max-height: 100%;\n transform-style: preserve-3d;\n ", "\n ", "\n"])), function (props) {
7991
8041
  return props.$isMirrored ? 'transform: scaleX(-1);' : '';
7992
8042
  }, function (props) {
7993
8043
  return props.$isInvisible ? 'opacity: 0;' : '';
@@ -8137,7 +8187,7 @@ function IdCardBorderSvg(_a) {
8137
8187
  className: isProgressBar ? "idmSdkProgressBorder ".concat(progressPaused ? 'idmSdkProgressPaused' : '') : ''
8138
8188
  }));
8139
8189
  }
8140
- var IdCardBorderContainer = styled__default.default.div(templateObject_3$l || (templateObject_3$l = __makeTemplateObject(["\n align-items: center;\n justify-content: center;\n display: flex;\n position: relative;\n margin: auto;\n\n & .idmSdkWaves {\n position: absolute;\n animation: ", " 2s ease-out infinite;\n transform-style: preserve-3d;\n\n &:nth-child(3) {\n animation-delay: 0.66s;\n }\n\n &:nth-child(4) {\n animation-delay: 1.33s;\n }\n }\n"], ["\n align-items: center;\n justify-content: center;\n display: flex;\n position: relative;\n margin: auto;\n\n & .idmSdkWaves {\n position: absolute;\n animation: ", " 2s ease-out infinite;\n transform-style: preserve-3d;\n\n &:nth-child(3) {\n animation-delay: 0.66s;\n }\n\n &:nth-child(4) {\n animation-delay: 1.33s;\n }\n }\n"])), wavesAnimation);
8190
+ var IdCardBorderContainer = styled__default.default.div(templateObject_3$m || (templateObject_3$m = __makeTemplateObject(["\n align-items: center;\n justify-content: center;\n display: flex;\n position: relative;\n margin: auto;\n\n & .idmSdkWaves {\n position: absolute;\n animation: ", " 2s ease-out infinite;\n transform-style: preserve-3d;\n\n &:nth-child(3) {\n animation-delay: 0.66s;\n }\n\n &:nth-child(4) {\n animation-delay: 1.33s;\n }\n }\n"], ["\n align-items: center;\n justify-content: center;\n display: flex;\n position: relative;\n margin: auto;\n\n & .idmSdkWaves {\n position: absolute;\n animation: ", " 2s ease-out infinite;\n transform-style: preserve-3d;\n\n &:nth-child(3) {\n animation-delay: 0.66s;\n }\n\n &:nth-child(4) {\n animation-delay: 1.33s;\n }\n }\n"])), wavesAnimation);
8141
8191
  var IdCardBorderInner = styled__default.default.div(templateObject_4$f || (templateObject_4$f = __makeTemplateObject(["\n max-height: 100%;\n max-width: 100%;\n flex: 1;\n display: flex;\n align-items: center;\n justify-content: center;\n position: relative;\n"], ["\n max-height: 100%;\n max-width: 100%;\n flex: 1;\n display: flex;\n align-items: center;\n justify-content: center;\n position: relative;\n"])));
8142
8192
  var SvgOverlay = styled__default.default.svg(templateObject_5$a || (templateObject_5$a = __makeTemplateObject(["\n position: absolute;\n top: 0;\n left: 0;\n width: 100%;\n height: 100%;\n pointer-events: none;\n"], ["\n position: absolute;\n top: 0;\n left: 0;\n width: 100%;\n height: 100%;\n pointer-events: none;\n"])));
8143
8193
  var IdCardBorderRect = styled__default.default.rect(templateObject_6$6 || (templateObject_6$6 = __makeTemplateObject(["\n &.idmSdkProgressBorder {\n animation: ", " ", "\n ", ";\n }\n\n &.idmSdkProgressPaused {\n animation-play-state: paused;\n }\n"], ["\n &.idmSdkProgressBorder {\n animation: ", " ", "\n ", ";\n }\n\n &.idmSdkProgressPaused {\n animation-play-state: paused;\n }\n"])), progressBorderAnimation, function (props) {
@@ -8147,7 +8197,7 @@ var IdCardBorderRect = styled__default.default.rect(templateObject_6$6 || (templ
8147
8197
  var _a;
8148
8198
  return (_a = props.$fillMode) !== null && _a !== void 0 ? _a : 'forwards';
8149
8199
  });
8150
- var templateObject_1$C, templateObject_2$v, templateObject_3$l, templateObject_4$f, templateObject_5$a, templateObject_6$6;
8200
+ var templateObject_1$C, templateObject_2$w, templateObject_3$m, templateObject_4$f, templateObject_5$a, templateObject_6$6;
8151
8201
 
8152
8202
  var defaultIdCaptureGuideImages = {
8153
8203
  portrait: {
@@ -8339,12 +8389,12 @@ var IdVideoCaptureFlipIdPrompt = function IdVideoCaptureFlipIdPrompt(_a) {
8339
8389
  var Wrapper$1 = styled__default.default.div(templateObject_1$B || (templateObject_1$B = __makeTemplateObject(["\n display: flex;\n align-items: center;\n justify-content: center;\n ", "\n\n position: absolute;\n top: 50%;\n left: 50%;\n transform: translate(-50%, -50%);\n"], ["\n display: flex;\n align-items: center;\n justify-content: center;\n ", "\n\n position: absolute;\n top: 50%;\n left: 50%;\n transform: translate(-50%, -50%);\n"])), function (props) {
8340
8390
  return props.$isLandscape ? 'height: 100%;' : 'height: 100%;';
8341
8391
  });
8342
- var FlipImageContainer = styled__default.default(IdCardGuideImageContainer)(templateObject_2$u || (templateObject_2$u = __makeTemplateObject(["\n backface-visibility: hidden;\n transition: transform ", "s;\n transform: ", ";\n transform-style: preserve-3d;\n position: absolute;\n display: block;\n top: 0;\n height: 100%; // todo: branch between desktop and mobile\n"], ["\n backface-visibility: hidden;\n transition: transform ", "s;\n transform: ", ";\n transform-style: preserve-3d;\n position: absolute;\n display: block;\n top: 0;\n height: 100%; // todo: branch between desktop and mobile\n"])), function (props) {
8392
+ var FlipImageContainer = styled__default.default(IdCardGuideImageContainer)(templateObject_2$v || (templateObject_2$v = __makeTemplateObject(["\n backface-visibility: hidden;\n transition: transform ", "s;\n transform: ", ";\n transform-style: preserve-3d;\n position: absolute;\n display: block;\n top: 0;\n height: 100%; // todo: branch between desktop and mobile\n"], ["\n backface-visibility: hidden;\n transition: transform ", "s;\n transform: ", ";\n transform-style: preserve-3d;\n position: absolute;\n display: block;\n top: 0;\n height: 100%; // todo: branch between desktop and mobile\n"])), function (props) {
8343
8393
  return props.$transitionTime;
8344
8394
  }, function (props) {
8345
8395
  return props.$transforms;
8346
8396
  });
8347
- var templateObject_1$B, templateObject_2$u;
8397
+ var templateObject_1$B, templateObject_2$v;
8348
8398
 
8349
8399
  var GuideOrientationContext = /*#__PURE__*/React.createContext({
8350
8400
  orientation: 'landscape',
@@ -8633,8 +8683,8 @@ var regionClsx = function regionClsx(classNames, which) {
8633
8683
  }).join(' ');
8634
8684
  };
8635
8685
  var StyledPageContainer = styled__default.default.div(templateObject_1$z || (templateObject_1$z = __makeTemplateObject(["\n position: relative;\n width: 100%;\n height: 100%;\n z-index: 1000;\n overflow: hidden;\n"], ["\n position: relative;\n width: 100%;\n height: 100%;\n z-index: 1000;\n overflow: hidden;\n"])));
8636
- var GuidesContainer = styled__default.default.div(templateObject_2$t || (templateObject_2$t = __makeTemplateObject(["\n display: flex;\n flex-flow: column nowrap;\n width: 100%;\n height: 100%;\n"], ["\n display: flex;\n flex-flow: column nowrap;\n width: 100%;\n height: 100%;\n"])));
8637
- var GuideCenterRow = styled__default.default.div(templateObject_3$k || (templateObject_3$k = __makeTemplateObject(["\n position: relative;\n display: flex;\n flex-flow: row nowrap;\n align-items: center;\n justify-items: center;\n box-sizing: border-box;\n max-width: 100%;\n max-height: 100%;\n min-height: 0;\n flex: 1;\n"], ["\n position: relative;\n display: flex;\n flex-flow: row nowrap;\n align-items: center;\n justify-items: center;\n box-sizing: border-box;\n max-width: 100%;\n max-height: 100%;\n min-height: 0;\n flex: 1;\n"])));
8686
+ var GuidesContainer = styled__default.default.div(templateObject_2$u || (templateObject_2$u = __makeTemplateObject(["\n display: flex;\n flex-flow: column nowrap;\n width: 100%;\n height: 100%;\n"], ["\n display: flex;\n flex-flow: column nowrap;\n width: 100%;\n height: 100%;\n"])));
8687
+ var GuideCenterRow = styled__default.default.div(templateObject_3$l || (templateObject_3$l = __makeTemplateObject(["\n position: relative;\n display: flex;\n flex-flow: row nowrap;\n align-items: center;\n justify-items: center;\n box-sizing: border-box;\n max-width: 100%;\n max-height: 100%;\n min-height: 0;\n flex: 1;\n"], ["\n position: relative;\n display: flex;\n flex-flow: row nowrap;\n align-items: center;\n justify-items: center;\n box-sizing: border-box;\n max-width: 100%;\n max-height: 100%;\n min-height: 0;\n flex: 1;\n"])));
8638
8688
  var GuideRegion = styled__default.default.div(templateObject_4$e || (templateObject_4$e = __makeTemplateObject(["\n display: flex;\n flex-direction: column;\n justify-content: end;\n width: 100%;\n position: relative;\n z-index: 1000;\n background: ", ";\n color: ", ";\n text-align: center;\n ", "\n ", "\n"], ["\n display: flex;\n flex-direction: column;\n justify-content: end;\n width: 100%;\n position: relative;\n z-index: 1000;\n background: ", ";\n color: ", ";\n text-align: center;\n ", "\n ", "\n"])), function (props) {
8639
8689
  var _a, _b, _c, _d, _e;
8640
8690
  return (_e = (_a = props.$maskColor) !== null && _a !== void 0 ? _a : (_d = (_c = (_b = props.theme) === null || _b === void 0 ? void 0 : _b.idCapture) === null || _c === void 0 ? void 0 : _c.guideOverlay) === null || _d === void 0 ? void 0 : _d.backgroundColor) !== null && _e !== void 0 ? _e : 'rgba(0, 0, 0, 0.5)';
@@ -8662,7 +8712,7 @@ var GuideText = styled__default.default.span(templateObject_8$2 || (templateObje
8662
8712
  var GuideCenterInner = styled__default.default.div(templateObject_9$1 || (templateObject_9$1 = __makeTemplateObject(["\n position: relative;\n top: 0;\n margin: auto;\n ", "\n max-height: 100%;\n max-width: 100%;\n display: flex;\n align-items: center;\n justify-content: center;\n"], ["\n position: relative;\n top: 0;\n margin: auto;\n ", "\n max-height: 100%;\n max-width: 100%;\n display: flex;\n align-items: center;\n justify-content: center;\n"])), function (props) {
8663
8713
  return props.$isLandscape ? 'height: 100%;' : 'width: 90%;';
8664
8714
  });
8665
- var templateObject_1$z, templateObject_2$t, templateObject_3$k, templateObject_4$e, templateObject_5$9, templateObject_6$5, templateObject_7$3, templateObject_8$2, templateObject_9$1;
8715
+ var templateObject_1$z, templateObject_2$u, templateObject_3$l, templateObject_4$e, templateObject_5$9, templateObject_6$5, templateObject_7$3, templateObject_8$2, templateObject_9$1;
8666
8716
 
8667
8717
  var IdCaptureFitGuide = function IdCaptureFitGuide(_a) {
8668
8718
  var _b, _c, _d, _e, _f, _g, _h, _j, _k, _l, _m, _o;
@@ -8806,8 +8856,8 @@ var IdCaptureFitGuide = function IdCaptureFitGuide(_a) {
8806
8856
  var CanvasWrapper$1 = styled__default.default.div(templateObject_1$y || (templateObject_1$y = __makeTemplateObject(["\n position: absolute;\n top: 0;\n left: 0;\n width: 100%;\n height: 100%;\n flex-grow: 1;\n background-clip: padding-box;\n box-shadow: inset 0 0 0 2px ", ";\n z-index: -1;\n"], ["\n position: absolute;\n top: 0;\n left: 0;\n width: 100%;\n height: 100%;\n flex-grow: 1;\n background-clip: padding-box;\n box-shadow: inset 0 0 0 2px ", ";\n z-index: -1;\n"])), function (props) {
8807
8857
  return props.$maskColor;
8808
8858
  });
8809
- var Canvas$1 = styled__default.default.canvas(templateObject_2$s || (templateObject_2$s = __makeTemplateObject(["\n display: block;\n"], ["\n display: block;\n"])));
8810
- var templateObject_1$y, templateObject_2$s;
8859
+ var Canvas$1 = styled__default.default.canvas(templateObject_2$t || (templateObject_2$t = __makeTemplateObject(["\n display: block;\n"], ["\n display: block;\n"])));
8860
+ var templateObject_1$y, templateObject_2$t;
8811
8861
 
8812
8862
  function IdCaptureGuides(_a) {
8813
8863
  var _b = _a.guideType,
@@ -8888,11 +8938,11 @@ var Spinner = styled__default.default.div(templateObject_1$x || (templateObject_
8888
8938
  var $color = _a.$color;
8889
8939
  return $color !== null && $color !== void 0 ? $color : '#888';
8890
8940
  }, dualRingSpinnerAnimation);
8891
- var SpinnerPageContainer = styled__default.default.div(templateObject_2$r || (templateObject_2$r = __makeTemplateObject(["\n display: flex;\n justify-content: center;\n align-items: center;\n width: 100%;\n height: 100%;\n"], ["\n display: flex;\n justify-content: center;\n align-items: center;\n width: 100%;\n height: 100%;\n"])));
8941
+ var SpinnerPageContainer = styled__default.default.div(templateObject_2$s || (templateObject_2$s = __makeTemplateObject(["\n display: flex;\n justify-content: center;\n align-items: center;\n width: 100%;\n height: 100%;\n"], ["\n display: flex;\n justify-content: center;\n align-items: center;\n width: 100%;\n height: 100%;\n"])));
8892
8942
  function SpinnerPage() {
8893
8943
  return /*#__PURE__*/React__namespace.default.createElement(SpinnerPageContainer, null, /*#__PURE__*/React__namespace.default.createElement(Spinner, null));
8894
8944
  }
8895
- var templateObject_1$x, templateObject_2$r;
8945
+ var templateObject_1$x, templateObject_2$s;
8896
8946
 
8897
8947
  var IdCaptureImagePreview = function IdCaptureImagePreview(_a) {
8898
8948
  var _b = _a.classNames,
@@ -8980,10 +9030,10 @@ var SelfieProgressPreview = function SelfieProgressPreview(_a) {
8980
9030
  })));
8981
9031
  };
8982
9032
  var StyledSpinner = styled__default.default(Spinner)(templateObject_1$w || (templateObject_1$w = __makeTemplateObject(["\n position: relative;\n top: 4px;\n left: -3px;\n margin: 0 3px 0 -12px;\n"], ["\n position: relative;\n top: 4px;\n left: -3px;\n margin: 0 3px 0 -12px;\n"])));
8983
- var ImagePreviewWrapper = styled__default.default.div(templateObject_2$q || (templateObject_2$q = __makeTemplateObject(["\n position: absolute;\n display: flex;\n flex-direction: column;\n height: 33%;\n bottom: 12px;\n right: 12px;\n"], ["\n position: absolute;\n display: flex;\n flex-direction: column;\n height: 33%;\n bottom: 12px;\n right: 12px;\n"])));
8984
- var ImagePreviewText = styled__default.default.div(templateObject_3$j || (templateObject_3$j = __makeTemplateObject(["\n display: block;\n position: absolute;\n top: -32px;\n font:\n 14px -apple-system,\n BlinkMacSystemFont,\n 'Segoe UI',\n Roboto,\n Helvetica,\n Arial,\n sans-serif,\n 'Apple Color Emoji',\n 'Segoe UI Emoji',\n 'Segoe UI Symbol';\n color: white;\n text-align: center;\n margin: 0 auto;\n width: 100%;\n"], ["\n display: block;\n position: absolute;\n top: -32px;\n font:\n 14px -apple-system,\n BlinkMacSystemFont,\n 'Segoe UI',\n Roboto,\n Helvetica,\n Arial,\n sans-serif,\n 'Apple Color Emoji',\n 'Segoe UI Emoji',\n 'Segoe UI Symbol';\n color: white;\n text-align: center;\n margin: 0 auto;\n width: 100%;\n"])));
9033
+ var ImagePreviewWrapper = styled__default.default.div(templateObject_2$r || (templateObject_2$r = __makeTemplateObject(["\n position: absolute;\n display: flex;\n flex-direction: column;\n height: 33%;\n bottom: 12px;\n right: 12px;\n"], ["\n position: absolute;\n display: flex;\n flex-direction: column;\n height: 33%;\n bottom: 12px;\n right: 12px;\n"])));
9034
+ var ImagePreviewText = styled__default.default.div(templateObject_3$k || (templateObject_3$k = __makeTemplateObject(["\n display: block;\n position: absolute;\n top: -32px;\n font:\n 14px -apple-system,\n BlinkMacSystemFont,\n 'Segoe UI',\n Roboto,\n Helvetica,\n Arial,\n sans-serif,\n 'Apple Color Emoji',\n 'Segoe UI Emoji',\n 'Segoe UI Symbol';\n color: white;\n text-align: center;\n margin: 0 auto;\n width: 100%;\n"], ["\n display: block;\n position: absolute;\n top: -32px;\n font:\n 14px -apple-system,\n BlinkMacSystemFont,\n 'Segoe UI',\n Roboto,\n Helvetica,\n Arial,\n sans-serif,\n 'Apple Color Emoji',\n 'Segoe UI Emoji',\n 'Segoe UI Symbol';\n color: white;\n text-align: center;\n margin: 0 auto;\n width: 100%;\n"])));
8985
9035
  var ImagePreviewImageWrapper = styled__default.default.div(templateObject_4$d || (templateObject_4$d = __makeTemplateObject(["\n position: relative;\n height: calc(100% - 8px);\n padding: 4px;\n border-radius: 4px;\n background: white;\n\n & > img {\n border-radius: 4px;\n width: auto;\n max-height: 100%;\n }\n"], ["\n position: relative;\n height: calc(100% - 8px);\n padding: 4px;\n border-radius: 4px;\n background: white;\n\n & > img {\n border-radius: 4px;\n width: auto;\n max-height: 100%;\n }\n"])));
8986
- var templateObject_1$w, templateObject_2$q, templateObject_3$j, templateObject_4$d;
9036
+ var templateObject_1$w, templateObject_2$r, templateObject_3$k, templateObject_4$d;
8987
9037
 
8988
9038
  var documentCaptureInitialState = {
8989
9039
  documents: [],
@@ -9332,8 +9382,8 @@ var DocumentCaptureGuideOverlay = function DocumentCaptureGuideOverlay(_a) {
9332
9382
  var CanvasWrapper = styled__default.default.div(templateObject_1$v || (templateObject_1$v = __makeTemplateObject(["\n flex-grow: 1;\n background-clip: padding-box;\n box-shadow: inset 0 0 0 2px ", ";\n"], ["\n flex-grow: 1;\n background-clip: padding-box;\n box-shadow: inset 0 0 0 2px ", ";\n"])), function (props) {
9333
9383
  return props.$maskColor;
9334
9384
  });
9335
- var Canvas = styled__default.default.canvas(templateObject_2$p || (templateObject_2$p = __makeTemplateObject(["\n display: block;\n"], ["\n display: block;\n"])));
9336
- var templateObject_1$v, templateObject_2$p;
9385
+ var Canvas = styled__default.default.canvas(templateObject_2$q || (templateObject_2$q = __makeTemplateObject(["\n display: block;\n"], ["\n display: block;\n"])));
9386
+ var templateObject_1$v, templateObject_2$q;
9337
9387
 
9338
9388
  var CameraFeedWrapper = styled__default.default.div(templateObject_1$u || (templateObject_1$u = __makeTemplateObject(["\n ", "\n"], ["\n ", "\n"])), function (props) {
9339
9389
  return props.$mode === 'snapToGuides' ? "display: flex;\n position: absolute;\n left: ".concat(props.$x, "px;\n top: ").concat(props.$y, "px;\n width: ").concat(props.$w, "px;\n height: ").concat(props.$h, "px;") : "";
@@ -9519,10 +9569,10 @@ var DocumentCaptureScreen = function DocumentCaptureScreen(_a) {
9519
9569
  }, !cameraReady ? verbiage.loadingBtnText : capturing ? verbiage.capturingBtnText : verbiage.captureBtnText))))));
9520
9570
  };
9521
9571
  var CaptureContainer = styled__default.default.div(templateObject_1$s || (templateObject_1$s = __makeTemplateObject(["\n display: flex;\n flex-direction: column;\n position: absolute;\n top: 0;\n left: 0;\n width: 100%;\n height: 100%;\n"], ["\n display: flex;\n flex-direction: column;\n position: absolute;\n top: 0;\n left: 0;\n width: 100%;\n height: 100%;\n"])));
9522
- var HeadingRow = styled__default.default.div(templateObject_2$o || (templateObject_2$o = __makeTemplateObject(["\n background: ", ";\n text-align: center;\n color: white;\n"], ["\n background: ", ";\n text-align: center;\n color: white;\n"])), function (props) {
9572
+ var HeadingRow = styled__default.default.div(templateObject_2$p || (templateObject_2$p = __makeTemplateObject(["\n background: ", ";\n text-align: center;\n color: white;\n"], ["\n background: ", ";\n text-align: center;\n color: white;\n"])), function (props) {
9523
9573
  return props.$maskColor;
9524
9574
  });
9525
- var Heading$9 = styled__default.default.h1(templateObject_3$i || (templateObject_3$i = __makeTemplateObject(["\n font-size: 22px;\n"], ["\n font-size: 22px;\n"])));
9575
+ var Heading$9 = styled__default.default.h1(templateObject_3$j || (templateObject_3$j = __makeTemplateObject(["\n font-size: 22px;\n"], ["\n font-size: 22px;\n"])));
9526
9576
  var FooterRow = styled__default.default.div(templateObject_4$c || (templateObject_4$c = __makeTemplateObject(["\n background: ", ";\n display: flex;\n flex-direction: column;\n justify-content: center;\n padding: 0 20px 20px;\n height: auto;\n color: white;\n"], ["\n background: ", ";\n display: flex;\n flex-direction: column;\n justify-content: center;\n padding: 0 20px 20px;\n height: auto;\n color: white;\n"])), function (props) {
9527
9577
  return props.$maskColor;
9528
9578
  });
@@ -9532,7 +9582,7 @@ var Instructions = styled__default.default.div(templateObject_5$8 || (templateOb
9532
9582
  });
9533
9583
  var StyledButtonsRow$8 = styled__default.default(ButtonsRow$2)(templateObject_6$4 || (templateObject_6$4 = __makeTemplateObject(["\n padding-top: 20px;\n"], ["\n padding-top: 20px;\n"])));
9534
9584
  var PreviewImage = styled__default.default.img(templateObject_7$2 || (templateObject_7$2 = __makeTemplateObject(["\n width: 100%;\n height: 100%;\n object-fit: cover;\n"], ["\n width: 100%;\n height: 100%;\n object-fit: cover;\n"])));
9535
- var templateObject_1$s, templateObject_2$o, templateObject_3$i, templateObject_4$c, templateObject_5$8, templateObject_6$4, templateObject_7$2;
9585
+ var templateObject_1$s, templateObject_2$p, templateObject_3$j, templateObject_4$c, templateObject_5$8, templateObject_6$4, templateObject_7$2;
9536
9586
 
9537
9587
  var DocumentCaptureWizard = function DocumentCaptureWizard(_a) {
9538
9588
  var onSuccess = _a.onSuccess,
@@ -9804,12 +9854,12 @@ var IdCaptureFallback = function IdCaptureFallback(_a) {
9804
9854
  }, verbiage.doneBtnText))))));
9805
9855
  };
9806
9856
  var StyledOverlayInner$2 = styled__default.default(OverlayInner$2)(templateObject_1$r || (templateObject_1$r = __makeTemplateObject(["\n justify-content: center;\n"], ["\n justify-content: center;\n"])));
9807
- var Heading$8 = styled__default.default.h3(templateObject_2$n || (templateObject_2$n = __makeTemplateObject(["\n margin-bottom: 8px;\n"], ["\n margin-bottom: 8px;\n"])));
9808
- var Description$3 = styled__default.default.p(templateObject_3$h || (templateObject_3$h = __makeTemplateObject(["\n margin-bottom: 8px;\n"], ["\n margin-bottom: 8px;\n"])));
9857
+ var Heading$8 = styled__default.default.h3(templateObject_2$o || (templateObject_2$o = __makeTemplateObject(["\n margin-bottom: 8px;\n"], ["\n margin-bottom: 8px;\n"])));
9858
+ var Description$3 = styled__default.default.p(templateObject_3$i || (templateObject_3$i = __makeTemplateObject(["\n margin-bottom: 8px;\n"], ["\n margin-bottom: 8px;\n"])));
9809
9859
  var Instruction = styled__default.default.p(templateObject_4$b || (templateObject_4$b = __makeTemplateObject(["\n font-weight: bold;\n"], ["\n font-weight: bold;\n"])));
9810
9860
  var ImageCol = styled__default.default.div(templateObject_5$7 || (templateObject_5$7 = __makeTemplateObject(["\n display: flex;\n justify-content: center;\n flex-grow: 1;\n flex-basis: 0;\n"], ["\n display: flex;\n justify-content: center;\n flex-grow: 1;\n flex-basis: 0;\n"])));
9811
9861
  var StyledButtonsRow$7 = styled__default.default(ButtonsRow$2)(templateObject_6$3 || (templateObject_6$3 = __makeTemplateObject(["\n margin-top: 32px;\n"], ["\n margin-top: 32px;\n"])));
9812
- var templateObject_1$r, templateObject_2$n, templateObject_3$h, templateObject_4$b, templateObject_5$7, templateObject_6$3;
9862
+ var templateObject_1$r, templateObject_2$o, templateObject_3$i, templateObject_4$b, templateObject_5$7, templateObject_6$3;
9813
9863
 
9814
9864
  function ScalingCameraFeed() {
9815
9865
  var _a = useIdCaptureStore(),
@@ -10165,8 +10215,8 @@ var ScreenContainer = styled__default.default.div(templateObject_1$q || (templat
10165
10215
  var _a;
10166
10216
  return (_a = props.theme) === null || _a === void 0 ? void 0 : _a.fontFamily;
10167
10217
  });
10168
- var ScreenPanel = styled__default.default.div(templateObject_2$m || (templateObject_2$m = __makeTemplateObject(["\n display: flex;\n flex-direction: column;\n align-items: center;\n justify-content: center;\n width: 100%;\n flex-grow: 1;\n background: #f7f6fb;\n box-sizing: border-box;\n padding: 40px;\n"], ["\n display: flex;\n flex-direction: column;\n align-items: center;\n justify-content: center;\n width: 100%;\n flex-grow: 1;\n background: #f7f6fb;\n box-sizing: border-box;\n padding: 40px;\n"])));
10169
- var SelectIdCardScreenPanel = styled__default.default(ScreenPanel)(templateObject_3$g || (templateObject_3$g = __makeTemplateObject(["\n background: white;\n padding: 80px 0;\n\n @media (max-height: 1000px) {\n padding: 40px 0;\n }\n"], ["\n background: white;\n padding: 80px 0;\n\n @media (max-height: 1000px) {\n padding: 40px 0;\n }\n"])));
10218
+ var ScreenPanel = styled__default.default.div(templateObject_2$n || (templateObject_2$n = __makeTemplateObject(["\n display: flex;\n flex-direction: column;\n align-items: center;\n justify-content: center;\n width: 100%;\n flex-grow: 1;\n background: #f7f6fb;\n box-sizing: border-box;\n padding: 40px;\n"], ["\n display: flex;\n flex-direction: column;\n align-items: center;\n justify-content: center;\n width: 100%;\n flex-grow: 1;\n background: #f7f6fb;\n box-sizing: border-box;\n padding: 40px;\n"])));
10219
+ var SelectIdCardScreenPanel = styled__default.default(ScreenPanel)(templateObject_3$h || (templateObject_3$h = __makeTemplateObject(["\n background: white;\n padding: 80px 0;\n\n @media (max-height: 1000px) {\n padding: 40px 0;\n }\n"], ["\n background: white;\n padding: 80px 0;\n\n @media (max-height: 1000px) {\n padding: 40px 0;\n }\n"])));
10170
10220
  var ScreenPanelHeading = styled__default.default.h3(templateObject_4$a || (templateObject_4$a = __makeTemplateObject(["\n margin: 0 0 30px;\n"], ["\n margin: 0 0 30px;\n"])));
10171
10221
  var ScreenActionsBar = styled__default.default.div(templateObject_5$6 || (templateObject_5$6 = __makeTemplateObject(["\n display: flex;\n align-items: center;\n justify-content: end;\n gap: 20px;\n padding: 20px;\n width: 100%;\n box-sizing: border-box;\n border-top: 1px solid #ccc;\n\n @media (max-width: 600px) {\n justify-content: center;\n }\n"], ["\n display: flex;\n align-items: center;\n justify-content: end;\n gap: 20px;\n padding: 20px;\n width: 100%;\n box-sizing: border-box;\n border-top: 1px solid #ccc;\n\n @media (max-width: 600px) {\n justify-content: center;\n }\n"])));
10172
10222
  var DashedSeparator = styled__default.default.div(templateObject_6$2 || (templateObject_6$2 = __makeTemplateObject(["\n width: 100%;\n height: 0;\n border-top: 2px solid #606060;\n border-top-style: dashed;\n display: flex;\n align-items: center;\n justify-content: center;\n"], ["\n width: 100%;\n height: 0;\n border-top: 2px solid #606060;\n border-top-style: dashed;\n display: flex;\n align-items: center;\n justify-content: center;\n"])));
@@ -10450,13 +10500,14 @@ function humanFileSize(bytes, si, dp) {
10450
10500
  } while (Math.round(Math.abs(bytes) * r) / r >= thresh && u < units.length - 1);
10451
10501
  return bytes.toFixed(dp) + ' ' + units[u];
10452
10502
  }
10453
- var templateObject_1$q, templateObject_2$m, templateObject_3$g, templateObject_4$a, templateObject_5$6, templateObject_6$2, templateObject_7$1, templateObject_8$1, templateObject_9, templateObject_10, templateObject_11, templateObject_12, templateObject_13;
10503
+ var templateObject_1$q, templateObject_2$n, templateObject_3$h, templateObject_4$a, templateObject_5$6, templateObject_6$2, templateObject_7$1, templateObject_8$1, templateObject_9, templateObject_10, templateObject_11, templateObject_12, templateObject_13;
10454
10504
 
10455
10505
  var IdCaptureWizard = function IdCaptureWizard(_a) {
10456
10506
  var _b, _c, _d, _e, _f;
10457
10507
  var onLoadingStarted = _a.onLoadingStarted,
10458
10508
  onLoadingProgress = _a.onLoadingProgress,
10459
10509
  onLoadingCompleted = _a.onLoadingCompleted,
10510
+ onLoadingFailed = _a.onLoadingFailed,
10460
10511
  onSuccess = _a.onSuccess,
10461
10512
  onExitCapture = _a.onExitCapture,
10462
10513
  onUserCancel = _a.onUserCancel,
@@ -10814,6 +10865,7 @@ var IdCaptureWizard = function IdCaptureWizard(_a) {
10814
10865
  onLoadingStarted: onLoadingStarted,
10815
10866
  onLoadingProgress: onLoadingProgress,
10816
10867
  onLoadingCompleted: onLoadingCompleted,
10868
+ onLoadingFailed: onLoadingFailed,
10817
10869
  onDismissed: function onDismissed() {
10818
10870
  setOverlayDismissed(true);
10819
10871
  onLoadingOverlayDismissed === null || onLoadingOverlayDismissed === void 0 ? void 0 : onLoadingOverlayDismissed();
@@ -11228,8 +11280,8 @@ function HeadGuide(_a) {
11228
11280
  height: parentHeight
11229
11281
  })));
11230
11282
  }
11231
- var AbsoluteSvg = styled__default.default.svg(templateObject_2$l || (templateObject_2$l = __makeTemplateObject(["\n position: absolute;\n width: 100%;\n height: 100%;\n top: 0;\n left: 0;\n"], ["\n position: absolute;\n width: 100%;\n height: 100%;\n top: 0;\n left: 0;\n"])));
11232
- var RelativeSvgContainer = styled__default.default.div(templateObject_3$f || (templateObject_3$f = __makeTemplateObject(["\n position: relative;\n height: 100%;\n display: flex;\n align-items: ", ";\n"], ["\n position: relative;\n height: 100%;\n display: flex;\n align-items: ", ";\n"])), function (props) {
11283
+ var AbsoluteSvg = styled__default.default.svg(templateObject_2$m || (templateObject_2$m = __makeTemplateObject(["\n position: absolute;\n width: 100%;\n height: 100%;\n top: 0;\n left: 0;\n"], ["\n position: absolute;\n width: 100%;\n height: 100%;\n top: 0;\n left: 0;\n"])));
11284
+ var RelativeSvgContainer = styled__default.default.div(templateObject_3$g || (templateObject_3$g = __makeTemplateObject(["\n position: relative;\n height: 100%;\n display: flex;\n align-items: ", ";\n"], ["\n position: relative;\n height: 100%;\n display: flex;\n align-items: ", ";\n"])), function (props) {
11233
11285
  return props.$verticalAlign === 'bottom' ? 'flex-end' : 'center';
11234
11286
  });
11235
11287
  function SelfieCaptureAnimatedMask(_a) {
@@ -11456,10 +11508,10 @@ function SelfieCaptureAnimatedMaskWithStatus(_a) {
11456
11508
  status: status
11457
11509
  }));
11458
11510
  }
11459
- var templateObject_1$p, templateObject_2$l, templateObject_3$f;
11511
+ var templateObject_1$p, templateObject_2$m, templateObject_3$g;
11460
11512
 
11461
11513
  var FaceCaptureGuideContainer = styled__default.default.div(templateObject_1$o || (templateObject_1$o = __makeTemplateObject(["\n position: absolute;\n z-index: 1000;\n top: 0;\n left: 0;\n width: 100%;\n height: 100%;\n display: flex;\n flex-direction: column;\n align-items: center;\n justify-content: center;\n padding: 40px;\n box-sizing: border-box;\n"], ["\n position: absolute;\n z-index: 1000;\n top: 0;\n left: 0;\n width: 100%;\n height: 100%;\n display: flex;\n flex-direction: column;\n align-items: center;\n justify-content: center;\n padding: 40px;\n box-sizing: border-box;\n"])));
11462
- var FaceCaptureGuideInner = styled__default.default.div(templateObject_2$k || (templateObject_2$k = __makeTemplateObject(["\n position: relative;\n height: 60%;\n"], ["\n position: relative;\n height: 60%;\n"])));
11514
+ var FaceCaptureGuideInner = styled__default.default.div(templateObject_2$l || (templateObject_2$l = __makeTemplateObject(["\n position: relative;\n height: 60%;\n"], ["\n position: relative;\n height: 60%;\n"])));
11463
11515
  var FaceCaptureGuideOverlay = function FaceCaptureGuideOverlay(_a) {
11464
11516
  var _b = _a.classNames,
11465
11517
  classNames = _b === void 0 ? {} : _b,
@@ -11481,7 +11533,7 @@ var FaceCaptureGuideOverlay = function FaceCaptureGuideOverlay(_a) {
11481
11533
  verticalAlign: "center"
11482
11534
  })));
11483
11535
  };
11484
- var templateObject_1$o, templateObject_2$k;
11536
+ var templateObject_1$o, templateObject_2$l;
11485
11537
 
11486
11538
  var SelfieGuidanceModelsContext = /*#__PURE__*/React.createContext({
11487
11539
  start: function start() {
@@ -11810,11 +11862,11 @@ var SelfieCaptureFallback = function SelfieCaptureFallback(_a) {
11810
11862
  }, !image ? invalidSelfie ? verbiage.retryButtonText : verbiage.captureBtnText : loading ? verbiage.doneBtnLoadingText : verbiage.doneBtnText)))));
11811
11863
  };
11812
11864
  var StyledOverlayInner$1 = styled__default.default(OverlayInner$2)(templateObject_1$n || (templateObject_1$n = __makeTemplateObject(["\n justify-content: center;\n"], ["\n justify-content: center;\n"])));
11813
- var Heading$7 = styled__default.default.h3(templateObject_2$j || (templateObject_2$j = __makeTemplateObject(["\n margin-bottom: 8px;\n"], ["\n margin-bottom: 8px;\n"])));
11814
- var Description$2 = styled__default.default.p(templateObject_3$e || (templateObject_3$e = __makeTemplateObject(["\n margin-bottom: 8px;\n"], ["\n margin-bottom: 8px;\n"])));
11865
+ var Heading$7 = styled__default.default.h3(templateObject_2$k || (templateObject_2$k = __makeTemplateObject(["\n margin-bottom: 8px;\n"], ["\n margin-bottom: 8px;\n"])));
11866
+ var Description$2 = styled__default.default.p(templateObject_3$f || (templateObject_3$f = __makeTemplateObject(["\n margin-bottom: 8px;\n"], ["\n margin-bottom: 8px;\n"])));
11815
11867
  var ImageContainer$6 = styled__default.default(OverlayImageContainer)(templateObject_4$9 || (templateObject_4$9 = __makeTemplateObject(["\n margin-top: 32px;\n"], ["\n margin-top: 32px;\n"])));
11816
11868
  var StyledButtonsRow$6 = styled__default.default(ButtonsRow$2)(templateObject_5$5 || (templateObject_5$5 = __makeTemplateObject(["\n margin-top: 32px;\n"], ["\n margin-top: 32px;\n"])));
11817
- var templateObject_1$n, templateObject_2$j, templateObject_3$e, templateObject_4$9, templateObject_5$5;
11869
+ var templateObject_1$n, templateObject_2$k, templateObject_3$f, templateObject_4$9, templateObject_5$5;
11818
11870
 
11819
11871
  var initialState$4 = {
11820
11872
  busy: false,
@@ -11855,32 +11907,39 @@ var SelfieCapture = function SelfieCapture(_a) {
11855
11907
  guidanceMessage = _a.guidanceMessage,
11856
11908
  guidanceSatisfied = _a.guidanceSatisfied,
11857
11909
  guidesComponent = _a.guidesComponent,
11858
- _d = _a.shouldCapture,
11859
- shouldCapture = _d === void 0 ? true : _d,
11860
- _e = _a.classNames,
11861
- classNames = _e === void 0 ? {} : _e,
11862
- _f = _a.colors,
11863
- colors = _f === void 0 ? {} : _f,
11864
- _g = _a.verbiage,
11865
- rawVerbiage = _g === void 0 ? {} : _g,
11866
- _h = _a.debugMode,
11867
- debugMode = _h === void 0 ? false : _h;
11868
- var _j = useResizeObserver(),
11869
- ref = _j.ref,
11870
- _k = _j.width,
11871
- width = _k === void 0 ? 1 : _k,
11872
- _l = _j.height,
11873
- height = _l === void 0 ? 1 : _l;
11874
- var _m = React.useReducer(reducer$3, initialState$4),
11875
- _o = _m[0],
11876
- busy = _o.busy,
11877
- prediction = _o.prediction,
11878
- dispatch = _m[1];
11910
+ _d = _a.allowManualSelfieCaptureOnLoadingError,
11911
+ allowManualSelfieCaptureOnLoadingError = _d === void 0 ? false : _d,
11912
+ _e = _a.shouldCapture,
11913
+ shouldCapture = _e === void 0 ? true : _e,
11914
+ _f = _a.classNames,
11915
+ classNames = _f === void 0 ? {} : _f,
11916
+ _g = _a.colors,
11917
+ colors = _g === void 0 ? {} : _g,
11918
+ _h = _a.verbiage,
11919
+ rawVerbiage = _h === void 0 ? {} : _h,
11920
+ _j = _a.debugMode,
11921
+ debugMode = _j === void 0 ? false : _j;
11922
+ var _k = useResizeObserver(),
11923
+ ref = _k.ref,
11924
+ _l = _k.width,
11925
+ width = _l === void 0 ? 1 : _l,
11926
+ _m = _k.height,
11927
+ height = _m === void 0 ? 1 : _m;
11928
+ var _o = React.useReducer(reducer$3, initialState$4),
11929
+ _p = _o[0],
11930
+ busy = _p.busy,
11931
+ prediction = _p.prediction,
11932
+ dispatch = _o[1];
11879
11933
  var lastPredictionCanvas = React.useRef(null);
11880
- var _p = React.useContext(SelfieGuidanceModelsContext),
11881
- onPredictionMade = _p.onPredictionMade,
11882
- canvasRef = _p.canvasRef,
11883
- guidanceError = _p.error;
11934
+ var videoRef = useCameraStore(shallow.useShallow(function (state) {
11935
+ return {
11936
+ videoRef: state.videoRef
11937
+ };
11938
+ })).videoRef;
11939
+ var _q = useSelfieGuidanceModelsContext(),
11940
+ onPredictionMade = _q.onPredictionMade,
11941
+ canvasRef = _q.canvasRef,
11942
+ guidanceError = _q.error;
11884
11943
  onPredictionMade(useDebounce.useThrottledCallback(React.useCallback(function (prediction) {
11885
11944
  return __awaiter(void 0, void 0, void 0, function () {
11886
11945
  return __generator(this, function (_a) {
@@ -11903,31 +11962,33 @@ var SelfieCapture = function SelfieCapture(_a) {
11903
11962
  onGuidanceNotSatisfied === null || onGuidanceNotSatisfied === void 0 ? void 0 : onGuidanceNotSatisfied();
11904
11963
  }
11905
11964
  }, [onGuidanceNotSatisfied, onGuidanceSatisfied, prediction === null || prediction === void 0 ? void 0 : prediction.faceReady]);
11965
+ var doCapture = React.useCallback(function () {
11966
+ var _a;
11967
+ dispatch({
11968
+ type: 'captureStarted'
11969
+ });
11970
+ onSelfieCaptureStarted === null || onSelfieCaptureStarted === void 0 ? void 0 : onSelfieCaptureStarted();
11971
+ var frame = lastPredictionCanvas.current;
11972
+ if (!frame) return;
11973
+ var ctx = frame.getContext('2d');
11974
+ if (!ctx) return;
11975
+ var imageData = ctx.getImageData(0, 0, frame.width, frame.height);
11976
+ onSelfieCaptured === null || onSelfieCaptured === void 0 ? void 0 : onSelfieCaptured(imageData, (_a = prediction === null || prediction === void 0 ? void 0 : prediction.face) !== null && _a !== void 0 ? _a : undefined);
11977
+ clearCanvas(frame);
11978
+ dispatch({
11979
+ type: 'captureCompleted'
11980
+ });
11981
+ }, [onSelfieCaptureStarted, onSelfieCaptured, prediction]);
11906
11982
  React.useEffect(function () {
11907
11983
  if (!(prediction === null || prediction === void 0 ? void 0 : prediction.faceReady)) return;
11908
- var timer = setTimeout(function () {
11909
- dispatch({
11910
- type: 'captureStarted'
11911
- });
11912
- onSelfieCaptureStarted === null || onSelfieCaptureStarted === void 0 ? void 0 : onSelfieCaptureStarted();
11913
- var frame = lastPredictionCanvas.current;
11914
- if (!frame) return;
11915
- var ctx = frame.getContext('2d');
11916
- if (!ctx) return;
11917
- var imageData = ctx.getImageData(0, 0, frame.width, frame.height);
11918
- onSelfieCaptured === null || onSelfieCaptured === void 0 ? void 0 : onSelfieCaptured(imageData, prediction.face);
11919
- clearCanvas(frame);
11920
- dispatch({
11921
- type: 'captureCompleted'
11922
- });
11923
- }, 100);
11984
+ var timer = setTimeout(doCapture, 100);
11924
11985
  return function () {
11925
- if (timer) clearTimeout(timer);
11986
+ return timer && clearTimeout(timer);
11926
11987
  };
11927
- }, [onSelfieCaptureStarted, onSelfieCaptured, prediction]);
11928
- var _q = useTimeout(timeoutDurationMs, onTimeout),
11929
- timedOut = _q.timedOut,
11930
- timeoutStartedAt = _q.timeoutStartedAt;
11988
+ }, [doCapture, prediction]);
11989
+ var _r = useTimeout(timeoutDurationMs, onTimeout),
11990
+ timedOut = _r.timedOut,
11991
+ timeoutStartedAt = _r.timeoutStartedAt;
11931
11992
  var debugScalingDetails = useDebugScalingDetails({
11932
11993
  enabled: debugMode,
11933
11994
  pageWidth: width,
@@ -11942,17 +12003,21 @@ var SelfieCapture = function SelfieCapture(_a) {
11942
12003
  guidanceMoveForwardText: 'Move forward...',
11943
12004
  guidanceMoveToCenterText: 'Move to the center...',
11944
12005
  guidanceNoFaceDetectedText: 'Waiting for face to be detected...',
11945
- guidanceNotStableText: 'Please hold still...'
12006
+ guidanceNotStableText: 'Please hold still...',
12007
+ guidanceManualCaptureText: 'Position your face in the circle and click to capture.',
12008
+ manualCaptureBtnText: 'Capture'
11946
12009
  });
11947
- var satisfied = (_b = prediction === null || prediction === void 0 ? void 0 : prediction.faceReady) !== null && _b !== void 0 ? _b : false;
12010
+ var allowManualCapture = !!guidanceError && allowManualSelfieCaptureOnLoadingError;
12011
+ var satisfied = allowManualCapture || ((_b = prediction === null || prediction === void 0 ? void 0 : prediction.faceReady) !== null && _b !== void 0 ? _b : false);
11948
12012
  if (typeof guidanceSatisfied === 'boolean') satisfied = guidanceSatisfied;
11949
- guidanceMessage || (guidanceMessage = satisfied ? verbiage.guidanceHoldStillText : !prediction || (prediction === null || prediction === void 0 ? void 0 : prediction.faceNotDetected) ? verbiage.guidanceNoFaceDetectedText : (prediction === null || prediction === void 0 ? void 0 : prediction.faceNotCentered) ? verbiage.guidanceMoveToCenterText : (prediction === null || prediction === void 0 ? void 0 : prediction.faceLookingAway) ? verbiage.guidanceLookStraightText : (prediction === null || prediction === void 0 ? void 0 : prediction.faceTooClose) ? verbiage.guidanceMoveBackText : (prediction === null || prediction === void 0 ? void 0 : prediction.faceTooFar) ? verbiage.guidanceMoveForwardText : !(prediction === null || prediction === void 0 ? void 0 : prediction.faceIsStable) ? verbiage.guidanceNotStableText : '');
11950
- if (guidanceError) {
12013
+ guidanceMessage || (guidanceMessage = allowManualCapture ? verbiage.guidanceManualCaptureText : satisfied ? verbiage.guidanceHoldStillText : !prediction || (prediction === null || prediction === void 0 ? void 0 : prediction.faceNotDetected) ? verbiage.guidanceNoFaceDetectedText : (prediction === null || prediction === void 0 ? void 0 : prediction.faceNotCentered) ? verbiage.guidanceMoveToCenterText : (prediction === null || prediction === void 0 ? void 0 : prediction.faceLookingAway) ? verbiage.guidanceLookStraightText : (prediction === null || prediction === void 0 ? void 0 : prediction.faceTooClose) ? verbiage.guidanceMoveBackText : (prediction === null || prediction === void 0 ? void 0 : prediction.faceTooFar) ? verbiage.guidanceMoveForwardText : !(prediction === null || prediction === void 0 ? void 0 : prediction.faceIsStable) ? verbiage.guidanceNotStableText : '');
12014
+ if (guidanceError && !allowManualSelfieCaptureOnLoadingError) {
11951
12015
  return /*#__PURE__*/React__namespace.default.createElement(SelfieCaptureFallback, {
11952
12016
  classNames: classNames.fallback
11953
12017
  });
11954
12018
  }
11955
12019
  var GuidesComponent = guidesComponent !== null && guidesComponent !== void 0 ? guidesComponent : FaceCaptureGuideOverlay;
12020
+ var guidanceVariant = allowManualCapture ? 'default' : satisfied ? 'positive' : 'negative';
11956
12021
  return /*#__PURE__*/React__namespace.default.createElement(Container$6, {
11957
12022
  ref: ref,
11958
12023
  className: classNames.container
@@ -11962,28 +12027,40 @@ var SelfieCapture = function SelfieCapture(_a) {
11962
12027
  classNames: classNames.guides,
11963
12028
  status: satisfied ? 'processing' : 'ready'
11964
12029
  }), !!guidanceMessage && ( /*#__PURE__*/React__namespace.default.createElement(GuidanceMessageContainer, {
12030
+ "$top": "12px",
11965
12031
  className: classNames.guidanceMessageContainer
11966
12032
  }, /*#__PURE__*/React__namespace.default.createElement(GuidanceMessage, {
11967
- "$variant": satisfied ? 'positive' : 'negative',
12033
+ "$variant": guidanceVariant,
11968
12034
  className: classNames.guidanceMessage
11969
12035
  }, guidanceMessage))), debugMode && (prediction === null || prediction === void 0 ? void 0 : prediction.face) && ( /*#__PURE__*/React__namespace.default.createElement(ObjectDetectionDebugOverlayDiv, null, /*#__PURE__*/React__namespace.default.createElement(SelfieCaptureFaceDebugBox, {
11970
12036
  face: prediction.face,
11971
12037
  scaling: debugScalingDetails,
11972
12038
  color: satisfied ? 'green' : 'red'
11973
- }))), debugMode && ( /*#__PURE__*/React__namespace.default.createElement(DebugStatsPane, null, camera ? ( /*#__PURE__*/React__namespace.default.createElement(React__namespace.default.Fragment, null, "\u2705 Camera: ", camera.label, " (", camera.width, "x", camera.height, ")")) : '❌ Camera not ready', /*#__PURE__*/React__namespace.default.createElement("br", null), !(prediction === null || prediction === void 0 ? void 0 : prediction.faceNotDetected) ? '✅' : '❌', " Face Detected", /*#__PURE__*/React__namespace.default.createElement("br", null), !(prediction === null || prediction === void 0 ? void 0 : prediction.faceNotCentered) ? '✅' : '❌', " Face Centered", /*#__PURE__*/React__namespace.default.createElement("br", null), !(prediction === null || prediction === void 0 ? void 0 : prediction.faceTooClose) && !(prediction === null || prediction === void 0 ? void 0 : prediction.faceTooFar) ? '✅' : '❌', ' ', "Face", ' ', (prediction === null || prediction === void 0 ? void 0 : prediction.faceTooClose) ? 'Too Close' : (prediction === null || prediction === void 0 ? void 0 : prediction.faceTooFar) ? 'Too Far' : 'Distance Correct', /*#__PURE__*/React__namespace.default.createElement("br", null), !(prediction === null || prediction === void 0 ? void 0 : prediction.faceLookingAway) ? '✅' : '❌', " Face Looking Forward", /*#__PURE__*/React__namespace.default.createElement("br", null), !(prediction === null || prediction === void 0 ? void 0 : prediction.faceIsStable) ? '✅' : '❌', " Face Is Stable", /*#__PURE__*/React__namespace.default.createElement("br", null), !timedOut ? '✅' : '❌', " Time Remaining:", ' ', Math.max(0, timeoutDurationMs - (new Date().getTime() - (timeoutStartedAt !== null && timeoutStartedAt !== void 0 ? timeoutStartedAt : new Date()).getTime())), "ms")), /*#__PURE__*/React__namespace.default.createElement(ExitCaptureButton, {
12039
+ }))), debugMode && ( /*#__PURE__*/React__namespace.default.createElement(DebugStatsPane, null, camera ? ( /*#__PURE__*/React__namespace.default.createElement(React__namespace.default.Fragment, null, "\u2705 Camera: ", camera.label, " (", camera.width, "x", camera.height, ")")) : '❌ Camera not ready', /*#__PURE__*/React__namespace.default.createElement("br", null), !(prediction === null || prediction === void 0 ? void 0 : prediction.faceNotDetected) ? '✅' : '❌', " Face Detected", /*#__PURE__*/React__namespace.default.createElement("br", null), !(prediction === null || prediction === void 0 ? void 0 : prediction.faceNotCentered) ? '✅' : '❌', " Face Centered", /*#__PURE__*/React__namespace.default.createElement("br", null), !(prediction === null || prediction === void 0 ? void 0 : prediction.faceTooClose) && !(prediction === null || prediction === void 0 ? void 0 : prediction.faceTooFar) ? '✅' : '❌', ' ', "Face", ' ', (prediction === null || prediction === void 0 ? void 0 : prediction.faceTooClose) ? 'Too Close' : (prediction === null || prediction === void 0 ? void 0 : prediction.faceTooFar) ? 'Too Far' : 'Distance Correct', /*#__PURE__*/React__namespace.default.createElement("br", null), !(prediction === null || prediction === void 0 ? void 0 : prediction.faceLookingAway) ? '✅' : '❌', " Face Looking Forward", /*#__PURE__*/React__namespace.default.createElement("br", null), !(prediction === null || prediction === void 0 ? void 0 : prediction.faceIsStable) ? '✅' : '❌', " Face Is Stable", /*#__PURE__*/React__namespace.default.createElement("br", null), !timedOut ? '✅' : '❌', " Time Remaining:", ' ', Math.max(0, timeoutDurationMs - (new Date().getTime() - (timeoutStartedAt !== null && timeoutStartedAt !== void 0 ? timeoutStartedAt : new Date()).getTime())), "ms")), allowManualCapture && ( /*#__PURE__*/React__namespace.default.createElement(CaptureButtonContainer$1, null, /*#__PURE__*/React__namespace.default.createElement(CaptureButton$1, {
12040
+ disabled: !videoRef.current,
12041
+ onClick: function onClick() {
12042
+ var _a;
12043
+ // draw the current frame from videoRef to the canvas
12044
+ if (!lastPredictionCanvas.current || !videoRef.current) return;
12045
+ lastPredictionCanvas.current.width = videoRef.current.videoWidth;
12046
+ lastPredictionCanvas.current.height = videoRef.current.videoHeight;
12047
+ var ctx = (_a = lastPredictionCanvas.current) === null || _a === void 0 ? void 0 : _a.getContext('2d');
12048
+ if (!ctx) return;
12049
+ ctx.drawImage(videoRef.current, 0, 0);
12050
+ doCapture();
12051
+ }
12052
+ }, verbiage.manualCaptureBtnText))), /*#__PURE__*/React__namespace.default.createElement(ExitCaptureButton, {
11974
12053
  onClick: onExit,
11975
12054
  className: classNames.exitCaptureBtn
11976
12055
  }));
11977
12056
  };
11978
12057
  var Container$6 = styled__default.default.div(templateObject_1$m || (templateObject_1$m = __makeTemplateObject(["\n width: 100%;\n height: 100%;\n"], ["\n width: 100%;\n height: 100%;\n"])));
11979
- var templateObject_1$m;
12058
+ var CaptureButtonContainer$1 = styled__default.default.div(templateObject_2$j || (templateObject_2$j = __makeTemplateObject(["\n position: absolute;\n bottom: 0;\n width: 100%;\n display: flex;\n z-index: 100000;\n box-sizing: border-box;\n padding: 0 12px 12px;\n"], ["\n position: absolute;\n bottom: 0;\n width: 100%;\n display: flex;\n z-index: 100000;\n box-sizing: border-box;\n padding: 0 12px 12px;\n"])));
12059
+ var CaptureButton$1 = styled__default.default(LoaderButton)(templateObject_3$e || (templateObject_3$e = __makeTemplateObject(["\n margin: 0 auto;\n width: 100%;\n border-radius: 30px;\n"], ["\n margin: 0 auto;\n width: 100%;\n border-radius: 30px;\n"])));
12060
+ var templateObject_1$m, templateObject_2$j, templateObject_3$e;
11980
12061
 
11981
12062
  var initialState$3 = {
11982
- frame: null,
11983
- face: null,
11984
12063
  requestState: 'CAPTURING',
11985
- requestError: null,
11986
- imageUrl: null,
11987
12064
  faceLive: false,
11988
12065
  eyeCoveringDetected: false,
11989
12066
  maskDetected: false,
@@ -11992,7 +12069,6 @@ var initialState$3 = {
11992
12069
  timesLivenessCheckFailed: 0
11993
12070
  };
11994
12071
  var reducer$2 = function reducer(state, action) {
11995
- var _a, _b;
11996
12072
  switch (action.type) {
11997
12073
  case 'resetLivenessCheck':
11998
12074
  return _assign(_assign({}, initialState$3), {
@@ -12027,12 +12103,12 @@ var reducer$2 = function reducer(state, action) {
12027
12103
  });
12028
12104
  case 'livenessChecked':
12029
12105
  {
12030
- var _c = action.payload.response,
12031
- _d = _c.status,
12032
- statusCode = _d.statusCode,
12033
- statusMessage = _d.statusMessage,
12034
- errorData = _d.errorData,
12035
- resultData = _c.resultData;
12106
+ var _a = action.payload.response,
12107
+ _b = _a.status,
12108
+ statusCode = _b.statusCode,
12109
+ statusMessage = _b.statusMessage,
12110
+ errorData = _b.errorData,
12111
+ resultData = _a.resultData;
12036
12112
  if (statusCode !== '000') {
12037
12113
  return _assign(_assign({}, state), {
12038
12114
  requestState: 'ERROR',
@@ -12053,8 +12129,8 @@ var reducer$2 = function reducer(state, action) {
12053
12129
  timesLivenessCheckFailed += 1;
12054
12130
  }
12055
12131
  return _assign(_assign({}, state), {
12056
- frame: (_a = action.payload.frame) !== null && _a !== void 0 ? _a : null,
12057
- face: (_b = action.payload.face) !== null && _b !== void 0 ? _b : null,
12132
+ frame: action.payload.frame,
12133
+ face: action.payload.face,
12058
12134
  imageUrl: action.payload.imageUrl,
12059
12135
  requestState: requestState,
12060
12136
  faceLive: faceLive,
@@ -12092,23 +12168,25 @@ var FaceLivenessCapture = function FaceLivenessCapture(_a) {
12092
12168
  silentFallback = _h === void 0 ? false : _h,
12093
12169
  guidesComponent = _a.guidesComponent,
12094
12170
  disableCapturePreview = _a.disableCapturePreview,
12095
- _j = _a.classNames,
12096
- classNames = _j === void 0 ? {} : _j,
12097
- _k = _a.colors,
12098
- colors = _k === void 0 ? {} : _k,
12099
- _l = _a.verbiage,
12100
- rawVerbiage = _l === void 0 ? {} : _l,
12171
+ _j = _a.allowManualSelfieCaptureOnLoadingError,
12172
+ allowManualSelfieCaptureOnLoadingError = _j === void 0 ? false : _j,
12173
+ _k = _a.classNames,
12174
+ classNames = _k === void 0 ? {} : _k,
12175
+ _l = _a.colors,
12176
+ colors = _l === void 0 ? {} : _l,
12177
+ _m = _a.verbiage,
12178
+ rawVerbiage = _m === void 0 ? {} : _m,
12101
12179
  debugMode = _a.debugMode;
12102
- var _m = React.useContext(SubmissionContext),
12103
- checkLiveness = _m.checkLiveness,
12104
- submissionError = _m.submissionError;
12180
+ var _o = React.useContext(SubmissionContext),
12181
+ checkLiveness = _o.checkLiveness,
12182
+ submissionError = _o.submissionError;
12105
12183
  var modelError = useSelfieGuidanceModelsContext().error;
12106
- var _o = React.useReducer(reducer$2, initialState$3),
12107
- state = _o[0],
12108
- dispatch = _o[1];
12109
- var _p = React.useState(null),
12110
- imageUrl = _p[0],
12111
- setImageUrl = _p[1];
12184
+ var _p = React.useReducer(reducer$2, initialState$3),
12185
+ state = _p[0],
12186
+ dispatch = _p[1];
12187
+ var _q = React.useState(null),
12188
+ imageUrl = _q[0],
12189
+ setImageUrl = _q[1];
12112
12190
  var rawCanvas = React.useRef(null);
12113
12191
  var cropCanvas = React.useRef(null);
12114
12192
  var resizeCanvas = React.useRef(null);
@@ -12134,7 +12212,7 @@ var FaceLivenessCapture = function FaceLivenessCapture(_a) {
12134
12212
  var isPassed = state.requestState === 'PASSED';
12135
12213
  React.useEffect(function checkLivenessIfPossible() {
12136
12214
  var _this = this;
12137
- if (!frame || !face || !isReady || submissionError) return;
12215
+ if (!frame || !isReady || submissionError) return;
12138
12216
  dispatch({
12139
12217
  type: 'livenessChecking'
12140
12218
  });
@@ -12273,7 +12351,7 @@ var FaceLivenessCapture = function FaceLivenessCapture(_a) {
12273
12351
  });
12274
12352
  }, []);
12275
12353
  var initialDelayOver = useTimeout(initialCaptureDelayMs).timedOut;
12276
- if (modelError) {
12354
+ if (modelError && !allowManualSelfieCaptureOnLoadingError) {
12277
12355
  return /*#__PURE__*/React__namespace.default.createElement(SelfieCaptureFallback, {
12278
12356
  key: state.timesLivenessCheckFailed,
12279
12357
  onFinished: onFallbackImageCaptured,
@@ -12300,6 +12378,7 @@ var FaceLivenessCapture = function FaceLivenessCapture(_a) {
12300
12378
  onGuidanceSatisfied: onGuidanceSatisfied,
12301
12379
  onGuidanceNotSatisfied: onGuidanceNotSatisfied,
12302
12380
  guidesComponent: guidesByRequestState,
12381
+ allowManualSelfieCaptureOnLoadingError: allowManualSelfieCaptureOnLoadingError,
12303
12382
  classNames: classNames,
12304
12383
  colors: colors,
12305
12384
  verbiage: rawVerbiage,
@@ -12566,35 +12645,39 @@ var SelfieCaptureLoadingOverlayDefault = function SelfieCaptureLoadingOverlayDef
12566
12645
  var onLoadingStarted = _a.onLoadingStarted,
12567
12646
  onLoadingProgress = _a.onLoadingProgress,
12568
12647
  onLoadingCompleted = _a.onLoadingCompleted,
12648
+ onLoadingFailed = _a.onLoadingFailed,
12569
12649
  onDismissed = _a.onDismissed,
12570
12650
  onUserCancel = _a.onUserCancel,
12571
12651
  customOverlayContent = _a.customOverlayContent,
12572
12652
  _d = _a.waitForIdCaptureModels,
12573
12653
  waitForIdCaptureModels = _d === void 0 ? false : _d,
12574
- _e = _a.assets,
12575
- assets = _e === void 0 ? {} : _e,
12576
- _f = _a.classNames,
12577
- classNames = _f === void 0 ? {} : _f,
12578
- _g = _a.colors,
12579
- colors = _g === void 0 ? {} : _g,
12580
- _h = _a.verbiage,
12581
- rawVerbiage = _h === void 0 ? {} : _h;
12654
+ _e = _a.allowManualSelfieCaptureOnLoadingError,
12655
+ allowManualSelfieCaptureOnLoadingError = _e === void 0 ? false : _e,
12656
+ _f = _a.assets,
12657
+ assets = _f === void 0 ? {} : _f,
12658
+ _g = _a.classNames,
12659
+ classNames = _g === void 0 ? {} : _g,
12660
+ _h = _a.colors,
12661
+ colors = _h === void 0 ? {} : _h,
12662
+ _j = _a.verbiage,
12663
+ rawVerbiage = _j === void 0 ? {} : _j;
12582
12664
  var sessionCheckState = useAuthContext()[0].sessionCheckState;
12583
12665
  var sessionReady = sessionCheckState === 'PASSED';
12584
- var _j = useCameraStore(shallow.useShallow(function (state) {
12666
+ var _k = useCameraStore(shallow.useShallow(function (state) {
12585
12667
  return {
12586
12668
  cameraReady: state.cameraReady,
12587
12669
  cameraAccessDenied: state.cameraAccessDenied,
12588
12670
  microphoneAccessDenied: state.microphoneAccessDenied
12589
12671
  };
12590
12672
  })),
12591
- cameraReady = _j.cameraReady,
12592
- cameraAccessDenied = _j.cameraAccessDenied,
12593
- microphoneAccessDenied = _j.microphoneAccessDenied;
12594
- var _k = useSelfieGuidanceModelsContext(),
12595
- modelLoadState = _k.modelLoadState,
12596
- modelDownloadProgress = _k.modelDownloadProgress,
12597
- modelWarmingStartedAt = _k.modelWarmingStartedAt;
12673
+ cameraReady = _k.cameraReady,
12674
+ cameraAccessDenied = _k.cameraAccessDenied,
12675
+ microphoneAccessDenied = _k.microphoneAccessDenied;
12676
+ var _l = useSelfieGuidanceModelsContext(),
12677
+ modelLoadState = _l.modelLoadState,
12678
+ modelDownloadProgress = _l.modelDownloadProgress,
12679
+ modelWarmingStartedAt = _l.modelWarmingStartedAt,
12680
+ modelError = _l.error;
12598
12681
  var idCaptureModelsContext = React.useContext(IdCaptureModelsContext);
12599
12682
  var theme = styled.useTheme();
12600
12683
  var verbiage = useTranslations(rawVerbiage, {
@@ -12610,9 +12693,9 @@ var SelfieCaptureLoadingOverlayDefault = function SelfieCaptureLoadingOverlayDef
12610
12693
  modelsReadyText: 'Guided capture experience ready',
12611
12694
  sessionCheckingText: 'Authenticating...'
12612
12695
  });
12613
- var _l = React.useState(0),
12614
- headingTextIndex = _l[0],
12615
- setHeadingTextIndex = _l[1];
12696
+ var _m = React.useState(0),
12697
+ headingTextIndex = _m[0],
12698
+ setHeadingTextIndex = _m[1];
12616
12699
  var headingText = [verbiage.headingText, verbiage.removeEyeCoveringsText, verbiage.avoidExcessiveBacklightingText][headingTextIndex];
12617
12700
  React.useEffect(function () {
12618
12701
  setInterval(function () {
@@ -12623,20 +12706,29 @@ var SelfieCaptureLoadingOverlayDefault = function SelfieCaptureLoadingOverlayDef
12623
12706
  }, []);
12624
12707
  var timeSinceWarmingStarted = modelWarmingStartedAt ? new Date().getTime() - modelWarmingStartedAt : 0;
12625
12708
  var warmingProgress = timeSinceWarmingStarted / 5000.0;
12626
- var allModelsReady = modelLoadState === 'ready' && (!waitForIdCaptureModels || (idCaptureModelsContext === null || idCaptureModelsContext === void 0 ? void 0 : idCaptureModelsContext.ready));
12709
+ var _o = React.useState(false),
12710
+ overrideModelsReady = _o[0],
12711
+ setOverrideModelsReady = _o[1];
12712
+ var onLoadingFailedCallback = React.useCallback(function (error) {
12713
+ setOverrideModelsReady(allowManualSelfieCaptureOnLoadingError);
12714
+ return onLoadingFailed === null || onLoadingFailed === void 0 ? void 0 : onLoadingFailed(error);
12715
+ }, [onLoadingFailed, allowManualSelfieCaptureOnLoadingError]);
12716
+ var allModelsReady = overrideModelsReady || modelLoadState === 'ready' && (!waitForIdCaptureModels || (idCaptureModelsContext === null || idCaptureModelsContext === void 0 ? void 0 : idCaptureModelsContext.ready));
12627
12717
  var ready = sessionReady && allModelsReady && cameraReady;
12628
12718
  var modelLoadProgress = allModelsReady ? 100 : modelDownloadProgress * 0.5 + warmingProgress * 49.0;
12629
12719
  useLoadProgressHooks({
12630
12720
  ready: ready,
12631
12721
  modelLoadState: modelLoadState,
12632
12722
  modelLoadProgress: modelLoadProgress,
12723
+ modelError: modelError,
12633
12724
  onLoadingStarted: onLoadingStarted,
12634
12725
  onLoadingProgress: onLoadingProgress,
12635
- onLoadingCompleted: onLoadingCompleted
12726
+ onLoadingCompleted: onLoadingCompleted,
12727
+ onLoadingFailed: onLoadingFailedCallback
12636
12728
  });
12637
- var _m = React.useState(false),
12638
- dismissed = _m[0],
12639
- setDismissed = _m[1];
12729
+ var _p = React.useState(false),
12730
+ dismissed = _p[0],
12731
+ setDismissed = _p[1];
12640
12732
  if (dismissed) return /*#__PURE__*/React__namespace.default.createElement(React__namespace.default.Fragment, null);
12641
12733
  if (cameraAccessDenied) {
12642
12734
  return /*#__PURE__*/React__namespace.default.createElement(CameraAccessDeniedOverlay, {
@@ -12777,6 +12869,7 @@ var FaceLivenessWizard = function FaceLivenessWizard(_a) {
12777
12869
  var onLoadingStarted = _a.onLoadingStarted,
12778
12870
  onLoadingProgress = _a.onLoadingProgress,
12779
12871
  onLoadingCompleted = _a.onLoadingCompleted,
12872
+ onLoadingFailed = _a.onLoadingFailed,
12780
12873
  onComplete = _a.onComplete,
12781
12874
  onSuccess = _a.onSuccess,
12782
12875
  onFailure = _a.onFailure,
@@ -12810,49 +12903,51 @@ var FaceLivenessWizard = function FaceLivenessWizard(_a) {
12810
12903
  waitForIdCaptureModels = _m === void 0 ? false : _m,
12811
12904
  guidesComponent = _a.guidesComponent,
12812
12905
  disableCapturePreview = _a.disableCapturePreview,
12813
- _o = _a.assets,
12814
- assets = _o === void 0 ? {} : _o,
12815
- _p = _a.classNames,
12816
- classNames = _p === void 0 ? {} : _p,
12817
- _q = _a.colors,
12818
- colors = _q === void 0 ? {} : _q,
12819
- _r = _a.verbiage,
12820
- verbiage = _r === void 0 ? {} : _r,
12821
- _s = _a.debugMode,
12822
- debugMode = _s === void 0 ? false : _s,
12823
- _t = _a.showLoadingOverlay,
12824
- showLoadingOverlay = _t === void 0 ? true : _t;
12825
- var _u = useSubmissionContext(),
12826
- submissionResponse = _u.submissionResponse,
12827
- livenessCheckRequest = _u.livenessCheckRequest,
12828
- setSelfieImage = _u.setSelfieImage,
12829
- logSelfieCaptureAttempt = _u.logSelfieCaptureAttempt;
12830
- var _v = useCameraStore(shallow.useShallow(function (state) {
12906
+ _o = _a.allowManualSelfieCaptureOnLoadingError,
12907
+ allowManualSelfieCaptureOnLoadingError = _o === void 0 ? false : _o,
12908
+ _p = _a.assets,
12909
+ assets = _p === void 0 ? {} : _p,
12910
+ _q = _a.classNames,
12911
+ classNames = _q === void 0 ? {} : _q,
12912
+ _r = _a.colors,
12913
+ colors = _r === void 0 ? {} : _r,
12914
+ _s = _a.verbiage,
12915
+ verbiage = _s === void 0 ? {} : _s,
12916
+ _t = _a.debugMode,
12917
+ debugMode = _t === void 0 ? false : _t,
12918
+ _u = _a.showLoadingOverlay,
12919
+ showLoadingOverlay = _u === void 0 ? true : _u;
12920
+ var _v = useSubmissionContext(),
12921
+ submissionResponse = _v.submissionResponse,
12922
+ livenessCheckRequest = _v.livenessCheckRequest,
12923
+ setSelfieImage = _v.setSelfieImage,
12924
+ logSelfieCaptureAttempt = _v.logSelfieCaptureAttempt;
12925
+ var _w = useCameraStore(shallow.useShallow(function (state) {
12831
12926
  return {
12832
12927
  cameraAccessDenied: state.cameraAccessDenied,
12833
12928
  requestCameraAccess: state.requestCameraAccess,
12834
12929
  releaseCameraAccess: state.releaseCameraAccess
12835
12930
  };
12836
12931
  })),
12837
- cameraAccessDenied = _v.cameraAccessDenied,
12838
- requestCameraAccess = _v.requestCameraAccess,
12839
- releaseCameraAccess = _v.releaseCameraAccess;
12840
- var _w = React.useState(''),
12841
- faceCropImageUrl = _w[0],
12842
- setFaceCropImageUrl = _w[1];
12843
- var _x = React.useState(0),
12844
- retryCount = _x[0],
12845
- setRetryCount = _x[1];
12846
- var _y = React.useState(showLoadingOverlay ? 'LOADING' : 'CAPTURING'),
12847
- captureState = _y[0],
12848
- setCaptureState = _y[1];
12932
+ cameraAccessDenied = _w.cameraAccessDenied,
12933
+ requestCameraAccess = _w.requestCameraAccess,
12934
+ releaseCameraAccess = _w.releaseCameraAccess;
12935
+ var _x = React.useState(''),
12936
+ faceCropImageUrl = _x[0],
12937
+ setFaceCropImageUrl = _x[1];
12938
+ var _y = React.useState(0),
12939
+ retryCount = _y[0],
12940
+ setRetryCount = _y[1];
12941
+ var _z = React.useState(showLoadingOverlay ? 'LOADING' : 'CAPTURING'),
12942
+ captureState = _z[0],
12943
+ setCaptureState = _z[1];
12849
12944
  var captureStartedAt = React.useRef();
12850
12945
  var operationStartedAt = React.useRef();
12851
12946
  var livenessScore = React.useRef();
12852
- var _z = useSelfieGuidanceModelsContext(),
12853
- start = _z.start,
12854
- stop = _z.stop,
12855
- selfieGuidanceCanvasRef = _z.canvasRef;
12947
+ var _0 = useSelfieGuidanceModelsContext(),
12948
+ start = _0.start,
12949
+ stop = _0.stop,
12950
+ selfieGuidanceCanvasRef = _0.canvasRef;
12856
12951
  React.useEffect(function () {
12857
12952
  if (precapturedDocuments === null || precapturedDocuments === void 0 ? void 0 : precapturedDocuments.selfie) {
12858
12953
  setSelfieImage(precapturedDocuments.selfie.imageData);
@@ -12935,9 +13030,9 @@ var FaceLivenessWizard = function FaceLivenessWizard(_a) {
12935
13030
  }
12936
13031
  onDenied === null || onDenied === void 0 ? void 0 : onDenied(submissionResponse, livenessCheckRequest);
12937
13032
  }, [allowLivenessFailure, onDenied, submissionResponse, livenessCheckRequest]);
12938
- var _0 = React.useState(0),
12939
- attempt = _0[0],
12940
- setAttempt = _0[1];
13033
+ var _1 = React.useState(0),
13034
+ attempt = _1[0],
13035
+ setAttempt = _1[1];
12941
13036
  var onExitCallback = React.useCallback(function () {
12942
13037
  setAttempt(function (n) {
12943
13038
  return n + 1;
@@ -13005,6 +13100,7 @@ var FaceLivenessWizard = function FaceLivenessWizard(_a) {
13005
13100
  silentFallback: silentFallback,
13006
13101
  guidesComponent: guidesComponent,
13007
13102
  disableCapturePreview: disableCapturePreview,
13103
+ allowManualSelfieCaptureOnLoadingError: allowManualSelfieCaptureOnLoadingError,
13008
13104
  classNames: classNames.capture,
13009
13105
  colors: colors,
13010
13106
  verbiage: verbiage,
@@ -13047,9 +13143,11 @@ var FaceLivenessWizard = function FaceLivenessWizard(_a) {
13047
13143
  onLoadingStarted: onLoadingStarted,
13048
13144
  onLoadingProgress: onLoadingProgress,
13049
13145
  onLoadingCompleted: onLoadingCompleted,
13146
+ onLoadingFailed: onLoadingFailed,
13050
13147
  onUserCancel: onUserCancel,
13051
13148
  onDismissed: onLoadingOverlayDismissedCallback,
13052
- waitForIdCaptureModels: waitForIdCaptureModels
13149
+ waitForIdCaptureModels: waitForIdCaptureModels,
13150
+ allowManualSelfieCaptureOnLoadingError: allowManualSelfieCaptureOnLoadingError
13053
13151
  })));
13054
13152
  };
13055
13153
  function FaceLivenessWizardWithProviders(_a) {
@@ -14005,8 +14103,6 @@ var VideoSignatureCapture = function VideoSignatureCapture(_a) {
14005
14103
  setTimeout(startHeadTracking, 1);
14006
14104
  return stopHeadTracking;
14007
14105
  }, [startHeadTracking, stopHeadTracking]);
14008
- colors.guidanceMessageBackgroundColor || (colors.guidanceMessageBackgroundColor = '#ccc');
14009
- colors.guidanceMessageTextColor || (colors.guidanceMessageTextColor = 'black');
14010
14106
  var verbiage = useTranslations(rawVerbiage, {
14011
14107
  guidanceMessageText: 'Please sign the box below'
14012
14108
  });
@@ -14054,7 +14150,7 @@ var VideoSignatureCapture = function VideoSignatureCapture(_a) {
14054
14150
  ref: ref,
14055
14151
  className: classNames.container
14056
14152
  }, !!verbiage.guidanceMessageText && ( /*#__PURE__*/React__namespace.default.createElement(GuidanceMessageContainer, {
14057
- "$top": "10%",
14153
+ "$top": "12px",
14058
14154
  className: classNames.guidanceMessageContainer
14059
14155
  }, /*#__PURE__*/React__namespace.default.createElement(GuidanceMessage, {
14060
14156
  className: classNames.guidanceMessage,
@@ -14144,6 +14240,7 @@ function SelfieCaptureWizard(_a) {
14144
14240
  var onLoadingStarted = _a.onLoadingStarted,
14145
14241
  onLoadingProgress = _a.onLoadingProgress,
14146
14242
  onLoadingCompleted = _a.onLoadingCompleted,
14243
+ onLoadingFailed = _a.onLoadingFailed,
14147
14244
  onLoadingOverlayDismissed = _a.onLoadingOverlayDismissed,
14148
14245
  onCapture = _a.onCapture,
14149
14246
  onUserCancel = _a.onUserCancel,
@@ -14162,43 +14259,45 @@ function SelfieCaptureWizard(_a) {
14162
14259
  initialCaptureDelayMs = _g === void 0 ? 1000 : _g,
14163
14260
  _h = _a.silentFallback,
14164
14261
  silentFallback = _h === void 0 ? false : _h,
14262
+ _j = _a.allowManualSelfieCaptureOnLoadingError,
14263
+ allowManualSelfieCaptureOnLoadingError = _j === void 0 ? false : _j,
14165
14264
  guidanceMessage = _a.guidanceMessage,
14166
14265
  guidesComponent = _a.guidesComponent,
14167
- _j = _a.assets,
14168
- assets = _j === void 0 ? {} : _j,
14169
- _k = _a.classNames,
14170
- classNames = _k === void 0 ? {} : _k,
14171
- _l = _a.colors,
14172
- colors = _l === void 0 ? {} : _l,
14173
- _m = _a.verbiage,
14174
- verbiage = _m === void 0 ? {} : _m,
14175
- _o = _a.debugMode,
14176
- debugMode = _o === void 0 ? false : _o;
14177
- var _p = useSubmissionContext(),
14178
- setSelfieImage = _p.setSelfieImage,
14179
- logSelfieCaptureAttempt = _p.logSelfieCaptureAttempt;
14180
- var _q = useCameraStore(shallow.useShallow(function (state) {
14266
+ _k = _a.assets,
14267
+ assets = _k === void 0 ? {} : _k,
14268
+ _l = _a.classNames,
14269
+ classNames = _l === void 0 ? {} : _l,
14270
+ _m = _a.colors,
14271
+ colors = _m === void 0 ? {} : _m,
14272
+ _o = _a.verbiage,
14273
+ verbiage = _o === void 0 ? {} : _o,
14274
+ _p = _a.debugMode,
14275
+ debugMode = _p === void 0 ? false : _p;
14276
+ var _q = useSubmissionContext(),
14277
+ setSelfieImage = _q.setSelfieImage,
14278
+ logSelfieCaptureAttempt = _q.logSelfieCaptureAttempt;
14279
+ var _r = useCameraStore(shallow.useShallow(function (state) {
14181
14280
  return {
14182
14281
  cameraAccessDenied: state.cameraAccessDenied,
14183
14282
  requestCameraAccess: state.requestCameraAccess,
14184
14283
  releaseCameraAccess: state.releaseCameraAccess
14185
14284
  };
14186
14285
  })),
14187
- cameraAccessDenied = _q.cameraAccessDenied,
14188
- requestCameraAccess = _q.requestCameraAccess,
14189
- releaseCameraAccess = _q.releaseCameraAccess;
14190
- var _r = React.useState(showLoadingOverlay ? 'LOADING' : 'CAPTURING'),
14191
- captureState = _r[0],
14192
- setCaptureState = _r[1];
14286
+ cameraAccessDenied = _r.cameraAccessDenied,
14287
+ requestCameraAccess = _r.requestCameraAccess,
14288
+ releaseCameraAccess = _r.releaseCameraAccess;
14289
+ var _s = React.useState(showLoadingOverlay ? 'LOADING' : 'CAPTURING'),
14290
+ captureState = _s[0],
14291
+ setCaptureState = _s[1];
14193
14292
  var rawCanvas = React.useRef(null);
14194
14293
  var cropCanvas = React.useRef(null);
14195
14294
  var resizeCanvas = React.useRef(null);
14196
14295
  var captureStartedAt = React.useRef();
14197
14296
  var operationStartedAt = React.useRef();
14198
- var _s = useSelfieGuidanceModelsContext(),
14199
- start = _s.start,
14200
- stop = _s.stop,
14201
- modelError = _s.error;
14297
+ var _t = useSelfieGuidanceModelsContext(),
14298
+ start = _t.start,
14299
+ stop = _t.stop,
14300
+ modelError = _t.error;
14202
14301
  React.useEffect(function () {
14203
14302
  if (precapturedDocuments === null || precapturedDocuments === void 0 ? void 0 : precapturedDocuments.selfie) {
14204
14303
  setSelfieImage(precapturedDocuments.selfie.imageData);
@@ -14246,9 +14345,9 @@ function SelfieCaptureWizard(_a) {
14246
14345
  status: status
14247
14346
  }));
14248
14347
  }, [captureState, guidesComponent]);
14249
- var _t = React.useState(0),
14250
- attempt = _t[0],
14251
- setAttempt = _t[1];
14348
+ var _u = React.useState(0),
14349
+ attempt = _u[0],
14350
+ setAttempt = _u[1];
14252
14351
  var onExitCallback = React.useCallback(function () {
14253
14352
  setAttempt(function (n) {
14254
14353
  return n + 1;
@@ -14267,6 +14366,9 @@ function SelfieCaptureWizard(_a) {
14267
14366
  }
14268
14367
  }, [cameraAccessDenied]);
14269
14368
  var initialDelayOver = useTimeout(initialCaptureDelayMs, undefined, undefined, undefined, captureState === 'CAPTURING').timedOut;
14369
+ var onLoadingFailedCallback = React.useCallback(function (error) {
14370
+ return onLoadingFailed === null || onLoadingFailed === void 0 ? void 0 : onLoadingFailed(error);
14371
+ }, [onLoadingFailed]);
14270
14372
  if (modelError) {
14271
14373
  return /*#__PURE__*/React__namespace.default.createElement(SelfieCaptureFallback, {
14272
14374
  onFinished: onFallbackImageCaptured,
@@ -14291,6 +14393,7 @@ function SelfieCaptureWizard(_a) {
14291
14393
  guidanceMessage: guidanceMessage,
14292
14394
  guidanceSatisfied: guidanceMessage ? false : undefined,
14293
14395
  guidesComponent: guidesByRequestState,
14396
+ allowManualSelfieCaptureOnLoadingError: allowManualSelfieCaptureOnLoadingError,
14294
14397
  classNames: classNames.capture,
14295
14398
  colors: colors.capture,
14296
14399
  verbiage: verbiage.capture,
@@ -14306,9 +14409,11 @@ function SelfieCaptureWizard(_a) {
14306
14409
  onLoadingStarted: onLoadingStarted,
14307
14410
  onLoadingProgress: onLoadingProgress,
14308
14411
  onLoadingCompleted: onLoadingCompleted,
14412
+ onLoadingFailed: onLoadingFailedCallback,
14309
14413
  onUserCancel: onUserCancel,
14310
14414
  onDismissed: onLoadingOverlayDismissedCallback,
14311
- waitForIdCaptureModels: waitForIdCaptureModels
14415
+ waitForIdCaptureModels: waitForIdCaptureModels,
14416
+ allowManualSelfieCaptureOnLoadingError: allowManualSelfieCaptureOnLoadingError
14312
14417
  })));
14313
14418
  }
14314
14419
 
@@ -14318,6 +14423,7 @@ var VideoSignatureWizard = function VideoSignatureWizard(_a) {
14318
14423
  var onLoadingStarted = _a.onLoadingStarted,
14319
14424
  onLoadingProgress = _a.onLoadingProgress,
14320
14425
  onLoadingCompleted = _a.onLoadingCompleted,
14426
+ onLoadingFailed = _a.onLoadingFailed,
14321
14427
  onSelfieCaptured = _a.onSelfieCaptured,
14322
14428
  onComplete = _a.onComplete,
14323
14429
  onVideoCaptured = _a.onVideoCaptured,
@@ -14346,39 +14452,41 @@ var VideoSignatureWizard = function VideoSignatureWizard(_a) {
14346
14452
  restartVideoOnSignaturePadCleared = _k === void 0 ? true : _k,
14347
14453
  _l = _a.skipLivenessValidation,
14348
14454
  skipLivenessValidation = _l === void 0 ? false : _l,
14455
+ _m = _a.allowManualSelfieCaptureOnLoadingError,
14456
+ allowManualSelfieCaptureOnLoadingError = _m === void 0 ? false : _m,
14349
14457
  faceLivenessProps = _a.faceLivenessProps,
14350
14458
  guidesComponent = _a.guidesComponent,
14351
- _m = _a.assets,
14352
- assets = _m === void 0 ? {} : _m,
14353
- _o = _a.classNames,
14354
- classNames = _o === void 0 ? {} : _o,
14355
- _p = _a.colors,
14356
- colors = _p === void 0 ? {} : _p,
14357
- _q = _a.verbiage,
14358
- verbiage = _q === void 0 ? {} : _q,
14359
- _r = _a.debugMode,
14360
- debugMode = _r === void 0 ? false : _r;
14361
- var _s = useSubmissionContext(),
14362
- selfieImage = _s.selfieImage,
14363
- setSelfieImage = _s.setSelfieImage,
14364
- setSignatureData = _s.setSignatureData,
14365
- setSignatureVideoUrl = _s.setSignatureVideoUrl,
14366
- logSelfieCaptureAttempt = _s.logSelfieCaptureAttempt,
14367
- uploadDocument = _s.uploadDocument;
14459
+ _o = _a.assets,
14460
+ assets = _o === void 0 ? {} : _o,
14461
+ _p = _a.classNames,
14462
+ classNames = _p === void 0 ? {} : _p,
14463
+ _q = _a.colors,
14464
+ colors = _q === void 0 ? {} : _q,
14465
+ _r = _a.verbiage,
14466
+ verbiage = _r === void 0 ? {} : _r,
14467
+ _s = _a.debugMode,
14468
+ debugMode = _s === void 0 ? false : _s;
14469
+ var _t = useSubmissionContext(),
14470
+ selfieImage = _t.selfieImage,
14471
+ setSelfieImage = _t.setSelfieImage,
14472
+ setSignatureData = _t.setSignatureData,
14473
+ setSignatureVideoUrl = _t.setSignatureVideoUrl,
14474
+ logSelfieCaptureAttempt = _t.logSelfieCaptureAttempt,
14475
+ uploadDocument = _t.uploadDocument;
14368
14476
  var cameraAccessDenied = useCameraStore(shallow.useShallow(function (state) {
14369
14477
  return {
14370
14478
  cameraAccessDenied: state.cameraAccessDenied
14371
14479
  };
14372
14480
  })).cameraAccessDenied;
14373
- var _t = React.useState(skipLivenessValidation ? 'CAPTURING_SELFIE' : 'CHECKING_LIVENESS'),
14374
- captureState = _t[0],
14375
- setCaptureState = _t[1];
14481
+ var _u = React.useState(skipLivenessValidation ? 'CAPTURING_SELFIE' : 'CHECKING_LIVENESS'),
14482
+ captureState = _u[0],
14483
+ setCaptureState = _u[1];
14376
14484
  var operationStartedAt = React.useRef();
14377
14485
  var captureStartedAt = React.useRef();
14378
14486
  var captureEndedAt = React.useRef();
14379
- var _u = useSelfieGuidanceModelsContext(),
14380
- start = _u.start,
14381
- stop = _u.stop;
14487
+ var _v = useSelfieGuidanceModelsContext(),
14488
+ start = _v.start,
14489
+ stop = _v.stop;
14382
14490
  React.useEffect(function () {
14383
14491
  operationStartedAt.current = new Date();
14384
14492
  }, []);
@@ -14422,9 +14530,9 @@ var VideoSignatureWizard = function VideoSignatureWizard(_a) {
14422
14530
  filetype: 'image/jpeg'
14423
14531
  }).then(onSelfieCaptured);
14424
14532
  }, [logCaptureMetadata, onSelfieCaptured, setSelfieImage, uploadDocument]);
14425
- var _v = React.useState(null),
14426
- signatureImageUrl = _v[0],
14427
- setSignatureImageUrl = _v[1];
14533
+ var _w = React.useState(null),
14534
+ signatureImageUrl = _w[0],
14535
+ setSignatureImageUrl = _w[1];
14428
14536
  var onSignatureCaptureCompleted = React.useCallback(function (videoData, signatureData, signatureImageData) {
14429
14537
  setSignatureData(signatureData);
14430
14538
  setSignatureVideoUrl(URL.createObjectURL(videoData));
@@ -14432,17 +14540,17 @@ var VideoSignatureWizard = function VideoSignatureWizard(_a) {
14432
14540
  setCaptureState('SUCCESS');
14433
14541
  onVideoCaptured === null || onVideoCaptured === void 0 ? void 0 : onVideoCaptured(videoData, signatureData, signatureImageData);
14434
14542
  }, [onVideoCaptured, setSignatureData, setSignatureVideoUrl]);
14435
- var _w = React.useState(true),
14436
- showLoadingOverlay = _w[0],
14437
- setShowLoadingOverlay = _w[1];
14543
+ var _x = React.useState(true),
14544
+ showLoadingOverlay = _x[0],
14545
+ setShowLoadingOverlay = _x[1];
14438
14546
  var onSignatureCaptureFacesNotDetected = React.useCallback(function () {
14439
14547
  setShowLoadingOverlay(false);
14440
14548
  setCaptureState(skipLivenessValidation ? 'CAPTURING_SELFIE' : 'CHECKING_LIVENESS');
14441
14549
  useVideoSignatureStore.getState().clearRecordedData();
14442
14550
  }, [skipLivenessValidation]);
14443
- var _x = React.useState(0),
14444
- attempt = _x[0],
14445
- setAttempt = _x[1];
14551
+ var _y = React.useState(0),
14552
+ attempt = _y[0],
14553
+ setAttempt = _y[1];
14446
14554
  var onRetry = React.useCallback(function () {
14447
14555
  onRetryClicked === null || onRetryClicked === void 0 ? void 0 : onRetryClicked();
14448
14556
  setAttempt(function (n) {
@@ -14502,6 +14610,7 @@ var VideoSignatureWizard = function VideoSignatureWizard(_a) {
14502
14610
  onLoadingStarted: onLoadingStarted,
14503
14611
  onLoadingProgress: onLoadingProgress,
14504
14612
  onLoadingCompleted: onLoadingCompleted,
14613
+ onLoadingFailed: onLoadingFailed,
14505
14614
  onSuccess: onFaceCaptureSuccess,
14506
14615
  onExitCapture: onExitCapture,
14507
14616
  onUserCancel: onUserCancel,
@@ -14510,6 +14619,7 @@ var VideoSignatureWizard = function VideoSignatureWizard(_a) {
14510
14619
  showLoadingOverlay: showLoadingOverlay,
14511
14620
  customOverlayContent: customOverlayContent,
14512
14621
  loadingOverlayMode: loadingOverlayMode,
14622
+ allowManualSelfieCaptureOnLoadingError: allowManualSelfieCaptureOnLoadingError,
14513
14623
  guidesComponent: resolvedGuidesComponent,
14514
14624
  assets: assets.faceLiveness,
14515
14625
  classNames: classNames.faceLiveness,
@@ -14525,6 +14635,7 @@ var VideoSignatureWizard = function VideoSignatureWizard(_a) {
14525
14635
  onLoadingStarted: onLoadingStarted,
14526
14636
  onLoadingProgress: onLoadingProgress,
14527
14637
  onLoadingCompleted: onLoadingCompleted,
14638
+ onLoadingFailed: onLoadingFailed,
14528
14639
  onLoadingOverlayDismissed: onLoadingOverlayDismissedCallback,
14529
14640
  onCapture: onSelfieCapture,
14530
14641
  onUserCancel: onUserCancel,
@@ -14532,6 +14643,7 @@ var VideoSignatureWizard = function VideoSignatureWizard(_a) {
14532
14643
  showLoadingOverlay: showLoadingOverlay,
14533
14644
  customOverlayContent: customOverlayContent,
14534
14645
  loadingOverlayMode: loadingOverlayMode,
14646
+ allowManualSelfieCaptureOnLoadingError: allowManualSelfieCaptureOnLoadingError,
14535
14647
  guidesComponent: resolvedGuidesComponent,
14536
14648
  assets: assets.faceLiveness,
14537
14649
  classNames: classNames.faceLiveness,
@@ -15500,6 +15612,7 @@ var VideoIdWizard = function VideoIdWizard(_a) {
15500
15612
  onLoadingStarted = _a.onLoadingStarted,
15501
15613
  onLoadingProgress = _a.onLoadingProgress,
15502
15614
  onLoadingCompleted = _a.onLoadingCompleted,
15615
+ onLoadingFailed = _a.onLoadingFailed,
15503
15616
  onLoadingOverlayDismissed = _a.onLoadingOverlayDismissed,
15504
15617
  _t = _a.idDocumentType,
15505
15618
  idDocumentType = _t === void 0 ? 'idCardOrPassport' : _t,
@@ -15661,6 +15774,7 @@ var VideoIdWizard = function VideoIdWizard(_a) {
15661
15774
  onLoadingStarted: onLoadingStarted,
15662
15775
  onLoadingProgress: onLoadingProgress,
15663
15776
  onLoadingCompleted: onLoadingCompleted,
15777
+ onLoadingFailed: onLoadingFailed,
15664
15778
  onLoadingOverlayDismissed: onLoadingOverlayDismissed,
15665
15779
  silentFallback: silentFallback,
15666
15780
  guideImages: idCaptureGuideImages
@@ -15688,6 +15802,7 @@ var VideoIdWizard = function VideoIdWizard(_a) {
15688
15802
  onLoadingStarted: onLoadingStarted,
15689
15803
  onLoadingProgress: onLoadingProgress,
15690
15804
  onLoadingCompleted: onLoadingCompleted,
15805
+ onLoadingFailed: onLoadingFailed,
15691
15806
  onLoadingOverlayDismissed: onLoadingOverlayDismissed,
15692
15807
  silentFallback: silentFallback
15693
15808
  }, faceLivenessProps, {
@@ -16038,7 +16153,7 @@ var defaultTheme = {
16038
16153
  },
16039
16154
  guidanceMessages: {
16040
16155
  "default": {
16041
- backgroundColor: 'var(--idm-color-secondary-200)',
16156
+ backgroundColor: 'white',
16042
16157
  textColor: 'black'
16043
16158
  },
16044
16159
  positive: {
@@ -16272,6 +16387,7 @@ var IdValidation = function IdValidation(_a) {
16272
16387
  onLoadingStarted = _a.onLoadingStarted,
16273
16388
  onLoadingProgress = _a.onLoadingProgress,
16274
16389
  onLoadingCompleted = _a.onLoadingCompleted,
16390
+ onLoadingFailed = _a.onLoadingFailed,
16275
16391
  onAuthError = _a.onAuthError,
16276
16392
  onBeforeSubmit = _a.onBeforeSubmit,
16277
16393
  onBeforeDocumentUpload = _a.onBeforeDocumentUpload,
@@ -16318,6 +16434,7 @@ var IdValidation = function IdValidation(_a) {
16318
16434
  onLoadingStarted: onLoadingStarted,
16319
16435
  onLoadingProgress: onLoadingProgress,
16320
16436
  onLoadingCompleted: onLoadingCompleted,
16437
+ onLoadingFailed: onLoadingFailed,
16321
16438
  onExitCapture: onExitCapture,
16322
16439
  onUserCancel: onUserCancel,
16323
16440
  onModelError: onModelError,
@@ -16349,7 +16466,7 @@ var IdValidation = function IdValidation(_a) {
16349
16466
  verbiage: verbiage,
16350
16467
  debugMode: debugMode
16351
16468
  };
16352
- }, [onLoadingStarted, onLoadingProgress, onLoadingCompleted, onExitCapture, onUserCancel, onModelError, onDocumentCaptured, precapturedDocuments, idCaptureRequirement, allowSinglePageIdCapture, separateIdCardCaptureSequence, idCaptureThresholds, skipSuccessScreen, loadingOverlayMode, customOverlayContent, onLoadingOverlayDismissed, forceFallbackMode, silentFallback, allowIdCardBackToFrontCapture, allowUploadingDocumentsFromStorage, instructions, guideType, guideImages, portraitGuidesOnMobile, rotateLoadingOverlayImageWhenPortrait, modelLoadTimeoutMs, enableOverrideWrongDocumentTypeDialog, allowOverrideWrongDocumentTypeAfterMs, assets, classNames, colors, verbiage, debugMode]);
16469
+ }, [onLoadingStarted, onLoadingProgress, onLoadingCompleted, onLoadingFailed, onExitCapture, onUserCancel, onModelError, onDocumentCaptured, precapturedDocuments, idCaptureRequirement, allowSinglePageIdCapture, separateIdCardCaptureSequence, idCaptureThresholds, skipSuccessScreen, loadingOverlayMode, customOverlayContent, onLoadingOverlayDismissed, forceFallbackMode, silentFallback, allowIdCardBackToFrontCapture, allowUploadingDocumentsFromStorage, instructions, guideType, guideImages, portraitGuidesOnMobile, rotateLoadingOverlayImageWhenPortrait, modelLoadTimeoutMs, enableOverrideWrongDocumentTypeDialog, allowOverrideWrongDocumentTypeAfterMs, assets, classNames, colors, verbiage, debugMode]);
16353
16470
  var additionalDocumentCaptureProps = React.useMemo(function () {
16354
16471
  return {
16355
16472
  documents: captureAdditionalDocuments,
@@ -16482,6 +16599,7 @@ var FaceValidation = function FaceValidation(_a) {
16482
16599
  onLoadingStarted = _a.onLoadingStarted,
16483
16600
  onLoadingProgress = _a.onLoadingProgress,
16484
16601
  onLoadingCompleted = _a.onLoadingCompleted,
16602
+ onLoadingFailed = _a.onLoadingFailed,
16485
16603
  onAuthError = _a.onAuthError,
16486
16604
  onBeforeDocumentUpload = _a.onBeforeDocumentUpload,
16487
16605
  onDocumentUploadProgress = _a.onDocumentUploadProgress,
@@ -16522,6 +16640,7 @@ var FaceValidation = function FaceValidation(_a) {
16522
16640
  onLoadingStarted: onLoadingStarted,
16523
16641
  onLoadingProgress: onLoadingProgress,
16524
16642
  onLoadingCompleted: onLoadingCompleted,
16643
+ onLoadingFailed: onLoadingFailed,
16525
16644
  onComplete: onComplete,
16526
16645
  onSuccess: onApproved,
16527
16646
  onDenied: onDenied,
@@ -16535,7 +16654,7 @@ var FaceValidation = function FaceValidation(_a) {
16535
16654
  verbiage: verbiage,
16536
16655
  debugMode: debugMode
16537
16656
  };
16538
- }, [assets, classNames, colors, debugMode, initialCaptureDelayMs, loadingOverlayMode, modelLoadTimeoutMs, onApproved, onComplete, onDenied, onExitAfterFailure, onExitCapture, onLoadingCompleted, onLoadingProgress, onLoadingStarted, onModelError, onUserCancel, skipSuccessScreen, timeoutDurationMs, verbiage]);
16657
+ }, [assets, classNames, colors, debugMode, initialCaptureDelayMs, loadingOverlayMode, modelLoadTimeoutMs, onApproved, onComplete, onDenied, onExitAfterFailure, onExitCapture, onLoadingCompleted, onLoadingFailed, onLoadingProgress, onLoadingStarted, onModelError, onUserCancel, skipSuccessScreen, timeoutDurationMs, verbiage]);
16539
16658
  return /*#__PURE__*/React__namespace.default.createElement(AuthProvider, {
16540
16659
  sessionId: sessionId,
16541
16660
  authUrl: authUrl,
@@ -16662,6 +16781,7 @@ var IdAndFaceValidation = function IdAndFaceValidation(_a) {
16662
16781
  onLoadingStarted = _a.onLoadingStarted,
16663
16782
  onLoadingProgress = _a.onLoadingProgress,
16664
16783
  onLoadingCompleted = _a.onLoadingCompleted,
16784
+ onLoadingFailed = _a.onLoadingFailed,
16665
16785
  onAuthError = _a.onAuthError,
16666
16786
  onBeforeDocumentUpload = _a.onBeforeDocumentUpload,
16667
16787
  onDocumentUploaded = _a.onDocumentUploaded,
@@ -16710,6 +16830,7 @@ var IdAndFaceValidation = function IdAndFaceValidation(_a) {
16710
16830
  onLoadingStarted: onLoadingStarted,
16711
16831
  onLoadingProgress: onLoadingProgress,
16712
16832
  onLoadingCompleted: onLoadingCompleted,
16833
+ onLoadingFailed: onLoadingFailed,
16713
16834
  onExitCapture: onExitCapture,
16714
16835
  onUserCancel: onUserCancel,
16715
16836
  onModelError: onIdCaptureModelError,
@@ -16737,12 +16858,13 @@ var IdAndFaceValidation = function IdAndFaceValidation(_a) {
16737
16858
  skipSuccessScreen: skipSuccessScreen,
16738
16859
  debugMode: debugMode
16739
16860
  };
16740
- }, [onLoadingStarted, onLoadingProgress, onLoadingCompleted, onExitCapture, onUserCancel, onIdCaptureModelError, assets.idCapture, classNames.idCapture, colors.idCapture, verbiage.idCapture, precapturedDocuments, idCaptureRequirement, allowSinglePageIdCapture, idCaptureThresholds, idCaptureLoadingOverlayMode, idCaptureInstructions, idCaptureGuideType, idCaptureGuideImages, idCapturePortraitGuidesOnMobile, idCaptureRotateLoadingOverlayImageWhenPortrait, idCaptureModelLoadTimeoutMs, allowIdCardBackToFrontCapture, idCaptureAllowUploadingDocumentsFromStorage, enableOverrideWrongDocumentTypeDialog, allowOverrideWrongDocumentTypeAfterMs, idCaptureForceFallbackMode, separateIdCardCaptureSequence, skipSuccessScreen, debugMode]);
16861
+ }, [onLoadingStarted, onLoadingProgress, onLoadingCompleted, onLoadingFailed, onExitCapture, onUserCancel, onIdCaptureModelError, assets.idCapture, classNames.idCapture, colors.idCapture, verbiage.idCapture, precapturedDocuments, idCaptureRequirement, allowSinglePageIdCapture, idCaptureThresholds, idCaptureLoadingOverlayMode, idCaptureInstructions, idCaptureGuideType, idCaptureGuideImages, idCapturePortraitGuidesOnMobile, idCaptureRotateLoadingOverlayImageWhenPortrait, idCaptureModelLoadTimeoutMs, allowIdCardBackToFrontCapture, idCaptureAllowUploadingDocumentsFromStorage, enableOverrideWrongDocumentTypeDialog, allowOverrideWrongDocumentTypeAfterMs, idCaptureForceFallbackMode, separateIdCardCaptureSequence, skipSuccessScreen, debugMode]);
16741
16862
  var faceLivenessProps = React.useMemo(function () {
16742
16863
  return {
16743
16864
  onLoadingStarted: onLoadingStarted,
16744
16865
  onLoadingProgress: onLoadingProgress,
16745
16866
  onLoadingCompleted: onLoadingCompleted,
16867
+ onLoadingFailed: onLoadingFailed,
16746
16868
  loadingOverlayMode: faceLivenessLoadingOverlayMode,
16747
16869
  initialCaptureDelayMs: faceLivenessInitialCaptureDelayMs,
16748
16870
  timeoutDurationMs: faceLivenessTimeoutDurationMs,
@@ -16760,7 +16882,7 @@ var IdAndFaceValidation = function IdAndFaceValidation(_a) {
16760
16882
  verbiage: verbiage.faceLiveness,
16761
16883
  debugMode: debugMode
16762
16884
  };
16763
- }, [assets.faceLiveness, classNames.faceLiveness, colors.faceLiveness, debugMode, faceLivenessInitialCaptureDelayMs, faceLivenessLoadingOverlayMode, faceLivenessTimeoutDurationMs, onDenied, onExitAfterFailure, onExitCapture, onLoadingCompleted, onLoadingProgress, onLoadingStarted, onSelfieCaptureModelError, onUserCancel, precapturedDocuments, selfieCaptureModelLoadTimeoutMs, skipSuccessScreen, verbiage.faceLiveness]);
16885
+ }, [assets.faceLiveness, classNames.faceLiveness, colors.faceLiveness, debugMode, faceLivenessInitialCaptureDelayMs, faceLivenessLoadingOverlayMode, faceLivenessTimeoutDurationMs, onDenied, onExitAfterFailure, onExitCapture, onLoadingCompleted, onLoadingFailed, onLoadingProgress, onLoadingStarted, onSelfieCaptureModelError, onUserCancel, precapturedDocuments, selfieCaptureModelLoadTimeoutMs, skipSuccessScreen, verbiage.faceLiveness]);
16764
16886
  var additionalDocumentCaptureProps = React.useMemo(function () {
16765
16887
  return {
16766
16888
  documents: captureAdditionalDocuments,
@@ -16940,6 +17062,7 @@ var CustomerIdAndBiometricsEnrollment = function CustomerIdAndBiometricsEnrollme
16940
17062
  onLoadingStarted = _a.onLoadingStarted,
16941
17063
  onLoadingProgress = _a.onLoadingProgress,
16942
17064
  onLoadingCompleted = _a.onLoadingCompleted,
17065
+ onLoadingFailed = _a.onLoadingFailed,
16943
17066
  onAuthError = _a.onAuthError,
16944
17067
  onBeforeDocumentUpload = _a.onBeforeDocumentUpload,
16945
17068
  onDocumentUploadProgress = _a.onDocumentUploadProgress,
@@ -16990,6 +17113,7 @@ var CustomerIdAndBiometricsEnrollment = function CustomerIdAndBiometricsEnrollme
16990
17113
  onLoadingStarted: onLoadingStarted,
16991
17114
  onLoadingProgress: onLoadingProgress,
16992
17115
  onLoadingCompleted: onLoadingCompleted,
17116
+ onLoadingFailed: onLoadingFailed,
16993
17117
  assets: assets.idCapture,
16994
17118
  classNames: classNames.idCapture,
16995
17119
  colors: colors.idCapture,
@@ -17017,12 +17141,13 @@ var CustomerIdAndBiometricsEnrollment = function CustomerIdAndBiometricsEnrollme
17017
17141
  skipSuccessScreen: skipSuccessScreen,
17018
17142
  debugMode: debugMode
17019
17143
  };
17020
- }, [onLoadingCompleted, onLoadingProgress, onLoadingStarted, assets.idCapture, classNames.idCapture, colors.idCapture, verbiage.idCapture, precapturedDocuments, idCaptureRequirement, allowSinglePageIdCapture, idCaptureThresholds, idCaptureLoadingOverlayMode, idCaptureInstructions, idCaptureGuideType, idCaptureGuideImages, idCapturePortraitGuidesOnMobile, idCaptureRotateLoadingOverlayImageWhenPortrait, idCaptureModelLoadTimeoutMs, allowIdCardBackToFrontCapture, idCaptureForceFallbackMode, enableOverrideWrongDocumentTypeDialog, allowOverrideWrongDocumentTypeAfterMs, allowUploadingDocumentsFromStorage, separateIdCardCaptureSequence, onExitCapture, onUserCancel, onIdCaptureModelError, skipSuccessScreen, debugMode]);
17144
+ }, [onLoadingCompleted, onLoadingProgress, onLoadingStarted, onLoadingFailed, assets.idCapture, classNames.idCapture, colors.idCapture, verbiage.idCapture, precapturedDocuments, idCaptureRequirement, allowSinglePageIdCapture, idCaptureThresholds, idCaptureLoadingOverlayMode, idCaptureInstructions, idCaptureGuideType, idCaptureGuideImages, idCapturePortraitGuidesOnMobile, idCaptureRotateLoadingOverlayImageWhenPortrait, idCaptureModelLoadTimeoutMs, allowIdCardBackToFrontCapture, idCaptureForceFallbackMode, enableOverrideWrongDocumentTypeDialog, allowOverrideWrongDocumentTypeAfterMs, allowUploadingDocumentsFromStorage, separateIdCardCaptureSequence, onExitCapture, onUserCancel, onIdCaptureModelError, skipSuccessScreen, debugMode]);
17021
17145
  var faceLivenessProps = React.useMemo(function () {
17022
17146
  return {
17023
17147
  onLoadingStarted: onLoadingStarted,
17024
17148
  onLoadingProgress: onLoadingProgress,
17025
17149
  onLoadingCompleted: onLoadingCompleted,
17150
+ onLoadingFailed: onLoadingFailed,
17026
17151
  onExitCapture: onExitCapture,
17027
17152
  onExitAfterFailure: onExitAfterFailure,
17028
17153
  onUserCancel: onUserCancel,
@@ -17039,7 +17164,7 @@ var CustomerIdAndBiometricsEnrollment = function CustomerIdAndBiometricsEnrollme
17039
17164
  verbiage: verbiage.faceLiveness,
17040
17165
  debugMode: debugMode
17041
17166
  };
17042
- }, [onLoadingCompleted, onLoadingProgress, onLoadingStarted, assets.faceLiveness, classNames.faceLiveness, colors.faceLiveness, debugMode, faceLivenessInitialCaptureDelayMs, faceLivenessLoadingOverlayMode, faceLivenessTimeoutDurationMs, onExitAfterFailure, onExitCapture, onSelfieCaptureModelError, onUserCancel, precapturedDocuments, selfieCaptureModelLoadTimeoutMs, skipSuccessScreen, verbiage.faceLiveness]);
17167
+ }, [onLoadingCompleted, onLoadingProgress, onLoadingStarted, onLoadingFailed, assets.faceLiveness, classNames.faceLiveness, colors.faceLiveness, debugMode, faceLivenessInitialCaptureDelayMs, faceLivenessLoadingOverlayMode, faceLivenessTimeoutDurationMs, onExitAfterFailure, onExitCapture, onSelfieCaptureModelError, onUserCancel, precapturedDocuments, selfieCaptureModelLoadTimeoutMs, skipSuccessScreen, verbiage.faceLiveness]);
17043
17168
  var videoIdCaptureProps = React.useMemo(function () {
17044
17169
  return _assign({
17045
17170
  onExitCapture: onExitCapture,
@@ -17159,11 +17284,7 @@ var CustomerIdAndBiometricsEnrollment = function CustomerIdAndBiometricsEnrollme
17159
17284
 
17160
17285
  var ALLOWED_RETRIES$3 = 0;
17161
17286
  var initialState$1 = {
17162
- frame: null,
17163
- face: null,
17164
- imageUrl: null,
17165
17287
  requestState: 'CAPTURING',
17166
- requestError: null,
17167
17288
  unverifiedTimes: 0
17168
17289
  };
17169
17290
  var reducer$1 = function reducer(state, action) {
@@ -17254,7 +17375,7 @@ var CustomerVerificationCapture = function CustomerVerificationCapture(_a) {
17254
17375
  submissionError = _j.submissionError,
17255
17376
  selfieImage = _j.selfieImage,
17256
17377
  setSelfieImage = _j.setSelfieImage;
17257
- var _k = React.useState(null),
17378
+ var _k = React.useState(),
17258
17379
  imageUrl = _k[0],
17259
17380
  setImageUrl = _k[1];
17260
17381
  var rawCanvas = React.useRef(null);
@@ -17274,9 +17395,7 @@ var CustomerVerificationCapture = function CustomerVerificationCapture(_a) {
17274
17395
  if (!frame || !face || submissionError) return;
17275
17396
  var imageUrl = cropToShoulders(rawCanvas.current, cropCanvas.current, resizeCanvas.current, frame, face);
17276
17397
  setImageUrl(imageUrl);
17277
- dataUrlToBase64(imageUrl).then(function (img) {
17278
- setSelfieImage(img);
17279
- });
17398
+ dataUrlToBase64(imageUrl).then(setSelfieImage);
17280
17399
  }, [face, frame, setSelfieImage, submissionError]);
17281
17400
  React.useEffect(function () {
17282
17401
  if (!isReady || !selfieImage || submissionError) return;
@@ -17458,6 +17577,7 @@ var CustomerVerificationWizard = function CustomerVerificationWizard(_a) {
17458
17577
  var onLoadingStarted = _a.onLoadingStarted,
17459
17578
  onLoadingProgress = _a.onLoadingProgress,
17460
17579
  onLoadingCompleted = _a.onLoadingCompleted,
17580
+ onLoadingFailed = _a.onLoadingFailed,
17461
17581
  onComplete = _a.onComplete,
17462
17582
  onCustomerMatched = _a.onCustomerMatched,
17463
17583
  onCustomerNotMatched = _a.onCustomerNotMatched,
@@ -17606,6 +17726,7 @@ var CustomerVerificationWizard = function CustomerVerificationWizard(_a) {
17606
17726
  onLoadingStarted: onLoadingStarted,
17607
17727
  onLoadingProgress: onLoadingProgress,
17608
17728
  onLoadingCompleted: onLoadingCompleted,
17729
+ onLoadingFailed: onLoadingFailed,
17609
17730
  onUserCancel: onUserCancel,
17610
17731
  onDismissed: function onDismissed() {
17611
17732
  return setCaptureState('CAPTURING');
@@ -17653,6 +17774,7 @@ var CustomerVerification = function CustomerVerification(_a) {
17653
17774
  onLoadingStarted = _a.onLoadingStarted,
17654
17775
  onLoadingProgress = _a.onLoadingProgress,
17655
17776
  onLoadingCompleted = _a.onLoadingCompleted,
17777
+ onLoadingFailed = _a.onLoadingFailed,
17656
17778
  onAuthError = _a.onAuthError,
17657
17779
  onBeforeDocumentUpload = _a.onBeforeDocumentUpload,
17658
17780
  onDocumentUploadProgress = _a.onDocumentUploadProgress,
@@ -17726,6 +17848,7 @@ var CustomerVerification = function CustomerVerification(_a) {
17726
17848
  onLoadingStarted: onLoadingStarted,
17727
17849
  onLoadingProgress: onLoadingProgress,
17728
17850
  onLoadingCompleted: onLoadingCompleted,
17851
+ onLoadingFailed: onLoadingFailed,
17729
17852
  onComplete: onComplete,
17730
17853
  onCustomerMatched: onCustomerMatched,
17731
17854
  onCustomerNotMatched: onCustomerNotMatched,
@@ -17745,11 +17868,7 @@ var CustomerVerification = function CustomerVerification(_a) {
17745
17868
 
17746
17869
  var ALLOWED_RETRIES$1 = 0;
17747
17870
  var initialState = {
17748
- frame: null,
17749
- face: null,
17750
- imageUrl: null,
17751
17871
  requestState: 'CAPTURING',
17752
- requestError: null,
17753
17872
  notFoundTimes: 0
17754
17873
  };
17755
17874
  var reducer = function reducer(state, action) {
@@ -17836,7 +17955,7 @@ var CustomerIdentificationCapture = function CustomerIdentificationCapture(_a) {
17836
17955
  submissionError = _j.submissionError,
17837
17956
  selfieImage = _j.selfieImage,
17838
17957
  setSelfieImage = _j.setSelfieImage;
17839
- var _k = React.useState(null),
17958
+ var _k = React.useState(),
17840
17959
  imageUrl = _k[0],
17841
17960
  setImageUrl = _k[1];
17842
17961
  var rawCanvas = React.useRef(null);
@@ -17858,9 +17977,7 @@ var CustomerIdentificationCapture = function CustomerIdentificationCapture(_a) {
17858
17977
  if (!frame || !face || submissionError) return;
17859
17978
  var imageUrl = cropToShoulders(rawCanvas.current, cropCanvas.current, resizeCanvas.current, frame, face);
17860
17979
  setImageUrl(imageUrl);
17861
- dataUrlToBase64(imageUrl).then(function (img) {
17862
- setSelfieImage(img);
17863
- });
17980
+ dataUrlToBase64(imageUrl).then(setSelfieImage);
17864
17981
  }, [face, frame, setSelfieImage, submissionError]);
17865
17982
  React.useEffect(function () {
17866
17983
  if (!isReady || !selfieImage || submissionError) return;
@@ -18042,6 +18159,7 @@ var CustomerIdentificationWizard = function CustomerIdentificationWizard(_a) {
18042
18159
  var onLoadingStarted = _a.onLoadingStarted,
18043
18160
  onLoadingProgress = _a.onLoadingProgress,
18044
18161
  onLoadingCompleted = _a.onLoadingCompleted,
18162
+ onLoadingFailed = _a.onLoadingFailed,
18045
18163
  onComplete = _a.onComplete,
18046
18164
  onCustomerMatched = _a.onCustomerMatched,
18047
18165
  onCustomerNotMatched = _a.onCustomerNotMatched,
@@ -18190,6 +18308,7 @@ var CustomerIdentificationWizard = function CustomerIdentificationWizard(_a) {
18190
18308
  onLoadingStarted: onLoadingStarted,
18191
18309
  onLoadingProgress: onLoadingProgress,
18192
18310
  onLoadingCompleted: onLoadingCompleted,
18311
+ onLoadingFailed: onLoadingFailed,
18193
18312
  onUserCancel: onUserCancel,
18194
18313
  onDismissed: function onDismissed() {
18195
18314
  setCaptureState('CAPTURING');
@@ -18230,6 +18349,7 @@ var CustomerIdentification = function CustomerIdentification(_a) {
18230
18349
  onLoadingStarted = _a.onLoadingStarted,
18231
18350
  onLoadingProgress = _a.onLoadingProgress,
18232
18351
  onLoadingCompleted = _a.onLoadingCompleted,
18352
+ onLoadingFailed = _a.onLoadingFailed,
18233
18353
  onAuthError = _a.onAuthError,
18234
18354
  onBeforeDocumentUpload = _a.onBeforeDocumentUpload,
18235
18355
  onDocumentUploadProgress = _a.onDocumentUploadProgress,
@@ -18308,6 +18428,7 @@ var CustomerIdentification = function CustomerIdentification(_a) {
18308
18428
  onLoadingStarted: onLoadingStarted,
18309
18429
  onLoadingProgress: onLoadingProgress,
18310
18430
  onLoadingCompleted: onLoadingCompleted,
18431
+ onLoadingFailed: onLoadingFailed,
18311
18432
  onComplete: onComplete,
18312
18433
  onCustomerMatched: onCustomerMatched,
18313
18434
  onCustomerNotMatched: onCustomerNotMatched,
@@ -18342,6 +18463,7 @@ var SignatureKYC = function SignatureKYC(_a) {
18342
18463
  onLoadingStarted = _a.onLoadingStarted,
18343
18464
  onLoadingProgress = _a.onLoadingProgress,
18344
18465
  onLoadingCompleted = _a.onLoadingCompleted,
18466
+ onLoadingFailed = _a.onLoadingFailed,
18345
18467
  onAuthError = _a.onAuthError,
18346
18468
  onBeforeDocumentUpload = _a.onBeforeDocumentUpload,
18347
18469
  onDocumentUploadProgress = _a.onDocumentUploadProgress,
@@ -18382,16 +18504,18 @@ var SignatureKYC = function SignatureKYC(_a) {
18382
18504
  faceLivenessProps = _a.faceLivenessProps,
18383
18505
  _o = _a.skipLivenessValidation,
18384
18506
  skipLivenessValidation = _o === void 0 ? false : _o,
18507
+ _p = _a.allowManualSelfieCaptureOnLoadingError,
18508
+ allowManualSelfieCaptureOnLoadingError = _p === void 0 ? false : _p,
18385
18509
  guidesComponent = _a.guidesComponent,
18386
- _p = _a.theme,
18387
- theme = _p === void 0 ? 'default' : _p,
18510
+ _q = _a.theme,
18511
+ theme = _q === void 0 ? 'default' : _q,
18388
18512
  classNames = _a.classNames,
18389
18513
  colors = _a.colors,
18390
18514
  verbiage = _a.verbiage,
18391
18515
  geolocationEnabled = _a.geolocationEnabled,
18392
18516
  geolocationRequired = _a.geolocationRequired,
18393
- _q = _a.debugMode,
18394
- debugMode = _q === void 0 ? false : _q;
18517
+ _r = _a.debugMode,
18518
+ debugMode = _r === void 0 ? false : _r;
18395
18519
  useLanguage(lang);
18396
18520
  useDebugLogging(debugMode);
18397
18521
  return /*#__PURE__*/React__namespace.default.createElement(AuthProvider, {
@@ -18434,6 +18558,7 @@ var SignatureKYC = function SignatureKYC(_a) {
18434
18558
  onLoadingStarted: onLoadingStarted,
18435
18559
  onLoadingProgress: onLoadingProgress,
18436
18560
  onLoadingCompleted: onLoadingCompleted,
18561
+ onLoadingFailed: onLoadingFailed,
18437
18562
  onSelfieCaptured: onSelfieCaptured,
18438
18563
  customOverlayContent: customOverlayContent,
18439
18564
  onLoadingOverlayDismissed: onLoadingOverlayDismissed,
@@ -18449,6 +18574,7 @@ var SignatureKYC = function SignatureKYC(_a) {
18449
18574
  allowSignatureAfterLivenessCheckFailure: allowSignatureAfterLivenessCheckFailure,
18450
18575
  restartVideoOnSignaturePadCleared: restartVideoOnSignaturePadCleared,
18451
18576
  skipLivenessValidation: skipLivenessValidation,
18577
+ allowManualSelfieCaptureOnLoadingError: allowManualSelfieCaptureOnLoadingError,
18452
18578
  guidesComponent: guidesComponent,
18453
18579
  classNames: classNames,
18454
18580
  colors: colors,
@@ -18457,7 +18583,7 @@ var SignatureKYC = function SignatureKYC(_a) {
18457
18583
  onModelError: onModelError,
18458
18584
  onUserCancel: onUserCancel
18459
18585
  };
18460
- }, [onLoadingStarted, onLoadingProgress, onLoadingCompleted, onSelfieCaptured, customOverlayContent, onLoadingOverlayDismissed, loadingOverlayMode, skipSuccessScreen, captureAudio, minSignaturePadPoints, headTrackingDisabled, headTrackingBoundaryPercentage, headTrackingBoundaryType, modelLoadTimeoutMs, faceLivenessProps, allowSignatureAfterLivenessCheckFailure, restartVideoOnSignaturePadCleared, skipLivenessValidation, guidesComponent, classNames, colors, debugMode, verbiage, onModelError, onUserCancel])
18586
+ }, [onLoadingStarted, onLoadingProgress, onLoadingCompleted, onLoadingFailed, onSelfieCaptured, customOverlayContent, onLoadingOverlayDismissed, loadingOverlayMode, skipSuccessScreen, captureAudio, minSignaturePadPoints, headTrackingDisabled, headTrackingBoundaryPercentage, headTrackingBoundaryType, modelLoadTimeoutMs, faceLivenessProps, allowSignatureAfterLivenessCheckFailure, restartVideoOnSignaturePadCleared, skipLivenessValidation, allowManualSelfieCaptureOnLoadingError, guidesComponent, classNames, colors, debugMode, verbiage, onModelError, onUserCancel])
18461
18587
  })))));
18462
18588
  };
18463
18589
 
@@ -18498,6 +18624,7 @@ var VideoIdValidation = function VideoIdValidation(_a) {
18498
18624
  onLoadingStarted = _a.onLoadingStarted,
18499
18625
  onLoadingProgress = _a.onLoadingProgress,
18500
18626
  onLoadingCompleted = _a.onLoadingCompleted,
18627
+ onLoadingFailed = _a.onLoadingFailed,
18501
18628
  onAuthError = _a.onAuthError,
18502
18629
  onBeforeDocumentUpload = _a.onBeforeDocumentUpload,
18503
18630
  onDocumentUploadProgress = _a.onDocumentUploadProgress,
@@ -18586,6 +18713,7 @@ var VideoIdValidation = function VideoIdValidation(_a) {
18586
18713
  onLoadingStarted: onLoadingStarted,
18587
18714
  onLoadingProgress: onLoadingProgress,
18588
18715
  onLoadingCompleted: onLoadingCompleted,
18716
+ onLoadingFailed: onLoadingFailed,
18589
18717
  idCaptureProps: idCaptureProps,
18590
18718
  faceLivenessProps: faceLivenessProps,
18591
18719
  idCaptureModelsEnabled: idCaptureModelsEnabled,
@@ -18618,7 +18746,7 @@ var VideoIdValidation = function VideoIdValidation(_a) {
18618
18746
  verbiage: verbiage,
18619
18747
  debugMode: debugMode
18620
18748
  };
18621
- }, [onLoadingStarted, onLoadingProgress, onLoadingCompleted, idCaptureProps, faceLivenessProps, idCaptureModelsEnabled, videoIdCaptureThresholds, readTextPrompt, readTextTimeoutDurationMs, readTextMinReadingMs, onExitCapture, onExitAfterFailure, onUserCancel, skipSuccessScreen, skipIdCapture, skipShowIdCardBack, idCaptureLoadingOverlayMode, customOverlayContent, onLoadingOverlayDismissed, idDocumentType, idCaptureGuideType, idCaptureGuideImages, idCapturePortraitGuidesOnMobile, idCaptureRotateLoadingOverlayImageWhenPortrait, faceLivenessLoadingOverlayMode, disableFaceDetectionWhileAudioCapture, disableFaceDetectionWhileAudioCaptureMsDelay, silentFallback, mergeAVStreams, assets, classNames, colors, verbiage, debugMode]);
18749
+ }, [onLoadingStarted, onLoadingProgress, onLoadingCompleted, onLoadingFailed, idCaptureProps, faceLivenessProps, idCaptureModelsEnabled, videoIdCaptureThresholds, readTextPrompt, readTextTimeoutDurationMs, readTextMinReadingMs, onExitCapture, onExitAfterFailure, onUserCancel, skipSuccessScreen, skipIdCapture, skipShowIdCardBack, idCaptureLoadingOverlayMode, customOverlayContent, onLoadingOverlayDismissed, idDocumentType, idCaptureGuideType, idCaptureGuideImages, idCapturePortraitGuidesOnMobile, idCaptureRotateLoadingOverlayImageWhenPortrait, faceLivenessLoadingOverlayMode, disableFaceDetectionWhileAudioCapture, disableFaceDetectionWhileAudioCaptureMsDelay, silentFallback, mergeAVStreams, assets, classNames, colors, verbiage, debugMode]);
18622
18750
  var additionalDocumentCaptureProps = React.useMemo(function () {
18623
18751
  return {
18624
18752
  documents: captureAdditionalDocuments,
@@ -18745,6 +18873,7 @@ var CustomerBiometricsEnrollment = function CustomerBiometricsEnrollment(_a) {
18745
18873
  onLoadingStarted = _a.onLoadingStarted,
18746
18874
  onLoadingProgress = _a.onLoadingProgress,
18747
18875
  onLoadingCompleted = _a.onLoadingCompleted,
18876
+ onLoadingFailed = _a.onLoadingFailed,
18748
18877
  onAuthError = _a.onAuthError,
18749
18878
  onBeforeDocumentUpload = _a.onBeforeDocumentUpload,
18750
18879
  onDocumentUploadProgress = _a.onDocumentUploadProgress,
@@ -18791,6 +18920,7 @@ var CustomerBiometricsEnrollment = function CustomerBiometricsEnrollment(_a) {
18791
18920
  onLoadingStarted: onLoadingStarted,
18792
18921
  onLoadingProgress: onLoadingProgress,
18793
18922
  onLoadingCompleted: onLoadingCompleted,
18923
+ onLoadingFailed: onLoadingFailed,
18794
18924
  onExitCapture: onExitCapture,
18795
18925
  onUserCancel: onUserCancel,
18796
18926
  onExitAfterFailure: onExitAfterFailure,
@@ -18806,7 +18936,7 @@ var CustomerBiometricsEnrollment = function CustomerBiometricsEnrollment(_a) {
18806
18936
  verbiage: verbiage.faceLiveness,
18807
18937
  debugMode: debugMode
18808
18938
  };
18809
- }, [assets.faceLiveness, classNames.faceLiveness, colors.faceLiveness, debugMode, initialCaptureDelayMs, loadingOverlayMode, modelLoadTimeoutMs, onExitAfterFailure, onExitCapture, onLoadingCompleted, onLoadingProgress, onLoadingStarted, onModelError, onUserCancel, skipSuccessScreen, timeoutDurationMs, verbiage.faceLiveness]);
18939
+ }, [assets.faceLiveness, classNames.faceLiveness, colors.faceLiveness, debugMode, initialCaptureDelayMs, loadingOverlayMode, modelLoadTimeoutMs, onExitAfterFailure, onExitCapture, onLoadingCompleted, onLoadingFailed, onLoadingProgress, onLoadingStarted, onModelError, onUserCancel, skipSuccessScreen, timeoutDurationMs, verbiage.faceLiveness]);
18810
18940
  var additionalDocumentCaptureProps = React.useMemo(function () {
18811
18941
  return {
18812
18942
  documents: captureAdditionalDocuments,