@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
@@ -0,0 +1,122 @@
1
+ import _isEqual from "lodash/isEqual";
2
+ import React from 'react';
3
+
4
+ class CSSAnimation extends React.Component {
5
+ constructor(props) {
6
+ super(props);
7
+
8
+ this.handleAnimationStart = () => {
9
+ var _a, _b;
10
+
11
+ (_b = (_a = this.props).onAnimationStart) === null || _b === void 0 ? void 0 : _b.call(_a);
12
+ };
13
+
14
+ this.handleAnimationEnd = () => {
15
+ this.setState({
16
+ currentClassName: this.props.endClassName,
17
+ extraStyle: {},
18
+ isAnimating: false
19
+ }, () => {
20
+ var _a, _b;
21
+
22
+ (_b = (_a = this.props).onAnimationEnd) === null || _b === void 0 ? void 0 : _b.call(_a, false);
23
+ });
24
+ };
25
+
26
+ this.state = {
27
+ currentClassName: this.props.startClassName,
28
+ extraStyle: {},
29
+ isAnimating: true
30
+ };
31
+ }
32
+
33
+ componentDidMount() {
34
+ var _a, _b, _c, _d; // The purpose is to shield the impact of the presence or absence of animation on the other semi component life cycle.
35
+ // In order to make the component side do not need to manually call the next life cycle function when there is no animation,
36
+ // so when there is no animation , it is logically (and only logically) regarded as an animation with a duration of 0.
37
+
38
+
39
+ (_b = (_a = this.props).onAnimationStart) === null || _b === void 0 ? void 0 : _b.call(_a);
40
+
41
+ if (!this.props.motion) {
42
+ (_d = (_c = this.props).onAnimationEnd) === null || _d === void 0 ? void 0 : _d.call(_c, false);
43
+ this.setState({
44
+ isAnimating: false
45
+ });
46
+ }
47
+ }
48
+
49
+ componentDidUpdate(prevProps, prevState, snapshot) {
50
+ const changedKeys = Object.keys(this.props).filter(key => !_isEqual(this.props[key], prevProps[key]));
51
+
52
+ if (changedKeys.includes("animationState")) {}
53
+
54
+ if (changedKeys.includes("startClassName") || changedKeys.includes('replayKey') || changedKeys.includes("motion")) {
55
+ this.setState({
56
+ currentClassName: this.props.startClassName,
57
+ extraStyle: {},
58
+ isAnimating: true
59
+ }, () => {
60
+ var _a, _b, _c, _d;
61
+
62
+ (_b = (_a = this.props).onAnimationStart) === null || _b === void 0 ? void 0 : _b.call(_a);
63
+
64
+ if (!this.props.motion) {
65
+ (_d = (_c = this.props).onAnimationEnd) === null || _d === void 0 ? void 0 : _d.call(_c, this.state.isAnimating);
66
+ this.setState({
67
+ isAnimating: false
68
+ });
69
+ }
70
+ });
71
+ }
72
+ }
73
+
74
+ render() {
75
+ var _a;
76
+
77
+ if (this.props.motion) {
78
+ return this.props.children({
79
+ animationClassName: (_a = this.state.currentClassName) !== null && _a !== void 0 ? _a : "",
80
+ animationStyle: this.state.extraStyle,
81
+ animationEventsNeedBind: {
82
+ onAnimationStart: this.handleAnimationStart,
83
+ onAnimationEnd: this.handleAnimationEnd
84
+ },
85
+ isAnimating: this.state.isAnimating
86
+ });
87
+ } else {
88
+ return this.props.children({
89
+ animationClassName: "",
90
+ animationStyle: {},
91
+ animationEventsNeedBind: {},
92
+ isAnimating: this.state.isAnimating
93
+ });
94
+ }
95
+ }
96
+
97
+ }
98
+
99
+ CSSAnimation.defaultProps = {
100
+ motion: true,
101
+ replayKey: ""
102
+ }; // const mergeAnimationFunction = (eventHandleFunctions: AnimationEventsNeedBind[]) => {
103
+ // //merge function in objects
104
+ // const mergedFunction = {};
105
+ // eventHandleFunctions.forEach(eventHandleFunction => {
106
+ // Object.keys(eventHandleFunction).forEach(key => {
107
+ // if (mergedFunction[key]) {
108
+ // const oldFunction = mergedFunction[key];
109
+ // mergedFunction[key] = (e) => {
110
+ // eventHandleFunction[key](e);
111
+ // oldFunction(e);
112
+ // };
113
+ // } else {
114
+ // mergedFunction[key] = eventHandleFunction[key];
115
+ // }
116
+ // });
117
+ // });
118
+ // return mergedFunction;
119
+ // };
120
+ // export { mergeAnimationFunction };
121
+
122
+ export default CSSAnimation;
@@ -48,9 +48,9 @@ declare class Anchor extends BaseComponent<AnchorProps, AnchorState> {
48
48
  offsetTop: PropTypes.Requireable<number>;
49
49
  targetOffset: PropTypes.Requireable<number>;
50
50
  showTooltip: PropTypes.Requireable<boolean>;
51
- position: PropTypes.Requireable<"top" | "topLeft" | "topRight" | "left" | "leftTop" | "leftBottom" | "right" | "rightTop" | "rightBottom" | "bottom" | "bottomLeft" | "bottomRight" | "leftTopOver" | "rightTopOver">;
52
- maxWidth: PropTypes.Requireable<string | number>;
53
- maxHeight: PropTypes.Requireable<string | number>;
51
+ position: PropTypes.Requireable<"left" | "top" | "right" | "bottom" | "topLeft" | "topRight" | "leftTop" | "leftBottom" | "rightTop" | "rightBottom" | "bottomLeft" | "bottomRight" | "leftTopOver" | "rightTopOver">;
52
+ maxWidth: PropTypes.Requireable<NonNullable<string | number>>;
53
+ maxHeight: PropTypes.Requireable<NonNullable<string | number>>;
54
54
  getContainer: PropTypes.Requireable<(...args: any[]) => any>;
55
55
  onChange: PropTypes.Requireable<(...args: any[]) => any>;
56
56
  onClick: PropTypes.Requireable<(...args: any[]) => any>;
@@ -16,7 +16,7 @@ export interface LinkProps {
16
16
  export default class Link extends BaseComponent<LinkProps, {}> {
17
17
  static propTypes: {
18
18
  href: PropTypes.Requireable<string>;
19
- title: PropTypes.Requireable<PropTypes.ReactNodeLike>;
19
+ title: PropTypes.Requireable<NonNullable<PropTypes.ReactNodeLike>>;
20
20
  className: PropTypes.Requireable<string>;
21
21
  style: PropTypes.Requireable<object>;
22
22
  };
@@ -5,7 +5,6 @@ import BaseComponent, { ValidateStatus } from '../_base/baseComponent';
5
5
  import { Position } from '../tooltip';
6
6
  import Option from './option';
7
7
  import '@douyinfe/semi-foundation/lib/es/autoComplete/autoComplete.css';
8
- import { Motion } from '../_base/base';
9
8
  /**
10
9
  * AutoComplete is an enhanced Input (candidates suggest that users can choose or not),
11
10
  * and the Select positioning that supports Search is still a selector.
@@ -42,7 +41,7 @@ export interface AutoCompleteProps<T extends AutoCompleteItems> {
42
41
  insetLabelId?: string;
43
42
  id?: string;
44
43
  loading?: boolean;
45
- motion?: Motion;
44
+ motion?: boolean;
46
45
  maxHeight?: string | number;
47
46
  mouseEnterDelay?: number;
48
47
  mouseLeaveDelay?: number;
@@ -98,7 +97,7 @@ declare class AutoComplete<T extends AutoCompleteItems> extends BaseComponent<Au
98
97
  children: PropTypes.Requireable<PropTypes.ReactNodeLike>;
99
98
  data: PropTypes.Requireable<any[]>;
100
99
  defaultOpen: PropTypes.Requireable<boolean>;
101
- defaultValue: PropTypes.Requireable<string | number>;
100
+ defaultValue: PropTypes.Requireable<NonNullable<string | number>>;
102
101
  defaultActiveFirstOption: PropTypes.Requireable<boolean>;
103
102
  disabled: PropTypes.Requireable<boolean>;
104
103
  dropdownMatchSelectWidth: PropTypes.Requireable<boolean>;
@@ -115,7 +114,7 @@ declare class AutoComplete<T extends AutoCompleteItems> extends BaseComponent<Au
115
114
  onFocus: PropTypes.Requireable<(...args: any[]) => any>;
116
115
  onChange: PropTypes.Requireable<(...args: any[]) => any>;
117
116
  onKeyDown: PropTypes.Requireable<(...args: any[]) => any>;
118
- position: PropTypes.Requireable<"top" | "topLeft" | "topRight" | "left" | "leftTop" | "leftBottom" | "right" | "rightTop" | "rightBottom" | "bottom" | "bottomLeft" | "bottomRight" | "leftTopOver" | "rightTopOver" | "leftBottomOver" | "rightBottomOver">;
117
+ position: PropTypes.Requireable<"left" | "top" | "right" | "bottom" | "topLeft" | "topRight" | "leftTop" | "leftBottom" | "rightTop" | "rightBottom" | "bottomLeft" | "bottomRight" | "leftTopOver" | "rightTopOver" | "leftBottomOver" | "rightBottomOver">;
119
118
  placeholder: PropTypes.Requireable<string>;
120
119
  prefix: PropTypes.Requireable<PropTypes.ReactNodeLike>;
121
120
  onChangeWithObject: PropTypes.Requireable<boolean>;
@@ -126,14 +125,14 @@ declare class AutoComplete<T extends AutoCompleteItems> extends BaseComponent<Au
126
125
  showClear: PropTypes.Requireable<boolean>;
127
126
  size: PropTypes.Requireable<"default" | "small" | "large">;
128
127
  style: PropTypes.Requireable<object>;
129
- stopPropagation: PropTypes.Requireable<string | boolean>;
130
- maxHeight: PropTypes.Requireable<string | number>;
128
+ stopPropagation: PropTypes.Requireable<NonNullable<string | boolean>>;
129
+ maxHeight: PropTypes.Requireable<NonNullable<string | number>>;
131
130
  mouseEnterDelay: PropTypes.Requireable<number>;
132
131
  mouseLeaveDelay: PropTypes.Requireable<number>;
133
- motion: PropTypes.Requireable<boolean | object>;
132
+ motion: PropTypes.Requireable<NonNullable<boolean | object>>;
134
133
  getPopupContainer: PropTypes.Requireable<(...args: any[]) => any>;
135
134
  triggerRender: PropTypes.Requireable<(...args: any[]) => any>;
136
- value: PropTypes.Requireable<string | number>;
135
+ value: PropTypes.Requireable<NonNullable<string | number>>;
137
136
  validateStatus: PropTypes.Requireable<"default" | "error" | "warning" | "success">;
138
137
  zIndex: PropTypes.Requireable<number>;
139
138
  };
@@ -25,7 +25,7 @@ declare class Option extends PureComponent<OptionProps> {
25
25
  static propTypes: {
26
26
  children: PropTypes.Requireable<PropTypes.ReactNodeLike>;
27
27
  disabled: PropTypes.Requireable<boolean>;
28
- value: PropTypes.Requireable<string | number>;
28
+ value: PropTypes.Requireable<NonNullable<string | number>>;
29
29
  selected: PropTypes.Requireable<boolean>;
30
30
  label: PropTypes.Requireable<PropTypes.ReactNodeLike>;
31
31
  empty: PropTypes.Requireable<boolean>;
@@ -26,8 +26,8 @@ export default class Banner extends BaseComponent<BannerProps, BannerState> {
26
26
  type: PropTypes.Requireable<string>;
27
27
  title: PropTypes.Requireable<PropTypes.ReactNodeLike>;
28
28
  description: PropTypes.Requireable<PropTypes.ReactNodeLike>;
29
- icon: PropTypes.Requireable<PropTypes.ReactNodeLike>;
30
- closeIcon: PropTypes.Requireable<PropTypes.ReactNodeLike>;
29
+ icon: PropTypes.Requireable<NonNullable<PropTypes.ReactNodeLike>>;
30
+ closeIcon: PropTypes.Requireable<NonNullable<PropTypes.ReactNodeLike>>;
31
31
  children: PropTypes.Requireable<PropTypes.ReactNodeLike>;
32
32
  style: PropTypes.Requireable<object>;
33
33
  className: PropTypes.Requireable<string>;
@@ -43,11 +43,11 @@ declare class Breadcrumb extends BaseComponent<BreadcrumbProps, BreadcrumbState>
43
43
  children: propTypes.Requireable<propTypes.ReactNodeLike>;
44
44
  style: propTypes.Requireable<object>;
45
45
  renderItem: propTypes.Requireable<(...args: any[]) => any>;
46
- showTooltip: propTypes.Requireable<boolean | propTypes.InferProps<{
47
- width: propTypes.Requireable<string | number>;
46
+ showTooltip: propTypes.Requireable<NonNullable<boolean | propTypes.InferProps<{
47
+ width: propTypes.Requireable<NonNullable<string | number>>;
48
48
  ellipsisPos: propTypes.Requireable<string>;
49
49
  opts: propTypes.Requireable<object>;
50
- }>>;
50
+ }>>>;
51
51
  className: propTypes.Requireable<string>;
52
52
  autoCollapse: propTypes.Requireable<boolean>;
53
53
  maxItemCount: propTypes.Requireable<number>;
@@ -24,12 +24,12 @@ export default class BreadcrumbItem extends BaseComponent<BreadcrumbItemProps, B
24
24
  static contextType: React.Context<BreadContextType>;
25
25
  static propTypes: {
26
26
  onClick: propTypes.Requireable<(...args: any[]) => any>;
27
- route: propTypes.Requireable<string | object>;
27
+ route: propTypes.Requireable<NonNullable<string | object>>;
28
28
  name: propTypes.Requireable<string>;
29
29
  children: propTypes.Requireable<propTypes.ReactNodeLike>;
30
30
  active: propTypes.Requireable<boolean>;
31
31
  shouldRenderSeparator: propTypes.Requireable<boolean>;
32
- icon: propTypes.Requireable<propTypes.ReactNodeLike>;
32
+ icon: propTypes.Requireable<NonNullable<propTypes.ReactNodeLike>>;
33
33
  separator: propTypes.Requireable<propTypes.ReactNodeLike>;
34
34
  noLink: propTypes.Requireable<boolean>;
35
35
  };
@@ -42,7 +42,7 @@ export default class BreadcrumbItem extends BaseComponent<BreadcrumbItemProps, B
42
42
  constructor(props: BreadcrumbItemProps);
43
43
  componentDidMount(): void;
44
44
  componentWillUnmount(): void;
45
- renderIcon: () => string | number | boolean | React.ReactFragment | React.ReactElement<any, string | React.JSXElementConstructor<any>>;
45
+ renderIcon: () => string | number | boolean | React.ReactFragment | React.DetailedReactHTMLElement<unknown, HTMLElement>;
46
46
  getTooltipOpt: () => {
47
47
  width: number;
48
48
  ellipsisPos: string;
@@ -12,9 +12,9 @@ declare class Button extends React.PureComponent<ButtonProps> {
12
12
  style: import("prop-types").Requireable<object>;
13
13
  loading: import("prop-types").Requireable<boolean>;
14
14
  prefixCls: import("prop-types").Requireable<string>;
15
- icon: import("prop-types").Requireable<object | import("prop-types").ReactNodeLike>;
15
+ icon: import("prop-types").Requireable<NonNullable<object | import("prop-types").ReactNodeLike>>;
16
16
  iconSize: import("prop-types").Requireable<string>;
17
- noHorizontalPadding: import("prop-types").Requireable<string | boolean | any[]>;
17
+ noHorizontalPadding: import("prop-types").Requireable<NonNullable<string | boolean | any[]>>;
18
18
  children: import("prop-types").Requireable<import("prop-types").ReactNodeLike>;
19
19
  theme: import("prop-types").Requireable<string>;
20
20
  iconPosition: import("prop-types").Requireable<"left" | "right">;
@@ -21,8 +21,8 @@ export default class DayCalendar extends BaseComponent<DayCalendarProps, DayCale
21
21
  renderTimeDisplay: PropTypes.Requireable<(...args: any[]) => any>;
22
22
  markWeekend: PropTypes.Requireable<boolean>;
23
23
  scrollTop: PropTypes.Requireable<number>;
24
- width: PropTypes.Requireable<string | number>;
25
- height: PropTypes.Requireable<string | number>;
24
+ width: PropTypes.Requireable<NonNullable<string | number>>;
25
+ height: PropTypes.Requireable<NonNullable<string | number>>;
26
26
  style: PropTypes.Requireable<object>;
27
27
  className: PropTypes.Requireable<string>;
28
28
  dateGridRender: PropTypes.Requireable<(...args: any[]) => any>;
@@ -23,8 +23,8 @@ declare class Calendar extends BaseComponent<CalendarProps, {}> {
23
23
  onClick: PropTypes.Requireable<(...args: any[]) => any>;
24
24
  renderTimeDisplay: PropTypes.Requireable<(...args: any[]) => any>;
25
25
  markWeekend: PropTypes.Requireable<boolean>;
26
- width: PropTypes.Requireable<string | number>;
27
- height: PropTypes.Requireable<string | number>;
26
+ width: PropTypes.Requireable<NonNullable<string | number>>;
27
+ height: PropTypes.Requireable<NonNullable<string | number>>;
28
28
  style: PropTypes.Requireable<object>;
29
29
  className: PropTypes.Requireable<string>;
30
30
  };
@@ -19,8 +19,8 @@ export default class monthCalendar extends BaseComponent<MonthCalendarProps, Mon
19
19
  events: PropTypes.Requireable<any[]>;
20
20
  mode: PropTypes.Requireable<string>;
21
21
  markWeekend: PropTypes.Requireable<boolean>;
22
- width: PropTypes.Requireable<string | number>;
23
- height: PropTypes.Requireable<string | number>;
22
+ width: PropTypes.Requireable<NonNullable<string | number>>;
23
+ height: PropTypes.Requireable<NonNullable<string | number>>;
24
24
  style: PropTypes.Requireable<object>;
25
25
  className: PropTypes.Requireable<string>;
26
26
  dateGridRender: PropTypes.Requireable<(...args: any[]) => any>;
@@ -21,8 +21,8 @@ export default class RangeCalendar extends BaseComponent<RangeCalendarProps, Ran
21
21
  scrollTop: PropTypes.Requireable<number>;
22
22
  renderTimeDisplay: PropTypes.Requireable<(...args: any[]) => any>;
23
23
  dateGridRender: PropTypes.Requireable<(...args: any[]) => any>;
24
- width: PropTypes.Requireable<string | number>;
25
- height: PropTypes.Requireable<string | number>;
24
+ width: PropTypes.Requireable<NonNullable<string | number>>;
25
+ height: PropTypes.Requireable<NonNullable<string | number>>;
26
26
  style: PropTypes.Requireable<object>;
27
27
  className: PropTypes.Requireable<string>;
28
28
  };
@@ -21,8 +21,8 @@ export default class WeekCalendar extends BaseComponent<WeekCalendarProps, WeekC
21
21
  scrollTop: PropTypes.Requireable<number>;
22
22
  renderTimeDisplay: PropTypes.Requireable<(...args: any[]) => any>;
23
23
  dateGridRender: PropTypes.Requireable<(...args: any[]) => any>;
24
- width: PropTypes.Requireable<string | number>;
25
- height: PropTypes.Requireable<string | number>;
24
+ width: PropTypes.Requireable<NonNullable<string | number>>;
25
+ height: PropTypes.Requireable<NonNullable<string | number>>;
26
26
  style: PropTypes.Requireable<object>;
27
27
  className: PropTypes.Requireable<string>;
28
28
  };
@@ -16,7 +16,7 @@ declare class CardGroup extends PureComponent<CardGroupProps> {
16
16
  static propTypes: {
17
17
  children: PropTypes.Requireable<PropTypes.ReactNodeLike>;
18
18
  className: PropTypes.Requireable<string>;
19
- spacing: PropTypes.Requireable<number | any[]>;
19
+ spacing: PropTypes.Requireable<NonNullable<number | any[]>>;
20
20
  style: PropTypes.Requireable<object>;
21
21
  type: PropTypes.Requireable<string>;
22
22
  };
@@ -16,7 +16,7 @@ declare class Carousel extends BaseComponent<CarouselProps, CarouselState> {
16
16
  activeIndex: PropTypes.Requireable<number>;
17
17
  animation: PropTypes.Requireable<"slide" | "fade">;
18
18
  arrowProps: PropTypes.Requireable<object>;
19
- autoPlay: PropTypes.Requireable<boolean | object>;
19
+ autoPlay: PropTypes.Requireable<NonNullable<boolean | object>>;
20
20
  className: PropTypes.Requireable<string>;
21
21
  defaultActiveIndex: PropTypes.Requireable<number>;
22
22
  indicatorPosition: PropTypes.Requireable<"left" | "right" | "center">;
@@ -7,7 +7,6 @@ import BaseComponent, { ValidateStatus } from '../_base/baseComponent';
7
7
  import Input from '../input/index';
8
8
  import { PopoverProps } from '../popover/index';
9
9
  import { CascaderData, Entities, Entity, Data } from './item';
10
- import { Motion } from '../_base/base';
11
10
  import { Position } from '../tooltip/index';
12
11
  export type { CascaderType, ShowNextType } from '@douyinfe/semi-foundation/lib/es/cascader/foundation';
13
12
  export type { CascaderData, Entity, Data, CascaderItemProps } from './item';
@@ -31,7 +30,7 @@ export interface CascaderProps extends BasicCascaderProps {
31
30
  defaultValue?: Value;
32
31
  dropdownStyle?: CSSProperties;
33
32
  emptyContent?: ReactNode;
34
- motion?: Motion;
33
+ motion?: boolean;
35
34
  treeData?: Array<CascaderData>;
36
35
  restTagsPopoverProps?: PopoverProps;
37
36
  children?: React.ReactNode;
@@ -72,13 +71,13 @@ declare class Cascader extends BaseComponent<CascaderProps, CascaderState> {
72
71
  'aria-label': PropTypes.Requireable<string>;
73
72
  arrowIcon: PropTypes.Requireable<PropTypes.ReactNodeLike>;
74
73
  changeOnSelect: PropTypes.Requireable<boolean>;
75
- defaultValue: PropTypes.Requireable<string | any[]>;
74
+ defaultValue: PropTypes.Requireable<NonNullable<string | any[]>>;
76
75
  disabled: PropTypes.Requireable<boolean>;
77
76
  dropdownClassName: PropTypes.Requireable<string>;
78
77
  dropdownStyle: PropTypes.Requireable<object>;
79
78
  emptyContent: PropTypes.Requireable<PropTypes.ReactNodeLike>;
80
- motion: PropTypes.Requireable<boolean | object>;
81
- filterTreeNode: PropTypes.Requireable<boolean | ((...args: any[]) => any)>;
79
+ motion: PropTypes.Requireable<boolean>;
80
+ filterTreeNode: PropTypes.Requireable<NonNullable<boolean | ((...args: any[]) => any)>>;
82
81
  filterLeafOnly: PropTypes.Requireable<boolean>;
83
82
  placeholder: PropTypes.Requireable<string>;
84
83
  searchPlaceholder: PropTypes.Requireable<string>;
@@ -86,7 +85,7 @@ declare class Cascader extends BaseComponent<CascaderProps, CascaderState> {
86
85
  style: PropTypes.Requireable<object>;
87
86
  className: PropTypes.Requireable<string>;
88
87
  treeData: PropTypes.Requireable<PropTypes.InferProps<{
89
- value: PropTypes.Requireable<string | number>;
88
+ value: PropTypes.Requireable<NonNullable<string | number>>;
90
89
  label: PropTypes.Requireable<any>;
91
90
  }>[]>;
92
91
  treeNodeFilterProp: PropTypes.Requireable<string>;
@@ -105,10 +104,10 @@ declare class Cascader extends BaseComponent<CascaderProps, CascaderState> {
105
104
  children: PropTypes.Requireable<PropTypes.ReactNodeLike>;
106
105
  getPopupContainer: PropTypes.Requireable<(...args: any[]) => any>;
107
106
  zIndex: PropTypes.Requireable<number>;
108
- value: PropTypes.Requireable<string | number | any[]>;
107
+ value: PropTypes.Requireable<NonNullable<string | number | any[]>>;
109
108
  validateStatus: PropTypes.Requireable<"default" | "error" | "warning" | "success">;
110
109
  showNext: PropTypes.Requireable<"hover" | "click">;
111
- stopPropagation: PropTypes.Requireable<string | boolean>;
110
+ stopPropagation: PropTypes.Requireable<NonNullable<string | boolean>>;
112
111
  showClear: PropTypes.Requireable<boolean>;
113
112
  defaultOpen: PropTypes.Requireable<boolean>;
114
113
  autoAdjustOverflow: PropTypes.Requireable<boolean>;
@@ -861,7 +861,8 @@ class Cascader extends BaseComponent {
861
861
  onInputChange: this.handleInputChange,
862
862
  // TODO Modify logic, not modify type
863
863
  onRemove: v => this.handleTagRemove(null, v),
864
- placeholder: placeholder
864
+ placeholder: placeholder,
865
+ expandRestTagsOnClick: false
865
866
  });
866
867
  }
867
868
 
@@ -909,7 +910,8 @@ class Cascader extends BaseComponent {
909
910
  stopPropagation,
910
911
  mouseLeaveDelay,
911
912
  mouseEnterDelay,
912
- position
913
+ position,
914
+ motion
913
915
  } = this.props;
914
916
  const {
915
917
  isOpen,
@@ -921,11 +923,10 @@ class Cascader extends BaseComponent {
921
923
  const content = this.renderContent();
922
924
  const selection = this.renderSelection();
923
925
  const pos = position !== null && position !== void 0 ? position : direction === 'rtl' ? 'bottomRight' : 'bottomLeft';
924
- const mergedMotion = this.foundation.getMergedMotion();
925
926
  return /*#__PURE__*/React.createElement(Popover, {
926
927
  getPopupContainer: getPopupContainer,
927
928
  zIndex: zIndex,
928
- motion: mergedMotion,
929
+ motion: motion,
929
930
  ref: this.optionsRef,
930
931
  content: content,
931
932
  visible: isOpen,
@@ -935,7 +936,8 @@ class Cascader extends BaseComponent {
935
936
  autoAdjustOverflow: autoAdjustOverflow,
936
937
  stopPropagation: stopPropagation,
937
938
  mouseLeaveDelay: mouseLeaveDelay,
938
- mouseEnterDelay: mouseEnterDelay
939
+ mouseEnterDelay: mouseEnterDelay,
940
+ afterClose: () => this.foundation.updateSearching(false)
939
941
  }, selection);
940
942
  }
941
943
 
@@ -956,7 +958,7 @@ Cascader.propTypes = {
956
958
  dropdownClassName: PropTypes.string,
957
959
  dropdownStyle: PropTypes.object,
958
960
  emptyContent: PropTypes.node,
959
- motion: PropTypes.oneOfType([PropTypes.bool, PropTypes.func, PropTypes.object]),
961
+ motion: PropTypes.bool,
960
962
 
961
963
  /* show search input, if passed in a function, used as custom filter */
962
964
  filterTreeNode: PropTypes.oneOfType([PropTypes.func, PropTypes.bool]),
@@ -1,5 +1,4 @@
1
1
  import React from 'react';
2
- import { Motion } from '../_base/base';
3
2
  export interface CollapseContextType {
4
3
  activeSet: Set<string>;
5
4
  expandIcon: React.ReactNode;
@@ -7,7 +6,7 @@ export interface CollapseContextType {
7
6
  keepDOM: boolean;
8
7
  expandIconPosition: 'left' | 'right';
9
8
  onClick: (activeKey: string, e: React.MouseEvent) => void;
10
- motion: Motion;
9
+ motion: boolean;
11
10
  }
12
11
  declare const CollapseContext: React.Context<CollapseContextType>;
13
12
  export default CollapseContext;
@@ -17,8 +17,8 @@ export type { CollapseState };
17
17
  declare class Collapse extends BaseComponent<CollapseReactProps, CollapseState> {
18
18
  static Panel: typeof CollapsePanel;
19
19
  static propTypes: {
20
- activeKey: PropTypes.Requireable<string | any[]>;
21
- defaultActiveKey: PropTypes.Requireable<string | any[]>;
20
+ activeKey: PropTypes.Requireable<NonNullable<string | any[]>>;
21
+ defaultActiveKey: PropTypes.Requireable<NonNullable<string | any[]>>;
22
22
  accordion: PropTypes.Requireable<boolean>;
23
23
  onChange: PropTypes.Requireable<(...args: any[]) => any>;
24
24
  expandIcon: PropTypes.Requireable<PropTypes.ReactNodeLike>;
@@ -26,7 +26,7 @@ declare class Collapse extends BaseComponent<CollapseReactProps, CollapseState>
26
26
  style: PropTypes.Requireable<object>;
27
27
  className: PropTypes.Requireable<string>;
28
28
  keepDOM: PropTypes.Requireable<boolean>;
29
- motion: PropTypes.Requireable<boolean | object>;
29
+ motion: PropTypes.Requireable<NonNullable<boolean | object>>;
30
30
  expandIconPosition: PropTypes.Requireable<string>;
31
31
  };
32
32
  static defaultProps: {
@@ -17,9 +17,9 @@ export default class CollapsePanel extends PureComponent<CollapsePanelProps> {
17
17
  static propTypes: {
18
18
  itemKey: PropTypes.Requireable<string>;
19
19
  extra: PropTypes.Requireable<PropTypes.ReactNodeLike>;
20
- header: PropTypes.Requireable<PropTypes.ReactNodeLike>;
20
+ header: PropTypes.Requireable<NonNullable<PropTypes.ReactNodeLike>>;
21
21
  className: PropTypes.Requireable<string>;
22
- reCalcKey: PropTypes.Requireable<string | number>;
22
+ reCalcKey: PropTypes.Requireable<NonNullable<string | number>>;
23
23
  showArrow: PropTypes.Requireable<boolean>;
24
24
  disabled: PropTypes.Requireable<boolean>;
25
25
  };
@@ -1,8 +1,10 @@
1
- import PropTypes from 'prop-types';
2
1
  import React from 'react';
3
- import { Motion } from '../_base/base';
4
- export interface CollapsibleProps {
5
- motion?: Motion;
2
+ import type { CollapsibleAdapter, CollapsibleFoundationProps, CollapsibleFoundationState } from '@douyinfe/semi-foundation/lib/es/collapsible/foundation';
3
+ import CollapsibleFoundation from '@douyinfe/semi-foundation/lib/es/collapsible/foundation';
4
+ import BaseComponent from "../_base/baseComponent";
5
+ import '@douyinfe/semi-foundation/lib/es/collapsible/collapsible.css';
6
+ interface CollapsibleProps extends CollapsibleFoundationProps {
7
+ motion?: boolean;
6
8
  children?: React.ReactNode;
7
9
  isOpen?: boolean;
8
10
  duration?: number;
@@ -12,26 +14,37 @@ export interface CollapsibleProps {
12
14
  collapseHeight?: number;
13
15
  reCalcKey?: number | string;
14
16
  id?: string;
17
+ onMotionEnd?: () => void;
15
18
  }
16
- declare const Collapsible: {
17
- (props: CollapsibleProps): JSX.Element;
18
- propType: {
19
- motion: PropTypes.Requireable<boolean | object>;
20
- children: PropTypes.Requireable<PropTypes.ReactNodeLike>;
21
- isOpen: PropTypes.Requireable<boolean>;
22
- duration: PropTypes.Requireable<number>;
23
- keepDOM: PropTypes.Requireable<boolean>;
24
- collapseHeight: PropTypes.Requireable<number>;
25
- style: PropTypes.Requireable<object>;
26
- className: PropTypes.Requireable<string>;
27
- reCalcKey: PropTypes.Requireable<string | number>;
28
- };
29
- defaultProps: {
19
+ interface CollapsibleState extends CollapsibleFoundationState {
20
+ domInRenderTree: boolean;
21
+ domHeight: number;
22
+ visible: boolean;
23
+ isTransitioning: boolean;
24
+ }
25
+ declare class Collapsible extends BaseComponent<CollapsibleProps, CollapsibleState> {
26
+ static defaultProps: {
30
27
  isOpen: boolean;
31
28
  duration: number;
32
29
  motion: boolean;
33
30
  keepDOM: boolean;
34
31
  collapseHeight: number;
32
+ fade: boolean;
35
33
  };
36
- };
34
+ foundation: CollapsibleFoundation;
35
+ private domRef;
36
+ private resizeObserver;
37
+ constructor(props: CollapsibleProps);
38
+ get adapter(): CollapsibleAdapter<CollapsibleProps, CollapsibleState>;
39
+ static getEntryInfo: (entry: ResizeObserverEntry) => {
40
+ isShown: boolean;
41
+ height: number;
42
+ };
43
+ componentDidMount(): void;
44
+ componentDidUpdate(prevProps: Readonly<CollapsibleProps>, prevState: Readonly<CollapsibleState>, snapshot?: any): void;
45
+ componentWillUnmount(): void;
46
+ handleResize: (entryList: ResizeObserverEntry[]) => void;
47
+ isChildrenInRenderTree: () => boolean;
48
+ render(): JSX.Element;
49
+ }
37
50
  export default Collapsible;