@douyinfe/semi-ui 2.19.0-alpha.8 → 2.19.0

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 (515) hide show
  1. package/_utils/index.ts +9 -5
  2. package/anchor/index.tsx +39 -7
  3. package/anchor/link.tsx +11 -2
  4. package/avatar/index.tsx +3 -1
  5. package/calendar/_story/calendar.stories.js +20 -3
  6. package/checkbox/checkbox.tsx +3 -1
  7. package/dist/css/semi.css +7 -17
  8. package/dist/css/semi.min.css +1 -1
  9. package/dist/umd/semi-ui.js +2987 -12956
  10. package/dist/umd/semi-ui.js.map +1 -1
  11. package/dist/umd/semi-ui.min.js +1 -1
  12. package/dist/umd/semi-ui.min.js.map +1 -1
  13. package/dropdown/index.tsx +5 -1
  14. package/form/interface.ts +1 -1
  15. package/getBabelConfig.js +1 -13
  16. package/lib/cjs/_base/base.css +1 -0
  17. package/lib/cjs/_base/base.js +1 -3
  18. package/lib/cjs/_base/baseComponent.js +4 -9
  19. package/lib/cjs/_base/reactUtils.js +4 -9
  20. package/lib/cjs/_portal/index.js +4 -9
  21. package/lib/cjs/_utils/hooks/usePrevFocus.js +3 -6
  22. package/lib/cjs/_utils/index.js +13 -25
  23. package/lib/cjs/anchor/anchor-context.js +3 -6
  24. package/lib/cjs/anchor/index.d.ts +4 -0
  25. package/lib/cjs/anchor/index.js +50 -36
  26. package/lib/cjs/anchor/link.d.ts +2 -0
  27. package/lib/cjs/anchor/link.js +15 -18
  28. package/lib/cjs/autoComplete/index.js +13 -30
  29. package/lib/cjs/autoComplete/option.js +12 -25
  30. package/lib/cjs/avatar/avatarGroup.js +18 -49
  31. package/lib/cjs/avatar/index.d.ts +1 -0
  32. package/lib/cjs/avatar/index.js +25 -48
  33. package/lib/cjs/avatar/interface.js +1 -3
  34. package/lib/cjs/backtop/index.js +8 -17
  35. package/lib/cjs/badge/index.js +14 -31
  36. package/lib/cjs/banner/index.js +5 -14
  37. package/lib/cjs/breadcrumb/bread-context.js +3 -6
  38. package/lib/cjs/breadcrumb/index.js +13 -34
  39. package/lib/cjs/breadcrumb/item.js +8 -21
  40. package/lib/cjs/button/Button.js +13 -32
  41. package/lib/cjs/button/buttonGroup.js +12 -41
  42. package/lib/cjs/button/index.js +7 -12
  43. package/lib/cjs/button/splitButtonGroup.js +3 -6
  44. package/lib/cjs/calendar/dayCalendar.js +20 -37
  45. package/lib/cjs/calendar/dayCol.js +10 -25
  46. package/lib/cjs/calendar/index.js +9 -25
  47. package/lib/cjs/calendar/interface.js +1 -3
  48. package/lib/cjs/calendar/monthCalendar.js +20 -45
  49. package/lib/cjs/calendar/rangeCalendar.js +19 -44
  50. package/lib/cjs/calendar/timeCol.js +10 -25
  51. package/lib/cjs/calendar/weekCalendar.js +19 -44
  52. package/lib/cjs/card/cardGroup.js +9 -22
  53. package/lib/cjs/card/index.js +12 -33
  54. package/lib/cjs/card/meta.js +9 -22
  55. package/lib/cjs/carousel/CarouselArrow.js +8 -17
  56. package/lib/cjs/carousel/CarouselIndicator.js +11 -26
  57. package/lib/cjs/carousel/index.js +10 -29
  58. package/lib/cjs/carousel/interface.js +1 -3
  59. package/lib/cjs/cascader/index.js +37 -68
  60. package/lib/cjs/cascader/item.js +24 -49
  61. package/lib/cjs/checkbox/checkbox.d.ts +1 -0
  62. package/lib/cjs/checkbox/checkbox.js +9 -17
  63. package/lib/cjs/checkbox/checkboxGroup.js +13 -34
  64. package/lib/cjs/checkbox/checkboxInner.js +6 -15
  65. package/lib/cjs/checkbox/context.js +3 -6
  66. package/lib/cjs/checkbox/index.js +4 -8
  67. package/lib/cjs/collapse/collapse-context.js +3 -6
  68. package/lib/cjs/collapse/index.js +12 -29
  69. package/lib/cjs/collapse/item.js +9 -22
  70. package/lib/cjs/collapsible/index.js +7 -16
  71. package/lib/cjs/configProvider/context.js +3 -6
  72. package/lib/cjs/configProvider/index.js +7 -16
  73. package/lib/cjs/datePicker/dateInput.js +15 -34
  74. package/lib/cjs/datePicker/datePicker.js +22 -45
  75. package/lib/cjs/datePicker/footer.js +3 -6
  76. package/lib/cjs/datePicker/index.js +9 -20
  77. package/lib/cjs/datePicker/insetInput.js +4 -9
  78. package/lib/cjs/datePicker/month.js +15 -26
  79. package/lib/cjs/datePicker/monthsGrid.js +13 -32
  80. package/lib/cjs/datePicker/navigation.js +5 -12
  81. package/lib/cjs/datePicker/quickControl.js +18 -31
  82. package/lib/cjs/datePicker/yearAndMonth.js +13 -30
  83. package/lib/cjs/descriptions/descriptions-context.js +3 -6
  84. package/lib/cjs/descriptions/index.js +8 -23
  85. package/lib/cjs/descriptions/item.js +7 -18
  86. package/lib/cjs/divider/index.js +9 -22
  87. package/lib/cjs/dropdown/context.js +3 -6
  88. package/lib/cjs/dropdown/dropdownDivider.js +3 -6
  89. package/lib/cjs/dropdown/dropdownItem.js +8 -21
  90. package/lib/cjs/dropdown/dropdownMenu.js +8 -17
  91. package/lib/cjs/dropdown/dropdownTitle.js +5 -12
  92. package/lib/cjs/dropdown/index.js +17 -26
  93. package/lib/cjs/empty/index.js +5 -14
  94. package/lib/cjs/form/arrayField.js +28 -57
  95. package/lib/cjs/form/baseForm.d.ts +1 -1
  96. package/lib/cjs/form/baseForm.js +18 -43
  97. package/lib/cjs/form/context.js +3 -6
  98. package/lib/cjs/form/errorMessage.js +7 -18
  99. package/lib/cjs/form/field.d.ts +1 -1
  100. package/lib/cjs/form/field.js +3 -6
  101. package/lib/cjs/form/group.js +16 -31
  102. package/lib/cjs/form/hoc/withField.js +26 -53
  103. package/lib/cjs/form/hoc/withFormApi.js +4 -9
  104. package/lib/cjs/form/hoc/withFormState.js +4 -9
  105. package/lib/cjs/form/hooks/index.js +11 -20
  106. package/lib/cjs/form/hooks/useArrayFieldState.js +1 -4
  107. package/lib/cjs/form/hooks/useFieldApi.js +3 -6
  108. package/lib/cjs/form/hooks/useFieldState.js +6 -15
  109. package/lib/cjs/form/hooks/useFormApi.js +1 -4
  110. package/lib/cjs/form/hooks/useFormState.js +1 -4
  111. package/lib/cjs/form/hooks/useFormUpdater.js +1 -4
  112. package/lib/cjs/form/hooks/useStateWithGetter.js +1 -4
  113. package/lib/cjs/form/index.js +15 -34
  114. package/lib/cjs/form/interface.d.ts +1 -1
  115. package/lib/cjs/form/interface.js +3 -10
  116. package/lib/cjs/form/label.js +5 -12
  117. package/lib/cjs/form/section.js +5 -12
  118. package/lib/cjs/form/slot.js +18 -35
  119. package/lib/cjs/grid/col.js +20 -37
  120. package/lib/cjs/grid/index.js +6 -10
  121. package/lib/cjs/grid/row.js +18 -45
  122. package/lib/cjs/iconButton/index.js +13 -30
  123. package/lib/cjs/icons/index.js +3 -6
  124. package/lib/cjs/index.js +94 -189
  125. package/lib/cjs/input/index.js +13 -26
  126. package/lib/cjs/input/inputGroup.js +11 -32
  127. package/lib/cjs/input/textarea.js +11 -24
  128. package/lib/cjs/inputNumber/index.js +12 -29
  129. package/lib/cjs/layout/Sider.js +11 -36
  130. package/lib/cjs/layout/index.js +13 -32
  131. package/lib/cjs/layout/layout-context.js +3 -6
  132. package/lib/cjs/list/index.js +9 -25
  133. package/lib/cjs/list/item.js +10 -27
  134. package/lib/cjs/list/list-context.js +3 -6
  135. package/lib/cjs/locale/context.js +3 -6
  136. package/lib/cjs/locale/interface.js +1 -3
  137. package/lib/cjs/locale/localeConsumer.js +5 -12
  138. package/lib/cjs/locale/localeProvider.js +5 -12
  139. package/lib/cjs/locale/source/ar.js +1 -4
  140. package/lib/cjs/locale/source/de.js +1 -4
  141. package/lib/cjs/locale/source/en_GB.js +1 -4
  142. package/lib/cjs/locale/source/en_US.js +1 -4
  143. package/lib/cjs/locale/source/es.js +1 -4
  144. package/lib/cjs/locale/source/fr.js +1 -4
  145. package/lib/cjs/locale/source/id_ID.js +1 -4
  146. package/lib/cjs/locale/source/it.js +1 -4
  147. package/lib/cjs/locale/source/ja_JP.js +1 -4
  148. package/lib/cjs/locale/source/ko_KR.js +1 -4
  149. package/lib/cjs/locale/source/ms_MY.js +1 -4
  150. package/lib/cjs/locale/source/pt_BR.js +1 -4
  151. package/lib/cjs/locale/source/ru_RU.js +1 -4
  152. package/lib/cjs/locale/source/th_TH.js +1 -4
  153. package/lib/cjs/locale/source/tr_TR.js +1 -4
  154. package/lib/cjs/locale/source/vi_VN.js +1 -4
  155. package/lib/cjs/locale/source/zh_CN.js +1 -4
  156. package/lib/cjs/locale/source/zh_TW.js +1 -4
  157. package/lib/cjs/modal/ConfirmModal.js +11 -28
  158. package/lib/cjs/modal/Modal.js +14 -33
  159. package/lib/cjs/modal/ModalContent.js +14 -35
  160. package/lib/cjs/modal/confirm.js +15 -21
  161. package/lib/cjs/modal/index.js +3 -6
  162. package/lib/cjs/modal/useModal/HookModal.js +10 -19
  163. package/lib/cjs/modal/useModal/index.js +4 -9
  164. package/lib/cjs/motions/Rotate.js +7 -18
  165. package/lib/cjs/navigation/CollapseButton.js +4 -9
  166. package/lib/cjs/navigation/Footer.js +6 -15
  167. package/lib/cjs/navigation/Header.js +6 -15
  168. package/lib/cjs/navigation/Item.js +9 -28
  169. package/lib/cjs/navigation/OpenIconTransition.js +6 -15
  170. package/lib/cjs/navigation/SubNav.js +10 -29
  171. package/lib/cjs/navigation/SubNavTransition.js +5 -12
  172. package/lib/cjs/navigation/index.js +25 -46
  173. package/lib/cjs/navigation/nav-context.js +3 -6
  174. package/lib/cjs/notification/NoticeTransition.js +4 -9
  175. package/lib/cjs/notification/index.js +24 -51
  176. package/lib/cjs/notification/notice.js +13 -30
  177. package/lib/cjs/notification/useNotification/HookNotice.js +9 -22
  178. package/lib/cjs/notification/useNotification/index.js +18 -41
  179. package/lib/cjs/overflowList/index.js +13 -28
  180. package/lib/cjs/overflowList/intersectionObserver.js +7 -18
  181. package/lib/cjs/pagination/index.js +15 -38
  182. package/lib/cjs/popconfirm/index.js +16 -25
  183. package/lib/cjs/popover/Arrow.js +10 -19
  184. package/lib/cjs/popover/index.js +8 -17
  185. package/lib/cjs/progress/index.js +7 -20
  186. package/lib/cjs/radio/context.js +3 -6
  187. package/lib/cjs/radio/index.js +4 -8
  188. package/lib/cjs/radio/radio.d.ts +1 -0
  189. package/lib/cjs/radio/radio.js +11 -19
  190. package/lib/cjs/radio/radioGroup.js +11 -26
  191. package/lib/cjs/radio/radioInner.js +7 -16
  192. package/lib/cjs/rating/index.js +10 -27
  193. package/lib/cjs/rating/item.js +10 -19
  194. package/lib/cjs/resizeObserver/index.js +3 -6
  195. package/lib/cjs/scrollList/index.js +3 -6
  196. package/lib/cjs/scrollList/scrollItem.js +13 -26
  197. package/lib/cjs/select/index.js +46 -91
  198. package/lib/cjs/select/option.js +12 -25
  199. package/lib/cjs/select/optionGroup.js +3 -6
  200. package/lib/cjs/select/utils.js +12 -29
  201. package/lib/cjs/select/virtualRow.js +1 -4
  202. package/lib/cjs/sideSheet/SideSheetContent.js +9 -22
  203. package/lib/cjs/sideSheet/SideSheetTransition.js +4 -9
  204. package/lib/cjs/sideSheet/index.js +15 -28
  205. package/lib/cjs/skeleton/index.js +9 -22
  206. package/lib/cjs/skeleton/item.js +13 -34
  207. package/lib/cjs/slider/index.js +18 -48
  208. package/lib/cjs/space/index.js +7 -20
  209. package/lib/cjs/space/utils.js +9 -24
  210. package/lib/cjs/spin/icon.js +7 -16
  211. package/lib/cjs/spin/index.js +5 -14
  212. package/lib/cjs/steps/basicStep.js +4 -11
  213. package/lib/cjs/steps/basicSteps.js +12 -29
  214. package/lib/cjs/steps/context.js +3 -6
  215. package/lib/cjs/steps/fillStep.js +4 -11
  216. package/lib/cjs/steps/fillSteps.js +12 -28
  217. package/lib/cjs/steps/index.js +11 -24
  218. package/lib/cjs/steps/navStep.js +3 -6
  219. package/lib/cjs/steps/navSteps.js +12 -28
  220. package/lib/cjs/steps/step.js +8 -17
  221. package/lib/cjs/switch/index.js +5 -10
  222. package/lib/cjs/table/Body/BaseRow.js +14 -27
  223. package/lib/cjs/table/Body/ExpandedRow.js +10 -23
  224. package/lib/cjs/table/Body/SectionRow.js +15 -36
  225. package/lib/cjs/table/Body/index.js +39 -64
  226. package/lib/cjs/table/ColGroup.js +4 -11
  227. package/lib/cjs/table/Column.js +4 -9
  228. package/lib/cjs/table/ColumnFilter.js +18 -41
  229. package/lib/cjs/table/ColumnSelection.js +6 -11
  230. package/lib/cjs/table/ColumnShape.js +3 -6
  231. package/lib/cjs/table/ColumnSorter.js +6 -15
  232. package/lib/cjs/table/CustomExpandIcon.js +5 -12
  233. package/lib/cjs/table/HeadTable.js +7 -14
  234. package/lib/cjs/table/ResizableHeaderCell.js +9 -22
  235. package/lib/cjs/table/ResizableTable.js +23 -40
  236. package/lib/cjs/table/Table.js +63 -96
  237. package/lib/cjs/table/TableCell.js +13 -26
  238. package/lib/cjs/table/TableContextProvider.js +5 -12
  239. package/lib/cjs/table/TableHeader.js +10 -27
  240. package/lib/cjs/table/TableHeaderRow.js +18 -33
  241. package/lib/cjs/table/TablePagination.js +6 -15
  242. package/lib/cjs/table/getColumns.js +8 -17
  243. package/lib/cjs/table/index.js +8 -20
  244. package/lib/cjs/table/interface.js +1 -3
  245. package/lib/cjs/table/table-context.js +3 -6
  246. package/lib/cjs/table/utils.js +5 -16
  247. package/lib/cjs/tabs/TabBar.js +21 -44
  248. package/lib/cjs/tabs/TabPane.js +14 -31
  249. package/lib/cjs/tabs/TabPaneTransition.js +5 -10
  250. package/lib/cjs/tabs/index.js +32 -73
  251. package/lib/cjs/tabs/interface.d.ts +3 -2
  252. package/lib/cjs/tabs/interface.js +1 -3
  253. package/lib/cjs/tabs/tabs-context.js +3 -6
  254. package/lib/cjs/tag/group.d.ts +1 -15
  255. package/lib/cjs/tag/group.js +23 -34
  256. package/lib/cjs/tag/index.d.ts +1 -1
  257. package/lib/cjs/tag/index.js +20 -48
  258. package/lib/cjs/tag/interface.d.ts +6 -3
  259. package/lib/cjs/tag/interface.js +1 -3
  260. package/lib/cjs/tagInput/index.js +13 -30
  261. package/lib/cjs/timePicker/Combobox.js +19 -40
  262. package/lib/cjs/timePicker/PanelShape.js +3 -6
  263. package/lib/cjs/timePicker/TimeInput.js +9 -20
  264. package/lib/cjs/timePicker/TimePicker.js +21 -38
  265. package/lib/cjs/timePicker/TimeShape.js +3 -6
  266. package/lib/cjs/timePicker/index.js +4 -9
  267. package/lib/cjs/timeline/index.js +21 -48
  268. package/lib/cjs/timeline/item.js +7 -20
  269. package/lib/cjs/toast/ToastTransition.js +4 -9
  270. package/lib/cjs/toast/index.js +20 -45
  271. package/lib/cjs/toast/toast.js +9 -20
  272. package/lib/cjs/toast/useToast/HookToast.js +9 -22
  273. package/lib/cjs/toast/useToast/index.js +14 -27
  274. package/lib/cjs/tooltip/ArrowBoundingShape.js +3 -6
  275. package/lib/cjs/tooltip/TooltipStyledTransition.js +4 -9
  276. package/lib/cjs/tooltip/TriangleArrow.js +7 -16
  277. package/lib/cjs/tooltip/TriangleArrowVertical.js +7 -16
  278. package/lib/cjs/tooltip/index.js +27 -48
  279. package/lib/cjs/transfer/index.js +30 -63
  280. package/lib/cjs/tree/autoSizer.js +7 -16
  281. package/lib/cjs/tree/collapse.js +7 -16
  282. package/lib/cjs/tree/index.js +46 -70
  283. package/lib/cjs/tree/interface.js +1 -3
  284. package/lib/cjs/tree/nodeList.js +11 -28
  285. package/lib/cjs/tree/treeContext.js +3 -6
  286. package/lib/cjs/tree/treeNode.js +20 -39
  287. package/lib/cjs/tree/treeUtil.js +3 -6
  288. package/lib/cjs/treeSelect/index.js +51 -80
  289. package/lib/cjs/trigger/index.js +7 -16
  290. package/lib/cjs/typography/base.js +24 -49
  291. package/lib/cjs/typography/copyable.js +5 -12
  292. package/lib/cjs/typography/index.js +5 -15
  293. package/lib/cjs/typography/interface.js +1 -3
  294. package/lib/cjs/typography/paragraph.js +6 -15
  295. package/lib/cjs/typography/text.js +6 -15
  296. package/lib/cjs/typography/title.d.ts +1 -1
  297. package/lib/cjs/typography/title.js +10 -25
  298. package/lib/cjs/typography/typography.js +9 -22
  299. package/lib/cjs/typography/util.js +8 -21
  300. package/lib/cjs/upload/fileCard.js +8 -17
  301. package/lib/cjs/upload/index.js +14 -25
  302. package/lib/cjs/upload/interface.js +1 -3
  303. package/lib/es/_base/base.css +1 -0
  304. package/lib/es/_base/baseComponent.js +1 -3
  305. package/lib/es/_portal/index.js +1 -2
  306. package/lib/es/_utils/index.js +9 -15
  307. package/lib/es/anchor/index.d.ts +4 -0
  308. package/lib/es/anchor/index.js +46 -31
  309. package/lib/es/anchor/link.d.ts +2 -0
  310. package/lib/es/anchor/link.js +12 -10
  311. package/lib/es/autoComplete/index.js +10 -21
  312. package/lib/es/autoComplete/option.js +7 -10
  313. package/lib/es/avatar/avatarGroup.js +13 -33
  314. package/lib/es/avatar/index.d.ts +1 -0
  315. package/lib/es/avatar/index.js +20 -31
  316. package/lib/es/backtop/index.js +5 -9
  317. package/lib/es/badge/index.js +7 -13
  318. package/lib/es/banner/index.js +2 -7
  319. package/lib/es/breadcrumb/index.js +10 -27
  320. package/lib/es/breadcrumb/item.js +3 -7
  321. package/lib/es/button/Button.js +8 -16
  322. package/lib/es/button/buttonGroup.js +7 -22
  323. package/lib/es/button/index.js +4 -6
  324. package/lib/es/calendar/dayCalendar.js +15 -30
  325. package/lib/es/calendar/dayCol.js +5 -16
  326. package/lib/es/calendar/index.js +4 -8
  327. package/lib/es/calendar/monthCalendar.js +15 -35
  328. package/lib/es/calendar/rangeCalendar.js +14 -36
  329. package/lib/es/calendar/timeCol.js +3 -12
  330. package/lib/es/calendar/weekCalendar.js +14 -36
  331. package/lib/es/card/cardGroup.js +4 -8
  332. package/lib/es/card/index.js +7 -15
  333. package/lib/es/card/meta.js +4 -8
  334. package/lib/es/carousel/CarouselArrow.js +5 -9
  335. package/lib/es/carousel/CarouselIndicator.js +8 -17
  336. package/lib/es/carousel/index.js +5 -13
  337. package/lib/es/cascader/index.js +30 -55
  338. package/lib/es/cascader/item.js +17 -33
  339. package/lib/es/checkbox/checkbox.d.ts +1 -0
  340. package/lib/es/checkbox/checkbox.js +4 -8
  341. package/lib/es/checkbox/checkboxGroup.js +8 -23
  342. package/lib/es/checkbox/checkboxInner.js +1 -2
  343. package/lib/es/collapse/index.js +9 -17
  344. package/lib/es/collapse/item.js +4 -8
  345. package/lib/es/collapsible/index.js +2 -4
  346. package/lib/es/configProvider/index.js +4 -8
  347. package/lib/es/datePicker/dateInput.js +12 -27
  348. package/lib/es/datePicker/datePicker.js +17 -35
  349. package/lib/es/datePicker/index.js +4 -10
  350. package/lib/es/datePicker/insetInput.js +1 -2
  351. package/lib/es/datePicker/month.js +12 -18
  352. package/lib/es/datePicker/monthsGrid.js +10 -26
  353. package/lib/es/datePicker/quickControl.js +13 -18
  354. package/lib/es/datePicker/yearAndMonth.js +10 -22
  355. package/lib/es/descriptions/index.js +3 -8
  356. package/lib/es/descriptions/item.js +2 -5
  357. package/lib/es/divider/index.js +6 -13
  358. package/lib/es/dropdown/dropdownItem.js +3 -10
  359. package/lib/es/dropdown/dropdownMenu.js +5 -9
  360. package/lib/es/dropdown/index.js +16 -17
  361. package/lib/es/empty/index.js +2 -6
  362. package/lib/es/form/arrayField.js +20 -42
  363. package/lib/es/form/baseForm.d.ts +1 -1
  364. package/lib/es/form/baseForm.js +11 -28
  365. package/lib/es/form/errorMessage.js +2 -6
  366. package/lib/es/form/field.d.ts +1 -1
  367. package/lib/es/form/group.js +7 -16
  368. package/lib/es/form/hoc/withField.js +21 -41
  369. package/lib/es/form/hoc/withFormApi.js +1 -2
  370. package/lib/es/form/hoc/withFormState.js +1 -2
  371. package/lib/es/form/hooks/useFieldState.js +1 -2
  372. package/lib/es/form/interface.d.ts +1 -1
  373. package/lib/es/form/slot.js +11 -18
  374. package/lib/es/grid/col.js +17 -29
  375. package/lib/es/grid/row.js +15 -36
  376. package/lib/es/iconButton/index.js +8 -14
  377. package/lib/es/input/index.js +10 -17
  378. package/lib/es/input/inputGroup.js +8 -20
  379. package/lib/es/input/textarea.js +8 -15
  380. package/lib/es/inputNumber/index.js +9 -18
  381. package/lib/es/layout/Sider.js +8 -26
  382. package/lib/es/layout/index.js +10 -22
  383. package/lib/es/list/index.js +5 -18
  384. package/lib/es/list/item.js +5 -11
  385. package/lib/es/modal/ConfirmModal.js +6 -13
  386. package/lib/es/modal/Modal.js +9 -16
  387. package/lib/es/modal/ModalContent.js +9 -21
  388. package/lib/es/modal/confirm.js +11 -15
  389. package/lib/es/modal/useModal/HookModal.js +7 -10
  390. package/lib/es/modal/useModal/index.js +1 -2
  391. package/lib/es/motions/Rotate.js +2 -4
  392. package/lib/es/navigation/CollapseButton.js +1 -2
  393. package/lib/es/navigation/Footer.js +1 -2
  394. package/lib/es/navigation/Header.js +1 -2
  395. package/lib/es/navigation/Item.js +6 -19
  396. package/lib/es/navigation/OpenIconTransition.js +1 -2
  397. package/lib/es/navigation/SubNav.js +7 -20
  398. package/lib/es/navigation/index.js +20 -35
  399. package/lib/es/notification/NoticeTransition.js +1 -2
  400. package/lib/es/notification/index.js +19 -40
  401. package/lib/es/notification/notice.js +8 -17
  402. package/lib/es/notification/useNotification/HookNotice.js +4 -8
  403. package/lib/es/notification/useNotification/index.js +13 -26
  404. package/lib/es/overflowList/index.js +10 -18
  405. package/lib/es/overflowList/intersectionObserver.js +4 -10
  406. package/lib/es/pagination/index.js +10 -28
  407. package/lib/es/popconfirm/index.js +13 -16
  408. package/lib/es/popover/Arrow.js +7 -11
  409. package/lib/es/popover/index.js +5 -8
  410. package/lib/es/progress/index.js +2 -8
  411. package/lib/es/radio/radio.d.ts +1 -0
  412. package/lib/es/radio/radio.js +6 -9
  413. package/lib/es/radio/radioGroup.js +6 -15
  414. package/lib/es/radio/radioInner.js +2 -6
  415. package/lib/es/rating/index.js +5 -18
  416. package/lib/es/rating/item.js +7 -11
  417. package/lib/es/scrollList/scrollItem.js +8 -14
  418. package/lib/es/select/index.js +38 -76
  419. package/lib/es/select/option.js +7 -10
  420. package/lib/es/select/utils.js +9 -22
  421. package/lib/es/sideSheet/SideSheetContent.js +6 -12
  422. package/lib/es/sideSheet/SideSheetTransition.js +1 -2
  423. package/lib/es/sideSheet/index.js +10 -18
  424. package/lib/es/skeleton/index.js +4 -8
  425. package/lib/es/skeleton/item.js +8 -18
  426. package/lib/es/slider/index.js +15 -36
  427. package/lib/es/space/index.js +2 -8
  428. package/lib/es/space/utils.js +4 -11
  429. package/lib/es/spin/icon.js +4 -8
  430. package/lib/es/spin/index.js +2 -6
  431. package/lib/es/steps/basicStep.js +1 -4
  432. package/lib/es/steps/basicSteps.js +6 -17
  433. package/lib/es/steps/fillStep.js +1 -4
  434. package/lib/es/steps/fillSteps.js +5 -17
  435. package/lib/es/steps/index.js +6 -9
  436. package/lib/es/steps/navSteps.js +5 -17
  437. package/lib/es/steps/step.js +3 -4
  438. package/lib/es/switch/index.js +2 -3
  439. package/lib/es/table/Body/BaseRow.js +9 -14
  440. package/lib/es/table/Body/ExpandedRow.js +5 -8
  441. package/lib/es/table/Body/SectionRow.js +10 -18
  442. package/lib/es/table/Body/index.js +34 -56
  443. package/lib/es/table/ColGroup.js +1 -5
  444. package/lib/es/table/Column.js +1 -2
  445. package/lib/es/table/ColumnFilter.js +13 -30
  446. package/lib/es/table/ColumnSelection.js +3 -4
  447. package/lib/es/table/ColumnSorter.js +1 -2
  448. package/lib/es/table/HeadTable.js +4 -6
  449. package/lib/es/table/ResizableHeaderCell.js +6 -13
  450. package/lib/es/table/ResizableTable.js +18 -36
  451. package/lib/es/table/Table.js +56 -76
  452. package/lib/es/table/TableCell.js +8 -13
  453. package/lib/es/table/TableHeader.js +7 -18
  454. package/lib/es/table/TableHeaderRow.js +13 -21
  455. package/lib/es/table/TablePagination.js +1 -2
  456. package/lib/es/table/getColumns.js +3 -10
  457. package/lib/es/table/index.js +3 -4
  458. package/lib/es/table/utils.js +1 -7
  459. package/lib/es/tabs/TabBar.js +18 -36
  460. package/lib/es/tabs/TabPane.js +9 -18
  461. package/lib/es/tabs/TabPaneTransition.js +2 -3
  462. package/lib/es/tabs/index.js +22 -48
  463. package/lib/es/tabs/interface.d.ts +3 -2
  464. package/lib/es/tag/group.d.ts +1 -15
  465. package/lib/es/tag/group.js +18 -24
  466. package/lib/es/tag/index.d.ts +1 -1
  467. package/lib/es/tag/index.js +13 -24
  468. package/lib/es/tag/interface.d.ts +6 -3
  469. package/lib/es/tagInput/index.js +10 -21
  470. package/lib/es/timePicker/Combobox.js +14 -23
  471. package/lib/es/timePicker/TimeInput.js +6 -10
  472. package/lib/es/timePicker/TimePicker.js +16 -27
  473. package/lib/es/timePicker/index.js +1 -2
  474. package/lib/es/timeline/index.js +14 -32
  475. package/lib/es/timeline/item.js +2 -6
  476. package/lib/es/toast/ToastTransition.js +1 -2
  477. package/lib/es/toast/index.js +17 -37
  478. package/lib/es/toast/toast.js +4 -10
  479. package/lib/es/toast/useToast/HookToast.js +4 -8
  480. package/lib/es/toast/useToast/index.js +11 -18
  481. package/lib/es/tooltip/TooltipStyledTransition.js +1 -3
  482. package/lib/es/tooltip/TriangleArrow.js +4 -8
  483. package/lib/es/tooltip/TriangleArrowVertical.js +4 -8
  484. package/lib/es/tooltip/index.js +20 -31
  485. package/lib/es/transfer/index.js +24 -47
  486. package/lib/es/tree/autoSizer.js +2 -3
  487. package/lib/es/tree/collapse.js +2 -5
  488. package/lib/es/tree/index.js +41 -48
  489. package/lib/es/tree/nodeList.js +6 -17
  490. package/lib/es/tree/treeNode.js +15 -23
  491. package/lib/es/treeSelect/index.js +44 -62
  492. package/lib/es/trigger/index.js +4 -8
  493. package/lib/es/typography/base.js +19 -34
  494. package/lib/es/typography/copyable.js +2 -4
  495. package/lib/es/typography/paragraph.js +1 -2
  496. package/lib/es/typography/text.js +1 -2
  497. package/lib/es/typography/title.d.ts +1 -1
  498. package/lib/es/typography/title.js +5 -11
  499. package/lib/es/typography/typography.js +4 -8
  500. package/lib/es/typography/util.js +5 -15
  501. package/lib/es/upload/fileCard.js +3 -4
  502. package/lib/es/upload/index.js +11 -16
  503. package/package.json +7 -8
  504. package/popconfirm/_story/popconfirm.stories.js +1 -1
  505. package/popconfirm/index.tsx +6 -6
  506. package/radio/radio.tsx +2 -0
  507. package/tabs/_story/Demo.tsx +14 -5
  508. package/tabs/interface.ts +3 -2
  509. package/tag/_story/tag.stories.js +51 -1
  510. package/tag/group.tsx +14 -27
  511. package/tag/index.tsx +1 -1
  512. package/tag/interface.ts +9 -5
  513. package/tooltip/index.tsx +2 -1
  514. package/transfer/_story/transfer.stories.js +2 -2
  515. package/treeSelect/_story/treeSelect.stories.js +3 -0
@@ -247,7 +247,11 @@ class Dropdown extends BaseComponent<DropdownProps, DropdownState> {
247
247
  }),
248
248
  'aria-haspopup': true,
249
249
  'aria-expanded': popVisible,
250
- onKeyDown: e => this.foundation.handleKeyDown(e)
250
+ onKeyDown: e => {
251
+ this.foundation.handleKeyDown(e);
252
+ const childrenKeyDown = get(children, 'props.onKeyDown');
253
+ childrenKeyDown && childrenKeyDown();
254
+ }
251
255
  }) :
252
256
  children}
253
257
  </Tooltip>
package/form/interface.ts CHANGED
@@ -102,7 +102,7 @@ interface setValuesConfig {
102
102
  isOverride: boolean;
103
103
  }
104
104
 
105
- export interface BaseFormProps {
105
+ export interface BaseFormProps extends Omit<React.FormHTMLAttributes<HTMLFormElement>, 'children' | 'onChange'> {
106
106
  'aria-label'?: React.AriaAttributes['aria-label'];
107
107
  onSubmit?: (values: Record<string, any>) => void;
108
108
  onSubmitFail?: (errors: Record<string, FieldError>, values: any) => void;
package/getBabelConfig.js CHANGED
@@ -19,19 +19,7 @@ module.exports = ({ isESM }) => {
19
19
  ],
20
20
  ],
21
21
  plugins: [
22
- 'lodash',
23
- [
24
- '@babel/plugin-transform-runtime',
25
- {
26
- corejs: 3
27
- },
28
- ],
29
- [
30
- '@babel/plugin-proposal-decorators',
31
- {
32
- legacy: true,
33
- },
34
- ],
22
+ 'lodash'
35
23
  ]
36
24
  };
37
25
  };
@@ -14,6 +14,7 @@ body {
14
14
  --semi-transition_function-easeIn:ease-in;
15
15
  --semi-transition_function-easeOut:ease-out;
16
16
  --semi-transition_function-easeInIOut:ease-in-out;
17
+ --semi-transition_delay-none: 0ms;
17
18
  --semi-transition_delay-slowest:0ms;
18
19
  --semi-transition_delay-slower:0ms;
19
20
  --semi-transition_delay-slow:0ms;
@@ -1,7 +1,5 @@
1
1
  "use strict";
2
2
 
3
- var _Object$defineProperty = require("@babel/runtime-corejs3/core-js-stable/object/define-property");
4
-
5
- _Object$defineProperty(exports, "__esModule", {
3
+ Object.defineProperty(exports, "__esModule", {
6
4
  value: true
7
5
  });
@@ -1,21 +1,16 @@
1
1
  "use strict";
2
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", {
3
+ Object.defineProperty(exports, "__esModule", {
8
4
  value: true
9
5
  });
10
-
11
6
  exports.default = void 0;
12
7
 
13
- var _assign = _interopRequireDefault(require("@babel/runtime-corejs3/core-js-stable/object/assign"));
14
-
15
8
  var _react = require("react");
16
9
 
17
10
  var _log = _interopRequireDefault(require("@douyinfe/semi-foundation/lib/cjs/utils/log"));
18
11
 
12
+ function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
13
+
19
14
  /**
20
15
  * The Semi Foundation / Adapter architecture split was inspired by Material Component For Web. (https://github.com/material-components/material-components-web)
21
16
  * We re-implemented our own code based on the principle and added more functions we need according to actual needs.
@@ -56,7 +51,7 @@ class BaseComponent extends _react.Component {
56
51
  getProps: () => this.props,
57
52
  getState: key => this.state[key],
58
53
  getStates: () => this.state,
59
- setState: (states, cb) => this.setState((0, _assign.default)({}, states), cb),
54
+ setState: (states, cb) => this.setState(Object.assign({}, states), cb),
60
55
  getCache: key => key && this.cache[key],
61
56
  getCaches: () => this.cache,
62
57
  setCache: (key, value) => key && (this.cache[key] = value),
@@ -1,32 +1,27 @@
1
1
  "use strict";
2
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", {
3
+ Object.defineProperty(exports, "__esModule", {
8
4
  value: true
9
5
  });
10
-
11
6
  exports.isClassComponent = isClassComponent;
12
7
  exports.isCompositeTypeElement = isCompositeTypeElement;
13
8
  exports.isElement = isElement;
14
9
  exports.isEmptyChildren = isEmptyChildren;
15
10
  exports.isFunctionalComponent = isFunctionalComponent;
16
-
17
- _Object$defineProperty(exports, "isHTMLElement", {
11
+ Object.defineProperty(exports, "isHTMLElement", {
18
12
  enumerable: true,
19
13
  get: function () {
20
14
  return _dom.isHTMLElement;
21
15
  }
22
16
  });
23
-
24
17
  exports.isReactComponent = isReactComponent;
25
18
 
26
19
  var _react = _interopRequireDefault(require("react"));
27
20
 
28
21
  var _dom = require("@douyinfe/semi-foundation/lib/cjs/utils/dom");
29
22
 
23
+ function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
24
+
30
25
  // https://stackoverflow.com/questions/33199959/how-to-detect-a-react-component-vs-a-react-element
31
26
  function isClassComponent(component) {
32
27
  return typeof component === 'function' && Boolean(component.prototype.isReactComponent);
@@ -1,17 +1,10 @@
1
1
  "use strict";
2
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", {
3
+ Object.defineProperty(exports, "__esModule", {
8
4
  value: true
9
5
  });
10
-
11
6
  exports.default = void 0;
12
7
 
13
- var _keys = _interopRequireDefault(require("@babel/runtime-corejs3/core-js-stable/object/keys"));
14
-
15
8
  var _react = require("react");
16
9
 
17
10
  var _reactDom = require("react-dom");
@@ -26,6 +19,8 @@ var _context = _interopRequireDefault(require("../configProvider/context"));
26
19
 
27
20
  require("@douyinfe/semi-foundation/lib/cjs/_portal/portal.css");
28
21
 
22
+ function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
23
+
29
24
  const defaultGetContainer = () => document.body;
30
25
 
31
26
  class Portal extends _react.PureComponent {
@@ -39,7 +34,7 @@ class Portal extends _react.PureComponent {
39
34
  let style = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};
40
35
 
41
36
  if (_this.el) {
42
- for (const key of (0, _keys.default)(style)) {
37
+ for (const key of Object.keys(style)) {
43
38
  _this.el.style[key] = style[key];
44
39
  }
45
40
  }
@@ -1,13 +1,8 @@
1
1
  "use strict";
2
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", {
3
+ Object.defineProperty(exports, "__esModule", {
8
4
  value: true
9
5
  });
10
-
11
6
  exports.usePrevFocus = usePrevFocus;
12
7
 
13
8
  var _isFunction2 = _interopRequireDefault(require("lodash/isFunction"));
@@ -18,6 +13,8 @@ var _react = require("react");
18
13
 
19
14
  var _index = require("../index");
20
15
 
16
+ function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
17
+
21
18
  /* istanbul ignore next */
22
19
  function usePrevFocus() {
23
20
  const [prevFocusElement, setPrevFocus] = (0, _react.useState)((0, _index.getActiveElement)());
@@ -1,13 +1,8 @@
1
1
  "use strict";
2
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", {
3
+ Object.defineProperty(exports, "__esModule", {
8
4
  value: true
9
5
  });
10
-
11
6
  exports.cloneDeep = cloneDeep;
12
7
  exports.getActiveElement = getActiveElement;
13
8
  exports.getFocusableElements = getFocusableElements;
@@ -16,18 +11,6 @@ exports.isNodeContainsFocus = isNodeContainsFocus;
16
11
  exports.registerMediaQuery = exports.isSemiIcon = void 0;
17
12
  exports.stopPropagation = stopPropagation;
18
13
 
19
- var _isArray = _interopRequireDefault(require("@babel/runtime-corejs3/core-js-stable/array/is-array"));
20
-
21
- var _keys = _interopRequireDefault(require("@babel/runtime-corejs3/core-js-stable/object/keys"));
22
-
23
- var _forEach = _interopRequireDefault(require("@babel/runtime-corejs3/core-js-stable/instance/for-each"));
24
-
25
- var _assign = _interopRequireDefault(require("@babel/runtime-corejs3/core-js-stable/object/assign"));
26
-
27
- var _map = _interopRequireDefault(require("@babel/runtime-corejs3/core-js-stable/instance/map"));
28
-
29
- var _from = _interopRequireDefault(require("@babel/runtime-corejs3/core-js-stable/array/from"));
30
-
31
14
  var _get2 = _interopRequireDefault(require("lodash/get"));
32
15
 
33
16
  var _set2 = _interopRequireDefault(require("lodash/set"));
@@ -42,6 +25,8 @@ var _getHighlight = require("@douyinfe/semi-foundation/lib/cjs/utils/getHighligh
42
25
 
43
26
  var _dom = require("@douyinfe/semi-foundation/lib/cjs/utils/dom");
44
27
 
28
+ function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
29
+
45
30
  /* eslint-disable max-len */
46
31
 
47
32
  /* argus-disable unPkgSensitiveInfo */
@@ -84,16 +69,19 @@ function cloneDeep(value, customizer) {
84
69
  return v;
85
70
  }
86
71
 
87
- if ((0, _isArray.default)(v) && v.length === 0) {
88
- const keys = (0, _keys.default)(v);
72
+ if (Array.isArray(v) && v.length === 0) {
73
+ const keys = Object.keys(v);
89
74
 
90
75
  if (keys.length) {
91
76
  const newArray = [];
92
- (0, _forEach.default)(keys).call(keys, key => {
77
+ keys.forEach(key => {
93
78
  (0, _set2.default)(newArray, key, v[key]);
94
79
  }); // internal-issues:887
95
80
 
96
- (0, _warning.default)((0, _get2.default)(process, 'env.NODE_ENV') !== 'production', "[Semi] You may use an out-of-bounds array. In some cases, your program may not behave as expected.\n The maximum length of an array is 4294967295.\n Please check whether the array subscript in your data exceeds the maximum value of the JS array subscript");
81
+ try {
82
+ (0, _warning.default)((0, _get2.default)(process, 'env.NODE_ENV') !== 'production', "[Semi] You may use an out-of-bounds array. In some cases, your program may not behave as expected.\n The maximum length of an array is 4294967295.\n Please check whether the array subscript in your data exceeds the maximum value of the JS array subscript");
83
+ } catch (e) {}
84
+
97
85
  return newArray;
98
86
  } else {
99
87
  return undefined;
@@ -127,14 +115,14 @@ const getHighLightTextHTML = _ref => {
127
115
  caseSensitive: false
128
116
  }
129
117
  } = _ref;
130
- const chunks = (0, _getHighlight.findAll)((0, _assign.default)({
118
+ const chunks = (0, _getHighlight.findAll)(Object.assign({
131
119
  sourceString,
132
120
  searchWords
133
121
  }, option));
134
122
  const markEle = option.highlightTag || 'mark';
135
123
  const highlightClassName = option.highlightClassName || '';
136
124
  const highlightStyle = option.highlightStyle || {};
137
- return (0, _map.default)(chunks).call(chunks, (chunk, index) => {
125
+ return chunks.map((chunk, index) => {
138
126
  const {
139
127
  end,
140
128
  start,
@@ -224,6 +212,6 @@ function getFocusableElements(node) {
224
212
  const focusableSelectorsList = ["input:not([disabled]):not([tabindex='-1'])", "textarea:not([disabled]):not([tabindex='-1'])", "button:not([disabled]):not([tabindex='-1'])", "a[href]:not([tabindex='-1'])", "select:not([disabled]):not([tabindex='-1'])", "area[href]:not([tabindex='-1'])", "iframe:not([tabindex='-1'])", "object:not([tabindex='-1'])", "*[tabindex]:not([tabindex='-1'])", "*[contenteditable]:not([tabindex='-1'])"];
225
213
  const focusableSelectorsStr = focusableSelectorsList.join(','); // we are not filtered elements which are invisible
226
214
 
227
- const focusableElements = (0, _from.default)(node.querySelectorAll(focusableSelectorsStr));
215
+ const focusableElements = Array.from(node.querySelectorAll(focusableSelectorsStr));
228
216
  return focusableElements;
229
217
  }
@@ -1,17 +1,14 @@
1
1
  "use strict";
2
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", {
3
+ Object.defineProperty(exports, "__esModule", {
8
4
  value: true
9
5
  });
10
-
11
6
  exports.default = void 0;
12
7
 
13
8
  var _react = _interopRequireDefault(require("react"));
14
9
 
10
+ function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
11
+
15
12
  const AnchorContext = /*#__PURE__*/_react.default.createContext(null);
16
13
 
17
14
  var _default = AnchorContext;
@@ -6,6 +6,7 @@ import BaseComponent from '../_base/baseComponent';
6
6
  import Link from './link';
7
7
  import '@douyinfe/semi-foundation/lib/cjs/anchor/anchor.css';
8
8
  import { ArrayElement } from '../_base/base';
9
+ import { ContextValue } from '../configProvider/context';
9
10
  export { LinkProps } from './link';
10
11
  export interface AnchorProps {
11
12
  autoCollapse?: boolean;
@@ -35,6 +36,7 @@ export interface AnchorState {
35
36
  slideBarTop: string;
36
37
  }
37
38
  declare class Anchor extends BaseComponent<AnchorProps, AnchorState> {
39
+ static contextType: React.Context<ContextValue>;
38
40
  static Link: typeof Link;
39
41
  static PropTypes: {
40
42
  size: PropTypes.Requireable<"default" | "small">;
@@ -77,6 +79,7 @@ declare class Anchor extends BaseComponent<AnchorProps, AnchorState> {
77
79
  childMap: Record<string, Set<string>>;
78
80
  handler: () => void;
79
81
  clickHandler: () => void;
82
+ context: ContextValue;
80
83
  constructor(props: AnchorProps);
81
84
  get adapter(): AnchorAdapter<AnchorProps, AnchorState>;
82
85
  addLink: (link: string) => void;
@@ -88,6 +91,7 @@ declare class Anchor extends BaseComponent<AnchorProps, AnchorState> {
88
91
  setScrollHeight: () => void;
89
92
  updateScrollHeight: (prevState: AnchorState, state: AnchorState) => void;
90
93
  updateChildMap: (prevState: AnchorState, state: AnchorState) => void;
94
+ renderChildren: () => any;
91
95
  componentDidMount(): void;
92
96
  componentDidUpdate(prevProps: AnchorProps, prevState: AnchorState): void;
93
97
  componentWillUnmount(): void;
@@ -1,27 +1,10 @@
1
1
  "use strict";
2
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", {
3
+ Object.defineProperty(exports, "__esModule", {
8
4
  value: true
9
5
  });
10
-
11
6
  exports.default = void 0;
12
7
 
13
- var _assign = _interopRequireDefault(require("@babel/runtime-corejs3/core-js-stable/object/assign"));
14
-
15
- var _slice = _interopRequireDefault(require("@babel/runtime-corejs3/core-js-stable/instance/slice"));
16
-
17
- var _indexOf = _interopRequireDefault(require("@babel/runtime-corejs3/core-js-stable/instance/index-of"));
18
-
19
- var _splice = _interopRequireDefault(require("@babel/runtime-corejs3/core-js-stable/instance/splice"));
20
-
21
- var _map = _interopRequireDefault(require("@babel/runtime-corejs3/core-js-stable/instance/map"));
22
-
23
- var _concat = _interopRequireDefault(require("@babel/runtime-corejs3/core-js-stable/instance/concat"));
24
-
25
8
  var _throttle2 = _interopRequireDefault(require("lodash/throttle"));
26
9
 
27
10
  var _debounce2 = _interopRequireDefault(require("lodash/debounce"));
@@ -48,11 +31,18 @@ require("@douyinfe/semi-foundation/lib/cjs/anchor/anchor.css");
48
31
 
49
32
  var _uuid = _interopRequireDefault(require("@douyinfe/semi-foundation/lib/cjs/utils/uuid"));
50
33
 
34
+ var _context = _interopRequireDefault(require("../configProvider/context"));
35
+
36
+ function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
37
+
51
38
  const prefixCls = _constants.cssClasses.PREFIX;
52
39
 
53
40
  class Anchor extends _baseComponent.default {
54
41
  constructor(props) {
42
+ var _this;
43
+
55
44
  super(props);
45
+ _this = this;
56
46
 
57
47
  this.addLink = link => {
58
48
  this.foundation.addLink(link);
@@ -91,6 +81,35 @@ class Anchor extends _baseComponent.default {
91
81
  this.foundation.updateChildMap(prevState, state);
92
82
  };
93
83
 
84
+ this.renderChildren = () => {
85
+ const loop = function (children) {
86
+ let level = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : 1;
87
+ return _react.default.Children.map(children, child => {
88
+ if ( /*#__PURE__*/_react.default.isValidElement(child)) {
89
+ const childProps = {
90
+ direction: _this.context.direction,
91
+ level,
92
+ children: []
93
+ };
94
+ const {
95
+ children
96
+ } = child.props;
97
+ const hasChildren = children && _react.default.Children.count(children) > 0;
98
+
99
+ if (hasChildren) {
100
+ childProps.children = loop(children, level + 1);
101
+ }
102
+
103
+ return /*#__PURE__*/_react.default.cloneElement(child, childProps);
104
+ }
105
+
106
+ return null;
107
+ });
108
+ };
109
+
110
+ return loop(this.props.children);
111
+ };
112
+
94
113
  this.state = {
95
114
  activeLink: '',
96
115
  links: [],
@@ -103,7 +122,7 @@ class Anchor extends _baseComponent.default {
103
122
  }
104
123
 
105
124
  get adapter() {
106
- return (0, _assign.default)((0, _assign.default)({}, super.adapter), {
125
+ return Object.assign(Object.assign({}, super.adapter), {
107
126
  addLink: value => {
108
127
  this.setState(prevState => ({
109
128
  links: [...prevState.links, value]
@@ -111,13 +130,11 @@ class Anchor extends _baseComponent.default {
111
130
  },
112
131
  removeLink: link => {
113
132
  this.setState(prevState => {
114
- var _context;
115
-
116
- const links = (0, _slice.default)(_context = prevState.links).call(_context);
117
- const index = (0, _indexOf.default)(links).call(links, link);
133
+ const links = prevState.links.slice();
134
+ const index = links.indexOf(link);
118
135
 
119
136
  if (index !== -1) {
120
- (0, _splice.default)(links).call(links, index, 1);
137
+ links.splice(index, 1);
121
138
  return {
122
139
  links
123
140
  };
@@ -182,7 +199,7 @@ class Anchor extends _baseComponent.default {
182
199
  offsetTop
183
200
  } = this.props;
184
201
  const containerTop = this.adapter.getContainerBoundingTop();
185
- const elTop = (0, _map.default)(links).call(links, link => {
202
+ const elTop = links.map(link => {
186
203
  let node = null;
187
204
 
188
205
  try {
@@ -195,9 +212,7 @@ class Anchor extends _baseComponent.default {
195
212
  return elTop;
196
213
  },
197
214
  getAnchorNode: selector => {
198
- var _context2;
199
-
200
- const selectors = (0, _concat.default)(_context2 = "#".concat(this.anchorID, " ")).call(_context2, selector);
215
+ const selectors = "#".concat(this.anchorID, " ").concat(selector);
201
216
  return document.querySelector(selectors);
202
217
  },
203
218
  getContentNode: selector => document.querySelector(selector),
@@ -233,8 +248,6 @@ class Anchor extends _baseComponent.default {
233
248
  }
234
249
 
235
250
  render() {
236
- var _context3, _context4, _context5, _context6;
237
-
238
251
  const {
239
252
  size,
240
253
  railTheme,
@@ -254,16 +267,16 @@ class Anchor extends _baseComponent.default {
254
267
  slideBarTop
255
268
  } = this.state;
256
269
  const wrapperCls = (0, _classnames.default)(prefixCls, className, {
257
- [(0, _concat.default)(_context3 = "".concat(prefixCls, "-size-")).call(_context3, size)]: size
270
+ ["".concat(prefixCls, "-size-").concat(size)]: size
258
271
  });
259
- const slideCls = (0, _classnames.default)("".concat(prefixCls, "-slide"), (0, _concat.default)(_context4 = "".concat(prefixCls, "-slide-")).call(_context4, railTheme));
272
+ const slideCls = (0, _classnames.default)("".concat(prefixCls, "-slide"), "".concat(prefixCls, "-slide-").concat(railTheme));
260
273
  const slideBarCls = (0, _classnames.default)("".concat(prefixCls, "-slide-bar"), {
261
- [(0, _concat.default)(_context5 = "".concat(prefixCls, "-slide-bar-")).call(_context5, size)]: size,
262
- [(0, _concat.default)(_context6 = "".concat(prefixCls, "-slide-bar-")).call(_context6, railTheme)]: railTheme,
274
+ ["".concat(prefixCls, "-slide-bar-").concat(size)]: size,
275
+ ["".concat(prefixCls, "-slide-bar-").concat(railTheme)]: railTheme,
263
276
  ["".concat(prefixCls, "-slide-bar-active")]: activeLink
264
277
  });
265
278
  const anchorWrapper = "".concat(prefixCls, "-link-wrapper");
266
- const wrapperStyle = (0, _assign.default)((0, _assign.default)({}, style), {
279
+ const wrapperStyle = Object.assign(Object.assign({}, style), {
267
280
  maxWidth,
268
281
  maxHeight
269
282
  });
@@ -299,11 +312,12 @@ class Anchor extends _baseComponent.default {
299
312
  })), /*#__PURE__*/_react.default.createElement("div", {
300
313
  className: anchorWrapper,
301
314
  role: "list"
302
- }, children)));
315
+ }, this.renderChildren())));
303
316
  }
304
317
 
305
318
  }
306
319
 
320
+ Anchor.contextType = _context.default;
307
321
  Anchor.Link = _link.default;
308
322
  Anchor.PropTypes = {
309
323
  size: _propTypes.default.oneOf(_constants.strings.SIZE),
@@ -10,6 +10,8 @@ export interface LinkProps {
10
10
  children?: ReactNode;
11
11
  style?: React.CSSProperties;
12
12
  disabled?: boolean;
13
+ level?: number;
14
+ direction?: 'ltr' | 'rtl';
13
15
  }
14
16
  export default class Link extends BaseComponent<LinkProps, {}> {
15
17
  static propTypes: {
@@ -1,19 +1,10 @@
1
1
  "use strict";
2
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", {
3
+ Object.defineProperty(exports, "__esModule", {
8
4
  value: true
9
5
  });
10
-
11
6
  exports.default = void 0;
12
7
 
13
- var _assign = _interopRequireDefault(require("@babel/runtime-corejs3/core-js-stable/object/assign"));
14
-
15
- var _bind = _interopRequireDefault(require("@babel/runtime-corejs3/core-js-stable/instance/bind"));
16
-
17
8
  var _react = _interopRequireDefault(require("react"));
18
9
 
19
10
  var _classnames = _interopRequireDefault(require("classnames"));
@@ -30,12 +21,12 @@ var _anchorContext = _interopRequireDefault(require("./anchor-context"));
30
21
 
31
22
  var _index = _interopRequireDefault(require("../typography/index"));
32
23
 
24
+ function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
25
+
33
26
  const prefixCls = _constants.cssClasses.PREFIX; // eslint-disable-next-line @typescript-eslint/ban-types
34
27
 
35
28
  class Link extends _baseComponent.default {
36
29
  constructor(props) {
37
- var _context;
38
-
39
30
  super(props);
40
31
 
41
32
  this.renderTitle = () => {
@@ -65,7 +56,7 @@ class Link extends _baseComponent.default {
65
56
  size: size === 'default' ? 'normal' : 'small',
66
57
  ellipsis: {
67
58
  showTooltip: {
68
- opts: (0, _assign.default)({}, toolTipOpt)
59
+ opts: Object.assign({}, toolTipOpt)
69
60
  }
70
61
  },
71
62
  type: 'tertiary',
@@ -98,11 +89,11 @@ class Link extends _baseComponent.default {
98
89
  };
99
90
 
100
91
  this.foundation = new _linkFoundation.default(this.adapter);
101
- this.handleClick = (0, _bind.default)(_context = this.handleClick).call(_context, this);
92
+ this.handleClick = this.handleClick.bind(this);
102
93
  }
103
94
 
104
95
  get adapter() {
105
- return (0, _assign.default)((0, _assign.default)({}, super.adapter), {
96
+ return Object.assign(Object.assign({}, super.adapter), {
106
97
  addLink: href => {
107
98
  this.context.addLink(href);
108
99
  },
@@ -157,7 +148,9 @@ class Link extends _baseComponent.default {
157
148
  className,
158
149
  style,
159
150
  disabled = false,
160
- title
151
+ title,
152
+ level,
153
+ direction
161
154
  } = this.props;
162
155
  const {
163
156
  activeLink,
@@ -169,8 +162,12 @@ class Link extends _baseComponent.default {
169
162
  ["".concat(prefixCls, "-link-title-active")]: active,
170
163
  ["".concat(prefixCls, "-link-title-disabled")]: disabled
171
164
  });
165
+ const paddingAttributeKey = direction === 'rtl' ? 'paddingRight' : 'paddingLeft';
172
166
  const ariaProps = {
173
- 'aria-disabled': disabled
167
+ 'aria-disabled': disabled,
168
+ style: {
169
+ [paddingAttributeKey]: 8 * level
170
+ }
174
171
  };
175
172
 
176
173
  if (active) {
@@ -185,7 +182,7 @@ class Link extends _baseComponent.default {
185
182
  className: linkCls,
186
183
  style: style,
187
184
  role: "listitem"
188
- }, /*#__PURE__*/_react.default.createElement("div", (0, _assign.default)({
185
+ }, /*#__PURE__*/_react.default.createElement("div", Object.assign({
189
186
  role: "link",
190
187
  tabIndex: 0
191
188
  }, ariaProps, {