@qsxy/element-plus-react 1.0.0-next.7 → 1.0.1

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