@douyinfe/semi-foundation 2.36.0-alpha.0 → 2.36.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (477) hide show
  1. package/calendar/calendar.scss +1 -1
  2. package/calendar/foundation.ts +2 -1
  3. package/datePicker/_utils/getYears.ts +8 -4
  4. package/datePicker/foundation.ts +1 -1
  5. package/datePicker/monthsGridFoundation.ts +2 -1
  6. package/datePicker/yearAndMonthFoundation.ts +3 -1
  7. package/lib/cjs/anchor/constants.js +0 -2
  8. package/lib/cjs/anchor/foundation.js +10 -73
  9. package/lib/cjs/anchor/linkFoundation.js +4 -16
  10. package/lib/cjs/autoComplete/constants.js +0 -3
  11. package/lib/cjs/autoComplete/foundation.d.ts +1 -1
  12. package/lib/cjs/autoComplete/foundation.js +25 -139
  13. package/lib/cjs/autoComplete/optionFoundation.js +4 -14
  14. package/lib/cjs/avatar/constants.js +0 -2
  15. package/lib/cjs/avatar/foundation.js +0 -17
  16. package/lib/cjs/backtop/constants.js +0 -2
  17. package/lib/cjs/backtop/foundation.d.ts +2 -2
  18. package/lib/cjs/backtop/foundation.js +0 -21
  19. package/lib/cjs/badge/constants.js +0 -2
  20. package/lib/cjs/banner/constants.js +0 -2
  21. package/lib/cjs/banner/foundation.js +0 -7
  22. package/lib/cjs/base/constants.js +2 -4
  23. package/lib/cjs/base/foundation.d.ts +1 -1
  24. package/lib/cjs/base/foundation.js +12 -46
  25. package/lib/cjs/base/index.js +0 -3
  26. package/lib/cjs/breadcrumb/constants.js +0 -2
  27. package/lib/cjs/breadcrumb/foundation.js +1 -12
  28. package/lib/cjs/breadcrumb/itemFoundation.js +0 -7
  29. package/lib/cjs/button/constants.js +0 -2
  30. package/lib/cjs/calendar/calendar.css +2 -2
  31. package/lib/cjs/calendar/calendar.scss +1 -1
  32. package/lib/cjs/calendar/constants.js +0 -2
  33. package/lib/cjs/calendar/eventUtil.d.ts +1 -1
  34. package/lib/cjs/calendar/eventUtil.js +2 -74
  35. package/lib/cjs/calendar/foundation.d.ts +2 -2
  36. package/lib/cjs/calendar/foundation.js +28 -123
  37. package/lib/cjs/card/constants.js +0 -2
  38. package/lib/cjs/carousel/constants.js +0 -2
  39. package/lib/cjs/carousel/foundation.js +2 -52
  40. package/lib/cjs/cascader/constants.js +0 -3
  41. package/lib/cjs/cascader/foundation.d.ts +4 -4
  42. package/lib/cjs/cascader/foundation.js +28 -242
  43. package/lib/cjs/cascader/util.js +6 -24
  44. package/lib/cjs/checkbox/checkboxFoundation.js +2 -38
  45. package/lib/cjs/checkbox/checkboxGroupFoundation.js +2 -23
  46. package/lib/cjs/checkbox/constants.js +0 -2
  47. package/lib/cjs/collapse/constants.js +0 -2
  48. package/lib/cjs/collapse/foundation.d.ts +1 -1
  49. package/lib/cjs/collapse/foundation.js +2 -13
  50. package/lib/cjs/collapsible/constants.js +0 -2
  51. package/lib/cjs/collapsible/foundation.js +0 -9
  52. package/lib/cjs/datePicker/_utils/formatter.js +4 -10
  53. package/lib/cjs/datePicker/_utils/getDayOfWeek.d.ts +1 -1
  54. package/lib/cjs/datePicker/_utils/getDayOfWeek.js +0 -4
  55. package/lib/cjs/datePicker/_utils/getDefaultFormatToken.js +0 -5
  56. package/lib/cjs/datePicker/_utils/getDefaultPickerDate.d.ts +1 -1
  57. package/lib/cjs/datePicker/_utils/getDefaultPickerDate.js +0 -15
  58. package/lib/cjs/datePicker/_utils/getFullDateOffset.js +0 -7
  59. package/lib/cjs/datePicker/_utils/getInsetInputFormatToken.js +0 -5
  60. package/lib/cjs/datePicker/_utils/getInsetInputValueFromInsetInputStr.js +0 -6
  61. package/lib/cjs/datePicker/_utils/getMonthTable.d.ts +1 -1
  62. package/lib/cjs/datePicker/_utils/getMonthTable.js +3 -14
  63. package/lib/cjs/datePicker/_utils/getMonthsInYear.js +0 -2
  64. package/lib/cjs/datePicker/_utils/getYears.d.ts +1 -1
  65. package/lib/cjs/datePicker/_utils/getYears.js +9 -7
  66. package/lib/cjs/datePicker/_utils/index.js +0 -13
  67. package/lib/cjs/datePicker/_utils/isAfter.js +0 -4
  68. package/lib/cjs/datePicker/_utils/isBefore.js +0 -4
  69. package/lib/cjs/datePicker/_utils/isBetween.js +0 -4
  70. package/lib/cjs/datePicker/_utils/isDate.js +0 -1
  71. package/lib/cjs/datePicker/_utils/isSameDay.js +0 -4
  72. package/lib/cjs/datePicker/_utils/isTimestamp.js +0 -4
  73. package/lib/cjs/datePicker/_utils/isUnixTimestamp.js +0 -4
  74. package/lib/cjs/datePicker/_utils/isValidDate.js +0 -1
  75. package/lib/cjs/datePicker/_utils/isValidTimeZone.js +0 -1
  76. package/lib/cjs/datePicker/_utils/isWithinInterval.js +0 -4
  77. package/lib/cjs/datePicker/_utils/parser.js +0 -10
  78. package/lib/cjs/datePicker/constants.js +0 -3
  79. package/lib/cjs/datePicker/foundation.d.ts +25 -25
  80. package/lib/cjs/datePicker/foundation.js +22 -333
  81. package/lib/cjs/datePicker/inputFoundation.d.ts +3 -3
  82. package/lib/cjs/datePicker/inputFoundation.js +5 -86
  83. package/lib/cjs/datePicker/monthFoundation.d.ts +1 -1
  84. package/lib/cjs/datePicker/monthFoundation.js +3 -28
  85. package/lib/cjs/datePicker/monthsGridFoundation.d.ts +5 -4
  86. package/lib/cjs/datePicker/monthsGridFoundation.js +43 -238
  87. package/lib/cjs/datePicker/yearAndMonthFoundation.d.ts +3 -1
  88. package/lib/cjs/datePicker/yearAndMonthFoundation.js +12 -38
  89. package/lib/cjs/descriptions/constants.js +0 -2
  90. package/lib/cjs/divider/constants.js +0 -2
  91. package/lib/cjs/dropdown/constants.js +0 -3
  92. package/lib/cjs/dropdown/foundation.js +4 -23
  93. package/lib/cjs/dropdown/menuFoundation.js +8 -27
  94. package/lib/cjs/empty/constants.js +0 -2
  95. package/lib/cjs/form/constants.js +0 -2
  96. package/lib/cjs/form/foundation.js +75 -206
  97. package/lib/cjs/form/interface.d.ts +5 -5
  98. package/lib/cjs/form/utils.js +47 -77
  99. package/lib/cjs/grid/constants.js +0 -2
  100. package/lib/cjs/highlight/constants.js +0 -2
  101. package/lib/cjs/icons/constants.js +0 -2
  102. package/lib/cjs/image/constants.js +0 -2
  103. package/lib/cjs/image/imageFoundation.js +4 -18
  104. package/lib/cjs/image/previewFooterFoundation.js +0 -13
  105. package/lib/cjs/image/previewFoundation.js +0 -11
  106. package/lib/cjs/image/previewImageFoundation.js +6 -80
  107. package/lib/cjs/image/previewInnerFoundation.js +12 -77
  108. package/lib/cjs/image/utils.js +0 -14
  109. package/lib/cjs/input/constants.js +0 -2
  110. package/lib/cjs/input/foundation.js +17 -101
  111. package/lib/cjs/input/textareaFoundation.js +20 -85
  112. package/lib/cjs/input/util/calculateNodeHeight.js +6 -18
  113. package/lib/cjs/input/util/getSizingData.js +7 -11
  114. package/lib/cjs/inputNumber/constants.js +0 -2
  115. package/lib/cjs/inputNumber/foundation.js +29 -192
  116. package/lib/cjs/layout/constants.js +0 -2
  117. package/lib/cjs/list/constants.js +0 -2
  118. package/lib/cjs/modal/constants.js +0 -2
  119. package/lib/cjs/modal/modalContentFoundation.js +0 -20
  120. package/lib/cjs/modal/modalFoundation.d.ts +2 -2
  121. package/lib/cjs/modal/modalFoundation.js +2 -22
  122. package/lib/cjs/navigation/NavItem.js +0 -10
  123. package/lib/cjs/navigation/constants.js +0 -3
  124. package/lib/cjs/navigation/foundation.js +3 -67
  125. package/lib/cjs/navigation/itemFoundation.d.ts +0 -2
  126. package/lib/cjs/navigation/itemFoundation.js +3 -21
  127. package/lib/cjs/navigation/navigation.css +7 -77
  128. package/lib/cjs/navigation/navigation.scss +7 -119
  129. package/lib/cjs/navigation/subNavFoundation.d.ts +0 -2
  130. package/lib/cjs/navigation/subNavFoundation.js +4 -40
  131. package/lib/cjs/notification/constants.js +0 -3
  132. package/lib/cjs/notification/notificationFoundation.d.ts +3 -3
  133. package/lib/cjs/notification/notificationFoundation.js +0 -16
  134. package/lib/cjs/notification/notificationListFoundation.js +7 -17
  135. package/lib/cjs/overflowList/constants.js +0 -2
  136. package/lib/cjs/overflowList/foundation.js +11 -41
  137. package/lib/cjs/pagination/constants.js +0 -2
  138. package/lib/cjs/pagination/foundation.d.ts +3 -3
  139. package/lib/cjs/pagination/foundation.js +21 -90
  140. package/lib/cjs/popconfirm/constants.js +0 -2
  141. package/lib/cjs/popconfirm/popconfirmFoundation.js +1 -21
  142. package/lib/cjs/popover/constants.js +0 -3
  143. package/lib/cjs/progress/constants.js +0 -2
  144. package/lib/cjs/progress/generates.d.ts +2 -2
  145. package/lib/cjs/progress/generates.js +19 -60
  146. package/lib/cjs/radio/constants.js +0 -2
  147. package/lib/cjs/radio/radioFoundation.js +0 -14
  148. package/lib/cjs/radio/radioGroupFoundation.js +4 -23
  149. package/lib/cjs/radio/radioInnerFoundation.js +2 -19
  150. package/lib/cjs/rating/constants.js +0 -2
  151. package/lib/cjs/rating/foundation.js +11 -61
  152. package/lib/cjs/scrollList/constants.js +0 -2
  153. package/lib/cjs/scrollList/foundation.js +0 -4
  154. package/lib/cjs/scrollList/itemFoundation.js +8 -61
  155. package/lib/cjs/scrollList/scrollTo.js +2 -5
  156. package/lib/cjs/select/constants.js +0 -3
  157. package/lib/cjs/select/foundation.d.ts +2 -2
  158. package/lib/cjs/select/foundation.js +122 -425
  159. package/lib/cjs/select/optionFoundation.js +4 -14
  160. package/lib/cjs/sideSheet/constants.js +0 -2
  161. package/lib/cjs/sideSheet/sideSheetFoundation.js +0 -18
  162. package/lib/cjs/skeleton/constants.js +0 -2
  163. package/lib/cjs/slider/constants.js +0 -2
  164. package/lib/cjs/slider/foundation.d.ts +1 -1
  165. package/lib/cjs/slider/foundation.js +25 -204
  166. package/lib/cjs/space/constants.js +0 -2
  167. package/lib/cjs/spin/constants.js +0 -2
  168. package/lib/cjs/spin/foundation.js +3 -13
  169. package/lib/cjs/steps/bacisSteps.scss +238 -287
  170. package/lib/cjs/steps/constants.js +0 -2
  171. package/lib/cjs/steps/fillSteps.scss +142 -153
  172. package/lib/cjs/steps/navSteps.scss +40 -61
  173. package/lib/cjs/steps/steps.css +17 -381
  174. package/lib/cjs/switch/constants.js +0 -2
  175. package/lib/cjs/switch/foundation.js +2 -18
  176. package/lib/cjs/table/bodyFoundation.js +2 -34
  177. package/lib/cjs/table/cellFoundation.js +0 -5
  178. package/lib/cjs/table/constants.js +7 -8
  179. package/lib/cjs/table/foundation.d.ts +17 -14
  180. package/lib/cjs/table/foundation.js +72 -302
  181. package/lib/cjs/table/table.css +6 -0
  182. package/lib/cjs/table/table.scss +12 -0
  183. package/lib/cjs/table/tableRowFoundation.js +0 -11
  184. package/lib/cjs/table/tableSelectionCellFoundation.js +0 -6
  185. package/lib/cjs/table/utils.d.ts +2 -2
  186. package/lib/cjs/table/utils.js +5 -118
  187. package/lib/cjs/tabs/constants.js +0 -2
  188. package/lib/cjs/tabs/foundation.js +2 -40
  189. package/lib/cjs/tabs/tabs.css +14 -14
  190. package/lib/cjs/tabs/tabs.scss +16 -14
  191. package/lib/cjs/tag/constants.js +1 -2
  192. package/lib/cjs/tagInput/constants.js +0 -2
  193. package/lib/cjs/tagInput/foundation.d.ts +4 -4
  194. package/lib/cjs/tagInput/foundation.js +4 -94
  195. package/lib/cjs/tagInput/utils/getSplitedArray.js +0 -11
  196. package/lib/cjs/timePicker/ComboxFoundation.js +4 -39
  197. package/lib/cjs/timePicker/constants.js +0 -3
  198. package/lib/cjs/timePicker/foundation.d.ts +2 -2
  199. package/lib/cjs/timePicker/foundation.js +6 -102
  200. package/lib/cjs/timePicker/inputFoundation.js +6 -25
  201. package/lib/cjs/timePicker/utils/index.js +6 -45
  202. package/lib/cjs/timePicker/utils/localeDate.js +0 -10
  203. package/lib/cjs/timeline/constants.js +0 -2
  204. package/lib/cjs/timeline/timeline.css +0 -36
  205. package/lib/cjs/timeline/timeline.scss +46 -96
  206. package/lib/cjs/toast/constants.js +0 -3
  207. package/lib/cjs/toast/toastFoundation.d.ts +3 -3
  208. package/lib/cjs/toast/toastFoundation.js +0 -14
  209. package/lib/cjs/toast/toastListFoundation.js +4 -22
  210. package/lib/cjs/tooltip/constants.js +0 -2
  211. package/lib/cjs/tooltip/foundation.d.ts +1 -1
  212. package/lib/cjs/tooltip/foundation.js +63 -291
  213. package/lib/cjs/transfer/constants.js +0 -2
  214. package/lib/cjs/transfer/foundation.d.ts +1 -1
  215. package/lib/cjs/transfer/foundation.js +4 -68
  216. package/lib/cjs/transfer/transferUtils.js +5 -27
  217. package/lib/cjs/tree/constants.js +0 -2
  218. package/lib/cjs/tree/foundation.d.ts +3 -3
  219. package/lib/cjs/tree/foundation.js +34 -150
  220. package/lib/cjs/tree/treeUtil.js +54 -173
  221. package/lib/cjs/treeSelect/constants.js +0 -2
  222. package/lib/cjs/treeSelect/foundation.d.ts +7 -7
  223. package/lib/cjs/treeSelect/foundation.js +18 -192
  224. package/lib/cjs/typography/constants.d.ts +1 -0
  225. package/lib/cjs/typography/constants.js +1 -2
  226. package/lib/cjs/typography/formatNumeral.d.ts +3 -3
  227. package/lib/cjs/typography/formatNumeral.js +16 -32
  228. package/lib/cjs/typography/typography.css +120 -0
  229. package/lib/cjs/typography/typography.scss +131 -6
  230. package/lib/cjs/typography/variables.scss +48 -0
  231. package/lib/cjs/upload/constants.js +0 -2
  232. package/lib/cjs/upload/foundation.d.ts +5 -5
  233. package/lib/cjs/upload/foundation.js +36 -245
  234. package/lib/cjs/upload/utils.js +10 -29
  235. package/lib/cjs/utils/Event.js +2 -21
  236. package/lib/cjs/utils/FocusHandle.d.ts +1 -1
  237. package/lib/cjs/utils/FocusHandle.js +6 -35
  238. package/lib/cjs/utils/Logger.js +0 -21
  239. package/lib/cjs/utils/Store.js +0 -10
  240. package/lib/cjs/utils/a11y.js +18 -43
  241. package/lib/cjs/utils/array.d.ts +1 -1
  242. package/lib/cjs/utils/array.js +0 -7
  243. package/lib/cjs/utils/arrayMove.js +0 -1
  244. package/lib/cjs/utils/classnames.js +0 -12
  245. package/lib/cjs/utils/date-fns-extra.js +0 -35
  246. package/lib/cjs/utils/dom.d.ts +1 -1
  247. package/lib/cjs/utils/dom.js +0 -13
  248. package/lib/cjs/utils/function.js +0 -1
  249. package/lib/cjs/utils/getDataAttr.js +0 -2
  250. package/lib/cjs/utils/getHighlight.js +5 -26
  251. package/lib/cjs/utils/getMotionObjFromProps.js +0 -12
  252. package/lib/cjs/utils/index.js +0 -4
  253. package/lib/cjs/utils/isBothNaN.js +0 -2
  254. package/lib/cjs/utils/isElement.js +0 -1
  255. package/lib/cjs/utils/isEnterPress.js +0 -5
  256. package/lib/cjs/utils/isEscPress.js +0 -5
  257. package/lib/cjs/utils/isNullOrUndefined.js +0 -1
  258. package/lib/cjs/utils/isNumber.js +0 -1
  259. package/lib/cjs/utils/isObject.js +0 -1
  260. package/lib/cjs/utils/isPromise.js +0 -3
  261. package/lib/cjs/utils/isString.js +0 -1
  262. package/lib/cjs/utils/keyCode.js +0 -105
  263. package/lib/cjs/utils/log.js +0 -5
  264. package/lib/cjs/utils/number.js +0 -2
  265. package/lib/cjs/utils/object.d.ts +4 -4
  266. package/lib/cjs/utils/object.js +12 -34
  267. package/lib/cjs/utils/set.js +0 -8
  268. package/lib/cjs/utils/shallowEqualObjects.js +0 -7
  269. package/lib/cjs/utils/touchPolyfill.js +0 -7
  270. package/lib/cjs/utils/type.d.ts +3 -3
  271. package/lib/cjs/utils/uuid.js +2 -9
  272. package/lib/cjs/utils/warning.js +0 -1
  273. package/lib/es/anchor/foundation.js +10 -66
  274. package/lib/es/anchor/linkFoundation.js +4 -12
  275. package/lib/es/autoComplete/foundation.d.ts +1 -1
  276. package/lib/es/autoComplete/foundation.js +24 -132
  277. package/lib/es/autoComplete/optionFoundation.js +4 -10
  278. package/lib/es/avatar/foundation.js +0 -12
  279. package/lib/es/backtop/foundation.d.ts +2 -2
  280. package/lib/es/backtop/foundation.js +0 -16
  281. package/lib/es/banner/foundation.js +0 -3
  282. package/lib/es/base/constants.js +2 -2
  283. package/lib/es/base/foundation.d.ts +1 -1
  284. package/lib/es/base/foundation.js +11 -44
  285. package/lib/es/breadcrumb/foundation.js +0 -7
  286. package/lib/es/breadcrumb/itemFoundation.js +0 -3
  287. package/lib/es/calendar/calendar.css +2 -2
  288. package/lib/es/calendar/calendar.scss +1 -1
  289. package/lib/es/calendar/eventUtil.d.ts +1 -1
  290. package/lib/es/calendar/eventUtil.js +2 -36
  291. package/lib/es/calendar/foundation.d.ts +2 -2
  292. package/lib/es/calendar/foundation.js +28 -117
  293. package/lib/es/carousel/foundation.js +2 -47
  294. package/lib/es/cascader/constants.js +0 -1
  295. package/lib/es/cascader/foundation.d.ts +4 -4
  296. package/lib/es/cascader/foundation.js +30 -226
  297. package/lib/es/cascader/util.js +6 -15
  298. package/lib/es/checkbox/checkboxFoundation.js +2 -34
  299. package/lib/es/checkbox/checkboxGroupFoundation.js +2 -20
  300. package/lib/es/collapse/foundation.d.ts +1 -1
  301. package/lib/es/collapse/foundation.js +2 -9
  302. package/lib/es/collapsible/foundation.js +0 -7
  303. package/lib/es/datePicker/_utils/formatter.js +4 -8
  304. package/lib/es/datePicker/_utils/getDayOfWeek.d.ts +1 -1
  305. package/lib/es/datePicker/_utils/getDayOfWeek.js +0 -3
  306. package/lib/es/datePicker/_utils/getDefaultFormatToken.js +0 -2
  307. package/lib/es/datePicker/_utils/getDefaultPickerDate.d.ts +1 -1
  308. package/lib/es/datePicker/_utils/getDefaultPickerDate.js +0 -10
  309. package/lib/es/datePicker/_utils/getFullDateOffset.js +0 -3
  310. package/lib/es/datePicker/_utils/getInsetInputFormatToken.js +0 -4
  311. package/lib/es/datePicker/_utils/getInsetInputValueFromInsetInputStr.js +0 -5
  312. package/lib/es/datePicker/_utils/getMonthTable.d.ts +1 -1
  313. package/lib/es/datePicker/_utils/getMonthTable.js +4 -14
  314. package/lib/es/datePicker/_utils/getMonthsInYear.js +0 -1
  315. package/lib/es/datePicker/_utils/getYears.d.ts +1 -1
  316. package/lib/es/datePicker/_utils/getYears.js +9 -6
  317. package/lib/es/datePicker/_utils/isBetween.js +0 -1
  318. package/lib/es/datePicker/_utils/parser.js +0 -8
  319. package/lib/es/datePicker/foundation.d.ts +25 -25
  320. package/lib/es/datePicker/foundation.js +22 -318
  321. package/lib/es/datePicker/inputFoundation.d.ts +3 -3
  322. package/lib/es/datePicker/inputFoundation.js +5 -74
  323. package/lib/es/datePicker/monthFoundation.d.ts +1 -1
  324. package/lib/es/datePicker/monthFoundation.js +4 -22
  325. package/lib/es/datePicker/monthsGridFoundation.d.ts +5 -4
  326. package/lib/es/datePicker/monthsGridFoundation.js +42 -222
  327. package/lib/es/datePicker/yearAndMonthFoundation.d.ts +3 -1
  328. package/lib/es/datePicker/yearAndMonthFoundation.js +12 -36
  329. package/lib/es/dropdown/foundation.js +4 -18
  330. package/lib/es/dropdown/menuFoundation.js +8 -22
  331. package/lib/es/form/foundation.js +74 -195
  332. package/lib/es/form/interface.d.ts +5 -5
  333. package/lib/es/form/utils.js +47 -70
  334. package/lib/es/image/imageFoundation.js +4 -13
  335. package/lib/es/image/previewFooterFoundation.js +0 -9
  336. package/lib/es/image/previewFoundation.js +0 -7
  337. package/lib/es/image/previewImageFoundation.js +6 -72
  338. package/lib/es/image/previewInnerFoundation.js +12 -70
  339. package/lib/es/image/utils.js +0 -6
  340. package/lib/es/input/foundation.js +17 -93
  341. package/lib/es/input/textareaFoundation.js +20 -75
  342. package/lib/es/input/util/calculateNodeHeight.js +6 -18
  343. package/lib/es/input/util/getSizingData.js +7 -11
  344. package/lib/es/inputNumber/foundation.js +28 -183
  345. package/lib/es/modal/modalContentFoundation.js +0 -15
  346. package/lib/es/modal/modalFoundation.d.ts +2 -2
  347. package/lib/es/modal/modalFoundation.js +2 -17
  348. package/lib/es/navigation/NavItem.js +0 -6
  349. package/lib/es/navigation/constants.js +1 -1
  350. package/lib/es/navigation/foundation.js +2 -60
  351. package/lib/es/navigation/itemFoundation.d.ts +0 -2
  352. package/lib/es/navigation/itemFoundation.js +3 -18
  353. package/lib/es/navigation/navigation.css +7 -77
  354. package/lib/es/navigation/navigation.scss +7 -119
  355. package/lib/es/navigation/subNavFoundation.d.ts +0 -2
  356. package/lib/es/navigation/subNavFoundation.js +4 -36
  357. package/lib/es/notification/constants.js +1 -1
  358. package/lib/es/notification/notificationFoundation.d.ts +3 -3
  359. package/lib/es/notification/notificationFoundation.js +0 -11
  360. package/lib/es/notification/notificationListFoundation.js +6 -13
  361. package/lib/es/overflowList/foundation.js +11 -37
  362. package/lib/es/pagination/foundation.d.ts +3 -3
  363. package/lib/es/pagination/foundation.js +20 -87
  364. package/lib/es/popconfirm/popconfirmFoundation.js +1 -16
  365. package/lib/es/progress/generates.d.ts +2 -2
  366. package/lib/es/progress/generates.js +19 -59
  367. package/lib/es/radio/radioFoundation.js +0 -9
  368. package/lib/es/radio/radioGroupFoundation.js +4 -19
  369. package/lib/es/radio/radioInnerFoundation.js +2 -15
  370. package/lib/es/rating/foundation.js +10 -54
  371. package/lib/es/scrollList/itemFoundation.js +8 -60
  372. package/lib/es/scrollList/scrollTo.js +2 -4
  373. package/lib/es/select/foundation.d.ts +2 -2
  374. package/lib/es/select/foundation.js +122 -411
  375. package/lib/es/select/optionFoundation.js +4 -10
  376. package/lib/es/sideSheet/sideSheetFoundation.js +0 -12
  377. package/lib/es/slider/foundation.d.ts +1 -1
  378. package/lib/es/slider/foundation.js +24 -197
  379. package/lib/es/spin/foundation.js +3 -11
  380. package/lib/es/steps/bacisSteps.scss +238 -287
  381. package/lib/es/steps/fillSteps.scss +142 -153
  382. package/lib/es/steps/navSteps.scss +40 -61
  383. package/lib/es/steps/steps.css +17 -381
  384. package/lib/es/switch/foundation.js +2 -13
  385. package/lib/es/table/bodyFoundation.js +2 -25
  386. package/lib/es/table/cellFoundation.js +0 -1
  387. package/lib/es/table/constants.js +6 -6
  388. package/lib/es/table/foundation.d.ts +17 -14
  389. package/lib/es/table/foundation.js +72 -309
  390. package/lib/es/table/table.css +6 -0
  391. package/lib/es/table/table.scss +12 -0
  392. package/lib/es/table/tableRowFoundation.js +2 -9
  393. package/lib/es/table/tableSelectionCellFoundation.js +0 -2
  394. package/lib/es/table/utils.d.ts +2 -2
  395. package/lib/es/table/utils.js +5 -81
  396. package/lib/es/tabs/foundation.js +2 -35
  397. package/lib/es/tabs/tabs.css +14 -14
  398. package/lib/es/tabs/tabs.scss +16 -14
  399. package/lib/es/tagInput/foundation.d.ts +4 -4
  400. package/lib/es/tagInput/foundation.js +4 -84
  401. package/lib/es/tagInput/utils/getSplitedArray.js +0 -7
  402. package/lib/es/timePicker/ComboxFoundation.js +4 -30
  403. package/lib/es/timePicker/foundation.d.ts +2 -2
  404. package/lib/es/timePicker/foundation.js +7 -95
  405. package/lib/es/timePicker/inputFoundation.js +6 -22
  406. package/lib/es/timePicker/utils/index.js +6 -25
  407. package/lib/es/timePicker/utils/localeDate.js +0 -8
  408. package/lib/es/timeline/timeline.css +0 -36
  409. package/lib/es/timeline/timeline.scss +46 -96
  410. package/lib/es/toast/constants.js +1 -1
  411. package/lib/es/toast/toastFoundation.d.ts +3 -3
  412. package/lib/es/toast/toastFoundation.js +0 -9
  413. package/lib/es/toast/toastListFoundation.js +4 -18
  414. package/lib/es/tooltip/foundation.d.ts +1 -1
  415. package/lib/es/tooltip/foundation.js +63 -288
  416. package/lib/es/transfer/foundation.d.ts +1 -1
  417. package/lib/es/transfer/foundation.js +6 -62
  418. package/lib/es/transfer/transferUtils.js +5 -21
  419. package/lib/es/tree/foundation.d.ts +3 -3
  420. package/lib/es/tree/foundation.js +34 -143
  421. package/lib/es/tree/treeUtil.js +54 -139
  422. package/lib/es/treeSelect/foundation.d.ts +7 -7
  423. package/lib/es/treeSelect/foundation.js +20 -179
  424. package/lib/es/typography/constants.d.ts +1 -0
  425. package/lib/es/typography/constants.js +1 -0
  426. package/lib/es/typography/formatNumeral.d.ts +3 -3
  427. package/lib/es/typography/formatNumeral.js +16 -29
  428. package/lib/es/typography/typography.css +120 -0
  429. package/lib/es/typography/typography.scss +131 -6
  430. package/lib/es/typography/variables.scss +48 -0
  431. package/lib/es/upload/foundation.d.ts +5 -5
  432. package/lib/es/upload/foundation.js +36 -238
  433. package/lib/es/upload/utils.js +10 -24
  434. package/lib/es/utils/Event.js +2 -17
  435. package/lib/es/utils/FocusHandle.d.ts +1 -1
  436. package/lib/es/utils/FocusHandle.js +6 -32
  437. package/lib/es/utils/Logger.js +0 -20
  438. package/lib/es/utils/Store.js +0 -9
  439. package/lib/es/utils/a11y.js +18 -31
  440. package/lib/es/utils/array.d.ts +1 -1
  441. package/lib/es/utils/array.js +0 -5
  442. package/lib/es/utils/classnames.js +0 -10
  443. package/lib/es/utils/date-fns-extra.js +0 -27
  444. package/lib/es/utils/dom.d.ts +1 -1
  445. package/lib/es/utils/dom.js +0 -9
  446. package/lib/es/utils/getDataAttr.js +0 -1
  447. package/lib/es/utils/getHighlight.js +5 -26
  448. package/lib/es/utils/getMotionObjFromProps.js +0 -8
  449. package/lib/es/utils/isBothNaN.js +0 -1
  450. package/lib/es/utils/isEnterPress.js +0 -2
  451. package/lib/es/utils/isEscPress.js +0 -2
  452. package/lib/es/utils/keyCode.js +0 -104
  453. package/lib/es/utils/log.js +0 -3
  454. package/lib/es/utils/object.d.ts +4 -4
  455. package/lib/es/utils/object.js +12 -28
  456. package/lib/es/utils/set.js +0 -5
  457. package/lib/es/utils/shallowEqualObjects.js +0 -6
  458. package/lib/es/utils/touchPolyfill.js +0 -5
  459. package/lib/es/utils/type.d.ts +3 -3
  460. package/lib/es/utils/uuid.js +2 -8
  461. package/navigation/itemFoundation.ts +1 -3
  462. package/navigation/navigation.scss +7 -119
  463. package/navigation/subNavFoundation.ts +1 -3
  464. package/overflowList/foundation.ts +4 -4
  465. package/package.json +2 -2
  466. package/steps/bacisSteps.scss +238 -287
  467. package/steps/fillSteps.scss +142 -153
  468. package/steps/navSteps.scss +40 -61
  469. package/table/foundation.ts +8 -10
  470. package/table/table.scss +12 -0
  471. package/tabs/tabs.scss +16 -14
  472. package/timePicker/foundation.ts +4 -6
  473. package/timeline/timeline.scss +46 -96
  474. package/typography/constants.ts +1 -0
  475. package/typography/typography.scss +131 -6
  476. package/typography/variables.scss +48 -0
  477. package/upload/foundation.ts +8 -8
@@ -1,60 +1,48 @@
1
1
  /* eslint-disable max-len */
2
-
3
2
  /* eslint-disable no-param-reassign */
4
3
  import BaseFoundation from '../base/foundation';
5
4
  import { numbers } from './constants';
6
-
7
5
  class PaginationFoundation extends BaseFoundation {
8
6
  constructor(adapter) {
9
7
  super(Object.assign({}, adapter));
10
8
  }
11
-
12
9
  init() {
13
10
  const {
14
11
  currentPage,
15
12
  total,
16
13
  pageSize
17
- } = this.getStates(); // If pageSize is set, pageSizeOpts does not work
18
-
14
+ } = this.getStates();
15
+ // If pageSize is set, pageSizeOpts does not work
19
16
  this._updateDisabled({
20
17
  currentPage,
21
18
  total,
22
19
  pageSize
23
20
  });
24
-
25
21
  this._updatePageList({
26
22
  currentPage,
27
23
  total,
28
24
  pageSize
29
25
  });
30
-
31
26
  this._registerEventHandler();
32
27
  }
33
-
34
28
  destroy() {
35
29
  this._unregisterEventHandler();
36
30
  }
37
-
38
31
  _registerEventHandler() {
39
32
  this._adapter.registerKeyDownHandler(this.handleKeyDown);
40
33
  }
41
-
42
34
  _unregisterEventHandler() {
43
35
  this._adapter.unregisterKeyDownHandler(this.handleKeyDown);
44
36
  }
45
-
46
37
  _updateDisabled(pageInfo) {
47
38
  const {
48
39
  currentPage,
49
40
  total,
50
41
  pageSize
51
42
  } = pageInfo;
52
-
53
43
  const totalPageNum = this._getTotalPageNumber(total, pageSize);
54
-
55
44
  let prevIsDisabled = false;
56
45
  let nextIsDisabled = false;
57
-
58
46
  if (currentPage === 1) {
59
47
  prevIsDisabled = true;
60
48
  nextIsDisabled = totalPageNum < 2;
@@ -62,96 +50,73 @@ class PaginationFoundation extends BaseFoundation {
62
50
  prevIsDisabled = false;
63
51
  nextIsDisabled = true;
64
52
  }
65
-
66
53
  this._adapter.setDisabled(prevIsDisabled, nextIsDisabled);
67
54
  }
68
-
69
55
  goPage(targetPageIndex) {
70
56
  if (targetPageIndex === '...') {
71
57
  return;
72
58
  }
73
-
74
59
  const {
75
60
  pageSize,
76
61
  currentPage
77
62
  } = this.getStates();
78
-
79
63
  const isControlComponent = this._isInProps('currentPage');
80
-
81
64
  if (targetPageIndex === currentPage) {
82
65
  return;
83
66
  }
84
-
85
67
  if (!isControlComponent) {
86
68
  this.updatePage(targetPageIndex);
87
-
88
69
  this._adapter.notifyPageChange(targetPageIndex);
89
-
90
70
  this._adapter.notifyChange(targetPageIndex, pageSize);
91
71
  } else {
92
72
  this._adapter.notifyPageChange(targetPageIndex);
93
-
94
73
  this._adapter.notifyChange(targetPageIndex, pageSize);
95
74
  }
96
75
  }
97
-
98
76
  updatePage() {
99
77
  let targetPageIndex = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : 1;
100
78
  let total = arguments.length > 1 ? arguments[1] : undefined;
101
79
  let pageSize = arguments.length > 2 ? arguments[2] : undefined;
102
-
103
80
  // maybe undefined or null
104
81
  if (total === null || typeof total === 'undefined') {
105
82
  total = this.getState('total');
106
83
  }
107
-
108
84
  if (pageSize === null || typeof pageSize === 'undefined') {
109
85
  pageSize = this.getState('pageSize');
110
86
  }
111
-
112
87
  this._updateDisabled({
113
88
  currentPage: targetPageIndex,
114
89
  total,
115
90
  pageSize
116
91
  });
117
-
118
92
  this._updatePageList({
119
93
  currentPage: targetPageIndex,
120
94
  total,
121
95
  pageSize
122
96
  });
123
-
124
97
  this._adapter.updateTotal(total);
125
-
126
98
  this._adapter.setCurrentPage(targetPageIndex);
127
-
128
99
  this._adapter.updatePageSize(pageSize);
129
100
  }
130
-
131
101
  goPrev() {
132
102
  const {
133
103
  currentPage
134
104
  } = this.getStates();
135
-
136
105
  if (currentPage > 1) {
137
106
  this.goPage(currentPage - 1);
138
107
  }
139
108
  }
140
-
141
109
  goNext() {
142
110
  const {
143
111
  currentPage,
144
112
  total,
145
113
  pageSize
146
114
  } = this.getStates();
147
-
148
115
  const totalPageNum = this._getTotalPageNumber(total, pageSize);
149
-
150
116
  if (currentPage <= totalPageNum - 1) {
151
117
  this.goPage(currentPage + 1);
152
118
  }
153
119
  }
154
-
155
120
  _updatePageList(pageListInfo) {
156
121
  const {
157
122
  currentPage,
@@ -160,9 +125,7 @@ class PaginationFoundation extends BaseFoundation {
160
125
  } = pageListInfo;
161
126
  let pageList = [];
162
127
  let restLeftPageList = []; // pages before ...
163
-
164
128
  let restRightPageList = []; // pages after ...
165
-
166
129
  /** Pager truncation logic (t is the total number of pages, c is the current page):
167
130
  - No need to truncate when t<=7 pages
168
131
  - When t>7
@@ -180,14 +143,11 @@ class PaginationFoundation extends BaseFoundation {
180
143
  - 当 t-3<=c<=t 时,第 2 个为截断符号(...),后面为倒数第5个-倒数第1个
181
144
  截断符+数字 总共个数为7个
182
145
  */
183
-
184
146
  const totalPageNum = this._getTotalPageNumber(total, pageSize);
185
-
186
147
  const {
187
148
  PAGE_SHOW_MAX,
188
149
  REST_PAGE_MAX_SIZE
189
150
  } = numbers;
190
-
191
151
  if (totalPageNum <= PAGE_SHOW_MAX) {
192
152
  pageList = Array.from({
193
153
  length: totalPageNum
@@ -197,14 +157,13 @@ class PaginationFoundation extends BaseFoundation {
197
157
  } else {
198
158
  switch (true) {
199
159
  case currentPage < 4:
200
- pageList = [1, 2, 3, 4, '...', totalPageNum - 1, totalPageNum]; // length: (totalPageNum - 1) - 4
201
-
160
+ pageList = [1, 2, 3, 4, '...', totalPageNum - 1, totalPageNum];
161
+ // length: (totalPageNum - 1) - 4
202
162
  restRightPageList = Array.from({
203
163
  length: Math.min(totalPageNum - 6, REST_PAGE_MAX_SIZE)
204
164
  }, (v, i) => i + 5);
205
165
  restLeftPageList = [];
206
166
  break;
207
-
208
167
  case currentPage === 4:
209
168
  pageList = [1, 2, 3, 4, 5, '...', totalPageNum];
210
169
  restRightPageList = Array.from({
@@ -212,13 +171,12 @@ class PaginationFoundation extends BaseFoundation {
212
171
  }, (v, i) => i + 6);
213
172
  restLeftPageList = [];
214
173
  break;
215
-
216
174
  case 4 < currentPage && currentPage < totalPageNum - 3:
217
175
  const middle = Array.from({
218
176
  length: 3
219
177
  }, (v, i) => currentPage + (i - 1));
220
- pageList = [1].concat('...', middle, '...', totalPageNum); // length: total-(currentPage+1)-1
221
-
178
+ pageList = [1].concat('...', middle, '...', totalPageNum);
179
+ // length: total-(currentPage+1)-1
222
180
  restRightPageList = Array.from({
223
181
  length: Math.min(totalPageNum - currentPage - 2, REST_PAGE_MAX_SIZE)
224
182
  }, (v, i) => currentPage + i + 2);
@@ -226,7 +184,6 @@ class PaginationFoundation extends BaseFoundation {
226
184
  length: Math.min(currentPage - 3, REST_PAGE_MAX_SIZE)
227
185
  }, (v, i) => i + 2);
228
186
  break;
229
-
230
187
  case currentPage - 3 <= currentPage && currentPage <= totalPageNum:
231
188
  const right = Array.from({
232
189
  length: 5
@@ -237,51 +194,42 @@ class PaginationFoundation extends BaseFoundation {
237
194
  length: Math.min(right[0] - 2, REST_PAGE_MAX_SIZE)
238
195
  }, (v, i) => i + 2);
239
196
  break;
240
-
241
197
  default:
242
198
  break;
243
199
  }
244
200
  }
245
-
246
201
  this._adapter.setPageList({
247
202
  pageList,
248
203
  restLeftPageList,
249
204
  restRightPageList
250
- }); // this._adapter.setRestLeftPageList(restLeftPageList);
205
+ });
206
+ // this._adapter.setRestLeftPageList(restLeftPageList);
251
207
  // this._adapter.setRestRightPageList(restRightPageList);
252
-
253
208
  }
254
209
 
255
210
  changePageSize(newPageSize) {
256
211
  const {
257
212
  pageSize
258
213
  } = this.getStates();
259
-
260
214
  this._adapter.updatePageSize(newPageSize);
261
-
262
215
  this._adapter.notifyPageSizeChange(newPageSize);
263
-
264
216
  const {
265
217
  total,
266
218
  currentPage
267
- } = this.getStates(); // After converting the switching page capacity, which page is the current page
268
-
219
+ } = this.getStates();
220
+ // After converting the switching page capacity, which page is the current page
269
221
  const currentPageFirstItemIndex = (currentPage - 1) * pageSize + 1;
270
222
  const newCurrentPage = Math.ceil(currentPageFirstItemIndex / newPageSize);
271
223
  this.updatePage(newCurrentPage, total, newPageSize);
272
-
273
224
  if (currentPage !== newCurrentPage) {
274
225
  this._adapter.notifyPageChange(newCurrentPage);
275
226
  }
276
-
277
227
  this._adapter.notifyChange(newCurrentPage, newPageSize);
278
- } // TODO handle tab/enter events
228
+ }
229
+ // TODO handle tab/enter events
279
230
  // eslint-disable-next-line @typescript-eslint/no-empty-function
280
-
281
-
282
- handleKeyDown() {} // If pageSize is not in the Opts array, insert it
283
-
284
-
231
+ handleKeyDown() {}
232
+ // If pageSize is not in the Opts array, insert it
285
233
  pageSizeInOpts() {
286
234
  const {
287
235
  pageSizeOpts
@@ -290,66 +238,51 @@ class PaginationFoundation extends BaseFoundation {
290
238
  pageSize
291
239
  } = this.getStates();
292
240
  const newPageSizeOpts = [...pageSizeOpts];
293
-
294
241
  if (newPageSizeOpts.indexOf(pageSize) === -1) {
295
242
  const firstLargerIndex = newPageSizeOpts.findIndex(el => el > pageSize);
296
243
  newPageSizeOpts.splice(firstLargerIndex, 0, pageSize);
297
244
  }
298
-
299
245
  return newPageSizeOpts;
300
246
  }
301
-
302
247
  handleQuickJumpNumberChange(targetPage) {
303
248
  this._adapter.updateQuickJumpPage(targetPage);
304
249
  }
305
-
306
250
  _handleQuickJump(quickJumpPage) {
307
251
  let page = Number(quickJumpPage);
308
252
  const {
309
253
  pageSize,
310
254
  total
311
255
  } = this.getStates();
312
-
313
256
  const totalPageNum = this._getTotalPageNumber(total, pageSize);
314
-
315
257
  if (Number.isNaN(page)) {
316
258
  return;
317
- } // If the user input is greater than totalPage
318
-
319
-
259
+ }
260
+ // If the user input is greater than totalPage
320
261
  if (page > totalPageNum) {
321
262
  page = totalPageNum;
322
263
  }
323
-
324
264
  if (page <= 0) {
325
265
  page = 1;
326
- } // clear inputnumber
327
-
328
-
266
+ }
267
+ // clear inputnumber
329
268
  this._adapter.updateQuickJumpPage('');
330
-
331
269
  this.goPage(page);
332
270
  }
333
-
334
271
  handleQuickJumpBlur() {
335
272
  const {
336
273
  quickJumpPage
337
- } = this.getStates(); // no need to operate when inputnumber blur & quickJumpPage is empty
338
-
274
+ } = this.getStates();
275
+ // no need to operate when inputnumber blur & quickJumpPage is empty
339
276
  if (typeof quickJumpPage === 'string' && quickJumpPage || typeof quickJumpPage === 'number') {
340
277
  this._handleQuickJump(quickJumpPage);
341
278
  }
342
279
  }
343
-
344
280
  handleQuickJumpEnterPress(targetPage) {
345
281
  this._handleQuickJump(targetPage);
346
282
  }
347
-
348
283
  _getTotalPageNumber(total, pageSize) {
349
284
  const totalPageNum = Math.ceil(total / pageSize);
350
285
  return totalPageNum;
351
286
  }
352
-
353
287
  }
354
-
355
288
  export default PaginationFoundation;
@@ -1,20 +1,16 @@
1
1
  import _get from "lodash/get";
2
+ /* eslint-disable @typescript-eslint/no-empty-function */
2
3
  import BaseFoundation from '../base/foundation';
3
4
  import isPromise from '../utils/isPromise';
4
5
  export default class PopConfirmFoundation extends BaseFoundation {
5
6
  init() {}
6
-
7
7
  destroy() {}
8
-
9
8
  handleCancel(e) {
10
9
  const maybePromise = this._adapter.notifyCancel(e);
11
-
12
10
  if (isPromise(maybePromise)) {
13
11
  this._adapter.updateCancelLoading(true);
14
-
15
12
  maybePromise.then(result => {
16
13
  this.handleVisibleChange(false);
17
-
18
14
  this._adapter.updateCancelLoading(false);
19
15
  }, errors => {
20
16
  this._adapter.updateCancelLoading(false);
@@ -23,16 +19,12 @@ export default class PopConfirmFoundation extends BaseFoundation {
23
19
  this.handleVisibleChange(false);
24
20
  }
25
21
  }
26
-
27
22
  handleConfirm(e) {
28
23
  const maybePromise = this._adapter.notifyConfirm(e);
29
-
30
24
  if (isPromise(maybePromise)) {
31
25
  this._adapter.updateConfirmLoading(true);
32
-
33
26
  maybePromise.then(result => {
34
27
  this._adapter.updateConfirmLoading(false);
35
-
36
28
  this.handleVisibleChange(false);
37
29
  }, errors => {
38
30
  this._adapter.updateConfirmLoading(false);
@@ -41,36 +33,29 @@ export default class PopConfirmFoundation extends BaseFoundation {
41
33
  this.handleVisibleChange(false);
42
34
  }
43
35
  }
44
-
45
36
  handleClickOutSide(e) {
46
37
  this._adapter.notifyClickOutSide(e);
47
38
  }
48
-
49
39
  handleVisibleChange(visible) {
50
40
  if (!this._isControlledComponent('visible')) {
51
41
  this._adapter.setVisible(visible);
52
42
  }
53
-
54
43
  if (visible) {
55
44
  this.handleFocusOperateButton();
56
45
  } else {
57
46
  this._adapter.focusPrevFocusElement();
58
47
  }
59
-
60
48
  this._adapter.notifyVisibleChange(visible);
61
49
  }
62
-
63
50
  handleFocusOperateButton() {
64
51
  const {
65
52
  cancelButtonProps,
66
53
  okButtonProps
67
54
  } = this._adapter.getProps();
68
-
69
55
  if (_get(cancelButtonProps, 'autoFocus') && !_get(cancelButtonProps, 'disabled')) {
70
56
  this._adapter.focusCancelButton();
71
57
  } else if (_get(okButtonProps, 'autoFocus') && !_get(okButtonProps, 'disabled')) {
72
58
  this._adapter.focusOkButton();
73
59
  }
74
60
  }
75
-
76
61
  }
@@ -1,7 +1,7 @@
1
- declare type StrokeSet = {
1
+ type StrokeSet = {
2
2
  percent: number;
3
3
  color: string;
4
4
  };
5
- declare type StrokeArr = Array<StrokeSet>;
5
+ type StrokeArr = Array<StrokeSet>;
6
6
  declare function generateColor(s: StrokeArr, percent: number, gradient: boolean): string | undefined;
7
7
  export { generateColor, StrokeArr };
@@ -1,5 +1,4 @@
1
1
  import { strings } from './constants';
2
-
3
2
  function generateColor(s, percent, gradient) {
4
3
  try {
5
4
  const gradientColorArr = generate(s, percent, gradient);
@@ -7,45 +6,34 @@ function generateColor(s, percent, gradient) {
7
6
  } catch (e) {
8
7
  return undefined;
9
8
  }
10
-
11
9
  return undefined;
12
10
  }
13
-
14
11
  function generate(s, percent, gradient) {
15
12
  s.sort((a, b) => a.percent - b.percent);
16
-
17
13
  if (s[0].percent > percent) {
18
14
  return strings.STROKE_DEFAULT;
19
15
  }
20
-
21
16
  const endS = s[s.length - 1];
22
-
23
17
  if (endS.percent < percent) {
24
18
  return formatToHex(endS.color);
25
19
  }
26
-
27
20
  for (const [index, item] of s.entries()) {
28
21
  if (item.percent === percent) {
29
22
  return formatToHex(item.color);
30
23
  }
31
-
32
24
  if (percent > item.percent) continue;
33
25
  const oldItem = s[index - 1];
34
-
35
26
  if (!gradient) {
36
27
  return formatToHex(oldItem.color);
37
28
  }
38
-
39
29
  return generateGradients({
40
30
  startColor: formatToHex(oldItem.color),
41
31
  endColor: formatToHex(item.color),
42
32
  size: item.percent - oldItem.percent - 1
43
33
  }, percent - oldItem.percent - 1);
44
34
  }
45
-
46
35
  return undefined;
47
36
  }
48
-
49
37
  function generateGradients(g, index) {
50
38
  const {
51
39
  startColor,
@@ -62,7 +50,6 @@ function generateGradients(g, index) {
62
50
  const gStep = (gC[0] - gC[1]) / (size + 1);
63
51
  const bStep = (bC[0] - bC[1]) / (size + 1);
64
52
  const aStep = (aC[0] - aC[1]) / (size + 1);
65
-
66
53
  function tHex(i) {
67
54
  const rS = Math.round(rC[0] - rStep * (i + 1)).toString(16);
68
55
  const gS = Math.round(gC[0] - gStep * (i + 1)).toString(16);
@@ -71,91 +58,71 @@ function generateGradients(g, index) {
71
58
  const t = Math.floor(aStep * (i + 1) + aC[1]).toString(16);
72
59
  return toHex.Hex(`#${h}`, t);
73
60
  }
74
-
75
61
  function padTwo(s) {
76
62
  if (s.length === 1) {
77
63
  return `0${s}`;
78
64
  }
79
-
80
65
  if (s.length === 0) {
81
66
  return '00';
82
67
  }
83
-
84
68
  return s;
85
69
  }
86
-
87
70
  if (typeof index === 'undefined') {
88
71
  const gradientColorArr = [startColor];
89
-
90
72
  for (let i = 0; i < size; i += 1) {
91
73
  gradientColorArr.push(tHex(i));
92
74
  }
93
-
94
75
  return gradientColorArr;
95
76
  }
96
-
97
77
  return tHex(index);
98
- } // Resolve the colour type contained within `ColorType` to Hex
99
-
100
-
78
+ }
79
+ // Resolve the colour type contained within `ColorType` to Hex
101
80
  function formatToHex(color) {
102
- color = color.trim().toLowerCase(); // Hex
103
-
81
+ color = color.trim().toLowerCase();
82
+ // Hex
104
83
  if (REG_S.hex.test(color)) {
105
84
  return toHex.Hex(color, undefined);
106
- } // Hsl or Hsla
107
-
108
-
85
+ }
86
+ // Hsl or Hsla
109
87
  if (REG_S.hslA.test(color)) {
110
88
  return toHex.Hex(toHex.HslA(color), undefined);
111
- } // Rgb or Rgba
112
-
113
-
89
+ }
90
+ // Rgb or Rgba
114
91
  if (REG_S.rgbA.test(color)) {
115
92
  return toHex.Hex(toHex.RgbA(color), undefined);
116
- } // Semi Design Tokens
117
-
118
-
93
+ }
94
+ // Semi Design Tokens
119
95
  if (REG_S.semiDesignTokens.test(color)) {
120
96
  if (SEMI_DESIGN_TOKENS.ALONG.indexOf(color) !== -1) {
121
97
  return toHex.SemiDesignToken(color);
122
98
  }
123
-
124
99
  if (SEMI_DESIGN_TOKENS.SEQUENCE.indexOf(color) !== -1) {
125
100
  return toHex.SemiDesignToken(`${color}-5`);
126
101
  }
127
-
128
102
  return toHex.SemiDesignToken(`${color}`);
129
103
  }
130
-
131
104
  return undefined;
132
105
  }
133
-
134
106
  const toHex = {
135
107
  Hex(color, transparency) {
136
108
  color = color.replace('#', '');
137
109
  if (color.length === 8) return `#${color}`;
138
110
  if (color.length === 6) return `#${color}${transparency || 'ff'}`;
139
-
140
111
  if (color.length === 3) {
141
112
  color = color.split('').map(c => c + c).join('');
142
113
  }
143
-
144
114
  return `#${color}${transparency || 'ff'}`;
145
115
  },
146
-
147
116
  SemiDesignToken(color) {
148
117
  // ! Only produces effects when used, the conditions for running need to occur after the real DOM is rendered
149
118
  if (typeof window === 'undefined') {
150
119
  return undefined;
151
120
  }
152
-
153
121
  const variable = getComputedStyle(document.body).getPropertyValue(`--semi-${color}`);
154
122
  if (variable === '') return undefined;
155
123
  const rgba = `rgba(${variable}, 1)`;
156
124
  return toHex.RgbA(rgba);
157
125
  },
158
-
159
126
  HslA(color) {
160
127
  const hsla = REG_S.hslA.exec(color);
161
128
  const h = parseInt(hsla[2]);
@@ -163,12 +130,11 @@ const toHex = {
163
130
  const l = parseInt(hsla[4]) / 100;
164
131
  const a = hsla[5];
165
132
  const c = (1 - Math.abs(2 * l - 1)) * s,
166
- x = c * (1 - Math.abs(h / 60 % 2 - 1)),
167
- m = l - c / 2;
133
+ x = c * (1 - Math.abs(h / 60 % 2 - 1)),
134
+ m = l - c / 2;
168
135
  let r = 0,
169
- g = 0,
170
- b = 0;
171
-
136
+ g = 0,
137
+ b = 0;
172
138
  if (0 <= h && h < 60) {
173
139
  r = c;
174
140
  g = x;
@@ -194,37 +160,31 @@ const toHex = {
194
160
  g = 0;
195
161
  b = x;
196
162
  }
197
-
198
163
  r = Math.round((r + m) * 255).toString(16);
199
164
  g = Math.round((g + m) * 255).toString(16);
200
165
  b = Math.round((b + m) * 255).toString(16);
201
166
  return toHex.utils.pAL(r, g, b, a);
202
167
  },
203
-
204
168
  RgbA(color) {
205
169
  const rgba = REG_S.rgbA.exec(color);
206
170
  const r = parseInt(rgba[2], 10).toString(16),
207
- g = parseInt(rgba[3], 10).toString(16),
208
- b = parseInt(rgba[4], 10).toString(16),
209
- a = rgba[5];
171
+ g = parseInt(rgba[3], 10).toString(16),
172
+ b = parseInt(rgba[4], 10).toString(16),
173
+ a = rgba[5];
210
174
  return toHex.utils.pAL(r, g, b, a);
211
175
  },
212
-
213
176
  utils: {
214
177
  pAL(r, g, b, a) {
215
178
  if (r.length == 1) r = '0' + r;
216
179
  if (g.length == 1) g = '0' + g;
217
180
  if (b.length == 1) b = '0' + b;
218
-
219
181
  if (typeof a !== 'undefined') {
220
182
  a = Math.round(parseInt(a) * 255).toString(16);
221
183
  if (a.length == 1) a = '0' + a;
222
184
  return '#' + r + g + b + a;
223
185
  }
224
-
225
186
  return '#' + r + g + b;
226
187
  }
227
-
228
188
  }
229
189
  };
230
190
  const REG_S = {
@@ -232,8 +192,8 @@ const REG_S = {
232
192
  hslA: /(hsl)a?\(\s*?(\d+),?\s*?(\d+)%,?\s*?(\d+)%,?\s*?\/?(\s*?[\d.]+)?\s*?\)/,
233
193
  rgbA: /(rgb)a?\(\s*?(\d+),?\s*?(\d+),?\s*?(\d+),?\s*?\/?(\s*?[\d.]+)?\s*?\)/,
234
194
  semiDesignTokens: /(\w+)?-?(\w+)-?(\d)?/
235
- }; // From src/components/palette.js
236
-
195
+ };
196
+ // From src/components/palette.js
237
197
  const SEMI_DESIGN_TOKENS = {
238
198
  // No sequence
239
199
  ALONG: ["black", "white"],