@douyinfe/semi-ui 2.1.1 → 2.1.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 (646) hide show
  1. package/dist/css/semi.css +50 -44
  2. package/dist/css/semi.min.css +1 -1
  3. package/dist/umd/semi-ui.js +17433 -16377
  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/_base/base.css +510 -0
  8. package/lib/cjs/_base/base.d.ts +32 -0
  9. package/lib/cjs/_base/base.js +7 -0
  10. package/lib/cjs/_base/base.scss +3 -0
  11. package/lib/cjs/_base/baseComponent.d.ts +25 -0
  12. package/lib/cjs/_base/baseComponent.js +84 -0
  13. package/lib/cjs/_base/reactUtils.d.ts +8 -0
  14. package/lib/cjs/_base/reactUtils.js +55 -0
  15. package/lib/cjs/_portal/index.d.ts +36 -0
  16. package/lib/cjs/_portal/index.js +151 -0
  17. package/lib/cjs/_utils/index.d.ts +68 -0
  18. package/lib/cjs/_utils/index.js +193 -0
  19. package/lib/cjs/anchor/anchor-context.d.ts +7 -0
  20. package/lib/cjs/anchor/anchor-context.js +18 -0
  21. package/lib/cjs/anchor/index.d.ts +93 -0
  22. package/lib/cjs/anchor/index.js +338 -0
  23. package/lib/cjs/anchor/link.d.ts +37 -0
  24. package/lib/cjs/anchor/link.js +174 -0
  25. package/lib/cjs/autoComplete/index.d.ts +167 -0
  26. package/lib/cjs/autoComplete/index.js +429 -0
  27. package/lib/cjs/avatar/avatarGroup.d.ts +22 -0
  28. package/lib/cjs/avatar/avatarGroup.js +171 -0
  29. package/lib/cjs/avatar/index.d.ts +48 -0
  30. package/lib/cjs/avatar/index.js +259 -0
  31. package/lib/cjs/avatar/interface.d.ts +31 -0
  32. package/lib/cjs/avatar/interface.js +7 -0
  33. package/lib/cjs/backtop/index.d.ts +38 -0
  34. package/lib/cjs/backtop/index.js +144 -0
  35. package/lib/cjs/badge/index.d.ts +38 -0
  36. package/lib/cjs/badge/index.js +109 -0
  37. package/lib/cjs/banner/index.d.ts +50 -0
  38. package/lib/cjs/banner/index.js +209 -0
  39. package/lib/cjs/breadcrumb/bread-context.d.ts +11 -0
  40. package/lib/cjs/breadcrumb/bread-context.js +18 -0
  41. package/lib/cjs/breadcrumb/index.d.ts +81 -0
  42. package/lib/cjs/breadcrumb/index.js +286 -0
  43. package/lib/cjs/breadcrumb/item.d.ts +53 -0
  44. package/lib/cjs/breadcrumb/item.js +250 -0
  45. package/lib/cjs/button/Button.d.ts +61 -0
  46. package/lib/cjs/button/Button.js +145 -0
  47. package/lib/cjs/button/buttonGroup.d.ts +26 -0
  48. package/lib/cjs/button/buttonGroup.js +91 -0
  49. package/lib/cjs/button/index.d.ts +37 -0
  50. package/lib/cjs/button/index.js +44 -0
  51. package/lib/cjs/button/splitButtonGroup.d.ts +12 -0
  52. package/lib/cjs/button/splitButtonGroup.js +47 -0
  53. package/lib/cjs/calendar/dayCalendar.d.ts +50 -0
  54. package/lib/cjs/calendar/dayCalendar.js +234 -0
  55. package/lib/cjs/calendar/dayCol.d.ts +41 -0
  56. package/lib/cjs/calendar/dayCol.js +211 -0
  57. package/lib/cjs/calendar/index.d.ts +42 -0
  58. package/lib/cjs/calendar/index.js +119 -0
  59. package/lib/cjs/calendar/interface.d.ts +37 -0
  60. package/lib/cjs/calendar/interface.js +7 -0
  61. package/lib/cjs/calendar/monthCalendar.d.ts +59 -0
  62. package/lib/cjs/calendar/monthCalendar.js +474 -0
  63. package/lib/cjs/calendar/rangeCalendar.d.ts +51 -0
  64. package/lib/cjs/calendar/rangeCalendar.js +329 -0
  65. package/lib/cjs/calendar/timeCol.d.ts +15 -0
  66. package/lib/cjs/calendar/timeCol.js +101 -0
  67. package/lib/cjs/calendar/weekCalendar.d.ts +52 -0
  68. package/lib/cjs/calendar/weekCalendar.js +331 -0
  69. package/lib/cjs/card/cardGroup.d.ts +27 -0
  70. package/lib/cjs/card/cardGroup.js +87 -0
  71. package/lib/cjs/card/index.d.ts +75 -0
  72. package/lib/cjs/card/index.js +224 -0
  73. package/lib/cjs/card/meta.d.ts +26 -0
  74. package/lib/cjs/card/meta.js +93 -0
  75. package/lib/cjs/cascader/index.d.ts +179 -0
  76. package/lib/cjs/cascader/index.js +994 -0
  77. package/lib/cjs/cascader/item.d.ts +72 -0
  78. package/lib/cjs/cascader/item.js +351 -0
  79. package/lib/cjs/checkbox/checkbox.d.ts +61 -0
  80. package/lib/cjs/checkbox/checkbox.js +209 -0
  81. package/lib/cjs/checkbox/checkboxGroup.d.ts +49 -0
  82. package/lib/cjs/checkbox/checkboxGroup.js +183 -0
  83. package/lib/cjs/checkbox/checkboxInner.d.ts +40 -0
  84. package/lib/cjs/checkbox/checkboxInner.js +97 -0
  85. package/lib/cjs/checkbox/context.d.ts +14 -0
  86. package/lib/cjs/checkbox/context.js +17 -0
  87. package/lib/cjs/checkbox/index.d.ts +8 -0
  88. package/lib/cjs/checkbox/index.js +29 -0
  89. package/lib/cjs/collapse/collapse-context.d.ts +13 -0
  90. package/lib/cjs/collapse/collapse-context.js +18 -0
  91. package/lib/cjs/collapse/index.d.ts +43 -0
  92. package/lib/cjs/collapse/index.js +165 -0
  93. package/lib/cjs/collapse/item.d.ts +23 -0
  94. package/lib/cjs/collapse/item.js +151 -0
  95. package/lib/cjs/collapsible/index.d.ts +36 -0
  96. package/lib/cjs/collapsible/index.js +180 -0
  97. package/lib/cjs/configProvider/context.d.ts +11 -0
  98. package/lib/cjs/configProvider/context.js +18 -0
  99. package/lib/cjs/configProvider/index.d.ts +19 -0
  100. package/lib/cjs/configProvider/index.js +83 -0
  101. package/lib/cjs/datePicker/dateInput.d.ts +81 -0
  102. package/lib/cjs/datePicker/dateInput.js +408 -0
  103. package/lib/cjs/datePicker/datePicker.d.ts +180 -0
  104. package/lib/cjs/datePicker/datePicker.js +731 -0
  105. package/lib/cjs/datePicker/footer.d.ts +11 -0
  106. package/lib/cjs/datePicker/footer.js +39 -0
  107. package/lib/cjs/datePicker/index.d.ts +11 -0
  108. package/lib/cjs/datePicker/index.js +67 -0
  109. package/lib/cjs/datePicker/month.d.ts +203 -0
  110. package/lib/cjs/datePicker/month.js +507 -0
  111. package/lib/cjs/datePicker/monthsGrid.d.ts +88 -0
  112. package/lib/cjs/datePicker/monthsGrid.js +702 -0
  113. package/lib/cjs/datePicker/navigation.d.ts +44 -0
  114. package/lib/cjs/datePicker/navigation.js +117 -0
  115. package/lib/cjs/datePicker/quickControl.d.ts +22 -0
  116. package/lib/cjs/datePicker/quickControl.js +86 -0
  117. package/lib/cjs/datePicker/yearAndMonth.d.ts +48 -0
  118. package/lib/cjs/datePicker/yearAndMonth.js +281 -0
  119. package/lib/cjs/descriptions/descriptions-context.d.ts +7 -0
  120. package/lib/cjs/descriptions/descriptions-context.js +18 -0
  121. package/lib/cjs/descriptions/index.d.ts +47 -0
  122. package/lib/cjs/descriptions/index.js +102 -0
  123. package/lib/cjs/descriptions/item.d.ts +19 -0
  124. package/lib/cjs/descriptions/item.js +89 -0
  125. package/lib/cjs/dropdown/context.d.ts +5 -0
  126. package/lib/cjs/dropdown/context.js +20 -0
  127. package/lib/cjs/dropdown/dropdownDivider.d.ts +5 -0
  128. package/lib/cjs/dropdown/dropdownDivider.js +40 -0
  129. package/lib/cjs/dropdown/dropdownItem.d.ts +47 -0
  130. package/lib/cjs/dropdown/dropdownItem.js +134 -0
  131. package/lib/cjs/dropdown/dropdownMenu.d.ts +12 -0
  132. package/lib/cjs/dropdown/dropdownMenu.js +66 -0
  133. package/lib/cjs/dropdown/dropdownTitle.d.ts +16 -0
  134. package/lib/cjs/dropdown/dropdownTitle.js +62 -0
  135. package/lib/cjs/dropdown/index.d.ts +103 -0
  136. package/lib/cjs/dropdown/index.js +286 -0
  137. package/lib/cjs/empty/index.d.ts +38 -0
  138. package/lib/cjs/empty/index.js +141 -0
  139. package/lib/cjs/form/arrayField.d.ts +33 -0
  140. package/lib/cjs/form/arrayField.js +267 -0
  141. package/lib/cjs/form/baseForm.d.ts +142 -0
  142. package/lib/cjs/form/baseForm.js +325 -0
  143. package/lib/cjs/form/context.d.ts +9 -0
  144. package/lib/cjs/form/context.js +35 -0
  145. package/lib/cjs/form/errorMessage.d.ts +25 -0
  146. package/lib/cjs/form/errorMessage.js +108 -0
  147. package/lib/cjs/form/field.d.ts +78 -0
  148. package/lib/cjs/form/field.js +116 -0
  149. package/lib/cjs/form/group.d.ts +14 -0
  150. package/lib/cjs/form/group.js +147 -0
  151. package/lib/cjs/form/hoc/withField.d.ts +12 -0
  152. package/lib/cjs/form/hoc/withField.js +554 -0
  153. package/lib/cjs/form/hoc/withFormApi.d.ts +3 -0
  154. package/lib/cjs/form/hoc/withFormApi.js +25 -0
  155. package/lib/cjs/form/hoc/withFormState.d.ts +3 -0
  156. package/lib/cjs/form/hoc/withFormState.js +25 -0
  157. package/lib/cjs/form/hooks/index.d.ts +8 -0
  158. package/lib/cjs/form/hooks/index.js +72 -0
  159. package/lib/cjs/form/hooks/useArrayFieldState.d.ts +4 -0
  160. package/lib/cjs/form/hooks/useArrayFieldState.js +21 -0
  161. package/lib/cjs/form/hooks/useFieldApi.d.ts +10 -0
  162. package/lib/cjs/form/hooks/useFieldApi.js +31 -0
  163. package/lib/cjs/form/hooks/useFieldState.d.ts +6 -0
  164. package/lib/cjs/form/hooks/useFieldState.js +40 -0
  165. package/lib/cjs/form/hooks/useFormApi.d.ts +1 -0
  166. package/lib/cjs/form/hooks/useFormApi.js +17 -0
  167. package/lib/cjs/form/hooks/useFormState.d.ts +2 -0
  168. package/lib/cjs/form/hooks/useFormState.js +21 -0
  169. package/lib/cjs/form/hooks/useFormUpdater.d.ts +1 -0
  170. package/lib/cjs/form/hooks/useFormUpdater.js +17 -0
  171. package/lib/cjs/form/hooks/useStateWithGetter.d.ts +1 -0
  172. package/lib/cjs/form/hooks/useStateWithGetter.js +27 -0
  173. package/lib/cjs/form/index.d.ts +22 -0
  174. package/lib/cjs/form/index.js +117 -0
  175. package/lib/cjs/form/interface.d.ts +111 -0
  176. package/lib/cjs/form/interface.js +36 -0
  177. package/lib/cjs/form/label.d.ts +39 -0
  178. package/lib/cjs/form/label.js +91 -0
  179. package/lib/cjs/form/section.d.ts +17 -0
  180. package/lib/cjs/form/section.js +60 -0
  181. package/lib/cjs/form/slot.d.ts +14 -0
  182. package/lib/cjs/form/slot.js +204 -0
  183. package/lib/cjs/grid/col.d.ts +55 -0
  184. package/lib/cjs/grid/col.js +146 -0
  185. package/lib/cjs/grid/index.d.ts +5 -0
  186. package/lib/cjs/grid/index.js +27 -0
  187. package/lib/cjs/grid/row.d.ts +58 -0
  188. package/lib/cjs/grid/row.js +207 -0
  189. package/lib/cjs/iconButton/index.d.ts +46 -0
  190. package/lib/cjs/iconButton/index.js +153 -0
  191. package/lib/cjs/icons/index.d.ts +3 -0
  192. package/lib/cjs/icons/index.js +16 -0
  193. package/lib/cjs/index.d.ts +79 -0
  194. package/lib/cjs/index.js +782 -0
  195. package/lib/cjs/input/index.d.ts +170 -0
  196. package/lib/cjs/input/index.js +503 -0
  197. package/lib/cjs/input/inputGroup.d.ts +38 -0
  198. package/lib/cjs/input/inputGroup.js +163 -0
  199. package/lib/cjs/input/textarea.d.ts +44 -0
  200. package/lib/cjs/input/textarea.js +341 -0
  201. package/lib/cjs/inputNumber/index.d.ts +108 -0
  202. package/lib/cjs/inputNumber/index.js +530 -0
  203. package/lib/cjs/layout/Sider.d.ts +38 -0
  204. package/lib/cjs/layout/Sider.js +160 -0
  205. package/lib/cjs/layout/index.d.ts +43 -0
  206. package/lib/cjs/layout/index.js +174 -0
  207. package/lib/cjs/layout/layout-context.d.ts +9 -0
  208. package/lib/cjs/layout/layout-context.js +25 -0
  209. package/lib/cjs/list/index.d.ts +59 -0
  210. package/lib/cjs/list/index.js +189 -0
  211. package/lib/cjs/list/item.d.ts +36 -0
  212. package/lib/cjs/list/item.js +151 -0
  213. package/lib/cjs/list/list-context.d.ts +12 -0
  214. package/lib/cjs/list/list-context.js +18 -0
  215. package/lib/cjs/locale/context.d.ts +4 -0
  216. package/lib/cjs/locale/context.js +18 -0
  217. package/lib/cjs/locale/interface.d.ts +151 -0
  218. package/lib/cjs/locale/interface.js +7 -0
  219. package/lib/cjs/locale/localeConsumer.d.ts +21 -0
  220. package/lib/cjs/locale/localeConsumer.js +80 -0
  221. package/lib/cjs/locale/localeProvider.d.ts +18 -0
  222. package/lib/cjs/locale/localeProvider.js +54 -0
  223. package/lib/cjs/locale/source/ar.d.ts +3 -0
  224. package/lib/cjs/locale/source/ar.js +165 -0
  225. package/lib/cjs/locale/source/en_GB.d.ts +3 -0
  226. package/lib/cjs/locale/source/en_GB.js +165 -0
  227. package/lib/cjs/locale/source/en_US.d.ts +3 -0
  228. package/lib/cjs/locale/source/en_US.js +165 -0
  229. package/lib/cjs/locale/source/id_ID.d.ts +3 -0
  230. package/lib/cjs/locale/source/id_ID.js +165 -0
  231. package/lib/cjs/locale/source/ja_JP.d.ts +3 -0
  232. package/lib/cjs/locale/source/ja_JP.js +166 -0
  233. package/lib/cjs/locale/source/ko_KR.d.ts +3 -0
  234. package/lib/cjs/locale/source/ko_KR.js +166 -0
  235. package/lib/cjs/locale/source/ms_MY.d.ts +3 -0
  236. package/lib/cjs/locale/source/ms_MY.js +165 -0
  237. package/lib/cjs/locale/source/pt_BR.d.ts +3 -0
  238. package/lib/cjs/locale/source/pt_BR.js +173 -0
  239. package/lib/cjs/locale/source/ru_RU.d.ts +3 -0
  240. package/lib/cjs/locale/source/ru_RU.js +168 -0
  241. package/lib/cjs/locale/source/th_TH.d.ts +3 -0
  242. package/lib/cjs/locale/source/th_TH.js +169 -0
  243. package/lib/cjs/locale/source/tr_TR.d.ts +3 -0
  244. package/lib/cjs/locale/source/tr_TR.js +168 -0
  245. package/lib/cjs/locale/source/vi_VN.d.ts +3 -0
  246. package/lib/cjs/locale/source/vi_VN.js +168 -0
  247. package/lib/cjs/locale/source/zh_CN.d.ts +3 -0
  248. package/lib/cjs/locale/source/zh_CN.js +166 -0
  249. package/lib/cjs/locale/source/zh_TW.d.ts +3 -0
  250. package/lib/cjs/locale/source/zh_TW.js +166 -0
  251. package/lib/cjs/modal/ConfirmModal.d.ts +4 -0
  252. package/lib/cjs/modal/ConfirmModal.js +137 -0
  253. package/lib/cjs/modal/Modal.d.ts +133 -0
  254. package/lib/cjs/modal/Modal.js +437 -0
  255. package/lib/cjs/modal/ModalContent.d.ts +38 -0
  256. package/lib/cjs/modal/ModalContent.js +337 -0
  257. package/lib/cjs/modal/confirm.d.ts +215 -0
  258. package/lib/cjs/modal/confirm.js +132 -0
  259. package/lib/cjs/modal/index.d.ts +8 -0
  260. package/lib/cjs/modal/index.js +18 -0
  261. package/lib/cjs/modal/useModal/HookModal.d.ts +14 -0
  262. package/lib/cjs/modal/useModal/HookModal.js +79 -0
  263. package/lib/cjs/modal/useModal/index.d.ts +24 -0
  264. package/lib/cjs/modal/useModal/index.js +80 -0
  265. package/lib/cjs/motions/Rotate.d.ts +23 -0
  266. package/lib/cjs/motions/Rotate.js +87 -0
  267. package/lib/cjs/navigation/CollapseButton.d.ts +10 -0
  268. package/lib/cjs/navigation/CollapseButton.js +58 -0
  269. package/lib/cjs/navigation/Footer.d.ts +27 -0
  270. package/lib/cjs/navigation/Footer.js +107 -0
  271. package/lib/cjs/navigation/Header.d.ts +34 -0
  272. package/lib/cjs/navigation/Header.js +99 -0
  273. package/lib/cjs/navigation/Item.d.ts +70 -0
  274. package/lib/cjs/navigation/Item.js +296 -0
  275. package/lib/cjs/navigation/OpenIconTransition.d.ts +14 -0
  276. package/lib/cjs/navigation/OpenIconTransition.js +90 -0
  277. package/lib/cjs/navigation/SubNav.d.ts +103 -0
  278. package/lib/cjs/navigation/SubNav.js +440 -0
  279. package/lib/cjs/navigation/SubNavTransition.d.ts +17 -0
  280. package/lib/cjs/navigation/SubNavTransition.js +90 -0
  281. package/lib/cjs/navigation/index.d.ts +145 -0
  282. package/lib/cjs/navigation/index.js +446 -0
  283. package/lib/cjs/navigation/nav-context.d.ts +7 -0
  284. package/lib/cjs/navigation/nav-context.js +22 -0
  285. package/lib/cjs/notification/NoticeTransition.d.ts +10 -0
  286. package/lib/cjs/notification/NoticeTransition.js +90 -0
  287. package/lib/cjs/notification/index.d.ts +52 -0
  288. package/lib/cjs/notification/index.js +316 -0
  289. package/lib/cjs/notification/notice.d.ts +51 -0
  290. package/lib/cjs/notification/notice.js +240 -0
  291. package/lib/cjs/notification/useNotification/HookNotice.d.ts +7 -0
  292. package/lib/cjs/notification/useNotification/HookNotice.js +72 -0
  293. package/lib/cjs/notification/useNotification/index.d.ts +10 -0
  294. package/lib/cjs/notification/useNotification/index.js +161 -0
  295. package/lib/cjs/overflowList/index.d.ts +87 -0
  296. package/lib/cjs/overflowList/index.js +296 -0
  297. package/lib/cjs/overflowList/intersectionObserver.d.ts +34 -0
  298. package/lib/cjs/overflowList/intersectionObserver.js +121 -0
  299. package/lib/cjs/pagination/index.d.ts +99 -0
  300. package/lib/cjs/pagination/index.js +481 -0
  301. package/lib/cjs/popconfirm/index.d.ts +90 -0
  302. package/lib/cjs/popconfirm/index.js +262 -0
  303. package/lib/cjs/popover/Arrow.d.ts +9 -0
  304. package/lib/cjs/popover/Arrow.js +86 -0
  305. package/lib/cjs/popover/index.d.ts +89 -0
  306. package/lib/cjs/popover/index.js +155 -0
  307. package/lib/cjs/progress/index.d.ts +68 -0
  308. package/lib/cjs/progress/index.js +303 -0
  309. package/lib/cjs/radio/context.d.ts +22 -0
  310. package/lib/cjs/radio/context.js +18 -0
  311. package/lib/cjs/radio/index.d.ts +10 -0
  312. package/lib/cjs/radio/index.js +29 -0
  313. package/lib/cjs/radio/radio.d.ts +79 -0
  314. package/lib/cjs/radio/radio.js +225 -0
  315. package/lib/cjs/radio/radioGroup.d.ts +64 -0
  316. package/lib/cjs/radio/radioGroup.js +189 -0
  317. package/lib/cjs/radio/radioInner.d.ts +45 -0
  318. package/lib/cjs/radio/radioInner.js +140 -0
  319. package/lib/cjs/rating/index.d.ts +91 -0
  320. package/lib/cjs/rating/index.js +312 -0
  321. package/lib/cjs/rating/item.d.ts +38 -0
  322. package/lib/cjs/rating/item.js +143 -0
  323. package/lib/cjs/resizeObserver/index.d.ts +35 -0
  324. package/lib/cjs/resizeObserver/index.js +118 -0
  325. package/lib/cjs/scrollList/index.d.ts +26 -0
  326. package/lib/cjs/scrollList/index.js +82 -0
  327. package/lib/cjs/scrollList/scrollItem.d.ts +105 -0
  328. package/lib/cjs/scrollList/scrollItem.js +557 -0
  329. package/lib/cjs/select/index.d.ts +234 -0
  330. package/lib/cjs/select/index.js +1117 -0
  331. package/lib/cjs/select/option.d.ts +50 -0
  332. package/lib/cjs/select/option.js +211 -0
  333. package/lib/cjs/select/optionGroup.d.ts +20 -0
  334. package/lib/cjs/select/optionGroup.js +56 -0
  335. package/lib/cjs/select/utils.d.ts +9 -0
  336. package/lib/cjs/select/utils.js +122 -0
  337. package/lib/cjs/select/virtualRow.d.ts +8 -0
  338. package/lib/cjs/select/virtualRow.js +25 -0
  339. package/lib/cjs/sideSheet/SideSheetContent.d.ts +35 -0
  340. package/lib/cjs/sideSheet/SideSheetContent.js +195 -0
  341. package/lib/cjs/sideSheet/SideSheetTransition.d.ts +12 -0
  342. package/lib/cjs/sideSheet/SideSheetTransition.js +120 -0
  343. package/lib/cjs/sideSheet/index.d.ts +59 -0
  344. package/lib/cjs/sideSheet/index.js +303 -0
  345. package/lib/cjs/skeleton/index.d.ts +33 -0
  346. package/lib/cjs/skeleton/index.js +101 -0
  347. package/lib/cjs/skeleton/item.d.ts +34 -0
  348. package/lib/cjs/skeleton/item.js +134 -0
  349. package/lib/cjs/slider/index.d.ts +30 -0
  350. package/lib/cjs/slider/index.js +649 -0
  351. package/lib/cjs/space/index.d.ts +33 -0
  352. package/lib/cjs/space/index.js +120 -0
  353. package/lib/cjs/space/utils.d.ts +5 -0
  354. package/lib/cjs/space/utils.js +54 -0
  355. package/lib/cjs/spin/icon.d.ts +10 -0
  356. package/lib/cjs/spin/icon.js +103 -0
  357. package/lib/cjs/spin/index.d.ts +63 -0
  358. package/lib/cjs/spin/index.js +145 -0
  359. package/lib/cjs/steps/basicStep.d.ts +46 -0
  360. package/lib/cjs/steps/basicStep.js +180 -0
  361. package/lib/cjs/steps/basicSteps.d.ts +41 -0
  362. package/lib/cjs/steps/basicSteps.js +127 -0
  363. package/lib/cjs/steps/context.d.ts +6 -0
  364. package/lib/cjs/steps/context.js +17 -0
  365. package/lib/cjs/steps/fillStep.d.ts +34 -0
  366. package/lib/cjs/steps/fillStep.js +142 -0
  367. package/lib/cjs/steps/fillSteps.d.ts +35 -0
  368. package/lib/cjs/steps/fillSteps.js +127 -0
  369. package/lib/cjs/steps/index.d.ts +39 -0
  370. package/lib/cjs/steps/index.js +104 -0
  371. package/lib/cjs/steps/navStep.d.ts +30 -0
  372. package/lib/cjs/steps/navStep.js +99 -0
  373. package/lib/cjs/steps/navSteps.d.ts +33 -0
  374. package/lib/cjs/steps/navSteps.js +103 -0
  375. package/lib/cjs/steps/step.d.ts +13 -0
  376. package/lib/cjs/steps/step.js +58 -0
  377. package/lib/cjs/switch/index.d.ts +48 -0
  378. package/lib/cjs/switch/index.js +159 -0
  379. package/lib/cjs/table/Body/BaseRow.d.ts +125 -0
  380. package/lib/cjs/table/Body/BaseRow.js +359 -0
  381. package/lib/cjs/table/Body/ExpandedRow.d.ts +63 -0
  382. package/lib/cjs/table/Body/ExpandedRow.js +180 -0
  383. package/lib/cjs/table/Body/SectionRow.d.ts +67 -0
  384. package/lib/cjs/table/Body/SectionRow.js +250 -0
  385. package/lib/cjs/table/Body/index.d.ts +70 -0
  386. package/lib/cjs/table/Body/index.js +873 -0
  387. package/lib/cjs/table/ColGroup.d.ts +24 -0
  388. package/lib/cjs/table/ColGroup.js +78 -0
  389. package/lib/cjs/table/Column.d.ts +36 -0
  390. package/lib/cjs/table/Column.js +32 -0
  391. package/lib/cjs/table/ColumnFilter.d.ts +34 -0
  392. package/lib/cjs/table/ColumnFilter.js +192 -0
  393. package/lib/cjs/table/ColumnSelection.d.ts +40 -0
  394. package/lib/cjs/table/ColumnSelection.js +101 -0
  395. package/lib/cjs/table/ColumnShape.d.ts +32 -0
  396. package/lib/cjs/table/ColumnShape.js +47 -0
  397. package/lib/cjs/table/ColumnSorter.d.ts +25 -0
  398. package/lib/cjs/table/ColumnSorter.js +77 -0
  399. package/lib/cjs/table/CustomExpandIcon.d.ts +36 -0
  400. package/lib/cjs/table/CustomExpandIcon.js +102 -0
  401. package/lib/cjs/table/HeadTable.d.ts +20 -0
  402. package/lib/cjs/table/HeadTable.js +129 -0
  403. package/lib/cjs/table/ResizableHeaderCell.d.ts +13 -0
  404. package/lib/cjs/table/ResizableHeaderCell.js +75 -0
  405. package/lib/cjs/table/ResizableTable.d.ts +5 -0
  406. package/lib/cjs/table/ResizableTable.js +217 -0
  407. package/lib/cjs/table/Table.d.ts +305 -0
  408. package/lib/cjs/table/Table.js +1576 -0
  409. package/lib/cjs/table/TableCell.d.ts +124 -0
  410. package/lib/cjs/table/TableCell.js +404 -0
  411. package/lib/cjs/table/TableContextProvider.d.ts +3 -0
  412. package/lib/cjs/table/TableContextProvider.js +61 -0
  413. package/lib/cjs/table/TableHeader.d.ts +28 -0
  414. package/lib/cjs/table/TableHeader.js +192 -0
  415. package/lib/cjs/table/TableHeaderRow.d.ts +59 -0
  416. package/lib/cjs/table/TableHeaderRow.js +218 -0
  417. package/lib/cjs/table/TablePagination.d.ts +23 -0
  418. package/lib/cjs/table/TablePagination.js +69 -0
  419. package/lib/cjs/table/getColumns.d.ts +8 -0
  420. package/lib/cjs/table/getColumns.js +54 -0
  421. package/lib/cjs/table/index.d.ts +100 -0
  422. package/lib/cjs/table/index.js +85 -0
  423. package/lib/cjs/table/interface.d.ts +290 -0
  424. package/lib/cjs/table/interface.js +7 -0
  425. package/lib/cjs/table/table-context.d.ts +19 -0
  426. package/lib/cjs/table/table-context.js +25 -0
  427. package/lib/cjs/table/utils.d.ts +42 -0
  428. package/lib/cjs/table/utils.js +144 -0
  429. package/lib/cjs/tabs/TabBar.d.ts +43 -0
  430. package/lib/cjs/tabs/TabBar.js +317 -0
  431. package/lib/cjs/tabs/TabPane.d.ts +28 -0
  432. package/lib/cjs/tabs/TabPane.js +165 -0
  433. package/lib/cjs/tabs/TabPaneTransition.d.ts +4 -0
  434. package/lib/cjs/tabs/TabPaneTransition.js +119 -0
  435. package/lib/cjs/tabs/index.d.ts +52 -0
  436. package/lib/cjs/tabs/index.js +439 -0
  437. package/lib/cjs/tabs/interface.d.ts +77 -0
  438. package/lib/cjs/tabs/interface.js +7 -0
  439. package/lib/cjs/tabs/tabs-context.d.ts +4 -0
  440. package/lib/cjs/tabs/tabs-context.js +18 -0
  441. package/lib/cjs/tag/group.d.ts +40 -0
  442. package/lib/cjs/tag/group.js +165 -0
  443. package/lib/cjs/tag/index.d.ts +33 -0
  444. package/lib/cjs/tag/index.js +219 -0
  445. package/lib/cjs/tag/interface.d.ts +30 -0
  446. package/lib/cjs/tag/interface.js +7 -0
  447. package/lib/cjs/tagInput/index.d.ts +133 -0
  448. package/lib/cjs/tagInput/index.js +429 -0
  449. package/lib/cjs/timePicker/Combobox.d.ts +79 -0
  450. package/lib/cjs/timePicker/Combobox.js +345 -0
  451. package/lib/cjs/timePicker/PanelShape.d.ts +6 -0
  452. package/lib/cjs/timePicker/PanelShape.js +21 -0
  453. package/lib/cjs/timePicker/TimeInput.d.ts +66 -0
  454. package/lib/cjs/timePicker/TimeInput.js +226 -0
  455. package/lib/cjs/timePicker/TimePicker.d.ts +197 -0
  456. package/lib/cjs/timePicker/TimePicker.js +503 -0
  457. package/lib/cjs/timePicker/TimeShape.d.ts +10 -0
  458. package/lib/cjs/timePicker/TimeShape.js +26 -0
  459. package/lib/cjs/timePicker/index.d.ts +95 -0
  460. package/lib/cjs/timePicker/index.js +51 -0
  461. package/lib/cjs/timeline/index.d.ts +31 -0
  462. package/lib/cjs/timeline/index.js +145 -0
  463. package/lib/cjs/timeline/item.d.ts +30 -0
  464. package/lib/cjs/timeline/item.js +94 -0
  465. package/lib/cjs/toast/ToastTransition.d.ts +7 -0
  466. package/lib/cjs/toast/ToastTransition.js +71 -0
  467. package/lib/cjs/toast/index.d.ts +200 -0
  468. package/lib/cjs/toast/index.js +281 -0
  469. package/lib/cjs/toast/toast.d.ts +45 -0
  470. package/lib/cjs/toast/toast.js +185 -0
  471. package/lib/cjs/toast/useToast/HookToast.d.ts +7 -0
  472. package/lib/cjs/toast/useToast/HookToast.js +72 -0
  473. package/lib/cjs/toast/useToast/index.d.ts +9 -0
  474. package/lib/cjs/toast/useToast/index.js +107 -0
  475. package/lib/cjs/tooltip/ArrowBoundingShape.d.ts +8 -0
  476. package/lib/cjs/tooltip/ArrowBoundingShape.js +22 -0
  477. package/lib/cjs/tooltip/TooltipStyledTransition.d.ts +9 -0
  478. package/lib/cjs/tooltip/TooltipStyledTransition.js +54 -0
  479. package/lib/cjs/tooltip/TriangleArrow.d.ts +5 -0
  480. package/lib/cjs/tooltip/TriangleArrow.js +54 -0
  481. package/lib/cjs/tooltip/TriangleArrowVertical.d.ts +5 -0
  482. package/lib/cjs/tooltip/TriangleArrowVertical.js +53 -0
  483. package/lib/cjs/tooltip/index.d.ts +150 -0
  484. package/lib/cjs/tooltip/index.js +711 -0
  485. package/lib/cjs/transfer/index.d.ts +164 -0
  486. package/lib/cjs/transfer/index.js +668 -0
  487. package/lib/cjs/tree/autoSizer.d.ts +28 -0
  488. package/lib/cjs/tree/autoSizer.js +115 -0
  489. package/lib/cjs/tree/collapse.d.ts +29 -0
  490. package/lib/cjs/tree/collapse.js +164 -0
  491. package/lib/cjs/tree/index.d.ts +135 -0
  492. package/lib/cjs/tree/index.js +799 -0
  493. package/lib/cjs/tree/interface.d.ts +119 -0
  494. package/lib/cjs/tree/interface.js +7 -0
  495. package/lib/cjs/tree/nodeList.d.ts +9 -0
  496. package/lib/cjs/tree/nodeList.js +141 -0
  497. package/lib/cjs/tree/treeContext.d.ts +40 -0
  498. package/lib/cjs/tree/treeContext.js +18 -0
  499. package/lib/cjs/tree/treeNode.d.ts +54 -0
  500. package/lib/cjs/tree/treeNode.js +531 -0
  501. package/lib/cjs/tree/treeUtil.d.ts +1 -0
  502. package/lib/cjs/tree/treeUtil.js +30 -0
  503. package/lib/cjs/treeSelect/index.d.ts +223 -0
  504. package/lib/cjs/treeSelect/index.js +1284 -0
  505. package/lib/cjs/trigger/index.d.ts +36 -0
  506. package/lib/cjs/trigger/index.js +71 -0
  507. package/lib/cjs/typography/base.d.ts +176 -0
  508. package/lib/cjs/typography/base.js +720 -0
  509. package/lib/cjs/typography/copyable.d.ts +43 -0
  510. package/lib/cjs/typography/copyable.js +151 -0
  511. package/lib/cjs/typography/index.d.ts +17 -0
  512. package/lib/cjs/typography/index.js +48 -0
  513. package/lib/cjs/typography/interface.d.ts +25 -0
  514. package/lib/cjs/typography/interface.js +7 -0
  515. package/lib/cjs/typography/paragraph.d.ts +56 -0
  516. package/lib/cjs/typography/paragraph.js +83 -0
  517. package/lib/cjs/typography/text.d.ts +59 -0
  518. package/lib/cjs/typography/text.js +73 -0
  519. package/lib/cjs/typography/title.d.ts +61 -0
  520. package/lib/cjs/typography/title.js +97 -0
  521. package/lib/cjs/typography/typography.d.ts +22 -0
  522. package/lib/cjs/typography/typography.js +82 -0
  523. package/lib/cjs/typography/util.d.ts +2 -0
  524. package/lib/cjs/typography/util.js +155 -0
  525. package/lib/cjs/upload/fileCard.d.ts +47 -0
  526. package/lib/cjs/upload/fileCard.js +388 -0
  527. package/lib/cjs/upload/index.d.ts +161 -0
  528. package/lib/cjs/upload/index.js +552 -0
  529. package/lib/cjs/upload/interface.d.ts +56 -0
  530. package/lib/cjs/upload/interface.js +7 -0
  531. package/lib/es/_utils/index.js +7 -5
  532. package/lib/es/anchor/index.js +8 -6
  533. package/lib/es/autoComplete/index.js +10 -9
  534. package/lib/es/avatar/avatarGroup.js +6 -4
  535. package/lib/es/badge/index.js +4 -3
  536. package/lib/es/breadcrumb/index.js +7 -4
  537. package/lib/es/breadcrumb/item.js +5 -3
  538. package/lib/es/calendar/dayCalendar.js +2 -2
  539. package/lib/es/calendar/monthCalendar.js +2 -2
  540. package/lib/es/calendar/rangeCalendar.js +2 -2
  541. package/lib/es/calendar/weekCalendar.js +2 -2
  542. package/lib/es/card/index.js +5 -3
  543. package/lib/es/cascader/index.d.ts +1 -1
  544. package/lib/es/cascader/index.js +24 -19
  545. package/lib/es/cascader/item.js +2 -2
  546. package/lib/es/checkbox/checkbox.js +8 -6
  547. package/lib/es/checkbox/checkboxGroup.js +2 -2
  548. package/lib/es/checkbox/checkboxInner.js +4 -3
  549. package/lib/es/collapse/index.js +2 -2
  550. package/lib/es/datePicker/datePicker.js +26 -20
  551. package/lib/es/datePicker/footer.js +3 -3
  552. package/lib/es/datePicker/index.d.ts +1 -1
  553. package/lib/es/datePicker/month.js +11 -7
  554. package/lib/es/datePicker/monthsGrid.js +4 -3
  555. package/lib/es/datePicker/navigation.js +6 -6
  556. package/lib/es/datePicker/yearAndMonth.js +4 -3
  557. package/lib/es/descriptions/index.js +2 -2
  558. package/lib/es/dropdown/dropdownItem.js +4 -4
  559. package/lib/es/dropdown/index.js +4 -3
  560. package/lib/es/form/arrayField.js +7 -4
  561. package/lib/es/form/baseForm.d.ts +1 -1
  562. package/lib/es/form/baseForm.js +6 -6
  563. package/lib/es/form/field.d.ts +1 -1
  564. package/lib/es/form/group.js +2 -2
  565. package/lib/es/form/slot.js +7 -5
  566. package/lib/es/iconButton/index.js +3 -3
  567. package/lib/es/input/index.js +17 -15
  568. package/lib/es/input/inputGroup.js +3 -3
  569. package/lib/es/input/textarea.js +13 -11
  570. package/lib/es/inputNumber/index.d.ts +1 -2
  571. package/lib/es/inputNumber/index.js +13 -12
  572. package/lib/es/list/index.js +3 -3
  573. package/lib/es/list/item.js +3 -3
  574. package/lib/es/locale/localeConsumer.js +5 -3
  575. package/lib/es/modal/Modal.js +5 -5
  576. package/lib/es/modal/ModalContent.js +3 -3
  577. package/lib/es/modal/confirm.js +2 -2
  578. package/lib/es/modal/useModal/HookModal.js +3 -2
  579. package/lib/es/navigation/CollapseButton.js +2 -2
  580. package/lib/es/navigation/Item.js +7 -6
  581. package/lib/es/navigation/SubNav.js +4 -3
  582. package/lib/es/navigation/index.js +12 -10
  583. package/lib/es/notification/notice.js +5 -5
  584. package/lib/es/overflowList/index.js +13 -8
  585. package/lib/es/overflowList/intersectionObserver.js +4 -3
  586. package/lib/es/pagination/index.js +4 -4
  587. package/lib/es/popconfirm/index.js +8 -7
  588. package/lib/es/popover/Arrow.js +7 -4
  589. package/lib/es/popover/index.js +2 -2
  590. package/lib/es/radio/radio.js +3 -3
  591. package/lib/es/radio/radioGroup.js +2 -2
  592. package/lib/es/radio/radioInner.js +2 -2
  593. package/lib/es/scrollList/scrollItem.js +26 -13
  594. package/lib/es/select/index.js +24 -19
  595. package/lib/es/select/option.js +3 -3
  596. package/lib/es/sideSheet/SideSheetContent.js +2 -2
  597. package/lib/es/sideSheet/index.js +2 -2
  598. package/lib/es/slider/index.js +7 -6
  599. package/lib/es/space/index.js +10 -8
  600. package/lib/es/steps/basicStep.js +2 -2
  601. package/lib/es/steps/fillStep.js +2 -2
  602. package/lib/es/steps/index.js +2 -2
  603. package/lib/es/steps/navStep.js +2 -2
  604. package/lib/es/switch/index.js +4 -4
  605. package/lib/es/table/Body/BaseRow.js +25 -15
  606. package/lib/es/table/Body/ExpandedRow.js +9 -6
  607. package/lib/es/table/Body/SectionRow.js +4 -3
  608. package/lib/es/table/Body/index.js +58 -31
  609. package/lib/es/table/ColGroup.js +4 -3
  610. package/lib/es/table/ColumnFilter.js +3 -3
  611. package/lib/es/table/ColumnSelection.js +2 -2
  612. package/lib/es/table/ColumnSorter.js +2 -2
  613. package/lib/es/table/CustomExpandIcon.js +8 -7
  614. package/lib/es/table/HeadTable.js +7 -4
  615. package/lib/es/table/ResizableTable.js +17 -9
  616. package/lib/es/table/Table.js +69 -44
  617. package/lib/es/table/TableCell.js +24 -17
  618. package/lib/es/table/TableHeader.js +5 -4
  619. package/lib/es/table/TableHeaderRow.js +24 -11
  620. package/lib/es/table/TablePagination.js +7 -4
  621. package/lib/es/table/getColumns.js +5 -4
  622. package/lib/es/table/table-context.js +4 -3
  623. package/lib/es/table/utils.js +2 -2
  624. package/lib/es/tabs/TabBar.d.ts +1 -1
  625. package/lib/es/tabs/TabBar.js +3 -3
  626. package/lib/es/tabs/TabPaneTransition.js +5 -5
  627. package/lib/es/tabs/index.js +8 -6
  628. package/lib/es/tabs/interface.d.ts +1 -1
  629. package/lib/es/tagInput/index.js +24 -19
  630. package/lib/es/timePicker/Combobox.js +4 -4
  631. package/lib/es/timePicker/TimeInput.js +8 -8
  632. package/lib/es/timePicker/TimePicker.js +9 -8
  633. package/lib/es/timePicker/index.js +2 -2
  634. package/lib/es/toast/toast.js +3 -3
  635. package/lib/es/tooltip/index.js +33 -17
  636. package/lib/es/transfer/index.js +16 -11
  637. package/lib/es/tree/autoSizer.js +4 -4
  638. package/lib/es/tree/collapse.js +2 -2
  639. package/lib/es/tree/index.js +12 -9
  640. package/lib/es/tree/nodeList.js +2 -2
  641. package/lib/es/tree/treeNode.js +7 -5
  642. package/lib/es/tree/treeUtil.js +4 -3
  643. package/lib/es/treeSelect/index.js +26 -19
  644. package/lib/es/typography/base.js +17 -8
  645. package/lib/es/upload/index.js +14 -14
  646. package/package.json +12 -10
@@ -0,0 +1,873 @@
1
+ "use strict";
2
+
3
+ var _Object$defineProperty = require("@babel/runtime-corejs3/core-js-stable/object/define-property");
4
+
5
+ var _interopRequireDefault = require("@babel/runtime-corejs3/helpers/interopRequireDefault");
6
+
7
+ _Object$defineProperty(exports, "__esModule", {
8
+ value: true
9
+ });
10
+
11
+ exports.default = void 0;
12
+
13
+ var _indexOf = _interopRequireDefault(require("@babel/runtime-corejs3/core-js-stable/instance/index-of"));
14
+
15
+ var _getOwnPropertySymbols = _interopRequireDefault(require("@babel/runtime-corejs3/core-js-stable/object/get-own-property-symbols"));
16
+
17
+ var _assign = _interopRequireDefault(require("@babel/runtime-corejs3/core-js-stable/object/assign"));
18
+
19
+ var _keys = _interopRequireDefault(require("@babel/runtime-corejs3/core-js-stable/object/keys"));
20
+
21
+ var _map = _interopRequireDefault(require("@babel/runtime-corejs3/core-js-stable/instance/map"));
22
+
23
+ var _map2 = _interopRequireDefault(require("@babel/runtime-corejs3/core-js-stable/map"));
24
+
25
+ var _isArray = _interopRequireDefault(require("@babel/runtime-corejs3/core-js-stable/array/is-array"));
26
+
27
+ var _forEach = _interopRequireDefault(require("@babel/runtime-corejs3/core-js-stable/instance/for-each"));
28
+
29
+ var _set = _interopRequireDefault(require("@babel/runtime-corejs3/core-js-stable/set"));
30
+
31
+ var _setTimeout2 = _interopRequireDefault(require("@babel/runtime-corejs3/core-js-stable/set-timeout"));
32
+
33
+ var _isNull2 = _interopRequireDefault(require("lodash/isNull"));
34
+
35
+ var _pick2 = _interopRequireDefault(require("lodash/pick"));
36
+
37
+ var _isEqual2 = _interopRequireDefault(require("lodash/isEqual"));
38
+
39
+ var _each2 = _interopRequireDefault(require("lodash/each"));
40
+
41
+ var _isMap2 = _interopRequireDefault(require("lodash/isMap"));
42
+
43
+ var _size2 = _interopRequireDefault(require("lodash/size"));
44
+
45
+ var _get2 = _interopRequireDefault(require("lodash/get"));
46
+
47
+ var _react = _interopRequireDefault(require("react"));
48
+
49
+ var _propTypes = _interopRequireDefault(require("prop-types"));
50
+
51
+ var _classnames = _interopRequireDefault(require("classnames"));
52
+
53
+ var _reactWindow = require("react-window");
54
+
55
+ var _utils = require("@douyinfe/semi-foundation/lib/cjs/table/utils");
56
+
57
+ var _bodyFoundation = _interopRequireDefault(require("@douyinfe/semi-foundation/lib/cjs/table/bodyFoundation"));
58
+
59
+ var _constants = require("@douyinfe/semi-foundation/lib/cjs/table/constants");
60
+
61
+ var _baseComponent = _interopRequireDefault(require("../../_base/baseComponent"));
62
+
63
+ var _utils2 = require("../utils");
64
+
65
+ var _ColGroup = _interopRequireDefault(require("../ColGroup"));
66
+
67
+ var _BaseRow = _interopRequireDefault(require("./BaseRow"));
68
+
69
+ var _ExpandedRow = _interopRequireDefault(require("./ExpandedRow"));
70
+
71
+ var _SectionRow = _interopRequireDefault(require("./SectionRow"));
72
+
73
+ var _TableHeader = _interopRequireDefault(require("../TableHeader"));
74
+
75
+ var _context2 = _interopRequireDefault(require("../../configProvider/context"));
76
+
77
+ var _tableContext = _interopRequireDefault(require("../table-context"));
78
+
79
+ var __rest = void 0 && (void 0).__rest || function (s, e) {
80
+ var t = {};
81
+
82
+ for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p) && (0, _indexOf.default)(e).call(e, p) < 0) t[p] = s[p];
83
+
84
+ if (s != null && typeof _getOwnPropertySymbols.default === "function") for (var i = 0, p = (0, _getOwnPropertySymbols.default)(s); i < p.length; i++) {
85
+ if ((0, _indexOf.default)(e).call(e, p[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i])) t[p[i]] = s[p[i]];
86
+ }
87
+ return t;
88
+ };
89
+ /* eslint-disable eqeqeq */
90
+
91
+ /* eslint-disable @typescript-eslint/member-ordering */
92
+
93
+ /* eslint-disable max-len */
94
+
95
+
96
+ class Body extends _baseComponent.default {
97
+ constructor(props, context) {
98
+ var _this;
99
+
100
+ super(props);
101
+ _this = this;
102
+
103
+ this.forwardRef = node => {
104
+ const {
105
+ forwardedRef
106
+ } = this.props;
107
+ this.ref.current = node;
108
+ this.foundation.observeBodyResize(node);
109
+
110
+ if (typeof forwardedRef === 'function') {
111
+ forwardedRef(node);
112
+ } else if (forwardedRef && typeof forwardedRef === 'object') {
113
+ forwardedRef.current = node;
114
+ }
115
+ };
116
+
117
+ this.itemSize = index => {
118
+ const {
119
+ virtualized,
120
+ size: tableSize
121
+ } = this.props;
122
+ const {
123
+ virtualizedData
124
+ } = this.state;
125
+ const virtualizedItem = (0, _get2.default)(virtualizedData, index);
126
+ const defaultConfig = (0, _utils.getDefaultVirtualizedRowConfig)(tableSize, virtualizedItem.sectionRow);
127
+ const itemSize = (0, _get2.default)(virtualized, 'itemSize', defaultConfig.height);
128
+ let realSize = itemSize;
129
+
130
+ if (typeof itemSize === 'function') {
131
+ realSize = itemSize(index, {
132
+ expandedRow: (0, _get2.default)(virtualizedItem, 'expandedRow', false),
133
+ sectionRow: (0, _get2.default)(virtualizedItem, 'sectionRow', false)
134
+ });
135
+ }
136
+
137
+ if (realSize < defaultConfig.minHeight) {
138
+ _utils2.logger.warn("The computed real `itemSize` cannot be less than ".concat(defaultConfig.minHeight));
139
+ }
140
+
141
+ return realSize;
142
+ };
143
+
144
+ this.itemKey = (index, data) => (0, _get2.default)(data, [index, 'key'], index);
145
+
146
+ this.handleRowClick = (rowKey, e, expand) => {
147
+ const {
148
+ handleRowExpanded
149
+ } = this.context;
150
+ handleRowExpanded(!expand, rowKey, e);
151
+ };
152
+
153
+ this.handleVirtualizedScroll = function () {
154
+ let props = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};
155
+ const onScroll = (0, _get2.default)(_this.props.virtualized, 'onScroll');
156
+
157
+ if (typeof onScroll === 'function') {
158
+ onScroll(props);
159
+ }
160
+ };
161
+ /**
162
+ * @param {MouseEvent<HTMLDivElement>} e
163
+ */
164
+
165
+
166
+ this.handleVirtualizedBodyScroll = e => {
167
+ const {
168
+ handleBodyScroll
169
+ } = this.props;
170
+ const newScrollLeft = (0, _get2.default)(e, 'nativeEvent.target.scrollLeft');
171
+ const newScrollTop = (0, _get2.default)(e, 'nativeEvent.target.scrollTop');
172
+
173
+ if (newScrollTop === this.state.cache.virtualizedScrollTop) {
174
+ this.handleVirtualizedScroll({
175
+ horizontalScrolling: true
176
+ });
177
+ }
178
+
179
+ this.state.cache.virtualizedScrollLeft = newScrollLeft;
180
+ this.state.cache.virtualizedScrollTop = newScrollTop;
181
+
182
+ if (typeof handleBodyScroll === 'function') {
183
+ handleBodyScroll(e);
184
+ }
185
+ };
186
+
187
+ this.getVirtualizedRowWidth = () => {
188
+ const {
189
+ getCellWidths
190
+ } = this.context;
191
+ const {
192
+ columns
193
+ } = this.props;
194
+ const cellWidths = getCellWidths(columns);
195
+ const rowWidth = (0, _utils.arrayAdd)(cellWidths, 0, (0, _size2.default)(columns));
196
+ return rowWidth;
197
+ };
198
+
199
+ this.renderVirtualizedRow = options => {
200
+ const {
201
+ index,
202
+ style
203
+ } = options;
204
+ const {
205
+ virtualizedData,
206
+ cachedExpandBtnShouldInRow
207
+ } = this.state;
208
+ const {
209
+ flattenedColumns
210
+ } = this.context;
211
+ const virtualizedItem = (0, _get2.default)(virtualizedData, [index], {}); // eslint-disable-next-line @typescript-eslint/no-unused-vars
212
+
213
+ const {
214
+ key,
215
+ parentKeys,
216
+ expandedRow,
217
+ sectionRow
218
+ } = virtualizedItem,
219
+ rest = __rest(virtualizedItem, ["key", "parentKeys", "expandedRow", "sectionRow"]);
220
+
221
+ const rowWidth = this.getVirtualizedRowWidth();
222
+ const expandBtnShouldInRow = cachedExpandBtnShouldInRow;
223
+ const props = (0, _assign.default)((0, _assign.default)((0, _assign.default)((0, _assign.default)({}, this.props), {
224
+ style: (0, _assign.default)((0, _assign.default)({}, style), {
225
+ width: rowWidth
226
+ })
227
+ }), rest), {
228
+ columns: flattenedColumns,
229
+ index,
230
+ expandBtnShouldInRow
231
+ }); // eslint-disable-next-line no-nested-ternary
232
+
233
+ return sectionRow ? this.renderSectionRow(props) : expandedRow ? this.renderExpandedRow(props) : this.renderBaseRow(props);
234
+ }; // virtualized List innerElementType
235
+
236
+
237
+ this.renderTbody = /*#__PURE__*/_react.default.forwardRef(function () {
238
+ let props = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};
239
+ let ref = arguments.length > 1 ? arguments[1] : undefined;
240
+ return /*#__PURE__*/_react.default.createElement("div", (0, _assign.default)({}, props, {
241
+ onScroll: function () {
242
+ if (props.onScroll) {
243
+ props.onScroll(...arguments);
244
+ }
245
+ },
246
+ // eslint-disable-next-line react/no-this-in-sfc,react/destructuring-assignment
247
+ className: (0, _classnames.default)(props.className, "".concat(_this.props.prefixCls, "-tbody")),
248
+ style: (0, _assign.default)({}, props.style),
249
+ ref: ref
250
+ }));
251
+ }); // virtualized List outerElementType
252
+
253
+ this.renderOuter = /*#__PURE__*/_react.default.forwardRef((props, ref) => {
254
+ const {
255
+ children
256
+ } = props,
257
+ rest = __rest(props, ["children"]); // eslint-disable-next-line react/no-this-in-sfc
258
+
259
+
260
+ const {
261
+ handleWheel,
262
+ prefixCls,
263
+ emptySlot,
264
+ dataSource
265
+ } = this.props; // eslint-disable-next-line react/no-this-in-sfc
266
+
267
+ const tableWidth = this.getVirtualizedRowWidth();
268
+ const tableCls = (0, _classnames.default)("".concat(prefixCls), "".concat(prefixCls, "-fixed"));
269
+ return /*#__PURE__*/_react.default.createElement("div", (0, _assign.default)({}, rest, {
270
+ ref: ref,
271
+ onWheel: function () {
272
+ if (handleWheel) {
273
+ handleWheel(...arguments);
274
+ }
275
+
276
+ if (rest.onWheel) {
277
+ rest.onWheel(...arguments);
278
+ }
279
+ },
280
+ onScroll: function () {
281
+ // eslint-disable-next-line react/no-this-in-sfc
282
+ _this.handleVirtualizedBodyScroll(...arguments);
283
+
284
+ if (rest.onScroll) {
285
+ rest.onScroll(...arguments);
286
+ }
287
+ }
288
+ }), /*#__PURE__*/_react.default.createElement("div", {
289
+ style: {
290
+ width: tableWidth
291
+ },
292
+ className: tableCls
293
+ }, (0, _size2.default)(dataSource) === 0 ? emptySlot : children));
294
+ });
295
+
296
+ this.onItemsRendered = props => {
297
+ if (this.state.cache.virtualizedScrollLeft && this.ref.current) {
298
+ this.ref.current.scrollLeft = this.state.cache.virtualizedScrollLeft;
299
+ }
300
+ };
301
+
302
+ this.renderVirtualizedBody = direction => {
303
+ const {
304
+ scroll,
305
+ prefixCls,
306
+ virtualized,
307
+ anyColumnFixed,
308
+ columns
309
+ } = this.props;
310
+ const {
311
+ virtualizedData
312
+ } = this.state;
313
+ const {
314
+ getCellWidths
315
+ } = this.context;
316
+ const cellWidths = getCellWidths(columns);
317
+
318
+ if (!(0, _size2.default)(cellWidths)) {
319
+ return null;
320
+ }
321
+
322
+ const rawY = (0, _get2.default)(scroll, 'y');
323
+ const yIsNumber = typeof rawY === 'number';
324
+ const y = yIsNumber ? rawY : 600;
325
+
326
+ if (!yIsNumber) {
327
+ _utils2.logger.warn('You have to specific "scroll.y" which must be a number for table virtualization!');
328
+ }
329
+
330
+ const listStyle = {
331
+ width: '100%',
332
+ height: y,
333
+ overflowX: 'auto',
334
+ overflowY: 'auto'
335
+ };
336
+ const wrapCls = (0, _classnames.default)("".concat(prefixCls, "-body"));
337
+ return /*#__PURE__*/_react.default.createElement(_reactWindow.VariableSizeList, (0, _assign.default)({}, virtualized, {
338
+ initialScrollOffset: this.state.cache.virtualizedScrollTop,
339
+ onScroll: this.handleVirtualizedScroll,
340
+ onItemsRendered: this.onItemsRendered,
341
+ ref: this.listRef,
342
+ className: wrapCls,
343
+ outerRef: this.forwardRef,
344
+ height: listStyle.height,
345
+ width: listStyle.width,
346
+ itemData: virtualizedData,
347
+ itemSize: this.itemSize,
348
+ itemCount: virtualizedData.length,
349
+ itemKey: this.itemKey,
350
+ innerElementType: this.renderTbody,
351
+ outerElementType: this.renderOuter,
352
+ style: (0, _assign.default)((0, _assign.default)({}, listStyle), {
353
+ direction
354
+ }),
355
+ direction: direction
356
+ }), this.renderVirtualizedRow);
357
+ };
358
+ /**
359
+ * render group title
360
+ * @param {*} props
361
+ */
362
+
363
+
364
+ this.renderSectionRow = function () {
365
+ var _context;
366
+
367
+ let props = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {
368
+ groupKey: undefined
369
+ };
370
+ const {
371
+ dataSource,
372
+ rowKey,
373
+ group,
374
+ groupKey,
375
+ index
376
+ } = props;
377
+ const sectionRowPickKeys = (0, _keys.default)(_SectionRow.default.propTypes);
378
+ const sectionRowProps = (0, _pick2.default)(props, sectionRowPickKeys);
379
+ const {
380
+ handleRowExpanded
381
+ } = _this.context;
382
+ return /*#__PURE__*/_react.default.createElement(_SectionRow.default, (0, _assign.default)({}, sectionRowProps, {
383
+ record: {
384
+ groupKey,
385
+ records: (0, _map.default)(_context = [...group]).call(_context, recordKey => (0, _utils.getRecord)(dataSource, recordKey, rowKey))
386
+ },
387
+ index: index,
388
+ onExpand: handleRowExpanded,
389
+ data: dataSource,
390
+ key: groupKey || index
391
+ }));
392
+ };
393
+
394
+ this.renderExpandedRow = function () {
395
+ let props = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {
396
+ renderExpandIcon: () => null
397
+ };
398
+ const {
399
+ style,
400
+ components,
401
+ renderExpandIcon,
402
+ expandedRowRender,
403
+ record,
404
+ columns,
405
+ expanded,
406
+ index,
407
+ rowKey,
408
+ virtualized
409
+ } = props;
410
+ let key = (0, _utils.getRecordKey)(record, rowKey);
411
+
412
+ if (key == null) {
413
+ key = index;
414
+ }
415
+
416
+ const {
417
+ flattenedColumns,
418
+ getCellWidths
419
+ } = _this.context;
420
+ const cellWidths = getCellWidths(flattenedColumns);
421
+ return /*#__PURE__*/_react.default.createElement(_ExpandedRow.default, {
422
+ style: style,
423
+ components: components,
424
+ renderExpandIcon: renderExpandIcon,
425
+ expandedRowRender: expandedRowRender,
426
+ record: record,
427
+ columns: columns,
428
+ expanded: expanded,
429
+ index: index,
430
+ virtualized: virtualized,
431
+ key: (0, _utils.genExpandedRowKey)(key),
432
+ cellWidths: cellWidths
433
+ });
434
+ };
435
+ /**
436
+ * render grouped rows
437
+ * @returns {ReactNode[]} renderedRows
438
+ */
439
+
440
+
441
+ this.renderGroupedRows = () => {
442
+ const {
443
+ groups,
444
+ dataSource: data,
445
+ rowKey,
446
+ expandedRowKeys
447
+ } = this.props;
448
+ const {
449
+ flattenedColumns
450
+ } = this.context;
451
+ const groupsInData = new _map2.default();
452
+ const renderedRows = [];
453
+
454
+ if (groups != null && (0, _isArray.default)(data) && data.length) {
455
+ (0, _forEach.default)(data).call(data, record => {
456
+ const recordKey = (0, _utils.getRecordKey)(record, rowKey);
457
+ (0, _forEach.default)(groups).call(groups, (group, key) => {
458
+ if (group.has(recordKey)) {
459
+ if (!groupsInData.has(key)) {
460
+ groupsInData.set(key, new _set.default([]));
461
+ }
462
+
463
+ groupsInData.get(key).add(recordKey);
464
+ return false;
465
+ }
466
+
467
+ return undefined;
468
+ });
469
+ });
470
+ }
471
+
472
+ let index = -1;
473
+ (0, _forEach.default)(groupsInData).call(groupsInData, (group, groupKey) => {
474
+ // Calculate the expanded state of the group
475
+ const expanded = (0, _utils.isExpanded)(expandedRowKeys, groupKey); // Render the title of the group
476
+
477
+ renderedRows.push(this.renderSectionRow((0, _assign.default)((0, _assign.default)({}, this.props), {
478
+ columns: flattenedColumns,
479
+ index: ++index,
480
+ group,
481
+ groupKey,
482
+ expanded
483
+ }))); // Render the grouped content when the group is expanded
484
+
485
+ if (expanded) {
486
+ const dataInGroup = [];
487
+ (0, _forEach.default)(group).call(group, recordKey => {
488
+ const record = (0, _utils.getRecord)(data, recordKey, rowKey);
489
+
490
+ if (record != null) {
491
+ dataInGroup.push(record);
492
+ }
493
+ });
494
+ /**
495
+ * Render the contents of the group row
496
+ */
497
+
498
+ renderedRows.push(this.renderBodyRows(dataInGroup));
499
+ }
500
+ });
501
+ return renderedRows;
502
+ };
503
+
504
+ this.renderBody = direction => {
505
+ const {
506
+ scroll,
507
+ prefixCls,
508
+ columns,
509
+ components,
510
+ fixed,
511
+ handleWheel,
512
+ headerRef,
513
+ handleBodyScroll,
514
+ anyColumnFixed,
515
+ showHeader,
516
+ emptySlot,
517
+ includeHeader,
518
+ dataSource,
519
+ onScroll,
520
+ groups
521
+ } = this.props;
522
+ const x = (0, _get2.default)(scroll, 'x');
523
+ const y = (0, _get2.default)(scroll, 'y');
524
+ const bodyStyle = {};
525
+ const tableStyle = {};
526
+ const Table = (0, _get2.default)(components, 'body.outer', 'table');
527
+ const BodyWrapper = (0, _get2.default)(components, 'body.wrapper') || 'tbody';
528
+
529
+ if (y) {
530
+ bodyStyle.maxHeight = y;
531
+ }
532
+
533
+ if (x) {
534
+ tableStyle.width = x;
535
+ }
536
+
537
+ if (anyColumnFixed && (0, _size2.default)(dataSource)) {
538
+ // Auto is better than scroll. For example, when there is only scrollY, the scroll axis is not displayed horizontally.
539
+ bodyStyle.overflow = 'auto'; // Fix weird webkit render bug
540
+
541
+ bodyStyle.WebkitTransform = 'translate3d (0, 0, 0)';
542
+ }
543
+
544
+ const colgroup = /*#__PURE__*/_react.default.createElement(_ColGroup.default, {
545
+ components: (0, _get2.default)(components, 'body'),
546
+ columns: columns,
547
+ prefixCls: prefixCls
548
+ }); // const tableBody = this.renderBody();
549
+
550
+
551
+ const wrapCls = "".concat(prefixCls, "-body");
552
+
553
+ const baseTable = /*#__PURE__*/_react.default.createElement("div", {
554
+ key: "bodyTable",
555
+ className: wrapCls,
556
+ style: bodyStyle,
557
+ ref: this.forwardRef,
558
+ onWheel: handleWheel,
559
+ onScroll: handleBodyScroll
560
+ }, /*#__PURE__*/_react.default.createElement(Table, {
561
+ style: tableStyle,
562
+ className: (0, _classnames.default)(prefixCls, {
563
+ ["".concat(prefixCls, "-fixed")]: anyColumnFixed
564
+ })
565
+ }, colgroup, includeHeader && showHeader ? /*#__PURE__*/_react.default.createElement(_TableHeader.default, (0, _assign.default)({}, this.props, {
566
+ ref: headerRef,
567
+ components: components,
568
+ columns: columns
569
+ })) : null, /*#__PURE__*/_react.default.createElement(BodyWrapper, {
570
+ className: "".concat(prefixCls, "-tbody"),
571
+ onScroll: onScroll
572
+ }, (0, _isMap2.default)(groups) ? this.renderGroupedRows() : this.renderBodyRows(dataSource))), emptySlot);
573
+
574
+ if (fixed && columns.length) {
575
+ return /*#__PURE__*/_react.default.createElement("div", {
576
+ key: "bodyTable",
577
+ className: "".concat(prefixCls, "-body-outer")
578
+ }, baseTable);
579
+ }
580
+
581
+ return baseTable;
582
+ };
583
+
584
+ this.ref = /*#__PURE__*/_react.default.createRef();
585
+ this.state = {
586
+ virtualizedData: [],
587
+ cache: {
588
+ virtualizedScrollTop: null,
589
+ virtualizedScrollLeft: null
590
+ },
591
+ cachedExpandBtnShouldInRow: null,
592
+ cachedExpandRelatedProps: []
593
+ };
594
+ this.listRef = /*#__PURE__*/_react.default.createRef();
595
+ const {
596
+ getVirtualizedListRef
597
+ } = context;
598
+
599
+ if (getVirtualizedListRef) {
600
+ if (props.virtualized) {
601
+ getVirtualizedListRef(this.listRef);
602
+ } else {
603
+ console.warn('getVirtualizedListRef only works with virtualized. ' + 'See https://semi.design/zh-CN/show/table for more information.');
604
+ }
605
+ }
606
+
607
+ this.foundation = new _bodyFoundation.default(this.adapter);
608
+ this.observer = null;
609
+ }
610
+
611
+ get adapter() {
612
+ return (0, _assign.default)((0, _assign.default)({}, super.adapter), {
613
+ setVirtualizedData: (virtualizedData, cb) => this.setState({
614
+ virtualizedData
615
+ }, cb),
616
+ setCachedExpandBtnShouldInRow: cachedExpandBtnShouldInRow => this.setState({
617
+ cachedExpandBtnShouldInRow
618
+ }),
619
+ setCachedExpandRelatedProps: cachedExpandRelatedProps => this.setState({
620
+ cachedExpandRelatedProps
621
+ }),
622
+ observeBodyResize: bodyWrapDOM => {
623
+ const {
624
+ setBodyHasScrollbar
625
+ } = this.context; // Callback when the size of the body dom content changes, notifying Table.jsx whether the bodyHasScrollBar exists
626
+
627
+ const resizeCallback = () => {
628
+ const update = () => {
629
+ const {
630
+ offsetWidth,
631
+ clientWidth
632
+ } = bodyWrapDOM;
633
+ const bodyHasScrollBar = clientWidth < offsetWidth;
634
+ setBodyHasScrollbar(bodyHasScrollBar);
635
+ };
636
+
637
+ const requestAnimationFrame = window.requestAnimationFrame || _setTimeout2.default;
638
+ requestAnimationFrame(update);
639
+ }; // Monitor body dom resize
640
+
641
+
642
+ if (bodyWrapDOM) {
643
+ if ((0, _get2.default)(window, 'ResizeObserver')) {
644
+ if (this.observer) {
645
+ this.observer.unobserve(bodyWrapDOM);
646
+ this.observer = null;
647
+ }
648
+
649
+ this.observer = new ResizeObserver(resizeCallback);
650
+ this.observer.observe(bodyWrapDOM);
651
+ } else {
652
+ _utils2.logger.warn('The current browser does not support ResizeObserver,' + 'and the table may be misaligned after plugging and unplugging the mouse and keyboard.' + 'You can try to refresh it.');
653
+ }
654
+ }
655
+ },
656
+ unobserveBodyResize: () => {
657
+ const bodyWrapDOM = this.ref.current;
658
+
659
+ if (this.observer) {
660
+ this.observer.unobserve(bodyWrapDOM);
661
+ this.observer = null;
662
+ }
663
+ }
664
+ });
665
+ }
666
+
667
+ componentDidUpdate(prevProps, prevState) {
668
+ const {
669
+ virtualized,
670
+ dataSource,
671
+ expandedRowKeys,
672
+ columns,
673
+ scroll
674
+ } = this.props;
675
+
676
+ if (virtualized) {
677
+ if (prevProps.dataSource !== dataSource || prevProps.expandedRowKeys !== expandedRowKeys || prevProps.columns !== columns) {
678
+ this.foundation.initVirtualizedData();
679
+ }
680
+ }
681
+
682
+ const expandRelatedProps = _constants.strings.EXPAND_RELATED_PROPS;
683
+ const newExpandRelatedProps = (0, _map.default)(expandRelatedProps).call(expandRelatedProps, key => (0, _get2.default)(this.props, key, undefined));
684
+
685
+ if (!(0, _isEqual2.default)(newExpandRelatedProps, prevState.cachedExpandRelatedProps)) {
686
+ this.foundation.initExpandBtnShouldInRow(newExpandRelatedProps);
687
+ }
688
+
689
+ const scrollY = (0, _get2.default)(scroll, 'y');
690
+ const bodyWrapDOM = this.ref.current;
691
+
692
+ if (scrollY && scrollY !== (0, _get2.default)(prevProps, 'scroll.y')) {
693
+ this.foundation.observeBodyResize(bodyWrapDOM);
694
+ }
695
+ }
696
+ /**
697
+ * render base row
698
+ * @param {*} props
699
+ * @returns
700
+ */
701
+
702
+
703
+ renderBaseRow() {
704
+ let props = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};
705
+ const {
706
+ rowKey,
707
+ columns,
708
+ expandedRowKeys,
709
+ rowExpandable,
710
+ record,
711
+ index,
712
+ level,
713
+ expandBtnShouldInRow,
714
+ // effect the display of the indent span
715
+ selectedRowKeysSet,
716
+ disabledRowKeysSet,
717
+ expandRowByClick
718
+ } = props;
719
+ const baseRowPickKeys = (0, _keys.default)(_BaseRow.default.propTypes);
720
+ const baseRowProps = (0, _pick2.default)(props, baseRowPickKeys);
721
+ let key = (0, _utils.getRecordKey)(record, rowKey);
722
+
723
+ if (key == null) {
724
+ key = index;
725
+ }
726
+
727
+ const expanded = (0, _utils.isExpanded)(expandedRowKeys, key);
728
+ const expandable = rowExpandable && rowExpandable(record);
729
+ const expandableProps = {
730
+ level: undefined,
731
+ expanded
732
+ };
733
+
734
+ if (expandable || expandBtnShouldInRow) {
735
+ expandableProps.level = level;
736
+ expandableProps.expandableRow = expandable;
737
+
738
+ if (expandRowByClick) {
739
+ expandableProps.onRowClick = this.handleRowClick;
740
+ }
741
+ }
742
+
743
+ const selectionProps = {
744
+ selected: (0, _utils.isSelected)(selectedRowKeysSet, key),
745
+ disabled: (0, _utils.isDisabled)(disabledRowKeysSet, key)
746
+ };
747
+ const {
748
+ getCellWidths
749
+ } = this.context;
750
+ const cellWidths = getCellWidths(columns, null, true);
751
+ return /*#__PURE__*/_react.default.createElement(_BaseRow.default, (0, _assign.default)({}, baseRowProps, expandableProps, selectionProps, {
752
+ key: key,
753
+ rowKey: key,
754
+ cellWidths: cellWidths
755
+ }));
756
+ }
757
+
758
+ renderBodyRows() {
759
+ let data = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : [];
760
+ let level = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : 0;
761
+ let renderedRows = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : [];
762
+ const {
763
+ rowKey,
764
+ expandedRowRender,
765
+ expandedRowKeys,
766
+ childrenRecordName,
767
+ rowExpandable
768
+ } = this.props;
769
+ const hasExpandedRowRender = typeof expandedRowRender === 'function';
770
+ const expandBtnShouldInRow = this.state.cachedExpandBtnShouldInRow;
771
+ const {
772
+ flattenedColumns
773
+ } = this.context;
774
+ (0, _each2.default)(data, (record, index) => {
775
+ let key = (0, _utils.getRecordKey)(record, rowKey);
776
+
777
+ if (key == null) {
778
+ key = index;
779
+ }
780
+
781
+ const recordChildren = (0, _get2.default)(record, childrenRecordName);
782
+ const recordHasChildren = Boolean((0, _isArray.default)(recordChildren) && recordChildren.length);
783
+ renderedRows.push(this.renderBaseRow((0, _assign.default)((0, _assign.default)({}, this.props), {
784
+ columns: flattenedColumns,
785
+ expandBtnShouldInRow,
786
+ record,
787
+ key,
788
+ level,
789
+ index
790
+ }))); // render expand row
791
+
792
+ const expanded = (0, _utils.isExpanded)(expandedRowKeys, key);
793
+
794
+ if (hasExpandedRowRender && rowExpandable && rowExpandable(record) && expanded) {
795
+ const currentExpandRow = this.renderExpandedRow((0, _assign.default)((0, _assign.default)({}, this.props), {
796
+ columns: flattenedColumns,
797
+ level,
798
+ index,
799
+ record,
800
+ expanded
801
+ }));
802
+ /**
803
+ * If expandedRowRender returns falsy, this expanded row will not be rendered
804
+ * Render an empty div before v1.19.7
805
+ */
806
+
807
+ if (!(0, _isNull2.default)(currentExpandRow)) {
808
+ renderedRows.push(currentExpandRow);
809
+ }
810
+ } // render tree data
811
+
812
+
813
+ if (recordHasChildren && expanded) {
814
+ const nestedRows = this.renderBodyRows(recordChildren, level + 1);
815
+ renderedRows.push(...nestedRows);
816
+ }
817
+ });
818
+ return renderedRows;
819
+ }
820
+
821
+ render() {
822
+ const {
823
+ virtualized
824
+ } = this.props;
825
+ return /*#__PURE__*/_react.default.createElement(_context2.default.Consumer, null, _ref => {
826
+ let {
827
+ direction
828
+ } = _ref;
829
+ return virtualized ? this.renderVirtualizedBody(direction) : this.renderBody(direction);
830
+ });
831
+ }
832
+
833
+ }
834
+
835
+ Body.contextType = _tableContext.default;
836
+ Body.propTypes = {
837
+ anyColumnFixed: _propTypes.default.bool,
838
+ childrenRecordName: _propTypes.default.string,
839
+ columns: _propTypes.default.array,
840
+ components: _propTypes.default.object,
841
+ dataSource: _propTypes.default.array,
842
+ disabledRowKeysSet: _propTypes.default.instanceOf(_set.default).isRequired,
843
+ emptySlot: _propTypes.default.node,
844
+ expandRowByClick: _propTypes.default.bool,
845
+ expandedRowKeys: _propTypes.default.array,
846
+ expandedRowRender: _propTypes.default.func,
847
+ fixed: _propTypes.default.oneOfType([_propTypes.default.string, _propTypes.default.bool]),
848
+ forwardedRef: _propTypes.default.oneOfType([_propTypes.default.object, _propTypes.default.func]),
849
+ groups: _propTypes.default.instanceOf(_map2.default),
850
+ handleBodyScroll: _propTypes.default.func,
851
+ handleWheel: _propTypes.default.func,
852
+ headerRef: _propTypes.default.oneOfType([_propTypes.default.object, _propTypes.default.func]),
853
+ includeHeader: _propTypes.default.bool,
854
+ onScroll: _propTypes.default.func,
855
+ prefixCls: _propTypes.default.string,
856
+ renderExpandIcon: _propTypes.default.func,
857
+ rowExpandable: _propTypes.default.func,
858
+ rowKey: _propTypes.default.oneOfType([_propTypes.default.string, _propTypes.default.bool, _propTypes.default.func]),
859
+ scroll: _propTypes.default.object,
860
+ selectedRowKeysSet: _propTypes.default.instanceOf(_set.default).isRequired,
861
+ showHeader: _propTypes.default.bool,
862
+ size: _propTypes.default.string,
863
+ store: _propTypes.default.object,
864
+ virtualized: _propTypes.default.oneOfType([_propTypes.default.bool, _propTypes.default.object])
865
+ };
866
+
867
+ var _default = /*#__PURE__*/_react.default.forwardRef(function TableBody(props, ref) {
868
+ return /*#__PURE__*/_react.default.createElement(Body, (0, _assign.default)({}, props, {
869
+ forwardedRef: ref
870
+ }));
871
+ });
872
+
873
+ exports.default = _default;