@douyinfe/semi-foundation 2.1.1 → 2.1.2

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 (724) hide show
  1. package/anchor/foundation.ts +1 -1
  2. package/autoComplete/autoComplete.scss +3 -2
  3. package/autoComplete/foundation.ts +1 -1
  4. package/base/foundation.ts +1 -1
  5. package/cascader/foundation.ts +1 -1
  6. package/cascader/util.ts +1 -1
  7. package/datePicker/_utils/getFullDateOffset.ts +1 -1
  8. package/datePicker/foundation.ts +1 -1
  9. package/datePicker/monthsGridFoundation.ts +1 -1
  10. package/form/foundation.ts +1 -1
  11. package/form/utils.ts +1 -1
  12. package/getBabelConfig.js +36 -0
  13. package/gulpfile.js +27 -9
  14. package/input/foundation.ts +1 -1
  15. package/input/input.scss +2 -0
  16. package/input/textareaFoundation.ts +1 -1
  17. package/input/util/getSizingData.ts +1 -1
  18. package/input/variables.scss +1 -1
  19. package/inputNumber/foundation.ts +1 -1
  20. package/lib/cjs/_portal/portal.css +15 -0
  21. package/lib/cjs/_portal/portal.scss +17 -0
  22. package/lib/cjs/anchor/anchor.css +118 -0
  23. package/lib/cjs/anchor/anchor.scss +120 -0
  24. package/lib/cjs/anchor/constants.d.ts +11 -0
  25. package/lib/cjs/anchor/constants.js +24 -0
  26. package/lib/cjs/anchor/foundation.d.ts +41 -0
  27. package/lib/cjs/anchor/foundation.js +270 -0
  28. package/lib/cjs/anchor/linkFoundation.d.ts +14 -0
  29. package/lib/cjs/anchor/linkFoundation.js +50 -0
  30. package/lib/cjs/anchor/rtl.scss +18 -0
  31. package/lib/cjs/anchor/variables.scss +27 -0
  32. package/lib/cjs/autoComplete/autoComplete.css +103 -0
  33. package/lib/cjs/autoComplete/autoComplete.scss +38 -0
  34. package/lib/cjs/autoComplete/constants.d.ts +10 -0
  35. package/lib/cjs/autoComplete/constants.js +25 -0
  36. package/lib/cjs/autoComplete/foundation.d.ts +62 -0
  37. package/lib/cjs/autoComplete/foundation.js +465 -0
  38. package/lib/cjs/autoComplete/rtl.scss +8 -0
  39. package/lib/cjs/autoComplete/variables.scss +3 -0
  40. package/lib/cjs/avatar/avatar.css +426 -0
  41. package/lib/cjs/avatar/avatar.scss +205 -0
  42. package/lib/cjs/avatar/constants.d.ts +10 -0
  43. package/lib/cjs/avatar/constants.js +24 -0
  44. package/lib/cjs/avatar/foundation.d.ts +14 -0
  45. package/lib/cjs/avatar/foundation.js +49 -0
  46. package/lib/cjs/avatar/mixin.css +3 -0
  47. package/lib/cjs/avatar/mixin.scss +4 -0
  48. package/lib/cjs/avatar/rtl.scss +69 -0
  49. package/lib/cjs/avatar/variables.scss +45 -0
  50. package/lib/cjs/backtop/backtop.css +20 -0
  51. package/lib/cjs/backtop/backtop.scss +17 -0
  52. package/lib/cjs/backtop/constants.d.ts +5 -0
  53. package/lib/cjs/backtop/constants.js +18 -0
  54. package/lib/cjs/backtop/foundation.d.ts +21 -0
  55. package/lib/cjs/backtop/foundation.js +114 -0
  56. package/lib/cjs/backtop/rtl.scss +10 -0
  57. package/lib/cjs/backtop/variables.scss +3 -0
  58. package/lib/cjs/badge/badge.css +146 -0
  59. package/lib/cjs/badge/badge.scss +168 -0
  60. package/lib/cjs/badge/constants.d.ts +10 -0
  61. package/lib/cjs/badge/constants.js +24 -0
  62. package/lib/cjs/badge/rtl.scss +8 -0
  63. package/lib/cjs/badge/variables.scss +43 -0
  64. package/lib/cjs/banner/banner.css +92 -0
  65. package/lib/cjs/banner/banner.scss +109 -0
  66. package/lib/cjs/banner/constants.d.ts +7 -0
  67. package/lib/cjs/banner/constants.js +20 -0
  68. package/lib/cjs/banner/foundation.d.ts +9 -0
  69. package/lib/cjs/banner/foundation.js +30 -0
  70. package/lib/cjs/banner/rtl.scss +20 -0
  71. package/lib/cjs/banner/variables.scss +27 -0
  72. package/lib/cjs/base/base.css +24 -0
  73. package/lib/cjs/base/base.scss +33 -0
  74. package/lib/cjs/base/constants.d.ts +3 -0
  75. package/lib/cjs/base/constants.js +22 -0
  76. package/lib/cjs/base/env.d.ts +1 -0
  77. package/lib/cjs/base/env.js +11 -0
  78. package/lib/cjs/base/foundation.d.ts +59 -0
  79. package/lib/cjs/base/foundation.js +144 -0
  80. package/lib/cjs/base/index.d.ts +5 -0
  81. package/lib/cjs/base/index.js +18 -0
  82. package/lib/cjs/breadcrumb/breadcrumb.css +109 -0
  83. package/lib/cjs/breadcrumb/breadcrumb.scss +120 -0
  84. package/lib/cjs/breadcrumb/constants.d.ts +7 -0
  85. package/lib/cjs/breadcrumb/constants.js +20 -0
  86. package/lib/cjs/breadcrumb/foundation.d.ts +24 -0
  87. package/lib/cjs/breadcrumb/foundation.js +52 -0
  88. package/lib/cjs/breadcrumb/itemFoundation.d.ts +22 -0
  89. package/lib/cjs/breadcrumb/itemFoundation.js +31 -0
  90. package/lib/cjs/breadcrumb/rtl.scss +33 -0
  91. package/lib/cjs/breadcrumb/variables.scss +19 -0
  92. package/lib/cjs/button/button.css +309 -0
  93. package/lib/cjs/button/button.scss +219 -0
  94. package/lib/cjs/button/constants.d.ts +6 -0
  95. package/lib/cjs/button/constants.js +28 -0
  96. package/lib/cjs/button/iconButton.css +160 -0
  97. package/lib/cjs/button/iconButton.scss +70 -0
  98. package/lib/cjs/button/rtl.scss +128 -0
  99. package/lib/cjs/button/splitButtonGroup.scss +32 -0
  100. package/lib/cjs/button/variables.scss +128 -0
  101. package/lib/cjs/calendar/calendar.css +592 -0
  102. package/lib/cjs/calendar/calendar.scss +520 -0
  103. package/lib/cjs/calendar/constants.d.ts +7 -0
  104. package/lib/cjs/calendar/constants.js +20 -0
  105. package/lib/cjs/calendar/eventUtil.d.ts +93 -0
  106. package/lib/cjs/calendar/eventUtil.js +431 -0
  107. package/lib/cjs/calendar/foundation.d.ts +99 -0
  108. package/lib/cjs/calendar/foundation.js +483 -0
  109. package/lib/cjs/calendar/rtl.scss +134 -0
  110. package/lib/cjs/calendar/variables.scss +105 -0
  111. package/lib/cjs/card/card.css +148 -0
  112. package/lib/cjs/card/card.scss +146 -0
  113. package/lib/cjs/card/constants.d.ts +8 -0
  114. package/lib/cjs/card/constants.js +21 -0
  115. package/lib/cjs/card/rtl.scss +43 -0
  116. package/lib/cjs/card/variables.scss +30 -0
  117. package/lib/cjs/cascader/cascader.css +438 -0
  118. package/lib/cjs/cascader/cascader.scss +436 -0
  119. package/lib/cjs/cascader/constants.d.ts +14 -0
  120. package/lib/cjs/cascader/constants.js +28 -0
  121. package/lib/cjs/cascader/foundation.d.ts +221 -0
  122. package/lib/cjs/cascader/foundation.js +1061 -0
  123. package/lib/cjs/cascader/rtl.scss +114 -0
  124. package/lib/cjs/cascader/util.d.ts +4 -0
  125. package/lib/cjs/cascader/util.js +114 -0
  126. package/lib/cjs/cascader/variables.scss +117 -0
  127. package/lib/cjs/checkbox/checkbox.css +311 -0
  128. package/lib/cjs/checkbox/checkbox.scss +363 -0
  129. package/lib/cjs/checkbox/checkboxFoundation.d.ts +49 -0
  130. package/lib/cjs/checkbox/checkboxFoundation.js +105 -0
  131. package/lib/cjs/checkbox/checkboxGroupFoundation.d.ts +17 -0
  132. package/lib/cjs/checkbox/checkboxGroupFoundation.js +103 -0
  133. package/lib/cjs/checkbox/constants.d.ts +27 -0
  134. package/lib/cjs/checkbox/constants.js +42 -0
  135. package/lib/cjs/checkbox/mixin.css +3 -0
  136. package/lib/cjs/checkbox/mixin.scss +0 -0
  137. package/lib/cjs/checkbox/rtl.scss +54 -0
  138. package/lib/cjs/checkbox/variables.scss +62 -0
  139. package/lib/cjs/collapse/collapse.css +78 -0
  140. package/lib/cjs/collapse/collapse.scss +77 -0
  141. package/lib/cjs/collapse/constants.d.ts +7 -0
  142. package/lib/cjs/collapse/constants.js +20 -0
  143. package/lib/cjs/collapse/foundation.d.ts +28 -0
  144. package/lib/cjs/collapse/foundation.js +77 -0
  145. package/lib/cjs/collapse/rtl.scss +26 -0
  146. package/lib/cjs/collapse/variables.scss +22 -0
  147. package/lib/cjs/collapsible/constants.d.ts +4 -0
  148. package/lib/cjs/collapsible/constants.js +16 -0
  149. package/lib/cjs/datePicker/_utils/formatter.d.ts +14 -0
  150. package/lib/cjs/datePicker/_utils/formatter.js +72 -0
  151. package/lib/cjs/datePicker/_utils/getDayOfWeek.d.ts +11 -0
  152. package/lib/cjs/datePicker/_utils/getDayOfWeek.js +31 -0
  153. package/lib/cjs/datePicker/_utils/getDefaultFormatToken.d.ts +9 -0
  154. package/lib/cjs/datePicker/_utils/getDefaultFormatToken.js +29 -0
  155. package/lib/cjs/datePicker/_utils/getFullDateOffset.d.ts +7 -0
  156. package/lib/cjs/datePicker/_utils/getFullDateOffset.js +35 -0
  157. package/lib/cjs/datePicker/_utils/getMonthTable.d.ts +12 -0
  158. package/lib/cjs/datePicker/_utils/getMonthTable.js +97 -0
  159. package/lib/cjs/datePicker/_utils/getMonthsInYear.d.ts +2 -0
  160. package/lib/cjs/datePicker/_utils/getMonthsInYear.js +26 -0
  161. package/lib/cjs/datePicker/_utils/getYears.d.ts +2 -0
  162. package/lib/cjs/datePicker/_utils/getYears.js +24 -0
  163. package/lib/cjs/datePicker/_utils/index.d.ts +13 -0
  164. package/lib/cjs/datePicker/_utils/index.js +117 -0
  165. package/lib/cjs/datePicker/_utils/isAfter.d.ts +1 -0
  166. package/lib/cjs/datePicker/_utils/isAfter.js +21 -0
  167. package/lib/cjs/datePicker/_utils/isBefore.d.ts +1 -0
  168. package/lib/cjs/datePicker/_utils/isBefore.js +21 -0
  169. package/lib/cjs/datePicker/_utils/isBetween.d.ts +11 -0
  170. package/lib/cjs/datePicker/_utils/isBetween.js +36 -0
  171. package/lib/cjs/datePicker/_utils/isDate.d.ts +1 -0
  172. package/lib/cjs/datePicker/_utils/isDate.js +13 -0
  173. package/lib/cjs/datePicker/_utils/isSameDay.d.ts +1 -0
  174. package/lib/cjs/datePicker/_utils/isSameDay.js +21 -0
  175. package/lib/cjs/datePicker/_utils/isTimestamp.d.ts +1 -0
  176. package/lib/cjs/datePicker/_utils/isTimestamp.js +19 -0
  177. package/lib/cjs/datePicker/_utils/isUnixTimestamp.d.ts +1 -0
  178. package/lib/cjs/datePicker/_utils/isUnixTimestamp.js +19 -0
  179. package/lib/cjs/datePicker/_utils/isValidDate.d.ts +1 -0
  180. package/lib/cjs/datePicker/_utils/isValidDate.js +13 -0
  181. package/lib/cjs/datePicker/_utils/isWithinInterval.d.ts +4 -0
  182. package/lib/cjs/datePicker/_utils/isWithinInterval.js +29 -0
  183. package/lib/cjs/datePicker/_utils/parser.d.ts +4 -0
  184. package/lib/cjs/datePicker/_utils/parser.js +46 -0
  185. package/lib/cjs/datePicker/constants.d.ts +50 -0
  186. package/lib/cjs/datePicker/constants.js +75 -0
  187. package/lib/cjs/datePicker/datePicker.css +810 -0
  188. package/lib/cjs/datePicker/datePicker.scss +1034 -0
  189. package/lib/cjs/datePicker/foundation.d.ts +409 -0
  190. package/lib/cjs/datePicker/foundation.js +1167 -0
  191. package/lib/cjs/datePicker/inputFoundation.d.ts +59 -0
  192. package/lib/cjs/datePicker/inputFoundation.js +125 -0
  193. package/lib/cjs/datePicker/monthFoundation.d.ts +73 -0
  194. package/lib/cjs/datePicker/monthFoundation.js +96 -0
  195. package/lib/cjs/datePicker/monthsGridFoundation.d.ts +218 -0
  196. package/lib/cjs/datePicker/monthsGridFoundation.js +954 -0
  197. package/lib/cjs/datePicker/rtl.scss +171 -0
  198. package/lib/cjs/datePicker/variables.scss +169 -0
  199. package/lib/cjs/datePicker/yearAndMonthFoundation.d.ts +56 -0
  200. package/lib/cjs/datePicker/yearAndMonthFoundation.js +52 -0
  201. package/lib/cjs/descriptions/constants.d.ts +9 -0
  202. package/lib/cjs/descriptions/constants.js +23 -0
  203. package/lib/cjs/descriptions/descriptions.css +191 -0
  204. package/lib/cjs/descriptions/descriptions.scss +150 -0
  205. package/lib/cjs/descriptions/rtl.scss +91 -0
  206. package/lib/cjs/descriptions/variables.scss +15 -0
  207. package/lib/cjs/dropdown/constants.d.ts +16 -0
  208. package/lib/cjs/dropdown/constants.js +32 -0
  209. package/lib/cjs/dropdown/dropdown.css +123 -0
  210. package/lib/cjs/dropdown/dropdown.scss +106 -0
  211. package/lib/cjs/dropdown/foundation.d.ts +8 -0
  212. package/lib/cjs/dropdown/foundation.js +24 -0
  213. package/lib/cjs/dropdown/rtl.scss +27 -0
  214. package/lib/cjs/dropdown/variables.scss +38 -0
  215. package/lib/cjs/empty/constants.d.ts +7 -0
  216. package/lib/cjs/empty/constants.js +20 -0
  217. package/lib/cjs/empty/empty.css +50 -0
  218. package/lib/cjs/empty/empty.scss +54 -0
  219. package/lib/cjs/empty/rtl.scss +15 -0
  220. package/lib/cjs/empty/variables.scss +8 -0
  221. package/lib/cjs/form/constants.d.ts +11 -0
  222. package/lib/cjs/form/constants.js +25 -0
  223. package/lib/cjs/form/form.css +250 -0
  224. package/lib/cjs/form/form.scss +273 -0
  225. package/lib/cjs/form/foundation.d.ts +86 -0
  226. package/lib/cjs/form/foundation.js +845 -0
  227. package/lib/cjs/form/interface.d.ts +121 -0
  228. package/lib/cjs/form/interface.js +7 -0
  229. package/lib/cjs/form/rtl.scss +89 -0
  230. package/lib/cjs/form/utils.d.ts +52 -0
  231. package/lib/cjs/form/utils.js +242 -0
  232. package/lib/cjs/form/variables.scss +44 -0
  233. package/lib/cjs/grid/constants.d.ts +4 -0
  234. package/lib/cjs/grid/constants.js +16 -0
  235. package/lib/cjs/grid/grid.css +6295 -0
  236. package/lib/cjs/grid/grid.scss +121 -0
  237. package/lib/cjs/grid/mixin.css +3 -0
  238. package/lib/cjs/grid/mixin.scss +115 -0
  239. package/lib/cjs/grid/rtl.scss +9 -0
  240. package/lib/cjs/grid/variables.scss +35 -0
  241. package/lib/cjs/icons/constants.d.ts +9 -0
  242. package/lib/cjs/icons/constants.js +24 -0
  243. package/lib/cjs/input/constants.d.ts +12 -0
  244. package/lib/cjs/input/constants.js +26 -0
  245. package/lib/cjs/input/foundation.d.ts +79 -0
  246. package/lib/cjs/input/foundation.js +379 -0
  247. package/lib/cjs/input/input.css +568 -0
  248. package/lib/cjs/input/input.scss +630 -0
  249. package/lib/cjs/input/rtl.scss +100 -0
  250. package/lib/cjs/input/textarea.css +222 -0
  251. package/lib/cjs/input/textarea.scss +188 -0
  252. package/lib/cjs/input/textareaFoundation.d.ts +63 -0
  253. package/lib/cjs/input/textareaFoundation.js +299 -0
  254. package/lib/cjs/input/util/calculateNodeHeight.d.ts +1 -0
  255. package/lib/cjs/input/util/calculateNodeHeight.js +101 -0
  256. package/lib/cjs/input/util/getSizingData.d.ts +6 -0
  257. package/lib/cjs/input/util/getSizingData.js +47 -0
  258. package/lib/cjs/input/variables.scss +109 -0
  259. package/lib/cjs/inputNumber/constants.d.ts +17 -0
  260. package/lib/cjs/inputNumber/constants.js +27 -0
  261. package/lib/cjs/inputNumber/foundation.d.ts +107 -0
  262. package/lib/cjs/inputNumber/foundation.js +692 -0
  263. package/lib/cjs/inputNumber/inputNumber.css +99 -0
  264. package/lib/cjs/inputNumber/inputNumber.scss +108 -0
  265. package/lib/cjs/inputNumber/rtl.scss +30 -0
  266. package/lib/cjs/inputNumber/variables.scss +23 -0
  267. package/lib/cjs/keyframes/rotate.css +11 -0
  268. package/lib/cjs/keyframes/rotate.scss +8 -0
  269. package/lib/cjs/layout/constants.d.ts +7 -0
  270. package/lib/cjs/layout/constants.js +20 -0
  271. package/lib/cjs/layout/layout.css +40 -0
  272. package/lib/cjs/layout/layout.scss +49 -0
  273. package/lib/cjs/layout/rtl.scss +8 -0
  274. package/lib/cjs/list/constants.d.ts +9 -0
  275. package/lib/cjs/list/constants.js +22 -0
  276. package/lib/cjs/list/list.css +121 -0
  277. package/lib/cjs/list/list.scss +125 -0
  278. package/lib/cjs/list/rtl.scss +39 -0
  279. package/lib/cjs/list/variables.scss +17 -0
  280. package/lib/cjs/modal/constants.d.ts +10 -0
  281. package/lib/cjs/modal/constants.js +23 -0
  282. package/lib/cjs/modal/modal.css +233 -0
  283. package/lib/cjs/modal/modal.scss +267 -0
  284. package/lib/cjs/modal/modalContentFoundation.d.ts +33 -0
  285. package/lib/cjs/modal/modalContentFoundation.js +76 -0
  286. package/lib/cjs/modal/modalFoundation.d.ts +68 -0
  287. package/lib/cjs/modal/modalFoundation.js +52 -0
  288. package/lib/cjs/modal/rtl.scss +48 -0
  289. package/lib/cjs/modal/variables.scss +69 -0
  290. package/lib/cjs/navigation/NavItem.d.ts +10 -0
  291. package/lib/cjs/navigation/NavItem.js +74 -0
  292. package/lib/cjs/navigation/constants.d.ts +21 -0
  293. package/lib/cjs/navigation/constants.js +38 -0
  294. package/lib/cjs/navigation/foundation.d.ts +86 -0
  295. package/lib/cjs/navigation/foundation.js +313 -0
  296. package/lib/cjs/navigation/itemFoundation.d.ts +45 -0
  297. package/lib/cjs/navigation/itemFoundation.js +84 -0
  298. package/lib/cjs/navigation/mixin.css +3 -0
  299. package/lib/cjs/navigation/mixin.scss +98 -0
  300. package/lib/cjs/navigation/navigation.css +758 -0
  301. package/lib/cjs/navigation/navigation.scss +683 -0
  302. package/lib/cjs/navigation/rtl.scss +132 -0
  303. package/lib/cjs/navigation/subNavFoundation.d.ts +39 -0
  304. package/lib/cjs/navigation/subNavFoundation.js +147 -0
  305. package/lib/cjs/navigation/variables.scss +132 -0
  306. package/lib/cjs/notification/constants.d.ts +14 -0
  307. package/lib/cjs/notification/constants.js +29 -0
  308. package/lib/cjs/notification/notification.css +154 -0
  309. package/lib/cjs/notification/notification.scss +168 -0
  310. package/lib/cjs/notification/notificationFoundation.d.ts +48 -0
  311. package/lib/cjs/notification/notificationFoundation.js +74 -0
  312. package/lib/cjs/notification/notificationListFoundation.d.ts +28 -0
  313. package/lib/cjs/notification/notificationListFoundation.js +61 -0
  314. package/lib/cjs/notification/rtl.scss +23 -0
  315. package/lib/cjs/notification/variables.scss +43 -0
  316. package/lib/cjs/overflowList/constants.d.ts +23 -0
  317. package/lib/cjs/overflowList/constants.js +44 -0
  318. package/lib/cjs/overflowList/foundation.d.ts +14 -0
  319. package/lib/cjs/overflowList/foundation.js +143 -0
  320. package/lib/cjs/overflowList/overflowList.css +23 -0
  321. package/lib/cjs/overflowList/overflowList.scss +20 -0
  322. package/lib/cjs/overflowList/rtl.scss +8 -0
  323. package/lib/cjs/pagination/constants.d.ts +12 -0
  324. package/lib/cjs/pagination/constants.js +26 -0
  325. package/lib/cjs/pagination/foundation.d.ts +52 -0
  326. package/lib/cjs/pagination/foundation.js +385 -0
  327. package/lib/cjs/pagination/pagination.css +155 -0
  328. package/lib/cjs/pagination/pagination.scss +158 -0
  329. package/lib/cjs/pagination/rtl.scss +18 -0
  330. package/lib/cjs/pagination/variables.scss +51 -0
  331. package/lib/cjs/popconfirm/constants.d.ts +13 -0
  332. package/lib/cjs/popconfirm/constants.js +27 -0
  333. package/lib/cjs/popconfirm/popconfirm.css +117 -0
  334. package/lib/cjs/popconfirm/popconfirm.scss +105 -0
  335. package/lib/cjs/popconfirm/popconfirmFoundation.d.ts +16 -0
  336. package/lib/cjs/popconfirm/popconfirmFoundation.js +47 -0
  337. package/lib/cjs/popconfirm/rtl.scss +60 -0
  338. package/lib/cjs/popconfirm/variables.scss +36 -0
  339. package/lib/cjs/popover/constants.d.ts +25 -0
  340. package/lib/cjs/popover/constants.js +45 -0
  341. package/lib/cjs/popover/popover.css +160 -0
  342. package/lib/cjs/popover/popover.scss +54 -0
  343. package/lib/cjs/popover/rtl.scss +7 -0
  344. package/lib/cjs/popover/variables.scss +28 -0
  345. package/lib/cjs/progress/constants.d.ts +14 -0
  346. package/lib/cjs/progress/constants.js +28 -0
  347. package/lib/cjs/progress/progress.css +106 -0
  348. package/lib/cjs/progress/progress.scss +105 -0
  349. package/lib/cjs/progress/rtl.scss +29 -0
  350. package/lib/cjs/progress/variables.scss +25 -0
  351. package/lib/cjs/radio/constants.d.ts +29 -0
  352. package/lib/cjs/radio/constants.js +44 -0
  353. package/lib/cjs/radio/mixin.css +3 -0
  354. package/lib/cjs/radio/mixin.scss +0 -0
  355. package/lib/cjs/radio/radio.css +346 -0
  356. package/lib/cjs/radio/radio.scss +379 -0
  357. package/lib/cjs/radio/radioFoundation.d.ts +7 -0
  358. package/lib/cjs/radio/radioFoundation.js +22 -0
  359. package/lib/cjs/radio/radioGroupFoundation.d.ts +16 -0
  360. package/lib/cjs/radio/radioGroupFoundation.js +91 -0
  361. package/lib/cjs/radio/radioInnerFoundation.d.ts +22 -0
  362. package/lib/cjs/radio/radioInnerFoundation.js +74 -0
  363. package/lib/cjs/radio/rtl.scss +78 -0
  364. package/lib/cjs/radio/variables.scss +91 -0
  365. package/lib/cjs/rating/constants.d.ts +7 -0
  366. package/lib/cjs/rating/constants.js +20 -0
  367. package/lib/cjs/rating/foundation.d.ts +28 -0
  368. package/lib/cjs/rating/foundation.js +202 -0
  369. package/lib/cjs/rating/rating.css +81 -0
  370. package/lib/cjs/rating/rating.scss +87 -0
  371. package/lib/cjs/rating/rtl.scss +21 -0
  372. package/lib/cjs/rating/variables.scss +14 -0
  373. package/lib/cjs/scrollList/constants.d.ts +12 -0
  374. package/lib/cjs/scrollList/constants.js +26 -0
  375. package/lib/cjs/scrollList/foundation.d.ts +3 -0
  376. package/lib/cjs/scrollList/foundation.js +17 -0
  377. package/lib/cjs/scrollList/itemFoundation.d.ts +74 -0
  378. package/lib/cjs/scrollList/itemFoundation.js +320 -0
  379. package/lib/cjs/scrollList/rtl.scss +47 -0
  380. package/lib/cjs/scrollList/scrollList.css +181 -0
  381. package/lib/cjs/scrollList/scrollList.scss +182 -0
  382. package/lib/cjs/scrollList/scrollTo.d.ts +3 -0
  383. package/lib/cjs/scrollList/scrollTo.js +35 -0
  384. package/lib/cjs/scrollList/variables.scss +48 -0
  385. package/lib/cjs/select/constants.d.ts +16 -0
  386. package/lib/cjs/select/constants.js +33 -0
  387. package/lib/cjs/select/foundation.d.ts +107 -0
  388. package/lib/cjs/select/foundation.js +1220 -0
  389. package/lib/cjs/select/mixin.css +3 -0
  390. package/lib/cjs/select/mixin.scss +6 -0
  391. package/lib/cjs/select/option.css +76 -0
  392. package/lib/cjs/select/option.scss +95 -0
  393. package/lib/cjs/select/optionFoundation.d.ts +21 -0
  394. package/lib/cjs/select/optionFoundation.js +42 -0
  395. package/lib/cjs/select/rtl.scss +93 -0
  396. package/lib/cjs/select/select.css +465 -0
  397. package/lib/cjs/select/select.scss +422 -0
  398. package/lib/cjs/select/variables.scss +100 -0
  399. package/lib/cjs/sideSheet/constants.d.ts +15 -0
  400. package/lib/cjs/sideSheet/constants.js +28 -0
  401. package/lib/cjs/sideSheet/rtl.scss +17 -0
  402. package/lib/cjs/sideSheet/sideSheet.css +143 -0
  403. package/lib/cjs/sideSheet/sideSheet.scss +171 -0
  404. package/lib/cjs/sideSheet/sideSheetFoundation.d.ts +55 -0
  405. package/lib/cjs/sideSheet/sideSheetFoundation.js +126 -0
  406. package/lib/cjs/sideSheet/variables.scss +16 -0
  407. package/lib/cjs/skeleton/constants.d.ts +5 -0
  408. package/lib/cjs/skeleton/constants.js +18 -0
  409. package/lib/cjs/skeleton/rtl.scss +8 -0
  410. package/lib/cjs/skeleton/skeleton.css +87 -0
  411. package/lib/cjs/skeleton/skeleton.scss +115 -0
  412. package/lib/cjs/skeleton/variables.scss +20 -0
  413. package/lib/cjs/slider/constants.d.ts +15 -0
  414. package/lib/cjs/slider/constants.js +28 -0
  415. package/lib/cjs/slider/foundation.d.ts +203 -0
  416. package/lib/cjs/slider/foundation.js +734 -0
  417. package/lib/cjs/slider/slider.css +192 -0
  418. package/lib/cjs/slider/slider.scss +234 -0
  419. package/lib/cjs/slider/variables.scss +60 -0
  420. package/lib/cjs/space/constants.d.ts +10 -0
  421. package/lib/cjs/space/constants.js +23 -0
  422. package/lib/cjs/space/rtl.scss +8 -0
  423. package/lib/cjs/space/space.css +50 -0
  424. package/lib/cjs/space/space.scss +58 -0
  425. package/lib/cjs/space/variables.scss +3 -0
  426. package/lib/cjs/spin/constants.d.ts +8 -0
  427. package/lib/cjs/spin/constants.js +23 -0
  428. package/lib/cjs/spin/foundation.d.ts +12 -0
  429. package/lib/cjs/spin/foundation.js +62 -0
  430. package/lib/cjs/spin/mixin.css +3 -0
  431. package/lib/cjs/spin/mixin.scss +5 -0
  432. package/lib/cjs/spin/rtl.scss +12 -0
  433. package/lib/cjs/spin/spin.css +104 -0
  434. package/lib/cjs/spin/spin.scss +104 -0
  435. package/lib/cjs/spin/variables.scss +18 -0
  436. package/lib/cjs/steps/bacisSteps.scss +344 -0
  437. package/lib/cjs/steps/constants.d.ts +5 -0
  438. package/lib/cjs/steps/constants.js +17 -0
  439. package/lib/cjs/steps/fillSteps.scss +193 -0
  440. package/lib/cjs/steps/mixin.css +3 -0
  441. package/lib/cjs/steps/mixin.scss +0 -0
  442. package/lib/cjs/steps/navSteps.scss +63 -0
  443. package/lib/cjs/steps/rtl.scss +46 -0
  444. package/lib/cjs/steps/steps.css +444 -0
  445. package/lib/cjs/steps/steps.scss +9 -0
  446. package/lib/cjs/steps/variables.scss +104 -0
  447. package/lib/cjs/switch/constants.d.ts +18 -0
  448. package/lib/cjs/switch/constants.js +31 -0
  449. package/lib/cjs/switch/foundation.d.ts +14 -0
  450. package/lib/cjs/switch/foundation.js +58 -0
  451. package/lib/cjs/switch/rtl.scss +103 -0
  452. package/lib/cjs/switch/switch.css +288 -0
  453. package/lib/cjs/switch/switch.scss +282 -0
  454. package/lib/cjs/switch/variables.scss +70 -0
  455. package/lib/cjs/table/bodyFoundation.d.ts +38 -0
  456. package/lib/cjs/table/bodyFoundation.js +164 -0
  457. package/lib/cjs/table/cellFoundation.d.ts +7 -0
  458. package/lib/cjs/table/cellFoundation.js +22 -0
  459. package/lib/cjs/table/constants.d.ts +77 -0
  460. package/lib/cjs/table/constants.js +110 -0
  461. package/lib/cjs/table/foundation.d.ts +351 -0
  462. package/lib/cjs/table/foundation.js +1167 -0
  463. package/lib/cjs/table/mixin.css +3 -0
  464. package/lib/cjs/table/mixin.scss +10 -0
  465. package/lib/cjs/table/operationPanel.scss +46 -0
  466. package/lib/cjs/table/rtl.scss +158 -0
  467. package/lib/cjs/table/table.css +559 -0
  468. package/lib/cjs/table/table.scss +552 -0
  469. package/lib/cjs/table/tableRowFoundation.d.ts +14 -0
  470. package/lib/cjs/table/tableRowFoundation.js +44 -0
  471. package/lib/cjs/table/tableSelectionCellFoundation.d.ts +13 -0
  472. package/lib/cjs/table/tableSelectionCellFoundation.js +24 -0
  473. package/lib/cjs/table/utils.d.ts +95 -0
  474. package/lib/cjs/table/utils.js +617 -0
  475. package/lib/cjs/table/variables.scss +84 -0
  476. package/lib/cjs/tabs/constants.d.ts +28 -0
  477. package/lib/cjs/tabs/constants.js +42 -0
  478. package/lib/cjs/tabs/foundation.d.ts +23 -0
  479. package/lib/cjs/tabs/foundation.js +95 -0
  480. package/lib/cjs/tabs/rtl.scss +123 -0
  481. package/lib/cjs/tabs/tabs.css +378 -0
  482. package/lib/cjs/tabs/tabs.scss +411 -0
  483. package/lib/cjs/tabs/variables.scss +115 -0
  484. package/lib/cjs/tag/constants.d.ts +10 -0
  485. package/lib/cjs/tag/constants.js +24 -0
  486. package/lib/cjs/tag/mixin.css +3 -0
  487. package/lib/cjs/tag/mixin.scss +21 -0
  488. package/lib/cjs/tag/rtl.scss +61 -0
  489. package/lib/cjs/tag/tag.css +444 -0
  490. package/lib/cjs/tag/tag.scss +181 -0
  491. package/lib/cjs/tag/variables.scss +48 -0
  492. package/lib/cjs/tagInput/constants.d.ts +8 -0
  493. package/lib/cjs/tagInput/constants.js +21 -0
  494. package/lib/cjs/tagInput/foundation.d.ts +53 -0
  495. package/lib/cjs/tagInput/foundation.js +267 -0
  496. package/lib/cjs/tagInput/rtl.scss +23 -0
  497. package/lib/cjs/tagInput/tagInput.css +171 -0
  498. package/lib/cjs/tagInput/tagInput.scss +192 -0
  499. package/lib/cjs/tagInput/utils/getSplitedArray.d.ts +7 -0
  500. package/lib/cjs/tagInput/utils/getSplitedArray.js +47 -0
  501. package/lib/cjs/tagInput/variables.scss +39 -0
  502. package/lib/cjs/timePicker/ComboxFoundation.d.ts +31 -0
  503. package/lib/cjs/timePicker/ComboxFoundation.js +193 -0
  504. package/lib/cjs/timePicker/constants.d.ts +23 -0
  505. package/lib/cjs/timePicker/constants.js +43 -0
  506. package/lib/cjs/timePicker/foundation.d.ts +53 -0
  507. package/lib/cjs/timePicker/foundation.js +465 -0
  508. package/lib/cjs/timePicker/inputFoundation.d.ts +18 -0
  509. package/lib/cjs/timePicker/inputFoundation.js +81 -0
  510. package/lib/cjs/timePicker/rtl.scss +30 -0
  511. package/lib/cjs/timePicker/timePicker.css +72 -0
  512. package/lib/cjs/timePicker/timePicker.scss +86 -0
  513. package/lib/cjs/timePicker/utils/index.d.ts +41 -0
  514. package/lib/cjs/timePicker/utils/index.js +191 -0
  515. package/lib/cjs/timePicker/utils/localeDate.d.ts +2 -0
  516. package/lib/cjs/timePicker/utils/localeDate.js +47 -0
  517. package/lib/cjs/timePicker/variables.scss +22 -0
  518. package/lib/cjs/timeline/constants.d.ts +10 -0
  519. package/lib/cjs/timeline/constants.js +23 -0
  520. package/lib/cjs/timeline/rtl.scss +92 -0
  521. package/lib/cjs/timeline/timeline.css +197 -0
  522. package/lib/cjs/timeline/timeline.scss +175 -0
  523. package/lib/cjs/timeline/variables.scss +46 -0
  524. package/lib/cjs/toast/constants.d.ts +14 -0
  525. package/lib/cjs/toast/constants.js +30 -0
  526. package/lib/cjs/toast/rtl.scss +16 -0
  527. package/lib/cjs/toast/toast.css +76 -0
  528. package/lib/cjs/toast/toast.scss +92 -0
  529. package/lib/cjs/toast/toastFoundation.d.ts +48 -0
  530. package/lib/cjs/toast/toastFoundation.js +72 -0
  531. package/lib/cjs/toast/toastListFoundation.d.ts +17 -0
  532. package/lib/cjs/toast/toastListFoundation.js +62 -0
  533. package/lib/cjs/toast/variables.scss +34 -0
  534. package/lib/cjs/tooltip/arrow.scss +141 -0
  535. package/lib/cjs/tooltip/constants.d.ts +22 -0
  536. package/lib/cjs/tooltip/constants.js +37 -0
  537. package/lib/cjs/tooltip/foundation.d.ts +99 -0
  538. package/lib/cjs/tooltip/foundation.js +819 -0
  539. package/lib/cjs/tooltip/rtl.scss +12 -0
  540. package/lib/cjs/tooltip/tooltip.css +203 -0
  541. package/lib/cjs/tooltip/tooltip.scss +91 -0
  542. package/lib/cjs/tooltip/variables.scss +31 -0
  543. package/lib/cjs/transfer/constants.d.ts +10 -0
  544. package/lib/cjs/transfer/constants.js +24 -0
  545. package/lib/cjs/transfer/foundation.d.ts +51 -0
  546. package/lib/cjs/transfer/foundation.js +314 -0
  547. package/lib/cjs/transfer/rtl.scss +31 -0
  548. package/lib/cjs/transfer/transfer.css +202 -0
  549. package/lib/cjs/transfer/transfer.scss +200 -0
  550. package/lib/cjs/transfer/transferUtlls.d.ts +4 -0
  551. package/lib/cjs/transfer/transferUtlls.js +128 -0
  552. package/lib/cjs/transfer/variables.scss +55 -0
  553. package/lib/cjs/tree/constants.d.ts +9 -0
  554. package/lib/cjs/tree/constants.js +23 -0
  555. package/lib/cjs/tree/foundation.d.ts +281 -0
  556. package/lib/cjs/tree/foundation.js +711 -0
  557. package/lib/cjs/tree/rtl.scss +59 -0
  558. package/lib/cjs/tree/tree.css +478 -0
  559. package/lib/cjs/tree/tree.scss +372 -0
  560. package/lib/cjs/tree/treeUtil.d.ts +79 -0
  561. package/lib/cjs/tree/treeUtil.js +804 -0
  562. package/lib/cjs/tree/variables.scss +54 -0
  563. package/lib/cjs/treeSelect/constants.d.ts +13 -0
  564. package/lib/cjs/treeSelect/constants.js +27 -0
  565. package/lib/cjs/treeSelect/foundation.d.ts +162 -0
  566. package/lib/cjs/treeSelect/foundation.js +792 -0
  567. package/lib/cjs/treeSelect/rtl.scss +62 -0
  568. package/lib/cjs/treeSelect/treeSelect.css +308 -0
  569. package/lib/cjs/treeSelect/treeSelect.scss +332 -0
  570. package/lib/cjs/treeSelect/variables.scss +90 -0
  571. package/lib/cjs/typography/constants.d.ts +10 -0
  572. package/lib/cjs/typography/constants.js +23 -0
  573. package/lib/cjs/typography/rtl.scss +34 -0
  574. package/lib/cjs/typography/typography.css +220 -0
  575. package/lib/cjs/typography/typography.scss +218 -0
  576. package/lib/cjs/typography/variables.scss +45 -0
  577. package/lib/cjs/upload/constants.d.ts +28 -0
  578. package/lib/cjs/upload/constants.js +49 -0
  579. package/lib/cjs/upload/foundation.d.ts +166 -0
  580. package/lib/cjs/upload/foundation.js +1067 -0
  581. package/lib/cjs/upload/rtl.scss +87 -0
  582. package/lib/cjs/upload/upload.css +493 -0
  583. package/lib/cjs/upload/upload.scss +522 -0
  584. package/lib/cjs/upload/utils.d.ts +6 -0
  585. package/lib/cjs/upload/utils.js +165 -0
  586. package/lib/cjs/upload/variables.scss +81 -0
  587. package/lib/cjs/utils/Event.d.ts +7 -0
  588. package/lib/cjs/utils/Event.js +91 -0
  589. package/lib/cjs/utils/Logger.d.ts +15 -0
  590. package/lib/cjs/utils/Logger.js +77 -0
  591. package/lib/cjs/utils/Store.d.ts +9 -0
  592. package/lib/cjs/utils/Store.js +60 -0
  593. package/lib/cjs/utils/array.d.ts +22 -0
  594. package/lib/cjs/utils/array.js +64 -0
  595. package/lib/cjs/utils/classnames.d.ts +4 -0
  596. package/lib/cjs/utils/classnames.js +54 -0
  597. package/lib/cjs/utils/date-fns-extra.d.ts +55 -0
  598. package/lib/cjs/utils/date-fns-extra.js +148 -0
  599. package/lib/cjs/utils/dom.d.ts +27 -0
  600. package/lib/cjs/utils/dom.js +92 -0
  601. package/lib/cjs/utils/function.d.ts +4 -0
  602. package/lib/cjs/utils/function.js +15 -0
  603. package/lib/cjs/utils/getDataAttr.d.ts +1 -0
  604. package/lib/cjs/utils/getDataAttr.js +27 -0
  605. package/lib/cjs/utils/getHighlight.d.ts +45 -0
  606. package/lib/cjs/utils/getHighlight.js +211 -0
  607. package/lib/cjs/utils/getMotionObjFromProps.d.ts +26 -0
  608. package/lib/cjs/utils/getMotionObjFromProps.js +77 -0
  609. package/lib/cjs/utils/index.d.ts +2 -0
  610. package/lib/cjs/utils/index.js +41 -0
  611. package/lib/cjs/utils/isBothNaN.d.ts +8 -0
  612. package/lib/cjs/utils/isBothNaN.js +25 -0
  613. package/lib/cjs/utils/isElement.d.ts +1 -0
  614. package/lib/cjs/utils/isElement.js +21 -0
  615. package/lib/cjs/utils/isNullOrUndefined.d.ts +6 -0
  616. package/lib/cjs/utils/isNullOrUndefined.js +18 -0
  617. package/lib/cjs/utils/isNumber.d.ts +1 -0
  618. package/lib/cjs/utils/isNumber.js +13 -0
  619. package/lib/cjs/utils/isObject.d.ts +1 -0
  620. package/lib/cjs/utils/isObject.js +13 -0
  621. package/lib/cjs/utils/isPromise.d.ts +1 -0
  622. package/lib/cjs/utils/isPromise.js +17 -0
  623. package/lib/cjs/utils/isString.d.ts +1 -0
  624. package/lib/cjs/utils/isString.js +13 -0
  625. package/lib/cjs/utils/keyCode.d.ts +427 -0
  626. package/lib/cjs/utils/keyCode.js +542 -0
  627. package/lib/cjs/utils/log.d.ts +2 -0
  628. package/lib/cjs/utils/log.js +26 -0
  629. package/lib/cjs/utils/number.d.ts +10 -0
  630. package/lib/cjs/utils/number.js +29 -0
  631. package/lib/cjs/utils/object.d.ts +17 -0
  632. package/lib/cjs/utils/object.js +174 -0
  633. package/lib/cjs/utils/set.d.ts +7 -0
  634. package/lib/cjs/utils/set.js +44 -0
  635. package/lib/cjs/utils/shallowEqualObjects.d.ts +5 -0
  636. package/lib/cjs/utils/shallowEqualObjects.js +41 -0
  637. package/lib/cjs/utils/touchPolyfill.d.ts +2 -0
  638. package/lib/cjs/utils/touchPolyfill.js +50 -0
  639. package/lib/cjs/utils/type.d.ts +31 -0
  640. package/lib/cjs/utils/type.js +7 -0
  641. package/lib/cjs/utils/uuid.d.ts +3 -0
  642. package/lib/cjs/utils/uuid.js +29 -0
  643. package/lib/cjs/utils/warning.d.ts +1 -0
  644. package/lib/cjs/utils/warning.js +15 -0
  645. package/lib/es/anchor/foundation.js +8 -5
  646. package/lib/es/autoComplete/autoComplete.css +5 -5
  647. package/lib/es/autoComplete/autoComplete.scss +3 -2
  648. package/lib/es/autoComplete/foundation.js +8 -5
  649. package/lib/es/base/foundation.js +12 -12
  650. package/lib/es/cascader/foundation.js +25 -17
  651. package/lib/es/cascader/util.js +5 -3
  652. package/lib/es/datePicker/_utils/getFullDateOffset.js +2 -2
  653. package/lib/es/datePicker/foundation.js +15 -10
  654. package/lib/es/datePicker/monthsGridFoundation.js +8 -6
  655. package/lib/es/form/foundation.js +9 -6
  656. package/lib/es/form/utils.js +2 -2
  657. package/lib/es/input/foundation.js +15 -10
  658. package/lib/es/input/input.css +3 -2
  659. package/lib/es/input/input.scss +2 -0
  660. package/lib/es/input/textareaFoundation.js +17 -14
  661. package/lib/es/input/util/getSizingData.js +3 -3
  662. package/lib/es/input/variables.scss +1 -1
  663. package/lib/es/inputNumber/foundation.js +13 -11
  664. package/lib/es/navigation/foundation.js +2 -2
  665. package/lib/es/notification/notificationFoundation.js +2 -2
  666. package/lib/es/overflowList/foundation.js +6 -3
  667. package/lib/es/scrollList/itemFoundation.js +17 -7
  668. package/lib/es/select/foundation.js +9 -6
  669. package/lib/es/sideSheet/sideSheetFoundation.js +8 -7
  670. package/lib/es/table/bodyFoundation.js +14 -8
  671. package/lib/es/table/foundation.js +87 -67
  672. package/lib/es/table/utils.js +65 -42
  673. package/lib/es/tabs/foundation.js +2 -2
  674. package/lib/es/tagInput/foundation.js +10 -7
  675. package/lib/es/tagInput/utils/getSplitedArray.js +6 -4
  676. package/lib/es/timePicker/foundation.js +6 -4
  677. package/lib/es/timePicker/utils/index.js +5 -5
  678. package/lib/es/toast/toastFoundation.js +2 -2
  679. package/lib/es/tooltip/foundation.js +15 -16
  680. package/lib/es/transfer/foundation.js +2 -2
  681. package/lib/es/transfer/transferUtlls.js +4 -4
  682. package/lib/es/tree/foundation.js +14 -14
  683. package/lib/es/tree/treeUtil.js +21 -18
  684. package/lib/es/treeSelect/foundation.js +16 -9
  685. package/lib/es/utils/classnames.js +9 -5
  686. package/lib/es/utils/getHighlight.js +2 -3
  687. package/lib/es/utils/getMotionObjFromProps.js +6 -5
  688. package/lib/es/utils/log.js +2 -2
  689. package/lib/es/utils/object.js +31 -21
  690. package/lib/es/utils/set.js +2 -2
  691. package/navigation/foundation.ts +1 -1
  692. package/notification/notificationFoundation.ts +1 -1
  693. package/overflowList/foundation.ts +1 -1
  694. package/package.json +6 -4
  695. package/scrollList/itemFoundation.ts +1 -1
  696. package/select/foundation.ts +1 -1
  697. package/sideSheet/sideSheetFoundation.ts +1 -1
  698. package/table/bodyFoundation.ts +1 -1
  699. package/table/foundation.ts +1 -1
  700. package/table/utils.ts +1 -1
  701. package/tabs/foundation.ts +1 -1
  702. package/tagInput/foundation.ts +1 -1
  703. package/tagInput/utils/getSplitedArray.ts +1 -1
  704. package/timePicker/foundation.ts +1 -1
  705. package/timePicker/utils/index.ts +1 -1
  706. package/toast/toastFoundation.ts +1 -1
  707. package/tooltip/foundation.ts +1 -1
  708. package/transfer/foundation.ts +1 -1
  709. package/transfer/transferUtlls.ts +1 -1
  710. package/tree/foundation.ts +1 -1
  711. package/tree/treeUtil.ts +1 -1
  712. package/treeSelect/foundation.ts +1 -1
  713. package/utils/classnames.ts +1 -1
  714. package/utils/getHighlight.ts +1 -1
  715. package/utils/getMotionObjFromProps.ts +1 -1
  716. package/utils/log.ts +1 -1
  717. package/utils/object.ts +1 -1
  718. package/utils/set.ts +1 -1
  719. package/babel.config.js +0 -33
  720. package/icons/icons.scss +0 -39
  721. package/icons/variables.scss +0 -7
  722. package/lib/es/icons/icons.css +0 -40
  723. package/lib/es/icons/icons.scss +0 -39
  724. package/lib/es/icons/variables.scss +0 -7
@@ -0,0 +1,954 @@
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 _set = _interopRequireDefault(require("@babel/runtime-corejs3/core-js-stable/set"));
18
+
19
+ var _includes2 = _interopRequireDefault(require("@babel/runtime-corejs3/core-js-stable/instance/includes"));
20
+
21
+ var _map = _interopRequireDefault(require("@babel/runtime-corejs3/core-js-stable/instance/map"));
22
+
23
+ var _forEach = _interopRequireDefault(require("@babel/runtime-corejs3/core-js-stable/instance/for-each"));
24
+
25
+ var _from = _interopRequireDefault(require("@babel/runtime-corejs3/core-js-stable/array/from"));
26
+
27
+ var _concat = _interopRequireDefault(require("@babel/runtime-corejs3/core-js-stable/instance/concat"));
28
+
29
+ var _trim = _interopRequireDefault(require("@babel/runtime-corejs3/core-js-stable/instance/trim"));
30
+
31
+ var _isEqual2 = _interopRequireDefault(require("lodash/isEqual"));
32
+
33
+ var _isSet2 = _interopRequireDefault(require("lodash/isSet"));
34
+
35
+ var _includes3 = _interopRequireDefault(require("lodash/includes"));
36
+
37
+ var _foundation = _interopRequireDefault(require("../base/foundation"));
38
+
39
+ var _constants = require("./constants");
40
+
41
+ var _dateFns = require("date-fns");
42
+
43
+ var _index = require("./_utils/index");
44
+
45
+ var _getMonthTable = require("./_utils/getMonthTable");
46
+
47
+ var _parser = require("./_utils/parser");
48
+
49
+ var _dateFnsExtra = require("../utils/date-fns-extra");
50
+
51
+ var _getDefaultFormatToken = require("./_utils/getDefaultFormatToken");
52
+
53
+ var _isNullOrUndefined = _interopRequireDefault(require("../utils/isNullOrUndefined"));
54
+
55
+ /* eslint-disable max-len */
56
+ const dateDiffFns = {
57
+ month: _dateFns.differenceInCalendarMonths,
58
+ year: _dateFns.differenceInCalendarYears
59
+ };
60
+ const dateCalcFns = {
61
+ prevMonth: _dateFns.subMonths,
62
+ nextMonth: _dateFns.addMonths,
63
+ prevYear: _dateFns.subYears,
64
+ nextYear: _dateFns.addYears
65
+ };
66
+
67
+ class MonthsGridFoundation extends _foundation.default {
68
+ constructor(adapter) {
69
+ super((0, _assign.default)({}, adapter)); // Date change data when double panels
70
+
71
+ this.newBiMonthPanelDate = [this.getState('monthLeft').pickerDate, this.getState('monthRight').pickerDate];
72
+ }
73
+
74
+ init() {
75
+ const defaultValue = this.getProp('defaultValue');
76
+ this.initDefaultPickerValue();
77
+ this.updateSelectedFromProps(defaultValue);
78
+ }
79
+
80
+ initDefaultPickerValue() {
81
+ const defaultPickerValue = (0, _parser.compatiableParse)(this.getProp('defaultPickerValue'));
82
+
83
+ if (defaultPickerValue && (0, _index.isValidDate)(defaultPickerValue)) {
84
+ this._updatePanelDetail(_constants.strings.PANEL_TYPE_LEFT, {
85
+ pickerDate: defaultPickerValue
86
+ });
87
+
88
+ this._updatePanelDetail(_constants.strings.PANEL_TYPE_RIGHT, {
89
+ pickerDate: (0, _dateFns.addMonths)(defaultPickerValue, 1)
90
+ });
91
+ }
92
+ }
93
+
94
+ updateSelectedFromProps(values) {
95
+ let refreshPicker = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : true;
96
+ const type = this.getProp('type');
97
+ const {
98
+ selected,
99
+ rangeStart,
100
+ rangeEnd
101
+ } = this.getStates();
102
+
103
+ if (values && values.length) {
104
+ switch (type) {
105
+ case 'date':
106
+ this._initDatePickerFromValue(values, refreshPicker);
107
+
108
+ break;
109
+
110
+ case 'dateRange':
111
+ this._initDateRangePickerFromValue(values);
112
+
113
+ break;
114
+
115
+ case 'dateTime':
116
+ this._initDateTimePickerFromValue(values);
117
+
118
+ break;
119
+
120
+ case 'dateTimeRange':
121
+ this._initDateTimeRangePickerFormValue(values);
122
+
123
+ break;
124
+
125
+ default:
126
+ break;
127
+ }
128
+ } else if ((0, _isArray.default)(values) && !values.length || !values) {
129
+ // Empty panel when value is empty Select date
130
+ if ((0, _isSet2.default)(selected) && selected.size) {
131
+ this._adapter.updateDaySelected(new _set.default());
132
+ }
133
+
134
+ if (rangeStart) {
135
+ this._adapter.setRangeStart('');
136
+ }
137
+
138
+ if (rangeEnd) {
139
+ this._adapter.setRangeEnd('');
140
+ }
141
+ }
142
+ }
143
+
144
+ calcDisabledTime(panelType) {
145
+ var _context;
146
+
147
+ const {
148
+ disabledTime,
149
+ type
150
+ } = this.getProps();
151
+
152
+ if (typeof disabledTime === 'function' && panelType && (0, _includes2.default)(_context = ['dateTime', 'dateTimeRange']).call(_context, type)) {
153
+ const {
154
+ rangeStart,
155
+ rangeEnd,
156
+ monthLeft
157
+ } = this.getStates();
158
+ const selected = [];
159
+
160
+ if (type === 'dateTimeRange') {
161
+ if (rangeStart) {
162
+ selected.push(rangeStart);
163
+ }
164
+
165
+ if (rangeStart && rangeEnd) {
166
+ selected.push(rangeEnd);
167
+ }
168
+ } else if (monthLeft && monthLeft.showDate) {
169
+ selected.push(monthLeft.showDate);
170
+ }
171
+
172
+ const selectedDates = (0, _map.default)(selected).call(selected, str => str instanceof Date ? str : (0, _dateFns.parseISO)(str));
173
+ const cbDates = type === 'dateTimeRange' ? selectedDates : selectedDates[0];
174
+ return disabledTime(cbDates, panelType);
175
+ }
176
+ }
177
+
178
+ _initDatePickerFromValue(values) {
179
+ let refreshPicker = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : true;
180
+ const monthLeft = this.getState('monthLeft');
181
+ const newMonthLeft = (0, _assign.default)({}, monthLeft);
182
+
183
+ this._adapter.updateMonthOnLeft(newMonthLeft);
184
+
185
+ const newSelected = new _set.default();
186
+
187
+ if (!this._isMultiple()) {
188
+ newSelected.add((0, _dateFns.format)(values[0], _constants.strings.FORMAT_FULL_DATE));
189
+ } else {
190
+ (0, _forEach.default)(values).call(values, date => {
191
+ newSelected.add((0, _dateFns.format)(date, _constants.strings.FORMAT_FULL_DATE));
192
+ });
193
+ }
194
+
195
+ if (refreshPicker) {
196
+ this.handleShowDateAndTime(_constants.strings.PANEL_TYPE_LEFT, values[0] || newMonthLeft.pickerDate);
197
+ } else {
198
+ this.handleShowDateAndTime(_constants.strings.PANEL_TYPE_LEFT, newMonthLeft.pickerDate);
199
+ }
200
+
201
+ this._adapter.updateDaySelected(newSelected);
202
+ }
203
+
204
+ _initDateRangePickerFromValue(values) {
205
+ let withTime = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : false;
206
+ // init month panel
207
+ const monthLeft = this.getState('monthLeft');
208
+ const monthRight = this.getState('monthRight');
209
+
210
+ const adjustResult = this._autoAdjustMonth((0, _assign.default)((0, _assign.default)({}, monthLeft), {
211
+ pickerDate: values[0] || monthLeft.pickerDate
212
+ }), (0, _assign.default)((0, _assign.default)({}, monthRight), {
213
+ pickerDate: values[1] || monthRight.pickerDate
214
+ }));
215
+
216
+ this.handleShowDateAndTime(_constants.strings.PANEL_TYPE_LEFT, adjustResult.monthLeft.pickerDate);
217
+ this.handleShowDateAndTime(_constants.strings.PANEL_TYPE_RIGHT, adjustResult.monthRight.pickerDate); // init range
218
+
219
+ const formatToken = withTime ? _constants.strings.FORMAT_DATE_TIME : _constants.strings.FORMAT_FULL_DATE;
220
+ let rangeStart = values[0] && (0, _dateFns.format)(values[0], formatToken);
221
+ let rangeEnd = values[1] && (0, _dateFns.format)(values[1], formatToken);
222
+
223
+ if (this._isNeedSwap(rangeStart, rangeEnd)) {
224
+ [rangeStart, rangeEnd] = [rangeEnd, rangeStart];
225
+ }
226
+
227
+ this._adapter.setRangeStart(rangeStart);
228
+
229
+ this._adapter.setRangeEnd(rangeEnd);
230
+
231
+ this._adapter.setHoverDay(rangeEnd);
232
+ }
233
+
234
+ _initDateTimePickerFromValue(values) {
235
+ this._initDatePickerFromValue(values);
236
+ }
237
+
238
+ _initDateTimeRangePickerFormValue(values) {
239
+ this._initDateRangePickerFromValue(values, true);
240
+ } // eslint-disable-next-line @typescript-eslint/no-empty-function
241
+
242
+
243
+ destroy() {}
244
+
245
+ toMonth(panelType, target) {
246
+ const diff = this._getDiff('month', target, panelType);
247
+
248
+ this.handleYearOrMonthChange(diff < 0 ? 'prevMonth' : 'nextMonth', panelType, Math.abs(diff), false);
249
+ }
250
+
251
+ toYear(panelType, target) {
252
+ const diff = this._getDiff('year', target, panelType);
253
+
254
+ this.handleYearOrMonthChange(diff < 0 ? 'prevYear' : 'nextYear', panelType, Math.abs(diff), false);
255
+ }
256
+
257
+ toYearMonth(panelType, target) {
258
+ this.toYear(panelType, target);
259
+ this.toMonth(panelType, target);
260
+ }
261
+
262
+ isRangeType(type) {
263
+ const {
264
+ type: typeFromProp
265
+ } = this.getProps();
266
+ const realType = type ? type : typeFromProp;
267
+ return typeof realType === 'string' && /range/i.test(realType);
268
+ }
269
+
270
+ handleSwitchMonth(switchType, panelType) {
271
+ const {
272
+ type,
273
+ syncSwitchMonth
274
+ } = this.getProps();
275
+
276
+ if (this.isRangeType(type) && syncSwitchMonth) {
277
+ this.handleYearOrMonthChange(switchType, 'left', 1, true);
278
+ this.handleYearOrMonthChange(switchType, 'right', 1, true);
279
+ } else {
280
+ this.handleYearOrMonthChange(switchType, panelType);
281
+ }
282
+ }
283
+
284
+ prevMonth(panelType) {
285
+ this.handleSwitchMonth('prevMonth', panelType);
286
+ }
287
+
288
+ nextMonth(panelType) {
289
+ this.handleSwitchMonth('nextMonth', panelType);
290
+ }
291
+
292
+ prevYear(panelType) {
293
+ this.handleYearOrMonthChange('prevYear', panelType);
294
+ }
295
+
296
+ nextYear(panelType) {
297
+ this.handleYearOrMonthChange('nextYear', panelType);
298
+ }
299
+ /**
300
+ * Calculate the year and month difference
301
+ */
302
+
303
+
304
+ _getDiff(type, target, panelType) {
305
+ const panelDetail = this._getPanelDetail(panelType);
306
+
307
+ const diff = dateDiffFns[type] && dateDiffFns[type](target, panelDetail.pickerDate);
308
+ return diff;
309
+ }
310
+
311
+ _getPanelDetail(panelType) {
312
+ return panelType === _constants.strings.PANEL_TYPE_RIGHT ? this.getState('monthRight') : this.getState('monthLeft');
313
+ }
314
+ /**
315
+ * Format locale date
316
+ * locale get from LocaleProvider
317
+ * @param {Date} date
318
+ * @param {String} token
319
+ * @returns
320
+ */
321
+
322
+
323
+ localeFormat(date, token) {
324
+ const dateFnsLocale = this._adapter.getProp('dateFnsLocale');
325
+
326
+ return (0, _dateFns.format)(date, token, {
327
+ locale: dateFnsLocale
328
+ });
329
+ }
330
+
331
+ isValidTimeZone(timeZone) {
332
+ var _context2;
333
+
334
+ const propTimeZone = this.getProp('timeZone');
335
+
336
+ const _timeZone = (0, _isNullOrUndefined.default)(timeZone) ? propTimeZone : timeZone;
337
+
338
+ return (0, _includes2.default)(_context2 = ['string', 'number']).call(_context2, typeof _timeZone) && _timeZone !== '';
339
+ }
340
+ /**
341
+ * 根据 type 处理 onChange 返回的参数
342
+ *
343
+ * - 返回的日期需要把用户时间转换为设置的时区时间
344
+ * - 用户时间:用户计算机系统时间
345
+ * - 时区时间:通过 ConfigProvider 设置的 timeZone
346
+ * - 例子:用户设置时区为+9,计算机所在时区为+8区,然后用户选择了22:00
347
+ * - DatePicker 内部保存日期 state 为 +8 的 22:00 => a = new Date("2021-05-25 22:00:00")
348
+ * - 传出去时,需要把 +8 的 22:00 => +9 的 22:00 => b = zonedTimeToUtc(a, "+09:00");
349
+ *
350
+ * The parameters returned by onChange are processed according to type
351
+ *
352
+ * -The returned date needs to convert the user time to the set time zone time
353
+ * -User time: user computer system time
354
+ * -Time zone: timeZone set by ConfigProvider
355
+ * -Example: The user sets the time zone to + 9, and the time zone where the computer is located is + 8, and then the user selects 22:00
356
+ * -DatePicker internal save date state is + 8 22:00 = > a = new Date ("2021-05-25 22:00:00")
357
+ * -When passing out, you need to put + 8's 22:00 = > + 9's 22:00 = > b = zonedTimeToUtc (a, "+ 09:00");
358
+ *
359
+ * e.g.
360
+ * let a = new Date ("2021-05-25 22:00:00");
361
+ * = > Tue May 25 2021 22:00:00 GMT + 0800 (China Standard Time)
362
+ * let b = zonedTimeToUtc (a, "+ 09:00");
363
+ * = > Tue May 25 2021 21:00:00 GMT + 0800 (China Standard Time)
364
+ *
365
+ * @param {Date|Date[]} value
366
+ */
367
+
368
+
369
+ disposeCallbackArgs(value) {
370
+ let _value = (0, _isArray.default)(value) ? value : value && [value] || [];
371
+
372
+ if (this.isValidTimeZone()) {
373
+ const timeZone = this.getProp('timeZone');
374
+ _value = (0, _map.default)(_value).call(_value, date => (0, _dateFnsExtra.zonedTimeToUtc)(date, timeZone));
375
+ }
376
+
377
+ const type = this.getProp('type');
378
+ const formatToken = this.getProp('format') || (0, _getDefaultFormatToken.getDefaultFormatTokenByType)(type);
379
+ let notifyValue, notifyDate;
380
+
381
+ switch (type) {
382
+ case 'date':
383
+ case 'dateTime':
384
+ case 'month':
385
+ if (!this._isMultiple()) {
386
+ notifyValue = _value[0] && this.localeFormat(_value[0], formatToken);
387
+ [notifyDate] = _value;
388
+ } else {
389
+ notifyValue = (0, _map.default)(_value).call(_value, v => v && this.localeFormat(v, formatToken));
390
+ notifyDate = [..._value];
391
+ }
392
+
393
+ break;
394
+
395
+ case 'dateRange':
396
+ case 'dateTimeRange':
397
+ notifyValue = (0, _map.default)(_value).call(_value, v => v && this.localeFormat(v, formatToken));
398
+ notifyDate = [..._value];
399
+ break;
400
+
401
+ default:
402
+ break;
403
+ }
404
+
405
+ return {
406
+ notifyValue,
407
+ notifyDate
408
+ };
409
+ }
410
+
411
+ handleYearOrMonthChange(type) {
412
+ let panelType = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : _constants.strings.PANEL_TYPE_LEFT;
413
+ let step = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : 1;
414
+ let notSeparateInRange = arguments.length > 3 && arguments[3] !== undefined ? arguments[3] : false;
415
+ const {
416
+ autoSwitchDate,
417
+ type: datePanelType
418
+ } = this.getProps();
419
+ const {
420
+ monthLeft,
421
+ monthRight
422
+ } = this.getStates();
423
+ const isRangeType = this.isRangeType(datePanelType);
424
+ const isLeftPanelInRange = isRangeType && panelType === _constants.strings.PANEL_TYPE_LEFT;
425
+
426
+ const panelDetail = this._getPanelDetail(panelType);
427
+
428
+ const {
429
+ pickerDate
430
+ } = panelDetail;
431
+ const fn = dateCalcFns[type];
432
+ const targetMonth = fn(pickerDate, step); // Determine if the date has changed
433
+
434
+ const panelDateHasUpdate = panelType === _constants.strings.PANEL_TYPE_LEFT && !(0, _isEqual2.default)(targetMonth, monthLeft.pickerDate) || panelType === _constants.strings.PANEL_TYPE_RIGHT && !(0, _isEqual2.default)(targetMonth, monthRight.pickerDate);
435
+
436
+ this._updatePanelDetail(panelType, {
437
+ pickerDate: targetMonth
438
+ });
439
+
440
+ if (panelDateHasUpdate) {
441
+ // When the date changes
442
+ if (!isRangeType) {
443
+ // Single Panel Type
444
+ const {
445
+ notifyValue,
446
+ notifyDate
447
+ } = this.disposeCallbackArgs(targetMonth);
448
+
449
+ this._adapter.notifyPanelChange(notifyDate, notifyValue);
450
+ } else {
451
+ // Double Panel Type
452
+ if (isLeftPanelInRange) {
453
+ // Left panel
454
+ this.newBiMonthPanelDate[0] = targetMonth;
455
+ } else {
456
+ // Right panel
457
+ this.newBiMonthPanelDate[1] = targetMonth;
458
+ }
459
+
460
+ if (!(isLeftPanelInRange && notSeparateInRange)) {
461
+ // Not synchronously switching the left panel in the scene
462
+ const {
463
+ notifyValue,
464
+ notifyDate
465
+ } = this.disposeCallbackArgs(this.newBiMonthPanelDate);
466
+
467
+ this._adapter.notifyPanelChange(notifyDate, notifyValue);
468
+ }
469
+ }
470
+ }
471
+
472
+ if (autoSwitchDate) {
473
+ this.updateDateAfterChangeYM(type, targetMonth);
474
+ }
475
+ }
476
+ /**
477
+ * You have chosen to switch the year and month in the future to directly update the Date without closing the date panel
478
+ * @param {*} type
479
+ * @param {*} targetDate
480
+ */
481
+
482
+
483
+ updateDateAfterChangeYM(type, targetDate) {
484
+ var _context3;
485
+
486
+ const {
487
+ multiple,
488
+ disabledDate
489
+ } = this.getProps();
490
+ const {
491
+ selected: selectedSet,
492
+ rangeStart,
493
+ rangeEnd
494
+ } = this.getStates();
495
+ const includeRange = (0, _includes2.default)(_context3 = ['dateRange', 'dateTimeRange']).call(_context3, type);
496
+ const options = {
497
+ closePanel: false
498
+ };
499
+
500
+ if (!multiple && !includeRange && selectedSet.size) {
501
+ const selectedStr = (0, _from.default)(selectedSet)[0];
502
+ const selectedDate = new Date(selectedStr);
503
+ const year = targetDate.getFullYear();
504
+ const month = targetDate.getMonth();
505
+ const fullDate = (0, _dateFns.set)(selectedDate, {
506
+ year,
507
+ month
508
+ });
509
+
510
+ if (disabledDate(fullDate, {
511
+ rangeStart,
512
+ rangeEnd
513
+ })) {
514
+ return;
515
+ }
516
+
517
+ this._adapter.notifySelectedChange([fullDate], options);
518
+ }
519
+ }
520
+
521
+ _isMultiple() {
522
+ return Boolean(this.getProp('multiple')) && this.getProp('type') === 'date';
523
+ }
524
+
525
+ _isRange() {// return this._adapter.getProp('type') === dateRangeTypeKey;
526
+ }
527
+
528
+ handleDayClick(day, panelType) {
529
+ const type = this.getProp('type');
530
+
531
+ switch (true) {
532
+ case type === 'date' || type === 'dateTime':
533
+ this.handleDateSelected(day, panelType);
534
+ break;
535
+
536
+ case type === 'dateRange' || type === 'dateTimeRange':
537
+ this.handleRangeSelected(day);
538
+ break;
539
+
540
+ default:
541
+ break;
542
+ }
543
+ }
544
+
545
+ handleDateSelected(day, panelType) {
546
+ var _context4;
547
+
548
+ const {
549
+ max,
550
+ type,
551
+ isControlledComponent,
552
+ dateFnsLocale
553
+ } = this.getProps();
554
+
555
+ const multiple = this._isMultiple();
556
+
557
+ const {
558
+ selected
559
+ } = this.getStates();
560
+
561
+ const monthDetail = this._getPanelDetail(panelType);
562
+
563
+ const newSelected = new _set.default(multiple ? [...selected] : []);
564
+ const {
565
+ fullDate
566
+ } = day;
567
+ const time = monthDetail.pickerDate;
568
+ const dateStr = type === 'dateTime' ? this._mergeDateAndTime(fullDate, time) : fullDate;
569
+
570
+ if (!multiple) {
571
+ newSelected.add(dateStr);
572
+ } else {
573
+ if (newSelected.has(dateStr)) {
574
+ newSelected.delete(dateStr);
575
+ } else if (max && newSelected.size === max) {
576
+ this._adapter.notifyMaxLimit();
577
+ } else {
578
+ newSelected.add(dateStr);
579
+ }
580
+ }
581
+
582
+ 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
583
+
584
+ const newSelectedDates = (0, _map.default)(_context4 = [...newSelected]).call(_context4, _dateStr => (0, _parser.compatiableParse)(_dateStr, dateFormat, undefined, dateFnsLocale));
585
+ this.handleShowDateAndTime(panelType, time);
586
+
587
+ if (!isControlledComponent) {
588
+ // Uncontrolled components, update internal values when operating, and notify external
589
+ // MonthGrid internally uses string to represent fullDate for easy rendering
590
+ this._adapter.updateDaySelected(newSelected);
591
+ }
592
+
593
+ this._adapter.notifySelectedChange(newSelectedDates);
594
+ }
595
+
596
+ handleShowDateAndTime(panelType, pickerDate, showDate) {
597
+ const _showDate = showDate || pickerDate;
598
+
599
+ this._updatePanelDetail(panelType, {
600
+ showDate: _showDate,
601
+ pickerDate
602
+ });
603
+ }
604
+ /**
605
+ * link date and time
606
+ *
607
+ * @param {Date|string} date
608
+ * @param {Date|string} time
609
+ * @returns {Date}
610
+ */
611
+
612
+
613
+ _mergeDateAndTime(date, time) {
614
+ var _context5;
615
+
616
+ const dateFnsLocale = this._adapter.getProp('dateFnsLocale');
617
+
618
+ const dateStr = (0, _dateFns.format)((0, _index.isValidDate)(date) ? date : (0, _parser.compatiableParse)(date, _constants.strings.FORMAT_FULL_DATE, undefined, dateFnsLocale), _constants.strings.FORMAT_FULL_DATE);
619
+ const timeStr = (0, _dateFns.format)((0, _index.isValidDate)(time) ? time : (0, _parser.compatiableParse)(time, _constants.strings.FORMAT_TIME_PICKER, undefined, dateFnsLocale), _constants.strings.FORMAT_TIME_PICKER);
620
+ const timeFormat = this.getValidTimeFormat();
621
+ return (0, _parser.compatiableParse)((0, _concat.default)(_context5 = "".concat(dateStr, " ")).call(_context5, timeStr), timeFormat, undefined, dateFnsLocale);
622
+ }
623
+
624
+ handleRangeSelected(day) {
625
+ let {
626
+ rangeStart,
627
+ rangeEnd
628
+ } = this.getStates();
629
+ const {
630
+ startDateOffset,
631
+ endDateOffset,
632
+ type,
633
+ dateFnsLocale,
634
+ rangeInputFocus
635
+ } = this.getProps();
636
+ const {
637
+ fullDate
638
+ } = day;
639
+ let rangeStartReset = false;
640
+ let rangeEndReset = false;
641
+ const isDateRangeAndHasOffset = (startDateOffset || endDateOffset) && type === 'dateRange';
642
+
643
+ if (isDateRangeAndHasOffset) {
644
+ rangeStart = (0, _index.getFullDateOffset)(startDateOffset, fullDate);
645
+ rangeEnd = (0, _index.getFullDateOffset)(endDateOffset, fullDate);
646
+ } else {
647
+ if (rangeInputFocus === 'rangeEnd') {
648
+ rangeEnd = fullDate; // rangStart Parten in dateTime: 'yyyy-MM-dd HH:MM:SS', rangeEnd parten: 'yyyy-MM-dd'
649
+
650
+ if (rangeStart && rangeEnd && (0, _index.isBefore)(rangeEnd, (0, _trim.default)(rangeStart).call(rangeStart).split(/\s+/)[0])) {
651
+ rangeStart = null;
652
+ rangeStartReset = true;
653
+ } // Compatible to select date after opening the panel without click input
654
+
655
+ } else if (rangeInputFocus === 'rangeStart' || !rangeInputFocus) {
656
+ rangeStart = fullDate; // rangEnd Parten in dateTime: 'yyyy-MM-dd HH:MM:SS', rangeStart parten: 'yyyy-MM-dd'
657
+
658
+ if (rangeStart && rangeEnd && (0, _index.isBefore)((0, _trim.default)(rangeEnd).call(rangeEnd).split(/\s+/)[0], rangeStart)) {
659
+ rangeEnd = null;
660
+ rangeEndReset = true;
661
+ }
662
+ }
663
+ } // next focus logic
664
+
665
+
666
+ const isRangeType = /range/i.test(type);
667
+
668
+ if (isRangeType) {
669
+ if (isDateRangeAndHasOffset) {
670
+ this._adapter.setRangeStart(rangeStart);
671
+
672
+ this._adapter.setRangeEnd(rangeEnd);
673
+ } else {
674
+ if (rangeInputFocus === 'rangeEnd') {
675
+ this._adapter.setRangeEnd(rangeEnd);
676
+
677
+ if (rangeStartReset) {
678
+ this._adapter.setRangeStart(rangeStart);
679
+ }
680
+
681
+ if (!this._adapter.isAnotherPanelHasOpened('rangeEnd') || !rangeStart) {
682
+ this._adapter.setRangeInputFocus('rangeStart');
683
+ }
684
+ } else if (rangeInputFocus === 'rangeStart' || !rangeInputFocus) {
685
+ this._adapter.setRangeStart(rangeStart);
686
+
687
+ if (rangeEndReset) {
688
+ this._adapter.setRangeEnd(rangeEnd);
689
+ }
690
+
691
+ if (!this._adapter.isAnotherPanelHasOpened('rangeStart') || !rangeEnd) {
692
+ this._adapter.setRangeInputFocus('rangeEnd');
693
+ }
694
+ }
695
+ }
696
+ }
697
+
698
+ const dateFormat = this.getValidDateFormat(); // only notify when choose completed
699
+
700
+ if (rangeStart || rangeEnd) {
701
+ const [startDate, endDate] = [(0, _parser.compatiableParse)(rangeStart, dateFormat, undefined, dateFnsLocale), (0, _parser.compatiableParse)(rangeEnd, dateFormat, undefined, dateFnsLocale)];
702
+ let date = [startDate, endDate]; // If the type is dateRangeTime, add the value of time
703
+
704
+ if (type === 'dateTimeRange') {
705
+ const startTime = this.getState('monthLeft').pickerDate;
706
+ const endTime = this.getState('monthRight').pickerDate;
707
+ const start = rangeStart ? this._mergeDateAndTime(rangeStart, startTime) : null;
708
+ const end = rangeEnd ? this._mergeDateAndTime(rangeEnd, endTime) : null;
709
+
710
+ if ((0, _dateFns.isSameDay)(startDate, endDate) && (0, _index.isBefore)(end, start)) {
711
+ date = [start, start];
712
+ } else {
713
+ date = [start, end];
714
+ }
715
+ }
716
+
717
+ this._adapter.notifySelectedChange(date, {
718
+ needCheckFocusRecord: !(type === 'dateRange' && isDateRangeAndHasOffset)
719
+ });
720
+ }
721
+ }
722
+
723
+ _isNeedSwap(rangeStart, rangeEnd) {
724
+ // Check whether the start and end are reasonable and whether they need to be reversed
725
+ return rangeStart && rangeEnd && (0, _index.isBefore)(rangeEnd, rangeStart);
726
+ }
727
+ /**
728
+ * Day may be empty, this is unhover state
729
+ * @param {*} day
730
+ */
731
+
732
+
733
+ handleDayHover() {
734
+ let day = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {
735
+ fullDate: ''
736
+ };
737
+ let panelType = arguments.length > 1 ? arguments[1] : undefined;
738
+ const {
739
+ fullDate
740
+ } = day;
741
+ const {
742
+ startDateOffset,
743
+ endDateOffset,
744
+ type
745
+ } = this.getProps();
746
+
747
+ this._adapter.setHoverDay(fullDate);
748
+
749
+ if ((startDateOffset || endDateOffset) && type === 'dateRange') {
750
+ const offsetRangeStart = (0, _index.getFullDateOffset)(startDateOffset, fullDate);
751
+ const offsetRangeEnd = (0, _index.getFullDateOffset)(endDateOffset, fullDate);
752
+
753
+ this._adapter.setOffsetRangeStart(offsetRangeStart);
754
+
755
+ this._adapter.setOffsetRangeEnd(offsetRangeEnd);
756
+ }
757
+ } // Guarantee that monthLeft, monthRight will not appear in the same month or monthLeft is greater than MonthRight
758
+
759
+
760
+ _autoAdjustMonth(monthLeft, monthRight) {
761
+ let newMonthLeft = monthLeft;
762
+ let newMonthRight = monthRight;
763
+ const difference = (0, _dateFns.differenceInCalendarMonths)(monthLeft.pickerDate, monthRight.pickerDate);
764
+
765
+ if (difference > 0) {
766
+ // The month on the left is larger than the month on the right, swap
767
+ newMonthLeft = (0, _assign.default)({}, monthRight);
768
+ newMonthRight = (0, _assign.default)({}, monthLeft);
769
+ } else if (difference === 0) {
770
+ // Around the same month, the number of months on the right + 1
771
+ newMonthLeft = monthLeft;
772
+ newMonthRight = (0, _assign.default)((0, _assign.default)({}, monthRight), {
773
+ pickerDate: (0, _dateFns.addMonths)(monthRight.pickerDate, 1)
774
+ });
775
+ }
776
+
777
+ return {
778
+ monthLeft: newMonthLeft,
779
+ monthRight: newMonthRight
780
+ };
781
+ }
782
+
783
+ getValidTimeFormat() {
784
+ const formatProp = this.getProp('format') || _constants.strings.FORMAT_TIME_PICKER;
785
+
786
+ const timeFormatTokens = [];
787
+
788
+ if ((0, _includes3.default)(formatProp, 'h') || (0, _includes3.default)(formatProp, 'H')) {
789
+ timeFormatTokens.push('HH');
790
+ }
791
+
792
+ if ((0, _includes3.default)(formatProp, 'm')) {
793
+ timeFormatTokens.push('mm');
794
+ }
795
+
796
+ if ((0, _includes3.default)(formatProp, 's')) {
797
+ timeFormatTokens.push('ss');
798
+ }
799
+
800
+ return timeFormatTokens.join(':');
801
+ }
802
+
803
+ getValidDateFormat() {
804
+ return this.getProp('format') || (0, _index.getDefaultFormatToken)(this.getProp('type'));
805
+ }
806
+
807
+ handleTimeChange(newTime, panelType) {
808
+ const {
809
+ rangeEnd,
810
+ rangeStart
811
+ } = this.getStates();
812
+ const dateFnsLocale = this.getProp('dateFnsLocale');
813
+ const ts = newTime.timeStampValue;
814
+ const type = this.getProp('type');
815
+
816
+ const panelDetail = this._getPanelDetail(panelType);
817
+
818
+ const {
819
+ showDate
820
+ } = panelDetail;
821
+ const timeDate = new Date(ts);
822
+ const dateFormat = this.getValidDateFormat();
823
+ const destRange = panelType === _constants.strings.PANEL_TYPE_RIGHT ? rangeEnd : rangeStart;
824
+ let year, monthNo, date; // if (pickerDate && isValidDate(pickerDate)) {
825
+ // year = pickerDate.getFullYear();
826
+ // monthNo = pickerDate.getMonth();
827
+ // date = pickerDate.getDate();
828
+ // } else
829
+
830
+ if (type === 'dateTimeRange' && destRange) {
831
+ const rangeDate = (0, _parser.compatiableParse)(destRange, dateFormat, undefined, dateFnsLocale);
832
+ year = rangeDate.getFullYear();
833
+ monthNo = rangeDate.getMonth();
834
+ date = rangeDate.getDate();
835
+ } else {
836
+ year = showDate.getFullYear();
837
+ monthNo = showDate.getMonth();
838
+ date = showDate.getDate();
839
+ }
840
+
841
+ const hours = timeDate.getHours();
842
+ const minutes = timeDate.getMinutes();
843
+ const seconds = timeDate.getSeconds();
844
+ const milSeconds = timeDate.getMilliseconds();
845
+ const dateArgs = [year, monthNo, date, hours, minutes, seconds, milSeconds];
846
+ const fullValidDate = new Date(...dateArgs);
847
+
848
+ if (type === 'dateTimeRange') {
849
+ this.handleShowDateAndTime(panelType, fullValidDate, showDate);
850
+
851
+ this._updateTimeInDateRange(panelType, fullValidDate);
852
+ } else {
853
+ const fullDate = (0, _getMonthTable.formatFullDate)(year, monthNo + 1, date);
854
+ this.handleDateSelected({
855
+ fullDate,
856
+ fullValidDate
857
+ }, panelType);
858
+ this.handleShowDateAndTime(panelType, fullValidDate);
859
+
860
+ this._adapter.notifySelectedChange([fullValidDate]);
861
+ }
862
+ }
863
+ /**
864
+ * Update the time part in the range
865
+ * @param {string} panelType
866
+ * @param {Date} timeDate
867
+ */
868
+
869
+
870
+ _updateTimeInDateRange(panelType, timeDate) {
871
+ const {
872
+ isControlledComponent,
873
+ dateFnsLocale
874
+ } = this.getProps();
875
+ let rangeStart = this.getState('rangeStart');
876
+ let rangeEnd = this.getState('rangeEnd');
877
+ const dateFormat = this.getValidDateFormat(); // TODO: Modify a time individually
878
+
879
+ if (rangeStart && rangeEnd) {
880
+ let startDate = (0, _parser.compatiableParse)(rangeStart, dateFormat, undefined, dateFnsLocale);
881
+ let endDate = (0, _parser.compatiableParse)(rangeEnd, dateFormat, undefined, dateFnsLocale); // console.log('_updateTimeInDateRange()', rangeStart, rangeEnd, startDate, endDate);
882
+
883
+ if (panelType === _constants.strings.PANEL_TYPE_RIGHT) {
884
+ endDate = this._mergeDateAndTime(timeDate, timeDate);
885
+ rangeEnd = (0, _dateFns.format)(endDate, _constants.strings.FORMAT_DATE_TIME);
886
+
887
+ if (this._isNeedSwap(rangeStart, rangeEnd)) {
888
+ [rangeStart, rangeEnd] = [rangeEnd, rangeStart];
889
+ [startDate, endDate] = [endDate, startDate];
890
+ }
891
+
892
+ if (!isControlledComponent) {
893
+ this._adapter.setRangeEnd(rangeEnd);
894
+ }
895
+ } else {
896
+ startDate = this._mergeDateAndTime(timeDate, timeDate);
897
+ rangeStart = (0, _dateFns.format)(startDate, _constants.strings.FORMAT_DATE_TIME);
898
+
899
+ if (this._isNeedSwap(rangeStart, rangeEnd)) {
900
+ [rangeStart, rangeEnd] = [rangeEnd, rangeStart];
901
+ [startDate, endDate] = [endDate, startDate];
902
+ }
903
+
904
+ if (!isControlledComponent) {
905
+ this._adapter.setRangeStart(rangeStart);
906
+ }
907
+ } // console.log('_updateTimeInDateRange()', rangeStart, rangeEnd, startDate, endDate);
908
+
909
+
910
+ this._adapter.notifySelectedChange([startDate, endDate]);
911
+ }
912
+ }
913
+
914
+ _updatePanelDetail(panelType, kvs) {
915
+ const {
916
+ monthLeft,
917
+ monthRight
918
+ } = this.getStates();
919
+
920
+ if (panelType === _constants.strings.PANEL_TYPE_RIGHT) {
921
+ this._adapter.updateMonthOnRight((0, _assign.default)((0, _assign.default)({}, monthRight), kvs));
922
+ } else {
923
+ this._adapter.updateMonthOnLeft((0, _assign.default)((0, _assign.default)({}, monthLeft), kvs));
924
+ }
925
+ }
926
+
927
+ showYearPicker(panelType) {
928
+ this._updatePanelDetail(panelType, {
929
+ isTimePickerOpen: false,
930
+ isYearPickerOpen: true
931
+ });
932
+ }
933
+
934
+ showTimePicker(panelType, opt) {
935
+ if (this.getProp('disabledTimePicker')) {
936
+ return;
937
+ }
938
+
939
+ this._updatePanelDetail(panelType, {
940
+ isTimePickerOpen: true,
941
+ isYearPickerOpen: false
942
+ });
943
+ }
944
+
945
+ showDatePanel(panelType) {
946
+ this._updatePanelDetail(panelType, {
947
+ isTimePickerOpen: false,
948
+ isYearPickerOpen: false
949
+ });
950
+ }
951
+
952
+ }
953
+
954
+ exports.default = MonthsGridFoundation;