rsuite 5.2.3 → 5.4.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 (495) 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/ButtonGroup/styles/index.less +0 -18
  5. package/CHANGELOG.md +63 -0
  6. package/CheckTreePicker/styles/index.less +14 -1
  7. package/Dropdown/styles/index.less +4 -3
  8. package/Nav/styles/index.less +1 -0
  9. package/Navbar/styles/index.less +7 -0
  10. package/Radio/styles/index.less +6 -0
  11. package/Sidenav/styles/index.less +2 -2
  12. package/Stack/package.json +7 -0
  13. package/Stack/styles/index.less +5 -0
  14. package/Table/styles/index.less +0 -4
  15. package/TreePicker/styles/index.less +10 -14
  16. package/cjs/@types/common.d.ts +13 -12
  17. package/cjs/@types/utils.d.ts +12 -0
  18. package/cjs/Affix/Affix.js +5 -5
  19. package/cjs/Animation/Transition.d.ts +21 -12
  20. package/cjs/Animation/Transition.js +4 -1
  21. package/cjs/AutoComplete/AutoComplete.js +1 -1
  22. package/cjs/AutoComplete/utils.d.ts +1 -1
  23. package/cjs/Avatar/Avatar.js +10 -3
  24. package/cjs/AvatarGroup/AvatarGroup.d.ts +15 -0
  25. package/cjs/AvatarGroup/AvatarGroup.js +76 -0
  26. package/cjs/AvatarGroup/index.d.ts +3 -0
  27. package/cjs/AvatarGroup/index.js +11 -0
  28. package/cjs/Breadcrumb/Breadcrumb.js +1 -1
  29. package/cjs/Button/Button.js +8 -2
  30. package/cjs/ButtonGroup/ButtonGroup.js +14 -3
  31. package/cjs/ButtonGroup/ButtonGroupContext.d.ts +7 -0
  32. package/cjs/ButtonGroup/ButtonGroupContext.js +13 -0
  33. package/cjs/ButtonGroup/index.d.ts +2 -0
  34. package/cjs/ButtonGroup/index.js +3 -0
  35. package/cjs/Calendar/Calendar.d.ts +4 -4
  36. package/cjs/Calendar/Calendar.js +26 -22
  37. package/cjs/Calendar/CalendarContext.js +1 -1
  38. package/cjs/Calendar/Header.js +1 -3
  39. package/cjs/Calendar/Table.js +1 -1
  40. package/cjs/Calendar/TableRow.js +13 -8
  41. package/cjs/Calendar/TimeDropdown.js +6 -5
  42. package/cjs/Calendar/View.js +9 -5
  43. package/cjs/Calendar/types.d.ts +2 -2
  44. package/cjs/Calendar/useCalendarDate.d.ts +2 -2
  45. package/cjs/Carousel/Carousel.d.ts +2 -2
  46. package/cjs/Carousel/Carousel.js +1 -1
  47. package/cjs/Cascader/Cascader.d.ts +1 -1
  48. package/cjs/Cascader/Cascader.js +10 -10
  49. package/cjs/Cascader/DropdownMenu.d.ts +5 -4
  50. package/cjs/Cascader/utils.d.ts +10 -10
  51. package/cjs/CheckPicker/CheckPicker.d.ts +9 -4
  52. package/cjs/CheckPicker/CheckPicker.js +4 -4
  53. package/cjs/CheckPicker/test/CheckPicker.test.d.ts +1 -0
  54. package/cjs/CheckPicker/test/CheckPicker.test.js +76 -0
  55. package/cjs/CheckTree/index.js +6 -5
  56. package/cjs/CheckTreePicker/CheckTreeNode.d.ts +1 -1
  57. package/cjs/CheckTreePicker/CheckTreeNode.js +7 -9
  58. package/cjs/CheckTreePicker/CheckTreePicker.js +34 -27
  59. package/cjs/CheckTreePicker/utils.d.ts +3 -1
  60. package/cjs/CheckTreePicker/utils.js +12 -10
  61. package/cjs/Checkbox/Checkbox.d.ts +1 -1
  62. package/cjs/Container/Container.js +6 -3
  63. package/cjs/CustomProvider/CustomProvider.d.ts +31 -57
  64. package/cjs/DOMHelper/index.d.ts +12 -12
  65. package/cjs/DatePicker/DatePicker.d.ts +1 -1
  66. package/cjs/DatePicker/DatePicker.js +19 -11
  67. package/cjs/DatePicker/Toolbar.d.ts +12 -9
  68. package/cjs/DatePicker/Toolbar.js +6 -8
  69. package/cjs/DatePicker/types.d.ts +4 -4
  70. package/cjs/DatePicker/utils.d.ts +4 -3
  71. package/cjs/DateRangePicker/Calendar.d.ts +9 -7
  72. package/cjs/DateRangePicker/Calendar.js +27 -6
  73. package/cjs/DateRangePicker/DateRangePicker.d.ts +8 -6
  74. package/cjs/DateRangePicker/DateRangePicker.js +133 -110
  75. package/cjs/DateRangePicker/types.d.ts +2 -1
  76. package/cjs/DateRangePicker/utils.d.ts +6 -6
  77. package/cjs/DateRangePicker/utils.js +7 -2
  78. package/cjs/Disclosure/Disclosure.js +6 -4
  79. package/cjs/Disclosure/DisclosureButton.js +9 -7
  80. package/cjs/Disclosure/DisclosureContent.js +4 -6
  81. package/cjs/Disclosure/DisclosureContext.d.ts +2 -2
  82. package/cjs/Disclosure/useDisclosureContext.d.ts +2 -0
  83. package/cjs/Disclosure/useDisclosureContext.js +20 -0
  84. package/cjs/Dropdown/Dropdown.d.ts +1 -1
  85. package/cjs/Dropdown/DropdownContext.d.ts +2 -2
  86. package/cjs/Dropdown/DropdownItem.js +1 -1
  87. package/cjs/Dropdown/DropdownMenu.d.ts +3 -3
  88. package/cjs/Dropdown/DropdownMenu.js +9 -6
  89. package/cjs/Dropdown/DropdownState.d.ts +1 -1
  90. package/cjs/Dropdown/DropdownToggle.js +10 -2
  91. package/cjs/Dropdown/useRenderDropdownItem.d.ts +1 -1
  92. package/cjs/Form/Form.js +1 -1
  93. package/cjs/Form/FormContext.d.ts +1 -1
  94. package/cjs/FormControl/FormControl.d.ts +1 -1
  95. package/cjs/FormControl/FormControl.js +5 -4
  96. package/cjs/FormGroup/FormGroup.d.ts +1 -1
  97. package/cjs/FormGroup/FormGroup.js +9 -4
  98. package/cjs/Input/Input.d.ts +3 -2
  99. package/cjs/InputGroup/InputGroup.d.ts +1 -1
  100. package/cjs/InputNumber/InputNumber.js +6 -2
  101. package/cjs/InputPicker/InputAutosize.js +4 -4
  102. package/cjs/InputPicker/InputPicker.d.ts +2 -2
  103. package/cjs/InputPicker/InputPicker.js +15 -10
  104. package/cjs/List/ListContext.d.ts +1 -1
  105. package/cjs/List/ListContext.js +8 -1
  106. package/cjs/List/helper/AutoScroller.js +4 -2
  107. package/cjs/List/helper/useManager.d.ts +3 -3
  108. package/cjs/List/helper/useManager.js +1 -1
  109. package/cjs/List/helper/useSortHelper.d.ts +3 -3
  110. package/cjs/List/helper/useSortHelper.js +6 -4
  111. package/cjs/List/helper/utils.d.ts +2 -2
  112. package/cjs/MaskedInput/TextMask.d.ts +5 -5
  113. package/cjs/MaskedInput/adjustCaretPosition.d.ts +6 -6
  114. package/cjs/MaskedInput/conformToMask.js +5 -4
  115. package/cjs/MaskedInput/createTextMaskInputElement.d.ts +2 -2
  116. package/cjs/MaskedInput/utilities.d.ts +1 -1
  117. package/cjs/Menu/Menu.js +14 -7
  118. package/cjs/Menu/MenuContext.d.ts +1 -1
  119. package/cjs/Menu/MenuItem.d.ts +1 -1
  120. package/cjs/Menu/MenuItem.js +19 -15
  121. package/cjs/Menu/Menubar.js +8 -8
  122. package/cjs/Menu/useMenu.js +17 -7
  123. package/cjs/Modal/Modal.js +12 -6
  124. package/cjs/Modal/ModalContext.d.ts +2 -2
  125. package/cjs/Modal/utils.d.ts +1 -1
  126. package/cjs/Modal/utils.js +3 -5
  127. package/cjs/MultiCascader/DropdownMenu.d.ts +4 -4
  128. package/cjs/MultiCascader/MultiCascader.js +6 -6
  129. package/cjs/MultiCascader/utils.d.ts +17 -17
  130. package/cjs/Nav/Nav.d.ts +1 -1
  131. package/cjs/Nav/Nav.js +10 -12
  132. package/cjs/Nav/NavContext.d.ts +7 -1
  133. package/cjs/Nav/NavContext.js +1 -0
  134. package/cjs/Nav/NavItem.d.ts +1 -1
  135. package/cjs/Navbar/Navbar.js +1 -1
  136. package/cjs/Navbar/NavbarItem.d.ts +1 -1
  137. package/cjs/Overlay/Modal.d.ts +2 -2
  138. package/cjs/Overlay/Modal.js +70 -45
  139. package/cjs/Overlay/ModalManager.d.ts +17 -8
  140. package/cjs/Overlay/ModalManager.js +11 -20
  141. package/cjs/Overlay/Overlay.d.ts +3 -3
  142. package/cjs/Overlay/Overlay.js +8 -2
  143. package/cjs/Overlay/OverlayContext.d.ts +6 -0
  144. package/cjs/Overlay/OverlayContext.js +14 -0
  145. package/cjs/Overlay/OverlayTrigger.d.ts +11 -11
  146. package/cjs/Overlay/OverlayTrigger.js +21 -7
  147. package/cjs/Overlay/Position.d.ts +4 -4
  148. package/cjs/Overlay/Position.js +14 -8
  149. package/cjs/Overlay/positionUtils.d.ts +1 -1
  150. package/cjs/Overlay/positionUtils.js +8 -8
  151. package/cjs/Pagination/Pagination.d.ts +1 -1
  152. package/cjs/Pagination/PaginationButton.d.ts +3 -3
  153. package/cjs/Pagination/PaginationGroup.js +5 -3
  154. package/cjs/Panel/Panel.d.ts +1 -1
  155. package/cjs/Panel/Panel.js +2 -2
  156. package/cjs/PanelGroup/PanelGroup.d.ts +2 -2
  157. package/cjs/PanelGroup/PanelGroup.js +8 -5
  158. package/cjs/Picker/DropdownMenu.d.ts +8 -5
  159. package/cjs/Picker/DropdownMenu.js +5 -5
  160. package/cjs/Picker/PickerOverlay.js +4 -3
  161. package/cjs/Picker/PickerToggle.js +4 -3
  162. package/cjs/Picker/PickerToggleTrigger.d.ts +2 -6
  163. package/cjs/Picker/SearchBar.d.ts +1 -1
  164. package/cjs/Picker/SelectedElement.js +2 -1
  165. package/cjs/Picker/VirtualizedList.d.ts +29 -2
  166. package/cjs/Picker/propTypes.d.ts +5 -7
  167. package/cjs/Picker/propTypes.js +4 -3
  168. package/cjs/Picker/utils.d.ts +15 -23
  169. package/cjs/Picker/utils.js +71 -46
  170. package/cjs/Placeholder/PlaceholderGrid.js +1 -1
  171. package/cjs/Plaintext/Plaintext.js +2 -1
  172. package/cjs/Radio/Radio.d.ts +1 -1
  173. package/cjs/RadioGroup/RadioGroup.d.ts +2 -2
  174. package/cjs/RadioGroup/RadioGroup.js +1 -1
  175. package/cjs/RangeSlider/RangeSlider.d.ts +2 -2
  176. package/cjs/RangeSlider/RangeSlider.js +6 -4
  177. package/cjs/Rate/Character.js +4 -2
  178. package/cjs/Rate/Rate.js +2 -1
  179. package/cjs/Ripple/Ripple.js +1 -1
  180. package/cjs/SelectPicker/SelectPicker.d.ts +12 -5
  181. package/cjs/SelectPicker/SelectPicker.js +8 -8
  182. package/cjs/SelectPicker/index.d.ts +1 -1
  183. package/cjs/SelectPicker/test/SelectPicker.test.d.ts +1 -0
  184. package/cjs/SelectPicker/test/SelectPicker.test.js +62 -0
  185. package/cjs/Sidenav/Node.d.ts +1 -1
  186. package/cjs/Sidenav/Sidenav.d.ts +4 -4
  187. package/cjs/Sidenav/Sidenav.js +5 -2
  188. package/cjs/Sidenav/SidenavDropdown.js +11 -8
  189. package/cjs/Sidenav/SidenavDropdownItem.js +10 -5
  190. package/cjs/Sidenav/SidenavDropdownMenu.js +9 -5
  191. package/cjs/Sidenav/SidenavItem.d.ts +1 -1
  192. package/cjs/Sidenav/SidenavItem.js +4 -0
  193. package/cjs/Slider/Graduated.d.ts +5 -5
  194. package/cjs/Slider/Handle.d.ts +1 -1
  195. package/cjs/Slider/Handle.js +10 -6
  196. package/cjs/Slider/Mark.d.ts +1 -1
  197. package/cjs/Slider/Slider.d.ts +1 -1
  198. package/cjs/Slider/Slider.js +2 -2
  199. package/cjs/Slider/utils.d.ts +2 -1
  200. package/cjs/Slider/utils.js +4 -5
  201. package/cjs/Stack/Stack.d.ts +26 -0
  202. package/cjs/Stack/Stack.js +86 -0
  203. package/cjs/Stack/index.d.ts +3 -0
  204. package/cjs/Stack/index.js +11 -0
  205. package/cjs/Steps/StepItem.js +1 -1
  206. package/cjs/TagInput/index.js +1 -1
  207. package/cjs/Toggle/Toggle.js +5 -4
  208. package/cjs/Tree/Tree.d.ts +3 -2
  209. package/cjs/Tree/Tree.js +6 -5
  210. package/cjs/Tree/TreeContext.d.ts +0 -1
  211. package/cjs/TreePicker/TreeNode.js +7 -22
  212. package/cjs/TreePicker/TreePicker.js +37 -54
  213. package/cjs/Uploader/UploadFileItem.d.ts +1 -1
  214. package/cjs/Uploader/UploadFileItem.js +2 -2
  215. package/cjs/Uploader/UploadTrigger.d.ts +1 -1
  216. package/cjs/Uploader/UploadTrigger.js +2 -3
  217. package/cjs/Uploader/Uploader.d.ts +5 -5
  218. package/cjs/Uploader/Uploader.js +1 -2
  219. package/cjs/index.d.ts +6 -2
  220. package/cjs/index.js +13 -5
  221. package/cjs/locales/index.d.ts +3 -3
  222. package/cjs/toaster/ToastContainer.d.ts +1 -1
  223. package/cjs/toaster/ToastContainer.js +1 -1
  224. package/cjs/toaster/toaster.js +3 -1
  225. package/cjs/utils/BrowserDetection.js +1 -1
  226. package/cjs/utils/ReactChildren.d.ts +2 -2
  227. package/cjs/utils/ajaxUpload.d.ts +1 -1
  228. package/cjs/utils/ajaxUpload.js +5 -4
  229. package/cjs/utils/appendTooltip.d.ts +1 -1
  230. package/cjs/utils/constants.d.ts +4 -4
  231. package/cjs/utils/createChainedFunction.d.ts +1 -1
  232. package/cjs/utils/getDataGroupBy.d.ts +1 -1
  233. package/cjs/utils/mergeRefs.d.ts +2 -2
  234. package/cjs/utils/previewFile.d.ts +1 -1
  235. package/cjs/utils/propTypeChecker.d.ts +6 -2
  236. package/cjs/utils/propTypeChecker.js +7 -6
  237. package/cjs/utils/reactToString.d.ts +2 -1
  238. package/cjs/utils/statusIcons.d.ts +1 -1
  239. package/cjs/utils/stringToObject.d.ts +1 -1
  240. package/cjs/utils/treeUtils.d.ts +35 -32
  241. package/cjs/utils/treeUtils.js +46 -23
  242. package/cjs/utils/useControlled.d.ts +6 -1
  243. package/cjs/utils/useControlled.js +0 -8
  244. package/cjs/utils/useCustom.js +6 -4
  245. package/cjs/utils/useFocus.d.ts +2 -2
  246. package/cjs/utils/usePortal.d.ts +2 -2
  247. package/cjs/utils/useRootClose.d.ts +2 -2
  248. package/cjs/utils/useTimeout.d.ts +1 -1
  249. package/cjs/utils/useTimeout.js +5 -3
  250. package/dist/rsuite-rtl.css +63 -193
  251. package/dist/rsuite-rtl.min.css +1 -1
  252. package/dist/rsuite-rtl.min.css.map +1 -1
  253. package/dist/rsuite.css +63 -193
  254. package/dist/rsuite.js +194 -117
  255. package/dist/rsuite.js.map +1 -1
  256. package/dist/rsuite.min.css +1 -1
  257. package/dist/rsuite.min.css.map +1 -1
  258. package/dist/rsuite.min.js +1 -1
  259. package/dist/rsuite.min.js.map +1 -1
  260. package/esm/@types/common.d.ts +13 -12
  261. package/esm/@types/utils.d.ts +12 -0
  262. package/esm/Affix/Affix.js +5 -5
  263. package/esm/Animation/Transition.d.ts +21 -12
  264. package/esm/Animation/Transition.js +4 -1
  265. package/esm/AutoComplete/AutoComplete.js +1 -1
  266. package/esm/AutoComplete/utils.d.ts +1 -1
  267. package/esm/Avatar/Avatar.js +7 -3
  268. package/esm/AvatarGroup/AvatarGroup.d.ts +15 -0
  269. package/esm/AvatarGroup/AvatarGroup.js +57 -0
  270. package/esm/AvatarGroup/index.d.ts +3 -0
  271. package/esm/AvatarGroup/index.js +2 -0
  272. package/esm/Breadcrumb/Breadcrumb.js +1 -1
  273. package/esm/Button/Button.js +6 -2
  274. package/esm/ButtonGroup/ButtonGroup.js +11 -3
  275. package/esm/ButtonGroup/ButtonGroupContext.d.ts +7 -0
  276. package/esm/ButtonGroup/ButtonGroupContext.js +3 -0
  277. package/esm/ButtonGroup/index.d.ts +2 -0
  278. package/esm/ButtonGroup/index.js +2 -0
  279. package/esm/Calendar/Calendar.d.ts +4 -4
  280. package/esm/Calendar/Calendar.js +27 -23
  281. package/esm/Calendar/CalendarContext.js +1 -1
  282. package/esm/Calendar/Header.js +1 -3
  283. package/esm/Calendar/Table.js +1 -1
  284. package/esm/Calendar/TableRow.js +14 -9
  285. package/esm/Calendar/TimeDropdown.js +5 -4
  286. package/esm/Calendar/View.js +10 -6
  287. package/esm/Calendar/types.d.ts +2 -2
  288. package/esm/Calendar/useCalendarDate.d.ts +2 -2
  289. package/esm/Carousel/Carousel.d.ts +2 -2
  290. package/esm/Carousel/Carousel.js +1 -1
  291. package/esm/Cascader/Cascader.d.ts +1 -1
  292. package/esm/Cascader/Cascader.js +10 -10
  293. package/esm/Cascader/DropdownMenu.d.ts +5 -4
  294. package/esm/Cascader/utils.d.ts +10 -10
  295. package/esm/CheckPicker/CheckPicker.d.ts +9 -4
  296. package/esm/CheckPicker/CheckPicker.js +4 -4
  297. package/esm/CheckPicker/test/CheckPicker.test.d.ts +1 -0
  298. package/esm/CheckPicker/test/CheckPicker.test.js +64 -0
  299. package/esm/CheckTree/index.js +7 -6
  300. package/esm/CheckTreePicker/CheckTreeNode.d.ts +1 -1
  301. package/esm/CheckTreePicker/CheckTreeNode.js +4 -7
  302. package/esm/CheckTreePicker/CheckTreePicker.js +33 -25
  303. package/esm/CheckTreePicker/utils.d.ts +3 -1
  304. package/esm/CheckTreePicker/utils.js +12 -10
  305. package/esm/Checkbox/Checkbox.d.ts +1 -1
  306. package/esm/Container/Container.js +7 -4
  307. package/esm/CustomProvider/CustomProvider.d.ts +31 -57
  308. package/esm/DOMHelper/index.d.ts +12 -12
  309. package/esm/DatePicker/DatePicker.d.ts +1 -1
  310. package/esm/DatePicker/DatePicker.js +18 -11
  311. package/esm/DatePicker/Toolbar.d.ts +12 -9
  312. package/esm/DatePicker/Toolbar.js +6 -8
  313. package/esm/DatePicker/types.d.ts +4 -4
  314. package/esm/DatePicker/utils.d.ts +4 -3
  315. package/esm/DateRangePicker/Calendar.d.ts +9 -7
  316. package/esm/DateRangePicker/Calendar.js +28 -6
  317. package/esm/DateRangePicker/DateRangePicker.d.ts +8 -6
  318. package/esm/DateRangePicker/DateRangePicker.js +131 -110
  319. package/esm/DateRangePicker/types.d.ts +2 -1
  320. package/esm/DateRangePicker/utils.d.ts +6 -6
  321. package/esm/DateRangePicker/utils.js +6 -2
  322. package/esm/Disclosure/Disclosure.js +6 -4
  323. package/esm/Disclosure/DisclosureButton.js +8 -7
  324. package/esm/Disclosure/DisclosureContent.js +5 -7
  325. package/esm/Disclosure/DisclosureContext.d.ts +2 -2
  326. package/esm/Disclosure/useDisclosureContext.d.ts +2 -0
  327. package/esm/Disclosure/useDisclosureContext.js +11 -0
  328. package/esm/Dropdown/Dropdown.d.ts +1 -1
  329. package/esm/Dropdown/DropdownContext.d.ts +2 -2
  330. package/esm/Dropdown/DropdownItem.js +1 -1
  331. package/esm/Dropdown/DropdownMenu.d.ts +3 -3
  332. package/esm/Dropdown/DropdownMenu.js +10 -7
  333. package/esm/Dropdown/DropdownState.d.ts +1 -1
  334. package/esm/Dropdown/DropdownToggle.js +9 -2
  335. package/esm/Dropdown/useRenderDropdownItem.d.ts +1 -1
  336. package/esm/Form/Form.js +1 -1
  337. package/esm/Form/FormContext.d.ts +1 -1
  338. package/esm/FormControl/FormControl.d.ts +1 -1
  339. package/esm/FormControl/FormControl.js +5 -4
  340. package/esm/FormGroup/FormGroup.d.ts +1 -1
  341. package/esm/FormGroup/FormGroup.js +7 -4
  342. package/esm/Input/Input.d.ts +3 -2
  343. package/esm/InputGroup/InputGroup.d.ts +1 -1
  344. package/esm/InputNumber/InputNumber.js +6 -2
  345. package/esm/InputPicker/InputAutosize.js +4 -4
  346. package/esm/InputPicker/InputPicker.d.ts +2 -2
  347. package/esm/InputPicker/InputPicker.js +15 -10
  348. package/esm/List/ListContext.d.ts +1 -1
  349. package/esm/List/ListContext.js +7 -1
  350. package/esm/List/helper/AutoScroller.js +4 -2
  351. package/esm/List/helper/useManager.d.ts +3 -3
  352. package/esm/List/helper/useManager.js +1 -1
  353. package/esm/List/helper/useSortHelper.d.ts +3 -3
  354. package/esm/List/helper/useSortHelper.js +6 -4
  355. package/esm/List/helper/utils.d.ts +2 -2
  356. package/esm/MaskedInput/TextMask.d.ts +5 -5
  357. package/esm/MaskedInput/adjustCaretPosition.d.ts +6 -6
  358. package/esm/MaskedInput/conformToMask.js +5 -4
  359. package/esm/MaskedInput/createTextMaskInputElement.d.ts +2 -2
  360. package/esm/MaskedInput/utilities.d.ts +1 -1
  361. package/esm/Menu/Menu.js +13 -7
  362. package/esm/Menu/MenuContext.d.ts +1 -1
  363. package/esm/Menu/MenuItem.d.ts +1 -1
  364. package/esm/Menu/MenuItem.js +18 -15
  365. package/esm/Menu/Menubar.js +7 -8
  366. package/esm/Menu/useMenu.js +17 -7
  367. package/esm/Modal/Modal.js +12 -6
  368. package/esm/Modal/ModalContext.d.ts +2 -2
  369. package/esm/Modal/utils.d.ts +1 -1
  370. package/esm/Modal/utils.js +3 -5
  371. package/esm/MultiCascader/DropdownMenu.d.ts +4 -4
  372. package/esm/MultiCascader/MultiCascader.js +6 -6
  373. package/esm/MultiCascader/utils.d.ts +17 -17
  374. package/esm/Nav/Nav.d.ts +1 -1
  375. package/esm/Nav/Nav.js +11 -13
  376. package/esm/Nav/NavContext.d.ts +7 -1
  377. package/esm/Nav/NavContext.js +1 -0
  378. package/esm/Nav/NavItem.d.ts +1 -1
  379. package/esm/Navbar/Navbar.js +1 -1
  380. package/esm/Navbar/NavbarItem.d.ts +1 -1
  381. package/esm/Overlay/Modal.d.ts +2 -2
  382. package/esm/Overlay/Modal.js +71 -46
  383. package/esm/Overlay/ModalManager.d.ts +17 -8
  384. package/esm/Overlay/ModalManager.js +11 -20
  385. package/esm/Overlay/Overlay.d.ts +3 -3
  386. package/esm/Overlay/Overlay.js +8 -3
  387. package/esm/Overlay/OverlayContext.d.ts +6 -0
  388. package/esm/Overlay/OverlayContext.js +4 -0
  389. package/esm/Overlay/OverlayTrigger.d.ts +11 -11
  390. package/esm/Overlay/OverlayTrigger.js +21 -8
  391. package/esm/Overlay/Position.d.ts +4 -4
  392. package/esm/Overlay/Position.js +14 -8
  393. package/esm/Overlay/positionUtils.d.ts +1 -1
  394. package/esm/Overlay/positionUtils.js +6 -6
  395. package/esm/Pagination/Pagination.d.ts +1 -1
  396. package/esm/Pagination/PaginationButton.d.ts +3 -3
  397. package/esm/Pagination/PaginationGroup.js +5 -3
  398. package/esm/Panel/Panel.d.ts +1 -1
  399. package/esm/Panel/Panel.js +2 -2
  400. package/esm/PanelGroup/PanelGroup.d.ts +2 -2
  401. package/esm/PanelGroup/PanelGroup.js +9 -6
  402. package/esm/Picker/DropdownMenu.d.ts +8 -5
  403. package/esm/Picker/DropdownMenu.js +5 -5
  404. package/esm/Picker/PickerOverlay.js +4 -3
  405. package/esm/Picker/PickerToggle.js +4 -3
  406. package/esm/Picker/PickerToggleTrigger.d.ts +2 -6
  407. package/esm/Picker/SearchBar.d.ts +1 -1
  408. package/esm/Picker/SelectedElement.js +2 -1
  409. package/esm/Picker/VirtualizedList.d.ts +29 -2
  410. package/esm/Picker/propTypes.d.ts +5 -7
  411. package/esm/Picker/propTypes.js +4 -3
  412. package/esm/Picker/utils.d.ts +15 -23
  413. package/esm/Picker/utils.js +70 -46
  414. package/esm/Placeholder/PlaceholderGrid.js +1 -1
  415. package/esm/Plaintext/Plaintext.js +2 -1
  416. package/esm/Radio/Radio.d.ts +1 -1
  417. package/esm/RadioGroup/RadioGroup.d.ts +2 -2
  418. package/esm/RadioGroup/RadioGroup.js +1 -1
  419. package/esm/RangeSlider/RangeSlider.d.ts +2 -2
  420. package/esm/RangeSlider/RangeSlider.js +5 -4
  421. package/esm/Rate/Character.js +3 -2
  422. package/esm/Rate/Rate.js +2 -1
  423. package/esm/Ripple/Ripple.js +1 -1
  424. package/esm/SelectPicker/SelectPicker.d.ts +12 -5
  425. package/esm/SelectPicker/SelectPicker.js +8 -8
  426. package/esm/SelectPicker/index.d.ts +1 -1
  427. package/esm/SelectPicker/test/SelectPicker.test.d.ts +1 -0
  428. package/esm/SelectPicker/test/SelectPicker.test.js +52 -0
  429. package/esm/Sidenav/Node.d.ts +1 -1
  430. package/esm/Sidenav/Sidenav.d.ts +4 -4
  431. package/esm/Sidenav/Sidenav.js +5 -2
  432. package/esm/Sidenav/SidenavDropdown.js +11 -7
  433. package/esm/Sidenav/SidenavDropdownItem.js +11 -5
  434. package/esm/Sidenav/SidenavDropdownMenu.js +9 -5
  435. package/esm/Sidenav/SidenavItem.d.ts +1 -1
  436. package/esm/Sidenav/SidenavItem.js +4 -0
  437. package/esm/Slider/Graduated.d.ts +5 -5
  438. package/esm/Slider/Handle.d.ts +1 -1
  439. package/esm/Slider/Handle.js +10 -6
  440. package/esm/Slider/Mark.d.ts +1 -1
  441. package/esm/Slider/Slider.d.ts +1 -1
  442. package/esm/Slider/Slider.js +2 -2
  443. package/esm/Slider/utils.d.ts +2 -1
  444. package/esm/Slider/utils.js +5 -2
  445. package/esm/Stack/Stack.d.ts +26 -0
  446. package/esm/Stack/Stack.js +71 -0
  447. package/esm/Stack/index.d.ts +3 -0
  448. package/esm/Stack/index.js +2 -0
  449. package/esm/Steps/StepItem.js +1 -1
  450. package/esm/TagInput/index.js +1 -1
  451. package/esm/Toggle/Toggle.js +5 -4
  452. package/esm/Tree/Tree.d.ts +3 -2
  453. package/esm/Tree/Tree.js +7 -6
  454. package/esm/Tree/TreeContext.d.ts +0 -1
  455. package/esm/TreePicker/TreeNode.js +6 -21
  456. package/esm/TreePicker/TreePicker.js +36 -52
  457. package/esm/Uploader/UploadFileItem.d.ts +1 -1
  458. package/esm/Uploader/UploadFileItem.js +2 -2
  459. package/esm/Uploader/UploadTrigger.d.ts +1 -1
  460. package/esm/Uploader/UploadTrigger.js +2 -3
  461. package/esm/Uploader/Uploader.d.ts +5 -5
  462. package/esm/Uploader/Uploader.js +1 -2
  463. package/esm/index.d.ts +6 -2
  464. package/esm/index.js +3 -1
  465. package/esm/locales/index.d.ts +3 -3
  466. package/esm/toaster/ToastContainer.d.ts +1 -1
  467. package/esm/toaster/ToastContainer.js +1 -1
  468. package/esm/toaster/toaster.js +3 -1
  469. package/esm/utils/BrowserDetection.js +1 -1
  470. package/esm/utils/ReactChildren.d.ts +2 -2
  471. package/esm/utils/ajaxUpload.d.ts +1 -1
  472. package/esm/utils/ajaxUpload.js +5 -4
  473. package/esm/utils/appendTooltip.d.ts +1 -1
  474. package/esm/utils/constants.d.ts +4 -4
  475. package/esm/utils/createChainedFunction.d.ts +1 -1
  476. package/esm/utils/getDataGroupBy.d.ts +1 -1
  477. package/esm/utils/mergeRefs.d.ts +2 -2
  478. package/esm/utils/previewFile.d.ts +1 -1
  479. package/esm/utils/propTypeChecker.d.ts +6 -2
  480. package/esm/utils/propTypeChecker.js +7 -6
  481. package/esm/utils/reactToString.d.ts +2 -1
  482. package/esm/utils/statusIcons.d.ts +1 -1
  483. package/esm/utils/stringToObject.d.ts +1 -1
  484. package/esm/utils/treeUtils.d.ts +35 -32
  485. package/esm/utils/treeUtils.js +45 -21
  486. package/esm/utils/useControlled.d.ts +6 -1
  487. package/esm/utils/useControlled.js +0 -8
  488. package/esm/utils/useCustom.js +6 -4
  489. package/esm/utils/useFocus.d.ts +2 -2
  490. package/esm/utils/usePortal.d.ts +2 -2
  491. package/esm/utils/useRootClose.d.ts +2 -2
  492. package/esm/utils/useTimeout.d.ts +1 -1
  493. package/esm/utils/useTimeout.js +5 -3
  494. package/package.json +3 -3
  495. package/styles/index.less +2 -0
@@ -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;
@@ -17,7 +17,7 @@ var LimitPicker = function LimitPicker(props) {
17
17
  onChangeLimit = props.onChangeLimit,
18
18
  size = props.size,
19
19
  prefix = props.prefix;
20
- var disabledPicker = typeof disabled === 'function' ? disabled('picker') : disabled;
20
+ var disabledPicker = typeof disabled === 'function' ? disabled('picker') : Boolean(disabled);
21
21
  var formatlimitOptions = limitOptions.map(function (item) {
22
22
  return {
23
23
  value: item,
@@ -33,7 +33,8 @@ var LimitPicker = function LimitPicker(props) {
33
33
  placement: "topStart",
34
34
  data: formatlimitOptions,
35
35
  value: limit,
36
- onChange: onChangeLimit,
36
+ onChange: onChangeLimit // fixme don't use any
37
+ ,
37
38
  menuStyle: {
38
39
  minWidth: 'auto'
39
40
  },
@@ -134,7 +135,8 @@ var PaginationGroup = /*#__PURE__*/React.forwardRef(function (props, ref) {
134
135
  maxButtons: maxButtons,
135
136
  pages: pages,
136
137
  disabled: disabled,
137
- onSelect: onChangePage,
138
+ onSelect: onChangePage // fixme don't use any
139
+ ,
138
140
  activePage: activePage
139
141
  }, rest));
140
142
  } 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;
@@ -110,7 +110,7 @@ var Panel = /*#__PURE__*/React.forwardRef(function (props, ref) {
110
110
  className: prefix('title'),
111
111
  role: "presentation"
112
112
  }, /*#__PURE__*/React.createElement("span", {
113
- className: expanded ? null : 'collapsed'
113
+ className: expanded ? undefined : 'collapsed'
114
114
  }, header))) : header;
115
115
  } else {
116
116
  var _className = merge(prefix('title'), get(header, 'props.className'));
@@ -122,7 +122,7 @@ var Panel = /*#__PURE__*/React.forwardRef(function (props, ref) {
122
122
 
123
123
  return /*#__PURE__*/React.createElement("div", {
124
124
  role: headerRole,
125
- "aria-controls": collapsible && id ? "" + id : null,
125
+ "aria-controls": collapsible && id ? "" + id : undefined,
126
126
  "aria-expanded": expanded,
127
127
  className: prefix('header'),
128
128
  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>>;
@@ -1,6 +1,6 @@
1
1
  import _extends from "@babel/runtime/helpers/esm/extends";
2
2
  import _objectWithoutPropertiesLoose from "@babel/runtime/helpers/esm/objectWithoutPropertiesLoose";
3
- import React, { useCallback } from 'react';
3
+ import React, { useCallback, useMemo } from 'react';
4
4
  import PropTypes from 'prop-types';
5
5
  import { useClassNames, useControlled } from '../utils';
6
6
  export var PanelGroupContext = /*#__PURE__*/React.createContext({});
@@ -34,16 +34,19 @@ var PanelGroup = /*#__PURE__*/React.forwardRef(function (props, ref) {
34
34
  setActiveKey(activeKey);
35
35
  onSelect === null || onSelect === void 0 ? void 0 : onSelect(activeKey, event);
36
36
  }, [onSelect, setActiveKey]);
37
+ var contextValue = useMemo(function () {
38
+ return {
39
+ accordion: accordion,
40
+ activeKey: activeKey,
41
+ onGroupSelect: handleSelect
42
+ };
43
+ }, [accordion, activeKey, handleSelect]);
37
44
  return /*#__PURE__*/React.createElement(Component, _extends({}, rest, {
38
45
  ref: ref,
39
46
  role: accordion ? 'tablist' : undefined,
40
47
  className: classes
41
48
  }), /*#__PURE__*/React.createElement(PanelGroupContext.Provider, {
42
- value: {
43
- accordion: accordion,
44
- activeKey: activeKey,
45
- onGroupSelect: handleSelect
46
- }
49
+ value: contextValue
47
50
  }, children));
48
51
  });
49
52
  PanelGroup.displayName = 'PanelGroup';
@@ -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>;
@@ -64,7 +64,7 @@ var DropdownMenu = /*#__PURE__*/React.forwardRef(function (props, ref) {
64
64
  maxHeight: maxHeight
65
65
  });
66
66
 
67
- var menuBodyContainerRef = useRef();
67
+ var menuBodyContainerRef = useRef(null);
68
68
 
69
69
  var _useState = useState([]),
70
70
  foldedGroupKeys = _useState[0],
@@ -186,7 +186,7 @@ var DropdownMenu = /*#__PURE__*/React.forwardRef(function (props, ref) {
186
186
 
187
187
  var useVirtualized = virtualized && rowCount * rowHeight > maxHeight;
188
188
  return /*#__PURE__*/React.createElement("div", _extends({
189
- role: !useVirtualized ? 'listbox' : null
189
+ role: !useVirtualized ? 'listbox' : undefined
190
190
  }, rest, {
191
191
  className: classes,
192
192
  ref: mergeRefs(menuBodyContainerRef, ref),
@@ -203,7 +203,7 @@ var DropdownMenu = /*#__PURE__*/React.forwardRef(function (props, ref) {
203
203
  return /*#__PURE__*/React.createElement(List, _extends({
204
204
  role: "listbox",
205
205
  containerRole: '',
206
- "aria-readonly": null,
206
+ "aria-readonly": undefined,
207
207
  width: width,
208
208
  height: height || maxHeight,
209
209
  scrollToIndex: findIndex(data, function (item) {
@@ -220,9 +220,9 @@ var DropdownMenu = /*#__PURE__*/React.forwardRef(function (props, ref) {
220
220
  }));
221
221
  });
222
222
  export var dropdownMenuPropTypes = {
223
- classPrefix: PropTypes.string,
223
+ classPrefix: PropTypes.string.isRequired,
224
224
  className: PropTypes.string,
225
- dropdownMenuItemAs: PropTypes.elementType,
225
+ dropdownMenuItemAs: PropTypes.elementType.isRequired,
226
226
  dropdownMenuItemClassPrefix: PropTypes.string,
227
227
  data: PropTypes.array,
228
228
  group: PropTypes.bool,
@@ -14,11 +14,12 @@ var PickerOverlay = /*#__PURE__*/React.forwardRef(function (props, ref) {
14
14
  classPrefix = _props$classPrefix === void 0 ? 'picker-menu' : _props$classPrefix,
15
15
  autoWidth = props.autoWidth,
16
16
  className = props.className,
17
- placement = props.placement,
17
+ _props$placement = props.placement,
18
+ placement = _props$placement === void 0 ? 'bottomStart' : _props$placement,
18
19
  target = props.target,
19
20
  rest = _objectWithoutPropertiesLoose(props, ["as", "classPrefix", "autoWidth", "className", "placement", "target"]);
20
21
 
21
- var overlayRef = useRef();
22
+ var overlayRef = useRef(null);
22
23
  var handleResize = useCallback(function () {
23
24
  var instance = target === null || target === void 0 ? void 0 : target.current;
24
25
 
@@ -32,7 +33,7 @@ var PickerOverlay = /*#__PURE__*/React.forwardRef(function (props, ref) {
32
33
  useEffect(function () {
33
34
  var toggle = target === null || target === void 0 ? void 0 : target.current;
34
35
 
35
- if (autoWidth && toggle.root) {
36
+ if (autoWidth && toggle !== null && toggle !== void 0 && toggle.root) {
36
37
  // Get the width value of the button,
37
38
  // and then set it to the menu to make their width consistent.
38
39
  var width = getWidth(getDOMNode(toggle.root));
@@ -46,13 +46,14 @@ var PickerToggle = /*#__PURE__*/React.forwardRef(function (props, ref) {
46
46
  onClean = props.onClean,
47
47
  onFocus = props.onFocus,
48
48
  onBlur = props.onBlur,
49
- placement = props.placement,
49
+ _props$placement = props.placement,
50
+ placement = _props$placement === void 0 ? 'bottomStart' : _props$placement,
50
51
  caretComponent = props.caretComponent,
51
52
  _props$caretAs = props.caretAs,
52
53
  caretAs = _props$caretAs === void 0 ? caretComponent : _props$caretAs,
53
54
  rest = _objectWithoutPropertiesLoose(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"]);
54
55
 
55
- var inputRef = useRef();
56
+ var inputRef = useRef(null);
56
57
 
57
58
  var _useState = useState(false),
58
59
  activeState = _useState[0],
@@ -172,7 +173,7 @@ var PickerToggle = /*#__PURE__*/React.forwardRef(function (props, ref) {
172
173
  }
173
174
  }), children ? /*#__PURE__*/React.createElement("span", {
174
175
  className: prefix(hasValue ? 'value' : 'placeholder'),
175
- "aria-placeholder": typeof children === 'string' ? children : null
176
+ "aria-placeholder": typeof children === 'string' ? children : undefined
176
177
  }, children) : null, showCleanButton && /*#__PURE__*/React.createElement(CloseButton, {
177
178
  className: prefix(_templateObject || (_templateObject = _taggedTemplateLiteralLoose(["clean"]))),
178
179
  tabIndex: -1,
@@ -1,19 +1,15 @@
1
1
  import React from 'react';
2
2
  import { OverlayTriggerInstance, OverlayTriggerType } from '../Overlay/OverlayTrigger';
3
3
  import { PositionChildProps } from '../Overlay/Position';
4
- import { TypeAttributes } from '../@types/common';
4
+ import { TypeAttributes, AnimationEventProps } from '../@types/common';
5
5
  export type { OverlayTriggerInstance, PositionChildProps };
6
- export interface PickerToggleTriggerProps {
6
+ export interface PickerToggleTriggerProps extends Omit<AnimationEventProps, 'onEntering' | 'onExiting'> {
7
7
  placement?: TypeAttributes.Placement;
8
8
  pickerProps: any;
9
9
  open?: boolean;
10
10
  trigger?: OverlayTriggerType | OverlayTriggerType[];
11
11
  children: React.ReactElement | ((props: any, ref: any) => React.ReactElement);
12
12
  speaker: React.ReactElement | ((props: any, ref: React.RefObject<any>) => React.ReactElement);
13
- onEnter?: (node: null | Element | Text) => void;
14
- onEntered?: (node: null | Element | Text) => void;
15
- onExit?: (node: null | Element | Text) => void;
16
- onExited?: (node: null | Element | Text) => void;
17
13
  }
18
14
  export declare const omitTriggerPropKeys: string[];
19
15
  export declare const pickTriggerPropKeys: string[];
@@ -5,7 +5,7 @@ export interface SearchBarProps extends WithAsProps {
5
5
  placeholder?: string;
6
6
  className?: string;
7
7
  inputRef?: React.Ref<HTMLInputElement>;
8
- onChange?: (value: string, event: React.SyntheticEvent) => void;
8
+ onChange?: (value: string, event: React.ChangeEvent<HTMLInputElement>) => void;
9
9
  }
10
10
  declare const SearchBar: RsRefForwardingComponent<'div', SearchBarProps>;
11
11
  export default SearchBar;
@@ -6,7 +6,8 @@ var SelectedElement = function SelectedElement(props) {
6
6
  prefix = props.prefix,
7
7
  valueKey = props.valueKey,
8
8
  labelKey = props.labelKey,
9
- childrenKey = props.childrenKey,
9
+ _props$childrenKey = props.childrenKey,
10
+ childrenKey = _props$childrenKey === void 0 ? 'children' : _props$childrenKey,
10
11
  countable = props.countable,
11
12
  cascade = props.cascade,
12
13
  locale = props.locale;
@@ -1,9 +1,36 @@
1
1
  import React from 'react';
2
2
  import { ListProps, ListRowProps } from 'react-virtualized/dist/commonjs/List';
3
3
  import { AutoSizerProps } from 'react-virtualized/dist/commonjs/AutoSizer';
4
+ import type { Alignment } from 'react-virtualized';
4
5
  export interface ListInstance {
5
- child: Element;
6
- scrollToRow?: (index: number) => void;
6
+ /**
7
+ * Forcefully re-render the inner Grid component.
8
+ */
9
+ forceUpdateGrid(): void;
10
+ /**
11
+ * Gets offset for a given row and alignment.
12
+ */
13
+ getOffsetForRow(params: {
14
+ alignment?: Alignment;
15
+ index?: number;
16
+ }): number;
17
+ /**
18
+ * Pre-measure all rows in a List.
19
+ */
20
+ measureAllRows(): void;
21
+ /**
22
+ * Recompute row heights and offsets after the specified index (defaults to 0).
23
+ */
24
+ recomputeRowHeights(index?: number): void;
25
+ /**
26
+ * Scroll to the specified offset. Useful for animating position changes.
27
+ */
28
+ scrollToPosition(scrollTop?: number): void;
29
+ /**
30
+ * Ensure row is visible. This method can be used to safely scroll back to a cell
31
+ * that a user has scrolled away from even if it was previously scrolled to.
32
+ */
33
+ scrollToRow(index?: number): void;
7
34
  }
8
35
  export type { ListProps, AutoSizerProps, ListRowProps };
9
36
  export declare const List: React.ComponentType<ListProps>;
@@ -9,11 +9,10 @@ export declare const pickerPropTypes: {
9
9
  containerPadding: PropTypes.Requireable<number>;
10
10
  container: PropTypes.Requireable<any>;
11
11
  disabled: PropTypes.Requireable<boolean>;
12
- toggleAs: PropTypes.Requireable<PropTypes.ReactComponentLike>;
13
12
  menuClassName: PropTypes.Requireable<string>;
14
13
  menuStyle: PropTypes.Requireable<object>;
15
14
  placeholder: PropTypes.Requireable<PropTypes.ReactNodeLike>;
16
- placement: PropTypes.Requireable<any>;
15
+ placement: PropTypes.Requireable<"top" | "bottom" | "right" | "left" | "bottomStart" | "bottomEnd" | "topStart" | "topEnd" | "leftStart" | "rightStart" | "leftEnd" | "rightEnd" | "auto" | "autoVertical" | "autoVerticalStart" | "autoVerticalEnd" | "autoHorizontal" | "autoHorizontalStart" | "autoHorizontalEnd">;
17
16
  /**
18
17
  * Prevent floating element overflow
19
18
  */
@@ -26,7 +25,7 @@ export declare const pickerPropTypes: {
26
25
  onOpen: PropTypes.Requireable<(...args: any[]) => any>;
27
26
  onClose: PropTypes.Requireable<(...args: any[]) => any>;
28
27
  onClean: PropTypes.Requireable<(...args: any[]) => any>;
29
- listProps: PropTypes.Requireable<object>;
28
+ listProps: PropTypes.Requireable<any>;
30
29
  onEnter: PropTypes.Requireable<(...args: any[]) => any>;
31
30
  onEntering: PropTypes.Requireable<(...args: any[]) => any>;
32
31
  onEntered: PropTypes.Requireable<(...args: any[]) => any>;
@@ -35,7 +34,7 @@ export declare const pickerPropTypes: {
35
34
  onExited: PropTypes.Requireable<(...args: any[]) => any>;
36
35
  };
37
36
  export declare const listPickerPropTypes: {
38
- data: PropTypes.Requireable<any[]>;
37
+ data: PropTypes.Validator<any[]>;
39
38
  valueKey: PropTypes.Requireable<string>;
40
39
  labelKey: PropTypes.Requireable<string>;
41
40
  childrenKey: PropTypes.Requireable<string>;
@@ -52,11 +51,10 @@ export declare const listPickerPropTypes: {
52
51
  containerPadding: PropTypes.Requireable<number>;
53
52
  container: PropTypes.Requireable<any>;
54
53
  disabled: PropTypes.Requireable<boolean>;
55
- toggleAs: PropTypes.Requireable<PropTypes.ReactComponentLike>;
56
54
  menuClassName: PropTypes.Requireable<string>;
57
55
  menuStyle: PropTypes.Requireable<object>;
58
56
  placeholder: PropTypes.Requireable<PropTypes.ReactNodeLike>;
59
- placement: PropTypes.Requireable<any>;
57
+ placement: PropTypes.Requireable<"top" | "bottom" | "right" | "left" | "bottomStart" | "bottomEnd" | "topStart" | "topEnd" | "leftStart" | "rightStart" | "leftEnd" | "rightEnd" | "auto" | "autoVertical" | "autoVerticalStart" | "autoVerticalEnd" | "autoHorizontal" | "autoHorizontalStart" | "autoHorizontalEnd">;
60
58
  /**
61
59
  * Prevent floating element overflow
62
60
  */
@@ -69,7 +67,7 @@ export declare const listPickerPropTypes: {
69
67
  onOpen: PropTypes.Requireable<(...args: any[]) => any>;
70
68
  onClose: PropTypes.Requireable<(...args: any[]) => any>;
71
69
  onClean: PropTypes.Requireable<(...args: any[]) => any>;
72
- listProps: PropTypes.Requireable<object>;
70
+ listProps: PropTypes.Requireable<any>;
73
71
  onEnter: PropTypes.Requireable<(...args: any[]) => any>;
74
72
  onEntering: PropTypes.Requireable<(...args: any[]) => any>;
75
73
  onEntered: PropTypes.Requireable<(...args: any[]) => any>;
@@ -12,7 +12,8 @@ export var pickerPropTypes = _extends({}, animationPropTypes, {
12
12
  containerPadding: PropTypes.number,
13
13
  container: PropTypes.oneOfType([PropTypes.any, PropTypes.func]),
14
14
  disabled: PropTypes.bool,
15
- toggleAs: PropTypes.elementType,
15
+ // PropTypes.elementType conflictin with React.ElementType
16
+ // toggleAs: PropTypes.elementType,
16
17
  menuClassName: PropTypes.string,
17
18
  menuStyle: PropTypes.object,
18
19
  placeholder: PropTypes.node,
@@ -30,10 +31,10 @@ export var pickerPropTypes = _extends({}, animationPropTypes, {
30
31
  onOpen: PropTypes.func,
31
32
  onClose: PropTypes.func,
32
33
  onClean: PropTypes.func,
33
- listProps: PropTypes.object
34
+ listProps: PropTypes.any
34
35
  });
35
36
  export var listPickerPropTypes = _extends({}, pickerPropTypes, {
36
- data: PropTypes.array,
37
+ data: PropTypes.array.isRequired,
37
38
  valueKey: PropTypes.string,
38
39
  labelKey: PropTypes.string,
39
40
  childrenKey: PropTypes.string,
@@ -1,15 +1,16 @@
1
1
  import React from 'react';
2
2
  import { OverlayTriggerInstance } from './PickerToggleTrigger';
3
3
  import { TypeAttributes, ItemDataType } from '../@types/common';
4
+ import { ListInstance } from './VirtualizedList';
4
5
  interface NodeKeys {
5
6
  valueKey: string;
6
7
  childrenKey: string;
7
8
  }
8
- export declare function createConcatChildrenFunction(node: any, nodeValue?: any, nodeKeys?: NodeKeys): (data: any[], children: any[]) => any[];
9
+ export declare function createConcatChildrenFunction<T = any>(node: any, nodeValue?: any, nodeKeys?: NodeKeys): (data: T[], children: T[]) => T[];
9
10
  export declare function shouldDisplay(label: React.ReactNode, searchKeyword: string): boolean;
10
11
  interface PickerClassNameProps {
11
12
  name?: string;
12
- classPrefix?: string;
13
+ classPrefix: string;
13
14
  className?: string;
14
15
  placement?: TypeAttributes.Placement;
15
16
  appearance?: 'default' | 'subtle';
@@ -42,7 +43,7 @@ interface EventsProps {
42
43
  */
43
44
  export declare function onMenuKeyDown(event: React.KeyboardEvent, events: EventsProps): void;
44
45
  interface FocusItemValueProps {
45
- target: HTMLElement | (() => HTMLElement);
46
+ target: HTMLElement | null | (() => HTMLElement | null);
46
47
  data?: any[];
47
48
  valueKey?: string;
48
49
  focusableQueryKey?: string;
@@ -55,9 +56,9 @@ interface FocusItemValueProps {
55
56
  * @param defaultFocusItemValue
56
57
  * @param props
57
58
  */
58
- export declare const useFocusItemValue: (defaultFocusItemValue: number | string | readonly string[], props: FocusItemValueProps) => {
59
- focusItemValue: any;
60
- setFocusItemValue: React.Dispatch<any>;
59
+ export declare const useFocusItemValue: <T>(defaultFocusItemValue: T | null | undefined, props: FocusItemValueProps) => {
60
+ focusItemValue: T | null | undefined;
61
+ setFocusItemValue: React.Dispatch<React.SetStateAction<T | null | undefined>>;
61
62
  layer: number;
62
63
  setLayer: React.Dispatch<React.SetStateAction<number>>;
63
64
  keys: any[];
@@ -66,7 +67,7 @@ export declare const useFocusItemValue: (defaultFocusItemValue: number | string
66
67
  };
67
68
  interface ToggleKeyDownEventProps {
68
69
  toggle?: boolean;
69
- triggerRef?: React.RefObject<any>;
70
+ triggerRef: React.RefObject<any>;
70
71
  targetRef: React.RefObject<any>;
71
72
  overlayRef?: React.RefObject<any>;
72
73
  searchInputRef?: React.RefObject<any>;
@@ -88,7 +89,7 @@ export declare const useToggleKeyDownEvent: (props: ToggleKeyDownEventProps) =>
88
89
  interface SearchProps {
89
90
  labelKey: string;
90
91
  data: ItemDataType[];
91
- searchBy: (keyword: any, label: any, item: any) => boolean;
92
+ searchBy?: (keyword: any, label: any, item: any) => boolean;
92
93
  callback?: (keyword: string, data: ItemDataType[], event: React.SyntheticEvent) => void;
93
94
  }
94
95
  /**
@@ -97,31 +98,22 @@ interface SearchProps {
97
98
  */
98
99
  export declare function useSearch(props: SearchProps): {
99
100
  searchKeyword: string;
100
- filteredData: any[];
101
+ filteredData: import("../CheckTreePicker/utils").TreeNodeType[];
101
102
  updateFilteredData: (nextData: ItemDataType[]) => void;
102
103
  setSearchKeyword: React.Dispatch<React.SetStateAction<string>>;
103
- checkShouldDisplay: (item: ItemDataType, keyword?: string) => boolean;
104
+ checkShouldDisplay: (item: ItemDataType, keyword?: string | undefined) => boolean;
104
105
  handleSearch: (searchKeyword: string, event: React.SyntheticEvent) => void;
105
106
  };
106
- interface Refs {
107
+ interface PickerDependentParameters {
107
108
  triggerRef?: React.RefObject<OverlayTriggerInstance>;
108
109
  rootRef?: React.RefObject<HTMLElement>;
109
110
  overlayRef?: React.RefObject<HTMLElement>;
110
111
  targetRef?: React.RefObject<HTMLElement>;
112
+ listRef?: React.RefObject<ListInstance>;
113
+ inline?: boolean;
111
114
  }
112
115
  /**
113
116
  * A hook of the exposed method of Picker
114
- *
115
- * {
116
- * root: Element;
117
- * overlay: Element;
118
- * target?: Element;
119
- * updatePosition:() => void;
120
- * open:() => void;
121
- * close:() => void;
122
- * }
123
- * @param ref
124
- * @param params
125
117
  */
126
- export declare function usePublicMethods(ref: any, { triggerRef, overlayRef, targetRef, rootRef }: Refs, disabled?: boolean): void;
118
+ export declare function usePublicMethods(ref: any, parmas: PickerDependentParameters): void;
127
119
  export {};