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
@@ -10,8 +10,8 @@ var _objectWithoutPropertiesLoose2 = _interopRequireDefault(require("@babel/runt
10
10
  var _pick2 = _interopRequireDefault(require("lodash/pick"));
11
11
  var _react = _interopRequireWildcard(require("react"));
12
12
  var _propTypes = _interopRequireDefault(require("prop-types"));
13
- var _deprecatePropType = _interopRequireWildcard(require("../utils/deprecatePropType"));
14
- var _MenuItem = _interopRequireDefault(require("../Menu/MenuItem"));
13
+ var _propTypes2 = require("../internals/propTypes");
14
+ var _MenuItem = _interopRequireDefault(require("../internals/Menu/MenuItem"));
15
15
  var _DropdownContext = _interopRequireDefault(require("./DropdownContext"));
16
16
  var _isNil = _interopRequireDefault(require("lodash/isNil"));
17
17
  var _utils = require("../utils");
@@ -22,6 +22,7 @@ var _useRenderDropdownItem = require("./useRenderDropdownItem");
22
22
  var _warnOnce = _interopRequireDefault(require("../utils/warnOnce"));
23
23
  var _Nav = _interopRequireDefault(require("../Nav"));
24
24
  var _DropdownSeparator = _interopRequireDefault(require("./DropdownSeparator"));
25
+ var _classnames = _interopRequireDefault(require("classnames"));
25
26
  /**
26
27
  * The `<Dropdown.Item>` API
27
28
  * - When used inside `<Sidenav>`, renders a `<TreeviewItem>`
@@ -124,7 +125,7 @@ var DropdownItem = /*#__PURE__*/_react.default.forwardRef(function (props, ref)
124
125
  className: classes
125
126
  }, menuitem, dataAttributes, restProps, {
126
127
  children: /*#__PURE__*/_react.default.createElement(_react.default.Fragment, null, icon && /*#__PURE__*/_react.default.cloneElement(icon, {
127
- className: prefix('menu-icon')
128
+ className: (0, _classnames.default)(prefix('menu-icon'), icon.props.className)
128
129
  }), children)
129
130
  }));
130
131
  });
@@ -132,13 +133,13 @@ var DropdownItem = /*#__PURE__*/_react.default.forwardRef(function (props, ref)
132
133
  DropdownItem.displayName = 'Dropdown.Item';
133
134
  DropdownItem.propTypes = {
134
135
  as: _propTypes.default.elementType,
135
- divider: (0, _deprecatePropType.deprecatePropTypeNew)(_propTypes.default.bool, 'Use Dropdown.Separator component instead.'),
136
+ divider: (0, _propTypes2.deprecatePropTypeNew)(_propTypes.default.bool, 'Use Dropdown.Separator component instead.'),
136
137
  panel: _propTypes.default.bool,
137
- trigger: _propTypes.default.oneOfType([_propTypes.default.array, _propTypes.default.oneOf(['click', 'hover'])]),
138
- open: (0, _deprecatePropType.default)(_propTypes.default.bool),
138
+ trigger: _propTypes.default.oneOfType([_propTypes.default.array, (0, _propTypes2.oneOf)(['click', 'hover'])]),
139
+ open: (0, _propTypes2.deprecatePropType)(_propTypes.default.bool),
139
140
  active: _propTypes.default.bool,
140
141
  disabled: _propTypes.default.bool,
141
- pullLeft: (0, _deprecatePropType.default)(_propTypes.default.bool),
142
+ pullLeft: (0, _propTypes2.deprecatePropType)(_propTypes.default.bool),
142
143
  submenu: _propTypes.default.element,
143
144
  onSelect: _propTypes.default.func,
144
145
  onClick: _propTypes.default.func,
@@ -10,15 +10,16 @@ var _extends2 = _interopRequireDefault(require("@babel/runtime/helpers/extends")
10
10
  var _objectWithoutPropertiesLoose2 = _interopRequireDefault(require("@babel/runtime/helpers/objectWithoutPropertiesLoose"));
11
11
  var _react = _interopRequireWildcard(require("react"));
12
12
  var _omit2 = _interopRequireDefault(require("lodash/omit"));
13
- var _Menu = _interopRequireDefault(require("../Menu/Menu"));
14
- var _MenuItem = _interopRequireDefault(require("../Menu/MenuItem"));
13
+ var _Menu = _interopRequireDefault(require("../internals/Menu/Menu"));
14
+ var _MenuItem = _interopRequireDefault(require("../internals/Menu/MenuItem"));
15
+ var _Menubar = _interopRequireDefault(require("../internals/Menu/Menubar"));
16
+ var _propTypes = require("../internals/propTypes");
15
17
  var _utils = require("../utils");
16
- var _propTypes = _interopRequireDefault(require("prop-types"));
18
+ var _propTypes2 = _interopRequireDefault(require("prop-types"));
17
19
  var _AngleLeft = _interopRequireDefault(require("@rsuite/icons/legacy/AngleLeft"));
18
20
  var _AngleRight = _interopRequireDefault(require("@rsuite/icons/legacy/AngleRight"));
19
21
  var _useCustom2 = _interopRequireDefault(require("../utils/useCustom"));
20
22
  var _DropdownContext = _interopRequireDefault(require("./DropdownContext"));
21
- var _Menubar = _interopRequireDefault(require("../Menu/Menubar"));
22
23
  var _Nav = _interopRequireDefault(require("../Nav"));
23
24
  var _NavContext = _interopRequireDefault(require("../Nav/NavContext"));
24
25
  var _warnOnce = _interopRequireDefault(require("../utils/warnOnce"));
@@ -166,21 +167,21 @@ var DropdownMenu = /*#__PURE__*/_react.default.forwardRef(function (props, ref)
166
167
  });
167
168
  DropdownMenu.displayName = 'Dropdown.Menu';
168
169
  DropdownMenu.propTypes = {
169
- active: _propTypes.default.bool,
170
- activeKey: _propTypes.default.any,
171
- className: _propTypes.default.string,
172
- children: _propTypes.default.node,
173
- icon: _propTypes.default.any,
174
- classPrefix: _propTypes.default.string,
175
- pullLeft: _propTypes.default.bool,
176
- title: _propTypes.default.node,
177
- open: _propTypes.default.bool,
178
- trigger: _propTypes.default.oneOf(['click', 'hover']),
179
- eventKey: _propTypes.default.any,
180
- expanded: _propTypes.default.bool,
181
- collapsible: _propTypes.default.bool,
182
- onSelect: _propTypes.default.func,
183
- onToggle: _propTypes.default.func
170
+ active: _propTypes2.default.bool,
171
+ activeKey: _propTypes2.default.any,
172
+ className: _propTypes2.default.string,
173
+ children: _propTypes2.default.node,
174
+ icon: _propTypes2.default.any,
175
+ classPrefix: _propTypes2.default.string,
176
+ pullLeft: _propTypes2.default.bool,
177
+ title: _propTypes2.default.node,
178
+ open: _propTypes2.default.bool,
179
+ trigger: (0, _propTypes.oneOf)(['click', 'hover']),
180
+ eventKey: _propTypes2.default.any,
181
+ expanded: _propTypes2.default.bool,
182
+ collapsible: _propTypes2.default.bool,
183
+ onSelect: _propTypes2.default.func,
184
+ onToggle: _propTypes2.default.func
184
185
  };
185
186
  var _default = DropdownMenu;
186
187
  exports.default = _default;
@@ -11,6 +11,7 @@ var _propTypes = _interopRequireDefault(require("prop-types"));
11
11
  var _Button = _interopRequireDefault(require("../Button"));
12
12
  var _utils = require("../utils");
13
13
  var _useToggleCaret = _interopRequireDefault(require("../utils/useToggleCaret"));
14
+ var _propTypes2 = require("../internals/propTypes");
14
15
  var DropdownToggle = /*#__PURE__*/_react.default.forwardRef(function (props, ref) {
15
16
  var _props$as = props.as,
16
17
  Component = _props$as === void 0 ? _Button.default : _props$as,
@@ -53,7 +54,7 @@ DropdownToggle.propTypes = {
53
54
  noCaret: _propTypes.default.bool,
54
55
  as: _propTypes.default.elementType,
55
56
  renderToggle: _propTypes.default.func,
56
- placement: _propTypes.default.oneOf(['bottomStart', 'bottomEnd', 'topStart', 'topEnd', 'leftStart', 'rightStart', 'leftEnd', 'rightEnd'])
57
+ placement: (0, _propTypes2.oneOf)(['bottomStart', 'bottomEnd', 'topStart', 'topEnd', 'leftStart', 'rightStart', 'leftEnd', 'rightEnd'])
57
58
  };
58
59
  var _default = DropdownToggle;
59
60
  exports.default = _default;
@@ -10,6 +10,7 @@ var _react = _interopRequireDefault(require("react"));
10
10
  var _propTypes = _interopRequireDefault(require("prop-types"));
11
11
  var _utils = require("../utils");
12
12
  var _FlexboxGridItem = _interopRequireDefault(require("./FlexboxGridItem"));
13
+ var _propTypes2 = require("../internals/propTypes");
13
14
  /**
14
15
  * The FlexboxGrid component is a box that can be used to layout other components.
15
16
  * @see https://rsuitejs.com/components/flexbox-grid
@@ -39,8 +40,8 @@ FlexboxGrid.displayName = 'FlexboxGrid';
39
40
  FlexboxGrid.propTypes = {
40
41
  className: _propTypes.default.string,
41
42
  classPrefix: _propTypes.default.string,
42
- align: _propTypes.default.oneOf(['top', 'middle', 'bottom']),
43
- justify: _propTypes.default.oneOf(['start', 'end', 'center', 'space-around', 'space-between'])
43
+ align: (0, _propTypes2.oneOf)(['top', 'middle', 'bottom']),
44
+ justify: (0, _propTypes2.oneOf)(['start', 'end', 'center', 'space-around', 'space-between'])
44
45
  };
45
46
  var _default = FlexboxGrid;
46
47
  exports.default = _default;
@@ -32,6 +32,20 @@ export interface FormProps<T = Record<string, any>, errorMsgType = any, E = {
32
32
  disabled?: boolean;
33
33
  /** The error message comes from context */
34
34
  errorFromContext?: boolean;
35
+ /**
36
+ * The form data is nested.
37
+ * You may now nest fields with "dot syntax" (e.g. address.city).
38
+ *
39
+ * @default false
40
+ * @version v5.51.0
41
+ * @example
42
+ * ```jsx
43
+ * <Form formValue={{ address: { city: 'Shanghai' } }} nestedField>
44
+ * <FormControl name="address.city" />
45
+ * </Form>
46
+ * ```
47
+ */
48
+ nestedField?: boolean;
35
49
  /** Callback fired when data changing */
36
50
  onChange?: (formValue: T, event?: React.SyntheticEvent) => void;
37
51
  /** Callback fired when error checking */
package/cjs/Form/Form.js CHANGED
@@ -10,6 +10,7 @@ var _objectWithoutPropertiesLoose2 = _interopRequireDefault(require("@babel/runt
10
10
  var _react = _interopRequireWildcard(require("react"));
11
11
  var _propTypes = _interopRequireDefault(require("prop-types"));
12
12
  var _omit = _interopRequireDefault(require("lodash/omit"));
13
+ var _set = _interopRequireDefault(require("lodash/set"));
13
14
  var _schemaTyped = require("schema-typed");
14
15
  var _FormContext = _interopRequireWildcard(require("./FormContext"));
15
16
  var _FormControl = _interopRequireDefault(require("../FormControl"));
@@ -20,6 +21,7 @@ var _FormHelpText = _interopRequireDefault(require("../FormHelpText"));
20
21
  var _useFormClassNames = require("./useFormClassNames");
21
22
  var _useSchemaModel2 = _interopRequireDefault(require("./useSchemaModel"));
22
23
  var _utils = require("../utils");
24
+ var _propTypes2 = require("../internals/propTypes");
23
25
  /**
24
26
  * The `Form` component is a form interface for collecting and validating user input.
25
27
  * @see https://rsuitejs.com/components/form
@@ -36,6 +38,8 @@ var Form = /*#__PURE__*/_react.default.forwardRef(function (props, ref) {
36
38
  formValue = props.formValue,
37
39
  formError = props.formError,
38
40
  fluid = props.fluid,
41
+ _props$nestedField = props.nestedField,
42
+ nestedField = _props$nestedField === void 0 ? false : _props$nestedField,
39
43
  _props$layout = props.layout,
40
44
  layout = _props$layout === void 0 ? 'vertical' : _props$layout,
41
45
  _props$model = props.model,
@@ -49,7 +53,7 @@ var Form = /*#__PURE__*/_react.default.forwardRef(function (props, ref) {
49
53
  onCheck = props.onCheck,
50
54
  onError = props.onError,
51
55
  onChange = props.onChange,
52
- rest = (0, _objectWithoutPropertiesLoose2.default)(props, ["checkTrigger", "classPrefix", "errorFromContext", "formDefaultValue", "formValue", "formError", "fluid", "layout", "model", "readOnly", "plaintext", "className", "children", "disabled", "onSubmit", "onCheck", "onError", "onChange"]);
56
+ rest = (0, _objectWithoutPropertiesLoose2.default)(props, ["checkTrigger", "classPrefix", "errorFromContext", "formDefaultValue", "formValue", "formError", "fluid", "nestedField", "layout", "model", "readOnly", "plaintext", "className", "children", "disabled", "onSubmit", "onCheck", "onError", "onChange"]);
53
57
  var _useSchemaModel = (0, _useSchemaModel2.default)(formModel),
54
58
  getCombinedModel = _useSchemaModel.getCombinedModel,
55
59
  pushFieldRule = _useSchemaModel.pushFieldRule,
@@ -79,7 +83,7 @@ var Form = /*#__PURE__*/_react.default.forwardRef(function (props, ref) {
79
83
  * The error message after verification is returned in the callback.
80
84
  * @param callback
81
85
  */
82
- var check = (0, _react.useCallback)(function (callback) {
86
+ var check = (0, _utils.useEventCallback)(function (callback) {
83
87
  var formValue = realFormValue || {};
84
88
  var formError = {};
85
89
  var errorCount = 0;
@@ -99,14 +103,14 @@ var Form = /*#__PURE__*/_react.default.forwardRef(function (props, ref) {
99
103
  return false;
100
104
  }
101
105
  return true;
102
- }, [realFormValue, getCombinedModel, setFormError, onCheck, onError]);
106
+ });
103
107
 
104
108
  /**
105
109
  * Check the data field
106
110
  * @param fieldName
107
111
  * @param callback
108
112
  */
109
- var checkForField = (0, _react.useCallback)(function (fieldName, callback) {
113
+ var checkForField = (0, _utils.useEventCallback)(function (fieldName, callback) {
110
114
  var _extends2;
111
115
  var formValue = realFormValue || {};
112
116
  var model = getCombinedModel();
@@ -119,12 +123,12 @@ var Form = /*#__PURE__*/_react.default.forwardRef(function (props, ref) {
119
123
  onError === null || onError === void 0 ? void 0 : onError(formError);
120
124
  }
121
125
  return !checkResult.hasError;
122
- }, [realFormValue, getCombinedModel, realFormError, setFormError, onCheck, onError]);
126
+ });
123
127
 
124
128
  /**
125
129
  * Check form data asynchronously and return a Promise
126
130
  */
127
- var checkAsync = (0, _react.useCallback)(function () {
131
+ var checkAsync = (0, _utils.useEventCallback)(function () {
128
132
  var formValue = realFormValue || {};
129
133
  var promises = [];
130
134
  var keys = [];
@@ -152,13 +156,13 @@ var Form = /*#__PURE__*/_react.default.forwardRef(function (props, ref) {
152
156
  formError: formError
153
157
  };
154
158
  });
155
- }, [realFormValue, getCombinedModel, onCheck, setFormError, onError]);
159
+ });
156
160
 
157
161
  /**
158
162
  * Asynchronously check form fields and return Promise
159
163
  * @param fieldName
160
164
  */
161
- var checkForFieldAsync = (0, _react.useCallback)(function (fieldName) {
165
+ var checkForFieldAsync = (0, _utils.useEventCallback)(function (fieldName) {
162
166
  var formValue = realFormValue || {};
163
167
  var model = getCombinedModel();
164
168
  return model.checkForFieldAsync(fieldName, formValue).then(function (checkResult) {
@@ -171,19 +175,19 @@ var Form = /*#__PURE__*/_react.default.forwardRef(function (props, ref) {
171
175
  }
172
176
  return checkResult;
173
177
  });
174
- }, [realFormValue, getCombinedModel, realFormError, onCheck, setFormError, onError]);
175
- var cleanErrors = (0, _react.useCallback)(function () {
178
+ });
179
+ var cleanErrors = (0, _utils.useEventCallback)(function () {
176
180
  setFormError({});
177
- }, [setFormError]);
178
- var cleanErrorForField = (0, _react.useCallback)(function (fieldName) {
181
+ });
182
+ var cleanErrorForField = (0, _utils.useEventCallback)(function (fieldName) {
179
183
  setFormError((0, _omit.default)(realFormError, [fieldName]));
180
- }, [realFormError, setFormError]);
181
- var resetErrors = (0, _react.useCallback)(function (formError) {
184
+ });
185
+ var resetErrors = (0, _utils.useEventCallback)(function (formError) {
182
186
  if (formError === void 0) {
183
187
  formError = {};
184
188
  }
185
189
  setFormError(formError);
186
- }, [setFormError]);
190
+ });
187
191
  (0, _react.useImperativeHandle)(ref, function () {
188
192
  return {
189
193
  root: rootRef.current,
@@ -196,7 +200,7 @@ var Form = /*#__PURE__*/_react.default.forwardRef(function (props, ref) {
196
200
  resetErrors: resetErrors
197
201
  };
198
202
  });
199
- var removeFieldError = (0, _react.useCallback)(function (name) {
203
+ var removeFieldError = (0, _utils.useEventCallback)(function (name) {
200
204
  /**
201
205
  * when this function is called when the children component is unmount, it's an old render frame
202
206
  * so use Ref to get future error
@@ -205,8 +209,8 @@ var Form = /*#__PURE__*/_react.default.forwardRef(function (props, ref) {
205
209
  realFormErrorRef.current = formError;
206
210
  setFormError(formError);
207
211
  onCheck === null || onCheck === void 0 ? void 0 : onCheck(formError);
208
- }, [onCheck, setFormError]);
209
- var removeFieldValue = (0, _react.useCallback)(function (name) {
212
+ });
213
+ var removeFieldValue = (0, _utils.useEventCallback)(function (name) {
210
214
  /**
211
215
  * when this function is called when the children component is unmount, it's an old render frame
212
216
  * so use Ref to get future value
@@ -215,8 +219,8 @@ var Form = /*#__PURE__*/_react.default.forwardRef(function (props, ref) {
215
219
  realFormValueRef.current = formValue;
216
220
  setFormValue(formValue);
217
221
  onChange === null || onChange === void 0 ? void 0 : onChange(formValue);
218
- }, [onChange, setFormValue]);
219
- var handleSubmit = (0, _react.useCallback)(function (event) {
222
+ });
223
+ var handleSubmit = (0, _utils.useEventCallback)(function (event) {
220
224
  if (disabled || readOnly || plaintext) {
221
225
  return;
222
226
  }
@@ -224,24 +228,29 @@ var Form = /*#__PURE__*/_react.default.forwardRef(function (props, ref) {
224
228
  event.stopPropagation();
225
229
  var checkStatus = check();
226
230
  onSubmit === null || onSubmit === void 0 ? void 0 : onSubmit(checkStatus, event);
227
- }, [disabled, readOnly, plaintext, check, onSubmit]);
228
- var handleFieldError = (0, _react.useCallback)(function (name, errorMessage) {
231
+ });
232
+ var handleFieldError = (0, _utils.useEventCallback)(function (name, errorMessage) {
229
233
  var _extends4;
230
234
  var formError = (0, _extends6.default)({}, realFormError, (_extends4 = {}, _extends4[name] = errorMessage, _extends4));
231
235
  setFormError(formError);
232
236
  onError === null || onError === void 0 ? void 0 : onError(formError);
233
237
  onCheck === null || onCheck === void 0 ? void 0 : onCheck(formError);
234
- }, [realFormError, setFormError, onError, onCheck]);
235
- var handleFieldSuccess = (0, _react.useCallback)(function (name) {
238
+ });
239
+ var handleFieldSuccess = (0, _utils.useEventCallback)(function (name) {
236
240
  removeFieldError(name);
237
- }, [removeFieldError]);
238
- var handleFieldChange = (0, _react.useCallback)(function (name, value, event) {
241
+ });
242
+ var setFieldValue = function setFieldValue(formValue, fieldName, fieldValue) {
239
243
  var _extends5;
240
- var formValue = realFormValue;
241
- var nextFormValue = (0, _extends6.default)({}, formValue, (_extends5 = {}, _extends5[name] = value, _extends5));
244
+ if (nestedField) {
245
+ return (0, _set.default)((0, _extends6.default)({}, formValue), fieldName, fieldValue);
246
+ }
247
+ return (0, _extends6.default)({}, formValue, (_extends5 = {}, _extends5[fieldName] = fieldValue, _extends5));
248
+ };
249
+ var handleFieldChange = (0, _utils.useEventCallback)(function (name, value, event) {
250
+ var nextFormValue = setFieldValue(realFormValue, name, value);
242
251
  setFormValue(nextFormValue);
243
252
  onChange === null || onChange === void 0 ? void 0 : onChange(nextFormValue, event);
244
- }, [realFormValue, setFormValue, onChange]);
253
+ });
245
254
  var rootRef = (0, _react.useRef)(null);
246
255
  var formContextValue = (0, _react.useMemo)(function () {
247
256
  return {
@@ -252,6 +261,7 @@ var Form = /*#__PURE__*/_react.default.forwardRef(function (props, ref) {
252
261
  plaintext: plaintext,
253
262
  disabled: disabled,
254
263
  formError: realFormError,
264
+ nestedField: nestedField,
255
265
  removeFieldValue: removeFieldValue,
256
266
  removeFieldError: removeFieldError,
257
267
  pushFieldRule: pushFieldRule,
@@ -260,7 +270,7 @@ var Form = /*#__PURE__*/_react.default.forwardRef(function (props, ref) {
260
270
  onFieldError: handleFieldError,
261
271
  onFieldSuccess: handleFieldSuccess
262
272
  };
263
- }, [getCombinedModel, checkTrigger, errorFromContext, readOnly, plaintext, disabled, realFormError, removeFieldValue, removeFieldError, pushFieldRule, removeFieldRule, handleFieldChange, handleFieldError, handleFieldSuccess]);
273
+ }, [getCombinedModel, checkTrigger, errorFromContext, readOnly, plaintext, disabled, realFormError, nestedField, removeFieldValue, removeFieldError, pushFieldRule, removeFieldRule, handleFieldChange, handleFieldError, handleFieldSuccess]);
264
274
  return /*#__PURE__*/_react.default.createElement("form", (0, _extends6.default)({}, rest, {
265
275
  ref: rootRef,
266
276
  onSubmit: handleSubmit,
@@ -283,12 +293,12 @@ Form.propTypes = {
283
293
  classPrefix: _propTypes.default.string,
284
294
  children: _propTypes.default.node,
285
295
  errorFromContext: _propTypes.default.bool,
286
- layout: _propTypes.default.oneOf(['horizontal', 'vertical', 'inline']),
296
+ layout: (0, _propTypes2.oneOf)(['horizontal', 'vertical', 'inline']),
287
297
  fluid: _propTypes.default.bool,
288
298
  formValue: _propTypes.default.object,
289
299
  formDefaultValue: _propTypes.default.object,
290
300
  formError: _propTypes.default.object,
291
- checkTrigger: _propTypes.default.oneOf(['change', 'blur', 'none']),
301
+ checkTrigger: (0, _propTypes2.oneOf)(['change', 'blur', 'none']),
292
302
  onChange: _propTypes.default.func,
293
303
  onError: _propTypes.default.func,
294
304
  onCheck: _propTypes.default.func,
@@ -7,6 +7,7 @@ interface TrulyFormContextValue<T = Record<string, any>, errorMsgType = any, E =
7
7
  }> {
8
8
  getCombinedModel: () => Schema;
9
9
  formError: E;
10
+ nestedField: boolean;
10
11
  removeFieldValue: (name: string) => void;
11
12
  removeFieldError: (name: string) => void;
12
13
  pushFieldRule: (name: string, fieldRule: FieldRuleType) => void;
@@ -6,7 +6,7 @@ var _interopRequireWildcard = require("@babel/runtime/helpers/interopRequireWild
6
6
  exports.__esModule = true;
7
7
  exports.default = void 0;
8
8
  var _taggedTemplateLiteralLoose2 = _interopRequireDefault(require("@babel/runtime/helpers/taggedTemplateLiteralLoose"));
9
- var _extends2 = _interopRequireDefault(require("@babel/runtime/helpers/extends"));
9
+ var _extends3 = _interopRequireDefault(require("@babel/runtime/helpers/extends"));
10
10
  var _objectWithoutPropertiesLoose2 = _interopRequireDefault(require("@babel/runtime/helpers/objectWithoutPropertiesLoose"));
11
11
  var _react = _interopRequireWildcard(require("react"));
12
12
  var _propTypes = _interopRequireDefault(require("prop-types"));
@@ -18,6 +18,7 @@ var _FormErrorMessage = _interopRequireDefault(require("../FormErrorMessage"));
18
18
  var _utils = require("../utils");
19
19
  var _FormContext = _interopRequireWildcard(require("../Form/FormContext"));
20
20
  var _FormGroup = require("../FormGroup/FormGroup");
21
+ var _propTypes2 = require("../internals/propTypes");
21
22
  var _useRegisterModel = _interopRequireDefault(require("./useRegisterModel"));
22
23
  var _Toggle = _interopRequireDefault(require("../Toggle"));
23
24
  var _templateObject;
@@ -37,6 +38,7 @@ var FormControl = /*#__PURE__*/_react.default.forwardRef(function (props, ref) {
37
38
  disabledContext = _useContext.disabled,
38
39
  errorFromContext = _useContext.errorFromContext,
39
40
  formError = _useContext.formError,
41
+ nestedField = _useContext.nestedField,
40
42
  removeFieldValue = _useContext.removeFieldValue,
41
43
  removeFieldError = _useContext.removeFieldError,
42
44
  pushFieldRule = _useContext.pushFieldRule,
@@ -86,46 +88,67 @@ var FormControl = /*#__PURE__*/_react.default.forwardRef(function (props, ref) {
86
88
  });
87
89
  var trigger = checkTrigger || contextCheckTrigger;
88
90
  var formValue = (0, _react.useContext)(_FormContext.FormValueContext);
89
- var val = (0, _isUndefined.default)(value) ? (0, _get.default)(formValue, name) : value;
91
+ var getFieldValue = function getFieldValue(fieldName) {
92
+ if (!(0, _isUndefined.default)(value)) {
93
+ return value;
94
+ }
95
+ return nestedField ? (0, _get.default)(formValue, fieldName) : formValue === null || formValue === void 0 ? void 0 : formValue[name];
96
+ };
97
+ var setFieldValue = function setFieldValue(fieldName, fieldValue) {
98
+ var _extends2;
99
+ if (nestedField) {
100
+ return (0, _set.default)((0, _extends3.default)({}, formValue), fieldName, fieldValue);
101
+ }
102
+ return (0, _extends3.default)({}, formValue, (_extends2 = {}, _extends2[fieldName] = fieldValue, _extends2));
103
+ };
104
+ var getFieldError = function getFieldError(fieldName) {
105
+ if (nestedField) {
106
+ var _name = fieldName.includes('.') ? fieldName.replace('.', '.object.') + '.errorMessage' : fieldName;
107
+ return (0, _get.default)(formError, _name);
108
+ }
109
+ return formError === null || formError === void 0 ? void 0 : formError[fieldName];
110
+ };
111
+ var fieldValue = getFieldValue(name);
90
112
  var _useClassNames = (0, _utils.useClassNames)(classPrefix),
91
113
  withClassPrefix = _useClassNames.withClassPrefix,
92
114
  prefix = _useClassNames.prefix;
93
115
  var classes = withClassPrefix('wrapper');
94
- var handleFieldChange = function handleFieldChange(value, event) {
116
+ var handleFieldChange = (0, _utils.useEventCallback)(function (value, event) {
95
117
  handleFieldCheck(value, trigger === 'change');
96
118
  onFieldChange === null || onFieldChange === void 0 ? void 0 : onFieldChange(name, value, event);
97
119
  onChange === null || onChange === void 0 ? void 0 : onChange(value, event);
98
- };
99
- var handleFieldBlur = function handleFieldBlur(event) {
100
- handleFieldCheck(val, trigger === 'blur');
120
+ });
121
+ var handleFieldBlur = (0, _utils.useEventCallback)(function (event) {
122
+ handleFieldCheck(fieldValue, trigger === 'blur');
101
123
  onBlur === null || onBlur === void 0 ? void 0 : onBlur(event);
102
- };
103
- var handleFieldCheck = function handleFieldCheck(value, isCheckTrigger) {
124
+ });
125
+ var handleFieldCheck = (0, _utils.useEventCallback)(function (value, isCheckTrigger) {
126
+ var checkFieldName = nestedField ? name.split('.')[0] : name;
104
127
  var callbackEvents = function callbackEvents(checkResult) {
105
128
  // The relevant event is triggered only when the inspection is allowed.
106
129
  if (isCheckTrigger) {
107
130
  if (checkResult.hasError) {
108
- onFieldError === null || onFieldError === void 0 ? void 0 : onFieldError(name, (checkResult === null || checkResult === void 0 ? void 0 : checkResult.errorMessage) || checkResult);
131
+ onFieldError === null || onFieldError === void 0 ? void 0 : onFieldError(checkFieldName, (checkResult === null || checkResult === void 0 ? void 0 : checkResult.errorMessage) || checkResult);
109
132
  } else {
110
- onFieldSuccess === null || onFieldSuccess === void 0 ? void 0 : onFieldSuccess(name);
133
+ onFieldSuccess === null || onFieldSuccess === void 0 ? void 0 : onFieldSuccess(checkFieldName);
111
134
  }
112
135
  }
113
136
  return checkResult;
114
137
  };
115
- var nextFormValue = (0, _set.default)(formValue || {}, name, value);
138
+ var nextFormValue = setFieldValue(name, value);
116
139
  var model = getCombinedModel();
117
140
  if (checkAsync) {
118
- return model === null || model === void 0 ? void 0 : model.checkForFieldAsync(name, nextFormValue).then(function (checkResult) {
141
+ return model === null || model === void 0 ? void 0 : model.checkForFieldAsync(checkFieldName, nextFormValue).then(function (checkResult) {
119
142
  return callbackEvents(checkResult);
120
143
  });
121
144
  }
122
- return Promise.resolve(callbackEvents(model === null || model === void 0 ? void 0 : model.checkForField(name, nextFormValue)));
123
- };
145
+ return Promise.resolve(callbackEvents(model === null || model === void 0 ? void 0 : model.checkForField(checkFieldName, nextFormValue)));
146
+ });
124
147
  var messageNode = null;
125
148
  if (!(0, _isUndefined.default)(errorMessage)) {
126
149
  messageNode = errorMessage;
127
150
  } else if (errorFromContext) {
128
- var fieldError = formError === null || formError === void 0 ? void 0 : formError[name];
151
+ var fieldError = getFieldError(name);
129
152
  if (typeof fieldError === 'string' || !(fieldError !== null && fieldError !== void 0 && fieldError.array) && !(fieldError !== null && fieldError !== void 0 && fieldError.object) && fieldError !== null && fieldError !== void 0 && fieldError.hasError) {
130
153
  messageNode = fieldError;
131
154
  }
@@ -139,12 +162,12 @@ var FormControl = /*#__PURE__*/_react.default.forwardRef(function (props, ref) {
139
162
  if (AccepterComponent === _Toggle.default) {
140
163
  valueKey = 'checked';
141
164
  }
142
- var accepterProps = (_accepterProps = {}, _accepterProps[valueKey] = val === undefined ? defaultValue : val, _accepterProps);
165
+ var accepterProps = (_accepterProps = {}, _accepterProps[valueKey] = fieldValue === undefined ? defaultValue : fieldValue, _accepterProps);
143
166
  return /*#__PURE__*/_react.default.createElement(Component, {
144
167
  className: classes,
145
168
  ref: ref,
146
169
  "data-testid": "form-control-wrapper"
147
- }, /*#__PURE__*/_react.default.createElement(AccepterComponent, (0, _extends2.default)({
170
+ }, /*#__PURE__*/_react.default.createElement(AccepterComponent, (0, _extends3.default)({
148
171
  id: controlId,
149
172
  "aria-labelledby": controlId ? controlId + "-control-label" : null,
150
173
  "aria-describedby": ariaDescribedby,
@@ -158,7 +181,7 @@ var FormControl = /*#__PURE__*/_react.default.forwardRef(function (props, ref) {
158
181
  onChange: handleFieldChange,
159
182
  onBlur: handleFieldBlur
160
183
  })), /*#__PURE__*/_react.default.createElement(_FormErrorMessage.default, {
161
- id: controlId + "-error-message",
184
+ id: controlId ? controlId + "-error-message" : undefined,
162
185
  role: "alert",
163
186
  "aria-relevant": "all",
164
187
  show: !!messageNode,
@@ -169,14 +192,14 @@ var FormControl = /*#__PURE__*/_react.default.forwardRef(function (props, ref) {
169
192
  FormControl.displayName = 'FormControl';
170
193
  FormControl.propTypes = {
171
194
  name: _propTypes.default.string.isRequired,
172
- checkTrigger: _propTypes.default.oneOf(['change', 'blur', 'none']),
195
+ checkTrigger: (0, _propTypes2.oneOf)(['change', 'blur', 'none']),
173
196
  checkAsync: _propTypes.default.bool,
174
197
  accepter: _propTypes.default.any,
175
198
  onChange: _propTypes.default.func,
176
199
  onBlur: _propTypes.default.func,
177
200
  classPrefix: _propTypes.default.string,
178
201
  errorMessage: _propTypes.default.node,
179
- errorPlacement: _propTypes.default.oneOf(['bottomStart', 'bottomEnd', 'topStart', 'topEnd', 'leftStart', 'rightStart', 'leftEnd', 'rightEnd']),
202
+ errorPlacement: (0, _propTypes2.oneOf)(['bottomStart', 'bottomEnd', 'topStart', 'topEnd', 'leftStart', 'rightStart', 'leftEnd', 'rightEnd']),
180
203
  value: _propTypes.default.any
181
204
  };
182
205
  var _default = FormControl;
@@ -11,6 +11,7 @@ var _react = _interopRequireDefault(require("react"));
11
11
  var _propTypes = _interopRequireDefault(require("prop-types"));
12
12
  var _kebabCase = _interopRequireDefault(require("lodash/kebabCase"));
13
13
  var _utils = require("../utils");
14
+ var _propTypes2 = require("../internals/propTypes");
14
15
  var _templateObject, _templateObject2;
15
16
  /**
16
17
  * The `<Form.ErrorMessage>` component is used to display error messages in the form.
@@ -53,7 +54,7 @@ FormErrorMessage.propTypes = {
53
54
  classPrefix: _propTypes.default.string,
54
55
  children: _propTypes.default.node,
55
56
  className: _propTypes.default.string,
56
- placement: _propTypes.default.oneOf(['bottomStart', 'bottomEnd', 'topStart', 'topEnd', 'leftStart', 'rightStart', 'leftEnd', 'rightEnd'])
57
+ placement: (0, _propTypes2.oneOf)(['bottomStart', 'bottomEnd', 'topStart', 'topEnd', 'leftStart', 'rightStart', 'leftEnd', 'rightEnd'])
57
58
  };
58
59
  var _default = FormErrorMessage;
59
60
  exports.default = _default;
@@ -22,13 +22,14 @@ var FormGroup = /*#__PURE__*/_react.default.forwardRef(function (props, ref) {
22
22
  Component = _props$as === void 0 ? 'div' : _props$as,
23
23
  _props$classPrefix = props.classPrefix,
24
24
  classPrefix = _props$classPrefix === void 0 ? 'form-group' : _props$classPrefix,
25
- controlId = props.controlId,
25
+ controlIdProp = props.controlId,
26
26
  className = props.className,
27
27
  rest = (0, _objectWithoutPropertiesLoose2.default)(props, ["as", "classPrefix", "controlId", "className"]);
28
28
  var _useClassNames = (0, _utils.useClassNames)(classPrefix),
29
29
  withClassPrefix = _useClassNames.withClassPrefix,
30
30
  merge = _useClassNames.merge;
31
31
  var classes = merge(className, withClassPrefix());
32
+ var controlId = (0, _utils.useUniqueId)('rs-', controlIdProp);
32
33
  var contextValue = (0, _react.useMemo)(function () {
33
34
  return {
34
35
  controlId: controlId
@@ -8,6 +8,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 _propTypes = _interopRequireDefault(require("prop-types"));
11
+ var _propTypes2 = require("../internals/propTypes");
11
12
  var _utils = require("../utils");
12
13
  var _Button = _interopRequireDefault(require("../Button"));
13
14
  /**
@@ -43,7 +44,7 @@ IconButton.propTypes = {
43
44
  classPrefix: _propTypes.default.string,
44
45
  circle: _propTypes.default.bool,
45
46
  children: _propTypes.default.node,
46
- placement: _propTypes.default.oneOf(['left', 'right'])
47
+ placement: (0, _propTypes2.oneOf)(['left', 'right'])
47
48
  };
48
49
  var _default = IconButton;
49
50
  exports.default = _default;
@@ -11,8 +11,9 @@ var _react = _interopRequireWildcard(require("react"));
11
11
  var _propTypes = _interopRequireDefault(require("prop-types"));
12
12
  var _FormGroup = require("../FormGroup/FormGroup");
13
13
  var _InputGroup = require("../InputGroup/InputGroup");
14
- var _Plaintext = _interopRequireDefault(require("../Plaintext"));
14
+ var _Plaintext = _interopRequireDefault(require("../internals/Plaintext"));
15
15
  var _utils = require("../utils");
16
+ var _propTypes2 = require("../internals/propTypes");
16
17
  /**
17
18
  * The `<Input>` component is used to get user input in a text field.
18
19
  *
@@ -98,8 +99,8 @@ Input.propTypes = {
98
99
  disabled: _propTypes.default.bool,
99
100
  value: _propTypes.default.oneOfType([_propTypes.default.string, _propTypes.default.number]),
100
101
  defaultValue: _propTypes.default.oneOfType([_propTypes.default.string, _propTypes.default.number]),
101
- size: _propTypes.default.oneOf(['lg', 'md', 'sm', 'xs']),
102
- inputRef: _utils.TypeChecker.refType,
102
+ size: (0, _propTypes2.oneOf)(['lg', 'md', 'sm', 'xs']),
103
+ inputRef: _propTypes2.refType,
103
104
  onChange: _propTypes.default.func,
104
105
  onFocus: _propTypes.default.func,
105
106
  onBlur: _propTypes.default.func,
@@ -12,6 +12,7 @@ var _propTypes = _interopRequireDefault(require("prop-types"));
12
12
  var _InputGroupAddon = _interopRequireDefault(require("./InputGroupAddon"));
13
13
  var _InputGroupButton = _interopRequireDefault(require("./InputGroupButton"));
14
14
  var _utils = require("../utils");
15
+ var _propTypes2 = require("../internals/propTypes");
15
16
  var InputGroupContext = /*#__PURE__*/_react.default.createContext(null);
16
17
  exports.InputGroupContext = InputGroupContext;
17
18
  /**
@@ -79,7 +80,7 @@ InputGroup.propTypes = {
79
80
  children: _propTypes.default.node,
80
81
  disabled: _propTypes.default.bool,
81
82
  inside: _propTypes.default.bool,
82
- size: _propTypes.default.oneOf(['lg', 'md', 'sm', 'xs'])
83
+ size: (0, _propTypes2.oneOf)(['lg', 'md', 'sm', 'xs'])
83
84
  };
84
85
  InputGroup.Addon = _InputGroupAddon.default;
85
86
  InputGroup.Button = _InputGroupButton.default;