scandoc-ai-components 0.0.86 → 0.0.87

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 (2) hide show
  1. package/dist/index.js +81 -3
  2. package/package.json +1 -1
package/dist/index.js CHANGED
@@ -11160,7 +11160,9 @@ __webpack_require__.r(__webpack_exports__);
11160
11160
  /* harmony import */ var _config__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../config */ "./src/lib/config.js");
11161
11161
  /* harmony import */ var _requests_extraction__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ../requests/extraction */ "./src/lib/requests/extraction.js");
11162
11162
  /* harmony import */ var _requests_validation__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ../requests/validation */ "./src/lib/requests/validation.js");
11163
- /* harmony import */ var _utils__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! ./utils */ "./src/lib/components/utils.js");
11163
+ /* harmony import */ var _requests_error_logging__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! ../requests/error_logging */ "./src/lib/requests/error_logging.js");
11164
+ /* harmony import */ var _utils__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! ./utils */ "./src/lib/components/utils.js");
11165
+
11164
11166
 
11165
11167
 
11166
11168
 
@@ -11233,8 +11235,8 @@ class ExtractorVideo {
11233
11235
  setTimeout(() => this.analyzeVideoStream(), ExtractorVideo.FREQUENCY_MS);
11234
11236
  return;
11235
11237
  }
11236
- const fullImage = (0,_utils__WEBPACK_IMPORTED_MODULE_4__.videoImgToBase64)(video, canvas, 1280, 720, false);
11237
- const validationImage = (0,_utils__WEBPACK_IMPORTED_MODULE_4__.videoImgToBase64)(video, canvas, ExtractorVideo.VALIDATION_IMG_WIDTH, ExtractorVideo.VALIDATION_IMG_HEIGHT, true);
11238
+ const fullImage = (0,_utils__WEBPACK_IMPORTED_MODULE_5__.videoImgToBase64)(video, canvas, 1280, 720, false);
11239
+ const validationImage = (0,_utils__WEBPACK_IMPORTED_MODULE_5__.videoImgToBase64)(video, canvas, ExtractorVideo.VALIDATION_IMG_WIDTH, ExtractorVideo.VALIDATION_IMG_HEIGHT, true);
11238
11240
  DOCUMENT_DETECTOR.isDocumentPresent(video).then(async isPresent => {
11239
11241
  if (!isPresent) return;
11240
11242
  this.candidateImages.push({
@@ -11248,6 +11250,17 @@ class ExtractorVideo {
11248
11250
  this.candidateImages = [];
11249
11251
  return;
11250
11252
  }
11253
+ if (!isValidationOk) {
11254
+ const isDocUnsupported = response?.InfoCode === "1006";
11255
+ const transactionId = response?.TransactionID;
11256
+ if (isDocUnsupported && transactionId && this.candidateImages.length > 0) {
11257
+ const frontImage = this.candidateImages[this.candidateImages.length - 1].fullImg;
11258
+ await (0,_requests_error_logging__WEBPACK_IMPORTED_MODULE_4__["default"])(frontImage, "", transactionId);
11259
+ this.showMessage("Unsupported document. Logged issue.");
11260
+ }
11261
+ this.candidateImages = [];
11262
+ return;
11263
+ }
11251
11264
  const infoCode = response["InfoCode"];
11252
11265
  const imageId = response["Index"];
11253
11266
  const imageSide = response["Side"];
@@ -11851,6 +11864,71 @@ function getScanDocAIConfig() {
11851
11864
 
11852
11865
  /***/ }),
11853
11866
 
11867
+ /***/ "./src/lib/requests/error_logging.js":
11868
+ /*!*******************************************!*\
11869
+ !*** ./src/lib/requests/error_logging.js ***!
11870
+ \*******************************************/
11871
+ /***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
11872
+
11873
+ "use strict";
11874
+ __webpack_require__.r(__webpack_exports__);
11875
+ /* harmony export */ __webpack_require__.d(__webpack_exports__, {
11876
+ /* harmony export */ "default": () => (__WEBPACK_DEFAULT_EXPORT__)
11877
+ /* harmony export */ });
11878
+ /* harmony import */ var _config__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../config */ "./src/lib/config.js");
11879
+ /* harmony import */ var _utility_utils__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../utility/utils */ "./src/lib/utility/utils.js");
11880
+
11881
+
11882
+ async function callErrorLogging(frontImage, backImage, transactionId) {
11883
+ try {
11884
+ const serviceConfig = (0,_config__WEBPACK_IMPORTED_MODULE_0__.getScanDocAIConfig)();
11885
+ const cfgValues = (0,_config__WEBPACK_IMPORTED_MODULE_0__.getScanDocAIConfigValues)();
11886
+ const {
11887
+ os,
11888
+ browser,
11889
+ device
11890
+ } = (0,_utility_utils__WEBPACK_IMPORTED_MODULE_1__.detectEnvironment)();
11891
+ let tryCount = 0;
11892
+ let errors = [];
11893
+ while (tryCount < cfgValues.MAX_REQUEST_TRY) {
11894
+ const response = await fetch(`${cfgValues.SCAN_APP_URL}error_logging/`, {
11895
+ method: "POST",
11896
+ headers: {
11897
+ Authorization: await serviceConfig.getAccessToken(true),
11898
+ Accept: "application/json",
11899
+ "Content-Type": "application/json"
11900
+ },
11901
+ body: JSON.stringify({
11902
+ AcceptTermsAndConditions: true,
11903
+ TransactionID: transactionId,
11904
+ FrontImage: frontImage,
11905
+ BackImage: backImage ?? "",
11906
+ OS: os,
11907
+ Device: device,
11908
+ Browser: browser
11909
+ })
11910
+ });
11911
+ if (response.status === 202) {
11912
+ return [true, null];
11913
+ }
11914
+ if (response.status === 401 || response.status === 403) {
11915
+ errors = ["Unauthorized access"];
11916
+ await serviceConfig.refreshTokens();
11917
+ } else {
11918
+ const data = await response.json();
11919
+ errors = data.Errors ?? (data.detail ? [data.detail] : ["Backend error, but no details provided!"]);
11920
+ }
11921
+ tryCount++;
11922
+ }
11923
+ return [false, errors];
11924
+ } catch (error) {
11925
+ return [false, [error.message]];
11926
+ }
11927
+ }
11928
+ /* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (callErrorLogging);
11929
+
11930
+ /***/ }),
11931
+
11854
11932
  /***/ "./src/lib/requests/extraction.js":
11855
11933
  /*!****************************************!*\
11856
11934
  !*** ./src/lib/requests/extraction.js ***!
package/package.json CHANGED
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "name": "scandoc-ai-components",
3
3
  "author": "ScanDoc-AI",
4
- "version": "0.0.86",
4
+ "version": "0.0.87",
5
5
  "private": false,
6
6
  "description": "Pure JavaScript package for integrating ScanDoc-AI services.",
7
7
  "keywords": [