rsuite 5.2.1 → 5.3.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 (451) hide show
  1. package/Avatar/styles/index.less +2 -2
  2. package/AvatarGroup/package.json +7 -0
  3. package/AvatarGroup/styles/index.less +19 -0
  4. package/Button/styles/index.less +6 -0
  5. package/ButtonGroup/styles/index.less +0 -18
  6. package/CHANGELOG.md +49 -0
  7. package/CheckTreePicker/styles/index.less +14 -1
  8. package/PanelGroup/styles/index.less +12 -12
  9. package/Table/styles/index.less +0 -4
  10. package/TreePicker/styles/index.less +10 -0
  11. package/cjs/@types/common.d.ts +9 -8
  12. package/cjs/@types/utils.d.ts +12 -0
  13. package/cjs/Affix/Affix.js +5 -5
  14. package/cjs/Animation/Transition.d.ts +21 -12
  15. package/cjs/Animation/Transition.js +4 -1
  16. package/cjs/AutoComplete/AutoComplete.js +1 -1
  17. package/cjs/AutoComplete/utils.d.ts +1 -1
  18. package/cjs/Avatar/Avatar.js +10 -3
  19. package/cjs/AvatarGroup/AvatarGroup.d.ts +15 -0
  20. package/cjs/AvatarGroup/AvatarGroup.js +71 -0
  21. package/cjs/AvatarGroup/index.d.ts +3 -0
  22. package/cjs/AvatarGroup/index.js +11 -0
  23. package/cjs/Breadcrumb/Breadcrumb.js +1 -1
  24. package/cjs/Button/Button.js +8 -2
  25. package/cjs/ButtonGroup/ButtonGroup.js +8 -2
  26. package/cjs/ButtonGroup/ButtonGroupContext.d.ts +7 -0
  27. package/cjs/ButtonGroup/ButtonGroupContext.js +13 -0
  28. package/cjs/ButtonGroup/index.d.ts +2 -0
  29. package/cjs/ButtonGroup/index.js +3 -0
  30. package/cjs/Calendar/Calendar.d.ts +4 -4
  31. package/cjs/Calendar/Calendar.js +5 -2
  32. package/cjs/Calendar/CalendarContext.js +1 -1
  33. package/cjs/Calendar/TableRow.js +1 -1
  34. package/cjs/Calendar/TimeDropdown.js +6 -5
  35. package/cjs/Calendar/types.d.ts +2 -2
  36. package/cjs/Calendar/useCalendarDate.d.ts +2 -2
  37. package/cjs/Carousel/Carousel.d.ts +2 -2
  38. package/cjs/Carousel/Carousel.js +1 -1
  39. package/cjs/Cascader/Cascader.d.ts +1 -1
  40. package/cjs/Cascader/Cascader.js +10 -10
  41. package/cjs/Cascader/DropdownMenu.d.ts +5 -4
  42. package/cjs/Cascader/utils.d.ts +3 -3
  43. package/cjs/CheckPicker/CheckPicker.js +4 -4
  44. package/cjs/CheckTreePicker/CheckTreeNode.d.ts +1 -1
  45. package/cjs/CheckTreePicker/CheckTreeNode.js +7 -9
  46. package/cjs/CheckTreePicker/CheckTreePicker.js +34 -27
  47. package/cjs/CheckTreePicker/utils.d.ts +3 -1
  48. package/cjs/CheckTreePicker/utils.js +12 -10
  49. package/cjs/Checkbox/Checkbox.d.ts +1 -1
  50. package/cjs/CheckboxGroup/CheckboxGroup.js +2 -2
  51. package/cjs/CustomProvider/CustomProvider.d.ts +31 -57
  52. package/cjs/DOMHelper/index.d.ts +12 -12
  53. package/cjs/DatePicker/DatePicker.d.ts +1 -1
  54. package/cjs/DatePicker/DatePicker.js +15 -9
  55. package/cjs/DatePicker/Toolbar.d.ts +12 -9
  56. package/cjs/DatePicker/Toolbar.js +6 -8
  57. package/cjs/DatePicker/types.d.ts +4 -4
  58. package/cjs/DatePicker/utils.d.ts +4 -3
  59. package/cjs/DateRangePicker/Calendar.d.ts +9 -7
  60. package/cjs/DateRangePicker/Calendar.js +27 -6
  61. package/cjs/DateRangePicker/DateRangePicker.d.ts +8 -6
  62. package/cjs/DateRangePicker/DateRangePicker.js +126 -107
  63. package/cjs/DateRangePicker/types.d.ts +2 -1
  64. package/cjs/DateRangePicker/utils.d.ts +6 -6
  65. package/cjs/DateRangePicker/utils.js +7 -2
  66. package/cjs/Disclosure/Disclosure.js +4 -2
  67. package/cjs/Disclosure/DisclosureButton.js +9 -7
  68. package/cjs/Disclosure/DisclosureContent.js +4 -6
  69. package/cjs/Disclosure/DisclosureContext.d.ts +2 -2
  70. package/cjs/Disclosure/useDisclosureContext.d.ts +2 -0
  71. package/cjs/Disclosure/useDisclosureContext.js +20 -0
  72. package/cjs/Dropdown/Dropdown.d.ts +1 -1
  73. package/cjs/Dropdown/DropdownContext.d.ts +2 -2
  74. package/cjs/Dropdown/DropdownItem.js +3 -2
  75. package/cjs/Dropdown/DropdownMenu.d.ts +3 -3
  76. package/cjs/Dropdown/DropdownState.d.ts +1 -1
  77. package/cjs/Dropdown/DropdownToggle.js +2 -1
  78. package/cjs/Dropdown/useRenderDropdownItem.d.ts +1 -1
  79. package/cjs/Form/Form.js +1 -1
  80. package/cjs/Form/FormContext.d.ts +1 -1
  81. package/cjs/FormControl/FormControl.d.ts +1 -1
  82. package/cjs/FormControl/FormControl.js +5 -4
  83. package/cjs/FormGroup/FormGroup.d.ts +1 -1
  84. package/cjs/Input/Input.d.ts +3 -2
  85. package/cjs/InputGroup/InputGroup.d.ts +1 -1
  86. package/cjs/InputNumber/InputNumber.js +6 -2
  87. package/cjs/InputPicker/InputAutosize.js +4 -4
  88. package/cjs/InputPicker/InputPicker.d.ts +2 -2
  89. package/cjs/InputPicker/InputPicker.js +16 -11
  90. package/cjs/List/ListContext.d.ts +1 -1
  91. package/cjs/List/ListContext.js +8 -1
  92. package/cjs/List/helper/AutoScroller.js +4 -2
  93. package/cjs/List/helper/useManager.d.ts +3 -3
  94. package/cjs/List/helper/useManager.js +1 -1
  95. package/cjs/List/helper/useSortHelper.d.ts +3 -3
  96. package/cjs/List/helper/useSortHelper.js +6 -4
  97. package/cjs/List/helper/utils.d.ts +2 -2
  98. package/cjs/MaskedInput/MaskedInput.d.ts +5 -42
  99. package/cjs/MaskedInput/MaskedInput.js +9 -63
  100. package/cjs/MaskedInput/TextMask.d.ts +43 -0
  101. package/cjs/MaskedInput/TextMask.js +80 -0
  102. package/cjs/MaskedInput/adjustCaretPosition.d.ts +6 -6
  103. package/cjs/MaskedInput/conformToMask.js +5 -4
  104. package/cjs/MaskedInput/createTextMaskInputElement.d.ts +2 -2
  105. package/cjs/MaskedInput/utilities.d.ts +1 -1
  106. package/cjs/Menu/Menu.js +60 -41
  107. package/cjs/Menu/MenuContext.d.ts +1 -1
  108. package/cjs/Menu/MenuItem.d.ts +1 -1
  109. package/cjs/Menu/MenuItem.js +31 -23
  110. package/cjs/Menu/Menubar.js +8 -8
  111. package/cjs/Menu/useMenu.js +17 -7
  112. package/cjs/Modal/Modal.js +12 -6
  113. package/cjs/Modal/ModalContext.d.ts +2 -2
  114. package/cjs/Modal/utils.d.ts +1 -1
  115. package/cjs/Modal/utils.js +12 -15
  116. package/cjs/MultiCascader/DropdownMenu.d.ts +4 -4
  117. package/cjs/MultiCascader/MultiCascader.js +6 -6
  118. package/cjs/MultiCascader/utils.d.ts +14 -14
  119. package/cjs/Nav/Nav.d.ts +1 -1
  120. package/cjs/Nav/NavContext.d.ts +1 -1
  121. package/cjs/Nav/NavItem.d.ts +1 -1
  122. package/cjs/Navbar/Navbar.js +1 -1
  123. package/cjs/Navbar/NavbarItem.d.ts +1 -1
  124. package/cjs/Overlay/Modal.d.ts +2 -2
  125. package/cjs/Overlay/Modal.js +41 -31
  126. package/cjs/Overlay/ModalManager.d.ts +17 -8
  127. package/cjs/Overlay/ModalManager.js +11 -20
  128. package/cjs/Overlay/Overlay.d.ts +2 -2
  129. package/cjs/Overlay/Overlay.js +1 -1
  130. package/cjs/Overlay/OverlayTrigger.d.ts +11 -11
  131. package/cjs/Overlay/OverlayTrigger.js +14 -6
  132. package/cjs/Overlay/Position.d.ts +3 -3
  133. package/cjs/Overlay/Position.js +21 -12
  134. package/cjs/Overlay/positionUtils.d.ts +1 -1
  135. package/cjs/Overlay/positionUtils.js +8 -8
  136. package/cjs/Pagination/Pagination.d.ts +1 -1
  137. package/cjs/Pagination/PaginationButton.d.ts +3 -3
  138. package/cjs/Pagination/PaginationGroup.js +5 -3
  139. package/cjs/Panel/Panel.d.ts +1 -1
  140. package/cjs/Panel/Panel.js +2 -2
  141. package/cjs/PanelGroup/PanelGroup.d.ts +2 -2
  142. package/cjs/Picker/DropdownMenu.d.ts +8 -5
  143. package/cjs/Picker/DropdownMenu.js +5 -5
  144. package/cjs/Picker/PickerOverlay.js +4 -3
  145. package/cjs/Picker/PickerToggle.js +11 -8
  146. package/cjs/Picker/PickerToggleTrigger.d.ts +2 -6
  147. package/cjs/Picker/SearchBar.d.ts +1 -1
  148. package/cjs/Picker/SelectedElement.js +2 -1
  149. package/cjs/Picker/VirtualizedList.d.ts +29 -2
  150. package/cjs/Picker/propTypes.d.ts +2 -2
  151. package/cjs/Picker/utils.d.ts +17 -25
  152. package/cjs/Picker/utils.js +71 -46
  153. package/cjs/Placeholder/PlaceholderGrid.js +1 -1
  154. package/cjs/Plaintext/Plaintext.js +2 -1
  155. package/cjs/Radio/Radio.d.ts +1 -1
  156. package/cjs/RadioGroup/RadioGroup.d.ts +2 -2
  157. package/cjs/RadioGroup/RadioGroup.js +3 -3
  158. package/cjs/RangeSlider/RangeSlider.d.ts +2 -2
  159. package/cjs/RangeSlider/RangeSlider.js +6 -4
  160. package/cjs/Rate/Character.js +4 -2
  161. package/cjs/Rate/Rate.js +5 -2
  162. package/cjs/Ripple/Ripple.js +1 -1
  163. package/cjs/SelectPicker/SelectPicker.js +4 -4
  164. package/cjs/Sidenav/Node.d.ts +1 -1
  165. package/cjs/Sidenav/Sidenav.d.ts +4 -4
  166. package/cjs/Sidenav/Sidenav.js +5 -2
  167. package/cjs/Sidenav/SidenavDropdown.js +11 -8
  168. package/cjs/Sidenav/SidenavDropdownItem.js +10 -5
  169. package/cjs/Sidenav/SidenavDropdownMenu.js +9 -5
  170. package/cjs/Sidenav/SidenavItem.d.ts +1 -1
  171. package/cjs/Sidenav/SidenavItem.js +4 -0
  172. package/cjs/Slider/Graduated.d.ts +5 -5
  173. package/cjs/Slider/Handle.d.ts +1 -1
  174. package/cjs/Slider/Handle.js +10 -6
  175. package/cjs/Slider/Mark.d.ts +1 -1
  176. package/cjs/Slider/Slider.d.ts +1 -1
  177. package/cjs/Slider/Slider.js +2 -2
  178. package/cjs/Slider/utils.d.ts +2 -1
  179. package/cjs/Slider/utils.js +4 -5
  180. package/cjs/Steps/StepItem.js +2 -2
  181. package/cjs/TagInput/index.js +1 -1
  182. package/cjs/Toggle/Toggle.js +1 -1
  183. package/cjs/Tree/Tree.d.ts +3 -1
  184. package/cjs/TreePicker/TreeNode.js +6 -8
  185. package/cjs/TreePicker/TreePicker.js +36 -27
  186. package/cjs/Uploader/UploadFileItem.d.ts +1 -1
  187. package/cjs/Uploader/UploadFileItem.js +2 -2
  188. package/cjs/Uploader/UploadTrigger.d.ts +1 -1
  189. package/cjs/Uploader/UploadTrigger.js +2 -3
  190. package/cjs/Uploader/Uploader.d.ts +5 -5
  191. package/cjs/Uploader/Uploader.js +1 -2
  192. package/cjs/index.d.ts +2 -0
  193. package/cjs/index.js +5 -1
  194. package/cjs/locales/index.d.ts +3 -3
  195. package/cjs/toaster/ToastContainer.d.ts +1 -1
  196. package/cjs/toaster/ToastContainer.js +1 -1
  197. package/cjs/toaster/toaster.js +3 -1
  198. package/cjs/utils/BrowserDetection.js +1 -1
  199. package/cjs/utils/ReactChildren.d.ts +2 -2
  200. package/cjs/utils/ajaxUpload.d.ts +1 -1
  201. package/cjs/utils/ajaxUpload.js +5 -4
  202. package/cjs/utils/appendTooltip.d.ts +1 -1
  203. package/cjs/utils/constants.d.ts +4 -4
  204. package/cjs/utils/createChainedFunction.d.ts +1 -1
  205. package/cjs/utils/getDataGroupBy.d.ts +1 -1
  206. package/cjs/utils/mergeRefs.d.ts +2 -2
  207. package/cjs/utils/previewFile.d.ts +1 -1
  208. package/cjs/utils/propTypeChecker.d.ts +6 -2
  209. package/cjs/utils/propTypeChecker.js +7 -6
  210. package/cjs/utils/reactToString.d.ts +2 -1
  211. package/cjs/utils/statusIcons.d.ts +1 -1
  212. package/cjs/utils/stringToObject.d.ts +1 -1
  213. package/cjs/utils/treeUtils.d.ts +32 -29
  214. package/cjs/utils/treeUtils.js +46 -23
  215. package/cjs/utils/useControlled.d.ts +6 -1
  216. package/cjs/utils/useControlled.js +0 -8
  217. package/cjs/utils/useCustom.js +6 -4
  218. package/cjs/utils/useElementResize.d.ts +1 -1
  219. package/cjs/utils/useElementResize.js +11 -6
  220. package/cjs/utils/useFocus.d.ts +2 -2
  221. package/cjs/utils/usePortal.d.ts +1 -1
  222. package/cjs/utils/useRootClose.d.ts +2 -2
  223. package/cjs/utils/useTimeout.d.ts +1 -1
  224. package/cjs/utils/useTimeout.js +5 -3
  225. package/dist/rsuite-rtl.css +85 -165
  226. package/dist/rsuite-rtl.min.css +1 -1
  227. package/dist/rsuite-rtl.min.css.map +1 -1
  228. package/dist/rsuite.css +85 -165
  229. package/dist/rsuite.js +468 -445
  230. package/dist/rsuite.js.map +1 -1
  231. package/dist/rsuite.min.css +1 -1
  232. package/dist/rsuite.min.css.map +1 -1
  233. package/dist/rsuite.min.js +1 -1
  234. package/dist/rsuite.min.js.LICENSE.txt +9 -0
  235. package/dist/rsuite.min.js.map +1 -1
  236. package/esm/@types/common.d.ts +9 -8
  237. package/esm/@types/utils.d.ts +12 -0
  238. package/esm/Affix/Affix.js +5 -5
  239. package/esm/Animation/Transition.d.ts +21 -12
  240. package/esm/Animation/Transition.js +4 -1
  241. package/esm/AutoComplete/AutoComplete.js +1 -1
  242. package/esm/AutoComplete/utils.d.ts +1 -1
  243. package/esm/Avatar/Avatar.js +7 -3
  244. package/esm/AvatarGroup/AvatarGroup.d.ts +15 -0
  245. package/esm/AvatarGroup/AvatarGroup.js +54 -0
  246. package/esm/AvatarGroup/index.d.ts +3 -0
  247. package/esm/AvatarGroup/index.js +2 -0
  248. package/esm/Breadcrumb/Breadcrumb.js +1 -1
  249. package/esm/Button/Button.js +6 -2
  250. package/esm/ButtonGroup/ButtonGroup.js +7 -2
  251. package/esm/ButtonGroup/ButtonGroupContext.d.ts +7 -0
  252. package/esm/ButtonGroup/ButtonGroupContext.js +3 -0
  253. package/esm/ButtonGroup/index.d.ts +2 -0
  254. package/esm/ButtonGroup/index.js +2 -0
  255. package/esm/Calendar/Calendar.d.ts +4 -4
  256. package/esm/Calendar/Calendar.js +5 -2
  257. package/esm/Calendar/CalendarContext.js +1 -1
  258. package/esm/Calendar/TableRow.js +1 -1
  259. package/esm/Calendar/TimeDropdown.js +5 -4
  260. package/esm/Calendar/types.d.ts +2 -2
  261. package/esm/Calendar/useCalendarDate.d.ts +2 -2
  262. package/esm/Carousel/Carousel.d.ts +2 -2
  263. package/esm/Carousel/Carousel.js +1 -1
  264. package/esm/Cascader/Cascader.d.ts +1 -1
  265. package/esm/Cascader/Cascader.js +10 -10
  266. package/esm/Cascader/DropdownMenu.d.ts +5 -4
  267. package/esm/Cascader/utils.d.ts +3 -3
  268. package/esm/CheckPicker/CheckPicker.js +4 -4
  269. package/esm/CheckTreePicker/CheckTreeNode.d.ts +1 -1
  270. package/esm/CheckTreePicker/CheckTreeNode.js +4 -7
  271. package/esm/CheckTreePicker/CheckTreePicker.js +33 -25
  272. package/esm/CheckTreePicker/utils.d.ts +3 -1
  273. package/esm/CheckTreePicker/utils.js +12 -10
  274. package/esm/Checkbox/Checkbox.d.ts +1 -1
  275. package/esm/CheckboxGroup/CheckboxGroup.js +2 -2
  276. package/esm/CustomProvider/CustomProvider.d.ts +31 -57
  277. package/esm/DOMHelper/index.d.ts +12 -12
  278. package/esm/DatePicker/DatePicker.d.ts +1 -1
  279. package/esm/DatePicker/DatePicker.js +14 -9
  280. package/esm/DatePicker/Toolbar.d.ts +12 -9
  281. package/esm/DatePicker/Toolbar.js +6 -8
  282. package/esm/DatePicker/types.d.ts +4 -4
  283. package/esm/DatePicker/utils.d.ts +4 -3
  284. package/esm/DateRangePicker/Calendar.d.ts +9 -7
  285. package/esm/DateRangePicker/Calendar.js +28 -6
  286. package/esm/DateRangePicker/DateRangePicker.d.ts +8 -6
  287. package/esm/DateRangePicker/DateRangePicker.js +124 -107
  288. package/esm/DateRangePicker/types.d.ts +2 -1
  289. package/esm/DateRangePicker/utils.d.ts +6 -6
  290. package/esm/DateRangePicker/utils.js +6 -2
  291. package/esm/Disclosure/Disclosure.js +4 -2
  292. package/esm/Disclosure/DisclosureButton.js +8 -7
  293. package/esm/Disclosure/DisclosureContent.js +5 -7
  294. package/esm/Disclosure/DisclosureContext.d.ts +2 -2
  295. package/esm/Disclosure/useDisclosureContext.d.ts +2 -0
  296. package/esm/Disclosure/useDisclosureContext.js +11 -0
  297. package/esm/Dropdown/Dropdown.d.ts +1 -1
  298. package/esm/Dropdown/DropdownContext.d.ts +2 -2
  299. package/esm/Dropdown/DropdownItem.js +3 -2
  300. package/esm/Dropdown/DropdownMenu.d.ts +3 -3
  301. package/esm/Dropdown/DropdownState.d.ts +1 -1
  302. package/esm/Dropdown/DropdownToggle.js +2 -1
  303. package/esm/Dropdown/useRenderDropdownItem.d.ts +1 -1
  304. package/esm/Form/Form.js +1 -1
  305. package/esm/Form/FormContext.d.ts +1 -1
  306. package/esm/FormControl/FormControl.d.ts +1 -1
  307. package/esm/FormControl/FormControl.js +5 -4
  308. package/esm/FormGroup/FormGroup.d.ts +1 -1
  309. package/esm/Input/Input.d.ts +3 -2
  310. package/esm/InputGroup/InputGroup.d.ts +1 -1
  311. package/esm/InputNumber/InputNumber.js +6 -2
  312. package/esm/InputPicker/InputAutosize.js +4 -4
  313. package/esm/InputPicker/InputPicker.d.ts +2 -2
  314. package/esm/InputPicker/InputPicker.js +16 -11
  315. package/esm/List/ListContext.d.ts +1 -1
  316. package/esm/List/ListContext.js +7 -1
  317. package/esm/List/helper/AutoScroller.js +4 -2
  318. package/esm/List/helper/useManager.d.ts +3 -3
  319. package/esm/List/helper/useManager.js +1 -1
  320. package/esm/List/helper/useSortHelper.d.ts +3 -3
  321. package/esm/List/helper/useSortHelper.js +6 -4
  322. package/esm/List/helper/utils.d.ts +2 -2
  323. package/esm/MaskedInput/MaskedInput.d.ts +5 -42
  324. package/esm/MaskedInput/MaskedInput.js +9 -63
  325. package/esm/MaskedInput/TextMask.d.ts +43 -0
  326. package/esm/MaskedInput/TextMask.js +67 -0
  327. package/esm/MaskedInput/adjustCaretPosition.d.ts +6 -6
  328. package/esm/MaskedInput/conformToMask.js +5 -4
  329. package/esm/MaskedInput/createTextMaskInputElement.d.ts +2 -2
  330. package/esm/MaskedInput/utilities.d.ts +1 -1
  331. package/esm/Menu/Menu.js +59 -43
  332. package/esm/Menu/MenuContext.d.ts +1 -1
  333. package/esm/Menu/MenuItem.d.ts +1 -1
  334. package/esm/Menu/MenuItem.js +30 -23
  335. package/esm/Menu/Menubar.js +7 -8
  336. package/esm/Menu/useMenu.js +17 -7
  337. package/esm/Modal/Modal.js +12 -6
  338. package/esm/Modal/ModalContext.d.ts +2 -2
  339. package/esm/Modal/utils.d.ts +1 -1
  340. package/esm/Modal/utils.js +11 -12
  341. package/esm/MultiCascader/DropdownMenu.d.ts +4 -4
  342. package/esm/MultiCascader/MultiCascader.js +6 -6
  343. package/esm/MultiCascader/utils.d.ts +14 -14
  344. package/esm/Nav/Nav.d.ts +1 -1
  345. package/esm/Nav/NavContext.d.ts +1 -1
  346. package/esm/Nav/NavItem.d.ts +1 -1
  347. package/esm/Navbar/Navbar.js +1 -1
  348. package/esm/Navbar/NavbarItem.d.ts +1 -1
  349. package/esm/Overlay/Modal.d.ts +2 -2
  350. package/esm/Overlay/Modal.js +42 -32
  351. package/esm/Overlay/ModalManager.d.ts +17 -8
  352. package/esm/Overlay/ModalManager.js +11 -20
  353. package/esm/Overlay/Overlay.d.ts +2 -2
  354. package/esm/Overlay/Overlay.js +1 -1
  355. package/esm/Overlay/OverlayTrigger.d.ts +11 -11
  356. package/esm/Overlay/OverlayTrigger.js +14 -6
  357. package/esm/Overlay/Position.d.ts +3 -3
  358. package/esm/Overlay/Position.js +20 -11
  359. package/esm/Overlay/positionUtils.d.ts +1 -1
  360. package/esm/Overlay/positionUtils.js +6 -6
  361. package/esm/Pagination/Pagination.d.ts +1 -1
  362. package/esm/Pagination/PaginationButton.d.ts +3 -3
  363. package/esm/Pagination/PaginationGroup.js +5 -3
  364. package/esm/Panel/Panel.d.ts +1 -1
  365. package/esm/Panel/Panel.js +2 -2
  366. package/esm/PanelGroup/PanelGroup.d.ts +2 -2
  367. package/esm/Picker/DropdownMenu.d.ts +8 -5
  368. package/esm/Picker/DropdownMenu.js +5 -5
  369. package/esm/Picker/PickerOverlay.js +4 -3
  370. package/esm/Picker/PickerToggle.js +11 -8
  371. package/esm/Picker/PickerToggleTrigger.d.ts +2 -6
  372. package/esm/Picker/SearchBar.d.ts +1 -1
  373. package/esm/Picker/SelectedElement.js +2 -1
  374. package/esm/Picker/VirtualizedList.d.ts +29 -2
  375. package/esm/Picker/propTypes.d.ts +2 -2
  376. package/esm/Picker/utils.d.ts +17 -25
  377. package/esm/Picker/utils.js +70 -46
  378. package/esm/Placeholder/PlaceholderGrid.js +1 -1
  379. package/esm/Plaintext/Plaintext.js +2 -1
  380. package/esm/Radio/Radio.d.ts +1 -1
  381. package/esm/RadioGroup/RadioGroup.d.ts +2 -2
  382. package/esm/RadioGroup/RadioGroup.js +3 -3
  383. package/esm/RangeSlider/RangeSlider.d.ts +2 -2
  384. package/esm/RangeSlider/RangeSlider.js +5 -4
  385. package/esm/Rate/Character.js +3 -2
  386. package/esm/Rate/Rate.js +4 -2
  387. package/esm/Ripple/Ripple.js +1 -1
  388. package/esm/SelectPicker/SelectPicker.js +4 -4
  389. package/esm/Sidenav/Node.d.ts +1 -1
  390. package/esm/Sidenav/Sidenav.d.ts +4 -4
  391. package/esm/Sidenav/Sidenav.js +5 -2
  392. package/esm/Sidenav/SidenavDropdown.js +11 -7
  393. package/esm/Sidenav/SidenavDropdownItem.js +11 -5
  394. package/esm/Sidenav/SidenavDropdownMenu.js +9 -5
  395. package/esm/Sidenav/SidenavItem.d.ts +1 -1
  396. package/esm/Sidenav/SidenavItem.js +4 -0
  397. package/esm/Slider/Graduated.d.ts +5 -5
  398. package/esm/Slider/Handle.d.ts +1 -1
  399. package/esm/Slider/Handle.js +10 -6
  400. package/esm/Slider/Mark.d.ts +1 -1
  401. package/esm/Slider/Slider.d.ts +1 -1
  402. package/esm/Slider/Slider.js +2 -2
  403. package/esm/Slider/utils.d.ts +2 -1
  404. package/esm/Slider/utils.js +5 -2
  405. package/esm/Steps/StepItem.js +2 -2
  406. package/esm/TagInput/index.js +1 -1
  407. package/esm/Toggle/Toggle.js +1 -1
  408. package/esm/Tree/Tree.d.ts +3 -1
  409. package/esm/TreePicker/TreeNode.js +4 -7
  410. package/esm/TreePicker/TreePicker.js +35 -25
  411. package/esm/Uploader/UploadFileItem.d.ts +1 -1
  412. package/esm/Uploader/UploadFileItem.js +2 -2
  413. package/esm/Uploader/UploadTrigger.d.ts +1 -1
  414. package/esm/Uploader/UploadTrigger.js +2 -3
  415. package/esm/Uploader/Uploader.d.ts +5 -5
  416. package/esm/Uploader/Uploader.js +1 -2
  417. package/esm/index.d.ts +2 -0
  418. package/esm/index.js +1 -0
  419. package/esm/locales/index.d.ts +3 -3
  420. package/esm/toaster/ToastContainer.d.ts +1 -1
  421. package/esm/toaster/ToastContainer.js +1 -1
  422. package/esm/toaster/toaster.js +3 -1
  423. package/esm/utils/BrowserDetection.js +1 -1
  424. package/esm/utils/ReactChildren.d.ts +2 -2
  425. package/esm/utils/ajaxUpload.d.ts +1 -1
  426. package/esm/utils/ajaxUpload.js +5 -4
  427. package/esm/utils/appendTooltip.d.ts +1 -1
  428. package/esm/utils/constants.d.ts +4 -4
  429. package/esm/utils/createChainedFunction.d.ts +1 -1
  430. package/esm/utils/getDataGroupBy.d.ts +1 -1
  431. package/esm/utils/mergeRefs.d.ts +2 -2
  432. package/esm/utils/previewFile.d.ts +1 -1
  433. package/esm/utils/propTypeChecker.d.ts +6 -2
  434. package/esm/utils/propTypeChecker.js +7 -6
  435. package/esm/utils/reactToString.d.ts +2 -1
  436. package/esm/utils/statusIcons.d.ts +1 -1
  437. package/esm/utils/stringToObject.d.ts +1 -1
  438. package/esm/utils/treeUtils.d.ts +32 -29
  439. package/esm/utils/treeUtils.js +45 -21
  440. package/esm/utils/useControlled.d.ts +6 -1
  441. package/esm/utils/useControlled.js +0 -8
  442. package/esm/utils/useCustom.js +6 -4
  443. package/esm/utils/useElementResize.d.ts +1 -1
  444. package/esm/utils/useElementResize.js +12 -5
  445. package/esm/utils/useFocus.d.ts +2 -2
  446. package/esm/utils/usePortal.d.ts +1 -1
  447. package/esm/utils/useRootClose.d.ts +2 -2
  448. package/esm/utils/useTimeout.d.ts +1 -1
  449. package/esm/utils/useTimeout.js +5 -3
  450. package/package.json +4 -4
  451. package/styles/index.less +1 -0
@@ -37,16 +37,7 @@ function findContainer(data, modal) {
37
37
  }
38
38
 
39
39
  var ModalManager = /*#__PURE__*/function () {
40
- function ModalManager(hideSiblingNodes) {
41
- if (hideSiblingNodes === void 0) {
42
- hideSiblingNodes = true;
43
- }
44
-
45
- this.hideSiblingNodes = null;
46
- this.modals = [];
47
- this.containers = [];
48
- this.data = [];
49
- this.hideSiblingNodes = hideSiblingNodes;
40
+ function ModalManager() {
50
41
  this.modals = [];
51
42
  this.containers = [];
52
43
  this.data = [];
@@ -70,7 +61,7 @@ var ModalManager = /*#__PURE__*/function () {
70
61
  return modalIndex;
71
62
  }
72
63
 
73
- var data = {
64
+ var containerState = {
74
65
  modals: [modal],
75
66
  classes: className ? className.split(/\s+/) : [],
76
67
  style: {
@@ -80,7 +71,7 @@ var ModalManager = /*#__PURE__*/function () {
80
71
  overflowing: (0, _isOverflowing.default)(container)
81
72
  };
82
73
 
83
- if (data.overflowing) {
74
+ if (containerState.overflowing) {
84
75
  var paddingRight = parseInt((0, _getStyle.default)(container, 'paddingRight') || 0, 10);
85
76
  var barSize = (0, _getScrollbarSize.default)();
86
77
  (0, _addStyle.default)(container, {
@@ -88,9 +79,9 @@ var ModalManager = /*#__PURE__*/function () {
88
79
  });
89
80
  }
90
81
 
91
- data.classes.forEach(_addClass.default.bind(null, container));
82
+ containerState.classes.forEach(_addClass.default.bind(null, container));
92
83
  this.containers.push(container);
93
- this.data.push(data);
84
+ this.data.push(containerState);
94
85
  return modalIndex;
95
86
  };
96
87
 
@@ -102,16 +93,16 @@ var ModalManager = /*#__PURE__*/function () {
102
93
  }
103
94
 
104
95
  var containerIndex = findContainer(this.data, modal);
105
- var data = this.data[containerIndex];
96
+ var containerState = this.data[containerIndex];
106
97
  var container = this.containers[containerIndex];
107
- data.modals.splice(data.modals.indexOf(modal), 1);
98
+ containerState.modals.splice(containerState.modals.indexOf(modal), 1);
108
99
  this.modals.splice(modalIndex, 1);
109
100
 
110
- if (data.modals.length === 0) {
111
- Object.keys(data.style).forEach(function (key) {
112
- return container.style[key] = data.style[key];
101
+ if (containerState.modals.length === 0) {
102
+ Object.keys(containerState.style).forEach(function (key) {
103
+ return container.style[key] = containerState.style[key];
113
104
  });
114
- data.classes.forEach(_removeClass.default.bind(null, container));
105
+ containerState.classes.forEach(_removeClass.default.bind(null, container));
115
106
  this.containers.splice(containerIndex, 1);
116
107
  this.data.splice(containerIndex, 1);
117
108
  }
@@ -3,7 +3,7 @@ import PropTypes from 'prop-types';
3
3
  import { TypeAttributes, AnimationEventProps } from '../@types/common';
4
4
  export interface OverlayProps extends AnimationEventProps {
5
5
  container?: HTMLElement | (() => HTMLElement);
6
- children?: React.ReactElement | ((props: any, ref: any) => React.ReactElement);
6
+ children: React.ReactElement | ((props: any, ref: any) => React.ReactElement);
7
7
  childrenProps?: React.HTMLAttributes<HTMLElement>;
8
8
  className?: string;
9
9
  containerPadding?: number;
@@ -13,7 +13,7 @@ export interface OverlayProps extends AnimationEventProps {
13
13
  rootClose?: boolean;
14
14
  transition?: React.ElementType;
15
15
  triggerTarget?: React.RefObject<any>;
16
- onClose?: () => void;
16
+ onClose?: React.ReactEventHandler;
17
17
  }
18
18
  export declare const overlayPropTypes: {
19
19
  container: PropTypes.Requireable<any>;
@@ -67,7 +67,7 @@ var Overlay = /*#__PURE__*/_react.default.forwardRef(function (props, ref) {
67
67
  exited = _useState[0],
68
68
  setExited = _useState[1];
69
69
 
70
- var overlayTarget = (0, _react.useRef)();
70
+ var overlayTarget = (0, _react.useRef)(null);
71
71
 
72
72
  if (open) {
73
73
  if (exited) setExited(false);
@@ -17,7 +17,7 @@ export interface OverlayTriggerProps extends StandardProps, AnimationEventProps
17
17
  /** Container padding */
18
18
  containerPadding?: number;
19
19
  /** display element */
20
- speaker?: React.ReactElement | ((props: any, ref: React.RefObject<any>) => React.ReactElement);
20
+ speaker: React.ReactElement | ((props: any, ref: React.RefObject<any>) => React.ReactElement);
21
21
  /** Prevent floating element overflow */
22
22
  preventOverflow?: boolean;
23
23
  /** Opern overlay */
@@ -27,7 +27,7 @@ export interface OverlayTriggerProps extends StandardProps, AnimationEventProps
27
27
  /** Whether mouse is allowed to enter the floating layer of popover, whose default value is false. */
28
28
  enterable?: boolean;
29
29
  /** For the monitored component, the event will be bound to this component. */
30
- children?: React.ReactElement | ((props: any, ref: any) => React.ReactElement);
30
+ children: React.ReactElement | ((props: any, ref: any) => React.ReactElement);
31
31
  /** Whether to allow clicking document to close the overlay */
32
32
  rootClose?: boolean;
33
33
  /** Once disabled, the event cannot be triggered. */
@@ -39,27 +39,27 @@ export interface OverlayTriggerProps extends StandardProps, AnimationEventProps
39
39
  /** Set the `id` on `<Overlay>` and `aria-describedby` on `<OverlayTrigger>` */
40
40
  controlId?: string;
41
41
  /** Lose Focus callback function */
42
- onBlur?: () => void;
42
+ onBlur?: React.FocusEventHandler;
43
43
  /** Click on the callback function */
44
- onClick?: () => void;
44
+ onClick?: React.MouseEventHandler;
45
45
  /** RightClick on the callback function */
46
46
  onContextMenu?: React.MouseEventHandler;
47
47
  /** Callback function to get focus */
48
- onFocus?: () => void;
48
+ onFocus?: React.FocusEventHandler;
49
49
  /** Mouse leave callback function */
50
- onMouseOut?: () => void;
50
+ onMouseOut?: React.MouseEventHandler;
51
51
  /** Mouse over callback function */
52
- onMouseOver?: () => void;
52
+ onMouseOver?: React.MouseEventHandler;
53
53
  /** Callback fired when open component */
54
54
  onOpen?: () => void;
55
55
  /** Callback fired when close component */
56
56
  onClose?: () => void;
57
57
  }
58
58
  export interface OverlayTriggerInstance {
59
- root: Element;
60
- updatePosition?: () => void;
61
- open?: () => void;
62
- close?: () => void;
59
+ root: HTMLElement;
60
+ updatePosition: () => void;
61
+ open: () => void;
62
+ close: () => void;
63
63
  }
64
64
  declare const OverlayTrigger: React.ForwardRefExoticComponent<OverlayTriggerProps & React.RefAttributes<unknown>>;
65
65
  export default OverlayTrigger;
@@ -109,8 +109,8 @@ var OverlayTrigger = /*#__PURE__*/_react.default.forwardRef(function (props, ref
109
109
  // In order to keep the overlay open, a timer is used to delay the closing.
110
110
 
111
111
 
112
- var delayOpenTimer = (0, _react.useRef)();
113
- var delayCloseTimer = (0, _react.useRef)();
112
+ var delayOpenTimer = (0, _react.useRef)(null);
113
+ var delayCloseTimer = (0, _react.useRef)(null);
114
114
  var delayOpen = (0, _isNil.default)(delayOpenProp) ? delay : delayOpenProp;
115
115
  var delayClose = (0, _isNil.default)(delayCloseProp) ? delay : delayCloseProp; // Whether the cursor is on the overlay
116
116
 
@@ -119,8 +119,13 @@ var OverlayTrigger = /*#__PURE__*/_react.default.forwardRef(function (props, ref
119
119
  var isOnTrigger = (0, _react.useRef)(false);
120
120
  (0, _react.useEffect)(function () {
121
121
  return function () {
122
- clearTimeout(delayOpenTimer.current);
123
- clearTimeout(delayCloseTimer.current);
122
+ if (!(0, _isNil.default)(delayOpenTimer.current)) {
123
+ clearTimeout(delayOpenTimer.current);
124
+ }
125
+
126
+ if (!(0, _isNil.default)(delayCloseTimer.current)) {
127
+ clearTimeout(delayCloseTimer.current);
128
+ }
124
129
  };
125
130
  }, []);
126
131
  var handleOpen = (0, _react.useCallback)(function (delay) {
@@ -226,8 +231,11 @@ var OverlayTrigger = /*#__PURE__*/_react.default.forwardRef(function (props, ref
226
231
  }
227
232
 
228
233
  delayCloseTimer.current = setTimeout(function () {
229
- clearTimeout(delayCloseTimer.current);
230
- delayCloseTimer.current = null;
234
+ if (!(0, _isNil.default)(delayCloseTimer.current)) {
235
+ clearTimeout(delayCloseTimer.current);
236
+ delayCloseTimer.current = null;
237
+ }
238
+
231
239
  handleCloseWhenLeave();
232
240
  }, 200);
233
241
  }, [enterable, open, handleClose, handleCloseWhenLeave]);
@@ -2,11 +2,11 @@ import React from 'react';
2
2
  import { TypeAttributes } from '../@types/common';
3
3
  export interface PositionChildProps {
4
4
  className: string;
5
- left: number;
6
- top: number;
5
+ left?: number;
6
+ top?: number;
7
7
  }
8
8
  export interface PositionProps {
9
- children?: (props: PositionChildProps, ref: any) => React.ReactElement;
9
+ children: (props: PositionChildProps, ref: any) => React.ReactElement;
10
10
  className?: string;
11
11
  container?: HTMLElement | (() => HTMLElement);
12
12
  containerPadding?: number;
@@ -9,8 +9,6 @@ exports.default = void 0;
9
9
 
10
10
  var _react = _interopRequireWildcard(require("react"));
11
11
 
12
- var _elementResizeEvent = _interopRequireDefault(require("element-resize-event"));
13
-
14
12
  var _propTypes = _interopRequireDefault(require("prop-types"));
15
13
 
16
14
  var _classnames = _interopRequireDefault(require("classnames"));
@@ -27,6 +25,8 @@ var _addClass = _interopRequireDefault(require("dom-lib/addClass"));
27
25
 
28
26
  var _addStyle = _interopRequireDefault(require("dom-lib/addStyle"));
29
27
 
28
+ var _resizeObserver = require("@juggle/resize-observer");
29
+
30
30
  var _isElement = _interopRequireDefault(require("../DOMHelper/isElement"));
31
31
 
32
32
  var _positionUtils = _interopRequireDefault(require("./positionUtils"));
@@ -36,13 +36,15 @@ var _utils = require("../utils");
36
36
  var usePosition = function usePosition(props, ref) {
37
37
  var _props$placement = props.placement,
38
38
  placement = _props$placement === void 0 ? 'right' : _props$placement,
39
- preventOverflow = props.preventOverflow,
39
+ _props$preventOverflo = props.preventOverflow,
40
+ preventOverflow = _props$preventOverflo === void 0 ? false : _props$preventOverflo,
40
41
  _props$containerPaddi = props.containerPadding,
41
42
  containerPadding = _props$containerPaddi === void 0 ? 0 : _props$containerPaddi,
42
43
  container = props.container,
43
44
  triggerTarget = props.triggerTarget;
44
- var containerRef = (0, _react.useRef)();
45
- var lastTargetRef = (0, _react.useRef)();
45
+ var containerRef = (0, _react.useRef)(null);
46
+ var lastTargetRef = (0, _react.useRef)(null);
47
+ var overlayResizeObserver = (0, _react.useRef)();
46
48
  var defaultPosition = {
47
49
  positionLeft: 0,
48
50
  positionTop: 0,
@@ -87,8 +89,9 @@ var usePosition = function usePosition(props, ref) {
87
89
  return;
88
90
  }
89
91
 
90
- var overlay = (0, _utils.getDOMNode)(ref.current);
91
- var containerElement = (0, _getContainer.default)(typeof container === 'function' ? container() : container, (0, _ownerDocument.default)(ref.current).body);
92
+ var overlay = (0, _utils.getDOMNode)(ref.current); // fixme dom-lib getContainer incorrect type
93
+
94
+ var containerElement = (0, _getContainer.default)(typeof container === 'function' ? container() : container !== null && container !== void 0 ? container : null, (0, _ownerDocument.default)(ref.current).body);
92
95
  var posi = utils.calcOverlayPosition(overlay, targetElement, containerElement);
93
96
 
94
97
  if (forceUpdateDOM && overlay) {
@@ -96,7 +99,11 @@ var usePosition = function usePosition(props, ref) {
96
99
 
97
100
  var preClassName = overlay === null || overlay === void 0 ? void 0 : (_overlay$className = overlay.className) === null || _overlay$className === void 0 ? void 0 : (_overlay$className$ma = _overlay$className.match(/(placement-\S+)/)) === null || _overlay$className$ma === void 0 ? void 0 : _overlay$className$ma[0];
98
101
  (0, _removeClass.default)(overlay, preClassName);
99
- (0, _addClass.default)(overlay, posi.positionClassName);
102
+
103
+ if (posi.positionClassName) {
104
+ (0, _addClass.default)(overlay, posi.positionClassName);
105
+ }
106
+
100
107
  (0, _addStyle.default)(overlay, {
101
108
  left: posi.positionLeft + "px",
102
109
  top: posi.positionTop + "px"
@@ -129,17 +136,19 @@ var usePosition = function usePosition(props, ref) {
129
136
 
130
137
  if (overlay) {
131
138
  // Update the position when the size of the overlay changes
132
- (0, _elementResizeEvent.default)(overlay, function () {
139
+ overlayResizeObserver.current = new _resizeObserver.ResizeObserver(function () {
133
140
  return updatePosition(true, true);
134
141
  });
142
+ overlayResizeObserver.current.observe(overlay);
135
143
  }
136
144
 
137
145
  return function () {
138
- var _containerScrollListe;
146
+ var _containerScrollListe, _overlayResizeObserve;
139
147
 
140
148
  lastTargetRef.current = null;
141
149
  (_containerScrollListe = containerScrollListener) === null || _containerScrollListe === void 0 ? void 0 : _containerScrollListe.off();
142
150
  resizeListener === null || resizeListener === void 0 ? void 0 : resizeListener.off();
151
+ (_overlayResizeObserve = overlayResizeObserver.current) === null || _overlayResizeObserve === void 0 ? void 0 : _overlayResizeObserve.disconnect();
143
152
  };
144
153
  }, [preventOverflow, ref, updatePosition]);
145
154
  (0, _utils.useUpdateEffect)(function () {
@@ -152,7 +161,7 @@ var Position = /*#__PURE__*/_react.default.forwardRef(function (props, ref) {
152
161
  var children = props.children,
153
162
  className = props.className;
154
163
 
155
- var childRef = _react.default.useRef();
164
+ var childRef = _react.default.useRef(null);
156
165
 
157
166
  var _usePosition = usePosition(props, childRef),
158
167
  position = _usePosition[0],
@@ -190,7 +199,7 @@ var Position = /*#__PURE__*/_react.default.forwardRef(function (props, ref) {
190
199
  Position.displayName = 'Position';
191
200
  Position.propTypes = {
192
201
  className: _propTypes.default.string,
193
- children: _propTypes.default.func,
202
+ children: _propTypes.default.func.isRequired,
194
203
  container: _propTypes.default.oneOfType([_propTypes.default.func, _propTypes.default.any]),
195
204
  containerPadding: _propTypes.default.number,
196
205
  placement: _propTypes.default.any,
@@ -29,7 +29,7 @@ declare const _default: (props: UtilProps) => {
29
29
  left: number;
30
30
  height: number;
31
31
  width: number;
32
- };
32
+ } | null;
33
33
  calcAutoPlacement(targetOffset: any, container: any, overlay: any): any;
34
34
  calcOverlayPosition(overlayNode: any, target: any, container: any): PositionType;
35
35
  };
@@ -13,7 +13,7 @@ var _kebabCase = _interopRequireDefault(require("lodash/kebabCase"));
13
13
 
14
14
  var _ownerDocument = _interopRequireDefault(require("dom-lib/ownerDocument"));
15
15
 
16
- var _getOffset3 = _interopRequireDefault(require("dom-lib/getOffset"));
16
+ var _getOffset = _interopRequireDefault(require("dom-lib/getOffset"));
17
17
 
18
18
  var _scrollTop = _interopRequireDefault(require("dom-lib/scrollTop"));
19
19
 
@@ -45,10 +45,10 @@ function getContainerDimensions(containerNode) {
45
45
  scrollY = (0, _scrollTop.default)((0, _ownerDocument.default)(containerNode).documentElement) || (0, _scrollTop.default)(containerNode);
46
46
  scrollX = (0, _scrollLeft.default)((0, _ownerDocument.default)(containerNode).documentElement) || (0, _scrollLeft.default)(containerNode);
47
47
  } else {
48
- var _getOffset = (0, _getOffset3.default)(containerNode);
48
+ var _ref = (0, _getOffset.default)(containerNode);
49
49
 
50
- width = _getOffset.width;
51
- height = _getOffset.height;
50
+ width = _ref.width;
51
+ height = _ref.height;
52
52
  scrollY = (0, _scrollTop.default)(containerNode);
53
53
  scrollX = (0, _scrollLeft.default)(containerNode);
54
54
  }
@@ -143,7 +143,7 @@ var _default = function _default(props) {
143
143
 
144
144
  return {
145
145
  getPosition: function getPosition(target, container) {
146
- var offset = container.tagName === 'BODY' ? (0, _getOffset3.default)(target) : (0, _getPosition2.default)(target, container, false);
146
+ var offset = container.tagName === 'BODY' ? (0, _getOffset.default)(target) : (0, _getPosition2.default)(target, container, false);
147
147
  return offset;
148
148
  },
149
149
  calcAutoPlacement: function calcAutoPlacement(targetOffset, container, overlay) {
@@ -213,9 +213,9 @@ var _default = function _default(props) {
213
213
  calcOverlayPosition: function calcOverlayPosition(overlayNode, target, container) {
214
214
  var childOffset = this.getPosition(target, container);
215
215
 
216
- var _getOffset2 = (0, _getOffset3.default)(overlayNode),
217
- overlayHeight = _getOffset2.height,
218
- overlayWidth = _getOffset2.width;
216
+ var _ref2 = (0, _getOffset.default)(overlayNode),
217
+ overlayHeight = _ref2.height,
218
+ overlayWidth = _ref2.width;
219
219
 
220
220
  var top = childOffset.top,
221
221
  left = childOffset.left;
@@ -31,7 +31,7 @@ export interface PaginationProps extends WithAsProps {
31
31
  /** A pagination can have different sizes */
32
32
  size?: TypeAttributes.Size;
33
33
  /** callback function for pagination clicked */
34
- onSelect?: (eventKey: number, event: React.MouseEvent) => void;
34
+ onSelect?: (eventKey: string | number, event: React.MouseEvent) => void;
35
35
  }
36
36
  declare const Pagination: RsRefForwardingComponent<'div', PaginationProps>;
37
37
  export default Pagination;
@@ -1,8 +1,8 @@
1
1
  import React from 'react';
2
2
  import { WithAsProps, RsRefForwardingComponent } from '../@types/common';
3
- export interface PaginationButtonProps extends WithAsProps, Omit<React.HTMLAttributes<HTMLUListElement>, 'onSelect'> {
3
+ export interface PaginationButtonProps<T = number | string> extends WithAsProps, Omit<React.ButtonHTMLAttributes<HTMLButtonElement>, 'onSelect'> {
4
4
  /** The value of the current option */
5
- eventKey?: number | string;
5
+ eventKey: T;
6
6
  /** Called when the button is clicked. */
7
7
  onClick?: React.MouseEventHandler;
8
8
  /** A button can show it is currently unable to be interacted with */
@@ -12,7 +12,7 @@ export interface PaginationButtonProps extends WithAsProps, Omit<React.HTMLAttri
12
12
  /** Primary content */
13
13
  children?: React.ReactNode;
14
14
  /** Select the callback function for the current option */
15
- onSelect?: (eventKey: number | string, event: React.MouseEvent) => void;
15
+ onSelect?: (eventKey: T, event: React.MouseEvent) => void;
16
16
  }
17
17
  declare const PaginationButton: RsRefForwardingComponent<'button', PaginationButtonProps>;
18
18
  export default PaginationButton;
@@ -35,7 +35,7 @@ var LimitPicker = function LimitPicker(props) {
35
35
  onChangeLimit = props.onChangeLimit,
36
36
  size = props.size,
37
37
  prefix = props.prefix;
38
- var disabledPicker = typeof disabled === 'function' ? disabled('picker') : disabled;
38
+ var disabledPicker = typeof disabled === 'function' ? disabled('picker') : Boolean(disabled);
39
39
  var formatlimitOptions = limitOptions.map(function (item) {
40
40
  return {
41
41
  value: item,
@@ -51,7 +51,8 @@ var LimitPicker = function LimitPicker(props) {
51
51
  placement: "topStart",
52
52
  data: formatlimitOptions,
53
53
  value: limit,
54
- onChange: onChangeLimit,
54
+ onChange: onChangeLimit // fixme don't use any
55
+ ,
55
56
  menuStyle: {
56
57
  minWidth: 'auto'
57
58
  },
@@ -153,7 +154,8 @@ var PaginationGroup = /*#__PURE__*/_react.default.forwardRef(function (props, re
153
154
  maxButtons: maxButtons,
154
155
  pages: pages,
155
156
  disabled: disabled,
156
- onSelect: onChangePage,
157
+ onSelect: onChangePage // fixme don't use any
158
+ ,
157
159
  activePage: activePage
158
160
  }, rest));
159
161
  } else if (key === 'total') {
@@ -24,7 +24,7 @@ export interface PanelProps<T = string | number> extends WithAsProps, AnimationE
24
24
  /** Role of Panel */
25
25
  panelRole?: string;
26
26
  /** callback function for the panel clicked */
27
- onSelect?: (eventKey: T, event: React.SyntheticEvent) => void;
27
+ onSelect?: (eventKey: T | undefined, event: React.SyntheticEvent) => void;
28
28
  }
29
29
  declare const Panel: RsRefForwardingComponent<'div', PanelProps>;
30
30
  export default Panel;
@@ -127,7 +127,7 @@ var Panel = /*#__PURE__*/_react.default.forwardRef(function (props, ref) {
127
127
  className: prefix('title'),
128
128
  role: "presentation"
129
129
  }, /*#__PURE__*/_react.default.createElement("span", {
130
- className: expanded ? null : 'collapsed'
130
+ className: expanded ? undefined : 'collapsed'
131
131
  }, header))) : header;
132
132
  } else {
133
133
  var _className = merge(prefix('title'), (0, _get.default)(header, 'props.className'));
@@ -139,7 +139,7 @@ var Panel = /*#__PURE__*/_react.default.forwardRef(function (props, ref) {
139
139
 
140
140
  return /*#__PURE__*/_react.default.createElement("div", {
141
141
  role: headerRole,
142
- "aria-controls": collapsible && id ? "" + id : null,
142
+ "aria-controls": collapsible && id ? "" + id : undefined,
143
143
  "aria-expanded": expanded,
144
144
  className: prefix('header'),
145
145
  onClick: collapsible ? handleSelect : undefined,
@@ -13,12 +13,12 @@ export interface PanelGroupProps<T = KeyType> extends WithAsProps {
13
13
  /** Primary content */
14
14
  children?: React.ReactNode;
15
15
  /** Toggles the callback function for the expand panel */
16
- onSelect?: (eventKey: T, event: React.SyntheticEvent) => void;
16
+ onSelect?: (eventKey: T | undefined, event: React.SyntheticEvent) => void;
17
17
  }
18
18
  interface PanelGroupContext {
19
19
  accordion?: boolean;
20
20
  activeKey?: KeyType;
21
- onGroupSelect?: (activeKey: KeyType, event: React.MouseEvent) => void;
21
+ onGroupSelect?: (activeKey: KeyType | undefined, event: React.MouseEvent) => void;
22
22
  }
23
23
  export declare const PanelGroupContext: React.Context<PanelGroupContext>;
24
24
  declare const PanelGroup: React.ForwardRefExoticComponent<PanelGroupProps<KeyType> & React.RefAttributes<unknown>>;
@@ -2,7 +2,7 @@ import React from 'react';
2
2
  import PropTypes from 'prop-types';
3
3
  import { ListProps } from './VirtualizedList';
4
4
  import { StandardProps, ItemDataType } from '../@types/common';
5
- export interface DropdownMenuProps extends StandardProps, Omit<React.HTMLAttributes<HTMLDivElement>, 'onSelect'> {
5
+ export interface DropdownMenuProps<Multiple = false> extends StandardProps, Omit<React.HTMLAttributes<HTMLDivElement>, 'onSelect'> {
6
6
  classPrefix: string;
7
7
  data?: ItemDataType[];
8
8
  group?: boolean;
@@ -23,14 +23,17 @@ export interface DropdownMenuProps extends StandardProps, Omit<React.HTMLAttribu
23
23
  /** Custom selected option */
24
24
  renderMenuItem?: (itemLabel: React.ReactNode, item: any) => React.ReactNode;
25
25
  renderMenuGroup?: (title: React.ReactNode, item: any) => React.ReactNode;
26
- onSelect?: (value: any, item: any, event: React.MouseEvent, checked?: boolean) => void;
26
+ onSelect?: Multiple extends true ? (value: any, item: any, event: React.MouseEvent, checked: boolean) => void : Multiple extends false ? (value: any, item: any, event: React.MouseEvent) => void : any;
27
27
  onGroupTitleClick?: (event: React.MouseEvent) => void;
28
28
  }
29
- declare const DropdownMenu: React.ForwardRefExoticComponent<DropdownMenuProps & React.RefAttributes<HTMLDivElement>>;
29
+ export declare type DropdownMenuComponent = React.ForwardRefExoticComponent<DropdownMenuProps> & {
30
+ <Multiple = false>(props: DropdownMenuProps<Multiple>): React.ReactElement | null;
31
+ };
32
+ declare const DropdownMenu: DropdownMenuComponent;
30
33
  export declare const dropdownMenuPropTypes: {
31
- classPrefix: PropTypes.Requireable<string>;
34
+ classPrefix: PropTypes.Validator<string>;
32
35
  className: PropTypes.Requireable<string>;
33
- dropdownMenuItemAs: PropTypes.Requireable<PropTypes.ReactComponentLike>;
36
+ dropdownMenuItemAs: PropTypes.Validator<PropTypes.ReactComponentLike>;
34
37
  dropdownMenuItemClassPrefix: PropTypes.Requireable<string>;
35
38
  data: PropTypes.Requireable<any[]>;
36
39
  group: PropTypes.Requireable<boolean>;
@@ -87,7 +87,7 @@ var DropdownMenu = /*#__PURE__*/_react.default.forwardRef(function (props, ref)
87
87
  var styles = (0, _extends2.default)({}, style, {
88
88
  maxHeight: maxHeight
89
89
  });
90
- var menuBodyContainerRef = (0, _react.useRef)();
90
+ var menuBodyContainerRef = (0, _react.useRef)(null);
91
91
 
92
92
  var _useState = (0, _react.useState)([]),
93
93
  foldedGroupKeys = _useState[0],
@@ -209,7 +209,7 @@ var DropdownMenu = /*#__PURE__*/_react.default.forwardRef(function (props, ref)
209
209
 
210
210
  var useVirtualized = virtualized && rowCount * rowHeight > maxHeight;
211
211
  return /*#__PURE__*/_react.default.createElement("div", (0, _extends2.default)({
212
- role: !useVirtualized ? 'listbox' : null
212
+ role: !useVirtualized ? 'listbox' : undefined
213
213
  }, rest, {
214
214
  className: classes,
215
215
  ref: (0, _utils.mergeRefs)(menuBodyContainerRef, ref),
@@ -226,7 +226,7 @@ var DropdownMenu = /*#__PURE__*/_react.default.forwardRef(function (props, ref)
226
226
  return /*#__PURE__*/_react.default.createElement(_VirtualizedList.List, (0, _extends2.default)({
227
227
  role: "listbox",
228
228
  containerRole: '',
229
- "aria-readonly": null,
229
+ "aria-readonly": undefined,
230
230
  width: width,
231
231
  height: height || maxHeight,
232
232
  scrollToIndex: (0, _findIndex.default)(data, function (item) {
@@ -244,9 +244,9 @@ var DropdownMenu = /*#__PURE__*/_react.default.forwardRef(function (props, ref)
244
244
  });
245
245
 
246
246
  var dropdownMenuPropTypes = {
247
- classPrefix: _propTypes.default.string,
247
+ classPrefix: _propTypes.default.string.isRequired,
248
248
  className: _propTypes.default.string,
249
- dropdownMenuItemAs: _propTypes.default.elementType,
249
+ dropdownMenuItemAs: _propTypes.default.elementType.isRequired,
250
250
  dropdownMenuItemClassPrefix: _propTypes.default.string,
251
251
  data: _propTypes.default.array,
252
252
  group: _propTypes.default.bool,
@@ -31,10 +31,11 @@ var PickerOverlay = /*#__PURE__*/_react.default.forwardRef(function (props, ref)
31
31
  classPrefix = _props$classPrefix === void 0 ? 'picker-menu' : _props$classPrefix,
32
32
  autoWidth = props.autoWidth,
33
33
  className = props.className,
34
- placement = props.placement,
34
+ _props$placement = props.placement,
35
+ placement = _props$placement === void 0 ? 'bottomStart' : _props$placement,
35
36
  target = props.target,
36
37
  rest = (0, _objectWithoutPropertiesLoose2.default)(props, ["as", "classPrefix", "autoWidth", "className", "placement", "target"]);
37
- var overlayRef = (0, _react.useRef)();
38
+ var overlayRef = (0, _react.useRef)(null);
38
39
  var handleResize = (0, _react.useCallback)(function () {
39
40
  var instance = target === null || target === void 0 ? void 0 : target.current;
40
41
 
@@ -48,7 +49,7 @@ var PickerOverlay = /*#__PURE__*/_react.default.forwardRef(function (props, ref)
48
49
  (0, _react.useEffect)(function () {
49
50
  var toggle = target === null || target === void 0 ? void 0 : target.current;
50
51
 
51
- if (autoWidth && toggle.root) {
52
+ if (autoWidth && toggle !== null && toggle !== void 0 && toggle.root) {
52
53
  // Get the width value of the button,
53
54
  // and then set it to the menu to make their width consistent.
54
55
  var width = (0, _getWidth.default)((0, _utils.getDOMNode)(toggle.root));
@@ -29,7 +29,7 @@ var _Plaintext = _interopRequireDefault(require("../Plaintext"));
29
29
 
30
30
  var _useToggleCaret = _interopRequireDefault(require("../utils/useToggleCaret"));
31
31
 
32
- var _MaskedInput = _interopRequireDefault(require("../MaskedInput"));
32
+ var _TextMask = _interopRequireDefault(require("../MaskedInput/TextMask"));
33
33
 
34
34
  var _deprecatePropType = _interopRequireDefault(require("../utils/deprecatePropType"));
35
35
 
@@ -68,12 +68,13 @@ var PickerToggle = /*#__PURE__*/_react.default.forwardRef(function (props, ref)
68
68
  onClean = props.onClean,
69
69
  onFocus = props.onFocus,
70
70
  onBlur = props.onBlur,
71
- placement = props.placement,
71
+ _props$placement = props.placement,
72
+ placement = _props$placement === void 0 ? 'bottomStart' : _props$placement,
72
73
  caretComponent = props.caretComponent,
73
74
  _props$caretAs = props.caretAs,
74
75
  caretAs = _props$caretAs === void 0 ? caretComponent : _props$caretAs,
75
76
  rest = (0, _objectWithoutPropertiesLoose2.default)(props, ["active", "as", "classPrefix", "children", "caret", "className", "disabled", "readOnly", "plaintext", "hasValue", "cleanable", "tabIndex", "id", "value", "input", "inputPlaceholder", "inputValue", "inputMask", "onInputChange", "onInputPressEnter", "onInputBlur", "onInputFocus", "onClean", "onFocus", "onBlur", "placement", "caretComponent", "caretAs"]);
76
- var inputRef = (0, _react.useRef)();
77
+ var inputRef = (0, _react.useRef)(null);
77
78
 
78
79
  var _useState = (0, _react.useState)(false),
79
80
  activeState = _useState[0],
@@ -104,15 +105,17 @@ var PickerToggle = /*#__PURE__*/_react.default.forwardRef(function (props, ref)
104
105
  onFocus === null || onFocus === void 0 ? void 0 : onFocus(event);
105
106
 
106
107
  if (input) {
107
- inputRef.current.focus();
108
+ var _inputRef$current;
109
+
110
+ (_inputRef$current = inputRef.current) === null || _inputRef$current === void 0 ? void 0 : _inputRef$current.focus();
108
111
  }
109
112
  }, [input, onFocus]);
110
113
  var handleBlur = (0, _react.useCallback)(function (event) {
111
114
  if (document.activeElement !== inputRef.current) {
112
- var _inputRef$current;
115
+ var _inputRef$current2;
113
116
 
114
117
  setActive(false);
115
- (_inputRef$current = inputRef.current) === null || _inputRef$current === void 0 ? void 0 : _inputRef$current.blur();
118
+ (_inputRef$current2 = inputRef.current) === null || _inputRef$current2 === void 0 ? void 0 : _inputRef$current2.blur();
116
119
  }
117
120
 
118
121
  onBlur === null || onBlur === void 0 ? void 0 : onBlur(event);
@@ -167,7 +170,7 @@ var PickerToggle = /*#__PURE__*/_react.default.forwardRef(function (props, ref)
167
170
  onFocus: !disabled ? handleFocus : null // The debounce is set to 200 to solve the flicker caused by the switch between input and div.
168
171
  ,
169
172
  onBlur: !disabled ? (0, _debounce.default)(handleBlur, 200) : null
170
- }), /*#__PURE__*/_react.default.createElement(_MaskedInput.default, {
173
+ }), /*#__PURE__*/_react.default.createElement(_TextMask.default, {
171
174
  mask: inputMask,
172
175
  value: Array.isArray(inputValue) ? inputValue.toString() : inputValue,
173
176
  onBlur: handleInputBlur,
@@ -191,7 +194,7 @@ var PickerToggle = /*#__PURE__*/_react.default.forwardRef(function (props, ref)
191
194
  }
192
195
  }), children ? /*#__PURE__*/_react.default.createElement("span", {
193
196
  className: prefix(hasValue ? 'value' : 'placeholder'),
194
- "aria-placeholder": typeof children === 'string' ? children : null
197
+ "aria-placeholder": typeof children === 'string' ? children : undefined
195
198
  }, children) : null, showCleanButton && /*#__PURE__*/_react.default.createElement(_CloseButton.default, {
196
199
  className: prefix(_templateObject || (_templateObject = (0, _taggedTemplateLiteralLoose2.default)(["clean"]))),
197
200
  tabIndex: -1,