react-native-rectangle-doc-scanner 3.125.0 → 3.127.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.
@@ -568,24 +568,25 @@ const FullDocScanner = ({ onResult, onClose, detectionConfig, overlayColor = '#3
568
568
  react_1.default.createElement(react_native_1.TouchableOpacity, { style: styles.rotateButtonTop, onPress: () => handleRotateImage(90), accessibilityLabel: "\uC624\uB978\uCABD\uC73C\uB85C 90\uB3C4 \uD68C\uC804", accessibilityRole: "button" },
569
569
  react_1.default.createElement(react_native_1.Text, { style: styles.rotateIconText }, "\u21BB"),
570
570
  react_1.default.createElement(react_native_1.Text, { style: styles.rotateButtonLabel }, "\uC6B0\uB85C 90\u00B0")))) : null,
571
- croppedImageData.enhanced ? (react_1.default.createElement(react_native_1.TouchableOpacity, { style: [
572
- styles.originalToggleButton,
573
- croppedImageData.useOriginal
574
- ? styles.originalToggleButtonActive
575
- : styles.originalToggleButtonInactive,
576
- ], onPress: () => setCroppedImageData((prev) => prev ? { ...prev, useOriginal: !prev.useOriginal } : prev), accessibilityRole: "button", accessibilityLabel: mergedStrings.originalBtn },
577
- react_1.default.createElement(react_native_1.Text, { style: [
578
- styles.originalToggleButtonText,
579
- croppedImageData.useOriginal
580
- ? styles.originalToggleButtonTextActive
581
- : styles.originalToggleButtonTextInactive,
582
- ] }, mergedStrings.originalBtn))) : null,
583
571
  isBusinessMode && capturedPhotos.length === 0 && (react_1.default.createElement(react_native_1.TouchableOpacity, { style: styles.captureBackButton, onPress: handleCaptureSecondPhoto, accessibilityLabel: mergedStrings.secondBtn, accessibilityRole: "button" },
584
572
  react_1.default.createElement(react_native_1.Text, { style: styles.captureBackButtonText }, mergedStrings.secondBtn))),
585
573
  activePreviewImage ? (react_1.default.createElement(react_native_1.Image, { source: { uri: activePreviewImage.path }, style: [
586
574
  styles.previewImage,
587
575
  { transform: [{ rotate: `${rotationDegrees}deg` }] }
588
576
  ], resizeMode: "contain" })) : null,
577
+ croppedImageData.enhanced ? (react_1.default.createElement(react_native_1.View, { style: styles.originalToggleContainer },
578
+ react_1.default.createElement(react_native_1.TouchableOpacity, { style: [
579
+ styles.originalToggleButton,
580
+ croppedImageData.useOriginal
581
+ ? styles.originalToggleButtonActive
582
+ : styles.originalToggleButtonInactive,
583
+ ], onPress: () => setCroppedImageData((prev) => prev ? { ...prev, useOriginal: !prev.useOriginal } : prev), accessibilityRole: "button", accessibilityLabel: mergedStrings.originalBtn },
584
+ react_1.default.createElement(react_native_1.Text, { style: [
585
+ styles.originalToggleButtonText,
586
+ croppedImageData.useOriginal
587
+ ? styles.originalToggleButtonTextActive
588
+ : styles.originalToggleButtonTextInactive,
589
+ ] }, mergedStrings.originalBtn)))) : null,
589
590
  react_1.default.createElement(react_native_1.View, { style: styles.confirmationButtons },
590
591
  react_1.default.createElement(react_native_1.TouchableOpacity, { style: [styles.confirmButton, styles.retakeButton], onPress: handleRetake, accessibilityLabel: mergedStrings.retake, accessibilityRole: "button" },
591
592
  react_1.default.createElement(react_native_1.Text, { style: styles.confirmButtonText }, mergedStrings.retake)),
@@ -799,13 +800,16 @@ const styles = react_native_1.StyleSheet.create({
799
800
  },
800
801
  originalToggleButton: {
801
802
  alignSelf: 'center',
802
- marginTop: 12,
803
- marginBottom: 4,
804
803
  paddingVertical: 10,
805
804
  paddingHorizontal: 28,
806
805
  borderRadius: 999,
807
806
  borderWidth: 1,
808
807
  },
808
+ originalToggleContainer: {
809
+ alignItems: 'center',
810
+ marginTop: 16,
811
+ marginBottom: 20,
812
+ },
809
813
  originalToggleButtonActive: {
810
814
  backgroundColor: '#3170f3',
811
815
  borderColor: '#3170f3',
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "react-native-rectangle-doc-scanner",
3
- "version": "3.125.0",
3
+ "version": "3.127.0",
4
4
  "description": "Native-backed document scanner for React Native with customizable overlays.",
5
5
  "license": "MIT",
6
6
  "main": "dist/index.js",
@@ -811,35 +811,6 @@ export const FullDocScanner: React.FC<FullDocScannerProps> = ({
811
811
  </View>
812
812
  ) : null}
813
813
 
814
- {croppedImageData.enhanced ? (
815
- <TouchableOpacity
816
- style={[
817
- styles.originalToggleButton,
818
- croppedImageData.useOriginal
819
- ? styles.originalToggleButtonActive
820
- : styles.originalToggleButtonInactive,
821
- ]}
822
- onPress={() =>
823
- setCroppedImageData((prev) =>
824
- prev ? { ...prev, useOriginal: !prev.useOriginal } : prev,
825
- )
826
- }
827
- accessibilityRole="button"
828
- accessibilityLabel={mergedStrings.originalBtn}
829
- >
830
- <Text
831
- style={[
832
- styles.originalToggleButtonText,
833
- croppedImageData.useOriginal
834
- ? styles.originalToggleButtonTextActive
835
- : styles.originalToggleButtonTextInactive,
836
- ]}
837
- >
838
- {mergedStrings.originalBtn}
839
- </Text>
840
- </TouchableOpacity>
841
- ) : null}
842
-
843
814
  {/* 뒷면 촬영 버튼 - 상단에 표시 (Business 모드이고 첫 번째 사진일 때만) */}
844
815
  {isBusinessMode && capturedPhotos.length === 0 && (
845
816
  <TouchableOpacity
@@ -862,6 +833,36 @@ export const FullDocScanner: React.FC<FullDocScannerProps> = ({
862
833
  resizeMode="contain"
863
834
  />
864
835
  ) : null}
836
+ {croppedImageData.enhanced ? (
837
+ <View style={styles.originalToggleContainer}>
838
+ <TouchableOpacity
839
+ style={[
840
+ styles.originalToggleButton,
841
+ croppedImageData.useOriginal
842
+ ? styles.originalToggleButtonActive
843
+ : styles.originalToggleButtonInactive,
844
+ ]}
845
+ onPress={() =>
846
+ setCroppedImageData((prev) =>
847
+ prev ? { ...prev, useOriginal: !prev.useOriginal } : prev,
848
+ )
849
+ }
850
+ accessibilityRole="button"
851
+ accessibilityLabel={mergedStrings.originalBtn}
852
+ >
853
+ <Text
854
+ style={[
855
+ styles.originalToggleButtonText,
856
+ croppedImageData.useOriginal
857
+ ? styles.originalToggleButtonTextActive
858
+ : styles.originalToggleButtonTextInactive,
859
+ ]}
860
+ >
861
+ {mergedStrings.originalBtn}
862
+ </Text>
863
+ </TouchableOpacity>
864
+ </View>
865
+ ) : null}
865
866
  <View style={styles.confirmationButtons}>
866
867
  <TouchableOpacity
867
868
  style={[styles.confirmButton, styles.retakeButton]}
@@ -1169,13 +1170,16 @@ const styles = StyleSheet.create({
1169
1170
  },
1170
1171
  originalToggleButton: {
1171
1172
  alignSelf: 'center',
1172
- marginTop: 12,
1173
- marginBottom: 4,
1174
1173
  paddingVertical: 10,
1175
1174
  paddingHorizontal: 28,
1176
1175
  borderRadius: 999,
1177
1176
  borderWidth: 1,
1178
1177
  },
1178
+ originalToggleContainer: {
1179
+ alignItems: 'center',
1180
+ marginTop: 16,
1181
+ marginBottom: 20,
1182
+ },
1179
1183
  originalToggleButtonActive: {
1180
1184
  backgroundColor: '#3170f3',
1181
1185
  borderColor: '#3170f3',