UNPKG

react-native-scanbot-sdk

Version:

Scanbot Document and Barcode Scanner SDK React Native Plugin for Android and iOS

507 lines (502 loc) 21.4 kB
"use strict"; Object.defineProperty(exports, "__esModule", { value: true }); var _exportNames = { startBarcodeScanner: true, startDocumentScanner: true, startCroppingScreen: true }; exports.startBarcodeScanner = startBarcodeScanner; exports.startCroppingScreen = startCroppingScreen; exports.startDocumentScanner = startDocumentScanner; var _reactNative = require("react-native"); var _SingleScanningModeUseCase = require("./barcode/SingleScanningModeUseCase"); Object.keys(_SingleScanningModeUseCase).forEach(function (key) { if (key === "default" || key === "__esModule") return; if (Object.prototype.hasOwnProperty.call(_exportNames, key)) return; if (key in exports && exports[key] === _SingleScanningModeUseCase[key]) return; Object.defineProperty(exports, key, { enumerable: true, get: function () { return _SingleScanningModeUseCase[key]; } }); }); var _MultipleScanningModeUseCase = require("./barcode/MultipleScanningModeUseCase"); Object.keys(_MultipleScanningModeUseCase).forEach(function (key) { if (key === "default" || key === "__esModule") return; if (Object.prototype.hasOwnProperty.call(_exportNames, key)) return; if (key in exports && exports[key] === _MultipleScanningModeUseCase[key]) return; Object.defineProperty(exports, key, { enumerable: true, get: function () { return _MultipleScanningModeUseCase[key]; } }); }); var _ArTrackingOverlayConfiguration = require("./barcode/ArTrackingOverlayConfiguration"); Object.keys(_ArTrackingOverlayConfiguration).forEach(function (key) { if (key === "default" || key === "__esModule") return; if (Object.prototype.hasOwnProperty.call(_exportNames, key)) return; if (key in exports && exports[key] === _ArTrackingOverlayConfiguration[key]) return; Object.defineProperty(exports, key, { enumerable: true, get: function () { return _ArTrackingOverlayConfiguration[key]; } }); }); var _BarcodeInfoMapping = require("./barcode/BarcodeInfoMapping"); Object.keys(_BarcodeInfoMapping).forEach(function (key) { if (key === "default" || key === "__esModule") return; if (Object.prototype.hasOwnProperty.call(_exportNames, key)) return; if (key in exports && exports[key] === _BarcodeInfoMapping[key]) return; Object.defineProperty(exports, key, { enumerable: true, get: function () { return _BarcodeInfoMapping[key]; } }); }); var _BarcodeItem = require("./barcode/BarcodeItem"); Object.keys(_BarcodeItem).forEach(function (key) { if (key === "default" || key === "__esModule") return; if (Object.prototype.hasOwnProperty.call(_exportNames, key)) return; if (key in exports && exports[key] === _BarcodeItem[key]) return; Object.defineProperty(exports, key, { enumerable: true, get: function () { return _BarcodeItem[key]; } }); }); var _BarcodeRecognizerConfiguration = require("./barcode/BarcodeRecognizerConfiguration"); Object.keys(_BarcodeRecognizerConfiguration).forEach(function (key) { if (key === "default" || key === "__esModule") return; if (Object.prototype.hasOwnProperty.call(_exportNames, key)) return; if (key in exports && exports[key] === _BarcodeRecognizerConfiguration[key]) return; Object.defineProperty(exports, key, { enumerable: true, get: function () { return _BarcodeRecognizerConfiguration[key]; } }); }); var _BarcodeResult = require("./barcode/BarcodeResult"); Object.keys(_BarcodeResult).forEach(function (key) { if (key === "default" || key === "__esModule") return; if (Object.prototype.hasOwnProperty.call(_exportNames, key)) return; if (key in exports && exports[key] === _BarcodeResult[key]) return; Object.defineProperty(exports, key, { enumerable: true, get: function () { return _BarcodeResult[key]; } }); }); var _BarcodeScannerConfiguration = require("./barcode/BarcodeScannerConfiguration"); Object.keys(_BarcodeScannerConfiguration).forEach(function (key) { if (key === "default" || key === "__esModule") return; if (Object.prototype.hasOwnProperty.call(_exportNames, key)) return; if (key in exports && exports[key] === _BarcodeScannerConfiguration[key]) return; Object.defineProperty(exports, key, { enumerable: true, get: function () { return _BarcodeScannerConfiguration[key]; } }); }); var _BarcodeTextLocalization = require("./barcode/BarcodeTextLocalization"); Object.keys(_BarcodeTextLocalization).forEach(function (key) { if (key === "default" || key === "__esModule") return; if (Object.prototype.hasOwnProperty.call(_exportNames, key)) return; if (key in exports && exports[key] === _BarcodeTextLocalization[key]) return; Object.defineProperty(exports, key, { enumerable: true, get: function () { return _BarcodeTextLocalization[key]; } }); }); var _BarcodeUseCase = require("./barcode/BarcodeUseCase"); Object.keys(_BarcodeUseCase).forEach(function (key) { if (key === "default" || key === "__esModule") return; if (Object.prototype.hasOwnProperty.call(_exportNames, key)) return; if (key in exports && exports[key] === _BarcodeUseCase[key]) return; Object.defineProperty(exports, key, { enumerable: true, get: function () { return _BarcodeUseCase[key]; } }); }); var _FindAndPickScanningModeUseCase = require("./barcode/FindAndPickScanningModeUseCase"); Object.keys(_FindAndPickScanningModeUseCase).forEach(function (key) { if (key === "default" || key === "__esModule") return; if (Object.prototype.hasOwnProperty.call(_exportNames, key)) return; if (key in exports && exports[key] === _FindAndPickScanningModeUseCase[key]) return; Object.defineProperty(exports, key, { enumerable: true, get: function () { return _FindAndPickScanningModeUseCase[key]; } }); }); var _ActionBarConfiguration = require("./common/ActionBarConfiguration"); Object.keys(_ActionBarConfiguration).forEach(function (key) { if (key === "default" || key === "__esModule") return; if (Object.prototype.hasOwnProperty.call(_exportNames, key)) return; if (key in exports && exports[key] === _ActionBarConfiguration[key]) return; Object.defineProperty(exports, key, { enumerable: true, get: function () { return _ActionBarConfiguration[key]; } }); }); var _CameraConfiguration = require("./common/CameraConfiguration"); Object.keys(_CameraConfiguration).forEach(function (key) { if (key === "default" || key === "__esModule") return; if (Object.prototype.hasOwnProperty.call(_exportNames, key)) return; if (key in exports && exports[key] === _CameraConfiguration[key]) return; Object.defineProperty(exports, key, { enumerable: true, get: function () { return _CameraConfiguration[key]; } }); }); var _CameraPermission = require("./common/CameraPermission"); Object.keys(_CameraPermission).forEach(function (key) { if (key === "default" || key === "__esModule") return; if (Object.prototype.hasOwnProperty.call(_exportNames, key)) return; if (key in exports && exports[key] === _CameraPermission[key]) return; Object.defineProperty(exports, key, { enumerable: true, get: function () { return _CameraPermission[key]; } }); }); var _Common = require("./common/Common"); Object.keys(_Common).forEach(function (key) { if (key === "default" || key === "__esModule") return; if (Object.prototype.hasOwnProperty.call(_exportNames, key)) return; if (key in exports && exports[key] === _Common[key]) return; Object.defineProperty(exports, key, { enumerable: true, get: function () { return _Common[key]; } }); }); var _NavigationBarConfiguration = require("./common/NavigationBarConfiguration"); Object.keys(_NavigationBarConfiguration).forEach(function (key) { if (key === "default" || key === "__esModule") return; if (Object.prototype.hasOwnProperty.call(_exportNames, key)) return; if (key in exports && exports[key] === _NavigationBarConfiguration[key]) return; Object.defineProperty(exports, key, { enumerable: true, get: function () { return _NavigationBarConfiguration[key]; } }); }); var _ScanbotAlertDialog = require("./common/ScanbotAlertDialog"); Object.keys(_ScanbotAlertDialog).forEach(function (key) { if (key === "default" || key === "__esModule") return; if (Object.prototype.hasOwnProperty.call(_exportNames, key)) return; if (key in exports && exports[key] === _ScanbotAlertDialog[key]) return; Object.defineProperty(exports, key, { enumerable: true, get: function () { return _ScanbotAlertDialog[key]; } }); }); var _TopBarConfiguration = require("./common/TopBarConfiguration"); Object.keys(_TopBarConfiguration).forEach(function (key) { if (key === "default" || key === "__esModule") return; if (Object.prototype.hasOwnProperty.call(_exportNames, key)) return; if (key in exports && exports[key] === _TopBarConfiguration[key]) return; Object.defineProperty(exports, key, { enumerable: true, get: function () { return _TopBarConfiguration[key]; } }); }); var _UserGuidanceConfiguration = require("./common/UserGuidanceConfiguration"); Object.keys(_UserGuidanceConfiguration).forEach(function (key) { if (key === "default" || key === "__esModule") return; if (Object.prototype.hasOwnProperty.call(_exportNames, key)) return; if (key in exports && exports[key] === _UserGuidanceConfiguration[key]) return; Object.defineProperty(exports, key, { enumerable: true, get: function () { return _UserGuidanceConfiguration[key]; } }); }); var _ViewFinderConfiguration = require("./common/ViewFinderConfiguration"); Object.keys(_ViewFinderConfiguration).forEach(function (key) { if (key === "default" || key === "__esModule") return; if (Object.prototype.hasOwnProperty.call(_exportNames, key)) return; if (key in exports && exports[key] === _ViewFinderConfiguration[key]) return; Object.defineProperty(exports, key, { enumerable: true, get: function () { return _ViewFinderConfiguration[key]; } }); }); var _AcknowledgementScreenConfiguration = require("./document/AcknowledgementScreenConfiguration"); Object.keys(_AcknowledgementScreenConfiguration).forEach(function (key) { if (key === "default" || key === "__esModule") return; if (Object.prototype.hasOwnProperty.call(_exportNames, key)) return; if (key in exports && exports[key] === _AcknowledgementScreenConfiguration[key]) return; Object.defineProperty(exports, key, { enumerable: true, get: function () { return _AcknowledgementScreenConfiguration[key]; } }); }); var _CameraScreenConfiguration = require("./document/CameraScreenConfiguration"); Object.keys(_CameraScreenConfiguration).forEach(function (key) { if (key === "default" || key === "__esModule") return; if (Object.prototype.hasOwnProperty.call(_exportNames, key)) return; if (key in exports && exports[key] === _CameraScreenConfiguration[key]) return; Object.defineProperty(exports, key, { enumerable: true, get: function () { return _CameraScreenConfiguration[key]; } }); }); var _CroppingConfiguration = require("./document/CroppingConfiguration"); Object.keys(_CroppingConfiguration).forEach(function (key) { if (key === "default" || key === "__esModule") return; if (Object.prototype.hasOwnProperty.call(_exportNames, key)) return; if (key in exports && exports[key] === _CroppingConfiguration[key]) return; Object.defineProperty(exports, key, { enumerable: true, get: function () { return _CroppingConfiguration[key]; } }); }); var _CroppingScreenConfiguration = require("./document/CroppingScreenConfiguration"); Object.keys(_CroppingScreenConfiguration).forEach(function (key) { if (key === "default" || key === "__esModule") return; if (Object.prototype.hasOwnProperty.call(_exportNames, key)) return; if (key in exports && exports[key] === _CroppingScreenConfiguration[key]) return; Object.defineProperty(exports, key, { enumerable: true, get: function () { return _CroppingScreenConfiguration[key]; } }); }); var _CroppingTextLocalization = require("./document/CroppingTextLocalization"); Object.keys(_CroppingTextLocalization).forEach(function (key) { if (key === "default" || key === "__esModule") return; if (Object.prototype.hasOwnProperty.call(_exportNames, key)) return; if (key in exports && exports[key] === _CroppingTextLocalization[key]) return; Object.defineProperty(exports, key, { enumerable: true, get: function () { return _CroppingTextLocalization[key]; } }); }); var _DocumentScannerCameraConfiguration = require("./document/DocumentScannerCameraConfiguration"); Object.keys(_DocumentScannerCameraConfiguration).forEach(function (key) { if (key === "default" || key === "__esModule") return; if (Object.prototype.hasOwnProperty.call(_exportNames, key)) return; if (key in exports && exports[key] === _DocumentScannerCameraConfiguration[key]) return; Object.defineProperty(exports, key, { enumerable: true, get: function () { return _DocumentScannerCameraConfiguration[key]; } }); }); var _DocumentScannerGuidanceVisibility = require("./document/DocumentScannerGuidanceVisibility"); Object.keys(_DocumentScannerGuidanceVisibility).forEach(function (key) { if (key === "default" || key === "__esModule") return; if (Object.prototype.hasOwnProperty.call(_exportNames, key)) return; if (key in exports && exports[key] === _DocumentScannerGuidanceVisibility[key]) return; Object.defineProperty(exports, key, { enumerable: true, get: function () { return _DocumentScannerGuidanceVisibility[key]; } }); }); var _DocumentScannerOutputSettings = require("./document/DocumentScannerOutputSettings"); Object.keys(_DocumentScannerOutputSettings).forEach(function (key) { if (key === "default" || key === "__esModule") return; if (Object.prototype.hasOwnProperty.call(_exportNames, key)) return; if (key in exports && exports[key] === _DocumentScannerOutputSettings[key]) return; Object.defineProperty(exports, key, { enumerable: true, get: function () { return _DocumentScannerOutputSettings[key]; } }); }); var _DocumentScannerScreens = require("./document/DocumentScannerScreens"); Object.keys(_DocumentScannerScreens).forEach(function (key) { if (key === "default" || key === "__esModule") return; if (Object.prototype.hasOwnProperty.call(_exportNames, key)) return; if (key in exports && exports[key] === _DocumentScannerScreens[key]) return; Object.defineProperty(exports, key, { enumerable: true, get: function () { return _DocumentScannerScreens[key]; } }); }); var _DocumentScannerTextLocalization = require("./document/DocumentScannerTextLocalization"); Object.keys(_DocumentScannerTextLocalization).forEach(function (key) { if (key === "default" || key === "__esModule") return; if (Object.prototype.hasOwnProperty.call(_exportNames, key)) return; if (key in exports && exports[key] === _DocumentScannerTextLocalization[key]) return; Object.defineProperty(exports, key, { enumerable: true, get: function () { return _DocumentScannerTextLocalization[key]; } }); }); var _DocumentScannerUserGuidance = require("./document/DocumentScannerUserGuidance"); Object.keys(_DocumentScannerUserGuidance).forEach(function (key) { if (key === "default" || key === "__esModule") return; if (Object.prototype.hasOwnProperty.call(_exportNames, key)) return; if (key in exports && exports[key] === _DocumentScannerUserGuidance[key]) return; Object.defineProperty(exports, key, { enumerable: true, get: function () { return _DocumentScannerUserGuidance[key]; } }); }); var _DocumentScanningFlow = require("./document/DocumentScanningFlow"); Object.keys(_DocumentScanningFlow).forEach(function (key) { if (key === "default" || key === "__esModule") return; if (Object.prototype.hasOwnProperty.call(_exportNames, key)) return; if (key in exports && exports[key] === _DocumentScanningFlow[key]) return; Object.defineProperty(exports, key, { enumerable: true, get: function () { return _DocumentScanningFlow[key]; } }); }); var _IntroductionScreenConfiguration = require("./document/IntroductionScreenConfiguration"); Object.keys(_IntroductionScreenConfiguration).forEach(function (key) { if (key === "default" || key === "__esModule") return; if (Object.prototype.hasOwnProperty.call(_exportNames, key)) return; if (key in exports && exports[key] === _IntroductionScreenConfiguration[key]) return; Object.defineProperty(exports, key, { enumerable: true, get: function () { return _IntroductionScreenConfiguration[key]; } }); }); var _ReorderPagesScreenConfiguration = require("./document/ReorderPagesScreenConfiguration"); Object.keys(_ReorderPagesScreenConfiguration).forEach(function (key) { if (key === "default" || key === "__esModule") return; if (Object.prototype.hasOwnProperty.call(_exportNames, key)) return; if (key in exports && exports[key] === _ReorderPagesScreenConfiguration[key]) return; Object.defineProperty(exports, key, { enumerable: true, get: function () { return _ReorderPagesScreenConfiguration[key]; } }); }); var _ReviewScreenConfiguration = require("./document/ReviewScreenConfiguration"); Object.keys(_ReviewScreenConfiguration).forEach(function (key) { if (key === "default" || key === "__esModule") return; if (Object.prototype.hasOwnProperty.call(_exportNames, key)) return; if (key in exports && exports[key] === _ReviewScreenConfiguration[key]) return; Object.defineProperty(exports, key, { enumerable: true, get: function () { return _ReviewScreenConfiguration[key]; } }); }); var _BarcodeItemMapper = require("./BarcodeItemMapper"); Object.keys(_BarcodeItemMapper).forEach(function (key) { if (key === "default" || key === "__esModule") return; if (Object.prototype.hasOwnProperty.call(_exportNames, key)) return; if (key in exports && exports[key] === _BarcodeItemMapper[key]) return; Object.defineProperty(exports, key, { enumerable: true, get: function () { return _BarcodeItemMapper[key]; } }); }); const LINKING_ERROR = `The package 'react-native-scanbot-sdk' doesn't seem to be linked. Make sure: \n\n` + _reactNative.Platform.select({ ios: "- You have run 'pod install'\n", default: '' }) + '- You rebuilt the app after installing the package\n' + '- You are not using Expo Go\n'; const ScanbotSDKUIImpl = _reactNative.NativeModules.RNScanbotRTUUI ? _reactNative.NativeModules.RNScanbotRTUUI : new Proxy({}, { get() { throw new Error(LINKING_ERROR); } }); const isIOS = _reactNative.Platform.OS === 'ios'; /** * Opens the Ready-To-Use UI screen for scanning Barcodes and QR-Codes with the desired configuration. */ function startBarcodeScanner(config) { const barcodeItemMapperEventName = 'barcodeItemMapperEvent'; let barcodeItemMapperCallback = null; let barcodeItemMapperEventEmitter = null; if (config.useCase instanceof _SingleScanningModeUseCase.SingleScanningMode || config.useCase instanceof _MultipleScanningModeUseCase.MultipleScanningMode) { barcodeItemMapperCallback = config.useCase.barcodeInfoMapping.barcodeItemMapper; if (barcodeItemMapperCallback) { barcodeItemMapperEventEmitter = new _reactNative.NativeEventEmitter(ScanbotSDKUIImpl); barcodeItemMapperEventEmitter.removeAllListeners(barcodeItemMapperEventName); barcodeItemMapperEventEmitter.addListener(barcodeItemMapperEventName, barcodeItem => { const barcodeItemUuid = `${barcodeItem.textWithExtension}_${barcodeItem.type ?? ''}`; barcodeItemMapperCallback(barcodeItem, barcodeMappedData => ScanbotSDKUIImpl.onBarcodeItemMapper(barcodeItemUuid, barcodeMappedData), () => ScanbotSDKUIImpl.onBarcodeItemMapper(barcodeItemUuid, null)); }); // On iOS, the communication with the native part is throwing an error (startBarcodeScannerV2) because of the barcodeItemMapper // callback in the configuration class (not parsable), that's why we need to remove it before executing startBarcodeScannerV2 method config.useCase.barcodeInfoMapping.barcodeItemMapper = null; return new Promise((resolve, reject) => { ScanbotSDKUIImpl.startBarcodeScannerV2(isIOS ? JSON.stringify(config) : config, true).then(result => { barcodeItemMapperEventEmitter?.removeAllListeners(barcodeItemMapperEventName); barcodeItemMapperEventEmitter = null; resolve(result); }).catch(error => { barcodeItemMapperEventEmitter?.removeAllListeners(barcodeItemMapperEventName); barcodeItemMapperEventEmitter = null; reject(error); }); }); } } return ScanbotSDKUIImpl.startBarcodeScannerV2(isIOS ? JSON.stringify(config) : config, false); } /** * Opens the Ready-To-Use UI Document Scanner screen with the desired configuration. */ function startDocumentScanner(config) { return ScanbotSDKUIImpl.startDocumentScannerV2(isIOS ? JSON.stringify(config) : config); } /** * Opens the Ready-To-Use UI Cropping screen with the desired configuration. */ function startCroppingScreen(config) { return ScanbotSDKUIImpl.startCroppingScreenV2(isIOS ? JSON.stringify(config) : config); } //# sourceMappingURL=index.js.map