@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,12 +1,18 @@
1
- /// <reference types="react" />
2
- import { CascaderMenuProps } from './typings';
1
+ import { ReactNode } from 'react';
2
+ import { CascaderMenuProps, CascaderNode } from './typings';
3
3
  interface CascaderContextProps {
4
4
  props: CascaderMenuProps;
5
5
  loading?: string;
6
6
  searchText?: string;
7
- onSelect: (level: number, node: object) => void;
7
+ onSelect: (level: number, node: object, checkStrictly?: boolean) => void;
8
8
  onCheckedChange: (_level: number, node: object, checked: boolean) => void;
9
9
  getDataType: (level: number) => boolean;
10
+ nodeFormatter?: (params: {
11
+ node?: CascaderNode;
12
+ data?: any;
13
+ }) => ReactNode;
14
+ /** 自定义建议项格式化函数 */
15
+ suggestionItemFormatter?: (item: CascaderNode[]) => ReactNode;
10
16
  }
11
17
  export declare const CascaderContext: import("react").Context<CascaderContextProps>;
12
18
  export {};
@@ -8,5 +8,7 @@ export var CascaderContext = /*#__PURE__*/createContext({
8
8
  props: {},
9
9
  getDataType: function getDataType() {
10
10
  return false;
11
- }
11
+ },
12
+ nodeFormatter: null,
13
+ suggestionItemFormatter: null
12
14
  });
@@ -1,11 +1,12 @@
1
1
  import React from 'react';
2
- import { OptionNode } from './typings';
2
+ import { CascaderNode } from './typings';
3
3
  interface Props {
4
4
  /** 用于分隔选项的字符 */
5
5
  separator: string;
6
- options: OptionNode[][];
6
+ options: CascaderNode[][];
7
7
  value: string[] | string[][];
8
- checkedNodes: () => OptionNode[][];
8
+ checkedNodes: () => CascaderNode[][];
9
+ onClearSearch: () => void;
9
10
  }
10
11
  declare const CascaderDropdown: React.MemoExoticComponent<(props: Props) => React.JSX.Element>;
11
12
  export default CascaderDropdown;
@@ -13,6 +13,8 @@ function _arrayWithHoles(arr) { if (Array.isArray(arr)) return arr; }
13
13
  import classNames from 'classnames';
14
14
  import last from 'lodash/last';
15
15
  import React, { memo, useContext, useMemo, useRef, useState } from 'react';
16
+ import { useTranslation } from 'react-i18next';
17
+ import { useConfigProvider } from "../ConfigProvider/ConfigProviderContext";
16
18
  import Icon from "../Icon/Icon";
17
19
  import Scrollbar from "../Scrollbar/Scrollbar";
18
20
  import { useClassNames } from "../hooks";
@@ -21,21 +23,27 @@ var CascaderDropdown = /*#__PURE__*/memo(function (props) {
21
23
  var _useContext = useContext(CascaderContext),
22
24
  menuProps = _useContext.props,
23
25
  onSelect = _useContext.onSelect,
24
- onCheckedChange = _useContext.onCheckedChange;
26
+ onCheckedChange = _useContext.onCheckedChange,
27
+ suggestionItemFormatter = _useContext.suggestionItemFormatter;
25
28
  var options = props.options,
26
29
  separator = props.separator,
27
30
  value = props.value,
28
- checkedNodes = props.checkedNodes;
29
- var _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,
31
+ checkedNodes = props.checkedNodes,
32
+ onClearSearch = props.onClearSearch;
33
+ var _menuProps$value = menuProps.value,
34
+ valueKey = _menuProps$value === void 0 ? 'value' : _menuProps$value,
35
+ _menuProps$label = menuProps.label,
36
+ labelKey = _menuProps$label === void 0 ? 'label' : _menuProps$label,
33
37
  multiple = menuProps.multiple;
34
38
  var _useClassNames = useClassNames('cascader'),
35
39
  e = _useClassNames.e,
36
40
  is = _useClassNames.is;
37
41
  var ulRef = useRef(null);
38
42
  var scrollBarRef = useRef(null);
43
+ var _useConfigProvider = useConfigProvider(),
44
+ locale = _useConfigProvider.locale;
45
+ var _useTranslation = useTranslation(),
46
+ t = _useTranslation.t;
39
47
  var _useState = useState(multiple ? value.map(function (item) {
40
48
  return item.join(separator);
41
49
  }) : [value.join(separator)]),
@@ -68,14 +76,15 @@ var CascaderDropdown = /*#__PURE__*/memo(function (props) {
68
76
  onSelect(node.__level, node);
69
77
  });
70
78
  }
79
+ onClearSearch();
71
80
  }
72
- }, /*#__PURE__*/React.createElement("span", null, item.map(function (node) {
81
+ }, suggestionItemFormatter ? suggestionItemFormatter(item) : item.map(function (node) {
73
82
  return node[labelKey];
74
- }).join(separator)), multiple && checkedNode.includes(key) ? /*#__PURE__*/React.createElement(Icon, {
83
+ }).join(separator), multiple && checkedNode.includes(key) ? /*#__PURE__*/React.createElement(Icon, {
75
84
  name: "check"
76
85
  }) : null);
77
86
  });
78
- }, [checkedNode, e, is, labelKey, multiple, onCheckedChange, onSelect, options, separator, valueKey]);
87
+ }, [checkedNode, e, is, labelKey, multiple, onCheckedChange, onClearSearch, onSelect, options, separator, valueKey, suggestionItemFormatter]);
79
88
  return /*#__PURE__*/React.createElement("div", {
80
89
  className: classNames(e(_templateObject2 || (_templateObject2 = _taggedTemplateLiteral(["dorpdown"])))),
81
90
  onClick: function onClick(event) {
@@ -89,6 +98,8 @@ var CascaderDropdown = /*#__PURE__*/memo(function (props) {
89
98
  ref: ulRef
90
99
  }, list, (options === null || options === void 0 ? void 0 : options.length) === 0 && /*#__PURE__*/React.createElement("li", {
91
100
  className: classNames(e(_templateObject5 || (_templateObject5 = _taggedTemplateLiteral(["empty-text"]))))
92
- }, "\u6682\u65E0\u6570\u636E"))));
101
+ }, t('el.cascader.noMatch', {
102
+ lng: locale
103
+ })))));
93
104
  });
94
105
  export default CascaderDropdown;
@@ -1,7 +1,7 @@
1
1
  import React from 'react';
2
- import { OptionNode } from './typings';
2
+ import { CascaderNode } from './typings';
3
3
  interface Props {
4
- data: OptionNode[];
4
+ data: CascaderNode[];
5
5
  level: number;
6
6
  value: string;
7
7
  }
@@ -7,9 +7,12 @@ function _taggedTemplateLiteral(strings, raw) { if (!raw) { raw = strings.slice(
7
7
  /* eslint-disable indent */
8
8
  import classNames from 'classnames';
9
9
  import React, { forwardRef, memo, useCallback, useContext, useImperativeHandle, useRef } from 'react';
10
+ import { useTranslation } from 'react-i18next';
10
11
  import scrollIntoView from 'scroll-into-view-if-needed';
11
12
  import Checkbox from "../Checkbox/Checkbox";
13
+ import { useConfigProvider } from "../ConfigProvider/ConfigProviderContext";
12
14
  import Icon from "../Icon/Icon";
15
+ import { Radio } from "../Radio";
13
16
  import Scrollbar from "../Scrollbar/Scrollbar";
14
17
  import { useClassNames } from "../hooks";
15
18
  import { CascaderContext } from "./CascaderContext";
@@ -22,20 +25,26 @@ var CascaderMenu = /*#__PURE__*/memo( /*#__PURE__*/forwardRef(function (props, r
22
25
  menuProps = _useContext.props,
23
26
  onSelect = _useContext.onSelect,
24
27
  onCheckedChange = _useContext.onCheckedChange,
25
- loading = _useContext.loading;
26
- var _menuProps$valueKey = menuProps.valueKey,
27
- valueKey = _menuProps$valueKey === void 0 ? 'value' : _menuProps$valueKey,
28
- _menuProps$labelKey = menuProps.labelKey,
29
- labelKey = _menuProps$labelKey === void 0 ? 'label' : _menuProps$labelKey,
30
- _menuProps$disabledKe = menuProps.disabledKey,
31
- disabledKey = _menuProps$disabledKe === void 0 ? 'disabled' : _menuProps$disabledKe,
28
+ loading = _useContext.loading,
29
+ nodeFormatter = _useContext.nodeFormatter;
30
+ var _menuProps$value = menuProps.value,
31
+ valueKey = _menuProps$value === void 0 ? 'value' : _menuProps$value,
32
+ _menuProps$label = menuProps.label,
33
+ labelKey = _menuProps$label === void 0 ? 'label' : _menuProps$label,
34
+ _menuProps$disabled = menuProps.disabled,
35
+ disabledKey = _menuProps$disabled === void 0 ? 'disabled' : _menuProps$disabled,
32
36
  multiple = menuProps.multiple,
33
- expandTrigger = menuProps.expandTrigger;
37
+ expandTrigger = menuProps.expandTrigger,
38
+ checkStrictly = menuProps.checkStrictly;
34
39
  var _useClassNames = useClassNames('cascader'),
35
40
  b = _useClassNames.b,
36
41
  be = _useClassNames.be,
37
42
  is = _useClassNames.is;
38
43
  var ulRef = useRef(null);
44
+ var _useConfigProvider = useConfigProvider(),
45
+ locale = _useConfigProvider.locale;
46
+ var _useTranslation = useTranslation(),
47
+ t = _useTranslation.t;
39
48
  var _scrollToSelected = useCallback(function () {
40
49
  var _ulRef$current;
41
50
  if ((_ulRef$current = ulRef.current) !== null && _ulRef$current !== void 0 && (_ulRef$current = _ulRef$current.resizeRef) !== null && _ulRef$current !== void 0 && _ulRef$current.current) {
@@ -67,7 +76,7 @@ var CascaderMenu = /*#__PURE__*/memo( /*#__PURE__*/forwardRef(function (props, r
67
76
  return /*#__PURE__*/React.createElement("li", {
68
77
  key: item.__id,
69
78
  className: classNames(b(_templateObject2 || (_templateObject2 = _taggedTemplateLiteral(["node"]))), {
70
- 'in-active-path': multiple ? item.__checked || item.__indeterminate : value === item[valueKey]
79
+ 'in-active-path': multiple ? item.__checked || item.__indeterminate || value === item[valueKey] : value === item[valueKey]
71
80
  }, is({
72
81
  disabled: item[disabledKey]
73
82
  })),
@@ -75,6 +84,9 @@ var CascaderMenu = /*#__PURE__*/memo( /*#__PURE__*/forwardRef(function (props, r
75
84
  if (!item[disabledKey]) {
76
85
  if (expandTrigger === 'click' || item.__leaf) {
77
86
  onSelect === null || onSelect === void 0 || onSelect(level, item);
87
+ if (item.__leaf && multiple) {
88
+ onCheckedChange === null || onCheckedChange === void 0 || onCheckedChange(level, item, !item.__checked);
89
+ }
78
90
  }
79
91
  }
80
92
  },
@@ -83,13 +95,34 @@ var CascaderMenu = /*#__PURE__*/memo( /*#__PURE__*/forwardRef(function (props, r
83
95
  onSelect === null || onSelect === void 0 || onSelect(level, item);
84
96
  }
85
97
  }
86
- }, multiple && /*#__PURE__*/React.createElement(Checkbox, {
98
+ }, checkStrictly && !multiple && /*#__PURE__*/React.createElement(Radio, {
99
+ checked: item.__checked,
100
+ onClick: function onClick(e) {
101
+ return e.stopPropagation();
102
+ },
103
+ onChange: function onChange(e) {
104
+ if (!item[disabledKey]) {
105
+ onSelect === null || onSelect === void 0 || onSelect(level, item, true);
106
+ }
107
+ }
108
+ }), multiple && /*#__PURE__*/React.createElement(Checkbox, {
87
109
  checked: item.__checked,
88
110
  indeterminate: item.__indeterminate,
111
+ onClick: function onClick(e) {
112
+ return e.stopPropagation();
113
+ },
89
114
  onChange: function onChange(checked) {
90
- return onCheckedChange === null || onCheckedChange === void 0 ? void 0 : onCheckedChange(level, item, checked);
115
+ if (!item[disabledKey]) {
116
+ if (expandTrigger === 'click' || item.__leaf) {
117
+ onSelect === null || onSelect === void 0 || onSelect(level, item, checkStrictly);
118
+ }
119
+ }
120
+ onCheckedChange === null || onCheckedChange === void 0 || onCheckedChange(level, item, checked);
91
121
  }
92
- }), /*#__PURE__*/React.createElement("span", {
122
+ }), nodeFormatter ? nodeFormatter === null || nodeFormatter === void 0 ? void 0 : nodeFormatter({
123
+ node: item,
124
+ data: item.data
125
+ }) : /*#__PURE__*/React.createElement("span", {
93
126
  className: be('node', 'label')
94
127
  }, item[labelKey]), !item.__leaf && loading !== item.__id && /*#__PURE__*/React.createElement(Icon, {
95
128
  name: "angle-right",
@@ -100,6 +133,15 @@ var CascaderMenu = /*#__PURE__*/memo( /*#__PURE__*/forwardRef(function (props, r
100
133
  spin: true,
101
134
  className: be('node', 'postfix')
102
135
  }));
103
- }), (data === null || data === void 0 ? void 0 : data.length) === 0 && (loading ? '正在加载数据...' : '暂无数据!'));
104
- }));
136
+ }), (data === null || data === void 0 ? void 0 : data.length) === 0 && (loading ? t('el.cascader.loading', {
137
+ lng: locale
138
+ }) : t('el.cascader.noData', {
139
+ lng: locale
140
+ })));
141
+ })
142
+ // (prev, next) => {
143
+ // console.log(isEqual(prev, next));
144
+ // return isEqual(prev, next);
145
+ // },
146
+ );
105
147
  export default CascaderMenu;
@@ -0,0 +1,4 @@
1
+ import React from 'react';
2
+ import { CascaderPanelProps, CascaderRef } from './typings';
3
+ declare const CascaderPanel: React.MemoExoticComponent<React.ForwardRefExoticComponent<CascaderPanelProps & React.RefAttributes<CascaderRef>>>;
4
+ export default CascaderPanel;
@@ -0,0 +1,11 @@
1
+ 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); }
2
+ import React, { forwardRef, memo } from 'react';
3
+ import Cascader from "./Cascader";
4
+ var CascaderPanel = /*#__PURE__*/memo( /*#__PURE__*/forwardRef(function (props, ref) {
5
+ return /*#__PURE__*/React.createElement(Cascader, _extends({}, props, {
6
+ ref: ref,
7
+ panel: true
8
+ }));
9
+ }));
10
+ CascaderPanel.displayName = 'ElCascaderPanel';
11
+ export default CascaderPanel;
@@ -1,2 +1,5 @@
1
+ import { CascaderPanelProps } from './typings';
1
2
  export { default as Cascader } from './Cascader';
2
- export type { CascaderMenuProps, CascaderProps } from './typings';
3
+ export { default as CascaderPanel } from './CascaderPanel';
4
+ export type { CascaderMenuProps, CascaderRef } from './typings';
5
+ export type { CascaderPanelProps as CascaderProps };
@@ -1 +1,2 @@
1
- export { default as Cascader } from "./Cascader";
1
+ export { default as Cascader } from "./Cascader";
2
+ export { default as CascaderPanel } from "./CascaderPanel";
@@ -2,12 +2,12 @@ import React from 'react';
2
2
  import { InputRef } from '../Input/typings';
3
3
  import { PopperOptions } from '../Popper';
4
4
  import { AnimationEventProps, BaseProps, FormControlBaseProps, NativeProps } from '../types/common';
5
- export type ValueType = string[] | string[][];
6
- export interface CascaderProps<V = ValueType, S = any> extends Omit<FormControlBaseProps<V>, 'onChange' | 'value' | 'defaultValue'>, BaseProps, NativeProps, AnimationEventProps, PopperOptions {
5
+ export type CascaderValue = string[] | string[][];
6
+ export interface CascaderProps<V = CascaderValue, S = any> extends Omit<FormControlBaseProps<V>, 'onChange' | 'value' | 'defaultValue'>, BaseProps, NativeProps, AnimationEventProps, PopperOptions {
7
7
  /** 初始值 */
8
- defaultValue?: ValueType;
8
+ defaultValue?: CascaderValue;
9
9
  /** 值(可控) */
10
- value?: ValueType;
10
+ value?: CascaderValue;
11
11
  /** 可选项数据源,键名可通过 Props 属性配置 */
12
12
  options?: any[];
13
13
  /** 配置选项 */
@@ -23,23 +23,9 @@ export interface CascaderProps<V = ValueType, S = any> extends Omit<FormControlB
23
23
  /** 是否可搜索 */
24
24
  filterable?: boolean;
25
25
  /** 自定义搜索方法 */
26
- filterMethod?: (val: ValueType, searchText: string) => boolean;
26
+ filterMethod?: (val: CascaderValue, searchText: string) => boolean;
27
27
  /** 占位符 */
28
28
  placeholder?: string;
29
- /** 选项为空时显示的文字 */
30
- noDataText?: string;
31
- /** 搜索条件无匹配时显示的文字 */
32
- noMatchText?: string;
33
- /** 是否正在从远程获取数据 */
34
- loading?: boolean;
35
- /** 远程加载时显示的文字 */
36
- loadingText?: string;
37
- /** */
38
- required?: boolean;
39
- /** 表单校验错误提示 */
40
- error?: boolean;
41
- /** 表单校验警告提示 */
42
- warning?: boolean;
43
29
  /** 多选时是否将选中值按文字的形式展示 */
44
30
  collapseTags?: boolean;
45
31
  /** 需要显示的 Tag 的最大数量 只有当 collapseTags 设置为 true 时才会生效。 */
@@ -60,13 +46,32 @@ export interface CascaderProps<V = ValueType, S = any> extends Omit<FormControlB
60
46
  append?: React.ReactElement | string | number;
61
47
  lable?: string;
62
48
  /** 是否追加到body下 */
63
- appendToBody?: boolean;
49
+ /** 折叠标签的提示最大高度 */
50
+ maxCollapseTagsTooltipHeight?: string | number;
51
+ /** 是否显示成面板 */
52
+ panel?: boolean;
64
53
  /** 选中值发生变化时触发 */
65
- onChange?: (value: ValueType, level?: number, label?: string | string[], node?: S[] | S[][]) => void;
54
+ onChange?: (value: CascaderValue, level?: number, label?: string | string[], node?: S[] | S[][]) => void;
55
+ /** 清空选项时触发 */
56
+ onClear?: () => void;
57
+ /** 可见性改变时触发 */
58
+ onVisibleChange?: (visible: boolean) => void;
59
+ /** 展开状态改变时触发 */
60
+ onExpandChange?: (node: CascaderNode) => void;
61
+ /** 移除标签时触发 */
62
+ onRemoveTag?: (node: CascaderNode) => void;
66
63
  /** 是否可以选择 */
67
64
  shouldSelect?: (node?: object, level?: number) => boolean;
68
65
  labelFormatter?: (level?: number, node?: object[]) => string;
66
+ /** 自定义节点格式化函数 */
67
+ nodeFormatter?: (params: {
68
+ node?: CascaderNode;
69
+ data?: any;
70
+ }) => React.ReactNode;
71
+ /** 自定义建议项格式化函数 */
72
+ suggestionItemFormatter?: (item: CascaderNode[]) => React.ReactNode;
69
73
  }
74
+ export type CascaderPanelProps = Omit<CascaderProps, 'panel'>;
70
75
  export interface CascaderMenuProps {
71
76
  /** 次级菜单的展开方式 */
72
77
  expandTrigger?: 'click' | 'hover';
@@ -81,25 +86,29 @@ export interface CascaderMenuProps {
81
86
  /** 加载动态数据的方法,仅在 lazy 为 true 时有效 */
82
87
  lazyLoad?: (node: object, resolve?: (value: object[]) => void, reject?: () => void) => void;
83
88
  /** 指定选项的值为选项对象的某个属性值 */
84
- valueKey?: string;
89
+ value?: string;
85
90
  /** 指定选项标签为选项对象的某个属性值 */
86
- labelKey?: string;
91
+ label?: string;
87
92
  /** 指定选项的子选项为选项对象的某个属性值 */
88
- childrenKey?: string;
93
+ children?: string;
89
94
  /** 指定选项的禁用为选项对象的某个属性值 */
90
- disabledKey?: string;
95
+ disabled?: string;
91
96
  /** 指定选项的叶子节点的标志位为选项对象的某个属性值 */
92
- leafKey?: string;
97
+ leaf?: string;
93
98
  }
94
99
  export interface CascaderRef {
95
- inputInstance?: InputRef;
100
+ ref?: React.RefObject<HTMLDivElement>;
101
+ input?: React.RefObject<InputRef>;
102
+ presentText?: string;
96
103
  setLabel: (label: string) => void;
97
- onClear: () => void;
104
+ clear: () => void;
98
105
  /** 重置懒加载的节点,适用于动态懒加载配置 */
99
106
  resetNodes: () => void;
100
- setVisible: (visible: boolean) => void;
107
+ /** 获取选中的节点 */
108
+ getCheckedNodes: () => CascaderNode[][];
109
+ togglePopperVisible: (visible: boolean) => void;
101
110
  }
102
- export interface OptionNode extends Object {
111
+ export interface CascaderNode extends Object {
103
112
  /**
104
113
  * 主键
105
114
  * @private
@@ -130,11 +139,16 @@ export interface OptionNode extends Object {
130
139
  * @private
131
140
  */
132
141
  __indeterminate?: boolean;
142
+ /**
143
+ * 节点数据
144
+ * @private
145
+ */
146
+ data?: object;
133
147
  /**
134
148
  * 时子节点集合
135
149
  * @private
136
150
  */
137
- children?: OptionNode[];
151
+ children?: CascaderNode[];
138
152
  /**
139
153
  * 树形组件时子节点集合
140
154
  * @private
@@ -1,18 +1,17 @@
1
- import { Key } from '../Tree';
2
- import { CascaderProps, OptionNode } from './typings';
1
+ import { CascaderNode, CascaderProps } from './typings';
3
2
  export declare const useCascader: (initialData: object[], props: CascaderProps, value: string[] | string[][]) => {
4
3
  /** 最高层级 */
5
4
  allLevel: number;
6
5
  /** 选项数据 */
7
- optionData: Record<string, OptionNode[]>;
6
+ optionData: Record<string, CascaderNode[]>;
8
7
  /**
9
8
  * 懒加载时存储option
10
9
  * @param nodes
11
10
  * @param level 层级
12
11
  */
13
- storeOptionData: (nodes: object[], level: number, parent: OptionNode, { isCover }: {
12
+ storeOptionData: (nodes: object[], level: number, parent: CascaderNode, { isCover }: {
14
13
  isCover?: boolean;
15
- }) => OptionNode[];
14
+ }) => CascaderNode[];
16
15
  /**
17
16
  * 获取选中的值
18
17
  * @param level 层级
@@ -30,32 +29,33 @@ export declare const useCascader: (initialData: object[], props: CascaderProps,
30
29
  * @param level 层级
31
30
  * @returns
32
31
  */
33
- getSelectedLabel: (labelFormatter?: (node?: OptionNode[]) => string) => string;
32
+ getSelectedLabel: (labelFormatter?: (node?: CascaderNode[]) => string) => string;
34
33
  /**
35
34
  * 设置任意层级节点的标签
36
35
  * @param level 层级
37
36
  * @param value
38
37
  */
39
- setSelectedNode: (level: number, node: OptionNode) => void;
38
+ setSelectedNode: (level: number, node: CascaderNode) => void;
40
39
  setSelectedValue: (level: number, val: string) => void;
41
- getSelectedNode: () => OptionNode[];
40
+ getSelectedNode: () => CascaderNode[];
42
41
  /**
43
42
  * 设置选中节点
44
43
  * @param level 层级
45
44
  * @param node 当前节点
46
45
  * @param checked 是否选中
47
46
  */
48
- setCheckedNode: (level: number, node: OptionNode, checked: boolean) => void;
49
- getCheckedNodes: () => OptionNode[][];
47
+ setCheckedNode: (level: number, node: CascaderNode, checked: boolean) => void;
48
+ setStrictlyCheckedNode: (level: number, node: CascaderNode, checked: boolean) => void;
49
+ getCheckedNodes: () => CascaderNode[][];
50
50
  getCheckedValue: () => string[][];
51
51
  getCheckedLabel: () => any[][];
52
- loopGetParent: (level: number, node: OptionNode, result?: OptionNode[]) => OptionNode[];
52
+ loopGetParent: (level: number, node: CascaderNode, result?: CascaderNode[]) => CascaderNode[];
53
53
  /**
54
54
  * 获取任意节点的option数据
55
55
  * @param level 层级
56
56
  * @returns
57
57
  */
58
- getOptions: (level: number) => OptionNode[];
58
+ getOptions: (level: number) => CascaderNode[];
59
59
  /** 清空值 */
60
60
  clearSelected: () => void;
61
61
  /**
@@ -63,26 +63,13 @@ export declare const useCascader: (initialData: object[], props: CascaderProps,
63
63
  * @param node
64
64
  * @param isLeaf
65
65
  */
66
- setNodeLeaf: (node: OptionNode, isLeaf: boolean) => void;
66
+ setNodeLeaf: (node: CascaderNode, isLeaf: boolean) => void;
67
67
  /**
68
68
  * 获取数据类型
69
69
  * @param level 层级
70
70
  * @returns
71
71
  */
72
72
  getDataType: (level: number) => any;
73
- /**
74
- * 获取扩展key
75
- * @param level 层级
76
- * @returns
77
- */
78
- getExpandedKeys: (level: number) => Key[];
79
- /**
80
- * 设置扩展key
81
- * @param level 层级
82
- * @param keys
83
- * @returns
84
- */
85
- setExpandedKeys: (level: number, keys: Key[]) => void;
86
- handleSearch: (searchText: string) => OptionNode[][];
73
+ handleSearch: (searchText: string) => CascaderNode[][];
87
74
  resetNodes: () => void;
88
75
  };