@sumsub/cordova-idensic-mobile-sdk-plugin 1.18.1
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.
- package/CHANGELOG.md +3 -0
- package/README.md +8 -0
- package/demo/Gemfile +4 -0
- package/demo/Gemfile.lock +262 -0
- package/demo/README.md +61 -0
- package/demo/config.xml +46 -0
- package/demo/fastlane/Appfile +8 -0
- package/demo/fastlane/Fastfile +142 -0
- package/demo/fastlane/README.md +34 -0
- package/demo/fastlane/helpers +109 -0
- package/demo/hooks/README.md +23 -0
- package/demo/package-lock.json +3624 -0
- package/demo/package.json +57 -0
- package/demo/platforms/android/CordovaLib/AndroidManifest.xml +22 -0
- package/demo/platforms/android/CordovaLib/build.gradle +148 -0
- package/demo/platforms/android/CordovaLib/cordova.gradle +205 -0
- package/demo/platforms/android/CordovaLib/project.properties +11 -0
- package/demo/platforms/android/CordovaLib/src/org/apache/cordova/AuthenticationToken.java +69 -0
- package/demo/platforms/android/CordovaLib/src/org/apache/cordova/BuildHelper.java +70 -0
- package/demo/platforms/android/CordovaLib/src/org/apache/cordova/CallbackContext.java +142 -0
- package/demo/platforms/android/CordovaLib/src/org/apache/cordova/CallbackMap.java +65 -0
- package/demo/platforms/android/CordovaLib/src/org/apache/cordova/Config.java +71 -0
- package/demo/platforms/android/CordovaLib/src/org/apache/cordova/ConfigXmlParser.java +145 -0
- package/demo/platforms/android/CordovaLib/src/org/apache/cordova/CordovaActivity.java +521 -0
- package/demo/platforms/android/CordovaLib/src/org/apache/cordova/CordovaArgs.java +113 -0
- package/demo/platforms/android/CordovaLib/src/org/apache/cordova/CordovaBridge.java +187 -0
- package/demo/platforms/android/CordovaLib/src/org/apache/cordova/CordovaClientCertRequest.java +105 -0
- package/demo/platforms/android/CordovaLib/src/org/apache/cordova/CordovaDialogsHelper.java +152 -0
- package/demo/platforms/android/CordovaLib/src/org/apache/cordova/CordovaHttpAuthHandler.java +51 -0
- package/demo/platforms/android/CordovaLib/src/org/apache/cordova/CordovaInterface.java +97 -0
- package/demo/platforms/android/CordovaLib/src/org/apache/cordova/CordovaInterfaceImpl.java +249 -0
- package/demo/platforms/android/CordovaLib/src/org/apache/cordova/CordovaPlugin.java +422 -0
- package/demo/platforms/android/CordovaLib/src/org/apache/cordova/CordovaPreferences.java +101 -0
- package/demo/platforms/android/CordovaLib/src/org/apache/cordova/CordovaResourceApi.java +472 -0
- package/demo/platforms/android/CordovaLib/src/org/apache/cordova/CordovaWebView.java +142 -0
- package/demo/platforms/android/CordovaLib/src/org/apache/cordova/CordovaWebViewEngine.java +85 -0
- package/demo/platforms/android/CordovaLib/src/org/apache/cordova/CordovaWebViewImpl.java +617 -0
- package/demo/platforms/android/CordovaLib/src/org/apache/cordova/CoreAndroid.java +407 -0
- package/demo/platforms/android/CordovaLib/src/org/apache/cordova/ExposedJsApi.java +31 -0
- package/demo/platforms/android/CordovaLib/src/org/apache/cordova/ICordovaClientCertRequest.java +66 -0
- package/demo/platforms/android/CordovaLib/src/org/apache/cordova/ICordovaCookieManager.java +33 -0
- package/demo/platforms/android/CordovaLib/src/org/apache/cordova/ICordovaHttpAuthHandler.java +38 -0
- package/demo/platforms/android/CordovaLib/src/org/apache/cordova/LOG.java +244 -0
- package/demo/platforms/android/CordovaLib/src/org/apache/cordova/NativeToJsMessageQueue.java +542 -0
- package/demo/platforms/android/CordovaLib/src/org/apache/cordova/PermissionHelper.java +87 -0
- package/demo/platforms/android/CordovaLib/src/org/apache/cordova/PluginEntry.java +70 -0
- package/demo/platforms/android/CordovaLib/src/org/apache/cordova/PluginManager.java +526 -0
- package/demo/platforms/android/CordovaLib/src/org/apache/cordova/PluginResult.java +198 -0
- package/demo/platforms/android/CordovaLib/src/org/apache/cordova/ResumeCallback.java +76 -0
- package/demo/platforms/android/CordovaLib/src/org/apache/cordova/Whitelist.java +170 -0
- package/demo/platforms/android/CordovaLib/src/org/apache/cordova/engine/SystemCookieManager.java +74 -0
- package/demo/platforms/android/CordovaLib/src/org/apache/cordova/engine/SystemExposedJsApi.java +53 -0
- package/demo/platforms/android/CordovaLib/src/org/apache/cordova/engine/SystemWebChromeClient.java +301 -0
- package/demo/platforms/android/CordovaLib/src/org/apache/cordova/engine/SystemWebView.java +88 -0
- package/demo/platforms/android/CordovaLib/src/org/apache/cordova/engine/SystemWebViewClient.java +370 -0
- package/demo/platforms/android/CordovaLib/src/org/apache/cordova/engine/SystemWebViewEngine.java +319 -0
- package/demo/platforms/android/android.json +440 -0
- package/demo/platforms/android/app/build.gradle +363 -0
- package/demo/platforms/android/app/libs/barcodescanner-release-2.1.5.aar +0 -0
- package/demo/platforms/android/app/src/main/AndroidManifest.xml +23 -0
- package/demo/platforms/android/app/src/main/java/com/applurk/nativetimer/Consumer.java +22 -0
- package/demo/platforms/android/app/src/main/java/com/applurk/nativetimer/NativeTimerAdapter.java +27 -0
- package/demo/platforms/android/app/src/main/java/com/applurk/nativetimer/NativeTimerAdapterImpl.java +123 -0
- package/demo/platforms/android/app/src/main/java/com/applurk/nativetimer/NativeTimerPlugin.java +163 -0
- package/demo/platforms/android/app/src/main/java/com/phonegap/plugins/barcodescanner/BarcodeScanner.java +328 -0
- package/demo/platforms/android/app/src/main/java/com/silkimen/cordovahttp/CordovaClientAuth.java +113 -0
- package/demo/platforms/android/app/src/main/java/com/silkimen/cordovahttp/CordovaHttpBase.java +225 -0
- package/demo/platforms/android/app/src/main/java/com/silkimen/cordovahttp/CordovaHttpDownload.java +41 -0
- package/demo/platforms/android/app/src/main/java/com/silkimen/cordovahttp/CordovaHttpOperation.java +24 -0
- package/demo/platforms/android/app/src/main/java/com/silkimen/cordovahttp/CordovaHttpPlugin.java +240 -0
- package/demo/platforms/android/app/src/main/java/com/silkimen/cordovahttp/CordovaHttpResponse.java +100 -0
- package/demo/platforms/android/app/src/main/java/com/silkimen/cordovahttp/CordovaHttpUpload.java +91 -0
- package/demo/platforms/android/app/src/main/java/com/silkimen/cordovahttp/CordovaObservableCallbackContext.java +58 -0
- package/demo/platforms/android/app/src/main/java/com/silkimen/cordovahttp/CordovaServerTrust.java +124 -0
- package/demo/platforms/android/app/src/main/java/com/silkimen/http/HttpBodyDecoder.java +55 -0
- package/demo/platforms/android/app/src/main/java/com/silkimen/http/HttpRequest.java +3095 -0
- package/demo/platforms/android/app/src/main/java/com/silkimen/http/JsonUtils.java +58 -0
- package/demo/platforms/android/app/src/main/java/com/silkimen/http/KeyChainKeyManager.java +57 -0
- package/demo/platforms/android/app/src/main/java/com/silkimen/http/TLSConfiguration.java +63 -0
- package/demo/platforms/android/app/src/main/java/com/silkimen/http/TLSSocketFactory.java +63 -0
- package/demo/platforms/android/app/src/main/java/com/sumsub/SumSubCordova/MainActivity.java +41 -0
- package/demo/platforms/android/app/src/main/java/main/java/com/sumsub/msdk/plugins/cordova/SNSMobileSdkCordovaPlugin.java +339 -0
- package/demo/platforms/android/app/src/main/java/org/apache/cordova/file/AssetFilesystem.java +294 -0
- package/demo/platforms/android/app/src/main/java/org/apache/cordova/file/ContentFilesystem.java +223 -0
- package/demo/platforms/android/app/src/main/java/org/apache/cordova/file/DirectoryManager.java +134 -0
- package/demo/platforms/android/app/src/main/java/org/apache/cordova/file/EncodingException.java +29 -0
- package/demo/platforms/android/app/src/main/java/org/apache/cordova/file/FileExistsException.java +29 -0
- package/demo/platforms/android/app/src/main/java/org/apache/cordova/file/FileUtils.java +1225 -0
- package/demo/platforms/android/app/src/main/java/org/apache/cordova/file/Filesystem.java +331 -0
- package/demo/platforms/android/app/src/main/java/org/apache/cordova/file/InvalidModificationException.java +30 -0
- package/demo/platforms/android/app/src/main/java/org/apache/cordova/file/LocalFilesystem.java +513 -0
- package/demo/platforms/android/app/src/main/java/org/apache/cordova/file/LocalFilesystemURL.java +64 -0
- package/demo/platforms/android/app/src/main/java/org/apache/cordova/file/NoModificationAllowedException.java +29 -0
- package/demo/platforms/android/app/src/main/java/org/apache/cordova/file/PendingRequests.java +94 -0
- package/demo/platforms/android/app/src/main/java/org/apache/cordova/file/TypeMismatchException.java +30 -0
- package/demo/platforms/android/app/src/main/java/org/apache/cordova/whitelist/WhitelistPlugin.java +161 -0
- package/demo/platforms/android/app/src/main/res/drawable-land-hdpi/screen.png +0 -0
- package/demo/platforms/android/app/src/main/res/drawable-land-ldpi/screen.png +0 -0
- package/demo/platforms/android/app/src/main/res/drawable-land-mdpi/screen.png +0 -0
- package/demo/platforms/android/app/src/main/res/drawable-land-xhdpi/screen.png +0 -0
- package/demo/platforms/android/app/src/main/res/drawable-land-xxhdpi/screen.png +0 -0
- package/demo/platforms/android/app/src/main/res/drawable-land-xxxhdpi/screen.png +0 -0
- package/demo/platforms/android/app/src/main/res/drawable-port-hdpi/screen.png +0 -0
- package/demo/platforms/android/app/src/main/res/drawable-port-ldpi/screen.png +0 -0
- package/demo/platforms/android/app/src/main/res/drawable-port-mdpi/screen.png +0 -0
- package/demo/platforms/android/app/src/main/res/drawable-port-xhdpi/screen.png +0 -0
- package/demo/platforms/android/app/src/main/res/drawable-port-xxhdpi/screen.png +0 -0
- package/demo/platforms/android/app/src/main/res/drawable-port-xxxhdpi/screen.png +0 -0
- package/demo/platforms/android/app/src/main/res/mipmap-ldpi/ic_launcher.png +0 -0
- package/demo/platforms/android/app/src/main/res/mipmap-mdpi/ic_launcher.png +0 -0
- package/demo/platforms/android/app/src/main/res/mipmap-xhdpi/ic_launcher.png +0 -0
- package/demo/platforms/android/app/src/main/res/mipmap-xxhdpi/ic_launcher.png +0 -0
- package/demo/platforms/android/app/src/main/res/mipmap-xxxhdpi/ic_launcher.png +0 -0
- package/demo/platforms/android/app/src/main/res/values/strings.xml +7 -0
- package/demo/platforms/android/app/src/main/res/xml/config.xml +44 -0
- package/demo/platforms/android/build.gradle +54 -0
- package/demo/platforms/android/cordova/Api.js +368 -0
- package/demo/platforms/android/cordova/android_sdk_version +27 -0
- package/demo/platforms/android/cordova/android_sdk_version.bat +26 -0
- package/demo/platforms/android/cordova/build +51 -0
- package/demo/platforms/android/cordova/build.bat +26 -0
- package/demo/platforms/android/cordova/check_reqs +32 -0
- package/demo/platforms/android/cordova/check_reqs.bat +26 -0
- package/demo/platforms/android/cordova/clean +51 -0
- package/demo/platforms/android/cordova/clean.bat +26 -0
- package/demo/platforms/android/cordova/defaults.xml +26 -0
- package/demo/platforms/android/cordova/lib/Adb.js +101 -0
- package/demo/platforms/android/cordova/lib/AndroidManifest.js +126 -0
- package/demo/platforms/android/cordova/lib/AndroidProject.js +202 -0
- package/demo/platforms/android/cordova/lib/PackageType.js +25 -0
- package/demo/platforms/android/cordova/lib/android_sdk.js +101 -0
- package/demo/platforms/android/cordova/lib/build.js +321 -0
- package/demo/platforms/android/cordova/lib/builders/ProjectBuilder.js +412 -0
- package/demo/platforms/android/cordova/lib/builders/builders.js +34 -0
- package/demo/platforms/android/cordova/lib/check_reqs.js +436 -0
- package/demo/platforms/android/cordova/lib/config/GradlePropertiesParser.js +114 -0
- package/demo/platforms/android/cordova/lib/device.js +111 -0
- package/demo/platforms/android/cordova/lib/emulator.js +530 -0
- package/demo/platforms/android/cordova/lib/getASPath.bat +3 -0
- package/demo/platforms/android/cordova/lib/install-device +42 -0
- package/demo/platforms/android/cordova/lib/install-device.bat +26 -0
- package/demo/platforms/android/cordova/lib/install-emulator +38 -0
- package/demo/platforms/android/cordova/lib/install-emulator.bat +26 -0
- package/demo/platforms/android/cordova/lib/list-devices +34 -0
- package/demo/platforms/android/cordova/lib/list-devices.bat +26 -0
- package/demo/platforms/android/cordova/lib/list-emulator-images +34 -0
- package/demo/platforms/android/cordova/lib/list-emulator-images.bat +26 -0
- package/demo/platforms/android/cordova/lib/list-started-emulators +34 -0
- package/demo/platforms/android/cordova/lib/list-started-emulators.bat +26 -0
- package/demo/platforms/android/cordova/lib/log.js +56 -0
- package/demo/platforms/android/cordova/lib/plugin-build.gradle +69 -0
- package/demo/platforms/android/cordova/lib/pluginHandlers.js +334 -0
- package/demo/platforms/android/cordova/lib/prepare.js +702 -0
- package/demo/platforms/android/cordova/lib/retry.js +64 -0
- package/demo/platforms/android/cordova/lib/run.js +140 -0
- package/demo/platforms/android/cordova/lib/start-emulator +38 -0
- package/demo/platforms/android/cordova/lib/start-emulator.bat +26 -0
- package/demo/platforms/android/cordova/log +36 -0
- package/demo/platforms/android/cordova/log.bat +26 -0
- package/demo/platforms/android/cordova/loggingHelper.js +18 -0
- package/demo/platforms/android/cordova/run +54 -0
- package/demo/platforms/android/cordova/run.bat +26 -0
- package/demo/platforms/android/cordova/version +29 -0
- package/demo/platforms/android/cordova/version.bat +26 -0
- package/demo/platforms/android/cordova-idensic-mobile-sdk-plugin/SumSubCordova-build-extras.gradle +20 -0
- package/demo/platforms/android/cordova-plugin-enable-multidex/SumSubCordova-build.gradle +9 -0
- package/demo/platforms/android/cordova-plugin-qr-barcode-scanner/SumSubCordova-barcodescanner.gradle +17 -0
- package/demo/platforms/android/gradle.properties +6 -0
- package/demo/platforms/android/platform_www/cordova-js-src/android/nativeapiprovider.js +36 -0
- package/demo/platforms/android/platform_www/cordova-js-src/android/promptbasednativeapi.js +35 -0
- package/demo/platforms/android/platform_www/cordova-js-src/exec.js +286 -0
- package/demo/platforms/android/platform_www/cordova-js-src/platform.js +125 -0
- package/demo/platforms/android/platform_www/cordova-js-src/plugin/android/app.js +108 -0
- package/demo/platforms/android/platform_www/cordova.js +1935 -0
- package/demo/platforms/android/platform_www/cordova_plugins.js +287 -0
- package/demo/platforms/android/platform_www/plugins/cordova-idensic-mobile-sdk-plugin/dist/SNSMobileSDK.js +3 -0
- package/demo/platforms/android/project.properties +17 -0
- package/demo/platforms/android/settings.gradle +4 -0
- package/demo/platforms/android/wrapper.gradle +1 -0
- package/demo/platforms/ios/CordovaLib/Classes/Private/CDVDebug.h +25 -0
- package/demo/platforms/ios/CordovaLib/Classes/Private/CDVJSON_private.h +31 -0
- package/demo/platforms/ios/CordovaLib/Classes/Private/CDVJSON_private.m +99 -0
- package/demo/platforms/ios/CordovaLib/Classes/Private/CDVPlugin+Private.h +24 -0
- package/demo/platforms/ios/CordovaLib/Classes/Private/Plugins/CDVGestureHandler/CDVGestureHandler.h +26 -0
- package/demo/platforms/ios/CordovaLib/Classes/Private/Plugins/CDVGestureHandler/CDVGestureHandler.m +70 -0
- package/demo/platforms/ios/CordovaLib/Classes/Private/Plugins/CDVHandleOpenURL/CDVHandleOpenURL.h +27 -0
- package/demo/platforms/ios/CordovaLib/Classes/Private/Plugins/CDVHandleOpenURL/CDVHandleOpenURL.m +86 -0
- package/demo/platforms/ios/CordovaLib/Classes/Private/Plugins/CDVIntentAndNavigationFilter/CDVIntentAndNavigationFilter.h +40 -0
- package/demo/platforms/ios/CordovaLib/Classes/Private/Plugins/CDVIntentAndNavigationFilter/CDVIntentAndNavigationFilter.m +150 -0
- package/demo/platforms/ios/CordovaLib/Classes/Private/Plugins/CDVLocalStorage/CDVLocalStorage.h +50 -0
- package/demo/platforms/ios/CordovaLib/Classes/Private/Plugins/CDVLocalStorage/CDVLocalStorage.m +493 -0
- package/demo/platforms/ios/CordovaLib/Classes/Private/Plugins/CDVLogger/CDVLogger.h +26 -0
- package/demo/platforms/ios/CordovaLib/Classes/Private/Plugins/CDVLogger/CDVLogger.m +37 -0
- package/demo/platforms/ios/CordovaLib/Classes/Private/Plugins/CDVUIWebViewEngine/CDVUIWebViewDelegate.h +45 -0
- package/demo/platforms/ios/CordovaLib/Classes/Private/Plugins/CDVUIWebViewEngine/CDVUIWebViewDelegate.m +408 -0
- package/demo/platforms/ios/CordovaLib/Classes/Private/Plugins/CDVUIWebViewEngine/CDVUIWebViewEngine.h +29 -0
- package/demo/platforms/ios/CordovaLib/Classes/Private/Plugins/CDVUIWebViewEngine/CDVUIWebViewEngine.m +206 -0
- package/demo/platforms/ios/CordovaLib/Classes/Private/Plugins/CDVUIWebViewEngine/CDVUIWebViewNavigationDelegate.h +33 -0
- package/demo/platforms/ios/CordovaLib/Classes/Private/Plugins/CDVUIWebViewEngine/CDVUIWebViewNavigationDelegate.m +157 -0
- package/demo/platforms/ios/CordovaLib/Classes/Public/CDV.h +32 -0
- package/demo/platforms/ios/CordovaLib/Classes/Public/CDVAppDelegate.h +28 -0
- package/demo/platforms/ios/CordovaLib/Classes/Public/CDVAppDelegate.m +118 -0
- package/demo/platforms/ios/CordovaLib/Classes/Public/CDVAvailability.h +115 -0
- package/demo/platforms/ios/CordovaLib/Classes/Public/CDVAvailabilityDeprecated.h +26 -0
- package/demo/platforms/ios/CordovaLib/Classes/Public/CDVCommandDelegate.h +51 -0
- package/demo/platforms/ios/CordovaLib/Classes/Public/CDVCommandDelegateImpl.h +36 -0
- package/demo/platforms/ios/CordovaLib/Classes/Public/CDVCommandDelegateImpl.m +186 -0
- package/demo/platforms/ios/CordovaLib/Classes/Public/CDVCommandQueue.h +39 -0
- package/demo/platforms/ios/CordovaLib/Classes/Public/CDVCommandQueue.m +194 -0
- package/demo/platforms/ios/CordovaLib/Classes/Public/CDVConfigParser.h +30 -0
- package/demo/platforms/ios/CordovaLib/Classes/Public/CDVConfigParser.m +81 -0
- package/demo/platforms/ios/CordovaLib/Classes/Public/CDVInvokedUrlCommand.h +52 -0
- package/demo/platforms/ios/CordovaLib/Classes/Public/CDVInvokedUrlCommand.m +116 -0
- package/demo/platforms/ios/CordovaLib/Classes/Public/CDVPlugin+Resources.h +39 -0
- package/demo/platforms/ios/CordovaLib/Classes/Public/CDVPlugin+Resources.m +38 -0
- package/demo/platforms/ios/CordovaLib/Classes/Public/CDVPlugin.h +74 -0
- package/demo/platforms/ios/CordovaLib/Classes/Public/CDVPlugin.m +199 -0
- package/demo/platforms/ios/CordovaLib/Classes/Public/CDVPluginResult.h +83 -0
- package/demo/platforms/ios/CordovaLib/Classes/Public/CDVPluginResult.m +203 -0
- package/demo/platforms/ios/CordovaLib/Classes/Public/CDVScreenOrientationDelegate.h +33 -0
- package/demo/platforms/ios/CordovaLib/Classes/Public/CDVTimer.h +27 -0
- package/demo/platforms/ios/CordovaLib/Classes/Public/CDVTimer.m +123 -0
- package/demo/platforms/ios/CordovaLib/Classes/Public/CDVURLProtocol.h +27 -0
- package/demo/platforms/ios/CordovaLib/Classes/Public/CDVURLProtocol.m +113 -0
- package/demo/platforms/ios/CordovaLib/Classes/Public/CDVUserAgentUtil.h +27 -0
- package/demo/platforms/ios/CordovaLib/Classes/Public/CDVUserAgentUtil.m +162 -0
- package/demo/platforms/ios/CordovaLib/Classes/Public/CDVViewController.h +92 -0
- package/demo/platforms/ios/CordovaLib/Classes/Public/CDVViewController.m +810 -0
- package/demo/platforms/ios/CordovaLib/Classes/Public/CDVWebViewEngineProtocol.h +42 -0
- package/demo/platforms/ios/CordovaLib/Classes/Public/CDVWhitelist.h +34 -0
- package/demo/platforms/ios/CordovaLib/Classes/Public/CDVWhitelist.m +285 -0
- package/demo/platforms/ios/CordovaLib/Classes/Public/NSDictionary+CordovaPreferences.h +35 -0
- package/demo/platforms/ios/CordovaLib/Classes/Public/NSDictionary+CordovaPreferences.m +63 -0
- package/demo/platforms/ios/CordovaLib/Classes/Public/NSMutableArray+QueueAdditions.h +29 -0
- package/demo/platforms/ios/CordovaLib/Classes/Public/NSMutableArray+QueueAdditions.m +58 -0
- package/demo/platforms/ios/CordovaLib/CordovaLib.xcodeproj/project.pbxproj +797 -0
- package/demo/platforms/ios/CordovaLib/CordovaLib_Prefix.pch +22 -0
- package/demo/platforms/ios/CordovaLib/VERSION +1 -0
- package/demo/platforms/ios/CordovaLib/cordova.js +2188 -0
- package/demo/platforms/ios/Podfile +9 -0
- package/demo/platforms/ios/Podfile.lock +20 -0
- package/demo/platforms/ios/SumSubCordova/Bridging-Header.h +28 -0
- package/demo/platforms/ios/SumSubCordova/CDVLaunchScreen.storyboard +60 -0
- package/demo/platforms/ios/SumSubCordova/Classes/AppDelegate.h +33 -0
- package/demo/platforms/ios/SumSubCordova/Classes/AppDelegate.m +39 -0
- package/demo/platforms/ios/SumSubCordova/Classes/MainViewController.h +40 -0
- package/demo/platforms/ios/SumSubCordova/Classes/MainViewController.m +148 -0
- package/demo/platforms/ios/SumSubCordova/Classes/MainViewController.xib +138 -0
- package/demo/platforms/ios/SumSubCordova/Entitlements-Debug.plist +24 -0
- package/demo/platforms/ios/SumSubCordova/Entitlements-Release.plist +24 -0
- package/demo/platforms/ios/SumSubCordova/Images.xcassets/AppIcon.appiconset/Contents.json +116 -0
- package/demo/platforms/ios/SumSubCordova/Images.xcassets/AppIcon.appiconset/cordova_icon-1024.png +0 -0
- package/demo/platforms/ios/SumSubCordova/Images.xcassets/AppIcon.appiconset/cordova_icon-20.png +0 -0
- package/demo/platforms/ios/SumSubCordova/Images.xcassets/AppIcon.appiconset/cordova_icon-20@2x.png +0 -0
- package/demo/platforms/ios/SumSubCordova/Images.xcassets/AppIcon.appiconset/cordova_icon-20@3x.png +0 -0
- package/demo/platforms/ios/SumSubCordova/Images.xcassets/AppIcon.appiconset/cordova_icon-29.png +0 -0
- package/demo/platforms/ios/SumSubCordova/Images.xcassets/AppIcon.appiconset/cordova_icon-29@2x.png +0 -0
- package/demo/platforms/ios/SumSubCordova/Images.xcassets/AppIcon.appiconset/cordova_icon-29@3x.png +0 -0
- package/demo/platforms/ios/SumSubCordova/Images.xcassets/AppIcon.appiconset/cordova_icon-40.png +0 -0
- package/demo/platforms/ios/SumSubCordova/Images.xcassets/AppIcon.appiconset/cordova_icon-40@2x.png +0 -0
- package/demo/platforms/ios/SumSubCordova/Images.xcassets/AppIcon.appiconset/cordova_icon-40@3x.png +0 -0
- package/demo/platforms/ios/SumSubCordova/Images.xcassets/AppIcon.appiconset/cordova_icon-60@2x.png +0 -0
- package/demo/platforms/ios/SumSubCordova/Images.xcassets/AppIcon.appiconset/cordova_icon-60@3x.png +0 -0
- package/demo/platforms/ios/SumSubCordova/Images.xcassets/AppIcon.appiconset/cordova_icon-76.png +0 -0
- package/demo/platforms/ios/SumSubCordova/Images.xcassets/AppIcon.appiconset/cordova_icon-76@2x.png +0 -0
- package/demo/platforms/ios/SumSubCordova/Images.xcassets/AppIcon.appiconset/cordova_icon-83.5@2x.png +0 -0
- package/demo/platforms/ios/SumSubCordova/Images.xcassets/Contents.json +6 -0
- package/demo/platforms/ios/SumSubCordova/Images.xcassets/LaunchImage.launchimage/Contents.json +176 -0
- package/demo/platforms/ios/SumSubCordova/Images.xcassets/LaunchImage.launchimage/Default-2436h.png +0 -0
- package/demo/platforms/ios/SumSubCordova/Images.xcassets/LaunchImage.launchimage/Default-568h@2x~iphone.png +0 -0
- package/demo/platforms/ios/SumSubCordova/Images.xcassets/LaunchImage.launchimage/Default-667h.png +0 -0
- package/demo/platforms/ios/SumSubCordova/Images.xcassets/LaunchImage.launchimage/Default-736h.png +0 -0
- package/demo/platforms/ios/SumSubCordova/Images.xcassets/LaunchImage.launchimage/Default-Landscape-2436h.png +0 -0
- package/demo/platforms/ios/SumSubCordova/Images.xcassets/LaunchImage.launchimage/Default-Landscape-736h.png +0 -0
- package/demo/platforms/ios/SumSubCordova/Images.xcassets/LaunchImage.launchimage/Default-Landscape@2x~ipad.png +0 -0
- package/demo/platforms/ios/SumSubCordova/Images.xcassets/LaunchImage.launchimage/Default-Landscape~ipad.png +0 -0
- package/demo/platforms/ios/SumSubCordova/Images.xcassets/LaunchImage.launchimage/Default-Portrait@2x~ipad.png +0 -0
- package/demo/platforms/ios/SumSubCordova/Images.xcassets/LaunchImage.launchimage/Default-Portrait~ipad.png +0 -0
- package/demo/platforms/ios/SumSubCordova/Images.xcassets/LaunchImage.launchimage/Default@2x~iphone.png +0 -0
- package/demo/platforms/ios/SumSubCordova/Images.xcassets/LaunchImage.launchimage/Default~iphone.png +0 -0
- package/demo/platforms/ios/SumSubCordova/Images.xcassets/LaunchStoryboard.imageset/Contents.json +168 -0
- package/demo/platforms/ios/SumSubCordova/Plugins/README +20 -0
- package/demo/platforms/ios/SumSubCordova/Plugins/cordova-idensic-mobile-sdk-plugin/SNSMobileSdkCordovaPlugin.h +12 -0
- package/demo/platforms/ios/SumSubCordova/Plugins/cordova-idensic-mobile-sdk-plugin/SNSMobileSdkCordovaPlugin.m +263 -0
- package/demo/platforms/ios/SumSubCordova/Plugins/cordova-plugin-advanced-http/AFHTTPSessionManager.h +353 -0
- package/demo/platforms/ios/SumSubCordova/Plugins/cordova-plugin-advanced-http/AFHTTPSessionManager.m +464 -0
- package/demo/platforms/ios/SumSubCordova/Plugins/cordova-plugin-advanced-http/AFNetworkReachabilityManager.h +206 -0
- package/demo/platforms/ios/SumSubCordova/Plugins/cordova-plugin-advanced-http/AFNetworkReachabilityManager.m +263 -0
- package/demo/platforms/ios/SumSubCordova/Plugins/cordova-plugin-advanced-http/AFNetworking.h +41 -0
- package/demo/platforms/ios/SumSubCordova/Plugins/cordova-plugin-advanced-http/AFSecurityPolicy.h +154 -0
- package/demo/platforms/ios/SumSubCordova/Plugins/cordova-plugin-advanced-http/AFSecurityPolicy.m +353 -0
- package/demo/platforms/ios/SumSubCordova/Plugins/cordova-plugin-advanced-http/AFURLRequestSerialization.h +479 -0
- package/demo/platforms/ios/SumSubCordova/Plugins/cordova-plugin-advanced-http/AFURLRequestSerialization.m +1355 -0
- package/demo/platforms/ios/SumSubCordova/Plugins/cordova-plugin-advanced-http/AFURLResponseSerialization.h +318 -0
- package/demo/platforms/ios/SumSubCordova/Plugins/cordova-plugin-advanced-http/AFURLResponseSerialization.m +806 -0
- package/demo/platforms/ios/SumSubCordova/Plugins/cordova-plugin-advanced-http/AFURLSessionManager.h +500 -0
- package/demo/platforms/ios/SumSubCordova/Plugins/cordova-plugin-advanced-http/AFURLSessionManager.m +1239 -0
- package/demo/platforms/ios/SumSubCordova/Plugins/cordova-plugin-advanced-http/BinaryRequestSerializer.h +8 -0
- package/demo/platforms/ios/SumSubCordova/Plugins/cordova-plugin-advanced-http/BinaryRequestSerializer.m +53 -0
- package/demo/platforms/ios/SumSubCordova/Plugins/cordova-plugin-advanced-http/BinaryResponseSerializer.h +8 -0
- package/demo/platforms/ios/SumSubCordova/Plugins/cordova-plugin-advanced-http/BinaryResponseSerializer.m +126 -0
- package/demo/platforms/ios/SumSubCordova/Plugins/cordova-plugin-advanced-http/CordovaHttpPlugin.h +20 -0
- package/demo/platforms/ios/SumSubCordova/Plugins/cordova-plugin-advanced-http/CordovaHttpPlugin.m +639 -0
- package/demo/platforms/ios/SumSubCordova/Plugins/cordova-plugin-advanced-http/SDNetworkActivityIndicator.h +18 -0
- package/demo/platforms/ios/SumSubCordova/Plugins/cordova-plugin-advanced-http/SDNetworkActivityIndicator.m +70 -0
- package/demo/platforms/ios/SumSubCordova/Plugins/cordova-plugin-advanced-http/TextRequestSerializer.h +8 -0
- package/demo/platforms/ios/SumSubCordova/Plugins/cordova-plugin-advanced-http/TextRequestSerializer.m +53 -0
- package/demo/platforms/ios/SumSubCordova/Plugins/cordova-plugin-advanced-http/TextResponseSerializer.h +8 -0
- package/demo/platforms/ios/SumSubCordova/Plugins/cordova-plugin-advanced-http/TextResponseSerializer.m +145 -0
- package/demo/platforms/ios/SumSubCordova/Plugins/cordova-plugin-file/CDVAssetLibraryFilesystem.h +30 -0
- package/demo/platforms/ios/SumSubCordova/Plugins/cordova-plugin-file/CDVAssetLibraryFilesystem.m +253 -0
- package/demo/platforms/ios/SumSubCordova/Plugins/cordova-plugin-file/CDVFile.h +157 -0
- package/demo/platforms/ios/SumSubCordova/Plugins/cordova-plugin-file/CDVFile.m +1119 -0
- package/demo/platforms/ios/SumSubCordova/Plugins/cordova-plugin-file/CDVLocalFilesystem.h +32 -0
- package/demo/platforms/ios/SumSubCordova/Plugins/cordova-plugin-file/CDVLocalFilesystem.m +750 -0
- package/demo/platforms/ios/SumSubCordova/Plugins/cordova-plugin-qr-barcode-scanner/CDVBarcodeScanner.mm +1067 -0
- package/demo/platforms/ios/SumSubCordova/Plugins/cordova-plugin-timer/NativeTimerAdapter.h +35 -0
- package/demo/platforms/ios/SumSubCordova/Plugins/cordova-plugin-timer/NativeTimerAdapter.m +76 -0
- package/demo/platforms/ios/SumSubCordova/Plugins/cordova-plugin-timer/NativeTimerPlugin.h +28 -0
- package/demo/platforms/ios/SumSubCordova/Plugins/cordova-plugin-timer/NativeTimerPlugin.m +158 -0
- package/demo/platforms/ios/SumSubCordova/Plugins/cordova-plugin-wkwebview-engine/CDVWKProcessPoolFactory.h +27 -0
- package/demo/platforms/ios/SumSubCordova/Plugins/cordova-plugin-wkwebview-engine/CDVWKProcessPoolFactory.m +49 -0
- package/demo/platforms/ios/SumSubCordova/Plugins/cordova-plugin-wkwebview-engine/CDVWKWebViewEngine.h +29 -0
- package/demo/platforms/ios/SumSubCordova/Plugins/cordova-plugin-wkwebview-engine/CDVWKWebViewEngine.m +494 -0
- package/demo/platforms/ios/SumSubCordova/Plugins/cordova-plugin-wkwebview-engine/CDVWKWebViewUIDelegate.h +28 -0
- package/demo/platforms/ios/SumSubCordova/Plugins/cordova-plugin-wkwebview-engine/CDVWKWebViewUIDelegate.m +123 -0
- package/demo/platforms/ios/SumSubCordova/Resources/CDVBarcodeScanner.bundle/beep.caf +0 -0
- package/demo/platforms/ios/SumSubCordova/Resources/CDVBarcodeScanner.bundle/torch.png +0 -0
- package/demo/platforms/ios/SumSubCordova/Resources/CDVBarcodeScanner.bundle/torch@2x.png +0 -0
- package/demo/platforms/ios/SumSubCordova/Resources/CDVBarcodeScanner.bundle/torch@3x.png +0 -0
- package/demo/platforms/ios/SumSubCordova/Resources/scannerOverlay.xib +185 -0
- package/demo/platforms/ios/SumSubCordova/Scripts/copy-www-build-step.sh +63 -0
- package/demo/platforms/ios/SumSubCordova/SumSubCordova-Info.plist +60 -0
- package/demo/platforms/ios/SumSubCordova/SumSubCordova-Prefix.pch +26 -0
- package/demo/platforms/ios/SumSubCordova/config.xml +74 -0
- package/demo/platforms/ios/SumSubCordova/main.m +35 -0
- package/demo/platforms/ios/SumSubCordova.xcodeproj/project.pbxproj +698 -0
- package/demo/platforms/ios/SumSubCordova.xcworkspace/contents.xcworkspacedata +10 -0
- package/demo/platforms/ios/SumSubCordova.xcworkspace/xcshareddata/IDEWorkspaceChecks.plist +8 -0
- package/demo/platforms/ios/SumSubCordova.xcworkspace/xcshareddata/xcschemes/SumSubCordova.xcscheme +91 -0
- package/demo/platforms/ios/cordova/Api.js +715 -0
- package/demo/platforms/ios/cordova/apple_ios_version +27 -0
- package/demo/platforms/ios/cordova/apple_osx_version +27 -0
- package/demo/platforms/ios/cordova/apple_xcode_version +29 -0
- package/demo/platforms/ios/cordova/build +63 -0
- package/demo/platforms/ios/cordova/build-debug.xcconfig +32 -0
- package/demo/platforms/ios/cordova/build-extras.xcconfig +0 -0
- package/demo/platforms/ios/cordova/build-release.xcconfig +33 -0
- package/demo/platforms/ios/cordova/build.bat +19 -0
- package/demo/platforms/ios/cordova/build.xcconfig +45 -0
- package/demo/platforms/ios/cordova/check_reqs +32 -0
- package/demo/platforms/ios/cordova/check_reqs.bat +25 -0
- package/demo/platforms/ios/cordova/clean +49 -0
- package/demo/platforms/ios/cordova/clean.bat +19 -0
- package/demo/platforms/ios/cordova/defaults.xml +59 -0
- package/demo/platforms/ios/cordova/lib/BridgingHeader.js +125 -0
- package/demo/platforms/ios/cordova/lib/Podfile.js +424 -0
- package/demo/platforms/ios/cordova/lib/PodsJson.js +209 -0
- package/demo/platforms/ios/cordova/lib/build.js +464 -0
- package/demo/platforms/ios/cordova/lib/check_reqs.js +235 -0
- package/demo/platforms/ios/cordova/lib/clean.js +42 -0
- package/demo/platforms/ios/cordova/lib/list-devices +66 -0
- package/demo/platforms/ios/cordova/lib/list-emulator-build-targets +108 -0
- package/demo/platforms/ios/cordova/lib/list-emulator-images +43 -0
- package/demo/platforms/ios/cordova/lib/list-started-emulators +49 -0
- package/demo/platforms/ios/cordova/lib/plugman/pluginHandlers.js +391 -0
- package/demo/platforms/ios/cordova/lib/prepare.js +1190 -0
- package/demo/platforms/ios/cordova/lib/projectFile.js +134 -0
- package/demo/platforms/ios/cordova/lib/run.js +263 -0
- package/demo/platforms/ios/cordova/lib/spawn.js +51 -0
- package/demo/platforms/ios/cordova/lib/start-emulator +30 -0
- package/demo/platforms/ios/cordova/lib/versions.js +179 -0
- package/demo/platforms/ios/cordova/log +23 -0
- package/demo/platforms/ios/cordova/log.bat +19 -0
- package/demo/platforms/ios/cordova/loggingHelper.js +30 -0
- package/demo/platforms/ios/cordova/run +63 -0
- package/demo/platforms/ios/cordova/run.bat +19 -0
- package/demo/platforms/ios/cordova/version +35 -0
- package/demo/platforms/ios/cordova/version.bat +26 -0
- package/demo/platforms/ios/frameworks.json +7 -0
- package/demo/platforms/ios/ios.json +402 -0
- package/demo/platforms/ios/platform_www/cordova-js-src/.eslintrc.yml +4 -0
- package/demo/platforms/ios/platform_www/cordova-js-src/exec.js +262 -0
- package/demo/platforms/ios/platform_www/cordova-js-src/platform.js +31 -0
- package/demo/platforms/ios/platform_www/cordova-js-src/plugin/ios/console.js +186 -0
- package/demo/platforms/ios/platform_www/cordova-js-src/plugin/ios/logger.js +349 -0
- package/demo/platforms/ios/platform_www/cordova.js +2188 -0
- package/demo/platforms/ios/platform_www/cordova_plugins.js +302 -0
- package/demo/platforms/ios/platform_www/plugins/cordova-idensic-mobile-sdk-plugin/dist/SNSMobileSDK.js +3 -0
- package/demo/platforms/ios/pods-debug.xcconfig +2 -0
- package/demo/platforms/ios/pods-release.xcconfig +2 -0
- package/demo/platforms/ios/pods.json +20 -0
- package/demo/plugins/android.json +47 -0
- package/demo/plugins/cordova-idensic-mobile-sdk-plugin/dist/SNSMobileSDK.js +1 -0
- package/demo/plugins/cordova-idensic-mobile-sdk-plugin/package.json +48 -0
- package/demo/plugins/cordova-idensic-mobile-sdk-plugin/plugin.xml +82 -0
- package/demo/plugins/cordova-idensic-mobile-sdk-plugin/src/android/build-extras.gradle +20 -0
- package/demo/plugins/cordova-idensic-mobile-sdk-plugin/src/android/build.gradle +54 -0
- package/demo/plugins/cordova-idensic-mobile-sdk-plugin/src/android/dependencies.gradle +122 -0
- package/demo/plugins/cordova-idensic-mobile-sdk-plugin/src/android/gradlew +172 -0
- package/demo/plugins/cordova-idensic-mobile-sdk-plugin/src/android/gradlew.bat +84 -0
- package/demo/plugins/cordova-idensic-mobile-sdk-plugin/src/android/src/main/java/com/sumsub/msdk/plugins/cordova/SNSMobileSdkCordovaPlugin.java +328 -0
- package/demo/plugins/cordova-idensic-mobile-sdk-plugin/src/ios/SNSMobileSdkCordovaPlugin.h +12 -0
- package/demo/plugins/cordova-idensic-mobile-sdk-plugin/src/ios/SNSMobileSdkCordovaPlugin.m +263 -0
- package/demo/plugins/cordova-plugin-advanced-http/.editorconfig +19 -0
- package/demo/plugins/cordova-plugin-advanced-http/.github/ISSUE_TEMPLATE/--bug-report.md +33 -0
- package/demo/plugins/cordova-plugin-advanced-http/.github/ISSUE_TEMPLATE/--feature-request.md +21 -0
- package/demo/plugins/cordova-plugin-advanced-http/.github/ISSUE_TEMPLATE/--support-question.md +18 -0
- package/demo/plugins/cordova-plugin-advanced-http/.github/workflows/ci.yml +65 -0
- package/demo/plugins/cordova-plugin-advanced-http/.travis.yml +61 -0
- package/demo/plugins/cordova-plugin-advanced-http/.vscode/settings.json +3 -0
- package/demo/plugins/cordova-plugin-advanced-http/CHANGELOG.md +347 -0
- package/demo/plugins/cordova-plugin-advanced-http/CONTRIBUTING.md +82 -0
- package/demo/plugins/cordova-plugin-advanced-http/LICENSE +23 -0
- package/demo/plugins/cordova-plugin-advanced-http/README.md +483 -0
- package/demo/plugins/cordova-plugin-advanced-http/package.json +114 -0
- package/demo/plugins/cordova-plugin-advanced-http/plugin.xml +96 -0
- package/demo/plugins/cordova-plugin-advanced-http/src/android/com/silkimen/cordovahttp/CordovaClientAuth.java +113 -0
- package/demo/plugins/cordova-plugin-advanced-http/src/android/com/silkimen/cordovahttp/CordovaHttpBase.java +225 -0
- package/demo/plugins/cordova-plugin-advanced-http/src/android/com/silkimen/cordovahttp/CordovaHttpDownload.java +41 -0
- package/demo/plugins/cordova-plugin-advanced-http/src/android/com/silkimen/cordovahttp/CordovaHttpOperation.java +24 -0
- package/demo/plugins/cordova-plugin-advanced-http/src/android/com/silkimen/cordovahttp/CordovaHttpPlugin.java +240 -0
- package/demo/plugins/cordova-plugin-advanced-http/src/android/com/silkimen/cordovahttp/CordovaHttpResponse.java +100 -0
- package/demo/plugins/cordova-plugin-advanced-http/src/android/com/silkimen/cordovahttp/CordovaHttpUpload.java +91 -0
- package/demo/plugins/cordova-plugin-advanced-http/src/android/com/silkimen/cordovahttp/CordovaObservableCallbackContext.java +58 -0
- package/demo/plugins/cordova-plugin-advanced-http/src/android/com/silkimen/cordovahttp/CordovaServerTrust.java +124 -0
- package/demo/plugins/cordova-plugin-advanced-http/src/android/com/silkimen/http/HttpBodyDecoder.java +55 -0
- package/demo/plugins/cordova-plugin-advanced-http/src/android/com/silkimen/http/HttpRequest.java +3095 -0
- package/demo/plugins/cordova-plugin-advanced-http/src/android/com/silkimen/http/JsonUtils.java +58 -0
- package/demo/plugins/cordova-plugin-advanced-http/src/android/com/silkimen/http/KeyChainKeyManager.java +57 -0
- package/demo/plugins/cordova-plugin-advanced-http/src/android/com/silkimen/http/TLSConfiguration.java +63 -0
- package/demo/plugins/cordova-plugin-advanced-http/src/android/com/silkimen/http/TLSSocketFactory.java +63 -0
- package/demo/plugins/cordova-plugin-advanced-http/src/browser/cordova-http-plugin.js +323 -0
- package/demo/plugins/cordova-plugin-advanced-http/src/ios/AFNetworking/AFHTTPSessionManager.h +353 -0
- package/demo/plugins/cordova-plugin-advanced-http/src/ios/AFNetworking/AFHTTPSessionManager.m +464 -0
- package/demo/plugins/cordova-plugin-advanced-http/src/ios/AFNetworking/AFNetworkReachabilityManager.h +206 -0
- package/demo/plugins/cordova-plugin-advanced-http/src/ios/AFNetworking/AFNetworkReachabilityManager.m +263 -0
- package/demo/plugins/cordova-plugin-advanced-http/src/ios/AFNetworking/AFNetworking.h +41 -0
- package/demo/plugins/cordova-plugin-advanced-http/src/ios/AFNetworking/AFSecurityPolicy.h +154 -0
- package/demo/plugins/cordova-plugin-advanced-http/src/ios/AFNetworking/AFSecurityPolicy.m +353 -0
- package/demo/plugins/cordova-plugin-advanced-http/src/ios/AFNetworking/AFURLRequestSerialization.h +479 -0
- package/demo/plugins/cordova-plugin-advanced-http/src/ios/AFNetworking/AFURLRequestSerialization.m +1355 -0
- package/demo/plugins/cordova-plugin-advanced-http/src/ios/AFNetworking/AFURLResponseSerialization.h +318 -0
- package/demo/plugins/cordova-plugin-advanced-http/src/ios/AFNetworking/AFURLResponseSerialization.m +806 -0
- package/demo/plugins/cordova-plugin-advanced-http/src/ios/AFNetworking/AFURLSessionManager.h +500 -0
- package/demo/plugins/cordova-plugin-advanced-http/src/ios/AFNetworking/AFURLSessionManager.m +1239 -0
- package/demo/plugins/cordova-plugin-advanced-http/src/ios/BinaryRequestSerializer.h +8 -0
- package/demo/plugins/cordova-plugin-advanced-http/src/ios/BinaryRequestSerializer.m +53 -0
- package/demo/plugins/cordova-plugin-advanced-http/src/ios/BinaryResponseSerializer.h +8 -0
- package/demo/plugins/cordova-plugin-advanced-http/src/ios/BinaryResponseSerializer.m +126 -0
- package/demo/plugins/cordova-plugin-advanced-http/src/ios/CordovaHttpPlugin.h +20 -0
- package/demo/plugins/cordova-plugin-advanced-http/src/ios/CordovaHttpPlugin.m +639 -0
- package/demo/plugins/cordova-plugin-advanced-http/src/ios/SDNetworkActivityIndicator/LICENSE +20 -0
- package/demo/plugins/cordova-plugin-advanced-http/src/ios/SDNetworkActivityIndicator/README.md +52 -0
- package/demo/plugins/cordova-plugin-advanced-http/src/ios/SDNetworkActivityIndicator/SDNetworkActivityIndicator.h +18 -0
- package/demo/plugins/cordova-plugin-advanced-http/src/ios/SDNetworkActivityIndicator/SDNetworkActivityIndicator.m +70 -0
- package/demo/plugins/cordova-plugin-advanced-http/src/ios/TextRequestSerializer.h +8 -0
- package/demo/plugins/cordova-plugin-advanced-http/src/ios/TextRequestSerializer.m +53 -0
- package/demo/plugins/cordova-plugin-advanced-http/src/ios/TextResponseSerializer.h +8 -0
- package/demo/plugins/cordova-plugin-advanced-http/src/ios/TextResponseSerializer.m +145 -0
- package/demo/plugins/cordova-plugin-androidx/README.md +55 -0
- package/demo/plugins/cordova-plugin-androidx/package.json +47 -0
- package/demo/plugins/cordova-plugin-androidx/plugin.xml +20 -0
- package/demo/plugins/cordova-plugin-androidx/scripts/apply-to-gradle.properties.js +49 -0
- package/demo/plugins/cordova-plugin-androidx-adapter/README.md +67 -0
- package/demo/plugins/cordova-plugin-androidx-adapter/apply.js +101 -0
- package/demo/plugins/cordova-plugin-androidx-adapter/artifact-mappings.json +105 -0
- package/demo/plugins/cordova-plugin-androidx-adapter/class-mappings.json +1938 -0
- package/demo/plugins/cordova-plugin-androidx-adapter/package.json +43 -0
- package/demo/plugins/cordova-plugin-androidx-adapter/plugin.xml +20 -0
- package/demo/plugins/cordova-plugin-console/.appveyor.yml +29 -0
- package/demo/plugins/cordova-plugin-console/.github/PULL_REQUEST_TEMPLATE.md +22 -0
- package/demo/plugins/cordova-plugin-console/.jshintrc +17 -0
- package/demo/plugins/cordova-plugin-console/.travis.yml +82 -0
- package/demo/plugins/cordova-plugin-console/CONTRIBUTING.md +37 -0
- package/demo/plugins/cordova-plugin-console/LICENSE +202 -0
- package/demo/plugins/cordova-plugin-console/NOTICE +5 -0
- package/demo/plugins/cordova-plugin-console/README.md +116 -0
- package/demo/plugins/cordova-plugin-console/RELEASENOTES.md +126 -0
- package/demo/plugins/cordova-plugin-console/doc/de/README.md +43 -0
- package/demo/plugins/cordova-plugin-console/doc/de/index.md +41 -0
- package/demo/plugins/cordova-plugin-console/doc/es/README.md +41 -0
- package/demo/plugins/cordova-plugin-console/doc/es/index.md +39 -0
- package/demo/plugins/cordova-plugin-console/doc/fr/README.md +41 -0
- package/demo/plugins/cordova-plugin-console/doc/fr/index.md +39 -0
- package/demo/plugins/cordova-plugin-console/doc/it/README.md +43 -0
- package/demo/plugins/cordova-plugin-console/doc/it/index.md +41 -0
- package/demo/plugins/cordova-plugin-console/doc/ja/README.md +43 -0
- package/demo/plugins/cordova-plugin-console/doc/ja/index.md +41 -0
- package/demo/plugins/cordova-plugin-console/doc/ko/README.md +43 -0
- package/demo/plugins/cordova-plugin-console/doc/ko/index.md +41 -0
- package/demo/plugins/cordova-plugin-console/doc/pl/README.md +43 -0
- package/demo/plugins/cordova-plugin-console/doc/pl/index.md +41 -0
- package/demo/plugins/cordova-plugin-console/doc/ru/index.md +31 -0
- package/demo/plugins/cordova-plugin-console/doc/zh/README.md +43 -0
- package/demo/plugins/cordova-plugin-console/doc/zh/index.md +41 -0
- package/demo/plugins/cordova-plugin-console/package.json +82 -0
- package/demo/plugins/cordova-plugin-console/plugin.xml +132 -0
- package/demo/plugins/cordova-plugin-console/src/ios/CDVLogger.h +26 -0
- package/demo/plugins/cordova-plugin-console/src/ios/CDVLogger.m +38 -0
- package/demo/plugins/cordova-plugin-console/src/ubuntu/console.cpp +29 -0
- package/demo/plugins/cordova-plugin-console/src/ubuntu/console.h +43 -0
- package/demo/plugins/cordova-plugin-console/src/wp/DebugConsole.cs +47 -0
- package/demo/plugins/cordova-plugin-console/tests/package.json +14 -0
- package/demo/plugins/cordova-plugin-console/tests/plugin.xml +31 -0
- package/demo/plugins/cordova-plugin-console/tests/tests.js +43 -0
- package/demo/plugins/cordova-plugin-enable-multidex/.editorconfig +20 -0
- package/demo/plugins/cordova-plugin-enable-multidex/.eslintrc.json +11 -0
- package/demo/plugins/cordova-plugin-enable-multidex/.prettierrc.json +10 -0
- package/demo/plugins/cordova-plugin-enable-multidex/.travis.yml +52 -0
- package/demo/plugins/cordova-plugin-enable-multidex/LICENSE +21 -0
- package/demo/plugins/cordova-plugin-enable-multidex/README.md +25 -0
- package/demo/plugins/cordova-plugin-enable-multidex/package.json +79 -0
- package/demo/plugins/cordova-plugin-enable-multidex/plugin.xml +18 -0
- package/demo/plugins/cordova-plugin-enable-multidex/scripts/android/editManifest.js +38 -0
- package/demo/plugins/cordova-plugin-enable-multidex/src/android/build.gradle +9 -0
- package/demo/plugins/cordova-plugin-file/.jshintrc +30 -0
- package/demo/plugins/cordova-plugin-file/.ratignore +1 -0
- package/demo/plugins/cordova-plugin-file/CONTRIBUTING.md +37 -0
- package/demo/plugins/cordova-plugin-file/LICENSE +202 -0
- package/demo/plugins/cordova-plugin-file/NOTICE +5 -0
- package/demo/plugins/cordova-plugin-file/README.md +833 -0
- package/demo/plugins/cordova-plugin-file/RELEASENOTES.md +496 -0
- package/demo/plugins/cordova-plugin-file/doc/plugins.md +120 -0
- package/demo/plugins/cordova-plugin-file/package.json +86 -0
- package/demo/plugins/cordova-plugin-file/plugin.xml +260 -0
- package/demo/plugins/cordova-plugin-file/src/android/AssetFilesystem.java +294 -0
- package/demo/plugins/cordova-plugin-file/src/android/ContentFilesystem.java +223 -0
- package/demo/plugins/cordova-plugin-file/src/android/DirectoryManager.java +134 -0
- package/demo/plugins/cordova-plugin-file/src/android/EncodingException.java +29 -0
- package/demo/plugins/cordova-plugin-file/src/android/FileExistsException.java +29 -0
- package/demo/plugins/cordova-plugin-file/src/android/FileUtils.java +1225 -0
- package/demo/plugins/cordova-plugin-file/src/android/Filesystem.java +331 -0
- package/demo/plugins/cordova-plugin-file/src/android/InvalidModificationException.java +30 -0
- package/demo/plugins/cordova-plugin-file/src/android/LocalFilesystem.java +513 -0
- package/demo/plugins/cordova-plugin-file/src/android/LocalFilesystemURL.java +64 -0
- package/demo/plugins/cordova-plugin-file/src/android/NoModificationAllowedException.java +29 -0
- package/demo/plugins/cordova-plugin-file/src/android/PendingRequests.java +94 -0
- package/demo/plugins/cordova-plugin-file/src/android/TypeMismatchException.java +30 -0
- package/demo/plugins/cordova-plugin-file/src/android/build-extras.gradle +47 -0
- package/demo/plugins/cordova-plugin-file/src/browser/FileProxy.js +1059 -0
- package/demo/plugins/cordova-plugin-file/src/ios/CDVAssetLibraryFilesystem.h +30 -0
- package/demo/plugins/cordova-plugin-file/src/ios/CDVAssetLibraryFilesystem.m +253 -0
- package/demo/plugins/cordova-plugin-file/src/ios/CDVFile.h +157 -0
- package/demo/plugins/cordova-plugin-file/src/ios/CDVFile.m +1119 -0
- package/demo/plugins/cordova-plugin-file/src/ios/CDVLocalFilesystem.h +32 -0
- package/demo/plugins/cordova-plugin-file/src/ios/CDVLocalFilesystem.m +750 -0
- package/demo/plugins/cordova-plugin-file/src/osx/CDVFile.h +189 -0
- package/demo/plugins/cordova-plugin-file/src/osx/CDVFile.m +1056 -0
- package/demo/plugins/cordova-plugin-file/src/osx/CDVLocalFilesystem.h +32 -0
- package/demo/plugins/cordova-plugin-file/src/osx/CDVLocalFilesystem.m +733 -0
- package/demo/plugins/cordova-plugin-file/src/windows/FileProxy.js +1190 -0
- package/demo/plugins/cordova-plugin-file/tests/package.json +17 -0
- package/demo/plugins/cordova-plugin-file/tests/plugin.xml +43 -0
- package/demo/plugins/cordova-plugin-file/tests/src/android/TestContentProvider.java +93 -0
- package/demo/plugins/cordova-plugin-file/tests/tests.js +4163 -0
- package/demo/plugins/cordova-plugin-file/types/index.d.ts +378 -0
- package/demo/plugins/cordova-plugin-qr-barcode-scanner/.editorconfig +16 -0
- package/demo/plugins/cordova-plugin-qr-barcode-scanner/.github/CONTRIBUTING.md +72 -0
- package/demo/plugins/cordova-plugin-qr-barcode-scanner/.github/ISSUE_TEMPLATE.md +24 -0
- package/demo/plugins/cordova-plugin-qr-barcode-scanner/.github/PULL_REQUEST_TEMPLATE.md +0 -0
- package/demo/plugins/cordova-plugin-qr-barcode-scanner/.github/lock.yml +25 -0
- package/demo/plugins/cordova-plugin-qr-barcode-scanner/.github/stale.yml +20 -0
- package/demo/plugins/cordova-plugin-qr-barcode-scanner/.travis.yml +11 -0
- package/demo/plugins/cordova-plugin-qr-barcode-scanner/CHANGELOG.md +448 -0
- package/demo/plugins/cordova-plugin-qr-barcode-scanner/LICENSE.txt +22 -0
- package/demo/plugins/cordova-plugin-qr-barcode-scanner/README.md +197 -0
- package/demo/plugins/cordova-plugin-qr-barcode-scanner/buttons.psd +0 -0
- package/demo/plugins/cordova-plugin-qr-barcode-scanner/hooks/windows/check-arch.js +52 -0
- package/demo/plugins/cordova-plugin-qr-barcode-scanner/package.json +89 -0
- package/demo/plugins/cordova-plugin-qr-barcode-scanner/plugin.xml +74 -0
- package/demo/plugins/cordova-plugin-qr-barcode-scanner/spec/helper/cordova.js +83 -0
- package/demo/plugins/cordova-plugin-qr-barcode-scanner/spec/index.spec.js +78 -0
- package/demo/plugins/cordova-plugin-qr-barcode-scanner/src/android/README.md +1 -0
- package/demo/plugins/cordova-plugin-qr-barcode-scanner/src/android/barcodescanner-release-2.1.5/AndroidManifest.xml +14 -0
- package/demo/plugins/cordova-plugin-qr-barcode-scanner/src/android/barcodescanner-release-2.1.5/R.txt +1398 -0
- package/demo/plugins/cordova-plugin-qr-barcode-scanner/src/android/barcodescanner-release-2.1.5/aapt/AndroidManifest.xml +14 -0
- package/demo/plugins/cordova-plugin-qr-barcode-scanner/src/android/barcodescanner-release-2.1.5/assets/html/apache-license.txt +201 -0
- package/demo/plugins/cordova-plugin-qr-barcode-scanner/src/android/barcodescanner-release-2.1.5/assets/html-de/about1d.html +15 -0
- package/demo/plugins/cordova-plugin-qr-barcode-scanner/src/android/barcodescanner-release-2.1.5/assets/html-de/about2d.html +28 -0
- package/demo/plugins/cordova-plugin-qr-barcode-scanner/src/android/barcodescanner-release-2.1.5/assets/html-de/index.html +23 -0
- package/demo/plugins/cordova-plugin-qr-barcode-scanner/src/android/barcodescanner-release-2.1.5/assets/html-de/license.html +30 -0
- package/demo/plugins/cordova-plugin-qr-barcode-scanner/src/android/barcodescanner-release-2.1.5/assets/html-de/scanning.html +19 -0
- package/demo/plugins/cordova-plugin-qr-barcode-scanner/src/android/barcodescanner-release-2.1.5/assets/html-de/sharing.html +14 -0
- package/demo/plugins/cordova-plugin-qr-barcode-scanner/src/android/barcodescanner-release-2.1.5/assets/html-de/whatsnew.html +14 -0
- package/demo/plugins/cordova-plugin-qr-barcode-scanner/src/android/barcodescanner-release-2.1.5/assets/html-en/about1d.html +15 -0
- package/demo/plugins/cordova-plugin-qr-barcode-scanner/src/android/barcodescanner-release-2.1.5/assets/html-en/about2d.html +28 -0
- package/demo/plugins/cordova-plugin-qr-barcode-scanner/src/android/barcodescanner-release-2.1.5/assets/html-en/index.html +23 -0
- package/demo/plugins/cordova-plugin-qr-barcode-scanner/src/android/barcodescanner-release-2.1.5/assets/html-en/license.html +42 -0
- package/demo/plugins/cordova-plugin-qr-barcode-scanner/src/android/barcodescanner-release-2.1.5/assets/html-en/scanning.html +19 -0
- package/demo/plugins/cordova-plugin-qr-barcode-scanner/src/android/barcodescanner-release-2.1.5/assets/html-en/sharing.html +14 -0
- package/demo/plugins/cordova-plugin-qr-barcode-scanner/src/android/barcodescanner-release-2.1.5/assets/html-en/whatsnew.html +14 -0
- package/demo/plugins/cordova-plugin-qr-barcode-scanner/src/android/barcodescanner-release-2.1.5/assets/html-es/about1d.html +18 -0
- package/demo/plugins/cordova-plugin-qr-barcode-scanner/src/android/barcodescanner-release-2.1.5/assets/html-es/about2d.html +30 -0
- package/demo/plugins/cordova-plugin-qr-barcode-scanner/src/android/barcodescanner-release-2.1.5/assets/html-es/index.html +24 -0
- package/demo/plugins/cordova-plugin-qr-barcode-scanner/src/android/barcodescanner-release-2.1.5/assets/html-es/license.html +39 -0
- package/demo/plugins/cordova-plugin-qr-barcode-scanner/src/android/barcodescanner-release-2.1.5/assets/html-es/scanning.html +18 -0
- package/demo/plugins/cordova-plugin-qr-barcode-scanner/src/android/barcodescanner-release-2.1.5/assets/html-es/sharing.html +13 -0
- package/demo/plugins/cordova-plugin-qr-barcode-scanner/src/android/barcodescanner-release-2.1.5/assets/html-es/whatsnew.html +14 -0
- package/demo/plugins/cordova-plugin-qr-barcode-scanner/src/android/barcodescanner-release-2.1.5/assets/html-fr/about1d.html +15 -0
- package/demo/plugins/cordova-plugin-qr-barcode-scanner/src/android/barcodescanner-release-2.1.5/assets/html-fr/about2d.html +26 -0
- package/demo/plugins/cordova-plugin-qr-barcode-scanner/src/android/barcodescanner-release-2.1.5/assets/html-fr/index.html +23 -0
- package/demo/plugins/cordova-plugin-qr-barcode-scanner/src/android/barcodescanner-release-2.1.5/assets/html-fr/license.html +30 -0
- package/demo/plugins/cordova-plugin-qr-barcode-scanner/src/android/barcodescanner-release-2.1.5/assets/html-fr/scanning.html +19 -0
- package/demo/plugins/cordova-plugin-qr-barcode-scanner/src/android/barcodescanner-release-2.1.5/assets/html-fr/sharing.html +14 -0
- package/demo/plugins/cordova-plugin-qr-barcode-scanner/src/android/barcodescanner-release-2.1.5/assets/html-fr/whatsnew.html +14 -0
- package/demo/plugins/cordova-plugin-qr-barcode-scanner/src/android/barcodescanner-release-2.1.5/assets/html-it/about1d.html +15 -0
- package/demo/plugins/cordova-plugin-qr-barcode-scanner/src/android/barcodescanner-release-2.1.5/assets/html-it/about2d.html +28 -0
- package/demo/plugins/cordova-plugin-qr-barcode-scanner/src/android/barcodescanner-release-2.1.5/assets/html-it/index.html +23 -0
- package/demo/plugins/cordova-plugin-qr-barcode-scanner/src/android/barcodescanner-release-2.1.5/assets/html-it/license.html +30 -0
- package/demo/plugins/cordova-plugin-qr-barcode-scanner/src/android/barcodescanner-release-2.1.5/assets/html-it/scanning.html +19 -0
- package/demo/plugins/cordova-plugin-qr-barcode-scanner/src/android/barcodescanner-release-2.1.5/assets/html-it/sharing.html +14 -0
- package/demo/plugins/cordova-plugin-qr-barcode-scanner/src/android/barcodescanner-release-2.1.5/assets/html-it/whatsnew.html +14 -0
- package/demo/plugins/cordova-plugin-qr-barcode-scanner/src/android/barcodescanner-release-2.1.5/assets/html-ja/about1d.html +15 -0
- package/demo/plugins/cordova-plugin-qr-barcode-scanner/src/android/barcodescanner-release-2.1.5/assets/html-ja/about2d.html +28 -0
- package/demo/plugins/cordova-plugin-qr-barcode-scanner/src/android/barcodescanner-release-2.1.5/assets/html-ja/index.html +22 -0
- package/demo/plugins/cordova-plugin-qr-barcode-scanner/src/android/barcodescanner-release-2.1.5/assets/html-ja/license.html +29 -0
- package/demo/plugins/cordova-plugin-qr-barcode-scanner/src/android/barcodescanner-release-2.1.5/assets/html-ja/scanning.html +19 -0
- package/demo/plugins/cordova-plugin-qr-barcode-scanner/src/android/barcodescanner-release-2.1.5/assets/html-ja/sharing.html +14 -0
- package/demo/plugins/cordova-plugin-qr-barcode-scanner/src/android/barcodescanner-release-2.1.5/assets/html-ja/whatsnew.html +14 -0
- package/demo/plugins/cordova-plugin-qr-barcode-scanner/src/android/barcodescanner-release-2.1.5/assets/html-ko/about1d.html +15 -0
- package/demo/plugins/cordova-plugin-qr-barcode-scanner/src/android/barcodescanner-release-2.1.5/assets/html-ko/about2d.html +28 -0
- package/demo/plugins/cordova-plugin-qr-barcode-scanner/src/android/barcodescanner-release-2.1.5/assets/html-ko/index.html +23 -0
- package/demo/plugins/cordova-plugin-qr-barcode-scanner/src/android/barcodescanner-release-2.1.5/assets/html-ko/license.html +30 -0
- package/demo/plugins/cordova-plugin-qr-barcode-scanner/src/android/barcodescanner-release-2.1.5/assets/html-ko/scanning.html +19 -0
- package/demo/plugins/cordova-plugin-qr-barcode-scanner/src/android/barcodescanner-release-2.1.5/assets/html-ko/sharing.html +14 -0
- package/demo/plugins/cordova-plugin-qr-barcode-scanner/src/android/barcodescanner-release-2.1.5/assets/html-ko/whatsnew.html +14 -0
- package/demo/plugins/cordova-plugin-qr-barcode-scanner/src/android/barcodescanner-release-2.1.5/assets/html-nl/about1d.html +15 -0
- package/demo/plugins/cordova-plugin-qr-barcode-scanner/src/android/barcodescanner-release-2.1.5/assets/html-nl/about2d.html +28 -0
- package/demo/plugins/cordova-plugin-qr-barcode-scanner/src/android/barcodescanner-release-2.1.5/assets/html-nl/index.html +23 -0
- package/demo/plugins/cordova-plugin-qr-barcode-scanner/src/android/barcodescanner-release-2.1.5/assets/html-nl/license.html +30 -0
- package/demo/plugins/cordova-plugin-qr-barcode-scanner/src/android/barcodescanner-release-2.1.5/assets/html-nl/scanning.html +19 -0
- package/demo/plugins/cordova-plugin-qr-barcode-scanner/src/android/barcodescanner-release-2.1.5/assets/html-nl/sharing.html +14 -0
- package/demo/plugins/cordova-plugin-qr-barcode-scanner/src/android/barcodescanner-release-2.1.5/assets/html-nl/whatsnew.html +14 -0
- package/demo/plugins/cordova-plugin-qr-barcode-scanner/src/android/barcodescanner-release-2.1.5/assets/html-pt/about1d.html +15 -0
- package/demo/plugins/cordova-plugin-qr-barcode-scanner/src/android/barcodescanner-release-2.1.5/assets/html-pt/about2d.html +28 -0
- package/demo/plugins/cordova-plugin-qr-barcode-scanner/src/android/barcodescanner-release-2.1.5/assets/html-pt/index.html +23 -0
- package/demo/plugins/cordova-plugin-qr-barcode-scanner/src/android/barcodescanner-release-2.1.5/assets/html-pt/license.html +30 -0
- package/demo/plugins/cordova-plugin-qr-barcode-scanner/src/android/barcodescanner-release-2.1.5/assets/html-pt/scanning.html +19 -0
- package/demo/plugins/cordova-plugin-qr-barcode-scanner/src/android/barcodescanner-release-2.1.5/assets/html-pt/sharing.html +14 -0
- package/demo/plugins/cordova-plugin-qr-barcode-scanner/src/android/barcodescanner-release-2.1.5/assets/html-pt/whatsnew.html +14 -0
- package/demo/plugins/cordova-plugin-qr-barcode-scanner/src/android/barcodescanner-release-2.1.5/assets/html-ru/about1d.html +15 -0
- package/demo/plugins/cordova-plugin-qr-barcode-scanner/src/android/barcodescanner-release-2.1.5/assets/html-ru/about2d.html +28 -0
- package/demo/plugins/cordova-plugin-qr-barcode-scanner/src/android/barcodescanner-release-2.1.5/assets/html-ru/index.html +23 -0
- package/demo/plugins/cordova-plugin-qr-barcode-scanner/src/android/barcodescanner-release-2.1.5/assets/html-ru/license.html +30 -0
- package/demo/plugins/cordova-plugin-qr-barcode-scanner/src/android/barcodescanner-release-2.1.5/assets/html-ru/scanning.html +19 -0
- package/demo/plugins/cordova-plugin-qr-barcode-scanner/src/android/barcodescanner-release-2.1.5/assets/html-ru/sharing.html +14 -0
- package/demo/plugins/cordova-plugin-qr-barcode-scanner/src/android/barcodescanner-release-2.1.5/assets/html-ru/whatsnew.html +14 -0
- package/demo/plugins/cordova-plugin-qr-barcode-scanner/src/android/barcodescanner-release-2.1.5/assets/html-uk/about1d.html +15 -0
- package/demo/plugins/cordova-plugin-qr-barcode-scanner/src/android/barcodescanner-release-2.1.5/assets/html-uk/about2d.html +28 -0
- package/demo/plugins/cordova-plugin-qr-barcode-scanner/src/android/barcodescanner-release-2.1.5/assets/html-uk/index.html +23 -0
- package/demo/plugins/cordova-plugin-qr-barcode-scanner/src/android/barcodescanner-release-2.1.5/assets/html-uk/license.html +29 -0
- package/demo/plugins/cordova-plugin-qr-barcode-scanner/src/android/barcodescanner-release-2.1.5/assets/html-uk/scanning.html +19 -0
- package/demo/plugins/cordova-plugin-qr-barcode-scanner/src/android/barcodescanner-release-2.1.5/assets/html-uk/sharing.html +14 -0
- package/demo/plugins/cordova-plugin-qr-barcode-scanner/src/android/barcodescanner-release-2.1.5/assets/html-uk/whatsnew.html +14 -0
- package/demo/plugins/cordova-plugin-qr-barcode-scanner/src/android/barcodescanner-release-2.1.5/assets/html-zh-rCN/about1d.html +15 -0
- package/demo/plugins/cordova-plugin-qr-barcode-scanner/src/android/barcodescanner-release-2.1.5/assets/html-zh-rCN/about2d.html +29 -0
- package/demo/plugins/cordova-plugin-qr-barcode-scanner/src/android/barcodescanner-release-2.1.5/assets/html-zh-rCN/index.html +23 -0
- package/demo/plugins/cordova-plugin-qr-barcode-scanner/src/android/barcodescanner-release-2.1.5/assets/html-zh-rCN/license.html +30 -0
- package/demo/plugins/cordova-plugin-qr-barcode-scanner/src/android/barcodescanner-release-2.1.5/assets/html-zh-rCN/scanning.html +19 -0
- package/demo/plugins/cordova-plugin-qr-barcode-scanner/src/android/barcodescanner-release-2.1.5/assets/html-zh-rCN/sharing.html +13 -0
- package/demo/plugins/cordova-plugin-qr-barcode-scanner/src/android/barcodescanner-release-2.1.5/assets/html-zh-rCN/whatsnew.html +14 -0
- package/demo/plugins/cordova-plugin-qr-barcode-scanner/src/android/barcodescanner-release-2.1.5/assets/html-zh-rHK/about1d.html +15 -0
- package/demo/plugins/cordova-plugin-qr-barcode-scanner/src/android/barcodescanner-release-2.1.5/assets/html-zh-rHK/about2d.html +28 -0
- package/demo/plugins/cordova-plugin-qr-barcode-scanner/src/android/barcodescanner-release-2.1.5/assets/html-zh-rHK/index.html +23 -0
- package/demo/plugins/cordova-plugin-qr-barcode-scanner/src/android/barcodescanner-release-2.1.5/assets/html-zh-rHK/license.html +31 -0
- package/demo/plugins/cordova-plugin-qr-barcode-scanner/src/android/barcodescanner-release-2.1.5/assets/html-zh-rHK/scanning.html +21 -0
- package/demo/plugins/cordova-plugin-qr-barcode-scanner/src/android/barcodescanner-release-2.1.5/assets/html-zh-rHK/sharing.html +14 -0
- package/demo/plugins/cordova-plugin-qr-barcode-scanner/src/android/barcodescanner-release-2.1.5/assets/html-zh-rHK/whatsnew.html +14 -0
- package/demo/plugins/cordova-plugin-qr-barcode-scanner/src/android/barcodescanner-release-2.1.5/assets/html-zh-rTW/about1d.html +15 -0
- package/demo/plugins/cordova-plugin-qr-barcode-scanner/src/android/barcodescanner-release-2.1.5/assets/html-zh-rTW/about2d.html +28 -0
- package/demo/plugins/cordova-plugin-qr-barcode-scanner/src/android/barcodescanner-release-2.1.5/assets/html-zh-rTW/index.html +23 -0
- package/demo/plugins/cordova-plugin-qr-barcode-scanner/src/android/barcodescanner-release-2.1.5/assets/html-zh-rTW/license.html +31 -0
- package/demo/plugins/cordova-plugin-qr-barcode-scanner/src/android/barcodescanner-release-2.1.5/assets/html-zh-rTW/scanning.html +21 -0
- package/demo/plugins/cordova-plugin-qr-barcode-scanner/src/android/barcodescanner-release-2.1.5/assets/html-zh-rTW/sharing.html +14 -0
- package/demo/plugins/cordova-plugin-qr-barcode-scanner/src/android/barcodescanner-release-2.1.5/assets/html-zh-rTW/whatsnew.html +14 -0
- package/demo/plugins/cordova-plugin-qr-barcode-scanner/src/android/barcodescanner-release-2.1.5/assets/images/big-1d.png +0 -0
- package/demo/plugins/cordova-plugin-qr-barcode-scanner/src/android/barcodescanner-release-2.1.5/assets/images/big-aztec.png +0 -0
- package/demo/plugins/cordova-plugin-qr-barcode-scanner/src/android/barcodescanner-release-2.1.5/assets/images/big-datamatrix.png +0 -0
- package/demo/plugins/cordova-plugin-qr-barcode-scanner/src/android/barcodescanner-release-2.1.5/assets/images/big-pdf417.png +0 -0
- package/demo/plugins/cordova-plugin-qr-barcode-scanner/src/android/barcodescanner-release-2.1.5/assets/images/big-qr.png +0 -0
- package/demo/plugins/cordova-plugin-qr-barcode-scanner/src/android/barcodescanner-release-2.1.5/assets/images/contact-results-screen.jpg +0 -0
- package/demo/plugins/cordova-plugin-qr-barcode-scanner/src/android/barcodescanner-release-2.1.5/assets/images/demo-no.png +0 -0
- package/demo/plugins/cordova-plugin-qr-barcode-scanner/src/android/barcodescanner-release-2.1.5/assets/images/demo-yes.png +0 -0
- package/demo/plugins/cordova-plugin-qr-barcode-scanner/src/android/barcodescanner-release-2.1.5/assets/images/scan-example.png +0 -0
- package/demo/plugins/cordova-plugin-qr-barcode-scanner/src/android/barcodescanner-release-2.1.5/assets/images/scan-from-phone.png +0 -0
- package/demo/plugins/cordova-plugin-qr-barcode-scanner/src/android/barcodescanner-release-2.1.5/assets/images/search-book-contents.jpg +0 -0
- package/demo/plugins/cordova-plugin-qr-barcode-scanner/src/android/barcodescanner-release-2.1.5/assets/style.css +28 -0
- package/demo/plugins/cordova-plugin-qr-barcode-scanner/src/android/barcodescanner-release-2.1.5/classes.jar +0 -0
- package/demo/plugins/cordova-plugin-qr-barcode-scanner/src/android/barcodescanner-release-2.1.5/res/drawable/flip_camera.png +0 -0
- package/demo/plugins/cordova-plugin-qr-barcode-scanner/src/android/barcodescanner-release-2.1.5/res/drawable/launcher_icon.png +0 -0
- package/demo/plugins/cordova-plugin-qr-barcode-scanner/src/android/barcodescanner-release-2.1.5/res/drawable/share_via_barcode.png +0 -0
- package/demo/plugins/cordova-plugin-qr-barcode-scanner/src/android/barcodescanner-release-2.1.5/res/drawable/toggle_torch.png +0 -0
- package/demo/plugins/cordova-plugin-qr-barcode-scanner/src/android/barcodescanner-release-2.1.5/res/drawable-hdpi/launcher_icon.png +0 -0
- package/demo/plugins/cordova-plugin-qr-barcode-scanner/src/android/barcodescanner-release-2.1.5/res/drawable-xhdpi/launcher_icon.png +0 -0
- package/demo/plugins/cordova-plugin-qr-barcode-scanner/src/android/barcodescanner-release-2.1.5/res/drawable-xxhdpi/launcher_icon.png +0 -0
- package/demo/plugins/cordova-plugin-qr-barcode-scanner/src/android/barcodescanner-release-2.1.5/res/layout/app_picker_list_item.xml +39 -0
- package/demo/plugins/cordova-plugin-qr-barcode-scanner/src/android/barcodescanner-release-2.1.5/res/layout/bookmark_picker_list_item.xml +39 -0
- package/demo/plugins/cordova-plugin-qr-barcode-scanner/src/android/barcodescanner-release-2.1.5/res/layout/capture.xml +229 -0
- package/demo/plugins/cordova-plugin-qr-barcode-scanner/src/android/barcodescanner-release-2.1.5/res/layout/encode.xml +54 -0
- package/demo/plugins/cordova-plugin-qr-barcode-scanner/src/android/barcodescanner-release-2.1.5/res/layout/help.xml +21 -0
- package/demo/plugins/cordova-plugin-qr-barcode-scanner/src/android/barcodescanner-release-2.1.5/res/layout/history_list_item.xml +38 -0
- package/demo/plugins/cordova-plugin-qr-barcode-scanner/src/android/barcodescanner-release-2.1.5/res/layout/search_book_contents.xml +55 -0
- package/demo/plugins/cordova-plugin-qr-barcode-scanner/src/android/barcodescanner-release-2.1.5/res/layout/search_book_contents_header.xml +25 -0
- package/demo/plugins/cordova-plugin-qr-barcode-scanner/src/android/barcodescanner-release-2.1.5/res/layout/search_book_contents_list_item.xml +41 -0
- package/demo/plugins/cordova-plugin-qr-barcode-scanner/src/android/barcodescanner-release-2.1.5/res/layout/share.xml +95 -0
- package/demo/plugins/cordova-plugin-qr-barcode-scanner/src/android/barcodescanner-release-2.1.5/res/layout-land/encode.xml +53 -0
- package/demo/plugins/cordova-plugin-qr-barcode-scanner/src/android/barcodescanner-release-2.1.5/res/layout-land/share.xml +91 -0
- package/demo/plugins/cordova-plugin-qr-barcode-scanner/src/android/barcodescanner-release-2.1.5/res/layout-ldpi/capture.xml +219 -0
- package/demo/plugins/cordova-plugin-qr-barcode-scanner/src/android/barcodescanner-release-2.1.5/res/menu/capture.xml +38 -0
- package/demo/plugins/cordova-plugin-qr-barcode-scanner/src/android/barcodescanner-release-2.1.5/res/menu/encode.xml +28 -0
- package/demo/plugins/cordova-plugin-qr-barcode-scanner/src/android/barcodescanner-release-2.1.5/res/menu/history.xml +28 -0
- package/demo/plugins/cordova-plugin-qr-barcode-scanner/src/android/barcodescanner-release-2.1.5/res/raw/beep.ogg +0 -0
- package/demo/plugins/cordova-plugin-qr-barcode-scanner/src/android/barcodescanner-release-2.1.5/res/values/values.xml +221 -0
- package/demo/plugins/cordova-plugin-qr-barcode-scanner/src/android/barcodescanner-release-2.1.5/res/values-ar/values-ar.xml +129 -0
- package/demo/plugins/cordova-plugin-qr-barcode-scanner/src/android/barcodescanner-release-2.1.5/res/values-bg/values-bg.xml +129 -0
- package/demo/plugins/cordova-plugin-qr-barcode-scanner/src/android/barcodescanner-release-2.1.5/res/values-ca/values-ca.xml +129 -0
- package/demo/plugins/cordova-plugin-qr-barcode-scanner/src/android/barcodescanner-release-2.1.5/res/values-cs/values-cs.xml +129 -0
- package/demo/plugins/cordova-plugin-qr-barcode-scanner/src/android/barcodescanner-release-2.1.5/res/values-da/values-da.xml +129 -0
- package/demo/plugins/cordova-plugin-qr-barcode-scanner/src/android/barcodescanner-release-2.1.5/res/values-de/values-de.xml +129 -0
- package/demo/plugins/cordova-plugin-qr-barcode-scanner/src/android/barcodescanner-release-2.1.5/res/values-el/values-el.xml +129 -0
- package/demo/plugins/cordova-plugin-qr-barcode-scanner/src/android/barcodescanner-release-2.1.5/res/values-es/values-es.xml +129 -0
- package/demo/plugins/cordova-plugin-qr-barcode-scanner/src/android/barcodescanner-release-2.1.5/res/values-eu/values-eu.xml +129 -0
- package/demo/plugins/cordova-plugin-qr-barcode-scanner/src/android/barcodescanner-release-2.1.5/res/values-fi/values-fi.xml +129 -0
- package/demo/plugins/cordova-plugin-qr-barcode-scanner/src/android/barcodescanner-release-2.1.5/res/values-fr/values-fr.xml +129 -0
- package/demo/plugins/cordova-plugin-qr-barcode-scanner/src/android/barcodescanner-release-2.1.5/res/values-he/values-he.xml +129 -0
- package/demo/plugins/cordova-plugin-qr-barcode-scanner/src/android/barcodescanner-release-2.1.5/res/values-hi/values-hi.xml +129 -0
- package/demo/plugins/cordova-plugin-qr-barcode-scanner/src/android/barcodescanner-release-2.1.5/res/values-hu/values-hu.xml +129 -0
- package/demo/plugins/cordova-plugin-qr-barcode-scanner/src/android/barcodescanner-release-2.1.5/res/values-id/values-id.xml +129 -0
- package/demo/plugins/cordova-plugin-qr-barcode-scanner/src/android/barcodescanner-release-2.1.5/res/values-it/values-it.xml +129 -0
- package/demo/plugins/cordova-plugin-qr-barcode-scanner/src/android/barcodescanner-release-2.1.5/res/values-iw/values-iw.xml +129 -0
- package/demo/plugins/cordova-plugin-qr-barcode-scanner/src/android/barcodescanner-release-2.1.5/res/values-ja/values-ja.xml +129 -0
- package/demo/plugins/cordova-plugin-qr-barcode-scanner/src/android/barcodescanner-release-2.1.5/res/values-ko/values-ko.xml +129 -0
- package/demo/plugins/cordova-plugin-qr-barcode-scanner/src/android/barcodescanner-release-2.1.5/res/values-nl/values-nl.xml +129 -0
- package/demo/plugins/cordova-plugin-qr-barcode-scanner/src/android/barcodescanner-release-2.1.5/res/values-pl/values-pl.xml +129 -0
- package/demo/plugins/cordova-plugin-qr-barcode-scanner/src/android/barcodescanner-release-2.1.5/res/values-pt/values-pt.xml +129 -0
- package/demo/plugins/cordova-plugin-qr-barcode-scanner/src/android/barcodescanner-release-2.1.5/res/values-ro/values-ro.xml +129 -0
- package/demo/plugins/cordova-plugin-qr-barcode-scanner/src/android/barcodescanner-release-2.1.5/res/values-ru/values-ru.xml +129 -0
- package/demo/plugins/cordova-plugin-qr-barcode-scanner/src/android/barcodescanner-release-2.1.5/res/values-sk/values-sk.xml +129 -0
- package/demo/plugins/cordova-plugin-qr-barcode-scanner/src/android/barcodescanner-release-2.1.5/res/values-sl/values-sl.xml +129 -0
- package/demo/plugins/cordova-plugin-qr-barcode-scanner/src/android/barcodescanner-release-2.1.5/res/values-sv/values-sv.xml +129 -0
- package/demo/plugins/cordova-plugin-qr-barcode-scanner/src/android/barcodescanner-release-2.1.5/res/values-th/values-th.xml +129 -0
- package/demo/plugins/cordova-plugin-qr-barcode-scanner/src/android/barcodescanner-release-2.1.5/res/values-tr/values-tr.xml +129 -0
- package/demo/plugins/cordova-plugin-qr-barcode-scanner/src/android/barcodescanner-release-2.1.5/res/values-uk/values-uk.xml +129 -0
- package/demo/plugins/cordova-plugin-qr-barcode-scanner/src/android/barcodescanner-release-2.1.5/res/values-zh-rCN/values-zh-rCN.xml +129 -0
- package/demo/plugins/cordova-plugin-qr-barcode-scanner/src/android/barcodescanner-release-2.1.5/res/values-zh-rHK/values-zh-rHK.xml +129 -0
- package/demo/plugins/cordova-plugin-qr-barcode-scanner/src/android/barcodescanner-release-2.1.5/res/values-zh-rTW/values-zh-rTW.xml +129 -0
- package/demo/plugins/cordova-plugin-qr-barcode-scanner/src/android/barcodescanner-release-2.1.5/res/xml/preferences.xml +136 -0
- package/demo/plugins/cordova-plugin-qr-barcode-scanner/src/android/barcodescanner-release-2.1.5.aar +0 -0
- package/demo/plugins/cordova-plugin-qr-barcode-scanner/src/android/barcodescanner.gradle +17 -0
- package/demo/plugins/cordova-plugin-qr-barcode-scanner/src/android/com/phonegap/plugins/barcodescanner/BarcodeScanner.java +328 -0
- package/demo/plugins/cordova-plugin-qr-barcode-scanner/src/browser/BarcodeScannerProxy.js +24 -0
- package/demo/plugins/cordova-plugin-qr-barcode-scanner/src/ios/CDVBarcodeScanner.bundle/beep.caf +0 -0
- package/demo/plugins/cordova-plugin-qr-barcode-scanner/src/ios/CDVBarcodeScanner.bundle/torch.png +0 -0
- package/demo/plugins/cordova-plugin-qr-barcode-scanner/src/ios/CDVBarcodeScanner.bundle/torch@2x.png +0 -0
- package/demo/plugins/cordova-plugin-qr-barcode-scanner/src/ios/CDVBarcodeScanner.bundle/torch@3x.png +0 -0
- package/demo/plugins/cordova-plugin-qr-barcode-scanner/src/ios/CDVBarcodeScanner.mm +1067 -0
- package/demo/plugins/cordova-plugin-qr-barcode-scanner/src/ios/scannerOverlay.xib +185 -0
- package/demo/plugins/cordova-plugin-qr-barcode-scanner/src/windows/BarcodeScannerProxy.js +738 -0
- package/demo/plugins/cordova-plugin-qr-barcode-scanner/src/windows/assets/plugin-barcodeScanner.css +89 -0
- package/demo/plugins/cordova-plugin-qr-barcode-scanner/src/windows/lib/Properties/AssemblyInfo.cs +39 -0
- package/demo/plugins/cordova-plugin-qr-barcode-scanner/src/windows/lib/Reader.cs +173 -0
- package/demo/plugins/cordova-plugin-qr-barcode-scanner/src/windows/lib/WinRTBarcodeReader.csproj +137 -0
- package/demo/plugins/cordova-plugin-qr-barcode-scanner/src/windows/lib/ZXing.winmd +0 -0
- package/demo/plugins/cordova-plugin-qr-barcode-scanner/src/windows/lib.UW/ANY/ZXing.winmd +0 -0
- package/demo/plugins/cordova-plugin-qr-barcode-scanner/src/windows/lib.UW/ARM/ZXing.winmd +0 -0
- package/demo/plugins/cordova-plugin-qr-barcode-scanner/src/windows/lib.UW/x64/ZXing.winmd +0 -0
- package/demo/plugins/cordova-plugin-qr-barcode-scanner/src/windows/lib.UW/x86/ZXing.winmd +0 -0
- package/demo/plugins/cordova-plugin-timer/.appveyor.yml +28 -0
- package/demo/plugins/cordova-plugin-timer/.github/PULL_REQUEST_TEMPLATE.md +22 -0
- package/demo/plugins/cordova-plugin-timer/.jshintignore +1 -0
- package/demo/plugins/cordova-plugin-timer/.jshintrc +16 -0
- package/demo/plugins/cordova-plugin-timer/.travis.yml +98 -0
- package/demo/plugins/cordova-plugin-timer/LICENSE +204 -0
- package/demo/plugins/cordova-plugin-timer/README.md +88 -0
- package/demo/plugins/cordova-plugin-timer/RELEASENOTES.md +0 -0
- package/demo/plugins/cordova-plugin-timer/package.json +87 -0
- package/demo/plugins/cordova-plugin-timer/plugin.xml +68 -0
- package/demo/plugins/cordova-plugin-timer/src/android/Consumer.java +22 -0
- package/demo/plugins/cordova-plugin-timer/src/android/NativeTimerAdapter.java +27 -0
- package/demo/plugins/cordova-plugin-timer/src/android/NativeTimerAdapterImpl.java +123 -0
- package/demo/plugins/cordova-plugin-timer/src/android/NativeTimerPlugin.java +163 -0
- package/demo/plugins/cordova-plugin-timer/src/ios/NativeTimerAdapter.h +35 -0
- package/demo/plugins/cordova-plugin-timer/src/ios/NativeTimerAdapter.m +76 -0
- package/demo/plugins/cordova-plugin-timer/src/ios/NativeTimerPlugin.h +28 -0
- package/demo/plugins/cordova-plugin-timer/src/ios/NativeTimerPlugin.m +158 -0
- package/demo/plugins/cordova-plugin-timer/types/index.d.ts +21 -0
- package/demo/plugins/cordova-plugin-whitelist/CONTRIBUTING.md +37 -0
- package/demo/plugins/cordova-plugin-whitelist/LICENSE +202 -0
- package/demo/plugins/cordova-plugin-whitelist/NOTICE +5 -0
- package/demo/plugins/cordova-plugin-whitelist/README.md +167 -0
- package/demo/plugins/cordova-plugin-whitelist/RELEASENOTES.md +87 -0
- package/demo/plugins/cordova-plugin-whitelist/package.json +70 -0
- package/demo/plugins/cordova-plugin-whitelist/plugin.xml +44 -0
- package/demo/plugins/cordova-plugin-whitelist/src/android/WhitelistPlugin.java +161 -0
- package/demo/plugins/cordova-plugin-whitelist/tests/README.md +53 -0
- package/demo/plugins/cordova-plugin-whitelist/tests/package.json +15 -0
- package/demo/plugins/cordova-plugin-whitelist/tests/plugin.xml +56 -0
- package/demo/plugins/cordova-plugin-whitelist/tests/scripts/remove-access.js +19 -0
- package/demo/plugins/cordova-plugin-whitelist/tests/src/android/WhitelistAPI.java +90 -0
- package/demo/plugins/cordova-plugin-whitelist/tests/tests.js +214 -0
- package/demo/plugins/cordova-plugin-wkwebview-engine/CONTRIBUTING.md +32 -0
- package/demo/plugins/cordova-plugin-wkwebview-engine/LICENSE +202 -0
- package/demo/plugins/cordova-plugin-wkwebview-engine/NOTICE +5 -0
- package/demo/plugins/cordova-plugin-wkwebview-engine/README.md +123 -0
- package/demo/plugins/cordova-plugin-wkwebview-engine/RELEASENOTES.md +121 -0
- package/demo/plugins/cordova-plugin-wkwebview-engine/package.json +72 -0
- package/demo/plugins/cordova-plugin-wkwebview-engine/plugin.xml +63 -0
- package/demo/plugins/cordova-plugin-wkwebview-engine/src/ios/CDVWKProcessPoolFactory.h +27 -0
- package/demo/plugins/cordova-plugin-wkwebview-engine/src/ios/CDVWKProcessPoolFactory.m +49 -0
- package/demo/plugins/cordova-plugin-wkwebview-engine/src/ios/CDVWKWebViewEngine.h +29 -0
- package/demo/plugins/cordova-plugin-wkwebview-engine/src/ios/CDVWKWebViewEngine.m +494 -0
- package/demo/plugins/cordova-plugin-wkwebview-engine/src/ios/CDVWKWebViewUIDelegate.h +28 -0
- package/demo/plugins/cordova-plugin-wkwebview-engine/src/ios/CDVWKWebViewUIDelegate.m +123 -0
- package/demo/plugins/cordova-plugin-wkwebview-engine/tests/ios/CDVWKWebViewEngineTest/CDVWKWebViewEngineLibTests/CDVWKWebViewEngineTest.m +240 -0
- package/demo/plugins/cordova-plugin-wkwebview-engine/tests/ios/CDVWKWebViewEngineTest/CDVWKWebViewEngineLibTests/Info.plist +24 -0
- package/demo/plugins/cordova-plugin-wkwebview-engine/tests/ios/CDVWKWebViewEngineTest/CDVWKWebViewEngineTest.xcodeproj/project.pbxproj +559 -0
- package/demo/plugins/cordova-plugin-wkwebview-engine/tests/ios/CDVWKWebViewEngineTest/CDVWKWebViewEngineTest.xcodeproj/project.xcworkspace/contents.xcworkspacedata +7 -0
- package/demo/plugins/cordova-plugin-wkwebview-engine/tests/ios/CDVWKWebViewEngineTest/CDVWKWebViewEngineTest.xcodeproj/project.xcworkspace/xcshareddata/CDVWKWebViewEngineTest.xccheckout +41 -0
- package/demo/plugins/cordova-plugin-wkwebview-engine/tests/ios/CDVWKWebViewEngineTest/CDVWKWebViewEngineTest.xcodeproj/xcshareddata/xcschemes/CDVWKWebViewEngineLib.xcscheme +80 -0
- package/demo/plugins/cordova-plugin-wkwebview-engine/tests/ios/CDVWKWebViewEngineTest/CDVWKWebViewEngineTest.xcodeproj/xcshareddata/xcschemes/CDVWKWebViewEngineLibTests.xcscheme +104 -0
- package/demo/plugins/cordova-plugin-wkwebview-engine/tests/ios/CDVWKWebViewEngineTest.xcworkspace/contents.xcworkspacedata +7 -0
- package/demo/plugins/cordova-plugin-wkwebview-engine/tests/ios/CDVWKWebViewEngineTest.xcworkspace/xcshareddata/CDVWKWebViewEngineTest.xccheckout +41 -0
- package/demo/plugins/cordova-plugin-wkwebview-engine/tests/ios/CDVWKWebViewEngineTest.xcworkspace/xcshareddata/xcschemes/CordovaLib.xcscheme +80 -0
- package/demo/plugins/cordova-plugin-wkwebview-engine/tests/ios/README.md +40 -0
- package/demo/plugins/cordova-plugin-wkwebview-engine/tests/ios/package.json +13 -0
- package/demo/plugins/cordova-plugin-wkwebview-engine/tests/ios/test.xcconfig +20 -0
- package/demo/plugins/cordova-plugin-wkwebview-engine/tests/package.json +14 -0
- package/demo/plugins/cordova-plugin-wkwebview-engine/tests/plugin.xml +29 -0
- package/demo/plugins/cordova-plugin-wkwebview-engine/tests/tests.js +44 -0
- package/demo/plugins/ios.json +46 -0
- package/dist/SNSMobileSDK.js +1 -0
- package/package.json +48 -0
- package/plugin.xml +82 -0
- package/src/android/build-extras.gradle +22 -0
- package/src/android/build.gradle +54 -0
- package/src/android/dependencies.gradle +122 -0
- package/src/android/gradlew +172 -0
- package/src/android/gradlew.bat +84 -0
- package/src/android/src/main/java/com/sumsub/msdk/plugins/cordova/SNSMobileSdkCordovaPlugin.java +339 -0
- package/src/ios/SNSMobileSdkCordovaPlugin.h +12 -0
- package/src/ios/SNSMobileSdkCordovaPlugin.m +263 -0
- package/webpack.config.js +42 -0
|
@@ -0,0 +1,1067 @@
|
|
|
1
|
+
/*
|
|
2
|
+
* PhoneGap is available under *either* the terms of the modified BSD license *or* the
|
|
3
|
+
* MIT License (2008). See http://opensource.org/licenses/alphabetical for full text.
|
|
4
|
+
*
|
|
5
|
+
* Copyright 2011 Matt Kane. All rights reserved.
|
|
6
|
+
* Copyright (c) 2011, IBM Corporation
|
|
7
|
+
*/
|
|
8
|
+
|
|
9
|
+
#import <AVFoundation/AVFoundation.h>
|
|
10
|
+
#import <AssetsLibrary/AssetsLibrary.h>
|
|
11
|
+
#import <Cordova/CDVPlugin.h>
|
|
12
|
+
|
|
13
|
+
|
|
14
|
+
//------------------------------------------------------------------------------
|
|
15
|
+
// Delegate to handle orientation functions
|
|
16
|
+
//------------------------------------------------------------------------------
|
|
17
|
+
@protocol CDVBarcodeScannerOrientationDelegate <NSObject>
|
|
18
|
+
|
|
19
|
+
- (NSUInteger)supportedInterfaceOrientations;
|
|
20
|
+
- (BOOL)shouldAutorotateToInterfaceOrientation:(UIInterfaceOrientation)interfaceOrientation;
|
|
21
|
+
- (BOOL)shouldAutorotate;
|
|
22
|
+
|
|
23
|
+
@end
|
|
24
|
+
|
|
25
|
+
//------------------------------------------------------------------------------
|
|
26
|
+
// Adds a shutter button to the UI, and changes the scan from continuous to
|
|
27
|
+
// only performing a scan when you click the shutter button. For testing.
|
|
28
|
+
//------------------------------------------------------------------------------
|
|
29
|
+
#define USE_SHUTTER 0
|
|
30
|
+
|
|
31
|
+
//------------------------------------------------------------------------------
|
|
32
|
+
@class CDVbcsProcessor;
|
|
33
|
+
@class CDVbcsViewController;
|
|
34
|
+
|
|
35
|
+
//------------------------------------------------------------------------------
|
|
36
|
+
// plugin class
|
|
37
|
+
//------------------------------------------------------------------------------
|
|
38
|
+
@interface CDVBarcodeScanner : CDVPlugin {}
|
|
39
|
+
- (NSString*)isScanNotPossible;
|
|
40
|
+
- (void)scan:(CDVInvokedUrlCommand*)command;
|
|
41
|
+
- (void)encode:(CDVInvokedUrlCommand*)command;
|
|
42
|
+
- (void)returnImage:(NSString*)filePath format:(NSString*)format callback:(NSString*)callback;
|
|
43
|
+
- (void)returnSuccess:(NSString*)scannedText format:(NSString*)format cancelled:(BOOL)cancelled flipped:(BOOL)flipped callback:(NSString*)callback;
|
|
44
|
+
- (void)returnError:(NSString*)message callback:(NSString*)callback;
|
|
45
|
+
@end
|
|
46
|
+
|
|
47
|
+
//------------------------------------------------------------------------------
|
|
48
|
+
// class that does the grunt work
|
|
49
|
+
//------------------------------------------------------------------------------
|
|
50
|
+
@interface CDVbcsProcessor : NSObject <AVCaptureMetadataOutputObjectsDelegate> {}
|
|
51
|
+
@property (nonatomic, retain) CDVBarcodeScanner* plugin;
|
|
52
|
+
@property (nonatomic, retain) NSString* callback;
|
|
53
|
+
@property (nonatomic, retain) UIViewController* parentViewController;
|
|
54
|
+
@property (nonatomic, retain) CDVbcsViewController* viewController;
|
|
55
|
+
@property (nonatomic, retain) AVCaptureSession* captureSession;
|
|
56
|
+
@property (nonatomic, retain) AVCaptureVideoPreviewLayer* previewLayer;
|
|
57
|
+
@property (nonatomic, retain) NSString* alternateXib;
|
|
58
|
+
@property (nonatomic, retain) NSMutableArray* results;
|
|
59
|
+
@property (nonatomic, retain) NSString* formats;
|
|
60
|
+
@property (nonatomic) BOOL is1D;
|
|
61
|
+
@property (nonatomic) BOOL is2D;
|
|
62
|
+
@property (nonatomic) BOOL capturing;
|
|
63
|
+
@property (nonatomic) BOOL isFrontCamera;
|
|
64
|
+
@property (nonatomic) BOOL isShowFlipCameraButton;
|
|
65
|
+
@property (nonatomic) BOOL isShowTorchButton;
|
|
66
|
+
@property (nonatomic) BOOL isFlipped;
|
|
67
|
+
@property (nonatomic) BOOL isTransitionAnimated;
|
|
68
|
+
@property (nonatomic) BOOL isSuccessBeepEnabled;
|
|
69
|
+
|
|
70
|
+
|
|
71
|
+
- (id)initWithPlugin:(CDVBarcodeScanner*)plugin callback:(NSString*)callback parentViewController:(UIViewController*)parentViewController alterateOverlayXib:(NSString *)alternateXib;
|
|
72
|
+
- (void)scanBarcode;
|
|
73
|
+
- (void)barcodeScanSucceeded:(NSString*)text format:(NSString*)format;
|
|
74
|
+
- (void)barcodeScanFailed:(NSString*)message;
|
|
75
|
+
- (void)barcodeScanCancelled;
|
|
76
|
+
- (void)openDialog;
|
|
77
|
+
- (NSString*)setUpCaptureSession;
|
|
78
|
+
- (void)captureOutput:(AVCaptureOutput*)captureOutput didOutputSampleBuffer:(CMSampleBufferRef)sampleBuffer fromConnection:(AVCaptureConnection*)connection;
|
|
79
|
+
@end
|
|
80
|
+
|
|
81
|
+
//------------------------------------------------------------------------------
|
|
82
|
+
// Qr encoder processor
|
|
83
|
+
//------------------------------------------------------------------------------
|
|
84
|
+
@interface CDVqrProcessor: NSObject
|
|
85
|
+
@property (nonatomic, retain) CDVBarcodeScanner* plugin;
|
|
86
|
+
@property (nonatomic, retain) NSString* callback;
|
|
87
|
+
@property (nonatomic, retain) NSString* stringToEncode;
|
|
88
|
+
@property NSInteger size;
|
|
89
|
+
|
|
90
|
+
- (id)initWithPlugin:(CDVBarcodeScanner*)plugin callback:(NSString*)callback stringToEncode:(NSString*)stringToEncode;
|
|
91
|
+
- (void)generateImage;
|
|
92
|
+
@end
|
|
93
|
+
|
|
94
|
+
//------------------------------------------------------------------------------
|
|
95
|
+
// view controller for the ui
|
|
96
|
+
//------------------------------------------------------------------------------
|
|
97
|
+
@interface CDVbcsViewController : UIViewController <CDVBarcodeScannerOrientationDelegate> {}
|
|
98
|
+
@property (nonatomic, retain) CDVbcsProcessor* processor;
|
|
99
|
+
@property (nonatomic, retain) NSString* alternateXib;
|
|
100
|
+
@property (nonatomic) BOOL shutterPressed;
|
|
101
|
+
@property (nonatomic, retain) IBOutlet UIView* overlayView;
|
|
102
|
+
@property (nonatomic, retain) UIToolbar * toolbar;
|
|
103
|
+
@property (nonatomic, retain) UIView * reticleView;
|
|
104
|
+
// unsafe_unretained is equivalent to assign - used to prevent retain cycles in the property below
|
|
105
|
+
@property (nonatomic, unsafe_unretained) id orientationDelegate;
|
|
106
|
+
|
|
107
|
+
- (id)initWithProcessor:(CDVbcsProcessor*)processor alternateOverlay:(NSString *)alternateXib;
|
|
108
|
+
- (void)startCapturing;
|
|
109
|
+
- (UIView*)buildOverlayView;
|
|
110
|
+
- (UIImage*)buildReticleImage;
|
|
111
|
+
- (void)shutterButtonPressed;
|
|
112
|
+
- (IBAction)cancelButtonPressed:(id)sender;
|
|
113
|
+
- (IBAction)flipCameraButtonPressed:(id)sender;
|
|
114
|
+
- (IBAction)torchButtonPressed:(id)sender;
|
|
115
|
+
|
|
116
|
+
@end
|
|
117
|
+
|
|
118
|
+
//------------------------------------------------------------------------------
|
|
119
|
+
// plugin class
|
|
120
|
+
//------------------------------------------------------------------------------
|
|
121
|
+
@implementation CDVBarcodeScanner
|
|
122
|
+
|
|
123
|
+
//--------------------------------------------------------------------------
|
|
124
|
+
- (NSString*)isScanNotPossible {
|
|
125
|
+
NSString* result = nil;
|
|
126
|
+
|
|
127
|
+
Class aClass = NSClassFromString(@"AVCaptureSession");
|
|
128
|
+
if (aClass == nil) {
|
|
129
|
+
return @"AVFoundation Framework not available";
|
|
130
|
+
}
|
|
131
|
+
|
|
132
|
+
return result;
|
|
133
|
+
}
|
|
134
|
+
|
|
135
|
+
-(BOOL)notHasPermission
|
|
136
|
+
{
|
|
137
|
+
AVAuthorizationStatus authStatus = [AVCaptureDevice authorizationStatusForMediaType:AVMediaTypeVideo];
|
|
138
|
+
return (authStatus == AVAuthorizationStatusDenied ||
|
|
139
|
+
authStatus == AVAuthorizationStatusRestricted);
|
|
140
|
+
}
|
|
141
|
+
|
|
142
|
+
-(BOOL)isUsageDescriptionSet
|
|
143
|
+
{
|
|
144
|
+
NSDictionary * plist = [[NSBundle mainBundle] infoDictionary];
|
|
145
|
+
if ([plist objectForKey:@"NSCameraUsageDescription" ] ||
|
|
146
|
+
[[NSBundle mainBundle] localizedStringForKey: @"NSCameraUsageDescription" value: nil table: @"InfoPlist"]) {
|
|
147
|
+
return YES;
|
|
148
|
+
}
|
|
149
|
+
return NO;
|
|
150
|
+
}
|
|
151
|
+
|
|
152
|
+
|
|
153
|
+
|
|
154
|
+
//--------------------------------------------------------------------------
|
|
155
|
+
- (void)scan:(CDVInvokedUrlCommand*)command {
|
|
156
|
+
CDVbcsProcessor* processor;
|
|
157
|
+
NSString* callback;
|
|
158
|
+
NSString* capabilityError;
|
|
159
|
+
|
|
160
|
+
callback = command.callbackId;
|
|
161
|
+
|
|
162
|
+
NSDictionary* options;
|
|
163
|
+
if (command.arguments.count == 0) {
|
|
164
|
+
options = [NSDictionary dictionary];
|
|
165
|
+
} else {
|
|
166
|
+
options = command.arguments[0];
|
|
167
|
+
}
|
|
168
|
+
|
|
169
|
+
BOOL preferFrontCamera = [options[@"preferFrontCamera"] boolValue];
|
|
170
|
+
BOOL showFlipCameraButton = [options[@"showFlipCameraButton"] boolValue];
|
|
171
|
+
BOOL showTorchButton = [options[@"showTorchButton"] boolValue];
|
|
172
|
+
BOOL disableAnimations = [options[@"disableAnimations"] boolValue];
|
|
173
|
+
BOOL disableSuccessBeep = [options[@"disableSuccessBeep"] boolValue];
|
|
174
|
+
|
|
175
|
+
// We allow the user to define an alternate xib file for loading the overlay.
|
|
176
|
+
NSString *overlayXib = options[@"overlayXib"];
|
|
177
|
+
|
|
178
|
+
capabilityError = [self isScanNotPossible];
|
|
179
|
+
if (capabilityError) {
|
|
180
|
+
[self returnError:capabilityError callback:callback];
|
|
181
|
+
return;
|
|
182
|
+
} else if ([self notHasPermission]) {
|
|
183
|
+
NSString * error = NSLocalizedString(@"Access to the camera has been prohibited; please enable it in the Settings app to continue.",nil);
|
|
184
|
+
[self returnError:error callback:callback];
|
|
185
|
+
return;
|
|
186
|
+
} else if (![self isUsageDescriptionSet]) {
|
|
187
|
+
NSString * error = NSLocalizedString(@"NSCameraUsageDescription is not set in the info.plist", nil);
|
|
188
|
+
[self returnError:error callback:callback];
|
|
189
|
+
return;
|
|
190
|
+
}
|
|
191
|
+
|
|
192
|
+
processor = [[CDVbcsProcessor alloc]
|
|
193
|
+
initWithPlugin:self
|
|
194
|
+
callback:callback
|
|
195
|
+
parentViewController:self.viewController
|
|
196
|
+
alterateOverlayXib:overlayXib
|
|
197
|
+
];
|
|
198
|
+
// queue [processor scanBarcode] to run on the event loop
|
|
199
|
+
|
|
200
|
+
if (preferFrontCamera) {
|
|
201
|
+
processor.isFrontCamera = true;
|
|
202
|
+
}
|
|
203
|
+
|
|
204
|
+
if (showFlipCameraButton) {
|
|
205
|
+
processor.isShowFlipCameraButton = true;
|
|
206
|
+
}
|
|
207
|
+
|
|
208
|
+
if (showTorchButton) {
|
|
209
|
+
processor.isShowTorchButton = true;
|
|
210
|
+
}
|
|
211
|
+
|
|
212
|
+
processor.isSuccessBeepEnabled = !disableSuccessBeep;
|
|
213
|
+
|
|
214
|
+
processor.isTransitionAnimated = !disableAnimations;
|
|
215
|
+
|
|
216
|
+
processor.formats = options[@"formats"];
|
|
217
|
+
|
|
218
|
+
[processor performSelector:@selector(scanBarcode) withObject:nil afterDelay:0];
|
|
219
|
+
}
|
|
220
|
+
|
|
221
|
+
//--------------------------------------------------------------------------
|
|
222
|
+
- (void)encode:(CDVInvokedUrlCommand*)command {
|
|
223
|
+
if([command.arguments count] < 1)
|
|
224
|
+
[self returnError:@"Too few arguments!" callback:command.callbackId];
|
|
225
|
+
|
|
226
|
+
CDVqrProcessor* processor;
|
|
227
|
+
NSString* callback;
|
|
228
|
+
callback = command.callbackId;
|
|
229
|
+
|
|
230
|
+
processor = [[CDVqrProcessor alloc]
|
|
231
|
+
initWithPlugin:self
|
|
232
|
+
callback:callback
|
|
233
|
+
stringToEncode: command.arguments[0][@"data"]
|
|
234
|
+
];
|
|
235
|
+
// queue [processor generateImage] to run on the event loop
|
|
236
|
+
[processor performSelector:@selector(generateImage) withObject:nil afterDelay:0];
|
|
237
|
+
}
|
|
238
|
+
|
|
239
|
+
- (void)returnImage:(NSString*)filePath format:(NSString*)format callback:(NSString*)callback{
|
|
240
|
+
NSMutableDictionary* resultDict = [[NSMutableDictionary alloc] init];
|
|
241
|
+
resultDict[@"format"] = format;
|
|
242
|
+
resultDict[@"file"] = filePath;
|
|
243
|
+
|
|
244
|
+
CDVPluginResult* result = [CDVPluginResult
|
|
245
|
+
resultWithStatus: CDVCommandStatus_OK
|
|
246
|
+
messageAsDictionary:resultDict
|
|
247
|
+
];
|
|
248
|
+
|
|
249
|
+
[[self commandDelegate] sendPluginResult:result callbackId:callback];
|
|
250
|
+
}
|
|
251
|
+
|
|
252
|
+
//--------------------------------------------------------------------------
|
|
253
|
+
- (void)returnSuccess:(NSString*)scannedText format:(NSString*)format cancelled:(BOOL)cancelled flipped:(BOOL)flipped callback:(NSString*)callback{
|
|
254
|
+
NSNumber* cancelledNumber = @(cancelled ? 1 : 0);
|
|
255
|
+
|
|
256
|
+
NSMutableDictionary* resultDict = [NSMutableDictionary new];
|
|
257
|
+
resultDict[@"text"] = scannedText;
|
|
258
|
+
resultDict[@"format"] = format;
|
|
259
|
+
resultDict[@"cancelled"] = cancelledNumber;
|
|
260
|
+
|
|
261
|
+
CDVPluginResult* result = [CDVPluginResult
|
|
262
|
+
resultWithStatus: CDVCommandStatus_OK
|
|
263
|
+
messageAsDictionary: resultDict
|
|
264
|
+
];
|
|
265
|
+
[self.commandDelegate sendPluginResult:result callbackId:callback];
|
|
266
|
+
}
|
|
267
|
+
|
|
268
|
+
//--------------------------------------------------------------------------
|
|
269
|
+
- (void)returnError:(NSString*)message callback:(NSString*)callback {
|
|
270
|
+
CDVPluginResult* result = [CDVPluginResult
|
|
271
|
+
resultWithStatus: CDVCommandStatus_ERROR
|
|
272
|
+
messageAsString: message
|
|
273
|
+
];
|
|
274
|
+
|
|
275
|
+
[self.commandDelegate sendPluginResult:result callbackId:callback];
|
|
276
|
+
}
|
|
277
|
+
|
|
278
|
+
@end
|
|
279
|
+
|
|
280
|
+
//------------------------------------------------------------------------------
|
|
281
|
+
// class that does the grunt work
|
|
282
|
+
//------------------------------------------------------------------------------
|
|
283
|
+
@implementation CDVbcsProcessor
|
|
284
|
+
|
|
285
|
+
@synthesize plugin = _plugin;
|
|
286
|
+
@synthesize callback = _callback;
|
|
287
|
+
@synthesize parentViewController = _parentViewController;
|
|
288
|
+
@synthesize viewController = _viewController;
|
|
289
|
+
@synthesize captureSession = _captureSession;
|
|
290
|
+
@synthesize previewLayer = _previewLayer;
|
|
291
|
+
@synthesize alternateXib = _alternateXib;
|
|
292
|
+
@synthesize is1D = _is1D;
|
|
293
|
+
@synthesize is2D = _is2D;
|
|
294
|
+
@synthesize capturing = _capturing;
|
|
295
|
+
@synthesize results = _results;
|
|
296
|
+
|
|
297
|
+
SystemSoundID _soundFileObject;
|
|
298
|
+
|
|
299
|
+
//--------------------------------------------------------------------------
|
|
300
|
+
- (id)initWithPlugin:(CDVBarcodeScanner*)plugin
|
|
301
|
+
callback:(NSString*)callback
|
|
302
|
+
parentViewController:(UIViewController*)parentViewController
|
|
303
|
+
alterateOverlayXib:(NSString *)alternateXib {
|
|
304
|
+
self = [super init];
|
|
305
|
+
if (!self) return self;
|
|
306
|
+
|
|
307
|
+
self.plugin = plugin;
|
|
308
|
+
self.callback = callback;
|
|
309
|
+
self.parentViewController = parentViewController;
|
|
310
|
+
self.alternateXib = alternateXib;
|
|
311
|
+
|
|
312
|
+
self.is1D = YES;
|
|
313
|
+
self.is2D = YES;
|
|
314
|
+
self.capturing = NO;
|
|
315
|
+
self.results = [NSMutableArray new];
|
|
316
|
+
|
|
317
|
+
CFURLRef soundFileURLRef = CFBundleCopyResourceURL(CFBundleGetMainBundle(), CFSTR("CDVBarcodeScanner.bundle/beep"), CFSTR ("caf"), NULL);
|
|
318
|
+
AudioServicesCreateSystemSoundID(soundFileURLRef, &_soundFileObject);
|
|
319
|
+
|
|
320
|
+
return self;
|
|
321
|
+
}
|
|
322
|
+
|
|
323
|
+
//--------------------------------------------------------------------------
|
|
324
|
+
- (void)dealloc {
|
|
325
|
+
self.plugin = nil;
|
|
326
|
+
self.callback = nil;
|
|
327
|
+
self.parentViewController = nil;
|
|
328
|
+
self.viewController = nil;
|
|
329
|
+
self.captureSession = nil;
|
|
330
|
+
self.previewLayer = nil;
|
|
331
|
+
self.alternateXib = nil;
|
|
332
|
+
self.results = nil;
|
|
333
|
+
|
|
334
|
+
self.capturing = NO;
|
|
335
|
+
|
|
336
|
+
AudioServicesRemoveSystemSoundCompletion(_soundFileObject);
|
|
337
|
+
AudioServicesDisposeSystemSoundID(_soundFileObject);
|
|
338
|
+
}
|
|
339
|
+
|
|
340
|
+
//--------------------------------------------------------------------------
|
|
341
|
+
- (void)scanBarcode {
|
|
342
|
+
|
|
343
|
+
// self.captureSession = nil;
|
|
344
|
+
// self.previewLayer = nil;
|
|
345
|
+
NSString* errorMessage = [self setUpCaptureSession];
|
|
346
|
+
if (errorMessage) {
|
|
347
|
+
[self barcodeScanFailed:errorMessage];
|
|
348
|
+
return;
|
|
349
|
+
}
|
|
350
|
+
|
|
351
|
+
self.viewController = [[CDVbcsViewController alloc] initWithProcessor: self alternateOverlay:self.alternateXib];
|
|
352
|
+
// here we set the orientation delegate to the MainViewController of the app (orientation controlled in the Project Settings)
|
|
353
|
+
self.viewController.orientationDelegate = self.plugin.viewController;
|
|
354
|
+
|
|
355
|
+
// delayed [self openDialog];
|
|
356
|
+
[self performSelector:@selector(openDialog) withObject:nil afterDelay:1];
|
|
357
|
+
}
|
|
358
|
+
|
|
359
|
+
//--------------------------------------------------------------------------
|
|
360
|
+
- (void)openDialog {
|
|
361
|
+
[self.parentViewController
|
|
362
|
+
presentViewController:self.viewController
|
|
363
|
+
animated:self.isTransitionAnimated completion:nil
|
|
364
|
+
];
|
|
365
|
+
}
|
|
366
|
+
|
|
367
|
+
//--------------------------------------------------------------------------
|
|
368
|
+
- (void)barcodeScanDone:(void (^)(void))callbackBlock {
|
|
369
|
+
self.capturing = NO;
|
|
370
|
+
[self.captureSession stopRunning];
|
|
371
|
+
[self.parentViewController dismissViewControllerAnimated:self.isTransitionAnimated completion:callbackBlock];
|
|
372
|
+
|
|
373
|
+
|
|
374
|
+
AVCaptureDevice *device = [AVCaptureDevice defaultDeviceWithMediaType:AVMediaTypeVideo];
|
|
375
|
+
[device lockForConfiguration:nil];
|
|
376
|
+
if([device isAutoFocusRangeRestrictionSupported]) {
|
|
377
|
+
[device setAutoFocusRangeRestriction:AVCaptureAutoFocusRangeRestrictionNone];
|
|
378
|
+
}
|
|
379
|
+
[device unlockForConfiguration];
|
|
380
|
+
|
|
381
|
+
// viewcontroller holding onto a reference to us, release them so they
|
|
382
|
+
// will release us
|
|
383
|
+
self.viewController = nil;
|
|
384
|
+
}
|
|
385
|
+
|
|
386
|
+
//--------------------------------------------------------------------------
|
|
387
|
+
- (BOOL)checkResult:(NSString *)result {
|
|
388
|
+
[self.results addObject:result];
|
|
389
|
+
|
|
390
|
+
NSInteger treshold = 7;
|
|
391
|
+
|
|
392
|
+
if (self.results.count > treshold) {
|
|
393
|
+
[self.results removeObjectAtIndex:0];
|
|
394
|
+
}
|
|
395
|
+
|
|
396
|
+
if (self.results.count < treshold)
|
|
397
|
+
{
|
|
398
|
+
return NO;
|
|
399
|
+
}
|
|
400
|
+
|
|
401
|
+
BOOL allEqual = YES;
|
|
402
|
+
NSString *compareString = self.results[0];
|
|
403
|
+
|
|
404
|
+
for (NSString *aResult in self.results)
|
|
405
|
+
{
|
|
406
|
+
if (![compareString isEqualToString:aResult])
|
|
407
|
+
{
|
|
408
|
+
allEqual = NO;
|
|
409
|
+
//NSLog(@"Did not fit: %@",self.results);
|
|
410
|
+
break;
|
|
411
|
+
}
|
|
412
|
+
}
|
|
413
|
+
|
|
414
|
+
return allEqual;
|
|
415
|
+
}
|
|
416
|
+
|
|
417
|
+
//--------------------------------------------------------------------------
|
|
418
|
+
- (void)barcodeScanSucceeded:(NSString*)text format:(NSString*)format {
|
|
419
|
+
dispatch_sync(dispatch_get_main_queue(), ^{
|
|
420
|
+
if (self.isSuccessBeepEnabled) {
|
|
421
|
+
AudioServicesPlaySystemSound(_soundFileObject);
|
|
422
|
+
}
|
|
423
|
+
[self barcodeScanDone:^{
|
|
424
|
+
[self.plugin returnSuccess:text format:format cancelled:FALSE flipped:FALSE callback:self.callback];
|
|
425
|
+
}];
|
|
426
|
+
});
|
|
427
|
+
}
|
|
428
|
+
|
|
429
|
+
//--------------------------------------------------------------------------
|
|
430
|
+
- (void)barcodeScanFailed:(NSString*)message {
|
|
431
|
+
dispatch_sync(dispatch_get_main_queue(), ^{
|
|
432
|
+
[self barcodeScanDone:^{
|
|
433
|
+
[self.plugin returnError:message callback:self.callback];
|
|
434
|
+
}];
|
|
435
|
+
});
|
|
436
|
+
}
|
|
437
|
+
|
|
438
|
+
//--------------------------------------------------------------------------
|
|
439
|
+
- (void)barcodeScanCancelled {
|
|
440
|
+
[self barcodeScanDone:^{
|
|
441
|
+
[self.plugin returnSuccess:@"" format:@"" cancelled:TRUE flipped:self.isFlipped callback:self.callback];
|
|
442
|
+
}];
|
|
443
|
+
if (self.isFlipped) {
|
|
444
|
+
self.isFlipped = NO;
|
|
445
|
+
}
|
|
446
|
+
}
|
|
447
|
+
|
|
448
|
+
- (void)flipCamera {
|
|
449
|
+
self.isFlipped = YES;
|
|
450
|
+
self.isFrontCamera = !self.isFrontCamera;
|
|
451
|
+
[self barcodeScanDone:^{
|
|
452
|
+
if (self.isFlipped) {
|
|
453
|
+
self.isFlipped = NO;
|
|
454
|
+
}
|
|
455
|
+
[self performSelector:@selector(scanBarcode) withObject:nil afterDelay:0.1];
|
|
456
|
+
}];
|
|
457
|
+
}
|
|
458
|
+
|
|
459
|
+
- (void)toggleTorch {
|
|
460
|
+
AVCaptureDevice *device = [AVCaptureDevice defaultDeviceWithMediaType:AVMediaTypeVideo];
|
|
461
|
+
[device lockForConfiguration:nil];
|
|
462
|
+
if (device.flashActive) {
|
|
463
|
+
[device setTorchMode:AVCaptureTorchModeOff];
|
|
464
|
+
[device setFlashMode:AVCaptureFlashModeOff];
|
|
465
|
+
} else {
|
|
466
|
+
[device setTorchModeOnWithLevel:AVCaptureMaxAvailableTorchLevel error:nil];
|
|
467
|
+
[device setFlashMode:AVCaptureFlashModeOn];
|
|
468
|
+
}
|
|
469
|
+
[device unlockForConfiguration];
|
|
470
|
+
}
|
|
471
|
+
|
|
472
|
+
//--------------------------------------------------------------------------
|
|
473
|
+
- (NSString*)setUpCaptureSession {
|
|
474
|
+
NSError* error = nil;
|
|
475
|
+
|
|
476
|
+
AVCaptureSession* captureSession = [[AVCaptureSession alloc] init];
|
|
477
|
+
self.captureSession = captureSession;
|
|
478
|
+
|
|
479
|
+
AVCaptureDevice* __block device = nil;
|
|
480
|
+
if (self.isFrontCamera) {
|
|
481
|
+
|
|
482
|
+
NSArray* devices = [AVCaptureDevice devicesWithMediaType:AVMediaTypeVideo];
|
|
483
|
+
[devices enumerateObjectsUsingBlock:^(AVCaptureDevice *obj, NSUInteger idx, BOOL *stop) {
|
|
484
|
+
if (obj.position == AVCaptureDevicePositionFront) {
|
|
485
|
+
device = obj;
|
|
486
|
+
}
|
|
487
|
+
}];
|
|
488
|
+
} else {
|
|
489
|
+
device = [AVCaptureDevice defaultDeviceWithMediaType:AVMediaTypeVideo];
|
|
490
|
+
if (!device) return @"unable to obtain video capture device";
|
|
491
|
+
|
|
492
|
+
}
|
|
493
|
+
|
|
494
|
+
// set focus params if available to improve focusing
|
|
495
|
+
[device lockForConfiguration:&error];
|
|
496
|
+
if (error == nil) {
|
|
497
|
+
if([device isFocusModeSupported:AVCaptureFocusModeContinuousAutoFocus]) {
|
|
498
|
+
[device setFocusMode:AVCaptureFocusModeContinuousAutoFocus];
|
|
499
|
+
}
|
|
500
|
+
if([device isAutoFocusRangeRestrictionSupported]) {
|
|
501
|
+
[device setAutoFocusRangeRestriction:AVCaptureAutoFocusRangeRestrictionNear];
|
|
502
|
+
}
|
|
503
|
+
}
|
|
504
|
+
[device unlockForConfiguration];
|
|
505
|
+
|
|
506
|
+
AVCaptureDeviceInput* input = [AVCaptureDeviceInput deviceInputWithDevice:device error:&error];
|
|
507
|
+
if (!input) return @"unable to obtain video capture device input";
|
|
508
|
+
|
|
509
|
+
AVCaptureMetadataOutput* output = [[AVCaptureMetadataOutput alloc] init];
|
|
510
|
+
if (!output) return @"unable to obtain video capture output";
|
|
511
|
+
|
|
512
|
+
[output setMetadataObjectsDelegate:self queue:dispatch_get_global_queue(DISPATCH_QUEUE_PRIORITY_LOW, 0)];
|
|
513
|
+
|
|
514
|
+
if ([captureSession canSetSessionPreset:AVCaptureSessionPresetHigh]) {
|
|
515
|
+
captureSession.sessionPreset = AVCaptureSessionPresetHigh;
|
|
516
|
+
} else if ([captureSession canSetSessionPreset:AVCaptureSessionPresetMedium]) {
|
|
517
|
+
captureSession.sessionPreset = AVCaptureSessionPresetMedium;
|
|
518
|
+
} else {
|
|
519
|
+
return @"unable to preset high nor medium quality video capture";
|
|
520
|
+
}
|
|
521
|
+
|
|
522
|
+
if ([captureSession canAddInput:input]) {
|
|
523
|
+
[captureSession addInput:input];
|
|
524
|
+
}
|
|
525
|
+
else {
|
|
526
|
+
return @"unable to add video capture device input to session";
|
|
527
|
+
}
|
|
528
|
+
|
|
529
|
+
if ([captureSession canAddOutput:output]) {
|
|
530
|
+
[captureSession addOutput:output];
|
|
531
|
+
}
|
|
532
|
+
else {
|
|
533
|
+
return @"unable to add video capture output to session";
|
|
534
|
+
}
|
|
535
|
+
|
|
536
|
+
[output setMetadataObjectTypes:[self formatObjectTypes]];
|
|
537
|
+
|
|
538
|
+
// setup capture preview layer
|
|
539
|
+
self.previewLayer = [AVCaptureVideoPreviewLayer layerWithSession:captureSession];
|
|
540
|
+
self.previewLayer.videoGravity = AVLayerVideoGravityResizeAspectFill;
|
|
541
|
+
|
|
542
|
+
// run on next event loop pass [captureSession startRunning]
|
|
543
|
+
[captureSession performSelector:@selector(startRunning) withObject:nil afterDelay:0];
|
|
544
|
+
|
|
545
|
+
return nil;
|
|
546
|
+
}
|
|
547
|
+
|
|
548
|
+
//--------------------------------------------------------------------------
|
|
549
|
+
// this method gets sent the captured frames
|
|
550
|
+
//--------------------------------------------------------------------------
|
|
551
|
+
- (void)captureOutput:(AVCaptureOutput*)captureOutput didOutputMetadataObjects:(NSArray *)metadataObjects fromConnection:(AVCaptureConnection*)connection {
|
|
552
|
+
|
|
553
|
+
if (!self.capturing) return;
|
|
554
|
+
|
|
555
|
+
#if USE_SHUTTER
|
|
556
|
+
if (!self.viewController.shutterPressed) return;
|
|
557
|
+
self.viewController.shutterPressed = NO;
|
|
558
|
+
|
|
559
|
+
UIView* flashView = [[UIView alloc] initWithFrame:self.viewController.view.frame];
|
|
560
|
+
[flashView setBackgroundColor:[UIColor whiteColor]];
|
|
561
|
+
[self.viewController.view.window addSubview:flashView];
|
|
562
|
+
|
|
563
|
+
[UIView
|
|
564
|
+
animateWithDuration:.4f
|
|
565
|
+
animations:^{
|
|
566
|
+
[flashView setAlpha:0.f];
|
|
567
|
+
}
|
|
568
|
+
completion:^(BOOL finished){
|
|
569
|
+
[flashView removeFromSuperview];
|
|
570
|
+
}
|
|
571
|
+
];
|
|
572
|
+
#endif
|
|
573
|
+
|
|
574
|
+
|
|
575
|
+
try {
|
|
576
|
+
// This will bring in multiple entities if there are multiple 2D codes in frame.
|
|
577
|
+
for (AVMetadataObject *metaData in metadataObjects) {
|
|
578
|
+
AVMetadataMachineReadableCodeObject* code = (AVMetadataMachineReadableCodeObject*)[self.previewLayer transformedMetadataObjectForMetadataObject:(AVMetadataMachineReadableCodeObject*)metaData];
|
|
579
|
+
|
|
580
|
+
if ([self checkResult:code.stringValue]) {
|
|
581
|
+
[self barcodeScanSucceeded:code.stringValue format:[self formatStringFromMetadata:code]];
|
|
582
|
+
}
|
|
583
|
+
}
|
|
584
|
+
}
|
|
585
|
+
catch (...) {
|
|
586
|
+
// NSLog(@"decoding: unknown exception");
|
|
587
|
+
// [self barcodeScanFailed:@"unknown exception decoding barcode"];
|
|
588
|
+
}
|
|
589
|
+
|
|
590
|
+
// NSTimeInterval timeElapsed = [NSDate timeIntervalSinceReferenceDate] - timeStart;
|
|
591
|
+
// NSLog(@"decoding completed in %dms", (int) (timeElapsed * 1000));
|
|
592
|
+
|
|
593
|
+
}
|
|
594
|
+
|
|
595
|
+
//--------------------------------------------------------------------------
|
|
596
|
+
// convert metadata object information to barcode format string
|
|
597
|
+
//--------------------------------------------------------------------------
|
|
598
|
+
- (NSString*)formatStringFromMetadata:(AVMetadataMachineReadableCodeObject*)format {
|
|
599
|
+
if (format.type == AVMetadataObjectTypeQRCode) return @"QR_CODE";
|
|
600
|
+
if (format.type == AVMetadataObjectTypeAztecCode) return @"AZTEC";
|
|
601
|
+
if (format.type == AVMetadataObjectTypeDataMatrixCode) return @"DATA_MATRIX";
|
|
602
|
+
if (format.type == AVMetadataObjectTypeUPCECode) return @"UPC_E";
|
|
603
|
+
// According to Apple documentation, UPC_A is EAN13 with a leading 0.
|
|
604
|
+
if (format.type == AVMetadataObjectTypeEAN13Code && [format.stringValue characterAtIndex:0] == '0') return @"UPC_A";
|
|
605
|
+
if (format.type == AVMetadataObjectTypeEAN8Code) return @"EAN_8";
|
|
606
|
+
if (format.type == AVMetadataObjectTypeEAN13Code) return @"EAN_13";
|
|
607
|
+
if (format.type == AVMetadataObjectTypeCode128Code) return @"CODE_128";
|
|
608
|
+
if (format.type == AVMetadataObjectTypeCode93Code) return @"CODE_93";
|
|
609
|
+
if (format.type == AVMetadataObjectTypeCode39Code) return @"CODE_39";
|
|
610
|
+
if (format.type == AVMetadataObjectTypeInterleaved2of5Code) return @"ITF";
|
|
611
|
+
if (format.type == AVMetadataObjectTypeITF14Code) return @"ITF_14";
|
|
612
|
+
|
|
613
|
+
if (format.type == AVMetadataObjectTypePDF417Code) return @"PDF_417";
|
|
614
|
+
return @"???";
|
|
615
|
+
}
|
|
616
|
+
|
|
617
|
+
//--------------------------------------------------------------------------
|
|
618
|
+
// convert string formats to metadata objects
|
|
619
|
+
//--------------------------------------------------------------------------
|
|
620
|
+
- (NSArray*) formatObjectTypes {
|
|
621
|
+
NSArray *supportedFormats = nil;
|
|
622
|
+
if (self.formats != nil) {
|
|
623
|
+
supportedFormats = [self.formats componentsSeparatedByString:@","];
|
|
624
|
+
}
|
|
625
|
+
|
|
626
|
+
NSMutableArray * formatObjectTypes = [NSMutableArray array];
|
|
627
|
+
|
|
628
|
+
if (self.formats == nil || [supportedFormats containsObject:@"QR_CODE"]) [formatObjectTypes addObject:AVMetadataObjectTypeQRCode];
|
|
629
|
+
if (self.formats == nil || [supportedFormats containsObject:@"AZTEC"]) [formatObjectTypes addObject:AVMetadataObjectTypeAztecCode];
|
|
630
|
+
if (self.formats == nil || [supportedFormats containsObject:@"DATA_MATRIX"]) [formatObjectTypes addObject:AVMetadataObjectTypeDataMatrixCode];
|
|
631
|
+
if (self.formats == nil || [supportedFormats containsObject:@"UPC_E"]) [formatObjectTypes addObject:AVMetadataObjectTypeUPCECode];
|
|
632
|
+
if (self.formats == nil || [supportedFormats containsObject:@"EAN_8"]) [formatObjectTypes addObject:AVMetadataObjectTypeEAN8Code];
|
|
633
|
+
if (self.formats == nil || [supportedFormats containsObject:@"EAN_13"]) [formatObjectTypes addObject:AVMetadataObjectTypeEAN13Code];
|
|
634
|
+
if (self.formats == nil || [supportedFormats containsObject:@"CODE_128"]) [formatObjectTypes addObject:AVMetadataObjectTypeCode128Code];
|
|
635
|
+
if (self.formats == nil || [supportedFormats containsObject:@"CODE_93"]) [formatObjectTypes addObject:AVMetadataObjectTypeCode93Code];
|
|
636
|
+
if (self.formats == nil || [supportedFormats containsObject:@"CODE_39"]) [formatObjectTypes addObject:AVMetadataObjectTypeCode39Code];
|
|
637
|
+
if (self.formats == nil || [supportedFormats containsObject:@"ITF"]) [formatObjectTypes addObject:AVMetadataObjectTypeInterleaved2of5Code];
|
|
638
|
+
if (self.formats == nil || [supportedFormats containsObject:@"ITF_14"]) [formatObjectTypes addObject:AVMetadataObjectTypeITF14Code];
|
|
639
|
+
if (self.formats == nil || [supportedFormats containsObject:@"PDF_417"]) [formatObjectTypes addObject:AVMetadataObjectTypePDF417Code];
|
|
640
|
+
|
|
641
|
+
return formatObjectTypes;
|
|
642
|
+
}
|
|
643
|
+
|
|
644
|
+
@end
|
|
645
|
+
|
|
646
|
+
//------------------------------------------------------------------------------
|
|
647
|
+
// qr encoder processor
|
|
648
|
+
//------------------------------------------------------------------------------
|
|
649
|
+
@implementation CDVqrProcessor
|
|
650
|
+
@synthesize plugin = _plugin;
|
|
651
|
+
@synthesize callback = _callback;
|
|
652
|
+
@synthesize stringToEncode = _stringToEncode;
|
|
653
|
+
@synthesize size = _size;
|
|
654
|
+
|
|
655
|
+
- (id)initWithPlugin:(CDVBarcodeScanner*)plugin callback:(NSString*)callback stringToEncode:(NSString*)stringToEncode{
|
|
656
|
+
self = [super init];
|
|
657
|
+
if (!self) return self;
|
|
658
|
+
|
|
659
|
+
self.plugin = plugin;
|
|
660
|
+
self.callback = callback;
|
|
661
|
+
self.stringToEncode = stringToEncode;
|
|
662
|
+
self.size = 300;
|
|
663
|
+
|
|
664
|
+
return self;
|
|
665
|
+
}
|
|
666
|
+
|
|
667
|
+
//--------------------------------------------------------------------------
|
|
668
|
+
- (void)dealloc {
|
|
669
|
+
self.plugin = nil;
|
|
670
|
+
self.callback = nil;
|
|
671
|
+
self.stringToEncode = nil;
|
|
672
|
+
}
|
|
673
|
+
//--------------------------------------------------------------------------
|
|
674
|
+
- (void)generateImage{
|
|
675
|
+
/* setup qr filter */
|
|
676
|
+
CIFilter *filter = [CIFilter filterWithName:@"CIQRCodeGenerator"];
|
|
677
|
+
[filter setDefaults];
|
|
678
|
+
|
|
679
|
+
/* set filter's input message
|
|
680
|
+
* the encoding string has to be convert to a UTF-8 encoded NSData object */
|
|
681
|
+
[filter setValue:[self.stringToEncode dataUsingEncoding:NSUTF8StringEncoding]
|
|
682
|
+
forKey:@"inputMessage"];
|
|
683
|
+
|
|
684
|
+
/* on ios >= 7.0 set low image error correction level */
|
|
685
|
+
if (floor(NSFoundationVersionNumber) >= NSFoundationVersionNumber_iOS_7_0)
|
|
686
|
+
[filter setValue:@"L" forKey:@"inputCorrectionLevel"];
|
|
687
|
+
|
|
688
|
+
/* prepare cgImage */
|
|
689
|
+
CIImage *outputImage = [filter outputImage];
|
|
690
|
+
CIContext *context = [CIContext contextWithOptions:nil];
|
|
691
|
+
CGImageRef cgImage = [context createCGImage:outputImage
|
|
692
|
+
fromRect:[outputImage extent]];
|
|
693
|
+
|
|
694
|
+
/* returned qr code image */
|
|
695
|
+
UIImage *qrImage = [UIImage imageWithCGImage:cgImage
|
|
696
|
+
scale:1.
|
|
697
|
+
orientation:UIImageOrientationUp];
|
|
698
|
+
/* resize generated image */
|
|
699
|
+
CGFloat width = _size;
|
|
700
|
+
CGFloat height = _size;
|
|
701
|
+
|
|
702
|
+
UIGraphicsBeginImageContext(CGSizeMake(width, height));
|
|
703
|
+
|
|
704
|
+
CGContextRef ctx = UIGraphicsGetCurrentContext();
|
|
705
|
+
CGContextSetInterpolationQuality(ctx, kCGInterpolationNone);
|
|
706
|
+
[qrImage drawInRect:CGRectMake(0, 0, width, height)];
|
|
707
|
+
qrImage = UIGraphicsGetImageFromCurrentImageContext();
|
|
708
|
+
|
|
709
|
+
/* clean up */
|
|
710
|
+
UIGraphicsEndImageContext();
|
|
711
|
+
CGImageRelease(cgImage);
|
|
712
|
+
|
|
713
|
+
/* save image to file */
|
|
714
|
+
NSString* fileName = [[[NSProcessInfo processInfo] globallyUniqueString] stringByAppendingString:@".jpg"];
|
|
715
|
+
NSString* filePath = [NSTemporaryDirectory() stringByAppendingPathComponent:fileName];
|
|
716
|
+
[UIImageJPEGRepresentation(qrImage, 1.0) writeToFile:filePath atomically:YES];
|
|
717
|
+
|
|
718
|
+
/* return file path back to cordova */
|
|
719
|
+
[self.plugin returnImage:filePath format:@"QR_CODE" callback: self.callback];
|
|
720
|
+
}
|
|
721
|
+
@end
|
|
722
|
+
|
|
723
|
+
//------------------------------------------------------------------------------
|
|
724
|
+
// view controller for the ui
|
|
725
|
+
//------------------------------------------------------------------------------
|
|
726
|
+
@implementation CDVbcsViewController
|
|
727
|
+
@synthesize processor = _processor;
|
|
728
|
+
@synthesize shutterPressed = _shutterPressed;
|
|
729
|
+
@synthesize alternateXib = _alternateXib;
|
|
730
|
+
@synthesize overlayView = _overlayView;
|
|
731
|
+
|
|
732
|
+
//--------------------------------------------------------------------------
|
|
733
|
+
- (id)initWithProcessor:(CDVbcsProcessor*)processor alternateOverlay:(NSString *)alternateXib {
|
|
734
|
+
self = [super init];
|
|
735
|
+
if (!self) return self;
|
|
736
|
+
|
|
737
|
+
self.processor = processor;
|
|
738
|
+
self.shutterPressed = NO;
|
|
739
|
+
self.alternateXib = alternateXib;
|
|
740
|
+
self.overlayView = nil;
|
|
741
|
+
return self;
|
|
742
|
+
}
|
|
743
|
+
|
|
744
|
+
//--------------------------------------------------------------------------
|
|
745
|
+
- (void)dealloc {
|
|
746
|
+
self.view = nil;
|
|
747
|
+
self.processor = nil;
|
|
748
|
+
self.shutterPressed = NO;
|
|
749
|
+
self.alternateXib = nil;
|
|
750
|
+
self.overlayView = nil;
|
|
751
|
+
}
|
|
752
|
+
|
|
753
|
+
//--------------------------------------------------------------------------
|
|
754
|
+
- (void)loadView {
|
|
755
|
+
self.view = [[UIView alloc] initWithFrame: self.processor.parentViewController.view.frame];
|
|
756
|
+
}
|
|
757
|
+
|
|
758
|
+
//--------------------------------------------------------------------------
|
|
759
|
+
- (void)viewWillAppear:(BOOL)animated {
|
|
760
|
+
|
|
761
|
+
// set video orientation to what the camera sees
|
|
762
|
+
self.processor.previewLayer.connection.videoOrientation = [self interfaceOrientationToVideoOrientation:[UIApplication sharedApplication].statusBarOrientation];
|
|
763
|
+
|
|
764
|
+
// this fixes the bug when the statusbar is landscape, and the preview layer
|
|
765
|
+
// starts up in portrait (not filling the whole view)
|
|
766
|
+
self.processor.previewLayer.frame = self.view.bounds;
|
|
767
|
+
}
|
|
768
|
+
|
|
769
|
+
//--------------------------------------------------------------------------
|
|
770
|
+
- (void)viewDidAppear:(BOOL)animated {
|
|
771
|
+
// setup capture preview layer
|
|
772
|
+
AVCaptureVideoPreviewLayer* previewLayer = self.processor.previewLayer;
|
|
773
|
+
previewLayer.frame = self.view.bounds;
|
|
774
|
+
previewLayer.videoGravity = AVLayerVideoGravityResizeAspectFill;
|
|
775
|
+
|
|
776
|
+
if ([previewLayer.connection isVideoOrientationSupported]) {
|
|
777
|
+
previewLayer.connection.videoOrientation = [self interfaceOrientationToVideoOrientation:[UIApplication sharedApplication].statusBarOrientation];
|
|
778
|
+
}
|
|
779
|
+
|
|
780
|
+
[self.view.layer insertSublayer:previewLayer below:[[self.view.layer sublayers] objectAtIndex:0]];
|
|
781
|
+
|
|
782
|
+
[self.view addSubview:[self buildOverlayView]];
|
|
783
|
+
[self startCapturing];
|
|
784
|
+
|
|
785
|
+
[super viewDidAppear:animated];
|
|
786
|
+
}
|
|
787
|
+
|
|
788
|
+
- (AVCaptureVideoOrientation)interfaceOrientationToVideoOrientation:(UIInterfaceOrientation)orientation {
|
|
789
|
+
switch (orientation) {
|
|
790
|
+
case UIInterfaceOrientationPortrait:
|
|
791
|
+
return AVCaptureVideoOrientationPortrait;
|
|
792
|
+
case UIInterfaceOrientationPortraitUpsideDown:
|
|
793
|
+
return AVCaptureVideoOrientationPortraitUpsideDown;
|
|
794
|
+
case UIInterfaceOrientationLandscapeLeft:
|
|
795
|
+
return AVCaptureVideoOrientationLandscapeLeft;
|
|
796
|
+
case UIInterfaceOrientationLandscapeRight:
|
|
797
|
+
return AVCaptureVideoOrientationLandscapeRight;
|
|
798
|
+
default:
|
|
799
|
+
return AVCaptureVideoOrientationPortrait;
|
|
800
|
+
}
|
|
801
|
+
}
|
|
802
|
+
|
|
803
|
+
//--------------------------------------------------------------------------
|
|
804
|
+
- (void)startCapturing {
|
|
805
|
+
self.processor.capturing = YES;
|
|
806
|
+
}
|
|
807
|
+
|
|
808
|
+
//--------------------------------------------------------------------------
|
|
809
|
+
- (IBAction)shutterButtonPressed {
|
|
810
|
+
self.shutterPressed = YES;
|
|
811
|
+
}
|
|
812
|
+
|
|
813
|
+
//--------------------------------------------------------------------------
|
|
814
|
+
- (IBAction)cancelButtonPressed:(id)sender {
|
|
815
|
+
[self.processor performSelector:@selector(barcodeScanCancelled) withObject:nil afterDelay:0];
|
|
816
|
+
}
|
|
817
|
+
|
|
818
|
+
- (IBAction)flipCameraButtonPressed:(id)sender
|
|
819
|
+
{
|
|
820
|
+
[self.processor performSelector:@selector(flipCamera) withObject:nil afterDelay:0];
|
|
821
|
+
}
|
|
822
|
+
|
|
823
|
+
- (IBAction)torchButtonPressed:(id)sender
|
|
824
|
+
{
|
|
825
|
+
[self.processor performSelector:@selector(toggleTorch) withObject:nil afterDelay:0];
|
|
826
|
+
}
|
|
827
|
+
|
|
828
|
+
//--------------------------------------------------------------------------
|
|
829
|
+
- (UIView *)buildOverlayViewFromXib
|
|
830
|
+
{
|
|
831
|
+
[[NSBundle mainBundle] loadNibNamed:self.alternateXib owner:self options:NULL];
|
|
832
|
+
|
|
833
|
+
if ( self.overlayView == nil )
|
|
834
|
+
{
|
|
835
|
+
NSLog(@"%@", @"An error occurred loading the overlay xib. It appears that the overlayView outlet is not set.");
|
|
836
|
+
return nil;
|
|
837
|
+
}
|
|
838
|
+
|
|
839
|
+
self.overlayView.autoresizesSubviews = YES;
|
|
840
|
+
self.overlayView.autoresizingMask = UIViewAutoresizingFlexibleWidth | UIViewAutoresizingFlexibleHeight;
|
|
841
|
+
self.overlayView.opaque = NO;
|
|
842
|
+
|
|
843
|
+
CGRect bounds = self.view.bounds;
|
|
844
|
+
bounds = CGRectMake(0, 0, bounds.size.width, bounds.size.height);
|
|
845
|
+
|
|
846
|
+
[self.overlayView setFrame:bounds];
|
|
847
|
+
|
|
848
|
+
return self.overlayView;
|
|
849
|
+
}
|
|
850
|
+
|
|
851
|
+
//--------------------------------------------------------------------------
|
|
852
|
+
- (UIView*)buildOverlayView {
|
|
853
|
+
|
|
854
|
+
if ( nil != self.alternateXib )
|
|
855
|
+
{
|
|
856
|
+
return [self buildOverlayViewFromXib];
|
|
857
|
+
}
|
|
858
|
+
CGRect bounds = self.view.frame;
|
|
859
|
+
bounds = CGRectMake(0, 0, bounds.size.width, bounds.size.height);
|
|
860
|
+
|
|
861
|
+
UIView* overlayView = [[UIView alloc] initWithFrame:bounds];
|
|
862
|
+
overlayView.autoresizesSubviews = YES;
|
|
863
|
+
overlayView.autoresizingMask = UIViewAutoresizingFlexibleWidth | UIViewAutoresizingFlexibleHeight;
|
|
864
|
+
overlayView.opaque = NO;
|
|
865
|
+
|
|
866
|
+
self.toolbar = [[UIToolbar alloc] init];
|
|
867
|
+
self.toolbar.autoresizingMask = UIViewAutoresizingFlexibleWidth;
|
|
868
|
+
|
|
869
|
+
id cancelButton = [[UIBarButtonItem alloc]
|
|
870
|
+
initWithBarButtonSystemItem:UIBarButtonSystemItemCancel
|
|
871
|
+
target:(id)self
|
|
872
|
+
action:@selector(cancelButtonPressed:)
|
|
873
|
+
];
|
|
874
|
+
|
|
875
|
+
|
|
876
|
+
id flexSpace = [[UIBarButtonItem alloc]
|
|
877
|
+
initWithBarButtonSystemItem:UIBarButtonSystemItemFlexibleSpace
|
|
878
|
+
target:nil
|
|
879
|
+
action:nil
|
|
880
|
+
];
|
|
881
|
+
|
|
882
|
+
id flipCamera = [[UIBarButtonItem alloc]
|
|
883
|
+
initWithBarButtonSystemItem:UIBarButtonSystemItemCamera
|
|
884
|
+
target:(id)self
|
|
885
|
+
action:@selector(flipCameraButtonPressed:)
|
|
886
|
+
];
|
|
887
|
+
|
|
888
|
+
NSMutableArray *items;
|
|
889
|
+
|
|
890
|
+
#if USE_SHUTTER
|
|
891
|
+
id shutterButton = [[UIBarButtonItem alloc]
|
|
892
|
+
initWithBarButtonSystemItem:UIBarButtonSystemItemCamera
|
|
893
|
+
target:(id)self
|
|
894
|
+
action:@selector(shutterButtonPressed)
|
|
895
|
+
];
|
|
896
|
+
|
|
897
|
+
if (_processor.isShowFlipCameraButton) {
|
|
898
|
+
items = [NSMutableArray arrayWithObjects:flexSpace, cancelButton, flexSpace, flipCamera, shutterButton, nil];
|
|
899
|
+
} else {
|
|
900
|
+
items = [NSMutableArray arrayWithObjects:flexSpace, cancelButton, flexSpace, shutterButton, nil];
|
|
901
|
+
}
|
|
902
|
+
#else
|
|
903
|
+
if (_processor.isShowFlipCameraButton) {
|
|
904
|
+
items = [@[flexSpace, cancelButton, flexSpace, flipCamera] mutableCopy];
|
|
905
|
+
} else {
|
|
906
|
+
items = [@[flexSpace, cancelButton, flexSpace] mutableCopy];
|
|
907
|
+
}
|
|
908
|
+
#endif
|
|
909
|
+
|
|
910
|
+
if (_processor.isShowTorchButton && !_processor.isFrontCamera) {
|
|
911
|
+
AVCaptureDevice *device = [AVCaptureDevice defaultDeviceWithMediaType:AVMediaTypeVideo];
|
|
912
|
+
if ([device hasTorch] && [device hasFlash]) {
|
|
913
|
+
NSURL *bundleURL = [[NSBundle mainBundle] URLForResource:@"CDVBarcodeScanner" withExtension:@"bundle"];
|
|
914
|
+
NSBundle *bundle = [NSBundle bundleWithURL:bundleURL];
|
|
915
|
+
NSString *imagePath = [bundle pathForResource:@"torch" ofType:@"png"];
|
|
916
|
+
UIImage *image = [UIImage imageWithContentsOfFile:imagePath];
|
|
917
|
+
|
|
918
|
+
id torchButton = [[UIBarButtonItem alloc]
|
|
919
|
+
initWithImage:image
|
|
920
|
+
style:UIBarButtonItemStylePlain
|
|
921
|
+
target:(id)self
|
|
922
|
+
action:@selector(torchButtonPressed:)
|
|
923
|
+
];
|
|
924
|
+
|
|
925
|
+
[items insertObject:torchButton atIndex:0];
|
|
926
|
+
}
|
|
927
|
+
}
|
|
928
|
+
self.toolbar.items = items;
|
|
929
|
+
[overlayView addSubview: self.toolbar];
|
|
930
|
+
|
|
931
|
+
UIImage* reticleImage = [self buildReticleImage];
|
|
932
|
+
self.reticleView = [[UIImageView alloc] initWithImage:reticleImage];
|
|
933
|
+
|
|
934
|
+
self.reticleView.opaque = NO;
|
|
935
|
+
self.reticleView.contentMode = UIViewContentModeScaleAspectFit;
|
|
936
|
+
self.reticleView.autoresizingMask = (UIViewAutoresizing) (0
|
|
937
|
+
| UIViewAutoresizingFlexibleLeftMargin
|
|
938
|
+
| UIViewAutoresizingFlexibleRightMargin
|
|
939
|
+
| UIViewAutoresizingFlexibleTopMargin
|
|
940
|
+
| UIViewAutoresizingFlexibleBottomMargin)
|
|
941
|
+
;
|
|
942
|
+
|
|
943
|
+
[overlayView addSubview: self.reticleView];
|
|
944
|
+
[self resizeElements];
|
|
945
|
+
return overlayView;
|
|
946
|
+
}
|
|
947
|
+
|
|
948
|
+
//--------------------------------------------------------------------------
|
|
949
|
+
|
|
950
|
+
#define RETICLE_SIZE 500.0f
|
|
951
|
+
#define RETICLE_WIDTH 10.0f
|
|
952
|
+
#define RETICLE_OFFSET 60.0f
|
|
953
|
+
#define RETICLE_ALPHA 0.4f
|
|
954
|
+
|
|
955
|
+
//-------------------------------------------------------------------------
|
|
956
|
+
// builds the green box and red line
|
|
957
|
+
//-------------------------------------------------------------------------
|
|
958
|
+
- (UIImage*)buildReticleImage {
|
|
959
|
+
UIImage* result;
|
|
960
|
+
UIGraphicsBeginImageContext(CGSizeMake(RETICLE_SIZE, RETICLE_SIZE));
|
|
961
|
+
CGContextRef context = UIGraphicsGetCurrentContext();
|
|
962
|
+
|
|
963
|
+
if (self.processor.is1D) {
|
|
964
|
+
UIColor* color = [UIColor colorWithRed:1.0 green:0.0 blue:0.0 alpha:RETICLE_ALPHA];
|
|
965
|
+
CGContextSetStrokeColorWithColor(context, color.CGColor);
|
|
966
|
+
CGContextSetLineWidth(context, RETICLE_WIDTH);
|
|
967
|
+
CGContextBeginPath(context);
|
|
968
|
+
CGFloat lineOffset = (CGFloat) (RETICLE_OFFSET+(0.5*RETICLE_WIDTH));
|
|
969
|
+
CGContextMoveToPoint(context, lineOffset, RETICLE_SIZE/2);
|
|
970
|
+
CGContextAddLineToPoint(context, RETICLE_SIZE-lineOffset, (CGFloat) (0.5*RETICLE_SIZE));
|
|
971
|
+
CGContextStrokePath(context);
|
|
972
|
+
}
|
|
973
|
+
|
|
974
|
+
if (self.processor.is2D) {
|
|
975
|
+
UIColor* color = [UIColor colorWithRed:0.0 green:1.0 blue:0.0 alpha:RETICLE_ALPHA];
|
|
976
|
+
CGContextSetStrokeColorWithColor(context, color.CGColor);
|
|
977
|
+
CGContextSetLineWidth(context, RETICLE_WIDTH);
|
|
978
|
+
CGContextStrokeRect(context,
|
|
979
|
+
CGRectMake(
|
|
980
|
+
RETICLE_OFFSET,
|
|
981
|
+
RETICLE_OFFSET,
|
|
982
|
+
RETICLE_SIZE-2*RETICLE_OFFSET,
|
|
983
|
+
RETICLE_SIZE-2*RETICLE_OFFSET
|
|
984
|
+
)
|
|
985
|
+
);
|
|
986
|
+
}
|
|
987
|
+
|
|
988
|
+
result = UIGraphicsGetImageFromCurrentImageContext();
|
|
989
|
+
UIGraphicsEndImageContext();
|
|
990
|
+
return result;
|
|
991
|
+
}
|
|
992
|
+
|
|
993
|
+
#pragma mark CDVBarcodeScannerOrientationDelegate
|
|
994
|
+
|
|
995
|
+
- (BOOL)shouldAutorotate
|
|
996
|
+
{
|
|
997
|
+
return YES;
|
|
998
|
+
}
|
|
999
|
+
|
|
1000
|
+
- (UIInterfaceOrientation)preferredInterfaceOrientationForPresentation
|
|
1001
|
+
{
|
|
1002
|
+
return [[UIApplication sharedApplication] statusBarOrientation];
|
|
1003
|
+
}
|
|
1004
|
+
|
|
1005
|
+
- (NSUInteger)supportedInterfaceOrientations
|
|
1006
|
+
{
|
|
1007
|
+
return UIInterfaceOrientationMaskAll;
|
|
1008
|
+
}
|
|
1009
|
+
|
|
1010
|
+
- (BOOL)shouldAutorotateToInterfaceOrientation:(UIInterfaceOrientation)interfaceOrientation
|
|
1011
|
+
{
|
|
1012
|
+
if ((self.orientationDelegate != nil) && [self.orientationDelegate respondsToSelector:@selector(shouldAutorotateToInterfaceOrientation:)]) {
|
|
1013
|
+
return [self.orientationDelegate shouldAutorotateToInterfaceOrientation:interfaceOrientation];
|
|
1014
|
+
}
|
|
1015
|
+
|
|
1016
|
+
return YES;
|
|
1017
|
+
}
|
|
1018
|
+
|
|
1019
|
+
- (void) willAnimateRotationToInterfaceOrientation:(UIInterfaceOrientation)orientation duration:(NSTimeInterval)duration
|
|
1020
|
+
{
|
|
1021
|
+
[UIView setAnimationsEnabled:NO];
|
|
1022
|
+
AVCaptureVideoPreviewLayer* previewLayer = self.processor.previewLayer;
|
|
1023
|
+
previewLayer.frame = self.view.bounds;
|
|
1024
|
+
|
|
1025
|
+
if (orientation == UIInterfaceOrientationLandscapeLeft) {
|
|
1026
|
+
[previewLayer setOrientation:AVCaptureVideoOrientationLandscapeLeft];
|
|
1027
|
+
} else if (orientation == UIInterfaceOrientationLandscapeRight) {
|
|
1028
|
+
[previewLayer setOrientation:AVCaptureVideoOrientationLandscapeRight];
|
|
1029
|
+
} else if (orientation == UIInterfaceOrientationPortrait) {
|
|
1030
|
+
[previewLayer setOrientation:AVCaptureVideoOrientationPortrait];
|
|
1031
|
+
} else if (orientation == UIInterfaceOrientationPortraitUpsideDown) {
|
|
1032
|
+
[previewLayer setOrientation:AVCaptureVideoOrientationPortraitUpsideDown];
|
|
1033
|
+
}
|
|
1034
|
+
|
|
1035
|
+
previewLayer.videoGravity = AVLayerVideoGravityResizeAspectFill;
|
|
1036
|
+
|
|
1037
|
+
[self resizeElements];
|
|
1038
|
+
[UIView setAnimationsEnabled:YES];
|
|
1039
|
+
}
|
|
1040
|
+
|
|
1041
|
+
-(void) resizeElements {
|
|
1042
|
+
CGRect bounds = self.view.bounds;
|
|
1043
|
+
if (@available(iOS 11.0, *)) {
|
|
1044
|
+
bounds = CGRectMake(bounds.origin.x, bounds.origin.y, bounds.size.width, self.view.safeAreaLayoutGuide.layoutFrame.size.height+self.view.safeAreaLayoutGuide.layoutFrame.origin.y);
|
|
1045
|
+
}
|
|
1046
|
+
|
|
1047
|
+
[self.toolbar sizeToFit];
|
|
1048
|
+
CGFloat toolbarHeight = [self.toolbar frame].size.height;
|
|
1049
|
+
CGFloat rootViewHeight = CGRectGetHeight(bounds);
|
|
1050
|
+
CGFloat rootViewWidth = CGRectGetWidth(bounds);
|
|
1051
|
+
CGRect rectArea = CGRectMake(0, rootViewHeight - toolbarHeight, rootViewWidth, toolbarHeight);
|
|
1052
|
+
[self.toolbar setFrame:rectArea];
|
|
1053
|
+
|
|
1054
|
+
CGFloat minAxis = MIN(rootViewHeight, rootViewWidth);
|
|
1055
|
+
|
|
1056
|
+
rectArea = CGRectMake(
|
|
1057
|
+
(CGFloat) (0.5 * (rootViewWidth - minAxis)),
|
|
1058
|
+
(CGFloat) (0.5 * (rootViewHeight - minAxis)),
|
|
1059
|
+
minAxis,
|
|
1060
|
+
minAxis
|
|
1061
|
+
);
|
|
1062
|
+
|
|
1063
|
+
[self.reticleView setFrame:rectArea];
|
|
1064
|
+
self.reticleView.center = CGPointMake(self.view.center.x, self.view.center.y-self.toolbar.frame.size.height/2);
|
|
1065
|
+
}
|
|
1066
|
+
|
|
1067
|
+
@end
|