@douyinfe/semi-foundation 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 (415) hide show
  1. package/calendar/foundation.ts +2 -1
  2. package/lib/cjs/anchor/constants.js +0 -2
  3. package/lib/cjs/anchor/foundation.js +10 -73
  4. package/lib/cjs/anchor/linkFoundation.js +4 -16
  5. package/lib/cjs/autoComplete/constants.js +0 -3
  6. package/lib/cjs/autoComplete/foundation.d.ts +1 -1
  7. package/lib/cjs/autoComplete/foundation.js +25 -139
  8. package/lib/cjs/autoComplete/optionFoundation.js +4 -14
  9. package/lib/cjs/avatar/constants.js +0 -2
  10. package/lib/cjs/avatar/foundation.js +0 -17
  11. package/lib/cjs/backtop/constants.js +0 -2
  12. package/lib/cjs/backtop/foundation.d.ts +2 -2
  13. package/lib/cjs/backtop/foundation.js +0 -21
  14. package/lib/cjs/badge/constants.js +0 -2
  15. package/lib/cjs/banner/constants.js +0 -2
  16. package/lib/cjs/banner/foundation.js +0 -7
  17. package/lib/cjs/base/constants.js +2 -4
  18. package/lib/cjs/base/foundation.d.ts +1 -1
  19. package/lib/cjs/base/foundation.js +12 -46
  20. package/lib/cjs/base/index.js +0 -3
  21. package/lib/cjs/breadcrumb/constants.js +0 -2
  22. package/lib/cjs/breadcrumb/foundation.js +1 -12
  23. package/lib/cjs/breadcrumb/itemFoundation.js +0 -7
  24. package/lib/cjs/button/constants.js +0 -2
  25. package/lib/cjs/calendar/constants.js +0 -2
  26. package/lib/cjs/calendar/eventUtil.d.ts +1 -1
  27. package/lib/cjs/calendar/eventUtil.js +2 -74
  28. package/lib/cjs/calendar/foundation.d.ts +2 -2
  29. package/lib/cjs/calendar/foundation.js +28 -123
  30. package/lib/cjs/card/constants.js +0 -2
  31. package/lib/cjs/carousel/constants.js +0 -2
  32. package/lib/cjs/carousel/foundation.js +2 -52
  33. package/lib/cjs/cascader/constants.js +0 -3
  34. package/lib/cjs/cascader/foundation.d.ts +4 -4
  35. package/lib/cjs/cascader/foundation.js +28 -242
  36. package/lib/cjs/cascader/util.js +6 -24
  37. package/lib/cjs/checkbox/checkboxFoundation.js +2 -38
  38. package/lib/cjs/checkbox/checkboxGroupFoundation.js +2 -23
  39. package/lib/cjs/checkbox/constants.js +0 -2
  40. package/lib/cjs/collapse/constants.js +0 -2
  41. package/lib/cjs/collapse/foundation.d.ts +1 -1
  42. package/lib/cjs/collapse/foundation.js +2 -13
  43. package/lib/cjs/collapsible/constants.js +0 -2
  44. package/lib/cjs/collapsible/foundation.js +0 -9
  45. package/lib/cjs/datePicker/_utils/formatter.js +4 -10
  46. package/lib/cjs/datePicker/_utils/getDayOfWeek.d.ts +1 -1
  47. package/lib/cjs/datePicker/_utils/getDayOfWeek.js +0 -4
  48. package/lib/cjs/datePicker/_utils/getDefaultFormatToken.js +0 -5
  49. package/lib/cjs/datePicker/_utils/getDefaultPickerDate.d.ts +1 -1
  50. package/lib/cjs/datePicker/_utils/getDefaultPickerDate.js +0 -15
  51. package/lib/cjs/datePicker/_utils/getFullDateOffset.js +0 -7
  52. package/lib/cjs/datePicker/_utils/getInsetInputFormatToken.js +0 -5
  53. package/lib/cjs/datePicker/_utils/getInsetInputValueFromInsetInputStr.js +0 -6
  54. package/lib/cjs/datePicker/_utils/getMonthTable.d.ts +1 -1
  55. package/lib/cjs/datePicker/_utils/getMonthTable.js +3 -14
  56. package/lib/cjs/datePicker/_utils/getMonthsInYear.js +0 -2
  57. package/lib/cjs/datePicker/_utils/getYears.js +0 -4
  58. package/lib/cjs/datePicker/_utils/index.js +0 -13
  59. package/lib/cjs/datePicker/_utils/isAfter.js +0 -4
  60. package/lib/cjs/datePicker/_utils/isBefore.js +0 -4
  61. package/lib/cjs/datePicker/_utils/isBetween.js +0 -4
  62. package/lib/cjs/datePicker/_utils/isDate.js +0 -1
  63. package/lib/cjs/datePicker/_utils/isSameDay.js +0 -4
  64. package/lib/cjs/datePicker/_utils/isTimestamp.js +0 -4
  65. package/lib/cjs/datePicker/_utils/isUnixTimestamp.js +0 -4
  66. package/lib/cjs/datePicker/_utils/isValidDate.js +0 -1
  67. package/lib/cjs/datePicker/_utils/isValidTimeZone.js +0 -1
  68. package/lib/cjs/datePicker/_utils/isWithinInterval.js +0 -4
  69. package/lib/cjs/datePicker/_utils/parser.js +0 -10
  70. package/lib/cjs/datePicker/constants.js +0 -3
  71. package/lib/cjs/datePicker/foundation.d.ts +24 -24
  72. package/lib/cjs/datePicker/foundation.js +22 -333
  73. package/lib/cjs/datePicker/inputFoundation.d.ts +3 -3
  74. package/lib/cjs/datePicker/inputFoundation.js +5 -86
  75. package/lib/cjs/datePicker/monthFoundation.d.ts +1 -1
  76. package/lib/cjs/datePicker/monthFoundation.js +3 -28
  77. package/lib/cjs/datePicker/monthsGridFoundation.d.ts +3 -3
  78. package/lib/cjs/datePicker/monthsGridFoundation.js +43 -238
  79. package/lib/cjs/datePicker/yearAndMonthFoundation.d.ts +1 -1
  80. package/lib/cjs/datePicker/yearAndMonthFoundation.js +12 -38
  81. package/lib/cjs/descriptions/constants.js +0 -2
  82. package/lib/cjs/divider/constants.js +0 -2
  83. package/lib/cjs/dropdown/constants.js +0 -3
  84. package/lib/cjs/dropdown/foundation.js +4 -23
  85. package/lib/cjs/dropdown/menuFoundation.js +8 -27
  86. package/lib/cjs/empty/constants.js +0 -2
  87. package/lib/cjs/form/constants.js +0 -2
  88. package/lib/cjs/form/foundation.js +75 -206
  89. package/lib/cjs/form/interface.d.ts +5 -5
  90. package/lib/cjs/form/utils.js +47 -77
  91. package/lib/cjs/grid/constants.js +0 -2
  92. package/lib/cjs/highlight/constants.js +0 -2
  93. package/lib/cjs/icons/constants.js +0 -2
  94. package/lib/cjs/image/constants.js +0 -2
  95. package/lib/cjs/image/imageFoundation.js +4 -18
  96. package/lib/cjs/image/previewFooterFoundation.js +0 -13
  97. package/lib/cjs/image/previewFoundation.js +0 -11
  98. package/lib/cjs/image/previewImageFoundation.js +6 -80
  99. package/lib/cjs/image/previewInnerFoundation.js +12 -77
  100. package/lib/cjs/image/utils.js +0 -14
  101. package/lib/cjs/input/constants.js +0 -2
  102. package/lib/cjs/input/foundation.js +17 -101
  103. package/lib/cjs/input/textareaFoundation.js +20 -85
  104. package/lib/cjs/input/util/calculateNodeHeight.js +6 -18
  105. package/lib/cjs/input/util/getSizingData.js +7 -11
  106. package/lib/cjs/inputNumber/constants.js +0 -2
  107. package/lib/cjs/inputNumber/foundation.js +29 -192
  108. package/lib/cjs/layout/constants.js +0 -2
  109. package/lib/cjs/list/constants.js +0 -2
  110. package/lib/cjs/modal/constants.js +0 -2
  111. package/lib/cjs/modal/modalContentFoundation.js +0 -20
  112. package/lib/cjs/modal/modalFoundation.d.ts +2 -2
  113. package/lib/cjs/modal/modalFoundation.js +2 -22
  114. package/lib/cjs/navigation/NavItem.js +0 -10
  115. package/lib/cjs/navigation/constants.js +0 -3
  116. package/lib/cjs/navigation/foundation.js +3 -67
  117. package/lib/cjs/navigation/itemFoundation.js +3 -21
  118. package/lib/cjs/navigation/subNavFoundation.js +4 -40
  119. package/lib/cjs/notification/constants.js +0 -3
  120. package/lib/cjs/notification/notificationFoundation.d.ts +3 -3
  121. package/lib/cjs/notification/notificationFoundation.js +0 -16
  122. package/lib/cjs/notification/notificationListFoundation.js +7 -17
  123. package/lib/cjs/overflowList/constants.js +0 -2
  124. package/lib/cjs/overflowList/foundation.js +11 -41
  125. package/lib/cjs/pagination/constants.js +0 -2
  126. package/lib/cjs/pagination/foundation.d.ts +3 -3
  127. package/lib/cjs/pagination/foundation.js +21 -90
  128. package/lib/cjs/popconfirm/constants.js +0 -2
  129. package/lib/cjs/popconfirm/popconfirmFoundation.js +1 -21
  130. package/lib/cjs/popover/constants.js +0 -3
  131. package/lib/cjs/progress/constants.js +0 -2
  132. package/lib/cjs/progress/generates.d.ts +2 -2
  133. package/lib/cjs/progress/generates.js +19 -60
  134. package/lib/cjs/radio/constants.js +0 -2
  135. package/lib/cjs/radio/radioFoundation.js +0 -14
  136. package/lib/cjs/radio/radioGroupFoundation.js +4 -23
  137. package/lib/cjs/radio/radioInnerFoundation.js +2 -19
  138. package/lib/cjs/rating/constants.js +0 -2
  139. package/lib/cjs/rating/foundation.js +11 -61
  140. package/lib/cjs/scrollList/constants.js +0 -2
  141. package/lib/cjs/scrollList/foundation.js +0 -4
  142. package/lib/cjs/scrollList/itemFoundation.js +8 -61
  143. package/lib/cjs/scrollList/scrollTo.js +2 -5
  144. package/lib/cjs/select/constants.js +0 -3
  145. package/lib/cjs/select/foundation.d.ts +2 -2
  146. package/lib/cjs/select/foundation.js +122 -425
  147. package/lib/cjs/select/optionFoundation.js +4 -14
  148. package/lib/cjs/sideSheet/constants.js +0 -2
  149. package/lib/cjs/sideSheet/sideSheetFoundation.js +0 -18
  150. package/lib/cjs/skeleton/constants.js +0 -2
  151. package/lib/cjs/slider/constants.js +0 -2
  152. package/lib/cjs/slider/foundation.d.ts +1 -1
  153. package/lib/cjs/slider/foundation.js +25 -204
  154. package/lib/cjs/space/constants.js +0 -2
  155. package/lib/cjs/spin/constants.js +0 -2
  156. package/lib/cjs/spin/foundation.js +3 -13
  157. package/lib/cjs/steps/constants.js +0 -2
  158. package/lib/cjs/switch/constants.js +0 -2
  159. package/lib/cjs/switch/foundation.js +2 -18
  160. package/lib/cjs/table/bodyFoundation.js +2 -34
  161. package/lib/cjs/table/cellFoundation.js +0 -5
  162. package/lib/cjs/table/constants.js +7 -8
  163. package/lib/cjs/table/foundation.d.ts +17 -14
  164. package/lib/cjs/table/foundation.js +71 -302
  165. package/lib/cjs/table/tableRowFoundation.js +0 -11
  166. package/lib/cjs/table/tableSelectionCellFoundation.js +0 -6
  167. package/lib/cjs/table/utils.d.ts +2 -2
  168. package/lib/cjs/table/utils.js +5 -118
  169. package/lib/cjs/tabs/constants.js +0 -2
  170. package/lib/cjs/tabs/foundation.js +2 -40
  171. package/lib/cjs/tag/constants.js +1 -2
  172. package/lib/cjs/tagInput/constants.js +0 -2
  173. package/lib/cjs/tagInput/foundation.d.ts +4 -4
  174. package/lib/cjs/tagInput/foundation.js +4 -94
  175. package/lib/cjs/tagInput/utils/getSplitedArray.js +0 -11
  176. package/lib/cjs/timePicker/ComboxFoundation.js +4 -39
  177. package/lib/cjs/timePicker/constants.js +0 -3
  178. package/lib/cjs/timePicker/foundation.d.ts +1 -1
  179. package/lib/cjs/timePicker/foundation.js +3 -97
  180. package/lib/cjs/timePicker/inputFoundation.js +6 -25
  181. package/lib/cjs/timePicker/utils/index.js +6 -45
  182. package/lib/cjs/timePicker/utils/localeDate.js +0 -10
  183. package/lib/cjs/timeline/constants.js +0 -2
  184. package/lib/cjs/toast/constants.js +0 -3
  185. package/lib/cjs/toast/toastFoundation.d.ts +3 -3
  186. package/lib/cjs/toast/toastFoundation.js +0 -14
  187. package/lib/cjs/toast/toastListFoundation.js +4 -22
  188. package/lib/cjs/tooltip/constants.js +0 -2
  189. package/lib/cjs/tooltip/foundation.d.ts +1 -1
  190. package/lib/cjs/tooltip/foundation.js +63 -291
  191. package/lib/cjs/transfer/constants.js +0 -2
  192. package/lib/cjs/transfer/foundation.d.ts +1 -1
  193. package/lib/cjs/transfer/foundation.js +4 -68
  194. package/lib/cjs/transfer/transferUtils.js +5 -27
  195. package/lib/cjs/tree/constants.js +0 -2
  196. package/lib/cjs/tree/foundation.d.ts +3 -3
  197. package/lib/cjs/tree/foundation.js +34 -150
  198. package/lib/cjs/tree/treeUtil.js +54 -173
  199. package/lib/cjs/treeSelect/constants.js +0 -2
  200. package/lib/cjs/treeSelect/foundation.d.ts +7 -7
  201. package/lib/cjs/treeSelect/foundation.js +18 -192
  202. package/lib/cjs/typography/constants.js +0 -2
  203. package/lib/cjs/typography/formatNumeral.d.ts +3 -3
  204. package/lib/cjs/typography/formatNumeral.js +16 -32
  205. package/lib/cjs/upload/constants.js +0 -2
  206. package/lib/cjs/upload/foundation.d.ts +5 -5
  207. package/lib/cjs/upload/foundation.js +36 -245
  208. package/lib/cjs/upload/utils.js +10 -29
  209. package/lib/cjs/utils/Event.js +2 -21
  210. package/lib/cjs/utils/FocusHandle.d.ts +1 -1
  211. package/lib/cjs/utils/FocusHandle.js +6 -35
  212. package/lib/cjs/utils/Logger.js +0 -21
  213. package/lib/cjs/utils/Store.js +0 -10
  214. package/lib/cjs/utils/a11y.js +18 -43
  215. package/lib/cjs/utils/array.d.ts +1 -1
  216. package/lib/cjs/utils/array.js +0 -7
  217. package/lib/cjs/utils/arrayMove.js +0 -1
  218. package/lib/cjs/utils/classnames.js +0 -12
  219. package/lib/cjs/utils/date-fns-extra.js +0 -35
  220. package/lib/cjs/utils/dom.d.ts +1 -1
  221. package/lib/cjs/utils/dom.js +0 -13
  222. package/lib/cjs/utils/function.js +0 -1
  223. package/lib/cjs/utils/getDataAttr.js +0 -2
  224. package/lib/cjs/utils/getHighlight.js +5 -26
  225. package/lib/cjs/utils/getMotionObjFromProps.js +0 -12
  226. package/lib/cjs/utils/index.js +0 -4
  227. package/lib/cjs/utils/isBothNaN.js +0 -2
  228. package/lib/cjs/utils/isElement.js +0 -1
  229. package/lib/cjs/utils/isEnterPress.js +0 -5
  230. package/lib/cjs/utils/isEscPress.js +0 -5
  231. package/lib/cjs/utils/isNullOrUndefined.js +0 -1
  232. package/lib/cjs/utils/isNumber.js +0 -1
  233. package/lib/cjs/utils/isObject.js +0 -1
  234. package/lib/cjs/utils/isPromise.js +0 -3
  235. package/lib/cjs/utils/isString.js +0 -1
  236. package/lib/cjs/utils/keyCode.js +0 -105
  237. package/lib/cjs/utils/log.js +0 -5
  238. package/lib/cjs/utils/number.js +0 -2
  239. package/lib/cjs/utils/object.d.ts +4 -4
  240. package/lib/cjs/utils/object.js +12 -34
  241. package/lib/cjs/utils/set.js +0 -8
  242. package/lib/cjs/utils/shallowEqualObjects.js +0 -7
  243. package/lib/cjs/utils/touchPolyfill.js +0 -7
  244. package/lib/cjs/utils/type.d.ts +3 -3
  245. package/lib/cjs/utils/uuid.js +2 -9
  246. package/lib/cjs/utils/warning.js +0 -1
  247. package/lib/es/anchor/foundation.js +10 -66
  248. package/lib/es/anchor/linkFoundation.js +4 -12
  249. package/lib/es/autoComplete/foundation.d.ts +1 -1
  250. package/lib/es/autoComplete/foundation.js +24 -132
  251. package/lib/es/autoComplete/optionFoundation.js +4 -10
  252. package/lib/es/avatar/foundation.js +0 -12
  253. package/lib/es/backtop/foundation.d.ts +2 -2
  254. package/lib/es/backtop/foundation.js +0 -16
  255. package/lib/es/banner/foundation.js +0 -3
  256. package/lib/es/base/constants.js +2 -2
  257. package/lib/es/base/foundation.d.ts +1 -1
  258. package/lib/es/base/foundation.js +11 -44
  259. package/lib/es/breadcrumb/foundation.js +0 -7
  260. package/lib/es/breadcrumb/itemFoundation.js +0 -3
  261. package/lib/es/calendar/eventUtil.d.ts +1 -1
  262. package/lib/es/calendar/eventUtil.js +2 -36
  263. package/lib/es/calendar/foundation.d.ts +2 -2
  264. package/lib/es/calendar/foundation.js +28 -117
  265. package/lib/es/carousel/foundation.js +2 -47
  266. package/lib/es/cascader/constants.js +0 -1
  267. package/lib/es/cascader/foundation.d.ts +4 -4
  268. package/lib/es/cascader/foundation.js +30 -226
  269. package/lib/es/cascader/util.js +6 -15
  270. package/lib/es/checkbox/checkboxFoundation.js +2 -34
  271. package/lib/es/checkbox/checkboxGroupFoundation.js +2 -20
  272. package/lib/es/collapse/foundation.d.ts +1 -1
  273. package/lib/es/collapse/foundation.js +2 -9
  274. package/lib/es/collapsible/foundation.js +0 -7
  275. package/lib/es/datePicker/_utils/formatter.js +4 -8
  276. package/lib/es/datePicker/_utils/getDayOfWeek.d.ts +1 -1
  277. package/lib/es/datePicker/_utils/getDayOfWeek.js +0 -3
  278. package/lib/es/datePicker/_utils/getDefaultFormatToken.js +0 -2
  279. package/lib/es/datePicker/_utils/getDefaultPickerDate.d.ts +1 -1
  280. package/lib/es/datePicker/_utils/getDefaultPickerDate.js +0 -10
  281. package/lib/es/datePicker/_utils/getFullDateOffset.js +0 -3
  282. package/lib/es/datePicker/_utils/getInsetInputFormatToken.js +0 -4
  283. package/lib/es/datePicker/_utils/getInsetInputValueFromInsetInputStr.js +0 -5
  284. package/lib/es/datePicker/_utils/getMonthTable.d.ts +1 -1
  285. package/lib/es/datePicker/_utils/getMonthTable.js +4 -14
  286. package/lib/es/datePicker/_utils/getMonthsInYear.js +0 -1
  287. package/lib/es/datePicker/_utils/getYears.js +0 -3
  288. package/lib/es/datePicker/_utils/isBetween.js +0 -1
  289. package/lib/es/datePicker/_utils/parser.js +0 -8
  290. package/lib/es/datePicker/foundation.d.ts +24 -24
  291. package/lib/es/datePicker/foundation.js +22 -318
  292. package/lib/es/datePicker/inputFoundation.d.ts +3 -3
  293. package/lib/es/datePicker/inputFoundation.js +5 -74
  294. package/lib/es/datePicker/monthFoundation.d.ts +1 -1
  295. package/lib/es/datePicker/monthFoundation.js +4 -22
  296. package/lib/es/datePicker/monthsGridFoundation.d.ts +3 -3
  297. package/lib/es/datePicker/monthsGridFoundation.js +42 -222
  298. package/lib/es/datePicker/yearAndMonthFoundation.d.ts +1 -1
  299. package/lib/es/datePicker/yearAndMonthFoundation.js +12 -36
  300. package/lib/es/dropdown/foundation.js +4 -18
  301. package/lib/es/dropdown/menuFoundation.js +8 -22
  302. package/lib/es/form/foundation.js +74 -195
  303. package/lib/es/form/interface.d.ts +5 -5
  304. package/lib/es/form/utils.js +47 -70
  305. package/lib/es/image/imageFoundation.js +4 -13
  306. package/lib/es/image/previewFooterFoundation.js +0 -9
  307. package/lib/es/image/previewFoundation.js +0 -7
  308. package/lib/es/image/previewImageFoundation.js +6 -72
  309. package/lib/es/image/previewInnerFoundation.js +12 -70
  310. package/lib/es/image/utils.js +0 -6
  311. package/lib/es/input/foundation.js +17 -93
  312. package/lib/es/input/textareaFoundation.js +20 -75
  313. package/lib/es/input/util/calculateNodeHeight.js +6 -18
  314. package/lib/es/input/util/getSizingData.js +7 -11
  315. package/lib/es/inputNumber/foundation.js +28 -183
  316. package/lib/es/modal/modalContentFoundation.js +0 -15
  317. package/lib/es/modal/modalFoundation.d.ts +2 -2
  318. package/lib/es/modal/modalFoundation.js +2 -17
  319. package/lib/es/navigation/NavItem.js +0 -6
  320. package/lib/es/navigation/constants.js +1 -1
  321. package/lib/es/navigation/foundation.js +2 -60
  322. package/lib/es/navigation/itemFoundation.js +3 -18
  323. package/lib/es/navigation/subNavFoundation.js +4 -36
  324. package/lib/es/notification/constants.js +1 -1
  325. package/lib/es/notification/notificationFoundation.d.ts +3 -3
  326. package/lib/es/notification/notificationFoundation.js +0 -11
  327. package/lib/es/notification/notificationListFoundation.js +6 -13
  328. package/lib/es/overflowList/foundation.js +11 -37
  329. package/lib/es/pagination/foundation.d.ts +3 -3
  330. package/lib/es/pagination/foundation.js +20 -87
  331. package/lib/es/popconfirm/popconfirmFoundation.js +1 -16
  332. package/lib/es/progress/generates.d.ts +2 -2
  333. package/lib/es/progress/generates.js +19 -59
  334. package/lib/es/radio/radioFoundation.js +0 -9
  335. package/lib/es/radio/radioGroupFoundation.js +4 -19
  336. package/lib/es/radio/radioInnerFoundation.js +2 -15
  337. package/lib/es/rating/foundation.js +10 -54
  338. package/lib/es/scrollList/itemFoundation.js +8 -60
  339. package/lib/es/scrollList/scrollTo.js +2 -4
  340. package/lib/es/select/foundation.d.ts +2 -2
  341. package/lib/es/select/foundation.js +122 -411
  342. package/lib/es/select/optionFoundation.js +4 -10
  343. package/lib/es/sideSheet/sideSheetFoundation.js +0 -12
  344. package/lib/es/slider/foundation.d.ts +1 -1
  345. package/lib/es/slider/foundation.js +24 -197
  346. package/lib/es/spin/foundation.js +3 -11
  347. package/lib/es/switch/foundation.js +2 -13
  348. package/lib/es/table/bodyFoundation.js +2 -25
  349. package/lib/es/table/cellFoundation.js +0 -1
  350. package/lib/es/table/constants.js +6 -6
  351. package/lib/es/table/foundation.d.ts +17 -14
  352. package/lib/es/table/foundation.js +71 -309
  353. package/lib/es/table/tableRowFoundation.js +2 -9
  354. package/lib/es/table/tableSelectionCellFoundation.js +0 -2
  355. package/lib/es/table/utils.d.ts +2 -2
  356. package/lib/es/table/utils.js +5 -81
  357. package/lib/es/tabs/foundation.js +2 -35
  358. package/lib/es/tagInput/foundation.d.ts +4 -4
  359. package/lib/es/tagInput/foundation.js +4 -84
  360. package/lib/es/tagInput/utils/getSplitedArray.js +0 -7
  361. package/lib/es/timePicker/ComboxFoundation.js +4 -30
  362. package/lib/es/timePicker/foundation.d.ts +1 -1
  363. package/lib/es/timePicker/foundation.js +4 -90
  364. package/lib/es/timePicker/inputFoundation.js +6 -22
  365. package/lib/es/timePicker/utils/index.js +6 -25
  366. package/lib/es/timePicker/utils/localeDate.js +0 -8
  367. package/lib/es/toast/constants.js +1 -1
  368. package/lib/es/toast/toastFoundation.d.ts +3 -3
  369. package/lib/es/toast/toastFoundation.js +0 -9
  370. package/lib/es/toast/toastListFoundation.js +4 -18
  371. package/lib/es/tooltip/foundation.d.ts +1 -1
  372. package/lib/es/tooltip/foundation.js +63 -288
  373. package/lib/es/transfer/foundation.d.ts +1 -1
  374. package/lib/es/transfer/foundation.js +6 -62
  375. package/lib/es/transfer/transferUtils.js +5 -21
  376. package/lib/es/tree/foundation.d.ts +3 -3
  377. package/lib/es/tree/foundation.js +34 -143
  378. package/lib/es/tree/treeUtil.js +54 -139
  379. package/lib/es/treeSelect/foundation.d.ts +7 -7
  380. package/lib/es/treeSelect/foundation.js +20 -179
  381. package/lib/es/typography/formatNumeral.d.ts +3 -3
  382. package/lib/es/typography/formatNumeral.js +16 -29
  383. package/lib/es/upload/foundation.d.ts +5 -5
  384. package/lib/es/upload/foundation.js +36 -238
  385. package/lib/es/upload/utils.js +10 -24
  386. package/lib/es/utils/Event.js +2 -17
  387. package/lib/es/utils/FocusHandle.d.ts +1 -1
  388. package/lib/es/utils/FocusHandle.js +6 -32
  389. package/lib/es/utils/Logger.js +0 -20
  390. package/lib/es/utils/Store.js +0 -9
  391. package/lib/es/utils/a11y.js +18 -31
  392. package/lib/es/utils/array.d.ts +1 -1
  393. package/lib/es/utils/array.js +0 -5
  394. package/lib/es/utils/classnames.js +0 -10
  395. package/lib/es/utils/date-fns-extra.js +0 -27
  396. package/lib/es/utils/dom.d.ts +1 -1
  397. package/lib/es/utils/dom.js +0 -9
  398. package/lib/es/utils/getDataAttr.js +0 -1
  399. package/lib/es/utils/getHighlight.js +5 -26
  400. package/lib/es/utils/getMotionObjFromProps.js +0 -8
  401. package/lib/es/utils/isBothNaN.js +0 -1
  402. package/lib/es/utils/isEnterPress.js +0 -2
  403. package/lib/es/utils/isEscPress.js +0 -2
  404. package/lib/es/utils/keyCode.js +0 -104
  405. package/lib/es/utils/log.js +0 -3
  406. package/lib/es/utils/object.d.ts +4 -4
  407. package/lib/es/utils/object.js +12 -28
  408. package/lib/es/utils/set.js +0 -5
  409. package/lib/es/utils/shallowEqualObjects.js +0 -6
  410. package/lib/es/utils/touchPolyfill.js +0 -5
  411. package/lib/es/utils/type.d.ts +3 -3
  412. package/lib/es/utils/uuid.js +2 -8
  413. package/package.json +2 -2
  414. package/table/foundation.ts +7 -10
  415. package/upload/foundation.ts +8 -8
@@ -1,29 +1,22 @@
1
- import BaseFoundation from '../base/foundation'; // eslint-disable-next-line max-len
2
-
1
+ import BaseFoundation from '../base/foundation';
2
+ // eslint-disable-next-line max-len
3
3
  export default class TableRowFoundation extends BaseFoundation {
4
4
  handleClick(e) {
5
5
  const {
6
6
  expanded,
7
7
  rowKey
8
8
  } = this.getProps();
9
-
10
9
  this._adapter.notifyClick(rowKey, e, expanded);
11
10
  }
12
-
13
11
  handleDoubleClick(e) {
14
12
  this._adapter.notifyDoubleClick(this.getProp('record'), e);
15
13
  }
16
-
17
14
  handleMouseEnter(e) {
18
15
  const record = this.getProp('record');
19
-
20
16
  this._adapter.notifyMouseEnter(record, e);
21
17
  }
22
-
23
18
  handleMouseLeave(e) {
24
19
  const record = this.getProp('record');
25
-
26
20
  this._adapter.notifyMouseLeave(record, e);
27
21
  }
28
-
29
22
  }
@@ -2,8 +2,6 @@ import BaseFoundation from '../base/foundation';
2
2
  export default class TableSelectionCellFoundation extends BaseFoundation {
3
3
  handleChange(e) {
4
4
  const value = e.target.checked;
5
-
6
5
  this._adapter.notifyChange(value, e);
7
6
  }
8
-
9
7
  }
@@ -62,7 +62,7 @@ export declare function getAllLevelColumns(columns: Record<string, any>[], child
62
62
  export declare function getColumnByLevelIndex(columns: Record<string, any>[], index: number, level?: number, childrenColumnName?: string): any;
63
63
  export declare function findColumn(columns: Record<string, any>[], column: Record<string, any>, childrenColumnName?: string): any;
64
64
  export declare function expandBtnShouldInRow(props: ExpandBtnShouldInRowProps): boolean;
65
- export declare type ExpandBtnShouldInRowProps = {
65
+ export type ExpandBtnShouldInRowProps = {
66
66
  expandedRowRender: (record?: Record<string, any>, index?: number, expanded?: boolean) => any;
67
67
  dataSource: Record<string, any>[];
68
68
  hideExpandedColumn: boolean;
@@ -152,4 +152,4 @@ export declare function isTreeTable({ dataSource, childrenRecordName }: {
152
152
  childrenRecordName?: string;
153
153
  }): boolean;
154
154
  export declare function getRTLAlign(align: typeof strings.ALIGNS[number], direction?: 'ltr' | 'rtl'): typeof strings.ALIGNS[number];
155
- export declare function shouldShowEllipsisTitle(ellipsis: BaseEllipsis): any;
155
+ export declare function shouldShowEllipsisTitle(ellipsis: BaseEllipsis): true;
@@ -8,6 +8,9 @@ import _find from "lodash/find";
8
8
  import _filter from "lodash/filter";
9
9
  import _get from "lodash/get";
10
10
  import _isEqualWith from "lodash/isEqualWith";
11
+ /* eslint-disable max-len */
12
+ /* eslint-disable no-param-reassign */
13
+ /* eslint-disable eqeqeq */
11
14
  import { strings, numbers } from './constants';
12
15
  import isNullOrUndefined from '../utils/isNullOrUndefined';
13
16
  import Logger from '../utils/Logger';
@@ -16,33 +19,26 @@ export function equalWith(value, other, customizer) {
16
19
  if (typeof objVal === 'function' && typeof othVal === 'function') {
17
20
  return _toString(objVal) === _toString(othVal);
18
21
  }
19
-
20
22
  if (typeof customizer === 'function') {
21
23
  for (var _len = arguments.length, rest = new Array(_len > 2 ? _len - 2 : 0), _key = 2; _key < _len; _key++) {
22
24
  rest[_key - 2] = arguments[_key];
23
25
  }
24
-
25
26
  return customizer(objVal, othVal, ...rest);
26
- } // If customizer returns undefined, comparisons are handled by isEqual instead
27
-
28
-
27
+ }
28
+ // If customizer returns undefined, comparisons are handled by isEqual instead
29
29
  return undefined;
30
30
  });
31
31
  }
32
32
  export function getColumnKey(column, keyPropNames) {
33
33
  keyPropNames = Array.isArray(keyPropNames) ? keyPropNames : ['key', 'dataIndex'];
34
34
  let key = null;
35
-
36
35
  _each(keyPropNames, propName => {
37
36
  key = _get(column, propName);
38
-
39
37
  if (key != null) {
40
38
  return false;
41
39
  }
42
-
43
40
  return undefined;
44
41
  });
45
-
46
42
  return key;
47
43
  }
48
44
  /**
@@ -52,7 +48,6 @@ export function getColumnKey(column, keyPropNames) {
52
48
  * @param {number} [endIndex] end index, not included
53
49
  * @returns {number}
54
50
  */
55
-
56
51
  export function arrayAdd() {
57
52
  let arr = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : [];
58
53
  let beginIndex = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : 0;
@@ -60,40 +55,30 @@ export function arrayAdd() {
60
55
  beginIndex = beginIndex < 0 || typeof beginIndex !== 'number' ? 0 : beginIndex;
61
56
  endIndex = endIndex > arr.length || typeof endIndex !== 'number' ? arr.length : endIndex;
62
57
  let result = 0;
63
-
64
58
  _each(arr, (value, index) => {
65
59
  if (index >= beginIndex && index < endIndex) {
66
60
  result += typeof value === 'number' && !isNaN(value) ? value : 0;
67
61
  }
68
62
  });
69
-
70
63
  return result;
71
64
  }
72
65
  export function isLastLeftFixed(columns, column) {
73
66
  let checkKeys = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : ['key'];
74
-
75
67
  const leftFixedColumns = _filter(columns, col => col.fixed === true || col.fixed === 'left');
76
-
77
68
  const index = _findIndex(leftFixedColumns, col => checkKeys.every(key => col[key] != null && col[key] === column[key]));
78
-
79
69
  return leftFixedColumns.length > 0 && index === leftFixedColumns.length - 1;
80
70
  }
81
71
  export function isFirstFixedRight(columns, column) {
82
72
  let checkKeys = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : ['key'];
83
-
84
73
  const rightFixedColumns = _filter(columns, col => col.fixed === 'right');
85
-
86
74
  const index = _findIndex(rightFixedColumns, col => checkKeys.every(key => col[key] != null && col[key] === column[key]));
87
-
88
75
  return rightFixedColumns.length > 0 && index === 0;
89
76
  }
90
77
  export function isAnyFixed(columns) {
91
78
  let fixedSet = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : ['left', true, 'right'];
92
-
93
79
  if (typeof fixedSet === 'string' || typeof fixedSet === 'boolean') {
94
80
  fixedSet = [fixedSet];
95
81
  }
96
-
97
82
  return fixedSet.length > 0 && _some(columns, col => fixedSet.includes(col.fixed));
98
83
  }
99
84
  export function isAnyFixedRight(columns) {
@@ -129,14 +114,11 @@ export function filterColumns(columns) {
129
114
  * @param {Array} columns
130
115
  * @returns {Number|undefined}
131
116
  */
132
-
133
117
  export function getScrollbarColumnWidth() {
134
118
  let columns = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : [];
135
119
  const len = columns.length;
136
-
137
120
  if (len) {
138
121
  const lastColumn = columns[len - 1];
139
-
140
122
  if (_get(lastColumn, 'key') === strings.DEFAULT_KEY_COLUMN_SCROLLBAR) {
141
123
  return _get(lastColumn, 'width', 0);
142
124
  }
@@ -146,7 +128,6 @@ export function getRecordKey(record, rowKey) {
146
128
  if (rowKey === undefined) {
147
129
  rowKey = 'key';
148
130
  }
149
-
150
131
  return typeof rowKey === 'function' ? rowKey(record) : _get(record, rowKey);
151
132
  }
152
133
  /**
@@ -154,7 +135,6 @@ export function getRecordKey(record, rowKey) {
154
135
  * @param {*} expandedRowKeys
155
136
  * @param {*} key
156
137
  */
157
-
158
138
  export function isExpanded(expandedRowKeys, key) {
159
139
  return key != null && _includes(expandedRowKeys, key);
160
140
  }
@@ -163,7 +143,6 @@ export function isExpanded(expandedRowKeys, key) {
163
143
  * @param {Set} selectedRowKeysSet
164
144
  * @param {String} key
165
145
  */
166
-
167
146
  export function isSelected(selectedRowKeysSet, key) {
168
147
  return key !== null && selectedRowKeysSet.has(key);
169
148
  }
@@ -172,7 +151,6 @@ export function isSelected(selectedRowKeysSet, key) {
172
151
  * @param {Set} disabledRowKeysSet
173
152
  * @param {String} key
174
153
  */
175
-
176
154
  export function isDisabled(disabledRowKeysSet, key) {
177
155
  return key !== null && disabledRowKeysSet.has(key);
178
156
  }
@@ -180,31 +158,26 @@ export function getRecord(data, recordKey, rowKey) {
180
158
  if (rowKey === undefined) {
181
159
  rowKey = 'key';
182
160
  }
183
-
184
161
  return _find(data, record => recordKey != null && recordKey !== '' && getRecordKey(record, rowKey) === recordKey);
185
162
  }
186
163
  export function getRecordChildren(record, childrenRecordName) {
187
164
  if (childrenRecordName === undefined) {
188
165
  childrenRecordName = 'children';
189
166
  }
190
-
191
167
  return _get(record, childrenRecordName);
192
168
  }
193
169
  export function genExpandedRowKey() {
194
170
  let recordKey = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : '';
195
171
  let suffix = arguments.length > 1 ? arguments[1] : undefined;
196
-
197
172
  if (suffix === undefined) {
198
173
  suffix = '__expanded_row';
199
174
  }
200
-
201
175
  return recordKey + suffix;
202
176
  }
203
177
  export function getDefaultVirtualizedRowConfig() {
204
178
  let size = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : '';
205
179
  let sectionRow = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : false;
206
180
  const config = {};
207
-
208
181
  if (size === 'small') {
209
182
  config.height = sectionRow ? numbers.DEFAULT_VIRTUALIZED_SECTION_ROW_SMALL_HEIGHT : numbers.DEFAULT_VIRTUALIZED_ROW_SMALL_HEIGHT;
210
183
  config.minHeight = numbers.DEFAULT_VIRTUALIZED_ROW_SMALL_MIN_HEIGHT;
@@ -215,13 +188,11 @@ export function getDefaultVirtualizedRowConfig() {
215
188
  config.height = sectionRow ? numbers.DEFAULT_VIRTUALIZED_SECTION_ROW_HEIGHT : numbers.DEFAULT_VIRTUALIZED_ROW_HEIGHT;
216
189
  config.minHeight = numbers.DEFAULT_VIRTUALIZED_ROW_MIN_HEIGHT;
217
190
  }
218
-
219
191
  return config;
220
192
  }
221
193
  export function flattenColumns(cols) {
222
194
  let childrenColumnName = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : 'children';
223
195
  const list = [];
224
-
225
196
  if (Array.isArray(cols) && cols.length) {
226
197
  for (const col of cols) {
227
198
  if (Array.isArray(col[childrenColumnName]) && col[childrenColumnName].length) {
@@ -232,31 +203,25 @@ export function flattenColumns(cols) {
232
203
  }
233
204
  }
234
205
  }
235
-
236
206
  return list;
237
207
  }
238
208
  export function assignColumnKeys(columns) {
239
209
  let childrenColumnName = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : 'children';
240
210
  let level = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : 0;
241
211
  const sameLevelCols = [];
242
-
243
212
  _each(columns, (column, index) => {
244
213
  if (column.key == null) {
245
214
  // if user give column a dataIndex, use it for backup
246
215
  const _index = column.dataIndex || index;
247
-
248
216
  column.key = `${level}-${_index}`;
249
217
  }
250
-
251
218
  if (Array.isArray(column[childrenColumnName]) && column[childrenColumnName].length) {
252
219
  sameLevelCols.push(...column[childrenColumnName]);
253
220
  }
254
221
  });
255
-
256
222
  if (sameLevelCols.length) {
257
223
  assignColumnKeys(sameLevelCols, childrenColumnName, level + 1);
258
224
  }
259
-
260
225
  return columns;
261
226
  }
262
227
  export function sliceColumnsByLevel(columns) {
@@ -264,11 +229,9 @@ export function sliceColumnsByLevel(columns) {
264
229
  let childrenColumnName = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : 'children';
265
230
  let currentLevel = arguments.length > 3 && arguments[3] !== undefined ? arguments[3] : 0;
266
231
  const slicedColumns = [];
267
-
268
232
  if (Array.isArray(columns) && columns.length && currentLevel <= targetLevel) {
269
233
  columns.forEach(column => {
270
234
  const children = column[childrenColumnName];
271
-
272
235
  if (Array.isArray(children) && children.length && currentLevel < targetLevel) {
273
236
  slicedColumns.push(...sliceColumnsByLevel(children, targetLevel, childrenColumnName, currentLevel + 1));
274
237
  } else {
@@ -276,7 +239,6 @@ export function sliceColumnsByLevel(columns) {
276
239
  }
277
240
  });
278
241
  }
279
-
280
242
  return slicedColumns;
281
243
  }
282
244
  export function getColumnsByLevel(columns) {
@@ -284,7 +246,6 @@ export function getColumnsByLevel(columns) {
284
246
  let targetColumns = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : [];
285
247
  let currentLevel = arguments.length > 3 && arguments[3] !== undefined ? arguments[3] : 0;
286
248
  let childrenColumnName = arguments.length > 4 && arguments[4] !== undefined ? arguments[4] : 'children';
287
-
288
249
  if (Array.isArray(columns) && columns.length) {
289
250
  if (targetLevel === currentLevel) {
290
251
  targetColumns.push(...columns);
@@ -294,29 +255,24 @@ export function getColumnsByLevel(columns) {
294
255
  });
295
256
  }
296
257
  }
297
-
298
258
  return targetColumns;
299
259
  }
300
260
  export function getAllLevelColumns(columns) {
301
261
  let childrenColumnName = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : 'children';
302
262
  const all = [];
303
-
304
263
  if (Array.isArray(columns) && columns.length) {
305
264
  all.push([...columns]);
306
265
  const sameLevelColumns = [];
307
266
  columns.forEach(column => {
308
267
  const children = column[childrenColumnName];
309
-
310
268
  if (Array.isArray(children) && children.length) {
311
269
  sameLevelColumns.push(...children);
312
270
  }
313
271
  });
314
-
315
272
  if (sameLevelColumns.length) {
316
273
  all.push(sameLevelColumns);
317
274
  }
318
275
  }
319
-
320
276
  return all;
321
277
  }
322
278
  export function getColumnByLevelIndex(columns, index) {
@@ -328,25 +284,20 @@ export function getColumnByLevelIndex(columns, index) {
328
284
  export function findColumn(columns, column) {
329
285
  let childrenColumnName = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : 'children';
330
286
  let found;
331
-
332
287
  _each(columns, item => {
333
288
  if (item && item.key != null && !found) {
334
289
  if (item.key === column.key) {
335
290
  found = item;
336
291
  }
337
292
  }
338
-
339
293
  if (item && Array.isArray(item[childrenColumnName]) && !found) {
340
294
  found = findColumn(item[childrenColumnName], column, childrenColumnName);
341
295
  }
342
-
343
296
  if (found) {
344
297
  return false;
345
298
  }
346
-
347
299
  return undefined;
348
300
  });
349
-
350
301
  return found;
351
302
  }
352
303
  export function expandBtnShouldInRow(props) {
@@ -360,7 +311,6 @@ export function expandBtnShouldInRow(props) {
360
311
  const hasExpandedRowRender = typeof expandedRowRender === 'function';
361
312
  return hideExpandedColumn && hasExpandedRowRender || !hasExpandedRowRender && dataSource.some(record => {
362
313
  const children = _get(record, childrenRecordName);
363
-
364
314
  if (Array.isArray(children) && children.length || rowExpandable(record)) {
365
315
  return true;
366
316
  } else {
@@ -373,27 +323,21 @@ export function expandBtnShouldInRow(props) {
373
323
  * @param {*} query
374
324
  * @param {*} queries
375
325
  */
376
-
377
326
  export function mergeQueries(query) {
378
327
  let queries = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : [];
379
-
380
328
  let _mergedQuery;
381
-
382
329
  const idx = queries.findIndex(item => {
383
330
  if (query.dataIndex === item.dataIndex) {
384
331
  _mergedQuery = Object.assign(Object.assign({}, item), query);
385
332
  return true;
386
333
  }
387
-
388
334
  return false;
389
335
  });
390
-
391
336
  if (idx > -1) {
392
337
  queries.splice(idx, 1, _mergedQuery);
393
338
  } else {
394
339
  queries.push(_mergedQuery);
395
340
  }
396
-
397
341
  return [...queries];
398
342
  }
399
343
  /**
@@ -401,29 +345,23 @@ export function mergeQueries(query) {
401
345
  * @param {Object[]} columns columns retain the column width after resize
402
346
  * @param {Object[]} newColumns
403
347
  */
404
-
405
348
  export function withResizeWidth(columns, newColumns) {
406
349
  const _newColumns = Object.assign({}, newColumns);
407
-
408
350
  for (const column of columns) {
409
351
  if (!isNullOrUndefined(column.width)) {
410
352
  const currentColumn = column.key;
411
-
412
353
  const columnIndex = _findIndex(_newColumns, item => item.key === currentColumn);
413
-
414
354
  if (columnIndex !== -1) {
415
355
  _newColumns[columnIndex].width = _get(column, 'width');
416
356
  }
417
357
  }
418
358
  }
419
-
420
359
  return _newColumns;
421
360
  }
422
361
  /**
423
362
  * Pure function version of the same function in table foundation
424
363
  * This is not accessible in getDerivedStateFromProps, so fork one out
425
364
  */
426
-
427
365
  export function getAllDisabledRowKeys(_ref) {
428
366
  let {
429
367
  dataSource,
@@ -432,18 +370,14 @@ export function getAllDisabledRowKeys(_ref) {
432
370
  rowKey
433
371
  } = _ref;
434
372
  const disabledRowKeys = [];
435
-
436
373
  if (Array.isArray(dataSource) && dataSource.length && typeof getCheckboxProps === 'function') {
437
374
  for (const record of dataSource) {
438
375
  const props = getCheckboxProps(record);
439
376
  const recordKey = typeof rowKey === 'function' ? rowKey(record) : _get(record, rowKey);
440
-
441
377
  if (props && props.disabled) {
442
378
  disabledRowKeys.push(recordKey);
443
379
  }
444
-
445
380
  const children = _get(record, childrenRecordName);
446
-
447
381
  if (Array.isArray(children) && children.length) {
448
382
  const keys = getAllDisabledRowKeys({
449
383
  dataSource: children,
@@ -453,7 +387,6 @@ export function getAllDisabledRowKeys(_ref) {
453
387
  }
454
388
  }
455
389
  }
456
-
457
390
  return disabledRowKeys;
458
391
  }
459
392
  export function warnIfNoDataIndex(column) {
@@ -465,7 +398,6 @@ export function warnIfNoDataIndex(column) {
465
398
  onFilter
466
399
  } = column;
467
400
  const logger = new Logger('[@douyinfe/semi-ui Table]');
468
-
469
401
  if ((Array.isArray(filters) || _isFunction(onFilter) || _isFunction(sorter)) && isNullOrUndefined(dataIndex)) {
470
402
  logger.warn(`The column with sorter or filter must pass the 'dataIndex' prop`);
471
403
  }
@@ -474,25 +406,21 @@ export function warnIfNoDataIndex(column) {
474
406
  /**
475
407
  * Whether is tree table
476
408
  */
477
-
478
409
  export function isTreeTable(_ref2) {
479
410
  let {
480
411
  dataSource,
481
412
  childrenRecordName = 'children'
482
413
  } = _ref2;
483
414
  let flag = false;
484
-
485
415
  if (Array.isArray(dataSource)) {
486
416
  for (const data of dataSource) {
487
417
  const children = _get(data, childrenRecordName);
488
-
489
418
  if (Array.isArray(children) && children.length) {
490
419
  flag = true;
491
420
  break;
492
421
  }
493
422
  }
494
423
  }
495
-
496
424
  return flag;
497
425
  }
498
426
  export function getRTLAlign(align, direction) {
@@ -500,19 +428,15 @@ export function getRTLAlign(align, direction) {
500
428
  switch (align) {
501
429
  case 'left':
502
430
  return 'right';
503
-
504
431
  case 'right':
505
432
  return 'left';
506
-
507
433
  default:
508
434
  return align;
509
435
  }
510
436
  }
511
-
512
437
  return align;
513
438
  }
514
439
  export function shouldShowEllipsisTitle(ellipsis) {
515
440
  const shouldShowTitle = ellipsis === true || _get(ellipsis, 'showTitle', true);
516
-
517
441
  return shouldShowTitle;
518
442
  }
@@ -1,17 +1,14 @@
1
1
  import _noop from "lodash/noop";
2
2
  import _get from "lodash/get";
3
3
  import BaseFoundation from '../base/foundation';
4
-
5
4
  class TabsFoundation extends BaseFoundation {
6
5
  constructor(adapter) {
7
6
  super(Object.assign({}, adapter));
8
7
  this.destroy = _noop;
9
-
10
8
  this.handlePrevent = event => {
11
9
  event.stopPropagation();
12
10
  event.preventDefault();
13
11
  };
14
-
15
12
  this.handleKeyDown = (event, itemKey, closable) => {
16
13
  const {
17
14
  preventScroll
@@ -19,7 +16,6 @@ class TabsFoundation extends BaseFoundation {
19
16
  const tabs = [...event.target.parentNode.childNodes].filter(item => {
20
17
  return _get(item, 'attributes.data-tabkey.value', '').includes('semiTab') && _get(item, 'attributes.aria-disabled.value', '') !== "true";
21
18
  });
22
-
23
19
  switch (event.key) {
24
20
  case "ArrowLeft":
25
21
  case "ArrowRight":
@@ -27,79 +23,62 @@ class TabsFoundation extends BaseFoundation {
27
23
  case "ArrowDown":
28
24
  this.determineOrientation(event, tabs);
29
25
  break;
30
-
31
26
  case "Backspace":
32
27
  case "Delete":
33
28
  this.handleDeleteKeyDown(event, tabs, itemKey, closable);
34
29
  break;
35
-
36
30
  case "Enter":
37
31
  case " ":
38
32
  this.handleTabClick(itemKey, event);
39
33
  this.handlePrevent(event);
40
34
  break;
41
-
42
35
  case "Home":
43
36
  tabs[0].focus({
44
37
  preventScroll
45
38
  }); // focus first tab
46
-
47
39
  this.handlePrevent(event);
48
40
  break;
49
-
50
41
  case "End":
51
42
  tabs[tabs.length - 1].focus({
52
43
  preventScroll
53
44
  }); // focus last tab
54
-
55
45
  this.handlePrevent(event);
56
46
  break;
57
47
  }
58
48
  };
59
49
  }
60
-
61
50
  init() {
62
51
  this._adapter.collectPane();
63
52
  }
64
-
65
53
  _notifyChange(activeKey) {
66
54
  const {
67
55
  activeKey: stateActiveKey
68
56
  } = this.getStates();
69
-
70
57
  if (stateActiveKey !== activeKey) {
71
58
  this._adapter.notifyChange(activeKey);
72
59
  }
73
60
  }
74
-
75
61
  handleTabClick(activeKey, event) {
76
62
  const isControlledComponent = this._isInProps('activeKey');
77
-
78
63
  if (isControlledComponent) {
79
64
  this._notifyChange(activeKey);
80
65
  } else {
81
66
  this._notifyChange(activeKey);
82
-
83
67
  this.handleNewActiveKey(activeKey);
84
68
  }
85
-
86
69
  this._adapter.notifyTabClick(activeKey, event);
87
70
  }
88
-
89
71
  handleNewActiveKey(activeKey) {
90
72
  const {
91
73
  activeKey: stateActiveKey
92
74
  } = this.getStates();
93
-
94
75
  if (stateActiveKey !== activeKey) {
95
76
  this._adapter.setNewActiveKey(activeKey);
96
77
  }
97
78
  }
98
-
99
79
  getDefaultActiveKey() {
100
80
  let activeKey;
101
81
  const props = this.getProps();
102
-
103
82
  if ('activeKey' in props) {
104
83
  activeKey = props.activeKey;
105
84
  } else if ('defaultActiveKey' in props) {
@@ -107,30 +86,23 @@ class TabsFoundation extends BaseFoundation {
107
86
  } else {
108
87
  activeKey = this._adapter.getDefaultActiveKeyFromChildren();
109
88
  }
110
-
111
89
  return activeKey;
112
90
  }
113
-
114
91
  handleTabListChange() {
115
92
  this._adapter.collectPane();
116
93
  }
117
-
118
94
  handleTabPanesChange() {
119
95
  this._adapter.collectPane();
120
-
121
96
  this._adapter.collectActiveKey();
122
97
  }
123
-
124
98
  handleTabDelete(tabKey) {
125
99
  this._adapter.notifyTabDelete(tabKey);
126
100
  }
127
-
128
101
  determineOrientation(event, tabs) {
129
102
  const {
130
103
  tabPosition
131
104
  } = this.getProps();
132
105
  const isVertical = tabPosition === 'left';
133
-
134
106
  if (isVertical) {
135
107
  if (event.key === "ArrowUp" || event.key === "ArrowDown") {
136
108
  this.switchTabOnArrowPress(event, tabs);
@@ -143,17 +115,15 @@ class TabsFoundation extends BaseFoundation {
143
115
  }
144
116
  }
145
117
  }
146
-
147
118
  handleDeleteKeyDown(event, tabs, itemKey, closable) {
148
119
  const {
149
120
  preventScroll
150
121
  } = this.getProps();
151
-
152
122
  if (closable) {
153
123
  this.handleTabDelete(itemKey);
154
- const index = tabs.indexOf(event.target); // Move focus to next element after deletion
124
+ const index = tabs.indexOf(event.target);
125
+ // Move focus to next element after deletion
155
126
  // If the element is the last removable tab, focus to its previous tab
156
-
157
127
  if (tabs.length !== 1) {
158
128
  tabs[index + 1 >= tabs.length ? index - 1 : index + 1].focus({
159
129
  preventScroll
@@ -161,7 +131,6 @@ class TabsFoundation extends BaseFoundation {
161
131
  }
162
132
  }
163
133
  }
164
-
165
134
  switchTabOnArrowPress(event, tabs) {
166
135
  const {
167
136
  preventScroll
@@ -173,7 +142,6 @@ class TabsFoundation extends BaseFoundation {
173
142
  "ArrowRight": 1,
174
143
  "ArrowDown": 1
175
144
  };
176
-
177
145
  if (direction[event.key]) {
178
146
  if (index !== undefined) {
179
147
  if (tabs[index + direction[event.key]]) {
@@ -192,7 +160,6 @@ class TabsFoundation extends BaseFoundation {
192
160
  }
193
161
  }
194
162
  }
195
-
196
163
  }
197
164
 
198
165
  export default TabsFoundation;
@@ -1,8 +1,8 @@
1
1
  import BaseFoundation, { DefaultAdapter } from '../base/foundation';
2
- export declare type TagInputChangeEvent = any;
3
- export declare type TagInputCursorEvent = any;
4
- export declare type TagInputKeyboardEvent = any;
5
- export declare type TagInputMouseEvent = any;
2
+ export type TagInputChangeEvent = any;
3
+ export type TagInputCursorEvent = any;
4
+ export type TagInputKeyboardEvent = any;
5
+ export type TagInputMouseEvent = any;
6
6
  export interface OnSortEndProps {
7
7
  oldIndex: number;
8
8
  newIndex: number;