@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,8 +1,6 @@
1
1
  import _isEqual from "lodash/isEqual";
2
2
  import _isSet from "lodash/isSet";
3
3
  import _includes from "lodash/includes";
4
-
5
- /* eslint-disable max-len */
6
4
  import BaseFoundation from '../base/foundation';
7
5
  import { strings } from './constants';
8
6
  import { format, set, addMonths, subMonths, subYears, addYears, differenceInCalendarMonths, differenceInCalendarYears, isSameDay, parseISO } from 'date-fns';
@@ -11,7 +9,7 @@ import { formatFullDate } from './_utils/getMonthTable';
11
9
  import { compatibleParse } from './_utils/parser';
12
10
  import { zonedTimeToUtc } from '../utils/date-fns-extra';
13
11
  import { getDefaultFormatTokenByType } from './_utils/getDefaultFormatToken';
14
- import isNullOrUndefined from '../utils/isNullOrUndefined';
12
+ import isValidTimeZone from './_utils/isValidTimeZone';
15
13
  const dateDiffFns = {
16
14
  month: differenceInCalendarMonths,
17
15
  year: differenceInCalendarYears
@@ -24,31 +22,26 @@ const dateCalcFns = {
24
22
  };
25
23
  export default class MonthsGridFoundation extends BaseFoundation {
26
24
  constructor(adapter) {
27
- super(Object.assign({}, adapter)); // Date change data when double panels
28
-
25
+ super(Object.assign({}, adapter));
26
+ // Date change data when double panels
29
27
  this.newBiMonthPanelDate = [this.getState('monthLeft').pickerDate, this.getState('monthRight').pickerDate];
30
28
  }
31
-
32
29
  init() {
33
30
  const defaultValue = this.getProp('defaultValue');
34
31
  this.initDefaultPickerValue();
35
32
  this.updateSelectedFromProps(defaultValue);
36
33
  }
37
-
38
34
  initDefaultPickerValue() {
39
35
  const defaultPickerValue = compatibleParse(this.getProp('defaultPickerValue'));
40
-
41
36
  if (defaultPickerValue && isValidDate(defaultPickerValue)) {
42
37
  this._updatePanelDetail(strings.PANEL_TYPE_LEFT, {
43
38
  pickerDate: defaultPickerValue
44
39
  });
45
-
46
40
  this._updatePanelDetail(strings.PANEL_TYPE_RIGHT, {
47
41
  pickerDate: addMonths(defaultPickerValue, 1)
48
42
  });
49
43
  }
50
44
  }
51
-
52
45
  updateSelectedFromProps(values) {
53
46
  let refreshPicker = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : true;
54
47
  const type = this.getProp('type');
@@ -57,29 +50,20 @@ export default class MonthsGridFoundation extends BaseFoundation {
57
50
  rangeStart,
58
51
  rangeEnd
59
52
  } = this.getStates();
60
-
61
- if (values && values.length) {
53
+ if (values && (values === null || values === void 0 ? void 0 : values.length)) {
62
54
  switch (type) {
63
55
  case 'date':
64
56
  this._initDatePickerFromValue(values, refreshPicker);
65
-
66
57
  break;
67
-
68
58
  case 'dateRange':
69
59
  this._initDateRangePickerFromValue(values);
70
-
71
60
  break;
72
-
73
61
  case 'dateTime':
74
62
  this._initDateTimePickerFromValue(values);
75
-
76
63
  break;
77
-
78
64
  case 'dateTimeRange':
79
65
  this._initDateTimeRangePickerFormValue(values);
80
-
81
66
  break;
82
-
83
67
  default:
84
68
  break;
85
69
  }
@@ -88,23 +72,19 @@ export default class MonthsGridFoundation extends BaseFoundation {
88
72
  if (_isSet(selected) && selected.size) {
89
73
  this._adapter.updateDaySelected(new Set());
90
74
  }
91
-
92
75
  if (rangeStart) {
93
76
  this._adapter.setRangeStart('');
94
77
  }
95
-
96
78
  if (rangeEnd) {
97
79
  this._adapter.setRangeEnd('');
98
80
  }
99
81
  }
100
82
  }
101
-
102
83
  calcDisabledTime(panelType) {
103
84
  const {
104
85
  disabledTime,
105
86
  type
106
87
  } = this.getProps();
107
-
108
88
  if (typeof disabledTime === 'function' && panelType && ['dateTime', 'dateTimeRange'].includes(type)) {
109
89
  const {
110
90
  rangeStart,
@@ -112,91 +92,94 @@ export default class MonthsGridFoundation extends BaseFoundation {
112
92
  monthLeft
113
93
  } = this.getStates();
114
94
  const selected = [];
115
-
116
95
  if (type === 'dateTimeRange') {
117
96
  if (rangeStart) {
118
97
  selected.push(rangeStart);
119
98
  }
120
-
121
99
  if (rangeStart && rangeEnd) {
122
100
  selected.push(rangeEnd);
123
101
  }
124
102
  } else if (monthLeft && monthLeft.showDate) {
125
103
  selected.push(monthLeft.showDate);
126
104
  }
127
-
128
105
  const selectedDates = selected.map(str => str instanceof Date ? str : parseISO(str));
129
106
  const cbDates = type === 'dateTimeRange' ? selectedDates : selectedDates[0];
130
107
  return disabledTime(cbDates, panelType);
131
108
  }
132
109
  }
133
-
134
110
  _initDatePickerFromValue(values) {
135
111
  let refreshPicker = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : true;
136
- const monthLeft = this.getState('monthLeft');
137
- const newMonthLeft = Object.assign({}, monthLeft); // REMOVE:
138
-
112
+ const {
113
+ monthLeft
114
+ } = this._adapter.getStates();
115
+ const newMonthLeft = Object.assign({}, monthLeft);
116
+ // REMOVE:
139
117
  this._adapter.updateMonthOnLeft(newMonthLeft);
140
-
141
118
  const newSelected = new Set();
142
-
143
- if (!this._isMultiple()) {
119
+ const isMultiple = this._isMultiple();
120
+ if (!isMultiple) {
144
121
  values[0] && newSelected.add(format(values[0], strings.FORMAT_FULL_DATE));
145
122
  } else {
146
123
  values.forEach(date => {
147
124
  date && newSelected.add(format(date, strings.FORMAT_FULL_DATE));
148
125
  });
149
126
  }
150
-
151
127
  if (refreshPicker) {
152
- this.handleShowDateAndTime(strings.PANEL_TYPE_LEFT, values[0] || newMonthLeft.pickerDate);
128
+ if (isMultiple) {
129
+ const leftPickerDateInSelected = values === null || values === void 0 ? void 0 : values.some(item => item && differenceInCalendarMonths(item, monthLeft.pickerDate) === 0);
130
+ !leftPickerDateInSelected && this.handleShowDateAndTime(strings.PANEL_TYPE_LEFT, values[0] || newMonthLeft.pickerDate);
131
+ } else {
132
+ this.handleShowDateAndTime(strings.PANEL_TYPE_LEFT, values[0] || newMonthLeft.pickerDate);
133
+ }
153
134
  } else {
154
135
  // FIXME:
155
136
  this.handleShowDateAndTime(strings.PANEL_TYPE_LEFT, newMonthLeft.pickerDate);
156
137
  }
157
-
158
138
  this._adapter.updateDaySelected(newSelected);
159
139
  }
160
-
161
140
  _initDateRangePickerFromValue(values) {
162
141
  let withTime = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : false;
163
142
  // init month panel
164
143
  const monthLeft = this.getState('monthLeft');
165
144
  const monthRight = this.getState('monthRight');
166
-
167
145
  const adjustResult = this._autoAdjustMonth(Object.assign(Object.assign({}, monthLeft), {
168
146
  pickerDate: values[0] || monthLeft.pickerDate
169
147
  }), Object.assign(Object.assign({}, monthRight), {
170
148
  pickerDate: values[1] || monthRight.pickerDate
171
149
  }));
172
-
173
- this.handleShowDateAndTime(strings.PANEL_TYPE_LEFT, adjustResult.monthLeft.pickerDate);
174
- this.handleShowDateAndTime(strings.PANEL_TYPE_RIGHT, adjustResult.monthRight.pickerDate); // init range
175
-
150
+ const validValue = Array.isArray(values) && values.filter(item => item).length > 1;
151
+ if (validValue) {
152
+ this.handleShowDateAndTime(strings.PANEL_TYPE_LEFT, adjustResult.monthLeft.pickerDate);
153
+ this.handleShowDateAndTime(strings.PANEL_TYPE_RIGHT, adjustResult.monthRight.pickerDate);
154
+ } else {
155
+ const selectedDate = values.find(item => item);
156
+ // 如果日期不完整且输入日期不在面板范围内,则更新面板
157
+ if (selectedDate) {
158
+ const notLeftPanelDate = Math.abs(differenceInCalendarMonths(selectedDate, monthLeft.pickerDate)) > 0;
159
+ const notRightPanelDate = Math.abs(differenceInCalendarMonths(selectedDate, monthRight.pickerDate)) > 0;
160
+ if (notLeftPanelDate && notRightPanelDate) {
161
+ this.handleShowDateAndTime(strings.PANEL_TYPE_LEFT, adjustResult.monthLeft.pickerDate);
162
+ this.handleShowDateAndTime(strings.PANEL_TYPE_RIGHT, adjustResult.monthRight.pickerDate);
163
+ }
164
+ }
165
+ }
166
+ // init range
176
167
  const formatToken = withTime ? strings.FORMAT_DATE_TIME : strings.FORMAT_FULL_DATE;
177
168
  let rangeStart = values[0] && format(values[0], formatToken);
178
169
  let rangeEnd = values[1] && format(values[1], formatToken);
179
-
180
170
  if (this._isNeedSwap(rangeStart, rangeEnd)) {
181
171
  [rangeStart, rangeEnd] = [rangeEnd, rangeStart];
182
172
  }
183
-
184
173
  this._adapter.setRangeStart(rangeStart);
185
-
186
174
  this._adapter.setRangeEnd(rangeEnd);
187
-
188
175
  this._adapter.setHoverDay(rangeEnd);
189
176
  }
190
-
191
177
  _initDateTimePickerFromValue(values) {
192
178
  this._initDatePickerFromValue(values);
193
179
  }
194
-
195
180
  _initDateTimeRangePickerFormValue(values) {
196
181
  this._initDateRangePickerFromValue(values, true);
197
- } // eslint-disable-next-line @typescript-eslint/no-empty-function
198
-
199
-
182
+ }
200
183
  destroy() {}
201
184
  /**
202
185
  * sync change another panel month when change months from the else yam panel
@@ -207,23 +190,18 @@ export default class MonthsGridFoundation extends BaseFoundation {
207
190
  * - panelType=right, target=new Date('2022-09-01') and left panel is in '2022-09' => call it, left panel minus one month to '2022-08'
208
191
  * - panelType=left, target=new Date('2021-12-01') and right panel is in '2021-12' => call it, right panel add one month to '2021-01'
209
192
  */
210
-
211
-
212
193
  handleSyncChangeMonths(options) {
213
194
  const {
214
195
  panelType,
215
196
  target
216
197
  } = options;
217
-
218
198
  const {
219
199
  type
220
200
  } = this._adapter.getProps();
221
-
222
201
  const {
223
202
  monthLeft,
224
203
  monthRight
225
204
  } = this._adapter.getStates();
226
-
227
205
  if (this.isRangeType(type)) {
228
206
  if (panelType === 'right' && differenceInCalendarMonths(target, monthLeft.pickerDate) === 0) {
229
207
  this.handleYearOrMonthChange('prevMonth', 'left', 1, true);
@@ -235,56 +213,42 @@ export default class MonthsGridFoundation extends BaseFoundation {
235
213
  /**
236
214
  * Get the target date based on the panel type and switch type
237
215
  */
238
-
239
-
240
216
  getTargetChangeDate(options) {
241
217
  const {
242
218
  panelType,
243
219
  switchType
244
220
  } = options;
245
-
246
221
  const {
247
222
  monthRight,
248
223
  monthLeft
249
224
  } = this._adapter.getStates();
250
-
251
225
  const currentDate = panelType === 'left' ? monthLeft.pickerDate : monthRight.pickerDate;
252
226
  let target;
253
-
254
227
  switch (switchType) {
255
228
  case 'prevMonth':
256
229
  target = addMonths(currentDate, -1);
257
230
  break;
258
-
259
231
  case 'nextMonth':
260
232
  target = addMonths(currentDate, 1);
261
233
  break;
262
-
263
234
  case 'prevYear':
264
235
  target = addYears(currentDate, -1);
265
236
  break;
266
-
267
237
  case 'nextYear':
268
238
  target = addYears(currentDate, 1);
269
239
  break;
270
240
  }
271
-
272
241
  return target;
273
242
  }
274
243
  /**
275
244
  * Change month by yam panel
276
245
  */
277
-
278
-
279
246
  toMonth(panelType, target) {
280
247
  const {
281
248
  type
282
249
  } = this._adapter.getProps();
283
-
284
250
  const diff = this._getDiff('month', target, panelType);
285
-
286
251
  this.handleYearOrMonthChange(diff < 0 ? 'prevMonth' : 'nextMonth', panelType, Math.abs(diff), false);
287
-
288
252
  if (this.isRangeType(type)) {
289
253
  this.handleSyncChangeMonths({
290
254
  panelType,
@@ -292,18 +256,14 @@ export default class MonthsGridFoundation extends BaseFoundation {
292
256
  });
293
257
  }
294
258
  }
295
-
296
259
  toYear(panelType, target) {
297
260
  const diff = this._getDiff('year', target, panelType);
298
-
299
261
  this.handleYearOrMonthChange(diff < 0 ? 'prevYear' : 'nextYear', panelType, Math.abs(diff), false);
300
262
  }
301
-
302
263
  toYearMonth(panelType, target) {
303
264
  this.toYear(panelType, target);
304
265
  this.toMonth(panelType, target);
305
266
  }
306
-
307
267
  isRangeType(type) {
308
268
  const {
309
269
  type: typeFromProp
@@ -311,14 +271,13 @@ export default class MonthsGridFoundation extends BaseFoundation {
311
271
  const realType = type ? type : typeFromProp;
312
272
  return typeof realType === 'string' && /range/i.test(realType);
313
273
  }
314
-
315
274
  handleSwitchMonthOrYear(switchType, panelType) {
316
275
  const {
317
276
  type,
318
277
  syncSwitchMonth
319
278
  } = this.getProps();
320
- const rangeType = this.isRangeType(type); // range type and syncSwitchMonth, we should change panels at same time
321
-
279
+ const rangeType = this.isRangeType(type);
280
+ // range type and syncSwitchMonth, we should change panels at same time
322
281
  if (rangeType && syncSwitchMonth) {
323
282
  this.handleYearOrMonthChange(switchType, 'left', 1, true);
324
283
  this.handleYearOrMonthChange(switchType, 'right', 1, true);
@@ -329,7 +288,6 @@ export default class MonthsGridFoundation extends BaseFoundation {
329
288
  * In order to prevent the two panels from being the same month, this will confuse the user when selecting the range
330
289
  * https://github.com/DouyinFE/semi-design/issues/260
331
290
  */
332
-
333
291
  if (rangeType) {
334
292
  const target = this.getTargetChangeDate({
335
293
  panelType,
@@ -342,34 +300,26 @@ export default class MonthsGridFoundation extends BaseFoundation {
342
300
  }
343
301
  }
344
302
  }
345
-
346
303
  prevMonth(panelType) {
347
304
  this.handleSwitchMonthOrYear('prevMonth', panelType);
348
305
  }
349
-
350
306
  nextMonth(panelType) {
351
307
  this.handleSwitchMonthOrYear('nextMonth', panelType);
352
308
  }
353
-
354
309
  prevYear(panelType) {
355
310
  this.handleSwitchMonthOrYear('prevYear', panelType);
356
311
  }
357
-
358
312
  nextYear(panelType) {
359
313
  this.handleSwitchMonthOrYear('nextYear', panelType);
360
314
  }
361
315
  /**
362
316
  * Calculate the year and month difference
363
317
  */
364
-
365
-
366
318
  _getDiff(type, target, panelType) {
367
319
  const panelDetail = this._getPanelDetail(panelType);
368
-
369
320
  const diff = dateDiffFns[type] && dateDiffFns[type](target, panelDetail.pickerDate);
370
321
  return diff;
371
322
  }
372
-
373
323
  _getPanelDetail(panelType) {
374
324
  return panelType === strings.PANEL_TYPE_RIGHT ? this.getState('monthRight') : this.getState('monthLeft');
375
325
  }
@@ -380,23 +330,12 @@ export default class MonthsGridFoundation extends BaseFoundation {
380
330
  * @param {String} token
381
331
  * @returns
382
332
  */
383
-
384
-
385
333
  localeFormat(date, token) {
386
334
  const dateFnsLocale = this._adapter.getProp('dateFnsLocale');
387
-
388
335
  return format(date, token, {
389
336
  locale: dateFnsLocale
390
337
  });
391
338
  }
392
-
393
- isValidTimeZone(timeZone) {
394
- const propTimeZone = this.getProp('timeZone');
395
-
396
- const _timeZone = isNullOrUndefined(timeZone) ? propTimeZone : timeZone;
397
-
398
- return ['string', 'number'].includes(typeof _timeZone) && _timeZone !== '';
399
- }
400
339
  /**
401
340
  * 根据 type 处理 onChange 返回的参数
402
341
  *
@@ -424,20 +363,15 @@ export default class MonthsGridFoundation extends BaseFoundation {
424
363
  *
425
364
  * @param {Date|Date[]} value
426
365
  */
427
-
428
-
429
366
  disposeCallbackArgs(value) {
430
367
  let _value = Array.isArray(value) ? value : value && [value] || [];
431
-
432
- if (this.isValidTimeZone()) {
433
- const timeZone = this.getProp('timeZone');
368
+ const timeZone = this.getProp('timeZone');
369
+ if (isValidTimeZone(timeZone)) {
434
370
  _value = _value.map(date => zonedTimeToUtc(date, timeZone));
435
371
  }
436
-
437
372
  const type = this.getProp('type');
438
373
  const formatToken = this.getProp('format') || getDefaultFormatTokenByType(type);
439
374
  let notifyValue, notifyDate;
440
-
441
375
  switch (type) {
442
376
  case 'date':
443
377
  case 'dateTime':
@@ -449,25 +383,20 @@ export default class MonthsGridFoundation extends BaseFoundation {
449
383
  notifyValue = _value.map(v => v && this.localeFormat(v, formatToken));
450
384
  notifyDate = [..._value];
451
385
  }
452
-
453
386
  break;
454
-
455
387
  case 'dateRange':
456
388
  case 'dateTimeRange':
457
389
  notifyValue = _value.map(v => v && this.localeFormat(v, formatToken));
458
390
  notifyDate = [..._value];
459
391
  break;
460
-
461
392
  default:
462
393
  break;
463
394
  }
464
-
465
395
  return {
466
396
  notifyValue,
467
397
  notifyDate
468
398
  };
469
399
  }
470
-
471
400
  handleYearOrMonthChange(type) {
472
401
  let panelType = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : strings.PANEL_TYPE_LEFT;
473
402
  let step = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : 1;
@@ -482,21 +411,17 @@ export default class MonthsGridFoundation extends BaseFoundation {
482
411
  } = this.getStates();
483
412
  const isRangeType = this.isRangeType(datePanelType);
484
413
  const isLeftPanelInRange = isRangeType && panelType === strings.PANEL_TYPE_LEFT;
485
-
486
414
  const panelDetail = this._getPanelDetail(panelType);
487
-
488
415
  const {
489
416
  pickerDate
490
417
  } = panelDetail;
491
418
  const fn = dateCalcFns[type];
492
- const targetMonth = fn(pickerDate, step); // Determine if the date has changed
493
-
419
+ const targetMonth = fn(pickerDate, step);
420
+ // Determine if the date has changed
494
421
  const panelDateHasUpdate = panelType === strings.PANEL_TYPE_LEFT && !_isEqual(targetMonth, monthLeft.pickerDate) || panelType === strings.PANEL_TYPE_RIGHT && !_isEqual(targetMonth, monthRight.pickerDate);
495
-
496
422
  this._updatePanelDetail(panelType, {
497
423
  pickerDate: targetMonth
498
424
  });
499
-
500
425
  if (panelDateHasUpdate) {
501
426
  // When the date changes
502
427
  if (!isRangeType) {
@@ -505,7 +430,6 @@ export default class MonthsGridFoundation extends BaseFoundation {
505
430
  notifyValue,
506
431
  notifyDate
507
432
  } = this.disposeCallbackArgs(targetMonth);
508
-
509
433
  this._adapter.notifyPanelChange(notifyDate, notifyValue);
510
434
  } else {
511
435
  // Double Panel Type
@@ -516,19 +440,16 @@ export default class MonthsGridFoundation extends BaseFoundation {
516
440
  // Right panel
517
441
  this.newBiMonthPanelDate[1] = targetMonth;
518
442
  }
519
-
520
443
  if (!(isLeftPanelInRange && notSeparateInRange)) {
521
444
  // Not synchronously switching the left panel in the scene
522
445
  const {
523
446
  notifyValue,
524
447
  notifyDate
525
448
  } = this.disposeCallbackArgs(this.newBiMonthPanelDate);
526
-
527
449
  this._adapter.notifyPanelChange(notifyDate, notifyValue);
528
450
  }
529
451
  }
530
452
  }
531
-
532
453
  if (autoSwitchDate) {
533
454
  this.updateDateAfterChangeYM(type, targetMonth);
534
455
  }
@@ -538,8 +459,6 @@ export default class MonthsGridFoundation extends BaseFoundation {
538
459
  * @param {*} type
539
460
  * @param {*} targetDate
540
461
  */
541
-
542
-
543
462
  updateDateAfterChangeYM(type, targetDate) {
544
463
  const {
545
464
  multiple,
@@ -551,13 +470,12 @@ export default class MonthsGridFoundation extends BaseFoundation {
551
470
  rangeStart,
552
471
  rangeEnd,
553
472
  monthLeft
554
- } = this.getStates(); // FIXME:
555
-
473
+ } = this.getStates();
474
+ // FIXME:
556
475
  const includeRange = ['dateRange', 'dateTimeRange'].includes(type);
557
476
  const options = {
558
477
  closePanel: false
559
478
  };
560
-
561
479
  if (!multiple && !includeRange && selectedSet.size) {
562
480
  const selectedStr = Array.from(selectedSet)[0];
563
481
  const selectedDate = new Date(selectedStr);
@@ -567,7 +485,6 @@ export default class MonthsGridFoundation extends BaseFoundation {
567
485
  year,
568
486
  month
569
487
  });
570
-
571
488
  if (dateType === 'dateTime') {
572
489
  /**
573
490
  * 如果是 type dateTime 切换月份要读取只取的time
@@ -575,42 +492,34 @@ export default class MonthsGridFoundation extends BaseFoundation {
575
492
  */
576
493
  fullDate = this._mergeDateAndTime(fullDate, monthLeft.pickerDate);
577
494
  }
578
-
579
495
  if (disabledDate(fullDate, {
580
496
  rangeStart,
581
497
  rangeEnd
582
498
  })) {
583
499
  return;
584
500
  }
585
-
586
501
  this._adapter.notifySelectedChange([fullDate], options);
587
502
  }
588
503
  }
589
-
590
504
  _isMultiple() {
591
505
  return Boolean(this.getProp('multiple')) && this.getProp('type') === 'date';
592
506
  }
593
-
594
- _isRange() {// return this._adapter.getProp('type') === dateRangeTypeKey;
507
+ _isRange() {
508
+ // return this._adapter.getProp('type') === dateRangeTypeKey;
595
509
  }
596
-
597
510
  handleDayClick(day, panelType) {
598
511
  const type = this.getProp('type');
599
-
600
512
  switch (true) {
601
513
  case type === 'date' || type === 'dateTime':
602
514
  this.handleDateSelected(day, panelType);
603
515
  break;
604
-
605
516
  case type === 'dateRange' || type === 'dateTimeRange':
606
517
  this.handleRangeSelected(day);
607
518
  break;
608
-
609
519
  default:
610
520
  break;
611
521
  }
612
522
  }
613
-
614
523
  handleDateSelected(day, panelType) {
615
524
  const {
616
525
  max,
@@ -618,22 +527,17 @@ export default class MonthsGridFoundation extends BaseFoundation {
618
527
  isControlledComponent,
619
528
  dateFnsLocale
620
529
  } = this.getProps();
621
-
622
530
  const multiple = this._isMultiple();
623
-
624
531
  const {
625
532
  selected
626
533
  } = this.getStates();
627
-
628
534
  const monthDetail = this._getPanelDetail(panelType);
629
-
630
535
  const newSelected = new Set(multiple ? [...selected] : []);
631
536
  const {
632
537
  fullDate
633
538
  } = day;
634
539
  const time = monthDetail.pickerDate;
635
540
  const dateStr = type === 'dateTime' ? this._mergeDateAndTime(fullDate, time) : fullDate;
636
-
637
541
  if (!multiple) {
638
542
  newSelected.add(dateStr);
639
543
  } else {
@@ -645,24 +549,19 @@ export default class MonthsGridFoundation extends BaseFoundation {
645
549
  newSelected.add(dateStr);
646
550
  }
647
551
  }
648
-
649
- const dateFormat = this.getValidDateFormat(); // When passed to the upper layer, it is converted into a Date object to ensure that the input parameter format of initFormDefaultValue is consistent
650
-
552
+ const dateFormat = this.getValidDateFormat();
553
+ // When passed to the upper layer, it is converted into a Date object to ensure that the input parameter format of initFormDefaultValue is consistent
651
554
  const newSelectedDates = [...newSelected].map(_dateStr => compatibleParse(_dateStr, dateFormat, undefined, dateFnsLocale));
652
555
  this.handleShowDateAndTime(panelType, time);
653
-
654
556
  if (!isControlledComponent) {
655
557
  // Uncontrolled components, update internal values when operating, and notify external
656
558
  // MonthGrid internally uses string to represent fullDate for easy rendering
657
559
  this._adapter.updateDaySelected(newSelected);
658
560
  }
659
-
660
561
  this._adapter.notifySelectedChange(newSelectedDates);
661
562
  }
662
-
663
563
  handleShowDateAndTime(panelType, pickerDate, showDate) {
664
564
  const _showDate = showDate || pickerDate;
665
-
666
565
  this._updatePanelDetail(panelType, {
667
566
  showDate: _showDate,
668
567
  pickerDate
@@ -675,23 +574,18 @@ export default class MonthsGridFoundation extends BaseFoundation {
675
574
  * @param {Date|string} time
676
575
  * @returns {Date}
677
576
  */
678
-
679
-
680
577
  _mergeDateAndTime(date, time) {
681
578
  const dateFnsLocale = this._adapter.getProp('dateFnsLocale');
682
-
683
579
  const dateStr = format(isValidDate(date) ? date : compatibleParse(date, strings.FORMAT_FULL_DATE, undefined, dateFnsLocale), strings.FORMAT_FULL_DATE);
684
580
  const timeStr = format(isValidDate(time) ? time : compatibleParse(time, strings.FORMAT_TIME_PICKER, undefined, dateFnsLocale), strings.FORMAT_TIME_PICKER);
685
581
  const timeFormat = this.getValidTimeFormat();
686
- return compatibleParse("".concat(dateStr, " ").concat(timeStr), timeFormat, undefined, dateFnsLocale);
582
+ return compatibleParse(`${dateStr} ${timeStr}`, timeFormat, undefined, dateFnsLocale);
687
583
  }
688
-
689
584
  handleRangeSelected(day) {
690
585
  let {
691
586
  rangeStart,
692
587
  rangeEnd
693
588
  } = this.getStates();
694
-
695
589
  const {
696
590
  startDateOffset,
697
591
  endDateOffset,
@@ -700,81 +594,70 @@ export default class MonthsGridFoundation extends BaseFoundation {
700
594
  rangeInputFocus,
701
595
  triggerRender
702
596
  } = this._adapter.getProps();
703
-
704
597
  const {
705
598
  fullDate
706
599
  } = day;
707
600
  let rangeStartReset = false;
708
601
  let rangeEndReset = false;
709
602
  const isDateRangeAndHasOffset = (startDateOffset || endDateOffset) && type === 'dateRange';
710
-
711
603
  if (isDateRangeAndHasOffset) {
712
604
  rangeStart = getFullDateOffset(startDateOffset, fullDate);
713
605
  rangeEnd = getFullDateOffset(endDateOffset, fullDate);
714
606
  } else {
715
607
  if (rangeInputFocus === 'rangeEnd') {
716
- rangeEnd = fullDate; // rangStart Parten in dateTime: 'yyyy-MM-dd HH:MM:SS', rangeEnd parten: 'yyyy-MM-dd'
717
-
608
+ rangeEnd = fullDate;
609
+ // rangStart Parten in dateTime: 'yyyy-MM-dd HH:MM:SS', rangeEnd parten: 'yyyy-MM-dd'
718
610
  if (rangeStart && rangeEnd && isBefore(rangeEnd, rangeStart.trim().split(/\s+/)[0])) {
719
611
  rangeStart = null;
720
612
  rangeStartReset = true;
721
- } // Compatible to select date after opening the panel without click input
722
-
613
+ }
614
+ // Compatible to select date after opening the panel without click input
723
615
  } else if (rangeInputFocus === 'rangeStart' || !rangeInputFocus) {
724
- rangeStart = fullDate; // rangEnd Parten in dateTime: 'yyyy-MM-dd HH:MM:SS', rangeStart parten: 'yyyy-MM-dd'
725
-
616
+ rangeStart = fullDate;
617
+ // rangEnd Parten in dateTime: 'yyyy-MM-dd HH:MM:SS', rangeStart parten: 'yyyy-MM-dd'
726
618
  if (rangeStart && rangeEnd && isBefore(rangeEnd.trim().split(/\s+/)[0], rangeStart)) {
727
619
  rangeEnd = null;
728
620
  rangeEndReset = true;
729
621
  }
730
622
  }
731
- } // next focus logic
732
-
733
-
623
+ }
624
+ // next focus logic
734
625
  const isRangeType = /range/i.test(type);
735
-
736
626
  if (isRangeType) {
737
627
  if (isDateRangeAndHasOffset) {
738
628
  this._adapter.setRangeStart(rangeStart);
739
-
740
629
  this._adapter.setRangeEnd(rangeEnd);
741
630
  } else {
742
631
  if (rangeInputFocus === 'rangeEnd') {
743
632
  this._adapter.setRangeEnd(rangeEnd);
744
-
745
633
  if (rangeStartReset) {
746
634
  this._adapter.setRangeStart(rangeStart);
747
635
  }
748
-
749
636
  if (!this._adapter.isAnotherPanelHasOpened('rangeEnd') || !rangeStart) {
750
637
  this._adapter.setRangeInputFocus('rangeStart');
751
638
  }
752
639
  } else if (rangeInputFocus === 'rangeStart' || !rangeInputFocus) {
753
640
  this._adapter.setRangeStart(rangeStart);
754
-
755
641
  if (rangeEndReset) {
756
642
  this._adapter.setRangeEnd(rangeEnd);
757
643
  }
758
-
759
644
  if (!this._adapter.isAnotherPanelHasOpened('rangeStart') || !rangeEnd) {
760
645
  this._adapter.setRangeInputFocus('rangeEnd');
761
646
  }
762
647
  }
763
648
  }
764
649
  }
765
-
766
- const dateFormat = this.getValidDateFormat(); // only notify when choose completed
767
-
650
+ const dateFormat = this.getValidDateFormat();
651
+ // only notify when choose completed
768
652
  if (rangeStart || rangeEnd) {
769
653
  const [startDate, endDate] = [compatibleParse(rangeStart, dateFormat, undefined, dateFnsLocale), compatibleParse(rangeEnd, dateFormat, undefined, dateFnsLocale)];
770
- let date = [startDate, endDate]; // If the type is dateRangeTime, add the value of time
771
-
654
+ let date = [startDate, endDate];
655
+ // If the type is dateRangeTime, add the value of time
772
656
  if (type === 'dateTimeRange') {
773
657
  const startTime = this.getState('monthLeft').pickerDate;
774
658
  const endTime = this.getState('monthRight').pickerDate;
775
659
  const start = rangeStart ? this._mergeDateAndTime(rangeStart, startTime) : null;
776
660
  const end = rangeEnd ? this._mergeDateAndTime(rangeEnd, endTime) : null;
777
-
778
661
  if (isSameDay(startDate, endDate) && isBefore(end, start)) {
779
662
  date = [start, start];
780
663
  } else {
@@ -785,16 +668,12 @@ export default class MonthsGridFoundation extends BaseFoundation {
785
668
  * no need to check focus then
786
669
  * - dateRange and isDateRangeAndHasOffset
787
670
  */
788
-
789
-
790
671
  const needCheckFocusRecord = !(type === 'dateRange' && isDateRangeAndHasOffset);
791
-
792
672
  this._adapter.notifySelectedChange(date, {
793
673
  needCheckFocusRecord
794
674
  });
795
675
  }
796
676
  }
797
-
798
677
  _isNeedSwap(rangeStart, rangeEnd) {
799
678
  // Check whether the start and end are reasonable and whether they need to be reversed
800
679
  return rangeStart && rangeEnd && isBefore(rangeEnd, rangeStart);
@@ -803,8 +682,6 @@ export default class MonthsGridFoundation extends BaseFoundation {
803
682
  * Day may be empty, this is unhover state
804
683
  * @param {*} day
805
684
  */
806
-
807
-
808
685
  handleDayHover() {
809
686
  let day = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {
810
687
  fullDate: ''
@@ -818,25 +695,19 @@ export default class MonthsGridFoundation extends BaseFoundation {
818
695
  endDateOffset,
819
696
  type
820
697
  } = this.getProps();
821
-
822
698
  this._adapter.setHoverDay(fullDate);
823
-
824
699
  if ((startDateOffset || endDateOffset) && type === 'dateRange') {
825
700
  const offsetRangeStart = getFullDateOffset(startDateOffset, fullDate);
826
701
  const offsetRangeEnd = getFullDateOffset(endDateOffset, fullDate);
827
-
828
702
  this._adapter.setOffsetRangeStart(offsetRangeStart);
829
-
830
703
  this._adapter.setOffsetRangeEnd(offsetRangeEnd);
831
704
  }
832
- } // Guarantee that monthLeft, monthRight will not appear in the same month or monthLeft is greater than MonthRight
833
-
834
-
705
+ }
706
+ // Guarantee that monthLeft, monthRight will not appear in the same month or monthLeft is greater than MonthRight
835
707
  _autoAdjustMonth(monthLeft, monthRight) {
836
708
  let newMonthLeft = monthLeft;
837
709
  let newMonthRight = monthRight;
838
710
  const difference = differenceInCalendarMonths(monthLeft.pickerDate, monthRight.pickerDate);
839
-
840
711
  if (difference > 0) {
841
712
  // The month on the left is larger than the month on the right, swap
842
713
  newMonthLeft = Object.assign({}, monthRight);
@@ -848,36 +719,28 @@ export default class MonthsGridFoundation extends BaseFoundation {
848
719
  pickerDate: addMonths(monthRight.pickerDate, 1)
849
720
  });
850
721
  }
851
-
852
722
  return {
853
723
  monthLeft: newMonthLeft,
854
724
  monthRight: newMonthRight
855
725
  };
856
726
  }
857
-
858
727
  getValidTimeFormat() {
859
728
  const formatProp = this.getProp('format') || strings.FORMAT_TIME_PICKER;
860
729
  const timeFormatTokens = [];
861
-
862
730
  if (_includes(formatProp, 'h') || _includes(formatProp, 'H')) {
863
731
  timeFormatTokens.push('HH');
864
732
  }
865
-
866
733
  if (_includes(formatProp, 'm')) {
867
734
  timeFormatTokens.push('mm');
868
735
  }
869
-
870
736
  if (_includes(formatProp, 's')) {
871
737
  timeFormatTokens.push('ss');
872
738
  }
873
-
874
739
  return timeFormatTokens.join(':');
875
740
  }
876
-
877
741
  getValidDateFormat() {
878
742
  return this.getProp('format') || getDefaultFormatToken(this.getProp('type'));
879
743
  }
880
-
881
744
  handleTimeChange(newTime, panelType) {
882
745
  const {
883
746
  rangeEnd,
@@ -886,21 +749,19 @@ export default class MonthsGridFoundation extends BaseFoundation {
886
749
  const dateFnsLocale = this.getProp('dateFnsLocale');
887
750
  const ts = newTime.timeStampValue;
888
751
  const type = this.getProp('type');
889
-
890
752
  const panelDetail = this._getPanelDetail(panelType);
891
-
892
753
  const {
893
754
  showDate
894
755
  } = panelDetail;
895
756
  const timeDate = new Date(ts);
896
757
  const dateFormat = this.getValidDateFormat();
897
758
  const destRange = panelType === strings.PANEL_TYPE_RIGHT ? rangeEnd : rangeStart;
898
- let year, monthNo, date; // if (pickerDate && isValidDate(pickerDate)) {
759
+ let year, monthNo, date;
760
+ // if (pickerDate && isValidDate(pickerDate)) {
899
761
  // year = pickerDate.getFullYear();
900
762
  // monthNo = pickerDate.getMonth();
901
763
  // date = pickerDate.getDate();
902
764
  // } else
903
-
904
765
  if (type === 'dateTimeRange' && destRange) {
905
766
  const rangeDate = compatibleParse(destRange, dateFormat, undefined, dateFnsLocale);
906
767
  year = rangeDate.getFullYear();
@@ -911,17 +772,14 @@ export default class MonthsGridFoundation extends BaseFoundation {
911
772
  monthNo = showDate.getMonth();
912
773
  date = showDate.getDate();
913
774
  }
914
-
915
775
  const hours = timeDate.getHours();
916
776
  const minutes = timeDate.getMinutes();
917
777
  const seconds = timeDate.getSeconds();
918
778
  const milSeconds = timeDate.getMilliseconds();
919
779
  const dateArgs = [year, monthNo, date, hours, minutes, seconds, milSeconds];
920
780
  const fullValidDate = new Date(...dateArgs);
921
-
922
781
  if (type === 'dateTimeRange') {
923
782
  this.handleShowDateAndTime(panelType, fullValidDate, showDate);
924
-
925
783
  this._updateTimeInDateRange(panelType, fullValidDate);
926
784
  } else {
927
785
  const fullDate = formatFullDate(year, monthNo + 1, date);
@@ -930,7 +788,6 @@ export default class MonthsGridFoundation extends BaseFoundation {
930
788
  fullValidDate
931
789
  }, panelType);
932
790
  this.handleShowDateAndTime(panelType, fullValidDate);
933
-
934
791
  this._adapter.notifySelectedChange([fullValidDate]);
935
792
  }
936
793
  }
@@ -939,8 +796,6 @@ export default class MonthsGridFoundation extends BaseFoundation {
939
796
  * @param {string} panelType
940
797
  * @param {Date} timeDate
941
798
  */
942
-
943
-
944
799
  _updateTimeInDateRange(panelType, timeDate) {
945
800
  const {
946
801
  isControlledComponent,
@@ -948,74 +803,63 @@ export default class MonthsGridFoundation extends BaseFoundation {
948
803
  } = this.getProps();
949
804
  let rangeStart = this.getState('rangeStart');
950
805
  let rangeEnd = this.getState('rangeEnd');
951
- const dateFormat = this.getValidDateFormat(); // TODO: Modify a time individually
952
-
806
+ const dateFormat = this.getValidDateFormat();
807
+ // TODO: Modify a time individually
953
808
  if (rangeStart && rangeEnd) {
954
809
  let startDate = compatibleParse(rangeStart, dateFormat, undefined, dateFnsLocale);
955
- let endDate = compatibleParse(rangeEnd, dateFormat, undefined, dateFnsLocale); // console.log('_updateTimeInDateRange()', rangeStart, rangeEnd, startDate, endDate);
956
-
810
+ let endDate = compatibleParse(rangeEnd, dateFormat, undefined, dateFnsLocale);
811
+ // console.log('_updateTimeInDateRange()', rangeStart, rangeEnd, startDate, endDate);
957
812
  if (panelType === strings.PANEL_TYPE_RIGHT) {
958
813
  endDate = this._mergeDateAndTime(timeDate, timeDate);
959
814
  rangeEnd = format(endDate, strings.FORMAT_DATE_TIME);
960
-
961
815
  if (this._isNeedSwap(rangeStart, rangeEnd)) {
962
816
  [rangeStart, rangeEnd] = [rangeEnd, rangeStart];
963
817
  [startDate, endDate] = [endDate, startDate];
964
818
  }
965
-
966
819
  if (!isControlledComponent) {
967
820
  this._adapter.setRangeEnd(rangeEnd);
968
821
  }
969
822
  } else {
970
823
  startDate = this._mergeDateAndTime(timeDate, timeDate);
971
824
  rangeStart = format(startDate, strings.FORMAT_DATE_TIME);
972
-
973
825
  if (this._isNeedSwap(rangeStart, rangeEnd)) {
974
826
  [rangeStart, rangeEnd] = [rangeEnd, rangeStart];
975
827
  [startDate, endDate] = [endDate, startDate];
976
828
  }
977
-
978
829
  if (!isControlledComponent) {
979
830
  this._adapter.setRangeStart(rangeStart);
980
831
  }
981
- } // console.log('_updateTimeInDateRange()', rangeStart, rangeEnd, startDate, endDate);
982
-
983
-
832
+ }
833
+ // console.log('_updateTimeInDateRange()', rangeStart, rangeEnd, startDate, endDate);
984
834
  this._adapter.notifySelectedChange([startDate, endDate]);
985
835
  }
986
836
  }
987
-
988
837
  _updatePanelDetail(panelType, kvs) {
989
838
  const {
990
839
  monthLeft,
991
840
  monthRight
992
841
  } = this.getStates();
993
-
994
842
  if (panelType === strings.PANEL_TYPE_RIGHT) {
995
843
  this._adapter.updateMonthOnRight(Object.assign(Object.assign({}, monthRight), kvs));
996
844
  } else {
997
845
  this._adapter.updateMonthOnLeft(Object.assign(Object.assign({}, monthLeft), kvs));
998
846
  }
999
847
  }
1000
-
1001
848
  showYearPicker(panelType) {
1002
849
  this._updatePanelDetail(panelType, {
1003
850
  isTimePickerOpen: false,
1004
851
  isYearPickerOpen: true
1005
852
  });
1006
853
  }
1007
-
1008
854
  showTimePicker(panelType, opt) {
1009
855
  if (this.getProp('disabledTimePicker')) {
1010
856
  return;
1011
857
  }
1012
-
1013
858
  this._updatePanelDetail(panelType, {
1014
859
  isTimePickerOpen: true,
1015
860
  isYearPickerOpen: false
1016
861
  });
1017
862
  }
1018
-
1019
863
  showDatePanel(panelType) {
1020
864
  this._updatePanelDetail(panelType, {
1021
865
  isTimePickerOpen: false,
@@ -1029,17 +873,13 @@ export default class MonthsGridFoundation extends BaseFoundation {
1029
873
  * - When yam open type is 'left' or 'right', weeks minHeight should be set
1030
874
  * If the minHeight is not set, the change of the number of weeks will cause the scrollList to be unstable
1031
875
  */
1032
-
1033
-
1034
876
  getYAMOpenType() {
1035
877
  const {
1036
878
  monthLeft,
1037
879
  monthRight
1038
880
  } = this._adapter.getStates();
1039
-
1040
881
  const leftYearPickerOpen = monthLeft.isYearPickerOpen;
1041
882
  const rightYearPickerOpen = monthRight.isYearPickerOpen;
1042
-
1043
883
  if (leftYearPickerOpen && rightYearPickerOpen) {
1044
884
  return 'both';
1045
885
  } else if (leftYearPickerOpen) {
@@ -1050,5 +890,4 @@ export default class MonthsGridFoundation extends BaseFoundation {
1050
890
  return 'none';
1051
891
  }
1052
892
  }
1053
-
1054
893
  }