@para-ui/core 3.0.53 → 3.0.55

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 (407) hide show
  1. package/README.md +24 -0
  2. package/package.json +1 -1
  3. package/AutoBox/index.d.ts +0 -34
  4. package/AutoBox/index.js +0 -277
  5. package/AutoBox/protal.d.ts +0 -17
  6. package/AutoTips/autoTipsMultiline/index.d.ts +0 -18
  7. package/AutoTips/index.d.ts +0 -35
  8. package/AutoTips/index.js +0 -271
  9. package/Breadcrumbs/index.d.ts +0 -53
  10. package/Breadcrumbs/index.js +0 -266
  11. package/Breadcrumbs/lang/en_US.d.ts +0 -4
  12. package/Breadcrumbs/lang/index.d.ts +0 -9
  13. package/Breadcrumbs/lang/zh_CN.d.ts +0 -4
  14. package/Button/SplitButton.d.ts +0 -64
  15. package/Button/index.d.ts +0 -79
  16. package/Button/index.js +0 -376
  17. package/Button/lang/en_US.d.ts +0 -4
  18. package/Button/lang/index.d.ts +0 -9
  19. package/Button/lang/zh_CN.d.ts +0 -4
  20. package/ButtonGroup/index.d.ts +0 -33
  21. package/ButtonGroup/index.js +0 -124
  22. package/Carousel/index.d.ts +0 -38
  23. package/Carousel/index.js +0 -78
  24. package/Cascader/index.d.ts +0 -54
  25. package/Cascader/index.js +0 -159
  26. package/Cascader/lang/en_US.d.ts +0 -4
  27. package/Cascader/lang/index.d.ts +0 -9
  28. package/Cascader/lang/zh_CN.d.ts +0 -4
  29. package/Checkbox/index.d.ts +0 -40
  30. package/Checkbox/index.js +0 -109
  31. package/CheckboxGroup/index.d.ts +0 -45
  32. package/CheckboxGroup/index.js +0 -142
  33. package/Collapse/collapsePanel.d.ts +0 -30
  34. package/Collapse/index.d.ts +0 -57
  35. package/Collapse/index.js +0 -152
  36. package/Collapse/motion.d.ts +0 -5
  37. package/Collapse/util.d.ts +0 -11
  38. package/CollapseBox/index.d.ts +0 -27
  39. package/CollapseBox/index.js +0 -148
  40. package/CollapseBox/util.d.ts +0 -5
  41. package/CollapseLayout/index.d.ts +0 -53
  42. package/CollapseLayout/index.js +0 -176
  43. package/ColorPicker/index.d.ts +0 -4
  44. package/ColorPicker/index.js +0 -4
  45. package/ComboSelect/index.d.ts +0 -6
  46. package/ComboSelect/index.js +0 -1049
  47. package/ComboSelect/interface.d.ts +0 -146
  48. package/ComboSelect/lang/en_US.d.ts +0 -9
  49. package/ComboSelect/lang/index.d.ts +0 -19
  50. package/ComboSelect/lang/zh_CN.d.ts +0 -9
  51. package/ComboSelect/utils.d.ts +0 -9
  52. package/Container/index.d.ts +0 -77
  53. package/Container/index.js +0 -232
  54. package/DatePicker/PickerButton.d.ts +0 -3
  55. package/DatePicker/PickerTag.d.ts +0 -3
  56. package/DatePicker/generatePicker/generateRangePicker.d.ts +0 -4
  57. package/DatePicker/generatePicker/generateSinglePicker.d.ts +0 -11
  58. package/DatePicker/generatePicker/index.d.ts +0 -95
  59. package/DatePicker/index.d.ts +0 -18
  60. package/DatePicker/index.js +0 -633
  61. package/DatePicker/lang/en_US.d.ts +0 -3
  62. package/DatePicker/lang/index.d.ts +0 -7
  63. package/DatePicker/lang/zh_CN.d.ts +0 -3
  64. package/DatePicker/util.d.ts +0 -22
  65. package/Desktop/index.d.ts +0 -57
  66. package/Desktop/index.js +0 -746
  67. package/DragVerify/index.d.ts +0 -36
  68. package/DragVerify/index.js +0 -385
  69. package/DragVerify/lang/en_US.d.ts +0 -5
  70. package/DragVerify/lang/index.d.ts +0 -11
  71. package/DragVerify/lang/zh_CN.d.ts +0 -5
  72. package/Drawer/index.d.ts +0 -11
  73. package/Drawer/index.js +0 -235
  74. package/Drawer/interface.d.ts +0 -92
  75. package/Drawer/lang/en_US.d.ts +0 -5
  76. package/Drawer/lang/index.d.ts +0 -11
  77. package/Drawer/lang/zh_CN.d.ts +0 -5
  78. package/Dropdown/index.d.ts +0 -40
  79. package/Dropdown/index.js +0 -10
  80. package/DynamicMultiBox/formItem.d.ts +0 -14
  81. package/DynamicMultiBox/index.d.ts +0 -5
  82. package/DynamicMultiBox/index.js +0 -1313
  83. package/DynamicMultiBox/interface.d.ts +0 -161
  84. package/DynamicMultiBox/rowForm.d.ts +0 -24
  85. package/Empty/images/index.d.ts +0 -3
  86. package/Empty/index.d.ts +0 -30
  87. package/Empty/index.js +0 -642
  88. package/Empty/lang/en_US.d.ts +0 -6
  89. package/Empty/lang/index.d.ts +0 -13
  90. package/Empty/lang/zh_CN.d.ts +0 -6
  91. package/Form/index.d.ts +0 -187
  92. package/Form/index.js +0 -355
  93. package/FormItem/compoments/defaultCompoments/index.d.ts +0 -19
  94. package/FormItem/compoments/formCheckboxGroup/index.d.ts +0 -8
  95. package/FormItem/compoments/formFile/index.d.ts +0 -38
  96. package/FormItem/compoments/formRadioGroup/index.d.ts +0 -8
  97. package/FormItem/compoments/formSelect/index.d.ts +0 -18
  98. package/FormItem/errorTips.d.ts +0 -12
  99. package/FormItem/index.d.ts +0 -152
  100. package/FormItem/index.js +0 -78
  101. package/FormItem/itemType.d.ts +0 -42
  102. package/FormItem/validateFunction.d.ts +0 -15
  103. package/FunctionModal/dialog.d.ts +0 -58
  104. package/FunctionModal/index.d.ts +0 -8
  105. package/FunctionModal/index.js +0 -43
  106. package/FunctionModal/modalContext.d.ts +0 -15
  107. package/GlobalContext/componentsProps.d.ts +0 -21
  108. package/GlobalContext/confirmLocale.d.ts +0 -7
  109. package/GlobalContext/constant.d.ts +0 -8
  110. package/GlobalContext/index.d.ts +0 -28
  111. package/GlobalContext/index.js +0 -41
  112. package/GlobalContext/intl.d.ts +0 -34
  113. package/GlobalContext/useFormatMessage.d.ts +0 -3
  114. package/GlobalContext/usePopupContainer.d.ts +0 -4
  115. package/Help/index.d.ts +0 -24
  116. package/Help/index.js +0 -41
  117. package/HelperText/index.d.ts +0 -27
  118. package/HelperText/index.js +0 -34
  119. package/Hooks/useGlobalProps.d.ts +0 -1
  120. package/InputLang/index.d.ts +0 -46
  121. package/InputLang/index.js +0 -247
  122. package/InputNumber/index.d.ts +0 -71
  123. package/InputNumber/index.js +0 -277
  124. package/Label/index.d.ts +0 -37
  125. package/Label/index.js +0 -85
  126. package/Loading/index.d.ts +0 -17
  127. package/Loading/index.js +0 -47
  128. package/Menu/footerExpansion.d.ts +0 -9
  129. package/Menu/index.d.ts +0 -10
  130. package/Menu/index.js +0 -1105
  131. package/Menu/interface.d.ts +0 -141
  132. package/Menu/logo.d.ts +0 -9
  133. package/Menu/verticalMenuList.d.ts +0 -14
  134. package/Message/index.d.ts +0 -99
  135. package/Message/index.js +0 -246
  136. package/Modal/Confirm/index.d.ts +0 -65
  137. package/Modal/index.d.ts +0 -99
  138. package/Modal/index.js +0 -421
  139. package/Modal/lang/en_US.d.ts +0 -5
  140. package/Modal/lang/index.d.ts +0 -11
  141. package/Modal/lang/zh_CN.d.ts +0 -5
  142. package/MultiBox/index.d.ts +0 -58
  143. package/MultiBox/index.js +0 -272
  144. package/MultiBox/lang/en_US.d.ts +0 -4
  145. package/MultiBox/lang/index.d.ts +0 -9
  146. package/MultiBox/lang/zh_CN.d.ts +0 -4
  147. package/Notification/index.d.ts +0 -74
  148. package/Notification/index.js +0 -252
  149. package/OperateBtn/index.d.ts +0 -59
  150. package/OperateBtn/index.js +0 -237
  151. package/OperateBtn/lang/en_US.d.ts +0 -4
  152. package/OperateBtn/lang/index.d.ts +0 -9
  153. package/OperateBtn/lang/zh_CN.d.ts +0 -4
  154. package/PageHeader/horizontalMeun.d.ts +0 -9
  155. package/PageHeader/horizontalMeunRight.d.ts +0 -9
  156. package/PageHeader/index.d.ts +0 -10
  157. package/PageHeader/index.js +0 -1050
  158. package/PageHeader/interface.d.ts +0 -169
  159. package/Pagination/index.d.ts +0 -46
  160. package/Pagination/index.js +0 -461
  161. package/Pagination/lang/en_US.d.ts +0 -8
  162. package/Pagination/lang/index.d.ts +0 -17
  163. package/Pagination/lang/zh_CN.d.ts +0 -8
  164. package/ParauiProvider/index.d.ts +0 -8
  165. package/ParauiProvider/index.js +0 -52
  166. package/PasswordRules/index.d.ts +0 -46
  167. package/PasswordRules/index.js +0 -113
  168. package/PopConfirm/index.d.ts +0 -61
  169. package/PopConfirm/index.js +0 -194
  170. package/PopConfirm/lang/en_US.d.ts +0 -5
  171. package/PopConfirm/lang/index.d.ts +0 -11
  172. package/PopConfirm/lang/zh_CN.d.ts +0 -5
  173. package/Popover/index.d.ts +0 -16
  174. package/Popover/index.js +0 -59
  175. package/Progress/Line.d.ts +0 -47
  176. package/Progress/Steps.d.ts +0 -17
  177. package/Progress/index.d.ts +0 -83
  178. package/Progress/index.js +0 -323
  179. package/Progress/utils.d.ts +0 -6
  180. package/Querying/images/index.d.ts +0 -3
  181. package/Querying/index.d.ts +0 -26
  182. package/Querying/index.js +0 -760
  183. package/Querying/lang/en_US.d.ts +0 -4
  184. package/Querying/lang/index.d.ts +0 -9
  185. package/Querying/lang/zh_CN.d.ts +0 -4
  186. package/Radio/index.d.ts +0 -38
  187. package/Radio/index.js +0 -97
  188. package/RadioGroup/index.d.ts +0 -46
  189. package/RadioGroup/index.js +0 -134
  190. package/Search/index.d.ts +0 -57
  191. package/Search/index.js +0 -208
  192. package/Select/index.d.ts +0 -93
  193. package/Select/index.js +0 -1146
  194. package/Select/lang/en_US.d.ts +0 -5
  195. package/Select/lang/index.d.ts +0 -11
  196. package/Select/lang/zh_CN.d.ts +0 -5
  197. package/SelectInput/index.d.ts +0 -12
  198. package/SelectInput/index.js +0 -55
  199. package/Selector/index.d.ts +0 -11
  200. package/Selector/index.js +0 -2175
  201. package/Selector/interface.d.ts +0 -432
  202. package/Selector/lang/en_US.d.ts +0 -11
  203. package/Selector/lang/index.d.ts +0 -23
  204. package/Selector/lang/zh_CN.d.ts +0 -11
  205. package/Selector/selectorData/index.d.ts +0 -10
  206. package/Selector/selectorMain/index.d.ts +0 -10
  207. package/Selector/selectorNode/index.d.ts +0 -10
  208. package/Selector/util.d.ts +0 -15
  209. package/SelectorPicker/index.d.ts +0 -53
  210. package/SelectorPicker/index.js +0 -444
  211. package/SelectorPicker/lang/en_US.d.ts +0 -5
  212. package/SelectorPicker/lang/index.d.ts +0 -11
  213. package/SelectorPicker/lang/zh_CN.d.ts +0 -5
  214. package/SingleBox/index.d.ts +0 -44
  215. package/SingleBox/index.js +0 -224
  216. package/SingleBox/lang/en_US.d.ts +0 -4
  217. package/SingleBox/lang/index.d.ts +0 -9
  218. package/SingleBox/lang/zh_CN.d.ts +0 -4
  219. package/Slider/index.d.ts +0 -14
  220. package/Slider/index.js +0 -119
  221. package/Slider/interface.d.ts +0 -102
  222. package/Split/index.d.ts +0 -7
  223. package/Split/index.js +0 -123
  224. package/Status/index.d.ts +0 -21
  225. package/Status/index.js +0 -37
  226. package/Stepper/icons.d.ts +0 -5
  227. package/Stepper/index.d.ts +0 -59
  228. package/Stepper/index.js +0 -97
  229. package/Switch/index.d.ts +0 -78
  230. package/Switch/index.js +0 -71
  231. package/Table/index.d.ts +0 -10
  232. package/Table/index.js +0 -2999
  233. package/Table/interface.d.ts +0 -346
  234. package/Table/lang/en_US.d.ts +0 -8
  235. package/Table/lang/index.d.ts +0 -17
  236. package/Table/lang/zh_CN.d.ts +0 -8
  237. package/Table/tableBody.d.ts +0 -9
  238. package/Table/tableBodyElement/index.d.ts +0 -15
  239. package/Table/tableBodyInterface.d.ts +0 -73
  240. package/Table/tableContainer/index.d.ts +0 -16
  241. package/Table/tableElement/index.d.ts +0 -17
  242. package/Table/tableHead.d.ts +0 -9
  243. package/Table/tableHeadElement/index.d.ts +0 -15
  244. package/Table/tableHeadInterface.d.ts +0 -37
  245. package/Table/tablePagination.d.ts +0 -9
  246. package/Table/tablePaginationInterface.d.ts +0 -27
  247. package/Table/tdElement/index.d.ts +0 -15
  248. package/Table/thElement/index.d.ts +0 -28
  249. package/Table/trElement/index.d.ts +0 -15
  250. package/Table/util.d.ts +0 -34
  251. package/Tabs/index.d.ts +0 -69
  252. package/Tabs/index.js +0 -205
  253. package/Tabs/lang/en_US.d.ts +0 -4
  254. package/Tabs/lang/index.d.ts +0 -9
  255. package/Tabs/lang/zh_CN.d.ts +0 -4
  256. package/Tag/TagGroup.d.ts +0 -66
  257. package/Tag/index.d.ts +0 -34
  258. package/Tag/index.js +0 -259
  259. package/TextEditor/common.d.ts +0 -11
  260. package/TextEditor/index.d.ts +0 -127
  261. package/TextEditor/index.js +0 -286
  262. package/TextField/index.d.ts +0 -90
  263. package/TextField/index.js +0 -611
  264. package/TimePicker/index.d.ts +0 -22
  265. package/TimePicker/index.js +0 -80
  266. package/TimePicker/locale/en_US.d.ts +0 -3
  267. package/TimePicker/locale/zh_CN.d.ts +0 -3
  268. package/TimePicker/style/index.d.ts +0 -1
  269. package/Timeline/TimelineItem.d.ts +0 -30
  270. package/Timeline/index.d.ts +0 -32
  271. package/Timeline/index.js +0 -148
  272. package/Title/index.d.ts +0 -30
  273. package/Title/index.js +0 -50
  274. package/ToggleButton/ToggleButtonGroup.d.ts +0 -49
  275. package/ToggleButton/index.d.ts +0 -49
  276. package/ToggleButton/index.js +0 -193
  277. package/Tooltip/index.d.ts +0 -11
  278. package/Tooltip/index.js +0 -368
  279. package/Tooltip/interface.d.ts +0 -35
  280. package/Tooltip/utils.d.ts +0 -18
  281. package/Transfer/box.d.ts +0 -38
  282. package/Transfer/index.d.ts +0 -32
  283. package/Transfer/index.js +0 -611
  284. package/Transfer/lang/en_US.d.ts +0 -10
  285. package/Transfer/lang/index.d.ts +0 -21
  286. package/Transfer/lang/zh_CN.d.ts +0 -10
  287. package/Transfer/useClick.d.ts +0 -3
  288. package/Tree/OperateBar/index.d.ts +0 -13
  289. package/Tree/Tree.d.ts +0 -4
  290. package/Tree/index.d.ts +0 -5
  291. package/Tree/index.js +0 -38
  292. package/Tree/interface.d.ts +0 -210
  293. package/Tree/lang/en_US.d.ts +0 -8
  294. package/Tree/lang/index.d.ts +0 -17
  295. package/Tree/lang/zh_CN.d.ts +0 -8
  296. package/Tree/utils/closestPolyfill.d.ts +0 -0
  297. package/Tree/utils/tools.d.ts +0 -25
  298. package/Tree/utils/treeUtil.d.ts +0 -15
  299. package/Upload/Dragger/index.d.ts +0 -10
  300. package/Upload/ErroTip/index.d.ts +0 -13
  301. package/Upload/ImageUpload/index.d.ts +0 -16
  302. package/Upload/ImgCrop/EasyCrop.d.ts +0 -17
  303. package/Upload/ImgCrop/constants.d.ts +0 -7
  304. package/Upload/ImgCrop/index.d.ts +0 -6
  305. package/Upload/ImgCrop/interface.d.ts +0 -48
  306. package/Upload/UploadList/index.d.ts +0 -5
  307. package/Upload/index.d.ts +0 -15
  308. package/Upload/index.js +0 -1446
  309. package/Upload/interface.d.ts +0 -136
  310. package/Upload/lang/en_US.d.ts +0 -12
  311. package/Upload/lang/index.d.ts +0 -25
  312. package/Upload/lang/zh_CN.d.ts +0 -12
  313. package/_verture/constant-66aa48a1.js +0 -10
  314. package/_verture/defineProperty-62acccfc.js +0 -34
  315. package/_verture/index-74f820ba.js +0 -1355
  316. package/_verture/index-77f9e0fb.js +0 -236
  317. package/_verture/index-9fd86055.js +0 -711
  318. package/_verture/index-a369ca3f.js +0 -4
  319. package/_verture/index-beef914f.js +0 -340
  320. package/_verture/index-e2881a53.js +0 -16
  321. package/_verture/intl-5cbb940c.js +0 -57
  322. package/_verture/modalContext-92bb0e16.js +0 -201
  323. package/_verture/slicedToArray-76060636.js +0 -43
  324. package/_verture/sortable.esm-49896035.js +0 -3791
  325. package/_verture/style-inject.es-300983ab.js +0 -28
  326. package/_verture/toConsumableArray-81040c9e.js +0 -19
  327. package/_verture/tslib.es6-55ed4bd2.js +0 -38
  328. package/_verture/typeof-498dd2b1.js +0 -11
  329. package/_verture/unsupportedIterableToArray-cb478f24.js +0 -16
  330. package/_verture/useFormatMessage-703f8b20.js +0 -20
  331. package/_verture/useGlobalProps-1b846a65.js +0 -11
  332. package/_verture/usePopupContainer-87febeb9.js +0 -68
  333. package/_verture/util-7e1fb1e2.js +0 -18
  334. package/index.d.ts +0 -144
  335. package/index.js +0 -180
  336. package/umd/AutoBox.js +0 -43
  337. package/umd/AutoTips.js +0 -15
  338. package/umd/Breadcrumbs.js +0 -42
  339. package/umd/Button.js +0 -43
  340. package/umd/ButtonGroup.js +0 -43
  341. package/umd/Carousel.js +0 -6
  342. package/umd/Cascader.js +0 -43
  343. package/umd/Checkbox.js +0 -42
  344. package/umd/CheckboxGroup.js +0 -42
  345. package/umd/Collapse.js +0 -43
  346. package/umd/CollapseBox.js +0 -1
  347. package/umd/CollapseLayout.js +0 -29
  348. package/umd/ColorPicker.js +0 -1
  349. package/umd/ComboSelect.js +0 -42
  350. package/umd/Container.js +0 -1
  351. package/umd/DatePicker.js +0 -42
  352. package/umd/Desktop.js +0 -42
  353. package/umd/DragVerify.js +0 -28
  354. package/umd/Drawer.js +0 -43
  355. package/umd/Dropdown.js +0 -15
  356. package/umd/DynamicMultiBox.js +0 -54
  357. package/umd/Empty.js +0 -15
  358. package/umd/Form.js +0 -42
  359. package/umd/FormItem.js +0 -42
  360. package/umd/FunctionModal.js +0 -42
  361. package/umd/GlobalContext.js +0 -1
  362. package/umd/Help.js +0 -42
  363. package/umd/HelperText.js +0 -1
  364. package/umd/InputLang.js +0 -42
  365. package/umd/InputNumber.js +0 -42
  366. package/umd/Label.js +0 -42
  367. package/umd/Loading.js +0 -29
  368. package/umd/Menu.js +0 -29
  369. package/umd/Message.js +0 -30
  370. package/umd/Modal.js +0 -42
  371. package/umd/MultiBox.js +0 -42
  372. package/umd/Notification.js +0 -43
  373. package/umd/OperateBtn.js +0 -42
  374. package/umd/PageHeader.js +0 -42
  375. package/umd/Pagination.js +0 -42
  376. package/umd/ParauiProvider.js +0 -15
  377. package/umd/PasswordRules.js +0 -29
  378. package/umd/PopConfirm.js +0 -42
  379. package/umd/Popover.js +0 -15
  380. package/umd/Progress.js +0 -35
  381. package/umd/Querying.js +0 -15
  382. package/umd/Radio.js +0 -42
  383. package/umd/RadioGroup.js +0 -42
  384. package/umd/Search.js +0 -42
  385. package/umd/Select.js +0 -42
  386. package/umd/SelectInput.js +0 -42
  387. package/umd/Selector.js +0 -42
  388. package/umd/SelectorPicker.js +0 -42
  389. package/umd/SingleBox.js +0 -42
  390. package/umd/Slider.js +0 -15
  391. package/umd/Split.js +0 -1
  392. package/umd/Status.js +0 -1
  393. package/umd/Stepper.js +0 -42
  394. package/umd/Switch.js +0 -42
  395. package/umd/Table.js +0 -42
  396. package/umd/Tabs.js +0 -42
  397. package/umd/Tag.js +0 -43
  398. package/umd/TextEditor.js +0 -205
  399. package/umd/TextField.js +0 -42
  400. package/umd/TimePicker.js +0 -42
  401. package/umd/Timeline.js +0 -1
  402. package/umd/Title.js +0 -1
  403. package/umd/ToggleButton.js +0 -43
  404. package/umd/Tooltip.js +0 -15
  405. package/umd/Transfer.js +0 -49
  406. package/umd/Tree.js +0 -42
  407. package/umd/Upload.js +0 -56
@@ -1,1049 +0,0 @@
1
- import { _ as _defineProperty } from '../_verture/defineProperty-62acccfc.js';
2
- import { _ as _toConsumableArray } from '../_verture/toConsumableArray-81040c9e.js';
3
- import { _ as _slicedToArray } from '../_verture/slicedToArray-76060636.js';
4
- import { jsx, jsxs, Fragment } from 'react/jsx-runtime';
5
- import React__default, { useRef, useState, useImperativeHandle, useEffect, useMemo } from 'react';
6
- import Down from '@para-ui/icons/Down';
7
- import SearchIcon from '@para-ui/icons/Search';
8
- import CloseIcon from '@para-ui/icons/Close';
9
- import CloseCircle from '@para-ui/icons/CloseCircle';
10
- import Table from '../Table/index.js';
11
- import { T as Tree } from '../_verture/index-74f820ba.js';
12
- import { Button } from '../Button/index.js';
13
- import { D as Dropdown } from '../_verture/index-77f9e0fb.js';
14
- import { Popover } from '../Popover/index.js';
15
- import AutoTips from '../AutoTips/index.js';
16
- import { Tooltip } from '../Tooltip/index.js';
17
- import clsx from 'clsx';
18
- import { DeepClone, ArrayToObject } from '@paraview/lib';
19
- import GlobalContext from '@para-ui/core/GlobalContext';
20
- import { u as useFormatMessage } from '../_verture/useFormatMessage-703f8b20.js';
21
- import Label from '../Label/index.js';
22
- import HelperText from '../HelperText/index.js';
23
- import { $ as $prefixCls } from '../_verture/constant-66aa48a1.js';
24
- import { s as styleInject } from '../_verture/style-inject.es-300983ab.js';
25
- import '../_verture/typeof-498dd2b1.js';
26
- import '../_verture/unsupportedIterableToArray-cb478f24.js';
27
- import '../_verture/index-beef914f.js';
28
- import '../_verture/tslib.es6-55ed4bd2.js';
29
- import '../Checkbox/index.js';
30
- import '../Help/index.js';
31
- import '@para-ui/icons/Help';
32
- import 'rc-tooltip';
33
- import 'rc-tooltip/lib/placements';
34
- import '@para-ui/icons/ScreenF';
35
- import '@para-ui/icons/UpTriangleF';
36
- import '@para-ui/icons/DownTriangleF';
37
- import '@para-ui/icons/Panel';
38
- import '../Radio/index.js';
39
- import '../Empty/index.js';
40
- import '../_verture/useGlobalProps-1b846a65.js';
41
- import '../OperateBtn/index.js';
42
- import '@para-ui/icons/More';
43
- import '../Pagination/index.js';
44
- import '../TextField/index.js';
45
- import '@para-ui/icons/PreviewClose';
46
- import '@para-ui/icons/PreviewOpen';
47
- import '../Loading/index.js';
48
- import '@para-ui/icons/LoadingF';
49
- import '../Select/index.js';
50
- import '@para-ui/icons/Check';
51
- import '@para-ui/icons/DoubleLeft';
52
- import '@para-ui/icons/Left';
53
- import 'rc-pagination';
54
- import '@para-ui/icons/Right';
55
- import '@para-ui/icons/DoubleRight';
56
- import 'rc-tree';
57
- import '@para-ui/icons/Document';
58
- import 'react-dom';
59
- import '@para-ui/icons/EditFile';
60
- import '@para-ui/icons/PlusCircle';
61
- import '@para-ui/icons/Delete';
62
- import '@para-ui/icons/Forbid';
63
- import '@para-ui/icons/MoreCircle';
64
- import 'rc-dropdown';
65
- import '../_verture/usePopupContainer-87febeb9.js';
66
- import 'dayjs';
67
-
68
- //获取替换字段
69
- var getReplaceField = function getReplaceField(mode, repl, tableP, treeP) {
70
- var t = {};
71
- if (mode === 'tree') t = treeP === null || treeP === void 0 ? void 0 : treeP.replaceFields;else t = tableP === null || tableP === void 0 ? void 0 : tableP.replaceFields;
72
- return Object.assign(Object.assign({}, repl), t);
73
- };
74
- //to array
75
- var toArray = function toArray(list) {
76
- if (!list) return [];
77
- return Array.isArray(list) ? list : JSON.stringify(list) === '{}' ? [] : [list];
78
- };
79
- var isRemoteLoad = function isRemoteLoad(mode, props) {
80
- if (mode === 'table') {
81
- return !(props && Array.isArray(props.data));
82
- }
83
- return !(props && Array.isArray(props.treeData));
84
- };
85
- var getOverlaySize = function getOverlaySize(mode) {
86
- var isRemoteLoad = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : false;
87
- var maxHeight = arguments.length > 2 ? arguments[2] : undefined;
88
- var height = arguments.length > 3 ? arguments[3] : undefined;
89
- var _a;
90
- var screenH = 720;
91
- var treeOverlay = "".concat(maxHeight || 254, "px");
92
- var listOverlay = "".concat(maxHeight || 232, "px");
93
- // let largeScreenH = 880;
94
- var largeTreeOverlayH = "".concat(maxHeight || 338, "px");
95
- var largeListOverlayH = "".concat(maxHeight || 304, "px");
96
- var clientH = document.documentElement.clientHeight;
97
- var fixHeight = height !== undefined ? 'height' : 'maxHeight';
98
- if (mode === 'tree') {
99
- //tree
100
- if (clientH <= screenH) {
101
- //小屏幕
102
- return isRemoteLoad ? {
103
- height: treeOverlay
104
- } : _defineProperty({}, fixHeight, treeOverlay);
105
- }
106
- //大屏幕
107
- return isRemoteLoad ? {
108
- height: largeTreeOverlayH
109
- } : _defineProperty({}, fixHeight, largeTreeOverlayH);
110
- } else if (mode === 'list') {
111
- //list
112
- if (clientH <= screenH) {
113
- return isRemoteLoad ? {
114
- height: listOverlay
115
- } : _defineProperty({}, fixHeight, listOverlay);
116
- }
117
- return isRemoteLoad ? {
118
- height: largeListOverlayH
119
- } : _defineProperty({}, fixHeight, largeListOverlayH);
120
- } else {
121
- //table
122
- return {
123
- height: "".concat((_a = maxHeight !== null && maxHeight !== void 0 ? maxHeight : height) !== null && _a !== void 0 ? _a : 360, "px")
124
- };
125
- }
126
- };
127
-
128
- var en = {
129
- searchPlaceholder: 'Please enter',
130
- cancel: 'Cancel',
131
- ok: 'Ok',
132
- fullPath: 'Full path',
133
- pleaseSelect: 'Please select',
134
- selected: 'selected'
135
- };
136
-
137
- var zh = {
138
- searchPlaceholder: '请输入',
139
- cancel: '取消',
140
- ok: '确定',
141
- fullPath: '完整路径',
142
- pleaseSelect: '请选择',
143
- selected: '已选中'
144
- };
145
-
146
- var localeJson = {
147
- zh: zh,
148
- en: en
149
- };
150
-
151
- var css_248z = "@charset \"UTF-8\";\n/**\n* @author Hanz\n* @date 2021/11/18 上午10:16\n* @description\n*/\n/**\n* @author Hanz\n* @date 2021/10/20 下午2:08\n* @description color\n*/\n.paraui-v3-comboselect .comboselect-wrapper {\n position: relative;\n display: flex;\n width: 100%;\n min-height: 32px;\n padding: 0 12px;\n font-size: 14px;\n border: 1px solid rgba(171, 176, 185, 0.4);\n border-radius: 4px;\n background-color: rgb(255, 255, 255);\n cursor: pointer;\n transition: 0.3s;\n}\n.paraui-v3-comboselect .comboselect-wrapper:hover {\n border-color: rgba(54, 102, 214, 0.8);\n}\n.paraui-v3-comboselect .comboselect-wrapper .comboselect-placeholder {\n position: absolute;\n top: 50%;\n left: 12px;\n right: 42px;\n transform: translateY(-50%);\n font-size: 14px;\n color: rgba(46, 55, 67, 0.4);\n white-space: nowrap;\n overflow: hidden;\n text-overflow: ellipsis;\n}\n.paraui-v3-comboselect .comboselect-wrapper .comboselect-arrow {\n position: absolute;\n top: 5px;\n right: 12px;\n line-height: 0;\n transition: 0.3s;\n}\n.paraui-v3-comboselect .comboselect-wrapper .comboselect-arrow svg {\n color: rgba(46, 55, 67, 0.7);\n font-size: 20px;\n}\n.paraui-v3-comboselect .comboselect-wrapper .comboselect-clear {\n position: absolute;\n top: 9px;\n right: 12px;\n opacity: 0;\n line-height: 0;\n cursor: pointer;\n transition: 0.3s;\n}\n.paraui-v3-comboselect .comboselect-wrapper .comboselect-clear svg {\n color: rgba(46, 55, 67, 0.7);\n font-size: 16px;\n}\n.paraui-v3-comboselect .comboselect-wrapper .comboselect-overflow {\n position: relative;\n display: flex;\n width: 100%;\n flex: auto;\n flex-wrap: wrap;\n padding: 4px 30px 0 0;\n}\n.paraui-v3-comboselect .comboselect-wrapper .comboselect-overflow-single.comboselect-overflow {\n height: 30px;\n padding: 0 30px 0 0;\n align-items: center;\n overflow: hidden;\n}\n.paraui-v3-comboselect .comboselect-wrapper .comboselect-overflow-single.comboselect-overflow .comboselect-single-content {\n max-width: 100%;\n overflow: hidden;\n text-overflow: ellipsis;\n white-space: nowrap;\n font-size: 14px;\n color: rgb(46, 55, 67);\n}\n.paraui-v3-comboselect .comboselect-wrapper .comboselect-overflow-item {\n flex: none;\n max-width: 100%;\n}\n.paraui-v3-comboselect .comboselect-wrapper .comboselect-overflow-item .comboselect-item {\n display: inline-flex;\n align-items: center;\n padding: 0 12px;\n height: 22px;\n margin: 0 8px 4px 0;\n max-width: 100%;\n color: rgb(46, 55, 67);\n line-height: 22px;\n background-color: rgba(171, 176, 185, 0.2);\n border-radius: 4px;\n user-select: none;\n transition: 0.3s;\n cursor: default;\n}\n.paraui-v3-comboselect .comboselect-wrapper .comboselect-overflow-item .comboselect-item .comboselect-item-content {\n display: inline-block;\n margin-right: 4px;\n overflow: hidden;\n font-size: 12px;\n text-overflow: ellipsis;\n white-space: nowrap;\n}\n.paraui-v3-comboselect .comboselect-wrapper .comboselect-overflow-item .comboselect-item .comboselect-item-remove {\n display: inline-flex;\n cursor: pointer;\n}\n.paraui-v3-comboselect .comboselect-wrapper .comboselect-overflow-item .comboselect-item .comboselect-item-remove svg {\n font-size: 16px;\n color: inherit;\n}\n.paraui-v3-comboselect .comboselect-wrapper .comboselect-overflow-item .comboselect-item--disabled {\n color: rgba(46, 55, 67, 0.4);\n background-color: rgba(171, 176, 185, 0.4);\n cursor: not-allowed;\n}\n.paraui-v3-comboselect .comboselect-wrapper .comboselect-overflow-item .comboselect-item--disabled .comboselect-item-remove {\n color: rgba(46, 55, 67, 0.7);\n}\n.paraui-v3-comboselect .comboselect-wrapper .comboselect-overflow-item .comboselect-item--unclosable .comboselect-item-content {\n margin-right: 0;\n}\n.paraui-v3-comboselect-focused .comboselect-wrapper {\n border-color: rgb(54, 102, 214);\n}\n.paraui-v3-comboselect-focused .comboselect-wrapper .comboselect-arrow {\n transform: rotate(180deg);\n color: rgb(54, 102, 214);\n}\n.paraui-v3-comboselect-disabled {\n cursor: not-allowed;\n}\n.paraui-v3-comboselect-disabled .comboselect-wrapper {\n background-color: rgba(171, 176, 185, 0.12);\n border-color: rgba(171, 176, 185, 0.4);\n pointer-events: none;\n}\n.paraui-v3-comboselect-large .comboselect-wrapper {\n min-height: 36px;\n}\n.paraui-v3-comboselect-large .comboselect-wrapper .comboselect-overflow {\n padding-top: 5px;\n}\n.paraui-v3-comboselect-large .comboselect-wrapper .comboselect-overflow-item .comboselect-item {\n height: 24px;\n margin-bottom: 5px;\n line-height: 24px;\n}\n.paraui-v3-comboselect-large .comboselect-wrapper .comboselect-overflow-single.comboselect-overflow {\n height: 34px;\n}\n.paraui-v3-comboselect-large .comboselect-wrapper .comboselect-arrow {\n top: 7px;\n}\n.paraui-v3-comboselect-small .comboselect-wrapper {\n min-height: 28px;\n}\n.paraui-v3-comboselect-small .comboselect-wrapper .comboselect-overflow {\n padding-top: 3px;\n}\n.paraui-v3-comboselect-small .comboselect-wrapper .comboselect-overflow-item .comboselect-item {\n height: 20px;\n margin-bottom: 3px;\n line-height: 20px;\n}\n.paraui-v3-comboselect-small .comboselect-wrapper .comboselect-overflow-single.comboselect-overflow {\n height: 26px;\n}\n.paraui-v3-comboselect-small .comboselect-wrapper .comboselect-arrow {\n top: 3px;\n}\n.paraui-v3-comboselect-error .comboselect-wrapper {\n border-color: rgb(235, 96, 84);\n}\n.paraui-v3-comboselect-error .comboselect-wrapper:hover {\n border-color: rgb(235, 96, 84);\n}\n.paraui-v3-comboselect-clear .comboselect-wrapper:hover .comboselect-arrow {\n opacity: 0;\n}\n.paraui-v3-comboselect-clear .comboselect-wrapper:hover .comboselect-clear {\n opacity: 1;\n}\n.paraui-v3-comboselect-non-popup {\n border: 1px solid rgba(171, 176, 185, 0.4);\n border-radius: 4px;\n background-color: rgb(255, 255, 255);\n}\n.paraui-v3-comboselect-non-popup .comboselect-wrapper {\n border: none;\n border-bottom: 1px solid rgba(171, 176, 185, 0.4);\n border-bottom-right-radius: 0;\n border-bottom-left-radius: 0;\n cursor: default;\n}\n.paraui-v3-comboselect-non-popup .comboselect-wrapper:hover {\n border-color: rgba(171, 176, 185, 0.4);\n}\n.paraui-v3-comboselect-non-popup .comboselect-non-popup-content {\n position: relative;\n}\n.paraui-v3-comboselect-non-popup .comboselect-non-popup-content .comboselect-search {\n display: flex;\n align-items: center;\n height: 40px;\n padding: 0 18px;\n border-bottom: 1px solid rgba(171, 176, 185, 0.2);\n}\n.paraui-v3-comboselect-non-popup .comboselect-non-popup-content .comboselect-search-icon {\n line-height: 0;\n cursor: pointer;\n}\n.paraui-v3-comboselect-non-popup .comboselect-non-popup-content .comboselect-search-icon svg {\n color: rgb(54, 102, 214);\n}\n.paraui-v3-comboselect-non-popup .comboselect-non-popup-content .comboselect-search-input {\n width: 100%;\n height: 100%;\n flex: auto;\n margin: 0 10px 0 10px;\n border: none;\n color: rgb(46, 55, 67);\n font-size: 14px;\n}\n.paraui-v3-comboselect-non-popup .comboselect-non-popup-content .comboselect-search-input::placeholder {\n color: rgba(46, 55, 67, 0.4);\n font-size: 14px;\n}\n.paraui-v3-comboselect-non-popup .comboselect-non-popup-content .comboselect-search .comboselect-clear-icon {\n display: inline-flex;\n cursor: pointer;\n}\n.paraui-v3-comboselect-non-popup .comboselect-non-popup-content .comboselect-search .comboselect-clear-icon svg {\n font-size: 16px;\n color: rgba(46, 55, 67, 0.7);\n transition: all 0.3s;\n}\n.paraui-v3-comboselect-non-popup .comboselect-non-popup-content .comboselect-search .comboselect-clear-icon svg:hover {\n color: rgba(54, 102, 214, 0.8);\n}\n.paraui-v3-comboselect-non-popup .comboselect-non-popup-content .comboselect-table {\n padding-bottom: 10px;\n}\n.paraui-v3-comboselect-non-popup .comboselect-non-popup-content .comboselect-table .paraui-v3-table {\n box-shadow: none;\n}\n.paraui-v3-comboselect-non-popup .comboselect-non-popup-content .comboselect-tree {\n padding: 6px 7px;\n}\n.paraui-v3-comboselect-non-popup .comboselect-non-popup-content .comboselect-tree .paraui-v3-tree-empty {\n padding: 52px 0 73px 0;\n}\n.paraui-v3-comboselect-dropdown .comboselect-dropdown-wrapper {\n position: relative;\n color: initial;\n overflow: hidden;\n}\n.paraui-v3-comboselect-dropdown .comboselect-search {\n display: flex;\n align-items: center;\n height: 40px;\n padding: 0 18px;\n border-bottom: 1px solid rgba(171, 176, 185, 0.2);\n}\n.paraui-v3-comboselect-dropdown .comboselect-search-icon {\n line-height: 0;\n cursor: pointer;\n}\n.paraui-v3-comboselect-dropdown .comboselect-search-icon svg {\n color: rgb(54, 102, 214);\n}\n.paraui-v3-comboselect-dropdown .comboselect-search-input {\n width: 100%;\n flex: auto;\n margin: 0 10px 0 10px;\n border: none;\n color: rgb(46, 55, 67);\n font-size: 14px;\n}\n.paraui-v3-comboselect-dropdown .comboselect-search-input::placeholder {\n color: rgba(46, 55, 67, 0.4);\n font-size: 14px;\n}\n.paraui-v3-comboselect-dropdown .comboselect-search .comboselect-clear-icon {\n display: inline-flex;\n cursor: pointer;\n}\n.paraui-v3-comboselect-dropdown .comboselect-search .comboselect-clear-icon svg {\n font-size: 16px;\n color: rgba(46, 55, 67, 0.7);\n transition: all 0.3s;\n}\n.paraui-v3-comboselect-dropdown .comboselect-search .comboselect-clear-icon svg:hover {\n color: rgba(54, 102, 214, 0.8);\n}\n.paraui-v3-comboselect-dropdown .comboselect-table {\n height: 100%;\n padding-bottom: 10px;\n}\n.paraui-v3-comboselect-dropdown .comboselect-table .paraui-v3-table {\n box-shadow: none;\n}\n.paraui-v3-comboselect-dropdown .comboselect-tree {\n height: 100%;\n padding: 6px 7px;\n}\n.paraui-v3-comboselect-dropdown .comboselect-tree .paraui-v3-tree-empty {\n height: 100%;\n padding: 52px 0 73px 0;\n}\n.paraui-v3-comboselect-dropdown .comboselect-actions {\n display: flex;\n align-items: center;\n padding: 8px 20px 8px 0;\n justify-content: flex-end;\n border-top: 1px solid rgba(171, 176, 185, 0.2);\n}\n.paraui-v3-comboselect-dropdown .comboselect-actions button + button {\n margin-left: 10px;\n}\n.paraui-v3-comboselect-dropdown .comboselect-fullPath {\n height: 34px;\n line-height: 34px;\n padding: 0 12px;\n border-top: 1px solid rgba(171, 176, 185, 0.2);\n font-size: 14px;\n color: rgb(46, 55, 67);\n}\n.paraui-v3-comboselect-dropdown .comboselect-fullPath span {\n display: inline-block;\n height: 100%;\n padding-right: 10px;\n border-right: 1px solid rgba(171, 176, 185, 0.2);\n}\n.paraui-v3-comboselect-dropdown .comboselect-list {\n padding: 8px 0;\n}\n.paraui-v3-comboselect-dropdown .comboselect-list .paraui-v3-tree-empty {\n padding: 50px 0 72px 0;\n}\n.paraui-v3-comboselect-dropdown .comboselect-list .paraui-v3-tree-treenode {\n width: 100%;\n}\n.paraui-v3-comboselect-dropdown .comboselect-list .paraui-v3-tree-treenode .paraui-v3-tree-switcher {\n display: none;\n}\n.paraui-v3-comboselect-dropdown .comboselect-list .paraui-v3-tree-treenode .paraui-v3-tree-checkbox {\n display: none;\n}\n.paraui-v3-comboselect-dropdown .comboselect-list .paraui-v3-tree-treenode .paraui-v3-tree-node-content-wrapper {\n width: 100%;\n margin: 0;\n padding: 6px 28px 6px 12px;\n}\n.paraui-v3-comboselect-dropdown .comboselect-list .paraui-v3-tree-treenode .paraui-v3-tree-node-content-wrapper:hover {\n background-color: rgba(171, 176, 185, 0.12);\n border-radius: 0;\n}\n.paraui-v3-comboselect-dropdown .comboselect-list .paraui-v3-tree-treenode-checkbox-checked .paraui-v3-tree-node-content-wrapper {\n position: relative;\n color: rgb(54, 102, 214);\n}\n.paraui-v3-comboselect-dropdown .comboselect-list .paraui-v3-tree-treenode-checkbox-checked .paraui-v3-tree-node-content-wrapper::after {\n position: absolute;\n content: \" \";\n width: 5px;\n height: 10px;\n right: 12px;\n top: 50%;\n transform: translateY(-50%) rotate(45deg);\n border: 2px solid rgb(54, 102, 214);\n border-top: 0;\n border-left: 0;\n border-bottom-right-radius: 2px;\n}\n.paraui-v3-comboselect-dropdown .comboselect-list .paraui-v3-tree-treenode-disabled .paraui-v3-tree-node-content-wrapper:hover {\n background-color: transparent;\n}\n.paraui-v3-comboselect-dropdown .comboselect-list-single .paraui-v3-tree-treenode-checkbox-checked .paraui-v3-tree-node-content-wrapper::after {\n display: none;\n}\n.paraui-v3-comboselect-more-popover {\n padding-left: 12px;\n}\n.paraui-v3-comboselect-more-popover .comboselect-more-wrapper {\n width: 300px;\n padding: 12px 0;\n}\n.paraui-v3-comboselect-more-popover .comboselect-more-wrapper .comboselect-more-title {\n display: block;\n padding: 0 12px;\n margin-bottom: 5px;\n font-size: 12px;\n color: rgba(46, 55, 67, 0.7);\n}\n.paraui-v3-comboselect-more-popover .comboselect-more-wrapper .comboselect-more-content {\n max-height: 300px;\n padding: 0 12px;\n overflow-y: auto;\n}\n.paraui-v3-comboselect-more-popover .comboselect-more-wrapper .comboselect-more-item {\n display: flex;\n align-items: center;\n height: 36px;\n font-size: 14px;\n color: rgb(46, 55, 67);\n}\n.paraui-v3-comboselect-more-popover .comboselect-more-wrapper .comboselect-more-item-text {\n display: inline-block;\n max-width: calc(100% - 25px);\n}\n.paraui-v3-comboselect-more-popover .comboselect-more-wrapper .comboselect-more-item-remove {\n display: inline-flex;\n margin-left: auto;\n}\n.paraui-v3-comboselect-more-popover .comboselect-more-wrapper .comboselect-more-item-remove svg {\n font-size: 20px;\n color: rgb(46, 55, 67);\n cursor: pointer;\n}\n.paraui-v3-comboselect-more-popover .comboselect-more-wrapper .comboselect-more-item-remove svg:hover {\n color: rgb(54, 102, 214);\n}";
152
- styleInject(css_248z);
153
-
154
- //组合选择器
155
- var ComboSelect = function ComboSelect(props) {
156
- var _props$mode = props.mode,
157
- mode = _props$mode === void 0 ? 'table' : _props$mode,
158
- placeholder = props.placeholder,
159
- searchPlaceholder = props.searchPlaceholder,
160
- maxCount = props.maxCount,
161
- _props$disabled = props.disabled,
162
- disabled = _props$disabled === void 0 ? false : _props$disabled,
163
- _props$allowClear = props.allowClear,
164
- allowClear = _props$allowClear === void 0 ? false : _props$allowClear,
165
- className = props.className,
166
- style = props.style,
167
- maxHeight = props.maxHeight,
168
- height = props.height,
169
- _props$placement = props.placement,
170
- placement = _props$placement === void 0 ? 'bottomLeft' : _props$placement,
171
- popoverClassName = props.popoverClassName,
172
- _props$size = props.size,
173
- size = _props$size === void 0 ? 'large' : _props$size,
174
- _props$popoverActions = props.popoverActions,
175
- popoverActions = _props$popoverActions === void 0 ? null : _props$popoverActions,
176
- _props$showPopoverAct = props.showPopoverActions,
177
- showPopoverActions = _props$showPopoverAct === void 0 ? false : _props$showPopoverAct,
178
- _props$defaultOpen = props.defaultOpen,
179
- defaultOpen = _props$defaultOpen === void 0 ? false : _props$defaultOpen,
180
- defaultValue = props.defaultValue,
181
- _props$replaceFields = props.replaceFields,
182
- replaceFields = _props$replaceFields === void 0 ? {
183
- key: 'key',
184
- title: 'title',
185
- children: 'children'
186
- } : _props$replaceFields,
187
- _props$outputFields = props.outputFields,
188
- outputFields = _props$outputFields === void 0 ? {
189
- outputKey: 'key',
190
- outputTitle: 'label'
191
- } : _props$outputFields,
192
- value = props.value,
193
- onClear = props.onClear,
194
- onCancel = props.onCancel,
195
- onOk = props.onOk,
196
- onClose = props.onClose,
197
- onChange = props.onChange,
198
- onSearch = props.onSearch,
199
- refresh = props.refresh,
200
- TableProps = props.TableProps,
201
- TreeProps = props.TreeProps,
202
- _props$checkable = props.checkable,
203
- checkable = _props$checkable === void 0 ? true : _props$checkable,
204
- url = props.url,
205
- ctx = props.ctx,
206
- params = props.params,
207
- _props$method = props.method,
208
- method = _props$method === void 0 ? 'Get' : _props$method,
209
- _props$showSearch = props.showSearch,
210
- showSearch = _props$showSearch === void 0 ? false : _props$showSearch,
211
- _props$error = props.error,
212
- error = _props$error === void 0 ? false : _props$error,
213
- hideErrorDom = props.hideErrorDom,
214
- helperText = props.helperText,
215
- paramsCallback = props.paramsCallback,
216
- fullPathKey = props.fullPathKey,
217
- fullPathRender = props.fullPathRender,
218
- _props$disablePopup = props.disablePopup,
219
- disablePopup = _props$disablePopup === void 0 ? false : _props$disablePopup,
220
- tagRender = props.tagRender,
221
- onTagRemove = props.onTagRemove,
222
- action = props.action,
223
- _props$label = props.label,
224
- label = _props$label === void 0 ? '' : _props$label,
225
- labelTooltip = props.labelTooltip,
226
- _props$required = props.required,
227
- required = _props$required === void 0 ? false : _props$required,
228
- emptyProps = props.emptyProps,
229
- _props$toggleSelected = props.toggleSelectedOnSingle,
230
- toggleSelectedOnSingle = _props$toggleSelected === void 0 ? false : _props$toggleSelected,
231
- optionRender = props.optionRender,
232
- getOptionLabel = props.getOptionLabel,
233
- _props$dropdownMatchS = props.dropdownMatchSelectWidth,
234
- dropdownMatchSelectWidth = _props$dropdownMatchS === void 0 ? true : _props$dropdownMatchS,
235
- getPopupContainer = props.getPopupContainer,
236
- maxTagTextLength = props.maxTagTextLength;
237
- var _React$useContext = React__default.useContext(GlobalContext),
238
- language = _React$useContext.language,
239
- locale = _React$useContext.locale;
240
- var selectRef = useRef();
241
- var _useState = useState(false),
242
- _useState2 = _slicedToArray(_useState, 2),
243
- open = _useState2[0],
244
- setOpen = _useState2[1]; //打开popover
245
- var _useState3 = useState([]),
246
- _useState4 = _slicedToArray(_useState3, 2),
247
- checkKeys = _useState4[0],
248
- setCheckKeys = _useState4[1]; //选中key
249
- var checkValuesRef = useRef(new Map()); //选中value
250
- var _useState5 = useState([]),
251
- _useState6 = _slicedToArray(_useState5, 2),
252
- checkList = _useState6[0],
253
- setCheckList = _useState6[1]; //tag显示选中项
254
- var _useState7 = useState(''),
255
- _useState8 = _slicedToArray(_useState7, 2),
256
- inputValue = _useState8[0],
257
- setInputValue = _useState8[1]; //input value
258
- var searchKeyRef = useRef(undefined); //搜索参数
259
- var _useState9 = useState(null),
260
- _useState10 = _slicedToArray(_useState9, 2),
261
- fullPath = _useState10[0],
262
- setFullPath = _useState10[1]; //路径
263
- var _useState11 = useState(false),
264
- _useState12 = _slicedToArray(_useState11, 2),
265
- hasAllClear = _useState12[0],
266
- setHasAllClear = _useState12[1]; //显示清除按钮
267
- var _useState13 = useState(0),
268
- _useState14 = _slicedToArray(_useState13, 2),
269
- inRefresh = _useState14[0],
270
- setInRefresh = _useState14[1]; //内部刷新组件
271
- var _useState15 = useState(false),
272
- _useState16 = _slicedToArray(_useState15, 2),
273
- openMore = _useState16[0],
274
- setOpenMore = _useState16[1]; //显示更过选中
275
- var _useState17 = useState([]),
276
- _useState18 = _slicedToArray(_useState17, 2),
277
- moreTagList = _useState18[0],
278
- setMoreTagList = _useState18[1]; //更多tag列表
279
- var originValueRef = useRef([]); // 保存value
280
- var hasPopup = useRef(false); //显示弹框标识
281
- var popUpNodeRef = useRef(); //popup dom
282
- var emptyParamsRef = useRef({}); //空参数常量
283
- var searchInputRef = useRef(); //search input
284
- var mergedReplaceF = getReplaceField(mode, replaceFields, TableProps, TreeProps); //替换字段
285
- var _mergedReplaceF$key = mergedReplaceF.key,
286
- fieldKey = _mergedReplaceF$key === void 0 ? '' : _mergedReplaceF$key,
287
- _mergedReplaceF$title = mergedReplaceF.title,
288
- fieldTitle = _mergedReplaceF$title === void 0 ? '' : _mergedReplaceF$title;
289
- var _ref = outputFields || {},
290
- _ref$outputKey = _ref.outputKey,
291
- outputKey = _ref$outputKey === void 0 ? 'key' : _ref$outputKey,
292
- _ref$outputTitle = _ref.outputTitle,
293
- outputTitle = _ref$outputTitle === void 0 ? 'label' : _ref$outputTitle;
294
- var intl = useFormatMessage('ComboSelect', localeJson);
295
- var isRemoteLoadRef = useRef(isRemoteLoad(mode, mode === 'table' ? TableProps : TreeProps)); //是否远程加载数据
296
- var _useState19 = useState(),
297
- _useState20 = _slicedToArray(_useState19, 2),
298
- loadedKeys = _useState20[0],
299
- setLoadKeys = _useState20[1]; //加载过的key
300
- //选择框点击
301
- var handleSelectorClick = function handleSelectorClick(event) {
302
- if (disablePopup) return;
303
- if (disabled) return;
304
- if (hasPopup.current) {
305
- handlePopoverClose();
306
- return;
307
- }
308
- hasPopup.current = true;
309
- setOpen(true);
310
- };
311
- //关闭popover
312
- var handlePopoverClose = function handlePopoverClose(event, reason) {
313
- hasPopup.current = false;
314
- searchKeyRef.current = undefined;
315
- emptyParamsRef.current = {};
316
- setOpen(false);
317
- setFullPath(null);
318
- setInputValue('');
319
- onClose === null || onClose === void 0 ? void 0 : onClose();
320
- if (reason === 'cancel') {
321
- clearSelectorData();
322
- }
323
- };
324
- //清空选择器数据
325
- var clearSelectorData = function clearSelectorData() {
326
- setCheckKeys([]);
327
- setCheckList([]);
328
- setMoreTagList([]);
329
- };
330
- //处理选中
331
- var handleChecked = function handleChecked(keys, values) {
332
- setCheckKeys(keys);
333
- formatSelectedData(values, keys);
334
- };
335
- //内部状态变化
336
- var internalChange = function internalChange(currItem) {
337
- setCheckKeys(function (prev) {
338
- var idx = prev.findIndex(function (k) {
339
- return k === currItem[outputKey];
340
- });
341
- if (idx > -1) prev.splice(idx, 1);
342
- return _toConsumableArray(prev);
343
- });
344
- };
345
- //删除当前选中项
346
- var handleRemoveTagClick = function handleRemoveTagClick(evt, currItem) {
347
- evt.stopPropagation();
348
- if (currItem.closable === false) return; //tag 不可关闭
349
- if ((onTagRemove === null || onTagRemove === void 0 ? void 0 : onTagRemove(currItem)) === false) return; //返回false不删除
350
- var newCheckList = _toConsumableArray(checkList);
351
- var idx = newCheckList.findIndex(function (_) {
352
- return _[outputKey] === currItem[outputKey];
353
- });
354
- if (idx > -1) newCheckList.splice(idx, 1);
355
- setCheckList(newCheckList);
356
- internalChange(currItem);
357
- onChange === null || onChange === void 0 ? void 0 : onChange(newCheckList);
358
- };
359
- //输入框
360
- var handleInputChange = function handleInputChange(evt) {
361
- setInputValue(evt.target.value);
362
- };
363
- //清空搜索值,重置搜索
364
- var handleClearSearchValue = function handleClearSearchValue() {
365
- setInputValue('');
366
- if (onSearch) return onSearch('');
367
- searchKeyRef.current = '';
368
- setInRefresh(Math.random());
369
- };
370
- //输入框回车搜索
371
- var handleEnterSearch = function handleEnterSearch(evt, type) {
372
- var searchFn = function searchFn() {
373
- if (!onSearch) {
374
- searchKeyRef.current = inputValue === null || inputValue === void 0 ? void 0 : inputValue.trim();
375
- setInRefresh(Math.random());
376
- } else {
377
- onSearch(inputValue);
378
- }
379
- if (isRemoteLoadRef.current) setLoadKeys([]);
380
- };
381
- if (type === 'click') {
382
- searchFn();
383
- } else if (evt) {
384
- var keyCode = evt.which || evt.keyCode;
385
- if (keyCode === 13) searchFn();
386
- }
387
- };
388
- //popover 完成
389
- var handlePopoverDone = function handlePopoverDone(evt, flag) {
390
- if (flag) {
391
- onOk === null || onOk === void 0 ? void 0 : onOk(checkList);
392
- handlePopoverClose(null, 'ok');
393
- } else {
394
- onCancel === null || onCancel === void 0 ? void 0 : onCancel();
395
- handlePopoverClose(null, 'cancel');
396
- }
397
- };
398
- //设置容器宽高
399
- var setPopoverWH = function setPopoverWH() {
400
- var w = 'auto';
401
- if (selectRef.current) w = selectRef.current.offsetWidth + 'px';
402
- var overlayStyle = getOverlaySize(mode, isRemoteLoadRef.current, maxHeight, height);
403
- var wObj = {
404
- minWidth: w,
405
- maxWidth: 960
406
- };
407
- if (typeof dropdownMatchSelectWidth === 'number') {
408
- wObj.width = dropdownMatchSelectWidth;
409
- } else if (dropdownMatchSelectWidth) {
410
- wObj.width = w;
411
- }
412
- return Object.assign(Object.assign({
413
- overflow: 'auto'
414
- }, wObj), overlayStyle);
415
- };
416
- //select className
417
- var makeSelectCls = function makeSelectCls() {
418
- var _clsx;
419
- var isMedium = size !== 'medium';
420
- return clsx("".concat($prefixCls, "-comboselect"), className, (_clsx = {}, _defineProperty(_clsx, "".concat($prefixCls, "-comboselect-focused"), open && !disablePopup), _defineProperty(_clsx, "".concat($prefixCls, "-comboselect-disabled"), disabled), _defineProperty(_clsx, "".concat($prefixCls, "-comboselect-radioable"), !checkable), _defineProperty(_clsx, "".concat($prefixCls, "-comboselect-error"), error), _defineProperty(_clsx, "".concat($prefixCls, "-comboselect-clear"), hasAllClear), _defineProperty(_clsx, "".concat($prefixCls, "-comboselect-non-popup"), disablePopup), _clsx), isMedium && "".concat($prefixCls, "-comboselect-").concat(size));
421
- };
422
- //格式化选中数据
423
- var formatSelectedData = function formatSelectedData(values, keys) {
424
- var _a;
425
- var opts = [];
426
- if (values === null || values === void 0 ? void 0 : values.length) {
427
- opts = values.map(function (item) {
428
- var _a;
429
- var temp = {};
430
- temp[outputKey] = item[fieldKey] || '';
431
- if (getOptionLabel) temp[outputTitle] = getOptionLabel(item) || '';else temp[outputTitle] = item[fieldTitle] || '';
432
- var oValue = (_a = originValueRef.current) === null || _a === void 0 ? void 0 : _a.find(function (v) {
433
- return v[outputKey] === temp[outputKey];
434
- });
435
- if (oValue) {
436
- if (oValue.disabled !== undefined) {
437
- temp.disabled = oValue.disabled;
438
- }
439
- if (oValue.closable !== undefined) {
440
- temp.closable = oValue.closable;
441
- }
442
- }
443
- return temp;
444
- });
445
- }
446
- if ((keys === null || keys === void 0 ? void 0 : keys.length) && values) {
447
- var _opts;
448
- var fKeys = keys.filter(function (k) {
449
- return values.findIndex(function (v) {
450
- return v[fieldKey] === k;
451
- }) === -1;
452
- });
453
- var diffValue = (_a = originValueRef.current) === null || _a === void 0 ? void 0 : _a.filter(function (v) {
454
- return fKeys === null || fKeys === void 0 ? void 0 : fKeys.includes(v[outputKey]);
455
- });
456
- if (diffValue) (_opts = opts).push.apply(_opts, _toConsumableArray(diffValue));
457
- }
458
- setCheckList(opts);
459
- var vals = DeepClone(values || []);
460
- if (!checkable)
461
- //单选
462
- onChange === null || onChange === void 0 ? void 0 : onChange(opts[0], vals[0]);else onChange === null || onChange === void 0 ? void 0 : onChange(opts, vals);
463
- };
464
- //外部数据转换为内部状态
465
- var transformToState = function transformToState(options) {
466
- var keys = options.map(function (_) {
467
- return _[outputKey];
468
- });
469
- setCheckList(options);
470
- setCheckKeys(keys);
471
- originValueRef.current = options;
472
- };
473
- //tree select
474
- var handleSelect = function handleSelect(selectedKeys, info) {
475
- setFullPath(info.node);
476
- };
477
- //渲染搜索
478
- var renderSearch = function renderSearch() {
479
- var styObj = {};
480
- if (!disablePopup) {
481
- var _setPopoverWH = setPopoverWH(),
482
- width = _setPopoverWH.width,
483
- minWidth = _setPopoverWH.minWidth,
484
- maxWidth = _setPopoverWH.maxWidth;
485
- styObj = {
486
- width: width,
487
- minWidth: minWidth,
488
- maxWidth: maxWidth
489
- };
490
- }
491
- return jsxs("div", Object.assign({
492
- className: 'comboselect-search',
493
- style: styObj
494
- }, {
495
- children: [jsx("span", Object.assign({
496
- className: 'comboselect-search-icon',
497
- onClick: function onClick() {
498
- return handleEnterSearch(null, 'click');
499
- }
500
- }, {
501
- children: jsx(SearchIcon, {})
502
- })), jsx("input", {
503
- placeholder: searchPlaceholder !== null && searchPlaceholder !== void 0 ? searchPlaceholder : intl({
504
- id: 'searchPlaceholder'
505
- }),
506
- className: 'comboselect-search-input',
507
- ref: searchInputRef,
508
- onChange: handleInputChange,
509
- value: inputValue,
510
- onKeyUp: function onKeyUp(evt) {
511
- return handleEnterSearch(evt, 'enter');
512
- }
513
- }), inputValue && jsx("span", Object.assign({
514
- className: 'comboselect-clear-icon',
515
- onClick: handleClearSearchValue
516
- }, {
517
- children: jsx(CloseCircle, {})
518
- }))]
519
- }));
520
- };
521
- //render popover action
522
- var renderActions = function renderActions() {
523
- if (popoverActions) return jsx("div", Object.assign({
524
- className: 'comboselect-actions'
525
- }, {
526
- children: popoverActions
527
- }));
528
- return jsxs("div", Object.assign({
529
- className: 'comboselect-actions'
530
- }, {
531
- children: [jsx(Button, Object.assign({
532
- onClick: function onClick(evt) {
533
- return handlePopoverDone(evt, false);
534
- },
535
- variant: "outlined",
536
- size: 'small'
537
- }, {
538
- children: intl({
539
- id: 'cancel'
540
- })
541
- })), jsx(Button, Object.assign({
542
- variant: "outlined",
543
- onClick: function onClick(evt) {
544
- return handlePopoverDone(evt, true);
545
- },
546
- size: 'small'
547
- }, {
548
- children: intl({
549
- id: 'ok'
550
- })
551
- }))]
552
- }));
553
- };
554
- //渲染完整路径
555
- var renderFullPath = function renderFullPath() {
556
- var _a;
557
- if (mode !== 'tree' || !fullPath) return null;
558
- if (fullPathRender) {
559
- return jsx("div", Object.assign({
560
- className: 'comboselect-fullPath'
561
- }, {
562
- children: fullPathRender(fullPath !== null && fullPath !== void 0 ? fullPath : {})
563
- }));
564
- }
565
- return jsxs("div", Object.assign({
566
- className: 'comboselect-fullPath'
567
- }, {
568
- children: [jsx("span", {
569
- children: intl({
570
- id: 'fullPath'
571
- })
572
- }), (_a = fullPath === null || fullPath === void 0 ? void 0 : fullPath[fullPathKey]) !== null && _a !== void 0 ? _a : '']
573
- }));
574
- };
575
- //全部清空
576
- var handleAllClear = function handleAllClear(evt) {
577
- evt.stopPropagation();
578
- clearSelectorData();
579
- handlePopoverClose();
580
- setOpenMore(false);
581
- onClear === null || onClear === void 0 ? void 0 : onClear();
582
- onChange === null || onChange === void 0 ? void 0 : onChange(checkable ? [] : {});
583
- };
584
- //显示更多
585
- var handleOpenMore = function handleOpenMore(e) {
586
- e.stopPropagation();
587
- setOpenMore(true);
588
- handlePopoverClose();
589
- };
590
- //暴露给外部的行为
591
- useImperativeHandle(action, function () {
592
- return {
593
- closePopup: function closePopup() {
594
- return handlePopoverClose();
595
- }
596
- };
597
- });
598
- useEffect(function () {
599
- if (!disablePopup && defaultOpen) {
600
- //默认打开
601
- hasPopup.current = true;
602
- setOpen(defaultOpen);
603
- }
604
- }, [defaultOpen]);
605
- useEffect(function () {
606
- if (defaultValue) {
607
- //默认值
608
- transformToState(toArray(defaultValue));
609
- }
610
- }, []);
611
- useEffect(function () {
612
- if (value) {
613
- //受控values
614
- transformToState(toArray(value));
615
- }
616
- }, [value]);
617
- //是否显示清除图标
618
- useEffect(function () {
619
- if (allowClear) setHasAllClear(!!(checkList === null || checkList === void 0 ? void 0 : checkList.length));
620
- }, [checkList]);
621
- useEffect(function () {
622
- var ownerDocument = function ownerDocument(node) {
623
- return node && node.ownerDocument || document;
624
- };
625
- var handleMouseDown = function handleMouseDown(evt) {
626
- var _a, _b;
627
- var doc = ownerDocument(selectRef.current);
628
- var target = evt.target;
629
- var insideDOM = !doc.documentElement.contains(target) || ((_a = popUpNodeRef.current) === null || _a === void 0 ? void 0 : _a.contains(target)) || ((_b = selectRef.current) === null || _b === void 0 ? void 0 : _b.contains(target)) || false;
630
- if (mode === 'table') {
631
- //表格模式时,显示点击popover时阻止 关闭弹框
632
- //表格分页popover
633
- var tablePageSelectCls = ".".concat($prefixCls, "-select-popover .select-popover-content");
634
- //表格显示列popover
635
- var tableColumCls = ".".concat($prefixCls, "-table-show-colums-popover");
636
- //表格过滤popover
637
- var tableFilterCls = ".".concat($prefixCls, "-filter-popover");
638
- var tablePageSelectDom = document.querySelector(tablePageSelectCls);
639
- var tableColumn = document.querySelector(tableColumCls);
640
- var tableFilter = document.querySelector(tableFilterCls);
641
- if (tablePageSelectDom && tablePageSelectDom.contains(target)) return;
642
- if (tableColumn && tableColumn.contains(target)) return;
643
- if (tableFilter && tableFilter.contains(target)) return;
644
- }
645
- if (hasPopup.current && !insideDOM) {
646
- handlePopoverClose();
647
- }
648
- };
649
- if (open) {
650
- setTimeout(function () {
651
- var _a;
652
- (_a = searchInputRef.current) === null || _a === void 0 ? void 0 : _a.focus();
653
- }, 200);
654
- }
655
- if (!disablePopup && open) {
656
- var doc = ownerDocument(selectRef.current);
657
- doc.addEventListener('mousedown', handleMouseDown);
658
- return function () {
659
- doc.removeEventListener('mousedown', handleMouseDown);
660
- };
661
- }
662
- }, [open]);
663
- //tag memo
664
- var tagMemo = useMemo(function () {
665
- var _a;
666
- if (!(checkList === null || checkList === void 0 ? void 0 : checkList.length)) return null;
667
- if (!checkable) {
668
- //单选
669
- return jsx("span", Object.assign({
670
- className: 'comboselect-single-content'
671
- }, {
672
- children: (_a = checkList[0]) === null || _a === void 0 ? void 0 : _a[outputTitle]
673
- }));
674
- }
675
- var realShowList = _toConsumableArray(checkList); //实际显示
676
- var overList = [];
677
- if (maxCount) {
678
- if (checkList.length > maxCount) {
679
- overList = checkList.slice(maxCount); //超出
680
- realShowList = checkList.slice(0, maxCount);
681
- setMoreTagList(overList);
682
- } else {
683
- setMoreTagList([]);
684
- setOpenMore(false);
685
- }
686
- }
687
- //超出tag渲染
688
- var renderOverTag = function renderOverTag() {
689
- return (overList === null || overList === void 0 ? void 0 : overList.length) ? jsx("div", Object.assign({
690
- className: 'comboselect-overflow-item'
691
- }, {
692
- children: jsx("span", Object.assign({
693
- className: 'comboselect-item',
694
- onClick: handleOpenMore
695
- }, {
696
- children: jsx("span", Object.assign({
697
- className: 'comboselect-item-content'
698
- }, {
699
- children: "+".concat(overList === null || overList === void 0 ? void 0 : overList.length)
700
- }))
701
- }))
702
- })) : null;
703
- };
704
- //渲染tag item
705
- var renderTagItem = function renderTagItem(item) {
706
- if (tagRender) return tagRender(item);
707
- var _ref2 = item !== null && item !== void 0 ? item : {},
708
- disabled = _ref2.disabled,
709
- _ref2$closable = _ref2.closable,
710
- closable = _ref2$closable === void 0 ? true : _ref2$closable;
711
- var displayLabel = item[outputTitle];
712
- var isOverflow = false;
713
- //限制tag文本长度
714
- if (typeof maxTagTextLength === 'number') {
715
- if (typeof displayLabel === 'string' || typeof displayLabel === 'number') {
716
- var strLabel = String(displayLabel);
717
- if (strLabel.length > maxTagTextLength) {
718
- displayLabel = "".concat(strLabel.slice(0, maxTagTextLength), "...");
719
- isOverflow = true;
720
- }
721
- }
722
- }
723
- return jsxs("span", Object.assign({
724
- className: clsx('comboselect-item', {
725
- 'comboselect-item--disabled': disabled,
726
- 'comboselect-item--unclosable': !closable
727
- })
728
- }, {
729
- children: [isOverflow ? jsx(Tooltip, Object.assign({
730
- title: jsx("div", Object.assign({
731
- onClick: function onClick(e) {
732
- return e.stopPropagation();
733
- }
734
- }, {
735
- children: item[outputTitle]
736
- })),
737
- arrow: false,
738
- placement: 'bottomLeft'
739
- }, {
740
- children: jsx("span", Object.assign({
741
- className: 'comboselect-item-content'
742
- }, {
743
- children: displayLabel
744
- }))
745
- })) : jsx("span", Object.assign({
746
- className: 'comboselect-item-content'
747
- }, {
748
- children: jsx(AutoTips, {
749
- children: displayLabel
750
- })
751
- })), closable === true && jsx("span", Object.assign({
752
- className: 'comboselect-item-remove',
753
- onClick: function onClick(evt) {
754
- return handleRemoveTagClick(evt, item);
755
- },
756
- onMouseDown: function onMouseDown(e) {
757
- return e.stopPropagation();
758
- }
759
- }, {
760
- children: jsx(CloseIcon, {})
761
- }))]
762
- }));
763
- };
764
- return jsxs(Fragment, {
765
- children: [realShowList.map(function (item, idx) {
766
- return jsx("div", Object.assign({
767
- className: 'comboselect-overflow-item'
768
- }, {
769
- children: renderTagItem(item)
770
- }), idx);
771
- }), renderOverTag()]
772
- });
773
- }, [checkList, onChange]);
774
- //处理参数
775
- var getParams = useMemo(function () {
776
- var P = params || emptyParamsRef.current;
777
- if (showSearch && !onSearch && searchKeyRef.current !== undefined) {
778
- P = Object.assign(Object.assign({}, P), {
779
- searchKey: searchKeyRef.current
780
- });
781
- }
782
- return (paramsCallback === null || paramsCallback === void 0 ? void 0 : paramsCallback(P)) || P;
783
- }, [params, inRefresh, refresh, open]);
784
- //表格组件
785
- var tableMemo = useMemo(function () {
786
- if (!disablePopup && !open || mode !== 'table') return null;
787
- var reqOpts = {
788
- url: url,
789
- ctx: ctx,
790
- search: getParams,
791
- method: method
792
- };
793
- //处理table radio
794
- var handleTableRadio = function handleTableRadio(keys, values) {
795
- if (!checkable) {
796
- //单选时关闭下拉框,点击自己不取消
797
- handlePopoverClose();
798
- if (checkKeys.includes(keys)) return;
799
- }
800
- handleChecked([keys], [values]);
801
- };
802
- return jsx("div", Object.assign({
803
- className: 'comboselect-table'
804
- }, {
805
- children: jsx(Table, Object.assign({}, reqOpts, TableProps, {
806
- emptyProps: emptyProps,
807
- check: checkable,
808
- radio: !checkable,
809
- rowKey: fieldKey,
810
- setCheck: handleChecked,
811
- setRadio: handleTableRadio,
812
- checkDefaultValue: checkKeys,
813
- radioDefaultValue: checkKeys[0],
814
- refresh: refresh !== null && refresh !== void 0 ? refresh : inRefresh,
815
- autoSize: false
816
- }))
817
- }));
818
- }, [checkKeys, refresh, params, inRefresh, open]);
819
- //树组件
820
- var treeMemo = useMemo(function () {
821
- if (!disablePopup && !open || !['tree', 'list'].includes(mode)) return null;
822
- var reqOpts = {
823
- url: url,
824
- ctx: ctx,
825
- params: getParams,
826
- method: method
827
- };
828
- //处理tree nodes
829
- var handleTreeCheck = function handleTreeCheck(checkedKeys, info) {
830
- var _a;
831
- if (!info.checked) {
832
- var temp = {};
833
- temp[outputKey] = info.node[fieldKey] || '';
834
- temp[outputTitle] = info.node[fieldTitle] || '';
835
- if ((onTagRemove === null || onTagRemove === void 0 ? void 0 : onTagRemove(temp)) === false) {
836
- //返回false不删除
837
- return;
838
- }
839
- }
840
- if (!checkable) {
841
- //单选时
842
- handlePopoverClose();
843
- if (!toggleSelectedOnSingle) {
844
- if (checkKeys.includes((_a = info.node) === null || _a === void 0 ? void 0 : _a.key)) return;
845
- }
846
- }
847
- var nodes = info.checkedNodes;
848
- if (!checkable) {
849
- //单选
850
- if (checkedKeys === null || checkedKeys === void 0 ? void 0 : checkedKeys.length) nodes = [info.node];
851
- }
852
- //多选
853
- if (checkable) {
854
- var nodesObj = ArrayToObject('key', nodes);
855
- var ckeys = Array.from(checkValuesRef.current.keys());
856
- ckeys.forEach(function (k) {
857
- if (!checkedKeys.includes(k)) {
858
- checkValuesRef.current.delete(k);
859
- }
860
- });
861
- checkedKeys.forEach(function (k) {
862
- if (nodesObj[k]) {
863
- checkValuesRef.current.set(k, nodesObj[k]);
864
- }
865
- });
866
- nodes = Array.from(checkValuesRef.current.values());
867
- }
868
- handleChecked(checkedKeys, nodes);
869
- };
870
- var _titleRender = function _titleRender(dataNode) {
871
- if (TreeProps === null || TreeProps === void 0 ? void 0 : TreeProps.titleRender) {
872
- return TreeProps.titleRender(dataNode);
873
- }
874
- if (optionRender) {
875
- return optionRender(dataNode);
876
- }
877
- return dataNode.title;
878
- };
879
- var treeCls = clsx('comboselect-tree', {
880
- 'comboselect-list': mode === 'list',
881
- 'comboselect-list-single': mode === 'list' && !checkable
882
- });
883
- return jsx("div", Object.assign({
884
- className: treeCls
885
- }, {
886
- children: jsx(Tree, Object.assign({
887
- blockNode: true
888
- }, reqOpts, TreeProps, {
889
- wrapperStyle: {
890
- position: 'static'
891
- },
892
- emptyProps: Object.assign({
893
- size: 'small'
894
- }, emptyProps),
895
- replaceFields: mergedReplaceF,
896
- checkable: checkable,
897
- radioable: !checkable,
898
- showRadio: false,
899
- selectable: mode !== 'list',
900
- loadedKeys: loadedKeys,
901
- checkedKeys: checkKeys,
902
- onCheck: handleTreeCheck,
903
- onSelect: handleSelect,
904
- titleRender: _titleRender,
905
- refresh: refresh !== null && refresh !== void 0 ? refresh : inRefresh
906
- }))
907
- }));
908
- }, [checkKeys, refresh, params, inRefresh, open, loadedKeys]);
909
- //组合选择器输入框
910
- var comboSelectorInput = jsxs("div", Object.assign({
911
- className: 'comboselect-wrapper',
912
- ref: selectRef,
913
- onClick: handleSelectorClick
914
- }, {
915
- children: [jsx("div", Object.assign({
916
- className: clsx('comboselect-overflow', !checkable && 'comboselect-overflow-single')
917
- }, {
918
- children: tagMemo
919
- })), !disablePopup && jsx("span", Object.assign({
920
- className: 'comboselect-arrow'
921
- }, {
922
- children: jsx(Down, {})
923
- })), hasAllClear && jsx("span", Object.assign({
924
- className: 'comboselect-clear',
925
- onClick: handleAllClear
926
- }, {
927
- children: jsx(CloseCircle, {})
928
- })), !(checkList === null || checkList === void 0 ? void 0 : checkList.length) && jsx("span", Object.assign({
929
- className: 'comboselect-placeholder'
930
- }, {
931
- children: placeholder !== null && placeholder !== void 0 ? placeholder : intl({
932
- id: 'pleaseSelect'
933
- })
934
- }))]
935
- }));
936
- //渲染label
937
- var renderLabel = function renderLabel() {
938
- if (label || required) {
939
- return jsx(Label, Object.assign({
940
- label: label,
941
- required: required
942
- }, labelTooltip));
943
- }
944
- return null;
945
- };
946
- //非popover 模式
947
- var nonPopoverMemo = useMemo(function () {
948
- return jsxs(Fragment, {
949
- children: [comboSelectorInput, jsxs("div", Object.assign({
950
- className: 'comboselect-non-popup-content'
951
- }, {
952
- children: [showSearch && renderSearch(), mode === 'table' ? tableMemo : treeMemo, renderFullPath(), showPopoverActions && renderActions()]
953
- }))]
954
- });
955
- }, [checkKeys, inputValue, refresh, params, fullPath, hasAllClear, helperText, language, locale, onChange, onClear]);
956
- //popover 浮层
957
- var renderOverlay = function renderOverlay() {
958
- return jsxs("div", Object.assign({
959
- ref: popUpNodeRef,
960
- className: 'comboselect-dropdown-wrapper'
961
- }, {
962
- children: [showSearch && renderSearch(), jsxs("div", Object.assign({
963
- style: setPopoverWH(),
964
- className: "".concat($prefixCls, "-scrollbar-small")
965
- }, {
966
- children: [mode === 'table' ? tableMemo : treeMemo, open && renderFullPath(), showPopoverActions && renderActions()]
967
- }))]
968
- }));
969
- };
970
- //popover 渲染更多节点
971
- var renderPopoverMore = function renderPopoverMore() {
972
- var generateMoreTag = function generateMoreTag() {
973
- if (!(moreTagList === null || moreTagList === void 0 ? void 0 : moreTagList.length)) return null;
974
- return moreTagList.map(function (item, idx) {
975
- return jsxs("div", Object.assign({
976
- className: "comboselect-more-item"
977
- }, {
978
- children: [jsx("span", Object.assign({
979
- className: "comboselect-more-item-text"
980
- }, {
981
- children: jsx(AutoTips, {
982
- children: item[outputTitle]
983
- })
984
- })), jsx("span", Object.assign({
985
- className: 'comboselect-more-item-remove',
986
- onClick: function onClick(e) {
987
- return handleRemoveTagClick(e, item);
988
- }
989
- }, {
990
- children: jsx(CloseIcon, {})
991
- }))]
992
- }), idx);
993
- });
994
- };
995
- return jsxs("div", Object.assign({
996
- className: "comboselect-more-wrapper"
997
- }, {
998
- children: [jsx("span", Object.assign({
999
- className: "comboselect-more-title"
1000
- }, {
1001
- children: jsxs("span", {
1002
- children: [intl({
1003
- id: 'selected'
1004
- }), " ( ".concat(moreTagList.length, " )")]
1005
- })
1006
- })), jsx("div", Object.assign({
1007
- className: "comboselect-more-content"
1008
- }, {
1009
- children: generateMoreTag()
1010
- }))]
1011
- }));
1012
- };
1013
- //popover 模式
1014
- var popoverMemo = useMemo(function () {
1015
- return jsx(Dropdown, Object.assign({
1016
- overlay: renderOverlay(),
1017
- visible: open,
1018
- placement: placement,
1019
- trigger: ['click'],
1020
- overlayClassName: clsx("".concat($prefixCls, "-comboselect-dropdown"), popoverClassName),
1021
- getPopupContainer: getPopupContainer
1022
- }, {
1023
- children: jsx(Popover, Object.assign({
1024
- visible: openMore,
1025
- destroyTooltipOnHide: true,
1026
- placement: "rightTop",
1027
- content: renderPopoverMore(),
1028
- onVisibleChange: function onVisibleChange() {
1029
- return setOpenMore(false);
1030
- },
1031
- overlayClassName: "".concat($prefixCls, "-comboselect-more-popover")
1032
- }, {
1033
- children: comboSelectorInput
1034
- }))
1035
- }));
1036
- }, [open, checkKeys, inputValue, refresh, params, fullPath, inRefresh, hasAllClear, helperText, language, locale, openMore, moreTagList, loadedKeys, onChange, onClear]);
1037
- return jsxs("div", Object.assign({
1038
- className: makeSelectCls(),
1039
- style: style
1040
- }, {
1041
- children: [renderLabel(), disablePopup ? nonPopoverMemo : popoverMemo, !disablePopup ? jsx(HelperText, {
1042
- error: error,
1043
- helperText: helperText,
1044
- hideErrorDom: hideErrorDom
1045
- }) : null]
1046
- }));
1047
- };
1048
-
1049
- export { ComboSelect, ComboSelect as default };