@douyinfe/semi-ui 2.1.0-beta.2 → 2.1.0-next.2

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (691) hide show
  1. package/dist/css/semi.css +56 -39
  2. package/dist/css/semi.min.css +1 -1
  3. package/dist/umd/semi-ui.js +16763 -15636
  4. package/dist/umd/semi-ui.js.map +1 -1
  5. package/dist/umd/semi-ui.min.js +1 -1
  6. package/dist/umd/semi-ui.min.js.map +1 -1
  7. package/lib/cjs/_base/base.css +510 -0
  8. package/lib/cjs/_base/base.d.ts +32 -0
  9. package/lib/cjs/_base/base.js +7 -0
  10. package/lib/cjs/_base/base.scss +3 -0
  11. package/lib/cjs/_base/baseComponent.d.ts +25 -0
  12. package/lib/cjs/_base/baseComponent.js +84 -0
  13. package/lib/cjs/_base/reactUtils.d.ts +8 -0
  14. package/lib/cjs/_base/reactUtils.js +55 -0
  15. package/lib/cjs/_portal/index.d.ts +36 -0
  16. package/lib/cjs/_portal/index.js +151 -0
  17. package/lib/cjs/_utils/index.d.ts +68 -0
  18. package/lib/cjs/_utils/index.js +193 -0
  19. package/lib/cjs/anchor/anchor-context.d.ts +7 -0
  20. package/lib/cjs/anchor/anchor-context.js +18 -0
  21. package/lib/cjs/anchor/index.d.ts +93 -0
  22. package/lib/cjs/anchor/index.js +338 -0
  23. package/lib/cjs/anchor/link.d.ts +37 -0
  24. package/lib/cjs/anchor/link.js +174 -0
  25. package/lib/cjs/autoComplete/index.d.ts +167 -0
  26. package/lib/cjs/autoComplete/index.js +429 -0
  27. package/lib/cjs/avatar/avatarGroup.d.ts +22 -0
  28. package/lib/cjs/avatar/avatarGroup.js +171 -0
  29. package/lib/cjs/avatar/index.d.ts +48 -0
  30. package/lib/cjs/avatar/index.js +259 -0
  31. package/lib/cjs/avatar/interface.d.ts +31 -0
  32. package/lib/cjs/avatar/interface.js +7 -0
  33. package/lib/cjs/backtop/index.d.ts +38 -0
  34. package/lib/cjs/backtop/index.js +144 -0
  35. package/lib/cjs/badge/index.d.ts +38 -0
  36. package/lib/cjs/badge/index.js +109 -0
  37. package/lib/cjs/banner/index.d.ts +50 -0
  38. package/lib/cjs/banner/index.js +209 -0
  39. package/lib/cjs/breadcrumb/bread-context.d.ts +11 -0
  40. package/lib/cjs/breadcrumb/bread-context.js +18 -0
  41. package/lib/cjs/breadcrumb/index.d.ts +81 -0
  42. package/lib/cjs/breadcrumb/index.js +286 -0
  43. package/lib/cjs/breadcrumb/item.d.ts +53 -0
  44. package/lib/cjs/breadcrumb/item.js +250 -0
  45. package/lib/cjs/button/Button.d.ts +61 -0
  46. package/lib/cjs/button/Button.js +145 -0
  47. package/lib/cjs/button/buttonGroup.d.ts +26 -0
  48. package/lib/cjs/button/buttonGroup.js +91 -0
  49. package/lib/cjs/button/index.d.ts +37 -0
  50. package/lib/cjs/button/index.js +44 -0
  51. package/lib/cjs/button/splitButtonGroup.d.ts +12 -0
  52. package/lib/cjs/button/splitButtonGroup.js +47 -0
  53. package/lib/cjs/calendar/dayCalendar.d.ts +50 -0
  54. package/lib/cjs/calendar/dayCalendar.js +234 -0
  55. package/lib/cjs/calendar/dayCol.d.ts +41 -0
  56. package/lib/cjs/calendar/dayCol.js +211 -0
  57. package/lib/cjs/calendar/index.d.ts +42 -0
  58. package/lib/cjs/calendar/index.js +119 -0
  59. package/lib/cjs/calendar/interface.d.ts +37 -0
  60. package/lib/cjs/calendar/interface.js +7 -0
  61. package/lib/cjs/calendar/monthCalendar.d.ts +59 -0
  62. package/lib/cjs/calendar/monthCalendar.js +474 -0
  63. package/lib/cjs/calendar/rangeCalendar.d.ts +51 -0
  64. package/lib/cjs/calendar/rangeCalendar.js +329 -0
  65. package/lib/cjs/calendar/timeCol.d.ts +15 -0
  66. package/lib/cjs/calendar/timeCol.js +101 -0
  67. package/lib/cjs/calendar/weekCalendar.d.ts +52 -0
  68. package/lib/cjs/calendar/weekCalendar.js +331 -0
  69. package/lib/cjs/card/cardGroup.d.ts +27 -0
  70. package/lib/cjs/card/cardGroup.js +87 -0
  71. package/lib/cjs/card/index.d.ts +75 -0
  72. package/lib/cjs/card/index.js +224 -0
  73. package/lib/cjs/card/meta.d.ts +26 -0
  74. package/lib/cjs/card/meta.js +93 -0
  75. package/lib/cjs/cascader/index.d.ts +179 -0
  76. package/lib/cjs/cascader/index.js +994 -0
  77. package/lib/cjs/cascader/item.d.ts +72 -0
  78. package/lib/cjs/cascader/item.js +351 -0
  79. package/lib/cjs/checkbox/checkbox.d.ts +61 -0
  80. package/lib/cjs/checkbox/checkbox.js +209 -0
  81. package/lib/cjs/checkbox/checkboxGroup.d.ts +49 -0
  82. package/lib/cjs/checkbox/checkboxGroup.js +183 -0
  83. package/lib/cjs/checkbox/checkboxInner.d.ts +40 -0
  84. package/lib/cjs/checkbox/checkboxInner.js +97 -0
  85. package/lib/cjs/checkbox/context.d.ts +14 -0
  86. package/lib/cjs/checkbox/context.js +17 -0
  87. package/lib/cjs/checkbox/index.d.ts +8 -0
  88. package/lib/cjs/checkbox/index.js +29 -0
  89. package/lib/cjs/collapse/collapse-context.d.ts +13 -0
  90. package/lib/cjs/collapse/collapse-context.js +18 -0
  91. package/lib/cjs/collapse/index.d.ts +43 -0
  92. package/lib/cjs/collapse/index.js +165 -0
  93. package/lib/cjs/collapse/item.d.ts +23 -0
  94. package/lib/cjs/collapse/item.js +151 -0
  95. package/lib/cjs/collapsible/index.d.ts +36 -0
  96. package/lib/cjs/collapsible/index.js +180 -0
  97. package/lib/cjs/configProvider/context.d.ts +11 -0
  98. package/lib/cjs/configProvider/context.js +18 -0
  99. package/lib/cjs/configProvider/index.d.ts +19 -0
  100. package/lib/cjs/configProvider/index.js +83 -0
  101. package/lib/cjs/datePicker/dateInput.d.ts +81 -0
  102. package/lib/cjs/datePicker/dateInput.js +408 -0
  103. package/lib/cjs/datePicker/datePicker.d.ts +180 -0
  104. package/lib/cjs/datePicker/datePicker.js +731 -0
  105. package/lib/cjs/datePicker/footer.d.ts +11 -0
  106. package/lib/cjs/datePicker/footer.js +39 -0
  107. package/lib/cjs/datePicker/index.d.ts +11 -0
  108. package/lib/cjs/datePicker/index.js +67 -0
  109. package/lib/cjs/datePicker/month.d.ts +203 -0
  110. package/lib/cjs/datePicker/month.js +507 -0
  111. package/lib/cjs/datePicker/monthsGrid.d.ts +88 -0
  112. package/lib/cjs/datePicker/monthsGrid.js +702 -0
  113. package/lib/cjs/datePicker/navigation.d.ts +44 -0
  114. package/lib/cjs/datePicker/navigation.js +117 -0
  115. package/lib/cjs/datePicker/quickControl.d.ts +22 -0
  116. package/lib/cjs/datePicker/quickControl.js +86 -0
  117. package/lib/cjs/datePicker/yearAndMonth.d.ts +48 -0
  118. package/lib/cjs/datePicker/yearAndMonth.js +281 -0
  119. package/lib/cjs/descriptions/descriptions-context.d.ts +7 -0
  120. package/lib/cjs/descriptions/descriptions-context.js +18 -0
  121. package/lib/cjs/descriptions/index.d.ts +47 -0
  122. package/lib/cjs/descriptions/index.js +102 -0
  123. package/lib/cjs/descriptions/item.d.ts +19 -0
  124. package/lib/cjs/descriptions/item.js +89 -0
  125. package/lib/cjs/dropdown/context.d.ts +5 -0
  126. package/lib/cjs/dropdown/context.js +20 -0
  127. package/lib/cjs/dropdown/dropdownDivider.d.ts +5 -0
  128. package/lib/cjs/dropdown/dropdownDivider.js +40 -0
  129. package/lib/cjs/dropdown/dropdownItem.d.ts +47 -0
  130. package/lib/cjs/dropdown/dropdownItem.js +134 -0
  131. package/lib/cjs/dropdown/dropdownMenu.d.ts +12 -0
  132. package/lib/cjs/dropdown/dropdownMenu.js +66 -0
  133. package/lib/cjs/dropdown/dropdownTitle.d.ts +16 -0
  134. package/lib/cjs/dropdown/dropdownTitle.js +62 -0
  135. package/lib/cjs/dropdown/index.d.ts +103 -0
  136. package/lib/cjs/dropdown/index.js +286 -0
  137. package/lib/cjs/empty/index.d.ts +38 -0
  138. package/lib/cjs/empty/index.js +141 -0
  139. package/lib/cjs/form/arrayField.d.ts +33 -0
  140. package/lib/cjs/form/arrayField.js +267 -0
  141. package/lib/cjs/form/baseForm.d.ts +142 -0
  142. package/lib/cjs/form/baseForm.js +325 -0
  143. package/lib/cjs/form/context.d.ts +9 -0
  144. package/lib/cjs/form/context.js +35 -0
  145. package/lib/cjs/form/errorMessage.d.ts +25 -0
  146. package/lib/cjs/form/errorMessage.js +108 -0
  147. package/lib/cjs/form/field.d.ts +78 -0
  148. package/lib/cjs/form/field.js +116 -0
  149. package/lib/cjs/form/group.d.ts +14 -0
  150. package/lib/cjs/form/group.js +147 -0
  151. package/lib/cjs/form/hoc/withField.d.ts +12 -0
  152. package/lib/cjs/form/hoc/withField.js +554 -0
  153. package/lib/cjs/form/hoc/withFormApi.d.ts +3 -0
  154. package/lib/cjs/form/hoc/withFormApi.js +25 -0
  155. package/lib/cjs/form/hoc/withFormState.d.ts +3 -0
  156. package/lib/cjs/form/hoc/withFormState.js +25 -0
  157. package/lib/cjs/form/hooks/index.d.ts +8 -0
  158. package/lib/cjs/form/hooks/index.js +72 -0
  159. package/lib/cjs/form/hooks/useArrayFieldState.d.ts +4 -0
  160. package/lib/cjs/form/hooks/useArrayFieldState.js +21 -0
  161. package/lib/cjs/form/hooks/useFieldApi.d.ts +10 -0
  162. package/lib/cjs/form/hooks/useFieldApi.js +31 -0
  163. package/lib/cjs/form/hooks/useFieldState.d.ts +6 -0
  164. package/lib/cjs/form/hooks/useFieldState.js +40 -0
  165. package/lib/cjs/form/hooks/useFormApi.d.ts +1 -0
  166. package/lib/cjs/form/hooks/useFormApi.js +17 -0
  167. package/lib/cjs/form/hooks/useFormState.d.ts +2 -0
  168. package/lib/cjs/form/hooks/useFormState.js +21 -0
  169. package/lib/cjs/form/hooks/useFormUpdater.d.ts +1 -0
  170. package/lib/cjs/form/hooks/useFormUpdater.js +17 -0
  171. package/lib/cjs/form/hooks/useStateWithGetter.d.ts +1 -0
  172. package/lib/cjs/form/hooks/useStateWithGetter.js +27 -0
  173. package/lib/cjs/form/index.d.ts +22 -0
  174. package/lib/cjs/form/index.js +117 -0
  175. package/lib/cjs/form/interface.d.ts +111 -0
  176. package/lib/cjs/form/interface.js +36 -0
  177. package/lib/cjs/form/label.d.ts +39 -0
  178. package/lib/cjs/form/label.js +91 -0
  179. package/lib/cjs/form/section.d.ts +17 -0
  180. package/lib/cjs/form/section.js +60 -0
  181. package/lib/cjs/form/slot.d.ts +14 -0
  182. package/lib/cjs/form/slot.js +204 -0
  183. package/lib/cjs/grid/col.d.ts +55 -0
  184. package/lib/cjs/grid/col.js +146 -0
  185. package/lib/cjs/grid/index.d.ts +5 -0
  186. package/lib/cjs/grid/index.js +27 -0
  187. package/lib/cjs/grid/row.d.ts +58 -0
  188. package/lib/cjs/grid/row.js +207 -0
  189. package/lib/cjs/iconButton/index.d.ts +46 -0
  190. package/lib/cjs/iconButton/index.js +153 -0
  191. package/lib/cjs/icons/index.d.ts +3 -0
  192. package/lib/cjs/icons/index.js +16 -0
  193. package/lib/cjs/index.d.ts +79 -0
  194. package/lib/cjs/index.js +782 -0
  195. package/lib/cjs/input/index.d.ts +170 -0
  196. package/lib/cjs/input/index.js +503 -0
  197. package/lib/cjs/input/inputGroup.d.ts +38 -0
  198. package/lib/cjs/input/inputGroup.js +163 -0
  199. package/lib/cjs/input/textarea.d.ts +44 -0
  200. package/lib/cjs/input/textarea.js +341 -0
  201. package/lib/cjs/inputNumber/index.d.ts +109 -0
  202. package/lib/cjs/inputNumber/index.js +530 -0
  203. package/lib/cjs/layout/Sider.d.ts +38 -0
  204. package/lib/cjs/layout/Sider.js +160 -0
  205. package/lib/cjs/layout/index.d.ts +43 -0
  206. package/lib/cjs/layout/index.js +174 -0
  207. package/lib/cjs/layout/layout-context.d.ts +9 -0
  208. package/lib/cjs/layout/layout-context.js +25 -0
  209. package/lib/cjs/list/index.d.ts +59 -0
  210. package/lib/cjs/list/index.js +189 -0
  211. package/lib/cjs/list/item.d.ts +36 -0
  212. package/lib/cjs/list/item.js +151 -0
  213. package/lib/cjs/list/list-context.d.ts +12 -0
  214. package/lib/cjs/list/list-context.js +18 -0
  215. package/lib/cjs/locale/context.d.ts +4 -0
  216. package/lib/cjs/locale/context.js +18 -0
  217. package/lib/cjs/locale/interface.d.ts +151 -0
  218. package/lib/cjs/locale/interface.js +7 -0
  219. package/lib/cjs/locale/localeConsumer.d.ts +21 -0
  220. package/lib/cjs/locale/localeConsumer.js +80 -0
  221. package/lib/cjs/locale/localeProvider.d.ts +18 -0
  222. package/lib/cjs/locale/localeProvider.js +54 -0
  223. package/lib/cjs/locale/source/ar.d.ts +3 -0
  224. package/lib/cjs/locale/source/ar.js +165 -0
  225. package/lib/cjs/locale/source/en_GB.d.ts +3 -0
  226. package/lib/cjs/locale/source/en_GB.js +165 -0
  227. package/lib/cjs/locale/source/en_US.d.ts +3 -0
  228. package/lib/cjs/locale/source/en_US.js +165 -0
  229. package/lib/cjs/locale/source/id_ID.d.ts +3 -0
  230. package/lib/cjs/locale/source/id_ID.js +165 -0
  231. package/lib/cjs/locale/source/ja_JP.d.ts +3 -0
  232. package/lib/cjs/locale/source/ja_JP.js +166 -0
  233. package/lib/cjs/locale/source/ko_KR.d.ts +3 -0
  234. package/lib/cjs/locale/source/ko_KR.js +166 -0
  235. package/lib/cjs/locale/source/ms_MY.d.ts +3 -0
  236. package/lib/cjs/locale/source/ms_MY.js +165 -0
  237. package/lib/cjs/locale/source/pt_BR.d.ts +3 -0
  238. package/lib/cjs/locale/source/pt_BR.js +173 -0
  239. package/lib/cjs/locale/source/ru_RU.d.ts +3 -0
  240. package/lib/cjs/locale/source/ru_RU.js +168 -0
  241. package/lib/cjs/locale/source/th_TH.d.ts +3 -0
  242. package/lib/cjs/locale/source/th_TH.js +169 -0
  243. package/lib/cjs/locale/source/tr_TR.d.ts +3 -0
  244. package/lib/cjs/locale/source/tr_TR.js +168 -0
  245. package/lib/cjs/locale/source/vi_VN.d.ts +3 -0
  246. package/lib/cjs/locale/source/vi_VN.js +168 -0
  247. package/lib/cjs/locale/source/zh_CN.d.ts +3 -0
  248. package/lib/cjs/locale/source/zh_CN.js +166 -0
  249. package/lib/cjs/locale/source/zh_TW.d.ts +3 -0
  250. package/lib/cjs/locale/source/zh_TW.js +166 -0
  251. package/lib/cjs/modal/ConfirmModal.d.ts +4 -0
  252. package/lib/cjs/modal/ConfirmModal.js +137 -0
  253. package/lib/cjs/modal/Modal.d.ts +133 -0
  254. package/lib/cjs/modal/Modal.js +437 -0
  255. package/lib/cjs/modal/ModalContent.d.ts +38 -0
  256. package/lib/cjs/modal/ModalContent.js +337 -0
  257. package/lib/cjs/modal/confirm.d.ts +215 -0
  258. package/lib/cjs/modal/confirm.js +132 -0
  259. package/lib/cjs/modal/index.d.ts +8 -0
  260. package/lib/cjs/modal/index.js +18 -0
  261. package/lib/cjs/modal/useModal/HookModal.d.ts +14 -0
  262. package/lib/cjs/modal/useModal/HookModal.js +79 -0
  263. package/lib/cjs/modal/useModal/index.d.ts +24 -0
  264. package/lib/cjs/modal/useModal/index.js +80 -0
  265. package/lib/cjs/motions/Rotate.d.ts +23 -0
  266. package/lib/cjs/motions/Rotate.js +87 -0
  267. package/lib/cjs/navigation/CollapseButton.d.ts +10 -0
  268. package/lib/cjs/navigation/CollapseButton.js +58 -0
  269. package/lib/cjs/navigation/Footer.d.ts +27 -0
  270. package/lib/cjs/navigation/Footer.js +107 -0
  271. package/lib/cjs/navigation/Header.d.ts +34 -0
  272. package/lib/cjs/navigation/Header.js +99 -0
  273. package/lib/cjs/navigation/Item.d.ts +70 -0
  274. package/lib/cjs/navigation/Item.js +296 -0
  275. package/lib/cjs/navigation/OpenIconTransition.d.ts +14 -0
  276. package/lib/cjs/navigation/OpenIconTransition.js +90 -0
  277. package/lib/cjs/navigation/SubNav.d.ts +103 -0
  278. package/lib/cjs/navigation/SubNav.js +440 -0
  279. package/lib/cjs/navigation/SubNavTransition.d.ts +17 -0
  280. package/lib/cjs/navigation/SubNavTransition.js +90 -0
  281. package/lib/cjs/navigation/index.d.ts +145 -0
  282. package/lib/cjs/navigation/index.js +446 -0
  283. package/lib/cjs/navigation/nav-context.d.ts +7 -0
  284. package/lib/cjs/navigation/nav-context.js +22 -0
  285. package/lib/cjs/notification/NoticeTransition.d.ts +10 -0
  286. package/lib/cjs/notification/NoticeTransition.js +90 -0
  287. package/lib/cjs/notification/index.d.ts +52 -0
  288. package/lib/cjs/notification/index.js +316 -0
  289. package/lib/cjs/notification/notice.d.ts +51 -0
  290. package/lib/cjs/notification/notice.js +240 -0
  291. package/lib/cjs/notification/useNotification/HookNotice.d.ts +7 -0
  292. package/lib/cjs/notification/useNotification/HookNotice.js +72 -0
  293. package/lib/cjs/notification/useNotification/index.d.ts +10 -0
  294. package/lib/cjs/notification/useNotification/index.js +161 -0
  295. package/lib/cjs/overflowList/index.d.ts +87 -0
  296. package/lib/cjs/overflowList/index.js +296 -0
  297. package/lib/cjs/overflowList/intersectionObserver.d.ts +34 -0
  298. package/lib/cjs/overflowList/intersectionObserver.js +121 -0
  299. package/lib/cjs/pagination/index.d.ts +99 -0
  300. package/lib/cjs/pagination/index.js +481 -0
  301. package/lib/cjs/popconfirm/index.d.ts +90 -0
  302. package/lib/cjs/popconfirm/index.js +262 -0
  303. package/lib/cjs/popover/Arrow.d.ts +9 -0
  304. package/lib/cjs/popover/Arrow.js +86 -0
  305. package/lib/cjs/popover/index.d.ts +89 -0
  306. package/lib/cjs/popover/index.js +155 -0
  307. package/lib/cjs/progress/index.d.ts +68 -0
  308. package/lib/cjs/progress/index.js +303 -0
  309. package/lib/cjs/radio/context.d.ts +22 -0
  310. package/lib/cjs/radio/context.js +18 -0
  311. package/lib/cjs/radio/index.d.ts +10 -0
  312. package/lib/cjs/radio/index.js +29 -0
  313. package/lib/cjs/radio/radio.d.ts +79 -0
  314. package/lib/cjs/radio/radio.js +225 -0
  315. package/lib/cjs/radio/radioGroup.d.ts +64 -0
  316. package/lib/cjs/radio/radioGroup.js +189 -0
  317. package/lib/cjs/radio/radioInner.d.ts +45 -0
  318. package/lib/cjs/radio/radioInner.js +140 -0
  319. package/lib/cjs/rating/index.d.ts +91 -0
  320. package/lib/cjs/rating/index.js +312 -0
  321. package/lib/cjs/rating/item.d.ts +38 -0
  322. package/lib/cjs/rating/item.js +143 -0
  323. package/lib/cjs/resizeObserver/index.d.ts +35 -0
  324. package/lib/cjs/resizeObserver/index.js +118 -0
  325. package/lib/cjs/scrollList/index.d.ts +26 -0
  326. package/lib/cjs/scrollList/index.js +82 -0
  327. package/lib/cjs/scrollList/scrollItem.d.ts +105 -0
  328. package/lib/cjs/scrollList/scrollItem.js +557 -0
  329. package/lib/cjs/select/index.d.ts +234 -0
  330. package/lib/cjs/select/index.js +1117 -0
  331. package/lib/cjs/select/option.d.ts +50 -0
  332. package/lib/cjs/select/option.js +211 -0
  333. package/lib/cjs/select/optionGroup.d.ts +20 -0
  334. package/lib/cjs/select/optionGroup.js +56 -0
  335. package/lib/cjs/select/utils.d.ts +9 -0
  336. package/lib/cjs/select/utils.js +122 -0
  337. package/lib/cjs/select/virtualRow.d.ts +8 -0
  338. package/lib/cjs/select/virtualRow.js +25 -0
  339. package/lib/cjs/sideSheet/SideSheetContent.d.ts +35 -0
  340. package/lib/cjs/sideSheet/SideSheetContent.js +195 -0
  341. package/lib/cjs/sideSheet/SideSheetTransition.d.ts +12 -0
  342. package/lib/cjs/sideSheet/SideSheetTransition.js +120 -0
  343. package/lib/cjs/sideSheet/index.d.ts +59 -0
  344. package/lib/cjs/sideSheet/index.js +303 -0
  345. package/lib/cjs/skeleton/index.d.ts +33 -0
  346. package/lib/cjs/skeleton/index.js +101 -0
  347. package/lib/cjs/skeleton/item.d.ts +34 -0
  348. package/lib/cjs/skeleton/item.js +134 -0
  349. package/lib/cjs/slider/index.d.ts +30 -0
  350. package/lib/cjs/slider/index.js +649 -0
  351. package/lib/cjs/space/index.d.ts +33 -0
  352. package/lib/cjs/space/index.js +120 -0
  353. package/lib/cjs/space/utils.d.ts +5 -0
  354. package/lib/cjs/space/utils.js +54 -0
  355. package/lib/cjs/spin/icon.d.ts +10 -0
  356. package/lib/cjs/spin/icon.js +103 -0
  357. package/lib/cjs/spin/index.d.ts +63 -0
  358. package/lib/cjs/spin/index.js +145 -0
  359. package/lib/cjs/steps/basicStep.d.ts +46 -0
  360. package/lib/cjs/steps/basicStep.js +180 -0
  361. package/lib/cjs/steps/basicSteps.d.ts +41 -0
  362. package/lib/cjs/steps/basicSteps.js +127 -0
  363. package/lib/cjs/steps/context.d.ts +6 -0
  364. package/lib/cjs/steps/context.js +17 -0
  365. package/lib/cjs/steps/fillStep.d.ts +34 -0
  366. package/lib/cjs/steps/fillStep.js +142 -0
  367. package/lib/cjs/steps/fillSteps.d.ts +35 -0
  368. package/lib/cjs/steps/fillSteps.js +127 -0
  369. package/lib/cjs/steps/index.d.ts +39 -0
  370. package/lib/cjs/steps/index.js +104 -0
  371. package/lib/cjs/steps/navStep.d.ts +30 -0
  372. package/lib/cjs/steps/navStep.js +99 -0
  373. package/lib/cjs/steps/navSteps.d.ts +33 -0
  374. package/lib/cjs/steps/navSteps.js +103 -0
  375. package/lib/cjs/steps/step.d.ts +13 -0
  376. package/lib/cjs/steps/step.js +58 -0
  377. package/lib/cjs/switch/index.d.ts +48 -0
  378. package/lib/cjs/switch/index.js +159 -0
  379. package/lib/cjs/table/Body/BaseRow.d.ts +125 -0
  380. package/lib/cjs/table/Body/BaseRow.js +359 -0
  381. package/lib/cjs/table/Body/ExpandedRow.d.ts +63 -0
  382. package/lib/cjs/table/Body/ExpandedRow.js +180 -0
  383. package/lib/cjs/table/Body/SectionRow.d.ts +67 -0
  384. package/lib/cjs/table/Body/SectionRow.js +250 -0
  385. package/lib/cjs/table/Body/index.d.ts +70 -0
  386. package/lib/cjs/table/Body/index.js +873 -0
  387. package/lib/cjs/table/ColGroup.d.ts +24 -0
  388. package/lib/cjs/table/ColGroup.js +78 -0
  389. package/lib/cjs/table/Column.d.ts +36 -0
  390. package/lib/cjs/table/Column.js +32 -0
  391. package/lib/cjs/table/ColumnFilter.d.ts +34 -0
  392. package/lib/cjs/table/ColumnFilter.js +192 -0
  393. package/lib/cjs/table/ColumnSelection.d.ts +40 -0
  394. package/lib/cjs/table/ColumnSelection.js +101 -0
  395. package/lib/cjs/table/ColumnShape.d.ts +32 -0
  396. package/lib/cjs/table/ColumnShape.js +47 -0
  397. package/lib/cjs/table/ColumnSorter.d.ts +25 -0
  398. package/lib/cjs/table/ColumnSorter.js +77 -0
  399. package/lib/cjs/table/CustomExpandIcon.d.ts +36 -0
  400. package/lib/cjs/table/CustomExpandIcon.js +102 -0
  401. package/lib/cjs/table/HeadTable.d.ts +20 -0
  402. package/lib/cjs/table/HeadTable.js +129 -0
  403. package/lib/cjs/table/ResizableHeaderCell.d.ts +13 -0
  404. package/lib/cjs/table/ResizableHeaderCell.js +75 -0
  405. package/lib/cjs/table/ResizableTable.d.ts +5 -0
  406. package/lib/cjs/table/ResizableTable.js +217 -0
  407. package/lib/cjs/table/Table.d.ts +305 -0
  408. package/lib/cjs/table/Table.js +1576 -0
  409. package/lib/cjs/table/TableCell.d.ts +124 -0
  410. package/lib/cjs/table/TableCell.js +404 -0
  411. package/lib/cjs/table/TableContextProvider.d.ts +3 -0
  412. package/lib/cjs/table/TableContextProvider.js +61 -0
  413. package/lib/cjs/table/TableHeader.d.ts +28 -0
  414. package/lib/cjs/table/TableHeader.js +192 -0
  415. package/lib/cjs/table/TableHeaderRow.d.ts +59 -0
  416. package/lib/cjs/table/TableHeaderRow.js +218 -0
  417. package/lib/cjs/table/TablePagination.d.ts +23 -0
  418. package/lib/cjs/table/TablePagination.js +69 -0
  419. package/lib/cjs/table/getColumns.d.ts +8 -0
  420. package/lib/cjs/table/getColumns.js +54 -0
  421. package/lib/cjs/table/index.d.ts +100 -0
  422. package/lib/cjs/table/index.js +85 -0
  423. package/lib/cjs/table/interface.d.ts +290 -0
  424. package/lib/cjs/table/interface.js +7 -0
  425. package/lib/cjs/table/table-context.d.ts +19 -0
  426. package/lib/cjs/table/table-context.js +25 -0
  427. package/lib/cjs/table/utils.d.ts +42 -0
  428. package/lib/cjs/table/utils.js +144 -0
  429. package/lib/cjs/tabs/TabBar.d.ts +43 -0
  430. package/lib/cjs/tabs/TabBar.js +317 -0
  431. package/lib/cjs/tabs/TabPane.d.ts +28 -0
  432. package/lib/cjs/tabs/TabPane.js +165 -0
  433. package/lib/cjs/tabs/TabPaneTransition.d.ts +4 -0
  434. package/lib/cjs/tabs/TabPaneTransition.js +119 -0
  435. package/lib/cjs/tabs/index.d.ts +52 -0
  436. package/lib/cjs/tabs/index.js +439 -0
  437. package/lib/cjs/tabs/interface.d.ts +77 -0
  438. package/lib/cjs/tabs/interface.js +7 -0
  439. package/lib/cjs/tabs/tabs-context.d.ts +4 -0
  440. package/lib/cjs/tabs/tabs-context.js +18 -0
  441. package/lib/cjs/tag/group.d.ts +40 -0
  442. package/lib/cjs/tag/group.js +165 -0
  443. package/lib/cjs/tag/index.d.ts +33 -0
  444. package/lib/cjs/tag/index.js +219 -0
  445. package/lib/cjs/tag/interface.d.ts +30 -0
  446. package/lib/cjs/tag/interface.js +7 -0
  447. package/lib/cjs/tagInput/index.d.ts +133 -0
  448. package/lib/cjs/tagInput/index.js +429 -0
  449. package/lib/cjs/timePicker/Combobox.d.ts +79 -0
  450. package/lib/cjs/timePicker/Combobox.js +345 -0
  451. package/lib/cjs/timePicker/PanelShape.d.ts +6 -0
  452. package/lib/cjs/timePicker/PanelShape.js +21 -0
  453. package/lib/cjs/timePicker/TimeInput.d.ts +66 -0
  454. package/lib/cjs/timePicker/TimeInput.js +226 -0
  455. package/lib/cjs/timePicker/TimePicker.d.ts +197 -0
  456. package/lib/cjs/timePicker/TimePicker.js +503 -0
  457. package/lib/cjs/timePicker/TimeShape.d.ts +10 -0
  458. package/lib/cjs/timePicker/TimeShape.js +26 -0
  459. package/lib/cjs/timePicker/index.d.ts +95 -0
  460. package/lib/cjs/timePicker/index.js +51 -0
  461. package/lib/cjs/timeline/index.d.ts +31 -0
  462. package/lib/cjs/timeline/index.js +145 -0
  463. package/lib/cjs/timeline/item.d.ts +30 -0
  464. package/lib/cjs/timeline/item.js +94 -0
  465. package/lib/cjs/toast/ToastTransition.d.ts +7 -0
  466. package/lib/cjs/toast/ToastTransition.js +71 -0
  467. package/lib/cjs/toast/index.d.ts +200 -0
  468. package/lib/cjs/toast/index.js +281 -0
  469. package/lib/cjs/toast/toast.d.ts +45 -0
  470. package/lib/cjs/toast/toast.js +185 -0
  471. package/lib/cjs/toast/useToast/HookToast.d.ts +7 -0
  472. package/lib/cjs/toast/useToast/HookToast.js +72 -0
  473. package/lib/cjs/toast/useToast/index.d.ts +9 -0
  474. package/lib/cjs/toast/useToast/index.js +107 -0
  475. package/lib/cjs/tooltip/ArrowBoundingShape.d.ts +8 -0
  476. package/lib/cjs/tooltip/ArrowBoundingShape.js +22 -0
  477. package/lib/cjs/tooltip/TooltipStyledTransition.d.ts +9 -0
  478. package/lib/cjs/tooltip/TooltipStyledTransition.js +54 -0
  479. package/lib/cjs/tooltip/TriangleArrow.d.ts +5 -0
  480. package/lib/cjs/tooltip/TriangleArrow.js +54 -0
  481. package/lib/cjs/tooltip/TriangleArrowVertical.d.ts +5 -0
  482. package/lib/cjs/tooltip/TriangleArrowVertical.js +53 -0
  483. package/lib/cjs/tooltip/index.d.ts +150 -0
  484. package/lib/cjs/tooltip/index.js +711 -0
  485. package/lib/cjs/transfer/index.d.ts +164 -0
  486. package/lib/cjs/transfer/index.js +668 -0
  487. package/lib/cjs/tree/autoSizer.d.ts +28 -0
  488. package/lib/cjs/tree/autoSizer.js +115 -0
  489. package/lib/cjs/tree/collapse.d.ts +29 -0
  490. package/lib/cjs/tree/collapse.js +164 -0
  491. package/lib/cjs/tree/index.d.ts +135 -0
  492. package/lib/cjs/tree/index.js +799 -0
  493. package/lib/cjs/tree/interface.d.ts +119 -0
  494. package/lib/cjs/tree/interface.js +7 -0
  495. package/lib/cjs/tree/nodeList.d.ts +9 -0
  496. package/lib/cjs/tree/nodeList.js +141 -0
  497. package/lib/cjs/tree/treeContext.d.ts +40 -0
  498. package/lib/cjs/tree/treeContext.js +18 -0
  499. package/lib/cjs/tree/treeNode.d.ts +54 -0
  500. package/lib/cjs/tree/treeNode.js +531 -0
  501. package/lib/cjs/tree/treeUtil.d.ts +1 -0
  502. package/lib/cjs/tree/treeUtil.js +30 -0
  503. package/lib/cjs/treeSelect/index.d.ts +223 -0
  504. package/lib/cjs/treeSelect/index.js +1284 -0
  505. package/lib/cjs/trigger/index.d.ts +36 -0
  506. package/lib/cjs/trigger/index.js +71 -0
  507. package/lib/cjs/typography/base.d.ts +176 -0
  508. package/lib/cjs/typography/base.js +720 -0
  509. package/lib/cjs/typography/copyable.d.ts +43 -0
  510. package/lib/cjs/typography/copyable.js +151 -0
  511. package/lib/cjs/typography/index.d.ts +17 -0
  512. package/lib/cjs/typography/index.js +48 -0
  513. package/lib/cjs/typography/interface.d.ts +25 -0
  514. package/lib/cjs/typography/interface.js +7 -0
  515. package/lib/cjs/typography/paragraph.d.ts +56 -0
  516. package/lib/cjs/typography/paragraph.js +83 -0
  517. package/lib/cjs/typography/text.d.ts +59 -0
  518. package/lib/cjs/typography/text.js +73 -0
  519. package/lib/cjs/typography/title.d.ts +61 -0
  520. package/lib/cjs/typography/title.js +97 -0
  521. package/lib/cjs/typography/typography.d.ts +22 -0
  522. package/lib/cjs/typography/typography.js +82 -0
  523. package/lib/cjs/typography/util.d.ts +2 -0
  524. package/lib/cjs/typography/util.js +155 -0
  525. package/lib/cjs/upload/fileCard.d.ts +47 -0
  526. package/lib/cjs/upload/fileCard.js +388 -0
  527. package/lib/cjs/upload/index.d.ts +161 -0
  528. package/lib/cjs/upload/index.js +552 -0
  529. package/lib/cjs/upload/interface.d.ts +56 -0
  530. package/lib/cjs/upload/interface.js +7 -0
  531. package/lib/es/_utils/index.js +7 -5
  532. package/lib/es/anchor/index.js +8 -6
  533. package/lib/es/autoComplete/index.d.ts +36 -11
  534. package/lib/es/autoComplete/index.js +10 -9
  535. package/lib/es/avatar/avatarGroup.js +6 -4
  536. package/lib/es/badge/index.js +4 -3
  537. package/lib/es/breadcrumb/index.js +7 -4
  538. package/lib/es/breadcrumb/item.js +5 -3
  539. package/lib/es/button/index.d.ts +0 -1
  540. package/lib/es/button/index.js +1 -2
  541. package/lib/es/calendar/dayCalendar.js +3 -3
  542. package/lib/es/calendar/monthCalendar.js +3 -3
  543. package/lib/es/calendar/rangeCalendar.js +3 -3
  544. package/lib/es/calendar/weekCalendar.js +3 -3
  545. package/lib/es/card/index.js +5 -3
  546. package/lib/es/cascader/index.d.ts +1 -0
  547. package/lib/es/cascader/index.js +39 -22
  548. package/lib/es/cascader/item.js +2 -2
  549. package/lib/es/checkbox/checkbox.js +8 -6
  550. package/lib/es/checkbox/checkboxGroup.js +2 -2
  551. package/lib/es/checkbox/checkboxInner.js +4 -3
  552. package/lib/es/collapse/index.js +3 -7
  553. package/lib/es/collapsible/index.js +4 -1
  554. package/lib/es/datePicker/datePicker.js +26 -20
  555. package/lib/es/datePicker/footer.js +3 -3
  556. package/lib/es/datePicker/index.d.ts +1 -1
  557. package/lib/es/datePicker/month.js +11 -7
  558. package/lib/es/datePicker/monthsGrid.js +4 -3
  559. package/lib/es/datePicker/navigation.js +6 -6
  560. package/lib/es/datePicker/yearAndMonth.d.ts +2 -2
  561. package/lib/es/datePicker/yearAndMonth.js +5 -4
  562. package/lib/es/descriptions/index.js +2 -2
  563. package/lib/es/dropdown/dropdownItem.js +4 -4
  564. package/lib/es/dropdown/index.js +4 -3
  565. package/lib/es/form/arrayField.js +7 -4
  566. package/lib/es/form/baseForm.d.ts +4 -10
  567. package/lib/es/form/baseForm.js +7 -8
  568. package/lib/es/form/field.d.ts +4 -22
  569. package/lib/es/form/field.js +2 -18
  570. package/lib/es/form/group.js +2 -2
  571. package/lib/es/form/hoc/withField.d.ts +1 -1
  572. package/lib/es/form/hoc/withField.js +0 -3
  573. package/lib/es/form/slot.js +7 -5
  574. package/lib/es/iconButton/index.d.ts +0 -1
  575. package/lib/es/iconButton/index.js +3 -4
  576. package/lib/es/input/index.js +17 -15
  577. package/lib/es/input/inputGroup.js +3 -3
  578. package/lib/es/input/textarea.js +13 -11
  579. package/lib/es/inputNumber/index.js +13 -12
  580. package/lib/es/list/index.js +3 -3
  581. package/lib/es/list/item.js +3 -3
  582. package/lib/es/locale/localeConsumer.d.ts +5 -5
  583. package/lib/es/locale/localeConsumer.js +5 -3
  584. package/lib/es/modal/Modal.js +5 -5
  585. package/lib/es/modal/ModalContent.js +3 -3
  586. package/lib/es/modal/confirm.js +2 -2
  587. package/lib/es/modal/useModal/HookModal.d.ts +3 -2
  588. package/lib/es/modal/useModal/HookModal.js +3 -2
  589. package/lib/es/modal/useModal/index.js +1 -1
  590. package/lib/es/navigation/CollapseButton.js +2 -2
  591. package/lib/es/navigation/Item.js +7 -6
  592. package/lib/es/navigation/SubNav.js +4 -3
  593. package/lib/es/navigation/index.js +12 -10
  594. package/lib/es/notification/index.d.ts +1 -1
  595. package/lib/es/notification/index.js +1 -1
  596. package/lib/es/notification/notice.js +5 -5
  597. package/lib/es/overflowList/index.js +13 -8
  598. package/lib/es/overflowList/intersectionObserver.js +4 -3
  599. package/lib/es/pagination/index.js +4 -4
  600. package/lib/es/popconfirm/index.d.ts +5 -1
  601. package/lib/es/popconfirm/index.js +16 -9
  602. package/lib/es/popover/Arrow.js +7 -4
  603. package/lib/es/popover/index.d.ts +3 -1
  604. package/lib/es/popover/index.js +4 -8
  605. package/lib/es/radio/context.d.ts +1 -1
  606. package/lib/es/radio/radio.d.ts +2 -2
  607. package/lib/es/radio/radio.js +3 -3
  608. package/lib/es/radio/radioGroup.d.ts +4 -4
  609. package/lib/es/radio/radioGroup.js +2 -2
  610. package/lib/es/radio/radioInner.js +2 -2
  611. package/lib/es/rating/index.d.ts +1 -1
  612. package/lib/es/resizeObserver/index.js +1 -0
  613. package/lib/es/scrollList/scrollItem.d.ts +12 -11
  614. package/lib/es/scrollList/scrollItem.js +32 -19
  615. package/lib/es/select/index.js +39 -27
  616. package/lib/es/select/option.js +6 -6
  617. package/lib/es/select/utils.d.ts +1 -1
  618. package/lib/es/select/utils.js +12 -8
  619. package/lib/es/sideSheet/SideSheetContent.d.ts +1 -1
  620. package/lib/es/sideSheet/SideSheetContent.js +2 -2
  621. package/lib/es/sideSheet/index.d.ts +3 -3
  622. package/lib/es/sideSheet/index.js +2 -2
  623. package/lib/es/slider/index.js +7 -6
  624. package/lib/es/space/index.js +10 -8
  625. package/lib/es/steps/basicStep.js +2 -2
  626. package/lib/es/steps/basicSteps.js +2 -2
  627. package/lib/es/steps/fillStep.js +2 -2
  628. package/lib/es/steps/fillSteps.js +3 -3
  629. package/lib/es/steps/index.js +2 -2
  630. package/lib/es/steps/navStep.js +2 -2
  631. package/lib/es/steps/navSteps.js +2 -2
  632. package/lib/es/switch/index.js +4 -4
  633. package/lib/es/table/Body/BaseRow.js +25 -15
  634. package/lib/es/table/Body/ExpandedRow.js +9 -6
  635. package/lib/es/table/Body/SectionRow.js +4 -3
  636. package/lib/es/table/Body/index.js +58 -31
  637. package/lib/es/table/ColGroup.js +4 -3
  638. package/lib/es/table/ColumnFilter.js +3 -3
  639. package/lib/es/table/ColumnSelection.js +2 -2
  640. package/lib/es/table/ColumnSorter.js +2 -2
  641. package/lib/es/table/CustomExpandIcon.js +8 -7
  642. package/lib/es/table/HeadTable.js +7 -4
  643. package/lib/es/table/ResizableTable.js +17 -9
  644. package/lib/es/table/Table.js +69 -44
  645. package/lib/es/table/TableCell.js +24 -17
  646. package/lib/es/table/TableHeader.js +5 -4
  647. package/lib/es/table/TableHeaderRow.js +24 -11
  648. package/lib/es/table/TablePagination.js +7 -4
  649. package/lib/es/table/getColumns.js +5 -4
  650. package/lib/es/table/table-context.js +4 -3
  651. package/lib/es/table/utils.js +2 -2
  652. package/lib/es/tabs/TabBar.d.ts +4 -2
  653. package/lib/es/tabs/TabBar.js +14 -6
  654. package/lib/es/tabs/TabPane.d.ts +2 -1
  655. package/lib/es/tabs/TabPane.js +3 -2
  656. package/lib/es/tabs/TabPaneTransition.js +5 -5
  657. package/lib/es/tabs/index.d.ts +3 -1
  658. package/lib/es/tabs/index.js +90 -19
  659. package/lib/es/tabs/interface.d.ts +6 -1
  660. package/lib/es/tagInput/index.d.ts +3 -0
  661. package/lib/es/tagInput/index.js +28 -18
  662. package/lib/es/timePicker/Combobox.d.ts +10 -4
  663. package/lib/es/timePicker/Combobox.js +6 -5
  664. package/lib/es/timePicker/TimeInput.js +8 -8
  665. package/lib/es/timePicker/TimePicker.d.ts +1 -1
  666. package/lib/es/timePicker/TimePicker.js +9 -8
  667. package/lib/es/timePicker/index.js +2 -2
  668. package/lib/es/toast/toast.js +3 -3
  669. package/lib/es/tooltip/index.d.ts +3 -0
  670. package/lib/es/tooltip/index.js +35 -16
  671. package/lib/es/transfer/index.js +16 -11
  672. package/lib/es/tree/autoSizer.js +4 -4
  673. package/lib/es/tree/collapse.js +2 -2
  674. package/lib/es/tree/index.js +12 -9
  675. package/lib/es/tree/interface.d.ts +2 -2
  676. package/lib/es/tree/nodeList.js +2 -2
  677. package/lib/es/tree/treeNode.js +7 -5
  678. package/lib/es/tree/treeUtil.js +4 -3
  679. package/lib/es/treeSelect/index.d.ts +2 -11
  680. package/lib/es/treeSelect/index.js +28 -20
  681. package/lib/es/typography/base.d.ts +1 -1
  682. package/lib/es/typography/base.js +17 -8
  683. package/lib/es/typography/paragraph.d.ts +1 -1
  684. package/lib/es/typography/text.d.ts +1 -1
  685. package/lib/es/typography/title.d.ts +1 -1
  686. package/lib/es/upload/fileCard.d.ts +3 -18
  687. package/lib/es/upload/index.d.ts +4 -57
  688. package/lib/es/upload/index.js +14 -14
  689. package/lib/es/upload/interface.d.ts +56 -0
  690. package/lib/es/upload/interface.js +1 -0
  691. package/package.json +13 -10
@@ -0,0 +1,557 @@
1
+ "use strict";
2
+
3
+ var _Object$defineProperty = require("@babel/runtime-corejs3/core-js-stable/object/define-property");
4
+
5
+ var _interopRequireDefault = require("@babel/runtime-corejs3/helpers/interopRequireDefault");
6
+
7
+ _Object$defineProperty(exports, "__esModule", {
8
+ value: true
9
+ });
10
+
11
+ exports.default = void 0;
12
+
13
+ var _isArray = _interopRequireDefault(require("@babel/runtime-corejs3/core-js-stable/array/is-array"));
14
+
15
+ var _map2 = _interopRequireDefault(require("@babel/runtime-corejs3/core-js-stable/instance/map"));
16
+
17
+ var _assign = _interopRequireDefault(require("@babel/runtime-corejs3/core-js-stable/object/assign"));
18
+
19
+ var _reduce = _interopRequireDefault(require("@babel/runtime-corejs3/core-js-stable/instance/reduce"));
20
+
21
+ var _times2 = _interopRequireDefault(require("lodash/times"));
22
+
23
+ var _findIndex2 = _interopRequireDefault(require("lodash/findIndex"));
24
+
25
+ var _map3 = _interopRequireDefault(require("lodash/map"));
26
+
27
+ var _find2 = _interopRequireDefault(require("lodash/find"));
28
+
29
+ var _throttle2 = _interopRequireDefault(require("lodash/throttle"));
30
+
31
+ var _debounce2 = _interopRequireDefault(require("lodash/debounce"));
32
+
33
+ var _noop2 = _interopRequireDefault(require("lodash/noop"));
34
+
35
+ var _react = _interopRequireDefault(require("react"));
36
+
37
+ var _baseComponent = _interopRequireDefault(require("../_base/baseComponent"));
38
+
39
+ var _propTypes = _interopRequireDefault(require("prop-types"));
40
+
41
+ var _classnames = _interopRequireDefault(require("classnames"));
42
+
43
+ var _constants = require("@douyinfe/semi-foundation/lib/cjs/scrollList/constants");
44
+
45
+ var _itemFoundation = _interopRequireDefault(require("@douyinfe/semi-foundation/lib/cjs/scrollList/itemFoundation"));
46
+
47
+ var _scrollTo = _interopRequireDefault(require("@douyinfe/semi-foundation/lib/cjs/scrollList/scrollTo"));
48
+
49
+ var _isElement = _interopRequireDefault(require("@douyinfe/semi-foundation/lib/cjs/utils/isElement"));
50
+
51
+ const msPerFrame = 1000 / 60;
52
+ const blankReg = /^\s*$/;
53
+ const wheelMode = 'wheel';
54
+
55
+ class ScrollItem extends _baseComponent.default {
56
+ constructor() {
57
+ var _this;
58
+
59
+ let props = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};
60
+ super(props);
61
+ _this = this;
62
+
63
+ this._cacheNode = (name, node) => name && node && Object.prototype.hasOwnProperty.call(this, name) && (this[name] = node);
64
+
65
+ this._cacheSelectedNode = selectedNode => this._cacheNode('selectedNode', selectedNode);
66
+
67
+ this._cacheWillSelectNode = node => this._cacheNode('willSelectNode', node);
68
+
69
+ this._cacheListNode = list => this._cacheNode('list', list);
70
+
71
+ this._cacheSelectorNode = selector => this._cacheNode('selector', selector);
72
+
73
+ this._cacheWrapperNode = wrapper => this._cacheNode('wrapper', wrapper);
74
+
75
+ this._isFirst = node => {
76
+ const {
77
+ list
78
+ } = this;
79
+
80
+ if ((0, _isElement.default)(node) && (0, _isElement.default)(list)) {
81
+ const chilren = list.children;
82
+ const index = (0, _findIndex2.default)(chilren, node);
83
+ return index === 0;
84
+ }
85
+
86
+ return false;
87
+ };
88
+
89
+ this._isLast = node => {
90
+ const {
91
+ list
92
+ } = this;
93
+
94
+ if ((0, _isElement.default)(node) && (0, _isElement.default)(list)) {
95
+ const {
96
+ children
97
+ } = list;
98
+ const index = (0, _findIndex2.default)(children, node);
99
+ return index === children.length - 1;
100
+ }
101
+
102
+ return false;
103
+ };
104
+
105
+ this.indexIsSame = (index1, index2) => {
106
+ const {
107
+ list
108
+ } = this.props;
109
+
110
+ if (list.length) {
111
+ return index1 % list.length === index2 % list.length;
112
+ }
113
+
114
+ return undefined;
115
+ };
116
+
117
+ this.isDisabledIndex = index => {
118
+ const {
119
+ list
120
+ } = this.props;
121
+
122
+ if ((0, _isArray.default)(list) && list.length && index > -1) {
123
+ const size = list.length;
124
+ const indexInData = index % size;
125
+ return this.isDisabledData(list[indexInData]);
126
+ }
127
+
128
+ return false;
129
+ };
130
+
131
+ this.isDisabledNode = node => {
132
+ const listWrapper = this.list;
133
+
134
+ if ((0, _isElement.default)(node) && (0, _isElement.default)(listWrapper)) {
135
+ const index = (0, _findIndex2.default)(listWrapper.children, child => child === node);
136
+ return this.isDisabledIndex(index);
137
+ }
138
+
139
+ return false;
140
+ };
141
+
142
+ this.isDisabledData = data => data && typeof data === 'object' && data.disabled;
143
+
144
+ this.isWheelMode = () => this.props.mode === wheelMode;
145
+
146
+ this.addClassToNode = function (selectedNode) {
147
+ let selectedCls = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : _constants.cssClasses.SELECTED;
148
+ const {
149
+ list
150
+ } = _this;
151
+ selectedNode = selectedNode || _this.selectedNode;
152
+
153
+ if ((0, _isElement.default)(selectedNode) && (0, _isElement.default)(list)) {
154
+ const {
155
+ children
156
+ } = list;
157
+ const reg = new RegExp("\\s*".concat(selectedCls, "\\s*"), 'g');
158
+ (0, _map3.default)(children, node => {
159
+ node.className = node.className && node.className.replace(reg, ' ');
160
+
161
+ if (blankReg.test(node.className)) {
162
+ node.className = '';
163
+ }
164
+ });
165
+
166
+ if (selectedNode.className && !blankReg.test(selectedNode.className)) {
167
+ selectedNode.className += " ".concat(selectedCls);
168
+ } else {
169
+ selectedNode.className = selectedCls;
170
+ }
171
+ }
172
+ };
173
+
174
+ this.getIndexByNode = node => (0, _findIndex2.default)(this.list.children, node);
175
+
176
+ this.getNodeByIndex = index => {
177
+ if (index > -1) {
178
+ return (0, _find2.default)(this.list.children, (node, idx) => idx === index);
179
+ }
180
+
181
+ const defaultSelectedNode = (0, _find2.default)(this.list.children, child => !this.isDisabledNode(child));
182
+ return defaultSelectedNode;
183
+ };
184
+
185
+ this.scrollToIndex = (selectedIndex, duration) => {
186
+ // move to selected item
187
+ duration = typeof duration === 'number' ? duration : _constants.numbers.DEFAULT_SCROLL_DURATION; // eslint-disable-next-line
188
+
189
+ selectedIndex = selectedIndex == null ? this.props.selectedIndex : selectedIndex; // this.isWheelMode() && this.addClassToNode();
190
+
191
+ this.scrollToNode(this.selectedNode, duration);
192
+ };
193
+
194
+ this.scrollToNode = (node, duration) => {
195
+ const {
196
+ wrapper
197
+ } = this;
198
+ const wrapperHeight = wrapper.offsetHeight;
199
+ const itemHeight = this.getItmHeight(node);
200
+ const targetTop = node.offsetTop - (wrapperHeight - itemHeight) / 2;
201
+ this.scrollToPos(targetTop, duration);
202
+ };
203
+
204
+ this.scrollToPos = function (targetTop) {
205
+ let duration = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : _constants.numbers.DEFAULT_SCROLL_DURATION;
206
+ const {
207
+ wrapper
208
+ } = _this; // this.isWheelMode() && this.addClassToNode();
209
+
210
+ if (duration && _this.props.motion) {
211
+ if (_this.scrollAnimation) {
212
+ _this.scrollAnimation.destroy();
213
+
214
+ _this.scrolling = false;
215
+ }
216
+
217
+ if (wrapper.scrollTop === targetTop) {
218
+ if (_this.isWheelMode()) {
219
+ const nodeInfo = _this.foundation.getNearestNodeInfo(_this.list, _this.selector);
220
+
221
+ _this.addClassToNode(nodeInfo.nearestNode);
222
+ }
223
+ } else {
224
+ _this.scrollAnimation = (0, _scrollTo.default)(wrapper, targetTop, duration);
225
+
226
+ _this.scrollAnimation.on('rest', () => {
227
+ if (_this.isWheelMode()) {
228
+ const nodeInfo = _this.foundation.getNearestNodeInfo(_this.list, _this.selector);
229
+
230
+ _this.addClassToNode(nodeInfo.nearestNode);
231
+ }
232
+ });
233
+
234
+ _this.scrollAnimation.start();
235
+ }
236
+ } else {
237
+ wrapper.scrollTop = targetTop;
238
+ }
239
+ };
240
+
241
+ this.scrollToSelectItem = e => {
242
+ const {
243
+ nearestNode
244
+ } = this.foundation.getNearestNodeInfo(this.list, this.selector);
245
+
246
+ if (this.props.cycled) {
247
+ this.throttledAdjustList(e, nearestNode);
248
+ }
249
+
250
+ this.debouncedSelect(e, nearestNode);
251
+ };
252
+ /**
253
+ *
254
+ * reset position to center of the scrollWrapper
255
+ *
256
+ * @param {HTMLElement} selectedNode
257
+ * @param {HTMLElement} scrollWnumber
258
+ * @param {number} duration
259
+ */
260
+
261
+
262
+ this.scrollToCenter = (selectedNode, scrollWrapper, duration) => {
263
+ selectedNode = selectedNode || this.selectedNode;
264
+ scrollWrapper = scrollWrapper || this.wrapper;
265
+
266
+ if ((0, _isElement.default)(selectedNode) && (0, _isElement.default)(scrollWrapper)) {
267
+ const scrollRect = scrollWrapper.getBoundingClientRect();
268
+ const selectedRect = selectedNode.getBoundingClientRect();
269
+ const targetTop = scrollWrapper.scrollTop + (selectedRect.top - (scrollRect.top + scrollRect.height / 2 - selectedRect.height / 2));
270
+ this.scrollToPos(targetTop, typeof duration === 'number' ? duration : _constants.numbers.DEFAULT_SCROLL_DURATION);
271
+ }
272
+ };
273
+
274
+ this.clickToSelectItem = e => {
275
+ // const index = this.foundation.selectNearestIndex(e.nativeEvent, this.list);
276
+ e && e.nativeEvent && e.nativeEvent.stopImmediatePropagation();
277
+ const {
278
+ targetNode: node,
279
+ infoInList
280
+ } = this.foundation.getTargetNode(e, this.list);
281
+
282
+ if (node && infoInList && !infoInList.disabled) {
283
+ this.debouncedSelect(null, node);
284
+ }
285
+ };
286
+
287
+ this.getItmHeight = itm => itm && itm.offsetHeight || _constants.numbers.DEFAULT_ITEM_HEIGHT;
288
+
289
+ this.renderItemList = function () {
290
+ let prefixKey = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : '';
291
+ const {
292
+ selectedIndex,
293
+ mode,
294
+ transform: commonTrans,
295
+ list
296
+ } = _this.props;
297
+ return (0, _map2.default)(list).call(list, (item, index) => {
298
+ const {
299
+ transform: itemTrans
300
+ } = item;
301
+ const transform = typeof itemTrans === 'function' ? itemTrans : commonTrans;
302
+ const cls = (0, _classnames.default)({
303
+ ["".concat(_constants.cssClasses.PREFIX, "-item-sel")]: selectedIndex === index && mode !== wheelMode,
304
+ ["".concat(_constants.cssClasses.PREFIX, "-item-disabled")]: Boolean(item.disabled)
305
+ });
306
+ let text = '';
307
+
308
+ if (selectedIndex === index) {
309
+ if (typeof transform === 'function') {
310
+ text = transform(item.value, item.text);
311
+ } else {
312
+ // eslint-disable-next-line
313
+ text = item.text == null ? item.value : item.text;
314
+ }
315
+ } else {
316
+ // eslint-disable-next-line
317
+ text = item.text == null ? item.value : item.text;
318
+ }
319
+
320
+ const events = {};
321
+
322
+ if (!_this.isWheelMode() && !item.disabled) {
323
+ events.onClick = () => _this.foundation.selectIndex(index, _this.list);
324
+ }
325
+
326
+ return (
327
+ /*#__PURE__*/
328
+ // eslint-disable-next-line @typescript-eslint/restrict-plus-operands
329
+ _react.default.createElement("li", (0, _assign.default)({
330
+ key: prefixKey + index
331
+ }, events, {
332
+ className: cls
333
+ }), text)
334
+ );
335
+ });
336
+ };
337
+
338
+ this.renderNormalList = () => {
339
+ const {
340
+ list,
341
+ className,
342
+ style
343
+ } = this.props;
344
+ const inner = this.renderItemList();
345
+ const wrapperCls = (0, _classnames.default)("".concat(_constants.cssClasses.PREFIX, "-item"), className);
346
+ return /*#__PURE__*/_react.default.createElement("div", {
347
+ style: style,
348
+ className: wrapperCls,
349
+ ref: this._cacheWrapperNode
350
+ }, /*#__PURE__*/_react.default.createElement("ul", {
351
+ ref: this._cacheListNode
352
+ }, inner));
353
+ };
354
+ /**
355
+ * List of Rendering Unlimited Modes
356
+ */
357
+
358
+
359
+ this.renderInfiniteList = () => {
360
+ var _context, _context2;
361
+
362
+ const {
363
+ list,
364
+ cycled,
365
+ className,
366
+ style
367
+ } = this.props;
368
+ const {
369
+ prependCount,
370
+ appendCount
371
+ } = this.state;
372
+ const prependList = (0, _reduce.default)(_context = (0, _times2.default)(prependCount)).call(_context, (arr, num) => {
373
+ const items = this.renderItemList("pre_".concat(num, "_"));
374
+ arr.unshift(...items);
375
+ return arr;
376
+ }, []);
377
+ const appendList = (0, _reduce.default)(_context2 = (0, _times2.default)(appendCount)).call(_context2, (arr, num) => {
378
+ const items = this.renderItemList("app_".concat(num, "_"));
379
+ arr.push(...items);
380
+ return arr;
381
+ }, []);
382
+ const inner = this.renderItemList();
383
+ const listWrapperCls = (0, _classnames.default)("".concat(_constants.cssClasses.PREFIX, "-list-outer"), {
384
+ ["".concat(_constants.cssClasses.PREFIX, "-list-outer-nocycle")]: !cycled
385
+ });
386
+ const wrapperCls = (0, _classnames.default)("".concat(_constants.cssClasses.PREFIX, "-item-wheel"), className);
387
+ const selectorCls = (0, _classnames.default)("".concat(_constants.cssClasses.PREFIX, "-selector"));
388
+ const preShadeCls = (0, _classnames.default)("".concat(_constants.cssClasses.PREFIX, "-shade"), "".concat(_constants.cssClasses.PREFIX, "-shade-pre"));
389
+ const postShadeCls = (0, _classnames.default)("".concat(_constants.cssClasses.PREFIX, "-shade"), "".concat(_constants.cssClasses.PREFIX, "-shade-post"));
390
+ return /*#__PURE__*/_react.default.createElement("div", {
391
+ className: wrapperCls,
392
+ style: style
393
+ }, /*#__PURE__*/_react.default.createElement("div", {
394
+ className: preShadeCls
395
+ }), /*#__PURE__*/_react.default.createElement("div", {
396
+ className: selectorCls,
397
+ ref: this._cacheSelectorNode
398
+ }), /*#__PURE__*/_react.default.createElement("div", {
399
+ className: postShadeCls
400
+ }), /*#__PURE__*/_react.default.createElement("div", {
401
+ className: listWrapperCls,
402
+ ref: this._cacheWrapperNode,
403
+ onScroll: this.scrollToSelectItem
404
+ }, /*#__PURE__*/_react.default.createElement("ul", {
405
+ ref: this._cacheListNode,
406
+ onClick: this.clickToSelectItem
407
+ }, prependList, inner, appendList)));
408
+ };
409
+
410
+ this.state = {
411
+ prependCount: 0,
412
+ appendCount: 0 // selectedIndex: props.selectedIndex,
413
+ // fakeSelectedIndex: props.selectedIndex,
414
+
415
+ };
416
+ this.selectedNode = null;
417
+ this.willSelectNode = null;
418
+ this.list = null;
419
+ this.wrapper = null;
420
+ this.selector = null;
421
+ this.scrollAnimation = null; // cache if select action comes from outside
422
+
423
+ this.foundation = new _itemFoundation.default(this.adapter);
424
+ this.throttledAdjustList = (0, _throttle2.default)((e, nearestNode) => {
425
+ this.foundation.adjustInfiniteList(this.list, this.wrapper, nearestNode);
426
+ }, msPerFrame);
427
+ this.debouncedSelect = (0, _debounce2.default)((e, nearestNode) => {
428
+ this._cacheSelectedNode(nearestNode);
429
+
430
+ this.foundation.selectNode(nearestNode, this.list);
431
+ }, msPerFrame * 5);
432
+ }
433
+
434
+ get adapter() {
435
+ var _this2 = this;
436
+
437
+ return (0, _assign.default)((0, _assign.default)({}, super.adapter), {
438
+ setState: (states, callback) => this.setState((0, _assign.default)({}, states), callback),
439
+ setPrependCount: prependCount => this.setState({
440
+ prependCount
441
+ }),
442
+ setAppendCount: appendCount => this.setState({
443
+ appendCount
444
+ }),
445
+ isDisabledIndex: this.isDisabledIndex,
446
+ setSelectedNode: selectedNode => this._cacheWillSelectNode(selectedNode),
447
+ notifySelectItem: function () {
448
+ return _this2.props.onSelect(...arguments);
449
+ },
450
+ scrollToCenter: this.scrollToCenter
451
+ });
452
+ }
453
+
454
+ componentDidMount() {
455
+ this.foundation.init();
456
+ const {
457
+ mode,
458
+ cycled,
459
+ selectedIndex,
460
+ list
461
+ } = this.props;
462
+ const selectedNode = this.getNodeByIndex(typeof selectedIndex === 'number' && selectedIndex > -1 ? selectedIndex : 0);
463
+
464
+ this._cacheSelectedNode(selectedNode);
465
+
466
+ this._cacheWillSelectNode(selectedNode);
467
+
468
+ if (mode === wheelMode && cycled) {
469
+ this.foundation.initWheelList(this.list, this.wrapper, () => {
470
+ // we have to scroll in next tick
471
+ // setTimeout(() => {
472
+ this.scrollToNode(selectedNode, 0); // });
473
+ });
474
+ } else {
475
+ this.scrollToNode(selectedNode, 0);
476
+ }
477
+ }
478
+
479
+ componentDidUpdate(prevProps) {
480
+ const {
481
+ selectedIndex
482
+ } = this.props; // smooth scroll to selected option
483
+
484
+ if (prevProps.selectedIndex !== selectedIndex) {
485
+ const willSelectIndex = this.getIndexByNode(this.willSelectNode);
486
+
487
+ if (!this.indexIsSame(willSelectIndex, selectedIndex)) {
488
+ const newSelectedNode = this.getNodeByOffset(this.selectedNode, selectedIndex - prevProps.selectedIndex, this.list);
489
+
490
+ this._cacheWillSelectNode(newSelectedNode);
491
+ }
492
+
493
+ this._cacheSelectedNode(this.willSelectNode);
494
+
495
+ this.scrollToIndex(selectedIndex);
496
+ }
497
+ }
498
+ /**
499
+ *
500
+ * @param {HTMLElement} refNode
501
+ * @param {number} offset
502
+ * @param {HTMLElement} listWrapper
503
+ *
504
+ * @returns {HTMLElement}
505
+ */
506
+
507
+
508
+ getNodeByOffset(refNode, offset, listWrapper) {
509
+ const {
510
+ list
511
+ } = this.props;
512
+
513
+ if ((0, _isElement.default)(refNode) && (0, _isElement.default)(listWrapper) && typeof offset === 'number' && (0, _isArray.default)(list) && list.length) {
514
+ offset = offset % list.length;
515
+ const refIndex = this.getIndexByNode(refNode);
516
+ let targetIndex = refIndex + offset;
517
+
518
+ while (targetIndex < 0) {
519
+ targetIndex += list.length;
520
+ }
521
+
522
+ if (offset) {
523
+ return this.getNodeByIndex(targetIndex);
524
+ }
525
+ }
526
+
527
+ return refNode;
528
+ }
529
+
530
+ render() {
531
+ return this.isWheelMode() ? this.renderInfiniteList() : this.renderNormalList();
532
+ }
533
+
534
+ }
535
+
536
+ exports.default = ScrollItem;
537
+ ScrollItem.propTypes = {
538
+ mode: _propTypes.default.string,
539
+ cycled: _propTypes.default.bool,
540
+ list: _propTypes.default.array,
541
+ selectedIndex: _propTypes.default.number,
542
+ onSelect: _propTypes.default.func,
543
+ transform: _propTypes.default.func,
544
+ className: _propTypes.default.string,
545
+ style: _propTypes.default.object,
546
+ motion: _propTypes.default.oneOfType([_propTypes.default.func, _propTypes.default.bool]),
547
+ type: _propTypes.default.oneOfType([_propTypes.default.string, _propTypes.default.number])
548
+ };
549
+ ScrollItem.defaultProps = {
550
+ selectedIndex: 0,
551
+ motion: true,
552
+ // transform: identity,
553
+ list: [],
554
+ onSelect: _noop2.default,
555
+ cycled: false,
556
+ mode: wheelMode
557
+ };