@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,3 +1,4 @@
1
+ import _omit from "lodash/omit";
1
2
  import _get from "lodash/get";
2
3
  import _pick from "lodash/pick";
3
4
  import _isEmpty from "lodash/isEmpty";
@@ -7,12 +8,14 @@ import _isObject from "lodash/isObject";
7
8
  import _max from "lodash/max";
8
9
  import _uniq from "lodash/uniq";
9
10
  import _difference from "lodash/difference";
11
+ /**
12
+ * Part of the utils function implementation process reference
13
+ * https://github.com/react-component/tree/blob/master/src/util.tsx
14
+ */
10
15
  const DRAG_OFFSET = 0.45;
11
-
12
16
  function getPosition(level, index) {
13
- return "".concat(level, "-").concat(index);
17
+ return `${level}-${index}`;
14
18
  }
15
-
16
19
  function isValid(val) {
17
20
  return !_isNull(val) && !_isUndefined(val);
18
21
  }
@@ -23,51 +26,52 @@ function isValid(val) {
23
26
  * @param filteredShownKeys
24
27
  * need expanded keys, provides `true` means all expanded
25
28
  */
26
- // eslint-disable-next-line max-len
27
-
28
-
29
- export function flattenTreeData(treeNodeList, expandedKeys) {
30
- let filteredShownKeys = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : false;
29
+ export function flattenTreeData(treeNodeList, expandedKeys, keyMaps) {
30
+ let filteredShownKeys = arguments.length > 3 && arguments[3] !== undefined ? arguments[3] : false;
31
31
  const flattenList = [];
32
32
  const filterSearch = Boolean(filteredShownKeys);
33
-
33
+ const realKeyName = _get(keyMaps, 'key', 'key');
34
+ const realChildrenName = _get(keyMaps, 'children', 'children');
34
35
  function flatten(list) {
35
36
  let parent = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : null;
36
37
  return list.map((treeNode, index) => {
37
38
  const pos = getPosition(parent ? parent.pos : '0', index);
38
- const mergedKey = treeNode.key; // Add FlattenDataNode into list
39
-
40
- const flattenNode = Object.assign(Object.assign({}, _pick(treeNode, ['key', 'label', 'value', 'icon', 'disabled', 'isLeaf'])), {
39
+ const mergedKey = treeNode[realKeyName];
40
+ const otherData = {};
41
+ if (keyMaps) {
42
+ Object.entries(_omit(keyMaps, 'children')).forEach(_ref => {
43
+ let [key, value] = _ref;
44
+ const result = treeNode[value];
45
+ !_isUndefined(result) && (otherData[key] = result);
46
+ });
47
+ }
48
+ // Add FlattenDataNode into list
49
+ const flattenNode = Object.assign(Object.assign(Object.assign({}, _pick(treeNode, ['key', 'label', 'value', 'icon', 'disabled', 'isLeaf'])), otherData), {
41
50
  parent,
42
51
  pos,
43
52
  children: null,
44
53
  data: treeNode,
45
- _innerDataTag: true
54
+ _innerDataTag: true,
55
+ isEnd: [...(parent ? parent.isEnd : []), index === list.length - 1]
46
56
  });
47
57
  const isBooleanFilteredShownKeys = typeof filteredShownKeys === 'boolean';
48
-
49
58
  if (!filterSearch || !isBooleanFilteredShownKeys && filteredShownKeys.has(mergedKey)) {
50
59
  flattenList.push(flattenNode);
51
- } // Loop treeNode children
52
- // eslint-disable-next-line max-len
53
-
54
-
60
+ }
61
+ // Loop treeNode children
55
62
  if (expandedKeys.has(mergedKey) && (!filterSearch || !isBooleanFilteredShownKeys && filteredShownKeys.has(mergedKey))) {
56
- flattenNode.children = flatten(treeNode.children || [], flattenNode);
63
+ flattenNode.children = flatten(treeNode[realChildrenName] || [], flattenNode);
57
64
  } else {
58
65
  flattenNode.children = [];
59
66
  }
60
-
61
67
  return flattenNode;
62
68
  });
63
69
  }
64
-
65
70
  flatten(treeNodeList);
66
71
  return flattenList;
67
72
  }
68
73
  export function convertJsonToData(treeJson) {
69
74
  const treeData = [];
70
-
71
75
  const traverseNode = (key, children, path, res) => {
72
76
  const currPath = [...path, key];
73
77
  const itemKey = currPath.join('-');
@@ -76,7 +80,6 @@ export function convertJsonToData(treeJson) {
76
80
  label: key,
77
81
  value: children
78
82
  };
79
-
80
83
  if (_isObject(children)) {
81
84
  const newChildren = [];
82
85
  Object.entries(children).forEach(c => {
@@ -84,35 +87,34 @@ export function convertJsonToData(treeJson) {
84
87
  });
85
88
  newNode.children = newChildren;
86
89
  }
87
-
88
90
  res.push(newNode);
89
91
  };
90
-
91
92
  Object.entries(treeJson).forEach(item => traverseNode(item[0], item[1], [], treeData));
92
93
  return treeData;
93
94
  }
94
95
  /**
95
96
  * Traverse all the data by `treeData`.
96
97
  */
97
-
98
- export function traverseDataNodes(treeNodes, callback) {
98
+ export function traverseDataNodes(treeNodes, callback, keyMaps) {
99
+ const realKeyName = _get(keyMaps, 'key', 'key');
100
+ const realChildrenName = _get(keyMaps, 'children', 'children');
99
101
  const processNode = (node, ind, parent) => {
100
- const children = node ? node.children : treeNodes;
101
- const pos = node ? getPosition(parent.pos, ind) : '0'; // Process node if is not root
102
-
102
+ const children = node ? node[realChildrenName] : treeNodes;
103
+ const pos = node ? getPosition(parent.pos, ind) : '0';
104
+ // Process node if is not root
103
105
  if (node) {
106
+ const nodeKey = _get(node, realKeyName, null);
104
107
  const data = {
105
108
  data: Object.assign({}, node),
106
109
  ind,
107
110
  pos,
108
- key: node.key !== null ? node.key : pos,
111
+ key: nodeKey !== null ? nodeKey : pos,
109
112
  parentPos: parent.node ? parent.pos : null,
110
113
  level: Number(parent.level) + 1
111
114
  };
112
115
  callback(data);
113
- } // Process children node
114
-
115
-
116
+ }
117
+ // Process children node
116
118
  if (children) {
117
119
  children.forEach((subNode, subIndex) => {
118
120
  processNode(subNode, subIndex, {
@@ -123,12 +125,10 @@ export function traverseDataNodes(treeNodes, callback) {
123
125
  });
124
126
  }
125
127
  };
126
-
127
128
  processNode(null);
128
129
  }
129
130
  /* Convert data to entities map */
130
-
131
- export function convertDataToEntities(dataNodes) {
131
+ export function convertDataToEntities(dataNodes, keyMaps) {
132
132
  const posEntities = {};
133
133
  const keyEntities = {};
134
134
  const valueEntities = {};
@@ -137,6 +137,7 @@ export function convertDataToEntities(dataNodes) {
137
137
  keyEntities,
138
138
  valueEntities
139
139
  };
140
+ const realValueName = _get(keyMaps, 'value', 'value');
140
141
  traverseDataNodes(dataNodes, data => {
141
142
  const {
142
143
  pos,
@@ -144,48 +145,42 @@ export function convertDataToEntities(dataNodes) {
144
145
  parentPos
145
146
  } = data;
146
147
  const entity = Object.assign({}, data);
147
-
148
- const value = _get(entity, 'data.value', null);
149
-
148
+ const value = _get(entity, `data.${realValueName}`, null);
150
149
  if (value !== null) {
151
150
  valueEntities[value] = key;
152
151
  }
153
-
154
152
  posEntities[pos] = entity;
155
- keyEntities[key] = entity; // Fill children
156
-
153
+ keyEntities[key] = entity;
154
+ // Fill children
157
155
  entity.parent = posEntities[parentPos];
158
-
159
156
  if (entity.parent) {
160
157
  entity.parent.children = entity.parent.children || [];
161
158
  entity.parent.children.push(entity);
162
159
  }
163
- });
160
+ }, keyMaps);
164
161
  return wrapper;
165
162
  }
166
163
  /* Get key by value */
167
-
168
164
  export function findKeysForValues(valueList, valueEntities) {
169
165
  let isMultiple = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : false;
170
-
171
166
  if (!isValid(valueList)) {
172
167
  return [];
173
168
  }
174
-
175
169
  if (!isMultiple && Array.isArray(valueList)) {
176
170
  valueList = valueList.length ? [valueList[0]] : [];
177
171
  } else if (!Array.isArray(valueList)) {
178
172
  valueList = [valueList];
179
173
  }
180
-
181
174
  if (_isEmpty(valueEntities)) {
182
175
  return valueList;
183
176
  }
184
-
185
177
  const res = [];
186
178
  valueList.forEach(val => {
187
179
  if (val in valueEntities) {
188
180
  res.push(valueEntities[val]);
181
+ } else {
182
+ // if val not in valueEntities, then value push to keys array
183
+ val && res.push(val);
189
184
  }
190
185
  });
191
186
  return res;
@@ -193,17 +188,14 @@ export function findKeysForValues(valueList, valueEntities) {
193
188
  export function findDescendantKeys(selectedKeys, options) {
194
189
  let self = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : true;
195
190
  const res = [];
196
-
197
191
  const findChild = item => {
198
192
  if (!item) {
199
193
  return;
200
194
  }
201
-
202
195
  const {
203
196
  children
204
197
  } = item;
205
198
  const hasChildren = isValid(children);
206
-
207
199
  if (hasChildren) {
208
200
  children.forEach(child => {
209
201
  res.push(child.key);
@@ -211,12 +203,10 @@ export function findDescendantKeys(selectedKeys, options) {
211
203
  });
212
204
  }
213
205
  };
214
-
215
206
  selectedKeys.forEach(item => {
216
207
  if (self) {
217
208
  res.push(item);
218
209
  }
219
-
220
210
  findChild(options[item]);
221
211
  });
222
212
  return res;
@@ -235,20 +225,16 @@ export function findChildKeys(keys, options) {
235
225
  return res;
236
226
  }
237
227
  /* istanbul ignore next */
238
-
239
228
  export function findLeafKeys(keys, options) {
240
229
  const res = [];
241
-
242
230
  const findChild = item => {
243
231
  if (!item) {
244
232
  return;
245
233
  }
246
-
247
234
  const {
248
235
  children
249
236
  } = item;
250
237
  const isLeaf = !isValid(children);
251
-
252
238
  if (isLeaf) {
253
239
  res.push(item.key);
254
240
  } else {
@@ -257,7 +243,6 @@ export function findLeafKeys(keys, options) {
257
243
  });
258
244
  }
259
245
  };
260
-
261
246
  keys.forEach(item => {
262
247
  findChild(options[item]);
263
248
  });
@@ -276,36 +261,31 @@ export function findSiblingKeys(selectedKeys, options) {
276
261
  }
277
262
  export function findAncestorKeys(selectedKeys, options) {
278
263
  let self = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : true;
279
- const res = []; // Recursively find the parent element
280
-
264
+ const res = [];
265
+ // Recursively find the parent element
281
266
  const findPar = item => {
282
267
  if (item.parent) {
283
268
  res.push(item.parent.key);
284
269
  findPar(item.parent);
285
270
  }
286
271
  };
287
-
288
272
  selectedKeys.forEach(item => {
289
273
  options[item] && findPar(options[item]);
290
-
291
274
  if (self) {
292
275
  res.push(item);
293
276
  }
294
277
  });
295
278
  return res;
296
279
  }
297
-
298
280
  function getSortedKeyList(keyList, keyEntities) {
299
281
  const levelMap = {};
300
282
  keyList.forEach(key => {
301
283
  if (!keyEntities[key]) {
302
284
  return;
303
285
  }
304
-
305
286
  const {
306
287
  level
307
288
  } = keyEntities[key];
308
-
309
289
  if (levelMap[level]) {
310
290
  levelMap[level].push(key);
311
291
  } else {
@@ -314,7 +294,6 @@ function getSortedKeyList(keyList, keyEntities) {
314
294
  });
315
295
  return levelMap;
316
296
  }
317
-
318
297
  export function calcCheckedKeys(values, keyEntities) {
319
298
  const keyList = Array.isArray(values) ? values : [values];
320
299
  const descendantKeys = findDescendantKeys(keyList, keyEntities, true);
@@ -323,76 +302,63 @@ export function calcCheckedKeys(values, keyEntities) {
323
302
  * their descendants must be checked. That is to say, if the descendant nodes have
324
303
  * disabled+unchecked nodes, their ancestor nodes will definitely not be checked
325
304
  */
326
-
327
305
  const checkedKeys = new Set([...descendantKeys]);
328
306
  let halfCheckedKeys = new Set([]);
329
307
  let visited = [];
330
308
  const levelMap = getSortedKeyList(keyList, keyEntities);
331
-
332
309
  const calcCurrLevel = node => {
333
310
  const {
334
311
  key,
335
312
  parent,
336
313
  level
337
- } = node; // If the node does not have a parent node, or the node has been processed just now, no processing is done
338
-
314
+ } = node;
315
+ // If the node does not have a parent node, or the node has been processed just now, no processing is done
339
316
  if (!parent || visited.includes(key)) {
340
317
  return;
341
318
  }
342
-
343
- const siblingKeys = findSiblingKeys([key], keyEntities); // visited for caching to avoid double counting
344
-
319
+ const siblingKeys = findSiblingKeys([key], keyEntities);
320
+ // visited for caching to avoid double counting
345
321
  visited = [...visited, ...siblingKeys];
346
322
  const allChecked = siblingKeys.every(siblingKey => checkedKeys.has(siblingKey));
347
-
348
323
  if (!allChecked) {
349
324
  const ancestorKeys = findAncestorKeys([key], keyEntities, false);
350
325
  halfCheckedKeys = new Set([...halfCheckedKeys, ...ancestorKeys]);
351
326
  } else {
352
- checkedKeys.add(parent.key); // IMPORTANT! parent level may not exist in original level map; if add to the end directly may destroy the hierarchical order
353
-
327
+ checkedKeys.add(parent.key);
328
+ // IMPORTANT! parent level may not exist in original level map; if add to the end directly may destroy the hierarchical order
354
329
  if (level - 1 in levelMap && level) {
355
330
  levelMap[level - 1].push(parent.key);
356
331
  } else {
357
332
  levelMap[level - 1] = [parent.key];
358
333
  }
359
334
  }
360
- }; // Loop keyList from deepest Level to topLevel, bottom up
361
-
362
-
335
+ };
336
+ // Loop keyList from deepest Level to topLevel, bottom up
363
337
  while (!_isEmpty(levelMap)) {
364
338
  const maxLevel = _max(Object.keys(levelMap).map(key => Number(key)));
365
-
366
339
  levelMap[maxLevel].forEach(key => calcCurrLevel(keyEntities[key]));
367
340
  delete levelMap[maxLevel];
368
341
  }
369
-
370
342
  return {
371
343
  checkedKeys,
372
344
  halfCheckedKeys
373
345
  };
374
346
  }
375
347
  /* Calculate the expanded node by key */
376
-
377
348
  export function calcExpandedKeys() {
378
349
  let keyList = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : [];
379
350
  let keyEntities = arguments.length > 1 ? arguments[1] : undefined;
380
351
  let autoExpandParent = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : true;
381
-
382
352
  if (!Array.isArray(keyList)) {
383
353
  keyList = [keyList];
384
354
  }
385
-
386
355
  if (autoExpandParent) {
387
356
  const ancestorKeys = findAncestorKeys(keyList, keyEntities, true);
388
357
  return new Set(ancestorKeys);
389
358
  }
390
-
391
359
  return new Set(keyList);
392
360
  }
393
361
  /* Calculate the expanded node by value */
394
- // eslint-disable-next-line max-len
395
-
396
362
  export function calcExpandedKeysForValues(value, keyEntities, isMultiple, valueEntities) {
397
363
  const keys = findKeysForValues(value, valueEntities, isMultiple);
398
364
  return new Set(findAncestorKeys(keys, keyEntities, false));
@@ -401,23 +367,19 @@ export function calcMotionKeys(oldKeySet, newKeySet, keyEntities) {
401
367
  let motionType = 'show';
402
368
  const oldKeys = [...oldKeySet];
403
369
  const newKeys = [...newKeySet];
404
-
405
370
  if (Math.abs(oldKeys.length - newKeys.length) !== 1) {
406
371
  return {
407
372
  motionType,
408
373
  motionKeys: []
409
374
  };
410
375
  }
411
-
412
376
  let diffKeys = [];
413
-
414
377
  if (oldKeys.length > newKeys.length) {
415
378
  motionType = 'hide';
416
379
  diffKeys = _difference(oldKeys, newKeys);
417
380
  } else {
418
381
  diffKeys = _difference(newKeys, oldKeys);
419
382
  }
420
-
421
383
  return {
422
384
  motionType: diffKeys.length === 1 ? motionType : 'show',
423
385
  motionKeys: diffKeys.length === 1 ? findDescendantKeys(diffKeys, keyEntities, false) : []
@@ -425,29 +387,24 @@ export function calcMotionKeys(oldKeySet, newKeySet, keyEntities) {
425
387
  }
426
388
  /**
427
389
  * @returns whether option includes sugInput.
428
- * When filterTreeNode is a function,returns the result of filterTreeNode which called with (sugInput, option).
390
+ * When filterTreeNode is a function,returns the result of filterTreeNode which called with (sugInput, target, option).
429
391
  */
430
-
431
392
  export function filter(sugInput, option, filterTreeNode, filterProps) {
432
393
  if (!filterTreeNode) {
433
394
  return true;
434
395
  }
435
-
436
396
  let filterFn = filterTreeNode;
437
397
  let target = option;
438
-
439
398
  if (typeof filterTreeNode === 'boolean') {
440
399
  filterFn = (targetVal, val) => {
441
400
  const input = targetVal.toLowerCase();
442
401
  return val.toString().toLowerCase().includes(input);
443
402
  };
444
403
  }
445
-
446
404
  if (filterProps) {
447
405
  target = option[filterProps];
448
406
  }
449
-
450
- return filterFn(sugInput, target);
407
+ return filterFn(sugInput, target, option);
451
408
  }
452
409
  export function normalizedArr(val) {
453
410
  if (!Array.isArray(val)) {
@@ -456,25 +413,27 @@ export function normalizedArr(val) {
456
413
  return val;
457
414
  }
458
415
  }
416
+ // flag is used to determine whether to return when the key does not belong to the keys in keyEntities
417
+ // export function normalizeKeyList(keyList: any, keyEntities: KeyEntities, leafOnly = false) {
459
418
  export function normalizeKeyList(keyList, keyEntities) {
460
419
  let leafOnly = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : false;
420
+ let flag = arguments.length > 3 ? arguments[3] : undefined;
461
421
  const res = [];
462
422
  const keyListSet = new Set(keyList);
463
-
464
423
  if (!leafOnly) {
465
424
  keyList.forEach(key => {
466
425
  if (!keyEntities[key]) {
426
+ if (flag) {
427
+ res.push(key);
428
+ }
467
429
  return;
468
430
  }
469
-
470
431
  const {
471
432
  parent
472
433
  } = keyEntities[key];
473
-
474
434
  if (parent && keyListSet.has(parent.key)) {
475
435
  return;
476
436
  }
477
-
478
437
  res.push(key);
479
438
  });
480
439
  } else {
@@ -482,49 +441,43 @@ export function normalizeKeyList(keyList, keyEntities) {
482
441
  if (keyEntities[key] && !isValid(keyEntities[key].children)) {
483
442
  res.push(key);
484
443
  }
444
+ // when key is not in keyEntities, if flag is true, key should be push in res
445
+ if (!keyEntities[key] && flag) {
446
+ res.push(key);
447
+ }
485
448
  });
486
449
  }
487
-
488
450
  return res;
489
451
  }
490
452
  export function getMotionKeys(eventKey, expandedKeys, keyEntities) {
491
453
  const res = [];
492
-
493
454
  const getChild = itemKey => {
494
455
  keyEntities[itemKey].children && keyEntities[itemKey].children.forEach(item => {
495
456
  const {
496
457
  key
497
458
  } = item;
498
459
  res.push(key);
499
-
500
460
  if (expandedKeys.has(key)) {
501
461
  getChild(key);
502
462
  }
503
463
  });
504
464
  };
505
-
506
465
  getChild(eventKey);
507
466
  return res;
508
- } // eslint-disable-next-line max-len
509
-
467
+ }
510
468
  export function calcCheckedKeysForChecked(key, keyEntities, checkedKeys, halfCheckedKeys) {
511
469
  const descendantKeys = findDescendantKeys([key], keyEntities, true);
512
470
  const nodeItem = keyEntities[key];
513
471
  checkedKeys = new Set([...checkedKeys, key]);
514
-
515
472
  const calcCurrLevel = node => {
516
473
  if (!node.parent) {
517
474
  return;
518
- } // eslint-disable-next-line @typescript-eslint/no-shadow
519
-
520
-
475
+ }
521
476
  const {
522
477
  key
523
478
  } = node;
524
- const siblingKeys = findSiblingKeys([key], keyEntities); // eslint-disable-next-line @typescript-eslint/no-shadow
525
-
479
+ const siblingKeys = findSiblingKeys([key], keyEntities);
526
480
  const allChecked = siblingKeys.every(key => checkedKeys.has(key));
527
-
528
481
  if (!allChecked) {
529
482
  const ancestorKeys = findAncestorKeys([key], keyEntities, false);
530
483
  halfCheckedKeys = new Set([...halfCheckedKeys, ...ancestorKeys]);
@@ -534,14 +487,12 @@ export function calcCheckedKeysForChecked(key, keyEntities, checkedKeys, halfChe
534
487
  calcCurrLevel(par);
535
488
  }
536
489
  };
537
-
538
490
  calcCurrLevel(nodeItem);
539
491
  return {
540
492
  checkedKeys: new Set([...checkedKeys, ...descendantKeys]),
541
493
  halfCheckedKeys
542
494
  };
543
- } // eslint-disable-next-line max-len
544
-
495
+ }
545
496
  export function calcCheckedKeysForUnchecked(key, keyEntities, checkedKeys, halfCheckedKeys) {
546
497
  const descendantKeys = findDescendantKeys([key], keyEntities, true);
547
498
  const nodeItem = keyEntities[key];
@@ -549,55 +500,47 @@ export function calcCheckedKeysForUnchecked(key, keyEntities, checkedKeys, halfC
549
500
  if (checkedKeys.has(descendantKey)) {
550
501
  checkedKeys.delete(descendantKey);
551
502
  }
552
-
553
503
  if (halfCheckedKeys.has(descendantKey)) {
554
504
  halfCheckedKeys.delete(descendantKey);
555
505
  }
556
506
  });
557
-
558
507
  const calcCurrLevel = node => {
559
- const par = node.parent; // no parent
560
-
508
+ const par = node.parent;
509
+ // no parent
561
510
  if (!par) {
562
511
  return;
563
- } // Has a parent node, and the parent node is not checked or halfChecked
564
-
565
-
512
+ }
513
+ // Has a parent node, and the parent node is not checked or halfChecked
566
514
  if (!checkedKeys.has(par.key) && !halfCheckedKeys.has(par.key)) {
567
515
  return;
568
- } // Has a parent node, and the parent node is checked or halfChecked
569
- // eslint-disable-next-line @typescript-eslint/no-shadow
570
-
571
-
516
+ }
517
+ // Has a parent node, and the parent node is checked or halfChecked
572
518
  const {
573
519
  key
574
520
  } = node;
575
- const siblingKeys = findSiblingKeys([key], keyEntities); // eslint-disable-next-line @typescript-eslint/no-shadow
576
-
521
+ const siblingKeys = findSiblingKeys([key], keyEntities);
577
522
  const anyChecked = siblingKeys.some(key => checkedKeys.has(key) || halfCheckedKeys.has(key));
578
- const ancestorKeys = findAncestorKeys([key], keyEntities, false); // If there is checked or halfChecked in the sibling node, you need to change the parent node to halfChecked
579
-
523
+ const ancestorKeys = findAncestorKeys([key], keyEntities, false);
524
+ // If there is checked or halfChecked in the sibling node, you need to change the parent node to halfChecked
580
525
  if (anyChecked) {
581
526
  ancestorKeys.forEach(itemKey => {
582
527
  if (checkedKeys.has(itemKey)) {
583
528
  checkedKeys.delete(itemKey);
584
529
  halfCheckedKeys.add(itemKey);
585
530
  }
586
- }); // If there is no checked or halfChecked in the sibling node, you need to change the parent node to unchecked
531
+ });
532
+ // If there is no checked or halfChecked in the sibling node, you need to change the parent node to unchecked
587
533
  } else {
588
534
  if (checkedKeys.has(par.key)) {
589
535
  checkedKeys.delete(par.key);
590
536
  }
591
-
592
537
  if (halfCheckedKeys.has(par.key)) {
593
538
  halfCheckedKeys.delete(par.key);
594
539
  }
595
-
596
540
  calcCurrLevel(par);
597
541
  }
598
542
  };
599
-
600
- calcCurrLevel(nodeItem);
543
+ nodeItem && calcCurrLevel(nodeItem);
601
544
  return {
602
545
  checkedKeys,
603
546
  halfCheckedKeys
@@ -611,40 +554,39 @@ export function filterTreeData(info) {
611
554
  treeData,
612
555
  filterTreeNode,
613
556
  filterProps,
614
- prevExpandedKeys
557
+ prevExpandedKeys,
558
+ keyMaps
615
559
  } = info;
616
560
  let filteredOptsKeys = [];
617
561
  filteredOptsKeys = Object.values(keyEntities).filter(item => filter(inputValue, item.data, filterTreeNode, filterProps)).map(item => item.key);
618
562
  let expandedOptsKeys = findAncestorKeys(filteredOptsKeys, keyEntities, false);
619
-
620
563
  if (prevExpandedKeys.length) {
621
564
  const prevExpandedValidKeys = prevExpandedKeys.filter(key => Boolean(keyEntities[key]));
622
565
  expandedOptsKeys = expandedOptsKeys.concat(prevExpandedValidKeys);
623
566
  }
624
-
625
567
  const shownChildKeys = findDescendantKeys(filteredOptsKeys, keyEntities, true);
626
568
  const filteredShownKeys = new Set([...shownChildKeys, ...expandedOptsKeys]);
627
- const flattenNodes = flattenTreeData(treeData, new Set(expandedOptsKeys), showFilteredOnly && filteredShownKeys);
569
+ const flattenNodes = flattenTreeData(treeData, new Set(expandedOptsKeys), keyMaps, showFilteredOnly && filteredShownKeys);
628
570
  return {
629
571
  flattenNodes,
630
572
  filteredKeys: new Set(filteredOptsKeys),
631
573
  filteredExpandedKeys: new Set(expandedOptsKeys),
632
574
  filteredShownKeys
633
575
  };
634
- } // return data.value if data.value exist else fall back to key
635
-
636
- export function getValueOrKey(data) {
576
+ }
577
+ // return data.value if data.value exist else fall back to key
578
+ export function getValueOrKey(data, keyMaps) {
579
+ const valueName = _get(keyMaps, 'value', 'value');
580
+ const keyName = _get(keyMaps, 'key', 'key');
637
581
  if (Array.isArray(data)) {
638
- return data.map(item => _get(item, 'value', item.key));
582
+ return data.map(item => _get(item, valueName, item[keyName]));
639
583
  }
640
-
641
- return _get(data, 'value', data.key);
584
+ return _get(data, valueName, data[keyName]);
642
585
  }
643
586
  /* Convert value to string */
644
-
645
- export function normalizeValue(value, withObject) {
587
+ export function normalizeValue(value, withObject, keyMaps) {
646
588
  if (withObject && isValid(value)) {
647
- return getValueOrKey(value);
589
+ return getValueOrKey(value, keyMaps);
648
590
  } else {
649
591
  return value;
650
592
  }
@@ -653,8 +595,9 @@ export function updateKeys(keySet, keyEntities) {
653
595
  const keyArr = [...keySet];
654
596
  return keyArr.filter(key => key in keyEntities);
655
597
  }
656
- export function calcDisabledKeys(keyEntities) {
657
- const disabledKeys = Object.keys(keyEntities).filter(key => keyEntities[key].data.disabled);
598
+ export function calcDisabledKeys(keyEntities, keyMaps) {
599
+ const disabledName = _get(keyMaps, 'disabled', 'disabled');
600
+ const disabledKeys = Object.keys(keyEntities).filter(key => keyEntities[key].data[disabledName]);
658
601
  const {
659
602
  checkedKeys
660
603
  } = calcCheckedKeys(disabledKeys, keyEntities);
@@ -668,23 +611,21 @@ export function calcDropRelativePosition(event, treeNode) {
668
611
  top,
669
612
  bottom,
670
613
  height
671
- } = treeNode.nodeInstance.getBoundingClientRect(); // eslint-disable-next-line @typescript-eslint/restrict-plus-operands
672
-
614
+ } = treeNode.nodeInstance.getBoundingClientRect();
615
+ // eslint-disable-next-line @typescript-eslint/restrict-plus-operands
673
616
  if (clientY <= top + height * DRAG_OFFSET) {
674
617
  return -1;
675
618
  }
676
-
677
619
  if (clientY >= bottom - height * DRAG_OFFSET) {
678
620
  return 1;
679
621
  }
680
-
681
622
  return 0;
682
623
  }
683
624
  export function getDragNodesKeys(key, keyEntities) {
684
625
  return findDescendantKeys([key], keyEntities, true);
685
626
  }
686
627
  export function calcDropActualPosition(pos, relativeDropPos) {
687
- const posArr = pos.split('-'); // eslint-disable-next-line @typescript-eslint/restrict-plus-operands
688
-
628
+ const posArr = pos.split('-');
629
+ // eslint-disable-next-line @typescript-eslint/restrict-plus-operands
689
630
  return relativeDropPos + Number(posArr[posArr.length - 1]);
690
631
  }