@transfergratis/react-native-sdk 0.1.3 → 0.1.4

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.
Files changed (113) hide show
  1. package/android/.idea/caches/deviceStreaming.xml +860 -0
  2. package/android/build/.transforms/{7ec900c0f64f5f1a7c88998dd44001b8 → 01c28d00c798aa4846f16ce72123ebf9}/transformed/classes/classes_dex/classes.dex +0 -0
  3. package/android/build/intermediates/aapt_friendly_merged_manifests/debug/processDebugManifest/aapt/AndroidManifest.xml +1 -0
  4. package/android/build/intermediates/aar_main_jar/debug/syncDebugLibJars/classes.jar +0 -0
  5. package/android/build/intermediates/annotations_typedef_file/debug/extractDebugAnnotations/typedefs.txt +0 -0
  6. package/android/build/intermediates/compile_library_classes_jar/debug/bundleLibCompileToJarDebug/classes.jar +0 -0
  7. package/android/build/intermediates/incremental/debug/packageDebugResources/compile-file-map.properties +2 -2
  8. package/android/build/intermediates/incremental/debug-mergeJavaRes/merge-state +0 -0
  9. package/android/build/intermediates/manifest_merge_blame_file/debug/processDebugManifest/manifest-merger-blame-debug-report.txt +51 -48
  10. package/android/build/intermediates/merged_java_res/debug/mergeDebugJavaResource/feature-transfergratis-react-native-sdk.jar +0 -0
  11. package/android/build/intermediates/merged_manifest/debug/processDebugManifest/AndroidManifest.xml +1 -0
  12. package/android/build/intermediates/runtime_library_classes_jar/debug/bundleLibRuntimeToJarDebug/classes.jar +0 -0
  13. package/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/inputs/source-to-output.tab +0 -0
  14. package/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/inputs/source-to-output.tab.values.at +0 -0
  15. package/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/jvm/kotlin/class-attributes.tab +0 -0
  16. package/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/jvm/kotlin/class-attributes.tab.values.at +0 -0
  17. package/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/jvm/kotlin/class-fq-name-to-source.tab +0 -0
  18. package/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/jvm/kotlin/class-fq-name-to-source.tab.values.at +0 -0
  19. package/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/jvm/kotlin/internal-name-to-source.tab +0 -0
  20. package/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/jvm/kotlin/internal-name-to-source.tab.keystream +0 -0
  21. package/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/jvm/kotlin/internal-name-to-source.tab.keystream.len +0 -0
  22. package/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/jvm/kotlin/internal-name-to-source.tab.len +0 -0
  23. package/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/jvm/kotlin/internal-name-to-source.tab.values.at +0 -0
  24. package/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/jvm/kotlin/internal-name-to-source.tab_i +0 -0
  25. package/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/jvm/kotlin/proto.tab +0 -0
  26. package/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/jvm/kotlin/proto.tab.values.at +0 -0
  27. package/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/jvm/kotlin/source-to-classes.tab +0 -0
  28. package/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/jvm/kotlin/source-to-classes.tab.values.at +0 -0
  29. package/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/jvm/kotlin/subtypes.tab +0 -0
  30. package/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/jvm/kotlin/subtypes.tab.values.at +0 -0
  31. package/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/jvm/kotlin/supertypes.tab +0 -0
  32. package/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/jvm/kotlin/supertypes.tab.values.at +0 -0
  33. package/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/lookups/counters.tab +1 -1
  34. package/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/lookups/file-to-id.tab +0 -0
  35. package/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/lookups/file-to-id.tab.values.at +0 -0
  36. package/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/lookups/id-to-file.tab +0 -0
  37. package/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/lookups/id-to-file.tab.keystream +0 -0
  38. package/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/lookups/id-to-file.tab.keystream.len +0 -0
  39. package/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/lookups/id-to-file.tab.len +0 -0
  40. package/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/lookups/id-to-file.tab.values.at +0 -0
  41. package/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/lookups/id-to-file.tab_i +0 -0
  42. package/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/lookups/lookups.tab +0 -0
  43. package/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/lookups/lookups.tab.keystream +0 -0
  44. package/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/lookups/lookups.tab.keystream.len +0 -0
  45. package/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/lookups/lookups.tab.len +0 -0
  46. package/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/lookups/lookups.tab.values.at +0 -0
  47. package/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/lookups/lookups.tab_i +0 -0
  48. package/android/build/kotlin/compileDebugKotlin/cacheable/last-build.bin +0 -0
  49. package/android/build/kotlin/compileDebugKotlin/classpath-snapshot/shrunk-classpath-snapshot.bin +0 -0
  50. package/android/build/kotlin/compileDebugKotlin/local-state/build-history.bin +0 -0
  51. package/android/build/outputs/aar/transfergratis-react-native-sdk-debug.aar +0 -0
  52. package/android/build/outputs/logs/manifest-merger-debug-report.txt +27 -23
  53. package/android/build/tmp/kotlin-classes/debug/kyc/transfergratis/com/TransfergratisSdkModule.class +0 -0
  54. package/android/build/tmp/kotlin-classes/debug/kyc/transfergratis/com/TransfergratisSdkView.class +0 -0
  55. package/android/build.gradle +1 -5
  56. package/android/src/main/AndroidManifest.xml +1 -0
  57. package/build/components/EnhancedCameraView.js +1 -1
  58. package/build/components/EnhancedCameraView.js.map +1 -1
  59. package/build/components/VisionCameraView.js +1 -1
  60. package/build/components/VisionCameraView.js.map +1 -1
  61. package/build/components/ui/Button.js +1 -1
  62. package/build/components/ui/Button.js.map +1 -1
  63. package/build/modules/camera/VisionCameraModule.d.ts +1 -1
  64. package/build/modules/camera/VisionCameraModule.d.ts.map +1 -1
  65. package/build/modules/camera/VisionCameraModule.js +8 -2
  66. package/build/modules/camera/VisionCameraModule.js.map +1 -1
  67. package/package.json +1 -1
  68. package/src/components/EnhancedCameraView.tsx +1 -1
  69. package/src/components/VisionCameraView.tsx +1 -1
  70. package/src/components/ui/Button.tsx +1 -1
  71. package/src/modules/camera/VisionCameraModule.ts +16 -7
  72. package/android/build/.transforms/d6df0e53bfc3165a876965af720f910a/results.bin +0 -1
  73. package/android/build/.transforms/d6df0e53bfc3165a876965af720f910a/transformed/bundleLibRuntimeToDirDebug/bundleLibRuntimeToDirDebug_dex/kyc/transfergratis/com/BuildConfig.dex +0 -0
  74. package/android/build/.transforms/d6df0e53bfc3165a876965af720f910a/transformed/bundleLibRuntimeToDirDebug/bundleLibRuntimeToDirDebug_dex/kyc/transfergratis/com/TransfergratisSdkModule$definition$1$5$1.dex +0 -0
  75. package/android/build/.transforms/d6df0e53bfc3165a876965af720f910a/transformed/bundleLibRuntimeToDirDebug/bundleLibRuntimeToDirDebug_dex/kyc/transfergratis/com/TransfergratisSdkModule$definition$1$5$2.dex +0 -0
  76. package/android/build/.transforms/d6df0e53bfc3165a876965af720f910a/transformed/bundleLibRuntimeToDirDebug/bundleLibRuntimeToDirDebug_dex/kyc/transfergratis/com/TransfergratisSdkModule$definition$lambda$5$$inlined$AsyncFunction$1.dex +0 -0
  77. package/android/build/.transforms/d6df0e53bfc3165a876965af720f910a/transformed/bundleLibRuntimeToDirDebug/bundleLibRuntimeToDirDebug_dex/kyc/transfergratis/com/TransfergratisSdkModule$definition$lambda$5$$inlined$AsyncFunction$2.dex +0 -0
  78. package/android/build/.transforms/d6df0e53bfc3165a876965af720f910a/transformed/bundleLibRuntimeToDirDebug/bundleLibRuntimeToDirDebug_dex/kyc/transfergratis/com/TransfergratisSdkModule$definition$lambda$5$$inlined$AsyncFunction$3.dex +0 -0
  79. package/android/build/.transforms/d6df0e53bfc3165a876965af720f910a/transformed/bundleLibRuntimeToDirDebug/bundleLibRuntimeToDirDebug_dex/kyc/transfergratis/com/TransfergratisSdkModule$definition$lambda$5$$inlined$AsyncFunction$4.dex +0 -0
  80. package/android/build/.transforms/d6df0e53bfc3165a876965af720f910a/transformed/bundleLibRuntimeToDirDebug/bundleLibRuntimeToDirDebug_dex/kyc/transfergratis/com/TransfergratisSdkModule$definition$lambda$5$$inlined$AsyncFunction$5.dex +0 -0
  81. package/android/build/.transforms/d6df0e53bfc3165a876965af720f910a/transformed/bundleLibRuntimeToDirDebug/bundleLibRuntimeToDirDebug_dex/kyc/transfergratis/com/TransfergratisSdkModule$definition$lambda$5$$inlined$AsyncFunction$6.dex +0 -0
  82. package/android/build/.transforms/d6df0e53bfc3165a876965af720f910a/transformed/bundleLibRuntimeToDirDebug/bundleLibRuntimeToDirDebug_dex/kyc/transfergratis/com/TransfergratisSdkModule$definition$lambda$5$$inlined$AsyncFunctionWithPromise$1.dex +0 -0
  83. package/android/build/.transforms/d6df0e53bfc3165a876965af720f910a/transformed/bundleLibRuntimeToDirDebug/bundleLibRuntimeToDirDebug_dex/kyc/transfergratis/com/TransfergratisSdkModule$definition$lambda$5$$inlined$AsyncFunctionWithPromise$2.dex +0 -0
  84. package/android/build/.transforms/d6df0e53bfc3165a876965af720f910a/transformed/bundleLibRuntimeToDirDebug/bundleLibRuntimeToDirDebug_dex/kyc/transfergratis/com/TransfergratisSdkModule$definition$lambda$5$$inlined$AsyncFunctionWithPromise$3.dex +0 -0
  85. package/android/build/.transforms/d6df0e53bfc3165a876965af720f910a/transformed/bundleLibRuntimeToDirDebug/bundleLibRuntimeToDirDebug_dex/kyc/transfergratis/com/TransfergratisSdkModule$definition$lambda$5$$inlined$AsyncFunctionWithPromise$4.dex +0 -0
  86. package/android/build/.transforms/d6df0e53bfc3165a876965af720f910a/transformed/bundleLibRuntimeToDirDebug/bundleLibRuntimeToDirDebug_dex/kyc/transfergratis/com/TransfergratisSdkModule$definition$lambda$5$$inlined$View$1.dex +0 -0
  87. package/android/build/.transforms/d6df0e53bfc3165a876965af720f910a/transformed/bundleLibRuntimeToDirDebug/bundleLibRuntimeToDirDebug_dex/kyc/transfergratis/com/TransfergratisSdkModule$definition$lambda$5$lambda$4$$inlined$Prop$1.dex +0 -0
  88. package/android/build/.transforms/d6df0e53bfc3165a876965af720f910a/transformed/bundleLibRuntimeToDirDebug/bundleLibRuntimeToDirDebug_dex/kyc/transfergratis/com/TransfergratisSdkModule$definition$lambda$5$lambda$4$$inlined$Prop$2.dex +0 -0
  89. package/android/build/.transforms/d6df0e53bfc3165a876965af720f910a/transformed/bundleLibRuntimeToDirDebug/bundleLibRuntimeToDirDebug_dex/kyc/transfergratis/com/TransfergratisSdkModule.dex +0 -0
  90. package/android/build/.transforms/d6df0e53bfc3165a876965af720f910a/transformed/bundleLibRuntimeToDirDebug/bundleLibRuntimeToDirDebug_dex/kyc/transfergratis/com/TransfergratisSdkView.dex +0 -0
  91. package/android/build/.transforms/d6df0e53bfc3165a876965af720f910a/transformed/bundleLibRuntimeToDirDebug/desugar_graph.bin +0 -0
  92. package/android/build/intermediates/runtime_library_classes_dir/debug/bundleLibRuntimeToDirDebug/kyc/transfergratis/com/BuildConfig.class +0 -0
  93. package/android/build/intermediates/runtime_library_classes_dir/debug/bundleLibRuntimeToDirDebug/kyc/transfergratis/com/TransfergratisSdkModule$definition$1$5$1.class +0 -0
  94. package/android/build/intermediates/runtime_library_classes_dir/debug/bundleLibRuntimeToDirDebug/kyc/transfergratis/com/TransfergratisSdkModule$definition$1$5$2.class +0 -0
  95. package/android/build/intermediates/runtime_library_classes_dir/debug/bundleLibRuntimeToDirDebug/kyc/transfergratis/com/TransfergratisSdkModule$definition$lambda$5$$inlined$AsyncFunction$1.class +0 -0
  96. package/android/build/intermediates/runtime_library_classes_dir/debug/bundleLibRuntimeToDirDebug/kyc/transfergratis/com/TransfergratisSdkModule$definition$lambda$5$$inlined$AsyncFunction$2.class +0 -0
  97. package/android/build/intermediates/runtime_library_classes_dir/debug/bundleLibRuntimeToDirDebug/kyc/transfergratis/com/TransfergratisSdkModule$definition$lambda$5$$inlined$AsyncFunction$3.class +0 -0
  98. package/android/build/intermediates/runtime_library_classes_dir/debug/bundleLibRuntimeToDirDebug/kyc/transfergratis/com/TransfergratisSdkModule$definition$lambda$5$$inlined$AsyncFunction$4.class +0 -0
  99. package/android/build/intermediates/runtime_library_classes_dir/debug/bundleLibRuntimeToDirDebug/kyc/transfergratis/com/TransfergratisSdkModule$definition$lambda$5$$inlined$AsyncFunction$5.class +0 -0
  100. package/android/build/intermediates/runtime_library_classes_dir/debug/bundleLibRuntimeToDirDebug/kyc/transfergratis/com/TransfergratisSdkModule$definition$lambda$5$$inlined$AsyncFunction$6.class +0 -0
  101. package/android/build/intermediates/runtime_library_classes_dir/debug/bundleLibRuntimeToDirDebug/kyc/transfergratis/com/TransfergratisSdkModule$definition$lambda$5$$inlined$AsyncFunctionWithPromise$1.class +0 -0
  102. package/android/build/intermediates/runtime_library_classes_dir/debug/bundleLibRuntimeToDirDebug/kyc/transfergratis/com/TransfergratisSdkModule$definition$lambda$5$$inlined$AsyncFunctionWithPromise$2.class +0 -0
  103. package/android/build/intermediates/runtime_library_classes_dir/debug/bundleLibRuntimeToDirDebug/kyc/transfergratis/com/TransfergratisSdkModule$definition$lambda$5$$inlined$AsyncFunctionWithPromise$3.class +0 -0
  104. package/android/build/intermediates/runtime_library_classes_dir/debug/bundleLibRuntimeToDirDebug/kyc/transfergratis/com/TransfergratisSdkModule$definition$lambda$5$$inlined$AsyncFunctionWithPromise$4.class +0 -0
  105. package/android/build/intermediates/runtime_library_classes_dir/debug/bundleLibRuntimeToDirDebug/kyc/transfergratis/com/TransfergratisSdkModule$definition$lambda$5$$inlined$View$1.class +0 -0
  106. package/android/build/intermediates/runtime_library_classes_dir/debug/bundleLibRuntimeToDirDebug/kyc/transfergratis/com/TransfergratisSdkModule$definition$lambda$5$lambda$4$$inlined$Prop$1.class +0 -0
  107. package/android/build/intermediates/runtime_library_classes_dir/debug/bundleLibRuntimeToDirDebug/kyc/transfergratis/com/TransfergratisSdkModule$definition$lambda$5$lambda$4$$inlined$Prop$2.class +0 -0
  108. package/android/build/intermediates/runtime_library_classes_dir/debug/bundleLibRuntimeToDirDebug/kyc/transfergratis/com/TransfergratisSdkModule.class +0 -0
  109. package/android/build/intermediates/runtime_library_classes_dir/debug/bundleLibRuntimeToDirDebug/kyc/transfergratis/com/TransfergratisSdkView.class +0 -0
  110. package/android/build/tmp/kotlin-classes/debug/META-INF/transfergratis-sdk_debug.kotlin_module +0 -0
  111. /package/android/build/.transforms/{7ec900c0f64f5f1a7c88998dd44001b8 → 01c28d00c798aa4846f16ce72123ebf9}/results.bin +0 -0
  112. /package/android/build/intermediates/java_res/debug/processDebugJavaRes/out/META-INF/{transfergratis-sdk_debug.kotlin_module → transfergratis-react-native-sdk_debug.kotlin_module} +0 -0
  113. /package/android/build/{intermediates/runtime_library_classes_dir/debug/bundleLibRuntimeToDirDebug/META-INF/transfergratis-sdk_debug.kotlin_module → tmp/kotlin-classes/debug/META-INF/transfergratis-react-native-sdk_debug.kotlin_module} +0 -0
@@ -1 +1 @@
1
- {"version":3,"file":"Button.js","sourceRoot":"","sources":["../../../src/components/ui/Button.tsx"],"names":[],"mappings":"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","sourcesContent":["import React from 'react';\nimport { TouchableOpacity, Text, StyleSheet, ViewStyle, TextStyle, ActivityIndicator } from 'react-native';\n\n// Types pour les props du bouton\ninterface ButtonProps {\n // Contenu\n title: string;\n onPress: () => void;\n \n // Variantes\n variant?: 'primary' | 'secondary' | 'outline' | 'ghost' | 'danger' | 'success' | 'warning' | 'info' | \"neutral\";\n size?: 'small' | 'medium' | 'large';\n \n // Icône\n icon?: React.ReactNode;\n iconPosition?: 'left' | 'right';\n \n // État\n disabled?: boolean;\n loading?: boolean;\n \n // Style personnalisé\n style?: ViewStyle;\n textStyle?: TextStyle;\n \n // Autres props\n fullWidth?: boolean;\n rounded?: boolean;\n}\n\n// Configuration des variantes\nconst buttonVariants = {\n primary: {\n backgroundColor: '#2DBD60',\n borderColor: '#2DBD60',\n textColor: '#FFFFFF',\n disabledBackground: '#E5E5E5',\n disabledText: '#999999',\n },\n secondary: {\n backgroundColor: '#F8F9FA',\n borderColor: '#E9ECEF',\n textColor: '#495057',\n disabledBackground: '#F8F9FA',\n disabledText: '#ADB5BD',\n },\n outline: {\n backgroundColor: 'transparent',\n borderColor: '#2DBD60',\n textColor: '#2DBD60',\n disabledBackground: 'transparent',\n disabledText: '#ADB5BD',\n },\n ghost: {\n backgroundColor: 'transparent',\n borderColor: 'transparent',\n textColor: '#2DBD60',\n disabledBackground: 'transparent',\n disabledText: '#ADB5BD',\n },\n danger: {\n backgroundColor: '#DC3545',\n borderColor: '#DC3545',\n textColor: '#FFFFFF',\n disabledBackground: '#E5E5E5',\n disabledText: '#999999',\n },\n success: {\n backgroundColor: '#28A745',\n borderColor: '#28A745',\n textColor: '#FFFFFF',\n disabledBackground: '#E5E5E5',\n disabledText: '#999999',\n },\n info: {\n backgroundColor: '#17A2B8',\n borderColor: '#17A2B8',\n textColor: '#FFFFFF',\n disabledBackground: '#E5E5E5',\n disabledText: '#999999',\n },\n warning: {\n backgroundColor: '#FFC107',\n borderColor: '#FFC107',\n textColor: '#212529',\n disabledBackground: '#E5E5E5',\n disabledText: '#999999',\n },\n neutral: {\n backgroundColor: '#6c757d',\n borderColor: '#6c757d',\n textColor: '#FFFFFF',\n disabledBackground: '#E5E5E5',\n disabledText: '#999999',\n },\n};\n\n// Configuration des tailles\nconst buttonSizes = {\n small: {\n paddingVertical: 8,\n paddingHorizontal: 16,\n fontSize: 14,\n borderRadius: 6,\n iconSize: 16,\n },\n medium: {\n paddingVertical: 12,\n paddingHorizontal: 24,\n fontSize: 16,\n borderRadius: 8,\n iconSize: 20,\n },\n large: {\n paddingVertical: 16,\n paddingHorizontal: 32,\n fontSize: 18,\n borderRadius: 12,\n iconSize: 24,\n },\n};\n\nexport const Button: React.FC<ButtonProps> = ({\n title,\n onPress,\n variant = 'primary',\n size = 'medium',\n icon,\n iconPosition = 'left',\n disabled = false,\n loading = false,\n style,\n textStyle,\n fullWidth = false,\n rounded = false,\n}) => {\n // Obtenir la configuration de la variante\n const variantConfig = buttonVariants[variant];\n const sizeConfig = buttonSizes[size];\n \n // Déterminer les styles dynamiques\n const dynamicStyles: ViewStyle = {\n backgroundColor: disabled ? variantConfig.disabledBackground : variantConfig.backgroundColor,\n borderColor: variantConfig.borderColor,\n paddingVertical: sizeConfig.paddingVertical,\n paddingHorizontal: sizeConfig.paddingHorizontal,\n borderRadius: rounded ? 50 : sizeConfig.borderRadius,\n width: fullWidth ? '100%' : 'auto',\n borderWidth: variant === 'outline' ? 2 : 0,\n };\n\n const dynamicTextStyles: TextStyle = {\n color: disabled ? variantConfig.disabledText : variantConfig.textColor,\n fontSize: sizeConfig.fontSize,\n fontWeight: '600',\n };\n\n // Rendu de l'icône\n const renderIcon = () => {\n if (!icon || loading) return null;\n \n return (\n <Text style={[styles.icon, { fontSize: sizeConfig.iconSize }]}>\n {icon}\n </Text>\n );\n };\n\n // Rendu du contenu\n const renderContent = () => {\n if (loading) {\n return (\n <>\n <ActivityIndicator \n size=\"small\" \n color={variantConfig.textColor} \n style={styles.loadingSpinner}\n />\n <Text style={[styles.text, dynamicTextStyles, textStyle]}>\n Chargement...\n </Text>\n </>\n );\n }\n\n if (iconPosition === 'right') {\n return (\n <>\n <Text style={[styles.text, dynamicTextStyles, textStyle]}>\n {title}\n </Text>\n {renderIcon()}\n </>\n );\n }\n\n return (\n <>\n {renderIcon()}\n <Text style={[styles.text, dynamicTextStyles, textStyle]}>\n {title}\n </Text>\n </>\n );\n };\n\n return (\n <TouchableOpacity\n style={[styles.button, dynamicStyles, style]}\n onPress={onPress}\n disabled={disabled || loading}\n activeOpacity={0.8}\n >\n {renderContent()}\n </TouchableOpacity>\n );\n};\n\nconst styles = StyleSheet.create({\n button: {\n flexDirection: 'row',\n alignItems: 'center',\n justifyContent: 'center',\n minHeight: 44,\n shadowColor: '#000',\n shadowOffset: {\n width: 0,\n height: 2,\n },\n shadowOpacity: 0.1,\n shadowRadius: 3.84,\n elevation: 5,\n },\n text: {\n fontWeight: '600',\n textAlign: 'center',\n },\n icon: {\n marginHorizontal: 8,\n },\n loadingSpinner: {\n marginRight: 8,\n },\n});\n\n// Composants prédéfinis pour des cas d'usage courants\nexport const PrimaryButton: React.FC<Omit<ButtonProps, 'variant'>> = (props) => (\n <Button variant=\"primary\" {...props} />\n);\n\nexport const SecondaryButton: React.FC<Omit<ButtonProps, 'variant'>> = (props) => (\n <Button variant=\"secondary\" {...props} />\n);\n\nexport const OutlineButton: React.FC<Omit<ButtonProps, 'variant'>> = (props) => (\n <Button variant=\"outline\" {...props} />\n);\n\nexport const GhostButton: React.FC<Omit<ButtonProps, 'variant'>> = (props) => (\n <Button variant=\"ghost\" {...props} />\n);\n\nexport const DangerButton: React.FC<Omit<ButtonProps, 'variant'>> = (props) => (\n <Button variant=\"danger\" {...props} />\n);\n\nexport const SuccessButton: React.FC<Omit<ButtonProps, 'variant'>> = (props) => (\n <Button variant=\"success\" {...props} />\n);\n\nexport const WarningButton: React.FC<Omit<ButtonProps, 'variant'>> = (props) => (\n <Button variant=\"warning\" {...props} />\n);\n\n// Composants de taille prédéfinie\nexport const SmallButton: React.FC<Omit<ButtonProps, 'size'>> = (props) => (\n <Button size=\"small\" {...props} />\n);\n\nexport const LargeButton: React.FC<Omit<ButtonProps, 'size'>> = (props) => (\n <Button size=\"large\" {...props} />\n);\n\n// Composants avec icônes prédéfinies\nexport const IconButton: React.FC<ButtonProps & { iconName: string }> = ({ iconName, ...props }) => (\n <Button icon={iconName} {...props} />\n);\n\nexport const BackButton: React.FC<Omit<ButtonProps, 'icon' | 'iconPosition' | 'onPress'> & { onBack: () => void }> = ({ onBack, ...props }) => (\n <Button \n icon=\"←\" \n iconPosition=\"left\" \n onPress={onBack} \n variant=\"ghost\"\n size=\"medium\"\n {...props} \n />\n);\n\nexport const NextButton: React.FC<Omit<ButtonProps, 'icon' | 'iconPosition'>> = (props) => (\n <Button \n icon=\"→\" \n iconPosition=\"right\" \n variant=\"primary\"\n size=\"medium\"\n {...props} \n />\n);\n\nexport const SubmitButton: React.FC<Omit<ButtonProps, 'variant' | 'icon' | 'iconPosition'>> = (props) => (\n <Button \n variant=\"primary\"\n size=\"large\"\n fullWidth\n {...props} \n />\n);\n\nexport const CancelButton: React.FC<Omit<ButtonProps, 'variant' | 'icon' | 'iconPosition'>> = (props) => (\n <Button \n variant=\"secondary\"\n size=\"medium\"\n {...props} \n />\n);\n\n// Export des icônes depuis ButtonStyles\nexport { buttonIcons } from './ButtonStyles'; "]}
1
+ {"version":3,"file":"Button.js","sourceRoot":"","sources":["../../../src/components/ui/Button.tsx"],"names":[],"mappings":"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","sourcesContent":["import React from 'react';\nimport { TouchableOpacity, Text, StyleSheet, ViewStyle, TextStyle, ActivityIndicator } from 'react-native';\n\n// Types pour les props du bouton\ninterface ButtonProps {\n // Contenu\n title: string;\n onPress: () => void;\n \n // Variantes\n variant?: 'primary' | 'secondary' | 'outline' | 'ghost' | 'danger' | 'success' | 'warning' | 'info' | \"neutral\";\n size?: 'small' | 'medium' | 'large';\n \n // Icône\n icon?: React.ReactNode;\n iconPosition?: 'left' | 'right';\n \n // État\n disabled?: boolean;\n loading?: boolean;\n \n // Style personnalisé\n style?: ViewStyle;\n textStyle?: TextStyle;\n \n // Autres props\n fullWidth?: boolean;\n rounded?: boolean;\n}\n\n// Configuration des variantes\nconst buttonVariants = {\n primary: {\n backgroundColor: '#2DBD60',\n borderColor: '#2DBD60',\n textColor: '#FFFFFF',\n disabledBackground: '#E5E5E5',\n disabledText: '#999999',\n },\n secondary: {\n backgroundColor: '#F8F9FA',\n borderColor: '#E9ECEF',\n textColor: '#495057',\n disabledBackground: '#F8F9FA',\n disabledText: '#ADB5BD',\n },\n outline: {\n backgroundColor: '#F8F9FA',\n borderColor: '#2DBD60',\n textColor: '#2DBD60',\n disabledBackground: 'transparent',\n disabledText: '#ADB5BD',\n },\n ghost: {\n backgroundColor: 'transparent',\n borderColor: 'transparent',\n textColor: '#2DBD60',\n disabledBackground: 'transparent',\n disabledText: '#ADB5BD',\n },\n danger: {\n backgroundColor: '#DC3545',\n borderColor: '#DC3545',\n textColor: '#FFFFFF',\n disabledBackground: '#E5E5E5',\n disabledText: '#999999',\n },\n success: {\n backgroundColor: '#28A745',\n borderColor: '#28A745',\n textColor: '#FFFFFF',\n disabledBackground: '#E5E5E5',\n disabledText: '#999999',\n },\n info: {\n backgroundColor: '#17A2B8',\n borderColor: '#17A2B8',\n textColor: '#FFFFFF',\n disabledBackground: '#E5E5E5',\n disabledText: '#999999',\n },\n warning: {\n backgroundColor: '#FFC107',\n borderColor: '#FFC107',\n textColor: '#212529',\n disabledBackground: '#E5E5E5',\n disabledText: '#999999',\n },\n neutral: {\n backgroundColor: '#6c757d',\n borderColor: '#6c757d',\n textColor: '#FFFFFF',\n disabledBackground: '#E5E5E5',\n disabledText: '#999999',\n },\n};\n\n// Configuration des tailles\nconst buttonSizes = {\n small: {\n paddingVertical: 8,\n paddingHorizontal: 16,\n fontSize: 14,\n borderRadius: 6,\n iconSize: 16,\n },\n medium: {\n paddingVertical: 12,\n paddingHorizontal: 24,\n fontSize: 16,\n borderRadius: 8,\n iconSize: 20,\n },\n large: {\n paddingVertical: 16,\n paddingHorizontal: 32,\n fontSize: 18,\n borderRadius: 12,\n iconSize: 24,\n },\n};\n\nexport const Button: React.FC<ButtonProps> = ({\n title,\n onPress,\n variant = 'primary',\n size = 'medium',\n icon,\n iconPosition = 'left',\n disabled = false,\n loading = false,\n style,\n textStyle,\n fullWidth = false,\n rounded = false,\n}) => {\n // Obtenir la configuration de la variante\n const variantConfig = buttonVariants[variant];\n const sizeConfig = buttonSizes[size];\n \n // Déterminer les styles dynamiques\n const dynamicStyles: ViewStyle = {\n backgroundColor: disabled ? variantConfig.disabledBackground : variantConfig.backgroundColor,\n borderColor: variantConfig.borderColor,\n paddingVertical: sizeConfig.paddingVertical,\n paddingHorizontal: sizeConfig.paddingHorizontal,\n borderRadius: rounded ? 50 : sizeConfig.borderRadius,\n width: fullWidth ? '100%' : 'auto',\n borderWidth: variant === 'outline' ? 2 : 0,\n };\n\n const dynamicTextStyles: TextStyle = {\n color: disabled ? variantConfig.disabledText : variantConfig.textColor,\n fontSize: sizeConfig.fontSize,\n fontWeight: '600',\n };\n\n // Rendu de l'icône\n const renderIcon = () => {\n if (!icon || loading) return null;\n \n return (\n <Text style={[styles.icon, { fontSize: sizeConfig.iconSize }]}>\n {icon}\n </Text>\n );\n };\n\n // Rendu du contenu\n const renderContent = () => {\n if (loading) {\n return (\n <>\n <ActivityIndicator \n size=\"small\" \n color={variantConfig.textColor} \n style={styles.loadingSpinner}\n />\n <Text style={[styles.text, dynamicTextStyles, textStyle]}>\n Chargement...\n </Text>\n </>\n );\n }\n\n if (iconPosition === 'right') {\n return (\n <>\n <Text style={[styles.text, dynamicTextStyles, textStyle]}>\n {title}\n </Text>\n {renderIcon()}\n </>\n );\n }\n\n return (\n <>\n {renderIcon()}\n <Text style={[styles.text, dynamicTextStyles, textStyle]}>\n {title}\n </Text>\n </>\n );\n };\n\n return (\n <TouchableOpacity\n style={[styles.button, dynamicStyles, style]}\n onPress={onPress}\n disabled={disabled || loading}\n activeOpacity={0.8}\n >\n {renderContent()}\n </TouchableOpacity>\n );\n};\n\nconst styles = StyleSheet.create({\n button: {\n flexDirection: 'row',\n alignItems: 'center',\n justifyContent: 'center',\n minHeight: 44,\n shadowColor: '#000',\n shadowOffset: {\n width: 0,\n height: 2,\n },\n shadowOpacity: 0.1,\n shadowRadius: 3.84,\n elevation: 5,\n },\n text: {\n fontWeight: '600',\n textAlign: 'center',\n },\n icon: {\n marginHorizontal: 8,\n },\n loadingSpinner: {\n marginRight: 8,\n },\n});\n\n// Composants prédéfinis pour des cas d'usage courants\nexport const PrimaryButton: React.FC<Omit<ButtonProps, 'variant'>> = (props) => (\n <Button variant=\"primary\" {...props} />\n);\n\nexport const SecondaryButton: React.FC<Omit<ButtonProps, 'variant'>> = (props) => (\n <Button variant=\"secondary\" {...props} />\n);\n\nexport const OutlineButton: React.FC<Omit<ButtonProps, 'variant'>> = (props) => (\n <Button variant=\"outline\" {...props} />\n);\n\nexport const GhostButton: React.FC<Omit<ButtonProps, 'variant'>> = (props) => (\n <Button variant=\"ghost\" {...props} />\n);\n\nexport const DangerButton: React.FC<Omit<ButtonProps, 'variant'>> = (props) => (\n <Button variant=\"danger\" {...props} />\n);\n\nexport const SuccessButton: React.FC<Omit<ButtonProps, 'variant'>> = (props) => (\n <Button variant=\"success\" {...props} />\n);\n\nexport const WarningButton: React.FC<Omit<ButtonProps, 'variant'>> = (props) => (\n <Button variant=\"warning\" {...props} />\n);\n\n// Composants de taille prédéfinie\nexport const SmallButton: React.FC<Omit<ButtonProps, 'size'>> = (props) => (\n <Button size=\"small\" {...props} />\n);\n\nexport const LargeButton: React.FC<Omit<ButtonProps, 'size'>> = (props) => (\n <Button size=\"large\" {...props} />\n);\n\n// Composants avec icônes prédéfinies\nexport const IconButton: React.FC<ButtonProps & { iconName: string }> = ({ iconName, ...props }) => (\n <Button icon={iconName} {...props} />\n);\n\nexport const BackButton: React.FC<Omit<ButtonProps, 'icon' | 'iconPosition' | 'onPress'> & { onBack: () => void }> = ({ onBack, ...props }) => (\n <Button \n icon=\"←\" \n iconPosition=\"left\" \n onPress={onBack} \n variant=\"ghost\"\n size=\"medium\"\n {...props} \n />\n);\n\nexport const NextButton: React.FC<Omit<ButtonProps, 'icon' | 'iconPosition'>> = (props) => (\n <Button \n icon=\"→\" \n iconPosition=\"right\" \n variant=\"primary\"\n size=\"medium\"\n {...props} \n />\n);\n\nexport const SubmitButton: React.FC<Omit<ButtonProps, 'variant' | 'icon' | 'iconPosition'>> = (props) => (\n <Button \n variant=\"primary\"\n size=\"large\"\n fullWidth\n {...props} \n />\n);\n\nexport const CancelButton: React.FC<Omit<ButtonProps, 'variant' | 'icon' | 'iconPosition'>> = (props) => (\n <Button \n variant=\"secondary\"\n size=\"medium\"\n {...props} \n />\n);\n\n// Export des icônes depuis ButtonStyles\nexport { buttonIcons } from './ButtonStyles'; "]}
@@ -50,7 +50,7 @@ export declare class VisionCameraModule {
50
50
  /**
51
51
  * Process photo capture result
52
52
  */
53
- processPhotoResult(photo: PhotoFile): CameraCaptureResult;
53
+ processPhotoResult(photo: PhotoFile): Promise<CameraCaptureResult>;
54
54
  /**
55
55
  * Legacy method for backward compatibility
56
56
  * @deprecated Use VisionCameraView component instead
@@ -1 +1 @@
1
- {"version":3,"file":"VisionCameraModule.d.ts","sourceRoot":"","sources":["../../../src/modules/camera/VisionCameraModule.ts"],"names":[],"mappings":"AACA,OAAO,EAAU,YAAY,EAAE,sBAAsB,EAAE,SAAS,EAAE,MAAM,4BAA4B,CAAC;AAErG,MAAM,WAAW,mBAAmB;IAClC,OAAO,EAAE,OAAO,CAAC;IACjB,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,KAAK,CAAC,EAAE,MAAM,CAAC;CAChB;AAED,MAAM,WAAW,iBAAiB;IAChC,MAAM,EAAE,sBAAsB,CAAC;IAC/B,UAAU,EAAE,sBAAsB,CAAC;CACpC;AAED,qBAAa,kBAAkB;IAC7B,OAAO,CAAC,MAAM,CAAC,QAAQ,CAAqB;WAE9B,WAAW,IAAI,kBAAkB;IAO/C;;OAEG;IACG,gBAAgB,IAAI,OAAO,CAAC,YAAY,EAAE,CAAC;IAUjD;;OAEG;IACG,oBAAoB,IAAI,OAAO,CAAC,YAAY,GAAG,IAAI,CAAC;IAW1D;;OAEG;IACG,mBAAmB,IAAI,OAAO,CAAC,YAAY,GAAG,IAAI,CAAC;IAWzD;;OAEG;IACG,uBAAuB,IAAI,OAAO,CAAC,OAAO,CAAC;IAUjD;;OAEG;IACG,2BAA2B,IAAI,OAAO,CAAC,OAAO,CAAC;IAUrD;;OAEG;IACG,mBAAmB,IAAI,OAAO,CAAC,iBAAiB,CAAC;IAkBvD;;OAEG;IACG,iBAAiB,IAAI,OAAO,CAAC,OAAO,CAAC;IAU3C;;OAEG;IACG,qBAAqB,IAAI,OAAO,CAAC,OAAO,CAAC;IAc/C;;OAEG;IACG,iBAAiB,IAAI,OAAO,CAAC,OAAO,CAAC;IAc3C;;OAEG;IACH,kBAAkB,CAAC,KAAK,EAAE,SAAS,GAAG,mBAAmB;IAezD;;;OAGG;IACG,0BAA0B,CAAC,YAAY,EAAE,MAAM,GAAG,OAAO,CAAC,mBAAmB,CAAC;CAiCrF;;AAED,wBAAgD"}
1
+ {"version":3,"file":"VisionCameraModule.d.ts","sourceRoot":"","sources":["../../../src/modules/camera/VisionCameraModule.ts"],"names":[],"mappings":"AACA,OAAO,EAAU,YAAY,EAAE,sBAAsB,EAAE,SAAS,EAAE,MAAM,4BAA4B,CAAC;AAGrG,MAAM,WAAW,mBAAmB;IAClC,OAAO,EAAE,OAAO,CAAC;IACjB,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,KAAK,CAAC,EAAE,MAAM,CAAC;CAChB;AAED,MAAM,WAAW,iBAAiB;IAChC,MAAM,EAAE,sBAAsB,CAAC;IAC/B,UAAU,EAAE,sBAAsB,CAAC;CACpC;AAED,qBAAa,kBAAkB;IAC7B,OAAO,CAAC,MAAM,CAAC,QAAQ,CAAqB;WAE9B,WAAW,IAAI,kBAAkB;IAO/C;;OAEG;IACG,gBAAgB,IAAI,OAAO,CAAC,YAAY,EAAE,CAAC;IAUjD;;OAEG;IACG,oBAAoB,IAAI,OAAO,CAAC,YAAY,GAAG,IAAI,CAAC;IAW1D;;OAEG;IACG,mBAAmB,IAAI,OAAO,CAAC,YAAY,GAAG,IAAI,CAAC;IAWzD;;OAEG;IACG,uBAAuB,IAAI,OAAO,CAAC,OAAO,CAAC;IAUjD;;OAEG;IACG,2BAA2B,IAAI,OAAO,CAAC,OAAO,CAAC;IAUrD;;OAEG;IACG,mBAAmB,IAAI,OAAO,CAAC,iBAAiB,CAAC;IAkBvD;;OAEG;IACG,iBAAiB,IAAI,OAAO,CAAC,OAAO,CAAC;IAU3C;;OAEG;IACG,qBAAqB,IAAI,OAAO,CAAC,OAAO,CAAC;IAc/C;;OAEG;IACG,iBAAiB,IAAI,OAAO,CAAC,OAAO,CAAC;IAc3C;;OAEG;IACG,kBAAkB,CAAC,KAAK,EAAE,SAAS,GAAG,OAAO,CAAC,mBAAmB,CAAC;IAuBxE;;;OAGG;IACG,0BAA0B,CAAC,YAAY,EAAE,MAAM,GAAG,OAAO,CAAC,mBAAmB,CAAC;CAiCrF;;AAED,wBAAgD"}
@@ -1,5 +1,6 @@
1
1
  import { Platform } from 'react-native';
2
2
  import { Camera } from 'react-native-vision-camera';
3
+ import * as FileSystem from "expo-file-system";
3
4
  export class VisionCameraModule {
4
5
  static instance;
5
6
  static getInstance() {
@@ -143,11 +144,16 @@ export class VisionCameraModule {
143
144
  /**
144
145
  * Process photo capture result
145
146
  */
146
- processPhotoResult(photo) {
147
+ async processPhotoResult(photo) {
148
+ const newPath = FileSystem.documentDirectory + `photo_${Date.now()}.jpg`;
149
+ await FileSystem.copyAsync({
150
+ from: `file://${photo.path}`,
151
+ to: newPath,
152
+ });
147
153
  try {
148
154
  return {
149
155
  success: true,
150
- path: photo.path,
156
+ path: newPath,
151
157
  };
152
158
  }
153
159
  catch (error) {
@@ -1 +1 @@
1
- {"version":3,"file":"VisionCameraModule.js","sourceRoot":"","sources":["../../../src/modules/camera/VisionCameraModule.ts"],"names":[],"mappings":"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","sourcesContent":["import { Platform } from 'react-native';\nimport { Camera, CameraDevice, CameraPermissionStatus, PhotoFile } from 'react-native-vision-camera';\n\nexport interface CameraCaptureResult {\n success: boolean;\n path?: string;\n error?: string;\n}\n\nexport interface CameraPermissions {\n camera: CameraPermissionStatus;\n microphone: CameraPermissionStatus;\n}\n\nexport class VisionCameraModule {\n private static instance: VisionCameraModule;\n \n public static getInstance(): VisionCameraModule {\n if (!VisionCameraModule.instance) {\n VisionCameraModule.instance = new VisionCameraModule();\n }\n return VisionCameraModule.instance;\n }\n\n /**\n * Get available camera devices\n */\n async getCameraDevices(): Promise<CameraDevice[]> {\n try {\n const devices = Camera.getAvailableCameraDevices();\n return devices;\n } catch (error) {\n console.error('Error getting camera devices:', error);\n return [];\n }\n }\n\n /**\n * Get the best available device for selfies (front camera)\n */\n async getFrontCameraDevice(): Promise<CameraDevice | null> {\n try {\n const devices = await this.getCameraDevices();\n const frontCamera = devices.find(device => device.position === 'front');\n return frontCamera || null;\n } catch (error) {\n console.error('Error getting front camera:', error);\n return null;\n }\n }\n\n /**\n * Get the best available device for document capture (back camera)\n */\n async getBackCameraDevice(): Promise<CameraDevice | null> {\n try {\n const devices = await this.getCameraDevices();\n const backCamera = devices.find(device => device.position === 'back');\n return backCamera || null;\n } catch (error) {\n console.error('Error getting back camera:', error);\n return null;\n }\n }\n\n /**\n * Request camera permissions\n */\n async requestCameraPermission(): Promise<boolean> {\n try {\n const permission = await Camera.requestCameraPermission();\n return permission === 'granted';\n } catch (error) {\n console.error('Error requesting camera permission:', error);\n return false;\n }\n }\n\n /**\n * Request microphone permissions\n */\n async requestMicrophonePermission(): Promise<boolean> {\n try {\n const permission = await Camera.requestMicrophonePermission();\n return permission === 'granted';\n } catch (error) {\n console.error('Error requesting microphone permission:', error);\n return false;\n }\n }\n\n /**\n * Get current permission status\n */\n async getPermissionStatus(): Promise<CameraPermissions> {\n try {\n const cameraStatus = await Camera.getCameraPermissionStatus();\n const microphoneStatus = await Camera.getMicrophonePermissionStatus();\n \n return {\n camera: cameraStatus,\n microphone: microphoneStatus,\n };\n } catch (error) {\n console.error('Error getting permission status:', error);\n return {\n camera: 'denied',\n microphone: 'denied',\n };\n }\n }\n\n /**\n * Check if all required permissions are granted\n */\n async hasAllPermissions(): Promise<boolean> {\n try {\n const status = await this.getPermissionStatus();\n return status.camera === 'granted' && status.microphone === 'granted';\n } catch (error) {\n console.error('Error checking permissions:', error);\n return false;\n }\n }\n\n /**\n * Request all required permissions\n */\n async requestAllPermissions(): Promise<boolean> {\n try {\n const [cameraGranted, microphoneGranted] = await Promise.all([\n this.requestCameraPermission(),\n this.requestMicrophonePermission(),\n ]);\n \n return cameraGranted && microphoneGranted;\n } catch (error) {\n console.error('Error requesting permissions:', error);\n return false;\n }\n }\n\n /**\n * Check if camera is available\n */\n async isCameraAvailable(): Promise<boolean> {\n try {\n if (Platform.OS === 'web') {\n return false; // Vision Camera doesn't support web\n }\n \n const devices = await this.getCameraDevices();\n return devices.length > 0;\n } catch (error) {\n console.error('Error checking camera availability:', error);\n return false;\n }\n }\n\n /**\n * Process photo capture result\n */\n processPhotoResult(photo: PhotoFile): CameraCaptureResult {\n try {\n return {\n success: true,\n path: photo.path,\n };\n } catch (error) {\n console.error('Error processing photo result:', error);\n return {\n success: false,\n error: error instanceof Error ? error.message : 'Unknown error processing photo',\n };\n }\n }\n\n /**\n * Legacy method for backward compatibility\n * @deprecated Use VisionCameraView component instead\n */\n async openCameraWithInstructions(instructions: string): Promise<CameraCaptureResult> {\n console.warn('openCameraWithInstructions is deprecated. Use VisionCameraView component instead.');\n \n try {\n const hasPermissions = await this.requestAllPermissions();\n if (!hasPermissions) {\n return {\n success: false,\n error: 'Camera permissions not granted',\n };\n }\n\n const isAvailable = await this.isCameraAvailable();\n if (!isAvailable) {\n return {\n success: false,\n error: 'Camera not available',\n };\n }\n\n // Return a placeholder result since this should be handled by the component\n return {\n success: true,\n path: `mock_photo_${Date.now()}.jpg`,\n };\n } catch (error) {\n console.error('Error in openCameraWithInstructions:', error);\n return {\n success: false,\n error: error instanceof Error ? error.message : 'Unknown error',\n };\n }\n }\n}\n\nexport default VisionCameraModule.getInstance();"]}
1
+ {"version":3,"file":"VisionCameraModule.js","sourceRoot":"","sources":["../../../src/modules/camera/VisionCameraModule.ts"],"names":[],"mappings":"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","sourcesContent":["import { Platform } from 'react-native';\nimport { Camera, CameraDevice, CameraPermissionStatus, PhotoFile } from 'react-native-vision-camera';\nimport * as FileSystem from \"expo-file-system\";\n\nexport interface CameraCaptureResult {\n success: boolean;\n path?: string;\n error?: string;\n}\n\nexport interface CameraPermissions {\n camera: CameraPermissionStatus;\n microphone: CameraPermissionStatus;\n}\n\nexport class VisionCameraModule {\n private static instance: VisionCameraModule;\n\n public static getInstance(): VisionCameraModule {\n if (!VisionCameraModule.instance) {\n VisionCameraModule.instance = new VisionCameraModule();\n }\n return VisionCameraModule.instance;\n }\n\n /**\n * Get available camera devices\n */\n async getCameraDevices(): Promise<CameraDevice[]> {\n try {\n const devices = Camera.getAvailableCameraDevices();\n return devices;\n } catch (error) {\n console.error('Error getting camera devices:', error);\n return [];\n }\n }\n\n /**\n * Get the best available device for selfies (front camera)\n */\n async getFrontCameraDevice(): Promise<CameraDevice | null> {\n try {\n const devices = await this.getCameraDevices();\n const frontCamera = devices.find(device => device.position === 'front');\n return frontCamera || null;\n } catch (error) {\n console.error('Error getting front camera:', error);\n return null;\n }\n }\n\n /**\n * Get the best available device for document capture (back camera)\n */\n async getBackCameraDevice(): Promise<CameraDevice | null> {\n try {\n const devices = await this.getCameraDevices();\n const backCamera = devices.find(device => device.position === 'back');\n return backCamera || null;\n } catch (error) {\n console.error('Error getting back camera:', error);\n return null;\n }\n }\n\n /**\n * Request camera permissions\n */\n async requestCameraPermission(): Promise<boolean> {\n try {\n const permission = await Camera.requestCameraPermission();\n return permission === 'granted';\n } catch (error) {\n console.error('Error requesting camera permission:', error);\n return false;\n }\n }\n\n /**\n * Request microphone permissions\n */\n async requestMicrophonePermission(): Promise<boolean> {\n try {\n const permission = await Camera.requestMicrophonePermission();\n return permission === 'granted';\n } catch (error) {\n console.error('Error requesting microphone permission:', error);\n return false;\n }\n }\n\n /**\n * Get current permission status\n */\n async getPermissionStatus(): Promise<CameraPermissions> {\n try {\n const cameraStatus = await Camera.getCameraPermissionStatus();\n const microphoneStatus = await Camera.getMicrophonePermissionStatus();\n\n return {\n camera: cameraStatus,\n microphone: microphoneStatus,\n };\n } catch (error) {\n console.error('Error getting permission status:', error);\n return {\n camera: 'denied',\n microphone: 'denied',\n };\n }\n }\n\n /**\n * Check if all required permissions are granted\n */\n async hasAllPermissions(): Promise<boolean> {\n try {\n const status = await this.getPermissionStatus();\n return status.camera === 'granted' && status.microphone === 'granted';\n } catch (error) {\n console.error('Error checking permissions:', error);\n return false;\n }\n }\n\n /**\n * Request all required permissions\n */\n async requestAllPermissions(): Promise<boolean> {\n try {\n const [cameraGranted, microphoneGranted] = await Promise.all([\n this.requestCameraPermission(),\n this.requestMicrophonePermission(),\n ]);\n\n return cameraGranted && microphoneGranted;\n } catch (error) {\n console.error('Error requesting permissions:', error);\n return false;\n }\n }\n\n /**\n * Check if camera is available\n */\n async isCameraAvailable(): Promise<boolean> {\n try {\n if (Platform.OS === 'web') {\n return false; // Vision Camera doesn't support web\n }\n\n const devices = await this.getCameraDevices();\n return devices.length > 0;\n } catch (error) {\n console.error('Error checking camera availability:', error);\n return false;\n }\n }\n\n /**\n * Process photo capture result\n */\n async processPhotoResult(photo: PhotoFile): Promise<CameraCaptureResult> {\n\n const newPath = FileSystem.documentDirectory + `photo_${Date.now()}.jpg`;\n\n await FileSystem.copyAsync({\n from: `file://${photo.path}`,\n to: newPath,\n });\n\n try {\n return {\n success: true,\n path: newPath,\n };\n } catch (error) {\n console.error('Error processing photo result:', error);\n return {\n success: false,\n error: error instanceof Error ? error.message : 'Unknown error processing photo',\n };\n }\n }\n\n /**\n * Legacy method for backward compatibility\n * @deprecated Use VisionCameraView component instead\n */\n async openCameraWithInstructions(instructions: string): Promise<CameraCaptureResult> {\n console.warn('openCameraWithInstructions is deprecated. Use VisionCameraView component instead.');\n\n try {\n const hasPermissions = await this.requestAllPermissions();\n if (!hasPermissions) {\n return {\n success: false,\n error: 'Camera permissions not granted',\n };\n }\n\n const isAvailable = await this.isCameraAvailable();\n if (!isAvailable) {\n return {\n success: false,\n error: 'Camera not available',\n };\n }\n\n // Return a placeholder result since this should be handled by the component\n return {\n success: true,\n path: `mock_photo_${Date.now()}.jpg`,\n };\n } catch (error) {\n console.error('Error in openCameraWithInstructions:', error);\n return {\n success: false,\n error: error instanceof Error ? error.message : 'Unknown error',\n };\n }\n }\n}\n\nexport default VisionCameraModule.getInstance();"]}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@transfergratis/react-native-sdk",
3
- "version": "0.1.3",
3
+ "version": "0.1.4",
4
4
  "description": "transfergratis react native sdk",
5
5
  "main": "build/index.js",
6
6
  "types": "build/index.d.ts",
@@ -111,7 +111,7 @@ export const EnhancedCameraView: React.FC<EnhancedCameraViewProps> = ({
111
111
  flash: enableFlash ? flash : 'off',
112
112
  });
113
113
 
114
- const result = VisionCameraModule.processPhotoResult(photo);
114
+ const result = await VisionCameraModule.processPhotoResult(photo);
115
115
  onCapture?.(result);
116
116
  } catch (error) {
117
117
  console.error('Error taking photo:', error);
@@ -77,7 +77,7 @@ export const VisionCameraView: React.FC<VisionCameraViewProps> = ({
77
77
  enableShutterSound: true,
78
78
  });
79
79
 
80
- const result = VisionCameraModule.processPhotoResult(photo);
80
+ const result = await VisionCameraModule.processPhotoResult(photo);
81
81
  onCapture?.(result);
82
82
  } catch (error) {
83
83
  console.error('Error taking photo:', error);
@@ -45,7 +45,7 @@ const buttonVariants = {
45
45
  disabledText: '#ADB5BD',
46
46
  },
47
47
  outline: {
48
- backgroundColor: 'transparent',
48
+ backgroundColor: '#F8F9FA',
49
49
  borderColor: '#2DBD60',
50
50
  textColor: '#2DBD60',
51
51
  disabledBackground: 'transparent',
@@ -1,5 +1,6 @@
1
1
  import { Platform } from 'react-native';
2
2
  import { Camera, CameraDevice, CameraPermissionStatus, PhotoFile } from 'react-native-vision-camera';
3
+ import * as FileSystem from "expo-file-system";
3
4
 
4
5
  export interface CameraCaptureResult {
5
6
  success: boolean;
@@ -14,7 +15,7 @@ export interface CameraPermissions {
14
15
 
15
16
  export class VisionCameraModule {
16
17
  private static instance: VisionCameraModule;
17
-
18
+
18
19
  public static getInstance(): VisionCameraModule {
19
20
  if (!VisionCameraModule.instance) {
20
21
  VisionCameraModule.instance = new VisionCameraModule();
@@ -96,7 +97,7 @@ export class VisionCameraModule {
96
97
  try {
97
98
  const cameraStatus = await Camera.getCameraPermissionStatus();
98
99
  const microphoneStatus = await Camera.getMicrophonePermissionStatus();
99
-
100
+
100
101
  return {
101
102
  camera: cameraStatus,
102
103
  microphone: microphoneStatus,
@@ -132,7 +133,7 @@ export class VisionCameraModule {
132
133
  this.requestCameraPermission(),
133
134
  this.requestMicrophonePermission(),
134
135
  ]);
135
-
136
+
136
137
  return cameraGranted && microphoneGranted;
137
138
  } catch (error) {
138
139
  console.error('Error requesting permissions:', error);
@@ -148,7 +149,7 @@ export class VisionCameraModule {
148
149
  if (Platform.OS === 'web') {
149
150
  return false; // Vision Camera doesn't support web
150
151
  }
151
-
152
+
152
153
  const devices = await this.getCameraDevices();
153
154
  return devices.length > 0;
154
155
  } catch (error) {
@@ -160,11 +161,19 @@ export class VisionCameraModule {
160
161
  /**
161
162
  * Process photo capture result
162
163
  */
163
- processPhotoResult(photo: PhotoFile): CameraCaptureResult {
164
+ async processPhotoResult(photo: PhotoFile): Promise<CameraCaptureResult> {
165
+
166
+ const newPath = FileSystem.documentDirectory + `photo_${Date.now()}.jpg`;
167
+
168
+ await FileSystem.copyAsync({
169
+ from: `file://${photo.path}`,
170
+ to: newPath,
171
+ });
172
+
164
173
  try {
165
174
  return {
166
175
  success: true,
167
- path: photo.path,
176
+ path: newPath,
168
177
  };
169
178
  } catch (error) {
170
179
  console.error('Error processing photo result:', error);
@@ -181,7 +190,7 @@ export class VisionCameraModule {
181
190
  */
182
191
  async openCameraWithInstructions(instructions: string): Promise<CameraCaptureResult> {
183
192
  console.warn('openCameraWithInstructions is deprecated. Use VisionCameraView component instead.');
184
-
193
+
185
194
  try {
186
195
  const hasPermissions = await this.requestAllPermissions();
187
196
  if (!hasPermissions) {
@@ -1 +0,0 @@
1
- o/bundleLibRuntimeToDirDebug