@qsxy/element-plus-react 1.0.2 → 2.0.0

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 (636) hide show
  1. package/dist/Affix/Affix.d.ts +4 -0
  2. package/dist/Affix/Affix.js +301 -0
  3. package/dist/Affix/index.d.ts +2 -0
  4. package/dist/Affix/index.js +1 -0
  5. package/dist/Affix/typings.d.ts +50 -0
  6. package/dist/Affix/typings.js +1 -0
  7. package/dist/Alert/Alert.d.ts +7 -0
  8. package/dist/Alert/Alert.js +98 -0
  9. package/dist/Alert/index.d.ts +2 -0
  10. package/dist/Alert/index.js +1 -0
  11. package/dist/Alert/typings.d.ts +45 -0
  12. package/dist/Alert/typings.js +1 -0
  13. package/dist/Anchor/Anchor.d.ts +6 -0
  14. package/dist/Anchor/Anchor.js +258 -0
  15. package/dist/Anchor/AnchorLink.d.ts +4 -0
  16. package/dist/Anchor/AnchorLink.js +77 -0
  17. package/dist/Anchor/element.d.ts +4 -0
  18. package/dist/Anchor/element.js +17 -0
  19. package/dist/Anchor/index.d.ts +3 -0
  20. package/dist/Anchor/index.js +2 -0
  21. package/dist/Anchor/typings.d.ts +101 -0
  22. package/dist/Anchor/typings.js +1 -0
  23. package/dist/Backtop/Backtop.d.ts +7 -0
  24. package/dist/Backtop/Backtop.js +153 -0
  25. package/dist/Backtop/index.d.ts +2 -0
  26. package/dist/Backtop/index.js +1 -0
  27. package/dist/Backtop/typings.d.ts +31 -0
  28. package/dist/Backtop/typings.js +1 -0
  29. package/dist/Button/Button.d.ts +2 -11
  30. package/dist/Button/Button.js +2 -6
  31. package/dist/Button/index.d.ts +1 -1
  32. package/dist/Calendar/Calendar.js +12 -8
  33. package/dist/Calendar/YearRangePanel.js +1 -1
  34. package/dist/Card/Card.js +5 -3
  35. package/dist/Carousel/typings.d.ts +1 -1
  36. package/dist/Cascader/Cascader.d.ts +3 -3
  37. package/dist/Cascader/Cascader.js +238 -166
  38. package/dist/Cascader/CascaderContext.d.ts +9 -3
  39. package/dist/Cascader/CascaderContext.js +3 -1
  40. package/dist/Cascader/CascaderDropdown.d.ts +4 -3
  41. package/dist/Cascader/CascaderDropdown.js +21 -10
  42. package/dist/Cascader/CascaderMenu.d.ts +2 -2
  43. package/dist/Cascader/CascaderMenu.js +56 -14
  44. package/dist/Cascader/CascaderPanel.d.ts +4 -0
  45. package/dist/Cascader/CascaderPanel.js +11 -0
  46. package/dist/Cascader/index.d.ts +4 -1
  47. package/dist/Cascader/index.js +2 -1
  48. package/dist/Cascader/typings.d.ts +45 -31
  49. package/dist/Cascader/useCascader.d.ts +14 -27
  50. package/dist/Cascader/useCascader.js +153 -59
  51. package/dist/Checkbox/Checkbox.js +3 -2
  52. package/dist/CheckboxGroup/CheckboxGroup.d.ts +11 -1
  53. package/dist/CheckboxGroup/CheckboxGroup.js +78 -19
  54. package/dist/Collapse/Collapse.d.ts +3 -3
  55. package/dist/Collapse/Collapse.js +71 -16
  56. package/dist/Collapse/CollapseContext.d.ts +3 -6
  57. package/dist/Collapse/CollapseContext.js +2 -4
  58. package/dist/Collapse/CollapseItem.d.ts +3 -3
  59. package/dist/Collapse/CollapseItem.js +93 -51
  60. package/dist/Collapse/CollapseTransition.js +11 -7
  61. package/dist/Collapse/index.d.ts +1 -1
  62. package/dist/Collapse/typings.d.ts +20 -5
  63. package/dist/ColorPicker/typings.d.ts +1 -1
  64. package/dist/ConfigProvider/ConfigProvider.js +2 -24
  65. package/dist/ConfigProvider/ConfigProviderContext.js +1 -1
  66. package/dist/ConfigProvider/typings.d.ts +1 -1
  67. package/dist/Container/Main.d.ts +1 -1
  68. package/dist/Container/typings.d.ts +1 -1
  69. package/dist/Countdown/Countdown.d.ts +4 -0
  70. package/dist/Countdown/Countdown.js +121 -0
  71. package/dist/Countdown/index.d.ts +2 -0
  72. package/dist/Countdown/index.js +1 -0
  73. package/dist/Countdown/typings.d.ts +52 -0
  74. package/dist/Countdown/typings.js +1 -0
  75. package/dist/Countdown/util.d.ts +14 -0
  76. package/dist/Countdown/util.js +58 -0
  77. package/dist/DatePicker/DatePicker.js +9 -6
  78. package/dist/DatePicker/DateRangePicker.js +7 -6
  79. package/dist/DatePicker/typings.d.ts +0 -13
  80. package/dist/DateTimePicker/DateTimePicker.js +29 -19
  81. package/dist/Dialog/Dialog.d.ts +2 -13
  82. package/dist/Dialog/Dialog.js +143 -160
  83. package/dist/Dialog/DialogBody.js +3 -38
  84. package/dist/Dialog/DialogContext.d.ts +0 -7
  85. package/dist/Dialog/DialogContext.js +1 -5
  86. package/dist/Dialog/DialogHeader.js +2 -2
  87. package/dist/Dialog/typings.d.ts +43 -28
  88. package/dist/Dialog/useDraggable.d.ts +2 -1
  89. package/dist/Dialog/useDraggable.js +34 -9
  90. package/dist/Drawer/Drawer.d.ts +2 -13
  91. package/dist/Drawer/Drawer.js +115 -137
  92. package/dist/Drawer/DrawerBody.js +7 -8
  93. package/dist/Drawer/DrawerFooter.js +7 -7
  94. package/dist/Drawer/DrawerHeader.js +11 -8
  95. package/dist/Drawer/typings.d.ts +22 -6
  96. package/dist/Dropdown/Dropdown.js +5 -3
  97. package/dist/Dropdown/typings.d.ts +2 -1
  98. package/dist/Empty/Empty.js +16 -4
  99. package/dist/Form/Form.d.ts +4 -21
  100. package/dist/Form/Form.js +53 -25
  101. package/dist/Form/FormItem.d.ts +4 -52
  102. package/dist/Form/FormItem.js +633 -650
  103. package/dist/Form/FormItemContext.d.ts +10 -1
  104. package/dist/Form/FormItemContext.js +9 -1
  105. package/dist/Form/FormLabelWrap.d.ts +8 -0
  106. package/dist/Form/FormLabelWrap.js +103 -0
  107. package/dist/Form/{FieldContext.d.ts → InternalFormContext.d.ts} +2 -2
  108. package/dist/Form/{FieldContext.js → InternalFormContext.js} +5 -2
  109. package/dist/Form/List.d.ts +3 -3
  110. package/dist/Form/List.js +4 -4
  111. package/dist/Form/index.d.ts +4 -2
  112. package/dist/Form/index.js +4 -1
  113. package/dist/Form/typings.d.ts +61 -9
  114. package/dist/Form/typings.js +15 -1
  115. package/dist/Form/useForm.js +3 -3
  116. package/dist/Form/useWatch.js +1 -1
  117. package/dist/Input/Input.d.ts +2 -14
  118. package/dist/Input/Input.js +187 -140
  119. package/dist/Input/InputGroup.js +1 -1
  120. package/dist/Input/InputRange.js +7 -11
  121. package/dist/Input/TextArea.d.ts +1 -1
  122. package/dist/Input/TextArea.js +85 -30
  123. package/dist/Input/index.d.ts +1 -0
  124. package/dist/Input/index.js +2 -1
  125. package/dist/Input/typings.d.ts +38 -19
  126. package/dist/Input/utils.d.ts +1 -0
  127. package/dist/Input/utils.js +5 -1
  128. package/dist/InputNumber/InputNumber.js +408 -147
  129. package/dist/InputNumber/typings.d.ts +15 -5
  130. package/dist/Loading/Loading.js +5 -2
  131. package/dist/Menu/Menu.js +26 -2
  132. package/dist/Menu/MenuItem.js +4 -2
  133. package/dist/Menu/SubMenu.js +2 -2
  134. package/dist/Menu/SubMenuCollapseTransition.js +14 -9
  135. package/dist/Menu/typings.d.ts +5 -14
  136. package/dist/Message/Message.js +51 -23
  137. package/dist/Message/index.js +13 -13
  138. package/dist/Message/typings.d.ts +8 -5
  139. package/dist/MessageBox/MessageBox.js +75 -57
  140. package/dist/MessageBox/index.d.ts +2 -1
  141. package/dist/MessageBox/index.js +4 -2
  142. package/dist/MessageBox/typings.d.ts +3 -1
  143. package/dist/Notification/Notification.js +26 -19
  144. package/dist/Notification/typings.d.ts +1 -1
  145. package/dist/PageHeader/PageHeader.d.ts +8 -0
  146. package/dist/PageHeader/PageHeader.js +91 -0
  147. package/dist/PageHeader/index.d.ts +2 -0
  148. package/dist/PageHeader/index.js +1 -0
  149. package/dist/PageHeader/typings.d.ts +34 -0
  150. package/dist/PageHeader/typings.js +1 -0
  151. package/dist/Pagination/typings.d.ts +1 -1
  152. package/dist/Popover/Popover.js +7 -7
  153. package/dist/Popover/typings.d.ts +3 -3
  154. package/dist/Popper/Popper.js +49 -28
  155. package/dist/Popper/popperOptions.js +1 -0
  156. package/dist/Popper/typings.d.ts +2 -0
  157. package/dist/Radio/Radio.d.ts +2 -12
  158. package/dist/Radio/Radio.js +2 -6
  159. package/dist/Radio/RadioButton.d.ts +1 -1
  160. package/dist/Radio/RadioButton.js +4 -4
  161. package/dist/Radio/index.d.ts +1 -0
  162. package/dist/Radio/index.js +2 -1
  163. package/dist/Radio/typings.d.ts +1 -1
  164. package/dist/RadioGroup/RadioGroup.js +44 -16
  165. package/dist/RadioGroup/typings.d.ts +10 -0
  166. package/dist/Segmented/Segmented.d.ts +4 -0
  167. package/dist/Segmented/Segmented.js +208 -0
  168. package/dist/Segmented/index.d.ts +2 -0
  169. package/dist/Segmented/index.js +1 -0
  170. package/dist/Segmented/typings.d.ts +20 -0
  171. package/dist/Segmented/typings.js +5 -0
  172. package/dist/Select/SelectContext.d.ts +2 -1
  173. package/dist/Select/SelectContext.js +2 -1
  174. package/dist/Select/SelectCore.js +64 -15
  175. package/dist/Select/SelectDropdown.js +23 -15
  176. package/dist/Select/index.d.ts +1 -1
  177. package/dist/Select/typings.d.ts +26 -17
  178. package/dist/Select/useSelect.d.ts +35 -18
  179. package/dist/Select/useSelect.js +88 -33
  180. package/dist/Skeleton/typings.d.ts +1 -1
  181. package/dist/Slider/Button.d.ts +4 -0
  182. package/dist/Slider/Button.js +96 -0
  183. package/dist/Slider/Marker.d.ts +4 -0
  184. package/dist/Slider/Marker.js +31 -0
  185. package/dist/Slider/Slider.d.ts +4 -0
  186. package/dist/Slider/Slider.js +263 -0
  187. package/dist/Slider/SliderContext.d.ts +3 -0
  188. package/dist/Slider/SliderContext.js +2 -0
  189. package/dist/Slider/hooks/index.d.ts +5 -0
  190. package/dist/Slider/hooks/index.js +5 -0
  191. package/dist/Slider/hooks/useLifecycle.d.ts +5 -0
  192. package/dist/Slider/hooks/useLifecycle.js +50 -0
  193. package/dist/Slider/hooks/useMarks.d.ts +2 -0
  194. package/dist/Slider/hooks/useMarks.js +49 -0
  195. package/dist/Slider/hooks/useSlider.d.ts +38 -0
  196. package/dist/Slider/hooks/useSlider.js +227 -0
  197. package/dist/Slider/hooks/useSliderButton.d.ts +28 -0
  198. package/dist/Slider/hooks/useSliderButton.js +454 -0
  199. package/dist/Slider/hooks/useStops.d.ts +6 -0
  200. package/dist/Slider/hooks/useStops.js +47 -0
  201. package/dist/Slider/hooks/useWatch.d.ts +3 -0
  202. package/dist/Slider/hooks/useWatch.js +119 -0
  203. package/dist/Slider/index.d.ts +2 -0
  204. package/dist/Slider/index.js +1 -0
  205. package/dist/Slider/style/css.d.ts +1 -0
  206. package/dist/Slider/style/css.js +1 -0
  207. package/dist/Slider/style/index.d.ts +1 -0
  208. package/dist/Slider/style/index.js +1 -0
  209. package/dist/Slider/typings.d.ts +122 -0
  210. package/dist/Slider/typings.js +1 -0
  211. package/dist/Space/Space.d.ts +4 -0
  212. package/dist/Space/Space.js +125 -0
  213. package/dist/Space/SpaceItem.d.ts +7 -0
  214. package/dist/Space/SpaceItem.js +14 -0
  215. package/dist/Space/index.d.ts +3 -0
  216. package/dist/Space/index.js +2 -0
  217. package/dist/Space/typings.d.ts +26 -0
  218. package/dist/Space/typings.js +1 -0
  219. package/dist/Space/useSpace.d.ts +7 -0
  220. package/dist/Space/useSpace.js +105 -0
  221. package/dist/Statistic/Statistic.d.ts +4 -0
  222. package/dist/Statistic/Statistic.js +91 -0
  223. package/dist/Statistic/index.d.ts +2 -0
  224. package/dist/Statistic/index.js +1 -0
  225. package/dist/Statistic/typings.d.ts +28 -0
  226. package/dist/Statistic/typings.js +1 -0
  227. package/dist/Steps/Step.d.ts +4 -0
  228. package/dist/Steps/Step.js +247 -0
  229. package/dist/Steps/Steps.d.ts +5 -0
  230. package/dist/Steps/Steps.js +116 -0
  231. package/dist/Steps/index.d.ts +3 -0
  232. package/dist/Steps/index.js +2 -0
  233. package/dist/Steps/typings.d.ts +119 -0
  234. package/dist/Steps/typings.js +1 -0
  235. package/dist/Switch/Switch.js +2 -2
  236. package/dist/Switch/typings.d.ts +0 -1
  237. package/dist/Table/Table.js +17 -14
  238. package/dist/Table/TableBody.js +4 -4
  239. package/dist/Table/TableCell.js +53 -28
  240. package/dist/Table/TableColumn.d.ts +2 -2
  241. package/dist/Table/TableHeader.js +2 -2
  242. package/dist/Table/TableHeaderCell.js +2 -2
  243. package/dist/Table/hooks/useResize.js +0 -2
  244. package/dist/Table/hooks/useTable.d.ts +1 -1
  245. package/dist/Table/hooks/useTable.js +15 -10
  246. package/dist/Table/typings.d.ts +28 -12
  247. package/dist/Table/util.d.ts +1 -1
  248. package/dist/Table/util.js +8 -65
  249. package/dist/TableV2/index.d.ts +10 -0
  250. package/dist/TableV2/index.js +7 -0
  251. package/dist/TableV2/src/auto-resizer.d.ts +14 -0
  252. package/dist/TableV2/src/auto-resizer.js +1 -0
  253. package/dist/TableV2/src/cell.d.ts +21 -0
  254. package/dist/TableV2/src/cell.js +1 -0
  255. package/dist/TableV2/src/components/auto-resizer.d.ts +4 -0
  256. package/dist/TableV2/src/components/auto-resizer.js +32 -0
  257. package/dist/TableV2/src/components/cell.d.ts +4 -0
  258. package/dist/TableV2/src/components/cell.js +22 -0
  259. package/dist/TableV2/src/components/expand-icon.d.ts +12 -0
  260. package/dist/TableV2/src/components/expand-icon.js +29 -0
  261. package/dist/TableV2/src/components/header-cell.d.ts +4 -0
  262. package/dist/TableV2/src/components/header-cell.js +23 -0
  263. package/dist/TableV2/src/components/header-row.d.ts +17 -0
  264. package/dist/TableV2/src/components/header-row.js +41 -0
  265. package/dist/TableV2/src/components/header.d.ts +20 -0
  266. package/dist/TableV2/src/components/header.js +103 -0
  267. package/dist/TableV2/src/components/index.d.ts +10 -0
  268. package/dist/TableV2/src/components/index.js +7 -0
  269. package/dist/TableV2/src/components/row.d.ts +19 -0
  270. package/dist/TableV2/src/components/row.js +206 -0
  271. package/dist/TableV2/src/components/sort-icon.d.ts +9 -0
  272. package/dist/TableV2/src/components/sort-icon.js +14 -0
  273. package/dist/TableV2/src/composables/index.d.ts +6 -0
  274. package/dist/TableV2/src/composables/index.js +6 -0
  275. package/dist/TableV2/src/composables/use-auto-resize.d.ts +7 -0
  276. package/dist/TableV2/src/composables/use-auto-resize.js +55 -0
  277. package/dist/TableV2/src/composables/use-columns.d.ts +21 -0
  278. package/dist/TableV2/src/composables/use-columns.js +119 -0
  279. package/dist/TableV2/src/composables/use-data.d.ts +15 -0
  280. package/dist/TableV2/src/composables/use-data.js +62 -0
  281. package/dist/TableV2/src/composables/use-row.d.ts +34 -0
  282. package/dist/TableV2/src/composables/use-row.js +191 -0
  283. package/dist/TableV2/src/composables/use-scrollbar.d.ts +25 -0
  284. package/dist/TableV2/src/composables/use-scrollbar.js +117 -0
  285. package/dist/TableV2/src/composables/use-styles.d.ts +23 -0
  286. package/dist/TableV2/src/composables/use-styles.js +90 -0
  287. package/dist/TableV2/src/composables/utils.d.ts +3 -0
  288. package/dist/TableV2/src/composables/utils.js +29 -0
  289. package/dist/TableV2/src/constants.d.ts +18 -0
  290. package/dist/{Tree/Indent.js → TableV2/src/constants.js} +18 -21
  291. package/dist/TableV2/src/grid.d.ts +52 -0
  292. package/dist/TableV2/src/grid.js +1 -0
  293. package/dist/TableV2/src/header-cell.d.ts +13 -0
  294. package/dist/TableV2/src/header-cell.js +1 -0
  295. package/dist/TableV2/src/header-row.d.ts +10 -0
  296. package/dist/TableV2/src/header-row.js +1 -0
  297. package/dist/TableV2/src/header.d.ts +15 -0
  298. package/dist/TableV2/src/header.js +1 -0
  299. package/dist/TableV2/src/private.d.ts +1 -0
  300. package/dist/TableV2/src/private.js +1 -0
  301. package/dist/TableV2/src/renderers/cell.d.ts +14 -0
  302. package/dist/TableV2/src/renderers/cell.js +120 -0
  303. package/dist/TableV2/src/renderers/empty.d.ts +7 -0
  304. package/dist/TableV2/src/renderers/empty.js +11 -0
  305. package/dist/TableV2/src/renderers/footer.d.ts +7 -0
  306. package/dist/TableV2/src/renderers/footer.js +9 -0
  307. package/dist/TableV2/src/renderers/header-cell.d.ts +13 -0
  308. package/dist/TableV2/src/renderers/header-cell.js +92 -0
  309. package/dist/TableV2/src/renderers/header.d.ts +9 -0
  310. package/dist/TableV2/src/renderers/header.js +39 -0
  311. package/dist/TableV2/src/renderers/left-table.d.ts +32 -0
  312. package/dist/TableV2/src/renderers/left-table.js +15 -0
  313. package/dist/TableV2/src/renderers/main-table.d.ts +31 -0
  314. package/dist/TableV2/src/renderers/main-table.js +12 -0
  315. package/dist/TableV2/src/renderers/overlay.d.ts +3 -0
  316. package/dist/TableV2/src/renderers/overlay.js +9 -0
  317. package/dist/TableV2/src/renderers/right-table.d.ts +31 -0
  318. package/dist/TableV2/src/renderers/right-table.js +15 -0
  319. package/dist/TableV2/src/renderers/row.d.ts +11 -0
  320. package/dist/TableV2/src/renderers/row.js +96 -0
  321. package/dist/TableV2/src/row.d.ts +51 -0
  322. package/dist/TableV2/src/row.js +1 -0
  323. package/dist/TableV2/src/table-grid.d.ts +43 -0
  324. package/dist/TableV2/src/table-grid.js +283 -0
  325. package/dist/TableV2/src/table-v2.d.ts +31 -0
  326. package/dist/TableV2/src/table-v2.js +311 -0
  327. package/dist/TableV2/src/table.d.ts +196 -0
  328. package/dist/TableV2/src/table.js +1 -0
  329. package/dist/TableV2/src/tokens.d.ts +11 -0
  330. package/dist/TableV2/src/tokens.js +6 -0
  331. package/dist/TableV2/src/types.d.ts +94 -0
  332. package/dist/TableV2/src/types.js +1 -0
  333. package/dist/TableV2/src/use-table.d.ts +48 -0
  334. package/dist/TableV2/src/use-table.js +197 -0
  335. package/dist/TableV2/src/utils.d.ts +5 -0
  336. package/dist/TableV2/src/utils.js +47 -0
  337. package/dist/Tabs/Tabs.js +1 -1
  338. package/dist/Tabs/typings.d.ts +1 -3
  339. package/dist/Tag/Tag.js +1 -1
  340. package/dist/Tag/typings.d.ts +1 -1
  341. package/dist/Text/Text.d.ts +4 -0
  342. package/dist/Text/Text.js +84 -0
  343. package/dist/Text/index.d.ts +2 -0
  344. package/dist/Text/index.js +1 -0
  345. package/dist/Text/typings.d.ts +15 -0
  346. package/dist/Text/typings.js +1 -0
  347. package/dist/TimePicker/TimePicker.js +6 -7
  348. package/dist/TimePicker/TimePickerPanel.js +12 -2
  349. package/dist/TimePicker/TimePickerRange.js +19 -8
  350. package/dist/Tooltip/Tooltip.js +31 -8
  351. package/dist/Tooltip/typings.d.ts +4 -0
  352. package/dist/Tour/Content.d.ts +9 -0
  353. package/dist/Tour/Content.js +81 -0
  354. package/dist/Tour/Mask.d.ts +12 -0
  355. package/dist/Tour/Mask.js +100 -0
  356. package/dist/Tour/Step.d.ts +7 -0
  357. package/dist/Tour/Step.js +119 -0
  358. package/dist/Tour/Tour.d.ts +6 -0
  359. package/dist/Tour/Tour.js +237 -0
  360. package/dist/Tour/context.d.ts +4 -0
  361. package/dist/Tour/context.js +9 -0
  362. package/dist/Tour/helper.d.ts +39 -0
  363. package/dist/Tour/helper.js +286 -0
  364. package/dist/Tour/index.d.ts +3 -0
  365. package/dist/Tour/index.js +2 -0
  366. package/dist/Tour/typings.d.ts +318 -0
  367. package/dist/Tour/typings.js +38 -0
  368. package/dist/Transfer/List.js +58 -59
  369. package/dist/Transfer/ListItem.d.ts +2 -2
  370. package/dist/Transfer/Transfer.d.ts +2 -2
  371. package/dist/Transfer/Transfer.js +84 -70
  372. package/dist/Transfer/index.d.ts +1 -1
  373. package/dist/Transfer/operation.js +8 -10
  374. package/dist/Transfer/typings/index.d.ts +49 -38
  375. package/dist/Transfer/typings/list.d.ts +11 -11
  376. package/dist/Transfer/typings/listBody.d.ts +2 -2
  377. package/dist/Transition/Transition.d.ts +1 -0
  378. package/dist/Transition/Transition.js +8 -7
  379. package/dist/Tree/CollapseTransition.d.ts +7 -0
  380. package/dist/Tree/CollapseTransition.js +60 -0
  381. package/dist/Tree/Tree.d.ts +3 -140
  382. package/dist/Tree/Tree.js +351 -77
  383. package/dist/Tree/TreeContext.d.ts +9 -0
  384. package/dist/Tree/TreeContext.js +14 -0
  385. package/dist/Tree/TreeNode.d.ts +5 -3
  386. package/dist/Tree/TreeNode.js +321 -331
  387. package/dist/Tree/TreeNodeContent.d.ts +9 -0
  388. package/dist/Tree/TreeNodeContent.js +22 -0
  389. package/dist/Tree/index.d.ts +3 -8
  390. package/dist/Tree/index.js +1 -4
  391. package/dist/Tree/model/node.d.ts +62 -0
  392. package/dist/Tree/model/node.js +601 -0
  393. package/dist/Tree/model/tree-store.d.ts +52 -0
  394. package/dist/Tree/model/tree-store.js +510 -0
  395. package/dist/Tree/model/useDragNode.d.ts +30 -0
  396. package/dist/Tree/model/useDragNode.js +293 -0
  397. package/dist/Tree/model/useKeydown.d.ts +0 -0
  398. package/dist/Tree/model/useKeydown.js +104 -0
  399. package/dist/Tree/model/useNodeExpandEventBroadcast.d.ts +15 -0
  400. package/dist/Tree/model/useNodeExpandEventBroadcast.js +54 -0
  401. package/dist/Tree/model/util.d.ts +7 -0
  402. package/dist/Tree/model/util.js +24 -0
  403. package/dist/Tree/typings.d.ts +227 -114
  404. package/dist/TreeSelect/TreeSelect.d.ts +2 -10
  405. package/dist/TreeSelect/TreeSelect.js +90 -566
  406. package/dist/TreeSelect/TreeSelectOption.d.ts +6 -0
  407. package/dist/TreeSelect/TreeSelectOption.js +62 -0
  408. package/dist/TreeSelect/Utils.d.ts +10 -3
  409. package/dist/TreeSelect/Utils.js +37 -19
  410. package/dist/TreeSelect/cacheOptions.d.ts +9 -0
  411. package/dist/TreeSelect/cacheOptions.js +22 -0
  412. package/dist/TreeSelect/index.d.ts +0 -1
  413. package/dist/TreeSelect/typings.d.ts +11 -63
  414. package/dist/TreeSelect/useSelect.d.ts +78 -0
  415. package/dist/TreeSelect/useSelect.js +104 -0
  416. package/dist/TreeSelect/useTree.d.ts +125 -0
  417. package/dist/TreeSelect/useTree.js +285 -0
  418. package/dist/Upload/UploadContent.js +3 -1
  419. package/dist/Upload/ajax.js +3 -0
  420. package/dist/Upload/typings.d.ts +5 -1
  421. package/dist/Util/PopupManager.js +1 -1
  422. package/dist/Util/aria.d.ts +1 -1
  423. package/dist/Util/aria.js +12 -12
  424. package/dist/Util/base.d.ts +36 -6
  425. package/dist/Util/base.js +180 -13
  426. package/dist/Util/easings.d.ts +1 -0
  427. package/dist/Util/easings.js +8 -0
  428. package/dist/Util/error.d.ts +3 -0
  429. package/dist/Util/error.js +39 -0
  430. package/dist/Util/icons.d.ts +2 -0
  431. package/dist/Util/icons.js +15 -0
  432. package/dist/Util/index.d.ts +6 -2
  433. package/dist/Util/index.js +6 -2
  434. package/dist/Util/position.d.ts +9 -0
  435. package/dist/Util/position.js +53 -0
  436. package/dist/Util/raf.d.ts +4 -0
  437. package/dist/Util/raf.js +10 -0
  438. package/dist/Util/scroll.d.ts +9 -0
  439. package/dist/Util/scroll.js +72 -0
  440. package/dist/Util/throttleByRaf.d.ts +4 -0
  441. package/dist/Util/throttleByRaf.js +21 -0
  442. package/dist/VirtualList/builders/build-grid.d.ts +5 -0
  443. package/dist/VirtualList/builders/build-grid.js +561 -0
  444. package/dist/VirtualList/builders/build-list.d.ts +7 -0
  445. package/dist/VirtualList/builders/build-list.js +408 -0
  446. package/dist/VirtualList/components/dynamic-size-grid.d.ts +15 -0
  447. package/dist/VirtualList/components/dynamic-size-grid.js +242 -0
  448. package/dist/VirtualList/components/dynamic-size-list.d.ts +7 -0
  449. package/dist/VirtualList/components/dynamic-size-list.js +186 -0
  450. package/dist/VirtualList/components/fixed-size-grid.d.ts +4 -0
  451. package/dist/VirtualList/components/fixed-size-grid.js +161 -0
  452. package/dist/VirtualList/components/fixed-size-list.d.ts +7 -0
  453. package/dist/VirtualList/components/fixed-size-list.js +103 -0
  454. package/dist/VirtualList/components/scrollbar.d.ts +5 -0
  455. package/dist/VirtualList/components/scrollbar.js +272 -0
  456. package/dist/VirtualList/defaults.d.ts +26 -0
  457. package/dist/VirtualList/defaults.js +24 -0
  458. package/dist/VirtualList/hooks/use-cache.d.ts +1 -0
  459. package/dist/VirtualList/hooks/use-cache.js +16 -0
  460. package/dist/VirtualList/hooks/use-grid-touch.d.ts +8 -0
  461. package/dist/VirtualList/hooks/use-grid-touch.js +58 -0
  462. package/dist/VirtualList/hooks/use-grid-wheel.d.ts +12 -0
  463. package/dist/VirtualList/hooks/use-grid-wheel.js +48 -0
  464. package/dist/VirtualList/hooks/use-wheel.d.ts +12 -0
  465. package/dist/VirtualList/hooks/use-wheel.js +41 -0
  466. package/dist/VirtualList/index.d.ts +9 -0
  467. package/dist/VirtualList/index.js +6 -0
  468. package/dist/VirtualList/props.d.ts +95 -0
  469. package/dist/VirtualList/props.js +42 -0
  470. package/dist/VirtualList/types.d.ts +151 -0
  471. package/dist/VirtualList/types.js +1 -0
  472. package/dist/VirtualList/utils.d.ts +11 -0
  473. package/dist/VirtualList/utils.js +56 -0
  474. package/dist/Watermark/Watermark.d.ts +4 -0
  475. package/dist/Watermark/Watermark.js +257 -0
  476. package/dist/Watermark/helper.d.ts +50 -0
  477. package/dist/Watermark/helper.js +253 -0
  478. package/dist/Watermark/index.d.ts +2 -0
  479. package/dist/Watermark/index.js +1 -0
  480. package/dist/Watermark/typings.d.ts +93 -0
  481. package/dist/Watermark/typings.js +1 -0
  482. package/dist/config/Constants.d.ts +3 -0
  483. package/dist/config/Constants.js +8 -0
  484. package/dist/hooks/index.d.ts +2 -0
  485. package/dist/hooks/index.js +1 -0
  486. package/dist/hooks/popperPropsUtils.js +1 -1
  487. package/dist/hooks/treePropsUtils.d.ts +3 -3
  488. package/dist/hooks/treePropsUtils.js +2 -2
  489. package/dist/hooks/useClassNames.d.ts +1 -0
  490. package/dist/hooks/useClickOutside.js +25 -9
  491. package/dist/hooks/useCommonProps.d.ts +4 -0
  492. package/dist/hooks/useCommonProps.js +12 -3
  493. package/dist/hooks/useConfigProvider.d.ts +27 -0
  494. package/dist/hooks/useConfigProvider.js +78 -0
  495. package/dist/hooks/useLockscreen.d.ts +6 -0
  496. package/dist/hooks/useLockscreen.js +45 -0
  497. package/dist/hooks/useResizeObserver.d.ts +1 -1
  498. package/dist/hooks/useResizeObserver.js +7 -7
  499. package/dist/index.css +1 -1
  500. package/dist/index.d.ts +50 -22
  501. package/dist/index.js +27 -10
  502. package/dist/locale/en.d.ts +4 -1
  503. package/dist/locale/en.js +4 -1
  504. package/dist/locale/zhCn.d.ts +4 -1
  505. package/dist/locale/zhCn.js +4 -1
  506. package/package.json +5 -3
  507. package/theme-chalk/affix.scss +7 -0
  508. package/theme-chalk/alert.scss +115 -0
  509. package/theme-chalk/anchor-link.scss +45 -0
  510. package/theme-chalk/anchor.scss +93 -0
  511. package/theme-chalk/aside.scss +8 -8
  512. package/theme-chalk/backtop.scss +29 -0
  513. package/theme-chalk/breadcrumb-item.scss +58 -0
  514. package/theme-chalk/breadcrumb.scss +5 -61
  515. package/theme-chalk/button-group.scss +80 -80
  516. package/theme-chalk/button.scss +304 -304
  517. package/theme-chalk/calendar/date-table.scss +164 -164
  518. package/theme-chalk/cascader-panel.scss +57 -82
  519. package/theme-chalk/cascader.scss +206 -160
  520. package/theme-chalk/checkbox.scss +38 -0
  521. package/theme-chalk/collapse-item.scss +72 -0
  522. package/theme-chalk/collapse.scss +21 -76
  523. package/theme-chalk/color/index.scss +20 -20
  524. package/theme-chalk/common/popup.scss +47 -0
  525. package/theme-chalk/common/transition.scss +142 -142
  526. package/theme-chalk/common/var.scss +62 -6
  527. package/theme-chalk/container.scss +14 -14
  528. package/theme-chalk/dark/css-vars.scss +39 -39
  529. package/theme-chalk/dark/var.scss +225 -225
  530. package/theme-chalk/date-picker.scss +12 -12
  531. package/theme-chalk/dialog.scss +145 -137
  532. package/theme-chalk/drawer.scss +252 -246
  533. package/theme-chalk/footer.scss +12 -12
  534. package/theme-chalk/form-item.scss +437 -0
  535. package/theme-chalk/form.scss +23 -361
  536. package/theme-chalk/header.scss +12 -12
  537. package/theme-chalk/index.scss +21 -1
  538. package/theme-chalk/input/input-range.scss +2 -1
  539. package/theme-chalk/input/input.scss +458 -424
  540. package/theme-chalk/input-number.scss +82 -75
  541. package/theme-chalk/link.scss +87 -87
  542. package/theme-chalk/main.scss +14 -14
  543. package/theme-chalk/menu.scss +353 -353
  544. package/theme-chalk/message-box.scss +160 -133
  545. package/theme-chalk/message.scss +54 -128
  546. package/theme-chalk/mixins/_button.scss +224 -224
  547. package/theme-chalk/mixins/_col.scss +33 -33
  548. package/theme-chalk/mixins/_var.scss +67 -67
  549. package/theme-chalk/mixins/config.scss +5 -5
  550. package/theme-chalk/mixins/function.scss +99 -99
  551. package/theme-chalk/mixins/mixins.scss +237 -240
  552. package/theme-chalk/mixins/utils.scss +39 -39
  553. package/theme-chalk/notification.scss +96 -143
  554. package/theme-chalk/overlay.scss +17 -0
  555. package/theme-chalk/page-header.scss +60 -0
  556. package/theme-chalk/popper.scss +104 -104
  557. package/theme-chalk/radio-button.scss +169 -169
  558. package/theme-chalk/radio.scss +3 -3
  559. package/theme-chalk/segmented.scss +186 -0
  560. package/theme-chalk/select/index.scss +278 -272
  561. package/theme-chalk/slider.scss +212 -0
  562. package/theme-chalk/space.scss +20 -0
  563. package/theme-chalk/statistic.scss +35 -0
  564. package/theme-chalk/step.scss +320 -0
  565. package/theme-chalk/steps.scss +22 -0
  566. package/theme-chalk/switch.scss +300 -300
  567. package/theme-chalk/table-v2.scss +237 -0
  568. package/theme-chalk/table.scss +461 -482
  569. package/theme-chalk/tag.scss +181 -181
  570. package/theme-chalk/text.scss +48 -0
  571. package/theme-chalk/time-range-picker.scss +1 -1
  572. package/theme-chalk/tooltip.scss +2 -2
  573. package/theme-chalk/tour.scss +170 -0
  574. package/theme-chalk/transfer.scss +38 -12
  575. package/theme-chalk/transition.scss +34 -4
  576. package/theme-chalk/tree-select.scss +35 -19
  577. package/theme-chalk/tree.scss +136 -0
  578. package/theme-chalk/var.scss +83 -83
  579. package/theme-chalk/virtual-list.scss +40 -0
  580. package/dist/Input/Input.1.d.ts +0 -16
  581. package/dist/Input/Input.1.js +0 -376
  582. package/dist/Tree/DirectoryTree.d.ts +0 -15
  583. package/dist/Tree/DirectoryTree.js +0 -183
  584. package/dist/Tree/DropIndicator.d.ts +0 -8
  585. package/dist/Tree/DropIndicator.js +0 -34
  586. package/dist/Tree/Indent.d.ts +0 -9
  587. package/dist/Tree/MotionTreeNode.d.ts +0 -14
  588. package/dist/Tree/MotionTreeNode.js +0 -125
  589. package/dist/Tree/NodeList.d.ts +0 -50
  590. package/dist/Tree/NodeList.js +0 -301
  591. package/dist/Tree/RCTree.d.ts +0 -248
  592. package/dist/Tree/RCTree.js +0 -1216
  593. package/dist/Tree/contextTypes.d.ts +0 -69
  594. package/dist/Tree/contextTypes.js +0 -9
  595. package/dist/Tree/typings.tsx--bak +0 -245
  596. package/dist/Tree/useUnmount.d.ts +0 -5
  597. package/dist/Tree/useUnmount.js +0 -34
  598. package/dist/Tree/util.d.ts +0 -51
  599. package/dist/Tree/util.js +0 -303
  600. package/dist/Tree/utils/conductUtil.d.ts +0 -17
  601. package/dist/Tree/utils/conductUtil.js +0 -209
  602. package/dist/Tree/utils/dictUtil.d.ts +0 -13
  603. package/dist/Tree/utils/dictUtil.js +0 -75
  604. package/dist/Tree/utils/diffUtil.d.ts +0 -7
  605. package/dist/Tree/utils/diffUtil.js +0 -48
  606. package/dist/Tree/utils/dropIndicator.d.ts +0 -11
  607. package/dist/Tree/utils/dropIndicator.js +0 -36
  608. package/dist/Tree/utils/iconUtil.d.ts +0 -5
  609. package/dist/Tree/utils/iconUtil.js +0 -62
  610. package/dist/Tree/utils/keyUtil.d.ts +0 -2
  611. package/dist/Tree/utils/keyUtil.js +0 -3
  612. package/dist/Tree/utils/motion.d.ts +0 -10
  613. package/dist/Tree/utils/motion.js +0 -54
  614. package/dist/Tree/utils/pickAttrs.d.ts +0 -11
  615. package/dist/Tree/utils/pickAttrs.js +0 -51
  616. package/dist/Tree/utils/treeUtil.d.ts +0 -86
  617. package/dist/Tree/utils/treeUtil.js +0 -364
  618. package/theme-chalk/button/_mixins.scss +0 -317
  619. package/theme-chalk/button/button-group.scss +0 -83
  620. package/theme-chalk/button/button.scss +0 -382
  621. package/theme-chalk/button/index.scss +0 -2
  622. package/theme-chalk/button--bak/_mixins.scss +0 -317
  623. package/theme-chalk/button--bak/button-group.scss +0 -83
  624. package/theme-chalk/button--bak/button.scss +0 -382
  625. package/theme-chalk/button--bak/index.scss +0 -2
  626. package/theme-chalk/calendar/date-table.scss--bak +0 -156
  627. package/theme-chalk/input/input.scss--bak +0 -578
  628. package/theme-chalk/link.scss--bak +0 -99
  629. package/theme-chalk/popper.scss--bak +0 -86
  630. package/theme-chalk/radio-button.scss--bak +0 -128
  631. package/theme-chalk/select/index.scss--bak +0 -247
  632. package/theme-chalk/switch.scss--bak +0 -273
  633. package/theme-chalk/tag.scss--bak +0 -203
  634. package/theme-chalk/tree/_directory.scss +0 -73
  635. package/theme-chalk/tree/_tree.scss +0 -401
  636. package/theme-chalk/tree/index.scss +0 -2
@@ -1,8 +1,4 @@
1
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
- var _excluded = ["eventKey", "className", "style", "dragOver", "dragOverGapTop", "dragOverGapBottom", "isLeaf", "isStart", "isEnd", "expanded", "selected", "checked", "halfChecked", "loading", "domRef", "active", "data", "onMouseMove", "selectable"];
3
- function _extends() { _extends = Object.assign ? Object.assign.bind() : function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; return _extends.apply(this, arguments); }
4
- 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; }
5
- 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; }
6
2
  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; }
7
3
  function _toPropertyKey(t) { var i = _toPrimitive(t, "string"); return "symbol" == _typeof(i) ? i : String(i); }
8
4
  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); }
@@ -12,360 +8,354 @@ function _unsupportedIterableToArray(o, minLen) { if (!o) return; if (typeof o =
12
8
  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; }
13
9
  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; } }
14
10
  function _arrayWithHoles(arr) { if (Array.isArray(arr)) return arr; }
15
- function _objectWithoutProperties(source, excluded) { if (source == null) return {}; var target = _objectWithoutPropertiesLoose(source, excluded); var key, i; if (Object.getOwnPropertySymbols) { var sourceSymbolKeys = Object.getOwnPropertySymbols(source); for (i = 0; i < sourceSymbolKeys.length; i++) { key = sourceSymbolKeys[i]; if (excluded.indexOf(key) >= 0) continue; if (!Object.prototype.propertyIsEnumerable.call(source, key)) continue; target[key] = source[key]; } } return target; }
16
- function _objectWithoutPropertiesLoose(source, excluded) { if (source == null) return {}; var target = {}; var sourceKeys = Object.keys(source); var key, i; for (i = 0; i < sourceKeys.length; i++) { key = sourceKeys[i]; if (excluded.indexOf(key) >= 0) continue; target[key] = source[key]; } return target; }
17
- /* eslint-disable react-hooks/exhaustive-deps */
18
11
  import classNames from 'classnames';
19
- import React from 'react';
20
- import Indent from "./Indent";
21
- import { TreeContext, UnstableContext } from "./contextTypes";
22
- import getEntity from "./utils/keyUtil";
23
- import pickAttrs from "./utils/pickAttrs";
24
- import { convertNodePropsToEventData } from "./utils/treeUtil";
25
- var ICON_OPEN = 'open';
26
- var ICON_CLOSE = 'close';
27
- var defaultTitle = '---';
12
+ import React, { useCallback, useEffect, useImperativeHandle, useMemo, useRef, useState } from 'react';
13
+ import Checkbox from "../Checkbox/Checkbox";
14
+ import Icon from "../Icon/Icon";
15
+ import Transition from "../Transition/Transition";
16
+ import { isFunction, isString } from "../Util";
17
+ import { useClassNames } from "../hooks";
18
+ import { afterEnter as _afterEnter, afterLeave as _afterLeave, beforeEnter as _beforeEnter, beforeLeave as _beforeLeave, onEnter as _onEnter, onLeave as _onLeave } from "./CollapseTransition";
19
+ import useTreeContext, { TreeNodeExpandContext, useDragEventsContext } from "./TreeContext";
20
+ import TreeNodeContent from "./TreeNodeContent";
21
+ import { useNodeExpandEventBroadcast } from "./model/useNodeExpandEventBroadcast";
22
+ import { getNodeKey as getNodeKeyUtil, handleCurrentChange } from "./model/util";
28
23
  var TreeNode = function TreeNode(props) {
29
- var _unstableContext$node, _context$filterTreeNo, _classNames4;
30
- var eventKey = props.eventKey,
31
- className = props.className,
32
- style = props.style,
33
- dragOver = props.dragOver,
34
- dragOverGapTop = props.dragOverGapTop,
35
- dragOverGapBottom = props.dragOverGapBottom,
36
- isLeaf = props.isLeaf,
37
- isStart = props.isStart,
38
- isEnd = props.isEnd,
39
- expanded = props.expanded,
40
- selected = props.selected,
41
- checked = props.checked,
42
- halfChecked = props.halfChecked,
43
- loading = props.loading,
44
- domRef = props.domRef,
45
- active = props.active,
46
- data = props.data,
47
- onMouseMove = props.onMouseMove,
48
- selectable = props.selectable,
49
- otherProps = _objectWithoutProperties(props, _excluded);
50
- var context = React.useContext(TreeContext);
51
- var _ref = context || {},
52
- treeClassNames = _ref.classNames,
53
- styles = _ref.styles;
54
- var unstableContext = React.useContext(UnstableContext);
55
- var selectHandleRef = React.useRef(null);
56
- var _React$useState = React.useState(false),
57
- _React$useState2 = _slicedToArray(_React$useState, 2),
58
- dragNodeHighlight = _React$useState2[0],
59
- setDragNodeHighlight = _React$useState2[1];
24
+ var _props$node, _props$node3, _props$node5, _props$node8, _props$node10, _tree$props3, _props$props2, _props$node12, _props$node13, _props$node14, _props$node15, _props$node16, _props$node17, _props$node18, _props$node19, _props$node20, _props$node21, _props$node22, _props$node23, _props$node24, _props$node25, _props$node26;
25
+ var tree = useTreeContext();
26
+ var dragEvents = useDragEventsContext();
60
27
 
61
- // ======= State: Disabled State =======
62
- var isDisabled = !!(context.disabled || props.disabled || (_unstableContext$node = unstableContext.nodeDisabled) !== null && _unstableContext$node !== void 0 && _unstableContext$node.call(unstableContext, data));
63
- var isCheckable = React.useMemo(function () {
64
- // Return false if tree or treeNode is not checkable
65
- if (!context.checkable || props.checkable === false) {
66
- return false;
67
- }
68
- return context.checkable;
69
- }, [context.checkable, props.checkable]);
28
+ // 状态定义
29
+ var _useState = useState(false),
30
+ _useState2 = _slicedToArray(_useState, 2),
31
+ expanded = _useState2[0],
32
+ setExpanded = _useState2[1];
33
+ var _useState3 = useState(false),
34
+ _useState4 = _slicedToArray(_useState3, 2),
35
+ childNodeRendered = _useState4[0],
36
+ setChildNodeRendered = _useState4[1];
37
+ var _useState5 = useState(false),
38
+ _useState6 = _slicedToArray(_useState5, 2),
39
+ oldChecked = _useState6[0],
40
+ setOldChecked = _useState6[1];
41
+ var _useState7 = useState(),
42
+ _useState8 = _slicedToArray(_useState7, 2),
43
+ oldIndeterminate = _useState8[0],
44
+ setOldIndeterminate = _useState8[1];
70
45
 
71
- // ======= Event Handlers: Selection and Check =======
72
- var onSelect = function onSelect(e) {
73
- if (isDisabled) {
74
- return;
75
- }
76
- context.onNodeSelect(e, convertNodePropsToEventData(props));
77
- };
78
- var onCheck = function onCheck(e) {
79
- if (isDisabled) {
80
- return;
81
- }
82
- if (!isCheckable || props.disableCheckbox) {
83
- return;
84
- }
85
- context.onNodeCheck(e, convertNodePropsToEventData(props), !checked);
86
- };
46
+ // 引用
47
+ var nodeRef = useRef(null);
48
+ var transitionNodeRef = useRef(null);
49
+ var instanceRef = useRef(null);
87
50
 
88
- // ======= State: Selectable Check =======
89
- var isSelectable = React.useMemo(function () {
90
- // Ignore when selectable is undefined or null
91
- if (typeof selectable === 'boolean') {
92
- return selectable;
51
+ // 初始化检查
52
+ useEffect(function () {
53
+ setExpanded(props.node.expanded);
54
+ if (props.node.expanded) {
55
+ setChildNodeRendered(true);
93
56
  }
94
- return context.selectable;
95
- }, [selectable, context.selectable]);
96
- var onSelectorClick = function onSelectorClick(e) {
97
- // Click trigger before select/check operation
98
- context.onNodeClick(e, convertNodePropsToEventData(props));
99
- if (isSelectable) {
100
- onSelect(e);
101
- } else {
102
- onCheck(e);
57
+ }, [(_props$node = props.node) === null || _props$node === void 0 ? void 0 : _props$node.expanded]);
58
+ var ns = useClassNames('tree');
59
+ var _useNodeExpandEventBr = useNodeExpandEventBroadcast(props),
60
+ broadcastExpanded = _useNodeExpandEventBr.broadcastExpanded,
61
+ parentNodeMap = _useNodeExpandEventBr.parentNodeMap;
62
+ var childrenKey = useMemo(function () {
63
+ return tree.props.props['children'] || 'children';
64
+ }, [tree.props.props]);
65
+ var children = useMemo(function () {
66
+ var _props$node2;
67
+ return (_props$node2 = props.node) === null || _props$node2 === void 0 || (_props$node2 = _props$node2.data) === null || _props$node2 === void 0 ? void 0 : _props$node2[childrenKey];
68
+ }, [(_props$node3 = props.node) === null || _props$node3 === void 0 ? void 0 : _props$node3.data, childrenKey]);
69
+ var handleSelectChange = useCallback(function (checked, indeterminate) {
70
+ if (oldChecked !== checked || oldIndeterminate !== indeterminate) {
71
+ var _tree$props, _tree$props$onCheckCh, _props$node4;
72
+ tree === null || tree === void 0 || (_tree$props = tree.props) === null || _tree$props === void 0 || (_tree$props$onCheckCh = _tree$props.onCheckChange) === null || _tree$props$onCheckCh === void 0 || _tree$props$onCheckCh.call(_tree$props, (_props$node4 = props.node) === null || _props$node4 === void 0 ? void 0 : _props$node4.data, checked, indeterminate);
103
73
  }
104
- };
105
- var onSelectorDoubleClick = function onSelectorDoubleClick(e) {
106
- context.onNodeDoubleClick(e, convertNodePropsToEventData(props));
107
- };
108
- var onMouseEnter = function onMouseEnter(e) {
109
- context.onNodeMouseEnter(e, convertNodePropsToEventData(props));
110
- };
111
- var onMouseLeave = function onMouseLeave(e) {
112
- context.onNodeMouseLeave(e, convertNodePropsToEventData(props));
113
- };
114
- var onContextMenu = function onContextMenu(e) {
115
- context.onNodeContextMenu(e, convertNodePropsToEventData(props));
116
- };
74
+ setOldChecked(checked);
75
+ setOldIndeterminate(indeterminate);
76
+ }, [oldChecked, oldIndeterminate, (_props$node5 = props.node) === null || _props$node5 === void 0 ? void 0 : _props$node5.data, tree === null || tree === void 0 ? void 0 : tree.props]);
117
77
 
118
- // ======= Drag: Drag Enabled =======
119
- var isDraggable = React.useMemo(function () {
120
- return !!(context.draggable && (!context.draggable.nodeDraggable || context.draggable.nodeDraggable(data)));
121
- }, [context.draggable, data]);
78
+ // 监听子节点变化
79
+ useEffect(function () {
80
+ var _props$node6;
81
+ (_props$node6 = props.node) === null || _props$node6 === void 0 || _props$node6.updateChildren();
82
+ }, [children]);
122
83
 
123
- // ======= Drag: Drag Event Handlers =======
124
- var onDragStart = function onDragStart(e) {
125
- e.stopPropagation();
126
- setDragNodeHighlight(true);
127
- context.onNodeDragStart(e, props);
128
- try {
129
- // ie throw error
130
- // firefox-need-it
131
- e.dataTransfer.setData('text/plain', '');
132
- } catch (_unused) {
133
- // empty
134
- }
135
- };
136
- var onDragEnter = function onDragEnter(e) {
137
- e.preventDefault();
138
- e.stopPropagation();
139
- context.onNodeDragEnter(e, props);
140
- };
141
- var onDragOver = function onDragOver(e) {
142
- e.preventDefault();
143
- e.stopPropagation();
144
- context.onNodeDragOver(e, props);
145
- };
146
- var onDragLeave = function onDragLeave(e) {
147
- e.stopPropagation();
148
- context.onNodeDragLeave(e, props);
149
- };
150
- var onDragEnd = function onDragEnd(e) {
151
- e.stopPropagation();
152
- setDragNodeHighlight(false);
153
- context.onNodeDragEnd(e, props);
154
- };
155
- var onDrop = function onDrop(e) {
156
- e.preventDefault();
157
- e.stopPropagation();
158
- setDragNodeHighlight(false);
159
- context.onNodeDrop(e, props);
160
- };
84
+ // 监听不确定状态变化
85
+ useEffect(function () {
86
+ handleSelectChange(props.node.checked, props.node.indeterminate);
87
+ }, [props.node.indeterminate, props.node.checked]);
161
88
 
162
- // ======= Expand: Node Expansion =======
163
- var onExpand = function onExpand(e) {
164
- if (loading) {
165
- return;
166
- }
167
- context.onNodeExpand(e, convertNodePropsToEventData(props));
168
- };
89
+ // 监听选中状态变化
90
+ // useEffect(() => {
91
+ // if (props.node?.checked !== undefined) {
92
+ // handleSelectChange(props.node.checked, props.node.indeterminate);
93
+ // }
94
+ // }, [props.node?.checked]);
169
95
 
170
- // ======= State: Has Children =======
171
- var hasChildren = React.useMemo(function () {
172
- var _ref2 = getEntity(context.keyEntities, eventKey) || {},
173
- children = _ref2.children;
174
- return Boolean((children || []).length);
175
- }, [context.keyEntities, eventKey]);
96
+ // 监听子节点数量变化
97
+ useEffect(function () {
98
+ var _props$node7;
99
+ (_props$node7 = props.node) === null || _props$node7 === void 0 || _props$node7.reInitChecked();
100
+ }, [(_props$node8 = props.node) === null || _props$node8 === void 0 || (_props$node8 = _props$node8.childNodes) === null || _props$node8 === void 0 ? void 0 : _props$node8.length]);
176
101
 
177
- // ======= State: Leaf Check =======
178
- var memoizedIsLeaf = React.useMemo(function () {
179
- if (isLeaf === false) {
180
- return false;
102
+ // 监听展开状态变化
103
+ useEffect(function () {
104
+ var _props$node9;
105
+ if (((_props$node9 = props.node) === null || _props$node9 === void 0 ? void 0 : _props$node9.expanded) !== undefined) {
106
+ setExpanded(props.node.expanded);
107
+ if (props.node.expanded) {
108
+ setChildNodeRendered(true);
109
+ }
181
110
  }
182
- return isLeaf || !context.loadData && !hasChildren || context.loadData && props.loaded && !hasChildren;
183
- }, [isLeaf, context.loadData, hasChildren, props.loaded]);
111
+ }, [(_props$node10 = props.node) === null || _props$node10 === void 0 ? void 0 : _props$node10.expanded]);
184
112
 
185
- // ============== Effect ==============
186
- React.useEffect(function () {
187
- // Load data to avoid default expanded tree without data
188
- if (loading) {
113
+ // 工具函数
114
+ var getNodeKey = useCallback(function (node) {
115
+ var _tree$props2;
116
+ return getNodeKeyUtil(tree === null || tree === void 0 || (_tree$props2 = tree.props) === null || _tree$props2 === void 0 ? void 0 : _tree$props2.nodeKey, node === null || node === void 0 ? void 0 : node.data);
117
+ }, [tree === null || tree === void 0 || (_tree$props3 = tree.props) === null || _tree$props3 === void 0 ? void 0 : _tree$props3.nodeKey]);
118
+ var getNodeClass = useCallback(function (node) {
119
+ var _props$props;
120
+ var nodeClassFunc = (_props$props = props.props) === null || _props$props === void 0 ? void 0 : _props$props.class;
121
+ if (!nodeClassFunc) {
122
+ return {};
123
+ }
124
+ var className;
125
+ if (isFunction(nodeClassFunc)) {
126
+ className = nodeClassFunc(node === null || node === void 0 ? void 0 : node.data, node);
127
+ } else {
128
+ className = nodeClassFunc;
129
+ }
130
+ if (isString(className)) {
131
+ return _defineProperty({}, className, true);
132
+ } else {
133
+ return className;
134
+ }
135
+ }, [(_props$props2 = props.props) === null || _props$props2 === void 0 ? void 0 : _props$props2.class]);
136
+ var handleExpandIconClick = useCallback(function () {
137
+ if (props.node.isLeaf) {
189
138
  return;
190
139
  }
191
- // read from state to avoid loadData at same time
192
- if (typeof context.loadData === 'function' && expanded && !memoizedIsLeaf && !props.loaded) {
193
- // We needn't reload data when has children in sync logic
194
- // It's only needed in node expanded
195
- context.onNodeLoad(convertNodePropsToEventData(props));
140
+ if (expanded) {
141
+ var _tree$props$onNodeCol, _tree$props4;
142
+ (_tree$props$onNodeCol = (_tree$props4 = tree.props).onNodeCollapse) === null || _tree$props$onNodeCol === void 0 || _tree$props$onNodeCol.call(_tree$props4, props.node.data, props.node, instanceRef);
143
+ props.node.collapse();
144
+ tree.forceUpdate();
145
+ } else {
146
+ props.node.expand(function () {
147
+ var _props$onNodeExpand;
148
+ (_props$onNodeExpand = props.onNodeExpand) === null || _props$onNodeExpand === void 0 || _props$onNodeExpand.call(props, props.node.data, props.node, instanceRef);
149
+ tree.forceUpdate();
150
+ });
196
151
  }
197
- }, [loading, context.loadData, context.onNodeLoad, expanded, memoizedIsLeaf, props]);
198
-
199
- // ==================== Render: Drag Handler ====================
200
- var dragHandlerNode = React.useMemo(function () {
201
- var _context$draggable;
202
- if (!((_context$draggable = context.draggable) !== null && _context$draggable !== void 0 && _context$draggable.icon)) {
203
- return null;
152
+ }, [props, expanded, tree]);
153
+ var handleCheckChange = useCallback(function (value) {
154
+ var checkStrictly = tree === null || tree === void 0 ? void 0 : tree.props.checkStrictly;
155
+ var childNodes = props.node.childNodes;
156
+ if (!checkStrictly && childNodes.length) {
157
+ value = childNodes.some(function (node) {
158
+ return !node.isEffectivelyChecked;
159
+ });
204
160
  }
205
- return /*#__PURE__*/React.createElement("span", {
206
- className: "".concat(context.prefixCls, "-draggable-icon")
207
- }, context.draggable.icon);
208
- }, [context.draggable]);
209
-
210
- // ====================== Render: Switcher ======================
211
- var renderSwitcherIconDom = function renderSwitcherIconDom(isInternalLeaf) {
212
- var switcherIcon = props.switcherIcon || context.switcherIcon;
213
- // if switcherIconDom is null, no render switcher span
214
- if (typeof switcherIcon === 'function') {
215
- return switcherIcon(_objectSpread(_objectSpread({}, props), {}, {
216
- isLeaf: isInternalLeaf
217
- }));
161
+ props.node.setChecked(value, !checkStrictly);
162
+ tree.forceUpdate();
163
+ setTimeout(function () {
164
+ var _tree$props$onCheck, _tree$props5;
165
+ var store = tree.store;
166
+ (_tree$props$onCheck = (_tree$props5 = tree.props).onCheck) === null || _tree$props$onCheck === void 0 || _tree$props$onCheck.call(_tree$props5, props.node.data, {
167
+ checkedNodes: store.getCheckedNodes(),
168
+ checkedKeys: store.getCheckedKeys(),
169
+ halfCheckedNodes: store.getHalfCheckedNodes(),
170
+ halfCheckedKeys: store.getHalfCheckedKeys()
171
+ });
172
+ }, 0);
173
+ }, [tree, props.node]);
174
+ var handleClick = useCallback(function (e) {
175
+ var _tree$props$onNodeCli, _tree$props7;
176
+ handleCurrentChange(tree.store, tree.props.onCurrentChange, function () {
177
+ var _tree$props6;
178
+ var nodeKeyProp = tree === null || tree === void 0 || (_tree$props6 = tree.props) === null || _tree$props6 === void 0 ? void 0 : _tree$props6.nodeKey;
179
+ if (nodeKeyProp) {
180
+ var curNodeKey = getNodeKey(props.node);
181
+ tree.store.setCurrentNodeKey(curNodeKey);
182
+ } else {
183
+ tree.store.setCurrentNode(props.node);
184
+ }
185
+ });
186
+ if (tree.props.expandOnClickNode) {
187
+ handleExpandIconClick();
218
188
  }
219
- return switcherIcon;
220
- };
221
-
222
- // Switcher
223
- var renderSwitcher = function renderSwitcher() {
224
- if (memoizedIsLeaf) {
225
- // if switcherIconDom is null, no render switcher span
226
- var _switcherIconDom = renderSwitcherIconDom(true);
227
- return _switcherIconDom !== false ? /*#__PURE__*/React.createElement("span", {
228
- className: classNames("".concat(context.prefixCls, "-switcher"), "".concat(context.prefixCls, "-switcher-noop"))
229
- }, _switcherIconDom) : null;
189
+ if ((tree.props.checkOnClickNode || props.node.isLeaf && tree.props.checkOnClickLeaf && props.showCheckbox) && !props.node.disabled) {
190
+ handleCheckChange(!props.node.checked);
230
191
  }
231
- var switcherIconDom = renderSwitcherIconDom(false);
232
- return switcherIconDom !== false ? /*#__PURE__*/React.createElement("span", {
233
- onClick: onExpand,
234
- className: classNames("".concat(context.prefixCls, "-switcher"), "".concat(context.prefixCls, "-switcher_").concat(expanded ? ICON_OPEN : ICON_CLOSE))
235
- }, switcherIconDom) : null;
236
- };
237
-
238
- // ====================== Checkbox ======================
239
- var checkboxNode = React.useMemo(function () {
240
- if (!isCheckable) {
241
- return null;
192
+ (_tree$props$onNodeCli = (_tree$props7 = tree.props).onNodeClick) === null || _tree$props$onNodeCli === void 0 || _tree$props$onNodeCli.call(_tree$props7, props.node.data, props.node, instanceRef, e);
193
+ tree.forceUpdate();
194
+ }, [tree, props.node, props.showCheckbox, getNodeKey, handleExpandIconClick, handleCheckChange]);
195
+ var handleContextMenu = useCallback(function (event) {
196
+ var _tree$props8, _tree$props$onNodeCon, _tree$props9;
197
+ if ((_tree$props8 = tree.props) !== null && _tree$props8 !== void 0 && _tree$props8['onNodeContextmenu']) {
198
+ event.stopPropagation();
199
+ event.preventDefault();
242
200
  }
243
-
244
- // [Legacy] Custom element should be separate with `checkable` in future
245
- var $custom = typeof isCheckable !== 'boolean' ? isCheckable : null;
246
- return /*#__PURE__*/React.createElement("span", {
247
- className: classNames("".concat(context.prefixCls, "-checkbox"), _defineProperty(_defineProperty(_defineProperty({}, "".concat(context.prefixCls, "-checkbox-checked"), checked), "".concat(context.prefixCls, "-checkbox-indeterminate"), !checked && halfChecked), "".concat(context.prefixCls, "-checkbox-disabled"), isDisabled || props.disableCheckbox)),
248
- onClick: onCheck,
249
- role: "checkbox",
250
- "aria-checked": halfChecked ? 'mixed' : checked,
251
- "aria-disabled": isDisabled || props.disableCheckbox,
252
- "aria-label": "Select ".concat(typeof props.title === 'string' ? props.title : 'tree node')
253
- }, $custom);
254
- }, [isCheckable, checked, halfChecked, isDisabled, props.disableCheckbox, props.title]);
255
-
256
- // ============== State: Node State (Open/Close) ==============
257
- var nodeState = React.useMemo(function () {
258
- if (memoizedIsLeaf) {
259
- return null;
201
+ (_tree$props$onNodeCon = (_tree$props9 = tree.props).onNodeContextmenu) === null || _tree$props$onNodeCon === void 0 || _tree$props$onNodeCon.call(_tree$props9, event, props.node.data, props.node, instanceRef);
202
+ }, [tree, props.node]);
203
+ var handleChildNodeExpand = useCallback(function (nodeData, node, instance) {
204
+ var _tree$props$onNodeExp, _tree$props10;
205
+ broadcastExpanded(node);
206
+ (_tree$props$onNodeExp = (_tree$props10 = tree.props).onNodeExpand) === null || _tree$props$onNodeExp === void 0 || _tree$props$onNodeExp.call(_tree$props10, nodeData, node, instance);
207
+ tree.forceUpdate();
208
+ }, [broadcastExpanded, tree]);
209
+ var handleDragStart = useCallback(function (event) {
210
+ event.stopPropagation();
211
+ if (!tree.props.draggable) {
212
+ return;
260
213
  }
261
- return expanded ? ICON_OPEN : ICON_CLOSE;
262
- }, [memoizedIsLeaf, expanded]);
263
-
264
- // ==================== Render: Title + Icon ====================
265
- var iconNode = React.useMemo(function () {
266
- return /*#__PURE__*/React.createElement("span", {
267
- className: classNames(treeClassNames === null || treeClassNames === void 0 ? void 0 : treeClassNames.itemIcon, "".concat(context.prefixCls, "-iconEle"), "".concat(context.prefixCls, "-icon__").concat(nodeState || 'docu'), _defineProperty({}, "".concat(context.prefixCls, "-icon_loading"), loading)),
268
- style: styles === null || styles === void 0 ? void 0 : styles.itemIcon
214
+ dragEvents.treeNodeDragStart({
215
+ event: event,
216
+ treeNode: props
269
217
  });
270
- }, [context.prefixCls, nodeState, loading]);
271
-
272
- // =================== Drop Indicator ===================
273
- var dropIndicatorNode = React.useMemo(function () {
274
- var rootDraggable = Boolean(context.draggable);
275
- // allowDrop is calculated in Tree.tsx, there is no need for calc it here
276
- var showIndicator = !props.disabled && rootDraggable && context.dragOverNodeKey === eventKey;
277
- if (!showIndicator) {
278
- return null;
218
+ }, [tree.props.draggable, dragEvents, props]);
219
+ var handleDragOver = useCallback(function (event) {
220
+ event.stopPropagation();
221
+ event.preventDefault();
222
+ if (!tree.props.draggable) {
223
+ return;
279
224
  }
280
- return context.dropIndicatorRender({
281
- dropPosition: context.dropPosition,
282
- dropLevelOffset: context.dropLevelOffset,
283
- indent: context.indent,
284
- prefixCls: context.prefixCls,
285
- direction: context.direction
225
+ dragEvents.treeNodeDragOver({
226
+ event: event,
227
+ treeNode: {
228
+ $el: nodeRef.current,
229
+ node: props.node
230
+ }
286
231
  });
287
- }, [context.dropPosition, context.dropLevelOffset, context.indent, context.prefixCls, context.direction, context.draggable, context.dragOverNodeKey, context.dropIndicatorRender]);
288
-
289
- // Icon + Title
290
- var selectorNode = React.useMemo(function () {
291
- var _props$title = props.title,
292
- title = _props$title === void 0 ? defaultTitle : _props$title;
293
- var wrapClass = "".concat(context.prefixCls, "-node-content-wrapper");
294
-
295
- // Icon - Still show loading icon when loading without showIcon
296
- var $icon;
297
- if (context.showIcon) {
298
- var currentIcon = props.icon || context.icon;
299
- $icon = currentIcon ? /*#__PURE__*/React.createElement("span", {
300
- className: classNames(treeClassNames === null || treeClassNames === void 0 ? void 0 : treeClassNames.itemIcon, "".concat(context.prefixCls, "-iconEle"), "".concat(context.prefixCls, "-icon__customize")),
301
- style: styles === null || styles === void 0 ? void 0 : styles.itemIcon
302
- }, typeof currentIcon === 'function' ? currentIcon(props) : currentIcon) : iconNode;
303
- } else if (context.loadData && loading) {
304
- $icon = iconNode;
305
- }
306
-
307
- // Title
308
- var titleNode;
309
- if (typeof title === 'function') {
310
- titleNode = title(data);
311
- } else if (context.titleRender) {
312
- titleNode = context.titleRender(data);
313
- } else {
314
- titleNode = title;
232
+ }, [tree.props.draggable, dragEvents, props.node]);
233
+ var handleDrop = useCallback(function (event) {
234
+ event.stopPropagation();
235
+ event.preventDefault();
236
+ }, []);
237
+ var handleDragEnd = useCallback(function (event) {
238
+ event.stopPropagation();
239
+ if (!tree.props.draggable) {
240
+ return;
315
241
  }
316
- return /*#__PURE__*/React.createElement("span", {
317
- ref: selectHandleRef,
318
- title: typeof title === 'string' ? title : '',
319
- className: classNames(wrapClass, "".concat(wrapClass, "-").concat(nodeState || 'normal'), _defineProperty({}, "".concat(context.prefixCls, "-node-selected"), !isDisabled && (selected || dragNodeHighlight))),
320
- onMouseEnter: onMouseEnter,
321
- onMouseLeave: onMouseLeave,
322
- onContextMenu: onContextMenu,
323
- onClick: onSelectorClick,
324
- onDoubleClick: onSelectorDoubleClick
325
- }, $icon, /*#__PURE__*/React.createElement("span", {
326
- className: classNames("".concat(context.prefixCls, "-title"), treeClassNames === null || treeClassNames === void 0 ? void 0 : treeClassNames.itemTitle),
327
- style: styles === null || styles === void 0 ? void 0 : styles.itemTitle
328
- }, titleNode), dropIndicatorNode);
329
- }, [context.prefixCls, context.showIcon, props, context.icon, iconNode, context.titleRender, data, nodeState, onMouseEnter, onMouseLeave, onContextMenu, onSelectorClick, onSelectorDoubleClick]);
330
- var dataOrAriaAttributeProps = pickAttrs(otherProps, {
331
- aria: true,
332
- data: true
242
+ dragEvents.treeNodeDragEnd(event);
243
+ tree.forceUpdate();
244
+ }, [tree, dragEvents]);
245
+ useImperativeHandle(instanceRef, function () {
246
+ return {
247
+ handleExpandIconClick: handleExpandIconClick
248
+ };
333
249
  });
334
- var _ref3 = getEntity(context.keyEntities, eventKey) || {},
335
- level = _ref3.level;
336
- var isEndNode = isEnd[isEnd.length - 1];
337
- var draggableWithoutDisabled = !isDisabled && isDraggable;
338
- var dragging = context.draggingNodeKey === eventKey;
339
- var ariaSelected = selectable !== undefined ? {
340
- 'aria-selected': !!selectable
341
- } : undefined;
342
- return /*#__PURE__*/React.createElement("div", _extends({
343
- ref: domRef,
250
+ var contentPaddingLeft = useMemo(function () {
251
+ var _props$node11;
252
+ return "".concat((((_props$node11 = props.node) === null || _props$node11 === void 0 ? void 0 : _props$node11.level) - 1) * tree.props.indent, "px");
253
+ }, [(_props$node12 = props.node) === null || _props$node12 === void 0 ? void 0 : _props$node12.level, tree.props.indent]);
254
+ return /*#__PURE__*/React.createElement(TreeNodeExpandContext.Provider, {
255
+ value: {
256
+ parentNodeMap: parentNodeMap
257
+ }
258
+ }, /*#__PURE__*/React.createElement("div", {
259
+ ref: nodeRef,
260
+ className: classNames([ns.b('node'), ns.is({
261
+ expanded: expanded,
262
+ current: (_props$node13 = props.node) === null || _props$node13 === void 0 ? void 0 : _props$node13.isCurrent,
263
+ hidden: !((_props$node14 = props.node) !== null && _props$node14 !== void 0 && _props$node14.visible),
264
+ focusable: !((_props$node15 = props.node) !== null && _props$node15 !== void 0 && _props$node15.disabled),
265
+ checked: !((_props$node16 = props.node) !== null && _props$node16 !== void 0 && _props$node16.disabled) && ((_props$node17 = props.node) === null || _props$node17 === void 0 ? void 0 : _props$node17.checked)
266
+ }), getNodeClass(props.node)]),
344
267
  role: "treeitem",
345
- "aria-expanded": isLeaf ? undefined : expanded,
346
- className: classNames(className, "".concat(context.prefixCls, "-treenode"), treeClassNames === null || treeClassNames === void 0 ? void 0 : treeClassNames.item, (_classNames4 = {}, _defineProperty(_defineProperty(_defineProperty(_defineProperty(_defineProperty(_defineProperty(_defineProperty(_defineProperty(_defineProperty(_defineProperty(_classNames4, "".concat(context.prefixCls, "-treenode-disabled"), isDisabled), "".concat(context.prefixCls, "-treenode-switcher-").concat(expanded ? 'open' : 'close'), !isLeaf), "".concat(context.prefixCls, "-treenode-checkbox-checked"), checked), "".concat(context.prefixCls, "-treenode-checkbox-indeterminate"), halfChecked), "".concat(context.prefixCls, "-treenode-selected"), selected), "".concat(context.prefixCls, "-treenode-loading"), loading), "".concat(context.prefixCls, "-treenode-active"), active), "".concat(context.prefixCls, "-treenode-leaf-last"), isEndNode), "".concat(context.prefixCls, "-treenode-draggable"), isDraggable), "dragging", dragging), _defineProperty(_defineProperty(_defineProperty(_defineProperty(_defineProperty(_defineProperty(_defineProperty(_classNames4, 'drop-target', context.dropTargetKey === eventKey), 'drop-container', context.dropContainerKey === eventKey), 'drag-over', !isDisabled && dragOver), 'drag-over-gap-top', !isDisabled && dragOverGapTop), 'drag-over-gap-bottom', !isDisabled && dragOverGapBottom), 'filter-node', (_context$filterTreeNo = context.filterTreeNode) === null || _context$filterTreeNo === void 0 ? void 0 : _context$filterTreeNo.call(context, convertNodePropsToEventData(props))), "".concat(context.prefixCls, "-treenode-leaf"), memoizedIsLeaf))),
347
- style: _objectSpread(_objectSpread({}, style), styles === null || styles === void 0 ? void 0 : styles.item)
348
- // Draggable config
349
- ,
350
- draggable: draggableWithoutDisabled,
351
- onDragStart: draggableWithoutDisabled ? onDragStart : undefined
352
- // Drop config
353
- ,
354
- onDragEnter: isDraggable ? onDragEnter : undefined,
355
- onDragOver: isDraggable ? onDragOver : undefined,
356
- onDragLeave: isDraggable ? onDragLeave : undefined,
357
- onDrop: isDraggable ? onDrop : undefined,
358
- onDragEnd: isDraggable ? onDragEnd : undefined,
359
- onMouseMove: onMouseMove
360
- }, ariaSelected, dataOrAriaAttributeProps), /*#__PURE__*/React.createElement(Indent, {
361
- prefixCls: context.prefixCls,
362
- level: level,
363
- isStart: isStart,
364
- isEnd: isEnd
365
- }), dragHandlerNode, renderSwitcher(), checkboxNode, selectorNode);
268
+ tabIndex: -1,
269
+ "aria-expanded": expanded,
270
+ "aria-disabled": (_props$node18 = props.node) === null || _props$node18 === void 0 ? void 0 : _props$node18.disabled,
271
+ "aria-checked": (_props$node19 = props.node) === null || _props$node19 === void 0 ? void 0 : _props$node19.checked,
272
+ draggable: tree.props.draggable,
273
+ "data-key": getNodeKey(props.node),
274
+ onClick: function onClick(e) {
275
+ return handleClick(e);
276
+ },
277
+ onContextMenu: handleContextMenu,
278
+ onDragStart: handleDragStart,
279
+ onDragOver: handleDragOver,
280
+ onDragEnd: handleDragEnd,
281
+ onDrop: handleDrop
282
+ }, /*#__PURE__*/React.createElement("div", {
283
+ className: ns.be('node', 'content'),
284
+ style: {
285
+ paddingLeft: contentPaddingLeft
286
+ }
287
+ }, /*#__PURE__*/React.createElement(Icon, {
288
+ name: tree.props.icon || 'angle-right',
289
+ prefix: "far",
290
+ className: classNames([ns.be('node', 'expand-icon'), ns.is({
291
+ leaf: (_props$node20 = props.node) === null || _props$node20 === void 0 ? void 0 : _props$node20.isLeaf
292
+ }), {
293
+ expanded: !((_props$node21 = props.node) !== null && _props$node21 !== void 0 && _props$node21.isLeaf) && expanded
294
+ }]),
295
+ onClick: function onClick(e) {
296
+ e.stopPropagation();
297
+ handleExpandIconClick();
298
+ }
299
+ }), props.showCheckbox && /*#__PURE__*/React.createElement(Checkbox, {
300
+ checked: (_props$node22 = props.node) === null || _props$node22 === void 0 ? void 0 : _props$node22.checked,
301
+ indeterminate: (_props$node23 = props.node) === null || _props$node23 === void 0 ? void 0 : _props$node23.indeterminate,
302
+ disabled: !!((_props$node24 = props.node) !== null && _props$node24 !== void 0 && _props$node24.disabled),
303
+ onClick: function onClick(e) {
304
+ return e.stopPropagation();
305
+ },
306
+ onChange: handleCheckChange
307
+ }), ((_props$node25 = props.node) === null || _props$node25 === void 0 ? void 0 : _props$node25.loading) && /*#__PURE__*/React.createElement("span", {
308
+ className: classNames([ns.be('node', 'loading-icon'), ns.is('loading')])
309
+ }, /*#__PURE__*/React.createElement(Icon, {
310
+ name: "loader",
311
+ prefix: "far",
312
+ spin: true
313
+ })), /*#__PURE__*/React.createElement(TreeNodeContent, {
314
+ node: props.node,
315
+ renderContent: props.renderContent
316
+ })), /*#__PURE__*/React.createElement(Transition, {
317
+ nodeRef: transitionNodeRef,
318
+ name: ns.b('menu-collapse', false),
319
+ duration: 10,
320
+ visible: expanded && childNodeRendered,
321
+ beforeEnter: function beforeEnter() {
322
+ return _beforeEnter(transitionNodeRef);
323
+ },
324
+ onEnter: function onEnter() {
325
+ return _onEnter(transitionNodeRef);
326
+ },
327
+ afterEnter: function afterEnter() {
328
+ return _afterEnter(transitionNodeRef);
329
+ },
330
+ beforeLeave: function beforeLeave() {
331
+ return _beforeLeave(transitionNodeRef);
332
+ },
333
+ onLeave: function onLeave() {
334
+ return _onLeave(transitionNodeRef);
335
+ },
336
+ afterLeave: function afterLeave() {
337
+ return _afterLeave(transitionNodeRef);
338
+ }
339
+ }, !props.renderAfterExpand || childNodeRendered ? /*#__PURE__*/React.createElement("div", {
340
+ ref: transitionNodeRef,
341
+ className: classNames(ns.be('node', 'children'), ns.b('collapse-transition', false)),
342
+ role: "group",
343
+ "aria-expanded": expanded,
344
+ onClick: function onClick(e) {
345
+ return e.stopPropagation();
346
+ }
347
+ }, (_props$node26 = props.node) === null || _props$node26 === void 0 || (_props$node26 = _props$node26.childNodes) === null || _props$node26 === void 0 ? void 0 : _props$node26.map(function (child) {
348
+ return /*#__PURE__*/React.createElement(TreeNode, {
349
+ key: getNodeKey(child),
350
+ node: child,
351
+ props: props.props,
352
+ accordion: props.accordion,
353
+ renderContent: props.renderContent,
354
+ renderAfterExpand: props.renderAfterExpand,
355
+ showCheckbox: props.showCheckbox,
356
+ onNodeExpand: handleChildNodeExpand
357
+ });
358
+ })) : null)));
366
359
  };
367
- TreeNode.isTreeNode = 1;
368
- if (process.env.NODE_ENV !== 'production') {
369
- TreeNode.displayName = 'TreeNode';
370
- }
360
+ TreeNode.displayName = 'ElTreeNode';
371
361
  export default TreeNode;