@douyinfe/semi-foundation 2.24.2 → 2.25.0-alpha.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 (971) hide show
  1. package/anchor/anchor.scss +6 -0
  2. package/anchor/foundation.ts +7 -6
  3. package/anchor/linkFoundation.ts +0 -1
  4. package/anchor/variables.scss +4 -0
  5. package/autoComplete/autoComplete.scss +2 -0
  6. package/autoComplete/foundation.ts +23 -20
  7. package/autoComplete/optionFoundation.ts +0 -2
  8. package/avatar/animation.scss +19 -0
  9. package/avatar/avatar.scss +314 -1
  10. package/avatar/constants.ts +21 -4
  11. package/avatar/foundation.ts +21 -4
  12. package/avatar/variables.scss +66 -10
  13. package/badge/badge.scss +13 -0
  14. package/badge/constants.ts +1 -1
  15. package/badge/variables.scss +4 -0
  16. package/base/foundation.ts +2 -3
  17. package/breadcrumb/breadcrumb.scss +10 -4
  18. package/breadcrumb/foundation.ts +0 -1
  19. package/breadcrumb/variables.scss +4 -0
  20. package/button/button.scss +88 -21
  21. package/button/iconButton.scss +1 -0
  22. package/button/splitButtonGroup.scss +10 -9
  23. package/button/variables.scss +13 -0
  24. package/calendar/calendar.scss +1 -1
  25. package/calendar/eventUtil.ts +14 -10
  26. package/calendar/foundation.ts +9 -9
  27. package/carousel/carousel.scss +4 -0
  28. package/carousel/foundation.ts +12 -7
  29. package/cascader/cascader.scss +66 -23
  30. package/cascader/constants.ts +5 -1
  31. package/cascader/foundation.ts +111 -63
  32. package/cascader/util.ts +64 -10
  33. package/cascader/variables.scss +5 -1
  34. package/checkbox/checkbox.scss +0 -1
  35. package/checkbox/checkboxFoundation.ts +1 -2
  36. package/checkbox/checkboxGroupFoundation.ts +0 -1
  37. package/collapse/foundation.ts +1 -0
  38. package/datePicker/_utils/getDefaultFormatToken.ts +1 -0
  39. package/datePicker/_utils/getInsetInputFormatToken.ts +1 -0
  40. package/datePicker/_utils/getInsetInputValueFromInsetInputStr.ts +1 -0
  41. package/datePicker/_utils/getYears.ts +8 -4
  42. package/datePicker/_utils/isValidTimeZone.ts +3 -0
  43. package/datePicker/constants.ts +1 -1
  44. package/datePicker/datePicker.scss +170 -21
  45. package/datePicker/foundation.ts +175 -150
  46. package/datePicker/inputFoundation.ts +34 -16
  47. package/datePicker/monthFoundation.ts +0 -1
  48. package/datePicker/monthsGridFoundation.ts +52 -32
  49. package/datePicker/variables.scss +13 -4
  50. package/datePicker/yearAndMonthFoundation.ts +68 -21
  51. package/descriptions/constants.ts +2 -1
  52. package/descriptions/descriptions.scss +20 -0
  53. package/descriptions/foundation.ts +36 -0
  54. package/descriptions/variables.scss +10 -0
  55. package/dropdown/constants.ts +1 -1
  56. package/dropdown/dropdown.scss +5 -0
  57. package/dropdown/foundation.ts +4 -3
  58. package/dropdown/menuFoundation.ts +3 -3
  59. package/form/constants.ts +2 -1
  60. package/form/form.scss +5 -2
  61. package/form/foundation.ts +12 -10
  62. package/form/interface.ts +5 -6
  63. package/form/utils.ts +39 -16
  64. package/form/variables.scss +3 -0
  65. package/grid/grid.scss +1 -1
  66. package/image/constants.ts +5 -1
  67. package/image/image.scss +9 -5
  68. package/image/previewFooterFoundation.ts +1 -4
  69. package/image/previewFoundation.ts +1 -1
  70. package/image/previewImageFoundation.ts +61 -70
  71. package/image/previewInnerFoundation.ts +93 -47
  72. package/image/utils.ts +18 -20
  73. package/image/variables.scss +1 -1
  74. package/input/foundation.ts +2 -4
  75. package/input/input.scss +48 -3
  76. package/input/textarea.scss +34 -0
  77. package/input/textareaFoundation.ts +42 -18
  78. package/input/variables.scss +7 -0
  79. package/inputNumber/foundation.ts +0 -5
  80. package/inputNumber/inputNumber.scss +9 -0
  81. package/lib/cjs/anchor/anchor.css +5 -0
  82. package/lib/cjs/anchor/anchor.scss +6 -0
  83. package/lib/cjs/anchor/constants.js +1 -3
  84. package/lib/cjs/anchor/foundation.js +20 -80
  85. package/lib/cjs/anchor/linkFoundation.js +3 -16
  86. package/lib/cjs/anchor/variables.scss +4 -0
  87. package/lib/cjs/autoComplete/autoComplete.css +1 -0
  88. package/lib/cjs/autoComplete/autoComplete.scss +2 -0
  89. package/lib/cjs/autoComplete/constants.js +3 -6
  90. package/lib/cjs/autoComplete/foundation.d.ts +3 -1
  91. package/lib/cjs/autoComplete/foundation.js +37 -149
  92. package/lib/cjs/autoComplete/optionFoundation.js +2 -14
  93. package/lib/cjs/avatar/animation.scss +19 -0
  94. package/lib/cjs/avatar/avatar.css +261 -0
  95. package/lib/cjs/avatar/avatar.scss +314 -1
  96. package/lib/cjs/avatar/constants.js +1 -4
  97. package/lib/cjs/avatar/foundation.d.ts +3 -0
  98. package/lib/cjs/avatar/foundation.js +21 -19
  99. package/lib/cjs/avatar/variables.scss +66 -10
  100. package/lib/cjs/backtop/constants.js +1 -3
  101. package/lib/cjs/backtop/foundation.d.ts +2 -2
  102. package/lib/cjs/backtop/foundation.js +0 -21
  103. package/lib/cjs/badge/badge.css +10 -0
  104. package/lib/cjs/badge/badge.scss +13 -0
  105. package/lib/cjs/badge/constants.js +2 -4
  106. package/lib/cjs/badge/variables.scss +4 -0
  107. package/lib/cjs/banner/constants.js +1 -3
  108. package/lib/cjs/banner/foundation.js +0 -7
  109. package/lib/cjs/base/constants.js +2 -4
  110. package/lib/cjs/base/foundation.d.ts +3 -3
  111. package/lib/cjs/base/foundation.js +12 -46
  112. package/lib/cjs/base/index.js +0 -3
  113. package/lib/cjs/breadcrumb/breadcrumb.css +5 -3
  114. package/lib/cjs/breadcrumb/breadcrumb.scss +10 -4
  115. package/lib/cjs/breadcrumb/constants.js +1 -3
  116. package/lib/cjs/breadcrumb/foundation.js +0 -13
  117. package/lib/cjs/breadcrumb/itemFoundation.js +0 -7
  118. package/lib/cjs/breadcrumb/variables.scss +4 -0
  119. package/lib/cjs/button/button.css +32 -5
  120. package/lib/cjs/button/button.scss +88 -21
  121. package/lib/cjs/button/constants.js +1 -3
  122. package/lib/cjs/button/iconButton.css +1 -0
  123. package/lib/cjs/button/iconButton.scss +1 -0
  124. package/lib/cjs/button/splitButtonGroup.scss +10 -9
  125. package/lib/cjs/button/variables.scss +13 -0
  126. package/lib/cjs/calendar/calendar.css +2 -2
  127. package/lib/cjs/calendar/calendar.scss +1 -1
  128. package/lib/cjs/calendar/constants.js +1 -3
  129. package/lib/cjs/calendar/eventUtil.d.ts +7 -6
  130. package/lib/cjs/calendar/eventUtil.js +15 -83
  131. package/lib/cjs/calendar/foundation.d.ts +4 -4
  132. package/lib/cjs/calendar/foundation.js +32 -128
  133. package/lib/cjs/card/constants.js +1 -3
  134. package/lib/cjs/carousel/carousel.css +4 -0
  135. package/lib/cjs/carousel/carousel.scss +4 -0
  136. package/lib/cjs/carousel/constants.js +9 -11
  137. package/lib/cjs/carousel/foundation.d.ts +2 -0
  138. package/lib/cjs/carousel/foundation.js +7 -52
  139. package/lib/cjs/cascader/cascader.css +45 -4
  140. package/lib/cjs/cascader/cascader.scss +66 -23
  141. package/lib/cjs/cascader/constants.d.ts +3 -0
  142. package/lib/cjs/cascader/constants.js +9 -8
  143. package/lib/cjs/cascader/foundation.d.ts +27 -8
  144. package/lib/cjs/cascader/foundation.js +122 -300
  145. package/lib/cjs/cascader/util.d.ts +9 -1
  146. package/lib/cjs/cascader/util.js +69 -33
  147. package/lib/cjs/cascader/variables.scss +5 -1
  148. package/lib/cjs/checkbox/checkbox.css +0 -1
  149. package/lib/cjs/checkbox/checkbox.scss +0 -1
  150. package/lib/cjs/checkbox/checkboxFoundation.js +1 -38
  151. package/lib/cjs/checkbox/checkboxGroupFoundation.js +1 -23
  152. package/lib/cjs/checkbox/constants.js +13 -15
  153. package/lib/cjs/collapse/constants.js +1 -3
  154. package/lib/cjs/collapse/foundation.d.ts +2 -1
  155. package/lib/cjs/collapse/foundation.js +2 -13
  156. package/lib/cjs/collapsible/constants.js +1 -3
  157. package/lib/cjs/collapsible/foundation.js +0 -9
  158. package/lib/cjs/datePicker/_utils/formatter.js +4 -10
  159. package/lib/cjs/datePicker/_utils/getDayOfWeek.d.ts +1 -1
  160. package/lib/cjs/datePicker/_utils/getDayOfWeek.js +0 -4
  161. package/lib/cjs/datePicker/_utils/getDefaultFormatToken.d.ts +1 -0
  162. package/lib/cjs/datePicker/_utils/getDefaultFormatToken.js +2 -6
  163. package/lib/cjs/datePicker/_utils/getDefaultPickerDate.d.ts +1 -1
  164. package/lib/cjs/datePicker/_utils/getDefaultPickerDate.js +0 -15
  165. package/lib/cjs/datePicker/_utils/getFullDateOffset.js +0 -7
  166. package/lib/cjs/datePicker/_utils/getInsetInputFormatToken.js +2 -6
  167. package/lib/cjs/datePicker/_utils/getInsetInputValueFromInsetInputStr.js +1 -6
  168. package/lib/cjs/datePicker/_utils/getMonthTable.d.ts +1 -1
  169. package/lib/cjs/datePicker/_utils/getMonthTable.js +7 -18
  170. package/lib/cjs/datePicker/_utils/getMonthsInYear.js +1 -3
  171. package/lib/cjs/datePicker/_utils/getYears.d.ts +1 -1
  172. package/lib/cjs/datePicker/_utils/getYears.js +9 -7
  173. package/lib/cjs/datePicker/_utils/index.js +0 -13
  174. package/lib/cjs/datePicker/_utils/isAfter.js +0 -4
  175. package/lib/cjs/datePicker/_utils/isBefore.js +0 -4
  176. package/lib/cjs/datePicker/_utils/isBetween.js +0 -4
  177. package/lib/cjs/datePicker/_utils/isDate.js +0 -1
  178. package/lib/cjs/datePicker/_utils/isSameDay.js +0 -4
  179. package/lib/cjs/datePicker/_utils/isTimestamp.js +0 -4
  180. package/lib/cjs/datePicker/_utils/isUnixTimestamp.js +0 -4
  181. package/lib/cjs/datePicker/_utils/isValidDate.js +0 -1
  182. package/lib/cjs/datePicker/_utils/isValidTimeZone.d.ts +1 -0
  183. package/lib/cjs/datePicker/_utils/isValidTimeZone.js +9 -0
  184. package/lib/cjs/datePicker/_utils/isWithinInterval.js +0 -4
  185. package/lib/cjs/datePicker/_utils/parser.js +0 -10
  186. package/lib/cjs/datePicker/constants.d.ts +1 -1
  187. package/lib/cjs/datePicker/constants.js +28 -31
  188. package/lib/cjs/datePicker/datePicker.css +88 -13
  189. package/lib/cjs/datePicker/datePicker.scss +170 -21
  190. package/lib/cjs/datePicker/foundation.d.ts +79 -50
  191. package/lib/cjs/datePicker/foundation.js +173 -441
  192. package/lib/cjs/datePicker/inputFoundation.d.ts +15 -6
  193. package/lib/cjs/datePicker/inputFoundation.js +35 -98
  194. package/lib/cjs/datePicker/monthFoundation.d.ts +1 -1
  195. package/lib/cjs/datePicker/monthFoundation.js +2 -28
  196. package/lib/cjs/datePicker/monthsGridFoundation.d.ts +18 -13
  197. package/lib/cjs/datePicker/monthsGridFoundation.js +70 -247
  198. package/lib/cjs/datePicker/variables.scss +13 -4
  199. package/lib/cjs/datePicker/yearAndMonthFoundation.d.ts +68 -13
  200. package/lib/cjs/datePicker/yearAndMonthFoundation.js +55 -42
  201. package/lib/cjs/descriptions/constants.d.ts +1 -0
  202. package/lib/cjs/descriptions/constants.js +3 -4
  203. package/lib/cjs/descriptions/descriptions.css +15 -0
  204. package/lib/cjs/descriptions/descriptions.scss +20 -0
  205. package/lib/cjs/descriptions/foundation.d.ts +7 -0
  206. package/lib/cjs/descriptions/foundation.js +45 -0
  207. package/lib/cjs/descriptions/variables.scss +10 -0
  208. package/lib/cjs/divider/constants.js +1 -3
  209. package/lib/cjs/dropdown/constants.js +4 -7
  210. package/lib/cjs/dropdown/dropdown.css +4 -0
  211. package/lib/cjs/dropdown/dropdown.scss +5 -0
  212. package/lib/cjs/dropdown/foundation.js +9 -25
  213. package/lib/cjs/dropdown/menuFoundation.js +9 -28
  214. package/lib/cjs/empty/constants.js +1 -3
  215. package/lib/cjs/form/constants.d.ts +1 -0
  216. package/lib/cjs/form/constants.js +3 -4
  217. package/lib/cjs/form/form.css +4 -0
  218. package/lib/cjs/form/form.scss +5 -2
  219. package/lib/cjs/form/foundation.d.ts +4 -4
  220. package/lib/cjs/form/foundation.js +84 -214
  221. package/lib/cjs/form/interface.d.ts +10 -10
  222. package/lib/cjs/form/utils.d.ts +10 -1
  223. package/lib/cjs/form/utils.js +85 -93
  224. package/lib/cjs/form/variables.scss +3 -0
  225. package/lib/cjs/grid/constants.js +1 -3
  226. package/lib/cjs/grid/grid.css +1 -1
  227. package/lib/cjs/grid/grid.scss +1 -1
  228. package/lib/cjs/highlight/constants.js +1 -3
  229. package/lib/cjs/icons/constants.js +1 -3
  230. package/lib/cjs/image/constants.d.ts +4 -1
  231. package/lib/cjs/image/constants.js +7 -5
  232. package/lib/cjs/image/image.css +4 -2
  233. package/lib/cjs/image/image.scss +9 -5
  234. package/lib/cjs/image/imageFoundation.js +4 -18
  235. package/lib/cjs/image/previewFooterFoundation.d.ts +0 -1
  236. package/lib/cjs/image/previewFooterFoundation.js +0 -14
  237. package/lib/cjs/image/previewFoundation.js +0 -11
  238. package/lib/cjs/image/previewImageFoundation.d.ts +9 -24
  239. package/lib/cjs/image/previewImageFoundation.js +79 -164
  240. package/lib/cjs/image/previewInnerFoundation.d.ts +19 -15
  241. package/lib/cjs/image/previewInnerFoundation.js +108 -114
  242. package/lib/cjs/image/utils.d.ts +1 -1
  243. package/lib/cjs/image/utils.js +46 -35
  244. package/lib/cjs/image/variables.scss +1 -1
  245. package/lib/cjs/input/constants.js +1 -3
  246. package/lib/cjs/input/foundation.js +19 -104
  247. package/lib/cjs/input/input.css +45 -1
  248. package/lib/cjs/input/input.scss +48 -3
  249. package/lib/cjs/input/textarea.css +20 -0
  250. package/lib/cjs/input/textarea.scss +34 -0
  251. package/lib/cjs/input/textareaFoundation.d.ts +1 -1
  252. package/lib/cjs/input/textareaFoundation.js +58 -101
  253. package/lib/cjs/input/util/calculateNodeHeight.js +6 -18
  254. package/lib/cjs/input/util/getSizingData.js +7 -11
  255. package/lib/cjs/input/variables.scss +7 -0
  256. package/lib/cjs/inputNumber/constants.js +0 -2
  257. package/lib/cjs/inputNumber/foundation.js +28 -197
  258. package/lib/cjs/inputNumber/inputNumber.css +4 -0
  259. package/lib/cjs/inputNumber/inputNumber.scss +9 -0
  260. package/lib/cjs/layout/constants.js +1 -3
  261. package/lib/cjs/list/constants.js +1 -3
  262. package/lib/cjs/modal/constants.js +1 -3
  263. package/lib/cjs/modal/modal.css +8 -0
  264. package/lib/cjs/modal/modal.scss +10 -1
  265. package/lib/cjs/modal/modalContentFoundation.js +0 -20
  266. package/lib/cjs/modal/modalFoundation.d.ts +8 -4
  267. package/lib/cjs/modal/modalFoundation.js +40 -15
  268. package/lib/cjs/modal/variables.scss +6 -1
  269. package/lib/cjs/navigation/NavItem.js +0 -12
  270. package/lib/cjs/navigation/constants.js +1 -4
  271. package/lib/cjs/navigation/foundation.js +3 -70
  272. package/lib/cjs/navigation/itemFoundation.js +3 -22
  273. package/lib/cjs/navigation/subNavFoundation.js +7 -42
  274. package/lib/cjs/notification/constants.js +3 -6
  275. package/lib/cjs/notification/notification.css +18 -0
  276. package/lib/cjs/notification/notification.scss +21 -1
  277. package/lib/cjs/notification/notificationFoundation.d.ts +6 -6
  278. package/lib/cjs/notification/notificationFoundation.js +0 -16
  279. package/lib/cjs/notification/notificationListFoundation.d.ts +4 -1
  280. package/lib/cjs/notification/notificationListFoundation.js +15 -18
  281. package/lib/cjs/overflowList/constants.d.ts +6 -4
  282. package/lib/cjs/overflowList/constants.js +3 -3
  283. package/lib/cjs/overflowList/foundation.d.ts +3 -1
  284. package/lib/cjs/overflowList/foundation.js +59 -68
  285. package/lib/cjs/pagination/constants.js +1 -3
  286. package/lib/cjs/pagination/foundation.d.ts +5 -3
  287. package/lib/cjs/pagination/foundation.js +36 -93
  288. package/lib/cjs/pagination/pagination.css +23 -0
  289. package/lib/cjs/pagination/pagination.scss +29 -0
  290. package/lib/cjs/pagination/variables.scss +1 -0
  291. package/lib/cjs/popconfirm/constants.js +2 -4
  292. package/lib/cjs/popconfirm/popconfirm.css +4 -24
  293. package/lib/cjs/popconfirm/popconfirm.scss +4 -16
  294. package/lib/cjs/popconfirm/popconfirmFoundation.d.ts +4 -0
  295. package/lib/cjs/popconfirm/popconfirmFoundation.js +17 -19
  296. package/lib/cjs/popconfirm/rtl.scss +0 -13
  297. package/lib/cjs/popconfirm/variables.scss +0 -4
  298. package/lib/cjs/popover/constants.d.ts +1 -1
  299. package/lib/cjs/popover/constants.js +3 -6
  300. package/lib/cjs/popover/popover.css +2 -0
  301. package/lib/cjs/popover/popover.scss +2 -0
  302. package/lib/cjs/progress/constants.js +1 -3
  303. package/lib/cjs/progress/generates.d.ts +2 -2
  304. package/lib/cjs/progress/generates.js +33 -74
  305. package/lib/cjs/radio/constants.js +13 -15
  306. package/lib/cjs/radio/radio.css +3 -0
  307. package/lib/cjs/radio/radio.scss +6 -3
  308. package/lib/cjs/radio/radioFoundation.js +0 -14
  309. package/lib/cjs/radio/radioGroupFoundation.js +3 -23
  310. package/lib/cjs/radio/radioInnerFoundation.js +1 -19
  311. package/lib/cjs/radio/variables.scss +4 -0
  312. package/lib/cjs/rating/constants.js +1 -3
  313. package/lib/cjs/rating/foundation.js +10 -62
  314. package/lib/cjs/scrollList/constants.js +2 -4
  315. package/lib/cjs/scrollList/foundation.js +0 -4
  316. package/lib/cjs/scrollList/itemFoundation.js +8 -61
  317. package/lib/cjs/scrollList/scrollTo.js +2 -5
  318. package/lib/cjs/select/constants.js +3 -6
  319. package/lib/cjs/select/foundation.d.ts +8 -6
  320. package/lib/cjs/select/foundation.js +172 -434
  321. package/lib/cjs/select/option.scss +1 -1
  322. package/lib/cjs/select/optionFoundation.js +2 -14
  323. package/lib/cjs/select/select.css +50 -0
  324. package/lib/cjs/select/select.scss +74 -5
  325. package/lib/cjs/select/variables.scss +9 -6
  326. package/lib/cjs/sideSheet/constants.js +2 -4
  327. package/lib/cjs/sideSheet/sideSheet.css +30 -0
  328. package/lib/cjs/sideSheet/sideSheet.scss +38 -0
  329. package/lib/cjs/sideSheet/sideSheetFoundation.d.ts +1 -0
  330. package/lib/cjs/sideSheet/sideSheetFoundation.js +0 -18
  331. package/lib/cjs/sideSheet/variables.scss +7 -0
  332. package/lib/cjs/skeleton/constants.js +1 -3
  333. package/lib/cjs/skeleton/skeleton.css +3 -2
  334. package/lib/cjs/skeleton/skeleton.scss +1 -0
  335. package/lib/cjs/skeleton/variables.scss +2 -2
  336. package/lib/cjs/slider/constants.d.ts +1 -0
  337. package/lib/cjs/slider/constants.js +8 -9
  338. package/lib/cjs/slider/foundation.d.ts +13 -2
  339. package/lib/cjs/slider/foundation.js +30 -226
  340. package/lib/cjs/slider/slider.css +25 -11
  341. package/lib/cjs/slider/slider.scss +16 -1
  342. package/lib/cjs/slider/variables.scss +15 -9
  343. package/lib/cjs/space/constants.js +1 -3
  344. package/lib/cjs/spin/constants.js +1 -3
  345. package/lib/cjs/spin/foundation.js +3 -13
  346. package/lib/cjs/spin/spin.css +3 -0
  347. package/lib/cjs/spin/spin.scss +3 -0
  348. package/lib/cjs/steps/bacisSteps.scss +10 -3
  349. package/lib/cjs/steps/constants.js +2 -4
  350. package/lib/cjs/steps/fillSteps.scss +7 -7
  351. package/lib/cjs/steps/steps.css +27 -22
  352. package/lib/cjs/steps/variables.scss +3 -3
  353. package/lib/cjs/switch/constants.js +13 -15
  354. package/lib/cjs/switch/foundation.js +1 -21
  355. package/lib/cjs/switch/switch.css +10 -0
  356. package/lib/cjs/switch/switch.scss +13 -2
  357. package/lib/cjs/table/bodyFoundation.js +1 -34
  358. package/lib/cjs/table/cellFoundation.js +0 -5
  359. package/lib/cjs/table/constants.d.ts +0 -1
  360. package/lib/cjs/table/constants.js +13 -18
  361. package/lib/cjs/table/foundation.d.ts +26 -16
  362. package/lib/cjs/table/foundation.js +79 -308
  363. package/lib/cjs/table/rtl.scss +33 -2
  364. package/lib/cjs/table/table.css +100 -64
  365. package/lib/cjs/table/table.scss +66 -8
  366. package/lib/cjs/table/tableRowFoundation.js +0 -12
  367. package/lib/cjs/table/tableSelectionCellFoundation.js +0 -6
  368. package/lib/cjs/table/utils.d.ts +6 -4
  369. package/lib/cjs/table/utils.js +27 -160
  370. package/lib/cjs/table/variables.scss +6 -3
  371. package/lib/cjs/tabs/constants.js +21 -23
  372. package/lib/cjs/tabs/foundation.js +2 -40
  373. package/lib/cjs/tabs/tabs.css +207 -7
  374. package/lib/cjs/tabs/tabs.scss +339 -24
  375. package/lib/cjs/tag/constants.js +1 -4
  376. package/lib/cjs/tag/tag.css +34 -1
  377. package/lib/cjs/tag/tag.scss +43 -4
  378. package/lib/cjs/tag/variables.scss +5 -0
  379. package/lib/cjs/tagInput/constants.js +1 -3
  380. package/lib/cjs/tagInput/foundation.d.ts +7 -4
  381. package/lib/cjs/tagInput/foundation.js +64 -88
  382. package/lib/cjs/tagInput/tagInput.css +35 -9
  383. package/lib/cjs/tagInput/tagInput.scss +41 -12
  384. package/lib/cjs/tagInput/utils/getSplitedArray.js +0 -11
  385. package/lib/cjs/tagInput/variables.scss +2 -0
  386. package/lib/cjs/timePicker/ComboxFoundation.js +6 -41
  387. package/lib/cjs/timePicker/constants.js +3 -6
  388. package/lib/cjs/timePicker/foundation.d.ts +2 -2
  389. package/lib/cjs/timePicker/foundation.js +28 -107
  390. package/lib/cjs/timePicker/inputFoundation.js +4 -25
  391. package/lib/cjs/timePicker/timePicker.css +15 -0
  392. package/lib/cjs/timePicker/timePicker.scss +22 -1
  393. package/lib/cjs/timePicker/utils/index.js +12 -51
  394. package/lib/cjs/timePicker/utils/localeDate.js +0 -10
  395. package/lib/cjs/timeline/constants.js +2 -4
  396. package/lib/cjs/toast/animation.scss +3 -0
  397. package/lib/cjs/toast/constants.js +3 -6
  398. package/lib/cjs/toast/toast.css +35 -3
  399. package/lib/cjs/toast/toast.scss +43 -3
  400. package/lib/cjs/toast/toastFoundation.d.ts +5 -4
  401. package/lib/cjs/toast/toastFoundation.js +0 -14
  402. package/lib/cjs/toast/toastListFoundation.d.ts +5 -0
  403. package/lib/cjs/toast/toastListFoundation.js +10 -22
  404. package/lib/cjs/toast/variables.scss +14 -0
  405. package/lib/cjs/tooltip/constants.d.ts +1 -1
  406. package/lib/cjs/tooltip/constants.js +2 -4
  407. package/lib/cjs/tooltip/foundation.d.ts +5 -2
  408. package/lib/cjs/tooltip/foundation.js +143 -336
  409. package/lib/cjs/tooltip/tooltip.css +7 -0
  410. package/lib/cjs/tooltip/tooltip.scss +9 -0
  411. package/lib/cjs/transfer/constants.js +1 -3
  412. package/lib/cjs/transfer/foundation.d.ts +1 -1
  413. package/lib/cjs/transfer/foundation.js +4 -69
  414. package/lib/cjs/transfer/transfer.css +4 -0
  415. package/lib/cjs/transfer/transfer.scss +7 -0
  416. package/lib/cjs/transfer/transferUtils.js +5 -27
  417. package/lib/cjs/tree/constants.js +2 -4
  418. package/lib/cjs/tree/foundation.d.ts +14 -9
  419. package/lib/cjs/tree/foundation.js +60 -183
  420. package/lib/cjs/tree/rtl.scss +19 -11
  421. package/lib/cjs/tree/tree.css +147 -65
  422. package/lib/cjs/tree/tree.scss +112 -17
  423. package/lib/cjs/tree/treeUtil.d.ts +17 -8
  424. package/lib/cjs/tree/treeUtil.js +102 -195
  425. package/lib/cjs/tree/variables.scss +3 -2
  426. package/lib/cjs/treeSelect/constants.js +3 -5
  427. package/lib/cjs/treeSelect/foundation.d.ts +26 -13
  428. package/lib/cjs/treeSelect/foundation.js +153 -248
  429. package/lib/cjs/treeSelect/treeSelect.css +55 -10
  430. package/lib/cjs/treeSelect/treeSelect.scss +76 -20
  431. package/lib/cjs/treeSelect/variables.scss +4 -2
  432. package/lib/cjs/typography/constants.d.ts +1 -0
  433. package/lib/cjs/typography/constants.js +2 -3
  434. package/lib/cjs/typography/formatNumeral.d.ts +3 -3
  435. package/lib/cjs/typography/formatNumeral.js +22 -43
  436. package/lib/cjs/typography/typography.css +135 -2
  437. package/lib/cjs/typography/typography.scss +151 -8
  438. package/lib/cjs/typography/variables.scss +52 -0
  439. package/lib/cjs/upload/constants.js +2 -4
  440. package/lib/cjs/upload/fileCardFoundation.d.ts +9 -0
  441. package/lib/cjs/upload/fileCardFoundation.js +18 -0
  442. package/lib/cjs/upload/foundation.d.ts +14 -5
  443. package/lib/cjs/upload/foundation.js +107 -247
  444. package/lib/cjs/upload/upload.css +9 -0
  445. package/lib/cjs/upload/upload.scss +8 -0
  446. package/lib/cjs/upload/utils.js +14 -33
  447. package/lib/cjs/utils/Event.js +1 -21
  448. package/lib/cjs/utils/FocusHandle.d.ts +1 -1
  449. package/lib/cjs/utils/FocusHandle.js +6 -35
  450. package/lib/cjs/utils/Logger.js +0 -21
  451. package/lib/cjs/utils/Store.js +0 -10
  452. package/lib/cjs/utils/a11y.js +18 -43
  453. package/lib/cjs/utils/array.d.ts +2 -2
  454. package/lib/cjs/utils/array.js +2 -9
  455. package/lib/cjs/utils/arrayMove.js +0 -1
  456. package/lib/cjs/utils/classnames.js +0 -12
  457. package/lib/cjs/utils/date-fns-extra.d.ts +28 -17
  458. package/lib/cjs/utils/date-fns-extra.js +82 -51
  459. package/lib/cjs/utils/dom.d.ts +1 -1
  460. package/lib/cjs/utils/dom.js +0 -13
  461. package/lib/cjs/utils/function.js +0 -2
  462. package/lib/cjs/utils/getDataAttr.js +1 -3
  463. package/lib/cjs/utils/getHighlight.js +5 -26
  464. package/lib/cjs/utils/getMotionObjFromProps.js +4 -16
  465. package/lib/cjs/utils/index.js +0 -4
  466. package/lib/cjs/utils/isBothNaN.js +0 -2
  467. package/lib/cjs/utils/isElement.js +0 -1
  468. package/lib/cjs/utils/isEnterPress.js +0 -5
  469. package/lib/cjs/utils/isEscPress.js +0 -5
  470. package/lib/cjs/utils/isNullOrUndefined.js +0 -1
  471. package/lib/cjs/utils/isNumber.js +0 -1
  472. package/lib/cjs/utils/isObject.js +0 -1
  473. package/lib/cjs/utils/isPromise.js +0 -3
  474. package/lib/cjs/utils/isString.js +0 -1
  475. package/lib/cjs/utils/keyCode.js +0 -105
  476. package/lib/cjs/utils/log.js +0 -5
  477. package/lib/cjs/utils/number.js +0 -2
  478. package/lib/cjs/utils/object.d.ts +4 -4
  479. package/lib/cjs/utils/object.js +10 -36
  480. package/lib/cjs/utils/set.js +0 -8
  481. package/lib/cjs/utils/shallowEqualObjects.js +0 -7
  482. package/lib/cjs/utils/touchPolyfill.js +1 -8
  483. package/lib/cjs/utils/type.d.ts +3 -3
  484. package/lib/cjs/utils/uuid.js +4 -11
  485. package/lib/cjs/utils/warning.js +1 -2
  486. package/lib/es/anchor/anchor.css +5 -0
  487. package/lib/es/anchor/anchor.scss +6 -0
  488. package/lib/es/anchor/constants.js +1 -1
  489. package/lib/es/anchor/foundation.js +20 -73
  490. package/lib/es/anchor/linkFoundation.js +3 -12
  491. package/lib/es/anchor/variables.scss +4 -0
  492. package/lib/es/autoComplete/autoComplete.css +1 -0
  493. package/lib/es/autoComplete/autoComplete.scss +2 -0
  494. package/lib/es/autoComplete/constants.js +3 -3
  495. package/lib/es/autoComplete/foundation.d.ts +3 -1
  496. package/lib/es/autoComplete/foundation.js +37 -142
  497. package/lib/es/autoComplete/optionFoundation.js +2 -10
  498. package/lib/es/avatar/animation.scss +19 -0
  499. package/lib/es/avatar/avatar.css +261 -0
  500. package/lib/es/avatar/avatar.scss +314 -1
  501. package/lib/es/avatar/constants.js +1 -2
  502. package/lib/es/avatar/foundation.d.ts +3 -0
  503. package/lib/es/avatar/foundation.js +21 -14
  504. package/lib/es/avatar/variables.scss +66 -10
  505. package/lib/es/backtop/constants.js +1 -1
  506. package/lib/es/backtop/foundation.d.ts +2 -2
  507. package/lib/es/backtop/foundation.js +0 -16
  508. package/lib/es/badge/badge.css +10 -0
  509. package/lib/es/badge/badge.scss +13 -0
  510. package/lib/es/badge/constants.js +2 -2
  511. package/lib/es/badge/variables.scss +4 -0
  512. package/lib/es/banner/constants.js +1 -1
  513. package/lib/es/banner/foundation.js +0 -3
  514. package/lib/es/base/constants.js +2 -2
  515. package/lib/es/base/foundation.d.ts +3 -3
  516. package/lib/es/base/foundation.js +11 -44
  517. package/lib/es/breadcrumb/breadcrumb.css +5 -3
  518. package/lib/es/breadcrumb/breadcrumb.scss +10 -4
  519. package/lib/es/breadcrumb/constants.js +1 -1
  520. package/lib/es/breadcrumb/foundation.js +0 -8
  521. package/lib/es/breadcrumb/itemFoundation.js +0 -3
  522. package/lib/es/breadcrumb/variables.scss +4 -0
  523. package/lib/es/button/button.css +32 -5
  524. package/lib/es/button/button.scss +88 -21
  525. package/lib/es/button/constants.js +1 -1
  526. package/lib/es/button/iconButton.css +1 -0
  527. package/lib/es/button/iconButton.scss +1 -0
  528. package/lib/es/button/splitButtonGroup.scss +10 -9
  529. package/lib/es/button/variables.scss +13 -0
  530. package/lib/es/calendar/calendar.css +2 -2
  531. package/lib/es/calendar/calendar.scss +1 -1
  532. package/lib/es/calendar/constants.js +1 -1
  533. package/lib/es/calendar/eventUtil.d.ts +7 -6
  534. package/lib/es/calendar/eventUtil.js +15 -45
  535. package/lib/es/calendar/foundation.d.ts +4 -4
  536. package/lib/es/calendar/foundation.js +32 -122
  537. package/lib/es/card/constants.js +1 -1
  538. package/lib/es/carousel/carousel.css +4 -0
  539. package/lib/es/carousel/carousel.scss +4 -0
  540. package/lib/es/carousel/constants.js +9 -9
  541. package/lib/es/carousel/foundation.d.ts +2 -0
  542. package/lib/es/carousel/foundation.js +7 -47
  543. package/lib/es/cascader/cascader.css +45 -4
  544. package/lib/es/cascader/cascader.scss +66 -23
  545. package/lib/es/cascader/constants.d.ts +3 -0
  546. package/lib/es/cascader/constants.js +7 -5
  547. package/lib/es/cascader/foundation.d.ts +27 -8
  548. package/lib/es/cascader/foundation.js +125 -286
  549. package/lib/es/cascader/util.d.ts +9 -1
  550. package/lib/es/cascader/util.js +65 -24
  551. package/lib/es/cascader/variables.scss +5 -1
  552. package/lib/es/checkbox/checkbox.css +0 -1
  553. package/lib/es/checkbox/checkbox.scss +0 -1
  554. package/lib/es/checkbox/checkboxFoundation.js +1 -34
  555. package/lib/es/checkbox/checkboxGroupFoundation.js +1 -20
  556. package/lib/es/checkbox/constants.js +13 -13
  557. package/lib/es/collapse/constants.js +1 -1
  558. package/lib/es/collapse/foundation.d.ts +2 -1
  559. package/lib/es/collapse/foundation.js +2 -9
  560. package/lib/es/collapsible/constants.js +1 -1
  561. package/lib/es/collapsible/foundation.js +0 -7
  562. package/lib/es/datePicker/_utils/formatter.js +4 -8
  563. package/lib/es/datePicker/_utils/getDayOfWeek.d.ts +1 -1
  564. package/lib/es/datePicker/_utils/getDayOfWeek.js +0 -3
  565. package/lib/es/datePicker/_utils/getDefaultFormatToken.d.ts +1 -0
  566. package/lib/es/datePicker/_utils/getDefaultFormatToken.js +2 -3
  567. package/lib/es/datePicker/_utils/getDefaultPickerDate.d.ts +1 -1
  568. package/lib/es/datePicker/_utils/getDefaultPickerDate.js +0 -10
  569. package/lib/es/datePicker/_utils/getFullDateOffset.js +0 -3
  570. package/lib/es/datePicker/_utils/getInsetInputFormatToken.js +2 -5
  571. package/lib/es/datePicker/_utils/getInsetInputValueFromInsetInputStr.js +1 -5
  572. package/lib/es/datePicker/_utils/getMonthTable.d.ts +1 -1
  573. package/lib/es/datePicker/_utils/getMonthTable.js +8 -18
  574. package/lib/es/datePicker/_utils/getMonthsInYear.js +1 -2
  575. package/lib/es/datePicker/_utils/getYears.d.ts +1 -1
  576. package/lib/es/datePicker/_utils/getYears.js +9 -6
  577. package/lib/es/datePicker/_utils/isBetween.js +0 -1
  578. package/lib/es/datePicker/_utils/isValidTimeZone.d.ts +1 -0
  579. package/lib/es/datePicker/_utils/isValidTimeZone.js +3 -0
  580. package/lib/es/datePicker/_utils/parser.js +0 -8
  581. package/lib/es/datePicker/constants.d.ts +1 -1
  582. package/lib/es/datePicker/constants.js +28 -28
  583. package/lib/es/datePicker/datePicker.css +88 -13
  584. package/lib/es/datePicker/datePicker.scss +170 -21
  585. package/lib/es/datePicker/foundation.d.ts +79 -50
  586. package/lib/es/datePicker/foundation.js +173 -426
  587. package/lib/es/datePicker/inputFoundation.d.ts +15 -6
  588. package/lib/es/datePicker/inputFoundation.js +35 -85
  589. package/lib/es/datePicker/monthFoundation.d.ts +1 -1
  590. package/lib/es/datePicker/monthFoundation.js +3 -22
  591. package/lib/es/datePicker/monthsGridFoundation.d.ts +18 -13
  592. package/lib/es/datePicker/monthsGridFoundation.js +70 -231
  593. package/lib/es/datePicker/variables.scss +13 -4
  594. package/lib/es/datePicker/yearAndMonthFoundation.d.ts +68 -13
  595. package/lib/es/datePicker/yearAndMonthFoundation.js +55 -37
  596. package/lib/es/descriptions/constants.d.ts +1 -0
  597. package/lib/es/descriptions/constants.js +3 -2
  598. package/lib/es/descriptions/descriptions.css +15 -0
  599. package/lib/es/descriptions/descriptions.scss +20 -0
  600. package/lib/es/descriptions/foundation.d.ts +7 -0
  601. package/lib/es/descriptions/foundation.js +37 -0
  602. package/lib/es/descriptions/variables.scss +10 -0
  603. package/lib/es/divider/constants.js +1 -1
  604. package/lib/es/dropdown/constants.js +4 -4
  605. package/lib/es/dropdown/dropdown.css +4 -0
  606. package/lib/es/dropdown/dropdown.scss +5 -0
  607. package/lib/es/dropdown/foundation.js +9 -20
  608. package/lib/es/dropdown/menuFoundation.js +9 -23
  609. package/lib/es/empty/constants.js +1 -1
  610. package/lib/es/form/constants.d.ts +1 -0
  611. package/lib/es/form/constants.js +3 -2
  612. package/lib/es/form/form.css +4 -0
  613. package/lib/es/form/form.scss +5 -2
  614. package/lib/es/form/foundation.d.ts +4 -4
  615. package/lib/es/form/foundation.js +84 -203
  616. package/lib/es/form/interface.d.ts +10 -10
  617. package/lib/es/form/utils.d.ts +10 -1
  618. package/lib/es/form/utils.js +83 -86
  619. package/lib/es/form/variables.scss +3 -0
  620. package/lib/es/grid/constants.js +1 -1
  621. package/lib/es/grid/grid.css +1 -1
  622. package/lib/es/grid/grid.scss +1 -1
  623. package/lib/es/highlight/constants.js +1 -1
  624. package/lib/es/icons/constants.js +1 -1
  625. package/lib/es/image/constants.d.ts +4 -1
  626. package/lib/es/image/constants.js +5 -2
  627. package/lib/es/image/image.css +4 -2
  628. package/lib/es/image/image.scss +9 -5
  629. package/lib/es/image/imageFoundation.js +4 -13
  630. package/lib/es/image/previewFooterFoundation.d.ts +0 -1
  631. package/lib/es/image/previewFooterFoundation.js +0 -10
  632. package/lib/es/image/previewFoundation.js +0 -7
  633. package/lib/es/image/previewImageFoundation.d.ts +9 -24
  634. package/lib/es/image/previewImageFoundation.js +79 -156
  635. package/lib/es/image/previewInnerFoundation.d.ts +19 -15
  636. package/lib/es/image/previewInnerFoundation.js +108 -107
  637. package/lib/es/image/utils.d.ts +1 -1
  638. package/lib/es/image/utils.js +46 -27
  639. package/lib/es/image/variables.scss +1 -1
  640. package/lib/es/input/constants.js +1 -1
  641. package/lib/es/input/foundation.js +19 -96
  642. package/lib/es/input/input.css +45 -1
  643. package/lib/es/input/input.scss +48 -3
  644. package/lib/es/input/textarea.css +20 -0
  645. package/lib/es/input/textarea.scss +34 -0
  646. package/lib/es/input/textareaFoundation.d.ts +1 -1
  647. package/lib/es/input/textareaFoundation.js +58 -91
  648. package/lib/es/input/util/calculateNodeHeight.js +6 -18
  649. package/lib/es/input/util/getSizingData.js +7 -11
  650. package/lib/es/input/variables.scss +7 -0
  651. package/lib/es/inputNumber/foundation.js +28 -188
  652. package/lib/es/inputNumber/inputNumber.css +4 -0
  653. package/lib/es/inputNumber/inputNumber.scss +9 -0
  654. package/lib/es/layout/constants.js +1 -1
  655. package/lib/es/list/constants.js +1 -1
  656. package/lib/es/modal/constants.js +1 -1
  657. package/lib/es/modal/modal.css +8 -0
  658. package/lib/es/modal/modal.scss +10 -1
  659. package/lib/es/modal/modalContentFoundation.js +0 -15
  660. package/lib/es/modal/modalFoundation.d.ts +8 -4
  661. package/lib/es/modal/modalFoundation.js +40 -11
  662. package/lib/es/modal/variables.scss +6 -1
  663. package/lib/es/navigation/NavItem.js +0 -8
  664. package/lib/es/navigation/constants.js +2 -2
  665. package/lib/es/navigation/foundation.js +3 -63
  666. package/lib/es/navigation/itemFoundation.js +3 -19
  667. package/lib/es/navigation/subNavFoundation.js +7 -38
  668. package/lib/es/notification/constants.js +4 -4
  669. package/lib/es/notification/notification.css +18 -0
  670. package/lib/es/notification/notification.scss +21 -1
  671. package/lib/es/notification/notificationFoundation.d.ts +6 -6
  672. package/lib/es/notification/notificationFoundation.js +0 -11
  673. package/lib/es/notification/notificationListFoundation.d.ts +4 -1
  674. package/lib/es/notification/notificationListFoundation.js +15 -14
  675. package/lib/es/overflowList/constants.d.ts +6 -4
  676. package/lib/es/overflowList/constants.js +3 -1
  677. package/lib/es/overflowList/foundation.d.ts +3 -1
  678. package/lib/es/overflowList/foundation.js +59 -64
  679. package/lib/es/pagination/constants.js +1 -1
  680. package/lib/es/pagination/foundation.d.ts +5 -3
  681. package/lib/es/pagination/foundation.js +36 -90
  682. package/lib/es/pagination/pagination.css +23 -0
  683. package/lib/es/pagination/pagination.scss +29 -0
  684. package/lib/es/pagination/variables.scss +1 -0
  685. package/lib/es/popconfirm/constants.js +2 -2
  686. package/lib/es/popconfirm/popconfirm.css +4 -24
  687. package/lib/es/popconfirm/popconfirm.scss +4 -16
  688. package/lib/es/popconfirm/popconfirmFoundation.d.ts +4 -0
  689. package/lib/es/popconfirm/popconfirmFoundation.js +17 -14
  690. package/lib/es/popconfirm/rtl.scss +0 -13
  691. package/lib/es/popconfirm/variables.scss +0 -4
  692. package/lib/es/popover/constants.d.ts +1 -1
  693. package/lib/es/popover/constants.js +3 -3
  694. package/lib/es/popover/popover.css +2 -0
  695. package/lib/es/popover/popover.scss +2 -0
  696. package/lib/es/progress/constants.js +1 -1
  697. package/lib/es/progress/generates.d.ts +2 -2
  698. package/lib/es/progress/generates.js +33 -73
  699. package/lib/es/radio/constants.js +13 -13
  700. package/lib/es/radio/radio.css +3 -0
  701. package/lib/es/radio/radio.scss +6 -3
  702. package/lib/es/radio/radioFoundation.js +0 -9
  703. package/lib/es/radio/radioGroupFoundation.js +3 -19
  704. package/lib/es/radio/radioInnerFoundation.js +1 -15
  705. package/lib/es/radio/variables.scss +4 -0
  706. package/lib/es/rating/constants.js +1 -1
  707. package/lib/es/rating/foundation.js +10 -55
  708. package/lib/es/scrollList/constants.js +2 -2
  709. package/lib/es/scrollList/itemFoundation.js +8 -60
  710. package/lib/es/scrollList/scrollTo.js +2 -4
  711. package/lib/es/select/constants.js +3 -3
  712. package/lib/es/select/foundation.d.ts +8 -6
  713. package/lib/es/select/foundation.js +172 -420
  714. package/lib/es/select/option.scss +1 -1
  715. package/lib/es/select/optionFoundation.js +2 -10
  716. package/lib/es/select/select.css +50 -0
  717. package/lib/es/select/select.scss +74 -5
  718. package/lib/es/select/variables.scss +9 -6
  719. package/lib/es/sideSheet/constants.js +2 -2
  720. package/lib/es/sideSheet/sideSheet.css +30 -0
  721. package/lib/es/sideSheet/sideSheet.scss +38 -0
  722. package/lib/es/sideSheet/sideSheetFoundation.d.ts +1 -0
  723. package/lib/es/sideSheet/sideSheetFoundation.js +0 -12
  724. package/lib/es/sideSheet/variables.scss +7 -0
  725. package/lib/es/skeleton/constants.js +1 -1
  726. package/lib/es/skeleton/skeleton.css +3 -2
  727. package/lib/es/skeleton/skeleton.scss +1 -0
  728. package/lib/es/skeleton/variables.scss +2 -2
  729. package/lib/es/slider/constants.d.ts +1 -0
  730. package/lib/es/slider/constants.js +8 -7
  731. package/lib/es/slider/foundation.d.ts +13 -2
  732. package/lib/es/slider/foundation.js +30 -219
  733. package/lib/es/slider/slider.css +25 -11
  734. package/lib/es/slider/slider.scss +16 -1
  735. package/lib/es/slider/variables.scss +15 -9
  736. package/lib/es/space/constants.js +1 -1
  737. package/lib/es/spin/constants.js +1 -1
  738. package/lib/es/spin/foundation.js +3 -11
  739. package/lib/es/spin/spin.css +3 -0
  740. package/lib/es/spin/spin.scss +3 -0
  741. package/lib/es/steps/bacisSteps.scss +10 -3
  742. package/lib/es/steps/constants.js +2 -2
  743. package/lib/es/steps/fillSteps.scss +7 -7
  744. package/lib/es/steps/steps.css +27 -22
  745. package/lib/es/steps/variables.scss +3 -3
  746. package/lib/es/switch/constants.js +13 -13
  747. package/lib/es/switch/foundation.js +1 -16
  748. package/lib/es/switch/switch.css +10 -0
  749. package/lib/es/switch/switch.scss +13 -2
  750. package/lib/es/table/bodyFoundation.js +1 -25
  751. package/lib/es/table/cellFoundation.js +0 -1
  752. package/lib/es/table/constants.d.ts +0 -1
  753. package/lib/es/table/constants.js +13 -16
  754. package/lib/es/table/foundation.d.ts +26 -16
  755. package/lib/es/table/foundation.js +79 -313
  756. package/lib/es/table/rtl.scss +33 -2
  757. package/lib/es/table/table.css +100 -64
  758. package/lib/es/table/table.scss +66 -8
  759. package/lib/es/table/tableRowFoundation.js +1 -9
  760. package/lib/es/table/tableSelectionCellFoundation.js +0 -2
  761. package/lib/es/table/utils.d.ts +6 -4
  762. package/lib/es/table/utils.js +25 -119
  763. package/lib/es/table/variables.scss +6 -3
  764. package/lib/es/tabs/constants.js +21 -21
  765. package/lib/es/tabs/foundation.js +2 -35
  766. package/lib/es/tabs/tabs.css +207 -7
  767. package/lib/es/tabs/tabs.scss +339 -24
  768. package/lib/es/tag/constants.js +1 -2
  769. package/lib/es/tag/tag.css +34 -1
  770. package/lib/es/tag/tag.scss +43 -4
  771. package/lib/es/tag/variables.scss +5 -0
  772. package/lib/es/tagInput/constants.js +1 -1
  773. package/lib/es/tagInput/foundation.d.ts +7 -4
  774. package/lib/es/tagInput/foundation.js +64 -78
  775. package/lib/es/tagInput/tagInput.css +35 -9
  776. package/lib/es/tagInput/tagInput.scss +41 -12
  777. package/lib/es/tagInput/utils/getSplitedArray.js +0 -7
  778. package/lib/es/tagInput/variables.scss +2 -0
  779. package/lib/es/timePicker/ComboxFoundation.js +6 -32
  780. package/lib/es/timePicker/constants.js +3 -3
  781. package/lib/es/timePicker/foundation.d.ts +2 -2
  782. package/lib/es/timePicker/foundation.js +30 -101
  783. package/lib/es/timePicker/inputFoundation.js +4 -22
  784. package/lib/es/timePicker/timePicker.css +15 -0
  785. package/lib/es/timePicker/timePicker.scss +22 -1
  786. package/lib/es/timePicker/utils/index.js +12 -30
  787. package/lib/es/timePicker/utils/localeDate.js +0 -8
  788. package/lib/es/timeline/constants.js +2 -2
  789. package/lib/es/toast/animation.scss +3 -0
  790. package/lib/es/toast/constants.js +4 -4
  791. package/lib/es/toast/toast.css +35 -3
  792. package/lib/es/toast/toast.scss +43 -3
  793. package/lib/es/toast/toastFoundation.d.ts +5 -4
  794. package/lib/es/toast/toastFoundation.js +0 -9
  795. package/lib/es/toast/toastListFoundation.d.ts +5 -0
  796. package/lib/es/toast/toastListFoundation.js +10 -18
  797. package/lib/es/toast/variables.scss +14 -0
  798. package/lib/es/tooltip/constants.d.ts +1 -1
  799. package/lib/es/tooltip/constants.js +2 -2
  800. package/lib/es/tooltip/foundation.d.ts +5 -2
  801. package/lib/es/tooltip/foundation.js +143 -332
  802. package/lib/es/tooltip/tooltip.css +7 -0
  803. package/lib/es/tooltip/tooltip.scss +9 -0
  804. package/lib/es/transfer/constants.js +1 -1
  805. package/lib/es/transfer/foundation.d.ts +1 -1
  806. package/lib/es/transfer/foundation.js +5 -62
  807. package/lib/es/transfer/transfer.css +4 -0
  808. package/lib/es/transfer/transfer.scss +7 -0
  809. package/lib/es/transfer/transferUtils.js +5 -21
  810. package/lib/es/tree/constants.js +2 -2
  811. package/lib/es/tree/foundation.d.ts +14 -9
  812. package/lib/es/tree/foundation.js +60 -176
  813. package/lib/es/tree/rtl.scss +19 -11
  814. package/lib/es/tree/tree.css +147 -65
  815. package/lib/es/tree/tree.scss +112 -17
  816. package/lib/es/tree/treeUtil.d.ts +17 -8
  817. package/lib/es/tree/treeUtil.js +102 -161
  818. package/lib/es/tree/variables.scss +3 -2
  819. package/lib/es/treeSelect/constants.js +3 -3
  820. package/lib/es/treeSelect/foundation.d.ts +26 -13
  821. package/lib/es/treeSelect/foundation.js +155 -235
  822. package/lib/es/treeSelect/treeSelect.css +55 -10
  823. package/lib/es/treeSelect/treeSelect.scss +76 -20
  824. package/lib/es/treeSelect/variables.scss +4 -2
  825. package/lib/es/typography/constants.d.ts +1 -0
  826. package/lib/es/typography/constants.js +2 -1
  827. package/lib/es/typography/formatNumeral.d.ts +3 -3
  828. package/lib/es/typography/formatNumeral.js +22 -40
  829. package/lib/es/typography/typography.css +135 -2
  830. package/lib/es/typography/typography.scss +151 -8
  831. package/lib/es/typography/variables.scss +52 -0
  832. package/lib/es/upload/constants.js +2 -2
  833. package/lib/es/upload/fileCardFoundation.d.ts +9 -0
  834. package/lib/es/upload/fileCardFoundation.js +10 -0
  835. package/lib/es/upload/foundation.d.ts +14 -5
  836. package/lib/es/upload/foundation.js +107 -240
  837. package/lib/es/upload/upload.css +9 -0
  838. package/lib/es/upload/upload.scss +8 -0
  839. package/lib/es/upload/utils.js +14 -28
  840. package/lib/es/utils/Event.js +1 -17
  841. package/lib/es/utils/FocusHandle.d.ts +1 -1
  842. package/lib/es/utils/FocusHandle.js +6 -32
  843. package/lib/es/utils/Logger.js +0 -20
  844. package/lib/es/utils/Store.js +0 -9
  845. package/lib/es/utils/a11y.js +18 -31
  846. package/lib/es/utils/array.d.ts +2 -2
  847. package/lib/es/utils/array.js +2 -7
  848. package/lib/es/utils/classnames.js +0 -10
  849. package/lib/es/utils/date-fns-extra.d.ts +28 -17
  850. package/lib/es/utils/date-fns-extra.js +78 -40
  851. package/lib/es/utils/dom.d.ts +1 -1
  852. package/lib/es/utils/dom.js +0 -9
  853. package/lib/es/utils/function.js +0 -1
  854. package/lib/es/utils/getDataAttr.js +1 -2
  855. package/lib/es/utils/getHighlight.js +5 -26
  856. package/lib/es/utils/getMotionObjFromProps.js +4 -12
  857. package/lib/es/utils/isBothNaN.js +0 -1
  858. package/lib/es/utils/isEnterPress.js +0 -2
  859. package/lib/es/utils/isEscPress.js +0 -2
  860. package/lib/es/utils/keyCode.js +0 -104
  861. package/lib/es/utils/log.js +0 -3
  862. package/lib/es/utils/object.d.ts +4 -4
  863. package/lib/es/utils/object.js +10 -29
  864. package/lib/es/utils/set.js +0 -5
  865. package/lib/es/utils/shallowEqualObjects.js +0 -6
  866. package/lib/es/utils/touchPolyfill.js +1 -6
  867. package/lib/es/utils/type.d.ts +3 -3
  868. package/lib/es/utils/uuid.js +4 -10
  869. package/lib/es/utils/warning.js +1 -1
  870. package/modal/modal.scss +10 -1
  871. package/modal/modalContentFoundation.ts +3 -3
  872. package/modal/modalFoundation.ts +32 -7
  873. package/modal/variables.scss +6 -1
  874. package/navigation/NavItem.ts +0 -2
  875. package/navigation/foundation.ts +1 -3
  876. package/navigation/itemFoundation.ts +0 -1
  877. package/navigation/subNavFoundation.ts +3 -2
  878. package/notification/notification.scss +21 -1
  879. package/notification/notificationFoundation.ts +3 -3
  880. package/notification/notificationListFoundation.ts +14 -4
  881. package/overflowList/constants.ts +4 -2
  882. package/overflowList/foundation.ts +51 -33
  883. package/package.json +6 -5
  884. package/pagination/foundation.ts +13 -3
  885. package/pagination/pagination.scss +29 -0
  886. package/pagination/variables.scss +1 -0
  887. package/popconfirm/popconfirm.scss +4 -16
  888. package/popconfirm/popconfirmFoundation.ts +20 -2
  889. package/popconfirm/rtl.scss +0 -13
  890. package/popconfirm/variables.scss +0 -4
  891. package/popover/constants.ts +1 -1
  892. package/popover/popover.scss +2 -0
  893. package/radio/radio.scss +6 -3
  894. package/radio/radioFoundation.ts +1 -1
  895. package/radio/radioGroupFoundation.ts +0 -1
  896. package/radio/radioInnerFoundation.ts +0 -1
  897. package/radio/variables.scss +4 -0
  898. package/rating/foundation.ts +0 -1
  899. package/select/foundation.ts +70 -32
  900. package/select/option.scss +1 -1
  901. package/select/optionFoundation.ts +0 -2
  902. package/select/select.scss +74 -5
  903. package/select/variables.scss +9 -6
  904. package/sideSheet/sideSheet.scss +38 -0
  905. package/sideSheet/sideSheetFoundation.ts +3 -2
  906. package/sideSheet/variables.scss +7 -0
  907. package/skeleton/skeleton.scss +1 -0
  908. package/skeleton/variables.scss +2 -2
  909. package/slider/constants.ts +1 -0
  910. package/slider/foundation.ts +25 -29
  911. package/slider/slider.scss +16 -1
  912. package/slider/variables.scss +15 -9
  913. package/spin/spin.scss +3 -0
  914. package/steps/bacisSteps.scss +10 -3
  915. package/steps/fillSteps.scss +7 -7
  916. package/steps/variables.scss +3 -3
  917. package/switch/foundation.ts +2 -4
  918. package/switch/switch.scss +13 -2
  919. package/table/bodyFoundation.ts +0 -1
  920. package/table/constants.ts +0 -3
  921. package/table/foundation.ts +33 -31
  922. package/table/rtl.scss +33 -2
  923. package/table/table.scss +66 -8
  924. package/table/tableRowFoundation.ts +0 -1
  925. package/table/utils.ts +23 -43
  926. package/table/variables.scss +6 -3
  927. package/tabs/foundation.ts +2 -2
  928. package/tabs/tabs.scss +339 -24
  929. package/tag/constants.ts +19 -2
  930. package/tag/tag.scss +43 -4
  931. package/tag/variables.scss +5 -0
  932. package/tagInput/foundation.ts +57 -3
  933. package/tagInput/tagInput.scss +41 -12
  934. package/tagInput/variables.scss +2 -0
  935. package/timePicker/foundation.ts +27 -18
  936. package/timePicker/inputFoundation.ts +0 -2
  937. package/timePicker/timePicker.scss +22 -1
  938. package/timePicker/utils/index.ts +3 -2
  939. package/toast/animation.scss +3 -0
  940. package/toast/toast.scss +43 -3
  941. package/toast/toastFoundation.ts +4 -6
  942. package/toast/toastListFoundation.ts +13 -3
  943. package/toast/variables.scss +14 -0
  944. package/tooltip/constants.ts +1 -1
  945. package/tooltip/foundation.ts +96 -58
  946. package/tooltip/tooltip.scss +9 -0
  947. package/transfer/foundation.ts +0 -1
  948. package/transfer/transfer.scss +7 -0
  949. package/tree/foundation.ts +38 -33
  950. package/tree/rtl.scss +19 -11
  951. package/tree/tree.scss +112 -17
  952. package/tree/treeUtil.ts +64 -32
  953. package/tree/variables.scss +3 -2
  954. package/treeSelect/foundation.ts +132 -70
  955. package/treeSelect/treeSelect.scss +76 -20
  956. package/treeSelect/variables.scss +4 -2
  957. package/typography/constants.ts +1 -0
  958. package/typography/formatNumeral.ts +2 -5
  959. package/typography/typography.scss +151 -8
  960. package/typography/variables.scss +52 -0
  961. package/upload/fileCardFoundation.ts +17 -0
  962. package/upload/foundation.ts +85 -10
  963. package/upload/upload.scss +8 -0
  964. package/utils/Event.ts +0 -1
  965. package/utils/a11y.ts +6 -6
  966. package/utils/array.ts +4 -4
  967. package/utils/date-fns-extra.ts +83 -22
  968. package/utils/function.ts +0 -1
  969. package/utils/getDataAttr.ts +1 -1
  970. package/utils/getMotionObjFromProps.ts +3 -2
  971. package/utils/object.ts +0 -3
@@ -1,6 +1,5 @@
1
1
  import _difference from "lodash/difference";
2
2
  import _isEmpty from "lodash/isEmpty";
3
- import _cloneDeep from "lodash/cloneDeep";
4
3
  import _isString from "lodash/isString";
5
4
  import _isUndefined from "lodash/isUndefined";
6
5
  import _get from "lodash/get";
@@ -8,14 +7,24 @@ import _isFunction from "lodash/isFunction";
8
7
  import _isNumber from "lodash/isNumber";
9
8
  import { strings } from '../treeSelect/constants';
10
9
  import BaseFoundation from '../base/foundation';
11
- import { flattenTreeData, findDescendantKeys, findAncestorKeys, filter, normalizedArr, normalizeKeyList, getMotionKeys, calcCheckedKeysForChecked, calcCheckedKeys, calcCheckedKeysForUnchecked, getValueOrKey } from '../tree/treeUtil';
12
- import isEnterPress from '../utils/isEnterPress'; // eslint-disable-next-line max-len
13
-
10
+ import { flattenTreeData, findDescendantKeys, findAncestorKeys, filter, normalizeKeyList, getMotionKeys, calcCheckedKeysForChecked, calcCheckedKeys, calcCheckedKeysForUnchecked, getValueOrKey } from '../tree/treeUtil';
11
+ import isEnterPress from '../utils/isEnterPress';
14
12
  export default class TreeSelectFoundation extends BaseFoundation {
15
13
  constructor(adapter) {
16
14
  super(Object.assign({}, adapter));
15
+ this._registerClickOutsideHandler = e => {
16
+ this._adapter.registerClickOutsideHandler(e => {
17
+ this.handlerTriggerBlur(e);
18
+ this.close(e);
19
+ });
20
+ };
21
+ this.clearInputValue = () => {
22
+ const {
23
+ inputValue
24
+ } = this.getStates();
25
+ inputValue && this._adapter.updateInputValue('');
26
+ };
17
27
  }
18
-
19
28
  init() {
20
29
  const {
21
30
  searchAutoFocus,
@@ -24,28 +33,25 @@ export default class TreeSelectFoundation extends BaseFoundation {
24
33
  } = this.getProps();
25
34
  const triggerSearch = searchPosition === strings.SEARCH_POSITION_TRIGGER && filterTreeNode;
26
35
  const triggerSearchAutoFocus = searchAutoFocus && triggerSearch;
27
-
28
36
  this._setDropdownWidth();
29
-
30
37
  const isOpen = (this.getProp('defaultOpen') || triggerSearchAutoFocus) && !this._isDisabled();
31
-
32
38
  if (isOpen) {
33
39
  this.open();
34
40
  }
41
+ if (triggerSearchAutoFocus) {
42
+ this.handleTriggerFocus(null);
43
+ }
35
44
  }
36
-
37
45
  destroy() {
38
46
  // Ensure that event monitoring will be uninstalled, and the user may not trigger closePanel
39
47
  this._adapter.unregisterClickOutsideHandler();
40
48
  }
41
-
42
49
  _setDropdownWidth() {
43
50
  const {
44
51
  style,
45
52
  dropdownMatchSelectWidth
46
53
  } = this.getProps();
47
54
  let width;
48
-
49
55
  if (dropdownMatchSelectWidth) {
50
56
  if (style && _isNumber(style.width)) {
51
57
  width = style.width;
@@ -54,36 +60,28 @@ export default class TreeSelectFoundation extends BaseFoundation {
54
60
  } else {
55
61
  width = this._adapter.getTriggerWidth();
56
62
  }
57
-
58
63
  this._adapter.setOptionWrapperWidth(width);
59
64
  }
60
65
  }
61
-
62
66
  _isMultiple() {
63
67
  return this.getProp('multiple');
64
68
  }
65
-
66
69
  _isAnimated() {
67
70
  return this.getProp('motionExpand');
68
71
  }
69
-
70
72
  _isDisabled() {
71
73
  let treeNode = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};
72
74
  return this.getProp('disabled') || treeNode.disabled;
73
75
  }
74
-
75
76
  _isExpandControlled() {
76
77
  return this.getProp('expandedKeys');
77
78
  }
78
-
79
79
  _isSelectToClose() {
80
80
  return !this.getProp('expandAction');
81
81
  }
82
-
83
82
  _isLoadControlled() {
84
83
  return this.getProp('loadedKeys');
85
84
  }
86
-
87
85
  _showFilteredOnly() {
88
86
  const {
89
87
  inputValue
@@ -93,15 +91,46 @@ export default class TreeSelectFoundation extends BaseFoundation {
93
91
  } = this.getProps();
94
92
  return Boolean(inputValue) && showFilteredOnly;
95
93
  }
96
-
97
- getCopyFromState(items) {
98
- const res = {};
99
- normalizedArr(items).forEach(key => {
100
- res[key] = _cloneDeep(this.getState(key));
94
+ findDataForValue(findValue) {
95
+ const {
96
+ value,
97
+ defaultValue,
98
+ keyMaps
99
+ } = this.getProps();
100
+ const realValueName = _get(keyMaps, 'value', 'value');
101
+ const realKeyName = _get(keyMaps, 'key', 'key');
102
+ let valueArr = [];
103
+ if (value) {
104
+ valueArr = Array.isArray(value) ? value : [value];
105
+ } else if (defaultValue) {
106
+ valueArr = Array.isArray(defaultValue) ? defaultValue : [defaultValue];
107
+ }
108
+ return valueArr.find(item => {
109
+ return item[realValueName] === findValue || item[realKeyName] === findValue;
101
110
  });
102
- return res;
103
111
  }
104
-
112
+ constructDataForValue(value) {
113
+ const {
114
+ treeNodeLabelProp,
115
+ keyMaps
116
+ } = this.getProps();
117
+ const keyName = _get(keyMaps, 'key', 'key');
118
+ const labelName = _get(keyMaps, 'label', treeNodeLabelProp);
119
+ return {
120
+ [keyName]: value,
121
+ [labelName]: value
122
+ };
123
+ }
124
+ getDataForKeyNotInKeyEntities(value) {
125
+ const {
126
+ onChangeWithObject
127
+ } = this.getProps();
128
+ if (onChangeWithObject) {
129
+ return this.findDataForValue(value);
130
+ } else {
131
+ return this.constructDataForValue(value);
132
+ }
133
+ }
105
134
  getTreeNodeProps(key) {
106
135
  const {
107
136
  expandedKeys = new Set([]),
@@ -123,15 +152,12 @@ export default class TreeSelectFoundation extends BaseFoundation {
123
152
  } = this.getProps();
124
153
  const entity = keyEntities[key];
125
154
  const notExist = !entity;
126
-
127
155
  if (notExist) {
128
156
  return null;
129
- } // if checkRelation is invalid, the checked status of node will be false
130
-
131
-
157
+ }
158
+ // if checkRelation is invalid, the checked status of node will be false
132
159
  let realChecked = false;
133
160
  let realHalfChecked = false;
134
-
135
161
  if (checkRelation === 'related') {
136
162
  realChecked = checkedKeys.has(key);
137
163
  realHalfChecked = halfCheckedKeys.has(key);
@@ -139,11 +165,10 @@ export default class TreeSelectFoundation extends BaseFoundation {
139
165
  realChecked = realCheckedKeys.has(key);
140
166
  realHalfChecked = false;
141
167
  }
142
-
143
168
  const isSearching = Boolean(inputValue);
144
169
  const treeNodeProps = {
145
170
  eventKey: key,
146
- expanded: isSearching && !this._isExpandControlled() ? filteredExpandedKeys.has(key) : expandedKeys.has(key),
171
+ expanded: isSearching ? filteredExpandedKeys.has(key) : expandedKeys.has(key),
147
172
  selected: selectedKeys.includes(key),
148
173
  checked: realChecked,
149
174
  halfChecked: realHalfChecked,
@@ -155,14 +180,11 @@ export default class TreeSelectFoundation extends BaseFoundation {
155
180
  loading: loadingKeys.has(key) && !loadedKeys.has(key),
156
181
  loaded: loadedKeys.has(key)
157
182
  };
158
-
159
183
  if (this.getProp('disableStrictly') && disabledKeys.has(key)) {
160
184
  treeNodeProps.disabled = true;
161
185
  }
162
-
163
186
  return treeNodeProps;
164
187
  }
165
-
166
188
  handleNodeLoad(loadedKeys, loadingKeys, data, resolve) {
167
189
  const {
168
190
  loadData
@@ -170,32 +192,24 @@ export default class TreeSelectFoundation extends BaseFoundation {
170
192
  const {
171
193
  key
172
194
  } = data;
173
-
174
195
  if (!loadData || loadedKeys.has(key) || loadingKeys.has(key)) {
175
196
  return {};
176
197
  }
177
-
178
198
  loadData(data).then(() => {
179
- const {
180
- loadedKeys: prevLoadedKeys,
181
- loadingKeys: prevLoadingKeys
182
- } = this.getCopyFromState(['loadedKeys', 'loadingKeys']);
199
+ const prevLoadedKeys = new Set(this.getState('loadedKeys'));
200
+ const prevLoadingKeys = new Set(this.getState('loadingKeys'));
183
201
  const newLoadedKeys = prevLoadedKeys.add(key);
184
202
  const newLoadingKeys = new Set([...prevLoadingKeys]);
185
203
  newLoadingKeys.delete(key);
186
-
187
204
  this._adapter.notifyLoad(newLoadedKeys, data);
188
-
189
205
  if (!this._isLoadControlled()) {
190
206
  this._adapter.updateState({
191
207
  loadedKeys: newLoadedKeys
192
208
  });
193
209
  }
194
-
195
210
  this._adapter.setState({
196
211
  loadingKeys: newLoadingKeys
197
212
  });
198
-
199
213
  resolve();
200
214
  });
201
215
  return {
@@ -203,138 +217,124 @@ export default class TreeSelectFoundation extends BaseFoundation {
203
217
  };
204
218
  }
205
219
  /* istanbul ignore next */
206
-
207
-
208
220
  focusInput(bool) {
209
221
  this._adapter.updateInputFocus(bool);
210
222
  }
211
-
212
223
  _notifyMultipleChange(key, e) {
213
224
  const {
214
225
  keyEntities
215
226
  } = this.getStates();
216
227
  const {
217
228
  leafOnly,
218
- checkRelation
229
+ checkRelation,
230
+ keyMaps
219
231
  } = this.getProps();
220
232
  let keyList = [];
221
-
222
233
  if (checkRelation === 'related') {
223
- keyList = normalizeKeyList(key, keyEntities, leafOnly);
234
+ keyList = normalizeKeyList(key, keyEntities, leafOnly, true);
224
235
  } else if (checkRelation === 'unRelated') {
225
236
  keyList = key;
226
237
  }
227
-
228
- const nodes = keyList.map(i => keyEntities[i].data);
229
-
238
+ const nodes = keyList.map(key => keyEntities[key] && keyEntities[key].key === key ? keyEntities[key].data : this.getDataForKeyNotInKeyEntities(key));
230
239
  if (this.getProp('onChangeWithObject')) {
231
240
  this._adapter.notifyChangeWithObject(nodes, e);
232
241
  } else {
233
- const value = getValueOrKey(nodes);
234
-
242
+ const value = getValueOrKey(nodes, keyMaps);
235
243
  this._adapter.notifyChange(value, nodes, e);
236
244
  }
237
245
  }
238
-
239
246
  _notifyChange(key, e) {
240
247
  const {
241
248
  keyEntities
242
249
  } = this.getStates();
243
-
250
+ const {
251
+ keyMaps
252
+ } = this.getProps();
244
253
  if (this._isMultiple() && Array.isArray(key)) {
245
254
  this._notifyMultipleChange(key, e);
246
255
  } else {
247
256
  const nodes = _isUndefined(key) ? key : keyEntities[key].data;
248
- const value = _isUndefined(key) ? key : getValueOrKey(nodes);
249
-
257
+ const value = _isUndefined(key) ? key : getValueOrKey(nodes, keyMaps);
250
258
  if (this.getProp('onChangeWithObject')) {
251
259
  this._adapter.notifyChangeWithObject(nodes, e);
252
260
  } else {
253
261
  this._adapter.notifyChange(value, nodes, e);
254
262
  }
255
263
  }
256
- } // Scenes that may trigger focus:
264
+ }
265
+ // Scenes that may trigger focus:
257
266
  // 1、click selection
258
-
259
-
260
267
  _notifyFocus(e) {
261
268
  this._adapter.notifyFocus(e);
262
- } // Scenes that may trigger blur
269
+ }
270
+ handleTriggerFocus(e) {
271
+ this._adapter.updateIsFocus(true);
272
+ this._notifyFocus(e);
273
+ this._registerClickOutsideHandler(e);
274
+ }
275
+ // Scenes that may trigger blur
263
276
  // 1、clickOutSide
264
277
  // 2、click option / press enter, and then select complete(when multiple is false
265
278
  // 3、press esc when dropdown list open
266
-
267
-
268
279
  _notifyBlur(e) {
269
280
  this._adapter.notifyBlur(e);
270
281
  }
271
-
282
+ handlerTriggerBlur(e) {
283
+ this._adapter.updateIsFocus(false);
284
+ this._notifyBlur(e);
285
+ this._adapter.unregisterClickOutsideHandler();
286
+ }
272
287
  toggleHoverState(bool) {
273
288
  this._adapter.toggleHovering(bool);
274
289
  }
275
-
276
290
  open() {
277
291
  this._adapter.openMenu();
278
-
279
292
  this._setDropdownWidth();
280
-
281
- this._adapter.registerClickOutsideHandler(e => {
282
- this.close(e);
283
- });
284
293
  }
285
-
286
294
  close(e) {
287
295
  this._adapter.closeMenu();
288
-
289
- this._adapter.unregisterClickOutsideHandler();
290
-
291
- this._notifyBlur(e);
292
-
293
296
  if (this.getProp('motionExpand')) {
294
297
  this._adapter.updateState({
295
298
  motionKeys: new Set([])
296
299
  });
297
300
  }
298
301
  }
299
-
300
302
  handleClick(e) {
301
303
  const isDisabled = this._isDisabled();
302
-
303
304
  const {
304
305
  isOpen,
305
- inputValue
306
+ inputValue,
307
+ isFocus
306
308
  } = this.getStates();
307
309
  const {
308
- searchPosition
310
+ searchPosition,
311
+ clickTriggerToHide
309
312
  } = this.getProps();
310
-
311
313
  if (isDisabled) {
312
314
  return;
313
- } else if (!isOpen) {
314
- this.open();
315
-
316
- this._notifyFocus(e);
317
- } else if (isOpen) {
318
- if (searchPosition === 'trigger' && inputValue) {
319
- return;
315
+ } else {
316
+ if (!isFocus) {
317
+ this.handleTriggerFocus(e);
318
+ }
319
+ if (isOpen) {
320
+ if (searchPosition === 'trigger' && inputValue) {
321
+ return;
322
+ }
323
+ clickTriggerToHide && this.close(e);
324
+ } else {
325
+ this.open();
320
326
  }
321
-
322
- this.close(e);
323
327
  }
324
328
  }
325
329
  /**
326
330
  * A11y: simulate selection click
327
331
  */
328
-
329
332
  /* istanbul ignore next */
330
-
331
-
332
333
  handleSelectionEnterPress(e) {
333
334
  if (isEnterPress(e)) {
334
335
  this.handleClick(e);
335
336
  }
336
337
  }
337
-
338
338
  handleClear(e) {
339
339
  const {
340
340
  searchPosition,
@@ -344,28 +344,21 @@ export default class TreeSelectFoundation extends BaseFoundation {
344
344
  inputValue,
345
345
  selectedKeys
346
346
  } = this.getStates();
347
-
348
347
  const isMultiple = this._isMultiple();
349
-
350
348
  const isControlled = this._isControlledComponent();
351
-
352
349
  const value = isMultiple ? [] : undefined;
353
-
354
350
  this._notifyChange(value, e);
355
-
356
351
  if (!isControlled) {
357
352
  // reposition dropdown when selected values change
358
353
  this._adapter.rePositionDropdown();
359
-
360
354
  this._adapter.updateState({
361
355
  selectedKeys: [],
362
356
  checkedKeys: new Set(),
363
357
  halfCheckedKeys: new Set(),
364
358
  realCheckedKeys: new Set([])
365
359
  });
366
- } // When triggerSearch, clicking the clear button will trigger to clear Input
367
-
368
-
360
+ }
361
+ // When triggerSearch, clicking the clear button will trigger to clear Input
369
362
  if (filterTreeNode && searchPosition === strings.SEARCH_POSITION_TRIGGER) {
370
363
  if (inputValue !== '') {
371
364
  if (_isEmpty(selectedKeys)) {
@@ -375,47 +368,41 @@ export default class TreeSelectFoundation extends BaseFoundation {
375
368
  }
376
369
  }
377
370
  }
371
+ this._adapter.notifyClear(e);
378
372
  }
379
373
  /**
380
374
  * A11y: simulate clear button click
381
375
  */
382
-
383
376
  /* istanbul ignore next */
384
-
385
-
386
377
  handleClearEnterPress(e) {
387
378
  if (isEnterPress(e)) {
388
379
  this.handleClear(e);
389
380
  }
390
381
  }
391
-
392
382
  removeTag(eventKey) {
393
383
  const {
394
384
  disableStrictly,
395
- checkRelation
385
+ checkRelation,
386
+ keyMaps
396
387
  } = this.getProps();
397
388
  const {
398
389
  keyEntities,
399
390
  disabledKeys,
400
391
  realCheckedKeys
401
392
  } = this.getStates();
402
- const item = keyEntities[eventKey].data;
403
-
404
- if (item.disabled || disableStrictly && disabledKeys.has(eventKey)) {
393
+ const item = keyEntities[eventKey] && keyEntities[eventKey].key === eventKey ? keyEntities[eventKey].data : this.getDataForKeyNotInKeyEntities(eventKey);
394
+ const disabledName = _get(keyMaps, 'disabled', 'disabled');
395
+ if (item[disabledName] || disableStrictly && disabledKeys.has(eventKey)) {
405
396
  return;
406
397
  }
407
-
408
398
  if (checkRelation === 'unRelated') {
409
399
  const newRealCheckedKeys = new Set(realCheckedKeys);
410
400
  newRealCheckedKeys.delete(eventKey);
411
-
412
401
  this._notifyChange([...newRealCheckedKeys], null);
413
-
414
402
  if (!this._isControlledComponent()) {
415
403
  this._adapter.updateState({
416
404
  realCheckedKeys: newRealCheckedKeys
417
405
  });
418
-
419
406
  this._adapter.rePositionDropdown();
420
407
  }
421
408
  } else if (checkRelation === 'related') {
@@ -423,25 +410,19 @@ export default class TreeSelectFoundation extends BaseFoundation {
423
410
  checkedKeys,
424
411
  halfCheckedKeys
425
412
  } = this.calcCheckedKeys(eventKey, false);
426
-
427
413
  this._notifyChange([...checkedKeys], null);
428
-
429
414
  if (!this._isControlledComponent()) {
430
415
  this._adapter.updateState({
431
416
  checkedKeys,
432
417
  halfCheckedKeys
433
418
  });
434
-
435
419
  this._adapter.rePositionDropdown();
436
420
  }
437
421
  }
438
-
439
- this._adapter.notifySelect(eventKey, false, item); // reposition dropdown when selected values change
440
-
441
-
422
+ this._adapter.notifySelect(eventKey, false, item);
423
+ // reposition dropdown when selected values change
442
424
  this._adapter.rePositionDropdown();
443
425
  }
444
-
445
426
  clearInput() {
446
427
  const {
447
428
  flattenNodes,
@@ -450,17 +431,17 @@ export default class TreeSelectFoundation extends BaseFoundation {
450
431
  keyEntities,
451
432
  treeData
452
433
  } = this.getStates();
434
+ const {
435
+ keyMaps
436
+ } = this.getProps();
453
437
  const newExpandedKeys = new Set(expandedKeys);
454
-
455
438
  const isExpandControlled = this._isExpandControlled();
456
-
457
439
  const expandedOptsKeys = findAncestorKeys(selectedKeys, keyEntities);
458
440
  expandedOptsKeys.forEach(item => newExpandedKeys.add(item));
459
- const newFlattenNodes = flattenTreeData(treeData, newExpandedKeys);
460
-
441
+ const newFlattenNodes = flattenTreeData(treeData, newExpandedKeys, keyMaps);
461
442
  this._adapter.updateState({
462
- expandedKeys: isExpandControlled ? expandedKeys : newExpandedKeys,
463
- flattenNodes: isExpandControlled ? flattenNodes : newFlattenNodes,
443
+ expandedKeys: newExpandedKeys,
444
+ flattenNodes: newFlattenNodes,
464
445
  inputValue: '',
465
446
  motionKeys: new Set([]),
466
447
  filteredKeys: new Set([]),
@@ -468,11 +449,9 @@ export default class TreeSelectFoundation extends BaseFoundation {
468
449
  filteredShownKeys: new Set([])
469
450
  });
470
451
  }
471
-
472
452
  handleInputChange(sugInput) {
473
453
  // Input is used as controlled component
474
454
  this._adapter.updateInputValue(sugInput);
475
-
476
455
  const {
477
456
  flattenNodes,
478
457
  expandedKeys,
@@ -483,63 +462,55 @@ export default class TreeSelectFoundation extends BaseFoundation {
483
462
  const {
484
463
  showFilteredOnly,
485
464
  filterTreeNode,
486
- treeNodeFilterProp
465
+ treeNodeFilterProp,
466
+ keyMaps
487
467
  } = this.getProps();
468
+ const realFilterProp = treeNodeFilterProp !== 'label' ? treeNodeFilterProp : _get(keyMaps, 'label', 'label');
488
469
  const newExpandedKeys = new Set(expandedKeys);
489
470
  let filteredOptsKeys = [];
490
471
  let expandedOptsKeys = [];
491
472
  let newFlattenNodes = [];
492
473
  let filteredShownKeys = new Set([]);
493
-
494
474
  if (!sugInput) {
495
475
  expandedOptsKeys = findAncestorKeys(selectedKeys, keyEntities);
496
476
  expandedOptsKeys.forEach(item => newExpandedKeys.add(item));
497
- newFlattenNodes = flattenTreeData(treeData, newExpandedKeys);
477
+ newFlattenNodes = flattenTreeData(treeData, newExpandedKeys, keyMaps);
498
478
  } else {
499
479
  filteredOptsKeys = Object.values(keyEntities).filter(item => {
500
480
  const {
501
481
  data
502
482
  } = item;
503
- return filter(sugInput, data, filterTreeNode, treeNodeFilterProp);
483
+ return filter(sugInput, data, filterTreeNode, realFilterProp);
504
484
  }).map(item => item.key);
505
485
  expandedOptsKeys = findAncestorKeys(filteredOptsKeys, keyEntities, false);
506
486
  const shownChildKeys = findDescendantKeys(filteredOptsKeys, keyEntities, true);
507
487
  filteredShownKeys = new Set([...shownChildKeys, ...expandedOptsKeys]);
508
- newFlattenNodes = flattenTreeData(treeData, new Set(expandedOptsKeys), showFilteredOnly && filteredShownKeys);
488
+ newFlattenNodes = flattenTreeData(treeData, new Set(expandedOptsKeys), keyMaps, showFilteredOnly && filteredShownKeys);
509
489
  }
510
-
511
490
  const newFilteredExpandedKeys = new Set(expandedOptsKeys);
512
-
513
491
  this._adapter.notifySearch(sugInput, Array.from(newFilteredExpandedKeys));
514
-
515
492
  this._adapter.updateState({
516
- expandedKeys: this._isExpandControlled() ? expandedKeys : newExpandedKeys,
517
- flattenNodes: this._isExpandControlled() ? flattenNodes : newFlattenNodes,
493
+ expandedKeys: newExpandedKeys,
494
+ flattenNodes: newFlattenNodes,
518
495
  motionKeys: new Set([]),
519
496
  filteredKeys: new Set(filteredOptsKeys),
520
497
  filteredExpandedKeys: newFilteredExpandedKeys,
521
498
  filteredShownKeys
522
499
  });
523
500
  }
524
-
525
501
  handleNodeSelect(e, treeNode) {
526
502
  const isDisabled = this._isDisabled(treeNode);
527
-
528
503
  if (isDisabled) {
529
504
  return;
530
505
  }
531
-
532
506
  if (!this._isMultiple()) {
533
507
  this.handleSingleSelect(e, treeNode);
534
508
  } else {
535
509
  this.handleMultipleSelect(e, treeNode);
536
510
  }
537
511
  }
538
-
539
512
  handleSingleSelect(e, treeNode) {
540
- let {
541
- selectedKeys
542
- } = this.getCopyFromState('selectedKeys');
513
+ let selectedKeys = [...this.getState('selectedKeys')];
543
514
  const {
544
515
  clickToHide
545
516
  } = this.getProps();
@@ -548,42 +519,33 @@ export default class TreeSelectFoundation extends BaseFoundation {
548
519
  eventKey,
549
520
  data
550
521
  } = treeNode;
551
-
552
522
  this._adapter.notifySelect(eventKey, true, data);
553
-
554
523
  if (!selectedKeys.includes(eventKey) && !selected) {
555
524
  selectedKeys = [eventKey];
556
-
557
525
  this._notifyChange(eventKey, e);
558
-
559
526
  if (!this._isControlledComponent()) {
560
527
  this._adapter.updateState({
561
528
  selectedKeys
562
529
  });
563
530
  }
564
531
  }
565
-
566
532
  if (clickToHide && (this._isSelectToClose() || !data.children)) {
567
533
  this.close(e);
534
+ this.handlerTriggerBlur(e);
568
535
  }
569
536
  }
570
-
571
537
  calcCheckedKeys(eventKey, targetStatus) {
572
538
  const {
573
539
  keyEntities
574
540
  } = this.getStates();
575
- const {
576
- checkedKeys,
577
- halfCheckedKeys
578
- } = this.getCopyFromState(['checkedKeys', 'halfCheckedKeys']);
579
-
541
+ const checkedKeys = new Set(this.getState('checkedKeys'));
542
+ const halfCheckedKeys = new Set(this.getState('halfCheckedKeys'));
580
543
  if (targetStatus) {
581
544
  return calcCheckedKeysForChecked(eventKey, keyEntities, checkedKeys, halfCheckedKeys);
582
545
  } else {
583
546
  return calcCheckedKeysForUnchecked(eventKey, keyEntities, checkedKeys, halfCheckedKeys);
584
547
  }
585
548
  }
586
-
587
549
  handleMultipleSelect(e, treeNode) {
588
550
  const {
589
551
  searchPosition,
@@ -599,30 +561,24 @@ export default class TreeSelectFoundation extends BaseFoundation {
599
561
  eventKey,
600
562
  data
601
563
  } = treeNode;
602
-
603
564
  if (checkRelation === 'related') {
604
565
  const targetStatus = disableStrictly ? this.calcCheckedStatus(!checked, eventKey) : !checked;
605
566
  const {
606
567
  checkedKeys,
607
568
  halfCheckedKeys
608
569
  } = disableStrictly ? this.calcNonDisabledCheckedKeys(eventKey, targetStatus) : this.calcCheckedKeys(eventKey, targetStatus);
609
-
610
570
  this._adapter.notifySelect(eventKey, targetStatus, data);
611
-
612
571
  this._notifyChange([...checkedKeys], e);
613
-
614
572
  if (!this._isControlledComponent()) {
615
573
  this._adapter.updateState({
616
574
  checkedKeys,
617
575
  halfCheckedKeys
618
576
  });
619
-
620
577
  this._adapter.rePositionDropdown();
621
578
  }
622
579
  } else if (checkRelation === 'unRelated') {
623
580
  const newRealCheckedKeys = new Set(realCheckedKeys);
624
581
  let targetStatus;
625
-
626
582
  if (realCheckedKeys.has(eventKey)) {
627
583
  newRealCheckedKeys.delete(eventKey);
628
584
  targetStatus = false;
@@ -630,52 +586,40 @@ export default class TreeSelectFoundation extends BaseFoundation {
630
586
  newRealCheckedKeys.add(eventKey);
631
587
  targetStatus = true;
632
588
  }
633
-
634
589
  this._adapter.notifySelect(eventKey, targetStatus, data);
635
-
636
590
  this._notifyChange([...newRealCheckedKeys], e);
637
-
638
591
  if (!this._isControlledComponent()) {
639
592
  this._adapter.updateState({
640
593
  realCheckedKeys: newRealCheckedKeys
641
594
  });
642
-
643
595
  this._adapter.rePositionDropdown();
644
596
  }
645
597
  }
646
-
647
598
  if (searchPosition === strings.SEARCH_POSITION_TRIGGER && inputValue !== '') {
648
599
  this._adapter.updateState({
649
600
  inputValue: ''
650
601
  });
651
602
  }
652
603
  }
653
-
654
604
  calcNonDisabledCheckedKeys(eventKey, targetStatus) {
655
605
  const {
656
606
  keyEntities,
657
607
  disabledKeys
658
608
  } = this.getStates();
659
- const {
660
- checkedKeys
661
- } = this.getCopyFromState(['checkedKeys']);
609
+ const checkedKeys = new Set(this.getState('checkedKeys'));
662
610
  const descendantKeys = normalizeKeyList(findDescendantKeys([eventKey], keyEntities, false), keyEntities, true);
663
611
  const hasDisabled = descendantKeys.some(key => disabledKeys.has(key));
664
-
665
612
  if (!hasDisabled) {
666
613
  return this.calcCheckedKeys(eventKey, targetStatus);
667
614
  }
668
-
669
615
  const nonDisabled = descendantKeys.filter(key => !disabledKeys.has(key));
670
- const newCheckedKeys = targetStatus ? [...nonDisabled, ...checkedKeys] : _difference(normalizeKeyList([...checkedKeys], keyEntities, true), nonDisabled);
616
+ const newCheckedKeys = targetStatus ? [...nonDisabled, ...checkedKeys] : _difference(normalizeKeyList([...checkedKeys], keyEntities, true, true), nonDisabled);
671
617
  return calcCheckedKeys(newCheckedKeys, keyEntities);
672
618
  }
673
-
674
619
  calcCheckedStatus(targetStatus, eventKey) {
675
620
  if (!targetStatus) {
676
621
  return targetStatus;
677
622
  }
678
-
679
623
  const {
680
624
  checkedKeys,
681
625
  keyEntities,
@@ -683,49 +627,41 @@ export default class TreeSelectFoundation extends BaseFoundation {
683
627
  } = this.getStates();
684
628
  const descendantKeys = normalizeKeyList(findDescendantKeys([eventKey], keyEntities, false), keyEntities, true);
685
629
  const hasDisabled = descendantKeys.some(key => disabledKeys.has(key));
686
-
687
630
  if (!hasDisabled) {
688
631
  return targetStatus;
689
632
  }
690
-
691
633
  const nonDisabledKeys = descendantKeys.filter(key => !disabledKeys.has(key));
692
634
  const allChecked = nonDisabledKeys.every(key => checkedKeys.has(key));
693
635
  return !allChecked;
694
636
  }
695
-
696
637
  handleNodeExpandInSearch(e, treeNode) {
697
638
  const {
698
639
  treeData,
699
640
  filteredShownKeys,
700
- keyEntities
641
+ keyEntities,
642
+ keyMaps
701
643
  } = this.getStates();
702
-
703
- const showFilteredOnly = this._showFilteredOnly(); // clone otherwise will be modified unexpectedly
704
-
705
-
706
- const {
707
- filteredExpandedKeys
708
- } = this.getCopyFromState('filteredExpandedKeys');
644
+ const showFilteredOnly = this._showFilteredOnly();
645
+ // clone otherwise will be modified unexpectedly
646
+ const filteredExpandedKeys = new Set(this.getState('filteredExpandedKeys'));
709
647
  let motionType = 'show';
710
648
  const {
711
649
  eventKey,
712
650
  expanded,
713
651
  data
714
- } = treeNode; // debugger;
715
-
652
+ } = treeNode;
653
+ // debugger;
716
654
  if (!expanded) {
717
655
  filteredExpandedKeys.add(eventKey);
718
656
  } else if (filteredExpandedKeys.has(eventKey)) {
719
657
  filteredExpandedKeys.delete(eventKey);
720
658
  motionType = 'hide';
721
- } // cache prev flattenNodes, otherwise the calculation will remove hidden items
722
-
723
-
659
+ }
660
+ // cache prev flattenNodes, otherwise the calculation will remove hidden items
724
661
  this._adapter.cacheFlattenNodes(motionType === 'hide' && this._isAnimated());
725
-
726
662
  if (!this._isExpandControlled()) {
727
663
  // debugger;
728
- const flattenNodes = flattenTreeData(treeData, filteredExpandedKeys, showFilteredOnly && filteredShownKeys);
664
+ const flattenNodes = flattenTreeData(treeData, filteredExpandedKeys, keyMaps, showFilteredOnly && filteredShownKeys);
729
665
  const motionKeys = this._isAnimated() ? getMotionKeys(eventKey, filteredExpandedKeys, keyEntities) : [];
730
666
  const newState = {
731
667
  filteredExpandedKeys,
@@ -733,64 +669,53 @@ export default class TreeSelectFoundation extends BaseFoundation {
733
669
  motionKeys: new Set(motionKeys),
734
670
  motionType
735
671
  };
736
-
737
672
  this._adapter.updateState(newState);
738
673
  }
739
-
740
674
  this._adapter.notifyExpand(filteredExpandedKeys, {
741
675
  expanded: !expanded,
742
676
  node: data
743
677
  });
744
678
  }
745
-
746
679
  handleNodeExpand(e, treeNode) {
747
680
  // debugger;
748
681
  const {
749
- loadData
682
+ loadData,
683
+ keyMaps
750
684
  } = this.getProps();
751
685
  const {
752
686
  inputValue,
753
687
  keyEntities
754
688
  } = this.getStates();
755
689
  const isSearching = Boolean(inputValue);
756
-
757
690
  if (!loadData && (!treeNode.children || !treeNode.children.length)) {
758
691
  return;
759
692
  }
760
-
761
693
  const isExpandControlled = this._isExpandControlled();
762
-
763
- if (isSearching && !isExpandControlled) {
694
+ if (isSearching) {
764
695
  this.handleNodeExpandInSearch(e, treeNode);
765
696
  return;
766
697
  }
767
-
768
698
  const {
769
699
  treeData
770
- } = this.getStates(); // clone otherwise will be modified unexpectedly
771
-
772
- const {
773
- expandedKeys
774
- } = this.getCopyFromState('expandedKeys');
700
+ } = this.getStates();
701
+ // clone otherwise will be modified unexpectedly
702
+ const expandedKeys = new Set(this.getState('expandedKeys'));
775
703
  let motionType = 'show';
776
704
  const {
777
705
  eventKey,
778
706
  expanded,
779
707
  data
780
708
  } = treeNode;
781
-
782
709
  if (!expanded) {
783
710
  expandedKeys.add(eventKey);
784
711
  } else if (expandedKeys.has(eventKey)) {
785
712
  expandedKeys.delete(eventKey);
786
713
  motionType = 'hide';
787
714
  }
788
-
789
715
  this._adapter.cacheFlattenNodes(motionType === 'hide' && this._isAnimated());
790
-
791
716
  if (!isExpandControlled) {
792
717
  // debugger;
793
- const flattenNodes = flattenTreeData(treeData, expandedKeys);
718
+ const flattenNodes = flattenTreeData(treeData, expandedKeys, keyMaps);
794
719
  const motionKeys = this._isAnimated() ? getMotionKeys(eventKey, expandedKeys, keyEntities) : [];
795
720
  const newState = {
796
721
  expandedKeys,
@@ -798,10 +723,8 @@ export default class TreeSelectFoundation extends BaseFoundation {
798
723
  motionKeys: new Set(motionKeys),
799
724
  motionType
800
725
  };
801
-
802
726
  this._adapter.updateState(newState);
803
727
  }
804
-
805
728
  this._adapter.notifyExpand(expandedKeys, {
806
729
  expanded: !expanded,
807
730
  node: data
@@ -810,27 +733,29 @@ export default class TreeSelectFoundation extends BaseFoundation {
810
733
  /**
811
734
  * The selected items that need to be displayed in the search box when obtaining a single selection
812
735
  */
813
-
814
-
815
736
  getRenderTextInSingle() {
816
737
  const {
817
738
  renderSelectedItem: propRenderSelectedItem,
818
- treeNodeLabelProp
739
+ treeNodeLabelProp,
740
+ keyMaps
819
741
  } = this.getProps();
820
742
  const {
821
743
  selectedKeys,
822
744
  keyEntities
823
745
  } = this.getStates();
824
- const renderSelectedItem = _isFunction(propRenderSelectedItem) ? propRenderSelectedItem : item => _get(item, treeNodeLabelProp, null);
825
- const item = selectedKeys.length && keyEntities[selectedKeys[0]] ? keyEntities[selectedKeys[0]].data : undefined;
826
- const renderText = item && treeNodeLabelProp in item ? renderSelectedItem(item) : null;
746
+ const realLabelName = _get(keyMaps, 'label', treeNodeLabelProp);
747
+ const renderSelectedItem = _isFunction(propRenderSelectedItem) ? propRenderSelectedItem : item => _get(item, realLabelName, null);
748
+ let item;
749
+ if (selectedKeys.length) {
750
+ const key = selectedKeys[0];
751
+ item = keyEntities[key] && keyEntities[key].key === key ? keyEntities[key].data : this.getDataForKeyNotInKeyEntities(key);
752
+ }
753
+ const renderText = item ? renderSelectedItem(item) : null;
827
754
  return renderText;
828
755
  }
829
756
  /**
830
757
  * When the search box is on the trigger, the blur event handling method
831
758
  */
832
-
833
-
834
759
  handleInputTriggerBlur() {
835
760
  this._adapter.updateState({
836
761
  inputTriggerFocus: false
@@ -839,18 +764,13 @@ export default class TreeSelectFoundation extends BaseFoundation {
839
764
  /**
840
765
  * When the search box is on the trigger, the focus event processing method
841
766
  */
842
-
843
-
844
767
  handleInputTriggerFocus() {
845
768
  this.clearInput();
846
-
847
769
  this._adapter.updateState({
848
770
  inputTriggerFocus: true
849
771
  });
850
772
  }
851
-
852
773
  setLoadKeys(data, resolve) {
853
774
  this._adapter.updateLoadKeys(data, resolve);
854
775
  }
855
-
856
776
  }