react-native-scanbot-barcode-scanner-sdk 3.1.0-beta1 → 3.1.0-beta10
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/Libraries.txt +352 -283
- package/RNScanbotBarcodeSDK.podspec +1 -1
- package/android/.gradle/7.0-rc-1/dependencies-accessors/dependencies-accessors.lock +0 -0
- package/android/.gradle/{6.1.1 → 7.0-rc-1/dependencies-accessors}/gc.properties +0 -0
- package/android/.gradle/{6.1.1 → 7.0-rc-1}/fileChanges/last-build.bin +0 -0
- package/android/.gradle/7.0-rc-1/fileHashes/fileHashes.lock +0 -0
- package/android/.gradle/7.0-rc-1/gc.properties +0 -0
- package/android/.gradle/7.1.1/dependencies-accessors/dependencies-accessors.lock +0 -0
- package/android/.gradle/7.1.1/dependencies-accessors/gc.properties +0 -0
- package/android/.gradle/7.1.1/fileChanges/last-build.bin +0 -0
- package/android/.gradle/7.1.1/fileHashes/fileHashes.lock +0 -0
- package/android/.gradle/7.1.1/gc.properties +0 -0
- package/android/.gradle/buildOutputCleanup/buildOutputCleanup.lock +0 -0
- package/android/.gradle/buildOutputCleanup/cache.properties +2 -2
- package/android/.gradle/checksums/checksums.lock +0 -0
- package/android/.gradle/checksums/md5-checksums.bin +0 -0
- package/android/.gradle/checksums/sha1-checksums.bin +0 -0
- package/android/.gradle/configuration-cache/gc.properties +0 -0
- package/android/.project +28 -0
- package/android/.settings/org.eclipse.buildship.core.prefs +13 -0
- package/android/build.gradle +1 -1
- package/android/local.properties +8 -0
- package/android/src/main/java/io/scanbot/barcodesdk/plugin/reactnative/JSONUtils.java +36 -2
- package/android/src/main/java/io/scanbot/barcodesdk/plugin/reactnative/ObjectMapper.java +5 -0
- package/android/src/main/java/io/scanbot/barcodesdk/plugin/reactnative/ScanbotBarcodeSdkConfiguration.java +28 -1
- package/android/src/main/java/io/scanbot/barcodesdk/plugin/reactnative/ScanbotBarcodeSdkModule.java +35 -20
- package/android/src/main/java/io/scanbot/barcodesdk/plugin/reactnative/components/barcodecameraview/ScanbotBarcodeCameraViewFragment.java +15 -1
- package/index.d.ts +7 -10
- package/ios/Components/BarcodeCameraView/RNScanbotBarcodeCameraView.h +1 -0
- package/ios/Components/BarcodeCameraView/RNScanbotBarcodeCameraView.m +14 -4
- package/ios/ScanbotBarcodeSdk.m +86 -16
- package/ios/Utils/BarcodeMapping.h +18 -1
- package/package.json +3 -3
- package/src/components/barcode-camera-view/scanbot-barcode-camera-view-types.tsx +8 -2
- package/src/configuration.ts +357 -300
- package/src/enum.ts +2 -0
- package/src/model.ts +15 -0
- package/android/.gradle/6.1.1/executionHistory/executionHistory.bin +0 -0
- package/android/.gradle/6.1.1/executionHistory/executionHistory.lock +0 -0
- package/android/.gradle/6.1.1/fileHashes/fileHashes.bin +0 -0
- package/android/.gradle/6.1.1/fileHashes/fileHashes.lock +0 -0
- package/android/.gradle/buildOutputCleanup/outputFiles.bin +0 -0
- package/android/.idea/caches/build_file_checksums.ser +0 -0
- package/android/.idea/compiler.xml +0 -6
- package/android/.idea/gradle.xml +0 -22
- package/android/.idea/jarRepositories.xml +0 -50
- package/android/.idea/libraries/Gradle__androidx_activity_activity_1_2_3_aar.xml +0 -16
- package/android/.idea/libraries/Gradle__androidx_annotation_annotation_1_2_0.xml +0 -11
- package/android/.idea/libraries/Gradle__androidx_annotation_annotation_experimental_1_1_0_rc01_aar.xml +0 -13
- package/android/.idea/libraries/Gradle__androidx_appcompat_appcompat_1_3_0_aar.xml +0 -16
- package/android/.idea/libraries/Gradle__androidx_appcompat_appcompat_resources_1_3_0_aar.xml +0 -13
- package/android/.idea/libraries/Gradle__androidx_arch_core_core_common_2_1_0.xml +0 -11
- package/android/.idea/libraries/Gradle__androidx_arch_core_core_runtime_2_1_0_aar.xml +0 -13
- package/android/.idea/libraries/Gradle__androidx_asynclayoutinflater_asynclayoutinflater_1_0_0_aar.xml +0 -13
- package/android/.idea/libraries/Gradle__androidx_camera_camera_camera2_1_0_0_aar.xml +0 -16
- package/android/.idea/libraries/Gradle__androidx_camera_camera_core_1_0_0_aar.xml +0 -16
- package/android/.idea/libraries/Gradle__androidx_camera_camera_lifecycle_1_0_0_aar.xml +0 -13
- package/android/.idea/libraries/Gradle__androidx_camera_camera_view_1_0_0_alpha24_aar.xml +0 -16
- package/android/.idea/libraries/Gradle__androidx_cardview_cardview_1_0_0_aar.xml +0 -13
- package/android/.idea/libraries/Gradle__androidx_collection_collection_1_1_0.xml +0 -11
- package/android/.idea/libraries/Gradle__androidx_constraintlayout_constraintlayout_2_0_4_aar.xml +0 -11
- package/android/.idea/libraries/Gradle__androidx_constraintlayout_constraintlayout_solver_2_0_4.xml +0 -9
- package/android/.idea/libraries/Gradle__androidx_coordinatorlayout_coordinatorlayout_1_1_0_aar.xml +0 -16
- package/android/.idea/libraries/Gradle__androidx_core_core_1_5_0_aar.xml +0 -16
- package/android/.idea/libraries/Gradle__androidx_core_core_ktx_1_3_2_aar.xml +0 -13
- package/android/.idea/libraries/Gradle__androidx_cursoradapter_cursoradapter_1_0_0_aar.xml +0 -13
- package/android/.idea/libraries/Gradle__androidx_customview_customview_1_0_0_aar.xml +0 -13
- package/android/.idea/libraries/Gradle__androidx_databinding_viewbinding_4_2_1_aar.xml +0 -13
- package/android/.idea/libraries/Gradle__androidx_documentfile_documentfile_1_0_0_aar.xml +0 -13
- package/android/.idea/libraries/Gradle__androidx_drawerlayout_drawerlayout_1_0_0_aar.xml +0 -16
- package/android/.idea/libraries/Gradle__androidx_dynamicanimation_dynamicanimation_1_0_0_aar.xml +0 -13
- package/android/.idea/libraries/Gradle__androidx_fragment_fragment_1_3_4_aar.xml +0 -16
- package/android/.idea/libraries/Gradle__androidx_interpolator_interpolator_1_0_0_aar.xml +0 -13
- package/android/.idea/libraries/Gradle__androidx_legacy_legacy_support_core_ui_1_0_0_aar.xml +0 -13
- package/android/.idea/libraries/Gradle__androidx_legacy_legacy_support_core_utils_1_0_0_aar.xml +0 -13
- package/android/.idea/libraries/Gradle__androidx_legacy_legacy_support_v4_1_0_0_aar.xml +0 -13
- package/android/.idea/libraries/Gradle__androidx_lifecycle_lifecycle_common_2_3_1.xml +0 -11
- package/android/.idea/libraries/Gradle__androidx_lifecycle_lifecycle_livedata_2_1_0_aar.xml +0 -13
- package/android/.idea/libraries/Gradle__androidx_lifecycle_lifecycle_livedata_core_2_3_1_aar.xml +0 -13
- package/android/.idea/libraries/Gradle__androidx_lifecycle_lifecycle_runtime_2_3_1_aar.xml +0 -13
- package/android/.idea/libraries/Gradle__androidx_lifecycle_lifecycle_runtime_ktx_2_3_1_aar.xml +0 -13
- package/android/.idea/libraries/Gradle__androidx_lifecycle_lifecycle_viewmodel_2_3_1_aar.xml +0 -13
- package/android/.idea/libraries/Gradle__androidx_lifecycle_lifecycle_viewmodel_savedstate_2_3_1_aar.xml +0 -13
- package/android/.idea/libraries/Gradle__androidx_loader_loader_1_0_0_aar.xml +0 -13
- package/android/.idea/libraries/Gradle__androidx_localbroadcastmanager_localbroadcastmanager_1_0_0_aar.xml +0 -13
- package/android/.idea/libraries/Gradle__androidx_media_media_1_0_0_aar.xml +0 -16
- package/android/.idea/libraries/Gradle__androidx_print_print_1_0_0_aar.xml +0 -16
- package/android/.idea/libraries/Gradle__androidx_recyclerview_recyclerview_1_1_0_aar.xml +0 -16
- package/android/.idea/libraries/Gradle__androidx_savedstate_savedstate_1_1_0_aar.xml +0 -13
- package/android/.idea/libraries/Gradle__androidx_slidingpanelayout_slidingpanelayout_1_0_0_aar.xml +0 -13
- package/android/.idea/libraries/Gradle__androidx_swiperefreshlayout_swiperefreshlayout_1_0_0_aar.xml +0 -16
- package/android/.idea/libraries/Gradle__androidx_transition_transition_1_2_0_aar.xml +0 -16
- package/android/.idea/libraries/Gradle__androidx_vectordrawable_vectordrawable_1_1_0_aar.xml +0 -13
- package/android/.idea/libraries/Gradle__androidx_vectordrawable_vectordrawable_animated_1_1_0_aar.xml +0 -13
- package/android/.idea/libraries/Gradle__androidx_versionedparcelable_versionedparcelable_1_1_1_aar.xml +0 -13
- package/android/.idea/libraries/Gradle__androidx_viewpager2_viewpager2_1_0_0_aar.xml +0 -16
- package/android/.idea/libraries/Gradle__androidx_viewpager_viewpager_1_0_0_aar.xml +0 -13
- package/android/.idea/libraries/Gradle__com_commonsware_cwac_camera_camera_0_6_41_aar.xml +0 -11
- package/android/.idea/libraries/Gradle__com_facebook_fresco_drawee_2_0_0_aar.xml +0 -15
- package/android/.idea/libraries/Gradle__com_facebook_fresco_fbcore_2_0_0_aar.xml +0 -18
- package/android/.idea/libraries/Gradle__com_facebook_fresco_fresco_2_0_0_aar.xml +0 -18
- package/android/.idea/libraries/Gradle__com_facebook_fresco_imagepipeline_2_0_0_aar.xml +0 -18
- package/android/.idea/libraries/Gradle__com_facebook_fresco_imagepipeline_base_2_0_0_aar.xml +0 -18
- package/android/.idea/libraries/Gradle__com_facebook_fresco_imagepipeline_okhttp3_2_0_0_aar.xml +0 -15
- package/android/.idea/libraries/Gradle__com_facebook_fresco_nativeimagefilters_2_0_0_aar.xml +0 -15
- package/android/.idea/libraries/Gradle__com_facebook_fresco_nativeimagetranscoder_2_0_0_aar.xml +0 -15
- package/android/.idea/libraries/Gradle__com_facebook_infer_annotation_infer_annotation_0_11_2.xml +0 -13
- package/android/.idea/libraries/Gradle__com_facebook_react_react_native_0_60_6_aar.xml +0 -18
- package/android/.idea/libraries/Gradle__com_facebook_soloader_soloader_0_6_0_aar.xml +0 -13
- package/android/.idea/libraries/Gradle__com_google_android_material_material_1_3_0_aar.xml +0 -16
- package/android/.idea/libraries/Gradle__com_google_code_findbugs_jsr305_3_0_2.xml +0 -13
- package/android/.idea/libraries/Gradle__com_google_code_gson_gson_2_8_6.xml +0 -13
- package/android/.idea/libraries/Gradle__com_google_dagger_dagger_2_35.xml +0 -13
- package/android/.idea/libraries/Gradle__com_google_guava_listenablefuture_1_0.xml +0 -13
- package/android/.idea/libraries/Gradle__com_squareup_okhttp3_okhttp_3_12_1.xml +0 -13
- package/android/.idea/libraries/Gradle__com_squareup_okhttp3_okhttp_urlconnection_3_12_1.xml +0 -13
- package/android/.idea/libraries/Gradle__com_squareup_okio_okio_1_15_0.xml +0 -13
- package/android/.idea/libraries/Gradle__commons_io_commons_io_2_4.xml +0 -13
- package/android/.idea/libraries/Gradle__io_reactivex_rxjava2_rxandroid_2_0_1_aar.xml +0 -15
- package/android/.idea/libraries/Gradle__io_reactivex_rxjava2_rxjava_2_1_5.xml +0 -13
- package/android/.idea/libraries/Gradle__io_scanbot_scanbot_barcode_scanner_sdk_3_0_1_aar.xml +0 -11
- package/android/.idea/libraries/Gradle__io_scanbot_scanbot_barcode_scanner_sdk_ui_3_0_1_aar.xml +0 -11
- package/android/.idea/libraries/Gradle__io_scanbot_scanbot_sdk_barcode_3_0_1_aar.xml +0 -11
- package/android/.idea/libraries/Gradle__io_scanbot_scanbot_sdk_base_3_0_1_aar.xml +0 -11
- package/android/.idea/libraries/Gradle__io_scanbot_scanbot_sdk_ui_barcode_3_0_1_aar.xml +0 -11
- package/android/.idea/libraries/Gradle__io_scanbot_scanbot_sdk_ui_base_3_0_1_aar.xml +0 -11
- package/android/.idea/libraries/Gradle__io_scanbot_sdk_barcode_assets_3_0_1_aar.xml +0 -11
- package/android/.idea/libraries/Gradle__io_scanbot_sdk_core_barcode_3_0_1_aar.xml +0 -11
- package/android/.idea/libraries/Gradle__io_scanbot_sdk_core_barcode_native_3_0_1_aar.xml +0 -11
- package/android/.idea/libraries/Gradle__io_scanbot_sdk_core_sap_3_0_1_aar.xml +0 -11
- package/android/.idea/libraries/Gradle__javax_inject_javax_inject_1.xml +0 -13
- package/android/.idea/libraries/Gradle__org_jetbrains_annotations_13_0.xml +0 -13
- package/android/.idea/libraries/Gradle__org_jetbrains_kotlin_kotlin_stdlib_1_4_20.xml +0 -13
- package/android/.idea/libraries/Gradle__org_jetbrains_kotlin_kotlin_stdlib_common_1_4_20.xml +0 -13
- package/android/.idea/libraries/Gradle__org_jetbrains_kotlin_kotlin_stdlib_jdk7_1_4_20.xml +0 -13
- package/android/.idea/libraries/Gradle__org_jetbrains_kotlinx_kotlinx_coroutines_android_1_4_1.xml +0 -13
- package/android/.idea/libraries/Gradle__org_jetbrains_kotlinx_kotlinx_coroutines_core_jvm_1_4_1.xml +0 -13
- package/android/.idea/libraries/Gradle__org_reactivestreams_reactive_streams_1_0_1.xml +0 -13
- package/android/.idea/misc.xml +0 -9
- package/android/.idea/modules/android.iml +0 -133
- package/android/.idea/modules.xml +0 -8
- package/android/.idea/vcs.xml +0 -6
- package/android/.idea/workspace.xml +0 -62
|
Binary file
|
|
File without changes
|
|
File without changes
|
|
Binary file
|
|
File without changes
|
|
File without changes
|
|
Binary file
|
|
Binary file
|
|
File without changes
|
|
Binary file
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
#
|
|
2
|
-
gradle.version=
|
|
1
|
+
#Mon Jan 31 14:23:43 CET 2022
|
|
2
|
+
gradle.version=7.1.1
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
File without changes
|
package/android/.project
ADDED
|
@@ -0,0 +1,28 @@
|
|
|
1
|
+
<?xml version="1.0" encoding="UTF-8"?>
|
|
2
|
+
<projectDescription>
|
|
3
|
+
<name>android</name>
|
|
4
|
+
<comment>Project android created by Buildship.</comment>
|
|
5
|
+
<projects>
|
|
6
|
+
</projects>
|
|
7
|
+
<buildSpec>
|
|
8
|
+
<buildCommand>
|
|
9
|
+
<name>org.eclipse.buildship.core.gradleprojectbuilder</name>
|
|
10
|
+
<arguments>
|
|
11
|
+
</arguments>
|
|
12
|
+
</buildCommand>
|
|
13
|
+
</buildSpec>
|
|
14
|
+
<natures>
|
|
15
|
+
<nature>org.eclipse.buildship.core.gradleprojectnature</nature>
|
|
16
|
+
</natures>
|
|
17
|
+
<filteredResources>
|
|
18
|
+
<filter>
|
|
19
|
+
<id>1637321714029</id>
|
|
20
|
+
<name></name>
|
|
21
|
+
<type>30</type>
|
|
22
|
+
<matcher>
|
|
23
|
+
<id>org.eclipse.core.resources.regexFilterMatcher</id>
|
|
24
|
+
<arguments>node_modules|.git|__CREATED_BY_JAVA_LANGUAGE_SERVER__</arguments>
|
|
25
|
+
</matcher>
|
|
26
|
+
</filter>
|
|
27
|
+
</filteredResources>
|
|
28
|
+
</projectDescription>
|
|
@@ -0,0 +1,13 @@
|
|
|
1
|
+
arguments=
|
|
2
|
+
auto.sync=false
|
|
3
|
+
build.scans.enabled=false
|
|
4
|
+
connection.gradle.distribution=GRADLE_DISTRIBUTION(VERSION(7.1.1))
|
|
5
|
+
connection.project.dir=
|
|
6
|
+
eclipse.preferences.version=1
|
|
7
|
+
gradle.user.home=
|
|
8
|
+
java.home=/Library/Java/JavaVirtualMachines/jdk-16.0.2.jdk/Contents/Home
|
|
9
|
+
jvm.arguments=
|
|
10
|
+
offline.mode=false
|
|
11
|
+
override.workspace.settings=true
|
|
12
|
+
show.console.view=true
|
|
13
|
+
show.executions.view=true
|
package/android/build.gradle
CHANGED
|
@@ -15,7 +15,7 @@ def DEFAULT_BUILD_TOOLS_VERSION = '28.0.3'
|
|
|
15
15
|
def DEFAULT_MIN_SDK_VERSION = 21
|
|
16
16
|
def DEFAULT_TARGET_SDK_VERSION = 29
|
|
17
17
|
|
|
18
|
-
def sdkVersion = '3.0
|
|
18
|
+
def sdkVersion = '3.1.0'
|
|
19
19
|
|
|
20
20
|
def safeExtGet(prop, fallback) {
|
|
21
21
|
rootProject.ext.has(prop) ? rootProject.ext.get(prop) : fallback
|
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
## This file must *NOT* be checked into Version Control Systems,
|
|
2
|
+
# as it contains information specific to your local configuration.
|
|
3
|
+
#
|
|
4
|
+
# Location of the SDK. This is only used by Gradle.
|
|
5
|
+
# For customization when using a Version Control System, please read the
|
|
6
|
+
# header note.
|
|
7
|
+
#Tue Jan 18 13:44:25 CET 2022
|
|
8
|
+
sdk.dir=/Users/rutkaybiyik/Library/Android/sdk
|
|
@@ -18,6 +18,7 @@ import com.facebook.react.bridge.WritableMap;
|
|
|
18
18
|
import com.facebook.react.bridge.WritableNativeMap;
|
|
19
19
|
|
|
20
20
|
import org.jetbrains.annotations.NotNull;
|
|
21
|
+
import org.json.JSONArray;
|
|
21
22
|
|
|
22
23
|
import java.util.ArrayList;
|
|
23
24
|
import java.util.EnumSet;
|
|
@@ -30,6 +31,7 @@ import io.scanbot.sdk.barcode.entity.BarcodeScannerAdditionalConfig;
|
|
|
30
31
|
import io.scanbot.sdk.barcode.entity.EngineMode;
|
|
31
32
|
import io.scanbot.sdk.barcode.entity.MSIPlesseyChecksumAlgorithm;
|
|
32
33
|
import io.scanbot.sdk.ui.view.barcode.configuration.BarcodeScannerAdditionalConfiguration;
|
|
34
|
+
import io.scanbot.sdk.ui.view.base.configuration.CameraOrientationMode;
|
|
33
35
|
|
|
34
36
|
public final class JSONUtils {
|
|
35
37
|
|
|
@@ -116,6 +118,30 @@ public final class JSONUtils {
|
|
|
116
118
|
return nativeBarcodeDocumentFormats;
|
|
117
119
|
}
|
|
118
120
|
|
|
121
|
+
public static @Nullable CameraOrientationMode extractCameraOrientationMode(final ReadableMap configuration) {
|
|
122
|
+
if (configuration.hasKey("allowedInterfaceOrientations")) {
|
|
123
|
+
String orientation = configuration.getString("allowedInterfaceOrientations");
|
|
124
|
+
if (orientation == null) {
|
|
125
|
+
orientation = "NONE";
|
|
126
|
+
}
|
|
127
|
+
switch (orientation) {
|
|
128
|
+
case "NONE":
|
|
129
|
+
break;
|
|
130
|
+
case "PORTRAIT":
|
|
131
|
+
case "PORTRAIT_UPSIDE_DOWN":
|
|
132
|
+
return CameraOrientationMode.PORTRAIT;
|
|
133
|
+
case "LANDSCAPE_LEFT":
|
|
134
|
+
case "LANDSCAPE_RIGHT":
|
|
135
|
+
case "LANDSCAPE":
|
|
136
|
+
return CameraOrientationMode.LANDSCAPE;
|
|
137
|
+
default:
|
|
138
|
+
return null;
|
|
139
|
+
}
|
|
140
|
+
}
|
|
141
|
+
|
|
142
|
+
return null;
|
|
143
|
+
}
|
|
144
|
+
|
|
119
145
|
public static @Nullable BarcodeScannerAdditionalConfig extractBarcodeScannerAdditionalConfig(final ReadableMap configuration) {
|
|
120
146
|
boolean changed = false;
|
|
121
147
|
|
|
@@ -158,13 +184,20 @@ public final class JSONUtils {
|
|
|
158
184
|
changed = true;
|
|
159
185
|
}
|
|
160
186
|
|
|
187
|
+
boolean lowPowerMode = BarcodeScannerAdditionalConfig.DEFAULT_LOW_POWER_MODE;
|
|
188
|
+
if (configuration.hasKey("lowPowerMode")) {
|
|
189
|
+
lowPowerMode = configuration.getBoolean("lowPowerMode");
|
|
190
|
+
changed = true;
|
|
191
|
+
}
|
|
192
|
+
|
|
161
193
|
return changed ? new BarcodeScannerAdditionalConfig(
|
|
162
194
|
minimumTextLength,
|
|
163
195
|
maximumTextLength,
|
|
164
196
|
minimum1DQuietZoneSize,
|
|
165
197
|
gs1DecodingEnabled,
|
|
166
198
|
msiPlesseyChecksumAlgorithms,
|
|
167
|
-
stripCheckDigits
|
|
199
|
+
stripCheckDigits,
|
|
200
|
+
lowPowerMode
|
|
168
201
|
) : null;
|
|
169
202
|
}
|
|
170
203
|
|
|
@@ -176,7 +209,8 @@ public final class JSONUtils {
|
|
|
176
209
|
config.getMinimum1DQuietZoneSize(),
|
|
177
210
|
config.getGs1DecodingEnabled(),
|
|
178
211
|
config.getMsiPlesseyChecksumAlgorithms(),
|
|
179
|
-
config.getStripCheckDigits()
|
|
212
|
+
config.getStripCheckDigits(),
|
|
213
|
+
config.getLowPowerMode()
|
|
180
214
|
) : null;
|
|
181
215
|
}
|
|
182
216
|
|
|
@@ -63,6 +63,11 @@ public final class ObjectMapper {
|
|
|
63
63
|
continue;
|
|
64
64
|
}
|
|
65
65
|
|
|
66
|
+
// The default FRONT camera module should be FRONT_MIRRORED on Android
|
|
67
|
+
if ("cameraModule".equals(prop) && "FRONT".equals(value)) {
|
|
68
|
+
value = "FRONT_MIRRORED";
|
|
69
|
+
}
|
|
70
|
+
|
|
66
71
|
final String setterName = "set" + prop.substring(0, 1).toUpperCase() + prop.substring(1);
|
|
67
72
|
|
|
68
73
|
if (methodMap.containsKey(setterName)) {
|
|
@@ -7,8 +7,11 @@ package io.scanbot.barcodesdk.plugin.reactnative;
|
|
|
7
7
|
|
|
8
8
|
public class ScanbotBarcodeSdkConfiguration {
|
|
9
9
|
private boolean loggingEnabled = false;
|
|
10
|
+
private boolean enableNativeLogging = false;
|
|
10
11
|
private String licenseKey;
|
|
11
12
|
private String storageBaseDirectory = null;
|
|
13
|
+
private boolean useCameraX = false;
|
|
14
|
+
private boolean allowXnnpackAcceleration = true;
|
|
12
15
|
private boolean allowGpuAcceleration = true;
|
|
13
16
|
|
|
14
17
|
public boolean isLoggingEnabled() {
|
|
@@ -42,4 +45,28 @@ public class ScanbotBarcodeSdkConfiguration {
|
|
|
42
45
|
public void setAllowGpuAcceleration(boolean allowGpuAcceleration) {
|
|
43
46
|
this.allowGpuAcceleration = allowGpuAcceleration;
|
|
44
47
|
}
|
|
45
|
-
|
|
48
|
+
|
|
49
|
+
public boolean getUseCameraX() {
|
|
50
|
+
return useCameraX;
|
|
51
|
+
}
|
|
52
|
+
|
|
53
|
+
public void setUseCameraX(boolean useCameraX) {
|
|
54
|
+
this.useCameraX = useCameraX;
|
|
55
|
+
}
|
|
56
|
+
|
|
57
|
+
public boolean getAllowXnnpackAcceleration() {
|
|
58
|
+
return allowXnnpackAcceleration;
|
|
59
|
+
}
|
|
60
|
+
|
|
61
|
+
public void setAllowXnnpackAcceleration(boolean allowXnnpackAcceleration) {
|
|
62
|
+
this.allowXnnpackAcceleration = allowXnnpackAcceleration;
|
|
63
|
+
}
|
|
64
|
+
|
|
65
|
+
public boolean getEnableNativeLogging() {
|
|
66
|
+
return enableNativeLogging;
|
|
67
|
+
}
|
|
68
|
+
|
|
69
|
+
public void setEnableNativeLogging(boolean enableNativeLogging) {
|
|
70
|
+
this.enableNativeLogging = enableNativeLogging;
|
|
71
|
+
}
|
|
72
|
+
}
|
package/android/src/main/java/io/scanbot/barcodesdk/plugin/reactnative/ScanbotBarcodeSdkModule.java
CHANGED
|
@@ -5,31 +5,23 @@
|
|
|
5
5
|
*/
|
|
6
6
|
package io.scanbot.barcodesdk.plugin.reactnative;
|
|
7
7
|
|
|
8
|
-
import android.app.Activity;
|
|
9
8
|
import android.app.Application;
|
|
10
9
|
import android.content.Intent;
|
|
11
10
|
import android.graphics.Bitmap;
|
|
12
11
|
import android.net.Uri;
|
|
13
12
|
import android.provider.MediaStore;
|
|
14
|
-
|
|
15
13
|
import com.facebook.react.bridge.ActivityEventListener;
|
|
16
14
|
import com.facebook.react.bridge.Arguments;
|
|
17
|
-
import com.facebook.react.bridge.BaseActivityEventListener;
|
|
18
15
|
import com.facebook.react.bridge.Promise;
|
|
19
16
|
import com.facebook.react.bridge.ReactApplicationContext;
|
|
20
17
|
import com.facebook.react.bridge.ReactContext;
|
|
21
18
|
import com.facebook.react.bridge.ReactContextBaseJavaModule;
|
|
22
19
|
import com.facebook.react.bridge.ReactMethod;
|
|
23
|
-
import com.facebook.react.bridge.Callback;
|
|
24
|
-
import com.facebook.react.bridge.ReadableArray;
|
|
25
20
|
import com.facebook.react.bridge.ReadableMap;
|
|
26
21
|
import com.facebook.react.bridge.WritableArray;
|
|
27
22
|
import com.facebook.react.bridge.WritableMap;
|
|
28
|
-
import com.facebook.react.bridge.WritableNativeMap;
|
|
29
|
-
|
|
30
23
|
import org.jetbrains.annotations.Contract;
|
|
31
24
|
import org.jetbrains.annotations.NotNull;
|
|
32
|
-
|
|
33
25
|
import java.io.File;
|
|
34
26
|
import java.io.IOException;
|
|
35
27
|
import java.util.ArrayList;
|
|
@@ -37,9 +29,7 @@ import java.util.HashMap;
|
|
|
37
29
|
import java.util.Map;
|
|
38
30
|
import java.util.concurrent.ExecutorService;
|
|
39
31
|
import java.util.concurrent.Executors;
|
|
40
|
-
|
|
41
32
|
import io.scanbot.sap.SdkLicenseInfo;
|
|
42
|
-
import io.scanbot.sap.Status;
|
|
43
33
|
import io.scanbot.sdk.barcode.ScanbotBarcodeDetector;
|
|
44
34
|
import io.scanbot.sdk.barcode.entity.BarcodeDocumentFormat;
|
|
45
35
|
import io.scanbot.sdk.barcode.entity.BarcodeFormat;
|
|
@@ -47,20 +37,18 @@ import io.scanbot.sdk.barcode.entity.BarcodeItem;
|
|
|
47
37
|
import io.scanbot.sdk.barcode.entity.BarcodeScannerAdditionalConfigBuilder;
|
|
48
38
|
import io.scanbot.sdk.barcode.entity.BarcodeScannerConfigBuilder;
|
|
49
39
|
import io.scanbot.sdk.barcode.entity.BarcodeScanningResult;
|
|
50
|
-
import io.scanbot.sdk.barcode.entity.EngineMode;
|
|
51
40
|
import io.scanbot.sdk.barcode_scanner.ScanbotBarcodeScannerSDK;
|
|
52
41
|
import io.scanbot.sdk.barcode_scanner.ScanbotBarcodeScannerSDKInitializer;
|
|
53
42
|
import io.scanbot.sdk.ui.barcode_scanner.view.barcode.BarcodeScannerActivity;
|
|
54
43
|
import io.scanbot.sdk.ui.barcode_scanner.view.barcode.batch.BatchBarcodeScannerActivity;
|
|
55
44
|
import io.scanbot.sdk.ui.view.barcode.batch.configuration.BatchBarcodeScannerConfiguration;
|
|
56
|
-
import io.scanbot.sdk.ui.view.barcode.configuration.BarcodeImageGenerationType;
|
|
57
45
|
import io.scanbot.sdk.ui.view.barcode.configuration.BarcodeScannerAdditionalConfiguration;
|
|
58
46
|
import io.scanbot.sdk.ui.view.barcode.configuration.BarcodeScannerConfiguration;
|
|
47
|
+
import io.scanbot.sdk.ui.view.base.configuration.CameraOrientationMode;
|
|
59
48
|
import kotlin.Unit;
|
|
60
49
|
import kotlin.jvm.functions.Function1;
|
|
61
|
-
import
|
|
50
|
+
import android.app.Activity;
|
|
62
51
|
|
|
63
|
-
import static io.scanbot.barcodesdk.plugin.reactnative.LogUtils.debugLog;
|
|
64
52
|
|
|
65
53
|
public class ScanbotBarcodeSdkModule extends ReactContextBaseJavaModule implements ActivityEventListener {
|
|
66
54
|
|
|
@@ -108,10 +96,12 @@ public class ScanbotBarcodeSdkModule extends ReactContextBaseJavaModule implemen
|
|
|
108
96
|
final String callbackMessage;
|
|
109
97
|
|
|
110
98
|
final ScanbotBarcodeScannerSDKInitializer initializer = new ScanbotBarcodeScannerSDKInitializer();
|
|
111
|
-
initializer.withLogging(configuration.isLoggingEnabled());
|
|
99
|
+
initializer.withLogging(configuration.isLoggingEnabled(), configuration.getEnableNativeLogging());
|
|
112
100
|
LogUtils.setLoggingEnabled(configuration.isLoggingEnabled());
|
|
113
101
|
|
|
114
102
|
initializer.allowGpuAcceleration(configuration.getAllowGpuAcceleration());
|
|
103
|
+
initializer.allowXnnpackAcceleration(configuration.getAllowXnnpackAcceleration());
|
|
104
|
+
initializer.useCameraXRtuUi(configuration.getUseCameraX());
|
|
115
105
|
|
|
116
106
|
if (configuration.getStorageBaseDirectory() != null && !"".equals(configuration.getStorageBaseDirectory())) {
|
|
117
107
|
final Uri uri = Uri.parse(configuration.getStorageBaseDirectory());
|
|
@@ -247,6 +237,11 @@ public class ScanbotBarcodeSdkModule extends ReactContextBaseJavaModule implemen
|
|
|
247
237
|
|
|
248
238
|
safeMap(options, configuration, promise);
|
|
249
239
|
|
|
240
|
+
CameraOrientationMode orientationMode = JSONUtils.extractCameraOrientationMode(options);
|
|
241
|
+
if (orientationMode != null) {
|
|
242
|
+
configuration.setOrientationLockMode(orientationMode);
|
|
243
|
+
}
|
|
244
|
+
|
|
250
245
|
final ArrayList<BarcodeFormat> formats = JSONUtils.extractBarcodeFormats(options);
|
|
251
246
|
if (!formats.isEmpty()) {
|
|
252
247
|
configuration.setBarcodeFormatsFilter(formats);
|
|
@@ -275,6 +270,13 @@ public class ScanbotBarcodeSdkModule extends ReactContextBaseJavaModule implemen
|
|
|
275
270
|
}
|
|
276
271
|
}
|
|
277
272
|
|
|
273
|
+
@ReactMethod
|
|
274
|
+
public void closeBarcodeScanner(final Promise promise) {
|
|
275
|
+
final ReactContext context = getReactApplicationContext();
|
|
276
|
+
BarcodeScannerActivity.forceClose(context);
|
|
277
|
+
promise.resolve(null);
|
|
278
|
+
}
|
|
279
|
+
|
|
278
280
|
@ReactMethod
|
|
279
281
|
public void startBatchBarcodeScanner(ReadableMap configuration, final Promise promise) {
|
|
280
282
|
final ReactContext context = getReactApplicationContext();
|
|
@@ -291,6 +293,11 @@ public class ScanbotBarcodeSdkModule extends ReactContextBaseJavaModule implemen
|
|
|
291
293
|
nativeConfig.setAdditionalDetectionParameters(additionalConfiguration);
|
|
292
294
|
}
|
|
293
295
|
|
|
296
|
+
CameraOrientationMode orientationMode = JSONUtils.extractCameraOrientationMode(configuration);
|
|
297
|
+
if (orientationMode != null) {
|
|
298
|
+
nativeConfig.setOrientationLockMode(orientationMode);
|
|
299
|
+
}
|
|
300
|
+
|
|
294
301
|
// Barcode Format Filters
|
|
295
302
|
ArrayList<BarcodeFormat> formats = JSONUtils.extractBarcodeFormats(configuration);
|
|
296
303
|
if (!formats.isEmpty()) {
|
|
@@ -315,6 +322,13 @@ public class ScanbotBarcodeSdkModule extends ReactContextBaseJavaModule implemen
|
|
|
315
322
|
}
|
|
316
323
|
}
|
|
317
324
|
|
|
325
|
+
@ReactMethod
|
|
326
|
+
public void closeBatchBarcodeScanner(final Promise promise) {
|
|
327
|
+
final ReactContext context = getReactApplicationContext();
|
|
328
|
+
BatchBarcodeScannerActivity.forceClose(context, false);
|
|
329
|
+
promise.resolve(null);
|
|
330
|
+
}
|
|
331
|
+
|
|
318
332
|
@ReactMethod
|
|
319
333
|
public void cleanup(final Promise promise) {
|
|
320
334
|
if (rejectIfUninitialized(promise)) {
|
|
@@ -345,7 +359,7 @@ public class ScanbotBarcodeSdkModule extends ReactContextBaseJavaModule implemen
|
|
|
345
359
|
|
|
346
360
|
switch (requestCode) {
|
|
347
361
|
case REQUEST_SB_BARCODE_SCANNER:
|
|
348
|
-
this.handleBarcodeScannerActivityCompletion(intent,
|
|
362
|
+
this.handleBarcodeScannerActivityCompletion(intent, resultCode);
|
|
349
363
|
return;
|
|
350
364
|
|
|
351
365
|
default:
|
|
@@ -357,13 +371,14 @@ public class ScanbotBarcodeSdkModule extends ReactContextBaseJavaModule implemen
|
|
|
357
371
|
public void onNewIntent(Intent intent) {
|
|
358
372
|
}
|
|
359
373
|
|
|
360
|
-
private void handleBarcodeScannerActivityCompletion(final Intent intent,
|
|
374
|
+
private void handleBarcodeScannerActivityCompletion(final Intent intent, final int resultCode) {
|
|
361
375
|
Promise promise = this.activityCallbackPromise;
|
|
362
376
|
this.activityCallbackPromise = null;
|
|
363
377
|
|
|
364
|
-
|
|
365
|
-
|
|
366
|
-
|
|
378
|
+
final BarcodeScannerActivity.Result barcodeResult = BarcodeScannerActivity.extractResult(resultCode, intent);
|
|
379
|
+
|
|
380
|
+
if (barcodeResult.getResultOk()) {
|
|
381
|
+
final WritableMap result = jsonResultFromBarcodeScannerResult(barcodeResult.getResult());
|
|
367
382
|
|
|
368
383
|
String imagePath = intent.getStringExtra(BarcodeScannerActivity.SCANNED_BARCODE_IMAGE_PATH_EXTRA);
|
|
369
384
|
if (imagePath == null) {
|
|
@@ -34,6 +34,8 @@ import io.scanbot.sdk.barcode.BarcodeDetectorFrameHandler;
|
|
|
34
34
|
import io.scanbot.sdk.barcode.DefaultScanbotBarcodeDetector;
|
|
35
35
|
import io.scanbot.sdk.barcode.ScanbotBarcodeDetector;
|
|
36
36
|
import io.scanbot.sdk.barcode.entity.BarcodeItem;
|
|
37
|
+
import io.scanbot.sdk.barcode.entity.BarcodeScannerAdditionalConfig;
|
|
38
|
+
import io.scanbot.sdk.barcode.entity.BarcodeScannerAdditionalConfigBuilder;
|
|
37
39
|
import io.scanbot.sdk.barcode.entity.BarcodeScannerConfigBuilder;
|
|
38
40
|
import io.scanbot.sdk.barcode.entity.BarcodeScanningResult;
|
|
39
41
|
import io.scanbot.sdk.camera.CameraOpenCallback;
|
|
@@ -143,7 +145,19 @@ public class ScanbotBarcodeCameraViewFragment extends Fragment implements Barcod
|
|
|
143
145
|
b.setEngineMode(configuration.engineMode);
|
|
144
146
|
|
|
145
147
|
if(configuration.additionalConfiguration != null) {
|
|
146
|
-
b.
|
|
148
|
+
b.modifyAdditionalConfig(new Function1<BarcodeScannerAdditionalConfigBuilder, Unit>() {
|
|
149
|
+
@Override
|
|
150
|
+
public Unit invoke(BarcodeScannerAdditionalConfigBuilder ab) {
|
|
151
|
+
final BarcodeScannerAdditionalConfig config = configuration.additionalConfiguration;
|
|
152
|
+
ab.setMinimumTextLength(config.getMinimumTextLength());
|
|
153
|
+
ab.setMaximumTextLength(config.getMaximumTextLength());
|
|
154
|
+
ab.setMsiPlesseyChecksumAlgorithms(config.getMsiPlesseyChecksumAlgorithms());
|
|
155
|
+
ab.setStripCheckDigits(config.getStripCheckDigits());
|
|
156
|
+
ab.setGs1DecodingEnabled(config.getGs1DecodingEnabled());
|
|
157
|
+
ab.setMinimum1DQuietZoneSize(config.getMinimum1DQuietZoneSize());
|
|
158
|
+
return Unit.INSTANCE;
|
|
159
|
+
}
|
|
160
|
+
});
|
|
147
161
|
}
|
|
148
162
|
return Unit.INSTANCE;
|
|
149
163
|
}
|
package/index.d.ts
CHANGED
|
@@ -1,4 +1,5 @@
|
|
|
1
|
-
import {
|
|
1
|
+
import { InitializationOptions } from "react-native-scanbot-barcode-scanner-sdk/src/model";
|
|
2
|
+
import { BarcodeScannerConfiguration, BatchBarcodeScannerConfiguration, DetectBarcodesOnImageArguments } from "./src/configuration";
|
|
2
3
|
import { BarcodeDocumentFormat, BarcodeFormat, EngineMode } from "./src/enum";
|
|
3
4
|
import { BarcodeResult, BarcodeScannerResult, BatchBarcodeScannerResult } from "./src/result";
|
|
4
5
|
|
|
@@ -16,24 +17,20 @@ export {
|
|
|
16
17
|
|
|
17
18
|
export interface ScanbotBarcodeSdk {
|
|
18
19
|
// SDK Internal
|
|
19
|
-
initializeSdk(options:
|
|
20
|
+
initializeSdk(options: InitializationOptions): Promise<{result: string}>;
|
|
20
21
|
getLicenseInfo(): Promise<any>;
|
|
21
22
|
cleanup(): Promise<void>;
|
|
22
23
|
|
|
23
24
|
// RTU-UI Barcode Scanning
|
|
24
25
|
startBarcodeScanner(configuration: BarcodeScannerConfiguration): Promise<BarcodeScannerResult>;
|
|
26
|
+
closeBarcodeScanner(): Promise<void>;
|
|
27
|
+
|
|
25
28
|
startBatchBarcodeScanner(configuration: BatchBarcodeScannerConfiguration): Promise<BatchBarcodeScannerResult>;
|
|
29
|
+
closeBatchBarcodeScanner(): Promise<void>;
|
|
26
30
|
|
|
27
31
|
// Other Barcode Scanning functionalities
|
|
28
32
|
detectBarcodesOnImage(
|
|
29
|
-
args:
|
|
30
|
-
imageFileUri: string,
|
|
31
|
-
barcodeFormats?: BarcodeFormat[],
|
|
32
|
-
acceptedDocumentFormats?: BarcodeDocumentFormat[],
|
|
33
|
-
minimumTextLength?: number, // NOTE: This feature works on ITF barcodes only.
|
|
34
|
-
maximumTextLength?: number, // NOTE: This feature works on ITF barcodes only.
|
|
35
|
-
minimum1DBarcodesQuietZone?: number //NOTE: This feature works on ITF barcodes only.
|
|
36
|
-
}
|
|
33
|
+
args: DetectBarcodesOnImageArguments
|
|
37
34
|
): Promise<BarcodeResult>;
|
|
38
35
|
}
|
|
39
36
|
|
|
@@ -44,6 +44,7 @@
|
|
|
44
44
|
@property (nonatomic, copy) NSNumber* _Nullable gs1DecodingEnabled;
|
|
45
45
|
@property (nonatomic, copy) NSNumber* _Nullable minimumTextLength;
|
|
46
46
|
@property (nonatomic, copy) NSNumber* _Nullable maximumTextLength;
|
|
47
|
+
@property (nonatomic, copy) NSNumber* _Nullable stripCheckDigits;
|
|
47
48
|
@property (nonatomic, copy) NSArray<SBSDKBarcodeType *>* _Nullable barcodeFormats;
|
|
48
49
|
@property (nonatomic, copy) NSArray<SBSDKBarcodeDocumentType *>* _Nullable acceptedDocumentFormats;
|
|
49
50
|
@property (nonatomic) SBSDKBarcodeMSIPlesseyChecksumAlgorithm msiPlesseyChecksumAlgorithm;
|
|
@@ -112,18 +112,28 @@
|
|
|
112
112
|
if (_cameraViewConfiguration.acceptedDocumentFormats) {
|
|
113
113
|
viewController.acceptedDocumentTypes = _cameraViewConfiguration.acceptedDocumentFormats;
|
|
114
114
|
}
|
|
115
|
+
|
|
116
|
+
// Map Additional Parameters
|
|
117
|
+
SBSDKBarcodeAdditionalParameters* additionalParameters = [[SBSDKBarcodeAdditionalParameters alloc] init];
|
|
118
|
+
|
|
115
119
|
if (_cameraViewConfiguration.gs1DecodingEnabled) {
|
|
116
|
-
|
|
120
|
+
additionalParameters.enableGS1Decoding = [_cameraViewConfiguration.gs1DecodingEnabled boolValue];
|
|
117
121
|
}
|
|
118
122
|
if (_cameraViewConfiguration.maximumTextLength) {
|
|
119
|
-
|
|
123
|
+
additionalParameters.maximumTextLength = [_cameraViewConfiguration.maximumTextLength intValue];
|
|
120
124
|
}
|
|
121
125
|
if (_cameraViewConfiguration.minimumTextLength) {
|
|
122
|
-
|
|
126
|
+
additionalParameters.minimumTextLength = [_cameraViewConfiguration.minimumTextLength intValue];
|
|
123
127
|
}
|
|
124
128
|
if (_cameraViewConfiguration.msiPlesseyChecksumAlgorithm != -1) {
|
|
125
|
-
|
|
129
|
+
additionalParameters.msiPlesseyChecksumAlgorithm = _cameraViewConfiguration.msiPlesseyChecksumAlgorithm;
|
|
130
|
+
}
|
|
131
|
+
if (_cameraViewConfiguration.stripCheckDigits) {
|
|
132
|
+
additionalParameters.stripCheckDigits = [_cameraViewConfiguration.stripCheckDigits boolValue];
|
|
126
133
|
}
|
|
134
|
+
|
|
135
|
+
viewController.additionalDetectionParameters = additionalParameters;
|
|
136
|
+
|
|
127
137
|
if (_cameraViewConfiguration.cameraZoomFactor) {
|
|
128
138
|
CGFloat value = [_cameraViewConfiguration.cameraZoomFactor floatValue];
|
|
129
139
|
if (value != _userDefinedCameraZoomFactor || _userDefinedCameraZoomFactor == -1) {
|