@jaak.ai/stamps 1.0.0-dev.7

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 (122) hide show
  1. package/README.md +385 -0
  2. package/dist/cjs/document-detector_19.cjs.entry.js +8528 -0
  3. package/dist/cjs/index-5e4e5e7d.js +1685 -0
  4. package/dist/cjs/index.cjs.js +2 -0
  5. package/dist/cjs/loader.cjs.js +22 -0
  6. package/dist/cjs/mb-tooltip.cjs.entry.js +26 -0
  7. package/dist/cjs/stamps.cjs.js +23 -0
  8. package/dist/collection/collection-manifest.json +31 -0
  9. package/dist/collection/components/document-detector/document-detector.css +154 -0
  10. package/dist/collection/components/document-detector/document-detector.js +383 -0
  11. package/dist/collection/components/shared/mb-api-process-status/mb-api-process-status.css +360 -0
  12. package/dist/collection/components/shared/mb-api-process-status/mb-api-process-status.js +124 -0
  13. package/dist/collection/components/shared/mb-button/mb-button.css +95 -0
  14. package/dist/collection/components/shared/mb-button/mb-button.js +201 -0
  15. package/dist/collection/components/shared/mb-button-classic/mb-button-classic.css +100 -0
  16. package/dist/collection/components/shared/mb-button-classic/mb-button-classic.js +130 -0
  17. package/dist/collection/components/shared/mb-camera-experience/mb-camera-experience.css +740 -0
  18. package/dist/collection/components/shared/mb-camera-experience/mb-camera-experience.js +827 -0
  19. package/dist/collection/components/shared/mb-camera-experience/mb-camera-experience.utils.js +55 -0
  20. package/dist/collection/components/shared/mb-camera-selection/mb-camera-selection.css +124 -0
  21. package/dist/collection/components/shared/mb-camera-selection/mb-camera-selection.js +194 -0
  22. package/dist/collection/components/shared/mb-camera-toolbar/mb-camera-toolbar.css +80 -0
  23. package/dist/collection/components/shared/mb-camera-toolbar/mb-camera-toolbar.js +275 -0
  24. package/dist/collection/components/shared/mb-completed/mb-completed.css +17 -0
  25. package/dist/collection/components/shared/mb-completed/mb-completed.js +48 -0
  26. package/dist/collection/components/shared/mb-component/mb-component.css +321 -0
  27. package/dist/collection/components/shared/mb-component/mb-component.js +2269 -0
  28. package/dist/collection/components/shared/mb-component/mb-component.utils.js +14 -0
  29. package/dist/collection/components/shared/mb-container/mb-container.css +7 -0
  30. package/dist/collection/components/shared/mb-container/mb-container.js +23 -0
  31. package/dist/collection/components/shared/mb-feedback/mb-feedback.css +36 -0
  32. package/dist/collection/components/shared/mb-feedback/mb-feedback.js +91 -0
  33. package/dist/collection/components/shared/mb-feedback/mb-feedback.utils.js +11 -0
  34. package/dist/collection/components/shared/mb-help/mb-help.css +191 -0
  35. package/dist/collection/components/shared/mb-help/mb-help.js +409 -0
  36. package/dist/collection/components/shared/mb-help/mb-help.model.js +5 -0
  37. package/dist/collection/components/shared/mb-image-box/mb-image-box.css +78 -0
  38. package/dist/collection/components/shared/mb-image-box/mb-image-box.js +150 -0
  39. package/dist/collection/components/shared/mb-modal/mb-modal.css +106 -0
  40. package/dist/collection/components/shared/mb-modal/mb-modal.js +239 -0
  41. package/dist/collection/components/shared/mb-overlay/mb-overlay.css +46 -0
  42. package/dist/collection/components/shared/mb-overlay/mb-overlay.js +76 -0
  43. package/dist/collection/components/shared/mb-progress-tracker/mb-progress-tracker.css +24 -0
  44. package/dist/collection/components/shared/mb-progress-tracker/mb-progress-tracker.js +80 -0
  45. package/dist/collection/components/shared/mb-screen/mb-screen.css +19 -0
  46. package/dist/collection/components/shared/mb-screen/mb-screen.js +48 -0
  47. package/dist/collection/components/shared/mb-spinner/mb-spinner.css +30 -0
  48. package/dist/collection/components/shared/mb-spinner/mb-spinner.js +67 -0
  49. package/dist/collection/components/shared/mb-tooltip/mb-tooltip.css +62 -0
  50. package/dist/collection/components/shared/mb-tooltip/mb-tooltip.js +150 -0
  51. package/dist/collection/components/shared/mb-tooltip-advanced/mb-tooltip-advanced.css +91 -0
  52. package/dist/collection/components/shared/mb-tooltip-advanced/mb-tooltip-advanced.js +96 -0
  53. package/dist/collection/index.js +1 -0
  54. package/dist/collection/utils/data-structures.js +189 -0
  55. package/dist/collection/utils/device.helpers.js +37 -0
  56. package/dist/collection/utils/error-structures.js +47 -0
  57. package/dist/collection/utils/generic.helpers.js +82 -0
  58. package/dist/collection/utils/sdk.service.js +943 -0
  59. package/dist/collection/utils/state-lifter.js +3 -0
  60. package/dist/collection/utils/status.document-detector.js +15 -0
  61. package/dist/collection/utils/translation.service.js +97 -0
  62. package/dist/esm/document-detector_19.entry.js +8506 -0
  63. package/dist/esm/index-dc740acb.js +1656 -0
  64. package/dist/esm/index.js +1 -0
  65. package/dist/esm/loader.js +18 -0
  66. package/dist/esm/mb-tooltip.entry.js +22 -0
  67. package/dist/esm/polyfills/core-js.js +11 -0
  68. package/dist/esm/polyfills/css-shim.js +1 -0
  69. package/dist/esm/polyfills/dom.js +79 -0
  70. package/dist/esm/polyfills/es5-html-element.js +1 -0
  71. package/dist/esm/polyfills/index.js +34 -0
  72. package/dist/esm/polyfills/system.js +6 -0
  73. package/dist/esm/stamps.js +18 -0
  74. package/dist/index.cjs.js +1 -0
  75. package/dist/index.js +1 -0
  76. package/dist/stamps/index.esm.js +0 -0
  77. package/dist/stamps/p-02990b18.entry.js +9 -0
  78. package/dist/stamps/p-7f07a434.js +2 -0
  79. package/dist/stamps/p-ec3f5972.entry.js +1 -0
  80. package/dist/stamps/stamps.esm.js +1 -0
  81. package/dist/types/components/document-detector/document-detector.d.ts +84 -0
  82. package/dist/types/components/shared/mb-api-process-status/mb-api-process-status.d.ts +30 -0
  83. package/dist/types/components/shared/mb-button/mb-button.d.ts +41 -0
  84. package/dist/types/components/shared/mb-button-classic/mb-button-classic.d.ts +27 -0
  85. package/dist/types/components/shared/mb-camera-experience/mb-camera-experience.d.ts +141 -0
  86. package/dist/types/components/shared/mb-camera-experience/mb-camera-experience.utils.d.ts +3 -0
  87. package/dist/types/components/shared/mb-camera-selection/mb-camera-selection.d.ts +33 -0
  88. package/dist/types/components/shared/mb-camera-toolbar/mb-camera-toolbar.d.ts +54 -0
  89. package/dist/types/components/shared/mb-completed/mb-completed.d.ts +12 -0
  90. package/dist/types/components/shared/mb-component/mb-component.d.ts +308 -0
  91. package/dist/types/components/shared/mb-component/mb-component.utils.d.ts +3 -0
  92. package/dist/types/components/shared/mb-container/mb-container.d.ts +8 -0
  93. package/dist/types/components/shared/mb-feedback/mb-feedback.d.ts +19 -0
  94. package/dist/types/components/shared/mb-feedback/mb-feedback.utils.d.ts +2 -0
  95. package/dist/types/components/shared/mb-help/mb-help.d.ts +66 -0
  96. package/dist/types/components/shared/mb-help/mb-help.model.d.ts +9 -0
  97. package/dist/types/components/shared/mb-image-box/mb-image-box.d.ts +35 -0
  98. package/dist/types/components/shared/mb-modal/mb-modal.d.ts +53 -0
  99. package/dist/types/components/shared/mb-overlay/mb-overlay.d.ts +17 -0
  100. package/dist/types/components/shared/mb-progress-tracker/mb-progress-tracker.d.ts +19 -0
  101. package/dist/types/components/shared/mb-screen/mb-screen.d.ts +12 -0
  102. package/dist/types/components/shared/mb-spinner/mb-spinner.d.ts +16 -0
  103. package/dist/types/components/shared/mb-tooltip/mb-tooltip.d.ts +10 -0
  104. package/dist/types/components/shared/mb-tooltip-advanced/mb-tooltip-advanced.d.ts +7 -0
  105. package/dist/types/components.d.ts +1381 -0
  106. package/dist/types/index.d.ts +1 -0
  107. package/dist/types/stencil-public-runtime.d.ts +1637 -0
  108. package/dist/types/utils/data-structures.d.ts +264 -0
  109. package/dist/types/utils/device.helpers.d.ts +7 -0
  110. package/dist/types/utils/error-structures.d.ts +44 -0
  111. package/dist/types/utils/generic.helpers.d.ts +21 -0
  112. package/dist/types/utils/sdk.service.d.ts +52 -0
  113. package/dist/types/utils/state-lifter.d.ts +3 -0
  114. package/dist/types/utils/status.document-detector.d.ts +14 -0
  115. package/dist/types/utils/translation.service.d.ts +77 -0
  116. package/loader/cdn.js +3 -0
  117. package/loader/index.cjs.js +3 -0
  118. package/loader/index.d.ts +21 -0
  119. package/loader/index.es2017.js +3 -0
  120. package/loader/index.js +4 -0
  121. package/loader/package.json +11 -0
  122. package/package.json +63 -0
@@ -0,0 +1,2269 @@
1
+ import { Host, h, } from "@stencil/core";
2
+ import { CameraExperienceState, Code, MultiSideImageType, FeedbackCode, ImageRecognitionType, RecognitionStatus, SDKError, } from "../../../utils/data-structures";
3
+ import * as ErrorTypes from "../../../utils/error-structures";
4
+ import { sdkErrors, ErrorCodes, LicenseErrorType, } from "@microblink/blinkid-in-browser-sdk";
5
+ import * as DeviceHelpers from "../../../utils/device.helpers";
6
+ import * as GenericHelpers from "../../../utils/generic.helpers";
7
+ import * as Utils from "./mb-component.utils";
8
+ export class MbComponent {
9
+ constructor() {
10
+ this.screens = {
11
+ action: null,
12
+ error: null,
13
+ loading: null,
14
+ processing: null,
15
+ };
16
+ this.overlays = {
17
+ camera: null,
18
+ draganddrop: null,
19
+ processing: null,
20
+ modal: null,
21
+ };
22
+ this.gracePeriodEntered = false;
23
+ this.scanReset = false;
24
+ this.detectionSuccessLock = false;
25
+ this.isBackSide = false;
26
+ this.cameraChangeInProgress = false;
27
+ this.blocked = false;
28
+ this.multiSideGalleryOpened = false;
29
+ this.areHelpScreensOpen = false;
30
+ this.galleryImageFirstFile = null;
31
+ this.galleryImageSecondFile = null;
32
+ this.isCameraActive = false;
33
+ this.terminateHelpScreens = async () => {
34
+ this.areHelpScreensOpen = false;
35
+ await this.cameraExperience.terminateHelpScreens();
36
+ };
37
+ this.initializeHelpScreensAndStartOnboarding = async () => {
38
+ this.areHelpScreensOpen = false;
39
+ await this.cameraExperience.initializeHelpScreens({
40
+ onOpen: () => {
41
+ this.areHelpScreensOpen = true;
42
+ this.sdkService.videoRecognizer.pauseRecognition();
43
+ },
44
+ onClose: () => {
45
+ this.areHelpScreensOpen = false;
46
+ this.sdkService.videoRecognizer.resumeRecognition(false);
47
+ },
48
+ });
49
+ await this.cameraExperience.openHelpScreensOnboarding();
50
+ };
51
+ this.galleryExperienceModalErrorWindowVisible = false;
52
+ this.clearIsCameraActive = false;
53
+ this.apiProcessStatusVisible = false;
54
+ this.apiProcessStatusState = "NONE";
55
+ this.allowHelloMessage = true;
56
+ this.engineLocation = "";
57
+ this.workerLocation = "";
58
+ this.licenseKey = undefined;
59
+ this.wasmType = undefined;
60
+ this.blinkIdVariant = undefined;
61
+ this.recognizers = undefined;
62
+ this.recognizerOptions = undefined;
63
+ this.recognitionTimeout = undefined;
64
+ this.recognitionPauseTimeout = undefined;
65
+ this.cameraExperienceStateDurations = null;
66
+ this.includeSuccessFrame = false;
67
+ this.enableDrag = true;
68
+ this.hideLoadingAndErrorUi = false;
69
+ this.rtl = false;
70
+ this.scanFromCamera = true;
71
+ this.scanFromImage = true;
72
+ this.thoroughScanFromImage = false;
73
+ this.galleryOverlayType = "INLINE";
74
+ this.galleryDropType = "INLINE";
75
+ this.showActionLabels = false;
76
+ this.showModalWindows = false;
77
+ this.showCameraFeedbackBarcodeMessage = false;
78
+ this.showScanningLine = false;
79
+ this.iconCameraDefault = 'data:image/svg+xml;utf8,<svg width="20" height="20" viewBox="0 0 20 20" fill="none" xmlns="http://www.w3.org/2000/svg"><path fill-rule="evenodd" clip-rule="evenodd" d="M6.32151 2.98816C6.63407 2.6756 7.05799 2.5 7.50002 2.5H12.5C12.942 2.5 13.366 2.6756 13.6785 2.98816C13.9911 3.30072 14.1667 3.72464 14.1667 4.16667C14.1667 4.38768 14.2545 4.59964 14.4108 4.75592C14.567 4.9122 14.779 5 15 5H15.8334C16.4964 5 17.1323 5.26339 17.6011 5.73223C18.07 6.20107 18.3334 6.83696 18.3334 7.5V15C18.3334 15.663 18.07 16.2989 17.6011 16.7678C17.1323 17.2366 16.4964 17.5 15.8334 17.5H4.16669C3.50365 17.5 2.86776 17.2366 2.39892 16.7678C1.93008 16.2989 1.66669 15.663 1.66669 15V7.5C1.66669 6.83696 1.93008 6.20107 2.39892 5.73223C2.86776 5.26339 3.50365 5 4.16669 5H5.00002C5.22103 5 5.433 4.9122 5.58928 4.75592C5.74556 4.59964 5.83335 4.38768 5.83335 4.16667C5.83335 3.72464 6.00895 3.30072 6.32151 2.98816ZM4.16669 6.66667C3.94567 6.66667 3.73371 6.75446 3.57743 6.91074C3.42115 7.06702 3.33335 7.27899 3.33335 7.5V15C3.33335 15.221 3.42115 15.433 3.57743 15.5893C3.73371 15.7455 3.94567 15.8333 4.16669 15.8333H15.8334C16.0544 15.8333 16.2663 15.7455 16.4226 15.5893C16.5789 15.433 16.6667 15.221 16.6667 15V7.5C16.6667 7.27899 16.5789 7.06702 16.4226 6.91074C16.2663 6.75446 16.0544 6.66667 15.8334 6.66667H15C14.337 6.66667 13.7011 6.40327 13.2323 5.93443C12.7634 5.46559 12.5 4.82971 12.5 4.16667L7.50002 4.16667C7.50002 4.82971 7.23663 5.46559 6.76779 5.93443C6.29895 6.40327 5.66306 6.66667 5.00002 6.66667H4.16669Z" fill="black"/><path fill-rule="evenodd" clip-rule="evenodd" d="M10 9.16667C9.07955 9.16667 8.33335 9.91286 8.33335 10.8333C8.33335 11.7538 9.07955 12.5 10 12.5C10.9205 12.5 11.6667 11.7538 11.6667 10.8333C11.6667 9.91286 10.9205 9.16667 10 9.16667ZM6.66669 10.8333C6.66669 8.99238 8.15907 7.5 10 7.5C11.841 7.5 13.3334 8.99238 13.3334 10.8333C13.3334 12.6743 11.841 14.1667 10 14.1667C8.15907 14.1667 6.66669 12.6743 6.66669 10.8333Z" fill="black"/></svg>';
80
+ this.iconCameraActive = 'data:image/svg+xml;utf8,<svg width="20" height="20" viewBox="0 0 20 20" fill="none" xmlns="http://www.w3.org/2000/svg"><path fill-rule="evenodd" clip-rule="evenodd" d="M6.32151 2.98816C6.63407 2.6756 7.05799 2.5 7.50002 2.5H12.5C12.942 2.5 13.366 2.6756 13.6785 2.98816C13.9911 3.30072 14.1667 3.72464 14.1667 4.16667C14.1667 4.38768 14.2545 4.59964 14.4108 4.75592C14.567 4.9122 14.779 5 15 5H15.8334C16.4964 5 17.1323 5.26339 17.6011 5.73223C18.07 6.20107 18.3334 6.83696 18.3334 7.5V15C18.3334 15.663 18.07 16.2989 17.6011 16.7678C17.1323 17.2366 16.4964 17.5 15.8334 17.5H4.16669C3.50365 17.5 2.86776 17.2366 2.39892 16.7678C1.93008 16.2989 1.66669 15.663 1.66669 15V7.5C1.66669 6.83696 1.93008 6.20107 2.39892 5.73223C2.86776 5.26339 3.50365 5 4.16669 5H5.00002C5.22103 5 5.433 4.9122 5.58928 4.75592C5.74556 4.59964 5.83335 4.38768 5.83335 4.16667C5.83335 3.72464 6.00895 3.30072 6.32151 2.98816ZM4.16669 6.66667C3.94567 6.66667 3.73371 6.75446 3.57743 6.91074C3.42115 7.06702 3.33335 7.27899 3.33335 7.5V15C3.33335 15.221 3.42115 15.433 3.57743 15.5893C3.73371 15.7455 3.94567 15.8333 4.16669 15.8333H15.8334C16.0544 15.8333 16.2663 15.7455 16.4226 15.5893C16.5789 15.433 16.6667 15.221 16.6667 15V7.5C16.6667 7.27899 16.5789 7.06702 16.4226 6.91074C16.2663 6.75446 16.0544 6.66667 15.8334 6.66667H15C14.337 6.66667 13.7011 6.40327 13.2323 5.93443C12.7634 5.46559 12.5 4.82971 12.5 4.16667L7.50002 4.16667C7.50002 4.82971 7.23663 5.46559 6.76779 5.93443C6.29895 6.40327 5.66306 6.66667 5.00002 6.66667H4.16669Z" fill="%2348B2E8"/><path fill-rule="evenodd" clip-rule="evenodd" d="M10 9.16667C9.07955 9.16667 8.33335 9.91286 8.33335 10.8333C8.33335 11.7538 9.07955 12.5 10 12.5C10.9205 12.5 11.6667 11.7538 11.6667 10.8333C11.6667 9.91286 10.9205 9.16667 10 9.16667ZM6.66669 10.8333C6.66669 8.99238 8.15907 7.5 10 7.5C11.841 7.5 13.3334 8.99238 13.3334 10.8333C13.3334 12.6743 11.841 14.1667 10 14.1667C8.15907 14.1667 6.66669 12.6743 6.66669 10.8333Z" fill="%2348B2E8"/></svg>';
81
+ this.iconGalleryDefault = 'data:image/svg+xml;utf8,<svg width="20" height="20" viewBox="0 0 20 20" fill="none" xmlns="http://www.w3.org/2000/svg"><path fill-rule="evenodd" clip-rule="evenodd" d="M11.6667 6.66666C11.6667 6.20642 12.0398 5.83333 12.5 5.83333H12.5084C12.9686 5.83333 13.3417 6.20642 13.3417 6.66666C13.3417 7.1269 12.9686 7.5 12.5084 7.5H12.5C12.0398 7.5 11.6667 7.1269 11.6667 6.66666Z" fill="black"/><path fill-rule="evenodd" clip-rule="evenodd" d="M5.83333 4.16667C4.91286 4.16667 4.16667 4.91286 4.16667 5.83333V14.1667C4.16667 15.0871 4.91286 15.8333 5.83333 15.8333H14.1667C15.0871 15.8333 15.8333 15.0871 15.8333 14.1667V5.83333C15.8333 4.91286 15.0871 4.16667 14.1667 4.16667H5.83333ZM2.5 5.83333C2.5 3.99238 3.99238 2.5 5.83333 2.5H14.1667C16.0076 2.5 17.5 3.99238 17.5 5.83333V14.1667C17.5 16.0076 16.0076 17.5 14.1667 17.5H5.83333C3.99238 17.5 2.5 16.0076 2.5 14.1667V5.83333Z" fill="black"/><path fill-rule="evenodd" clip-rule="evenodd" d="M7.24972 9.76212L3.92259 13.0892C3.59715 13.4147 3.06951 13.4147 2.74408 13.0892C2.41864 12.7638 2.41864 12.2362 2.74408 11.9107L6.07741 8.57741L6.08885 8.56618C6.59083 8.08315 7.22016 7.7751 7.91667 7.7751C8.61317 7.7751 9.2425 8.08315 9.74448 8.56618L9.75592 8.57741L13.9226 12.7441C14.248 13.0695 14.248 13.5971 13.9226 13.9226C13.5972 14.248 13.0695 14.248 12.7441 13.9226L8.58361 9.76212C8.32758 9.51773 8.09662 9.44177 7.91667 9.44177C7.73672 9.44177 7.50575 9.51773 7.24972 9.76212Z" fill="black"/><path fill-rule="evenodd" clip-rule="evenodd" d="M13.083 11.4288L12.2559 12.2559C11.9305 12.5814 11.4028 12.5814 11.0774 12.2559C10.752 11.9305 10.752 11.4028 11.0774 11.0774L11.9107 10.2441L11.9222 10.2329C12.4241 9.74982 13.0535 9.44177 13.75 9.44177C14.4465 9.44177 15.0758 9.74982 15.5778 10.2329L15.5892 10.2441L17.2559 11.9107C17.5813 12.2362 17.5813 12.7638 17.2559 13.0893C16.9305 13.4147 16.4028 13.4147 16.0774 13.0893L14.4169 11.4288C14.1609 11.1844 13.9299 11.1084 13.75 11.1084C13.57 11.1084 13.3391 11.1844 13.083 11.4288Z" fill="black"/></svg>';
82
+ this.iconDragAndDropGalleryDefault = "data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iMjQiIGhlaWdodD0iMjQiIHZpZXdCb3g9IjAgMCAyNCAyNCIgZmlsbD0ibm9uZSIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIj4KPHBhdGggZmlsbC1ydWxlPSJldmVub2RkIiBjbGlwLXJ1bGU9ImV2ZW5vZGQiIGQ9Ik0xNCA4QzE0IDcuNDQ3NzIgMTQuNDQ3NyA3IDE1IDdIMTUuMDFDMTUuNTYyMyA3IDE2LjAxIDcuNDQ3NzIgMTYuMDEgOEMxNi4wMSA4LjU1MjI4IDE1LjU2MjMgOSAxNS4wMSA5SDE1QzE0LjQ0NzcgOSAxNCA4LjU1MjI4IDE0IDhaIiBmaWxsPSIjMDA2MkYyIi8+CjxwYXRoIGZpbGwtcnVsZT0iZXZlbm9kZCIgY2xpcC1ydWxlPSJldmVub2RkIiBkPSJNNyA1QzUuODk1NDMgNSA1IDUuODk1NDMgNSA3VjE3QzUgMTguMTA0NiA1Ljg5NTQzIDE5IDcgMTlIMTdDMTguMTA0NiAxOSAxOSAxOC4xMDQ2IDE5IDE3VjdDMTkgNS44OTU0MyAxOC4xMDQ2IDUgMTcgNUg3Wk0zIDdDMyA0Ljc5MDg2IDQuNzkwODYgMyA3IDNIMTdDMTkuMjA5MSAzIDIxIDQuNzkwODYgMjEgN1YxN0MyMSAxOS4yMDkxIDE5LjIwOTEgMjEgMTcgMjFIN0M0Ljc5MDg2IDIxIDMgMTkuMjA5MSAzIDE3VjdaIiBmaWxsPSIjMDA2MkYyIi8+CjxwYXRoIGZpbGwtcnVsZT0iZXZlbm9kZCIgY2xpcC1ydWxlPSJldmVub2RkIiBkPSJNOC42OTk2NiAxMS43MTQ1TDQuNzA3MTEgMTUuNzA3MUM0LjMxNjU4IDE2LjA5NzYgMy42ODM0MiAxNi4wOTc2IDMuMjkyODkgMTUuNzA3MUMyLjkwMjM3IDE1LjMxNjUgMi45MDIzNyAxNC42ODM0IDMuMjkyODkgMTQuMjkyOEw3LjI5Mjg5IDEwLjI5MjhMNy4zMDY2MiAxMC4yNzk0QzcuOTA5IDkuNjk5NzQgOC42NjQxOSA5LjMzMDA4IDkuNSA5LjMzMDA4QzEwLjMzNTggOS4zMzAwOCAxMS4wOTEgOS42OTk3NCAxMS42OTM0IDEwLjI3OTRMMTEuNzA3MSAxMC4yOTI4TDE2LjcwNzEgMTUuMjkyOEMxNy4wOTc2IDE1LjY4MzQgMTcuMDk3NiAxNi4zMTY1IDE2LjcwNzEgMTYuNzA3MUMxNi4zMTY2IDE3LjA5NzYgMTUuNjgzNCAxNy4wOTc2IDE1LjI5MjkgMTYuNzA3MUwxMC4zMDAzIDExLjcxNDVDOS45OTMxIDExLjQyMTIgOS43MTU5NCAxMS4zMzAxIDkuNSAxMS4zMzAxQzkuMjg0MDYgMTEuMzMwMSA5LjAwNjkgMTEuNDIxMiA4LjY5OTY2IDExLjcxNDVaIiBmaWxsPSIjMDA2MkYyIi8+CjxwYXRoIGZpbGwtcnVsZT0iZXZlbm9kZCIgY2xpcC1ydWxlPSJldmVub2RkIiBkPSJNMTUuNjk5NyAxMy43MTQ1TDE0LjcwNzEgMTQuNzA3MUMxNC4zMTY2IDE1LjA5NzYgMTMuNjgzNCAxNS4wOTc2IDEzLjI5MjkgMTQuNzA3MUMxMi45MDI0IDE0LjMxNjUgMTIuOTAyNCAxMy42ODM0IDEzLjI5MjkgMTMuMjkyOEwxNC4yOTI5IDEyLjI5MjhMMTQuMzA2NiAxMi4yNzk0QzE0LjkwOSAxMS42OTk3IDE1LjY2NDIgMTEuMzMwMSAxNi41IDExLjMzMDFDMTcuMzM1OCAxMS4zMzAxIDE4LjA5MSAxMS42OTk3IDE4LjY5MzQgMTIuMjc5NEwxOC43MDcxIDEyLjI5MjhMMjAuNzA3MSAxNC4yOTI4QzIxLjA5NzYgMTQuNjgzNCAyMS4wOTc2IDE1LjMxNjUgMjAuNzA3MSAxNS43MDcxQzIwLjMxNjYgMTYuMDk3NiAxOS42ODM0IDE2LjA5NzYgMTkuMjkyOSAxNS43MDcxTDE3LjMwMDMgMTMuNzE0NUMxNi45OTMxIDEzLjQyMTIgMTYuNzE1OSAxMy4zMzAxIDE2LjUgMTMuMzMwMUMxNi4yODQxIDEzLjMzMDEgMTYuMDA2OSAxMy40MjEyIDE1LjY5OTcgMTMuNzE0NVoiIGZpbGw9IiMwMDYyRjIiLz4KPC9zdmc+Cg==";
83
+ this.iconDragAndDropWarningDefault = "data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iMjQiIGhlaWdodD0iMjQiIHZpZXdCb3g9IjAgMCAyNCAyNCIgZmlsbD0ibm9uZSIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIj4KPHBhdGggZmlsbC1ydWxlPSJldmVub2RkIiBjbGlwLXJ1bGU9ImV2ZW5vZGQiIGQ9Ik0xMiA4QzEyLjU1MjMgOCAxMyA4LjQ0NzcyIDEzIDlWMTFDMTMgMTEuNTUyMyAxMi41NTIzIDEyIDEyIDEyQzExLjQ0NzcgMTIgMTEgMTEuNTUyMyAxMSAxMVY5QzExIDguNDQ3NzIgMTEuNDQ3NyA4IDEyIDhaTTEyIDE0QzEyLjU1MjMgMTQgMTMgMTQuNDQ3NyAxMyAxNVYxNS4wMUMxMyAxNS41NjIzIDEyLjU1MjMgMTYuMDEgMTIgMTYuMDFDMTEuNDQ3NyAxNi4wMSAxMSAxNS41NjIzIDExIDE1LjAxVjE1QzExIDE0LjQ0NzcgMTEuNDQ3NyAxNCAxMiAxNFoiIGZpbGw9IiNFMTFENDgiLz4KPHBhdGggZmlsbC1ydWxlPSJldmVub2RkIiBjbGlwLXJ1bGU9ImV2ZW5vZGQiIGQ9Ik0xMC40NzY0IDIuMzgzOTdDMTAuOTM4MSAyLjExMTgxIDExLjQ2NDIgMS45NjgyNiAxMi4wMDAxIDEuOTY4MjZDMTIuNTM1OSAxLjk2ODI2IDEzLjA2MjEgMi4xMTE4MSAxMy41MjM3IDIuMzgzOTdDMTMuOTgzMSAyLjY1NDg1IDE0LjM2MiAzLjA0MzMgMTQuNjIxNCAzLjUwOTI1TDIxLjYxODMgMTUuNzUzOUMyMS42NDA0IDE1Ljc5MjUgMjEuNjU5OCAxNS44MzI1IDIxLjY3NjUgMTUuODczN0MyMS44NTY2IDE2LjMxNzEgMjEuOTI4IDE2Ljc5NzEgMjEuODg0OCAxNy4yNzM3QzIxLjg0MTYgMTcuNzUwMiAyMS42ODUgMTguMjA5NiAyMS40MjgxIDE4LjYxMzNDMjEuMTcxMSAxOS4wMTcgMjAuODIxNCAxOS4zNTM0IDIwLjQwOCAxOS41OTQ0QzE5Ljk5NDUgMTkuODM1NCAxOS41Mjk0IDE5Ljk3NDEgMTkuMDUxNSAxOS45OTg3QzE5LjAzNDQgMTkuOTk5NiAxOS4wMTcyIDIwIDE5LjAwMDEgMjBINS4wNzAwNUM1LjA1ODU3IDIwIDUuMDQ3MTQgMTkuOTk5OCA1LjAzNTc1IDE5Ljk5OTRDNS4wMDY5NiAyMC4wMDA0IDQuOTc3ODggMjAuMDAwMiA0Ljk0ODU3IDE5Ljk5ODdDNC40NzA2NiAxOS45NzQxIDQuMDA1NTggMTkuODM1NCAzLjU5MjE2IDE5LjU5NDRDMy4xNzg3MyAxOS4zNTM0IDIuODI4OTYgMTkuMDE3IDIuNTcyMDQgMTguNjEzM0MyLjMxNTEzIDE4LjIwOTYgMi4xNTg1MiAxNy43NTAyIDIuMTE1MjkgMTcuMjczN0MyLjA3MjA3IDE2Ljc5NzEgMi4xNDM0OCAxNi4zMTcxIDIuMzIzNTcgMTUuODczN0MyLjM0MDMgMTUuODMyNSAyLjM1OTc1IDE1Ljc5MjUgMi4zODE4MSAxNS43NTM5TDkuMzc4NzQgMy41MDkyNUM5LjYzODA4IDMuMDQzMyAxMC4wMTcgMi42NTQ4NSAxMC40NzY0IDIuMzgzOTdaTTUuMDM3NjcgMTguMDAwNUM1LjA0ODQyIDE4LjAwMDIgNS4wNTkyMiAxOCA1LjA3MDA1IDE4SDE4Ljk2OTlDMTkuMTIxNyAxNy45ODg5IDE5LjI2OTEgMTcuOTQzMyAxOS40MDA3IDE3Ljg2NjZDMTkuNTM4NSAxNy43ODYzIDE5LjY1NTEgMTcuNjc0MSAxOS43NDA3IDE3LjUzOTVDMTkuODI2NCAxNy40MDUgMTkuODc4NiAxNy4yNTE5IDE5Ljg5MyAxNy4wOTNDMTkuOTA1NyAxNi45NTI1IDE5Ljg4ODYgMTYuODExMiAxOS44NDMgMTYuNjc4MkwxMi44NzUgNC40ODQxOEMxMi43ODg1IDQuMzI3ODggMTIuNjYxOCA0LjE5NzU1IDEyLjUwNzkgNC4xMDY4M0MxMi4zNTQxIDQuMDE2MTEgMTIuMTc4NyAzLjk2ODI2IDEyLjAwMDEgMy45NjgyNkMxMS44MjE0IDMuOTY4MjYgMTEuNjQ2MSA0LjAxNjExIDExLjQ5MjIgNC4xMDY4M0MxMS4zMzgzIDQuMTk3NTUgMTEuMjExNSA0LjMyNzg0IDExLjEyNTEgNC40ODQxNEwxMS4xMTg0IDQuNDk2Mkw0LjE1NzE0IDE2LjY3ODJDNC4xMTE1MSAxNi44MTEyIDQuMDk0MzggMTYuOTUyNSA0LjEwNzEyIDE3LjA5M0M0LjEyMTUyIDE3LjI1MTkgNC4xNzM3MyAxNy40MDUgNC4yNTkzNyAxNy41Mzk1QzQuMzQ1MDEgMTcuNjc0MSA0LjQ2MTYgMTcuNzg2MyA0LjU5OTQgMTcuODY2NkM0LjczMzIxIDE3Ljk0NDYgNC44ODMyNCAxNy45OTA0IDUuMDM3NjcgMTguMDAwNVoiIGZpbGw9IiNFMTFENDgiLz4KPC9zdmc+Cg==";
84
+ this.iconGalleryActive = 'data:image/svg+xml;utf8,<svg width="20" height="20" viewBox="0 0 20 20" fill="none" xmlns="http://www.w3.org/2000/svg"><path fill-rule="evenodd" clip-rule="evenodd" d="M11.6667 6.66667C11.6667 6.20643 12.0398 5.83334 12.5 5.83334H12.5084C12.9686 5.83334 13.3417 6.20643 13.3417 6.66667C13.3417 7.12691 12.9686 7.5 12.5084 7.5H12.5C12.0398 7.5 11.6667 7.12691 11.6667 6.66667Z" fill="%2348B2E8"/><path fill-rule="evenodd" clip-rule="evenodd" d="M5.83333 4.16667C4.91286 4.16667 4.16667 4.91286 4.16667 5.83333V14.1667C4.16667 15.0871 4.91286 15.8333 5.83333 15.8333H14.1667C15.0871 15.8333 15.8333 15.0871 15.8333 14.1667V5.83333C15.8333 4.91286 15.0871 4.16667 14.1667 4.16667H5.83333ZM2.5 5.83333C2.5 3.99238 3.99238 2.5 5.83333 2.5H14.1667C16.0076 2.5 17.5 3.99238 17.5 5.83333V14.1667C17.5 16.0076 16.0076 17.5 14.1667 17.5H5.83333C3.99238 17.5 2.5 16.0076 2.5 14.1667V5.83333Z" fill="%2348B2E8"/><path fill-rule="evenodd" clip-rule="evenodd" d="M7.24972 9.76213L3.92259 13.0893C3.59715 13.4147 3.06951 13.4147 2.74408 13.0893C2.41864 12.7638 2.41864 12.2362 2.74408 11.9107L6.07741 8.57741L6.08885 8.56619C6.59083 8.08316 7.22016 7.77511 7.91667 7.77511C8.61317 7.77511 9.2425 8.08316 9.74448 8.56619L9.75592 8.57741L13.9226 12.7441C14.248 13.0695 14.248 13.5972 13.9226 13.9226C13.5972 14.248 13.0695 14.248 12.7441 13.9226L8.58361 9.76213C8.32758 9.51774 8.09662 9.44177 7.91667 9.44177C7.73672 9.44177 7.50575 9.51774 7.24972 9.76213Z" fill="%2348B2E8"/><path fill-rule="evenodd" clip-rule="evenodd" d="M13.083 11.4288L12.2559 12.2559C11.9305 12.5814 11.4028 12.5814 11.0774 12.2559C10.752 11.9305 10.752 11.4028 11.0774 11.0774L11.9107 10.2441L11.9222 10.2329C12.4241 9.74982 13.0535 9.44177 13.75 9.44177C14.4465 9.44177 15.0758 9.74982 15.5778 10.2329L15.5892 10.2441L17.2559 11.9107C17.5813 12.2362 17.5813 12.7638 17.2559 13.0893C16.9305 13.4147 16.4028 13.4147 16.0774 13.0893L14.4169 11.4288C14.1609 11.1844 13.9299 11.1084 13.75 11.1084C13.57 11.1084 13.3391 11.1844 13.083 11.4288Z" fill="%2348B2E8"/></svg>';
85
+ this.iconInvalidFormat = 'data:image/svg+xml;utf8,<svg width="24" height="24" viewBox="0 0 24 24" fill="none" xmlns="http://www.w3.org/2000/svg"><path fill-rule="evenodd" clip-rule="evenodd" d="M12 4C7.58172 4 4 7.58172 4 12C4 16.4183 7.58172 20 12 20C16.4183 20 20 16.4183 20 12C20 7.58172 16.4183 4 12 4ZM2 12C2 6.47715 6.47715 2 12 2C17.5228 2 22 6.47715 22 12C22 17.5228 17.5228 22 12 22C6.47715 22 2 17.5228 2 12Z" fill="black"/><path fill-rule="evenodd" clip-rule="evenodd" d="M9.29289 9.29289C9.68342 8.90237 10.3166 8.90237 10.7071 9.29289L12 10.5858L13.2929 9.29289C13.6834 8.90237 14.3166 8.90237 14.7071 9.29289C15.0976 9.68342 15.0976 10.3166 14.7071 10.7071L13.4142 12L14.7071 13.2929C15.0976 13.6834 15.0976 14.3166 14.7071 14.7071C14.3166 15.0976 13.6834 15.0976 13.2929 14.7071L12 13.4142L10.7071 14.7071C10.3166 15.0976 9.68342 15.0976 9.29289 14.7071C8.90237 14.3166 8.90237 13.6834 9.29289 13.2929L10.5858 12L9.29289 10.7071C8.90237 10.3166 8.90237 9.68342 9.29289 9.29289Z" fill="black"/></svg>';
86
+ this.iconSpinnerScreenLoading = undefined;
87
+ this.iconSpinnerFromGalleryExperience = undefined;
88
+ this.iconGalleryScanningCompleted = undefined;
89
+ this.sdkService = undefined;
90
+ this.translationService = undefined;
91
+ this.cameraId = null;
92
+ this.allowHelpScreens = false;
93
+ this.allowHelpScreensFab = false;
94
+ this.allowHelpScreensOnboarding = false;
95
+ this.allowHelpScreensOnboardingPerpetuity = false;
96
+ this.helpScreensTooltipPauseTimeout = 15000;
97
+ this.pingProxyUrl = null;
98
+ }
99
+ componentDidLoad() {
100
+ // Set `exportparts` attribute on root `mb-component` element to enable ::part() CSS customization
101
+ GenericHelpers.setWebComponentParts(this.hostEl);
102
+ const parts = GenericHelpers.getWebComponentParts(this.hostEl.shadowRoot);
103
+ const exportedParts = GenericHelpers.getWebComponentExportedParts(this.hostEl.shadowRoot);
104
+ this.hostEl.setAttribute("exportparts", parts.concat(exportedParts).join(", "));
105
+ this.init();
106
+ }
107
+ componentDidUpdate() {
108
+ this.init();
109
+ }
110
+ disconnectedCallback() {
111
+ this.sdkService?.stopRecognition();
112
+ }
113
+ handleKeyUp(ev) {
114
+ if (ev.key === "Escape" || ev.code === "Escape") {
115
+ if (this.overlays.camera.visible && this.isCameraActive) {
116
+ this.abortScan();
117
+ this.handleSetIsCameraActive(false);
118
+ this.clearIsCameraActive = true;
119
+ }
120
+ }
121
+ }
122
+ handleSetIsCameraActive(isCameraActive) {
123
+ this.isCameraActive = isCameraActive;
124
+ this.clearIsCameraActive = false;
125
+ }
126
+ /**
127
+ * Starts camera scan using camera overlay with usage instructions.
128
+ */
129
+ async startCameraScan() {
130
+ this.startScanFromCamera();
131
+ }
132
+ /**
133
+ * Starts image scan, emits results from provided file.
134
+ *
135
+ * @param file File to scan
136
+ */
137
+ async startImageScan(file) {
138
+ this.startScanFromImage(file);
139
+ }
140
+ /**
141
+ * Starts multi-side image scan, emits results from provided files.
142
+ *
143
+ * @param firstFile File to scan as first image
144
+ * @param secondFile File to scan as second image
145
+ */
146
+ async startMultiSideImageScan(firstFile, secondFile) {
147
+ this.startScanFromImageMultiSide(firstFile, secondFile);
148
+ }
149
+ /**
150
+ * Method is exposed outside which allow us to control UI state from parent component.
151
+ *
152
+ * In case of state `ERROR` and if `showModalWindows` is set to `true`, modal window
153
+ * with error message will be displayed.
154
+ */
155
+ async setUiState(state) {
156
+ window.setTimeout(() => {
157
+ if (this.overlays.camera.visible) {
158
+ if (state === "ERROR" && !this.showModalWindows) {
159
+ this.apiProcessStatusState = "NONE";
160
+ this.apiProcessStatusVisible = false;
161
+ this.stopRecognition();
162
+ return;
163
+ }
164
+ this.apiProcessStatusState = state;
165
+ this.apiProcessStatusVisible = true;
166
+ if (state !== "ERROR") {
167
+ this.cameraExperience.classList.add("is-muted");
168
+ }
169
+ else {
170
+ this.cameraExperience.classList.add("is-error");
171
+ }
172
+ this.cameraExperience.apiState = state;
173
+ }
174
+ else if (this.overlays.processing.visible) {
175
+ if (state === "ERROR") {
176
+ if (this.showModalWindows) {
177
+ this.galleryExperienceModalErrorWindowVisible = true;
178
+ }
179
+ else {
180
+ this.galleryExperienceModalErrorWindowVisible = false;
181
+ this.stopRecognition();
182
+ }
183
+ }
184
+ }
185
+ if (state === "SUCCESS") {
186
+ window.setTimeout(() => this.stopRecognition(), 400);
187
+ }
188
+ if (state === "ERROR") {
189
+ this.hideScanFromImageUi(false);
190
+ this.clearInputImages();
191
+ }
192
+ }, 400);
193
+ }
194
+ async closeApiProcessStatus(restart = false) {
195
+ window.setTimeout(() => {
196
+ this.apiProcessStatusVisible = false;
197
+ this.apiProcessStatusState = "NONE";
198
+ this.cameraExperience.classList.remove("is-muted");
199
+ this.cameraExperience.classList.remove("is-error");
200
+ }, 600);
201
+ if (restart) {
202
+ await this.checkInputProperties()
203
+ .then(() => this.sdkService.resumeRecognition())
204
+ .then(() => {
205
+ window.setTimeout(() => (this.cameraExperience.apiState = ""), 400);
206
+ this.isBackSide = false;
207
+ this.cameraExperience.setState(CameraExperienceState.Default, this.isBackSide, true);
208
+ });
209
+ }
210
+ }
211
+ async init() {
212
+ if (!this.hideLoadingAndErrorUi) {
213
+ this.showScreen("loading");
214
+ this.showOverlay("");
215
+ }
216
+ if (this.blocked) {
217
+ return;
218
+ }
219
+ const internetIsAvailable = navigator.onLine;
220
+ if (!internetIsAvailable) {
221
+ this.setFatalError(new SDKError({
222
+ code: ErrorTypes.ErrorCodes.InternetNotAvailable,
223
+ message: this.translationService
224
+ .i("check-internet-connection")
225
+ .toString(),
226
+ }));
227
+ return;
228
+ }
229
+ const hasMandatoryProperties = await this.checkInputProperties();
230
+ if (!hasMandatoryProperties) {
231
+ return;
232
+ }
233
+ const hasMandatoryCapabilities = await DeviceHelpers.checkMandatoryCapabilites();
234
+ if (!hasMandatoryCapabilities) {
235
+ this.setFatalError(new SDKError(ErrorTypes.componentErrors.browserNotSupported));
236
+ return;
237
+ }
238
+ this.blocked = true;
239
+ this.block.emit(true);
240
+ const initEvent = await this.sdkService.initialize(this.licenseKey, {
241
+ allowHelloMessage: this.allowHelloMessage,
242
+ engineLocation: this.engineLocation,
243
+ workerLocation: this.workerLocation,
244
+ wasmType: Utils.getSDKWasmType(this.wasmType),
245
+ blinkIdVariant: this.blinkIdVariant,
246
+ });
247
+ this.cameraExperience.showOverlay = this.sdkService.showOverlay;
248
+ if (initEvent instanceof SDKError) {
249
+ this.setFatalError(initEvent);
250
+ return;
251
+ }
252
+ if (this.showActionLabels) {
253
+ this.scanFromCameraButton.label = this.translationService
254
+ .i("action-message-camera")
255
+ .toString();
256
+ this.scanFromImageButton.label = this.translationService
257
+ .i("action-message-image")
258
+ .toString();
259
+ }
260
+ if (this.scanFromCamera) {
261
+ this.scanFromCameraButton.visible = true;
262
+ const hasVideoDevices = await DeviceHelpers.hasVideoDevices();
263
+ this.scanFromCameraButton.disabled = !hasVideoDevices;
264
+ if (!hasVideoDevices) {
265
+ this.feedback.emit({
266
+ code: FeedbackCode.CameraDisabled,
267
+ state: "FEEDBACK_INFO",
268
+ message: this.translationService.i("camera-disabled").toString(),
269
+ });
270
+ if (this.showActionLabels) {
271
+ this.scanFromCameraButton.label = this.translationService
272
+ .i("action-message-camera-disabled")
273
+ .toString();
274
+ }
275
+ }
276
+ }
277
+ if (this.scanFromImage) {
278
+ this.scanFromImageButton.visible = true;
279
+ const imageScanIsAvailable = this.sdkService.isScanFromImageAvailable(this.recognizers, this.recognizerOptions);
280
+ this.scanFromImageButton.disabled = !imageScanIsAvailable;
281
+ if (imageScanIsAvailable) {
282
+ this.imageRecognitionType = this.sdkService.getScanFromImageType(this.recognizers, this.recognizerOptions);
283
+ if (this.imageRecognitionType === ImageRecognitionType.SingleSide) {
284
+ this.screens.processing.setAttribute("data-type", "single-sinde");
285
+ }
286
+ if (this.imageRecognitionType === ImageRecognitionType.MultiSide) {
287
+ this.screens.processing.setAttribute("data-type", "multi-side");
288
+ }
289
+ }
290
+ else {
291
+ if (this.showActionLabels) {
292
+ this.scanFromImageButton.label = this.translationService
293
+ .i("action-message-image-not-supported")
294
+ .toString();
295
+ }
296
+ }
297
+ }
298
+ this.ready.emit(initEvent);
299
+ this.blocked = false;
300
+ this.block.emit(false);
301
+ this.showScreen("action");
302
+ this.startScanFromCamera();
303
+ if (this.enableDrag) {
304
+ this.setDragAndDrop();
305
+ }
306
+ }
307
+ async flipCameraAction() {
308
+ await this.sdkService.flipCamera();
309
+ const cameraFlipped = await this.sdkService.isCameraFlipped();
310
+ this.cameraExperience.setCameraFlipState(cameraFlipped);
311
+ }
312
+ async changeCameraDevice(camera) {
313
+ if (this.cameraChangeInProgress) {
314
+ return;
315
+ }
316
+ this.cameraChangeInProgress = true;
317
+ await this.sdkService.changeCameraDevice(camera.details);
318
+ this.cameraChangeInProgress = false;
319
+ }
320
+ async checkInputProperties() {
321
+ if (!this.licenseKey) {
322
+ this.setFatalError(new SDKError(sdkErrors.licenseKeyMissing));
323
+ return false;
324
+ }
325
+ // Recognizers
326
+ const conclusion = this.sdkService.checkRecognizers(this.recognizers);
327
+ if (!conclusion.status) {
328
+ const fatalError = new SDKError({
329
+ code: ErrorTypes.ErrorCodes.InvalidRecognizers,
330
+ message: conclusion.message,
331
+ });
332
+ this.setFatalError(fatalError);
333
+ return false;
334
+ }
335
+ this.cameraExperience.type = this.sdkService.getDesiredCameraExperience(this.recognizers, this.recognizerOptions);
336
+ return true;
337
+ }
338
+ async startScanFromCamera() {
339
+ const configuration = {
340
+ pingProxyUrl: this.pingProxyUrl,
341
+ recognizers: this.recognizers,
342
+ successFrame: this.includeSuccessFrame,
343
+ cameraFeed: this.videoElement,
344
+ cameraId: this.cameraId,
345
+ };
346
+ if (this.recognizerOptions &&
347
+ Object.keys(this.recognizerOptions).length > 0) {
348
+ configuration.recognizerOptions = this.recognizerOptions;
349
+ }
350
+ if (this.recognitionTimeout &&
351
+ typeof this.recognitionTimeout === "number") {
352
+ configuration.recognitionTimeout = this.recognitionTimeout;
353
+ }
354
+ this.isBackSide = false;
355
+ const eventHandler = async (recognitionEvent) => {
356
+ switch (recognitionEvent.status) {
357
+ case RecognitionStatus.Preparing:
358
+ this.feedback.emit({
359
+ code: FeedbackCode.ScanStarted,
360
+ state: "FEEDBACK_OK",
361
+ message: "",
362
+ });
363
+ this.showOverlay("camera");
364
+ this.cameraExperience.setState(CameraExperienceState.Default);
365
+ break;
366
+ case RecognitionStatus.Ready:
367
+ this.cameraExperience.setActiveCamera(this.sdkService.videoRecognizer.deviceId);
368
+ break;
369
+ case RecognitionStatus.Processing:
370
+ // Just keep working
371
+ break;
372
+ case RecognitionStatus.EmptyResultState:
373
+ if (!recognitionEvent.data.initiatedByUser) {
374
+ this.scanError.emit({
375
+ code: Code.EmptyResult,
376
+ fatal: false,
377
+ message: "Could not extract information from video feed!",
378
+ recognizerName: recognitionEvent.data.recognizerName,
379
+ });
380
+ this.feedback.emit({
381
+ code: FeedbackCode.ScanUnsuccessful,
382
+ state: "FEEDBACK_ERROR",
383
+ message: this.translationService
384
+ .i("feedback-scan-unsuccessful")
385
+ .toString(),
386
+ });
387
+ }
388
+ this.showOverlay("");
389
+ break;
390
+ case RecognitionStatus.UnknownError:
391
+ // Do nothing, RecognitionStatus.EmptyResultState will handle negative outcome
392
+ break;
393
+ case RecognitionStatus.DetectionFailed:
394
+ this.cameraExperience.setState(CameraExperienceState.Default, this.isBackSide);
395
+ this.detectionSuccessLock = false;
396
+ break;
397
+ case RecognitionStatus.DetectionStatusFail:
398
+ this.cameraExperience.setState(CameraExperienceState.Default, this.isBackSide);
399
+ break;
400
+ case RecognitionStatus.DetectionStatusSuccess:
401
+ this.detectionSuccessLock = true;
402
+ window.setTimeout(() => {
403
+ if (this.detectionSuccessLock) {
404
+ this.cameraExperience.setState(CameraExperienceState.Detection);
405
+ this.scanReset = false;
406
+ }
407
+ }, 100);
408
+ break;
409
+ case RecognitionStatus.DetectionStatusCameraTooHigh:
410
+ this.cameraExperience
411
+ .setState(CameraExperienceState.MoveCloser)
412
+ .then(() => {
413
+ this.cameraExperience.setState(CameraExperienceState.Default, this.isBackSide);
414
+ });
415
+ break;
416
+ case RecognitionStatus.DetectionStatusCameraAtAngle:
417
+ this.cameraExperience
418
+ .setState(CameraExperienceState.AdjustAngle)
419
+ .then(() => {
420
+ this.cameraExperience.setState(CameraExperienceState.Default, this.isBackSide);
421
+ });
422
+ break;
423
+ case RecognitionStatus.DetectionStatusCameraTooNear:
424
+ case RecognitionStatus.DetectionStatusDocumentTooCloseToEdge:
425
+ case RecognitionStatus.DetectionStatusPartial:
426
+ this.cameraExperience
427
+ .setState(CameraExperienceState.MoveFarther)
428
+ .then(() => {
429
+ this.cameraExperience.setState(CameraExperienceState.Default, this.isBackSide);
430
+ });
431
+ break;
432
+ case RecognitionStatus.GlareDetected:
433
+ this.cameraExperience.setState(CameraExperienceState.GlareDetected);
434
+ break;
435
+ case RecognitionStatus.BlurDetected:
436
+ this.cameraExperience.setState(CameraExperienceState.BlurDetected);
437
+ break;
438
+ case RecognitionStatus.WrongSide:
439
+ this.cameraExperience.setState(CameraExperienceState.WrongSide);
440
+ break;
441
+ // scan passport - error spinner
442
+ case RecognitionStatus.MovePassportDownError: {
443
+ if (this.gracePeriodEntered) {
444
+ this.cameraExperience.setState(CameraExperienceState.ScanPassportDown);
445
+ }
446
+ else {
447
+ this.cameraExperience.setState(CameraExperienceState.MovePassportDownError);
448
+ }
449
+ break;
450
+ }
451
+ case RecognitionStatus.MovePassportUpError: {
452
+ if (this.gracePeriodEntered) {
453
+ this.cameraExperience.setState(CameraExperienceState.ScanPassportUp);
454
+ }
455
+ else {
456
+ this.cameraExperience.setState(CameraExperienceState.MovePassportUpError);
457
+ }
458
+ break;
459
+ }
460
+ case RecognitionStatus.MovePassportLeftError: {
461
+ if (this.gracePeriodEntered) {
462
+ this.cameraExperience.setState(CameraExperienceState.ScanPassportLeft);
463
+ }
464
+ else {
465
+ this.cameraExperience.setState(CameraExperienceState.MovePassportLeftError);
466
+ }
467
+ break;
468
+ }
469
+ case RecognitionStatus.MovePassportRightError: {
470
+ if (this.gracePeriodEntered) {
471
+ this.cameraExperience.setState(CameraExperienceState.ScanPassportRight);
472
+ }
473
+ else {
474
+ this.cameraExperience.setState(CameraExperienceState.MovePassportRightError);
475
+ }
476
+ break;
477
+ }
478
+ case RecognitionStatus.FacePhotoCovered:
479
+ this.cameraExperience.setState(CameraExperienceState.FacePhotoCovered);
480
+ break;
481
+ case RecognitionStatus.BarcodeScanningStarted:
482
+ this.cameraExperience
483
+ .setState(CameraExperienceState.BarcodeScanning, this.isBackSide, true)
484
+ .then(() => {
485
+ this.cameraExperience.setState(CameraExperienceState.Default, this.isBackSide);
486
+ });
487
+ break;
488
+ case RecognitionStatus.DocumentClassified:
489
+ this.cameraExperience.setState(CameraExperienceState.Classification);
490
+ break;
491
+ // passport
492
+ // "flip" passport
493
+ case RecognitionStatus.MovePassportDown:
494
+ case RecognitionStatus.MovePassportUp:
495
+ case RecognitionStatus.MovePassportLeft:
496
+ case RecognitionStatus.MovePassportRight: {
497
+ // handle all as "flip card"
498
+ this.sdkService.videoRecognizer.pauseRecognition();
499
+ window.setTimeout(async () => {
500
+ if (this.areHelpScreensOpen) {
501
+ return; // help screens close will resume
502
+ }
503
+ await this.sdkService.videoRecognizer.resumeRecognition(false);
504
+ }, this.recognitionPauseTimeout);
505
+ // This state doesn't seem to do anything
506
+ await this.cameraExperience.setState(CameraExperienceState.Done, false, true);
507
+ // treat each case separately here
508
+ if (recognitionEvent.status === RecognitionStatus.MovePassportDown) {
509
+ await this.cameraExperience.setState(CameraExperienceState.MovePassportDown);
510
+ }
511
+ if (recognitionEvent.status === RecognitionStatus.MovePassportUp) {
512
+ await this.cameraExperience.setState(CameraExperienceState.MovePassportUp);
513
+ }
514
+ if (recognitionEvent.status === RecognitionStatus.MovePassportLeft) {
515
+ await this.cameraExperience.setState(CameraExperienceState.MovePassportLeft);
516
+ }
517
+ if (recognitionEvent.status === RecognitionStatus.MovePassportRight) {
518
+ await this.cameraExperience.setState(CameraExperienceState.MovePassportRight);
519
+ }
520
+ this.gracePeriodEntered = true;
521
+ window.setTimeout(() => {
522
+ this.gracePeriodEntered = false;
523
+ }, 3000);
524
+ if (!this.scanReset) {
525
+ this.isBackSide = true;
526
+ this.cameraExperience.setState(CameraExperienceState.Default, this.isBackSide);
527
+ }
528
+ break;
529
+ }
530
+ // just "scan" passport
531
+ case RecognitionStatus.ScanPassportDown:
532
+ this.cameraExperience.setState(CameraExperienceState.ScanPassportDown);
533
+ break;
534
+ case RecognitionStatus.ScanPassportUp:
535
+ this.cameraExperience.setState(CameraExperienceState.ScanPassportUp);
536
+ break;
537
+ case RecognitionStatus.ScanPassportLeft:
538
+ this.cameraExperience.setState(CameraExperienceState.ScanPassportLeft);
539
+ break;
540
+ case RecognitionStatus.ScanPassportRight:
541
+ this.cameraExperience.setState(CameraExperienceState.ScanPassportRight);
542
+ break;
543
+ // handle flipping of other documents
544
+ case RecognitionStatus.OnFirstSideResult:
545
+ this.sdkService.videoRecognizer.pauseRecognition();
546
+ window.setTimeout(async () => {
547
+ if (this.areHelpScreensOpen) {
548
+ return; // help screens close will resume
549
+ }
550
+ await this.sdkService.videoRecognizer.resumeRecognition(false);
551
+ }, this.recognitionPauseTimeout);
552
+ this.cameraExperience
553
+ // This state doesn't seem to do anything
554
+ .setState(CameraExperienceState.Done, false, true)
555
+ .then(() => {
556
+ this.cameraExperience
557
+ .setState(CameraExperienceState.Flip, this.isBackSide, true)
558
+ .then(() => {
559
+ if (!this.scanReset) {
560
+ this.isBackSide = true;
561
+ this.cameraExperience.setState(CameraExperienceState.Default, this.isBackSide);
562
+ }
563
+ });
564
+ });
565
+ break;
566
+ case RecognitionStatus.ScanSuccessful:
567
+ this.cameraExperience
568
+ .setState(CameraExperienceState.DoneAll, false, true)
569
+ .then(() => {
570
+ this.cameraExperience.resetState();
571
+ this.terminateHelpScreens();
572
+ this.cameraExperience.classList.add("hide");
573
+ this.scanSuccess.emit(recognitionEvent.data?.result);
574
+ this.feedback.emit({
575
+ code: FeedbackCode.ScanSuccessful,
576
+ state: "FEEDBACK_OK",
577
+ message: "",
578
+ });
579
+ this.showOverlay("");
580
+ });
581
+ break;
582
+ case RecognitionStatus.CameraNotAllowed:
583
+ this.scanError.emit({
584
+ code: Code.CameraNotAllowed,
585
+ fatal: true,
586
+ message: "Cannot access camera!",
587
+ recognizerName: "",
588
+ });
589
+ this.feedback.emit({
590
+ code: FeedbackCode.CameraNotAllowed,
591
+ state: "FEEDBACK_ERROR",
592
+ message: this.translationService.i("camera-not-allowed").toString(),
593
+ });
594
+ window.setTimeout(() => {
595
+ this.scanFromCameraButton.disabled = true;
596
+ if (this.showActionLabels) {
597
+ this.scanFromCameraButton.label = this.translationService
598
+ .i("action-message-camera-not-allowed")
599
+ .toString();
600
+ }
601
+ }, 10);
602
+ this.showOverlay("");
603
+ break;
604
+ case RecognitionStatus.CameraInUse:
605
+ this.scanError.emit({
606
+ code: Code.CameraInUse,
607
+ fatal: true,
608
+ message: "Camera already in use!",
609
+ recognizerName: "",
610
+ });
611
+ this.feedback.emit({
612
+ code: FeedbackCode.CameraInUse,
613
+ state: "FEEDBACK_ERROR",
614
+ message: this.translationService.i("camera-in-use").toString(),
615
+ });
616
+ window.setTimeout(() => {
617
+ this.scanFromCameraButton.disabled = true;
618
+ if (this.showActionLabels) {
619
+ this.scanFromCameraButton.label = this.translationService
620
+ .i("action-message-camera-in-use")
621
+ .toString();
622
+ }
623
+ }, 10);
624
+ this.showOverlay("");
625
+ break;
626
+ case RecognitionStatus.NoSupportForMediaDevices:
627
+ case RecognitionStatus.CameraNotFound:
628
+ case RecognitionStatus.UnableToAccessCamera:
629
+ this.scanError.emit({
630
+ code: Code.CameraGenericError,
631
+ fatal: true,
632
+ message: `There was a problem while accessing camera ${recognitionEvent.status}`,
633
+ recognizerName: "",
634
+ });
635
+ this.feedback.emit({
636
+ code: FeedbackCode.CameraGenericError,
637
+ state: "FEEDBACK_ERROR",
638
+ message: this.translationService
639
+ .i("camera-generic-error")
640
+ .toString(),
641
+ });
642
+ window.setTimeout(() => {
643
+ this.scanFromCameraButton.disabled = true;
644
+ if (this.showActionLabels) {
645
+ this.scanFromCameraButton.label = this.translationService
646
+ .i("action-message-camera-disabled")
647
+ .toString();
648
+ }
649
+ }, 10);
650
+ this.showOverlay("");
651
+ break;
652
+ default:
653
+ // console.warn('Unhandled video recognition status:', recognitionEvent.status);
654
+ }
655
+ };
656
+ try {
657
+ this.cameraExperience.classList.remove("hide");
658
+ this.cameraScanStarted.emit();
659
+ void this.cameraExperience.populateCameraDevices();
660
+ await this.sdkService.scanFromCamera(configuration, eventHandler);
661
+ const cameraFlipped = this.sdkService.isCameraFlipped();
662
+ this.cameraExperience.setCameraFlipState(cameraFlipped);
663
+ this.initializeHelpScreensAndStartOnboarding();
664
+ }
665
+ catch (error) {
666
+ this.handleScanError(error);
667
+ this.showOverlay("");
668
+ }
669
+ }
670
+ async startScanFromImage(file) {
671
+ const configuration = {
672
+ pingProxyUrl: this.pingProxyUrl,
673
+ recognizers: this.recognizers,
674
+ file: file || this.scanFromImageInput.files[0],
675
+ };
676
+ if (this.recognizerOptions &&
677
+ Object.keys(this.recognizerOptions).length > 0) {
678
+ configuration.recognizerOptions = this.recognizerOptions;
679
+ }
680
+ const eventHandler = (recognitionEvent) => {
681
+ switch (recognitionEvent.status) {
682
+ case RecognitionStatus.Preparing:
683
+ this.feedback.emit({
684
+ code: FeedbackCode.ScanStarted,
685
+ state: "FEEDBACK_OK",
686
+ message: "",
687
+ });
688
+ this.showScanFromImageUi();
689
+ break;
690
+ case RecognitionStatus.Processing:
691
+ // Just keep working
692
+ break;
693
+ case RecognitionStatus.NoImageFileFound:
694
+ this.scanError.emit({
695
+ code: Code.NoImageFileFound,
696
+ fatal: true,
697
+ message: "No image file was provided to SDK service!",
698
+ recognizerName: "",
699
+ });
700
+ this.feedback.emit({
701
+ code: FeedbackCode.ScanUnsuccessful,
702
+ state: "FEEDBACK_ERROR",
703
+ message: this.translationService
704
+ .i("feedback-scan-unsuccessful")
705
+ .toString(),
706
+ });
707
+ this.hideScanFromImageUi(false);
708
+ this.clearInputImages();
709
+ break;
710
+ case RecognitionStatus.DetectionFailed:
711
+ // Do nothing, RecognitionStatus.EmptyResultState will handle negative outcome
712
+ this.clearInputImages();
713
+ break;
714
+ case RecognitionStatus.EmptyResultState:
715
+ this.scanError.emit({
716
+ code: Code.EmptyResult,
717
+ fatal: false,
718
+ message: "Could not extract information from image!",
719
+ recognizerName: recognitionEvent.data.recognizerName,
720
+ });
721
+ this.feedback.emit({
722
+ code: FeedbackCode.ScanUnsuccessful,
723
+ state: "FEEDBACK_ERROR",
724
+ message: this.translationService
725
+ .i("feedback-scan-unsuccessful")
726
+ .toString(),
727
+ });
728
+ this.hideScanFromImageUi(false);
729
+ this.clearInputImages();
730
+ break;
731
+ case RecognitionStatus.UnknownError:
732
+ // Do nothing, RecognitionStatus.EmptyResultState will handle negative outcome
733
+ this.clearInputImages();
734
+ break;
735
+ case RecognitionStatus.ScanSuccessful:
736
+ this.scanSuccess.emit(recognitionEvent.data);
737
+ this.feedback.emit({
738
+ code: FeedbackCode.ScanSuccessful,
739
+ state: "FEEDBACK_OK",
740
+ message: "",
741
+ });
742
+ this.clearInputImages();
743
+ this.hideScanFromImageUi(true);
744
+ break;
745
+ default:
746
+ //console.warn('Unhandled image recognition status:', recognitionEvent.status);
747
+ }
748
+ };
749
+ try {
750
+ this.imageScanStarted.emit();
751
+ if (this.thoroughScanFromImage) {
752
+ configuration.thoroughScan = true;
753
+ }
754
+ await this.sdkService.scanFromImage(configuration, eventHandler);
755
+ }
756
+ catch (error) {
757
+ this.handleScanError(error);
758
+ this.hideScanFromImageUi(false);
759
+ }
760
+ }
761
+ async startScanFromImageMultiSide(firstFile, secondFile) {
762
+ const configuration = {
763
+ pingProxyUrl: this.pingProxyUrl,
764
+ recognizers: this.recognizers,
765
+ firstFile: firstFile || this.galleryImageFirstFile,
766
+ secondFile: secondFile || this.galleryImageSecondFile,
767
+ };
768
+ if (this.recognizerOptions) {
769
+ configuration.recognizerOptions = this.recognizerOptions;
770
+ }
771
+ const eventHandler = (recognitionEvent) => {
772
+ switch (recognitionEvent.status) {
773
+ case RecognitionStatus.Preparing:
774
+ this.showScanFromImageUi();
775
+ this.feedback.emit({
776
+ code: FeedbackCode.ScanStarted,
777
+ state: "FEEDBACK_OK",
778
+ message: "",
779
+ });
780
+ break;
781
+ case RecognitionStatus.Ready:
782
+ this.cameraExperience.setActiveCamera(this.sdkService.videoRecognizer.deviceId);
783
+ break;
784
+ case RecognitionStatus.Processing:
785
+ // Just keep working
786
+ break;
787
+ case RecognitionStatus.NoFirstImageFileFound:
788
+ this.scanError.emit({
789
+ code: Code.NoFirstImageFileFound,
790
+ fatal: true,
791
+ message: "First image file is missing!",
792
+ recognizerName: "",
793
+ });
794
+ this.feedback.emit({
795
+ code: FeedbackCode.ScanUnsuccessful,
796
+ state: "FEEDBACK_ERROR",
797
+ message: this.translationService
798
+ .i("feedback-scan-unsuccessful")
799
+ .toString(),
800
+ });
801
+ this.hideScanFromImageUi(false);
802
+ this.clearInputImages();
803
+ break;
804
+ case RecognitionStatus.NoSecondImageFileFound:
805
+ this.scanError.emit({
806
+ code: Code.NoSecondImageFileFound,
807
+ fatal: true,
808
+ message: "Second image file is missing!",
809
+ recognizerName: "",
810
+ });
811
+ this.feedback.emit({
812
+ code: FeedbackCode.ScanUnsuccessful,
813
+ state: "FEEDBACK_ERROR",
814
+ message: this.translationService
815
+ .i("feedback-scan-unsuccessful")
816
+ .toString(),
817
+ });
818
+ this.hideScanFromImageUi(false);
819
+ this.clearInputImages();
820
+ break;
821
+ case RecognitionStatus.DetectionFailed:
822
+ // Do nothing, RecognitionStatus.EmptyResultState will handle negative outcome
823
+ this.clearInputImages();
824
+ break;
825
+ case RecognitionStatus.EmptyResultState:
826
+ this.scanError.emit({
827
+ code: Code.EmptyResult,
828
+ fatal: false,
829
+ message: "Could not extract information from image!",
830
+ recognizerName: recognitionEvent.data.recognizerName,
831
+ });
832
+ this.feedback.emit({
833
+ code: FeedbackCode.ScanUnsuccessful,
834
+ state: "FEEDBACK_ERROR",
835
+ message: this.translationService
836
+ .i("feedback-scan-unsuccessful")
837
+ .toString(),
838
+ });
839
+ this.hideScanFromImageUi(false);
840
+ this.clearInputImages();
841
+ break;
842
+ case RecognitionStatus.UnknownError:
843
+ // Do nothing, RecognitionStatus.EmptyResultState will handle negative outcome
844
+ this.clearInputImages();
845
+ break;
846
+ case RecognitionStatus.ScanSuccessful:
847
+ this.scanSuccess.emit(recognitionEvent.data);
848
+ this.feedback.emit({
849
+ code: FeedbackCode.ScanSuccessful,
850
+ state: "FEEDBACK_OK",
851
+ message: "",
852
+ });
853
+ this.clearInputImages();
854
+ this.hideScanFromImageUi(true);
855
+ break;
856
+ default:
857
+ //console.warn('Unhandled image recognition status:', recognitionEvent.status);
858
+ }
859
+ };
860
+ try {
861
+ this.imageScanStarted.emit();
862
+ if (this.thoroughScanFromImage) {
863
+ configuration.thoroughScan = true;
864
+ }
865
+ await this.sdkService.scanFromImageMultiSide(configuration, eventHandler);
866
+ }
867
+ catch (error) {
868
+ this.handleScanError(error);
869
+ this.hideScanFromImageUi(false);
870
+ }
871
+ }
872
+ handleScanError(error) {
873
+ const isAvailable = navigator.onLine;
874
+ if (!isAvailable) {
875
+ const fatalError = new SDKError({
876
+ code: ErrorTypes.ErrorCodes.InternetNotAvailable,
877
+ message: this.translationService
878
+ .i("check-internet-connection")
879
+ .toString(),
880
+ });
881
+ this.setFatalError(fatalError);
882
+ this.showLicenseInfoModal(this.translationService.i("check-internet-connection").toString());
883
+ return;
884
+ }
885
+ if (error?.code === ErrorCodes.INVALID_PING_PROXY_URL) {
886
+ this.setFatalError(new SDKError(ErrorTypes.componentErrors.pingProxyErrors.invalidProxyUrl, error));
887
+ }
888
+ else if (error?.code === ErrorCodes.PING_PROXY_PERMISSION_NOT_GRANTED) {
889
+ this.setFatalError(new SDKError(ErrorTypes.componentErrors.pingProxyErrors.permissionNotGranted, error));
890
+ }
891
+ else if (error?.code === ErrorCodes.LICENSE_UNLOCK_ERROR) {
892
+ this.setFatalError(new SDKError(ErrorTypes.componentErrors.licenseError, error));
893
+ this.showLicenseInfoModal(error);
894
+ }
895
+ else {
896
+ this.scanError.emit({
897
+ code: Code.GenericScanError,
898
+ fatal: true,
899
+ message: "There was a problem during scan action.",
900
+ recognizerName: "",
901
+ details: error,
902
+ });
903
+ this.feedback.emit({
904
+ code: FeedbackCode.GenericScanError,
905
+ state: "FEEDBACK_ERROR",
906
+ message: this.translationService.i("feedback-error-generic").toString(),
907
+ });
908
+ this.showOverlay("");
909
+ }
910
+ }
911
+ showLicenseInfoModal(error) {
912
+ if (typeof error === "string") {
913
+ this.licenseExperienceModal.content = error;
914
+ }
915
+ else {
916
+ if (error.type === "NETWORK_ERROR") {
917
+ this.licenseExperienceModal.content = this.translationService
918
+ .i("network-error")
919
+ .toString();
920
+ }
921
+ else {
922
+ this.licenseExperienceModal.content = this.translationService
923
+ .i("scanning-not-available")
924
+ .toString();
925
+ }
926
+ }
927
+ this.showOverlay("modal");
928
+ }
929
+ showScreen(screenName) {
930
+ for (const screenKey in this.screens) {
931
+ if (this.screens[screenKey]) {
932
+ this.screens[screenKey].visible = screenName === screenKey;
933
+ }
934
+ }
935
+ }
936
+ showOverlay(overlayName) {
937
+ /*if (overlayName === "camera") {
938
+ this.initialBodyOverflowValue = document.body.style.overflow;
939
+ document.body.style.overflow = "hidden";
940
+ } else {
941
+ document.body.style.overflow = this.initialBodyOverflowValue;
942
+ }*/
943
+ for (const overlayKey in this.overlays) {
944
+ if (this.overlays[overlayKey]) {
945
+ this.overlays[overlayKey].visible = overlayName === overlayKey;
946
+ }
947
+ }
948
+ }
949
+ setDragAndDrop() {
950
+ const dropTarget = this.galleryDropType === "FULLSCREEN" ? window : this.hostEl;
951
+ const lockTimeout = 3000;
952
+ let lockDragAndDrop = false;
953
+ if (this.galleryDropType === "INLINE") {
954
+ this.overlays.draganddrop.classList.add("inline");
955
+ }
956
+ const closeOverlay = () => {
957
+ if (lockDragAndDrop) {
958
+ window.setTimeout(() => {
959
+ this.hostEl.style.borderStyle = "solid";
960
+ this.overlays.draganddrop.classList.add("hidden");
961
+ this.showOverlay("");
962
+ window.setTimeout(() => {
963
+ this.overlays.draganddrop.classList.remove("hidden");
964
+ this.showScreen("action");
965
+ this.hostEl.style.borderStyle = "solid";
966
+ }, 500);
967
+ }, lockTimeout);
968
+ }
969
+ else {
970
+ this.showOverlay("");
971
+ window.setTimeout(() => {
972
+ this.showScreen("action");
973
+ this.hostEl.style.borderStyle = "solid";
974
+ }, 500);
975
+ }
976
+ };
977
+ dropTarget.addEventListener("dragenter", (ev) => {
978
+ ev.stopPropagation();
979
+ ev.preventDefault();
980
+ if (!this.scanFromImageButton.visible) {
981
+ return;
982
+ }
983
+ this.hostEl.style.borderStyle = "none";
984
+ });
985
+ dropTarget.addEventListener("dragover", (ev) => {
986
+ ev.stopPropagation();
987
+ ev.preventDefault();
988
+ if (!this.scanFromImageButton.visible) {
989
+ return;
990
+ }
991
+ this.hostEl.style.borderStyle = "none";
992
+ this.overlays.draganddrop.classList.remove("error");
993
+ this.overlays.draganddrop.querySelector("img").src =
994
+ this.iconDragAndDropGalleryDefault;
995
+ this.overlays.draganddrop.querySelector("p").innerText =
996
+ this.translationService.i("drop-info").toString();
997
+ this.showOverlay("draganddrop");
998
+ });
999
+ this.dragAndDropZone.addEventListener("dragleave", (ev) => {
1000
+ ev.stopPropagation();
1001
+ ev.preventDefault();
1002
+ if (!this.scanFromImageButton.visible) {
1003
+ return;
1004
+ }
1005
+ closeOverlay();
1006
+ });
1007
+ this.dragAndDropZone.addEventListener("drop", (ev) => {
1008
+ ev.stopPropagation();
1009
+ ev.preventDefault();
1010
+ if (!this.scanFromImageButton.visible) {
1011
+ return;
1012
+ }
1013
+ if (GenericHelpers.hasSupportedImageFiles(ev.dataTransfer.files)) {
1014
+ this.startScanFromImage(ev.dataTransfer.files[0]);
1015
+ }
1016
+ else {
1017
+ this.overlays.draganddrop.classList.add("error");
1018
+ this.overlays.draganddrop.querySelector("p").innerText =
1019
+ this.translationService.i("drop-error").toString();
1020
+ this.overlays.draganddrop.querySelector("img").src =
1021
+ this.iconDragAndDropWarningDefault;
1022
+ lockDragAndDrop = true;
1023
+ window.setTimeout(() => {
1024
+ lockDragAndDrop = false;
1025
+ }, lockTimeout);
1026
+ }
1027
+ closeOverlay();
1028
+ });
1029
+ }
1030
+ setFatalError(error) {
1031
+ this.fatalError.emit(error);
1032
+ if (this.hideLoadingAndErrorUi) {
1033
+ return;
1034
+ }
1035
+ if (error.details) {
1036
+ switch (error.details?.code) {
1037
+ case ErrorCodes.LICENSE_UNLOCK_ERROR:
1038
+ const licenseErrorType = error.details?.type;
1039
+ switch (licenseErrorType) {
1040
+ case LicenseErrorType.NetworkError:
1041
+ this.errorMessage.innerText = this.translationService
1042
+ .i("network-error")
1043
+ .toString();
1044
+ break;
1045
+ default:
1046
+ this.errorMessage.innerText = this.translationService
1047
+ .i("scanning-not-available")
1048
+ .toString();
1049
+ }
1050
+ break;
1051
+ default:
1052
+ // Do nothing
1053
+ }
1054
+ }
1055
+ else {
1056
+ this.errorMessage.innerText = error.message;
1057
+ }
1058
+ this.showScreen("error");
1059
+ this.showOverlay("");
1060
+ }
1061
+ abortScan() {
1062
+ this.scanAborted.emit();
1063
+ this.stopRecognition();
1064
+ }
1065
+ stopRecognition() {
1066
+ this.terminateHelpScreens();
1067
+ this.cameraExperience.classList.add("hide");
1068
+ this.sdkService.stopRecognition();
1069
+ this.scanReset = true;
1070
+ window.setTimeout(() => {
1071
+ this.cameraExperience.setState(CameraExperienceState.Default, false, true);
1072
+ this.cameraExperience.apiState = "";
1073
+ }, 500);
1074
+ this.showOverlay("");
1075
+ this.closeApiProcessStatus();
1076
+ }
1077
+ closeGalleryExperienceModal() {
1078
+ this.galleryExperienceModalErrorWindowVisible = false;
1079
+ this.stopRecognition();
1080
+ }
1081
+ onFromImageClicked() {
1082
+ if (this.imageRecognitionType === ImageRecognitionType.SingleSide) {
1083
+ this.scanFromImageInput.click();
1084
+ }
1085
+ if (this.imageRecognitionType === ImageRecognitionType.MultiSide) {
1086
+ if (this.multiSideGalleryOpened) {
1087
+ this.closeMultiSideGalleryUpload();
1088
+ }
1089
+ else {
1090
+ this.openMultiSideGalleryUpload();
1091
+ }
1092
+ }
1093
+ }
1094
+ clearInputImages() {
1095
+ if (this.imageRecognitionType === ImageRecognitionType.SingleSide) {
1096
+ this.scanFromImageInput.value = "";
1097
+ }
1098
+ if (this.imageRecognitionType === ImageRecognitionType.MultiSide) {
1099
+ this.imageBoxFirst.clear();
1100
+ this.imageBoxSecond.clear();
1101
+ }
1102
+ }
1103
+ openMultiSideGalleryUpload() {
1104
+ const dialog = this.screens.action.querySelector(".multi-side-image-upload");
1105
+ dialog.classList.add("visible");
1106
+ this.scanFromImageButton.selected = true;
1107
+ this.multiSideGalleryOpened = true;
1108
+ this.overlays.draganddrop.classList.add("hidden");
1109
+ }
1110
+ closeMultiSideGalleryUpload() {
1111
+ const dialog = this.screens.action.querySelector(".multi-side-image-upload");
1112
+ dialog.classList.remove("visible");
1113
+ this.scanFromImageButton.selected = false;
1114
+ this.multiSideGalleryOpened = false;
1115
+ this.overlays.draganddrop.classList.remove("hidden");
1116
+ }
1117
+ async onMultiSideImageChange(ev, imageType) {
1118
+ if (imageType === MultiSideImageType.First) {
1119
+ this.galleryImageFirstFile = GenericHelpers.getImageFile(ev);
1120
+ }
1121
+ if (imageType === MultiSideImageType.Second) {
1122
+ this.galleryImageSecondFile = GenericHelpers.getImageFile(ev);
1123
+ }
1124
+ // Enable scan button only if both images have values
1125
+ this.multiSideScanFromImageButton.disabled =
1126
+ this.galleryImageFirstFile === null ||
1127
+ this.galleryImageSecondFile === null;
1128
+ }
1129
+ showScanFromImageUi() {
1130
+ if (this.galleryOverlayType === "INLINE") {
1131
+ const inProgress = this.screens.processing.querySelector("p.in-progress");
1132
+ const done = this.screens.processing.querySelector("p.done");
1133
+ inProgress.classList.add("visible");
1134
+ done.classList.remove("visible");
1135
+ this.showScreen("processing");
1136
+ }
1137
+ if (this.galleryOverlayType === "FULLSCREEN") {
1138
+ this.showOverlay("processing");
1139
+ }
1140
+ }
1141
+ hideScanFromImageUi(success) {
1142
+ if (this.galleryOverlayType === "INLINE") {
1143
+ let timeout = 0;
1144
+ const inProgress = this.screens.processing.querySelector("p.in-progress");
1145
+ const done = this.screens.processing.querySelector("p.done");
1146
+ inProgress.classList.remove("visible");
1147
+ if (success) {
1148
+ done.classList.add("visible");
1149
+ timeout = 1000;
1150
+ }
1151
+ window.setTimeout(() => this.showScreen("action"), timeout);
1152
+ }
1153
+ if (this.galleryOverlayType === "FULLSCREEN") {
1154
+ this.showOverlay("");
1155
+ }
1156
+ }
1157
+ render() {
1158
+ return (h(Host, null, h("mb-screen", { id: "mb-screen-loading", visible: !this.hideLoadingAndErrorUi, ref: (el) => (this.screens.loading = el) }, h("mb-spinner", { icon: this.iconSpinnerScreenLoading })), h("mb-screen", { id: "mb-screen-error", visible: false, ref: (el) => (this.screens.error = el) }, h("svg", { width: "24", height: "24", viewBox: "0 0 24 24", fill: "none", xmlns: "http://www.w3.org/2000/svg" }, h("path", { "fill-rule": "evenodd", "clip-rule": "evenodd", d: "M12 4C7.58172 4 4 7.58172 4 12C4 16.4183 7.58172 20 12 20C16.4183 20 20 16.4183 20 12C20 7.58172 16.4183 4 12 4ZM2 12C2 6.47715 6.47715 2 12 2C17.5228 2 22 6.47715 22 12C22 17.5228 17.5228 22 12 22C6.47715 22 2 17.5228 2 12Z", fill: "#6B7280" }), h("path", { "fill-rule": "evenodd", "clip-rule": "evenodd", d: "M12 7C12.5523 7 13 7.44772 13 8V12C13 12.5523 12.5523 13 12 13C11.4477 13 11 12.5523 11 12V8C11 7.44772 11.4477 7 12 7Z", fill: "#6B7280" }), h("path", { "fill-rule": "evenodd", "clip-rule": "evenodd", d: "M11 16C11 15.4477 11.4477 15 12 15H12.01C12.5623 15 13.01 15.4477 13.01 16C13.01 16.5523 12.5623 17 12.01 17H12C11.4477 17 11 16.5523 11 16Z", fill: "#6B7280" })), h("p", { ref: (el) => (this.errorMessage = el) })), h("mb-screen", { id: "mb-screen-action", visible: false, ref: (el) => (this.screens.action = el) }, h("div", { class: "actions" }, h("p", { class: "action-label" }, this.translationService.i("action-message").toString()), h("div", { class: "action-buttons" }, h("mb-button", { ref: (el) => (this.scanFromCameraButton = el), visible: true, disabled: false, clickHandler: () => this.startScanFromCamera(), imageSrcDefault: this.iconCameraDefault, imageSrcActive: this.iconCameraActive, buttonTitle: this.translationService.i("action-alt-camera") }), h("input", { tabindex: "-1", id: "scan-from-image-input", ref: (el) => (this.scanFromImageInput = el), type: "file", accept: "image/*", onChange: () => this.scanFromImageInput.value && this.startScanFromImage() }), h("mb-button", { ref: (el) => (this.scanFromImageButton = el), disabled: false, visible: false, selected: false, clickHandler: () => this.onFromImageClicked(), imageSrcDefault: this.iconGalleryDefault, imageSrcActive: this.iconGalleryActive, buttonTitle: this.translationService.i("action-alt-gallery") }))), h("div", { class: "multi-side-image-upload" }, h("div", { class: "image-upload-row" }, h("mb-image-box", { ref: (el) => (this.imageBoxFirst = el), "box-title": this.translationService
1159
+ .i("process-image-box-first")
1160
+ .toString(), "anchor-text": this.translationService
1161
+ .i("process-image-box-add")
1162
+ .toString(), onImageChange: (ev) => this.onMultiSideImageChange(ev.detail, MultiSideImageType.First) }), h("mb-image-box", { ref: (el) => (this.imageBoxSecond = el), "box-title": this.translationService
1163
+ .i("process-image-box-second")
1164
+ .toString(), "anchor-text": this.translationService
1165
+ .i("process-image-box-add")
1166
+ .toString(), onImageChange: (ev) => this.onMultiSideImageChange(ev.detail, MultiSideImageType.Second) })), h("mb-button-classic", { ref: (el) => (this.multiSideScanFromImageButton =
1167
+ el), disabled: true, clickHandler: () => this.startScanFromImageMultiSide() }, this.translationService.i("process-image-upload-cta").toString()))), h("mb-screen", { id: "mb-screen-processing", visible: false, ref: (el) => (this.screens.processing = el) }, h("p", { class: "in-progress" }, h("mb-spinner", { icon: this.iconSpinnerScreenLoading }), h("span", null, this.translationService
1168
+ .i("process-image-message-inline")
1169
+ .toString())), h("p", { class: "done" }, h("mb-completed", { icon: this.iconGalleryScanningCompleted }), h("span", null, this.translationService
1170
+ .i("process-image-message-inline-done")
1171
+ .toString()))), h("mb-overlay", { id: "mb-overlay-drag-and-drop", visible: false, ref: (el) => (this.overlays.draganddrop = el) }, h("img", { class: "drag-and-drop-icon", src: this.iconDragAndDropGalleryDefault }), h("p", { class: "drag-and-drop-message" }, "Whoops, we don't support that image format. Please upload a JPEG or PNG file."), h("div", { id: "drag-and-drop-zone", ref: (el) => (this.dragAndDropZone = el) })), h("mb-overlay", { id: "mb-overlay-gallery-experience", ref: (el) => (this.overlays.processing = el) }, h("mb-spinner", { icon: this.iconSpinnerFromGalleryExperience, size: "large" }), h("p", null, this.translationService.i("process-image-message").toString()), h("mb-modal", { visible: this.galleryExperienceModalErrorWindowVisible, modalTitle: this.translationService
1172
+ .i("feedback-scan-unsuccessful-title")
1173
+ .toString(), content: this.translationService
1174
+ .i("feedback-scan-unsuccessful")
1175
+ .toString(), onClose: () => this.closeGalleryExperienceModal() }, h("div", { slot: "actionButtons" }, h("button", { class: "primary modal-action-button", onClick: () => this.closeGalleryExperienceModal() }, this.translationService.i("modal-window-close").toString())))), h("mb-overlay", { id: "mb-overlay-camera-experience", visible: false, ref: (el) => (this.overlays.camera = el) }, h("div", { class: "holder" }, h("video", { part: "mb-camera-video", ref: (el) => (this.videoElement = el), playsinline: true }), h("mb-camera-experience", { ref: (el) => (this.cameraExperience = el), cameraExperienceStateDurations: this.cameraExperienceStateDurations, translationService: this.translationService, showScanningLine: this.showScanningLine, showCameraFeedbackBarcodeMessage: this.showCameraFeedbackBarcodeMessage, "clear-is-camera-active": this.clearIsCameraActive, onClose: () => this.abortScan(), onFlipCameraAction: () => this.flipCameraAction(), onSetIsCameraActive: (ev) => this.handleSetIsCameraActive(ev.detail), onChangeCameraDevice: (ev) => this.changeCameraDevice(ev.detail), allowHelpScreens: this.allowHelpScreens, allowHelpScreensFab: this.allowHelpScreensFab, allowHelpScreensOnboarding: this.allowHelpScreensOnboarding, allowHelpScreensOnboardingPerpetuity: this.allowHelpScreensOnboardingPerpetuity, helpScreensTooltipPauseTimeout: this.helpScreensTooltipPauseTimeout, class: "overlay-camera-element" }), h("mb-api-process-status", { visible: this.apiProcessStatusVisible, state: this.apiProcessStatusState, translationService: this.translationService, onCloseTryAgain: () => this.closeApiProcessStatus(true), onCloseFromStart: () => this.stopRecognition() }))), h("mb-overlay", { id: "mb-overlay-modal", visible: false, ref: (el) => (this.overlays.modal = el) }, h("mb-modal", { ref: (el) => (this.licenseExperienceModal = el), modalTitle: "Error" }, h("div", { slot: "actionButtons" }, h("button", { class: "primary modal-action-button", onClick: () => this.showOverlay("") }, this.translationService.i("modal-window-close").toString()))))));
1176
+ }
1177
+ static get is() { return "mb-component"; }
1178
+ static get encapsulation() { return "shadow"; }
1179
+ static get originalStyleUrls() {
1180
+ return {
1181
+ "$": ["mb-component.scss"]
1182
+ };
1183
+ }
1184
+ static get styleUrls() {
1185
+ return {
1186
+ "$": ["mb-component.css"]
1187
+ };
1188
+ }
1189
+ static get properties() {
1190
+ return {
1191
+ "allowHelloMessage": {
1192
+ "type": "boolean",
1193
+ "mutable": false,
1194
+ "complexType": {
1195
+ "original": "boolean",
1196
+ "resolved": "boolean",
1197
+ "references": {}
1198
+ },
1199
+ "required": false,
1200
+ "optional": false,
1201
+ "docs": {
1202
+ "tags": [],
1203
+ "text": "See description in public component."
1204
+ },
1205
+ "attribute": "allow-hello-message",
1206
+ "reflect": false,
1207
+ "defaultValue": "true"
1208
+ },
1209
+ "engineLocation": {
1210
+ "type": "string",
1211
+ "mutable": false,
1212
+ "complexType": {
1213
+ "original": "string",
1214
+ "resolved": "string",
1215
+ "references": {}
1216
+ },
1217
+ "required": false,
1218
+ "optional": false,
1219
+ "docs": {
1220
+ "tags": [],
1221
+ "text": "See description in public component."
1222
+ },
1223
+ "attribute": "engine-location",
1224
+ "reflect": false,
1225
+ "defaultValue": "\"\""
1226
+ },
1227
+ "workerLocation": {
1228
+ "type": "string",
1229
+ "mutable": false,
1230
+ "complexType": {
1231
+ "original": "string",
1232
+ "resolved": "string",
1233
+ "references": {}
1234
+ },
1235
+ "required": false,
1236
+ "optional": false,
1237
+ "docs": {
1238
+ "tags": [],
1239
+ "text": "See description in public component."
1240
+ },
1241
+ "attribute": "worker-location",
1242
+ "reflect": false,
1243
+ "defaultValue": "\"\""
1244
+ },
1245
+ "licenseKey": {
1246
+ "type": "string",
1247
+ "mutable": false,
1248
+ "complexType": {
1249
+ "original": "string",
1250
+ "resolved": "string",
1251
+ "references": {}
1252
+ },
1253
+ "required": false,
1254
+ "optional": false,
1255
+ "docs": {
1256
+ "tags": [],
1257
+ "text": "See description in public component."
1258
+ },
1259
+ "attribute": "license-key",
1260
+ "reflect": false
1261
+ },
1262
+ "wasmType": {
1263
+ "type": "string",
1264
+ "mutable": true,
1265
+ "complexType": {
1266
+ "original": "string | null",
1267
+ "resolved": "string",
1268
+ "references": {}
1269
+ },
1270
+ "required": false,
1271
+ "optional": false,
1272
+ "docs": {
1273
+ "tags": [],
1274
+ "text": "See description in public component."
1275
+ },
1276
+ "attribute": "wasm-type",
1277
+ "reflect": false
1278
+ },
1279
+ "blinkIdVariant": {
1280
+ "type": "string",
1281
+ "mutable": false,
1282
+ "complexType": {
1283
+ "original": "BlinkIDVariant",
1284
+ "resolved": "\"full\" | \"lightweight\"",
1285
+ "references": {
1286
+ "BlinkIDVariant": {
1287
+ "location": "import",
1288
+ "path": "@microblink/blinkid-in-browser-sdk"
1289
+ }
1290
+ }
1291
+ },
1292
+ "required": false,
1293
+ "optional": true,
1294
+ "docs": {
1295
+ "tags": [],
1296
+ "text": ""
1297
+ },
1298
+ "attribute": "blink-id-variant",
1299
+ "reflect": false
1300
+ },
1301
+ "recognizers": {
1302
+ "type": "unknown",
1303
+ "mutable": true,
1304
+ "complexType": {
1305
+ "original": "Array<string>",
1306
+ "resolved": "string[]",
1307
+ "references": {
1308
+ "Array": {
1309
+ "location": "global"
1310
+ }
1311
+ }
1312
+ },
1313
+ "required": false,
1314
+ "optional": false,
1315
+ "docs": {
1316
+ "tags": [],
1317
+ "text": "See description in public component."
1318
+ }
1319
+ },
1320
+ "recognizerOptions": {
1321
+ "type": "unknown",
1322
+ "mutable": true,
1323
+ "complexType": {
1324
+ "original": "{ [key: string]: any }",
1325
+ "resolved": "{ [key: string]: any; }",
1326
+ "references": {}
1327
+ },
1328
+ "required": false,
1329
+ "optional": false,
1330
+ "docs": {
1331
+ "tags": [],
1332
+ "text": "See description in public component."
1333
+ }
1334
+ },
1335
+ "recognitionTimeout": {
1336
+ "type": "number",
1337
+ "mutable": false,
1338
+ "complexType": {
1339
+ "original": "number",
1340
+ "resolved": "number",
1341
+ "references": {}
1342
+ },
1343
+ "required": false,
1344
+ "optional": false,
1345
+ "docs": {
1346
+ "tags": [],
1347
+ "text": "See description in public component."
1348
+ },
1349
+ "attribute": "recognition-timeout",
1350
+ "reflect": false
1351
+ },
1352
+ "recognitionPauseTimeout": {
1353
+ "type": "number",
1354
+ "mutable": false,
1355
+ "complexType": {
1356
+ "original": "number",
1357
+ "resolved": "number",
1358
+ "references": {}
1359
+ },
1360
+ "required": false,
1361
+ "optional": false,
1362
+ "docs": {
1363
+ "tags": [],
1364
+ "text": "See description in public component."
1365
+ },
1366
+ "attribute": "recognition-pause-timeout",
1367
+ "reflect": false
1368
+ },
1369
+ "cameraExperienceStateDurations": {
1370
+ "type": "unknown",
1371
+ "mutable": false,
1372
+ "complexType": {
1373
+ "original": "CameraExperienceStateDurations",
1374
+ "resolved": "CameraExperienceStateDurations",
1375
+ "references": {
1376
+ "CameraExperienceStateDurations": {
1377
+ "location": "import",
1378
+ "path": "../../../utils/data-structures"
1379
+ }
1380
+ }
1381
+ },
1382
+ "required": false,
1383
+ "optional": false,
1384
+ "docs": {
1385
+ "tags": [],
1386
+ "text": "See description in public component."
1387
+ },
1388
+ "defaultValue": "null"
1389
+ },
1390
+ "includeSuccessFrame": {
1391
+ "type": "boolean",
1392
+ "mutable": false,
1393
+ "complexType": {
1394
+ "original": "boolean",
1395
+ "resolved": "boolean",
1396
+ "references": {}
1397
+ },
1398
+ "required": false,
1399
+ "optional": false,
1400
+ "docs": {
1401
+ "tags": [],
1402
+ "text": "See description in public component."
1403
+ },
1404
+ "attribute": "include-success-frame",
1405
+ "reflect": false,
1406
+ "defaultValue": "false"
1407
+ },
1408
+ "enableDrag": {
1409
+ "type": "boolean",
1410
+ "mutable": false,
1411
+ "complexType": {
1412
+ "original": "boolean",
1413
+ "resolved": "boolean",
1414
+ "references": {}
1415
+ },
1416
+ "required": false,
1417
+ "optional": false,
1418
+ "docs": {
1419
+ "tags": [],
1420
+ "text": "See description in public component."
1421
+ },
1422
+ "attribute": "enable-drag",
1423
+ "reflect": false,
1424
+ "defaultValue": "true"
1425
+ },
1426
+ "hideLoadingAndErrorUi": {
1427
+ "type": "boolean",
1428
+ "mutable": false,
1429
+ "complexType": {
1430
+ "original": "boolean",
1431
+ "resolved": "boolean",
1432
+ "references": {}
1433
+ },
1434
+ "required": false,
1435
+ "optional": false,
1436
+ "docs": {
1437
+ "tags": [],
1438
+ "text": "See description in public component."
1439
+ },
1440
+ "attribute": "hide-loading-and-error-ui",
1441
+ "reflect": false,
1442
+ "defaultValue": "false"
1443
+ },
1444
+ "rtl": {
1445
+ "type": "boolean",
1446
+ "mutable": false,
1447
+ "complexType": {
1448
+ "original": "boolean",
1449
+ "resolved": "boolean",
1450
+ "references": {}
1451
+ },
1452
+ "required": false,
1453
+ "optional": false,
1454
+ "docs": {
1455
+ "tags": [],
1456
+ "text": "See description in public component."
1457
+ },
1458
+ "attribute": "rtl",
1459
+ "reflect": false,
1460
+ "defaultValue": "false"
1461
+ },
1462
+ "scanFromCamera": {
1463
+ "type": "boolean",
1464
+ "mutable": false,
1465
+ "complexType": {
1466
+ "original": "boolean",
1467
+ "resolved": "boolean",
1468
+ "references": {}
1469
+ },
1470
+ "required": false,
1471
+ "optional": false,
1472
+ "docs": {
1473
+ "tags": [],
1474
+ "text": "See description in public component."
1475
+ },
1476
+ "attribute": "scan-from-camera",
1477
+ "reflect": false,
1478
+ "defaultValue": "true"
1479
+ },
1480
+ "scanFromImage": {
1481
+ "type": "boolean",
1482
+ "mutable": false,
1483
+ "complexType": {
1484
+ "original": "boolean",
1485
+ "resolved": "boolean",
1486
+ "references": {}
1487
+ },
1488
+ "required": false,
1489
+ "optional": false,
1490
+ "docs": {
1491
+ "tags": [],
1492
+ "text": "See description in public component."
1493
+ },
1494
+ "attribute": "scan-from-image",
1495
+ "reflect": false,
1496
+ "defaultValue": "true"
1497
+ },
1498
+ "thoroughScanFromImage": {
1499
+ "type": "boolean",
1500
+ "mutable": false,
1501
+ "complexType": {
1502
+ "original": "boolean",
1503
+ "resolved": "boolean",
1504
+ "references": {}
1505
+ },
1506
+ "required": false,
1507
+ "optional": false,
1508
+ "docs": {
1509
+ "tags": [],
1510
+ "text": "See description in public component."
1511
+ },
1512
+ "attribute": "thorough-scan-from-image",
1513
+ "reflect": false,
1514
+ "defaultValue": "false"
1515
+ },
1516
+ "galleryOverlayType": {
1517
+ "type": "string",
1518
+ "mutable": false,
1519
+ "complexType": {
1520
+ "original": "\"FULLSCREEN\" | \"INLINE\"",
1521
+ "resolved": "\"FULLSCREEN\" | \"INLINE\"",
1522
+ "references": {}
1523
+ },
1524
+ "required": false,
1525
+ "optional": false,
1526
+ "docs": {
1527
+ "tags": [],
1528
+ "text": "See description in public component."
1529
+ },
1530
+ "attribute": "gallery-overlay-type",
1531
+ "reflect": false,
1532
+ "defaultValue": "\"INLINE\""
1533
+ },
1534
+ "galleryDropType": {
1535
+ "type": "string",
1536
+ "mutable": false,
1537
+ "complexType": {
1538
+ "original": "\"FULLSCREEN\" | \"INLINE\"",
1539
+ "resolved": "\"FULLSCREEN\" | \"INLINE\"",
1540
+ "references": {}
1541
+ },
1542
+ "required": false,
1543
+ "optional": false,
1544
+ "docs": {
1545
+ "tags": [],
1546
+ "text": "See description in public component."
1547
+ },
1548
+ "attribute": "gallery-drop-type",
1549
+ "reflect": false,
1550
+ "defaultValue": "\"INLINE\""
1551
+ },
1552
+ "showActionLabels": {
1553
+ "type": "boolean",
1554
+ "mutable": false,
1555
+ "complexType": {
1556
+ "original": "boolean",
1557
+ "resolved": "boolean",
1558
+ "references": {}
1559
+ },
1560
+ "required": false,
1561
+ "optional": false,
1562
+ "docs": {
1563
+ "tags": [],
1564
+ "text": "See description in public component."
1565
+ },
1566
+ "attribute": "show-action-labels",
1567
+ "reflect": false,
1568
+ "defaultValue": "false"
1569
+ },
1570
+ "showModalWindows": {
1571
+ "type": "boolean",
1572
+ "mutable": false,
1573
+ "complexType": {
1574
+ "original": "boolean",
1575
+ "resolved": "boolean",
1576
+ "references": {}
1577
+ },
1578
+ "required": false,
1579
+ "optional": false,
1580
+ "docs": {
1581
+ "tags": [],
1582
+ "text": "See description in public component."
1583
+ },
1584
+ "attribute": "show-modal-windows",
1585
+ "reflect": false,
1586
+ "defaultValue": "false"
1587
+ },
1588
+ "showCameraFeedbackBarcodeMessage": {
1589
+ "type": "boolean",
1590
+ "mutable": false,
1591
+ "complexType": {
1592
+ "original": "boolean",
1593
+ "resolved": "boolean",
1594
+ "references": {}
1595
+ },
1596
+ "required": false,
1597
+ "optional": false,
1598
+ "docs": {
1599
+ "tags": [],
1600
+ "text": "See description in public component."
1601
+ },
1602
+ "attribute": "show-camera-feedback-barcode-message",
1603
+ "reflect": false,
1604
+ "defaultValue": "false"
1605
+ },
1606
+ "showScanningLine": {
1607
+ "type": "boolean",
1608
+ "mutable": false,
1609
+ "complexType": {
1610
+ "original": "boolean",
1611
+ "resolved": "boolean",
1612
+ "references": {}
1613
+ },
1614
+ "required": false,
1615
+ "optional": false,
1616
+ "docs": {
1617
+ "tags": [],
1618
+ "text": "See description in public component."
1619
+ },
1620
+ "attribute": "show-scanning-line",
1621
+ "reflect": false,
1622
+ "defaultValue": "false"
1623
+ },
1624
+ "iconCameraDefault": {
1625
+ "type": "string",
1626
+ "mutable": false,
1627
+ "complexType": {
1628
+ "original": "string",
1629
+ "resolved": "string",
1630
+ "references": {}
1631
+ },
1632
+ "required": false,
1633
+ "optional": false,
1634
+ "docs": {
1635
+ "tags": [],
1636
+ "text": "See description in public component."
1637
+ },
1638
+ "attribute": "icon-camera-default",
1639
+ "reflect": false,
1640
+ "defaultValue": "'data:image/svg+xml;utf8,<svg width=\"20\" height=\"20\" viewBox=\"0 0 20 20\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\"><path fill-rule=\"evenodd\" clip-rule=\"evenodd\" d=\"M6.32151 2.98816C6.63407 2.6756 7.05799 2.5 7.50002 2.5H12.5C12.942 2.5 13.366 2.6756 13.6785 2.98816C13.9911 3.30072 14.1667 3.72464 14.1667 4.16667C14.1667 4.38768 14.2545 4.59964 14.4108 4.75592C14.567 4.9122 14.779 5 15 5H15.8334C16.4964 5 17.1323 5.26339 17.6011 5.73223C18.07 6.20107 18.3334 6.83696 18.3334 7.5V15C18.3334 15.663 18.07 16.2989 17.6011 16.7678C17.1323 17.2366 16.4964 17.5 15.8334 17.5H4.16669C3.50365 17.5 2.86776 17.2366 2.39892 16.7678C1.93008 16.2989 1.66669 15.663 1.66669 15V7.5C1.66669 6.83696 1.93008 6.20107 2.39892 5.73223C2.86776 5.26339 3.50365 5 4.16669 5H5.00002C5.22103 5 5.433 4.9122 5.58928 4.75592C5.74556 4.59964 5.83335 4.38768 5.83335 4.16667C5.83335 3.72464 6.00895 3.30072 6.32151 2.98816ZM4.16669 6.66667C3.94567 6.66667 3.73371 6.75446 3.57743 6.91074C3.42115 7.06702 3.33335 7.27899 3.33335 7.5V15C3.33335 15.221 3.42115 15.433 3.57743 15.5893C3.73371 15.7455 3.94567 15.8333 4.16669 15.8333H15.8334C16.0544 15.8333 16.2663 15.7455 16.4226 15.5893C16.5789 15.433 16.6667 15.221 16.6667 15V7.5C16.6667 7.27899 16.5789 7.06702 16.4226 6.91074C16.2663 6.75446 16.0544 6.66667 15.8334 6.66667H15C14.337 6.66667 13.7011 6.40327 13.2323 5.93443C12.7634 5.46559 12.5 4.82971 12.5 4.16667L7.50002 4.16667C7.50002 4.82971 7.23663 5.46559 6.76779 5.93443C6.29895 6.40327 5.66306 6.66667 5.00002 6.66667H4.16669Z\" fill=\"black\"/><path fill-rule=\"evenodd\" clip-rule=\"evenodd\" d=\"M10 9.16667C9.07955 9.16667 8.33335 9.91286 8.33335 10.8333C8.33335 11.7538 9.07955 12.5 10 12.5C10.9205 12.5 11.6667 11.7538 11.6667 10.8333C11.6667 9.91286 10.9205 9.16667 10 9.16667ZM6.66669 10.8333C6.66669 8.99238 8.15907 7.5 10 7.5C11.841 7.5 13.3334 8.99238 13.3334 10.8333C13.3334 12.6743 11.841 14.1667 10 14.1667C8.15907 14.1667 6.66669 12.6743 6.66669 10.8333Z\" fill=\"black\"/></svg>'"
1641
+ },
1642
+ "iconCameraActive": {
1643
+ "type": "string",
1644
+ "mutable": false,
1645
+ "complexType": {
1646
+ "original": "string",
1647
+ "resolved": "string",
1648
+ "references": {}
1649
+ },
1650
+ "required": false,
1651
+ "optional": false,
1652
+ "docs": {
1653
+ "tags": [],
1654
+ "text": "See description in public component."
1655
+ },
1656
+ "attribute": "icon-camera-active",
1657
+ "reflect": false,
1658
+ "defaultValue": "'data:image/svg+xml;utf8,<svg width=\"20\" height=\"20\" viewBox=\"0 0 20 20\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\"><path fill-rule=\"evenodd\" clip-rule=\"evenodd\" d=\"M6.32151 2.98816C6.63407 2.6756 7.05799 2.5 7.50002 2.5H12.5C12.942 2.5 13.366 2.6756 13.6785 2.98816C13.9911 3.30072 14.1667 3.72464 14.1667 4.16667C14.1667 4.38768 14.2545 4.59964 14.4108 4.75592C14.567 4.9122 14.779 5 15 5H15.8334C16.4964 5 17.1323 5.26339 17.6011 5.73223C18.07 6.20107 18.3334 6.83696 18.3334 7.5V15C18.3334 15.663 18.07 16.2989 17.6011 16.7678C17.1323 17.2366 16.4964 17.5 15.8334 17.5H4.16669C3.50365 17.5 2.86776 17.2366 2.39892 16.7678C1.93008 16.2989 1.66669 15.663 1.66669 15V7.5C1.66669 6.83696 1.93008 6.20107 2.39892 5.73223C2.86776 5.26339 3.50365 5 4.16669 5H5.00002C5.22103 5 5.433 4.9122 5.58928 4.75592C5.74556 4.59964 5.83335 4.38768 5.83335 4.16667C5.83335 3.72464 6.00895 3.30072 6.32151 2.98816ZM4.16669 6.66667C3.94567 6.66667 3.73371 6.75446 3.57743 6.91074C3.42115 7.06702 3.33335 7.27899 3.33335 7.5V15C3.33335 15.221 3.42115 15.433 3.57743 15.5893C3.73371 15.7455 3.94567 15.8333 4.16669 15.8333H15.8334C16.0544 15.8333 16.2663 15.7455 16.4226 15.5893C16.5789 15.433 16.6667 15.221 16.6667 15V7.5C16.6667 7.27899 16.5789 7.06702 16.4226 6.91074C16.2663 6.75446 16.0544 6.66667 15.8334 6.66667H15C14.337 6.66667 13.7011 6.40327 13.2323 5.93443C12.7634 5.46559 12.5 4.82971 12.5 4.16667L7.50002 4.16667C7.50002 4.82971 7.23663 5.46559 6.76779 5.93443C6.29895 6.40327 5.66306 6.66667 5.00002 6.66667H4.16669Z\" fill=\"%2348B2E8\"/><path fill-rule=\"evenodd\" clip-rule=\"evenodd\" d=\"M10 9.16667C9.07955 9.16667 8.33335 9.91286 8.33335 10.8333C8.33335 11.7538 9.07955 12.5 10 12.5C10.9205 12.5 11.6667 11.7538 11.6667 10.8333C11.6667 9.91286 10.9205 9.16667 10 9.16667ZM6.66669 10.8333C6.66669 8.99238 8.15907 7.5 10 7.5C11.841 7.5 13.3334 8.99238 13.3334 10.8333C13.3334 12.6743 11.841 14.1667 10 14.1667C8.15907 14.1667 6.66669 12.6743 6.66669 10.8333Z\" fill=\"%2348B2E8\"/></svg>'"
1659
+ },
1660
+ "iconGalleryDefault": {
1661
+ "type": "string",
1662
+ "mutable": false,
1663
+ "complexType": {
1664
+ "original": "string",
1665
+ "resolved": "string",
1666
+ "references": {}
1667
+ },
1668
+ "required": false,
1669
+ "optional": false,
1670
+ "docs": {
1671
+ "tags": [],
1672
+ "text": "See description in public component."
1673
+ },
1674
+ "attribute": "icon-gallery-default",
1675
+ "reflect": false,
1676
+ "defaultValue": "'data:image/svg+xml;utf8,<svg width=\"20\" height=\"20\" viewBox=\"0 0 20 20\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\"><path fill-rule=\"evenodd\" clip-rule=\"evenodd\" d=\"M11.6667 6.66666C11.6667 6.20642 12.0398 5.83333 12.5 5.83333H12.5084C12.9686 5.83333 13.3417 6.20642 13.3417 6.66666C13.3417 7.1269 12.9686 7.5 12.5084 7.5H12.5C12.0398 7.5 11.6667 7.1269 11.6667 6.66666Z\" fill=\"black\"/><path fill-rule=\"evenodd\" clip-rule=\"evenodd\" d=\"M5.83333 4.16667C4.91286 4.16667 4.16667 4.91286 4.16667 5.83333V14.1667C4.16667 15.0871 4.91286 15.8333 5.83333 15.8333H14.1667C15.0871 15.8333 15.8333 15.0871 15.8333 14.1667V5.83333C15.8333 4.91286 15.0871 4.16667 14.1667 4.16667H5.83333ZM2.5 5.83333C2.5 3.99238 3.99238 2.5 5.83333 2.5H14.1667C16.0076 2.5 17.5 3.99238 17.5 5.83333V14.1667C17.5 16.0076 16.0076 17.5 14.1667 17.5H5.83333C3.99238 17.5 2.5 16.0076 2.5 14.1667V5.83333Z\" fill=\"black\"/><path fill-rule=\"evenodd\" clip-rule=\"evenodd\" d=\"M7.24972 9.76212L3.92259 13.0892C3.59715 13.4147 3.06951 13.4147 2.74408 13.0892C2.41864 12.7638 2.41864 12.2362 2.74408 11.9107L6.07741 8.57741L6.08885 8.56618C6.59083 8.08315 7.22016 7.7751 7.91667 7.7751C8.61317 7.7751 9.2425 8.08315 9.74448 8.56618L9.75592 8.57741L13.9226 12.7441C14.248 13.0695 14.248 13.5971 13.9226 13.9226C13.5972 14.248 13.0695 14.248 12.7441 13.9226L8.58361 9.76212C8.32758 9.51773 8.09662 9.44177 7.91667 9.44177C7.73672 9.44177 7.50575 9.51773 7.24972 9.76212Z\" fill=\"black\"/><path fill-rule=\"evenodd\" clip-rule=\"evenodd\" d=\"M13.083 11.4288L12.2559 12.2559C11.9305 12.5814 11.4028 12.5814 11.0774 12.2559C10.752 11.9305 10.752 11.4028 11.0774 11.0774L11.9107 10.2441L11.9222 10.2329C12.4241 9.74982 13.0535 9.44177 13.75 9.44177C14.4465 9.44177 15.0758 9.74982 15.5778 10.2329L15.5892 10.2441L17.2559 11.9107C17.5813 12.2362 17.5813 12.7638 17.2559 13.0893C16.9305 13.4147 16.4028 13.4147 16.0774 13.0893L14.4169 11.4288C14.1609 11.1844 13.9299 11.1084 13.75 11.1084C13.57 11.1084 13.3391 11.1844 13.083 11.4288Z\" fill=\"black\"/></svg>'"
1677
+ },
1678
+ "iconDragAndDropGalleryDefault": {
1679
+ "type": "string",
1680
+ "mutable": false,
1681
+ "complexType": {
1682
+ "original": "string",
1683
+ "resolved": "string",
1684
+ "references": {}
1685
+ },
1686
+ "required": false,
1687
+ "optional": false,
1688
+ "docs": {
1689
+ "tags": [],
1690
+ "text": "See description in public component."
1691
+ },
1692
+ "attribute": "icon-drag-and-drop-gallery-default",
1693
+ "reflect": false,
1694
+ "defaultValue": "\"data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iMjQiIGhlaWdodD0iMjQiIHZpZXdCb3g9IjAgMCAyNCAyNCIgZmlsbD0ibm9uZSIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIj4KPHBhdGggZmlsbC1ydWxlPSJldmVub2RkIiBjbGlwLXJ1bGU9ImV2ZW5vZGQiIGQ9Ik0xNCA4QzE0IDcuNDQ3NzIgMTQuNDQ3NyA3IDE1IDdIMTUuMDFDMTUuNTYyMyA3IDE2LjAxIDcuNDQ3NzIgMTYuMDEgOEMxNi4wMSA4LjU1MjI4IDE1LjU2MjMgOSAxNS4wMSA5SDE1QzE0LjQ0NzcgOSAxNCA4LjU1MjI4IDE0IDhaIiBmaWxsPSIjMDA2MkYyIi8+CjxwYXRoIGZpbGwtcnVsZT0iZXZlbm9kZCIgY2xpcC1ydWxlPSJldmVub2RkIiBkPSJNNyA1QzUuODk1NDMgNSA1IDUuODk1NDMgNSA3VjE3QzUgMTguMTA0NiA1Ljg5NTQzIDE5IDcgMTlIMTdDMTguMTA0NiAxOSAxOSAxOC4xMDQ2IDE5IDE3VjdDMTkgNS44OTU0MyAxOC4xMDQ2IDUgMTcgNUg3Wk0zIDdDMyA0Ljc5MDg2IDQuNzkwODYgMyA3IDNIMTdDMTkuMjA5MSAzIDIxIDQuNzkwODYgMjEgN1YxN0MyMSAxOS4yMDkxIDE5LjIwOTEgMjEgMTcgMjFIN0M0Ljc5MDg2IDIxIDMgMTkuMjA5MSAzIDE3VjdaIiBmaWxsPSIjMDA2MkYyIi8+CjxwYXRoIGZpbGwtcnVsZT0iZXZlbm9kZCIgY2xpcC1ydWxlPSJldmVub2RkIiBkPSJNOC42OTk2NiAxMS43MTQ1TDQuNzA3MTEgMTUuNzA3MUM0LjMxNjU4IDE2LjA5NzYgMy42ODM0MiAxNi4wOTc2IDMuMjkyODkgMTUuNzA3MUMyLjkwMjM3IDE1LjMxNjUgMi45MDIzNyAxNC42ODM0IDMuMjkyODkgMTQuMjkyOEw3LjI5Mjg5IDEwLjI5MjhMNy4zMDY2MiAxMC4yNzk0QzcuOTA5IDkuNjk5NzQgOC42NjQxOSA5LjMzMDA4IDkuNSA5LjMzMDA4QzEwLjMzNTggOS4zMzAwOCAxMS4wOTEgOS42OTk3NCAxMS42OTM0IDEwLjI3OTRMMTEuNzA3MSAxMC4yOTI4TDE2LjcwNzEgMTUuMjkyOEMxNy4wOTc2IDE1LjY4MzQgMTcuMDk3NiAxNi4zMTY1IDE2LjcwNzEgMTYuNzA3MUMxNi4zMTY2IDE3LjA5NzYgMTUuNjgzNCAxNy4wOTc2IDE1LjI5MjkgMTYuNzA3MUwxMC4zMDAzIDExLjcxNDVDOS45OTMxIDExLjQyMTIgOS43MTU5NCAxMS4zMzAxIDkuNSAxMS4zMzAxQzkuMjg0MDYgMTEuMzMwMSA5LjAwNjkgMTEuNDIxMiA4LjY5OTY2IDExLjcxNDVaIiBmaWxsPSIjMDA2MkYyIi8+CjxwYXRoIGZpbGwtcnVsZT0iZXZlbm9kZCIgY2xpcC1ydWxlPSJldmVub2RkIiBkPSJNMTUuNjk5NyAxMy43MTQ1TDE0LjcwNzEgMTQuNzA3MUMxNC4zMTY2IDE1LjA5NzYgMTMuNjgzNCAxNS4wOTc2IDEzLjI5MjkgMTQuNzA3MUMxMi45MDI0IDE0LjMxNjUgMTIuOTAyNCAxMy42ODM0IDEzLjI5MjkgMTMuMjkyOEwxNC4yOTI5IDEyLjI5MjhMMTQuMzA2NiAxMi4yNzk0QzE0LjkwOSAxMS42OTk3IDE1LjY2NDIgMTEuMzMwMSAxNi41IDExLjMzMDFDMTcuMzM1OCAxMS4zMzAxIDE4LjA5MSAxMS42OTk3IDE4LjY5MzQgMTIuMjc5NEwxOC43MDcxIDEyLjI5MjhMMjAuNzA3MSAxNC4yOTI4QzIxLjA5NzYgMTQuNjgzNCAyMS4wOTc2IDE1LjMxNjUgMjAuNzA3MSAxNS43MDcxQzIwLjMxNjYgMTYuMDk3NiAxOS42ODM0IDE2LjA5NzYgMTkuMjkyOSAxNS43MDcxTDE3LjMwMDMgMTMuNzE0NUMxNi45OTMxIDEzLjQyMTIgMTYuNzE1OSAxMy4zMzAxIDE2LjUgMTMuMzMwMUMxNi4yODQxIDEzLjMzMDEgMTYuMDA2OSAxMy40MjEyIDE1LjY5OTcgMTMuNzE0NVoiIGZpbGw9IiMwMDYyRjIiLz4KPC9zdmc+Cg==\""
1695
+ },
1696
+ "iconDragAndDropWarningDefault": {
1697
+ "type": "string",
1698
+ "mutable": false,
1699
+ "complexType": {
1700
+ "original": "string",
1701
+ "resolved": "string",
1702
+ "references": {}
1703
+ },
1704
+ "required": false,
1705
+ "optional": false,
1706
+ "docs": {
1707
+ "tags": [],
1708
+ "text": "See description in public component."
1709
+ },
1710
+ "attribute": "icon-drag-and-drop-warning-default",
1711
+ "reflect": false,
1712
+ "defaultValue": "\"data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iMjQiIGhlaWdodD0iMjQiIHZpZXdCb3g9IjAgMCAyNCAyNCIgZmlsbD0ibm9uZSIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIj4KPHBhdGggZmlsbC1ydWxlPSJldmVub2RkIiBjbGlwLXJ1bGU9ImV2ZW5vZGQiIGQ9Ik0xMiA4QzEyLjU1MjMgOCAxMyA4LjQ0NzcyIDEzIDlWMTFDMTMgMTEuNTUyMyAxMi41NTIzIDEyIDEyIDEyQzExLjQ0NzcgMTIgMTEgMTEuNTUyMyAxMSAxMVY5QzExIDguNDQ3NzIgMTEuNDQ3NyA4IDEyIDhaTTEyIDE0QzEyLjU1MjMgMTQgMTMgMTQuNDQ3NyAxMyAxNVYxNS4wMUMxMyAxNS41NjIzIDEyLjU1MjMgMTYuMDEgMTIgMTYuMDFDMTEuNDQ3NyAxNi4wMSAxMSAxNS41NjIzIDExIDE1LjAxVjE1QzExIDE0LjQ0NzcgMTEuNDQ3NyAxNCAxMiAxNFoiIGZpbGw9IiNFMTFENDgiLz4KPHBhdGggZmlsbC1ydWxlPSJldmVub2RkIiBjbGlwLXJ1bGU9ImV2ZW5vZGQiIGQ9Ik0xMC40NzY0IDIuMzgzOTdDMTAuOTM4MSAyLjExMTgxIDExLjQ2NDIgMS45NjgyNiAxMi4wMDAxIDEuOTY4MjZDMTIuNTM1OSAxLjk2ODI2IDEzLjA2MjEgMi4xMTE4MSAxMy41MjM3IDIuMzgzOTdDMTMuOTgzMSAyLjY1NDg1IDE0LjM2MiAzLjA0MzMgMTQuNjIxNCAzLjUwOTI1TDIxLjYxODMgMTUuNzUzOUMyMS42NDA0IDE1Ljc5MjUgMjEuNjU5OCAxNS44MzI1IDIxLjY3NjUgMTUuODczN0MyMS44NTY2IDE2LjMxNzEgMjEuOTI4IDE2Ljc5NzEgMjEuODg0OCAxNy4yNzM3QzIxLjg0MTYgMTcuNzUwMiAyMS42ODUgMTguMjA5NiAyMS40MjgxIDE4LjYxMzNDMjEuMTcxMSAxOS4wMTcgMjAuODIxNCAxOS4zNTM0IDIwLjQwOCAxOS41OTQ0QzE5Ljk5NDUgMTkuODM1NCAxOS41Mjk0IDE5Ljk3NDEgMTkuMDUxNSAxOS45OTg3QzE5LjAzNDQgMTkuOTk5NiAxOS4wMTcyIDIwIDE5LjAwMDEgMjBINS4wNzAwNUM1LjA1ODU3IDIwIDUuMDQ3MTQgMTkuOTk5OCA1LjAzNTc1IDE5Ljk5OTRDNS4wMDY5NiAyMC4wMDA0IDQuOTc3ODggMjAuMDAwMiA0Ljk0ODU3IDE5Ljk5ODdDNC40NzA2NiAxOS45NzQxIDQuMDA1NTggMTkuODM1NCAzLjU5MjE2IDE5LjU5NDRDMy4xNzg3MyAxOS4zNTM0IDIuODI4OTYgMTkuMDE3IDIuNTcyMDQgMTguNjEzM0MyLjMxNTEzIDE4LjIwOTYgMi4xNTg1MiAxNy43NTAyIDIuMTE1MjkgMTcuMjczN0MyLjA3MjA3IDE2Ljc5NzEgMi4xNDM0OCAxNi4zMTcxIDIuMzIzNTcgMTUuODczN0MyLjM0MDMgMTUuODMyNSAyLjM1OTc1IDE1Ljc5MjUgMi4zODE4MSAxNS43NTM5TDkuMzc4NzQgMy41MDkyNUM5LjYzODA4IDMuMDQzMyAxMC4wMTcgMi42NTQ4NSAxMC40NzY0IDIuMzgzOTdaTTUuMDM3NjcgMTguMDAwNUM1LjA0ODQyIDE4LjAwMDIgNS4wNTkyMiAxOCA1LjA3MDA1IDE4SDE4Ljk2OTlDMTkuMTIxNyAxNy45ODg5IDE5LjI2OTEgMTcuOTQzMyAxOS40MDA3IDE3Ljg2NjZDMTkuNTM4NSAxNy43ODYzIDE5LjY1NTEgMTcuNjc0MSAxOS43NDA3IDE3LjUzOTVDMTkuODI2NCAxNy40MDUgMTkuODc4NiAxNy4yNTE5IDE5Ljg5MyAxNy4wOTNDMTkuOTA1NyAxNi45NTI1IDE5Ljg4ODYgMTYuODExMiAxOS44NDMgMTYuNjc4MkwxMi44NzUgNC40ODQxOEMxMi43ODg1IDQuMzI3ODggMTIuNjYxOCA0LjE5NzU1IDEyLjUwNzkgNC4xMDY4M0MxMi4zNTQxIDQuMDE2MTEgMTIuMTc4NyAzLjk2ODI2IDEyLjAwMDEgMy45NjgyNkMxMS44MjE0IDMuOTY4MjYgMTEuNjQ2MSA0LjAxNjExIDExLjQ5MjIgNC4xMDY4M0MxMS4zMzgzIDQuMTk3NTUgMTEuMjExNSA0LjMyNzg0IDExLjEyNTEgNC40ODQxNEwxMS4xMTg0IDQuNDk2Mkw0LjE1NzE0IDE2LjY3ODJDNC4xMTE1MSAxNi44MTEyIDQuMDk0MzggMTYuOTUyNSA0LjEwNzEyIDE3LjA5M0M0LjEyMTUyIDE3LjI1MTkgNC4xNzM3MyAxNy40MDUgNC4yNTkzNyAxNy41Mzk1QzQuMzQ1MDEgMTcuNjc0MSA0LjQ2MTYgMTcuNzg2MyA0LjU5OTQgMTcuODY2NkM0LjczMzIxIDE3Ljk0NDYgNC44ODMyNCAxNy45OTA0IDUuMDM3NjcgMTguMDAwNVoiIGZpbGw9IiNFMTFENDgiLz4KPC9zdmc+Cg==\""
1713
+ },
1714
+ "iconGalleryActive": {
1715
+ "type": "string",
1716
+ "mutable": false,
1717
+ "complexType": {
1718
+ "original": "string",
1719
+ "resolved": "string",
1720
+ "references": {}
1721
+ },
1722
+ "required": false,
1723
+ "optional": false,
1724
+ "docs": {
1725
+ "tags": [],
1726
+ "text": "See description in public component."
1727
+ },
1728
+ "attribute": "icon-gallery-active",
1729
+ "reflect": false,
1730
+ "defaultValue": "'data:image/svg+xml;utf8,<svg width=\"20\" height=\"20\" viewBox=\"0 0 20 20\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\"><path fill-rule=\"evenodd\" clip-rule=\"evenodd\" d=\"M11.6667 6.66667C11.6667 6.20643 12.0398 5.83334 12.5 5.83334H12.5084C12.9686 5.83334 13.3417 6.20643 13.3417 6.66667C13.3417 7.12691 12.9686 7.5 12.5084 7.5H12.5C12.0398 7.5 11.6667 7.12691 11.6667 6.66667Z\" fill=\"%2348B2E8\"/><path fill-rule=\"evenodd\" clip-rule=\"evenodd\" d=\"M5.83333 4.16667C4.91286 4.16667 4.16667 4.91286 4.16667 5.83333V14.1667C4.16667 15.0871 4.91286 15.8333 5.83333 15.8333H14.1667C15.0871 15.8333 15.8333 15.0871 15.8333 14.1667V5.83333C15.8333 4.91286 15.0871 4.16667 14.1667 4.16667H5.83333ZM2.5 5.83333C2.5 3.99238 3.99238 2.5 5.83333 2.5H14.1667C16.0076 2.5 17.5 3.99238 17.5 5.83333V14.1667C17.5 16.0076 16.0076 17.5 14.1667 17.5H5.83333C3.99238 17.5 2.5 16.0076 2.5 14.1667V5.83333Z\" fill=\"%2348B2E8\"/><path fill-rule=\"evenodd\" clip-rule=\"evenodd\" d=\"M7.24972 9.76213L3.92259 13.0893C3.59715 13.4147 3.06951 13.4147 2.74408 13.0893C2.41864 12.7638 2.41864 12.2362 2.74408 11.9107L6.07741 8.57741L6.08885 8.56619C6.59083 8.08316 7.22016 7.77511 7.91667 7.77511C8.61317 7.77511 9.2425 8.08316 9.74448 8.56619L9.75592 8.57741L13.9226 12.7441C14.248 13.0695 14.248 13.5972 13.9226 13.9226C13.5972 14.248 13.0695 14.248 12.7441 13.9226L8.58361 9.76213C8.32758 9.51774 8.09662 9.44177 7.91667 9.44177C7.73672 9.44177 7.50575 9.51774 7.24972 9.76213Z\" fill=\"%2348B2E8\"/><path fill-rule=\"evenodd\" clip-rule=\"evenodd\" d=\"M13.083 11.4288L12.2559 12.2559C11.9305 12.5814 11.4028 12.5814 11.0774 12.2559C10.752 11.9305 10.752 11.4028 11.0774 11.0774L11.9107 10.2441L11.9222 10.2329C12.4241 9.74982 13.0535 9.44177 13.75 9.44177C14.4465 9.44177 15.0758 9.74982 15.5778 10.2329L15.5892 10.2441L17.2559 11.9107C17.5813 12.2362 17.5813 12.7638 17.2559 13.0893C16.9305 13.4147 16.4028 13.4147 16.0774 13.0893L14.4169 11.4288C14.1609 11.1844 13.9299 11.1084 13.75 11.1084C13.57 11.1084 13.3391 11.1844 13.083 11.4288Z\" fill=\"%2348B2E8\"/></svg>'"
1731
+ },
1732
+ "iconInvalidFormat": {
1733
+ "type": "string",
1734
+ "mutable": false,
1735
+ "complexType": {
1736
+ "original": "string",
1737
+ "resolved": "string",
1738
+ "references": {}
1739
+ },
1740
+ "required": false,
1741
+ "optional": false,
1742
+ "docs": {
1743
+ "tags": [],
1744
+ "text": "See description in public component."
1745
+ },
1746
+ "attribute": "icon-invalid-format",
1747
+ "reflect": false,
1748
+ "defaultValue": "'data:image/svg+xml;utf8,<svg width=\"24\" height=\"24\" viewBox=\"0 0 24 24\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\"><path fill-rule=\"evenodd\" clip-rule=\"evenodd\" d=\"M12 4C7.58172 4 4 7.58172 4 12C4 16.4183 7.58172 20 12 20C16.4183 20 20 16.4183 20 12C20 7.58172 16.4183 4 12 4ZM2 12C2 6.47715 6.47715 2 12 2C17.5228 2 22 6.47715 22 12C22 17.5228 17.5228 22 12 22C6.47715 22 2 17.5228 2 12Z\" fill=\"black\"/><path fill-rule=\"evenodd\" clip-rule=\"evenodd\" d=\"M9.29289 9.29289C9.68342 8.90237 10.3166 8.90237 10.7071 9.29289L12 10.5858L13.2929 9.29289C13.6834 8.90237 14.3166 8.90237 14.7071 9.29289C15.0976 9.68342 15.0976 10.3166 14.7071 10.7071L13.4142 12L14.7071 13.2929C15.0976 13.6834 15.0976 14.3166 14.7071 14.7071C14.3166 15.0976 13.6834 15.0976 13.2929 14.7071L12 13.4142L10.7071 14.7071C10.3166 15.0976 9.68342 15.0976 9.29289 14.7071C8.90237 14.3166 8.90237 13.6834 9.29289 13.2929L10.5858 12L9.29289 10.7071C8.90237 10.3166 8.90237 9.68342 9.29289 9.29289Z\" fill=\"black\"/></svg>'"
1749
+ },
1750
+ "iconSpinnerScreenLoading": {
1751
+ "type": "string",
1752
+ "mutable": false,
1753
+ "complexType": {
1754
+ "original": "string",
1755
+ "resolved": "string",
1756
+ "references": {}
1757
+ },
1758
+ "required": false,
1759
+ "optional": false,
1760
+ "docs": {
1761
+ "tags": [],
1762
+ "text": "See description in public component."
1763
+ },
1764
+ "attribute": "icon-spinner-screen-loading",
1765
+ "reflect": false
1766
+ },
1767
+ "iconSpinnerFromGalleryExperience": {
1768
+ "type": "string",
1769
+ "mutable": false,
1770
+ "complexType": {
1771
+ "original": "string",
1772
+ "resolved": "string",
1773
+ "references": {}
1774
+ },
1775
+ "required": false,
1776
+ "optional": false,
1777
+ "docs": {
1778
+ "tags": [],
1779
+ "text": "See description in public component."
1780
+ },
1781
+ "attribute": "icon-spinner-from-gallery-experience",
1782
+ "reflect": false
1783
+ },
1784
+ "iconGalleryScanningCompleted": {
1785
+ "type": "string",
1786
+ "mutable": false,
1787
+ "complexType": {
1788
+ "original": "string",
1789
+ "resolved": "string",
1790
+ "references": {}
1791
+ },
1792
+ "required": false,
1793
+ "optional": false,
1794
+ "docs": {
1795
+ "tags": [],
1796
+ "text": "See description in public component."
1797
+ },
1798
+ "attribute": "icon-gallery-scanning-completed",
1799
+ "reflect": false
1800
+ },
1801
+ "sdkService": {
1802
+ "type": "unknown",
1803
+ "mutable": false,
1804
+ "complexType": {
1805
+ "original": "SdkService",
1806
+ "resolved": "SdkService",
1807
+ "references": {
1808
+ "SdkService": {
1809
+ "location": "import",
1810
+ "path": "../../../utils/sdk.service"
1811
+ }
1812
+ }
1813
+ },
1814
+ "required": false,
1815
+ "optional": false,
1816
+ "docs": {
1817
+ "tags": [],
1818
+ "text": "Instance of SdkService passed from root component."
1819
+ }
1820
+ },
1821
+ "translationService": {
1822
+ "type": "unknown",
1823
+ "mutable": false,
1824
+ "complexType": {
1825
+ "original": "TranslationService",
1826
+ "resolved": "TranslationService",
1827
+ "references": {
1828
+ "TranslationService": {
1829
+ "location": "import",
1830
+ "path": "../../../utils/translation.service"
1831
+ }
1832
+ }
1833
+ },
1834
+ "required": false,
1835
+ "optional": false,
1836
+ "docs": {
1837
+ "tags": [],
1838
+ "text": "Instance of TranslationService passed from root component."
1839
+ }
1840
+ },
1841
+ "cameraId": {
1842
+ "type": "string",
1843
+ "mutable": false,
1844
+ "complexType": {
1845
+ "original": "string | null",
1846
+ "resolved": "string",
1847
+ "references": {}
1848
+ },
1849
+ "required": false,
1850
+ "optional": false,
1851
+ "docs": {
1852
+ "tags": [],
1853
+ "text": "Camera device ID passed from root component."
1854
+ },
1855
+ "attribute": "camera-id",
1856
+ "reflect": false,
1857
+ "defaultValue": "null"
1858
+ },
1859
+ "allowHelpScreens": {
1860
+ "type": "boolean",
1861
+ "mutable": false,
1862
+ "complexType": {
1863
+ "original": "boolean",
1864
+ "resolved": "boolean",
1865
+ "references": {}
1866
+ },
1867
+ "required": false,
1868
+ "optional": false,
1869
+ "docs": {
1870
+ "tags": [],
1871
+ "text": "Dictates if Help Screens usage is allowed (turned on)."
1872
+ },
1873
+ "attribute": "allow-help-screens",
1874
+ "reflect": false,
1875
+ "defaultValue": "false"
1876
+ },
1877
+ "allowHelpScreensFab": {
1878
+ "type": "boolean",
1879
+ "mutable": false,
1880
+ "complexType": {
1881
+ "original": "boolean",
1882
+ "resolved": "boolean",
1883
+ "references": {}
1884
+ },
1885
+ "required": false,
1886
+ "optional": false,
1887
+ "docs": {
1888
+ "tags": [],
1889
+ "text": "See description in public component."
1890
+ },
1891
+ "attribute": "allow-help-screens-fab",
1892
+ "reflect": false,
1893
+ "defaultValue": "false"
1894
+ },
1895
+ "allowHelpScreensOnboarding": {
1896
+ "type": "boolean",
1897
+ "mutable": false,
1898
+ "complexType": {
1899
+ "original": "boolean",
1900
+ "resolved": "boolean",
1901
+ "references": {}
1902
+ },
1903
+ "required": false,
1904
+ "optional": false,
1905
+ "docs": {
1906
+ "tags": [],
1907
+ "text": "See description in public component."
1908
+ },
1909
+ "attribute": "allow-help-screens-onboarding",
1910
+ "reflect": false,
1911
+ "defaultValue": "false"
1912
+ },
1913
+ "allowHelpScreensOnboardingPerpetuity": {
1914
+ "type": "boolean",
1915
+ "mutable": false,
1916
+ "complexType": {
1917
+ "original": "boolean",
1918
+ "resolved": "boolean",
1919
+ "references": {}
1920
+ },
1921
+ "required": false,
1922
+ "optional": false,
1923
+ "docs": {
1924
+ "tags": [],
1925
+ "text": "See description in public component."
1926
+ },
1927
+ "attribute": "allow-help-screens-onboarding-perpetuity",
1928
+ "reflect": false,
1929
+ "defaultValue": "false"
1930
+ },
1931
+ "helpScreensTooltipPauseTimeout": {
1932
+ "type": "number",
1933
+ "mutable": false,
1934
+ "complexType": {
1935
+ "original": "number",
1936
+ "resolved": "number",
1937
+ "references": {}
1938
+ },
1939
+ "required": false,
1940
+ "optional": false,
1941
+ "docs": {
1942
+ "tags": [],
1943
+ "text": "See description in public component."
1944
+ },
1945
+ "attribute": "help-screens-tooltip-pause-timeout",
1946
+ "reflect": false,
1947
+ "defaultValue": "15000"
1948
+ },
1949
+ "pingProxyUrl": {
1950
+ "type": "string",
1951
+ "mutable": false,
1952
+ "complexType": {
1953
+ "original": "string | null",
1954
+ "resolved": "string",
1955
+ "references": {}
1956
+ },
1957
+ "required": false,
1958
+ "optional": false,
1959
+ "docs": {
1960
+ "tags": [],
1961
+ "text": "See description in public component."
1962
+ },
1963
+ "attribute": "ping-proxy-url",
1964
+ "reflect": false,
1965
+ "defaultValue": "null"
1966
+ }
1967
+ };
1968
+ }
1969
+ static get states() {
1970
+ return {
1971
+ "galleryExperienceModalErrorWindowVisible": {},
1972
+ "clearIsCameraActive": {},
1973
+ "apiProcessStatusVisible": {},
1974
+ "apiProcessStatusState": {}
1975
+ };
1976
+ }
1977
+ static get events() {
1978
+ return [{
1979
+ "method": "block",
1980
+ "name": "block",
1981
+ "bubbles": true,
1982
+ "cancelable": true,
1983
+ "composed": true,
1984
+ "docs": {
1985
+ "tags": [],
1986
+ "text": "Event containing boolean which used to check whether component is blocked."
1987
+ },
1988
+ "complexType": {
1989
+ "original": "boolean",
1990
+ "resolved": "boolean",
1991
+ "references": {}
1992
+ }
1993
+ }, {
1994
+ "method": "fatalError",
1995
+ "name": "fatalError",
1996
+ "bubbles": true,
1997
+ "cancelable": true,
1998
+ "composed": true,
1999
+ "docs": {
2000
+ "tags": [],
2001
+ "text": "See event 'fatalError' in public component."
2002
+ },
2003
+ "complexType": {
2004
+ "original": "SDKError",
2005
+ "resolved": "SDKError",
2006
+ "references": {
2007
+ "SDKError": {
2008
+ "location": "import",
2009
+ "path": "../../../utils/data-structures"
2010
+ }
2011
+ }
2012
+ }
2013
+ }, {
2014
+ "method": "ready",
2015
+ "name": "ready",
2016
+ "bubbles": true,
2017
+ "cancelable": true,
2018
+ "composed": true,
2019
+ "docs": {
2020
+ "tags": [],
2021
+ "text": "See event 'ready' in public component."
2022
+ },
2023
+ "complexType": {
2024
+ "original": "EventReady",
2025
+ "resolved": "EventReady",
2026
+ "references": {
2027
+ "EventReady": {
2028
+ "location": "import",
2029
+ "path": "../../../utils/data-structures"
2030
+ }
2031
+ }
2032
+ }
2033
+ }, {
2034
+ "method": "scanError",
2035
+ "name": "scanError",
2036
+ "bubbles": true,
2037
+ "cancelable": true,
2038
+ "composed": true,
2039
+ "docs": {
2040
+ "tags": [],
2041
+ "text": "See event 'scanError' in public component."
2042
+ },
2043
+ "complexType": {
2044
+ "original": "EventScanError",
2045
+ "resolved": "EventScanError",
2046
+ "references": {
2047
+ "EventScanError": {
2048
+ "location": "import",
2049
+ "path": "../../../utils/data-structures"
2050
+ }
2051
+ }
2052
+ }
2053
+ }, {
2054
+ "method": "scanSuccess",
2055
+ "name": "scanSuccess",
2056
+ "bubbles": true,
2057
+ "cancelable": true,
2058
+ "composed": true,
2059
+ "docs": {
2060
+ "tags": [],
2061
+ "text": "See event 'scanSuccess' in public component."
2062
+ },
2063
+ "complexType": {
2064
+ "original": "EventScanSuccess",
2065
+ "resolved": "EventScanSuccess",
2066
+ "references": {
2067
+ "EventScanSuccess": {
2068
+ "location": "import",
2069
+ "path": "../../../utils/data-structures"
2070
+ }
2071
+ }
2072
+ }
2073
+ }, {
2074
+ "method": "feedback",
2075
+ "name": "feedback",
2076
+ "bubbles": true,
2077
+ "cancelable": true,
2078
+ "composed": true,
2079
+ "docs": {
2080
+ "tags": [],
2081
+ "text": "Event containing FeedbackMessage which can be passed to MbFeedback component."
2082
+ },
2083
+ "complexType": {
2084
+ "original": "FeedbackMessage",
2085
+ "resolved": "FeedbackMessage",
2086
+ "references": {
2087
+ "FeedbackMessage": {
2088
+ "location": "import",
2089
+ "path": "../../../utils/data-structures"
2090
+ }
2091
+ }
2092
+ }
2093
+ }, {
2094
+ "method": "cameraScanStarted",
2095
+ "name": "cameraScanStarted",
2096
+ "bubbles": true,
2097
+ "cancelable": true,
2098
+ "composed": true,
2099
+ "docs": {
2100
+ "tags": [],
2101
+ "text": "See event 'cameraScanStarted' in public component."
2102
+ },
2103
+ "complexType": {
2104
+ "original": "null",
2105
+ "resolved": "null",
2106
+ "references": {}
2107
+ }
2108
+ }, {
2109
+ "method": "imageScanStarted",
2110
+ "name": "imageScanStarted",
2111
+ "bubbles": true,
2112
+ "cancelable": true,
2113
+ "composed": true,
2114
+ "docs": {
2115
+ "tags": [],
2116
+ "text": "See event 'imageScanStarted' in public component."
2117
+ },
2118
+ "complexType": {
2119
+ "original": "null",
2120
+ "resolved": "null",
2121
+ "references": {}
2122
+ }
2123
+ }, {
2124
+ "method": "scanAborted",
2125
+ "name": "scanAborted",
2126
+ "bubbles": true,
2127
+ "cancelable": true,
2128
+ "composed": true,
2129
+ "docs": {
2130
+ "tags": [],
2131
+ "text": "See event 'scanAborted' in public component."
2132
+ },
2133
+ "complexType": {
2134
+ "original": "null",
2135
+ "resolved": "null",
2136
+ "references": {}
2137
+ }
2138
+ }, {
2139
+ "method": "setIsCameraActive",
2140
+ "name": "setIsCameraActive",
2141
+ "bubbles": true,
2142
+ "cancelable": true,
2143
+ "composed": true,
2144
+ "docs": {
2145
+ "tags": [],
2146
+ "text": "Emitted when camera stream becomes active."
2147
+ },
2148
+ "complexType": {
2149
+ "original": "boolean",
2150
+ "resolved": "boolean",
2151
+ "references": {}
2152
+ }
2153
+ }];
2154
+ }
2155
+ static get methods() {
2156
+ return {
2157
+ "startCameraScan": {
2158
+ "complexType": {
2159
+ "signature": "() => Promise<void>",
2160
+ "parameters": [],
2161
+ "references": {
2162
+ "Promise": {
2163
+ "location": "global"
2164
+ }
2165
+ },
2166
+ "return": "Promise<void>"
2167
+ },
2168
+ "docs": {
2169
+ "text": "Starts camera scan using camera overlay with usage instructions.",
2170
+ "tags": []
2171
+ }
2172
+ },
2173
+ "startImageScan": {
2174
+ "complexType": {
2175
+ "signature": "(file: File) => Promise<void>",
2176
+ "parameters": [{
2177
+ "tags": [{
2178
+ "name": "param",
2179
+ "text": "file File to scan"
2180
+ }],
2181
+ "text": "File to scan"
2182
+ }],
2183
+ "references": {
2184
+ "Promise": {
2185
+ "location": "global"
2186
+ },
2187
+ "File": {
2188
+ "location": "global"
2189
+ }
2190
+ },
2191
+ "return": "Promise<void>"
2192
+ },
2193
+ "docs": {
2194
+ "text": "Starts image scan, emits results from provided file.",
2195
+ "tags": [{
2196
+ "name": "param",
2197
+ "text": "file File to scan"
2198
+ }]
2199
+ }
2200
+ },
2201
+ "startMultiSideImageScan": {
2202
+ "complexType": {
2203
+ "signature": "(firstFile: File, secondFile: File) => Promise<void>",
2204
+ "parameters": [{
2205
+ "tags": [{
2206
+ "name": "param",
2207
+ "text": "firstFile File to scan as first image"
2208
+ }],
2209
+ "text": "File to scan as first image"
2210
+ }, {
2211
+ "tags": [{
2212
+ "name": "param",
2213
+ "text": "secondFile File to scan as second image"
2214
+ }],
2215
+ "text": "File to scan as second image"
2216
+ }],
2217
+ "references": {
2218
+ "Promise": {
2219
+ "location": "global"
2220
+ },
2221
+ "File": {
2222
+ "location": "global"
2223
+ }
2224
+ },
2225
+ "return": "Promise<void>"
2226
+ },
2227
+ "docs": {
2228
+ "text": "Starts multi-side image scan, emits results from provided files.",
2229
+ "tags": [{
2230
+ "name": "param",
2231
+ "text": "firstFile File to scan as first image"
2232
+ }, {
2233
+ "name": "param",
2234
+ "text": "secondFile File to scan as second image"
2235
+ }]
2236
+ }
2237
+ },
2238
+ "setUiState": {
2239
+ "complexType": {
2240
+ "signature": "(state: \"ERROR\" | \"LOADING\" | \"NONE\" | \"SUCCESS\") => Promise<void>",
2241
+ "parameters": [{
2242
+ "tags": [],
2243
+ "text": ""
2244
+ }],
2245
+ "references": {
2246
+ "Promise": {
2247
+ "location": "global"
2248
+ }
2249
+ },
2250
+ "return": "Promise<void>"
2251
+ },
2252
+ "docs": {
2253
+ "text": "Method is exposed outside which allow us to control UI state from parent component.\n\nIn case of state `ERROR` and if `showModalWindows` is set to `true`, modal window\nwith error message will be displayed.",
2254
+ "tags": []
2255
+ }
2256
+ }
2257
+ };
2258
+ }
2259
+ static get elementRef() { return "hostEl"; }
2260
+ static get listeners() {
2261
+ return [{
2262
+ "name": "keyup",
2263
+ "method": "handleKeyUp",
2264
+ "target": "window",
2265
+ "capture": false,
2266
+ "passive": false
2267
+ }];
2268
+ }
2269
+ }