rsuite 6.0.0-canary-20250424 → 6.0.0-canary-20250620

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 (927) hide show
  1. package/Accordion/styles/index.css +645 -325
  2. package/Animation/styles/index.css +153 -141
  3. package/AutoComplete/styles/index.css +2408 -2061
  4. package/Avatar/styles/index.css +227 -76
  5. package/AvatarGroup/styles/index.css +280 -107
  6. package/Badge/styles/index.css +335 -174
  7. package/Box/styles/index.css +132 -94
  8. package/Breadcrumb/styles/index.css +225 -71
  9. package/Button/styles/index.css +1199 -1016
  10. package/ButtonGroup/styles/index.css +221 -54
  11. package/ButtonToolbar/styles/index.css +274 -98
  12. package/CHANGELOG.md +66 -0
  13. package/Calendar/styles/index.css +1866 -1737
  14. package/Card/styles/index.css +242 -92
  15. package/CardGroup/styles/index.css +185 -6
  16. package/Carousel/styles/index.css +369 -213
  17. package/CascadeTree/styles/index.css +376 -237
  18. package/Cascader/styles/index.css +2494 -2146
  19. package/Center/styles/index.css +185 -6
  20. package/CheckPicker/styles/index.css +2555 -2193
  21. package/CheckTree/styles/index.css +2640 -2276
  22. package/CheckTreePicker/styles/index.css +2652 -2286
  23. package/Checkbox/styles/index.css +409 -251
  24. package/CheckboxGroup/styles/index.css +189 -25
  25. package/Container/styles/index.css +186 -20
  26. package/Content/styles/index.css +181 -15
  27. package/DateInput/styles/index.css +317 -164
  28. package/DatePicker/styles/index.css +3108 -2800
  29. package/DateRangeInput/styles/index.css +317 -164
  30. package/DateRangePicker/styles/index.css +3200 -2884
  31. package/Divider/styles/index.css +251 -96
  32. package/Drawer/styles/index.css +461 -312
  33. package/Dropdown/styles/index.css +1497 -1329
  34. package/FlexboxGrid/styles/index.css +498 -284
  35. package/Footer/styles/index.css +181 -23
  36. package/Form/styles/index.css +178 -12
  37. package/FormControl/styles/index.css +210 -44
  38. package/FormControlLabel/styles/index.css +190 -31
  39. package/FormErrorMessage/styles/index.css +332 -208
  40. package/FormGroup/styles/index.css +216 -48
  41. package/FormHelpText/styles/index.css +203 -44
  42. package/FormStack/styles/index.css +191 -26
  43. package/Grid/styles/index.css +2042 -1743
  44. package/Header/styles/index.css +181 -23
  45. package/Heading/styles/index.css +238 -73
  46. package/HeadingGroup/styles/index.css +181 -2
  47. package/Highlight/styles/index.css +190 -5
  48. package/IconButton/styles/index.css +1343 -1163
  49. package/Image/styles/index.css +216 -22
  50. package/InlineEdit/styles/index.css +378 -84
  51. package/Input/styles/index.css +317 -164
  52. package/InputGroup/styles/index.css +446 -1219
  53. package/InputNumber/styles/index.css +1565 -1366
  54. package/InputPicker/styles/index.css +2497 -2156
  55. package/Kbd/styles/index.css +258 -107
  56. package/Link/styles/index.css +203 -23
  57. package/List/styles/index.css +311 -158
  58. package/Loader/styles/index.css +354 -206
  59. package/Menu/styles/index.css +325 -186
  60. package/Message/styles/index.css +494 -408
  61. package/Modal/styles/index.css +394 -224
  62. package/MultiCascadeTree/styles/index.css +2694 -2331
  63. package/MultiCascader/styles/index.css +2710 -2346
  64. package/Nav/styles/index.css +1801 -1636
  65. package/Navbar/styles/index.css +1751 -1564
  66. package/Notification/styles/index.css +369 -221
  67. package/NumberInput/styles/index.css +1565 -1366
  68. package/Pagination/styles/index.css +2625 -2390
  69. package/Panel/styles/index.css +624 -305
  70. package/PanelGroup/styles/index.css +212 -55
  71. package/PasswordInput/styles/index.css +559 -164
  72. package/PasswordStrengthMeter/styles/index.css +224 -32
  73. package/PinInput/styles/index.css +381 -207
  74. package/Placeholder/styles/index.css +364 -200
  75. package/Popover/styles/index.css +468 -298
  76. package/Progress/styles/index.css +517 -236
  77. package/ProgressCircle/package.json +3 -3
  78. package/ProgressCircle/styles/index.css +248 -0
  79. package/README.md +1 -1
  80. package/Radio/styles/index.css +406 -242
  81. package/RadioGroup/styles/index.css +277 -124
  82. package/RadioTile/styles/index.css +286 -133
  83. package/RadioTileGroup/styles/index.css +0 -0
  84. package/RangeSlider/styles/index.css +599 -458
  85. package/Rate/styles/index.css +318 -179
  86. package/SelectPicker/styles/index.css +2430 -2088
  87. package/Sidebar/styles/index.css +188 -28
  88. package/Sidenav/styles/index.css +764 -591
  89. package/Slider/styles/index.css +599 -458
  90. package/Stack/styles/index.css +268 -93
  91. package/Stat/styles/index.css +1620 -1454
  92. package/StatGroup/styles/index.css +185 -6
  93. package/Steps/styles/index.css +384 -234
  94. package/Table/styles/index.css +626 -497
  95. package/Tabs/styles/index.css +1815 -1649
  96. package/Tag/styles/index.css +1487 -139
  97. package/TagGroup/styles/index.css +185 -19
  98. package/TagInput/styles/index.css +2831 -2469
  99. package/TagPicker/styles/index.css +2827 -2466
  100. package/Text/styles/index.css +398 -224
  101. package/Textarea/styles/index.css +184 -5
  102. package/TimePicker/styles/index.css +3108 -2800
  103. package/TimeRangePicker/styles/index.css +3200 -2884
  104. package/Timeline/styles/index.css +305 -148
  105. package/Toggle/styles/index.css +606 -429
  106. package/Tooltip/styles/index.css +347 -214
  107. package/Tree/styles/index.css +2538 -2197
  108. package/TreePicker/styles/index.css +2548 -2206
  109. package/Uploader/styles/index.css +1680 -1612
  110. package/VisuallyHidden/styles/index.css +11 -11
  111. package/cjs/Affix/Affix.js +1 -2
  112. package/cjs/Animation/Bounce.js +4 -5
  113. package/cjs/Animation/Collapse.js +1 -2
  114. package/cjs/Animation/Fade.js +5 -6
  115. package/cjs/Animation/Slide.js +5 -6
  116. package/cjs/AutoComplete/AutoComplete.js +1 -2
  117. package/cjs/Avatar/Avatar.js +1 -2
  118. package/cjs/AvatarGroup/AvatarGroup.js +1 -2
  119. package/cjs/Badge/Badge.js +1 -2
  120. package/cjs/Breadcrumb/Breadcrumb.js +1 -2
  121. package/cjs/Button/Button.js +1 -2
  122. package/cjs/ButtonGroup/ButtonGroup.js +1 -2
  123. package/cjs/Calendar/CalendarContainer.js +1 -2
  124. package/cjs/Calendar/CalendarHeader.js +1 -2
  125. package/cjs/Calendar/Grid/GridRow.js +1 -2
  126. package/cjs/Calendar/MonthDropdown/MonthDropdown.js +17 -22
  127. package/cjs/Calendar/MonthDropdown/MonthDropdownItem.js +1 -2
  128. package/cjs/Calendar/TimeDropdown/TimeDropdown.js +1 -2
  129. package/cjs/Calendar/TimeDropdown/utils/scrollToTime.js +1 -2
  130. package/cjs/Calendar/hooks/useCalendarDate.js +3 -6
  131. package/cjs/Carousel/Carousel.js +1 -2
  132. package/cjs/CascadeTree/CascadeTree.js +1 -2
  133. package/cjs/CascadeTree/TreeView.js +1 -2
  134. package/cjs/CascadeTree/hooks/usePaths.js +7 -8
  135. package/cjs/Cascader/Cascader.js +1 -2
  136. package/cjs/CheckPicker/CheckPicker.js +1 -2
  137. package/cjs/CheckTree/CheckTree.js +1 -2
  138. package/cjs/CheckTree/CheckTreeNode.js +1 -2
  139. package/cjs/CheckTree/CheckTreeView.js +17 -22
  140. package/cjs/CheckTree/hooks/useTreeNodeProps.js +1 -2
  141. package/cjs/CheckTree/hooks/useTreeValue.js +4 -5
  142. package/cjs/CheckTreePicker/CheckTreePicker.d.ts +4 -0
  143. package/cjs/CheckTreePicker/CheckTreePicker.js +29 -2
  144. package/cjs/Checkbox/Checkbox.js +1 -2
  145. package/cjs/CheckboxGroup/CheckboxGroup.js +1 -2
  146. package/cjs/Container/Container.js +1 -2
  147. package/cjs/CustomProvider/CustomProvider.js +14 -4
  148. package/cjs/DOMHelper/index.js +1 -2
  149. package/cjs/DateInput/DateInput.js +5 -2
  150. package/cjs/DateInput/hooks/useDateInputState.js +6 -7
  151. package/cjs/DateInput/hooks/useIsFocused.js +4 -5
  152. package/cjs/DateInput/hooks/useKeyboardInputEvent.js +7 -8
  153. package/cjs/DateInput/test/types/TestKeyPressProps.d.ts +6 -0
  154. package/cjs/DateInput/test/types/TestKeyPressProps.js +4 -0
  155. package/cjs/DatePicker/DatePicker.js +3 -10
  156. package/cjs/DatePicker/PredefinedRanges.js +1 -2
  157. package/cjs/DatePicker/Toolbar.js +6 -7
  158. package/cjs/DatePicker/utils.js +14 -24
  159. package/cjs/DateRangeInput/DateRangeInput.js +6 -6
  160. package/cjs/DateRangePicker/Calendar.d.ts +2 -1
  161. package/cjs/DateRangePicker/Calendar.js +8 -3
  162. package/cjs/DateRangePicker/DateRangePicker.d.ts +3 -1
  163. package/cjs/DateRangePicker/DateRangePicker.js +9 -20
  164. package/cjs/DateRangePicker/DateRangePickerProvider.js +1 -2
  165. package/cjs/DateRangePicker/disabledDateUtils.js +5 -18
  166. package/cjs/DateRangePicker/hooks/useCalendarHandlers.js +7 -8
  167. package/cjs/DateRangePicker/utils.js +5 -6
  168. package/cjs/Dropdown/Dropdown.js +9 -12
  169. package/cjs/Dropdown/DropdownItem.js +6 -8
  170. package/cjs/Dropdown/DropdownMenu.js +36 -43
  171. package/cjs/Dropdown/DropdownState.js +1 -4
  172. package/cjs/Form/Form.js +1 -2
  173. package/cjs/Form/FormContext.d.ts +1 -1
  174. package/cjs/Form/FormContext.js +1 -2
  175. package/cjs/Form/hooks/useFormValidate.js +8 -13
  176. package/cjs/Form/hooks/useSchemaModel.js +6 -9
  177. package/cjs/FormControl/FormControl.d.ts +2 -2
  178. package/cjs/FormControl/FormControl.js +53 -84
  179. package/cjs/FormErrorMessage/FormErrorMessage.d.ts +2 -2
  180. package/cjs/FormGroup/FormGroup.d.ts +0 -18
  181. package/cjs/FormGroup/FormGroup.js +4 -33
  182. package/cjs/FormGroup/FormGroupContext.d.ts +4 -0
  183. package/cjs/FormGroup/FormGroupContext.js +8 -0
  184. package/cjs/FormGroup/index.d.ts +1 -1
  185. package/cjs/FormGroup/index.js +4 -4
  186. package/cjs/FormGroup/useFormGroup.d.ts +18 -0
  187. package/cjs/FormGroup/useFormGroup.js +35 -0
  188. package/cjs/Grid/Col.js +1 -2
  189. package/cjs/Grid/utils/styles.js +1 -4
  190. package/cjs/InlineEdit/useEditState.js +1 -1
  191. package/cjs/InlineEdit/useFocusEvent.js +6 -7
  192. package/cjs/Input/Input.js +2 -3
  193. package/cjs/InputGroup/InputGroup.d.ts +0 -5
  194. package/cjs/InputGroup/InputGroup.js +4 -5
  195. package/cjs/InputGroup/InputGroupContext.d.ts +6 -0
  196. package/cjs/InputGroup/InputGroupContext.js +8 -0
  197. package/cjs/InputGroup/index.d.ts +1 -0
  198. package/cjs/InputGroup/index.js +3 -1
  199. package/cjs/InputPicker/InputAutosize.js +1 -2
  200. package/cjs/InputPicker/InputPicker.js +1 -2
  201. package/cjs/List/List.js +1 -2
  202. package/cjs/List/ListItem.js +1 -2
  203. package/cjs/List/helper/AutoScroller.js +7 -8
  204. package/cjs/List/helper/useSortHelper.js +1 -1
  205. package/cjs/List/helper/utils.js +4 -7
  206. package/cjs/MaskedInput/TextMask.js +1 -2
  207. package/cjs/MaskedInput/adjustCaretPosition.js +11 -12
  208. package/cjs/MaskedInput/conformToMask.js +1 -10
  209. package/cjs/MaskedInput/createTextMaskInputElement.js +9 -10
  210. package/cjs/MaskedInput/utilities.js +1 -7
  211. package/cjs/Menu/Menu.js +1 -2
  212. package/cjs/Menu/MenuItem.js +6 -8
  213. package/cjs/Message/Message.js +1 -2
  214. package/cjs/Modal/Modal.js +1 -2
  215. package/cjs/Modal/ModalBody.js +1 -2
  216. package/cjs/Modal/ModalHeader.js +1 -2
  217. package/cjs/Modal/ModalTitle.js +1 -2
  218. package/cjs/MultiCascadeTree/hooks/useCascadeValue.js +1 -4
  219. package/cjs/MultiCascadeTree/utils.js +1 -4
  220. package/cjs/MultiCascader/MultiCascader.js +1 -2
  221. package/cjs/Nav/AdaptiveNavItem.js +3 -4
  222. package/cjs/Nav/Nav.js +3 -4
  223. package/cjs/Nav/NavDropdown.js +9 -12
  224. package/cjs/Nav/NavDropdownItem.js +6 -8
  225. package/cjs/Nav/NavDropdownMenu.js +36 -43
  226. package/cjs/Nav/NavItem.js +1 -2
  227. package/cjs/Nav/NavMegaMenu.js +1 -2
  228. package/cjs/Nav/NavMenu.js +3 -4
  229. package/cjs/Navbar/Navbar.js +1 -2
  230. package/cjs/Navbar/NavbarDrawer.js +1 -2
  231. package/cjs/Navbar/NavbarDropdown.js +8 -11
  232. package/cjs/Navbar/NavbarDropdownItem.js +1 -2
  233. package/cjs/Navbar/NavbarDropdownMenu.js +12 -16
  234. package/cjs/Navbar/NavbarItem.js +1 -2
  235. package/cjs/Navbar/NavbarMegaMenu.js +1 -2
  236. package/cjs/Navbar/NavbarToggle.js +1 -2
  237. package/cjs/Notification/Notification.js +1 -2
  238. package/cjs/NumberInput/utils/number.js +1 -4
  239. package/cjs/Pagination/LimitPicker.js +1 -2
  240. package/cjs/Pagination/PaginationButton.js +1 -2
  241. package/cjs/Panel/Panel.js +1 -2
  242. package/cjs/Panel/PanelHeader.js +1 -2
  243. package/cjs/PanelGroup/PanelGroup.js +1 -2
  244. package/cjs/PanelGroup/index.js +1 -2
  245. package/cjs/Placeholder/PlaceholderGrid.js +1 -2
  246. package/cjs/Placeholder/PlaceholderParagraph.js +1 -2
  247. package/cjs/Popover/Popover.js +1 -2
  248. package/cjs/Progress/Progress.d.ts +1 -1
  249. package/cjs/Progress/Progress.js +1 -1
  250. package/cjs/Progress/ProgressInfo.d.ts +17 -0
  251. package/cjs/Progress/ProgressInfo.js +29 -0
  252. package/cjs/Progress/ProgressLine.d.ts +20 -6
  253. package/cjs/Progress/ProgressLine.js +48 -37
  254. package/cjs/Progress/ProgressSections.d.ts +15 -0
  255. package/cjs/Progress/ProgressSections.js +43 -0
  256. package/cjs/Progress/ProgressStroke.d.ts +24 -0
  257. package/cjs/Progress/ProgressStroke.js +51 -0
  258. package/cjs/Progress/index.d.ts +3 -3
  259. package/cjs/Progress/index.js +1 -1
  260. package/cjs/Progress/types.d.ts +11 -0
  261. package/cjs/Progress/types.js +4 -0
  262. package/cjs/{Progress → ProgressCircle}/ProgressCircle.d.ts +20 -14
  263. package/cjs/ProgressCircle/ProgressCircle.js +113 -0
  264. package/cjs/ProgressCircle/ProgressCircleSections.d.ts +23 -0
  265. package/cjs/ProgressCircle/ProgressCircleSections.js +52 -0
  266. package/cjs/ProgressCircle/hooks/useProgressCirclePath.d.ts +28 -0
  267. package/cjs/ProgressCircle/hooks/useProgressCirclePath.js +66 -0
  268. package/cjs/ProgressCircle/index.d.ts +4 -0
  269. package/cjs/ProgressCircle/index.js +11 -0
  270. package/cjs/Radio/Radio.js +1 -2
  271. package/cjs/RadioGroup/RadioGroup.js +1 -2
  272. package/cjs/RadioTile/RadioTile.js +1 -2
  273. package/cjs/RadioTileGroup/RadioTileGroup.js +1 -2
  274. package/cjs/RangeSlider/RangeSlider.js +1 -3
  275. package/cjs/Rate/Character.js +1 -2
  276. package/cjs/Rate/useRatingStates.js +6 -7
  277. package/cjs/SelectPicker/SelectPicker.js +1 -2
  278. package/cjs/Sidebar/Sidebar.js +1 -2
  279. package/cjs/Sidenav/ExpandedSidenavDropdown.js +12 -17
  280. package/cjs/Sidenav/ExpandedSidenavDropdownItem.js +3 -4
  281. package/cjs/Sidenav/ExpandedSidenavDropdownMenu.js +9 -12
  282. package/cjs/Sidenav/Sidenav.d.ts +0 -15
  283. package/cjs/Sidenav/Sidenav.js +4 -5
  284. package/cjs/Sidenav/SidenavContext.d.ts +16 -0
  285. package/cjs/Sidenav/SidenavContext.js +8 -0
  286. package/cjs/Sidenav/SidenavDropdown.js +15 -19
  287. package/cjs/Sidenav/SidenavDropdownItem.js +8 -10
  288. package/cjs/Sidenav/SidenavDropdownMenu.js +38 -45
  289. package/cjs/Sidenav/SidenavItem.js +8 -10
  290. package/cjs/Sidenav/SidenavToggle.js +3 -4
  291. package/cjs/Slider/ProgressBar.d.ts +0 -1
  292. package/cjs/Slider/ProgressBar.js +1 -3
  293. package/cjs/Slider/Slider.js +14 -6
  294. package/cjs/Stack/Stack.js +4 -2
  295. package/cjs/Stack/VStack.js +1 -3
  296. package/cjs/Tag/Tag.js +1 -2
  297. package/cjs/TagInput/TagInput.js +1 -2
  298. package/cjs/TagPicker/TagPicker.js +1 -2
  299. package/cjs/TimePicker/TimePicker.js +1 -2
  300. package/cjs/Toggle/Toggle.js +1 -2
  301. package/cjs/Tooltip/Tooltip.js +1 -2
  302. package/cjs/Tree/Tree.js +1 -2
  303. package/cjs/Tree/TreeNode.js +1 -2
  304. package/cjs/Tree/TreeView.js +17 -22
  305. package/cjs/Tree/hooks/useFlattenTree.js +2 -8
  306. package/cjs/Tree/hooks/useTreeNodeProps.js +1 -2
  307. package/cjs/Tree/hooks/useVirtualizedTreeData.js +1 -7
  308. package/cjs/Tree/utils/flattenTree.js +2 -8
  309. package/cjs/Tree/utils/getExpandItemValues.js +6 -7
  310. package/cjs/Tree/utils/indentTreeNode.js +1 -4
  311. package/cjs/TreePicker/TreePicker.js +1 -2
  312. package/cjs/Uploader/UploadFileItem.js +2 -6
  313. package/cjs/Uploader/UploadTrigger.js +1 -2
  314. package/cjs/Uploader/Uploader.js +2 -6
  315. package/cjs/global.d.ts +0 -6
  316. package/cjs/index.d.ts +3 -0
  317. package/cjs/index.js +18 -0
  318. package/cjs/internals/Disclosure/Disclosure.js +1 -2
  319. package/cjs/internals/InputBase/InputBase.js +2 -3
  320. package/cjs/internals/Menu/Menu.js +13 -18
  321. package/cjs/internals/Menu/MenuItem.js +1 -2
  322. package/cjs/internals/Menu/Menubar.js +6 -8
  323. package/cjs/internals/Menu/useRenderMenuItem.js +1 -2
  324. package/cjs/internals/Overlay/Modal.js +1 -2
  325. package/cjs/internals/Overlay/Overlay.js +1 -2
  326. package/cjs/internals/Overlay/OverlayProvider.js +1 -2
  327. package/cjs/internals/Overlay/OverlayTrigger.js +3 -11
  328. package/cjs/internals/Overlay/Position.js +4 -8
  329. package/cjs/internals/Overlay/types.d.ts +1 -1
  330. package/cjs/internals/Overlay/utils/position.d.ts +24 -0
  331. package/cjs/internals/Overlay/{positionUtils.js → utils/position.js} +136 -50
  332. package/cjs/internals/Picker/Listbox.js +18 -23
  333. package/cjs/internals/Picker/PickerIndicator.js +9 -10
  334. package/cjs/internals/Picker/PickerLabel.js +6 -7
  335. package/cjs/internals/Picker/PickerPopup.js +1 -2
  336. package/cjs/internals/Picker/PickerToggle.js +1 -2
  337. package/cjs/internals/Picker/PickerToggleTrigger.js +1 -2
  338. package/cjs/internals/Picker/utils.js +1 -4
  339. package/cjs/internals/Provider/CustomContext.d.ts +20 -1
  340. package/cjs/internals/Provider/types.d.ts +6 -3
  341. package/cjs/internals/Ripple/Ripple.js +1 -2
  342. package/cjs/internals/SafeAnchor/SafeAnchor.js +1 -2
  343. package/cjs/internals/Tree/TreeProvider.js +4 -5
  344. package/cjs/internals/Tree/utils/filterNodesOfTree.js +1 -4
  345. package/cjs/internals/Tree/utils/findNodeOfTree.js +1 -4
  346. package/cjs/internals/Windowing/AutoSizer.js +1 -2
  347. package/cjs/internals/Windowing/List.js +1 -2
  348. package/cjs/internals/Windowing/index.js +1 -2
  349. package/cjs/internals/hooks/useClickOutside.js +5 -6
  350. package/cjs/internals/hooks/useEventCallback.js +1 -4
  351. package/cjs/internals/hooks/useEventListener.js +1 -4
  352. package/cjs/internals/hooks/usePortal.js +9 -15
  353. package/cjs/internals/hooks/useRootClose.js +6 -7
  354. package/cjs/internals/hooks/useStyles.js +5 -8
  355. package/cjs/internals/hooks/useTimeout.js +1 -7
  356. package/cjs/internals/hooks/useToggleCaret.d.ts +1 -1
  357. package/cjs/internals/intl/FormattedDate.js +4 -5
  358. package/cjs/internals/intl/FormattedNumber.js +5 -7
  359. package/cjs/internals/types/placement.d.ts +5 -0
  360. package/cjs/internals/utils/colours.js +1 -4
  361. package/cjs/internals/utils/composeFunctions.js +1 -4
  362. package/cjs/internals/utils/createChainedFunction.js +2 -8
  363. package/cjs/internals/utils/date/copyTime.js +4 -5
  364. package/cjs/internals/utils/getDataGroupBy.js +5 -8
  365. package/cjs/internals/utils/html/htmlPropsUtils.js +1 -4
  366. package/cjs/internals/utils/placement.js +1 -4
  367. package/cjs/internals/utils/react/createComponent.js +6 -7
  368. package/cjs/internals/utils/string/tplTransform.js +1 -4
  369. package/cjs/internals/utils/style-sheet/css.js +3 -12
  370. package/cjs/internals/utils/style-sheet/styles.js +2 -8
  371. package/cjs/locales/ar_EG.d.ts +6 -0
  372. package/cjs/locales/ar_EG.js +6 -0
  373. package/cjs/locales/ca_ES.d.ts +6 -0
  374. package/cjs/locales/ca_ES.js +6 -0
  375. package/cjs/locales/cs_CZ.d.ts +6 -0
  376. package/cjs/locales/cs_CZ.js +6 -0
  377. package/cjs/locales/da_DK.d.ts +6 -0
  378. package/cjs/locales/da_DK.js +6 -0
  379. package/cjs/locales/de_DE.d.ts +6 -0
  380. package/cjs/locales/de_DE.js +6 -0
  381. package/cjs/locales/en_GB.d.ts +6 -0
  382. package/cjs/locales/en_GB.js +6 -0
  383. package/cjs/locales/en_US.d.ts +6 -0
  384. package/cjs/locales/en_US.js +6 -0
  385. package/cjs/locales/es_AR.d.ts +6 -0
  386. package/cjs/locales/es_AR.js +6 -0
  387. package/cjs/locales/es_ES.d.ts +6 -0
  388. package/cjs/locales/es_ES.js +7 -1
  389. package/cjs/locales/fa_IR.d.ts +6 -0
  390. package/cjs/locales/fa_IR.js +6 -0
  391. package/cjs/locales/fi_FI.d.ts +6 -0
  392. package/cjs/locales/fi_FI.js +6 -0
  393. package/cjs/locales/fr_FR.d.ts +6 -0
  394. package/cjs/locales/fr_FR.js +6 -0
  395. package/cjs/locales/gu_IN.d.ts +157 -0
  396. package/cjs/locales/gu_IN.js +97 -0
  397. package/cjs/locales/hu_HU.d.ts +6 -0
  398. package/cjs/locales/hu_HU.js +6 -0
  399. package/cjs/locales/index.d.ts +3 -0
  400. package/cjs/locales/index.js +8 -2
  401. package/cjs/locales/it_IT.d.ts +6 -0
  402. package/cjs/locales/it_IT.js +6 -0
  403. package/cjs/locales/ja_JP.d.ts +6 -0
  404. package/cjs/locales/ja_JP.js +6 -0
  405. package/cjs/locales/kk_KZ.d.ts +6 -0
  406. package/cjs/locales/kk_KZ.js +6 -0
  407. package/cjs/locales/ko_KR.d.ts +6 -0
  408. package/cjs/locales/ko_KR.js +6 -0
  409. package/cjs/locales/ne_NP.d.ts +6 -0
  410. package/cjs/locales/ne_NP.js +6 -0
  411. package/cjs/locales/nl_NL.d.ts +6 -0
  412. package/cjs/locales/nl_NL.js +8 -2
  413. package/cjs/locales/pl_PL.d.ts +6 -0
  414. package/cjs/locales/pl_PL.js +6 -0
  415. package/cjs/locales/pt_BR.d.ts +6 -0
  416. package/cjs/locales/pt_BR.js +6 -0
  417. package/cjs/locales/ru_RU.d.ts +6 -0
  418. package/cjs/locales/ru_RU.js +6 -0
  419. package/cjs/locales/sv_SE.d.ts +6 -0
  420. package/cjs/locales/sv_SE.js +6 -0
  421. package/cjs/locales/th_TH.d.ts +169 -0
  422. package/cjs/locales/th_TH.js +100 -0
  423. package/cjs/locales/tr_TR.d.ts +6 -0
  424. package/cjs/locales/tr_TR.js +6 -0
  425. package/cjs/locales/uk_UA.d.ts +157 -0
  426. package/cjs/locales/uk_UA.js +97 -0
  427. package/cjs/locales/zh_CN.d.ts +6 -0
  428. package/cjs/locales/zh_CN.js +6 -0
  429. package/cjs/locales/zh_TW.d.ts +6 -0
  430. package/cjs/locales/zh_TW.js +6 -0
  431. package/cjs/toaster/ToastContainer.js +3 -4
  432. package/cjs/toaster/toaster.js +2 -6
  433. package/cjs/useDialog/Dialog.d.ts +15 -0
  434. package/cjs/useDialog/Dialog.js +109 -0
  435. package/cjs/useDialog/DialogContainer.d.ts +11 -0
  436. package/cjs/useDialog/DialogContainer.js +57 -0
  437. package/cjs/useDialog/index.d.ts +3 -0
  438. package/cjs/useDialog/index.js +15 -0
  439. package/cjs/useDialog/types.d.ts +33 -0
  440. package/cjs/useDialog/types.js +4 -0
  441. package/cjs/useDialog/useDialog.d.ts +15 -0
  442. package/cjs/useDialog/useDialog.js +126 -0
  443. package/cjs/{FormControl → useFormControl}/hooks/useField.d.ts +3 -3
  444. package/cjs/{FormControl → useFormControl}/hooks/useField.js +5 -6
  445. package/cjs/useFormControl/hooks/useRegisterModel.d.ts +2 -0
  446. package/cjs/{FormControl → useFormControl}/hooks/useRegisterModel.js +2 -3
  447. package/cjs/useFormControl/index.d.ts +4 -0
  448. package/cjs/useFormControl/index.js +11 -0
  449. package/cjs/useFormControl/useFormControl.d.ts +38 -0
  450. package/cjs/useFormControl/useFormControl.js +135 -0
  451. package/cjs/{FormControl/utils.js → useFormControl/utils/nameToPath.js} +0 -0
  452. package/cjs/useMediaQuery/breakpoints.js +4 -10
  453. package/cjs/useMediaQuery/useMediaQuery.js +1 -4
  454. package/cjs/useToaster/useToaster.d.ts +1 -1
  455. package/cjs/useToaster/useToaster.js +9 -9
  456. package/dist/rsuite-no-reset.css +14370 -13982
  457. package/dist/rsuite-no-reset.min.css +1 -2
  458. package/dist/rsuite.css +14599 -14187
  459. package/dist/rsuite.js +436 -260
  460. package/dist/rsuite.js.map +1 -1
  461. package/dist/rsuite.min.css +1 -2
  462. package/dist/rsuite.min.js +1 -1
  463. package/dist/rsuite.min.js.map +1 -1
  464. package/esm/Animation/Bounce.js +4 -5
  465. package/esm/Animation/Fade.js +5 -6
  466. package/esm/Animation/Slide.js +5 -6
  467. package/esm/Calendar/MonthDropdown/MonthDropdown.js +16 -20
  468. package/esm/Calendar/TimeDropdown/utils/scrollToTime.js +1 -2
  469. package/esm/Calendar/hooks/useCalendarDate.js +3 -6
  470. package/esm/CascadeTree/hooks/usePaths.js +7 -8
  471. package/esm/CheckTree/CheckTreeView.js +16 -20
  472. package/esm/CheckTree/hooks/useTreeValue.js +4 -5
  473. package/esm/CheckTreePicker/CheckTreePicker.d.ts +4 -0
  474. package/esm/CheckTreePicker/CheckTreePicker.js +28 -0
  475. package/esm/CustomProvider/CustomProvider.js +13 -2
  476. package/esm/DateInput/DateInput.js +4 -0
  477. package/esm/DateInput/hooks/useDateInputState.js +6 -7
  478. package/esm/DateInput/hooks/useIsFocused.js +4 -5
  479. package/esm/DateInput/hooks/useKeyboardInputEvent.js +7 -8
  480. package/esm/DateInput/test/types/TestKeyPressProps.d.ts +6 -0
  481. package/esm/DateInput/test/types/TestKeyPressProps.js +2 -0
  482. package/esm/DatePicker/DatePicker.js +2 -8
  483. package/esm/DatePicker/Toolbar.js +6 -7
  484. package/esm/DatePicker/utils.js +14 -24
  485. package/esm/DateRangeInput/DateRangeInput.js +5 -4
  486. package/esm/DateRangePicker/Calendar.d.ts +2 -1
  487. package/esm/DateRangePicker/Calendar.js +7 -1
  488. package/esm/DateRangePicker/DateRangePicker.d.ts +3 -1
  489. package/esm/DateRangePicker/DateRangePicker.js +8 -18
  490. package/esm/DateRangePicker/disabledDateUtils.js +4 -16
  491. package/esm/DateRangePicker/hooks/useCalendarHandlers.js +7 -8
  492. package/esm/DateRangePicker/utils.js +5 -6
  493. package/esm/Dropdown/Dropdown.js +8 -10
  494. package/esm/Dropdown/DropdownItem.js +5 -6
  495. package/esm/Dropdown/DropdownMenu.js +35 -41
  496. package/esm/Dropdown/DropdownState.js +1 -4
  497. package/esm/Form/FormContext.d.ts +1 -1
  498. package/esm/Form/hooks/useFormValidate.js +4 -9
  499. package/esm/Form/hooks/useSchemaModel.js +6 -9
  500. package/esm/FormControl/FormControl.d.ts +2 -2
  501. package/esm/FormControl/FormControl.js +53 -83
  502. package/esm/FormErrorMessage/FormErrorMessage.d.ts +2 -2
  503. package/esm/FormGroup/FormGroup.d.ts +0 -18
  504. package/esm/FormGroup/FormGroup.js +1 -28
  505. package/esm/FormGroup/FormGroupContext.d.ts +4 -0
  506. package/esm/FormGroup/FormGroupContext.js +3 -0
  507. package/esm/FormGroup/index.d.ts +1 -1
  508. package/esm/FormGroup/index.js +1 -1
  509. package/esm/FormGroup/useFormGroup.d.ts +18 -0
  510. package/esm/FormGroup/useFormGroup.js +30 -0
  511. package/esm/Grid/utils/styles.js +1 -4
  512. package/esm/InlineEdit/useEditState.js +1 -1
  513. package/esm/InlineEdit/useFocusEvent.js +6 -7
  514. package/esm/Input/Input.js +1 -1
  515. package/esm/InputGroup/InputGroup.d.ts +0 -5
  516. package/esm/InputGroup/InputGroup.js +1 -1
  517. package/esm/InputGroup/InputGroupContext.d.ts +6 -0
  518. package/esm/InputGroup/InputGroupContext.js +3 -0
  519. package/esm/InputGroup/index.d.ts +1 -0
  520. package/esm/InputGroup/index.js +1 -0
  521. package/esm/List/helper/AutoScroller.js +7 -8
  522. package/esm/List/helper/useSortHelper.js +1 -1
  523. package/esm/List/helper/utils.js +4 -7
  524. package/esm/MaskedInput/adjustCaretPosition.js +11 -12
  525. package/esm/MaskedInput/conformToMask.js +1 -10
  526. package/esm/MaskedInput/createTextMaskInputElement.js +9 -10
  527. package/esm/MaskedInput/utilities.js +1 -7
  528. package/esm/Menu/MenuItem.js +5 -6
  529. package/esm/MultiCascadeTree/hooks/useCascadeValue.js +1 -4
  530. package/esm/MultiCascadeTree/utils.js +1 -4
  531. package/esm/Nav/AdaptiveNavItem.js +1 -1
  532. package/esm/Nav/Nav.js +1 -1
  533. package/esm/Nav/NavDropdown.js +8 -10
  534. package/esm/Nav/NavDropdownItem.js +5 -6
  535. package/esm/Nav/NavDropdownMenu.js +35 -41
  536. package/esm/Nav/NavMenu.js +1 -1
  537. package/esm/Navbar/NavbarDropdown.js +7 -9
  538. package/esm/Navbar/NavbarDropdownMenu.js +11 -14
  539. package/esm/NumberInput/utils/number.js +1 -4
  540. package/esm/Progress/Progress.d.ts +1 -1
  541. package/esm/Progress/Progress.js +1 -1
  542. package/esm/Progress/ProgressInfo.d.ts +17 -0
  543. package/esm/Progress/ProgressInfo.js +24 -0
  544. package/esm/Progress/ProgressLine.d.ts +20 -6
  545. package/esm/Progress/ProgressLine.js +49 -38
  546. package/esm/Progress/ProgressSections.d.ts +15 -0
  547. package/esm/Progress/ProgressSections.js +38 -0
  548. package/esm/Progress/ProgressStroke.d.ts +24 -0
  549. package/esm/Progress/ProgressStroke.js +46 -0
  550. package/esm/Progress/index.d.ts +3 -3
  551. package/esm/Progress/index.js +1 -1
  552. package/esm/Progress/types.d.ts +11 -0
  553. package/esm/Progress/types.js +2 -0
  554. package/esm/{Progress → ProgressCircle}/ProgressCircle.d.ts +20 -14
  555. package/esm/ProgressCircle/ProgressCircle.js +107 -0
  556. package/esm/ProgressCircle/ProgressCircleSections.d.ts +23 -0
  557. package/esm/ProgressCircle/ProgressCircleSections.js +47 -0
  558. package/esm/ProgressCircle/hooks/useProgressCirclePath.d.ts +28 -0
  559. package/esm/ProgressCircle/hooks/useProgressCirclePath.js +62 -0
  560. package/esm/ProgressCircle/index.d.ts +4 -0
  561. package/esm/ProgressCircle/index.js +8 -0
  562. package/esm/RangeSlider/RangeSlider.js +0 -1
  563. package/esm/Rate/useRatingStates.js +6 -7
  564. package/esm/Sidenav/ExpandedSidenavDropdown.js +10 -14
  565. package/esm/Sidenav/ExpandedSidenavDropdownItem.js +1 -1
  566. package/esm/Sidenav/ExpandedSidenavDropdownMenu.js +7 -9
  567. package/esm/Sidenav/Sidenav.d.ts +0 -15
  568. package/esm/Sidenav/Sidenav.js +1 -1
  569. package/esm/Sidenav/SidenavContext.d.ts +16 -0
  570. package/esm/Sidenav/SidenavContext.js +3 -0
  571. package/esm/Sidenav/SidenavDropdown.js +13 -16
  572. package/esm/Sidenav/SidenavDropdownItem.js +6 -7
  573. package/esm/Sidenav/SidenavDropdownMenu.js +36 -42
  574. package/esm/Sidenav/SidenavItem.js +6 -7
  575. package/esm/Sidenav/SidenavToggle.js +1 -1
  576. package/esm/Slider/ProgressBar.d.ts +0 -1
  577. package/esm/Slider/ProgressBar.js +1 -3
  578. package/esm/Slider/Slider.js +13 -4
  579. package/esm/Stack/Stack.js +4 -2
  580. package/esm/Stack/VStack.js +1 -3
  581. package/esm/Tree/TreeView.js +16 -20
  582. package/esm/Tree/hooks/useFlattenTree.js +2 -8
  583. package/esm/Tree/hooks/useVirtualizedTreeData.js +1 -7
  584. package/esm/Tree/utils/flattenTree.js +2 -8
  585. package/esm/Tree/utils/getExpandItemValues.js +6 -7
  586. package/esm/Tree/utils/indentTreeNode.js +1 -4
  587. package/esm/Uploader/UploadFileItem.js +1 -4
  588. package/esm/Uploader/Uploader.js +1 -4
  589. package/esm/global.d.ts +0 -6
  590. package/esm/index.d.ts +3 -0
  591. package/esm/index.js +3 -0
  592. package/esm/internals/InputBase/InputBase.js +1 -1
  593. package/esm/internals/Menu/Menu.js +12 -16
  594. package/esm/internals/Menu/Menubar.js +5 -6
  595. package/esm/internals/Overlay/OverlayTrigger.js +2 -9
  596. package/esm/internals/Overlay/Position.js +3 -6
  597. package/esm/internals/Overlay/types.d.ts +1 -1
  598. package/esm/internals/Overlay/utils/position.d.ts +24 -0
  599. package/esm/internals/Overlay/{positionUtils.js → utils/position.js} +134 -48
  600. package/esm/internals/Picker/Listbox.js +17 -21
  601. package/esm/internals/Picker/PickerIndicator.js +9 -10
  602. package/esm/internals/Picker/PickerLabel.js +6 -7
  603. package/esm/internals/Picker/utils.js +1 -4
  604. package/esm/internals/Provider/CustomContext.d.ts +20 -1
  605. package/esm/internals/Provider/types.d.ts +6 -3
  606. package/esm/internals/Tree/TreeProvider.js +4 -5
  607. package/esm/internals/Tree/utils/filterNodesOfTree.js +1 -4
  608. package/esm/internals/Tree/utils/findNodeOfTree.js +1 -4
  609. package/esm/internals/hooks/useClickOutside.js +5 -6
  610. package/esm/internals/hooks/useEventCallback.js +1 -4
  611. package/esm/internals/hooks/useEventListener.js +1 -4
  612. package/esm/internals/hooks/usePortal.js +8 -13
  613. package/esm/internals/hooks/useRootClose.js +6 -7
  614. package/esm/internals/hooks/useStyles.js +5 -8
  615. package/esm/internals/hooks/useTimeout.js +1 -7
  616. package/esm/internals/hooks/useToggleCaret.d.ts +1 -1
  617. package/esm/internals/intl/FormattedDate.js +4 -5
  618. package/esm/internals/intl/FormattedNumber.js +4 -5
  619. package/esm/internals/types/placement.d.ts +5 -0
  620. package/esm/internals/utils/colours.js +1 -4
  621. package/esm/internals/utils/composeFunctions.js +1 -4
  622. package/esm/internals/utils/createChainedFunction.js +2 -8
  623. package/esm/internals/utils/date/copyTime.js +4 -5
  624. package/esm/internals/utils/getDataGroupBy.js +5 -8
  625. package/esm/internals/utils/html/htmlPropsUtils.js +1 -4
  626. package/esm/internals/utils/placement.js +1 -4
  627. package/esm/internals/utils/react/createComponent.js +6 -7
  628. package/esm/internals/utils/string/tplTransform.js +1 -4
  629. package/esm/internals/utils/style-sheet/css.js +3 -12
  630. package/esm/internals/utils/style-sheet/styles.js +2 -8
  631. package/esm/locales/ar_EG.d.ts +6 -0
  632. package/esm/locales/ar_EG.js +6 -0
  633. package/esm/locales/ca_ES.d.ts +6 -0
  634. package/esm/locales/ca_ES.js +6 -0
  635. package/esm/locales/cs_CZ.d.ts +6 -0
  636. package/esm/locales/cs_CZ.js +6 -0
  637. package/esm/locales/da_DK.d.ts +6 -0
  638. package/esm/locales/da_DK.js +6 -0
  639. package/esm/locales/de_DE.d.ts +6 -0
  640. package/esm/locales/de_DE.js +6 -0
  641. package/esm/locales/en_GB.d.ts +6 -0
  642. package/esm/locales/en_GB.js +6 -0
  643. package/esm/locales/en_US.d.ts +6 -0
  644. package/esm/locales/en_US.js +6 -0
  645. package/esm/locales/es_AR.d.ts +6 -0
  646. package/esm/locales/es_AR.js +6 -0
  647. package/esm/locales/es_ES.d.ts +6 -0
  648. package/esm/locales/es_ES.js +7 -1
  649. package/esm/locales/fa_IR.d.ts +6 -0
  650. package/esm/locales/fa_IR.js +6 -0
  651. package/esm/locales/fi_FI.d.ts +6 -0
  652. package/esm/locales/fi_FI.js +6 -0
  653. package/esm/locales/fr_FR.d.ts +6 -0
  654. package/esm/locales/fr_FR.js +6 -0
  655. package/esm/locales/gu_IN.d.ts +157 -0
  656. package/esm/locales/gu_IN.js +93 -0
  657. package/esm/locales/hu_HU.d.ts +6 -0
  658. package/esm/locales/hu_HU.js +6 -0
  659. package/esm/locales/index.d.ts +3 -0
  660. package/esm/locales/index.js +4 -1
  661. package/esm/locales/it_IT.d.ts +6 -0
  662. package/esm/locales/it_IT.js +6 -0
  663. package/esm/locales/ja_JP.d.ts +6 -0
  664. package/esm/locales/ja_JP.js +6 -0
  665. package/esm/locales/kk_KZ.d.ts +6 -0
  666. package/esm/locales/kk_KZ.js +6 -0
  667. package/esm/locales/ko_KR.d.ts +6 -0
  668. package/esm/locales/ko_KR.js +6 -0
  669. package/esm/locales/ne_NP.d.ts +6 -0
  670. package/esm/locales/ne_NP.js +6 -0
  671. package/esm/locales/nl_NL.d.ts +6 -0
  672. package/esm/locales/nl_NL.js +8 -2
  673. package/esm/locales/pl_PL.d.ts +6 -0
  674. package/esm/locales/pl_PL.js +6 -0
  675. package/esm/locales/pt_BR.d.ts +6 -0
  676. package/esm/locales/pt_BR.js +6 -0
  677. package/esm/locales/ru_RU.d.ts +6 -0
  678. package/esm/locales/ru_RU.js +6 -0
  679. package/esm/locales/sv_SE.d.ts +6 -0
  680. package/esm/locales/sv_SE.js +6 -0
  681. package/esm/locales/th_TH.d.ts +169 -0
  682. package/esm/locales/th_TH.js +96 -0
  683. package/esm/locales/tr_TR.d.ts +6 -0
  684. package/esm/locales/tr_TR.js +6 -0
  685. package/esm/locales/uk_UA.d.ts +157 -0
  686. package/esm/locales/uk_UA.js +93 -0
  687. package/esm/locales/zh_CN.d.ts +6 -0
  688. package/esm/locales/zh_CN.js +6 -0
  689. package/esm/locales/zh_TW.d.ts +6 -0
  690. package/esm/locales/zh_TW.js +6 -0
  691. package/esm/toaster/ToastContainer.js +2 -2
  692. package/esm/toaster/toaster.js +1 -4
  693. package/esm/useDialog/Dialog.d.ts +15 -0
  694. package/esm/useDialog/Dialog.js +103 -0
  695. package/esm/useDialog/DialogContainer.d.ts +11 -0
  696. package/esm/useDialog/DialogContainer.js +52 -0
  697. package/esm/useDialog/index.d.ts +3 -0
  698. package/esm/useDialog/index.js +4 -0
  699. package/esm/useDialog/types.d.ts +33 -0
  700. package/esm/useDialog/types.js +2 -0
  701. package/esm/useDialog/useDialog.d.ts +15 -0
  702. package/esm/useDialog/useDialog.js +120 -0
  703. package/esm/{FormControl → useFormControl}/hooks/useField.d.ts +3 -3
  704. package/esm/{FormControl → useFormControl}/hooks/useField.js +4 -5
  705. package/esm/useFormControl/hooks/useRegisterModel.d.ts +2 -0
  706. package/esm/{FormControl → useFormControl}/hooks/useRegisterModel.js +2 -3
  707. package/esm/useFormControl/index.d.ts +4 -0
  708. package/esm/useFormControl/index.js +8 -0
  709. package/esm/useFormControl/useFormControl.d.ts +38 -0
  710. package/esm/useFormControl/useFormControl.js +130 -0
  711. package/esm/{FormControl/utils.js → useFormControl/utils/nameToPath.js} +0 -0
  712. package/esm/useMediaQuery/breakpoints.js +4 -10
  713. package/esm/useMediaQuery/useMediaQuery.js +1 -4
  714. package/esm/useToaster/useToaster.d.ts +1 -1
  715. package/esm/useToaster/useToaster.js +11 -10
  716. package/locales/gu_IN/package.json +7 -0
  717. package/locales/th_TH/package.json +7 -0
  718. package/locales/uk_UA/package.json +7 -0
  719. package/package.json +5 -6
  720. package/toaster/styles/index.css +107 -121
  721. package/useDialog/package.json +7 -0
  722. package/useFormControl/package.json +7 -0
  723. package/useToaster/styles/index.css +107 -121
  724. package/Accordion/styles/index.less +0 -2
  725. package/Animation/styles/animation.less +0 -95
  726. package/Animation/styles/bounce.less +0 -34
  727. package/Animation/styles/collapse.less +0 -23
  728. package/Animation/styles/fade.less +0 -10
  729. package/Animation/styles/index.less +0 -8
  730. package/Animation/styles/mixin.less +0 -15
  731. package/Animation/styles/slide.less +0 -24
  732. package/Animation/styles/variables.less +0 -4
  733. package/AutoComplete/styles/index.less +0 -37
  734. package/Avatar/styles/index.less +0 -48
  735. package/AvatarGroup/styles/index.less +0 -25
  736. package/Badge/styles/index.less +0 -101
  737. package/Badge/styles/variables.less +0 -19
  738. package/Box/styles/index.less +0 -1
  739. package/Breadcrumb/styles/index.less +0 -49
  740. package/Button/styles/index.less +0 -364
  741. package/Button/styles/mixin.less +0 -62
  742. package/Button/styles/variables.less +0 -30
  743. package/ButtonGroup/styles/index.less +0 -91
  744. package/ButtonToolbar/styles/index.less +0 -17
  745. package/Calendar/styles/index.less +0 -678
  746. package/Card/styles/index.less +0 -63
  747. package/CardGroup/styles/index.less +0 -8
  748. package/Carousel/styles/index.less +0 -192
  749. package/CascadeTree/styles/index.less +0 -88
  750. package/CascadeTree/styles/search.less +0 -35
  751. package/Cascader/styles/index.less +0 -5
  752. package/Center/styles/index.less +0 -9
  753. package/CheckPicker/styles/index.less +0 -21
  754. package/CheckTree/styles/index.less +0 -120
  755. package/CheckTreePicker/styles/index.less +0 -17
  756. package/Checkbox/styles/index.less +0 -153
  757. package/Checkbox/styles/mixin.less +0 -37
  758. package/CheckboxGroup/styles/index.less +0 -14
  759. package/Col/styles/index.less +0 -2
  760. package/Container/stories/styles.less +0 -23
  761. package/Container/styles/index.less +0 -16
  762. package/Content/styles/index.less +0 -6
  763. package/DateInput/styles/index.less +0 -1
  764. package/DatePicker/styles/index.less +0 -167
  765. package/DatePicker/styles/mixin.less +0 -8
  766. package/DateRangeInput/styles/index.less +0 -1
  767. package/DateRangePicker/styles/index.less +0 -145
  768. package/Divider/styles/index.less +0 -85
  769. package/Drawer/styles/index.less +0 -255
  770. package/Drawer/styles/mixin.less +0 -23
  771. package/Dropdown/styles/index.less +0 -341
  772. package/Dropdown/styles/mixin.less +0 -4
  773. package/FlexboxGrid/styles/index.less +0 -79
  774. package/Footer/styles/index.less +0 -5
  775. package/Form/styles/index.less +0 -1
  776. package/FormControl/styles/index.less +0 -79
  777. package/FormControlLabel/styles/index.less +0 -7
  778. package/FormErrorMessage/styles/animation.less +0 -43
  779. package/FormErrorMessage/styles/index.less +0 -179
  780. package/FormGroup/styles/index.less +0 -75
  781. package/FormHelpText/styles/index.less +0 -21
  782. package/FormStack/styles/index.less +0 -15
  783. package/Grid/styles/columns.less +0 -21
  784. package/Grid/styles/grid-framework.less +0 -92
  785. package/Grid/styles/index.less +0 -107
  786. package/Grid/styles/mixin.less +0 -12
  787. package/Grid/styles/row.less +0 -42
  788. package/Grid/styles/variables.less +0 -5
  789. package/Header/styles/index.less +0 -5
  790. package/Heading/styles/index.less +0 -42
  791. package/Heading/styles/variables.less +0 -19
  792. package/HeadingGroup/styles/index.less +0 -3
  793. package/Highlight/styles/index.less +0 -6
  794. package/IconButton/styles/index.less +0 -90
  795. package/Image/styles/index.less +0 -34
  796. package/InlineEdit/styles/index.less +0 -50
  797. package/Input/styles/index.less +0 -23
  798. package/Input/styles/mixin.less +0 -38
  799. package/Input/styles/variables.less +0 -22
  800. package/InputGroup/styles/index.less +0 -237
  801. package/InputNumber/styles/index.less +0 -1
  802. package/InputPicker/styles/index.less +0 -64
  803. package/InputPicker/styles/mixin.less +0 -7
  804. package/Kbd/styles/index.less +0 -20
  805. package/Kbd/styles/mixin.less +0 -24
  806. package/Kbd/styles/variables.less +0 -13
  807. package/Link/styles/index.less +0 -39
  808. package/List/styles/index.less +0 -113
  809. package/Loader/styles/index.less +0 -114
  810. package/Loader/styles/mixin.less +0 -33
  811. package/Loader/styles/variables.less +0 -16
  812. package/Menu/styles/index.less +0 -108
  813. package/Message/styles/index.less +0 -188
  814. package/Modal/styles/animation.less +0 -15
  815. package/Modal/styles/index.less +0 -189
  816. package/MultiCascadeTree/styles/index.less +0 -46
  817. package/MultiCascader/styles/index.less +0 -15
  818. package/Nav/styles/index.less +0 -366
  819. package/Navbar/styles/index.less +0 -236
  820. package/Notification/styles/index.less +0 -114
  821. package/NumberInput/styles/index.less +0 -74
  822. package/NumberInput/styles/mixin.less +0 -11
  823. package/Pagination/styles/index.less +0 -101
  824. package/Pagination/styles/mixin.less +0 -14
  825. package/Pagination/styles/pagination-group.less +0 -31
  826. package/Panel/styles/index.less +0 -121
  827. package/PanelGroup/styles/index.less +0 -34
  828. package/PasswordInput/styles/index.less +0 -1
  829. package/PasswordStrengthMeter/styles/index.less +0 -39
  830. package/PinInput/styles/index.less +0 -66
  831. package/Placeholder/styles/index.less +0 -148
  832. package/Placeholder/styles/mixin.less +0 -7
  833. package/Popover/styles/index.less +0 -202
  834. package/Popover/styles/mixins.less +0 -60
  835. package/Progress/styles/animation.less +0 -34
  836. package/Progress/styles/index.less +0 -187
  837. package/ProgressLine/package.json +0 -7
  838. package/Radio/styles/index.less +0 -144
  839. package/Radio/styles/mixin.less +0 -5
  840. package/RadioGroup/styles/index.less +0 -87
  841. package/RadioTile/styles/index.less +0 -79
  842. package/RadioTileGroup/styles/index.less +0 -1
  843. package/RangeSlider/styles/index.less +0 -4
  844. package/Rate/styles/index.less +0 -139
  845. package/Row/styles/index.less +0 -2
  846. package/SelectPicker/styles/index.less +0 -47
  847. package/Sidebar/styles/index.less +0 -15
  848. package/Sidenav/styles/index.less +0 -655
  849. package/Sidenav/styles/mixin.less +0 -23
  850. package/Slider/styles/index.less +0 -296
  851. package/Stack/styles/index.less +0 -83
  852. package/Stat/styles/index.less +0 -113
  853. package/StatGroup/styles/index.less +0 -8
  854. package/Steps/styles/index.less +0 -222
  855. package/Table/styles/index.less +0 -433
  856. package/Table/styles/mixin.less +0 -8
  857. package/Tabs/styles/index.less +0 -24
  858. package/Tag/styles/index.less +0 -55
  859. package/TagGroup/styles/index.less +0 -14
  860. package/TagInput/styles/index.less +0 -5
  861. package/TagPicker/styles/index.less +0 -136
  862. package/Text/styles/index.less +0 -122
  863. package/Text/styles/variables.less +0 -9
  864. package/Textarea/styles/index.less +0 -7
  865. package/TimePicker/styles/index.less +0 -1
  866. package/TimeRangePicker/styles/index.less +0 -1
  867. package/Timeline/stories/styles.less +0 -29
  868. package/Timeline/styles/index.less +0 -174
  869. package/Timeline/styles/mixin.less +0 -13
  870. package/Toggle/styles/index.less +0 -278
  871. package/Tooltip/styles/index.less +0 -161
  872. package/Tooltip/styles/mixins.less +0 -60
  873. package/Tree/styles/indent-line.less +0 -8
  874. package/Tree/styles/index.less +0 -186
  875. package/Tree/styles/toggle.less +0 -32
  876. package/TreePicker/styles/index.less +0 -16
  877. package/Uploader/styles/index.less +0 -468
  878. package/Uploader/styles/mixin.less +0 -11
  879. package/VisuallyHidden/styles/index.less +0 -11
  880. package/cjs/FormControl/hooks/useRegisterModel.d.ts +0 -3
  881. package/cjs/Progress/ProgressCircle.js +0 -132
  882. package/cjs/internals/Overlay/positionUtils.d.ts +0 -15
  883. package/dist/rsuite-no-reset-rtl.css +0 -15243
  884. package/dist/rsuite-no-reset-rtl.min.css +0 -2
  885. package/dist/rsuite-no-reset-rtl.min.css.map +0 -1
  886. package/dist/rsuite-no-reset.min.css.map +0 -1
  887. package/dist/rsuite-rtl.css +0 -15494
  888. package/dist/rsuite-rtl.min.css +0 -2
  889. package/dist/rsuite-rtl.min.css.map +0 -1
  890. package/dist/rsuite.min.css.map +0 -1
  891. package/esm/FormControl/hooks/useRegisterModel.d.ts +0 -3
  892. package/esm/Progress/ProgressCircle.js +0 -125
  893. package/esm/internals/Overlay/positionUtils.d.ts +0 -15
  894. package/internals/Box/styles/index.less +0 -82
  895. package/internals/Burger/styles/index.less +0 -67
  896. package/internals/CloseButton/styles/index.less +0 -15
  897. package/internals/Picker/styles/index.less +0 -477
  898. package/internals/Picker/styles/mixin.less +0 -131
  899. package/internals/Ripple/styles/index.less +0 -36
  900. package/internals/Ripple/styles/mixins.less +0 -6
  901. package/internals/ScrollView/styles/index.less +0 -69
  902. package/internals/SearchBox/styles/index.less +0 -11
  903. package/styles/color-modes/dark.less +0 -441
  904. package/styles/color-modes/high-contrast.less +0 -452
  905. package/styles/color-modes/light.less +0 -464
  906. package/styles/colors/dark.less +0 -105
  907. package/styles/colors/high-contrast.less +0 -105
  908. package/styles/colors/light.less +0 -105
  909. package/styles/common.less +0 -13
  910. package/styles/index.less +0 -106
  911. package/styles/mixins/color-modes.less +0 -16
  912. package/styles/mixins/combobox.less +0 -6
  913. package/styles/mixins/hacks.less +0 -32
  914. package/styles/mixins/listbox.less +0 -68
  915. package/styles/mixins/menu.less +0 -12
  916. package/styles/mixins/utilities.less +0 -183
  917. package/styles/normalize.less +0 -247
  918. package/styles/plugins/palette.js +0 -1407
  919. package/styles/root.less +0 -83
  920. package/styles/scaffolding.less +0 -54
  921. package/styles/typography.less +0 -123
  922. package/styles/variables.less +0 -638
  923. package/toaster/styles/animation.less +0 -54
  924. package/toaster/styles/index.less +0 -100
  925. package/useToaster/styles/index.less +0 -1
  926. /package/cjs/{FormControl/utils.d.ts → useFormControl/utils/nameToPath.d.ts} +0 -0
  927. /package/esm/{FormControl/utils.d.ts → useFormControl/utils/nameToPath.d.ts} +0 -0
@@ -23,10 +23,7 @@ function getContainer(containerId, placement) {
23
23
  return containers.get(`${containerId}_${placement}`);
24
24
  }
25
25
  const toaster = message => toaster.push(message);
26
- toaster.push = function (message, options) {
27
- if (options === void 0) {
28
- options = {};
29
- }
26
+ toaster.push = (message, options = {}) => {
30
27
  const {
31
28
  placement = 'topCenter',
32
29
  container = defaultToasterContainer,
@@ -0,0 +1,15 @@
1
+ import React from 'react';
2
+ import { ModalProps } from '../Modal';
3
+ export interface DialogProps extends ModalProps {
4
+ type: 'alert' | 'confirm' | 'prompt';
5
+ title?: React.ReactNode;
6
+ content?: React.ReactNode;
7
+ okText?: string;
8
+ cancelText?: string;
9
+ severity?: 'info' | 'success' | 'warning' | 'error';
10
+ defaultValue?: string;
11
+ validate?: (value: string) => [isValid: boolean, errorMessage?: string];
12
+ onClose?: (result?: any) => void;
13
+ }
14
+ declare const Dialog: import("../internals/types").InternalRefForwardingComponent<React.ElementType<any, keyof React.JSX.IntrinsicElements>, DialogProps, never> & Record<string, never>;
15
+ export default Dialog;
@@ -0,0 +1,103 @@
1
+ 'use client';
2
+ import _extends from "@babel/runtime/helpers/esm/extends";
3
+ import React, { useCallback, useRef, useEffect, useState } from 'react';
4
+ import Modal from "../Modal/index.js";
5
+ import Button from "../Button/index.js";
6
+ import Input from "../Input/index.js";
7
+ import Text from "../Text/index.js";
8
+ import { forwardRef } from "../internals/utils/index.js";
9
+ import { VStack } from "../Stack/index.js";
10
+ import { useCustom } from "../internals/hooks/index.js";
11
+ const severityMap = {
12
+ info: 'blue',
13
+ success: 'green',
14
+ warning: 'orange',
15
+ error: 'red'
16
+ };
17
+ const Dialog = forwardRef((props, ref) => {
18
+ const {
19
+ getLocale,
20
+ propsWithDefaults
21
+ } = useCustom('Dialog', props);
22
+ const locale = getLocale('Dialog');
23
+ const {
24
+ type,
25
+ title = type === 'alert' ? locale.alert : locale.confirm,
26
+ content,
27
+ okText = locale.ok,
28
+ cancelText = locale.cancel,
29
+ severity,
30
+ defaultValue = '',
31
+ validate,
32
+ onClose,
33
+ ...rest
34
+ } = propsWithDefaults;
35
+ const [isOpen, setIsOpen] = useState(true);
36
+ const [validationError, setValidationError] = useState();
37
+ const inputRef = useRef(null);
38
+ const inputValue = useRef(defaultValue);
39
+ const showCancelButton = type === 'confirm' || type === 'prompt';
40
+ useEffect(() => {
41
+ if (type === 'prompt' && inputRef.current) {
42
+ inputRef.current.focus();
43
+ }
44
+ }, [type]);
45
+ const handleClose = useCallback(result => {
46
+ setIsOpen(false);
47
+ setTimeout(() => {
48
+ onClose === null || onClose === void 0 || onClose(result);
49
+ }, 300);
50
+ }, [onClose]);
51
+ const handleConfirm = useCallback(() => {
52
+ if (type === 'prompt') {
53
+ const value = inputValue.current;
54
+ if (validate) {
55
+ const [isValid, errorMessage] = validate(value);
56
+ if (!isValid) {
57
+ setValidationError(errorMessage || 'Invalid input');
58
+ return;
59
+ }
60
+ }
61
+ handleClose(value);
62
+ } else {
63
+ handleClose(true);
64
+ }
65
+ }, [type, inputValue, validate, handleClose]);
66
+ const handleInputKeyDown = useCallback(event => {
67
+ if (event.key === 'Enter') {
68
+ handleConfirm();
69
+ }
70
+ }, [handleConfirm]);
71
+ return /*#__PURE__*/React.createElement(Modal, _extends({
72
+ ref: ref,
73
+ open: isOpen,
74
+ size: "xs",
75
+ centered: true,
76
+ backdrop: "static"
77
+ }, rest), /*#__PURE__*/React.createElement(Modal.Header, {
78
+ closeButton: false
79
+ }, /*#__PURE__*/React.createElement(Modal.Title, null, title)), /*#__PURE__*/React.createElement(Modal.Body, null, /*#__PURE__*/React.createElement(VStack, null, type === 'prompt' ? /*#__PURE__*/React.createElement(React.Fragment, null, /*#__PURE__*/React.createElement("label", {
80
+ htmlFor: "rs-prompt-input"
81
+ }, content), /*#__PURE__*/React.createElement(Input, {
82
+ w: "100%",
83
+ required: true,
84
+ ref: inputRef,
85
+ id: "rs-prompt-input",
86
+ defaultValue: defaultValue,
87
+ onChange: value => {
88
+ inputValue.current = value;
89
+ if (validationError) setValidationError(undefined);
90
+ },
91
+ onKeyDown: handleInputKeyDown
92
+ }), validationError && /*#__PURE__*/React.createElement(Text, {
93
+ color: "red"
94
+ }, validationError)) : content)), /*#__PURE__*/React.createElement(Modal.Footer, null, showCancelButton && /*#__PURE__*/React.createElement(Button, {
95
+ onClick: handleClose,
96
+ appearance: "subtle"
97
+ }, cancelText), /*#__PURE__*/React.createElement(Button, {
98
+ appearance: "primary",
99
+ onClick: handleConfirm,
100
+ color: severity ? severityMap[severity] : undefined
101
+ }, okText)));
102
+ });
103
+ export default Dialog;
@@ -0,0 +1,11 @@
1
+ import React from 'react';
2
+ export interface DialogContainerProps {
3
+ children?: React.ReactNode;
4
+ }
5
+ export interface DialogContainerInstance {
6
+ renderDialog: (dialog: React.ReactElement) => string | number;
7
+ removeDialog: (key: string | number) => void;
8
+ clearDialogs: () => void;
9
+ }
10
+ declare const DialogContainer: React.ForwardRefExoticComponent<DialogContainerProps & React.RefAttributes<DialogContainerInstance>>;
11
+ export default DialogContainer;
@@ -0,0 +1,52 @@
1
+ 'use client';
2
+ import React, { useRef, useImperativeHandle, forwardRef, useState, useEffect } from 'react';
3
+ import { guid } from "../internals/utils/index.js";
4
+ const DialogContainer = /*#__PURE__*/forwardRef((_, ref) => {
5
+ const [dialogs, setDialogs] = useState([]);
6
+ const [isMounted, setIsMounted] = useState(false);
7
+ const dialogsRef = useRef([]);
8
+
9
+ // Only render on the client side to avoid hydration issues
10
+ useEffect(() => {
11
+ setIsMounted(true);
12
+ }, []);
13
+ useImperativeHandle(ref, () => ({
14
+ renderDialog: dialog => {
15
+ // Always generate a unique key using guid
16
+ const dialogKey = guid();
17
+ const nextDialogs = [...dialogsRef.current, {
18
+ key: dialogKey,
19
+ dialog
20
+ }];
21
+ dialogsRef.current = nextDialogs;
22
+ setDialogs(nextDialogs);
23
+ return dialogKey;
24
+ },
25
+ removeDialog: key => {
26
+ // Find if the dialog exists
27
+ const dialogExists = dialogsRef.current.some(item => item.key === key);
28
+ if (dialogExists) {
29
+ // Filter out the dialog with the matching key
30
+ const nextDialogs = dialogsRef.current.filter(item => item.key !== key);
31
+
32
+ // Update both the ref and state
33
+ dialogsRef.current = nextDialogs;
34
+ setDialogs(nextDialogs);
35
+ }
36
+ },
37
+ clearDialogs: () => {
38
+ dialogsRef.current = [];
39
+ setDialogs([]);
40
+ }
41
+ }));
42
+
43
+ // Only render Portal on the client side to avoid hydration issues
44
+ if (!isMounted) {
45
+ return null;
46
+ }
47
+ return /*#__PURE__*/React.createElement(React.Fragment, null, dialogs.map(item => /*#__PURE__*/React.createElement(React.Fragment, {
48
+ key: item.key
49
+ }, item.dialog)));
50
+ });
51
+ DialogContainer.displayName = 'DialogContainer';
52
+ export default DialogContainer;
@@ -0,0 +1,3 @@
1
+ import useDialog from './useDialog';
2
+ export default useDialog;
3
+ export * from './useDialog';
@@ -0,0 +1,4 @@
1
+ 'use client';
2
+ import useDialog from "./useDialog.js";
3
+ export default useDialog;
4
+ export * from "./useDialog.js";
@@ -0,0 +1,33 @@
1
+ import type { ReactNode } from 'react';
2
+ export interface AlertOptions {
3
+ /** Title of the dialog */
4
+ title?: ReactNode;
5
+ /** Text for OK button */
6
+ okText?: string;
7
+ /** Callback when dialog is closed */
8
+ onClose?: () => void;
9
+ }
10
+ export interface ConfirmOptions extends AlertOptions {
11
+ /** Severity of the dialog */
12
+ severity?: 'info' | 'success' | 'warning' | 'error';
13
+ /** Text for Cancel button */
14
+ cancelText?: string;
15
+ }
16
+ export interface PromptOptions extends AlertOptions {
17
+ /** Default value for the input */
18
+ defaultValue?: string;
19
+ /** Text for Cancel button */
20
+ cancelText?: string;
21
+ /** Validate function for prompt input */
22
+ validate?: (value: string) => [isValid: boolean, errorMessage?: string];
23
+ }
24
+ export interface OpenOptions<T = any> {
25
+ /** Callback when dialog is closed */
26
+ onClose?: (result?: T) => void;
27
+ }
28
+ export interface DialogInstance<T = any> {
29
+ key: number;
30
+ component: ReactNode;
31
+ resolve: (value: T | PromiseLike<T>) => void;
32
+ reject: (reason?: any) => void;
33
+ }
@@ -0,0 +1,2 @@
1
+ 'use client';
2
+ export {};
@@ -0,0 +1,15 @@
1
+ import React from 'react';
2
+ import type { AlertOptions, ConfirmOptions, OpenOptions, PromptOptions } from './types';
3
+ /**
4
+ * A hook that provides methods to show dialogs.
5
+ * @see https://rsuitejs.com/components/use-dialog
6
+ */
7
+ export declare function useDialog(): {
8
+ alert: (message: React.ReactNode, options?: AlertOptions) => Promise<any>;
9
+ confirm: (message: React.ReactNode, options?: ConfirmOptions) => Promise<any>;
10
+ prompt: (message: React.ReactNode, options?: PromptOptions) => Promise<any>;
11
+ open: <P extends object>(as: React.ComponentType<P & {
12
+ onClose: (result?: any) => void;
13
+ }>, payload?: P | undefined, options?: OpenOptions) => Promise<any>;
14
+ };
15
+ export default useDialog;
@@ -0,0 +1,120 @@
1
+ 'use client';
2
+ import _extends from "@babel/runtime/helpers/esm/extends";
3
+ import React, { useCallback, useRef, useContext, useEffect } from 'react';
4
+ import canUseDOM from 'dom-lib/canUseDOM';
5
+ import Dialog from "./Dialog.js";
6
+ import { CustomContext } from "../internals/Provider/CustomContext.js";
7
+
8
+ /**
9
+ * Options for creating a dialog
10
+ */
11
+
12
+ const useDialogContainer = () => {
13
+ const context = useContext(CustomContext);
14
+ const dialogContainerRef = useRef(null);
15
+ useEffect(() => {
16
+ if (canUseDOM && !(context !== null && context !== void 0 && context.dialogContainer)) {
17
+ console.warn('Warning: useDialog is being used outside of a CustomProvider. ' + 'Please wrap your application with <CustomProvider> to ensure proper functionality.');
18
+ }
19
+ }, [context]);
20
+ useEffect(() => {
21
+ var _context$dialogContai;
22
+ if (canUseDOM && context !== null && context !== void 0 && (_context$dialogContai = context.dialogContainer) !== null && _context$dialogContai !== void 0 && _context$dialogContai.current) {
23
+ dialogContainerRef.current = context.dialogContainer.current;
24
+ }
25
+ }, [context]);
26
+ return dialogContainerRef;
27
+ };
28
+
29
+ /**
30
+ * A hook that provides methods to show dialogs.
31
+ * @see https://rsuitejs.com/components/use-dialog
32
+ */
33
+ export function useDialog() {
34
+ const dialogContainerRef = useDialogContainer();
35
+ const createDialog = useCallback((content, options) => {
36
+ const {
37
+ type,
38
+ title,
39
+ okText,
40
+ cancelText,
41
+ severity,
42
+ defaultValue,
43
+ validate
44
+ } = options;
45
+ let isDialogClosed = false;
46
+ let dialogKey = null;
47
+ return new Promise(resolve => {
48
+ const handleClose = result => {
49
+ if (isDialogClosed) {
50
+ return;
51
+ }
52
+ isDialogClosed = true;
53
+ if (canUseDOM && dialogContainerRef.current && dialogKey !== null) {
54
+ dialogContainerRef.current.removeDialog(dialogKey);
55
+ }
56
+ resolve(result);
57
+ };
58
+ let dialogComponent;
59
+ if (type === 'custom' && options.as) {
60
+ const {
61
+ as: Component,
62
+ props
63
+ } = options;
64
+ dialogComponent = /*#__PURE__*/React.createElement(Component, _extends({
65
+ onClose: handleClose
66
+ }, props));
67
+ } else {
68
+ dialogComponent = /*#__PURE__*/React.createElement(Dialog, {
69
+ type: type,
70
+ title: title,
71
+ content: content,
72
+ okText: okText,
73
+ cancelText: cancelText,
74
+ onClose: handleClose,
75
+ defaultValue: defaultValue || '',
76
+ severity: severity,
77
+ validate: validate
78
+ });
79
+ }
80
+ if (canUseDOM && dialogContainerRef.current) {
81
+ dialogKey = dialogContainerRef.current.renderDialog(dialogComponent);
82
+ }
83
+ });
84
+ }, []);
85
+ const alert = useCallback((message, options) => {
86
+ return createDialog(message, {
87
+ ...options,
88
+ type: 'alert'
89
+ });
90
+ }, [createDialog]);
91
+ const confirm = useCallback((message, options) => {
92
+ return createDialog(message, {
93
+ ...options,
94
+ type: 'confirm'
95
+ });
96
+ }, [createDialog]);
97
+ const prompt = useCallback((message, options = {}) => {
98
+ return createDialog(message, {
99
+ ...options,
100
+ type: 'prompt'
101
+ });
102
+ }, [createDialog]);
103
+ const open = useCallback((as, payload, options) => {
104
+ return createDialog(null, {
105
+ ...options,
106
+ as,
107
+ type: 'custom',
108
+ props: {
109
+ payload
110
+ }
111
+ });
112
+ }, [createDialog]);
113
+ return {
114
+ alert,
115
+ confirm,
116
+ prompt,
117
+ open
118
+ };
119
+ }
120
+ export default useDialog;
@@ -4,15 +4,15 @@ interface FieldProps {
4
4
  formValue?: Record<string, any>;
5
5
  formError?: Record<string, any>;
6
6
  value: any;
7
- nestedField: boolean;
7
+ nestedField?: boolean;
8
8
  errorMessage: React.ReactNode;
9
9
  errorFromContext?: boolean;
10
10
  }
11
- declare function useField(props: FieldProps): {
11
+ export declare function useField(props: FieldProps): {
12
12
  fieldValue: any;
13
13
  fieldError: import("react").ReactNode;
14
14
  setFieldValue: (fieldName: string, fieldValue: any) => {
15
15
  [x: string]: any;
16
16
  };
17
17
  };
18
- export default useField;
18
+ export {};
@@ -1,8 +1,8 @@
1
1
  'use client';
2
- import { isValidElement, useCallback, useMemo } from 'react';
3
2
  import get from 'lodash/get';
4
3
  import set from 'lodash/set';
5
- import { nameToPath } from "../utils.js";
4
+ import { isValidElement, useCallback, useMemo } from 'react';
5
+ import { nameToPath } from "../utils/nameToPath.js";
6
6
  function getErrorMessage(error) {
7
7
  var _error$array;
8
8
  if (typeof error === 'string') {
@@ -22,7 +22,7 @@ function getErrorMessage(error) {
22
22
  }
23
23
  return error === null || error === void 0 ? void 0 : error.errorMessage;
24
24
  }
25
- function useField(props) {
25
+ export function useField(props) {
26
26
  const {
27
27
  name,
28
28
  formValue,
@@ -67,5 +67,4 @@ function useField(props) {
67
67
  fieldError,
68
68
  setFieldValue
69
69
  };
70
- }
71
- export default useField;
70
+ }
@@ -0,0 +1,2 @@
1
+ import type { CheckType } from 'schema-typed';
2
+ export declare function useRegisterModel(name: string, rule?: CheckType<unknown, any>): void;
@@ -1,7 +1,7 @@
1
1
  'use client';
2
2
  import { useRef, useEffect } from 'react';
3
3
  import { useFormContext } from "../../Form/FormContext.js";
4
- function useRegisterModel(name, rule) {
4
+ export function useRegisterModel(name, rule) {
5
5
  const {
6
6
  pushFieldRule,
7
7
  removeFieldRule
@@ -14,5 +14,4 @@ function useRegisterModel(name, rule) {
14
14
  removeFieldRule === null || removeFieldRule === void 0 || removeFieldRule(name);
15
15
  };
16
16
  }, [name, pushFieldRule, removeFieldRule]);
17
- }
18
- export default useRegisterModel;
17
+ }
@@ -0,0 +1,4 @@
1
+ import useFormControl from './useFormControl';
2
+ export type { UseFormControlProps } from './useFormControl';
3
+ export { useFormControl };
4
+ export default useFormControl;
@@ -0,0 +1,8 @@
1
+ 'use client';
2
+ import useFormControl from "./useFormControl.js";
3
+
4
+ // export types
5
+
6
+ // export hooks
7
+ export { useFormControl };
8
+ export default useFormControl;
@@ -0,0 +1,38 @@
1
+ import React from 'react';
2
+ import type { CheckType } from 'schema-typed';
3
+ import type { CheckTriggerType } from '../internals/types';
4
+ export interface UseFormControlProps {
5
+ /** The name of form field */
6
+ name: string;
7
+ /** The current value (controlled) */
8
+ value?: any;
9
+ /** The data validation trigger type */
10
+ checkTrigger?: CheckTriggerType;
11
+ /** Show error messages */
12
+ errorMessage?: React.ReactNode;
13
+ /** Asynchronous check value */
14
+ checkAsync?: boolean;
15
+ /** Remove field value and error message when component is unmounted */
16
+ shouldResetWithUnmount?: boolean;
17
+ /** Validation rule */
18
+ rule?: CheckType<unknown, any>;
19
+ }
20
+ /**
21
+ * Hook for accessing form control functionality.
22
+ * Must be used within a Form component.
23
+ *
24
+ * @param props The form control properties
25
+ * @returns Form control functionality for the specified field
26
+ */
27
+ export declare function useFormControl(props: UseFormControlProps): {
28
+ value: any;
29
+ error: React.ReactNode;
30
+ plaintext: boolean | undefined;
31
+ readOnly: boolean | undefined;
32
+ disabled: boolean | undefined;
33
+ onChange: (...args: any[]) => any;
34
+ onCheck: (...args: any[]) => any;
35
+ onBlur: (...args: any[]) => any;
36
+ setValue: (value: any, shouldValidate?: boolean) => void;
37
+ };
38
+ export default useFormControl;
@@ -0,0 +1,130 @@
1
+ 'use client';
2
+ import { useCallback, useContext } from 'react';
3
+ import { FormValueContext, useFormContext } from "../Form/FormContext.js";
4
+ import { useWillUnmount, useEventCallback } from "../internals/hooks/index.js";
5
+ import { useRegisterModel } from "./hooks/useRegisterModel.js";
6
+ import { useField } from "./hooks/useField.js";
7
+ /**
8
+ * Hook for accessing form control functionality.
9
+ * Must be used within a Form component.
10
+ *
11
+ * @param props The form control properties
12
+ * @returns Form control functionality for the specified field
13
+ */
14
+ export function useFormControl(props) {
15
+ const {
16
+ name,
17
+ value: controlledValue,
18
+ checkTrigger,
19
+ errorMessage,
20
+ checkAsync = false,
21
+ shouldResetWithUnmount = false,
22
+ rule
23
+ } = props;
24
+ const {
25
+ readOnly,
26
+ plaintext,
27
+ disabled,
28
+ errorFromContext,
29
+ formError,
30
+ nestedField,
31
+ onFieldChange,
32
+ removeFieldValue,
33
+ removeFieldError,
34
+ checkTrigger: contextCheckTrigger,
35
+ checkFieldForNextValue,
36
+ checkFieldAsyncForNextValue
37
+ } = useFormContext();
38
+
39
+ // Throw an error if not used within a Form component
40
+ if (!onFieldChange) {
41
+ console.error(`<useFormControl> must be used inside a component decorated with <Form>. And need to update React to 16.6.0 +.`);
42
+ }
43
+ const formValue = useContext(FormValueContext);
44
+
45
+ // Register form field model
46
+ useRegisterModel(name, rule);
47
+
48
+ // Cleanup on unmount if shouldResetWithUnmount is true
49
+ useWillUnmount(() => {
50
+ if (shouldResetWithUnmount) {
51
+ removeFieldValue === null || removeFieldValue === void 0 || removeFieldValue(name);
52
+ removeFieldError === null || removeFieldError === void 0 || removeFieldError(name);
53
+ }
54
+ });
55
+
56
+ // Use the useField hook to handle field value and error
57
+ const {
58
+ fieldValue: value,
59
+ fieldError: error,
60
+ setFieldValue
61
+ } = useField({
62
+ name,
63
+ errorMessage,
64
+ formValue,
65
+ formError,
66
+ value: controlledValue,
67
+ nestedField,
68
+ errorFromContext
69
+ });
70
+ const trigger = checkTrigger || contextCheckTrigger;
71
+
72
+ // Handler for field check (validation)
73
+ const onCheck = useEventCallback(value => {
74
+ // Don't perform validation when checkTrigger is null
75
+ if (trigger === null) {
76
+ return;
77
+ }
78
+ const nextFormValue = setFieldValue(name, value);
79
+ if (checkAsync) {
80
+ checkFieldAsyncForNextValue === null || checkFieldAsyncForNextValue === void 0 || checkFieldAsyncForNextValue(name, nextFormValue);
81
+ } else {
82
+ checkFieldForNextValue === null || checkFieldForNextValue === void 0 || checkFieldForNextValue(name, nextFormValue);
83
+ }
84
+ });
85
+
86
+ // Handler for field change
87
+ const onChange = useEventCallback((value, event) => {
88
+ if (trigger === 'change') {
89
+ onCheck(value);
90
+ }
91
+ onFieldChange === null || onFieldChange === void 0 || onFieldChange(name, value, event);
92
+ });
93
+
94
+ // Handler for field blur
95
+ const onBlur = useEventCallback(() => {
96
+ if (trigger === 'blur') {
97
+ onCheck(value);
98
+ }
99
+ });
100
+
101
+ /**
102
+ * Directly sets the field value without triggering validation or onChange events.
103
+ * Useful for programmatically updating field values.
104
+ * @param value The new value to set
105
+ * @param shouldValidate Whether to trigger validation (defaults to false)
106
+ */
107
+ const setValue = useCallback((value, shouldValidate = false) => {
108
+ const nextFormValue = setFieldValue(name, value);
109
+ onFieldChange === null || onFieldChange === void 0 || onFieldChange(name, value);
110
+ if (shouldValidate && trigger !== null) {
111
+ if (checkAsync) {
112
+ checkFieldAsyncForNextValue === null || checkFieldAsyncForNextValue === void 0 || checkFieldAsyncForNextValue(name, nextFormValue);
113
+ } else {
114
+ checkFieldForNextValue === null || checkFieldForNextValue === void 0 || checkFieldForNextValue(name, nextFormValue);
115
+ }
116
+ }
117
+ }, [name, setFieldValue, trigger, checkAsync, checkFieldAsyncForNextValue, checkFieldForNextValue]);
118
+ return {
119
+ value,
120
+ error,
121
+ plaintext,
122
+ readOnly,
123
+ disabled,
124
+ onChange,
125
+ onCheck,
126
+ onBlur,
127
+ setValue
128
+ };
129
+ }
130
+ export default useFormControl;
@@ -48,10 +48,7 @@ function createLegacyMediaQueryMap(breakpoints) {
48
48
  const xsValue = breakpoints.xs;
49
49
  if (xsValue) {
50
50
  // For xs, use max-width of the next breakpoint minus 0.01
51
- const nextBreakpoint = entries.find(_ref => {
52
- let [key] = _ref;
53
- return key === 'sm';
54
- });
51
+ const nextBreakpoint = entries.find(([key]) => key === 'sm');
55
52
  if (nextBreakpoint) {
56
53
  result.xs = `(max-width: ${adjustMaxWidth(nextBreakpoint[1])})`;
57
54
  } else {
@@ -60,8 +57,7 @@ function createLegacyMediaQueryMap(breakpoints) {
60
57
  }
61
58
 
62
59
  // For all other breakpoints, use min-width
63
- entries.forEach(_ref2 => {
64
- let [key, value] = _ref2;
60
+ entries.forEach(([key, value]) => {
65
61
  if (key !== 'xs') {
66
62
  result[key] = `(min-width: ${value})`;
67
63
  }
@@ -100,8 +96,7 @@ export function createBreakpoints(breakpoints) {
100
96
  });
101
97
 
102
98
  // Create breakpoint entries with min and max values
103
- const breakpointEntries = sortedEntries.map((_ref3, index) => {
104
- let [name, value] = _ref3;
99
+ const breakpointEntries = sortedEntries.map(([name, value], index) => {
105
100
  let max = null;
106
101
 
107
102
  // If not the last breakpoint, use the next breakpoint's value minus 0.01 as the current max
@@ -221,8 +216,7 @@ export function createBreakpoints(breakpoints) {
221
216
 
222
217
  // Add enhanced conditions, excluding any keys that would override legacy map
223
218
  const breakpointKeys = Object.keys(legacyMap);
224
- Object.entries(conditions).forEach(_ref4 => {
225
- let [key, value] = _ref4;
219
+ Object.entries(conditions).forEach(([key, value]) => {
226
220
  if (!breakpointKeys.includes(key)) {
227
221
  mediaQueryMap[key] = value;
228
222
  }