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
@@ -29,10 +29,10 @@ var _VirtualizedList = require("../Picker/VirtualizedList");
29
29
 
30
30
  var _TreeNode = _interopRequireDefault(require("./TreeNode"));
31
31
 
32
- var _utils = require("../utils");
33
-
34
32
  var _treeUtils = require("../utils/treeUtils");
35
33
 
34
+ var _utils = require("../utils");
35
+
36
36
  var _Picker = require("../Picker");
37
37
 
38
38
  var _TreeContext = _interopRequireDefault(require("../Tree/TreeContext"));
@@ -50,6 +50,7 @@ var TreePicker = /*#__PURE__*/_react.default.forwardRef(function (props, ref) {
50
50
  _props$appearance = props.appearance,
51
51
  appearance = _props$appearance === void 0 ? 'default' : _props$appearance,
52
52
  style = props.style,
53
+ showIndentLine = props.showIndentLine,
53
54
  controlledValue = props.value,
54
55
  overrideLocale = props.locale,
55
56
  _props$height = props.height,
@@ -63,7 +64,8 @@ var TreePicker = /*#__PURE__*/_react.default.forwardRef(function (props, ref) {
63
64
  menuStyle = props.menuStyle,
64
65
  _props$searchable = props.searchable,
65
66
  searchable = _props$searchable === void 0 ? true : _props$searchable,
66
- virtualized = props.virtualized,
67
+ _props$virtualized = props.virtualized,
68
+ virtualized = _props$virtualized === void 0 ? false : _props$virtualized,
67
69
  _props$classPrefix = props.classPrefix,
68
70
  classPrefix = _props$classPrefix === void 0 ? 'picker' : _props$classPrefix,
69
71
  defaultValue = props.defaultValue,
@@ -110,22 +112,20 @@ var TreePicker = /*#__PURE__*/_react.default.forwardRef(function (props, ref) {
110
112
  renderExtraFooter = props.renderExtraFooter,
111
113
  renderMenu = props.renderMenu,
112
114
  renderValue = props.renderValue,
113
- renderDragNode = props.renderDragNode,
114
- rest = (0, _objectWithoutPropertiesLoose2.default)(props, ["as", "data", "appearance", "style", "value", "locale", "height", "className", "disabled", "placement", "cleanable", "menuStyle", "searchable", "virtualized", "classPrefix", "defaultValue", "placeholder", "searchKeyword", "menuClassName", "menuAutoWidth", "searchBy", "toggleAs", "labelKey", "valueKey", "childrenKey", "draggable", "defaultExpandAll", "disabledItemValues", "expandItemValues", "defaultExpandItemValues", "id", "listProps", "getChildren", "renderTreeIcon", "renderTreeNode", "onExit", "onExited", "onClean", "onOpen", "onSearch", "onSelect", "onChange", "onEntered", "onClose", "onDragEnd", "onDragStart", "onDragEnter", "onDragLeave", "onDragOver", "onDrop", "onExpand", "renderExtraFooter", "renderMenu", "renderValue", "renderDragNode"]);
115
- var triggerRef = (0, _react.useRef)();
116
- var targetRef = (0, _react.useRef)();
117
- var listRef = (0, _react.useRef)();
118
- var overlayRef = (0, _react.useRef)();
119
- var searchInputRef = (0, _react.useRef)();
120
- var treeViewRef = (0, _react.useRef)();
115
+ rest = (0, _objectWithoutPropertiesLoose2.default)(props, ["as", "data", "appearance", "style", "showIndentLine", "value", "locale", "height", "className", "disabled", "placement", "cleanable", "menuStyle", "searchable", "virtualized", "classPrefix", "defaultValue", "placeholder", "searchKeyword", "menuClassName", "menuAutoWidth", "searchBy", "toggleAs", "labelKey", "valueKey", "childrenKey", "draggable", "defaultExpandAll", "disabledItemValues", "expandItemValues", "defaultExpandItemValues", "id", "listProps", "getChildren", "renderTreeIcon", "renderTreeNode", "onExit", "onExited", "onClean", "onOpen", "onSearch", "onSelect", "onChange", "onEntered", "onClose", "onDragEnd", "onDragStart", "onDragEnter", "onDragLeave", "onDragOver", "onDrop", "onExpand", "renderExtraFooter", "renderMenu", "renderValue"]);
116
+ var triggerRef = (0, _react.useRef)(null);
117
+ var targetRef = (0, _react.useRef)(null);
118
+ var listRef = (0, _react.useRef)(null);
119
+ var overlayRef = (0, _react.useRef)(null);
120
+ var searchInputRef = (0, _react.useRef)(null);
121
+ var treeViewRef = (0, _react.useRef)(null);
121
122
 
122
123
  var _useCustom = (0, _utils.useCustom)('Picker', overrideLocale),
123
124
  rtl = _useCustom.rtl,
124
125
  locale = _useCustom.locale;
125
126
 
126
127
  var _useContext = (0, _react.useContext)(_TreeContext.default),
127
- inline = _useContext.inline,
128
- dragNodeRef = _useContext.dragNodeRef;
128
+ inline = _useContext.inline;
129
129
 
130
130
  var _useControlled = (0, _utils.useControlled)(controlledValue, defaultValue),
131
131
  value = _useControlled[0],
@@ -209,21 +209,17 @@ var TreePicker = /*#__PURE__*/_react.default.forwardRef(function (props, ref) {
209
209
 
210
210
  var activeNode = (0, _treeUtils.getTreeActiveNode)(flattenNodes, value, valueKey);
211
211
  var getFormattedNodes = (0, _react.useCallback)(function (render) {
212
- var formattedNodes = [];
213
-
214
212
  if (virtualized) {
215
- formattedNodes = formatVirtualizedTreeData(flattenNodes, filteredData, expandItemValues, {
213
+ return formatVirtualizedTreeData(flattenNodes, filteredData, expandItemValues, {
216
214
  searchKeyword: searchKeywordState
217
215
  }).filter(function (n) {
218
216
  return n.visible;
219
217
  });
220
- } else {
221
- formattedNodes = filteredData.map(function (dataItem, index) {
222
- return render === null || render === void 0 ? void 0 : render(dataItem, index, 1);
223
- });
224
218
  }
225
219
 
226
- return formattedNodes;
220
+ return filteredData.map(function (dataItem, index) {
221
+ return render === null || render === void 0 ? void 0 : render(dataItem, index, 1);
222
+ });
227
223
  }, [searchKeywordState, expandItemValues, filteredData, flattenNodes, formatVirtualizedTreeData, virtualized]);
228
224
  var focusActiveNode = (0, _react.useCallback)(function () {
229
225
  (0, _treeUtils.focusToActiveTreeNode)({
@@ -251,14 +247,6 @@ var TreePicker = /*#__PURE__*/_react.default.forwardRef(function (props, ref) {
251
247
  (0, _react.useEffect)(function () {
252
248
  setSearchKeyword(searchKeyword !== null && searchKeyword !== void 0 ? searchKeyword : '');
253
249
  }, [searchKeyword, setSearchKeyword]);
254
- (0, _react.useEffect)(function () {
255
- if (dragNodeRef) {
256
- var _treeViewRef$current;
257
-
258
- dragNodeRef.current = (_treeViewRef$current = treeViewRef.current) === null || _treeViewRef$current === void 0 ? void 0 : _treeViewRef$current.querySelector("." + treePrefix('drag-node-mover'));
259
- } // eslint-disable-next-line react-hooks/exhaustive-deps
260
-
261
- }, []);
262
250
  var getDropData = (0, _react.useCallback)(function (nodeData) {
263
251
  var options = {
264
252
  valueKey: valueKey,
@@ -437,10 +425,13 @@ var TreePicker = /*#__PURE__*/_react.default.forwardRef(function (props, ref) {
437
425
  (_targetRef$current2 = targetRef.current) === null || _targetRef$current2 === void 0 ? void 0 : _targetRef$current2.focus();
438
426
  }, [activeNode, setSearchKeyword, valueKey]);
439
427
  (0, _Picker.usePublicMethods)(ref, {
428
+ rootRef: inline ? treeViewRef : undefined,
440
429
  triggerRef: triggerRef,
441
430
  overlayRef: overlayRef,
442
- targetRef: targetRef
443
- }, inline);
431
+ targetRef: targetRef,
432
+ listRef: listRef,
433
+ inline: inline
434
+ });
444
435
  var handleFocusItem = (0, _react.useCallback)(function (key) {
445
436
  var focusableItems = (0, _treeUtils.getFocusableItems)(filteredData, {
446
437
  disabledItemValues: disabledItemValues,
@@ -470,11 +461,13 @@ var TreePicker = /*#__PURE__*/_react.default.forwardRef(function (props, ref) {
470
461
  }
471
462
  }, [searchKeywordState, expandItemValues, filteredData, focusItemValue, treeNodesRefs, treePrefix, valueKey, childrenKey, disabledItemValues]);
472
463
  var handleLeftArrow = (0, _react.useCallback)(function () {
464
+ if ((0, _isNil2.default)(focusItemValue)) return;
473
465
  var focusItem = (0, _treeUtils.getActiveItem)(focusItemValue, flattenNodes, valueKey);
474
466
  (0, _treeUtils.leftArrowHandler)({
475
467
  focusItem: focusItem,
476
468
  expand: expandItemValues.includes(focusItem === null || focusItem === void 0 ? void 0 : focusItem[valueKey]),
477
469
  onExpand: handleExpand,
470
+ childrenKey: childrenKey,
478
471
  onFocusItem: function onFocusItem() {
479
472
  var _focusItem$parent, _focusItem$parent2;
480
473
 
@@ -482,8 +475,9 @@ var TreePicker = /*#__PURE__*/_react.default.forwardRef(function (props, ref) {
482
475
  (0, _treeUtils.focusTreeNode)(focusItem === null || focusItem === void 0 ? void 0 : (_focusItem$parent2 = focusItem.parent) === null || _focusItem$parent2 === void 0 ? void 0 : _focusItem$parent2.refKey, treeNodesRefs, "." + treePrefix('node-label'));
483
476
  }
484
477
  });
485
- }, [expandItemValues, flattenNodes, focusItemValue, handleExpand, treeNodesRefs, treePrefix, valueKey]);
478
+ }, [expandItemValues, flattenNodes, focusItemValue, handleExpand, treeNodesRefs, treePrefix, valueKey, childrenKey]);
486
479
  var handleRightArrow = (0, _react.useCallback)(function () {
480
+ if ((0, _isNil2.default)(focusItemValue)) return;
487
481
  var focusItem = (0, _treeUtils.getActiveItem)(focusItemValue, flattenNodes, valueKey);
488
482
  (0, _treeUtils.rightArrowHandler)({
489
483
  focusItem: focusItem,
@@ -496,10 +490,12 @@ var TreePicker = /*#__PURE__*/_react.default.forwardRef(function (props, ref) {
496
490
  });
497
491
  }, [focusItemValue, flattenNodes, valueKey, expandItemValues, childrenKey, handleExpand, handleFocusItem]);
498
492
  var selectActiveItem = (0, _react.useCallback)(function (event) {
493
+ if ((0, _isNil2.default)(focusItemValue)) return;
499
494
  var activeItem = (0, _treeUtils.getActiveItem)(focusItemValue, flattenNodes, valueKey);
500
495
  handleSelect(activeItem, event);
501
496
  }, [flattenNodes, valueKey, focusItemValue, handleSelect]);
502
497
  var handleClean = (0, _react.useCallback)(function (event) {
498
+ var nullValue = null;
503
499
  var target = event.target; // exclude searchBar
504
500
 
505
501
  if (target.matches('div[role="searchbox"] > input')) {
@@ -507,7 +503,7 @@ var TreePicker = /*#__PURE__*/_react.default.forwardRef(function (props, ref) {
507
503
  }
508
504
 
509
505
  setValue(null);
510
- onChange === null || onChange === void 0 ? void 0 : onChange(null, event);
506
+ onChange === null || onChange === void 0 ? void 0 : onChange(nullValue, event);
511
507
  }, [onChange, setValue]);
512
508
  var onPickerKeydown = (0, _Picker.useToggleKeyDownEvent)((0, _extends2.default)({
513
509
  toggle: !activeNode || !active,
@@ -577,18 +573,21 @@ var TreePicker = /*#__PURE__*/_react.default.forwardRef(function (props, ref) {
577
573
  key: node[valueKey]
578
574
  }, /*#__PURE__*/_react.default.createElement(_TreeNode.default, (0, _extends2.default)({}, nodeProps, {
579
575
  ref: function ref(_ref) {
580
- return saveTreeNodeRef(node.refKey, _ref);
576
+ return saveTreeNodeRef(_ref, node.refKey);
581
577
  }
582
578
  })), /*#__PURE__*/_react.default.createElement("div", {
583
579
  className: treePrefix('children')
584
580
  }, nodes.map(function (child, i) {
585
581
  return renderNode(child, i, layer);
582
+ }), showIndentLine && /*#__PURE__*/_react.default.createElement("span", {
583
+ className: treePrefix('indent-line'),
584
+ style: (0, _treeUtils.getTreeNodeIndent)(rtl, layer - 1, true)
586
585
  })));
587
586
  }
588
587
 
589
588
  return /*#__PURE__*/_react.default.createElement(_TreeNode.default, (0, _extends2.default)({
590
589
  ref: function ref(_ref2) {
591
- return saveTreeNodeRef(node.refKey, _ref2);
590
+ return saveTreeNodeRef(_ref2, node.refKey);
592
591
  },
593
592
  key: node[valueKey]
594
593
  }, nodeProps));
@@ -616,29 +615,13 @@ var TreePicker = /*#__PURE__*/_react.default.forwardRef(function (props, ref) {
616
615
  });
617
616
  return visible && /*#__PURE__*/_react.default.createElement(_TreeNode.default, (0, _extends2.default)({
618
617
  ref: function ref(_ref4) {
619
- return saveTreeNodeRef(node.refKey, _ref4);
618
+ return saveTreeNodeRef(_ref4, node.refKey);
620
619
  },
621
620
  key: key
622
621
  }, nodeProps));
623
622
  };
624
623
  };
625
624
 
626
- var renderDefaultDragNode = function renderDefaultDragNode() {
627
- if (draggable) {
628
- var dragNodeContent = dragNode === null || dragNode === void 0 ? void 0 : dragNode[labelKey];
629
-
630
- if ((0, _isFunction2.default)(renderDragNode)) {
631
- dragNodeContent = renderDragNode(dragNode);
632
- }
633
-
634
- return /*#__PURE__*/_react.default.createElement("span", {
635
- className: treePrefix('drag-node-mover')
636
- }, dragNodeContent);
637
- }
638
-
639
- return null;
640
- };
641
-
642
625
  var renderTree = function renderTree() {
643
626
  var _withTreeClassPrefix;
644
627
 
@@ -650,7 +633,7 @@ var TreePicker = /*#__PURE__*/_react.default.forwardRef(function (props, ref) {
650
633
  return /*#__PURE__*/_react.default.createElement("div", {
651
634
  role: "tree",
652
635
  id: id ? id + "-listbox" : undefined,
653
- ref: inline ? (0, _utils.mergeRefs)(treeViewRef, ref) : treeViewRef,
636
+ ref: treeViewRef,
654
637
  className: classes,
655
638
  style: styles,
656
639
  onKeyDown: inline ? handleTreeKeyDown : undefined
@@ -674,7 +657,7 @@ var TreePicker = /*#__PURE__*/_react.default.forwardRef(function (props, ref) {
674
657
  rowRenderer: renderVirtualListNode(formattedNodes),
675
658
  scrollToAlignment: "center"
676
659
  }, listProps));
677
- }) : formattedNodes), renderDefaultDragNode());
660
+ }) : formattedNodes));
678
661
  };
679
662
 
680
663
  var renderDropdownMenu = function renderDropdownMenu(positionProps, speakerRef) {
@@ -7,7 +7,7 @@ export interface UploadFileItemProps extends WithAsProps {
7
7
  listType: 'text' | 'picture-text' | 'picture';
8
8
  disabled?: boolean;
9
9
  className?: string;
10
- maxPreviewFileSize: number;
10
+ maxPreviewFileSize?: number;
11
11
  classPrefix?: string;
12
12
  removable?: boolean;
13
13
  allowReupload?: boolean;
@@ -296,8 +296,8 @@ var UploadFileItem = /*#__PURE__*/_react.default.forwardRef(function (props, ref
296
296
  UploadFileItem.displayName = 'UploadFileItem';
297
297
  UploadFileItem.propTypes = {
298
298
  locale: _propTypes.default.any,
299
- file: _propTypes.default.object,
300
- listType: _propTypes.default.oneOf(['text', 'picture-text', 'picture']),
299
+ file: _propTypes.default.object.isRequired,
300
+ listType: _propTypes.default.oneOf(['text', 'picture-text', 'picture']).isRequired,
301
301
  disabled: _propTypes.default.bool,
302
302
  className: _propTypes.default.string,
303
303
  maxPreviewFileSize: _propTypes.default.number,
@@ -1,7 +1,7 @@
1
1
  import React from 'react';
2
2
  import { UploaderLocale } from '../locales';
3
3
  export interface UploadTriggerProps {
4
- as: React.ElementType | string;
4
+ as?: React.ElementType;
5
5
  name?: string;
6
6
  multiple?: boolean;
7
7
  disabled?: boolean;
@@ -45,13 +45,13 @@ var UploadTrigger = /*#__PURE__*/_react.default.forwardRef(function (props, ref)
45
45
  onDragOver = props.onDragOver,
46
46
  onDrop = props.onDrop,
47
47
  rest = (0, _objectWithoutPropertiesLoose2.default)(props, ["as", "name", "accept", "multiple", "disabled", "readOnly", "children", "classPrefix", "className", "draggable", "locale", "onChange", "onDragEnter", "onDragLeave", "onDragOver", "onDrop"]);
48
- var rootRef = (0, _react.useRef)();
48
+ var rootRef = (0, _react.useRef)(null);
49
49
 
50
50
  var _useState = (0, _react.useState)(false),
51
51
  dragOver = _useState[0],
52
52
  setDragOver = _useState[1];
53
53
 
54
- var inputRef = (0, _react.useRef)();
54
+ var inputRef = (0, _react.useRef)(null);
55
55
 
56
56
  var _useClassNames = (0, _utils.useClassNames)(classPrefix),
57
57
  merge = _useClassNames.merge,
@@ -164,7 +164,6 @@ UploadTrigger.propTypes = {
164
164
  classPrefix: _propTypes.default.string,
165
165
  className: _propTypes.default.string,
166
166
  children: _propTypes.default.node,
167
- as: _propTypes.default.elementType,
168
167
  draggable: _propTypes.default.bool,
169
168
  onDragEnter: _propTypes.default.func,
170
169
  onDragLeave: _propTypes.default.func,
@@ -21,7 +21,7 @@ export interface UploaderInstance {
21
21
  }
22
22
  export interface UploaderProps extends WithAsProps {
23
23
  /** Uploading URL */
24
- action?: string;
24
+ action: string;
25
25
  /** File types that can be accepted. See input accept Attribute */
26
26
  accept?: string;
27
27
  /** Automatically upload files after selecting them */
@@ -62,7 +62,7 @@ export interface UploaderProps extends WithAsProps {
62
62
  /** Max file size limit of the preview file */
63
63
  maxPreviewFileSize?: number;
64
64
  /** You can use a custom element for this component */
65
- toggleAs?: React.ElementType | string;
65
+ toggleAs?: React.ElementType;
66
66
  /** Removable list file */
67
67
  removable?: boolean;
68
68
  /** File list can be rendered */
@@ -84,11 +84,11 @@ export interface UploaderProps extends WithAsProps {
84
84
  /** In the file list, click the callback function for the uploaded file */
85
85
  onPreview?: (file: FileType, event: React.SyntheticEvent) => void;
86
86
  /** Upload callback function with erro */
87
- onError?: (status: any, file: FileType, event: React.SyntheticEvent, xhr: XMLHttpRequest) => void;
87
+ onError?: (status: any, file: FileType, event: ProgressEvent, xhr: XMLHttpRequest) => void;
88
88
  /** callback function after successful upload */
89
- onSuccess?: (response: any, file: FileType, event: React.SyntheticEvent, xhr: XMLHttpRequest) => void;
89
+ onSuccess?: (response: any, file: FileType, event: ProgressEvent, xhr: XMLHttpRequest) => void;
90
90
  /** Callback functions that upload progress change */
91
- onProgress?: (percent: number, file: FileType, event: React.SyntheticEvent, xhr: XMLHttpRequest) => void;
91
+ onProgress?: (percent: number, file: FileType, event: ProgressEvent, xhr: XMLHttpRequest) => void;
92
92
  /** In the file list, click the callback function to delete a file */
93
93
  onRemove?: (file: FileType) => void;
94
94
  /** Custom render file information */
@@ -443,7 +443,7 @@ var Uploader = /*#__PURE__*/_react.default.forwardRef(function (props, ref) {
443
443
 
444
444
  Uploader.displayName = 'Uploader';
445
445
  Uploader.propTypes = {
446
- action: _propTypes.default.string,
446
+ action: _propTypes.default.string.isRequired,
447
447
  accept: _propTypes.default.string,
448
448
  autoUpload: _propTypes.default.bool,
449
449
  children: _propTypes.default.node,
@@ -473,7 +473,6 @@ Uploader.propTypes = {
473
473
  onRemove: _propTypes.default.func,
474
474
  maxPreviewFileSize: _propTypes.default.number,
475
475
  style: _propTypes.default.object,
476
- toggleAs: _propTypes.default.elementType,
477
476
  renderFileInfo: _propTypes.default.func,
478
477
  renderThumbnail: _propTypes.default.func,
479
478
  removable: _propTypes.default.bool,
package/cjs/index.d.ts CHANGED
@@ -24,14 +24,14 @@ export { default as Loader } from './Loader';
24
24
  export type { LoaderProps } from './Loader';
25
25
  export { default as SafeAnchor } from './SafeAnchor';
26
26
  export type { SafeAnchorProps } from './SafeAnchor';
27
- export { default as Divider } from './Divider';
28
- export type { DividerProps } from './Divider';
29
27
  export { default as Placeholder } from './Placeholder';
30
28
  export type { PlaceholderGraphProps, PlaceholderGridProps, PlaceholderParagraphProps } from './Placeholder';
31
29
  export { default as Badge } from './Badge';
32
30
  export type { BadgeProps } from './Badge';
33
31
  export { default as Avatar } from './Avatar';
34
32
  export type { AvatarProps } from './Avatar';
33
+ export { default as AvatarGroup } from './AvatarGroup';
34
+ export type { AvatarGroupProps } from './AvatarGroup';
35
35
  export { default as toaster } from './toaster';
36
36
  export type { Toaster } from './toaster';
37
37
  export { default as Dropdown } from './Dropdown';
@@ -142,6 +142,10 @@ export { default as Sidebar } from './Sidebar';
142
142
  export type { SidebarProps } from './Sidebar';
143
143
  export { default as Footer } from './Footer';
144
144
  export type { FooterProps } from './Footer';
145
+ export { default as Divider } from './Divider';
146
+ export type { DividerProps } from './Divider';
147
+ export { default as Stack } from './Stack';
148
+ export type { StackProps } from './Stack';
145
149
  export { default as Schema } from './Schema';
146
150
  export { default as Animation } from './Animation';
147
151
  export type { TransitionProps, SlideProps, CollapseProps, FadeProps, BounceProps } from './Animation';
package/cjs/index.js CHANGED
@@ -3,7 +3,7 @@
3
3
  var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
4
4
 
5
5
  exports.__esModule = true;
6
- exports.CustomProvider = exports.Affix = exports.DOMHelper = exports.Animation = exports.Schema = exports.Footer = exports.Sidebar = exports.Header = exports.Content = exports.Container = exports.FlexboxGrid = exports.Col = exports.Row = exports.Grid = exports.Carousel = exports.Calendar = exports.List = exports.TagGroup = exports.Tag = exports.Timeline = exports.Progress = exports.Table = exports.PanelGroup = exports.Panel = exports.CheckTree = exports.Tree = exports.Rate = exports.RangeSlider = exports.Slider = exports.Uploader = exports.AutoComplete = exports.DateRangePicker = exports.DatePicker = exports.MultiCascader = exports.Cascader = exports.CheckTreePicker = exports.TreePicker = exports.TagInput = exports.TagPicker = exports.InputPicker = exports.CheckPicker = exports.SelectPicker = exports.RadioGroup = exports.Radio = exports.CheckboxGroup = exports.Checkbox = exports.InputGroup = exports.InputNumber = exports.MaskedInput = exports.Input = exports.Form = exports.Toggle = exports.Steps = exports.Pagination = exports.Breadcrumb = exports.Sidenav = exports.Navbar = exports.Nav = exports.Dropdown = exports.toaster = exports.Avatar = exports.Badge = exports.Placeholder = exports.Divider = exports.SafeAnchor = exports.Loader = exports.Drawer = exports.Message = exports.Notification = exports.Modal = exports.Popover = exports.Tooltip = exports.Whisper = exports.ButtonGroup = exports.ButtonToolbar = exports.IconButton = exports.Button = void 0;
6
+ exports.CustomProvider = exports.Affix = exports.DOMHelper = exports.Animation = exports.Schema = exports.Stack = exports.Divider = exports.Footer = exports.Sidebar = exports.Header = exports.Content = exports.Container = exports.FlexboxGrid = exports.Col = exports.Row = exports.Grid = exports.Carousel = exports.Calendar = exports.List = exports.TagGroup = exports.Tag = exports.Timeline = exports.Progress = exports.Table = exports.PanelGroup = exports.Panel = exports.CheckTree = exports.Tree = exports.Rate = exports.RangeSlider = exports.Slider = exports.Uploader = exports.AutoComplete = exports.DateRangePicker = exports.DatePicker = exports.MultiCascader = exports.Cascader = exports.CheckTreePicker = exports.TreePicker = exports.TagInput = exports.TagPicker = exports.InputPicker = exports.CheckPicker = exports.SelectPicker = exports.RadioGroup = exports.Radio = exports.CheckboxGroup = exports.Checkbox = exports.InputGroup = exports.InputNumber = exports.MaskedInput = exports.Input = exports.Form = exports.Toggle = exports.Steps = exports.Pagination = exports.Breadcrumb = exports.Sidenav = exports.Navbar = exports.Nav = exports.Dropdown = exports.toaster = exports.AvatarGroup = exports.Avatar = exports.Badge = exports.Placeholder = exports.SafeAnchor = exports.Loader = exports.Drawer = exports.Message = exports.Notification = exports.Modal = exports.Popover = exports.Tooltip = exports.Whisper = exports.ButtonGroup = exports.ButtonToolbar = exports.IconButton = exports.Button = void 0;
7
7
 
8
8
  var _Button = _interopRequireDefault(require("./Button"));
9
9
 
@@ -57,10 +57,6 @@ var _SafeAnchor = _interopRequireDefault(require("./SafeAnchor"));
57
57
 
58
58
  exports.SafeAnchor = _SafeAnchor.default;
59
59
 
60
- var _Divider = _interopRequireDefault(require("./Divider"));
61
-
62
- exports.Divider = _Divider.default;
63
-
64
60
  var _Placeholder = _interopRequireDefault(require("./Placeholder"));
65
61
 
66
62
  exports.Placeholder = _Placeholder.default;
@@ -73,6 +69,10 @@ var _Avatar = _interopRequireDefault(require("./Avatar"));
73
69
 
74
70
  exports.Avatar = _Avatar.default;
75
71
 
72
+ var _AvatarGroup = _interopRequireDefault(require("./AvatarGroup"));
73
+
74
+ exports.AvatarGroup = _AvatarGroup.default;
75
+
76
76
  var _toaster = _interopRequireDefault(require("./toaster"));
77
77
 
78
78
  exports.toaster = _toaster.default;
@@ -293,6 +293,14 @@ var _Footer = _interopRequireDefault(require("./Footer"));
293
293
 
294
294
  exports.Footer = _Footer.default;
295
295
 
296
+ var _Divider = _interopRequireDefault(require("./Divider"));
297
+
298
+ exports.Divider = _Divider.default;
299
+
300
+ var _Stack = _interopRequireDefault(require("./Stack"));
301
+
302
+ exports.Stack = _Stack.default;
303
+
296
304
  var _Schema = _interopRequireDefault(require("./Schema"));
297
305
 
298
306
  exports.Schema = _Schema.default;
@@ -19,15 +19,15 @@ declare type PickKeys<T> = {
19
19
  [keys in keyof T]?: T[keys];
20
20
  };
21
21
  export declare type Locale = PickKeys<typeof defaultLocale>;
22
- export declare type CommonLocale = PickKeys<typeof defaultLocale.common>;
22
+ export declare type CommonLocale = typeof defaultLocale.common;
23
23
  export declare type CalendarLocale = PickKeys<typeof defaultLocale.Calendar>;
24
24
  export declare type PlaintextLocale = PickKeys<typeof defaultLocale.Plaintext>;
25
25
  export declare type PaginationLocale = PickKeys<typeof defaultLocale.Pagination>;
26
26
  export declare type TableLocale = CommonLocale;
27
27
  export declare type DatePickerLocale = PickKeys<typeof defaultLocale.DatePicker>;
28
28
  export declare type DateRangePickerLocale = PickKeys<typeof defaultLocale.DateRangePicker>;
29
- export declare type PickerLocale = PickKeys<typeof defaultLocale.Picker> & CommonLocale;
30
- export declare type InputPickerLocale = PickerLocale & PickKeys<typeof defaultLocale.InputPicker>;
29
+ export declare type PickerLocale = typeof defaultLocale.Picker & CommonLocale;
30
+ export declare type InputPickerLocale = PickerLocale & typeof defaultLocale.InputPicker;
31
31
  export declare type UploaderLocale = PickKeys<typeof defaultLocale.Uploader>;
32
32
  export declare type CloseButtonLocale = PickKeys<typeof defaultLocale.CloseButton>;
33
33
  export declare type BreadcrumbLocale = PickKeys<typeof defaultLocale.Breadcrumb>;
@@ -18,7 +18,7 @@ export interface NodeProps extends WithAsProps {
18
18
  onClose?: (event?: React.MouseEvent<HTMLDivElement>) => void;
19
19
  }
20
20
  interface ToastContainerComponent extends RsRefForwardingComponent<'div', ToastContainerProps> {
21
- getInstance?: (props: ToastContainerProps) => [React.RefObject<ToastContainerInstance>, () => void];
21
+ getInstance: (props: ToastContainerProps) => [React.RefObject<ToastContainerInstance>, () => void];
22
22
  }
23
23
  declare const ToastContainer: ToastContainerComponent;
24
24
  export default ToastContainer;
@@ -30,7 +30,7 @@ var useMessages = function useMessages() {
30
30
 
31
31
  var getKey = (0, _react.useCallback)(function (key) {
32
32
  if (typeof key === 'undefined' && messages.length) {
33
- key = messages[messages.length - 1].key;
33
+ return messages[messages.length - 1].key;
34
34
  }
35
35
 
36
36
  return key;
@@ -48,7 +48,9 @@ toaster.push = function (message, options) {
48
48
  var container = getContainer(options.placement);
49
49
 
50
50
  if (!container) {
51
- container = createContainer(options.placement, options);
51
+ var _options$placement;
52
+
53
+ container = createContainer((_options$placement = options.placement) !== null && _options$placement !== void 0 ? _options$placement : '', options);
52
54
  }
53
55
 
54
56
  return container.current.push(message);
@@ -29,7 +29,7 @@ var isIE11 = function isIE11() {
29
29
  exports.isIE11 = isIE11;
30
30
 
31
31
  var isEdge = function isEdge() {
32
- return _canUseDOM.default && !isIE() && !!window.styleMedia;
32
+ return _canUseDOM.default && !isIE() && 'styleMedia' in window;
33
33
  };
34
34
 
35
35
  exports.isEdge = isEdge;
@@ -1,7 +1,7 @@
1
1
  import React from 'react';
2
2
  export declare function find(children: React.ReactNode, func: any, context?: any): React.ReactNode;
3
- export declare function map(children: React.ReactNode, func: any, context?: any): any[];
4
- export declare function mapCloneElement(children: React.ReactNode, func: any, context?: any): any[];
3
+ export declare function map(children: React.ReactNode, func: any, context?: any): any[] | null | undefined;
4
+ export declare function mapCloneElement(children: React.ReactNode, func: any, context?: any): any[] | null | undefined;
5
5
  export declare function count(children: React.ReactChildren): number;
6
6
  declare function some(children: React.ReactNode, func: any, context?: any): boolean;
7
7
  declare const _default: {
@@ -17,6 +17,6 @@ interface Options {
17
17
  }
18
18
  export default function ajaxUpload(options: Options): {
19
19
  xhr: XMLHttpRequest;
20
- data: any;
20
+ data: File | FormData;
21
21
  };
22
22
  export {};
@@ -32,15 +32,16 @@ function ajaxUpload(options) {
32
32
  withCredentials = options.withCredentials,
33
33
  disableMultipart = options.disableMultipart;
34
34
  var xhr = new XMLHttpRequest();
35
- var sendableData = null;
35
+ var sendableData;
36
36
  xhr.open('POST', url, true);
37
37
 
38
38
  if (!disableMultipart) {
39
39
  sendableData = new FormData();
40
40
  sendableData.append(name, file, file.name);
41
- Object.keys(data).forEach(function (key) {
42
- return sendableData.append(key, data[key]);
43
- });
41
+
42
+ for (var key in data) {
43
+ sendableData.append(key, data[key]);
44
+ }
44
45
  } else {
45
46
  sendableData = file;
46
47
  }
@@ -3,7 +3,7 @@ import { TypeAttributes } from '../@types/common';
3
3
  interface Props {
4
4
  ref?: React.Ref<any>;
5
5
  message?: React.ReactNode;
6
- children?: React.ReactElement | ((props: any, ref: any) => React.ReactElement);
6
+ children: React.ReactElement | ((props: any, ref: any) => React.ReactElement);
7
7
  placement?: TypeAttributes.Placement;
8
8
  }
9
9
  export default function appendTooltip({ message, ref, ...rest }: Props): JSX.Element;
@@ -1,10 +1,10 @@
1
1
  export declare const SIZE: string[];
2
2
  export declare const STATUS: string[];
3
3
  export declare const COLOR: string[];
4
- export declare const PLACEMENT_4: string[];
5
- export declare const PLACEMENT_8: string[];
6
- export declare const PLACEMENT_AUTO: string[];
7
- export declare const PLACEMENT: any[];
4
+ export declare const PLACEMENT_4: readonly ["top", "bottom", "right", "left"];
5
+ export declare const PLACEMENT_8: readonly ["bottomStart", "bottomEnd", "topStart", "topEnd", "leftStart", "rightStart", "leftEnd", "rightEnd"];
6
+ export declare const PLACEMENT_AUTO: readonly ["auto", "autoVertical", "autoVerticalStart", "autoVerticalEnd", "autoHorizontal", "autoHorizontalStart", "autoHorizontalEnd"];
7
+ export declare const PLACEMENT: readonly ["top", "bottom", "right", "left", "bottomStart", "bottomEnd", "topStart", "topEnd", "leftStart", "rightStart", "leftEnd", "rightEnd", "auto", "autoVertical", "autoVerticalStart", "autoVerticalEnd", "autoHorizontal", "autoHorizontalStart", "autoHorizontalEnd"];
8
8
  /**
9
9
  * Check Tree Node State
10
10
  */
@@ -11,5 +11,5 @@
11
11
  * @param {function} functions to chain
12
12
  * @returns {function|undefined}
13
13
  */
14
- declare function createChainedFunction<T = any>(...funcs: T[]): T;
14
+ declare function createChainedFunction<T = any>(...funcs: (T | null)[]): T;
15
15
  export default createChainedFunction;
@@ -1,3 +1,3 @@
1
1
  export declare const KEY_GROUP: string | symbol;
2
2
  export declare const KEY_GROUP_TITLE = "groupTitle";
3
- export default function getDataGroupBy(data: any[], key: string, sort: any): any[];
3
+ export default function getDataGroupBy(data: any[] | undefined, key: string, sort: any): any[];
@@ -1,5 +1,5 @@
1
- /// <reference types="react" />
1
+ import React from 'react';
2
2
  declare type CallbackRef<T> = (ref: T | null) => void;
3
3
  declare type Ref<T> = React.MutableRefObject<T> | CallbackRef<T>;
4
- export default function mergeRefs<T>(refA?: Ref<T> | null, refB?: Ref<T> | null): (value: T | null) => void;
4
+ export default function mergeRefs<T>(refA?: Ref<T | null> | null, refB?: Ref<T | null> | null): React.RefCallback<T>;
5
5
  export {};
@@ -1,3 +1,3 @@
1
1
  export declare function isImage(file: any): boolean;
2
- declare const _default: (file: File, callback: (result: string | ArrayBuffer) => void) => void;
2
+ declare const _default: (file: File, callback: (result: string | ArrayBuffer | null) => void) => void;
3
3
  export default _default;
@@ -1,3 +1,7 @@
1
- import PropTypes from 'prop-types';
2
- export declare function tupleType(...types: any[]): any;
1
+ import PropTypes, { Requireable, Validator } from 'prop-types';
2
+ declare type ExtractValue<T extends ReadonlyArray<Validator<any>>> = {
3
+ [K in keyof T]: T[K] extends Validator<infer V> ? V : never;
4
+ };
5
+ export declare function tupleType<T extends readonly Validator<any>[]>(...types: T): Requireable<ExtractValue<T>>;
3
6
  export declare const refType: PropTypes.Requireable<any>;
7
+ export {};
@@ -11,7 +11,7 @@ var _propTypes = _interopRequireDefault(require("prop-types"));
11
11
  var ANONYMOUS = '';
12
12
 
13
13
  function createChainableTypeChecker(validate) {
14
- function checkType(isRequired, props, propName, componentName, location, propFullName, secret) {
14
+ function checkType(isRequired, props, propName, componentName, location, propFullName) {
15
15
  componentName = componentName || ANONYMOUS;
16
16
  propFullName = propFullName || propName;
17
17
 
@@ -26,12 +26,13 @@ function createChainableTypeChecker(validate) {
26
26
 
27
27
  return null;
28
28
  } else {
29
- return validate(props, propName, componentName, location, propFullName, secret);
29
+ return validate(props, propName, componentName, location, propFullName);
30
30
  }
31
31
  }
32
32
 
33
- var chainedCheckType = checkType.bind(null, false);
34
- chainedCheckType.isRequired = checkType.bind(null, true);
33
+ var chainedCheckType = Object.assign(checkType.bind(null, false), {
34
+ isRequired: checkType.bind(null, true)
35
+ });
35
36
  return chainedCheckType;
36
37
  }
37
38
 
@@ -40,7 +41,7 @@ function tupleType() {
40
41
  types[_key] = arguments[_key];
41
42
  }
42
43
 
43
- return createChainableTypeChecker(function (props, propName, componentName, location, propFullName, secret) {
44
+ return createChainableTypeChecker(function (props, propName, componentName, location, propFullName) {
44
45
  var value = props[propName];
45
46
 
46
47
  if (!location) {
@@ -64,7 +65,7 @@ function tupleType() {
64
65
  }
65
66
 
66
67
  for (var i = 0; i < value.length; ++i) {
67
- var error = types[i](value, i, componentName, 'element', propFullName + "[" + i + "]", secret);
68
+ var error = types[i](value, String(i), componentName, 'element', propFullName + "[" + i + "]");
68
69
 
69
70
  if (error) {
70
71
  return error;