react-native-nitro-zxing 0.1.0-alpha.0
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/README.md +34 -0
- package/VisionCameraZxing.podspec +48 -0
- package/android/CMakeLists.txt +43 -0
- package/android/build.gradle +150 -0
- package/android/fix-prefab.gradle +51 -0
- package/android/gradle.properties +5 -0
- package/android/src/main/AndroidManifest.xml +3 -0
- package/android/src/main/cpp/cpp-adapter.cpp +7 -0
- package/android/src/main/java/com/margelo/nitro/camera/zxing/VisionCameraZxingPackage.kt +21 -0
- package/cpp/BarcodeValueTypeClassifier.cpp +70 -0
- package/cpp/BarcodeValueTypeClassifier.hpp +14 -0
- package/cpp/FrameImageView.cpp +75 -0
- package/cpp/FrameImageView.hpp +34 -0
- package/cpp/HybridBarcode.cpp +59 -0
- package/cpp/HybridBarcode.hpp +26 -0
- package/cpp/HybridBarcodeScanner.cpp +121 -0
- package/cpp/HybridBarcodeScanner.hpp +26 -0
- package/cpp/HybridBarcodeScannerFactory.cpp +11 -0
- package/cpp/HybridBarcodeScannerFactory.hpp +14 -0
- package/cpp/ImageDownscaler.cpp +34 -0
- package/cpp/ImageDownscaler.hpp +21 -0
- package/cpp/ZXingDecoder.cpp +189 -0
- package/cpp/ZXingDecoder.hpp +72 -0
- package/cpp/zxing-core/LICENSE +202 -0
- package/cpp/zxing-core/README.md +156 -0
- package/cpp/zxing-core/core/CMakeLists.txt +784 -0
- package/cpp/zxing-core/core/Version.h.in +28 -0
- package/cpp/zxing-core/core/ZXingConfig.cmake.in +9 -0
- package/cpp/zxing-core/core/src/Barcode.cpp +255 -0
- package/cpp/zxing-core/core/src/Barcode.h +191 -0
- package/cpp/zxing-core/core/src/BarcodeData.h +100 -0
- package/cpp/zxing-core/core/src/BarcodeFormat.cpp +286 -0
- package/cpp/zxing-core/core/src/BarcodeFormat.h +272 -0
- package/cpp/zxing-core/core/src/BinaryBitmap.cpp +111 -0
- package/cpp/zxing-core/core/src/BinaryBitmap.h +66 -0
- package/cpp/zxing-core/core/src/BitArray.cpp +38 -0
- package/cpp/zxing-core/core/src/BitArray.h +181 -0
- package/cpp/zxing-core/core/src/BitMatrix.cpp +175 -0
- package/cpp/zxing-core/core/src/BitMatrix.h +199 -0
- package/cpp/zxing-core/core/src/BitMatrixCursor.h +253 -0
- package/cpp/zxing-core/core/src/BitMatrixIO.cpp +101 -0
- package/cpp/zxing-core/core/src/BitMatrixIO.h +21 -0
- package/cpp/zxing-core/core/src/BitSource.cpp +77 -0
- package/cpp/zxing-core/core/src/BitSource.h +72 -0
- package/cpp/zxing-core/core/src/ByteArray.h +42 -0
- package/cpp/zxing-core/core/src/CharacterSet.cpp +78 -0
- package/cpp/zxing-core/core/src/CharacterSet.h +58 -0
- package/cpp/zxing-core/core/src/ConcentricFinder.cpp +312 -0
- package/cpp/zxing-core/core/src/ConcentricFinder.h +156 -0
- package/cpp/zxing-core/core/src/Content.cpp +471 -0
- package/cpp/zxing-core/core/src/Content.h +82 -0
- package/cpp/zxing-core/core/src/ContentType.h +19 -0
- package/cpp/zxing-core/core/src/CreateBarcode.cpp +490 -0
- package/cpp/zxing-core/core/src/CreateBarcode.h +132 -0
- package/cpp/zxing-core/core/src/DecoderResult.h +92 -0
- package/cpp/zxing-core/core/src/DetectorResult.h +44 -0
- package/cpp/zxing-core/core/src/ECI.cpp +81 -0
- package/cpp/zxing-core/core/src/ECI.h +78 -0
- package/cpp/zxing-core/core/src/Error.cpp +29 -0
- package/cpp/zxing-core/core/src/Error.h +79 -0
- package/cpp/zxing-core/core/src/Flags.h +165 -0
- package/cpp/zxing-core/core/src/GTIN.cpp +253 -0
- package/cpp/zxing-core/core/src/GTIN.h +58 -0
- package/cpp/zxing-core/core/src/GlobalHistogramBinarizer.cpp +197 -0
- package/cpp/zxing-core/core/src/GlobalHistogramBinarizer.h +34 -0
- package/cpp/zxing-core/core/src/GridSampler.cpp +124 -0
- package/cpp/zxing-core/core/src/GridSampler.h +59 -0
- package/cpp/zxing-core/core/src/HRI.cpp +343 -0
- package/cpp/zxing-core/core/src/HRI.h +16 -0
- package/cpp/zxing-core/core/src/HybridBinarizer.cpp +315 -0
- package/cpp/zxing-core/core/src/HybridBinarizer.h +40 -0
- package/cpp/zxing-core/core/src/ImageView.h +168 -0
- package/cpp/zxing-core/core/src/JSON.cpp +154 -0
- package/cpp/zxing-core/core/src/JSON.h +66 -0
- package/cpp/zxing-core/core/src/LocalGrid.cpp +242 -0
- package/cpp/zxing-core/core/src/LocalGrid.h +91 -0
- package/cpp/zxing-core/core/src/LogMatrix.h +105 -0
- package/cpp/zxing-core/core/src/Matrix.h +125 -0
- package/cpp/zxing-core/core/src/MultiFormatReader.cpp +107 -0
- package/cpp/zxing-core/core/src/MultiFormatReader.h +34 -0
- package/cpp/zxing-core/core/src/MultiFormatWriter.cpp +111 -0
- package/cpp/zxing-core/core/src/MultiFormatWriter.h +62 -0
- package/cpp/zxing-core/core/src/Pattern.h +472 -0
- package/cpp/zxing-core/core/src/PerspectiveTransform.cpp +81 -0
- package/cpp/zxing-core/core/src/PerspectiveTransform.h +47 -0
- package/cpp/zxing-core/core/src/Point.h +185 -0
- package/cpp/zxing-core/core/src/Quadrilateral.h +215 -0
- package/cpp/zxing-core/core/src/Range.h +112 -0
- package/cpp/zxing-core/core/src/ReadBarcode.cpp +335 -0
- package/cpp/zxing-core/core/src/ReadBarcode.h +33 -0
- package/cpp/zxing-core/core/src/Reader.h +32 -0
- package/cpp/zxing-core/core/src/ReaderOptions.h +210 -0
- package/cpp/zxing-core/core/src/ReedSolomon.cpp +100 -0
- package/cpp/zxing-core/core/src/ReedSolomon.h +66 -0
- package/cpp/zxing-core/core/src/RegressionLine.h +161 -0
- package/cpp/zxing-core/core/src/ResultPoint.cpp +20 -0
- package/cpp/zxing-core/core/src/ResultPoint.h +35 -0
- package/cpp/zxing-core/core/src/StdGenerator.h +121 -0
- package/cpp/zxing-core/core/src/StdPrint.h +38 -0
- package/cpp/zxing-core/core/src/StdScope.h +55 -0
- package/cpp/zxing-core/core/src/StructuredAppend.h +19 -0
- package/cpp/zxing-core/core/src/SymbologyIdentifier.h +29 -0
- package/cpp/zxing-core/core/src/TextDecoder.cpp +59 -0
- package/cpp/zxing-core/core/src/TextDecoder.h +23 -0
- package/cpp/zxing-core/core/src/TextEncoder.cpp +75 -0
- package/cpp/zxing-core/core/src/TextEncoder.h +31 -0
- package/cpp/zxing-core/core/src/ThresholdBinarizer.h +58 -0
- package/cpp/zxing-core/core/src/TritMatrix.h +29 -0
- package/cpp/zxing-core/core/src/Utf.cpp +276 -0
- package/cpp/zxing-core/core/src/Utf.h +26 -0
- package/cpp/zxing-core/core/src/WhiteRectDetector.cpp +276 -0
- package/cpp/zxing-core/core/src/WhiteRectDetector.h +36 -0
- package/cpp/zxing-core/core/src/WriteBarcode.cpp +213 -0
- package/cpp/zxing-core/core/src/WriteBarcode.h +72 -0
- package/cpp/zxing-core/core/src/ZXAlgorithms.h +353 -0
- package/cpp/zxing-core/core/src/ZXConfig.h +17 -0
- package/cpp/zxing-core/core/src/ZXTestSupport.h +9 -0
- package/cpp/zxing-core/core/src/ZXVersion.h +14 -0
- package/cpp/zxing-core/core/src/ZXingC.cpp +460 -0
- package/cpp/zxing-core/core/src/ZXingC.h +296 -0
- package/cpp/zxing-core/core/src/ZXingCpp.cpp +18 -0
- package/cpp/zxing-core/core/src/ZXingCpp.h +76 -0
- package/cpp/zxing-core/core/src/ZXingQt.h +606 -0
- package/cpp/zxing-core/core/src/aztec/AZDecoder.cpp +376 -0
- package/cpp/zxing-core/core/src/aztec/AZDecoder.h +20 -0
- package/cpp/zxing-core/core/src/aztec/AZDetector.cpp +508 -0
- package/cpp/zxing-core/core/src/aztec/AZDetector.h +25 -0
- package/cpp/zxing-core/core/src/aztec/AZDetectorResult.h +51 -0
- package/cpp/zxing-core/core/src/aztec/AZEncoder.cpp +318 -0
- package/cpp/zxing-core/core/src/aztec/AZEncoder.h +44 -0
- package/cpp/zxing-core/core/src/aztec/AZEncodingState.h +40 -0
- package/cpp/zxing-core/core/src/aztec/AZHighLevelEncoder.cpp +377 -0
- package/cpp/zxing-core/core/src/aztec/AZHighLevelEncoder.h +36 -0
- package/cpp/zxing-core/core/src/aztec/AZReader.cpp +45 -0
- package/cpp/zxing-core/core/src/aztec/AZReader.h +21 -0
- package/cpp/zxing-core/core/src/aztec/AZToken.cpp +44 -0
- package/cpp/zxing-core/core/src/aztec/AZToken.h +39 -0
- package/cpp/zxing-core/core/src/aztec/AZWriter.cpp +38 -0
- package/cpp/zxing-core/core/src/aztec/AZWriter.h +55 -0
- package/cpp/zxing-core/core/src/datamatrix/DMBitLayout.cpp +194 -0
- package/cpp/zxing-core/core/src/datamatrix/DMBitLayout.h +21 -0
- package/cpp/zxing-core/core/src/datamatrix/DMDataBlock.cpp +63 -0
- package/cpp/zxing-core/core/src/datamatrix/DMDataBlock.h +41 -0
- package/cpp/zxing-core/core/src/datamatrix/DMDecoder.cpp +457 -0
- package/cpp/zxing-core/core/src/datamatrix/DMDecoder.h +19 -0
- package/cpp/zxing-core/core/src/datamatrix/DMDetector.cpp +1230 -0
- package/cpp/zxing-core/core/src/datamatrix/DMDetector.h +23 -0
- package/cpp/zxing-core/core/src/datamatrix/DMECEncoder.cpp +137 -0
- package/cpp/zxing-core/core/src/datamatrix/DMECEncoder.h +26 -0
- package/cpp/zxing-core/core/src/datamatrix/DMEncoderContext.h +128 -0
- package/cpp/zxing-core/core/src/datamatrix/DMHighLevelEncoder.cpp +919 -0
- package/cpp/zxing-core/core/src/datamatrix/DMHighLevelEncoder.h +29 -0
- package/cpp/zxing-core/core/src/datamatrix/DMReader.cpp +40 -0
- package/cpp/zxing-core/core/src/datamatrix/DMReader.h +21 -0
- package/cpp/zxing-core/core/src/datamatrix/DMSymbolInfo.cpp +141 -0
- package/cpp/zxing-core/core/src/datamatrix/DMSymbolInfo.h +78 -0
- package/cpp/zxing-core/core/src/datamatrix/DMSymbolShape.h +17 -0
- package/cpp/zxing-core/core/src/datamatrix/DMVersion.cpp +82 -0
- package/cpp/zxing-core/core/src/datamatrix/DMVersion.h +76 -0
- package/cpp/zxing-core/core/src/datamatrix/DMWriter.cpp +114 -0
- package/cpp/zxing-core/core/src/datamatrix/DMWriter.h +62 -0
- package/cpp/zxing-core/core/src/librscpp/README.md +65 -0
- package/cpp/zxing-core/core/src/librscpp/decode.h +258 -0
- package/cpp/zxing-core/core/src/librscpp/encode.h +124 -0
- package/cpp/zxing-core/core/src/librscpp/field.h +158 -0
- package/cpp/zxing-core/core/src/librscpp/poly.h +194 -0
- package/cpp/zxing-core/core/src/libzint/2of5inter.c +1 -0
- package/cpp/zxing-core/core/src/libzint/2of5inter_based.c +1 -0
- package/cpp/zxing-core/core/src/libzint/aztec.c +1 -0
- package/cpp/zxing-core/core/src/libzint/aztec.h +1 -0
- package/cpp/zxing-core/core/src/libzint/big5.h +1 -0
- package/cpp/zxing-core/core/src/libzint/codabar.c +1 -0
- package/cpp/zxing-core/core/src/libzint/code.c +1 -0
- package/cpp/zxing-core/core/src/libzint/code128.c +1 -0
- package/cpp/zxing-core/core/src/libzint/code128.h +1 -0
- package/cpp/zxing-core/core/src/libzint/common.c +1 -0
- package/cpp/zxing-core/core/src/libzint/common.h +1 -0
- package/cpp/zxing-core/core/src/libzint/dmatrix.c +1 -0
- package/cpp/zxing-core/core/src/libzint/dmatrix.h +1 -0
- package/cpp/zxing-core/core/src/libzint/dxfilmedge.c +1 -0
- package/cpp/zxing-core/core/src/libzint/eci.c +1 -0
- package/cpp/zxing-core/core/src/libzint/eci.h +1 -0
- package/cpp/zxing-core/core/src/libzint/eci_sb.h +1 -0
- package/cpp/zxing-core/core/src/libzint/filemem.c +1 -0
- package/cpp/zxing-core/core/src/libzint/filemem.h +1 -0
- package/cpp/zxing-core/core/src/libzint/fonts/normal_woff2.h +1 -0
- package/cpp/zxing-core/core/src/libzint/fonts/upcean_woff2.h +1 -0
- package/cpp/zxing-core/core/src/libzint/gb18030.h +1 -0
- package/cpp/zxing-core/core/src/libzint/gb2312.h +1 -0
- package/cpp/zxing-core/core/src/libzint/gbk.h +1 -0
- package/cpp/zxing-core/core/src/libzint/general_field.c +1 -0
- package/cpp/zxing-core/core/src/libzint/general_field.h +1 -0
- package/cpp/zxing-core/core/src/libzint/gs1.c +1 -0
- package/cpp/zxing-core/core/src/libzint/gs1.h +1 -0
- package/cpp/zxing-core/core/src/libzint/gs1_lint.h +1 -0
- package/cpp/zxing-core/core/src/libzint/iso3166.h +1 -0
- package/cpp/zxing-core/core/src/libzint/iso4217.h +1 -0
- package/cpp/zxing-core/core/src/libzint/ksx1001.h +1 -0
- package/cpp/zxing-core/core/src/libzint/large.c +1 -0
- package/cpp/zxing-core/core/src/libzint/large.h +1 -0
- package/cpp/zxing-core/core/src/libzint/library.c +1 -0
- package/cpp/zxing-core/core/src/libzint/maxicode.c +1 -0
- package/cpp/zxing-core/core/src/libzint/maxicode.h +1 -0
- package/cpp/zxing-core/core/src/libzint/medical.c +1 -0
- package/cpp/zxing-core/core/src/libzint/output.c +1 -0
- package/cpp/zxing-core/core/src/libzint/output.h +1 -0
- package/cpp/zxing-core/core/src/libzint/pdf417.c +1 -0
- package/cpp/zxing-core/core/src/libzint/pdf417.h +1 -0
- package/cpp/zxing-core/core/src/libzint/pdf417_tabs.h +1 -0
- package/cpp/zxing-core/core/src/libzint/qr.c +1 -0
- package/cpp/zxing-core/core/src/libzint/qr.h +1 -0
- package/cpp/zxing-core/core/src/libzint/raster.c +1 -0
- package/cpp/zxing-core/core/src/libzint/raster_font.h +1 -0
- package/cpp/zxing-core/core/src/libzint/reedsol.c +1 -0
- package/cpp/zxing-core/core/src/libzint/reedsol.h +1 -0
- package/cpp/zxing-core/core/src/libzint/reedsol_logs.h +1 -0
- package/cpp/zxing-core/core/src/libzint/rss.c +1 -0
- package/cpp/zxing-core/core/src/libzint/rss.h +1 -0
- package/cpp/zxing-core/core/src/libzint/sjis.h +1 -0
- package/cpp/zxing-core/core/src/libzint/stubs.c +137 -0
- package/cpp/zxing-core/core/src/libzint/svg.c +1 -0
- package/cpp/zxing-core/core/src/libzint/telepen.c +1 -0
- package/cpp/zxing-core/core/src/libzint/upcean.c +1 -0
- package/cpp/zxing-core/core/src/libzint/vector.c +1 -0
- package/cpp/zxing-core/core/src/libzint/zfiletypes.h +1 -0
- package/cpp/zxing-core/core/src/libzint/zint.h +1 -0
- package/cpp/zxing-core/core/src/libzint/zintconfig.h +1 -0
- package/cpp/zxing-core/core/src/libzueci/README.md +11 -0
- package/cpp/zxing-core/core/src/libzueci/zueci.c +1718 -0
- package/cpp/zxing-core/core/src/libzueci/zueci.h +179 -0
- package/cpp/zxing-core/core/src/libzueci/zueci_big5.h +3884 -0
- package/cpp/zxing-core/core/src/libzueci/zueci_common.h +31 -0
- package/cpp/zxing-core/core/src/libzueci/zueci_gb18030.h +264 -0
- package/cpp/zxing-core/core/src/libzueci/zueci_gb2312.h +2381 -0
- package/cpp/zxing-core/core/src/libzueci/zueci_gbk.h +4047 -0
- package/cpp/zxing-core/core/src/libzueci/zueci_ksx1001.h +2932 -0
- package/cpp/zxing-core/core/src/libzueci/zueci_sb.h +1112 -0
- package/cpp/zxing-core/core/src/libzueci/zueci_sjis.h +2286 -0
- package/cpp/zxing-core/core/src/maxicode/MCBitMatrixParser.cpp +68 -0
- package/cpp/zxing-core/core/src/maxicode/MCBitMatrixParser.h +30 -0
- package/cpp/zxing-core/core/src/maxicode/MCDecoder.cpp +329 -0
- package/cpp/zxing-core/core/src/maxicode/MCDecoder.h +19 -0
- package/cpp/zxing-core/core/src/maxicode/MCReader.cpp +65 -0
- package/cpp/zxing-core/core/src/maxicode/MCReader.h +21 -0
- package/cpp/zxing-core/core/src/oned/ODCodabarReader.cpp +102 -0
- package/cpp/zxing-core/core/src/oned/ODCodabarReader.h +21 -0
- package/cpp/zxing-core/core/src/oned/ODCodabarWriter.cpp +136 -0
- package/cpp/zxing-core/core/src/oned/ODCodabarWriter.h +34 -0
- package/cpp/zxing-core/core/src/oned/ODCode128Patterns.h +130 -0
- package/cpp/zxing-core/core/src/oned/ODCode128Reader.cpp +236 -0
- package/cpp/zxing-core/core/src/oned/ODCode128Reader.h +21 -0
- package/cpp/zxing-core/core/src/oned/ODCode128Writer.cpp +261 -0
- package/cpp/zxing-core/core/src/oned/ODCode128Writer.h +34 -0
- package/cpp/zxing-core/core/src/oned/ODCode39Reader.cpp +213 -0
- package/cpp/zxing-core/core/src/oned/ODCode39Reader.h +26 -0
- package/cpp/zxing-core/core/src/oned/ODCode39Writer.cpp +176 -0
- package/cpp/zxing-core/core/src/oned/ODCode39Writer.h +34 -0
- package/cpp/zxing-core/core/src/oned/ODCode93Patterns.h +80 -0
- package/cpp/zxing-core/core/src/oned/ODCode93Reader.cpp +112 -0
- package/cpp/zxing-core/core/src/oned/ODCode93Reader.h +21 -0
- package/cpp/zxing-core/core/src/oned/ODCode93Writer.cpp +192 -0
- package/cpp/zxing-core/core/src/oned/ODCode93Writer.h +32 -0
- package/cpp/zxing-core/core/src/oned/ODDXFilmEdgeReader.cpp +246 -0
- package/cpp/zxing-core/core/src/oned/ODDXFilmEdgeReader.h +26 -0
- package/cpp/zxing-core/core/src/oned/ODDataBarCommon.cpp +172 -0
- package/cpp/zxing-core/core/src/oned/ODDataBarCommon.h +204 -0
- package/cpp/zxing-core/core/src/oned/ODDataBarExpandedBitDecoder.cpp +253 -0
- package/cpp/zxing-core/core/src/oned/ODDataBarExpandedBitDecoder.h +19 -0
- package/cpp/zxing-core/core/src/oned/ODDataBarExpandedReader.cpp +383 -0
- package/cpp/zxing-core/core/src/oned/ODDataBarExpandedReader.h +25 -0
- package/cpp/zxing-core/core/src/oned/ODDataBarLimitedReader.cpp +163 -0
- package/cpp/zxing-core/core/src/oned/ODDataBarLimitedReader.h +23 -0
- package/cpp/zxing-core/core/src/oned/ODDataBarReader.cpp +240 -0
- package/cpp/zxing-core/core/src/oned/ODDataBarReader.h +25 -0
- package/cpp/zxing-core/core/src/oned/ODEAN13Writer.cpp +62 -0
- package/cpp/zxing-core/core/src/oned/ODEAN13Writer.h +34 -0
- package/cpp/zxing-core/core/src/oned/ODEAN8Writer.cpp +51 -0
- package/cpp/zxing-core/core/src/oned/ODEAN8Writer.h +34 -0
- package/cpp/zxing-core/core/src/oned/ODITFReader.cpp +97 -0
- package/cpp/zxing-core/core/src/oned/ODITFReader.h +33 -0
- package/cpp/zxing-core/core/src/oned/ODITFWriter.cpp +78 -0
- package/cpp/zxing-core/core/src/oned/ODITFWriter.h +34 -0
- package/cpp/zxing-core/core/src/oned/ODMultiUPCEANReader.cpp +323 -0
- package/cpp/zxing-core/core/src/oned/ODMultiUPCEANReader.h +32 -0
- package/cpp/zxing-core/core/src/oned/ODReader.cpp +259 -0
- package/cpp/zxing-core/core/src/oned/ODReader.h +35 -0
- package/cpp/zxing-core/core/src/oned/ODRowReader.h +222 -0
- package/cpp/zxing-core/core/src/oned/ODTelepenReader.cpp +199 -0
- package/cpp/zxing-core/core/src/oned/ODTelepenReader.h +25 -0
- package/cpp/zxing-core/core/src/oned/ODUPCAWriter.cpp +33 -0
- package/cpp/zxing-core/core/src/oned/ODUPCAWriter.h +34 -0
- package/cpp/zxing-core/core/src/oned/ODUPCEANCommon.cpp +80 -0
- package/cpp/zxing-core/core/src/oned/ODUPCEANCommon.h +129 -0
- package/cpp/zxing-core/core/src/oned/ODUPCEWriter.cpp +56 -0
- package/cpp/zxing-core/core/src/oned/ODUPCEWriter.h +34 -0
- package/cpp/zxing-core/core/src/oned/ODWriterHelper.cpp +39 -0
- package/cpp/zxing-core/core/src/oned/ODWriterHelper.h +48 -0
- package/cpp/zxing-core/core/src/pdf417/MicroPDFReader.cpp +796 -0
- package/cpp/zxing-core/core/src/pdf417/MicroPDFReader.h +23 -0
- package/cpp/zxing-core/core/src/pdf417/PDF417.cpp +85 -0
- package/cpp/zxing-core/core/src/pdf417/PDF417.h +81 -0
- package/cpp/zxing-core/core/src/pdf417/PDFBarcodeMetadata.h +53 -0
- package/cpp/zxing-core/core/src/pdf417/PDFBarcodeValue.cpp +48 -0
- package/cpp/zxing-core/core/src/pdf417/PDFBarcodeValue.h +38 -0
- package/cpp/zxing-core/core/src/pdf417/PDFBoundingBox.cpp +116 -0
- package/cpp/zxing-core/core/src/pdf417/PDFBoundingBox.h +75 -0
- package/cpp/zxing-core/core/src/pdf417/PDFCodeword.h +71 -0
- package/cpp/zxing-core/core/src/pdf417/PDFCodewordDecoder.cpp +588 -0
- package/cpp/zxing-core/core/src/pdf417/PDFCodewordDecoder.h +41 -0
- package/cpp/zxing-core/core/src/pdf417/PDFCompaction.h +20 -0
- package/cpp/zxing-core/core/src/pdf417/PDFCustomData.h +32 -0
- package/cpp/zxing-core/core/src/pdf417/PDFDecoder.cpp +725 -0
- package/cpp/zxing-core/core/src/pdf417/PDFDecoder.h +20 -0
- package/cpp/zxing-core/core/src/pdf417/PDFDetectionResult.cpp +247 -0
- package/cpp/zxing-core/core/src/pdf417/PDFDetectionResult.h +74 -0
- package/cpp/zxing-core/core/src/pdf417/PDFDetectionResultColumn.cpp +321 -0
- package/cpp/zxing-core/core/src/pdf417/PDFDetectionResultColumn.h +83 -0
- package/cpp/zxing-core/core/src/pdf417/PDFDetector.cpp +371 -0
- package/cpp/zxing-core/core/src/pdf417/PDFDetector.h +45 -0
- package/cpp/zxing-core/core/src/pdf417/PDFEncoder.cpp +570 -0
- package/cpp/zxing-core/core/src/pdf417/PDFEncoder.h +182 -0
- package/cpp/zxing-core/core/src/pdf417/PDFHighLevelEncoder.cpp +570 -0
- package/cpp/zxing-core/core/src/pdf417/PDFHighLevelEncoder.h +32 -0
- package/cpp/zxing-core/core/src/pdf417/PDFReader.cpp +333 -0
- package/cpp/zxing-core/core/src/pdf417/PDFReader.h +28 -0
- package/cpp/zxing-core/core/src/pdf417/PDFScanningDecoder.cpp +559 -0
- package/cpp/zxing-core/core/src/pdf417/PDFScanningDecoder.h +41 -0
- package/cpp/zxing-core/core/src/pdf417/PDFWriter.cpp +170 -0
- package/cpp/zxing-core/core/src/pdf417/PDFWriter.h +74 -0
- package/cpp/zxing-core/core/src/pdf417/ZXBigInteger.cpp +623 -0
- package/cpp/zxing-core/core/src/pdf417/ZXBigInteger.h +81 -0
- package/cpp/zxing-core/core/src/pdf417/ZXNullable.h +105 -0
- package/cpp/zxing-core/core/src/qrcode/QRBitMatrixParser.cpp +294 -0
- package/cpp/zxing-core/core/src/qrcode/QRBitMatrixParser.h +41 -0
- package/cpp/zxing-core/core/src/qrcode/QRCodecMode.cpp +95 -0
- package/cpp/zxing-core/core/src/qrcode/QRCodecMode.h +59 -0
- package/cpp/zxing-core/core/src/qrcode/QRDataBlock.cpp +93 -0
- package/cpp/zxing-core/core/src/qrcode/QRDataBlock.h +52 -0
- package/cpp/zxing-core/core/src/qrcode/QRDataMask.h +50 -0
- package/cpp/zxing-core/core/src/qrcode/QRDecoder.cpp +359 -0
- package/cpp/zxing-core/core/src/qrcode/QRDecoder.h +19 -0
- package/cpp/zxing-core/core/src/qrcode/QRDetector.cpp +920 -0
- package/cpp/zxing-core/core/src/qrcode/QRDetector.h +45 -0
- package/cpp/zxing-core/core/src/qrcode/QRECB.h +52 -0
- package/cpp/zxing-core/core/src/qrcode/QREncodeResult.h +33 -0
- package/cpp/zxing-core/core/src/qrcode/QREncoder.cpp +568 -0
- package/cpp/zxing-core/core/src/qrcode/QREncoder.h +21 -0
- package/cpp/zxing-core/core/src/qrcode/QRErrorCorrectionLevel.cpp +51 -0
- package/cpp/zxing-core/core/src/qrcode/QRErrorCorrectionLevel.h +39 -0
- package/cpp/zxing-core/core/src/qrcode/QRFormatInformation.cpp +160 -0
- package/cpp/zxing-core/core/src/qrcode/QRFormatInformation.h +61 -0
- package/cpp/zxing-core/core/src/qrcode/QRMaskUtil.cpp +156 -0
- package/cpp/zxing-core/core/src/qrcode/QRMaskUtil.h +15 -0
- package/cpp/zxing-core/core/src/qrcode/QRMatrixUtil.cpp +318 -0
- package/cpp/zxing-core/core/src/qrcode/QRMatrixUtil.h +25 -0
- package/cpp/zxing-core/core/src/qrcode/QRReader.cpp +149 -0
- package/cpp/zxing-core/core/src/qrcode/QRReader.h +21 -0
- package/cpp/zxing-core/core/src/qrcode/QRVersion.cpp +754 -0
- package/cpp/zxing-core/core/src/qrcode/QRVersion.h +127 -0
- package/cpp/zxing-core/core/src/qrcode/QRWriter.cpp +51 -0
- package/cpp/zxing-core/core/src/qrcode/QRWriter.h +74 -0
- package/cpp/zxing-core/core/version.rc.in +34 -0
- package/cpp/zxing-core/core/zxing.pc.in +8 -0
- package/cpp/zxing-core/wrappers/ios/README.md +25 -0
- package/cpp/zxing-core/wrappers/ios/Sources/Wrapper/Version.h +29 -0
- package/cpp/zxing-core/zxing-cpp.podspec +45 -0
- package/lib/factory.d.ts +10 -0
- package/lib/factory.js +12 -0
- package/lib/index.d.ts +9 -0
- package/lib/index.js +9 -0
- package/lib/specs/Barcode.nitro.d.ts +63 -0
- package/lib/specs/Barcode.nitro.js +1 -0
- package/lib/specs/BarcodeFormat.d.ts +11 -0
- package/lib/specs/BarcodeFormat.js +1 -0
- package/lib/specs/BarcodeScanner.nitro.d.ts +89 -0
- package/lib/specs/BarcodeScanner.nitro.js +1 -0
- package/lib/specs/BarcodeScannerFactory.nitro.d.ts +26 -0
- package/lib/specs/BarcodeScannerFactory.nitro.js +1 -0
- package/lib/specs/BarcodeValueType.d.ts +9 -0
- package/lib/specs/BarcodeValueType.js +1 -0
- package/lib/specs/Point.d.ts +14 -0
- package/lib/specs/Point.js +1 -0
- package/lib/specs/Rect.d.ts +22 -0
- package/lib/specs/Rect.js +1 -0
- package/lib/useBarcodeScanner.d.ts +23 -0
- package/lib/useBarcodeScanner.js +25 -0
- package/nitro.json +20 -0
- package/nitrogen/generated/.gitattributes +1 -0
- package/nitrogen/generated/android/VisionCameraZxing+autolinking.cmake +83 -0
- package/nitrogen/generated/android/VisionCameraZxing+autolinking.gradle +27 -0
- package/nitrogen/generated/android/VisionCameraZxingOnLoad.cpp +49 -0
- package/nitrogen/generated/android/VisionCameraZxingOnLoad.hpp +34 -0
- package/nitrogen/generated/android/kotlin/com/margelo/nitro/camera/zxing/VisionCameraZxingOnLoad.kt +35 -0
- package/nitrogen/generated/ios/VisionCameraZxing+autolinking.rb +62 -0
- package/nitrogen/generated/ios/VisionCameraZxing-Swift-Cxx-Bridge.cpp +17 -0
- package/nitrogen/generated/ios/VisionCameraZxing-Swift-Cxx-Bridge.hpp +27 -0
- package/nitrogen/generated/ios/VisionCameraZxing-Swift-Cxx-Umbrella.hpp +38 -0
- package/nitrogen/generated/ios/VisionCameraZxingAutolinking.mm +35 -0
- package/nitrogen/generated/ios/VisionCameraZxingAutolinking.swift +16 -0
- package/nitrogen/generated/shared/c++/BarcodeFormat.hpp +124 -0
- package/nitrogen/generated/shared/c++/BarcodeScannerOptions.hpp +85 -0
- package/nitrogen/generated/shared/c++/BarcodeValueType.hpp +120 -0
- package/nitrogen/generated/shared/c++/HybridBarcodeScannerSpec.cpp +23 -0
- package/nitrogen/generated/shared/c++/HybridBarcodeScannerSpec.hpp +74 -0
- package/nitrogen/generated/shared/c++/HybridBarcodeSpec.cpp +27 -0
- package/nitrogen/generated/shared/c++/HybridBarcodeSpec.hpp +82 -0
- package/nitrogen/generated/shared/c++/HybridZXingBarcodeScannerFactorySpec.cpp +21 -0
- package/nitrogen/generated/shared/c++/HybridZXingBarcodeScannerFactorySpec.hpp +67 -0
- package/nitrogen/generated/shared/c++/Point.hpp +87 -0
- package/nitrogen/generated/shared/c++/Rect.hpp +95 -0
- package/nitrogen/generated/shared/c++/TargetBarcodeFormat.hpp +124 -0
- package/package.json +108 -0
- package/react-native.config.js +16 -0
- package/src/factory.ts +26 -0
- package/src/index.ts +9 -0
- package/src/specs/Barcode.nitro.ts +70 -0
- package/src/specs/BarcodeFormat.ts +31 -0
- package/src/specs/BarcodeScanner.nitro.ts +91 -0
- package/src/specs/BarcodeScannerFactory.nitro.ts +27 -0
- package/src/specs/BarcodeValueType.ts +25 -0
- package/src/specs/Point.ts +14 -0
- package/src/specs/Rect.ts +22 -0
- package/src/useBarcodeScanner.ts +36 -0
|
@@ -0,0 +1,95 @@
|
|
|
1
|
+
///
|
|
2
|
+
/// Rect.hpp
|
|
3
|
+
/// This file was generated by nitrogen. DO NOT MODIFY THIS FILE.
|
|
4
|
+
/// https://github.com/mrousavy/nitro
|
|
5
|
+
/// Copyright © Marc Rousavy @ Margelo
|
|
6
|
+
///
|
|
7
|
+
|
|
8
|
+
#pragma once
|
|
9
|
+
|
|
10
|
+
#if __has_include(<NitroModules/JSIConverter.hpp>)
|
|
11
|
+
#include <NitroModules/JSIConverter.hpp>
|
|
12
|
+
#else
|
|
13
|
+
#error NitroModules cannot be found! Are you sure you installed NitroModules properly?
|
|
14
|
+
#endif
|
|
15
|
+
#if __has_include(<NitroModules/NitroDefines.hpp>)
|
|
16
|
+
#include <NitroModules/NitroDefines.hpp>
|
|
17
|
+
#else
|
|
18
|
+
#error NitroModules cannot be found! Are you sure you installed NitroModules properly?
|
|
19
|
+
#endif
|
|
20
|
+
#if __has_include(<NitroModules/JSIHelpers.hpp>)
|
|
21
|
+
#include <NitroModules/JSIHelpers.hpp>
|
|
22
|
+
#else
|
|
23
|
+
#error NitroModules cannot be found! Are you sure you installed NitroModules properly?
|
|
24
|
+
#endif
|
|
25
|
+
#if __has_include(<NitroModules/PropNameIDCache.hpp>)
|
|
26
|
+
#include <NitroModules/PropNameIDCache.hpp>
|
|
27
|
+
#else
|
|
28
|
+
#error NitroModules cannot be found! Are you sure you installed NitroModules properly?
|
|
29
|
+
#endif
|
|
30
|
+
|
|
31
|
+
|
|
32
|
+
|
|
33
|
+
|
|
34
|
+
|
|
35
|
+
namespace margelo::nitro::camera::zxing {
|
|
36
|
+
|
|
37
|
+
/**
|
|
38
|
+
* A struct which can be represented as a JavaScript object (Rect).
|
|
39
|
+
*/
|
|
40
|
+
struct Rect final {
|
|
41
|
+
public:
|
|
42
|
+
double left SWIFT_PRIVATE;
|
|
43
|
+
double right SWIFT_PRIVATE;
|
|
44
|
+
double top SWIFT_PRIVATE;
|
|
45
|
+
double bottom SWIFT_PRIVATE;
|
|
46
|
+
|
|
47
|
+
public:
|
|
48
|
+
Rect() = default;
|
|
49
|
+
explicit Rect(double left, double right, double top, double bottom): left(left), right(right), top(top), bottom(bottom) {}
|
|
50
|
+
|
|
51
|
+
public:
|
|
52
|
+
friend bool operator==(const Rect& lhs, const Rect& rhs) = default;
|
|
53
|
+
};
|
|
54
|
+
|
|
55
|
+
} // namespace margelo::nitro::camera::zxing
|
|
56
|
+
|
|
57
|
+
namespace margelo::nitro {
|
|
58
|
+
|
|
59
|
+
// C++ Rect <> JS Rect (object)
|
|
60
|
+
template <>
|
|
61
|
+
struct JSIConverter<margelo::nitro::camera::zxing::Rect> final {
|
|
62
|
+
static inline margelo::nitro::camera::zxing::Rect fromJSI(jsi::Runtime& runtime, const jsi::Value& arg) {
|
|
63
|
+
jsi::Object obj = arg.asObject(runtime);
|
|
64
|
+
return margelo::nitro::camera::zxing::Rect(
|
|
65
|
+
JSIConverter<double>::fromJSI(runtime, obj.getProperty(runtime, PropNameIDCache::get(runtime, "left"))),
|
|
66
|
+
JSIConverter<double>::fromJSI(runtime, obj.getProperty(runtime, PropNameIDCache::get(runtime, "right"))),
|
|
67
|
+
JSIConverter<double>::fromJSI(runtime, obj.getProperty(runtime, PropNameIDCache::get(runtime, "top"))),
|
|
68
|
+
JSIConverter<double>::fromJSI(runtime, obj.getProperty(runtime, PropNameIDCache::get(runtime, "bottom")))
|
|
69
|
+
);
|
|
70
|
+
}
|
|
71
|
+
static inline jsi::Value toJSI(jsi::Runtime& runtime, const margelo::nitro::camera::zxing::Rect& arg) {
|
|
72
|
+
jsi::Object obj(runtime);
|
|
73
|
+
obj.setProperty(runtime, PropNameIDCache::get(runtime, "left"), JSIConverter<double>::toJSI(runtime, arg.left));
|
|
74
|
+
obj.setProperty(runtime, PropNameIDCache::get(runtime, "right"), JSIConverter<double>::toJSI(runtime, arg.right));
|
|
75
|
+
obj.setProperty(runtime, PropNameIDCache::get(runtime, "top"), JSIConverter<double>::toJSI(runtime, arg.top));
|
|
76
|
+
obj.setProperty(runtime, PropNameIDCache::get(runtime, "bottom"), JSIConverter<double>::toJSI(runtime, arg.bottom));
|
|
77
|
+
return obj;
|
|
78
|
+
}
|
|
79
|
+
static inline bool canConvert(jsi::Runtime& runtime, const jsi::Value& value) {
|
|
80
|
+
if (!value.isObject()) {
|
|
81
|
+
return false;
|
|
82
|
+
}
|
|
83
|
+
jsi::Object obj = value.getObject(runtime);
|
|
84
|
+
if (!nitro::isPlainObject(runtime, obj)) {
|
|
85
|
+
return false;
|
|
86
|
+
}
|
|
87
|
+
if (!JSIConverter<double>::canConvert(runtime, obj.getProperty(runtime, PropNameIDCache::get(runtime, "left")))) return false;
|
|
88
|
+
if (!JSIConverter<double>::canConvert(runtime, obj.getProperty(runtime, PropNameIDCache::get(runtime, "right")))) return false;
|
|
89
|
+
if (!JSIConverter<double>::canConvert(runtime, obj.getProperty(runtime, PropNameIDCache::get(runtime, "top")))) return false;
|
|
90
|
+
if (!JSIConverter<double>::canConvert(runtime, obj.getProperty(runtime, PropNameIDCache::get(runtime, "bottom")))) return false;
|
|
91
|
+
return true;
|
|
92
|
+
}
|
|
93
|
+
};
|
|
94
|
+
|
|
95
|
+
} // namespace margelo::nitro
|
|
@@ -0,0 +1,124 @@
|
|
|
1
|
+
///
|
|
2
|
+
/// TargetBarcodeFormat.hpp
|
|
3
|
+
/// This file was generated by nitrogen. DO NOT MODIFY THIS FILE.
|
|
4
|
+
/// https://github.com/mrousavy/nitro
|
|
5
|
+
/// Copyright © Marc Rousavy @ Margelo
|
|
6
|
+
///
|
|
7
|
+
|
|
8
|
+
#pragma once
|
|
9
|
+
|
|
10
|
+
#if __has_include(<NitroModules/NitroHash.hpp>)
|
|
11
|
+
#include <NitroModules/NitroHash.hpp>
|
|
12
|
+
#else
|
|
13
|
+
#error NitroModules cannot be found! Are you sure you installed NitroModules properly?
|
|
14
|
+
#endif
|
|
15
|
+
#if __has_include(<NitroModules/JSIConverter.hpp>)
|
|
16
|
+
#include <NitroModules/JSIConverter.hpp>
|
|
17
|
+
#else
|
|
18
|
+
#error NitroModules cannot be found! Are you sure you installed NitroModules properly?
|
|
19
|
+
#endif
|
|
20
|
+
#if __has_include(<NitroModules/NitroDefines.hpp>)
|
|
21
|
+
#include <NitroModules/NitroDefines.hpp>
|
|
22
|
+
#else
|
|
23
|
+
#error NitroModules cannot be found! Are you sure you installed NitroModules properly?
|
|
24
|
+
#endif
|
|
25
|
+
|
|
26
|
+
namespace margelo::nitro::camera::zxing {
|
|
27
|
+
|
|
28
|
+
/**
|
|
29
|
+
* An enum which can be represented as a JavaScript union (TargetBarcodeFormat).
|
|
30
|
+
*/
|
|
31
|
+
enum class TargetBarcodeFormat {
|
|
32
|
+
CODE_128 SWIFT_NAME(code128) = 0,
|
|
33
|
+
CODE_39 SWIFT_NAME(code39) = 1,
|
|
34
|
+
CODE_93 SWIFT_NAME(code93) = 2,
|
|
35
|
+
CODABAR SWIFT_NAME(codabar) = 3,
|
|
36
|
+
DATA_MATRIX SWIFT_NAME(dataMatrix) = 4,
|
|
37
|
+
EAN_13 SWIFT_NAME(ean13) = 5,
|
|
38
|
+
EAN_8 SWIFT_NAME(ean8) = 6,
|
|
39
|
+
ITF SWIFT_NAME(itf) = 7,
|
|
40
|
+
QR_CODE SWIFT_NAME(qrCode) = 8,
|
|
41
|
+
UPC_A SWIFT_NAME(upcA) = 9,
|
|
42
|
+
UPC_E SWIFT_NAME(upcE) = 10,
|
|
43
|
+
PDF_417 SWIFT_NAME(pdf417) = 11,
|
|
44
|
+
AZTEC SWIFT_NAME(aztec) = 12,
|
|
45
|
+
ALL_FORMATS SWIFT_NAME(allFormats) = 13,
|
|
46
|
+
} CLOSED_ENUM;
|
|
47
|
+
|
|
48
|
+
} // namespace margelo::nitro::camera::zxing
|
|
49
|
+
|
|
50
|
+
namespace margelo::nitro {
|
|
51
|
+
|
|
52
|
+
// C++ TargetBarcodeFormat <> JS TargetBarcodeFormat (union)
|
|
53
|
+
template <>
|
|
54
|
+
struct JSIConverter<margelo::nitro::camera::zxing::TargetBarcodeFormat> final {
|
|
55
|
+
static inline margelo::nitro::camera::zxing::TargetBarcodeFormat fromJSI(jsi::Runtime& runtime, const jsi::Value& arg) {
|
|
56
|
+
std::string unionValue = JSIConverter<std::string>::fromJSI(runtime, arg);
|
|
57
|
+
switch (hashString(unionValue.c_str(), unionValue.size())) {
|
|
58
|
+
case hashString("code-128"): return margelo::nitro::camera::zxing::TargetBarcodeFormat::CODE_128;
|
|
59
|
+
case hashString("code-39"): return margelo::nitro::camera::zxing::TargetBarcodeFormat::CODE_39;
|
|
60
|
+
case hashString("code-93"): return margelo::nitro::camera::zxing::TargetBarcodeFormat::CODE_93;
|
|
61
|
+
case hashString("codabar"): return margelo::nitro::camera::zxing::TargetBarcodeFormat::CODABAR;
|
|
62
|
+
case hashString("data-matrix"): return margelo::nitro::camera::zxing::TargetBarcodeFormat::DATA_MATRIX;
|
|
63
|
+
case hashString("ean-13"): return margelo::nitro::camera::zxing::TargetBarcodeFormat::EAN_13;
|
|
64
|
+
case hashString("ean-8"): return margelo::nitro::camera::zxing::TargetBarcodeFormat::EAN_8;
|
|
65
|
+
case hashString("itf"): return margelo::nitro::camera::zxing::TargetBarcodeFormat::ITF;
|
|
66
|
+
case hashString("qr-code"): return margelo::nitro::camera::zxing::TargetBarcodeFormat::QR_CODE;
|
|
67
|
+
case hashString("upc-a"): return margelo::nitro::camera::zxing::TargetBarcodeFormat::UPC_A;
|
|
68
|
+
case hashString("upc-e"): return margelo::nitro::camera::zxing::TargetBarcodeFormat::UPC_E;
|
|
69
|
+
case hashString("pdf-417"): return margelo::nitro::camera::zxing::TargetBarcodeFormat::PDF_417;
|
|
70
|
+
case hashString("aztec"): return margelo::nitro::camera::zxing::TargetBarcodeFormat::AZTEC;
|
|
71
|
+
case hashString("all-formats"): return margelo::nitro::camera::zxing::TargetBarcodeFormat::ALL_FORMATS;
|
|
72
|
+
default: [[unlikely]]
|
|
73
|
+
throw std::invalid_argument("Cannot convert \"" + unionValue + "\" to enum TargetBarcodeFormat - invalid value!");
|
|
74
|
+
}
|
|
75
|
+
}
|
|
76
|
+
static inline jsi::Value toJSI(jsi::Runtime& runtime, margelo::nitro::camera::zxing::TargetBarcodeFormat arg) {
|
|
77
|
+
switch (arg) {
|
|
78
|
+
case margelo::nitro::camera::zxing::TargetBarcodeFormat::CODE_128: return JSIConverter<std::string>::toJSI(runtime, "code-128");
|
|
79
|
+
case margelo::nitro::camera::zxing::TargetBarcodeFormat::CODE_39: return JSIConverter<std::string>::toJSI(runtime, "code-39");
|
|
80
|
+
case margelo::nitro::camera::zxing::TargetBarcodeFormat::CODE_93: return JSIConverter<std::string>::toJSI(runtime, "code-93");
|
|
81
|
+
case margelo::nitro::camera::zxing::TargetBarcodeFormat::CODABAR: return JSIConverter<std::string>::toJSI(runtime, "codabar");
|
|
82
|
+
case margelo::nitro::camera::zxing::TargetBarcodeFormat::DATA_MATRIX: return JSIConverter<std::string>::toJSI(runtime, "data-matrix");
|
|
83
|
+
case margelo::nitro::camera::zxing::TargetBarcodeFormat::EAN_13: return JSIConverter<std::string>::toJSI(runtime, "ean-13");
|
|
84
|
+
case margelo::nitro::camera::zxing::TargetBarcodeFormat::EAN_8: return JSIConverter<std::string>::toJSI(runtime, "ean-8");
|
|
85
|
+
case margelo::nitro::camera::zxing::TargetBarcodeFormat::ITF: return JSIConverter<std::string>::toJSI(runtime, "itf");
|
|
86
|
+
case margelo::nitro::camera::zxing::TargetBarcodeFormat::QR_CODE: return JSIConverter<std::string>::toJSI(runtime, "qr-code");
|
|
87
|
+
case margelo::nitro::camera::zxing::TargetBarcodeFormat::UPC_A: return JSIConverter<std::string>::toJSI(runtime, "upc-a");
|
|
88
|
+
case margelo::nitro::camera::zxing::TargetBarcodeFormat::UPC_E: return JSIConverter<std::string>::toJSI(runtime, "upc-e");
|
|
89
|
+
case margelo::nitro::camera::zxing::TargetBarcodeFormat::PDF_417: return JSIConverter<std::string>::toJSI(runtime, "pdf-417");
|
|
90
|
+
case margelo::nitro::camera::zxing::TargetBarcodeFormat::AZTEC: return JSIConverter<std::string>::toJSI(runtime, "aztec");
|
|
91
|
+
case margelo::nitro::camera::zxing::TargetBarcodeFormat::ALL_FORMATS: return JSIConverter<std::string>::toJSI(runtime, "all-formats");
|
|
92
|
+
default: [[unlikely]]
|
|
93
|
+
throw std::invalid_argument("Cannot convert TargetBarcodeFormat to JS - invalid value: "
|
|
94
|
+
+ std::to_string(static_cast<int>(arg)) + "!");
|
|
95
|
+
}
|
|
96
|
+
}
|
|
97
|
+
static inline bool canConvert(jsi::Runtime& runtime, const jsi::Value& value) {
|
|
98
|
+
if (!value.isString()) {
|
|
99
|
+
return false;
|
|
100
|
+
}
|
|
101
|
+
std::string unionValue = JSIConverter<std::string>::fromJSI(runtime, value);
|
|
102
|
+
switch (hashString(unionValue.c_str(), unionValue.size())) {
|
|
103
|
+
case hashString("code-128"):
|
|
104
|
+
case hashString("code-39"):
|
|
105
|
+
case hashString("code-93"):
|
|
106
|
+
case hashString("codabar"):
|
|
107
|
+
case hashString("data-matrix"):
|
|
108
|
+
case hashString("ean-13"):
|
|
109
|
+
case hashString("ean-8"):
|
|
110
|
+
case hashString("itf"):
|
|
111
|
+
case hashString("qr-code"):
|
|
112
|
+
case hashString("upc-a"):
|
|
113
|
+
case hashString("upc-e"):
|
|
114
|
+
case hashString("pdf-417"):
|
|
115
|
+
case hashString("aztec"):
|
|
116
|
+
case hashString("all-formats"):
|
|
117
|
+
return true;
|
|
118
|
+
default:
|
|
119
|
+
return false;
|
|
120
|
+
}
|
|
121
|
+
}
|
|
122
|
+
};
|
|
123
|
+
|
|
124
|
+
} // namespace margelo::nitro
|
package/package.json
ADDED
|
@@ -0,0 +1,108 @@
|
|
|
1
|
+
{
|
|
2
|
+
"name": "react-native-nitro-zxing",
|
|
3
|
+
"version": "0.1.0-alpha.0",
|
|
4
|
+
"description": "Barcode scanning plugin for react-native-vision-camera powered by zxing-cpp.",
|
|
5
|
+
"main": "lib/index",
|
|
6
|
+
"module": "lib/index",
|
|
7
|
+
"types": "lib/index.d.ts",
|
|
8
|
+
"react-native": "src/index",
|
|
9
|
+
"source": "src/index",
|
|
10
|
+
"files": [
|
|
11
|
+
"src",
|
|
12
|
+
"react-native.config.js",
|
|
13
|
+
"lib",
|
|
14
|
+
"nitrogen",
|
|
15
|
+
"android/build.gradle",
|
|
16
|
+
"android/gradle.properties",
|
|
17
|
+
"android/fix-prefab.gradle",
|
|
18
|
+
"android/CMakeLists.txt",
|
|
19
|
+
"android/src",
|
|
20
|
+
"ios/**/*.h",
|
|
21
|
+
"ios/**/*.m",
|
|
22
|
+
"ios/**/*.mm",
|
|
23
|
+
"ios/**/*.cpp",
|
|
24
|
+
"ios/**/*.swift",
|
|
25
|
+
"cpp/*.hpp",
|
|
26
|
+
"cpp/*.cpp",
|
|
27
|
+
"cpp/zxing-core/core",
|
|
28
|
+
"cpp/zxing-core/wrappers/ios/Sources/Wrapper/Version.h",
|
|
29
|
+
"cpp/zxing-core/LICENSE",
|
|
30
|
+
"nitro.json",
|
|
31
|
+
"*.podspec",
|
|
32
|
+
"README.md"
|
|
33
|
+
],
|
|
34
|
+
"scripts": {
|
|
35
|
+
"typecheck": "tsc --noEmit",
|
|
36
|
+
"clean": "rm -rf android/build node_modules/**/android/build lib",
|
|
37
|
+
"build": "tsc",
|
|
38
|
+
"typescript": "tsc",
|
|
39
|
+
"specs": "tsc --noEmit false && nitrogen",
|
|
40
|
+
"prepack": "test -f cpp/zxing-core/core/CMakeLists.txt || (echo 'zxing-core submodule missing: run git submodule update --init' && exit 1)",
|
|
41
|
+
"release": "release-it"
|
|
42
|
+
},
|
|
43
|
+
"keywords": [
|
|
44
|
+
"react-native",
|
|
45
|
+
"camera",
|
|
46
|
+
"react-native-camera",
|
|
47
|
+
"vision-camera",
|
|
48
|
+
"barcode",
|
|
49
|
+
"barcode-scanner",
|
|
50
|
+
"qr-code",
|
|
51
|
+
"qrcode",
|
|
52
|
+
"scanner",
|
|
53
|
+
"code-scanner",
|
|
54
|
+
"zxing",
|
|
55
|
+
"zxing-cpp",
|
|
56
|
+
"frame-processor",
|
|
57
|
+
"ios",
|
|
58
|
+
"android"
|
|
59
|
+
],
|
|
60
|
+
"repository": {
|
|
61
|
+
"type": "git",
|
|
62
|
+
"url": "git+https://github.com/margelo/react-native-nitro-zxing.git"
|
|
63
|
+
},
|
|
64
|
+
"author": "Margelo",
|
|
65
|
+
"license": "MIT",
|
|
66
|
+
"bugs": {
|
|
67
|
+
"url": "https://github.com/margelo/react-native-nitro-zxing/issues"
|
|
68
|
+
},
|
|
69
|
+
"homepage": "https://github.com/margelo/react-native-nitro-zxing",
|
|
70
|
+
"publishConfig": {
|
|
71
|
+
"registry": "https://registry.npmjs.org/"
|
|
72
|
+
},
|
|
73
|
+
"devDependencies": {
|
|
74
|
+
"@types/react": "19.2.15",
|
|
75
|
+
"nitrogen": "0.37.0",
|
|
76
|
+
"react": "19.2.3",
|
|
77
|
+
"react-native": "0.85.3",
|
|
78
|
+
"react-native-nitro-image": "0.15.2",
|
|
79
|
+
"react-native-nitro-modules": "0.37.0",
|
|
80
|
+
"react-native-vision-camera": "5.2.3",
|
|
81
|
+
"typescript": "6.0.3"
|
|
82
|
+
},
|
|
83
|
+
"peerDependencies": {
|
|
84
|
+
"react": "*",
|
|
85
|
+
"react-native": "*",
|
|
86
|
+
"react-native-nitro-image": "*",
|
|
87
|
+
"react-native-nitro-modules": "*",
|
|
88
|
+
"react-native-vision-camera": "*"
|
|
89
|
+
},
|
|
90
|
+
"peerDependenciesMeta": {
|
|
91
|
+
"react-native-nitro-modules": {
|
|
92
|
+
"optional": true
|
|
93
|
+
}
|
|
94
|
+
},
|
|
95
|
+
"release-it": {
|
|
96
|
+
"npm": {
|
|
97
|
+
"publish": true
|
|
98
|
+
},
|
|
99
|
+
"git": false,
|
|
100
|
+
"github": {
|
|
101
|
+
"release": false
|
|
102
|
+
},
|
|
103
|
+
"hooks": {
|
|
104
|
+
"before:init": "bun typecheck",
|
|
105
|
+
"after:bump": "bun run build"
|
|
106
|
+
}
|
|
107
|
+
}
|
|
108
|
+
}
|
|
@@ -0,0 +1,16 @@
|
|
|
1
|
+
// https://github.com/react-native-community/cli/blob/main/docs/dependencies.md
|
|
2
|
+
|
|
3
|
+
module.exports = {
|
|
4
|
+
dependency: {
|
|
5
|
+
platforms: {
|
|
6
|
+
/**
|
|
7
|
+
* @type {import('@react-native-community/cli-types').IOSDependencyParams}
|
|
8
|
+
*/
|
|
9
|
+
ios: {},
|
|
10
|
+
/**
|
|
11
|
+
* @type {import('@react-native-community/cli-types').AndroidDependencyParams}
|
|
12
|
+
*/
|
|
13
|
+
android: {},
|
|
14
|
+
},
|
|
15
|
+
},
|
|
16
|
+
}
|
package/src/factory.ts
ADDED
|
@@ -0,0 +1,26 @@
|
|
|
1
|
+
import type { Image } from 'react-native-nitro-image'
|
|
2
|
+
import { NitroModules } from 'react-native-nitro-modules'
|
|
3
|
+
import type { Frame } from 'react-native-vision-camera'
|
|
4
|
+
import type { Barcode } from './specs/Barcode.nitro'
|
|
5
|
+
import type { BarcodeScanner } from './specs/BarcodeScanner.nitro'
|
|
6
|
+
import type {
|
|
7
|
+
BarcodeScannerOptions,
|
|
8
|
+
ZXingBarcodeScannerFactory,
|
|
9
|
+
} from './specs/BarcodeScannerFactory.nitro'
|
|
10
|
+
|
|
11
|
+
const factory = NitroModules.createHybridObject<ZXingBarcodeScannerFactory>(
|
|
12
|
+
'ZXingBarcodeScannerFactory',
|
|
13
|
+
)
|
|
14
|
+
|
|
15
|
+
/**
|
|
16
|
+
* Create a new {@linkcode BarcodeScanner}.
|
|
17
|
+
*
|
|
18
|
+
* The {@linkcode BarcodeScanner} can be used to
|
|
19
|
+
* scan {@linkcode Barcode}s in a {@linkcode Frame} or
|
|
20
|
+
* an existing {@linkcode Image}.
|
|
21
|
+
*/
|
|
22
|
+
export function createBarcodeScanner(
|
|
23
|
+
options: BarcodeScannerOptions,
|
|
24
|
+
): BarcodeScanner {
|
|
25
|
+
return factory.createBarcodeScanner(options)
|
|
26
|
+
}
|
package/src/index.ts
ADDED
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
export * from './factory'
|
|
2
|
+
export * from './specs/Barcode.nitro'
|
|
3
|
+
export * from './specs/BarcodeFormat'
|
|
4
|
+
export * from './specs/BarcodeScanner.nitro'
|
|
5
|
+
export * from './specs/BarcodeScannerFactory.nitro'
|
|
6
|
+
export * from './specs/BarcodeValueType'
|
|
7
|
+
export * from './specs/Point'
|
|
8
|
+
export * from './specs/Rect'
|
|
9
|
+
export * from './useBarcodeScanner'
|
|
@@ -0,0 +1,70 @@
|
|
|
1
|
+
import type { Image } from 'react-native-nitro-image'
|
|
2
|
+
import type { HybridObject } from 'react-native-nitro-modules'
|
|
3
|
+
import type { Frame } from 'react-native-vision-camera'
|
|
4
|
+
import type { createBarcodeScanner } from '../factory'
|
|
5
|
+
import type { BarcodeFormat } from './BarcodeFormat'
|
|
6
|
+
import type { BarcodeScanner } from './BarcodeScanner.nitro'
|
|
7
|
+
import type { BarcodeValueType } from './BarcodeValueType'
|
|
8
|
+
import type { Point } from './Point'
|
|
9
|
+
import type { Rect } from './Rect'
|
|
10
|
+
|
|
11
|
+
/**
|
|
12
|
+
* Represents a single detected Barcode.
|
|
13
|
+
*
|
|
14
|
+
* A {@linkcode Barcode} is produced via the
|
|
15
|
+
* {@linkcode BarcodeScanner} (see
|
|
16
|
+
* {@linkcode createBarcodeScanner | createBarcodeScanner(...)}).
|
|
17
|
+
*
|
|
18
|
+
* See {@linkcode BarcodeScanner.scanCodes | BarcodeScanner.scanCodes(...)}
|
|
19
|
+
* and {@linkcode BarcodeScanner.scanCodesInImageAsync | BarcodeScanner.scanCodesInImageAsync(...)}
|
|
20
|
+
* for information about Barcode coordinate systems.
|
|
21
|
+
*
|
|
22
|
+
* @example
|
|
23
|
+
* ```ts
|
|
24
|
+
* const barcode = ...
|
|
25
|
+
* console.log(`Barcode value: ${barcode.rawValue}`)
|
|
26
|
+
* ```
|
|
27
|
+
*/
|
|
28
|
+
export interface Barcode
|
|
29
|
+
extends HybridObject<{
|
|
30
|
+
ios: 'c++'
|
|
31
|
+
android: 'c++'
|
|
32
|
+
}> {
|
|
33
|
+
/**
|
|
34
|
+
* Get the format of this {@linkcode Barcode}.
|
|
35
|
+
* @see {@linkcode BarcodeFormat}
|
|
36
|
+
*/
|
|
37
|
+
readonly format: BarcodeFormat
|
|
38
|
+
|
|
39
|
+
/**
|
|
40
|
+
* Get the {@linkcode Barcode}'s bounding box.
|
|
41
|
+
*
|
|
42
|
+
* The coordinates are relative to the input {@linkcode Frame}
|
|
43
|
+
* or {@linkcode Image}.
|
|
44
|
+
*/
|
|
45
|
+
readonly boundingBox: Rect
|
|
46
|
+
/**
|
|
47
|
+
* Get the {@linkcode Barcode}'s corner points.
|
|
48
|
+
*
|
|
49
|
+
* The coordinates are relative to the input {@linkcode Frame}
|
|
50
|
+
* or {@linkcode Image}.
|
|
51
|
+
*/
|
|
52
|
+
readonly cornerPoints: Point[]
|
|
53
|
+
/**
|
|
54
|
+
* Get the {@linkcode Barcode}'s value in a user-friendly format.
|
|
55
|
+
*/
|
|
56
|
+
readonly displayValue: string | undefined
|
|
57
|
+
/**
|
|
58
|
+
* Get the {@linkcode Barcode}'s value in raw bytes.
|
|
59
|
+
*/
|
|
60
|
+
readonly rawBytes: ArrayBuffer | undefined
|
|
61
|
+
/**
|
|
62
|
+
* Get the {@linkcode Barcode}'s raw value as a string.
|
|
63
|
+
*/
|
|
64
|
+
readonly rawValue: string | undefined
|
|
65
|
+
/**
|
|
66
|
+
* Get the {@linkcode Barcode}'s value's type.
|
|
67
|
+
* @see {@linkcode BarcodeValueType}
|
|
68
|
+
*/
|
|
69
|
+
readonly valueType: BarcodeValueType
|
|
70
|
+
}
|
|
@@ -0,0 +1,31 @@
|
|
|
1
|
+
import type { Barcode } from './Barcode.nitro'
|
|
2
|
+
import type { BarcodeScanner } from './BarcodeScanner.nitro'
|
|
3
|
+
|
|
4
|
+
/**
|
|
5
|
+
* Represents a detected {@linkcode Barcode}'s format, or
|
|
6
|
+
* `'unknown'` if the format of a scanned Barcode could not be
|
|
7
|
+
* determined.
|
|
8
|
+
*/
|
|
9
|
+
export type BarcodeFormat =
|
|
10
|
+
| 'unknown'
|
|
11
|
+
| 'code-128'
|
|
12
|
+
| 'code-39'
|
|
13
|
+
| 'code-93'
|
|
14
|
+
| 'codabar'
|
|
15
|
+
| 'data-matrix'
|
|
16
|
+
| 'ean-13'
|
|
17
|
+
| 'ean-8'
|
|
18
|
+
| 'itf'
|
|
19
|
+
| 'qr-code'
|
|
20
|
+
| 'upc-a'
|
|
21
|
+
| 'upc-e'
|
|
22
|
+
| 'pdf-417'
|
|
23
|
+
| 'aztec'
|
|
24
|
+
|
|
25
|
+
/**
|
|
26
|
+
* Represents a target {@linkcode BarcodeFormat} that the {@linkcode BarcodeScanner}
|
|
27
|
+
* can be configured to scan for, or `'all-formats'` to scan for every supported format.
|
|
28
|
+
*/
|
|
29
|
+
export type TargetBarcodeFormat =
|
|
30
|
+
| Exclude<BarcodeFormat, 'unknown'>
|
|
31
|
+
| 'all-formats'
|
|
@@ -0,0 +1,91 @@
|
|
|
1
|
+
import type { Image } from 'react-native-nitro-image'
|
|
2
|
+
import type { HybridObject } from 'react-native-nitro-modules'
|
|
3
|
+
import type { Frame, PreviewViewMethods } from 'react-native-vision-camera'
|
|
4
|
+
import type { createBarcodeScanner } from '../factory'
|
|
5
|
+
import type { useBarcodeScanner } from '../useBarcodeScanner'
|
|
6
|
+
import type { Barcode } from './Barcode.nitro'
|
|
7
|
+
|
|
8
|
+
/**
|
|
9
|
+
* Represents a Barcode Scanner that uses ZXing (zxing-cpp).
|
|
10
|
+
*
|
|
11
|
+
* The {@linkcode BarcodeScanner} can be used in a
|
|
12
|
+
* Frame Processor by calling {@linkcode BarcodeScanner.scanCodes | scanCodes(...)},
|
|
13
|
+
* or for static images by calling
|
|
14
|
+
* {@linkcode BarcodeScanner.scanCodesInImageAsync | scanCodesInImageAsync(...)}.
|
|
15
|
+
*
|
|
16
|
+
* @see {@linkcode useBarcodeScanner | useBarcodeScanner(...)}
|
|
17
|
+
* @see {@linkcode createBarcodeScanner | createBarcodeScanner(...)}
|
|
18
|
+
*/
|
|
19
|
+
export interface BarcodeScanner
|
|
20
|
+
extends HybridObject<{ ios: 'c++'; android: 'c++' }> {
|
|
21
|
+
/**
|
|
22
|
+
* Synchronously detects {@linkcode Barcode}s in the
|
|
23
|
+
* given {@linkcode Frame}.
|
|
24
|
+
*
|
|
25
|
+
* All coordinates in the {@linkcode Barcode} are
|
|
26
|
+
* relative to the {@linkcode Frame}'s coordinate system.
|
|
27
|
+
*
|
|
28
|
+
* You can convert {@linkcode Barcode} coordinates to Camera coordinates using
|
|
29
|
+
* {@linkcode Frame.convertFramePointToCameraPoint | Frame.convertFramePointToCameraPoint(...)},
|
|
30
|
+
* and then convert the Camera coordinates to Preview View coordinates using
|
|
31
|
+
* {@linkcode PreviewViewMethods.convertCameraPointToViewPoint | PreviewViewMethods.convertCameraPointToViewPoint(...)}.
|
|
32
|
+
*
|
|
33
|
+
* @example
|
|
34
|
+
* ```ts
|
|
35
|
+
* const scanner = // ...
|
|
36
|
+
* const frame = // ...
|
|
37
|
+
* const previewView = // ...
|
|
38
|
+
*
|
|
39
|
+
* const barcodes = scanner.scanCodes(frame)
|
|
40
|
+
* for (const barcode of barcodes) {
|
|
41
|
+
* console.log('Barcode value:', barcode.rawValue)
|
|
42
|
+
* for (const point of barcode.cornerPoints) {
|
|
43
|
+
* const cameraPoint = frame.convertFramePointToCameraPoint(point)
|
|
44
|
+
* const previewPoint = previewView.convertCameraPointToViewPoint(cameraPoint)
|
|
45
|
+
* console.log('Corner Point:', previewPoint)
|
|
46
|
+
* }
|
|
47
|
+
* }
|
|
48
|
+
* ```
|
|
49
|
+
*/
|
|
50
|
+
scanCodes(frame: Frame): Barcode[]
|
|
51
|
+
/**
|
|
52
|
+
* Asynchronously detects {@linkcode Barcode}s in the
|
|
53
|
+
* given {@linkcode Frame}.
|
|
54
|
+
*
|
|
55
|
+
* The Frame must remain valid until the returned Promise settles. Do not
|
|
56
|
+
* call {@linkcode Frame.dispose | Frame.dispose()} before awaiting it.
|
|
57
|
+
*
|
|
58
|
+
* @see {@linkcode scanCodes}
|
|
59
|
+
*/
|
|
60
|
+
scanCodesAsync(frame: Frame): Promise<Barcode[]>
|
|
61
|
+
|
|
62
|
+
/**
|
|
63
|
+
* Asynchronously detects {@linkcode Barcode}s in the
|
|
64
|
+
* given {@linkcode Image}.
|
|
65
|
+
*
|
|
66
|
+
* This can be used to scan codes in an existing still image, such as
|
|
67
|
+
* an image loaded from disk, bundled resources or a URL via
|
|
68
|
+
* `react-native-nitro-image`.
|
|
69
|
+
*
|
|
70
|
+
* All coordinates in the returned {@linkcode Barcode}s are relative
|
|
71
|
+
* to the given {@linkcode Image}'s coordinate system.
|
|
72
|
+
*
|
|
73
|
+
* @example
|
|
74
|
+
* ```ts
|
|
75
|
+
* import { loadImage } from 'react-native-nitro-image'
|
|
76
|
+
* import { createBarcodeScanner } from 'react-native-nitro-zxing'
|
|
77
|
+
*
|
|
78
|
+
* const image = await loadImage({ url: 'https://example.com/barcode.png' })
|
|
79
|
+
* const scanner = createBarcodeScanner({ barcodeFormats: ['all-formats'] })
|
|
80
|
+
*
|
|
81
|
+
* try {
|
|
82
|
+
* const barcodes = await scanner.scanCodesInImageAsync(image)
|
|
83
|
+
* console.log('Barcode value:', barcodes[0]?.rawValue)
|
|
84
|
+
* } finally {
|
|
85
|
+
* image.dispose()
|
|
86
|
+
* scanner.dispose()
|
|
87
|
+
* }
|
|
88
|
+
* ```
|
|
89
|
+
*/
|
|
90
|
+
scanCodesInImageAsync(image: Image): Promise<Barcode[]>
|
|
91
|
+
}
|
|
@@ -0,0 +1,27 @@
|
|
|
1
|
+
import type { HybridObject } from 'react-native-nitro-modules'
|
|
2
|
+
import type { TargetBarcodeFormat } from './BarcodeFormat'
|
|
3
|
+
import type { BarcodeScanner } from './BarcodeScanner.nitro'
|
|
4
|
+
|
|
5
|
+
export interface BarcodeScannerOptions {
|
|
6
|
+
/**
|
|
7
|
+
* Specifies the formats to be used for Barcode
|
|
8
|
+
* scanning.
|
|
9
|
+
*
|
|
10
|
+
* If you want to detect all kinds of barcodes,
|
|
11
|
+
* use {@linkcode TargetBarcodeFormat | ['all-formats']}
|
|
12
|
+
*/
|
|
13
|
+
barcodeFormats: TargetBarcodeFormat[]
|
|
14
|
+
}
|
|
15
|
+
|
|
16
|
+
export interface ZXingBarcodeScannerFactory
|
|
17
|
+
extends HybridObject<{ ios: 'c++'; android: 'c++' }> {
|
|
18
|
+
/**
|
|
19
|
+
* Create a new {@linkcode BarcodeScanner}.
|
|
20
|
+
*/
|
|
21
|
+
createBarcodeScanner(options: BarcodeScannerOptions): BarcodeScanner
|
|
22
|
+
}
|
|
23
|
+
|
|
24
|
+
/**
|
|
25
|
+
* Alias of {@linkcode ZXingBarcodeScannerFactory}.
|
|
26
|
+
*/
|
|
27
|
+
export type BarcodeScannerFactory = ZXingBarcodeScannerFactory
|
|
@@ -0,0 +1,25 @@
|
|
|
1
|
+
import type { Barcode } from './Barcode.nitro'
|
|
2
|
+
import type { BarcodeFormat } from './BarcodeFormat'
|
|
3
|
+
|
|
4
|
+
/**
|
|
5
|
+
* Represents the semantic type of data encoded in a {@linkcode Barcode} - e.g.
|
|
6
|
+
* a URL, a phone number, or a WiFi config - or `'unknown'` if the content type
|
|
7
|
+
* could not be classified.
|
|
8
|
+
*
|
|
9
|
+
* This describes **what** the barcode's content represents, not the barcode's
|
|
10
|
+
* visual format (see {@linkcode BarcodeFormat}).
|
|
11
|
+
*/
|
|
12
|
+
export type BarcodeValueType =
|
|
13
|
+
| 'unknown'
|
|
14
|
+
| 'contact-info'
|
|
15
|
+
| 'email'
|
|
16
|
+
| 'isbn'
|
|
17
|
+
| 'phone'
|
|
18
|
+
| 'product'
|
|
19
|
+
| 'sms'
|
|
20
|
+
| 'text'
|
|
21
|
+
| 'url'
|
|
22
|
+
| 'wifi'
|
|
23
|
+
| 'geo'
|
|
24
|
+
| 'calendar-event'
|
|
25
|
+
| 'driver-license'
|
|
@@ -0,0 +1,22 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Represents a Rectangle in the current context's
|
|
3
|
+
* coordinate system.
|
|
4
|
+
*/
|
|
5
|
+
export interface Rect {
|
|
6
|
+
/**
|
|
7
|
+
* The left value (min X) of the Rectangle.
|
|
8
|
+
*/
|
|
9
|
+
left: number
|
|
10
|
+
/**
|
|
11
|
+
* The right value (max X) of the Rectangle.
|
|
12
|
+
*/
|
|
13
|
+
right: number
|
|
14
|
+
/**
|
|
15
|
+
* The top value (min Y) of the Rectangle.
|
|
16
|
+
*/
|
|
17
|
+
top: number
|
|
18
|
+
/**
|
|
19
|
+
* The bottom value (max Y) of the Rectangle.
|
|
20
|
+
*/
|
|
21
|
+
bottom: number
|
|
22
|
+
}
|