idmission-web-sdk 0.0.71 → 0.0.73

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 (40) hide show
  1. package/README.md +24 -0
  2. package/dist/components/additional_document_capture/AdditionalDocumentCapture.d.ts +7 -3
  3. package/dist/components/additional_document_capture/AdditionalDocumentCaptureWizard.d.ts +3 -6
  4. package/dist/components/camera/CameraAccessDeniedOverlay.d.ts +5 -4
  5. package/dist/components/common/SelfieProgressPreview.d.ts +4 -0
  6. package/dist/components/customer_flows/CustomerBiometricsEnrollment.d.ts +2 -2
  7. package/dist/components/customer_flows/CustomerIdAndBiometricsEnrollment.d.ts +2 -2
  8. package/dist/components/customer_flows/IdAndFaceValidation.d.ts +2 -2
  9. package/dist/components/customer_flows/IdValidation.d.ts +2 -2
  10. package/dist/components/customer_identification/CustomerIdentificationFailure.d.ts +5 -4
  11. package/dist/components/customer_identification/CustomerIdentificationSuccess.d.ts +5 -4
  12. package/dist/components/customer_verification/CustomerVerificationFailure.d.ts +5 -4
  13. package/dist/components/customer_verification/CustomerVerificationSuccess.d.ts +5 -4
  14. package/dist/components/face_liveness/FaceLivenessCapture.d.ts +5 -4
  15. package/dist/components/face_liveness/FaceLivenessFailure.d.ts +5 -4
  16. package/dist/components/face_liveness/FaceLivenessSuccess.d.ts +5 -4
  17. package/dist/components/id_capture/FlipIdPrompt.d.ts +2 -1
  18. package/dist/components/id_capture/IdCapture.d.ts +6 -4
  19. package/dist/components/id_capture/IdCaptureLoadingOverlay.d.ts +7 -6
  20. package/dist/components/id_capture/IdCaptureSuccess.d.ts +10 -9
  21. package/dist/components/id_capture/IdCaptureWizard.d.ts +6 -3
  22. package/dist/components/selfie_capture/SelfieCapture.d.ts +8 -6
  23. package/dist/components/selfie_capture/SelfieCaptureLoadingOverlay.d.ts +8 -7
  24. package/dist/components/signature_capture/SignatureCapture.d.ts +5 -4
  25. package/dist/components/video_signature_capture/VideoSignatureCapture.d.ts +5 -4
  26. package/dist/components/video_signature_capture/VideoSignatureSuccess.d.ts +5 -4
  27. package/dist/lib/locales/es/translation.d.ts +1 -0
  28. package/dist/lib/locales/index.d.ts +16 -0
  29. package/dist/sdk2.cjs.development.js +391 -326
  30. package/dist/sdk2.cjs.development.js.map +1 -1
  31. package/dist/sdk2.cjs.production.js +1 -1
  32. package/dist/sdk2.cjs.production.js.map +1 -1
  33. package/dist/sdk2.esm.js +391 -326
  34. package/dist/sdk2.esm.js.map +1 -1
  35. package/dist/sdk2.umd.development.js +391 -326
  36. package/dist/sdk2.umd.development.js.map +1 -1
  37. package/dist/sdk2.umd.production.js +1 -1
  38. package/dist/sdk2.umd.production.js.map +1 -1
  39. package/dist/stories/CustomerFlows/IdValidation.stories.d.ts +8 -0
  40. package/package.json +1 -1
@@ -652,7 +652,7 @@ var SubmissionProvider = function SubmissionProvider(_a) {
652
652
  statusMessage: err.message
653
653
  }));
654
654
  onRequestFailure === null || onRequestFailure === void 0 ? void 0 : onRequestFailure(err);
655
- return [2, null];
655
+ throw err;
656
656
  case 9:
657
657
  return [2];
658
658
  }
@@ -719,7 +719,7 @@ var SubmissionProvider = function SubmissionProvider(_a) {
719
719
  statusMessage: err.message
720
720
  }));
721
721
  onRequestFailure === null || onRequestFailure === void 0 ? void 0 : onRequestFailure(err);
722
- return [2, null];
722
+ throw err;
723
723
  case 7:
724
724
  return [2];
725
725
  }
@@ -8495,6 +8495,165 @@ var templateObject_1$7, templateObject_2$3, templateObject_3$2, templateObject_4
8495
8495
  var ExitCaptureButton = styled__default['default'].button(templateObject_1$6 || (templateObject_1$6 = tslib.__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\n &:hover {\n background: #ddd;\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\n &:hover {\n background: #ddd;\n }\n"])));
8496
8496
  var templateObject_1$6;
8497
8497
 
8498
+ var Spinner = styled__default['default'].div(templateObject_1$5 || (templateObject_1$5 = tslib.__makeTemplateObject(["\n display: inline-block;\n width: ", "px;\n height: ", "px;\n margin: auto;\n\n &:after {\n content: ' ';\n display: block;\n width: ", "px;\n height: ", "px;\n margin: 8px;\n border-radius: 50%;\n border: ", "px solid\n ", ";\n border-color: ", " transparent\n ", " transparent;\n animation: lds-dual-ring 1.2s linear infinite;\n box-sizing: content-box;\n }\n\n @keyframes lds-dual-ring {\n 0% {\n transform: rotate(0deg);\n }\n 100% {\n transform: rotate(360deg);\n }\n }\n"], ["\n display: inline-block;\n width: ", "px;\n height: ", "px;\n margin: auto;\n\n &:after {\n content: ' ';\n display: block;\n width: ", "px;\n height: ", "px;\n margin: 8px;\n border-radius: 50%;\n border: ", "px solid\n ", ";\n border-color: ", " transparent\n ", " transparent;\n animation: lds-dual-ring 1.2s linear infinite;\n box-sizing: content-box;\n }\n\n @keyframes lds-dual-ring {\n 0% {\n transform: rotate(0deg);\n }\n 100% {\n transform: rotate(360deg);\n }\n }\n"])), function (_a) {
8499
+ var $size = _a.$size;
8500
+ return $size !== null && $size !== void 0 ? $size : 80;
8501
+ }, function (_a) {
8502
+ var $size = _a.$size;
8503
+ return $size !== null && $size !== void 0 ? $size : 80;
8504
+ }, function (_a) {
8505
+ var $size = _a.$size;
8506
+ return ($size !== null && $size !== void 0 ? $size : 80) - 16;
8507
+ }, function (_a) {
8508
+ var $size = _a.$size;
8509
+ return ($size !== null && $size !== void 0 ? $size : 80) - 16;
8510
+ }, function (_a) {
8511
+ var $thickness = _a.$thickness;
8512
+ return $thickness !== null && $thickness !== void 0 ? $thickness : 6;
8513
+ }, function (_a) {
8514
+ var $color = _a.$color;
8515
+ return $color !== null && $color !== void 0 ? $color : '#888';
8516
+ }, function (_a) {
8517
+ var $color = _a.$color;
8518
+ return $color !== null && $color !== void 0 ? $color : '#888';
8519
+ }, function (_a) {
8520
+ var $color = _a.$color;
8521
+ return $color !== null && $color !== void 0 ? $color : '#888';
8522
+ });
8523
+ var templateObject_1$5;
8524
+
8525
+ var IdCaptureImagePreview = function IdCaptureImagePreview(_a) {
8526
+ var text = _a.text,
8527
+ imageUrl = _a.imageUrl;
8528
+ return /*#__PURE__*/React__default['default'].createElement(ImagePreviewWrapper, null, text && /*#__PURE__*/React__default['default'].createElement(ImagePreviewText, null, text), /*#__PURE__*/React__default['default'].createElement(ImagePreviewImageWrapper, null, /*#__PURE__*/React__default['default'].createElement("img", {
8529
+ src: imageUrl,
8530
+ alt: ""
8531
+ })));
8532
+ };
8533
+ var SelfieProgressPreview = function SelfieProgressPreview(_a) {
8534
+ var imageUrl = _a.imageUrl;
8535
+ return /*#__PURE__*/React__default['default'].createElement(ImagePreviewWrapper, null, /*#__PURE__*/React__default['default'].createElement(ImagePreviewText, null, /*#__PURE__*/React__default['default'].createElement(Spinner, {
8536
+ "$size": 24,
8537
+ "$color": "white",
8538
+ "$thickness": 3,
8539
+ style: {
8540
+ position: 'relative',
8541
+ top: 4,
8542
+ left: -3,
8543
+ margin: '0 3px 0 -12px'
8544
+ }
8545
+ }), "Processing..."), /*#__PURE__*/React__default['default'].createElement(ImagePreviewImageWrapper, null, /*#__PURE__*/React__default['default'].createElement("img", {
8546
+ src: imageUrl,
8547
+ alt: ""
8548
+ })));
8549
+ };
8550
+ var ImagePreviewWrapper = styled__default['default'].div(templateObject_1$4 || (templateObject_1$4 = tslib.__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"])));
8551
+ var ImagePreviewText = styled__default['default'].div(templateObject_2$2 || (templateObject_2$2 = tslib.__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"])));
8552
+ var ImagePreviewImageWrapper = styled__default['default'].div(templateObject_3$1 || (templateObject_3$1 = tslib.__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"])));
8553
+ var templateObject_1$4, templateObject_2$2, templateObject_3$1;
8554
+
8555
+ var enTranslation = {};
8556
+
8557
+ var esTranslation = {
8558
+ 'Use your device camera to capture your ID': 'Para capturar la identificación hay que utilizar la cámara del dispositivo.',
8559
+ 'Use your iPhone as a webcam': 'Usar el iPhone como cámara web',
8560
+ 'Models warming up...': 'Cargando modelos...',
8561
+ 'Camera initializing...': 'Inicializando la cámara...',
8562
+ 'Camera access blocked': 'Acceso bloqueado a la cámara',
8563
+ 'Location access blocked': 'Acceso bloqueado a la localización',
8564
+ Continue: 'Continuar',
8565
+ 'Your camera permission is disabled': 'El permiso de la cámara está desactivado',
8566
+ 'This application requires access to your camera to continue. Please accept the permission once prompted by the browser. If the browser does not prompt for camera permissions, you must go to settings and provide camera access to the current browser.': 'Esta aplicación requiere el acceso a la cámara para continuar. Hay que aceptar el permiso una vez que se muestre la ventana en el explorador. Si no aparece la ventana para otorgar permisos, entonces hay que dirigirse a Configuración y otorgar el permiso a la cámara en el explorador actual.',
8567
+ 'Your location permission is disabled': 'El permiso de la localización está desactivado',
8568
+ 'This application requires access to your location to continue. Please accept the permission once prompted by the browser. If the browser does not prompt for location permissions, you must go to settings and provide location access to the current browser.': 'Esta aplicación requiere el acceso a la localización para continuar. Hay que aceptar el permiso una vez que se muestre la ventana en el explorador. Si no aparece la ventana para otorgar permisos, entonces hay que dirigirse a Configuración y otorgar el permiso a la localización en el explorador actual.',
8569
+ Retry: 'Reintentar',
8570
+ 'Scan the front of ID': 'Escanear el frente de la ID',
8571
+ 'Scan the back of ID': 'Escanear el reverso de la ID',
8572
+ 'Scan the ID page of passport': 'Escanear la página de datos del pasaporte',
8573
+ 'ID Card Front': 'Frente de la ID',
8574
+ 'ID Card Back': 'Reverso de la ID',
8575
+ Passport: 'Pasaporte',
8576
+ 'Capturing...': 'Capturando...',
8577
+ 'Capture failed!': 'Falló la captura',
8578
+ 'Please flip your ID card...': 'Por favor voltea la identificación...',
8579
+ 'ID card front captured.': '',
8580
+ 'ID Capture Successful': 'Captura Exitosa de ID',
8581
+ 'Verify the entire ID was captured clearly with no glare.': 'Hay que verificar que toda la ID se vea completa y sin reflejos.',
8582
+ Submit: 'Enviar',
8583
+ 'Submitting...': 'Enviando...',
8584
+ 'Use your device camera to capture your face': 'Hay que utilizar la cámara del dispositivo para capturar el rostro',
8585
+ 'Remove Sunglasses & Hat': 'Hay que quitarse lentes y/o la gorra',
8586
+ 'Avoid Excessive Backlighting': 'Hay que evitar demasiada luz en el fondo',
8587
+ 'Hold still for a few seconds...': 'Hay que permanecer quieto por unos segundos...',
8588
+ 'Look straight into the camera...': 'Hay que mirar directamente a la cámara...',
8589
+ 'Move back...': 'Hay que hacerse hacia atrás..',
8590
+ 'Move forward...': 'Hay que hacerse hacia adelante...',
8591
+ 'Move to the center...': 'Hay que moverse hacia el centro...',
8592
+ 'Please remove your eye coverings (sunglasses, eye patch, etc.)...': 'Hay que quitarse lo que cubre los ojos (lentes, parche, etc.)...',
8593
+ 'Please remove your head coverings (hat, scarf, etc.)...': 'Hay que quitarse lo que cubre la cabeza (gorra, mascada, etc.)...',
8594
+ 'Please remove your mask...': 'Hay que quitarse el cubrebocas...',
8595
+ 'Live face not detected, please try again': 'Rostro vivo no detectado. Por favor hay que intentar de nuevo.',
8596
+ Exit: 'Salir',
8597
+ 'Face liveness has been verified!': 'Se ha verificado la Prueba de Vida en rostro!',
8598
+ Done: 'Terminar',
8599
+ 'Customer has been identified!': '¡Se ha identificado al cliente!',
8600
+ 'Customer not found': 'Cliente no encontrado',
8601
+ 'Additional document capture': 'Captura de otro documento',
8602
+ Next: 'Siguiente',
8603
+ 'Please sign the box below': 'Por favor, hay que firmar en el recuadro de abajo',
8604
+ Accept: 'Aceptar',
8605
+ Clear: 'Borrar',
8606
+ 'Video signature has been successfully captured!': 'La video firma ha sido exitosa.'
8607
+ };
8608
+
8609
+ var resources = {
8610
+ en: {
8611
+ translation: enTranslation
8612
+ },
8613
+ es: {
8614
+ translation: esTranslation
8615
+ }
8616
+ };
8617
+ var useLanguage = function useLanguage(lang) {
8618
+ var i18n = reactI18next.useTranslation().i18n;
8619
+ React.useEffect(function () {
8620
+ if (lang !== 'auto') {
8621
+ i18n.changeLanguage(lang);
8622
+ } else {
8623
+ i18n.changeLanguage();
8624
+ }
8625
+ }, [i18n, lang]);
8626
+ };
8627
+ function evaluateVerbiage(t, currentLanguage, verbiage, fallback) {
8628
+ if (typeof verbiage === 'string') return verbiage;
8629
+ if (typeof verbiage === 'object') {
8630
+ var translations = verbiage;
8631
+ if (translations[currentLanguage]) return translations[currentLanguage];
8632
+ var nonLocaleLang = currentLanguage.split('-')[0];
8633
+ if (translations[nonLocaleLang]) return translations[nonLocaleLang];
8634
+ }
8635
+ return t(fallback);
8636
+ }
8637
+ function useVerbiage(verbiage, fallback) {
8638
+ var _a = reactI18next.useTranslation(),
8639
+ t = _a.t,
8640
+ i18n = _a.i18n;
8641
+ return React.useMemo(function () {
8642
+ return evaluateVerbiage(t, i18n.language, verbiage, fallback);
8643
+ }, [fallback, i18n.language, t, verbiage]);
8644
+ }
8645
+ function useTranslations(verbiage, fallbacks) {
8646
+ var _a = reactI18next.useTranslation(),
8647
+ t = _a.t,
8648
+ i18n = _a.i18n;
8649
+ return React.useMemo(function () {
8650
+ return tslib.__assign(tslib.__assign({}, verbiage), Object.keys(fallbacks).reduce(function (result, key) {
8651
+ var _a;
8652
+ return tslib.__assign(tslib.__assign({}, result), (_a = {}, _a[key] = evaluateVerbiage(t, i18n.language, verbiage === null || verbiage === void 0 ? void 0 : verbiage[key], fallbacks[key]), _a));
8653
+ }, {}));
8654
+ }, [fallbacks, i18n.language, t, verbiage]);
8655
+ }
8656
+
8498
8657
  var initialState$5 = {
8499
8658
  videoWidth: 0,
8500
8659
  videoHeight: 0,
@@ -8694,7 +8853,7 @@ var IdCapture = function IdCapture(_a) {
8694
8853
  _u = _a.colors,
8695
8854
  colors = _u === void 0 ? {} : _u,
8696
8855
  _v = _a.verbiage,
8697
- verbiage = _v === void 0 ? {} : _v,
8856
+ rawVerbiage = _v === void 0 ? {} : _v,
8698
8857
  _w = _a.debugMode,
8699
8858
  debugMode = _w === void 0 ? false : _w;
8700
8859
  var _x = useResizeObserver__default['default'](),
@@ -8718,7 +8877,6 @@ var IdCapture = function IdCapture(_a) {
8718
8877
  takePhoto = _3.takePhoto,
8719
8878
  videoRef = _3.videoRef,
8720
8879
  videoLoaded = _3.videoLoaded;
8721
- var t = reactI18next.useTranslation().t;
8722
8880
  var captureStartedAt = React.useRef();
8723
8881
  var _4 = React.useContext(IdCaptureModelsContext),
8724
8882
  modelsReady = _4.ready,
@@ -8915,6 +9073,14 @@ var IdCapture = function IdCapture(_a) {
8915
9073
  });
8916
9074
  })();
8917
9075
  }, [getBestFrame, onCapture, processingDelay, shouldCapture, state.barcodeResult]);
9076
+ colors.guideBoxUnsatisfiedColor || (colors.guideBoxUnsatisfiedColor = 'white');
9077
+ colors.guideBoxSatisfiedColor || (colors.guideBoxSatisfiedColor = 'green');
9078
+ var verbiage = useTranslations(rawVerbiage, {
9079
+ instructionText: 'Scan the front of ID',
9080
+ processingIdCardText: 'ID card front captured.',
9081
+ capturingText: 'Capturing...',
9082
+ captureFailedText: 'Capture failed!'
9083
+ });
8918
9084
  var debugScalingDetails = useDebugScalingDetails({
8919
9085
  enabled: debugMode,
8920
9086
  pageWidth: width,
@@ -8923,7 +9089,10 @@ var IdCapture = function IdCapture(_a) {
8923
9089
  videoHeight: state.videoHeight
8924
9090
  });
8925
9091
  if (processingFrame) {
8926
- return processingScreen || /*#__PURE__*/React__default['default'].createElement("div", null, "Processing...");
9092
+ return /*#__PURE__*/React__default['default'].createElement(React__default['default'].Fragment, null, processingScreen, imageURL && /*#__PURE__*/React__default['default'].createElement(IdCaptureImagePreview, {
9093
+ text: verbiage.processingIdCardText,
9094
+ imageUrl: imageURL
9095
+ }));
8927
9096
  }
8928
9097
  if (imageURL !== '') {
8929
9098
  return /*#__PURE__*/React__default['default'].createElement("img", {
@@ -8935,11 +9104,6 @@ var IdCapture = function IdCapture(_a) {
8935
9104
  }
8936
9105
  });
8937
9106
  }
8938
- colors.guideBoxUnsatisfiedColor || (colors.guideBoxUnsatisfiedColor = 'white');
8939
- colors.guideBoxSatisfiedColor || (colors.guideBoxSatisfiedColor = 'green');
8940
- verbiage.instructionText || (verbiage.instructionText = t('Scan the front of ID'));
8941
- verbiage.capturingText || (verbiage.capturingText = t('Capturing...'));
8942
- verbiage.captureFailedText || (verbiage.captureFailedText = t('Capture failed!'));
8943
9107
  return /*#__PURE__*/React__default['default'].createElement(PageContainer, {
8944
9108
  ref: ref,
8945
9109
  className: "flex"
@@ -8977,16 +9141,17 @@ var CameraAccessDeniedOverlay = function CameraAccessDeniedOverlay(_a) {
8977
9141
  _e = _a.colors,
8978
9142
  colors = _e === void 0 ? {} : _e,
8979
9143
  _f = _a.verbiage,
8980
- verbiage = _f === void 0 ? {} : _f;
8981
- var t = reactI18next.useTranslation().t;
9144
+ rawVerbiage = _f === void 0 ? {} : _f;
8982
9145
  var retryCameraAccess = React.useContext(CameraStateContext).retryCameraAccess;
8983
9146
  assets.imageUrl || (assets.imageUrl = DEFAULT_CDN_URL + '/camera-disable-icon.png');
8984
9147
  colors.retryBtn || (colors.retryBtn = {});
8985
9148
  (_b = colors.retryBtn).backgroundColor || (_b.backgroundColor = '#ea8557');
8986
9149
  (_c = colors.retryBtn).textColor || (_c.textColor = 'white');
8987
- verbiage.headingText || (verbiage.headingText = t('Your camera permission is disabled'));
8988
- verbiage.descriptionText || (verbiage.descriptionText = t('This application requires access to your camera to continue. ' + 'Please accept the permission once prompted by the browser. ' + 'If the browser does not prompt for camera permissions, you must go to settings ' + 'and provide camera access to the current browser.'));
8989
- verbiage.retryBtnText || (verbiage.retryBtnText = t('Retry'));
9150
+ var verbiage = useTranslations(rawVerbiage, {
9151
+ headingText: 'Your camera permission is disabled',
9152
+ descriptionText: 'This application requires access to your camera to continue. ' + 'Please accept the permission once prompted by the browser. ' + 'If the browser does not prompt for camera permissions, you must go to settings ' + 'and provide camera access to the current browser.',
9153
+ retryBtnText: 'Retry'
9154
+ });
8990
9155
  return /*#__PURE__*/React__default['default'].createElement(OverlayContainer, null, /*#__PURE__*/React__default['default'].createElement("div", {
8991
9156
  style: {
8992
9157
  display: 'flex',
@@ -9029,8 +9194,7 @@ var IdCaptureLoadingOverlay = function IdCaptureLoadingOverlay(_a) {
9029
9194
  _c = _a.colors,
9030
9195
  colors = _c === void 0 ? {} : _c,
9031
9196
  _d = _a.verbiage,
9032
- verbiage = _d === void 0 ? {} : _d;
9033
- var t = reactI18next.useTranslation().t;
9197
+ rawVerbiage = _d === void 0 ? {} : _d;
9034
9198
  var modelsReady = React.useContext(IdCaptureModelsContext).ready;
9035
9199
  var _e = React.useContext(CameraStateContext),
9036
9200
  cameraReady = _e.cameraReady,
@@ -9041,11 +9205,13 @@ var IdCaptureLoadingOverlay = function IdCaptureLoadingOverlay(_a) {
9041
9205
  dismissed = _f[0],
9042
9206
  setDismissed = _f[1];
9043
9207
  assets.instructionImageUrl || (assets.instructionImageUrl = "".concat(DEFAULT_CDN_URL, "/WebSDK-Instruction-DL-Capture-3-Portrait.png"));
9044
- verbiage.headingText || (verbiage.headingText = t('Use your device camera to capture your ID'));
9045
- verbiage.useContinuityCameraText || (verbiage.useContinuityCameraText = t('Use your iPhone as a webcam'));
9046
- verbiage.modelsWarmingUpText || (verbiage.modelsWarmingUpText = t('Models warming up...'));
9047
- verbiage.cameraInitializingText || (verbiage.cameraInitializingText = t('Camera initializing...'));
9048
- verbiage.continueText || (verbiage.continueText = t('Continue'));
9208
+ var verbiage = useTranslations(rawVerbiage, {
9209
+ headingText: 'Use your device camera to capture your ID',
9210
+ useContinuityCameraText: 'Use your iPhone as a webcam',
9211
+ modelsWarmingUpText: 'Models warming up...',
9212
+ cameraInitializingText: 'Camera initializing...',
9213
+ continueText: 'Continue'
9214
+ });
9049
9215
  React.useEffect(function () {
9050
9216
  if (modelsReady && cameraReady) return function () {
9051
9217
  return null;
@@ -9062,7 +9228,7 @@ var IdCaptureLoadingOverlay = function IdCaptureLoadingOverlay(_a) {
9062
9228
  return /*#__PURE__*/React__default['default'].createElement(CameraAccessDeniedOverlay, {
9063
9229
  assets: assets.cameraAccessDenied,
9064
9230
  colors: colors.cameraAccessDenied,
9065
- verbiage: verbiage.cameraAccessDenied
9231
+ verbiage: rawVerbiage.cameraAccessDenied
9066
9232
  });
9067
9233
  }
9068
9234
  return /*#__PURE__*/React__default['default'].createElement(OverlayContainer, null, /*#__PURE__*/React__default['default'].createElement(OverlayInner, null, /*#__PURE__*/React__default['default'].createElement("h3", null, verbiage.headingText), /*#__PURE__*/React__default['default'].createElement(OverlayImageWrapper, {
@@ -9110,7 +9276,6 @@ var FlipIdPrompt = function FlipIdPrompt(_a) {
9110
9276
  assets = _c === void 0 ? {} : _c,
9111
9277
  _d = _a.verbiage,
9112
9278
  verbiage = _d === void 0 ? {} : _d;
9113
- var t = reactI18next.useTranslation().t;
9114
9279
  var _e = useResizeObserver__default['default'](),
9115
9280
  ref = _e.ref,
9116
9281
  _f = _e.width,
@@ -9118,11 +9283,11 @@ var FlipIdPrompt = function FlipIdPrompt(_a) {
9118
9283
  _g = _e.height,
9119
9284
  height = _g === void 0 ? 1 : _g;
9120
9285
  var cameraRef = React.useContext(CameraStateContext).cameraRef;
9121
- verbiage.instructionText || (verbiage.instructionText = t('Please flip your ID card...'));
9122
9286
  assets.frontPortraitGuidesImageUrl || (assets.frontPortraitGuidesImageUrl = "".concat(DEFAULT_CDN_URL, "/Shieldout-IDCard-Front-SVG-Portrait-2.svg"));
9123
9287
  assets.frontLandscapeGuidesImageUrl || (assets.frontLandscapeGuidesImageUrl = "".concat(DEFAULT_CDN_URL, "/Shieldout-IDCard-Front-SVG-Landscape-2.svg"));
9124
9288
  assets.backPortraitGuidesImageUrl || (assets.backPortraitGuidesImageUrl = "".concat(DEFAULT_CDN_URL, "/Shieldout-IDCard-Back-SVG-Portrait-2.svg"));
9125
9289
  assets.backLandscapeGuidesImageUrl || (assets.backLandscapeGuidesImageUrl = "".concat(DEFAULT_CDN_URL, "/Shieldout-IDCard-Back-SVG-Landscape-2.svg"));
9290
+ var instructionText = useVerbiage(verbiage.instructionText, 'Please flip your ID card...');
9126
9291
  var padding = isMobile() ? 0 : 50;
9127
9292
  var borderWidth = 4;
9128
9293
  var borderColor = 'white';
@@ -9210,7 +9375,7 @@ var FlipIdPrompt = function FlipIdPrompt(_a) {
9210
9375
  marginTop: 12,
9211
9376
  marginBottom: 12
9212
9377
  }
9213
- }, verbiage.instructionText)), /*#__PURE__*/React__default['default'].createElement("div", {
9378
+ }, instructionText)), /*#__PURE__*/React__default['default'].createElement("div", {
9214
9379
  style: {
9215
9380
  position: 'relative',
9216
9381
  display: 'flex',
@@ -9292,7 +9457,7 @@ var FlipIdPrompt = function FlipIdPrompt(_a) {
9292
9457
  marginBottom: 12,
9293
9458
  opacity: 0
9294
9459
  }
9295
- }, verbiage.instructionText)))));
9460
+ }, instructionText)))));
9296
9461
  };
9297
9462
 
9298
9463
  var IdCaptureSuccess = function IdCaptureSuccess(_a) {
@@ -9303,23 +9468,24 @@ var IdCaptureSuccess = function IdCaptureSuccess(_a) {
9303
9468
  _d = _a.colors,
9304
9469
  colors = _d === void 0 ? {} : _d,
9305
9470
  _e = _a.verbiage,
9306
- verbiage = _e === void 0 ? {} : _e;
9471
+ rawVerbiage = _e === void 0 ? {} : _e;
9307
9472
  var submissionStatus = React.useContext(SubmissionContext).submissionStatus;
9308
- var t = reactI18next.useTranslation().t;
9309
9473
  var idCardFront = capturedDocuments['ID_CARD_FRONT'];
9310
9474
  var idCardBack = capturedDocuments['ID_CARD_BACK'];
9311
9475
  var passport = capturedDocuments['PASSPORT'];
9312
9476
  colors.retryBtn || (colors.retryBtn = {});
9313
9477
  (_b = colors.retryBtn).backgroundColor || (_b.backgroundColor = '#ea8557');
9314
9478
  (_c = colors.retryBtn).textColor || (_c.textColor = 'white');
9315
- verbiage.headingText || (verbiage.headingText = t('ID Capture Successful'));
9316
- verbiage.idCardFrontText || (verbiage.idCardFrontText = t('ID Card Front'));
9317
- verbiage.idCardBackText || (verbiage.idCardBackText = t('ID Card Back'));
9318
- verbiage.passportText || (verbiage.passportText = t('Passport'));
9319
- verbiage.instructionText || (verbiage.instructionText = t('Verify the entire ID was captured clearly with no glare.'));
9320
- verbiage.retryText || (verbiage.retryText = t('Retry'));
9321
- verbiage.submittingText || (verbiage.submittingText = t('Submitting...'));
9322
- verbiage.submitText || (verbiage.submitText = t('Done'));
9479
+ var verbiage = useTranslations(rawVerbiage, {
9480
+ headingText: 'ID Capture Successful',
9481
+ idCardFrontText: 'ID Card Front',
9482
+ idCardBackText: 'ID Card Back',
9483
+ passportText: 'Passport',
9484
+ instructionText: 'Verify the entire ID was captured clearly with no glare.',
9485
+ retryText: 'Retry',
9486
+ submittingText: 'Submitting...',
9487
+ submitText: 'Done'
9488
+ });
9323
9489
  return /*#__PURE__*/React__default['default'].createElement(OverlayContainer, null, /*#__PURE__*/React__default['default'].createElement(OverlayInner, null, /*#__PURE__*/React__default['default'].createElement("h1", null, verbiage.headingText), /*#__PURE__*/React__default['default'].createElement(OverlayImageWrapper, null, /*#__PURE__*/React__default['default'].createElement(OverlayImageMultiContainer, {
9324
9490
  style: {
9325
9491
  paddingBottom: 40
@@ -9390,10 +9556,10 @@ var CameraVideoTag = function CameraVideoTag() {
9390
9556
  "$isRearFacing": (_a = cameraRef.current) === null || _a === void 0 ? void 0 : _a.isRearFacing
9391
9557
  });
9392
9558
  };
9393
- var FullscreenVideoTag = styled__default['default'].video(templateObject_1$5 || (templateObject_1$5 = tslib.__makeTemplateObject(["\n transform: ", ";\n min-width: 100%;\n min-height: 100%;\n width: auto;\n height: auto;\n object-fit: cover;\n"], ["\n transform: ", ";\n min-width: 100%;\n min-height: 100%;\n width: auto;\n height: auto;\n object-fit: cover;\n"])), function (props) {
9559
+ var FullscreenVideoTag = styled__default['default'].video(templateObject_1$3 || (templateObject_1$3 = tslib.__makeTemplateObject(["\n transform: ", ";\n min-width: 100%;\n min-height: 100%;\n width: auto;\n height: auto;\n object-fit: cover;\n"], ["\n transform: ", ";\n min-width: 100%;\n min-height: 100%;\n width: auto;\n height: auto;\n object-fit: cover;\n"])), function (props) {
9394
9560
  return props.$isRearFacing ? '' : 'scaleX(-1)';
9395
9561
  });
9396
- var templateObject_1$5;
9562
+ var templateObject_1$3;
9397
9563
 
9398
9564
  function useShowSuccessScreen(skipSuccessScreen, successScreenReady, onDoneCallback) {
9399
9565
  var _this = this;
@@ -9484,52 +9650,51 @@ var reducer$4 = function reducer(state, action) {
9484
9650
  }
9485
9651
  };
9486
9652
  var IdCaptureWizard = function IdCaptureWizard(_a) {
9487
- var _b, _c, _d, _e, _f, _g, _h, _j, _k, _l, _m, _o, _p;
9653
+ var _b, _c, _d, _e, _f, _g, _h, _j, _k, _l;
9488
9654
  var onSuccess = _a.onSuccess,
9489
- _q = _a.autoCaptureEnabled,
9490
- autoCaptureEnabled = _q === void 0 ? true : _q,
9491
- _r = _a.autoCaptureGoodFramesRequired,
9492
- autoCaptureGoodFramesRequired = _r === void 0 ? 3 : _r,
9493
- _s = _a.autoCaptureBarcodeRequired,
9494
- autoCaptureBarcodeRequired = _s === void 0 ? 'mobile' : _s,
9495
- _t = _a.barcodeScanningEnabled,
9496
- barcodeScanningEnabled = _t === void 0 ? false : _t,
9497
- _u = _a.idCardAutoCaptureScoreThreshold,
9498
- idCardAutoCaptureScoreThreshold = _u === void 0 ? 0.9 : _u,
9499
- _v = _a.passportAutoCaptureScoreThreshold,
9500
- passportAutoCaptureScoreThreshold = _v === void 0 ? 0.85 : _v,
9501
- _w = _a.mrzDetectionScoreThreshold,
9502
- mrzDetectionScoreThreshold = _w === void 0 ? 0.25 : _w,
9503
- _x = _a.idCardFocusScoreThreshold,
9504
- idCardFocusScoreThreshold = _x === void 0 ? 0.3 : _x,
9505
- _y = _a.passportFocusScoreThreshold,
9506
- passportFocusScoreThreshold = _y === void 0 ? 0.3 : _y,
9507
- _z = _a.skipSuccessScreen,
9508
- skipSuccessScreen = _z === void 0 ? false : _z,
9509
- _0 = _a.assets,
9510
- assets = _0 === void 0 ? {} : _0,
9511
- _1 = _a.colors,
9512
- colors = _1 === void 0 ? {} : _1,
9513
- _2 = _a.verbiage,
9514
- verbiage = _2 === void 0 ? {} : _2,
9515
- _3 = _a.debugMode,
9516
- debugMode = _3 === void 0 ? false : _3;
9517
- var _4 = React.useReducer(reducer$4, initialState$4),
9518
- state = _4[0],
9519
- dispatch = _4[1];
9655
+ _m = _a.autoCaptureEnabled,
9656
+ autoCaptureEnabled = _m === void 0 ? true : _m,
9657
+ _o = _a.autoCaptureGoodFramesRequired,
9658
+ autoCaptureGoodFramesRequired = _o === void 0 ? 3 : _o,
9659
+ _p = _a.autoCaptureBarcodeRequired,
9660
+ autoCaptureBarcodeRequired = _p === void 0 ? 'mobile' : _p,
9661
+ _q = _a.barcodeScanningEnabled,
9662
+ barcodeScanningEnabled = _q === void 0 ? false : _q,
9663
+ _r = _a.idCardAutoCaptureScoreThreshold,
9664
+ idCardAutoCaptureScoreThreshold = _r === void 0 ? 0.9 : _r,
9665
+ _s = _a.passportAutoCaptureScoreThreshold,
9666
+ passportAutoCaptureScoreThreshold = _s === void 0 ? 0.85 : _s,
9667
+ _t = _a.mrzDetectionScoreThreshold,
9668
+ mrzDetectionScoreThreshold = _t === void 0 ? 0.25 : _t,
9669
+ _u = _a.idCardFocusScoreThreshold,
9670
+ idCardFocusScoreThreshold = _u === void 0 ? 0.3 : _u,
9671
+ _v = _a.passportFocusScoreThreshold,
9672
+ passportFocusScoreThreshold = _v === void 0 ? 0.3 : _v,
9673
+ _w = _a.skipSuccessScreen,
9674
+ skipSuccessScreen = _w === void 0 ? false : _w,
9675
+ _x = _a.assets,
9676
+ assets = _x === void 0 ? {} : _x,
9677
+ _y = _a.colors,
9678
+ colors = _y === void 0 ? {} : _y,
9679
+ _z = _a.verbiage,
9680
+ verbiage = _z === void 0 ? {} : _z,
9681
+ _0 = _a.debugMode,
9682
+ debugMode = _0 === void 0 ? false : _0;
9683
+ var _1 = React.useReducer(reducer$4, initialState$4),
9684
+ state = _1[0],
9685
+ dispatch = _1[1];
9520
9686
  var releaseCameraAccess = React.useContext(CameraStateContext).releaseCameraAccess;
9521
- var _5 = React.useState(false),
9522
- overlayDismissed = _5[0],
9523
- setOverlayDismissed = _5[1];
9524
- var _6 = React.useContext(SubmissionContext),
9525
- submissionStatus = _6.submissionStatus,
9526
- submissionResponse = _6.submissionResponse,
9527
- setIdFrontImage = _6.setIdFrontImage,
9528
- setIdBackImage = _6.setIdBackImage,
9529
- setPassportImage = _6.setPassportImage,
9530
- logIdFrontCaptureAttempt = _6.logIdFrontCaptureAttempt,
9531
- logIdBackCaptureAttempt = _6.logIdBackCaptureAttempt;
9532
- var t = reactI18next.useTranslation().t;
9687
+ var _2 = React.useState(false),
9688
+ overlayDismissed = _2[0],
9689
+ setOverlayDismissed = _2[1];
9690
+ var _3 = React.useContext(SubmissionContext),
9691
+ submissionStatus = _3.submissionStatus,
9692
+ submissionResponse = _3.submissionResponse,
9693
+ setIdFrontImage = _3.setIdFrontImage,
9694
+ setIdBackImage = _3.setIdBackImage,
9695
+ setPassportImage = _3.setPassportImage,
9696
+ logIdFrontCaptureAttempt = _3.logIdFrontCaptureAttempt,
9697
+ logIdBackCaptureAttempt = _3.logIdBackCaptureAttempt;
9533
9698
  var operationStartedAt = React.useRef();
9534
9699
  React.useEffect(function () {
9535
9700
  operationStartedAt.current = new Date();
@@ -9621,9 +9786,9 @@ var IdCaptureWizard = function IdCaptureWizard(_a) {
9621
9786
  type: 'reset'
9622
9787
  });
9623
9788
  }, []);
9624
- var _7 = React.useState(0),
9625
- attempt = _7[0],
9626
- setAttempt = _7[1];
9789
+ var _4 = React.useState(0),
9790
+ attempt = _4[0],
9791
+ setAttempt = _4[1];
9627
9792
  var onExit = React.useCallback(function () {
9628
9793
  setOverlayDismissed(false);
9629
9794
  setAttempt(function (n) {
@@ -9652,12 +9817,16 @@ var IdCaptureWizard = function IdCaptureWizard(_a) {
9652
9817
  (_j = assets.flipIdPrompt).frontLandscapeGuidesImageUrl || (_j.frontLandscapeGuidesImageUrl = assets.idCardFront.landscapeGuidesImageUrl);
9653
9818
  (_k = assets.flipIdPrompt).backPortraitGuidesImageUrl || (_k.backPortraitGuidesImageUrl = assets.idCardBack.portraitGuidesImageUrl);
9654
9819
  (_l = assets.flipIdPrompt).backLandscapeGuidesImageUrl || (_l.backLandscapeGuidesImageUrl = assets.idCardBack.landscapeGuidesImageUrl);
9655
- verbiage.idCardFront || (verbiage.idCardFront = {});
9656
- (_m = verbiage.idCardFront).instructionText || (_m.instructionText = t('Scan the front of ID'));
9657
- verbiage.idCardBack || (verbiage.idCardBack = {});
9658
- (_o = verbiage.idCardBack).instructionText || (_o.instructionText = t('Scan the back of ID'));
9659
- verbiage.passport || (verbiage.passport = {});
9660
- (_p = verbiage.passport).instructionText || (_p.instructionText = t('Scan the ID page of passport'));
9820
+ var idCardFrontVerbiage = useTranslations(verbiage.idCardFront, {
9821
+ instructionText: 'Scan the front of ID',
9822
+ processingIdCardText: 'ID card front captured.'
9823
+ });
9824
+ var idCardBackVerbiage = useTranslations(verbiage.idCardBack, {
9825
+ instructionText: 'Scan the back of ID'
9826
+ });
9827
+ var passportVerbiage = useTranslations(verbiage.idCardBack, {
9828
+ instructionText: 'Scan the ID page of passport'
9829
+ });
9661
9830
  if (submissionResponse) {
9662
9831
  return /*#__PURE__*/React__default['default'].createElement(PageContainer, {
9663
9832
  className: "padded"
@@ -9685,7 +9854,7 @@ var IdCaptureWizard = function IdCaptureWizard(_a) {
9685
9854
  processingDelay: 3500,
9686
9855
  assets: assets.idCardFront,
9687
9856
  colors: colors,
9688
- verbiage: verbiage.idCardFront,
9857
+ verbiage: idCardFrontVerbiage,
9689
9858
  debugMode: debugMode,
9690
9859
  processingScreen: /*#__PURE__*/React__default['default'].createElement(FlipIdPrompt, {
9691
9860
  assets: assets.flipIdPrompt,
@@ -9709,7 +9878,7 @@ var IdCaptureWizard = function IdCaptureWizard(_a) {
9709
9878
  onExit: onExit,
9710
9879
  assets: assets.idCardBack,
9711
9880
  colors: colors,
9712
- verbiage: verbiage.idCardBack,
9881
+ verbiage: idCardBackVerbiage,
9713
9882
  debugMode: debugMode
9714
9883
  });
9715
9884
  case DocumentType.PASSPORT:
@@ -9729,7 +9898,7 @@ var IdCaptureWizard = function IdCaptureWizard(_a) {
9729
9898
  onExit: onExit,
9730
9899
  assets: assets.passport,
9731
9900
  colors: colors,
9732
- verbiage: verbiage.passport,
9901
+ verbiage: passportVerbiage,
9733
9902
  debugMode: debugMode
9734
9903
  });
9735
9904
  default:
@@ -9738,6 +9907,7 @@ var IdCaptureWizard = function IdCaptureWizard(_a) {
9738
9907
  }(), !overlayDismissed && /*#__PURE__*/React__default['default'].createElement(IdCaptureLoadingOverlay, {
9739
9908
  key: attempt,
9740
9909
  assets: assets.loadingOverlay,
9910
+ colors: colors.loadingOverlay,
9741
9911
  verbiage: verbiage.loadingOverlay,
9742
9912
  onDismissed: function onDismissed() {
9743
9913
  setOverlayDismissed(true);
@@ -9747,6 +9917,7 @@ var IdCaptureWizard = function IdCaptureWizard(_a) {
9747
9917
  barcodeResult: state.barcodeResult,
9748
9918
  onSubmitClick: onSubmitClick,
9749
9919
  onRetryClick: onRetryClick,
9920
+ colors: colors.success,
9750
9921
  verbiage: verbiage.success
9751
9922
  }));
9752
9923
  };
@@ -10039,18 +10210,18 @@ var HighPerformanceSelfieGuidanceModelsProvider = function HighPerformanceSelfie
10039
10210
  }) : children);
10040
10211
  };
10041
10212
 
10042
- var GuidanceMessageContainer = styled__default['default'].div(templateObject_1$4 || (templateObject_1$4 = tslib.__makeTemplateObject(["\n position: absolute;\n top: calc(", ");\n font-weight: bold;\n width: 100%;\n display: flex;\n"], ["\n position: absolute;\n top: calc(", ");\n font-weight: bold;\n width: 100%;\n display: flex;\n"])), function (_a) {
10213
+ var GuidanceMessageContainer = styled__default['default'].div(templateObject_1$2 || (templateObject_1$2 = tslib.__makeTemplateObject(["\n position: absolute;\n top: calc(", ");\n font-weight: bold;\n width: 100%;\n display: flex;\n"], ["\n position: absolute;\n top: calc(", ");\n font-weight: bold;\n width: 100%;\n display: flex;\n"])), function (_a) {
10043
10214
  var $top = _a.$top;
10044
10215
  return $top !== null && $top !== void 0 ? $top : '10vh';
10045
10216
  });
10046
- var GuidanceMessage = styled__default['default'].div(templateObject_2$2 || (templateObject_2$2 = tslib.__makeTemplateObject(["\n margin-left: auto;\n margin-right: auto;\n background: ", ";\n color: ", ";\n padding: 10px 12px 8px;\n border-radius: 8px;\n"], ["\n margin-left: auto;\n margin-right: auto;\n background: ", ";\n color: ", ";\n padding: 10px 12px 8px;\n border-radius: 8px;\n"])), function (_a) {
10217
+ var GuidanceMessage = styled__default['default'].div(templateObject_2$1 || (templateObject_2$1 = tslib.__makeTemplateObject(["\n margin-left: auto;\n margin-right: auto;\n background: ", ";\n color: ", ";\n padding: 10px 12px 8px;\n border-radius: 8px;\n"], ["\n margin-left: auto;\n margin-right: auto;\n background: ", ";\n color: ", ";\n padding: 10px 12px 8px;\n border-radius: 8px;\n"])), function (_a) {
10047
10218
  var $background = _a.$background;
10048
10219
  return $background !== null && $background !== void 0 ? $background : '#ccc';
10049
10220
  }, function (_a) {
10050
10221
  var $textColor = _a.$textColor;
10051
10222
  return $textColor !== null && $textColor !== void 0 ? $textColor : 'black';
10052
10223
  });
10053
- var templateObject_1$4, templateObject_2$2;
10224
+ var templateObject_1$2, templateObject_2$1;
10054
10225
 
10055
10226
  var useTimeout = function useTimeout(durationMs, onTimeout, timeoutAverted, shouldWaitLonger) {
10056
10227
  var _a = React.useState(false),
@@ -10191,26 +10362,27 @@ var SelfieCapture = function SelfieCapture(_a) {
10191
10362
  _e = _a.timeoutDurationMs,
10192
10363
  timeoutDurationMs = _e === void 0 ? 15000 : _e,
10193
10364
  guidanceMessage = _a.guidanceMessage,
10365
+ guidanceSatisfied = _a.guidanceSatisfied,
10194
10366
  _f = _a.colors,
10195
10367
  colors = _f === void 0 ? {} : _f,
10196
10368
  _g = _a.verbiage,
10197
- verbiage = _g === void 0 ? {} : _g,
10198
- debugMode = _a.debugMode;
10199
- var t = reactI18next.useTranslation().t;
10200
- var _h = useResizeObserver__default['default'](),
10201
- ref = _h.ref,
10202
- _j = _h.width,
10203
- width = _j === void 0 ? 1 : _j,
10204
- _k = _h.height,
10205
- height = _k === void 0 ? 1 : _k;
10206
- var _l = React.useReducer(reducer$3, initialState$3),
10207
- state = _l[0],
10208
- dispatch = _l[1];
10209
- var _m = React.useContext(CameraStateContext),
10210
- cameraRef = _m.cameraRef,
10211
- cameraReady = _m.cameraReady,
10212
- takePhoto = _m.takePhoto,
10213
- videoRef = _m.videoRef;
10369
+ rawVerbiage = _g === void 0 ? {} : _g,
10370
+ _h = _a.debugMode,
10371
+ debugMode = _h === void 0 ? false : _h;
10372
+ var _j = useResizeObserver__default['default'](),
10373
+ ref = _j.ref,
10374
+ _k = _j.width,
10375
+ width = _k === void 0 ? 1 : _k,
10376
+ _l = _j.height,
10377
+ height = _l === void 0 ? 1 : _l;
10378
+ var _m = React.useReducer(reducer$3, initialState$3),
10379
+ state = _m[0],
10380
+ dispatch = _m[1];
10381
+ var _o = React.useContext(CameraStateContext),
10382
+ cameraRef = _o.cameraRef,
10383
+ cameraReady = _o.cameraReady,
10384
+ takePhoto = _o.takePhoto,
10385
+ videoRef = _o.videoRef;
10214
10386
  var onPredictionMade = React.useContext(HighPerformanceSelfieGuidanceModelsContext).onPredictionMade;
10215
10387
  React.useEffect(function () {
10216
10388
  if (cameraReady && videoRef.current && videoRef.current.videoWidth !== 0) {
@@ -10233,9 +10405,9 @@ var SelfieCapture = function SelfieCapture(_a) {
10233
10405
  });
10234
10406
  });
10235
10407
  }, [onPredictionMade]);
10236
- var _o = React.useState(false),
10237
- captureReady = _o[0],
10238
- setCaptureReady = _o[1];
10408
+ var _p = React.useState(false),
10409
+ captureReady = _p[0],
10410
+ setCaptureReady = _p[1];
10239
10411
  React.useEffect(function () {
10240
10412
  var timer;
10241
10413
  if (state.faceReady) {
@@ -10279,9 +10451,9 @@ var SelfieCapture = function SelfieCapture(_a) {
10279
10451
  });
10280
10452
  })();
10281
10453
  }, [captureReady, onSelfieCaptured, state.faces, takePhoto]);
10282
- var _p = useTimeout(timeoutDurationMs, onTimeout),
10283
- timedOut = _p.timedOut,
10284
- timeoutStartedAt = _p.timeoutStartedAt;
10454
+ var _q = useTimeout(timeoutDurationMs, onTimeout),
10455
+ timedOut = _q.timedOut,
10456
+ timeoutStartedAt = _q.timeoutStartedAt;
10285
10457
  var debugScalingDetails = useDebugScalingDetails({
10286
10458
  enabled: debugMode,
10287
10459
  pageWidth: width,
@@ -10295,22 +10467,24 @@ var SelfieCapture = function SelfieCapture(_a) {
10295
10467
  colors.guidanceMessagesSatisfiedBackgroundColor || (colors.guidanceMessagesSatisfiedBackgroundColor = 'green');
10296
10468
  colors.guidanceMessagesUnsatisfiedTextColor || (colors.guidanceMessagesUnsatisfiedTextColor = 'white');
10297
10469
  colors.guidanceMessagesSatisfiedTextColor || (colors.guidanceMessagesSatisfiedTextColor = 'white');
10298
- if (!guidanceMessage) {
10299
- verbiage.guidanceHoldStillText || (verbiage.guidanceHoldStillText = t('Hold still for a few seconds...'));
10300
- verbiage.guidanceLookStraightText || (verbiage.guidanceLookStraightText = t('Look straight into the camera...'));
10301
- verbiage.guidanceMoveBackText || (verbiage.guidanceMoveBackText = t('Move back...'));
10302
- verbiage.guidanceMoveForwardText || (verbiage.guidanceMoveForwardText = t('Move forward...'));
10303
- verbiage.guidanceMoveToCenterText || (verbiage.guidanceMoveToCenterText = t('Move to the center...'));
10304
- guidanceMessage = state.faceReady ? verbiage.guidanceHoldStillText : state.faceLookingAway ? verbiage.guidanceLookStraightText : state.faceTooClose ? verbiage.guidanceMoveBackText : state.faceTooFar ? verbiage.guidanceMoveForwardText : state.faceNotCentered ? verbiage.guidanceMoveToCenterText : '';
10305
- }
10470
+ var verbiage = useTranslations(rawVerbiage, {
10471
+ guidanceHoldStillText: 'Hold still for a few seconds...',
10472
+ guidanceLookStraightText: 'Look straight into the camera...',
10473
+ guidanceMoveBackText: 'Move back...',
10474
+ guidanceMoveForwardText: 'Move forward...',
10475
+ guidanceMoveToCenterText: 'Move to the center...'
10476
+ });
10477
+ guidanceMessage || (guidanceMessage = state.faceReady ? verbiage.guidanceHoldStillText : state.faceLookingAway ? verbiage.guidanceLookStraightText : state.faceTooClose ? verbiage.guidanceMoveBackText : state.faceTooFar ? verbiage.guidanceMoveForwardText : state.faceNotCentered ? verbiage.guidanceMoveToCenterText : '');
10478
+ var satisfied = state.faceReady;
10479
+ if (typeof guidanceSatisfied === 'boolean') satisfied = guidanceSatisfied;
10306
10480
  return /*#__PURE__*/React__default['default'].createElement(PageContainer, {
10307
10481
  ref: ref,
10308
10482
  className: "flex"
10309
10483
  }, /*#__PURE__*/React__default['default'].createElement(CameraVideoTag, null), /*#__PURE__*/React__default['default'].createElement(FaceCaptureGuideOverlay, {
10310
- borderColor: state.faceReady ? colors.guidesSatisfiedColor : colors.guidesUnsatisfiedColor
10484
+ borderColor: satisfied ? colors.guidesSatisfiedColor : colors.guidesUnsatisfiedColor
10311
10485
  }), guidanceMessage !== '' && /*#__PURE__*/React__default['default'].createElement(GuidanceMessageContainer, null, /*#__PURE__*/React__default['default'].createElement(GuidanceMessage, {
10312
- "$background": state.faceReady ? colors.guidanceMessagesSatisfiedBackgroundColor : colors.guidanceMessagesUnsatisfiedBackgroundColor,
10313
- "$textColor": state.faceReady ? colors.guidanceMessagesSatisfiedTextColor : colors.guidanceMessagesUnsatisfiedTextColor
10486
+ "$background": satisfied ? colors.guidanceMessagesSatisfiedBackgroundColor : colors.guidanceMessagesUnsatisfiedBackgroundColor,
10487
+ "$textColor": satisfied ? colors.guidanceMessagesSatisfiedTextColor : colors.guidanceMessagesUnsatisfiedTextColor
10314
10488
  }, guidanceMessage)), debugMode && state.faces.length > 0 && /*#__PURE__*/React__default['default'].createElement(ObjectDetectionDebugOverlay, {
10315
10489
  "$flipX": !((_b = cameraRef.current) === null || _b === void 0 ? void 0 : _b.isRearFacing)
10316
10490
  }, state.faces.map(function (face, i) {
@@ -10320,62 +10494,13 @@ var SelfieCapture = function SelfieCapture(_a) {
10320
10494
  face: face,
10321
10495
  scaling: debugScalingDetails,
10322
10496
  flipX: !((_a = cameraRef.current) === null || _a === void 0 ? void 0 : _a.isRearFacing),
10323
- color: state.faceReady ? 'green' : 'red'
10497
+ color: satisfied ? 'green' : 'red'
10324
10498
  });
10325
10499
  })), debugMode && /*#__PURE__*/React__default['default'].createElement(DebugStatsPane, null, cameraRef.current ? /*#__PURE__*/React__default['default'].createElement(React__default['default'].Fragment, null, "\u2705 Camera: ", (_c = cameraRef.current) === null || _c === void 0 ? void 0 : _c.width, "x", (_d = cameraRef.current) === null || _d === void 0 ? void 0 : _d.height) : '❌ Camera not ready', /*#__PURE__*/React__default['default'].createElement("br", null), !state.faceNotCentered ? '✅' : '❌', " Face Centered", /*#__PURE__*/React__default['default'].createElement("br", null), !state.faceTooClose && !state.faceTooFar ? '✅' : '❌', " Face", ' ', state.faceTooClose ? 'Too Close' : state.faceTooFar ? 'Too Far' : 'Distance Correct', /*#__PURE__*/React__default['default'].createElement("br", null), !state.faceLookingAway ? '✅' : '❌', " Face Looking Forward", /*#__PURE__*/React__default['default'].createElement("br", null), state.goodFramesThresholdMet ? '✅' : '❌', " ", state.goodFramesCount, ' ', "Good Frames", /*#__PURE__*/React__default['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__default['default'].createElement(ExitCaptureButton, {
10326
10500
  onClick: onExit
10327
10501
  }, "\xD7"));
10328
10502
  };
10329
10503
 
10330
- var Spinner = styled__default['default'].div(templateObject_1$3 || (templateObject_1$3 = tslib.__makeTemplateObject(["\n display: inline-block;\n width: ", "px;\n height: ", "px;\n margin: auto;\n\n &:after {\n content: ' ';\n display: block;\n width: ", "px;\n height: ", "px;\n margin: 8px;\n border-radius: 50%;\n border: ", "px solid\n ", ";\n border-color: ", " transparent\n ", " transparent;\n animation: lds-dual-ring 1.2s linear infinite;\n box-sizing: content-box;\n }\n\n @keyframes lds-dual-ring {\n 0% {\n transform: rotate(0deg);\n }\n 100% {\n transform: rotate(360deg);\n }\n }\n"], ["\n display: inline-block;\n width: ", "px;\n height: ", "px;\n margin: auto;\n\n &:after {\n content: ' ';\n display: block;\n width: ", "px;\n height: ", "px;\n margin: 8px;\n border-radius: 50%;\n border: ", "px solid\n ", ";\n border-color: ", " transparent\n ", " transparent;\n animation: lds-dual-ring 1.2s linear infinite;\n box-sizing: content-box;\n }\n\n @keyframes lds-dual-ring {\n 0% {\n transform: rotate(0deg);\n }\n 100% {\n transform: rotate(360deg);\n }\n }\n"])), function (_a) {
10331
- var $size = _a.$size;
10332
- return $size !== null && $size !== void 0 ? $size : 80;
10333
- }, function (_a) {
10334
- var $size = _a.$size;
10335
- return $size !== null && $size !== void 0 ? $size : 80;
10336
- }, function (_a) {
10337
- var $size = _a.$size;
10338
- return ($size !== null && $size !== void 0 ? $size : 80) - 16;
10339
- }, function (_a) {
10340
- var $size = _a.$size;
10341
- return ($size !== null && $size !== void 0 ? $size : 80) - 16;
10342
- }, function (_a) {
10343
- var $thickness = _a.$thickness;
10344
- return $thickness !== null && $thickness !== void 0 ? $thickness : 6;
10345
- }, function (_a) {
10346
- var $color = _a.$color;
10347
- return $color !== null && $color !== void 0 ? $color : '#888';
10348
- }, function (_a) {
10349
- var $color = _a.$color;
10350
- return $color !== null && $color !== void 0 ? $color : '#888';
10351
- }, function (_a) {
10352
- var $color = _a.$color;
10353
- return $color !== null && $color !== void 0 ? $color : '#888';
10354
- });
10355
- var templateObject_1$3;
10356
-
10357
- var SelfieProgressPreview = function SelfieProgressPreview(_a) {
10358
- var imageUrl = _a.imageUrl;
10359
- return /*#__PURE__*/React__default['default'].createElement(SelfieProgressPreviewWrapper, null, /*#__PURE__*/React__default['default'].createElement(SelfieProgressText, null, /*#__PURE__*/React__default['default'].createElement(Spinner, {
10360
- "$size": 24,
10361
- "$color": "white",
10362
- "$thickness": 3,
10363
- style: {
10364
- position: 'relative',
10365
- top: 4,
10366
- left: -3,
10367
- margin: '0 3px 0 -12px'
10368
- }
10369
- }), "Processing..."), /*#__PURE__*/React__default['default'].createElement(SelfiePreviewImageWrapper, null, /*#__PURE__*/React__default['default'].createElement("img", {
10370
- src: imageUrl,
10371
- alt: ""
10372
- })));
10373
- };
10374
- var SelfieProgressPreviewWrapper = styled__default['default'].div(templateObject_1$2 || (templateObject_1$2 = tslib.__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"])));
10375
- var SelfieProgressText = styled__default['default'].div(templateObject_2$1 || (templateObject_2$1 = tslib.__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"])));
10376
- var SelfiePreviewImageWrapper = styled__default['default'].div(templateObject_3$1 || (templateObject_3$1 = tslib.__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"])));
10377
- var templateObject_1$2, templateObject_2$1, templateObject_3$1;
10378
-
10379
10504
  var initialState$2 = {
10380
10505
  frame: null,
10381
10506
  face: null,
@@ -10467,9 +10592,8 @@ var FaceLivenessCapture = function FaceLivenessCapture(_a) {
10467
10592
  _c = _a.colors,
10468
10593
  colors = _c === void 0 ? {} : _c,
10469
10594
  _d = _a.verbiage,
10470
- verbiage = _d === void 0 ? {} : _d,
10595
+ rawVerbiage = _d === void 0 ? {} : _d,
10471
10596
  debugMode = _a.debugMode;
10472
- var t = reactI18next.useTranslation().t;
10473
10597
  var checkLiveness = React.useContext(SubmissionContext).checkLiveness;
10474
10598
  var _e = React.useReducer(reducer$2, initialState$2),
10475
10599
  state = _e[0],
@@ -10546,15 +10670,18 @@ var FaceLivenessCapture = function FaceLivenessCapture(_a) {
10546
10670
  }
10547
10671
  }, [onTimeout, state.timesLivenessCheckFailed]);
10548
10672
  useTimeout(timeoutDurationMs, onTimeout, state.requestState === 'PASSED', state.requestState === 'IN_PROGRESS');
10549
- verbiage.guidanceRemoveEyeCoveringsText || (verbiage.guidanceRemoveEyeCoveringsText = t('Please remove your eye coverings (sunglasses, eye patch, etc.)...'));
10550
- verbiage.guidanceRemoveHeadCoveringsText || (verbiage.guidanceRemoveHeadCoveringsText = t('Please remove your head coverings (hat, scarf, etc.)...'));
10551
- verbiage.guidanceRemoveMaskText || (verbiage.guidanceRemoveMaskText = t('Please remove your mask...'));
10673
+ var verbiage = useTranslations(rawVerbiage, {
10674
+ guidanceRemoveEyeCoveringsText: 'Please remove your eye coverings (sunglasses, eye patch, etc.)...',
10675
+ guidanceRemoveHeadCoveringsText: 'Please remove your head coverings (hat, scarf, etc.)...',
10676
+ guidanceRemoveMaskText: 'Please remove your mask...'
10677
+ });
10552
10678
  var guidanceMessage = state.eyeCoveringDetected ? verbiage.guidanceRemoveEyeCoveringsText : state.headCoveringDetected ? verbiage.guidanceRemoveHeadCoveringsText : state.maskDetected ? verbiage.guidanceRemoveMaskText : undefined;
10553
10679
  return /*#__PURE__*/React__default['default'].createElement(React__default['default'].Fragment, null, /*#__PURE__*/React__default['default'].createElement(SelfieCapture, {
10554
10680
  onSelfieCaptured: onSelfieCaptured,
10555
10681
  onExit: onExit,
10556
10682
  timeoutDurationMs: timeoutDurationMs,
10557
10683
  guidanceMessage: guidanceMessage,
10684
+ guidanceSatisfied: guidanceMessage ? false : undefined,
10558
10685
  colors: colors,
10559
10686
  verbiage: verbiage,
10560
10687
  debugMode: debugMode
@@ -10570,28 +10697,29 @@ var SelfieCaptureLoadingOverlay = function SelfieCaptureLoadingOverlay(_a) {
10570
10697
  _c = _a.colors,
10571
10698
  colors = _c === void 0 ? {} : _c,
10572
10699
  _d = _a.verbiage,
10573
- verbiage = _d === void 0 ? {} : _d;
10574
- var t = reactI18next.useTranslation().t;
10700
+ rawVerbiage = _d === void 0 ? {} : _d;
10575
10701
  var _e = React.useContext(CameraStateContext),
10576
10702
  cameraReady = _e.cameraReady,
10577
10703
  cameraAccessDenied = _e.cameraAccessDenied;
10578
10704
  var modelsReady = React.useContext(HighPerformanceSelfieGuidanceModelsContext).ready;
10705
+ assets.instructionImageUrl || (assets.instructionImageUrl = "".concat(DEFAULT_CDN_URL, "/Selfie-Image-1.png"));
10706
+ var verbiage = useTranslations(rawVerbiage, {
10707
+ headingText: 'Use your device camera to capture your face',
10708
+ removeEyeCoveringsText: 'Remove Sunglasses & Hat',
10709
+ avoidExcessiveBacklightingText: 'Avoid Excessive Backlighting',
10710
+ continueText: 'Continue',
10711
+ cameraInitializingText: 'Camera initializing...',
10712
+ modelsWarmingUpText: 'Models warming up...'
10713
+ });
10579
10714
  var _f = React.useState(false),
10580
10715
  dismissed = _f[0],
10581
10716
  setDismissed = _f[1];
10582
10717
  if (dismissed) return /*#__PURE__*/React__default['default'].createElement(React__default['default'].Fragment, null);
10583
- assets.instructionImageUrl || (assets.instructionImageUrl = "".concat(DEFAULT_CDN_URL, "/Selfie-Image-1.png"));
10584
- verbiage.headingText || (verbiage.headingText = t('Use your device camera to capture your face'));
10585
- verbiage.removeEyeCoveringsText || (verbiage.removeEyeCoveringsText = t('Remove Sunglasses & Hat'));
10586
- verbiage.avoidExcessiveBacklightingText || (verbiage.avoidExcessiveBacklightingText = t('Avoid Excessive Backlighting'));
10587
- verbiage.continueText || (verbiage.continueText = t('Continue'));
10588
- verbiage.cameraInitializingText || (verbiage.cameraInitializingText = t('Camera initializing...'));
10589
- verbiage.modelsWarmingUpText || (verbiage.modelsWarmingUpText = t('Models warming up...'));
10590
10718
  if (cameraAccessDenied) {
10591
10719
  return /*#__PURE__*/React__default['default'].createElement(CameraAccessDeniedOverlay, {
10592
10720
  assets: assets.cameraAccessDenied,
10593
10721
  colors: colors.cameraAccessDenied,
10594
- verbiage: verbiage.cameraAccessDenied
10722
+ verbiage: rawVerbiage.cameraAccessDenied
10595
10723
  });
10596
10724
  }
10597
10725
  return /*#__PURE__*/React__default['default'].createElement(OverlayContainer, null, /*#__PURE__*/React__default['default'].createElement(OverlayInner, null, /*#__PURE__*/React__default['default'].createElement("div", {
@@ -10641,14 +10769,15 @@ var FaceLivenessSuccess = function FaceLivenessSuccess(_a) {
10641
10769
  _d = _a.colors,
10642
10770
  colors = _d === void 0 ? {} : _d,
10643
10771
  _e = _a.verbiage,
10644
- verbiage = _e === void 0 ? {} : _e;
10645
- var t = reactI18next.useTranslation().t;
10772
+ rawVerbiage = _e === void 0 ? {} : _e;
10646
10773
  colors.retryBtn || (colors.retryBtn = {});
10647
10774
  (_b = colors.retryBtn).backgroundColor || (_b.backgroundColor = '#ea8557');
10648
10775
  (_c = colors.retryBtn).textColor || (_c.textColor = 'white');
10649
- verbiage.headingText || (verbiage.headingText = t('Face liveness has been verified!'));
10650
- verbiage.retryBtnText || (verbiage.retryBtnText = t('Retry'));
10651
- verbiage.doneBtnText || (verbiage.doneBtnText = t('Done'));
10776
+ var verbiage = useTranslations(rawVerbiage, {
10777
+ headingText: 'Face liveness has been verified!',
10778
+ retryBtnText: 'Retry',
10779
+ doneBtnText: 'Done'
10780
+ });
10652
10781
  return /*#__PURE__*/React__default['default'].createElement(OverlayContainer, null, /*#__PURE__*/React__default['default'].createElement(OverlayInner, null, /*#__PURE__*/React__default['default'].createElement("h3", {
10653
10782
  style: {
10654
10783
  marginBottom: 24
@@ -10681,8 +10810,7 @@ var FaceLivenessFailure = function FaceLivenessFailure(_a) {
10681
10810
  _h = _a.colors,
10682
10811
  colors = _h === void 0 ? {} : _h,
10683
10812
  _j = _a.verbiage,
10684
- verbiage = _j === void 0 ? {} : _j;
10685
- var t = reactI18next.useTranslation().t;
10813
+ rawVerbiage = _j === void 0 ? {} : _j;
10686
10814
  assets.imageUrl || (assets.imageUrl = "".concat(DEFAULT_CDN_URL, "/manual_capture.png"));
10687
10815
  colors.retryBtn || (colors.retryBtn = {});
10688
10816
  (_b = colors.retryBtn).backgroundColor || (_b.backgroundColor = '#ea8557');
@@ -10690,9 +10818,11 @@ var FaceLivenessFailure = function FaceLivenessFailure(_a) {
10690
10818
  colors.exitBtn || (colors.exitBtn = {});
10691
10819
  (_d = colors.exitBtn).backgroundColor || (_d.backgroundColor = '#666');
10692
10820
  (_e = colors.exitBtn).textColor || (_e.textColor = 'white');
10693
- verbiage.headingText || (verbiage.headingText = t('Live face not detected, please try again'));
10694
- verbiage.retryBtnText || (verbiage.retryBtnText = t('Retry'));
10695
- verbiage.exitBtnText || (verbiage.exitBtnText = t('Exit'));
10821
+ var verbiage = useTranslations(rawVerbiage, {
10822
+ headingText: 'Live face not detected, please try again',
10823
+ retryBtnText: 'Retry',
10824
+ exitBtnText: 'Exit'
10825
+ });
10696
10826
  return /*#__PURE__*/React__default['default'].createElement(OverlayContainer, null, /*#__PURE__*/React__default['default'].createElement(OverlayInner, null, /*#__PURE__*/React__default['default'].createElement("h3", {
10697
10827
  style: {
10698
10828
  marginBottom: 24
@@ -11376,14 +11506,15 @@ function truncate(str, max_chars) {
11376
11506
  var AdditionalDocumentCapture = function AdditionalDocumentCapture(_a) {
11377
11507
  var document = _a.document,
11378
11508
  onComplete = _a.onComplete,
11379
- headingText = _a.headingText,
11380
- nextBtnText = _a.nextBtnText;
11381
- var t = reactI18next.useTranslation().t;
11382
- var _b = React.useState(null),
11383
- file = _b[0],
11384
- setFile = _b[1];
11385
- headingText = headingText || t('Additional document capture');
11386
- nextBtnText = nextBtnText || t('Next');
11509
+ _b = _a.verbiage,
11510
+ rawVerbiage = _b === void 0 ? {} : _b;
11511
+ var _c = React.useState(null),
11512
+ file = _c[0],
11513
+ setFile = _c[1];
11514
+ var verbiage = useTranslations(rawVerbiage, {
11515
+ headingText: 'Additional document capture',
11516
+ nextBtnText: 'Next'
11517
+ });
11387
11518
  return /*#__PURE__*/React__default['default'].createElement(OverlayContainer, null, /*#__PURE__*/React__default['default'].createElement(OverlayInner, {
11388
11519
  style: {
11389
11520
  textAlign: 'left'
@@ -11392,7 +11523,7 @@ var AdditionalDocumentCapture = function AdditionalDocumentCapture(_a) {
11392
11523
  style: {
11393
11524
  margin: '0 0 8px'
11394
11525
  }
11395
- }, headingText, ": ", document.name), document.description && /*#__PURE__*/React__default['default'].createElement("p", {
11526
+ }, verbiage.headingText, ": ", document.name), document.description && /*#__PURE__*/React__default['default'].createElement("p", {
11396
11527
  style: {
11397
11528
  margin: '8px 0'
11398
11529
  }
@@ -11435,7 +11566,7 @@ var AdditionalDocumentCapture = function AdditionalDocumentCapture(_a) {
11435
11566
  };
11436
11567
  fileReader.readAsDataURL(file);
11437
11568
  }
11438
- }, nextBtnText))));
11569
+ }, verbiage.nextBtnText))));
11439
11570
  };
11440
11571
 
11441
11572
  var AdditionalDocumentCaptureWizard = function AdditionalDocumentCaptureWizard(_a) {
@@ -11480,9 +11611,8 @@ var AdditionalDocumentCaptureWizard = function AdditionalDocumentCaptureWizard(_
11480
11611
  if (isComplete) return /*#__PURE__*/React__default['default'].createElement(React__default['default'].Fragment, null, "Thanks, your documents have been received.");
11481
11612
  return /*#__PURE__*/React__default['default'].createElement(AdditionalDocumentCapture, {
11482
11613
  key: documentIndex,
11483
- headingText: verbiage.headingText,
11484
- nextBtnText: verbiage.nextBtnText,
11485
11614
  document: currentDocument,
11615
+ verbiage: verbiage,
11486
11616
  onComplete: function onComplete(data) {
11487
11617
  setUploadedDocuments(function (f) {
11488
11618
  return tslib.__spreadArray(tslib.__spreadArray([], f, true), [data], false);
@@ -11526,16 +11656,17 @@ var templateObject_1$1, templateObject_2, templateObject_3, templateObject_4;
11526
11656
  var SignatureCapture = function SignatureCapture(_a) {
11527
11657
  var onAccept = _a.onAccept,
11528
11658
  _b = _a.verbiage,
11529
- verbiage = _b === void 0 ? {} : _b;
11530
- var t = reactI18next.useTranslation().t;
11659
+ rawVerbiage = _b === void 0 ? {} : _b;
11531
11660
  var _c = useResizeObserver__default['default'](),
11532
11661
  ref = _c.ref,
11533
11662
  width = _c.width,
11534
11663
  height = _c.height;
11535
11664
  var signaturePad = React.useRef(null);
11536
- verbiage.headingText = verbiage.headingText || t('Please sign the box below');
11537
- verbiage.acceptBtnText = verbiage.acceptBtnText || t('Accept');
11538
- verbiage.clearBtnText = verbiage.clearBtnText || t('Clear');
11665
+ var verbiage = useTranslations(rawVerbiage, {
11666
+ headingText: 'Please sign the box below',
11667
+ acceptBtnText: 'Accept',
11668
+ clearBtnText: 'Clear'
11669
+ });
11539
11670
  return /*#__PURE__*/React__default['default'].createElement(PageContainer, null, /*#__PURE__*/React__default['default'].createElement(SignaturePaperBacking, null, /*#__PURE__*/React__default['default'].createElement(GuidanceMessageContainer, {
11540
11671
  "$top": "5vh"
11541
11672
  }, /*#__PURE__*/React__default['default'].createElement(GuidanceMessage, null, verbiage.headingText)), /*#__PURE__*/React__default['default'].createElement(SignatureCanvasContainer, null, /*#__PURE__*/React__default['default'].createElement(SignaturePad, {
@@ -11614,10 +11745,9 @@ var VideoSignatureCapture = function VideoSignatureCapture(_a) {
11614
11745
  _d = _a.colors,
11615
11746
  colors = _d === void 0 ? {} : _d,
11616
11747
  _e = _a.verbiage,
11617
- verbiage = _e === void 0 ? {} : _e,
11748
+ rawVerbiage = _e === void 0 ? {} : _e,
11618
11749
  _f = _a.debugMode,
11619
11750
  debugMode = _f === void 0 ? false : _f;
11620
- var t = reactI18next.useTranslation().t;
11621
11751
  var _g = React.useContext(CameraStateContext),
11622
11752
  cameraRef = _g.cameraRef,
11623
11753
  videoRef = _g.videoRef;
@@ -11648,9 +11778,11 @@ var VideoSignatureCapture = function VideoSignatureCapture(_a) {
11648
11778
  setSignatureVideoData = _o[1];
11649
11779
  colors.guidanceMessageBackgroundColor || (colors.guidanceMessageBackgroundColor = '#ccc');
11650
11780
  colors.guidanceMessageTextColor || (colors.guidanceMessageTextColor = 'black');
11651
- verbiage.guidanceMessageText || (verbiage.guidanceMessageText = t('Please sign the box below'));
11652
- verbiage.acceptBtnText || (verbiage.acceptBtnText = t('Accept'));
11653
- verbiage.clearBtnText || (verbiage.clearBtnText = t('Clear'));
11781
+ var verbiage = useTranslations(rawVerbiage, {
11782
+ guidanceMessageText: 'Please sign the box below',
11783
+ acceptBtnText: 'Accept',
11784
+ clearBtnText: 'Clear'
11785
+ });
11654
11786
  var outputCanvas = React.useRef(null);
11655
11787
  React.useEffect(function () {
11656
11788
  setTimeout(function () {
@@ -11819,14 +11951,15 @@ var VideoSignatureSuccess = function VideoSignatureSuccess(_a) {
11819
11951
  _d = _a.colors,
11820
11952
  colors = _d === void 0 ? {} : _d,
11821
11953
  _e = _a.verbiage,
11822
- verbiage = _e === void 0 ? {} : _e;
11823
- var t = reactI18next.useTranslation().t;
11954
+ rawVerbiage = _e === void 0 ? {} : _e;
11824
11955
  colors.retryBtn || (colors.retryBtn = {});
11825
11956
  (_b = colors.retryBtn).backgroundColor || (_b.backgroundColor = '#ea8557');
11826
11957
  (_c = colors.retryBtn).textColor || (_c.textColor = 'white');
11827
- verbiage.headingText || (verbiage.headingText = t('Video signature has been successfully captured!'));
11828
- verbiage.retryBtnText || (verbiage.retryBtnText = t('Retry'));
11829
- verbiage.doneBtnText || (verbiage.doneBtnText = t('Done'));
11958
+ var verbiage = useTranslations(rawVerbiage, {
11959
+ headingText: 'Video signature has been successfully captured!',
11960
+ retryBtnText: 'Retry',
11961
+ doneBtnText: 'Done'
11962
+ });
11830
11963
  return /*#__PURE__*/React__default['default'].createElement(OverlayContainer, null, /*#__PURE__*/React__default['default'].createElement(OverlayInner, null, /*#__PURE__*/React__default['default'].createElement("h1", null, verbiage.headingText), /*#__PURE__*/React__default['default'].createElement(OverlayImageWrapper, null, /*#__PURE__*/React__default['default'].createElement(StyledVideo, {
11831
11964
  src: videoUrl,
11832
11965
  poster: videoUrl + '#t=0.1',
@@ -12153,78 +12286,6 @@ var CompositeWizardComponent = function CompositeWizardComponent(_a) {
12153
12286
  }
12154
12287
  };
12155
12288
 
12156
- var enTranslation = {};
12157
-
12158
- var esTranslation = {
12159
- 'Use your device camera to capture your ID': 'Para capturar la identificación hay que utilizar la cámara del dispositivo.',
12160
- 'Use your iPhone as a webcam': 'Usar el iPhone como cámara web',
12161
- 'Models warming up...': 'Cargando modelos...',
12162
- 'Camera initializing...': 'Inicializando la cámara...',
12163
- 'Camera access blocked': 'Acceso bloqueado a la cámara',
12164
- 'Location access blocked': 'Acceso bloqueado a la localización',
12165
- Continue: 'Continuar',
12166
- 'Your camera permission is disabled': 'El permiso de la cámara está desactivado',
12167
- 'This application requires access to your camera to continue. Please accept the permission once prompted by the browser. If the browser does not prompt for camera permissions, you must go to settings and provide camera access to the current browser.': 'Esta aplicación requiere el acceso a la cámara para continuar. Hay que aceptar el permiso una vez que se muestre la ventana en el explorador. Si no aparece la ventana para otorgar permisos, entonces hay que dirigirse a Configuración y otorgar el permiso a la cámara en el explorador actual.',
12168
- 'Your location permission is disabled': 'El permiso de la localización está desactivado',
12169
- 'This application requires access to your location to continue. Please accept the permission once prompted by the browser. If the browser does not prompt for location permissions, you must go to settings and provide location access to the current browser.': 'Esta aplicación requiere el acceso a la localización para continuar. Hay que aceptar el permiso una vez que se muestre la ventana en el explorador. Si no aparece la ventana para otorgar permisos, entonces hay que dirigirse a Configuración y otorgar el permiso a la localización en el explorador actual.',
12170
- Retry: 'Reintentar',
12171
- 'Scan the front of ID': 'Escanear el frente de la ID',
12172
- 'Scan the back of ID': 'Escanear el reverso de la ID',
12173
- 'Scan the ID page of passport': 'Escanear la página de datos del pasaporte',
12174
- 'ID Card Front': 'Frente de la ID',
12175
- 'ID Card Back': 'Reverso de la ID',
12176
- Passport: 'Pasaporte',
12177
- 'Capturing...': 'Capturando...',
12178
- 'Capture failed!': 'Falló la captura',
12179
- 'Please flip your ID card...': 'Por favor voltea la identificación...',
12180
- 'ID Capture Successful': 'Captura Exitosa de ID',
12181
- 'Verify the entire ID was captured clearly with no glare.': 'Hay que verificar que toda la ID se vea completa y sin reflejos.',
12182
- Submit: 'Enviar',
12183
- 'Submitting...': 'Enviando...',
12184
- 'Use your device camera to capture your face': 'Hay que utilizar la cámara del dispositivo para capturar el rostro',
12185
- 'Remove Sunglasses & Hat': 'Hay que quitarse lentes y/o la gorra',
12186
- 'Avoid Excessive Backlighting': 'Hay que evitar demasiada luz en el fondo',
12187
- 'Hold still for a few seconds...': 'Hay que permanecer quieto por unos segundos...',
12188
- 'Look straight into the camera...': 'Hay que mirar directamente a la cámara...',
12189
- 'Move back...': 'Hay que hacerse hacia atrás..',
12190
- 'Move forward...': 'Hay que hacerse hacia adelante...',
12191
- 'Move to the center...': 'Hay que moverse hacia el centro...',
12192
- 'Please remove your eye coverings (sunglasses, eye patch, etc.)...': 'Hay que quitarse lo que cubre los ojos (lentes, parche, etc.)...',
12193
- 'Please remove your head coverings (hat, scarf, etc.)...': 'Hay que quitarse lo que cubre la cabeza (gorra, mascada, etc.)...',
12194
- 'Please remove your mask...': 'Hay que quitarse el cubrebocas...',
12195
- 'Live face not detected, please try again': 'Rostro vivo no detectado. Por favor hay que intentar de nuevo.',
12196
- Exit: 'Salir',
12197
- 'Face liveness has been verified!': 'Se ha verificado la Prueba de Vida en rostro!',
12198
- Done: 'Terminar',
12199
- 'Customer has been identified!': '¡Se ha identificado al cliente!',
12200
- 'Customer not found': 'Cliente no encontrado',
12201
- 'Additional document capture': 'Captura de otro documento',
12202
- Next: 'Siguiente',
12203
- 'Please sign the box below': 'Por favor, hay que firmar en el recuadro de abajo',
12204
- Accept: 'Aceptar',
12205
- Clear: 'Borrar',
12206
- 'Video signature has been successfully captured!': 'La video firma ha sido exitosa.'
12207
- };
12208
-
12209
- var resources = {
12210
- en: {
12211
- translation: enTranslation
12212
- },
12213
- es: {
12214
- translation: esTranslation
12215
- }
12216
- };
12217
- var useLanguage = function useLanguage(lang) {
12218
- var i18n = reactI18next.useTranslation().i18n;
12219
- React.useEffect(function () {
12220
- if (lang !== 'auto') {
12221
- i18n.changeLanguage(lang);
12222
- } else {
12223
- i18n.changeLanguage();
12224
- }
12225
- }, [i18n, lang]);
12226
- };
12227
-
12228
12289
  var IdValidation = function IdValidation(_a) {
12229
12290
  var _b = _a.lang,
12230
12291
  lang = _b === void 0 ? 'auto' : _b,
@@ -12885,15 +12946,16 @@ var CustomerVerificationSuccess = function CustomerVerificationSuccess(_a) {
12885
12946
  _d = _a.colors,
12886
12947
  colors = _d === void 0 ? {} : _d,
12887
12948
  _e = _a.verbiage,
12888
- verbiage = _e === void 0 ? {} : _e;
12889
- var t = reactI18next.useTranslation().t;
12949
+ rawVerbiage = _e === void 0 ? {} : _e;
12890
12950
  imageUrl || (imageUrl = "".concat(DEFAULT_CDN_URL, "/Selfie-Image-1.png"));
12891
12951
  colors.retryBtn || (colors.retryBtn = {});
12892
12952
  (_b = colors.retryBtn).backgroundColor || (_b.backgroundColor = '#ea8557');
12893
12953
  (_c = colors.retryBtn).textColor || (_c.textColor = 'white');
12894
- verbiage.headingText || (verbiage.headingText = t('Customer has been verified!'));
12895
- verbiage.retryBtnText || (verbiage.retryBtnText = t('Retry'));
12896
- verbiage.doneBtnText || (verbiage.doneBtnText = t('Done'));
12954
+ var verbiage = useTranslations(rawVerbiage, {
12955
+ headingText: 'Customer has been verified!',
12956
+ retryBtnText: 'Retry',
12957
+ doneBtnText: 'Done'
12958
+ });
12897
12959
  return /*#__PURE__*/React__default['default'].createElement(OverlayContainer, null, /*#__PURE__*/React__default['default'].createElement(OverlayInner, null, /*#__PURE__*/React__default['default'].createElement("h3", {
12898
12960
  style: {
12899
12961
  marginBottom: 24
@@ -12934,8 +12996,7 @@ var CustomerVerificationFailure = function CustomerVerificationFailure(_a) {
12934
12996
  _h = _a.colors,
12935
12997
  colors = _h === void 0 ? {} : _h,
12936
12998
  _j = _a.verbiage,
12937
- verbiage = _j === void 0 ? {} : _j;
12938
- var t = reactI18next.useTranslation().t;
12999
+ rawVerbiage = _j === void 0 ? {} : _j;
12939
13000
  assets.imageUrl || (assets.imageUrl = "".concat(DEFAULT_CDN_URL, "/manual_capture.png"));
12940
13001
  colors.retryBtn || (colors.retryBtn = {});
12941
13002
  (_b = colors.retryBtn).backgroundColor || (_b.backgroundColor = '#ea8557');
@@ -12943,9 +13004,11 @@ var CustomerVerificationFailure = function CustomerVerificationFailure(_a) {
12943
13004
  colors.exitBtn || (colors.exitBtn = {});
12944
13005
  (_d = colors.exitBtn).backgroundColor || (_d.backgroundColor = '#666');
12945
13006
  (_e = colors.exitBtn).textColor || (_e.textColor = 'white');
12946
- verbiage.headingText || (verbiage.headingText = t('Customer not verified'));
12947
- verbiage.retryBtnText || (verbiage.retryBtnText = t('Retry'));
12948
- verbiage.exitBtnText || (verbiage.exitBtnText = t('Exit'));
13007
+ var verbiage = useTranslations(rawVerbiage, {
13008
+ headingText: 'Customer not verified',
13009
+ retryBtnText: 'Retry',
13010
+ exitBtnText: 'Exit'
13011
+ });
12949
13012
  return /*#__PURE__*/React__default['default'].createElement(OverlayContainer, null, /*#__PURE__*/React__default['default'].createElement(OverlayInner, null, /*#__PURE__*/React__default['default'].createElement("h3", {
12950
13013
  style: {
12951
13014
  marginBottom: 24
@@ -13335,15 +13398,16 @@ var CustomerIdentificationSuccess = function CustomerIdentificationSuccess(_a) {
13335
13398
  _d = _a.colors,
13336
13399
  colors = _d === void 0 ? {} : _d,
13337
13400
  _e = _a.verbiage,
13338
- verbiage = _e === void 0 ? {} : _e;
13339
- var t = reactI18next.useTranslation().t;
13401
+ rawVerbiage = _e === void 0 ? {} : _e;
13340
13402
  imageUrl || (imageUrl = "".concat(DEFAULT_CDN_URL, "/Selfie-Image-1.png"));
13341
13403
  colors.retryBtn || (colors.retryBtn = {});
13342
13404
  (_b = colors.retryBtn).backgroundColor || (_b.backgroundColor = '#ea8557');
13343
13405
  (_c = colors.retryBtn).textColor || (_c.textColor = 'white');
13344
- verbiage.headingText || (verbiage.headingText = t('Customer has been identified!'));
13345
- verbiage.retryBtnText || (verbiage.retryBtnText = t('Retry'));
13346
- verbiage.doneBtnText || (verbiage.doneBtnText = t('Done'));
13406
+ var verbiage = useTranslations(rawVerbiage, {
13407
+ headingText: 'Customer has been identified!',
13408
+ retryBtnText: 'Retry',
13409
+ doneBtnText: 'Done'
13410
+ });
13347
13411
  return /*#__PURE__*/React__default['default'].createElement(OverlayContainer, null, /*#__PURE__*/React__default['default'].createElement(OverlayInner, null, /*#__PURE__*/React__default['default'].createElement("h3", {
13348
13412
  style: {
13349
13413
  marginBottom: 24
@@ -13384,8 +13448,7 @@ var CustomerIdentificationFailure = function CustomerIdentificationFailure(_a) {
13384
13448
  _h = _a.colors,
13385
13449
  colors = _h === void 0 ? {} : _h,
13386
13450
  _j = _a.verbiage,
13387
- verbiage = _j === void 0 ? {} : _j;
13388
- var t = reactI18next.useTranslation().t;
13451
+ rawVerbiage = _j === void 0 ? {} : _j;
13389
13452
  assets.imageUrl || (assets.imageUrl = "".concat(DEFAULT_CDN_URL, "/manual_capture.png"));
13390
13453
  colors.retryBtn || (colors.retryBtn = {});
13391
13454
  (_b = colors.retryBtn).backgroundColor || (_b.backgroundColor = '#ea8557');
@@ -13393,9 +13456,11 @@ var CustomerIdentificationFailure = function CustomerIdentificationFailure(_a) {
13393
13456
  colors.exitBtn || (colors.exitBtn = {});
13394
13457
  (_d = colors.exitBtn).backgroundColor || (_d.backgroundColor = '#666');
13395
13458
  (_e = colors.exitBtn).textColor || (_e.textColor = 'white');
13396
- verbiage.headingText || (verbiage.headingText = t('Customer not found'));
13397
- verbiage.retryBtnText || (verbiage.retryBtnText = t('Retry'));
13398
- verbiage.exitBtnText || (verbiage.exitBtnText = t('Exit'));
13459
+ var verbiage = useTranslations(rawVerbiage, {
13460
+ headingText: 'Customer not found',
13461
+ retryBtnText: 'Retry',
13462
+ exitBtnText: 'Exit'
13463
+ });
13399
13464
  return /*#__PURE__*/React__default['default'].createElement(OverlayContainer, null, /*#__PURE__*/React__default['default'].createElement(OverlayInner, null, /*#__PURE__*/React__default['default'].createElement("h3", {
13400
13465
  style: {
13401
13466
  marginBottom: 24