@cloudbase/weda-ui 3.4.2 → 3.4.4

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 (537) hide show
  1. package/dist/configs/components/auth.json +2 -1
  2. package/dist/configs/components/button.js +240 -0
  3. package/dist/configs/components/calendar.json +4 -2
  4. package/dist/configs/components/carousel.json +2 -1
  5. package/dist/configs/components/chart/bar.json +7 -2
  6. package/dist/configs/components/chart/line.js +872 -0
  7. package/dist/configs/components/chart/pie.json +7 -2
  8. package/dist/configs/components/chart/statisticsCard.json +3 -2
  9. package/dist/configs/components/container.js +64 -0
  10. package/dist/configs/components/dataView.js +507 -0
  11. package/dist/configs/components/drawer.json +2 -1
  12. package/dist/configs/components/flow/flow.json +26 -0
  13. package/dist/configs/components/flow/flowbasic.json +122 -0
  14. package/dist/configs/components/flow/flowchart.json +22 -0
  15. package/dist/configs/components/flow/flowcontrol.json +66 -0
  16. package/dist/configs/components/flow/flowlayout.json +31 -0
  17. package/dist/configs/components/flow/flowprocess.json +122 -0
  18. package/dist/configs/components/form/checkbox.json +2 -1
  19. package/dist/configs/components/form/departTreeSelect.json +2 -1
  20. package/dist/configs/components/form/form.json +2 -1
  21. package/dist/configs/components/form/input.json +2 -1
  22. package/dist/configs/components/form/location.json +4 -2
  23. package/dist/configs/components/form/radio.json +2 -1
  24. package/dist/configs/components/form/richText.json +2 -1
  25. package/dist/configs/components/form/select.json +6 -1
  26. package/dist/configs/components/form/switch.json +2 -1
  27. package/dist/configs/components/form/textarea.json +2 -1
  28. package/dist/configs/components/form/tips.json +2 -1
  29. package/dist/configs/components/form/uploader.json +2 -1
  30. package/dist/configs/components/form/uploaderFile.json +2 -1
  31. package/dist/configs/components/form/userTreeSelect.json +57 -1
  32. package/dist/configs/components/formdetail.json +16 -4
  33. package/dist/configs/components/graphicCard.json +2 -1
  34. package/dist/configs/components/grid/col.js +125 -0
  35. package/dist/configs/components/grid/grid.js +131 -0
  36. package/dist/configs/components/grid/row.js +143 -0
  37. package/dist/configs/components/image.js +205 -0
  38. package/dist/configs/components/link.js +78 -0
  39. package/dist/configs/components/listView.js +988 -0
  40. package/dist/configs/components/lottery.json +6 -2
  41. package/dist/configs/components/modal.js +72 -0
  42. package/dist/configs/components/navLayout.json +3 -2
  43. package/dist/configs/components/navigationBar.json +12 -3
  44. package/dist/configs/components/pagelayout.json +31 -0
  45. package/dist/configs/components/repeater-item.json +17 -0
  46. package/dist/configs/components/repeater.js +125 -0
  47. package/dist/configs/components/richtextview.json +4 -3
  48. package/dist/configs/components/scrollVeiw.json +5 -3
  49. package/dist/configs/components/slot.json +2 -1
  50. package/dist/configs/components/swiper.json +3 -2
  51. package/dist/configs/components/table.json +777 -0
  52. package/dist/configs/components/tabs.js +120 -0
  53. package/dist/configs/components/text.js +120 -0
  54. package/dist/configs/components/wd-bubble.js +204 -0
  55. package/dist/configs/components/wd-button.js +417 -0
  56. package/dist/configs/components/wd-divider.js +89 -0
  57. package/dist/configs/components/wd-icon.js +126 -0
  58. package/dist/configs/components/wd-image.js +164 -0
  59. package/dist/configs/components/wd-link.js +234 -0
  60. package/dist/configs/components/wd-table.js +59 -0
  61. package/dist/configs/components/wd-text.js +142 -0
  62. package/dist/configs/components/wedaVideo.json +7 -2
  63. package/dist/configs/components/wxOpenApi/phone.js +126 -0
  64. package/dist/configs/components/wxOpenApi/phoneCode.js +117 -0
  65. package/dist/configs/components/wxOpenApi/share.js +164 -0
  66. package/dist/configs/components/wxOpenApi/userInfo.js +168 -0
  67. package/dist/configs/index.js +63 -14
  68. package/dist/configs/type-utils/index.js +92 -0
  69. package/dist/docs/common/componentList.js +144 -0
  70. package/dist/docs/common/components/classes-view.js +34 -0
  71. package/dist/docs/common/components/event-view.js +46 -0
  72. package/dist/docs/common/components/json-schema-view.js +18 -0
  73. package/dist/docs/common/components/methods-view.js +32 -0
  74. package/dist/docs/common/components/properties-view.js +45 -0
  75. package/dist/docs/common/format.js +60 -35
  76. package/dist/docs/common/helper.js +1 -0
  77. package/dist/docs/common/tableView.js +61 -50
  78. package/dist/enum/index.js +521 -0
  79. package/dist/index.js +1 -1
  80. package/dist/style/index.scss +1 -0
  81. package/dist/web/actions/showMessage/index.css +0 -3
  82. package/dist/web/actions/showMessage/index.js +1 -1
  83. package/dist/web/actions/showModal/index.css +0 -3
  84. package/dist/web/components/button/index.css +2 -5
  85. package/dist/web/components/button/index.js +4 -4
  86. package/dist/web/components/calendar/index.css +29 -32
  87. package/dist/web/components/calendar/index.js +37 -35
  88. package/dist/web/components/carousel/index.css +11 -14
  89. package/dist/web/components/carousel/index.js +13 -6
  90. package/dist/web/components/chart/common/core/eChartBar.js +10 -2
  91. package/dist/web/components/chart/common/core/eChartLine.js +16 -8
  92. package/dist/web/components/chart/common/core/eChartPie.js +2 -1
  93. package/dist/web/components/chart/statisticsCard/index.css +12 -15
  94. package/dist/web/components/chart/statisticsCard/index.js +6 -1
  95. package/dist/web/components/dataView/index.js +3 -3
  96. package/dist/web/components/emptyContent/index.css +26 -0
  97. package/dist/web/components/emptyContent/index.js +46 -0
  98. package/dist/web/components/flow/components/FlowModuleText/Content.js +6 -0
  99. package/dist/web/components/flow/components/FlowModuleText/Title.js +16 -0
  100. package/dist/web/components/flow/components/FlowModuleText/index.css +4 -0
  101. package/dist/web/components/flow/components/FlowModuleText/index.js +7 -0
  102. package/dist/web/components/flow/components/FlowModuleText/utils.js +34 -0
  103. package/dist/web/components/flow/components/FlowStatusText/index.js +37 -0
  104. package/dist/web/components/flow/components/FlowUserSelect/index.css +116 -0
  105. package/dist/web/components/flow/components/FlowUserSelect/index.js +115 -0
  106. package/dist/web/components/flow/components/HighLightComment/index.js +31 -0
  107. package/dist/web/components/flow/components/HighlightTextarea/index.css +42 -0
  108. package/dist/web/components/flow/components/HighlightTextarea/index.js +131 -0
  109. package/dist/web/components/flow/components/UserSelectModel/UserSelect.js +74 -0
  110. package/dist/web/components/flow/components/UserSelectModel/UserSelectMobile.css +8 -0
  111. package/dist/web/components/flow/components/UserSelectModel/UserSelectMobile.js +86 -0
  112. package/dist/web/components/flow/components/UserSelectModel/index.js +18 -0
  113. package/dist/web/components/flow/components/WedaUserTransfer/index.css +3 -0
  114. package/dist/web/components/flow/components/WedaUserTransfer/index.js +162 -0
  115. package/dist/web/components/flow/components/index.js +7 -0
  116. package/dist/web/components/flow/constants/index.js +65 -0
  117. package/dist/web/components/flow/frame/getCommonFlowData.js +80 -0
  118. package/dist/web/components/flow/frame/hooks/index.js +2 -0
  119. package/dist/web/components/flow/frame/hooks/useCommonFlowRequest.js +148 -0
  120. package/dist/web/components/flow/frame/hooks/useElementMediaQuery.js +15 -0
  121. package/dist/web/components/flow/frame/index.js +75 -0
  122. package/dist/web/components/flow/frame/types.js +271 -0
  123. package/dist/web/components/flow/frame/utils.js +90 -0
  124. package/dist/web/components/flow/modules/basic/Basic.css +16 -0
  125. package/dist/web/components/flow/modules/basic/Basic.js +48 -0
  126. package/dist/web/components/flow/modules/basic/BasicMobile.css +29 -0
  127. package/dist/web/components/flow/modules/basic/BasicMobile.js +41 -0
  128. package/dist/web/components/flow/modules/basic/index.js +13 -0
  129. package/dist/web/components/flow/modules/basic/utils.js +20 -0
  130. package/dist/web/components/flow/modules/chart/Chart.js +302 -0
  131. package/dist/web/components/flow/modules/chart/constants.js +28 -0
  132. package/dist/web/components/flow/modules/chart/index.css +87 -0
  133. package/dist/web/components/flow/modules/chart/index.js +5 -0
  134. package/dist/web/components/flow/modules/chart/isString.js +5 -0
  135. package/dist/web/components/flow/modules/combination/index.js +21 -0
  136. package/dist/web/components/flow/modules/control/ApprovalDrawer.css +144 -0
  137. package/dist/web/components/flow/modules/control/ApprovalDrawer.js +178 -0
  138. package/dist/web/components/flow/modules/control/ApprovalPopup.css +115 -0
  139. package/dist/web/components/flow/modules/control/ApprovalPopup.js +241 -0
  140. package/dist/web/components/flow/modules/control/Control.css +29 -0
  141. package/dist/web/components/flow/modules/control/Control.js +93 -0
  142. package/dist/web/components/flow/modules/control/ControlMobile.css +69 -0
  143. package/dist/web/components/flow/modules/control/ControlMobile.js +133 -0
  144. package/dist/web/components/flow/modules/control/FlowTaskInfoModal.css +3 -0
  145. package/dist/web/components/flow/modules/control/FlowTaskInfoModal.js +31 -0
  146. package/dist/web/components/flow/modules/control/constants/index.js +35 -0
  147. package/dist/web/components/flow/modules/control/index.js +15 -0
  148. package/dist/web/components/flow/modules/control/provider/index.js +17 -0
  149. package/dist/web/components/flow/modules/control/provider/useControlModel.js +256 -0
  150. package/dist/web/components/flow/modules/control/provider/useMobileModel.js +86 -0
  151. package/dist/web/components/flow/modules/control/provider/useRevokeAndBackHook.js +82 -0
  152. package/dist/web/components/flow/modules/control/utils/ControlModelUtils.js +57 -0
  153. package/dist/web/components/flow/modules/control/utils/index.js +2 -0
  154. package/dist/web/components/flow/modules/layout/index.css +6 -0
  155. package/dist/web/components/flow/modules/layout/index.js +22 -0
  156. package/dist/web/components/flow/modules/process/Process.js +73 -0
  157. package/dist/web/components/flow/modules/process/ProcessMobile.js +81 -0
  158. package/dist/web/components/flow/modules/process/index.css +194 -0
  159. package/dist/web/components/flow/modules/process/index.js +14 -0
  160. package/dist/web/components/flow/modules/process/utils/index.js +32 -0
  161. package/dist/web/components/flow/services/flow.js +111 -0
  162. package/dist/web/components/flow/services/ideData/chart.js +88 -0
  163. package/dist/web/components/flow/services/ideData/index.js +5 -0
  164. package/dist/web/components/flow/services/ideData/instance.js +23 -0
  165. package/dist/web/components/flow/services/ideData/pageDetail.js +41 -0
  166. package/dist/web/components/flow/services/ideData/process.js +27 -0
  167. package/dist/web/components/flow/services/index.js +2 -0
  168. package/dist/web/components/flow/services/user.js +23 -0
  169. package/dist/web/components/flow/services/utils.js +28 -0
  170. package/dist/web/components/form/enumSelect/NormalSelect.js +1 -1
  171. package/dist/web/components/form/form/index.css +2 -5
  172. package/dist/web/components/form/form/index.js +52 -7
  173. package/dist/web/components/form/formcell/index.css +29 -17
  174. package/dist/web/components/form/input/index.css +10 -8
  175. package/dist/web/components/form/input/index.js +12 -1
  176. package/dist/web/components/form/location/common/mapChoose.css +88 -91
  177. package/dist/web/components/form/location/common/selectModal.css +10 -13
  178. package/dist/web/components/form/location/components/LocationH5/index.css +17 -20
  179. package/dist/web/components/form/location/components/LocationH5/location.h5.js +2 -3
  180. package/dist/web/components/form/location/components/LocationH5/location.module.css +0 -3
  181. package/dist/web/components/form/location/components/LocationPC/index.css +10 -13
  182. package/dist/web/components/form/location/components/LocationPC/location.PC.js +2 -3
  183. package/dist/web/components/form/location/index.css +0 -3
  184. package/dist/web/components/form/radio/index.css +0 -3
  185. package/dist/web/components/form/select/allTimePicker/calendar.css +15 -18
  186. package/dist/web/components/form/select/allTimePicker/dataUtils.js +10 -0
  187. package/dist/web/components/form/select/allTimePicker/index.css +53 -27
  188. package/dist/web/components/form/select/allTimePicker/index.js +36 -27
  189. package/dist/web/components/form/select/dropdown-select/h5.js +141 -0
  190. package/dist/web/components/form/select/dropdown-select/index.css +159 -0
  191. package/dist/web/components/form/select/dropdown-select/index.js +206 -0
  192. package/dist/web/components/form/select/dropdown-select/pc.js +113 -0
  193. package/dist/web/components/form/select/dropdown-select/ui.js +45 -40
  194. package/dist/web/components/form/select/h5.js +16 -6
  195. package/dist/web/components/form/select/index.css +17 -6
  196. package/dist/web/components/form/select/index.js +7 -9
  197. package/dist/web/components/form/select/request.js +106 -0
  198. package/dist/web/components/form/select/status/allEmpty.js +5 -0
  199. package/dist/web/components/form/select/status/empty.js +18 -0
  200. package/dist/web/components/form/select/status/index.css +63 -0
  201. package/dist/web/components/form/select/status/index.js +7 -0
  202. package/dist/web/components/form/select/status/loading.js +20 -0
  203. package/dist/web/components/form/select/status/propsType.js +1 -0
  204. package/dist/web/components/form/select/status/retry.js +20 -0
  205. package/dist/web/components/form/switch/index.js +1 -1
  206. package/dist/web/components/form/switch/switch.module.css +0 -3
  207. package/dist/web/components/form/textarea/index.css +1 -4
  208. package/dist/web/components/form/textarea/index.js +1 -1
  209. package/dist/web/components/form/tips/index.css +11 -2
  210. package/dist/web/components/form/uploader/index.css +14 -17
  211. package/dist/web/components/form/uploader/uploader.h5.js +4 -4
  212. package/dist/web/components/form/uploader/uploader.pc.js +1 -1
  213. package/dist/web/components/form/uploaderFile/index.css +61 -64
  214. package/dist/web/components/form/uploaderFile/uploadFile.h5.js +1 -1
  215. package/dist/web/components/form/uploaderFile/uploadFile.pc.js +1 -1
  216. package/dist/web/components/form/userOrgSelect/common/fetch-data-service.js +276 -0
  217. package/dist/web/components/form/userOrgSelect/common/types.js +1 -0
  218. package/dist/web/components/form/userOrgSelect/common/utils.js +103 -0
  219. package/dist/web/components/form/userOrgSelect/component/depart-breadcrumb.js +15 -0
  220. package/dist/web/components/form/userOrgSelect/component/depart-select/depart-select-pc.js +63 -0
  221. package/dist/web/components/form/userOrgSelect/component/depart-select/index.js +96 -0
  222. package/dist/web/components/form/userOrgSelect/component/depart-select/org-modal-pc.js +69 -0
  223. package/dist/web/components/form/userOrgSelect/component/error-tips.js +11 -0
  224. package/dist/web/components/form/userOrgSelect/component/index.css +323 -0
  225. package/dist/web/components/form/userOrgSelect/component/input-tags.js +21 -0
  226. package/dist/web/components/form/userOrgSelect/component/modal-search-h5.js +25 -0
  227. package/dist/web/components/form/userOrgSelect/component/modal-search.js +11 -0
  228. package/dist/web/components/form/userOrgSelect/component/modal-select-h5.js +201 -0
  229. package/dist/web/components/form/userOrgSelect/component/org-tree-h5.js +19 -0
  230. package/dist/web/components/form/userOrgSelect/component/org-tree.js +33 -0
  231. package/dist/web/components/form/userOrgSelect/component/selected-list-h5.js +44 -0
  232. package/dist/web/components/form/userOrgSelect/component/selected-list.js +15 -0
  233. package/dist/web/components/form/userOrgSelect/component/user-org-list.js +55 -0
  234. package/dist/web/components/form/userOrgSelect/component/user-select-h5/index.js +151 -0
  235. package/dist/web/components/form/userOrgSelect/component/user-select-h5/user-list-h5.js +107 -0
  236. package/dist/web/components/form/userOrgSelect/component/user-select-h5/user-select-h5.js +50 -0
  237. package/dist/web/components/form/userOrgSelect/component/user-select-pc/error-tips.js +11 -0
  238. package/dist/web/components/form/userOrgSelect/component/user-select-pc/model-user-list.js +99 -0
  239. package/dist/web/components/form/userOrgSelect/component/user-select-pc/org-tree.js +10 -0
  240. package/dist/web/components/form/userOrgSelect/component/user-select-pc/user-model.js +75 -0
  241. package/dist/web/components/form/userOrgSelect/component/user-select-pc/user-select-pc.js +65 -0
  242. package/dist/web/components/form/userOrgSelect/component/userOrgSelect.css +1160 -0
  243. package/dist/web/components/form/userOrgSelect/departTreeSelect/departTreeSelect.h5.js +54 -87
  244. package/dist/web/components/form/userOrgSelect/hooks/use-depart-data.js +88 -0
  245. package/dist/web/components/form/userOrgSelect/hooks/use-views-data.js +48 -0
  246. package/dist/web/components/formdetail/index.css +34 -31
  247. package/dist/web/components/formdetail/index.js +12 -3
  248. package/dist/web/components/graphicCard/index.css +15 -18
  249. package/dist/web/components/grid/_utils.css +67 -0
  250. package/dist/web/components/grid/col.js +33 -0
  251. package/dist/web/components/grid/grid.css +1185 -0
  252. package/dist/web/components/grid/grid.js +19 -0
  253. package/dist/web/components/grid/row.js +14 -0
  254. package/dist/web/components/image/image.js +9 -1
  255. package/dist/web/components/image/index.css +2 -5
  256. package/dist/web/components/image/index.js +1 -1
  257. package/dist/web/components/index.js +33 -2
  258. package/dist/web/components/link/index.css +0 -3
  259. package/dist/web/components/listView/index.css +26 -20
  260. package/dist/web/components/listView/index.js +234 -81
  261. package/dist/web/components/lottery/index.css +72 -75
  262. package/dist/web/components/modal/h5.css +19 -21
  263. package/dist/web/components/modal/modal.h5.js +12 -11
  264. package/dist/web/components/modal/modal.pc.js +1 -1
  265. package/dist/web/components/navLayout/index.css +14 -139
  266. package/dist/web/components/navigationBar/common.js +5 -4
  267. package/dist/web/components/navigationBar/h5Menu.js +12 -10
  268. package/dist/web/components/navigationBar/horizontalMenu.js +42 -35
  269. package/dist/web/components/navigationBar/index.css +131 -86
  270. package/dist/web/components/navigationBar/index.js +6 -4
  271. package/dist/web/components/navigationBar/verticalMenu.js +13 -9
  272. package/dist/web/components/pageLayout/PageContent/index.css +25 -0
  273. package/dist/web/components/pageLayout/PageContent/index.js +81 -0
  274. package/dist/web/components/pageLayout/index.css +4 -0
  275. package/dist/web/components/pageLayout/index.js +22 -0
  276. package/dist/web/components/phoneCode/index.js +1 -0
  277. package/dist/web/components/repeater/index.js +17 -0
  278. package/dist/web/components/repeater-item/index.js +9 -0
  279. package/dist/web/components/richText/index.css +8 -7
  280. package/dist/web/components/richText/index.js +6 -4
  281. package/dist/web/components/richText/richtext.module.css +2 -5
  282. package/dist/web/components/richTextView/index.css +7 -10
  283. package/dist/web/components/swiper/index.css +10 -13
  284. package/dist/web/components/swiper/index.js +19 -5
  285. package/dist/web/components/table/BaseTable.js +1240 -0
  286. package/dist/web/components/table/ExportFileModalByApi/index.css +9 -0
  287. package/dist/web/components/table/ExportFileModalByApi/index.js +150 -0
  288. package/dist/web/components/table/FieldRender.js +629 -0
  289. package/dist/web/components/table/FilterFields.js +518 -0
  290. package/dist/web/components/table/Form/Enum.js +56 -0
  291. package/dist/web/components/table/Form/Location.css +11 -0
  292. package/dist/web/components/table/Form/Location.js +126 -0
  293. package/dist/web/components/table/ImportFileModal/csvTemplate.json +606 -0
  294. package/dist/web/components/table/ImportFileModal/index.js +310 -0
  295. package/dist/web/components/table/ImportFileModal/submitFormatter.js +32 -0
  296. package/dist/web/components/table/ImportFileModal/validate.js +127 -0
  297. package/dist/web/components/table/ImportFileModalByApi/index.css +130 -0
  298. package/dist/web/components/table/ImportFileModalByApi/index.js +321 -0
  299. package/dist/web/components/table/ImportFileModalByApi/uploadCSVFile.js +115 -0
  300. package/dist/web/components/table/InOrOutRecordModeal.js +139 -0
  301. package/dist/web/components/table/QuoteModal.js +16 -0
  302. package/dist/web/components/table/SelectableBlock/index.css +0 -0
  303. package/dist/web/components/table/SelectableBlock/index.js +81 -0
  304. package/dist/web/components/table/UserDepartment/ViewCell.js +11 -0
  305. package/dist/web/components/table/UserDepartment/utils.js +80 -0
  306. package/dist/web/components/table/UserDepartment/viewCell.css +11 -0
  307. package/dist/web/components/table/baseTable.css +579 -0
  308. package/dist/web/components/table/hooks/useImportingStatus.js +69 -0
  309. package/dist/web/components/table/hooks/useInOutFieldsRecords.js +23 -0
  310. package/dist/web/components/table/index.css +336 -0
  311. package/dist/web/components/table/index.js +111 -0
  312. package/dist/web/components/tabs/index.css +19 -18
  313. package/dist/web/components/tabs/tabs.h5.js +8 -17
  314. package/dist/web/components/tabs/tabs.pc.js +1 -1
  315. package/dist/web/components/text/index.css +7 -9
  316. package/dist/web/components/text/index.js +2 -2
  317. package/dist/web/components/uploaderFileView/index.css +0 -3
  318. package/dist/web/components/uploaderFileView/index.js +6 -5
  319. package/dist/web/components/uploaderView/index.css +5 -8
  320. package/dist/web/components/wd-bubble/index.js +3 -0
  321. package/dist/web/components/wd-bubble/wd-bubble.js +17 -0
  322. package/dist/web/components/wd-button/convert-legacy-props.js +14 -0
  323. package/dist/web/components/wd-button/index.js +3 -0
  324. package/dist/web/components/wd-button/wd-button.js +89 -0
  325. package/dist/web/components/wd-config-provider/index.js +1 -0
  326. package/dist/web/components/wd-config-provider/wd-config-context.js +5 -0
  327. package/dist/web/components/wd-config-provider/wd-config-provider.js +12 -0
  328. package/dist/web/components/wd-divider/index.js +3 -0
  329. package/dist/web/components/wd-divider/wd-divider.js +29 -0
  330. package/dist/web/components/wd-icon/convert-legacy-props.js +14 -0
  331. package/dist/web/components/wd-icon/index.js +3 -0
  332. package/dist/web/components/wd-icon/wd-icon.js +63 -0
  333. package/dist/web/components/wd-image/image.js +171 -0
  334. package/dist/web/components/wd-image/index.js +82 -0
  335. package/dist/web/components/wd-link/index.js +3 -0
  336. package/dist/web/components/wd-link/wd-link.js +105 -0
  337. package/dist/web/components/wd-table/index.js +3 -0
  338. package/dist/web/components/wd-table/wd-table.js +24 -0
  339. package/dist/web/components/wd-text/convert-legacy-props.js +14 -0
  340. package/dist/web/components/wd-text/index.js +3 -0
  341. package/dist/web/components/wd-text/wd-text.js +91 -0
  342. package/dist/web/components/wedaVideo/index.css +2 -5
  343. package/dist/web/components/wedaVideo/index.js +9 -7
  344. package/dist/web/index.js +1 -0
  345. package/dist/web/utils/config-context/index.js +1 -0
  346. package/dist/web/utils/config-context/use-config.js +9 -0
  347. package/dist/web/utils/constant.js +95 -1
  348. package/dist/web/utils/datasource.js +369 -0
  349. package/dist/web/utils/date.js +137 -0
  350. package/dist/web/utils/file.js +190 -0
  351. package/dist/web/utils/getPageQuery.js +16 -0
  352. package/dist/web/utils/hooks/CreatePortal.js +6 -0
  353. package/dist/web/utils/hooks/EnumHoc.js +81 -0
  354. package/dist/web/utils/hooks/context.js +28 -0
  355. package/dist/web/utils/hooks/globalConnect.js +26 -0
  356. package/dist/web/utils/{use-cloud-id-temp-url.js → hooks/use-cloud-id-temp-url.js} +2 -2
  357. package/dist/web/utils/{useSetState.js → hooks/useSetState.js} +0 -0
  358. package/dist/web/utils/{useSyncValue.js → hooks/useSyncValue.js} +0 -0
  359. package/dist/web/utils/platform.js +137 -28
  360. package/dist/web/utils/pollingInterface.js +61 -0
  361. package/dist/web/utils/tcb.js +46 -8
  362. package/dist/web/utils/tool.js +109 -0
  363. package/dist/web/utils/widget-api/index.js +18 -0
  364. package/dist/web/weda-ui.css +128 -4
  365. package/package.json +59 -29
  366. package/dist/configs/components/button.json +0 -239
  367. package/dist/configs/components/chart/line.json +0 -881
  368. package/dist/configs/components/container.json +0 -64
  369. package/dist/configs/components/dataView.json +0 -290
  370. package/dist/configs/components/image.json +0 -190
  371. package/dist/configs/components/link.json +0 -82
  372. package/dist/configs/components/listView.json +0 -483
  373. package/dist/configs/components/modal.json +0 -73
  374. package/dist/configs/components/tabs.json +0 -122
  375. package/dist/configs/components/text.json +0 -112
  376. package/dist/configs/components/wxOpenApi/phone.json +0 -127
  377. package/dist/configs/components/wxOpenApi/phoneCode.json +0 -109
  378. package/dist/configs/components/wxOpenApi/share.json +0 -161
  379. package/dist/configs/components/wxOpenApi/userInfo.json +0 -168
  380. package/dist/configs/index.d.ts +0 -105
  381. package/dist/docs/common/format.d.ts +0 -13
  382. package/dist/docs/common/tableView.d.ts +0 -30
  383. package/dist/index.d.ts +0 -2
  384. package/dist/setupTests.d.ts +0 -2
  385. package/dist/web/actions/index.d.ts +0 -3
  386. package/dist/web/actions/showMessage/index.d.ts +0 -17
  387. package/dist/web/actions/showModal/index.d.ts +0 -4
  388. package/dist/web/actions/showToast/index.d.ts +0 -1
  389. package/dist/web/components/button/index.d.ts +0 -33
  390. package/dist/web/components/calendar/index.d.ts +0 -19
  391. package/dist/web/components/calendar/util.d.ts +0 -13
  392. package/dist/web/components/carousel/index.d.ts +0 -41
  393. package/dist/web/components/chart/bar/index.d.ts +0 -3
  394. package/dist/web/components/chart/bar/index.old.d.ts +0 -40
  395. package/dist/web/components/chart/common/Chart.d.ts +0 -9
  396. package/dist/web/components/chart/common/chart-custom-connector.d.ts +0 -6
  397. package/dist/web/components/chart/common/chart-error.d.ts +0 -2
  398. package/dist/web/components/chart/common/config/bar.d.ts +0 -48
  399. package/dist/web/components/chart/common/config/global.d.ts +0 -13
  400. package/dist/web/components/chart/common/config/line.d.ts +0 -46
  401. package/dist/web/components/chart/common/config/pie.d.ts +0 -29
  402. package/dist/web/components/chart/common/core/eChartBar.d.ts +0 -66
  403. package/dist/web/components/chart/common/core/eChartBase.d.ts +0 -127
  404. package/dist/web/components/chart/common/core/eChartLine.d.ts +0 -60
  405. package/dist/web/components/chart/common/core/eChartPie.d.ts +0 -48
  406. package/dist/web/components/chart/common/core/type.d.ts +0 -35
  407. package/dist/web/components/chart/common/data-transform.d.ts +0 -8
  408. package/dist/web/components/chart/common/echarts.d.ts +0 -5
  409. package/dist/web/components/chart/common/useChart.d.ts +0 -8
  410. package/dist/web/components/chart/line/index.d.ts +0 -3
  411. package/dist/web/components/chart/line/index.old.d.ts +0 -38
  412. package/dist/web/components/chart/pie/index.d.ts +0 -3
  413. package/dist/web/components/chart/pie/index.old.d.ts +0 -27
  414. package/dist/web/components/chart/statisticsCard/index.d.ts +0 -85
  415. package/dist/web/components/chart/statisticsCard/interface.d.ts +0 -13
  416. package/dist/web/components/common/error-boundary.d.ts +0 -5
  417. package/dist/web/components/common/portal.d.ts +0 -7
  418. package/dist/web/components/common/use-loop-render-detect.d.ts +0 -11
  419. package/dist/web/components/container/index.d.ts +0 -6
  420. package/dist/web/components/dataView/index.d.ts +0 -6
  421. package/dist/web/components/dataView/interface.d.ts +0 -5
  422. package/dist/web/components/drawer/index.d.ts +0 -13
  423. package/dist/web/components/form/checkbox/index.d.ts +0 -13
  424. package/dist/web/components/form/enumSelect/MultipleSelect.d.ts +0 -78
  425. package/dist/web/components/form/enumSelect/NormalSelect.d.ts +0 -83
  426. package/dist/web/components/form/enumSelect/SelectContainer.d.ts +0 -16
  427. package/dist/web/components/form/enumSelect/index.d.ts +0 -82
  428. package/dist/web/components/form/enumSelect/props/defaultProps.d.ts +0 -34
  429. package/dist/web/components/form/enumSelect/props/propsTypes.d.ts +0 -39
  430. package/dist/web/components/form/form/index.d.ts +0 -32
  431. package/dist/web/components/form/formcell/index.d.ts +0 -8
  432. package/dist/web/components/form/input/index.d.ts +0 -14
  433. package/dist/web/components/form/location/common/mapChoose.d.ts +0 -15
  434. package/dist/web/components/form/location/common/mapView.d.ts +0 -19
  435. package/dist/web/components/form/location/common/propsConfig.d.ts +0 -59
  436. package/dist/web/components/form/location/common/selectModal.d.ts +0 -21
  437. package/dist/web/components/form/location/common/useLocationInfo.d.ts +0 -36
  438. package/dist/web/components/form/location/components/LocationH5/location.h5.d.ts +0 -8
  439. package/dist/web/components/form/location/components/LocationPC/Header.d.ts +0 -12
  440. package/dist/web/components/form/location/components/LocationPC/location.PC.d.ts +0 -8
  441. package/dist/web/components/form/location/constants.d.ts +0 -2
  442. package/dist/web/components/form/location/index.d.ts +0 -1
  443. package/dist/web/components/form/radio/index.d.ts +0 -11
  444. package/dist/web/components/form/renderDecorator.d.ts +0 -6
  445. package/dist/web/components/form/select/allTimePicker/calendar.d.ts +0 -13
  446. package/dist/web/components/form/select/allTimePicker/dataUtils.d.ts +0 -24
  447. package/dist/web/components/form/select/allTimePicker/index.d.ts +0 -14
  448. package/dist/web/components/form/select/dropdown-select/ui.d.ts +0 -15
  449. package/dist/web/components/form/select/h5.d.ts +0 -16
  450. package/dist/web/components/form/select/index.d.ts +0 -66
  451. package/dist/web/components/form/select/region/index.d.ts +0 -6
  452. package/dist/web/components/form/select/time.d.ts +0 -9
  453. package/dist/web/components/form/select/use-options.d.ts +0 -26
  454. package/dist/web/components/form/select/use-options.js +0 -103
  455. package/dist/web/components/form/select/year.d.ts +0 -7
  456. package/dist/web/components/form/switch/index.d.ts +0 -6
  457. package/dist/web/components/form/textarea/index.d.ts +0 -12
  458. package/dist/web/components/form/tips/index.d.ts +0 -8
  459. package/dist/web/components/form/uploader/index.d.ts +0 -3
  460. package/dist/web/components/form/uploader/uploader.h5.d.ts +0 -20
  461. package/dist/web/components/form/uploader/uploader.pc.d.ts +0 -30
  462. package/dist/web/components/form/uploaderFile/index.d.ts +0 -4
  463. package/dist/web/components/form/uploaderFile/uploadFile.h5.d.ts +0 -23
  464. package/dist/web/components/form/uploaderFile/uploadFile.pc.d.ts +0 -35
  465. package/dist/web/components/form/userOrgSelect/comTool.d.ts +0 -8
  466. package/dist/web/components/form/userOrgSelect/comTool.js +0 -102
  467. package/dist/web/components/form/userOrgSelect/departTreeSelect/departTreeSelect.h5.d.ts +0 -19
  468. package/dist/web/components/form/userOrgSelect/departTreeSelect/departTreeSelect.pc.d.ts +0 -4
  469. package/dist/web/components/form/userOrgSelect/departTreeSelect/departTreeSelect.pc.js +0 -155
  470. package/dist/web/components/form/userOrgSelect/departTreeSelect/index.d.ts +0 -2
  471. package/dist/web/components/form/userOrgSelect/departTreeSelect/index.js +0 -17
  472. package/dist/web/components/form/userOrgSelect/getUserService.d.ts +0 -11
  473. package/dist/web/components/form/userOrgSelect/getUserService.js +0 -160
  474. package/dist/web/components/form/userOrgSelect/index.d.ts +0 -2
  475. package/dist/web/components/form/userOrgSelect/index.js +0 -17
  476. package/dist/web/components/form/userOrgSelect/userOrgSelect.css +0 -824
  477. package/dist/web/components/form/userOrgSelect/userTreeSelect.h5.d.ts +0 -27
  478. package/dist/web/components/form/userOrgSelect/userTreeSelect.h5.js +0 -278
  479. package/dist/web/components/form/userOrgSelect/userTreeSelect.pc.d.ts +0 -9
  480. package/dist/web/components/form/userOrgSelect/userTreeSelect.pc.js +0 -273
  481. package/dist/web/components/form/userOrgSelect/utils.d.ts +0 -37
  482. package/dist/web/components/form/userOrgSelect/utils.js +0 -95
  483. package/dist/web/components/formdetail/index.d.ts +0 -31
  484. package/dist/web/components/graphicCard/index.d.ts +0 -47
  485. package/dist/web/components/image/image.d.ts +0 -9
  486. package/dist/web/components/image/index.d.ts +0 -13
  487. package/dist/web/components/index.d.ts +0 -50
  488. package/dist/web/components/link/index.d.ts +0 -24
  489. package/dist/web/components/listView/index.d.ts +0 -7
  490. package/dist/web/components/listView/interface.d.ts +0 -127
  491. package/dist/web/components/lottery/index.d.ts +0 -22
  492. package/dist/web/components/lottery/lotteryUtil.d.ts +0 -23
  493. package/dist/web/components/modal/index.d.ts +0 -17
  494. package/dist/web/components/modal/modal.h5.d.ts +0 -4
  495. package/dist/web/components/modal/modal.pc.d.ts +0 -3
  496. package/dist/web/components/navLayout/index.d.ts +0 -65
  497. package/dist/web/components/navigationBar/common.d.ts +0 -15
  498. package/dist/web/components/navigationBar/h5Menu.d.ts +0 -14
  499. package/dist/web/components/navigationBar/horizontalMenu.d.ts +0 -12
  500. package/dist/web/components/navigationBar/index.d.ts +0 -13
  501. package/dist/web/components/navigationBar/verticalMenu.d.ts +0 -13
  502. package/dist/web/components/phone/index.d.ts +0 -18
  503. package/dist/web/components/phoneCode/index.d.ts +0 -18
  504. package/dist/web/components/picker/datePicker.d.ts +0 -10
  505. package/dist/web/components/picker/picker.d.ts +0 -6
  506. package/dist/web/components/picker/timePicker.d.ts +0 -7
  507. package/dist/web/components/richText/const.d.ts +0 -1
  508. package/dist/web/components/richText/index.d.ts +0 -50
  509. package/dist/web/components/richTextView/index.d.ts +0 -7
  510. package/dist/web/components/scrollView/index.d.ts +0 -25
  511. package/dist/web/components/share/index.d.ts +0 -34
  512. package/dist/web/components/slot/index.d.ts +0 -6
  513. package/dist/web/components/swiper/index.d.ts +0 -24
  514. package/dist/web/components/tabs/index.d.ts +0 -13
  515. package/dist/web/components/tabs/tabs.h5.d.ts +0 -4
  516. package/dist/web/components/tabs/tabs.pc.d.ts +0 -3
  517. package/dist/web/components/text/index.d.ts +0 -15
  518. package/dist/web/components/uploaderFileView/index.d.ts +0 -10
  519. package/dist/web/components/uploaderView/index.d.ts +0 -17
  520. package/dist/web/components/userInfo/index.d.ts +0 -26
  521. package/dist/web/components/wedaVideo/index.d.ts +0 -17
  522. package/dist/web/index.d.ts +0 -8
  523. package/dist/web/utils/classnames.d.ts +0 -2
  524. package/dist/web/utils/console.d.ts +0 -3
  525. package/dist/web/utils/constant.d.ts +0 -23
  526. package/dist/web/utils/debounce.d.ts +0 -2
  527. package/dist/web/utils/getLocalCounter.d.ts +0 -1
  528. package/dist/web/utils/isObjectEqual.d.ts +0 -2
  529. package/dist/web/utils/loading-fallback.d.ts +0 -2
  530. package/dist/web/utils/lodash.d.ts +0 -1
  531. package/dist/web/utils/platform.d.ts +0 -28
  532. package/dist/web/utils/tcb.d.ts +0 -33
  533. package/dist/web/utils/tmap.d.ts +0 -3
  534. package/dist/web/utils/use-cloud-id-temp-url.d.ts +0 -1
  535. package/dist/web/utils/useSetState.d.ts +0 -1
  536. package/dist/web/utils/useSyncValue.d.ts +0 -4
  537. package/dist/web/utils/weui.d.ts +0 -1
@@ -0,0 +1,518 @@
1
+ import React, { useState, useEffect, useMemo } from 'react';
2
+ import { DatePicker, TimePicker, Input, Form, Tooltip, Select, SelectMultiple, InputAdornment, Button, Row, Col, useClassNames, LoadingTip, } from 'tea-component';
3
+ import { formatDateToNumber, dateCalculation } from '../../utils/date';
4
+ import isObjectEqual from '../../utils/isObjectEqual';
5
+ import moment from 'moment';
6
+ import { useEnumContext } from '../../utils/hooks/context';
7
+ const { RangePicker } = DatePicker;
8
+ // 时间日期
9
+ const DatePickerField = ({ showTime = false, isRange, updateValue, value }) => isRange ? (React.createElement(Tooltip, { title: value && `${value[0]}~${value[1]}` },
10
+ React.createElement(RangePicker, { clearable: true, value: value ? [moment(value[0]), moment(value[1])] : null, showTime: showTime, onChange: (value) => {
11
+ var _a, _b;
12
+ updateValue({
13
+ value: value[0]
14
+ ? [
15
+ (_a = value[0]) === null || _a === void 0 ? void 0 : _a.format('YYYY-MM-DD HH:mm:ss'),
16
+ (_b = value[1]) === null || _b === void 0 ? void 0 : _b.format('YYYY-MM-DD HH:mm:ss'),
17
+ ]
18
+ : null,
19
+ });
20
+ } }))) : (React.createElement(Tooltip, { title: value },
21
+ React.createElement(DatePicker, { clearable: true, value: value ? moment(value) : null, showTime: showTime, onChange: (value) => updateValue({ value: value === null || value === void 0 ? void 0 : value.format('YYYY-MM-DD HH:mm:ss') }) })));
22
+ // 时间
23
+ const TimePickerField = ({ isRange, updateValue, value }) => isRange ? (React.createElement(TimePicker.RangePicker, { clearable: true, value: value
24
+ ? [moment(value[0], 'HH:mm:ss'), moment(value[1], 'HH:mm:ss')]
25
+ : [null, null], onChange: (value) => {
26
+ var _a, _b;
27
+ updateValue({
28
+ value: value[0]
29
+ ? [(_a = value[0]) === null || _a === void 0 ? void 0 : _a.format('HH:mm:ss'), (_b = value[1]) === null || _b === void 0 ? void 0 : _b.format('HH:mm:ss')]
30
+ : null,
31
+ });
32
+ } })) : (React.createElement(TimePicker, { clearable: true, value: value ? moment(value, 'HH:mm:ss') : null, onChange: (value) => updateValue({ value: value === null || value === void 0 ? void 0 : value.format('HH:mm:ss') }) }));
33
+ // 文本输入框
34
+ const InputField = ({ value, updateValue }) => (React.createElement(Input, { value: value, onChange: (value) => {
35
+ updateValue({ value });
36
+ } }));
37
+ // 数字范围输入
38
+ const MultipleNumber = ({ value, updateValue }) => {
39
+ const val1 = value ? value[0] : '';
40
+ const val2 = value ? value[1] : '';
41
+ return (React.createElement("div", { className: "_wedamodal-fn-input-range" },
42
+ React.createElement(Input, { size: "s", placeholder: "\u8BF7\u8F93\u5165", value: val1, onChange: (value) => {
43
+ if (isNaN(Number(value))) {
44
+ return;
45
+ }
46
+ updateValue({ value: [value, val2] });
47
+ } }),
48
+ React.createElement("span", { className: "_wedamodal-fn-input-range__split" }, "~"),
49
+ React.createElement(Input, { value: val2, onChange: (value) => {
50
+ if (isNaN(Number(value))) {
51
+ return;
52
+ }
53
+ updateValue({ value: [val1, value] });
54
+ }, size: "s", placeholder: "\u8BF7\u8F93\u5165" })));
55
+ };
56
+ // 数字输入框
57
+ const NumberField = ({ value, updateValue, isRange }) => isRange ? (React.createElement(MultipleNumber, { value: value, updateValue: updateValue })) : (React.createElement(Input, { value: value, onChange: (value) => {
58
+ if (isNaN(Number(value))) {
59
+ return;
60
+ }
61
+ updateValue({ value });
62
+ } }));
63
+ // 多选下拉框
64
+ const SelectMultipleField = (props) => {
65
+ const { optionName, value, updateValue, options } = props;
66
+ const { enumOptions } = useEnumContext();
67
+ let option = (enumOptions === null || enumOptions === void 0 ? void 0 : enumOptions[optionName]) || [];
68
+ if (!optionName && options) {
69
+ option = options;
70
+ }
71
+ return (React.createElement(SelectMultiple, { searchable: true, staging: false, matchButtonWidth: true, value: value, appearance: "button", options: option, onChange: (value) => {
72
+ updateValue({ value });
73
+ } }));
74
+ };
75
+ // 下拉单选
76
+ const SelectField = ({ optionName, value, updateValue }) => {
77
+ const { enumOptions } = useEnumContext();
78
+ const option = (enumOptions === null || enumOptions === void 0 ? void 0 : enumOptions[optionName]) || [];
79
+ return (React.createElement(Select, { clearable: true, searchable: true,
80
+ // @ts-ignore 不存在的属性
81
+ staging: false, matchButtonWidth: true, value: value, appearance: "button", options: option, onChange: (value) => {
82
+ updateValue({ value });
83
+ }, button: () => {
84
+ var _a, _b;
85
+ return value ? (React.createElement(Tooltip, { title: (_a = option === null || option === void 0 ? void 0 : option.find((i) => i.value === value)) === null || _a === void 0 ? void 0 : _a.text },
86
+ React.createElement("span", null, ((_b = option === null || option === void 0 ? void 0 : option.find((i) => i.value === value)) === null || _b === void 0 ? void 0 : _b.text) || value))) : (React.createElement("span", { className: "wedatea2td-text-weak" }, "\u8BF7\u9009\u62E9"));
87
+ } }));
88
+ };
89
+ // 搜索下拉
90
+ const SelectSearch = ({ getChooseList, value, updateValue, format, childDbName, }) => {
91
+ // 每次请求数据个数
92
+ const size = 200;
93
+ const [loading, setLoading] = useState(true);
94
+ const [searchLoading, setSearchLoading] = useState(false);
95
+ const [options, setOptions] = useState([]);
96
+ const [page, setPage] = useState(1);
97
+ const [searchOptions, setSearchOptions] = useState([]);
98
+ const [searchPage, setSearchPage] = useState(1);
99
+ const [searchValue, setSearchValue] = useState('');
100
+ const isSearch = useMemo(() => searchValue !== '', [searchValue]);
101
+ // 初始化请求
102
+ const getList = () => getChooseList({ pageNo: page, pageSize: size, format, childDbName });
103
+ // 搜索请求
104
+ const getWhereList = (value) => getChooseList({
105
+ pageNo: searchPage,
106
+ pageSize: size,
107
+ where: [{ key: '', val: `${value}`, rel: 'search' }],
108
+ format,
109
+ childDbName,
110
+ });
111
+ useEffect(() => {
112
+ getList().then((result) => {
113
+ const { data } = result;
114
+ if (!data || data.length === 0) {
115
+ // 为空
116
+ setOptions([]);
117
+ setLoading(false);
118
+ }
119
+ else if (result.size < size) {
120
+ // 无翻页
121
+ setOptions(data);
122
+ setLoading(false);
123
+ }
124
+ else {
125
+ // 有翻页
126
+ setOptions(data);
127
+ setLoading(true);
128
+ }
129
+ });
130
+ }, []);
131
+ useEffect(() => {
132
+ if (page > 1 && loading) {
133
+ getList().then((result) => {
134
+ const { data } = result;
135
+ if (!data || data.length === 0) {
136
+ setLoading(false);
137
+ }
138
+ else {
139
+ setOptions((options) => [...options, ...data]);
140
+ }
141
+ });
142
+ }
143
+ }, [page]);
144
+ useEffect(() => {
145
+ if (searchPage > 1 && searchLoading) {
146
+ getWhereList(searchValue).then((result) => {
147
+ const { data } = result;
148
+ if (!data || data.length === 0) {
149
+ setSearchLoading(false);
150
+ }
151
+ else {
152
+ setSearchOptions((options) => [...options, ...data]);
153
+ }
154
+ });
155
+ }
156
+ }, [searchPage]);
157
+ const searchState = (value) => {
158
+ setSearchPage(1);
159
+ setSearchValue(value);
160
+ setSearchLoading(true);
161
+ if (value.length === 0) {
162
+ // 为空
163
+ setSearchOptions([]);
164
+ setSearchLoading(false);
165
+ }
166
+ else {
167
+ // 不为空
168
+ getWhereList(value).then((result) => {
169
+ const { data } = result;
170
+ if (!data || data.length === 0) {
171
+ // 没搜到
172
+ setSearchOptions([]);
173
+ setSearchLoading(false);
174
+ }
175
+ else if (result.size < size) {
176
+ // 无翻页
177
+ setSearchOptions(data);
178
+ setSearchLoading(false);
179
+ }
180
+ else {
181
+ // 有翻页
182
+ setSearchOptions(data);
183
+ setSearchLoading(true);
184
+ }
185
+ });
186
+ }
187
+ };
188
+ return (React.createElement(Select, { clearable: true, searchable: true, matchButtonWidth: true, appearance: "button", autoClearSearchValue: true, options: (isSearch ? searchOptions : options) || [], value: value, bottomTips: (isSearch ? searchLoading : loading) ? React.createElement(LoadingTip, null) : '', onChange: (value) => {
189
+ updateValue({ value });
190
+ }, onOpen: () => {
191
+ setSearchLoading(false);
192
+ setSearchOptions([]);
193
+ setSearchPage(1);
194
+ setSearchValue('');
195
+ }, onScrollBottom: () => {
196
+ if (isSearch) {
197
+ setSearchPage((page) => page + 1);
198
+ }
199
+ else {
200
+ setPage((page) => page + 1);
201
+ }
202
+ }, onSearch: (value, context) => {
203
+ const tValue = value.trim();
204
+ if (context.event.type === 'click') {
205
+ if (tValue !== '') {
206
+ // 手动点击搜索
207
+ searchState(tValue);
208
+ }
209
+ else {
210
+ // 清空
211
+ setSearchValue('');
212
+ }
213
+ }
214
+ else if (tValue !== '') {
215
+ // 动态输入搜索
216
+ searchState(tValue);
217
+ }
218
+ else {
219
+ // 逐个删除
220
+ setSearchValue('');
221
+ }
222
+ } }));
223
+ };
224
+ // 计算方式
225
+ const fieldCalculations = {
226
+ number: [
227
+ { text: '范围', value: 'scope' },
228
+ { text: '等于', value: 'eq' },
229
+ { text: '不等于', value: 'neq' },
230
+ { text: '大于', value: 'gt' },
231
+ { text: '小于', value: 'lt' },
232
+ { text: '大于等于', value: 'gte' },
233
+ { text: '小于等于', value: 'lte' },
234
+ ],
235
+ string: [
236
+ { text: '包含', value: 'search' },
237
+ { text: '不包含', value: 'exclude' },
238
+ { text: '等于', value: 'eq' },
239
+ { text: '不等于', value: 'neq' },
240
+ { text: '开头是', value: 'startWith' },
241
+ ],
242
+ radio: [
243
+ { text: '等于', value: 'eq' },
244
+ { text: '不等于', value: 'neq' },
245
+ ],
246
+ checkbox: [
247
+ { text: '包含其一', value: 'in' },
248
+ { text: '不包含', value: 'nin' },
249
+ ],
250
+ };
251
+ // 计算方式下拉选框
252
+ const CalculationSelect = ({ arg, cb, isDate = false }) => {
253
+ const [value, setValue] = useState(arg.value);
254
+ const calculation = (value) => {
255
+ setValue(value);
256
+ const fieldCalculation = { ...arg };
257
+ fieldCalculation.value = value;
258
+ const fieldValue = {
259
+ fieldCalculation,
260
+ isRange: value === 'scope',
261
+ };
262
+ if (value === 'scope' || arg.value === 'scope') {
263
+ fieldValue.value = null;
264
+ }
265
+ cb(fieldValue);
266
+ };
267
+ useEffect(() => {
268
+ setValue(arg.value);
269
+ }, [arg]);
270
+ const options = isDate
271
+ ? fieldCalculations[arg.type].filter((i) => i.value !== 'neq')
272
+ : fieldCalculations[arg.type];
273
+ return (React.createElement(Select, { appearance: "button", options: options, value: value, onChange: (value) => calculation(value) }));
274
+ };
275
+ // 筛选项
276
+ const FilterFieldItem = ({ updateFilterData, getChooseList, ...filterFieldItemConfig }) => {
277
+ const { filterType, isRange, label, options, fieldCalculation, value } = filterFieldItemConfig;
278
+ const updateFilterConfig = (value) => {
279
+ const lastFilterConfig = { ...filterFieldItemConfig, ...value };
280
+ updateFilterData(lastFilterConfig);
281
+ };
282
+ const renderFieldItem = () => {
283
+ switch (filterType) {
284
+ case 'datetime':
285
+ return (React.createElement(InputAdornment, { before: React.createElement(CalculationSelect, { arg: fieldCalculation, cb: updateFilterConfig, isDate: true }) },
286
+ React.createElement(DatePickerField, { showTime: true, isRange: isRange, updateValue: updateFilterConfig, value: value })));
287
+ case 'date':
288
+ return (React.createElement(InputAdornment, { before: React.createElement(CalculationSelect, { arg: fieldCalculation, cb: updateFilterConfig, isDate: true }) },
289
+ React.createElement(DatePickerField, { value: value, isRange: isRange, updateValue: updateFilterConfig })));
290
+ case 'time':
291
+ return (React.createElement(InputAdornment, { before: React.createElement(CalculationSelect, { arg: fieldCalculation, cb: updateFilterConfig, isDate: true }) },
292
+ React.createElement(TimePickerField, { value: value, isRange: isRange, updateValue: updateFilterConfig })));
293
+ case 'string':
294
+ return (React.createElement(InputAdornment, { before: React.createElement(CalculationSelect, { arg: fieldCalculation, cb: updateFilterConfig }) },
295
+ React.createElement(InputField, { updateValue: updateFilterConfig, value: value })));
296
+ case 'number':
297
+ return (React.createElement(InputAdornment, { before: React.createElement(CalculationSelect, { arg: fieldCalculation, cb: updateFilterConfig }) },
298
+ React.createElement(NumberField, { updateValue: updateFilterConfig, value: value, isRange: isRange })));
299
+ case 'boolean':
300
+ return (React.createElement(InputAdornment, { before: React.createElement(CalculationSelect, { arg: fieldCalculation, cb: updateFilterConfig }) },
301
+ React.createElement(SelectMultipleField, { options: options || [], updateValue: updateFilterConfig, value: value })));
302
+ case 'x-enumObj':
303
+ return (React.createElement(SelectMultipleField
304
+ // @ts-ignore 不存在的属性
305
+ , {
306
+ // @ts-ignore 不存在的属性
307
+ options: options || [], updateValue: updateFilterConfig, value: value }));
308
+ case 'x-enum':
309
+ if (filterFieldItemConfig.xMultiSelect) {
310
+ return (React.createElement(InputAdornment, { before: React.createElement(CalculationSelect, { arg: fieldCalculation, cb: updateFilterConfig }) },
311
+ React.createElement(SelectMultipleField, { optionName: filterFieldItemConfig.xOptionName, updateValue: updateFilterConfig, value: value })));
312
+ }
313
+ return (React.createElement(InputAdornment, { before: React.createElement(CalculationSelect, { arg: fieldCalculation, cb: updateFilterConfig }) },
314
+ React.createElement(SelectField, { optionName: filterFieldItemConfig.xOptionName, updateValue: updateFilterConfig, value: value })));
315
+ case 'father-son':
316
+ case 'related':
317
+ return (React.createElement(InputAdornment, { before: React.createElement(CalculationSelect, { arg: fieldCalculation, cb: updateFilterConfig }) },
318
+ React.createElement(SelectSearch, { getChooseList: getChooseList, format: filterType, childDbName: filterFieldItemConfig.childDbName, value: value, updateValue: updateFilterConfig })));
319
+ default:
320
+ return React.createElement(Input, { disabled: true, defaultValue: '该类型暂不支持表单筛选器' });
321
+ }
322
+ };
323
+ return (React.createElement(Form.Item, { label: React.createElement(Tooltip, { title: label }, label) }, renderFieldItem()));
324
+ };
325
+ /**
326
+ * 生成筛选配置
327
+ * 1、过滤不支持搜索的字段
328
+ * 2、生成配置
329
+ * 3、枚举/数字需要特殊处理
330
+ * { filterType: 'datetime' | 'date' | 'time' | 'string' |'number' | 'x-enumObj' , isRange: boolean }
331
+ */
332
+ const filterFieldsGenetate = (fields) => {
333
+ var _a;
334
+ return (_a = fields === null || fields === void 0 ? void 0 : fields.filter((field) => {
335
+ // 不支持搜索的类型
336
+ if (!field)
337
+ return false;
338
+ if (((field === null || field === void 0 ? void 0 : field.type) === 'array' && (field === null || field === void 0 ? void 0 : field.format) === '') ||
339
+ ((field === null || field === void 0 ? void 0 : field.format) === 'father-son' && (field === null || field === void 0 ? void 0 : field.default) === '') ||
340
+ (field === null || field === void 0 ? void 0 : field.type) === 'object' ||
341
+ (field === null || field === void 0 ? void 0 : field.format) === 'x-file' ||
342
+ (field === null || field === void 0 ? void 0 : field.format) === 'x-image' ||
343
+ (field === null || field === void 0 ? void 0 : field.format) === 'x-rtf')
344
+ return false;
345
+ return true;
346
+ })) === null || _a === void 0 ? void 0 : _a.map((i) => {
347
+ var _a, _b;
348
+ // 生成计算方式
349
+ const fieldCalculation = ['string', 'number'].includes(i.type)
350
+ ? { type: i.type, value: fieldCalculations[i.type][0].value }
351
+ : {};
352
+ const filterFieldItemConfig = {
353
+ id: i['x-id'],
354
+ name: i.name,
355
+ value: '',
356
+ isRange: true,
357
+ filterType: i.type,
358
+ label: i.title,
359
+ fieldCalculation,
360
+ options: [],
361
+ };
362
+ if (i.type === 'number' &&
363
+ ['time', 'date', 'datetime'].includes(i.format)) {
364
+ filterFieldItemConfig.filterType = i.format;
365
+ }
366
+ if (i.type === 'boolean') {
367
+ filterFieldItemConfig.filterType = i.type;
368
+ filterFieldItemConfig.options = [
369
+ { value: true, text: '是' },
370
+ { value: false, text: '否' },
371
+ { value: null, text: '空' },
372
+ ];
373
+ filterFieldItemConfig.fieldCalculation.type = 'checkbox';
374
+ filterFieldItemConfig.fieldCalculation.value = 'in';
375
+ }
376
+ if ((_a = i['x-enumObj']) === null || _a === void 0 ? void 0 : _a.length) {
377
+ filterFieldItemConfig.filterType = 'x-enumObj';
378
+ filterFieldItemConfig.options = i['x-enumObj'].map((enumItem) => ({
379
+ value: enumItem === null || enumItem === void 0 ? void 0 : enumItem.value,
380
+ text: enumItem === null || enumItem === void 0 ? void 0 : enumItem.label,
381
+ }));
382
+ filterFieldItemConfig.options.push({ value: null, text: '空' });
383
+ }
384
+ if (i.format === 'x-enum') {
385
+ filterFieldItemConfig.fieldCalculation.value = 'eq';
386
+ filterFieldItemConfig.filterType = i.format;
387
+ filterFieldItemConfig.xMultiSelect = i['x-multi-select'];
388
+ filterFieldItemConfig.xOptionName = i['x-option-name'];
389
+ filterFieldItemConfig.fieldCalculation.type =
390
+ filterFieldItemConfig.xMultiSelect ? 'checkbox' : 'radio';
391
+ filterFieldItemConfig.fieldCalculation.value =
392
+ filterFieldItemConfig.xMultiSelect ? 'in' : 'eq';
393
+ }
394
+ if (i.format === 'father-son' || i.format === 'related') {
395
+ filterFieldItemConfig.filterType = i.format;
396
+ filterFieldItemConfig.childDbName = (_b = i['x-parent']) === null || _b === void 0 ? void 0 : _b.parentDataSourceName;
397
+ filterFieldItemConfig.fieldCalculation.type = 'radio';
398
+ filterFieldItemConfig.fieldCalculation.value = 'eq';
399
+ }
400
+ return filterFieldItemConfig;
401
+ });
402
+ };
403
+ // 筛选表单
404
+ export const FilterFieldsPanel = ({ data, getChooseList, fetchData, isH5 = false, }) => {
405
+ const { Margin } = useClassNames();
406
+ const [initFilterData, setInitFilterData] = useState([]);
407
+ const [filterData, setFilterData] = useState([]);
408
+ const updateFilterData = (filterFieldItemConfig) => {
409
+ const newData = filterData.map((i) => i.id === filterFieldItemConfig.id ? filterFieldItemConfig : i);
410
+ setFilterData(newData);
411
+ };
412
+ useEffect(() => {
413
+ const result = filterFieldsGenetate(data);
414
+ // 筛选字段改变,重新初始化筛选面板
415
+ if (!isObjectEqual(result, initFilterData)) {
416
+ const initFilterData = JSON.parse(JSON.stringify(result));
417
+ setInitFilterData(initFilterData);
418
+ setFilterData(initFilterData);
419
+ }
420
+ }, [data]);
421
+ const searchHandle = () => {
422
+ const searchValues = [];
423
+ const filterValues = filterData.filter((i) => {
424
+ if (Array.isArray(i.value) &&
425
+ i.filterType === 'number' &&
426
+ i.fieldCalculation.value === 'scope') {
427
+ // 若筛选字段为number类型,且为范围选择时,只要有一个值则返回
428
+ return i.value[0] || i.value[1];
429
+ }
430
+ return !!(i.value && i.value.length);
431
+ });
432
+ filterValues.forEach((i) => {
433
+ switch (i.fieldCalculation.value) {
434
+ case 'scope':
435
+ if (i.filterType === 'number') {
436
+ if (i.value[0]) {
437
+ searchValues.push({
438
+ key: i.name,
439
+ val: Number(i.value[0]),
440
+ rel: 'gte',
441
+ });
442
+ }
443
+ if (i.value[1]) {
444
+ searchValues.push({
445
+ key: i.name,
446
+ val: Number(i.value[1]),
447
+ rel: 'lte',
448
+ });
449
+ }
450
+ }
451
+ else {
452
+ searchValues.push({
453
+ key: i.name,
454
+ val: formatDateToNumber(i.filterType, i.value[0]),
455
+ rel: 'gte',
456
+ });
457
+ searchValues.push({
458
+ key: i.name,
459
+ // @ts-ignore 兼容字符串和数字
460
+ val: formatDateToNumber(i.filterType, i.value[1]) + 999,
461
+ rel: 'lte',
462
+ });
463
+ }
464
+ break;
465
+ case 'exclude':
466
+ searchValues.push({
467
+ key: i.name,
468
+ val: `^((?!${i.value}).)*$`,
469
+ rel: 'regex',
470
+ });
471
+ break;
472
+ case 'startWith':
473
+ searchValues.push({ key: i.name, val: `^${i.value}`, rel: 'regex' });
474
+ break;
475
+ default: {
476
+ const searchItem = {
477
+ key: i.name,
478
+ val: i.value,
479
+ rel: i.fieldCalculation.value,
480
+ };
481
+ if (i.filterType === 'number') {
482
+ searchItem.val = Number(i.value);
483
+ searchValues.push(searchItem);
484
+ }
485
+ else if (['date', 'datetime', 'time'].includes(i.filterType)) {
486
+ searchItem.val = formatDateToNumber(i.filterType, i.value);
487
+ dateCalculation(searchItem, i.filterType).forEach((i) => {
488
+ searchValues.push(i);
489
+ });
490
+ }
491
+ else {
492
+ searchValues.push(searchItem);
493
+ }
494
+ }
495
+ }
496
+ });
497
+ fetchData(searchValues);
498
+ };
499
+ return (!!filterData.length && (React.createElement("div", { className: `${isH5 ? 'filter-wrap' : 'filter-table-wrap'}` },
500
+ React.createElement(Form, { style: { maxWidth: 'unset', width: '100%' }, className: `${isH5 ? 'wedatea2td-form-h5' : ''}`, layout: `${isH5 ? 'default' : 'inline-vertical'}` },
501
+ React.createElement(Row, { gap: 20, verticalAlign: 'bottom', style: { justifyContent: 'space-between' } },
502
+ React.createElement(React.Fragment, null, filterData === null || filterData === void 0 ? void 0 : filterData.map((i) => isH5 ? (React.createElement(Col, { span: 24, key: i.id },
503
+ React.createElement(FilterFieldItem, { ...i, getChooseList: getChooseList, updateFilterData: updateFilterData }))) : (React.createElement(Col, { span: 24, lg: 8, xl: 6, key: i.id },
504
+ React.createElement(FilterFieldItem, { ...i, getChooseList: getChooseList, updateFilterData: updateFilterData }))))),
505
+ !isH5 && (React.createElement(Col, { span: 24, lg: 8, xl: 6, key: "search-button", style: { flex: '1' } },
506
+ React.createElement(Form.Item, { className: "_wedamodal-form__op" },
507
+ React.createElement(Button, { type: "primary", className: `${Margin.Right['4n']}`, onClick: searchHandle }, "\u67E5\u8BE2"),
508
+ React.createElement(Button, { onClick: () => {
509
+ setFilterData(initFilterData);
510
+ fetchData();
511
+ } }, "\u91CD\u7F6E")))))),
512
+ isH5 && (React.createElement(Form.Item, { className: "_wedamodal-form__op" },
513
+ React.createElement(Button, { type: "link", className: `${Margin.Right['4n']}`, onClick: searchHandle }, "\u67E5\u8BE2"),
514
+ React.createElement(Button, { type: "link", onClick: () => {
515
+ setFilterData(initFilterData);
516
+ fetchData();
517
+ } }, "\u91CD\u7F6E"))))));
518
+ };
@@ -0,0 +1,56 @@
1
+ import React from 'react';
2
+ import { Select, Icon } from 'tea-component';
3
+ import { useEnumContext } from '../../../utils/hooks/context';
4
+ // 枚举输入组件
5
+ export const EnumSelect = (props) => {
6
+ const { field, onChange } = props;
7
+ const { enumOptions } = useEnumContext();
8
+ const optionName = field['x-option-name'];
9
+ const isMulti = field['x-multi-select'];
10
+ const selectProps = {
11
+ options: (enumOptions === null || enumOptions === void 0 ? void 0 : enumOptions[optionName]) || [],
12
+ ...props,
13
+ virtual: true,
14
+ size: 'full',
15
+ matchButtonWidth: true,
16
+ appearance: 'button',
17
+ clearable: true,
18
+ searchable: true,
19
+ staging: false,
20
+ };
21
+ const onSelectChange = (value) => {
22
+ if (onChange) {
23
+ onChange(value || '');
24
+ }
25
+ };
26
+ if (isMulti) {
27
+ return React.createElement(Select.Multiple, { ...selectProps });
28
+ }
29
+ return React.createElement(Select, { ...selectProps, onChange: onSelectChange });
30
+ };
31
+ // 转换枚举值
32
+ export const formatEnum = (value, field, enumOptions) => {
33
+ var _a;
34
+ try {
35
+ const optionName = field['x-option-name'];
36
+ const isMulti = field['x-multi-select'];
37
+ const options = (enumOptions === null || enumOptions === void 0 ? void 0 : enumOptions[optionName]) || [];
38
+ const getTextByValue = (value) => { var _a; return ((_a = options === null || options === void 0 ? void 0 : options.find((item) => (item === null || item === void 0 ? void 0 : item.value) === value)) === null || _a === void 0 ? void 0 : _a.text) || value; };
39
+ if (isMulti) {
40
+ return (_a = []
41
+ .concat(value)
42
+ .map((v) => getTextByValue(v))) === null || _a === void 0 ? void 0 : _a.join();
43
+ }
44
+ return getTextByValue(value);
45
+ }
46
+ catch (e) { }
47
+ return value;
48
+ };
49
+ // 枚举值展示组件
50
+ export const EnumView = (props) => {
51
+ const { field, values } = props;
52
+ const { enumOptions, loading } = useEnumContext();
53
+ if (loading)
54
+ return React.createElement(Icon, { type: "loading" });
55
+ return formatEnum(values, field, enumOptions);
56
+ };
@@ -0,0 +1,11 @@
1
+ .weda-business-location-input {
2
+ background-color: white;
3
+ }
4
+
5
+ .weda-business-location-form-array-label {
6
+ padding-right: 20px;
7
+ }
8
+
9
+ .weda-business-location-form-item .wedatea2td-form__controls {
10
+ padding-bottom: 16px !important;
11
+ }