@unif/react-native-camera 1.2.6 → 2.1.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 +123 -108
  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,54 +1,214 @@
1
- /*
2
- * @Author: 刘利军
3
- * @Date: 2024-12-02 11:24:47
4
- * @LastEditors: 刘利军
5
- * @LastEditTime: 2024-12-16 09:33:14
6
- * @Description:
7
- * @PageName:
8
- */
9
- import { Image, SafeAreaView, StyleSheet, TouchableNativeFeedback, View } from 'react-native';
10
- import React from 'react';
11
- const Container = ({
12
- children,
13
- onCancel
14
- }) => {
15
- return /*#__PURE__*/React.createElement(SafeAreaView, {
16
- style: styles.container
17
- }, /*#__PURE__*/React.createElement(View, {
18
- style: styles.headerContainer
19
- }, /*#__PURE__*/React.createElement(TouchableNativeFeedback, {
20
- onPress: onCancel
21
- }, /*#__PURE__*/React.createElement(Image, {
22
- style: styles.img,
23
- source: require('../assets/close.png')
24
- }))), /*#__PURE__*/React.createElement(View, {
25
- style: styles.children
26
- }, children));
27
- };
28
- export default Container;
1
+ "use strict";
2
+
3
+ import { useCallback, useEffect, useRef, useState } from 'react';
4
+ import { Linking, StyleSheet, View } from 'react-native';
5
+ import { useCameraDevice, useCameraPermission } from 'react-native-vision-camera';
6
+ import { useSharedValue } from 'react-native-reanimated';
7
+ import { NoCamera } from "./NoCamera.js";
8
+ import { NoPermission } from "./NoPermission.js";
9
+ import { Loading } from "../components/Loading.js";
10
+ import { Camera } from "./Camera.js";
11
+ import { PreViewContainer } from "./preview/index.js";
12
+ import { Footer } from "./footer/index.js";
13
+ import { SetUp } from "./setup/index.js";
14
+ import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
15
+ const NEUTRAL_ZOOM = 1;
16
+ export function Container({
17
+ config,
18
+ onSettle
19
+ }) {
20
+ const settledRef = useRef(false);
21
+ const settle = useCallback(r => {
22
+ if (settledRef.current) return;
23
+ settledRef.current = true;
24
+ onSettle(r);
25
+ }, [onSettle]);
26
+ useEffect(() => () => {
27
+ if (!settledRef.current) {
28
+ onSettle({
29
+ code: 0,
30
+ data: [],
31
+ message: 'cancelled'
32
+ });
33
+ settledRef.current = true;
34
+ }
35
+ }, [onSettle]);
36
+ const {
37
+ hasPermission,
38
+ requestPermission
39
+ } = useCameraPermission();
40
+ const [state, setState] = useState(hasPermission ? 'granted' : 'pending');
41
+ useEffect(() => {
42
+ if (hasPermission) {
43
+ setState('granted');
44
+ return;
45
+ }
46
+ let cancelled = false;
47
+ // 5.x:Android 并行 requestPermission 调用会 leak coroutine(issue #3834),
48
+ // 必须 .catch(() => {}) 兜底;依赖 hasPermission 作为 source of truth
49
+ requestPermission().then(ok => {
50
+ if (cancelled) return;
51
+ setState(ok ? 'granted' : 'denied');
52
+ }).catch(() => {
53
+ if (cancelled) return;
54
+ setState('denied');
55
+ });
56
+ return () => {
57
+ cancelled = true;
58
+ };
59
+ }, [hasPermission, requestPermission]);
60
+
61
+ // 5.x:physicalDevices 字符串不带 -camera;单 'wide-angle' 规避 iOS #3773
62
+ const device = useCameraDevice('back', {
63
+ physicalDevices: ['wide-angle']
64
+ });
65
+ const cameraRef = useRef(null);
66
+ const [photos, setPhotos] = useState([]);
67
+ const [previewing, setPreviewing] = useState(false);
68
+ const [recording, setRecording] = useState(false);
69
+ const [modeIndex, setModeIndex] = useState(0);
70
+ const currentMode = config.cameraMode[modeIndex];
71
+ const [flash, setFlash] = useState('off');
72
+ const [aspectRatio, setAspectRatio] = useState('4:3');
73
+ const zoomShared = useSharedValue(NEUTRAL_ZOOM);
74
+ const [lensLabel, setLensLabel] = useState(`${NEUTRAL_ZOOM.toFixed(1)}x`);
75
+ const onShutter = async () => {
76
+ if (currentMode?.mode === 'video') {
77
+ if (!recording) {
78
+ await cameraRef.current?.startVideo();
79
+ setRecording(true);
80
+ } else {
81
+ const f = await cameraRef.current?.stopVideo();
82
+ setRecording(false);
83
+ if (f) {
84
+ setPhotos([f]);
85
+ setPreviewing(true);
86
+ } else {
87
+ settle({
88
+ code: 503,
89
+ data: [],
90
+ message: 'video_failed'
91
+ });
92
+ }
93
+ }
94
+ return;
95
+ }
96
+ const f = await cameraRef.current?.capture();
97
+ if (!f) {
98
+ settle({
99
+ code: 500,
100
+ data: photos,
101
+ message: 'capture_failed'
102
+ });
103
+ return;
104
+ }
105
+ setPhotos(prev => [...prev, f]);
106
+ if (currentMode?.mode !== 'continuous') {
107
+ setPreviewing(true);
108
+ }
109
+ };
110
+ if (state === 'denied') {
111
+ return /*#__PURE__*/_jsx(NoPermission, {
112
+ onCancel: () => settle({
113
+ code: 403,
114
+ data: [],
115
+ message: 'permission_denied'
116
+ }),
117
+ onOpenSettings: () => Linking.openSettings()
118
+ });
119
+ }
120
+ if (state === 'pending') {
121
+ return /*#__PURE__*/_jsx(View, {
122
+ style: styles.root,
123
+ testID: "permission-pending",
124
+ children: /*#__PURE__*/_jsx(Loading, {})
125
+ });
126
+ }
127
+ if (previewing) {
128
+ return /*#__PURE__*/_jsx(PreViewContainer, {
129
+ files: photos,
130
+ onRetake: () => {
131
+ setPhotos([]);
132
+ setPreviewing(false);
133
+ },
134
+ onConfirm: () => settle({
135
+ code: 200,
136
+ data: photos,
137
+ message: 'ok'
138
+ })
139
+ });
140
+ }
141
+ if (device == null) {
142
+ return /*#__PURE__*/_jsx(NoCamera, {
143
+ onCancel: () => settle({
144
+ code: 404,
145
+ data: [],
146
+ message: 'no_device'
147
+ })
148
+ });
149
+ }
150
+ if (currentMode == null) {
151
+ return /*#__PURE__*/_jsx(NoCamera, {
152
+ onCancel: () => settle({
153
+ code: 500,
154
+ data: [],
155
+ message: 'invalid_config'
156
+ })
157
+ });
158
+ }
159
+ const onToggleLens = () => {
160
+ if (lensLabel.startsWith(device.minZoom.toFixed(1))) {
161
+ zoomShared.value = NEUTRAL_ZOOM;
162
+ setLensLabel(`${NEUTRAL_ZOOM.toFixed(1)}x`);
163
+ } else {
164
+ zoomShared.value = device.minZoom;
165
+ setLensLabel(`${device.minZoom.toFixed(1)}x`);
166
+ }
167
+ };
168
+ return /*#__PURE__*/_jsxs(View, {
169
+ style: styles.root,
170
+ testID: "device-ready",
171
+ children: [/*#__PURE__*/_jsx(Camera, {
172
+ ref: cameraRef,
173
+ device: device,
174
+ currentMode: currentMode,
175
+ flash: flash,
176
+ aspectRatio: aspectRatio,
177
+ zoomShared: zoomShared
178
+ }), !previewing && /*#__PURE__*/_jsx(SetUp, {
179
+ flash: flash,
180
+ aspectRatio: aspectRatio,
181
+ onChangeFlash: setFlash,
182
+ onChangeAspectRatio: setAspectRatio,
183
+ onToggleLens: onToggleLens,
184
+ lensLabel: lensLabel
185
+ }), /*#__PURE__*/_jsx(Footer, {
186
+ modes: config.cameraMode,
187
+ currentIndex: modeIndex,
188
+ recording: recording,
189
+ onShutter: onShutter,
190
+ onSelectMode: i => {
191
+ if (config.dataRetainedMode === 'clear' && i !== modeIndex) {
192
+ setPhotos([]);
193
+ }
194
+ setModeIndex(i);
195
+ },
196
+ onCancel: () => settle({
197
+ code: 0,
198
+ data: [],
199
+ message: 'cancelled'
200
+ }),
201
+ onFinishBurst: currentMode?.mode === 'continuous' ? () => setPreviewing(true) : undefined,
202
+ burstCount: currentMode?.mode === 'continuous' ? photos.length : undefined
203
+ })]
204
+ });
205
+ }
29
206
  const styles = StyleSheet.create({
30
- modal: {
31
- flex: 1,
32
- margin: 0,
33
- backgroundColor: '#fff'
34
- },
35
- container: {
36
- flex: 1
37
- },
38
- headerContainer: {
39
- marginHorizontal: 12,
40
- marginBottom: 12,
41
- height: 25,
42
- display: 'flex',
43
- alignItems: 'flex-end'
44
- },
45
- img: {
46
- width: 25,
47
- height: 25
48
- },
49
- children: {
50
- display: 'flex',
207
+ root: {
51
208
  flex: 1,
209
+ // 相机主容器固定黑底:相机 UX 惯例(预览 / 拍照取景需要黑底凸显),
210
+ // 不走 c.background token.
211
+ backgroundColor: '#000',
52
212
  justifyContent: 'center',
53
213
  alignItems: 'center'
54
214
  }
@@ -1 +1 @@
1
- {"version":3,"names":["Image","SafeAreaView","StyleSheet","TouchableNativeFeedback","View","React","Container","children","onCancel","createElement","style","styles","container","headerContainer","onPress","img","source","require","create","modal","flex","margin","backgroundColor","marginHorizontal","marginBottom","height","display","alignItems","width","justifyContent"],"sourceRoot":"../../../src","sources":["camera/Container.tsx"],"mappings":"AAAA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SACEA,KAAK,EACLC,YAAY,EACZC,UAAU,EACVC,uBAAuB,EACvBC,IAAI,QACC,cAAc;AACrB,OAAOC,KAAK,MAA2C,OAAO;AAE9D,MAAMC,SAA2D,GAAGA,CAAC;EACnEC,QAAQ;EACRC;AACF,CAAC,KAAK;EACJ,oBACEH,KAAA,CAAAI,aAAA,CAACR,YAAY;IAACS,KAAK,EAAEC,MAAM,CAACC;EAAU,gBACpCP,KAAA,CAAAI,aAAA,CAACL,IAAI;IAACM,KAAK,EAAEC,MAAM,CAACE;EAAgB,gBAClCR,KAAA,CAAAI,aAAA,CAACN,uBAAuB;IAACW,OAAO,EAAEN;EAAS,gBACzCH,KAAA,CAAAI,aAAA,CAACT,KAAK;IAACU,KAAK,EAAEC,MAAM,CAACI,GAAI;IAACC,MAAM,EAAEC,OAAO,CAAC,qBAAqB;EAAE,CAAE,CAC5C,CACrB,CAAC,eACPZ,KAAA,CAAAI,aAAA,CAACL,IAAI;IAACM,KAAK,EAAEC,MAAM,CAACJ;EAAS,GAAEA,QAAe,CAClC,CAAC;AAEnB,CAAC;AAED,eAAeD,SAAS;AAExB,MAAMK,MAAM,GAAGT,UAAU,CAACgB,MAAM,CAAC;EAC/BC,KAAK,EAAE;IACLC,IAAI,EAAE,CAAC;IACPC,MAAM,EAAE,CAAC;IACTC,eAAe,EAAE;EACnB,CAAC;EACDV,SAAS,EAAE;IAAEQ,IAAI,EAAE;EAAE,CAAC;EACtBP,eAAe,EAAE;IACfU,gBAAgB,EAAE,EAAE;IACpBC,YAAY,EAAE,EAAE;IAChBC,MAAM,EAAE,EAAE;IACVC,OAAO,EAAE,MAAM;IACfC,UAAU,EAAE;EACd,CAAC;EACDZ,GAAG,EAAE;IACHa,KAAK,EAAE,EAAE;IACTH,MAAM,EAAE;EACV,CAAC;EACDlB,QAAQ,EAAE;IACRmB,OAAO,EAAE,MAAM;IACfN,IAAI,EAAE,CAAC;IACPS,cAAc,EAAE,QAAQ;IACxBF,UAAU,EAAE;EACd;AACF,CAAC,CAAC","ignoreList":[]}
1
+ {"version":3,"names":["useCallback","useEffect","useRef","useState","Linking","StyleSheet","View","useCameraDevice","useCameraPermission","useSharedValue","NoCamera","NoPermission","Loading","Camera","PreViewContainer","Footer","SetUp","jsx","_jsx","jsxs","_jsxs","NEUTRAL_ZOOM","Container","config","onSettle","settledRef","settle","r","current","code","data","message","hasPermission","requestPermission","state","setState","cancelled","then","ok","catch","device","physicalDevices","cameraRef","photos","setPhotos","previewing","setPreviewing","recording","setRecording","modeIndex","setModeIndex","currentMode","cameraMode","flash","setFlash","aspectRatio","setAspectRatio","zoomShared","lensLabel","setLensLabel","toFixed","onShutter","mode","startVideo","f","stopVideo","capture","prev","onCancel","onOpenSettings","openSettings","style","styles","root","testID","children","files","onRetake","onConfirm","onToggleLens","startsWith","minZoom","value","ref","onChangeFlash","onChangeAspectRatio","modes","currentIndex","onSelectMode","i","dataRetainedMode","onFinishBurst","undefined","burstCount","length","create","flex","backgroundColor","justifyContent","alignItems"],"sourceRoot":"../../../src","sources":["camera/Container.tsx"],"mappings":"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","ignoreList":[]}
@@ -1,23 +1,28 @@
1
- import { Button, StyleSheet, Text, View } from 'react-native';
2
- import React from 'react';
3
- const Error = ({
4
- data,
5
- onPress
6
- }) => {
7
- return /*#__PURE__*/React.createElement(View, {
8
- style: styles.main
9
- }, /*#__PURE__*/React.createElement(Button, {
10
- onPress: onPress,
11
- title: "\u5173\u95ED"
12
- }), /*#__PURE__*/React.createElement(Text, null, "code:", data === null || data === void 0 ? void 0 : data.code, "||''\u9519\u8BEF"), /*#__PURE__*/React.createElement(Text, null, "message:", data === null || data === void 0 ? void 0 : data.message, "||\u9519\u8BEF"), /*#__PURE__*/React.createElement(Text, null, "cause:", JSON.stringify(data === null || data === void 0 ? void 0 : data.cause)));
13
- };
14
- export default Error;
15
- const styles = StyleSheet.create({
16
- main: {
1
+ "use strict";
2
+
3
+ import { StyleSheet, View } from 'react-native';
4
+ import { Empty, r, useThemedStyles } from '@unif/react-native-design';
5
+ import { jsx as _jsx } from "react/jsx-runtime";
6
+ export function ErrorView({
7
+ message
8
+ }) {
9
+ const styles = useThemedStyles(makeStyles);
10
+ return /*#__PURE__*/_jsx(View, {
11
+ style: styles.root,
12
+ testID: "error-view",
13
+ children: /*#__PURE__*/_jsx(Empty, {
14
+ icon: "error-alert",
15
+ title: message
16
+ })
17
+ });
18
+ }
19
+ const makeStyles = c => StyleSheet.create({
20
+ root: {
17
21
  flex: 1,
18
- display: 'flex',
22
+ justifyContent: 'center',
19
23
  alignItems: 'center',
20
- justifyContent: 'center'
24
+ padding: r(24),
25
+ backgroundColor: c.background
21
26
  }
22
27
  });
23
28
  //# sourceMappingURL=Error.js.map
@@ -1 +1 @@
1
- {"version":3,"names":["Button","StyleSheet","Text","View","React","Error","data","onPress","createElement","style","styles","main","title","code","message","JSON","stringify","cause","create","flex","display","alignItems","justifyContent"],"sourceRoot":"../../../src","sources":["camera/Error.tsx"],"mappings":"AAAA,SAASA,MAAM,EAAEC,UAAU,EAAEC,IAAI,EAAEC,IAAI,QAAQ,cAAc;AAC7D,OAAOC,KAAK,MAAM,OAAO;AAGzB,MAAMC,KAAoE,GAAGA,CAAC;EAC5EC,IAAI;EACJC;AACF,CAAC,KAAK;EACJ,oBACEH,KAAA,CAAAI,aAAA,CAACL,IAAI;IAACM,KAAK,EAAEC,MAAM,CAACC;EAAK,gBACvBP,KAAA,CAAAI,aAAA,CAACR,MAAM;IAACO,OAAO,EAAEA,OAAQ;IAACK,KAAK,EAAC;EAAI,CAAE,CAAC,eACvCR,KAAA,CAAAI,aAAA,CAACN,IAAI,QAAC,OAAK,EAACI,IAAI,aAAJA,IAAI,uBAAJA,IAAI,CAAEO,IAAI,EAAC,kBAAY,CAAC,eACpCT,KAAA,CAAAI,aAAA,CAACN,IAAI,QAAC,UAAQ,EAACI,IAAI,aAAJA,IAAI,uBAAJA,IAAI,CAAEQ,OAAO,EAAC,gBAAU,CAAC,eACxCV,KAAA,CAAAI,aAAA,CAACN,IAAI,QAAC,QAAM,EAACa,IAAI,CAACC,SAAS,CAACV,IAAI,aAAJA,IAAI,uBAAJA,IAAI,CAAEW,KAAK,CAAQ,CAC3C,CAAC;AAEX,CAAC;AAED,eAAeZ,KAAK;AAEpB,MAAMK,MAAM,GAAGT,UAAU,CAACiB,MAAM,CAAC;EAC/BP,IAAI,EAAE;IACJQ,IAAI,EAAE,CAAC;IACPC,OAAO,EAAE,MAAM;IACfC,UAAU,EAAE,QAAQ;IACpBC,cAAc,EAAE;EAClB;AACF,CAAC,CAAC","ignoreList":[]}
1
+ {"version":3,"names":["StyleSheet","View","Empty","r","useThemedStyles","jsx","_jsx","ErrorView","message","styles","makeStyles","style","root","testID","children","icon","title","c","create","flex","justifyContent","alignItems","padding","backgroundColor","background"],"sourceRoot":"../../../src","sources":["camera/Error.tsx"],"mappings":";;AAAA,SAASA,UAAU,EAAEC,IAAI,QAAQ,cAAc;AAC/C,SACEC,KAAK,EACLC,CAAC,EACDC,eAAe,QAEV,2BAA2B;AAAC,SAAAC,GAAA,IAAAC,IAAA;AAEnC,OAAO,SAASC,SAASA,CAAC;EAAEC;AAA6B,CAAC,EAAE;EAC1D,MAAMC,MAAM,GAAGL,eAAe,CAACM,UAAU,CAAC;EAC1C,oBACEJ,IAAA,CAACL,IAAI;IAACU,KAAK,EAAEF,MAAM,CAACG,IAAK;IAACC,MAAM,EAAC,YAAY;IAAAC,QAAA,eAC3CR,IAAA,CAACJ,KAAK;MAACa,IAAI,EAAC,aAAa;MAACC,KAAK,EAAER;IAAQ,CAAE;EAAC,CACxC,CAAC;AAEX;AAEA,MAAME,UAAU,GAAIO,CAAc,IAChCjB,UAAU,CAACkB,MAAM,CAAC;EAChBN,IAAI,EAAE;IACJO,IAAI,EAAE,CAAC;IACPC,cAAc,EAAE,QAAQ;IACxBC,UAAU,EAAE,QAAQ;IACpBC,OAAO,EAAEnB,CAAC,CAAC,EAAE,CAAC;IACdoB,eAAe,EAAEN,CAAC,CAACO;EACrB;AACF,CAAC,CAAC","ignoreList":[]}
@@ -1,56 +1,50 @@
1
- /*
2
- * @Author: 刘利军
3
- * @Date: 2024-12-02 13:48:40
4
- * @LastEditors: 刘利军
5
- * @LastEditTime: 2025-01-17 08:44:43
6
- * @Description: 聚焦指示器组件
7
- * @PageName:
8
- */
1
+ "use strict";
9
2
 
10
- import { StyleSheet, Animated } from 'react-native';
11
- import React, { useRef, useEffect } from 'react';
12
- const FocusIndicator = ({
13
- x,
14
- y
15
- }) => {
16
- const scale = useRef(new Animated.Value(1.2));
17
- const opacity = useRef(new Animated.Value(1));
3
+ import { useEffect, useRef } from 'react';
4
+ import { Animated, StyleSheet } from 'react-native';
5
+ import { r } from '@unif/react-native-design';
6
+ import { jsx as _jsx } from "react/jsx-runtime";
7
+ const SIZE = r(80);
8
+ export function FocusIndicator({
9
+ point,
10
+ onAnimationEnd
11
+ }) {
12
+ const scale = useRef(new Animated.Value(1.6)).current;
13
+ const opacity = useRef(new Animated.Value(1)).current;
18
14
  useEffect(() => {
19
- scale.current.setValue(1.2);
20
- opacity.current.setValue(1);
21
- Animated.parallel([Animated.timing(scale.current, {
15
+ Animated.parallel([Animated.timing(scale, {
22
16
  toValue: 1,
23
17
  duration: 200,
24
18
  useNativeDriver: true
25
- }), Animated.timing(opacity.current, {
19
+ }), Animated.sequence([Animated.delay(600), Animated.timing(opacity, {
26
20
  toValue: 0,
27
- duration: 500,
28
- delay: 400,
21
+ duration: 200,
29
22
  useNativeDriver: true
30
- })]).start();
31
- }, [x, y]);
32
- const size = 70;
33
- return /*#__PURE__*/React.createElement(Animated.View, {
34
- style: [styles.focusIndicator, {
35
- left: x - size / 2,
36
- top: y - size / 2,
37
- width: size,
38
- height: size,
23
+ })])]).start(() => onAnimationEnd());
24
+ }, [scale, opacity, onAnimationEnd]);
25
+ return /*#__PURE__*/_jsx(Animated.View, {
26
+ style: [styles.box, {
27
+ left: point.x - SIZE / 2,
28
+ top: point.y - SIZE / 2,
39
29
  transform: [{
40
- scale: scale.current
30
+ scale
41
31
  }],
42
- opacity: opacity.current
43
- }]
32
+ opacity
33
+ }],
34
+ pointerEvents: "none",
35
+ testID: "focus-indicator"
44
36
  });
45
- };
46
- export default FocusIndicator;
37
+ }
47
38
  const styles = StyleSheet.create({
48
- focusIndicator: {
39
+ box: {
49
40
  position: 'absolute',
50
- borderRadius: 35,
51
- backgroundColor: 'rgba(255, 255, 255, 0.2)',
52
- zIndex: 999,
53
- elevation: 10
41
+ width: SIZE,
42
+ height: SIZE,
43
+ borderWidth: 1.5,
44
+ // 对焦黄框:相机 UX 惯例(iOS / Android 系统相机统一用饱和黄高对比度),
45
+ // 不走主题 token —— 任何主题下都需要在镜头预览(黑底为主)上一眼可见.
46
+ borderColor: 'yellow',
47
+ borderRadius: r(6)
54
48
  }
55
49
  });
56
50
  //# sourceMappingURL=FocusIndicator.js.map
@@ -1 +1 @@
1
- {"version":3,"names":["StyleSheet","Animated","React","useRef","useEffect","FocusIndicator","x","y","scale","Value","opacity","current","setValue","parallel","timing","toValue","duration","useNativeDriver","delay","start","size","createElement","View","style","styles","focusIndicator","left","top","width","height","transform","create","position","borderRadius","backgroundColor","zIndex","elevation"],"sourceRoot":"../../../src","sources":["camera/FocusIndicator.tsx"],"mappings":"AAAA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA,SAASA,UAAU,EAAEC,QAAQ,QAAQ,cAAc;AACnD,OAAOC,KAAK,IAAIC,MAAM,EAAEC,SAAS,QAAQ,OAAO;AAOhD,MAAMC,cAA6C,GAAGA,CAAC;EAAEC,CAAC;EAAEC;AAAE,CAAC,KAAK;EAClE,MAAMC,KAAK,GAAGL,MAAM,CAAC,IAAIF,QAAQ,CAACQ,KAAK,CAAC,GAAG,CAAC,CAAC;EAC7C,MAAMC,OAAO,GAAGP,MAAM,CAAC,IAAIF,QAAQ,CAACQ,KAAK,CAAC,CAAC,CAAC,CAAC;EAE7CL,SAAS,CAAC,MAAM;IACdI,KAAK,CAACG,OAAO,CAACC,QAAQ,CAAC,GAAG,CAAC;IAC3BF,OAAO,CAACC,OAAO,CAACC,QAAQ,CAAC,CAAC,CAAC;IAE3BX,QAAQ,CAACY,QAAQ,CAAC,CAChBZ,QAAQ,CAACa,MAAM,CAACN,KAAK,CAACG,OAAO,EAAE;MAC7BI,OAAO,EAAE,CAAC;MACVC,QAAQ,EAAE,GAAG;MACbC,eAAe,EAAE;IACnB,CAAC,CAAC,EACFhB,QAAQ,CAACa,MAAM,CAACJ,OAAO,CAACC,OAAO,EAAE;MAC/BI,OAAO,EAAE,CAAC;MACVC,QAAQ,EAAE,GAAG;MACbE,KAAK,EAAE,GAAG;MACVD,eAAe,EAAE;IACnB,CAAC,CAAC,CACH,CAAC,CAACE,KAAK,CAAC,CAAC;EACZ,CAAC,EAAE,CAACb,CAAC,EAAEC,CAAC,CAAC,CAAC;EAEV,MAAMa,IAAI,GAAG,EAAE;EAEf,oBACElB,KAAA,CAAAmB,aAAA,CAACpB,QAAQ,CAACqB,IAAI;IACZC,KAAK,EAAE,CACLC,MAAM,CAACC,cAAc,EACrB;MACEC,IAAI,EAAEpB,CAAC,GAAGc,IAAI,GAAG,CAAC;MAClBO,GAAG,EAAEpB,CAAC,GAAGa,IAAI,GAAG,CAAC;MACjBQ,KAAK,EAAER,IAAI;MACXS,MAAM,EAAET,IAAI;MACZU,SAAS,EAAE,CAAC;QAAEtB,KAAK,EAAEA,KAAK,CAACG;MAAQ,CAAC,CAAC;MACrCD,OAAO,EAAEA,OAAO,CAACC;IACnB,CAAC;EACD,CACH,CAAC;AAEN,CAAC;AAED,eAAeN,cAAc;AAE7B,MAAMmB,MAAM,GAAGxB,UAAU,CAAC+B,MAAM,CAAC;EAC/BN,cAAc,EAAE;IACdO,QAAQ,EAAE,UAAU;IACpBC,YAAY,EAAE,EAAE;IAChBC,eAAe,EAAE,0BAA0B;IAC3CC,MAAM,EAAE,GAAG;IACXC,SAAS,EAAE;EACb;AACF,CAAC,CAAC","ignoreList":[]}
1
+ {"version":3,"names":["useEffect","useRef","Animated","StyleSheet","r","jsx","_jsx","SIZE","FocusIndicator","point","onAnimationEnd","scale","Value","current","opacity","parallel","timing","toValue","duration","useNativeDriver","sequence","delay","start","View","style","styles","box","left","x","top","y","transform","pointerEvents","testID","create","position","width","height","borderWidth","borderColor","borderRadius"],"sourceRoot":"../../../src","sources":["camera/FocusIndicator.tsx"],"mappings":";;AAAA,SAASA,SAAS,EAAEC,MAAM,QAAQ,OAAO;AACzC,SAASC,QAAQ,EAAEC,UAAU,QAAQ,cAAc;AACnD,SAASC,CAAC,QAAQ,2BAA2B;AAAC,SAAAC,GAAA,IAAAC,IAAA;AAK9C,MAAMC,IAAI,GAAGH,CAAC,CAAC,EAAE,CAAC;AAElB,OAAO,SAASI,cAAcA,CAAC;EAAEC,KAAK;EAAEC;AAAsB,CAAC,EAAE;EAC/D,MAAMC,KAAK,GAAGV,MAAM,CAAC,IAAIC,QAAQ,CAACU,KAAK,CAAC,GAAG,CAAC,CAAC,CAACC,OAAO;EACrD,MAAMC,OAAO,GAAGb,MAAM,CAAC,IAAIC,QAAQ,CAACU,KAAK,CAAC,CAAC,CAAC,CAAC,CAACC,OAAO;EAErDb,SAAS,CAAC,MAAM;IACdE,QAAQ,CAACa,QAAQ,CAAC,CAChBb,QAAQ,CAACc,MAAM,CAACL,KAAK,EAAE;MACrBM,OAAO,EAAE,CAAC;MACVC,QAAQ,EAAE,GAAG;MACbC,eAAe,EAAE;IACnB,CAAC,CAAC,EACFjB,QAAQ,CAACkB,QAAQ,CAAC,CAChBlB,QAAQ,CAACmB,KAAK,CAAC,GAAG,CAAC,EACnBnB,QAAQ,CAACc,MAAM,CAACF,OAAO,EAAE;MACvBG,OAAO,EAAE,CAAC;MACVC,QAAQ,EAAE,GAAG;MACbC,eAAe,EAAE;IACnB,CAAC,CAAC,CACH,CAAC,CACH,CAAC,CAACG,KAAK,CAAC,MAAMZ,cAAc,CAAC,CAAC,CAAC;EAClC,CAAC,EAAE,CAACC,KAAK,EAAEG,OAAO,EAAEJ,cAAc,CAAC,CAAC;EAEpC,oBACEJ,IAAA,CAACJ,QAAQ,CAACqB,IAAI;IACZC,KAAK,EAAE,CACLC,MAAM,CAACC,GAAG,EACV;MACEC,IAAI,EAAElB,KAAK,CAACmB,CAAC,GAAGrB,IAAI,GAAG,CAAC;MACxBsB,GAAG,EAAEpB,KAAK,CAACqB,CAAC,GAAGvB,IAAI,GAAG,CAAC;MACvBwB,SAAS,EAAE,CAAC;QAAEpB;MAAM,CAAC,CAAC;MACtBG;IACF,CAAC,CACD;IACFkB,aAAa,EAAC,MAAM;IACpBC,MAAM,EAAC;EAAiB,CACzB,CAAC;AAEN;AAEA,MAAMR,MAAM,GAAGtB,UAAU,CAAC+B,MAAM,CAAC;EAC/BR,GAAG,EAAE;IACHS,QAAQ,EAAE,UAAU;IACpBC,KAAK,EAAE7B,IAAI;IACX8B,MAAM,EAAE9B,IAAI;IACZ+B,WAAW,EAAE,GAAG;IAChB;IACA;IACAC,WAAW,EAAE,QAAQ;IACrBC,YAAY,EAAEpC,CAAC,CAAC,CAAC;EACnB;AACF,CAAC,CAAC","ignoreList":[]}
@@ -1,28 +1,35 @@
1
- /*
2
- * @Author: 刘利军
3
- * @Date: 2024-01-10 10:56:25
4
- * @LastEditors: 刘利军
5
- * @LastEditTime: 2024-12-20 16:02:36
6
- * @Description:
7
- * @PageName:
8
- */
9
- import { Modal, StyleSheet } from 'react-native';
1
+ "use strict";
2
+
10
3
  import React from 'react';
11
- const ModalView = ({
12
- children,
13
- visible
14
- }) => {
15
- return /*#__PURE__*/React.createElement(Modal, {
16
- style: styles.modal,
4
+ import { Modal, StyleSheet, View } from 'react-native';
5
+ import { SafeAreaProvider } from 'react-native-safe-area-context';
6
+ import { ThemeProvider } from '@unif/react-native-design';
7
+ import { jsx as _jsx } from "react/jsx-runtime";
8
+ export function ModalView({
9
+ visible,
10
+ onClose,
11
+ children
12
+ }) {
13
+ return /*#__PURE__*/_jsx(Modal, {
14
+ visible: visible,
17
15
  animationType: "slide",
18
- visible: visible
19
- }, children);
20
- };
21
- export default ModalView;
16
+ statusBarTranslucent: true,
17
+ onRequestClose: onClose,
18
+ testID: "camera-modal",
19
+ children: /*#__PURE__*/_jsx(SafeAreaProvider, {
20
+ children: /*#__PURE__*/_jsx(ThemeProvider, {
21
+ children: /*#__PURE__*/_jsx(View, {
22
+ style: styles.root,
23
+ children: children
24
+ })
25
+ })
26
+ })
27
+ });
28
+ }
22
29
  const styles = StyleSheet.create({
23
- modal: {
30
+ // 相机 Modal 根视图固定黑底:相机 UX 惯例,与 Container / 预览系列一致.
31
+ root: {
24
32
  flex: 1,
25
- margin: 0,
26
33
  backgroundColor: '#000'
27
34
  }
28
35
  });
@@ -1 +1 @@
1
- {"version":3,"names":["Modal","StyleSheet","React","ModalView","children","visible","createElement","style","styles","modal","animationType","create","flex","margin","backgroundColor"],"sourceRoot":"../../../src","sources":["camera/ModalView.tsx"],"mappings":"AAAA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAASA,KAAK,EAAEC,UAAU,QAAQ,cAAc;AAChD,OAAOC,KAAK,MAAkC,OAAO;AAErD,MAAMC,SAA4D,GAAGA,CAAC;EACpEC,QAAQ;EACRC;AACF,CAAC,KAAK;EACJ,oBACEH,KAAA,CAAAI,aAAA,CAACN,KAAK;IAACO,KAAK,EAAEC,MAAM,CAACC,KAAM;IAACC,aAAa,EAAC,OAAO;IAACL,OAAO,EAAEA;EAAQ,GAChED,QACI,CAAC;AAEZ,CAAC;AAED,eAAeD,SAAS;AAExB,MAAMK,MAAM,GAAGP,UAAU,CAACU,MAAM,CAAC;EAC/BF,KAAK,EAAE;IACLG,IAAI,EAAE,CAAC;IACPC,MAAM,EAAE,CAAC;IACTC,eAAe,EAAE;EACnB;AACF,CAAC,CAAC","ignoreList":[]}
1
+ {"version":3,"names":["React","Modal","StyleSheet","View","SafeAreaProvider","ThemeProvider","jsx","_jsx","ModalView","visible","onClose","children","animationType","statusBarTranslucent","onRequestClose","testID","style","styles","root","create","flex","backgroundColor"],"sourceRoot":"../../../src","sources":["camera/ModalView.tsx"],"mappings":";;AAAA,OAAOA,KAAK,MAAM,OAAO;AACzB,SAASC,KAAK,EAAEC,UAAU,EAAEC,IAAI,QAAQ,cAAc;AACtD,SAASC,gBAAgB,QAAQ,gCAAgC;AACjE,SAASC,aAAa,QAAQ,2BAA2B;AAAC,SAAAC,GAAA,IAAAC,IAAA;AAQ1D,OAAO,SAASC,SAASA,CAAC;EAAEC,OAAO;EAAEC,OAAO;EAAEC;AAAgB,CAAC,EAAE;EAC/D,oBACEJ,IAAA,CAACN,KAAK;IACJQ,OAAO,EAAEA,OAAQ;IACjBG,aAAa,EAAC,OAAO;IACrBC,oBAAoB;IACpBC,cAAc,EAAEJ,OAAQ;IACxBK,MAAM,EAAC,cAAc;IAAAJ,QAAA,eAErBJ,IAAA,CAACH,gBAAgB;MAAAO,QAAA,eACfJ,IAAA,CAACF,aAAa;QAAAM,QAAA,eACZJ,IAAA,CAACJ,IAAI;UAACa,KAAK,EAAEC,MAAM,CAACC,IAAK;UAAAP,QAAA,EAAEA;QAAQ,CAAO;MAAC,CAC9B;IAAC,CACA;EAAC,CACd,CAAC;AAEZ;AAEA,MAAMM,MAAM,GAAGf,UAAU,CAACiB,MAAM,CAAC;EAC/B;EACAD,IAAI,EAAE;IAAEE,IAAI,EAAE,CAAC;IAAEC,eAAe,EAAE;EAAO;AAC3C,CAAC,CAAC","ignoreList":[]}
@@ -1,15 +1,39 @@
1
- /*
2
- * @Author: 刘利军
3
- * @Date: 2024-01-10 10:56:25
4
- * @LastEditors: 刘利军
5
- * @LastEditTime: 2024-01-17 16:34:19
6
- * @Description:
7
- * @PageName:
8
- */
9
- import { Text } from 'react-native';
10
- import React from 'react';
11
- const NoCamera = () => {
12
- return /*#__PURE__*/React.createElement(Text, null, "\u672A\u68C0\u6D4B\u5230\u6444\u50CF\u5934,\u8BF7\u91CD\u8BD5!");
13
- };
14
- export default NoCamera;
1
+ "use strict";
2
+
3
+ import { StyleSheet, View } from 'react-native';
4
+ import { Button, Empty, r, useThemedStyles } from '@unif/react-native-design';
5
+ import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
6
+ export function NoCamera({
7
+ onCancel
8
+ }) {
9
+ const styles = useThemedStyles(makeStyles);
10
+ return /*#__PURE__*/_jsxs(View, {
11
+ style: styles.root,
12
+ testID: "no-camera",
13
+ children: [/*#__PURE__*/_jsx(Empty, {
14
+ icon: "camera-off",
15
+ title: "\u672A\u68C0\u6D4B\u5230\u53EF\u7528\u76F8\u673A"
16
+ }), /*#__PURE__*/_jsx(View, {
17
+ style: styles.row,
18
+ children: /*#__PURE__*/_jsx(Button, {
19
+ variant: "primary",
20
+ label: "\u5173\u95ED",
21
+ onPress: onCancel,
22
+ testID: "close-btn"
23
+ })
24
+ })]
25
+ });
26
+ }
27
+ const makeStyles = c => StyleSheet.create({
28
+ root: {
29
+ flex: 1,
30
+ justifyContent: 'center',
31
+ alignItems: 'center',
32
+ padding: r(24),
33
+ backgroundColor: c.background
34
+ },
35
+ row: {
36
+ marginTop: r(16)
37
+ }
38
+ });
15
39
  //# sourceMappingURL=NoCamera.js.map
@@ -1 +1 @@
1
- {"version":3,"names":["Text","React","NoCamera","createElement"],"sourceRoot":"../../../src","sources":["camera/NoCamera.tsx"],"mappings":"AAAA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAASA,IAAI,QAAQ,cAAc;AACnC,OAAOC,KAAK,MAAM,OAAO;AAEzB,MAAMC,QAAkB,GAAGA,CAAA,KAAM;EAC/B,oBAAOD,KAAA,CAAAE,aAAA,CAACH,IAAI,QAAC,gEAAkB,CAAC;AAClC,CAAC;AAED,eAAeE,QAAQ","ignoreList":[]}
1
+ {"version":3,"names":["StyleSheet","View","Button","Empty","r","useThemedStyles","jsx","_jsx","jsxs","_jsxs","NoCamera","onCancel","styles","makeStyles","style","root","testID","children","icon","title","row","variant","label","onPress","c","create","flex","justifyContent","alignItems","padding","backgroundColor","background","marginTop"],"sourceRoot":"../../../src","sources":["camera/NoCamera.tsx"],"mappings":";;AAAA,SAASA,UAAU,EAAEC,IAAI,QAAQ,cAAc;AAC/C,SACEC,MAAM,EACNC,KAAK,EACLC,CAAC,EACDC,eAAe,QAEV,2BAA2B;AAAC,SAAAC,GAAA,IAAAC,IAAA,EAAAC,IAAA,IAAAC,KAAA;AAInC,OAAO,SAASC,QAAQA,CAAC;EAAEC;AAAgB,CAAC,EAAE;EAC5C,MAAMC,MAAM,GAAGP,eAAe,CAACQ,UAAU,CAAC;EAC1C,oBACEJ,KAAA,CAACR,IAAI;IAACa,KAAK,EAAEF,MAAM,CAACG,IAAK;IAACC,MAAM,EAAC,WAAW;IAAAC,QAAA,gBAC1CV,IAAA,CAACJ,KAAK;MAACe,IAAI,EAAC,YAAY;MAACC,KAAK,EAAC;IAAU,CAAE,CAAC,eAC5CZ,IAAA,CAACN,IAAI;MAACa,KAAK,EAAEF,MAAM,CAACQ,GAAI;MAAAH,QAAA,eACtBV,IAAA,CAACL,MAAM;QACLmB,OAAO,EAAC,SAAS;QACjBC,KAAK,EAAC,cAAI;QACVC,OAAO,EAAEZ,QAAS;QAClBK,MAAM,EAAC;MAAW,CACnB;IAAC,CACE,CAAC;EAAA,CACH,CAAC;AAEX;AAEA,MAAMH,UAAU,GAAIW,CAAc,IAChCxB,UAAU,CAACyB,MAAM,CAAC;EAChBV,IAAI,EAAE;IACJW,IAAI,EAAE,CAAC;IACPC,cAAc,EAAE,QAAQ;IACxBC,UAAU,EAAE,QAAQ;IACpBC,OAAO,EAAEzB,CAAC,CAAC,EAAE,CAAC;IACd0B,eAAe,EAAEN,CAAC,CAACO;EACrB,CAAC;EACDX,GAAG,EAAE;IAAEY,SAAS,EAAE5B,CAAC,CAAC,EAAE;EAAE;AAC1B,CAAC,CAAC","ignoreList":[]}