@douyinfe/semi-ui 2.22.0-beta.0 → 2.22.0-beta.2

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 (337) hide show
  1. package/dist/css/semi.css +438 -38
  2. package/dist/css/semi.min.css +1 -1
  3. package/dist/umd/semi-ui.js +4084 -5300
  4. package/dist/umd/semi-ui.js.map +1 -1
  5. package/dist/umd/semi-ui.min.js +1 -1
  6. package/dist/umd/semi-ui.min.js.map +1 -1
  7. package/lib/cjs/_cssAnimation/index.d.ts +39 -0
  8. package/lib/cjs/_cssAnimation/index.js +133 -0
  9. package/lib/cjs/anchor/index.d.ts +3 -3
  10. package/lib/cjs/anchor/link.d.ts +1 -1
  11. package/lib/cjs/autoComplete/index.d.ts +7 -8
  12. package/lib/cjs/autoComplete/option.d.ts +1 -1
  13. package/lib/cjs/banner/index.d.ts +2 -2
  14. package/lib/cjs/breadcrumb/index.d.ts +3 -3
  15. package/lib/cjs/breadcrumb/item.d.ts +3 -3
  16. package/lib/cjs/button/index.d.ts +2 -2
  17. package/lib/cjs/calendar/dayCalendar.d.ts +2 -2
  18. package/lib/cjs/calendar/index.d.ts +2 -2
  19. package/lib/cjs/calendar/monthCalendar.d.ts +2 -2
  20. package/lib/cjs/calendar/rangeCalendar.d.ts +2 -2
  21. package/lib/cjs/calendar/weekCalendar.d.ts +2 -2
  22. package/lib/cjs/card/cardGroup.d.ts +1 -1
  23. package/lib/cjs/carousel/index.d.ts +1 -1
  24. package/lib/cjs/cascader/index.d.ts +7 -8
  25. package/lib/cjs/cascader/index.js +8 -6
  26. package/lib/cjs/collapse/collapse-context.d.ts +1 -2
  27. package/lib/cjs/collapse/index.d.ts +3 -3
  28. package/lib/cjs/collapse/item.d.ts +2 -2
  29. package/lib/cjs/collapsible/index.d.ts +32 -19
  30. package/lib/cjs/collapsible/index.js +157 -121
  31. package/lib/cjs/configProvider/index.d.ts +1 -1
  32. package/lib/cjs/datePicker/dateInput.d.ts +3 -3
  33. package/lib/cjs/datePicker/datePicker.d.ts +12 -9
  34. package/lib/cjs/datePicker/datePicker.js +11 -13
  35. package/lib/cjs/datePicker/month.d.ts +1 -1
  36. package/lib/cjs/datePicker/month.js +5 -1
  37. package/lib/cjs/datePicker/monthsGrid.d.ts +7 -6
  38. package/lib/cjs/datePicker/monthsGrid.js +9 -26
  39. package/lib/cjs/datePicker/quickControl.d.ts +1 -1
  40. package/lib/cjs/datePicker/yearAndMonth.d.ts +1 -1
  41. package/lib/cjs/datePicker/yearAndMonth.js +13 -8
  42. package/lib/cjs/descriptions/index.d.ts +1 -1
  43. package/lib/cjs/dropdown/dropdownItem.d.ts +2 -1
  44. package/lib/cjs/dropdown/dropdownItem.js +3 -1
  45. package/lib/cjs/dropdown/index.d.ts +5 -6
  46. package/lib/cjs/form/baseForm.d.ts +7 -5
  47. package/lib/cjs/form/errorMessage.d.ts +1 -1
  48. package/lib/cjs/form/field.d.ts +4 -2
  49. package/lib/cjs/form/label.d.ts +1 -1
  50. package/lib/cjs/grid/col.d.ts +6 -6
  51. package/lib/cjs/grid/row.d.ts +1 -1
  52. package/lib/cjs/iconButton/index.d.ts +2 -2
  53. package/lib/cjs/image/image.d.ts +4 -4
  54. package/lib/cjs/image/preview.d.ts +1 -1
  55. package/lib/cjs/image/previewInner.d.ts +1 -1
  56. package/lib/cjs/index.d.ts +1 -0
  57. package/lib/cjs/index.js +8 -0
  58. package/lib/cjs/inputNumber/index.d.ts +2 -2
  59. package/lib/cjs/locale/source/ro.d.ts +3 -3
  60. package/lib/cjs/modal/Modal.d.ts +6 -6
  61. package/lib/cjs/modal/Modal.js +80 -56
  62. package/lib/cjs/modal/ModalContent.js +6 -5
  63. package/lib/cjs/modal/confirm.d.ts +10 -10
  64. package/lib/cjs/modal/confirm.js +1 -15
  65. package/lib/cjs/modal/useModal/HookModal.d.ts +0 -2
  66. package/lib/cjs/modal/useModal/HookModal.js +6 -18
  67. package/lib/cjs/navigation/Footer.d.ts +1 -1
  68. package/lib/cjs/navigation/Header.d.ts +3 -3
  69. package/lib/cjs/navigation/Item.d.ts +4 -4
  70. package/lib/cjs/navigation/Item.js +11 -5
  71. package/lib/cjs/navigation/OpenIconTransition.d.ts +1 -15
  72. package/lib/cjs/navigation/OpenIconTransition.js +1 -82
  73. package/lib/cjs/navigation/SubNav.d.ts +4 -4
  74. package/lib/cjs/navigation/SubNav.js +43 -27
  75. package/lib/cjs/navigation/index.d.ts +8 -11
  76. package/lib/cjs/notification/index.d.ts +0 -1
  77. package/lib/cjs/notification/index.js +25 -15
  78. package/lib/cjs/notification/notice.d.ts +3 -1
  79. package/lib/cjs/notification/notice.js +3 -1
  80. package/lib/cjs/popconfirm/index.d.ts +4 -5
  81. package/lib/cjs/popover/index.d.ts +8 -8
  82. package/lib/cjs/popover/index.js +1 -1
  83. package/lib/cjs/progress/index.d.ts +4 -4
  84. package/lib/cjs/rating/index.d.ts +1 -1
  85. package/lib/cjs/rating/item.d.ts +1 -1
  86. package/lib/cjs/scrollList/index.d.ts +1 -1
  87. package/lib/cjs/scrollList/scrollItem.d.ts +3 -3
  88. package/lib/cjs/scrollList/scrollItem.js +2 -2
  89. package/lib/cjs/select/index.d.ts +11 -6
  90. package/lib/cjs/select/index.js +108 -60
  91. package/lib/cjs/select/option.d.ts +1 -1
  92. package/lib/cjs/select/optionGroup.d.ts +1 -1
  93. package/lib/cjs/sideSheet/SideSheetContent.d.ts +8 -0
  94. package/lib/cjs/sideSheet/SideSheetContent.js +10 -6
  95. package/lib/cjs/sideSheet/index.d.ts +4 -4
  96. package/lib/cjs/sideSheet/index.js +69 -39
  97. package/lib/cjs/space/index.d.ts +1 -1
  98. package/lib/cjs/spin/index.js +1 -4
  99. package/lib/cjs/table/Body/BaseRow.d.ts +5 -5
  100. package/lib/cjs/table/Body/ExpandedRow.d.ts +3 -3
  101. package/lib/cjs/table/Body/SectionRow.d.ts +3 -3
  102. package/lib/cjs/table/Column.d.ts +4 -4
  103. package/lib/cjs/table/ColumnShape.d.ts +4 -4
  104. package/lib/cjs/table/ColumnSorter.d.ts +1 -1
  105. package/lib/cjs/table/CustomExpandIcon.d.ts +1 -1
  106. package/lib/cjs/table/CustomExpandIcon.js +13 -5
  107. package/lib/cjs/table/Table.d.ts +16 -16
  108. package/lib/cjs/table/TableCell.d.ts +4 -4
  109. package/lib/cjs/table/TableHeaderRow.d.ts +2 -2
  110. package/lib/cjs/table/TablePagination.d.ts +1 -1
  111. package/lib/cjs/table/index.d.ts +15 -15
  112. package/lib/cjs/tabs/TabPane.d.ts +2 -8
  113. package/lib/cjs/tabs/TabPane.js +40 -38
  114. package/lib/cjs/tabs/index.d.ts +5 -3
  115. package/lib/cjs/tabs/index.js +26 -4
  116. package/lib/cjs/tabs/interface.d.ts +2 -0
  117. package/lib/cjs/tag/group.d.ts +1 -0
  118. package/lib/cjs/tag/group.js +6 -3
  119. package/lib/cjs/tag/index.d.ts +1 -1
  120. package/lib/cjs/tag/index.js +1 -0
  121. package/lib/cjs/tag/interface.d.ts +3 -1
  122. package/lib/cjs/tagInput/index.d.ts +3 -3
  123. package/lib/cjs/timePicker/Combobox.js +4 -8
  124. package/lib/cjs/timePicker/PanelShape.d.ts +2 -2
  125. package/lib/cjs/timePicker/TimePicker.d.ts +11 -11
  126. package/lib/cjs/timePicker/TimePicker.js +3 -1
  127. package/lib/cjs/timePicker/TimeShape.d.ts +1 -1
  128. package/lib/cjs/timePicker/index.d.ts +10 -9
  129. package/lib/cjs/timeline/index.d.ts +1 -1
  130. package/lib/cjs/toast/index.d.ts +2 -4
  131. package/lib/cjs/toast/index.js +29 -14
  132. package/lib/cjs/toast/toast.d.ts +4 -2
  133. package/lib/cjs/toast/toast.js +3 -1
  134. package/lib/cjs/tooltip/index.d.ts +8 -9
  135. package/lib/cjs/tooltip/index.js +30 -37
  136. package/lib/cjs/transfer/index.d.ts +1 -1
  137. package/lib/cjs/tree/autoSizer.d.ts +2 -2
  138. package/lib/cjs/tree/index.d.ts +5 -5
  139. package/lib/cjs/tree/nodeCollapsible.d.ts +11 -0
  140. package/lib/cjs/tree/nodeCollapsible.js +50 -0
  141. package/lib/cjs/tree/nodeList.js +6 -5
  142. package/lib/cjs/tree/treeNode.d.ts +1 -1
  143. package/lib/cjs/treeSelect/index.d.ts +12 -9
  144. package/lib/cjs/treeSelect/index.js +23 -9
  145. package/lib/cjs/trigger/index.d.ts +1 -1
  146. package/lib/cjs/typography/base.d.ts +8 -8
  147. package/lib/cjs/typography/index.d.ts +2 -0
  148. package/lib/cjs/typography/index.js +3 -0
  149. package/lib/cjs/typography/interface.d.ts +2 -0
  150. package/lib/cjs/typography/numeral.d.ts +68 -0
  151. package/lib/cjs/typography/numeral.js +106 -0
  152. package/lib/cjs/typography/paragraph.d.ts +3 -3
  153. package/lib/cjs/typography/text.d.ts +4 -4
  154. package/lib/cjs/typography/title.d.ts +4 -4
  155. package/lib/cjs/upload/fileCard.d.ts +1 -1
  156. package/lib/es/_cssAnimation/index.d.ts +39 -0
  157. package/lib/es/_cssAnimation/index.js +122 -0
  158. package/lib/es/anchor/index.d.ts +3 -3
  159. package/lib/es/anchor/link.d.ts +1 -1
  160. package/lib/es/autoComplete/index.d.ts +7 -8
  161. package/lib/es/autoComplete/option.d.ts +1 -1
  162. package/lib/es/banner/index.d.ts +2 -2
  163. package/lib/es/breadcrumb/index.d.ts +3 -3
  164. package/lib/es/breadcrumb/item.d.ts +3 -3
  165. package/lib/es/button/index.d.ts +2 -2
  166. package/lib/es/calendar/dayCalendar.d.ts +2 -2
  167. package/lib/es/calendar/index.d.ts +2 -2
  168. package/lib/es/calendar/monthCalendar.d.ts +2 -2
  169. package/lib/es/calendar/rangeCalendar.d.ts +2 -2
  170. package/lib/es/calendar/weekCalendar.d.ts +2 -2
  171. package/lib/es/card/cardGroup.d.ts +1 -1
  172. package/lib/es/carousel/index.d.ts +1 -1
  173. package/lib/es/cascader/index.d.ts +7 -8
  174. package/lib/es/cascader/index.js +8 -6
  175. package/lib/es/collapse/collapse-context.d.ts +1 -2
  176. package/lib/es/collapse/index.d.ts +3 -3
  177. package/lib/es/collapse/item.d.ts +2 -2
  178. package/lib/es/collapsible/index.d.ts +32 -19
  179. package/lib/es/collapsible/index.js +158 -119
  180. package/lib/es/configProvider/index.d.ts +1 -1
  181. package/lib/es/datePicker/dateInput.d.ts +3 -3
  182. package/lib/es/datePicker/datePicker.d.ts +12 -9
  183. package/lib/es/datePicker/datePicker.js +11 -13
  184. package/lib/es/datePicker/month.d.ts +1 -1
  185. package/lib/es/datePicker/month.js +5 -1
  186. package/lib/es/datePicker/monthsGrid.d.ts +7 -6
  187. package/lib/es/datePicker/monthsGrid.js +9 -26
  188. package/lib/es/datePicker/quickControl.d.ts +1 -1
  189. package/lib/es/datePicker/yearAndMonth.d.ts +1 -1
  190. package/lib/es/datePicker/yearAndMonth.js +13 -8
  191. package/lib/es/descriptions/index.d.ts +1 -1
  192. package/lib/es/dropdown/dropdownItem.d.ts +2 -1
  193. package/lib/es/dropdown/dropdownItem.js +3 -1
  194. package/lib/es/dropdown/index.d.ts +5 -6
  195. package/lib/es/form/baseForm.d.ts +7 -5
  196. package/lib/es/form/errorMessage.d.ts +1 -1
  197. package/lib/es/form/field.d.ts +4 -2
  198. package/lib/es/form/label.d.ts +1 -1
  199. package/lib/es/grid/col.d.ts +6 -6
  200. package/lib/es/grid/row.d.ts +1 -1
  201. package/lib/es/iconButton/index.d.ts +2 -2
  202. package/lib/es/image/image.d.ts +4 -4
  203. package/lib/es/image/preview.d.ts +1 -1
  204. package/lib/es/image/previewInner.d.ts +1 -1
  205. package/lib/es/index.d.ts +1 -0
  206. package/lib/es/index.js +1 -0
  207. package/lib/es/inputNumber/index.d.ts +2 -2
  208. package/lib/es/locale/source/ro.d.ts +3 -3
  209. package/lib/es/modal/Modal.d.ts +6 -6
  210. package/lib/es/modal/Modal.js +79 -56
  211. package/lib/es/modal/ModalContent.js +6 -5
  212. package/lib/es/modal/confirm.d.ts +10 -10
  213. package/lib/es/modal/confirm.js +1 -14
  214. package/lib/es/modal/useModal/HookModal.d.ts +0 -2
  215. package/lib/es/modal/useModal/HookModal.js +7 -19
  216. package/lib/es/navigation/Footer.d.ts +1 -1
  217. package/lib/es/navigation/Header.d.ts +3 -3
  218. package/lib/es/navigation/Item.d.ts +4 -4
  219. package/lib/es/navigation/Item.js +11 -5
  220. package/lib/es/navigation/OpenIconTransition.d.ts +1 -15
  221. package/lib/es/navigation/OpenIconTransition.js +1 -66
  222. package/lib/es/navigation/SubNav.d.ts +4 -4
  223. package/lib/es/navigation/SubNav.js +43 -28
  224. package/lib/es/navigation/index.d.ts +8 -11
  225. package/lib/es/notification/index.d.ts +0 -1
  226. package/lib/es/notification/index.js +24 -14
  227. package/lib/es/notification/notice.d.ts +3 -1
  228. package/lib/es/notification/notice.js +3 -1
  229. package/lib/es/popconfirm/index.d.ts +4 -5
  230. package/lib/es/popover/index.d.ts +8 -8
  231. package/lib/es/popover/index.js +1 -1
  232. package/lib/es/progress/index.d.ts +4 -4
  233. package/lib/es/rating/index.d.ts +1 -1
  234. package/lib/es/rating/item.d.ts +1 -1
  235. package/lib/es/scrollList/index.d.ts +1 -1
  236. package/lib/es/scrollList/scrollItem.d.ts +3 -3
  237. package/lib/es/scrollList/scrollItem.js +3 -3
  238. package/lib/es/select/index.d.ts +11 -6
  239. package/lib/es/select/index.js +108 -60
  240. package/lib/es/select/option.d.ts +1 -1
  241. package/lib/es/select/optionGroup.d.ts +1 -1
  242. package/lib/es/sideSheet/SideSheetContent.d.ts +8 -0
  243. package/lib/es/sideSheet/SideSheetContent.js +10 -6
  244. package/lib/es/sideSheet/index.d.ts +4 -4
  245. package/lib/es/sideSheet/index.js +67 -37
  246. package/lib/es/space/index.d.ts +1 -1
  247. package/lib/es/spin/index.js +1 -4
  248. package/lib/es/table/Body/BaseRow.d.ts +5 -5
  249. package/lib/es/table/Body/ExpandedRow.d.ts +3 -3
  250. package/lib/es/table/Body/SectionRow.d.ts +3 -3
  251. package/lib/es/table/Column.d.ts +4 -4
  252. package/lib/es/table/ColumnShape.d.ts +4 -4
  253. package/lib/es/table/ColumnSorter.d.ts +1 -1
  254. package/lib/es/table/CustomExpandIcon.d.ts +1 -1
  255. package/lib/es/table/CustomExpandIcon.js +13 -5
  256. package/lib/es/table/Table.d.ts +16 -16
  257. package/lib/es/table/TableCell.d.ts +4 -4
  258. package/lib/es/table/TableHeaderRow.d.ts +2 -2
  259. package/lib/es/table/TablePagination.d.ts +1 -1
  260. package/lib/es/table/index.d.ts +15 -15
  261. package/lib/es/tabs/TabPane.d.ts +2 -8
  262. package/lib/es/tabs/TabPane.js +40 -38
  263. package/lib/es/tabs/index.d.ts +5 -3
  264. package/lib/es/tabs/index.js +26 -4
  265. package/lib/es/tabs/interface.d.ts +2 -0
  266. package/lib/es/tag/group.d.ts +1 -0
  267. package/lib/es/tag/group.js +6 -3
  268. package/lib/es/tag/index.d.ts +1 -1
  269. package/lib/es/tag/index.js +1 -0
  270. package/lib/es/tag/interface.d.ts +3 -1
  271. package/lib/es/tagInput/index.d.ts +3 -3
  272. package/lib/es/timePicker/Combobox.js +4 -8
  273. package/lib/es/timePicker/PanelShape.d.ts +2 -2
  274. package/lib/es/timePicker/TimePicker.d.ts +11 -11
  275. package/lib/es/timePicker/TimePicker.js +3 -1
  276. package/lib/es/timePicker/TimeShape.d.ts +1 -1
  277. package/lib/es/timePicker/index.d.ts +10 -9
  278. package/lib/es/timeline/index.d.ts +1 -1
  279. package/lib/es/toast/index.d.ts +2 -4
  280. package/lib/es/toast/index.js +27 -13
  281. package/lib/es/toast/toast.d.ts +4 -2
  282. package/lib/es/toast/toast.js +3 -1
  283. package/lib/es/tooltip/index.d.ts +8 -9
  284. package/lib/es/tooltip/index.js +27 -36
  285. package/lib/es/transfer/index.d.ts +1 -1
  286. package/lib/es/tree/autoSizer.d.ts +2 -2
  287. package/lib/es/tree/index.d.ts +5 -5
  288. package/lib/es/tree/nodeCollapsible.d.ts +11 -0
  289. package/lib/es/tree/nodeCollapsible.js +35 -0
  290. package/lib/es/tree/nodeList.js +6 -5
  291. package/lib/es/tree/treeNode.d.ts +1 -1
  292. package/lib/es/treeSelect/index.d.ts +12 -9
  293. package/lib/es/treeSelect/index.js +22 -8
  294. package/lib/es/trigger/index.d.ts +1 -1
  295. package/lib/es/typography/base.d.ts +8 -8
  296. package/lib/es/typography/index.d.ts +2 -0
  297. package/lib/es/typography/index.js +2 -0
  298. package/lib/es/typography/interface.d.ts +2 -0
  299. package/lib/es/typography/numeral.d.ts +68 -0
  300. package/lib/es/typography/numeral.js +86 -0
  301. package/lib/es/typography/paragraph.d.ts +3 -3
  302. package/lib/es/typography/text.d.ts +4 -4
  303. package/lib/es/typography/title.d.ts +4 -4
  304. package/lib/es/upload/fileCard.d.ts +1 -1
  305. package/package.json +7 -7
  306. package/lib/cjs/motions/Rotate.d.ts +0 -23
  307. package/lib/cjs/motions/Rotate.js +0 -76
  308. package/lib/cjs/navigation/SubNavTransition.d.ts +0 -17
  309. package/lib/cjs/navigation/SubNavTransition.js +0 -83
  310. package/lib/cjs/notification/NoticeTransition.d.ts +0 -10
  311. package/lib/cjs/notification/NoticeTransition.js +0 -85
  312. package/lib/cjs/sideSheet/SideSheetTransition.d.ts +0 -12
  313. package/lib/cjs/sideSheet/SideSheetTransition.js +0 -115
  314. package/lib/cjs/tabs/TabPaneTransition.d.ts +0 -4
  315. package/lib/cjs/tabs/TabPaneTransition.js +0 -114
  316. package/lib/cjs/toast/ToastTransition.d.ts +0 -7
  317. package/lib/cjs/toast/ToastTransition.js +0 -66
  318. package/lib/cjs/tooltip/TooltipStyledTransition.d.ts +0 -9
  319. package/lib/cjs/tooltip/TooltipStyledTransition.js +0 -52
  320. package/lib/cjs/tree/collapse.d.ts +0 -29
  321. package/lib/cjs/tree/collapse.js +0 -155
  322. package/lib/es/motions/Rotate.d.ts +0 -23
  323. package/lib/es/motions/Rotate.js +0 -60
  324. package/lib/es/navigation/SubNavTransition.d.ts +0 -17
  325. package/lib/es/navigation/SubNavTransition.js +0 -66
  326. package/lib/es/notification/NoticeTransition.d.ts +0 -10
  327. package/lib/es/notification/NoticeTransition.js +0 -74
  328. package/lib/es/sideSheet/SideSheetTransition.d.ts +0 -12
  329. package/lib/es/sideSheet/SideSheetTransition.js +0 -102
  330. package/lib/es/tabs/TabPaneTransition.d.ts +0 -4
  331. package/lib/es/tabs/TabPaneTransition.js +0 -103
  332. package/lib/es/toast/ToastTransition.d.ts +0 -7
  333. package/lib/es/toast/ToastTransition.js +0 -55
  334. package/lib/es/tooltip/TooltipStyledTransition.d.ts +0 -9
  335. package/lib/es/tooltip/TooltipStyledTransition.js +0 -38
  336. package/lib/es/tree/collapse.d.ts +0 -29
  337. package/lib/es/tree/collapse.js +0 -136
@@ -33,9 +33,9 @@ var _dropdown = _interopRequireDefault(require("../dropdown"));
33
33
 
34
34
  var _navContext = _interopRequireDefault(require("./nav-context"));
35
35
 
36
- var _SubNavTransition = _interopRequireDefault(require("./SubNavTransition"));
36
+ var _collapsible = _interopRequireDefault(require("../collapsible"));
37
37
 
38
- var _OpenIconTransition = _interopRequireDefault(require("./OpenIconTransition"));
38
+ var _cssAnimation = _interopRequireDefault(require("../_cssAnimation"));
39
39
 
40
40
  function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
41
41
 
@@ -151,14 +151,19 @@ class SubNav extends _baseComponent.default {
151
151
  ["".concat(prefixCls, "-item-icon-info")]: !isToggleIcon
152
152
  });
153
153
  const isOpen = this.adapter.getIsOpen();
154
- const iconElem = /*#__PURE__*/_react.default.isValidElement(icon) ? withTransition ?
155
- /*#__PURE__*/
156
- // @ts-ignore
157
- _react.default.createElement(_OpenIconTransition.default, {
158
- isOpen: isOpen
159
- }, /*#__PURE__*/_react.default.cloneElement(icon, {
160
- size: iconSize
161
- })) //@ts-ignore
154
+ const iconElem = /*#__PURE__*/_react.default.isValidElement(icon) ? withTransition ? /*#__PURE__*/_react.default.createElement(_cssAnimation.default, {
155
+ animationState: isOpen ? "enter" : "leave",
156
+ startClassName: "".concat(_constants.cssClasses.PREFIX, "-icon-rotate-").concat(isOpen ? "0" : "180")
157
+ }, _ref => {
158
+ let {
159
+ animationClassName
160
+ } = _ref;
161
+ // @ts-ignore
162
+ return /*#__PURE__*/_react.default.cloneElement(icon, {
163
+ size: iconSize,
164
+ className: animationClassName
165
+ });
166
+ }) // @ts-ignore
162
167
  : /*#__PURE__*/_react.default.cloneElement(icon, {
163
168
  size: iconSize
164
169
  }) : null;
@@ -185,6 +190,7 @@ class SubNav extends _baseComponent.default {
185
190
  subNavMotion,
186
191
  limitIndent
187
192
  } = this.context;
193
+ const isOpen = this.adapter.getIsOpen();
188
194
  const titleCls = (0, _classnames.default)("".concat(prefixCls, "-sub-title"), {
189
195
  ["".concat(prefixCls, "-sub-title-selected")]: this.adapter.getIsSelected(itemKey),
190
196
  ["".concat(prefixCls, "-sub-title-disabled")]: disabled
@@ -200,9 +206,13 @@ class SubNav extends _baseComponent.default {
200
206
  }
201
207
  } else if (mode === _constants.strings.MODE_HORIZONTAL) {
202
208
  if (isInSubNav) {
203
- toggleIconType = /*#__PURE__*/_react.default.createElement(_semiIcons.IconChevronRight, null);
209
+ toggleIconType = /*#__PURE__*/_react.default.createElement(_semiIcons.IconChevronRight, {
210
+ "aria-hidden": true
211
+ });
204
212
  } else {
205
- toggleIconType = /*#__PURE__*/_react.default.createElement(_semiIcons.IconChevronDown, null); // Horizontal mode does not require animation fix#1198
213
+ toggleIconType = /*#__PURE__*/_react.default.createElement(_semiIcons.IconChevronDown, {
214
+ "aria-hidden": true
215
+ }); // Horizontal mode does not require animation fix#1198
206
216
  // withTransition = true;
207
217
  }
208
218
  } else {
@@ -210,7 +220,9 @@ class SubNav extends _baseComponent.default {
210
220
  withTransition = true;
211
221
  }
212
222
 
213
- toggleIconType = /*#__PURE__*/_react.default.createElement(_semiIcons.IconChevronDown, null);
223
+ toggleIconType = /*#__PURE__*/_react.default.createElement(_semiIcons.IconChevronDown, {
224
+ "aria-hidden": true
225
+ });
214
226
  }
215
227
 
216
228
  let placeholderIcons = null;
@@ -221,13 +233,17 @@ class SubNav extends _baseComponent.default {
221
233
  placeholderIcons = (0, _times2.default)(iconAmount, index => this.renderIcon(null, _constants.strings.ICON_POS_RIGHT, false, false, index));
222
234
  }
223
235
 
236
+ const isIconChevronRightShow = !isCollapsed && isInSubNav && mode === _constants.strings.MODE_HORIZONTAL || isCollapsed && isInSubNav;
237
+
224
238
  const titleDiv = /*#__PURE__*/_react.default.createElement("div", {
225
239
  role: "menuitem",
226
- tabIndex: -1,
240
+ // to avoid nested horizontal navigation be focused
241
+ tabIndex: isIconChevronRightShow ? -1 : 0,
227
242
  ref: this.setTitleRef,
228
243
  className: titleCls,
229
244
  onClick: this.handleClick,
230
- onKeyPress: this.handleKeyPress
245
+ onKeyPress: this.handleKeyPress,
246
+ "aria-expanded": isOpen ? 'true' : 'false'
231
247
  }, /*#__PURE__*/_react.default.createElement("div", {
232
248
  className: "".concat(prefixCls, "-item-inner")
233
249
  }, placeholderIcons, this.context.toggleIconPosition === _constants.strings.TOGGLE_ICON_LEFT && this.renderIcon(toggleIconType, _constants.strings.ICON_POS_RIGHT, withTransition, true, 'key-toggle-position-left'), icon || indent || isInSubNav && mode !== _constants.strings.MODE_HORIZONTAL ? this.renderIcon(icon, _constants.strings.ICON_POS_LEFT, false, false, 'key-inSubNav-position-left') : null, /*#__PURE__*/_react.default.createElement("span", {
@@ -255,14 +271,12 @@ class SubNav extends _baseComponent.default {
255
271
  ["".concat(prefixCls, "-sub-popover")]: isCollapsed || isHorizontal
256
272
  });
257
273
 
258
- const ulWithMotion = /*#__PURE__*/_react.default.createElement(_SubNavTransition.default, {
274
+ const ulWithMotion = /*#__PURE__*/_react.default.createElement(_collapsible.default, {
259
275
  motion: subNavMotion,
260
- isCollapsed: isCollapsed,
261
- maxHeight: maxHeight
262
- }, !isCollapsed && isOpen ? transitionStyle => /*#__PURE__*/_react.default.createElement("ul", {
263
- style: Object.assign(Object.assign({}, transitionStyle), {
264
- visibility: isCollapsed ? 'hidden' : 'visible'
265
- }),
276
+ isOpen: isOpen,
277
+ keepDOM: false,
278
+ fade: true
279
+ }, !isCollapsed ? /*#__PURE__*/_react.default.createElement("ul", {
266
280
  className: subNavCls
267
281
  }, children) : null);
268
282
 
@@ -307,9 +321,7 @@ class SubNav extends _baseComponent.default {
307
321
  // Do not show dropdown when disabled
308
322
  _elem = !disabled ? /*#__PURE__*/_react.default.createElement(_dropdown.default, Object.assign({
309
323
  className: subNavCls,
310
- render: /*#__PURE__*/_react.default.createElement(_dropdown.default.Menu, null, /*#__PURE__*/_react.default.createElement("li", {
311
- className: "".concat(prefixCls, "-popover-crumb")
312
- }), children),
324
+ render: /*#__PURE__*/_react.default.createElement(_dropdown.default.Menu, null, children),
313
325
  position: mode === _constants.strings.MODE_HORIZONTAL && !isInSubNav ? 'bottomLeft' : 'rightTop',
314
326
  mouseEnterDelay: subNavOpenDelay,
315
327
  mouseLeaveDelay: subNavCloseDelay,
@@ -425,8 +437,12 @@ SubNav.defaultProps = {
425
437
  isOpen: false,
426
438
  maxHeight: _constants.numbers.DEFAULT_SUBNAV_MAX_HEIGHT,
427
439
  toggleIcon: {
428
- open: /*#__PURE__*/_react.default.createElement(_semiIcons.IconChevronUp, null),
429
- closed: /*#__PURE__*/_react.default.createElement(_semiIcons.IconChevronDown, null)
440
+ open: /*#__PURE__*/_react.default.createElement(_semiIcons.IconChevronUp, {
441
+ "aria-hidden": true
442
+ }),
443
+ closed: /*#__PURE__*/_react.default.createElement(_semiIcons.IconChevronDown, {
444
+ "aria-hidden": true
445
+ })
430
446
  },
431
447
  disabled: false
432
448
  };
@@ -7,14 +7,11 @@ import Item, { NavItemProps } from './Item';
7
7
  import Footer, { NavFooterProps } from './Footer';
8
8
  import Header, { NavHeaderProps } from './Header';
9
9
  import '@douyinfe/semi-foundation/lib/cjs/navigation/navigation.css';
10
- import { Motion } from '../_base/base';
11
10
  export type { CollapseButtonProps } from './CollapseButton';
12
11
  export type { NavFooterProps } from './Footer';
13
12
  export type { NavHeaderProps } from './Header';
14
13
  export type { NavItemProps } from './Item';
15
- export type { OpenIconTransitionProps } from './OpenIconTransition';
16
14
  export type { ToggleIcon, SubNavProps } from './SubNav';
17
- export type { SubNavTransitionProps } from './SubNavTransition';
18
15
  export declare type Mode = 'vertical' | 'horizontal';
19
16
  export interface OnSelectedData {
20
17
  itemKey: React.ReactText;
@@ -47,7 +44,7 @@ export interface NavProps extends BaseProps {
47
44
  prefixCls?: string;
48
45
  selectedKeys?: React.ReactText[];
49
46
  subNavCloseDelay?: number;
50
- subNavMotion?: Motion;
47
+ subNavMotion?: boolean;
51
48
  subNavOpenDelay?: number;
52
49
  toggleIconPosition?: string;
53
50
  tooltipHideDelay?: number;
@@ -82,10 +79,10 @@ declare class Nav extends BaseComponent<NavProps, NavState> {
82
79
  static Header: typeof Header;
83
80
  static Footer: typeof Footer;
84
81
  static propTypes: {
85
- defaultOpenKeys: PropTypes.Requireable<(string | number)[]>;
86
- openKeys: PropTypes.Requireable<(string | number)[]>;
87
- defaultSelectedKeys: PropTypes.Requireable<(string | number)[]>;
88
- selectedKeys: PropTypes.Requireable<(string | number)[]>;
82
+ defaultOpenKeys: PropTypes.Requireable<NonNullable<string | number>[]>;
83
+ openKeys: PropTypes.Requireable<NonNullable<string | number>[]>;
84
+ defaultSelectedKeys: PropTypes.Requireable<NonNullable<string | number>[]>;
85
+ selectedKeys: PropTypes.Requireable<NonNullable<string | number>[]>;
89
86
  mode: PropTypes.Requireable<string>;
90
87
  onSelect: PropTypes.Requireable<(...args: any[]) => any>;
91
88
  onClick: PropTypes.Requireable<(...args: any[]) => any>;
@@ -96,7 +93,7 @@ declare class Nav extends BaseComponent<NavProps, NavState> {
96
93
  onCollapseChange: PropTypes.Requireable<(...args: any[]) => any>;
97
94
  multiple: PropTypes.Requireable<boolean>;
98
95
  onDeselect: PropTypes.Requireable<(...args: any[]) => any>;
99
- subNavMotion: PropTypes.Requireable<boolean | object>;
96
+ subNavMotion: PropTypes.Requireable<NonNullable<boolean | object>>;
100
97
  subNavCloseDelay: PropTypes.Requireable<number>;
101
98
  subNavOpenDelay: PropTypes.Requireable<number>;
102
99
  tooltipShowDelay: PropTypes.Requireable<number>;
@@ -107,8 +104,8 @@ declare class Nav extends BaseComponent<NavProps, NavState> {
107
104
  className: PropTypes.Requireable<string>;
108
105
  toggleIconPosition: PropTypes.Requireable<string>;
109
106
  prefixCls: PropTypes.Requireable<string>;
110
- header: PropTypes.Requireable<object | PropTypes.ReactNodeLike>;
111
- footer: PropTypes.Requireable<object | PropTypes.ReactNodeLike>;
107
+ header: PropTypes.Requireable<NonNullable<object | PropTypes.ReactNodeLike>>;
108
+ footer: PropTypes.Requireable<NonNullable<object | PropTypes.ReactNodeLike>>;
112
109
  limitIndent: PropTypes.Requireable<boolean>;
113
110
  };
114
111
  static defaultProps: {
@@ -6,7 +6,6 @@ import BaseComponent from '../_base/baseComponent';
6
6
  import '@douyinfe/semi-foundation/lib/cjs/notification/notification.css';
7
7
  import useNotification from './useNotification';
8
8
  import { NoticeInstance, NoticePosition, NoticeProps, NoticeState } from '@douyinfe/semi-foundation/lib/cjs/notification/notificationFoundation';
9
- export type { NoticeTransitionProps } from './NoticeTransition';
10
9
  export interface NoticeReactProps extends NoticeProps {
11
10
  style?: CSSProperties;
12
11
  }
@@ -25,12 +25,12 @@ var _baseComponent = _interopRequireDefault(require("../_base/baseComponent"));
25
25
 
26
26
  require("@douyinfe/semi-foundation/lib/cjs/notification/notification.css");
27
27
 
28
- var _NoticeTransition = _interopRequireDefault(require("./NoticeTransition"));
29
-
30
28
  var _uuid = _interopRequireDefault(require("@douyinfe/semi-foundation/lib/cjs/utils/uuid"));
31
29
 
32
30
  var _useNotification = _interopRequireDefault(require("./useNotification"));
33
31
 
32
+ var _cssAnimation = _interopRequireDefault(require("../_cssAnimation"));
33
+
34
34
  function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
35
35
 
36
36
  let ref = null;
@@ -73,19 +73,29 @@ class NotificationList extends _baseComponent.default {
73
73
  key: position,
74
74
  className: className,
75
75
  style: style
76
- }, notices.map((notice, index) => notice.motion ? /*#__PURE__*/_react.default.createElement(_NoticeTransition.default, {
77
- key: notice.id || index,
78
- position: position,
79
- motion: notice.motion
80
- }, removedItems.find(item => item.id === notice.id) ? null : transitionStyle => /*#__PURE__*/_react.default.createElement(_notice.default, Object.assign({}, notice, {
81
- style: Object.assign(Object.assign({}, transitionStyle), notice.style),
82
- key: notice.id,
83
- close: _this.remove
84
- }))) : /*#__PURE__*/_react.default.createElement(_notice.default, Object.assign({}, notice, {
85
- style: Object.assign({}, notice.style),
86
- key: notice.id,
87
- close: _this.remove
88
- }))))
76
+ }, notices.map((notice, index) => {
77
+ const isRemoved = removedItems.find(removedItem => removedItem.id === notice.id) !== undefined;
78
+ return /*#__PURE__*/_react.default.createElement(_cssAnimation.default, {
79
+ key: notice.id,
80
+ animationState: isRemoved ? "leave" : "enter",
81
+ startClassName: "".concat(_constants.cssClasses.NOTICE, "-animation-").concat(isRemoved ? "hide" : "show", "_").concat(position)
82
+ }, _ref => {
83
+ let {
84
+ animationClassName,
85
+ animationEventsNeedBind,
86
+ isAnimating
87
+ } = _ref;
88
+ return isRemoved && !isAnimating ? null : /*#__PURE__*/_react.default.createElement(_notice.default, Object.assign({}, notice, {
89
+ className: (0, _classnames.default)({
90
+ [notice.className]: Boolean(notice.className),
91
+ [animationClassName]: true
92
+ })
93
+ }, animationEventsNeedBind, {
94
+ style: Object.assign({}, notice.style),
95
+ close: _this.remove
96
+ }));
97
+ });
98
+ }))
89
99
  );
90
100
  }
91
101
 
@@ -9,12 +9,14 @@ export interface NoticeReactProps extends NoticeProps {
9
9
  content?: React.ReactNode;
10
10
  icon?: React.ReactNode;
11
11
  onClick?: (e: React.MouseEvent) => void;
12
+ onAnimationEnd?: (e: React.AnimationEvent) => void;
13
+ onAnimationStart?: (e: React.AnimationEvent) => void;
12
14
  }
13
15
  declare class Notice extends BaseComponent<NoticeReactProps, NoticeState> {
14
16
  static contextType: React.Context<ContextValue>;
15
17
  static propTypes: {
16
18
  duration: PropTypes.Requireable<number>;
17
- id: PropTypes.Requireable<string | number>;
19
+ id: PropTypes.Requireable<NonNullable<string | number>>;
18
20
  title: PropTypes.Requireable<PropTypes.ReactNodeLike>;
19
21
  content: PropTypes.Requireable<PropTypes.ReactNodeLike>;
20
22
  type: PropTypes.Requireable<string>;
@@ -178,7 +178,9 @@ class Notice extends _baseComponent.default {
178
178
  onMouseLeave: this.startCloseTimer,
179
179
  onClick: this.notifyClick,
180
180
  "aria-labelledby": titleID,
181
- role: 'alert'
181
+ role: 'alert',
182
+ onAnimationEnd: this.props.onAnimationEnd,
183
+ onAnimationStart: this.props.onAnimationStart
182
184
  }, /*#__PURE__*/_react.default.createElement("div", null, this.renderTypeIcon()), /*#__PURE__*/_react.default.createElement("div", {
183
185
  className: "".concat(prefixCls, "-inner")
184
186
  }, /*#__PURE__*/_react.default.createElement("div", {
@@ -8,7 +8,6 @@ import { ButtonProps } from '../button';
8
8
  import { Type as ButtonType } from '../button/Button';
9
9
  import { ContextValue } from '../configProvider/context';
10
10
  import '@douyinfe/semi-foundation/lib/cjs/popconfirm/popconfirm.css';
11
- import { Motion } from '../_base/base';
12
11
  export interface PopconfirmProps extends PopoverProps {
13
12
  cancelText?: string;
14
13
  cancelButtonProps?: ButtonProps;
@@ -20,7 +19,7 @@ export interface PopconfirmProps extends PopoverProps {
20
19
  okText?: string;
21
20
  okType?: ButtonType;
22
21
  okButtonProps?: ButtonProps;
23
- motion?: Motion;
22
+ motion?: boolean;
24
23
  title?: React.ReactNode;
25
24
  visible?: boolean;
26
25
  prefixCls?: string;
@@ -40,14 +39,14 @@ export interface PopconfirmState {
40
39
  export default class Popconfirm extends BaseComponent<PopconfirmProps, PopconfirmState> {
41
40
  static contextType: React.Context<ContextValue>;
42
41
  static propTypes: {
43
- motion: PropTypes.Requireable<boolean | object>;
42
+ motion: PropTypes.Requireable<NonNullable<boolean | object>>;
44
43
  disabled: PropTypes.Requireable<boolean>;
45
44
  content: PropTypes.Requireable<any>;
46
45
  title: PropTypes.Requireable<any>;
47
46
  prefixCls: PropTypes.Requireable<string>;
48
47
  className: PropTypes.Requireable<string>;
49
48
  style: PropTypes.Requireable<object>;
50
- icon: PropTypes.Requireable<PropTypes.ReactNodeLike>;
49
+ icon: PropTypes.Requireable<NonNullable<PropTypes.ReactNodeLike>>;
51
50
  okText: PropTypes.Requireable<string>;
52
51
  okType: PropTypes.Requireable<string>;
53
52
  cancelText: PropTypes.Requireable<string>;
@@ -60,7 +59,7 @@ export default class Popconfirm extends BaseComponent<PopconfirmProps, Popconfir
60
59
  defaultVisible: PropTypes.Requireable<boolean>;
61
60
  okButtonProps: PropTypes.Requireable<object>;
62
61
  cancelButtonProps: PropTypes.Requireable<object>;
63
- stopPropagation: PropTypes.Requireable<string | boolean>;
62
+ stopPropagation: PropTypes.Requireable<NonNullable<string | boolean>>;
64
63
  zIndex: PropTypes.Requireable<number>;
65
64
  trigger: PropTypes.Requireable<string>;
66
65
  position: PropTypes.Requireable<string>;
@@ -4,7 +4,6 @@ import { ContextValue } from '../configProvider/context';
4
4
  import { ArrowBounding, Position, TooltipProps, Trigger, RenderContentProps } from '../tooltip/index';
5
5
  import '@douyinfe/semi-foundation/lib/cjs/popover/popover.css';
6
6
  import { BaseProps } from '../_base/baseComponent';
7
- import { Motion } from '../_base/base';
8
7
  import type { ArrowProps } from './Arrow';
9
8
  export type { ArrowProps };
10
9
  declare interface ArrowStyle {
@@ -17,7 +16,7 @@ export interface PopoverProps extends BaseProps {
17
16
  content?: TooltipProps['content'];
18
17
  visible?: boolean;
19
18
  autoAdjustOverflow?: boolean;
20
- motion?: Motion;
19
+ motion?: boolean;
21
20
  position?: Position;
22
21
  mouseEnterDelay?: number;
23
22
  mouseLeaveDelay?: number;
@@ -41,6 +40,7 @@ export interface PopoverProps extends BaseProps {
41
40
  onEscKeyDown?: TooltipProps['onEscKeyDown'];
42
41
  clickToHide?: TooltipProps['clickToHide'];
43
42
  disableFocusListener?: boolean;
43
+ afterClose?: () => void;
44
44
  }
45
45
  export interface PopoverState {
46
46
  popConfirmVisible: boolean;
@@ -49,15 +49,15 @@ declare class Popover extends React.PureComponent<PopoverProps, PopoverState> {
49
49
  static contextType: React.Context<ContextValue>;
50
50
  static propTypes: {
51
51
  children: PropTypes.Requireable<PropTypes.ReactNodeLike>;
52
- content: PropTypes.Requireable<PropTypes.ReactNodeLike | ((...args: any[]) => any)>;
52
+ content: PropTypes.Requireable<NonNullable<PropTypes.ReactNodeLike | ((...args: any[]) => any)>>;
53
53
  visible: PropTypes.Requireable<boolean>;
54
54
  autoAdjustOverflow: PropTypes.Requireable<boolean>;
55
- motion: PropTypes.Requireable<boolean | object>;
56
- position: PropTypes.Requireable<"top" | "topLeft" | "topRight" | "left" | "leftTop" | "leftBottom" | "right" | "rightTop" | "rightBottom" | "bottom" | "bottomLeft" | "bottomRight" | "leftTopOver" | "rightTopOver">;
55
+ motion: PropTypes.Requireable<boolean>;
56
+ position: PropTypes.Requireable<"left" | "top" | "right" | "bottom" | "topLeft" | "topRight" | "leftTop" | "leftBottom" | "rightTop" | "rightBottom" | "bottomLeft" | "bottomRight" | "leftTopOver" | "rightTopOver">;
57
57
  mouseEnterDelay: PropTypes.Requireable<number>;
58
58
  mouseLeaveDelay: PropTypes.Requireable<number>;
59
- trigger: PropTypes.Validator<"hover" | "focus" | "click" | "custom">;
60
- contentClassName: PropTypes.Requireable<string | any[]>;
59
+ trigger: PropTypes.Validator<NonNullable<"hover" | "focus" | "click" | "custom">>;
60
+ contentClassName: PropTypes.Requireable<NonNullable<string | any[]>>;
61
61
  onVisibleChange: PropTypes.Requireable<(...args: any[]) => any>;
62
62
  onClickOutSide: PropTypes.Requireable<(...args: any[]) => any>;
63
63
  style: PropTypes.Requireable<object>;
@@ -67,7 +67,7 @@ declare class Popover extends React.PureComponent<PopoverProps, PopoverState> {
67
67
  arrowStyle: PropTypes.Requireable<PropTypes.InferProps<{
68
68
  borderColor: PropTypes.Requireable<string>;
69
69
  backgroundColor: PropTypes.Requireable<string>;
70
- borderOpacity: PropTypes.Requireable<string | number>;
70
+ borderOpacity: PropTypes.Requireable<NonNullable<string | number>>;
71
71
  }>>;
72
72
  arrowPointAtCenter: PropTypes.Requireable<boolean>;
73
73
  arrowBounding: PropTypes.Requireable<object>;
@@ -136,7 +136,7 @@ Popover.propTypes = {
136
136
  content: _propTypes.default.oneOfType([_propTypes.default.node, _propTypes.default.func]),
137
137
  visible: _propTypes.default.bool,
138
138
  autoAdjustOverflow: _propTypes.default.bool,
139
- motion: _propTypes.default.oneOfType([_propTypes.default.bool, _propTypes.default.object, _propTypes.default.func]),
139
+ motion: _propTypes.default.bool,
140
140
  position: _propTypes.default.oneOf(positionSet),
141
141
  // getPopupContainer: PropTypes.func,
142
142
  mouseEnterDelay: _propTypes.default.number,
@@ -35,18 +35,18 @@ declare class Progress extends Component<ProgressProps, ProgressState> {
35
35
  'aria-valuetext': PropTypes.Requireable<string>;
36
36
  className: PropTypes.Requireable<string>;
37
37
  direction: PropTypes.Requireable<string>;
38
- format: PropTypes.Requireable<PropTypes.ReactNodeLike | ((...args: any[]) => any)>;
38
+ format: PropTypes.Requireable<NonNullable<PropTypes.ReactNodeLike | ((...args: any[]) => any)>>;
39
39
  id: PropTypes.Requireable<string>;
40
- motion: PropTypes.Requireable<boolean | object>;
40
+ motion: PropTypes.Requireable<NonNullable<boolean | object>>;
41
41
  orbitStroke: PropTypes.Requireable<string>;
42
42
  percent: PropTypes.Requireable<number>;
43
43
  scale: PropTypes.Requireable<number>;
44
44
  showInfo: PropTypes.Requireable<boolean>;
45
45
  size: PropTypes.Requireable<string>;
46
- stroke: PropTypes.Requireable<string | PropTypes.InferProps<{
46
+ stroke: PropTypes.Requireable<NonNullable<string | PropTypes.InferProps<{
47
47
  percent: PropTypes.Requireable<number>;
48
48
  color: PropTypes.Requireable<string>;
49
- }>[]>;
49
+ }>[]>>;
50
50
  strokeGradient: PropTypes.Requireable<boolean>;
51
51
  strokeLinecap: PropTypes.Requireable<string>;
52
52
  strokeWidth: PropTypes.Requireable<number>;
@@ -69,7 +69,7 @@ export default class Rating extends BaseComponent<RatingProps, RatingState> {
69
69
  onBlur: PropTypes.Requireable<(...args: any[]) => any>;
70
70
  onKeyDown: PropTypes.Requireable<(...args: any[]) => any>;
71
71
  autoFocus: PropTypes.Requireable<boolean>;
72
- size: PropTypes.Requireable<number | "default" | "small">;
72
+ size: PropTypes.Requireable<NonNullable<number | "default" | "small">>;
73
73
  tooltips: PropTypes.Requireable<string[]>;
74
74
  id: PropTypes.Requireable<string>;
75
75
  preventScroll: PropTypes.Requireable<boolean>;
@@ -40,7 +40,7 @@ export default class Item extends BaseComponent<RatingItemProps, RatingItemState
40
40
  disabled: PropTypes.Requireable<boolean>;
41
41
  count: PropTypes.Requireable<number>;
42
42
  ariaLabelPrefix: PropTypes.Requireable<string>;
43
- size: PropTypes.Requireable<number | "default" | "small">;
43
+ size: PropTypes.Requireable<NonNullable<number | "default" | "small">>;
44
44
  'aria-describedby': PropTypes.Requireable<string>;
45
45
  onFocus: PropTypes.Requireable<(...args: any[]) => any>;
46
46
  onBlur: PropTypes.Requireable<(...args: any[]) => any>;
@@ -18,7 +18,7 @@ declare class ScrollList extends BaseComponent<ScrollListProps, {}> {
18
18
  header: propTypes.Requireable<propTypes.ReactNodeLike>;
19
19
  footer: propTypes.Requireable<propTypes.ReactNodeLike>;
20
20
  children: propTypes.Requireable<propTypes.ReactNodeLike>;
21
- bodyHeight: propTypes.Requireable<string | number>;
21
+ bodyHeight: propTypes.Requireable<NonNullable<string | number>>;
22
22
  };
23
23
  constructor(props: ScrollListProps);
24
24
  render(): JSX.Element;
@@ -26,7 +26,7 @@ export interface ScrollItemState {
26
26
  }
27
27
  export default class ScrollItem<T extends Item> extends BaseComponent<ScrollItemProps<T>, ScrollItemState> {
28
28
  static propTypes: {
29
- mode: PropTypes.Requireable<string>;
29
+ mode: PropTypes.Requireable<"normal" | "wheel">;
30
30
  cycled: PropTypes.Requireable<boolean>;
31
31
  list: PropTypes.Requireable<any[]>;
32
32
  selectedIndex: PropTypes.Requireable<number>;
@@ -34,8 +34,8 @@ export default class ScrollItem<T extends Item> extends BaseComponent<ScrollItem
34
34
  transform: PropTypes.Requireable<(...args: any[]) => any>;
35
35
  className: PropTypes.Requireable<string>;
36
36
  style: PropTypes.Requireable<object>;
37
- motion: PropTypes.Requireable<boolean | ((...args: any[]) => any)>;
38
- type: PropTypes.Requireable<string | number>;
37
+ motion: PropTypes.Requireable<NonNullable<boolean | ((...args: any[]) => any)>>;
38
+ type: PropTypes.Requireable<NonNullable<string | number>>;
39
39
  };
40
40
  static defaultProps: {
41
41
  selectedIndex: number;
@@ -429,7 +429,7 @@ class ScrollItem extends _baseComponent.default {
429
429
  this._cacheSelectedNode(nearestNode);
430
430
 
431
431
  this.foundation.selectNode(nearestNode, this.list);
432
- }, msPerFrame * 5);
432
+ }, msPerFrame * 2);
433
433
  }
434
434
 
435
435
  get adapter() {
@@ -543,7 +543,7 @@ class ScrollItem extends _baseComponent.default {
543
543
 
544
544
  exports.default = ScrollItem;
545
545
  ScrollItem.propTypes = {
546
- mode: _propTypes.default.string,
546
+ mode: _propTypes.default.oneOf(_constants.strings.MODE),
547
547
  cycled: _propTypes.default.bool,
548
548
  list: _propTypes.default.array,
549
549
  selectedIndex: _propTypes.default.number,
@@ -3,6 +3,7 @@ import PropTypes from 'prop-types';
3
3
  import { ContextValue } from '../configProvider/context';
4
4
  import SelectFoundation, { SelectAdapter } from '@douyinfe/semi-foundation/lib/cjs/select/foundation';
5
5
  import BaseComponent, { ValidateStatus } from '../_base/baseComponent';
6
+ import { PopoverProps } from '../popover/index';
6
7
  import { InputProps } from '../input/index';
7
8
  import Option, { OptionProps } from './option';
8
9
  import OptionGroup from './optionGroup';
@@ -123,6 +124,8 @@ export declare type SelectProps = {
123
124
  onListScroll?: (e: React.UIEvent<HTMLDivElement>) => void;
124
125
  children?: React.ReactNode;
125
126
  preventScroll?: boolean;
127
+ showRestTagsPopover?: boolean;
128
+ restTagsPopoverProps?: PopoverProps;
126
129
  } & Pick<TooltipProps, 'spacing' | 'getPopupContainer' | 'motion' | 'autoAdjustOverflow' | 'mouseLeaveDelay' | 'mouseEnterDelay' | 'stopPropagation'> & React.RefAttributes<any>;
127
130
  export interface SelectState {
128
131
  isOpen: boolean;
@@ -138,6 +141,7 @@ export interface SelectState {
138
141
  optionGroups: Array<any>;
139
142
  isHovering: boolean;
140
143
  isFocusInContainer: boolean;
144
+ isFullTags: boolean;
141
145
  }
142
146
  declare class Select extends BaseComponent<SelectProps, SelectState> {
143
147
  static contextType: React.Context<ContextValue>;
@@ -152,15 +156,15 @@ declare class Select extends BaseComponent<SelectProps, SelectState> {
152
156
  autoFocus: PropTypes.Requireable<boolean>;
153
157
  autoClearSearchValue: PropTypes.Requireable<boolean>;
154
158
  children: PropTypes.Requireable<PropTypes.ReactNodeLike>;
155
- defaultValue: PropTypes.Requireable<string | number | object>;
156
- value: PropTypes.Requireable<string | number | object>;
159
+ defaultValue: PropTypes.Requireable<NonNullable<string | number | object>>;
160
+ value: PropTypes.Requireable<NonNullable<string | number | object>>;
157
161
  placeholder: PropTypes.Requireable<PropTypes.ReactNodeLike>;
158
162
  onChange: PropTypes.Requireable<(...args: any[]) => any>;
159
163
  multiple: PropTypes.Requireable<boolean>;
160
- filter: PropTypes.Requireable<boolean | ((...args: any[]) => any)>;
164
+ filter: PropTypes.Requireable<NonNullable<boolean | ((...args: any[]) => any)>>;
161
165
  max: PropTypes.Requireable<number>;
162
166
  maxTagCount: PropTypes.Requireable<number>;
163
- maxHeight: PropTypes.Requireable<string | number>;
167
+ maxHeight: PropTypes.Requireable<NonNullable<string | number>>;
164
168
  style: PropTypes.Requireable<object>;
165
169
  className: PropTypes.Requireable<string>;
166
170
  size: PropTypes.Requireable<SelectSize>;
@@ -168,7 +172,7 @@ declare class Select extends BaseComponent<SelectProps, SelectState> {
168
172
  emptyContent: PropTypes.Requireable<PropTypes.ReactNodeLike>;
169
173
  onDropdownVisibleChange: PropTypes.Requireable<(...args: any[]) => any>;
170
174
  zIndex: PropTypes.Requireable<number>;
171
- position: PropTypes.Requireable<"top" | "topLeft" | "topRight" | "left" | "leftTop" | "leftBottom" | "right" | "rightTop" | "rightBottom" | "bottom" | "bottomLeft" | "bottomRight" | "leftTopOver" | "rightTopOver" | "leftBottomOver" | "rightBottomOver">;
175
+ position: PropTypes.Requireable<"left" | "top" | "right" | "bottom" | "topLeft" | "topRight" | "leftTop" | "leftBottom" | "rightTop" | "rightBottom" | "bottomLeft" | "bottomRight" | "leftTopOver" | "rightTopOver" | "leftBottomOver" | "rightBottomOver">;
172
176
  onSearch: PropTypes.Requireable<(...args: any[]) => any>;
173
177
  getPopupContainer: PropTypes.Requireable<(...args: any[]) => any>;
174
178
  dropdownClassName: PropTypes.Requireable<string>;
@@ -186,7 +190,7 @@ declare class Select extends BaseComponent<SelectProps, SelectState> {
186
190
  defaultActiveFirstOption: PropTypes.Requireable<boolean>;
187
191
  triggerRender: PropTypes.Requireable<(...args: any[]) => any>;
188
192
  stopPropagation: PropTypes.Requireable<boolean>;
189
- motion: PropTypes.Requireable<boolean | object>;
193
+ motion: PropTypes.Requireable<boolean>;
190
194
  onChangeWithObject: PropTypes.Requireable<boolean>;
191
195
  suffix: PropTypes.Requireable<PropTypes.ReactNodeLike>;
192
196
  prefix: PropTypes.Requireable<PropTypes.ReactNodeLike>;
@@ -256,6 +260,7 @@ declare class Select extends BaseComponent<SelectProps, SelectState> {
256
260
  renderVirtualizeList(visibleOptions: OptionProps[]): JSX.Element;
257
261
  renderOptions(children?: React.ReactNode): JSX.Element;
258
262
  renderSingleSelection(selections: Map<OptionProps['label'], any>, filterable: boolean): JSX.Element;
263
+ getTagItem: (item: any, i: number, renderSelectedItem: RenderSelectedItemFn) => JSX.Element;
259
264
  renderMultipleSelection(selections: Map<OptionProps['label'], any>, filterable: boolean): JSX.Element;
260
265
  onMouseEnter(e: MouseEvent): void;
261
266
  onMouseLeave(e: MouseEvent): void;