idmission-web-sdk 1.0.19 → 1.0.21

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.
@@ -3087,7 +3087,7 @@
3087
3087
  }();
3088
3088
  Browser.type = 'languageDetector';
3089
3089
 
3090
- var webSdkVersion = '1.0.19';
3090
+ var webSdkVersion = '1.0.21';
3091
3091
 
3092
3092
  function getPlatform() {
3093
3093
  return window.platform;
@@ -3263,7 +3263,7 @@
3263
3263
  return (_b = (_a = url.match(/^(data:.*;base64),/)) === null || _a === void 0 ? void 0 : _a[1]) !== null && _b !== void 0 ? _b : '';
3264
3264
  }
3265
3265
 
3266
- var PageContainerDiv = styled__default['default'].div(templateObject_1$b || (templateObject_1$b = __makeTemplateObject(["\n position: fixed;\n top: 0;\n left: 0;\n width: var(--app-width);\n height: calc(\n var(--app-height) - ", "px\n );\n overflow-x: hidden;\n overflow-y: auto;\n font-family:\n Inter,\n -apple-system,\n BlinkMacSystemFont,\n Segoe UI,\n Roboto,\n Oxygen,\n Ubuntu,\n Cantarell,\n Fira Sans,\n Droid Sans,\n Helvetica Neue,\n sans-serif;\n\n &.flex {\n display: flex;\n }\n\n &.padded {\n box-sizing: border-box;\n padding: 16px 24px;\n }\n"], ["\n position: fixed;\n top: 0;\n left: 0;\n width: var(--app-width);\n height: calc(\n var(--app-height) - ", "px\n );\n overflow-x: hidden;\n overflow-y: auto;\n font-family:\n Inter,\n -apple-system,\n BlinkMacSystemFont,\n Segoe UI,\n Roboto,\n Oxygen,\n Ubuntu,\n Cantarell,\n Fira Sans,\n Droid Sans,\n Helvetica Neue,\n sans-serif;\n\n &.flex {\n display: flex;\n }\n\n &.padded {\n box-sizing: border-box;\n padding: 16px 24px;\n }\n"])), function (_a) {
3266
+ var PageContainerDiv = styled__default['default'].div(templateObject_1$c || (templateObject_1$c = __makeTemplateObject(["\n position: fixed;\n top: 0;\n left: 0;\n width: var(--app-width);\n height: calc(\n var(--app-height) - ", "px\n );\n overflow-x: hidden;\n overflow-y: auto;\n font-family:\n Inter,\n -apple-system,\n BlinkMacSystemFont,\n Segoe UI,\n Roboto,\n Oxygen,\n Ubuntu,\n Cantarell,\n Fira Sans,\n Droid Sans,\n Helvetica Neue,\n sans-serif;\n\n &.flex {\n display: flex;\n }\n\n &.padded {\n box-sizing: border-box;\n padding: 16px 24px;\n }\n"], ["\n position: fixed;\n top: 0;\n left: 0;\n width: var(--app-width);\n height: calc(\n var(--app-height) - ", "px\n );\n overflow-x: hidden;\n overflow-y: auto;\n font-family:\n Inter,\n -apple-system,\n BlinkMacSystemFont,\n Segoe UI,\n Roboto,\n Oxygen,\n Ubuntu,\n Cantarell,\n Fira Sans,\n Droid Sans,\n Helvetica Neue,\n sans-serif;\n\n &.flex {\n display: flex;\n }\n\n &.padded {\n box-sizing: border-box;\n padding: 16px 24px;\n }\n"])), function (_a) {
3267
3267
  var $heightOffset = _a.$heightOffset;
3268
3268
  return $heightOffset !== null && $heightOffset !== void 0 ? $heightOffset : 0;
3269
3269
  });
@@ -3300,13 +3300,13 @@
3300
3300
  }, dimensionsCalculated && children);
3301
3301
  });
3302
3302
  PageContainer.displayName = 'PageContainer';
3303
- var templateObject_1$b;
3303
+ var templateObject_1$c;
3304
3304
 
3305
- var OverlayContainer = styled__default['default'](PageContainer)(templateObject_1$a || (templateObject_1$a = __makeTemplateObject(["\n background: white;\n z-index: 10000;\n"], ["\n background: white;\n z-index: 10000;\n"])));
3305
+ var OverlayContainer = styled__default['default'](PageContainer)(templateObject_1$b || (templateObject_1$b = __makeTemplateObject(["\n background: white;\n z-index: 10000;\n"], ["\n background: white;\n z-index: 10000;\n"])));
3306
3306
  var OverlayInner = styled__default['default'].div(templateObject_2$4 || (templateObject_2$4 = __makeTemplateObject(["\n text-align: center;\n display: flex;\n flex-direction: column;\n flex-wrap: nowrap;\n padding: 25px;\n max-height: var(--app-height);\n height: 100%;\n box-sizing: border-box;\n"], ["\n text-align: center;\n display: flex;\n flex-direction: column;\n flex-wrap: nowrap;\n padding: 25px;\n max-height: var(--app-height);\n height: 100%;\n box-sizing: border-box;\n"])));
3307
3307
  var OverlayImageWrapper = styled__default['default'].div(templateObject_3$3 || (templateObject_3$3 = __makeTemplateObject(["\n position: relative;\n display: flex;\n flex-grow: 1;\n padding-bottom: 25px;\n max-width: var(--app-width);\n max-height: var(--app-height);\n overflow: hidden;\n\n & > img {\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 max-width: var(--app-width);\n max-height: var(--app-height);\n overflow: hidden;\n\n & > img {\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"])));
3308
3308
  var OverlayImageMultiContainer = styled__default['default'].div(templateObject_4$2 || (templateObject_4$2 = __makeTemplateObject(["\n display: flex;\n margin: auto;\n\n & > div {\n max-height: calc(100vh - 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(100vh - 320px);\n\n & > img {\n width: 100%;\n max-height: 100%;\n height: auto;\n object-fit: contain;\n }\n }\n"])));
3309
- var templateObject_1$a, templateObject_2$4, templateObject_3$3, templateObject_4$2;
3309
+ var templateObject_1$b, templateObject_2$4, templateObject_3$3, templateObject_4$2;
3310
3310
 
3311
3311
  var __assign = (undefined && undefined.__assign) || function () {
3312
3312
  __assign = Object.assign || function(t) {
@@ -3760,7 +3760,7 @@
3760
3760
  className: "ladda-label"
3761
3761
  }, children));
3762
3762
  };
3763
- var StyledButton = styled__default['default'].button(templateObject_1$9 || (templateObject_1$9 = __makeTemplateObject(["\n border-radius: 0;\n margin: 0;\n font-family: inherit;\n font-size: inherit;\n line-height: inherit;\n text-transform: none;\n -webkit-appearance: button;\n\n &:not(:disabled),\n &[type='button']:not(:disabled),\n &[type='reset']:not(:disabled),\n &[type='submit']:not(:disabled) {\n cursor: pointer;\n }\n\n &:focus:not(:focus-visible) {\n outline: 0;\n }\n\n --bs-btn-padding-x: 0.75rem;\n --bs-btn-padding-y: 0.375rem;\n --bs-btn-font-family: ;\n --bs-btn-font-size: 1rem;\n --bs-btn-font-weight: 400;\n --bs-btn-line-height: 1.5;\n --bs-btn-color: var(--bs-body-color);\n --bs-btn-bg: transparent;\n --bs-btn-border-width: var(--bs-border-width);\n --bs-btn-border-color: transparent;\n --bs-btn-border-radius: var(--bs-border-radius);\n --bs-btn-hover-border-color: transparent;\n --bs-btn-box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.15),\n 0 1px 1px rgba(0, 0, 0, 0.075);\n --bs-btn-disabled-opacity: 0.65;\n --bs-btn-focus-box-shadow: 0 0 0 0.25rem\n rgba(var(--bs-btn-focus-shadow-rgb), 0.5);\n display: inline-block;\n padding: var(--bs-btn-padding-y) var(--bs-btn-padding-x);\n font-family: var(--bs-btn-font-family);\n font-size: var(--bs-btn-font-size);\n font-weight: var(--bs-btn-font-weight);\n line-height: var(--bs-btn-line-height);\n color: var(--bs-btn-color);\n text-align: center;\n text-decoration: none;\n vertical-align: middle;\n cursor: pointer;\n -webkit-user-select: none;\n -moz-user-select: none;\n user-select: none;\n border: var(--bs-btn-border-width) solid var(--bs-btn-border-color);\n border-radius: var(--bs-btn-border-radius);\n background-color: var(--bs-btn-bg);\n transition:\n color 0.15s ease-in-out,\n background-color 0.15s ease-in-out,\n border-color 0.15s ease-in-out,\n box-shadow 0.15s ease-in-out;\n\n @media (prefers-reduced-motion: reduce) {\n transition: none;\n }\n\n &:hover {\n filter: brightness(1.15);\n }\n\n &:focus-visible {\n color: var(--bs-btn-hover-color);\n background-color: var(--bs-btn-hover-bg);\n border-color: var(--bs-btn-hover-border-color);\n outline: 0;\n box-shadow: var(--bs-btn-focus-box-shadow);\n }\n\n &:disabled,\n &.disabled,\n fieldset:disabled & {\n color: var(--bs-btn-disabled-color);\n pointer-events: none;\n background-color: var(--bs-btn-disabled-bg);\n border-color: var(--bs-btn-disabled-border-color);\n opacity: var(--bs-btn-disabled-opacity);\n }\n\n --bs-btn-color: ", ";\n --bs-btn-bg: ", ";\n --bs-btn-border-color: ", ";\n --bs-btn-focus-shadow-rgb: 49, 132, 253;\n --bs-btn-active-color: #fff;\n --bs-btn-active-bg: #0a58ca;\n --bs-btn-active-border-color: #0a53be;\n --bs-btn-active-shadow: inset 0 3px 5px rgba(0, 0, 0, 0.125);\n --bs-btn-disabled-color: ", ";\n --bs-btn-disabled-bg: ", ";\n --bs-btn-disabled-border-color: ", ";\n\n --bs-btn-padding-y: 14px;\n --bs-btn-padding-x: 1rem;\n --bs-btn-font-size: 18px;\n --bs-btn-border-radius: 4px;\n"], ["\n border-radius: 0;\n margin: 0;\n font-family: inherit;\n font-size: inherit;\n line-height: inherit;\n text-transform: none;\n -webkit-appearance: button;\n\n &:not(:disabled),\n &[type='button']:not(:disabled),\n &[type='reset']:not(:disabled),\n &[type='submit']:not(:disabled) {\n cursor: pointer;\n }\n\n &:focus:not(:focus-visible) {\n outline: 0;\n }\n\n --bs-btn-padding-x: 0.75rem;\n --bs-btn-padding-y: 0.375rem;\n --bs-btn-font-family: ;\n --bs-btn-font-size: 1rem;\n --bs-btn-font-weight: 400;\n --bs-btn-line-height: 1.5;\n --bs-btn-color: var(--bs-body-color);\n --bs-btn-bg: transparent;\n --bs-btn-border-width: var(--bs-border-width);\n --bs-btn-border-color: transparent;\n --bs-btn-border-radius: var(--bs-border-radius);\n --bs-btn-hover-border-color: transparent;\n --bs-btn-box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.15),\n 0 1px 1px rgba(0, 0, 0, 0.075);\n --bs-btn-disabled-opacity: 0.65;\n --bs-btn-focus-box-shadow: 0 0 0 0.25rem\n rgba(var(--bs-btn-focus-shadow-rgb), 0.5);\n display: inline-block;\n padding: var(--bs-btn-padding-y) var(--bs-btn-padding-x);\n font-family: var(--bs-btn-font-family);\n font-size: var(--bs-btn-font-size);\n font-weight: var(--bs-btn-font-weight);\n line-height: var(--bs-btn-line-height);\n color: var(--bs-btn-color);\n text-align: center;\n text-decoration: none;\n vertical-align: middle;\n cursor: pointer;\n -webkit-user-select: none;\n -moz-user-select: none;\n user-select: none;\n border: var(--bs-btn-border-width) solid var(--bs-btn-border-color);\n border-radius: var(--bs-btn-border-radius);\n background-color: var(--bs-btn-bg);\n transition:\n color 0.15s ease-in-out,\n background-color 0.15s ease-in-out,\n border-color 0.15s ease-in-out,\n box-shadow 0.15s ease-in-out;\n\n @media (prefers-reduced-motion: reduce) {\n transition: none;\n }\n\n &:hover {\n filter: brightness(1.15);\n }\n\n &:focus-visible {\n color: var(--bs-btn-hover-color);\n background-color: var(--bs-btn-hover-bg);\n border-color: var(--bs-btn-hover-border-color);\n outline: 0;\n box-shadow: var(--bs-btn-focus-box-shadow);\n }\n\n &:disabled,\n &.disabled,\n fieldset:disabled & {\n color: var(--bs-btn-disabled-color);\n pointer-events: none;\n background-color: var(--bs-btn-disabled-bg);\n border-color: var(--bs-btn-disabled-border-color);\n opacity: var(--bs-btn-disabled-opacity);\n }\n\n --bs-btn-color: ", ";\n --bs-btn-bg: ", ";\n --bs-btn-border-color: ", ";\n --bs-btn-focus-shadow-rgb: 49, 132, 253;\n --bs-btn-active-color: #fff;\n --bs-btn-active-bg: #0a58ca;\n --bs-btn-active-border-color: #0a53be;\n --bs-btn-active-shadow: inset 0 3px 5px rgba(0, 0, 0, 0.125);\n --bs-btn-disabled-color: ", ";\n --bs-btn-disabled-bg: ", ";\n --bs-btn-disabled-border-color: ", ";\n\n --bs-btn-padding-y: 14px;\n --bs-btn-padding-x: 1rem;\n --bs-btn-font-size: 18px;\n --bs-btn-border-radius: 4px;\n"])), function (_a) {
3763
+ var StyledButton = styled__default['default'].button(templateObject_1$a || (templateObject_1$a = __makeTemplateObject(["\n border-radius: 0;\n margin: 0;\n font-family: inherit;\n font-size: inherit;\n line-height: inherit;\n text-transform: none;\n -webkit-appearance: button;\n\n &:not(:disabled),\n &[type='button']:not(:disabled),\n &[type='reset']:not(:disabled),\n &[type='submit']:not(:disabled) {\n cursor: pointer;\n }\n\n &:focus:not(:focus-visible) {\n outline: 0;\n }\n\n --bs-btn-padding-x: 0.75rem;\n --bs-btn-padding-y: 0.375rem;\n --bs-btn-font-family: ;\n --bs-btn-font-size: 1rem;\n --bs-btn-font-weight: 400;\n --bs-btn-line-height: 1.5;\n --bs-btn-color: var(--bs-body-color);\n --bs-btn-bg: transparent;\n --bs-btn-border-width: var(--bs-border-width);\n --bs-btn-border-color: transparent;\n --bs-btn-border-radius: var(--bs-border-radius);\n --bs-btn-hover-border-color: transparent;\n --bs-btn-box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.15),\n 0 1px 1px rgba(0, 0, 0, 0.075);\n --bs-btn-disabled-opacity: 0.65;\n --bs-btn-focus-box-shadow: 0 0 0 0.25rem\n rgba(var(--bs-btn-focus-shadow-rgb), 0.5);\n display: inline-block;\n padding: var(--bs-btn-padding-y) var(--bs-btn-padding-x);\n font-family: var(--bs-btn-font-family);\n font-size: var(--bs-btn-font-size);\n font-weight: var(--bs-btn-font-weight);\n line-height: var(--bs-btn-line-height);\n color: var(--bs-btn-color);\n text-align: center;\n text-decoration: none;\n vertical-align: middle;\n cursor: pointer;\n -webkit-user-select: none;\n -moz-user-select: none;\n user-select: none;\n border: var(--bs-btn-border-width) solid var(--bs-btn-border-color);\n border-radius: var(--bs-btn-border-radius);\n background-color: var(--bs-btn-bg);\n transition:\n color 0.15s ease-in-out,\n background-color 0.15s ease-in-out,\n border-color 0.15s ease-in-out,\n box-shadow 0.15s ease-in-out;\n\n @media (prefers-reduced-motion: reduce) {\n transition: none;\n }\n\n &:hover {\n filter: brightness(1.15);\n }\n\n &:focus-visible {\n color: var(--bs-btn-hover-color);\n background-color: var(--bs-btn-hover-bg);\n border-color: var(--bs-btn-hover-border-color);\n outline: 0;\n box-shadow: var(--bs-btn-focus-box-shadow);\n }\n\n &:disabled,\n &.disabled,\n fieldset:disabled & {\n color: var(--bs-btn-disabled-color);\n pointer-events: none;\n background-color: var(--bs-btn-disabled-bg);\n border-color: var(--bs-btn-disabled-border-color);\n opacity: var(--bs-btn-disabled-opacity);\n }\n\n --bs-btn-color: ", ";\n --bs-btn-bg: ", ";\n --bs-btn-border-color: ", ";\n --bs-btn-focus-shadow-rgb: 49, 132, 253;\n --bs-btn-active-color: #fff;\n --bs-btn-active-bg: #0a58ca;\n --bs-btn-active-border-color: #0a53be;\n --bs-btn-active-shadow: inset 0 3px 5px rgba(0, 0, 0, 0.125);\n --bs-btn-disabled-color: ", ";\n --bs-btn-disabled-bg: ", ";\n --bs-btn-disabled-border-color: ", ";\n\n --bs-btn-padding-y: 14px;\n --bs-btn-padding-x: 1rem;\n --bs-btn-font-size: 18px;\n --bs-btn-border-radius: 4px;\n"], ["\n border-radius: 0;\n margin: 0;\n font-family: inherit;\n font-size: inherit;\n line-height: inherit;\n text-transform: none;\n -webkit-appearance: button;\n\n &:not(:disabled),\n &[type='button']:not(:disabled),\n &[type='reset']:not(:disabled),\n &[type='submit']:not(:disabled) {\n cursor: pointer;\n }\n\n &:focus:not(:focus-visible) {\n outline: 0;\n }\n\n --bs-btn-padding-x: 0.75rem;\n --bs-btn-padding-y: 0.375rem;\n --bs-btn-font-family: ;\n --bs-btn-font-size: 1rem;\n --bs-btn-font-weight: 400;\n --bs-btn-line-height: 1.5;\n --bs-btn-color: var(--bs-body-color);\n --bs-btn-bg: transparent;\n --bs-btn-border-width: var(--bs-border-width);\n --bs-btn-border-color: transparent;\n --bs-btn-border-radius: var(--bs-border-radius);\n --bs-btn-hover-border-color: transparent;\n --bs-btn-box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.15),\n 0 1px 1px rgba(0, 0, 0, 0.075);\n --bs-btn-disabled-opacity: 0.65;\n --bs-btn-focus-box-shadow: 0 0 0 0.25rem\n rgba(var(--bs-btn-focus-shadow-rgb), 0.5);\n display: inline-block;\n padding: var(--bs-btn-padding-y) var(--bs-btn-padding-x);\n font-family: var(--bs-btn-font-family);\n font-size: var(--bs-btn-font-size);\n font-weight: var(--bs-btn-font-weight);\n line-height: var(--bs-btn-line-height);\n color: var(--bs-btn-color);\n text-align: center;\n text-decoration: none;\n vertical-align: middle;\n cursor: pointer;\n -webkit-user-select: none;\n -moz-user-select: none;\n user-select: none;\n border: var(--bs-btn-border-width) solid var(--bs-btn-border-color);\n border-radius: var(--bs-btn-border-radius);\n background-color: var(--bs-btn-bg);\n transition:\n color 0.15s ease-in-out,\n background-color 0.15s ease-in-out,\n border-color 0.15s ease-in-out,\n box-shadow 0.15s ease-in-out;\n\n @media (prefers-reduced-motion: reduce) {\n transition: none;\n }\n\n &:hover {\n filter: brightness(1.15);\n }\n\n &:focus-visible {\n color: var(--bs-btn-hover-color);\n background-color: var(--bs-btn-hover-bg);\n border-color: var(--bs-btn-hover-border-color);\n outline: 0;\n box-shadow: var(--bs-btn-focus-box-shadow);\n }\n\n &:disabled,\n &.disabled,\n fieldset:disabled & {\n color: var(--bs-btn-disabled-color);\n pointer-events: none;\n background-color: var(--bs-btn-disabled-bg);\n border-color: var(--bs-btn-disabled-border-color);\n opacity: var(--bs-btn-disabled-opacity);\n }\n\n --bs-btn-color: ", ";\n --bs-btn-bg: ", ";\n --bs-btn-border-color: ", ";\n --bs-btn-focus-shadow-rgb: 49, 132, 253;\n --bs-btn-active-color: #fff;\n --bs-btn-active-bg: #0a58ca;\n --bs-btn-active-border-color: #0a53be;\n --bs-btn-active-shadow: inset 0 3px 5px rgba(0, 0, 0, 0.125);\n --bs-btn-disabled-color: ", ";\n --bs-btn-disabled-bg: ", ";\n --bs-btn-disabled-border-color: ", ";\n\n --bs-btn-padding-y: 14px;\n --bs-btn-padding-x: 1rem;\n --bs-btn-font-size: 18px;\n --bs-btn-border-radius: 4px;\n"])), function (_a) {
3764
3764
  var $textColor = _a.$textColor;
3765
3765
  return $textColor !== null && $textColor !== void 0 ? $textColor : '#fff';
3766
3766
  }, function (_a) {
@@ -3779,7 +3779,7 @@
3779
3779
  var $disabledBackgroundColor = _a.$disabledBackgroundColor;
3780
3780
  return $disabledBackgroundColor !== null && $disabledBackgroundColor !== void 0 ? $disabledBackgroundColor : '#0d6efd';
3781
3781
  });
3782
- var templateObject_1$9;
3782
+ var templateObject_1$a;
3783
3783
 
3784
3784
  var GeolocationAccessDeniedOverlay = function GeolocationAccessDeniedOverlay(_a) {
3785
3785
  var accessBlockedImageUrl = _a.accessBlockedImageUrl;
@@ -11927,7 +11927,7 @@
11927
11927
  return [frameWidth, frameHeight];
11928
11928
  }
11929
11929
 
11930
- var InvisibleCanvas = styled__default['default'].canvas(templateObject_1$8 || (templateObject_1$8 = __makeTemplateObject(["\n display: none;\n"], ["\n display: none;\n"])));
11930
+ var InvisibleCanvas = styled__default['default'].canvas(templateObject_1$9 || (templateObject_1$9 = __makeTemplateObject(["\n display: none;\n"], ["\n display: none;\n"])));
11931
11931
  function drawToCanvas(canvas, frame, width, height) {
11932
11932
  if (!canvas) return;
11933
11933
  var ctx = canvas.getContext('2d');
@@ -11949,7 +11949,7 @@
11949
11949
  if (!ctx) return;
11950
11950
  ctx.clearRect(0, 0, canvas.width, canvas.height);
11951
11951
  }
11952
- var templateObject_1$8;
11952
+ var templateObject_1$9;
11953
11953
 
11954
11954
  function cropToShoulders(rawCanvas, cropCanvas, frame, face) {
11955
11955
  if (!rawCanvas || !cropCanvas) return '';
@@ -12473,7 +12473,7 @@
12473
12473
  }
12474
12474
  }
12475
12475
 
12476
- var DebugStatsPane = styled__default['default'].span(templateObject_1$7 || (templateObject_1$7 = __makeTemplateObject(["\n font-size: 16px;\n font-family: monospace;\n position: absolute;\n left: 20px;\n bottom: 20px;\n color: limegreen;\n background: rgba(0, 0, 0, 0.5);\n z-index: 1001;\n"], ["\n font-size: 16px;\n font-family: monospace;\n position: absolute;\n left: 20px;\n bottom: 20px;\n color: limegreen;\n background: rgba(0, 0, 0, 0.5);\n z-index: 1001;\n"])));
12476
+ var DebugStatsPane = styled__default['default'].span(templateObject_1$8 || (templateObject_1$8 = __makeTemplateObject(["\n font-size: 16px;\n font-family: monospace;\n position: absolute;\n left: 20px;\n bottom: 20px;\n color: limegreen;\n background: rgba(0, 0, 0, 0.5);\n z-index: 1001;\n"], ["\n font-size: 16px;\n font-family: monospace;\n position: absolute;\n left: 20px;\n bottom: 20px;\n color: limegreen;\n background: rgba(0, 0, 0, 0.5);\n z-index: 1001;\n"])));
12477
12477
  var ObjectDetectionDebugOverlay = styled__default['default'].div(templateObject_2$3 || (templateObject_2$3 = __makeTemplateObject(["\n position: absolute;\n z-index: 1001;\n width: 100%;\n height: 100%;\n max-width: 100%;\n max-height: 100%;\n overflow: hidden;\n ", "\n"], ["\n position: absolute;\n z-index: 1001;\n width: 100%;\n height: 100%;\n max-width: 100%;\n max-height: 100%;\n overflow: hidden;\n ", "\n"])), function (_a) {
12478
12478
  var $flipX = _a.$flipX;
12479
12479
  return $flipX ? 'transform: scaleX(-1);' : '';
@@ -12644,12 +12644,12 @@
12644
12644
  }
12645
12645
  });
12646
12646
  }
12647
- var templateObject_1$7, templateObject_2$3, templateObject_3$2, templateObject_4$1;
12647
+ var templateObject_1$8, templateObject_2$3, templateObject_3$2, templateObject_4$1;
12648
12648
 
12649
- var ExitCaptureButton = styled__default['default'].button(templateObject_1$6 || (templateObject_1$6 = __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"])));
12650
- var templateObject_1$6;
12649
+ var ExitCaptureButton = styled__default['default'].button(templateObject_1$7 || (templateObject_1$7 = __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"])));
12650
+ var templateObject_1$7;
12651
12651
 
12652
- var Spinner = styled__default['default'].div(templateObject_1$5 || (templateObject_1$5 = __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) {
12652
+ var Spinner = styled__default['default'].div(templateObject_1$6 || (templateObject_1$6 = __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) {
12653
12653
  var $size = _a.$size;
12654
12654
  return $size !== null && $size !== void 0 ? $size : 80;
12655
12655
  }, function (_a) {
@@ -12674,7 +12674,7 @@
12674
12674
  var $color = _a.$color;
12675
12675
  return $color !== null && $color !== void 0 ? $color : '#888';
12676
12676
  });
12677
- var templateObject_1$5;
12677
+ var templateObject_1$6;
12678
12678
 
12679
12679
  var IdCaptureImagePreview = function IdCaptureImagePreview(_a) {
12680
12680
  var text = _a.text,
@@ -12701,10 +12701,10 @@
12701
12701
  alt: ""
12702
12702
  })));
12703
12703
  };
12704
- var ImagePreviewWrapper = styled__default['default'].div(templateObject_1$4 || (templateObject_1$4 = __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"])));
12704
+ var ImagePreviewWrapper = styled__default['default'].div(templateObject_1$5 || (templateObject_1$5 = __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"])));
12705
12705
  var ImagePreviewText = styled__default['default'].div(templateObject_2$2 || (templateObject_2$2 = __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"])));
12706
12706
  var ImagePreviewImageWrapper = styled__default['default'].div(templateObject_3$1 || (templateObject_3$1 = __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"])));
12707
- var templateObject_1$4, templateObject_2$2, templateObject_3$1;
12707
+ var templateObject_1$5, templateObject_2$2, templateObject_3$1;
12708
12708
 
12709
12709
  var enTranslation = {};
12710
12710
 
@@ -12815,7 +12815,7 @@
12815
12815
  }, [fallbacks, i18n.language, t, verbiage]);
12816
12816
  }
12817
12817
 
12818
- var GuidanceMessageContainer = styled__default['default'].div(templateObject_1$3 || (templateObject_1$3 = __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) {
12818
+ var GuidanceMessageContainer = styled__default['default'].div(templateObject_1$4 || (templateObject_1$4 = __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) {
12819
12819
  var $top = _a.$top;
12820
12820
  return $top !== null && $top !== void 0 ? $top : '10vh';
12821
12821
  });
@@ -12826,7 +12826,7 @@
12826
12826
  var $textColor = _a.$textColor;
12827
12827
  return $textColor !== null && $textColor !== void 0 ? $textColor : 'black';
12828
12828
  });
12829
- var templateObject_1$3, templateObject_2$1;
12829
+ var templateObject_1$4, templateObject_2$1;
12830
12830
 
12831
12831
  var initialState$5 = {
12832
12832
  videoWidth: 0,
@@ -13747,10 +13747,10 @@
13747
13747
  "$isRearFacing": (_a = cameraRef.current) === null || _a === void 0 ? void 0 : _a.isRearFacing
13748
13748
  });
13749
13749
  };
13750
- var FullscreenVideoTag = styled__default['default'].video(templateObject_1$2 || (templateObject_1$2 = __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) {
13750
+ var FullscreenVideoTag = styled__default['default'].video(templateObject_1$3 || (templateObject_1$3 = __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) {
13751
13751
  return props.$isRearFacing ? '' : 'scaleX(-1)';
13752
13752
  });
13753
- var templateObject_1$2;
13753
+ var templateObject_1$3;
13754
13754
 
13755
13755
  function useShowSuccessScreen(skipSuccessScreen, successScreenReady, onDoneCallback) {
13756
13756
  var _this = this;
@@ -16260,11 +16260,11 @@
16260
16260
  return signatureData;
16261
16261
  }
16262
16262
 
16263
- var SignatureCanvasContainer = styled__default['default'].div(templateObject_1$1 || (templateObject_1$1 = __makeTemplateObject(["\n position: absolute;\n top: 25%;\n left: 15%;\n width: 70%;\n height: 50%;\n\n @media (max-width: 800px) {\n top: 15%;\n left: 2%;\n width: 96%;\n height: 70%;\n }\n"], ["\n position: absolute;\n top: 25%;\n left: 15%;\n width: 70%;\n height: 50%;\n\n @media (max-width: 800px) {\n top: 15%;\n left: 2%;\n width: 96%;\n height: 70%;\n }\n"])));
16263
+ var SignatureCanvasContainer = styled__default['default'].div(templateObject_1$2 || (templateObject_1$2 = __makeTemplateObject(["\n position: absolute;\n top: 25%;\n left: 15%;\n width: 70%;\n height: 50%;\n\n @media (max-width: 800px) {\n top: 15%;\n left: 2%;\n width: 96%;\n height: 70%;\n }\n"], ["\n position: absolute;\n top: 25%;\n left: 15%;\n width: 70%;\n height: 50%;\n\n @media (max-width: 800px) {\n top: 15%;\n left: 2%;\n width: 96%;\n height: 70%;\n }\n"])));
16264
16264
  var SignaturePad = styled__default['default'].div(templateObject_2 || (templateObject_2 = __makeTemplateObject(["\n position: relative;\n background: rgba(255, 255, 255, 0.5);\n border-radius: 16px;\n flex-grow: 1;\n z-index: 100;\n height: 100%;\n"], ["\n position: relative;\n background: rgba(255, 255, 255, 0.5);\n border-radius: 16px;\n flex-grow: 1;\n z-index: 100;\n height: 100%;\n"])));
16265
16265
  var SignatureButtonsContainer = styled__default['default'].div(templateObject_3 || (templateObject_3 = __makeTemplateObject(["\n flex-grow: 0;\n padding-top: 12px;\n display: flex;\n z-index: 1000;\n position: relative;\n"], ["\n flex-grow: 0;\n padding-top: 12px;\n display: flex;\n z-index: 1000;\n position: relative;\n"])));
16266
16266
  var SignaturePaperBacking = styled__default['default'].div(templateObject_4 || (templateObject_4 = __makeTemplateObject(["\n width: 100%;\n height: 100%;\n display: flex;\n flex-direction: column;\n background-color: #e5e5f7;\n opacity: 0.8;\n background-image: radial-gradient(#444cf7 0.5px, transparent 0.5px),\n radial-gradient(#444cf7 0.5px, #e5e5f7 0.5px);\n background-size: 20px 20px;\n background-position: 0 0, 10px 10px;\n"], ["\n width: 100%;\n height: 100%;\n display: flex;\n flex-direction: column;\n background-color: #e5e5f7;\n opacity: 0.8;\n background-image: radial-gradient(#444cf7 0.5px, transparent 0.5px),\n radial-gradient(#444cf7 0.5px, #e5e5f7 0.5px);\n background-size: 20px 20px;\n background-position: 0 0, 10px 10px;\n"])));
16267
- var templateObject_1$1, templateObject_2, templateObject_3, templateObject_4;
16267
+ var templateObject_1$2, templateObject_2, templateObject_3, templateObject_4;
16268
16268
 
16269
16269
  var SignatureCapture = function SignatureCapture(_a) {
16270
16270
  var onAccept = _a.onAccept,
@@ -16573,7 +16573,7 @@
16573
16573
  retryBtnText: 'Retry',
16574
16574
  doneBtnText: 'Done'
16575
16575
  });
16576
- 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, {
16576
+ 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$1, {
16577
16577
  src: videoUrl,
16578
16578
  poster: videoUrl + '#t=0.1',
16579
16579
  controls: true,
@@ -16592,8 +16592,8 @@
16592
16592
  finished: true
16593
16593
  }, verbiage.doneBtnText))));
16594
16594
  };
16595
- var StyledVideo = styled__default['default'].video(templateObject_1 || (templateObject_1 = __makeTemplateObject(["\n margin-left: auto;\n margin-right: auto;\n max-width: 100%;\n"], ["\n margin-left: auto;\n margin-right: auto;\n max-width: 100%;\n"])));
16596
- var templateObject_1;
16595
+ var StyledVideo$1 = styled__default['default'].video(templateObject_1$1 || (templateObject_1$1 = __makeTemplateObject(["\n margin-left: auto;\n margin-right: auto;\n max-width: 100%;\n"], ["\n margin-left: auto;\n margin-right: auto;\n max-width: 100%;\n"])));
16596
+ var templateObject_1$1;
16597
16597
 
16598
16598
  var VideoSignatureWizard = function VideoSignatureWizard(_a) {
16599
16599
  var onComplete = _a.onComplete,
@@ -18339,13 +18339,179 @@
18339
18339
  })));
18340
18340
  };
18341
18341
 
18342
+ var IdVideoCaptureFlipIdPrompt = function IdVideoCaptureFlipIdPrompt(_a) {
18343
+ var _b;
18344
+ var _c = _a.style,
18345
+ style = _c === void 0 ? {} : _c,
18346
+ _d = _a.assets,
18347
+ assets = _d === void 0 ? {} : _d,
18348
+ _e = _a.verbiage,
18349
+ verbiage = _e === void 0 ? {} : _e;
18350
+ var _f = useResizeObserver(),
18351
+ ref = _f.ref,
18352
+ _g = _f.width,
18353
+ width = _g === void 0 ? 1 : _g,
18354
+ _h = _f.height,
18355
+ height = _h === void 0 ? 1 : _h;
18356
+ var cameraRef = React.useContext(CameraStateContext).cameraRef;
18357
+ assets.frontImageUrl || (assets.frontImageUrl = "".concat(DEFAULT_CDN_URL, "/Shieldout-IDCard-Front-SVG-Landscape-2.svg"));
18358
+ assets.backImageUrl || (assets.backImageUrl = "".concat(DEFAULT_CDN_URL, "/Shieldout-IDCard-Back-SVG-Landscape-2.svg"));
18359
+ var instructionText = useVerbiage(verbiage.instructionText, 'Please flip your ID card...');
18360
+ var padding = 0;
18361
+ var borderWidth = 4;
18362
+ var borderColor = 'white';
18363
+ var isMirrored = !((_b = cameraRef.current) === null || _b === void 0 ? void 0 : _b.isRearFacing);
18364
+ var imageStyle = {
18365
+ height: height - padding * 2 - borderWidth * 2
18366
+ };
18367
+ imageStyle = {
18368
+ width: width - padding * 2 - borderWidth * 2
18369
+ };
18370
+ var _j = React.useState(1),
18371
+ transitionTime = _j[0],
18372
+ setTransitionTime = _j[1];
18373
+ var _k = React.useState(0),
18374
+ rotationAngle = _k[0],
18375
+ setRotationAngle = _k[1];
18376
+ var frontTransforms = ["rotateY(".concat(rotationAngle, "deg)")];
18377
+ if (isMirrored) frontTransforms.push('scaleX(-1)');
18378
+ var backTransforms = ["rotateY(".concat(180 - rotationAngle, "deg)")];
18379
+ if (isMirrored) backTransforms.push('scaleX(-1)');
18380
+ React.useEffect(function () {
18381
+ var doFlip = function doFlip() {
18382
+ setTransitionTime(1);
18383
+ setRotationAngle(180);
18384
+ setTimeout(function () {
18385
+ setTransitionTime(0);
18386
+ setRotationAngle(0);
18387
+ }, 1500);
18388
+ };
18389
+ setTimeout(doFlip, 250);
18390
+ var interval = setInterval(doFlip, 2500);
18391
+ return function () {
18392
+ clearInterval(interval);
18393
+ };
18394
+ }, []);
18395
+ return /*#__PURE__*/React__default['default'].createElement("div", {
18396
+ ref: ref,
18397
+ style: __assign$1(__assign$1({}, style), {
18398
+ position: 'relative'
18399
+ })
18400
+ }, /*#__PURE__*/React__default['default'].createElement("div", {
18401
+ style: {
18402
+ display: 'flex',
18403
+ flexFlow: 'column nowrap',
18404
+ height: '100%'
18405
+ }
18406
+ }, /*#__PURE__*/React__default['default'].createElement("div", {
18407
+ style: {
18408
+ width: '100%',
18409
+ height: '100%',
18410
+ flexGrow: 1,
18411
+ textAlign: 'center',
18412
+ color: 'white',
18413
+ display: 'flex',
18414
+ flexDirection: 'column',
18415
+ justifyContent: 'end'
18416
+ }
18417
+ }, /*#__PURE__*/React__default['default'].createElement("span", {
18418
+ style: {
18419
+ alignContent: 'center',
18420
+ marginTop: 12,
18421
+ marginBottom: 12
18422
+ }
18423
+ }, instructionText)), /*#__PURE__*/React__default['default'].createElement("div", {
18424
+ style: {
18425
+ position: 'relative',
18426
+ display: 'flex',
18427
+ flexFlow: 'row nowrap',
18428
+ alignItems: 'center',
18429
+ justifyItems: 'center',
18430
+ maxWidth: "calc(100%)",
18431
+ maxHeight: "calc(100% - ".concat(padding * 2, "px - ").concat(borderWidth * 2, "px)")
18432
+ }
18433
+ }, /*#__PURE__*/React__default['default'].createElement("div", {
18434
+ style: {
18435
+ width: '100%',
18436
+ height: '100%',
18437
+ minWidth: padding,
18438
+ flexGrow: 1
18439
+ }
18440
+ }), /*#__PURE__*/React__default['default'].createElement("div", {
18441
+ style: {
18442
+ maxWidth: "calc(100% - ".concat(padding * 2, "px - ").concat(borderWidth * 2, "px)"),
18443
+ maxHeight: height - padding * 2 - borderWidth * 2
18444
+ }
18445
+ }, /*#__PURE__*/React__default['default'].createElement("div", {
18446
+ style: {
18447
+ position: 'relative',
18448
+ border: "".concat(borderWidth, "px solid ").concat(borderColor)
18449
+ }
18450
+ }, /*#__PURE__*/React__default['default'].createElement("img", {
18451
+ src: assets.frontImageUrl,
18452
+ alt: "",
18453
+ style: __assign$1({
18454
+ backfaceVisibility: 'hidden',
18455
+ transition: "transform ".concat(transitionTime, "s"),
18456
+ transform: frontTransforms.join(' '),
18457
+ transformStyle: 'preserve-3d',
18458
+ position: 'relative',
18459
+ top: 0,
18460
+ left: 0,
18461
+ display: 'block'
18462
+ }, imageStyle)
18463
+ }), /*#__PURE__*/React__default['default'].createElement("img", {
18464
+ src: assets.backImageUrl,
18465
+ alt: "",
18466
+ style: __assign$1({
18467
+ backfaceVisibility: 'hidden',
18468
+ transition: "transform ".concat(transitionTime, "s"),
18469
+ transform: backTransforms.join(' '),
18470
+ transformStyle: 'preserve-3d',
18471
+ position: 'absolute',
18472
+ top: 0,
18473
+ left: 0,
18474
+ display: 'block'
18475
+ }, imageStyle)
18476
+ }))), /*#__PURE__*/React__default['default'].createElement("div", {
18477
+ style: {
18478
+ width: '100%',
18479
+ height: '100%',
18480
+ minWidth: padding,
18481
+ flexGrow: 1
18482
+ }
18483
+ })), /*#__PURE__*/React__default['default'].createElement("div", {
18484
+ style: {
18485
+ width: '100%',
18486
+ height: '100%',
18487
+ flexGrow: 1,
18488
+ textAlign: 'center',
18489
+ color: 'white',
18490
+ display: 'flex',
18491
+ flexDirection: 'column',
18492
+ justifyContent: 'end'
18493
+ }
18494
+ }, /*#__PURE__*/React__default['default'].createElement("span", {
18495
+ style: {
18496
+ alignContent: 'center',
18497
+ marginTop: 12,
18498
+ marginBottom: 12,
18499
+ opacity: 0
18500
+ }
18501
+ }, instructionText))));
18502
+ };
18503
+
18342
18504
  var IdVideoCaptureGuides = function IdVideoCaptureGuides(_a) {
18343
- var _b = _a.borderWidth,
18505
+ var instructionText = _a.instructionText,
18506
+ _b = _a.borderWidth,
18344
18507
  borderWidth = _b === void 0 ? 3 : _b,
18345
18508
  _c = _a.borderColor,
18346
18509
  borderColor = _c === void 0 ? 'white' : _c,
18347
18510
  _d = _a.guideImageUrl,
18348
- guideImageUrl = _d === void 0 ? "".concat(DEFAULT_CDN_URL, "/Shieldout-IDCard-Front-SVG-Landscape-2.svg") : _d;
18511
+ guideImageUrl = _d === void 0 ? "".concat(DEFAULT_CDN_URL, "/Shieldout-IDCard-Front-SVG-Landscape-2.svg") : _d,
18512
+ _e = _a.flipping,
18513
+ flipping = _e === void 0 ? false : _e;
18514
+ var idGuideWidth = window.innerWidth > window.innerHeight ? '30%' : '75%';
18349
18515
  return /*#__PURE__*/React__default['default'].createElement(React__default['default'].Fragment, null, /*#__PURE__*/React__default['default'].createElement("div", {
18350
18516
  style: {
18351
18517
  position: 'absolute',
@@ -18365,43 +18531,113 @@
18365
18531
  height: '100%',
18366
18532
  margin: '4% auto auto'
18367
18533
  }
18368
- }), /*#__PURE__*/React__default['default'].createElement("img", {
18369
- src: guideImageUrl,
18534
+ }), flipping ? /*#__PURE__*/React__default['default'].createElement(IdVideoCaptureFlipIdPrompt, {
18370
18535
  style: {
18371
- width: '30%',
18536
+ width: idGuideWidth,
18372
18537
  margin: '2% auto 2%'
18373
18538
  }
18374
- })));
18539
+ }) : /*#__PURE__*/React__default['default'].createElement("div", {
18540
+ style: {
18541
+ width: idGuideWidth,
18542
+ margin: '2% auto 2%',
18543
+ display: 'flex',
18544
+ flexFlow: 'column nowrap'
18545
+ }
18546
+ }, /*#__PURE__*/React__default['default'].createElement("div", {
18547
+ style: {
18548
+ width: '100%',
18549
+ height: '100%',
18550
+ flexGrow: 1,
18551
+ textAlign: 'center',
18552
+ color: 'white',
18553
+ display: 'flex',
18554
+ flexDirection: 'column',
18555
+ justifyContent: 'end'
18556
+ }
18557
+ }, /*#__PURE__*/React__default['default'].createElement("span", {
18558
+ style: {
18559
+ alignContent: 'center',
18560
+ marginTop: 12,
18561
+ marginBottom: 12
18562
+ }
18563
+ }, instructionText)), /*#__PURE__*/React__default['default'].createElement("div", {
18564
+ style: {
18565
+ border: "4px solid ".concat(borderColor)
18566
+ }
18567
+ }, /*#__PURE__*/React__default['default'].createElement("img", {
18568
+ src: guideImageUrl,
18569
+ alt: "",
18570
+ style: {
18571
+ width: '100%'
18572
+ }
18573
+ })), /*#__PURE__*/React__default['default'].createElement("div", {
18574
+ style: {
18575
+ width: '100%',
18576
+ height: '100%',
18577
+ flexGrow: 1,
18578
+ textAlign: 'center',
18579
+ color: 'white',
18580
+ display: 'flex',
18581
+ flexDirection: 'column',
18582
+ justifyContent: 'end'
18583
+ }
18584
+ }, /*#__PURE__*/React__default['default'].createElement("span", {
18585
+ style: {
18586
+ alignContent: 'center',
18587
+ marginTop: 12,
18588
+ marginBottom: 12,
18589
+ opacity: 0
18590
+ }
18591
+ }, instructionText)))));
18375
18592
  };
18376
18593
 
18377
18594
  var IdVideoCapture = function IdVideoCapture(_a) {
18378
18595
  var _b, _c, _d, _e, _f, _g;
18379
- var onFaceNotDetected = _a.onFaceNotDetected,
18380
- _h = _a.debugMode,
18381
- debugMode = _h === void 0 ? false : _h;
18382
- var _j = useResizeObserver(),
18383
- ref = _j.ref,
18384
- _k = _j.width,
18385
- width = _k === void 0 ? 1 : _k,
18386
- _l = _j.height,
18387
- height = _l === void 0 ? 1 : _l;
18388
- var _m = React.useContext(CameraStateContext),
18389
- cameraRef = _m.cameraRef,
18390
- videoRef = _m.videoRef,
18391
- videoLoaded = _m.videoLoaded,
18392
- cameraReady = _m.cameraReady;
18393
- var _o = React.useState([]),
18394
- detectedObjects = _o[0],
18395
- setDetectedObjects = _o[1];
18396
- var _p = React.useState([]),
18397
- faces = _p[0],
18398
- setFaces = _p[1];
18399
- var _q = React.useContext(IdCaptureModelsContext),
18400
- idModelsReady = _q.ready,
18401
- idModelsWorking = _q.working,
18402
- makeIdPrediction = _q.makePrediction,
18403
- onIdPredictionMade = _q.onPredictionMade;
18596
+ var onComplete = _a.onComplete,
18597
+ onFaceNotDetected = _a.onFaceNotDetected,
18598
+ _h = _a.idDetectionThreshold,
18599
+ idDetectionThreshold = _h === void 0 ? 0.6 : _h,
18600
+ _j = _a.idFocusThreshold,
18601
+ idFocusThreshold = _j === void 0 ? 0.25 : _j,
18602
+ _k = _a.goodFramesThreshold,
18603
+ goodFramesThreshold = _k === void 0 ? 3 : _k,
18604
+ _l = _a.verbiage,
18605
+ rawVerbiage = _l === void 0 ? {} : _l,
18606
+ _m = _a.debugMode,
18607
+ debugMode = _m === void 0 ? false : _m;
18608
+ var _o = useResizeObserver(),
18609
+ ref = _o.ref,
18610
+ _p = _o.width,
18611
+ width = _p === void 0 ? 1 : _p,
18612
+ _q = _o.height,
18613
+ height = _q === void 0 ? 1 : _q;
18614
+ var _r = React.useContext(CameraStateContext),
18615
+ cameraRef = _r.cameraRef,
18616
+ videoRef = _r.videoRef,
18617
+ videoLoaded = _r.videoLoaded,
18618
+ cameraReady = _r.cameraReady;
18619
+ var _s = React.useState([]),
18620
+ detectedObjects = _s[0],
18621
+ setDetectedObjects = _s[1];
18622
+ var _t = React.useState([]),
18623
+ faces = _t[0],
18624
+ setFaces = _t[1];
18625
+ var _u = React.useContext(IdCaptureModelsContext),
18626
+ idModelsReady = _u.ready,
18627
+ idModelsWorking = _u.working,
18628
+ makeIdPrediction = _u.makePrediction,
18629
+ onIdPredictionMade = _u.onPredictionMade,
18630
+ setThresholds = _u.setThresholds;
18404
18631
  var onSelfiePredictionMade = React.useContext(HighPerformanceSelfieGuidanceModelsContext).onPredictionMade;
18632
+ var _v = useVideoRecorder(cameraRef.current),
18633
+ isRecording = _v.isRecording,
18634
+ startRecording = _v.startRecording,
18635
+ stopRecording = _v.stopRecording,
18636
+ videoUrl = _v.videoUrl;
18637
+ React.useEffect(function () {
18638
+ if (!isRecording && !videoUrl) startRecording();
18639
+ if (videoUrl) onComplete === null || onComplete === void 0 ? void 0 : onComplete(videoUrl);
18640
+ }, [isRecording, onComplete, startRecording, videoUrl]);
18405
18641
  var animationFrame = React.useRef(0);
18406
18642
  var shouldCaptureFrames = React.useRef(false);
18407
18643
  React.useEffect(function () {
@@ -18424,14 +18660,51 @@
18424
18660
  cancelAnimationFrame(animationFrame.current);
18425
18661
  };
18426
18662
  }, [cameraReady, idModelsReady, idModelsWorking, makeIdPrediction, videoLoaded, videoRef]);
18663
+ React.useEffect(function () {
18664
+ setThresholds({
18665
+ document: idDetectionThreshold,
18666
+ passport: 1,
18667
+ focus: idFocusThreshold
18668
+ });
18669
+ }, [idDetectionThreshold, idFocusThreshold, setThresholds]);
18670
+ var _w = React.useState(DocumentType.ID_CARD_FRONT),
18671
+ requestedDocumentType = _w[0],
18672
+ setRequestedDocumentType = _w[1];
18673
+ var _x = React.useState(false),
18674
+ flippingIdCard = _x[0],
18675
+ setFlippingIdCard = _x[1];
18676
+ var _y = React.useState(0),
18677
+ goodFramesCount = _y[0],
18678
+ setGoodFramesCount = _y[1];
18679
+ var goodFramesThresholdMet = goodFramesCount >= goodFramesThreshold;
18427
18680
  React.useEffect(function () {
18428
18681
  onIdPredictionMade(function (prediction) {
18429
18682
  setDetectedObjects(prediction.detectedObjects);
18683
+ if (prediction.detectionThresholdMet && prediction.focusThresholdMet) {
18684
+ setGoodFramesCount(function (n) {
18685
+ return n + 1;
18686
+ });
18687
+ } else {
18688
+ setGoodFramesCount(0);
18689
+ }
18430
18690
  });
18431
- }, [onIdPredictionMade]);
18432
- var _r = React.useState(0),
18433
- numFramesWithoutFaces = _r[0],
18434
- setNumFramesWithoutFaces = _r[1];
18691
+ }, [idDetectionThreshold, onIdPredictionMade]);
18692
+ React.useEffect(function () {
18693
+ if (goodFramesThresholdMet) {
18694
+ if (requestedDocumentType == DocumentType.ID_CARD_FRONT) {
18695
+ setFlippingIdCard(true);
18696
+ setTimeout(function () {
18697
+ setFlippingIdCard(false);
18698
+ setRequestedDocumentType(DocumentType.ID_CARD_BACK);
18699
+ }, 3500);
18700
+ } else {
18701
+ stopRecording();
18702
+ }
18703
+ }
18704
+ }, [goodFramesThresholdMet, onComplete, requestedDocumentType, stopRecording]);
18705
+ var _z = React.useState(0),
18706
+ numFramesWithoutFaces = _z[0],
18707
+ setNumFramesWithoutFaces = _z[1];
18435
18708
  React.useEffect(function () {
18436
18709
  onSelfiePredictionMade(function (faces) {
18437
18710
  setFaces(faces);
@@ -18445,6 +18718,10 @@
18445
18718
  onFaceNotDetected === null || onFaceNotDetected === void 0 ? void 0 : onFaceNotDetected();
18446
18719
  }
18447
18720
  }, [numFramesWithoutFaces, onFaceNotDetected]);
18721
+ var verbiage = useTranslations(rawVerbiage, {
18722
+ idFrontInstructionText: 'Display the front of your ID card...',
18723
+ idBackInstructionText: 'Display the back of your ID card...'
18724
+ });
18448
18725
  var debugScalingDetails = useDebugScalingDetails({
18449
18726
  enabled: debugMode,
18450
18727
  pageWidth: width,
@@ -18455,7 +18732,12 @@
18455
18732
  return /*#__PURE__*/React__default['default'].createElement(PageContainer, {
18456
18733
  ref: ref,
18457
18734
  className: "flex"
18458
- }, /*#__PURE__*/React__default['default'].createElement(CameraVideoTag, null), /*#__PURE__*/React__default['default'].createElement(IdVideoCaptureGuides, null), debugMode && detectedObjects.length > 0 && /*#__PURE__*/React__default['default'].createElement(ObjectDetectionDebugOverlay, {
18735
+ }, /*#__PURE__*/React__default['default'].createElement(CameraVideoTag, null), /*#__PURE__*/React__default['default'].createElement(IdVideoCaptureGuides, {
18736
+ instructionText: requestedDocumentType === DocumentType.ID_CARD_FRONT ? verbiage.idFrontInstructionText : verbiage.idBackInstructionText,
18737
+ guideImageUrl: "".concat(DEFAULT_CDN_URL, "/Shieldout-IDCard-").concat(requestedDocumentType === DocumentType.ID_CARD_FRONT ? 'Front' : 'Back', "-SVG-Landscape-2.svg"),
18738
+ borderColor: goodFramesCount > 0 ? 'green' : 'white',
18739
+ flipping: flippingIdCard
18740
+ }), debugMode && detectedObjects.length > 0 && /*#__PURE__*/React__default['default'].createElement(ObjectDetectionDebugOverlay, {
18459
18741
  "$flipX": !((_f = cameraRef.current) === null || _f === void 0 ? void 0 : _f.isRearFacing)
18460
18742
  }, detectedObjects.map(function (obj, i) {
18461
18743
  var _a;
@@ -18476,9 +18758,48 @@
18476
18758
  scaling: debugScalingDetails,
18477
18759
  flipX: !((_a = cameraRef.current) === null || _a === void 0 ? void 0 : _a.isRearFacing)
18478
18760
  });
18479
- })));
18761
+ })), debugMode && /*#__PURE__*/React__default['default'].createElement(DebugStatsPane, null, cameraRef.current ? /*#__PURE__*/React__default['default'].createElement(React__default['default'].Fragment, null, "\u2705 Camera: ", cameraRef.current.label, " (", cameraRef.current.width, "x", cameraRef.current.height, ")") : '❌ Camera not ready', /*#__PURE__*/React__default['default'].createElement("br", null), goodFramesThresholdMet ? '✅' : '❌', " Good Frame Count:", ' ', goodFramesCount, "/", goodFramesThreshold));
18480
18762
  };
18481
18763
 
18764
+ var IdVideoCaptureSuccess = function IdVideoCaptureSuccess(_a) {
18765
+ var _b, _c;
18766
+ var videoUrl = _a.videoUrl,
18767
+ onDoneClick = _a.onDoneClick,
18768
+ onRetryClick = _a.onRetryClick,
18769
+ _d = _a.colors,
18770
+ colors = _d === void 0 ? {} : _d,
18771
+ _e = _a.verbiage,
18772
+ rawVerbiage = _e === void 0 ? {} : _e;
18773
+ colors.retryBtn || (colors.retryBtn = {});
18774
+ (_b = colors.retryBtn).backgroundColor || (_b.backgroundColor = '#ea8557');
18775
+ (_c = colors.retryBtn).textColor || (_c.textColor = 'white');
18776
+ var verbiage = useTranslations(rawVerbiage, {
18777
+ headingText: 'Video ID has been successfully captured!',
18778
+ retryBtnText: 'Retry',
18779
+ doneBtnText: 'Done'
18780
+ });
18781
+ 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, {
18782
+ src: videoUrl,
18783
+ poster: videoUrl + '#t=0.1',
18784
+ controls: true,
18785
+ preload: "metadata",
18786
+ autoPlay: true
18787
+ })), /*#__PURE__*/React__default['default'].createElement("div", null, /*#__PURE__*/React__default['default'].createElement(LoaderButton, {
18788
+ onClick: onRetryClick,
18789
+ colors: colors.retryBtn,
18790
+ finished: true
18791
+ }, verbiage.retryBtnText), /*#__PURE__*/React__default['default'].createElement(LoaderButton, {
18792
+ onClick: onDoneClick,
18793
+ colors: colors.doneBtn,
18794
+ style: {
18795
+ marginLeft: 15
18796
+ },
18797
+ finished: true
18798
+ }, verbiage.doneBtnText))));
18799
+ };
18800
+ var StyledVideo = styled__default['default'].video(templateObject_1 || (templateObject_1 = __makeTemplateObject(["\n margin-left: auto;\n margin-right: auto;\n max-width: 100%;\n"], ["\n margin-left: auto;\n margin-right: auto;\n max-width: 100%;\n"])));
18801
+ var templateObject_1;
18802
+
18482
18803
  var VideoIdWizard = function VideoIdWizard(_a) {
18483
18804
  var _b = _a.idCaptureProps,
18484
18805
  idCaptureProps = _b === void 0 ? {} : _b,
@@ -18497,6 +18818,9 @@
18497
18818
  var _h = React.useState('CAPTURING_ID'),
18498
18819
  captureState = _h[0],
18499
18820
  setCaptureState = _h[1];
18821
+ var _j = React.useState(null),
18822
+ videoUrl = _j[0],
18823
+ setVideoUrl = _j[1];
18500
18824
  var operationStartedAt = React.useRef();
18501
18825
  var captureStartedAt = React.useRef();
18502
18826
  var captureEndedAt = React.useRef();
@@ -18542,6 +18866,10 @@
18542
18866
  });
18543
18867
  });
18544
18868
  }, [logCaptureMetadata, selfieImage, setSelfieImage]);
18869
+ var onVideoCaptureComplete = React.useCallback(function (videoUrl) {
18870
+ setVideoUrl(videoUrl);
18871
+ setCaptureState('SUCCESS');
18872
+ }, []);
18545
18873
  var onVideoCaptureFaceNotDetected = React.useCallback(function () {
18546
18874
  setCaptureState('CHECKING_LIVENESS');
18547
18875
  }, []);
@@ -18587,9 +18915,14 @@
18587
18915
  focusModelUrl: (_h = (_g = idCaptureProps.assets) === null || _g === void 0 ? void 0 : _g.focusModelUrl) !== null && _h !== void 0 ? _h : '',
18588
18916
  logPredictions: debugMode
18589
18917
  }, /*#__PURE__*/React__default['default'].createElement(HighPerformanceSelfieGuidanceModelsProvider, null, /*#__PURE__*/React__default['default'].createElement(IdVideoCapture, {
18918
+ onComplete: onVideoCaptureComplete,
18590
18919
  onFaceNotDetected: onVideoCaptureFaceNotDetected,
18591
18920
  debugMode: debugMode
18592
18921
  }))));
18922
+ case 'SUCCESS':
18923
+ return /*#__PURE__*/React__default['default'].createElement(IdVideoCaptureSuccess, {
18924
+ videoUrl: videoUrl !== null && videoUrl !== void 0 ? videoUrl : ''
18925
+ });
18593
18926
  default:
18594
18927
  return null;
18595
18928
  }