rsuite 6.0.0-canary-20250416 → 6.0.0-canary-20250424

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 (520) hide show
  1. package/AutoComplete/styles/index.css +32 -71
  2. package/Button/styles/index.css +4 -6
  3. package/CHANGELOG.md +15 -0
  4. package/Calendar/styles/index.css +8 -16
  5. package/CascadeTree/styles/index.css +8 -16
  6. package/Cascader/styles/index.css +36 -79
  7. package/CheckPicker/styles/index.css +32 -66
  8. package/CheckTree/styles/index.css +34 -70
  9. package/CheckTreePicker/styles/index.css +34 -70
  10. package/Checkbox/styles/index.css +7 -9
  11. package/Checkbox/styles/index.less +1 -1
  12. package/DateInput/styles/index.css +6 -9
  13. package/DatePicker/styles/index.css +38 -81
  14. package/DateRangeInput/styles/index.css +6 -9
  15. package/DateRangePicker/styles/index.css +38 -81
  16. package/Dropdown/styles/index.css +6 -10
  17. package/FormControl/styles/index.css +2 -2
  18. package/FormControl/styles/index.less +2 -2
  19. package/IconButton/styles/index.css +4 -6
  20. package/Input/styles/index.css +6 -9
  21. package/Input/styles/mixin.less +2 -3
  22. package/InputGroup/styles/index.css +7 -13
  23. package/InputGroup/styles/index.less +3 -4
  24. package/InputNumber/styles/index.css +36 -35
  25. package/InputNumber/styles/index.less +1 -67
  26. package/InputPicker/styles/index.css +32 -71
  27. package/Message/styles/index.css +5 -15
  28. package/Message/styles/index.less +4 -3
  29. package/MultiCascadeTree/styles/index.css +38 -80
  30. package/MultiCascader/styles/index.css +38 -80
  31. package/Nav/styles/index.css +8 -14
  32. package/Navbar/styles/index.css +16 -40
  33. package/NumberInput/package.json +7 -0
  34. package/NumberInput/styles/index.css +1402 -0
  35. package/NumberInput/styles/index.less +74 -0
  36. package/{InputNumber → NumberInput}/styles/mixin.less +0 -0
  37. package/Pagination/styles/index.css +34 -75
  38. package/PasswordInput/styles/index.css +6 -9
  39. package/PinInput/package.json +7 -0
  40. package/PinInput/styles/index.css +212 -0
  41. package/PinInput/styles/index.less +66 -0
  42. package/Radio/styles/index.css +7 -9
  43. package/Radio/styles/index.less +1 -1
  44. package/RangeSlider/styles/index.css +2 -0
  45. package/SelectPicker/styles/index.css +32 -71
  46. package/Sidenav/styles/index.css +30 -67
  47. package/Slider/styles/index.css +2 -0
  48. package/Slider/styles/index.less +2 -0
  49. package/Stat/styles/index.css +4 -6
  50. package/Tabs/styles/index.css +8 -14
  51. package/Tag/styles/index.css +0 -15
  52. package/TagInput/styles/index.css +34 -72
  53. package/TagPicker/styles/index.css +34 -72
  54. package/TimePicker/styles/index.css +38 -81
  55. package/TimeRangePicker/styles/index.css +38 -81
  56. package/Toggle/styles/index.css +9 -13
  57. package/Toggle/styles/index.less +3 -4
  58. package/Tree/styles/index.css +34 -75
  59. package/TreePicker/styles/index.css +34 -75
  60. package/Uploader/styles/index.css +6 -10
  61. package/cjs/Accordion/Accordion.js +2 -2
  62. package/cjs/Affix/Affix.js +1 -2
  63. package/cjs/Animation/Bounce.js +1 -2
  64. package/cjs/Animation/Collapse.js +1 -2
  65. package/cjs/Animation/Fade.js +1 -2
  66. package/cjs/Animation/Slide.js +1 -2
  67. package/cjs/AutoComplete/AutoComplete.d.ts +2 -2
  68. package/cjs/AutoComplete/AutoComplete.js +1 -2
  69. package/cjs/Avatar/Avatar.js +1 -2
  70. package/cjs/AvatarGroup/AvatarGroup.js +1 -2
  71. package/cjs/Badge/Badge.js +1 -2
  72. package/cjs/Breadcrumb/Breadcrumb.js +1 -2
  73. package/cjs/Button/Button.d.ts +2 -2
  74. package/cjs/Button/Button.js +1 -2
  75. package/cjs/ButtonGroup/ButtonGroup.d.ts +2 -2
  76. package/cjs/ButtonGroup/ButtonGroup.js +1 -2
  77. package/cjs/ButtonToolbar/ButtonToolbar.js +1 -2
  78. package/cjs/Calendar/Calendar.js +4 -4
  79. package/cjs/Calendar/CalendarBody.js +1 -4
  80. package/cjs/Calendar/CalendarContainer.js +1 -1
  81. package/cjs/Calendar/CalendarHeader.js +3 -3
  82. package/cjs/Calendar/CalendarProvider.d.ts +1 -1
  83. package/cjs/Calendar/Grid/GridCell.js +1 -2
  84. package/cjs/Calendar/Grid/GridHeaderRow.js +1 -2
  85. package/cjs/Calendar/Grid/GridRow.d.ts +2 -0
  86. package/cjs/Calendar/Grid/GridRow.js +5 -4
  87. package/cjs/Calendar/MonthDropdown/MonthDropdownItem.js +1 -2
  88. package/cjs/Calendar/hooks/useCalendar.d.ts +24 -2
  89. package/cjs/Calendar/hooks/useCalendar.js +34 -1
  90. package/cjs/Card/Card.js +1 -2
  91. package/cjs/CardGroup/CardGroup.js +1 -2
  92. package/cjs/Carousel/Carousel.js +1 -2
  93. package/cjs/CascadeTree/CascadeTree.js +1 -2
  94. package/cjs/CascadeTree/SearchView.js +1 -2
  95. package/cjs/CascadeTree/TreeView.js +1 -2
  96. package/cjs/Cascader/Cascader.js +1 -2
  97. package/cjs/CheckPicker/CheckPicker.js +1 -2
  98. package/cjs/CheckTree/CheckTree.js +1 -2
  99. package/cjs/CheckTree/CheckTreeNode.js +1 -2
  100. package/cjs/CheckTree/CheckTreeView.js +1 -2
  101. package/cjs/CheckTreePicker/CheckTreePicker.js +1 -2
  102. package/cjs/Checkbox/Checkbox.js +1 -2
  103. package/cjs/CheckboxGroup/CheckboxGroup.js +1 -2
  104. package/cjs/Container/Container.js +1 -2
  105. package/cjs/CustomProvider/CustomProvider.d.ts +1 -271
  106. package/cjs/CustomProvider/CustomProvider.js +2 -3
  107. package/cjs/CustomProvider/index.d.ts +1 -6
  108. package/cjs/CustomProvider/index.js +3 -12
  109. package/cjs/DateInput/DateInput.js +1 -2
  110. package/cjs/DateInput/hooks/useDateInputState.js +2 -2
  111. package/cjs/DatePicker/DatePicker.js +2 -3
  112. package/cjs/DatePicker/hooks/useFocus.js +1 -2
  113. package/cjs/DateRangeInput/DateRangeInput.js +1 -2
  114. package/cjs/DateRangePicker/DateRangePicker.js +2 -3
  115. package/cjs/DateRangePicker/Header.js +3 -3
  116. package/cjs/DateRangePicker/utils.d.ts +1 -1
  117. package/cjs/DateRangePicker/utils.js +1 -1
  118. package/cjs/Divider/Divider.js +1 -2
  119. package/cjs/Drawer/Drawer.js +1 -2
  120. package/cjs/Dropdown/Dropdown.js +1 -2
  121. package/cjs/Dropdown/DropdownMenu.js +1 -2
  122. package/cjs/FlexboxGrid/FlexboxGrid.js +1 -2
  123. package/cjs/Form/Form.js +1 -2
  124. package/cjs/FormControl/FormControl.js +1 -2
  125. package/cjs/FormControlLabel/FormControlLabel.js +1 -2
  126. package/cjs/FormErrorMessage/FormErrorMessage.js +1 -2
  127. package/cjs/FormGroup/FormGroup.js +1 -2
  128. package/cjs/FormHelpText/FormHelpText.js +1 -2
  129. package/cjs/FormStack/FormStack.js +1 -2
  130. package/cjs/Grid/Col.js +1 -2
  131. package/cjs/Grid/Grid.js +1 -2
  132. package/cjs/Grid/Row.js +1 -2
  133. package/cjs/Heading/Heading.js +1 -2
  134. package/cjs/Highlight/Highlight.js +2 -3
  135. package/cjs/IconButton/IconButton.js +1 -2
  136. package/cjs/Image/Image.js +2 -3
  137. package/cjs/InlineEdit/InlineEdit.js +1 -2
  138. package/cjs/Input/Input.js +3 -3
  139. package/cjs/InputGroup/InputGroup.js +1 -2
  140. package/cjs/InputNumber/index.d.ts +12 -2
  141. package/cjs/InputNumber/index.js +11 -4
  142. package/cjs/InputPicker/InputPicker.js +1 -2
  143. package/cjs/InputPicker/utils.d.ts +1 -1
  144. package/cjs/Kbd/Kbd.js +1 -2
  145. package/cjs/Link/Link.js +1 -2
  146. package/cjs/List/List.js +1 -2
  147. package/cjs/Loader/Loader.js +1 -2
  148. package/cjs/MaskedInput/MaskedInput.js +2 -2
  149. package/cjs/Message/Message.js +1 -2
  150. package/cjs/Modal/Modal.js +1 -2
  151. package/cjs/Modal/ModalHeader.js +1 -2
  152. package/cjs/MultiCascadeTree/MultiCascadeTree.js +1 -2
  153. package/cjs/MultiCascadeTree/SearchView.js +1 -2
  154. package/cjs/MultiCascadeTree/TreeView.js +1 -2
  155. package/cjs/MultiCascader/MultiCascader.js +1 -2
  156. package/cjs/Nav/Nav.js +1 -2
  157. package/cjs/Nav/NavDropdownMenu.js +1 -2
  158. package/cjs/Navbar/Navbar.d.ts +1 -1
  159. package/cjs/Navbar/Navbar.js +1 -2
  160. package/cjs/Navbar/NavbarDropdownMenu.js +1 -2
  161. package/cjs/Navbar/NavbarToggle.d.ts +8 -3
  162. package/cjs/Navbar/NavbarToggle.js +9 -14
  163. package/cjs/Notification/Notification.js +1 -2
  164. package/cjs/{InputNumber/InputNumber.d.ts → NumberInput/NumberInput.d.ts} +20 -8
  165. package/cjs/NumberInput/NumberInput.js +162 -0
  166. package/cjs/NumberInput/hooks/useEvents.d.ts +22 -0
  167. package/cjs/NumberInput/hooks/useEvents.js +114 -0
  168. package/cjs/NumberInput/hooks/useNumberInputValue.d.ts +7 -0
  169. package/cjs/NumberInput/hooks/useNumberInputValue.js +34 -0
  170. package/cjs/NumberInput/hooks/useWheelHandler.d.ts +5 -0
  171. package/cjs/NumberInput/hooks/useWheelHandler.js +25 -0
  172. package/cjs/NumberInput/index.d.ts +4 -0
  173. package/cjs/NumberInput/index.js +11 -0
  174. package/cjs/NumberInput/utils/number.d.ts +17 -0
  175. package/cjs/NumberInput/utils/number.js +67 -0
  176. package/cjs/Pagination/LimitPicker.d.ts +2 -2
  177. package/cjs/Pagination/Pagination.d.ts +2 -2
  178. package/cjs/Pagination/Pagination.js +1 -2
  179. package/cjs/Pagination/PaginationGroup.js +1 -2
  180. package/cjs/Panel/Panel.js +1 -2
  181. package/cjs/PanelGroup/PanelGroup.js +1 -2
  182. package/cjs/PasswordInput/PasswordInput.d.ts +4 -0
  183. package/cjs/PasswordInput/PasswordInput.js +5 -4
  184. package/cjs/PasswordStrengthMeter/PasswordStrengthMeter.js +1 -2
  185. package/cjs/PinInput/PinInput.d.ts +36 -0
  186. package/cjs/PinInput/PinInput.js +224 -0
  187. package/cjs/PinInput/hooks/usePinInputRefs.d.ts +12 -0
  188. package/cjs/PinInput/hooks/usePinInputRefs.js +62 -0
  189. package/cjs/PinInput/hooks/usePinValue.d.ts +14 -0
  190. package/cjs/PinInput/hooks/usePinValue.js +73 -0
  191. package/cjs/PinInput/index.d.ts +4 -0
  192. package/cjs/PinInput/index.js +9 -0
  193. package/cjs/Placeholder/PlaceholderGraph.js +1 -2
  194. package/cjs/Placeholder/PlaceholderGrid.js +1 -2
  195. package/cjs/Placeholder/PlaceholderParagraph.js +1 -2
  196. package/cjs/Popover/Popover.js +1 -2
  197. package/cjs/Progress/ProgressCircle.js +1 -2
  198. package/cjs/Progress/ProgressLine.js +1 -2
  199. package/cjs/Radio/Radio.js +1 -2
  200. package/cjs/RadioGroup/RadioGroup.js +1 -2
  201. package/cjs/RadioTile/RadioTile.js +1 -2
  202. package/cjs/RadioTileGroup/RadioTileGroup.js +1 -2
  203. package/cjs/RangeSlider/RangeSlider.js +2 -3
  204. package/cjs/Rate/Rate.js +1 -2
  205. package/cjs/SelectPicker/SelectPicker.js +1 -2
  206. package/cjs/Sidebar/Sidebar.js +1 -2
  207. package/cjs/Sidenav/ExpandedSidenavDropdownMenu.js +1 -2
  208. package/cjs/Sidenav/Sidenav.js +1 -2
  209. package/cjs/Sidenav/SidenavDropdownMenu.js +1 -2
  210. package/cjs/Slider/Slider.d.ts +5 -1
  211. package/cjs/Slider/Slider.js +13 -14
  212. package/cjs/Stack/Stack.js +1 -2
  213. package/cjs/Stat/Stat.js +1 -2
  214. package/cjs/Stat/StatValue.js +2 -2
  215. package/cjs/StatGroup/StatGroup.js +1 -2
  216. package/cjs/Steps/Steps.js +1 -2
  217. package/cjs/Table/Table.js +2 -2
  218. package/cjs/Tabs/Tabs.js +1 -2
  219. package/cjs/Tag/Tag.js +1 -2
  220. package/cjs/TagInput/TagInput.js +2 -2
  221. package/cjs/TagPicker/TagPicker.js +2 -2
  222. package/cjs/Text/Text.js +1 -2
  223. package/cjs/Textarea/Textarea.js +1 -2
  224. package/cjs/TimePicker/TimePicker.d.ts +1 -2
  225. package/cjs/TimePicker/TimePicker.js +2 -2
  226. package/cjs/TimeRangePicker/TimeRangePicker.js +2 -2
  227. package/cjs/Timeline/Timeline.js +1 -2
  228. package/cjs/Toggle/Toggle.js +1 -2
  229. package/cjs/Tooltip/Tooltip.js +1 -2
  230. package/cjs/Tree/Tree.js +1 -2
  231. package/cjs/Tree/TreeNode.js +1 -2
  232. package/cjs/Tree/TreeNodeToggle.js +1 -2
  233. package/cjs/Tree/TreeView.js +1 -2
  234. package/cjs/Tree/hooks/useFocusTree.js +1 -2
  235. package/cjs/TreePicker/TreePicker.js +1 -2
  236. package/cjs/Uploader/Uploader.js +1 -2
  237. package/cjs/Whisper/Whisper.js +2 -2
  238. package/cjs/index.d.ts +2 -0
  239. package/cjs/index.js +12 -0
  240. package/cjs/internals/Box/index.d.ts +1 -0
  241. package/cjs/internals/Box/index.js +1 -0
  242. package/cjs/internals/Burger/Burger.d.ts +16 -0
  243. package/cjs/internals/Burger/Burger.js +46 -0
  244. package/cjs/internals/Burger/index.d.ts +4 -0
  245. package/cjs/internals/Burger/index.js +11 -0
  246. package/cjs/internals/CloseButton/CloseButton.js +1 -2
  247. package/cjs/internals/Menu/Menu.js +1 -2
  248. package/cjs/internals/Menu/Menubar.js +2 -2
  249. package/cjs/internals/Picker/PickerIndicator.js +1 -2
  250. package/cjs/internals/Picker/hooks/useCombobox.d.ts +1 -1
  251. package/cjs/internals/Plaintext/Plaintext.js +1 -2
  252. package/cjs/internals/Provider/CustomContext.d.ts +253 -0
  253. package/cjs/internals/Provider/CustomContext.js +8 -0
  254. package/cjs/internals/Provider/types.d.ts +236 -0
  255. package/cjs/internals/Ripple/Ripple.js +1 -2
  256. package/cjs/internals/SafeAnchor/SafeAnchor.js +2 -2
  257. package/cjs/internals/Windowing/List.js +2 -2
  258. package/cjs/internals/hooks/index.d.ts +1 -0
  259. package/cjs/internals/hooks/index.js +3 -1
  260. package/cjs/{CustomProvider → internals/hooks}/useCustom.d.ts +4 -4
  261. package/cjs/{CustomProvider → internals/hooks}/useCustom.js +5 -5
  262. package/cjs/internals/hooks/useStyles.js +2 -2
  263. package/cjs/internals/hooks/useToggleCaret.js +2 -2
  264. package/cjs/{CustomProvider → internals/intl}/FormattedDate.js +2 -2
  265. package/cjs/{CustomProvider → internals/intl}/FormattedNumber.js +2 -2
  266. package/cjs/internals/types/picker.d.ts +2 -2
  267. package/cjs/internals/types/sizes.d.ts +2 -0
  268. package/cjs/internals/types/sizes.js +2 -1
  269. package/cjs/internals/utils/date/getWeekStartDates.d.ts +0 -1
  270. package/cjs/internals/utils/date/getWeekStartDates.js +2 -4
  271. package/cjs/internals/utils/react/createComponent.js +15 -4
  272. package/cjs/useToaster/useToaster.js +2 -5
  273. package/dist/rsuite-no-reset-rtl.css +246 -265
  274. package/dist/rsuite-no-reset-rtl.min.css +1 -1
  275. package/dist/rsuite-no-reset-rtl.min.css.map +1 -1
  276. package/dist/rsuite-no-reset.css +246 -265
  277. package/dist/rsuite-no-reset.min.css +1 -1
  278. package/dist/rsuite-no-reset.min.css.map +1 -1
  279. package/dist/rsuite-rtl.css +246 -265
  280. package/dist/rsuite-rtl.min.css +1 -1
  281. package/dist/rsuite-rtl.min.css.map +1 -1
  282. package/dist/rsuite.css +246 -265
  283. package/dist/rsuite.js +333 -223
  284. package/dist/rsuite.js.map +1 -1
  285. package/dist/rsuite.min.css +1 -1
  286. package/dist/rsuite.min.css.map +1 -1
  287. package/dist/rsuite.min.js +1 -1
  288. package/dist/rsuite.min.js.map +1 -1
  289. package/esm/Accordion/Accordion.js +1 -1
  290. package/esm/Affix/Affix.js +1 -2
  291. package/esm/Animation/Bounce.js +1 -2
  292. package/esm/Animation/Collapse.js +1 -2
  293. package/esm/Animation/Fade.js +1 -2
  294. package/esm/Animation/Slide.js +1 -2
  295. package/esm/AutoComplete/AutoComplete.d.ts +2 -2
  296. package/esm/AutoComplete/AutoComplete.js +1 -2
  297. package/esm/Avatar/Avatar.js +1 -2
  298. package/esm/AvatarGroup/AvatarGroup.js +1 -2
  299. package/esm/Badge/Badge.js +1 -2
  300. package/esm/Breadcrumb/Breadcrumb.js +1 -2
  301. package/esm/Button/Button.d.ts +2 -2
  302. package/esm/Button/Button.js +1 -2
  303. package/esm/ButtonGroup/ButtonGroup.d.ts +2 -2
  304. package/esm/ButtonGroup/ButtonGroup.js +1 -2
  305. package/esm/ButtonToolbar/ButtonToolbar.js +1 -2
  306. package/esm/Calendar/Calendar.js +3 -4
  307. package/esm/Calendar/CalendarBody.js +1 -4
  308. package/esm/Calendar/CalendarContainer.js +1 -1
  309. package/esm/Calendar/CalendarHeader.js +1 -1
  310. package/esm/Calendar/CalendarProvider.d.ts +1 -1
  311. package/esm/Calendar/Grid/GridCell.js +1 -2
  312. package/esm/Calendar/Grid/GridHeaderRow.js +1 -2
  313. package/esm/Calendar/Grid/GridRow.d.ts +2 -0
  314. package/esm/Calendar/Grid/GridRow.js +5 -4
  315. package/esm/Calendar/MonthDropdown/MonthDropdownItem.js +1 -2
  316. package/esm/Calendar/hooks/useCalendar.d.ts +24 -2
  317. package/esm/Calendar/hooks/useCalendar.js +35 -2
  318. package/esm/Card/Card.js +1 -2
  319. package/esm/CardGroup/CardGroup.js +1 -2
  320. package/esm/Carousel/Carousel.js +1 -2
  321. package/esm/CascadeTree/CascadeTree.js +1 -2
  322. package/esm/CascadeTree/SearchView.js +1 -2
  323. package/esm/CascadeTree/TreeView.js +1 -2
  324. package/esm/Cascader/Cascader.js +1 -2
  325. package/esm/CheckPicker/CheckPicker.js +1 -2
  326. package/esm/CheckTree/CheckTree.js +1 -2
  327. package/esm/CheckTree/CheckTreeNode.js +1 -2
  328. package/esm/CheckTree/CheckTreeView.js +1 -2
  329. package/esm/CheckTreePicker/CheckTreePicker.js +1 -2
  330. package/esm/Checkbox/Checkbox.js +1 -2
  331. package/esm/CheckboxGroup/CheckboxGroup.js +1 -2
  332. package/esm/Container/Container.js +1 -2
  333. package/esm/CustomProvider/CustomProvider.d.ts +1 -271
  334. package/esm/CustomProvider/CustomProvider.js +1 -1
  335. package/esm/CustomProvider/index.d.ts +1 -6
  336. package/esm/CustomProvider/index.js +0 -6
  337. package/esm/DateInput/DateInput.js +1 -2
  338. package/esm/DateInput/hooks/useDateInputState.js +1 -1
  339. package/esm/DatePicker/DatePicker.js +2 -3
  340. package/esm/DatePicker/hooks/useFocus.js +1 -2
  341. package/esm/DateRangeInput/DateRangeInput.js +1 -2
  342. package/esm/DateRangePicker/DateRangePicker.js +2 -3
  343. package/esm/DateRangePicker/Header.js +1 -1
  344. package/esm/DateRangePicker/utils.d.ts +1 -1
  345. package/esm/DateRangePicker/utils.js +1 -1
  346. package/esm/Divider/Divider.js +1 -2
  347. package/esm/Drawer/Drawer.js +1 -2
  348. package/esm/Dropdown/Dropdown.js +1 -2
  349. package/esm/Dropdown/DropdownMenu.js +1 -2
  350. package/esm/FlexboxGrid/FlexboxGrid.js +1 -2
  351. package/esm/Form/Form.js +1 -2
  352. package/esm/FormControl/FormControl.js +1 -2
  353. package/esm/FormControlLabel/FormControlLabel.js +1 -2
  354. package/esm/FormErrorMessage/FormErrorMessage.js +1 -2
  355. package/esm/FormGroup/FormGroup.js +1 -2
  356. package/esm/FormHelpText/FormHelpText.js +1 -2
  357. package/esm/FormStack/FormStack.js +1 -2
  358. package/esm/Grid/Col.js +1 -2
  359. package/esm/Grid/Grid.js +1 -2
  360. package/esm/Grid/Row.js +1 -2
  361. package/esm/Heading/Heading.js +1 -2
  362. package/esm/Highlight/Highlight.js +2 -3
  363. package/esm/IconButton/IconButton.js +1 -2
  364. package/esm/Image/Image.js +2 -3
  365. package/esm/InlineEdit/InlineEdit.js +1 -2
  366. package/esm/Input/Input.js +2 -2
  367. package/esm/InputGroup/InputGroup.js +1 -2
  368. package/esm/InputNumber/index.d.ts +12 -2
  369. package/esm/InputNumber/index.js +8 -1
  370. package/esm/InputPicker/InputPicker.js +1 -2
  371. package/esm/InputPicker/utils.d.ts +1 -1
  372. package/esm/Kbd/Kbd.js +1 -2
  373. package/esm/Link/Link.js +1 -2
  374. package/esm/List/List.js +1 -2
  375. package/esm/Loader/Loader.js +1 -2
  376. package/esm/MaskedInput/MaskedInput.js +1 -1
  377. package/esm/Message/Message.js +1 -2
  378. package/esm/Modal/Modal.js +1 -2
  379. package/esm/Modal/ModalHeader.js +1 -2
  380. package/esm/MultiCascadeTree/MultiCascadeTree.js +1 -2
  381. package/esm/MultiCascadeTree/SearchView.js +1 -2
  382. package/esm/MultiCascadeTree/TreeView.js +1 -2
  383. package/esm/MultiCascader/MultiCascader.js +1 -2
  384. package/esm/Nav/Nav.js +1 -2
  385. package/esm/Nav/NavDropdownMenu.js +1 -2
  386. package/esm/Navbar/Navbar.d.ts +1 -1
  387. package/esm/Navbar/Navbar.js +1 -2
  388. package/esm/Navbar/NavbarDropdownMenu.js +1 -2
  389. package/esm/Navbar/NavbarToggle.d.ts +8 -3
  390. package/esm/Navbar/NavbarToggle.js +10 -15
  391. package/esm/Notification/Notification.js +1 -2
  392. package/esm/{InputNumber/InputNumber.d.ts → NumberInput/NumberInput.d.ts} +20 -8
  393. package/esm/NumberInput/NumberInput.js +157 -0
  394. package/esm/NumberInput/hooks/useEvents.d.ts +22 -0
  395. package/esm/NumberInput/hooks/useEvents.js +110 -0
  396. package/esm/NumberInput/hooks/useNumberInputValue.d.ts +7 -0
  397. package/esm/NumberInput/hooks/useNumberInputValue.js +29 -0
  398. package/esm/NumberInput/hooks/useWheelHandler.d.ts +5 -0
  399. package/esm/NumberInput/hooks/useWheelHandler.js +21 -0
  400. package/esm/NumberInput/index.d.ts +4 -0
  401. package/esm/NumberInput/index.js +8 -0
  402. package/esm/NumberInput/utils/number.d.ts +17 -0
  403. package/esm/NumberInput/utils/number.js +59 -0
  404. package/esm/Pagination/LimitPicker.d.ts +2 -2
  405. package/esm/Pagination/Pagination.d.ts +2 -2
  406. package/esm/Pagination/Pagination.js +1 -2
  407. package/esm/Pagination/PaginationGroup.js +1 -2
  408. package/esm/Panel/Panel.js +1 -2
  409. package/esm/PanelGroup/PanelGroup.js +1 -2
  410. package/esm/PasswordInput/PasswordInput.d.ts +4 -0
  411. package/esm/PasswordInput/PasswordInput.js +5 -4
  412. package/esm/PasswordStrengthMeter/PasswordStrengthMeter.js +1 -2
  413. package/esm/PinInput/PinInput.d.ts +36 -0
  414. package/esm/PinInput/PinInput.js +219 -0
  415. package/esm/PinInput/hooks/usePinInputRefs.d.ts +12 -0
  416. package/esm/PinInput/hooks/usePinInputRefs.js +58 -0
  417. package/esm/PinInput/hooks/usePinValue.d.ts +14 -0
  418. package/esm/PinInput/hooks/usePinValue.js +69 -0
  419. package/esm/PinInput/index.d.ts +4 -0
  420. package/esm/PinInput/index.js +4 -0
  421. package/esm/Placeholder/PlaceholderGraph.js +1 -2
  422. package/esm/Placeholder/PlaceholderGrid.js +1 -2
  423. package/esm/Placeholder/PlaceholderParagraph.js +1 -2
  424. package/esm/Popover/Popover.js +1 -2
  425. package/esm/Progress/ProgressCircle.js +1 -2
  426. package/esm/Progress/ProgressLine.js +1 -2
  427. package/esm/Radio/Radio.js +1 -2
  428. package/esm/RadioGroup/RadioGroup.js +1 -2
  429. package/esm/RadioTile/RadioTile.js +1 -2
  430. package/esm/RadioTileGroup/RadioTileGroup.js +1 -2
  431. package/esm/RangeSlider/RangeSlider.js +1 -2
  432. package/esm/Rate/Rate.js +1 -2
  433. package/esm/SelectPicker/SelectPicker.js +1 -2
  434. package/esm/Sidebar/Sidebar.js +1 -2
  435. package/esm/Sidenav/ExpandedSidenavDropdownMenu.js +1 -2
  436. package/esm/Sidenav/Sidenav.js +1 -2
  437. package/esm/Sidenav/SidenavDropdownMenu.js +1 -2
  438. package/esm/Slider/Slider.d.ts +5 -1
  439. package/esm/Slider/Slider.js +12 -13
  440. package/esm/Stack/Stack.js +1 -2
  441. package/esm/Stat/Stat.js +1 -2
  442. package/esm/Stat/StatValue.js +1 -1
  443. package/esm/StatGroup/StatGroup.js +1 -2
  444. package/esm/Steps/Steps.js +1 -2
  445. package/esm/Table/Table.js +1 -1
  446. package/esm/Tabs/Tabs.js +1 -2
  447. package/esm/Tag/Tag.js +1 -2
  448. package/esm/TagInput/TagInput.js +1 -1
  449. package/esm/TagPicker/TagPicker.js +1 -1
  450. package/esm/Text/Text.js +1 -2
  451. package/esm/Textarea/Textarea.js +1 -2
  452. package/esm/TimePicker/TimePicker.d.ts +1 -2
  453. package/esm/TimePicker/TimePicker.js +1 -1
  454. package/esm/TimeRangePicker/TimeRangePicker.js +1 -1
  455. package/esm/Timeline/Timeline.js +1 -2
  456. package/esm/Toggle/Toggle.js +1 -2
  457. package/esm/Tooltip/Tooltip.js +1 -2
  458. package/esm/Tree/Tree.js +1 -2
  459. package/esm/Tree/TreeNode.js +1 -2
  460. package/esm/Tree/TreeNodeToggle.js +1 -2
  461. package/esm/Tree/TreeView.js +1 -2
  462. package/esm/Tree/hooks/useFocusTree.js +1 -2
  463. package/esm/TreePicker/TreePicker.js +1 -2
  464. package/esm/Uploader/Uploader.js +1 -2
  465. package/esm/Whisper/Whisper.js +1 -1
  466. package/esm/index.d.ts +2 -0
  467. package/esm/index.js +2 -0
  468. package/esm/internals/Box/index.d.ts +1 -0
  469. package/esm/internals/Box/index.js +1 -0
  470. package/esm/internals/Burger/Burger.d.ts +16 -0
  471. package/esm/internals/Burger/Burger.js +41 -0
  472. package/esm/internals/Burger/index.d.ts +4 -0
  473. package/esm/internals/Burger/index.js +8 -0
  474. package/esm/internals/CloseButton/CloseButton.js +1 -2
  475. package/esm/internals/Menu/Menu.js +1 -1
  476. package/esm/internals/Menu/Menubar.js +1 -1
  477. package/esm/internals/Picker/PickerIndicator.js +1 -2
  478. package/esm/internals/Picker/hooks/useCombobox.d.ts +1 -1
  479. package/esm/internals/Plaintext/Plaintext.js +1 -2
  480. package/esm/internals/Provider/CustomContext.d.ts +253 -0
  481. package/esm/internals/Provider/CustomContext.js +3 -0
  482. package/esm/internals/Provider/types.d.ts +236 -0
  483. package/esm/internals/Ripple/Ripple.js +1 -2
  484. package/esm/internals/SafeAnchor/SafeAnchor.js +1 -1
  485. package/esm/internals/Windowing/List.js +1 -1
  486. package/esm/internals/hooks/index.d.ts +1 -0
  487. package/esm/internals/hooks/index.js +1 -0
  488. package/esm/{CustomProvider → internals/hooks}/useCustom.d.ts +4 -4
  489. package/esm/{CustomProvider → internals/hooks}/useCustom.js +4 -4
  490. package/esm/internals/hooks/useStyles.js +1 -1
  491. package/esm/internals/hooks/useToggleCaret.js +1 -1
  492. package/esm/{CustomProvider → internals/intl}/FormattedDate.js +1 -1
  493. package/esm/{CustomProvider → internals/intl}/FormattedNumber.js +1 -1
  494. package/esm/internals/types/picker.d.ts +2 -2
  495. package/esm/internals/types/sizes.d.ts +2 -0
  496. package/esm/internals/types/sizes.js +3 -1
  497. package/esm/internals/utils/date/getWeekStartDates.d.ts +0 -1
  498. package/esm/internals/utils/date/getWeekStartDates.js +2 -4
  499. package/esm/internals/utils/react/createComponent.js +12 -2
  500. package/esm/useToaster/useToaster.js +1 -3
  501. package/internals/Burger/styles/index.less +67 -0
  502. package/internals/CloseButton/styles/index.less +0 -10
  503. package/internals/Picker/styles/index.less +13 -10
  504. package/internals/Picker/styles/mixin.less +3 -3
  505. package/package.json +3 -3
  506. package/styles/color-modes/dark.less +7 -10
  507. package/styles/color-modes/high-contrast.less +3 -6
  508. package/styles/color-modes/light.less +5 -8
  509. package/styles/index.less +3 -1
  510. package/styles/mixins/utilities.less +2 -5
  511. package/cjs/CustomProvider/types.d.ts +0 -234
  512. package/cjs/InputNumber/InputNumber.js +0 -300
  513. package/esm/CustomProvider/types.d.ts +0 -234
  514. package/esm/InputNumber/InputNumber.js +0 -293
  515. /package/cjs/{CustomProvider → internals/Provider}/types.js +0 -0
  516. /package/cjs/{CustomProvider → internals/intl}/FormattedDate.d.ts +0 -0
  517. /package/cjs/{CustomProvider → internals/intl}/FormattedNumber.d.ts +0 -0
  518. /package/esm/{CustomProvider → internals/Provider}/types.js +0 -0
  519. /package/esm/{CustomProvider → internals/intl}/FormattedDate.d.ts +0 -0
  520. /package/esm/{CustomProvider → internals/intl}/FormattedNumber.d.ts +0 -0
@@ -0,0 +1,219 @@
1
+ 'use client';
2
+ import _extends from "@babel/runtime/helpers/esm/extends";
3
+ import React from 'react';
4
+ import Input from "../Input/index.js";
5
+ import usePinInputRefs from "./hooks/usePinInputRefs.js";
6
+ import usePinValue from "./hooks/usePinValue.js";
7
+ import { Box } from "../internals/Box/index.js";
8
+ import { HStack } from "../Stack/index.js";
9
+ import { forwardRef } from "../internals/utils/index.js";
10
+ import { useStyles, useCustom, useEventCallback } from "../internals/hooks/index.js";
11
+ /**
12
+ * Map `type` prop to regex for allowed keys
13
+ */
14
+ function getAllowedKeys(type) {
15
+ if (type instanceof RegExp) {
16
+ return type;
17
+ }
18
+ switch (type) {
19
+ case 'alphabetic':
20
+ return /[A-Za-z]/;
21
+ case 'alphanumeric':
22
+ return /[A-Za-z0-9]/;
23
+ default:
24
+ // number and any other fallback
25
+ return /\d/;
26
+ }
27
+ }
28
+ const PinInput = forwardRef((props, ref) => {
29
+ const {
30
+ propsWithDefaults
31
+ } = useCustom('PinInput', props);
32
+ const {
33
+ type = 'number',
34
+ as,
35
+ autoFocus,
36
+ attached,
37
+ className,
38
+ classPrefix = 'pin-input',
39
+ defaultValue = '',
40
+ disabled,
41
+ length = 4,
42
+ mask,
43
+ name,
44
+ otp,
45
+ placeholder,
46
+ readOnly,
47
+ size = 'md',
48
+ value: controlValue,
49
+ onChange,
50
+ onComplete,
51
+ ...rest
52
+ } = propsWithDefaults;
53
+
54
+ // Regex for filtering input chars based on type prop
55
+ const allowedKeys = getAllowedKeys(type);
56
+
57
+ // Determine inputMode based on type prop
58
+ const inputModeValue = type === 'number' ? 'numeric' : 'text';
59
+
60
+ // Determine input type attribute based on type prop and mask
61
+ const inputTypeValue = mask ? 'password' : type === 'number' ? 'tel' : 'text';
62
+ const {
63
+ withPrefix,
64
+ prefix,
65
+ merge
66
+ } = useStyles(classPrefix);
67
+
68
+ // Use our custom hook for handling input refs and focus behavior
69
+ const {
70
+ focusInput,
71
+ focusNextInput,
72
+ focusPrevInput,
73
+ getRefSetter
74
+ } = usePinInputRefs(length, autoFocus);
75
+
76
+ // Use our custom hook for managing PIN values
77
+ const {
78
+ valueArray,
79
+ setDigit,
80
+ clearDigit,
81
+ updateValue
82
+ } = usePinValue(controlValue, defaultValue, length, onChange, onComplete);
83
+
84
+ // Handle input change
85
+ const handleInputChange = useEventCallback((inputValue, e, index) => {
86
+ // Safety check for event object
87
+ if (!e || !e.target) return;
88
+
89
+ // For single character input, use it directly
90
+ // For longer input (like paste or browser autofill), take the last character
91
+ const char = inputValue.length > 0 ? inputValue.charAt(inputValue.length - 1) : '';
92
+
93
+ // Filter by allowedKeys if provided
94
+ if (!allowedKeys.test(char)) {
95
+ return;
96
+ }
97
+
98
+ // Always allow overwriting the current value
99
+ // Update the value using our hook
100
+ setDigit(index, char);
101
+
102
+ // Focus the next input if we have a character and there's a next input
103
+ if (char && index < length - 1) {
104
+ // Use setTimeout to ensure the focus happens after the current event cycle
105
+ focusNextInput(index);
106
+ }
107
+
108
+ // If this is the last input and a character was entered, keep focus on it
109
+ if (char && index === length - 1) {
110
+ focusInput(index);
111
+ }
112
+ });
113
+
114
+ // Handle key down
115
+ const handleKeyDown = useEventCallback((e, index) => {
116
+ // Safety check for event object
117
+ if (!e) return;
118
+ const target = e.target;
119
+ const inputValue = (target === null || target === void 0 ? void 0 : target.value) || '';
120
+
121
+ // Handle backspace
122
+ if (e.key === 'Backspace') {
123
+ if (inputValue === '') {
124
+ // Focus the previous input if the current one is empty
125
+ if (index > 0) {
126
+ clearDigit(index - 1);
127
+ focusPrevInput(index);
128
+ }
129
+ } else {
130
+ // Clear the current input but keep focus on it
131
+ clearDigit(index);
132
+ }
133
+ }
134
+ // Handle arrow keys
135
+ else if (e.key === 'ArrowLeft') {
136
+ focusPrevInput(index);
137
+ } else if (e.key === 'ArrowRight') {
138
+ focusNextInput(index);
139
+ }
140
+ // Allow only keys matching allowedKeys
141
+ else if (allowedKeys.test(e.key)) {
142
+ setDigit(index, e.key);
143
+
144
+ // Move focus to the next input if there is one
145
+ if (index < length - 1) {
146
+ setTimeout(() => {
147
+ focusNextInput(index);
148
+ }, 10);
149
+ }
150
+ }
151
+ });
152
+
153
+ // Handle paste
154
+ const handlePaste = useEventCallback((e, index) => {
155
+ if (disabled || readOnly) return;
156
+
157
+ // Safety check for event object
158
+ if (!e || !e.clipboardData) return;
159
+ e.preventDefault();
160
+ const pastedData = e.clipboardData.getData('text') || '';
161
+
162
+ // Filter pasted data by allowedKeys
163
+ const filteredData = pastedData.split('').filter(ch => allowedKeys.test(ch)).join('');
164
+ if (filteredData) {
165
+ // Create a new value with pasted characters
166
+ const newValueArray = [...valueArray];
167
+ for (let i = 0; i < filteredData.length && index + i < length; i++) {
168
+ newValueArray[index + i] = filteredData[i];
169
+ }
170
+
171
+ // Update value with our hook
172
+ updateValue(newValueArray.join(''));
173
+
174
+ // Focus the input after the last pasted character or the last input
175
+ // Use setTimeout to ensure focus happens after DOM updates
176
+ const nextIndex = Math.min(index + filteredData.length, length - 1);
177
+ setTimeout(() => {
178
+ focusInput(nextIndex);
179
+ }, 10);
180
+ }
181
+ });
182
+ const classes = merge(className, withPrefix({
183
+ attached
184
+ }));
185
+ return /*#__PURE__*/React.createElement(Box, _extends({
186
+ as: as,
187
+ ref: ref,
188
+ className: classes
189
+ }, rest), /*#__PURE__*/React.createElement("input", {
190
+ type: "hidden",
191
+ value: valueArray.join(''),
192
+ name: name,
193
+ "aria-label": "Pin input"
194
+ }), /*#__PURE__*/React.createElement(HStack, {
195
+ spacing: attached ? 0 : 8
196
+ }, Array.from({
197
+ length
198
+ }).map((_, index) => /*#__PURE__*/React.createElement(Input, {
199
+ key: index,
200
+ className: prefix('segment', {
201
+ masked: mask
202
+ }),
203
+ size: size,
204
+ value: valueArray[index] || '',
205
+ onChange: (v, e) => handleInputChange(v, e, index),
206
+ onKeyDown: e => handleKeyDown(e, index),
207
+ onPaste: e => handlePaste(e, index),
208
+ disabled: disabled,
209
+ readOnly: readOnly,
210
+ maxLength: 1,
211
+ autoComplete: otp ? 'one-time-code' : 'off',
212
+ inputMode: inputModeValue,
213
+ placeholder: placeholder,
214
+ type: inputTypeValue,
215
+ ref: getRefSetter(index)
216
+ }))));
217
+ });
218
+ PinInput.displayName = 'PinInput';
219
+ export default PinInput;
@@ -0,0 +1,12 @@
1
+ /// <reference types="react" />
2
+ /**
3
+ * A hook that manages the refs and focus behavior for a PIN input component
4
+ */
5
+ export declare const usePinInputRefs: (length: number, autoFocus?: boolean) => {
6
+ inputRefs: import("react").RefObject<(HTMLInputElement | null)[]>;
7
+ focusInput: (index: number) => boolean;
8
+ focusNextInput: (currentIndex: number) => boolean;
9
+ focusPrevInput: (currentIndex: number) => boolean;
10
+ getRefSetter: (index: number) => (el: HTMLInputElement | null) => void;
11
+ };
12
+ export default usePinInputRefs;
@@ -0,0 +1,58 @@
1
+ 'use client';
2
+ import { useRef, useCallback, useEffect } from 'react';
3
+
4
+ /**
5
+ * A hook that manages the refs and focus behavior for a PIN input component
6
+ */
7
+ export const usePinInputRefs = (length, autoFocus) => {
8
+ // Create ref to store input elements
9
+ const inputRefs = useRef([]);
10
+
11
+ // Initialize the refs array when length changes
12
+ useEffect(() => {
13
+ inputRefs.current = inputRefs.current.slice(0, length);
14
+ }, [length]);
15
+
16
+ // Auto focus the first input on mount if autoFocus is true
17
+ useEffect(() => {
18
+ if (autoFocus && inputRefs.current[0]) {
19
+ var _inputRefs$current$;
20
+ (_inputRefs$current$ = inputRefs.current[0]) === null || _inputRefs$current$ === void 0 || _inputRefs$current$.focus();
21
+ }
22
+ }, [autoFocus]);
23
+
24
+ // Focus a specific input by index
25
+ const focusInput = useCallback(index => {
26
+ if (index >= 0 && index < length && inputRefs.current[index]) {
27
+ var _inputRefs$current$in;
28
+ (_inputRefs$current$in = inputRefs.current[index]) === null || _inputRefs$current$in === void 0 || _inputRefs$current$in.focus();
29
+ return true;
30
+ }
31
+ return false;
32
+ }, [length]);
33
+
34
+ // Focus the next input
35
+ const focusNextInput = useCallback(currentIndex => {
36
+ return focusInput(currentIndex + 1);
37
+ }, [focusInput]);
38
+
39
+ // Focus the previous input
40
+ const focusPrevInput = useCallback(currentIndex => {
41
+ return focusInput(currentIndex - 1);
42
+ }, [focusInput]);
43
+
44
+ // Get ref setter for an input
45
+ const getRefSetter = useCallback(index => {
46
+ return el => {
47
+ inputRefs.current[index] = el;
48
+ };
49
+ }, []);
50
+ return {
51
+ inputRefs,
52
+ focusInput,
53
+ focusNextInput,
54
+ focusPrevInput,
55
+ getRefSetter
56
+ };
57
+ };
58
+ export default usePinInputRefs;
@@ -0,0 +1,14 @@
1
+ /**
2
+ * Hook for managing pin input value
3
+ * - Handles controlled/uncontrolled value
4
+ * - Normalizes value to array format
5
+ * - Manages array updates and modifications
6
+ */
7
+ export declare const usePinValue: (controlValue: string | undefined, defaultValue: string, length: number, onChange?: ((value: string) => void) | undefined, onComplete?: ((value: string) => void) | undefined) => {
8
+ value: string;
9
+ valueArray: string[];
10
+ setDigit: (index: number, digit: string) => void;
11
+ clearDigit: (index: number) => void;
12
+ updateValue: (newValue: string) => void;
13
+ };
14
+ export default usePinValue;
@@ -0,0 +1,69 @@
1
+ 'use client';
2
+ import { useMemo } from 'react';
3
+ import { useControlled } from "../../internals/hooks/index.js";
4
+
5
+ /**
6
+ * Hook for managing pin input value
7
+ * - Handles controlled/uncontrolled value
8
+ * - Normalizes value to array format
9
+ * - Manages array updates and modifications
10
+ */
11
+ export const usePinValue = (controlValue, defaultValue, length, onChange, onComplete) => {
12
+ // Use controlled pattern for value management
13
+ const [value, setValue] = useControlled(controlValue, defaultValue);
14
+
15
+ // Convert string value to array of characters
16
+ const valueArray = useMemo(() => {
17
+ // Ensure value is a string and split it into an array of characters
18
+ const valueString = value || '';
19
+ const chars = valueString.split('');
20
+
21
+ // Pad the array with empty strings if needed
22
+ while (chars.length < length) {
23
+ chars.push('');
24
+ }
25
+
26
+ // Trim the array if it's too long
27
+ if (chars.length > length) {
28
+ chars.length = length;
29
+ }
30
+ return chars;
31
+ }, [value, length]);
32
+
33
+ // Update specific digit at index
34
+ const setDigit = (index, digit) => {
35
+ if (index < 0 || index >= length) return;
36
+ const newValueArray = [...valueArray];
37
+ newValueArray[index] = digit;
38
+ updateValue(newValueArray.join(''));
39
+ };
40
+
41
+ // Clear specific digit at index
42
+ const clearDigit = index => {
43
+ if (index < 0 || index >= length) return;
44
+ const newValueArray = [...valueArray];
45
+ newValueArray[index] = '';
46
+ updateValue(newValueArray.join(''));
47
+ };
48
+
49
+ // Set entire value at once
50
+ const updateValue = newValue => {
51
+ // Filter out any extra characters beyond length
52
+ const filteredValue = newValue.slice(0, length);
53
+ setValue(filteredValue);
54
+ onChange === null || onChange === void 0 || onChange(filteredValue);
55
+
56
+ // Call onComplete if the value is complete
57
+ if (filteredValue.length === length) {
58
+ onComplete === null || onComplete === void 0 || onComplete(filteredValue);
59
+ }
60
+ };
61
+ return {
62
+ value,
63
+ valueArray,
64
+ setDigit,
65
+ clearDigit,
66
+ updateValue
67
+ };
68
+ };
69
+ export default usePinValue;
@@ -0,0 +1,4 @@
1
+ import PinInput from './PinInput';
2
+ export type { PinInputProps } from './PinInput';
3
+ export { PinInput };
4
+ export default PinInput;
@@ -0,0 +1,4 @@
1
+ 'use client';
2
+ import PinInput from "./PinInput.js";
3
+ export { PinInput };
4
+ export default PinInput;
@@ -2,8 +2,7 @@
2
2
  import _extends from "@babel/runtime/helpers/esm/extends";
3
3
  import React from 'react';
4
4
  import Box from "../internals/Box/index.js";
5
- import { useStyles } from "../internals/hooks/index.js";
6
- import { useCustom } from "../CustomProvider/index.js";
5
+ import { useStyles, useCustom } from "../internals/hooks/index.js";
7
6
  import { forwardRef, getCssValue, mergeStyles } from "../internals/utils/index.js";
8
7
  /**
9
8
  * The `Placeholder.Graph` component is used to display the loading state of the block.
@@ -2,8 +2,7 @@
2
2
  import _extends from "@babel/runtime/helpers/esm/extends";
3
3
  import React, { useMemo } from 'react';
4
4
  import Box from "../internals/Box/index.js";
5
- import { useStyles } from "../internals/hooks/index.js";
6
- import { useCustom } from "../CustomProvider/index.js";
5
+ import { useStyles, useCustom } from "../internals/hooks/index.js";
7
6
  import { forwardRef, getCssValue, mergeStyles } from "../internals/utils/index.js";
8
7
  /**
9
8
  * The `Placeholder.Grid` component is used to display the loading state of the block.
@@ -2,8 +2,7 @@
2
2
  import _extends from "@babel/runtime/helpers/esm/extends";
3
3
  import React, { useMemo } from 'react';
4
4
  import Box from "../internals/Box/index.js";
5
- import { useStyles } from "../internals/hooks/index.js";
6
- import { useCustom } from "../CustomProvider/index.js";
5
+ import { useStyles, useCustom } from "../internals/hooks/index.js";
7
6
  import { forwardRef, mergeStyles, getCssValue } from "../internals/utils/index.js";
8
7
  /**
9
8
  * The `Placeholder.Paragraph` component is used to display the loading state of the block.
@@ -4,8 +4,7 @@ import React, { useMemo } from 'react';
4
4
  import Heading from "../Heading/index.js";
5
5
  import Box from "../internals/Box/index.js";
6
6
  import { forwardRef, mergeStyles } from "../internals/utils/index.js";
7
- import { useStyles } from "../internals/hooks/index.js";
8
- import { useCustom } from "../CustomProvider/index.js";
7
+ import { useStyles, useCustom } from "../internals/hooks/index.js";
9
8
  /**
10
9
  * The `Popover` component is used to display a popup window for a target component.
11
10
  * @see https://rsuitejs.com/components/popover
@@ -4,8 +4,7 @@ import React, { useCallback } from 'react';
4
4
  import Box from "../internals/Box/index.js";
5
5
  import { PROGRESS_STATUS_ICON } from "../internals/constants/statusIcons.js";
6
6
  import { forwardRef } from "../internals/utils/index.js";
7
- import { useStyles } from "../internals/hooks/index.js";
8
- import { useCustom } from "../CustomProvider/index.js";
7
+ import { useStyles, useCustom } from "../internals/hooks/index.js";
9
8
  /**
10
9
  * The `Progress.Circle` component is used to display the progress of current operation.
11
10
  * @see https://rsuitejs.com/components/progress/#circle
@@ -4,8 +4,7 @@ import React from 'react';
4
4
  import Box from "../internals/Box/index.js";
5
5
  import { PROGRESS_STATUS_ICON } from "../internals/constants/statusIcons.js";
6
6
  import { forwardRef } from "../internals/utils/index.js";
7
- import { useStyles } from "../internals/hooks/index.js";
8
- import { useCustom } from "../CustomProvider/index.js";
7
+ import { useStyles, useCustom } from "../internals/hooks/index.js";
9
8
  /**
10
9
  * The `Progress.Line` component is used to display the progress of current operation.
11
10
  * @see https://rsuitejs.com/components/progress/#line
@@ -3,9 +3,8 @@ import _extends from "@babel/runtime/helpers/esm/extends";
3
3
  import React, { useContext } from 'react';
4
4
  import Box from "../internals/Box/index.js";
5
5
  import { RadioContext } from "../RadioGroup/RadioGroup.js";
6
- import { useStyles, useControlled, useEventCallback, useUniqueId } from "../internals/hooks/index.js";
6
+ import { useStyles, useCustom, useControlled, useEventCallback, useUniqueId } from "../internals/hooks/index.js";
7
7
  import { forwardRef, partitionHTMLProps } from "../internals/utils/index.js";
8
- import { useCustom } from "../CustomProvider/index.js";
9
8
  /**
10
9
  * The `Radio` component is a simple radio button.
11
10
  * @see https://rsuitejs.com/components/radio
@@ -4,8 +4,7 @@ import React, { useMemo } from 'react';
4
4
  import Box from "../internals/Box/index.js";
5
5
  import Plaintext from "../internals/Plaintext/index.js";
6
6
  import { forwardRef } from "../internals/utils/index.js";
7
- import { useStyles, useControlled, useEventCallback } from "../internals/hooks/index.js";
8
- import { useCustom } from "../CustomProvider/index.js";
7
+ import { useStyles, useCustom, useControlled, useEventCallback } from "../internals/hooks/index.js";
9
8
  export const RadioContext = /*#__PURE__*/React.createContext(void 0);
10
9
 
11
10
  /**
@@ -5,8 +5,7 @@ import CheckIcon from '@rsuite/icons/Check';
5
5
  import Box from "../internals/Box/index.js";
6
6
  import { RadioTileContext } from "../RadioTileGroup/RadioTileGroup.js";
7
7
  import { forwardRef, partitionHTMLProps } from "../internals/utils/index.js";
8
- import { useStyles, useControlled, useUniqueId } from "../internals/hooks/index.js";
9
- import { useCustom } from "../CustomProvider/index.js";
8
+ import { useStyles, useCustom, useControlled, useUniqueId } from "../internals/hooks/index.js";
10
9
  /**
11
10
  * A series of selectable tile components that behave like Radio.
12
11
  * @version 5.35.0
@@ -3,9 +3,8 @@ import _extends from "@babel/runtime/helpers/esm/extends";
3
3
  import React, { useCallback, useMemo } from 'react';
4
4
  import Stack from "../Stack/index.js";
5
5
  import Box from "../internals/Box/index.js";
6
- import { useStyles, useControlled } from "../internals/hooks/index.js";
6
+ import { useStyles, useCustom, useControlled } from "../internals/hooks/index.js";
7
7
  import { forwardRef } from "../internals/utils/index.js";
8
- import { useCustom } from "../CustomProvider/index.js";
9
8
  export const RadioTileContext = /*#__PURE__*/React.createContext({});
10
9
 
11
10
  /**
@@ -10,9 +10,8 @@ import Graduated from "../Slider/Graduated.js";
10
10
  import Plaintext from "../internals/Plaintext/index.js";
11
11
  import Box from "../internals/Box/index.js";
12
12
  import { forwardRef } from "../internals/utils/index.js";
13
- import { useStyles, useControlled, useEventCallback } from "../internals/hooks/index.js";
13
+ import { useStyles, useCustom, useControlled, useEventCallback } from "../internals/hooks/index.js";
14
14
  import { precisionMath, checkValue, getPosition } from "../Slider/utils.js";
15
- import { useCustom } from "../CustomProvider/index.js";
16
15
  const defaultDefaultValue = [0, 0];
17
16
 
18
17
  /**
package/esm/Rate/Rate.js CHANGED
@@ -7,11 +7,10 @@ import Character from "./Character.js";
7
7
  import Plaintext from "../internals/Plaintext/index.js";
8
8
  import StyledBox from "../internals/StyledBox/index.js";
9
9
  import { KEY_VALUES } from "../internals/constants/index.js";
10
- import { useControlled, useStyles, useEventCallback } from "../internals/hooks/index.js";
10
+ import { useControlled, useStyles, useCustom, useEventCallback } from "../internals/hooks/index.js";
11
11
  import { forwardRef, shallowEqualArray, mergeStyles } from "../internals/utils/index.js";
12
12
  import { transformStarStatusToValue, getFractionalValue } from "./utils.js";
13
13
  import { useRatingStates } from "./useRatingStates.js";
14
- import { useCustom } from "../CustomProvider/index.js";
15
14
  /**
16
15
  * The `Rate` component is used for rating. It can be used to evaluate the quality of the content.
17
16
  * @see https://rsuitejs.com/components/rate/
@@ -5,10 +5,9 @@ import pick from 'lodash/pick';
5
5
  import isNil from 'lodash/isNil';
6
6
  import isFunction from 'lodash/isFunction';
7
7
  import SearchBox from "../internals/SearchBox/index.js";
8
- import { useStyles, useControlled, useEventCallback } from "../internals/hooks/index.js";
8
+ import { useStyles, useCustom, useControlled, useEventCallback } from "../internals/hooks/index.js";
9
9
  import { forwardRef, createChainedFunction, mergeRefs, shallowEqual, getDataGroupBy } from "../internals/utils/index.js";
10
10
  import { Listbox, ListItem, PickerToggle, PickerToggleTrigger, PickerPopup, useFocusItemValue, useSearch, useToggleKeyDownEvent, usePickerRef, triggerPropKeys } from "../internals/Picker/index.js";
11
- import { useCustom } from "../CustomProvider/index.js";
12
11
  const emptyArray = [];
13
12
  /**
14
13
  * The `SelectPicker` component is used to select an item from a list of data.
@@ -2,9 +2,8 @@
2
2
  import _extends from "@babel/runtime/helpers/esm/extends";
3
3
  import React, { useContext, useEffect } from 'react';
4
4
  import Box from "../internals/Box/index.js";
5
- import { useStyles } from "../internals/hooks/index.js";
5
+ import { useStyles, useCustom } from "../internals/hooks/index.js";
6
6
  import { forwardRef } from "../internals/utils/index.js";
7
- import { useCustom } from "../CustomProvider/index.js";
8
7
  import { ContainerContext } from "../Container/Container.js";
9
8
  /**
10
9
  * The `Sidebar` component for use with the `Container` component.
@@ -10,9 +10,8 @@ import ArrowLeftLine from '@rsuite/icons/ArrowLeftLine';
10
10
  import ArrowRightLine from '@rsuite/icons/ArrowRightLine';
11
11
  import Box from "../internals/Box/index.js";
12
12
  import { forwardRef, createChainedFunction } from "../internals/utils/index.js";
13
- import { useStyles } from "../internals/hooks/index.js";
13
+ import { useStyles, useCustom } from "../internals/hooks/index.js";
14
14
  import { SidenavContext } from "./Sidenav.js";
15
- import { useCustom } from "../CustomProvider/index.js";
16
15
  /**
17
16
  * Tree View Node
18
17
  * @see https://www.w3.org/TR/wai-aria-practices-1.2/#TreeView
@@ -10,8 +10,7 @@ import SidenavToggle from "./SidenavToggle.js";
10
10
  import SidenavGroupLabel from "./SidenavGroupLabel.js";
11
11
  import Box from "../internals/Box/index.js";
12
12
  import { forwardRef, mergeRefs, shallowEqual } from "../internals/utils/index.js";
13
- import { useStyles, useControlled } from "../internals/hooks/index.js";
14
- import { useCustom } from "../CustomProvider/index.js";
13
+ import { useStyles, useCustom, useControlled } from "../internals/hooks/index.js";
15
14
  export const SidenavContext = /*#__PURE__*/React.createContext(null);
16
15
  const emptyArray = [];
17
16
  const Subcomponents = {
@@ -8,10 +8,9 @@ import ArrowLeftLine from '@rsuite/icons/ArrowLeftLine';
8
8
  import ArrowRightLine from '@rsuite/icons/ArrowRightLine';
9
9
  import NavContext from "../Nav/NavContext.js";
10
10
  import ExpandedSidenavDropdownMenu from "./ExpandedSidenavDropdownMenu.js";
11
- import { useStyles } from "../internals/hooks/index.js";
11
+ import { useStyles, useCustom } from "../internals/hooks/index.js";
12
12
  import { mergeRefs } from "../internals/utils/index.js";
13
13
  import { SidenavContext } from "./Sidenav.js";
14
- import { useCustom } from "../CustomProvider/index.js";
15
14
  /**
16
15
  * @private this component is not supposed to be used directly
17
16
  * Instead it's rendered by a <Nav.Menu> within a <Sidenav>
@@ -44,16 +44,20 @@ export interface SliderProps<T = number> extends BoxProps, FormControlBaseProps<
44
44
  placeholder?: React.ReactNode;
45
45
  /** Vertical Slide */
46
46
  vertical?: boolean;
47
- /** If true, tooltip will always be visible even without hover */
47
+ /**
48
+ * If true, tooltip will always be visible even without hover
49
+ */
48
50
  keepTooltipOpen?: boolean;
49
51
  /**
50
52
  * A slider can have different sizes.
51
53
  *
52
54
  * @default 'sm'
55
+ * @version 6.0.0
53
56
  */
54
57
  size?: Size;
55
58
  /**
56
59
  * Custom marks on the ruler
60
+ * @version 6.0.0
57
61
  */
58
62
  marks?: {
59
63
  value: number;