rsuite 5.17.1 → 5.18.0-beta.3

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 (493) 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 +16 -0
  10. package/Cascader/styles/index.less +0 -0
  11. package/CheckPicker/styles/index.less +0 -0
  12. package/CheckTreePicker/styles/index.less +1 -1
  13. package/Checkbox/styles/index.less +0 -0
  14. package/Checkbox/styles/mixin.less +0 -0
  15. package/CheckboxGroup/styles/index.less +0 -0
  16. package/CloseButton/styles/index.less +0 -0
  17. package/Container/styles/index.less +0 -0
  18. package/Content/styles/index.less +0 -0
  19. package/DatePicker/styles/index.less +4 -0
  20. package/Divider/styles/index.less +0 -0
  21. package/Drawer/styles/mixin.less +0 -0
  22. package/FlexboxGrid/styles/index.less +0 -0
  23. package/Footer/styles/index.less +0 -0
  24. package/Form/styles/index.less +0 -0
  25. package/Form/styles/mixin.less +0 -1
  26. package/FormControl/styles/index.less +10 -4
  27. package/FormControlLabel/styles/index.less +0 -0
  28. package/FormErrorMessage/styles/animation.less +0 -0
  29. package/FormErrorMessage/styles/index.less +0 -0
  30. package/FormGroup/styles/index.less +0 -0
  31. package/FormHelpText/styles/index.less +0 -0
  32. package/Grid/styles/grid-framework.less +0 -0
  33. package/Grid/styles/mixin.less +0 -0
  34. package/Header/styles/index.less +0 -0
  35. package/Input/styles/index.less +0 -0
  36. package/InputNumber/styles/index.less +0 -0
  37. package/InputNumber/styles/mixin.less +0 -0
  38. package/InputPicker/styles/index.less +0 -0
  39. package/LICENSE +0 -0
  40. package/List/styles/index.less +0 -0
  41. package/Loader/styles/index.less +0 -0
  42. package/Loader/styles/mixin.less +0 -0
  43. package/Message/styles/index.less +0 -0
  44. package/Message/styles/mixin.less +0 -0
  45. package/Modal/styles/animation.less +0 -0
  46. package/Notification/styles/index.less +0 -0
  47. package/Notification/styles/mixin.less +0 -0
  48. package/Pagination/styles/index.less +0 -0
  49. package/Pagination/styles/mixin.less +0 -0
  50. package/Pagination/styles/pagination-group.less +0 -0
  51. package/Panel/styles/index.less +0 -0
  52. package/Placeholder/styles/index.less +0 -0
  53. package/Popover/styles/index.less +0 -0
  54. package/Popover/styles/mixins.less +0 -0
  55. package/Progress/styles/animation.less +0 -0
  56. package/Progress/styles/index.less +0 -0
  57. package/Radio/styles/mixin.less +0 -0
  58. package/RadioGroup/styles/index.less +0 -0
  59. package/Rate/styles/index.less +0 -0
  60. package/Ripple/styles/index.less +0 -0
  61. package/Ripple/styles/mixins.less +0 -0
  62. package/Row/styles/index.less +0 -0
  63. package/SelectPicker/styles/index.less +0 -0
  64. package/Sidebar/styles/index.less +0 -0
  65. package/Sidenav/styles/mixin.less +0 -0
  66. package/Steps/styles/index.less +0 -0
  67. package/Table/styles/mixin.less +0 -0
  68. package/Tag/styles/index.less +0 -0
  69. package/TagInput/styles/index.less +0 -0
  70. package/TagPicker/styles/index.less +0 -0
  71. package/Timeline/styles/index.less +0 -0
  72. package/Timeline/styles/mixin.less +0 -0
  73. package/Tooltip/styles/mixins.less +0 -0
  74. package/TreePicker/styles/mixin.less +0 -0
  75. package/Uploader/styles/index.less +0 -15
  76. package/Uploader/styles/mixin.less +0 -0
  77. package/Windowing/package.json +7 -0
  78. package/cjs/@types/global.d.ts +0 -0
  79. package/cjs/Affix/index.js +0 -0
  80. package/cjs/Animation/Bounce.js +0 -0
  81. package/cjs/Animation/Fade.js +0 -0
  82. package/cjs/Animation/Slide.js +0 -0
  83. package/cjs/Animation/index.js +0 -0
  84. package/cjs/Animation/utils.js +0 -0
  85. package/cjs/AutoComplete/index.js +0 -0
  86. package/cjs/Avatar/index.js +0 -0
  87. package/cjs/Badge/index.js +0 -0
  88. package/cjs/Breadcrumb/index.js +0 -0
  89. package/cjs/Button/index.js +0 -0
  90. package/cjs/ButtonToolbar/ButtonToolbar.js +0 -0
  91. package/cjs/ButtonToolbar/index.js +0 -0
  92. package/cjs/Calendar/MonthDropdown.d.ts +1 -0
  93. package/cjs/Calendar/MonthDropdown.js +27 -40
  94. package/cjs/Calendar/index.js +0 -0
  95. package/cjs/Carousel/index.js +0 -0
  96. package/cjs/Cascader/Cascader.d.ts +2 -2
  97. package/cjs/Cascader/DropdownMenu.js +5 -2
  98. package/cjs/Cascader/index.js +0 -0
  99. package/cjs/CheckPicker/CheckPicker.d.ts +2 -2
  100. package/cjs/CheckPicker/CheckPicker.js +4 -1
  101. package/cjs/CheckPicker/index.js +0 -0
  102. package/cjs/CheckTreePicker/CheckTreePicker.js +31 -31
  103. package/cjs/CheckTreePicker/index.js +0 -0
  104. package/cjs/Checkbox/index.js +0 -0
  105. package/cjs/CloseButton/CloseButton.js +0 -0
  106. package/cjs/CloseButton/index.js +0 -0
  107. package/cjs/Col/index.js +0 -0
  108. package/cjs/Container/index.js +0 -0
  109. package/cjs/Content/Content.js +0 -0
  110. package/cjs/Content/index.js +0 -0
  111. package/cjs/CustomProvider/FormattedDate.js +0 -0
  112. package/cjs/CustomProvider/index.js +0 -0
  113. package/cjs/DatePicker/Toolbar.js +1 -0
  114. package/cjs/DatePicker/index.js +0 -0
  115. package/cjs/DateRangePicker/disabledDateUtils.js +0 -0
  116. package/cjs/Disclosure/Disclosure.d.ts +2 -2
  117. package/cjs/Disclosure/Disclosure.js +6 -6
  118. package/cjs/Disclosure/index.js +0 -0
  119. package/cjs/Divider/index.js +0 -0
  120. package/cjs/Drawer/index.js +0 -0
  121. package/cjs/Dropdown/DropdownMenu.js +4 -4
  122. package/cjs/Dropdown/DropdownState.js +0 -0
  123. package/cjs/Dropdown/index.js +0 -0
  124. package/cjs/FlexboxGrid/index.js +0 -0
  125. package/cjs/Footer/Footer.js +0 -0
  126. package/cjs/Footer/index.js +0 -0
  127. package/cjs/FormControl/index.js +0 -0
  128. package/cjs/FormControlLabel/FormControlLabel.js +0 -0
  129. package/cjs/FormControlLabel/index.js +0 -0
  130. package/cjs/FormErrorMessage/FormErrorMessage.js +0 -0
  131. package/cjs/FormErrorMessage/index.js +0 -0
  132. package/cjs/FormGroup/index.js +0 -0
  133. package/cjs/FormHelpText/index.js +0 -0
  134. package/cjs/Grid/Grid.js +0 -0
  135. package/cjs/Grid/index.js +0 -0
  136. package/cjs/Header/Header.js +0 -0
  137. package/cjs/Header/index.js +0 -0
  138. package/cjs/IconButton/index.js +0 -0
  139. package/cjs/Input/index.js +0 -0
  140. package/cjs/InputGroup/InputGroupButton.js +0 -0
  141. package/cjs/InputGroup/index.js +0 -0
  142. package/cjs/InputNumber/index.js +0 -0
  143. package/cjs/InputPicker/InputPicker.js +4 -1
  144. package/cjs/InputPicker/index.js +0 -0
  145. package/cjs/List/helper/useSortHelper.js +16 -11
  146. package/cjs/List/index.js +0 -0
  147. package/cjs/Loader/index.js +0 -0
  148. package/cjs/Menu/MenuContext.js +0 -0
  149. package/cjs/Menu/index.js +0 -0
  150. package/cjs/Message/index.js +0 -0
  151. package/cjs/Modal/ModalFooter.js +0 -0
  152. package/cjs/Modal/index.js +0 -0
  153. package/cjs/MultiCascader/DropdownMenu.js +5 -2
  154. package/cjs/MultiCascader/index.js +0 -0
  155. package/cjs/Nav/index.js +0 -0
  156. package/cjs/Navbar/NavbarBody.js +0 -0
  157. package/cjs/Navbar/NavbarBrand.js +0 -0
  158. package/cjs/Navbar/NavbarDropdownMenu.js +16 -10
  159. package/cjs/Navbar/NavbarHeader.js +0 -0
  160. package/cjs/Notification/index.js +0 -0
  161. package/cjs/Overlay/OverlayTrigger.d.ts +2 -2
  162. package/cjs/Overlay/index.js +0 -0
  163. package/cjs/Pagination/index.js +0 -0
  164. package/cjs/Panel/index.js +0 -0
  165. package/cjs/PanelGroup/index.js +0 -0
  166. package/cjs/Picker/DropdownMenu.d.ts +2 -1
  167. package/cjs/Picker/DropdownMenu.js +39 -33
  168. package/cjs/Picker/PickerOverlay.d.ts +2 -2
  169. package/cjs/Picker/PickerToggleTrigger.d.ts +2 -2
  170. package/cjs/Picker/index.d.ts +3 -3
  171. package/cjs/Picker/types.d.ts +7 -5
  172. package/cjs/Picker/utils.d.ts +11 -12
  173. package/cjs/Picker/utils.js +4 -0
  174. package/cjs/Placeholder/Placeholder.js +0 -0
  175. package/cjs/Placeholder/index.js +0 -0
  176. package/cjs/Plaintext/index.js +0 -0
  177. package/cjs/Popover/index.js +0 -0
  178. package/cjs/Progress/Progress.js +0 -0
  179. package/cjs/Progress/index.js +0 -0
  180. package/cjs/Radio/index.js +0 -0
  181. package/cjs/RadioGroup/index.js +0 -0
  182. package/cjs/RangeSlider/index.js +0 -0
  183. package/cjs/Rate/index.js +0 -0
  184. package/cjs/Ripple/index.js +0 -0
  185. package/cjs/Row/Row.js +0 -0
  186. package/cjs/Row/index.js +0 -0
  187. package/cjs/SafeAnchor/index.js +0 -0
  188. package/cjs/Schema/Schema.js +0 -0
  189. package/cjs/Schema/index.js +0 -0
  190. package/cjs/SelectPicker/SelectPicker.d.ts +4 -5
  191. package/cjs/SelectPicker/SelectPicker.js +4 -1
  192. package/cjs/Sidebar/index.js +0 -0
  193. package/cjs/Sidenav/SidenavBody.js +0 -0
  194. package/cjs/Sidenav/SidenavHeader.js +0 -0
  195. package/cjs/Sidenav/index.js +0 -0
  196. package/cjs/Slider/index.js +0 -0
  197. package/cjs/Steps/index.js +0 -0
  198. package/cjs/Table/index.js +0 -0
  199. package/cjs/Tag/Tag.js +0 -0
  200. package/cjs/Tag/index.js +0 -0
  201. package/cjs/TagGroup/TagGroup.js +0 -0
  202. package/cjs/TagGroup/index.js +0 -0
  203. package/cjs/Timeline/index.js +0 -0
  204. package/cjs/Toggle/index.js +0 -0
  205. package/cjs/Tooltip/index.js +0 -0
  206. package/cjs/Tree/Tree.d.ts +2 -5
  207. package/cjs/Tree/index.js +0 -0
  208. package/cjs/TreePicker/TreePicker.js +34 -34
  209. package/cjs/TreePicker/index.js +0 -0
  210. package/cjs/TreePicker/test/TreePicker.test.js +14 -0
  211. package/cjs/Uploader/UploadTrigger.d.ts +2 -1
  212. package/cjs/Uploader/UploadTrigger.js +5 -11
  213. package/cjs/Uploader/Uploader.d.ts +2 -1
  214. package/cjs/Uploader/test/Uploader.test.d.ts +1 -0
  215. package/cjs/Uploader/test/Uploader.test.js +26 -0
  216. package/cjs/Whisper/Whisper.d.ts +3 -3
  217. package/cjs/Whisper/index.js +0 -0
  218. package/cjs/Windowing/AutoSizer.d.ts +25 -0
  219. package/cjs/Windowing/AutoSizer.js +107 -0
  220. package/cjs/Windowing/List.d.ts +45 -0
  221. package/cjs/Windowing/List.js +72 -0
  222. package/cjs/Windowing/index.d.ts +5 -0
  223. package/cjs/Windowing/index.js +19 -0
  224. package/cjs/index.d.ts +1 -0
  225. package/cjs/locales/ar_EG.js +0 -0
  226. package/cjs/locales/da_DK.js +0 -0
  227. package/cjs/locales/de_DE.js +0 -0
  228. package/cjs/locales/default.js +0 -0
  229. package/cjs/locales/en_GB.js +0 -0
  230. package/cjs/locales/en_US.js +0 -0
  231. package/cjs/locales/es_AR.js +0 -0
  232. package/cjs/locales/es_ES.js +0 -0
  233. package/cjs/locales/fi_FI.js +0 -0
  234. package/cjs/locales/it_IT.js +0 -0
  235. package/cjs/locales/ko_KR.js +0 -0
  236. package/cjs/locales/pt_BR.js +0 -0
  237. package/cjs/locales/ru_RU.js +0 -0
  238. package/cjs/locales/sv_SE.js +0 -0
  239. package/cjs/locales/zh_CN.js +0 -0
  240. package/cjs/locales/zh_TW.js +0 -0
  241. package/cjs/toaster/ToastContainer.d.ts +2 -1
  242. package/cjs/toaster/ToastContainer.js +27 -26
  243. package/cjs/toaster/toaster.d.ts +1 -1
  244. package/cjs/toaster/toaster.js +43 -13
  245. package/cjs/toaster/useToaster.d.ts +1 -1
  246. package/cjs/utils/clone.js +0 -0
  247. package/cjs/utils/events.js +0 -0
  248. package/cjs/utils/getDOMNode.js +0 -0
  249. package/cjs/utils/getSafeRegExpString.js +0 -0
  250. package/cjs/utils/guid.js +0 -0
  251. package/cjs/utils/htmlPropsUtils.js +0 -0
  252. package/cjs/utils/index.d.ts +1 -0
  253. package/cjs/utils/index.js +6 -1
  254. package/cjs/utils/isOneOf.js +0 -0
  255. package/cjs/utils/prefix.js +0 -0
  256. package/cjs/utils/render.d.ts +3 -0
  257. package/cjs/utils/render.js +49 -0
  258. package/cjs/utils/shallowEqual.js +0 -0
  259. package/cjs/utils/shallowEqualArray.js +0 -0
  260. package/cjs/utils/statusIcons.js +0 -0
  261. package/cjs/utils/stringToObject.js +0 -0
  262. package/cjs/utils/tplTransform.js +0 -0
  263. package/cjs/utils/treeUtils.d.ts +2 -2
  264. package/cjs/utils/useClassNames.js +0 -0
  265. package/cjs/utils/useEnsuredRef.js +0 -0
  266. package/cjs/utils/useEventCallback.js +0 -0
  267. package/cjs/utils/useToggleCaret.js +0 -0
  268. package/cjs/utils/useUniqueId.js +10 -2
  269. package/cjs/utils/useUpdateEffect.js +0 -0
  270. package/cjs/utils/useUpdatedRef.js +0 -0
  271. package/cjs/utils/useWillUnmount.js +0 -0
  272. package/dist/rsuite-rtl.css +8 -202
  273. package/dist/rsuite-rtl.min.css +1 -1
  274. package/dist/rsuite-rtl.min.css.map +1 -1
  275. package/dist/rsuite.css +8 -202
  276. package/dist/rsuite.js +278 -527
  277. package/dist/rsuite.js.map +1 -1
  278. package/dist/rsuite.min.css +1 -1
  279. package/dist/rsuite.min.css.map +1 -1
  280. package/dist/rsuite.min.js +1 -1
  281. package/dist/rsuite.min.js.LICENSE.txt +2 -0
  282. package/dist/rsuite.min.js.map +1 -1
  283. package/esm/@types/global.d.ts +0 -0
  284. package/esm/Affix/index.js +0 -0
  285. package/esm/Animation/Bounce.js +0 -0
  286. package/esm/Animation/Fade.js +0 -0
  287. package/esm/Animation/Slide.js +0 -0
  288. package/esm/Animation/index.js +0 -0
  289. package/esm/Animation/utils.js +0 -0
  290. package/esm/AutoComplete/index.js +0 -0
  291. package/esm/Avatar/index.js +0 -0
  292. package/esm/Badge/index.js +0 -0
  293. package/esm/Breadcrumb/index.js +0 -0
  294. package/esm/Button/index.js +0 -0
  295. package/esm/ButtonToolbar/ButtonToolbar.js +0 -0
  296. package/esm/ButtonToolbar/index.js +0 -0
  297. package/esm/Calendar/MonthDropdown.d.ts +1 -0
  298. package/esm/Calendar/MonthDropdown.js +26 -41
  299. package/esm/Calendar/index.js +0 -0
  300. package/esm/Carousel/index.js +0 -0
  301. package/esm/Cascader/Cascader.d.ts +2 -2
  302. package/esm/Cascader/DropdownMenu.js +5 -2
  303. package/esm/Cascader/index.js +0 -0
  304. package/esm/CheckPicker/CheckPicker.d.ts +2 -2
  305. package/esm/CheckPicker/CheckPicker.js +4 -1
  306. package/esm/CheckPicker/index.js +0 -0
  307. package/esm/CheckTreePicker/CheckTreePicker.js +31 -30
  308. package/esm/CheckTreePicker/index.js +0 -0
  309. package/esm/Checkbox/index.js +0 -0
  310. package/esm/CloseButton/CloseButton.js +0 -0
  311. package/esm/CloseButton/index.js +0 -0
  312. package/esm/Col/index.js +0 -0
  313. package/esm/Container/index.js +0 -0
  314. package/esm/Content/Content.js +0 -0
  315. package/esm/Content/index.js +0 -0
  316. package/esm/CustomProvider/FormattedDate.js +0 -0
  317. package/esm/CustomProvider/index.js +0 -0
  318. package/esm/DatePicker/Toolbar.js +1 -0
  319. package/esm/DatePicker/index.js +0 -0
  320. package/esm/DateRangePicker/disabledDateUtils.js +0 -0
  321. package/esm/Disclosure/Disclosure.d.ts +2 -2
  322. package/esm/Disclosure/Disclosure.js +6 -6
  323. package/esm/Disclosure/index.js +0 -0
  324. package/esm/Divider/index.js +0 -0
  325. package/esm/Drawer/index.js +0 -0
  326. package/esm/Dropdown/DropdownMenu.js +4 -4
  327. package/esm/Dropdown/DropdownState.js +0 -0
  328. package/esm/Dropdown/index.js +0 -0
  329. package/esm/FlexboxGrid/index.js +0 -0
  330. package/esm/Footer/Footer.js +0 -0
  331. package/esm/Footer/index.js +0 -0
  332. package/esm/FormControl/index.js +0 -0
  333. package/esm/FormControlLabel/FormControlLabel.js +0 -0
  334. package/esm/FormControlLabel/index.js +0 -0
  335. package/esm/FormErrorMessage/FormErrorMessage.js +0 -0
  336. package/esm/FormErrorMessage/index.js +0 -0
  337. package/esm/FormGroup/index.js +0 -0
  338. package/esm/FormHelpText/index.js +0 -0
  339. package/esm/Grid/Grid.js +0 -0
  340. package/esm/Grid/index.js +0 -0
  341. package/esm/Header/Header.js +0 -0
  342. package/esm/Header/index.js +0 -0
  343. package/esm/IconButton/index.js +0 -0
  344. package/esm/Input/index.js +0 -0
  345. package/esm/InputGroup/InputGroupButton.js +0 -0
  346. package/esm/InputGroup/index.js +0 -0
  347. package/esm/InputNumber/index.js +0 -0
  348. package/esm/InputPicker/InputPicker.js +4 -1
  349. package/esm/InputPicker/index.js +0 -0
  350. package/esm/List/helper/useSortHelper.js +15 -11
  351. package/esm/List/index.js +0 -0
  352. package/esm/Loader/index.js +0 -0
  353. package/esm/Menu/MenuContext.js +0 -0
  354. package/esm/Menu/index.js +0 -0
  355. package/esm/Message/index.js +0 -0
  356. package/esm/Modal/ModalFooter.js +0 -0
  357. package/esm/Modal/index.js +0 -0
  358. package/esm/MultiCascader/DropdownMenu.js +5 -2
  359. package/esm/MultiCascader/index.js +0 -0
  360. package/esm/Nav/index.js +0 -0
  361. package/esm/Navbar/NavbarBody.js +0 -0
  362. package/esm/Navbar/NavbarBrand.js +0 -0
  363. package/esm/Navbar/NavbarDropdownMenu.js +14 -8
  364. package/esm/Navbar/NavbarHeader.js +0 -0
  365. package/esm/Notification/index.js +0 -0
  366. package/esm/Overlay/OverlayTrigger.d.ts +2 -2
  367. package/esm/Overlay/index.js +0 -0
  368. package/esm/Pagination/index.js +0 -0
  369. package/esm/Panel/index.js +0 -0
  370. package/esm/PanelGroup/index.js +0 -0
  371. package/esm/Picker/DropdownMenu.d.ts +2 -1
  372. package/esm/Picker/DropdownMenu.js +39 -35
  373. package/esm/Picker/PickerOverlay.d.ts +2 -2
  374. package/esm/Picker/PickerToggleTrigger.d.ts +2 -2
  375. package/esm/Picker/index.d.ts +3 -3
  376. package/esm/Picker/types.d.ts +7 -5
  377. package/esm/Picker/utils.d.ts +11 -12
  378. package/esm/Picker/utils.js +4 -0
  379. package/esm/Placeholder/Placeholder.js +0 -0
  380. package/esm/Placeholder/index.js +0 -0
  381. package/esm/Plaintext/index.js +0 -0
  382. package/esm/Popover/index.js +0 -0
  383. package/esm/Progress/Progress.js +0 -0
  384. package/esm/Progress/index.js +0 -0
  385. package/esm/Radio/index.js +0 -0
  386. package/esm/RadioGroup/index.js +0 -0
  387. package/esm/RangeSlider/index.js +0 -0
  388. package/esm/Rate/index.js +0 -0
  389. package/esm/Ripple/index.js +0 -0
  390. package/esm/Row/Row.js +0 -0
  391. package/esm/Row/index.js +0 -0
  392. package/esm/SafeAnchor/index.js +0 -0
  393. package/esm/Schema/Schema.js +0 -0
  394. package/esm/Schema/index.js +0 -0
  395. package/esm/SelectPicker/SelectPicker.d.ts +4 -5
  396. package/esm/SelectPicker/SelectPicker.js +4 -1
  397. package/esm/Sidebar/index.js +0 -0
  398. package/esm/Sidenav/SidenavBody.js +0 -0
  399. package/esm/Sidenav/SidenavHeader.js +0 -0
  400. package/esm/Sidenav/index.js +0 -0
  401. package/esm/Slider/index.js +0 -0
  402. package/esm/Steps/index.js +0 -0
  403. package/esm/Table/index.js +0 -0
  404. package/esm/Tag/Tag.js +0 -0
  405. package/esm/Tag/index.js +0 -0
  406. package/esm/TagGroup/TagGroup.js +0 -0
  407. package/esm/TagGroup/index.js +0 -0
  408. package/esm/Timeline/index.js +0 -0
  409. package/esm/Toggle/index.js +0 -0
  410. package/esm/Tooltip/index.js +0 -0
  411. package/esm/Tree/Tree.d.ts +2 -5
  412. package/esm/Tree/index.js +0 -0
  413. package/esm/TreePicker/TreePicker.js +33 -32
  414. package/esm/TreePicker/index.js +0 -0
  415. package/esm/TreePicker/test/TreePicker.test.js +14 -0
  416. package/esm/Uploader/UploadTrigger.d.ts +2 -1
  417. package/esm/Uploader/UploadTrigger.js +3 -10
  418. package/esm/Uploader/Uploader.d.ts +2 -1
  419. package/esm/Uploader/test/Uploader.test.d.ts +1 -0
  420. package/esm/Uploader/test/Uploader.test.js +21 -0
  421. package/esm/Whisper/Whisper.d.ts +3 -3
  422. package/esm/Whisper/index.js +0 -0
  423. package/esm/Windowing/AutoSizer.d.ts +25 -0
  424. package/esm/Windowing/AutoSizer.js +92 -0
  425. package/esm/Windowing/List.d.ts +45 -0
  426. package/esm/Windowing/List.js +58 -0
  427. package/esm/Windowing/index.d.ts +5 -0
  428. package/esm/Windowing/index.js +3 -0
  429. package/esm/index.d.ts +1 -0
  430. package/esm/locales/ar_EG.js +0 -0
  431. package/esm/locales/da_DK.js +0 -0
  432. package/esm/locales/de_DE.js +0 -0
  433. package/esm/locales/default.js +0 -0
  434. package/esm/locales/en_GB.js +0 -0
  435. package/esm/locales/en_US.js +0 -0
  436. package/esm/locales/es_AR.js +0 -0
  437. package/esm/locales/es_ES.js +0 -0
  438. package/esm/locales/fi_FI.js +0 -0
  439. package/esm/locales/it_IT.js +0 -0
  440. package/esm/locales/ko_KR.js +0 -0
  441. package/esm/locales/pt_BR.js +0 -0
  442. package/esm/locales/ru_RU.js +0 -0
  443. package/esm/locales/sv_SE.js +0 -0
  444. package/esm/locales/zh_CN.js +0 -0
  445. package/esm/locales/zh_TW.js +0 -0
  446. package/esm/toaster/ToastContainer.d.ts +2 -1
  447. package/esm/toaster/ToastContainer.js +28 -26
  448. package/esm/toaster/toaster.d.ts +1 -1
  449. package/esm/toaster/toaster.js +41 -13
  450. package/esm/toaster/useToaster.d.ts +1 -1
  451. package/esm/utils/clone.js +0 -0
  452. package/esm/utils/events.js +0 -0
  453. package/esm/utils/getDOMNode.js +0 -0
  454. package/esm/utils/getSafeRegExpString.js +0 -0
  455. package/esm/utils/guid.js +0 -0
  456. package/esm/utils/htmlPropsUtils.js +0 -0
  457. package/esm/utils/index.d.ts +1 -0
  458. package/esm/utils/index.js +1 -0
  459. package/esm/utils/isOneOf.js +0 -0
  460. package/esm/utils/prefix.js +0 -0
  461. package/esm/utils/render.d.ts +3 -0
  462. package/esm/utils/render.js +37 -0
  463. package/esm/utils/shallowEqual.js +0 -0
  464. package/esm/utils/shallowEqualArray.js +0 -0
  465. package/esm/utils/statusIcons.js +0 -0
  466. package/esm/utils/stringToObject.js +0 -0
  467. package/esm/utils/tplTransform.js +0 -0
  468. package/esm/utils/treeUtils.d.ts +2 -2
  469. package/esm/utils/useClassNames.js +0 -0
  470. package/esm/utils/useEnsuredRef.js +0 -0
  471. package/esm/utils/useEventCallback.js +0 -0
  472. package/esm/utils/useToggleCaret.js +0 -0
  473. package/esm/utils/useUniqueId.js +7 -2
  474. package/esm/utils/useUpdateEffect.js +0 -0
  475. package/esm/utils/useUpdatedRef.js +0 -0
  476. package/esm/utils/useWillUnmount.js +0 -0
  477. package/package.json +5 -5
  478. package/styles/color-modes.less +0 -0
  479. package/styles/colors/light.less +0 -0
  480. package/styles/common.less +0 -0
  481. package/styles/mixins/color-modes.less +0 -0
  482. package/styles/mixins/hacks.less +0 -0
  483. package/styles/mixins/listbox.less +0 -0
  484. package/styles/mixins/menu.less +0 -0
  485. package/styles/normalize.less +0 -0
  486. package/styles/scaffolding.less +0 -0
  487. package/styles/typography.less +0 -0
  488. package/toaster/styles/animation.less +0 -0
  489. package/toaster/styles/index.less +0 -0
  490. package/cjs/Picker/VirtualizedList.d.ts +0 -37
  491. package/cjs/Picker/VirtualizedList.js +0 -15
  492. package/esm/Picker/VirtualizedList.d.ts +0 -37
  493. package/esm/Picker/VirtualizedList.js +0 -4
@@ -7,7 +7,7 @@ import _omit from "lodash/omit";
7
7
  import _pick from "lodash/pick";
8
8
  import React, { useState, useRef, useEffect, useCallback, useContext } from 'react';
9
9
  import PropTypes from 'prop-types';
10
- import { List, AutoSizer } from '../Picker/VirtualizedList';
10
+ import { List, AutoSizer } from '../Windowing';
11
11
  import TreeNode from './TreeNode';
12
12
  import { getTreeNodeIndent } from '../utils/treeUtils';
13
13
  import { createChainedFunction, useClassNames, useCustom, useControlled, TREE_NODE_DROP_POSITION, KEY_VALUES, mergeRefs, shallowEqual } from '../utils';
@@ -17,6 +17,11 @@ import TreeContext from '../Tree/TreeContext'; // default value for virtualized
17
17
 
18
18
  export var maxTreeHeight = 320;
19
19
  var emptyArray = [];
20
+
21
+ var itemSize = function itemSize() {
22
+ return 36;
23
+ };
24
+
20
25
  var TreePicker = /*#__PURE__*/React.forwardRef(function (props, ref) {
21
26
  var _props$as = props.as,
22
27
  Component = _props$as === void 0 ? 'div' : _props$as,
@@ -574,34 +579,31 @@ var TreePicker = /*#__PURE__*/React.forwardRef(function (props, ref) {
574
579
  }, nodeProps));
575
580
  };
576
581
 
577
- var renderVirtualListNode = function renderVirtualListNode(nodes) {
578
- return function (_ref3) {
579
- var key = _ref3.key,
580
- index = _ref3.index,
581
- style = _ref3.style;
582
- var node = nodes[index];
583
- var layer = node.layer,
584
- visible = node.visible;
585
- var expand = getExpandWhenSearching(searchKeywordState, expandItemValues.includes(node[valueKey]));
586
-
587
- if (!node.visible) {
588
- return null;
589
- }
582
+ var renderVirtualListNode = function renderVirtualListNode(_ref3) {
583
+ var index = _ref3.index,
584
+ style = _ref3.style,
585
+ data = _ref3.data;
586
+ var node = data[index];
587
+ var layer = node.layer,
588
+ visible = node.visible;
589
+ var expand = getExpandWhenSearching(searchKeywordState, expandItemValues.includes(node[valueKey]));
590
590
 
591
- var nodeProps = _extends({}, getTreeNodeProps(_extends({}, node, {
592
- expand: expand
593
- }), layer), {
594
- style: style,
595
- hasChildren: node.hasChildren
596
- });
591
+ if (!node.visible) {
592
+ return null;
593
+ }
597
594
 
598
- return visible && /*#__PURE__*/React.createElement(TreeNode, _extends({
599
- ref: function ref(_ref4) {
600
- return saveTreeNodeRef(_ref4, node.refKey);
601
- },
602
- key: key
603
- }, nodeProps));
604
- };
595
+ var nodeProps = _extends({}, getTreeNodeProps(_extends({}, node, {
596
+ expand: expand
597
+ }), layer), {
598
+ style: style,
599
+ hasChildren: node.hasChildren
600
+ });
601
+
602
+ return visible && /*#__PURE__*/React.createElement(TreeNode, _extends({
603
+ ref: function ref(_ref4) {
604
+ return saveTreeNodeRef(_ref4, node.refKey);
605
+ }
606
+ }, nodeProps));
605
607
  };
606
608
 
607
609
  var renderTree = function renderTree() {
@@ -634,11 +636,10 @@ var TreePicker = /*#__PURE__*/React.forwardRef(function (props, ref) {
634
636
  ref: listRef,
635
637
  width: width,
636
638
  height: height,
637
- rowHeight: 36,
638
- rowCount: formattedNodes.length,
639
- rowRenderer: renderVirtualListNode(formattedNodes),
640
- scrollToAlignment: "center"
641
- }, listProps));
639
+ itemSize: itemSize,
640
+ itemCount: formattedNodes.length,
641
+ itemData: formattedNodes
642
+ }, listProps), renderVirtualListNode);
642
643
  }) : formattedNodes));
643
644
  };
644
645
 
File without changes
@@ -7,4 +7,18 @@ React.createElement(TreePicker, {
7
7
  return /*#__PURE__*/React.createElement("div", null);
8
8
  },
9
9
  data: []
10
+ });
11
+
12
+ /*#__PURE__*/
13
+ React.createElement(TreePicker, {
14
+ data: [],
15
+ listProps: {
16
+ itemSize: 30,
17
+ onItemsRendered: function onItemsRendered() {
18
+ console.log('onItemsRendered');
19
+ },
20
+ onScroll: function onScroll() {
21
+ console.log('onScroll');
22
+ }
23
+ }
10
24
  });
@@ -1,6 +1,7 @@
1
1
  import React from 'react';
2
2
  import { UploaderLocale } from '../locales';
3
- export interface UploadTriggerProps {
3
+ import { ButtonProps } from '../Button';
4
+ export interface UploadTriggerProps extends ButtonProps {
4
5
  as?: React.ElementType;
5
6
  name?: string;
6
7
  multiple?: boolean;
@@ -1,16 +1,9 @@
1
- import _objectWithoutPropertiesLoose from "@babel/runtime/helpers/esm/objectWithoutPropertiesLoose";
2
1
  import _extends from "@babel/runtime/helpers/esm/extends";
2
+ import _objectWithoutPropertiesLoose from "@babel/runtime/helpers/esm/objectWithoutPropertiesLoose";
3
3
  import React, { useCallback, useRef, useState, useImperativeHandle } from 'react';
4
4
  import PropTypes from 'prop-types';
5
- import Ripple from '../Ripple';
6
5
  import { isIE11, useClassNames } from '../utils';
7
-
8
- var Button = function Button(props) {
9
- return /*#__PURE__*/React.createElement("button", _extends({}, props, {
10
- type: "button"
11
- }));
12
- };
13
-
6
+ import Button from '../Button';
14
7
  var UploadTrigger = /*#__PURE__*/React.forwardRef(function (props, ref) {
15
8
  var _props$as = props.as,
16
9
  Component = _props$as === void 0 ? Button : _props$as,
@@ -126,7 +119,7 @@ var UploadTrigger = /*#__PURE__*/React.forwardRef(function (props, ref) {
126
119
  buttonProps.onDrop = handleDrop;
127
120
  }
128
121
 
129
- var trigger = children ? /*#__PURE__*/React.cloneElement(React.Children.only(children), buttonProps) : /*#__PURE__*/React.createElement(Component, buttonProps, locale === null || locale === void 0 ? void 0 : locale.upload, /*#__PURE__*/React.createElement(Ripple, null));
122
+ var trigger = children ? /*#__PURE__*/React.cloneElement(React.Children.only(children), buttonProps) : /*#__PURE__*/React.createElement(Component, buttonProps, locale === null || locale === void 0 ? void 0 : locale.upload);
130
123
  return /*#__PURE__*/React.createElement("div", {
131
124
  ref: rootRef,
132
125
  className: classes
@@ -1,4 +1,5 @@
1
1
  import React from 'react';
2
+ import { UploadTriggerProps } from './UploadTrigger';
2
3
  import { WithAsProps } from '../@types/common';
3
4
  import { UploaderLocale } from '../locales';
4
5
  export interface FileType {
@@ -19,7 +20,7 @@ export interface UploaderInstance {
19
20
  root: HTMLElement;
20
21
  start: (file?: FileType) => void;
21
22
  }
22
- export interface UploaderProps extends WithAsProps {
23
+ export interface UploaderProps extends WithAsProps, Omit<UploadTriggerProps, 'onChange' | 'onError' | 'onProgress'> {
23
24
  /** Uploading URL */
24
25
  action: string;
25
26
  /** File types that can be accepted. See input accept Attribute */
@@ -0,0 +1 @@
1
+ export {};
@@ -0,0 +1,21 @@
1
+ import React from 'react';
2
+ import Uploader from '../Uploader';
3
+
4
+ /*#__PURE__*/
5
+ React.createElement(Uploader, {
6
+ appearance: "primary",
7
+ action: "#"
8
+ });
9
+
10
+ /*#__PURE__*/
11
+ React.createElement(Uploader, {
12
+ appearance: "primary",
13
+ color: "orange",
14
+ action: "#"
15
+ });
16
+
17
+ /*#__PURE__*/
18
+ React.createElement(Uploader, {
19
+ size: "lg",
20
+ action: "#"
21
+ });
@@ -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,92 @@
1
+ import _extends from "@babel/runtime/helpers/esm/extends";
2
+ import _objectWithoutPropertiesLoose from "@babel/runtime/helpers/esm/objectWithoutPropertiesLoose";
3
+ import React, { useState, useRef } from 'react';
4
+ import { useCallback } from 'react';
5
+ import getStyle from 'dom-lib/getStyle';
6
+ import { mergeRefs, useElementResize, useMount } from '../utils';
7
+ var AutoSizer = /*#__PURE__*/React.forwardRef(function (props, ref) {
8
+ var children = props.children,
9
+ className = props.className,
10
+ disableHeight = props.disableHeight,
11
+ disableWidth = props.disableWidth,
12
+ defaultHeight = props.defaultHeight,
13
+ defaultWidth = props.defaultWidth,
14
+ style = props.style,
15
+ onResize = props.onResize,
16
+ rest = _objectWithoutPropertiesLoose(props, ["children", "className", "disableHeight", "disableWidth", "defaultHeight", "defaultWidth", "style", "onResize"]);
17
+
18
+ var _useState = useState(defaultHeight || 0),
19
+ height = _useState[0],
20
+ setHeight = _useState[1];
21
+
22
+ var _useState2 = useState(defaultWidth || 0),
23
+ width = _useState2[0],
24
+ setWidth = _useState2[1];
25
+
26
+ var rootRef = useRef(null);
27
+ var getParentNode = useCallback(function () {
28
+ var _rootRef$current;
29
+
30
+ 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) {
31
+ return rootRef.current.parentNode;
32
+ }
33
+
34
+ return null;
35
+ }, []);
36
+ var handleResize = useCallback(function () {
37
+ var parentNode = getParentNode();
38
+
39
+ if (parentNode) {
40
+ var offsetHeight = parentNode.offsetHeight || 0;
41
+ var offsetWidth = parentNode.offsetWidth || 0;
42
+
43
+ var _style = getStyle(parentNode);
44
+
45
+ var paddingLeft = parseInt(_style.paddingLeft, 10) || 0;
46
+ var paddingRight = parseInt(_style.paddingRight, 10) || 0;
47
+ var paddingTop = parseInt(_style.paddingTop, 10) || 0;
48
+ var paddingBottom = parseInt(_style.paddingBottom, 10) || 0;
49
+ var newHeight = offsetHeight - paddingTop - paddingBottom;
50
+ var newWidth = offsetWidth - paddingLeft - paddingRight;
51
+
52
+ if (!disableHeight && height !== newHeight || !disableWidth && width !== newWidth) {
53
+ setHeight(offsetHeight - paddingTop - paddingBottom);
54
+ setWidth(offsetWidth - paddingLeft - paddingRight);
55
+ onResize === null || onResize === void 0 ? void 0 : onResize({
56
+ height: offsetHeight,
57
+ width: offsetWidth
58
+ });
59
+ }
60
+ }
61
+ }, [disableHeight, disableWidth, getParentNode, height, onResize, width]);
62
+ useMount(function () {
63
+ if (getParentNode()) {
64
+ handleResize();
65
+ }
66
+ });
67
+ useElementResize(getParentNode, handleResize);
68
+ var outerStyle = {
69
+ overflow: 'visible'
70
+ };
71
+ var childParams = {
72
+ width: 0,
73
+ height: 0
74
+ };
75
+
76
+ if (!disableHeight) {
77
+ outerStyle.height = 0;
78
+ childParams.height = height;
79
+ }
80
+
81
+ if (!disableWidth) {
82
+ outerStyle.width = 0;
83
+ childParams.width = width;
84
+ }
85
+
86
+ return /*#__PURE__*/React.createElement("div", _extends({
87
+ className: className,
88
+ ref: mergeRefs(rootRef, ref),
89
+ style: _extends({}, outerStyle, style)
90
+ }, rest), children(childParams));
91
+ });
92
+ export default AutoSizer;
@@ -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;
@@ -0,0 +1,58 @@
1
+ import _extends from "@babel/runtime/helpers/esm/extends";
2
+ import _objectWithoutPropertiesLoose from "@babel/runtime/helpers/esm/objectWithoutPropertiesLoose";
3
+ import React, { useRef, useImperativeHandle, useCallback } from 'react';
4
+ import { VariableSizeList } from 'react-window';
5
+ import { useCustom } from '../utils';
6
+ var List = /*#__PURE__*/React.forwardRef(function (props, ref) {
7
+ var rowHeight = props.rowHeight,
8
+ _props$as = props.as,
9
+ Component = _props$as === void 0 ? VariableSizeList : _props$as,
10
+ rest = _objectWithoutPropertiesLoose(props, ["rowHeight", "as"]);
11
+
12
+ var listRef = useRef(null);
13
+
14
+ var _useCustom = useCustom(),
15
+ rtl = _useCustom.rtl;
16
+
17
+ useImperativeHandle(ref, function () {
18
+ return {
19
+ resetAfterIndex: function resetAfterIndex(index, shouldForceUpdate) {
20
+ var _listRef$current, _listRef$current$rese;
21
+
22
+ (_listRef$current = listRef.current) === null || _listRef$current === void 0 ? void 0 : (_listRef$current$rese = _listRef$current.resetAfterIndex) === null || _listRef$current$rese === void 0 ? void 0 : _listRef$current$rese.call(_listRef$current, index, shouldForceUpdate);
23
+ },
24
+ scrollTo: function scrollTo(scrollOffset) {
25
+ var _listRef$current2, _listRef$current2$scr;
26
+
27
+ (_listRef$current2 = listRef.current) === null || _listRef$current2 === void 0 ? void 0 : (_listRef$current2$scr = _listRef$current2.scrollTo) === null || _listRef$current2$scr === void 0 ? void 0 : _listRef$current2$scr.call(_listRef$current2, scrollOffset);
28
+ },
29
+ scrollToItem: function scrollToItem(index, align) {
30
+ var _listRef$current3, _listRef$current3$scr;
31
+
32
+ (_listRef$current3 = listRef.current) === null || _listRef$current3 === void 0 ? void 0 : (_listRef$current3$scr = _listRef$current3.scrollToItem) === null || _listRef$current3$scr === void 0 ? void 0 : _listRef$current3$scr.call(_listRef$current3, index, align);
33
+ },
34
+ scrollToRow: function scrollToRow(index) {
35
+ var _listRef$current4, _listRef$current4$scr;
36
+
37
+ (_listRef$current4 = listRef.current) === null || _listRef$current4 === void 0 ? void 0 : (_listRef$current4$scr = _listRef$current4.scrollToItem) === null || _listRef$current4$scr === void 0 ? void 0 : _listRef$current4$scr.call(_listRef$current4, index);
38
+ }
39
+ };
40
+ });
41
+ var setRowHeight = useCallback(function (index) {
42
+ return typeof rowHeight === 'function' ? rowHeight({
43
+ index: index
44
+ }) : rowHeight || 0;
45
+ }, [rowHeight]);
46
+
47
+ var compatibleProps = _extends({}, rest);
48
+
49
+ if (rowHeight) {
50
+ compatibleProps.itemSize = Component === VariableSizeList ? setRowHeight : rowHeight;
51
+ }
52
+
53
+ return /*#__PURE__*/React.createElement(Component, _extends({
54
+ ref: listRef,
55
+ direction: rtl ? 'rtl' : 'ltr'
56
+ }, compatibleProps));
57
+ });
58
+ export default List;
@@ -0,0 +1,5 @@
1
+ export { default as AutoSizer } from './AutoSizer';
2
+ export { default as List } from './List';
3
+ export { FixedSizeList, VariableSizeList } from 'react-window';
4
+ export type { ListChildComponentProps } from 'react-window';
5
+ export type { ListProps, ListHandle } from './List';
@@ -0,0 +1,3 @@
1
+ export { default as AutoSizer } from './AutoSizer';
2
+ export { default as List } from './List';
3
+ export { FixedSizeList, VariableSizeList } from 'react-window';
package/esm/index.d.ts CHANGED
@@ -155,3 +155,4 @@ export type { AffixProps } from './Affix';
155
155
  export { default as CustomProvider } from './CustomProvider';
156
156
  export type { CustomProviderProps } from './CustomProvider';
157
157
  export type { Locale, CalendarLocale, PlaintextLocale, PaginationLocale, TableLocale, DatePickerLocale, DateRangePickerLocale, PickerLocale, InputPickerLocale, UploaderLocale, BreadcrumbLocale, ToggleLocale } from './locales';
158
+ export type { PickerHandle } from './Picker';
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
@@ -7,6 +7,7 @@ export interface ToastContainerProps extends WithAsProps {
7
7
  placement?: PlacementType;
8
8
  /** Set the message to appear in the specified container */
9
9
  container?: HTMLElement | (() => HTMLElement);
10
+ callback?: (ref: React.RefObject<ToastContainerInstance>) => void;
10
11
  }
11
12
  export interface ToastContainerInstance {
12
13
  root: HTMLElement;
@@ -19,7 +20,7 @@ export interface NodeProps extends WithAsProps {
19
20
  onClose?: (event?: React.MouseEvent<HTMLDivElement>) => void;
20
21
  }
21
22
  interface ToastContainerComponent extends RsRefForwardingComponent<'div', ToastContainerProps> {
22
- getInstance: (props: ToastContainerProps) => [React.RefObject<ToastContainerInstance>, () => void];
23
+ getInstance: (props: ToastContainerProps) => Promise<[React.RefObject<ToastContainerInstance>, () => void]>;
23
24
  }
24
25
  declare const ToastContainer: ToastContainerComponent;
25
26
  export default ToastContainer;
@@ -1,11 +1,10 @@
1
1
  import _objectWithoutPropertiesLoose from "@babel/runtime/helpers/esm/objectWithoutPropertiesLoose";
2
2
  import _extends from "@babel/runtime/helpers/esm/extends";
3
3
  import React, { useState, useImperativeHandle, useRef, useCallback } from 'react';
4
- import { render, unmountComponentAtNode } from 'react-dom';
5
4
  import PropTypes from 'prop-types';
6
5
  import kebabCase from 'lodash/kebabCase';
7
6
  import Transition from '../Animation/Transition';
8
- import { useClassNames, guid, createChainedFunction } from '../utils';
7
+ import { useClassNames, guid, createChainedFunction, render } from '../utils';
9
8
  export var toastPlacements = ['topCenter', 'bottomCenter', 'topStart', 'topEnd', 'bottomStart', 'bottomEnd'];
10
9
 
11
10
  var useMessages = function useMessages() {
@@ -22,13 +21,15 @@ var useMessages = function useMessages() {
22
21
  }, [messages]);
23
22
  var push = useCallback(function (message) {
24
23
  var key = guid();
25
- setMessages([].concat(messages, [{
26
- key: key,
27
- visible: true,
28
- node: message
29
- }]));
24
+ setMessages(function (prevMessages) {
25
+ return [].concat(prevMessages, [{
26
+ key: key,
27
+ visible: true,
28
+ node: message
29
+ }]);
30
+ });
30
31
  return key;
31
- }, [messages]);
32
+ }, []);
32
33
  var clear = useCallback(function () {
33
34
  // Set all existing messages to be invisible.
34
35
  setMessages(messages.map(function (msg) {
@@ -76,7 +77,8 @@ var ToastContainer = /*#__PURE__*/React.forwardRef(function (props, ref) {
76
77
  classPrefix = _props$classPrefix === void 0 ? 'toast-container' : _props$classPrefix,
77
78
  _props$placement = props.placement,
78
79
  placement = _props$placement === void 0 ? 'topCenter' : _props$placement,
79
- rest = _objectWithoutPropertiesLoose(props, ["as", "className", "classPrefix", "placement"]);
80
+ callback = props.callback,
81
+ rest = _objectWithoutPropertiesLoose(props, ["as", "className", "classPrefix", "placement", "callback"]);
80
82
 
81
83
  var _useClassNames = useClassNames(classPrefix),
82
84
  withClassPrefix = _useClassNames.withClassPrefix,
@@ -125,7 +127,10 @@ var ToastContainer = /*#__PURE__*/React.forwardRef(function (props, ref) {
125
127
  });
126
128
  });
127
129
  return /*#__PURE__*/React.createElement(Component, _extends({}, rest, {
128
- ref: rootRef,
130
+ ref: function ref(selfRef) {
131
+ rootRef.current = selfRef;
132
+ callback === null || callback === void 0 ? void 0 : callback(selfRef);
133
+ },
129
134
  className: classes
130
135
  }), elements);
131
136
  });
@@ -135,22 +140,18 @@ ToastContainer.getInstance = function (props) {
135
140
  rest = _objectWithoutPropertiesLoose(props, ["container"]);
136
141
 
137
142
  var containerRef = /*#__PURE__*/React.createRef();
138
- var mountElement = document.createElement('div');
139
- var containerElement = typeof container === 'function' ? container() : container; // Parent is document.body or the existing dom element
140
-
141
- var parentElement = containerElement || document.body; // Add the detached element to the parent
142
-
143
- parentElement.appendChild(mountElement);
144
-
145
- function destroy() {
146
- unmountComponentAtNode(mountElement);
147
- parentElement.removeChild(mountElement);
148
- }
143
+ var containerElement = (typeof container === 'function' ? container() : container) || document.body;
144
+ return new Promise(function (resolve) {
145
+ var renderCallback = function renderCallback() {
146
+ resolve([containerRef, unmount]);
147
+ };
149
148
 
150
- render( /*#__PURE__*/React.createElement(ToastContainer, _extends({}, rest, {
151
- ref: containerRef
152
- })), mountElement);
153
- return [containerRef, destroy];
149
+ var _render = render( /*#__PURE__*/React.createElement(ToastContainer, _extends({}, rest, {
150
+ ref: containerRef,
151
+ callback: renderCallback
152
+ })), containerElement),
153
+ unmount = _render.unmount;
154
+ });
154
155
  };
155
156
 
156
157
  ToastContainer.displayName = 'ToastContainer';
@@ -158,6 +159,7 @@ ToastContainer.propTypes = {
158
159
  className: PropTypes.string,
159
160
  classPrefix: PropTypes.string,
160
161
  placement: PropTypes.elementType,
161
- container: PropTypes.oneOfType([PropTypes.node, PropTypes.func])
162
+ container: PropTypes.oneOfType([PropTypes.node, PropTypes.func]),
163
+ callback: PropTypes.func
162
164
  };
163
165
  export default ToastContainer;
@@ -7,7 +7,7 @@ export interface Toaster {
7
7
  * @param message
8
8
  * @param options
9
9
  */
10
- push(message: React.ReactNode, options?: ToastContainerProps): string | undefined;
10
+ push(message: React.ReactNode, options?: ToastContainerProps): string | undefined | Promise<string | undefined>;
11
11
  /**
12
12
  * Remove a message by key
13
13
  * @param key