rsuite 5.50.0 → 5.52.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 (701) hide show
  1. package/Accordion/package.json +7 -0
  2. package/Accordion/styles/index.css +219 -0
  3. package/Accordion/styles/index.less +2 -0
  4. package/Animation/styles/bounce.less +34 -0
  5. package/Animation/styles/collapse.less +22 -0
  6. package/Animation/styles/fade.less +10 -0
  7. package/Animation/styles/index.css +349 -0
  8. package/Animation/styles/index.less +7 -97
  9. package/Animation/styles/slide.less +24 -0
  10. package/AutoComplete/styles/index.css +3229 -0
  11. package/AutoComplete/styles/index.less +1 -3
  12. package/Avatar/styles/index.css +127 -0
  13. package/AvatarGroup/styles/index.css +38 -0
  14. package/AvatarGroup/styles/index.less +2 -1
  15. package/Badge/styles/index.css +119 -0
  16. package/Breadcrumb/styles/index.css +54 -0
  17. package/Button/styles/index.css +1053 -0
  18. package/Button/styles/index.less +1 -1
  19. package/ButtonGroup/styles/index.css +68 -0
  20. package/ButtonToolbar/styles/index.css +20 -0
  21. package/ButtonToolbar/styles/index.less +3 -2
  22. package/CHANGELOG.md +28 -0
  23. package/Calendar/styles/index.css +1954 -0
  24. package/Calendar/styles/index.less +1 -1
  25. package/Carousel/styles/index.css +270 -0
  26. package/Cascader/styles/index.css +3384 -0
  27. package/Cascader/styles/index.less +1 -2
  28. package/CheckPicker/styles/index.css +3427 -0
  29. package/CheckPicker/styles/index.less +1 -1
  30. package/CheckTree/styles/index.css +3543 -0
  31. package/CheckTree/styles/index.less +1 -0
  32. package/CheckTreePicker/styles/index.css +3543 -0
  33. package/CheckTreePicker/styles/index.less +5 -9
  34. package/Checkbox/styles/index.css +263 -0
  35. package/CheckboxGroup/styles/index.css +30 -0
  36. package/Col/styles/index.css +19 -0
  37. package/Col/styles/index.less +14 -0
  38. package/Container/stories/styles.less +23 -0
  39. package/Container/styles/index.css +30 -0
  40. package/Content/styles/index.css +17 -0
  41. package/DateInput/styles/index.css +198 -0
  42. package/DateInput/styles/index.less +1 -0
  43. package/DatePicker/styles/index.css +4113 -0
  44. package/DatePicker/styles/index.less +10 -7
  45. package/DateRangeInput/styles/index.css +198 -0
  46. package/DateRangeInput/styles/index.less +1 -0
  47. package/DateRangePicker/styles/index.css +4179 -0
  48. package/DateRangePicker/styles/index.less +8 -5
  49. package/Divider/styles/index.css +72 -0
  50. package/Drawer/styles/index.css +345 -0
  51. package/Dropdown/styles/index.css +1484 -0
  52. package/FlexboxGrid/stories/styles.less +17 -0
  53. package/FlexboxGrid/styles/index.css +329 -0
  54. package/Footer/styles/index.css +35 -0
  55. package/Form/styles/index.css +25 -0
  56. package/Form/styles/mixin.less +1 -2
  57. package/FormControl/styles/index.css +56 -0
  58. package/FormControlLabel/styles/index.css +35 -0
  59. package/FormErrorMessage/styles/index.css +331 -0
  60. package/FormGroup/styles/index.css +65 -0
  61. package/FormHelpText/styles/index.css +46 -0
  62. package/Grid/stories/styles.less +29 -0
  63. package/Grid/styles/index.css +1869 -0
  64. package/Grid/styles/index.less +0 -13
  65. package/Header/styles/index.css +35 -0
  66. package/IconButton/styles/index.css +1284 -0
  67. package/Input/styles/index.css +198 -0
  68. package/InputGroup/styles/index.css +1694 -0
  69. package/InputGroup/styles/index.less +0 -14
  70. package/InputNumber/styles/index.css +1912 -0
  71. package/InputPicker/styles/index.css +3380 -0
  72. package/InputPicker/styles/index.less +6 -5
  73. package/List/styles/index.css +169 -0
  74. package/Loader/styles/index.css +359 -0
  75. package/Message/styles/index.css +473 -0
  76. package/Message/styles/index.less +4 -3
  77. package/Modal/styles/index.css +255 -0
  78. package/MultiCascader/styles/index.css +3602 -0
  79. package/MultiCascader/styles/index.less +1 -1
  80. package/Nav/styles/index.css +1777 -0
  81. package/Nav/styles/index.less +1 -1
  82. package/Navbar/styles/index.css +1783 -0
  83. package/Navbar/styles/index.less +1 -0
  84. package/Notification/styles/index.css +316 -0
  85. package/Pagination/styles/index.css +3892 -0
  86. package/Pagination/styles/index.less +6 -4
  87. package/Panel/styles/index.css +196 -0
  88. package/Panel/styles/index.less +45 -2
  89. package/PanelGroup/styles/index.css +54 -0
  90. package/Placeholder/styles/index.css +186 -0
  91. package/Popover/styles/index.css +343 -0
  92. package/Progress/styles/index.css +312 -0
  93. package/Radio/styles/index.css +251 -0
  94. package/RadioGroup/styles/index.css +135 -0
  95. package/RadioGroup/styles/index.less +2 -0
  96. package/RadioTile/styles/index.css +61 -0
  97. package/RadioTileGroup/styles/index.css +2 -0
  98. package/RangeSlider/styles/index.css +563 -0
  99. package/RangeSlider/styles/index.less +4 -0
  100. package/Rate/styles/index.css +208 -0
  101. package/Row/styles/index.css +24 -0
  102. package/SelectPicker/styles/index.css +3287 -0
  103. package/SelectPicker/styles/index.less +1 -1
  104. package/Sidebar/styles/index.css +37 -0
  105. package/Sidenav/styles/index.css +823 -0
  106. package/Sidenav/styles/index.less +4 -4
  107. package/Slider/styles/index.css +563 -0
  108. package/Slider/styles/index.less +2 -1
  109. package/Stack/styles/index.css +17 -0
  110. package/Steps/styles/index.css +277 -0
  111. package/Table/styles/index.css +546 -0
  112. package/Tag/styles/index.css +167 -0
  113. package/Tag/styles/index.less +2 -10
  114. package/TagGroup/styles/index.css +19 -0
  115. package/TagGroup/styles/index.less +14 -0
  116. package/TagInput/styles/index.css +3639 -0
  117. package/TagInput/styles/index.less +1 -1
  118. package/TagPicker/styles/index.css +3630 -0
  119. package/TagPicker/styles/index.less +10 -5
  120. package/Timeline/stories/styles.less +29 -0
  121. package/Timeline/styles/index.css +187 -0
  122. package/Toggle/styles/index.css +448 -0
  123. package/Tooltip/styles/index.css +310 -0
  124. package/Tree/styles/index.css +350 -0
  125. package/Tree/styles/index.less +1 -0
  126. package/TreePicker/styles/index.css +350 -0
  127. package/TreePicker/styles/index.less +4 -12
  128. package/Uploader/styles/index.css +1836 -0
  129. package/VisuallyHidden/package.json +7 -0
  130. package/VisuallyHidden/styles/index.css +13 -0
  131. package/VisuallyHidden/styles/index.less +11 -0
  132. package/cjs/@types/common.d.ts +8 -0
  133. package/cjs/Accordion/Accordion.d.ts +13 -0
  134. package/cjs/Accordion/Accordion.js +24 -0
  135. package/cjs/Accordion/index.d.ts +3 -0
  136. package/cjs/Accordion/index.js +9 -0
  137. package/cjs/AutoComplete/AutoComplete.d.ts +1 -1
  138. package/cjs/AutoComplete/AutoComplete.js +19 -15
  139. package/cjs/AutoComplete/Combobox.d.ts +8 -0
  140. package/cjs/AutoComplete/Combobox.js +31 -0
  141. package/cjs/Avatar/Avatar.js +2 -1
  142. package/cjs/AvatarGroup/AvatarGroup.js +2 -1
  143. package/cjs/Badge/Badge.js +2 -1
  144. package/cjs/Button/Button.js +6 -5
  145. package/cjs/ButtonGroup/ButtonGroup.js +2 -1
  146. package/cjs/Calendar/CalendarContainer.js +35 -37
  147. package/cjs/Calendar/MonthDropdown.js +1 -1
  148. package/cjs/Carousel/Carousel.js +3 -2
  149. package/cjs/Cascader/Cascader.d.ts +2 -2
  150. package/cjs/Cascader/Cascader.js +17 -14
  151. package/cjs/Cascader/DropdownMenu.d.ts +3 -20
  152. package/cjs/Cascader/DropdownMenu.js +49 -49
  153. package/cjs/Cascader/TreeView.d.ts +24 -0
  154. package/cjs/Cascader/TreeView.js +174 -0
  155. package/cjs/CheckPicker/CheckPicker.d.ts +1 -1
  156. package/cjs/CheckPicker/CheckPicker.js +14 -11
  157. package/cjs/CheckTreePicker/CheckTreeNode.d.ts +2 -2
  158. package/cjs/CheckTreePicker/CheckTreeNode.js +31 -59
  159. package/cjs/CheckTreePicker/CheckTreePicker.d.ts +1 -1
  160. package/cjs/CheckTreePicker/CheckTreePicker.js +26 -24
  161. package/cjs/Checkbox/Checkbox.js +2 -1
  162. package/cjs/CheckboxGroup/CheckboxGroup.js +1 -1
  163. package/cjs/DateInput/utils.js +1 -1
  164. package/cjs/DatePicker/DatePicker.js +12 -13
  165. package/cjs/DateRangePicker/DateRangePicker.d.ts +7 -1
  166. package/cjs/DateRangePicker/DateRangePicker.js +17 -16
  167. package/cjs/Drawer/Drawer.js +4 -3
  168. package/cjs/Dropdown/Dropdown.js +5 -5
  169. package/cjs/Dropdown/DropdownItem.js +8 -7
  170. package/cjs/Dropdown/DropdownMenu.js +20 -19
  171. package/cjs/Dropdown/DropdownToggle.js +2 -1
  172. package/cjs/FlexboxGrid/FlexboxGrid.js +3 -2
  173. package/cjs/Form/Form.d.ts +14 -0
  174. package/cjs/Form/Form.js +42 -32
  175. package/cjs/Form/FormContext.d.ts +1 -0
  176. package/cjs/FormControl/FormControl.js +43 -20
  177. package/cjs/FormErrorMessage/FormErrorMessage.js +2 -1
  178. package/cjs/FormGroup/FormGroup.js +2 -1
  179. package/cjs/IconButton/IconButton.js +2 -1
  180. package/cjs/Input/Input.js +4 -3
  181. package/cjs/InputGroup/InputGroup.js +2 -1
  182. package/cjs/InputNumber/InputNumber.js +3 -2
  183. package/cjs/InputPicker/InputPicker.d.ts +2 -2
  184. package/cjs/InputPicker/InputPicker.js +50 -32
  185. package/cjs/InputPicker/InputSearch.js +3 -15
  186. package/cjs/InputPicker/TagList.d.ts +3 -0
  187. package/cjs/InputPicker/TagList.js +29 -0
  188. package/cjs/InputPicker/TextBox.d.ts +18 -0
  189. package/cjs/InputPicker/TextBox.js +48 -0
  190. package/cjs/InputPicker/index.d.ts +1 -1
  191. package/cjs/List/List.js +2 -1
  192. package/cjs/List/helper/useSortHelper.d.ts +1 -1
  193. package/cjs/Loader/Loader.js +3 -2
  194. package/cjs/Message/Message.js +3 -2
  195. package/cjs/Modal/Modal.d.ts +1 -1
  196. package/cjs/Modal/Modal.js +5 -6
  197. package/cjs/Modal/ModalDialog.js +2 -1
  198. package/cjs/Modal/ModalHeader.js +1 -1
  199. package/cjs/MultiCascader/MultiCascader.d.ts +1 -1
  200. package/cjs/MultiCascader/MultiCascader.js +18 -13
  201. package/cjs/MultiCascader/{DropdownMenu.d.ts → TreeView.d.ts} +3 -3
  202. package/cjs/MultiCascader/{DropdownMenu.js → TreeView.js} +78 -75
  203. package/cjs/Nav/Nav.js +3 -2
  204. package/cjs/Nav/NavDropdown.js +5 -5
  205. package/cjs/Nav/NavDropdownItem.js +7 -6
  206. package/cjs/Nav/NavDropdownMenu.js +5 -5
  207. package/cjs/Nav/NavDropdownToggle.js +2 -1
  208. package/cjs/Nav/NavItem.js +3 -2
  209. package/cjs/Navbar/NavbarDropdown.js +5 -5
  210. package/cjs/Navbar/NavbarDropdownItem.js +7 -6
  211. package/cjs/Navbar/NavbarDropdownMenu.js +4 -4
  212. package/cjs/Navbar/NavbarDropdownToggle.js +2 -1
  213. package/cjs/Navbar/NavbarItem.js +3 -2
  214. package/cjs/Notification/Notification.js +7 -6
  215. package/cjs/Pagination/PaginationButton.js +1 -1
  216. package/cjs/Panel/AccordionButton.d.ts +10 -0
  217. package/cjs/Panel/AccordionButton.js +46 -0
  218. package/cjs/Panel/Panel.d.ts +17 -9
  219. package/cjs/Panel/Panel.js +45 -40
  220. package/cjs/PanelGroup/PanelGroup.js +2 -3
  221. package/cjs/Placeholder/PlaceholderParagraph.js +2 -1
  222. package/cjs/Progress/ProgressCircle.js +4 -3
  223. package/cjs/Progress/ProgressLine.js +2 -1
  224. package/cjs/Radio/Radio.js +2 -1
  225. package/cjs/RadioGroup/RadioGroup.js +3 -2
  226. package/cjs/RangeSlider/RangeSlider.js +3 -3
  227. package/cjs/Rate/Rate.js +3 -2
  228. package/cjs/SelectPicker/SelectPicker.d.ts +2 -2
  229. package/cjs/SelectPicker/SelectPicker.js +13 -11
  230. package/cjs/Sidenav/ExpandedSidenavDropdown.js +5 -5
  231. package/cjs/Sidenav/ExpandedSidenavDropdownItem.js +3 -2
  232. package/cjs/Sidenav/ExpandedSidenavDropdownMenu.js +2 -2
  233. package/cjs/Sidenav/Sidenav.js +4 -4
  234. package/cjs/Sidenav/SidenavDropdown.js +6 -6
  235. package/cjs/Sidenav/SidenavDropdownItem.js +7 -6
  236. package/cjs/Sidenav/SidenavDropdownMenu.js +2 -2
  237. package/cjs/Sidenav/SidenavDropdownToggle.js +2 -1
  238. package/cjs/Sidenav/SidenavItem.js +8 -8
  239. package/cjs/Sidenav/SidenavToggle.js +2 -2
  240. package/cjs/Slider/Slider.js +1 -1
  241. package/cjs/Stack/Stack.js +4 -3
  242. package/cjs/Stack/StackItem.js +2 -1
  243. package/cjs/Steps/StepItem.js +2 -1
  244. package/cjs/Steps/Steps.js +2 -1
  245. package/cjs/Tag/Tag.js +1 -1
  246. package/cjs/TagInput/index.d.ts +1 -1
  247. package/cjs/TagInput/index.js +4 -0
  248. package/cjs/TagPicker/index.d.ts +1 -1
  249. package/cjs/Timeline/Timeline.js +2 -1
  250. package/cjs/Toggle/Toggle.js +3 -2
  251. package/cjs/Tree/Tree.d.ts +1 -1
  252. package/cjs/TreePicker/TreeNode.d.ts +2 -2
  253. package/cjs/TreePicker/TreeNode.js +22 -56
  254. package/cjs/TreePicker/TreePicker.d.ts +1 -1
  255. package/cjs/TreePicker/TreePicker.js +25 -24
  256. package/cjs/Uploader/UploadFileItem.js +3 -2
  257. package/cjs/Uploader/Uploader.js +3 -2
  258. package/cjs/VisuallyHidden/VisuallyHidden.d.ts +10 -0
  259. package/cjs/VisuallyHidden/VisuallyHidden.js +19 -0
  260. package/cjs/VisuallyHidden/index.d.ts +3 -0
  261. package/cjs/VisuallyHidden/index.js +9 -0
  262. package/cjs/Whisper/Whisper.d.ts +2 -2
  263. package/cjs/Whisper/Whisper.js +3 -2
  264. package/cjs/index.d.ts +5 -1
  265. package/cjs/index.js +6 -2
  266. package/cjs/{CloseButton → internals/CloseButton}/CloseButton.d.ts +2 -2
  267. package/cjs/{CloseButton → internals/CloseButton}/CloseButton.js +1 -1
  268. package/cjs/{Disclosure → internals/Disclosure}/Disclosure.js +1 -1
  269. package/cjs/{Disclosure → internals/Disclosure}/DisclosureButton.js +1 -1
  270. package/cjs/{Menu → internals/Menu}/Menu.js +6 -6
  271. package/cjs/{Menu → internals/Menu}/MenuItem.js +1 -1
  272. package/cjs/{Menu → internals/Menu}/Menubar.js +3 -3
  273. package/cjs/{Overlay → internals/Overlay}/Modal.d.ts +1 -1
  274. package/cjs/{Overlay → internals/Overlay}/Modal.js +3 -3
  275. package/{esm → cjs/internals}/Overlay/Overlay.d.ts +1 -1
  276. package/cjs/{Overlay → internals/Overlay}/Overlay.js +2 -2
  277. package/{esm → cjs/internals}/Overlay/OverlayTrigger.d.ts +1 -1
  278. package/cjs/{Overlay → internals/Overlay}/OverlayTrigger.js +2 -2
  279. package/cjs/{Overlay → internals/Overlay}/Position.d.ts +1 -1
  280. package/cjs/{Overlay → internals/Overlay}/Position.js +2 -2
  281. package/cjs/{Overlay → internals/Overlay}/positionUtils.d.ts +1 -1
  282. package/{esm/Picker/DropdownMenuCheckItem.d.ts → cjs/internals/Picker/ListCheckItem.d.ts} +5 -5
  283. package/cjs/{Picker/DropdownMenuCheckItem.js → internals/Picker/ListCheckItem.js} +16 -32
  284. package/cjs/internals/Picker/ListItem.d.ts +14 -0
  285. package/cjs/{Picker/DropdownMenuItem.js → internals/Picker/ListItem.js} +16 -25
  286. package/cjs/internals/Picker/ListItemGroup.d.ts +6 -0
  287. package/cjs/{Picker/DropdownMenuGroup.js → internals/Picker/ListItemGroup.js} +4 -10
  288. package/cjs/internals/Picker/Listbox.d.ts +35 -0
  289. package/cjs/{Picker/DropdownMenu.js → internals/Picker/Listbox.js} +54 -69
  290. package/cjs/{Picker → internals/Picker}/PickerIndicator.js +3 -3
  291. package/cjs/{Picker → internals/Picker}/PickerLabel.js +1 -1
  292. package/cjs/internals/Picker/PickerPopup.d.ts +12 -0
  293. package/cjs/{Picker/PickerOverlay.js → internals/Picker/PickerPopup.js} +10 -8
  294. package/cjs/{Picker → internals/Picker}/PickerToggle.d.ts +2 -2
  295. package/cjs/{Picker → internals/Picker}/PickerToggle.js +19 -12
  296. package/{esm → cjs/internals}/Picker/PickerToggleTrigger.d.ts +18 -3
  297. package/cjs/{Picker → internals/Picker}/PickerToggleTrigger.js +23 -7
  298. package/{esm → cjs/internals}/Picker/SelectedElement.d.ts +1 -1
  299. package/cjs/{Picker → internals/Picker}/SelectedElement.js +1 -1
  300. package/{esm → cjs/internals}/Picker/ToggleButton.d.ts +1 -1
  301. package/cjs/{Picker → internals/Picker}/ToggleButton.js +1 -1
  302. package/cjs/internals/Picker/TreeView.d.ts +7 -0
  303. package/cjs/internals/Picker/TreeView.js +31 -0
  304. package/cjs/internals/Picker/hooks/index.d.ts +6 -0
  305. package/cjs/internals/Picker/hooks/index.js +18 -0
  306. package/cjs/internals/Picker/hooks/useCombobox.d.ts +7 -0
  307. package/cjs/internals/Picker/hooks/useCombobox.js +22 -0
  308. package/cjs/internals/Picker/hooks/useFocusItemValue.d.ts +30 -0
  309. package/cjs/internals/Picker/hooks/useFocusItemValue.js +246 -0
  310. package/cjs/internals/Picker/hooks/usePickerClassName.d.ts +21 -0
  311. package/cjs/internals/Picker/hooks/usePickerClassName.js +39 -0
  312. package/{esm/Picker → cjs/internals/Picker/hooks}/usePickerRef.d.ts +2 -2
  313. package/cjs/{Picker → internals/Picker/hooks}/usePickerRef.js +1 -1
  314. package/cjs/internals/Picker/hooks/useSearch.d.ts +18 -0
  315. package/cjs/internals/Picker/hooks/useSearch.js +57 -0
  316. package/cjs/internals/Picker/hooks/useToggleKeyDownEvent.d.ts +25 -0
  317. package/cjs/internals/Picker/hooks/useToggleKeyDownEvent.js +101 -0
  318. package/cjs/{Picker → internals/Picker}/index.d.ts +7 -7
  319. package/cjs/{Picker → internals/Picker}/index.js +26 -22
  320. package/{esm → cjs/internals}/Picker/propTypes.d.ts +0 -6
  321. package/cjs/{Picker → internals/Picker}/propTypes.js +5 -9
  322. package/cjs/{Picker → internals/Picker}/types.d.ts +2 -2
  323. package/cjs/internals/Picker/utils.d.ts +22 -0
  324. package/cjs/internals/Picker/utils.js +95 -0
  325. package/cjs/{Plaintext → internals/Plaintext}/Plaintext.d.ts +1 -1
  326. package/cjs/{Plaintext → internals/Plaintext}/Plaintext.js +1 -1
  327. package/cjs/{Ripple → internals/Ripple}/Ripple.d.ts +1 -1
  328. package/cjs/{Ripple → internals/Ripple}/Ripple.js +2 -2
  329. package/cjs/internals/SearchBox/SearchBox.d.ts +11 -0
  330. package/cjs/internals/SearchBox/SearchBox.js +50 -0
  331. package/cjs/internals/SearchBox/index.d.ts +2 -0
  332. package/cjs/internals/SearchBox/index.js +9 -0
  333. package/cjs/{Windowing → internals/Windowing}/AutoSizer.js +1 -1
  334. package/{esm → cjs/internals}/Windowing/List.d.ts +1 -1
  335. package/cjs/{Windowing → internals/Windowing}/List.js +1 -1
  336. package/cjs/internals/index.d.ts +0 -0
  337. package/cjs/internals/index.js +2 -0
  338. package/cjs/{utils → internals/propTypes}/deprecatePropType.js +1 -1
  339. package/cjs/{utils/propTypeChecker.d.ts → internals/propTypes/index.d.ts} +2 -0
  340. package/cjs/{utils/propTypeChecker.js → internals/propTypes/index.js} +7 -1
  341. package/cjs/internals/propTypes/oneOf.d.ts +3 -0
  342. package/cjs/internals/propTypes/oneOf.js +19 -0
  343. package/cjs/utils/ReactChildren.d.ts +1 -1
  344. package/cjs/utils/ReactChildren.js +14 -1
  345. package/cjs/utils/dateUtils.js +5 -2
  346. package/cjs/utils/index.d.ts +0 -1
  347. package/cjs/utils/index.js +2 -5
  348. package/cjs/utils/treeUtils.d.ts +1 -1
  349. package/cjs/utils/treeUtils.js +1 -1
  350. package/cjs/utils/useUniqueId.js +1 -1
  351. package/dist/rsuite-no-reset-rtl.css +4823 -5072
  352. package/dist/rsuite-no-reset-rtl.min.css +1 -1
  353. package/dist/rsuite-no-reset-rtl.min.css.map +1 -1
  354. package/dist/rsuite-no-reset.css +4846 -5095
  355. package/dist/rsuite-no-reset.min.css +1 -1
  356. package/dist/rsuite-no-reset.min.css.map +1 -1
  357. package/dist/rsuite-rtl.css +4823 -5072
  358. package/dist/rsuite-rtl.min.css +1 -1
  359. package/dist/rsuite-rtl.min.css.map +1 -1
  360. package/dist/rsuite.css +4846 -5095
  361. package/dist/rsuite.js +832 -645
  362. package/dist/rsuite.js.map +1 -1
  363. package/dist/rsuite.min.css +1 -1
  364. package/dist/rsuite.min.css.map +1 -1
  365. package/dist/rsuite.min.js +1 -1
  366. package/dist/rsuite.min.js.map +1 -1
  367. package/esm/@types/common.d.ts +8 -0
  368. package/esm/Accordion/Accordion.d.ts +13 -0
  369. package/esm/Accordion/Accordion.js +18 -0
  370. package/esm/Accordion/index.d.ts +3 -0
  371. package/esm/Accordion/index.js +3 -0
  372. package/esm/AutoComplete/AutoComplete.d.ts +1 -1
  373. package/esm/AutoComplete/AutoComplete.js +19 -15
  374. package/esm/AutoComplete/Combobox.d.ts +8 -0
  375. package/esm/AutoComplete/Combobox.js +25 -0
  376. package/esm/Avatar/Avatar.js +2 -1
  377. package/esm/AvatarGroup/AvatarGroup.js +2 -1
  378. package/esm/Badge/Badge.js +2 -1
  379. package/esm/Button/Button.js +6 -5
  380. package/esm/ButtonGroup/ButtonGroup.js +2 -1
  381. package/esm/Calendar/CalendarContainer.js +37 -39
  382. package/esm/Calendar/MonthDropdown.js +1 -1
  383. package/esm/Carousel/Carousel.js +3 -2
  384. package/esm/Cascader/Cascader.d.ts +2 -2
  385. package/esm/Cascader/Cascader.js +17 -14
  386. package/esm/Cascader/DropdownMenu.d.ts +3 -20
  387. package/esm/Cascader/DropdownMenu.js +50 -49
  388. package/esm/Cascader/TreeView.d.ts +24 -0
  389. package/esm/Cascader/TreeView.js +167 -0
  390. package/esm/CheckPicker/CheckPicker.d.ts +1 -1
  391. package/esm/CheckPicker/CheckPicker.js +14 -11
  392. package/esm/CheckTreePicker/CheckTreeNode.d.ts +2 -2
  393. package/esm/CheckTreePicker/CheckTreeNode.js +33 -61
  394. package/esm/CheckTreePicker/CheckTreePicker.d.ts +1 -1
  395. package/esm/CheckTreePicker/CheckTreePicker.js +26 -24
  396. package/esm/Checkbox/Checkbox.js +3 -2
  397. package/esm/CheckboxGroup/CheckboxGroup.js +1 -1
  398. package/esm/DateInput/utils.js +1 -1
  399. package/esm/DatePicker/DatePicker.js +7 -8
  400. package/esm/DateRangePicker/DateRangePicker.d.ts +7 -1
  401. package/esm/DateRangePicker/DateRangePicker.js +15 -14
  402. package/esm/Drawer/Drawer.js +4 -3
  403. package/esm/Dropdown/Dropdown.js +4 -4
  404. package/esm/Dropdown/DropdownItem.js +5 -4
  405. package/esm/Dropdown/DropdownMenu.js +5 -4
  406. package/esm/Dropdown/DropdownToggle.js +2 -1
  407. package/esm/FlexboxGrid/FlexboxGrid.js +3 -2
  408. package/esm/Form/Form.d.ts +14 -0
  409. package/esm/Form/Form.js +44 -34
  410. package/esm/Form/FormContext.d.ts +1 -0
  411. package/esm/FormControl/FormControl.js +42 -19
  412. package/esm/FormErrorMessage/FormErrorMessage.js +2 -1
  413. package/esm/FormGroup/FormGroup.js +3 -2
  414. package/esm/IconButton/IconButton.js +2 -1
  415. package/esm/Input/Input.js +5 -4
  416. package/esm/InputGroup/InputGroup.js +2 -1
  417. package/esm/InputNumber/InputNumber.js +3 -2
  418. package/esm/InputPicker/InputPicker.d.ts +2 -2
  419. package/esm/InputPicker/InputPicker.js +50 -32
  420. package/esm/InputPicker/InputSearch.js +4 -15
  421. package/esm/InputPicker/TagList.d.ts +3 -0
  422. package/esm/InputPicker/TagList.js +23 -0
  423. package/esm/InputPicker/TextBox.d.ts +18 -0
  424. package/esm/InputPicker/TextBox.js +42 -0
  425. package/esm/InputPicker/index.d.ts +1 -1
  426. package/esm/List/List.js +2 -1
  427. package/esm/List/helper/useSortHelper.d.ts +1 -1
  428. package/esm/Loader/Loader.js +3 -2
  429. package/esm/Message/Message.js +3 -2
  430. package/esm/Modal/Modal.d.ts +1 -1
  431. package/esm/Modal/Modal.js +4 -5
  432. package/esm/Modal/ModalDialog.js +2 -1
  433. package/esm/Modal/ModalHeader.js +1 -1
  434. package/esm/MultiCascader/MultiCascader.d.ts +1 -1
  435. package/esm/MultiCascader/MultiCascader.js +18 -13
  436. package/esm/MultiCascader/{DropdownMenu.d.ts → TreeView.d.ts} +3 -3
  437. package/esm/MultiCascader/{DropdownMenu.js → TreeView.js} +79 -75
  438. package/esm/Nav/Nav.js +3 -2
  439. package/esm/Nav/NavDropdown.js +4 -4
  440. package/esm/Nav/NavDropdownItem.js +5 -4
  441. package/esm/Nav/NavDropdownMenu.js +4 -4
  442. package/esm/Nav/NavDropdownToggle.js +2 -1
  443. package/esm/Nav/NavItem.js +3 -2
  444. package/esm/Navbar/NavbarDropdown.js +4 -4
  445. package/esm/Navbar/NavbarDropdownItem.js +5 -4
  446. package/esm/Navbar/NavbarDropdownMenu.js +3 -3
  447. package/esm/Navbar/NavbarDropdownToggle.js +2 -1
  448. package/esm/Navbar/NavbarItem.js +3 -2
  449. package/esm/Notification/Notification.js +9 -8
  450. package/esm/Pagination/PaginationButton.js +1 -1
  451. package/esm/Panel/AccordionButton.d.ts +10 -0
  452. package/esm/Panel/AccordionButton.js +40 -0
  453. package/esm/Panel/Panel.d.ts +17 -9
  454. package/esm/Panel/Panel.js +47 -42
  455. package/esm/PanelGroup/PanelGroup.js +4 -5
  456. package/esm/Placeholder/PlaceholderParagraph.js +2 -1
  457. package/esm/Progress/ProgressCircle.js +4 -3
  458. package/esm/Progress/ProgressLine.js +2 -1
  459. package/esm/Radio/Radio.js +3 -2
  460. package/esm/RadioGroup/RadioGroup.js +3 -2
  461. package/esm/RangeSlider/RangeSlider.js +1 -1
  462. package/esm/Rate/Rate.js +3 -2
  463. package/esm/SelectPicker/SelectPicker.d.ts +2 -2
  464. package/esm/SelectPicker/SelectPicker.js +13 -11
  465. package/esm/Sidenav/ExpandedSidenavDropdown.js +3 -3
  466. package/esm/Sidenav/ExpandedSidenavDropdownItem.js +3 -2
  467. package/esm/Sidenav/ExpandedSidenavDropdownMenu.js +2 -2
  468. package/esm/Sidenav/Sidenav.js +2 -2
  469. package/esm/Sidenav/SidenavDropdown.js +5 -5
  470. package/esm/Sidenav/SidenavDropdownItem.js +5 -4
  471. package/esm/Sidenav/SidenavDropdownMenu.js +2 -2
  472. package/esm/Sidenav/SidenavDropdownToggle.js +2 -1
  473. package/esm/Sidenav/SidenavItem.js +8 -8
  474. package/esm/Sidenav/SidenavToggle.js +1 -1
  475. package/esm/Slider/Slider.js +1 -1
  476. package/esm/Stack/Stack.js +4 -3
  477. package/esm/Stack/StackItem.js +2 -1
  478. package/esm/Steps/StepItem.js +2 -1
  479. package/esm/Steps/Steps.js +2 -1
  480. package/esm/Tag/Tag.js +1 -1
  481. package/esm/TagInput/index.d.ts +1 -1
  482. package/esm/TagInput/index.js +4 -0
  483. package/esm/TagPicker/index.d.ts +1 -1
  484. package/esm/Timeline/Timeline.js +2 -1
  485. package/esm/Toggle/Toggle.js +3 -2
  486. package/esm/Tree/Tree.d.ts +1 -1
  487. package/esm/TreePicker/TreeNode.d.ts +2 -2
  488. package/esm/TreePicker/TreeNode.js +24 -58
  489. package/esm/TreePicker/TreePicker.d.ts +1 -1
  490. package/esm/TreePicker/TreePicker.js +25 -24
  491. package/esm/Uploader/UploadFileItem.js +3 -2
  492. package/esm/Uploader/Uploader.js +3 -2
  493. package/esm/VisuallyHidden/VisuallyHidden.d.ts +10 -0
  494. package/esm/VisuallyHidden/VisuallyHidden.js +13 -0
  495. package/esm/VisuallyHidden/index.d.ts +3 -0
  496. package/esm/VisuallyHidden/index.js +3 -0
  497. package/esm/Whisper/Whisper.d.ts +2 -2
  498. package/esm/Whisper/Whisper.js +3 -2
  499. package/esm/index.d.ts +5 -1
  500. package/esm/index.js +3 -1
  501. package/esm/{CloseButton → internals/CloseButton}/CloseButton.d.ts +2 -2
  502. package/esm/{CloseButton → internals/CloseButton}/CloseButton.js +1 -1
  503. package/esm/{Disclosure → internals/Disclosure}/Disclosure.js +1 -1
  504. package/esm/{Disclosure → internals/Disclosure}/DisclosureButton.js +1 -1
  505. package/esm/{Menu → internals/Menu}/Menu.js +6 -6
  506. package/esm/{Menu → internals/Menu}/MenuItem.js +1 -1
  507. package/esm/{Menu → internals/Menu}/Menubar.js +3 -3
  508. package/esm/{Overlay → internals/Overlay}/Modal.d.ts +1 -1
  509. package/esm/{Overlay → internals/Overlay}/Modal.js +3 -3
  510. package/{cjs → esm/internals}/Overlay/Overlay.d.ts +1 -1
  511. package/esm/{Overlay → internals/Overlay}/Overlay.js +2 -2
  512. package/{cjs → esm/internals}/Overlay/OverlayTrigger.d.ts +1 -1
  513. package/esm/{Overlay → internals/Overlay}/OverlayTrigger.js +2 -2
  514. package/esm/{Overlay → internals/Overlay}/Position.d.ts +1 -1
  515. package/esm/{Overlay → internals/Overlay}/Position.js +3 -3
  516. package/esm/{Overlay → internals/Overlay}/positionUtils.d.ts +1 -1
  517. package/{cjs/Picker/DropdownMenuCheckItem.d.ts → esm/internals/Picker/ListCheckItem.d.ts} +5 -5
  518. package/esm/{Picker/DropdownMenuCheckItem.js → internals/Picker/ListCheckItem.js} +16 -31
  519. package/esm/internals/Picker/ListItem.d.ts +14 -0
  520. package/esm/{Picker/DropdownMenuItem.js → internals/Picker/ListItem.js} +16 -24
  521. package/esm/internals/Picker/ListItemGroup.d.ts +6 -0
  522. package/esm/{Picker/DropdownMenuGroup.js → internals/Picker/ListItemGroup.js} +4 -10
  523. package/esm/internals/Picker/Listbox.d.ts +35 -0
  524. package/esm/{Picker/DropdownMenu.js → internals/Picker/Listbox.js} +54 -68
  525. package/esm/{Picker → internals/Picker}/PickerIndicator.js +3 -3
  526. package/esm/{Picker → internals/Picker}/PickerLabel.js +1 -1
  527. package/esm/internals/Picker/PickerPopup.d.ts +12 -0
  528. package/esm/{Picker/PickerOverlay.js → internals/Picker/PickerPopup.js} +10 -8
  529. package/esm/{Picker → internals/Picker}/PickerToggle.d.ts +2 -2
  530. package/esm/{Picker → internals/Picker}/PickerToggle.js +19 -12
  531. package/{cjs → esm/internals}/Picker/PickerToggleTrigger.d.ts +18 -3
  532. package/esm/{Picker → internals/Picker}/PickerToggleTrigger.js +21 -6
  533. package/{cjs → esm/internals}/Picker/SelectedElement.d.ts +1 -1
  534. package/esm/{Picker → internals/Picker}/SelectedElement.js +1 -1
  535. package/{cjs → esm/internals}/Picker/ToggleButton.d.ts +1 -1
  536. package/esm/{Picker → internals/Picker}/ToggleButton.js +1 -1
  537. package/esm/internals/Picker/TreeView.d.ts +7 -0
  538. package/esm/internals/Picker/TreeView.js +25 -0
  539. package/esm/internals/Picker/hooks/index.d.ts +6 -0
  540. package/esm/internals/Picker/hooks/index.js +7 -0
  541. package/esm/internals/Picker/hooks/useCombobox.d.ts +7 -0
  542. package/esm/internals/Picker/hooks/useCombobox.js +17 -0
  543. package/esm/internals/Picker/hooks/useFocusItemValue.d.ts +30 -0
  544. package/esm/internals/Picker/hooks/useFocusItemValue.js +240 -0
  545. package/esm/internals/Picker/hooks/usePickerClassName.d.ts +21 -0
  546. package/esm/internals/Picker/hooks/usePickerClassName.js +33 -0
  547. package/{cjs/Picker → esm/internals/Picker/hooks}/usePickerRef.d.ts +2 -2
  548. package/esm/{Picker → internals/Picker/hooks}/usePickerRef.js +1 -1
  549. package/esm/internals/Picker/hooks/useSearch.d.ts +18 -0
  550. package/esm/internals/Picker/hooks/useSearch.js +51 -0
  551. package/esm/internals/Picker/hooks/useToggleKeyDownEvent.d.ts +25 -0
  552. package/esm/internals/Picker/hooks/useToggleKeyDownEvent.js +96 -0
  553. package/esm/{Picker → internals/Picker}/index.d.ts +7 -7
  554. package/esm/{Picker → internals/Picker}/index.js +7 -7
  555. package/{cjs → esm/internals}/Picker/propTypes.d.ts +0 -6
  556. package/esm/{Picker → internals/Picker}/propTypes.js +5 -9
  557. package/esm/{Picker → internals/Picker}/types.d.ts +2 -2
  558. package/esm/internals/Picker/utils.d.ts +22 -0
  559. package/esm/internals/Picker/utils.js +88 -0
  560. package/esm/{Plaintext → internals/Plaintext}/Plaintext.d.ts +1 -1
  561. package/esm/{Plaintext → internals/Plaintext}/Plaintext.js +1 -1
  562. package/esm/{Ripple → internals/Ripple}/Ripple.d.ts +1 -1
  563. package/esm/{Ripple → internals/Ripple}/Ripple.js +2 -2
  564. package/esm/internals/SearchBox/SearchBox.d.ts +11 -0
  565. package/esm/internals/SearchBox/SearchBox.js +44 -0
  566. package/esm/internals/SearchBox/index.d.ts +2 -0
  567. package/esm/internals/SearchBox/index.js +3 -0
  568. package/esm/{Windowing → internals/Windowing}/AutoSizer.js +1 -1
  569. package/{cjs → esm/internals}/Windowing/List.d.ts +1 -1
  570. package/esm/{Windowing → internals/Windowing}/List.js +1 -1
  571. package/esm/internals/index.d.ts +0 -0
  572. package/esm/internals/index.js +1 -0
  573. package/esm/{utils → internals/propTypes}/deprecatePropType.js +1 -1
  574. package/esm/{utils/propTypeChecker.d.ts → internals/propTypes/index.d.ts} +2 -0
  575. package/esm/{utils/propTypeChecker.js → internals/propTypes/index.js} +2 -0
  576. package/esm/internals/propTypes/oneOf.d.ts +3 -0
  577. package/esm/internals/propTypes/oneOf.js +13 -0
  578. package/esm/utils/ReactChildren.d.ts +1 -1
  579. package/esm/utils/ReactChildren.js +14 -1
  580. package/esm/utils/dateUtils.js +4 -0
  581. package/esm/utils/index.d.ts +0 -1
  582. package/esm/utils/index.js +0 -2
  583. package/esm/utils/treeUtils.d.ts +1 -1
  584. package/esm/utils/treeUtils.js +1 -1
  585. package/esm/utils/useUniqueId.js +1 -1
  586. package/{CloseButton → internals/CloseButton}/styles/index.less +1 -1
  587. package/{Picker → internals/Picker}/styles/index.less +24 -45
  588. package/{Picker → internals/Picker}/styles/mixin.less +6 -8
  589. package/{Ripple → internals/Ripple}/styles/index.less +1 -1
  590. package/internals/SearchBox/styles/index.less +11 -0
  591. package/internals/package.json +7 -0
  592. package/package.json +1 -1
  593. package/styles/color-modes/dark.less +40 -0
  594. package/styles/color-modes/high-contrast.less +35 -0
  595. package/styles/color-modes/light.less +46 -0
  596. package/styles/index.less +10 -4
  597. package/styles/variables.less +1 -4
  598. package/toaster/styles/index.css +239 -0
  599. package/CloseButton/package.json +0 -7
  600. package/Disclosure/package.json +0 -7
  601. package/Menu/package.json +0 -7
  602. package/Overlay/package.json +0 -7
  603. package/Picker/package.json +0 -7
  604. package/Plaintext/package.json +0 -7
  605. package/Ripple/package.json +0 -7
  606. package/Windowing/package.json +0 -7
  607. package/cjs/Picker/DropdownMenu.d.ts +0 -59
  608. package/cjs/Picker/DropdownMenuGroup.d.ts +0 -6
  609. package/cjs/Picker/DropdownMenuItem.d.ts +0 -14
  610. package/cjs/Picker/PickerOverlay.d.ts +0 -12
  611. package/cjs/Picker/SearchBar.d.ts +0 -11
  612. package/cjs/Picker/SearchBar.js +0 -61
  613. package/cjs/Picker/utils.d.ts +0 -116
  614. package/cjs/Picker/utils.js +0 -500
  615. package/esm/Picker/DropdownMenu.d.ts +0 -59
  616. package/esm/Picker/DropdownMenuGroup.d.ts +0 -6
  617. package/esm/Picker/DropdownMenuItem.d.ts +0 -14
  618. package/esm/Picker/PickerOverlay.d.ts +0 -12
  619. package/esm/Picker/SearchBar.d.ts +0 -11
  620. package/esm/Picker/SearchBar.js +0 -54
  621. package/esm/Picker/utils.d.ts +0 -116
  622. package/esm/Picker/utils.js +0 -487
  623. /package/cjs/{CloseButton → internals/CloseButton}/index.d.ts +0 -0
  624. /package/cjs/{CloseButton → internals/CloseButton}/index.js +0 -0
  625. /package/cjs/{Disclosure → internals/Disclosure}/Disclosure.d.ts +0 -0
  626. /package/cjs/{Disclosure → internals/Disclosure}/DisclosureButton.d.ts +0 -0
  627. /package/cjs/{Disclosure → internals/Disclosure}/DisclosureContent.d.ts +0 -0
  628. /package/cjs/{Disclosure → internals/Disclosure}/DisclosureContent.js +0 -0
  629. /package/cjs/{Disclosure → internals/Disclosure}/DisclosureContext.d.ts +0 -0
  630. /package/cjs/{Disclosure → internals/Disclosure}/DisclosureContext.js +0 -0
  631. /package/cjs/{Disclosure → internals/Disclosure}/index.d.ts +0 -0
  632. /package/cjs/{Disclosure → internals/Disclosure}/index.js +0 -0
  633. /package/cjs/{Disclosure → internals/Disclosure}/useDisclosureContext.d.ts +0 -0
  634. /package/cjs/{Disclosure → internals/Disclosure}/useDisclosureContext.js +0 -0
  635. /package/cjs/{Menu → internals/Menu}/Menu.d.ts +0 -0
  636. /package/cjs/{Menu → internals/Menu}/MenuContext.d.ts +0 -0
  637. /package/cjs/{Menu → internals/Menu}/MenuContext.js +0 -0
  638. /package/cjs/{Menu → internals/Menu}/MenuItem.d.ts +0 -0
  639. /package/cjs/{Menu → internals/Menu}/Menubar.d.ts +0 -0
  640. /package/cjs/{Menu → internals/Menu}/index.d.ts +0 -0
  641. /package/cjs/{Menu → internals/Menu}/index.js +0 -0
  642. /package/cjs/{Menu → internals/Menu}/useMenu.d.ts +0 -0
  643. /package/cjs/{Menu → internals/Menu}/useMenu.js +0 -0
  644. /package/cjs/{Overlay → internals/Overlay}/ModalManager.d.ts +0 -0
  645. /package/cjs/{Overlay → internals/Overlay}/ModalManager.js +0 -0
  646. /package/cjs/{Overlay → internals/Overlay}/OverlayContext.d.ts +0 -0
  647. /package/cjs/{Overlay → internals/Overlay}/OverlayContext.js +0 -0
  648. /package/cjs/{Overlay → internals/Overlay}/index.d.ts +0 -0
  649. /package/cjs/{Overlay → internals/Overlay}/index.js +0 -0
  650. /package/cjs/{Overlay → internals/Overlay}/positionUtils.js +0 -0
  651. /package/cjs/{Picker → internals/Picker}/PickerIndicator.d.ts +0 -0
  652. /package/cjs/{Picker → internals/Picker}/PickerLabel.d.ts +0 -0
  653. /package/cjs/{Picker → internals/Picker}/types.js +0 -0
  654. /package/cjs/{Plaintext → internals/Plaintext}/index.d.ts +0 -0
  655. /package/cjs/{Plaintext → internals/Plaintext}/index.js +0 -0
  656. /package/cjs/{Ripple → internals/Ripple}/index.d.ts +0 -0
  657. /package/cjs/{Ripple → internals/Ripple}/index.js +0 -0
  658. /package/cjs/{Windowing → internals/Windowing}/AutoSizer.d.ts +0 -0
  659. /package/cjs/{Windowing → internals/Windowing}/index.d.ts +0 -0
  660. /package/cjs/{Windowing → internals/Windowing}/index.js +0 -0
  661. /package/cjs/{utils → internals/propTypes}/deprecatePropType.d.ts +0 -0
  662. /package/esm/{CloseButton → internals/CloseButton}/index.d.ts +0 -0
  663. /package/esm/{CloseButton → internals/CloseButton}/index.js +0 -0
  664. /package/esm/{Disclosure → internals/Disclosure}/Disclosure.d.ts +0 -0
  665. /package/esm/{Disclosure → internals/Disclosure}/DisclosureButton.d.ts +0 -0
  666. /package/esm/{Disclosure → internals/Disclosure}/DisclosureContent.d.ts +0 -0
  667. /package/esm/{Disclosure → internals/Disclosure}/DisclosureContent.js +0 -0
  668. /package/esm/{Disclosure → internals/Disclosure}/DisclosureContext.d.ts +0 -0
  669. /package/esm/{Disclosure → internals/Disclosure}/DisclosureContext.js +0 -0
  670. /package/esm/{Disclosure → internals/Disclosure}/index.d.ts +0 -0
  671. /package/esm/{Disclosure → internals/Disclosure}/index.js +0 -0
  672. /package/esm/{Disclosure → internals/Disclosure}/useDisclosureContext.d.ts +0 -0
  673. /package/esm/{Disclosure → internals/Disclosure}/useDisclosureContext.js +0 -0
  674. /package/esm/{Menu → internals/Menu}/Menu.d.ts +0 -0
  675. /package/esm/{Menu → internals/Menu}/MenuContext.d.ts +0 -0
  676. /package/esm/{Menu → internals/Menu}/MenuContext.js +0 -0
  677. /package/esm/{Menu → internals/Menu}/MenuItem.d.ts +0 -0
  678. /package/esm/{Menu → internals/Menu}/Menubar.d.ts +0 -0
  679. /package/esm/{Menu → internals/Menu}/index.d.ts +0 -0
  680. /package/esm/{Menu → internals/Menu}/index.js +0 -0
  681. /package/esm/{Menu → internals/Menu}/useMenu.d.ts +0 -0
  682. /package/esm/{Menu → internals/Menu}/useMenu.js +0 -0
  683. /package/esm/{Overlay → internals/Overlay}/ModalManager.d.ts +0 -0
  684. /package/esm/{Overlay → internals/Overlay}/ModalManager.js +0 -0
  685. /package/esm/{Overlay → internals/Overlay}/OverlayContext.d.ts +0 -0
  686. /package/esm/{Overlay → internals/Overlay}/OverlayContext.js +0 -0
  687. /package/esm/{Overlay → internals/Overlay}/index.d.ts +0 -0
  688. /package/esm/{Overlay → internals/Overlay}/index.js +0 -0
  689. /package/esm/{Overlay → internals/Overlay}/positionUtils.js +0 -0
  690. /package/esm/{Picker → internals/Picker}/PickerIndicator.d.ts +0 -0
  691. /package/esm/{Picker → internals/Picker}/PickerLabel.d.ts +0 -0
  692. /package/esm/{Picker → internals/Picker}/types.js +0 -0
  693. /package/esm/{Plaintext → internals/Plaintext}/index.d.ts +0 -0
  694. /package/esm/{Plaintext → internals/Plaintext}/index.js +0 -0
  695. /package/esm/{Ripple → internals/Ripple}/index.d.ts +0 -0
  696. /package/esm/{Ripple → internals/Ripple}/index.js +0 -0
  697. /package/esm/{Windowing → internals/Windowing}/AutoSizer.d.ts +0 -0
  698. /package/esm/{Windowing → internals/Windowing}/index.d.ts +0 -0
  699. /package/esm/{Windowing → internals/Windowing}/index.js +0 -0
  700. /package/esm/{utils → internals/propTypes}/deprecatePropType.d.ts +0 -0
  701. /package/{Ripple → internals/Ripple}/styles/mixins.less +0 -0
@@ -3,34 +3,50 @@
3
3
 
4
4
  var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
5
5
  exports.__esModule = true;
6
- exports.default = exports.pickTriggerPropKeys = exports.omitTriggerPropKeys = void 0;
6
+ exports.default = exports.ComboboxContextContext = exports.pickTriggerPropKeys = exports.omitTriggerPropKeys = void 0;
7
7
  var _extends2 = _interopRequireDefault(require("@babel/runtime/helpers/extends"));
8
8
  var _objectWithoutPropertiesLoose2 = _interopRequireDefault(require("@babel/runtime/helpers/objectWithoutPropertiesLoose"));
9
9
  var _react = _interopRequireDefault(require("react"));
10
10
  var _pick = _interopRequireDefault(require("lodash/pick"));
11
- var _OverlayTrigger = _interopRequireDefault(require("../Overlay/OverlayTrigger"));
12
- var _utils = require("../utils");
11
+ var _OverlayTrigger = _interopRequireDefault(require("../../internals/Overlay/OverlayTrigger"));
12
+ var _utils = require("../../utils");
13
13
  var omitTriggerPropKeys = ['onEntered', 'onExited', 'onEnter', 'onEntering', 'onExit', 'onExiting', 'open', 'defaultOpen', 'container', 'containerPadding', 'preventOverflow'];
14
14
  exports.omitTriggerPropKeys = omitTriggerPropKeys;
15
- var pickTriggerPropKeys = [].concat(omitTriggerPropKeys, ['disabled', 'plaintext', 'readOnly', 'loading']);
15
+ var pickTriggerPropKeys = [].concat(omitTriggerPropKeys, ['disabled', 'plaintext', 'readOnly', 'loading', 'label']);
16
16
  exports.pickTriggerPropKeys = pickTriggerPropKeys;
17
+ var ComboboxContextContext = /*#__PURE__*/_react.default.createContext({
18
+ popupType: 'listbox'
19
+ });
20
+ exports.ComboboxContextContext = ComboboxContextContext;
17
21
  var PickerToggleTrigger = /*#__PURE__*/_react.default.forwardRef(function (props, ref) {
18
22
  var pickerProps = props.pickerProps,
19
23
  speaker = props.speaker,
20
24
  placement = props.placement,
21
25
  _props$trigger = props.trigger,
22
26
  trigger = _props$trigger === void 0 ? 'click' : _props$trigger,
23
- rest = (0, _objectWithoutPropertiesLoose2.default)(props, ["pickerProps", "speaker", "placement", "trigger"]);
27
+ id = props.id,
28
+ multiple = props.multiple,
29
+ _props$popupType = props.popupType,
30
+ popupType = _props$popupType === void 0 ? 'listbox' : _props$popupType,
31
+ rest = (0, _objectWithoutPropertiesLoose2.default)(props, ["pickerProps", "speaker", "placement", "trigger", "id", "multiple", "popupType"]);
24
32
  var pickerTriggerProps = (0, _pick.default)(pickerProps, pickTriggerPropKeys);
33
+ var pickerId = (0, _utils.useUniqueId)('rs-', id);
25
34
  var _useCustom = (0, _utils.useCustom)(),
26
35
  rtl = _useCustom.rtl;
27
- return /*#__PURE__*/_react.default.createElement(_OverlayTrigger.default, (0, _extends2.default)({}, pickerTriggerProps, rest, {
36
+ return /*#__PURE__*/_react.default.createElement(ComboboxContextContext.Provider, {
37
+ value: {
38
+ id: pickerId,
39
+ hasLabel: typeof pickerTriggerProps.label !== 'undefined',
40
+ multiple: multiple,
41
+ popupType: popupType
42
+ }
43
+ }, /*#__PURE__*/_react.default.createElement(_OverlayTrigger.default, (0, _extends2.default)({}, pickerTriggerProps, rest, {
28
44
  disabled: pickerTriggerProps.disabled || pickerTriggerProps.loading,
29
45
  ref: ref,
30
46
  trigger: trigger,
31
47
  placement: (0, _utils.placementPolyfill)(placement, rtl),
32
48
  speaker: speaker
33
- }));
49
+ })));
34
50
  });
35
51
  PickerToggleTrigger.displayName = 'PickerToggleTrigger';
36
52
  var _default = PickerToggleTrigger;
@@ -1,5 +1,5 @@
1
1
  /// <reference types="react" />
2
- import { PickerLocale } from '../locales';
2
+ import { PickerLocale } from '../../locales';
3
3
  export interface SelectedElementProps {
4
4
  selectedItems: any[];
5
5
  valueKey: string;
@@ -5,7 +5,7 @@ var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefau
5
5
  exports.__esModule = true;
6
6
  exports.default = void 0;
7
7
  var _react = _interopRequireDefault(require("react"));
8
- var _reactToString = _interopRequireDefault(require("../utils/reactToString"));
8
+ var _reactToString = _interopRequireDefault(require("../../utils/reactToString"));
9
9
  var SelectedElement = function SelectedElement(props) {
10
10
  var selectedItems = props.selectedItems,
11
11
  prefix = props.prefix,
@@ -1,5 +1,5 @@
1
1
  import React from 'react';
2
- import { ButtonProps } from '../Button';
2
+ import { ButtonProps } from '../../Button';
3
3
  export declare type ToggleButtonProps = ButtonProps;
4
4
  declare const ToggleButton: React.ForwardRefExoticComponent<ButtonProps & React.RefAttributes<HTMLDivElement>>;
5
5
  export default ToggleButton;
@@ -6,7 +6,7 @@ exports.__esModule = true;
6
6
  exports.default = void 0;
7
7
  var _extends2 = _interopRequireDefault(require("@babel/runtime/helpers/extends"));
8
8
  var _react = _interopRequireDefault(require("react"));
9
- var _Button = _interopRequireDefault(require("../Button"));
9
+ var _Button = _interopRequireDefault(require("../../Button"));
10
10
  var ToggleButton = /*#__PURE__*/_react.default.forwardRef(function (props, ref) {
11
11
  return /*#__PURE__*/_react.default.createElement(_Button.default, (0, _extends2.default)({}, props, {
12
12
  ref: ref,
@@ -0,0 +1,7 @@
1
+ import React from 'react';
2
+ interface TreeViewProps extends React.HTMLAttributes<HTMLDivElement> {
3
+ treeRootClassName: string;
4
+ multiselectable?: boolean;
5
+ }
6
+ declare const TreeView: React.ForwardRefExoticComponent<TreeViewProps & React.RefAttributes<HTMLDivElement>>;
7
+ export default TreeView;
@@ -0,0 +1,31 @@
1
+ 'use client';
2
+ "use strict";
3
+
4
+ var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
5
+ exports.__esModule = true;
6
+ exports.default = void 0;
7
+ var _extends2 = _interopRequireDefault(require("@babel/runtime/helpers/extends"));
8
+ var _objectWithoutPropertiesLoose2 = _interopRequireDefault(require("@babel/runtime/helpers/objectWithoutPropertiesLoose"));
9
+ var _react = _interopRequireDefault(require("react"));
10
+ var _useCombobox2 = _interopRequireDefault(require("./hooks/useCombobox"));
11
+ var TreeView = /*#__PURE__*/_react.default.forwardRef(function (props, ref) {
12
+ var children = props.children,
13
+ treeRootClassName = props.treeRootClassName,
14
+ multiselectable = props.multiselectable,
15
+ rest = (0, _objectWithoutPropertiesLoose2.default)(props, ["children", "treeRootClassName", "multiselectable"]);
16
+ var _useCombobox = (0, _useCombobox2.default)(),
17
+ id = _useCombobox.id,
18
+ labelId = _useCombobox.labelId,
19
+ popupType = _useCombobox.popupType;
20
+ return /*#__PURE__*/_react.default.createElement("div", (0, _extends2.default)({
21
+ role: "tree",
22
+ id: id + "-" + popupType,
23
+ "aria-multiselectable": multiselectable,
24
+ "aria-labelledby": labelId,
25
+ ref: ref
26
+ }, rest), /*#__PURE__*/_react.default.createElement("div", {
27
+ className: treeRootClassName
28
+ }, children));
29
+ });
30
+ var _default = TreeView;
31
+ exports.default = _default;
@@ -0,0 +1,6 @@
1
+ export { default as usePickerRef } from './usePickerRef';
2
+ export { default as useCombobox } from './useCombobox';
3
+ export { default as useFocusItemValue } from './useFocusItemValue';
4
+ export { default as useToggleKeyDownEvent } from './useToggleKeyDownEvent';
5
+ export { default as useSearch } from './useSearch';
6
+ export { default as usePickerClassName } from './usePickerClassName';
@@ -0,0 +1,18 @@
1
+ 'use client';
2
+ "use strict";
3
+
4
+ var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
5
+ exports.__esModule = true;
6
+ exports.usePickerClassName = exports.useSearch = exports.useToggleKeyDownEvent = exports.useFocusItemValue = exports.useCombobox = exports.usePickerRef = void 0;
7
+ var _usePickerRef = _interopRequireDefault(require("./usePickerRef"));
8
+ exports.usePickerRef = _usePickerRef.default;
9
+ var _useCombobox = _interopRequireDefault(require("./useCombobox"));
10
+ exports.useCombobox = _useCombobox.default;
11
+ var _useFocusItemValue = _interopRequireDefault(require("./useFocusItemValue"));
12
+ exports.useFocusItemValue = _useFocusItemValue.default;
13
+ var _useToggleKeyDownEvent = _interopRequireDefault(require("./useToggleKeyDownEvent"));
14
+ exports.useToggleKeyDownEvent = _useToggleKeyDownEvent.default;
15
+ var _useSearch = _interopRequireDefault(require("./useSearch"));
16
+ exports.useSearch = _useSearch.default;
17
+ var _usePickerClassName = _interopRequireDefault(require("./usePickerClassName"));
18
+ exports.usePickerClassName = _usePickerClassName.default;
@@ -0,0 +1,7 @@
1
+ declare function useCombobox(): {
2
+ id: string | undefined;
3
+ popupType: "dialog" | "menu" | "grid" | "listbox" | "tree" | undefined;
4
+ multiple: boolean | undefined;
5
+ labelId: string | undefined;
6
+ };
7
+ export default useCombobox;
@@ -0,0 +1,22 @@
1
+ 'use client';
2
+ "use strict";
3
+
4
+ exports.__esModule = true;
5
+ exports.default = void 0;
6
+ var _react = require("react");
7
+ var _PickerToggleTrigger = require("../PickerToggleTrigger");
8
+ function useCombobox() {
9
+ var _useContext = (0, _react.useContext)(_PickerToggleTrigger.ComboboxContextContext),
10
+ id = _useContext.id,
11
+ hasLabel = _useContext.hasLabel,
12
+ popupType = _useContext.popupType,
13
+ multiple = _useContext.multiple;
14
+ return {
15
+ id: id,
16
+ popupType: popupType,
17
+ multiple: multiple,
18
+ labelId: hasLabel ? id + "-label" : undefined
19
+ };
20
+ }
21
+ var _default = useCombobox;
22
+ exports.default = _default;
@@ -0,0 +1,30 @@
1
+ /// <reference types="react" />
2
+ interface FocusItemValueProps<T = unknown> {
3
+ target: HTMLElement | null | (() => HTMLElement | null);
4
+ data?: T[];
5
+ /**
6
+ * When the down arrow key is pressed, whether to automatically focus on the option
7
+ */
8
+ focusToOption?: boolean;
9
+ valueKey?: string;
10
+ focusableQueryKey?: string;
11
+ defaultLayer?: number;
12
+ rtl?: boolean;
13
+ callback?: (value: any, event: React.KeyboardEvent) => void;
14
+ getParent?: (node: T) => T | undefined;
15
+ }
16
+ /**
17
+ * A hook that manages the focus state of the option.
18
+ * @param defaultFocusItemValue
19
+ * @param props
20
+ */
21
+ declare const useFocusItemValue: <T, D>(defaultFocusItemValue: T | null | undefined, props: FocusItemValueProps<D>) => {
22
+ focusItemValue: T | null | undefined;
23
+ setFocusItemValue: import("react").Dispatch<import("react").SetStateAction<T | null | undefined>>;
24
+ layer: number;
25
+ setLayer: import("react").Dispatch<import("react").SetStateAction<number>>;
26
+ keys: any[];
27
+ setKeys: import("react").Dispatch<import("react").SetStateAction<any[]>>;
28
+ onKeyDown: (...args: any[]) => any;
29
+ };
30
+ export default useFocusItemValue;
@@ -0,0 +1,246 @@
1
+ 'use client';
2
+ "use strict";
3
+
4
+ var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
5
+ exports.__esModule = true;
6
+ exports.default = void 0;
7
+ var _react = require("react");
8
+ var _isFunction = _interopRequireDefault(require("lodash/isFunction"));
9
+ var _isUndefined = _interopRequireDefault(require("lodash/isUndefined"));
10
+ var _find = _interopRequireDefault(require("lodash/find"));
11
+ var _domLib = require("dom-lib");
12
+ var _utils = require("../../../utils");
13
+ var _treeUtils = require("../../../utils/treeUtils");
14
+ var _utils2 = require("../utils");
15
+ /**
16
+ * A hook that manages the focus state of the option.
17
+ * @param defaultFocusItemValue
18
+ * @param props
19
+ */
20
+ var useFocusItemValue = function useFocusItemValue(defaultFocusItemValue, props) {
21
+ var _props$valueKey = props.valueKey,
22
+ valueKey = _props$valueKey === void 0 ? 'value' : _props$valueKey,
23
+ _props$focusableQuery = props.focusableQueryKey,
24
+ focusableQueryKey = _props$focusableQuery === void 0 ? '[data-key][aria-disabled="false"]' : _props$focusableQuery,
25
+ _props$defaultLayer = props.defaultLayer,
26
+ defaultLayer = _props$defaultLayer === void 0 ? 0 : _props$defaultLayer,
27
+ _props$focusToOption = props.focusToOption,
28
+ focusToOption = _props$focusToOption === void 0 ? true : _props$focusToOption,
29
+ data = props.data,
30
+ target = props.target,
31
+ rtl = props.rtl,
32
+ callback = props.callback,
33
+ _props$getParent = props.getParent,
34
+ getParent = _props$getParent === void 0 ? function (item) {
35
+ return item === null || item === void 0 ? void 0 : item.parent;
36
+ } : _props$getParent;
37
+ var _useState = (0, _react.useState)(defaultFocusItemValue),
38
+ focusItemValue = _useState[0],
39
+ setFocusItemValue = _useState[1];
40
+ var _useState2 = (0, _react.useState)(defaultLayer),
41
+ layer = _useState2[0],
42
+ setLayer = _useState2[1];
43
+ var _useState3 = (0, _react.useState)([]),
44
+ keys = _useState3[0],
45
+ setKeys = _useState3[1];
46
+ var focusCallback = (0, _utils.useEventCallback)(function (value, event) {
47
+ if (focusToOption) {
48
+ var menu = (0, _isFunction.default)(target) ? target() : target;
49
+ var focusElement = menu === null || menu === void 0 ? void 0 : menu.querySelector("[data-key=\"" + value + "\"]");
50
+ focusElement === null || focusElement === void 0 ? void 0 : focusElement.focus();
51
+ }
52
+ callback === null || callback === void 0 ? void 0 : callback(value, event);
53
+ });
54
+ var getScrollContainer = (0, _utils.useEventCallback)(function () {
55
+ var menu = (0, _isFunction.default)(target) ? target() : target;
56
+
57
+ // For Cascader and MutiCascader
58
+ var subMenu = menu === null || menu === void 0 ? void 0 : menu.querySelector("[data-layer=\"" + layer + "\"]");
59
+ if (subMenu) {
60
+ return subMenu;
61
+ }
62
+
63
+ // For SelectPicker、CheckPicker、Autocomplete、InputPicker、TagPicker
64
+ return menu === null || menu === void 0 ? void 0 : menu.querySelector('[role="listbox"]');
65
+ });
66
+
67
+ /**
68
+ * Get the elements visible in all options.
69
+ */
70
+ var getFocusableMenuItems = function getFocusableMenuItems() {
71
+ if (!target) {
72
+ return [];
73
+ }
74
+ var currentKeys = keys;
75
+ if (layer < 1) {
76
+ var popup = (0, _isFunction.default)(target) ? target() : target;
77
+ var rootMenu = popup === null || popup === void 0 ? void 0 : popup.querySelector('[data-layer="0"]');
78
+ if (rootMenu) {
79
+ var _rootMenu$querySelect;
80
+ currentKeys = Array.from((_rootMenu$querySelect = rootMenu.querySelectorAll(focusableQueryKey)) !== null && _rootMenu$querySelect !== void 0 ? _rootMenu$querySelect : []).map(function (item) {
81
+ var _item$dataset;
82
+ return (_item$dataset = item.dataset) === null || _item$dataset === void 0 ? void 0 : _item$dataset.key;
83
+ });
84
+ } else {
85
+ var _popup$querySelectorA;
86
+ currentKeys = Array.from((_popup$querySelectorA = popup === null || popup === void 0 ? void 0 : popup.querySelectorAll(focusableQueryKey)) !== null && _popup$querySelectorA !== void 0 ? _popup$querySelectorA : []).map(function (item) {
87
+ var _item$dataset2;
88
+ return (_item$dataset2 = item.dataset) === null || _item$dataset2 === void 0 ? void 0 : _item$dataset2.key;
89
+ });
90
+ }
91
+ }
92
+
93
+ // 1. It is necessary to traverse the `keys` instead of `data` here to preserve the order of the array.
94
+ // 2. The values ​​in `keys` are all string, so the corresponding value of `data` should also be converted to string
95
+ return currentKeys.map(function (key) {
96
+ return (0, _find.default)(data, function (i) {
97
+ return "" + i[valueKey] === key;
98
+ });
99
+ });
100
+ };
101
+
102
+ /**
103
+ * Get the index of the focus item.
104
+ */
105
+ var findFocusItemIndex = (0, _utils.useEventCallback)(function (callback) {
106
+ var items = getFocusableMenuItems();
107
+ for (var i = 0; i < items.length; i += 1) {
108
+ var _items$i;
109
+ if ((0, _utils.shallowEqual)(focusItemValue, (_items$i = items[i]) === null || _items$i === void 0 ? void 0 : _items$i[valueKey])) {
110
+ callback(items, i);
111
+ return;
112
+ }
113
+ }
114
+ callback(items, -1);
115
+ });
116
+ var scrollListItem = (0, _utils.useEventCallback)(function (direction, itemValue, willOverflow) {
117
+ var container = getScrollContainer();
118
+ var item = container === null || container === void 0 ? void 0 : container.querySelector("[data-key=\"" + itemValue + "\"]");
119
+ if (willOverflow && container) {
120
+ var scrollHeight = container.scrollHeight,
121
+ clientHeight = container.clientHeight;
122
+ container.scrollTop = direction === 'top' ? scrollHeight - clientHeight : 0;
123
+ return;
124
+ }
125
+ if (item && container) {
126
+ if (!isVisible(item, container, direction)) {
127
+ var height = (0, _domLib.getHeight)(item);
128
+ scrollTo(container, direction, height);
129
+ }
130
+ }
131
+ });
132
+ var focusNextMenuItem = (0, _utils.useEventCallback)(function (event) {
133
+ findFocusItemIndex(function (items, index) {
134
+ var willOverflow = index + 2 > items.length;
135
+ var nextIndex = willOverflow ? 0 : index + 1;
136
+ var focusItem = items[nextIndex];
137
+ if (!(0, _isUndefined.default)(focusItem)) {
138
+ setFocusItemValue(focusItem[valueKey]);
139
+ focusCallback(focusItem[valueKey], event);
140
+ scrollListItem('bottom', focusItem[valueKey], willOverflow);
141
+ }
142
+ });
143
+ });
144
+ var focusPrevMenuItem = (0, _utils.useEventCallback)(function (event) {
145
+ findFocusItemIndex(function (items, index) {
146
+ var willOverflow = index === 0;
147
+ var nextIndex = willOverflow ? items.length - 1 : index - 1;
148
+ var focusItem = items[nextIndex];
149
+ if (!(0, _isUndefined.default)(focusItem)) {
150
+ setFocusItemValue(focusItem[valueKey]);
151
+ focusCallback(focusItem[valueKey], event);
152
+ scrollListItem('top', focusItem[valueKey], willOverflow);
153
+ }
154
+ });
155
+ });
156
+ var getSubMenuKeys = function getSubMenuKeys(nextLayer) {
157
+ var menu = (0, _isFunction.default)(target) ? target() : target;
158
+ var subMenu = menu === null || menu === void 0 ? void 0 : menu.querySelector("[data-layer=\"" + nextLayer + "\"]");
159
+ if (subMenu) {
160
+ var _Array$from;
161
+ return (_Array$from = Array.from(subMenu.querySelectorAll(focusableQueryKey))) === null || _Array$from === void 0 ? void 0 : _Array$from.map(function (item) {
162
+ var _item$dataset3;
163
+ return (_item$dataset3 = item.dataset) === null || _item$dataset3 === void 0 ? void 0 : _item$dataset3.key;
164
+ });
165
+ }
166
+ return null;
167
+ };
168
+ var focusNextLevelMenu = (0, _utils.useEventCallback)(function (event) {
169
+ var nextLayer = layer + 1;
170
+ var nextKeys = getSubMenuKeys(nextLayer);
171
+ if (nextKeys) {
172
+ setKeys(nextKeys);
173
+ setLayer(nextLayer);
174
+ setFocusItemValue(nextKeys[0]);
175
+ focusCallback(nextKeys[0], event);
176
+ }
177
+ });
178
+ var focusPrevLevelMenu = (0, _utils.useEventCallback)(function (event) {
179
+ var nextLayer = layer - 1;
180
+ var nextKeys = getSubMenuKeys(nextLayer);
181
+ if (nextKeys) {
182
+ var _getParent;
183
+ setKeys(nextKeys);
184
+ setLayer(nextLayer);
185
+ var focusItem = (0, _treeUtils.findNodeOfTree)(data, function (item) {
186
+ return item[valueKey] === focusItemValue;
187
+ });
188
+ var parentItemValue = (_getParent = getParent(focusItem)) === null || _getParent === void 0 ? void 0 : _getParent[valueKey];
189
+ if (parentItemValue) {
190
+ setFocusItemValue(parentItemValue);
191
+ focusCallback(parentItemValue, event);
192
+ }
193
+ }
194
+ });
195
+ var handleKeyDown = (0, _utils.useEventCallback)(function (event) {
196
+ var _onMenuKeyDown;
197
+ (0, _utils2.onMenuKeyDown)(event, (_onMenuKeyDown = {
198
+ down: focusNextMenuItem,
199
+ up: focusPrevMenuItem
200
+ }, _onMenuKeyDown[rtl ? 'left' : 'right'] = focusNextLevelMenu, _onMenuKeyDown[rtl ? 'right' : 'left'] = focusPrevLevelMenu, _onMenuKeyDown));
201
+ });
202
+ return {
203
+ focusItemValue: focusItemValue,
204
+ setFocusItemValue: setFocusItemValue,
205
+ layer: layer,
206
+ setLayer: setLayer,
207
+ keys: keys,
208
+ setKeys: setKeys,
209
+ onKeyDown: handleKeyDown
210
+ };
211
+ };
212
+ function scrollTo(container, direction, step) {
213
+ var scrollTop = container.scrollTop;
214
+ container.scrollTop = direction === 'top' ? scrollTop - step : scrollTop + step;
215
+ }
216
+
217
+ /**
218
+ * Checks if the element has a vertical scrollbar.
219
+ */
220
+ function hasVerticalScroll(element) {
221
+ var scrollHeight = element.scrollHeight,
222
+ clientHeight = element.clientHeight;
223
+ return scrollHeight > clientHeight;
224
+ }
225
+
226
+ /**
227
+ * Checks if the element is within the visible area of the container
228
+ */
229
+ function isVisible(element, container, direction) {
230
+ if (!hasVerticalScroll(container)) {
231
+ return true;
232
+ }
233
+ var _element$getBoundingC = element.getBoundingClientRect(),
234
+ top = _element$getBoundingC.top,
235
+ bottom = _element$getBoundingC.bottom,
236
+ height = _element$getBoundingC.height;
237
+ var _container$getBoundin = container.getBoundingClientRect(),
238
+ containerTop = _container$getBoundin.top,
239
+ containerBottom = _container$getBoundin.bottom;
240
+ if (direction === 'top') {
241
+ return top + height > containerTop;
242
+ }
243
+ return bottom - height < containerBottom;
244
+ }
245
+ var _default = useFocusItemValue;
246
+ exports.default = _default;
@@ -0,0 +1,21 @@
1
+ import { TypeAttributes } from '../../../@types/common';
2
+ export interface PickerClassNameProps {
3
+ name?: string;
4
+ classPrefix: string;
5
+ className?: string;
6
+ placement?: TypeAttributes.Placement;
7
+ appearance?: 'default' | 'subtle';
8
+ cleanable?: boolean;
9
+ block?: boolean;
10
+ disabled?: boolean;
11
+ countable?: boolean;
12
+ readOnly?: boolean;
13
+ plaintext?: boolean;
14
+ hasValue?: boolean;
15
+ classes?: any;
16
+ }
17
+ /**
18
+ * The className of the assembled Toggle is on the Picker.
19
+ */
20
+ declare function usePickerClassName(props: PickerClassNameProps): [string, string[]];
21
+ export default usePickerClassName;
@@ -0,0 +1,39 @@
1
+ 'use client';
2
+ "use strict";
3
+
4
+ var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
5
+ exports.__esModule = true;
6
+ exports.default = void 0;
7
+ var _objectWithoutPropertiesLoose2 = _interopRequireDefault(require("@babel/runtime/helpers/objectWithoutPropertiesLoose"));
8
+ var _kebabCase = _interopRequireDefault(require("lodash/kebabCase"));
9
+ var _omit = _interopRequireDefault(require("lodash/omit"));
10
+ var _utils = require("../../../utils");
11
+ /**
12
+ * The className of the assembled Toggle is on the Picker.
13
+ */
14
+ function usePickerClassName(props) {
15
+ var _withClassPrefix;
16
+ var name = props.name,
17
+ classPrefix = props.classPrefix,
18
+ className = props.className,
19
+ placement = props.placement,
20
+ appearance = props.appearance,
21
+ cleanable = props.cleanable,
22
+ block = props.block,
23
+ disabled = props.disabled,
24
+ countable = props.countable,
25
+ readOnly = props.readOnly,
26
+ plaintext = props.plaintext,
27
+ hasValue = props.hasValue,
28
+ rest = (0, _objectWithoutPropertiesLoose2.default)(props, ["name", "classPrefix", "className", "placement", "appearance", "cleanable", "block", "disabled", "countable", "readOnly", "plaintext", "hasValue"]);
29
+ var _useClassNames = (0, _utils.useClassNames)(classPrefix),
30
+ withClassPrefix = _useClassNames.withClassPrefix,
31
+ merge = _useClassNames.merge;
32
+ var classes = merge(className, withClassPrefix(name, appearance, 'toggle-wrapper', (_withClassPrefix = {}, _withClassPrefix["placement-" + (0, _kebabCase.default)((0, _utils.placementPolyfill)(placement))] = placement, _withClassPrefix['read-only'] = readOnly, _withClassPrefix['has-value'] = hasValue, _withClassPrefix.cleanable = cleanable, _withClassPrefix.block = block, _withClassPrefix.disabled = disabled, _withClassPrefix.countable = countable, _withClassPrefix.plaintext = plaintext, _withClassPrefix)));
33
+
34
+ // Those props that're used for composing the className
35
+ var usedClassNamePropKeys = Object.keys((0, _omit.default)(props, [].concat(Object.keys(rest || {}), ['disabled', 'readOnly', 'plaintext', 'name'])));
36
+ return [classes, usedClassNamePropKeys];
37
+ }
38
+ var _default = usePickerClassName;
39
+ exports.default = _default;
@@ -1,6 +1,6 @@
1
1
  /// <reference types="react" />
2
- import type { OverlayTriggerHandle } from './PickerToggleTrigger';
3
- import type { ListHandle } from '../Windowing';
2
+ import type { OverlayTriggerHandle } from '../PickerToggleTrigger';
3
+ import type { ListHandle } from '../../../internals/Windowing';
4
4
  export interface PickerDependentParameters {
5
5
  inline?: boolean;
6
6
  }
@@ -5,7 +5,7 @@ var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefau
5
5
  exports.__esModule = true;
6
6
  exports.default = void 0;
7
7
  var _react = require("react");
8
- var _useEventCallback = _interopRequireDefault(require("../utils/useEventCallback"));
8
+ var _useEventCallback = _interopRequireDefault(require("../../../utils/useEventCallback"));
9
9
  /**
10
10
  * A hook of the exposed method of Picker
11
11
  */
@@ -0,0 +1,18 @@
1
+ /// <reference types="react" />
2
+ interface SearchOptions<T> {
3
+ labelKey: string;
4
+ searchBy?: (keyword: string, label: any, item: T) => boolean;
5
+ callback?: (keyword: string, data: T[], event: React.SyntheticEvent) => void;
6
+ }
7
+ declare type UseSearchResult<T> = {
8
+ searchKeyword: string;
9
+ filteredData: T[];
10
+ checkShouldDisplay: (item: T, keyword?: string) => boolean;
11
+ handleSearch: (searchKeyword: string, event: React.SyntheticEvent) => void;
12
+ resetSearch: () => void;
13
+ };
14
+ /**
15
+ * A hook that handles search filter options
16
+ */
17
+ declare function useSearch<T>(data: readonly T[], props: SearchOptions<T>): UseSearchResult<T>;
18
+ export default useSearch;
@@ -0,0 +1,57 @@
1
+ 'use client';
2
+ "use strict";
3
+
4
+ var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
5
+ exports.__esModule = true;
6
+ exports.default = void 0;
7
+ var _react = require("react");
8
+ var _isUndefined = _interopRequireDefault(require("lodash/isUndefined"));
9
+ var _utils = require("../utils");
10
+ /**
11
+ * A hook that handles search filter options
12
+ */
13
+ function useSearch(data, props) {
14
+ var labelKey = props.labelKey,
15
+ searchBy = props.searchBy,
16
+ callback = props.callback; // Use search keywords to filter options.
17
+ var _useState = (0, _react.useState)(''),
18
+ searchKeyword = _useState[0],
19
+ setSearchKeyword = _useState[1];
20
+ var resetSearch = (0, _react.useCallback)(function () {
21
+ setSearchKeyword('');
22
+ }, []);
23
+
24
+ /**
25
+ * Index of keyword in `label`
26
+ * @param {node} label
27
+ */
28
+ var checkShouldDisplay = (0, _react.useCallback)(function (item, keyword) {
29
+ var checkValue = typeof item === 'object' ? item === null || item === void 0 ? void 0 : item[labelKey] : String(item);
30
+ var _keyword = (0, _isUndefined.default)(keyword) ? searchKeyword : keyword;
31
+ if (typeof searchBy === 'function') {
32
+ return searchBy(_keyword, checkValue, item);
33
+ }
34
+ return (0, _utils.shouldDisplay)(checkValue, _keyword);
35
+ }, [labelKey, searchBy, searchKeyword]);
36
+ var filteredData = (0, _react.useMemo)(function () {
37
+ return data.filter(function (item) {
38
+ return checkShouldDisplay(item, searchKeyword);
39
+ });
40
+ }, [checkShouldDisplay, data, searchKeyword]);
41
+ var handleSearch = function handleSearch(searchKeyword, event) {
42
+ var filteredData = data.filter(function (item) {
43
+ return checkShouldDisplay(item, searchKeyword);
44
+ });
45
+ setSearchKeyword(searchKeyword);
46
+ callback === null || callback === void 0 ? void 0 : callback(searchKeyword, filteredData, event);
47
+ };
48
+ return {
49
+ searchKeyword: searchKeyword,
50
+ filteredData: filteredData,
51
+ checkShouldDisplay: checkShouldDisplay,
52
+ handleSearch: handleSearch,
53
+ resetSearch: resetSearch
54
+ };
55
+ }
56
+ var _default = useSearch;
57
+ exports.default = _default;
@@ -0,0 +1,25 @@
1
+ /// <reference types="react" />
2
+ interface ToggleKeyDownEventProps {
3
+ toggle?: boolean;
4
+ trigger: React.RefObject<any>;
5
+ target: React.RefObject<any>;
6
+ overlay?: React.RefObject<any>;
7
+ searchInput?: React.RefObject<any>;
8
+ active?: boolean;
9
+ readOnly?: boolean;
10
+ disabled?: boolean;
11
+ loading?: boolean;
12
+ onExit?: (event: any) => void;
13
+ onKeyDown?: (event: any) => void;
14
+ onOpen?: () => void;
15
+ onClose?: () => void;
16
+ onMenuKeyDown?: (event: any) => void;
17
+ onMenuPressEnter?: (event: any) => void;
18
+ onMenuPressBackspace?: (event: any) => void;
19
+ }
20
+ /**
21
+ * A hook to control the toggle keyboard operation
22
+ * @param props
23
+ */
24
+ declare const useToggleKeyDownEvent: (props: ToggleKeyDownEventProps) => (...args: any[]) => any;
25
+ export default useToggleKeyDownEvent;