@douyinfe/semi-foundation 2.1.0-next.0 → 2.1.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 (676) hide show
  1. package/babel.config.js +33 -0
  2. package/calendar/foundation.ts +3 -1
  3. package/cascader/foundation.ts +1 -1
  4. package/collapse/foundation.ts +1 -1
  5. package/gulpfile.js +9 -27
  6. package/icons/icons.scss +39 -0
  7. package/icons/variables.scss +7 -0
  8. package/lib/es/calendar/foundation.d.ts +2 -1
  9. package/lib/es/cascader/foundation.d.ts +1 -1
  10. package/lib/es/collapse/foundation.d.ts +1 -1
  11. package/lib/es/icons/icons.css +40 -0
  12. package/lib/es/icons/icons.scss +39 -0
  13. package/lib/es/icons/variables.scss +7 -0
  14. package/lib/es/pagination/foundation.d.ts +2 -2
  15. package/lib/es/popconfirm/popconfirmFoundation.d.ts +2 -0
  16. package/lib/es/popconfirm/popconfirmFoundation.js +4 -0
  17. package/lib/es/scrollList/itemFoundation.d.ts +3 -3
  18. package/lib/es/select/foundation.d.ts +2 -1
  19. package/lib/es/select/foundation.js +10 -5
  20. package/lib/es/table/utils.d.ts +1 -1
  21. package/lib/es/tabs/foundation.d.ts +3 -0
  22. package/lib/es/tabs/foundation.js +4 -8
  23. package/lib/es/tabs/tabs.css +13 -1
  24. package/lib/es/tabs/tabs.scss +96 -76
  25. package/lib/es/tagInput/foundation.d.ts +1 -0
  26. package/lib/es/tagInput/foundation.js +2 -0
  27. package/lib/es/timeline/timeline.css +1 -0
  28. package/lib/es/timeline/timeline.scss +1 -0
  29. package/lib/es/timeline/variables.scss +1 -0
  30. package/lib/es/tooltip/foundation.js +5 -2
  31. package/lib/es/tree/foundation.d.ts +1 -1
  32. package/lib/es/tree/treeUtil.js +10 -7
  33. package/lib/es/treeSelect/foundation.d.ts +10 -12
  34. package/lib/es/utils/log.js +3 -1
  35. package/package.json +4 -4
  36. package/pagination/foundation.ts +2 -2
  37. package/popconfirm/popconfirmFoundation.ts +5 -0
  38. package/scrollList/itemFoundation.ts +3 -3
  39. package/select/foundation.ts +10 -8
  40. package/table/utils.ts +1 -1
  41. package/tabs/foundation.ts +7 -8
  42. package/tabs/tabs.scss +96 -76
  43. package/tagInput/foundation.ts +2 -0
  44. package/timeline/timeline.scss +1 -0
  45. package/timeline/variables.scss +1 -0
  46. package/tooltip/foundation.ts +4 -2
  47. package/tree/foundation.ts +1 -1
  48. package/tree/treeUtil.ts +1 -1
  49. package/treeSelect/foundation.ts +11 -10
  50. package/utils/log.ts +3 -1
  51. package/getBabelConfig.js +0 -35
  52. package/lib/cjs/_portal/portal.css +0 -15
  53. package/lib/cjs/_portal/portal.scss +0 -17
  54. package/lib/cjs/anchor/anchor.css +0 -118
  55. package/lib/cjs/anchor/anchor.scss +0 -120
  56. package/lib/cjs/anchor/constants.d.ts +0 -11
  57. package/lib/cjs/anchor/constants.js +0 -24
  58. package/lib/cjs/anchor/foundation.d.ts +0 -41
  59. package/lib/cjs/anchor/foundation.js +0 -268
  60. package/lib/cjs/anchor/linkFoundation.d.ts +0 -14
  61. package/lib/cjs/anchor/linkFoundation.js +0 -50
  62. package/lib/cjs/anchor/rtl.scss +0 -18
  63. package/lib/cjs/anchor/variables.scss +0 -27
  64. package/lib/cjs/autoComplete/autoComplete.css +0 -103
  65. package/lib/cjs/autoComplete/autoComplete.scss +0 -37
  66. package/lib/cjs/autoComplete/constants.d.ts +0 -10
  67. package/lib/cjs/autoComplete/constants.js +0 -25
  68. package/lib/cjs/autoComplete/foundation.d.ts +0 -62
  69. package/lib/cjs/autoComplete/foundation.js +0 -459
  70. package/lib/cjs/autoComplete/rtl.scss +0 -8
  71. package/lib/cjs/autoComplete/variables.scss +0 -3
  72. package/lib/cjs/avatar/avatar.css +0 -426
  73. package/lib/cjs/avatar/avatar.scss +0 -205
  74. package/lib/cjs/avatar/constants.d.ts +0 -10
  75. package/lib/cjs/avatar/constants.js +0 -24
  76. package/lib/cjs/avatar/foundation.d.ts +0 -14
  77. package/lib/cjs/avatar/foundation.js +0 -49
  78. package/lib/cjs/avatar/mixin.css +0 -3
  79. package/lib/cjs/avatar/mixin.scss +0 -4
  80. package/lib/cjs/avatar/rtl.scss +0 -69
  81. package/lib/cjs/avatar/variables.scss +0 -45
  82. package/lib/cjs/backtop/backtop.css +0 -20
  83. package/lib/cjs/backtop/backtop.scss +0 -17
  84. package/lib/cjs/backtop/constants.d.ts +0 -5
  85. package/lib/cjs/backtop/constants.js +0 -18
  86. package/lib/cjs/backtop/foundation.d.ts +0 -21
  87. package/lib/cjs/backtop/foundation.js +0 -114
  88. package/lib/cjs/backtop/rtl.scss +0 -10
  89. package/lib/cjs/backtop/variables.scss +0 -3
  90. package/lib/cjs/badge/badge.css +0 -146
  91. package/lib/cjs/badge/badge.scss +0 -168
  92. package/lib/cjs/badge/constants.d.ts +0 -10
  93. package/lib/cjs/badge/constants.js +0 -24
  94. package/lib/cjs/badge/rtl.scss +0 -8
  95. package/lib/cjs/badge/variables.scss +0 -43
  96. package/lib/cjs/banner/banner.css +0 -92
  97. package/lib/cjs/banner/banner.scss +0 -109
  98. package/lib/cjs/banner/constants.d.ts +0 -7
  99. package/lib/cjs/banner/constants.js +0 -20
  100. package/lib/cjs/banner/foundation.d.ts +0 -9
  101. package/lib/cjs/banner/foundation.js +0 -30
  102. package/lib/cjs/banner/rtl.scss +0 -20
  103. package/lib/cjs/banner/variables.scss +0 -27
  104. package/lib/cjs/base/base.css +0 -24
  105. package/lib/cjs/base/base.scss +0 -33
  106. package/lib/cjs/base/constants.d.ts +0 -3
  107. package/lib/cjs/base/constants.js +0 -22
  108. package/lib/cjs/base/env.d.ts +0 -1
  109. package/lib/cjs/base/env.js +0 -11
  110. package/lib/cjs/base/foundation.d.ts +0 -59
  111. package/lib/cjs/base/foundation.js +0 -144
  112. package/lib/cjs/base/index.d.ts +0 -5
  113. package/lib/cjs/base/index.js +0 -18
  114. package/lib/cjs/breadcrumb/breadcrumb.css +0 -109
  115. package/lib/cjs/breadcrumb/breadcrumb.scss +0 -120
  116. package/lib/cjs/breadcrumb/constants.d.ts +0 -7
  117. package/lib/cjs/breadcrumb/constants.js +0 -20
  118. package/lib/cjs/breadcrumb/foundation.d.ts +0 -24
  119. package/lib/cjs/breadcrumb/foundation.js +0 -52
  120. package/lib/cjs/breadcrumb/itemFoundation.d.ts +0 -22
  121. package/lib/cjs/breadcrumb/itemFoundation.js +0 -31
  122. package/lib/cjs/breadcrumb/rtl.scss +0 -33
  123. package/lib/cjs/breadcrumb/variables.scss +0 -19
  124. package/lib/cjs/button/button.css +0 -309
  125. package/lib/cjs/button/button.scss +0 -219
  126. package/lib/cjs/button/constants.d.ts +0 -6
  127. package/lib/cjs/button/constants.js +0 -28
  128. package/lib/cjs/button/iconButton.css +0 -160
  129. package/lib/cjs/button/iconButton.scss +0 -70
  130. package/lib/cjs/button/rtl.scss +0 -128
  131. package/lib/cjs/button/splitButtonGroup.scss +0 -32
  132. package/lib/cjs/button/variables.scss +0 -128
  133. package/lib/cjs/calendar/calendar.css +0 -592
  134. package/lib/cjs/calendar/calendar.scss +0 -520
  135. package/lib/cjs/calendar/constants.d.ts +0 -7
  136. package/lib/cjs/calendar/constants.js +0 -20
  137. package/lib/cjs/calendar/eventUtil.d.ts +0 -93
  138. package/lib/cjs/calendar/eventUtil.js +0 -431
  139. package/lib/cjs/calendar/foundation.d.ts +0 -98
  140. package/lib/cjs/calendar/foundation.js +0 -483
  141. package/lib/cjs/calendar/rtl.scss +0 -134
  142. package/lib/cjs/calendar/variables.scss +0 -105
  143. package/lib/cjs/card/card.css +0 -148
  144. package/lib/cjs/card/card.scss +0 -146
  145. package/lib/cjs/card/constants.d.ts +0 -8
  146. package/lib/cjs/card/constants.js +0 -21
  147. package/lib/cjs/card/rtl.scss +0 -43
  148. package/lib/cjs/card/variables.scss +0 -30
  149. package/lib/cjs/cascader/cascader.css +0 -438
  150. package/lib/cjs/cascader/cascader.scss +0 -436
  151. package/lib/cjs/cascader/constants.d.ts +0 -14
  152. package/lib/cjs/cascader/constants.js +0 -28
  153. package/lib/cjs/cascader/foundation.d.ts +0 -221
  154. package/lib/cjs/cascader/foundation.js +0 -1047
  155. package/lib/cjs/cascader/rtl.scss +0 -114
  156. package/lib/cjs/cascader/util.d.ts +0 -4
  157. package/lib/cjs/cascader/util.js +0 -110
  158. package/lib/cjs/cascader/variables.scss +0 -117
  159. package/lib/cjs/checkbox/checkbox.css +0 -311
  160. package/lib/cjs/checkbox/checkbox.scss +0 -363
  161. package/lib/cjs/checkbox/checkboxFoundation.d.ts +0 -49
  162. package/lib/cjs/checkbox/checkboxFoundation.js +0 -105
  163. package/lib/cjs/checkbox/checkboxGroupFoundation.d.ts +0 -17
  164. package/lib/cjs/checkbox/checkboxGroupFoundation.js +0 -103
  165. package/lib/cjs/checkbox/constants.d.ts +0 -27
  166. package/lib/cjs/checkbox/constants.js +0 -42
  167. package/lib/cjs/checkbox/mixin.css +0 -3
  168. package/lib/cjs/checkbox/mixin.scss +0 -0
  169. package/lib/cjs/checkbox/rtl.scss +0 -54
  170. package/lib/cjs/checkbox/variables.scss +0 -62
  171. package/lib/cjs/collapse/collapse.css +0 -78
  172. package/lib/cjs/collapse/collapse.scss +0 -77
  173. package/lib/cjs/collapse/constants.d.ts +0 -7
  174. package/lib/cjs/collapse/constants.js +0 -20
  175. package/lib/cjs/collapse/foundation.d.ts +0 -28
  176. package/lib/cjs/collapse/foundation.js +0 -77
  177. package/lib/cjs/collapse/rtl.scss +0 -26
  178. package/lib/cjs/collapse/variables.scss +0 -22
  179. package/lib/cjs/collapsible/constants.d.ts +0 -4
  180. package/lib/cjs/collapsible/constants.js +0 -16
  181. package/lib/cjs/datePicker/_utils/formatter.d.ts +0 -14
  182. package/lib/cjs/datePicker/_utils/formatter.js +0 -72
  183. package/lib/cjs/datePicker/_utils/getDayOfWeek.d.ts +0 -11
  184. package/lib/cjs/datePicker/_utils/getDayOfWeek.js +0 -31
  185. package/lib/cjs/datePicker/_utils/getDefaultFormatToken.d.ts +0 -9
  186. package/lib/cjs/datePicker/_utils/getDefaultFormatToken.js +0 -29
  187. package/lib/cjs/datePicker/_utils/getFullDateOffset.d.ts +0 -7
  188. package/lib/cjs/datePicker/_utils/getFullDateOffset.js +0 -33
  189. package/lib/cjs/datePicker/_utils/getMonthTable.d.ts +0 -12
  190. package/lib/cjs/datePicker/_utils/getMonthTable.js +0 -97
  191. package/lib/cjs/datePicker/_utils/getMonthsInYear.d.ts +0 -2
  192. package/lib/cjs/datePicker/_utils/getMonthsInYear.js +0 -26
  193. package/lib/cjs/datePicker/_utils/getYears.d.ts +0 -2
  194. package/lib/cjs/datePicker/_utils/getYears.js +0 -24
  195. package/lib/cjs/datePicker/_utils/index.d.ts +0 -13
  196. package/lib/cjs/datePicker/_utils/index.js +0 -117
  197. package/lib/cjs/datePicker/_utils/isAfter.d.ts +0 -1
  198. package/lib/cjs/datePicker/_utils/isAfter.js +0 -21
  199. package/lib/cjs/datePicker/_utils/isBefore.d.ts +0 -1
  200. package/lib/cjs/datePicker/_utils/isBefore.js +0 -21
  201. package/lib/cjs/datePicker/_utils/isBetween.d.ts +0 -11
  202. package/lib/cjs/datePicker/_utils/isBetween.js +0 -36
  203. package/lib/cjs/datePicker/_utils/isDate.d.ts +0 -1
  204. package/lib/cjs/datePicker/_utils/isDate.js +0 -13
  205. package/lib/cjs/datePicker/_utils/isSameDay.d.ts +0 -1
  206. package/lib/cjs/datePicker/_utils/isSameDay.js +0 -21
  207. package/lib/cjs/datePicker/_utils/isTimestamp.d.ts +0 -1
  208. package/lib/cjs/datePicker/_utils/isTimestamp.js +0 -19
  209. package/lib/cjs/datePicker/_utils/isUnixTimestamp.d.ts +0 -1
  210. package/lib/cjs/datePicker/_utils/isUnixTimestamp.js +0 -19
  211. package/lib/cjs/datePicker/_utils/isValidDate.d.ts +0 -1
  212. package/lib/cjs/datePicker/_utils/isValidDate.js +0 -13
  213. package/lib/cjs/datePicker/_utils/isWithinInterval.d.ts +0 -4
  214. package/lib/cjs/datePicker/_utils/isWithinInterval.js +0 -29
  215. package/lib/cjs/datePicker/_utils/parser.d.ts +0 -4
  216. package/lib/cjs/datePicker/_utils/parser.js +0 -46
  217. package/lib/cjs/datePicker/constants.d.ts +0 -50
  218. package/lib/cjs/datePicker/constants.js +0 -75
  219. package/lib/cjs/datePicker/datePicker.css +0 -810
  220. package/lib/cjs/datePicker/datePicker.scss +0 -1034
  221. package/lib/cjs/datePicker/foundation.d.ts +0 -409
  222. package/lib/cjs/datePicker/foundation.js +0 -1161
  223. package/lib/cjs/datePicker/inputFoundation.d.ts +0 -59
  224. package/lib/cjs/datePicker/inputFoundation.js +0 -125
  225. package/lib/cjs/datePicker/monthFoundation.d.ts +0 -73
  226. package/lib/cjs/datePicker/monthFoundation.js +0 -96
  227. package/lib/cjs/datePicker/monthsGridFoundation.d.ts +0 -218
  228. package/lib/cjs/datePicker/monthsGridFoundation.js +0 -952
  229. package/lib/cjs/datePicker/rtl.scss +0 -171
  230. package/lib/cjs/datePicker/variables.scss +0 -169
  231. package/lib/cjs/datePicker/yearAndMonthFoundation.d.ts +0 -56
  232. package/lib/cjs/datePicker/yearAndMonthFoundation.js +0 -52
  233. package/lib/cjs/descriptions/constants.d.ts +0 -9
  234. package/lib/cjs/descriptions/constants.js +0 -23
  235. package/lib/cjs/descriptions/descriptions.css +0 -191
  236. package/lib/cjs/descriptions/descriptions.scss +0 -150
  237. package/lib/cjs/descriptions/rtl.scss +0 -91
  238. package/lib/cjs/descriptions/variables.scss +0 -15
  239. package/lib/cjs/dropdown/constants.d.ts +0 -16
  240. package/lib/cjs/dropdown/constants.js +0 -32
  241. package/lib/cjs/dropdown/dropdown.css +0 -123
  242. package/lib/cjs/dropdown/dropdown.scss +0 -106
  243. package/lib/cjs/dropdown/foundation.d.ts +0 -8
  244. package/lib/cjs/dropdown/foundation.js +0 -24
  245. package/lib/cjs/dropdown/rtl.scss +0 -27
  246. package/lib/cjs/dropdown/variables.scss +0 -38
  247. package/lib/cjs/empty/constants.d.ts +0 -7
  248. package/lib/cjs/empty/constants.js +0 -20
  249. package/lib/cjs/empty/empty.css +0 -50
  250. package/lib/cjs/empty/empty.scss +0 -54
  251. package/lib/cjs/empty/rtl.scss +0 -15
  252. package/lib/cjs/empty/variables.scss +0 -8
  253. package/lib/cjs/form/constants.d.ts +0 -11
  254. package/lib/cjs/form/constants.js +0 -25
  255. package/lib/cjs/form/form.css +0 -250
  256. package/lib/cjs/form/form.scss +0 -273
  257. package/lib/cjs/form/foundation.d.ts +0 -86
  258. package/lib/cjs/form/foundation.js +0 -841
  259. package/lib/cjs/form/interface.d.ts +0 -121
  260. package/lib/cjs/form/interface.js +0 -7
  261. package/lib/cjs/form/rtl.scss +0 -89
  262. package/lib/cjs/form/utils.d.ts +0 -52
  263. package/lib/cjs/form/utils.js +0 -242
  264. package/lib/cjs/form/variables.scss +0 -44
  265. package/lib/cjs/grid/constants.d.ts +0 -4
  266. package/lib/cjs/grid/constants.js +0 -16
  267. package/lib/cjs/grid/grid.css +0 -6295
  268. package/lib/cjs/grid/grid.scss +0 -121
  269. package/lib/cjs/grid/mixin.css +0 -3
  270. package/lib/cjs/grid/mixin.scss +0 -115
  271. package/lib/cjs/grid/rtl.scss +0 -9
  272. package/lib/cjs/grid/variables.scss +0 -35
  273. package/lib/cjs/icons/constants.d.ts +0 -9
  274. package/lib/cjs/icons/constants.js +0 -24
  275. package/lib/cjs/input/constants.d.ts +0 -12
  276. package/lib/cjs/input/constants.js +0 -26
  277. package/lib/cjs/input/foundation.d.ts +0 -79
  278. package/lib/cjs/input/foundation.js +0 -371
  279. package/lib/cjs/input/input.css +0 -567
  280. package/lib/cjs/input/input.scss +0 -628
  281. package/lib/cjs/input/rtl.scss +0 -100
  282. package/lib/cjs/input/textarea.css +0 -222
  283. package/lib/cjs/input/textarea.scss +0 -188
  284. package/lib/cjs/input/textareaFoundation.d.ts +0 -63
  285. package/lib/cjs/input/textareaFoundation.js +0 -293
  286. package/lib/cjs/input/util/calculateNodeHeight.d.ts +0 -1
  287. package/lib/cjs/input/util/calculateNodeHeight.js +0 -101
  288. package/lib/cjs/input/util/getSizingData.d.ts +0 -6
  289. package/lib/cjs/input/util/getSizingData.js +0 -48
  290. package/lib/cjs/input/variables.scss +0 -109
  291. package/lib/cjs/inputNumber/constants.d.ts +0 -17
  292. package/lib/cjs/inputNumber/constants.js +0 -27
  293. package/lib/cjs/inputNumber/foundation.d.ts +0 -107
  294. package/lib/cjs/inputNumber/foundation.js +0 -690
  295. package/lib/cjs/inputNumber/inputNumber.css +0 -99
  296. package/lib/cjs/inputNumber/inputNumber.scss +0 -108
  297. package/lib/cjs/inputNumber/rtl.scss +0 -30
  298. package/lib/cjs/inputNumber/variables.scss +0 -23
  299. package/lib/cjs/keyframes/rotate.css +0 -11
  300. package/lib/cjs/keyframes/rotate.scss +0 -8
  301. package/lib/cjs/layout/constants.d.ts +0 -7
  302. package/lib/cjs/layout/constants.js +0 -20
  303. package/lib/cjs/layout/layout.css +0 -40
  304. package/lib/cjs/layout/layout.scss +0 -49
  305. package/lib/cjs/layout/rtl.scss +0 -8
  306. package/lib/cjs/list/constants.d.ts +0 -9
  307. package/lib/cjs/list/constants.js +0 -22
  308. package/lib/cjs/list/list.css +0 -121
  309. package/lib/cjs/list/list.scss +0 -125
  310. package/lib/cjs/list/rtl.scss +0 -39
  311. package/lib/cjs/list/variables.scss +0 -17
  312. package/lib/cjs/modal/constants.d.ts +0 -10
  313. package/lib/cjs/modal/constants.js +0 -23
  314. package/lib/cjs/modal/modal.css +0 -233
  315. package/lib/cjs/modal/modal.scss +0 -267
  316. package/lib/cjs/modal/modalContentFoundation.d.ts +0 -33
  317. package/lib/cjs/modal/modalContentFoundation.js +0 -76
  318. package/lib/cjs/modal/modalFoundation.d.ts +0 -68
  319. package/lib/cjs/modal/modalFoundation.js +0 -52
  320. package/lib/cjs/modal/rtl.scss +0 -48
  321. package/lib/cjs/modal/variables.scss +0 -69
  322. package/lib/cjs/navigation/NavItem.d.ts +0 -10
  323. package/lib/cjs/navigation/NavItem.js +0 -74
  324. package/lib/cjs/navigation/constants.d.ts +0 -21
  325. package/lib/cjs/navigation/constants.js +0 -38
  326. package/lib/cjs/navigation/foundation.d.ts +0 -86
  327. package/lib/cjs/navigation/foundation.js +0 -313
  328. package/lib/cjs/navigation/itemFoundation.d.ts +0 -45
  329. package/lib/cjs/navigation/itemFoundation.js +0 -84
  330. package/lib/cjs/navigation/mixin.css +0 -3
  331. package/lib/cjs/navigation/mixin.scss +0 -98
  332. package/lib/cjs/navigation/navigation.css +0 -758
  333. package/lib/cjs/navigation/navigation.scss +0 -683
  334. package/lib/cjs/navigation/rtl.scss +0 -132
  335. package/lib/cjs/navigation/subNavFoundation.d.ts +0 -39
  336. package/lib/cjs/navigation/subNavFoundation.js +0 -147
  337. package/lib/cjs/navigation/variables.scss +0 -132
  338. package/lib/cjs/notification/constants.d.ts +0 -14
  339. package/lib/cjs/notification/constants.js +0 -29
  340. package/lib/cjs/notification/notification.css +0 -154
  341. package/lib/cjs/notification/notification.scss +0 -168
  342. package/lib/cjs/notification/notificationFoundation.d.ts +0 -48
  343. package/lib/cjs/notification/notificationFoundation.js +0 -74
  344. package/lib/cjs/notification/notificationListFoundation.d.ts +0 -28
  345. package/lib/cjs/notification/notificationListFoundation.js +0 -61
  346. package/lib/cjs/notification/rtl.scss +0 -23
  347. package/lib/cjs/notification/variables.scss +0 -43
  348. package/lib/cjs/overflowList/constants.d.ts +0 -23
  349. package/lib/cjs/overflowList/constants.js +0 -44
  350. package/lib/cjs/overflowList/foundation.d.ts +0 -14
  351. package/lib/cjs/overflowList/foundation.js +0 -141
  352. package/lib/cjs/overflowList/overflowList.css +0 -23
  353. package/lib/cjs/overflowList/overflowList.scss +0 -20
  354. package/lib/cjs/overflowList/rtl.scss +0 -8
  355. package/lib/cjs/pagination/constants.d.ts +0 -12
  356. package/lib/cjs/pagination/constants.js +0 -26
  357. package/lib/cjs/pagination/foundation.d.ts +0 -52
  358. package/lib/cjs/pagination/foundation.js +0 -385
  359. package/lib/cjs/pagination/pagination.css +0 -155
  360. package/lib/cjs/pagination/pagination.scss +0 -158
  361. package/lib/cjs/pagination/rtl.scss +0 -18
  362. package/lib/cjs/pagination/variables.scss +0 -51
  363. package/lib/cjs/popconfirm/constants.d.ts +0 -13
  364. package/lib/cjs/popconfirm/constants.js +0 -27
  365. package/lib/cjs/popconfirm/popconfirm.css +0 -117
  366. package/lib/cjs/popconfirm/popconfirm.scss +0 -105
  367. package/lib/cjs/popconfirm/popconfirmFoundation.d.ts +0 -14
  368. package/lib/cjs/popconfirm/popconfirmFoundation.js +0 -43
  369. package/lib/cjs/popconfirm/rtl.scss +0 -60
  370. package/lib/cjs/popconfirm/variables.scss +0 -36
  371. package/lib/cjs/popover/constants.d.ts +0 -25
  372. package/lib/cjs/popover/constants.js +0 -45
  373. package/lib/cjs/popover/popover.css +0 -160
  374. package/lib/cjs/popover/popover.scss +0 -54
  375. package/lib/cjs/popover/rtl.scss +0 -7
  376. package/lib/cjs/popover/variables.scss +0 -28
  377. package/lib/cjs/progress/constants.d.ts +0 -14
  378. package/lib/cjs/progress/constants.js +0 -28
  379. package/lib/cjs/progress/progress.css +0 -106
  380. package/lib/cjs/progress/progress.scss +0 -105
  381. package/lib/cjs/progress/rtl.scss +0 -29
  382. package/lib/cjs/progress/variables.scss +0 -25
  383. package/lib/cjs/radio/constants.d.ts +0 -29
  384. package/lib/cjs/radio/constants.js +0 -44
  385. package/lib/cjs/radio/mixin.css +0 -3
  386. package/lib/cjs/radio/mixin.scss +0 -0
  387. package/lib/cjs/radio/radio.css +0 -346
  388. package/lib/cjs/radio/radio.scss +0 -379
  389. package/lib/cjs/radio/radioFoundation.d.ts +0 -7
  390. package/lib/cjs/radio/radioFoundation.js +0 -22
  391. package/lib/cjs/radio/radioGroupFoundation.d.ts +0 -16
  392. package/lib/cjs/radio/radioGroupFoundation.js +0 -91
  393. package/lib/cjs/radio/radioInnerFoundation.d.ts +0 -22
  394. package/lib/cjs/radio/radioInnerFoundation.js +0 -74
  395. package/lib/cjs/radio/rtl.scss +0 -78
  396. package/lib/cjs/radio/variables.scss +0 -91
  397. package/lib/cjs/rating/constants.d.ts +0 -7
  398. package/lib/cjs/rating/constants.js +0 -20
  399. package/lib/cjs/rating/foundation.d.ts +0 -28
  400. package/lib/cjs/rating/foundation.js +0 -202
  401. package/lib/cjs/rating/rating.css +0 -81
  402. package/lib/cjs/rating/rating.scss +0 -87
  403. package/lib/cjs/rating/rtl.scss +0 -21
  404. package/lib/cjs/rating/variables.scss +0 -14
  405. package/lib/cjs/scrollList/constants.d.ts +0 -12
  406. package/lib/cjs/scrollList/constants.js +0 -26
  407. package/lib/cjs/scrollList/foundation.d.ts +0 -3
  408. package/lib/cjs/scrollList/foundation.js +0 -17
  409. package/lib/cjs/scrollList/itemFoundation.d.ts +0 -74
  410. package/lib/cjs/scrollList/itemFoundation.js +0 -322
  411. package/lib/cjs/scrollList/rtl.scss +0 -47
  412. package/lib/cjs/scrollList/scrollList.css +0 -181
  413. package/lib/cjs/scrollList/scrollList.scss +0 -182
  414. package/lib/cjs/scrollList/scrollTo.d.ts +0 -3
  415. package/lib/cjs/scrollList/scrollTo.js +0 -35
  416. package/lib/cjs/scrollList/variables.scss +0 -48
  417. package/lib/cjs/select/constants.d.ts +0 -16
  418. package/lib/cjs/select/constants.js +0 -33
  419. package/lib/cjs/select/foundation.d.ts +0 -106
  420. package/lib/cjs/select/foundation.js +0 -1209
  421. package/lib/cjs/select/mixin.css +0 -3
  422. package/lib/cjs/select/mixin.scss +0 -6
  423. package/lib/cjs/select/option.css +0 -76
  424. package/lib/cjs/select/option.scss +0 -95
  425. package/lib/cjs/select/optionFoundation.d.ts +0 -21
  426. package/lib/cjs/select/optionFoundation.js +0 -42
  427. package/lib/cjs/select/rtl.scss +0 -93
  428. package/lib/cjs/select/select.css +0 -465
  429. package/lib/cjs/select/select.scss +0 -422
  430. package/lib/cjs/select/variables.scss +0 -100
  431. package/lib/cjs/sideSheet/constants.d.ts +0 -15
  432. package/lib/cjs/sideSheet/constants.js +0 -28
  433. package/lib/cjs/sideSheet/rtl.scss +0 -17
  434. package/lib/cjs/sideSheet/sideSheet.css +0 -143
  435. package/lib/cjs/sideSheet/sideSheet.scss +0 -171
  436. package/lib/cjs/sideSheet/sideSheetFoundation.d.ts +0 -55
  437. package/lib/cjs/sideSheet/sideSheetFoundation.js +0 -124
  438. package/lib/cjs/sideSheet/variables.scss +0 -16
  439. package/lib/cjs/skeleton/constants.d.ts +0 -5
  440. package/lib/cjs/skeleton/constants.js +0 -18
  441. package/lib/cjs/skeleton/rtl.scss +0 -8
  442. package/lib/cjs/skeleton/skeleton.css +0 -87
  443. package/lib/cjs/skeleton/skeleton.scss +0 -115
  444. package/lib/cjs/skeleton/variables.scss +0 -20
  445. package/lib/cjs/slider/constants.d.ts +0 -15
  446. package/lib/cjs/slider/constants.js +0 -28
  447. package/lib/cjs/slider/foundation.d.ts +0 -203
  448. package/lib/cjs/slider/foundation.js +0 -734
  449. package/lib/cjs/slider/slider.css +0 -192
  450. package/lib/cjs/slider/slider.scss +0 -234
  451. package/lib/cjs/slider/variables.scss +0 -60
  452. package/lib/cjs/space/constants.d.ts +0 -10
  453. package/lib/cjs/space/constants.js +0 -23
  454. package/lib/cjs/space/rtl.scss +0 -8
  455. package/lib/cjs/space/space.css +0 -50
  456. package/lib/cjs/space/space.scss +0 -58
  457. package/lib/cjs/space/variables.scss +0 -3
  458. package/lib/cjs/spin/constants.d.ts +0 -8
  459. package/lib/cjs/spin/constants.js +0 -23
  460. package/lib/cjs/spin/foundation.d.ts +0 -12
  461. package/lib/cjs/spin/foundation.js +0 -62
  462. package/lib/cjs/spin/mixin.css +0 -3
  463. package/lib/cjs/spin/mixin.scss +0 -5
  464. package/lib/cjs/spin/rtl.scss +0 -12
  465. package/lib/cjs/spin/spin.css +0 -104
  466. package/lib/cjs/spin/spin.scss +0 -104
  467. package/lib/cjs/spin/variables.scss +0 -18
  468. package/lib/cjs/steps/bacisSteps.scss +0 -344
  469. package/lib/cjs/steps/constants.d.ts +0 -5
  470. package/lib/cjs/steps/constants.js +0 -17
  471. package/lib/cjs/steps/fillSteps.scss +0 -193
  472. package/lib/cjs/steps/mixin.css +0 -3
  473. package/lib/cjs/steps/mixin.scss +0 -0
  474. package/lib/cjs/steps/navSteps.scss +0 -63
  475. package/lib/cjs/steps/rtl.scss +0 -46
  476. package/lib/cjs/steps/steps.css +0 -444
  477. package/lib/cjs/steps/steps.scss +0 -9
  478. package/lib/cjs/steps/variables.scss +0 -104
  479. package/lib/cjs/switch/constants.d.ts +0 -18
  480. package/lib/cjs/switch/constants.js +0 -31
  481. package/lib/cjs/switch/foundation.d.ts +0 -14
  482. package/lib/cjs/switch/foundation.js +0 -58
  483. package/lib/cjs/switch/rtl.scss +0 -103
  484. package/lib/cjs/switch/switch.css +0 -288
  485. package/lib/cjs/switch/switch.scss +0 -282
  486. package/lib/cjs/switch/variables.scss +0 -70
  487. package/lib/cjs/table/bodyFoundation.d.ts +0 -38
  488. package/lib/cjs/table/bodyFoundation.js +0 -158
  489. package/lib/cjs/table/cellFoundation.d.ts +0 -7
  490. package/lib/cjs/table/cellFoundation.js +0 -22
  491. package/lib/cjs/table/constants.d.ts +0 -77
  492. package/lib/cjs/table/constants.js +0 -110
  493. package/lib/cjs/table/foundation.d.ts +0 -351
  494. package/lib/cjs/table/foundation.js +0 -1166
  495. package/lib/cjs/table/mixin.css +0 -3
  496. package/lib/cjs/table/mixin.scss +0 -10
  497. package/lib/cjs/table/operationPanel.scss +0 -46
  498. package/lib/cjs/table/rtl.scss +0 -158
  499. package/lib/cjs/table/table.css +0 -559
  500. package/lib/cjs/table/table.scss +0 -552
  501. package/lib/cjs/table/tableRowFoundation.d.ts +0 -14
  502. package/lib/cjs/table/tableRowFoundation.js +0 -44
  503. package/lib/cjs/table/tableSelectionCellFoundation.d.ts +0 -13
  504. package/lib/cjs/table/tableSelectionCellFoundation.js +0 -24
  505. package/lib/cjs/table/utils.d.ts +0 -95
  506. package/lib/cjs/table/utils.js +0 -610
  507. package/lib/cjs/table/variables.scss +0 -84
  508. package/lib/cjs/tabs/constants.d.ts +0 -28
  509. package/lib/cjs/tabs/constants.js +0 -42
  510. package/lib/cjs/tabs/foundation.d.ts +0 -20
  511. package/lib/cjs/tabs/foundation.js +0 -99
  512. package/lib/cjs/tabs/rtl.scss +0 -123
  513. package/lib/cjs/tabs/tabs.css +0 -366
  514. package/lib/cjs/tabs/tabs.scss +0 -391
  515. package/lib/cjs/tabs/variables.scss +0 -115
  516. package/lib/cjs/tag/constants.d.ts +0 -10
  517. package/lib/cjs/tag/constants.js +0 -24
  518. package/lib/cjs/tag/mixin.css +0 -3
  519. package/lib/cjs/tag/mixin.scss +0 -21
  520. package/lib/cjs/tag/rtl.scss +0 -61
  521. package/lib/cjs/tag/tag.css +0 -444
  522. package/lib/cjs/tag/tag.scss +0 -181
  523. package/lib/cjs/tag/variables.scss +0 -48
  524. package/lib/cjs/tagInput/constants.d.ts +0 -8
  525. package/lib/cjs/tagInput/constants.js +0 -21
  526. package/lib/cjs/tagInput/foundation.d.ts +0 -52
  527. package/lib/cjs/tagInput/foundation.js +0 -259
  528. package/lib/cjs/tagInput/rtl.scss +0 -23
  529. package/lib/cjs/tagInput/tagInput.css +0 -171
  530. package/lib/cjs/tagInput/tagInput.scss +0 -192
  531. package/lib/cjs/tagInput/utils/getSplitedArray.d.ts +0 -7
  532. package/lib/cjs/tagInput/utils/getSplitedArray.js +0 -41
  533. package/lib/cjs/tagInput/variables.scss +0 -39
  534. package/lib/cjs/timePicker/ComboxFoundation.d.ts +0 -31
  535. package/lib/cjs/timePicker/ComboxFoundation.js +0 -193
  536. package/lib/cjs/timePicker/constants.d.ts +0 -23
  537. package/lib/cjs/timePicker/constants.js +0 -43
  538. package/lib/cjs/timePicker/foundation.d.ts +0 -53
  539. package/lib/cjs/timePicker/foundation.js +0 -465
  540. package/lib/cjs/timePicker/inputFoundation.d.ts +0 -18
  541. package/lib/cjs/timePicker/inputFoundation.js +0 -81
  542. package/lib/cjs/timePicker/rtl.scss +0 -30
  543. package/lib/cjs/timePicker/timePicker.css +0 -72
  544. package/lib/cjs/timePicker/timePicker.scss +0 -86
  545. package/lib/cjs/timePicker/utils/index.d.ts +0 -41
  546. package/lib/cjs/timePicker/utils/index.js +0 -191
  547. package/lib/cjs/timePicker/utils/localeDate.d.ts +0 -2
  548. package/lib/cjs/timePicker/utils/localeDate.js +0 -47
  549. package/lib/cjs/timePicker/variables.scss +0 -22
  550. package/lib/cjs/timeline/constants.d.ts +0 -10
  551. package/lib/cjs/timeline/constants.js +0 -23
  552. package/lib/cjs/timeline/rtl.scss +0 -92
  553. package/lib/cjs/timeline/timeline.css +0 -196
  554. package/lib/cjs/timeline/timeline.scss +0 -174
  555. package/lib/cjs/timeline/variables.scss +0 -45
  556. package/lib/cjs/toast/constants.d.ts +0 -14
  557. package/lib/cjs/toast/constants.js +0 -30
  558. package/lib/cjs/toast/rtl.scss +0 -16
  559. package/lib/cjs/toast/toast.css +0 -76
  560. package/lib/cjs/toast/toast.scss +0 -92
  561. package/lib/cjs/toast/toastFoundation.d.ts +0 -48
  562. package/lib/cjs/toast/toastFoundation.js +0 -72
  563. package/lib/cjs/toast/toastListFoundation.d.ts +0 -17
  564. package/lib/cjs/toast/toastListFoundation.js +0 -62
  565. package/lib/cjs/toast/variables.scss +0 -34
  566. package/lib/cjs/tooltip/arrow.scss +0 -141
  567. package/lib/cjs/tooltip/constants.d.ts +0 -22
  568. package/lib/cjs/tooltip/constants.js +0 -37
  569. package/lib/cjs/tooltip/foundation.d.ts +0 -99
  570. package/lib/cjs/tooltip/foundation.js +0 -819
  571. package/lib/cjs/tooltip/rtl.scss +0 -12
  572. package/lib/cjs/tooltip/tooltip.css +0 -203
  573. package/lib/cjs/tooltip/tooltip.scss +0 -91
  574. package/lib/cjs/tooltip/variables.scss +0 -31
  575. package/lib/cjs/transfer/constants.d.ts +0 -10
  576. package/lib/cjs/transfer/constants.js +0 -24
  577. package/lib/cjs/transfer/foundation.d.ts +0 -51
  578. package/lib/cjs/transfer/foundation.js +0 -314
  579. package/lib/cjs/transfer/rtl.scss +0 -31
  580. package/lib/cjs/transfer/transfer.css +0 -202
  581. package/lib/cjs/transfer/transfer.scss +0 -200
  582. package/lib/cjs/transfer/transferUtlls.d.ts +0 -4
  583. package/lib/cjs/transfer/transferUtlls.js +0 -128
  584. package/lib/cjs/transfer/variables.scss +0 -55
  585. package/lib/cjs/tree/constants.d.ts +0 -9
  586. package/lib/cjs/tree/constants.js +0 -23
  587. package/lib/cjs/tree/foundation.d.ts +0 -281
  588. package/lib/cjs/tree/foundation.js +0 -707
  589. package/lib/cjs/tree/rtl.scss +0 -59
  590. package/lib/cjs/tree/tree.css +0 -478
  591. package/lib/cjs/tree/tree.scss +0 -372
  592. package/lib/cjs/tree/treeUtil.d.ts +0 -79
  593. package/lib/cjs/tree/treeUtil.js +0 -788
  594. package/lib/cjs/tree/variables.scss +0 -54
  595. package/lib/cjs/treeSelect/constants.d.ts +0 -13
  596. package/lib/cjs/treeSelect/constants.js +0 -27
  597. package/lib/cjs/treeSelect/foundation.d.ts +0 -164
  598. package/lib/cjs/treeSelect/foundation.js +0 -778
  599. package/lib/cjs/treeSelect/rtl.scss +0 -62
  600. package/lib/cjs/treeSelect/treeSelect.css +0 -308
  601. package/lib/cjs/treeSelect/treeSelect.scss +0 -332
  602. package/lib/cjs/treeSelect/variables.scss +0 -90
  603. package/lib/cjs/typography/constants.d.ts +0 -10
  604. package/lib/cjs/typography/constants.js +0 -23
  605. package/lib/cjs/typography/rtl.scss +0 -34
  606. package/lib/cjs/typography/typography.css +0 -220
  607. package/lib/cjs/typography/typography.scss +0 -218
  608. package/lib/cjs/typography/variables.scss +0 -45
  609. package/lib/cjs/upload/constants.d.ts +0 -28
  610. package/lib/cjs/upload/constants.js +0 -49
  611. package/lib/cjs/upload/foundation.d.ts +0 -166
  612. package/lib/cjs/upload/foundation.js +0 -1067
  613. package/lib/cjs/upload/rtl.scss +0 -87
  614. package/lib/cjs/upload/upload.css +0 -493
  615. package/lib/cjs/upload/upload.scss +0 -522
  616. package/lib/cjs/upload/utils.d.ts +0 -6
  617. package/lib/cjs/upload/utils.js +0 -165
  618. package/lib/cjs/upload/variables.scss +0 -81
  619. package/lib/cjs/utils/Event.d.ts +0 -7
  620. package/lib/cjs/utils/Event.js +0 -91
  621. package/lib/cjs/utils/Logger.d.ts +0 -15
  622. package/lib/cjs/utils/Logger.js +0 -77
  623. package/lib/cjs/utils/Store.d.ts +0 -9
  624. package/lib/cjs/utils/Store.js +0 -60
  625. package/lib/cjs/utils/array.d.ts +0 -22
  626. package/lib/cjs/utils/array.js +0 -64
  627. package/lib/cjs/utils/classnames.d.ts +0 -4
  628. package/lib/cjs/utils/classnames.js +0 -54
  629. package/lib/cjs/utils/date-fns-extra.d.ts +0 -55
  630. package/lib/cjs/utils/date-fns-extra.js +0 -148
  631. package/lib/cjs/utils/dom.d.ts +0 -27
  632. package/lib/cjs/utils/dom.js +0 -92
  633. package/lib/cjs/utils/function.d.ts +0 -4
  634. package/lib/cjs/utils/function.js +0 -15
  635. package/lib/cjs/utils/getDataAttr.d.ts +0 -1
  636. package/lib/cjs/utils/getDataAttr.js +0 -27
  637. package/lib/cjs/utils/getHighlight.d.ts +0 -45
  638. package/lib/cjs/utils/getHighlight.js +0 -212
  639. package/lib/cjs/utils/getMotionObjFromProps.d.ts +0 -26
  640. package/lib/cjs/utils/getMotionObjFromProps.js +0 -75
  641. package/lib/cjs/utils/index.d.ts +0 -2
  642. package/lib/cjs/utils/index.js +0 -41
  643. package/lib/cjs/utils/isBothNaN.d.ts +0 -8
  644. package/lib/cjs/utils/isBothNaN.js +0 -25
  645. package/lib/cjs/utils/isElement.d.ts +0 -1
  646. package/lib/cjs/utils/isElement.js +0 -21
  647. package/lib/cjs/utils/isNullOrUndefined.d.ts +0 -6
  648. package/lib/cjs/utils/isNullOrUndefined.js +0 -18
  649. package/lib/cjs/utils/isNumber.d.ts +0 -1
  650. package/lib/cjs/utils/isNumber.js +0 -13
  651. package/lib/cjs/utils/isObject.d.ts +0 -1
  652. package/lib/cjs/utils/isObject.js +0 -13
  653. package/lib/cjs/utils/isPromise.d.ts +0 -1
  654. package/lib/cjs/utils/isPromise.js +0 -17
  655. package/lib/cjs/utils/isString.d.ts +0 -1
  656. package/lib/cjs/utils/isString.js +0 -13
  657. package/lib/cjs/utils/keyCode.d.ts +0 -427
  658. package/lib/cjs/utils/keyCode.js +0 -542
  659. package/lib/cjs/utils/log.d.ts +0 -2
  660. package/lib/cjs/utils/log.js +0 -22
  661. package/lib/cjs/utils/number.d.ts +0 -10
  662. package/lib/cjs/utils/number.js +0 -29
  663. package/lib/cjs/utils/object.d.ts +0 -17
  664. package/lib/cjs/utils/object.js +0 -165
  665. package/lib/cjs/utils/set.d.ts +0 -7
  666. package/lib/cjs/utils/set.js +0 -44
  667. package/lib/cjs/utils/shallowEqualObjects.d.ts +0 -5
  668. package/lib/cjs/utils/shallowEqualObjects.js +0 -41
  669. package/lib/cjs/utils/touchPolyfill.d.ts +0 -2
  670. package/lib/cjs/utils/touchPolyfill.js +0 -50
  671. package/lib/cjs/utils/type.d.ts +0 -31
  672. package/lib/cjs/utils/type.js +0 -7
  673. package/lib/cjs/utils/uuid.d.ts +0 -3
  674. package/lib/cjs/utils/uuid.js +0 -29
  675. package/lib/cjs/utils/warning.d.ts +0 -1
  676. package/lib/cjs/utils/warning.js +0 -15
@@ -1,1161 +0,0 @@
1
- "use strict";
2
-
3
- var _Object$defineProperty = require("@babel/runtime-corejs3/core-js-stable/object/define-property");
4
-
5
- var _interopRequireDefault = require("@babel/runtime-corejs3/helpers/interopRequireDefault");
6
-
7
- _Object$defineProperty(exports, "__esModule", {
8
- value: true
9
- });
10
-
11
- exports.default = void 0;
12
-
13
- var _assign = _interopRequireDefault(require("@babel/runtime-corejs3/core-js-stable/object/assign"));
14
-
15
- var _isArray = _interopRequireDefault(require("@babel/runtime-corejs3/core-js-stable/array/is-array"));
16
-
17
- var _some = _interopRequireDefault(require("@babel/runtime-corejs3/core-js-stable/instance/some"));
18
-
19
- var _includes = _interopRequireDefault(require("@babel/runtime-corejs3/core-js-stable/instance/includes"));
20
-
21
- var _reduce = _interopRequireDefault(require("@babel/runtime-corejs3/core-js-stable/instance/reduce"));
22
-
23
- var _map = _interopRequireDefault(require("@babel/runtime-corejs3/core-js-stable/instance/map"));
24
-
25
- var _sort = _interopRequireDefault(require("@babel/runtime-corejs3/core-js-stable/instance/sort"));
26
-
27
- var _filter = _interopRequireDefault(require("@babel/runtime-corejs3/core-js-stable/instance/filter"));
28
-
29
- var _find = _interopRequireDefault(require("@babel/runtime-corejs3/core-js-stable/instance/find"));
30
-
31
- var _concat = _interopRequireDefault(require("@babel/runtime-corejs3/core-js-stable/instance/concat"));
32
-
33
- var _forEach = _interopRequireDefault(require("@babel/runtime-corejs3/core-js-stable/instance/for-each"));
34
-
35
- var _slice = _interopRequireDefault(require("@babel/runtime-corejs3/core-js-stable/instance/slice"));
36
-
37
- var _set = _interopRequireDefault(require("@babel/runtime-corejs3/core-js-stable/set"));
38
-
39
- var _setTimeout2 = _interopRequireDefault(require("@babel/runtime-corejs3/core-js-stable/set-timeout"));
40
-
41
- var _dateFns = require("date-fns");
42
-
43
- var _lodashEs = require("lodash-es");
44
-
45
- var _foundation = _interopRequireDefault(require("../base/foundation"));
46
-
47
- var _index = require("./_utils/index");
48
-
49
- var _isNullOrUndefined = _interopRequireDefault(require("../utils/isNullOrUndefined"));
50
-
51
- var _dateFnsExtra = require("../utils/date-fns-extra");
52
-
53
- var _parser = require("./_utils/parser");
54
-
55
- var _getDefaultFormatToken = require("./_utils/getDefaultFormatToken");
56
-
57
- var _constants = require("./constants");
58
-
59
- var _constants2 = require("../input/constants");
60
-
61
- /* eslint-disable no-nested-ternary */
62
-
63
- /* eslint-disable max-len, max-depth, */
64
-
65
- /**
66
- * The datePicker foundation.js is responsible for maintaining the date value and the input box value, as well as the callback of both
67
- * task 1. Accept the selected date change, update the date value, and update the input box value according to the date = > Notify the change
68
- * task 2. When the input box changes, update the date value = > Notify the change
69
- */
70
- class DatePickerFoundation extends _foundation.default {
71
- constructor(adapter) {
72
- super((0, _assign.default)({}, adapter));
73
-
74
- this.getMergedMotion = motion => {
75
- const mergedMotion = typeof motion === 'undefined' || motion ? (0, _assign.default)((0, _assign.default)({}, motion), {
76
- didEnter: () => {
77
- this._adapter.setMotionEnd(true);
78
- },
79
- didLeave: () => {
80
- this._adapter.setMotionEnd(false);
81
- }
82
- }) : false;
83
- return mergedMotion;
84
- };
85
-
86
- this._isRangeType = () => {
87
- const type = this._adapter.getProp('type');
88
-
89
- return /range/i.test(type);
90
- };
91
-
92
- this._isRangeValueComplete = value => {
93
- let result = true;
94
-
95
- if ((0, _isArray.default)(value)) {
96
- result = !(0, _some.default)(value).call(value, date => (0, _isNullOrUndefined.default)(date));
97
- } else {
98
- result = false;
99
- }
100
-
101
- return result;
102
- };
103
- }
104
-
105
- init() {
106
- const timeZone = this.getProp('timeZone');
107
-
108
- if (this._isControlledComponent()) {
109
- this.initFromProps({
110
- timeZone,
111
- value: this.getProp('value')
112
- });
113
- } else if (this._isInProps('defaultValue')) {
114
- this.initFromProps({
115
- timeZone,
116
- value: this.getProp('defaultValue')
117
- });
118
- }
119
-
120
- this.initPanelOpenStatus(this.getProp('defaultOpen'));
121
- }
122
-
123
- isValidTimeZone(timeZone) {
124
- var _context;
125
-
126
- const propTimeZone = this.getProp('timeZone');
127
-
128
- const _timeZone = (0, _isNullOrUndefined.default)(timeZone) ? propTimeZone : timeZone;
129
-
130
- return (0, _includes.default)(_context = ['string', 'number']).call(_context, typeof _timeZone) && _timeZone !== '';
131
- }
132
-
133
- initFromProps(_ref) {
134
- let {
135
- value,
136
- timeZone,
137
- prevTimeZone
138
- } = _ref;
139
-
140
- const _value = ((0, _isArray.default)(value) ? [...value] : (value || value === 0) && [value]) || [];
141
-
142
- const result = this.parseWithTimezone(_value, timeZone, prevTimeZone);
143
-
144
- this._adapter.updatePrevTimezone(prevTimeZone);
145
-
146
- this._adapter.updateInputValue(null);
147
-
148
- this._adapter.updateValue(result);
149
-
150
- if (this._adapter.needConfirm()) {
151
- this._adapter.updateCachedSelectedValue(result);
152
- }
153
- }
154
-
155
- parseWithTimezone(value, timeZone, prevTimeZone) {
156
- const result = [];
157
-
158
- if ((0, _isArray.default)(value) && value.length) {
159
- for (const v of value) {
160
- let parsedV = (v || v === 0) && this._parseValue(v);
161
-
162
- if (parsedV) {
163
- if (this.isValidTimeZone(prevTimeZone)) {
164
- parsedV = (0, _dateFnsExtra.zonedTimeToUtc)(parsedV, prevTimeZone);
165
- }
166
-
167
- result.push(this.isValidTimeZone(timeZone) ? (0, _dateFnsExtra.utcToZonedTime)(parsedV, timeZone) : parsedV);
168
- }
169
- }
170
- }
171
-
172
- return result;
173
- }
174
-
175
- _isMultiple() {
176
- return Boolean(this.getProp('multiple'));
177
- }
178
- /**
179
- *
180
- * Verify and parse the following three format inputs
181
- *
182
- 1. Date object
183
- 2. ISO 9601-compliant string
184
- 3. ts timestamp
185
- Unified here to format the incoming value and output it as a Date object
186
- *
187
- */
188
-
189
-
190
- _parseValue(value) {
191
- const dateFnsLocale = this._adapter.getProp('dateFnsLocale');
192
-
193
- let dateObj;
194
-
195
- if (!value && value !== 0) {
196
- return new Date();
197
- }
198
-
199
- if ((0, _index.isValidDate)(value)) {
200
- dateObj = value;
201
- } else if ((0, _lodashEs.isString)(value)) {
202
- dateObj = (0, _parser.compatiableParse)(value, this.getProp('format'), undefined, dateFnsLocale);
203
- } else if ((0, _index.isTimestamp)(value)) {
204
- dateObj = new Date(value);
205
- } else {
206
- throw new TypeError('defaultValue should be valid Date object/timestamp or string');
207
- }
208
-
209
- return dateObj;
210
- }
211
-
212
- destroy() {
213
- // Ensure that event listeners will be uninstalled and users may not trigger closePanel
214
- // this._adapter.togglePanel(false);
215
- this._adapter.unregisterClickOutSide();
216
- }
217
-
218
- initPanelOpenStatus(defaultOpen) {
219
- if ((this.getProp('open') || defaultOpen) && !this.getProp('disabled')) {
220
- this._adapter.togglePanel(true);
221
-
222
- this._adapter.registerClickOutSide();
223
- } else {
224
- this._adapter.togglePanel(false);
225
-
226
- this._adapter.unregisterClickOutSide();
227
- }
228
- }
229
-
230
- openPanel() {
231
- if (!this.getProp('disabled')) {
232
- if (!this._isControlledComponent('open')) {
233
- this._adapter.togglePanel(true);
234
-
235
- this._adapter.registerClickOutSide();
236
- }
237
-
238
- this._adapter.notifyOpenChange(true);
239
- }
240
- }
241
- /**
242
- * do these side effects when type is dateRange or dateTimeRange
243
- * 1. trigger input blur, if input value is invalid, set input value and state value to previous status
244
- * 2. set cachedSelectedValue using given dates(in needConfirm mode)
245
- * - directly closePanel without click confirm will set cachedSelectedValue to state value
246
- * - select one date(which means that the selection value is incomplete) and click confirm also set cachedSelectedValue to state value
247
- * @param {String} inputValue
248
- * @param {Date[]} dates
249
- */
250
-
251
-
252
- rangeTypeSideEffectsWhenClosePanel(inputValue, dates) {
253
- if (this._isRangeType()) {
254
- this._adapter.setRangeInputFocus(false);
255
- /**
256
- * inputValue is string when it is not disabled or can't parsed
257
- * when inputValue is null, picker value will back to last selected value
258
- */
259
-
260
-
261
- this.handleInputBlur(inputValue);
262
-
263
- const {
264
- value,
265
- cachedSelectedValue
266
- } = this._adapter.getStates();
267
-
268
- const newCachedSelectedValue = (0, _isArray.default)(dates) && dates.length ? dates : value;
269
-
270
- if (!(0, _lodashEs.isEqual)(newCachedSelectedValue, cachedSelectedValue)) {
271
- this._adapter.updateCachedSelectedValue(newCachedSelectedValue);
272
- }
273
- }
274
- }
275
- /**
276
- * timing to call closePanel
277
- * 1. click confirm button
278
- * 2. click cancel button
279
- * 3. select date, time, year, month
280
- * - date type and not multiple, close panel after select date
281
- * - dateRange type, close panel after select rangeStart and rangeEnd
282
- * 4. click outside
283
- * @param {Event} e
284
- * @param {String} inputValue
285
- * @param {Date[]} dates
286
- */
287
-
288
-
289
- closePanel(e) {
290
- let inputValue = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : null;
291
- let dates = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : [];
292
-
293
- if (!this._isControlledComponent('open')) {
294
- this._adapter.togglePanel(false);
295
-
296
- this._adapter.unregisterClickOutSide();
297
- } // range type picker, closing panel requires the following side effects
298
-
299
-
300
- this.rangeTypeSideEffectsWhenClosePanel(inputValue, dates);
301
-
302
- this._adapter.notifyOpenChange(false);
303
-
304
- this._adapter.notifyBlur(e);
305
- }
306
- /**
307
- * Callback when the content of the input box changes
308
- * Update the date panel if the changed value is a legal date, otherwise only update the input box
309
- * @param {String} input The value of the input box after the change
310
- * @param {Event} e
311
- */
312
-
313
-
314
- handleInputChange(input, e) {
315
- const result = this._isMultiple() ? this.parseMultipleInput(input) : this.parseInput(input);
316
- const {
317
- value: stateValue
318
- } = this.getStates(); // Enter a valid date or empty
319
-
320
- if (result && result.length || input === '') {
321
- // If you click the clear button
322
- if ((0, _lodashEs.get)(e, _constants2.strings.CLEARBTN_CLICKED_EVENT_FLAG) && this._isControlledComponent('value')) {
323
- this._notifyChange(result);
324
-
325
- return;
326
- }
327
-
328
- this._updateValueAndInput(result, input === '', input); // Updates the selected value when entering a valid date
329
-
330
-
331
- const changedDates = this._getChangedDates(result);
332
-
333
- if (!this._someDateDisabled(changedDates)) {
334
- if (this._adapter.needConfirm()) {
335
- this._adapter.updateCachedSelectedValue(result);
336
- }
337
-
338
- if (!(0, _lodashEs.isEqual)(result, stateValue)) {
339
- this._notifyChange(result);
340
- }
341
- }
342
- } else {
343
- this._adapter.updateInputValue(input);
344
- }
345
- }
346
- /**
347
- * Input box blur
348
- * @param {String} input
349
- * @param {Event} e
350
- */
351
-
352
-
353
- handleInputBlur() {
354
- let input = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : '';
355
- let e = arguments.length > 1 ? arguments[1] : undefined;
356
- const parsedResult = input ? this._isMultiple() ? this.parseMultipleInput(input, ',', true) : this.parseInput(input) : [];
357
- const stateValue = this.getState('value'); // console.log(input, parsedResult);
358
-
359
- if (parsedResult && parsedResult.length) {
360
- this._updateValueAndInput(parsedResult, input === '');
361
- } else if (input === '') {
362
- this._updateValueAndInput('', true);
363
- } else {
364
- this._updateValueAndInput(stateValue);
365
- }
366
- }
367
- /**
368
- * called when range type rangeEnd input tab press
369
- * @param {Event} e
370
- */
371
-
372
-
373
- handleRangeEndTabPress(e) {
374
- this._adapter.setRangeInputFocus(false);
375
- }
376
- /**
377
- * called when the input box is focused
378
- * @param {Event} e input focus event
379
- * @param {String} range 'rangeStart' or 'rangeEnd', use when type is range
380
- */
381
-
382
-
383
- handleInputFocus(e, range) {
384
- var _context2;
385
-
386
- const rangeInputFocus = this._adapter.getState('rangeInputFocus');
387
-
388
- range && this._adapter.setRangeInputFocus(range);
389
- /**
390
- * rangeType: only notify when range is false
391
- * not rangeType: notify when focus
392
- */
393
-
394
- if (!range || !(0, _includes.default)(_context2 = ['rangeStart', 'rangeEnd']).call(_context2, rangeInputFocus)) {
395
- this._adapter.notifyFocus(e, range);
396
- }
397
- }
398
-
399
- handleSetRangeFocus(rangeInputFocus) {
400
- this._adapter.setRangeInputFocus(rangeInputFocus);
401
- }
402
-
403
- handleInputClear(e) {
404
- this._adapter.notifyClear(e);
405
- }
406
- /**
407
- * 范围选择清除按钮回调
408
- * 因为清除按钮没有集成在Input内,因此需要手动清除 value、inputValue、cachedValue
409
- *
410
- * callback of range input clear button
411
- * Since the clear button is not integrated in Input, you need to manually clear value, inputValue, cachedValue
412
- */
413
-
414
-
415
- handleRangeInputClear(e) {
416
- const value = [];
417
- const inputValue = '';
418
-
419
- if (!this._isControlledComponent('value')) {
420
- this._updateValueAndInput(value, true, inputValue);
421
-
422
- if (this._adapter.needConfirm()) {
423
- this._adapter.updateCachedSelectedValue(value);
424
- }
425
- }
426
-
427
- this._notifyChange(value);
428
-
429
- this._adapter.notifyClear(e);
430
- } // eslint-disable-next-line @typescript-eslint/no-empty-function
431
-
432
-
433
- handleRangeInputBlur(value, e) {} // Parses input only after user returns
434
-
435
-
436
- handleInputComplete() {
437
- let input = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : '';
438
- // console.log(input);
439
- let parsedResult = input ? this._isMultiple() ? this.parseMultipleInput(input, ',', true) : this.parseInput(input) : [];
440
- parsedResult = parsedResult && parsedResult.length ? parsedResult : this.getState('value'); // Use the current date as the value when the current input is empty and the last input is also empty
441
-
442
- if (!parsedResult || !parsedResult.length) {
443
- const nowDate = new Date();
444
-
445
- if (this._isRangeType()) {
446
- parsedResult = [nowDate, nowDate];
447
- } else {
448
- parsedResult = [nowDate];
449
- }
450
- }
451
-
452
- this._updateValueAndInput(parsedResult);
453
-
454
- const {
455
- value: stateValue
456
- } = this.getStates();
457
-
458
- const changedDates = this._getChangedDates(parsedResult);
459
-
460
- if (!this._someDateDisabled(changedDates) && !(0, _lodashEs.isEqual)(parsedResult, stateValue)) {
461
- this._notifyChange(parsedResult);
462
- }
463
- }
464
- /**
465
- * Parse the input, return the time object if it is valid,
466
- * otherwise return "
467
- *
468
- * @param {string} input
469
- * @returns {Date [] | '}
470
- */
471
-
472
-
473
- parseInput() {
474
- let input = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : '';
475
- let result = []; // console.log(input);
476
-
477
- const {
478
- dateFnsLocale,
479
- rangeSeparator
480
- } = this.getProps();
481
-
482
- if (input && input.length) {
483
- const type = this.getProp('type');
484
- const formatToken = this.getProp('format') || (0, _getDefaultFormatToken.getDefaultFormatTokenByType)(type);
485
- let parsedResult, formatedInput;
486
- const nowDate = new Date();
487
-
488
- switch (type) {
489
- case 'date':
490
- case 'dateTime':
491
- case 'month':
492
- parsedResult = input ? (0, _parser.compatiableParse)(input, formatToken, nowDate, dateFnsLocale) : '';
493
- formatedInput = parsedResult && (0, _dateFns.isValid)(parsedResult) && this.localeFormat(parsedResult, formatToken);
494
-
495
- if (parsedResult && formatedInput === input) {
496
- result = [parsedResult];
497
- }
498
-
499
- break;
500
-
501
- case 'dateRange':
502
- case 'dateTimeRange':
503
- const separator = rangeSeparator;
504
- const values = input.split(separator);
505
- parsedResult = values && (0, _reduce.default)(values).call(values, (arr, cur) => {
506
- const parsedVal = cur && (0, _parser.compatiableParse)(cur, formatToken, nowDate, dateFnsLocale);
507
- parsedVal && arr.push(parsedVal);
508
- return arr;
509
- }, []);
510
- formatedInput = parsedResult && (0, _map.default)(parsedResult).call(parsedResult, v => v && (0, _dateFns.isValid)(v) && this.localeFormat(v, formatToken)).join(separator);
511
-
512
- if (parsedResult && formatedInput === input) {
513
- (0, _sort.default)(parsedResult).call(parsedResult, (d1, d2) => d1.getTime() - d2.getTime());
514
- result = parsedResult;
515
- }
516
-
517
- break;
518
-
519
- default:
520
- break;
521
- }
522
- }
523
-
524
- return result;
525
- }
526
- /**
527
- * Parses the input when multiple is true, if valid,
528
- * returns a list of time objects, otherwise returns an array
529
- *
530
- * @param {string} [input='']
531
- * @param {string} [separator=',']
532
- * @param {boolean} [needDedupe=false]
533
- * @returns {Date[]}
534
- */
535
-
536
-
537
- parseMultipleInput() {
538
- let input = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : '';
539
- let separator = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : _constants.strings.DEFAULT_SEPARATOR_MULTIPLE;
540
- let needDedupe = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : false;
541
- const max = this.getProp('max');
542
- const inputArr = input.split(separator);
543
- const result = [];
544
-
545
- for (const curInput of inputArr) {
546
- let tmpParsed = curInput && this.parseInput(curInput);
547
- tmpParsed = (0, _isArray.default)(tmpParsed) ? tmpParsed : tmpParsed && [tmpParsed];
548
-
549
- if (tmpParsed && tmpParsed.length) {
550
- if (needDedupe) {
551
- // 20190519 TODO: needs to determine the case where multiple is true and range
552
- !(0, _filter.default)(result).call(result, r => Boolean((0, _find.default)(tmpParsed).call(tmpParsed, tp => (0, _dateFns.isSameSecond)(r, tp)))) && result.push(...tmpParsed);
553
- } else {
554
- result.push(...tmpParsed);
555
- }
556
- } else {
557
- return [];
558
- }
559
-
560
- if (max && max > 0 && result.length > max) {
561
- return [];
562
- }
563
- }
564
-
565
- return result;
566
- }
567
- /**
568
- * dates[] => string
569
- *
570
- * @param {Date[]} dates
571
- * @returns {string}
572
- */
573
-
574
-
575
- formatDates() {
576
- let dates = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : [];
577
- let str = '';
578
- const rangeSeparator = this.getProp('rangeSeparator');
579
-
580
- if ((0, _isArray.default)(dates) && dates.length) {
581
- const type = this.getProp('type');
582
- const formatToken = this.getProp('format') || (0, _getDefaultFormatToken.getDefaultFormatTokenByType)(type);
583
-
584
- switch (type) {
585
- case 'date':
586
- case 'dateTime':
587
- case 'month':
588
- str = this.localeFormat(dates[0], formatToken);
589
- break;
590
-
591
- case 'dateRange':
592
- case 'dateTimeRange':
593
- const startIsTruthy = !(0, _isNullOrUndefined.default)(dates[0]);
594
- const endIsTruthy = !(0, _isNullOrUndefined.default)(dates[1]);
595
-
596
- if (startIsTruthy && endIsTruthy) {
597
- var _context3, _context4;
598
-
599
- str = (0, _concat.default)(_context3 = (0, _concat.default)(_context4 = "".concat(this.localeFormat(dates[0], formatToken))).call(_context4, rangeSeparator)).call(_context3, this.localeFormat(dates[1], formatToken));
600
- } else {
601
- if (startIsTruthy) {
602
- var _context5;
603
-
604
- str = (0, _concat.default)(_context5 = "".concat(this.localeFormat(dates[0], formatToken))).call(_context5, rangeSeparator);
605
- } else if (endIsTruthy) {
606
- var _context6;
607
-
608
- str = (0, _concat.default)(_context6 = "".concat(rangeSeparator)).call(_context6, this.localeFormat(dates[1], formatToken));
609
- }
610
- }
611
-
612
- break;
613
-
614
- default:
615
- break;
616
- }
617
- }
618
-
619
- return str;
620
- }
621
- /**
622
- * dates[] => string
623
- *
624
- * @param {Date[]} dates
625
- * @returns {string}
626
- */
627
-
628
-
629
- formatMultipleDates() {
630
- let dates = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : [];
631
- let separator = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : _constants.strings.DEFAULT_SEPARATOR_MULTIPLE;
632
- const strs = [];
633
-
634
- if ((0, _isArray.default)(dates) && dates.length) {
635
- const type = this.getProp('type');
636
-
637
- switch (type) {
638
- case 'date':
639
- case 'dateTime':
640
- case 'month':
641
- (0, _forEach.default)(dates).call(dates, date => strs.push(this.formatDates([date])));
642
- break;
643
-
644
- case 'dateRange':
645
- case 'dateTimeRange':
646
- for (let i = 0; i < dates.length; i += 2) {
647
- strs.push(this.formatDates((0, _slice.default)(dates).call(dates, i, i + 2)));
648
- }
649
-
650
- break;
651
-
652
- default:
653
- break;
654
- }
655
- }
656
-
657
- return strs.join(separator);
658
- }
659
- /**
660
- * Update date value and the value of the input box
661
- * 1. Select Update
662
- * 2. Input Update
663
- * @param {Date|''} value
664
- * @param {Boolean} forceUpdateValue
665
- * @param {String} input
666
- */
667
-
668
-
669
- _updateValueAndInput(value, forceUpdateValue, input) {
670
- let _value;
671
-
672
- if (forceUpdateValue || value) {
673
- if (!(0, _isArray.default)(value)) {
674
- _value = value ? [value] : [];
675
- } else {
676
- _value = value;
677
- }
678
-
679
- const changedDates = this._getChangedDates(_value); // You cannot update the value directly when needConfirm, you can only change the value through handleConfirm
680
-
681
-
682
- if (!this._isControlledComponent() && !this._someDateDisabled(changedDates) && !this._adapter.needConfirm()) {
683
- this._adapter.updateValue(_value);
684
- }
685
- }
686
-
687
- this._adapter.updateInputValue(input);
688
- }
689
- /**
690
- * when changing the selected value through the date panel
691
- * @param {*} value
692
- * @param {*} options
693
- */
694
-
695
-
696
- handleSelectedChange(value, options) {
697
- const type = this.getProp('type');
698
- const {
699
- value: stateValue
700
- } = this.getStates();
701
-
702
- const controlled = this._isControlledComponent();
703
-
704
- const fromPreset = (0, _lodashEs.isObject)(options) ? options.fromPreset : options;
705
- const closePanel = (0, _lodashEs.get)(options, 'closePanel', true);
706
- /**
707
- * It is used to determine whether the panel can be stowed. In a Range type component, it is necessary to select both starting Time and endTime before stowing.
708
- * To determine whether both starting Time and endTime have been selected, it is used to judge whether the two inputs have been Focused.
709
- * This variable is used to indicate whether such a judgment is required. In the scene with shortcut operations, it is not required.
710
- */
711
-
712
- const needCheckFocusRecord = (0, _lodashEs.get)(options, 'needCheckFocusRecord', true);
713
-
714
- if (this._adapter.needConfirm()) {
715
- this._adapter.updateCachedSelectedValue(value);
716
- }
717
-
718
- const dates = (0, _isArray.default)(value) ? [...value] : value ? [value] : [];
719
-
720
- const changedDates = this._getChangedDates(dates);
721
-
722
- let inputValue;
723
-
724
- if (!this._someDateDisabled(changedDates)) {
725
- inputValue = this._isMultiple() ? this.formatMultipleDates(dates) : this.formatDates(dates);
726
- const isRangeTypeAndInputIncomplete = this._isRangeType() && ((0, _isNullOrUndefined.default)(dates[0]) || (0, _isNullOrUndefined.default)(dates[1]));
727
- /**
728
- * If the input is incomplete when under control, the notifyChange is not triggered because
729
- * You need to update the value of the input box, otherwise there will be a problem that a date is selected but the input box does not show the date #1357
730
- *
731
- * 受控时如果输入不完整,由于没有触发 notifyChange
732
- * 需要组件内更新一下输入框的值,否则会出现选了一个日期但是输入框没有回显日期的问题 #1357
733
- */
734
-
735
- if (!this._adapter.needConfirm() || fromPreset) {
736
- if (isRangeTypeAndInputIncomplete) {
737
- // do not change value when selected value is incomplete
738
- this._adapter.updateInputValue(inputValue);
739
-
740
- return;
741
- } else {
742
- (!controlled || fromPreset) && this._updateValueAndInput(dates, true, inputValue);
743
- }
744
- }
745
-
746
- if (!controlled && this._adapter.needConfirm()) {
747
- // select date only change inputValue when needConfirm is true
748
- this._adapter.updateInputValue(inputValue); // if inputValue is not complete, don't notifyChange
749
-
750
-
751
- if (isRangeTypeAndInputIncomplete) {
752
- return;
753
- }
754
- }
755
-
756
- if (!(0, _lodashEs.isEqual)(value, stateValue)) {
757
- this._notifyChange(value);
758
- }
759
- }
760
-
761
- const focusRecordChecked = !needCheckFocusRecord || needCheckFocusRecord && this._adapter.couldPanelClosed();
762
-
763
- if (type === 'date' && !this._isMultiple() && closePanel || type === 'dateRange' && this._isRangeValueComplete(dates) && closePanel && focusRecordChecked) {
764
- this.closePanel(undefined, inputValue, dates);
765
- }
766
- }
767
- /**
768
- * when changing the year and month through the panel when the type is year or month
769
- * @param {*} item
770
- */
771
-
772
-
773
- handleYMSelectedChange() {
774
- let item = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};
775
- // console.log(item);
776
- const {
777
- currentMonth,
778
- currentYear
779
- } = item;
780
-
781
- if (typeof currentMonth === 'number' && typeof currentYear === 'number') {
782
- // Strings with only dates (e.g. "1970-01-01") will be treated as UTC instead of local time #1460
783
- const date = new Date(currentYear, currentMonth - 1);
784
- this.handleSelectedChange([date]);
785
- }
786
- }
787
-
788
- handleConfirm() {
789
- const {
790
- cachedSelectedValue,
791
- value
792
- } = this.getStates();
793
-
794
- const isRangeValueComplete = this._isRangeValueComplete(cachedSelectedValue);
795
-
796
- const newValue = isRangeValueComplete ? cachedSelectedValue : value;
797
-
798
- if (this._adapter.needConfirm() && !this._isControlledComponent()) {
799
- this._adapter.updateValue(newValue);
800
- } // If the input is incomplete, the legal date of the last input is used
801
-
802
-
803
- this.closePanel(undefined, undefined, newValue);
804
-
805
- if (isRangeValueComplete) {
806
- const {
807
- notifyValue,
808
- notifyDate
809
- } = this.disposeCallbackArgs(cachedSelectedValue);
810
-
811
- this._adapter.notifyConfirm(notifyDate, notifyValue);
812
- }
813
- }
814
-
815
- handleCancel() {
816
- this.closePanel();
817
- const value = this.getState('value');
818
- const {
819
- notifyValue,
820
- notifyDate
821
- } = this.disposeCallbackArgs(value);
822
-
823
- this._adapter.notifyCancel(notifyDate, notifyValue);
824
- }
825
-
826
- handlePresetClick(item, e) {
827
- const {
828
- type,
829
- timeZone
830
- } = this.getProps();
831
- const prevTimeZone = this.getState('prevTimezone');
832
- let value;
833
-
834
- switch (type) {
835
- case 'month':
836
- case 'dateTime':
837
- case 'date':
838
- value = this.parseWithTimezone([item.start], timeZone, prevTimeZone);
839
- this.handleSelectedChange(value);
840
- break;
841
-
842
- case 'dateTimeRange':
843
- case 'dateRange':
844
- value = this.parseWithTimezone([item.start, item.end], timeZone, prevTimeZone);
845
- this.handleSelectedChange(value, {
846
- needCheckFocusRecord: false
847
- });
848
- break;
849
-
850
- default:
851
- break;
852
- }
853
-
854
- this._adapter.notifyPresetsClick(item, e);
855
- }
856
- /**
857
- * 根据 type 处理 onChange 返回的参数
858
- *
859
- * - 返回的日期需要把用户时间转换为设置的时区时间
860
- * - 用户时间:用户计算机系统时间
861
- * - 时区时间:通过 ConfigProvider 设置的 timeZone
862
- * - 例子:用户设置时区为+9,计算机所在时区为+8区,然后用户选择了22:00
863
- * - DatePicker 内部保存日期 state 为 +8 的 22:00 => a = new Date("2021-05-25 22:00:00")
864
- * - 传出去时,需要把 +8 的 22:00 => +9 的 22:00 => b = zonedTimeToUtc(a, "+09:00");
865
- *
866
- * According to the type processing onChange returned parameters
867
- *
868
- * - the returned date needs to convert the user time to the set time zone time
869
- * - user time: user computer system time
870
- * - time zone time: timeZone set by ConfigProvider
871
- * - example: the user sets the time zone to + 9, the computer's time zone is + 8 zone, and then the user selects 22:00
872
- * - DatePicker internal save date state is + 8 22:00 = > a = new Date ("2021-05-25 22:00:00")
873
- * - when passed out, you need to + 8 22:00 = > + 9 22:00 = > b = zonedTimeToUtc (a, "+ 09:00");
874
- *
875
- * e.g.
876
- * let a = new Date ("2021-05-25 22:00:00");
877
- * = > Tue May 25 2021 22:00:00 GMT + 0800 (China Standard Time)
878
- * let b = zonedTimeToUtc (a, "+ 09:00");
879
- * = > Tue May 25 2021 21:00:00 GMT + 0800 (China Standard Time)
880
- *
881
- * @param {Date|Date[]} value
882
- * @return {{ notifyDate: Date|Date[], notifyValue: string|string[]}}
883
- */
884
-
885
-
886
- disposeCallbackArgs(value) {
887
- let _value = (0, _isArray.default)(value) ? value : value && [value] || [];
888
-
889
- if (this.isValidTimeZone()) {
890
- const timeZone = this.getProp('timeZone');
891
- _value = (0, _map.default)(_value).call(_value, date => (0, _dateFnsExtra.zonedTimeToUtc)(date, timeZone));
892
- }
893
-
894
- const type = this.getProp('type');
895
- const formatToken = this.getProp('format') || (0, _getDefaultFormatToken.getDefaultFormatTokenByType)(type);
896
- let notifyValue, notifyDate;
897
-
898
- switch (type) {
899
- case 'date':
900
- case 'dateTime':
901
- case 'month':
902
- if (!this._isMultiple()) {
903
- notifyValue = _value[0] && this.localeFormat(_value[0], formatToken);
904
- [notifyDate] = _value;
905
- } else {
906
- notifyValue = (0, _map.default)(_value).call(_value, v => v && this.localeFormat(v, formatToken));
907
- notifyDate = [..._value];
908
- }
909
-
910
- break;
911
-
912
- case 'dateRange':
913
- case 'dateTimeRange':
914
- notifyValue = (0, _map.default)(_value).call(_value, v => v && this.localeFormat(v, formatToken));
915
- notifyDate = [..._value];
916
- break;
917
-
918
- default:
919
- break;
920
- }
921
-
922
- return {
923
- notifyValue,
924
- notifyDate
925
- };
926
- }
927
- /**
928
- * Notice: Check whether the date is the same as the state value before calling
929
- * @param {Date[]} value
930
- */
931
-
932
-
933
- _notifyChange(value) {
934
- if (this._isRangeType() && !this._isRangeValueComplete(value)) {
935
- return;
936
- }
937
-
938
- const {
939
- onChangeWithDateFirst
940
- } = this.getProps();
941
- const {
942
- notifyValue,
943
- notifyDate
944
- } = this.disposeCallbackArgs(value);
945
-
946
- if (onChangeWithDateFirst) {
947
- this._adapter.notifyChange(notifyDate, notifyValue);
948
- } else {
949
- this._adapter.notifyChange(notifyValue, notifyDate);
950
- }
951
- }
952
- /**
953
- * Get the date changed through the date panel or enter
954
- * @param {Date[]} dates
955
- * @returns {Date[]}
956
- */
957
-
958
-
959
- _getChangedDates(dates) {
960
- const type = this._adapter.getProp('type');
961
-
962
- const stateValue = this._adapter.getState('value');
963
-
964
- const changedDates = [];
965
-
966
- switch (type) {
967
- case 'dateRange':
968
- case 'dateTimeRange':
969
- const [stateStart, stateEnd] = stateValue;
970
- const [start, end] = dates;
971
-
972
- if (!(0, _dateFns.isEqual)(start, stateStart)) {
973
- changedDates.push(start);
974
- }
975
-
976
- if (!(0, _dateFns.isEqual)(end, stateEnd)) {
977
- changedDates.push(end);
978
- }
979
-
980
- break;
981
-
982
- default:
983
- const stateValueSet = new _set.default();
984
- (0, _forEach.default)(stateValue).call(stateValue, value => stateValueSet.add((0, _dateFns.isDate)(value) && value.valueOf()));
985
-
986
- for (const date of dates) {
987
- if (!stateValueSet.has((0, _dateFns.isDate)(date) && date.valueOf())) {
988
- changedDates.push(date);
989
- }
990
- }
991
-
992
- }
993
-
994
- return changedDates;
995
- }
996
- /**
997
- * Whether a date is disabled
998
- * @param {Array} value
999
- */
1000
-
1001
-
1002
- _someDateDisabled(value) {
1003
- const stateValue = this.getState('value');
1004
- const disabledOptions = {
1005
- rangeStart: '',
1006
- rangeEnd: ''
1007
- }; // DisabledDate needs to pass the second parameter
1008
-
1009
- if (this._isRangeType() && (0, _isArray.default)(stateValue)) {
1010
- if ((0, _dateFns.isValid)(stateValue[0])) {
1011
- const rangeStart = (0, _dateFns.format)(stateValue[0], 'yyyy-MM-dd');
1012
- disabledOptions.rangeStart = rangeStart;
1013
- }
1014
-
1015
- if ((0, _dateFns.isValid)(stateValue[1])) {
1016
- const rangeEnd = (0, _dateFns.format)(stateValue[1], 'yyyy-MM-dd');
1017
- disabledOptions.rangeEnd = rangeEnd;
1018
- }
1019
- }
1020
-
1021
- let isSomeDateDisabled = false;
1022
-
1023
- for (const date of value) {
1024
- // skip check if date is null
1025
- if (!(0, _isNullOrUndefined.default)(date) && this.disabledDisposeDate(date, disabledOptions)) {
1026
- isSomeDateDisabled = true;
1027
- break;
1028
- }
1029
- }
1030
-
1031
- return isSomeDateDisabled;
1032
- }
1033
- /**
1034
- * Format locale date
1035
- * locale get from LocaleProvider
1036
- * @param {Date} date
1037
- * @param {String} token
1038
- */
1039
-
1040
-
1041
- localeFormat(date, token) {
1042
- const dateFnsLocale = this._adapter.getProp('dateFnsLocale');
1043
-
1044
- return (0, _dateFns.format)(date, token, {
1045
- locale: dateFnsLocale
1046
- });
1047
- }
1048
- /**
1049
- * Convert computer date to UTC date
1050
- * Before passing the date to the user, you need to convert the date to UTC time
1051
- * dispose date from computer date to utc date
1052
- * When given timeZone prop, you should convert computer date to utc date before passing to user
1053
- * @param {(date: Date) => Boolean} fn
1054
- * @param {Date|Date[]} date
1055
- * @returns {Boolean}
1056
- */
1057
-
1058
-
1059
- disposeDateFn(fn, date) {
1060
- const {
1061
- notifyDate
1062
- } = this.disposeCallbackArgs(date);
1063
- const dateIsArray = (0, _isArray.default)(date);
1064
- const notifyDateIsArray = (0, _isArray.default)(notifyDate);
1065
- let disposeDate;
1066
-
1067
- if (dateIsArray === notifyDateIsArray) {
1068
- disposeDate = notifyDate;
1069
- } else {
1070
- disposeDate = dateIsArray ? [notifyDate] : notifyDate[0];
1071
- }
1072
-
1073
- for (var _len = arguments.length, rest = new Array(_len > 2 ? _len - 2 : 0), _key = 2; _key < _len; _key++) {
1074
- rest[_key - 2] = arguments[_key];
1075
- }
1076
-
1077
- return fn(disposeDate, ...rest);
1078
- }
1079
- /**
1080
- * Determine whether the date is disabled
1081
- * Whether the date is disabled
1082
- * @param {Date} date
1083
- * @returns {Boolean}
1084
- */
1085
-
1086
-
1087
- disabledDisposeDate(date) {
1088
- const {
1089
- disabledDate
1090
- } = this.getProps();
1091
-
1092
- for (var _len2 = arguments.length, rest = new Array(_len2 > 1 ? _len2 - 1 : 0), _key2 = 1; _key2 < _len2; _key2++) {
1093
- rest[_key2 - 1] = arguments[_key2];
1094
- }
1095
-
1096
- return this.disposeDateFn(disabledDate, date, ...rest);
1097
- }
1098
- /**
1099
- * Determine whether the date is disabled
1100
- * Whether the date time is disabled
1101
- * @param {Date|Date[]} date
1102
- * @returns {Object}
1103
- */
1104
-
1105
-
1106
- disabledDisposeTime(date) {
1107
- const {
1108
- disabledTime
1109
- } = this.getProps();
1110
-
1111
- for (var _len3 = arguments.length, rest = new Array(_len3 > 1 ? _len3 - 1 : 0), _key3 = 1; _key3 < _len3; _key3++) {
1112
- rest[_key3 - 1] = arguments[_key3];
1113
- }
1114
-
1115
- return this.disposeDateFn(disabledTime, date, ...rest);
1116
- }
1117
- /**
1118
- * Trigger wrapper needs to do two things:
1119
- * 1. Open Panel when clicking trigger;
1120
- * 2. When clicking on a child but the child does not listen to the focus event, manually trigger focus
1121
- *
1122
- * @param {Event} e
1123
- * @returns
1124
- */
1125
-
1126
-
1127
- handleTriggerWrapperClick(e) {
1128
- const {
1129
- disabled
1130
- } = this._adapter.getProps();
1131
-
1132
- const {
1133
- rangeInputFocus
1134
- } = this._adapter.getStates();
1135
-
1136
- if (disabled) {
1137
- return;
1138
- }
1139
- /**
1140
- * - 非范围选择时,trigger 为原生输入框,已在组件内处理了 focus 逻辑
1141
- * - isEventTarget 函数用于判断触发事件的是否为 input wrapper。如果是冒泡上来的不用处理,因为在子级已经处理了 focus 逻辑。
1142
- *
1143
- * - When type is not range type, Input component will automatically focus in the same case
1144
- * - isEventTarget is used to judge whether the event is a bubbling event
1145
- */
1146
-
1147
-
1148
- if (this._isRangeType() && !rangeInputFocus && this._adapter.isEventTarget(e)) {
1149
- (0, _setTimeout2.default)(() => {
1150
- // using setTimeout get correct state value 'rangeInputFocus'
1151
- this.handleInputFocus(e, 'rangeStart');
1152
- this.openPanel();
1153
- }, 0);
1154
- } else {
1155
- this.openPanel();
1156
- }
1157
- }
1158
-
1159
- }
1160
-
1161
- exports.default = DatePickerFoundation;