@cloudbase/weda-ui 0.2.6-alhpa.0 → 0.2.9

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 (379) hide show
  1. package/CHANGELOG.md +240 -0
  2. package/package.json +5 -5
  3. package/src/configs/components/container.json +2 -1
  4. package/src/configs/components/form/input.json +6 -0
  5. package/src/configs/components/form/richText.json +2 -1
  6. package/src/configs/components/form/uploader.json +9 -4
  7. package/src/configs/components/image.json +2 -1
  8. package/src/configs/components/link.json +2 -1
  9. package/src/configs/components/richtextview.json +2 -1
  10. package/src/configs/components/scrollVeiw.json +2 -1
  11. package/src/configs/components/swiper.json +2 -1
  12. package/src/configs/components/tabs.json +31 -86
  13. package/src/configs/components/text.json +2 -1
  14. package/src/configs/index.js +3 -7
  15. package/src/index.js +2 -3
  16. package/src/mp/.gitignore +10 -0
  17. package/src/mp/components/form/input/index.js +5 -1
  18. package/src/mp/components/form/input/index.wxml +2 -1
  19. package/src/mp/components/form/select/index.js +2 -2
  20. package/src/mp/components/form/textarea/index.wxml +1 -0
  21. package/src/mp/components/form/uploader/index.js +48 -14
  22. package/src/mp/components/form/uploader/index.wxml +9 -2
  23. package/src/mp/components/image/index.js +57 -8
  24. package/src/mp/components/image/index.json +4 -1
  25. package/src/mp/components/image/index.wxml +4 -2
  26. package/src/mp/components/image/index.wxss +14 -0
  27. package/src/mp/components/richText/index.wxml +3 -1
  28. package/src/mp/components/tabs/index.js +22 -6
  29. package/src/mp/utils/deepEqual.js +42 -0
  30. package/src/web/actions/index.js +2 -4
  31. package/src/web/components/form/checkbox/index.jsx +8 -10
  32. package/src/web/components/form/enumSelect/MultipleSelect.jsx +12 -23
  33. package/src/web/components/form/enumSelect/NormalSelect.jsx +12 -12
  34. package/src/web/components/form/enumSelect/SelectContainer.jsx +43 -0
  35. package/src/web/components/form/enumSelect/hooks/index.js +7 -4
  36. package/src/web/components/form/enumSelect/props/propsTypes.js +7 -0
  37. package/src/web/components/form/formcell/index.jsx +1 -1
  38. package/src/web/components/form/input/index.jsx +16 -18
  39. package/src/web/components/form/radio/index.jsx +7 -7
  40. package/src/web/components/form/select/h5.jsx +1 -1
  41. package/src/web/components/form/select/region/{cities.json → cities.js} +2 -2
  42. package/src/web/components/form/select/region/index.js +3 -3
  43. package/src/web/components/form/select/region/{provinces.json → provinces.js} +2 -2
  44. package/src/web/components/form/select/region/{regions.json → regions.js} +2 -2
  45. package/src/web/components/form/switch/index.jsx +4 -9
  46. package/src/web/components/form/textarea/index.jsx +4 -12
  47. package/src/web/components/form/uploader/index.css +15 -0
  48. package/src/web/components/form/uploader/index.jsx +2 -2
  49. package/src/web/components/form/uploader/uploader.h5.jsx +237 -0
  50. package/src/web/components/form/uploader/{uploaderPc.jsx → uploader.pc.jsx} +69 -56
  51. package/src/web/components/image/image.jsx +79 -5
  52. package/src/web/components/image/index.css +17 -0
  53. package/src/web/components/image/index.jsx +1 -0
  54. package/src/web/components/index.js +27 -62
  55. package/src/web/components/richTextView/index.css +0 -10
  56. package/src/web/components/richTextView/index.jsx +1 -12
  57. package/src/web/components/tabs/{index.js → index.jsx} +3 -3
  58. package/src/web/components/tabs/{tabsH5.js → tabs.h5.jsx} +9 -47
  59. package/src/web/components/tabs/{tabsPc.js → tabs.pc.jsx} +13 -47
  60. package/src/web/components/uploaderView/index.jsx +1 -1
  61. package/src/web/index.js +2 -3
  62. package/src/web/utils/isObjectEqual.js +10 -1
  63. package/src/web/utils/useSyncValue.js +14 -0
  64. package/src/web/weda-ui.css +8 -0
  65. package/src/configs/components/form/enumSelect.json +0 -127
  66. package/src/configs/components/form/mapPosition.json +0 -33
  67. package/src/configs/components/markdown.json +0 -17
  68. package/src/mp/components/markdown/index.js +0 -27
  69. package/src/mp/components/markdown/index.json +0 -6
  70. package/src/mp/components/markdown/index.wxml +0 -1
  71. package/src/mp/components/markdown/towxml/audio-player/Audio.js +0 -99
  72. package/src/mp/components/markdown/towxml/audio-player/audio-player.js +0 -102
  73. package/src/mp/components/markdown/towxml/audio-player/audio-player.json +0 -5
  74. package/src/mp/components/markdown/towxml/audio-player/audio-player.wxml +0 -14
  75. package/src/mp/components/markdown/towxml/audio-player/audio-player.wxss +0 -175
  76. package/src/mp/components/markdown/towxml/audio-player/loading.svg +0 -1
  77. package/src/mp/components/markdown/towxml/config.js +0 -285
  78. package/src/mp/components/markdown/towxml/decode.js +0 -26
  79. package/src/mp/components/markdown/towxml/decode.json +0 -12
  80. package/src/mp/components/markdown/towxml/decode.wxml +0 -1
  81. package/src/mp/components/markdown/towxml/decode.wxss +0 -0
  82. package/src/mp/components/markdown/towxml/img/img.js +0 -98
  83. package/src/mp/components/markdown/towxml/img/img.json +0 -3
  84. package/src/mp/components/markdown/towxml/img/img.wxml +0 -1
  85. package/src/mp/components/markdown/towxml/img/img.wxss +0 -0
  86. package/src/mp/components/markdown/towxml/index.js +0 -19
  87. package/src/mp/components/markdown/towxml/latex/latex.js +0 -53
  88. package/src/mp/components/markdown/towxml/latex/latex.json +0 -5
  89. package/src/mp/components/markdown/towxml/latex/latex.wxml +0 -1
  90. package/src/mp/components/markdown/towxml/latex/latex.wxss +0 -0
  91. package/src/mp/components/markdown/towxml/parse/highlight/highlight.js +0 -729
  92. package/src/mp/components/markdown/towxml/parse/highlight/index.js +0 -7
  93. package/src/mp/components/markdown/towxml/parse/highlight/languages/bash.js +0 -91
  94. package/src/mp/components/markdown/towxml/parse/highlight/languages/c-like.js +0 -244
  95. package/src/mp/components/markdown/towxml/parse/highlight/languages/c.js +0 -20
  96. package/src/mp/components/markdown/towxml/parse/highlight/languages/css.js +0 -138
  97. package/src/mp/components/markdown/towxml/parse/highlight/languages/dart.js +0 -135
  98. package/src/mp/components/markdown/towxml/parse/highlight/languages/go.js +0 -57
  99. package/src/mp/components/markdown/towxml/parse/highlight/languages/htmlbars.js +0 -79
  100. package/src/mp/components/markdown/towxml/parse/highlight/languages/java.js +0 -126
  101. package/src/mp/components/markdown/towxml/parse/highlight/languages/javascript.js +0 -263
  102. package/src/mp/components/markdown/towxml/parse/highlight/languages/json.js +0 -51
  103. package/src/mp/components/markdown/towxml/parse/highlight/languages/less.js +0 -177
  104. package/src/mp/components/markdown/towxml/parse/highlight/languages/nginx.js +0 -103
  105. package/src/mp/components/markdown/towxml/parse/highlight/languages/php.js +0 -152
  106. package/src/mp/components/markdown/towxml/parse/highlight/languages/python-repl.js +0 -27
  107. package/src/mp/components/markdown/towxml/parse/highlight/languages/python.js +0 -146
  108. package/src/mp/components/markdown/towxml/parse/highlight/languages/scss.js +0 -137
  109. package/src/mp/components/markdown/towxml/parse/highlight/languages/shell.js +0 -23
  110. package/src/mp/components/markdown/towxml/parse/highlight/languages/typescript.js +0 -198
  111. package/src/mp/components/markdown/towxml/parse/highlight/languages/xml.js +0 -143
  112. package/src/mp/components/markdown/towxml/parse/highlight/style/github.wxss +0 -99
  113. package/src/mp/components/markdown/towxml/parse/highlight/style/monokai.wxss +0 -70
  114. package/src/mp/components/markdown/towxml/parse/index.js +0 -106
  115. package/src/mp/components/markdown/towxml/parse/markdown/index.js +0 -53
  116. package/src/mp/components/markdown/towxml/parse/markdown/markdown.js +0 -5834
  117. package/src/mp/components/markdown/towxml/parse/markdown/plugins/emoji.js +0 -1773
  118. package/src/mp/components/markdown/towxml/parse/markdown/plugins/ins.js +0 -120
  119. package/src/mp/components/markdown/towxml/parse/markdown/plugins/latex.js +0 -193
  120. package/src/mp/components/markdown/towxml/parse/markdown/plugins/mark.js +0 -120
  121. package/src/mp/components/markdown/towxml/parse/markdown/plugins/sub.js +0 -95
  122. package/src/mp/components/markdown/towxml/parse/markdown/plugins/sup.js +0 -95
  123. package/src/mp/components/markdown/towxml/parse/markdown/plugins/todo.js +0 -220
  124. package/src/mp/components/markdown/towxml/parse/markdown/plugins/yuml.js +0 -18
  125. package/src/mp/components/markdown/towxml/parse/parse2/Parser.js +0 -263
  126. package/src/mp/components/markdown/towxml/parse/parse2/Tokenizer.js +0 -507
  127. package/src/mp/components/markdown/towxml/parse/parse2/domhandler/index.js +0 -104
  128. package/src/mp/components/markdown/towxml/parse/parse2/domhandler/node.js +0 -169
  129. package/src/mp/components/markdown/towxml/parse/parse2/entities/decode.js +0 -54
  130. package/src/mp/components/markdown/towxml/parse/parse2/entities/decode_codepoint.js +0 -19
  131. package/src/mp/components/markdown/towxml/parse/parse2/entities/encode.js +0 -54
  132. package/src/mp/components/markdown/towxml/parse/parse2/entities/index.js +0 -30
  133. package/src/mp/components/markdown/towxml/parse/parse2/entities/maps/decode.js +0 -31
  134. package/src/mp/components/markdown/towxml/parse/parse2/entities/maps/entities.js +0 -2128
  135. package/src/mp/components/markdown/towxml/parse/parse2/entities/maps/legacy.js +0 -109
  136. package/src/mp/components/markdown/towxml/parse/parse2/entities/maps/xml.js +0 -2
  137. package/src/mp/components/markdown/towxml/parse/parse2/index.js +0 -8
  138. package/src/mp/components/markdown/towxml/style/main.wxss +0 -378
  139. package/src/mp/components/markdown/towxml/style/theme/dark.wxss +0 -73
  140. package/src/mp/components/markdown/towxml/style/theme/light.wxss +0 -63
  141. package/src/mp/components/markdown/towxml/table/table.js +0 -11
  142. package/src/mp/components/markdown/towxml/table/table.json +0 -6
  143. package/src/mp/components/markdown/towxml/table/table.wxml +0 -24
  144. package/src/mp/components/markdown/towxml/table/table.wxss +0 -0
  145. package/src/mp/components/markdown/towxml/todogroup/todogroup.js +0 -19
  146. package/src/mp/components/markdown/towxml/todogroup/todogroup.json +0 -6
  147. package/src/mp/components/markdown/towxml/todogroup/todogroup.wxml +0 -13
  148. package/src/mp/components/markdown/towxml/todogroup/todogroup.wxss +0 -3
  149. package/src/mp/components/markdown/towxml/towxml.js +0 -17
  150. package/src/mp/components/markdown/towxml/towxml.json +0 -6
  151. package/src/mp/components/markdown/towxml/towxml.wxml +0 -5
  152. package/src/mp/components/markdown/towxml/towxml.wxss +0 -8
  153. package/src/mp/components/markdown/towxml/yuml/yuml.js +0 -51
  154. package/src/mp/components/markdown/towxml/yuml/yuml.json +0 -5
  155. package/src/mp/components/markdown/towxml/yuml/yuml.wxml +0 -5
  156. package/src/mp/components/markdown/towxml/yuml/yuml.wxss +0 -0
  157. package/src/web/components/form/enumSelect/FormContainer.jsx +0 -41
  158. package/src/web/components/form/position/MapView.jsx +0 -124
  159. package/src/web/components/form/position/SelectModal.css +0 -3
  160. package/src/web/components/form/position/SelectModal.jsx +0 -112
  161. package/src/web/components/form/position/constants.js +0 -7
  162. package/src/web/components/form/position/index.jsx +0 -68
  163. package/src/web/components/form/uploader/uploaderH5.jsx +0 -196
  164. package/src/web/components/link/test/__snapshots__/storybook.test.js.snap +0 -754
  165. package/src/web/components/markdown/index.jsx +0 -40
  166. package/src/web/wedatheme/.code.yml +0 -16
  167. package/src/web/wedatheme/.editorconfig +0 -9
  168. package/src/web/wedatheme/.eslintrc +0 -20
  169. package/src/web/wedatheme/.orange-ci.yml +0 -55
  170. package/src/web/wedatheme/.vscode/extensions.json +0 -3
  171. package/src/web/wedatheme/.vscode/settings.json +0 -11
  172. package/src/web/wedatheme/README.md +0 -50
  173. package/src/web/wedatheme/i18n/README.md +0 -4
  174. package/src/web/wedatheme/i18n/translation/index.js +0 -10
  175. package/src/web/wedatheme/i18n/translation/zh.js +0 -15
  176. package/src/web/wedatheme/jsconfig.json +0 -15
  177. package/src/web/wedatheme/mock/app.js +0 -42
  178. package/src/web/wedatheme/mock/history-context.js +0 -8
  179. package/src/web/wedatheme/mock/index.js +0 -3
  180. package/src/web/wedatheme/mock/layout/AppLayout.jsx +0 -28
  181. package/src/web/wedatheme/mock/layout/MenuWithRouter.jsx +0 -50
  182. package/src/web/wedatheme/mock/layout/index.js +0 -1
  183. package/src/web/wedatheme/package.json +0 -61
  184. package/src/web/wedatheme/public/index.html +0 -19
  185. package/src/web/wedatheme/src/app.js +0 -22
  186. package/src/web/wedatheme/src/components/README.md +0 -4
  187. package/src/web/wedatheme/src/configs/menu.js +0 -9
  188. package/src/web/wedatheme/src/routes/wedatheme-index/Component.jsx +0 -402
  189. package/src/web/wedatheme/src/routes/wedatheme-index/Form.jsx +0 -729
  190. package/src/web/wedatheme/src/routes/wedatheme-index/FormItem.jsx +0 -18
  191. package/src/web/wedatheme/src/routes/wedatheme-index/WedathemeIndex.jsx +0 -1276
  192. package/src/web/wedatheme/src/routes/wedatheme-index/index.js +0 -1
  193. package/src/web/wedatheme/src/routes/weui2td/WEUI2TD.jsx +0 -3
  194. package/src/web/wedatheme/src/routes/weui2td/index.js +0 -1
  195. package/src/web/wedatheme/src/styles/_btn.scss +0 -24
  196. package/src/web/wedatheme/src/styles/_icon.scss +0 -653
  197. package/src/web/wedatheme/src/styles/_map.scss +0 -12
  198. package/src/web/wedatheme/src/styles/_middle.scss +0 -340
  199. package/src/web/wedatheme/src/styles/_upload.scss +0 -47
  200. package/src/web/wedatheme/src/styles/assets/alert-close.svg +0 -3
  201. package/src/web/wedatheme/src/styles/assets/and.svg +0 -12
  202. package/src/web/wedatheme/src/styles/assets/arrowdown--line.svg +0 -12
  203. package/src/web/wedatheme/src/styles/assets/arrowdown.svg +0 -12
  204. package/src/web/wedatheme/src/styles/assets/arrowleft--line.svg +0 -12
  205. package/src/web/wedatheme/src/styles/assets/arrowleft.svg +0 -12
  206. package/src/web/wedatheme/src/styles/assets/arrowright--line.svg +0 -12
  207. package/src/web/wedatheme/src/styles/assets/arrowright-blue--line.svg +0 -12
  208. package/src/web/wedatheme/src/styles/assets/arrowright.svg +0 -12
  209. package/src/web/wedatheme/src/styles/assets/arrowup--line.svg +0 -12
  210. package/src/web/wedatheme/src/styles/assets/arrowup.svg +0 -12
  211. package/src/web/wedatheme/src/styles/assets/bell-warning.svg +0 -3
  212. package/src/web/wedatheme/src/styles/assets/btnback.svg +0 -12
  213. package/src/web/wedatheme/src/styles/assets/calendar.svg +0 -12
  214. package/src/web/wedatheme/src/styles/assets/chartcolumn-1.svg +0 -12
  215. package/src/web/wedatheme/src/styles/assets/chartcolumn.svg +0 -12
  216. package/src/web/wedatheme/src/styles/assets/chartline-1.svg +0 -9
  217. package/src/web/wedatheme/src/styles/assets/chartline.svg +0 -9
  218. package/src/web/wedatheme/src/styles/assets/chartpie-1.svg +0 -12
  219. package/src/web/wedatheme/src/styles/assets/chartpie.svg +0 -12
  220. package/src/web/wedatheme/src/styles/assets/check-1.svg +0 -8
  221. package/src/web/wedatheme/src/styles/assets/check-2.svg +0 -1
  222. package/src/web/wedatheme/src/styles/assets/check.svg +0 -8
  223. package/src/web/wedatheme/src/styles/assets/close-1.svg +0 -8
  224. package/src/web/wedatheme/src/styles/assets/close.svg +0 -8
  225. package/src/web/wedatheme/src/styles/assets/consult.svg +0 -8
  226. package/src/web/wedatheme/src/styles/assets/convertip--blue.svg +0 -12
  227. package/src/web/wedatheme/src/styles/assets/convertip.svg +0 -12
  228. package/src/web/wedatheme/src/styles/assets/copy.svg +0 -12
  229. package/src/web/wedatheme/src/styles/assets/cur-active.svg +0 -12
  230. package/src/web/wedatheme/src/styles/assets/cur.svg +0 -12
  231. package/src/web/wedatheme/src/styles/assets/daily.svg +0 -13
  232. package/src/web/wedatheme/src/styles/assets/database.svg +0 -12
  233. package/src/web/wedatheme/src/styles/assets/datasheet.svg +0 -12
  234. package/src/web/wedatheme/src/styles/assets/delete-white.svg +0 -8
  235. package/src/web/wedatheme/src/styles/assets/delete.svg +0 -8
  236. package/src/web/wedatheme/src/styles/assets/detail.svg +0 -13
  237. package/src/web/wedatheme/src/styles/assets/dismiss.svg +0 -8
  238. package/src/web/wedatheme/src/styles/assets/download.svg +0 -12
  239. package/src/web/wedatheme/src/styles/assets/drop.svg +0 -15
  240. package/src/web/wedatheme/src/styles/assets/email-error.svg +0 -14
  241. package/src/web/wedatheme/src/styles/assets/email-warning.svg +0 -12
  242. package/src/web/wedatheme/src/styles/assets/email.svg +0 -14
  243. package/src/web/wedatheme/src/styles/assets/emailv.svg +0 -12
  244. package/src/web/wedatheme/src/styles/assets/error-1.svg +0 -8
  245. package/src/web/wedatheme/src/styles/assets/error-filled.svg +0 -3
  246. package/src/web/wedatheme/src/styles/assets/error.svg +0 -8
  247. package/src/web/wedatheme/src/styles/assets/externallink.svg +0 -12
  248. package/src/web/wedatheme/src/styles/assets/favorable.svg +0 -9
  249. package/src/web/wedatheme/src/styles/assets/filter.svg +0 -12
  250. package/src/web/wedatheme/src/styles/assets/firstpage.svg +0 -13
  251. package/src/web/wedatheme/src/styles/assets/folderclose.svg +0 -8
  252. package/src/web/wedatheme/src/styles/assets/folderopen.svg +0 -8
  253. package/src/web/wedatheme/src/styles/assets/fullscreenquit.svg +0 -12
  254. package/src/web/wedatheme/src/styles/assets/fullsreen.svg +0 -12
  255. package/src/web/wedatheme/src/styles/assets/globe-gray.svg +0 -12
  256. package/src/web/wedatheme/src/styles/assets/guide.svg +0 -9
  257. package/src/web/wedatheme/src/styles/assets/help.svg +0 -8
  258. package/src/web/wedatheme/src/styles/assets/hide.svg +0 -8
  259. package/src/web/wedatheme/src/styles/assets/info.svg +0 -8
  260. package/src/web/wedatheme/src/styles/assets/infoblue-1.svg +0 -8
  261. package/src/web/wedatheme/src/styles/assets/infoblue-filled.svg +0 -3
  262. package/src/web/wedatheme/src/styles/assets/infoblue.svg +0 -8
  263. package/src/web/wedatheme/src/styles/assets/jump-black.svg +0 -12
  264. package/src/web/wedatheme/src/styles/assets/jump.svg +0 -12
  265. package/src/web/wedatheme/src/styles/assets/lastpage.svg +0 -13
  266. package/src/web/wedatheme/src/styles/assets/loading.svg +0 -12
  267. package/src/web/wedatheme/src/styles/assets/local.svg +0 -10
  268. package/src/web/wedatheme/src/styles/assets/menu-fold-white.svg +0 -6
  269. package/src/web/wedatheme/src/styles/assets/menu-fold.svg +0 -6
  270. package/src/web/wedatheme/src/styles/assets/minus.svg +0 -12
  271. package/src/web/wedatheme/src/styles/assets/monitor.svg +0 -12
  272. package/src/web/wedatheme/src/styles/assets/more.svg +0 -8
  273. package/src/web/wedatheme/src/styles/assets/multi-line.svg +0 -12
  274. package/src/web/wedatheme/src/styles/assets/news.svg +0 -3
  275. package/src/web/wedatheme/src/styles/assets/not.svg +0 -12
  276. package/src/web/wedatheme/src/styles/assets/notice.svg +0 -8
  277. package/src/web/wedatheme/src/styles/assets/pencil.svg +0 -12
  278. package/src/web/wedatheme/src/styles/assets/pending-1.svg +0 -8
  279. package/src/web/wedatheme/src/styles/assets/pending-gray.svg +0 -8
  280. package/src/web/wedatheme/src/styles/assets/pending.svg +0 -8
  281. package/src/web/wedatheme/src/styles/assets/percent-blue.svg +0 -16
  282. package/src/web/wedatheme/src/styles/assets/percent.svg +0 -16
  283. package/src/web/wedatheme/src/styles/assets/phone-error.svg +0 -11
  284. package/src/web/wedatheme/src/styles/assets/phone-warning.svg +0 -9
  285. package/src/web/wedatheme/src/styles/assets/phone.svg +0 -12
  286. package/src/web/wedatheme/src/styles/assets/phonev.svg +0 -9
  287. package/src/web/wedatheme/src/styles/assets/plus.svg +0 -12
  288. package/src/web/wedatheme/src/styles/assets/qq.svg +0 -11
  289. package/src/web/wedatheme/src/styles/assets/realname.svg +0 -8
  290. package/src/web/wedatheme/src/styles/assets/realnamev.svg +0 -9
  291. package/src/web/wedatheme/src/styles/assets/refresh-blue.svg +0 -12
  292. package/src/web/wedatheme/src/styles/assets/refresh.svg +0 -12
  293. package/src/web/wedatheme/src/styles/assets/relationship-1.svg +0 -12
  294. package/src/web/wedatheme/src/styles/assets/relationship.svg +0 -12
  295. package/src/web/wedatheme/src/styles/assets/remind.svg +0 -8
  296. package/src/web/wedatheme/src/styles/assets/search.svg +0 -8
  297. package/src/web/wedatheme/src/styles/assets/setting.svg +0 -12
  298. package/src/web/wedatheme/src/styles/assets/shopcart.svg +0 -8
  299. package/src/web/wedatheme/src/styles/assets/show.svg +0 -8
  300. package/src/web/wedatheme/src/styles/assets/sort.svg +0 -12
  301. package/src/web/wedatheme/src/styles/assets/sortdown.svg +0 -12
  302. package/src/web/wedatheme/src/styles/assets/sortup.svg +0 -12
  303. package/src/web/wedatheme/src/styles/assets/success-1.svg +0 -8
  304. package/src/web/wedatheme/src/styles/assets/success-filled.svg +0 -3
  305. package/src/web/wedatheme/src/styles/assets/success.svg +0 -8
  306. package/src/web/wedatheme/src/styles/assets/table-1.svg +0 -12
  307. package/src/web/wedatheme/src/styles/assets/table.svg +0 -12
  308. package/src/web/wedatheme/src/styles/assets/tag.svg +0 -12
  309. package/src/web/wedatheme/src/styles/assets/time.svg +0 -12
  310. package/src/web/wedatheme/src/styles/assets/transfer.svg +0 -8
  311. package/src/web/wedatheme/src/styles/assets/trenddown.svg +0 -12
  312. package/src/web/wedatheme/src/styles/assets/trendup.svg +0 -12
  313. package/src/web/wedatheme/src/styles/assets/viewgrid.svg +0 -12
  314. package/src/web/wedatheme/src/styles/assets/viewlist.svg +0 -12
  315. package/src/web/wedatheme/src/styles/assets/warning-1.svg +0 -8
  316. package/src/web/wedatheme/src/styles/assets/warning-filled.svg +0 -3
  317. package/src/web/wedatheme/src/styles/assets/warning.svg +0 -8
  318. package/src/web/wedatheme/src/styles/assets/wechat-error.svg +0 -14
  319. package/src/web/wedatheme/src/styles/assets/wechat-warning.svg +0 -12
  320. package/src/web/wedatheme/src/styles/assets/wechat.svg +0 -12
  321. package/src/web/wedatheme/src/styles/assets/wechatv.svg +0 -12
  322. package/src/web/wedatheme/src/styles/assets/zoom-in-white.svg +0 -4
  323. package/src/web/wedatheme/src/styles/assets/zoom-in.svg +0 -4
  324. package/src/web/wedatheme/src/styles/assets/zoom-out-white.svg +0 -4
  325. package/src/web/wedatheme/src/styles/assets/zoom-out.svg +0 -4
  326. package/src/web/wedatheme/src/styles/index.scss +0 -18
  327. package/src/web/wedatheme/src/styles/main.css +0 -166
  328. package/src/web/wedatheme/src/styles/theme/_alert.scss +0 -73
  329. package/src/web/wedatheme/src/styles/theme/_badge.scss +0 -38
  330. package/src/web/wedatheme/src/styles/theme/_blank-page-v2.scss +0 -7
  331. package/src/web/wedatheme/src/styles/theme/_breadcrumb.scss +0 -8
  332. package/src/web/wedatheme/src/styles/theme/_bubble.scss +0 -24
  333. package/src/web/wedatheme/src/styles/theme/_button.scss +0 -212
  334. package/src/web/wedatheme/src/styles/theme/_card.scss +0 -12
  335. package/src/web/wedatheme/src/styles/theme/_cascader.scss +0 -43
  336. package/src/web/wedatheme/src/styles/theme/_checkbox&radio.scss +0 -83
  337. package/src/web/wedatheme/src/styles/theme/_datepicker.scss +0 -36
  338. package/src/web/wedatheme/src/styles/theme/_dialog.scss +0 -39
  339. package/src/web/wedatheme/src/styles/theme/_divider.scss +0 -1
  340. package/src/web/wedatheme/src/styles/theme/_drawer.scss +0 -15
  341. package/src/web/wedatheme/src/styles/theme/_dropdown.scss +0 -53
  342. package/src/web/wedatheme/src/styles/theme/_form.scss +0 -38
  343. package/src/web/wedatheme/src/styles/theme/_icon.scss +0 -0
  344. package/src/web/wedatheme/src/styles/theme/_input&textarea&select.scss +0 -85
  345. package/src/web/wedatheme/src/styles/theme/_inputnumber.scss +0 -16
  346. package/src/web/wedatheme/src/styles/theme/_link.scss +0 -14
  347. package/src/web/wedatheme/src/styles/theme/_list.scss +0 -41
  348. package/src/web/wedatheme/src/styles/theme/_metrics-board.scss +0 -14
  349. package/src/web/wedatheme/src/styles/theme/_notification.scss +0 -27
  350. package/src/web/wedatheme/src/styles/theme/_pagination.scss +0 -22
  351. package/src/web/wedatheme/src/styles/theme/_popconfirm.scss +0 -4
  352. package/src/web/wedatheme/src/styles/theme/_progress.scss +0 -28
  353. package/src/web/wedatheme/src/styles/theme/_region-select.scss +0 -17
  354. package/src/web/wedatheme/src/styles/theme/_search.scss +0 -18
  355. package/src/web/wedatheme/src/styles/theme/_segment.scss +0 -69
  356. package/src/web/wedatheme/src/styles/theme/_slider.scss +0 -18
  357. package/src/web/wedatheme/src/styles/theme/_status.scss +0 -4
  358. package/src/web/wedatheme/src/styles/theme/_steps.scss +0 -68
  359. package/src/web/wedatheme/src/styles/theme/_switch.scss +0 -11
  360. package/src/web/wedatheme/src/styles/theme/_table.scss +0 -44
  361. package/src/web/wedatheme/src/styles/theme/_tabs.scss +0 -44
  362. package/src/web/wedatheme/src/styles/theme/_tag-search.scss +0 -9
  363. package/src/web/wedatheme/src/styles/theme/_tag.scss +0 -48
  364. package/src/web/wedatheme/src/styles/theme/_timeline.scss +0 -0
  365. package/src/web/wedatheme/src/styles/theme/_toast.scss +0 -3
  366. package/src/web/wedatheme/src/styles/theme/_transfer.scss +0 -9
  367. package/src/web/wedatheme/src/styles/theme/_tree.scss +0 -11
  368. package/src/web/wedatheme/src/styles/theme/_upload.scss +0 -14
  369. package/src/web/wedatheme/src/styles/theme/_variables.scss +0 -140
  370. package/src/web/wedatheme/src/styles/theme/index.scss +0 -91
  371. package/src/web/wedatheme/style-package/README.md +0 -31
  372. package/src/web/wedatheme/style-package/ef6fa527e24e354765d806b826b41391.svg +0 -627
  373. package/src/web/wedatheme/style-package/index.css +0 -3
  374. package/src/web/wedatheme/style-package/package.json +0 -15
  375. package/src/web/wedatheme/tea.config.js +0 -66
  376. package/src/web/wedatheme/webpack/css.config.js +0 -114
  377. package/src/web/wedatheme/webpack/plugins/css-package-plugin.js +0 -23
  378. package/src/web/wedatheme/webpack/plugins/inject-assets-plugin.js +0 -32
  379. package/src/web/wedatheme/webpack/plugins/package-json-plugin.js +0 -66
@@ -2,10 +2,10 @@ import * as React from 'react';
2
2
  import * as PropTypes from 'prop-types';
3
3
 
4
4
  import classNames from '../../../utils/classnames';
5
- import FormCell from '../formcell';
6
5
  import { usePlatform } from '../../../utils/platform';
7
6
  import { Input as TeaInput } from 'tea-component';
8
7
  import { renderDecorator } from '../renderDecorator';
8
+ import { useSyncValue } from '../../../utils/useSyncValue';
9
9
  export default function Input({
10
10
  // 系统属性
11
11
  id,
@@ -26,7 +26,8 @@ export default function Input({
26
26
  layout,
27
27
  requiredFlag,
28
28
  size,
29
- decorator
29
+ decorator,
30
+ clearable
30
31
  }) {
31
32
  const platform = usePlatform();
32
33
  const cls = classNames({
@@ -42,15 +43,8 @@ export default function Input({
42
43
  });
43
44
  const inputType = getInputType(type, password);
44
45
 
45
- const [value, setValue] = React.useState(defaultValue);
46
46
  // 两次默认值不同时, 需要刷新value
47
- const prevDefaultValueRef = React.useRef();
48
- React.useEffect(() => {
49
- if (prevDefaultValueRef.current !== defaultValue) {
50
- prevDefaultValueRef.current = defaultValue;
51
- setValue(defaultValue);
52
- }
53
- });
47
+ const [value, setValue] = useSyncValue(defaultValue);
54
48
 
55
49
  const onChange = function (e) {
56
50
  const text = typeof e === 'string' ? e : e.target.value;
@@ -102,12 +96,14 @@ const fieldEl = platform === 'h5' ? <div className={subCls}>
102
96
  onBlur={onBlur}
103
97
  onKeyDown={onKeyDown}
104
98
  />
105
- <button
106
- className="weui-btn_reset weui-btn_icon weui-btn_input-clear"
107
- onMouseDown={onClear}
108
- >
109
- <i className="weui-icon-clear"></i>
110
- </button>
99
+ {clearable &&
100
+ <button
101
+ className="weui-btn_reset weui-btn_icon weui-btn_input-clear"
102
+ onMouseDown={onClear}
103
+ >
104
+ <i className="weui-icon-clear"></i>
105
+ </button>
106
+ }
111
107
  </div>
112
108
  </div> : <TeaInput
113
109
  size={size}
@@ -156,7 +152,8 @@ Input.propTypes = {
156
152
  layout: PropTypes.oneOf(['horizontal', 'vertical']),
157
153
  requiredFlag: PropTypes.bool,
158
154
  size: PropTypes.oneOf(['s', 'm', 'l', 'full']),
159
- decorator: PropTypes.oneOfType([PropTypes.array, PropTypes.node])
155
+ decorator: PropTypes.oneOfType([PropTypes.array, PropTypes.node]),
156
+ clearable: PropTypes.bool
160
157
  };
161
158
 
162
159
  Input.defaultProps = {
@@ -175,7 +172,8 @@ Input.defaultProps = {
175
172
  focus: false,
176
173
  layout: 'horizontal',
177
174
  requiredFlag: false,
178
- size: 'l'
175
+ size: 'l',
176
+ clearable: true
179
177
  };
180
178
 
181
179
  function getInputType(type, password) {
@@ -58,6 +58,7 @@ export default function Radio({
58
58
  */
59
59
  const getChangeHandler = function (value) {
60
60
  const onChange = function (e) {
61
+ e.stopPropagation();
61
62
  setCheckedItemValue(value);
62
63
  events.change({ value }, { originEvent: e });
63
64
  };
@@ -65,7 +66,7 @@ export default function Radio({
65
66
  };
66
67
 
67
68
  // 现在低码组件往源码组件传入的id不唯一, 暂时使用hashcode替代
68
- const hashcode = getLocalCounter();
69
+ const hashcode = React.useMemo(() => getLocalCounter(), []);
69
70
  let radioElement;
70
71
  if(isH5) {
71
72
 
@@ -73,12 +74,11 @@ export default function Radio({
73
74
  const _id = `radio-${hashcode}-${index}`;
74
75
  const _name = `radio-${hashcode}-${name}`;
75
76
  return (
76
- <label
77
+ <div
77
78
  className={subCls}
78
- htmlFor={_id}
79
79
  key={_id}
80
- onClick={getChangeHandler(value)}
81
- >
80
+ onClickCapture={getChangeHandler(value)}
81
+ >
82
82
  <div className="weui-cell__hd">
83
83
  <input
84
84
  type="radio"
@@ -95,7 +95,7 @@ export default function Radio({
95
95
  <div className="weui-cell__bd">
96
96
  <p>{label}</p>
97
97
  </div>
98
- </label>
98
+ </div>
99
99
  );
100
100
  });
101
101
  } else {
@@ -104,7 +104,7 @@ export default function Radio({
104
104
  <TeaRadio.Group
105
105
  disabled={disabled}
106
106
  value={checkedItemValue}
107
- onChange={value => getChangeHandler(value)()}
107
+ onChange={(value, {event}) => getChangeHandler(value)(event)}
108
108
  >
109
109
  {range.map(({value, label}, index) => {
110
110
  const _id = `radio-${hashcode}-${index}`;
@@ -262,7 +262,7 @@ export function decodeIsoDatetime(isoStringOrTimesnap, type) {
262
262
 
263
263
  if (
264
264
  typeof isoStringOrTimesnap === 'string' &&
265
- /^[0-9]*$/.test(isoStringOrTimesnap)
265
+ /^-?[0-9]*$/.test(isoStringOrTimesnap)
266
266
  ) {
267
267
  const timeSnap = Number(isoStringOrTimesnap);
268
268
  if (!isNaN(timeSnap)) {
@@ -1,4 +1,4 @@
1
- [
1
+ export const cities = [
2
2
  {
3
3
  "level": 2,
4
4
  "code": "1101",
@@ -2407,4 +2407,4 @@
2407
2407
  "parent_code": "65",
2408
2408
  "en": "County-level administrative divisions directly under the Central Government"
2409
2409
  }
2410
- ]
2410
+ ];
@@ -1,7 +1,7 @@
1
1
  // 暂时把地区信息打包在本地, 后续移到COS桶内
2
- import provinces from './provinces.json';
3
- import cities from './cities.json';
4
- import regions from './regions.json';
2
+ import {provinces} from './provinces.js';
3
+ import {cities} from './cities.js';
4
+ import {regions} from './regions.js';
5
5
  import weui from '../../../../utils/weui';
6
6
 
7
7
  let tree;
@@ -1,4 +1,4 @@
1
- [
1
+ export const provinces = [
2
2
  {
3
3
  "level": 1,
4
4
  "code": "11",
@@ -237,4 +237,4 @@
237
237
  "parent_code": "",
238
238
  "en": "Taiwan"
239
239
  }
240
- ]
240
+ ];
@@ -1,4 +1,4 @@
1
- [
1
+ export const regions = [
2
2
  {
3
3
  "level": 3,
4
4
  "code": "110101",
@@ -20642,4 +20642,4 @@
20642
20642
  "parent_code": "620201",
20643
20643
  "en": "Changcheng District"
20644
20644
  }
20645
- ]
20645
+ ];
@@ -6,6 +6,7 @@ import getLocalCounter from '../../../utils/getLocalCounter';
6
6
  import {usePlatform} from '../../../utils/platform';
7
7
  import {Switch as TeaSwitch} from 'tea-component';
8
8
  import { renderDecorator } from '../renderDecorator';
9
+ import { useSyncValue } from '../../../utils/useSyncValue';
9
10
  export default function Switch({
10
11
  // 系统属性
11
12
  id,
@@ -36,16 +37,9 @@ export default function Switch({
36
37
  });
37
38
 
38
39
  const platform = usePlatform();
39
- const [checked, setChecked] = React.useState(defaultChecked);
40
40
  // 两次默认值不同时, 需要刷新
41
- const prevDefaultCheckedRef = React.useRef();
42
- React.useEffect(() => {
43
- if (prevDefaultCheckedRef.current !== defaultChecked) {
44
- prevDefaultCheckedRef.current = defaultChecked;
45
- setChecked(defaultChecked);
46
- }
47
- });
48
-
41
+ const [checked, setChecked] = useSyncValue(defaultChecked);
42
+
49
43
  const onChange = function (e) {
50
44
  setChecked(e.target.checked);
51
45
  events.change({ value: e.target.checked }, { originEvent: e });
@@ -76,6 +70,7 @@ export default function Switch({
76
70
  (
77
71
  <TeaSwitch
78
72
  id={_id}
73
+ value={checked}
79
74
  disabled={disabled}
80
75
  onChange={onChange}
81
76
  />
@@ -7,6 +7,7 @@ import './index.css';
7
7
  import { ConfigProvider, Input } from 'tea-component';
8
8
  import { usePlatform } from '../../../utils/platform';
9
9
  import { renderDecorator } from '../renderDecorator';
10
+ import { useSyncValue } from '../../../utils/useSyncValue';
10
11
 
11
12
  export default function Textarea({
12
13
  // 系统属性
@@ -42,22 +43,13 @@ export default function Textarea({
42
43
  'weui-cell_disabled': disabled,
43
44
  });
44
45
 
45
- const [value, setValue] = React.useState(defaultValue);
46
- const [counter, setCounter] = React.useState(defaultValue?.length || 0);
47
46
  // 两次默认值不同时, 需要刷新value
48
- const prevDefaultValueRef = React.useRef();
49
- React.useEffect(() => {
50
- if (prevDefaultValueRef.current !== defaultValue) {
51
- prevDefaultValueRef.current = defaultValue;
52
- setValue(defaultValue);
53
- setCounter(defaultValue?.length || 0);
54
- }
55
- });
56
-
47
+ const [value, setValue] = useSyncValue(defaultValue);
48
+ const counter = React.useMemo(() => (value?.length || 0), [value]);
49
+
57
50
  const onChange = function (e) {
58
51
  const text = typeof e === 'string' ? e : e.target.value;
59
52
  setValue(text);
60
- setCounter(text.length || 0);
61
53
  events.change({ value: text });
62
54
  };
63
55
 
@@ -67,3 +67,18 @@
67
67
  align-items: center;
68
68
  background-color: rgba(0, 0, 0, 0.6);
69
69
  }
70
+
71
+ .weui-uploader.horizontal {
72
+ display: flex;
73
+ }
74
+ .weui-uploader.horizontal .weui-uploader__hd {
75
+ display: inline-block;
76
+ align-self: center;
77
+ }
78
+ .weda-uploader-pc.horizontal {
79
+ display: flex;
80
+ justify-content: space-between;
81
+ }
82
+ .weui-uploader.horizontal .weui-uploader__bd {
83
+ padding-left: 2.28571rem;
84
+ }
@@ -2,9 +2,9 @@
2
2
  import * as React from 'react';
3
3
  import * as PropTypes from 'prop-types';
4
4
  import { usePlatform } from '../../../utils/platform';
5
- import { UploaderH5 } from './uploaderH5';
5
+ import { ImageUploaderH5 as UploaderH5 } from './uploader.h5';
6
6
  import classNames from '../../../utils/classnames';
7
- import { UploaderPCInner, CLASS_PREFIX } from './uploaderPc';
7
+ import { UploaderPCInner, CLASS_PREFIX } from './uploader.pc';
8
8
 
9
9
  import './index.css';
10
10
  import { renderDecorator } from '../renderDecorator';
@@ -0,0 +1,237 @@
1
+ import * as PropTypes from 'prop-types';
2
+ import * as React from 'react';
3
+ import weui from '../../../utils/weui';
4
+ import classNames from '../../../utils/classnames';
5
+ import { getCloudInstance, getTempFileURL } from '../../../utils/tcb';
6
+ import isObjectEqual from '../../../utils/isObjectEqual';
7
+ import { useSyncValue } from '../../../utils/useSyncValue';
8
+ import { isCloudFileID } from '../../../utils/platform';
9
+ import { IMAGE_TYPES } from './uploader.pc';
10
+
11
+ const uploadPath = 'weda-uploader';
12
+ /**
13
+ * H5端
14
+ */
15
+ export function ImageUploaderH5({
16
+ title,
17
+ maxUploadCount,
18
+ maxSize = 10,
19
+ acceptTypes,
20
+ className,
21
+ id,
22
+ events,
23
+ layout,
24
+ defaultValue,
25
+ single = false,
26
+ onChange,
27
+ style,
28
+ }) {
29
+ const cls = classNames({
30
+ 'weda-ui': true,
31
+ 'weui-cells': true,
32
+ 'weui-cells_form': true,
33
+ [className]: className,
34
+ });
35
+
36
+ // 上传中
37
+ const [uploading, setUploading] = React.useState(false);
38
+ //上传进度
39
+ const [progress, setProgress] = React.useState(0);
40
+ const [inputValue, setInputValue] = useSyncValue(defaultValue, isObjectEqual);
41
+ const fileIdList = React.useMemo(() => {
42
+ if( typeof inputValue === 'string') {
43
+ // single = true 传入的是字符串
44
+ return [inputValue].filter(i => i.length > 0); // 排除空串
45
+ }
46
+ if(Array.isArray(inputValue)) {
47
+ return inputValue;
48
+ }
49
+ return [];
50
+ }, [inputValue]);
51
+
52
+ const finalMaxImgCount = React.useMemo(() => {
53
+ if(single) return 1;
54
+ return maxUploadCount;
55
+ }, [single, maxUploadCount]);
56
+
57
+ const deleteFile = (url) => {
58
+ if(single) {
59
+ setInputValue('');
60
+ return;
61
+ }
62
+ setInputValue((list) => list.filter(f => f !== url));
63
+ };
64
+ React.useEffect(() => {
65
+ if (single) {
66
+ const file = fileIdList[0] || '';
67
+ file && onChange && onChange(file);
68
+ events.change && events.change({ value: file });
69
+ } else {
70
+ onChange && onChange(fileIdList);
71
+ events.change && events.change({ value: fileIdList });
72
+ }
73
+ }, [fileIdList]);
74
+ const onProgress = (progressEvent) => {
75
+ let percentCompleted = 0;
76
+ try {
77
+ percentCompleted = Math.round(
78
+ (progressEvent.loaded * 100) / progressEvent.total
79
+ );
80
+ percentCompleted < 100 ? percentCompleted : 100;
81
+ } catch (e) {}
82
+ setProgress(percentCompleted);
83
+ };
84
+ const uploadToTcb = (file) => {
85
+ setUploading(true);
86
+ getCloudInstance().then(async (tcb) => {
87
+ try {
88
+ const fileType = file.type.split('/')?.[1];
89
+ const cloudPath = `${uploadPath}/uploader-${Date.now()}.${fileType}`;
90
+ const { fileID } = await tcb.uploadFile({
91
+ cloudPath,
92
+ filePath: file,
93
+ onUploadProgress: onProgress,
94
+
95
+ });
96
+ fileID && setInputValue((list) => [...list, fileID]);
97
+ fileID && events.success && events.success({ value: fileID, file });
98
+ } catch (err) {
99
+ events.error && events.error(err);
100
+ } finally {
101
+ setUploading(false);
102
+ setProgress(0);
103
+ }
104
+ });
105
+ };
106
+
107
+ const accepts = React.useMemo(() => {
108
+ return acceptTypes.includes('image/*') || acceptTypes.length === 0
109
+ ? IMAGE_TYPES
110
+ : Array.from(new Set(acceptTypes));
111
+ }, [acceptTypes]);
112
+
113
+ return (
114
+ <div className={cls} id={id} style={style}>
115
+ <div className="weui-cell">
116
+ <div className="weui-cell__bd">
117
+ <div className={classNames("weui-uploader", layout)}>
118
+ <div className={classNames("weui-uploader__hd", layout)}>
119
+ <p className="weui-uploader__title">{title}</p>
120
+ <div className="weui-uploader__info">
121
+ <span id="uploadCount">{fileIdList.length}</span>
122
+ {`/${finalMaxImgCount}`}
123
+ </div>
124
+ </div>
125
+ <div className="weui-uploader__bd">
126
+ <ul className="weui-uploader__files" id="uploaderFiles">
127
+ {(fileIdList ?? []).map(f => <SingleImage key={f} src={f} deleteBySrc={deleteFile} />)}
128
+ {uploading &&
129
+ <li className="weui-uploader__file weui-uploader__file_status" >
130
+ <div className="weui-uploader__file-content">
131
+ {progress}%
132
+ </div>
133
+ </li>}
134
+ </ul>
135
+ {(fileIdList.length < maxUploadCount ||
136
+ (single && fileIdList.length < 1)) && ( // single 模式时,仅当数组为空时显示
137
+ <div className="weui-uploader__input-box">
138
+ <input
139
+ id="uploaderInput"
140
+ className="weui-uploader__input"
141
+ type="file"
142
+ accept={accepts.join(',')}
143
+ multiple
144
+ onChange={e => {
145
+ const files = [...e.target.files];
146
+ if (files.some(f => f.size > maxSize * 1024 * 1024)) {
147
+ weui.alert('请上传不超过10M的图片');
148
+ return false;
149
+ }
150
+
151
+ if (files.length > finalMaxImgCount) {
152
+ // 防止一下子选择过多文件
153
+ weui.alert(`最多只能上传${finalMaxImgCount}张图片,请重新选择`);
154
+ return false;
155
+ }
156
+ if (fileIdList.length + files.length > finalMaxImgCount) {
157
+ weui.alert(`最多只能上传${finalMaxImgCount}张图片`);
158
+ return false;
159
+ }
160
+ files.forEach(f => uploadToTcb(f));
161
+ }}
162
+ />
163
+ </div>
164
+ )}
165
+ </div>
166
+ </div>
167
+ </div>
168
+ </div>
169
+ </div>
170
+ );
171
+ }
172
+
173
+ function SingleImage({src, deleteBySrc}) {
174
+ const [error, setError] = React.useState(false);
175
+ const cls = classNames({
176
+ 'weui-uploader__file': true,
177
+ });
178
+ const [realSrc, setRealSrc] = React.useState('');
179
+ React.useEffect(() => {
180
+ const getSrc = async () => {
181
+ try {
182
+ const _src = await getTempFileURL(src);
183
+ setRealSrc(_src);
184
+ return _src;
185
+ } catch (e) {
186
+ setError(true);
187
+ console.error('图片加载失败');
188
+ }
189
+ };
190
+ if(isCloudFileID(src)) {
191
+ getSrc();
192
+ } else {
193
+ setRealSrc(src);
194
+ }
195
+ }, [src]);
196
+ const imgStyle = {
197
+ backgroundImage: `url(${realSrc})`
198
+ };
199
+ const showGallery = () => {
200
+ const gallery = weui.gallery(realSrc, {
201
+ onDelete: function() {
202
+ deleteBySrc(src);
203
+ gallery.hide();
204
+ }
205
+ });
206
+ };
207
+
208
+ return (
209
+ <li className={cls} style={imgStyle} onClick={showGallery}>
210
+ {
211
+ error || status ?
212
+ <div className="weui-uploader__file-content">
213
+ { error ? <i role="img" aria-label="错误" className="weui-icon-warn"></i> : <i className="weui-loading" style={{width: 30, height: 30}}></i> }
214
+ </div>
215
+ : false
216
+ }
217
+ </li>
218
+ );
219
+ }
220
+ SingleImage.propTypes = {
221
+ src: PropTypes.string,
222
+ deleteBySrc: PropTypes.func
223
+ };
224
+ ImageUploaderH5.propTypes = {
225
+ id: PropTypes.string,
226
+ title: PropTypes.string,
227
+ className: PropTypes.string, // 传入类
228
+ maxSize: PropTypes.number,
229
+ acceptTypes: PropTypes.array,
230
+ maxUploadCount: PropTypes.number, // 【上传图片最大数量】
231
+ events: PropTypes.objectOf(PropTypes.func), // 事件
232
+ style: PropTypes.object,
233
+ layout: PropTypes.oneOf(['horizontal', 'vertical']),
234
+ defaultValue: PropTypes.oneOfType([PropTypes.array, PropTypes.string]), // 初始值,该参数需配合 formily 使用
235
+ single: PropTypes.bool, // 单张上传还是多张上传,对应 onChange 参数为字符串还是字符串数组,value 在处理过程统一转为字符串数组
236
+ onChange: PropTypes.objectOf(PropTypes.func), // 值变化,该参数需配合 formily 使用
237
+ };