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
@@ -1,5 +1,4 @@
1
1
  import React, { useState, useEffect, useRef, useMemo, useCallback, useImperativeHandle } from 'react';
2
- import bindElementResize from 'element-resize-event';
3
2
  import PropTypes from 'prop-types';
4
3
  import classNames from 'classnames';
5
4
  import getContainer from 'dom-lib/getContainer';
@@ -8,6 +7,7 @@ import removeClass from 'dom-lib/removeClass';
8
7
  import on from 'dom-lib/on';
9
8
  import addClass from 'dom-lib/addClass';
10
9
  import addStyle from 'dom-lib/addStyle';
10
+ import { ResizeObserver } from '@juggle/resize-observer';
11
11
  import isElement from '../DOMHelper/isElement';
12
12
  import positionUtils from './positionUtils';
13
13
  import { getDOMNode } from '../utils';
@@ -16,13 +16,15 @@ import { useUpdateEffect } from '../utils';
16
16
  var usePosition = function usePosition(props, ref) {
17
17
  var _props$placement = props.placement,
18
18
  placement = _props$placement === void 0 ? 'right' : _props$placement,
19
- preventOverflow = props.preventOverflow,
19
+ _props$preventOverflo = props.preventOverflow,
20
+ preventOverflow = _props$preventOverflo === void 0 ? false : _props$preventOverflo,
20
21
  _props$containerPaddi = props.containerPadding,
21
22
  containerPadding = _props$containerPaddi === void 0 ? 0 : _props$containerPaddi,
22
23
  container = props.container,
23
24
  triggerTarget = props.triggerTarget;
24
- var containerRef = useRef();
25
- var lastTargetRef = useRef();
25
+ var containerRef = useRef(null);
26
+ var lastTargetRef = useRef(null);
27
+ var overlayResizeObserver = useRef();
26
28
  var defaultPosition = {
27
29
  positionLeft: 0,
28
30
  positionTop: 0,
@@ -67,8 +69,9 @@ var usePosition = function usePosition(props, ref) {
67
69
  return;
68
70
  }
69
71
 
70
- var overlay = getDOMNode(ref.current);
71
- var containerElement = getContainer(typeof container === 'function' ? container() : container, ownerDocument(ref.current).body);
72
+ var overlay = getDOMNode(ref.current); // fixme dom-lib getContainer incorrect type
73
+
74
+ var containerElement = getContainer(typeof container === 'function' ? container() : container !== null && container !== void 0 ? container : null, ownerDocument(ref.current).body);
72
75
  var posi = utils.calcOverlayPosition(overlay, targetElement, containerElement);
73
76
 
74
77
  if (forceUpdateDOM && overlay) {
@@ -76,7 +79,11 @@ var usePosition = function usePosition(props, ref) {
76
79
 
77
80
  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];
78
81
  removeClass(overlay, preClassName);
79
- addClass(overlay, posi.positionClassName);
82
+
83
+ if (posi.positionClassName) {
84
+ addClass(overlay, posi.positionClassName);
85
+ }
86
+
80
87
  addStyle(overlay, {
81
88
  left: posi.positionLeft + "px",
82
89
  top: posi.positionTop + "px"
@@ -109,17 +116,19 @@ var usePosition = function usePosition(props, ref) {
109
116
 
110
117
  if (overlay) {
111
118
  // Update the position when the size of the overlay changes
112
- bindElementResize(overlay, function () {
119
+ overlayResizeObserver.current = new ResizeObserver(function () {
113
120
  return updatePosition(true, true);
114
121
  });
122
+ overlayResizeObserver.current.observe(overlay);
115
123
  }
116
124
 
117
125
  return function () {
118
- var _containerScrollListe;
126
+ var _containerScrollListe, _overlayResizeObserve;
119
127
 
120
128
  lastTargetRef.current = null;
121
129
  (_containerScrollListe = containerScrollListener) === null || _containerScrollListe === void 0 ? void 0 : _containerScrollListe.off();
122
130
  resizeListener === null || resizeListener === void 0 ? void 0 : resizeListener.off();
131
+ (_overlayResizeObserve = overlayResizeObserver.current) === null || _overlayResizeObserve === void 0 ? void 0 : _overlayResizeObserve.disconnect();
123
132
  };
124
133
  }, [preventOverflow, ref, updatePosition]);
125
134
  useUpdateEffect(function () {
@@ -131,7 +140,7 @@ var usePosition = function usePosition(props, ref) {
131
140
  var Position = /*#__PURE__*/React.forwardRef(function (props, ref) {
132
141
  var children = props.children,
133
142
  className = props.className;
134
- var childRef = React.useRef();
143
+ var childRef = React.useRef(null);
135
144
 
136
145
  var _usePosition = usePosition(props, childRef),
137
146
  position = _usePosition[0],
@@ -168,7 +177,7 @@ var Position = /*#__PURE__*/React.forwardRef(function (props, ref) {
168
177
  Position.displayName = 'Position';
169
178
  Position.propTypes = {
170
179
  className: PropTypes.string,
171
- children: PropTypes.func,
180
+ children: PropTypes.func.isRequired,
172
181
  container: PropTypes.oneOfType([PropTypes.func, PropTypes.any]),
173
182
  containerPadding: PropTypes.number,
174
183
  placement: PropTypes.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
  };
@@ -29,10 +29,10 @@ function getContainerDimensions(containerNode) {
29
29
  scrollY = scrollTop(ownerDocument(containerNode).documentElement) || scrollTop(containerNode);
30
30
  scrollX = scrollLeft(ownerDocument(containerNode).documentElement) || scrollLeft(containerNode);
31
31
  } else {
32
- var _getOffset = getOffset(containerNode);
32
+ var _ref = getOffset(containerNode);
33
33
 
34
- width = _getOffset.width;
35
- height = _getOffset.height;
34
+ width = _ref.width;
35
+ height = _ref.height;
36
36
  scrollY = scrollTop(containerNode);
37
37
  scrollX = scrollLeft(containerNode);
38
38
  }
@@ -197,9 +197,9 @@ export default (function (props) {
197
197
  calcOverlayPosition: function calcOverlayPosition(overlayNode, target, container) {
198
198
  var childOffset = this.getPosition(target, container);
199
199
 
200
- var _getOffset2 = getOffset(overlayNode),
201
- overlayHeight = _getOffset2.height,
202
- overlayWidth = _getOffset2.width;
200
+ var _ref2 = getOffset(overlayNode),
201
+ overlayHeight = _ref2.height,
202
+ overlayWidth = _ref2.width;
203
203
 
204
204
  var top = childOffset.top,
205
205
  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;
@@ -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>>;
@@ -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));
@@ -12,7 +12,7 @@ import CloseButton from '../CloseButton';
12
12
  import { useClassNames, KEY_VALUES, mergeRefs } from '../utils';
13
13
  import Plaintext from '../Plaintext';
14
14
  import useToggleCaret from '../utils/useToggleCaret';
15
- import MaskedInput from '../MaskedInput';
15
+ import TextMask from '../MaskedInput/TextMask';
16
16
  import deprecatePropType from '../utils/deprecatePropType';
17
17
  var defaultInputMask = [];
18
18
  var PickerToggle = /*#__PURE__*/React.forwardRef(function (props, ref) {
@@ -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],
@@ -83,15 +84,17 @@ var PickerToggle = /*#__PURE__*/React.forwardRef(function (props, ref) {
83
84
  onFocus === null || onFocus === void 0 ? void 0 : onFocus(event);
84
85
 
85
86
  if (input) {
86
- inputRef.current.focus();
87
+ var _inputRef$current;
88
+
89
+ (_inputRef$current = inputRef.current) === null || _inputRef$current === void 0 ? void 0 : _inputRef$current.focus();
87
90
  }
88
91
  }, [input, onFocus]);
89
92
  var handleBlur = useCallback(function (event) {
90
93
  if (document.activeElement !== inputRef.current) {
91
- var _inputRef$current;
94
+ var _inputRef$current2;
92
95
 
93
96
  setActive(false);
94
- (_inputRef$current = inputRef.current) === null || _inputRef$current === void 0 ? void 0 : _inputRef$current.blur();
97
+ (_inputRef$current2 = inputRef.current) === null || _inputRef$current2 === void 0 ? void 0 : _inputRef$current2.blur();
95
98
  }
96
99
 
97
100
  onBlur === null || onBlur === void 0 ? void 0 : onBlur(event);
@@ -146,7 +149,7 @@ var PickerToggle = /*#__PURE__*/React.forwardRef(function (props, ref) {
146
149
  onFocus: !disabled ? handleFocus : null // The debounce is set to 200 to solve the flicker caused by the switch between input and div.
147
150
  ,
148
151
  onBlur: !disabled ? debounce(handleBlur, 200) : null
149
- }), /*#__PURE__*/React.createElement(MaskedInput, {
152
+ }), /*#__PURE__*/React.createElement(TextMask, {
150
153
  mask: inputMask,
151
154
  value: Array.isArray(inputValue) ? inputValue.toString() : inputValue,
152
155
  onBlur: handleInputBlur,
@@ -170,7 +173,7 @@ var PickerToggle = /*#__PURE__*/React.forwardRef(function (props, ref) {
170
173
  }
171
174
  }), children ? /*#__PURE__*/React.createElement("span", {
172
175
  className: prefix(hasValue ? 'value' : 'placeholder'),
173
- "aria-placeholder": typeof children === 'string' ? children : null
176
+ "aria-placeholder": typeof children === 'string' ? children : undefined
174
177
  }, children) : null, showCleanButton && /*#__PURE__*/React.createElement(CloseButton, {
175
178
  className: prefix(_templateObject || (_templateObject = _taggedTemplateLiteralLoose(["clean"]))),
176
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>;
@@ -13,7 +13,7 @@ export declare const pickerPropTypes: {
13
13
  menuClassName: PropTypes.Requireable<string>;
14
14
  menuStyle: PropTypes.Requireable<object>;
15
15
  placeholder: PropTypes.Requireable<PropTypes.ReactNodeLike>;
16
- placement: PropTypes.Requireable<any>;
16
+ placement: PropTypes.Requireable<"top" | "bottom" | "right" | "left" | "bottomStart" | "bottomEnd" | "topStart" | "topEnd" | "leftStart" | "rightStart" | "leftEnd" | "rightEnd" | "auto" | "autoVertical" | "autoVerticalStart" | "autoVerticalEnd" | "autoHorizontal" | "autoHorizontalStart" | "autoHorizontalEnd">;
17
17
  /**
18
18
  * Prevent floating element overflow
19
19
  */
@@ -56,7 +56,7 @@ export declare const listPickerPropTypes: {
56
56
  menuClassName: PropTypes.Requireable<string>;
57
57
  menuStyle: PropTypes.Requireable<object>;
58
58
  placeholder: PropTypes.Requireable<PropTypes.ReactNodeLike>;
59
- placement: PropTypes.Requireable<any>;
59
+ placement: PropTypes.Requireable<"top" | "bottom" | "right" | "left" | "bottomStart" | "bottomEnd" | "topStart" | "topEnd" | "leftStart" | "rightStart" | "leftEnd" | "rightEnd" | "auto" | "autoVertical" | "autoVerticalStart" | "autoVerticalEnd" | "autoHorizontal" | "autoHorizontalStart" | "autoHorizontalEnd">;
60
60
  /**
61
61
  * Prevent floating element overflow
62
62
  */
@@ -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,18 +56,18 @@ 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 extends string | number>(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
- keys: any[];
64
- setKeys: React.Dispatch<React.SetStateAction<any[]>>;
64
+ keys: (string | undefined)[];
65
+ setKeys: React.Dispatch<React.SetStateAction<(string | undefined)[]>>;
65
66
  onKeyDown: (event: any) => void;
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 {};