react-native-scanbot-barcode-scanner-sdk 3.1.0-alpha1 → 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 +37 -1
- package/android/src/main/java/io/scanbot/barcodesdk/plugin/reactnative/ScanbotBarcodeSdkModule.java +37 -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 +6 -3
- package/src/components/barcode-camera-view/scanbot-barcode-camera-view-types.tsx +121 -0
- package/src/components/barcode-camera-view/scanbot-barcode-camera-view.tsx +163 -0
- package/src/components/barcode-camera-view/scanbot-native-barcode-camera-view.tsx +6 -0
- package/src/configuration.ts +357 -300
- package/src/enum.ts +2 -0
- package/src/model.ts +38 -1
- 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,12 @@ 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;
|
|
15
|
+
private boolean allowGpuAcceleration = true;
|
|
12
16
|
|
|
13
17
|
public boolean isLoggingEnabled() {
|
|
14
18
|
return loggingEnabled;
|
|
@@ -33,4 +37,36 @@ public class ScanbotBarcodeSdkConfiguration {
|
|
|
33
37
|
public void setStorageBaseDirectory(String storageBaseDirectory) {
|
|
34
38
|
this.storageBaseDirectory = storageBaseDirectory;
|
|
35
39
|
}
|
|
36
|
-
|
|
40
|
+
|
|
41
|
+
public boolean getAllowGpuAcceleration() {
|
|
42
|
+
return allowGpuAcceleration;
|
|
43
|
+
}
|
|
44
|
+
|
|
45
|
+
public void setAllowGpuAcceleration(boolean allowGpuAcceleration) {
|
|
46
|
+
this.allowGpuAcceleration = allowGpuAcceleration;
|
|
47
|
+
}
|
|
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,9 +96,13 @@ 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
|
|
|
102
|
+
initializer.allowGpuAcceleration(configuration.getAllowGpuAcceleration());
|
|
103
|
+
initializer.allowXnnpackAcceleration(configuration.getAllowXnnpackAcceleration());
|
|
104
|
+
initializer.useCameraXRtuUi(configuration.getUseCameraX());
|
|
105
|
+
|
|
114
106
|
if (configuration.getStorageBaseDirectory() != null && !"".equals(configuration.getStorageBaseDirectory())) {
|
|
115
107
|
final Uri uri = Uri.parse(configuration.getStorageBaseDirectory());
|
|
116
108
|
final File customStorageBaseDirectory = new File(uri.getPath());
|
|
@@ -245,6 +237,11 @@ public class ScanbotBarcodeSdkModule extends ReactContextBaseJavaModule implemen
|
|
|
245
237
|
|
|
246
238
|
safeMap(options, configuration, promise);
|
|
247
239
|
|
|
240
|
+
CameraOrientationMode orientationMode = JSONUtils.extractCameraOrientationMode(options);
|
|
241
|
+
if (orientationMode != null) {
|
|
242
|
+
configuration.setOrientationLockMode(orientationMode);
|
|
243
|
+
}
|
|
244
|
+
|
|
248
245
|
final ArrayList<BarcodeFormat> formats = JSONUtils.extractBarcodeFormats(options);
|
|
249
246
|
if (!formats.isEmpty()) {
|
|
250
247
|
configuration.setBarcodeFormatsFilter(formats);
|
|
@@ -273,6 +270,13 @@ public class ScanbotBarcodeSdkModule extends ReactContextBaseJavaModule implemen
|
|
|
273
270
|
}
|
|
274
271
|
}
|
|
275
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
|
+
|
|
276
280
|
@ReactMethod
|
|
277
281
|
public void startBatchBarcodeScanner(ReadableMap configuration, final Promise promise) {
|
|
278
282
|
final ReactContext context = getReactApplicationContext();
|
|
@@ -289,6 +293,11 @@ public class ScanbotBarcodeSdkModule extends ReactContextBaseJavaModule implemen
|
|
|
289
293
|
nativeConfig.setAdditionalDetectionParameters(additionalConfiguration);
|
|
290
294
|
}
|
|
291
295
|
|
|
296
|
+
CameraOrientationMode orientationMode = JSONUtils.extractCameraOrientationMode(configuration);
|
|
297
|
+
if (orientationMode != null) {
|
|
298
|
+
nativeConfig.setOrientationLockMode(orientationMode);
|
|
299
|
+
}
|
|
300
|
+
|
|
292
301
|
// Barcode Format Filters
|
|
293
302
|
ArrayList<BarcodeFormat> formats = JSONUtils.extractBarcodeFormats(configuration);
|
|
294
303
|
if (!formats.isEmpty()) {
|
|
@@ -313,6 +322,13 @@ public class ScanbotBarcodeSdkModule extends ReactContextBaseJavaModule implemen
|
|
|
313
322
|
}
|
|
314
323
|
}
|
|
315
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
|
+
|
|
316
332
|
@ReactMethod
|
|
317
333
|
public void cleanup(final Promise promise) {
|
|
318
334
|
if (rejectIfUninitialized(promise)) {
|
|
@@ -343,7 +359,7 @@ public class ScanbotBarcodeSdkModule extends ReactContextBaseJavaModule implemen
|
|
|
343
359
|
|
|
344
360
|
switch (requestCode) {
|
|
345
361
|
case REQUEST_SB_BARCODE_SCANNER:
|
|
346
|
-
this.handleBarcodeScannerActivityCompletion(intent,
|
|
362
|
+
this.handleBarcodeScannerActivityCompletion(intent, resultCode);
|
|
347
363
|
return;
|
|
348
364
|
|
|
349
365
|
default:
|
|
@@ -355,13 +371,14 @@ public class ScanbotBarcodeSdkModule extends ReactContextBaseJavaModule implemen
|
|
|
355
371
|
public void onNewIntent(Intent intent) {
|
|
356
372
|
}
|
|
357
373
|
|
|
358
|
-
private void handleBarcodeScannerActivityCompletion(final Intent intent,
|
|
374
|
+
private void handleBarcodeScannerActivityCompletion(final Intent intent, final int resultCode) {
|
|
359
375
|
Promise promise = this.activityCallbackPromise;
|
|
360
376
|
this.activityCallbackPromise = null;
|
|
361
377
|
|
|
362
|
-
|
|
363
|
-
|
|
364
|
-
|
|
378
|
+
final BarcodeScannerActivity.Result barcodeResult = BarcodeScannerActivity.extractResult(resultCode, intent);
|
|
379
|
+
|
|
380
|
+
if (barcodeResult.getResultOk()) {
|
|
381
|
+
final WritableMap result = jsonResultFromBarcodeScannerResult(barcodeResult.getResult());
|
|
365
382
|
|
|
366
383
|
String imagePath = intent.getStringExtra(BarcodeScannerActivity.SCANNED_BARCODE_IMAGE_PATH_EXTRA);
|
|
367
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) {
|