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 @@
1
+ {"version":3,"names":["NativeModules","CustomCamera","MediaStorageManager","initialized","initialize","success","result","initializeMediaStorage","error","console","Error","publishMedia","mediaId","options","moveMode","sourceLocation","targetLocation","sourceUri","targetUri","fileHash","movedAt","Date","now","code","message","undefined","publishBatch","mediaIds","totalCount","successCount","failureCount","results","map","id","getCachedMedia","item","fileName","uri","cachePath","type","fileType","size","fileSize","width","height","duration","dateTaken","cacheCreatedAt","storageLocation","storageStatus","cacheLastModified","isEdited","getPublishedMedia","documentUri","publishedAt","getStorageStats","stats","cacheUsedMB","documentUsedMB","totalAvailableMB","cachedItemsCount","publishedItemsCount","duplicateItemsCount","oldestCacheItemAge","newestCacheItemAge","cleanupOldCache","olderThanDays","filesRemoved","spaceFreedMB","erroredFiles","timestamp","deleteMedia","deleteStoredMedia","getFailedTransfers","retryFailedTransfers","getCacheSizeMB","isCacheAlmostFull","threshold","percentageUsed","requestCleanupIfNeeded","maxCacheMB","cacheSize","daysOld","Math","ceil","max","getStorageSummary","percentageFull","totalCached","totalPublished","cacheUsageMB","round","cachePercentageFull","needsCleanup","duplicatesCount","instance","getMediaStorageManager","manager","publishCachedMedia","getCacheInfo","cached","Promise","all","items","length","sizeMB","cleanupExpiredCache"],"sourceRoot":"..\\..\\src","sources":["storage.ts"],"mappings":"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","ignoreList":[]}
@@ -0,0 +1,390 @@
1
+ "use strict";
2
+
3
+ import { createContext, useContext, useEffect, useMemo, useState } from 'react';
4
+
5
+ /**
6
+ * Recursively-optional view of a theme object.
7
+ *
8
+ * The presets below, and every override a host passes in, only name the handful
9
+ * of values they actually change — nested sections included. A plain
10
+ * `Partial<CameraThemeConfig>` is shallow, so it would demand a *complete*
11
+ * `components` / `typography` object as soon as either is mentioned at all.
12
+ * [mergeDeep] merges section by section, so this is the type that describes what
13
+ * it really accepts. Functions and arrays are left intact (replaced wholesale
14
+ * rather than merged), matching [mergeDeep]'s runtime behaviour.
15
+ */
16
+ import { jsx as _jsx } from "react/jsx-runtime";
17
+ const createShadow = (color, opacity, radius, offsetHeight) => ({
18
+ color,
19
+ opacity,
20
+ radius,
21
+ offset: {
22
+ width: 0,
23
+ height: offsetHeight
24
+ }
25
+ });
26
+ const createPalette = () => ({
27
+ background: '#000000',
28
+ surface: '#111827',
29
+ surfaceMuted: '#1F2937',
30
+ surfaceElevated: '#FFFFFF',
31
+ primary: '#4A56FF',
32
+ primaryMuted: 'rgba(74, 86, 255, 0.16)',
33
+ primaryContrast: '#FFFFFF',
34
+ text: '#FFFFFF',
35
+ textMuted: '#94A3B8',
36
+ textSecondary: '#CBD5E1',
37
+ border: 'rgba(255,255,255,0.12)',
38
+ borderStrong: 'rgba(255,255,255,0.2)',
39
+ overlay: 'rgba(0, 0, 0, 0.45)',
40
+ overlayStrong: 'rgba(0, 0, 0, 0.68)',
41
+ accent: '#4A56FF',
42
+ success: '#34D399',
43
+ error: '#FF5B5B',
44
+ warning: '#FBBF24'
45
+ });
46
+ const createTypography = () => ({
47
+ fontFamily: 'System',
48
+ headingSize: 18,
49
+ bodySize: 16,
50
+ captionSize: 13,
51
+ buttonSize: 14,
52
+ fontWeights: {
53
+ regular: '400',
54
+ medium: '500',
55
+ semibold: '600',
56
+ bold: '700'
57
+ }
58
+ });
59
+ const createSpacing = () => ({
60
+ xs: 4,
61
+ sm: 8,
62
+ md: 12,
63
+ lg: 16,
64
+ xl: 20,
65
+ xxl: 24
66
+ });
67
+ const createBorderRadius = () => ({
68
+ sm: 6,
69
+ md: 12,
70
+ lg: 16,
71
+ xl: 20,
72
+ pill: 999,
73
+ circle: 999
74
+ });
75
+ const createComponents = () => ({
76
+ cameraPreview: {
77
+ background: '#111111',
78
+ overlay: 'rgba(0, 0, 0, 0.3)',
79
+ placeholderText: '#FFFFFF',
80
+ loadingText: '#FFFFFF',
81
+ controlButtonBackground: 'rgba(0, 0, 0, 0.5)',
82
+ controlButtonText: '#FFFFFF',
83
+ captureButtonBackground: '#FFFFFF',
84
+ captureButtonInnerBorder: '#333333',
85
+ closeButtonBackground: 'rgba(0, 0, 0, 0.5)',
86
+ closeButtonText: '#FFFFFF',
87
+ modeIndicatorBackground: 'rgba(0, 0, 0, 0.6)',
88
+ modeIndicatorText: '#FFFFFF',
89
+ controlButtonSize: 50,
90
+ controlIconSize: 22,
91
+ controlButtonTextSize: 24,
92
+ captureButtonSize: 70,
93
+ captureButtonInnerSize: 60,
94
+ captureButtonBorderWidth: 2,
95
+ closeButtonSize: 40,
96
+ closeIconSize: 20,
97
+ closeButtonTextSize: 24,
98
+ modeIndicatorRadius: 15,
99
+ modeIndicatorPaddingVertical: 6,
100
+ modeIndicatorPaddingHorizontal: 12,
101
+ modeIndicatorIconSize: 18,
102
+ modeIndicatorTextSize: 20,
103
+ controlsBottomInset: 20,
104
+ controlsPaddingHorizontal: 30,
105
+ topInset: 20,
106
+ sideInset: 20,
107
+ placeholderTextSize: 18,
108
+ loadingTextSize: 16,
109
+ disabledOpacity: 0.7
110
+ },
111
+ responsivePreviewContainer: {
112
+ background: '#000000',
113
+ borderRadius: 18,
114
+ widthRatio: 0.96,
115
+ maxWidth: 720,
116
+ maxHeightRatio: 0.92
117
+ },
118
+ audioPlayer: {
119
+ containerBackground: '#1E293B',
120
+ borderColor: 'rgba(255,255,255,0.08)',
121
+ borderRadius: 16,
122
+ shadow: createShadow('#000000', 0.3, 8, 4),
123
+ progressTrackBackground: 'rgba(255,255,255,0.1)',
124
+ progressFillBackground: '#4A56FF',
125
+ iconButtonBackground: 'rgba(255,255,255,0.1)',
126
+ iconColor: '#FFFFFF',
127
+ titleColor: '#E2E8F0',
128
+ textColor: '#FFFFFF',
129
+ containerBorderWidth: 1,
130
+ containerElevation: 8,
131
+ progressTrackHeight: 4,
132
+ contentPaddingHorizontal: 12,
133
+ contentPaddingVertical: 12,
134
+ iconButtonSize: 40,
135
+ iconButtonRadius: 20,
136
+ playIconSize: 18,
137
+ closeIconSize: 16,
138
+ titleFontSize: 15,
139
+ titleFontWeight: '600',
140
+ titleMarginHorizontal: 12,
141
+ iconTextSize: 16,
142
+ iconTextWeight: '800',
143
+ activeOpacity: 0.9
144
+ }
145
+ });
146
+ const baseThemeConfig = {
147
+ name: 'default',
148
+ colors: createPalette(),
149
+ typography: createTypography(),
150
+ spacing: createSpacing(),
151
+ borderRadius: createBorderRadius(),
152
+ shadows: {
153
+ small: createShadow('#000000', 0.2, 4, 2),
154
+ medium: createShadow('#000000', 0.3, 8, 4)
155
+ },
156
+ components: createComponents()
157
+ };
158
+ const presetOverrides = {
159
+ default: {},
160
+ dark: {
161
+ colors: {
162
+ background: '#050816',
163
+ surface: '#111827',
164
+ surfaceMuted: '#1F2937',
165
+ surfaceElevated: '#FFFFFF',
166
+ primary: '#4A56FF',
167
+ primaryMuted: 'rgba(74, 86, 255, 0.16)',
168
+ primaryContrast: '#FFFFFF',
169
+ text: '#FFFFFF',
170
+ textMuted: '#94A3B8',
171
+ textSecondary: '#CBD5E1',
172
+ border: 'rgba(255,255,255,0.12)',
173
+ borderStrong: 'rgba(255,255,255,0.2)',
174
+ overlay: 'rgba(0, 0, 0, 0.45)',
175
+ overlayStrong: 'rgba(0, 0, 0, 0.68)',
176
+ accent: '#4A56FF',
177
+ success: '#34D399',
178
+ error: '#FF5B5B',
179
+ warning: '#FBBF24'
180
+ }
181
+ },
182
+ light: {
183
+ colors: {
184
+ background: '#F8FAFC',
185
+ surface: '#FFFFFF',
186
+ surfaceMuted: '#F1F5F9',
187
+ surfaceElevated: '#FFFFFF',
188
+ primary: '#4A56FF',
189
+ primaryMuted: 'rgba(74, 86, 255, 0.16)',
190
+ primaryContrast: '#FFFFFF',
191
+ text: '#0F172A',
192
+ textMuted: '#64748B',
193
+ textSecondary: '#334155',
194
+ border: 'rgba(15, 23, 42, 0.1)',
195
+ borderStrong: 'rgba(15, 23, 42, 0.16)',
196
+ overlay: 'rgba(15, 23, 42, 0.32)',
197
+ overlayStrong: 'rgba(15, 23, 42, 0.54)',
198
+ accent: '#4A56FF',
199
+ success: '#16A34A',
200
+ error: '#DC2626',
201
+ warning: '#D97706'
202
+ },
203
+ components: {
204
+ cameraPreview: {
205
+ background: '#F8FAFC',
206
+ overlay: 'rgba(15, 23, 42, 0.2)',
207
+ placeholderText: '#0F172A',
208
+ loadingText: '#0F172A',
209
+ controlButtonBackground: 'rgba(15, 23, 42, 0.2)',
210
+ controlButtonText: '#0F172A',
211
+ captureButtonBackground: '#FFFFFF',
212
+ captureButtonInnerBorder: '#CBD5E1',
213
+ closeButtonBackground: 'rgba(15, 23, 42, 0.2)',
214
+ closeButtonText: '#0F172A',
215
+ modeIndicatorBackground: 'rgba(15, 23, 42, 0.16)',
216
+ modeIndicatorText: '#0F172A'
217
+ },
218
+ responsivePreviewContainer: {
219
+ background: '#F8FAFC',
220
+ borderRadius: 18
221
+ },
222
+ audioPlayer: {
223
+ containerBackground: '#FFFFFF',
224
+ borderColor: 'rgba(15, 23, 42, 0.08)',
225
+ borderRadius: 16,
226
+ shadow: createShadow('#CBD5E1', 0.2, 8, 4),
227
+ progressTrackBackground: 'rgba(15, 23, 42, 0.1)',
228
+ progressFillBackground: '#4A56FF',
229
+ iconButtonBackground: 'rgba(15, 23, 42, 0.08)',
230
+ iconColor: '#0F172A',
231
+ titleColor: '#334155',
232
+ textColor: '#0F172A'
233
+ }
234
+ }
235
+ },
236
+ minimal: {
237
+ colors: {
238
+ background: '#000000',
239
+ surface: '#111111',
240
+ surfaceMuted: '#1A1A1A',
241
+ surfaceElevated: '#1F1F1F',
242
+ primary: '#FFFFFF',
243
+ primaryMuted: 'rgba(255, 255, 255, 0.16)',
244
+ primaryContrast: '#000000',
245
+ text: '#FFFFFF',
246
+ textMuted: '#A1A1AA',
247
+ textSecondary: '#D4D4D8',
248
+ border: 'rgba(255,255,255,0.12)',
249
+ borderStrong: 'rgba(255,255,255,0.24)',
250
+ overlay: 'rgba(0, 0, 0, 0.6)',
251
+ overlayStrong: 'rgba(0, 0, 0, 0.8)',
252
+ accent: '#FFFFFF',
253
+ success: '#FFFFFF',
254
+ error: '#FFFFFF',
255
+ warning: '#FFFFFF'
256
+ },
257
+ typography: {
258
+ fontFamily: 'System',
259
+ headingSize: 16,
260
+ bodySize: 14,
261
+ captionSize: 12,
262
+ buttonSize: 13
263
+ },
264
+ components: {
265
+ cameraPreview: {
266
+ background: '#000000',
267
+ overlay: 'rgba(255,255,255,0.08)',
268
+ placeholderText: '#FFFFFF',
269
+ loadingText: '#FFFFFF',
270
+ controlButtonBackground: 'rgba(255,255,255,0.12)',
271
+ controlButtonText: '#FFFFFF',
272
+ captureButtonBackground: '#FFFFFF',
273
+ captureButtonInnerBorder: '#FFFFFF',
274
+ closeButtonBackground: 'rgba(255,255,255,0.12)',
275
+ closeButtonText: '#FFFFFF',
276
+ modeIndicatorBackground: 'rgba(255,255,255,0.12)',
277
+ modeIndicatorText: '#FFFFFF'
278
+ },
279
+ responsivePreviewContainer: {
280
+ background: '#000000',
281
+ borderRadius: 16
282
+ },
283
+ audioPlayer: {
284
+ containerBackground: '#111111',
285
+ borderColor: 'rgba(255,255,255,0.12)',
286
+ borderRadius: 12,
287
+ shadow: createShadow('#000000', 0.2, 4, 2),
288
+ progressTrackBackground: 'rgba(255,255,255,0.12)',
289
+ progressFillBackground: '#FFFFFF',
290
+ iconButtonBackground: 'rgba(255,255,255,0.12)',
291
+ iconColor: '#FFFFFF',
292
+ titleColor: '#FFFFFF',
293
+ textColor: '#FFFFFF'
294
+ }
295
+ }
296
+ }
297
+ };
298
+ function mergeDeep(base, override) {
299
+ if (!override) {
300
+ return base;
301
+ }
302
+ const merged = {
303
+ ...base
304
+ };
305
+ Object.entries(override).forEach(([key, value]) => {
306
+ const existing = merged[key];
307
+ if (value !== null && typeof value === 'object' && !Array.isArray(value) && existing !== null && typeof existing === 'object' && !Array.isArray(existing)) {
308
+ merged[key] = mergeDeep(existing, value);
309
+ } else {
310
+ merged[key] = value;
311
+ }
312
+ });
313
+ return merged;
314
+ }
315
+ export const DEFAULT_CAMERA_THEME_CONFIG = (() => {
316
+ const preset = presetOverrides.default;
317
+ return mergeDeep(baseThemeConfig, {
318
+ ...preset,
319
+ name: 'default'
320
+ });
321
+ })();
322
+ export function createCameraTheme(overrides = {}) {
323
+ return mergeDeep(DEFAULT_CAMERA_THEME_CONFIG, overrides);
324
+ }
325
+ export function resolveCameraTheme(theme) {
326
+ if (!theme) {
327
+ return getCurrentCameraTheme();
328
+ }
329
+ if (typeof theme === 'string') {
330
+ const preset = presetOverrides[theme] ?? presetOverrides.default;
331
+ return mergeDeep(DEFAULT_CAMERA_THEME_CONFIG, {
332
+ ...preset,
333
+ name: theme
334
+ });
335
+ }
336
+ return mergeDeep(DEFAULT_CAMERA_THEME_CONFIG, theme);
337
+ }
338
+ const CameraThemeContext = /*#__PURE__*/createContext(undefined);
339
+ let currentCameraTheme = DEFAULT_CAMERA_THEME_CONFIG;
340
+ const themeListeners = new Set();
341
+ export function setGlobalCameraTheme(theme) {
342
+ const resolved = resolveCameraTheme(theme);
343
+ currentCameraTheme = resolved;
344
+ themeListeners.forEach(listener => listener(resolved));
345
+ return resolved;
346
+ }
347
+ export function getCurrentCameraTheme() {
348
+ return currentCameraTheme;
349
+ }
350
+ export function subscribeToCameraTheme(listener) {
351
+ themeListeners.add(listener);
352
+ return () => {
353
+ themeListeners.delete(listener);
354
+ };
355
+ }
356
+ export const CameraThemeProvider = ({
357
+ children,
358
+ theme
359
+ }) => {
360
+ const [activeTheme, setActiveTheme] = useState(() => resolveCameraTheme(theme ?? getCurrentCameraTheme()));
361
+ useEffect(() => {
362
+ if (theme !== undefined) {
363
+ const resolved = setGlobalCameraTheme(theme);
364
+ setActiveTheme(resolved);
365
+ }
366
+ }, [theme]);
367
+ useEffect(() => {
368
+ const unsubscribe = subscribeToCameraTheme(nextTheme => {
369
+ setActiveTheme(nextTheme);
370
+ });
371
+ return unsubscribe;
372
+ }, []);
373
+ const value = useMemo(() => activeTheme, [activeTheme]);
374
+ return /*#__PURE__*/_jsx(CameraThemeContext.Provider, {
375
+ value: value,
376
+ children: children
377
+ });
378
+ };
379
+ export function useCameraTheme() {
380
+ const contextTheme = useContext(CameraThemeContext);
381
+ const [theme, setTheme] = useState(getCurrentCameraTheme());
382
+ useEffect(() => {
383
+ const unsubscribe = subscribeToCameraTheme(nextTheme => {
384
+ setTheme(nextTheme);
385
+ });
386
+ return unsubscribe;
387
+ }, []);
388
+ return contextTheme ?? theme;
389
+ }
390
+ //# sourceMappingURL=theme.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":["createContext","useContext","useEffect","useMemo","useState","jsx","_jsx","createShadow","color","opacity","radius","offsetHeight","offset","width","height","createPalette","background","surface","surfaceMuted","surfaceElevated","primary","primaryMuted","primaryContrast","text","textMuted","textSecondary","border","borderStrong","overlay","overlayStrong","accent","success","error","warning","createTypography","fontFamily","headingSize","bodySize","captionSize","buttonSize","fontWeights","regular","medium","semibold","bold","createSpacing","xs","sm","md","lg","xl","xxl","createBorderRadius","pill","circle","createComponents","cameraPreview","placeholderText","loadingText","controlButtonBackground","controlButtonText","captureButtonBackground","captureButtonInnerBorder","closeButtonBackground","closeButtonText","modeIndicatorBackground","modeIndicatorText","controlButtonSize","controlIconSize","controlButtonTextSize","captureButtonSize","captureButtonInnerSize","captureButtonBorderWidth","closeButtonSize","closeIconSize","closeButtonTextSize","modeIndicatorRadius","modeIndicatorPaddingVertical","modeIndicatorPaddingHorizontal","modeIndicatorIconSize","modeIndicatorTextSize","controlsBottomInset","controlsPaddingHorizontal","topInset","sideInset","placeholderTextSize","loadingTextSize","disabledOpacity","responsivePreviewContainer","borderRadius","widthRatio","maxWidth","maxHeightRatio","audioPlayer","containerBackground","borderColor","shadow","progressTrackBackground","progressFillBackground","iconButtonBackground","iconColor","titleColor","textColor","containerBorderWidth","containerElevation","progressTrackHeight","contentPaddingHorizontal","contentPaddingVertical","iconButtonSize","iconButtonRadius","playIconSize","titleFontSize","titleFontWeight","titleMarginHorizontal","iconTextSize","iconTextWeight","activeOpacity","baseThemeConfig","name","colors","typography","spacing","shadows","small","components","presetOverrides","default","dark","light","minimal","mergeDeep","base","override","merged","Object","entries","forEach","key","value","existing","Array","isArray","DEFAULT_CAMERA_THEME_CONFIG","preset","createCameraTheme","overrides","resolveCameraTheme","theme","getCurrentCameraTheme","CameraThemeContext","undefined","currentCameraTheme","themeListeners","Set","setGlobalCameraTheme","resolved","listener","subscribeToCameraTheme","add","delete","CameraThemeProvider","children","activeTheme","setActiveTheme","unsubscribe","nextTheme","Provider","useCameraTheme","contextTheme","setTheme"],"sourceRoot":"..\\..\\src","sources":["theme.tsx"],"mappings":"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","ignoreList":[]}
@@ -0,0 +1,4 @@
1
+ "use strict";
2
+
3
+ export {};
4
+ //# sourceMappingURL=types.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":[],"sourceRoot":"..\\..\\src","sources":["types.ts"],"mappings":"","ignoreList":[]}
@@ -0,0 +1,115 @@
1
+ "use strict";
2
+
3
+ export const DEFAULT_FILTERS = ['none', 'grayscale', 'sepia', 'vintage', 'blur'];
4
+ export const DEFAULT_FACE_EFFECTS = ['none', 'dog', 'cat', 'glasses', 'hat'];
5
+ export const DEFAULT_THEMES = ['default', 'dark', 'light', 'minimal'];
6
+ export const DEFAULT_FLASH_MODES = ['off', 'on', 'auto', 'torch'];
7
+
8
+ /**
9
+ * Helper function to validate image crop options
10
+ */
11
+ export function validateCropOptions(options) {
12
+ if (options.width === 0 || options.width !== undefined && options.width < 0) {
13
+ return false;
14
+ }
15
+ if (options.height === 0 || options.height !== undefined && options.height < 0) {
16
+ return false;
17
+ }
18
+ if (options.x !== undefined && options.x < 0) return false;
19
+ if (options.y !== undefined && options.y < 0) return false;
20
+ return true;
21
+ }
22
+
23
+ /**
24
+ * Helper function to generate a unique album name
25
+ */
26
+ let albumNameCounter = 0;
27
+ export function generateAlbumName(baseName) {
28
+ const timestamp = new Date().getTime();
29
+ albumNameCounter += 1;
30
+ return `${baseName}_${timestamp}_${albumNameCounter}`;
31
+ }
32
+
33
+ /**
34
+ * Helper function to format video duration
35
+ */
36
+ export function formatVideoDuration(seconds) {
37
+ const mins = Math.floor(seconds / 60);
38
+ const secs = Math.floor(seconds % 60);
39
+ return `${mins}:${secs.toString().padStart(2, '0')}`;
40
+ }
41
+
42
+ /**
43
+ * Helper function to check if a URI is a video
44
+ */
45
+ export function isVideoUri(uri) {
46
+ return uri.toLowerCase().endsWith('.mp4') || uri.toLowerCase().endsWith('.mov') || uri.toLowerCase().endsWith('.avi');
47
+ }
48
+
49
+ /**
50
+ * Every still-image container the library handles end to end. Mirrors the native
51
+ * `ImageFormatSupport` registry — a format present in one and absent from the other is how an
52
+ * image ends up discovered but not rendered (or vice versa).
53
+ */
54
+ const IMAGE_EXTENSIONS = new Set(['jpg', 'jpeg', 'png', 'gif', 'webp', 'bmp', 'heic', 'heif', 'hif', 'avif', 'avifs']);
55
+
56
+ /**
57
+ * Helper function to check if a URI is an image
58
+ */
59
+ export function isImageUri(uri) {
60
+ // Strip any query string / fragment so `…/photo.avif?token=…` still matches.
61
+ const path = uri.split(/[?#]/)[0] ?? '';
62
+ const extension = path.split('.').pop()?.toLowerCase() ?? '';
63
+ return IMAGE_EXTENSIONS.has(extension);
64
+ }
65
+
66
+ /**
67
+ * Whether an asset is a GIF, judged by its declared MIME type first and its file name / uri
68
+ * extension second — so a file from a provider that reports no MIME type is still recognised.
69
+ *
70
+ * A declared, recognised `image/*` type is authoritative: an asset that says it is `image/jpeg`
71
+ * is not reclassified just because something in its path ends in `.gif`. Mirrors the native
72
+ * `GifSupport.isGif` precedence so the two sides never disagree about the same file.
73
+ */
74
+ export function isGifAsset(asset) {
75
+ const mime = asset.mimeType?.toLowerCase();
76
+ if (mime) {
77
+ if (mime === 'image/gif') return true;
78
+ if (mime.startsWith('image/')) return false;
79
+ }
80
+ const name = asset.fileName ?? asset.uri;
81
+ if (!name) return false;
82
+ // Strip any query string so `…/file.gif?token=…` still matches.
83
+ const path = name.split(/[?#]/)[0] ?? '';
84
+ return path.toLowerCase().endsWith('.gif');
85
+ }
86
+
87
+ /**
88
+ * Containers ReactNative's own `<Image>` cannot decode on Android. Fresco has no HEIF or AVIF
89
+ * decoder, so an `<Image>` pointed at one renders nothing at all — a blank tile, with no error.
90
+ */
91
+ const NATIVE_DECODE_ONLY_MIMES = new Set(['image/heic', 'image/heif', 'image/heic-sequence', 'image/heif-sequence', 'image/avif']);
92
+ const NATIVE_DECODE_ONLY_EXTENSIONS = new Set(['heic', 'heif', 'hif', 'avif', 'avifs']);
93
+
94
+ /**
95
+ * Whether this image must be rendered through the library's native image view instead of
96
+ * ReactNative's `<Image>`.
97
+ *
98
+ * HEIF and AVIF are decoded by the Android platform (API 28+ / API 31+ respectively) but NOT by
99
+ * Fresco, which is what backs `<Image>` on Android — so those assets silently render as empty
100
+ * space. `NativeAnimatedImageView` decodes through ImageDecoder/BitmapFactory and therefore shows
101
+ * them wherever the platform can. Same MIME-then-extension precedence as {@link isGifAsset}.
102
+ */
103
+ export function requiresNativeImageDecoder(asset) {
104
+ const mime = asset.mimeType?.toLowerCase().split(';')[0]?.trim();
105
+ if (mime) {
106
+ if (NATIVE_DECODE_ONLY_MIMES.has(mime)) return true;
107
+ if (mime.startsWith('image/')) return false;
108
+ }
109
+ const name = asset.fileName ?? asset.uri;
110
+ if (!name) return false;
111
+ const path = name.split(/[?#]/)[0] ?? '';
112
+ const extension = path.split('.').pop()?.toLowerCase() ?? '';
113
+ return NATIVE_DECODE_ONLY_EXTENSIONS.has(extension);
114
+ }
115
+ //# sourceMappingURL=utils.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":["DEFAULT_FILTERS","DEFAULT_FACE_EFFECTS","DEFAULT_THEMES","DEFAULT_FLASH_MODES","validateCropOptions","options","width","undefined","height","x","y","albumNameCounter","generateAlbumName","baseName","timestamp","Date","getTime","formatVideoDuration","seconds","mins","Math","floor","secs","toString","padStart","isVideoUri","uri","toLowerCase","endsWith","IMAGE_EXTENSIONS","Set","isImageUri","path","split","extension","pop","has","isGifAsset","asset","mime","mimeType","startsWith","name","fileName","NATIVE_DECODE_ONLY_MIMES","NATIVE_DECODE_ONLY_EXTENSIONS","requiresNativeImageDecoder","trim"],"sourceRoot":"..\\..\\src","sources":["utils.ts"],"mappings":"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","ignoreList":[]}