@douyinfe/semi-ui 2.36.0-beta.0 → 2.36.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 (698) hide show
  1. package/dist/umd/semi-ui.js +45123 -59672
  2. package/dist/umd/semi-ui.js.map +1 -1
  3. package/dist/umd/semi-ui.min.js +1 -1
  4. package/dist/umd/semi-ui.min.js.LICENSE.txt +3 -3
  5. package/dist/umd/semi-ui.min.js.map +1 -1
  6. package/lib/cjs/_base/base.d.ts +3 -3
  7. package/lib/cjs/_base/baseComponent.d.ts +1 -1
  8. package/lib/cjs/_base/baseComponent.js +5 -16
  9. package/lib/cjs/_base/reactUtils.js +3 -9
  10. package/lib/cjs/_cssAnimation/index.js +4 -25
  11. package/lib/cjs/_portal/index.js +0 -31
  12. package/lib/cjs/_utils/hooks/usePrevFocus.js +0 -6
  13. package/lib/cjs/_utils/index.js +6 -45
  14. package/lib/cjs/anchor/anchor-context.d.ts +1 -1
  15. package/lib/cjs/anchor/anchor-context.js +0 -4
  16. package/lib/cjs/anchor/index.js +2 -48
  17. package/lib/cjs/anchor/link.js +4 -36
  18. package/lib/cjs/autoComplete/index.d.ts +1 -1
  19. package/lib/cjs/autoComplete/index.js +3 -42
  20. package/lib/cjs/autoComplete/option.js +26 -54
  21. package/lib/cjs/avatar/avatarGroup.js +9 -42
  22. package/lib/cjs/avatar/index.js +15 -56
  23. package/lib/cjs/avatar/interface.d.ts +6 -6
  24. package/lib/cjs/backtop/index.js +9 -34
  25. package/lib/cjs/badge/index.d.ts +3 -3
  26. package/lib/cjs/badge/index.js +16 -38
  27. package/lib/cjs/banner/index.d.ts +1 -1
  28. package/lib/cjs/banner/index.js +3 -31
  29. package/lib/cjs/breadcrumb/bread-context.js +0 -4
  30. package/lib/cjs/breadcrumb/index.d.ts +1 -1
  31. package/lib/cjs/breadcrumb/index.js +1 -45
  32. package/lib/cjs/breadcrumb/item.d.ts +1 -1
  33. package/lib/cjs/breadcrumb/item.js +16 -56
  34. package/lib/cjs/button/Button.d.ts +4 -4
  35. package/lib/cjs/button/Button.js +18 -37
  36. package/lib/cjs/button/buttonGroup.d.ts +1 -1
  37. package/lib/cjs/button/buttonGroup.js +10 -35
  38. package/lib/cjs/button/index.js +0 -9
  39. package/lib/cjs/button/splitButtonGroup.js +0 -11
  40. package/lib/cjs/calendar/dayCalendar.js +0 -29
  41. package/lib/cjs/calendar/dayCol.js +1 -28
  42. package/lib/cjs/calendar/index.js +4 -22
  43. package/lib/cjs/calendar/interface.d.ts +5 -5
  44. package/lib/cjs/calendar/monthCalendar.js +6 -62
  45. package/lib/cjs/calendar/rangeCalendar.js +1 -34
  46. package/lib/cjs/calendar/timeCol.js +0 -20
  47. package/lib/cjs/calendar/weekCalendar.js +0 -35
  48. package/lib/cjs/card/cardGroup.d.ts +1 -1
  49. package/lib/cjs/card/cardGroup.js +8 -24
  50. package/lib/cjs/card/index.d.ts +1 -1
  51. package/lib/cjs/card/index.js +7 -38
  52. package/lib/cjs/card/meta.d.ts +1 -1
  53. package/lib/cjs/card/meta.js +8 -27
  54. package/lib/cjs/carousel/CarouselArrow.d.ts +2 -2
  55. package/lib/cjs/carousel/CarouselArrow.js +1 -13
  56. package/lib/cjs/carousel/CarouselIndicator.js +9 -33
  57. package/lib/cjs/carousel/index.js +1 -49
  58. package/lib/cjs/cascader/index.d.ts +2 -2
  59. package/lib/cjs/cascader/index.js +12 -144
  60. package/lib/cjs/cascader/item.js +2 -63
  61. package/lib/cjs/checkbox/checkbox.d.ts +1 -1
  62. package/lib/cjs/checkbox/checkbox.js +21 -55
  63. package/lib/cjs/checkbox/checkboxGroup.d.ts +4 -4
  64. package/lib/cjs/checkbox/checkboxGroup.js +9 -29
  65. package/lib/cjs/checkbox/checkboxInner.js +1 -15
  66. package/lib/cjs/checkbox/context.d.ts +1 -1
  67. package/lib/cjs/checkbox/context.js +0 -4
  68. package/lib/cjs/checkbox/index.js +0 -5
  69. package/lib/cjs/collapse/collapse-context.js +0 -4
  70. package/lib/cjs/collapse/index.js +14 -42
  71. package/lib/cjs/collapse/item.js +13 -41
  72. package/lib/cjs/collapsible/index.js +0 -34
  73. package/lib/cjs/configProvider/context.js +0 -4
  74. package/lib/cjs/configProvider/index.js +5 -21
  75. package/lib/cjs/datePicker/dateInput.js +39 -93
  76. package/lib/cjs/datePicker/datePicker.d.ts +1 -1
  77. package/lib/cjs/datePicker/datePicker.js +11 -119
  78. package/lib/cjs/datePicker/footer.js +0 -6
  79. package/lib/cjs/datePicker/index.js +2 -17
  80. package/lib/cjs/datePicker/insetInput.js +0 -9
  81. package/lib/cjs/datePicker/month.d.ts +1 -1
  82. package/lib/cjs/datePicker/month.js +25 -90
  83. package/lib/cjs/datePicker/monthsGrid.d.ts +1 -1
  84. package/lib/cjs/datePicker/monthsGrid.js +21 -96
  85. package/lib/cjs/datePicker/navigation.js +7 -24
  86. package/lib/cjs/datePicker/quickControl.js +1 -17
  87. package/lib/cjs/datePicker/yearAndMonth.d.ts +1 -1
  88. package/lib/cjs/datePicker/yearAndMonth.js +6 -52
  89. package/lib/cjs/descriptions/descriptions-context.d.ts +1 -1
  90. package/lib/cjs/descriptions/descriptions-context.js +0 -4
  91. package/lib/cjs/descriptions/index.d.ts +1 -1
  92. package/lib/cjs/descriptions/index.js +0 -15
  93. package/lib/cjs/descriptions/item.js +0 -14
  94. package/lib/cjs/divider/index.js +9 -23
  95. package/lib/cjs/dropdown/context.js +0 -4
  96. package/lib/cjs/dropdown/dropdownDivider.d.ts +1 -1
  97. package/lib/cjs/dropdown/dropdownDivider.js +0 -8
  98. package/lib/cjs/dropdown/dropdownItem.d.ts +1 -1
  99. package/lib/cjs/dropdown/dropdownItem.js +0 -21
  100. package/lib/cjs/dropdown/dropdownMenu.d.ts +1 -1
  101. package/lib/cjs/dropdown/dropdownMenu.js +6 -24
  102. package/lib/cjs/dropdown/dropdownTitle.d.ts +1 -1
  103. package/lib/cjs/dropdown/dropdownTitle.js +0 -12
  104. package/lib/cjs/dropdown/index.d.ts +1 -1
  105. package/lib/cjs/dropdown/index.js +21 -62
  106. package/lib/cjs/empty/index.js +0 -20
  107. package/lib/cjs/form/arrayField.js +15 -47
  108. package/lib/cjs/form/baseForm.js +26 -72
  109. package/lib/cjs/form/context.js +1 -10
  110. package/lib/cjs/form/errorMessage.d.ts +1 -1
  111. package/lib/cjs/form/errorMessage.js +1 -20
  112. package/lib/cjs/form/field.js +4 -23
  113. package/lib/cjs/form/group.js +11 -48
  114. package/lib/cjs/form/hoc/withField.js +69 -144
  115. package/lib/cjs/form/hoc/withFormApi.js +0 -7
  116. package/lib/cjs/form/hoc/withFormState.js +0 -7
  117. package/lib/cjs/form/hooks/index.js +0 -8
  118. package/lib/cjs/form/hooks/useArrayFieldState.js +0 -4
  119. package/lib/cjs/form/hooks/useFieldApi.js +0 -5
  120. package/lib/cjs/form/hooks/useFieldState.js +0 -8
  121. package/lib/cjs/form/hooks/useFormApi.js +0 -3
  122. package/lib/cjs/form/hooks/useFormState.js +0 -4
  123. package/lib/cjs/form/hooks/useFormUpdater.js +0 -3
  124. package/lib/cjs/form/hooks/useStateWithGetter.js +0 -5
  125. package/lib/cjs/form/index.js +0 -9
  126. package/lib/cjs/form/interface.d.ts +4 -4
  127. package/lib/cjs/form/interface.js +1 -8
  128. package/lib/cjs/form/label.js +0 -16
  129. package/lib/cjs/form/section.js +1 -11
  130. package/lib/cjs/form/slot.js +10 -51
  131. package/lib/cjs/grid/col.js +10 -29
  132. package/lib/cjs/grid/index.js +0 -3
  133. package/lib/cjs/grid/row.d.ts +2 -2
  134. package/lib/cjs/grid/row.js +10 -34
  135. package/lib/cjs/highlight/index.js +0 -11
  136. package/lib/cjs/iconButton/index.d.ts +1 -1
  137. package/lib/cjs/iconButton/index.js +18 -42
  138. package/lib/cjs/icons/index.js +0 -3
  139. package/lib/cjs/image/image.d.ts +0 -3
  140. package/lib/cjs/image/image.js +19 -88
  141. package/lib/cjs/image/index.js +0 -6
  142. package/lib/cjs/image/interface.d.ts +1 -1
  143. package/lib/cjs/image/preview.d.ts +4 -0
  144. package/lib/cjs/image/preview.js +53 -61
  145. package/lib/cjs/image/previewContext.js +0 -2
  146. package/lib/cjs/image/previewFooter.js +9 -62
  147. package/lib/cjs/image/previewHeader.js +0 -13
  148. package/lib/cjs/image/previewImage.js +46 -79
  149. package/lib/cjs/image/previewInner.js +70 -126
  150. package/lib/cjs/index.js +0 -86
  151. package/lib/cjs/input/index.d.ts +3 -3
  152. package/lib/cjs/input/index.js +35 -103
  153. package/lib/cjs/input/inputGroup.d.ts +1 -1
  154. package/lib/cjs/input/inputGroup.js +20 -44
  155. package/lib/cjs/input/textarea.d.ts +1 -1
  156. package/lib/cjs/input/textarea.js +33 -77
  157. package/lib/cjs/inputNumber/index.js +127 -199
  158. package/lib/cjs/layout/Sider.js +7 -32
  159. package/lib/cjs/layout/index.js +16 -40
  160. package/lib/cjs/layout/layout-context.js +0 -5
  161. package/lib/cjs/list/index.js +0 -26
  162. package/lib/cjs/list/item.js +6 -30
  163. package/lib/cjs/list/list-context.js +0 -4
  164. package/lib/cjs/locale/context.js +0 -4
  165. package/lib/cjs/locale/localeConsumer.d.ts +1 -1
  166. package/lib/cjs/locale/localeConsumer.js +0 -16
  167. package/lib/cjs/locale/localeProvider.js +0 -11
  168. package/lib/cjs/locale/source/ar.js +2 -4
  169. package/lib/cjs/locale/source/de.js +2 -4
  170. package/lib/cjs/locale/source/en_GB.js +2 -4
  171. package/lib/cjs/locale/source/en_US.js +2 -4
  172. package/lib/cjs/locale/source/es.js +0 -2
  173. package/lib/cjs/locale/source/fr.js +2 -4
  174. package/lib/cjs/locale/source/id_ID.js +2 -4
  175. package/lib/cjs/locale/source/it.js +2 -4
  176. package/lib/cjs/locale/source/ja_JP.js +2 -4
  177. package/lib/cjs/locale/source/ko_KR.js +2 -4
  178. package/lib/cjs/locale/source/ms_MY.js +2 -4
  179. package/lib/cjs/locale/source/nl_NL.js +0 -2
  180. package/lib/cjs/locale/source/pl_PL.js +0 -2
  181. package/lib/cjs/locale/source/pt_BR.js +2 -4
  182. package/lib/cjs/locale/source/ro.js +0 -2
  183. package/lib/cjs/locale/source/ru_RU.js +2 -4
  184. package/lib/cjs/locale/source/sv_SE.js +0 -2
  185. package/lib/cjs/locale/source/th_TH.js +2 -4
  186. package/lib/cjs/locale/source/tr_TR.js +2 -4
  187. package/lib/cjs/locale/source/vi_VN.js +2 -4
  188. package/lib/cjs/locale/source/zh_CN.js +2 -4
  189. package/lib/cjs/locale/source/zh_TW.js +2 -4
  190. package/lib/cjs/modal/ConfirmModal.js +9 -29
  191. package/lib/cjs/modal/Modal.d.ts +2 -2
  192. package/lib/cjs/modal/Modal.js +17 -80
  193. package/lib/cjs/modal/ModalContent.js +13 -72
  194. package/lib/cjs/modal/confirm.d.ts +9 -3
  195. package/lib/cjs/modal/confirm.js +4 -28
  196. package/lib/cjs/modal/index.d.ts +1 -1
  197. package/lib/cjs/modal/index.js +0 -4
  198. package/lib/cjs/modal/useModal/HookModal.js +4 -18
  199. package/lib/cjs/modal/useModal/index.d.ts +1 -1
  200. package/lib/cjs/modal/useModal/index.js +4 -18
  201. package/lib/cjs/navigation/CollapseButton.js +0 -11
  202. package/lib/cjs/navigation/Footer.js +0 -20
  203. package/lib/cjs/navigation/Header.d.ts +1 -1
  204. package/lib/cjs/navigation/Header.js +0 -18
  205. package/lib/cjs/navigation/Item.js +3 -51
  206. package/lib/cjs/navigation/SubNav.js +7 -67
  207. package/lib/cjs/navigation/index.d.ts +2 -2
  208. package/lib/cjs/navigation/index.js +5 -60
  209. package/lib/cjs/navigation/nav-context.js +0 -4
  210. package/lib/cjs/notification/index.d.ts +1 -1
  211. package/lib/cjs/notification/index.js +4 -56
  212. package/lib/cjs/notification/notice.js +24 -58
  213. package/lib/cjs/notification/useNotification/HookNotice.js +3 -18
  214. package/lib/cjs/notification/useNotification/index.js +4 -25
  215. package/lib/cjs/overflowList/index.d.ts +41 -24
  216. package/lib/cjs/overflowList/index.js +7 -65
  217. package/lib/cjs/overflowList/intersectionObserver.js +2 -21
  218. package/lib/cjs/pagination/index.d.ts +2 -2
  219. package/lib/cjs/pagination/index.js +7 -59
  220. package/lib/cjs/popconfirm/index.js +9 -54
  221. package/lib/cjs/popover/Arrow.js +6 -19
  222. package/lib/cjs/popover/index.js +11 -38
  223. package/lib/cjs/progress/index.js +8 -48
  224. package/lib/cjs/radio/context.d.ts +2 -2
  225. package/lib/cjs/radio/context.js +0 -4
  226. package/lib/cjs/radio/index.js +0 -5
  227. package/lib/cjs/radio/radio.d.ts +3 -3
  228. package/lib/cjs/radio/radio.js +1 -36
  229. package/lib/cjs/radio/radioGroup.d.ts +2 -2
  230. package/lib/cjs/radio/radioGroup.js +0 -24
  231. package/lib/cjs/radio/radioInner.d.ts +1 -1
  232. package/lib/cjs/radio/radioInner.js +0 -21
  233. package/lib/cjs/rating/index.js +4 -51
  234. package/lib/cjs/rating/item.d.ts +1 -1
  235. package/lib/cjs/rating/item.js +2 -27
  236. package/lib/cjs/resizeObserver/index.js +4 -28
  237. package/lib/cjs/scrollList/index.js +0 -13
  238. package/lib/cjs/scrollList/scrollItem.js +15 -113
  239. package/lib/cjs/select/index.d.ts +6 -6
  240. package/lib/cjs/select/index.js +27 -164
  241. package/lib/cjs/select/option.js +27 -55
  242. package/lib/cjs/select/optionGroup.js +0 -12
  243. package/lib/cjs/select/utils.js +8 -24
  244. package/lib/cjs/select/virtualRow.js +0 -2
  245. package/lib/cjs/sideSheet/SideSheetContent.js +2 -40
  246. package/lib/cjs/sideSheet/index.js +21 -66
  247. package/lib/cjs/skeleton/index.js +9 -28
  248. package/lib/cjs/skeleton/item.d.ts +2 -2
  249. package/lib/cjs/skeleton/item.js +8 -29
  250. package/lib/cjs/slider/index.js +7 -68
  251. package/lib/cjs/space/index.d.ts +3 -3
  252. package/lib/cjs/space/index.js +0 -20
  253. package/lib/cjs/space/utils.js +0 -9
  254. package/lib/cjs/spin/icon.js +4 -17
  255. package/lib/cjs/spin/index.d.ts +1 -1
  256. package/lib/cjs/spin/index.js +0 -20
  257. package/lib/cjs/steps/basicStep.d.ts +2 -2
  258. package/lib/cjs/steps/basicStep.js +0 -22
  259. package/lib/cjs/steps/basicSteps.d.ts +3 -3
  260. package/lib/cjs/steps/basicSteps.js +0 -15
  261. package/lib/cjs/steps/context.js +0 -4
  262. package/lib/cjs/steps/fillStep.d.ts +1 -1
  263. package/lib/cjs/steps/fillStep.js +0 -19
  264. package/lib/cjs/steps/fillSteps.d.ts +2 -2
  265. package/lib/cjs/steps/fillSteps.js +0 -17
  266. package/lib/cjs/steps/index.d.ts +1 -1
  267. package/lib/cjs/steps/index.js +4 -26
  268. package/lib/cjs/steps/navStep.js +0 -11
  269. package/lib/cjs/steps/navSteps.d.ts +1 -1
  270. package/lib/cjs/steps/navSteps.js +0 -13
  271. package/lib/cjs/steps/step.d.ts +1 -1
  272. package/lib/cjs/steps/step.js +0 -15
  273. package/lib/cjs/switch/index.js +1 -22
  274. package/lib/cjs/table/Body/BaseRow.d.ts +1 -1
  275. package/lib/cjs/table/Body/BaseRow.js +37 -101
  276. package/lib/cjs/table/Body/ExpandedRow.d.ts +1 -1
  277. package/lib/cjs/table/Body/ExpandedRow.js +5 -30
  278. package/lib/cjs/table/Body/SectionRow.js +8 -46
  279. package/lib/cjs/table/Body/index.js +38 -153
  280. package/lib/cjs/table/ColGroup.js +2 -14
  281. package/lib/cjs/table/Column.js +0 -7
  282. package/lib/cjs/table/ColumnFilter.js +4 -30
  283. package/lib/cjs/table/ColumnSelection.js +5 -24
  284. package/lib/cjs/table/ColumnShape.js +0 -4
  285. package/lib/cjs/table/ColumnSorter.js +0 -13
  286. package/lib/cjs/table/CustomExpandIcon.js +0 -16
  287. package/lib/cjs/table/HeadTable.js +0 -23
  288. package/lib/cjs/table/ResizableHeaderCell.d.ts +1 -1
  289. package/lib/cjs/table/ResizableHeaderCell.js +9 -20
  290. package/lib/cjs/table/ResizableTable.js +5 -47
  291. package/lib/cjs/table/Table.d.ts +2 -2
  292. package/lib/cjs/table/Table.js +534 -771
  293. package/lib/cjs/table/TableCell.js +20 -81
  294. package/lib/cjs/table/TableContextProvider.js +0 -7
  295. package/lib/cjs/table/TableHeader.js +5 -33
  296. package/lib/cjs/table/TableHeaderRow.js +8 -45
  297. package/lib/cjs/table/TablePagination.js +1 -12
  298. package/lib/cjs/table/getColumns.js +0 -11
  299. package/lib/cjs/table/index.js +2 -20
  300. package/lib/cjs/table/interface.d.ts +58 -58
  301. package/lib/cjs/table/table-context.js +1 -5
  302. package/lib/cjs/table/utils.js +6 -30
  303. package/lib/cjs/tabs/TabBar.js +13 -61
  304. package/lib/cjs/tabs/TabItem.js +18 -31
  305. package/lib/cjs/tabs/TabPane.js +10 -35
  306. package/lib/cjs/tabs/index.js +20 -83
  307. package/lib/cjs/tabs/interface.d.ts +3 -3
  308. package/lib/cjs/tabs/tabs-context.js +0 -4
  309. package/lib/cjs/tag/group.js +0 -27
  310. package/lib/cjs/tag/index.js +23 -60
  311. package/lib/cjs/tag/interface.d.ts +5 -5
  312. package/lib/cjs/tagInput/index.d.ts +3 -3
  313. package/lib/cjs/tagInput/index.js +2 -77
  314. package/lib/cjs/timePicker/Combobox.d.ts +2 -2
  315. package/lib/cjs/timePicker/Combobox.js +7 -54
  316. package/lib/cjs/timePicker/PanelShape.js +0 -3
  317. package/lib/cjs/timePicker/TimeInput.d.ts +1 -1
  318. package/lib/cjs/timePicker/TimeInput.js +32 -64
  319. package/lib/cjs/timePicker/TimePicker.d.ts +3 -3
  320. package/lib/cjs/timePicker/TimePicker.js +39 -99
  321. package/lib/cjs/timePicker/TimeShape.js +0 -5
  322. package/lib/cjs/timePicker/index.d.ts +1 -1
  323. package/lib/cjs/timePicker/index.js +0 -9
  324. package/lib/cjs/timeline/index.js +0 -27
  325. package/lib/cjs/timeline/item.js +0 -13
  326. package/lib/cjs/toast/index.js +5 -59
  327. package/lib/cjs/toast/toast.js +1 -29
  328. package/lib/cjs/toast/useToast/HookToast.js +3 -18
  329. package/lib/cjs/toast/useToast/index.js +2 -17
  330. package/lib/cjs/tooltip/ArrowBoundingShape.js +0 -4
  331. package/lib/cjs/tooltip/TriangleArrow.js +4 -12
  332. package/lib/cjs/tooltip/TriangleArrowVertical.js +4 -12
  333. package/lib/cjs/tooltip/index.d.ts +2 -2
  334. package/lib/cjs/tooltip/index.js +24 -134
  335. package/lib/cjs/transfer/index.d.ts +5 -5
  336. package/lib/cjs/transfer/index.js +10 -93
  337. package/lib/cjs/tree/autoSizer.js +4 -24
  338. package/lib/cjs/tree/index.js +31 -122
  339. package/lib/cjs/tree/interface.d.ts +2 -2
  340. package/lib/cjs/tree/nodeCollapsible.js +4 -15
  341. package/lib/cjs/tree/nodeList.js +0 -22
  342. package/lib/cjs/tree/treeContext.js +0 -4
  343. package/lib/cjs/tree/treeNode.js +21 -94
  344. package/lib/cjs/tree/treeUtil.js +0 -6
  345. package/lib/cjs/treeSelect/index.d.ts +6 -6
  346. package/lib/cjs/treeSelect/index.js +46 -196
  347. package/lib/cjs/trigger/index.js +5 -16
  348. package/lib/cjs/typography/base.js +35 -130
  349. package/lib/cjs/typography/copyable.js +2 -30
  350. package/lib/cjs/typography/index.d.ts +1 -1
  351. package/lib/cjs/typography/index.js +0 -9
  352. package/lib/cjs/typography/interface.d.ts +9 -9
  353. package/lib/cjs/typography/numeral.d.ts +1 -1
  354. package/lib/cjs/typography/numeral.js +4 -20
  355. package/lib/cjs/typography/paragraph.d.ts +1 -1
  356. package/lib/cjs/typography/paragraph.js +0 -12
  357. package/lib/cjs/typography/text.d.ts +1 -1
  358. package/lib/cjs/typography/text.js +0 -10
  359. package/lib/cjs/typography/title.d.ts +2 -2
  360. package/lib/cjs/typography/title.js +6 -20
  361. package/lib/cjs/typography/typography.js +7 -23
  362. package/lib/cjs/typography/util.js +22 -50
  363. package/lib/cjs/upload/fileCard.js +2 -52
  364. package/lib/cjs/upload/index.js +1 -70
  365. package/lib/cjs/upload/interface.d.ts +5 -5
  366. package/lib/es/_base/base.d.ts +3 -3
  367. package/lib/es/_base/baseComponent.d.ts +1 -1
  368. package/lib/es/_base/baseComponent.js +4 -11
  369. package/lib/es/_base/reactUtils.js +4 -8
  370. package/lib/es/_cssAnimation/index.js +4 -22
  371. package/lib/es/_portal/index.js +0 -23
  372. package/lib/es/_utils/hooks/usePrevFocus.js +0 -2
  373. package/lib/es/_utils/index.js +6 -28
  374. package/lib/es/anchor/anchor-context.d.ts +1 -1
  375. package/lib/es/anchor/index.js +2 -32
  376. package/lib/es/anchor/link.js +4 -24
  377. package/lib/es/autoComplete/index.d.ts +1 -1
  378. package/lib/es/autoComplete/index.js +3 -25
  379. package/lib/es/autoComplete/option.js +26 -45
  380. package/lib/es/avatar/avatarGroup.js +9 -28
  381. package/lib/es/avatar/index.js +15 -41
  382. package/lib/es/avatar/interface.d.ts +6 -6
  383. package/lib/es/backtop/index.js +9 -22
  384. package/lib/es/badge/index.d.ts +3 -3
  385. package/lib/es/badge/index.js +16 -24
  386. package/lib/es/banner/index.d.ts +1 -1
  387. package/lib/es/banner/index.js +2 -15
  388. package/lib/es/breadcrumb/index.d.ts +1 -1
  389. package/lib/es/breadcrumb/index.js +0 -31
  390. package/lib/es/breadcrumb/item.d.ts +1 -1
  391. package/lib/es/breadcrumb/item.js +16 -38
  392. package/lib/es/button/Button.d.ts +4 -4
  393. package/lib/es/button/Button.js +18 -27
  394. package/lib/es/button/buttonGroup.d.ts +1 -1
  395. package/lib/es/button/buttonGroup.js +10 -24
  396. package/lib/es/button/index.js +0 -5
  397. package/lib/es/button/splitButtonGroup.js +0 -1
  398. package/lib/es/calendar/dayCalendar.js +0 -13
  399. package/lib/es/calendar/dayCol.js +0 -14
  400. package/lib/es/calendar/index.js +6 -12
  401. package/lib/es/calendar/interface.d.ts +5 -5
  402. package/lib/es/calendar/monthCalendar.js +6 -41
  403. package/lib/es/calendar/rangeCalendar.js +2 -18
  404. package/lib/es/calendar/timeCol.js +0 -7
  405. package/lib/es/calendar/weekCalendar.js +0 -17
  406. package/lib/es/card/cardGroup.d.ts +1 -1
  407. package/lib/es/card/cardGroup.js +8 -15
  408. package/lib/es/card/index.d.ts +1 -1
  409. package/lib/es/card/index.js +7 -23
  410. package/lib/es/card/meta.d.ts +1 -1
  411. package/lib/es/card/meta.js +8 -15
  412. package/lib/es/carousel/CarouselArrow.d.ts +2 -2
  413. package/lib/es/carousel/CarouselArrow.js +0 -8
  414. package/lib/es/carousel/CarouselIndicator.js +9 -27
  415. package/lib/es/carousel/index.js +0 -34
  416. package/lib/es/cascader/index.d.ts +2 -2
  417. package/lib/es/cascader/index.js +12 -105
  418. package/lib/es/cascader/item.js +2 -44
  419. package/lib/es/checkbox/checkbox.d.ts +1 -1
  420. package/lib/es/checkbox/checkbox.js +20 -42
  421. package/lib/es/checkbox/checkboxGroup.d.ts +4 -4
  422. package/lib/es/checkbox/checkboxGroup.js +8 -20
  423. package/lib/es/checkbox/checkboxInner.js +0 -6
  424. package/lib/es/checkbox/context.d.ts +1 -1
  425. package/lib/es/checkbox/index.js +0 -2
  426. package/lib/es/collapse/index.js +14 -31
  427. package/lib/es/collapse/item.js +13 -27
  428. package/lib/es/collapsible/index.js +0 -25
  429. package/lib/es/configProvider/index.js +5 -13
  430. package/lib/es/datePicker/dateInput.js +41 -81
  431. package/lib/es/datePicker/datePicker.d.ts +1 -1
  432. package/lib/es/datePicker/datePicker.js +10 -103
  433. package/lib/es/datePicker/index.js +2 -8
  434. package/lib/es/datePicker/insetInput.js +0 -6
  435. package/lib/es/datePicker/month.d.ts +1 -1
  436. package/lib/es/datePicker/month.js +24 -78
  437. package/lib/es/datePicker/monthsGrid.d.ts +1 -1
  438. package/lib/es/datePicker/monthsGrid.js +20 -76
  439. package/lib/es/datePicker/navigation.js +8 -13
  440. package/lib/es/datePicker/quickControl.js +0 -6
  441. package/lib/es/datePicker/yearAndMonth.d.ts +1 -1
  442. package/lib/es/datePicker/yearAndMonth.js +5 -36
  443. package/lib/es/descriptions/descriptions-context.d.ts +1 -1
  444. package/lib/es/descriptions/index.d.ts +1 -1
  445. package/lib/es/descriptions/index.js +0 -3
  446. package/lib/es/descriptions/item.js +0 -3
  447. package/lib/es/divider/index.js +9 -17
  448. package/lib/es/dropdown/dropdownDivider.d.ts +1 -1
  449. package/lib/es/dropdown/dropdownDivider.js +0 -2
  450. package/lib/es/dropdown/dropdownItem.d.ts +1 -1
  451. package/lib/es/dropdown/dropdownItem.js +0 -11
  452. package/lib/es/dropdown/dropdownMenu.d.ts +1 -1
  453. package/lib/es/dropdown/dropdownMenu.js +6 -15
  454. package/lib/es/dropdown/dropdownTitle.d.ts +1 -1
  455. package/lib/es/dropdown/dropdownTitle.js +0 -3
  456. package/lib/es/dropdown/index.d.ts +1 -1
  457. package/lib/es/dropdown/index.js +21 -47
  458. package/lib/es/empty/index.js +0 -10
  459. package/lib/es/form/arrayField.js +14 -41
  460. package/lib/es/form/baseForm.js +26 -49
  461. package/lib/es/form/errorMessage.d.ts +1 -1
  462. package/lib/es/form/errorMessage.js +0 -9
  463. package/lib/es/form/field.js +4 -4
  464. package/lib/es/form/group.js +11 -29
  465. package/lib/es/form/hoc/withField.js +68 -125
  466. package/lib/es/form/hoc/withFormApi.js +0 -3
  467. package/lib/es/form/hoc/withFormState.js +0 -3
  468. package/lib/es/form/hooks/index.js +2 -2
  469. package/lib/es/form/hooks/useArrayFieldState.js +0 -2
  470. package/lib/es/form/hooks/useFieldApi.js +0 -3
  471. package/lib/es/form/hooks/useFieldState.js +0 -3
  472. package/lib/es/form/hooks/useFormState.js +0 -2
  473. package/lib/es/form/hooks/useStateWithGetter.js +2 -5
  474. package/lib/es/form/index.js +4 -4
  475. package/lib/es/form/interface.d.ts +4 -4
  476. package/lib/es/form/interface.js +0 -1
  477. package/lib/es/form/label.js +0 -1
  478. package/lib/es/form/section.js +0 -1
  479. package/lib/es/form/slot.js +10 -39
  480. package/lib/es/grid/col.js +10 -23
  481. package/lib/es/grid/row.d.ts +2 -2
  482. package/lib/es/grid/row.js +10 -25
  483. package/lib/es/highlight/index.js +0 -3
  484. package/lib/es/iconButton/index.d.ts +1 -1
  485. package/lib/es/iconButton/index.js +18 -31
  486. package/lib/es/image/image.d.ts +0 -3
  487. package/lib/es/image/image.js +19 -70
  488. package/lib/es/image/interface.d.ts +1 -1
  489. package/lib/es/image/preview.d.ts +4 -0
  490. package/lib/es/image/preview.js +51 -48
  491. package/lib/es/image/previewFooter.js +9 -34
  492. package/lib/es/image/previewHeader.js +0 -4
  493. package/lib/es/image/previewImage.js +46 -69
  494. package/lib/es/image/previewInner.js +69 -110
  495. package/lib/es/index.js +0 -1
  496. package/lib/es/input/index.d.ts +3 -3
  497. package/lib/es/input/index.js +35 -88
  498. package/lib/es/input/inputGroup.d.ts +1 -1
  499. package/lib/es/input/inputGroup.js +20 -33
  500. package/lib/es/input/textarea.d.ts +1 -1
  501. package/lib/es/input/textarea.js +34 -65
  502. package/lib/es/inputNumber/index.js +127 -181
  503. package/lib/es/layout/Sider.js +7 -23
  504. package/lib/es/layout/index.js +16 -31
  505. package/lib/es/list/index.js +0 -11
  506. package/lib/es/list/item.js +6 -18
  507. package/lib/es/locale/localeConsumer.d.ts +1 -1
  508. package/lib/es/locale/localeConsumer.js +0 -7
  509. package/lib/es/locale/localeProvider.js +0 -2
  510. package/lib/es/locale/source/ar.js +2 -2
  511. package/lib/es/locale/source/de.js +2 -2
  512. package/lib/es/locale/source/en_GB.js +2 -2
  513. package/lib/es/locale/source/en_US.js +2 -2
  514. package/lib/es/locale/source/es.js +0 -1
  515. package/lib/es/locale/source/fr.js +2 -2
  516. package/lib/es/locale/source/id_ID.js +2 -2
  517. package/lib/es/locale/source/it.js +2 -2
  518. package/lib/es/locale/source/ja_JP.js +2 -2
  519. package/lib/es/locale/source/ko_KR.js +2 -2
  520. package/lib/es/locale/source/ms_MY.js +2 -2
  521. package/lib/es/locale/source/nl_NL.js +0 -1
  522. package/lib/es/locale/source/pl_PL.js +0 -1
  523. package/lib/es/locale/source/pt_BR.js +2 -2
  524. package/lib/es/locale/source/ro.js +0 -1
  525. package/lib/es/locale/source/ru_RU.js +2 -2
  526. package/lib/es/locale/source/sv_SE.js +0 -1
  527. package/lib/es/locale/source/th_TH.js +2 -2
  528. package/lib/es/locale/source/tr_TR.js +2 -2
  529. package/lib/es/locale/source/vi_VN.js +2 -2
  530. package/lib/es/locale/source/zh_CN.js +2 -2
  531. package/lib/es/locale/source/zh_TW.js +2 -2
  532. package/lib/es/modal/ConfirmModal.js +9 -20
  533. package/lib/es/modal/Modal.d.ts +2 -2
  534. package/lib/es/modal/Modal.js +17 -63
  535. package/lib/es/modal/ModalContent.js +14 -54
  536. package/lib/es/modal/confirm.d.ts +9 -3
  537. package/lib/es/modal/confirm.js +4 -11
  538. package/lib/es/modal/index.d.ts +1 -1
  539. package/lib/es/modal/useModal/HookModal.js +6 -14
  540. package/lib/es/modal/useModal/index.d.ts +1 -1
  541. package/lib/es/modal/useModal/index.js +4 -9
  542. package/lib/es/navigation/CollapseButton.js +0 -4
  543. package/lib/es/navigation/Footer.js +0 -7
  544. package/lib/es/navigation/Header.d.ts +1 -1
  545. package/lib/es/navigation/Header.js +0 -5
  546. package/lib/es/navigation/Item.js +2 -35
  547. package/lib/es/navigation/SubNav.js +6 -45
  548. package/lib/es/navigation/index.d.ts +2 -2
  549. package/lib/es/navigation/index.js +5 -38
  550. package/lib/es/notification/index.d.ts +1 -1
  551. package/lib/es/notification/index.js +4 -39
  552. package/lib/es/notification/notice.js +24 -46
  553. package/lib/es/notification/useNotification/HookNotice.js +3 -11
  554. package/lib/es/notification/useNotification/index.js +6 -16
  555. package/lib/es/overflowList/index.d.ts +41 -24
  556. package/lib/es/overflowList/index.js +6 -46
  557. package/lib/es/overflowList/intersectionObserver.js +2 -13
  558. package/lib/es/pagination/index.d.ts +2 -2
  559. package/lib/es/pagination/index.js +7 -37
  560. package/lib/es/popconfirm/index.js +9 -37
  561. package/lib/es/popover/Arrow.js +6 -18
  562. package/lib/es/popover/index.js +11 -27
  563. package/lib/es/progress/index.js +8 -37
  564. package/lib/es/radio/context.d.ts +2 -2
  565. package/lib/es/radio/index.js +0 -2
  566. package/lib/es/radio/radio.d.ts +3 -3
  567. package/lib/es/radio/radio.js +0 -23
  568. package/lib/es/radio/radioGroup.d.ts +2 -2
  569. package/lib/es/radio/radioGroup.js +0 -14
  570. package/lib/es/radio/radioInner.d.ts +1 -1
  571. package/lib/es/radio/radioInner.js +0 -11
  572. package/lib/es/rating/index.js +4 -36
  573. package/lib/es/rating/item.d.ts +1 -1
  574. package/lib/es/rating/item.js +2 -16
  575. package/lib/es/resizeObserver/index.js +4 -19
  576. package/lib/es/scrollList/index.js +2 -5
  577. package/lib/es/scrollList/scrollItem.js +15 -104
  578. package/lib/es/select/index.d.ts +6 -6
  579. package/lib/es/select/index.js +27 -123
  580. package/lib/es/select/option.js +27 -46
  581. package/lib/es/select/optionGroup.js +0 -5
  582. package/lib/es/select/utils.js +8 -19
  583. package/lib/es/select/virtualRow.js +0 -1
  584. package/lib/es/sideSheet/SideSheetContent.js +2 -28
  585. package/lib/es/sideSheet/index.js +21 -52
  586. package/lib/es/skeleton/index.js +9 -18
  587. package/lib/es/skeleton/item.d.ts +2 -2
  588. package/lib/es/skeleton/item.js +8 -17
  589. package/lib/es/slider/index.js +6 -53
  590. package/lib/es/space/index.d.ts +3 -3
  591. package/lib/es/space/index.js +0 -6
  592. package/lib/es/space/utils.js +0 -2
  593. package/lib/es/spin/icon.js +4 -15
  594. package/lib/es/spin/index.d.ts +1 -1
  595. package/lib/es/spin/index.js +0 -10
  596. package/lib/es/steps/basicStep.d.ts +2 -2
  597. package/lib/es/steps/basicStep.js +0 -15
  598. package/lib/es/steps/basicSteps.d.ts +3 -3
  599. package/lib/es/steps/basicSteps.js +0 -6
  600. package/lib/es/steps/fillStep.d.ts +1 -1
  601. package/lib/es/steps/fillStep.js +0 -13
  602. package/lib/es/steps/fillSteps.d.ts +2 -2
  603. package/lib/es/steps/fillSteps.js +0 -6
  604. package/lib/es/steps/index.d.ts +1 -1
  605. package/lib/es/steps/index.js +4 -15
  606. package/lib/es/steps/navStep.js +0 -5
  607. package/lib/es/steps/navSteps.d.ts +1 -1
  608. package/lib/es/steps/navSteps.js +0 -3
  609. package/lib/es/steps/step.d.ts +1 -1
  610. package/lib/es/steps/step.js +0 -7
  611. package/lib/es/switch/index.js +0 -13
  612. package/lib/es/table/Body/BaseRow.d.ts +1 -1
  613. package/lib/es/table/Body/BaseRow.js +37 -85
  614. package/lib/es/table/Body/ExpandedRow.d.ts +1 -1
  615. package/lib/es/table/Body/ExpandedRow.js +5 -18
  616. package/lib/es/table/Body/SectionRow.js +8 -35
  617. package/lib/es/table/Body/index.js +38 -149
  618. package/lib/es/table/ColGroup.js +2 -7
  619. package/lib/es/table/Column.js +0 -2
  620. package/lib/es/table/ColumnFilter.js +3 -20
  621. package/lib/es/table/ColumnSelection.js +5 -15
  622. package/lib/es/table/ColumnSorter.js +0 -1
  623. package/lib/es/table/CustomExpandIcon.js +0 -6
  624. package/lib/es/table/HeadTable.js +0 -15
  625. package/lib/es/table/ResizableHeaderCell.d.ts +1 -1
  626. package/lib/es/table/ResizableHeaderCell.js +9 -17
  627. package/lib/es/table/ResizableTable.js +5 -37
  628. package/lib/es/table/Table.d.ts +2 -2
  629. package/lib/es/table/Table.js +457 -664
  630. package/lib/es/table/TableCell.js +19 -65
  631. package/lib/es/table/TableContextProvider.js +0 -2
  632. package/lib/es/table/TableHeader.js +4 -23
  633. package/lib/es/table/TableHeaderRow.js +8 -39
  634. package/lib/es/table/TablePagination.js +0 -4
  635. package/lib/es/table/getColumns.js +0 -4
  636. package/lib/es/table/index.js +2 -10
  637. package/lib/es/table/interface.d.ts +58 -58
  638. package/lib/es/table/table-context.js +0 -1
  639. package/lib/es/table/utils.js +6 -19
  640. package/lib/es/tabs/TabBar.js +13 -46
  641. package/lib/es/tabs/TabItem.js +18 -24
  642. package/lib/es/tabs/TabPane.js +10 -25
  643. package/lib/es/tabs/index.js +20 -59
  644. package/lib/es/tabs/interface.d.ts +3 -3
  645. package/lib/es/tag/group.js +0 -14
  646. package/lib/es/tag/index.js +23 -45
  647. package/lib/es/tag/interface.d.ts +5 -5
  648. package/lib/es/tagInput/index.d.ts +3 -3
  649. package/lib/es/tagInput/index.js +2 -54
  650. package/lib/es/timePicker/Combobox.d.ts +2 -2
  651. package/lib/es/timePicker/Combobox.js +6 -42
  652. package/lib/es/timePicker/TimeInput.d.ts +1 -1
  653. package/lib/es/timePicker/TimeInput.js +32 -56
  654. package/lib/es/timePicker/TimePicker.d.ts +3 -3
  655. package/lib/es/timePicker/TimePicker.js +39 -80
  656. package/lib/es/timePicker/TimeShape.js +0 -1
  657. package/lib/es/timePicker/index.d.ts +1 -1
  658. package/lib/es/timePicker/index.js +0 -1
  659. package/lib/es/timeline/index.js +0 -16
  660. package/lib/es/timeline/item.js +0 -1
  661. package/lib/es/toast/index.js +4 -41
  662. package/lib/es/toast/toast.js +0 -17
  663. package/lib/es/toast/useToast/HookToast.js +3 -11
  664. package/lib/es/toast/useToast/index.js +4 -13
  665. package/lib/es/tooltip/TriangleArrow.js +4 -10
  666. package/lib/es/tooltip/TriangleArrowVertical.js +4 -10
  667. package/lib/es/tooltip/index.d.ts +2 -2
  668. package/lib/es/tooltip/index.js +24 -112
  669. package/lib/es/transfer/index.d.ts +5 -5
  670. package/lib/es/transfer/index.js +10 -67
  671. package/lib/es/tree/autoSizer.js +4 -13
  672. package/lib/es/tree/index.js +30 -96
  673. package/lib/es/tree/interface.d.ts +2 -2
  674. package/lib/es/tree/nodeCollapsible.js +4 -10
  675. package/lib/es/tree/nodeList.js +0 -14
  676. package/lib/es/tree/treeNode.js +21 -76
  677. package/lib/es/tree/treeUtil.js +0 -1
  678. package/lib/es/treeSelect/index.d.ts +6 -6
  679. package/lib/es/treeSelect/index.js +46 -156
  680. package/lib/es/trigger/index.js +5 -13
  681. package/lib/es/typography/base.js +35 -113
  682. package/lib/es/typography/copyable.js +2 -14
  683. package/lib/es/typography/index.d.ts +1 -1
  684. package/lib/es/typography/interface.d.ts +9 -9
  685. package/lib/es/typography/numeral.d.ts +1 -1
  686. package/lib/es/typography/numeral.js +4 -10
  687. package/lib/es/typography/paragraph.d.ts +1 -1
  688. package/lib/es/typography/paragraph.js +0 -1
  689. package/lib/es/typography/text.d.ts +1 -1
  690. package/lib/es/typography/text.js +0 -1
  691. package/lib/es/typography/title.d.ts +2 -2
  692. package/lib/es/typography/title.js +6 -11
  693. package/lib/es/typography/typography.js +7 -14
  694. package/lib/es/typography/util.js +22 -45
  695. package/lib/es/upload/fileCard.js +2 -31
  696. package/lib/es/upload/index.js +0 -57
  697. package/lib/es/upload/interface.d.ts +5 -5
  698. package/package.json +8 -8
@@ -4,9 +4,7 @@ import _get from "lodash/get";
4
4
  import _noop from "lodash/noop";
5
5
  import _isString from "lodash/isString";
6
6
  import _isEqual from "lodash/isEqual";
7
-
8
7
  /* eslint-disable max-len */
9
-
10
8
  /* eslint-disable max-lines-per-function */
11
9
  import React, { Fragment } from 'react';
12
10
  import ReactDOM from 'react-dom';
@@ -38,18 +36,15 @@ import { isSemiIcon, getFocusableElements, getActiveElement } from '../_utils';
38
36
  import { getUuidShort } from '@douyinfe/semi-foundation/lib/es/utils/uuid';
39
37
  import '@douyinfe/semi-foundation/lib/es/select/select.css';
40
38
  const prefixcls = cssClasses.PREFIX;
41
- const key = 0; // Notes: Use the label of the option as the identifier, that is, the option in Select, the value is allowed to be the same, but the label must be unique
42
-
39
+ const key = 0;
40
+ // Notes: Use the label of the option as the identifier, that is, the option in Select, the value is allowed to be the same, but the label must be unique
43
41
  class Select extends BaseComponent {
44
42
  constructor(props) {
45
43
  super(props);
46
-
47
44
  this.setOptionContainerEl = node => this.optionContainerEl = {
48
45
  current: node
49
46
  };
50
-
51
47
  this.handleInputChange = (value, event) => this.foundation.handleInputChange(value, event);
52
-
53
48
  this.getTagItem = (item, i, renderSelectedItem) => {
54
49
  const {
55
50
  size,
@@ -60,7 +55,6 @@ class Select extends BaseComponent {
60
55
  value
61
56
  } = item[1];
62
57
  const disabled = item[1].disabled || selectDisabled;
63
-
64
58
  const onClose = (tagContent, e) => {
65
59
  if (e && typeof e.preventDefault === 'function') {
66
60
  e.preventDefault(); // make sure that tag will not hidden immediately in controlled mode
@@ -71,7 +65,6 @@ class Select extends BaseComponent {
71
65
  value
72
66
  });
73
67
  };
74
-
75
68
  const {
76
69
  content,
77
70
  isRenderInTag
@@ -85,7 +78,6 @@ class Select extends BaseComponent {
85
78
  closable: !disabled,
86
79
  onClose
87
80
  };
88
-
89
81
  if (isRenderInTag) {
90
82
  return /*#__PURE__*/React.createElement(Tag, Object.assign({}, basic, {
91
83
  color: "white",
@@ -99,7 +91,6 @@ class Select extends BaseComponent {
99
91
  }, content);
100
92
  }
101
93
  };
102
-
103
94
  this.state = {
104
95
  isOpen: false,
105
96
  isFocus: false,
@@ -118,7 +109,6 @@ class Select extends BaseComponent {
118
109
  overflowItemCount: 0
119
110
  };
120
111
  /* Generate random string */
121
-
122
112
  this.selectOptionListID = '';
123
113
  this.selectID = '';
124
114
  this.virtualizeListRef = /*#__PURE__*/React.createRef();
@@ -136,10 +126,8 @@ class Select extends BaseComponent {
136
126
  this.eventManager = new Event();
137
127
  this.foundation = new SelectFoundation(this.adapter);
138
128
  }
139
-
140
129
  get adapter() {
141
130
  var _this = this;
142
-
143
131
  const keyboardAdapter = {
144
132
  registerKeyDown: cb => {
145
133
  const keyboardEventSet = {
@@ -179,7 +167,6 @@ class Select extends BaseComponent {
179
167
  const {
180
168
  preventScroll
181
169
  } = this.props;
182
-
183
170
  if (this.inputRef && this.inputRef.current) {
184
171
  this.inputRef.current.focus({
185
172
  preventScroll
@@ -193,16 +180,15 @@ class Select extends BaseComponent {
193
180
  registerClickOutsideHandler: cb => {
194
181
  const clickOutsideHandler = e => {
195
182
  const optionInstance = this.optionsRef && this.optionsRef.current;
196
- const triggerDom = this.triggerRef && this.triggerRef.current; // eslint-disable-next-line react/no-find-dom-node
197
-
198
- const optionsDom = ReactDOM.findDOMNode(optionInstance); // let isInPanel = optionsDom && optionsDom.contains(e.target);
183
+ const triggerDom = this.triggerRef && this.triggerRef.current;
184
+ // eslint-disable-next-line react/no-find-dom-node
185
+ const optionsDom = ReactDOM.findDOMNode(optionInstance);
186
+ // let isInPanel = optionsDom && optionsDom.contains(e.target);
199
187
  // let isInTrigger = triggerDom && triggerDom.contains(e.target);
200
-
201
188
  if (optionsDom && !optionsDom.contains(e.target) && triggerDom && !triggerDom.contains(e.target)) {
202
189
  cb(e);
203
190
  }
204
191
  };
205
-
206
192
  this.clickOutsideHandler = clickOutsideHandler;
207
193
  document.addEventListener('mousedown', clickOutsideHandler, false);
208
194
  },
@@ -239,7 +225,6 @@ class Select extends BaseComponent {
239
225
  const {
240
226
  optionList
241
227
  } = _this.props;
242
-
243
228
  if (optionList && optionList.length) {
244
229
  options = optionList.map((itemOpt, index) => Object.assign({
245
230
  _show: true,
@@ -255,11 +240,9 @@ class Select extends BaseComponent {
255
240
  optionGroups = result.optionGroups;
256
241
  options = result.options;
257
242
  }
258
-
259
243
  _this.setState({
260
244
  optionGroups
261
245
  });
262
-
263
246
  return options;
264
247
  },
265
248
  updateOptions: options => {
@@ -373,18 +356,14 @@ class Select extends BaseComponent {
373
356
  updateScrollTop: index => {
374
357
  // eslint-disable-next-line max-len
375
358
  let optionClassName = `.${prefixcls}-option-selected`;
376
-
377
359
  if (index !== undefined) {
378
360
  optionClassName = `.${prefixcls}-option:nth-child(${index})`;
379
361
  }
380
-
381
362
  let destNode = document.querySelector(`#${prefixcls}-${this.selectOptionListID} ${optionClassName}`);
382
-
383
363
  if (Array.isArray(destNode)) {
384
364
  // eslint-disable-next-line prefer-destructuring
385
365
  destNode = destNode[0];
386
366
  }
387
-
388
367
  if (destNode) {
389
368
  /**
390
369
  * Scroll the first selected item into view.
@@ -396,28 +375,23 @@ class Select extends BaseComponent {
396
375
  }
397
376
  });
398
377
  }
399
-
400
378
  componentDidMount() {
401
379
  this.foundation.init();
402
380
  this.selectOptionListID = getUuidShort();
403
381
  this.selectID = this.props.id || getUuidShort();
404
382
  }
405
-
406
383
  componentWillUnmount() {
407
384
  this.foundation.destroy();
408
385
  }
409
-
410
386
  componentDidUpdate(prevProps, prevState) {
411
387
  const prevChildrenKeys = React.Children.toArray(prevProps.children).map(child => child.key);
412
388
  const nowChildrenKeys = React.Children.toArray(this.props.children).map(child => child.key);
413
389
  let isOptionsChanged = false;
414
-
415
390
  if (!_isEqual(prevChildrenKeys, nowChildrenKeys) || !_isEqual(prevProps.optionList, this.props.optionList)) {
416
391
  isOptionsChanged = true;
417
392
  this.foundation.handleOptionListChange();
418
- } // Add isOptionChanged: There may be cases where the value is unchanged, but the optionList is updated. At this time, the label corresponding to the value may change, and the selected item needs to be updated
419
-
420
-
393
+ }
394
+ // Add isOptionChanged: There may be cases where the value is unchanged, but the optionList is updated. At this time, the label corresponding to the value may change, and the selected item needs to be updated
421
395
  if (!_isEqual(this.props.value, prevProps.value) || isOptionsChanged) {
422
396
  if ('value' in this.props) {
423
397
  this.foundation.handleValueChange(this.props.value);
@@ -426,7 +400,6 @@ class Select extends BaseComponent {
426
400
  }
427
401
  }
428
402
  }
429
-
430
403
  renderInput() {
431
404
  const {
432
405
  size,
@@ -435,9 +408,7 @@ class Select extends BaseComponent {
435
408
  inputProps,
436
409
  filter
437
410
  } = this.props;
438
-
439
411
  const inputPropsCls = _get(inputProps, 'className');
440
-
441
412
  const inputcls = cls(`${prefixcls}-input`, {
442
413
  [`${prefixcls}-input-single`]: !multiple,
443
414
  [`${prefixcls}-input-multiple`]: multiple
@@ -452,15 +423,14 @@ class Select extends BaseComponent {
452
423
  className: inputcls,
453
424
  onChange: this.handleInputChange
454
425
  }, inputProps);
455
- let style = {}; // Multiple choice mode
456
-
426
+ let style = {};
427
+ // Multiple choice mode
457
428
  if (multiple) {
458
429
  style = {
459
430
  width: inputValue ? `${inputValue.length * 16}px` : '2px'
460
431
  };
461
432
  selectInputProps.style = style;
462
433
  }
463
-
464
434
  return /*#__PURE__*/React.createElement(Input, Object.assign({
465
435
  ref: this.inputRef,
466
436
  size: size,
@@ -472,66 +442,54 @@ class Select extends BaseComponent {
472
442
  this.setState({
473
443
  isFocus: true
474
444
  });
475
- } // prevent event bubbling which will fire trigger onFocus event
476
-
477
-
478
- e.stopPropagation(); // e.nativeEvent.stopImmediatePropagation();
445
+ }
446
+ // prevent event bubbling which will fire trigger onFocus event
447
+ e.stopPropagation();
448
+ // e.nativeEvent.stopImmediatePropagation();
479
449
  },
480
450
  onBlur: e => this.foundation.handleInputBlur(e)
481
451
  }, selectInputProps));
482
452
  }
483
-
484
453
  close() {
485
454
  this.foundation.close();
486
455
  }
487
-
488
456
  open() {
489
457
  this.foundation.open();
490
458
  }
491
-
492
459
  clearInput() {
493
460
  this.foundation.clearInput();
494
461
  }
495
-
496
462
  selectAll() {
497
463
  this.foundation.selectAll();
498
464
  }
499
-
500
465
  deselectAll() {
501
466
  this.foundation.clearSelected();
502
467
  }
503
-
504
468
  focus() {
505
469
  this.foundation.focus();
506
470
  }
507
-
508
471
  onSelect(option, optionIndex, e) {
509
472
  this.foundation.onSelect(option, optionIndex, e);
510
473
  }
511
-
512
474
  onClear(e) {
513
475
  e.nativeEvent.stopImmediatePropagation();
514
476
  this.foundation.handleClearClick(e);
515
477
  }
516
-
517
478
  search(value, event) {
518
479
  this.handleInputChange(value, event);
519
480
  }
520
-
521
481
  renderEmpty() {
522
482
  return /*#__PURE__*/React.createElement(Option, {
523
483
  empty: true,
524
484
  emptyContent: this.props.emptyContent
525
485
  });
526
486
  }
527
-
528
487
  renderLoading() {
529
488
  const loadingWrapperCls = `${prefixcls}-loading-wrapper`;
530
489
  return /*#__PURE__*/React.createElement("div", {
531
490
  className: loadingWrapperCls
532
491
  }, /*#__PURE__*/React.createElement(Spin, null));
533
492
  }
534
-
535
493
  renderOption(option, optionIndex, style) {
536
494
  const {
537
495
  focusIndex,
@@ -543,11 +501,9 @@ class Select extends BaseComponent {
543
501
  let optionContent;
544
502
  const isFocused = optionIndex === focusIndex;
545
503
  let optionStyle = style || {};
546
-
547
504
  if (option.style) {
548
505
  optionStyle = Object.assign(Object.assign({}, optionStyle), option.style);
549
506
  }
550
-
551
507
  if (option._inputCreateOnly) {
552
508
  optionContent = this.renderCreateOption(option, isFocused, optionIndex, style);
553
509
  } else {
@@ -555,7 +511,6 @@ class Select extends BaseComponent {
555
511
  if ('key' in option) {
556
512
  option._keyInOptionList = option.key;
557
513
  }
558
-
559
514
  optionContent = /*#__PURE__*/React.createElement(Option, Object.assign({
560
515
  showTick: true
561
516
  }, option, {
@@ -570,15 +525,13 @@ class Select extends BaseComponent {
570
525
  id: `${this.selectID}-option-${optionIndex}`
571
526
  }), option.label);
572
527
  }
573
-
574
528
  return optionContent;
575
529
  }
576
-
577
530
  renderCreateOption(option, isFocused, optionIndex, style) {
578
531
  const {
579
532
  renderCreateItem
580
- } = this.props; // default render method
581
-
533
+ } = this.props;
534
+ // default render method
582
535
  if (typeof renderCreateItem === 'undefined') {
583
536
  const defaultCreateItem = /*#__PURE__*/React.createElement(Option, Object.assign({
584
537
  key: option.key || option.label + option.value,
@@ -595,7 +548,6 @@ class Select extends BaseComponent {
595
548
  }, locale.createText), option.value)));
596
549
  return defaultCreateItem;
597
550
  }
598
-
599
551
  const customCreateItem = renderCreateItem(option.value, isFocused);
600
552
  return (
601
553
  /*#__PURE__*/
@@ -608,18 +560,15 @@ class Select extends BaseComponent {
608
560
  }, customCreateItem)
609
561
  );
610
562
  }
611
-
612
563
  onOptionHover(optionIndex) {
613
564
  this.foundation.handleOptionMouseEnter(optionIndex);
614
565
  }
615
-
616
566
  renderWithGroup(visibleOptions) {
617
567
  const content = [];
618
568
  const groupStatus = new Map();
619
569
  visibleOptions.forEach((option, optionIndex) => {
620
570
  const parentGroup = option._parentGroup;
621
571
  const optionContent = this.renderOption(option, optionIndex);
622
-
623
572
  if (parentGroup && !groupStatus.has(parentGroup.label)) {
624
573
  // when use with OptionGroup and group content not already insert
625
574
  const groupContent = /*#__PURE__*/React.createElement(OptionGroup, Object.assign({}, parentGroup, {
@@ -628,12 +577,10 @@ class Select extends BaseComponent {
628
577
  groupStatus.set(parentGroup.label, true);
629
578
  content.push(groupContent);
630
579
  }
631
-
632
580
  content.push(optionContent);
633
581
  });
634
582
  return content;
635
583
  }
636
-
637
584
  renderVirtualizeList(visibleOptions) {
638
585
  const {
639
586
  virtualize
@@ -661,7 +608,6 @@ class Select extends BaseComponent {
661
608
  }
662
609
  }, VirtualRow);
663
610
  }
664
-
665
611
  renderOptions(children) {
666
612
  const {
667
613
  dropdownMinWidth,
@@ -680,15 +626,13 @@ class Select extends BaseComponent {
680
626
  virtualize,
681
627
  multiple,
682
628
  emptyContent
683
- } = this.props; // Do a filter first, instead of directly judging in forEach, so that the focusIndex can correspond to
684
-
629
+ } = this.props;
630
+ // Do a filter first, instead of directly judging in forEach, so that the focusIndex can correspond to
685
631
  const visibleOptions = options.filter(item => item._show);
686
632
  let listContent = this.renderWithGroup(visibleOptions);
687
-
688
633
  if (virtualize) {
689
634
  listContent = this.renderVirtualizeList(visibleOptions);
690
635
  }
691
-
692
636
  const style = Object.assign({
693
637
  minWidth: dropdownMinWidth
694
638
  }, dropdownStyle);
@@ -733,7 +677,6 @@ class Select extends BaseComponent {
733
677
  }, outerBottomSlot) : null)
734
678
  );
735
679
  }
736
-
737
680
  renderSingleSelection(selections, filterable) {
738
681
  let {
739
682
  renderSelectedItem
@@ -747,23 +690,20 @@ class Select extends BaseComponent {
747
690
  } = this.state;
748
691
  let renderText = '';
749
692
  const selectedItems = [...selections];
750
-
751
693
  if (typeof renderSelectedItem === 'undefined') {
752
694
  renderSelectedItem = optionNode => optionNode.label;
753
695
  }
754
-
755
696
  if (selectedItems.length) {
756
697
  const selectedItem = selectedItems[0][1];
757
698
  renderText = renderSelectedItem(selectedItem);
758
699
  }
759
-
760
700
  const spanCls = cls({
761
701
  [`${prefixcls}-selection-text`]: true,
762
702
  [`${prefixcls}-selection-placeholder`]: !renderText && renderText !== 0,
763
703
  [`${prefixcls}-selection-text-hide`]: inputValue && showInput,
764
704
  [`${prefixcls}-selection-text-inactive`]: !inputValue && showInput // Stack Input & RenderText(opacity 0.4)
765
-
766
705
  });
706
+
767
707
  const contentWrapperCls = `${prefixcls}-content-wrapper`;
768
708
  return /*#__PURE__*/React.createElement(React.Fragment, null, /*#__PURE__*/React.createElement("div", {
769
709
  className: contentWrapperCls
@@ -772,7 +712,6 @@ class Select extends BaseComponent {
772
712
  "x-semi-prop": "placeholder"
773
713
  }, renderText || renderText === 0 ? renderText : placeholder), filterable && showInput ? this.renderInput() : null));
774
714
  }
775
-
776
715
  renderTag(item, i, isCollapseItem) {
777
716
  const {
778
717
  size,
@@ -786,7 +725,6 @@ class Select extends BaseComponent {
786
725
  value
787
726
  } = item[1];
788
727
  const disabled = item[1].disabled || selectDisabled;
789
-
790
728
  const onClose = (tagContent, e) => {
791
729
  if (e && typeof e.preventDefault === 'function') {
792
730
  e.preventDefault(); // make sure that tag will not hidden immediately in controlled mode
@@ -797,14 +735,12 @@ class Select extends BaseComponent {
797
735
  value
798
736
  });
799
737
  };
800
-
801
738
  if (typeof renderSelectedItem === 'undefined') {
802
739
  renderSelectedItem = optionNode => ({
803
740
  isRenderInTag: true,
804
741
  content: optionNode.label
805
742
  });
806
743
  }
807
-
808
744
  const {
809
745
  content,
810
746
  isRenderInTag
@@ -833,7 +769,6 @@ class Select extends BaseComponent {
833
769
  }
834
770
  }
835
771
  }, content) : content;
836
-
837
772
  if (isRenderInTag) {
838
773
  return /*#__PURE__*/React.createElement(Tag, Object.assign({}, basic, {
839
774
  color: "white",
@@ -849,7 +784,6 @@ class Select extends BaseComponent {
849
784
  }, realContent);
850
785
  }
851
786
  }
852
-
853
787
  renderNTag(n, restTags) {
854
788
  const {
855
789
  size,
@@ -867,7 +801,6 @@ class Select extends BaseComponent {
867
801
  flexShrink: 0
868
802
  }
869
803
  }, "+", n);
870
-
871
804
  if (showRestTagsPopover) {
872
805
  nTag = /*#__PURE__*/React.createElement(Popover, Object.assign({
873
806
  showArrow: true,
@@ -885,15 +818,12 @@ class Select extends BaseComponent {
885
818
  key: `_+${n}_Popover`
886
819
  }), nTag);
887
820
  }
888
-
889
821
  return nTag;
890
822
  }
891
-
892
823
  renderOverflow(items, index) {
893
824
  const isCollapse = true;
894
825
  return items.length && items[0] ? this.renderTag(items[0], index, isCollapse) : null;
895
826
  }
896
-
897
827
  handleOverflow(items) {
898
828
  const {
899
829
  overflowItemCount,
@@ -904,12 +834,10 @@ class Select extends BaseComponent {
904
834
  } = this.props;
905
835
  const maxVisibleCount = selections.size - maxTagCount;
906
836
  const newOverFlowItemCount = maxVisibleCount > 0 ? maxVisibleCount + items.length - 1 : items.length - 1;
907
-
908
837
  if (items.length > 1 && overflowItemCount !== newOverFlowItemCount) {
909
838
  this.foundation.updateOverflowItemCount(selections.size, newOverFlowItemCount);
910
839
  }
911
840
  }
912
-
913
841
  renderCollapsedTags(selections, length) {
914
842
  const {
915
843
  overflowItemCount
@@ -924,7 +852,6 @@ class Select extends BaseComponent {
924
852
  visibleItemRenderer: (item, index) => this.renderTag(item, index)
925
853
  }), overflowItemCount > 0 && this.renderNTag(overflowItemCount, selections.slice(selections.length - overflowItemCount)));
926
854
  }
927
-
928
855
  renderOneLineTags(selectedItems, n) {
929
856
  let {
930
857
  renderSelectedItem
@@ -938,14 +865,12 @@ class Select extends BaseComponent {
938
865
  isFullTags
939
866
  } = this.state;
940
867
  let tagContent;
941
-
942
868
  if (typeof renderSelectedItem === 'undefined') {
943
869
  renderSelectedItem = optionNode => ({
944
870
  isRenderInTag: true,
945
871
  content: optionNode.label
946
872
  });
947
873
  }
948
-
949
874
  if (showRestTagsPopover) {
950
875
  // showRestTagsPopover = true,
951
876
  const mapItems = isFullTags ? selectedItems : selectedItems.slice(0, maxTagCount);
@@ -980,10 +905,8 @@ class Select extends BaseComponent {
980
905
  mode: "custom"
981
906
  });
982
907
  }
983
-
984
908
  return tagContent;
985
909
  }
986
-
987
910
  renderMultipleSelection(selections, filterable) {
988
911
  let {
989
912
  renderSelectedItem
@@ -999,14 +922,12 @@ class Select extends BaseComponent {
999
922
  isOpen
1000
923
  } = this.state;
1001
924
  const selectedItems = [...selections];
1002
-
1003
925
  if (typeof renderSelectedItem === 'undefined') {
1004
926
  renderSelectedItem = optionNode => ({
1005
927
  isRenderInTag: true,
1006
928
  content: optionNode.label
1007
929
  });
1008
930
  }
1009
-
1010
931
  const contentWrapperCls = cls({
1011
932
  [`${prefixcls}-content-wrapper`]: true,
1012
933
  [`${prefixcls}-content-wrapper-one-line`]: maxTagCount && !isOpen,
@@ -1028,21 +949,16 @@ class Select extends BaseComponent {
1028
949
  className: contentWrapperCls
1029
950
  }, selectedItems && selectedItems.length ? tagContent : placeholderText, !filterable ? null : this.renderInput()));
1030
951
  }
1031
-
1032
952
  onMouseEnter(e) {
1033
953
  this.foundation.handleMouseEnter(e);
1034
954
  }
1035
-
1036
955
  onMouseLeave(e) {
1037
956
  this.foundation.handleMouseLeave(e);
1038
957
  }
1039
-
1040
958
  onKeyPress(e) {
1041
959
  this.foundation.handleKeyPress(e);
1042
960
  }
1043
961
  /* Processing logic when popover visible changes */
1044
-
1045
-
1046
962
  handlePopoverVisibleChange(status) {
1047
963
  const {
1048
964
  virtualize
@@ -1050,23 +966,18 @@ class Select extends BaseComponent {
1050
966
  const {
1051
967
  selections
1052
968
  } = this.state;
1053
-
1054
969
  if (!status) {
1055
970
  return;
1056
971
  }
1057
-
1058
972
  if (virtualize) {
1059
973
  let minItemIndex = -1;
1060
974
  selections.forEach(item => {
1061
975
  const itemIndex = _get(item, '_scrollIndex');
1062
976
  /* When the itemIndex is legal */
1063
-
1064
-
1065
977
  if (_isNumber(itemIndex) && itemIndex >= 0) {
1066
978
  minItemIndex = minItemIndex !== -1 && minItemIndex < itemIndex ? minItemIndex : itemIndex;
1067
979
  }
1068
980
  });
1069
-
1070
981
  if (minItemIndex !== -1) {
1071
982
  try {
1072
983
  this.virtualizeListRef.current.scrollToItem(minItemIndex, 'center');
@@ -1076,7 +987,6 @@ class Select extends BaseComponent {
1076
987
  this.foundation.updateScrollTop();
1077
988
  }
1078
989
  }
1079
-
1080
990
  renderSuffix() {
1081
991
  const {
1082
992
  suffix
@@ -1091,7 +1001,6 @@ class Select extends BaseComponent {
1091
1001
  "x-semi-prop": "suffix"
1092
1002
  }, suffix);
1093
1003
  }
1094
-
1095
1004
  renderPrefix() {
1096
1005
  const {
1097
1006
  prefix,
@@ -1111,7 +1020,6 @@ class Select extends BaseComponent {
1111
1020
  "x-semi-prop": "prefix,insetLabel"
1112
1021
  }, labelNode);
1113
1022
  }
1114
-
1115
1023
  renderSelection() {
1116
1024
  const {
1117
1025
  disabled,
@@ -1144,7 +1052,6 @@ class Select extends BaseComponent {
1144
1052
  } = this.state;
1145
1053
  const useCustomTrigger = typeof triggerRender === 'function';
1146
1054
  const filterable = Boolean(filter); // filter(boolean || function)
1147
-
1148
1055
  const selectionCls = useCustomTrigger ? cls(className) : cls(prefixcls, className, {
1149
1056
  [`${prefixcls}-borderless`]: borderless,
1150
1057
  [`${prefixcls}-open`]: isOpen,
@@ -1168,8 +1075,8 @@ class Select extends BaseComponent {
1168
1075
  }, arrowIcon) : /*#__PURE__*/React.createElement("div", {
1169
1076
  className: `${prefixcls}-arrow-empty`
1170
1077
  });
1171
- const clear = clearIcon ? clearIcon : /*#__PURE__*/React.createElement(IconClear, null); // semantics of onSearch are more in line with behavior, onChange is alias of onSearch, will be deprecate next major version
1172
-
1078
+ const clear = clearIcon ? clearIcon : /*#__PURE__*/React.createElement(IconClear, null);
1079
+ // semantics of onSearch are more in line with behavior, onChange is alias of onSearch, will be deprecate next major version
1173
1080
  const inner = useCustomTrigger ? /*#__PURE__*/React.createElement(Trigger, {
1174
1081
  value: Array.from(selections.values()),
1175
1082
  inputValue: inputValue,
@@ -1204,11 +1111,9 @@ class Select extends BaseComponent {
1204
1111
  * 在disabled,可搜索单选且显示input框,以及可搜索多选情况下
1205
1112
  * 让combobox无法通过tab聚焦
1206
1113
  */
1207
-
1208
1114
  const tabIndex = disabled || filterable && showInput || filterable && multiple ? -1 : 0;
1209
1115
  return (
1210
1116
  /*#__PURE__*/
1211
-
1212
1117
  /* eslint-disable-next-line jsx-a11y/aria-activedescendant-has-tabindex */
1213
1118
  React.createElement("div", Object.assign({
1214
1119
  role: "combobox",
@@ -1237,7 +1142,6 @@ class Select extends BaseComponent {
1237
1142
  }, keyboardEventSet), inner)
1238
1143
  );
1239
1144
  }
1240
-
1241
1145
  render() {
1242
1146
  const {
1243
1147
  direction
@@ -1284,9 +1188,7 @@ class Select extends BaseComponent {
1284
1188
  afterClose: () => this.foundation.handlePopoverClose()
1285
1189
  }, selection);
1286
1190
  }
1287
-
1288
1191
  }
1289
-
1290
1192
  Select.contextType = ConfigContext;
1291
1193
  Select.Option = Option;
1292
1194
  Select.OptGroup = OptionGroup;
@@ -1373,10 +1275,11 @@ Select.propTypes = {
1373
1275
  renderOptionItem: PropTypes.func,
1374
1276
  onListScroll: PropTypes.func,
1375
1277
  arrowIcon: PropTypes.node,
1376
- preventScroll: PropTypes.bool // open: PropTypes.bool,
1278
+ preventScroll: PropTypes.bool
1279
+ // open: PropTypes.bool,
1377
1280
  // tagClosable: PropTypes.bool,
1378
-
1379
1281
  };
1282
+
1380
1283
  Select.defaultProps = {
1381
1284
  stopPropagation: true,
1382
1285
  motion: true,
@@ -1417,10 +1320,11 @@ Select.defaultProps = {
1417
1320
  showRestTagsPopover: false,
1418
1321
  restTagsPopoverProps: {},
1419
1322
  expandRestTagsOnClick: false,
1420
- ellipsisTrigger: false // Radio selection is different from the default renderSelectedItem for multiple selection, so it is not declared here
1323
+ ellipsisTrigger: false
1324
+ // Radio selection is different from the default renderSelectedItem for multiple selection, so it is not declared here
1421
1325
  // renderSelectedItem: (optionNode) => optionNode.label,
1422
1326
  // The default creator rendering is related to i18, so it is not declared here
1423
1327
  // renderCreateItem: (input) => input
1424
-
1425
1328
  };
1329
+
1426
1330
  export default Select;