@unif/react-native-camera 1.2.6 → 2.0.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (407) hide show
  1. package/LICENSE +1 -1
  2. package/README.md +92 -22
  3. package/lib/module/camera/Camera.js +163 -285
  4. package/lib/module/camera/Camera.js.map +1 -1
  5. package/lib/module/camera/Container.js +209 -49
  6. package/lib/module/camera/Container.js.map +1 -1
  7. package/lib/module/camera/Error.js +23 -18
  8. package/lib/module/camera/Error.js.map +1 -1
  9. package/lib/module/camera/FocusIndicator.js +35 -41
  10. package/lib/module/camera/FocusIndicator.js.map +1 -1
  11. package/lib/module/camera/ModalView.js +28 -21
  12. package/lib/module/camera/ModalView.js.map +1 -1
  13. package/lib/module/camera/NoCamera.js +38 -14
  14. package/lib/module/camera/NoCamera.js.map +1 -1
  15. package/lib/module/camera/NoPermission.js +44 -38
  16. package/lib/module/camera/NoPermission.js.map +1 -1
  17. package/lib/module/camera/capturePhotoHelper.js +24 -0
  18. package/lib/module/camera/capturePhotoHelper.js.map +1 -0
  19. package/lib/module/camera/footer/Footer.js +83 -140
  20. package/lib/module/camera/footer/Footer.js.map +1 -1
  21. package/lib/module/camera/footer/index.js +3 -2
  22. package/lib/module/camera/footer/index.js.map +1 -1
  23. package/lib/module/camera/index.js +11 -13
  24. package/lib/module/camera/index.js.map +1 -1
  25. package/lib/module/camera/preview/PreView.js +36 -93
  26. package/lib/module/camera/preview/PreView.js.map +1 -1
  27. package/lib/module/camera/preview/PreViewContainer.js +28 -29
  28. package/lib/module/camera/preview/PreViewContainer.js.map +1 -1
  29. package/lib/module/camera/preview/PreviewFooter.js +30 -21
  30. package/lib/module/camera/preview/PreviewFooter.js.map +1 -1
  31. package/lib/module/camera/preview/SinglePre.js +28 -60
  32. package/lib/module/camera/preview/SinglePre.js.map +1 -1
  33. package/lib/module/camera/preview/index.js +6 -12
  34. package/lib/module/camera/preview/index.js.map +1 -1
  35. package/lib/module/camera/setup/SetUp.js +67 -189
  36. package/lib/module/camera/setup/SetUp.js.map +1 -1
  37. package/lib/module/camera/setup/index.js +3 -2
  38. package/lib/module/camera/setup/index.js.map +1 -1
  39. package/lib/module/components/Carousel/Carousel.js +33 -40
  40. package/lib/module/components/Carousel/Carousel.js.map +1 -1
  41. package/lib/module/components/Carousel/SlideItem.js +22 -70
  42. package/lib/module/components/Carousel/SlideItem.js.map +1 -1
  43. package/lib/module/components/Carousel/index.js +4 -11
  44. package/lib/module/components/Carousel/index.js.map +1 -1
  45. package/lib/module/components/Loading.js +15 -61
  46. package/lib/module/components/Loading.js.map +1 -1
  47. package/lib/module/components/PreviewThumbnail.js +36 -33
  48. package/lib/module/components/PreviewThumbnail.js.map +1 -1
  49. package/lib/module/components/index.js +5 -8
  50. package/lib/module/components/index.js.map +1 -1
  51. package/lib/module/hooks/index.js +5 -11
  52. package/lib/module/hooks/index.js.map +1 -1
  53. package/lib/module/hooks/useCamera.js +44 -0
  54. package/lib/module/hooks/useCamera.js.map +1 -0
  55. package/lib/module/hooks/useConfirm.js +13 -49
  56. package/lib/module/hooks/useConfirm.js.map +1 -1
  57. package/lib/module/hooks/useCreation.js +18 -0
  58. package/lib/module/hooks/useCreation.js.map +1 -0
  59. package/lib/module/index.js +4 -24
  60. package/lib/module/index.js.map +1 -1
  61. package/lib/module/package.json +1 -0
  62. package/lib/module/utils/depsAreSame.js +7 -4
  63. package/lib/module/utils/depsAreSame.js.map +1 -1
  64. package/lib/module/utils/index.js +6 -14
  65. package/lib/module/utils/index.js.map +1 -1
  66. package/lib/module/utils/interface.js +1 -21
  67. package/lib/module/utils/interface.js.map +1 -1
  68. package/lib/module/utils/px-to-dp.js +6 -10
  69. package/lib/module/utils/px-to-dp.js.map +1 -1
  70. package/lib/module/utils/util.js +16 -40
  71. package/lib/module/utils/util.js.map +1 -1
  72. package/lib/typescript/jest.setup.d.ts +1 -0
  73. package/lib/typescript/jest.setup.d.ts.map +1 -0
  74. package/lib/typescript/package.json +1 -0
  75. package/lib/typescript/src/camera/Camera.d.ts +18 -10
  76. package/lib/typescript/src/camera/Camera.d.ts.map +1 -1
  77. package/lib/typescript/src/camera/Container.d.ts +7 -5
  78. package/lib/typescript/src/camera/Container.d.ts.map +1 -1
  79. package/lib/typescript/src/camera/Error.d.ts +3 -7
  80. package/lib/typescript/src/camera/Error.d.ts.map +1 -1
  81. package/lib/typescript/src/camera/FocusIndicator.d.ts +7 -7
  82. package/lib/typescript/src/camera/FocusIndicator.d.ts.map +1 -1
  83. package/lib/typescript/src/camera/ModalView.d.ts +7 -4
  84. package/lib/typescript/src/camera/ModalView.d.ts.map +1 -1
  85. package/lib/typescript/src/camera/NoCamera.d.ts +5 -3
  86. package/lib/typescript/src/camera/NoCamera.d.ts.map +1 -1
  87. package/lib/typescript/src/camera/NoPermission.d.ts +6 -3
  88. package/lib/typescript/src/camera/NoPermission.d.ts.map +1 -1
  89. package/lib/typescript/src/camera/capturePhotoHelper.d.ts +16 -0
  90. package/lib/typescript/src/camera/capturePhotoHelper.d.ts.map +1 -0
  91. package/lib/typescript/src/camera/footer/Footer.d.ts +13 -15
  92. package/lib/typescript/src/camera/footer/Footer.d.ts.map +1 -1
  93. package/lib/typescript/src/camera/footer/index.d.ts +1 -2
  94. package/lib/typescript/src/camera/footer/index.d.ts.map +1 -1
  95. package/lib/typescript/src/camera/index.d.ts +9 -5
  96. package/lib/typescript/src/camera/index.d.ts.map +1 -1
  97. package/lib/typescript/src/camera/preview/PreView.d.ts +6 -9
  98. package/lib/typescript/src/camera/preview/PreView.d.ts.map +1 -1
  99. package/lib/typescript/src/camera/preview/PreViewContainer.d.ts +8 -5
  100. package/lib/typescript/src/camera/preview/PreViewContainer.d.ts.map +1 -1
  101. package/lib/typescript/src/camera/preview/PreviewFooter.d.ts +6 -6
  102. package/lib/typescript/src/camera/preview/PreviewFooter.d.ts.map +1 -1
  103. package/lib/typescript/src/camera/preview/SinglePre.d.ts +5 -28
  104. package/lib/typescript/src/camera/preview/SinglePre.d.ts.map +1 -1
  105. package/lib/typescript/src/camera/preview/index.d.ts +4 -4
  106. package/lib/typescript/src/camera/preview/index.d.ts.map +1 -1
  107. package/lib/typescript/src/camera/setup/SetUp.d.ts +12 -11
  108. package/lib/typescript/src/camera/setup/SetUp.d.ts.map +1 -1
  109. package/lib/typescript/src/camera/setup/index.d.ts +1 -2
  110. package/lib/typescript/src/camera/setup/index.d.ts.map +1 -1
  111. package/lib/typescript/src/components/Carousel/Carousel.d.ts +6 -8
  112. package/lib/typescript/src/components/Carousel/Carousel.d.ts.map +1 -1
  113. package/lib/typescript/src/components/Carousel/SlideItem.d.ts +4 -12
  114. package/lib/typescript/src/components/Carousel/SlideItem.d.ts.map +1 -1
  115. package/lib/typescript/src/components/Carousel/index.d.ts +2 -3
  116. package/lib/typescript/src/components/Carousel/index.d.ts.map +1 -1
  117. package/lib/typescript/src/components/Loading.d.ts +1 -3
  118. package/lib/typescript/src/components/Loading.d.ts.map +1 -1
  119. package/lib/typescript/src/components/PreviewThumbnail.d.ts +7 -8
  120. package/lib/typescript/src/components/PreviewThumbnail.d.ts.map +1 -1
  121. package/lib/typescript/src/components/index.d.ts +2 -7
  122. package/lib/typescript/src/components/index.d.ts.map +1 -1
  123. package/lib/typescript/src/hooks/index.d.ts +3 -3
  124. package/lib/typescript/src/hooks/index.d.ts.map +1 -1
  125. package/lib/typescript/src/hooks/useCamera.d.ts +4 -0
  126. package/lib/typescript/src/hooks/useCamera.d.ts.map +1 -0
  127. package/lib/typescript/src/hooks/useConfirm.d.ts +1 -5
  128. package/lib/typescript/src/hooks/useConfirm.d.ts.map +1 -1
  129. package/lib/typescript/src/hooks/useCreation.d.ts +2 -0
  130. package/lib/typescript/src/hooks/useCreation.d.ts.map +1 -0
  131. package/lib/typescript/src/index.d.ts +3 -4
  132. package/lib/typescript/src/index.d.ts.map +1 -1
  133. package/lib/typescript/src/utils/depsAreSame.d.ts +1 -2
  134. package/lib/typescript/src/utils/depsAreSame.d.ts.map +1 -1
  135. package/lib/typescript/src/utils/index.d.ts +2 -4
  136. package/lib/typescript/src/utils/index.d.ts.map +1 -1
  137. package/lib/typescript/src/utils/interface.d.ts +30 -70
  138. package/lib/typescript/src/utils/interface.d.ts.map +1 -1
  139. package/lib/typescript/src/utils/px-to-dp.d.ts +1 -3
  140. package/lib/typescript/src/utils/px-to-dp.d.ts.map +1 -1
  141. package/lib/typescript/src/utils/util.d.ts +8 -9
  142. package/lib/typescript/src/utils/util.d.ts.map +1 -1
  143. package/package.json +120 -107
  144. package/src/camera/Camera.tsx +210 -331
  145. package/src/camera/Container.tsx +224 -50
  146. package/src/camera/Error.tsx +22 -23
  147. package/src/camera/FocusIndicator.tsx +36 -46
  148. package/src/camera/ModalView.tsx +26 -24
  149. package/src/camera/NoCamera.tsx +37 -14
  150. package/src/camera/NoPermission.tsx +45 -37
  151. package/src/camera/capturePhotoHelper.ts +37 -0
  152. package/src/camera/footer/Footer.tsx +104 -195
  153. package/src/camera/footer/index.tsx +1 -2
  154. package/src/camera/index.tsx +12 -13
  155. package/src/camera/preview/PreView.tsx +22 -103
  156. package/src/camera/preview/PreViewContainer.tsx +23 -27
  157. package/src/camera/preview/PreviewFooter.tsx +28 -22
  158. package/src/camera/preview/SinglePre.tsx +23 -68
  159. package/src/camera/preview/index.tsx +4 -13
  160. package/src/camera/setup/SetUp.tsx +80 -217
  161. package/src/camera/setup/index.tsx +1 -3
  162. package/src/components/Carousel/Carousel.tsx +22 -42
  163. package/src/components/Carousel/SlideItem.tsx +12 -87
  164. package/src/components/Carousel/index.tsx +2 -13
  165. package/src/components/Loading.tsx +7 -69
  166. package/src/components/PreviewThumbnail.tsx +38 -33
  167. package/src/components/index.tsx +2 -7
  168. package/src/hooks/index.ts +3 -12
  169. package/src/hooks/useCamera.tsx +42 -0
  170. package/src/hooks/useConfirm.tsx +10 -57
  171. package/src/hooks/useCreation.ts +26 -0
  172. package/src/index.tsx +3 -37
  173. package/src/utils/depsAreSame.ts +7 -8
  174. package/src/utils/index.ts +2 -12
  175. package/src/utils/interface.ts +26 -87
  176. package/src/utils/px-to-dp.tsx +5 -9
  177. package/src/utils/util.ts +17 -42
  178. package/UnifRNCamera.podspec +0 -41
  179. package/android/CMakeLists.txt +0 -15
  180. package/android/build.gradle +0 -124
  181. package/android/cpp-adapter.cpp +0 -8
  182. package/android/gradle.properties +0 -5
  183. package/android/src/main/AndroidManifest.xml +0 -3
  184. package/android/src/main/AndroidManifestNew.xml +0 -2
  185. package/android/src/main/java/com/unif/reactnativecamera/ReactNativeCameraModule.java +0 -34
  186. package/android/src/main/java/com/unif/reactnativecamera/ReactNativeCameraPackage.java +0 -45
  187. package/android/src/newarch/ReactNativeCameraSpec.java +0 -9
  188. package/android/src/oldarch/ReactNativeCameraSpec.java +0 -13
  189. package/cpp/unif-react-native-camera.cpp +0 -7
  190. package/cpp/unif-react-native-camera.h +0 -8
  191. package/ios/ReactNativeCamera.h +0 -15
  192. package/ios/ReactNativeCamera.mm +0 -51
  193. package/lib/commonjs/NativeReactNativeCamera.js +0 -17
  194. package/lib/commonjs/NativeReactNativeCamera.js.map +0 -1
  195. package/lib/commonjs/assets/close.png +0 -0
  196. package/lib/commonjs/assets/home/record.png +0 -0
  197. package/lib/commonjs/assets/home/take.png +0 -0
  198. package/lib/commonjs/assets/preview/back.png +0 -0
  199. package/lib/commonjs/assets/preview/del.png +0 -0
  200. package/lib/commonjs/assets/preview/rotate.png +0 -0
  201. package/lib/commonjs/assets/preview/save.png +0 -0
  202. package/lib/commonjs/assets/tools/auto.png +0 -0
  203. package/lib/commonjs/assets/tools/defaultEye.png +0 -0
  204. package/lib/commonjs/assets/tools/enlarge.png +0 -0
  205. package/lib/commonjs/assets/tools/fishEye.png +0 -0
  206. package/lib/commonjs/assets/tools/narrow.png +0 -0
  207. package/lib/commonjs/assets/tools/off.png +0 -0
  208. package/lib/commonjs/assets/tools/on.png +0 -0
  209. package/lib/commonjs/assets/tools/volumeOff.png +0 -0
  210. package/lib/commonjs/assets/tools/volumeOn.png +0 -0
  211. package/lib/commonjs/camera/Camera.js +0 -316
  212. package/lib/commonjs/camera/Camera.js.map +0 -1
  213. package/lib/commonjs/camera/Container.js +0 -64
  214. package/lib/commonjs/camera/Container.js.map +0 -1
  215. package/lib/commonjs/camera/Error.js +0 -30
  216. package/lib/commonjs/camera/Error.js.map +0 -1
  217. package/lib/commonjs/camera/FocusIndicator.js +0 -64
  218. package/lib/commonjs/camera/FocusIndicator.js.map +0 -1
  219. package/lib/commonjs/camera/ModalView.js +0 -37
  220. package/lib/commonjs/camera/ModalView.js.map +0 -1
  221. package/lib/commonjs/camera/NoCamera.js +0 -23
  222. package/lib/commonjs/camera/NoCamera.js.map +0 -1
  223. package/lib/commonjs/camera/NoPermission.js +0 -50
  224. package/lib/commonjs/camera/NoPermission.js.map +0 -1
  225. package/lib/commonjs/camera/footer/Footer.js +0 -159
  226. package/lib/commonjs/camera/footer/Footer.js.map +0 -1
  227. package/lib/commonjs/camera/footer/index.js +0 -14
  228. package/lib/commonjs/camera/footer/index.js.map +0 -1
  229. package/lib/commonjs/camera/index.js +0 -35
  230. package/lib/commonjs/camera/index.js.map +0 -1
  231. package/lib/commonjs/camera/preview/PreView.js +0 -109
  232. package/lib/commonjs/camera/preview/PreView.js.map +0 -1
  233. package/lib/commonjs/camera/preview/PreViewContainer.js +0 -42
  234. package/lib/commonjs/camera/preview/PreViewContainer.js.map +0 -1
  235. package/lib/commonjs/camera/preview/PreviewFooter.js +0 -35
  236. package/lib/commonjs/camera/preview/PreviewFooter.js.map +0 -1
  237. package/lib/commonjs/camera/preview/SinglePre.js +0 -72
  238. package/lib/commonjs/camera/preview/SinglePre.js.map +0 -1
  239. package/lib/commonjs/camera/preview/index.js +0 -28
  240. package/lib/commonjs/camera/preview/index.js.map +0 -1
  241. package/lib/commonjs/camera/setup/SetUp.js +0 -205
  242. package/lib/commonjs/camera/setup/SetUp.js.map +0 -1
  243. package/lib/commonjs/camera/setup/index.js +0 -14
  244. package/lib/commonjs/camera/setup/index.js.map +0 -1
  245. package/lib/commonjs/camera/watermark/Render.js +0 -110
  246. package/lib/commonjs/camera/watermark/Render.js.map +0 -1
  247. package/lib/commonjs/camera/watermark/ViewShotWatermark.js +0 -143
  248. package/lib/commonjs/camera/watermark/ViewShotWatermark.js.map +0 -1
  249. package/lib/commonjs/camera/watermark/index.js +0 -21
  250. package/lib/commonjs/camera/watermark/index.js.map +0 -1
  251. package/lib/commonjs/components/Back.js +0 -48
  252. package/lib/commonjs/components/Back.js.map +0 -1
  253. package/lib/commonjs/components/Carousel/Carousel.js +0 -51
  254. package/lib/commonjs/components/Carousel/Carousel.js.map +0 -1
  255. package/lib/commonjs/components/Carousel/SlideItem.js +0 -84
  256. package/lib/commonjs/components/Carousel/SlideItem.js.map +0 -1
  257. package/lib/commonjs/components/Carousel/index.js +0 -21
  258. package/lib/commonjs/components/Carousel/index.js.map +0 -1
  259. package/lib/commonjs/components/Delete.js +0 -36
  260. package/lib/commonjs/components/Delete.js.map +0 -1
  261. package/lib/commonjs/components/Loading.js +0 -75
  262. package/lib/commonjs/components/Loading.js.map +0 -1
  263. package/lib/commonjs/components/Modal/Confirm.js +0 -121
  264. package/lib/commonjs/components/Modal/Confirm.js.map +0 -1
  265. package/lib/commonjs/components/Modal/index.js +0 -14
  266. package/lib/commonjs/components/Modal/index.js.map +0 -1
  267. package/lib/commonjs/components/PreviewThumbnail.js +0 -44
  268. package/lib/commonjs/components/PreviewThumbnail.js.map +0 -1
  269. package/lib/commonjs/components/Rotate.js +0 -32
  270. package/lib/commonjs/components/Rotate.js.map +0 -1
  271. package/lib/commonjs/components/Save.js +0 -48
  272. package/lib/commonjs/components/Save.js.map +0 -1
  273. package/lib/commonjs/components/index.js +0 -73
  274. package/lib/commonjs/components/index.js.map +0 -1
  275. package/lib/commonjs/hooks/index.js +0 -21
  276. package/lib/commonjs/hooks/index.js.map +0 -1
  277. package/lib/commonjs/hooks/useCamera.tsx/index.js +0 -90
  278. package/lib/commonjs/hooks/useCamera.tsx/index.js.map +0 -1
  279. package/lib/commonjs/hooks/useConfirm.js +0 -61
  280. package/lib/commonjs/hooks/useConfirm.js.map +0 -1
  281. package/lib/commonjs/hooks/useCreation/index.js +0 -34
  282. package/lib/commonjs/hooks/useCreation/index.js.map +0 -1
  283. package/lib/commonjs/index.js +0 -39
  284. package/lib/commonjs/index.js.map +0 -1
  285. package/lib/commonjs/utils/common.js +0 -69
  286. package/lib/commonjs/utils/common.js.map +0 -1
  287. package/lib/commonjs/utils/depsAreSame.js +0 -14
  288. package/lib/commonjs/utils/depsAreSame.js.map +0 -1
  289. package/lib/commonjs/utils/index.js +0 -72
  290. package/lib/commonjs/utils/index.js.map +0 -1
  291. package/lib/commonjs/utils/interface.js +0 -24
  292. package/lib/commonjs/utils/interface.js.map +0 -1
  293. package/lib/commonjs/utils/px-to-dp.js +0 -21
  294. package/lib/commonjs/utils/px-to-dp.js.map +0 -1
  295. package/lib/commonjs/utils/render-item.js +0 -40
  296. package/lib/commonjs/utils/render-item.js.map +0 -1
  297. package/lib/commonjs/utils/util.js +0 -53
  298. package/lib/commonjs/utils/util.js.map +0 -1
  299. package/lib/commonjs/utils/watermark.js +0 -49
  300. package/lib/commonjs/utils/watermark.js.map +0 -1
  301. package/lib/module/NativeReactNativeCamera.js +0 -12
  302. package/lib/module/NativeReactNativeCamera.js.map +0 -1
  303. package/lib/module/assets/close.png +0 -0
  304. package/lib/module/assets/home/record.png +0 -0
  305. package/lib/module/assets/home/take.png +0 -0
  306. package/lib/module/assets/preview/back.png +0 -0
  307. package/lib/module/assets/preview/del.png +0 -0
  308. package/lib/module/assets/preview/rotate.png +0 -0
  309. package/lib/module/assets/preview/save.png +0 -0
  310. package/lib/module/assets/tools/auto.png +0 -0
  311. package/lib/module/assets/tools/defaultEye.png +0 -0
  312. package/lib/module/assets/tools/enlarge.png +0 -0
  313. package/lib/module/assets/tools/fishEye.png +0 -0
  314. package/lib/module/assets/tools/narrow.png +0 -0
  315. package/lib/module/assets/tools/off.png +0 -0
  316. package/lib/module/assets/tools/on.png +0 -0
  317. package/lib/module/assets/tools/volumeOff.png +0 -0
  318. package/lib/module/assets/tools/volumeOn.png +0 -0
  319. package/lib/module/camera/watermark/Render.js +0 -102
  320. package/lib/module/camera/watermark/Render.js.map +0 -1
  321. package/lib/module/camera/watermark/ViewShotWatermark.js +0 -133
  322. package/lib/module/camera/watermark/ViewShotWatermark.js.map +0 -1
  323. package/lib/module/camera/watermark/index.js +0 -13
  324. package/lib/module/camera/watermark/index.js.map +0 -1
  325. package/lib/module/components/Back.js +0 -40
  326. package/lib/module/components/Back.js.map +0 -1
  327. package/lib/module/components/Delete.js +0 -28
  328. package/lib/module/components/Delete.js.map +0 -1
  329. package/lib/module/components/Modal/Confirm.js +0 -111
  330. package/lib/module/components/Modal/Confirm.js.map +0 -1
  331. package/lib/module/components/Modal/index.js +0 -3
  332. package/lib/module/components/Modal/index.js.map +0 -1
  333. package/lib/module/components/Rotate.js +0 -24
  334. package/lib/module/components/Rotate.js.map +0 -1
  335. package/lib/module/components/Save.js +0 -40
  336. package/lib/module/components/Save.js.map +0 -1
  337. package/lib/module/hooks/useCamera.tsx/index.js +0 -81
  338. package/lib/module/hooks/useCamera.tsx/index.js.map +0 -1
  339. package/lib/module/hooks/useCreation/index.js +0 -27
  340. package/lib/module/hooks/useCreation/index.js.map +0 -1
  341. package/lib/module/utils/common.js +0 -62
  342. package/lib/module/utils/common.js.map +0 -1
  343. package/lib/module/utils/render-item.js +0 -32
  344. package/lib/module/utils/render-item.js.map +0 -1
  345. package/lib/module/utils/watermark.js +0 -39
  346. package/lib/module/utils/watermark.js.map +0 -1
  347. package/lib/typescript/src/NativeReactNativeCamera.d.ts +0 -6
  348. package/lib/typescript/src/NativeReactNativeCamera.d.ts.map +0 -1
  349. package/lib/typescript/src/camera/watermark/Render.d.ts +0 -26
  350. package/lib/typescript/src/camera/watermark/Render.d.ts.map +0 -1
  351. package/lib/typescript/src/camera/watermark/ViewShotWatermark.d.ts +0 -41
  352. package/lib/typescript/src/camera/watermark/ViewShotWatermark.d.ts.map +0 -1
  353. package/lib/typescript/src/camera/watermark/index.d.ts +0 -4
  354. package/lib/typescript/src/camera/watermark/index.d.ts.map +0 -1
  355. package/lib/typescript/src/components/Back.d.ts +0 -20
  356. package/lib/typescript/src/components/Back.d.ts.map +0 -1
  357. package/lib/typescript/src/components/Delete.d.ts +0 -7
  358. package/lib/typescript/src/components/Delete.d.ts.map +0 -1
  359. package/lib/typescript/src/components/Modal/Confirm.d.ts +0 -9
  360. package/lib/typescript/src/components/Modal/Confirm.d.ts.map +0 -1
  361. package/lib/typescript/src/components/Modal/index.d.ts +0 -3
  362. package/lib/typescript/src/components/Modal/index.d.ts.map +0 -1
  363. package/lib/typescript/src/components/Rotate.d.ts +0 -9
  364. package/lib/typescript/src/components/Rotate.d.ts.map +0 -1
  365. package/lib/typescript/src/components/Save.d.ts +0 -20
  366. package/lib/typescript/src/components/Save.d.ts.map +0 -1
  367. package/lib/typescript/src/hooks/useCamera.tsx/index.d.ts +0 -5
  368. package/lib/typescript/src/hooks/useCamera.tsx/index.d.ts.map +0 -1
  369. package/lib/typescript/src/hooks/useCreation/index.d.ts +0 -3
  370. package/lib/typescript/src/hooks/useCreation/index.d.ts.map +0 -1
  371. package/lib/typescript/src/utils/common.d.ts +0 -14
  372. package/lib/typescript/src/utils/common.d.ts.map +0 -1
  373. package/lib/typescript/src/utils/render-item.d.ts +0 -10
  374. package/lib/typescript/src/utils/render-item.d.ts.map +0 -1
  375. package/lib/typescript/src/utils/watermark.d.ts +0 -11
  376. package/lib/typescript/src/utils/watermark.d.ts.map +0 -1
  377. package/src/NativeReactNativeCamera.ts +0 -15
  378. package/src/assets/close.png +0 -0
  379. package/src/assets/home/record.png +0 -0
  380. package/src/assets/home/take.png +0 -0
  381. package/src/assets/preview/back.png +0 -0
  382. package/src/assets/preview/del.png +0 -0
  383. package/src/assets/preview/rotate.png +0 -0
  384. package/src/assets/preview/save.png +0 -0
  385. package/src/assets/tools/auto.png +0 -0
  386. package/src/assets/tools/defaultEye.png +0 -0
  387. package/src/assets/tools/enlarge.png +0 -0
  388. package/src/assets/tools/fishEye.png +0 -0
  389. package/src/assets/tools/narrow.png +0 -0
  390. package/src/assets/tools/off.png +0 -0
  391. package/src/assets/tools/on.png +0 -0
  392. package/src/assets/tools/volumeOff.png +0 -0
  393. package/src/assets/tools/volumeOn.png +0 -0
  394. package/src/camera/watermark/Render.tsx +0 -128
  395. package/src/camera/watermark/ViewShotWatermark.tsx +0 -134
  396. package/src/camera/watermark/index.tsx +0 -12
  397. package/src/components/Back.tsx +0 -37
  398. package/src/components/Delete.tsx +0 -30
  399. package/src/components/Modal/Confirm.tsx +0 -116
  400. package/src/components/Modal/index.tsx +0 -3
  401. package/src/components/Rotate.tsx +0 -32
  402. package/src/components/Save.tsx +0 -37
  403. package/src/hooks/useCamera.tsx/index.tsx +0 -95
  404. package/src/hooks/useCreation/index.ts +0 -25
  405. package/src/utils/common.ts +0 -67
  406. package/src/utils/render-item.tsx +0 -39
  407. package/src/utils/watermark.ts +0 -55
@@ -1,76 +1,14 @@
1
- import React, { useEffect } from 'react';
2
- import { View, StyleSheet } from 'react-native';
3
- import Animated, {
4
- Easing,
5
- withRepeat,
6
- withTiming,
7
- useSharedValue,
8
- useAnimatedStyle,
9
- } from 'react-native-reanimated';
10
- import { pxToDpWidth } from '../utils';
11
-
12
- const Loading: React.FC = () => {
13
- const firstDotScale = useSharedValue(0);
14
- const secondDotScale = useSharedValue(0);
15
- const thirdDotScale = useSharedValue(0);
16
-
17
- useEffect(() => {
18
- // 创建动画:依次跳动
19
- firstDotScale.value = withRepeat(
20
- withTiming(1, { duration: 500, easing: Easing.ease }),
21
- -1,
22
- true
23
- );
24
-
25
- secondDotScale.value = withRepeat(
26
- withTiming(1, { duration: 500, easing: Easing.ease }),
27
- -1,
28
- true
29
- );
30
-
31
- thirdDotScale.value = withRepeat(
32
- withTiming(1, { duration: 500, easing: Easing.ease }),
33
- -1,
34
- true
35
- );
36
- }, [firstDotScale, secondDotScale, thirdDotScale]);
37
-
38
- // 使用 useAnimatedStyle 来绑定动画到样式上
39
- const animatedStyle1 = useAnimatedStyle(() => ({
40
- transform: [{ scale: firstDotScale.value }],
41
- }));
42
-
43
- const animatedStyle2 = useAnimatedStyle(() => ({
44
- transform: [{ scale: secondDotScale.value }],
45
- }));
46
-
47
- const animatedStyle3 = useAnimatedStyle(() => ({
48
- transform: [{ scale: thirdDotScale.value }],
49
- }));
1
+ import { StyleSheet, View } from 'react-native';
2
+ import { Spinner, r } from '@unif/react-native-design';
50
3
 
4
+ export function Loading() {
51
5
  return (
52
- <View style={styles.container}>
53
- <Animated.View style={[styles.dot, animatedStyle1]} />
54
- <Animated.View style={[styles.dot, animatedStyle2]} />
55
- <Animated.View style={[styles.dot, animatedStyle3]} />
6
+ <View style={styles.root} testID="loading">
7
+ <Spinner size={r(32)} />
56
8
  </View>
57
9
  );
58
- };
10
+ }
59
11
 
60
12
  const styles = StyleSheet.create({
61
- container: {
62
- flexDirection: 'row',
63
- justifyContent: 'center',
64
- alignItems: 'center',
65
- flex: 1,
66
- },
67
- dot: {
68
- width: pxToDpWidth(20),
69
- height: pxToDpWidth(20),
70
- borderRadius: 10,
71
- backgroundColor: '#FF7600',
72
- margin: 5,
73
- },
13
+ root: { justifyContent: 'center', alignItems: 'center' },
74
14
  });
75
-
76
- export default Loading;
@@ -1,40 +1,45 @@
1
- /*
2
- * @Author: 刘利军
3
- * @Date: 2024-02-26 14:42:00
4
- * @LastEditors: 刘利军
5
- * @LastEditTime: 2024-12-17 11:33:28
6
- * @Description:
7
- * @PageName: 左侧预览
8
- */
1
+ import { StyleSheet, TouchableOpacity, View } from 'react-native';
9
2
  import {
10
- StyleSheet,
11
- TouchableOpacity,
12
- type ImageStyle,
13
- Image,
14
- type GestureResponderEvent,
15
- } from 'react-native';
16
- import React from 'react';
3
+ Thumbnail,
4
+ r,
5
+ useThemedStyles,
6
+ type ColorTokens,
7
+ } from '@unif/react-native-design';
8
+ import type { CustomPhotoFile } from '../utils';
17
9
 
18
- export type PreviewThumbnailProps = {
19
- uri: string;
20
- onPress?: (event: GestureResponderEvent) => void;
21
- style?: ImageStyle;
10
+ type Props = {
11
+ files: CustomPhotoFile[];
12
+ currentIndex: number;
13
+ onTap: (i: number) => void;
22
14
  };
23
15
 
24
- const PreviewThumbnail: React.FC<PreviewThumbnailProps> = ({
25
- onPress,
26
- uri,
27
- style,
28
- }) => {
16
+ export function PreviewThumbnail({ files, currentIndex, onTap }: Props) {
17
+ const styles = useThemedStyles(makeStyles);
29
18
  return (
30
- <TouchableOpacity onPress={onPress}>
31
- <Image source={{ uri }} style={{ ...styles.image, ...style }} />
32
- </TouchableOpacity>
19
+ <View style={styles.row}>
20
+ {files.map((f, i) => (
21
+ <TouchableOpacity
22
+ key={`${f.path}-${i}`}
23
+ onPress={() => onTap(i)}
24
+ style={[
25
+ styles.thumbWrap,
26
+ i === currentIndex && styles.thumbWrapActive,
27
+ ]}
28
+ >
29
+ <Thumbnail uri={f.uri} size="sm" />
30
+ </TouchableOpacity>
31
+ ))}
32
+ </View>
33
33
  );
34
- };
35
-
36
- export default PreviewThumbnail;
34
+ }
37
35
 
38
- const styles = StyleSheet.create({
39
- image: { width: '100%', height: '100%', borderRadius: 5 },
40
- });
36
+ const makeStyles = (c: ColorTokens) =>
37
+ StyleSheet.create({
38
+ row: { flexDirection: 'row', gap: r(6), padding: r(8) },
39
+ thumbWrap: {
40
+ borderRadius: r(4),
41
+ borderWidth: 2,
42
+ borderColor: 'transparent',
43
+ },
44
+ thumbWrapActive: { borderColor: c.primary },
45
+ });
@@ -1,8 +1,3 @@
1
- import PreviewThumbnail from './PreviewThumbnail';
2
- import Rotate from './Rotate';
3
- import Back from './Back';
4
- import Delete from './Delete';
5
- import Save from './Save';
1
+ export { Loading } from './Loading';
2
+ export { PreviewThumbnail } from './PreviewThumbnail';
6
3
  export * from './Carousel';
7
- export * from './Modal';
8
- export { Back, Rotate, PreviewThumbnail, Delete, Save };
@@ -1,12 +1,3 @@
1
- /*
2
- * @Author: 刘利军
3
- * @Date: 2024-01-17 16:29:43
4
- * @LastEditors: 刘利军
5
- * @LastEditTime: 2024-12-18 15:13:08
6
- * @Description:
7
- * @PageName:
8
- */
9
- import useCreation from './useCreation';
10
- import useConfirm from './useConfirm';
11
-
12
- export { useCreation, useConfirm };
1
+ export { useCreation } from './useCreation';
2
+ export { useConfirm } from './useConfirm';
3
+ export { useCamera } from './useCamera';
@@ -0,0 +1,42 @@
1
+ import React, { useCallback, useMemo, useRef, useState } from 'react';
2
+ import type { CameraApi, CameraResult, OpenConfig } from '../utils';
3
+ import { Container, ModalView } from '../camera';
4
+
5
+ export function useCamera(): [CameraApi, React.ReactElement] {
6
+ const [visible, setVisible] = useState(false);
7
+ const [config, setConfig] = useState<OpenConfig | null>(null);
8
+ const resolverRef = useRef<((r: CameraResult) => void) | null>(null);
9
+
10
+ const settle = useCallback((r: CameraResult) => {
11
+ if (resolverRef.current) {
12
+ resolverRef.current(r);
13
+ resolverRef.current = null;
14
+ }
15
+ setVisible(false);
16
+ setConfig(null);
17
+ }, []);
18
+
19
+ const api = useMemo<CameraApi>(
20
+ () => ({
21
+ open: (cfg: OpenConfig) =>
22
+ new Promise<CameraResult>((resolve) => {
23
+ resolverRef.current = resolve;
24
+ setConfig(cfg);
25
+ setVisible(true);
26
+ }),
27
+ close: () => settle({ code: 0, data: [], message: 'cancelled' }),
28
+ }),
29
+ [settle]
30
+ );
31
+
32
+ const holder = (
33
+ <ModalView
34
+ visible={visible}
35
+ onClose={() => settle({ code: 0, data: [], message: 'cancelled' })}
36
+ >
37
+ {config && <Container config={config} onSettle={settle} />}
38
+ </ModalView>
39
+ );
40
+
41
+ return [api, holder];
42
+ }
@@ -1,58 +1,11 @@
1
- /*
2
- * @Author: 刘利军
3
- * @Date: 2024-01-17 16:28:56
4
- * @LastEditors: 刘利军
5
- * @LastEditTime: 2024-12-18 16:05:43
6
- * @Description:
7
- * @PageName:
8
- */
9
- import React, { useRef, useState } from 'react';
10
- import type { ConfirmConfigProps, ConfirmRef } from '../utils';
11
- import { Confirm } from '../components';
12
-
13
- export default function useConfirm() {
14
- const [visible, setVisible] = useState(false);
15
- const [config, setConfig] = useState<ConfirmConfigProps>();
16
- const close = () => {
17
- setVisible(false);
18
- };
19
-
20
- const ref = useRef<{ resolvePromise: (confirmed: boolean) => void }>({
21
- resolvePromise: () => {},
22
- });
23
-
24
- const confirmApi = React.useMemo<ConfirmRef>(() => {
25
- return {
26
- open: async (openConfig) => {
27
- setConfig(openConfig);
28
- setVisible(true);
29
- return new Promise<boolean>((resolve) => {
30
- ref.current.resolvePromise = resolve;
31
- });
32
- },
33
- close: () => close(),
34
- };
35
- }, []);
36
-
37
- let contextHolder = null;
38
- if (visible) {
39
- contextHolder = (
40
- <Confirm
41
- title={config?.title}
42
- text={config?.text}
43
- onCancel={() => {
44
- close();
45
- ref.current.resolvePromise(false);
46
- }}
47
- onConfirm={() => {
48
- close();
49
- ref.current.resolvePromise(true);
50
- }}
51
- />
52
- );
53
- }
54
- return {
55
- confirmApi,
56
- contextHolder,
57
- };
1
+ import { Alert } from 'react-native';
2
+
3
+ export function useConfirm() {
4
+ return (title: string, message: string) =>
5
+ new Promise<boolean>((resolve) => {
6
+ Alert.alert(title, message, [
7
+ { text: '取消', onPress: () => resolve(false), style: 'cancel' },
8
+ { text: '确认', onPress: () => resolve(true) },
9
+ ]);
10
+ });
58
11
  }
@@ -0,0 +1,26 @@
1
+ import { useRef } from 'react';
2
+ import { depsAreSame } from '../utils';
3
+
4
+ export function useCreation<T>(
5
+ factory: () => T,
6
+ deps: ReadonlyArray<unknown>
7
+ ): T {
8
+ const current = useRef<{
9
+ deps: ReadonlyArray<unknown>;
10
+ obj: T;
11
+ initialized: boolean;
12
+ }>({
13
+ deps,
14
+ obj: undefined as unknown as T,
15
+ initialized: false,
16
+ });
17
+ if (
18
+ !current.current.initialized ||
19
+ !depsAreSame(deps, current.current.deps)
20
+ ) {
21
+ current.current.deps = deps;
22
+ current.current.obj = factory();
23
+ current.current.initialized = true;
24
+ }
25
+ return current.current.obj;
26
+ }
package/src/index.tsx CHANGED
@@ -1,38 +1,4 @@
1
- /*
2
- * @Author: 刘利军
3
- * @Date: 2024-01-09 13:54:14
4
- * @LastEditors: 刘利军
5
- * @LastEditTime: 2024-01-17 16:58:16
6
- * @Description:
7
- * @PageName:
8
- */
9
- import { NativeModules, Platform } from 'react-native';
1
+ export { useCamera } from './hooks';
2
+ export * from './utils';
10
3
 
11
- const LINKING_ERROR =
12
- `The package '@unif/react-native-camera' doesn't seem to be linked. Make sure: \n\n` +
13
- Platform.select({ ios: "- You have run 'pod install'\n", default: '' }) +
14
- '- You rebuilt the app after installing the package\n' +
15
- '- You are not using Expo Go\n';
16
-
17
- // @ts-expect-error
18
- const isTurboModuleEnabled = global.__turboModuleProxy != null;
19
-
20
- const ReactNativeCameraModule = isTurboModuleEnabled
21
- ? require('./NativeReactNativeCamera').default
22
- : NativeModules.ReactNativeCamera;
23
-
24
- const ReactNativeCamera = ReactNativeCameraModule
25
- ? ReactNativeCameraModule
26
- : new Proxy(
27
- {},
28
- {
29
- get() {
30
- throw new Error(LINKING_ERROR);
31
- },
32
- }
33
- );
34
-
35
- export default ReactNativeCamera;
36
-
37
- import useCamera from './hooks/useCamera.tsx';
38
- export { useCamera };
4
+ export const VERSION = '2.0.0';
@@ -1,12 +1,11 @@
1
- import type { DependencyList } from 'react';
2
-
3
- export default function depsAreSame(
4
- oldDeps: DependencyList,
5
- deps: DependencyList
1
+ export function depsAreSame(
2
+ a: ReadonlyArray<unknown>,
3
+ b: ReadonlyArray<unknown>
6
4
  ): boolean {
7
- if (oldDeps === deps) return true;
8
- for (let i = 0; i < oldDeps.length; i++) {
9
- if (!Object.is(oldDeps[i], deps[i])) return false;
5
+ if (a === b) return true;
6
+ if (a.length !== b.length) return false;
7
+ for (let i = 0; i < a.length; i++) {
8
+ if (!Object.is(a[i], b[i])) return false;
10
9
  }
11
10
  return true;
12
11
  }
@@ -1,14 +1,4 @@
1
- /*
2
- * @Author: 刘利军
3
- * @Date: 2024-01-11 14:53:09
4
- * @LastEditors: 刘利军
5
- * @LastEditTime: 2024-12-25 17:48:42
6
- * @Description:
7
- * @PageName:
8
- */
9
- export * from './common';
10
- export * from './render-item';
11
- export * from './px-to-dp';
12
1
  export * from './interface';
13
- export * from './watermark';
14
2
  export * from './util';
3
+ export * from './depsAreSame';
4
+ export * from './px-to-dp';
@@ -1,104 +1,43 @@
1
- /*
2
- * @Author: 刘利军
3
- * @Date: 2024-01-12 11:38:13
4
- * @LastEditors: 刘利军
5
- * @LastEditTime: 2025-01-16 15:05:07
6
- * @Description:
7
- * @PageName:
8
- */
9
1
  export type CameraType = 'back' | 'front';
10
- export type FlashMode = 'auto' | 'on' | 'off';
11
2
 
12
- export enum CameraModeEnum {
13
- 'continuous' = '连拍',
14
- 'single' = '单拍',
15
- 'video' = '视频',
16
- }
17
- export type CameraMode = keyof typeof CameraModeEnum;
3
+ export type PhotoQuality = 'speed' | 'balanced' | 'quality';
18
4
 
19
- /** 公用 */
20
- export type CameraModeCommonType = {
21
- type?: CameraType;
22
- flashMode?: FlashMode;
23
- mode: CameraMode;
24
- };
25
-
26
- /** 图片 */
27
- export type CameraModeImageType = {
28
- quality?: number;
29
- };
5
+ export type DataRetainedMode = 'clear' | 'retain';
30
6
 
31
- export type Resolution = {
32
- width: number;
33
- height: number;
34
- };
35
- export type CameraModeVidoType = {
36
- recTime?: number;
37
- videoResolution?: Resolution;
38
- photoResolution?: Resolution;
39
- };
7
+ export type CameraModeName = 'single' | 'continuous' | 'video';
40
8
 
41
- /** 相机 */
42
- export type CameraModeType = CameraModeCommonType &
43
- CameraModeImageType &
44
- CameraModeVidoType;
9
+ export type Point = { x: number; y: number };
45
10
 
46
- export type DataRetainedModeType = 'retain' | 'clear';
47
- export type CameraProps = {
48
- cameraMode: CameraModeType[];
49
- dataRetainedMode: DataRetainedModeType;
50
- watermark?: WatermarkType;
11
+ export type CameraMode = {
12
+ mode: CameraModeName;
13
+ photoQuality?: PhotoQuality;
14
+ jpegQuality?: number;
51
15
  };
52
16
 
53
- export type CameraModeListItem = {
54
- label: string;
55
- value: CameraMode;
17
+ export type OpenConfig = {
18
+ cameraMode: CameraMode[];
19
+ dataRetainedMode: DataRetainedMode;
56
20
  };
57
21
 
58
- export type CameraBackDataItem = {
59
- id: string;
22
+ export type CustomPhotoFile = {
60
23
  path: string;
61
- cameraType: string;
24
+ uri: string;
25
+ width: number;
26
+ height: number;
27
+ mime: 'image/jpeg' | 'video/mp4';
28
+ mode: CameraModeName;
29
+ duration?: number;
62
30
  };
63
- export type CameraBackDataList = CameraBackDataItem[];
64
-
65
- export type CameraBack =
66
- | {
67
- code: 200;
68
- data: CameraBackDataList;
69
- message: string;
70
- }
71
- | undefined
72
- | null;
73
-
74
- export interface CameraRef {
75
- open: (config?: CameraProps) => Promise<CameraBack>;
76
- close: () => void;
77
- }
78
31
 
79
- import type { PhotoFile } from 'react-native-vision-camera';
32
+ export type CameraResultCode = 0 | 200 | 403 | 404 | 500 | 503;
80
33
 
81
- export interface CustomPhotoFile extends PhotoFile {
82
- mode: CameraMode;
83
- frontTime: number;
84
- cameraType: CameraType;
85
- }
86
-
87
- export interface ConfirmConfigProps {
88
- text?: string;
89
- title?: string;
90
- }
34
+ export type CameraResult = {
35
+ code: CameraResultCode;
36
+ data: CustomPhotoFile[];
37
+ message: string;
38
+ };
91
39
 
92
- export interface ConfirmRef {
93
- open: (config?: ConfirmConfigProps) => Promise<boolean>;
40
+ export type CameraApi = {
41
+ open: (config: OpenConfig) => Promise<CameraResult>;
94
42
  close: () => void;
95
- }
96
-
97
- export type WatermarkType = {
98
- content?: string[];
99
- image?: string;
100
- gap?: number[]; // 水印之间距离
101
- rotate?: number; // 水印旋转角度
102
- width?: number;
103
- height?: number;
104
43
  };
@@ -1,12 +1,8 @@
1
- import { Dimensions } from 'react-native';
1
+ import { Dimensions, PixelRatio } from 'react-native';
2
2
 
3
- function pxToDpWidth(uiElementPx: number) {
3
+ const DESIGN_WIDTH = 375;
4
+
5
+ export function pxToDp(px: number): number {
4
6
  const { width } = Dimensions.get('window');
5
- return (uiElementPx * width) / 750;
6
- }
7
- function pxToDpHeight(uiElementPx: number) {
8
- const { height } = Dimensions.get('window');
9
- return (uiElementPx * height) / 1334;
7
+ return PixelRatio.roundToNearestPixel((px * width) / DESIGN_WIDTH);
10
8
  }
11
-
12
- export { pxToDpWidth, pxToDpHeight };
package/src/utils/util.ts CHANGED
@@ -1,47 +1,22 @@
1
- /*
2
- * @Author: 刘利军
3
- * @Date: 2024-12-25 17:48:18
4
- * @LastEditors: 刘利军
5
- * @LastEditTime: 2024-12-25 17:48:44
6
- * @Description:
7
- * @PageName:
8
- */
9
- export const formatUri = (uri: string) => {
10
- const startPath = 'file://';
11
- if (uri.startsWith(startPath)) {
12
- return uri;
13
- }
14
- return `${startPath}${uri}`;
15
- };
1
+ import type { CustomPhotoFile, CameraModeName } from './interface';
16
2
 
17
- export function throttle(fn: Function, limit: number) {
18
- let lastCall = 0;
19
-
20
- return (...args: any[]) => {
21
- const now = Date.now();
22
- if (now - lastCall >= limit) {
23
- fn(...args);
24
- lastCall = now;
25
- }
26
- };
3
+ export function toFileUri(path: string): string {
4
+ if (path.startsWith('file://')) return path;
5
+ return `file://${path}`;
27
6
  }
28
7
 
29
- /**
30
- * 防抖函数
31
- * @param fn 要执行的函数
32
- * @param delay 延迟时间(毫秒)
33
- * @returns 防抖后的函数
34
- */
35
- export function debounce(fn: Function, delay: number) {
36
- let timer: NodeJS.Timeout | null = null;
37
-
38
- return (...args: any[]) => {
39
- if (timer) {
40
- clearTimeout(timer);
41
- }
42
-
43
- timer = setTimeout(() => {
44
- fn(...args);
45
- }, delay);
8
+ export function buildPhotoFile(
9
+ raw: { path: string; width: number; height: number; duration?: number },
10
+ mode: CameraModeName,
11
+ isVideo: boolean = false
12
+ ): CustomPhotoFile {
13
+ return {
14
+ path: raw.path,
15
+ uri: toFileUri(raw.path),
16
+ width: raw.width,
17
+ height: raw.height,
18
+ mime: isVideo ? 'video/mp4' : 'image/jpeg',
19
+ mode,
20
+ ...(raw.duration != null ? { duration: raw.duration } : {}),
46
21
  };
47
22
  }
@@ -1,41 +0,0 @@
1
- require "json"
2
-
3
- package = JSON.parse(File.read(File.join(__dir__, "package.json")))
4
- folly_compiler_flags = '-DFOLLY_NO_CONFIG -DFOLLY_MOBILE=1 -DFOLLY_USE_LIBCPP=1 -Wno-comma -Wno-shorten-64-to-32'
5
-
6
- Pod::Spec.new do |s|
7
- s.name = "UnifRNCamera"
8
- s.version = package["version"]
9
- s.summary = package["description"]
10
- s.homepage = package["homepage"]
11
- s.license = package["license"]
12
- s.authors = package["author"]
13
-
14
- s.platforms = { :ios => "11.0" }
15
- s.source = { :git => "https://github.com/tongyizixun/unif-react-native-camera.git", :tag => "#{s.version}" }
16
-
17
- s.source_files = "ios/**/*.{h,m,mm}", "cpp/**/*.{hpp,cpp,c,h}"
18
-
19
- # Use install_modules_dependencies helper to install the dependencies if React Native version >=0.71.0.
20
- # See https://github.com/facebook/react-native/blob/febf6b7f33fdb4904669f99d795eba4c0f95d7bf/scripts/cocoapods/new_architecture.rb#L79.
21
- if respond_to?(:install_modules_dependencies, true)
22
- install_modules_dependencies(s)
23
- else
24
- s.dependency "React-Core"
25
-
26
- # Don't install the dependencies when we run `pod install` in the old architecture.
27
- if ENV['RCT_NEW_ARCH_ENABLED'] == '1' then
28
- s.compiler_flags = folly_compiler_flags + " -DRCT_NEW_ARCH_ENABLED=1"
29
- s.pod_target_xcconfig = {
30
- "HEADER_SEARCH_PATHS" => "\"$(PODS_ROOT)/boost\"",
31
- "OTHER_CPLUSPLUSFLAGS" => "-DFOLLY_NO_CONFIG -DFOLLY_MOBILE=1 -DFOLLY_USE_LIBCPP=1",
32
- "CLANG_CXX_LANGUAGE_STANDARD" => "c++17"
33
- }
34
- s.dependency "React-Codegen"
35
- s.dependency "RCT-Folly"
36
- s.dependency "RCTRequired"
37
- s.dependency "RCTTypeSafety"
38
- s.dependency "ReactCommon/turbomodule/core"
39
- end
40
- end
41
- end