@lingxiteam/ebe-utils 0.3.20 → 0.3.22

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 (370) 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/PreviewFile/index.less +200 -0
  9. package/lib/public/src/components/PreviewFile/index.tsx +787 -0
  10. package/lib/public/src/components/PreviewFile/utils.ts +90 -0
  11. package/lib/public/src/components/common/PreviewFile/index.less +200 -0
  12. package/lib/public/src/components/common/PreviewFile/index.tsx +787 -0
  13. package/lib/public/src/components/common/PreviewFile/utils.ts +90 -0
  14. package/lib/public/src/components/pcfactory/src/Alert/index.tsx +22 -0
  15. package/lib/public/src/components/pcfactory/src/Animation/index.tsx +186 -0
  16. package/lib/public/src/components/pcfactory/src/Animation/useAnimation.ts +270 -0
  17. package/lib/public/src/components/pcfactory/src/Animation/useBackgroundStyle.ts +74 -0
  18. package/lib/public/src/components/pcfactory/src/Audio/index.tsx +240 -0
  19. package/lib/public/src/components/pcfactory/src/BarChart/index.tsx +3 -0
  20. package/lib/public/src/components/pcfactory/src/Button/index.tsx +151 -0
  21. package/lib/public/src/components/pcfactory/src/Card/index.tsx +201 -0
  22. package/lib/public/src/components/pcfactory/src/Card/useExtendBtn.tsx +195 -0
  23. package/lib/public/src/components/pcfactory/src/Cascader/index.tsx +398 -0
  24. package/lib/public/src/components/pcfactory/src/ChartBar/index.tsx +15 -0
  25. package/lib/public/src/components/pcfactory/src/ChartBar/loader.tsx +12 -0
  26. package/lib/public/src/components/pcfactory/src/ChartLine/ChartLine.tsx +48 -0
  27. package/lib/public/src/components/pcfactory/src/ChartLine/PropsType.ts +88 -0
  28. package/lib/public/src/components/pcfactory/src/ChartLine/index.tsx +15 -0
  29. package/lib/public/src/components/pcfactory/src/ChartLine/loader.tsx +12 -0
  30. package/lib/public/src/components/pcfactory/src/Checkbox/index.tsx +144 -0
  31. package/lib/public/src/components/pcfactory/src/CheckboxGroup/index.tsx +319 -0
  32. package/lib/public/src/components/pcfactory/src/Collapse/index.tsx +195 -0
  33. package/lib/public/src/components/pcfactory/src/CollapsePanel/index.tsx +186 -0
  34. package/lib/public/src/components/pcfactory/src/Condition/index.tsx +22 -0
  35. package/lib/public/src/components/pcfactory/src/DatePicker/index.tsx +756 -0
  36. package/lib/public/src/components/pcfactory/src/Description/index.tsx +447 -0
  37. package/lib/public/src/components/pcfactory/src/Description/utils/getLabelSizeMode.ts +40 -0
  38. package/lib/public/src/components/pcfactory/src/Divider/components/CenterLineDivider/index.tsx +190 -0
  39. package/lib/public/src/components/pcfactory/src/Divider/components/CenterTabDivider/index.tsx +77 -0
  40. package/lib/public/src/components/pcfactory/src/Divider/components/LeftCardDivider/index.tsx +87 -0
  41. package/lib/public/src/components/pcfactory/src/Divider/components/LeftLineDivider/index.tsx +106 -0
  42. package/lib/public/src/components/pcfactory/src/Divider/components/LeftTabDivider/index.tsx +60 -0
  43. package/lib/public/src/components/pcfactory/src/Divider/components/LeftTopDivider/index.tsx +55 -0
  44. package/lib/public/src/components/pcfactory/src/Divider/components/LxDashed/index.module.less +10 -0
  45. package/lib/public/src/components/pcfactory/src/Divider/components/LxDashed/index.tsx +143 -0
  46. package/lib/public/src/components/pcfactory/src/Divider/components/LxSolid/index.module.less +10 -0
  47. package/lib/public/src/components/pcfactory/src/Divider/components/LxSolid/index.tsx +126 -0
  48. package/lib/public/src/components/pcfactory/src/Divider/index.tsx +210 -0
  49. package/lib/public/src/components/pcfactory/src/Dropdown/index.tsx +385 -0
  50. package/lib/public/src/components/pcfactory/src/DynamicTabs/PropsType.ts +31 -0
  51. package/lib/public/src/components/pcfactory/src/DynamicTabs/TabPage.tsx +63 -0
  52. package/lib/public/src/components/pcfactory/src/DynamicTabs/index.tsx +214 -0
  53. package/lib/public/src/components/pcfactory/src/Form/Form.tsx +600 -0
  54. package/lib/public/src/components/pcfactory/src/Form/WrapperForm.ts +14 -0
  55. package/lib/public/src/components/pcfactory/src/Form/index.tsx +15 -0
  56. package/lib/public/src/components/pcfactory/src/Form/useFormStatus.ts +47 -0
  57. package/lib/public/src/components/pcfactory/src/Form/useMonitor.ts +40 -0
  58. package/lib/public/src/components/pcfactory/src/FormGroup/TitleComp.tsx +107 -0
  59. package/lib/public/src/components/pcfactory/src/FormGroup/index.tsx +181 -0
  60. package/lib/public/src/components/pcfactory/src/FreeLayout/index.tsx +151 -0
  61. package/lib/public/src/components/pcfactory/src/Gantt/Gantt.tsx +460 -0
  62. package/lib/public/src/components/pcfactory/src/Gantt/const.ts +122 -0
  63. package/lib/public/src/components/pcfactory/src/Gantt/index.tsx +16 -0
  64. package/lib/public/src/components/pcfactory/src/Gantt/loader.tsx +12 -0
  65. package/lib/public/src/components/pcfactory/src/GridView/GridView.tsx +435 -0
  66. package/lib/public/src/components/pcfactory/src/GridView/index.tsx +24 -0
  67. package/lib/public/src/components/pcfactory/src/GridView/loader.tsx +12 -0
  68. package/lib/public/src/components/pcfactory/src/HorizontalView/index.tsx +32 -0
  69. package/lib/public/src/components/pcfactory/src/Icon/IconED/index.tsx +42 -0
  70. package/lib/public/src/components/pcfactory/src/Icon/PropsType.ts +57 -0
  71. package/lib/public/src/components/pcfactory/src/Icon/hooks/index.tsx +300 -0
  72. package/lib/public/src/components/pcfactory/src/Icon/index.tsx +69 -0
  73. package/lib/public/src/components/pcfactory/src/IconFont/index.tsx +24 -0
  74. package/lib/public/src/components/pcfactory/src/Img/BasicImage/index.tsx +90 -0
  75. package/lib/public/src/components/pcfactory/src/Img/assets/placeholder.png +0 -0
  76. package/lib/public/src/components/pcfactory/src/Img/index.tsx +91 -0
  77. package/lib/public/src/components/pcfactory/src/Input/index.tsx +425 -0
  78. package/lib/public/src/components/pcfactory/src/InputNumber/index.tsx +263 -0
  79. package/lib/public/src/components/pcfactory/src/LXPieChart/LXPieChart.tsx +23 -0
  80. package/lib/public/src/components/pcfactory/src/LXPieChart/PropsType.ts +11 -0
  81. package/lib/public/src/components/pcfactory/src/LXPieChart/index.less +6 -0
  82. package/lib/public/src/components/pcfactory/src/LXPieChart/index.tsx +15 -0
  83. package/lib/public/src/components/pcfactory/src/LXPieChart/loader.tsx +12 -0
  84. package/lib/public/src/components/pcfactory/src/LXRadarChart/LXRadarChat.tsx +25 -0
  85. package/lib/public/src/components/pcfactory/src/LXRadarChart/PropsType.ts +9 -0
  86. package/lib/public/src/components/pcfactory/src/LXRadarChart/index.less +7 -0
  87. package/lib/public/src/components/pcfactory/src/LXRadarChart/index.tsx +17 -0
  88. package/lib/public/src/components/pcfactory/src/LXRadarChart/loader.tsx +12 -0
  89. package/lib/public/src/components/pcfactory/src/Layout/index.tsx +130 -0
  90. package/lib/public/src/components/pcfactory/src/Layout/utils.ts +48 -0
  91. package/lib/public/src/components/pcfactory/src/LineChart/index.tsx +3 -0
  92. package/lib/public/src/components/pcfactory/src/Link/index.tsx +117 -0
  93. package/lib/public/src/components/pcfactory/src/LoopList/index.tsx +551 -0
  94. package/lib/public/src/components/pcfactory/src/Menu/index.tsx +422 -0
  95. package/lib/public/src/components/pcfactory/src/ModalSelect/BaseModalSelect.tsx +95 -0
  96. package/lib/public/src/components/pcfactory/src/ModalSelect/index.tsx +453 -0
  97. package/lib/public/src/components/pcfactory/src/MultipleSelect/index.tsx +3 -0
  98. package/lib/public/src/components/pcfactory/src/Pagination/index.tsx +104 -0
  99. package/lib/public/src/components/pcfactory/src/Password/index.tsx +88 -0
  100. package/lib/public/src/components/pcfactory/src/PictureVerifyCode/assets/placeholder.png +0 -0
  101. package/lib/public/src/components/pcfactory/src/PictureVerifyCode/index.tsx +76 -0
  102. package/lib/public/src/components/pcfactory/src/PieChart/index.tsx +3 -0
  103. package/lib/public/src/components/pcfactory/src/Progress/index.tsx +155 -0
  104. package/lib/public/src/components/pcfactory/src/QRCode/const.ts +5 -0
  105. package/lib/public/src/components/pcfactory/src/QRCode/index.tsx +146 -0
  106. package/lib/public/src/components/pcfactory/src/QuillEditor/QuillEditor.tsx +197 -0
  107. package/lib/public/src/components/pcfactory/src/QuillEditor/index.tsx +37 -0
  108. package/lib/public/src/components/pcfactory/src/QuillEditor/loader.ts +12 -0
  109. package/lib/public/src/components/pcfactory/src/RadarChart/RadarChartHook.ts +449 -0
  110. package/lib/public/src/components/pcfactory/src/RadarChart/RadarChartType.ts +39 -0
  111. package/lib/public/src/components/pcfactory/src/RadarChart/RadarECharts.tsx +86 -0
  112. package/lib/public/src/components/pcfactory/src/RadarChart/index.tsx +16 -0
  113. package/lib/public/src/components/pcfactory/src/RadarChart/loader.tsx +12 -0
  114. package/lib/public/src/components/pcfactory/src/RadarChart/radarDefaultConfig.js +55 -0
  115. package/lib/public/src/components/pcfactory/src/Radio/index.tsx +260 -0
  116. package/lib/public/src/components/pcfactory/src/RangePicker/index.tsx +3 -0
  117. package/lib/public/src/components/pcfactory/src/Rate/index.tsx +187 -0
  118. package/lib/public/src/components/pcfactory/src/ReactECharts/PropsType.ts +37 -0
  119. package/lib/public/src/components/pcfactory/src/ReactECharts/ReactECharts.tsx +672 -0
  120. package/lib/public/src/components/pcfactory/src/ReactECharts/index.tsx +26 -0
  121. package/lib/public/src/components/pcfactory/src/ReactECharts/loader.tsx +12 -0
  122. package/lib/public/src/components/pcfactory/src/RemoteComponent/components/FishRender.tsx +31 -0
  123. package/lib/public/src/components/pcfactory/src/RemoteComponent/components/ReactRender.tsx +55 -0
  124. package/lib/public/src/components/pcfactory/src/RemoteComponent/components/VueRender.tsx +32 -0
  125. package/lib/public/src/components/pcfactory/src/RemoteComponent/constant.ts +9 -0
  126. package/lib/public/src/components/pcfactory/src/RemoteComponent/index.tsx +82 -0
  127. package/lib/public/src/components/pcfactory/src/RemoteComponent/remote-component.config.ts +12 -0
  128. package/lib/public/src/components/pcfactory/src/Result/index.tsx +27 -0
  129. package/lib/public/src/components/pcfactory/src/RichTextEditor/LcdpUeditorMain.tsx +105 -0
  130. package/lib/public/src/components/pcfactory/src/RichTextEditor/RichTextEditor.tsx +234 -0
  131. package/lib/public/src/components/pcfactory/src/RichTextEditor/RichTextEditorMain.tsx +41 -0
  132. package/lib/public/src/components/pcfactory/src/RichTextEditor/index.tsx +33 -0
  133. package/lib/public/src/components/pcfactory/src/RichTextEditor/loader.ts +12 -0
  134. package/lib/public/src/components/pcfactory/src/Row/Row.tsx +66 -0
  135. package/lib/public/src/components/pcfactory/src/Row/index.tsx +9 -0
  136. package/lib/public/src/components/pcfactory/src/Row/loader.tsx +12 -0
  137. package/lib/public/src/components/pcfactory/src/Select/index.tsx +628 -0
  138. package/lib/public/src/components/pcfactory/src/Select/selectUtils.ts +257 -0
  139. package/lib/public/src/components/pcfactory/src/Slider/index.tsx +351 -0
  140. package/lib/public/src/components/pcfactory/src/StdUpload/DownloadProgress/DownloadProgress.tsx +27 -0
  141. package/lib/public/src/components/pcfactory/src/StdUpload/DownloadProgress/index.ts +3 -0
  142. package/lib/public/src/components/pcfactory/src/StdUpload/UploadItem.tsx +257 -0
  143. package/lib/public/src/components/pcfactory/src/StdUpload/assets/default.png +0 -0
  144. package/lib/public/src/components/pcfactory/src/StdUpload/assets/js.png +0 -0
  145. package/lib/public/src/components/pcfactory/src/StdUpload/assets/pdf.png +0 -0
  146. package/lib/public/src/components/pcfactory/src/StdUpload/assets/ppt.png +0 -0
  147. package/lib/public/src/components/pcfactory/src/StdUpload/assets/txt.png +0 -0
  148. package/lib/public/src/components/pcfactory/src/StdUpload/assets/word.png +0 -0
  149. package/lib/public/src/components/pcfactory/src/StdUpload/assets/xls.png +0 -0
  150. package/lib/public/src/components/pcfactory/src/StdUpload/assets/zip.png +0 -0
  151. package/lib/public/src/components/pcfactory/src/StdUpload/index.tsx +1050 -0
  152. package/lib/public/src/components/pcfactory/src/StdUpload/uploadItem.less +64 -0
  153. package/lib/public/src/components/pcfactory/src/Steps/constant/checkcircle.tsx +29 -0
  154. package/lib/public/src/components/pcfactory/src/Steps/constant/index.ts +2 -0
  155. package/lib/public/src/components/pcfactory/src/Steps/constant/vector.tsx +13 -0
  156. package/lib/public/src/components/pcfactory/src/Steps/index.tsx +343 -0
  157. package/lib/public/src/components/pcfactory/src/SuperSelect/ComSelect.tsx +538 -0
  158. package/lib/public/src/components/pcfactory/src/SuperSelect/index.tsx +127 -0
  159. package/lib/public/src/components/pcfactory/src/SuperSelect/loader.tsx +12 -0
  160. package/lib/public/src/components/pcfactory/src/Swiper/index.tsx +184 -0
  161. package/lib/public/src/components/pcfactory/src/Switch/index.tsx +219 -0
  162. package/lib/public/src/components/pcfactory/src/TabPane/index.tsx +145 -0
  163. package/lib/public/src/components/pcfactory/src/Table/BodyCell/index.tsx +278 -0
  164. package/lib/public/src/components/pcfactory/src/Table/EditComponent/index.tsx +554 -0
  165. package/lib/public/src/components/pcfactory/src/Table/FormatCell/GhostTag/index.tsx +34 -0
  166. package/lib/public/src/components/pcfactory/src/Table/FormatCell/Hyperlink/index.tsx +26 -0
  167. package/lib/public/src/components/pcfactory/src/Table/FormatCell/PointTag/index.tsx +41 -0
  168. package/lib/public/src/components/pcfactory/src/Table/FormatCell/PureColourFill/index.tsx +32 -0
  169. package/lib/public/src/components/pcfactory/src/Table/FormatCell/PureFadeColourTag/index.tsx +34 -0
  170. package/lib/public/src/components/pcfactory/src/Table/FormatCell/index.tsx +227 -0
  171. package/lib/public/src/components/pcfactory/src/Table/HeaderCell/HeaderCellTitle/index.tsx +63 -0
  172. package/lib/public/src/components/pcfactory/src/Table/HeaderCell/index.tsx +32 -0
  173. package/lib/public/src/components/pcfactory/src/Table/TableHead/index.tsx +501 -0
  174. package/lib/public/src/components/pcfactory/src/Table/TableSummaryRow/index.tsx +46 -0
  175. package/lib/public/src/components/pcfactory/src/Table/constant.ts +73 -0
  176. package/lib/public/src/components/pcfactory/src/Table/hooks/index.ts +32 -0
  177. package/lib/public/src/components/pcfactory/src/Table/hooks/useCMDActions.ts +325 -0
  178. package/lib/public/src/components/pcfactory/src/Table/hooks/useCheckStrict.ts +176 -0
  179. package/lib/public/src/components/pcfactory/src/Table/hooks/useColumns.tsx +1851 -0
  180. package/lib/public/src/components/pcfactory/src/Table/hooks/useCommon.ts +39 -0
  181. package/lib/public/src/components/pcfactory/src/Table/hooks/useDataSource.ts +201 -0
  182. package/lib/public/src/components/pcfactory/src/Table/hooks/useExpandable.tsx +324 -0
  183. package/lib/public/src/components/pcfactory/src/Table/hooks/useFilter.tsx +274 -0
  184. package/lib/public/src/components/pcfactory/src/Table/hooks/useFormatCell.ts +309 -0
  185. package/lib/public/src/components/pcfactory/src/Table/hooks/usePagination.ts +104 -0
  186. package/lib/public/src/components/pcfactory/src/Table/hooks/useRowEdit.ts +302 -0
  187. package/lib/public/src/components/pcfactory/src/Table/hooks/useRowMerge.ts +93 -0
  188. package/lib/public/src/components/pcfactory/src/Table/hooks/useScroll.ts +120 -0
  189. package/lib/public/src/components/pcfactory/src/Table/hooks/useSelection.ts +467 -0
  190. package/lib/public/src/components/pcfactory/src/Table/hooks/useSort.ts +39 -0
  191. package/lib/public/src/components/pcfactory/src/Table/hooks/useSummaryCol.ts +191 -0
  192. package/lib/public/src/components/pcfactory/src/Table/index.tsx +525 -0
  193. package/lib/public/src/components/pcfactory/src/Table/utils/SequenceId.ts +104 -0
  194. package/lib/public/src/components/pcfactory/src/Table/utils/index.ts +442 -0
  195. package/lib/public/src/components/pcfactory/src/Tabs/index.tsx +209 -0
  196. package/lib/public/src/components/pcfactory/src/Tag/index.tsx +39 -0
  197. package/lib/public/src/components/pcfactory/src/Text/index.tsx +191 -0
  198. package/lib/public/src/components/pcfactory/src/TextArea/ForIETextArea.tsx +96 -0
  199. package/lib/public/src/components/pcfactory/src/TextArea/index.tsx +255 -0
  200. package/lib/public/src/components/pcfactory/src/TimePicker/index.tsx +3 -0
  201. package/lib/public/src/components/pcfactory/src/TlrView/index.tsx +3 -0
  202. package/lib/public/src/components/pcfactory/src/TooltipView/PropsType.ts +22 -0
  203. package/lib/public/src/components/pcfactory/src/TooltipView/TooltipViewED/index.tsx +10 -0
  204. package/lib/public/src/components/pcfactory/src/TooltipView/hooks/index.tsx +90 -0
  205. package/lib/public/src/components/pcfactory/src/TooltipView/index.tsx +13 -0
  206. package/lib/public/src/components/pcfactory/src/Transfer/index.tsx +753 -0
  207. package/lib/public/src/components/pcfactory/src/Tree/TreeNodeMenu/index.tsx +102 -0
  208. package/lib/public/src/components/pcfactory/src/Tree/index.tsx +1303 -0
  209. package/lib/public/src/components/pcfactory/src/TreeSelect/index.tsx +639 -0
  210. package/lib/public/src/components/pcfactory/src/TreeTable/hooks/index.ts +4 -0
  211. package/lib/public/src/components/pcfactory/src/TreeTable/hooks/useCMDAction.ts +82 -0
  212. package/lib/public/src/components/pcfactory/src/TreeTable/hooks/useExpandable.tsx +61 -0
  213. package/lib/public/src/components/pcfactory/src/TreeTable/index.tsx +273 -0
  214. package/lib/public/src/components/pcfactory/src/Upload/Upload.tsx +740 -0
  215. package/lib/public/src/components/pcfactory/src/Upload/index.tsx +29 -0
  216. package/lib/public/src/components/pcfactory/src/Upload/loader.tsx +13 -0
  217. package/lib/public/src/components/pcfactory/src/VerificationCode/assets/placeholder.png +0 -0
  218. package/lib/public/src/components/pcfactory/src/VerificationCode/index.tsx +297 -0
  219. package/lib/public/src/components/pcfactory/src/VerticalView/index.tsx +25 -0
  220. package/lib/public/src/components/pcfactory/src/VideoPlayer/index.tsx +159 -0
  221. package/lib/public/src/components/pcfactory/src/View/index.tsx +150 -0
  222. package/lib/public/src/components/pcfactory/src/View/useBackgroundStyle.ts +75 -0
  223. package/lib/public/src/components/pcfactory/src/VirtualGroup/index.tsx +16 -0
  224. package/lib/public/src/components/pcfactory/src/Webview/index.tsx +104 -0
  225. package/lib/public/src/components/pcfactory/src/index.component.ts +253 -0
  226. package/lib/public/src/components/pcfactory/src/styles/common.less +107 -0
  227. package/lib/public/src/components/pcfactory/src/styles/compatible.less +976 -0
  228. package/lib/public/src/components/pcfactory/src/styles/components/Alert.less +25 -0
  229. package/lib/public/src/components/pcfactory/src/styles/components/Audio.less +198 -0
  230. package/lib/public/src/components/pcfactory/src/styles/components/Button.less +32 -0
  231. package/lib/public/src/components/pcfactory/src/styles/components/Card.less +155 -0
  232. package/lib/public/src/components/pcfactory/src/styles/components/Cascader.less +54 -0
  233. package/lib/public/src/components/pcfactory/src/styles/components/Checkbox.less +7 -0
  234. package/lib/public/src/components/pcfactory/src/styles/components/Collapse.less +214 -0
  235. package/lib/public/src/components/pcfactory/src/styles/components/DatePicker.less +22 -0
  236. package/lib/public/src/components/pcfactory/src/styles/components/Description.less +64 -0
  237. package/lib/public/src/components/pcfactory/src/styles/components/Divider.less +530 -0
  238. package/lib/public/src/components/pcfactory/src/styles/components/Drawer.less +54 -0
  239. package/lib/public/src/components/pcfactory/src/styles/components/Dropdown.less +11 -0
  240. package/lib/public/src/components/pcfactory/src/styles/components/DynamicDataContainer.less +16 -0
  241. package/lib/public/src/components/pcfactory/src/styles/components/DynamicTabs.less +254 -0
  242. package/lib/public/src/components/pcfactory/src/styles/components/Form.less +265 -0
  243. package/lib/public/src/components/pcfactory/src/styles/components/FormGroup.less +111 -0
  244. package/lib/public/src/components/pcfactory/src/styles/components/Gantt.less +139 -0
  245. package/lib/public/src/components/pcfactory/src/styles/components/GridView.less +62 -0
  246. package/lib/public/src/components/pcfactory/src/styles/components/Icon.less +20 -0
  247. package/lib/public/src/components/pcfactory/src/styles/components/Input.less +164 -0
  248. package/lib/public/src/components/pcfactory/src/styles/components/InputNumber.less +124 -0
  249. package/lib/public/src/components/pcfactory/src/styles/components/InputPassword.less +3 -0
  250. package/lib/public/src/components/pcfactory/src/styles/components/Link.less +4 -0
  251. package/lib/public/src/components/pcfactory/src/styles/components/LoopList.less +67 -0
  252. package/lib/public/src/components/pcfactory/src/styles/components/Menu.less +54 -0
  253. package/lib/public/src/components/pcfactory/src/styles/components/ModalSelect.less +42 -0
  254. package/lib/public/src/components/pcfactory/src/styles/components/Popconfirm.less +7 -0
  255. package/lib/public/src/components/pcfactory/src/styles/components/Progress.less +57 -0
  256. package/lib/public/src/components/pcfactory/src/styles/components/QuillEditor.less +15 -0
  257. package/lib/public/src/components/pcfactory/src/styles/components/Radio.less +7 -0
  258. package/lib/public/src/components/pcfactory/src/styles/components/Rate.less +16 -0
  259. package/lib/public/src/components/pcfactory/src/styles/components/Result.less +26 -0
  260. package/lib/public/src/components/pcfactory/src/styles/components/Select.less +146 -0
  261. package/lib/public/src/components/pcfactory/src/styles/components/Slider.less +78 -0
  262. package/lib/public/src/components/pcfactory/src/styles/components/StdUpload.less +225 -0
  263. package/lib/public/src/components/pcfactory/src/styles/components/Step.less +91 -0
  264. package/lib/public/src/components/pcfactory/src/styles/components/SuperSelect.less +83 -0
  265. package/lib/public/src/components/pcfactory/src/styles/components/Swiper.less +106 -0
  266. package/lib/public/src/components/pcfactory/src/styles/components/Switch.less +49 -0
  267. package/lib/public/src/components/pcfactory/src/styles/components/Table.less +1229 -0
  268. package/lib/public/src/components/pcfactory/src/styles/components/Tabs.less +291 -0
  269. package/lib/public/src/components/pcfactory/src/styles/components/Tag.less +107 -0
  270. package/lib/public/src/components/pcfactory/src/styles/components/TextArea.less +12 -0
  271. package/lib/public/src/components/pcfactory/src/styles/components/TooltipView.less +43 -0
  272. package/lib/public/src/components/pcfactory/src/styles/components/Transfer.less +155 -0
  273. package/lib/public/src/components/pcfactory/src/styles/components/Tree.less +329 -0
  274. package/lib/public/src/components/pcfactory/src/styles/components/TreeSelect.less +65 -0
  275. package/lib/public/src/components/pcfactory/src/styles/components/Upload.less +26 -0
  276. package/lib/public/src/components/pcfactory/src/styles/components/VerificationCode.less +162 -0
  277. package/lib/public/src/components/pcfactory/src/styles/components/Webview.less +31 -0
  278. package/lib/public/src/components/pcfactory/src/styles/index.less +10 -0
  279. package/lib/public/src/components/pcfactory/src/styles/index.ued.less +65 -0
  280. package/lib/public/src/components/pcfactory/src/styles/theme/variables/antdVariables.less +84 -0
  281. package/lib/public/src/components/pcfactory/src/styles/theme/variables/common.less +9 -0
  282. package/lib/public/src/components/pcfactory/src/styles/theme/variables/customVariables.less +35 -0
  283. package/lib/public/src/components/pcfactory/src/styles/theme/variables/index.less +2 -0
  284. package/lib/public/src/components/pcfactory/src/utils/ChannelContainer.tsx +150 -0
  285. package/lib/public/src/components/pcfactory/src/utils/ChildRender.ts +103 -0
  286. package/lib/public/src/components/pcfactory/src/utils/CustomModule.tsx +134 -0
  287. package/lib/public/src/components/pcfactory/src/utils/DummyFormContext.ts +136 -0
  288. package/lib/public/src/components/pcfactory/src/utils/Empty/customLocale.tsx +6 -0
  289. package/lib/public/src/components/pcfactory/src/utils/Empty/empty.tsx +37 -0
  290. package/lib/public/src/components/pcfactory/src/utils/LoaderHelper.tsx +29 -0
  291. package/lib/public/src/components/pcfactory/src/utils/PropsType.ts +21 -0
  292. package/lib/public/src/components/pcfactory/src/utils/WithSyncValue.ts +218 -0
  293. package/lib/public/src/components/pcfactory/src/utils/ahooks/index.ts +22 -0
  294. package/lib/public/src/components/pcfactory/src/utils/ahooks/useCreation.ts +23 -0
  295. package/lib/public/src/components/pcfactory/src/utils/ahooks/useDeepCompareEffect.ts +27 -0
  296. package/lib/public/src/components/pcfactory/src/utils/ahooks/useMap.ts +46 -0
  297. package/lib/public/src/components/pcfactory/src/utils/ahooks/useMemoizedFn.ts +27 -0
  298. package/lib/public/src/components/pcfactory/src/utils/ahooks/usePrevious.ts +19 -0
  299. package/lib/public/src/components/pcfactory/src/utils/ahooks/useSafeState.ts +26 -0
  300. package/lib/public/src/components/pcfactory/src/utils/ahooks/useSetState.ts +26 -0
  301. package/lib/public/src/components/pcfactory/src/utils/ahooks/useUnmountedRef.ts +14 -0
  302. package/lib/public/src/components/pcfactory/src/utils/ahooks/useUpdate.ts +9 -0
  303. package/lib/public/src/components/pcfactory/src/utils/ahooks/useUpdateEffect.ts +16 -0
  304. package/lib/public/src/components/pcfactory/src/utils/basicStatusTransfer.ts +32 -0
  305. package/lib/public/src/components/pcfactory/src/utils/common.ts +367 -0
  306. package/lib/public/src/components/pcfactory/src/utils/dynamicUtils/DynamicContext.tsx +106 -0
  307. package/lib/public/src/components/pcfactory/src/utils/formUtils/FormContext.tsx +131 -0
  308. package/lib/public/src/components/pcfactory/src/utils/formUtils/FormFields.tsx +646 -0
  309. package/lib/public/src/components/pcfactory/src/utils/formUtils/WrapperContainer.tsx +123 -0
  310. package/lib/public/src/components/pcfactory/src/utils/formUtils/cmdHelper.ts +411 -0
  311. package/lib/public/src/components/pcfactory/src/utils/formUtils/common.ts +28 -0
  312. package/lib/public/src/components/pcfactory/src/utils/getExportDefaultObj.ts +11 -0
  313. package/lib/public/src/components/pcfactory/src/utils/hooks/useCommonImperativeHandle.ts +140 -0
  314. package/lib/public/src/components/pcfactory/src/utils/hooks/useDataMask.ts +83 -0
  315. package/lib/public/src/components/pcfactory/src/utils/hooks/useDoubleClick.ts +63 -0
  316. package/lib/public/src/components/pcfactory/src/utils/hooks/useFuncExpExecute.ts +86 -0
  317. package/lib/public/src/components/pcfactory/src/utils/hooks/useGetStaticAttrData.ts +41 -0
  318. package/lib/public/src/components/pcfactory/src/utils/hooks/useHiddenStyle.ts +43 -0
  319. package/lib/public/src/components/pcfactory/src/utils/hooks/useInitReactQuill.ts +90 -0
  320. package/lib/public/src/components/pcfactory/src/utils/hooks/useListenState.ts +26 -0
  321. package/lib/public/src/components/pcfactory/src/utils/hooks/useLocale.ts +129 -0
  322. package/lib/public/src/components/pcfactory/src/utils/hooks/usePrintMode.tsx +80 -0
  323. package/lib/public/src/components/pcfactory/src/utils/hooks/useRules.ts +89 -0
  324. package/lib/public/src/components/pcfactory/src/utils/hooks/useTestHelper.ts +26 -0
  325. package/lib/public/src/components/pcfactory/src/utils/hooks/useToggleBoolean.ts +33 -0
  326. package/lib/public/src/components/pcfactory/src/utils/index.ts +19 -0
  327. package/lib/public/src/components/pcfactory/src/utils/polyfill.js +305 -0
  328. package/lib/public/src/components/pcfactory/src/utils/renderReadOnly.tsx +105 -0
  329. package/lib/public/src/components/pcfactory/src/variables.ts +2 -0
  330. package/lib/public/src/components/pcfactory/typings.d.ts +27 -0
  331. package/lib/public/src/hooks/useGenerateContext.ts +73 -0
  332. package/lib/public/src/styles/common.less +41 -0
  333. package/lib/public/src/styles/index.less +4 -0
  334. package/lib/public/src/styles/index.ts +1 -0
  335. package/lib/public/src/styles/theme/variables.less +130 -0
  336. package/lib/public/src/utils/LcdpSpin/index.less +13 -0
  337. package/lib/public/src/utils/LcdpSpin/index.tsx +12 -0
  338. package/lib/public/src/utils/ModalManager/Drawer/index.less +30 -0
  339. package/lib/public/src/utils/ModalManager/Drawer/index.tsx +109 -0
  340. package/lib/public/src/utils/ModalManager/Modal/index.less +7 -0
  341. package/lib/public/src/utils/ModalManager/Modal/index.tsx +96 -0
  342. package/lib/public/src/utils/ModalManager/index.tsx +278 -0
  343. package/lib/public/src/utils/Security/encipher/des.ts +52 -0
  344. package/lib/public/src/utils/customFuncMapping.ts +107 -0
  345. package/lib/public/src/utils/formUtils.ts +458 -0
  346. package/lib/public/src/utils/i18n/i18n.ts +15 -0
  347. package/lib/public/src/utils/i18n/index.ts +7 -0
  348. package/lib/public/src/utils/i18n/locale/app/en_US.ts +77 -0
  349. package/lib/public/src/utils/i18n/locale/app/index.ts +9 -0
  350. package/lib/public/src/utils/i18n/locale/app/otherLocale.ts +2 -0
  351. package/lib/public/src/utils/i18n/locale/app/zh_CN.ts +65 -0
  352. package/lib/public/src/utils/i18n/locale/app/zh_HK.ts +66 -0
  353. package/lib/public/src/utils/i18n/locale/base/en_US.ts +449 -0
  354. package/lib/public/src/utils/i18n/locale/base/index.ts +5 -0
  355. package/lib/public/src/utils/i18n/locale/base/zh_CN.ts +413 -0
  356. package/lib/public/src/utils/i18n/locale/base/zh_HK.ts +411 -0
  357. package/lib/public/src/utils/i18n/locale/pc/en_US.ts +131 -0
  358. package/lib/public/src/utils/i18n/locale/pc/index.ts +9 -0
  359. package/lib/public/src/utils/i18n/locale/pc/otherLocale.ts +2 -0
  360. package/lib/public/src/utils/i18n/locale/pc/zh_CN.ts +105 -0
  361. package/lib/public/src/utils/i18n/locale/pc/zh_HK.ts +105 -0
  362. package/lib/public/src/utils/i18n/localeMonitor.ts +71 -0
  363. package/lib/public/src/utils/i18n/locales.ts +30 -0
  364. package/lib/public/src/utils/i18n/replaceMessage.ts +29 -0
  365. package/lib/public/src/utils/i18n/types.ts +2 -0
  366. package/lib/public/src/utils/i18n/useLocale.ts +129 -0
  367. package/lib/public/src/utils/messageApi.ts +93 -0
  368. package/lib/public/src/utils/useTool.ts +428 -0
  369. package/package.json +2 -2
  370. /package/lib/public/src/utils/functors/{dateAdd.ts → DATEADD.ts} +0 -0
@@ -0,0 +1,274 @@
1
+ /* eslint-disable react/no-danger-with-children */
2
+ import { Button, Checkbox } from 'antd';
3
+ import { FilterDropdownProps } from 'antd/lib/table/interface';
4
+ import { useCallback, useEffect, useMemo, useRef, useState } from 'react';
5
+
6
+ const useFilter = (props: any) => {
7
+ const {
8
+ compId,
9
+ innerDataSource,
10
+ currentRowKey,
11
+ getLocale,
12
+ outerDataSourceRef,
13
+ } = props;
14
+
15
+ const [filters, setFilters] = useState<any>({}); // 筛选条件
16
+ // 筛选时不影响页码,不使用antd默认的确定方法,因为会导致触发onChange方法
17
+ const [filterDropdownOpen, setFilterDropdownOpen] = useState({}); // 筛选浮层的关闭与否
18
+ const [selectedFilterKeys, setSelectedFilterKeys] = useState<any>({}); // 记录临时筛选条件,关闭筛选浮层后需要应用到筛选条件上
19
+ const tempFilterDomList = useRef<any>({}); // 记录筛选列对应的元素
20
+
21
+ const rowFilterSetList = useMemo(() => {
22
+ const trRowFilterSetList: any[] = [];
23
+ const domList = tempFilterDomList?.current || {};
24
+ if (Object.keys(filters)?.length) {
25
+ Object.keys(filters).forEach((dataIndex: string) => {
26
+ const valList = filters[dataIndex];
27
+ if (!valList) return;
28
+ const { valMap = {} } = domList[dataIndex] || {};
29
+ let keysList: string[] = [];
30
+ valList?.forEach((val: string) => {
31
+ const { rowKeyList } = valMap[val];
32
+ keysList = keysList.concat(rowKeyList);
33
+ });
34
+ if (keysList?.length) {
35
+ trRowFilterSetList.push(new Set(keysList));
36
+ }
37
+ });
38
+ }
39
+ if (Object.keys(filters)?.length === 0) {
40
+ // 过滤条件全部重置时,清除筛选项缓存
41
+ tempFilterDomList.current = {};
42
+ }
43
+ return trRowFilterSetList;
44
+ }, [filters]);
45
+
46
+ // 判断行是否经过筛选后需要隐藏
47
+ const checkIfHiddenRow = useCallback(
48
+ (rowId: string) => {
49
+ let flag: boolean = false;
50
+ if (rowFilterSetList?.length) {
51
+ flag = !rowFilterSetList.every((rowSet: Set<string>) =>
52
+ rowSet.has(rowId),
53
+ );
54
+ }
55
+ return flag;
56
+ },
57
+ [rowFilterSetList],
58
+ );
59
+
60
+ // 筛选下拉列表显隐
61
+ const onFilterDropdownVisibleChange = (dataIndex: string, open: boolean) => {
62
+ setFilterDropdownOpen((pre) => ({
63
+ ...pre,
64
+ [dataIndex]: open,
65
+ }));
66
+ if (!open) {
67
+ setFilters(selectedFilterKeys);
68
+ } else {
69
+ setSelectedFilterKeys(filters);
70
+ }
71
+ };
72
+
73
+ // 筛选条件下拉列表
74
+ const collectFilterDropDownDom = (colParams: { dataIndex: string }) => {
75
+ const { dataIndex } = colParams;
76
+ const rowKey = currentRowKey;
77
+ const tableDom = document.querySelector(`[data-compid='${compId}']`);
78
+ const valMap: any = {};
79
+ const originDataMap: any = {};
80
+ let prevTdInfo: any = null;
81
+ innerDataSource.forEach((d: any) => {
82
+ originDataMap[d[rowKey]] = d[dataIndex];
83
+ // 由于表格存在单元格渲染和自定义渲染的情况,所以筛选列表从td元素获取innerText作为最终展示
84
+ let td: any = tableDom?.querySelector(
85
+ `tr[data-row-key='${d[rowKey]}'] > td[td-dataIndex='${dataIndex}']`,
86
+ );
87
+ if (!td && prevTdInfo?.rowSpan > 1) {
88
+ // td没有找到,但是存在tr元素,表明可能开启了行合并,采用前一个
89
+ prevTdInfo.rowSpan -= 1;
90
+ td = prevTdInfo?.td;
91
+ } else {
92
+ prevTdInfo = {
93
+ td,
94
+ rowSpan: td?.rowSpan,
95
+ };
96
+ }
97
+ if (td) {
98
+ const val = td.innerText;
99
+ const rowKeyList = valMap[val]?.rowKeyList || [];
100
+ // 记录筛选
101
+ rowKeyList.push(d[rowKey]);
102
+ originDataMap[d[rowKey]] = val;
103
+ valMap[val] = {
104
+ dom: td.innerHTML,
105
+ rowKeyList,
106
+ };
107
+ }
108
+ });
109
+ tempFilterDomList.current = {
110
+ ...(tempFilterDomList.current || {}),
111
+ [`${compId}Dom`]: tableDom,
112
+ [dataIndex]: {
113
+ valMap,
114
+ originDataMap,
115
+ },
116
+ };
117
+ };
118
+
119
+ useEffect(() => {
120
+ // 源数据变化时,重置筛选条件以及重新收集筛选条件
121
+ setFilters({});
122
+ tempFilterDomList.current = {};
123
+ }, [outerDataSourceRef, currentRowKey]);
124
+
125
+ // 收集所有筛选条件
126
+ const collectAllFilters = (columns: any[], dataIndex: any) => {
127
+ if (
128
+ !Object.keys(tempFilterDomList.current)?.length ||
129
+ !tempFilterDomList.current?.[dataIndex]
130
+ ) {
131
+ columns.forEach((col) => {
132
+ if (col.filter) {
133
+ collectFilterDropDownDom({
134
+ ...col,
135
+ });
136
+ }
137
+ });
138
+ }
139
+ };
140
+
141
+ // 获取当前展示的筛选列表
142
+ const getCurrentFilterList = (dataIndex: string) => {
143
+ // 当前选项所有筛选列表
144
+ const currentFilter = { ...tempFilterDomList.current[dataIndex]?.valMap };
145
+ const valKeys = Object.keys(currentFilter || {});
146
+ if (valKeys?.length) {
147
+ valKeys.forEach((k: string) => {
148
+ const rowKeys = currentFilter[k]?.rowKeyList.filter(
149
+ (rowKey: string) => {
150
+ return Object.keys(filters || {}).every((dataKey: string) => {
151
+ if (dataKey !== dataIndex) {
152
+ const v = filters[dataKey];
153
+ if (v?.length) {
154
+ const rowVal =
155
+ tempFilterDomList.current[dataKey]?.originDataMap?.[rowKey];
156
+ return v.includes(rowVal);
157
+ }
158
+ }
159
+ return true;
160
+ });
161
+ },
162
+ );
163
+ // 在其他条件过滤后,当前筛选项没有数据列时,则不展示
164
+ if (rowKeys.length === 0) {
165
+ delete currentFilter[k];
166
+ }
167
+ });
168
+ }
169
+ return currentFilter;
170
+ };
171
+
172
+ // 筛选自定义下拉菜单
173
+ const renderFilterDropDown = (
174
+ filterParams: FilterDropdownProps,
175
+ dataIndex: string,
176
+ columns: any[],
177
+ ) => {
178
+ const { visible } = filterParams;
179
+ if (!visible) return false;
180
+ const selectedKeys = selectedFilterKeys[dataIndex] || [];
181
+ const setSelectedKeys = (keys: string[] | null) =>
182
+ setSelectedFilterKeys((pre: any) => ({ ...pre, [dataIndex]: keys }));
183
+ collectAllFilters(columns, dataIndex);
184
+ const valMap = getCurrentFilterList(dataIndex);
185
+ return (
186
+ visible && (
187
+ <div className="ued-table-filters">
188
+ <div className="ued-table-filters-content">
189
+ {Object.keys(valMap || {}).map((val: any) => {
190
+ const { dom } = valMap[val];
191
+ return (
192
+ <div className="ued-table-filters-item">
193
+ <Checkbox
194
+ checked={selectedKeys.includes(val)}
195
+ onChange={(e) => {
196
+ let newSelected: any[] = [];
197
+ if (e.target.checked) {
198
+ newSelected = [...selectedKeys, val];
199
+ } else {
200
+ newSelected = selectedKeys.filter(
201
+ (k: string) => k !== val,
202
+ );
203
+ }
204
+ setSelectedKeys(newSelected?.length ? newSelected : null);
205
+ }}
206
+ >
207
+ <div
208
+ className="ued-table-filters-dom"
209
+ // eslint-disable-next-line react/no-danger
210
+ dangerouslySetInnerHTML={
211
+ dom && val ? { __html: dom } : undefined
212
+ }
213
+ >
214
+ {val ? null : `(${getLocale('Table.filter.empty')})`}
215
+ </div>
216
+ </Checkbox>
217
+ </div>
218
+ );
219
+ })}
220
+ </div>
221
+ <div className="ued-table-filters-bottom">
222
+ <Button
223
+ type="link"
224
+ disabled={selectedKeys?.length === 0}
225
+ size="small"
226
+ onClick={() => {
227
+ setSelectedKeys(null);
228
+ }}
229
+ >
230
+ {getLocale('reset')}
231
+ </Button>
232
+ <Button
233
+ type="primary"
234
+ size="small"
235
+ onClick={() => {
236
+ setFilters((pre: any) => ({
237
+ ...pre,
238
+ [dataIndex]: selectedKeys?.length ? selectedKeys : null,
239
+ }));
240
+ setFilterDropdownOpen((pre) => ({
241
+ ...pre,
242
+ [dataIndex]: false,
243
+ }));
244
+ }}
245
+ >
246
+ {getLocale('confirm')}
247
+ </Button>
248
+ </div>
249
+ </div>
250
+ )
251
+ );
252
+ };
253
+
254
+ const filterDataSource = useMemo(() => {
255
+ if (Object.keys(filters)?.length) {
256
+ return innerDataSource.filter(
257
+ (record: any) => !checkIfHiddenRow(record[currentRowKey]),
258
+ );
259
+ }
260
+ return innerDataSource;
261
+ }, [filters, innerDataSource]);
262
+
263
+ return {
264
+ filters,
265
+ filterDropdownOpen,
266
+ setFilters,
267
+ checkIfHiddenRow,
268
+ onFilterDropdownVisibleChange,
269
+ renderFilterDropDown,
270
+ filterDataSource,
271
+ };
272
+ };
273
+
274
+ export default useFilter;
@@ -0,0 +1,309 @@
1
+ import { message } from 'antd';
2
+ import type { FuncExpExeCuteType } from '../../utils/hooks/useFuncExpExecute';
3
+ import {
4
+ CUSTOM,
5
+ DOWNLOAD_FILE,
6
+ OPEN_MODAL,
7
+ PAGE_JUMP,
8
+ PREVIEW_FILE,
9
+ ROUTE_PUSH,
10
+ ROUTE_REPLACE,
11
+ } from '../constant';
12
+ import type { ContentClick, FuncCode } from '../types/contentStyle';
13
+
14
+ interface useFormatCellProps extends ContentClick {
15
+ appId: string;
16
+ pageId: string;
17
+ modalHeight?: number;
18
+ modalWidth?: number;
19
+ funcExpExecute?: FuncExpExeCuteType;
20
+ engineApis: any;
21
+ }
22
+
23
+ const useFormatCell = (props: useFormatCellProps) => {
24
+ const {
25
+ funcExpExecute,
26
+ engineApis,
27
+ appId,
28
+ pageId,
29
+ content,
30
+ clickType,
31
+ page,
32
+ modal,
33
+ openType,
34
+ fileIds,
35
+ filename,
36
+ previewType,
37
+ downloadUrl,
38
+ modalHeight,
39
+ modalWidth,
40
+ } = props;
41
+
42
+ const realAppId = appId;
43
+ const realPageId = pageId;
44
+
45
+ const handleCellContent = (row: any, rowIndex: number) => {
46
+ if ((content as FuncCode)?.code && funcExpExecute) {
47
+ return funcExpExecute((content as FuncCode).code, [
48
+ {
49
+ key: 'row',
50
+ value: row,
51
+ },
52
+ {
53
+ key: 'index',
54
+ value: rowIndex,
55
+ },
56
+ ]);
57
+ }
58
+
59
+ return content;
60
+ };
61
+
62
+ const handlePageJump = async (
63
+ row: any,
64
+ rowId: string | number,
65
+ rowIndex: number,
66
+ ) => {
67
+ if (page) {
68
+ const { pagePath, searchParams = {} } = page;
69
+ const newSearchParams: any = {};
70
+
71
+ Object.keys(searchParams).forEach((key) => {
72
+ if (typeof searchParams[key] === 'string') {
73
+ const exp = searchParams[key];
74
+ searchParams[key] = (
75
+ row: any,
76
+ rowId: string | number,
77
+ index: number,
78
+ ) =>
79
+ engineApis?.sandBoxSafeRun(exp, {
80
+ row,
81
+ rowId,
82
+ index,
83
+ });
84
+ }
85
+
86
+ if (typeof searchParams[key] === 'function') {
87
+ try {
88
+ newSearchParams[key] = searchParams[key](row, rowId, rowIndex);
89
+ } catch (e) {
90
+ console.error(e);
91
+ }
92
+ }
93
+ });
94
+
95
+ let newPath = pagePath || '';
96
+ Object.keys(newSearchParams).forEach((key) => {
97
+ if (!newPath.includes(`${key}=`)) {
98
+ newPath += `${newPath.includes('?') ? '&' : '?'}${key}=${
99
+ newSearchParams[key]
100
+ }`;
101
+ }
102
+ });
103
+
104
+ switch (openType) {
105
+ case ROUTE_PUSH:
106
+ if (typeof engineApis?.historyPush === 'function') {
107
+ engineApis.historyPush(newPath);
108
+ }
109
+ break;
110
+ case ROUTE_REPLACE:
111
+ if (typeof engineApis?.historyReplace === 'function') {
112
+ engineApis.historyReplace(newPath);
113
+ }
114
+ break;
115
+ default:
116
+ break;
117
+ }
118
+ }
119
+ };
120
+
121
+ const handleOpenModal = async (
122
+ row: any,
123
+ rowId: string | number,
124
+ rowIndex: number,
125
+ ) => {
126
+ if (modal) {
127
+ const { pageId, compStates = {} } = modal;
128
+
129
+ const newCompStates: any = {};
130
+ Object.keys(compStates).forEach((key) => {
131
+ if (typeof compStates[key] === 'string') {
132
+ const exp = compStates[key];
133
+ compStates[key] = (row: any, rowId: string | number, index: number) =>
134
+ engineApis?.sandBoxSafeRun(exp, {
135
+ row,
136
+ rowId,
137
+ index,
138
+ });
139
+ }
140
+
141
+ if (typeof compStates[key] === 'function') {
142
+ try {
143
+ newCompStates[key] = compStates[key](row, rowId, rowIndex);
144
+ } catch (e) {
145
+ console.error(e);
146
+ }
147
+ }
148
+ });
149
+
150
+ if (engineApis?.openModal) {
151
+ engineApis.openModal({
152
+ pageId,
153
+ params: newCompStates,
154
+ });
155
+ }
156
+ }
157
+ };
158
+
159
+ const handleDownloadFile = async (row: any, rowIndex: number) => {
160
+ if (typeof engineApis?.batchDownloadFileByIds === 'function') {
161
+ try {
162
+ let realFilename = filename;
163
+ let realFileIds = fileIds;
164
+
165
+ if ((filename as FuncCode)?.code && funcExpExecute) {
166
+ realFilename = funcExpExecute((filename as FuncCode).code, [
167
+ {
168
+ key: 'row',
169
+ value: row,
170
+ },
171
+ {
172
+ key: 'index',
173
+ value: rowIndex,
174
+ },
175
+ ]);
176
+ }
177
+
178
+ if ((fileIds as FuncCode)?.code && funcExpExecute) {
179
+ realFileIds = funcExpExecute((fileIds as FuncCode).code, [
180
+ {
181
+ key: 'row',
182
+ value: row,
183
+ },
184
+ {
185
+ key: 'index',
186
+ value: rowIndex,
187
+ },
188
+ ]);
189
+ }
190
+
191
+ realFileIds = Array.isArray(realFileIds) ? realFileIds[0] : realFileIds;
192
+
193
+ engineApis.batchDownloadFileByIds({
194
+ fileIds: realFileIds,
195
+ newFileName: realFilename,
196
+ onError: (errorMessage: string) => {
197
+ message.error(errorMessage);
198
+ },
199
+ });
200
+ } catch (e) {
201
+ console.error(e);
202
+ }
203
+ }
204
+ };
205
+
206
+ const handlePreviewFile = async (row: any, rowIndex: number) => {
207
+ let realFileIds: any = fileIds;
208
+
209
+ if ((fileIds as FuncCode)?.code && funcExpExecute) {
210
+ realFileIds = funcExpExecute((fileIds as FuncCode).code, [
211
+ {
212
+ key: 'row',
213
+ value: row,
214
+ },
215
+ {
216
+ key: 'index',
217
+ value: rowIndex,
218
+ },
219
+ ]);
220
+ }
221
+
222
+ if (typeof engineApis?.BannerModal?.open === 'function') {
223
+ // 弹窗预览
224
+ realFileIds =
225
+ typeof realFileIds === 'string' ? [realFileIds] : realFileIds;
226
+ const fileList = realFileIds.map((fileId: string | number) => {
227
+ return {
228
+ fileId,
229
+ file: {
230
+ fileId,
231
+ },
232
+ };
233
+ });
234
+ engineApis.BannerModal.open({
235
+ fileIndex: 0,
236
+ fileList,
237
+ viewMode: previewType,
238
+ modalHeight,
239
+ pageId: realPageId,
240
+ appId: realAppId,
241
+ modalWidth,
242
+ });
243
+ } else if (
244
+ previewType !== undefined &&
245
+ typeof engineApis?.previewFile === 'function'
246
+ ) {
247
+ // 新窗口预览
248
+ realFileIds = Array.isArray(realFileIds) ? realFileIds[0] : realFileIds;
249
+ try {
250
+ engineApis.previewFile({
251
+ fileId: realFileIds,
252
+ appId: realAppId,
253
+ pageId: realPageId,
254
+ });
255
+ } catch (e) {
256
+ console.error(e);
257
+ }
258
+ }
259
+ };
260
+
261
+ const onCellClick = async (
262
+ row: any,
263
+ rowId: string | number,
264
+ rowIndex: number,
265
+ ) => {
266
+ switch (clickType) {
267
+ case PAGE_JUMP:
268
+ handlePageJump(row, rowId, rowIndex);
269
+ break;
270
+ case OPEN_MODAL:
271
+ handleOpenModal(row, rowId, rowIndex);
272
+ break;
273
+ case DOWNLOAD_FILE:
274
+ handleDownloadFile(row, rowIndex);
275
+ break;
276
+ case PREVIEW_FILE:
277
+ handlePreviewFile(row, rowIndex);
278
+ break;
279
+ case CUSTOM: {
280
+ let realDownloadUrl: any = downloadUrl;
281
+
282
+ if ((downloadUrl as FuncCode)?.code && funcExpExecute) {
283
+ realDownloadUrl = funcExpExecute((downloadUrl as FuncCode).code, [
284
+ {
285
+ key: 'row',
286
+ value: row,
287
+ },
288
+ {
289
+ key: 'index',
290
+ value: rowIndex,
291
+ },
292
+ ]);
293
+ }
294
+
295
+ window.open(realDownloadUrl, openType);
296
+ break;
297
+ }
298
+ default:
299
+ break;
300
+ }
301
+ };
302
+
303
+ return {
304
+ onCellClick,
305
+ handleCellContent,
306
+ };
307
+ };
308
+
309
+ export default useFormatCell;
@@ -0,0 +1,104 @@
1
+ import classNames from 'classnames';
2
+ import { useEffect, useMemo, useState } from 'react';
3
+ import { useListenProps } from '../../utils';
4
+ import { useLocale } from '../../utils/hooks/useLocale';
5
+
6
+ const usePagination = (props: any) => {
7
+ const {
8
+ size,
9
+ showQuickJumper,
10
+ showSizeChanger,
11
+ pageSizeOptions,
12
+ page,
13
+ current: originCurrent,
14
+ total: originTotal,
15
+ pageSize: originPageSize,
16
+ showTotal,
17
+ onPageChange,
18
+ } = props;
19
+
20
+ // TODO: 有咩有判断是否是前端分页更好的方式?
21
+ const hasPageChangeEvent = typeof onPageChange === 'function'; // 是否配置页码改变回调事件(是:后端分页,否:前端分页)
22
+
23
+ const { getLocale } = useLocale(props?.getEngineApis?.());
24
+
25
+ const [currentPage, setCurrentPage] = useState(originCurrent || 1);
26
+ const [currentPageSize, setCurrentPageSize] = useState(originPageSize || 10);
27
+ const [total, setTotal] = useListenProps(originTotal);
28
+ const [current, setCurrent] = useListenProps(originCurrent);
29
+ const [pageSize] = useListenProps(originPageSize);
30
+
31
+ // 解析分页选择器配置
32
+ const parsedPageSizeOptions = useMemo(() => {
33
+ if (pageSizeOptions) {
34
+ try {
35
+ const arr = JSON.parse(pageSizeOptions);
36
+ if (Array.isArray(arr)) {
37
+ return arr.map((s) => String(s));
38
+ }
39
+ return [];
40
+ } catch (e) {
41
+ console.error('条数可选值 pageSizeOptions 必须配置为数字数组字符串'); // eslint-disable-line no-console
42
+ }
43
+ }
44
+ return [];
45
+ }, [pageSizeOptions]);
46
+
47
+ // current为空时默认为1
48
+ const paginationCurrent = (current ? +current : current) || 1;
49
+ const paginationPageSize = (pageSize ? +pageSize : pageSize) || 10;
50
+ const pagination = {
51
+ showTotal: showTotal
52
+ ? (total: number) => getLocale('Pagination.showTotal', { tol: total })
53
+ : undefined,
54
+ // TODO: 这里目前存在一个问题,若配置了空的分页事件,自动认为是后端分页,实际上
55
+ current: hasPageChangeEvent ? paginationCurrent : currentPage,
56
+ pageSize: hasPageChangeEvent ? paginationPageSize : currentPageSize,
57
+ total: Number(total) || undefined,
58
+ showQuickJumper,
59
+ showSizeChanger,
60
+ pageSizeOptions: parsedPageSizeOptions,
61
+ size: 'default',
62
+ className: classNames('ued-table-page', `ued-table-page-${size}`),
63
+ // onChange: (newCurrent: React.SetStateAction<number>, newPageSize: number) => {
64
+ // if (hasPageChangeEvent) {
65
+ // onPageChange(newCurrent, newPageSize);
66
+ // return;
67
+ // }
68
+ // setCurrentPage(newCurrent);
69
+ // setCurrentPageSize(newPageSize);
70
+ // },
71
+ };
72
+
73
+ useEffect(() => {
74
+ // 前端分页时,若传入的分页信息有变更且有效,需要更新内部维护的分页数据
75
+ if (!hasPageChangeEvent) {
76
+ if (
77
+ typeof current === 'number' ||
78
+ (typeof current === 'string' && !isNaN(Number(current)))
79
+ ) {
80
+ setCurrentPage(Number(current));
81
+ }
82
+
83
+ if (
84
+ typeof pageSize === 'number' ||
85
+ (typeof pageSize === 'string' && !isNaN(Number(pageSize)))
86
+ ) {
87
+ setCurrentPageSize(Number(pageSize));
88
+ }
89
+ }
90
+ }, [current, pageSize]);
91
+
92
+ return {
93
+ pagination,
94
+ page,
95
+ hasPageChangeEvent,
96
+ setCurrent,
97
+ setCurrentPage,
98
+ setCurrentPageSize,
99
+ setTotal,
100
+ onPageChange,
101
+ };
102
+ };
103
+
104
+ export default usePagination;