rsuite 5.18.1 → 5.19.0-beta.5

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 (485) hide show
  1. package/Animation/styles/animation.less +0 -0
  2. package/Animation/styles/index.less +0 -0
  3. package/Animation/styles/mixin.less +0 -0
  4. package/AutoComplete/styles/index.less +0 -0
  5. package/Avatar/styles/mixin.less +0 -0
  6. package/Badge/styles/index.less +0 -0
  7. package/Breadcrumb/styles/index.less +0 -0
  8. package/Button/styles/mixin.less +0 -0
  9. package/CHANGELOG.md +13 -0
  10. package/Cascader/styles/index.less +0 -0
  11. package/CheckPicker/styles/index.less +0 -0
  12. package/Checkbox/styles/index.less +0 -0
  13. package/Checkbox/styles/mixin.less +0 -0
  14. package/CheckboxGroup/styles/index.less +0 -0
  15. package/CloseButton/styles/index.less +0 -0
  16. package/Container/styles/index.less +0 -0
  17. package/Content/styles/index.less +0 -0
  18. package/Divider/styles/index.less +0 -0
  19. package/Drawer/styles/mixin.less +0 -0
  20. package/FlexboxGrid/styles/index.less +0 -0
  21. package/Footer/styles/index.less +0 -0
  22. package/Form/styles/index.less +0 -0
  23. package/FormControlLabel/styles/index.less +0 -0
  24. package/FormErrorMessage/styles/animation.less +0 -0
  25. package/FormErrorMessage/styles/index.less +0 -0
  26. package/FormGroup/styles/index.less +0 -0
  27. package/FormHelpText/styles/index.less +0 -0
  28. package/Grid/styles/grid-framework.less +0 -0
  29. package/Grid/styles/mixin.less +0 -0
  30. package/Header/styles/index.less +0 -0
  31. package/Input/styles/index.less +0 -0
  32. package/InputNumber/styles/index.less +0 -0
  33. package/InputNumber/styles/mixin.less +0 -0
  34. package/InputPicker/styles/index.less +0 -0
  35. package/LICENSE +0 -0
  36. package/List/styles/index.less +0 -0
  37. package/Loader/styles/index.less +0 -0
  38. package/Loader/styles/mixin.less +0 -0
  39. package/Message/styles/index.less +0 -0
  40. package/Message/styles/mixin.less +0 -0
  41. package/Modal/styles/animation.less +0 -0
  42. package/Notification/styles/index.less +0 -0
  43. package/Notification/styles/mixin.less +0 -0
  44. package/Pagination/styles/index.less +0 -0
  45. package/Pagination/styles/mixin.less +0 -0
  46. package/Pagination/styles/pagination-group.less +0 -0
  47. package/Panel/styles/index.less +0 -0
  48. package/Picker/styles/index.less +5 -0
  49. package/Placeholder/styles/index.less +0 -0
  50. package/Popover/styles/index.less +0 -0
  51. package/Popover/styles/mixins.less +0 -0
  52. package/Progress/styles/animation.less +0 -0
  53. package/Progress/styles/index.less +0 -0
  54. package/Radio/styles/mixin.less +0 -0
  55. package/RadioGroup/styles/index.less +0 -0
  56. package/Rate/styles/index.less +0 -0
  57. package/Ripple/styles/index.less +0 -0
  58. package/Ripple/styles/mixins.less +0 -0
  59. package/Row/styles/index.less +0 -0
  60. package/SelectPicker/styles/index.less +0 -0
  61. package/Sidebar/styles/index.less +0 -0
  62. package/Sidenav/styles/mixin.less +0 -0
  63. package/Steps/styles/index.less +0 -0
  64. package/Table/styles/mixin.less +0 -0
  65. package/Tag/styles/index.less +0 -0
  66. package/TagInput/styles/index.less +0 -0
  67. package/TagPicker/styles/index.less +0 -0
  68. package/Timeline/styles/index.less +0 -0
  69. package/Timeline/styles/mixin.less +0 -0
  70. package/Tooltip/styles/mixins.less +0 -0
  71. package/TreePicker/styles/mixin.less +0 -0
  72. package/Uploader/styles/mixin.less +0 -0
  73. package/Windowing/package.json +7 -0
  74. package/cjs/@types/global.d.ts +0 -0
  75. package/cjs/Affix/index.js +0 -0
  76. package/cjs/Animation/Bounce.js +0 -0
  77. package/cjs/Animation/Fade.js +0 -0
  78. package/cjs/Animation/Slide.js +0 -0
  79. package/cjs/Animation/index.js +0 -0
  80. package/cjs/Animation/utils.js +0 -0
  81. package/cjs/AutoComplete/index.js +0 -0
  82. package/cjs/Avatar/index.js +0 -0
  83. package/cjs/Badge/index.js +0 -0
  84. package/cjs/Breadcrumb/index.js +0 -0
  85. package/cjs/Button/index.js +0 -0
  86. package/cjs/ButtonToolbar/ButtonToolbar.js +0 -0
  87. package/cjs/ButtonToolbar/index.js +0 -0
  88. package/cjs/Calendar/MonthDropdown.d.ts +1 -0
  89. package/cjs/Calendar/MonthDropdown.js +27 -40
  90. package/cjs/Carousel/index.js +0 -0
  91. package/cjs/Cascader/Cascader.d.ts +2 -2
  92. package/cjs/Cascader/DropdownMenu.js +5 -2
  93. package/cjs/Cascader/index.js +0 -0
  94. package/cjs/CheckPicker/CheckPicker.d.ts +2 -2
  95. package/cjs/CheckPicker/CheckPicker.js +4 -1
  96. package/cjs/CheckPicker/index.js +0 -0
  97. package/cjs/CheckTreePicker/CheckTreePicker.js +31 -31
  98. package/cjs/CheckTreePicker/index.js +0 -0
  99. package/cjs/Checkbox/index.js +0 -0
  100. package/cjs/CloseButton/CloseButton.js +0 -0
  101. package/cjs/CloseButton/index.js +0 -0
  102. package/cjs/Col/index.js +0 -0
  103. package/cjs/Container/index.js +0 -0
  104. package/cjs/Content/Content.js +0 -0
  105. package/cjs/Content/index.js +0 -0
  106. package/cjs/CustomProvider/FormattedDate.js +0 -0
  107. package/cjs/CustomProvider/index.js +0 -0
  108. package/cjs/DatePicker/index.js +0 -0
  109. package/cjs/DateRangePicker/disabledDateUtils.js +0 -0
  110. package/cjs/Disclosure/Disclosure.d.ts +2 -2
  111. package/cjs/Disclosure/Disclosure.js +6 -6
  112. package/cjs/Disclosure/index.js +0 -0
  113. package/cjs/Divider/index.js +0 -0
  114. package/cjs/Drawer/index.js +0 -0
  115. package/cjs/Dropdown/Dropdown.js +1 -0
  116. package/cjs/Dropdown/DropdownState.js +0 -0
  117. package/cjs/Dropdown/index.js +0 -0
  118. package/cjs/FlexboxGrid/index.js +0 -0
  119. package/cjs/Footer/Footer.js +0 -0
  120. package/cjs/Footer/index.js +0 -0
  121. package/cjs/FormControl/index.js +0 -0
  122. package/cjs/FormControlLabel/FormControlLabel.js +0 -0
  123. package/cjs/FormControlLabel/index.js +0 -0
  124. package/cjs/FormErrorMessage/FormErrorMessage.js +0 -0
  125. package/cjs/FormErrorMessage/index.js +0 -0
  126. package/cjs/FormGroup/index.js +0 -0
  127. package/cjs/FormHelpText/index.js +0 -0
  128. package/cjs/Grid/Grid.js +0 -0
  129. package/cjs/Grid/index.js +0 -0
  130. package/cjs/Header/Header.js +0 -0
  131. package/cjs/Header/index.js +0 -0
  132. package/cjs/IconButton/index.js +0 -0
  133. package/cjs/Input/index.js +0 -0
  134. package/cjs/InputGroup/InputGroupButton.js +0 -0
  135. package/cjs/InputGroup/index.js +0 -0
  136. package/cjs/InputNumber/index.js +0 -0
  137. package/cjs/InputPicker/InputPicker.js +4 -1
  138. package/cjs/InputPicker/index.js +0 -0
  139. package/cjs/List/index.js +0 -0
  140. package/cjs/Loader/index.js +0 -0
  141. package/cjs/Menu/MenuContext.js +0 -0
  142. package/cjs/Menu/index.js +0 -0
  143. package/cjs/Message/index.js +0 -0
  144. package/cjs/Modal/ModalFooter.js +0 -0
  145. package/cjs/Modal/index.js +0 -0
  146. package/cjs/MultiCascader/DropdownMenu.js +5 -2
  147. package/cjs/MultiCascader/index.js +0 -0
  148. package/cjs/Nav/index.js +0 -0
  149. package/cjs/Navbar/NavbarBody.js +0 -0
  150. package/cjs/Navbar/NavbarBrand.js +0 -0
  151. package/cjs/Navbar/NavbarDropdownMenu.js +16 -10
  152. package/cjs/Navbar/NavbarHeader.js +0 -0
  153. package/cjs/Notification/index.js +0 -0
  154. package/cjs/Overlay/OverlayTrigger.d.ts +2 -2
  155. package/cjs/Overlay/index.js +0 -0
  156. package/cjs/Pagination/index.js +0 -0
  157. package/cjs/Panel/index.js +0 -0
  158. package/cjs/PanelGroup/index.js +0 -0
  159. package/cjs/Picker/DropdownMenu.d.ts +2 -1
  160. package/cjs/Picker/DropdownMenu.js +39 -33
  161. package/cjs/Picker/PickerOverlay.d.ts +2 -2
  162. package/cjs/Picker/PickerToggle.js +1 -1
  163. package/cjs/Picker/PickerToggleTrigger.d.ts +2 -2
  164. package/cjs/Picker/index.d.ts +3 -3
  165. package/cjs/Picker/types.d.ts +7 -5
  166. package/cjs/Picker/utils.d.ts +11 -12
  167. package/cjs/Picker/utils.js +4 -0
  168. package/cjs/Placeholder/Placeholder.js +0 -0
  169. package/cjs/Placeholder/index.js +0 -0
  170. package/cjs/Plaintext/index.js +0 -0
  171. package/cjs/Popover/index.js +0 -0
  172. package/cjs/Progress/Progress.js +0 -0
  173. package/cjs/Progress/index.js +0 -0
  174. package/cjs/Radio/index.js +0 -0
  175. package/cjs/RadioGroup/index.js +0 -0
  176. package/cjs/RangeSlider/index.js +0 -0
  177. package/cjs/Rate/index.js +0 -0
  178. package/cjs/Ripple/index.js +0 -0
  179. package/cjs/Row/Row.js +0 -0
  180. package/cjs/Row/index.js +0 -0
  181. package/cjs/SafeAnchor/index.js +0 -0
  182. package/cjs/Schema/Schema.js +0 -0
  183. package/cjs/Schema/index.js +0 -0
  184. package/cjs/SelectPicker/SelectPicker.d.ts +4 -5
  185. package/cjs/SelectPicker/SelectPicker.js +4 -1
  186. package/cjs/Sidebar/index.js +0 -0
  187. package/cjs/Sidenav/SidenavBody.js +0 -0
  188. package/cjs/Sidenav/SidenavHeader.js +0 -0
  189. package/cjs/Sidenav/SidenavItem.js +8 -1
  190. package/cjs/Sidenav/index.js +0 -0
  191. package/cjs/Slider/index.js +0 -0
  192. package/cjs/Stack/Stack.d.ts +6 -2
  193. package/cjs/Stack/Stack.js +17 -7
  194. package/cjs/Stack/StackItem.d.ts +26 -0
  195. package/cjs/Stack/StackItem.js +53 -0
  196. package/cjs/Steps/index.js +0 -0
  197. package/cjs/Table/index.js +0 -0
  198. package/cjs/Tag/Tag.js +0 -0
  199. package/cjs/Tag/index.js +0 -0
  200. package/cjs/TagGroup/TagGroup.js +0 -0
  201. package/cjs/TagGroup/index.js +0 -0
  202. package/cjs/Timeline/index.js +0 -0
  203. package/cjs/Toggle/index.js +0 -0
  204. package/cjs/Tooltip/index.js +0 -0
  205. package/cjs/Tree/Tree.d.ts +2 -5
  206. package/cjs/Tree/index.js +0 -0
  207. package/cjs/TreePicker/TreePicker.js +34 -34
  208. package/cjs/TreePicker/index.js +0 -0
  209. package/cjs/TreePicker/test/TreePicker.test.js +14 -0
  210. package/cjs/Whisper/Whisper.d.ts +3 -3
  211. package/cjs/Whisper/index.js +0 -0
  212. package/cjs/Windowing/AutoSizer.d.ts +25 -0
  213. package/cjs/Windowing/AutoSizer.js +107 -0
  214. package/cjs/Windowing/List.d.ts +45 -0
  215. package/cjs/Windowing/List.js +72 -0
  216. package/cjs/Windowing/index.d.ts +5 -0
  217. package/cjs/Windowing/index.js +19 -0
  218. package/cjs/index.d.ts +1 -0
  219. package/cjs/locales/ar_EG.js +0 -0
  220. package/cjs/locales/da_DK.js +0 -0
  221. package/cjs/locales/de_DE.js +0 -0
  222. package/cjs/locales/default.js +0 -0
  223. package/cjs/locales/en_GB.js +0 -0
  224. package/cjs/locales/en_US.js +0 -0
  225. package/cjs/locales/es_AR.js +0 -0
  226. package/cjs/locales/es_ES.js +0 -0
  227. package/cjs/locales/fi_FI.js +0 -0
  228. package/cjs/locales/it_IT.js +0 -0
  229. package/cjs/locales/ko_KR.js +0 -0
  230. package/cjs/locales/pt_BR.js +0 -0
  231. package/cjs/locales/ru_RU.js +0 -0
  232. package/cjs/locales/sv_SE.js +0 -0
  233. package/cjs/locales/zh_CN.js +0 -0
  234. package/cjs/locales/zh_TW.js +0 -0
  235. package/cjs/toaster/ToastContainer.d.ts +2 -1
  236. package/cjs/toaster/ToastContainer.js +27 -26
  237. package/cjs/toaster/toaster.d.ts +1 -1
  238. package/cjs/toaster/toaster.js +43 -13
  239. package/cjs/toaster/useToaster.d.ts +1 -1
  240. package/cjs/utils/clone.js +0 -0
  241. package/cjs/utils/events.js +0 -0
  242. package/cjs/utils/getDOMNode.js +0 -0
  243. package/cjs/utils/getSafeRegExpString.js +0 -0
  244. package/cjs/utils/guid.js +0 -0
  245. package/cjs/utils/htmlPropsUtils.js +0 -0
  246. package/cjs/utils/index.d.ts +1 -0
  247. package/cjs/utils/index.js +6 -1
  248. package/cjs/utils/isOneOf.js +0 -0
  249. package/cjs/utils/prefix.js +0 -0
  250. package/cjs/utils/render.d.ts +3 -0
  251. package/cjs/utils/render.js +49 -0
  252. package/cjs/utils/shallowEqual.js +0 -0
  253. package/cjs/utils/shallowEqualArray.js +0 -0
  254. package/cjs/utils/statusIcons.js +0 -0
  255. package/cjs/utils/stringToObject.js +0 -0
  256. package/cjs/utils/tplTransform.js +0 -0
  257. package/cjs/utils/treeUtils.d.ts +2 -2
  258. package/cjs/utils/useClassNames.js +0 -0
  259. package/cjs/utils/useEnsuredRef.js +0 -0
  260. package/cjs/utils/useEventCallback.js +0 -0
  261. package/cjs/utils/useToggleCaret.js +0 -0
  262. package/cjs/utils/useUniqueId.js +10 -2
  263. package/cjs/utils/useUpdateEffect.js +0 -0
  264. package/cjs/utils/useUpdatedRef.js +0 -0
  265. package/cjs/utils/useWillUnmount.js +0 -0
  266. package/dist/rsuite-rtl.css +4 -0
  267. package/dist/rsuite-rtl.min.css +1 -1
  268. package/dist/rsuite-rtl.min.css.map +1 -1
  269. package/dist/rsuite.css +4 -0
  270. package/dist/rsuite.js +845 -654
  271. package/dist/rsuite.js.map +1 -1
  272. package/dist/rsuite.min.css +1 -1
  273. package/dist/rsuite.min.css.map +1 -1
  274. package/dist/rsuite.min.js +1 -1
  275. package/dist/rsuite.min.js.LICENSE.txt +2 -0
  276. package/dist/rsuite.min.js.map +1 -1
  277. package/esm/@types/global.d.ts +0 -0
  278. package/esm/Affix/index.js +0 -0
  279. package/esm/Animation/Bounce.js +0 -0
  280. package/esm/Animation/Fade.js +0 -0
  281. package/esm/Animation/Slide.js +0 -0
  282. package/esm/Animation/index.js +0 -0
  283. package/esm/Animation/utils.js +0 -0
  284. package/esm/AutoComplete/index.js +0 -0
  285. package/esm/Avatar/index.js +0 -0
  286. package/esm/Badge/index.js +0 -0
  287. package/esm/Breadcrumb/index.js +0 -0
  288. package/esm/Button/index.js +0 -0
  289. package/esm/ButtonToolbar/ButtonToolbar.js +0 -0
  290. package/esm/ButtonToolbar/index.js +0 -0
  291. package/esm/Calendar/MonthDropdown.d.ts +1 -0
  292. package/esm/Calendar/MonthDropdown.js +26 -41
  293. package/esm/Carousel/index.js +0 -0
  294. package/esm/Cascader/Cascader.d.ts +2 -2
  295. package/esm/Cascader/DropdownMenu.js +5 -2
  296. package/esm/Cascader/index.js +0 -0
  297. package/esm/CheckPicker/CheckPicker.d.ts +2 -2
  298. package/esm/CheckPicker/CheckPicker.js +4 -1
  299. package/esm/CheckPicker/index.js +0 -0
  300. package/esm/CheckTreePicker/CheckTreePicker.js +31 -30
  301. package/esm/CheckTreePicker/index.js +0 -0
  302. package/esm/Checkbox/index.js +0 -0
  303. package/esm/CloseButton/CloseButton.js +0 -0
  304. package/esm/CloseButton/index.js +0 -0
  305. package/esm/Col/index.js +0 -0
  306. package/esm/Container/index.js +0 -0
  307. package/esm/Content/Content.js +0 -0
  308. package/esm/Content/index.js +0 -0
  309. package/esm/CustomProvider/FormattedDate.js +0 -0
  310. package/esm/CustomProvider/index.js +0 -0
  311. package/esm/DatePicker/index.js +0 -0
  312. package/esm/DateRangePicker/disabledDateUtils.js +0 -0
  313. package/esm/Disclosure/Disclosure.d.ts +2 -2
  314. package/esm/Disclosure/Disclosure.js +6 -6
  315. package/esm/Disclosure/index.js +0 -0
  316. package/esm/Divider/index.js +0 -0
  317. package/esm/Drawer/index.js +0 -0
  318. package/esm/Dropdown/Dropdown.js +1 -0
  319. package/esm/Dropdown/DropdownState.js +0 -0
  320. package/esm/Dropdown/index.js +0 -0
  321. package/esm/FlexboxGrid/index.js +0 -0
  322. package/esm/Footer/Footer.js +0 -0
  323. package/esm/Footer/index.js +0 -0
  324. package/esm/FormControl/index.js +0 -0
  325. package/esm/FormControlLabel/FormControlLabel.js +0 -0
  326. package/esm/FormControlLabel/index.js +0 -0
  327. package/esm/FormErrorMessage/FormErrorMessage.js +0 -0
  328. package/esm/FormErrorMessage/index.js +0 -0
  329. package/esm/FormGroup/index.js +0 -0
  330. package/esm/FormHelpText/index.js +0 -0
  331. package/esm/Grid/Grid.js +0 -0
  332. package/esm/Grid/index.js +0 -0
  333. package/esm/Header/Header.js +0 -0
  334. package/esm/Header/index.js +0 -0
  335. package/esm/IconButton/index.js +0 -0
  336. package/esm/Input/index.js +0 -0
  337. package/esm/InputGroup/InputGroupButton.js +0 -0
  338. package/esm/InputGroup/index.js +0 -0
  339. package/esm/InputNumber/index.js +0 -0
  340. package/esm/InputPicker/InputPicker.js +4 -1
  341. package/esm/InputPicker/index.js +0 -0
  342. package/esm/List/index.js +0 -0
  343. package/esm/Loader/index.js +0 -0
  344. package/esm/Menu/MenuContext.js +0 -0
  345. package/esm/Menu/index.js +0 -0
  346. package/esm/Message/index.js +0 -0
  347. package/esm/Modal/ModalFooter.js +0 -0
  348. package/esm/Modal/index.js +0 -0
  349. package/esm/MultiCascader/DropdownMenu.js +5 -2
  350. package/esm/MultiCascader/index.js +0 -0
  351. package/esm/Nav/index.js +0 -0
  352. package/esm/Navbar/NavbarBody.js +0 -0
  353. package/esm/Navbar/NavbarBrand.js +0 -0
  354. package/esm/Navbar/NavbarDropdownMenu.js +14 -8
  355. package/esm/Navbar/NavbarHeader.js +0 -0
  356. package/esm/Notification/index.js +0 -0
  357. package/esm/Overlay/OverlayTrigger.d.ts +2 -2
  358. package/esm/Overlay/index.js +0 -0
  359. package/esm/Pagination/index.js +0 -0
  360. package/esm/Panel/index.js +0 -0
  361. package/esm/PanelGroup/index.js +0 -0
  362. package/esm/Picker/DropdownMenu.d.ts +2 -1
  363. package/esm/Picker/DropdownMenu.js +39 -35
  364. package/esm/Picker/PickerOverlay.d.ts +2 -2
  365. package/esm/Picker/PickerToggle.js +1 -1
  366. package/esm/Picker/PickerToggleTrigger.d.ts +2 -2
  367. package/esm/Picker/index.d.ts +3 -3
  368. package/esm/Picker/types.d.ts +7 -5
  369. package/esm/Picker/utils.d.ts +11 -12
  370. package/esm/Picker/utils.js +4 -0
  371. package/esm/Placeholder/Placeholder.js +0 -0
  372. package/esm/Placeholder/index.js +0 -0
  373. package/esm/Plaintext/index.js +0 -0
  374. package/esm/Popover/index.js +0 -0
  375. package/esm/Progress/Progress.js +0 -0
  376. package/esm/Progress/index.js +0 -0
  377. package/esm/Radio/index.js +0 -0
  378. package/esm/RadioGroup/index.js +0 -0
  379. package/esm/RangeSlider/index.js +0 -0
  380. package/esm/Rate/index.js +0 -0
  381. package/esm/Ripple/index.js +0 -0
  382. package/esm/Row/Row.js +0 -0
  383. package/esm/Row/index.js +0 -0
  384. package/esm/SafeAnchor/index.js +0 -0
  385. package/esm/Schema/Schema.js +0 -0
  386. package/esm/Schema/index.js +0 -0
  387. package/esm/SelectPicker/SelectPicker.d.ts +4 -5
  388. package/esm/SelectPicker/SelectPicker.js +4 -1
  389. package/esm/Sidebar/index.js +0 -0
  390. package/esm/Sidenav/SidenavBody.js +0 -0
  391. package/esm/Sidenav/SidenavHeader.js +0 -0
  392. package/esm/Sidenav/SidenavItem.js +6 -1
  393. package/esm/Sidenav/index.js +0 -0
  394. package/esm/Slider/index.js +0 -0
  395. package/esm/Stack/Stack.d.ts +6 -2
  396. package/esm/Stack/Stack.js +15 -4
  397. package/esm/Stack/StackItem.d.ts +26 -0
  398. package/esm/Stack/StackItem.js +42 -0
  399. package/esm/Steps/index.js +0 -0
  400. package/esm/Table/index.js +0 -0
  401. package/esm/Tag/Tag.js +0 -0
  402. package/esm/Tag/index.js +0 -0
  403. package/esm/TagGroup/TagGroup.js +0 -0
  404. package/esm/TagGroup/index.js +0 -0
  405. package/esm/Timeline/index.js +0 -0
  406. package/esm/Toggle/index.js +0 -0
  407. package/esm/Tooltip/index.js +0 -0
  408. package/esm/Tree/Tree.d.ts +2 -5
  409. package/esm/Tree/index.js +0 -0
  410. package/esm/TreePicker/TreePicker.js +33 -32
  411. package/esm/TreePicker/index.js +0 -0
  412. package/esm/TreePicker/test/TreePicker.test.js +14 -0
  413. package/esm/Whisper/Whisper.d.ts +3 -3
  414. package/esm/Whisper/index.js +0 -0
  415. package/esm/Windowing/AutoSizer.d.ts +25 -0
  416. package/esm/Windowing/AutoSizer.js +92 -0
  417. package/esm/Windowing/List.d.ts +45 -0
  418. package/esm/Windowing/List.js +58 -0
  419. package/esm/Windowing/index.d.ts +5 -0
  420. package/esm/Windowing/index.js +3 -0
  421. package/esm/index.d.ts +1 -0
  422. package/esm/locales/ar_EG.js +0 -0
  423. package/esm/locales/da_DK.js +0 -0
  424. package/esm/locales/de_DE.js +0 -0
  425. package/esm/locales/default.js +0 -0
  426. package/esm/locales/en_GB.js +0 -0
  427. package/esm/locales/en_US.js +0 -0
  428. package/esm/locales/es_AR.js +0 -0
  429. package/esm/locales/es_ES.js +0 -0
  430. package/esm/locales/fi_FI.js +0 -0
  431. package/esm/locales/it_IT.js +0 -0
  432. package/esm/locales/ko_KR.js +0 -0
  433. package/esm/locales/pt_BR.js +0 -0
  434. package/esm/locales/ru_RU.js +0 -0
  435. package/esm/locales/sv_SE.js +0 -0
  436. package/esm/locales/zh_CN.js +0 -0
  437. package/esm/locales/zh_TW.js +0 -0
  438. package/esm/toaster/ToastContainer.d.ts +2 -1
  439. package/esm/toaster/ToastContainer.js +28 -26
  440. package/esm/toaster/toaster.d.ts +1 -1
  441. package/esm/toaster/toaster.js +41 -13
  442. package/esm/toaster/useToaster.d.ts +1 -1
  443. package/esm/utils/clone.js +0 -0
  444. package/esm/utils/events.js +0 -0
  445. package/esm/utils/getDOMNode.js +0 -0
  446. package/esm/utils/getSafeRegExpString.js +0 -0
  447. package/esm/utils/guid.js +0 -0
  448. package/esm/utils/htmlPropsUtils.js +0 -0
  449. package/esm/utils/index.d.ts +1 -0
  450. package/esm/utils/index.js +1 -0
  451. package/esm/utils/isOneOf.js +0 -0
  452. package/esm/utils/prefix.js +0 -0
  453. package/esm/utils/render.d.ts +3 -0
  454. package/esm/utils/render.js +37 -0
  455. package/esm/utils/shallowEqual.js +0 -0
  456. package/esm/utils/shallowEqualArray.js +0 -0
  457. package/esm/utils/statusIcons.js +0 -0
  458. package/esm/utils/stringToObject.js +0 -0
  459. package/esm/utils/tplTransform.js +0 -0
  460. package/esm/utils/treeUtils.d.ts +2 -2
  461. package/esm/utils/useClassNames.js +0 -0
  462. package/esm/utils/useEnsuredRef.js +0 -0
  463. package/esm/utils/useEventCallback.js +0 -0
  464. package/esm/utils/useToggleCaret.js +0 -0
  465. package/esm/utils/useUniqueId.js +7 -2
  466. package/esm/utils/useUpdateEffect.js +0 -0
  467. package/esm/utils/useUpdatedRef.js +0 -0
  468. package/esm/utils/useWillUnmount.js +0 -0
  469. package/package.json +8 -8
  470. package/styles/color-modes.less +0 -0
  471. package/styles/colors/light.less +0 -0
  472. package/styles/common.less +0 -0
  473. package/styles/mixins/color-modes.less +0 -0
  474. package/styles/mixins/hacks.less +0 -0
  475. package/styles/mixins/listbox.less +0 -0
  476. package/styles/mixins/menu.less +0 -0
  477. package/styles/normalize.less +0 -0
  478. package/styles/scaffolding.less +0 -0
  479. package/styles/typography.less +0 -0
  480. package/toaster/styles/animation.less +0 -0
  481. package/toaster/styles/index.less +0 -0
  482. package/cjs/Picker/VirtualizedList.d.ts +0 -37
  483. package/cjs/Picker/VirtualizedList.js +0 -15
  484. package/esm/Picker/VirtualizedList.d.ts +0 -37
  485. package/esm/Picker/VirtualizedList.js +0 -4
package/cjs/Row/Row.js CHANGED
File without changes
package/cjs/Row/index.js CHANGED
File without changes
File without changes
File without changes
File without changes
@@ -1,7 +1,7 @@
1
1
  import React, { Ref } from 'react';
2
2
  import { PickerLocale } from '../locales';
3
- import { PickerInstance, PickerToggleProps } from '../Picker';
4
- import { ListProps } from '../Picker/VirtualizedList';
3
+ import { PickerHandle, PickerToggleProps } from '../Picker';
4
+ import { ListProps } from '../Windowing';
5
5
  import { FormControlPickerProps, ItemDataType } from '../@types/common';
6
6
  export interface SelectProps<T> {
7
7
  /** Set group condition key in data */
@@ -11,8 +11,7 @@ export interface SelectProps<T> {
11
11
  /** Whether using virtualized list */
12
12
  virtualized?: boolean;
13
13
  /**
14
- * List-related properties in `react-virtualized`
15
- * https://github.com/bvaughn/react-virtualized/blob/master/docs/List.md#prop-types
14
+ * Virtualized List Props
16
15
  */
17
16
  listProps?: Partial<ListProps>;
18
17
  /** Custom search rules. */
@@ -50,7 +49,7 @@ export interface SelectPickerProps<T> extends Omit<FormControlPickerProps<T, Pic
50
49
  }
51
50
  export interface SelectPickerComponent {
52
51
  <T>(props: SelectPickerProps<T> & {
53
- ref?: Ref<PickerInstance>;
52
+ ref?: Ref<PickerHandle>;
54
53
  }): JSX.Element | null;
55
54
  displayName?: string;
56
55
  propTypes?: React.WeakValidationMap<SelectPickerProps<any>>;
@@ -94,6 +94,7 @@ var SelectPicker = /*#__PURE__*/_react.default.forwardRef(function (props, ref)
94
94
  var targetRef = (0, _react.useRef)(null);
95
95
  var overlayRef = (0, _react.useRef)(null);
96
96
  var searchInputRef = (0, _react.useRef)(null);
97
+ var listRef = (0, _react.useRef)(null);
97
98
 
98
99
  var _useCustom = (0, _utils.useCustom)('Picker', overrideLocale),
99
100
  locale = _useCustom.locale;
@@ -213,7 +214,8 @@ var SelectPicker = /*#__PURE__*/_react.default.forwardRef(function (props, ref)
213
214
  (0, _Picker.usePublicMethods)(ref, {
214
215
  triggerRef: triggerRef,
215
216
  overlayRef: overlayRef,
216
- targetRef: targetRef
217
+ targetRef: targetRef,
218
+ listRef: listRef
217
219
  }); // Find active `MenuItem` by `value`
218
220
 
219
221
  var activeItem = data.find(function (item) {
@@ -264,6 +266,7 @@ var SelectPicker = /*#__PURE__*/_react.default.forwardRef(function (props, ref)
264
266
  var menu = items.length ? /*#__PURE__*/_react.default.createElement(_Picker.DropdownMenu, {
265
267
  id: id ? id + "-listbox" : undefined,
266
268
  listProps: listProps,
269
+ listRef: listRef,
267
270
  disabledItemValues: disabledItemValues,
268
271
  valueKey: valueKey,
269
272
  labelKey: labelKey,
File without changes
File without changes
File without changes
@@ -74,8 +74,14 @@ var SidenavItem = /*#__PURE__*/_react.default.forwardRef(function (props, ref) {
74
74
  prefix = _useClassNames.prefix;
75
75
 
76
76
  var selected = activeProp !== null && activeProp !== void 0 ? activeProp : !(0, _isNil.default)(eventKey) && (0, _utils.shallowEqual)(activeKey, eventKey);
77
+
78
+ var whisperRef = _react.default.useRef(null);
79
+
77
80
  var handleClick = (0, _react.useCallback)(function (event) {
81
+ var _whisperRef$current;
82
+
78
83
  if (disabled) return;
84
+ (_whisperRef$current = whisperRef.current) === null || _whisperRef$current === void 0 ? void 0 : _whisperRef$current.close();
79
85
  onSelect === null || onSelect === void 0 ? void 0 : onSelect(eventKey, event);
80
86
  onSelectFromNav === null || onSelectFromNav === void 0 ? void 0 : onSelectFromNav(eventKey, event);
81
87
  onClick === null || onClick === void 0 ? void 0 : onClick(event);
@@ -85,7 +91,8 @@ var SidenavItem = /*#__PURE__*/_react.default.forwardRef(function (props, ref) {
85
91
  return /*#__PURE__*/_react.default.createElement(_Whisper.default, {
86
92
  trigger: "hover",
87
93
  speaker: /*#__PURE__*/_react.default.createElement(_Tooltip.default, null, tooltip),
88
- placement: "right"
94
+ placement: "right",
95
+ ref: whisperRef
89
96
  }, function (triggerProps, triggerRef) {
90
97
  return /*#__PURE__*/_react.default.createElement(_MenuItem.default, {
91
98
  selected: selected,
File without changes
File without changes
@@ -1,5 +1,6 @@
1
1
  import React from 'react';
2
- import { WithAsProps } from '../@types/common';
2
+ import { RsRefForwardingComponent, WithAsProps } from '../@types/common';
3
+ import StackItem from './StackItem';
3
4
  export interface StackProps extends WithAsProps {
4
5
  /**
5
6
  * The direction of the children in the stack.
@@ -22,5 +23,8 @@ export interface StackProps extends WithAsProps {
22
23
  */
23
24
  wrap?: boolean;
24
25
  }
25
- declare const Stack: React.ForwardRefExoticComponent<StackProps & React.RefAttributes<HTMLDivElement>>;
26
+ export interface StackComponent extends RsRefForwardingComponent<'div', StackProps> {
27
+ Item: typeof StackItem;
28
+ }
29
+ declare const Stack: StackComponent;
26
30
  export default Stack;
@@ -15,6 +15,8 @@ var _propTypes = _interopRequireDefault(require("prop-types"));
15
15
 
16
16
  var _utils = require("../utils");
17
17
 
18
+ var _StackItem = _interopRequireDefault(require("./StackItem"));
19
+
18
20
  var Stack = /*#__PURE__*/_react.default.forwardRef(function (props, ref) {
19
21
  var _itemStyles;
20
22
 
@@ -44,9 +46,6 @@ var Stack = /*#__PURE__*/_react.default.forwardRef(function (props, ref) {
44
46
 
45
47
  var classes = merge(className, withClassPrefix());
46
48
  var isSupportGridGap = (0, _utils.isSupportFlexGap)();
47
-
48
- var count = _react.default.Children.count(children);
49
-
50
49
  var gridGap = Array.isArray(spacing) ? spacing : [spacing, 0];
51
50
  var itemStyles = (_itemStyles = {}, _itemStyles[rtl ? 'marginLeft' : 'marginRight'] = gridGap[0], _itemStyles.marginBottom = gridGap[1], _itemStyles);
52
51
  var styles = (0, _extends2.default)({
@@ -56,20 +55,31 @@ var Stack = /*#__PURE__*/_react.default.forwardRef(function (props, ref) {
56
55
  flexWrap: wrap ? 'wrap' : undefined,
57
56
  gap: isSupportGridGap ? spacing : undefined
58
57
  }, style);
58
+ /*
59
+ * toArray remove undefined, null and boolean
60
+ */
61
+
62
+ var filterChildren = _react.default.Children.toArray(children);
63
+
64
+ var count = filterChildren.length;
59
65
  return /*#__PURE__*/_react.default.createElement(Component, (0, _extends2.default)({}, rest, {
60
66
  ref: ref,
61
67
  className: classes,
62
68
  style: styles
63
- }), _react.default.Children.map(children, function (child, index) {
64
- var childNode = /*#__PURE__*/_react.default.createElement("div", {
69
+ }), _react.default.Children.map(filterChildren, function (child, index) {
70
+ var childNode = child.type !== _StackItem.default ? /*#__PURE__*/_react.default.createElement(_StackItem.default, {
71
+ key: index,
65
72
  className: prefix('item'),
66
73
  style: !isSupportGridGap ? itemStyles : undefined
67
- }, child);
68
-
74
+ }, child) : /*#__PURE__*/_react.default.cloneElement(child, {
75
+ className: merge(prefix('item'), child.props.className),
76
+ style: !isSupportGridGap ? (0, _extends2.default)({}, itemStyles, child.props.style) : child.props.style
77
+ });
69
78
  return [childNode, index < count - 1 ? divider : null];
70
79
  }));
71
80
  });
72
81
 
82
+ Stack.Item = _StackItem.default;
73
83
  Stack.displayName = 'Stack';
74
84
  Stack.propTypes = {
75
85
  className: _propTypes.default.string,
@@ -0,0 +1,26 @@
1
+ import React from 'react';
2
+ import PropTypes from 'prop-types';
3
+ import { WithAsProps } from '../@types/common';
4
+ export interface StackItemProps extends WithAsProps {
5
+ alignSelf?: 'flex-start' | 'flex-end' | 'center' | 'baseline' | 'stretch';
6
+ flex?: React.CSSProperties['flex'];
7
+ grow?: React.CSSProperties['flexGrow'];
8
+ shrink?: React.CSSProperties['flexShrink'];
9
+ basis?: React.CSSProperties['flexBasis'];
10
+ order?: React.CSSProperties['order'];
11
+ }
12
+ declare function StackItem(props: StackItemProps): JSX.Element;
13
+ declare namespace StackItem {
14
+ var displayName: string;
15
+ var propTypes: {
16
+ className: PropTypes.Requireable<string>;
17
+ children: PropTypes.Requireable<PropTypes.ReactNodeLike>;
18
+ alignSelf: PropTypes.Requireable<string>;
19
+ flex: PropTypes.Requireable<string | number>;
20
+ grow: PropTypes.Requireable<number>;
21
+ shrink: PropTypes.Requireable<number>;
22
+ order: PropTypes.Requireable<number>;
23
+ basis: PropTypes.Requireable<string>;
24
+ };
25
+ }
26
+ export default StackItem;
@@ -0,0 +1,53 @@
1
+ "use strict";
2
+
3
+ var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
4
+
5
+ exports.__esModule = true;
6
+ exports.default = StackItem;
7
+
8
+ var _extends2 = _interopRequireDefault(require("@babel/runtime/helpers/extends"));
9
+
10
+ var _objectWithoutPropertiesLoose2 = _interopRequireDefault(require("@babel/runtime/helpers/objectWithoutPropertiesLoose"));
11
+
12
+ var _react = _interopRequireDefault(require("react"));
13
+
14
+ var _propTypes = _interopRequireDefault(require("prop-types"));
15
+
16
+ function StackItem(props) {
17
+ var _props$as = props.as,
18
+ Component = _props$as === void 0 ? 'div' : _props$as,
19
+ style = props.style,
20
+ className = props.className,
21
+ alignSelf = props.alignSelf,
22
+ flex = props.flex,
23
+ grow = props.grow,
24
+ shrink = props.shrink,
25
+ order = props.order,
26
+ basis = props.basis,
27
+ rest = (0, _objectWithoutPropertiesLoose2.default)(props, ["as", "style", "className", "alignSelf", "flex", "grow", "shrink", "order", "basis"]);
28
+ return /*#__PURE__*/_react.default.createElement(Component, (0, _extends2.default)({
29
+ className: className,
30
+ style: (0, _extends2.default)({
31
+ alignSelf: alignSelf,
32
+ order: order
33
+ }, flex ? {
34
+ flex: flex
35
+ } : {
36
+ flexGrow: grow,
37
+ flexShrink: shrink,
38
+ flexBasis: basis
39
+ }, style)
40
+ }, rest));
41
+ }
42
+
43
+ StackItem.displayName = 'StackItem';
44
+ StackItem.propTypes = {
45
+ className: _propTypes.default.string,
46
+ children: _propTypes.default.node,
47
+ alignSelf: _propTypes.default.oneOf(['flex-start', 'flex-end', 'center', 'baseline', 'stretch']),
48
+ flex: _propTypes.default.oneOfType([_propTypes.default.string, _propTypes.default.number]),
49
+ grow: _propTypes.default.number,
50
+ shrink: _propTypes.default.number,
51
+ order: _propTypes.default.number,
52
+ basis: _propTypes.default.string
53
+ };
File without changes
File without changes
package/cjs/Tag/Tag.js CHANGED
File without changes
package/cjs/Tag/index.js CHANGED
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
@@ -1,6 +1,6 @@
1
1
  import React from 'react';
2
2
  import { StandardProps, ItemDataType, RsRefForwardingComponent } from '../@types/common';
3
- import { ListProps } from '../Picker/VirtualizedList';
3
+ import { ListProps } from '../Windowing';
4
4
  /**
5
5
  * Tree Node Drag Type
6
6
  */
@@ -46,10 +46,7 @@ export interface TreeBaseProps<ValueType = string | number, ItemDataType = Recor
46
46
  showIndentLine?: boolean;
47
47
  /** Whether using virtualized list */
48
48
  virtualized?: boolean;
49
- /**
50
- * List-related properties in `react-virtualized`
51
- * https://github.com/bvaughn/react-virtualized/blob/master/docs/List.md#prop-types
52
- */
49
+ /** Virtualized List props */
53
50
  listProps?: Partial<ListProps>;
54
51
  /** Expand all nodes By default */
55
52
  defaultExpandAll?: boolean;
package/cjs/Tree/index.js CHANGED
File without changes
@@ -25,7 +25,7 @@ var _react = _interopRequireWildcard(require("react"));
25
25
 
26
26
  var _propTypes = _interopRequireDefault(require("prop-types"));
27
27
 
28
- var _VirtualizedList = require("../Picker/VirtualizedList");
28
+ var _Windowing = require("../Windowing");
29
29
 
30
30
  var _TreeNode = _interopRequireDefault(require("./TreeNode"));
31
31
 
@@ -42,6 +42,10 @@ var maxTreeHeight = 320;
42
42
  exports.maxTreeHeight = maxTreeHeight;
43
43
  var emptyArray = [];
44
44
 
45
+ var itemSize = function itemSize() {
46
+ return 36;
47
+ };
48
+
45
49
  var TreePicker = /*#__PURE__*/_react.default.forwardRef(function (props, ref) {
46
50
  var _props$as = props.as,
47
51
  Component = _props$as === void 0 ? 'div' : _props$as,
@@ -597,33 +601,30 @@ var TreePicker = /*#__PURE__*/_react.default.forwardRef(function (props, ref) {
597
601
  }, nodeProps));
598
602
  };
599
603
 
600
- var renderVirtualListNode = function renderVirtualListNode(nodes) {
601
- return function (_ref3) {
602
- var key = _ref3.key,
603
- index = _ref3.index,
604
- style = _ref3.style;
605
- var node = nodes[index];
606
- var layer = node.layer,
607
- visible = node.visible;
608
- var expand = (0, _treeUtils.getExpandWhenSearching)(searchKeywordState, expandItemValues.includes(node[valueKey]));
609
-
610
- if (!node.visible) {
611
- return null;
612
- }
604
+ var renderVirtualListNode = function renderVirtualListNode(_ref3) {
605
+ var index = _ref3.index,
606
+ style = _ref3.style,
607
+ data = _ref3.data;
608
+ var node = data[index];
609
+ var layer = node.layer,
610
+ visible = node.visible;
611
+ var expand = (0, _treeUtils.getExpandWhenSearching)(searchKeywordState, expandItemValues.includes(node[valueKey]));
613
612
 
614
- var nodeProps = (0, _extends2.default)({}, getTreeNodeProps((0, _extends2.default)({}, node, {
615
- expand: expand
616
- }), layer), {
617
- style: style,
618
- hasChildren: node.hasChildren
619
- });
620
- return visible && /*#__PURE__*/_react.default.createElement(_TreeNode.default, (0, _extends2.default)({
621
- ref: function ref(_ref4) {
622
- return saveTreeNodeRef(_ref4, node.refKey);
623
- },
624
- key: key
625
- }, nodeProps));
626
- };
613
+ if (!node.visible) {
614
+ return null;
615
+ }
616
+
617
+ var nodeProps = (0, _extends2.default)({}, getTreeNodeProps((0, _extends2.default)({}, node, {
618
+ expand: expand
619
+ }), layer), {
620
+ style: style,
621
+ hasChildren: node.hasChildren
622
+ });
623
+ return visible && /*#__PURE__*/_react.default.createElement(_TreeNode.default, (0, _extends2.default)({
624
+ ref: function ref(_ref4) {
625
+ return saveTreeNodeRef(_ref4, node.refKey);
626
+ }
627
+ }, nodeProps));
627
628
  };
628
629
 
629
630
  var renderTree = function renderTree() {
@@ -643,7 +644,7 @@ var TreePicker = /*#__PURE__*/_react.default.forwardRef(function (props, ref) {
643
644
  onKeyDown: inline ? handleTreeKeyDown : undefined
644
645
  }, /*#__PURE__*/_react.default.createElement("div", {
645
646
  className: treePrefix('nodes')
646
- }, virtualized ? /*#__PURE__*/_react.default.createElement(_VirtualizedList.AutoSizer, {
647
+ }, virtualized ? /*#__PURE__*/_react.default.createElement(_Windowing.AutoSizer, {
647
648
  defaultHeight: inline ? height : maxTreeHeight,
648
649
  style: {
649
650
  width: 'auto',
@@ -652,15 +653,14 @@ var TreePicker = /*#__PURE__*/_react.default.forwardRef(function (props, ref) {
652
653
  }, function (_ref5) {
653
654
  var height = _ref5.height,
654
655
  width = _ref5.width;
655
- return /*#__PURE__*/_react.default.createElement(_VirtualizedList.List, (0, _extends2.default)({
656
+ return /*#__PURE__*/_react.default.createElement(_Windowing.List, (0, _extends2.default)({
656
657
  ref: listRef,
657
658
  width: width,
658
659
  height: height,
659
- rowHeight: 36,
660
- rowCount: formattedNodes.length,
661
- rowRenderer: renderVirtualListNode(formattedNodes),
662
- scrollToAlignment: "center"
663
- }, listProps));
660
+ itemSize: itemSize,
661
+ itemCount: formattedNodes.length,
662
+ itemData: formattedNodes
663
+ }, listProps), renderVirtualListNode);
664
664
  }) : formattedNodes));
665
665
  };
666
666
 
File without changes
@@ -12,4 +12,18 @@ _react.default.createElement(_TreePicker.default, {
12
12
  return /*#__PURE__*/_react.default.createElement("div", null);
13
13
  },
14
14
  data: []
15
+ });
16
+
17
+ /*#__PURE__*/
18
+ _react.default.createElement(_TreePicker.default, {
19
+ data: [],
20
+ listProps: {
21
+ itemSize: 30,
22
+ onItemsRendered: function onItemsRendered() {
23
+ console.log('onItemsRendered');
24
+ },
25
+ onScroll: function onScroll() {
26
+ console.log('onScroll');
27
+ }
28
+ }
15
29
  });
@@ -1,7 +1,7 @@
1
1
  import React from 'react';
2
- import { OverlayTriggerInstance } from '../Overlay/OverlayTrigger';
2
+ import { OverlayTriggerHandle } from '../Overlay/OverlayTrigger';
3
3
  import { OverlayTriggerProps } from '../Overlay/OverlayTrigger';
4
4
  export declare type WhisperProps = OverlayTriggerProps;
5
- export declare type WhisperInstance = OverlayTriggerInstance;
6
- declare const Whisper: React.ForwardRefExoticComponent<OverlayTriggerProps & React.RefAttributes<OverlayTriggerInstance>>;
5
+ export declare type WhisperInstance = OverlayTriggerHandle;
6
+ declare const Whisper: React.ForwardRefExoticComponent<OverlayTriggerProps & React.RefAttributes<OverlayTriggerHandle>>;
7
7
  export default Whisper;
File without changes
@@ -0,0 +1,25 @@
1
+ import React from 'react';
2
+ export interface Size {
3
+ height: number;
4
+ width: number;
5
+ }
6
+ export interface AutoSizerProps {
7
+ /** Function responsible for rendering children. */
8
+ children: (size: Size) => React.ReactNode;
9
+ /** Optional custom CSS class name to attach to root AutoSizer element. */
10
+ className?: string | undefined;
11
+ /** Default height to use for initial render; useful for SSR */
12
+ defaultHeight?: number | undefined;
13
+ /** Default width to use for initial render; useful for SSR */
14
+ defaultWidth?: number | undefined;
15
+ /** Disable dynamic :height property */
16
+ disableHeight?: boolean | undefined;
17
+ /** Disable dynamic :width property */
18
+ disableWidth?: boolean | undefined;
19
+ /** Optional inline style */
20
+ style?: React.CSSProperties | undefined;
21
+ /** Callback to be invoked on-resize */
22
+ onResize?: ((size: Size) => void) | undefined;
23
+ }
24
+ declare const AutoSizer: React.ForwardRefExoticComponent<AutoSizerProps & React.RefAttributes<HTMLDivElement>>;
25
+ export default AutoSizer;
@@ -0,0 +1,107 @@
1
+ "use strict";
2
+
3
+ var _interopRequireWildcard = require("@babel/runtime/helpers/interopRequireWildcard");
4
+
5
+ var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
6
+
7
+ exports.__esModule = true;
8
+ exports.default = void 0;
9
+
10
+ var _extends2 = _interopRequireDefault(require("@babel/runtime/helpers/extends"));
11
+
12
+ var _objectWithoutPropertiesLoose2 = _interopRequireDefault(require("@babel/runtime/helpers/objectWithoutPropertiesLoose"));
13
+
14
+ var _react = _interopRequireWildcard(require("react"));
15
+
16
+ var _getStyle = _interopRequireDefault(require("dom-lib/getStyle"));
17
+
18
+ var _utils = require("../utils");
19
+
20
+ var AutoSizer = /*#__PURE__*/_react.default.forwardRef(function (props, ref) {
21
+ var children = props.children,
22
+ className = props.className,
23
+ disableHeight = props.disableHeight,
24
+ disableWidth = props.disableWidth,
25
+ defaultHeight = props.defaultHeight,
26
+ defaultWidth = props.defaultWidth,
27
+ style = props.style,
28
+ onResize = props.onResize,
29
+ rest = (0, _objectWithoutPropertiesLoose2.default)(props, ["children", "className", "disableHeight", "disableWidth", "defaultHeight", "defaultWidth", "style", "onResize"]);
30
+
31
+ var _useState = (0, _react.useState)(defaultHeight || 0),
32
+ height = _useState[0],
33
+ setHeight = _useState[1];
34
+
35
+ var _useState2 = (0, _react.useState)(defaultWidth || 0),
36
+ width = _useState2[0],
37
+ setWidth = _useState2[1];
38
+
39
+ var rootRef = (0, _react.useRef)(null);
40
+ var getParentNode = (0, _react.useCallback)(function () {
41
+ var _rootRef$current;
42
+
43
+ if ((_rootRef$current = rootRef.current) !== null && _rootRef$current !== void 0 && _rootRef$current.parentNode && rootRef.current.parentNode.ownerDocument && rootRef.current.parentNode.ownerDocument.defaultView && rootRef.current.parentNode instanceof rootRef.current.parentNode.ownerDocument.defaultView.HTMLElement) {
44
+ return rootRef.current.parentNode;
45
+ }
46
+
47
+ return null;
48
+ }, []);
49
+ var handleResize = (0, _react.useCallback)(function () {
50
+ var parentNode = getParentNode();
51
+
52
+ if (parentNode) {
53
+ var offsetHeight = parentNode.offsetHeight || 0;
54
+ var offsetWidth = parentNode.offsetWidth || 0;
55
+
56
+ var _style = (0, _getStyle.default)(parentNode);
57
+
58
+ var paddingLeft = parseInt(_style.paddingLeft, 10) || 0;
59
+ var paddingRight = parseInt(_style.paddingRight, 10) || 0;
60
+ var paddingTop = parseInt(_style.paddingTop, 10) || 0;
61
+ var paddingBottom = parseInt(_style.paddingBottom, 10) || 0;
62
+ var newHeight = offsetHeight - paddingTop - paddingBottom;
63
+ var newWidth = offsetWidth - paddingLeft - paddingRight;
64
+
65
+ if (!disableHeight && height !== newHeight || !disableWidth && width !== newWidth) {
66
+ setHeight(offsetHeight - paddingTop - paddingBottom);
67
+ setWidth(offsetWidth - paddingLeft - paddingRight);
68
+ onResize === null || onResize === void 0 ? void 0 : onResize({
69
+ height: offsetHeight,
70
+ width: offsetWidth
71
+ });
72
+ }
73
+ }
74
+ }, [disableHeight, disableWidth, getParentNode, height, onResize, width]);
75
+ (0, _utils.useMount)(function () {
76
+ if (getParentNode()) {
77
+ handleResize();
78
+ }
79
+ });
80
+ (0, _utils.useElementResize)(getParentNode, handleResize);
81
+ var outerStyle = {
82
+ overflow: 'visible'
83
+ };
84
+ var childParams = {
85
+ width: 0,
86
+ height: 0
87
+ };
88
+
89
+ if (!disableHeight) {
90
+ outerStyle.height = 0;
91
+ childParams.height = height;
92
+ }
93
+
94
+ if (!disableWidth) {
95
+ outerStyle.width = 0;
96
+ childParams.width = width;
97
+ }
98
+
99
+ return /*#__PURE__*/_react.default.createElement("div", (0, _extends2.default)({
100
+ className: className,
101
+ ref: (0, _utils.mergeRefs)(rootRef, ref),
102
+ style: (0, _extends2.default)({}, outerStyle, style)
103
+ }, rest), children(childParams));
104
+ });
105
+
106
+ var _default = AutoSizer;
107
+ exports.default = _default;
@@ -0,0 +1,45 @@
1
+ import { VariableSizeList, ListItemKeySelector, ListOnScrollProps, ListOnItemsRenderedProps } from 'react-window';
2
+ import { WithAsProps, RsRefForwardingComponent } from '../@types/common';
3
+ export interface ListProps<T = any> extends WithAsProps {
4
+ /**
5
+ * @deprecated use itemSize instead
6
+ * Either a fixed row height (number) or a function that returns the height of a row given its index: ({ index: number }): number
7
+ */
8
+ rowHeight?: number | (({ index: number }: {
9
+ index: any;
10
+ }) => number);
11
+ /**
12
+ * Size of a item in the direction being windowed.
13
+ */
14
+ itemSize: number | ((index: number) => number);
15
+ /**
16
+ * Scroll offset for initial render.
17
+ */
18
+ initialScrollOffset?: number;
19
+ /**
20
+ * By default, lists will use an item's index as its key. This is okay if:
21
+ *
22
+ * - Your collections of items is never sorted or modified
23
+ * - Your item renderer is not stateful and does not extend PureComponent
24
+ *
25
+ * If your list does not satisfy the above constraints, use the itemKey property to specify your own keys for items
26
+ */
27
+ itemKey?: ListItemKeySelector<T>;
28
+ /**
29
+ * Called when the items rendered by the list change.
30
+ */
31
+ onItemsRendered?: (props: ListOnItemsRenderedProps) => void;
32
+ /**
33
+ * Called when the list scroll positions changes, as a result of user scrolling or scroll-to method calls.
34
+ */
35
+ onScroll?: (props: ListOnScrollProps) => void;
36
+ }
37
+ export interface ListHandle extends Partial<VariableSizeList> {
38
+ /**
39
+ * @deprecated use scrollToItem instead
40
+ * Ensure row is visible. This method can be used to safely scroll back to a cell that a user has scrolled away from even if it was previously scrolled to.
41
+ */
42
+ scrollToRow?: (index: number) => void;
43
+ }
44
+ declare const List: RsRefForwardingComponent<'div', ListProps>;
45
+ export default List;