@cloudbase/weda-ui 2.0.28 → 3.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 (411) hide show
  1. package/package.json +12 -13
  2. package/src/configs/actions/showModal.json +0 -48
  3. package/src/configs/actions/showToast.json +0 -41
  4. package/src/configs/components/auth.json +0 -16
  5. package/src/configs/components/button.json +0 -239
  6. package/src/configs/components/calendar.json +0 -81
  7. package/src/configs/components/carousel.json +0 -292
  8. package/src/configs/components/chart/bar.json +0 -721
  9. package/src/configs/components/chart/line.json +0 -674
  10. package/src/configs/components/chart/pie.json +0 -494
  11. package/src/configs/components/chart/statisticsCard.json +0 -376
  12. package/src/configs/components/container.json +0 -50
  13. package/src/configs/components/dataView.json +0 -151
  14. package/src/configs/components/drawer.json +0 -115
  15. package/src/configs/components/form/checkbox.json +0 -173
  16. package/src/configs/components/form/form.json +0 -45
  17. package/src/configs/components/form/input.json +0 -154
  18. package/src/configs/components/form/label.json +0 -22
  19. package/src/configs/components/form/location.json +0 -155
  20. package/src/configs/components/form/radio.json +0 -203
  21. package/src/configs/components/form/richText.json +0 -125
  22. package/src/configs/components/form/select.json +0 -411
  23. package/src/configs/components/form/switch.json +0 -58
  24. package/src/configs/components/form/textarea.json +0 -116
  25. package/src/configs/components/form/tips.json +0 -34
  26. package/src/configs/components/form/uploader.json +0 -169
  27. package/src/configs/components/form/uploaderFile.json +0 -158
  28. package/src/configs/components/graphicCard.json +0 -413
  29. package/src/configs/components/image.json +0 -179
  30. package/src/configs/components/link.json +0 -79
  31. package/src/configs/components/listView.json +0 -281
  32. package/src/configs/components/lottery.json +0 -157
  33. package/src/configs/components/modal.json +0 -83
  34. package/src/configs/components/navLayout.json +0 -368
  35. package/src/configs/components/navigationBar.json +0 -62
  36. package/src/configs/components/picker/datePicker.json +0 -33
  37. package/src/configs/components/picker/picker.json +0 -18
  38. package/src/configs/components/picker/timePicker.json +0 -23
  39. package/src/configs/components/richtextview.json +0 -26
  40. package/src/configs/components/scrollVeiw.json +0 -253
  41. package/src/configs/components/slot.json +0 -17
  42. package/src/configs/components/swiper.json +0 -90
  43. package/src/configs/components/tabs.json +0 -121
  44. package/src/configs/components/text.json +0 -95
  45. package/src/configs/components/wedaVideo.json +0 -89
  46. package/src/configs/components/wxOpenApi/phone.json +0 -127
  47. package/src/configs/components/wxOpenApi/phoneCode.json +0 -109
  48. package/src/configs/components/wxOpenApi/share.json +0 -157
  49. package/src/configs/components/wxOpenApi/userInfo.json +0 -156
  50. package/src/configs/index.js +0 -111
  51. package/src/index.js +0 -4
  52. package/src/mp/README.md +0 -1
  53. package/src/mp/actions/showModal/index.js +0 -3
  54. package/src/mp/actions/showToast/index.js +0 -3
  55. package/src/mp/components/button/index.js +0 -91
  56. package/src/mp/components/button/index.json +0 -4
  57. package/src/mp/components/button/index.wxml +0 -22
  58. package/src/mp/components/button/index.wxss +0 -13
  59. package/src/mp/components/calendar/arrowright--line.svg +0 -11
  60. package/src/mp/components/calendar/index.js +0 -268
  61. package/src/mp/components/calendar/index.json +0 -5
  62. package/src/mp/components/calendar/index.wxml +0 -35
  63. package/src/mp/components/calendar/index.wxss +0 -179
  64. package/src/mp/components/carousel/index.js +0 -88
  65. package/src/mp/components/carousel/index.json +0 -7
  66. package/src/mp/components/carousel/index.wxml +0 -6
  67. package/src/mp/components/chart/bar/index.js +0 -257
  68. package/src/mp/components/chart/bar/index.json +0 -6
  69. package/src/mp/components/chart/bar/index.wxml +0 -3
  70. package/src/mp/components/chart/bar/index.wxss +0 -9
  71. package/src/mp/components/chart/common/config/bar.js +0 -50
  72. package/src/mp/components/chart/common/config/global.js +0 -16
  73. package/src/mp/components/chart/common/config/line.js +0 -48
  74. package/src/mp/components/chart/common/config/pie.js +0 -36
  75. package/src/mp/components/chart/common/core/eChartBar.js +0 -258
  76. package/src/mp/components/chart/common/core/eChartBase.js +0 -389
  77. package/src/mp/components/chart/common/core/eChartLine.js +0 -223
  78. package/src/mp/components/chart/common/core/eChartPie.js +0 -169
  79. package/src/mp/components/chart/common/lib/echarts.min.js +0 -18
  80. package/src/mp/components/chart/ec-canvas/ec-canvas.js +0 -277
  81. package/src/mp/components/chart/ec-canvas/ec-canvas.json +0 -4
  82. package/src/mp/components/chart/ec-canvas/ec-canvas.wxml +0 -4
  83. package/src/mp/components/chart/ec-canvas/ec-canvas.wxss +0 -4
  84. package/src/mp/components/chart/ec-canvas/wx-canvas.js +0 -109
  85. package/src/mp/components/chart/line/index.js +0 -247
  86. package/src/mp/components/chart/line/index.json +0 -6
  87. package/src/mp/components/chart/line/index.wxml +0 -3
  88. package/src/mp/components/chart/line/index.wxss +0 -9
  89. package/src/mp/components/chart/pie/index.js +0 -182
  90. package/src/mp/components/chart/pie/index.json +0 -6
  91. package/src/mp/components/chart/pie/index.wxml +0 -3
  92. package/src/mp/components/chart/pie/index.wxss +0 -9
  93. package/src/mp/components/chart/statisticsCard/index.js +0 -253
  94. package/src/mp/components/chart/statisticsCard/index.json +0 -4
  95. package/src/mp/components/chart/statisticsCard/index.wxml +0 -9
  96. package/src/mp/components/chart/statisticsCard/index.wxss +0 -42
  97. package/src/mp/components/container/index.js +0 -20
  98. package/src/mp/components/container/index.json +0 -4
  99. package/src/mp/components/container/index.wxml +0 -3
  100. package/src/mp/components/dataView/index.js +0 -34
  101. package/src/mp/components/dataView/index.json +0 -7
  102. package/src/mp/components/dataView/index.wxml +0 -3
  103. package/src/mp/components/dataView/index.wxss +0 -0
  104. package/src/mp/components/form/checkbox/index.js +0 -124
  105. package/src/mp/components/form/checkbox/index.json +0 -7
  106. package/src/mp/components/form/checkbox/index.wxml +0 -13
  107. package/src/mp/components/form/checkbox/index.wxss +0 -1
  108. package/src/mp/components/form/form/index.js +0 -18
  109. package/src/mp/components/form/form/index.json +0 -4
  110. package/src/mp/components/form/form/index.wxml +0 -5
  111. package/src/mp/components/form/form/index.wxss +0 -1
  112. package/src/mp/components/form/formcell/index.js +0 -54
  113. package/src/mp/components/form/formcell/index.json +0 -4
  114. package/src/mp/components/form/formcell/index.wxml +0 -11
  115. package/src/mp/components/form/formcell/index.wxss +0 -31
  116. package/src/mp/components/form/input/index.js +0 -110
  117. package/src/mp/components/form/input/index.json +0 -7
  118. package/src/mp/components/form/input/index.wxml +0 -24
  119. package/src/mp/components/form/input/index.wxss +0 -22
  120. package/src/mp/components/form/location/components/mapChoose/index.js +0 -201
  121. package/src/mp/components/form/location/components/mapChoose/index.json +0 -4
  122. package/src/mp/components/form/location/components/mapChoose/index.wxml +0 -42
  123. package/src/mp/components/form/location/components/mapChoose/index.wxss +0 -188
  124. package/src/mp/components/form/location/index.js +0 -388
  125. package/src/mp/components/form/location/index.json +0 -6
  126. package/src/mp/components/form/location/index.wxml +0 -21
  127. package/src/mp/components/form/location/index.wxss +0 -89
  128. package/src/mp/components/form/radio/index.js +0 -124
  129. package/src/mp/components/form/radio/index.json +0 -7
  130. package/src/mp/components/form/radio/index.wxml +0 -13
  131. package/src/mp/components/form/radio/index.wxss +0 -1
  132. package/src/mp/components/form/select/index.js +0 -677
  133. package/src/mp/components/form/select/index.json +0 -7
  134. package/src/mp/components/form/select/index.wxml +0 -12
  135. package/src/mp/components/form/select/index.wxss +0 -16
  136. package/src/mp/components/form/select/region/index.js +0 -107
  137. package/src/mp/components/form/switch/index.js +0 -75
  138. package/src/mp/components/form/switch/index.json +0 -7
  139. package/src/mp/components/form/switch/index.wxml +0 -11
  140. package/src/mp/components/form/switch/index.wxss +0 -1
  141. package/src/mp/components/form/textarea/index.js +0 -90
  142. package/src/mp/components/form/textarea/index.json +0 -7
  143. package/src/mp/components/form/textarea/index.wxml +0 -8
  144. package/src/mp/components/form/textarea/index.wxss +0 -10
  145. package/src/mp/components/form/tips/index.js +0 -41
  146. package/src/mp/components/form/tips/index.json +0 -4
  147. package/src/mp/components/form/tips/index.wxml +0 -1
  148. package/src/mp/components/form/tips/index.wxss +0 -1
  149. package/src/mp/components/form/uploader/index.js +0 -158
  150. package/src/mp/components/form/uploader/index.json +0 -10
  151. package/src/mp/components/form/uploader/index.wxml +0 -14
  152. package/src/mp/components/form/uploader/index.wxss +0 -36
  153. package/src/mp/components/form/uploader/weui-uploader.js +0 -219
  154. package/src/mp/components/form/uploader/weui-uploader.json +0 -7
  155. package/src/mp/components/form/uploader/weui-uploader.wxml +0 -45
  156. package/src/mp/components/form/uploader/weui-uploader.wxss +0 -1
  157. package/src/mp/components/form/uploaderFile/index.js +0 -313
  158. package/src/mp/components/form/uploaderFile/index.json +0 -9
  159. package/src/mp/components/form/uploaderFile/index.wxml +0 -45
  160. package/src/mp/components/form/uploaderFile/index.wxss +0 -105
  161. package/src/mp/components/graphicCard/chevron-right.svg +0 -3
  162. package/src/mp/components/graphicCard/index.js +0 -203
  163. package/src/mp/components/graphicCard/index.json +0 -4
  164. package/src/mp/components/graphicCard/index.wxml +0 -25
  165. package/src/mp/components/graphicCard/index.wxss +0 -157
  166. package/src/mp/components/image/index.js +0 -182
  167. package/src/mp/components/image/index.json +0 -7
  168. package/src/mp/components/image/index.wxml +0 -9
  169. package/src/mp/components/image/index.wxss +0 -49
  170. package/src/mp/components/listView/arrow-right-line.svg +0 -3
  171. package/src/mp/components/listView/index.js +0 -274
  172. package/src/mp/components/listView/index.json +0 -4
  173. package/src/mp/components/listView/index.wxml +0 -38
  174. package/src/mp/components/listView/index.wxss +0 -155
  175. package/src/mp/components/listView/more-line.svg +0 -3
  176. package/src/mp/components/lottery/index.js +0 -270
  177. package/src/mp/components/lottery/index.json +0 -4
  178. package/src/mp/components/lottery/index.wxml +0 -41
  179. package/src/mp/components/lottery/index.wxss +0 -323
  180. package/src/mp/components/modal/index.js +0 -39
  181. package/src/mp/components/modal/index.json +0 -4
  182. package/src/mp/components/modal/index.wxml +0 -1
  183. package/src/mp/components/navLayout/index.js +0 -120
  184. package/src/mp/components/navLayout/index.json +0 -7
  185. package/src/mp/components/navLayout/index.wxml +0 -23
  186. package/src/mp/components/navLayout/index.wxss +0 -1193
  187. package/src/mp/components/navigationBar/index.js +0 -204
  188. package/src/mp/components/navigationBar/index.json +0 -5
  189. package/src/mp/components/navigationBar/index.wxml +0 -80
  190. package/src/mp/components/navigationBar/index.wxss +0 -1257
  191. package/src/mp/components/richText/index.js +0 -67
  192. package/src/mp/components/richText/index.json +0 -4
  193. package/src/mp/components/richText/index.wxml +0 -3
  194. package/src/mp/components/richText/index.wxss +0 -27
  195. package/src/mp/components/scrollView/index.js +0 -119
  196. package/src/mp/components/scrollView/index.json +0 -4
  197. package/src/mp/components/scrollView/index.wxml +0 -38
  198. package/src/mp/components/slot/index.js +0 -20
  199. package/src/mp/components/slot/index.json +0 -4
  200. package/src/mp/components/slot/index.wxml +0 -3
  201. package/src/mp/components/swiper/index.js +0 -65
  202. package/src/mp/components/swiper/index.json +0 -4
  203. package/src/mp/components/swiper/index.wxml +0 -3
  204. package/src/mp/components/tabs/index.js +0 -59
  205. package/src/mp/components/tabs/index.json +0 -4
  206. package/src/mp/components/tabs/index.wxml +0 -12
  207. package/src/mp/components/tabs/index.wxss +0 -57
  208. package/src/mp/components/text/index.js +0 -40
  209. package/src/mp/components/text/index.json +0 -4
  210. package/src/mp/components/text/index.wxml +0 -1
  211. package/src/mp/components/text/index.wxss +0 -26
  212. package/src/mp/components/wedaVideo/index.js +0 -86
  213. package/src/mp/components/wedaVideo/index.json +0 -4
  214. package/src/mp/components/wedaVideo/index.wxml +0 -4
  215. package/src/mp/components/wedaVideo/index.wxss +0 -20
  216. package/src/mp/components/wxOpenApi/phone/index.js +0 -109
  217. package/src/mp/components/wxOpenApi/phone/index.json +0 -4
  218. package/src/mp/components/wxOpenApi/phone/index.wxml +0 -4
  219. package/src/mp/components/wxOpenApi/phone/index.wxss +0 -22
  220. package/src/mp/components/wxOpenApi/phoneCode/index.js +0 -89
  221. package/src/mp/components/wxOpenApi/phoneCode/index.json +0 -4
  222. package/src/mp/components/wxOpenApi/phoneCode/index.wxml +0 -4
  223. package/src/mp/components/wxOpenApi/phoneCode/index.wxss +0 -22
  224. package/src/mp/components/wxOpenApi/share/index.js +0 -117
  225. package/src/mp/components/wxOpenApi/share/index.json +0 -4
  226. package/src/mp/components/wxOpenApi/share/index.wxml +0 -4
  227. package/src/mp/components/wxOpenApi/share/index.wxss +0 -22
  228. package/src/mp/components/wxOpenApi/userInfo/index.js +0 -88
  229. package/src/mp/components/wxOpenApi/userInfo/index.json +0 -4
  230. package/src/mp/components/wxOpenApi/userInfo/index.wxml +0 -4
  231. package/src/mp/components/wxOpenApi/userInfo/index.wxss +0 -22
  232. package/src/mp/index.json +0 -52
  233. package/src/mp/package.json +0 -6
  234. package/src/mp/style/weda-ui.wxss +0 -71
  235. package/src/mp/utils/classnames.js +0 -39
  236. package/src/mp/utils/constant.js +0 -20
  237. package/src/mp/utils/dayjs.min.js +0 -1
  238. package/src/mp/utils/debounce.js +0 -133
  239. package/src/mp/utils/deepEqual.js +0 -42
  240. package/src/mp/utils/destr.js +0 -49
  241. package/src/mp/utils/dr_square_point.js +0 -29
  242. package/src/mp/utils/handleEvents.js +0 -32
  243. package/src/mp/utils/lodash.js +0 -2
  244. package/src/mp/utils/platform.js +0 -45
  245. package/src/mp/utils/qqmap-wx-jssdk1.2/qqmap-wx-jssdk.js +0 -1336
  246. package/src/mp/utils/spark-md5.js +0 -776
  247. package/src/mp/utils/tcb.js +0 -90
  248. package/src/setupTests.js +0 -14
  249. package/src/web/actions/index.js +0 -2
  250. package/src/web/actions/showModal/index.tsx +0 -118
  251. package/src/web/actions/showToast/index.js +0 -3
  252. package/src/web/components/auth/index.css +0 -0
  253. package/src/web/components/auth/index.js +0 -66
  254. package/src/web/components/button/index.css +0 -27
  255. package/src/web/components/button/index.tsx +0 -119
  256. package/src/web/components/calendar/index.css +0 -416
  257. package/src/web/components/calendar/index.jsx +0 -312
  258. package/src/web/components/calendar/util.js +0 -90
  259. package/src/web/components/carousel/index.css +0 -119
  260. package/src/web/components/carousel/index.tsx +0 -417
  261. package/src/web/components/chart/bar/index.tsx +0 -140
  262. package/src/web/components/chart/common/config/bar.js +0 -49
  263. package/src/web/components/chart/common/config/global.js +0 -16
  264. package/src/web/components/chart/common/config/line.js +0 -50
  265. package/src/web/components/chart/common/config/pie.js +0 -37
  266. package/src/web/components/chart/common/core/eChartBar.js +0 -259
  267. package/src/web/components/chart/common/core/eChartBase.ts +0 -396
  268. package/src/web/components/chart/common/core/eChartLine.js +0 -225
  269. package/src/web/components/chart/common/core/eChartPie.js +0 -173
  270. package/src/web/components/chart/common/core/type.ts +0 -34
  271. package/src/web/components/chart/common/echart.css +0 -106
  272. package/src/web/components/chart/common/echarts.ts +0 -31
  273. package/src/web/components/chart/common/useChart.tsx +0 -87
  274. package/src/web/components/chart/line/index.tsx +0 -136
  275. package/src/web/components/chart/pie/index.tsx +0 -99
  276. package/src/web/components/chart/statisticsCard/index.css +0 -63
  277. package/src/web/components/chart/statisticsCard/index.tsx +0 -307
  278. package/src/web/components/chart/statisticsCard/interface.ts +0 -14
  279. package/src/web/components/container/index.tsx +0 -34
  280. package/src/web/components/dataView/index.tsx +0 -20
  281. package/src/web/components/dataView/interface.ts +0 -6
  282. package/src/web/components/drawer/index.tsx +0 -68
  283. package/src/web/components/form/checkbox/index.tsx +0 -210
  284. package/src/web/components/form/enumSelect/MultipleSelect.jsx +0 -89
  285. package/src/web/components/form/enumSelect/NormalSelect.tsx +0 -92
  286. package/src/web/components/form/enumSelect/SelectContainer.jsx +0 -43
  287. package/src/web/components/form/enumSelect/index.jsx +0 -9
  288. package/src/web/components/form/enumSelect/props/defaultProps.js +0 -39
  289. package/src/web/components/form/enumSelect/props/propsTypes.js +0 -50
  290. package/src/web/components/form/form/index.css +0 -9
  291. package/src/web/components/form/form/index.tsx +0 -51
  292. package/src/web/components/form/formcell/index.css +0 -85
  293. package/src/web/components/form/formcell/index.tsx +0 -85
  294. package/src/web/components/form/input/index.css +0 -40
  295. package/src/web/components/form/input/index.tsx +0 -166
  296. package/src/web/components/form/location/common/mapChoose.css +0 -180
  297. package/src/web/components/form/location/common/mapChoose.jsx +0 -343
  298. package/src/web/components/form/location/common/mapView.jsx +0 -190
  299. package/src/web/components/form/location/common/propsConfig.js +0 -54
  300. package/src/web/components/form/location/common/selectModal.css +0 -44
  301. package/src/web/components/form/location/common/selectModal.jsx +0 -73
  302. package/src/web/components/form/location/common/useLocationInfo.js +0 -104
  303. package/src/web/components/form/location/components/LocationH5/index.css +0 -239
  304. package/src/web/components/form/location/components/LocationH5/location.h5.jsx +0 -413
  305. package/src/web/components/form/location/components/LocationPC/Header.jsx +0 -96
  306. package/src/web/components/form/location/components/LocationPC/index.css +0 -44
  307. package/src/web/components/form/location/components/LocationPC/location.PC.jsx +0 -332
  308. package/src/web/components/form/location/constants.js +0 -4
  309. package/src/web/components/form/location/index.css +0 -0
  310. package/src/web/components/form/location/index.jsx +0 -25
  311. package/src/web/components/form/radio/index.css +0 -12
  312. package/src/web/components/form/radio/index.tsx +0 -179
  313. package/src/web/components/form/renderDecorator.tsx +0 -28
  314. package/src/web/components/form/select/h5.tsx +0 -602
  315. package/src/web/components/form/select/index.css +0 -27
  316. package/src/web/components/form/select/index.tsx +0 -510
  317. package/src/web/components/form/select/region/index.ts +0 -152
  318. package/src/web/components/form/select/time.jsx +0 -145
  319. package/src/web/components/form/select/year.tsx +0 -172
  320. package/src/web/components/form/switch/index.tsx +0 -100
  321. package/src/web/components/form/textarea/index.css +0 -11
  322. package/src/web/components/form/textarea/index.tsx +0 -127
  323. package/src/web/components/form/tips/index.css +0 -4
  324. package/src/web/components/form/tips/index.tsx +0 -34
  325. package/src/web/components/form/types.d.ts +0 -12
  326. package/src/web/components/form/uploader/index.css +0 -118
  327. package/src/web/components/form/uploader/index.tsx +0 -65
  328. package/src/web/components/form/uploader/uploader.h5.tsx +0 -290
  329. package/src/web/components/form/uploader/uploader.pc.tsx +0 -287
  330. package/src/web/components/form/uploaderFile/fail.svg +0 -12
  331. package/src/web/components/form/uploaderFile/index.css +0 -422
  332. package/src/web/components/form/uploaderFile/index.jsx +0 -25
  333. package/src/web/components/form/uploaderFile/pending.svg +0 -18
  334. package/src/web/components/form/uploaderFile/success.svg +0 -12
  335. package/src/web/components/form/uploaderFile/uploadFile.h5.tsx +0 -606
  336. package/src/web/components/form/uploaderFile/uploadFile.pc.tsx +0 -520
  337. package/src/web/components/graphicCard/index.css +0 -159
  338. package/src/web/components/graphicCard/index.tsx +0 -310
  339. package/src/web/components/image/image.tsx +0 -187
  340. package/src/web/components/image/index.css +0 -54
  341. package/src/web/components/image/index.tsx +0 -121
  342. package/src/web/components/index.js +0 -95
  343. package/src/web/components/link/index.css +0 -8
  344. package/src/web/components/link/index.tsx +0 -119
  345. package/src/web/components/listView/arrow-right-line.svg +0 -3
  346. package/src/web/components/listView/index.css +0 -143
  347. package/src/web/components/listView/index.tsx +0 -346
  348. package/src/web/components/listView/interface.ts +0 -98
  349. package/src/web/components/lottery/index.css +0 -333
  350. package/src/web/components/lottery/index.tsx +0 -567
  351. package/src/web/components/lottery/lotteryUtil.ts +0 -130
  352. package/src/web/components/modal/index.tsx +0 -60
  353. package/src/web/components/navLayout/index.css +0 -332
  354. package/src/web/components/navLayout/index.tsx +0 -247
  355. package/src/web/components/navigationBar/chevron-right--double.svg +0 -3
  356. package/src/web/components/navigationBar/common.tsx +0 -203
  357. package/src/web/components/navigationBar/h5Menu.tsx +0 -179
  358. package/src/web/components/navigationBar/horizontalMenu.tsx +0 -201
  359. package/src/web/components/navigationBar/index.css +0 -762
  360. package/src/web/components/navigationBar/index.tsx +0 -231
  361. package/src/web/components/navigationBar/type.d.ts +0 -118
  362. package/src/web/components/navigationBar/verticalMenu.tsx +0 -81
  363. package/src/web/components/phone/index.css +0 -0
  364. package/src/web/components/phone/index.tsx +0 -22
  365. package/src/web/components/phoneCode/index.css +0 -0
  366. package/src/web/components/phoneCode/index.tsx +0 -22
  367. package/src/web/components/picker/datePicker.tsx +0 -48
  368. package/src/web/components/picker/picker.tsx +0 -59
  369. package/src/web/components/picker/timePicker.tsx +0 -56
  370. package/src/web/components/richText/const.ts +0 -3
  371. package/src/web/components/richText/index.css +0 -93
  372. package/src/web/components/richText/index.jsx +0 -473
  373. package/src/web/components/richTextView/index.css +0 -63
  374. package/src/web/components/richTextView/index.tsx +0 -63
  375. package/src/web/components/scrollView/index.tsx +0 -148
  376. package/src/web/components/share/index.css +0 -0
  377. package/src/web/components/share/index.tsx +0 -38
  378. package/src/web/components/slot/index.tsx +0 -19
  379. package/src/web/components/swiper/index.css +0 -106
  380. package/src/web/components/swiper/index.tsx +0 -291
  381. package/src/web/components/tabs/index.css +0 -64
  382. package/src/web/components/tabs/index.tsx +0 -35
  383. package/src/web/components/tabs/tabs.h5.tsx +0 -84
  384. package/src/web/components/tabs/tabs.pc.tsx +0 -74
  385. package/src/web/components/text/index.css +0 -26
  386. package/src/web/components/text/index.tsx +0 -60
  387. package/src/web/components/uploaderFileView/index.css +0 -11
  388. package/src/web/components/uploaderFileView/index.jsx +0 -84
  389. package/src/web/components/uploaderView/index.css +0 -31
  390. package/src/web/components/uploaderView/index.tsx +0 -92
  391. package/src/web/components/userInfo/index.css +0 -0
  392. package/src/web/components/userInfo/index.tsx +0 -30
  393. package/src/web/components/wedaVideo/index.css +0 -42
  394. package/src/web/components/wedaVideo/index.tsx +0 -208
  395. package/src/web/index.js +0 -4
  396. package/src/web/types.d.ts +0 -21
  397. package/src/web/utils/classnames.js +0 -39
  398. package/src/web/utils/constant.ts +0 -23
  399. package/src/web/utils/debounce.js +0 -98
  400. package/src/web/utils/events.js +0 -2
  401. package/src/web/utils/getLocalCounter.js +0 -5
  402. package/src/web/utils/isObjectEqual.js +0 -15
  403. package/src/web/utils/loading-fallback.tsx +0 -2
  404. package/src/web/utils/lodash.ts +0 -2
  405. package/src/web/utils/platform.js +0 -170
  406. package/src/web/utils/tcb.js +0 -86
  407. package/src/web/utils/tmap.js +0 -4
  408. package/src/web/utils/useSetState.ts +0 -18
  409. package/src/web/utils/useSyncValue.ts +0 -17
  410. package/src/web/utils/weui.js +0 -3
  411. package/src/web/weda-ui.css +0 -90
@@ -1,25 +0,0 @@
1
- /* eslint-disable react/prop-types */
2
- import * as React from 'react';
3
- import { usePlatform } from '../../../utils/platform';
4
- import { UploadFileH5 as UploaderH5 } from './uploadFile.h5';
5
- import { UploadFilePc } from './uploadFile.pc';
6
-
7
- import './index.css';
8
-
9
- /**
10
- * 文件组件上传,区分 h5端/pc端
11
- */
12
- export default function UploaderFile(props) {
13
- const platform = usePlatform();
14
- if (props?.showType === 'pc') {
15
- return <UploadFilePc {...props} />;
16
- }
17
- if (props?.showType === 'h5') {
18
- return <UploaderH5 {...props} />;
19
- }
20
- return platform === 'h5' ? (
21
- <UploaderH5 {...props} />
22
- ) : (
23
- <UploadFilePc {...props} />
24
- );
25
- }
@@ -1,18 +0,0 @@
1
- <?xml version="1.0" encoding="UTF-8"?>
2
- <svg width="14px" height="14px" viewBox="0 0 14 14" version="1.1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink">
3
- <title>Icon</title>
4
- <g id="页面-1" stroke="none" stroke-width="1" fill="none" fill-rule="evenodd">
5
- <g id="pc" transform="translate(-651.000000, -394.000000)">
6
- <g id="上传/批量上传中备份" transform="translate(372.000000, 147.000000)">
7
- <g id="内容列" transform="translate(0.000000, 107.000000)">
8
- <g transform="translate(254.000000, 126.000000)" id="编组">
9
- <g transform="translate(24.000000, 13.000000)" id="1.Bace基础/3.Icon图标/操作/move">
10
- <path d="M0,0 L16,0 L16,16 L0,16 L0,0 Z" id="time-filled-(Background)"></path>
11
- <path d="M15,8 C15,4.13400674 11.8659935,1 8,1 C4.13400674,1 1,4.13400674 1,8 C1,11.8659935 4.13400674,15 8,15 C11.8659935,15 15,11.8659935 15,8 Z M7.5,8.3889246 L10.6466904,11.5356159 L11.3537979,10.8285084 L8.5,7.97471142 L8.5,5 L7.5,5 L7.5,8.3889246 Z" id="time-filled" fill-opacity="0.4" fill="#000000"></path>
12
- </g>
13
- </g>
14
- </g>
15
- </g>
16
- </g>
17
- </g>
18
- </svg>
@@ -1,12 +0,0 @@
1
- <?xml version="1.0" encoding="UTF-8"?>
2
- <svg width="16px" height="16px" viewBox="0 0 14 14" version="1.1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink">
3
- <title>1.Bace基础/3.Icon图标/操作/move</title>
4
- <g id="页面-1" stroke="none" stroke-width="1" fill="none" fill-rule="evenodd">
5
- <g id="画板" transform="translate(-104.000000, -120.000000)">
6
- <g id="1.Bace基础/3.Icon图标/操作/move" transform="translate(103.000000, 119.000000)">
7
- <path d="M0,0 L16,0 L16,16 L0,16 L0,0 Z" id="check-circle-filled-(Background)"></path>
8
- <path d="M15,8 C15,4.13400674 11.8659935,1 8,1 C4.13400674,1 1,4.13400674 1,8 C1,11.8659935 4.13400674,15 8,15 C11.8659935,15 15,11.8659935 15,8 Z M7,10.7069998 L11.5,6.20749998 L10.7924995,5.5 L7,9.29300022 L5.20650005,7.5 L4.5,8.20650005 L7,10.7069998 Z" id="check-circle-filled" fill="#00A870"></path>
9
- </g>
10
- </g>
11
- </g>
12
- </svg>
@@ -1,606 +0,0 @@
1
- import * as React from 'react';
2
- import weui from '../../../utils/weui';
3
- import type { CommonFormPropsType } from '../types';
4
- import isObjectEqual from '../../../utils/isObjectEqual';
5
- import {
6
- ConfigProvider,
7
- Button,
8
- Icon,
9
- Text,
10
- List,
11
- Progress,
12
- Tooltip,
13
- } from 'tea-component';
14
- import {
15
- filterStrList,
16
- isCloudFileID,
17
- isHttpFileID,
18
- transSize,
19
- downloadFile,
20
- transFileCloudidToName,
21
- randomUuid,
22
- } from '../../../utils/platform';
23
- import { getCloudInstance, getTempFileURL } from '../../../utils/tcb';
24
- import classNames from '../../../utils/classnames';
25
- import { renderDecorator } from '../renderDecorator';
26
- // 默认组件类前缀
27
- const CLASS_PREFIX = 'weda-upload-file-mobile';
28
- // 默认图片类型
29
- export const FILES_TYPES = [
30
- '.doc',
31
- '.docx',
32
- '.xml',
33
- 'application/msword',
34
- 'application/vnd.openxmlformats-officedocument.wordprocessingml.document',
35
- ];
36
- // 上传状态字典
37
- const statusMap = {
38
- UPLOAD_STATUS_PENDING: { title: '等待上传', icon: 'pending' },
39
- UPLOAD_STATUS_LOADING: { title: '上传中', icon: 'loading' },
40
- UPLOAD_STATUS_SUCCESS: { title: '上传成功', icon: 'success' },
41
- UPLOAD_STATUS_ERROR: { title: '上传失败', icon: 'error' },
42
- };
43
- // 上传文件Context
44
- const FileContext = React.createContext(null);
45
- /**
46
- * 上传文件 H5 版本
47
- */
48
- export function UploadFileH5({
49
- // 系统属性
50
- layout,
51
- id = '',
52
- style = { margin: '0,-5px' },
53
- labelVisible = true,
54
- label = '上传文件',
55
- requiredFlag = false,
56
- disabled = false,
57
- className = '',
58
- acceptTypes = [],
59
- // 组件属性
60
- tips = '',
61
- btnTitle = '点击上传',
62
- maxUploadCount = 9,
63
- maxSize = 10,
64
- deleteVisible = true,
65
- downloadVisible = true,
66
- value = [], // 需要兼容 cloud:和https: 协议,需要兼容字符串和字符串数组
67
- events = { success: null, error: null, change: null },
68
- defaultValue,
69
- uploadPath = 'weda-uploader',
70
- single = true,
71
- onChange = null,
72
- isEdit = true,
73
- }: IUploadFileH5) {
74
- const [fileIDList, setfileIDList] = React.useState(
75
- filterStrList([].concat(defaultValue, value))
76
- ); // 上传成功文件ID列表,fileID[]
77
- const [fileList, setFileList] = React.useState([]); // 上传中的文件列表,file[],file为原始文件 + uuid属性
78
- const [fileSizeObj, setFileSizeObj] = React.useState({}); // 管理上传文件大小 {uuid:size}
79
- // 两次默认值不同, 需要刷新
80
- const prevDefaultRef = React.useRef<any>([]);
81
- const fileRef = React.useRef(fileIDList);
82
- React.useMemo(() => {
83
- //有有效默认值时不刷新,解决初次渲染默认值不显示问题
84
- if (
85
- defaultValue &&
86
- !isObjectEqual(prevDefaultRef.current, defaultValue) &&
87
- (JSON.stringify(prevDefaultRef.current) == '[]' ||
88
- !prevDefaultRef.current)
89
- ) {
90
- prevDefaultRef.current = defaultValue;
91
- setfileIDList(filterStrList([].concat(defaultValue)));
92
- }
93
- }, [defaultValue]);
94
- React.useEffect(() => {
95
- // 外部 onChange 事件
96
- const pureFileIDList = fileIDList.filter(
97
- (d) => isCloudFileID(d) || isHttpFileID(d)
98
- );
99
- if (single) {
100
- const file = pureFileIDList[0] || '';
101
- file && onChange && onChange(file);
102
- events?.change?.({ value: file });
103
- } else {
104
- onChange && onChange(pureFileIDList);
105
- events?.change?.({ value: pureFileIDList });
106
- }
107
- if (!isObjectEqual(fileRef.current, fileIDList)) {
108
- events?.success?.({ value: pureFileIDList });
109
- fileRef.current = fileIDList;
110
- }
111
- }, [fileIDList]);
112
-
113
- // 外层组件类
114
- const cls = classNames({
115
- 'weda-ui': true,
116
- //'weui-cells': true,
117
- //'weui-cells_form': true,
118
- 'weui-cells_checkbox': true,
119
- [className]: className,
120
- });
121
- const accepts = React.useMemo(() => {
122
- return acceptTypes.includes('*') || acceptTypes.length === 0
123
- ? ['*']
124
- : Array.from(new Set(acceptTypes));
125
- }, [acceptTypes]);
126
-
127
- // 上传后文件列表 fileIDList 改变事件,'add'|'delete'
128
- const handleChange = ({ fileID, uuid, type, size }) => {
129
- // 上传时新增事件
130
- if (type === 'add') {
131
- fileID && setFileSizeObj((obj) => ({ ...obj, [fileID]: size }));
132
- fileID && setfileIDList([...fileIDList, fileID]);
133
- } else {
134
- fileID && setfileIDList(fileIDList.filter((f) => f !== fileID));
135
- }
136
- uuid && setFileList((list) => list.filter((item) => uuid !== item?._uuid));
137
- };
138
-
139
- // 上传组件属性
140
- const uploadProps = {
141
- multiple: !single,
142
- };
143
- tips && (uploadProps['label'] = tips);
144
- maxSize && (uploadProps['maxSize'] = maxSize * 1024 * 1024);
145
- const btnDisabled =
146
- fileIDList.length >= maxUploadCount ||
147
- (single && fileIDList.length > 0) ||
148
- disabled;
149
-
150
- return renderDecorator(
151
- <ConfigProvider classPrefix="wedatea2td">
152
- <FileContext.Provider
153
- value={{
154
- uploadPath,
155
- downloadVisible,
156
- deleteVisible,
157
- onChange: handleChange,
158
- isEdit,
159
- events,
160
- fileSizeObj,
161
- }}
162
- >
163
- <div data-testid="uploadFileH5" className={cls} id={id} style={style}>
164
- <div className={classNames(`${CLASS_PREFIX}`)}>
165
- {isEdit && (
166
- <div className={classNames(`${CLASS_PREFIX}__hd`, layout)}>
167
- <div>
168
- {btnDisabled ? (
169
- <Button
170
- type="weak"
171
- className={classNames(`${CLASS_PREFIX}__btn--weak`)}
172
- disabled={btnDisabled}
173
- >
174
- {btnTitle}
175
- </Button>
176
- ) : (
177
- <div>
178
- <input
179
- id="uploaderInput"
180
- type="file"
181
- data-testid="button-up"
182
- className="weui-uploader-mobile__input"
183
- accept={accepts.join(',')}
184
- multiple={!single}
185
- onChange={(e) => {
186
- const fileList = [...e.target.files];
187
- if (single && fileList.length > 1) {
188
- weui.alert(`上传文件总数不能超过1个`);
189
- return false;
190
- }
191
- if (
192
- fileList.length + fileIDList.length >
193
- maxUploadCount
194
- ) {
195
- weui.alert(
196
- `上传文件总数不能超过${maxUploadCount}个`
197
- );
198
- return false;
199
- }
200
- if (
201
- maxSize &&
202
- fileList.some((f) => f.size > maxSize * 1024 * 1024)
203
- ) {
204
- weui.alert(`请上传不超过${maxSize}M的文件`);
205
- return false;
206
- }
207
- if (
208
- fileList.some((f) => f.size > 1024 * 1024 * 1024)
209
- ) {
210
- weui.alert(`请上传不超过1024M的文件`);
211
- return false;
212
- }
213
- fileList.forEach((f) => (f['_uuid'] = randomUuid()));
214
- setFileList((list) => [...list, ...fileList]);
215
- }}
216
- />
217
- <a
218
- type="weak"
219
- className="wedatea2td-btn wedatea2td-btn--weak"
220
- style={{ fontSize: '1em' }}
221
- >
222
- 点击上传
223
- </a>
224
- {!single && (
225
- <Text className={`${CLASS_PREFIX}__tips`}>
226
- 支持批量上传
227
- </Text>
228
- )}
229
- </div>
230
- )}
231
- </div>
232
- </div>
233
- )}
234
- <div className={`${CLASS_PREFIX}__bd`}>
235
- <List>
236
- {fileIDList.map((d) => (
237
- <List.Item key={d}>
238
- {
239
- <TcbFileEcho
240
- fileID={d}
241
- fileList={fileList}
242
- onChange={handleChange}
243
- deleteVisible={deleteVisible}
244
- downloadVisible={downloadVisible}
245
- />
246
- }
247
- </List.Item>
248
- ))}
249
- {fileList.map((item) => (
250
- <List.Item key={item?._uuid}>
251
- {
252
- <TcbFileUpload
253
- file={item}
254
- downloadVisible={downloadVisible}
255
- deleteVisible={deleteVisible}
256
- />
257
- }
258
- </List.Item>
259
- ))}
260
- </List>
261
- </div>
262
- </div>
263
- </div>
264
- </FileContext.Provider>
265
- </ConfigProvider>
266
- )({
267
- id,
268
- className: cls,
269
- style,
270
- label: labelVisible ? label : null,
271
- layout,
272
- multiCell: false,
273
- requiredFlag,
274
- });
275
- }
276
- export interface IUploadFileH5 extends CommonFormPropsType {
277
- className?: string; // 传入类
278
- label?: string; // 官方属性:标题
279
- tips?: string; // 官方属性:提示
280
- btnTitle?: string; // 官方属性:上传按钮标题
281
- maxUploadCount?: number; // 官方属性:上传文件最大数量,作用于 数组,用 single 控制数组还是单个对象
282
- deleteVisible?: boolean;
283
- downloadVisible?: boolean;
284
- acceptTypes?: any[];
285
- disabled?: boolean;
286
- defaultValue?: string | string[];
287
- maxSize?: number; // 官方属性:单个图片大小限制,单位是M
288
- value?: string | string[]; // 官方属性:值
289
- uploadPath?: string; // 上传路径
290
- single?: boolean; // 单张上传还是多张上传,对应 onChange 参数为字符串还是字符串数组,value 在处理过程统一转为字符串数组
291
- onChange?: (v: any) => void; // 配合 fomily 受控使用
292
- isEdit: boolean; // 当前是编辑态还是展示态,展示态会去掉删除等按钮
293
- }
294
-
295
- /**
296
- * 基于 FileID 文件回显组件
297
- */
298
- const TcbFileEcho = ({
299
- fileID,
300
- fileList,
301
- onChange,
302
- deleteVisible,
303
- downloadVisible,
304
- }: ITcbFileEcho) => {
305
- const [src, setSrc] = React.useState('');
306
- const { fileSizeObj } = React.useContext(FileContext) || {};
307
- const size = '--';
308
- React.useEffect(() => {
309
- const fetchFileId = async (id) => {
310
- if (isCloudFileID(id)) {
311
- try {
312
- const fileSrc = await getTempFileURL(id);
313
- setSrc(fileSrc);
314
- } catch (e) {}
315
- } else {
316
- setSrc(id);
317
- }
318
- };
319
- fetchFileId(fileID);
320
- }, [fileID]);
321
- //上传文件名称
322
- const label = React.useMemo(() => {
323
- if (isCloudFileID(fileID)) {
324
- return transFileCloudidToName(fileID);
325
- } else {
326
- return fileID;
327
- }
328
- }, [fileID]);
329
- //上传文件列表展示
330
- return (
331
- <div className={`${CLASS_PREFIX}__item`}>
332
- <div className={`${CLASS_PREFIX}__item-left`}>
333
- <UploadFileStatus title={label} size={fileSizeObj[fileID] || '--'} />
334
- </div>
335
- <div className={`${CLASS_PREFIX}__btn-group`}>
336
- <UploadFileAction
337
- status="UPLOAD_STATUS_SUCCESS"
338
- fileID={fileID}
339
- src={src}
340
- />
341
- </div>
342
- </div>
343
- );
344
- };
345
- interface ITcbFileEcho {
346
- fileID?: string;
347
- fileList?: any;
348
- file?: any;
349
- onChange?: Function;
350
- deleteVisible?: boolean;
351
- downloadVisible?: boolean;
352
- }
353
- interface ITcbFileUpload {
354
- file?: any;
355
- downloadVisible?: boolean;
356
- deleteVisible?: boolean;
357
- }
358
- /**
359
- * 基于 File 上传文件过程组件
360
- */
361
- const TcbFileUpload = ({
362
- file,
363
- downloadVisible,
364
- deleteVisible,
365
- }: ITcbFileUpload) => {
366
- const { uploadPath, onChange, events } = React.useContext(FileContext) || {};
367
- const [percent, setPercent] = React.useState(0); // 上传进度
368
- const [status, setStatus] = React.useState('UPLOAD_STATUS_PENDING'); // 上传状态
369
- const cancleRef = React.useRef(''); // 取消的uuid
370
-
371
- // 上传文件相关属性
372
- const { size, title, uuid } = React.useMemo(() => {
373
- const size = transSize(file?.size);
374
- const title = file?.name || '';
375
- const uuid = file?._uuid;
376
- return { size, title, uuid };
377
- }, [file?._uuid]);
378
-
379
- React.useEffect(() => {
380
- const test = handleUpload(file);
381
- }, [file?._uuid]);
382
-
383
- // 上传过程
384
- const handleUpload = async (file) => {
385
- const tcb = await getCloudInstance();
386
- try {
387
- setStatus('UPLOAD_STATUS_PENDING');
388
- const { fileID } = await tcb.uploadFile({
389
- cloudPath: `${uploadPath}/${randomUuid()}-${file?.name}`,
390
- filePath: file,
391
- onUploadProgress: (progressEvent) => {
392
- let percent = 0;
393
- percent = Math.round(
394
- (progressEvent.loaded * 100) / progressEvent.total
395
- );
396
- setStatus('UPLOAD_STATUS_LOADING');
397
- setPercent(percent < 100 ? percent : 100);
398
- },
399
- });
400
- !cancleRef.current && onChange?.({ fileID, type: 'add', uuid, size });
401
- setStatus('UPLOAD_STATUS_SUCCESS');
402
- } catch (err) {
403
- setStatus('UPLOAD_STATUS_ERROR');
404
- events?.error?.(err);
405
- }
406
- };
407
-
408
- return (
409
- <div className={`${CLASS_PREFIX}__item`} role="TcbFileUpload">
410
- <div className={`${CLASS_PREFIX}__item-left`}>
411
- <UploadFileStatus
412
- status={status}
413
- percent={percent}
414
- size={size}
415
- title={title}
416
- percentSize={((file?.size / 1024) * percent) / 100}
417
- />
418
- </div>
419
- <div className={`${CLASS_PREFIX}__btn-group`}>
420
- <UploadFileAction
421
- file={file}
422
- uuid={file?._uuid}
423
- status={status}
424
- onCancel={(uuid) => {
425
- cancleRef.current = uuid;
426
- onChange?.({ type: 'delete', uuid });
427
- }}
428
- onReLoad={handleUpload}
429
- />
430
- </div>
431
- </div>
432
- );
433
- };
434
-
435
- interface IUploadFileStatus {
436
- status?: string;
437
- percent?: number;
438
- size?: any;
439
- title?: string;
440
- percentSize?: number;
441
- }
442
- /**
443
- * 上传文件状态组件
444
- */
445
- const UploadFileStatus = ({
446
- status = 'UPLOAD_STATUS_SUCCESS',
447
- percent = 0,
448
- size,
449
- title = null,
450
- percentSize = 0,
451
- }: IUploadFileStatus) => {
452
- const { isEdit } = React.useContext(FileContext) || {};
453
- //上传中、待上传状态
454
- if (
455
- status == 'UPLOAD_STATUS_LOADING' ||
456
- (status == 'UPLOAD_STATUS_PENDING' && percent)
457
- ) {
458
- return (
459
- <>
460
- <div className={`${CLASS_PREFIX}__file-detail`}>
461
- <Text className={`${CLASS_PREFIX}__file-name`}>{title}</Text>
462
- <div className={`${CLASS_PREFIX}__file-status`}>
463
- <div className={`${CLASS_PREFIX}__file-status`}>
464
- <Progress
465
- percent={percent}
466
- theme="default"
467
- strokeColor={'#0052D9'}
468
- className={`${CLASS_PREFIX}__file-progress`}
469
- />
470
- </div>
471
- </div>
472
- </div>
473
- <div className={`${CLASS_PREFIX}__file-foot`}>
474
- <div>
475
- <Text>{`${Math.floor(percentSize)}K/`}</Text>
476
-
477
- <Text>{size}</Text>
478
- </div>
479
- <Text>
480
- {status === 'UPLOAD_STATUS_PENDING' ? '等待上传' : '上传中'}
481
- </Text>
482
- </div>
483
- </>
484
- );
485
- }
486
-
487
- return (
488
- <>
489
- <div className={`${CLASS_PREFIX}__file-detail`}>
490
- <Tooltip title={title}>
491
- <Text className={`${CLASS_PREFIX}__file-name`}>{title}</Text>
492
- </Tooltip>
493
- {isEdit && (
494
- <div className={`${CLASS_PREFIX}__file-status`}>
495
- <Icon
496
- type={
497
- statusMap[status]?.icon ||
498
- statusMap['UPLOAD_STATUS_PENDING'].icon
499
- }
500
- ></Icon>
501
- <Text className={`${CLASS_PREFIX}__file-status--msg`}>
502
- {statusMap[status]?.title ||
503
- statusMap['UPLOAD_STATUS_PENDING'].title}
504
- </Text>
505
- </div>
506
- )}
507
- </div>
508
- {isEdit && (
509
- <div className={`${CLASS_PREFIX}__file-foot`}>
510
- <div>
511
- <Text>{size}</Text>
512
- </div>
513
- </div>
514
- )}
515
- </>
516
- );
517
- };
518
-
519
- interface IUploadFileAction {
520
- status?: string;
521
- fileID?: string;
522
- uuid?: string;
523
- src?: string;
524
- file?: any;
525
- onReLoad?: any;
526
- onCancel?: any;
527
- }
528
-
529
- /**
530
- * 操作列组件, onChange 从最外层 UploadFilePc 传进来
531
- * props: { status, fileID, uuid, src, onChange }
532
- */
533
- const UploadFileAction = ({
534
- status = 'UPLOAD_STATUS_PENDING',
535
- fileID = '',
536
- uuid = '',
537
- src = '',
538
- file = null,
539
- onReLoad = null,
540
- onCancel = null,
541
- }: IUploadFileAction) => {
542
- const { onChange, downloadVisible, deleteVisible, isEdit } =
543
- React.useContext(FileContext) || {};
544
- // 操作列按钮-删除
545
- const renderDelete = () =>
546
- isEdit && (
547
- <Icon
548
- type="delete"
549
- style={{ cursor: 'pointer' }}
550
- onClick={() => onChange?.({ fileID, uuid, type: 'delete' })}
551
- />
552
- );
553
-
554
- // 操作列按钮-取消
555
- const renderCancel = () =>
556
- isEdit && (
557
- <Icon
558
- type="dismiss"
559
- style={{ cursor: 'pointer' }}
560
- onClick={() => onCancel?.(uuid)}
561
- />
562
- );
563
-
564
- // 操作列按钮-重新上传
565
- const renderReLoad = () =>
566
- isEdit && (
567
- <Icon
568
- type="refresh"
569
- style={{ cursor: 'pointer' }}
570
- onClick={() => {
571
- onReLoad?.(file);
572
- }}
573
- />
574
- );
575
-
576
- // 操作列按钮-下载
577
- const renderDownLoad = () => (
578
- <Icon
579
- type="download"
580
- style={{ cursor: 'pointer' }}
581
- onClick={() => downloadFile(src)}
582
- />
583
- );
584
-
585
- switch (status) {
586
- case 'UPLOAD_STATUS_PENDING':
587
- return renderCancel();
588
- case 'UPLOAD_STATUS_LOADING':
589
- return renderCancel();
590
- case 'UPLOAD_STATUS_SUCCESS':
591
- return (
592
- <>
593
- {deleteVisible && renderDelete()}{' '}
594
- {downloadVisible && renderDownLoad()}
595
- </>
596
- );
597
- case 'UPLOAD_STATUS_ERROR':
598
- return (
599
- <>
600
- {deleteVisible && renderDelete()} {renderReLoad()}
601
- </>
602
- );
603
- default:
604
- return null;
605
- }
606
- };