@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
@@ -0,0 +1,258 @@
1
+ function _slicedToArray(arr, i) { return _arrayWithHoles(arr) || _iterableToArrayLimit(arr, i) || _unsupportedIterableToArray(arr, i) || _nonIterableRest(); }
2
+ function _nonIterableRest() { throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method."); }
3
+ function _unsupportedIterableToArray(o, minLen) { if (!o) return; if (typeof o === "string") return _arrayLikeToArray(o, minLen); var n = Object.prototype.toString.call(o).slice(8, -1); if (n === "Object" && o.constructor) n = o.constructor.name; if (n === "Map" || n === "Set") return Array.from(o); if (n === "Arguments" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return _arrayLikeToArray(o, minLen); }
4
+ 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; }
5
+ 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; } }
6
+ function _arrayWithHoles(arr) { if (Array.isArray(arr)) return arr; }
7
+ import { useMount } from 'ahooks';
8
+ import classNames from 'classnames';
9
+ import React, { createContext, forwardRef, memo, useCallback, useEffect, useImperativeHandle, useMemo, useRef, useState } from 'react';
10
+ import { useClassNames } from "../hooks";
11
+ import { animateScrollTo, getOffsetTopDistance, getScrollElement, getScrollTop, isWindow, mergeDefaultProps } from "../Util";
12
+ import { throttleByRaf } from "../Util/throttleByRaf";
13
+ import { getElement } from "./element";
14
+ /** 锚点 Context */
15
+ export var AnchorContext = /*#__PURE__*/createContext(null);
16
+ var Anchor = /*#__PURE__*/memo( /*#__PURE__*/forwardRef(function (props, ref) {
17
+ props = mergeDefaultProps({
18
+ classPrefix: 'anchor',
19
+ offset: 0,
20
+ bound: 15,
21
+ duration: 300,
22
+ marker: true,
23
+ type: 'default',
24
+ direction: 'vertical'
25
+ }, props);
26
+ var _props = props,
27
+ classPrefix = _props.classPrefix,
28
+ offset = _props.offset,
29
+ bound = _props.bound,
30
+ duration = _props.duration,
31
+ marker = _props.marker,
32
+ type = _props.type,
33
+ direction = _props.direction,
34
+ selectScrollTop = _props.selectScrollTop,
35
+ container = _props.container,
36
+ onChange = _props.onChange,
37
+ onClick = _props.onClick,
38
+ className = _props.className,
39
+ style = _props.style,
40
+ children = _props.children;
41
+ var ns = useClassNames(classPrefix);
42
+ var _useState = useState(''),
43
+ _useState2 = _slicedToArray(_useState, 2),
44
+ currentAnchor = _useState2[0],
45
+ setCurrentAnchor = _useState2[1];
46
+ var _useState3 = useState({}),
47
+ _useState4 = _slicedToArray(_useState3, 2),
48
+ markerStyle = _useState4[0],
49
+ setMarkerStyle = _useState4[1];
50
+ var anchorRef = useRef(null);
51
+ var markerRef = useRef(null);
52
+ var containerElRef = useRef();
53
+ var linksRef = useRef({});
54
+ var isScrollingRef = useRef(false);
55
+ var currentScrollTopRef = useRef(0);
56
+ var clearAnimateRef = useRef(null);
57
+ var currentTargetHrefRef = useRef('');
58
+ var cls = useMemo(function () {
59
+ return classNames(ns.b(), type === 'underline' ? ns.m('underline') : '', ns.m(direction));
60
+ }, [ns, type, direction]);
61
+ var addLink = useCallback(function (state) {
62
+ linksRef.current[state.href] = state.el;
63
+ }, []);
64
+ var removeLink = useCallback(function (href) {
65
+ delete linksRef.current[href];
66
+ }, []);
67
+ var handleCurrentAnchorChange = useCallback(function (href) {
68
+ if (currentAnchor !== href) {
69
+ setCurrentAnchor(href);
70
+ onChange === null || onChange === void 0 || onChange(href);
71
+ }
72
+ }, [currentAnchor, onChange]);
73
+ var getCurrentHref = useCallback(function () {
74
+ var containerEl = containerElRef.current;
75
+ if (!containerEl) {
76
+ return;
77
+ }
78
+ var scrollTop = getScrollTop(containerEl);
79
+ var anchorTopList = [];
80
+ for (var _i = 0, _Object$keys = Object.keys(linksRef.current); _i < _Object$keys.length; _i++) {
81
+ var href = _Object$keys[_i];
82
+ var target = getElement(href);
83
+ if (!target) {
84
+ continue;
85
+ }
86
+ var scrollEle = getScrollElement(target, containerEl);
87
+ var distance = getOffsetTopDistance(target, scrollEle);
88
+ anchorTopList.push({
89
+ top: distance - offset - bound,
90
+ href: href
91
+ });
92
+ }
93
+ anchorTopList.sort(function (prev, next) {
94
+ return prev.top - next.top;
95
+ });
96
+ for (var i = 0; i < anchorTopList.length; i++) {
97
+ var item = anchorTopList[i];
98
+ var next = anchorTopList[i + 1];
99
+ if (i === 0 && scrollTop === 0) {
100
+ return selectScrollTop ? item.href : '';
101
+ }
102
+ if (item.top <= scrollTop && (!next || next.top > scrollTop)) {
103
+ return item.href;
104
+ }
105
+ }
106
+ }, [offset, bound, selectScrollTop]);
107
+ var scrollToAnchor = useCallback(function (href) {
108
+ var containerEl = containerElRef.current;
109
+ if (!containerEl) {
110
+ return;
111
+ }
112
+ var target = getElement(href);
113
+ if (!target) {
114
+ return;
115
+ }
116
+ if (clearAnimateRef.current) {
117
+ if (currentTargetHrefRef.current === href) {
118
+ return;
119
+ }
120
+ clearAnimateRef.current();
121
+ }
122
+ currentTargetHrefRef.current = href;
123
+ isScrollingRef.current = true;
124
+ var scrollEle = getScrollElement(target, containerEl);
125
+ var distance = getOffsetTopDistance(target, scrollEle);
126
+ var max = scrollEle.scrollHeight - scrollEle.clientHeight;
127
+ var to = Math.min(distance - offset, max);
128
+ clearAnimateRef.current = animateScrollTo(containerEl, currentScrollTopRef.current, to, duration, function () {
129
+ setTimeout(function () {
130
+ isScrollingRef.current = false;
131
+ currentTargetHrefRef.current = '';
132
+ }, 20);
133
+ });
134
+ }, [offset, duration]);
135
+ var scrollTo = useCallback(function (href) {
136
+ if (href) {
137
+ handleCurrentAnchorChange(href);
138
+ scrollToAnchor(href);
139
+ }
140
+ }, [handleCurrentAnchorChange, scrollToAnchor]);
141
+ var handleClick = useCallback(function (e, href) {
142
+ onClick === null || onClick === void 0 || onClick(e, href);
143
+ scrollTo(href);
144
+ }, [onClick, scrollTo]);
145
+ var handleScroll = useMemo(function () {
146
+ return throttleByRaf(function () {
147
+ var containerEl = containerElRef.current;
148
+ if (containerEl) {
149
+ currentScrollTopRef.current = getScrollTop(containerEl);
150
+ }
151
+ var currentHref = getCurrentHref();
152
+ if (isScrollingRef.current || currentHref === undefined) {
153
+ return;
154
+ }
155
+ handleCurrentAnchorChange(currentHref);
156
+ });
157
+ }, [getCurrentHref, handleCurrentAnchorChange]);
158
+ var getContainer = useCallback(function () {
159
+ var el = getElement(container !== null && container !== void 0 ? container : null);
160
+ if (!el || isWindow(el)) {
161
+ containerElRef.current = window;
162
+ } else {
163
+ containerElRef.current = el;
164
+ }
165
+ }, [container]);
166
+ var updateMarkerStyle = useCallback(function () {
167
+ if (!anchorRef.current || !markerRef.current || !currentAnchor) {
168
+ setMarkerStyle({});
169
+ return;
170
+ }
171
+ var currentLinkEl = linksRef.current[currentAnchor];
172
+ if (!currentLinkEl) {
173
+ setMarkerStyle({});
174
+ return;
175
+ }
176
+ var anchorRect = anchorRef.current.getBoundingClientRect();
177
+ var markerRect = markerRef.current.getBoundingClientRect();
178
+ var linkRect = currentLinkEl.getBoundingClientRect();
179
+ if (direction === 'horizontal') {
180
+ var left = linkRect.left - anchorRect.left;
181
+ setMarkerStyle({
182
+ left: "".concat(left, "px"),
183
+ width: "".concat(linkRect.width, "px"),
184
+ opacity: 1
185
+ });
186
+ } else {
187
+ var top = linkRect.top - anchorRect.top + (linkRect.height - markerRect.height) / 2;
188
+ setMarkerStyle({
189
+ top: "".concat(top, "px"),
190
+ opacity: 1
191
+ });
192
+ }
193
+ }, [currentAnchor, direction]);
194
+
195
+ // 在挂载后更新 marker 样式
196
+ useEffect(function () {
197
+ updateMarkerStyle();
198
+ }, [currentAnchor, children]);
199
+
200
+ // 挂载时初始化
201
+ useMount(function () {
202
+ getContainer();
203
+ var hash = decodeURIComponent(window.location.hash);
204
+ var target = getElement(hash);
205
+ if (target) {
206
+ scrollTo(hash);
207
+ } else {
208
+ handleScroll();
209
+ }
210
+ });
211
+
212
+ // 监听 container 变化
213
+ useEffect(function () {
214
+ getContainer();
215
+ }, [container]);
216
+
217
+ // 绑定滚动事件
218
+ useEffect(function () {
219
+ var containerEl = containerElRef.current;
220
+ if (!containerEl) {
221
+ return;
222
+ }
223
+ containerEl.addEventListener('scroll', handleScroll);
224
+ return function () {
225
+ containerEl.removeEventListener('scroll', handleScroll);
226
+ };
227
+ }, []);
228
+ var contextValue = useMemo(function () {
229
+ return {
230
+ ns: ns,
231
+ direction: direction,
232
+ currentAnchor: currentAnchor,
233
+ addLink: addLink,
234
+ removeLink: removeLink,
235
+ handleClick: handleClick
236
+ };
237
+ }, [ns, direction, currentAnchor, addLink, removeLink, handleClick]);
238
+ useImperativeHandle(ref, function () {
239
+ return {
240
+ scrollTo: scrollTo
241
+ };
242
+ }, [scrollTo]);
243
+ return /*#__PURE__*/React.createElement(AnchorContext.Provider, {
244
+ value: contextValue
245
+ }, /*#__PURE__*/React.createElement("div", {
246
+ ref: anchorRef,
247
+ className: classNames(cls, className),
248
+ style: style
249
+ }, marker && /*#__PURE__*/React.createElement("div", {
250
+ ref: markerRef,
251
+ className: ns.e('marker'),
252
+ style: markerStyle
253
+ }), /*#__PURE__*/React.createElement("div", {
254
+ className: ns.e('list')
255
+ }, children)));
256
+ }));
257
+ Anchor.displayName = 'ElAnchor';
258
+ export default Anchor;
@@ -0,0 +1,4 @@
1
+ import { FC } from 'react';
2
+ import { AnchorLinkProps } from './typings';
3
+ declare const AnchorLink: FC<AnchorLinkProps>;
4
+ export default AnchorLink;
@@ -0,0 +1,77 @@
1
+ var _templateObject, _templateObject2, _templateObject3;
2
+ function _taggedTemplateLiteral(strings, raw) { if (!raw) { raw = strings.slice(0); } return Object.freeze(Object.defineProperties(strings, { raw: { value: Object.freeze(raw) } })); }
3
+ import classNames from 'classnames';
4
+ import React, { memo, useCallback, useContext, useEffect, useMemo, useRef } from 'react';
5
+ import { AnchorContext } from "./Anchor";
6
+ var AnchorLink = /*#__PURE__*/memo(function (props) {
7
+ var _props$title = props.title,
8
+ title = _props$title === void 0 ? '' : _props$title,
9
+ _props$href = props.href,
10
+ href = _props$href === void 0 ? '' : _props$href,
11
+ className = props.className,
12
+ style = props.style,
13
+ children = props.children;
14
+ var linkRef = useRef(null);
15
+ var context = useContext(AnchorContext);
16
+ var ns = context.ns,
17
+ direction = context.direction,
18
+ currentAnchor = context.currentAnchor,
19
+ addLink = context.addLink,
20
+ removeLink = context.removeLink,
21
+ contextHandleClick = context.handleClick;
22
+ var cls = useMemo(function () {
23
+ return classNames(ns.e(_templateObject || (_templateObject = _taggedTemplateLiteral(["link"]))), ns.is({
24
+ active: currentAnchor === href
25
+ }));
26
+ }, [ns, currentAnchor, href]);
27
+ var handleClick = useCallback(function (e) {
28
+ contextHandleClick(e, href);
29
+ }, [contextHandleClick, href]);
30
+ var prevHrefRef = useRef(href);
31
+
32
+ // 注册/移除链接
33
+ useEffect(function () {
34
+ if (href) {
35
+ addLink({
36
+ href: href,
37
+ el: linkRef.current
38
+ });
39
+ }
40
+ return function () {
41
+ if (href) {
42
+ removeLink(href);
43
+ }
44
+ };
45
+ }, []);
46
+
47
+ // 监听 href 变化,更新链接
48
+ useEffect(function () {
49
+ var oldVal = prevHrefRef.current;
50
+ if (oldVal && oldVal !== href) {
51
+ removeLink(oldVal);
52
+ }
53
+ if (href && href !== oldVal) {
54
+ addLink({
55
+ href: href,
56
+ el: linkRef.current
57
+ });
58
+ }
59
+ prevHrefRef.current = href;
60
+ }, [href]);
61
+ if (!context) {
62
+ return null;
63
+ }
64
+ return /*#__PURE__*/React.createElement("div", {
65
+ className: ns.e(_templateObject2 || (_templateObject2 = _taggedTemplateLiteral(["item"])))
66
+ }, /*#__PURE__*/React.createElement("a", {
67
+ ref: linkRef,
68
+ className: classNames(cls, className),
69
+ href: href,
70
+ style: style,
71
+ onClick: handleClick
72
+ }, title), children && React.Children.count(children) > 0 && direction === 'vertical' && /*#__PURE__*/React.createElement("div", {
73
+ className: ns.e(_templateObject3 || (_templateObject3 = _taggedTemplateLiteral(["list"])))
74
+ }, children));
75
+ });
76
+ AnchorLink.displayName = 'ElAnchorLink';
77
+ export default AnchorLink;
@@ -0,0 +1,4 @@
1
+ import { RefObject } from 'react';
2
+ type GetElement = <T extends string | HTMLElement | null | undefined>(target: string | RefObject<HTMLElement> | Window | null | undefined) => T extends string ? HTMLElement | null : T;
3
+ export declare const getElement: GetElement;
4
+ export {};
@@ -0,0 +1,17 @@
1
+ import { isClient, isString } from "../Util";
2
+ export var getElement = function getElement(target) {
3
+ if (!isClient || target === '' || target === null) {
4
+ return null;
5
+ }
6
+ if (isString(target)) {
7
+ try {
8
+ return document.querySelector(target);
9
+ } catch (_unused) {
10
+ return null;
11
+ }
12
+ }
13
+ if (!(target instanceof Window) && Object.prototype.hasOwnProperty.call(target, 'current')) {
14
+ return target.current;
15
+ }
16
+ return target;
17
+ };
@@ -0,0 +1,3 @@
1
+ export { default as Anchor } from './Anchor';
2
+ export { default as AnchorLink } from './AnchorLink';
3
+ export type { AnchorContext, AnchorLinkProps, AnchorLinkState, AnchorProps, AnchorRef } from './typings';
@@ -0,0 +1,2 @@
1
+ export { default as Anchor } from "./Anchor";
2
+ export { default as AnchorLink } from "./AnchorLink";
@@ -0,0 +1,101 @@
1
+ import React, { RefObject } from 'react';
2
+ import type { UseNamespaceReturn } from '../hooks';
3
+ import type { BaseProps, NativeProps } from '../types/common';
4
+ /**
5
+ * 锚点链接状态
6
+ */
7
+ export interface AnchorLinkState {
8
+ /** 链接对应的 DOM 元素 */
9
+ el: HTMLElement;
10
+ /** 链接的 href 地址 */
11
+ href: string;
12
+ }
13
+ /**
14
+ * 锚点上下文
15
+ */
16
+ export interface AnchorContext {
17
+ /** 命名空间工具 */
18
+ ns: UseNamespaceReturn;
19
+ /** 锚点方向 */
20
+ direction: 'vertical' | 'horizontal';
21
+ /** 当前激活的锚点 */
22
+ currentAnchor: string;
23
+ /** 注册锚点链接 */
24
+ addLink: (state: AnchorLinkState) => void;
25
+ /** 移除锚点链接 */
26
+ removeLink: (href: string) => void;
27
+ /** 点击事件处理 */
28
+ handleClick: (e: React.MouseEvent, href?: string) => void;
29
+ }
30
+ /**
31
+ * Anchor 组件 Props
32
+ */
33
+ export interface AnchorProps extends BaseProps, NativeProps<'--el-anchor-bg-color' | '--el-anchor-padding-indent' | '--el-anchor-line-height' | '--el-anchor-font-size' | '--el-anchor-color' | '--el-anchor-active-color' | '--el-anchor-marker-bg-color'> {
34
+ /**
35
+ * 滚动的容器
36
+ */
37
+ container?: string | RefObject<HTMLElement> | Window | null;
38
+ /**
39
+ * 设置锚点滚动的偏移量
40
+ * @default 0
41
+ */
42
+ offset?: number;
43
+ /**
44
+ * 触发锚点的元素的位置偏移量
45
+ * @default 15
46
+ */
47
+ bound?: number;
48
+ /**
49
+ * 设置容器滚动持续时间,单位为毫秒
50
+ * @default 300
51
+ */
52
+ duration?: number;
53
+ /**
54
+ * 是否显示标记
55
+ * @default true
56
+ */
57
+ marker?: boolean;
58
+ /**
59
+ * 设置锚点类型
60
+ * @default 'default'
61
+ */
62
+ type?: 'default' | 'underline';
63
+ /**
64
+ * 设置锚点方向
65
+ * @default 'vertical'
66
+ */
67
+ direction?: 'vertical' | 'horizontal';
68
+ /**
69
+ * 滚动时,链接是否选中位于顶部
70
+ * @default false
71
+ */
72
+ selectScrollTop?: boolean;
73
+ /**
74
+ * 锚点链接改变时触发
75
+ */
76
+ onChange?: (href: string) => void;
77
+ /**
78
+ * 当用户点击链接时触发
79
+ */
80
+ onClick?: (e: React.MouseEvent, href?: string) => void;
81
+ }
82
+ /**
83
+ * AnchorLink 组件 Props
84
+ */
85
+ export interface AnchorLinkProps extends BaseProps, NativeProps {
86
+ /**
87
+ * 链接的文本内容
88
+ */
89
+ title?: string | React.ReactNode;
90
+ /**
91
+ * 链接的地址
92
+ */
93
+ href?: string;
94
+ }
95
+ /**
96
+ * Anchor 组件暴露的实例方法
97
+ */
98
+ export interface AnchorRef {
99
+ /** 手动滚动到特定锚点位置 */
100
+ scrollTo: (href: string) => void;
101
+ }
@@ -0,0 +1 @@
1
+ export {};
@@ -0,0 +1,7 @@
1
+ import React from 'react';
2
+ import { BacktopProps } from './typings';
3
+ /**
4
+ * Backtop 回到顶部组件
5
+ */
6
+ declare const Backtop: React.MemoExoticComponent<React.ForwardRefExoticComponent<BacktopProps & React.RefAttributes<HTMLDivElement>>>;
7
+ export default Backtop;
@@ -0,0 +1,153 @@
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 _templateObject;
3
+ function _taggedTemplateLiteral(strings, raw) { if (!raw) { raw = strings.slice(0); } return Object.freeze(Object.defineProperties(strings, { raw: { value: Object.freeze(raw) } })); }
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
+ 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
+ function _toPropertyKey(t) { var i = _toPrimitive(t, "string"); return "symbol" == _typeof(i) ? i : String(i); }
8
+ 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); }
9
+ function _slicedToArray(arr, i) { return _arrayWithHoles(arr) || _iterableToArrayLimit(arr, i) || _unsupportedIterableToArray(arr, i) || _nonIterableRest(); }
10
+ function _nonIterableRest() { throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method."); }
11
+ function _unsupportedIterableToArray(o, minLen) { if (!o) return; if (typeof o === "string") return _arrayLikeToArray(o, minLen); var n = Object.prototype.toString.call(o).slice(8, -1); if (n === "Object" && o.constructor) n = o.constructor.name; if (n === "Map" || n === "Set") return Array.from(o); if (n === "Arguments" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return _arrayLikeToArray(o, minLen); }
12
+ 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
+ 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
+ function _arrayWithHoles(arr) { if (Array.isArray(arr)) return arr; }
15
+ import { useMount } from 'ahooks';
16
+ import classNames from 'classnames';
17
+ import { useComposeRef } from 'rc-util';
18
+ import React, { useCallback, useEffect, useMemo, useRef, useState } from 'react';
19
+ import { useClassNames } from "../hooks";
20
+ import { namespace } from "../hooks/prefix";
21
+ import Icon from "../Icon/Icon";
22
+ import { Transition } from "../Transition";
23
+ import { cAF, mergeDefaultProps, rAF } from "../Util";
24
+ /**
25
+ * Backtop 回到顶部组件
26
+ */
27
+ var Backtop = /*#__PURE__*/React.memo( /*#__PURE__*/React.forwardRef(function (props, ref) {
28
+ props = mergeDefaultProps({
29
+ classPrefix: 'backtop',
30
+ visibilityHeight: 200,
31
+ target: '',
32
+ right: 40,
33
+ bottom: 40
34
+ }, props);
35
+ var _props = props,
36
+ classPrefix = _props.classPrefix,
37
+ visibilityHeight = _props.visibilityHeight,
38
+ target = _props.target,
39
+ right = _props.right,
40
+ bottom = _props.bottom,
41
+ onClick = _props.onClick,
42
+ className = _props.className,
43
+ style = _props.style,
44
+ children = _props.children;
45
+ var _useClassNames = useClassNames(classPrefix),
46
+ b = _useClassNames.b,
47
+ e = _useClassNames.e;
48
+ var elRef = useRef();
49
+ var containerRef = useRef();
50
+ var _useState = useState(false),
51
+ _useState2 = _slicedToArray(_useState, 2),
52
+ visible = _useState2[0],
53
+ setVisible = _useState2[1];
54
+ var _nodeRef = useRef(null);
55
+ var mergedRef = useComposeRef(ref, _nodeRef);
56
+
57
+ /** 节流处理滚动事件 */
58
+ var handleScroll = useCallback(function () {
59
+ if (elRef.current) {
60
+ setVisible(elRef.current.scrollTop >= visibilityHeight);
61
+ }
62
+ }, [visibilityHeight]);
63
+ var throttledRef = useRef(handleScroll);
64
+ throttledRef.current = handleScroll;
65
+ var handleScrollThrottled = useRef();
66
+
67
+ // 初始化节流函数
68
+ useEffect(function () {
69
+ var timer = 0;
70
+ var fn = function fn() {
71
+ if (timer) {
72
+ cAF(timer);
73
+ }
74
+ timer = rAF(function () {
75
+ throttledRef.current();
76
+ timer = 0;
77
+ });
78
+ };
79
+ fn.cancel = function () {
80
+ cAF(timer);
81
+ timer = 0;
82
+ };
83
+ handleScrollThrottled.current = fn;
84
+ return function () {
85
+ fn.cancel();
86
+ };
87
+ }, []);
88
+
89
+ /** 点击回到顶部 */
90
+ var handleClick = useCallback(function (event) {
91
+ var _elRef$current;
92
+ (_elRef$current = elRef.current) === null || _elRef$current === void 0 || _elRef$current.scrollTo({
93
+ top: 0,
94
+ behavior: 'smooth'
95
+ });
96
+ onClick === null || onClick === void 0 || onClick(event);
97
+ }, [onClick]);
98
+
99
+ // 挂载时初始化
100
+ useMount(function () {
101
+ containerRef.current = document;
102
+ elRef.current = document.documentElement;
103
+ if (target) {
104
+ var el = document.querySelector(target);
105
+ if (!el) {
106
+ throw new Error("[Backtop] target does not exist: ".concat(target));
107
+ }
108
+ elRef.current = el;
109
+ containerRef.current = el;
110
+ }
111
+
112
+ // 初始检查
113
+ handleScroll();
114
+ var container = containerRef.current;
115
+ var scrollFn = handleScrollThrottled.current;
116
+ if (container && scrollFn) {
117
+ container.addEventListener('scroll', scrollFn, {
118
+ passive: true
119
+ });
120
+ }
121
+ return function () {
122
+ if (container && scrollFn) {
123
+ container.removeEventListener('scroll', scrollFn);
124
+ }
125
+ };
126
+ });
127
+ var backTopStyle = useMemo(function () {
128
+ return _objectSpread({
129
+ right: "".concat(right, "px"),
130
+ bottom: "".concat(bottom, "px")
131
+ }, style);
132
+ }, [right, bottom, style]);
133
+ return /*#__PURE__*/React.createElement(Transition, {
134
+ visible: visible,
135
+ name: "".concat(namespace, "-fade-in"),
136
+ duration: 300,
137
+ nodeRef: function nodeRef() {
138
+ return _nodeRef;
139
+ },
140
+ display: "flex"
141
+ }, /*#__PURE__*/React.createElement("div", {
142
+ ref: mergedRef,
143
+ className: classNames(b(), className),
144
+ style: backTopStyle,
145
+ onClick: handleClick
146
+ }, children || /*#__PURE__*/React.createElement(Icon, {
147
+ className: e(_templateObject || (_templateObject = _taggedTemplateLiteral(["icon"]))),
148
+ name: "caret-up",
149
+ prefix: "fas"
150
+ })));
151
+ }));
152
+ Backtop.displayName = 'ElBacktop';
153
+ export default Backtop;
@@ -0,0 +1,2 @@
1
+ export { default as Backtop } from './Backtop';
2
+ export type { BacktopProps } from './typings';
@@ -0,0 +1 @@
1
+ export { default as Backtop } from "./Backtop";
@@ -0,0 +1,31 @@
1
+ import React from 'react';
2
+ import { BaseProps, NativeProps } from '../types/common';
3
+ /**
4
+ * Backtop 组件 Props
5
+ */
6
+ export interface BacktopProps extends BaseProps, NativeProps<'--el-backtop-bg-color' | '--el-backtop-text-color' | '--el-backtop-text-color:' | '--el-backtop-hover-bg-color'> {
7
+ /**
8
+ * 滚动高度达到此参数值才出现
9
+ * @default 200
10
+ */
11
+ visibilityHeight?: number;
12
+ /**
13
+ * 触发滚动的对象
14
+ * @default ''
15
+ */
16
+ target?: string;
17
+ /**
18
+ * 控制其显示位置,距离页面右边距
19
+ * @default 40
20
+ */
21
+ right?: number;
22
+ /**
23
+ * 控制其显示位置,距离页面底部距离
24
+ * @default 40
25
+ */
26
+ bottom?: number;
27
+ /**
28
+ * 点击按钮触发的事件
29
+ */
30
+ onClick?: (evt: React.MouseEvent) => void;
31
+ }
@@ -0,0 +1 @@
1
+ export {};