react-native-ensys-camera-x 1.0.7

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 (506) hide show
  1. package/CustomCamera.podspec +20 -0
  2. package/LICENSE +20 -0
  3. package/README.md +833 -0
  4. package/android/build.gradle +135 -0
  5. package/android/consumer-rules.pro +47 -0
  6. package/android/src/main/AndroidManifest.xml +72 -0
  7. package/android/src/main/java/android/print/PdfPrint.java +51 -0
  8. package/android/src/main/java/com/customcamera/AnimatedImageViewManager.kt +199 -0
  9. package/android/src/main/java/com/customcamera/AudioPlayerView.kt +322 -0
  10. package/android/src/main/java/com/customcamera/AudioRecorder.kt +506 -0
  11. package/android/src/main/java/com/customcamera/BarcodeScannerActivity.kt +361 -0
  12. package/android/src/main/java/com/customcamera/BlurBackgroundView.kt +199 -0
  13. package/android/src/main/java/com/customcamera/CacheCleanupManager.kt +386 -0
  14. package/android/src/main/java/com/customcamera/CameraAspectRatioMode.kt +77 -0
  15. package/android/src/main/java/com/customcamera/CameraAsset.kt +211 -0
  16. package/android/src/main/java/com/customcamera/CameraTheme.kt +479 -0
  17. package/android/src/main/java/com/customcamera/CompressionCacheStore.kt +504 -0
  18. package/android/src/main/java/com/customcamera/CompressionFileNameUtils.kt +7 -0
  19. package/android/src/main/java/com/customcamera/CompressionProfile.kt +195 -0
  20. package/android/src/main/java/com/customcamera/CustomCameraActivity.kt +7291 -0
  21. package/android/src/main/java/com/customcamera/CustomCameraFileProvider.kt +9 -0
  22. package/android/src/main/java/com/customcamera/CustomCameraModule.kt +2479 -0
  23. package/android/src/main/java/com/customcamera/CustomCameraPackage.kt +53 -0
  24. package/android/src/main/java/com/customcamera/DisplayUtils.kt +9 -0
  25. package/android/src/main/java/com/customcamera/DocumentPreviewView.kt +846 -0
  26. package/android/src/main/java/com/customcamera/DrawingView.kt +214 -0
  27. package/android/src/main/java/com/customcamera/EmojiPickerData.kt +228 -0
  28. package/android/src/main/java/com/customcamera/FilterStripAdapter.kt +158 -0
  29. package/android/src/main/java/com/customcamera/GifSupport.kt +215 -0
  30. package/android/src/main/java/com/customcamera/GlobalAudioPlayer.kt +320 -0
  31. package/android/src/main/java/com/customcamera/ImageExporter.kt +1394 -0
  32. package/android/src/main/java/com/customcamera/ImageFormatSupport.kt +163 -0
  33. package/android/src/main/java/com/customcamera/Localization.kt +206 -0
  34. package/android/src/main/java/com/customcamera/MediaAdapters.kt +758 -0
  35. package/android/src/main/java/com/customcamera/MediaCacheManager.kt +782 -0
  36. package/android/src/main/java/com/customcamera/MediaExportFormats.kt +201 -0
  37. package/android/src/main/java/com/customcamera/MediaFileIo.kt +310 -0
  38. package/android/src/main/java/com/customcamera/MediaMetadataStore.kt +494 -0
  39. package/android/src/main/java/com/customcamera/MediaPreviewEditor.kt +14865 -0
  40. package/android/src/main/java/com/customcamera/MediaPublisher.kt +423 -0
  41. package/android/src/main/java/com/customcamera/MediaStorageWorkflow.kt +722 -0
  42. package/android/src/main/java/com/customcamera/MediaStoreRepository.kt +378 -0
  43. package/android/src/main/java/com/customcamera/MediaThumbnailView.kt +286 -0
  44. package/android/src/main/java/com/customcamera/MediaUtils.kt +37 -0
  45. package/android/src/main/java/com/customcamera/NativeVideoViewManager.kt +845 -0
  46. package/android/src/main/java/com/customcamera/OfficeDocumentConverter.kt +2791 -0
  47. package/android/src/main/java/com/customcamera/PendingCaptureCrops.kt +88 -0
  48. package/android/src/main/java/com/customcamera/PowerPointPreview.kt +4077 -0
  49. package/android/src/main/java/com/customcamera/RecentPickerStore.kt +74 -0
  50. package/android/src/main/java/com/customcamera/SecureFileEraser.kt +411 -0
  51. package/android/src/main/java/com/customcamera/SecureKeyModule.kt +88 -0
  52. package/android/src/main/java/com/customcamera/SecureMediaDeleter.kt +493 -0
  53. package/android/src/main/java/com/customcamera/StickerPickerData.kt +107 -0
  54. package/android/src/main/java/com/customcamera/SvgDrawable.kt +175 -0
  55. package/android/src/main/java/com/customcamera/SvgIconViewManager.kt +77 -0
  56. package/android/src/main/java/com/customcamera/TextEntryController.kt +553 -0
  57. package/android/src/main/java/com/customcamera/ThumbnailLoader.kt +455 -0
  58. package/android/src/main/java/com/customcamera/UploadService.kt +909 -0
  59. package/android/src/main/java/com/customcamera/VideoEditUtils.kt +210 -0
  60. package/android/src/main/java/com/customcamera/VideoRotationTranscoder.kt +1992 -0
  61. package/android/src/main/java/com/customcamera/gif/AnimatedGifEncoder.kt +473 -0
  62. package/android/src/main/java/com/customcamera/gif/GifDecoder.kt +690 -0
  63. package/android/src/main/java/com/customcamera/gif/GifFramesDrawable.kt +160 -0
  64. package/android/src/main/java/com/customcamera/gif/GifHttp.kt +112 -0
  65. package/android/src/main/java/com/customcamera/gif/GifImageLoader.kt +186 -0
  66. package/android/src/main/java/com/customcamera/gif/GifModels.kt +74 -0
  67. package/android/src/main/java/com/customcamera/gif/GifProvider.kt +49 -0
  68. package/android/src/main/java/com/customcamera/gif/GifProviders.kt +27 -0
  69. package/android/src/main/java/com/customcamera/gif/GifRepository.kt +124 -0
  70. package/android/src/main/java/com/customcamera/gif/GifSafety.kt +33 -0
  71. package/android/src/main/java/com/customcamera/gif/GiphyGifProvider.kt +146 -0
  72. package/android/src/main/java/com/customcamera/gif/LZWEncoder.kt +258 -0
  73. package/android/src/main/java/com/customcamera/gif/NeuQuant.kt +435 -0
  74. package/android/src/main/java/com/customcamera/gif/TenorGifProvider.kt +147 -0
  75. package/android/src/main/res/drawable/bg_brush_selected.xml +5 -0
  76. package/android/src/main/res/drawable/bg_color_swatch.xml +5 -0
  77. package/android/src/main/res/drawable/bg_editor_toolbar.xml +6 -0
  78. package/android/src/main/res/drawable/bg_icon_circle.xml +5 -0
  79. package/android/src/main/res/drawable/bg_icon_circle_light.xml +5 -0
  80. package/android/src/main/res/drawable/bg_mode_tab_active.xml +6 -0
  81. package/android/src/main/res/drawable/bg_pill.xml +6 -0
  82. package/android/src/main/res/drawable/bg_recording_dot.xml +6 -0
  83. package/android/src/main/res/drawable/bg_selection_badge.xml +8 -0
  84. package/android/src/main/res/drawable/bg_send_button.xml +5 -0
  85. package/android/src/main/res/drawable/bg_shutter_inner.xml +5 -0
  86. package/android/src/main/res/drawable/bg_shutter_recording.xml +6 -0
  87. package/android/src/main/res/drawable/bg_shutter_ring.xml +8 -0
  88. package/android/src/main/res/drawable/bg_shutter_video_idle.xml +5 -0
  89. package/android/src/main/res/drawable/bg_thumbnail.xml +9 -0
  90. package/android/src/main/res/drawable/ic_aspect_ratio.xml +17 -0
  91. package/android/src/main/res/drawable/ic_audio.xml +10 -0
  92. package/android/src/main/res/drawable/ic_back.xml +10 -0
  93. package/android/src/main/res/drawable/ic_brush_medium.xml +12 -0
  94. package/android/src/main/res/drawable/ic_brush_thick.xml +12 -0
  95. package/android/src/main/res/drawable/ic_brush_thin.xml +12 -0
  96. package/android/src/main/res/drawable/ic_check.xml +17 -0
  97. package/android/src/main/res/drawable/ic_chevron_down.xml +10 -0
  98. package/android/src/main/res/drawable/ic_chevron_up.xml +13 -0
  99. package/android/src/main/res/drawable/ic_clear_drawing.xml +10 -0
  100. package/android/src/main/res/drawable/ic_close.xml +10 -0
  101. package/android/src/main/res/drawable/ic_cover.xml +9 -0
  102. package/android/src/main/res/drawable/ic_crop.xml +10 -0
  103. package/android/src/main/res/drawable/ic_delete.xml +9 -0
  104. package/android/src/main/res/drawable/ic_document.xml +10 -0
  105. package/android/src/main/res/drawable/ic_done.xml +10 -0
  106. package/android/src/main/res/drawable/ic_download.xml +10 -0
  107. package/android/src/main/res/drawable/ic_emoji.xml +10 -0
  108. package/android/src/main/res/drawable/ic_filter.xml +10 -0
  109. package/android/src/main/res/drawable/ic_flash_auto.xml +7 -0
  110. package/android/src/main/res/drawable/ic_flash_off.xml +23 -0
  111. package/android/src/main/res/drawable/ic_flash_on.xml +16 -0
  112. package/android/src/main/res/drawable/ic_flip.xml +15 -0
  113. package/android/src/main/res/drawable/ic_gallery.xml +10 -0
  114. package/android/src/main/res/drawable/ic_gif.xml +24 -0
  115. package/android/src/main/res/drawable/ic_lock.xml +19 -0
  116. package/android/src/main/res/drawable/ic_lock_open.xml +22 -0
  117. package/android/src/main/res/drawable/ic_marker.xml +10 -0
  118. package/android/src/main/res/drawable/ic_more_vert.xml +18 -0
  119. package/android/src/main/res/drawable/ic_overlay_close.xml +19 -0
  120. package/android/src/main/res/drawable/ic_overlay_resize.xml +18 -0
  121. package/android/src/main/res/drawable/ic_pause.xml +10 -0
  122. package/android/src/main/res/drawable/ic_photo_mode.xml +10 -0
  123. package/android/src/main/res/drawable/ic_play.xml +10 -0
  124. package/android/src/main/res/drawable/ic_redo.xml +10 -0
  125. package/android/src/main/res/drawable/ic_rotate.xml +9 -0
  126. package/android/src/main/res/drawable/ic_send.xml +10 -0
  127. package/android/src/main/res/drawable/ic_share.xml +10 -0
  128. package/android/src/main/res/drawable/ic_stat_upload.xml +10 -0
  129. package/android/src/main/res/drawable/ic_sticker.xml +24 -0
  130. package/android/src/main/res/drawable/ic_text.xml +10 -0
  131. package/android/src/main/res/drawable/ic_text_align_center.xml +11 -0
  132. package/android/src/main/res/drawable/ic_text_align_left.xml +11 -0
  133. package/android/src/main/res/drawable/ic_text_align_right.xml +11 -0
  134. package/android/src/main/res/drawable/ic_text_bg.xml +11 -0
  135. package/android/src/main/res/drawable/ic_trim.xml +23 -0
  136. package/android/src/main/res/drawable/ic_undo.xml +10 -0
  137. package/android/src/main/res/drawable/ic_video_mode.xml +10 -0
  138. package/android/src/main/res/drawable/ic_video_note.xml +13 -0
  139. package/android/src/main/res/drawable/ic_volume_off.xml +9 -0
  140. package/android/src/main/res/drawable/ic_volume_on.xml +9 -0
  141. package/android/src/main/res/drawable/sticker_heart.xml +9 -0
  142. package/android/src/main/res/drawable/sticker_smile.xml +9 -0
  143. package/android/src/main/res/drawable/sticker_star.xml +9 -0
  144. package/android/src/main/res/drawable/sticker_thumbsup.xml +9 -0
  145. package/android/src/main/res/values/colors.xml +34 -0
  146. package/android/src/main/res/values/ids.xml +15 -0
  147. package/android/src/main/res/values/strings.xml +15 -0
  148. package/android/src/main/res/values/styles.xml +20 -0
  149. package/android/src/main/res/xml/file_paths.xml +34 -0
  150. package/ios/CustomCamera.h +5 -0
  151. package/ios/CustomCamera.mm +214 -0
  152. package/lib/module/AudioPlayerContext.js +233 -0
  153. package/lib/module/AudioPlayerContext.js.map +1 -0
  154. package/lib/module/CameraPreview.js +304 -0
  155. package/lib/module/CameraPreview.js.map +1 -0
  156. package/lib/module/NativeAnimatedImageView.js +41 -0
  157. package/lib/module/NativeAnimatedImageView.js.map +1 -0
  158. package/lib/module/NativeAudioPlayerView.js +33 -0
  159. package/lib/module/NativeAudioPlayerView.js.map +1 -0
  160. package/lib/module/NativeBlurView.js +35 -0
  161. package/lib/module/NativeBlurView.js.map +1 -0
  162. package/lib/module/NativeCustomCamera.js +128 -0
  163. package/lib/module/NativeCustomCamera.js.map +1 -0
  164. package/lib/module/NativeCustomCamera.web.js +143 -0
  165. package/lib/module/NativeCustomCamera.web.js.map +1 -0
  166. package/lib/module/NativeCustomVideoView.js +5 -0
  167. package/lib/module/NativeCustomVideoView.js.map +1 -0
  168. package/lib/module/NativeDocumentPreviewView.js +156 -0
  169. package/lib/module/NativeDocumentPreviewView.js.map +1 -0
  170. package/lib/module/NativeMediaThumbnailView.js +110 -0
  171. package/lib/module/NativeMediaThumbnailView.js.map +1 -0
  172. package/lib/module/NativeSvgIcon.js +32 -0
  173. package/lib/module/NativeSvgIcon.js.map +1 -0
  174. package/lib/module/ResponsivePreviewContainer.js +171 -0
  175. package/lib/module/ResponsivePreviewContainer.js.map +1 -0
  176. package/lib/module/accessibility.js +61 -0
  177. package/lib/module/accessibility.js.map +1 -0
  178. package/lib/module/config.js +352 -0
  179. package/lib/module/config.js.map +1 -0
  180. package/lib/module/cpuOptimization.js +296 -0
  181. package/lib/module/cpuOptimization.js.map +1 -0
  182. package/lib/module/db/DatabaseManager.js +191 -0
  183. package/lib/module/db/DatabaseManager.js.map +1 -0
  184. package/lib/module/db/MediaMapper.js +284 -0
  185. package/lib/module/db/MediaMapper.js.map +1 -0
  186. package/lib/module/db/MediaRepository.js +242 -0
  187. package/lib/module/db/MediaRepository.js.map +1 -0
  188. package/lib/module/db/index.js +41 -0
  189. package/lib/module/db/index.js.map +1 -0
  190. package/lib/module/db/migrations.js +180 -0
  191. package/lib/module/db/migrations.js.map +1 -0
  192. package/lib/module/db/react-native-sqlcipher.d.js +2 -0
  193. package/lib/module/db/react-native-sqlcipher.d.js.map +1 -0
  194. package/lib/module/db/secureKey.js +87 -0
  195. package/lib/module/db/secureKey.js.map +1 -0
  196. package/lib/module/db/types.js +57 -0
  197. package/lib/module/db/types.js.map +1 -0
  198. package/lib/module/db/useMediaDatabase.js +123 -0
  199. package/lib/module/db/useMediaDatabase.js.map +1 -0
  200. package/lib/module/defaultIcons.js +2259 -0
  201. package/lib/module/defaultIcons.js.map +1 -0
  202. package/lib/module/deviceCapabilities.js +408 -0
  203. package/lib/module/deviceCapabilities.js.map +1 -0
  204. package/lib/module/errors.js +267 -0
  205. package/lib/module/errors.js.map +1 -0
  206. package/lib/module/iconConfig.js +796 -0
  207. package/lib/module/iconConfig.js.map +1 -0
  208. package/lib/module/icons.js +514 -0
  209. package/lib/module/icons.js.map +1 -0
  210. package/lib/module/index.js +251 -0
  211. package/lib/module/index.js.map +1 -0
  212. package/lib/module/jest-globals.d.js +2 -0
  213. package/lib/module/jest-globals.d.js.map +1 -0
  214. package/lib/module/library/MediaLibrary.js +107 -0
  215. package/lib/module/library/MediaLibrary.js.map +1 -0
  216. package/lib/module/library/MediaLibraryScreen.js +2597 -0
  217. package/lib/module/library/MediaLibraryScreen.js.map +1 -0
  218. package/lib/module/library/components/AudioPreview.js +74 -0
  219. package/lib/module/library/components/AudioPreview.js.map +1 -0
  220. package/lib/module/library/components/DocumentPreview.js +331 -0
  221. package/lib/module/library/components/DocumentPreview.js.map +1 -0
  222. package/lib/module/library/components/ExpandableFab.js +343 -0
  223. package/lib/module/library/components/ExpandableFab.js.map +1 -0
  224. package/lib/module/library/components/FileTiles.js +251 -0
  225. package/lib/module/library/components/FileTiles.js.map +1 -0
  226. package/lib/module/library/components/ImagePreview.js +70 -0
  227. package/lib/module/library/components/ImagePreview.js.map +1 -0
  228. package/lib/module/library/components/MediaMetadataHeader.js +175 -0
  229. package/lib/module/library/components/MediaMetadataHeader.js.map +1 -0
  230. package/lib/module/library/components/RecordAudioScreen.js +816 -0
  231. package/lib/module/library/components/RecordAudioScreen.js.map +1 -0
  232. package/lib/module/library/components/VideoPreview.js +453 -0
  233. package/lib/module/library/components/VideoPreview.js.map +1 -0
  234. package/lib/module/library/components/ViewerCounter.js +55 -0
  235. package/lib/module/library/components/ViewerCounter.js.map +1 -0
  236. package/lib/module/library/compressionEstimate.js +507 -0
  237. package/lib/module/library/compressionEstimate.js.map +1 -0
  238. package/lib/module/library/fileMetadata.js +196 -0
  239. package/lib/module/library/fileMetadata.js.map +1 -0
  240. package/lib/module/library/index.js +42 -0
  241. package/lib/module/library/index.js.map +1 -0
  242. package/lib/module/library/libraryIconRegistry.js +69 -0
  243. package/lib/module/library/libraryIconRegistry.js.map +1 -0
  244. package/lib/module/library/libraryIcons.js +858 -0
  245. package/lib/module/library/libraryIcons.js.map +1 -0
  246. package/lib/module/library/localizedFormat.js +181 -0
  247. package/lib/module/library/localizedFormat.js.map +1 -0
  248. package/lib/module/library/palette.js +225 -0
  249. package/lib/module/library/palette.js.map +1 -0
  250. package/lib/module/library/responsive.js +53 -0
  251. package/lib/module/library/responsive.js.map +1 -0
  252. package/lib/module/locales.js +416 -0
  253. package/lib/module/locales.js.map +1 -0
  254. package/lib/module/localization.js +1064 -0
  255. package/lib/module/localization.js.map +1 -0
  256. package/lib/module/logger.js +20 -0
  257. package/lib/module/logger.js.map +1 -0
  258. package/lib/module/lowMemoryCache.js +206 -0
  259. package/lib/module/lowMemoryCache.js.map +1 -0
  260. package/lib/module/mediaHistory.js +33 -0
  261. package/lib/module/mediaHistory.js.map +1 -0
  262. package/lib/module/mediaStorageService.js +402 -0
  263. package/lib/module/mediaStorageService.js.map +1 -0
  264. package/lib/module/memory.js +79 -0
  265. package/lib/module/memory.js.map +1 -0
  266. package/lib/module/nativeActions.js +307 -0
  267. package/lib/module/nativeActions.js.map +1 -0
  268. package/lib/module/nativeComponentSupport.js +61 -0
  269. package/lib/module/nativeComponentSupport.js.map +1 -0
  270. package/lib/module/networkPerformance.js +24 -0
  271. package/lib/module/networkPerformance.js.map +1 -0
  272. package/lib/module/package.json +1 -0
  273. package/lib/module/performance.js +104 -0
  274. package/lib/module/performance.js.map +1 -0
  275. package/lib/module/performanceMonitor.js +155 -0
  276. package/lib/module/performanceMonitor.js.map +1 -0
  277. package/lib/module/permissions.js +370 -0
  278. package/lib/module/permissions.js.map +1 -0
  279. package/lib/module/rendering.js +40 -0
  280. package/lib/module/rendering.js.map +1 -0
  281. package/lib/module/security.js +18 -0
  282. package/lib/module/security.js.map +1 -0
  283. package/lib/module/state.js +266 -0
  284. package/lib/module/state.js.map +1 -0
  285. package/lib/module/storage.js +400 -0
  286. package/lib/module/storage.js.map +1 -0
  287. package/lib/module/theme.js +390 -0
  288. package/lib/module/theme.js.map +1 -0
  289. package/lib/module/types.js +4 -0
  290. package/lib/module/types.js.map +1 -0
  291. package/lib/module/utils.js +115 -0
  292. package/lib/module/utils.js.map +1 -0
  293. package/lib/module/validation.js +288 -0
  294. package/lib/module/validation.js.map +1 -0
  295. package/lib/typescript/package.json +1 -0
  296. package/lib/typescript/src/AudioPlayerContext.d.ts +27 -0
  297. package/lib/typescript/src/AudioPlayerContext.d.ts.map +1 -0
  298. package/lib/typescript/src/CameraPreview.d.ts +13 -0
  299. package/lib/typescript/src/CameraPreview.d.ts.map +1 -0
  300. package/lib/typescript/src/NativeAnimatedImageView.d.ts +33 -0
  301. package/lib/typescript/src/NativeAnimatedImageView.d.ts.map +1 -0
  302. package/lib/typescript/src/NativeAudioPlayerView.d.ts +12 -0
  303. package/lib/typescript/src/NativeAudioPlayerView.d.ts.map +1 -0
  304. package/lib/typescript/src/NativeBlurView.d.ts +12 -0
  305. package/lib/typescript/src/NativeBlurView.d.ts.map +1 -0
  306. package/lib/typescript/src/NativeCustomCamera.d.ts +167 -0
  307. package/lib/typescript/src/NativeCustomCamera.d.ts.map +1 -0
  308. package/lib/typescript/src/NativeCustomCamera.web.d.ts +47 -0
  309. package/lib/typescript/src/NativeCustomCamera.web.d.ts.map +1 -0
  310. package/lib/typescript/src/NativeCustomVideoView.d.ts +30 -0
  311. package/lib/typescript/src/NativeCustomVideoView.d.ts.map +1 -0
  312. package/lib/typescript/src/NativeDocumentPreviewView.d.ts +48 -0
  313. package/lib/typescript/src/NativeDocumentPreviewView.d.ts.map +1 -0
  314. package/lib/typescript/src/NativeMediaThumbnailView.d.ts +54 -0
  315. package/lib/typescript/src/NativeMediaThumbnailView.d.ts.map +1 -0
  316. package/lib/typescript/src/NativeSvgIcon.d.ts +25 -0
  317. package/lib/typescript/src/NativeSvgIcon.d.ts.map +1 -0
  318. package/lib/typescript/src/ResponsivePreviewContainer.d.ts +92 -0
  319. package/lib/typescript/src/ResponsivePreviewContainer.d.ts.map +1 -0
  320. package/lib/typescript/src/accessibility.d.ts +20 -0
  321. package/lib/typescript/src/accessibility.d.ts.map +1 -0
  322. package/lib/typescript/src/config.d.ts +145 -0
  323. package/lib/typescript/src/config.d.ts.map +1 -0
  324. package/lib/typescript/src/cpuOptimization.d.ts +63 -0
  325. package/lib/typescript/src/cpuOptimization.d.ts.map +1 -0
  326. package/lib/typescript/src/db/DatabaseManager.d.ts +48 -0
  327. package/lib/typescript/src/db/DatabaseManager.d.ts.map +1 -0
  328. package/lib/typescript/src/db/MediaMapper.d.ts +77 -0
  329. package/lib/typescript/src/db/MediaMapper.d.ts.map +1 -0
  330. package/lib/typescript/src/db/MediaRepository.d.ts +66 -0
  331. package/lib/typescript/src/db/MediaRepository.d.ts.map +1 -0
  332. package/lib/typescript/src/db/index.d.ts +23 -0
  333. package/lib/typescript/src/db/index.d.ts.map +1 -0
  334. package/lib/typescript/src/db/migrations.d.ts +31 -0
  335. package/lib/typescript/src/db/migrations.d.ts.map +1 -0
  336. package/lib/typescript/src/db/secureKey.d.ts +10 -0
  337. package/lib/typescript/src/db/secureKey.d.ts.map +1 -0
  338. package/lib/typescript/src/db/types.d.ts +115 -0
  339. package/lib/typescript/src/db/types.d.ts.map +1 -0
  340. package/lib/typescript/src/db/useMediaDatabase.d.ts +41 -0
  341. package/lib/typescript/src/db/useMediaDatabase.d.ts.map +1 -0
  342. package/lib/typescript/src/defaultIcons.d.ts +139 -0
  343. package/lib/typescript/src/defaultIcons.d.ts.map +1 -0
  344. package/lib/typescript/src/deviceCapabilities.d.ts +92 -0
  345. package/lib/typescript/src/deviceCapabilities.d.ts.map +1 -0
  346. package/lib/typescript/src/errors.d.ts +95 -0
  347. package/lib/typescript/src/errors.d.ts.map +1 -0
  348. package/lib/typescript/src/iconConfig.d.ts +176 -0
  349. package/lib/typescript/src/iconConfig.d.ts.map +1 -0
  350. package/lib/typescript/src/icons.d.ts +217 -0
  351. package/lib/typescript/src/icons.d.ts.map +1 -0
  352. package/lib/typescript/src/index.d.ts +104 -0
  353. package/lib/typescript/src/index.d.ts.map +1 -0
  354. package/lib/typescript/src/library/MediaLibrary.d.ts +57 -0
  355. package/lib/typescript/src/library/MediaLibrary.d.ts.map +1 -0
  356. package/lib/typescript/src/library/MediaLibraryScreen.d.ts +51 -0
  357. package/lib/typescript/src/library/MediaLibraryScreen.d.ts.map +1 -0
  358. package/lib/typescript/src/library/components/AudioPreview.d.ts +6 -0
  359. package/lib/typescript/src/library/components/AudioPreview.d.ts.map +1 -0
  360. package/lib/typescript/src/library/components/DocumentPreview.d.ts +10 -0
  361. package/lib/typescript/src/library/components/DocumentPreview.d.ts.map +1 -0
  362. package/lib/typescript/src/library/components/ExpandableFab.d.ts +39 -0
  363. package/lib/typescript/src/library/components/ExpandableFab.d.ts.map +1 -0
  364. package/lib/typescript/src/library/components/FileTiles.d.ts +8 -0
  365. package/lib/typescript/src/library/components/FileTiles.d.ts.map +1 -0
  366. package/lib/typescript/src/library/components/ImagePreview.d.ts +5 -0
  367. package/lib/typescript/src/library/components/ImagePreview.d.ts.map +1 -0
  368. package/lib/typescript/src/library/components/MediaMetadataHeader.d.ts +16 -0
  369. package/lib/typescript/src/library/components/MediaMetadataHeader.d.ts.map +1 -0
  370. package/lib/typescript/src/library/components/RecordAudioScreen.d.ts +8 -0
  371. package/lib/typescript/src/library/components/RecordAudioScreen.d.ts.map +1 -0
  372. package/lib/typescript/src/library/components/VideoPreview.d.ts +20 -0
  373. package/lib/typescript/src/library/components/VideoPreview.d.ts.map +1 -0
  374. package/lib/typescript/src/library/components/ViewerCounter.d.ts +13 -0
  375. package/lib/typescript/src/library/components/ViewerCounter.d.ts.map +1 -0
  376. package/lib/typescript/src/library/compressionEstimate.d.ts +313 -0
  377. package/lib/typescript/src/library/compressionEstimate.d.ts.map +1 -0
  378. package/lib/typescript/src/library/fileMetadata.d.ts +33 -0
  379. package/lib/typescript/src/library/fileMetadata.d.ts.map +1 -0
  380. package/lib/typescript/src/library/index.d.ts +40 -0
  381. package/lib/typescript/src/library/index.d.ts.map +1 -0
  382. package/lib/typescript/src/library/libraryIconRegistry.d.ts +35 -0
  383. package/lib/typescript/src/library/libraryIconRegistry.d.ts.map +1 -0
  384. package/lib/typescript/src/library/libraryIcons.d.ts +85 -0
  385. package/lib/typescript/src/library/libraryIcons.d.ts.map +1 -0
  386. package/lib/typescript/src/library/localizedFormat.d.ts +49 -0
  387. package/lib/typescript/src/library/localizedFormat.d.ts.map +1 -0
  388. package/lib/typescript/src/library/palette.d.ts +104 -0
  389. package/lib/typescript/src/library/palette.d.ts.map +1 -0
  390. package/lib/typescript/src/library/responsive.d.ts +15 -0
  391. package/lib/typescript/src/library/responsive.d.ts.map +1 -0
  392. package/lib/typescript/src/locales.d.ts +103 -0
  393. package/lib/typescript/src/locales.d.ts.map +1 -0
  394. package/lib/typescript/src/localization.d.ts +1051 -0
  395. package/lib/typescript/src/localization.d.ts.map +1 -0
  396. package/lib/typescript/src/logger.d.ts +4 -0
  397. package/lib/typescript/src/logger.d.ts.map +1 -0
  398. package/lib/typescript/src/lowMemoryCache.d.ts +64 -0
  399. package/lib/typescript/src/lowMemoryCache.d.ts.map +1 -0
  400. package/lib/typescript/src/mediaHistory.d.ts +3 -0
  401. package/lib/typescript/src/mediaHistory.d.ts.map +1 -0
  402. package/lib/typescript/src/mediaStorageService.d.ts +155 -0
  403. package/lib/typescript/src/mediaStorageService.d.ts.map +1 -0
  404. package/lib/typescript/src/memory.d.ts +21 -0
  405. package/lib/typescript/src/memory.d.ts.map +1 -0
  406. package/lib/typescript/src/nativeActions.d.ts +174 -0
  407. package/lib/typescript/src/nativeActions.d.ts.map +1 -0
  408. package/lib/typescript/src/nativeComponentSupport.d.ts +30 -0
  409. package/lib/typescript/src/nativeComponentSupport.d.ts.map +1 -0
  410. package/lib/typescript/src/networkPerformance.d.ts +12 -0
  411. package/lib/typescript/src/networkPerformance.d.ts.map +1 -0
  412. package/lib/typescript/src/performance.d.ts +32 -0
  413. package/lib/typescript/src/performance.d.ts.map +1 -0
  414. package/lib/typescript/src/performanceMonitor.d.ts +45 -0
  415. package/lib/typescript/src/performanceMonitor.d.ts.map +1 -0
  416. package/lib/typescript/src/permissions.d.ts +132 -0
  417. package/lib/typescript/src/permissions.d.ts.map +1 -0
  418. package/lib/typescript/src/rendering.d.ts +9 -0
  419. package/lib/typescript/src/rendering.d.ts.map +1 -0
  420. package/lib/typescript/src/security.d.ts +6 -0
  421. package/lib/typescript/src/security.d.ts.map +1 -0
  422. package/lib/typescript/src/state.d.ts +102 -0
  423. package/lib/typescript/src/state.d.ts.map +1 -0
  424. package/lib/typescript/src/storage.d.ts +117 -0
  425. package/lib/typescript/src/storage.d.ts.map +1 -0
  426. package/lib/typescript/src/theme.d.ts +15 -0
  427. package/lib/typescript/src/theme.d.ts.map +1 -0
  428. package/lib/typescript/src/types.d.ts +802 -0
  429. package/lib/typescript/src/types.d.ts.map +1 -0
  430. package/lib/typescript/src/utils.d.ts +50 -0
  431. package/lib/typescript/src/utils.d.ts.map +1 -0
  432. package/lib/typescript/src/validation.d.ts +52 -0
  433. package/lib/typescript/src/validation.d.ts.map +1 -0
  434. package/package.json +204 -0
  435. package/react-native.config.js +17 -0
  436. package/src/AudioPlayerContext.tsx +220 -0
  437. package/src/CameraPreview.tsx +352 -0
  438. package/src/NativeAnimatedImageView.tsx +71 -0
  439. package/src/NativeAudioPlayerView.tsx +39 -0
  440. package/src/NativeBlurView.tsx +40 -0
  441. package/src/NativeCustomCamera.ts +305 -0
  442. package/src/NativeCustomCamera.web.ts +192 -0
  443. package/src/NativeCustomVideoView.ts +30 -0
  444. package/src/NativeDocumentPreviewView.tsx +196 -0
  445. package/src/NativeMediaThumbnailView.tsx +167 -0
  446. package/src/NativeSvgIcon.tsx +46 -0
  447. package/src/ResponsivePreviewContainer.tsx +227 -0
  448. package/src/accessibility.ts +80 -0
  449. package/src/config.ts +406 -0
  450. package/src/cpuOptimization.ts +365 -0
  451. package/src/db/DatabaseManager.ts +212 -0
  452. package/src/db/MediaMapper.ts +377 -0
  453. package/src/db/MediaRepository.ts +313 -0
  454. package/src/db/index.ts +73 -0
  455. package/src/db/migrations.ts +222 -0
  456. package/src/db/react-native-sqlcipher.d.ts +76 -0
  457. package/src/db/secureKey.ts +100 -0
  458. package/src/db/types.ts +123 -0
  459. package/src/db/useMediaDatabase.ts +191 -0
  460. package/src/defaultIcons.tsx +2390 -0
  461. package/src/deviceCapabilities.ts +438 -0
  462. package/src/errors.ts +350 -0
  463. package/src/iconConfig.tsx +962 -0
  464. package/src/icons.tsx +788 -0
  465. package/src/index.tsx +763 -0
  466. package/src/jest-globals.d.ts +9 -0
  467. package/src/library/MediaLibrary.tsx +141 -0
  468. package/src/library/MediaLibraryScreen.tsx +3003 -0
  469. package/src/library/components/AudioPreview.tsx +73 -0
  470. package/src/library/components/DocumentPreview.tsx +361 -0
  471. package/src/library/components/ExpandableFab.tsx +342 -0
  472. package/src/library/components/FileTiles.tsx +252 -0
  473. package/src/library/components/ImagePreview.tsx +72 -0
  474. package/src/library/components/MediaMetadataHeader.tsx +208 -0
  475. package/src/library/components/RecordAudioScreen.tsx +845 -0
  476. package/src/library/components/VideoPreview.tsx +478 -0
  477. package/src/library/components/ViewerCounter.tsx +71 -0
  478. package/src/library/compressionEstimate.ts +662 -0
  479. package/src/library/fileMetadata.ts +212 -0
  480. package/src/library/index.ts +66 -0
  481. package/src/library/libraryIconRegistry.tsx +86 -0
  482. package/src/library/libraryIcons.tsx +928 -0
  483. package/src/library/localizedFormat.ts +207 -0
  484. package/src/library/palette.ts +281 -0
  485. package/src/library/responsive.ts +49 -0
  486. package/src/locales.ts +381 -0
  487. package/src/localization.ts +1947 -0
  488. package/src/logger.ts +20 -0
  489. package/src/lowMemoryCache.ts +218 -0
  490. package/src/mediaHistory.ts +42 -0
  491. package/src/mediaStorageService.ts +546 -0
  492. package/src/memory.ts +102 -0
  493. package/src/nativeActions.ts +422 -0
  494. package/src/nativeComponentSupport.ts +60 -0
  495. package/src/networkPerformance.ts +30 -0
  496. package/src/performance.ts +137 -0
  497. package/src/performanceMonitor.ts +219 -0
  498. package/src/permissions.ts +403 -0
  499. package/src/rendering.ts +47 -0
  500. package/src/security.ts +19 -0
  501. package/src/state.ts +333 -0
  502. package/src/storage.ts +453 -0
  503. package/src/theme.tsx +467 -0
  504. package/src/types.ts +946 -0
  505. package/src/utils.ts +177 -0
  506. package/src/validation.ts +372 -0
@@ -0,0 +1,288 @@
1
+ "use strict";
2
+
3
+ /**
4
+ * Comprehensive validation utilities for camera operations
5
+ */
6
+
7
+ import { CameraError, ERROR_CODES, validateUri } from "./errors.js";
8
+ import { LocalizationManager } from "./localization.js";
9
+ // Constants
10
+ const MAX_IMAGE_SIZE = 50 * 1024 * 1024; // 50MB
11
+ const MAX_VIDEO_SIZE = 500 * 1024 * 1024; // 500MB
12
+ const MAX_ALBUM_NAME_LENGTH = 100;
13
+ const MAX_CAPTION_LENGTH = 2000;
14
+ const MAX_BATCH_SIZE = 50;
15
+
16
+ /**
17
+ * Validate camera picker options
18
+ */
19
+ export function validateCameraPickerOptions(options) {
20
+ if (options.selectionLimit !== undefined) {
21
+ if (!Number.isInteger(options.selectionLimit) || options.selectionLimit < 0) {
22
+ throw new CameraError(LocalizationManager.getString('validationSelectionLimitNonNegativeInteger'), ERROR_CODES.INVALID_PARAMETER, {
23
+ parameter: 'selectionLimit',
24
+ value: options.selectionLimit
25
+ });
26
+ }
27
+ }
28
+ if (options.initialCamera && !['back', 'front'].includes(options.initialCamera)) {
29
+ throw new CameraError(LocalizationManager.getString('validationInitialCameraInvalid'), ERROR_CODES.INVALID_PARAMETER, {
30
+ parameter: 'initialCamera',
31
+ value: options.initialCamera
32
+ });
33
+ }
34
+ if (options.mediaTypes && !['all', 'photo', 'video'].includes(options.mediaTypes)) {
35
+ throw new CameraError(LocalizationManager.getString('validationMediaTypesInvalid'), ERROR_CODES.INVALID_PARAMETER, {
36
+ parameter: 'mediaTypes',
37
+ value: options.mediaTypes
38
+ });
39
+ }
40
+
41
+ // Hold-to-record durations. The native side clamps these anyway, but a nonsense value is far
42
+ // easier to spot here than as a gesture that silently behaves nothing like the caller asked.
43
+ if (options.holdToRecordDelayMs !== undefined) {
44
+ if (!Number.isFinite(options.holdToRecordDelayMs) || options.holdToRecordDelayMs < 0) {
45
+ throw new CameraError(LocalizationManager.getString('validationHoldToRecordDelayInvalid'), ERROR_CODES.INVALID_PARAMETER, {
46
+ parameter: 'holdToRecordDelayMs',
47
+ value: options.holdToRecordDelayMs
48
+ });
49
+ }
50
+ }
51
+ if (options.minRecordDurationMs !== undefined) {
52
+ if (!Number.isFinite(options.minRecordDurationMs) || options.minRecordDurationMs < 0) {
53
+ throw new CameraError(LocalizationManager.getString('validationMinRecordDurationInvalid'), ERROR_CODES.INVALID_PARAMETER, {
54
+ parameter: 'minRecordDurationMs',
55
+ value: options.minRecordDurationMs
56
+ });
57
+ }
58
+ }
59
+ }
60
+
61
+ /**
62
+ * Validate URIs array
63
+ */
64
+ export function validateUrisArray(uris) {
65
+ if (!Array.isArray(uris)) {
66
+ throw new CameraError(LocalizationManager.getString('validationUrisMustBeArray'), ERROR_CODES.INVALID_PARAMETER, {
67
+ parameter: 'uris',
68
+ value: uris
69
+ });
70
+ }
71
+ if (uris.length === 0) {
72
+ throw new CameraError(LocalizationManager.getString('validationUrisCannotBeEmpty'), ERROR_CODES.INVALID_PARAMETER, {
73
+ parameter: 'uris',
74
+ value: uris
75
+ });
76
+ }
77
+ if (uris.length > MAX_BATCH_SIZE) {
78
+ throw new CameraError(LocalizationManager.getString('validationTooManyFiles', MAX_BATCH_SIZE), ERROR_CODES.INVALID_PARAMETER, {
79
+ parameter: 'uris',
80
+ value: uris,
81
+ maxAllowed: MAX_BATCH_SIZE
82
+ });
83
+ }
84
+ uris.forEach((uri, index) => {
85
+ if (!validateUri(uri)) {
86
+ throw new CameraError(LocalizationManager.getString('validationInvalidUriAtIndex', index, uri), ERROR_CODES.INVALID_URI, {
87
+ uri,
88
+ index
89
+ });
90
+ }
91
+ });
92
+ }
93
+
94
+ /**
95
+ * Validate album name
96
+ */
97
+ export function validateAlbumName(albumName) {
98
+ if (!albumName || typeof albumName !== 'string') {
99
+ throw new CameraError(LocalizationManager.getString('validationAlbumNameRequired'), ERROR_CODES.INVALID_PARAMETER, {
100
+ parameter: 'albumName',
101
+ value: albumName
102
+ });
103
+ }
104
+ if (albumName.length > MAX_ALBUM_NAME_LENGTH) {
105
+ throw new CameraError(LocalizationManager.getString('validationAlbumNameTooLong', MAX_ALBUM_NAME_LENGTH), ERROR_CODES.INVALID_PARAMETER, {
106
+ parameter: 'albumName',
107
+ value: albumName,
108
+ maxLength: MAX_ALBUM_NAME_LENGTH
109
+ });
110
+ }
111
+
112
+ // Check for invalid characters
113
+ const invalidChars = /[/:*?"<>|]/;
114
+ if (invalidChars.test(albumName)) {
115
+ throw new CameraError(LocalizationManager.getString('validationAlbumNameInvalidCharacters'), ERROR_CODES.INVALID_PARAMETER, {
116
+ parameter: 'albumName',
117
+ value: albumName
118
+ });
119
+ }
120
+ }
121
+
122
+ /**
123
+ * Validate caption
124
+ */
125
+ export function validateCaption(caption) {
126
+ if (caption === undefined || caption === null) return;
127
+ if (typeof caption !== 'string') {
128
+ throw new CameraError(LocalizationManager.getString('validationCaptionMustBeString'), ERROR_CODES.INVALID_PARAMETER, {
129
+ parameter: 'caption',
130
+ value: caption
131
+ });
132
+ }
133
+ if (caption.length > MAX_CAPTION_LENGTH) {
134
+ throw new CameraError(LocalizationManager.getString('validationCaptionTooLong', MAX_CAPTION_LENGTH), ERROR_CODES.INVALID_PARAMETER, {
135
+ parameter: 'caption',
136
+ value: caption,
137
+ maxLength: MAX_CAPTION_LENGTH
138
+ });
139
+ }
140
+ }
141
+
142
+ /**
143
+ * Validate timer delay
144
+ */
145
+ export function validateTimerDelay(delaySeconds) {
146
+ if (isNaN(delaySeconds) || !isFinite(delaySeconds)) {
147
+ throw new CameraError(LocalizationManager.getString('validationDelayMustBeNumber'), ERROR_CODES.INVALID_PARAMETER, {
148
+ parameter: 'delaySeconds',
149
+ value: delaySeconds
150
+ });
151
+ }
152
+ if (delaySeconds < 0) {
153
+ throw new CameraError(LocalizationManager.getString('validationDelayCannotBeNegative'), ERROR_CODES.INVALID_PARAMETER, {
154
+ parameter: 'delaySeconds',
155
+ value: delaySeconds
156
+ });
157
+ }
158
+ if (delaySeconds > 30) {
159
+ throw new CameraError(LocalizationManager.getString('validationDelayTooLong', 30), ERROR_CODES.INVALID_PARAMETER, {
160
+ parameter: 'delaySeconds',
161
+ value: delaySeconds,
162
+ maxAllowed: 30
163
+ });
164
+ }
165
+ }
166
+
167
+ /**
168
+ * Validate video trim parameters
169
+ */
170
+ export function validateVideoTrimParameters(startTime, endTime) {
171
+ if (isNaN(startTime) || !isFinite(startTime) || startTime < 0) {
172
+ throw new CameraError(LocalizationManager.getString('validationStartTimeInvalid'), ERROR_CODES.INVALID_PARAMETER, {
173
+ parameter: 'startTime',
174
+ value: startTime
175
+ });
176
+ }
177
+ if (isNaN(endTime) || !isFinite(endTime) || endTime < 0) {
178
+ throw new CameraError(LocalizationManager.getString('validationEndTimeInvalid'), ERROR_CODES.INVALID_PARAMETER, {
179
+ parameter: 'endTime',
180
+ value: endTime
181
+ });
182
+ }
183
+ if (startTime >= endTime) {
184
+ throw new CameraError(LocalizationManager.getString('validationStartBeforeEnd'), ERROR_CODES.INVALID_PARAMETER, {
185
+ startTime,
186
+ endTime
187
+ });
188
+ }
189
+ if (endTime - startTime > 600) {
190
+ // 10 minutes max
191
+ throw new CameraError(LocalizationManager.getString('validationTrimDurationTooLong', 600), ERROR_CODES.INVALID_PARAMETER, {
192
+ startTime,
193
+ endTime,
194
+ maxDuration: 600
195
+ });
196
+ }
197
+ }
198
+
199
+ /**
200
+ * Validate upload URL
201
+ */
202
+ export function validateUploadUrl(uploadUrl) {
203
+ if (!uploadUrl || typeof uploadUrl !== 'string') {
204
+ throw new CameraError(LocalizationManager.getString('validationUploadUrlRequired'), ERROR_CODES.INVALID_PARAMETER, {
205
+ parameter: 'uploadUrl',
206
+ value: uploadUrl
207
+ });
208
+ }
209
+ try {
210
+ // Basic URL validation
211
+ const parsedUrl = new URL(uploadUrl);
212
+ if (!parsedUrl.hostname) {
213
+ throw new Error('invalid URL');
214
+ }
215
+ } catch {
216
+ throw new CameraError(LocalizationManager.getString('validationUploadUrlInvalid'), ERROR_CODES.INVALID_PARAMETER, {
217
+ parameter: 'uploadUrl',
218
+ value: uploadUrl
219
+ });
220
+ }
221
+ }
222
+
223
+ /**
224
+ * Check file size limits
225
+ */
226
+ export function checkFileSize(uri, size, isVideo) {
227
+ const maxSize = isVideo ? MAX_VIDEO_SIZE : MAX_IMAGE_SIZE;
228
+ if (size > maxSize) {
229
+ const maxSizeMb = maxSize / (1024 * 1024);
230
+ const fileSizeMb = size / (1024 * 1024);
231
+ throw new CameraError(LocalizationManager.getString('validationFileTooLarge', isVideo ? LocalizationManager.getString('video', 'Video') : LocalizationManager.getString('image', 'Image'), fileSizeMb.toFixed(2), maxSizeMb), ERROR_CODES.FILE_TOO_LARGE, {
232
+ uri,
233
+ size,
234
+ maxSize,
235
+ isVideo
236
+ });
237
+ }
238
+ }
239
+
240
+ /**
241
+ * Validate album ID
242
+ */
243
+ export function validateAlbumId(albumId) {
244
+ if (!albumId || typeof albumId !== 'string') {
245
+ throw new CameraError(LocalizationManager.getString('validationAlbumIdRequired'), ERROR_CODES.INVALID_PARAMETER, {
246
+ parameter: 'albumId',
247
+ value: albumId
248
+ });
249
+ }
250
+ if (albumId.length > 100) {
251
+ throw new CameraError(LocalizationManager.getString('validationAlbumIdTooLong', 100), ERROR_CODES.INVALID_PARAMETER, {
252
+ parameter: 'albumId',
253
+ value: albumId
254
+ });
255
+ }
256
+ }
257
+
258
+ /**
259
+ * Validate rotation degrees
260
+ */
261
+ export function validateRotationDegrees(degrees) {
262
+ if (isNaN(degrees) || !isFinite(degrees)) {
263
+ throw new CameraError(LocalizationManager.getString('validationDegreesMustBeNumber'), ERROR_CODES.INVALID_PARAMETER, {
264
+ parameter: 'degrees',
265
+ value: degrees
266
+ });
267
+ }
268
+
269
+ // Normalize degrees to 0-360 range
270
+ const normalized = (degrees % 360 + 360) % 360;
271
+ if (normalized !== 0 && normalized !== 90 && normalized !== 180 && normalized !== 270) {
272
+ throw new CameraError(LocalizationManager.getString('validationDegreesInvalid'), ERROR_CODES.INVALID_PARAMETER, {
273
+ parameter: 'degrees',
274
+ value: degrees,
275
+ validOptions: [0, 90, 180, 270]
276
+ });
277
+ }
278
+ }
279
+
280
+ // Export constants for external use
281
+ export const VALIDATION_CONSTANTS = {
282
+ MAX_IMAGE_SIZE,
283
+ MAX_VIDEO_SIZE,
284
+ MAX_ALBUM_NAME_LENGTH,
285
+ MAX_CAPTION_LENGTH,
286
+ MAX_BATCH_SIZE
287
+ };
288
+ //# sourceMappingURL=validation.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":["CameraError","ERROR_CODES","validateUri","LocalizationManager","MAX_IMAGE_SIZE","MAX_VIDEO_SIZE","MAX_ALBUM_NAME_LENGTH","MAX_CAPTION_LENGTH","MAX_BATCH_SIZE","validateCameraPickerOptions","options","selectionLimit","undefined","Number","isInteger","getString","INVALID_PARAMETER","parameter","value","initialCamera","includes","mediaTypes","holdToRecordDelayMs","isFinite","minRecordDurationMs","validateUrisArray","uris","Array","isArray","length","maxAllowed","forEach","uri","index","INVALID_URI","validateAlbumName","albumName","maxLength","invalidChars","test","validateCaption","caption","validateTimerDelay","delaySeconds","isNaN","validateVideoTrimParameters","startTime","endTime","maxDuration","validateUploadUrl","uploadUrl","parsedUrl","URL","hostname","Error","checkFileSize","size","isVideo","maxSize","maxSizeMb","fileSizeMb","toFixed","FILE_TOO_LARGE","validateAlbumId","albumId","validateRotationDegrees","degrees","normalized","validOptions","VALIDATION_CONSTANTS"],"sourceRoot":"..\\..\\src","sources":["validation.ts"],"mappings":"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","ignoreList":[]}
@@ -0,0 +1 @@
1
+ {"type":"module"}
@@ -0,0 +1,27 @@
1
+ import { type FC, type ReactNode } from 'react';
2
+ interface AudioState {
3
+ isPlaying: boolean;
4
+ uri: string | null;
5
+ title: string;
6
+ position: number;
7
+ duration: number;
8
+ didComplete: boolean;
9
+ }
10
+ interface AudioPlayerContextType {
11
+ state: AudioState;
12
+ play: (uri: string, title: string) => Promise<void>;
13
+ pause: () => Promise<void>;
14
+ resume: () => Promise<void>;
15
+ seek: (ms: number) => Promise<void>;
16
+ stop: () => Promise<void>;
17
+ }
18
+ export declare const useGlobalAudioPlayer: () => AudioPlayerContextType;
19
+ export interface GlobalAudioPlayerProviderProps {
20
+ children: ReactNode;
21
+ }
22
+ export declare const GlobalAudioPlayerProvider: FC<GlobalAudioPlayerProviderProps>;
23
+ export declare const GlobalMiniAudioPlayer: FC<{
24
+ onExpandPlayer?: (uri: string) => void;
25
+ }>;
26
+ export {};
27
+ //# sourceMappingURL=AudioPlayerContext.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"AudioPlayerContext.d.ts","sourceRoot":"","sources":["../../../src/AudioPlayerContext.tsx"],"names":[],"mappings":"AAAA,OAAO,EAA2D,KAAK,EAAE,EAAE,KAAK,SAAS,EAAE,MAAM,OAAO,CAAC;AAQzG,UAAU,UAAU;IAClB,SAAS,EAAE,OAAO,CAAC;IACnB,GAAG,EAAE,MAAM,GAAG,IAAI,CAAC;IACnB,KAAK,EAAE,MAAM,CAAC;IACd,QAAQ,EAAE,MAAM,CAAC;IACjB,QAAQ,EAAE,MAAM,CAAC;IACjB,WAAW,EAAE,OAAO,CAAC;CACtB;AAED,UAAU,sBAAsB;IAC9B,KAAK,EAAE,UAAU,CAAC;IAClB,IAAI,EAAE,CAAC,GAAG,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,KAAK,OAAO,CAAC,IAAI,CAAC,CAAC;IACpD,KAAK,EAAE,MAAM,OAAO,CAAC,IAAI,CAAC,CAAC;IAC3B,MAAM,EAAE,MAAM,OAAO,CAAC,IAAI,CAAC,CAAC;IAC5B,IAAI,EAAE,CAAC,EAAE,EAAE,MAAM,KAAK,OAAO,CAAC,IAAI,CAAC,CAAC;IACpC,IAAI,EAAE,MAAM,OAAO,CAAC,IAAI,CAAC,CAAC;CAC3B;AAoBD,eAAO,MAAM,oBAAoB,8BAAuC,CAAC;AAEzE,MAAM,WAAW,8BAA8B;IAC7C,QAAQ,EAAE,SAAS,CAAC;CACrB;AAED,eAAO,MAAM,yBAAyB,EAAE,EAAE,CAAC,8BAA8B,CA6DxE,CAAC;AAEF,eAAO,MAAM,qBAAqB,EAAE,EAAE,CAAC;IAAE,cAAc,CAAC,EAAE,CAAC,GAAG,EAAE,MAAM,KAAK,IAAI,CAAA;CAAE,CAoDhF,CAAC"}
@@ -0,0 +1,13 @@
1
+ import React from 'react';
2
+ import type { CameraAsset } from './types';
3
+ interface CameraPreviewProps {
4
+ onCapture: (assets: CameraAsset[]) => void;
5
+ onClose: () => void;
6
+ /** Override aspect ratio; defaults to WhatsApp-like 720:1165 */
7
+ aspectRatio?: number;
8
+ /** Maximum number of items that can be selected. 0 or undefined = unlimited. */
9
+ selectionLimit?: number;
10
+ }
11
+ export declare const CameraPreview: React.FC<CameraPreviewProps>;
12
+ export {};
13
+ //# sourceMappingURL=CameraPreview.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"CameraPreview.d.ts","sourceRoot":"","sources":["../../../src/CameraPreview.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAyC,MAAM,OAAO,CAAC;AAW9D,OAAO,KAAK,EAAE,WAAW,EAAqB,MAAM,SAAS,CAAC;AAS9D,UAAU,kBAAkB;IAC1B,SAAS,EAAE,CAAC,MAAM,EAAE,WAAW,EAAE,KAAK,IAAI,CAAC;IAC3C,OAAO,EAAE,MAAM,IAAI,CAAC;IACpB,gEAAgE;IAChE,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,gFAAgF;IAChF,cAAc,CAAC,EAAE,MAAM,CAAC;CACzB;AAWD,eAAO,MAAM,aAAa,EAAE,KAAK,CAAC,EAAE,CAAC,kBAAkB,CA2MtD,CAAC"}
@@ -0,0 +1,33 @@
1
+ import type { FC } from 'react';
2
+ import { type ImageStyle, type StyleProp, type ViewProps } from 'react-native';
3
+ export interface NativeAnimatedImageViewProps extends Omit<ViewProps, 'style'> {
4
+ /** Image source uri (content://, file:// or a plain path). */
5
+ src?: string;
6
+ /**
7
+ * Whether this view is the currently-visible page in a paging viewer. Only the active page
8
+ * animates; deactivating stops the animation on its current frame so an off-screen or
9
+ * recycled cell never burns CPU animating something the user cannot see.
10
+ *
11
+ * Optional — defaults to true natively, so a single-image consumer that never sets it just
12
+ * animates.
13
+ */
14
+ active?: boolean;
15
+ /** How the frame is scaled into the view. Defaults to `contain`. */
16
+ resizeMode?: 'contain' | 'cover';
17
+ /**
18
+ * Typed as an image style rather than a view style: both the native view and the `<Image>`
19
+ * fallback render image content, and the fallback would not accept a plain ViewStyle.
20
+ */
21
+ style?: StyleProp<ImageStyle>;
22
+ }
23
+ /** True when native animated-image playback is available on this platform/build. */
24
+ export declare const isNativeAnimatedImageAvailable: () => boolean;
25
+ /**
26
+ * Renders an animated image (GIF), animating where the platform supports it.
27
+ *
28
+ * The fallback is a plain `<Image>` rather than an empty view: iOS animates GIFs through
29
+ * `<Image>` natively, and on any other target the still frame is the correct degraded result.
30
+ * Either way the underlying file is only ever read, never rewritten.
31
+ */
32
+ export declare const NativeAnimatedImageView: FC<NativeAnimatedImageViewProps>;
33
+ //# sourceMappingURL=NativeAnimatedImageView.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"NativeAnimatedImageView.d.ts","sourceRoot":"","sources":["../../../src/NativeAnimatedImageView.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,EAAE,EAAE,MAAM,OAAO,CAAC;AAChC,OAAO,EAEL,KAAK,UAAU,EACf,KAAK,SAAS,EACd,KAAK,SAAS,EACf,MAAM,cAAc,CAAC;AAMtB,MAAM,WAAW,4BAA6B,SAAQ,IAAI,CAAC,SAAS,EAAE,OAAO,CAAC;IAC5E,8DAA8D;IAC9D,GAAG,CAAC,EAAE,MAAM,CAAC;IACb;;;;;;;OAOG;IACH,MAAM,CAAC,EAAE,OAAO,CAAC;IACjB,oEAAoE;IACpE,UAAU,CAAC,EAAE,SAAS,GAAG,OAAO,CAAC;IACjC;;;OAGG;IACH,KAAK,CAAC,EAAE,SAAS,CAAC,UAAU,CAAC,CAAC;CAC/B;AAUD,oFAAoF;AACpF,eAAO,MAAM,8BAA8B,QAAO,OACX,CAAC;AAExC;;;;;;GAMG;AACH,eAAO,MAAM,uBAAuB,EAAE,EAAE,CAAC,4BAA4B,CAkBpE,CAAC"}
@@ -0,0 +1,12 @@
1
+ import type { FC } from 'react';
2
+ import { type ViewProps } from 'react-native';
3
+ export interface NativeAudioPlayerViewProps extends ViewProps {
4
+ /** Audio source uri (content:// or file://). */
5
+ src?: string;
6
+ /** False while the audio page is off-screen — force-pauses playback. */
7
+ active?: boolean;
8
+ /** Accent color for the play button and scrubber, e.g. "#4A56FF". */
9
+ tintColor?: string;
10
+ }
11
+ export declare const NativeAudioPlayerView: FC<NativeAudioPlayerViewProps>;
12
+ //# sourceMappingURL=NativeAudioPlayerView.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"NativeAudioPlayerView.d.ts","sourceRoot":"","sources":["../../../src/NativeAudioPlayerView.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAiB,EAAE,EAAE,MAAM,OAAO,CAAC;AAC/C,OAAO,EAIL,KAAK,SAAS,EACf,MAAM,cAAc,CAAC;AAEtB,MAAM,WAAW,0BAA2B,SAAQ,SAAS;IAC3D,gDAAgD;IAChD,GAAG,CAAC,EAAE,MAAM,CAAC;IACb,wEAAwE;IACxE,MAAM,CAAC,EAAE,OAAO,CAAC;IACjB,qEAAqE;IACrE,SAAS,CAAC,EAAE,MAAM,CAAC;CACpB;AAiBD,eAAO,MAAM,qBAAqB,EAAE,EAAE,CAAC,0BAA0B,CAMhE,CAAC"}
@@ -0,0 +1,12 @@
1
+ import type { FC } from 'react';
2
+ import { type ViewProps } from 'react-native';
3
+ export interface NativeBlurViewProps extends ViewProps {
4
+ /** When true, snapshots + blurs the content behind it; when false, clears. */
5
+ active?: boolean;
6
+ /** Box-blur radius applied to the down-sampled snapshot (1–25). */
7
+ blurRadius?: number;
8
+ /** Snapshot down-sample divisor — higher is softer and cheaper (1–16). */
9
+ downsampleFactor?: number;
10
+ }
11
+ export declare const NativeBlurView: FC<NativeBlurViewProps>;
12
+ //# sourceMappingURL=NativeBlurView.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"NativeBlurView.d.ts","sourceRoot":"","sources":["../../../src/NativeBlurView.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAiB,EAAE,EAAE,MAAM,OAAO,CAAC;AAC/C,OAAO,EAIL,KAAK,SAAS,EACf,MAAM,cAAc,CAAC;AAEtB,MAAM,WAAW,mBAAoB,SAAQ,SAAS;IACpD,8EAA8E;IAC9E,MAAM,CAAC,EAAE,OAAO,CAAC;IACjB,mEAAmE;IACnE,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,0EAA0E;IAC1E,gBAAgB,CAAC,EAAE,MAAM,CAAC;CAC3B;AAiBD,eAAO,MAAM,cAAc,EAAE,EAAE,CAAC,mBAAmB,CAOlD,CAAC"}
@@ -0,0 +1,167 @@
1
+ import { type TurboModule } from 'react-native';
2
+ export interface Spec extends TurboModule {
3
+ openCamera(): Promise<string>;
4
+ openCameraPicker(options: Object): Promise<Object>;
5
+ openDocumentPicker(options: Object): Promise<Object>;
6
+ openAudioPicker(options: Object): Promise<Object>;
7
+ /** Opens the system image/video picker via SAF (ACTION_OPEN_DOCUMENT). */
8
+ openImageVideoPicker(options: Object): Promise<Object>;
9
+ /**
10
+ * Opens an existing photo/video (e.g. one just picked from the gallery) on the camera's own
11
+ * preview/editor screen — the same screen, controller and tools a capture lands on. Resolves
12
+ * with the same `{ cancelled, assets }` shape as {@link openCameraPicker}.
13
+ */
14
+ openMediaEditor(options: Object): Promise<Object>;
15
+ /** Opens a document uri in an external viewer via ACTION_VIEW. Resolves true if launched. */
16
+ openDocument(uri: string, mimeType: string): Promise<boolean>;
17
+ startUpload(uris: string[], uploadUrl: string): Promise<void>;
18
+ getUploadState(): Promise<string>;
19
+ getNotificationHistory(): Promise<string>;
20
+ clearNotificationHistory(): Promise<void>;
21
+ /**
22
+ * Real device-memory facts (ActivityManager on Android): isLowRamDevice,
23
+ * memoryClassMb, totalRamMb, availableRamMb, isCurrentlyLowMemory, cpuCores.
24
+ */
25
+ getDeviceCapabilities(): Promise<Object>;
26
+ cropImage(uri: string, options: Object): Promise<string>;
27
+ rotateImage(uri: string, degrees: number): Promise<string>;
28
+ applyFilter(uri: string, filterType: string): Promise<string>;
29
+ createAlbum(albumName: string): Promise<boolean>;
30
+ moveMediaToAlbum(uris: string[], albumId: string): Promise<boolean>;
31
+ /**
32
+ * Deletes media files. On Android each file's bytes are securely overwritten
33
+ * with encrypted cryptographically secure random data before the file is
34
+ * unlinked, and cached copies / derived variants are swept too.
35
+ *
36
+ * Resolves `true` when at least one file was removed. It CANNOT express
37
+ * whether the overwrite succeeded — use {@link secureDeleteMedia} when the
38
+ * security verdict matters (e.g. before telling a user the media is gone).
39
+ */
40
+ deleteMedia(uris: string[]): Promise<boolean>;
41
+ /**
42
+ * Securely deletes ONE media item and reports exactly what was achieved.
43
+ *
44
+ * The file's exact size is measured, it is overwritten with encrypted CSPRNG
45
+ * garbage 2 MiB longer than that size (chunked, so nothing is held in RAM at
46
+ * file scale), the write is flushed to storage, and only then is the file
47
+ * unlinked — after which thumbnails, cached copies, derived variants and
48
+ * native metadata references are removed.
49
+ *
50
+ * `options` accepts `{ assetId, fileName, coverUri }`. Passing `assetId` is
51
+ * strongly preferred: compressed/exported/edited variants and video cover
52
+ * frames are named after it, and without it those copies of the same media
53
+ * are not found.
54
+ *
55
+ * Resolves `{ deleted, securelyOverwritten, fullySecure, originalBytes,
56
+ * overwrittenBytes, derivedFilesErased, derivedFilesFailed, error? }`. Only
57
+ * `fullySecure` justifies reporting a secure deletion to the user.
58
+ */
59
+ secureDeleteMedia(uri: string, options: Object): Promise<Object>;
60
+ deleteStoredMedia(mediaId: string): Promise<boolean>;
61
+ /**
62
+ * Share one or more media uris through the native Android share sheet using
63
+ * Intent.ACTION_SEND (single item) or Intent.ACTION_SEND_MULTIPLE (multiple
64
+ * items), with the correct MIME type. `file://` paths are wrapped in a
65
+ * FileProvider content uri so no raw file path leaks to another process.
66
+ * Resolves `true` when the share chooser was launched, `false` otherwise.
67
+ */
68
+ shareMedia(uris: string[], mimeType: string): Promise<boolean>;
69
+ setCameraFlash(mode: string): Promise<void>;
70
+ setCameraTimer(delaySeconds: number): Promise<void>;
71
+ enableCameraGrid(enabled: boolean): Promise<void>;
72
+ setMediaCaption(uri: string, caption: string): Promise<boolean>;
73
+ getMediaMetadata(uri: string): Promise<Object>;
74
+ /**
75
+ * The byte length of the exact clip the recording process finalized under `mediaId`, or 0 when
76
+ * none is remembered. Lets a preview quote the recorded size (matching the recording counter and
77
+ * the native editor's "Original" row) instead of the smaller background-cropped file on disk.
78
+ */
79
+ getRecordedOriginalSize(mediaId: string): Promise<number>;
80
+ trimVideo(uri: string, startTime: number, endTime: number): Promise<string>;
81
+ compressVideo(uri: string, qualityOrOption: string): Promise<string>;
82
+ compressImage(uri: string, qualityOrOption: string): Promise<string>;
83
+ scanQRCode(): Promise<string>;
84
+ enableFaceDetection(enabled: boolean): Promise<void>;
85
+ setFaceEffect(effectType: string): Promise<void>;
86
+ setCameraTheme(theme: string): Promise<void>;
87
+ /**
88
+ * Push the full serialized white-label config (theme + icons + animations +
89
+ * dimensions + notifications) to native. Stored in SharedPreferences and read
90
+ * by the camera Activity/editor on next launch.
91
+ */
92
+ setCameraConfig(configJson: string): Promise<void>;
93
+ initializeMediaStorage(): Promise<Object>;
94
+ publishMedia(mediaId: string, moveMode: boolean): Promise<Object>;
95
+ publishBatch(mediaIds: string[], moveMode: boolean): Promise<Object>;
96
+ getCachedMedia(): Promise<Object[]>;
97
+ getPublishedMedia(): Promise<Object[]>;
98
+ getStorageStats(): Promise<Object>;
99
+ cleanupOldCache(olderThanDays: number): Promise<Object>;
100
+ getFailedTransfers(): Promise<Object[]>;
101
+ retryFailedTransfers(): Promise<Object[]>;
102
+ playAudio(uri: string, title: string): Promise<void>;
103
+ pauseAudio(): Promise<void>;
104
+ resumeAudio(): Promise<void>;
105
+ seekAudio(positionMs: number): Promise<void>;
106
+ stopAudio(): Promise<void>;
107
+ /**
108
+ * Start recording audio via native MediaRecorder.
109
+ * Resolves with `{ filePath, mimeType }`.
110
+ *
111
+ * Options (all optional):
112
+ * - `outputFormat`: 'mpeg4' | 'aac_adts' | 'amr_nb' | 'amr_wb' | 'three_gpp'
113
+ * - `audioEncoder`: 'aac' | 'amr_nb' | 'amr_wb' | 'he_aac'
114
+ * - `audioSource`: 'mic' | 'camcorder' | 'voice_recognition' | 'voice_communication'
115
+ * - `bitRate`: number (default 128000)
116
+ * - `sampleRate`: number (default 44100)
117
+ * - `meteringIntervalMs`: number (0 = disabled; >0 fires `onAudioAmplitude` events)
118
+ */
119
+ startAudioRecording(options: Object): Promise<Object>;
120
+ /**
121
+ * Stop the active recording.
122
+ * Resolves with `{ filePath, durationMs, fileSizeBytes, mimeType }`.
123
+ */
124
+ stopAudioRecording(): Promise<Object>;
125
+ /**
126
+ * Cancel the active recording and delete the temporary file.
127
+ * Resolves with `{ deleted: boolean }`.
128
+ */
129
+ cancelAudioRecording(): Promise<Object>;
130
+ /**
131
+ * Stop the active recording, validate the file, move it to the Documents
132
+ * directory, and return the finalized audio asset.
133
+ *
134
+ * Resolves with an asset map: `{ id, uri, documentUri, type, fileName,
135
+ * mimeType, size, duration, dateTaken }`.
136
+ */
137
+ stopAndPublishAudioRecording(): Promise<Object>;
138
+ /**
139
+ * Pause the current recording (requires API 24+).
140
+ */
141
+ pauseAudioRecording(): Promise<void>;
142
+ /**
143
+ * Resume a paused recording (requires API 24+).
144
+ */
145
+ resumeAudioRecording(): Promise<void>;
146
+ /**
147
+ * Get the current recording state.
148
+ * Resolves with `{ state, filePath, durationMs, isPauseSupported }`.
149
+ */
150
+ getAudioRecordingState(): Promise<Object>;
151
+ /**
152
+ * Get the current max amplitude from the active MediaRecorder.
153
+ * Returns an integer (0 = silence, higher = louder).
154
+ */
155
+ getAudioAmplitude(): Promise<number>;
156
+ /**
157
+ * Pushes the host app's strings, text direction and active language to the
158
+ * native camera. `locale` is a BCP-47 tag ('fr', 'zh-Hans', 'ar') or '' when
159
+ * the host has not set one, in which case native formatting uses the device
160
+ * locale. Prefer `setCameraLocalization` / `setCameraLanguage` over calling
161
+ * this directly.
162
+ */
163
+ setLocalization(translations: Object, isRtl: boolean, locale: string): void;
164
+ }
165
+ declare const nativeModule: Spec;
166
+ export default nativeModule;
167
+ //# sourceMappingURL=NativeCustomCamera.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"NativeCustomCamera.d.ts","sourceRoot":"","sources":["../../../src/NativeCustomCamera.ts"],"names":[],"mappings":"AAAA,OAAO,EAAuB,KAAK,WAAW,EAAE,MAAM,cAAc,CAAC;AAqGrE,MAAM,WAAW,IAAK,SAAQ,WAAW;IACvC,UAAU,IAAI,OAAO,CAAC,MAAM,CAAC,CAAC;IAC9B,gBAAgB,CAAC,OAAO,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC,CAAC;IACnD,kBAAkB,CAAC,OAAO,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC,CAAC;IACrD,eAAe,CAAC,OAAO,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC,CAAC;IAClD,0EAA0E;IAC1E,oBAAoB,CAAC,OAAO,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC,CAAC;IACvD;;;;OAIG;IACH,eAAe,CAAC,OAAO,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC,CAAC;IAClD,6FAA6F;IAC7F,YAAY,CAAC,GAAG,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,GAAG,OAAO,CAAC,OAAO,CAAC,CAAC;IAC9D,WAAW,CAAC,IAAI,EAAE,MAAM,EAAE,EAAE,SAAS,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;IAC9D,cAAc,IAAI,OAAO,CAAC,MAAM,CAAC,CAAC;IAClC,sBAAsB,IAAI,OAAO,CAAC,MAAM,CAAC,CAAC;IAC1C,wBAAwB,IAAI,OAAO,CAAC,IAAI,CAAC,CAAC;IAE1C;;;OAGG;IACH,qBAAqB,IAAI,OAAO,CAAC,MAAM,CAAC,CAAC;IAGzC,SAAS,CAAC,GAAG,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC,CAAC;IACzD,WAAW,CAAC,GAAG,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC,CAAC;IAC3D,WAAW,CAAC,GAAG,EAAE,MAAM,EAAE,UAAU,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC,CAAC;IAG9D,WAAW,CAAC,SAAS,EAAE,MAAM,GAAG,OAAO,CAAC,OAAO,CAAC,CAAC;IACjD,gBAAgB,CAAC,IAAI,EAAE,MAAM,EAAE,EAAE,OAAO,EAAE,MAAM,GAAG,OAAO,CAAC,OAAO,CAAC,CAAC;IACpE;;;;;;;;OAQG;IACH,WAAW,CAAC,IAAI,EAAE,MAAM,EAAE,GAAG,OAAO,CAAC,OAAO,CAAC,CAAC;IAC9C;;;;;;;;;;;;;;;;;OAiBG;IACH,iBAAiB,CAAC,GAAG,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC,CAAC;IACjE,iBAAiB,CAAC,OAAO,EAAE,MAAM,GAAG,OAAO,CAAC,OAAO,CAAC,CAAC;IACrD;;;;;;OAMG;IACH,UAAU,CAAC,IAAI,EAAE,MAAM,EAAE,EAAE,QAAQ,EAAE,MAAM,GAAG,OAAO,CAAC,OAAO,CAAC,CAAC;IAG/D,cAAc,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;IAC5C,cAAc,CAAC,YAAY,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;IACpD,gBAAgB,CAAC,OAAO,EAAE,OAAO,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;IAGlD,eAAe,CAAC,GAAG,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,GAAG,OAAO,CAAC,OAAO,CAAC,CAAC;IAChE,gBAAgB,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC,CAAC;IAC/C;;;;OAIG;IACH,uBAAuB,CAAC,OAAO,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC,CAAC;IAG1D,SAAS,CAAC,GAAG,EAAE,MAAM,EAAE,SAAS,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC,CAAC;IAC5E,aAAa,CAAC,GAAG,EAAE,MAAM,EAAE,eAAe,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC,CAAC;IAGrE,aAAa,CAAC,GAAG,EAAE,MAAM,EAAE,eAAe,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC,CAAC;IAGrE,UAAU,IAAI,OAAO,CAAC,MAAM,CAAC,CAAC;IAG9B,mBAAmB,CAAC,OAAO,EAAE,OAAO,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;IACrD,aAAa,CAAC,UAAU,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;IAGjD,cAAc,CAAC,KAAK,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;IAE7C;;;;OAIG;IACH,eAAe,CAAC,UAAU,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;IAGnD,sBAAsB,IAAI,OAAO,CAAC,MAAM,CAAC,CAAC;IAC1C,YAAY,CAAC,OAAO,EAAE,MAAM,EAAE,QAAQ,EAAE,OAAO,GAAG,OAAO,CAAC,MAAM,CAAC,CAAC;IAClE,YAAY,CAAC,QAAQ,EAAE,MAAM,EAAE,EAAE,QAAQ,EAAE,OAAO,GAAG,OAAO,CAAC,MAAM,CAAC,CAAC;IACrE,cAAc,IAAI,OAAO,CAAC,MAAM,EAAE,CAAC,CAAC;IACpC,iBAAiB,IAAI,OAAO,CAAC,MAAM,EAAE,CAAC,CAAC;IACvC,eAAe,IAAI,OAAO,CAAC,MAAM,CAAC,CAAC;IACnC,eAAe,CAAC,aAAa,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC,CAAC;IACxD,kBAAkB,IAAI,OAAO,CAAC,MAAM,EAAE,CAAC,CAAC;IACxC,oBAAoB,IAAI,OAAO,CAAC,MAAM,EAAE,CAAC,CAAC;IAG1C,SAAS,CAAC,GAAG,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;IACrD,UAAU,IAAI,OAAO,CAAC,IAAI,CAAC,CAAC;IAC5B,WAAW,IAAI,OAAO,CAAC,IAAI,CAAC,CAAC;IAC7B,SAAS,CAAC,UAAU,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;IAC7C,SAAS,IAAI,OAAO,CAAC,IAAI,CAAC,CAAC;IAI3B;;;;;;;;;;;OAWG;IACH,mBAAmB,CAAC,OAAO,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC,CAAC;IAEtD;;;OAGG;IACH,kBAAkB,IAAI,OAAO,CAAC,MAAM,CAAC,CAAC;IAEtC;;;OAGG;IACH,oBAAoB,IAAI,OAAO,CAAC,MAAM,CAAC,CAAC;IAExC;;;;;;OAMG;IACH,4BAA4B,IAAI,OAAO,CAAC,MAAM,CAAC,CAAC;IAEhD;;OAEG;IACH,mBAAmB,IAAI,OAAO,CAAC,IAAI,CAAC,CAAC;IAErC;;OAEG;IACH,oBAAoB,IAAI,OAAO,CAAC,IAAI,CAAC,CAAC;IAEtC;;;OAGG;IACH,sBAAsB,IAAI,OAAO,CAAC,MAAM,CAAC,CAAC;IAE1C;;;OAGG;IACH,iBAAiB,IAAI,OAAO,CAAC,MAAM,CAAC,CAAC;IAGrC;;;;;;OAMG;IACH,eAAe,CAAC,YAAY,EAAE,MAAM,EAAE,KAAK,EAAE,OAAO,EAAE,MAAM,EAAE,MAAM,GAAG,IAAI,CAAC;CAC7E;AAED,QAAA,MAAM,YAAY,MACmD,CAAC;AAEtE,eAAe,YAAY,CAAC"}
@@ -0,0 +1,47 @@
1
+ declare const CustomCamera: {
2
+ openCamera(): Promise<string>;
3
+ openCameraPicker(_options: Object): Promise<Object>;
4
+ openDocumentPicker(_options: Object): Promise<Object>;
5
+ openAudioPicker(_options: Object): Promise<Object>;
6
+ openImageVideoPicker(_options: Object): Promise<Object>;
7
+ openMediaEditor(_options: Object): Promise<Object>;
8
+ openDocument(_uri: string, _mimeType: string): Promise<boolean>;
9
+ startUpload(_uris: string[], _uploadUrl: string): Promise<void>;
10
+ getUploadState(): Promise<string>;
11
+ getNotificationHistory(): Promise<string>;
12
+ clearNotificationHistory(): Promise<void>;
13
+ getDeviceCapabilities(): Promise<Object>;
14
+ cropImage(_uri: string, _options: Object): Promise<string>;
15
+ rotateImage(_uri: string, _degrees: number): Promise<string>;
16
+ applyFilter(_uri: string, _filterType: string): Promise<string>;
17
+ createAlbum(_albumName: string): Promise<boolean>;
18
+ moveMediaToAlbum(_uris: string[], _albumId: string): Promise<boolean>;
19
+ deleteMedia(_uris: string[]): Promise<boolean>;
20
+ secureDeleteMedia(_uri: string, _options: Object): Promise<Object>;
21
+ shareMedia(_uris: string[], _mimeType: string): Promise<boolean>;
22
+ setCameraFlash(_mode: string): Promise<void>;
23
+ setCameraTimer(_delaySeconds: number): Promise<void>;
24
+ enableCameraGrid(_enabled: boolean): Promise<void>;
25
+ setMediaCaption(_uri: string, _caption: string): Promise<boolean>;
26
+ getMediaMetadata(_uri: string): Promise<Object>;
27
+ getRecordedOriginalSize(_mediaId: string): Promise<number>;
28
+ trimVideo(_uri: string, _startTime: number, _endTime: number): Promise<string>;
29
+ compressVideo(uri: string, _qualityOrOption: string): Promise<string>;
30
+ compressImage(uri: string, _qualityOrOption: string): Promise<string>;
31
+ scanQRCode(): Promise<string>;
32
+ enableFaceDetection(_enabled: boolean): Promise<void>;
33
+ setFaceEffect(_effectType: string): Promise<void>;
34
+ setCameraTheme(_theme: string): Promise<void>;
35
+ setCameraConfig(_configJson: string): Promise<void>;
36
+ setLocalization(_translations: Object, _isRtl: boolean, _locale: string): void;
37
+ startAudioRecording(_options: Object): Promise<Object>;
38
+ stopAudioRecording(): Promise<Object>;
39
+ cancelAudioRecording(): Promise<Object>;
40
+ stopAndPublishAudioRecording(): Promise<Object>;
41
+ pauseAudioRecording(): Promise<void>;
42
+ resumeAudioRecording(): Promise<void>;
43
+ getAudioRecordingState(): Promise<Object>;
44
+ getAudioAmplitude(): Promise<number>;
45
+ };
46
+ export default CustomCamera;
47
+ //# sourceMappingURL=NativeCustomCamera.web.d.ts.map