idmission-web-sdk 0.0.70 → 0.0.71

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.
@@ -0,0 +1,5 @@
1
+ import { ReactElement } from 'react';
2
+ export type ModelLoadingErrorOverlayProps = {
3
+ error: Error;
4
+ };
5
+ export declare const ModelLoadingErrorOverlay: ({ error, }: ModelLoadingErrorOverlayProps) => ReactElement;
@@ -7820,6 +7820,23 @@ function cropToBoundingBox(frame, bbox) {
7820
7820
  return canvas;
7821
7821
  }
7822
7822
 
7823
+ var ModelLoadingErrorOverlay = function ModelLoadingErrorOverlay(_a) {
7824
+ var error = _a.error;
7825
+ return /*#__PURE__*/React__default['default'].createElement(OverlayContainer, null, /*#__PURE__*/React__default['default'].createElement(OverlayInner, {
7826
+ style: {
7827
+ justifyContent: 'center'
7828
+ }
7829
+ }, /*#__PURE__*/React__default['default'].createElement("h3", {
7830
+ style: {
7831
+ marginBottom: 8
7832
+ }
7833
+ }, "We're sorry, an unexpected error has occurred."), /*#__PURE__*/React__default['default'].createElement("p", {
7834
+ style: {
7835
+ marginBottom: 0
7836
+ }
7837
+ }, /*#__PURE__*/React__default['default'].createElement("code", null, error.message))));
7838
+ };
7839
+
7823
7840
  var PREDICTION_POSITIONS = {
7824
7841
  boxes: 0,
7825
7842
  scores: 7,
@@ -7884,6 +7901,9 @@ var IdCaptureModelsProvider = function IdCaptureModelsProvider(_a) {
7884
7901
  var _k = React.useState(0),
7885
7902
  focusPredictionTime = _k[0],
7886
7903
  setFocusPredictionTime = _k[1];
7904
+ var _l = React.useState(null),
7905
+ loadingError = _l[0],
7906
+ setLoadingError = _l[1];
7887
7907
  React.useEffect(function () {
7888
7908
  setReady(false);
7889
7909
  var ddmUrl = documentDetectionModelUrl || defaultDocumentDetectionModelUrl;
@@ -7933,9 +7953,13 @@ var IdCaptureModelsProvider = function IdCaptureModelsProvider(_a) {
7933
7953
  });
7934
7954
  });
7935
7955
  }
7936
- loadModels().then(function () {
7937
- setReady(true);
7938
- });
7956
+ try {
7957
+ loadModels().then(function () {
7958
+ setReady(true);
7959
+ });
7960
+ } catch (e) {
7961
+ setLoadingError(e);
7962
+ }
7939
7963
  var webGLCanvas = getWebGLContext(2).canvas;
7940
7964
  webGLCanvas.addEventListener('webglcontextlost', reloadModels);
7941
7965
  return function () {
@@ -8029,7 +8053,9 @@ var IdCaptureModelsProvider = function IdCaptureModelsProvider(_a) {
8029
8053
  }, [detectionTime, focusPredictionTime, getBestFrame, makePrediction, onPredictionMade, ready, resetBestFrame, setThresholds, thresholds]);
8030
8054
  return /*#__PURE__*/React__default['default'].createElement(IdCaptureModelsContext.Provider, {
8031
8055
  value: value
8032
- }, children, /*#__PURE__*/React__default['default'].createElement(InvisibleCanvas, {
8056
+ }, loadingError ? /*#__PURE__*/React__default['default'].createElement(ModelLoadingErrorOverlay, {
8057
+ error: loadingError
8058
+ }) : children, /*#__PURE__*/React__default['default'].createElement(InvisibleCanvas, {
8033
8059
  ref: lastPredictionCanvas
8034
8060
  }), /*#__PURE__*/React__default['default'].createElement(InvisibleCanvas, {
8035
8061
  ref: bestPredictionCanvas
@@ -9849,18 +9875,30 @@ var HighPerformanceSelfieGuidanceModelsProvider = function HighPerformanceSelfie
9849
9875
  var detectorRef = React.useRef(null);
9850
9876
  var rafId = React.useRef(0);
9851
9877
  var loopId = React.useRef(0);
9878
+ var _f = React.useState(null),
9879
+ loadingError = _f[0],
9880
+ setLoadingError = _f[1];
9852
9881
  React.useEffect(function () {
9853
9882
  (function () {
9854
9883
  return tslib.__awaiter(void 0, void 0, void 0, function () {
9855
- var _a;
9884
+ var _a, e_1;
9856
9885
  return tslib.__generator(this, function (_b) {
9857
9886
  switch (_b.label) {
9858
9887
  case 0:
9859
9888
  setReady(false);
9889
+ _b.label = 1;
9890
+ case 1:
9891
+ _b.trys.push([1, 3,, 4]);
9860
9892
  _a = detectorRef;
9861
9893
  return [4, loadHighPerformanceFaceDetector()];
9862
- case 1:
9894
+ case 2:
9863
9895
  _a.current = _b.sent();
9896
+ return [3, 4];
9897
+ case 3:
9898
+ e_1 = _b.sent();
9899
+ setLoadingError(e_1);
9900
+ return [3, 4];
9901
+ case 4:
9864
9902
  setReady(true);
9865
9903
  return [2];
9866
9904
  }
@@ -9996,7 +10034,9 @@ var HighPerformanceSelfieGuidanceModelsProvider = function HighPerformanceSelfie
9996
10034
  }, [onPredictionMade, ready, start, stop]);
9997
10035
  return /*#__PURE__*/React__namespace.createElement(HighPerformanceSelfieGuidanceModelsContext.Provider, {
9998
10036
  value: value
9999
- }, children);
10037
+ }, loadingError ? /*#__PURE__*/React__namespace.createElement(ModelLoadingErrorOverlay, {
10038
+ error: loadingError
10039
+ }) : children);
10000
10040
  };
10001
10041
 
10002
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) {