@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,369 @@
1
+ import { isInIde, alertErrorMessage, isSystemField } from './platform';
2
+ /* **** 数据源相关方法 **** */
3
+ const callWedaApi = (...args) => { var _a, _b; return (_b = (_a = window === null || window === void 0 ? void 0 : window.app) === null || _a === void 0 ? void 0 : _a.cloud) === null || _b === void 0 ? void 0 : _b.callWedaApi(...args); };
4
+ export class DataSource {
5
+ constructor(name) {
6
+ Object.defineProperty(this, "dbName", {
7
+ enumerable: true,
8
+ configurable: true,
9
+ writable: true,
10
+ value: void 0
11
+ });
12
+ this.dbName = name;
13
+ }
14
+ async getRecord(id) {
15
+ try {
16
+ const res = await window.app.cloud.callDataSource({
17
+ dataSourceName: this.dbName,
18
+ methodName: 'wedaGetItem',
19
+ params: {
20
+ _id: id,
21
+ },
22
+ });
23
+ return res;
24
+ }
25
+ catch (error) {
26
+ if (!isInIde()) {
27
+ console.error('错误', error);
28
+ alertErrorMessage({
29
+ message: `获取数据源字段失败,错误信息:${error.message}`,
30
+ });
31
+ }
32
+ return {};
33
+ }
34
+ }
35
+ async getRecordList(params = {}, db = this.dbName) {
36
+ try {
37
+ const res = await window.app.cloud.callDataSource({
38
+ params,
39
+ dataSourceName: db,
40
+ methodName: 'wedaGetRecords',
41
+ });
42
+ return res;
43
+ }
44
+ catch (error) {
45
+ if (!isInIde()) {
46
+ console.error('错误', error);
47
+ alertErrorMessage({
48
+ message: `获取数据源字段失败,错误信息:${error.message}`,
49
+ });
50
+ }
51
+ return {};
52
+ }
53
+ }
54
+ async createRecord(data) {
55
+ return window.app.cloud.callDataSource({
56
+ dataSourceName: this.dbName,
57
+ methodName: 'wedaCreate',
58
+ params: data,
59
+ });
60
+ }
61
+ async batchDeleteRecord(ids) {
62
+ let params = {};
63
+ let methodName = '';
64
+ if (ids.length === 0)
65
+ return;
66
+ if (ids.length === 1) {
67
+ params = { _id: ids[0] };
68
+ methodName = 'wedaDelete';
69
+ }
70
+ else {
71
+ params = { where: [{ Key: '_id', Rel: 'in', Val: ids }] };
72
+ methodName = 'wedaBatchDelete';
73
+ }
74
+ return window.app.cloud.callDataSource({
75
+ dataSourceName: this.dbName,
76
+ methodName,
77
+ params,
78
+ });
79
+ }
80
+ async batchCreateRecord(data) {
81
+ return window.app.cloud.callDataSource({
82
+ dataSourceName: this.dbName,
83
+ methodName: 'wedaBatchCreate',
84
+ params: { records: data },
85
+ });
86
+ }
87
+ async updateRecord(id, data) {
88
+ return window.app.cloud.callDataSource({
89
+ dataSourceName: this.dbName,
90
+ methodName: 'wedaUpdate',
91
+ params: {
92
+ _id: id,
93
+ ...data,
94
+ },
95
+ });
96
+ }
97
+ /**
98
+ * API方法调用
99
+ */
100
+ async getConnect(method, params) {
101
+ const { where, ...newParams } = params;
102
+ return window.app.cloud.callConnector({
103
+ dataSourceName: this.dbName,
104
+ methodName: method,
105
+ params: Object.prototype.toString.call(params) === '[object Object]'
106
+ ? (where === null || where === void 0 ? void 0 : where.length) <= 0
107
+ ? newParams
108
+ : params
109
+ : {},
110
+ });
111
+ }
112
+ }
113
+ export const getDataSourceByName = async (dbName, GetColumnAuth = false) => {
114
+ var _a, _b;
115
+ try {
116
+ // dbName 为空时
117
+ if (!dbName)
118
+ return;
119
+ // 兼容私有环境,新接口不存在的情况 私有化权限接口存在两种情况 1、sdk版本getDataSourceProfileAsync方法不存在 2、getDataSourceProfileAsync方法存在但是没有返回权限字段resourceCheckInfos
120
+ if ((window === null || window === void 0 ? void 0 : window._isPrivate) && !((_b = (_a = window === null || window === void 0 ? void 0 : window.app) === null || _a === void 0 ? void 0 : _a.cloud) === null || _b === void 0 ? void 0 : _b.getDataSourceProfileAsync)) {
121
+ const { resourceCheckInfos } = await window.app.cloud.getDataSourceProfileAsync(GetColumnAuth ? { Name: dbName, GetColumnAuth: true } : dbName);
122
+ // 没有返回权限字段resourceCheckInfos
123
+ if (!resourceCheckInfos) {
124
+ return getDataSourceByNameCompatibleProvite(dbName);
125
+ }
126
+ }
127
+ const datasource = await window.app.cloud.getDataSourceProfileAsync(GetColumnAuth ? { Name: dbName, GetColumnAuth: true } : dbName);
128
+ return datasource;
129
+ }
130
+ catch (error) {
131
+ alertErrorMessage({ message: `获取数据源字段失败,错误信息:${error}` });
132
+ console.error(`获取数据源字段失败,错误信息:${error}`);
133
+ return {};
134
+ }
135
+ };
136
+ // 兼容私有环境 getDataSourceProfileAsync 方法不存在的情况
137
+ export const getDataSourceByNameCompatibleProvite = async (dbName) => {
138
+ try {
139
+ // dbName 为空时
140
+ if (!dbName)
141
+ return;
142
+ const datasource = await window.app.cloud.getDataSourceProfile(dbName);
143
+ return datasource;
144
+ }
145
+ catch (error) {
146
+ alertErrorMessage({ message: `获取数据源字段失败,错误信息:${error}` });
147
+ console.error(`获取数据源字段失败,错误信息:${error}`);
148
+ return {};
149
+ }
150
+ };
151
+ /**
152
+ * 获取数据源权限字段
153
+ * 返回对象格式
154
+ */
155
+ export const getAuthFieldsByName = async (dbName) => {
156
+ var _a;
157
+ const dataSource = await getDataSourceByName(dbName, true);
158
+ const id = dataSource === null || dataSource === void 0 ? void 0 : dataSource.id;
159
+ const fieldsAuthObj = {};
160
+ try {
161
+ if (callWedaApi && id) {
162
+ const resp = await callWedaApi({
163
+ action: 'DescribeAuthStrategy',
164
+ data: {
165
+ ResourceId: id,
166
+ },
167
+ });
168
+ const fieldsAuth = (_a = resp === null || resp === void 0 ? void 0 : resp.PermissionMap) === null || _a === void 0 ? void 0 : _a[id];
169
+ if (fieldsAuth) {
170
+ Object.keys(fieldsAuth).forEach((d) => {
171
+ const pre = `${id}#`;
172
+ if (d.startsWith(pre)) {
173
+ const fieldKey = d.replace(pre, '');
174
+ fieldKey && (fieldsAuthObj[fieldKey] = fieldsAuth[d]);
175
+ }
176
+ });
177
+ }
178
+ }
179
+ }
180
+ catch (e) {
181
+ console.error('模型:请求权限出错.', e);
182
+ }
183
+ return fieldsAuthObj;
184
+ };
185
+ /**
186
+ * 添加数据源字段权限
187
+ * 接口文档:https://iwiki.woa.com/pages/viewpage.action?pageId=1920884250
188
+ * 新增读写权限字段 readWriteAuth
189
+ * n : 列操作无权限 ; r : 列操作只读权限 ; rw : 列操作读写权限
190
+ */
191
+ export const getDataSourceFieldsWithAuth = (authList, resourceCheckInfos) => {
192
+ try {
193
+ if (isInIde() || !resourceCheckInfos) {
194
+ // 编辑器编辑区 和 兼容私有环境,新接口不存在的情况没有返回权限字段
195
+ return authList.map((item) => ({ ...item, readWriteAuth: 'rw' }));
196
+ }
197
+ if ((resourceCheckInfos === null || resourceCheckInfos === void 0 ? void 0 : resourceCheckInfos.length) > 0 && (authList === null || authList === void 0 ? void 0 : authList.length) > 0) {
198
+ return authList.map((authItem) => {
199
+ var _a, _b;
200
+ const recordName = (authItem === null || authItem === void 0 ? void 0 : authItem['x-viewType']) === 'RELATION_VIEW'
201
+ ? authItem === null || authItem === void 0 ? void 0 : authItem.parentRelationRecordsName //关联模型字段name
202
+ : authItem === null || authItem === void 0 ? void 0 : authItem.name;
203
+ let authInfoList = resourceCheckInfos.filter((item) => { var _a; return !!((_a = item === null || item === void 0 ? void 0 : item['ReadWrite']) === null || _a === void 0 ? void 0 : _a[recordName]); });
204
+ if ((authItem === null || authItem === void 0 ? void 0 : authItem['x-viewType']) === 'RELATION_VIEW') {
205
+ // 可能会有字段名重复的,通过关联模型字段筛选出来
206
+ authInfoList = authInfoList === null || authInfoList === void 0 ? void 0 : authInfoList.filter((item) => `@${item === null || item === void 0 ? void 0 : item.RelationField}` === (authItem === null || authItem === void 0 ? void 0 : authItem['x-parentRelationKey']));
207
+ }
208
+ // 匹配到了权限字段
209
+ if (authInfoList[0]) {
210
+ authItem.readWriteAuth =
211
+ (_b = (_a = authInfoList === null || authInfoList === void 0 ? void 0 : authInfoList[0]) === null || _a === void 0 ? void 0 : _a['ReadWrite']) === null || _b === void 0 ? void 0 : _b[recordName];
212
+ if (authInfoList[0][authItem.name] === 'r') {
213
+ // 只读字段标单项disable状态
214
+ authItem['x-powerDisabled'] = true;
215
+ }
216
+ }
217
+ return authItem;
218
+ });
219
+ }
220
+ // 没有返回字段权限列表
221
+ return authList;
222
+ }
223
+ catch (err) {
224
+ console.error('getDataSourceFieldsWithAuth err', err);
225
+ }
226
+ };
227
+ /**
228
+ * 获取过滤权限后的字段
229
+ * 返回格式: {readFields:[], writeFields: [], requireNoRwFields: []},分别为:只读字段,读写字段,必填但无写权限字段
230
+ * 权限接口规则:有返回字段时以字段权限为准,无字段返回时,数据源所有字段都有读写权限,默认内置字段均有读写权限
231
+ * 2021-11-25 暂时下掉列权限,优化性能
232
+ * 2022-08-06
233
+ * 新增返回 showFields:[] 能够展示的字段,包含读写字段和只读字段,其中只读字段的表单项为disable状态
234
+ */
235
+ export const getAuthFields = async (dbName, enabledFieldNames, displaySystem, isUseAll = false, isModel = true, connectorMethod) => {
236
+ const allFields = await resolveFieldsFromDatasource({
237
+ dbName,
238
+ enabledFieldNames,
239
+ displaySystem,
240
+ isUseAll,
241
+ isModel,
242
+ connectorMethod,
243
+ });
244
+ const [readFields, writeFields, requireNoRwFields, authLoading, showFields] = [
245
+ [].concat(allFields),
246
+ [].concat(allFields),
247
+ [],
248
+ false,
249
+ [].concat(allFields === null || allFields === void 0 ? void 0 : allFields.filter((item) => (item === null || item === void 0 ? void 0 : item.readWriteAuth) === 'rw' || (item === null || item === void 0 ? void 0 : item.readWriteAuth) === 'r')),
250
+ ];
251
+ return {
252
+ readFields,
253
+ writeFields,
254
+ requireNoRwFields,
255
+ authLoading,
256
+ showFields,
257
+ };
258
+ };
259
+ /**
260
+ * 根据数据库名,解析 fields
261
+ * isUseAll:表格组件不使用enabledFieldNames,而是使用columnSets
262
+ */
263
+ export const resolveFieldsFromDatasource = async ({ dbName, enabledFieldNames, displaySystem, isUseAll, isModel = true, connectorMethod, }) => {
264
+ var _a, _b, _c, _d;
265
+ if (isModel) {
266
+ if ((!dbName || !(enabledFieldNames === null || enabledFieldNames === void 0 ? void 0 : enabledFieldNames.length)) && !isUseAll)
267
+ return [];
268
+ const datasource = await getDataSourceByName(dbName, true);
269
+ // 警告
270
+ if (!datasource) {
271
+ console.error(`未找到数据源 ${dbName}`, window.app.cloud);
272
+ return [];
273
+ }
274
+ let keys = [];
275
+ const { schema } = datasource;
276
+ if (!(schema === null || schema === void 0 ? void 0 : schema.properties))
277
+ return [];
278
+ if (isUseAll) {
279
+ keys = Object.keys(schema.properties || {});
280
+ }
281
+ else {
282
+ // 过滤掉系统字段 x-system=true 和不存在 datasource 中的字段(被删除的字段)
283
+ keys = enabledFieldNames.filter((key) => {
284
+ const field = schema.properties[key];
285
+ return field && (displaySystem || !isSystemField(field));
286
+ });
287
+ }
288
+ // 添加关联数据源
289
+ const resultPromise = keys.map(async (key) => {
290
+ var _a;
291
+ let parentDatasource;
292
+ if ((_a = schema.properties[key]) === null || _a === void 0 ? void 0 : _a['x-parent']) {
293
+ parentDatasource =
294
+ (await getDataSourceByName(schema.properties[key]['x-parent'].parentDataSourceName, true)) || {};
295
+ }
296
+ return {
297
+ ...schema.properties[key],
298
+ name: key,
299
+ parentDatasource,
300
+ };
301
+ });
302
+ const result = await Promise.all(resultPromise);
303
+ return getDataSourceFieldsWithAuth(result, datasource === null || datasource === void 0 ? void 0 : datasource.resourceCheckInfos);
304
+ }
305
+ else {
306
+ if (!connectorMethod)
307
+ return [];
308
+ const datasource = await getDataSourceByName(dbName);
309
+ // 警告
310
+ if (!datasource) {
311
+ console.error(`未找到数据源 ${dbName}`, window.app.cloud);
312
+ return [];
313
+ }
314
+ const connectKeys = [];
315
+ const { methods } = datasource;
316
+ const { name } = connectorMethod;
317
+ let method = [];
318
+ if (methods && methods.length > 0) {
319
+ method = methods.filter((item) => {
320
+ return item.name == name;
321
+ });
322
+ }
323
+ datasource.schema = ((_d = (_c = (_b = (_a = method[0]) === null || _a === void 0 ? void 0 : _a.outParams) === null || _b === void 0 ? void 0 : _b.properties) === null || _c === void 0 ? void 0 : _c.records) === null || _d === void 0 ? void 0 : _d.items) || {};
324
+ const { schema } = datasource;
325
+ if (!(schema === null || schema === void 0 ? void 0 : schema.properties))
326
+ return [];
327
+ for (const item in schema.properties) {
328
+ connectKeys.push(item);
329
+ }
330
+ // 添加关联数据源
331
+ const resultPromise = connectKeys.map(async (key) => {
332
+ var _a;
333
+ let parentDatasource;
334
+ if ((_a = schema.properties[key]) === null || _a === void 0 ? void 0 : _a['x-parent']) {
335
+ parentDatasource =
336
+ (await getDataSourceByName(schema.properties[key]['x-parent'].parentDataSourceName)) || {};
337
+ }
338
+ return {
339
+ ...schema.properties[key],
340
+ name: key,
341
+ parentDatasource,
342
+ };
343
+ });
344
+ const result = await Promise.all(resultPromise);
345
+ return result === null || result === void 0 ? void 0 : result.map((item) => ({ ...item, readWriteAuth: 'rw' }));
346
+ }
347
+ };
348
+ /**
349
+ * 获取主列字段标识并展示主列字段
350
+ */
351
+ export const getPrimaryField = (data) => {
352
+ const keys = Object.keys(data).filter((item) => item.includes('@'));
353
+ keys.forEach((item) => {
354
+ var _a, _b, _c, _d, _e;
355
+ const field = item.replace('@', '');
356
+ const record = (_a = data[item]) === null || _a === void 0 ? void 0 : _a.v1.record;
357
+ const name = (_b = data[item]) === null || _b === void 0 ? void 0 : _b.v1.primaryColumn;
358
+ if (name) {
359
+ // 系统主列字段当record不存在时,默认展示最外层owner、createBy、updateBy字段,与其他列字段逻辑一致
360
+ if (record && record._id === data[field]) {
361
+ // 当record下主列字段没有值时,默认返回主列id
362
+ record[name]
363
+ ? (data[field] = record[name])
364
+ : (data[field] = ((_e = (_d = (_c = data[item]) === null || _c === void 0 ? void 0 : _c.v1) === null || _d === void 0 ? void 0 : _d.record) === null || _e === void 0 ? void 0 : _e._id) || '-');
365
+ }
366
+ }
367
+ });
368
+ return data;
369
+ };
@@ -0,0 +1,137 @@
1
+ import moment from 'moment';
2
+ import 'moment/locale/zh-cn';
3
+ import { isSystemField } from './platform';
4
+ moment.locale('zh-cn');
5
+ // 'time' | 'date' | 'datetime'
6
+ export const formatTimeByType = (dateType, v = Date.now(), field = undefined) => {
7
+ // 时间
8
+ if (dateType === 'time') {
9
+ const timeStr = formatNumberToStr(v);
10
+ return timeStr;
11
+ }
12
+ // 日期,但不包括系统字段
13
+ if (dateType === 'date' && !isSystemField(field)) {
14
+ return moment(v).format('YYYY-MM-DD');
15
+ }
16
+ // 兼容逻辑,有一部分数据源的系统字段里的创建和更新时间被设置为了date,这里当作datetime来处理
17
+ return moment(v).format('YYYY-MM-DD HH:mm:ss');
18
+ };
19
+ export const getFullDate = (v = Date.now()) => moment(v).format('YYYY-MM-DD');
20
+ export const addZero = (v) => (v < 10 ? `0${v}` : v);
21
+ /**
22
+ * 24小时毫秒数转字符串
23
+ */
24
+ export const formatNumberToStr = (v) => {
25
+ let timeStr = '-';
26
+ try {
27
+ const time = moment.duration(parseInt(v), 'milliseconds');
28
+ const hours = addZero(time.hours());
29
+ const minutes = addZero(time.minutes());
30
+ const seconds = addZero(time.seconds());
31
+ timeStr = `${hours}:${minutes}:${seconds}`;
32
+ }
33
+ catch (e) { }
34
+ return timeStr;
35
+ };
36
+ /**
37
+ * 时间字符串转24小时毫秒数
38
+ */
39
+ export const formatTimeToNumber = (t = '') => {
40
+ let time = moment();
41
+ try {
42
+ t && (time = moment(t));
43
+ }
44
+ catch (e) { }
45
+ const hours = time.hours();
46
+ const minutes = time.minutes();
47
+ const seconds = time.seconds();
48
+ const value = (hours * 60 * 60 + minutes * 60 + seconds) * 1000;
49
+ return value;
50
+ };
51
+ /**
52
+ * 日期字符串转24小时毫秒数
53
+ */
54
+ export const formatDateToNumber = (dateType = 'date', t = '') => {
55
+ const formatType = {
56
+ time: 'HH:mm:ss',
57
+ date: 'YYYY-MM-DD',
58
+ datetime: 'YYYY-MM-DD HH:mm:ss',
59
+ };
60
+ let time = moment().format(formatType[dateType]).valueOf();
61
+ try {
62
+ // @ts-ignore 兼容 string 和 number 类型
63
+ t && (time = moment(t, formatType[dateType]).valueOf());
64
+ }
65
+ catch (e) { }
66
+ if (dateType === 'time') {
67
+ return formatTimeToNumber(time);
68
+ }
69
+ return time;
70
+ };
71
+ /**
72
+ * 日期,日期时间按照毫秒区间转换为范围查询
73
+ */
74
+ export const dateCalculation = ({ key, val, rel }, filterType) => {
75
+ const dateSearchvalue = [];
76
+ // 1.date日期时间查询精确到秒,换算成毫秒时间戳存储,区间相隔一秒
77
+ // 2.datetime日期查询精确到日,日期换算成毫秒时间戳存储,区间相隔一日
78
+ // 3.time时间查询精确到毫秒,换算成毫秒存储,区间相隔一秒
79
+ const endTime = filterType === 'date' ? 86400000 : 999;
80
+ switch (rel) {
81
+ case 'eq':
82
+ dateSearchvalue.push({
83
+ key,
84
+ val,
85
+ rel: 'gte',
86
+ });
87
+ dateSearchvalue.push({
88
+ key,
89
+ val: val + endTime,
90
+ rel: 'lte',
91
+ });
92
+ break;
93
+ case 'neq':
94
+ dateSearchvalue.push({
95
+ key,
96
+ val,
97
+ rel: 'lt',
98
+ });
99
+ dateSearchvalue.push({
100
+ key,
101
+ val: val + endTime,
102
+ rel: 'gt',
103
+ });
104
+ break;
105
+ case 'gt':
106
+ dateSearchvalue.push({
107
+ key,
108
+ val: val + endTime,
109
+ rel: 'gt',
110
+ });
111
+ break;
112
+ case 'lt':
113
+ dateSearchvalue.push({
114
+ key,
115
+ val,
116
+ rel: 'lt',
117
+ });
118
+ break;
119
+ case 'gte':
120
+ dateSearchvalue.push({
121
+ key,
122
+ val,
123
+ rel: 'gte',
124
+ });
125
+ break;
126
+ case 'lte':
127
+ dateSearchvalue.push({
128
+ key,
129
+ val: val + endTime,
130
+ rel: 'lte',
131
+ });
132
+ break;
133
+ default:
134
+ break;
135
+ }
136
+ return dateSearchvalue;
137
+ };
@@ -0,0 +1,190 @@
1
+ import jsonExport from 'jsonexport/dist';
2
+ import moment from 'moment';
3
+ import { utils, writeFile, SSF, readFile } from 'xlsx';
4
+ /**
5
+ * 将数据导出为 CSV 或 JSON
6
+ */
7
+ export const exportData = async (data, fileType = 'csv', name = 'weda-data-export') => {
8
+ const tail = moment().format('YYYYMMDDHHmmss') || createRandomString(8);
9
+ const title = `${name}-${tail}.${fileType}`;
10
+ try {
11
+ if (fileType === 'json') {
12
+ await saveContentToFile(JSON.stringify(data), title);
13
+ }
14
+ else if (fileType === 'xls' || fileType === 'xlsx') {
15
+ const book = utils.book_new();
16
+ const sheet = utils.aoa_to_sheet(data);
17
+ const reversalData = data[0].map((col, i) => data.map((row) => row[i]));
18
+ sheet['!cols'] = reversalData.map((cells) => ({
19
+ wch: getColumnWidth(cells),
20
+ }));
21
+ utils.book_append_sheet(book, sheet, 'Sheet1');
22
+ writeFile(book, title);
23
+ }
24
+ else {
25
+ let csv = await jsonExport(data);
26
+ csv = `\ufeff${csv}`;
27
+ await saveFile(new Blob([csv], { type: 'text/csv,charset=utf-8' }), title);
28
+ }
29
+ }
30
+ catch (e) { }
31
+ };
32
+ /**
33
+ * 取每列最大宽度,实现excel列宽自适应
34
+ */
35
+ const getColumnWidth = (cells = []) => {
36
+ const widths = cells === null || cells === void 0 ? void 0 : cells.map((d) => {
37
+ if (!d)
38
+ return 10;
39
+ const value = `${d}`;
40
+ return value.replace(/[\u0391-\uFFE5]/g, 'aa').length * 1.1;
41
+ });
42
+ return Math.max(...widths);
43
+ };
44
+ /**
45
+ * 将内容保存为文件
46
+ */
47
+ export const saveContentToFile = (content, fileName, type = 'application/json') => {
48
+ if (!/\.json$/.test(fileName) && type === 'application/json') {
49
+ throw new Error('文件格式指定错误');
50
+ }
51
+ return saveFile(new Blob([content], { type }), fileName);
52
+ };
53
+ /**
54
+ * 浏览器保存文件到本地
55
+ * @param {Blob} file
56
+ * @param {string} fileName
57
+ */
58
+ export const saveFile = (file, fileName) => {
59
+ // @ts-ignore 兼容 ie
60
+ if (window.navigator.msSaveOrOpenBlob) {
61
+ // IE10+
62
+ // @ts-ignore 兼容 ie
63
+ window.navigator.msSaveOrOpenBlob(file, fileName);
64
+ }
65
+ else {
66
+ const url = URL.createObjectURL(file);
67
+ downloadFileFromUrl(url, fileName);
68
+ }
69
+ };
70
+ /**
71
+ * 通过链接下载文件
72
+ */
73
+ export const downloadFileFromUrl = (url, fileName) => {
74
+ // 创建一个链接
75
+ const a = document.createElement('a');
76
+ a.href = url;
77
+ a.download = fileName;
78
+ document.body.appendChild(a);
79
+ a.click();
80
+ // eslint-disable-next-line rulesdir/no-timer
81
+ setTimeout(() => {
82
+ document.body.removeChild(a);
83
+ window.URL.revokeObjectURL(url);
84
+ }, 0);
85
+ };
86
+ /**
87
+ * 读取上传的xlsx文件
88
+ */
89
+ export const getXlsxFileToJson = (file, cb) => {
90
+ const reader = new FileReader();
91
+ reader.readAsArrayBuffer(file);
92
+ reader.onloadend = () => {
93
+ const wb = readFile(reader.result, {
94
+ type: 'binary',
95
+ cellDates: true,
96
+ });
97
+ const result = utils.sheet_to_json(wb.Sheets[wb.SheetNames[0]], {
98
+ header: 1,
99
+ cellDates: true,
100
+ });
101
+ const [header, ...rest] = result;
102
+ const headers = Array.isArray(header) ? header : [];
103
+ // 修正时间格式的日期读取结果
104
+ const fixed = fixSheetToJson(rest, wb);
105
+ const xlsxToJsonResult = [];
106
+ fixed.forEach((i) => {
107
+ const temp = {};
108
+ i.forEach((n, index) => {
109
+ temp[headers[index]] = n;
110
+ });
111
+ xlsxToJsonResult.push(temp);
112
+ });
113
+ if (cb) {
114
+ cb({ xlsxToJsonResult, headers });
115
+ }
116
+ };
117
+ };
118
+ /**
119
+ * 读取上传的xlsx文件的表头
120
+ */
121
+ export const getXlsxFileHeader = (file, cb) => {
122
+ const reader = new FileReader();
123
+ reader.readAsArrayBuffer(file);
124
+ reader.onloadend = () => {
125
+ const wb = readFile(reader.result, {
126
+ type: 'binary',
127
+ cellDates: true,
128
+ });
129
+ const result = utils.sheet_to_json(wb.Sheets[wb.SheetNames[0]], {
130
+ header: 1,
131
+ cellDates: true,
132
+ });
133
+ const [header] = result;
134
+ const headers = Array.isArray(header) ? header : [];
135
+ if (cb) {
136
+ cb({ headers });
137
+ }
138
+ };
139
+ };
140
+ const datenum = (v, date1904) => {
141
+ /** excel 的时间从 1900/1/0(1899/12/30)开始 ,此时对中国用的上海时区(GMT+0805)+8:05:43,1800~1900年。
142
+ 时区是动态的,根据时间的变化而变化
143
+ getTimezoneOffset 获取的分钟数,忽略了43秒,所以会少 43 秒
144
+ https://github.com/SheetJS/sheetjs/issues/1565
145
+ */
146
+ const basedate = new Date(1899, 11, 30, 0, 0, 0);
147
+ // 重新计算时间,精确到秒
148
+ const dnthresh = basedate.getTime() +
149
+ (new Date().getTimezoneOffset() - basedate.getTimezoneOffset()) * 60000;
150
+ const dayMs = 24 * 60 * 60 * 1000;
151
+ const days1462Ms = 1462 * dayMs;
152
+ let epoch = v.getTime();
153
+ if (date1904) {
154
+ epoch -= days1462Ms;
155
+ }
156
+ return (epoch - dnthresh) / dayMs;
157
+ };
158
+ const fixImportedDate = (date, isDate1904) => {
159
+ /** ssf是一个处理日期的js库,有两种模式处理时间
160
+ 1900 mode (where date=0 is 1899-12-31)
161
+ 1904 mode (where date=0 is 1904-01-01)
162
+ */
163
+ // 利用ssf库解析时间,获得最终时间
164
+ const parsed = SSF.parse_date_code(datenum(date, false), {
165
+ date1904: isDate1904,
166
+ });
167
+ return new Date(parsed.y, parsed.m, parsed.d, parsed.H, parsed.M, parsed.S);
168
+ };
169
+ const fixSheetToJson = (rest, wb) => {
170
+ // apply hotfix
171
+ const isDate1904 = wb.Workbook.WBProps.date1904;
172
+ const fixed = rest.map((arr) => arr.map((v) => {
173
+ if (v instanceof Date) {
174
+ return fixImportedDate(v, isDate1904);
175
+ }
176
+ return v;
177
+ }));
178
+ return fixed;
179
+ };
180
+ /**
181
+ * 生成随机字符串
182
+ */
183
+ export const createRandomString = (len = 32) => {
184
+ const count = Math.ceil(Number(len) / 10) + 1;
185
+ let ret = '';
186
+ for (let i = 0; i < count; i++) {
187
+ ret += Math.random().toString(36).substr(2);
188
+ }
189
+ return ret.substr(0, len);
190
+ };