@lingxiteam/ebe-utils 0.5.0 → 0.5.2

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 (371) hide show
  1. package/lib/pcpublic/src/components/pcfactory/src/StdUpload/assets/closeIcon.png +0 -0
  2. package/lib/pcpublic/src/components/pcfactory/src/StdUpload/assets/fileName.png +0 -0
  3. package/lib/pcpublic/src/components/pcfactory/src/StdUpload/assets/img.png +0 -0
  4. package/lib/pcpublic/src/components/pcfactory/src/Table/hooks/useFormatCell.ts +279 -0
  5. package/lib/pcpublic/src/components/pcfactory/src/utils/Empty/customLocale.tsx +6 -0
  6. package/lib/public/src/components/ExpBusiObjModal/index.less +28 -0
  7. package/lib/public/src/components/ExpBusiObjModal/index.tsx +315 -0
  8. package/lib/public/src/components/ImportBusiObjModal/index.tsx +5 -0
  9. package/lib/public/src/components/PreviewFile/index.less +200 -0
  10. package/lib/public/src/components/PreviewFile/index.tsx +787 -0
  11. package/lib/public/src/components/PreviewFile/utils.ts +90 -0
  12. package/lib/public/src/components/common/PreviewFile/index.less +200 -0
  13. package/lib/public/src/components/common/PreviewFile/index.tsx +787 -0
  14. package/lib/public/src/components/common/PreviewFile/utils.ts +90 -0
  15. package/lib/public/src/components/pcfactory/src/Alert/index.tsx +22 -0
  16. package/lib/public/src/components/pcfactory/src/Animation/index.tsx +186 -0
  17. package/lib/public/src/components/pcfactory/src/Animation/useAnimation.ts +270 -0
  18. package/lib/public/src/components/pcfactory/src/Animation/useBackgroundStyle.ts +74 -0
  19. package/lib/public/src/components/pcfactory/src/Audio/index.tsx +240 -0
  20. package/lib/public/src/components/pcfactory/src/BarChart/index.tsx +3 -0
  21. package/lib/public/src/components/pcfactory/src/Button/index.tsx +151 -0
  22. package/lib/public/src/components/pcfactory/src/Card/index.tsx +201 -0
  23. package/lib/public/src/components/pcfactory/src/Card/useExtendBtn.tsx +195 -0
  24. package/lib/public/src/components/pcfactory/src/Cascader/index.tsx +398 -0
  25. package/lib/public/src/components/pcfactory/src/ChartBar/index.tsx +15 -0
  26. package/lib/public/src/components/pcfactory/src/ChartBar/loader.tsx +12 -0
  27. package/lib/public/src/components/pcfactory/src/ChartLine/ChartLine.tsx +48 -0
  28. package/lib/public/src/components/pcfactory/src/ChartLine/PropsType.ts +88 -0
  29. package/lib/public/src/components/pcfactory/src/ChartLine/index.tsx +15 -0
  30. package/lib/public/src/components/pcfactory/src/ChartLine/loader.tsx +12 -0
  31. package/lib/public/src/components/pcfactory/src/Checkbox/index.tsx +144 -0
  32. package/lib/public/src/components/pcfactory/src/CheckboxGroup/index.tsx +319 -0
  33. package/lib/public/src/components/pcfactory/src/Collapse/index.tsx +195 -0
  34. package/lib/public/src/components/pcfactory/src/CollapsePanel/index.tsx +186 -0
  35. package/lib/public/src/components/pcfactory/src/Condition/index.tsx +22 -0
  36. package/lib/public/src/components/pcfactory/src/DatePicker/index.tsx +756 -0
  37. package/lib/public/src/components/pcfactory/src/Description/index.tsx +447 -0
  38. package/lib/public/src/components/pcfactory/src/Description/utils/getLabelSizeMode.ts +40 -0
  39. package/lib/public/src/components/pcfactory/src/Divider/components/CenterLineDivider/index.tsx +190 -0
  40. package/lib/public/src/components/pcfactory/src/Divider/components/CenterTabDivider/index.tsx +77 -0
  41. package/lib/public/src/components/pcfactory/src/Divider/components/LeftCardDivider/index.tsx +87 -0
  42. package/lib/public/src/components/pcfactory/src/Divider/components/LeftLineDivider/index.tsx +106 -0
  43. package/lib/public/src/components/pcfactory/src/Divider/components/LeftTabDivider/index.tsx +60 -0
  44. package/lib/public/src/components/pcfactory/src/Divider/components/LeftTopDivider/index.tsx +55 -0
  45. package/lib/public/src/components/pcfactory/src/Divider/components/LxDashed/index.module.less +10 -0
  46. package/lib/public/src/components/pcfactory/src/Divider/components/LxDashed/index.tsx +143 -0
  47. package/lib/public/src/components/pcfactory/src/Divider/components/LxSolid/index.module.less +10 -0
  48. package/lib/public/src/components/pcfactory/src/Divider/components/LxSolid/index.tsx +126 -0
  49. package/lib/public/src/components/pcfactory/src/Divider/index.tsx +210 -0
  50. package/lib/public/src/components/pcfactory/src/Dropdown/index.tsx +385 -0
  51. package/lib/public/src/components/pcfactory/src/DynamicTabs/PropsType.ts +31 -0
  52. package/lib/public/src/components/pcfactory/src/DynamicTabs/TabPage.tsx +63 -0
  53. package/lib/public/src/components/pcfactory/src/DynamicTabs/index.tsx +214 -0
  54. package/lib/public/src/components/pcfactory/src/Form/Form.tsx +600 -0
  55. package/lib/public/src/components/pcfactory/src/Form/WrapperForm.ts +14 -0
  56. package/lib/public/src/components/pcfactory/src/Form/index.tsx +15 -0
  57. package/lib/public/src/components/pcfactory/src/Form/useFormStatus.ts +47 -0
  58. package/lib/public/src/components/pcfactory/src/Form/useMonitor.ts +40 -0
  59. package/lib/public/src/components/pcfactory/src/FormGroup/TitleComp.tsx +107 -0
  60. package/lib/public/src/components/pcfactory/src/FormGroup/index.tsx +181 -0
  61. package/lib/public/src/components/pcfactory/src/FreeLayout/index.tsx +151 -0
  62. package/lib/public/src/components/pcfactory/src/Gantt/Gantt.tsx +460 -0
  63. package/lib/public/src/components/pcfactory/src/Gantt/const.ts +122 -0
  64. package/lib/public/src/components/pcfactory/src/Gantt/index.tsx +16 -0
  65. package/lib/public/src/components/pcfactory/src/Gantt/loader.tsx +12 -0
  66. package/lib/public/src/components/pcfactory/src/GridView/GridView.tsx +435 -0
  67. package/lib/public/src/components/pcfactory/src/GridView/index.tsx +24 -0
  68. package/lib/public/src/components/pcfactory/src/GridView/loader.tsx +12 -0
  69. package/lib/public/src/components/pcfactory/src/HorizontalView/index.tsx +32 -0
  70. package/lib/public/src/components/pcfactory/src/Icon/IconED/index.tsx +42 -0
  71. package/lib/public/src/components/pcfactory/src/Icon/PropsType.ts +57 -0
  72. package/lib/public/src/components/pcfactory/src/Icon/hooks/index.tsx +300 -0
  73. package/lib/public/src/components/pcfactory/src/Icon/index.tsx +69 -0
  74. package/lib/public/src/components/pcfactory/src/IconFont/index.tsx +24 -0
  75. package/lib/public/src/components/pcfactory/src/Img/BasicImage/index.tsx +90 -0
  76. package/lib/public/src/components/pcfactory/src/Img/assets/placeholder.png +0 -0
  77. package/lib/public/src/components/pcfactory/src/Img/index.tsx +91 -0
  78. package/lib/public/src/components/pcfactory/src/Input/index.tsx +425 -0
  79. package/lib/public/src/components/pcfactory/src/InputNumber/index.tsx +263 -0
  80. package/lib/public/src/components/pcfactory/src/LXPieChart/LXPieChart.tsx +23 -0
  81. package/lib/public/src/components/pcfactory/src/LXPieChart/PropsType.ts +11 -0
  82. package/lib/public/src/components/pcfactory/src/LXPieChart/index.less +6 -0
  83. package/lib/public/src/components/pcfactory/src/LXPieChart/index.tsx +15 -0
  84. package/lib/public/src/components/pcfactory/src/LXPieChart/loader.tsx +12 -0
  85. package/lib/public/src/components/pcfactory/src/LXRadarChart/LXRadarChat.tsx +25 -0
  86. package/lib/public/src/components/pcfactory/src/LXRadarChart/PropsType.ts +9 -0
  87. package/lib/public/src/components/pcfactory/src/LXRadarChart/index.less +7 -0
  88. package/lib/public/src/components/pcfactory/src/LXRadarChart/index.tsx +17 -0
  89. package/lib/public/src/components/pcfactory/src/LXRadarChart/loader.tsx +12 -0
  90. package/lib/public/src/components/pcfactory/src/Layout/index.tsx +130 -0
  91. package/lib/public/src/components/pcfactory/src/Layout/utils.ts +48 -0
  92. package/lib/public/src/components/pcfactory/src/LineChart/index.tsx +3 -0
  93. package/lib/public/src/components/pcfactory/src/Link/index.tsx +117 -0
  94. package/lib/public/src/components/pcfactory/src/LoopList/index.tsx +551 -0
  95. package/lib/public/src/components/pcfactory/src/Menu/index.tsx +422 -0
  96. package/lib/public/src/components/pcfactory/src/ModalSelect/BaseModalSelect.tsx +95 -0
  97. package/lib/public/src/components/pcfactory/src/ModalSelect/index.tsx +453 -0
  98. package/lib/public/src/components/pcfactory/src/MultipleSelect/index.tsx +3 -0
  99. package/lib/public/src/components/pcfactory/src/Pagination/index.tsx +104 -0
  100. package/lib/public/src/components/pcfactory/src/Password/index.tsx +88 -0
  101. package/lib/public/src/components/pcfactory/src/PictureVerifyCode/assets/placeholder.png +0 -0
  102. package/lib/public/src/components/pcfactory/src/PictureVerifyCode/index.tsx +76 -0
  103. package/lib/public/src/components/pcfactory/src/PieChart/index.tsx +3 -0
  104. package/lib/public/src/components/pcfactory/src/Progress/index.tsx +155 -0
  105. package/lib/public/src/components/pcfactory/src/QRCode/const.ts +5 -0
  106. package/lib/public/src/components/pcfactory/src/QRCode/index.tsx +146 -0
  107. package/lib/public/src/components/pcfactory/src/QuillEditor/QuillEditor.tsx +197 -0
  108. package/lib/public/src/components/pcfactory/src/QuillEditor/index.tsx +37 -0
  109. package/lib/public/src/components/pcfactory/src/QuillEditor/loader.ts +12 -0
  110. package/lib/public/src/components/pcfactory/src/RadarChart/RadarChartHook.ts +449 -0
  111. package/lib/public/src/components/pcfactory/src/RadarChart/RadarChartType.ts +39 -0
  112. package/lib/public/src/components/pcfactory/src/RadarChart/RadarECharts.tsx +86 -0
  113. package/lib/public/src/components/pcfactory/src/RadarChart/index.tsx +16 -0
  114. package/lib/public/src/components/pcfactory/src/RadarChart/loader.tsx +12 -0
  115. package/lib/public/src/components/pcfactory/src/RadarChart/radarDefaultConfig.js +55 -0
  116. package/lib/public/src/components/pcfactory/src/Radio/index.tsx +260 -0
  117. package/lib/public/src/components/pcfactory/src/RangePicker/index.tsx +3 -0
  118. package/lib/public/src/components/pcfactory/src/Rate/index.tsx +187 -0
  119. package/lib/public/src/components/pcfactory/src/ReactECharts/PropsType.ts +37 -0
  120. package/lib/public/src/components/pcfactory/src/ReactECharts/ReactECharts.tsx +672 -0
  121. package/lib/public/src/components/pcfactory/src/ReactECharts/index.tsx +26 -0
  122. package/lib/public/src/components/pcfactory/src/ReactECharts/loader.tsx +12 -0
  123. package/lib/public/src/components/pcfactory/src/RemoteComponent/components/FishRender.tsx +31 -0
  124. package/lib/public/src/components/pcfactory/src/RemoteComponent/components/ReactRender.tsx +55 -0
  125. package/lib/public/src/components/pcfactory/src/RemoteComponent/components/VueRender.tsx +32 -0
  126. package/lib/public/src/components/pcfactory/src/RemoteComponent/constant.ts +9 -0
  127. package/lib/public/src/components/pcfactory/src/RemoteComponent/index.tsx +82 -0
  128. package/lib/public/src/components/pcfactory/src/RemoteComponent/remote-component.config.ts +12 -0
  129. package/lib/public/src/components/pcfactory/src/Result/index.tsx +27 -0
  130. package/lib/public/src/components/pcfactory/src/RichTextEditor/LcdpUeditorMain.tsx +105 -0
  131. package/lib/public/src/components/pcfactory/src/RichTextEditor/RichTextEditor.tsx +234 -0
  132. package/lib/public/src/components/pcfactory/src/RichTextEditor/RichTextEditorMain.tsx +41 -0
  133. package/lib/public/src/components/pcfactory/src/RichTextEditor/index.tsx +33 -0
  134. package/lib/public/src/components/pcfactory/src/RichTextEditor/loader.ts +12 -0
  135. package/lib/public/src/components/pcfactory/src/Row/Row.tsx +66 -0
  136. package/lib/public/src/components/pcfactory/src/Row/index.tsx +9 -0
  137. package/lib/public/src/components/pcfactory/src/Row/loader.tsx +12 -0
  138. package/lib/public/src/components/pcfactory/src/Select/index.tsx +628 -0
  139. package/lib/public/src/components/pcfactory/src/Select/selectUtils.ts +257 -0
  140. package/lib/public/src/components/pcfactory/src/Slider/index.tsx +351 -0
  141. package/lib/public/src/components/pcfactory/src/StdUpload/DownloadProgress/DownloadProgress.tsx +27 -0
  142. package/lib/public/src/components/pcfactory/src/StdUpload/DownloadProgress/index.ts +3 -0
  143. package/lib/public/src/components/pcfactory/src/StdUpload/UploadItem.tsx +257 -0
  144. package/lib/public/src/components/pcfactory/src/StdUpload/assets/default.png +0 -0
  145. package/lib/public/src/components/pcfactory/src/StdUpload/assets/js.png +0 -0
  146. package/lib/public/src/components/pcfactory/src/StdUpload/assets/pdf.png +0 -0
  147. package/lib/public/src/components/pcfactory/src/StdUpload/assets/ppt.png +0 -0
  148. package/lib/public/src/components/pcfactory/src/StdUpload/assets/txt.png +0 -0
  149. package/lib/public/src/components/pcfactory/src/StdUpload/assets/word.png +0 -0
  150. package/lib/public/src/components/pcfactory/src/StdUpload/assets/xls.png +0 -0
  151. package/lib/public/src/components/pcfactory/src/StdUpload/assets/zip.png +0 -0
  152. package/lib/public/src/components/pcfactory/src/StdUpload/index.tsx +1050 -0
  153. package/lib/public/src/components/pcfactory/src/StdUpload/uploadItem.less +64 -0
  154. package/lib/public/src/components/pcfactory/src/Steps/constant/checkcircle.tsx +29 -0
  155. package/lib/public/src/components/pcfactory/src/Steps/constant/index.ts +2 -0
  156. package/lib/public/src/components/pcfactory/src/Steps/constant/vector.tsx +13 -0
  157. package/lib/public/src/components/pcfactory/src/Steps/index.tsx +343 -0
  158. package/lib/public/src/components/pcfactory/src/SuperSelect/ComSelect.tsx +538 -0
  159. package/lib/public/src/components/pcfactory/src/SuperSelect/index.tsx +127 -0
  160. package/lib/public/src/components/pcfactory/src/SuperSelect/loader.tsx +12 -0
  161. package/lib/public/src/components/pcfactory/src/Swiper/index.tsx +184 -0
  162. package/lib/public/src/components/pcfactory/src/Switch/index.tsx +219 -0
  163. package/lib/public/src/components/pcfactory/src/TabPane/index.tsx +145 -0
  164. package/lib/public/src/components/pcfactory/src/Table/BodyCell/index.tsx +278 -0
  165. package/lib/public/src/components/pcfactory/src/Table/EditComponent/index.tsx +554 -0
  166. package/lib/public/src/components/pcfactory/src/Table/FormatCell/GhostTag/index.tsx +34 -0
  167. package/lib/public/src/components/pcfactory/src/Table/FormatCell/Hyperlink/index.tsx +26 -0
  168. package/lib/public/src/components/pcfactory/src/Table/FormatCell/PointTag/index.tsx +41 -0
  169. package/lib/public/src/components/pcfactory/src/Table/FormatCell/PureColourFill/index.tsx +32 -0
  170. package/lib/public/src/components/pcfactory/src/Table/FormatCell/PureFadeColourTag/index.tsx +34 -0
  171. package/lib/public/src/components/pcfactory/src/Table/FormatCell/index.tsx +227 -0
  172. package/lib/public/src/components/pcfactory/src/Table/HeaderCell/HeaderCellTitle/index.tsx +63 -0
  173. package/lib/public/src/components/pcfactory/src/Table/HeaderCell/index.tsx +32 -0
  174. package/lib/public/src/components/pcfactory/src/Table/TableHead/index.tsx +501 -0
  175. package/lib/public/src/components/pcfactory/src/Table/TableSummaryRow/index.tsx +46 -0
  176. package/lib/public/src/components/pcfactory/src/Table/constant.ts +73 -0
  177. package/lib/public/src/components/pcfactory/src/Table/hooks/index.ts +32 -0
  178. package/lib/public/src/components/pcfactory/src/Table/hooks/useCMDActions.ts +325 -0
  179. package/lib/public/src/components/pcfactory/src/Table/hooks/useCheckStrict.ts +176 -0
  180. package/lib/public/src/components/pcfactory/src/Table/hooks/useColumns.tsx +1851 -0
  181. package/lib/public/src/components/pcfactory/src/Table/hooks/useCommon.ts +39 -0
  182. package/lib/public/src/components/pcfactory/src/Table/hooks/useDataSource.ts +201 -0
  183. package/lib/public/src/components/pcfactory/src/Table/hooks/useExpandable.tsx +324 -0
  184. package/lib/public/src/components/pcfactory/src/Table/hooks/useFilter.tsx +274 -0
  185. package/lib/public/src/components/pcfactory/src/Table/hooks/useFormatCell.ts +309 -0
  186. package/lib/public/src/components/pcfactory/src/Table/hooks/usePagination.ts +104 -0
  187. package/lib/public/src/components/pcfactory/src/Table/hooks/useRowEdit.ts +302 -0
  188. package/lib/public/src/components/pcfactory/src/Table/hooks/useRowMerge.ts +93 -0
  189. package/lib/public/src/components/pcfactory/src/Table/hooks/useScroll.ts +120 -0
  190. package/lib/public/src/components/pcfactory/src/Table/hooks/useSelection.ts +467 -0
  191. package/lib/public/src/components/pcfactory/src/Table/hooks/useSort.ts +39 -0
  192. package/lib/public/src/components/pcfactory/src/Table/hooks/useSummaryCol.ts +191 -0
  193. package/lib/public/src/components/pcfactory/src/Table/index.tsx +525 -0
  194. package/lib/public/src/components/pcfactory/src/Table/utils/SequenceId.ts +104 -0
  195. package/lib/public/src/components/pcfactory/src/Table/utils/index.ts +442 -0
  196. package/lib/public/src/components/pcfactory/src/Tabs/index.tsx +209 -0
  197. package/lib/public/src/components/pcfactory/src/Tag/index.tsx +39 -0
  198. package/lib/public/src/components/pcfactory/src/Text/index.tsx +191 -0
  199. package/lib/public/src/components/pcfactory/src/TextArea/ForIETextArea.tsx +96 -0
  200. package/lib/public/src/components/pcfactory/src/TextArea/index.tsx +255 -0
  201. package/lib/public/src/components/pcfactory/src/TimePicker/index.tsx +3 -0
  202. package/lib/public/src/components/pcfactory/src/TlrView/index.tsx +3 -0
  203. package/lib/public/src/components/pcfactory/src/TooltipView/PropsType.ts +22 -0
  204. package/lib/public/src/components/pcfactory/src/TooltipView/TooltipViewED/index.tsx +10 -0
  205. package/lib/public/src/components/pcfactory/src/TooltipView/hooks/index.tsx +90 -0
  206. package/lib/public/src/components/pcfactory/src/TooltipView/index.tsx +13 -0
  207. package/lib/public/src/components/pcfactory/src/Transfer/index.tsx +753 -0
  208. package/lib/public/src/components/pcfactory/src/Tree/TreeNodeMenu/index.tsx +102 -0
  209. package/lib/public/src/components/pcfactory/src/Tree/index.tsx +1303 -0
  210. package/lib/public/src/components/pcfactory/src/TreeSelect/index.tsx +639 -0
  211. package/lib/public/src/components/pcfactory/src/TreeTable/hooks/index.ts +4 -0
  212. package/lib/public/src/components/pcfactory/src/TreeTable/hooks/useCMDAction.ts +82 -0
  213. package/lib/public/src/components/pcfactory/src/TreeTable/hooks/useExpandable.tsx +61 -0
  214. package/lib/public/src/components/pcfactory/src/TreeTable/index.tsx +273 -0
  215. package/lib/public/src/components/pcfactory/src/Upload/Upload.tsx +740 -0
  216. package/lib/public/src/components/pcfactory/src/Upload/index.tsx +29 -0
  217. package/lib/public/src/components/pcfactory/src/Upload/loader.tsx +13 -0
  218. package/lib/public/src/components/pcfactory/src/VerificationCode/assets/placeholder.png +0 -0
  219. package/lib/public/src/components/pcfactory/src/VerificationCode/index.tsx +297 -0
  220. package/lib/public/src/components/pcfactory/src/VerticalView/index.tsx +25 -0
  221. package/lib/public/src/components/pcfactory/src/VideoPlayer/index.tsx +159 -0
  222. package/lib/public/src/components/pcfactory/src/View/index.tsx +150 -0
  223. package/lib/public/src/components/pcfactory/src/View/useBackgroundStyle.ts +75 -0
  224. package/lib/public/src/components/pcfactory/src/VirtualGroup/index.tsx +16 -0
  225. package/lib/public/src/components/pcfactory/src/Webview/index.tsx +104 -0
  226. package/lib/public/src/components/pcfactory/src/index.component.ts +253 -0
  227. package/lib/public/src/components/pcfactory/src/styles/common.less +107 -0
  228. package/lib/public/src/components/pcfactory/src/styles/compatible.less +976 -0
  229. package/lib/public/src/components/pcfactory/src/styles/components/Alert.less +25 -0
  230. package/lib/public/src/components/pcfactory/src/styles/components/Audio.less +198 -0
  231. package/lib/public/src/components/pcfactory/src/styles/components/Button.less +32 -0
  232. package/lib/public/src/components/pcfactory/src/styles/components/Card.less +155 -0
  233. package/lib/public/src/components/pcfactory/src/styles/components/Cascader.less +54 -0
  234. package/lib/public/src/components/pcfactory/src/styles/components/Checkbox.less +7 -0
  235. package/lib/public/src/components/pcfactory/src/styles/components/Collapse.less +214 -0
  236. package/lib/public/src/components/pcfactory/src/styles/components/DatePicker.less +22 -0
  237. package/lib/public/src/components/pcfactory/src/styles/components/Description.less +64 -0
  238. package/lib/public/src/components/pcfactory/src/styles/components/Divider.less +530 -0
  239. package/lib/public/src/components/pcfactory/src/styles/components/Drawer.less +54 -0
  240. package/lib/public/src/components/pcfactory/src/styles/components/Dropdown.less +11 -0
  241. package/lib/public/src/components/pcfactory/src/styles/components/DynamicDataContainer.less +16 -0
  242. package/lib/public/src/components/pcfactory/src/styles/components/DynamicTabs.less +254 -0
  243. package/lib/public/src/components/pcfactory/src/styles/components/Form.less +265 -0
  244. package/lib/public/src/components/pcfactory/src/styles/components/FormGroup.less +111 -0
  245. package/lib/public/src/components/pcfactory/src/styles/components/Gantt.less +139 -0
  246. package/lib/public/src/components/pcfactory/src/styles/components/GridView.less +62 -0
  247. package/lib/public/src/components/pcfactory/src/styles/components/Icon.less +20 -0
  248. package/lib/public/src/components/pcfactory/src/styles/components/Input.less +164 -0
  249. package/lib/public/src/components/pcfactory/src/styles/components/InputNumber.less +124 -0
  250. package/lib/public/src/components/pcfactory/src/styles/components/InputPassword.less +3 -0
  251. package/lib/public/src/components/pcfactory/src/styles/components/Link.less +4 -0
  252. package/lib/public/src/components/pcfactory/src/styles/components/LoopList.less +67 -0
  253. package/lib/public/src/components/pcfactory/src/styles/components/Menu.less +54 -0
  254. package/lib/public/src/components/pcfactory/src/styles/components/ModalSelect.less +42 -0
  255. package/lib/public/src/components/pcfactory/src/styles/components/Popconfirm.less +7 -0
  256. package/lib/public/src/components/pcfactory/src/styles/components/Progress.less +57 -0
  257. package/lib/public/src/components/pcfactory/src/styles/components/QuillEditor.less +15 -0
  258. package/lib/public/src/components/pcfactory/src/styles/components/Radio.less +7 -0
  259. package/lib/public/src/components/pcfactory/src/styles/components/Rate.less +16 -0
  260. package/lib/public/src/components/pcfactory/src/styles/components/Result.less +26 -0
  261. package/lib/public/src/components/pcfactory/src/styles/components/Select.less +146 -0
  262. package/lib/public/src/components/pcfactory/src/styles/components/Slider.less +78 -0
  263. package/lib/public/src/components/pcfactory/src/styles/components/StdUpload.less +225 -0
  264. package/lib/public/src/components/pcfactory/src/styles/components/Step.less +91 -0
  265. package/lib/public/src/components/pcfactory/src/styles/components/SuperSelect.less +83 -0
  266. package/lib/public/src/components/pcfactory/src/styles/components/Swiper.less +106 -0
  267. package/lib/public/src/components/pcfactory/src/styles/components/Switch.less +49 -0
  268. package/lib/public/src/components/pcfactory/src/styles/components/Table.less +1229 -0
  269. package/lib/public/src/components/pcfactory/src/styles/components/Tabs.less +291 -0
  270. package/lib/public/src/components/pcfactory/src/styles/components/Tag.less +107 -0
  271. package/lib/public/src/components/pcfactory/src/styles/components/TextArea.less +12 -0
  272. package/lib/public/src/components/pcfactory/src/styles/components/TooltipView.less +43 -0
  273. package/lib/public/src/components/pcfactory/src/styles/components/Transfer.less +155 -0
  274. package/lib/public/src/components/pcfactory/src/styles/components/Tree.less +329 -0
  275. package/lib/public/src/components/pcfactory/src/styles/components/TreeSelect.less +65 -0
  276. package/lib/public/src/components/pcfactory/src/styles/components/Upload.less +26 -0
  277. package/lib/public/src/components/pcfactory/src/styles/components/VerificationCode.less +162 -0
  278. package/lib/public/src/components/pcfactory/src/styles/components/Webview.less +31 -0
  279. package/lib/public/src/components/pcfactory/src/styles/index.less +10 -0
  280. package/lib/public/src/components/pcfactory/src/styles/index.ued.less +65 -0
  281. package/lib/public/src/components/pcfactory/src/styles/theme/variables/antdVariables.less +84 -0
  282. package/lib/public/src/components/pcfactory/src/styles/theme/variables/common.less +9 -0
  283. package/lib/public/src/components/pcfactory/src/styles/theme/variables/customVariables.less +35 -0
  284. package/lib/public/src/components/pcfactory/src/styles/theme/variables/index.less +2 -0
  285. package/lib/public/src/components/pcfactory/src/utils/ChannelContainer.tsx +150 -0
  286. package/lib/public/src/components/pcfactory/src/utils/ChildRender.ts +103 -0
  287. package/lib/public/src/components/pcfactory/src/utils/CustomModule.tsx +134 -0
  288. package/lib/public/src/components/pcfactory/src/utils/DummyFormContext.ts +136 -0
  289. package/lib/public/src/components/pcfactory/src/utils/Empty/customLocale.tsx +6 -0
  290. package/lib/public/src/components/pcfactory/src/utils/Empty/empty.tsx +37 -0
  291. package/lib/public/src/components/pcfactory/src/utils/LoaderHelper.tsx +29 -0
  292. package/lib/public/src/components/pcfactory/src/utils/PropsType.ts +21 -0
  293. package/lib/public/src/components/pcfactory/src/utils/WithSyncValue.ts +218 -0
  294. package/lib/public/src/components/pcfactory/src/utils/ahooks/index.ts +22 -0
  295. package/lib/public/src/components/pcfactory/src/utils/ahooks/useCreation.ts +23 -0
  296. package/lib/public/src/components/pcfactory/src/utils/ahooks/useDeepCompareEffect.ts +27 -0
  297. package/lib/public/src/components/pcfactory/src/utils/ahooks/useMap.ts +46 -0
  298. package/lib/public/src/components/pcfactory/src/utils/ahooks/useMemoizedFn.ts +27 -0
  299. package/lib/public/src/components/pcfactory/src/utils/ahooks/usePrevious.ts +19 -0
  300. package/lib/public/src/components/pcfactory/src/utils/ahooks/useSafeState.ts +26 -0
  301. package/lib/public/src/components/pcfactory/src/utils/ahooks/useSetState.ts +26 -0
  302. package/lib/public/src/components/pcfactory/src/utils/ahooks/useUnmountedRef.ts +14 -0
  303. package/lib/public/src/components/pcfactory/src/utils/ahooks/useUpdate.ts +9 -0
  304. package/lib/public/src/components/pcfactory/src/utils/ahooks/useUpdateEffect.ts +16 -0
  305. package/lib/public/src/components/pcfactory/src/utils/basicStatusTransfer.ts +32 -0
  306. package/lib/public/src/components/pcfactory/src/utils/common.ts +367 -0
  307. package/lib/public/src/components/pcfactory/src/utils/dynamicUtils/DynamicContext.tsx +106 -0
  308. package/lib/public/src/components/pcfactory/src/utils/formUtils/FormContext.tsx +131 -0
  309. package/lib/public/src/components/pcfactory/src/utils/formUtils/FormFields.tsx +646 -0
  310. package/lib/public/src/components/pcfactory/src/utils/formUtils/WrapperContainer.tsx +123 -0
  311. package/lib/public/src/components/pcfactory/src/utils/formUtils/cmdHelper.ts +411 -0
  312. package/lib/public/src/components/pcfactory/src/utils/formUtils/common.ts +28 -0
  313. package/lib/public/src/components/pcfactory/src/utils/getExportDefaultObj.ts +11 -0
  314. package/lib/public/src/components/pcfactory/src/utils/hooks/useCommonImperativeHandle.ts +140 -0
  315. package/lib/public/src/components/pcfactory/src/utils/hooks/useDataMask.ts +83 -0
  316. package/lib/public/src/components/pcfactory/src/utils/hooks/useDoubleClick.ts +63 -0
  317. package/lib/public/src/components/pcfactory/src/utils/hooks/useFuncExpExecute.ts +86 -0
  318. package/lib/public/src/components/pcfactory/src/utils/hooks/useGetStaticAttrData.ts +41 -0
  319. package/lib/public/src/components/pcfactory/src/utils/hooks/useHiddenStyle.ts +43 -0
  320. package/lib/public/src/components/pcfactory/src/utils/hooks/useInitReactQuill.ts +90 -0
  321. package/lib/public/src/components/pcfactory/src/utils/hooks/useListenState.ts +26 -0
  322. package/lib/public/src/components/pcfactory/src/utils/hooks/useLocale.ts +129 -0
  323. package/lib/public/src/components/pcfactory/src/utils/hooks/usePrintMode.tsx +80 -0
  324. package/lib/public/src/components/pcfactory/src/utils/hooks/useRules.ts +89 -0
  325. package/lib/public/src/components/pcfactory/src/utils/hooks/useTestHelper.ts +26 -0
  326. package/lib/public/src/components/pcfactory/src/utils/hooks/useToggleBoolean.ts +33 -0
  327. package/lib/public/src/components/pcfactory/src/utils/index.ts +19 -0
  328. package/lib/public/src/components/pcfactory/src/utils/polyfill.js +305 -0
  329. package/lib/public/src/components/pcfactory/src/utils/renderReadOnly.tsx +105 -0
  330. package/lib/public/src/components/pcfactory/src/variables.ts +2 -0
  331. package/lib/public/src/components/pcfactory/typings.d.ts +27 -0
  332. package/lib/public/src/hooks/useGenerateContext.ts +73 -0
  333. package/lib/public/src/styles/common.less +41 -0
  334. package/lib/public/src/styles/index.less +4 -0
  335. package/lib/public/src/styles/index.ts +1 -0
  336. package/lib/public/src/styles/theme/variables.less +130 -0
  337. package/lib/public/src/utils/LcdpSpin/index.less +13 -0
  338. package/lib/public/src/utils/LcdpSpin/index.tsx +12 -0
  339. package/lib/public/src/utils/ModalManager/Drawer/index.less +30 -0
  340. package/lib/public/src/utils/ModalManager/Drawer/index.tsx +109 -0
  341. package/lib/public/src/utils/ModalManager/Modal/index.less +7 -0
  342. package/lib/public/src/utils/ModalManager/Modal/index.tsx +96 -0
  343. package/lib/public/src/utils/ModalManager/index.tsx +278 -0
  344. package/lib/public/src/utils/Security/encipher/des.ts +52 -0
  345. package/lib/public/src/utils/customFuncMapping.ts +107 -0
  346. package/lib/public/src/utils/formUtils.ts +458 -0
  347. package/lib/public/src/utils/i18n/i18n.ts +15 -0
  348. package/lib/public/src/utils/i18n/index.ts +7 -0
  349. package/lib/public/src/utils/i18n/locale/app/en_US.ts +77 -0
  350. package/lib/public/src/utils/i18n/locale/app/index.ts +9 -0
  351. package/lib/public/src/utils/i18n/locale/app/otherLocale.ts +2 -0
  352. package/lib/public/src/utils/i18n/locale/app/zh_CN.ts +65 -0
  353. package/lib/public/src/utils/i18n/locale/app/zh_HK.ts +66 -0
  354. package/lib/public/src/utils/i18n/locale/base/en_US.ts +449 -0
  355. package/lib/public/src/utils/i18n/locale/base/index.ts +5 -0
  356. package/lib/public/src/utils/i18n/locale/base/zh_CN.ts +413 -0
  357. package/lib/public/src/utils/i18n/locale/base/zh_HK.ts +411 -0
  358. package/lib/public/src/utils/i18n/locale/pc/en_US.ts +131 -0
  359. package/lib/public/src/utils/i18n/locale/pc/index.ts +9 -0
  360. package/lib/public/src/utils/i18n/locale/pc/otherLocale.ts +2 -0
  361. package/lib/public/src/utils/i18n/locale/pc/zh_CN.ts +105 -0
  362. package/lib/public/src/utils/i18n/locale/pc/zh_HK.ts +105 -0
  363. package/lib/public/src/utils/i18n/localeMonitor.ts +71 -0
  364. package/lib/public/src/utils/i18n/locales.ts +30 -0
  365. package/lib/public/src/utils/i18n/replaceMessage.ts +29 -0
  366. package/lib/public/src/utils/i18n/types.ts +2 -0
  367. package/lib/public/src/utils/i18n/useLocale.ts +129 -0
  368. package/lib/public/src/utils/messageApi.ts +93 -0
  369. package/lib/public/src/utils/useTool.ts +428 -0
  370. package/package.json +2 -2
  371. /package/lib/public/src/utils/functors/{dateAdd.ts → DATEADD.ts} +0 -0
@@ -0,0 +1,639 @@
1
+ import { LingxiForwardRef } from '@lingxiteam/types';
2
+ import { TreeSelect } from 'antd';
3
+ import _ from 'lodash';
4
+ import React, { useEffect, useRef, useState } from 'react';
5
+ import IconFont from '../IconFont';
6
+ import {
7
+ FormFields,
8
+ getFieldsProps,
9
+ useCommonImperativeHandle,
10
+ useListenProps,
11
+ } from '../utils';
12
+ import { flattenTreeData, renderCommonList } from '../utils/renderReadOnly';
13
+
14
+ const { TreeNode } = TreeSelect;
15
+
16
+ const TREESELECT_WRAPPER_CLASSNAME = 'ued-treeSelect-wrap';
17
+ const WrapperTreeSelect = ({ children }: { children: JSX.Element }) =>
18
+ React.cloneElement(children, {
19
+ className: `${TREESELECT_WRAPPER_CLASSNAME} ${
20
+ children.props.className || ''
21
+ }`,
22
+ });
23
+
24
+ export interface MyTreeSelectProps {
25
+ value?: any;
26
+ visible?: boolean;
27
+ onChange?: (e: any, label: any, ext: any) => void;
28
+ onValueRelease?: (value: any) => void;
29
+ getCompPropMapState?: (id: string, type: string) => any;
30
+ compId?: string;
31
+ name?: string;
32
+ fieldName: string;
33
+ required?: any;
34
+ hidden?: boolean;
35
+ regexp?: any;
36
+ message?: any;
37
+ label?: any;
38
+ labelCol?: any;
39
+ wrapperCol?: any;
40
+ text?: any;
41
+ selfSpan?: number;
42
+ colSpan?: number;
43
+ dataSource?: any;
44
+ style?: React.CSSProperties;
45
+ treeService?: any;
46
+ treeDefaultExpandAll?: boolean;
47
+ treeData?: any;
48
+ onDataSourceRelease?: (data: any[]) => void;
49
+ isAsync?: boolean;
50
+ asyncService?: any;
51
+ showWrapperContainer: boolean;
52
+ wrapperContainer: any;
53
+ titleTip?: any;
54
+ tipIcon?: any;
55
+ tipLocation?: any;
56
+ tipContent?: any;
57
+ tipPlacement?: any;
58
+ isSelectAll?: boolean;
59
+ treeCheckable?: boolean; // 是否复选
60
+ onTreeExpand?: (
61
+ nodeKey: any,
62
+ childrenKey: any,
63
+ parentNodeKey: any,
64
+ parentNodeData: any,
65
+ ) => void;
66
+ onSelectAllRelease?: () => void;
67
+ colon?: boolean;
68
+ multiple: boolean;
69
+ isFormChild?: boolean | undefined;
70
+ onSelect?: (
71
+ key: any,
72
+ data: any,
73
+ parentNodeKey: any,
74
+ parentNodeData: any,
75
+ ) => void;
76
+ readOnly: boolean;
77
+ rules?: any[];
78
+ filter?: any;
79
+ onSearch?: (value: any) => void;
80
+ tipSize?: string; // 文字提示
81
+ tipWidth?: string; // 提示自定义的宽度
82
+ tipHeight?: string; // 提示自定义的高度
83
+ getEngineApis?: any;
84
+ }
85
+
86
+ const SERVICE_SOURCE = {
87
+ // 服务来源
88
+ APP: 'app', // 应用内部 & 模型生成
89
+ QUERY: 'query', // 解析服务
90
+ STD: 'std', // 编排服务
91
+ INNER: 'inner', // 高代码服务
92
+ PLATFORM: 'platform', // 平台服务
93
+ ATOM: 'atom', // 外部服务(低代码运营平台的原子服务)
94
+ RHIN: 'rhin', // 业务运营服务
95
+ SCENE: 'scene', // 业务运营场景服务
96
+ OBJECT: 'object', // 业务对象生成服务
97
+ };
98
+
99
+ const MyTreeSelect = LingxiForwardRef<any, MyTreeSelectProps>((props, ref) => {
100
+ const {
101
+ onChange,
102
+ getCompPropMapState,
103
+ compId,
104
+ name,
105
+ fieldName: rawFieldName,
106
+ hidden,
107
+ regexp,
108
+ message,
109
+ label,
110
+ labelCol,
111
+ wrapperCol,
112
+ selfSpan,
113
+ colSpan,
114
+ treeDefaultExpandAll,
115
+ treeData,
116
+ isAsync,
117
+ asyncService,
118
+ showWrapperContainer,
119
+ wrapperContainer: WrapperContainer,
120
+ titleTip,
121
+ tipIcon,
122
+ tipLocation,
123
+ tipContent,
124
+ tipPlacement,
125
+ isFormChild,
126
+ onSelect,
127
+ onSearch,
128
+ filter,
129
+ tipSize,
130
+ tipWidth,
131
+ tipHeight,
132
+ getEngineApis,
133
+ value,
134
+ ...restProps
135
+ } = props;
136
+
137
+ const engineApis = getEngineApis?.() || {};
138
+
139
+ const { onlySyncValue } = engineApis;
140
+
141
+ // 加载数据字段映射
142
+ const [treeService, setTreeService] = useListenProps(props.treeService);
143
+ // 加载数据
144
+ const [dataSource, setDataSource] = useListenProps(props.dataSource);
145
+
146
+ const [data, setData] = useState(treeService ? [] : treeData);
147
+ const [isSelectAll, setIsSelectAll] = useState<boolean>(
148
+ props?.isSelectAll || false,
149
+ );
150
+ const [filterObject, setFilterObject] = useState<any>({});
151
+ // 记录节点集合
152
+ const treeNodeMap = useRef<any>({});
153
+ // 用来记录当前展开的key,节点展开事件中以获取展开的节点
154
+ const [expandedKeys, setExpandedKeys] = useState<any[]>([]);
155
+
156
+ const { formFieldsRef, required, readOnly, disabled, finalRules } =
157
+ useCommonImperativeHandle(ref, props, {
158
+ get dataSource() {
159
+ return data;
160
+ },
161
+ setDataSource(_data: any[]) {
162
+ setDataSource(_data);
163
+ },
164
+ setStateMap(stateMap: any) {
165
+ if (stateMap?.treeService) {
166
+ setTreeService(stateMap.treeService);
167
+ }
168
+ if (Array.isArray(stateMap?.dataSource)) {
169
+ setDataSource([...stateMap.dataSource]);
170
+ }
171
+ },
172
+ // 设置全部选中
173
+ setSelectAll(_flag: boolean) {
174
+ setIsSelectAll(_flag);
175
+ },
176
+ clearValue() {
177
+ if (treeProps.multiple || treeProps.treeCheckable) {
178
+ onlySyncValue?.([]);
179
+ } else {
180
+ onlySyncValue?.(null);
181
+ }
182
+ },
183
+ setValue(newValue: any) {
184
+ if (treeProps.multiple || treeProps.treeCheckable) {
185
+ const _value = Array.isArray(newValue)
186
+ ? newValue
187
+ : newValue?.split(',');
188
+ onlySyncValue?.(_value);
189
+ } else {
190
+ onlySyncValue?.(newValue);
191
+ }
192
+ },
193
+ });
194
+
195
+ // isGetAll 是否获取所有节点keys,否则只获取父级的,展开时使用
196
+ const recursive = (
197
+ arr: any[],
198
+ keys: any[],
199
+ map?: any,
200
+ isGetAll = false,
201
+ parentNode?: any,
202
+ ) => {
203
+ if (Array.isArray(arr)) {
204
+ arr.forEach((a) => {
205
+ if (map) {
206
+ map[a.key] = { ...a, data: { ...(a.data || {}), parentNode } };
207
+ }
208
+ // 有子节点才展开
209
+ if (a.children && a?.children?.length) {
210
+ keys.push(a.key);
211
+ recursive(a.children, keys, map, isGetAll, Object.freeze({ ...a }));
212
+ } else if (isGetAll) {
213
+ keys.push(a.key);
214
+ }
215
+ });
216
+ }
217
+ };
218
+
219
+ // 重新选择/设置选项时,重置之前全选的状态
220
+ const resetSelectAll = () => {
221
+ if (restProps.treeCheckable) {
222
+ setIsSelectAll(false);
223
+ }
224
+ };
225
+
226
+ useEffect(() => {
227
+ if (isSelectAll && data && restProps.treeCheckable) {
228
+ // 全选,设置keys
229
+ const keys: any[] = [];
230
+ recursive(data, keys, undefined, true);
231
+ onlySyncValue?.(keys);
232
+ resetSelectAll();
233
+ }
234
+ }, [isSelectAll, data, restProps.treeCheckable]);
235
+
236
+ const getExpandedKeysAsync = () => {
237
+ if (data?.length) {
238
+ const map = {};
239
+ const keys: any[] = [];
240
+
241
+ recursive(data, keys, map);
242
+ if (!asyncService && treeDefaultExpandAll) {
243
+ setExpandedKeys(keys);
244
+ }
245
+ treeNodeMap.current = map;
246
+ }
247
+ };
248
+
249
+ useEffect(() => {
250
+ if (data) {
251
+ getExpandedKeysAsync();
252
+ }
253
+ }, [data, asyncService, treeDefaultExpandAll]);
254
+
255
+ const getParams = (service: any, key: any) => {
256
+ const {
257
+ providerId,
258
+ appId,
259
+ serviceCode,
260
+ _source,
261
+ loadKey,
262
+ _serviceId,
263
+ serviceVersion,
264
+ sceneCode,
265
+ linkCode,
266
+ busiObjectId,
267
+ versionCode,
268
+ } = service || {};
269
+ let params: any = { [loadKey]: key };
270
+ // 特殊服务参数处理
271
+ if (_source === SERVICE_SOURCE.ATOM) {
272
+ // 原子服务
273
+ params = {
274
+ providerId,
275
+ serviceProviderRequest: params,
276
+ };
277
+ } else if (
278
+ _source === SERVICE_SOURCE.QUERY ||
279
+ _source === SERVICE_SOURCE.INNER ||
280
+ _source === SERVICE_SOURCE.PLATFORM
281
+ ) {
282
+ // 解析类服务 或 请求层服务
283
+ params = {
284
+ appId: (window as any).appId || appId,
285
+ serviceCode,
286
+ params,
287
+ };
288
+ } else if (_source === SERVICE_SOURCE.STD) {
289
+ // 编排类服务
290
+ params = {
291
+ appId: (window as any).appId || appId,
292
+ serviceCode,
293
+ version: versionCode,
294
+ serviceVersionId: _serviceId,
295
+ parameters: params,
296
+ };
297
+ } else if (_source === SERVICE_SOURCE.RHIN) {
298
+ // 业务平台
299
+ params = {
300
+ appId: (window as any).appId || appId,
301
+ serviceCode,
302
+ serviceVersion: versionCode,
303
+ serviceRequest: params,
304
+ };
305
+ } else if (_source === SERVICE_SOURCE.SCENE) {
306
+ // 业务平台场景
307
+ params = {
308
+ appId: (window as any).appId || appId,
309
+ serviceCode,
310
+ serviceVersion,
311
+ sceneCode,
312
+ linkCode,
313
+ serviceRequest: params,
314
+ };
315
+ } else if (_source === SERVICE_SOURCE.OBJECT) {
316
+ params = {
317
+ busiObjectId,
318
+ busiObjectInstId: `${Math.random()}`.slice(12),
319
+ attrs: params,
320
+ };
321
+ }
322
+ return params;
323
+ };
324
+
325
+ const transformBoolean = (value: any) => {
326
+ if (value === undefined || value === null) {
327
+ return undefined;
328
+ }
329
+ if (value === 'false') {
330
+ return false;
331
+ }
332
+ return Boolean(value);
333
+ };
334
+
335
+ const loadTreeData = (source: any[], service: any) => {
336
+ const { key, title, children, selectable = 'selectable' } = service || {};
337
+ const getTreeData = (arr: any[]) => {
338
+ if (Array.isArray(arr)) {
339
+ return arr.map((c) => {
340
+ // _isReload 标识节点数据是通过加载子节点动作设置的,此时取该动作配置好的key/title/selectable
341
+ const originData = c._isReload ? c.data : c;
342
+ const isSelectable = transformBoolean(
343
+ originData[selectable] ?? originData.selectable,
344
+ );
345
+ // 如果加载子节点配置了映射,优先取加载子节点的,否则取当时加载数据的映射,若都没有则取数据上的默认字段
346
+ const nodeSelectable = c._isReload
347
+ ? c.selectable ?? isSelectable
348
+ : isSelectable;
349
+ const node: any = {
350
+ key: c._isReload
351
+ ? c.key ?? originData[key]
352
+ : originData[key] ?? originData.key,
353
+ title: c._isReload
354
+ ? c.title ?? originData[title]
355
+ : originData[title] ?? originData.title,
356
+ selectable: c._isReload
357
+ ? c.selectable ?? isSelectable
358
+ : isSelectable,
359
+ disableCheckbox:
360
+ c.disabled ??
361
+ c.disableCheckbox ??
362
+ (nodeSelectable !== undefined ? !nodeSelectable : undefined),
363
+ disabled:
364
+ c.disabled ??
365
+ c.disableCheckbox ??
366
+ (nodeSelectable !== undefined ? !nodeSelectable : undefined),
367
+ isLeaf: c.isLeaf ?? originData.isLeaf ?? false,
368
+ data: c.data || c,
369
+ };
370
+ // 优先取配置的children字段,若配置错误则子节点为空,若无配置默认访问数据自身children
371
+ const childrenKey = children || 'children';
372
+ if (Array.isArray(c[childrenKey])) {
373
+ node.children = getTreeData(c[childrenKey]);
374
+ }
375
+ if (originData.isLeaf === undefined) {
376
+ if (asyncService || isAsync) {
377
+ // 存量异步数据
378
+ // -null是非叶子 -[]是叶子 -属性不存在是非叶子
379
+ if (
380
+ Array.isArray(c[childrenKey]) &&
381
+ c[childrenKey]?.length === 0
382
+ ) {
383
+ node.isLeaf = true;
384
+ }
385
+ } else if (children || c[childrenKey]) {
386
+ // 加载数据配置子节点映射,或者数据上也有children数据,则视为同步加载
387
+ // 目前不处理加载子节点数据动作返回来的数据里面的children
388
+ // -null是叶子 -[]是叶子 -属性不存在是叶子 -[有值]是非叶子
389
+ if (
390
+ c[childrenKey] === null ||
391
+ c[childrenKey] === undefined ||
392
+ !(childrenKey in c) ||
393
+ (Array.isArray(c[childrenKey]) && c[childrenKey]?.length === 0)
394
+ ) {
395
+ node.isLeaf = true;
396
+ }
397
+ }
398
+ // 不符合上述的,默认为异步加载,节点值为非空数组时都视为未展开节点(非叶子)
399
+ }
400
+ return node;
401
+ });
402
+ }
403
+ return [];
404
+ };
405
+ return getTreeData(source);
406
+ };
407
+
408
+ const loadNodeData = (node: any) => {
409
+ const { children, eventKey } = node.props;
410
+ return new Promise<void>((resolve) => {
411
+ if (children && children.length) {
412
+ resolve();
413
+ return;
414
+ }
415
+ const params = getParams(asyncService, eventKey);
416
+ let { serviceMethod } = asyncService;
417
+ if (
418
+ [
419
+ SERVICE_SOURCE.ATOM,
420
+ SERVICE_SOURCE.QUERY,
421
+ SERVICE_SOURCE.INNER,
422
+ SERVICE_SOURCE.PLATFORM,
423
+ SERVICE_SOURCE.STD,
424
+ SERVICE_SOURCE.RHIN,
425
+ SERVICE_SOURCE.SCENE,
426
+ ].includes(asyncService._source)
427
+ ) {
428
+ serviceMethod = 'post';
429
+ }
430
+ engineApis?.service
431
+ ?.commonFetch(serviceMethod, asyncService.api, params)
432
+ .then(
433
+ (res: string | any[]) => {
434
+ if (Array.isArray(res) && res.length) {
435
+ const source = loadTreeData(res, asyncService);
436
+ node.props.dataRef.children = source.map((c) => ({
437
+ ...c,
438
+ isLeaf: false,
439
+ }));
440
+ node.props.dataRef.isLeaf = false;
441
+ } else {
442
+ node.props.dataRef.children = undefined;
443
+ node.props.dataRef.isLeaf = true;
444
+ }
445
+ setData([...data]);
446
+ resolve();
447
+ },
448
+ (err: void | PromiseLike<void>) => {
449
+ node.props.dataRef.children = undefined;
450
+ node.props.dataRef.isLeaf = true;
451
+ setData([...data]);
452
+ resolve(err);
453
+ },
454
+ );
455
+ });
456
+ };
457
+
458
+ // 需要判断自己是否处于表单内,处于表单内的话不能用value
459
+ useEffect(() => {
460
+ // 处理获取到的数据
461
+ if (treeService && dataSource) {
462
+ const res = loadTreeData(dataSource, treeService);
463
+ setData(res);
464
+ } else if (!treeService) {
465
+ // treeService只有配置了加载数据动作才有,若一级为常量配置时,dataSource变化也需要触发刷新
466
+ setData(dataSource || treeData);
467
+ }
468
+ }, [JSON.stringify(treeService), dataSource]);
469
+
470
+ const createNodes = (nodes: any[], parentNode?: any) =>
471
+ Array.isArray(nodes) && nodes.length > 0
472
+ ? nodes.map((c) => (
473
+ <TreeNode
474
+ key={c.key}
475
+ title={c.title}
476
+ data={{ ...(c.data || {}), parentNode }}
477
+ isLeaf={c.isLeaf}
478
+ selectable={c.selectable}
479
+ disableCheckbox={
480
+ c.disabled ??
481
+ c.disableCheckbox ??
482
+ (c.selectable !== undefined ? !c.selectable : undefined)
483
+ }
484
+ disabled={
485
+ c.disabled ??
486
+ c.disableCheckbox ??
487
+ (c.selectable !== undefined ? !c.selectable : undefined)
488
+ }
489
+ dataRef={c}
490
+ value={c.key}
491
+ >
492
+ {c.children &&
493
+ c.children.length > 0 &&
494
+ createNodes(c.children, Object.freeze({ ...c }))}
495
+ </TreeNode>
496
+ ))
497
+ : null;
498
+
499
+ const treeProps: any = {
500
+ ...restProps,
501
+ treeDefaultExpandAll: asyncService ? false : treeDefaultExpandAll,
502
+ treeExpandedKeys: expandedKeys,
503
+ loadData: asyncService ? loadNodeData : undefined,
504
+ dropdownStyle: { maxHeight: 450, overflow: 'auto' },
505
+ };
506
+
507
+ // 是否加载过滤
508
+ useEffect(() => {
509
+ if (!treeProps.showSearch) {
510
+ setFilterObject({});
511
+ return;
512
+ }
513
+ if (filter === 'local') {
514
+ // 支持名称和选项值过滤
515
+ setFilterObject({
516
+ filterTreeNode: (input: any, treeNode: any) => {
517
+ const { title = '', key = '' } = treeNode.props;
518
+ return (
519
+ title.toLowerCase().indexOf(input.toLowerCase()) >= 0 ||
520
+ key.toLowerCase().indexOf(input.toLowerCase()) >= 0
521
+ );
522
+ },
523
+ });
524
+ } else if (filter === 'remote') {
525
+ // 根据配置的‘搜索’事件过滤
526
+ setFilterObject({
527
+ filterTreeNode: () => {
528
+ return true;
529
+ },
530
+ onSearch: _.debounce((input: any) => {
531
+ try {
532
+ if (typeof onSearch === 'function') {
533
+ onSearch(input);
534
+ }
535
+ } catch (err) {
536
+ console.log('err', err);
537
+ }
538
+ }, 300),
539
+ });
540
+ } else if (filter === 'none') {
541
+ // 不过滤
542
+ setFilterObject({
543
+ filterTreeNode: () => {
544
+ return true;
545
+ },
546
+ });
547
+ }
548
+ }, [filter, treeProps.showSearch]);
549
+
550
+ return (
551
+ <FormFields
552
+ {...getFieldsProps(props)}
553
+ disabled={disabled}
554
+ readOnly={readOnly}
555
+ required={required}
556
+ wrapperClassName={TREESELECT_WRAPPER_CLASSNAME}
557
+ rules={finalRules}
558
+ render={(val) =>
559
+ renderCommonList(val, flattenTreeData(data), {
560
+ labelKey: 'title',
561
+ valueKey: 'value',
562
+ childrenKey: 'children',
563
+ })
564
+ }
565
+ ref={formFieldsRef}
566
+ value={value}
567
+ // @ts-ignore
568
+ afterComponent={
569
+ treeProps.showSearch &&
570
+ (treeProps.multiple || treeProps.treeCheckable) ? (
571
+ <IconFont
572
+ width={14}
573
+ height={14}
574
+ className="ued-treeSelect-icon"
575
+ iconClass="lcdp-icon-flow-single-record"
576
+ />
577
+ ) : null
578
+ }
579
+ handleFormValue={(val) => {
580
+ if (val !== undefined) {
581
+ let newValue = val;
582
+ if (restProps.treeCheckable) {
583
+ if (typeof val === 'string') {
584
+ newValue = val.split(',');
585
+ }
586
+ resetSelectAll();
587
+ }
588
+ // 如果newValue 是null 或者空字符串 应该根据当前控件是否多选来赋值。多选是数组,单选是字符串
589
+ if (!newValue) {
590
+ newValue = props.multiple ? [] : '';
591
+ }
592
+ return newValue;
593
+ }
594
+ return undefined;
595
+ }}
596
+ >
597
+ <TreeSelect
598
+ {...treeProps}
599
+ {...filterObject}
600
+ value={value || []}
601
+ onSelect={(keys: any[], e: any) => {
602
+ if (typeof onSelect === 'function') {
603
+ onSelect(keys, e, e?.data?.parentNode?.key, e?.data?.parentNode);
604
+ }
605
+ }}
606
+ dropdownClassName="ued-treeSelect-dropdown"
607
+ onChange={(e, label, extra) => {
608
+ if (onChange) {
609
+ onChange(e, label, extra);
610
+ }
611
+ resetSelectAll();
612
+ }}
613
+ onTreeExpand={(keys) => {
614
+ setExpandedKeys(keys);
615
+ // 展开的时候触发
616
+ if (keys?.length - expandedKeys?.length === 1) {
617
+ const nodeKey = keys[keys.length - 1];
618
+ const node = treeNodeMap.current[nodeKey] || {};
619
+ if (typeof restProps?.onTreeExpand === 'function') {
620
+ restProps.onTreeExpand(
621
+ nodeKey,
622
+ (node.children || []).map((c: any) => c.key),
623
+ node?.data?.parentNode?.key,
624
+ node?.data?.parentNode,
625
+ );
626
+ } else {
627
+ node.isLeaf = !(node.children?.length > 0);
628
+ }
629
+ }
630
+ }}
631
+ >
632
+ {createNodes(data)}
633
+ </TreeSelect>
634
+ </FormFields>
635
+ );
636
+ });
637
+
638
+ export default MyTreeSelect;
639
+ export { WrapperTreeSelect, TREESELECT_WRAPPER_CLASSNAME };
@@ -0,0 +1,4 @@
1
+ import useCMDAction from './useCMDAction';
2
+ import useExpandable from './useExpandable';
3
+
4
+ export { useCMDAction, useExpandable };