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

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (704) hide show
  1. package/README.md +42 -3
  2. package/dist/Avatar/Avatar.d.ts +4 -0
  3. package/dist/Avatar/Avatar.js +94 -0
  4. package/dist/Avatar/index.d.ts +2 -0
  5. package/dist/Avatar/index.js +1 -0
  6. package/dist/Avatar/typings.d.ts +21 -0
  7. package/dist/Avatar/typings.js +1 -0
  8. package/dist/Badge/Badge.d.ts +2 -2
  9. package/dist/Badge/Badge.js +75 -60
  10. package/dist/Badge/index.js +1 -39
  11. package/dist/Badge/typings.d.ts +1 -1
  12. package/dist/Badge/typings.js +1 -17
  13. package/dist/Breadcrumb/Breadcrumb.js +32 -50
  14. package/dist/Breadcrumb/BreadcrumbItem.js +45 -51
  15. package/dist/Breadcrumb/index.js +2 -42
  16. package/dist/Breadcrumb/typings.js +1 -17
  17. package/dist/Button/Button.js +136 -104
  18. package/dist/Button/ButtonGroup.js +29 -48
  19. package/dist/Button/ButtonGroupContext.js +2 -30
  20. package/dist/Button/index.js +2 -42
  21. package/dist/Button/typings.d.ts +7 -3
  22. package/dist/Button/typings.js +1 -17
  23. package/dist/Button/useButtonCustomStyle.d.ts +4 -0
  24. package/dist/Button/useButtonCustomStyle.js +65 -0
  25. package/dist/Calendar/Calendar.js +328 -238
  26. package/dist/Calendar/CalendarContext.js +3 -27
  27. package/dist/Calendar/DatePanel.js +226 -159
  28. package/dist/Calendar/DateRangePanel.js +154 -125
  29. package/dist/Calendar/Footer.js +58 -52
  30. package/dist/Calendar/Header.js +87 -65
  31. package/dist/Calendar/MonthPanel.js +151 -124
  32. package/dist/Calendar/MonthRangePanel.js +151 -124
  33. package/dist/Calendar/ShortCuts.js +21 -40
  34. package/dist/Calendar/WeekPanel.js +248 -146
  35. package/dist/Calendar/YearPanel.js +150 -125
  36. package/dist/Calendar/YearRangePanel.js +148 -128
  37. package/dist/Calendar/index.js +4 -47
  38. package/dist/Calendar/typings.js +1 -17
  39. package/dist/Calendar/util.js +26 -68
  40. package/dist/Card/Card.js +45 -46
  41. package/dist/Card/index.js +1 -39
  42. package/dist/Card/typings.js +1 -17
  43. package/dist/Carousel/Carousel.js +202 -166
  44. package/dist/Carousel/CarouselContext.js +14 -42
  45. package/dist/Carousel/CarouselItem.js +55 -71
  46. package/dist/Carousel/hooks/useCarousel.js +263 -238
  47. package/dist/Carousel/hooks/useCarouselItem.js +136 -132
  48. package/dist/Carousel/index.js +2 -42
  49. package/dist/Carousel/typings.js +1 -17
  50. package/dist/Cascader/Cascader.js +703 -569
  51. package/dist/Cascader/CascaderContext.js +9 -45
  52. package/dist/Cascader/CascaderDropdown.js +90 -77
  53. package/dist/Cascader/CascaderMenu.js +101 -114
  54. package/dist/Cascader/Utils.js +6 -33
  55. package/dist/Cascader/index.js +1 -39
  56. package/dist/Cascader/typings.d.ts +1 -1
  57. package/dist/Cascader/typings.js +1 -17
  58. package/dist/Cascader/useCascader.js +648 -458
  59. package/dist/Checkbox/Checkbox.d.ts +3 -3
  60. package/dist/Checkbox/Checkbox.js +138 -161
  61. package/dist/Checkbox/CheckboxButton.js +133 -157
  62. package/dist/Checkbox/index.js +2 -42
  63. package/dist/Checkbox/typings.d.ts +3 -2
  64. package/dist/Checkbox/typings.js +1 -17
  65. package/dist/CheckboxGroup/CheckboxGroup.js +134 -112
  66. package/dist/CheckboxGroup/CheckboxGroupContext.js +2 -30
  67. package/dist/CheckboxGroup/index.js +2 -42
  68. package/dist/Col/Col.js +53 -72
  69. package/dist/Col/index.js +1 -39
  70. package/dist/Col/typings.js +1 -17
  71. package/dist/Collapse/Collapse.js +36 -45
  72. package/dist/Collapse/CollapseContext.js +3 -31
  73. package/dist/Collapse/CollapseItem.js +88 -73
  74. package/dist/Collapse/CollapseTransition.js +29 -67
  75. package/dist/Collapse/index.js +2 -42
  76. package/dist/Collapse/typings.js +1 -17
  77. package/dist/ColorPicker/AlphaSlider.d.ts +0 -7
  78. package/dist/ColorPicker/AlphaSlider.js +110 -99
  79. package/dist/ColorPicker/ColorPicker.d.ts +1 -1
  80. package/dist/ColorPicker/ColorPicker.js +243 -189
  81. package/dist/ColorPicker/HueSlider.d.ts +0 -7
  82. package/dist/ColorPicker/HueSlider.js +95 -96
  83. package/dist/ColorPicker/Predefine.d.ts +0 -7
  84. package/dist/ColorPicker/Predefine.js +58 -66
  85. package/dist/ColorPicker/SvPanel.d.ts +0 -7
  86. package/dist/ColorPicker/SvPanel.js +88 -81
  87. package/dist/ColorPicker/color.js +301 -213
  88. package/dist/ColorPicker/draggable.js +30 -48
  89. package/dist/ColorPicker/index.js +1 -39
  90. package/dist/ColorPicker/typings.js +1 -17
  91. package/dist/ColorPicker/util.js +23 -60
  92. package/dist/ConfigProvider/ConfigProvider.d.ts +6 -20
  93. package/dist/ConfigProvider/ConfigProvider.js +69 -33
  94. package/dist/ConfigProvider/ConfigProviderContext.d.ts +5 -0
  95. package/dist/ConfigProvider/ConfigProviderContext.js +13 -0
  96. package/dist/ConfigProvider/index.d.ts +1 -1
  97. package/dist/ConfigProvider/index.js +1 -39
  98. package/dist/ConfigProvider/typings.d.ts +53 -0
  99. package/dist/ConfigProvider/typings.js +1 -0
  100. package/dist/Container/Aside.d.ts +5 -0
  101. package/dist/Container/Aside.js +26 -0
  102. package/dist/Container/Container.d.ts +5 -0
  103. package/dist/Container/Container.js +37 -0
  104. package/dist/Container/Footer.d.ts +5 -0
  105. package/dist/Container/Footer.js +26 -0
  106. package/dist/Container/Header.d.ts +5 -0
  107. package/dist/Container/Header.js +26 -0
  108. package/dist/Container/Main.d.ts +3 -0
  109. package/dist/Container/Main.js +14 -0
  110. package/dist/Container/index.d.ts +6 -0
  111. package/dist/Container/index.js +5 -0
  112. package/dist/Container/typings.d.ts +30 -0
  113. package/dist/Container/typings.js +1 -0
  114. package/dist/DatePicker/DatePicker.d.ts +3 -3
  115. package/dist/DatePicker/DatePicker.js +251 -227
  116. package/dist/DatePicker/DateRangePicker.d.ts +3 -3
  117. package/dist/DatePicker/DateRangePicker.js +279 -276
  118. package/dist/DatePicker/index.js +2 -39
  119. package/dist/DatePicker/main.d.ts +2 -2
  120. package/dist/DatePicker/main.js +21 -44
  121. package/dist/DatePicker/typings.d.ts +24 -17
  122. package/dist/DatePicker/typings.js +1 -17
  123. package/dist/DateTimePicker/DateTimePicker.d.ts +3 -5
  124. package/dist/DateTimePicker/DateTimePicker.js +286 -215
  125. package/dist/DateTimePicker/index.js +1 -39
  126. package/dist/DateTimePicker/typings.d.ts +10 -13
  127. package/dist/DateTimePicker/typings.js +1 -17
  128. package/dist/DateTimePicker/util.js +5 -35
  129. package/dist/Descriptions/Descriptions.d.ts +2 -2
  130. package/dist/Descriptions/Descriptions.js +85 -64
  131. package/dist/Descriptions/DescriptionsCell.d.ts +11 -12
  132. package/dist/Descriptions/DescriptionsCell.js +75 -80
  133. package/dist/Descriptions/DescriptionsContext.js +4 -32
  134. package/dist/Descriptions/DescriptionsItem.js +4 -27
  135. package/dist/Descriptions/DescriptionsRow.d.ts +2 -5
  136. package/dist/Descriptions/DescriptionsRow.js +49 -44
  137. package/dist/Descriptions/index.js +2 -42
  138. package/dist/Descriptions/typings.js +1 -17
  139. package/dist/Dialog/Dialog.js +228 -179
  140. package/dist/Dialog/DialogBody.js +52 -59
  141. package/dist/Dialog/DialogContext.d.ts +1 -1
  142. package/dist/Dialog/DialogContext.js +7 -45
  143. package/dist/Dialog/DialogFooter.js +21 -45
  144. package/dist/Dialog/DialogHeader.js +44 -50
  145. package/dist/Dialog/index.js +1 -39
  146. package/dist/Dialog/typings.d.ts +1 -1
  147. package/dist/Dialog/typings.js +1 -17
  148. package/dist/Dialog/useDraggable.js +52 -79
  149. package/dist/Divider/Divider.d.ts +3 -3
  150. package/dist/Divider/Divider.js +38 -44
  151. package/dist/Divider/index.js +1 -39
  152. package/dist/Drawer/Drawer.d.ts +2 -5
  153. package/dist/Drawer/Drawer.js +210 -139
  154. package/dist/Drawer/DrawerBody.js +29 -57
  155. package/dist/Drawer/DrawerContext.d.ts +1 -13
  156. package/dist/Drawer/DrawerContext.js +5 -46
  157. package/dist/Drawer/DrawerFooter.js +22 -43
  158. package/dist/Drawer/DrawerHeader.js +34 -54
  159. package/dist/Drawer/index.js +1 -39
  160. package/dist/Drawer/typings.d.ts +31 -10
  161. package/dist/Drawer/typings.js +1 -17
  162. package/dist/Dropdown/Dropdown.d.ts +3 -3
  163. package/dist/Dropdown/Dropdown.js +103 -107
  164. package/dist/Dropdown/DropdownContext.js +5 -43
  165. package/dist/Dropdown/DropdownItem.js +40 -60
  166. package/dist/Dropdown/DropdownMenu.d.ts +5 -2
  167. package/dist/Dropdown/DropdownMenu.js +30 -56
  168. package/dist/Dropdown/index.js +3 -45
  169. package/dist/Dropdown/typings.d.ts +11 -2
  170. package/dist/Dropdown/typings.js +1 -17
  171. package/dist/Empty/Empty.js +32 -53
  172. package/dist/Empty/ImgEmpty.js +115 -117
  173. package/dist/Empty/index.js +1 -39
  174. package/dist/Form/FieldContext.js +8 -37
  175. package/dist/Form/Form.d.ts +9 -4
  176. package/dist/Form/Form.js +170 -163
  177. package/dist/Form/FormContext.js +58 -97
  178. package/dist/Form/FormItem.js +620 -352
  179. package/dist/Form/FormItemContext.js +3 -31
  180. package/dist/Form/List.js +121 -104
  181. package/dist/Form/ListContext.js +3 -27
  182. package/dist/Form/index.js +3 -45
  183. package/dist/Form/typings.d.ts +27 -6
  184. package/dist/Form/typings.js +1 -17
  185. package/dist/Form/useForm.js +830 -690
  186. package/dist/Form/useWatch.js +64 -79
  187. package/dist/Form/utils/NameMap.js +98 -69
  188. package/dist/Form/utils/asyncUtil.js +9 -37
  189. package/dist/Form/utils/classUtil.js +26 -48
  190. package/dist/Form/utils/cloneDeep.js +8 -29
  191. package/dist/Form/utils/get.js +6 -30
  192. package/dist/Form/utils/messages.js +25 -53
  193. package/dist/Form/utils/set.js +31 -44
  194. package/dist/Form/utils/typeUtil.js +3 -31
  195. package/dist/Form/utils/util.js +18 -55
  196. package/dist/Form/utils/validateUtil.js +284 -159
  197. package/dist/Form/utils/valueUtil.js +102 -107
  198. package/dist/Icon/Icon.js +39 -63
  199. package/dist/Icon/IconList/Check.js +25 -65
  200. package/dist/Icon/IconList/Close.js +23 -52
  201. package/dist/Icon/IconList/Delete.js +25 -65
  202. package/dist/Icon/IconList/Down.js +25 -65
  203. package/dist/Icon/IconList/Eye.js +25 -65
  204. package/dist/Icon/IconList/EyeClose.js +25 -65
  205. package/dist/Icon/IconList/Left.js +25 -65
  206. package/dist/Icon/IconList/Link.js +19 -55
  207. package/dist/Icon/IconList/More.js +25 -65
  208. package/dist/Icon/IconList/Question.js +25 -65
  209. package/dist/Icon/IconList/Right.js +25 -65
  210. package/dist/Icon/IconList/Search.js +25 -65
  211. package/dist/Icon/IconList/Up.js +25 -65
  212. package/dist/Icon/IconList/Upload.js +25 -65
  213. package/dist/Icon/IconList/index.js +14 -68
  214. package/dist/Icon/index.js +2 -42
  215. package/dist/Icon/typings.js +1 -17
  216. package/dist/Input/Input.js +335 -358
  217. package/dist/Input/InputGroup.js +27 -43
  218. package/dist/Input/InputRange.js +295 -308
  219. package/dist/Input/TextArea.js +129 -120
  220. package/dist/Input/index.js +3 -45
  221. package/dist/Input/typings.d.ts +1 -1
  222. package/dist/Input/typings.js +1 -17
  223. package/dist/InputNumber/InputNumber.d.ts +2 -2
  224. package/dist/InputNumber/InputNumber.js +225 -204
  225. package/dist/InputNumber/index.js +1 -39
  226. package/dist/InputNumber/typings.d.ts +1 -1
  227. package/dist/InputNumber/typings.js +1 -17
  228. package/dist/Link/Link.js +57 -60
  229. package/dist/Link/index.js +1 -39
  230. package/dist/Link/typings.d.ts +3 -1
  231. package/dist/Link/typings.js +1 -17
  232. package/dist/Loading/Loading.d.ts +7 -2
  233. package/dist/Loading/Loading.js +148 -60
  234. package/dist/Loading/index.js +1 -39
  235. package/dist/Loading/typings.d.ts +7 -1
  236. package/dist/Loading/typings.js +1 -17
  237. package/dist/Menu/Menu.d.ts +4 -0
  238. package/dist/Menu/Menu.js +281 -0
  239. package/dist/Menu/MenuCollapseTransition.d.ts +6 -0
  240. package/dist/Menu/MenuCollapseTransition.js +40 -0
  241. package/dist/Menu/MenuContext.d.ts +18 -0
  242. package/dist/Menu/MenuContext.js +20 -0
  243. package/dist/Menu/MenuItem.d.ts +7 -0
  244. package/dist/Menu/MenuItem.js +77 -0
  245. package/dist/Menu/MenuItemGroup.d.ts +7 -0
  246. package/dist/Menu/MenuItemGroup.js +45 -0
  247. package/dist/Menu/SubMenu.d.ts +7 -0
  248. package/dist/Menu/SubMenu.js +287 -0
  249. package/dist/Menu/SubMenuCollapseTransition.d.ts +6 -0
  250. package/dist/Menu/SubMenuCollapseTransition.js +52 -0
  251. package/dist/Menu/index.d.ts +5 -0
  252. package/dist/Menu/index.js +4 -0
  253. package/dist/Menu/typings.d.ts +121 -0
  254. package/dist/Menu/typings.js +1 -0
  255. package/dist/Menu/useEllipsis.d.ts +6 -0
  256. package/dist/Menu/useEllipsis.js +82 -0
  257. package/dist/Message/Main.d.ts +0 -7
  258. package/dist/Message/Main.js +34 -66
  259. package/dist/Message/Message.d.ts +2 -2
  260. package/dist/Message/Message.js +169 -131
  261. package/dist/Message/index.d.ts +0 -8
  262. package/dist/Message/index.js +71 -93
  263. package/dist/Message/typings.js +1 -17
  264. package/dist/MessageBox/Main.js +43 -68
  265. package/dist/MessageBox/MessageBox.js +270 -202
  266. package/dist/MessageBox/index.d.ts +5 -5
  267. package/dist/MessageBox/index.js +75 -79
  268. package/dist/MessageBox/typings.d.ts +1 -0
  269. package/dist/MessageBox/typings.js +1 -17
  270. package/dist/Notification/Main.d.ts +0 -7
  271. package/dist/Notification/Main.js +34 -66
  272. package/dist/Notification/Notification.js +151 -131
  273. package/dist/Notification/index.d.ts +0 -8
  274. package/dist/Notification/index.js +67 -92
  275. package/dist/Notification/typings.d.ts +0 -2
  276. package/dist/Notification/typings.js +1 -17
  277. package/dist/Pagination/Options.d.ts +7 -2
  278. package/dist/Pagination/Options.js +130 -109
  279. package/dist/Pagination/Pager.js +30 -61
  280. package/dist/Pagination/Pagination.js +470 -418
  281. package/dist/Pagination/index.js +1 -39
  282. package/dist/Pagination/typings.d.ts +27 -28
  283. package/dist/Pagination/typings.js +1 -17
  284. package/dist/Pagination/util.js +10 -41
  285. package/dist/Popconfirm/Popconfirm.d.ts +3 -2
  286. package/dist/Popconfirm/Popconfirm.js +126 -117
  287. package/dist/Popconfirm/index.js +1 -39
  288. package/dist/Popconfirm/typings.d.ts +2 -1
  289. package/dist/Popconfirm/typings.js +1 -17
  290. package/dist/Popover/Popover.d.ts +3 -2
  291. package/dist/Popover/Popover.js +96 -91
  292. package/dist/Popover/index.js +1 -39
  293. package/dist/Popover/typings.d.ts +1 -2
  294. package/dist/Popover/typings.js +1 -17
  295. package/dist/Popper/Popper.js +177 -149
  296. package/dist/Popper/index.js +1 -39
  297. package/dist/Popper/popperOptions.d.ts +7 -6
  298. package/dist/Popper/popperOptions.js +126 -89
  299. package/dist/Popper/typings.d.ts +1 -0
  300. package/dist/Popper/typings.js +1 -17
  301. package/dist/Progress/Progress.js +186 -155
  302. package/dist/Progress/index.js +1 -39
  303. package/dist/Progress/typings.js +1 -17
  304. package/dist/Radio/Radio.js +163 -117
  305. package/dist/Radio/RadioButton.d.ts +2 -2
  306. package/dist/Radio/RadioButton.js +138 -117
  307. package/dist/Radio/index.js +1 -39
  308. package/dist/Radio/typings.d.ts +3 -2
  309. package/dist/Radio/typings.js +1 -17
  310. package/dist/RadioGroup/RadioGroup.js +63 -78
  311. package/dist/RadioGroup/index.js +1 -39
  312. package/dist/RadioGroup/typings.js +1 -17
  313. package/dist/Row/Row.js +41 -62
  314. package/dist/Row/RowContext.js +3 -31
  315. package/dist/Row/index.js +2 -42
  316. package/dist/Row/typings.js +1 -17
  317. package/dist/Scrollbar/Scrollbar.js +172 -133
  318. package/dist/Scrollbar/Thumb.js +108 -96
  319. package/dist/Scrollbar/index.js +1 -39
  320. package/dist/Scrollbar/typings.d.ts +11 -2
  321. package/dist/Scrollbar/typings.js +1 -17
  322. package/dist/Scrollbar/util.js +24 -51
  323. package/dist/Select/Option.js +50 -75
  324. package/dist/Select/OptionGroup.js +31 -47
  325. package/dist/Select/Select.d.ts +3 -15
  326. package/dist/Select/Select.js +22 -51
  327. package/dist/Select/SelectContext.js +8 -46
  328. package/dist/Select/SelectCore.js +494 -382
  329. package/dist/Select/SelectDropdown.js +262 -162
  330. package/dist/Select/index.d.ts +1 -0
  331. package/dist/Select/index.js +3 -42
  332. package/dist/Select/typings.d.ts +19 -2
  333. package/dist/Select/typings.js +1 -17
  334. package/dist/Skeleton/PlaceholderGraph.d.ts +1 -1
  335. package/dist/Skeleton/PlaceholderGraph.js +39 -45
  336. package/dist/Skeleton/PlaceholderGrid.d.ts +1 -1
  337. package/dist/Skeleton/PlaceholderGrid.js +55 -67
  338. package/dist/Skeleton/PlaceholderParagraph.d.ts +2 -2
  339. package/dist/Skeleton/PlaceholderParagraph.js +56 -52
  340. package/dist/Skeleton/Skeleton.d.ts +2 -9
  341. package/dist/Skeleton/Skeleton.js +93 -40
  342. package/dist/Skeleton/SkeletonContext.d.ts +17 -0
  343. package/dist/Skeleton/SkeletonContext.js +5 -0
  344. package/dist/Skeleton/SkeletonItem.d.ts +4 -0
  345. package/dist/Skeleton/SkeletonItem.js +47 -0
  346. package/dist/Skeleton/index.d.ts +2 -3
  347. package/dist/Skeleton/index.js +2 -39
  348. package/dist/Skeleton/typings.d.ts +29 -0
  349. package/dist/Skeleton/typings.js +1 -0
  350. package/dist/Switch/Switch.js +215 -153
  351. package/dist/Switch/index.js +1 -39
  352. package/dist/Switch/typings.d.ts +4 -0
  353. package/dist/Switch/typings.js +1 -17
  354. package/dist/Table/Colgroup.js +17 -41
  355. package/dist/Table/Table.d.ts +1 -2
  356. package/dist/Table/Table.js +254 -188
  357. package/dist/Table/TableBody.js +265 -200
  358. package/dist/Table/TableCell.js +461 -320
  359. package/dist/Table/TableColumn.js +9 -43
  360. package/dist/Table/TableContext.js +44 -63
  361. package/dist/Table/TableHeader.js +112 -102
  362. package/dist/Table/TableHeaderCell.js +214 -161
  363. package/dist/Table/hooks/useResize.js +69 -83
  364. package/dist/Table/hooks/useScroll.js +88 -114
  365. package/dist/Table/hooks/useSelection.d.ts +3 -3
  366. package/dist/Table/hooks/useSelection.js +145 -110
  367. package/dist/Table/hooks/useTable.d.ts +0 -7
  368. package/dist/Table/hooks/useTable.js +404 -310
  369. package/dist/Table/index.js +2 -42
  370. package/dist/Table/treeUtil.js +99 -77
  371. package/dist/Table/typings.d.ts +1 -1
  372. package/dist/Table/typings.js +1 -17
  373. package/dist/Table/util.d.ts +2 -4
  374. package/dist/Table/util.js +168 -109
  375. package/dist/Tabs/TabPane.js +51 -53
  376. package/dist/Tabs/Tabs.d.ts +2 -2
  377. package/dist/Tabs/Tabs.js +282 -179
  378. package/dist/Tabs/TabsContext.js +4 -32
  379. package/dist/Tabs/index.js +2 -42
  380. package/dist/Tabs/typings.d.ts +2 -0
  381. package/dist/Tabs/typings.js +1 -17
  382. package/dist/Tag/Tag.d.ts +1 -1
  383. package/dist/Tag/Tag.js +87 -75
  384. package/dist/Tag/index.js +1 -39
  385. package/dist/Tag/typings.d.ts +1 -1
  386. package/dist/Tag/typings.js +1 -17
  387. package/dist/TimeLine/TimeLine.js +14 -42
  388. package/dist/TimeLine/TimeLineItem.js +67 -54
  389. package/dist/TimeLine/index.js +2 -42
  390. package/dist/TimeLine/typings.d.ts +2 -2
  391. package/dist/TimeLine/typings.js +1 -17
  392. package/dist/TimePicker/TimePicker.d.ts +1 -4
  393. package/dist/TimePicker/TimePicker.js +275 -215
  394. package/dist/TimePicker/TimePickerPanel.js +62 -71
  395. package/dist/TimePicker/TimePickerRange.d.ts +4 -4
  396. package/dist/TimePicker/TimePickerRange.js +371 -334
  397. package/dist/TimePicker/TimeRangePanel.js +182 -165
  398. package/dist/TimePicker/TimeSpinnerPanel.js +321 -267
  399. package/dist/TimePicker/index.d.ts +2 -3
  400. package/dist/TimePicker/index.js +1 -42
  401. package/dist/TimePicker/main.d.ts +9 -0
  402. package/dist/TimePicker/main.js +17 -0
  403. package/dist/TimePicker/typings.d.ts +29 -24
  404. package/dist/TimePicker/typings.js +1 -17
  405. package/dist/TimePicker/useTimePicker.d.ts +0 -7
  406. package/dist/TimePicker/useTimePicker.js +56 -66
  407. package/dist/TimePicker/util.js +8 -40
  408. package/dist/Tooltip/Tooltip.d.ts +3 -3
  409. package/dist/Tooltip/Tooltip.js +174 -180
  410. package/dist/Tooltip/TooltipContext.js +8 -46
  411. package/dist/Tooltip/index.js +2 -42
  412. package/dist/Tooltip/typings.js +1 -17
  413. package/dist/Transfer/List.js +290 -241
  414. package/dist/Transfer/ListBody.js +92 -106
  415. package/dist/Transfer/ListItem.js +38 -51
  416. package/dist/Transfer/Transfer.js +323 -280
  417. package/dist/Transfer/index.js +1 -39
  418. package/dist/Transfer/interface.js +1 -17
  419. package/dist/Transfer/operation.js +35 -48
  420. package/dist/Transfer/search.js +30 -62
  421. package/dist/Transfer/typings/index.js +1 -17
  422. package/dist/Transfer/typings/list.js +1 -17
  423. package/dist/Transfer/typings/listBody.js +2 -30
  424. package/dist/Transition/CssTransiton.d.ts +15 -0
  425. package/dist/Transition/CssTransiton.js +29 -0
  426. package/dist/Transition/Transition.d.ts +2 -0
  427. package/dist/Transition/Transition.js +276 -234
  428. package/dist/Transition/TransitionGroup.js +136 -88
  429. package/dist/Transition/TransitionGroupContext.js +2 -26
  430. package/dist/Transition/childMapping.js +84 -71
  431. package/dist/Transition/index.js +2 -42
  432. package/dist/Transition/util.d.ts +0 -1
  433. package/dist/Transition/util.js +6 -47
  434. package/dist/Tree/DirectoryTree.js +146 -118
  435. package/dist/Tree/DropIndicator.js +15 -45
  436. package/dist/Tree/Indent.js +23 -54
  437. package/dist/Tree/MotionTreeNode.js +94 -95
  438. package/dist/Tree/NodeList.js +228 -221
  439. package/dist/Tree/RCTree.js +969 -702
  440. package/dist/Tree/Tree.js +64 -79
  441. package/dist/Tree/TreeNode.js +254 -255
  442. package/dist/Tree/contextTypes.js +8 -42
  443. package/dist/Tree/index.js +4 -48
  444. package/dist/Tree/typings.js +1 -17
  445. package/dist/Tree/useUnmount.js +21 -41
  446. package/dist/Tree/util.js +156 -134
  447. package/dist/Tree/utils/conductUtil.js +113 -104
  448. package/dist/Tree/utils/dictUtil.js +50 -78
  449. package/dist/Tree/utils/diffUtil.js +26 -43
  450. package/dist/Tree/utils/dropIndicator.js +23 -51
  451. package/dist/Tree/utils/iconUtil.js +44 -51
  452. package/dist/Tree/utils/keyUtil.js +2 -26
  453. package/dist/Tree/utils/motion.js +34 -72
  454. package/dist/Tree/utils/pickAttrs.js +30 -58
  455. package/dist/Tree/utils/treeUtil.js +263 -203
  456. package/dist/TreeSelect/TreeSelect.d.ts +1 -1
  457. package/dist/TreeSelect/TreeSelect.js +521 -459
  458. package/dist/TreeSelect/Utils.js +15 -36
  459. package/dist/TreeSelect/index.js +1 -39
  460. package/dist/TreeSelect/typings.d.ts +1 -1
  461. package/dist/TreeSelect/typings.js +1 -17
  462. package/dist/Upload/Upload.js +106 -109
  463. package/dist/Upload/UploadContent.js +227 -182
  464. package/dist/Upload/UploadContext.js +5 -33
  465. package/dist/Upload/UploadDrag.js +77 -97
  466. package/dist/Upload/UploadList.js +104 -73
  467. package/dist/Upload/ajax.js +45 -71
  468. package/dist/Upload/index.js +1 -39
  469. package/dist/Upload/typings.js +34 -36
  470. package/dist/Upload/use-handlers.js +182 -126
  471. package/dist/Util/Math.js +81 -78
  472. package/dist/Util/PopupManager.js +5 -27
  473. package/dist/Util/base.js +102 -172
  474. package/dist/Util/genFileId.js +3 -29
  475. package/dist/Util/index.js +6 -51
  476. package/dist/Util/resize-event.js +31 -54
  477. package/dist/Util/shallowEqual.js +30 -28
  478. package/dist/Util/treeUtils.js +68 -64
  479. package/dist/config/Constants.js +17 -47
  480. package/dist/display.css +1 -0
  481. package/dist/fonts/fa-brands-400.ttf +0 -0
  482. package/dist/fonts/fa-brands-400.woff2 +0 -0
  483. package/dist/fonts/fa-duotone-900.ttf +0 -0
  484. package/dist/fonts/fa-duotone-900.woff2 +0 -0
  485. package/dist/fonts/fa-light-300.ttf +0 -0
  486. package/dist/fonts/fa-light-300.woff2 +0 -0
  487. package/dist/fonts/fa-regular-400.ttf +0 -0
  488. package/dist/fonts/fa-regular-400.woff2 +0 -0
  489. package/dist/fonts/fa-solid-900.ttf +0 -0
  490. package/dist/fonts/fa-solid-900.woff2 +0 -0
  491. package/dist/fonts/fa-thin-100.ttf +0 -0
  492. package/dist/fonts/fa-thin-100.woff2 +0 -0
  493. package/dist/fonts/fa-v4compatibility.ttf +0 -0
  494. package/dist/fonts/fa-v4compatibility.woff2 +0 -0
  495. package/dist/hooks/animationPropsUtils.d.ts +0 -4
  496. package/dist/hooks/animationPropsUtils.js +21 -49
  497. package/dist/hooks/htmlPropsUtils.js +54 -121
  498. package/dist/hooks/index.js +14 -73
  499. package/dist/hooks/popperPropsUtils.d.ts +0 -4
  500. package/dist/hooks/popperPropsUtils.js +21 -67
  501. package/dist/hooks/prefix.js +22 -55
  502. package/dist/hooks/treePropsUtils.js +24 -103
  503. package/dist/hooks/useChildrenInstance.d.ts +0 -4
  504. package/dist/hooks/useChildrenInstance.js +47 -60
  505. package/dist/hooks/useClassNames.d.ts +3 -0
  506. package/dist/hooks/useClassNames.js +284 -192
  507. package/dist/hooks/useClickOutside.js +37 -62
  508. package/dist/hooks/useCommonProps.js +20 -53
  509. package/dist/hooks/useComponentWillMount.js +4 -28
  510. package/dist/hooks/useControlled.js +31 -37
  511. package/dist/hooks/useCssTransiton.d.ts +27 -0
  512. package/dist/hooks/useCssTransiton.js +87 -0
  513. package/dist/hooks/useForceUpdate.js +16 -34
  514. package/dist/hooks/useResizeObserver.d.ts +42 -0
  515. package/dist/hooks/useResizeObserver.js +42 -0
  516. package/dist/hooks/useUpdateEffect.js +6 -29
  517. package/dist/index.css +1 -12945
  518. package/dist/index.d.ts +15 -10
  519. package/dist/index.js +73 -234
  520. package/dist/locale/en.d.ts +181 -0
  521. package/dist/locale/en.js +180 -0
  522. package/dist/locale/i18n.d.ts +2 -0
  523. package/dist/locale/i18n.js +44 -0
  524. package/dist/locale/zhCn.d.ts +180 -0
  525. package/dist/locale/zhCn.js +179 -0
  526. package/dist/types/common.d.ts +2 -2
  527. package/dist/types/common.js +1 -17
  528. package/dist/types/type.js +16 -28
  529. package/package.json +11 -24
  530. package/theme-chalk/aside.scss +8 -0
  531. package/theme-chalk/avatar.scss +50 -0
  532. package/{dist/theme-chalk/badge/index.scss → theme-chalk/badge.scss} +1 -1
  533. package/{dist/theme-chalk/breadcrumb/index.scss → theme-chalk/breadcrumb.scss} +1 -1
  534. package/theme-chalk/build.scss +2 -0
  535. package/theme-chalk/button/_mixins.scss +317 -0
  536. package/theme-chalk/button/button-group.scss +83 -0
  537. package/theme-chalk/button/button.scss +382 -0
  538. package/theme-chalk/button/index.scss +2 -0
  539. package/{dist/theme-chalk/button → theme-chalk/button--bak}/_mixins.scss +3 -3
  540. package/{dist/theme-chalk/button → theme-chalk/button--bak}/button-group.scss +1 -1
  541. package/{dist/theme-chalk/button → theme-chalk/button--bak}/button.scss +2 -2
  542. package/theme-chalk/button--bak/index.scss +2 -0
  543. package/theme-chalk/button-group.scss +80 -0
  544. package/theme-chalk/button.scss +304 -0
  545. package/{dist/theme-chalk → theme-chalk}/calendar/date-picker.scss +1 -1
  546. package/{dist/theme-chalk → theme-chalk}/calendar/date-range-picker.scss +1 -1
  547. package/theme-chalk/calendar/date-table.scss +164 -0
  548. package/{dist/theme-chalk/calendar/date-table.scss → theme-chalk/calendar/date-table.scss--bak} +1 -1
  549. package/theme-chalk/calendar/index.scss +6 -0
  550. package/{dist/theme-chalk → theme-chalk}/calendar/month-table.scss +1 -1
  551. package/{dist/theme-chalk → theme-chalk}/calendar/picker-panel.scss +1 -1
  552. package/{dist/theme-chalk → theme-chalk}/calendar/year-table.scss +1 -1
  553. package/{dist/theme-chalk/card/index.scss → theme-chalk/card.scss} +1 -1
  554. package/{dist/theme-chalk/carousel/index.scss → theme-chalk/carousel.scss} +1 -1
  555. package/{dist/theme-chalk/cascader → theme-chalk}/cascader-panel.scss +1 -1
  556. package/{dist/theme-chalk/cascader → theme-chalk}/cascader.scss +1 -1
  557. package/{dist/theme-chalk/checkbox-button/index.scss → theme-chalk/checkbox-button.scss} +1 -1
  558. package/{dist/theme-chalk/checkbox-group/index.scss → theme-chalk/checkbox-group.scss} +1 -1
  559. package/{dist/theme-chalk/checkbox/index.scss → theme-chalk/checkbox.scss} +4 -3
  560. package/{dist/theme-chalk → theme-chalk}/col/_mixins.scss +5 -3
  561. package/{dist/theme-chalk → theme-chalk}/col/index.scss +2 -2
  562. package/{dist/theme-chalk/collapse/index.scss → theme-chalk/collapse.scss} +1 -1
  563. package/theme-chalk/color/index.scss +20 -0
  564. package/{dist/theme-chalk/color-picker/index.scss → theme-chalk/color-picker.scss} +3 -3
  565. package/theme-chalk/common/index.scss +171 -0
  566. package/theme-chalk/common/transition.scss +142 -0
  567. package/theme-chalk/common/var.scss +1632 -0
  568. package/theme-chalk/container.scss +14 -0
  569. package/theme-chalk/dark/css-vars.scss +39 -0
  570. package/theme-chalk/dark/var.scss +225 -0
  571. package/{dist/theme-chalk/date-picker/index.scss → theme-chalk/date-picker.scss} +2 -2
  572. package/{dist/theme-chalk/date-time-picker/time-picker.scss → theme-chalk/date-time-picker.scss} +1 -1
  573. package/{dist/theme-chalk/descriptions → theme-chalk}/descriptions-item.scss +1 -1
  574. package/{dist/theme-chalk/descriptions → theme-chalk}/descriptions.scss +1 -1
  575. package/theme-chalk/dev.scss +2 -0
  576. package/{dist/theme-chalk/dialog/index.scss → theme-chalk/dialog.scss} +1 -1
  577. package/theme-chalk/display.scss +46 -0
  578. package/{dist/theme-chalk/divider/index.scss → theme-chalk/divider.scss} +1 -1
  579. package/theme-chalk/doc.scss +2 -0
  580. package/{dist/theme-chalk/drawer/index.scss → theme-chalk/drawer.scss} +62 -66
  581. package/{dist/theme-chalk/dropdown/index.scss → theme-chalk/dropdown.scss} +1 -1
  582. package/{dist/theme-chalk/empty/index.scss → theme-chalk/empty.scss} +1 -1
  583. package/theme-chalk/fonts/fa-brands-400.ttf +0 -0
  584. package/theme-chalk/fonts/fa-brands-400.woff2 +0 -0
  585. package/theme-chalk/fonts/fa-duotone-900.ttf +0 -0
  586. package/theme-chalk/fonts/fa-duotone-900.woff2 +0 -0
  587. package/theme-chalk/fonts/fa-light-300.ttf +0 -0
  588. package/theme-chalk/fonts/fa-light-300.woff2 +0 -0
  589. package/theme-chalk/fonts/fa-regular-400.ttf +0 -0
  590. package/theme-chalk/fonts/fa-regular-400.woff2 +0 -0
  591. package/theme-chalk/fonts/fa-solid-900.ttf +0 -0
  592. package/theme-chalk/fonts/fa-solid-900.woff2 +0 -0
  593. package/theme-chalk/fonts/fa-thin-100.ttf +0 -0
  594. package/theme-chalk/fonts/fa-thin-100.woff2 +0 -0
  595. package/theme-chalk/fonts/fa-v4compatibility.ttf +0 -0
  596. package/theme-chalk/fonts/fa-v4compatibility.woff2 +0 -0
  597. package/theme-chalk/footer.scss +12 -0
  598. package/{dist/theme-chalk/form/index.scss → theme-chalk/form.scss} +22 -3
  599. package/theme-chalk/header.scss +12 -0
  600. package/theme-chalk/icon/fonts.scss +9 -0
  601. package/{dist/theme-chalk → theme-chalk}/icon/index.scss +1 -1
  602. package/{dist/theme-chalk → theme-chalk}/icon/scss/_animated.scss +1 -0
  603. package/{dist/theme-chalk → theme-chalk}/icon/scss/_bordered-pulled.scss +1 -0
  604. package/{dist/theme-chalk → theme-chalk}/icon/scss/_core.scss +2 -0
  605. package/{dist/theme-chalk → theme-chalk}/icon/scss/_duotone-icons.scss +3 -4
  606. package/{dist/theme-chalk → theme-chalk}/icon/scss/_fixed-width.scss +1 -0
  607. package/{dist/theme-chalk → theme-chalk}/icon/scss/_functions.scss +2 -1
  608. package/theme-chalk/icon/scss/_icons.scss +10 -0
  609. package/{dist/theme-chalk → theme-chalk}/icon/scss/_list.scss +1 -0
  610. package/{dist/theme-chalk → theme-chalk}/icon/scss/_mixins.scss +10 -7
  611. package/{dist/theme-chalk → theme-chalk}/icon/scss/_rotated-flipped.scss +1 -0
  612. package/{dist/theme-chalk → theme-chalk}/icon/scss/_screen-reader.scss +2 -0
  613. package/{dist/theme-chalk → theme-chalk}/icon/scss/_shims.scss +610 -608
  614. package/{dist/theme-chalk → theme-chalk}/icon/scss/_sizing.scss +2 -0
  615. package/{dist/theme-chalk → theme-chalk}/icon/scss/_stacked.scss +1 -0
  616. package/theme-chalk/icon/scss/brands.scss +29 -0
  617. package/{dist/theme-chalk → theme-chalk}/icon/scss/duotone.scss +6 -10
  618. package/theme-chalk/icon/scss/fontawesome.scss +13 -0
  619. package/theme-chalk/icon/scss/index.scss +12 -0
  620. package/{dist/theme-chalk → theme-chalk}/icon/scss/light.scss +5 -9
  621. package/{dist/theme-chalk → theme-chalk}/icon/scss/regular.scss +5 -9
  622. package/{dist/theme-chalk → theme-chalk}/icon/scss/solid.scss +5 -9
  623. package/{dist/theme-chalk → theme-chalk}/icon/scss/thin.scss +5 -9
  624. package/{dist/theme-chalk/icon/scss/_variables.scss → theme-chalk/icon/scss/variables.scss} +3 -3
  625. package/theme-chalk/index.scss +81 -0
  626. package/{dist/theme-chalk → theme-chalk}/input/_mixins.scss +1 -1
  627. package/theme-chalk/input/index.scss +2 -0
  628. package/{dist/theme-chalk → theme-chalk}/input/input-range.scss +2 -1
  629. package/{dist/theme-chalk → theme-chalk}/input/input.scss +2 -1
  630. package/{dist/theme-chalk/input-number/index.scss → theme-chalk/input-number.scss} +4 -4
  631. package/theme-chalk/link.scss +87 -0
  632. package/{dist/theme-chalk/link/index.scss → theme-chalk/link.scss--bak} +1 -1
  633. package/{dist/theme-chalk/loading/index.scss → theme-chalk/loading.scss} +6 -8
  634. package/theme-chalk/main.scss +14 -0
  635. package/theme-chalk/menu-item-group.scss +0 -0
  636. package/theme-chalk/menu-item.scss +0 -0
  637. package/theme-chalk/menu.scss +353 -0
  638. package/{dist/theme-chalk/message-box/index.scss → theme-chalk/message-box.scss} +1 -1
  639. package/{dist/theme-chalk/message/index.scss → theme-chalk/message.scss} +18 -9
  640. package/theme-chalk/mixins/_button.scss +224 -0
  641. package/theme-chalk/mixins/_col.scss +33 -0
  642. package/theme-chalk/mixins/_var.scss +67 -0
  643. package/{dist/theme-chalk/common/_var.scss → theme-chalk/mixins/config.scss} +5 -5
  644. package/theme-chalk/mixins/function.scss +99 -0
  645. package/theme-chalk/mixins/mixins.scss +240 -0
  646. package/theme-chalk/mixins/utils.scss +39 -0
  647. package/{dist/theme-chalk/notification/index.scss → theme-chalk/notification.scss} +7 -6
  648. package/theme-chalk/pagination.scss +303 -0
  649. package/{dist/theme-chalk/popconfirm/index.scss → theme-chalk/popconfirm.scss} +1 -1
  650. package/{dist/theme-chalk/popover/index.scss → theme-chalk/popover.scss} +1 -1
  651. package/theme-chalk/popper.scss +104 -0
  652. package/{dist/theme-chalk/popper/index.scss → theme-chalk/popper.scss--bak} +1 -1
  653. package/{dist/theme-chalk/progress/index.scss → theme-chalk/progress.scss} +1 -1
  654. package/theme-chalk/radio-button.scss +169 -0
  655. package/{dist/theme-chalk/radio/radio-button.scss → theme-chalk/radio-button.scss--bak} +1 -1
  656. package/{dist/theme-chalk/radio-group/index.scss → theme-chalk/radio-group.scss} +1 -10
  657. package/{dist/theme-chalk/radio → theme-chalk}/radio.scss +1 -1
  658. package/{dist/theme-chalk/row/index.scss → theme-chalk/row.scss} +1 -1
  659. package/{dist/theme-chalk/scrollbar/index.scss → theme-chalk/scrollbar.scss} +1 -1
  660. package/{dist/theme-chalk → theme-chalk}/select/index.scss +11 -8
  661. package/{dist/theme-chalk/placeholder/index.scss → theme-chalk/skeleton.scss} +23 -38
  662. package/theme-chalk/switch.scss +300 -0
  663. package/{dist/theme-chalk/switch/index.scss → theme-chalk/switch.scss--bak} +1 -1
  664. package/{dist/theme-chalk/table/index.scss → theme-chalk/table.scss} +1 -1
  665. package/{dist/theme-chalk/tabs/index.scss → theme-chalk/tabs.scss} +5 -5
  666. package/theme-chalk/tag.scss +203 -0
  667. package/{dist/theme-chalk/time-line/_timeline.scss → theme-chalk/time-line.scss} +1 -1
  668. package/{dist/theme-chalk/time-picker/index.scss → theme-chalk/time-picker.scss} +1 -1
  669. package/{dist/theme-chalk/date-time-picker → theme-chalk}/time-range-picker.scss +1 -1
  670. package/{dist/theme-chalk/time-line/_timeline-item.scss → theme-chalk/timeline-item.scss} +2 -2
  671. package/{dist/theme-chalk/tooltip/index.scss → theme-chalk/tooltip.scss} +1 -1
  672. package/{dist/theme-chalk/transfer/index.scss → theme-chalk/transfer.scss} +1 -1
  673. package/{dist/theme-chalk/transition/index.scss → theme-chalk/transition.scss} +1 -1
  674. package/{dist/theme-chalk → theme-chalk}/tree/_directory.scss +1 -1
  675. package/{dist/theme-chalk → theme-chalk}/tree/_tree.scss +1 -1
  676. package/theme-chalk/tree/index.scss +2 -0
  677. package/{dist/theme-chalk/tree-select/index.scss → theme-chalk/tree-select.scss} +1 -1
  678. package/{dist/theme-chalk/upload/index.scss → theme-chalk/upload.scss} +1 -1
  679. package/theme-chalk/var.scss +83 -0
  680. package/dist/theme-chalk/button/index.scss +0 -2
  681. package/dist/theme-chalk/calendar/index.scss +0 -6
  682. package/dist/theme-chalk/cascader/index.scss +0 -2
  683. package/dist/theme-chalk/common/index.d.ts +0 -1
  684. package/dist/theme-chalk/common/index.js +0 -2
  685. package/dist/theme-chalk/common/index.scss +0 -222
  686. package/dist/theme-chalk/date-time-picker/index.scss +0 -3
  687. package/dist/theme-chalk/descriptions/index.scss +0 -2
  688. package/dist/theme-chalk/dev.scss +0 -2
  689. package/dist/theme-chalk/icon/fonts.scss +0 -8
  690. package/dist/theme-chalk/icon/scss/_icons.scss +0 -11
  691. package/dist/theme-chalk/icon/scss/brands.scss +0 -32
  692. package/dist/theme-chalk/icon/scss/fontawesome.scss +0 -21
  693. package/dist/theme-chalk/icon/scss/index.scss +0 -15
  694. package/dist/theme-chalk/icon/scss/v4-shims.scss +0 -11
  695. package/dist/theme-chalk/index.scss +0 -65
  696. package/dist/theme-chalk/input/index.scss +0 -3
  697. package/dist/theme-chalk/pagination/index.scss +0 -515
  698. package/dist/theme-chalk/radio/index.scss +0 -2
  699. package/dist/theme-chalk/tag/index.scss +0 -360
  700. package/dist/theme-chalk/time-line/index.scss +0 -2
  701. package/dist/theme-chalk/tree/index.scss +0 -2
  702. /package/{dist/theme-chalk → theme-chalk}/select/option-group.scss +0 -0
  703. /package/{dist/theme-chalk → theme-chalk}/select/option.scss +0 -0
  704. /package/{dist/theme-chalk → theme-chalk}/select/select-dropdown.scss +0 -0
@@ -1,166 +1,205 @@
1
- var __create = Object.create;
2
- var __defProp = Object.defineProperty;
3
- var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
4
- var __getOwnPropNames = Object.getOwnPropertyNames;
5
- var __getProtoOf = Object.getPrototypeOf;
6
- var __hasOwnProp = Object.prototype.hasOwnProperty;
7
- var __export = (target, all) => {
8
- for (var name in all)
9
- __defProp(target, name, { get: all[name], enumerable: true });
10
- };
11
- var __copyProps = (to, from, except, desc) => {
12
- if (from && typeof from === "object" || typeof from === "function") {
13
- for (let key of __getOwnPropNames(from))
14
- if (!__hasOwnProp.call(to, key) && key !== except)
15
- __defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });
16
- }
17
- return to;
18
- };
19
- var __toESM = (mod, isNodeMode, target) => (target = mod != null ? __create(__getProtoOf(mod)) : {}, __copyProps(
20
- // If the importer is in node compatibility mode or this is not an ESM
21
- // file that has been converted to a CommonJS file using a Babel-
22
- // compatible transform (i.e. "__esModule" has not been set), then set
23
- // "default" to the CommonJS "module.exports" for node compatibility.
24
- isNodeMode || !mod || !mod.__esModule ? __defProp(target, "default", { value: mod, enumerable: true }) : target,
25
- mod
26
- ));
27
- var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
1
+ function _typeof(o) { "@babel/helpers - typeof"; return _typeof = "function" == typeof Symbol && "symbol" == typeof Symbol.iterator ? function (o) { return typeof o; } : function (o) { return o && "function" == typeof Symbol && o.constructor === Symbol && o !== Symbol.prototype ? "symbol" : typeof o; }, _typeof(o); }
2
+ var _templateObject, _templateObject2;
3
+ var _excluded = ["tag", "className", "style", "wrapClass", "wrapStyle", "viewClass", "viewStyle", "native", "height", "maxHeight", "minSize", "always", "onScroll", "showHorizontal", "showVertical"];
4
+ function _taggedTemplateLiteral(strings, raw) { if (!raw) { raw = strings.slice(0); } return Object.freeze(Object.defineProperties(strings, { raw: { value: Object.freeze(raw) } })); }
5
+ 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; }
6
+ 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; }
7
+ 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; }
8
+ function _toPropertyKey(t) { var i = _toPrimitive(t, "string"); return "symbol" == _typeof(i) ? i : String(i); }
9
+ 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); }
10
+ function _slicedToArray(arr, i) { return _arrayWithHoles(arr) || _iterableToArrayLimit(arr, i) || _unsupportedIterableToArray(arr, i) || _nonIterableRest(); }
11
+ 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."); }
12
+ 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); }
13
+ 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; }
14
+ 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; } }
15
+ function _arrayWithHoles(arr) { if (Array.isArray(arr)) return arr; }
16
+ function _objectWithoutProperties(source, excluded) { if (source == null) return {}; var target = _objectWithoutPropertiesLoose(source, excluded); var key, i; if (Object.getOwnPropertySymbols) { var sourceSymbolKeys = Object.getOwnPropertySymbols(source); for (i = 0; i < sourceSymbolKeys.length; i++) { key = sourceSymbolKeys[i]; if (excluded.indexOf(key) >= 0) continue; if (!Object.prototype.propertyIsEnumerable.call(source, key)) continue; target[key] = source[key]; } } return target; }
17
+ function _objectWithoutPropertiesLoose(source, excluded) { if (source == null) return {}; var target = {}; var sourceKeys = Object.keys(source); var key, i; for (i = 0; i < sourceKeys.length; i++) { key = sourceKeys[i]; if (excluded.indexOf(key) >= 0) continue; target[key] = source[key]; } return target; }
18
+ import classNames from 'classnames';
19
+ import isNumber from 'lodash/isNumber';
20
+ import isObject from 'lodash/isObject';
21
+ import React, { forwardRef, useCallback, useEffect, useImperativeHandle, useRef, useState } from 'react';
22
+ import { mergeDefaultProps } from "../Util";
23
+ import { addResizeListener, removeResizeListener } from "../Util/resize-event";
24
+ import { partitionHTMLProps, useClassNames } from "../hooks";
25
+ import Thumb from "./Thumb";
26
+ var Scrollbar = /*#__PURE__*/forwardRef(function (props, ref) {
27
+ props = mergeDefaultProps({
28
+ native: false,
29
+ tag: 'div',
30
+ always: false,
31
+ minSize: 20,
32
+ height: '100%',
33
+ showHorizontal: true,
34
+ showVertical: true
35
+ }, props);
36
+ var _props = props,
37
+ tag = _props.tag,
38
+ className = _props.className,
39
+ style = _props.style,
40
+ wrapClass = _props.wrapClass,
41
+ wrapStyle = _props.wrapStyle,
42
+ viewClass = _props.viewClass,
43
+ viewStyle = _props.viewStyle,
44
+ native = _props.native,
45
+ height = _props.height,
46
+ maxHeight = _props.maxHeight,
47
+ minSize = _props.minSize,
48
+ always = _props.always,
49
+ onScroll = _props.onScroll,
50
+ showHorizontal = _props.showHorizontal,
51
+ showVertical = _props.showVertical,
52
+ rest = _objectWithoutProperties(_props, _excluded);
53
+ var _useClassNames = useClassNames('scrollbar'),
54
+ b = _useClassNames.b,
55
+ e = _useClassNames.e,
56
+ em = _useClassNames.em;
57
+ var _partitionHTMLProps = partitionHTMLProps(rest),
58
+ _partitionHTMLProps2 = _slicedToArray(_partitionHTMLProps, 1),
59
+ htmlInputProps = _partitionHTMLProps2[0];
60
+ var containerRef = useRef(null);
61
+ var wrapRef = useRef(null);
62
+ var resizeRef = useRef(null);
63
+ var _useState = useState('0'),
64
+ _useState2 = _slicedToArray(_useState, 2),
65
+ sizeWidth = _useState2[0],
66
+ setSizeWidth = _useState2[1];
67
+ var _useState3 = useState('0'),
68
+ _useState4 = _slicedToArray(_useState3, 2),
69
+ sizeHeight = _useState4[0],
70
+ setSizeHeight = _useState4[1];
71
+ var _useState5 = useState(0),
72
+ _useState6 = _slicedToArray(_useState5, 2),
73
+ moveX = _useState6[0],
74
+ setMoveX = _useState6[1];
75
+ var _useState7 = useState(0),
76
+ _useState8 = _slicedToArray(_useState7, 2),
77
+ moveY = _useState8[0],
78
+ setMoveY = _useState8[1];
79
+ var _useState9 = useState(1),
80
+ _useState10 = _slicedToArray(_useState9, 2),
81
+ ratioX = _useState10[0],
82
+ setRatioX = _useState10[1];
83
+ var _useState11 = useState(1),
84
+ _useState12 = _slicedToArray(_useState11, 2),
85
+ ratioY = _useState12[0],
86
+ setRatioY = _useState12[1];
87
+ var GAP = 4; // top 2 + bottom 2 of bar instance
28
88
 
29
- // src/Scrollbar/Scrollbar.tsx
30
- var Scrollbar_exports = {};
31
- __export(Scrollbar_exports, {
32
- default: () => Scrollbar_default
33
- });
34
- module.exports = __toCommonJS(Scrollbar_exports);
35
- var import_classnames = __toESM(require("classnames"));
36
- var import_isNumber = __toESM(require("lodash/isNumber"));
37
- var import_isObject = __toESM(require("lodash/isObject"));
38
- var import_react = __toESM(require("react"));
39
- var import_Util = require("../Util");
40
- var import_resize_event = require("../Util/resize-event");
41
- var import_hooks = require("../hooks");
42
- var import_Thumb = __toESM(require("./Thumb"));
43
- var Scrollbar = (0, import_react.forwardRef)((props, ref) => {
44
- props = (0, import_Util.mergeDefaultProps)(
45
- {
46
- native: false,
47
- tag: "div",
48
- always: false,
49
- minSize: 20,
50
- height: "100%",
51
- showHorizontal: true,
52
- showVertical: true
53
- },
54
- props
55
- );
56
- const { tag, className, style, wrapClass, wrapStyle, viewClass, viewStyle, native, height, maxHeight, minSize, always, onScroll, showHorizontal, showVertical, ...rest } = props;
57
- const { b, e, em } = (0, import_hooks.useClassNames)("scrollbar");
58
- const [htmlInputProps] = (0, import_hooks.partitionHTMLProps)(rest);
59
- const containerRef = (0, import_react.useRef)();
60
- const wrapRef = (0, import_react.useRef)();
61
- const resizeRef = (0, import_react.useRef)();
62
- const [sizeWidth, setSizeWidth] = (0, import_react.useState)("0");
63
- const [sizeHeight, setSizeHeight] = (0, import_react.useState)("0");
64
- const [moveX, setMoveX] = (0, import_react.useState)(0);
65
- const [moveY, setMoveY] = (0, import_react.useState)(0);
66
- const [ratioX, setRatioX] = (0, import_react.useState)(1);
67
- const [ratioY, setRatioY] = (0, import_react.useState)(1);
68
- const GAP = 4;
69
- const handleScroll = (0, import_react.useCallback)(
70
- (event) => {
71
- if (wrapRef.current) {
72
- const offsetHeight = wrapRef.current.offsetHeight - GAP;
73
- const offsetWidth = wrapRef.current.offsetWidth - GAP;
74
- setMoveX(wrapRef.current.scrollLeft * 100 / offsetWidth * ratioX);
75
- setMoveY(wrapRef.current.scrollTop * 100 / offsetHeight * ratioY);
76
- onScroll == null ? void 0 : onScroll({
77
- e: event,
78
- scrollTop: wrapRef.current.scrollTop,
79
- scrollLeft: wrapRef.current.scrollLeft
80
- });
81
- }
82
- },
83
- [ratioX, ratioY, onScroll]
84
- );
85
- const scrollTo = (0, import_react.useCallback)((options, yCoord) => {
89
+ var handleScroll = useCallback(function (event) {
90
+ if (wrapRef.current) {
91
+ var offsetHeight = wrapRef.current.offsetHeight - GAP;
92
+ var offsetWidth = wrapRef.current.offsetWidth - GAP;
93
+ setMoveX(wrapRef.current.scrollLeft * 100 / offsetWidth * ratioX);
94
+ setMoveY(wrapRef.current.scrollTop * 100 / offsetHeight * ratioY);
95
+ onScroll === null || onScroll === void 0 || onScroll({
96
+ e: event,
97
+ scrollTop: wrapRef.current.scrollTop,
98
+ scrollLeft: wrapRef.current.scrollLeft
99
+ });
100
+ }
101
+ }, [ratioX, ratioY, onScroll]);
102
+
103
+ /** 滚动到一组特定坐标 */
104
+ var scrollTo = useCallback(function (options, yCoord) {
86
105
  if (wrapRef.current) {
87
- if ((0, import_isObject.default)(options)) {
106
+ if (isObject(options)) {
88
107
  wrapRef.current.scrollTo(options);
89
- } else if ((0, import_isNumber.default)(options) && (0, import_isNumber.default)(yCoord)) {
108
+ } else if (isNumber(options) && isNumber(yCoord)) {
90
109
  wrapRef.current.scrollTo(options, yCoord);
91
110
  }
92
111
  }
93
112
  }, []);
94
- const setScrollTop = (0, import_react.useCallback)((value) => {
113
+ var setScrollTop = useCallback(function (value) {
95
114
  if (!value) {
96
115
  return;
97
116
  }
98
117
  wrapRef.current.scrollTop = value;
99
118
  }, []);
100
- const setScrollLeft = (0, import_react.useCallback)((value) => {
119
+ var setScrollLeft = useCallback(function (value) {
101
120
  if (!value) {
102
121
  return;
103
122
  }
104
123
  wrapRef.current.scrollLeft = value;
105
124
  }, []);
106
- const update = (0, import_react.useCallback)(() => {
125
+ var update = useCallback(function () {
107
126
  if (!wrapRef.current) {
108
127
  return;
109
128
  }
110
- const offsetHeight = wrapRef.current.offsetHeight - GAP;
111
- const offsetWidth = wrapRef.current.offsetWidth - GAP;
112
- const originalHeight = offsetHeight ** 2 / wrapRef.current.scrollHeight;
113
- const originalWidth = offsetWidth ** 2 / wrapRef.current.scrollWidth;
114
- const _height = Math.max(originalHeight, minSize);
115
- const width = Math.max(originalWidth, minSize);
129
+ var offsetHeight = wrapRef.current.offsetHeight - GAP;
130
+ var offsetWidth = wrapRef.current.offsetWidth - GAP;
131
+ var originalHeight = Math.pow(offsetHeight, 2) / wrapRef.current.scrollHeight;
132
+ var originalWidth = Math.pow(offsetWidth, 2) / wrapRef.current.scrollWidth;
133
+ var _height = Math.max(originalHeight, minSize);
134
+ var width = Math.max(originalWidth, minSize);
116
135
  setRatioY(originalHeight / (offsetHeight - originalHeight) / (_height / (offsetHeight - _height)));
117
136
  setRatioX(originalWidth / (offsetWidth - originalWidth) / (width / (offsetWidth - width)));
118
- setSizeHeight(_height + GAP < offsetHeight ? _height + "px" : "");
119
- setSizeWidth(width + GAP < offsetWidth ? width + "px" : "");
137
+ setSizeHeight(_height + GAP < offsetHeight ? _height + 'px' : '');
138
+ setSizeWidth(width + GAP < offsetWidth ? width + 'px' : '');
120
139
  }, [minSize]);
121
- (0, import_react.useImperativeHandle)(ref, () => ({
122
- ref: containerRef,
123
- scrollTo,
124
- setScrollLeft,
125
- setScrollTop,
126
- update,
127
- wrapRef,
128
- resizeRef
129
- }));
130
- (0, import_react.useEffect)(() => {
140
+ useImperativeHandle(ref, function () {
141
+ return {
142
+ ref: containerRef,
143
+ scrollTo: scrollTo,
144
+ setScrollLeft: setScrollLeft,
145
+ setScrollTop: setScrollTop,
146
+ update: update,
147
+ wrapRef: wrapRef,
148
+ resizeRef: resizeRef
149
+ };
150
+ });
151
+ useEffect(function () {
131
152
  if (!props.native) {
132
153
  update();
133
154
  }
134
155
  if (!props.noresize) {
135
- (0, import_resize_event.addResizeListener)(resizeRef.current, update);
136
- addEventListener("resize", update);
156
+ addResizeListener(resizeRef.current, update);
157
+ addEventListener('resize', update);
137
158
  }
138
- return () => {
159
+ return function () {
139
160
  if (!props.noresize) {
140
- (0, import_resize_event.removeResizeListener)(resizeRef.current, update);
141
- removeEventListener("resize", update);
161
+ // eslint-disable-next-line react-hooks/exhaustive-deps
162
+ removeResizeListener(resizeRef.current, update);
163
+ removeEventListener('resize', update);
142
164
  }
143
165
  };
144
166
  }, [props.native, props.noresize, update]);
145
- return /* @__PURE__ */ import_react.default.createElement("div", { ref: containerRef, className: (0, import_classnames.default)(b(), className), style: { ...style, height } }, /* @__PURE__ */ import_react.default.createElement(
146
- "div",
147
- {
148
- ref: wrapRef,
149
- className: (0, import_classnames.default)(wrapClass, e`wrap`, { [em("wrap", "hidden-default")]: !native }),
150
- style: { ...wrapStyle, maxHeight },
151
- onScroll: (event) => handleScroll(event)
152
- },
153
- import_react.default.createElement(
154
- tag,
155
- {
156
- ref: resizeRef,
157
- className: (0, import_classnames.default)(viewClass, e`view`),
158
- style: viewStyle,
159
- ...htmlInputProps
160
- },
161
- props.children
162
- )
163
- ), !native ? /* @__PURE__ */ import_react.default.createElement(import_react.default.Fragment, null, showHorizontal && /* @__PURE__ */ import_react.default.createElement(import_Thumb.default, { move: moveX, ratio: ratioX, size: sizeWidth, vertical: false, always, scrollbar: containerRef, wrapRef }), showVertical && /* @__PURE__ */ import_react.default.createElement(import_Thumb.default, { move: moveY, ratio: ratioY, size: sizeHeight, vertical: true, always, scrollbar: containerRef, wrapRef })) : null);
167
+ return /*#__PURE__*/React.createElement("div", {
168
+ ref: containerRef,
169
+ className: classNames(b(), className),
170
+ style: _objectSpread(_objectSpread({}, style), {}, {
171
+ height: height
172
+ })
173
+ }, /*#__PURE__*/React.createElement("div", {
174
+ ref: wrapRef,
175
+ className: classNames(wrapClass, e(_templateObject || (_templateObject = _taggedTemplateLiteral(["wrap"]))), _defineProperty({}, em('wrap', 'hidden-default'), !native)),
176
+ style: _objectSpread(_objectSpread({}, wrapStyle), {}, {
177
+ maxHeight: maxHeight
178
+ }),
179
+ onScroll: function onScroll(event) {
180
+ return handleScroll(event);
181
+ }
182
+ }, /*#__PURE__*/React.createElement(tag, _objectSpread({
183
+ ref: resizeRef,
184
+ className: classNames(viewClass, e(_templateObject2 || (_templateObject2 = _taggedTemplateLiteral(["view"])))),
185
+ style: viewStyle
186
+ }, htmlInputProps), props.children)), !native ? /*#__PURE__*/React.createElement(React.Fragment, null, showHorizontal && /*#__PURE__*/React.createElement(Thumb, {
187
+ move: moveX,
188
+ ratio: ratioX,
189
+ size: sizeWidth,
190
+ vertical: false,
191
+ always: always,
192
+ scrollbar: containerRef,
193
+ wrapRef: wrapRef
194
+ }), showVertical && /*#__PURE__*/React.createElement(Thumb, {
195
+ move: moveY,
196
+ ratio: ratioY,
197
+ size: sizeHeight,
198
+ vertical: true,
199
+ always: always,
200
+ scrollbar: containerRef,
201
+ wrapRef: wrapRef
202
+ })) : null);
164
203
  });
165
- Scrollbar.displayName = "Scrollbar";
166
- var Scrollbar_default = Scrollbar;
204
+ Scrollbar.displayName = 'ElScrollbar';
205
+ export default Scrollbar;
@@ -1,155 +1,167 @@
1
- var __create = Object.create;
2
- var __defProp = Object.defineProperty;
3
- var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
4
- var __getOwnPropNames = Object.getOwnPropertyNames;
5
- var __getProtoOf = Object.getPrototypeOf;
6
- var __hasOwnProp = Object.prototype.hasOwnProperty;
7
- var __export = (target, all) => {
8
- for (var name in all)
9
- __defProp(target, name, { get: all[name], enumerable: true });
10
- };
11
- var __copyProps = (to, from, except, desc) => {
12
- if (from && typeof from === "object" || typeof from === "function") {
13
- for (let key of __getOwnPropNames(from))
14
- if (!__hasOwnProp.call(to, key) && key !== except)
15
- __defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });
16
- }
17
- return to;
18
- };
19
- var __toESM = (mod, isNodeMode, target) => (target = mod != null ? __create(__getProtoOf(mod)) : {}, __copyProps(
20
- // If the importer is in node compatibility mode or this is not an ESM
21
- // file that has been converted to a CommonJS file using a Babel-
22
- // compatible transform (i.e. "__esModule" has not been set), then set
23
- // "default" to the CommonJS "module.exports" for node compatibility.
24
- isNodeMode || !mod || !mod.__esModule ? __defProp(target, "default", { value: mod, enumerable: true }) : target,
25
- mod
26
- ));
27
- var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
28
-
29
- // src/Scrollbar/Thumb.tsx
30
- var Thumb_exports = {};
31
- __export(Thumb_exports, {
32
- default: () => Thumb_default
33
- });
34
- module.exports = __toCommonJS(Thumb_exports);
35
- var import_classnames = __toESM(require("classnames"));
36
- var import_dom_lib = require("dom-lib");
37
- var import_react = __toESM(require("react"));
38
- var import_Transition = require("../Transition");
39
- var import_hooks = require("../hooks");
40
- var import_util = require("./util");
41
- var Thumb = (props) => {
42
- const { always, vertical, scrollbar, wrapRef, size, move } = props;
43
- const { b, e, is } = (0, import_hooks.useClassNames)("scrollbar");
44
- const instanceRef = (0, import_react.useRef)();
45
- const thumbRef = (0, import_react.useRef)();
46
- const bar = (0, import_react.useMemo)(() => import_util.BAR_MAP[vertical ? "vertical" : "horizontal"], [vertical]);
47
- const barStore = (0, import_react.useRef)({});
48
- const cursorDown = (0, import_react.useRef)(null);
49
- const cursorLeave = (0, import_react.useRef)(null);
50
- const [visible, setVisible] = (0, import_react.useState)(false);
51
- let onselectstartStore = null;
52
- const offsetRatio = (0, import_react.useRef)(0);
53
- const getOffsetRatio = () => {
54
- offsetRatio.current = instanceRef.current[bar.offset] ** 2 / wrapRef.current[bar.scrollSize] / props.ratio / thumbRef.current[bar.offset];
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, _templateObject2, _templateObject3;
3
+ function _taggedTemplateLiteral(strings, raw) { if (!raw) { raw = strings.slice(0); } return Object.freeze(Object.defineProperties(strings, { raw: { value: Object.freeze(raw) } })); }
4
+ 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; }
5
+ function _toPropertyKey(t) { var i = _toPrimitive(t, "string"); return "symbol" == _typeof(i) ? i : String(i); }
6
+ 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); }
7
+ function _slicedToArray(arr, i) { return _arrayWithHoles(arr) || _iterableToArrayLimit(arr, i) || _unsupportedIterableToArray(arr, i) || _nonIterableRest(); }
8
+ 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."); }
9
+ 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); }
10
+ 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; }
11
+ 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; } }
12
+ function _arrayWithHoles(arr) { if (Array.isArray(arr)) return arr; }
13
+ import classNames from 'classnames';
14
+ import { addClass, off, on, removeClass } from 'dom-lib';
15
+ import React, { memo, useEffect, useMemo, useRef, useState } from 'react';
16
+ import Transition from "../Transition/Transition";
17
+ import { useClassNames } from "../hooks";
18
+ import { BAR_MAP, renderThumbStyle } from "./util";
19
+ var Thumb = function Thumb(props) {
20
+ var always = props.always,
21
+ vertical = props.vertical,
22
+ scrollbar = props.scrollbar,
23
+ wrapRef = props.wrapRef,
24
+ size = props.size,
25
+ move = props.move;
26
+ var _useClassNames = useClassNames('scrollbar'),
27
+ b = _useClassNames.b,
28
+ e = _useClassNames.e,
29
+ is = _useClassNames.is;
30
+ var instanceRef = useRef(null);
31
+ var thumbRef = useRef(null);
32
+ var bar = useMemo(function () {
33
+ return BAR_MAP[vertical ? 'vertical' : 'horizontal'];
34
+ }, [vertical]);
35
+ var barStore = useRef({});
36
+ var cursorDown = useRef(null);
37
+ var cursorLeave = useRef(null);
38
+ var _useState = useState(false),
39
+ _useState2 = _slicedToArray(_useState, 2),
40
+ visible = _useState2[0],
41
+ setVisible = _useState2[1];
42
+ var onselectstartStore = null;
43
+ var offsetRatio = useRef(0);
44
+ var getOffsetRatio = function getOffsetRatio() {
45
+ offsetRatio.current = Math.pow(instanceRef.current[bar.offset], 2) / wrapRef.current[bar.scrollSize] / props.ratio / thumbRef.current[bar.offset];
55
46
  };
56
- const onEnter = () => {
47
+ var onEnter = function onEnter() {
48
+ // offsetRatioX = original width of thumb / current width of thumb / ratioX
49
+ // offsetRatioY = original height of thumb / current height of thumb / ratioY
50
+ // instance height = wrap height - GAP
57
51
  if (visible) {
58
52
  getOffsetRatio();
59
53
  }
60
54
  };
61
- const clickThumbHandler = (event) => {
55
+ var clickThumbHandler = function clickThumbHandler(event) {
56
+ // prevent click event of middle and right button
62
57
  event.stopPropagation();
63
58
  if (event.ctrlKey || [1, 2].includes(event.button)) {
64
59
  return;
65
60
  }
66
61
  window.getSelection().removeAllRanges();
67
62
  startDrag(event);
68
- Object.assign(barStore.current, {
69
- [bar.axis]: event.currentTarget[bar.offset] - (event[bar.client] - event.currentTarget.getBoundingClientRect()[bar.direction])
70
- });
63
+ Object.assign(barStore.current, _defineProperty({}, bar.axis, event.currentTarget[bar.offset] - (event[bar.client] - event.currentTarget.getBoundingClientRect()[bar.direction])));
71
64
  };
72
- const clickTrackHandler = (event) => {
73
- const offset = Math.abs(event.target.getBoundingClientRect()[bar.direction] - event[bar.client]);
74
- const thumbHalf = thumbRef.current[bar.offset] / 2;
65
+ var clickTrackHandler = function clickTrackHandler(event) {
66
+ var offset = Math.abs(event.target.getBoundingClientRect()[bar.direction] - event[bar.client]);
67
+ var thumbHalf = thumbRef.current[bar.offset] / 2;
75
68
  if (always) {
76
69
  getOffsetRatio();
77
70
  }
78
- const thumbPositionPercentage = (offset - thumbHalf) * 100 * offsetRatio.current / instanceRef.current[bar.offset];
71
+ var thumbPositionPercentage = (offset - thumbHalf) * 100 * offsetRatio.current / instanceRef.current[bar.offset];
79
72
  wrapRef.current[bar.scroll] = thumbPositionPercentage * wrapRef.current[bar.scrollSize] / 100;
80
73
  };
81
- const startDrag = (event) => {
74
+ var startDrag = function startDrag(event) {
82
75
  event.stopPropagation();
83
76
  cursorDown.current = true;
84
- (0, import_dom_lib.addClass)(thumbRef.current, is("hover"));
85
- (0, import_dom_lib.on)(document, "mousemove", mouseMoveDocumentHandler);
86
- (0, import_dom_lib.on)(document, "mouseup", mouseUpDocumentHandler);
77
+ addClass(thumbRef.current, is('hover'));
78
+ on(document, 'mousemove', mouseMoveDocumentHandler);
79
+ on(document, 'mouseup', mouseUpDocumentHandler);
87
80
  onselectstartStore = document.onselectstart;
88
- document.onselectstart = () => false;
81
+ document.onselectstart = function () {
82
+ return false;
83
+ };
89
84
  };
90
- const mouseMoveDocumentHandler = (event) => {
85
+ var mouseMoveDocumentHandler = function mouseMoveDocumentHandler(event) {
91
86
  if (cursorDown.current === false) {
92
87
  return;
93
88
  }
94
- const prevPage = barStore.current[bar.axis];
89
+ var prevPage = barStore.current[bar.axis];
95
90
  if (!prevPage) {
96
91
  return;
97
92
  }
98
93
  if (instanceRef.current && thumbRef.current && wrapRef.current) {
99
- const offset = instanceRef.current ? (instanceRef.current.getBoundingClientRect()[bar.direction] - event[bar.client]) * -1 : 0;
100
- const thumbClickPosition = thumbRef.current[bar.offset] - prevPage;
94
+ var offset = instanceRef.current ? (instanceRef.current.getBoundingClientRect()[bar.direction] - event[bar.client]) * -1 : 0;
95
+ var thumbClickPosition = thumbRef.current[bar.offset] - prevPage;
101
96
  if (always) {
102
97
  getOffsetRatio();
103
98
  }
104
- const thumbPositionPercentage = (offset - thumbClickPosition) * 100 * offsetRatio.current / instanceRef.current[bar.offset];
99
+ var thumbPositionPercentage = (offset - thumbClickPosition) * 100 * offsetRatio.current / instanceRef.current[bar.offset];
105
100
  wrapRef.current[bar.scroll] = thumbPositionPercentage * wrapRef.current[bar.scrollSize] / 100;
106
101
  }
107
102
  };
108
- const mouseUpDocumentHandler = () => {
103
+ var mouseUpDocumentHandler = function mouseUpDocumentHandler() {
109
104
  cursorDown.current = false;
110
- (0, import_dom_lib.removeClass)(thumbRef.current, is("hover"));
111
- Object.assign(barStore.current, {
112
- [bar.axis]: 0
113
- });
114
- (0, import_dom_lib.off)(document, "mousemove", mouseMoveDocumentHandler);
115
- (0, import_dom_lib.off)(document, "mouseup", mouseUpDocumentHandler);
105
+ removeClass(thumbRef.current, is('hover'));
106
+ Object.assign(barStore.current, _defineProperty({}, bar.axis, 0));
107
+ off(document, 'mousemove', mouseMoveDocumentHandler);
108
+ off(document, 'mouseup', mouseUpDocumentHandler);
116
109
  document.onselectstart = onselectstartStore;
117
110
  if (cursorLeave.current) {
118
111
  setVisible(false);
119
112
  }
120
113
  };
121
- const thumbStyle = (0, import_react.useMemo)(() => {
122
- return (0, import_util.renderThumbStyle)({
123
- size,
124
- move,
125
- bar
114
+ var thumbStyle = useMemo(function () {
115
+ return renderThumbStyle({
116
+ size: size,
117
+ move: move,
118
+ bar: bar
126
119
  });
127
120
  }, [size, move, bar]);
128
- const mouseMoveScrollbarHandler = () => {
121
+ var mouseMoveScrollbarHandler = function mouseMoveScrollbarHandler() {
129
122
  if (!always) {
130
123
  cursorLeave.current = false;
131
124
  setVisible(!!props.size);
132
125
  }
133
126
  };
134
- const mouseLeaveScrollbarHandler = () => {
127
+ var mouseLeaveScrollbarHandler = function mouseLeaveScrollbarHandler() {
135
128
  if (!always) {
136
129
  cursorLeave.current = true;
137
130
  setVisible(cursorDown.current);
138
131
  }
139
132
  };
140
- (0, import_react.useEffect)(() => {
133
+ useEffect(function () {
141
134
  if (scrollbar.current) {
142
- (0, import_dom_lib.on)(scrollbar.current, "mousemove", mouseMoveScrollbarHandler);
143
- (0, import_dom_lib.on)(scrollbar.current, "mouseleave", mouseLeaveScrollbarHandler);
135
+ on(scrollbar.current, 'mousemove', mouseMoveScrollbarHandler);
136
+ on(scrollbar.current, 'mouseleave', mouseLeaveScrollbarHandler);
144
137
  }
145
- return () => {
146
- (0, import_dom_lib.off)(document, "mouseup", mouseUpDocumentHandler);
138
+ return function () {
139
+ off(document, 'mouseup', mouseUpDocumentHandler);
147
140
  if (scrollbar.current) {
148
- (0, import_dom_lib.off)(scrollbar.current, "mousemove", mouseMoveScrollbarHandler);
149
- (0, import_dom_lib.off)(scrollbar.current, "mouseleave", mouseLeaveScrollbarHandler);
141
+ off(scrollbar.current, 'mousemove', mouseMoveScrollbarHandler);
142
+ // eslint-disable-next-line react-hooks/exhaustive-deps
143
+ off(scrollbar.current, 'mouseleave', mouseLeaveScrollbarHandler);
150
144
  }
151
145
  };
146
+ // eslint-disable-next-line react-hooks/exhaustive-deps
152
147
  }, []);
153
- return /* @__PURE__ */ import_react.default.createElement(import_Transition.Transition, { nodeRef: instanceRef, name: b`fade`, visible: always || visible, transitionAppear: true, afterEnter: onEnter }, /* @__PURE__ */ import_react.default.createElement("div", { ref: instanceRef, className: (0, import_classnames.default)(e`bar`, is(bar.key, { always })), onMouseDown: clickTrackHandler }, /* @__PURE__ */ import_react.default.createElement("div", { ref: thumbRef, className: (0, import_classnames.default)(e`thumb`), style: thumbStyle, onMouseDown: clickThumbHandler })));
148
+ return /*#__PURE__*/React.createElement(Transition, {
149
+ nodeRef: instanceRef,
150
+ name: b(_templateObject || (_templateObject = _taggedTemplateLiteral(["fade"]))),
151
+ visible: always || visible,
152
+ transitionAppear: true,
153
+ afterEnter: onEnter
154
+ }, /*#__PURE__*/React.createElement("div", {
155
+ ref: instanceRef,
156
+ className: classNames(e(_templateObject2 || (_templateObject2 = _taggedTemplateLiteral(["bar"]))), is(bar.key, {
157
+ always: always
158
+ })),
159
+ onMouseDown: clickTrackHandler
160
+ }, /*#__PURE__*/React.createElement("div", {
161
+ ref: thumbRef,
162
+ className: classNames(e(_templateObject3 || (_templateObject3 = _taggedTemplateLiteral(["thumb"])))),
163
+ style: thumbStyle,
164
+ onMouseDown: clickThumbHandler
165
+ })));
154
166
  };
155
- var Thumb_default = (0, import_react.memo)(Thumb);
167
+ export default /*#__PURE__*/memo(Thumb);