rsuite 5.40.0 → 5.42.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 (894) hide show
  1. package/CHANGELOG.md +30 -0
  2. package/Navbar/styles/index.less +1 -1
  3. package/SelectPicker/styles/index.less +4 -8
  4. package/cjs/@types/common.js +1 -0
  5. package/cjs/@types/utils.js +12 -2
  6. package/cjs/Affix/Affix.js +39 -59
  7. package/cjs/Affix/index.js +1 -3
  8. package/cjs/Animation/Bounce.js +4 -13
  9. package/cjs/Animation/Collapse.js +19 -40
  10. package/cjs/Animation/Fade.js +6 -15
  11. package/cjs/Animation/Slide.js +6 -15
  12. package/cjs/Animation/Transition.js +16 -83
  13. package/cjs/Animation/index.js +1 -7
  14. package/cjs/Animation/utils.js +1 -6
  15. package/cjs/AutoComplete/AutoComplete.js +55 -90
  16. package/cjs/AutoComplete/index.js +1 -3
  17. package/cjs/AutoComplete/utils.js +1 -9
  18. package/cjs/Avatar/Avatar.js +18 -32
  19. package/cjs/Avatar/index.js +1 -3
  20. package/cjs/AvatarGroup/AvatarGroup.js +13 -27
  21. package/cjs/AvatarGroup/index.js +1 -3
  22. package/cjs/Badge/Badge.js +14 -27
  23. package/cjs/Badge/index.js +1 -3
  24. package/cjs/Breadcrumb/Breadcrumb.js +19 -41
  25. package/cjs/Breadcrumb/BreadcrumbItem.js +14 -26
  26. package/cjs/Breadcrumb/index.js +1 -3
  27. package/cjs/Button/Button.js +22 -40
  28. package/cjs/Button/index.js +1 -3
  29. package/cjs/ButtonGroup/ButtonGroup.js +15 -26
  30. package/cjs/ButtonGroup/ButtonGroupContext.js +1 -4
  31. package/cjs/ButtonGroup/index.js +1 -4
  32. package/cjs/ButtonToolbar/ButtonToolbar.js +10 -20
  33. package/cjs/ButtonToolbar/index.js +1 -3
  34. package/cjs/Calendar/Calendar.js +24 -43
  35. package/cjs/Calendar/CalendarBody.js +14 -28
  36. package/cjs/Calendar/CalendarContainer.js +46 -69
  37. package/cjs/Calendar/CalendarContext.js +1 -6
  38. package/cjs/Calendar/CalendarHeader.js +32 -59
  39. package/cjs/Calendar/MonthDropdown.js +22 -45
  40. package/cjs/Calendar/MonthDropdownItem.js +16 -31
  41. package/cjs/Calendar/Table.js +10 -21
  42. package/cjs/Calendar/TableHeaderRow.js +11 -25
  43. package/cjs/Calendar/TableRow.js +35 -66
  44. package/cjs/Calendar/TimeDropdown.js +24 -64
  45. package/cjs/Calendar/index.js +1 -8
  46. package/cjs/Calendar/types.js +1 -0
  47. package/cjs/Calendar/useCalendarDate.js +3 -13
  48. package/cjs/Calendar/useCalendarState.js +3 -8
  49. package/cjs/Carousel/Carousel.js +40 -65
  50. package/cjs/Carousel/index.js +1 -3
  51. package/cjs/Cascader/Cascader.js +126 -197
  52. package/cjs/Cascader/DropdownMenu.js +33 -65
  53. package/cjs/Cascader/index.js +1 -3
  54. package/cjs/Cascader/utils.js +13 -24
  55. package/cjs/CheckPicker/CheckPicker.js +105 -156
  56. package/cjs/CheckPicker/index.js +1 -3
  57. package/cjs/CheckTree/index.js +1 -8
  58. package/cjs/CheckTreePicker/CheckTreeNode.js +28 -54
  59. package/cjs/CheckTreePicker/CheckTreePicker.js +165 -247
  60. package/cjs/CheckTreePicker/index.js +1 -3
  61. package/cjs/CheckTreePicker/utils.js +12 -52
  62. package/cjs/Checkbox/Checkbox.js +48 -77
  63. package/cjs/Checkbox/index.js +1 -3
  64. package/cjs/CheckboxGroup/CheckboxGroup.js +20 -38
  65. package/cjs/CheckboxGroup/CheckboxGroupContext.js +1 -4
  66. package/cjs/CheckboxGroup/index.js +1 -4
  67. package/cjs/CloseButton/CloseButton.js +10 -20
  68. package/cjs/CloseButton/index.js +1 -3
  69. package/cjs/Col/Col.js +10 -23
  70. package/cjs/Col/index.js +1 -3
  71. package/cjs/Container/Container.js +11 -24
  72. package/cjs/Container/index.js +1 -3
  73. package/cjs/Content/Content.js +1 -3
  74. package/cjs/Content/index.js +1 -3
  75. package/cjs/CustomProvider/CustomProvider.js +13 -28
  76. package/cjs/CustomProvider/FormattedDate.js +3 -9
  77. package/cjs/CustomProvider/index.js +1 -6
  78. package/cjs/DOMHelper/index.js +1 -7
  79. package/cjs/DOMHelper/isElement.js +1 -2
  80. package/cjs/DatePicker/DatePicker.js +108 -161
  81. package/cjs/DatePicker/PredefinedRanges.js +12 -29
  82. package/cjs/DatePicker/Toolbar.js +20 -36
  83. package/cjs/DatePicker/index.js +1 -3
  84. package/cjs/DatePicker/types.js +1 -0
  85. package/cjs/DatePicker/utils.js +5 -13
  86. package/cjs/DateRangePicker/Calendar.js +18 -28
  87. package/cjs/DateRangePicker/DateRangePicker.js +128 -207
  88. package/cjs/DateRangePicker/DateRangePickerContext.js +1 -6
  89. package/cjs/DateRangePicker/disabledDateUtils.js +9 -32
  90. package/cjs/DateRangePicker/index.js +1 -3
  91. package/cjs/DateRangePicker/types.js +1 -0
  92. package/cjs/DateRangePicker/utils.js +7 -20
  93. package/cjs/Disclosure/Disclosure.js +14 -34
  94. package/cjs/Disclosure/DisclosureButton.js +4 -12
  95. package/cjs/Disclosure/DisclosureContent.js +1 -5
  96. package/cjs/Disclosure/DisclosureContext.js +1 -6
  97. package/cjs/Disclosure/index.js +1 -3
  98. package/cjs/Disclosure/useDisclosureContext.js +1 -6
  99. package/cjs/Divider/Divider.js +11 -20
  100. package/cjs/Divider/index.js +1 -3
  101. package/cjs/Drawer/Drawer.js +10 -27
  102. package/cjs/Drawer/index.js +1 -3
  103. package/cjs/Dropdown/Dropdown.js +35 -68
  104. package/cjs/Dropdown/DropdownContext.js +1 -4
  105. package/cjs/Dropdown/DropdownItem.js +22 -49
  106. package/cjs/Dropdown/DropdownMenu.js +36 -63
  107. package/cjs/Dropdown/DropdownSeparator.js +8 -17
  108. package/cjs/Dropdown/DropdownState.js +1 -10
  109. package/cjs/Dropdown/DropdownToggle.js +17 -29
  110. package/cjs/Dropdown/index.js +1 -3
  111. package/cjs/Dropdown/useRenderDropdownItem.js +1 -5
  112. package/cjs/FlexboxGrid/FlexboxGrid.js +12 -22
  113. package/cjs/FlexboxGrid/FlexboxGridItem.js +12 -22
  114. package/cjs/FlexboxGrid/index.js +1 -3
  115. package/cjs/Footer/Footer.js +1 -3
  116. package/cjs/Footer/index.js +1 -3
  117. package/cjs/Form/Form.js +38 -79
  118. package/cjs/Form/FormContext.d.ts +2 -3
  119. package/cjs/Form/FormContext.js +1 -8
  120. package/cjs/Form/index.js +1 -4
  121. package/cjs/Form/useFormClassNames.js +11 -14
  122. package/cjs/Form/useSchemaModel.js +2 -6
  123. package/cjs/FormControl/FormControl.js +48 -84
  124. package/cjs/FormControl/index.js +1 -3
  125. package/cjs/FormControl/useRegisterModel.js +1 -3
  126. package/cjs/FormControlLabel/FormControlLabel.js +10 -22
  127. package/cjs/FormControlLabel/index.js +1 -3
  128. package/cjs/FormErrorMessage/FormErrorMessage.js +12 -27
  129. package/cjs/FormErrorMessage/index.js +1 -3
  130. package/cjs/FormGroup/FormGroup.js +9 -21
  131. package/cjs/FormGroup/index.js +1 -3
  132. package/cjs/FormHelpText/FormHelpText.js +11 -28
  133. package/cjs/FormHelpText/index.js +1 -3
  134. package/cjs/Grid/Grid.js +10 -19
  135. package/cjs/Grid/index.js +1 -3
  136. package/cjs/Header/Header.js +1 -3
  137. package/cjs/Header/index.js +1 -3
  138. package/cjs/IconButton/IconButton.js +11 -21
  139. package/cjs/IconButton/index.js +1 -3
  140. package/cjs/Input/Input.js +26 -43
  141. package/cjs/Input/index.js +1 -3
  142. package/cjs/InputGroup/InputGroup.js +23 -39
  143. package/cjs/InputGroup/InputGroupAddon.js +9 -18
  144. package/cjs/InputGroup/InputGroupButton.js +7 -17
  145. package/cjs/InputGroup/index.js +1 -3
  146. package/cjs/InputNumber/InputNumber.js +42 -88
  147. package/cjs/InputNumber/index.js +1 -3
  148. package/cjs/InputPicker/InputAutosize.js +17 -42
  149. package/cjs/InputPicker/InputPicker.d.ts +2 -0
  150. package/cjs/InputPicker/InputPicker.js +152 -251
  151. package/cjs/InputPicker/InputSearch.js +15 -28
  152. package/cjs/InputPicker/index.js +1 -3
  153. package/cjs/List/List.js +37 -51
  154. package/cjs/List/ListContext.js +1 -5
  155. package/cjs/List/ListItem.js +26 -40
  156. package/cjs/List/helper/AutoScroller.js +11 -21
  157. package/cjs/List/helper/useManager.js +1 -8
  158. package/cjs/List/helper/useSortHelper.js +58 -82
  159. package/cjs/List/helper/utils.js +6 -19
  160. package/cjs/List/index.js +1 -3
  161. package/cjs/Loader/Loader.js +17 -26
  162. package/cjs/Loader/index.js +1 -3
  163. package/cjs/MaskedInput/MaskedInput.js +2 -8
  164. package/cjs/MaskedInput/TextMask.js +14 -23
  165. package/cjs/MaskedInput/adjustCaretPosition.js +99 -70
  166. package/cjs/MaskedInput/conformToMask.js +79 -73
  167. package/cjs/MaskedInput/createTextMaskInputElement.js +65 -71
  168. package/cjs/MaskedInput/index.js +1 -3
  169. package/cjs/MaskedInput/types.js +1 -0
  170. package/cjs/MaskedInput/utilities.js +1 -8
  171. package/cjs/Menu/Menu.js +35 -79
  172. package/cjs/Menu/MenuContext.js +1 -8
  173. package/cjs/Menu/MenuItem.js +15 -26
  174. package/cjs/Menu/Menubar.js +13 -32
  175. package/cjs/Menu/index.js +1 -3
  176. package/cjs/Menu/useMenu.js +5 -34
  177. package/cjs/Message/Message.js +23 -45
  178. package/cjs/Message/index.js +1 -3
  179. package/cjs/Modal/Modal.js +70 -91
  180. package/cjs/Modal/ModalBody.js +11 -25
  181. package/cjs/Modal/ModalContext.js +1 -4
  182. package/cjs/Modal/ModalDialog.js +14 -26
  183. package/cjs/Modal/ModalFooter.js +1 -3
  184. package/cjs/Modal/ModalHeader.js +14 -29
  185. package/cjs/Modal/ModalTitle.js +9 -20
  186. package/cjs/Modal/index.js +1 -3
  187. package/cjs/Modal/utils.js +8 -19
  188. package/cjs/MultiCascader/DropdownMenu.js +38 -64
  189. package/cjs/MultiCascader/MultiCascader.js +129 -192
  190. package/cjs/MultiCascader/index.js +1 -3
  191. package/cjs/MultiCascader/utils.js +44 -106
  192. package/cjs/Nav/Nav.js +27 -69
  193. package/cjs/Nav/NavContext.js +1 -4
  194. package/cjs/Nav/NavDropdown.js +28 -60
  195. package/cjs/Nav/NavDropdownItem.js +20 -42
  196. package/cjs/Nav/NavDropdownMenu.js +26 -54
  197. package/cjs/Nav/NavDropdownToggle.js +12 -26
  198. package/cjs/Nav/NavItem.js +20 -39
  199. package/cjs/Nav/NavMenu.js +2 -28
  200. package/cjs/Nav/index.js +1 -3
  201. package/cjs/Navbar/Navbar.js +10 -23
  202. package/cjs/Navbar/NavbarBody.js +1 -6
  203. package/cjs/Navbar/NavbarBrand.js +1 -3
  204. package/cjs/Navbar/NavbarDropdown.js +25 -49
  205. package/cjs/Navbar/NavbarDropdownItem.js +18 -44
  206. package/cjs/Navbar/NavbarDropdownMenu.js +22 -51
  207. package/cjs/Navbar/NavbarDropdownToggle.js +12 -25
  208. package/cjs/Navbar/NavbarHeader.js +1 -6
  209. package/cjs/Navbar/NavbarItem.js +19 -35
  210. package/cjs/Navbar/index.js +1 -3
  211. package/cjs/Notification/Notification.js +20 -43
  212. package/cjs/Notification/index.js +1 -3
  213. package/cjs/Overlay/Modal.js +40 -79
  214. package/cjs/Overlay/ModalManager.js +1 -26
  215. package/cjs/Overlay/Overlay.js +28 -50
  216. package/cjs/Overlay/OverlayContext.js +1 -4
  217. package/cjs/Overlay/OverlayTrigger.js +67 -116
  218. package/cjs/Overlay/Position.js +25 -64
  219. package/cjs/Overlay/index.js +1 -3
  220. package/cjs/Overlay/positionUtils.js +25 -86
  221. package/cjs/Pagination/Pagination.js +30 -70
  222. package/cjs/Pagination/PaginationButton.js +15 -29
  223. package/cjs/Pagination/PaginationGroup.js +38 -63
  224. package/cjs/Pagination/index.js +1 -3
  225. package/cjs/Panel/Panel.js +37 -61
  226. package/cjs/Panel/index.js +1 -3
  227. package/cjs/PanelGroup/PanelGroup.js +16 -29
  228. package/cjs/PanelGroup/index.js +1 -3
  229. package/cjs/Picker/DropdownMenu.js +50 -93
  230. package/cjs/Picker/DropdownMenuCheckItem.js +22 -33
  231. package/cjs/Picker/DropdownMenuGroup.js +10 -22
  232. package/cjs/Picker/DropdownMenuItem.js +15 -26
  233. package/cjs/Picker/PickerOverlay.js +12 -28
  234. package/cjs/Picker/PickerToggle.js +57 -89
  235. package/cjs/Picker/PickerToggleTrigger.js +8 -19
  236. package/cjs/Picker/SearchBar.js +14 -26
  237. package/cjs/Picker/SelectedElement.js +9 -17
  238. package/cjs/Picker/ToggleButton.js +1 -6
  239. package/cjs/Picker/index.js +1 -24
  240. package/cjs/Picker/propTypes.js +1 -7
  241. package/cjs/Picker/types.js +1 -0
  242. package/cjs/Picker/utils.js +94 -200
  243. package/cjs/Placeholder/Placeholder.js +1 -5
  244. package/cjs/Placeholder/PlaceholderGraph.js +13 -22
  245. package/cjs/Placeholder/PlaceholderGrid.js +18 -34
  246. package/cjs/Placeholder/PlaceholderParagraph.js +17 -29
  247. package/cjs/Placeholder/index.js +1 -3
  248. package/cjs/Plaintext/Plaintext.js +14 -23
  249. package/cjs/Plaintext/index.js +1 -3
  250. package/cjs/Popover/Popover.js +16 -27
  251. package/cjs/Popover/index.js +1 -3
  252. package/cjs/Progress/Progress.js +1 -4
  253. package/cjs/Progress/ProgressCircle.js +30 -47
  254. package/cjs/Progress/ProgressLine.js +19 -29
  255. package/cjs/Progress/index.js +1 -3
  256. package/cjs/Radio/Radio.js +42 -62
  257. package/cjs/Radio/index.js +1 -3
  258. package/cjs/RadioGroup/RadioGroup.js +22 -37
  259. package/cjs/RadioGroup/index.js +1 -3
  260. package/cjs/RadioTile/RadioTile.js +30 -47
  261. package/cjs/RadioTile/index.js +1 -3
  262. package/cjs/RadioTileGroup/RadioTileGroup.js +17 -32
  263. package/cjs/RadioTileGroup/index.js +1 -3
  264. package/cjs/RangeSlider/RangeSlider.js +63 -104
  265. package/cjs/RangeSlider/index.js +1 -3
  266. package/cjs/Rate/Character.js +16 -31
  267. package/cjs/Rate/Rate.js +35 -62
  268. package/cjs/Rate/index.js +1 -3
  269. package/cjs/Rate/utils.js +1 -6
  270. package/cjs/Ripple/Ripple.js +16 -40
  271. package/cjs/Ripple/index.js +1 -3
  272. package/cjs/Row/Row.js +11 -22
  273. package/cjs/Row/index.js +1 -3
  274. package/cjs/SafeAnchor/SafeAnchor.js +8 -19
  275. package/cjs/SafeAnchor/index.js +1 -3
  276. package/cjs/Schema/Schema.js +1 -2
  277. package/cjs/Schema/index.js +1 -3
  278. package/cjs/SelectPicker/SelectPicker.js +136 -170
  279. package/cjs/SelectPicker/index.js +1 -3
  280. package/cjs/Sidebar/Sidebar.js +13 -26
  281. package/cjs/Sidebar/index.js +1 -3
  282. package/cjs/Sidenav/ExpandedSidenavDropdown.js +32 -54
  283. package/cjs/Sidenav/ExpandedSidenavDropdownItem.js +19 -41
  284. package/cjs/Sidenav/ExpandedSidenavDropdownMenu.js +22 -46
  285. package/cjs/Sidenav/Node.js +1 -12
  286. package/cjs/Sidenav/Sidenav.js +22 -45
  287. package/cjs/Sidenav/SidenavBody.js +1 -3
  288. package/cjs/Sidenav/SidenavDropdown.js +39 -70
  289. package/cjs/Sidenav/SidenavDropdownCollapse.js +9 -22
  290. package/cjs/Sidenav/SidenavDropdownItem.js +19 -45
  291. package/cjs/Sidenav/SidenavDropdownMenu.js +26 -54
  292. package/cjs/Sidenav/SidenavDropdownToggle.js +12 -25
  293. package/cjs/Sidenav/SidenavHeader.js +1 -3
  294. package/cjs/Sidenav/SidenavItem.js +27 -55
  295. package/cjs/Sidenav/SidenavToggle.js +11 -31
  296. package/cjs/Sidenav/index.js +1 -3
  297. package/cjs/Slider/Graduated.js +14 -29
  298. package/cjs/Slider/Handle.js +27 -52
  299. package/cjs/Slider/Input.js +2 -8
  300. package/cjs/Slider/Mark.js +11 -20
  301. package/cjs/Slider/ProgressBar.js +14 -23
  302. package/cjs/Slider/Slider.js +51 -84
  303. package/cjs/Slider/index.js +1 -3
  304. package/cjs/Slider/utils.js +1 -6
  305. package/cjs/Stack/Stack.js +22 -35
  306. package/cjs/Stack/StackItem.js +11 -17
  307. package/cjs/Stack/index.js +1 -3
  308. package/cjs/Steps/StepItem.js +16 -32
  309. package/cjs/Steps/Steps.js +18 -32
  310. package/cjs/Steps/index.js +1 -3
  311. package/cjs/Table/Table.js +6 -16
  312. package/cjs/Table/index.js +1 -3
  313. package/cjs/Tag/Tag.js +16 -28
  314. package/cjs/Tag/index.js +1 -3
  315. package/cjs/TagGroup/TagGroup.js +1 -3
  316. package/cjs/TagGroup/index.js +1 -3
  317. package/cjs/TagInput/index.d.ts +3 -0
  318. package/cjs/TagInput/index.js +11 -16
  319. package/cjs/TagPicker/index.d.ts +3 -0
  320. package/cjs/TagPicker/index.js +9 -14
  321. package/cjs/Timeline/Timeline.js +14 -29
  322. package/cjs/Timeline/TimelineItem.js +14 -23
  323. package/cjs/Timeline/index.js +1 -3
  324. package/cjs/Toggle/Toggle.js +26 -45
  325. package/cjs/Toggle/index.js +1 -3
  326. package/cjs/Tooltip/Tooltip.js +13 -22
  327. package/cjs/Tooltip/index.js +1 -3
  328. package/cjs/Tree/Tree.js +1 -10
  329. package/cjs/Tree/TreeContext.js +1 -4
  330. package/cjs/Tree/index.js +1 -3
  331. package/cjs/TreePicker/TreeNode.js +37 -60
  332. package/cjs/TreePicker/TreePicker.js +155 -231
  333. package/cjs/TreePicker/index.js +1 -3
  334. package/cjs/Uploader/UploadFileItem.js +37 -82
  335. package/cjs/Uploader/UploadTrigger.js +24 -46
  336. package/cjs/Uploader/Uploader.js +89 -141
  337. package/cjs/Uploader/index.js +1 -3
  338. package/cjs/Whisper/Whisper.js +8 -20
  339. package/cjs/Whisper/index.js +1 -3
  340. package/cjs/Windowing/AutoSizer.js +13 -33
  341. package/cjs/Windowing/List.d.ts +2 -2
  342. package/cjs/Windowing/List.js +6 -22
  343. package/cjs/Windowing/index.js +1 -7
  344. package/cjs/index.js +1 -164
  345. package/cjs/locales/ar_EG.js +1 -4
  346. package/cjs/locales/da_DK.js +1 -5
  347. package/cjs/locales/de_DE.js +1 -5
  348. package/cjs/locales/default.js +1 -5
  349. package/cjs/locales/en_GB.js +1 -3
  350. package/cjs/locales/en_US.js +1 -4
  351. package/cjs/locales/es_AR.js +1 -5
  352. package/cjs/locales/es_ES.js +1 -5
  353. package/cjs/locales/fa_IR.js +1 -4
  354. package/cjs/locales/fi_FI.js +1 -5
  355. package/cjs/locales/fr_FR.js +1 -4
  356. package/cjs/locales/hu_HU.js +1 -5
  357. package/cjs/locales/index.js +1 -47
  358. package/cjs/locales/it_IT.js +1 -5
  359. package/cjs/locales/ja_JP.js +1 -5
  360. package/cjs/locales/kk_KZ.js +1 -4
  361. package/cjs/locales/ko_KR.js +1 -5
  362. package/cjs/locales/ne_NP.js +1 -5
  363. package/cjs/locales/nl_NL.js +1 -4
  364. package/cjs/locales/pt_BR.js +1 -4
  365. package/cjs/locales/ru_RU.js +1 -4
  366. package/cjs/locales/sv_SE.js +1 -5
  367. package/cjs/locales/tr_TR.js +1 -4
  368. package/cjs/locales/zh_CN.js +1 -4
  369. package/cjs/locales/zh_TW.js +1 -4
  370. package/cjs/toaster/ToastContainer.js +29 -52
  371. package/cjs/toaster/ToastContext.js +1 -4
  372. package/cjs/toaster/index.js +1 -4
  373. package/cjs/toaster/toaster.js +4 -27
  374. package/cjs/toaster/useToaster.js +2 -8
  375. package/cjs/utils/BrowserDetection.js +7 -24
  376. package/cjs/utils/ReactChildren.js +2 -19
  377. package/cjs/utils/ajaxUpload.js +15 -33
  378. package/cjs/utils/appendTooltip.js +3 -9
  379. package/cjs/utils/attachParent.js +1 -1
  380. package/cjs/utils/clone.js +1 -2
  381. package/cjs/utils/composeFunctions.js +1 -3
  382. package/cjs/utils/constants.js +3 -8
  383. package/cjs/utils/createChainedFunction.js +2 -6
  384. package/cjs/utils/createComponent.js +12 -24
  385. package/cjs/utils/dateUtils.js +7 -121
  386. package/cjs/utils/deprecateComponent.js +1 -8
  387. package/cjs/utils/deprecatePropType.js +2 -9
  388. package/cjs/utils/dom.js +3 -2
  389. package/cjs/utils/events.js +2 -3
  390. package/cjs/utils/getDOMNode.js +16 -9
  391. package/cjs/utils/getDataGroupBy.d.ts +0 -23
  392. package/cjs/utils/getDataGroupBy.js +5 -44
  393. package/cjs/utils/getSafeRegExpString.js +1 -1
  394. package/cjs/utils/guid.js +1 -1
  395. package/cjs/utils/htmlPropsUtils.js +23 -20
  396. package/cjs/utils/index.js +1 -86
  397. package/cjs/utils/isOneOf.js +1 -2
  398. package/cjs/utils/mergeRefs.js +1 -2
  399. package/cjs/utils/placementPolyfill.js +2 -5
  400. package/cjs/utils/prefix.js +4 -15
  401. package/cjs/utils/previewFile.js +1 -6
  402. package/cjs/utils/propTypeChecker.js +1 -8
  403. package/cjs/utils/reactToString.js +1 -5
  404. package/cjs/utils/render.js +3 -10
  405. package/cjs/utils/scrollTopAnimation.js +1 -9
  406. package/cjs/utils/shallowEqual.js +8 -14
  407. package/cjs/utils/shallowEqualArray.js +1 -7
  408. package/cjs/utils/statusIcons.js +1 -9
  409. package/cjs/utils/stringToObject.js +1 -7
  410. package/cjs/utils/tplTransform.js +2 -7
  411. package/cjs/utils/treeUtils.js +112 -327
  412. package/cjs/utils/useClassNames.js +9 -15
  413. package/cjs/utils/useClickOutside.js +4 -8
  414. package/cjs/utils/useControlled.js +11 -7
  415. package/cjs/utils/useCustom.js +12 -25
  416. package/cjs/utils/useElementResize.js +1 -6
  417. package/cjs/utils/useEnsuredRef.js +1 -4
  418. package/cjs/utils/useEventCallback.js +1 -4
  419. package/cjs/utils/useEventListener.js +1 -5
  420. package/cjs/utils/useFocus.js +5 -6
  421. package/cjs/utils/useInternalId.js +1 -6
  422. package/cjs/utils/useIsMounted.js +1 -3
  423. package/cjs/utils/useMap.js +5 -7
  424. package/cjs/utils/useMount.js +1 -4
  425. package/cjs/utils/usePortal.js +7 -20
  426. package/cjs/utils/useRootClose.js +9 -19
  427. package/cjs/utils/useTimeout.js +3 -8
  428. package/cjs/utils/useToggleCaret.js +2 -14
  429. package/cjs/utils/useUniqueId.js +2 -9
  430. package/cjs/utils/useUpdateEffect.js +3 -5
  431. package/cjs/utils/useUpdatedRef.js +1 -2
  432. package/cjs/utils/useWillUnmount.js +3 -5
  433. package/cjs/utils/warnOnce.js +2 -2
  434. package/dist/rsuite-no-reset-rtl.css +23 -25
  435. package/dist/rsuite-no-reset-rtl.min.css +1 -1
  436. package/dist/rsuite-no-reset-rtl.min.css.map +1 -1
  437. package/dist/rsuite-no-reset.css +23 -25
  438. package/dist/rsuite-no-reset.min.css +1 -1
  439. package/dist/rsuite-no-reset.min.css.map +1 -1
  440. package/dist/rsuite-rtl.css +23 -25
  441. package/dist/rsuite-rtl.min.css +1 -1
  442. package/dist/rsuite-rtl.min.css.map +1 -1
  443. package/dist/rsuite.css +23 -25
  444. package/dist/rsuite.js +438 -471
  445. package/dist/rsuite.js.map +1 -1
  446. package/dist/rsuite.min.css +1 -1
  447. package/dist/rsuite.min.css.map +1 -1
  448. package/dist/rsuite.min.js +1 -1
  449. package/dist/rsuite.min.js.map +1 -1
  450. package/esm/@types/common.js +1 -0
  451. package/esm/@types/utils.js +14 -2
  452. package/esm/Affix/Affix.js +39 -50
  453. package/esm/Affix/index.js +1 -0
  454. package/esm/Animation/Bounce.js +4 -5
  455. package/esm/Animation/Collapse.js +19 -26
  456. package/esm/Animation/Fade.js +6 -7
  457. package/esm/Animation/Slide.js +6 -7
  458. package/esm/Animation/Transition.js +16 -69
  459. package/esm/Animation/index.js +1 -0
  460. package/esm/Animation/utils.js +1 -2
  461. package/esm/AutoComplete/AutoComplete.js +55 -75
  462. package/esm/AutoComplete/index.js +1 -0
  463. package/esm/AutoComplete/utils.js +1 -4
  464. package/esm/Avatar/Avatar.js +18 -22
  465. package/esm/Avatar/index.js +1 -0
  466. package/esm/AvatarGroup/AvatarGroup.js +13 -16
  467. package/esm/AvatarGroup/index.js +1 -0
  468. package/esm/Badge/Badge.js +14 -19
  469. package/esm/Badge/index.js +1 -0
  470. package/esm/Breadcrumb/Breadcrumb.js +19 -30
  471. package/esm/Breadcrumb/BreadcrumbItem.js +14 -17
  472. package/esm/Breadcrumb/index.js +1 -0
  473. package/esm/Button/Button.js +22 -28
  474. package/esm/Button/index.js +1 -0
  475. package/esm/ButtonGroup/ButtonGroup.js +15 -16
  476. package/esm/ButtonGroup/ButtonGroupContext.js +1 -0
  477. package/esm/ButtonGroup/index.js +1 -0
  478. package/esm/ButtonToolbar/ButtonToolbar.js +10 -12
  479. package/esm/ButtonToolbar/index.js +1 -0
  480. package/esm/Calendar/Calendar.js +24 -29
  481. package/esm/Calendar/CalendarBody.js +14 -18
  482. package/esm/Calendar/CalendarContainer.js +46 -51
  483. package/esm/Calendar/CalendarContext.js +1 -0
  484. package/esm/Calendar/CalendarHeader.js +32 -41
  485. package/esm/Calendar/MonthDropdown.js +22 -27
  486. package/esm/Calendar/MonthDropdownItem.js +16 -20
  487. package/esm/Calendar/Table.js +10 -11
  488. package/esm/Calendar/TableHeaderRow.js +11 -15
  489. package/esm/Calendar/TableRow.js +36 -50
  490. package/esm/Calendar/TimeDropdown.js +24 -48
  491. package/esm/Calendar/index.js +1 -0
  492. package/esm/Calendar/types.js +1 -0
  493. package/esm/Calendar/useCalendarDate.js +3 -11
  494. package/esm/Calendar/useCalendarState.js +3 -6
  495. package/esm/Carousel/Carousel.js +40 -52
  496. package/esm/Carousel/index.js +1 -0
  497. package/esm/Cascader/Cascader.js +126 -178
  498. package/esm/Cascader/DropdownMenu.js +33 -45
  499. package/esm/Cascader/index.js +1 -0
  500. package/esm/Cascader/utils.js +13 -22
  501. package/esm/CheckPicker/CheckPicker.js +105 -139
  502. package/esm/CheckPicker/index.js +1 -0
  503. package/esm/CheckTree/index.js +1 -0
  504. package/esm/CheckTreePicker/CheckTreeNode.js +28 -44
  505. package/esm/CheckTreePicker/CheckTreePicker.js +165 -232
  506. package/esm/CheckTreePicker/index.js +1 -0
  507. package/esm/CheckTreePicker/utils.js +12 -35
  508. package/esm/Checkbox/Checkbox.js +48 -66
  509. package/esm/Checkbox/index.js +1 -0
  510. package/esm/CheckboxGroup/CheckboxGroup.js +20 -25
  511. package/esm/CheckboxGroup/CheckboxGroupContext.js +1 -0
  512. package/esm/CheckboxGroup/index.js +1 -0
  513. package/esm/CloseButton/CloseButton.js +10 -13
  514. package/esm/CloseButton/index.js +1 -0
  515. package/esm/Col/Col.js +10 -13
  516. package/esm/Col/index.js +1 -0
  517. package/esm/Container/Container.js +11 -13
  518. package/esm/Container/index.js +1 -0
  519. package/esm/Content/Content.js +1 -1
  520. package/esm/Content/index.js +1 -0
  521. package/esm/CustomProvider/CustomProvider.js +13 -16
  522. package/esm/CustomProvider/FormattedDate.js +3 -6
  523. package/esm/CustomProvider/index.js +1 -0
  524. package/esm/DOMHelper/index.js +1 -2
  525. package/esm/DOMHelper/isElement.js +1 -1
  526. package/esm/DatePicker/DatePicker.js +108 -131
  527. package/esm/DatePicker/PredefinedRanges.js +12 -19
  528. package/esm/DatePicker/Toolbar.js +20 -26
  529. package/esm/DatePicker/index.js +1 -0
  530. package/esm/DatePicker/types.js +1 -0
  531. package/esm/DatePicker/utils.js +5 -8
  532. package/esm/DateRangePicker/Calendar.js +18 -18
  533. package/esm/DateRangePicker/DateRangePicker.js +128 -184
  534. package/esm/DateRangePicker/DateRangePickerContext.js +1 -0
  535. package/esm/DateRangePicker/disabledDateUtils.js +9 -24
  536. package/esm/DateRangePicker/index.js +1 -0
  537. package/esm/DateRangePicker/types.js +1 -0
  538. package/esm/DateRangePicker/utils.js +7 -12
  539. package/esm/Disclosure/Disclosure.js +13 -24
  540. package/esm/Disclosure/DisclosureButton.js +4 -7
  541. package/esm/Disclosure/DisclosureContent.js +1 -2
  542. package/esm/Disclosure/DisclosureContext.js +1 -2
  543. package/esm/Disclosure/index.js +1 -0
  544. package/esm/Disclosure/useDisclosureContext.js +1 -2
  545. package/esm/Divider/Divider.js +11 -12
  546. package/esm/Divider/index.js +1 -0
  547. package/esm/Drawer/Drawer.js +10 -11
  548. package/esm/Drawer/index.js +1 -0
  549. package/esm/Dropdown/Dropdown.js +35 -50
  550. package/esm/Dropdown/DropdownContext.js +1 -0
  551. package/esm/Dropdown/DropdownItem.js +22 -31
  552. package/esm/Dropdown/DropdownMenu.js +36 -49
  553. package/esm/Dropdown/DropdownSeparator.js +8 -10
  554. package/esm/Dropdown/DropdownState.js +1 -7
  555. package/esm/Dropdown/DropdownToggle.js +17 -17
  556. package/esm/Dropdown/index.js +1 -0
  557. package/esm/Dropdown/useRenderDropdownItem.js +1 -2
  558. package/esm/FlexboxGrid/FlexboxGrid.js +12 -13
  559. package/esm/FlexboxGrid/FlexboxGridItem.js +12 -14
  560. package/esm/FlexboxGrid/index.js +1 -0
  561. package/esm/Footer/Footer.js +1 -0
  562. package/esm/Footer/index.js +1 -0
  563. package/esm/Form/Form.js +38 -66
  564. package/esm/Form/FormContext.d.ts +2 -3
  565. package/esm/Form/FormContext.js +1 -0
  566. package/esm/Form/index.js +1 -0
  567. package/esm/Form/useFormClassNames.js +11 -13
  568. package/esm/Form/useSchemaModel.js +2 -4
  569. package/esm/FormControl/FormControl.js +46 -70
  570. package/esm/FormControl/index.js +1 -0
  571. package/esm/FormControl/useRegisterModel.js +1 -2
  572. package/esm/FormControlLabel/FormControlLabel.js +10 -12
  573. package/esm/FormControlLabel/index.js +1 -0
  574. package/esm/FormErrorMessage/FormErrorMessage.js +12 -18
  575. package/esm/FormErrorMessage/index.js +1 -0
  576. package/esm/FormGroup/FormGroup.js +9 -10
  577. package/esm/FormGroup/index.js +1 -0
  578. package/esm/FormHelpText/FormHelpText.js +11 -15
  579. package/esm/FormHelpText/index.js +1 -0
  580. package/esm/Grid/Grid.js +10 -11
  581. package/esm/Grid/index.js +1 -0
  582. package/esm/Header/Header.js +1 -0
  583. package/esm/Header/index.js +1 -0
  584. package/esm/IconButton/IconButton.js +11 -12
  585. package/esm/IconButton/index.js +1 -0
  586. package/esm/Input/Input.js +26 -32
  587. package/esm/Input/index.js +1 -0
  588. package/esm/InputGroup/InputGroup.js +23 -26
  589. package/esm/InputGroup/InputGroupAddon.js +9 -10
  590. package/esm/InputGroup/InputGroupButton.js +7 -9
  591. package/esm/InputGroup/index.js +1 -0
  592. package/esm/InputNumber/InputNumber.js +42 -72
  593. package/esm/InputNumber/index.js +1 -0
  594. package/esm/InputPicker/InputAutosize.js +17 -37
  595. package/esm/InputPicker/InputPicker.d.ts +2 -0
  596. package/esm/InputPicker/InputPicker.js +152 -226
  597. package/esm/InputPicker/InputSearch.js +15 -20
  598. package/esm/InputPicker/index.js +1 -0
  599. package/esm/List/List.js +37 -39
  600. package/esm/List/ListContext.js +1 -0
  601. package/esm/List/ListItem.js +26 -30
  602. package/esm/List/helper/AutoScroller.js +11 -21
  603. package/esm/List/helper/useManager.js +1 -6
  604. package/esm/List/helper/useSortHelper.js +58 -74
  605. package/esm/List/helper/utils.js +6 -11
  606. package/esm/List/index.js +1 -0
  607. package/esm/Loader/Loader.js +17 -19
  608. package/esm/Loader/index.js +1 -0
  609. package/esm/MaskedInput/MaskedInput.js +2 -1
  610. package/esm/MaskedInput/TextMask.js +12 -14
  611. package/esm/MaskedInput/adjustCaretPosition.js +99 -69
  612. package/esm/MaskedInput/conformToMask.js +79 -70
  613. package/esm/MaskedInput/createTextMaskInputElement.js +65 -62
  614. package/esm/MaskedInput/index.js +1 -0
  615. package/esm/MaskedInput/types.js +1 -0
  616. package/esm/MaskedInput/utilities.js +1 -6
  617. package/esm/Menu/Menu.js +35 -66
  618. package/esm/Menu/MenuContext.js +1 -4
  619. package/esm/Menu/MenuItem.js +15 -19
  620. package/esm/Menu/Menubar.js +13 -23
  621. package/esm/Menu/index.js +1 -0
  622. package/esm/Menu/useMenu.js +4 -27
  623. package/esm/Message/Message.js +23 -34
  624. package/esm/Message/index.js +1 -0
  625. package/esm/Modal/Modal.js +70 -69
  626. package/esm/Modal/ModalBody.js +11 -13
  627. package/esm/Modal/ModalContext.js +1 -0
  628. package/esm/Modal/ModalDialog.js +14 -18
  629. package/esm/Modal/ModalFooter.js +1 -0
  630. package/esm/Modal/ModalHeader.js +14 -16
  631. package/esm/Modal/ModalTitle.js +9 -10
  632. package/esm/Modal/index.js +1 -0
  633. package/esm/Modal/utils.js +8 -12
  634. package/esm/MultiCascader/DropdownMenu.js +38 -48
  635. package/esm/MultiCascader/MultiCascader.js +129 -174
  636. package/esm/MultiCascader/index.js +1 -0
  637. package/esm/MultiCascader/utils.js +44 -87
  638. package/esm/Nav/Nav.js +27 -45
  639. package/esm/Nav/NavContext.js +1 -0
  640. package/esm/Nav/NavDropdown.js +28 -44
  641. package/esm/Nav/NavDropdownItem.js +20 -31
  642. package/esm/Nav/NavDropdownMenu.js +26 -42
  643. package/esm/Nav/NavDropdownToggle.js +12 -15
  644. package/esm/Nav/NavItem.js +20 -28
  645. package/esm/Nav/NavMenu.js +2 -13
  646. package/esm/Nav/index.js +1 -0
  647. package/esm/Navbar/Navbar.js +10 -11
  648. package/esm/Navbar/NavbarBody.js +1 -0
  649. package/esm/Navbar/NavbarBrand.js +1 -0
  650. package/esm/Navbar/NavbarDropdown.js +25 -33
  651. package/esm/Navbar/NavbarDropdownItem.js +18 -30
  652. package/esm/Navbar/NavbarDropdownMenu.js +22 -37
  653. package/esm/Navbar/NavbarDropdownToggle.js +12 -14
  654. package/esm/Navbar/NavbarHeader.js +1 -0
  655. package/esm/Navbar/NavbarItem.js +19 -23
  656. package/esm/Navbar/index.js +1 -0
  657. package/esm/Notification/Notification.js +20 -32
  658. package/esm/Notification/index.js +1 -0
  659. package/esm/Overlay/Modal.js +40 -64
  660. package/esm/Overlay/ModalManager.js +1 -19
  661. package/esm/Overlay/Overlay.js +28 -37
  662. package/esm/Overlay/OverlayContext.js +1 -0
  663. package/esm/Overlay/OverlayTrigger.js +68 -101
  664. package/esm/Overlay/Position.js +25 -47
  665. package/esm/Overlay/index.js +1 -0
  666. package/esm/Overlay/positionUtils.js +25 -73
  667. package/esm/Pagination/Pagination.js +30 -55
  668. package/esm/Pagination/PaginationButton.js +15 -19
  669. package/esm/Pagination/PaginationGroup.js +38 -49
  670. package/esm/Pagination/index.js +1 -0
  671. package/esm/Panel/Panel.js +37 -49
  672. package/esm/Panel/index.js +1 -0
  673. package/esm/PanelGroup/PanelGroup.js +16 -18
  674. package/esm/PanelGroup/index.js +1 -0
  675. package/esm/Picker/DropdownMenu.js +50 -72
  676. package/esm/Picker/DropdownMenuCheckItem.js +22 -24
  677. package/esm/Picker/DropdownMenuGroup.js +10 -13
  678. package/esm/Picker/DropdownMenuItem.js +15 -18
  679. package/esm/Picker/PickerOverlay.js +12 -17
  680. package/esm/Picker/PickerToggle.js +57 -71
  681. package/esm/Picker/PickerToggleTrigger.js +8 -10
  682. package/esm/Picker/SearchBar.js +14 -15
  683. package/esm/Picker/SelectedElement.js +9 -14
  684. package/esm/Picker/ToggleButton.js +1 -0
  685. package/esm/Picker/index.js +1 -0
  686. package/esm/Picker/propTypes.js +1 -1
  687. package/esm/Picker/types.js +1 -0
  688. package/esm/Picker/utils.js +94 -182
  689. package/esm/Placeholder/Placeholder.js +1 -0
  690. package/esm/Placeholder/PlaceholderGraph.js +13 -16
  691. package/esm/Placeholder/PlaceholderGrid.js +18 -25
  692. package/esm/Placeholder/PlaceholderParagraph.js +17 -20
  693. package/esm/Placeholder/index.js +1 -0
  694. package/esm/Plaintext/Plaintext.js +14 -17
  695. package/esm/Plaintext/index.js +1 -0
  696. package/esm/Popover/Popover.js +16 -21
  697. package/esm/Popover/index.js +1 -0
  698. package/esm/Progress/Progress.js +1 -0
  699. package/esm/Progress/ProgressCircle.js +30 -39
  700. package/esm/Progress/ProgressLine.js +19 -21
  701. package/esm/Progress/index.js +1 -0
  702. package/esm/Radio/Radio.js +42 -52
  703. package/esm/Radio/index.js +1 -0
  704. package/esm/RadioGroup/RadioGroup.js +22 -25
  705. package/esm/RadioGroup/index.js +1 -0
  706. package/esm/RadioTile/RadioTile.js +30 -34
  707. package/esm/RadioTile/index.js +1 -0
  708. package/esm/RadioTileGroup/RadioTileGroup.js +17 -20
  709. package/esm/RadioTileGroup/index.js +1 -0
  710. package/esm/RangeSlider/RangeSlider.js +63 -86
  711. package/esm/RangeSlider/index.js +1 -0
  712. package/esm/Rate/Character.js +16 -21
  713. package/esm/Rate/Rate.js +35 -48
  714. package/esm/Rate/index.js +1 -0
  715. package/esm/Rate/utils.js +1 -2
  716. package/esm/Ripple/Ripple.js +16 -30
  717. package/esm/Ripple/index.js +1 -0
  718. package/esm/Row/Row.js +11 -14
  719. package/esm/Row/index.js +1 -0
  720. package/esm/SafeAnchor/SafeAnchor.js +8 -13
  721. package/esm/SafeAnchor/index.js +1 -0
  722. package/esm/Schema/Schema.js +1 -0
  723. package/esm/Schema/index.js +1 -0
  724. package/esm/SelectPicker/SelectPicker.js +137 -157
  725. package/esm/SelectPicker/index.js +1 -0
  726. package/esm/Sidebar/Sidebar.js +13 -18
  727. package/esm/Sidebar/index.js +1 -0
  728. package/esm/Sidenav/ExpandedSidenavDropdown.js +32 -35
  729. package/esm/Sidenav/ExpandedSidenavDropdownItem.js +19 -27
  730. package/esm/Sidenav/ExpandedSidenavDropdownMenu.js +22 -29
  731. package/esm/Sidenav/Node.js +1 -10
  732. package/esm/Sidenav/Sidenav.js +22 -28
  733. package/esm/Sidenav/SidenavBody.js +1 -0
  734. package/esm/Sidenav/SidenavDropdown.js +39 -52
  735. package/esm/Sidenav/SidenavDropdownCollapse.js +9 -13
  736. package/esm/Sidenav/SidenavDropdownItem.js +19 -31
  737. package/esm/Sidenav/SidenavDropdownMenu.js +26 -41
  738. package/esm/Sidenav/SidenavDropdownToggle.js +12 -14
  739. package/esm/Sidenav/SidenavHeader.js +1 -0
  740. package/esm/Sidenav/SidenavItem.js +27 -37
  741. package/esm/Sidenav/SidenavToggle.js +11 -18
  742. package/esm/Sidenav/index.js +1 -0
  743. package/esm/Slider/Graduated.js +14 -21
  744. package/esm/Slider/Handle.js +27 -39
  745. package/esm/Slider/Input.js +2 -2
  746. package/esm/Slider/Mark.js +11 -14
  747. package/esm/Slider/ProgressBar.js +14 -18
  748. package/esm/Slider/Slider.js +51 -67
  749. package/esm/Slider/index.js +1 -0
  750. package/esm/Slider/utils.js +1 -5
  751. package/esm/Stack/Stack.js +22 -27
  752. package/esm/Stack/StackItem.js +11 -11
  753. package/esm/Stack/index.js +1 -0
  754. package/esm/Steps/StepItem.js +16 -22
  755. package/esm/Steps/Steps.js +18 -22
  756. package/esm/Steps/index.js +1 -0
  757. package/esm/Table/Table.js +6 -7
  758. package/esm/Table/index.js +1 -0
  759. package/esm/Tag/Tag.js +16 -19
  760. package/esm/Tag/index.js +1 -0
  761. package/esm/TagGroup/TagGroup.js +1 -0
  762. package/esm/TagGroup/index.js +1 -0
  763. package/esm/TagInput/index.d.ts +3 -0
  764. package/esm/TagInput/index.js +11 -9
  765. package/esm/TagPicker/index.d.ts +3 -0
  766. package/esm/TagPicker/index.js +9 -7
  767. package/esm/Timeline/Timeline.js +14 -19
  768. package/esm/Timeline/TimelineItem.js +14 -15
  769. package/esm/Timeline/index.js +1 -0
  770. package/esm/Toggle/Toggle.js +26 -35
  771. package/esm/Toggle/index.js +1 -0
  772. package/esm/Tooltip/Tooltip.js +13 -16
  773. package/esm/Tooltip/index.js +1 -0
  774. package/esm/Tree/Tree.js +1 -3
  775. package/esm/Tree/TreeContext.js +1 -0
  776. package/esm/Tree/index.js +1 -0
  777. package/esm/TreePicker/TreeNode.js +37 -49
  778. package/esm/TreePicker/TreePicker.js +155 -218
  779. package/esm/TreePicker/index.js +1 -0
  780. package/esm/Uploader/UploadFileItem.js +37 -68
  781. package/esm/Uploader/UploadTrigger.js +24 -38
  782. package/esm/Uploader/Uploader.js +90 -132
  783. package/esm/Uploader/index.js +1 -0
  784. package/esm/Whisper/Whisper.js +8 -10
  785. package/esm/Whisper/index.js +1 -0
  786. package/esm/Windowing/AutoSizer.js +13 -24
  787. package/esm/Windowing/List.d.ts +2 -2
  788. package/esm/Windowing/List.js +6 -15
  789. package/esm/Windowing/index.js +1 -0
  790. package/esm/index.js +3 -0
  791. package/esm/locales/ar_EG.js +1 -0
  792. package/esm/locales/da_DK.js +1 -1
  793. package/esm/locales/de_DE.js +1 -1
  794. package/esm/locales/default.js +1 -1
  795. package/esm/locales/en_GB.js +1 -0
  796. package/esm/locales/en_US.js +1 -0
  797. package/esm/locales/es_AR.js +1 -1
  798. package/esm/locales/es_ES.js +1 -1
  799. package/esm/locales/fa_IR.js +1 -0
  800. package/esm/locales/fi_FI.js +1 -1
  801. package/esm/locales/fr_FR.js +1 -0
  802. package/esm/locales/hu_HU.js +1 -1
  803. package/esm/locales/index.js +1 -0
  804. package/esm/locales/it_IT.js +1 -1
  805. package/esm/locales/ja_JP.js +1 -1
  806. package/esm/locales/kk_KZ.js +1 -0
  807. package/esm/locales/ko_KR.js +1 -1
  808. package/esm/locales/ne_NP.js +1 -1
  809. package/esm/locales/nl_NL.js +1 -0
  810. package/esm/locales/pt_BR.js +1 -0
  811. package/esm/locales/ru_RU.js +1 -0
  812. package/esm/locales/sv_SE.js +1 -1
  813. package/esm/locales/tr_TR.js +1 -0
  814. package/esm/locales/zh_CN.js +1 -0
  815. package/esm/locales/zh_TW.js +1 -0
  816. package/esm/toaster/ToastContainer.js +29 -42
  817. package/esm/toaster/ToastContext.js +1 -0
  818. package/esm/toaster/index.js +1 -0
  819. package/esm/toaster/toaster.js +4 -22
  820. package/esm/toaster/useToaster.js +3 -5
  821. package/esm/utils/BrowserDetection.js +9 -9
  822. package/esm/utils/ReactChildren.js +2 -8
  823. package/esm/utils/ajaxUpload.js +15 -32
  824. package/esm/utils/appendTooltip.js +3 -3
  825. package/esm/utils/attachParent.js +1 -0
  826. package/esm/utils/clone.js +1 -1
  827. package/esm/utils/composeFunctions.js +1 -1
  828. package/esm/utils/constants.js +4 -7
  829. package/esm/utils/createChainedFunction.js +2 -5
  830. package/esm/utils/createComponent.js +12 -16
  831. package/esm/utils/dateUtils.js +7 -23
  832. package/esm/utils/deprecateComponent.js +2 -2
  833. package/esm/utils/deprecatePropType.js +4 -6
  834. package/esm/utils/dom.js +3 -1
  835. package/esm/utils/events.js +2 -1
  836. package/esm/utils/getDOMNode.js +15 -8
  837. package/esm/utils/getDataGroupBy.d.ts +0 -23
  838. package/esm/utils/getDataGroupBy.js +5 -39
  839. package/esm/utils/getSafeRegExpString.js +1 -0
  840. package/esm/utils/guid.js +1 -0
  841. package/esm/utils/htmlPropsUtils.js +23 -14
  842. package/esm/utils/index.js +2 -1
  843. package/esm/utils/isOneOf.js +1 -1
  844. package/esm/utils/mergeRefs.js +1 -1
  845. package/esm/utils/placementPolyfill.js +2 -4
  846. package/esm/utils/prefix.js +4 -4
  847. package/esm/utils/previewFile.js +1 -3
  848. package/esm/utils/propTypeChecker.js +1 -3
  849. package/esm/utils/reactToString.js +1 -2
  850. package/esm/utils/render.js +3 -5
  851. package/esm/utils/scrollTopAnimation.js +1 -5
  852. package/esm/utils/shallowEqual.js +8 -13
  853. package/esm/utils/shallowEqualArray.js +1 -5
  854. package/esm/utils/statusIcons.js +1 -0
  855. package/esm/utils/stringToObject.js +3 -4
  856. package/esm/utils/tplTransform.js +2 -4
  857. package/esm/utils/treeUtils.js +113 -265
  858. package/esm/utils/useClassNames.js +9 -9
  859. package/esm/utils/useClickOutside.js +4 -6
  860. package/esm/utils/useControlled.js +12 -6
  861. package/esm/utils/useCustom.js +12 -20
  862. package/esm/utils/useElementResize.js +2 -4
  863. package/esm/utils/useEnsuredRef.js +2 -3
  864. package/esm/utils/useEventCallback.js +2 -3
  865. package/esm/utils/useEventListener.js +2 -2
  866. package/esm/utils/useFocus.js +5 -4
  867. package/esm/utils/useInternalId.js +2 -3
  868. package/esm/utils/useIsMounted.js +1 -2
  869. package/esm/utils/useMap.js +5 -5
  870. package/esm/utils/useMount.js +1 -3
  871. package/esm/utils/usePortal.js +7 -13
  872. package/esm/utils/useRootClose.js +9 -13
  873. package/esm/utils/useTimeout.js +3 -7
  874. package/esm/utils/useToggleCaret.js +2 -7
  875. package/esm/utils/useUniqueId.js +2 -4
  876. package/esm/utils/useUpdateEffect.js +3 -4
  877. package/esm/utils/useUpdatedRef.js +2 -1
  878. package/esm/utils/useWillUnmount.js +4 -2
  879. package/esm/utils/warnOnce.js +2 -2
  880. package/package.json +2 -2
  881. package/styles/color-modes/light.less +4 -4
  882. package/styles/mixins/listbox.less +0 -2
  883. package/cjs/SelectPicker/Listbox.d.ts +0 -34
  884. package/cjs/SelectPicker/Listbox.js +0 -263
  885. package/cjs/SelectPicker/ListboxOption.d.ts +0 -11
  886. package/cjs/SelectPicker/ListboxOption.js +0 -50
  887. package/cjs/SelectPicker/ListboxOptionGroup.d.ts +0 -9
  888. package/cjs/SelectPicker/ListboxOptionGroup.js +0 -69
  889. package/esm/SelectPicker/Listbox.d.ts +0 -34
  890. package/esm/SelectPicker/Listbox.js +0 -240
  891. package/esm/SelectPicker/ListboxOption.d.ts +0 -11
  892. package/esm/SelectPicker/ListboxOption.js +0 -37
  893. package/esm/SelectPicker/ListboxOptionGroup.d.ts +0 -9
  894. package/esm/SelectPicker/ListboxOptionGroup.js +0 -53
@@ -1,8 +1,12 @@
1
+ 'use client';
1
2
  import { useCallback, useContext } from 'react';
2
3
  import classNames from 'classnames';
3
4
  import { prefix as addPrefix } from './prefix';
4
5
  import { CustomContext } from '../CustomProvider/CustomProvider';
5
6
 
7
+ // This is the only way I found to break circular references between ClassArray and ClassValue
8
+ // https://github.com/Microsoft/TypeScript/issues/3496#issuecomment-128553540
9
+ //eslint-disable-line @typescript-eslint/no-empty-interface
6
10
  /**
7
11
  * Add a prefix to all classNames.
8
12
  *
@@ -16,17 +20,16 @@ import { CustomContext } from '../CustomProvider/CustomProvider';
16
20
  */
17
21
  function useClassNames(str) {
18
22
  var _ref = useContext(CustomContext) || {},
19
- _ref$classPrefix = _ref.classPrefix,
20
- classPrefix = _ref$classPrefix === void 0 ? 'rs' : _ref$classPrefix;
21
-
23
+ _ref$classPrefix = _ref.classPrefix,
24
+ classPrefix = _ref$classPrefix === void 0 ? 'rs' : _ref$classPrefix;
22
25
  var componentName = addPrefix(classPrefix, str);
26
+
23
27
  /**
24
28
  * @example
25
29
  *
26
30
  * if str = 'button':
27
31
  * prefix('red', { active: true }) => 'rs-button-red rs-button-active'
28
32
  */
29
-
30
33
  var prefix = useCallback(function () {
31
34
  var mergeClasses = arguments.length ? classNames.apply(void 0, arguments).split(' ').map(function (item) {
32
35
  return addPrefix(componentName, item);
@@ -35,27 +38,26 @@ function useClassNames(str) {
35
38
  return cls;
36
39
  }).join(' ');
37
40
  }, [componentName]);
41
+
38
42
  /**
39
43
  * @example
40
44
  *
41
45
  * if str = 'button':
42
46
  * withClassPrefix('red', { active: true }) => 'rs-button rs-button-red rs-button-active'
43
47
  */
44
-
45
48
  var withClassPrefix = useCallback(function () {
46
49
  for (var _len = arguments.length, classes = new Array(_len), _key = 0; _key < _len; _key++) {
47
50
  classes[_key] = arguments[_key];
48
51
  }
49
-
50
52
  var mergeClasses = prefix(classes);
51
53
  return mergeClasses ? componentName + " " + mergeClasses : componentName;
52
54
  }, [componentName, prefix]);
55
+
53
56
  /**
54
57
  * @example
55
58
  * rootPrefix('btn') => 'rs-btn'
56
59
  * rootPrefix('btn', { active: true }) => 'rs-btn rs-active'
57
60
  */
58
-
59
61
  var rootPrefix = function rootPrefix() {
60
62
  var mergeClasses = arguments.length ? classNames.apply(void 0, arguments).split(' ').map(function (item) {
61
63
  return addPrefix(classPrefix, item);
@@ -64,7 +66,6 @@ function useClassNames(str) {
64
66
  return cls;
65
67
  }).join(' ');
66
68
  };
67
-
68
69
  return {
69
70
  withClassPrefix: withClassPrefix,
70
71
  merge: classNames,
@@ -72,5 +73,4 @@ function useClassNames(str) {
72
73
  rootPrefix: rootPrefix
73
74
  };
74
75
  }
75
-
76
76
  export default useClassNames;
@@ -1,9 +1,10 @@
1
+ 'use client';
1
2
  import { useEffect, useRef } from 'react';
2
3
  export default function useClickOutside(_ref) {
3
4
  var _ref$enabled = _ref.enabled,
4
- enabled = _ref$enabled === void 0 ? true : _ref$enabled,
5
- isOutside = _ref.isOutside,
6
- handle = _ref.handle;
5
+ enabled = _ref$enabled === void 0 ? true : _ref$enabled,
6
+ isOutside = _ref.isOutside,
7
+ handle = _ref.handle;
7
8
  var isOutsideRef = useRef(isOutside);
8
9
  var handleRef = useRef(handle);
9
10
  useEffect(function () {
@@ -14,14 +15,11 @@ export default function useClickOutside(_ref) {
14
15
  if (enabled) {
15
16
  var eventHandler = function eventHandler(event) {
16
17
  var _isOutsideRef$current;
17
-
18
18
  if ((_isOutsideRef$current = isOutsideRef.current) !== null && _isOutsideRef$current !== void 0 && _isOutsideRef$current.call(isOutsideRef, event)) {
19
19
  var _handleRef$current;
20
-
21
20
  (_handleRef$current = handleRef.current) === null || _handleRef$current === void 0 ? void 0 : _handleRef$current.call(handleRef, event);
22
21
  }
23
22
  };
24
-
25
23
  window.addEventListener('mousedown', eventHandler);
26
24
  return function () {
27
25
  window.removeEventListener('mousedown', eventHandler);
@@ -1,14 +1,21 @@
1
+ 'use client';
1
2
  import { useRef, useState, useCallback } from 'react';
2
3
 
4
+ /**
5
+ * A hook for controlled value management.
6
+ * In the case of passing the controlled value, the controlled value is returned, otherwise the value in state is returned.
7
+ * Generally used for a component including controlled and uncontrolled modes.
8
+ * @param controlledValue
9
+ * @param defaultValue
10
+ * @param formatValue
11
+ */
12
+
3
13
  function useControlled(controlledValue, defaultValue) {
4
14
  var controlledRef = useRef(false);
5
15
  controlledRef.current = controlledValue !== undefined;
6
-
7
16
  var _useState = useState(defaultValue),
8
- uncontrolledValue = _useState[0],
9
- setUncontrolledValue = _useState[1]; // If it is controlled, this directly returns the attribute value.
10
-
11
-
17
+ uncontrolledValue = _useState[0],
18
+ setUncontrolledValue = _useState[1]; // If it is controlled, this directly returns the attribute value.
12
19
  var value = controlledRef.current ? controlledValue : uncontrolledValue;
13
20
  var setValue = useCallback(function (nextValue) {
14
21
  // Only update the value in state when it is not under control.
@@ -18,5 +25,4 @@ function useControlled(controlledValue, defaultValue) {
18
25
  }, [controlledRef]);
19
26
  return [value, setValue, controlledRef.current];
20
27
  }
21
-
22
28
  export default useControlled;
@@ -1,57 +1,50 @@
1
+ 'use client';
1
2
  import _extends from "@babel/runtime/helpers/esm/extends";
2
3
  import { useContext, useCallback } from 'react';
3
4
  import defaultLocale from '../locales/default';
4
5
  import { CustomContext } from '../CustomProvider/CustomProvider';
5
6
  import { format, parse } from '../utils/dateUtils';
6
-
7
7
  var mergeObject = function mergeObject(list) {
8
8
  return list.reduce(function (a, b) {
9
9
  a = _extends({}, a, b);
10
10
  return a;
11
11
  }, {});
12
12
  };
13
-
14
13
  var getDefaultRTL = function getDefaultRTL() {
15
14
  return typeof window !== 'undefined' && (document.body.getAttribute('dir') || document.dir) === 'rtl';
16
15
  };
16
+
17
17
  /**
18
18
  * A hook to get custom configuration of `<CustomProvider>`
19
19
  * @param keys
20
20
  */
21
-
22
-
23
21
  function useCustom(keys, overrideLocale) {
24
22
  var _locale$Calendar2, _locale$Calendar4;
25
-
26
23
  var _useContext = useContext(CustomContext),
27
- _useContext$locale = _useContext.locale,
28
- locale = _useContext$locale === void 0 ? defaultLocale : _useContext$locale,
29
- _useContext$rtl = _useContext.rtl,
30
- rtl = _useContext$rtl === void 0 ? getDefaultRTL() : _useContext$rtl,
31
- formatDate = _useContext.formatDate,
32
- parseDate = _useContext.parseDate,
33
- toasters = _useContext.toasters,
34
- disableRipple = _useContext.disableRipple;
35
-
24
+ _useContext$locale = _useContext.locale,
25
+ locale = _useContext$locale === void 0 ? defaultLocale : _useContext$locale,
26
+ _useContext$rtl = _useContext.rtl,
27
+ rtl = _useContext$rtl === void 0 ? getDefaultRTL() : _useContext$rtl,
28
+ formatDate = _useContext.formatDate,
29
+ parseDate = _useContext.parseDate,
30
+ toasters = _useContext.toasters,
31
+ disableRipple = _useContext.disableRipple;
36
32
  var componentLocale = _extends({}, locale === null || locale === void 0 ? void 0 : locale.common, typeof keys === 'string' ? locale === null || locale === void 0 ? void 0 : locale[keys] : typeof keys === 'object' ? mergeObject(keys.map(function (key) {
37
33
  return locale === null || locale === void 0 ? void 0 : locale[key];
38
- })) : {}); // Component custom locale
39
-
34
+ })) : {});
40
35
 
36
+ // Component custom locale
41
37
  if (overrideLocale) {
42
38
  componentLocale = mergeObject([componentLocale, overrideLocale]);
43
39
  }
44
-
45
40
  var defaultFormatDate = useCallback(function (date, formatStr) {
46
41
  var _locale$Calendar;
47
-
48
42
  return format(date, formatStr, {
49
43
  locale: locale === null || locale === void 0 ? void 0 : (_locale$Calendar = locale.Calendar) === null || _locale$Calendar === void 0 ? void 0 : _locale$Calendar.dateLocale
50
44
  });
51
45
  }, [(_locale$Calendar2 = locale.Calendar) === null || _locale$Calendar2 === void 0 ? void 0 : _locale$Calendar2.dateLocale]);
52
46
  var defaultParseDate = useCallback(function (dateString, formatString) {
53
47
  var _locale$Calendar3;
54
-
55
48
  return parse(dateString, formatString, new Date(), {
56
49
  locale: locale === null || locale === void 0 ? void 0 : (_locale$Calendar3 = locale.Calendar) === null || _locale$Calendar3 === void 0 ? void 0 : _locale$Calendar3.dateLocale
57
50
  });
@@ -65,5 +58,4 @@ function useCustom(keys, overrideLocale) {
65
58
  parseDate: parseDate || defaultParseDate
66
59
  };
67
60
  }
68
-
69
61
  export default useCustom;
@@ -1,5 +1,7 @@
1
+ 'use client';
1
2
  import { useEffect, useRef } from 'react';
2
3
  import { ResizeObserver } from '@juggle/resize-observer';
4
+
3
5
  /**
4
6
  * Attach the event handler directly to the specified DOM element,
5
7
  * and it will be triggered when the size of the DOM element is changed.
@@ -7,22 +9,18 @@ import { ResizeObserver } from '@juggle/resize-observer';
7
9
  * @param eventTarget The target to listen for events on
8
10
  * @param listener An event handler
9
11
  */
10
-
11
12
  export default function useElementResize(eventTarget, listener) {
12
13
  var resizeObserver = useRef();
13
14
  useEffect(function () {
14
15
  if (!resizeObserver.current) {
15
16
  var target = typeof eventTarget === 'function' ? eventTarget() : eventTarget;
16
-
17
17
  if (target) {
18
18
  resizeObserver.current = new ResizeObserver(listener);
19
19
  resizeObserver.current.observe(target);
20
20
  }
21
21
  }
22
-
23
22
  return function () {
24
23
  var _resizeObserver$curre;
25
-
26
24
  (_resizeObserver$curre = resizeObserver.current) === null || _resizeObserver$curre === void 0 ? void 0 : _resizeObserver$curre.disconnect();
27
25
  };
28
26
  }, [eventTarget, listener]);
@@ -1,4 +1,6 @@
1
+ 'use client';
1
2
  import { useRef } from 'react';
3
+
2
4
  /**
3
5
  * Used in forwardRef components to ensure ref exists
4
6
  * so that calling ref.current shall not throw error
@@ -20,13 +22,10 @@ import { useRef } from 'react';
20
22
  * });
21
23
  *
22
24
  */
23
-
24
25
  export default function useEnsuredRef(ref) {
25
26
  var dumpRef = useRef();
26
-
27
27
  if (ref) {
28
28
  return ref;
29
29
  }
30
-
31
30
  return dumpRef;
32
31
  }
@@ -1,9 +1,10 @@
1
+ 'use client';
1
2
  import { useEffect, useCallback, useRef } from 'react';
3
+
2
4
  /**
3
5
  * https://github.com/facebook/react/issues/14099#issuecomment-440013892
4
6
  * @param {function} fn
5
7
  */
6
-
7
8
  export default function useEventCallback(fn) {
8
9
  var ref = useRef(fn);
9
10
  useEffect(function () {
@@ -11,11 +12,9 @@ export default function useEventCallback(fn) {
11
12
  });
12
13
  return useCallback(function () {
13
14
  var _ref$current;
14
-
15
15
  for (var _len = arguments.length, args = new Array(_len), _key = 0; _key < _len; _key++) {
16
16
  args[_key] = arguments[_key];
17
17
  }
18
-
19
18
  return (_ref$current = ref.current) === null || _ref$current === void 0 ? void 0 : _ref$current.call.apply(_ref$current, [ref].concat(args));
20
19
  }, []);
21
20
  }
@@ -1,5 +1,7 @@
1
+ 'use client';
1
2
  import { useEffect } from 'react';
2
3
  import on from 'dom-lib/on';
4
+
3
5
  /**
4
6
  * Attach the event handler directly to the specified DOM element.
5
7
  *
@@ -8,12 +10,10 @@ import on from 'dom-lib/on';
8
10
  * @param handler An event handler
9
11
  * @param capture Whether or not to listen during the capture event phase
10
12
  */
11
-
12
13
  export default function useEventListener(eventTarget, event, listener, capture) {
13
14
  if (capture === void 0) {
14
15
  capture = false;
15
16
  }
16
-
17
17
  useEffect(function () {
18
18
  var target = typeof eventTarget === 'function' ? eventTarget() : eventTarget;
19
19
  var controller = target ? on(target, event, listener, capture) : null;
@@ -1,24 +1,25 @@
1
+ 'use client';
1
2
  import { useCallback, useRef } from 'react';
2
3
  export default function useFocus(elementRef) {
3
4
  // When grabbing focus, keep track of previous activeElement
4
5
  // so that we can return focus later
5
- var previousActiveElementRef = useRef(null); // Focus the element itself
6
+ var previousActiveElementRef = useRef(null);
6
7
 
8
+ // Focus the element itself
7
9
  var grab = useCallback(function () {
8
10
  requestAnimationFrame(function () {
9
11
  if (document.activeElement !== elementRef.current) {
10
12
  var _elementRef$current;
11
-
12
13
  previousActiveElementRef.current = document.activeElement;
13
14
  (_elementRef$current = elementRef.current) === null || _elementRef$current === void 0 ? void 0 : _elementRef$current.focus();
14
15
  }
15
16
  });
16
- }, [elementRef]); // Return focus to previous active element
17
+ }, [elementRef]);
17
18
 
19
+ // Return focus to previous active element
18
20
  var release = useCallback(function (options) {
19
21
  requestAnimationFrame(function () {
20
22
  var _previousActiveElemen;
21
-
22
23
  (_previousActiveElemen = previousActiveElementRef.current) === null || _previousActiveElemen === void 0 ? void 0 : _previousActiveElemen.focus(options);
23
24
  });
24
25
  }, []);
@@ -1,16 +1,15 @@
1
+ 'use client';
1
2
  import { useDebugValue, useRef } from 'react';
2
3
  import uniqueId from 'lodash/uniqueId';
4
+
3
5
  /**
4
6
  * Used for generating unique ID for DOM elements
5
7
  */
6
-
7
8
  export default function useInternalId(namespace) {
8
9
  var idRef = useRef();
9
-
10
10
  if (!idRef.current) {
11
11
  idRef.current = uniqueId("internal://" + namespace);
12
12
  }
13
-
14
13
  useDebugValue(idRef.current);
15
14
  return idRef.current;
16
15
  }
@@ -1,5 +1,5 @@
1
+ 'use client';
1
2
  import { useCallback, useEffect, useRef } from 'react';
2
-
3
3
  function useIsMounted() {
4
4
  var isMounted = useRef(false);
5
5
  useEffect(function () {
@@ -12,5 +12,4 @@ function useIsMounted() {
12
12
  return isMounted.current;
13
13
  }, []);
14
14
  }
15
-
16
15
  export default useIsMounted;
@@ -1,11 +1,11 @@
1
+ 'use client';
1
2
  import { useMemo, useState } from 'react';
2
3
  export function useMap() {
3
4
  var _useState = useState(function () {
4
- return new Map();
5
- }),
6
- map = _useState[0],
7
- setMap = _useState[1];
8
-
5
+ return new Map();
6
+ }),
7
+ map = _useState[0],
8
+ setMap = _useState[1];
9
9
  return useMemo(function () {
10
10
  return {
11
11
  has: function has(key) {
@@ -1,13 +1,11 @@
1
+ 'use client';
1
2
  import { useEffect, useRef } from 'react';
2
-
3
3
  var useMount = function useMount(callback) {
4
4
  var mountRef = useRef(callback);
5
5
  mountRef.current = callback;
6
6
  useEffect(function () {
7
7
  var _mountRef$current;
8
-
9
8
  (_mountRef$current = mountRef.current) === null || _mountRef$current === void 0 ? void 0 : _mountRef$current.call(mountRef);
10
9
  }, []);
11
10
  };
12
-
13
11
  export default useMount;
@@ -1,35 +1,30 @@
1
+ 'use client';
1
2
  import _extends from "@babel/runtime/helpers/esm/extends";
2
3
  import React, { useEffect, useState, useCallback, useMemo } from 'react';
3
4
  import { createPortal } from 'react-dom';
4
5
  import canUseDOM from 'dom-lib/canUseDOM';
5
6
  var MountedPortal = /*#__PURE__*/React.memo(function (_ref) {
6
7
  var children = _ref.children,
7
- container = _ref.container;
8
-
8
+ container = _ref.container;
9
9
  var _useState = useState(false),
10
- mounted = _useState[0],
11
- setMounted = _useState[1];
12
-
10
+ mounted = _useState[0],
11
+ setMounted = _useState[1];
13
12
  useEffect(function () {
14
13
  return setMounted(true);
15
14
  }, []);
16
-
17
15
  if (container && mounted) {
18
16
  return /*#__PURE__*/createPortal(children, container);
19
17
  }
20
-
21
18
  return null;
22
19
  });
23
-
24
20
  function usePortal(props) {
25
21
  if (props === void 0) {
26
22
  props = {};
27
23
  }
28
-
29
24
  var _props = props,
30
- container = _props.container,
31
- _props$waitMount = _props.waitMount,
32
- waitMount = _props$waitMount === void 0 ? false : _props$waitMount;
25
+ container = _props.container,
26
+ _props$waitMount = _props.waitMount,
27
+ waitMount = _props$waitMount === void 0 ? false : _props$waitMount;
33
28
  var containerElement = typeof container === 'function' ? container() : container;
34
29
  var rootElement = useMemo(function () {
35
30
  return canUseDOM ? containerElement || document.body : null;
@@ -48,5 +43,4 @@ function usePortal(props) {
48
43
  Portal: waitMount ? WaitMountPortal : Portal
49
44
  };
50
45
  }
51
-
52
46
  export default usePortal;
@@ -1,17 +1,15 @@
1
+ 'use client';
1
2
  import { useEffect, useCallback } from 'react';
2
3
  import contains from 'dom-lib/contains';
3
4
  import ownerDocument from 'dom-lib/ownerDocument';
4
5
  import on from 'dom-lib/on';
5
6
  import { getDOMNode, KEY_VALUES } from './';
6
-
7
7
  function isLeftClickEvent(event) {
8
8
  return (event === null || event === void 0 ? void 0 : event.button) === 0;
9
9
  }
10
-
11
10
  function isModifiedEvent(event) {
12
11
  return !!(event.metaKey || event.altKey || event.ctrlKey || event !== null && event !== void 0 && event.shiftKey);
13
12
  }
14
-
15
13
  /**
16
14
  * A hook that listens to the document click event and closes the overlay.
17
15
  * @param onRootClose
@@ -20,10 +18,10 @@ function isModifiedEvent(event) {
20
18
  */
21
19
  function useRootClose(onRootClose, _ref) {
22
20
  var disabled = _ref.disabled,
23
- triggerTarget = _ref.triggerTarget,
24
- overlayTarget = _ref.overlayTarget,
25
- _ref$listenEscape = _ref.listenEscape,
26
- listenEscape = _ref$listenEscape === void 0 ? true : _ref$listenEscape;
21
+ triggerTarget = _ref.triggerTarget,
22
+ overlayTarget = _ref.overlayTarget,
23
+ _ref$listenEscape = _ref.listenEscape,
24
+ listenEscape = _ref$listenEscape === void 0 ? true : _ref$listenEscape;
27
25
  var handleDocumentKeyUp = useCallback(function (event) {
28
26
  if (listenEscape && event.key === KEY_VALUES.ESC) {
29
27
  onRootClose === null || onRootClose === void 0 ? void 0 : onRootClose(event);
@@ -31,21 +29,20 @@ function useRootClose(onRootClose, _ref) {
31
29
  }, [listenEscape, onRootClose]);
32
30
  var handleDocumentMouseDown = useCallback(function (event) {
33
31
  var triggerElement = getDOMNode(triggerTarget);
34
- var overlayElement = getDOMNode(overlayTarget); // Check if the clicked element is a trigger.
32
+ var overlayElement = getDOMNode(overlayTarget);
35
33
 
34
+ // Check if the clicked element is a trigger.
36
35
  if (triggerElement && contains(triggerElement, event.target)) {
37
36
  return;
38
- } // Check if the clicked element is a overlay.
39
-
37
+ }
40
38
 
39
+ // Check if the clicked element is a overlay.
41
40
  if (overlayElement && contains(overlayElement, event.target)) {
42
41
  return;
43
42
  }
44
-
45
43
  if (isModifiedEvent(event) || !isLeftClickEvent(event)) {
46
44
  return;
47
45
  }
48
-
49
46
  onRootClose === null || onRootClose === void 0 ? void 0 : onRootClose(event);
50
47
  }, [onRootClose, triggerTarget, overlayTarget]);
51
48
  useEffect(function () {
@@ -60,5 +57,4 @@ function useRootClose(onRootClose, _ref) {
60
57
  };
61
58
  }, [triggerTarget, disabled, onRootClose, handleDocumentMouseDown, handleDocumentKeyUp]);
62
59
  }
63
-
64
60
  export default useRootClose;
@@ -1,5 +1,5 @@
1
+ 'use client';
1
2
  import { useEffect, useRef, useCallback } from 'react';
2
-
3
3
  /**
4
4
  * A timer hook
5
5
  * @param fn Timer callback function
@@ -10,11 +10,9 @@ function useTimeout(fn, ms, enabled) {
10
10
  if (ms === void 0) {
11
11
  ms = 0;
12
12
  }
13
-
14
13
  if (enabled === void 0) {
15
14
  enabled = true;
16
15
  }
17
-
18
16
  var timeout = useRef();
19
17
  var callback = useRef(fn);
20
18
  var clear = useCallback(function () {
@@ -22,16 +20,15 @@ function useTimeout(fn, ms, enabled) {
22
20
  }, []);
23
21
  var set = useCallback(function () {
24
22
  timeout.current && clearTimeout(timeout.current);
25
-
26
23
  if (enabled) {
27
24
  timeout.current = setTimeout(function () {
28
25
  var _callback$current;
29
-
30
26
  (_callback$current = callback.current) === null || _callback$current === void 0 ? void 0 : _callback$current.call(callback);
31
27
  }, ms);
32
28
  }
33
- }, [ms, enabled]); // update ref when function changes
29
+ }, [ms, enabled]);
34
30
 
31
+ // update ref when function changes
35
32
  useEffect(function () {
36
33
  callback.current = fn;
37
34
  }, [fn]);
@@ -44,5 +41,4 @@ function useTimeout(fn, ms, enabled) {
44
41
  reset: set
45
42
  };
46
43
  }
47
-
48
44
  export default useTimeout;
@@ -1,30 +1,25 @@
1
+ 'use client';
1
2
  import { useMemo } from 'react';
2
3
  import AngleDownIcon from '@rsuite/icons/legacy/AngleDown';
3
4
  import AngleUpIcon from '@rsuite/icons/legacy/AngleUp';
4
5
  import AngleLeftIcon from '@rsuite/icons/legacy/AngleLeft';
5
6
  import AngleRightIcon from '@rsuite/icons/legacy/AngleRight';
6
7
  import useCustom from './useCustom';
7
-
8
8
  function useToggleCaret(placement) {
9
9
  var _useCustom = useCustom('Dropdown'),
10
- rtl = _useCustom.rtl;
11
-
10
+ rtl = _useCustom.rtl;
12
11
  return useMemo(function () {
13
12
  switch (true) {
14
13
  case /^top/.test(placement):
15
14
  return AngleUpIcon;
16
-
17
15
  case /^right/.test(placement):
18
16
  return rtl ? AngleLeftIcon : AngleRightIcon;
19
-
20
17
  case /^left/.test(placement):
21
18
  return rtl ? AngleRightIcon : AngleLeftIcon;
22
-
23
19
  case /^bottom/.test(placement):
24
20
  default:
25
21
  return AngleDownIcon;
26
22
  }
27
23
  }, [placement, rtl]);
28
24
  }
29
-
30
25
  export default useToggleCaret;
@@ -1,22 +1,20 @@
1
+ 'use client';
1
2
  import * as React from 'react';
2
3
  import uniqueId from 'lodash/uniqueId';
3
4
  var reactUseId = React['useId' + ''];
5
+
4
6
  /**
5
7
  * Used for generating unique ID for DOM elements
6
8
  *
7
9
  * @param idProp If id is provided, it will be used instead of generating a new one
8
10
  */
9
-
10
11
  export default function useUniqueId(prefix, idProp) {
11
12
  var idRef = React.useRef();
12
-
13
13
  if (reactUseId !== undefined) {
14
14
  return idProp !== null && idProp !== void 0 ? idProp : "" + prefix + reactUseId();
15
15
  }
16
-
17
16
  if (!idRef.current) {
18
17
  idRef.current = uniqueId(prefix);
19
18
  }
20
-
21
19
  return idProp !== null && idProp !== void 0 ? idProp : idRef.current;
22
20
  }
@@ -1,5 +1,5 @@
1
+ 'use client';
1
2
  import { useEffect, useRef } from 'react';
2
-
3
3
  var useUpdateEffect = function useUpdateEffect(effect, deps) {
4
4
  var isMounting = useRef(true);
5
5
  useEffect(function () {
@@ -7,9 +7,8 @@ var useUpdateEffect = function useUpdateEffect(effect, deps) {
7
7
  isMounting.current = false;
8
8
  return;
9
9
  }
10
-
11
- effect(); // eslint-disable-next-line react-hooks/exhaustive-deps
10
+ effect();
11
+ // eslint-disable-next-line react-hooks/exhaustive-deps
12
12
  }, deps);
13
13
  };
14
-
15
14
  export default useUpdateEffect;
@@ -1,11 +1,12 @@
1
+ 'use client';
1
2
  import { useRef } from 'react';
3
+
2
4
  /**
3
5
  * Returns a ref that is immediately updated with the new value
4
6
  *
5
7
  * @param value The Ref value
6
8
  * @category refs
7
9
  */
8
-
9
10
  export default function useUpdatedRef(value) {
10
11
  var valueRef = useRef(value);
11
12
  valueRef.current = value;