@qsxy/element-plus-react 1.0.0-next.1 → 1.0.0-next.11

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 (758) hide show
  1. package/README.md +95 -0
  2. package/dist/Avatar/Avatar.d.ts +4 -0
  3. package/dist/Avatar/Avatar.js +87 -0
  4. package/dist/Avatar/index.d.ts +2 -0
  5. package/dist/Avatar/index.js +1 -0
  6. package/dist/Avatar/typings.d.ts +21 -0
  7. package/dist/Avatar/typings.js +1 -0
  8. package/dist/Badge/Badge.d.ts +2 -2
  9. package/dist/Badge/Badge.js +63 -61
  10. package/dist/Badge/index.js +1 -39
  11. package/dist/Badge/typings.d.ts +11 -1
  12. package/dist/Badge/typings.js +1 -17
  13. package/dist/Breadcrumb/Breadcrumb.js +23 -53
  14. package/dist/Breadcrumb/BreadcrumbItem.js +45 -51
  15. package/dist/Breadcrumb/index.js +2 -42
  16. package/dist/Breadcrumb/typings.d.ts +4 -0
  17. package/dist/Breadcrumb/typings.js +1 -17
  18. package/dist/Button/Button.d.ts +0 -1
  19. package/dist/Button/Button.js +132 -93
  20. package/dist/Button/ButtonGroup.js +29 -48
  21. package/dist/Button/ButtonGroupContext.js +2 -30
  22. package/dist/Button/index.js +2 -42
  23. package/dist/Button/typings.d.ts +32 -2
  24. package/dist/Button/typings.js +1 -17
  25. package/dist/Button/useButtonCustomStyle.d.ts +4 -0
  26. package/dist/Button/useButtonCustomStyle.js +65 -0
  27. package/dist/Calendar/Calendar.js +310 -238
  28. package/dist/Calendar/CalendarContext.d.ts +10 -0
  29. package/dist/Calendar/CalendarContext.js +3 -27
  30. package/dist/Calendar/DatePanel.js +191 -158
  31. package/dist/Calendar/DateRangePanel.js +140 -125
  32. package/dist/Calendar/Footer.js +41 -52
  33. package/dist/Calendar/Header.js +83 -70
  34. package/dist/Calendar/MonthPanel.js +138 -124
  35. package/dist/Calendar/MonthRangePanel.js +137 -124
  36. package/dist/Calendar/ShortCuts.d.ts +2 -0
  37. package/dist/Calendar/ShortCuts.js +21 -40
  38. package/dist/Calendar/WeekPanel.js +213 -145
  39. package/dist/Calendar/YearPanel.js +150 -125
  40. package/dist/Calendar/YearRangePanel.js +138 -128
  41. package/dist/Calendar/index.js +4 -47
  42. package/dist/Calendar/typings.d.ts +18 -0
  43. package/dist/Calendar/typings.js +1 -17
  44. package/dist/Calendar/util.js +26 -68
  45. package/dist/Card/Card.js +36 -46
  46. package/dist/Card/index.js +1 -39
  47. package/dist/Card/typings.d.ts +4 -0
  48. package/dist/Card/typings.js +1 -17
  49. package/dist/Carousel/Carousel.d.ts +4 -0
  50. package/dist/Carousel/Carousel.js +204 -0
  51. package/dist/Carousel/CarouselContext.d.ts +4 -0
  52. package/dist/Carousel/CarouselContext.js +24 -0
  53. package/dist/Carousel/CarouselItem.d.ts +4 -0
  54. package/dist/Carousel/CarouselItem.js +59 -0
  55. package/dist/Carousel/hooks/useCarousel.d.ts +37 -0
  56. package/dist/Carousel/hooks/useCarousel.js +373 -0
  57. package/dist/Carousel/hooks/useCarouselItem.d.ts +8 -0
  58. package/dist/Carousel/hooks/useCarouselItem.js +165 -0
  59. package/dist/Carousel/index.d.ts +3 -0
  60. package/dist/Carousel/index.js +2 -0
  61. package/dist/Carousel/typings.d.ts +83 -0
  62. package/dist/Carousel/typings.js +1 -0
  63. package/dist/Cascader/Cascader.js +694 -604
  64. package/dist/Cascader/CascaderContext.d.ts +4 -10
  65. package/dist/Cascader/CascaderContext.js +10 -50
  66. package/dist/Cascader/CascaderDropdown.d.ts +1 -0
  67. package/dist/Cascader/CascaderDropdown.js +90 -77
  68. package/dist/Cascader/CascaderMenu.js +100 -186
  69. package/dist/Cascader/Utils.d.ts +0 -2
  70. package/dist/Cascader/Utils.js +6 -77
  71. package/dist/Cascader/index.d.ts +1 -1
  72. package/dist/Cascader/index.js +1 -39
  73. package/dist/Cascader/typings.d.ts +77 -13
  74. package/dist/Cascader/typings.js +1 -17
  75. package/dist/Cascader/useCascader.d.ts +61 -3
  76. package/dist/Cascader/useCascader.js +651 -488
  77. package/dist/Checkbox/Checkbox.d.ts +3 -3
  78. package/dist/Checkbox/Checkbox.js +136 -165
  79. package/dist/Checkbox/CheckboxButton.js +132 -161
  80. package/dist/Checkbox/index.js +2 -42
  81. package/dist/Checkbox/typings.d.ts +12 -1
  82. package/dist/Checkbox/typings.js +1 -17
  83. package/dist/CheckboxGroup/CheckboxGroup.d.ts +4 -0
  84. package/dist/CheckboxGroup/CheckboxGroup.js +133 -112
  85. package/dist/CheckboxGroup/CheckboxGroupContext.d.ts +1 -0
  86. package/dist/CheckboxGroup/CheckboxGroupContext.js +2 -30
  87. package/dist/CheckboxGroup/index.js +2 -42
  88. package/dist/Col/Col.js +53 -79
  89. package/dist/Col/index.js +1 -39
  90. package/dist/Col/typings.d.ts +10 -0
  91. package/dist/Col/typings.js +1 -17
  92. package/dist/Collapse/Collapse.js +36 -45
  93. package/dist/Collapse/CollapseContext.d.ts +3 -0
  94. package/dist/Collapse/CollapseContext.js +3 -31
  95. package/dist/Collapse/CollapseItem.js +88 -71
  96. package/dist/Collapse/CollapseTransition.d.ts +7 -6
  97. package/dist/Collapse/CollapseTransition.js +50 -70
  98. package/dist/Collapse/index.js +2 -42
  99. package/dist/Collapse/typings.d.ts +7 -0
  100. package/dist/Collapse/typings.js +1 -17
  101. package/dist/ColorPicker/AlphaSlider.d.ts +7 -0
  102. package/dist/ColorPicker/AlphaSlider.js +117 -100
  103. package/dist/ColorPicker/ColorPicker.d.ts +1 -1
  104. package/dist/ColorPicker/ColorPicker.js +233 -190
  105. package/dist/ColorPicker/HueSlider.d.ts +7 -0
  106. package/dist/ColorPicker/HueSlider.js +102 -97
  107. package/dist/ColorPicker/Predefine.d.ts +7 -0
  108. package/dist/ColorPicker/Predefine.js +65 -67
  109. package/dist/ColorPicker/SvPanel.d.ts +7 -0
  110. package/dist/ColorPicker/SvPanel.js +95 -82
  111. package/dist/ColorPicker/color.js +301 -213
  112. package/dist/ColorPicker/draggable.js +30 -48
  113. package/dist/ColorPicker/index.js +1 -39
  114. package/dist/ColorPicker/typings.d.ts +9 -0
  115. package/dist/ColorPicker/typings.js +1 -17
  116. package/dist/ColorPicker/util.js +23 -60
  117. package/dist/ConfigProvider/ConfigProvider.d.ts +5 -0
  118. package/dist/ConfigProvider/ConfigProvider.js +4 -28
  119. package/dist/ConfigProvider/index.js +1 -39
  120. package/dist/DatePicker/DatePicker.d.ts +3 -3
  121. package/dist/DatePicker/DatePicker.js +251 -216
  122. package/dist/DatePicker/DateRangePicker.d.ts +3 -3
  123. package/dist/DatePicker/DateRangePicker.js +279 -275
  124. package/dist/DatePicker/index.js +2 -39
  125. package/dist/DatePicker/main.d.ts +2 -2
  126. package/dist/DatePicker/main.js +21 -44
  127. package/dist/DatePicker/typings.d.ts +92 -16
  128. package/dist/DatePicker/typings.js +1 -17
  129. package/dist/DateTimePicker/DateTimePicker.d.ts +3 -5
  130. package/dist/DateTimePicker/DateTimePicker.js +290 -217
  131. package/dist/DateTimePicker/index.js +1 -39
  132. package/dist/DateTimePicker/typings.d.ts +10 -12
  133. package/dist/DateTimePicker/typings.js +1 -17
  134. package/dist/DateTimePicker/util.js +5 -35
  135. package/dist/Descriptions/Descriptions.js +83 -67
  136. package/dist/Descriptions/DescriptionsCell.js +67 -79
  137. package/dist/Descriptions/DescriptionsContext.d.ts +2 -0
  138. package/dist/Descriptions/DescriptionsContext.js +4 -32
  139. package/dist/Descriptions/DescriptionsItem.js +4 -27
  140. package/dist/Descriptions/DescriptionsRow.js +42 -44
  141. package/dist/Descriptions/index.js +2 -42
  142. package/dist/Descriptions/typings.d.ts +13 -0
  143. package/dist/Descriptions/typings.js +1 -17
  144. package/dist/Dialog/Dialog.d.ts +0 -1
  145. package/dist/Dialog/Dialog.js +224 -179
  146. package/dist/Dialog/DialogBody.js +52 -62
  147. package/dist/Dialog/DialogContext.d.ts +8 -0
  148. package/dist/Dialog/DialogContext.js +6 -44
  149. package/dist/Dialog/DialogFooter.js +21 -45
  150. package/dist/Dialog/DialogHeader.js +44 -53
  151. package/dist/Dialog/index.js +1 -39
  152. package/dist/Dialog/typings.d.ts +39 -3
  153. package/dist/Dialog/typings.js +1 -17
  154. package/dist/Dialog/useDraggable.js +52 -79
  155. package/dist/Divider/Divider.d.ts +7 -3
  156. package/dist/Divider/Divider.js +38 -49
  157. package/dist/Divider/index.js +1 -39
  158. package/dist/Drawer/Drawer.js +145 -123
  159. package/dist/Drawer/DrawerBody.js +35 -60
  160. package/dist/Drawer/DrawerContext.d.ts +10 -0
  161. package/dist/Drawer/DrawerContext.js +13 -44
  162. package/dist/Drawer/DrawerFooter.js +22 -43
  163. package/dist/Drawer/DrawerHeader.js +41 -51
  164. package/dist/Drawer/index.js +1 -39
  165. package/dist/Drawer/typings.d.ts +16 -0
  166. package/dist/Drawer/typings.js +1 -17
  167. package/dist/Dropdown/Dropdown.js +89 -103
  168. package/dist/Dropdown/DropdownContext.d.ts +2 -0
  169. package/dist/Dropdown/DropdownContext.js +5 -43
  170. package/dist/Dropdown/DropdownItem.js +40 -60
  171. package/dist/Dropdown/DropdownMenu.js +28 -56
  172. package/dist/Dropdown/index.js +3 -45
  173. package/dist/Dropdown/typings.d.ts +16 -1
  174. package/dist/Dropdown/typings.js +1 -17
  175. package/dist/Empty/Empty.js +32 -56
  176. package/dist/Empty/ImgEmpty.js +115 -117
  177. package/dist/Empty/index.js +1 -39
  178. package/dist/Form/FieldContext.js +8 -37
  179. package/dist/Form/Form.js +167 -158
  180. package/dist/Form/FormContext.js +58 -97
  181. package/dist/Form/FormItem.d.ts +12 -0
  182. package/dist/Form/FormItem.js +620 -350
  183. package/dist/Form/FormItemContext.js +3 -31
  184. package/dist/Form/List.js +121 -104
  185. package/dist/Form/ListContext.js +3 -27
  186. package/dist/Form/index.js +3 -45
  187. package/dist/Form/typings.d.ts +79 -3
  188. package/dist/Form/typings.js +1 -17
  189. package/dist/Form/useForm.d.ts +22 -0
  190. package/dist/Form/useForm.js +830 -690
  191. package/dist/Form/useWatch.js +64 -79
  192. package/dist/Form/utils/NameMap.d.ts +3 -0
  193. package/dist/Form/utils/NameMap.js +98 -69
  194. package/dist/Form/utils/asyncUtil.js +9 -37
  195. package/dist/Form/utils/classUtil.js +26 -48
  196. package/dist/Form/utils/cloneDeep.js +8 -29
  197. package/dist/Form/utils/get.js +6 -30
  198. package/dist/Form/utils/messages.js +25 -53
  199. package/dist/Form/utils/set.js +31 -44
  200. package/dist/Form/utils/typeUtil.js +3 -31
  201. package/dist/Form/utils/util.js +18 -55
  202. package/dist/Form/utils/validateUtil.d.ts +4 -0
  203. package/dist/Form/utils/validateUtil.js +284 -159
  204. package/dist/Form/utils/valueUtil.d.ts +17 -0
  205. package/dist/Form/utils/valueUtil.js +102 -107
  206. package/dist/Icon/Icon.js +39 -66
  207. package/dist/Icon/IconList/Check.js +25 -65
  208. package/dist/Icon/IconList/Close.js +23 -52
  209. package/dist/Icon/IconList/Delete.js +25 -65
  210. package/dist/Icon/IconList/Down.js +25 -65
  211. package/dist/Icon/IconList/Eye.js +25 -65
  212. package/dist/Icon/IconList/EyeClose.js +25 -65
  213. package/dist/Icon/IconList/Left.js +25 -65
  214. package/dist/Icon/IconList/Link.js +19 -55
  215. package/dist/Icon/IconList/More.js +25 -65
  216. package/dist/Icon/IconList/Question.js +25 -65
  217. package/dist/Icon/IconList/Right.js +25 -65
  218. package/dist/Icon/IconList/Search.js +25 -65
  219. package/dist/Icon/IconList/Up.js +25 -65
  220. package/dist/Icon/IconList/Upload.js +25 -65
  221. package/dist/Icon/IconList/index.js +14 -68
  222. package/dist/Icon/index.js +2 -42
  223. package/dist/Icon/typings.d.ts +7 -0
  224. package/dist/Icon/typings.js +1 -17
  225. package/dist/Input/Input.js +334 -350
  226. package/dist/Input/InputGroup.js +27 -43
  227. package/dist/Input/InputRange.js +295 -305
  228. package/dist/Input/TextArea.js +129 -116
  229. package/dist/Input/index.js +3 -45
  230. package/dist/Input/typings.d.ts +61 -0
  231. package/dist/Input/typings.js +1 -17
  232. package/dist/InputNumber/InputNumber.js +219 -200
  233. package/dist/InputNumber/index.js +1 -39
  234. package/dist/InputNumber/typings.d.ts +22 -1
  235. package/dist/InputNumber/typings.js +1 -17
  236. package/dist/Link/Link.js +43 -63
  237. package/dist/Link/index.js +1 -39
  238. package/dist/Link/typings.d.ts +6 -1
  239. package/dist/Link/typings.js +1 -17
  240. package/dist/Loading/Loading.js +97 -62
  241. package/dist/Loading/index.js +1 -39
  242. package/dist/Loading/typings.d.ts +5 -0
  243. package/dist/Loading/typings.js +1 -17
  244. package/dist/Message/Main.d.ts +7 -0
  245. package/dist/Message/Main.js +41 -66
  246. package/dist/Message/Message.js +167 -127
  247. package/dist/Message/index.d.ts +8 -0
  248. package/dist/Message/index.js +68 -88
  249. package/dist/Message/typings.d.ts +11 -0
  250. package/dist/Message/typings.js +1 -17
  251. package/dist/MessageBox/Main.js +42 -65
  252. package/dist/MessageBox/MessageBox.js +253 -202
  253. package/dist/MessageBox/index.d.ts +17 -3
  254. package/dist/MessageBox/index.js +74 -79
  255. package/dist/MessageBox/typings.d.ts +50 -0
  256. package/dist/MessageBox/typings.js +1 -17
  257. package/dist/Notification/Main.d.ts +7 -0
  258. package/dist/Notification/Main.js +41 -66
  259. package/dist/Notification/Notification.js +148 -128
  260. package/dist/Notification/index.d.ts +15 -0
  261. package/dist/Notification/index.js +76 -92
  262. package/dist/Notification/typings.d.ts +13 -0
  263. package/dist/Notification/typings.js +1 -17
  264. package/dist/Pagination/Options.js +104 -99
  265. package/dist/Pagination/Pager.js +30 -61
  266. package/dist/Pagination/Pagination.js +462 -376
  267. package/dist/Pagination/index.js +1 -39
  268. package/dist/Pagination/typings.d.ts +28 -0
  269. package/dist/Pagination/typings.js +1 -17
  270. package/dist/Pagination/util.js +10 -41
  271. package/dist/Popconfirm/Popconfirm.js +109 -113
  272. package/dist/Popconfirm/index.js +1 -39
  273. package/dist/Popconfirm/typings.d.ts +12 -1
  274. package/dist/Popconfirm/typings.js +1 -17
  275. package/dist/Popover/Popover.js +87 -85
  276. package/dist/Popover/index.js +1 -39
  277. package/dist/Popover/typings.d.ts +13 -1
  278. package/dist/Popover/typings.js +1 -17
  279. package/dist/Popper/Popper.js +172 -145
  280. package/dist/Popper/index.js +1 -39
  281. package/dist/Popper/popperOptions.js +79 -90
  282. package/dist/Popper/typings.d.ts +7 -1
  283. package/dist/Popper/typings.js +1 -17
  284. package/dist/Progress/Progress.js +186 -151
  285. package/dist/Progress/index.js +1 -39
  286. package/dist/Progress/typings.d.ts +12 -0
  287. package/dist/Progress/typings.js +1 -17
  288. package/dist/Radio/Radio.js +158 -117
  289. package/dist/Radio/RadioButton.js +127 -117
  290. package/dist/Radio/index.js +1 -39
  291. package/dist/Radio/typings.d.ts +7 -0
  292. package/dist/Radio/typings.js +1 -17
  293. package/dist/RadioGroup/RadioGroup.js +63 -78
  294. package/dist/RadioGroup/index.js +1 -39
  295. package/dist/RadioGroup/typings.d.ts +1 -0
  296. package/dist/RadioGroup/typings.js +1 -17
  297. package/dist/Row/Row.js +41 -59
  298. package/dist/Row/RowContext.d.ts +1 -0
  299. package/dist/Row/RowContext.js +3 -31
  300. package/dist/Row/index.js +2 -42
  301. package/dist/Row/typings.d.ts +4 -0
  302. package/dist/Row/typings.js +1 -17
  303. package/dist/Scrollbar/Scrollbar.js +172 -129
  304. package/dist/Scrollbar/Thumb.js +108 -96
  305. package/dist/Scrollbar/index.js +1 -39
  306. package/dist/Scrollbar/typings.d.ts +31 -2
  307. package/dist/Scrollbar/typings.js +1 -17
  308. package/dist/Scrollbar/util.js +24 -51
  309. package/dist/Select/Option.js +50 -75
  310. package/dist/Select/OptionGroup.js +31 -47
  311. package/dist/Select/Select.js +25 -48
  312. package/dist/Select/SelectContext.js +8 -46
  313. package/dist/Select/SelectCore.js +449 -374
  314. package/dist/Select/SelectDropdown.js +200 -160
  315. package/dist/Select/index.js +2 -42
  316. package/dist/Select/typings.d.ts +34 -1
  317. package/dist/Select/typings.js +1 -17
  318. package/dist/Skeleton/PlaceholderGraph.d.ts +4 -0
  319. package/dist/Skeleton/PlaceholderGraph.js +39 -45
  320. package/dist/Skeleton/PlaceholderGrid.d.ts +4 -0
  321. package/dist/Skeleton/PlaceholderGrid.js +55 -71
  322. package/dist/Skeleton/PlaceholderParagraph.d.ts +4 -0
  323. package/dist/Skeleton/PlaceholderParagraph.js +51 -56
  324. package/dist/Skeleton/Skeleton.js +8 -42
  325. package/dist/Skeleton/index.js +1 -39
  326. package/dist/Switch/Switch.js +177 -151
  327. package/dist/Switch/index.js +1 -39
  328. package/dist/Switch/typings.d.ts +15 -0
  329. package/dist/Switch/typings.js +1 -17
  330. package/dist/Table/Colgroup.d.ts +1 -0
  331. package/dist/Table/Colgroup.js +17 -41
  332. package/dist/Table/Table.js +246 -184
  333. package/dist/Table/TableBody.js +265 -231
  334. package/dist/Table/TableCell.js +461 -325
  335. package/dist/Table/TableColumn.js +9 -47
  336. package/dist/Table/TableContext.d.ts +8 -0
  337. package/dist/Table/TableContext.js +44 -63
  338. package/dist/Table/TableHeader.js +112 -102
  339. package/dist/Table/TableHeaderCell.js +211 -158
  340. package/dist/Table/hooks/useResize.js +69 -83
  341. package/dist/Table/hooks/useScroll.js +88 -114
  342. package/dist/Table/hooks/useSelection.d.ts +10 -0
  343. package/dist/Table/hooks/useSelection.js +145 -110
  344. package/dist/Table/hooks/useTable.d.ts +7 -0
  345. package/dist/Table/hooks/useTable.js +411 -309
  346. package/dist/Table/index.js +2 -42
  347. package/dist/Table/treeUtil.d.ts +39 -0
  348. package/dist/Table/treeUtil.js +99 -77
  349. package/dist/Table/typings.d.ts +137 -1
  350. package/dist/Table/typings.js +1 -17
  351. package/dist/Table/util.d.ts +10 -0
  352. package/dist/Table/util.js +168 -109
  353. package/dist/Tabs/TabPane.js +51 -53
  354. package/dist/Tabs/Tabs.js +277 -181
  355. package/dist/Tabs/TabsContext.js +4 -32
  356. package/dist/Tabs/index.js +2 -42
  357. package/dist/Tabs/typings.d.ts +38 -0
  358. package/dist/Tabs/typings.js +1 -17
  359. package/dist/Tag/Tag.d.ts +1 -1
  360. package/dist/Tag/Tag.js +75 -75
  361. package/dist/Tag/index.js +1 -39
  362. package/dist/Tag/typings.d.ts +10 -0
  363. package/dist/Tag/typings.js +1 -17
  364. package/dist/TimeLine/TimeLine.js +13 -42
  365. package/dist/TimeLine/TimeLineItem.js +66 -51
  366. package/dist/TimeLine/index.js +2 -42
  367. package/dist/TimeLine/typings.d.ts +9 -0
  368. package/dist/TimeLine/typings.js +1 -17
  369. package/dist/TimePicker/TimePicker.d.ts +1 -4
  370. package/dist/TimePicker/TimePicker.js +275 -211
  371. package/dist/TimePicker/TimePickerPanel.js +62 -71
  372. package/dist/TimePicker/TimePickerRange.d.ts +4 -4
  373. package/dist/TimePicker/TimePickerRange.js +372 -332
  374. package/dist/TimePicker/TimeRangePanel.js +182 -165
  375. package/dist/TimePicker/TimeSpinnerPanel.js +321 -269
  376. package/dist/TimePicker/index.d.ts +2 -3
  377. package/dist/TimePicker/index.js +1 -42
  378. package/dist/TimePicker/main.d.ts +9 -0
  379. package/dist/TimePicker/main.js +17 -0
  380. package/dist/TimePicker/typings.d.ts +39 -21
  381. package/dist/TimePicker/typings.js +1 -17
  382. package/dist/TimePicker/useTimePicker.d.ts +7 -0
  383. package/dist/TimePicker/useTimePicker.js +62 -65
  384. package/dist/TimePicker/util.js +8 -40
  385. package/dist/Tooltip/Tooltip.js +172 -187
  386. package/dist/Tooltip/TooltipContext.d.ts +1 -0
  387. package/dist/Tooltip/TooltipContext.js +8 -46
  388. package/dist/Tooltip/index.js +2 -42
  389. package/dist/Tooltip/typings.d.ts +14 -1
  390. package/dist/Tooltip/typings.js +1 -17
  391. package/dist/Transfer/List.js +290 -237
  392. package/dist/Transfer/ListBody.js +92 -106
  393. package/dist/Transfer/ListItem.d.ts +1 -0
  394. package/dist/Transfer/ListItem.js +38 -51
  395. package/dist/Transfer/Transfer.js +323 -276
  396. package/dist/Transfer/index.js +1 -39
  397. package/dist/Transfer/interface.js +1 -17
  398. package/dist/Transfer/operation.js +35 -48
  399. package/dist/Transfer/search.js +30 -62
  400. package/dist/Transfer/typings/index.d.ts +27 -0
  401. package/dist/Transfer/typings/index.js +1 -17
  402. package/dist/Transfer/typings/list.d.ts +25 -0
  403. package/dist/Transfer/typings/list.js +1 -17
  404. package/dist/Transfer/typings/listBody.d.ts +1 -0
  405. package/dist/Transfer/typings/listBody.js +2 -30
  406. package/dist/Transition/Transition.d.ts +16 -3
  407. package/dist/Transition/Transition.js +271 -232
  408. package/dist/Transition/TransitionGroup.d.ts +59 -0
  409. package/dist/Transition/TransitionGroup.js +136 -88
  410. package/dist/Transition/TransitionGroupContext.js +2 -26
  411. package/dist/Transition/childMapping.d.ts +23 -0
  412. package/dist/Transition/childMapping.js +84 -71
  413. package/dist/Transition/index.js +2 -42
  414. package/dist/Transition/util.d.ts +0 -1
  415. package/dist/Transition/util.js +6 -47
  416. package/dist/Tree/DirectoryTree.d.ts +6 -13
  417. package/dist/Tree/DirectoryTree.js +149 -170
  418. package/dist/Tree/DropIndicator.d.ts +4 -2
  419. package/dist/Tree/DropIndicator.js +16 -41
  420. package/dist/Tree/Indent.d.ts +2 -2
  421. package/dist/Tree/Indent.js +23 -54
  422. package/dist/Tree/MotionTreeNode.d.ts +4 -5
  423. package/dist/Tree/MotionTreeNode.js +120 -104
  424. package/dist/Tree/NodeList.d.ts +18 -11
  425. package/dist/Tree/NodeList.js +232 -216
  426. package/dist/Tree/RCTree.d.ts +92 -75
  427. package/dist/Tree/RCTree.js +980 -702
  428. package/dist/Tree/Tree.d.ts +18 -3
  429. package/dist/Tree/Tree.js +65 -80
  430. package/dist/Tree/TreeNode.d.ts +5 -83
  431. package/dist/Tree/TreeNode.js +367 -473
  432. package/dist/Tree/contextTypes.d.ts +40 -30
  433. package/dist/Tree/contextTypes.js +8 -29
  434. package/dist/Tree/index.d.ts +2 -2
  435. package/dist/Tree/index.js +4 -48
  436. package/dist/Tree/typings.d.ts +63 -19
  437. package/dist/Tree/typings.js +1 -29
  438. package/dist/Tree/typings.tsx--bak +245 -0
  439. package/dist/Tree/useUnmount.d.ts +5 -0
  440. package/dist/Tree/useUnmount.js +34 -0
  441. package/dist/Tree/util.d.ts +31 -18
  442. package/dist/Tree/util.js +160 -169
  443. package/dist/Tree/utils/conductUtil.d.ts +8 -2
  444. package/dist/Tree/utils/conductUtil.js +113 -93
  445. package/dist/Tree/utils/dictUtil.d.ts +8 -3
  446. package/dist/Tree/utils/dictUtil.js +44 -55
  447. package/dist/Tree/utils/diffUtil.d.ts +4 -3
  448. package/dist/Tree/utils/diffUtil.js +26 -43
  449. package/dist/Tree/utils/dropIndicator.js +23 -51
  450. package/dist/Tree/utils/iconUtil.js +44 -51
  451. package/dist/Tree/utils/keyUtil.d.ts +2 -0
  452. package/dist/Tree/utils/keyUtil.js +3 -0
  453. package/dist/Tree/utils/motion.js +34 -71
  454. package/dist/Tree/utils/pickAttrs.d.ts +5 -0
  455. package/dist/Tree/utils/pickAttrs.js +30 -58
  456. package/dist/Tree/utils/treeUtil.d.ts +40 -18
  457. package/dist/Tree/utils/treeUtil.js +268 -187
  458. package/dist/TreeSelect/TreeSelect.js +527 -464
  459. package/dist/TreeSelect/Utils.d.ts +2 -1
  460. package/dist/TreeSelect/Utils.js +15 -36
  461. package/dist/TreeSelect/index.js +1 -39
  462. package/dist/TreeSelect/typings.d.ts +20 -1
  463. package/dist/TreeSelect/typings.js +1 -17
  464. package/dist/Upload/Upload.js +106 -108
  465. package/dist/Upload/UploadContent.js +227 -182
  466. package/dist/Upload/UploadContext.js +5 -33
  467. package/dist/Upload/UploadDrag.js +77 -97
  468. package/dist/Upload/UploadList.js +104 -72
  469. package/dist/Upload/ajax.js +45 -71
  470. package/dist/Upload/index.js +1 -39
  471. package/dist/Upload/typings.d.ts +34 -0
  472. package/dist/Upload/typings.js +34 -36
  473. package/dist/Upload/use-handlers.d.ts +1 -0
  474. package/dist/Upload/use-handlers.js +182 -126
  475. package/dist/Util/Math.d.ts +34 -0
  476. package/dist/Util/Math.js +81 -78
  477. package/dist/Util/PopupManager.js +5 -27
  478. package/dist/Util/base.d.ts +22 -0
  479. package/dist/Util/base.js +109 -162
  480. package/dist/Util/genFileId.js +3 -29
  481. package/dist/Util/index.js +6 -51
  482. package/dist/Util/resize-event.js +31 -54
  483. package/dist/Util/shallowEqual.d.ts +11 -0
  484. package/dist/Util/shallowEqual.js +30 -28
  485. package/dist/Util/treeUtils.d.ts +8 -0
  486. package/dist/Util/treeUtils.js +68 -64
  487. package/dist/config/Constants.js +17 -47
  488. package/dist/display.css +1 -0
  489. package/dist/fonts/fa-brands-400.ttf +0 -0
  490. package/dist/fonts/fa-brands-400.woff2 +0 -0
  491. package/dist/fonts/fa-duotone-900.ttf +0 -0
  492. package/dist/fonts/fa-duotone-900.woff2 +0 -0
  493. package/dist/fonts/fa-light-300.ttf +0 -0
  494. package/dist/fonts/fa-light-300.woff2 +0 -0
  495. package/dist/fonts/fa-regular-400.ttf +0 -0
  496. package/dist/fonts/fa-regular-400.woff2 +0 -0
  497. package/dist/fonts/fa-solid-900.ttf +0 -0
  498. package/dist/fonts/fa-solid-900.woff2 +0 -0
  499. package/dist/fonts/fa-thin-100.ttf +0 -0
  500. package/dist/fonts/fa-thin-100.woff2 +0 -0
  501. package/dist/fonts/fa-v4compatibility.ttf +0 -0
  502. package/dist/fonts/fa-v4compatibility.woff2 +0 -0
  503. package/dist/hooks/animationPropsUtils.d.ts +12 -0
  504. package/dist/hooks/animationPropsUtils.js +25 -49
  505. package/dist/hooks/htmlPropsUtils.d.ts +8 -0
  506. package/dist/hooks/htmlPropsUtils.js +54 -121
  507. package/dist/hooks/index.js +14 -73
  508. package/dist/hooks/popperPropsUtils.d.ts +12 -0
  509. package/dist/hooks/popperPropsUtils.js +25 -67
  510. package/dist/hooks/prefix.d.ts +1 -1
  511. package/dist/hooks/prefix.js +22 -55
  512. package/dist/hooks/treePropsUtils.d.ts +12 -0
  513. package/dist/hooks/treePropsUtils.js +24 -103
  514. package/dist/hooks/useChildrenInstance.d.ts +11 -0
  515. package/dist/hooks/useChildrenInstance.js +51 -60
  516. package/dist/hooks/useClassNames.d.ts +81 -0
  517. package/dist/hooks/useClassNames.js +284 -192
  518. package/dist/hooks/useClickOutside.js +37 -62
  519. package/dist/hooks/useCommonProps.js +17 -53
  520. package/dist/hooks/useComponentWillMount.js +4 -28
  521. package/dist/hooks/useControlled.d.ts +8 -0
  522. package/dist/hooks/useControlled.js +31 -37
  523. package/dist/hooks/useForceUpdate.d.ts +1 -0
  524. package/dist/hooks/useForceUpdate.js +16 -34
  525. package/dist/hooks/useUpdateEffect.js +6 -29
  526. package/dist/index.css +1 -58071
  527. package/dist/index.d.ts +8 -7
  528. package/dist/index.js +69 -234
  529. package/dist/theme-chalk/avatar/index.scss +50 -0
  530. package/dist/theme-chalk/build.scss +2 -0
  531. package/dist/theme-chalk/calendar/month-table.scss +1 -1
  532. package/dist/theme-chalk/carousel/index.scss +237 -0
  533. package/dist/theme-chalk/checkbox/index.scss +2 -2
  534. package/dist/theme-chalk/common/_var.scss +1 -0
  535. package/dist/theme-chalk/common/index.js +1 -2
  536. package/dist/theme-chalk/common/index.scss +2 -2
  537. package/dist/theme-chalk/date-picker/index.scss +1 -1
  538. package/dist/theme-chalk/dev.scss +2 -0
  539. package/dist/theme-chalk/display.scss +46 -0
  540. package/dist/theme-chalk/doc.scss +2 -0
  541. package/dist/theme-chalk/fonts/fa-brands-400.ttf +0 -0
  542. package/dist/theme-chalk/fonts/fa-brands-400.woff2 +0 -0
  543. package/dist/theme-chalk/fonts/fa-duotone-900.ttf +0 -0
  544. package/dist/theme-chalk/fonts/fa-duotone-900.woff2 +0 -0
  545. package/dist/theme-chalk/fonts/fa-light-300.ttf +0 -0
  546. package/dist/theme-chalk/fonts/fa-light-300.woff2 +0 -0
  547. package/dist/theme-chalk/fonts/fa-regular-400.ttf +0 -0
  548. package/dist/theme-chalk/fonts/fa-regular-400.woff2 +0 -0
  549. package/dist/theme-chalk/fonts/fa-solid-900.ttf +0 -0
  550. package/dist/theme-chalk/fonts/fa-solid-900.woff2 +0 -0
  551. package/dist/theme-chalk/fonts/fa-thin-100.ttf +0 -0
  552. package/dist/theme-chalk/fonts/fa-thin-100.woff2 +0 -0
  553. package/dist/theme-chalk/fonts/fa-v4compatibility.ttf +0 -0
  554. package/dist/theme-chalk/fonts/fa-v4compatibility.woff2 +0 -0
  555. package/dist/theme-chalk/form/index.scss +21 -2
  556. package/dist/theme-chalk/icon/fonts.scss +9 -0
  557. package/dist/theme-chalk/icon/index.scss +0 -9
  558. package/dist/theme-chalk/icon/scss/_shims.scss +318 -318
  559. package/dist/theme-chalk/icon/scss/_variables.scss +1 -3
  560. package/dist/theme-chalk/icon/scss/brands.scss +0 -5
  561. package/dist/theme-chalk/icon/scss/duotone.scss +0 -5
  562. package/dist/theme-chalk/icon/scss/fontawesome.scss +0 -8
  563. package/dist/theme-chalk/icon/scss/light.scss +2 -7
  564. package/dist/theme-chalk/icon/scss/regular.scss +2 -7
  565. package/dist/theme-chalk/icon/scss/solid.scss +2 -7
  566. package/dist/theme-chalk/icon/scss/thin.scss +2 -7
  567. package/dist/theme-chalk/icon/scss/v4-shims.scss +0 -8
  568. package/dist/theme-chalk/index.scss +3 -0
  569. package/dist/theme-chalk/input/input.scss +5 -3
  570. package/dist/theme-chalk/link/index.scss +0 -85
  571. package/dist/theme-chalk/loading/index.scss +5 -7
  572. package/dist/theme-chalk/message/index.scss +5 -5
  573. package/dist/theme-chalk/notification/index.scss +5 -5
  574. package/dist/theme-chalk/pagination/index.scss +1 -1
  575. package/dist/theme-chalk/tabs/index.scss +1 -1
  576. package/dist/types/common.d.ts +24 -0
  577. package/dist/types/common.js +1 -17
  578. package/dist/types/type.d.ts +5 -0
  579. package/dist/types/type.js +16 -28
  580. package/package.json +8 -23
  581. package/theme-chalk/avatar/index.scss +50 -0
  582. package/theme-chalk/badge/index.scss +63 -0
  583. package/theme-chalk/breadcrumb/index.scss +65 -0
  584. package/theme-chalk/build.scss +2 -0
  585. package/{dist/theme-chalk/bak/mixins/_button.scss → theme-chalk/button/_mixins.scss} +151 -58
  586. package/theme-chalk/button/button-group.scss +83 -0
  587. package/theme-chalk/button/button.scss +382 -0
  588. package/theme-chalk/button/index.scss +2 -0
  589. package/theme-chalk/calendar/date-picker.scss +112 -0
  590. package/theme-chalk/calendar/date-range-picker.scss +139 -0
  591. package/theme-chalk/calendar/date-table.scss +156 -0
  592. package/theme-chalk/calendar/index.scss +6 -0
  593. package/theme-chalk/calendar/month-table.scss +92 -0
  594. package/theme-chalk/calendar/picker-panel.scss +136 -0
  595. package/theme-chalk/calendar/year-table.scss +107 -0
  596. package/theme-chalk/card/index.scss +44 -0
  597. package/theme-chalk/carousel/index.scss +237 -0
  598. package/theme-chalk/cascader/cascader-panel.scss +184 -0
  599. package/theme-chalk/cascader/cascader.scss +239 -0
  600. package/theme-chalk/cascader/index.scss +2 -0
  601. package/theme-chalk/checkbox/index.scss +255 -0
  602. package/theme-chalk/checkbox-button/index.scss +117 -0
  603. package/theme-chalk/checkbox-group/index.scss +33 -0
  604. package/{dist/theme-chalk/bak/mixins/_col.scss → theme-chalk/col/_mixins.scss} +27 -3
  605. package/theme-chalk/col/index.scss +50 -0
  606. package/theme-chalk/collapse/index.scss +84 -0
  607. package/theme-chalk/color-picker/index.scss +340 -0
  608. package/{dist/theme-chalk/bak/mixins/config.scss → theme-chalk/common/_var.scss} +1 -0
  609. package/theme-chalk/common/index.scss +222 -0
  610. package/theme-chalk/common/index.ts +1 -0
  611. package/theme-chalk/date-picker/index.scss +253 -0
  612. package/theme-chalk/date-time-picker/index.scss +3 -0
  613. package/theme-chalk/date-time-picker/time-picker.scss +83 -0
  614. package/theme-chalk/date-time-picker/time-range-picker.scss +32 -0
  615. package/theme-chalk/descriptions/descriptions-item.scss +66 -0
  616. package/theme-chalk/descriptions/descriptions.scss +160 -0
  617. package/theme-chalk/descriptions/index.scss +2 -0
  618. package/theme-chalk/dev.scss +2 -0
  619. package/theme-chalk/dialog/index.scss +190 -0
  620. package/theme-chalk/display.scss +46 -0
  621. package/theme-chalk/divider/index.scss +51 -0
  622. package/theme-chalk/doc.scss +2 -0
  623. package/theme-chalk/drawer/index.scss +250 -0
  624. package/theme-chalk/dropdown/index.scss +147 -0
  625. package/theme-chalk/empty/index.scss +69 -0
  626. package/theme-chalk/fonts/fa-brands-400.ttf +0 -0
  627. package/theme-chalk/fonts/fa-brands-400.woff2 +0 -0
  628. package/theme-chalk/fonts/fa-duotone-900.ttf +0 -0
  629. package/theme-chalk/fonts/fa-duotone-900.woff2 +0 -0
  630. package/theme-chalk/fonts/fa-light-300.ttf +0 -0
  631. package/theme-chalk/fonts/fa-light-300.woff2 +0 -0
  632. package/theme-chalk/fonts/fa-regular-400.ttf +0 -0
  633. package/theme-chalk/fonts/fa-regular-400.woff2 +0 -0
  634. package/theme-chalk/fonts/fa-solid-900.ttf +0 -0
  635. package/theme-chalk/fonts/fa-solid-900.woff2 +0 -0
  636. package/theme-chalk/fonts/fa-thin-100.ttf +0 -0
  637. package/theme-chalk/fonts/fa-thin-100.woff2 +0 -0
  638. package/theme-chalk/fonts/fa-v4compatibility.ttf +0 -0
  639. package/theme-chalk/fonts/fa-v4compatibility.woff2 +0 -0
  640. package/theme-chalk/form/index.scss +378 -0
  641. package/theme-chalk/icon/fonts.scss +9 -0
  642. package/theme-chalk/icon/index.scss +44 -0
  643. package/theme-chalk/icon/scss/_animated.scss +205 -0
  644. package/theme-chalk/icon/scss/_bordered-pulled.scss +20 -0
  645. package/theme-chalk/icon/scss/_core.scss +33 -0
  646. package/theme-chalk/icon/scss/_duotone-icons.scss +12 -0
  647. package/theme-chalk/icon/scss/_fixed-width.scss +7 -0
  648. package/theme-chalk/icon/scss/_functions.scss +57 -0
  649. package/theme-chalk/icon/scss/_icons.scss +11 -0
  650. package/theme-chalk/icon/scss/_list.scss +20 -0
  651. package/theme-chalk/icon/scss/_mixins.scss +102 -0
  652. package/theme-chalk/icon/scss/_rotated-flipped.scss +31 -0
  653. package/theme-chalk/icon/scss/_screen-reader.scss +14 -0
  654. package/theme-chalk/icon/scss/_shims.scss +2606 -0
  655. package/theme-chalk/icon/scss/_sizing.scss +16 -0
  656. package/theme-chalk/icon/scss/_stacked.scss +32 -0
  657. package/theme-chalk/icon/scss/_variables.scss +9189 -0
  658. package/theme-chalk/icon/scss/brands.scss +27 -0
  659. package/theme-chalk/icon/scss/duotone.scss +72 -0
  660. package/theme-chalk/icon/scss/fontawesome.scss +13 -0
  661. package/theme-chalk/icon/scss/index.scss +15 -0
  662. package/theme-chalk/icon/scss/light.scss +21 -0
  663. package/theme-chalk/icon/scss/regular.scss +21 -0
  664. package/theme-chalk/icon/scss/solid.scss +21 -0
  665. package/theme-chalk/icon/scss/thin.scss +21 -0
  666. package/theme-chalk/icon/scss/v4-shims.scss +3 -0
  667. package/theme-chalk/index.scss +67 -0
  668. package/theme-chalk/input/_mixins.scss +16 -0
  669. package/theme-chalk/input/index.scss +3 -0
  670. package/theme-chalk/input/input-range.scss +208 -0
  671. package/theme-chalk/input/input.scss +577 -0
  672. package/theme-chalk/input-number/index.scss +172 -0
  673. package/theme-chalk/link/index.scss +99 -0
  674. package/theme-chalk/loading/index.scss +94 -0
  675. package/theme-chalk/message/index.scss +169 -0
  676. package/theme-chalk/message-box/index.scss +184 -0
  677. package/theme-chalk/notification/index.scss +155 -0
  678. package/theme-chalk/pagination/index.scss +515 -0
  679. package/theme-chalk/placeholder/index.scss +135 -0
  680. package/theme-chalk/popconfirm/index.scss +35 -0
  681. package/theme-chalk/popover/index.scss +54 -0
  682. package/theme-chalk/popper/index.scss +86 -0
  683. package/theme-chalk/progress/index.scss +155 -0
  684. package/theme-chalk/radio/index.scss +2 -0
  685. package/theme-chalk/radio/radio-button.scss +128 -0
  686. package/theme-chalk/radio/radio.scss +171 -0
  687. package/theme-chalk/radio-group/index.scss +31 -0
  688. package/theme-chalk/row/index.scss +30 -0
  689. package/theme-chalk/scrollbar/index.scss +103 -0
  690. package/theme-chalk/select/index.scss +244 -0
  691. package/theme-chalk/select/option-group.scss +54 -0
  692. package/theme-chalk/select/option.scss +63 -0
  693. package/theme-chalk/select/select-dropdown.scss +57 -0
  694. package/theme-chalk/switch/index.scss +273 -0
  695. package/theme-chalk/table/index.scss +714 -0
  696. package/theme-chalk/tabs/index.scss +620 -0
  697. package/theme-chalk/tag/index.scss +360 -0
  698. package/theme-chalk/time-line/_timeline-item.scss +90 -0
  699. package/theme-chalk/time-line/_timeline.scss +50 -0
  700. package/theme-chalk/time-line/index.scss +2 -0
  701. package/theme-chalk/time-picker/index.scss +109 -0
  702. package/theme-chalk/tooltip/index.scss +13 -0
  703. package/theme-chalk/transfer/index.scss +247 -0
  704. package/theme-chalk/transition/index.scss +756 -0
  705. package/theme-chalk/tree/_directory.scss +73 -0
  706. package/theme-chalk/tree/_tree.scss +401 -0
  707. package/theme-chalk/tree/index.scss +2 -0
  708. package/theme-chalk/tree-select/index.scss +25 -0
  709. package/theme-chalk/upload/index.scss +631 -0
  710. package/dist/Tree/utils/KeyCode.d.ts +0 -110
  711. package/dist/Tree/utils/KeyCode.js +0 -550
  712. package/dist/VirtualList/Filler.d.ts +0 -11
  713. package/dist/VirtualList/Filler.js +0 -78
  714. package/dist/VirtualList/Item.d.ts +0 -7
  715. package/dist/VirtualList/Item.js +0 -37
  716. package/dist/VirtualList/ScrollBar.d.ts +0 -43
  717. package/dist/VirtualList/ScrollBar.js +0 -216
  718. package/dist/VirtualList/VirtualList.d.ts +0 -33
  719. package/dist/VirtualList/VirtualList.js +0 -280
  720. package/dist/VirtualList/hooks/useChildren.d.ts +0 -3
  721. package/dist/VirtualList/hooks/useChildren.js +0 -46
  722. package/dist/VirtualList/hooks/useDiffItem.d.ts +0 -2
  723. package/dist/VirtualList/hooks/useDiffItem.js +0 -39
  724. package/dist/VirtualList/hooks/useFrameWheel.d.ts +0 -6
  725. package/dist/VirtualList/hooks/useFrameWheel.js +0 -72
  726. package/dist/VirtualList/hooks/useHeights.d.ts +0 -3
  727. package/dist/VirtualList/hooks/useHeights.js +0 -83
  728. package/dist/VirtualList/hooks/useLayoutEffect.d.ts +0 -3
  729. package/dist/VirtualList/hooks/useLayoutEffect.js +0 -30
  730. package/dist/VirtualList/hooks/useMobileTouchMove.d.ts +0 -2
  731. package/dist/VirtualList/hooks/useMobileTouchMove.js +0 -92
  732. package/dist/VirtualList/hooks/useOriginScroll.d.ts +0 -2
  733. package/dist/VirtualList/hooks/useOriginScroll.js +0 -56
  734. package/dist/VirtualList/hooks/useScrollTo.d.ts +0 -5
  735. package/dist/VirtualList/hooks/useScrollTo.js +0 -111
  736. package/dist/VirtualList/index.d.ts +0 -2
  737. package/dist/VirtualList/index.js +0 -39
  738. package/dist/VirtualList/interface.d.ts +0 -8
  739. package/dist/VirtualList/interface.js +0 -17
  740. package/dist/VirtualList/mock.d.ts +0 -6
  741. package/dist/VirtualList/mock.js +0 -29
  742. package/dist/VirtualList/utils/CacheMap.d.ts +0 -7
  743. package/dist/VirtualList/utils/CacheMap.js +0 -36
  744. package/dist/VirtualList/utils/algorithmUtil.d.ts +0 -6
  745. package/dist/VirtualList/utils/algorithmUtil.js +0 -81
  746. package/dist/VirtualList/utils/findDOMNode.d.ts +0 -2
  747. package/dist/VirtualList/utils/findDOMNode.js +0 -30
  748. package/dist/VirtualList/utils/isFirefox.d.ts +0 -2
  749. package/dist/VirtualList/utils/isFirefox.js +0 -26
  750. package/dist/VirtualList/utils/raf.d.ts +0 -5
  751. package/dist/VirtualList/utils/raf.js +0 -57
  752. package/dist/theme-chalk/bak/common/popup.scss +0 -47
  753. package/dist/theme-chalk/bak/common/transition.scss +0 -118
  754. package/dist/theme-chalk/bak/common/var.scss +0 -1476
  755. package/dist/theme-chalk/bak/mixins/_var.scss +0 -55
  756. package/dist/theme-chalk/bak/mixins/function.scss +0 -85
  757. package/dist/theme-chalk/bak/mixins/mixins.scss +0 -215
  758. package/dist/theme-chalk/bak/mixins/utils.scss +0 -39
@@ -1,84 +1,106 @@
1
- var __create = Object.create;
2
- var __defProp = Object.defineProperty;
3
- var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
4
- var __getOwnPropNames = Object.getOwnPropertyNames;
5
- var __getProtoOf = Object.getPrototypeOf;
6
- var __hasOwnProp = Object.prototype.hasOwnProperty;
7
- var __export = (target, all) => {
8
- for (var name in all)
9
- __defProp(target, name, { get: all[name], enumerable: true });
10
- };
11
- var __copyProps = (to, from, except, desc) => {
12
- if (from && typeof from === "object" || typeof from === "function") {
13
- for (let key of __getOwnPropNames(from))
14
- if (!__hasOwnProp.call(to, key) && key !== except)
15
- __defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });
16
- }
17
- return to;
18
- };
19
- var __toESM = (mod, isNodeMode, target) => (target = mod != null ? __create(__getProtoOf(mod)) : {}, __copyProps(
20
- // If the importer is in node compatibility mode or this is not an ESM
21
- // file that has been converted to a CommonJS file using a Babel-
22
- // compatible transform (i.e. "__esModule" has not been set), then set
23
- // "default" to the CommonJS "module.exports" for node compatibility.
24
- isNodeMode || !mod || !mod.__esModule ? __defProp(target, "default", { value: mod, enumerable: true }) : target,
25
- mod
26
- ));
27
- var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
1
+ function _typeof(o) { "@babel/helpers - typeof"; return _typeof = "function" == typeof Symbol && "symbol" == typeof Symbol.iterator ? function (o) { return typeof o; } : function (o) { return o && "function" == typeof Symbol && o.constructor === Symbol && o !== Symbol.prototype ? "symbol" : typeof o; }, _typeof(o); }
2
+ function _toConsumableArray(arr) { return _arrayWithoutHoles(arr) || _iterableToArray(arr) || _unsupportedIterableToArray(arr) || _nonIterableSpread(); }
3
+ function _nonIterableSpread() { throw new TypeError("Invalid attempt to spread non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method."); }
4
+ function _iterableToArray(iter) { if (typeof Symbol !== "undefined" && iter[Symbol.iterator] != null || iter["@@iterator"] != null) return Array.from(iter); }
5
+ function _arrayWithoutHoles(arr) { if (Array.isArray(arr)) return _arrayLikeToArray(arr); }
6
+ function ownKeys(e, r) { var t = Object.keys(e); if (Object.getOwnPropertySymbols) { var o = Object.getOwnPropertySymbols(e); r && (o = o.filter(function (r) { return Object.getOwnPropertyDescriptor(e, r).enumerable; })), t.push.apply(t, o); } return t; }
7
+ function _objectSpread(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? ownKeys(Object(t), !0).forEach(function (r) { _defineProperty(e, r, t[r]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys(Object(t)).forEach(function (r) { Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r)); }); } return e; }
8
+ function _defineProperty(obj, key, value) { key = _toPropertyKey(key); if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }
9
+ function _toPropertyKey(t) { var i = _toPrimitive(t, "string"); return "symbol" == _typeof(i) ? i : String(i); }
10
+ function _toPrimitive(t, r) { if ("object" != _typeof(t) || !t) return t; var e = t[Symbol.toPrimitive]; if (void 0 !== e) { var i = e.call(t, r || "default"); if ("object" != _typeof(i)) return i; throw new TypeError("@@toPrimitive must return a primitive value."); } return ("string" === r ? String : Number)(t); }
11
+ function _slicedToArray(arr, i) { return _arrayWithHoles(arr) || _iterableToArrayLimit(arr, i) || _unsupportedIterableToArray(arr, i) || _nonIterableRest(); }
12
+ function _nonIterableRest() { throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method."); }
13
+ function _unsupportedIterableToArray(o, minLen) { if (!o) return; if (typeof o === "string") return _arrayLikeToArray(o, minLen); var n = Object.prototype.toString.call(o).slice(8, -1); if (n === "Object" && o.constructor) n = o.constructor.name; if (n === "Map" || n === "Set") return Array.from(o); if (n === "Arguments" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return _arrayLikeToArray(o, minLen); }
14
+ function _arrayLikeToArray(arr, len) { if (len == null || len > arr.length) len = arr.length; for (var i = 0, arr2 = new Array(len); i < len; i++) arr2[i] = arr[i]; return arr2; }
15
+ function _iterableToArrayLimit(r, l) { var t = null == r ? null : "undefined" != typeof Symbol && r[Symbol.iterator] || r["@@iterator"]; if (null != t) { var e, n, i, u, a = [], f = !0, o = !1; try { if (i = (t = t.call(r)).next, 0 === l) { if (Object(t) !== t) return; f = !1; } else for (; !(f = (e = i.call(t)).done) && (a.push(e.value), a.length !== l); f = !0); } catch (r) { o = !0, n = r; } finally { try { if (!f && null != t.return && (u = t.return(), Object(u) !== u)) return; } finally { if (o) throw n; } } return a; } }
16
+ function _arrayWithHoles(arr) { if (Array.isArray(arr)) return arr; }
17
+ import cloneDeep from 'lodash/cloneDeep';
18
+ import find from 'lodash/find';
19
+ import isEqual from 'lodash/isEqual';
20
+ import last from 'lodash/last';
21
+ import { useCallback, useEffect, useRef, useState } from 'react';
22
+ import { isEmpty, isNotEmpty, randomCode } from "../Util";
23
+ export var useCascader = function useCascader(initialData, props, value) {
24
+ var menuProps = props.props,
25
+ showAllLevels = props.showAllLevels,
26
+ separator = props.separator;
27
+ var _menuProps$childrenKe = menuProps.childrenKey,
28
+ childrenKey = _menuProps$childrenKe === void 0 ? 'children' : _menuProps$childrenKe,
29
+ _menuProps$valueKey = menuProps.valueKey,
30
+ valueKey = _menuProps$valueKey === void 0 ? 'value' : _menuProps$valueKey,
31
+ _menuProps$labelKey = menuProps.labelKey,
32
+ labelKey = _menuProps$labelKey === void 0 ? 'label' : _menuProps$labelKey,
33
+ _menuProps$leafKey = menuProps.leafKey,
34
+ leafKey = _menuProps$leafKey === void 0 ? 'leaf' : _menuProps$leafKey,
35
+ lazy = menuProps.lazy;
36
+ // 展开层级数
37
+ var _useState = useState(0),
38
+ _useState2 = _slicedToArray(_useState, 2),
39
+ allLevel = _useState2[0],
40
+ setAllLevel = _useState2[1];
41
+ // 缓存每层组件类型
42
+ var _useState3 = useState([]),
43
+ _useState4 = _slicedToArray(_useState3, 2),
44
+ dataTypes = _useState4[0],
45
+ setDataTypes = _useState4[1];
46
+ // 缓存每层组件类型(同上)
47
+ var _dataTypes = useRef([]);
48
+ // 缓存每层平铺数据
49
+ var _useState5 = useState({}),
50
+ _useState6 = _slicedToArray(_useState5, 2),
51
+ optionData = _useState6[0],
52
+ setOptionData = _useState6[1];
53
+ // 缓存每层平铺数据(同上)
54
+ var _optionData = useRef({});
55
+ // 选中的数据组
56
+ var selectedValue = useRef([]);
57
+ // 选中的数据标签组
58
+ var selectedLabel = useRef([]);
59
+ // 选中的节点组
60
+ var selectedNode = useRef([]);
61
+ // 选中的节点组(多选)
62
+ var checkedNodes = useRef([]);
63
+ // 树组件扩展keys
64
+ var expandKeys = useRef({});
28
65
 
29
- // src/Cascader/useCascader.ts
30
- var useCascader_exports = {};
31
- __export(useCascader_exports, {
32
- useCascader: () => useCascader
33
- });
34
- module.exports = __toCommonJS(useCascader_exports);
35
- var import_cloneDeep = __toESM(require("lodash/cloneDeep"));
36
- var import_find = __toESM(require("lodash/find"));
37
- var import_isEqual = __toESM(require("lodash/isEqual"));
38
- var import_last = __toESM(require("lodash/last"));
39
- var import_react = require("react");
40
- var import_Util = require("../Util");
41
- var import_Utils = require("./Utils");
42
- var useCascader = (initialData, props, value) => {
43
- const { props: menuProps, treeMenuProps, showAllLevels, separator, expandedKeys = [] } = props;
44
- const { childrenKey = "children", valueKey = "value", labelKey = "label", leafKey = "leaf", lazy } = menuProps;
45
- const [allLevel, setAllLevel] = (0, import_react.useState)(0);
46
- const [treeData, setTreeData] = (0, import_react.useState)({});
47
- const [dataTypes, setDataTypes] = (0, import_react.useState)([]);
48
- const _dataTypes = (0, import_react.useRef)([]);
49
- const [optionData, setOptionData] = (0, import_react.useState)({});
50
- const _optionData = (0, import_react.useRef)({});
51
- const selectedValue = (0, import_react.useRef)([]);
52
- const selectedLabel = (0, import_react.useRef)([]);
53
- const selectedNode = (0, import_react.useRef)([]);
54
- const checkedNodes = (0, import_react.useRef)([]);
55
- const expandKeys = (0, import_react.useRef)({});
56
- const init = (0, import_react.useCallback)(
57
- (nodes = [], level, pid = "0") => {
58
- nodes.forEach((item) => {
59
- const __id = (0, import_Util.randomCode)(11);
60
- if (Object.prototype.hasOwnProperty.call(item, childrenKey)) {
61
- init(item[childrenKey], level + 1, __id);
62
- }
63
- if (_optionData.current[`level${level}`] === void 0) {
64
- _optionData.current[`level${level}`] = [];
65
- }
66
- Object.assign(item, {
67
- __level: level,
68
- __id,
69
- __pId: pid,
70
- __leaf: item[leafKey] ?? !Object.prototype.hasOwnProperty.call(item, childrenKey) ?? false,
71
- __checked: false,
72
- __indeterminate: false
73
- });
74
- _optionData.current[`level${level}`].push(item);
66
+ /**
67
+ * 初始化时分离不同层级的数据
68
+ * @param nodes
69
+ * @param level 层级
70
+ */
71
+ var init = useCallback(function () {
72
+ var nodes = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : [];
73
+ var level = arguments.length > 1 ? arguments[1] : undefined;
74
+ var pid = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : '0';
75
+ nodes.forEach(function (item) {
76
+ var _ref, _item$leafKey;
77
+ var __id = randomCode(11);
78
+ if (Object.prototype.hasOwnProperty.call(item, childrenKey)) {
79
+ init(item[childrenKey], level + 1, __id);
80
+ }
81
+ if (_optionData.current["level".concat(level)] === undefined) {
82
+ _optionData.current["level".concat(level)] = [];
83
+ }
84
+ Object.assign(item, {
85
+ __level: level,
86
+ __id: __id,
87
+ __pId: pid,
88
+ __leaf: (_ref = (_item$leafKey = item[leafKey]) !== null && _item$leafKey !== void 0 ? _item$leafKey : !Object.prototype.hasOwnProperty.call(item, childrenKey)) !== null && _ref !== void 0 ? _ref : false,
89
+ __checked: false,
90
+ __indeterminate: false
75
91
  });
76
- return _optionData.current;
77
- },
78
- [childrenKey, leafKey]
79
- );
80
- const setSelectedValue = (0, import_react.useCallback)((level, val) => {
81
- selectedValue.current = selectedValue.current.map((item, l) => {
92
+ _optionData.current["level".concat(level)].push(item);
93
+ });
94
+ return _optionData.current;
95
+ }, [childrenKey, leafKey]);
96
+
97
+ /**
98
+ * 设置任意层级节点的值
99
+ * @param level 层级
100
+ * @param value
101
+ */
102
+ var setSelectedValue = useCallback(function (level, val) {
103
+ selectedValue.current = selectedValue.current.map(function (item, l) {
82
104
  if (l < level) {
83
105
  return item;
84
106
  } else if (level === l) {
@@ -88,8 +110,14 @@ var useCascader = (initialData, props, value) => {
88
110
  }
89
111
  });
90
112
  }, []);
91
- const setSelectedLabel = (0, import_react.useCallback)((level, val) => {
92
- selectedLabel.current = selectedLabel.current.map((item, l) => {
113
+
114
+ /**
115
+ * 设置任意层级节点的标签
116
+ * @param level 层级
117
+ * @param value
118
+ */
119
+ var setSelectedLabel = useCallback(function (level, val) {
120
+ selectedLabel.current = selectedLabel.current.map(function (item, l) {
93
121
  if (l < level) {
94
122
  return item;
95
123
  } else if (level === l) {
@@ -99,402 +127,546 @@ var useCascader = (initialData, props, value) => {
99
127
  }
100
128
  });
101
129
  }, []);
102
- const setSelectedNode = (0, import_react.useCallback)(
103
- (level, node) => {
104
- selectedNode.current = selectedNode.current.map((item, l) => {
105
- if (l < level) {
106
- return item;
107
- } else if (level === l) {
108
- return node;
109
- } else {
110
- return null;
111
- }
112
- });
113
- setSelectedValue(level, node[valueKey]);
114
- setSelectedLabel(level, node[labelKey]);
115
- },
116
- [labelKey, setSelectedLabel, setSelectedValue, valueKey]
117
- );
118
- const getSelectedValue = (0, import_react.useCallback)(() => {
119
- const res = selectedValue.current.filter((item) => (0, import_Util.isNotEmpty)(item));
120
- return (0, import_cloneDeep.default)(res);
130
+
131
+ /**
132
+ * 设置任意层级节点的标签
133
+ * @param level 层级
134
+ * @param value
135
+ */
136
+ var setSelectedNode = useCallback(function (level, node) {
137
+ selectedNode.current = selectedNode.current.map(function (item, l) {
138
+ if (l < level) {
139
+ return item;
140
+ } else if (level === l) {
141
+ return node;
142
+ } else {
143
+ return null;
144
+ }
145
+ });
146
+ setSelectedValue(level, node[valueKey]);
147
+ setSelectedLabel(level, node[labelKey]);
148
+ }, [labelKey, setSelectedLabel, setSelectedValue, valueKey]);
149
+
150
+ /**
151
+ * 获取选中的值
152
+ * @param level 层级
153
+ * @returns
154
+ */
155
+ var getSelectedValue = useCallback(function () {
156
+ var res = selectedValue.current.filter(function (item) {
157
+ return isNotEmpty(item);
158
+ });
159
+ // if (showAllLevels) {
160
+ // return cloneDeep(res);
161
+ // } else {
162
+ // return last(res);
163
+ // }
164
+ return cloneDeep(res);
121
165
  }, []);
122
- const getValueOfLevel = (0, import_react.useCallback)((level) => {
123
- if ((0, import_Util.isNotEmpty)(level)) {
166
+
167
+ /**
168
+ * 获取任意层级选中的值
169
+ * @param level 层级
170
+ * @returns
171
+ */
172
+ var getValueOfLevel = useCallback(function (level) {
173
+ if (isNotEmpty(level)) {
124
174
  return selectedValue.current[level];
125
175
  }
126
176
  }, []);
127
- const getSelectedLabel = (0, import_react.useCallback)(
128
- (labelFormatter) => {
129
- const res = selectedLabel.current.filter((item) => (0, import_Util.isNotEmpty)(item));
130
- if (showAllLevels) {
131
- return labelFormatter ? labelFormatter(selectedNode.current.filter((item) => (0, import_Util.isNotEmpty)(item))) : res.join(separator);
132
- } else {
133
- return labelFormatter ? labelFormatter(selectedNode.current.slice(res.length - 1)) : (0, import_last.default)(res);
134
- }
135
- },
136
- [separator, showAllLevels]
137
- );
138
- const loopCheckedNodes = (0, import_react.useCallback)((level, node, checked) => {
139
- var _a, _b;
140
- _optionData.current = {
141
- ..._optionData.current,
142
- [`level${level}`]: (((_a = _optionData.current) == null ? void 0 : _a[`level${level}`]) ?? []).map((item) => {
143
- var _a2;
144
- if (item.__id === node.__id) {
145
- if (((_a2 = item == null ? void 0 : item.children) == null ? void 0 : _a2.length) > 0) {
146
- return {
147
- ...item,
148
- __checked: checked,
149
- __indeterminate: false,
150
- // 子节点状态同步
151
- children: item.children.map((child) => ({ ...child, __checked: checked, __indeterminate: false }))
152
- };
153
- }
154
- return { ...item, __checked: checked, __indeterminate: false };
177
+
178
+ /**
179
+ * 获取选中的文本
180
+ * @param level 层级
181
+ * @returns
182
+ */
183
+ var getSelectedLabel = useCallback(function (labelFormatter) {
184
+ var res = selectedLabel.current.filter(function (item) {
185
+ return isNotEmpty(item);
186
+ });
187
+ if (showAllLevels) {
188
+ return labelFormatter ? labelFormatter(selectedNode.current.filter(function (item) {
189
+ return isNotEmpty(item);
190
+ })) : res.join(separator);
191
+ } else {
192
+ return labelFormatter ? labelFormatter(selectedNode.current.slice(res.length - 1)) : last(res);
193
+ }
194
+ }, [separator, showAllLevels]);
195
+ var loopCheckedNodes = useCallback(function (level, node, checked) {
196
+ var _optionData$current, _optionData$current2, _node$children;
197
+ _optionData.current = _objectSpread(_objectSpread({}, _optionData.current), {}, _defineProperty({}, "level".concat(level), ((_optionData$current = (_optionData$current2 = _optionData.current) === null || _optionData$current2 === void 0 ? void 0 : _optionData$current2["level".concat(level)]) !== null && _optionData$current !== void 0 ? _optionData$current : []).map(function (item) {
198
+ // 当前节点选中状态变更
199
+ if (item.__id === node.__id) {
200
+ var _item$children;
201
+ if ((item === null || item === void 0 || (_item$children = item.children) === null || _item$children === void 0 ? void 0 : _item$children.length) > 0) {
202
+ return _objectSpread(_objectSpread({}, item), {}, {
203
+ __checked: checked,
204
+ __indeterminate: false,
205
+ // 子节点状态同步
206
+ children: item.children.map(function (child) {
207
+ return _objectSpread(_objectSpread({}, child), {}, {
208
+ __checked: checked,
209
+ __indeterminate: false
210
+ });
211
+ })
212
+ });
155
213
  }
156
- return item;
157
- })
158
- };
159
- if (((_b = node == null ? void 0 : node.children) == null ? void 0 : _b.length) > 0) {
160
- node.children.forEach((child) => {
214
+ return _objectSpread(_objectSpread({}, item), {}, {
215
+ __checked: checked,
216
+ __indeterminate: false
217
+ });
218
+ }
219
+ return item;
220
+ })));
221
+ // 递归将下一级节点列表同步成父级节点状态
222
+ if ((node === null || node === void 0 || (_node$children = node.children) === null || _node$children === void 0 ? void 0 : _node$children.length) > 0) {
223
+ node.children.forEach(function (child) {
161
224
  loopCheckedNodes(level + 1, child, checked);
162
225
  });
163
226
  }
164
227
  }, []);
165
- const getParent = (0, import_react.useCallback)(
166
- (level, node) => {
167
- var _a;
168
- const options = (_a = (0, import_Util.isNotEmpty)(optionData) ? optionData : _optionData.current) == null ? void 0 : _a[`level${level - 1}`];
169
- if (options) {
170
- const _parent = options.find((item) => item.__id === node.__pId);
171
- return _parent;
172
- }
173
- return null;
174
- },
175
- [optionData]
176
- );
177
- const loopGetParent = (0, import_react.useCallback)(
178
- (level, node, result = []) => {
179
- const _parent = getParent(level, node);
180
- if (_parent) {
181
- result.push(_parent);
182
- loopGetParent(level - 1, _parent, result);
183
- }
184
- return result;
185
- },
186
- [getParent]
187
- );
188
- const loopParentStatus = (0, import_react.useCallback)(
189
- (level, node, checked, indeterminate) => {
190
- var _a;
191
- const val = selectedValue.current[level - 1];
192
- let parentChecked = checked;
193
- let parentInterminate = indeterminate;
194
- if (val) {
195
- const parent = getParent(level, node);
196
- if (parent) {
197
- _optionData.current = {
198
- ..._optionData.current,
199
- [`level${level - 1}`]: (((_a = _optionData.current) == null ? void 0 : _a[`level${level - 1}`]) ?? []).map((item) => {
200
- if (item.__id === parent.__id) {
201
- const _children = item.children.map((child) => {
202
- if (child.__id === node.__id) {
203
- return { ...child, __checked: checked, __indeterminate: indeterminate };
204
- }
205
- return child;
228
+ var getParent = useCallback(function (level, node) {
229
+ var _ref2;
230
+ var options = (_ref2 = isNotEmpty(optionData) ? optionData : _optionData.current) === null || _ref2 === void 0 ? void 0 : _ref2["level".concat(level - 1)];
231
+ if (options) {
232
+ var _parent = options.find(function (item) {
233
+ return item.__id === node.__pId;
234
+ });
235
+ return _parent;
236
+ }
237
+ return null;
238
+ // let parent;
239
+ // if (_parent.length > 1) {
240
+ // _parent.find(item => item?.children?.some(child => child.__id === node.__id));
241
+ // } else if (_parent.length > 0) {
242
+ // parent = _parent[0];
243
+ // }
244
+ }, [optionData]);
245
+ var loopGetParent = useCallback(function (level, node) {
246
+ var result = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : [];
247
+ var _parent = getParent(level, node);
248
+ if (_parent) {
249
+ result.push(_parent);
250
+ loopGetParent(level - 1, _parent, result);
251
+ }
252
+ return result;
253
+ }, [getParent]);
254
+
255
+ /** 同步父级节点选中状态 */
256
+ var loopParentStatus = useCallback(function (level, node, checked, indeterminate) {
257
+ var val = selectedValue.current[level - 1];
258
+ var parentChecked = checked;
259
+ var parentInterminate = indeterminate;
260
+ if (val) {
261
+ var parent = getParent(level, node);
262
+ if (parent) {
263
+ var _optionData$current3, _optionData$current4;
264
+ _optionData.current = _objectSpread(_objectSpread({}, _optionData.current), {}, _defineProperty({}, "level".concat(level - 1), ((_optionData$current3 = (_optionData$current4 = _optionData.current) === null || _optionData$current4 === void 0 ? void 0 : _optionData$current4["level".concat(level - 1)]) !== null && _optionData$current3 !== void 0 ? _optionData$current3 : []).map(function (item) {
265
+ // 父级节点
266
+ if (item.__id === parent.__id) {
267
+ // 父级节点children里状态
268
+ var _children = item.children.map(function (child) {
269
+ if (child.__id === node.__id) {
270
+ return _objectSpread(_objectSpread({}, child), {}, {
271
+ __checked: checked,
272
+ __indeterminate: indeterminate
206
273
  });
207
- const checkCount = _children.filter((child) => child.__checked).length;
208
- const indeterminateCount = _children.filter((child) => child.__indeterminate).length;
209
- parentChecked = checkCount === _children.length;
210
- parentInterminate = indeterminateCount > 0 || checkCount > 0 && checkCount < _children.length;
211
- return {
212
- ...item,
213
- __checked: parentChecked,
214
- __indeterminate: parentInterminate,
215
- children: _children
216
- };
217
274
  }
218
- return item;
219
- })
220
- };
221
- loopParentStatus(level - 1, parent, parentChecked, parentInterminate);
222
- }
275
+ return child;
276
+ });
277
+ // 计算父级节点勾选和半选状态
278
+ var checkCount = _children.filter(function (child) {
279
+ return child.__checked;
280
+ }).length;
281
+ var indeterminateCount = _children.filter(function (child) {
282
+ return child.__indeterminate;
283
+ }).length;
284
+ parentChecked = checkCount === _children.length;
285
+ parentInterminate = indeterminateCount > 0 || checkCount > 0 && checkCount < _children.length;
286
+ return _objectSpread(_objectSpread({}, item), {}, {
287
+ __checked: parentChecked,
288
+ __indeterminate: parentInterminate,
289
+ children: _children
290
+ });
291
+ }
292
+ return item;
293
+ })));
294
+ loopParentStatus(level - 1, parent, parentChecked, parentInterminate);
223
295
  }
224
- },
225
- [getParent]
226
- );
227
- const loopGetCheckedNodes = (0, import_react.useCallback)((level, nodes, path, result) => {
228
- nodes == null ? void 0 : nodes.forEach((item) => {
229
- if (item.__checked && (!Object.prototype.hasOwnProperty.call(item, "children") || item.children.length === 0)) {
230
- result.push([...path, item]);
296
+ }
297
+ }, [getParent]);
298
+ var loopGetCheckedNodes = useCallback(function (level, nodes, path, result) {
299
+ nodes === null || nodes === void 0 || nodes.forEach(function (item) {
300
+ // 只有一级且选中
301
+ if (item.__checked && (!Object.prototype.hasOwnProperty.call(item, 'children') || item.children.length === 0)) {
302
+ result.push([].concat(_toConsumableArray(path), [item]));
231
303
  } else if (item.__checked || item.__indeterminate) {
232
- loopGetCheckedNodes(
233
- level + 1,
234
- item.children.map((child) => {
235
- var _a, _b;
236
- return (_b = (_a = _optionData.current) == null ? void 0 : _a[`level${level + 1}`]) == null ? void 0 : _b.find((node) => node.__id === child.__id);
237
- }) ?? [],
238
- [...path, item],
239
- result
240
- );
304
+ var _item$children$map;
305
+ loopGetCheckedNodes(level + 1, (_item$children$map = item.children.map(function (child) {
306
+ var _optionData$current5;
307
+ return (_optionData$current5 = _optionData.current) === null || _optionData$current5 === void 0 || (_optionData$current5 = _optionData$current5["level".concat(level + 1)]) === null || _optionData$current5 === void 0 ? void 0 : _optionData$current5.find(function (node) {
308
+ return node.__id === child.__id;
309
+ });
310
+ })) !== null && _item$children$map !== void 0 ? _item$children$map : [], [].concat(_toConsumableArray(path), [item]), result);
241
311
  }
242
312
  });
243
313
  return result;
244
314
  }, []);
245
- const getCheckedNodes = (0, import_react.useCallback)(() => {
246
- var _a, _b;
247
- const result = [];
248
- (_b = (_a = _optionData.current) == null ? void 0 : _a["level0"]) == null ? void 0 : _b.forEach((item) => {
249
- if (item.__checked && (!Object.prototype.hasOwnProperty.call(item, "children") || item.children.length === 0)) {
315
+ var getCheckedNodes = useCallback(function () {
316
+ var _optionData$current6;
317
+ var result = [];
318
+ (_optionData$current6 = _optionData.current) === null || _optionData$current6 === void 0 || (_optionData$current6 = _optionData$current6['level0']) === null || _optionData$current6 === void 0 || _optionData$current6.forEach(function (item) {
319
+ // 只有一级且选中
320
+ if (item.__checked && (!Object.prototype.hasOwnProperty.call(item, 'children') || item.children.length === 0)) {
250
321
  result.push([item]);
251
322
  } else if (item.__checked || item.__indeterminate) {
252
- loopGetCheckedNodes(1, item.children.map((child) => {
253
- var _a2, _b2;
254
- return (_b2 = (_a2 = _optionData.current) == null ? void 0 : _a2["level1"]) == null ? void 0 : _b2.find((node) => node.__id === child.__id);
255
- }) ?? [], [item], result);
323
+ var _item$children$map2;
324
+ loopGetCheckedNodes(1, (_item$children$map2 = item.children.map(function (child) {
325
+ var _optionData$current7;
326
+ return (_optionData$current7 = _optionData.current) === null || _optionData$current7 === void 0 || (_optionData$current7 = _optionData$current7['level1']) === null || _optionData$current7 === void 0 ? void 0 : _optionData$current7.find(function (node) {
327
+ return node.__id === child.__id;
328
+ });
329
+ })) !== null && _item$children$map2 !== void 0 ? _item$children$map2 : [], [item], result);
256
330
  }
257
331
  });
258
332
  return result;
259
333
  }, [loopGetCheckedNodes]);
260
- const setCheckedNode = (0, import_react.useCallback)(
261
- (level, node, checked) => {
262
- if ((0, import_Util.isEmpty)(_optionData.current)) {
263
- _optionData.current = optionData;
264
- }
265
- loopCheckedNodes(level, node, checked);
266
- loopParentStatus(level, node, checked, false);
267
- checkedNodes.current = getCheckedNodes();
268
- setOptionData(_optionData.current);
269
- },
270
- [getCheckedNodes, loopCheckedNodes, loopParentStatus, optionData]
271
- );
272
- const getCheckedValue = (0, import_react.useCallback)(() => {
273
- return checkedNodes.current.map((nodes) => nodes.map((item) => item[valueKey]));
334
+
335
+ /**
336
+ * 设置选中节点
337
+ * @param level 层级
338
+ * @param node 当前节点
339
+ * @param checked 是否选中
340
+ */
341
+ var setCheckedNode = useCallback(function (level, node, checked) {
342
+ if (isEmpty(_optionData.current)) {
343
+ _optionData.current = optionData;
344
+ }
345
+ loopCheckedNodes(level, node, checked);
346
+ loopParentStatus(level, node, checked, false);
347
+ checkedNodes.current = getCheckedNodes();
348
+ setOptionData(_optionData.current);
349
+ }, [getCheckedNodes, loopCheckedNodes, loopParentStatus, optionData]);
350
+ var getCheckedValue = useCallback(function () {
351
+ return checkedNodes.current.map(function (nodes) {
352
+ return nodes.map(function (item) {
353
+ return item[valueKey];
354
+ });
355
+ });
274
356
  }, [valueKey]);
275
- const getCheckedLabel = (0, import_react.useCallback)(() => {
276
- return checkedNodes.current.map((nodes) => nodes.map((item) => item[labelKey]));
357
+ var getCheckedLabel = useCallback(function () {
358
+ return checkedNodes.current.map(function (nodes) {
359
+ return nodes.map(function (item) {
360
+ return item[labelKey];
361
+ });
362
+ });
277
363
  }, [labelKey]);
278
- const clearSelected = (0, import_react.useCallback)(() => {
364
+
365
+ /** 清空值 */
366
+ var clearSelected = useCallback(function () {
279
367
  selectedValue.current = new Array(allLevel + 1).fill(null);
280
368
  selectedLabel.current = new Array(allLevel + 1).fill(null);
281
369
  selectedNode.current = new Array(allLevel + 1).fill(null);
282
370
  checkedNodes.current = [];
283
- for (let i = 0; i <= allLevel; i++) {
284
- _optionData.current = {
285
- ..._optionData.current,
286
- [`level${i}`]: _optionData.current[`level${i}`].map((item) => ({ ...item, __checked: false, __indeterminate: false }))
287
- };
371
+ for (var i = 0; i <= allLevel; i++) {
372
+ _optionData.current = _objectSpread(_objectSpread({}, _optionData.current), {}, _defineProperty({}, "level".concat(i), _optionData.current["level".concat(i)].map(function (item) {
373
+ return _objectSpread(_objectSpread({}, item), {}, {
374
+ __checked: false,
375
+ __indeterminate: false
376
+ });
377
+ })));
288
378
  }
289
379
  setOptionData(_optionData.current);
290
380
  }, [allLevel]);
291
- const getOptions = (0, import_react.useCallback)((level) => {
292
- var _a, _b, _c;
381
+
382
+ /**
383
+ * 获取任意节点的option数据
384
+ * @param level 层级
385
+ * @returns
386
+ */
387
+ var getOptions = useCallback(function (level) {
293
388
  if (level === 0) {
294
- return _optionData.current[`level${level}`];
389
+ return _optionData.current["level".concat(level)];
295
390
  } else {
296
- const parent = (_a = selectedNode.current) == null ? void 0 : _a[level - 1];
391
+ var _selectedNode$current;
392
+ // const options = optionData[`level${level - 1}`];
393
+ var parent = (_selectedNode$current = selectedNode.current) === null || _selectedNode$current === void 0 ? void 0 : _selectedNode$current[level - 1];
297
394
  if (parent) {
298
- return (_c = (_b = _optionData.current) == null ? void 0 : _b[`level${level}`]) == null ? void 0 : _c.filter((item) => item.__pId === parent.__id);
395
+ var _optionData$current8;
396
+ // console.log(_optionData.current[`level${level}`].filter(item => item.__pId === parent.__id));
397
+ return (_optionData$current8 = _optionData.current) === null || _optionData$current8 === void 0 || (_optionData$current8 = _optionData$current8["level".concat(level)]) === null || _optionData$current8 === void 0 ? void 0 : _optionData$current8.filter(function (item) {
398
+ return item.__pId === parent.__id;
399
+ });
400
+ // return (options.find(item => item.__id === parent.__id) ?? {})[childrenKey];
299
401
  }
300
402
  return null;
301
403
  }
302
404
  }, []);
303
- const storeOptionData = (0, import_react.useCallback)(
304
- (nodes, level, parent, { isTree, isCover }) => {
305
- let data = (0, import_cloneDeep.default)(_optionData.current);
306
- let newNodes = [];
307
- if (isTree) {
308
- const treeNodes = (0, import_Utils.reOrgTree)(nodes, level, menuProps, treeMenuProps, newNodes);
309
- setTreeData({
310
- ...treeData,
311
- [`level${level}`]: treeNodes
312
- });
313
- } else {
314
- newNodes = nodes.map((node) => ({
315
- ...node,
316
- __level: level,
317
- __id: (0, import_Util.randomCode)(11),
318
- __pId: (parent == null ? void 0 : parent.__id) ?? "0",
319
- __leaf: node[leafKey] ?? false,
320
- __checked: false,
321
- __indeterminate: false
322
- }));
323
- }
324
- if ((0, import_Util.isEmpty)(data[`level${level}`])) {
325
- data = {
326
- ...data,
327
- [`level${level}`]: newNodes
328
- };
329
- } else {
330
- data[`level${level}`] = isCover ? newNodes : data[`level${level}`].concat(newNodes);
331
- }
332
- if (level > 0 && parent) {
333
- const p = (0, import_find.default)(data[`level${level - 1}`], { __id: parent.__id });
334
- if (p) {
335
- if ((0, import_Util.isEmpty)(p == null ? void 0 : p[childrenKey])) {
336
- p[childrenKey] = newNodes;
337
- if (newNodes.length === 0) {
338
- p.__leaf = true;
339
- }
340
- } else {
341
- p[childrenKey] = isCover ? newNodes : p[childrenKey].concat(newNodes);
405
+
406
+ /**
407
+ * 懒加载时存储option
408
+ * @param nodes
409
+ * @param level 层级
410
+ */
411
+ var storeOptionData = useCallback(function (nodes, level, parent, _ref3) {
412
+ var isCover = _ref3.isCover;
413
+ var data = cloneDeep(_optionData.current);
414
+ var newNodes = [];
415
+ newNodes = nodes.map(function (node) {
416
+ var _parent$__id, _node$leafKey;
417
+ return _objectSpread(_objectSpread({}, node), {}, {
418
+ __level: level,
419
+ __id: randomCode(11),
420
+ __pId: (_parent$__id = parent === null || parent === void 0 ? void 0 : parent.__id) !== null && _parent$__id !== void 0 ? _parent$__id : '0',
421
+ __leaf: (_node$leafKey = node[leafKey]) !== null && _node$leafKey !== void 0 ? _node$leafKey : false,
422
+ __checked: false,
423
+ __indeterminate: false
424
+ });
425
+ });
426
+
427
+ // 新的层级
428
+ if (isEmpty(data["level".concat(level)])) {
429
+ data = _objectSpread(_objectSpread({}, data), {}, _defineProperty({}, "level".concat(level), newNodes));
430
+ } else {
431
+ // 已存在的层级,扩充数组
432
+ data["level".concat(level)] = isCover ? newNodes : data["level".concat(level)].concat(newNodes);
433
+ }
434
+
435
+ // 给非叶子节点添加子节点
436
+ if (level > 0 && parent) {
437
+ var p = find(data["level".concat(level - 1)], {
438
+ __id: parent.__id
439
+ });
440
+ if (p) {
441
+ if (isEmpty(p === null || p === void 0 ? void 0 : p[childrenKey])) {
442
+ p[childrenKey] = newNodes;
443
+ if (newNodes.length === 0) {
444
+ p.__leaf = true;
342
445
  }
446
+ } else {
447
+ p[childrenKey] = isCover ? newNodes : p[childrenKey].concat(newNodes);
343
448
  }
344
449
  }
345
- setOptionData(data);
346
- _optionData.current = data;
347
- if (level > allLevel) {
348
- setAllLevel(level);
349
- for (let i = 0; i < level - allLevel; i++) {
350
- selectedValue.current.push(null);
351
- selectedLabel.current.push(null);
352
- selectedNode.current.push(null);
353
- setDataTypes(_dataTypes.current = [..._dataTypes.current, isTree ? true : false]);
354
- }
355
- } else {
356
- selectedValue.current[level] = null;
357
- selectedLabel.current[level] = null;
358
- selectedNode.current[level] = null;
359
- const _types = (0, import_cloneDeep.default)(_dataTypes.current);
360
- _types[level] = isTree ? true : false;
361
- setDataTypes(_dataTypes.current = _types);
450
+ }
451
+ setOptionData(data);
452
+ _optionData.current = data;
453
+ if (level > allLevel) {
454
+ setAllLevel(level);
455
+ for (var i = 0; i < level - allLevel; i++) {
456
+ selectedValue.current.push(null);
457
+ selectedLabel.current.push(null);
458
+ selectedNode.current.push(null);
459
+ setDataTypes(_dataTypes.current);
362
460
  }
363
- return data[`level${level}`];
364
- },
365
- [allLevel, childrenKey, leafKey, menuProps, treeData, treeMenuProps]
366
- );
367
- const setNodeLeaf = (0, import_react.useCallback)(
368
- (node, isLeaf) => {
369
- const data = (0, import_cloneDeep.default)(optionData);
370
- const _node = (0, import_find.default)(data[`level${node["__level"]}`], { __id: node.__id });
371
- _node[leafKey] = isLeaf;
372
- setOptionData(data);
373
- _optionData.current = data;
374
- },
375
- [leafKey, optionData]
376
- );
377
- const getDataType = (0, import_react.useCallback)(
378
- (level) => {
379
- return lazy && dataTypes[level];
380
- },
381
- [dataTypes, lazy]
382
- );
383
- const getTreeData = (0, import_react.useCallback)(
384
- (level) => {
385
- return lazy && treeData[`level${level}`];
386
- },
387
- [lazy, treeData]
388
- );
389
- const getExpandedKeys = (0, import_react.useCallback)((level) => {
390
- return expandKeys.current[`level${level}`] ?? [];
461
+ } else {
462
+ selectedValue.current[level] = null;
463
+ selectedLabel.current[level] = null;
464
+ selectedNode.current[level] = null;
465
+ var _types = cloneDeep(_dataTypes.current);
466
+ _types[level] = false;
467
+ setDataTypes(_dataTypes.current = _types);
468
+ }
469
+ return data["level".concat(level)];
470
+ }, [allLevel, childrenKey, leafKey]);
471
+
472
+ /**
473
+ * 设置节点是否为叶子节点
474
+ * @param node
475
+ * @param isLeaf
476
+ */
477
+ var setNodeLeaf = useCallback(function (node, isLeaf) {
478
+ var data = cloneDeep(optionData);
479
+ var _node = find(data["level".concat(node['__level'])], {
480
+ __id: node.__id
481
+ });
482
+ _node[leafKey] = isLeaf;
483
+ setOptionData(data);
484
+ _optionData.current = data;
485
+ }, [leafKey, optionData]);
486
+
487
+ /**
488
+ * 获取数据类型
489
+ * @param level 层级
490
+ * @returns
491
+ */
492
+ var getDataType = useCallback(function (level) {
493
+ return lazy && dataTypes[level];
494
+ }, [dataTypes, lazy]);
495
+
496
+ /**
497
+ * 获取扩展key
498
+ * @param level 层级
499
+ * @returns
500
+ */
501
+ var getExpandedKeys = useCallback(function (level) {
502
+ var _expandKeys$current;
503
+ return (_expandKeys$current = expandKeys.current["level".concat(level)]) !== null && _expandKeys$current !== void 0 ? _expandKeys$current : [];
391
504
  }, []);
392
- const setExpandedKeys = (0, import_react.useCallback)((level, keys) => {
393
- expandKeys.current[`level${level}`] = keys;
505
+
506
+ /**
507
+ * 设置扩展key
508
+ * @param level 层级
509
+ * @param keys
510
+ * @returns
511
+ */
512
+ var setExpandedKeys = useCallback(function (level, keys) {
513
+ expandKeys.current["level".concat(level)] = keys;
394
514
  }, []);
395
- const handleSearch = (0, import_react.useCallback)(
396
- (searchText) => {
397
- const result = [];
398
- if ((0, import_Util.isNotEmpty)(searchText)) {
399
- const options = (0, import_cloneDeep.default)(_optionData.current);
400
- const regex = new RegExp(searchText, "gi");
401
- const loopGetMatchNodes = (level, nodes, path) => {
402
- for (let index = 0; index < nodes.length; index++) {
403
- const item = nodes[index];
404
- if (!Object.prototype.hasOwnProperty.call(item, "children") || item.children.length === 0) {
405
- result.push([...path, item]);
406
- } else if (item.children.length > 0) {
407
- loopGetMatchNodes(level + 1, item.children ?? [], [...path, item]);
408
- }
409
- nodes.splice(index, 1);
410
- options[`level${level}`].splice(
411
- options[`level${level}`].findIndex((node) => node.__id === item.__id),
412
- 1
413
- );
414
- index--;
515
+
516
+ /** 搜索 */
517
+ var handleSearch = useCallback(function (searchText) {
518
+ var result = [];
519
+ if (isNotEmpty(searchText)) {
520
+ var options = cloneDeep(_optionData.current);
521
+ var regex = new RegExp(searchText, 'gi');
522
+
523
+ /**
524
+ * 递归添加子节点
525
+ * @param level 层级
526
+ * @param nodes 子节点
527
+ * @param path 完整节点
528
+ * @returns
529
+ */
530
+ var loopGetMatchNodes = function loopGetMatchNodes(level, nodes, path) {
531
+ var _loop = function _loop(_index) {
532
+ var item = nodes[_index];
533
+ // 最后一级,结束递归
534
+ if (!Object.prototype.hasOwnProperty.call(item, 'children') || item.children.length === 0) {
535
+ result.push([].concat(_toConsumableArray(path), [item]));
536
+ } else if (item.children.length > 0) {
537
+ var _item$children2;
538
+ loopGetMatchNodes(level + 1, (_item$children2 = item.children) !== null && _item$children2 !== void 0 ? _item$children2 : [], [].concat(_toConsumableArray(path), [item]));
415
539
  }
416
- return result;
540
+ nodes.splice(_index, 1);
541
+ options["level".concat(level)].splice(options["level".concat(level)].findIndex(function (node) {
542
+ return node.__id === item.__id;
543
+ }), 1);
544
+ _index--;
545
+ index = _index;
417
546
  };
418
- for (let i = 0; i <= allLevel; i++) {
419
- for (let index = 0; index < options[`level${i}`].length; index++) {
420
- const item = options[`level${i}`][index];
421
- const res = null !== (item[labelKey] ?? item[valueKey].toString()).match(regex);
422
- if (res) {
423
- const current = i > 0 ? loopGetParent(i, item, [item]).reverse() : [item];
424
- options[`level${i}`].splice(index, 1);
425
- if (!Object.prototype.hasOwnProperty.call(item, "children") || item.children.length === 0) {
426
- result.push(current);
427
- } else if (item.children.length > 0) {
428
- loopGetMatchNodes(i + 1, item.children ?? [], current);
429
- }
430
- options[`level${i}`].splice(index, 1);
431
- options[`level${i}`].splice(
432
- options[`level${i}`].findIndex((node) => node.__id === item.__id),
433
- 1
434
- );
435
- index--;
547
+ for (var index = 0; index < nodes.length; index++) {
548
+ _loop(index);
549
+ }
550
+ return result;
551
+ };
552
+ for (var i = 0; i <= allLevel; i++) {
553
+ var _loop2 = function _loop2(_index2) {
554
+ var _item$labelKey;
555
+ var item = options["level".concat(i)][_index2];
556
+ var res = null !== ((_item$labelKey = item[labelKey]) !== null && _item$labelKey !== void 0 ? _item$labelKey : item[valueKey].toString()).match(regex);
557
+ if (res) {
558
+ var current = i > 0 ? loopGetParent(i, item, [item]).reverse() : [item];
559
+ options["level".concat(i)].splice(_index2, 1);
560
+ if (!Object.prototype.hasOwnProperty.call(item, 'children') || item.children.length === 0) {
561
+ result.push(current);
562
+ } else if (item.children.length > 0) {
563
+ var _item$children3;
564
+ loopGetMatchNodes(i + 1, (_item$children3 = item.children) !== null && _item$children3 !== void 0 ? _item$children3 : [], current);
436
565
  }
566
+ options["level".concat(i)].splice(_index2, 1);
567
+ options["level".concat(i)].splice(options["level".concat(i)].findIndex(function (node) {
568
+ return node.__id === item.__id;
569
+ }), 1);
570
+ _index2--;
437
571
  }
572
+ index = _index2;
573
+ };
574
+ for (var index = 0; index < options["level".concat(i)].length; index++) {
575
+ _loop2(index);
438
576
  }
439
577
  }
440
- return result;
441
- },
442
- [allLevel, labelKey, loopGetParent, valueKey]
443
- );
444
- const resetNodes = (0, import_react.useCallback)(() => {
445
- _optionData.current = Object.keys(_optionData.current).reduce((prev, item) => ({ ...prev, [item]: [] }), {});
578
+ }
579
+ return result;
580
+ }, [allLevel, labelKey, loopGetParent, valueKey]);
581
+ var resetNodes = useCallback(function () {
582
+ _optionData.current = Object.keys(_optionData.current).reduce(function (prev, item) {
583
+ return _objectSpread(_objectSpread({}, prev), {}, _defineProperty({}, item, []));
584
+ }, {});
446
585
  setOptionData(_optionData.current);
586
+ // clearSelected();
447
587
  }, []);
448
- (0, import_react.useEffect)(() => {
449
- const data = init((0, import_cloneDeep.default)(initialData), 0);
588
+ useEffect(function () {
589
+ var data = init(cloneDeep(initialData), 0);
450
590
  setOptionData(data);
451
- const l = Object.keys(data).length;
591
+ var l = Object.keys(data).length;
452
592
  if (l > 0) {
453
593
  setAllLevel(l - 1);
454
594
  }
595
+ // selectedValue.current = new Array(l).fill(null);
596
+ // selectedLabel.current = new Array(l).fill(null);
597
+ // selectedNode.current = new Array(l).fill(null);
598
+
599
+ // selectedNode.current.splice(
600
+ // 0,
601
+ // value.length,
602
+ // ...value.map((item, i) => {
603
+ // const res = find(data[`level${i}`], { [valueKey]: item });
604
+ // return res ?? null;
605
+ // }),
606
+ // );
607
+ // selectedValue.current.splice(0, value.length, ...value);
608
+ // selectedLabel.current.splice(
609
+ // 0,
610
+ // value.length,
611
+ // ...selectedNode.current.map(item => {
612
+ // return item && item[labelKey] ? item[labelKey] : null;
613
+ // }),
614
+ // );
455
615
  setDataTypes(new Array(l).fill(null));
616
+ // eslint-disable-next-line react-hooks/exhaustive-deps
456
617
  }, [props.options]);
457
- const initSelectedValue = (_value) => {
458
- var _a, _b;
618
+ var initSelectedValue = function initSelectedValue(_value) {
619
+ var _selectedValue$curren, _selectedLabel$curren;
459
620
  selectedValue.current = new Array(allLevel + 1).fill(null);
460
621
  selectedLabel.current = new Array(allLevel + 1).fill(null);
461
622
  selectedNode.current = new Array(allLevel + 1).fill(null);
462
623
  if (_value.length > 0) {
463
- const _level = _value.length - 1;
464
- const res = (_b = (_a = _optionData.current) == null ? void 0 : _a[`level${_level}`]) == null ? void 0 : _b.filter((option) => option[valueKey] === _value[_level]);
465
- if ((res == null ? void 0 : res.length) > 1) {
466
- res.forEach((node) => {
467
- const parents = loopGetParent(node.__level, node, [node]);
468
- const path = parents.reverse().map((pa) => pa[valueKey]);
469
- if ((0, import_isEqual.default)(path, _value)) {
624
+ var _optionData$current9;
625
+ var _level = _value.length - 1;
626
+ var res = (_optionData$current9 = _optionData.current) === null || _optionData$current9 === void 0 || (_optionData$current9 = _optionData$current9["level".concat(_level)]) === null || _optionData$current9 === void 0 ? void 0 : _optionData$current9.filter(function (option) {
627
+ return option[valueKey] === _value[_level];
628
+ });
629
+ if ((res === null || res === void 0 ? void 0 : res.length) > 1) {
630
+ res.forEach(function (node) {
631
+ var parents = loopGetParent(node.__level, node, [node]);
632
+ var path = parents.reverse().map(function (pa) {
633
+ return pa[valueKey];
634
+ });
635
+ if (isEqual(path, _value)) {
470
636
  selectedNode.current = parents;
471
637
  }
472
638
  });
473
- } else if ((res == null ? void 0 : res.length) === 1) {
639
+ } else if ((res === null || res === void 0 ? void 0 : res.length) === 1) {
474
640
  selectedNode.current = loopGetParent(_level, res[0], res).reverse();
475
641
  }
476
642
  }
477
- selectedValue.current.splice(0, _value.length, ..._value);
478
- selectedLabel.current.splice(0, _value.length, ...selectedNode.current.map((item) => item && item[labelKey] ? item[labelKey] : null));
643
+ (_selectedValue$curren = selectedValue.current).splice.apply(_selectedValue$curren, [0, _value.length].concat(_toConsumableArray(_value)));
644
+ (_selectedLabel$curren = selectedLabel.current).splice.apply(_selectedLabel$curren, [0, _value.length].concat(_toConsumableArray(selectedNode.current.map(function (item) {
645
+ return item && item[labelKey] ? item[labelKey] : null;
646
+ }))));
479
647
  };
480
- (0, import_react.useEffect)(() => {
481
- var _a;
648
+ useEffect(function () {
482
649
  if (!lazy && allLevel >= 0) {
483
- if ((_a = props == null ? void 0 : props.props) == null ? void 0 : _a.multiple) {
484
- const _value = value.length > 0 ? value[0] : [];
650
+ var _props$props;
651
+ if (props !== null && props !== void 0 && (_props$props = props.props) !== null && _props$props !== void 0 && _props$props.multiple) {
652
+ var _value = value.length > 0 ? value[0] : [];
485
653
  initSelectedValue(_value);
486
- if ((0, import_Util.isEmpty)(_optionData.current)) {
487
- _optionData.current = (0, import_cloneDeep.default)(optionData);
654
+ if (isEmpty(_optionData.current)) {
655
+ _optionData.current = cloneDeep(optionData);
488
656
  }
489
- value.forEach((item) => {
490
- const { length } = item;
491
- const _level = length - 1;
492
- const res = _optionData.current[`level${_level}`].filter((option) => option[valueKey] === item[_level]);
657
+ value.forEach(function (item) {
658
+ var length = item.length;
659
+ var _level = length - 1;
660
+ var res = _optionData.current["level".concat(_level)].filter(function (option) {
661
+ return option[valueKey] === item[_level];
662
+ });
493
663
  if (res.length > 1) {
494
- res.forEach((node) => {
495
- const parents = loopGetParent(node.__level, node, [node]);
496
- const path = parents.reverse().map((pa) => pa[valueKey]);
497
- if ((0, import_isEqual.default)(path, item)) {
664
+ res.forEach(function (node) {
665
+ var parents = loopGetParent(node.__level, node, [node]);
666
+ var path = parents.reverse().map(function (pa) {
667
+ return pa[valueKey];
668
+ });
669
+ if (isEqual(path, item)) {
498
670
  loopCheckedNodes(_level, node, true);
499
671
  loopParentStatus(_level, node, true, false);
500
672
  }
@@ -510,105 +682,96 @@ var useCascader = (initialData, props, value) => {
510
682
  initSelectedValue(value);
511
683
  }
512
684
  }
685
+
686
+ // setDataTypes(new Array(allLevel).fill(null));
687
+ // eslint-disable-next-line react-hooks/exhaustive-deps
513
688
  }, [value, allLevel, props.options]);
514
- (0, import_react.useEffect)(() => {
515
- expandedKeys.forEach((keys, level) => {
516
- setExpandedKeys(level, keys);
517
- });
518
- }, [expandedKeys, setExpandedKeys]);
519
689
  return {
520
- // eslint-disable-next-line lines-around-comment
521
690
  /** 最高层级 */
522
- allLevel,
691
+ allLevel: allLevel,
523
692
  /** 选项数据 */
524
- optionData,
525
- /**
526
- * 懒加载时存储option
527
- * @param nodes
528
- * @param level 层级
693
+ optionData: optionData,
694
+ /**
695
+ * 懒加载时存储option
696
+ * @param nodes
697
+ * @param level 层级
529
698
  */
530
- storeOptionData,
531
- /**
532
- * 获取选中的值
533
- * @param level 层级
534
- * @returns
699
+ storeOptionData: storeOptionData,
700
+ /**
701
+ * 获取选中的值
702
+ * @param level 层级
703
+ * @returns
535
704
  */
536
- getSelectedValue,
537
- /**
538
- * 获取任意层级选中的值
539
- * @param level 层级
540
- * @returns
705
+ getSelectedValue: getSelectedValue,
706
+ /**
707
+ * 获取任意层级选中的值
708
+ * @param level 层级
709
+ * @returns
541
710
  */
542
- getValueOfLevel,
543
- /**
544
- * 获取选中的文本
545
- * @param level 层级
546
- * @returns
711
+ getValueOfLevel: getValueOfLevel,
712
+ /**
713
+ * 获取选中的文本
714
+ * @param level 层级
715
+ * @returns
547
716
  */
548
- getSelectedLabel,
549
- /**
550
- * 设置任意层级节点的标签
551
- * @param level 层级
552
- * @param value
717
+ getSelectedLabel: getSelectedLabel,
718
+ /**
719
+ * 设置任意层级节点的标签
720
+ * @param level 层级
721
+ * @param value
553
722
  */
554
- setSelectedNode,
555
- setSelectedValue,
556
- getSelectedNode: () => selectedNode.current,
557
- /**
558
- * 设置选中节点
559
- * @param level 层级
560
- * @param node 当前节点
561
- * @param checked 是否选中
723
+ setSelectedNode: setSelectedNode,
724
+ setSelectedValue: setSelectedValue,
725
+ getSelectedNode: function getSelectedNode() {
726
+ return selectedNode.current;
727
+ },
728
+ /**
729
+ * 设置选中节点
730
+ * @param level 层级
731
+ * @param node 当前节点
732
+ * @param checked 是否选中
562
733
  */
563
- setCheckedNode,
564
- getCheckedNodes: () => checkedNodes.current,
565
- getCheckedValue,
566
- getCheckedLabel,
567
- loopGetParent,
568
- /**
569
- * 获取任意节点的option数据
570
- * @param level 层级
571
- * @returns
734
+ setCheckedNode: setCheckedNode,
735
+ getCheckedNodes: function getCheckedNodes() {
736
+ return checkedNodes.current;
737
+ },
738
+ getCheckedValue: getCheckedValue,
739
+ getCheckedLabel: getCheckedLabel,
740
+ loopGetParent: loopGetParent,
741
+ /**
742
+ * 获取任意节点的option数据
743
+ * @param level 层级
744
+ * @returns
572
745
  */
573
- getOptions,
746
+ getOptions: getOptions,
574
747
  /** 清空值 */
575
- clearSelected,
576
- /**
577
- * 设置节点是否为叶子节点
578
- * @param node
579
- * @param isLeaf
580
- */
581
- setNodeLeaf,
582
- /**
583
- * 获取数据类型
584
- * @param level 层级
585
- * @returns
748
+ clearSelected: clearSelected,
749
+ /**
750
+ * 设置节点是否为叶子节点
751
+ * @param node
752
+ * @param isLeaf
586
753
  */
587
- getDataType,
588
- /**
589
- * 获取树数据
590
- * @param level 层级
591
- * @returns
754
+ setNodeLeaf: setNodeLeaf,
755
+ /**
756
+ * 获取数据类型
757
+ * @param level 层级
758
+ * @returns
592
759
  */
593
- getTreeData,
594
- /**
595
- * 获取扩展key
596
- * @param level 层级
597
- * @returns
760
+ getDataType: getDataType,
761
+ /**
762
+ * 获取扩展key
763
+ * @param level 层级
764
+ * @returns
598
765
  */
599
- getExpandedKeys,
600
- /**
601
- * 设置扩展key
602
- * @param level 层级
603
- * @param keys
604
- * @returns
766
+ getExpandedKeys: getExpandedKeys,
767
+ /**
768
+ * 设置扩展key
769
+ * @param level 层级
770
+ * @param keys
771
+ * @returns
605
772
  */
606
- setExpandedKeys,
607
- handleSearch,
608
- resetNodes
773
+ setExpandedKeys: setExpandedKeys,
774
+ handleSearch: handleSearch,
775
+ resetNodes: resetNodes
609
776
  };
610
- };
611
- // Annotate the CommonJS export names for ESM import in node:
612
- 0 && (module.exports = {
613
- useCascader
614
- });
777
+ };