@element-plus/nightly 0.0.20250305 → 0.0.20250307

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 (662) hide show
  1. package/attributes.json +1 -1
  2. package/dist/index.css +1 -1
  3. package/dist/index.full.js +32 -13
  4. package/dist/index.full.min.js +13 -13
  5. package/dist/index.full.min.js.map +1 -1
  6. package/dist/index.full.min.mjs +13 -13
  7. package/dist/index.full.min.mjs.map +1 -1
  8. package/dist/index.full.mjs +32 -13
  9. package/dist/locale/af.js +1 -1
  10. package/dist/locale/af.min.js +1 -1
  11. package/dist/locale/af.min.mjs +1 -1
  12. package/dist/locale/af.mjs +1 -1
  13. package/dist/locale/ar-eg.js +1 -1
  14. package/dist/locale/ar-eg.min.js +1 -1
  15. package/dist/locale/ar-eg.min.mjs +1 -1
  16. package/dist/locale/ar-eg.mjs +1 -1
  17. package/dist/locale/ar.js +1 -1
  18. package/dist/locale/ar.min.js +1 -1
  19. package/dist/locale/ar.min.mjs +1 -1
  20. package/dist/locale/ar.mjs +1 -1
  21. package/dist/locale/az.js +1 -1
  22. package/dist/locale/az.min.js +1 -1
  23. package/dist/locale/az.min.mjs +1 -1
  24. package/dist/locale/az.mjs +1 -1
  25. package/dist/locale/bg.js +1 -1
  26. package/dist/locale/bg.min.js +1 -1
  27. package/dist/locale/bg.min.mjs +1 -1
  28. package/dist/locale/bg.mjs +1 -1
  29. package/dist/locale/bn.js +1 -1
  30. package/dist/locale/bn.min.js +1 -1
  31. package/dist/locale/bn.min.mjs +1 -1
  32. package/dist/locale/bn.mjs +1 -1
  33. package/dist/locale/ca.js +1 -1
  34. package/dist/locale/ca.min.js +1 -1
  35. package/dist/locale/ca.min.mjs +1 -1
  36. package/dist/locale/ca.mjs +1 -1
  37. package/dist/locale/ckb.js +1 -1
  38. package/dist/locale/ckb.min.js +1 -1
  39. package/dist/locale/ckb.min.mjs +1 -1
  40. package/dist/locale/ckb.mjs +1 -1
  41. package/dist/locale/cs.js +1 -1
  42. package/dist/locale/cs.min.js +1 -1
  43. package/dist/locale/cs.min.mjs +1 -1
  44. package/dist/locale/cs.mjs +1 -1
  45. package/dist/locale/da.js +1 -1
  46. package/dist/locale/da.min.js +1 -1
  47. package/dist/locale/da.min.mjs +1 -1
  48. package/dist/locale/da.mjs +1 -1
  49. package/dist/locale/de.js +1 -1
  50. package/dist/locale/de.min.js +1 -1
  51. package/dist/locale/de.min.mjs +1 -1
  52. package/dist/locale/de.mjs +1 -1
  53. package/dist/locale/el.js +1 -1
  54. package/dist/locale/el.min.js +1 -1
  55. package/dist/locale/el.min.mjs +1 -1
  56. package/dist/locale/el.mjs +1 -1
  57. package/dist/locale/en.js +1 -1
  58. package/dist/locale/en.min.js +1 -1
  59. package/dist/locale/en.min.mjs +1 -1
  60. package/dist/locale/en.mjs +1 -1
  61. package/dist/locale/eo.js +1 -1
  62. package/dist/locale/eo.min.js +1 -1
  63. package/dist/locale/eo.min.mjs +1 -1
  64. package/dist/locale/eo.mjs +1 -1
  65. package/dist/locale/es.js +1 -1
  66. package/dist/locale/es.min.js +1 -1
  67. package/dist/locale/es.min.mjs +1 -1
  68. package/dist/locale/es.mjs +1 -1
  69. package/dist/locale/et.js +1 -1
  70. package/dist/locale/et.min.js +1 -1
  71. package/dist/locale/et.min.mjs +1 -1
  72. package/dist/locale/et.mjs +1 -1
  73. package/dist/locale/eu.js +1 -1
  74. package/dist/locale/eu.min.js +1 -1
  75. package/dist/locale/eu.min.mjs +1 -1
  76. package/dist/locale/eu.mjs +1 -1
  77. package/dist/locale/fa.js +1 -1
  78. package/dist/locale/fa.min.js +1 -1
  79. package/dist/locale/fa.min.mjs +1 -1
  80. package/dist/locale/fa.mjs +1 -1
  81. package/dist/locale/fi.js +1 -1
  82. package/dist/locale/fi.min.js +1 -1
  83. package/dist/locale/fi.min.mjs +1 -1
  84. package/dist/locale/fi.mjs +1 -1
  85. package/dist/locale/fr.js +1 -1
  86. package/dist/locale/fr.min.js +1 -1
  87. package/dist/locale/fr.min.mjs +1 -1
  88. package/dist/locale/fr.mjs +1 -1
  89. package/dist/locale/he.js +1 -1
  90. package/dist/locale/he.min.js +1 -1
  91. package/dist/locale/he.min.mjs +1 -1
  92. package/dist/locale/he.mjs +1 -1
  93. package/dist/locale/hi.js +1 -1
  94. package/dist/locale/hi.min.js +1 -1
  95. package/dist/locale/hi.min.mjs +1 -1
  96. package/dist/locale/hi.mjs +1 -1
  97. package/dist/locale/hr.js +1 -1
  98. package/dist/locale/hr.min.js +1 -1
  99. package/dist/locale/hr.min.mjs +1 -1
  100. package/dist/locale/hr.mjs +1 -1
  101. package/dist/locale/hu.js +1 -1
  102. package/dist/locale/hu.min.js +1 -1
  103. package/dist/locale/hu.min.mjs +1 -1
  104. package/dist/locale/hu.mjs +1 -1
  105. package/dist/locale/hy-am.js +1 -1
  106. package/dist/locale/hy-am.min.js +1 -1
  107. package/dist/locale/hy-am.min.mjs +1 -1
  108. package/dist/locale/hy-am.mjs +1 -1
  109. package/dist/locale/id.js +1 -1
  110. package/dist/locale/id.min.js +1 -1
  111. package/dist/locale/id.min.mjs +1 -1
  112. package/dist/locale/id.mjs +1 -1
  113. package/dist/locale/it.js +1 -1
  114. package/dist/locale/it.min.js +1 -1
  115. package/dist/locale/it.min.mjs +1 -1
  116. package/dist/locale/it.mjs +1 -1
  117. package/dist/locale/ja.js +1 -1
  118. package/dist/locale/ja.min.js +1 -1
  119. package/dist/locale/ja.min.mjs +1 -1
  120. package/dist/locale/ja.mjs +1 -1
  121. package/dist/locale/kk.js +1 -1
  122. package/dist/locale/kk.min.js +1 -1
  123. package/dist/locale/kk.min.mjs +1 -1
  124. package/dist/locale/kk.mjs +1 -1
  125. package/dist/locale/km.js +1 -1
  126. package/dist/locale/km.min.js +1 -1
  127. package/dist/locale/km.min.mjs +1 -1
  128. package/dist/locale/km.mjs +1 -1
  129. package/dist/locale/ko.js +1 -1
  130. package/dist/locale/ko.min.js +1 -1
  131. package/dist/locale/ko.min.mjs +1 -1
  132. package/dist/locale/ko.mjs +1 -1
  133. package/dist/locale/ku.js +1 -1
  134. package/dist/locale/ku.min.js +1 -1
  135. package/dist/locale/ku.min.mjs +1 -1
  136. package/dist/locale/ku.mjs +1 -1
  137. package/dist/locale/ky.js +1 -1
  138. package/dist/locale/ky.min.js +1 -1
  139. package/dist/locale/ky.min.mjs +1 -1
  140. package/dist/locale/ky.mjs +1 -1
  141. package/dist/locale/lt.js +1 -1
  142. package/dist/locale/lt.min.js +1 -1
  143. package/dist/locale/lt.min.mjs +1 -1
  144. package/dist/locale/lt.mjs +1 -1
  145. package/dist/locale/lv.js +1 -1
  146. package/dist/locale/lv.min.js +1 -1
  147. package/dist/locale/lv.min.mjs +1 -1
  148. package/dist/locale/lv.mjs +1 -1
  149. package/dist/locale/mg.js +1 -1
  150. package/dist/locale/mg.min.js +1 -1
  151. package/dist/locale/mg.min.mjs +1 -1
  152. package/dist/locale/mg.mjs +1 -1
  153. package/dist/locale/mn.js +1 -1
  154. package/dist/locale/mn.min.js +1 -1
  155. package/dist/locale/mn.min.mjs +1 -1
  156. package/dist/locale/mn.mjs +1 -1
  157. package/dist/locale/ms.js +1 -1
  158. package/dist/locale/ms.min.js +1 -1
  159. package/dist/locale/ms.min.mjs +1 -1
  160. package/dist/locale/ms.mjs +1 -1
  161. package/dist/locale/my.js +1 -1
  162. package/dist/locale/my.min.js +1 -1
  163. package/dist/locale/my.min.mjs +1 -1
  164. package/dist/locale/my.mjs +1 -1
  165. package/dist/locale/nb-no.js +1 -1
  166. package/dist/locale/nb-no.min.js +1 -1
  167. package/dist/locale/nb-no.min.mjs +1 -1
  168. package/dist/locale/nb-no.mjs +1 -1
  169. package/dist/locale/nl.js +1 -1
  170. package/dist/locale/nl.min.js +1 -1
  171. package/dist/locale/nl.min.mjs +1 -1
  172. package/dist/locale/nl.mjs +1 -1
  173. package/dist/locale/no.js +1 -1
  174. package/dist/locale/no.min.js +1 -1
  175. package/dist/locale/no.min.mjs +1 -1
  176. package/dist/locale/no.mjs +1 -1
  177. package/dist/locale/pa.js +1 -1
  178. package/dist/locale/pa.min.js +1 -1
  179. package/dist/locale/pa.min.mjs +1 -1
  180. package/dist/locale/pa.mjs +1 -1
  181. package/dist/locale/pl.js +1 -1
  182. package/dist/locale/pl.min.js +1 -1
  183. package/dist/locale/pl.min.mjs +1 -1
  184. package/dist/locale/pl.mjs +1 -1
  185. package/dist/locale/pt-br.js +1 -1
  186. package/dist/locale/pt-br.min.js +1 -1
  187. package/dist/locale/pt-br.min.mjs +1 -1
  188. package/dist/locale/pt-br.mjs +1 -1
  189. package/dist/locale/pt.js +1 -1
  190. package/dist/locale/pt.min.js +1 -1
  191. package/dist/locale/pt.min.mjs +1 -1
  192. package/dist/locale/pt.mjs +1 -1
  193. package/dist/locale/ro.js +1 -1
  194. package/dist/locale/ro.min.js +1 -1
  195. package/dist/locale/ro.min.mjs +1 -1
  196. package/dist/locale/ro.mjs +1 -1
  197. package/dist/locale/ru.js +1 -1
  198. package/dist/locale/ru.min.js +1 -1
  199. package/dist/locale/ru.min.mjs +1 -1
  200. package/dist/locale/ru.mjs +1 -1
  201. package/dist/locale/sk.js +1 -1
  202. package/dist/locale/sk.min.js +1 -1
  203. package/dist/locale/sk.min.mjs +1 -1
  204. package/dist/locale/sk.mjs +1 -1
  205. package/dist/locale/sl.js +1 -1
  206. package/dist/locale/sl.min.js +1 -1
  207. package/dist/locale/sl.min.mjs +1 -1
  208. package/dist/locale/sl.mjs +1 -1
  209. package/dist/locale/sr.js +1 -1
  210. package/dist/locale/sr.min.js +1 -1
  211. package/dist/locale/sr.min.mjs +1 -1
  212. package/dist/locale/sr.mjs +1 -1
  213. package/dist/locale/sv.js +1 -1
  214. package/dist/locale/sv.min.js +1 -1
  215. package/dist/locale/sv.min.mjs +1 -1
  216. package/dist/locale/sv.mjs +1 -1
  217. package/dist/locale/sw.js +1 -1
  218. package/dist/locale/sw.min.js +1 -1
  219. package/dist/locale/sw.min.mjs +1 -1
  220. package/dist/locale/sw.mjs +1 -1
  221. package/dist/locale/ta.js +1 -1
  222. package/dist/locale/ta.min.js +1 -1
  223. package/dist/locale/ta.min.mjs +1 -1
  224. package/dist/locale/ta.mjs +1 -1
  225. package/dist/locale/te.js +1 -1
  226. package/dist/locale/te.min.js +1 -1
  227. package/dist/locale/te.min.mjs +1 -1
  228. package/dist/locale/te.mjs +1 -1
  229. package/dist/locale/th.js +1 -1
  230. package/dist/locale/th.min.js +1 -1
  231. package/dist/locale/th.min.mjs +1 -1
  232. package/dist/locale/th.mjs +1 -1
  233. package/dist/locale/tk.js +1 -1
  234. package/dist/locale/tk.min.js +1 -1
  235. package/dist/locale/tk.min.mjs +1 -1
  236. package/dist/locale/tk.mjs +1 -1
  237. package/dist/locale/tr.js +1 -1
  238. package/dist/locale/tr.min.js +1 -1
  239. package/dist/locale/tr.min.mjs +1 -1
  240. package/dist/locale/tr.mjs +1 -1
  241. package/dist/locale/ug-cn.js +1 -1
  242. package/dist/locale/ug-cn.min.js +1 -1
  243. package/dist/locale/ug-cn.min.mjs +1 -1
  244. package/dist/locale/ug-cn.mjs +1 -1
  245. package/dist/locale/uk.js +1 -1
  246. package/dist/locale/uk.min.js +1 -1
  247. package/dist/locale/uk.min.mjs +1 -1
  248. package/dist/locale/uk.mjs +1 -1
  249. package/dist/locale/uz-uz.js +1 -1
  250. package/dist/locale/uz-uz.min.js +1 -1
  251. package/dist/locale/uz-uz.min.mjs +1 -1
  252. package/dist/locale/uz-uz.mjs +1 -1
  253. package/dist/locale/vi.js +1 -1
  254. package/dist/locale/vi.min.js +1 -1
  255. package/dist/locale/vi.min.mjs +1 -1
  256. package/dist/locale/vi.mjs +1 -1
  257. package/dist/locale/zh-cn.js +1 -1
  258. package/dist/locale/zh-cn.min.js +1 -1
  259. package/dist/locale/zh-cn.min.mjs +1 -1
  260. package/dist/locale/zh-cn.mjs +1 -1
  261. package/dist/locale/zh-hk.js +1 -1
  262. package/dist/locale/zh-hk.min.js +1 -1
  263. package/dist/locale/zh-hk.min.mjs +1 -1
  264. package/dist/locale/zh-hk.mjs +1 -1
  265. package/dist/locale/zh-mo.js +1 -1
  266. package/dist/locale/zh-mo.min.js +1 -1
  267. package/dist/locale/zh-mo.min.mjs +1 -1
  268. package/dist/locale/zh-mo.mjs +1 -1
  269. package/dist/locale/zh-tw.js +1 -1
  270. package/dist/locale/zh-tw.min.js +1 -1
  271. package/dist/locale/zh-tw.min.mjs +1 -1
  272. package/dist/locale/zh-tw.mjs +1 -1
  273. package/es/components/affix/index.mjs +2 -2
  274. package/es/components/affix/src/affix.mjs +118 -25
  275. package/es/components/affix/src/affix.mjs.map +1 -1
  276. package/es/components/affix/src/affix2.mjs +25 -118
  277. package/es/components/affix/src/affix2.mjs.map +1 -1
  278. package/es/components/anchor/index.mjs +1 -1
  279. package/es/components/anchor/src/anchor-link.mjs +5 -81
  280. package/es/components/anchor/src/anchor-link.mjs.map +1 -1
  281. package/es/components/anchor/src/anchor-link2.mjs +81 -5
  282. package/es/components/anchor/src/anchor-link2.mjs.map +1 -1
  283. package/es/components/avatar/index.mjs +2 -2
  284. package/es/components/avatar/src/avatar.mjs +31 -65
  285. package/es/components/avatar/src/avatar.mjs.map +1 -1
  286. package/es/components/avatar/src/avatar2.mjs +65 -31
  287. package/es/components/avatar/src/avatar2.mjs.map +1 -1
  288. package/es/components/badge/index.mjs +2 -2
  289. package/es/components/badge/src/badge.mjs +71 -32
  290. package/es/components/badge/src/badge.mjs.map +1 -1
  291. package/es/components/badge/src/badge2.mjs +32 -71
  292. package/es/components/badge/src/badge2.mjs.map +1 -1
  293. package/es/components/breadcrumb/index.mjs +2 -2
  294. package/es/components/breadcrumb/src/breadcrumb-item.mjs +8 -56
  295. package/es/components/breadcrumb/src/breadcrumb-item.mjs.map +1 -1
  296. package/es/components/breadcrumb/src/breadcrumb-item2.mjs +56 -8
  297. package/es/components/breadcrumb/src/breadcrumb-item2.mjs.map +1 -1
  298. package/es/components/calendar/index.mjs +2 -2
  299. package/es/components/calendar/src/calendar.mjs +16 -134
  300. package/es/components/calendar/src/calendar.mjs.map +1 -1
  301. package/es/components/calendar/src/calendar2.mjs +134 -16
  302. package/es/components/calendar/src/calendar2.mjs.map +1 -1
  303. package/es/components/cascader/src/cascader2.mjs +1 -1
  304. package/es/components/collapse/index.mjs +2 -2
  305. package/es/components/collapse/src/collapse.mjs +16 -28
  306. package/es/components/collapse/src/collapse.mjs.map +1 -1
  307. package/es/components/collapse/src/collapse2.mjs +28 -16
  308. package/es/components/collapse/src/collapse2.mjs.map +1 -1
  309. package/es/components/collection/index.mjs +1 -1
  310. package/es/components/collection/src/collection.mjs +62 -10
  311. package/es/components/collection/src/collection.mjs.map +1 -1
  312. package/es/components/collection/src/collection2.mjs +10 -62
  313. package/es/components/collection/src/collection2.mjs.map +1 -1
  314. package/es/components/date-picker/src/date-picker-com/basic-month-table.mjs +1 -1
  315. package/es/components/date-picker/src/date-picker-com/basic-month-table.mjs.map +1 -1
  316. package/es/components/date-picker/src/date-picker-com/panel-date-pick.mjs +3 -3
  317. package/es/components/date-picker/src/date-picker-com/panel-date-pick.mjs.map +1 -1
  318. package/es/components/date-picker/src/date-picker-com/panel-date-range.mjs +2 -2
  319. package/es/components/date-picker/src/date-picker-com/panel-date-range.mjs.map +1 -1
  320. package/es/components/date-picker/src/date-picker-com/panel-month-range.mjs +2 -2
  321. package/es/components/date-picker/src/date-picker-com/panel-month-range.mjs.map +1 -1
  322. package/es/components/date-picker/src/date-picker-com/panel-year-range.mjs +2 -2
  323. package/es/components/date-picker/src/date-picker-com/panel-year-range.mjs.map +1 -1
  324. package/es/components/date-picker/src/utils.d.ts +1 -0
  325. package/es/components/date-picker/src/utils.mjs +14 -2
  326. package/es/components/date-picker/src/utils.mjs.map +1 -1
  327. package/es/components/descriptions/index.mjs +2 -2
  328. package/es/components/descriptions/src/description.mjs +126 -26
  329. package/es/components/descriptions/src/description.mjs.map +1 -1
  330. package/es/components/descriptions/src/description2.mjs +26 -126
  331. package/es/components/descriptions/src/description2.mjs.map +1 -1
  332. package/es/components/descriptions/src/descriptions-row.mjs +63 -6
  333. package/es/components/descriptions/src/descriptions-row.mjs.map +1 -1
  334. package/es/components/descriptions/src/descriptions-row2.mjs +6 -63
  335. package/es/components/descriptions/src/descriptions-row2.mjs.map +1 -1
  336. package/es/components/dropdown/src/dropdown-item-impl.mjs +2 -2
  337. package/es/components/dropdown/src/dropdown-menu.mjs +1 -1
  338. package/es/components/dropdown/src/dropdown.d.ts +1 -1
  339. package/es/components/dropdown/src/dropdown.mjs +1 -1
  340. package/es/components/dropdown/src/dropdown.mjs.map +1 -1
  341. package/es/components/dropdown/src/dropdown.vue.d.ts +2 -2
  342. package/es/components/dropdown/src/dropdown2.mjs +1 -1
  343. package/es/components/index.mjs +21 -21
  344. package/es/components/input/index.mjs +2 -2
  345. package/es/components/input/src/input.mjs +102 -431
  346. package/es/components/input/src/input.mjs.map +1 -1
  347. package/es/components/input/src/input2.mjs +435 -102
  348. package/es/components/input/src/input2.mjs.map +1 -1
  349. package/es/components/input-tag/src/input-tag.mjs +1 -1
  350. package/es/components/mention/src/mention-dropdown.mjs +15 -166
  351. package/es/components/mention/src/mention-dropdown.mjs.map +1 -1
  352. package/es/components/mention/src/mention-dropdown2.mjs +166 -15
  353. package/es/components/mention/src/mention-dropdown2.mjs.map +1 -1
  354. package/es/components/mention/src/mention.mjs +1 -1
  355. package/es/components/mention/src/mention2.mjs +2 -2
  356. package/es/components/message/index.mjs +1 -1
  357. package/es/components/message/src/message.mjs +91 -145
  358. package/es/components/message/src/message.mjs.map +1 -1
  359. package/es/components/message/src/message2.mjs +145 -91
  360. package/es/components/message/src/message2.mjs.map +1 -1
  361. package/es/components/message/src/method.mjs +2 -2
  362. package/es/components/notification/index.mjs +1 -1
  363. package/es/components/notification/src/notification.mjs +68 -142
  364. package/es/components/notification/src/notification.mjs.map +1 -1
  365. package/es/components/notification/src/notification2.mjs +142 -68
  366. package/es/components/notification/src/notification2.mjs.map +1 -1
  367. package/es/components/notification/src/notify.mjs +2 -2
  368. package/es/components/popconfirm/index.mjs +2 -2
  369. package/es/components/popconfirm/src/popconfirm.mjs +45 -114
  370. package/es/components/popconfirm/src/popconfirm.mjs.map +1 -1
  371. package/es/components/popconfirm/src/popconfirm2.mjs +114 -45
  372. package/es/components/popconfirm/src/popconfirm2.mjs.map +1 -1
  373. package/es/components/popper/index.mjs +2 -2
  374. package/es/components/popper/src/content.mjs +92 -132
  375. package/es/components/popper/src/content.mjs.map +1 -1
  376. package/es/components/popper/src/content2.mjs +132 -92
  377. package/es/components/popper/src/content2.mjs.map +1 -1
  378. package/es/components/roving-focus-group/index.mjs +3 -3
  379. package/es/components/roving-focus-group/src/roving-focus-group-impl.mjs +1 -1
  380. package/es/components/roving-focus-group/src/roving-focus-group.mjs +27 -27
  381. package/es/components/roving-focus-group/src/roving-focus-group.mjs.map +1 -1
  382. package/es/components/roving-focus-group/src/roving-focus-group2.mjs +27 -27
  383. package/es/components/roving-focus-group/src/roving-focus-group2.mjs.map +1 -1
  384. package/es/components/roving-focus-group/src/roving-focus-item.mjs +1 -1
  385. package/es/components/scrollbar/src/bar.mjs +64 -10
  386. package/es/components/scrollbar/src/bar.mjs.map +1 -1
  387. package/es/components/scrollbar/src/bar2.mjs +10 -64
  388. package/es/components/scrollbar/src/bar2.mjs.map +1 -1
  389. package/es/components/scrollbar/src/scrollbar2.mjs +1 -1
  390. package/es/components/select/src/select.mjs +1 -1
  391. package/es/components/select-v2/src/defaults.mjs +1 -1
  392. package/es/components/select-v2/src/select-dropdown.mjs +5 -1
  393. package/es/components/select-v2/src/select-dropdown.mjs.map +1 -1
  394. package/es/components/slider/index.mjs +2 -2
  395. package/es/components/slider/src/slider.mjs +238 -92
  396. package/es/components/slider/src/slider.mjs.map +1 -1
  397. package/es/components/slider/src/slider2.mjs +92 -238
  398. package/es/components/slider/src/slider2.mjs.map +1 -1
  399. package/es/components/statistic/index.mjs +2 -2
  400. package/es/components/statistic/src/statistic.mjs +25 -69
  401. package/es/components/statistic/src/statistic.mjs.map +1 -1
  402. package/es/components/statistic/src/statistic2.mjs +69 -25
  403. package/es/components/statistic/src/statistic2.mjs.map +1 -1
  404. package/es/components/steps/index.mjs +4 -4
  405. package/es/components/steps/src/item.mjs +19 -190
  406. package/es/components/steps/src/item.mjs.map +1 -1
  407. package/es/components/steps/src/item2.mjs +190 -19
  408. package/es/components/steps/src/item2.mjs.map +1 -1
  409. package/es/components/steps/src/steps.mjs +38 -35
  410. package/es/components/steps/src/steps.mjs.map +1 -1
  411. package/es/components/steps/src/steps2.mjs +35 -38
  412. package/es/components/steps/src/steps2.mjs.map +1 -1
  413. package/es/components/tag/index.mjs +2 -2
  414. package/es/components/tag/src/tag.mjs +99 -27
  415. package/es/components/tag/src/tag.mjs.map +1 -1
  416. package/es/components/tag/src/tag2.mjs +27 -99
  417. package/es/components/tag/src/tag2.mjs.map +1 -1
  418. package/es/components/teleport/index.mjs +2 -2
  419. package/es/components/teleport/src/teleport.mjs +18 -8
  420. package/es/components/teleport/src/teleport.mjs.map +1 -1
  421. package/es/components/teleport/src/teleport2.mjs +8 -18
  422. package/es/components/teleport/src/teleport2.mjs.map +1 -1
  423. package/es/components/tooltip/src/content.mjs +1 -1
  424. package/es/components/tooltip/src/content2.mjs +1 -1
  425. package/es/components/tooltip-v2/index.mjs +1 -1
  426. package/es/components/tooltip-v2/src/arrow.mjs +37 -21
  427. package/es/components/tooltip-v2/src/arrow.mjs.map +1 -1
  428. package/es/components/tooltip-v2/src/arrow2.mjs +21 -37
  429. package/es/components/tooltip-v2/src/arrow2.mjs.map +1 -1
  430. package/es/components/tooltip-v2/src/content2.mjs +1 -1
  431. package/es/components/tooltip-v2/src/tooltip.mjs +1 -1
  432. package/es/components/tooltip-v2/src/tooltip2.mjs +2 -2
  433. package/es/components/tour/index.mjs +3 -3
  434. package/es/components/tour/src/content.mjs +43 -67
  435. package/es/components/tour/src/content.mjs.map +1 -1
  436. package/es/components/tour/src/content2.mjs +67 -43
  437. package/es/components/tour/src/content2.mjs.map +1 -1
  438. package/es/components/tour/src/step.mjs +44 -168
  439. package/es/components/tour/src/step.mjs.map +1 -1
  440. package/es/components/tour/src/step2.mjs +168 -44
  441. package/es/components/tour/src/step2.mjs.map +1 -1
  442. package/es/components/tour/src/tour.mjs +1 -1
  443. package/es/components/tour/src/tour2.mjs +1 -1
  444. package/es/components/transfer/src/composables/use-check.mjs +1 -1
  445. package/es/components/transfer/src/transfer-panel.mjs +19 -130
  446. package/es/components/transfer/src/transfer-panel.mjs.map +1 -1
  447. package/es/components/transfer/src/transfer-panel2.mjs +130 -19
  448. package/es/components/transfer/src/transfer-panel2.mjs.map +1 -1
  449. package/es/components/transfer/src/transfer2.mjs +1 -1
  450. package/es/components/upload/index.mjs +1 -1
  451. package/es/components/upload/src/upload-content2.mjs +1 -1
  452. package/es/components/upload/src/upload-dragger.mjs +47 -10
  453. package/es/components/upload/src/upload-dragger.mjs.map +1 -1
  454. package/es/components/upload/src/upload-dragger2.mjs +10 -47
  455. package/es/components/upload/src/upload-dragger2.mjs.map +1 -1
  456. package/es/components/visual-hidden/index.mjs +3 -3
  457. package/es/components/visual-hidden/src/visual-hidden.mjs +6 -35
  458. package/es/components/visual-hidden/src/visual-hidden.mjs.map +1 -1
  459. package/es/components/visual-hidden/src/visual-hidden2.mjs +35 -6
  460. package/es/components/visual-hidden/src/visual-hidden2.mjs.map +1 -1
  461. package/es/index.mjs +21 -21
  462. package/es/version.d.ts +1 -1
  463. package/es/version.mjs +1 -1
  464. package/es/version.mjs.map +1 -1
  465. package/lib/components/affix/index.js +2 -2
  466. package/lib/components/affix/src/affix.js +118 -26
  467. package/lib/components/affix/src/affix.js.map +1 -1
  468. package/lib/components/affix/src/affix2.js +26 -118
  469. package/lib/components/affix/src/affix2.js.map +1 -1
  470. package/lib/components/anchor/index.js +1 -1
  471. package/lib/components/anchor/src/anchor-link.js +5 -81
  472. package/lib/components/anchor/src/anchor-link.js.map +1 -1
  473. package/lib/components/anchor/src/anchor-link2.js +81 -5
  474. package/lib/components/anchor/src/anchor-link2.js.map +1 -1
  475. package/lib/components/avatar/index.js +2 -2
  476. package/lib/components/avatar/src/avatar.js +32 -65
  477. package/lib/components/avatar/src/avatar.js.map +1 -1
  478. package/lib/components/avatar/src/avatar2.js +65 -32
  479. package/lib/components/avatar/src/avatar2.js.map +1 -1
  480. package/lib/components/badge/index.js +2 -2
  481. package/lib/components/badge/src/badge.js +71 -32
  482. package/lib/components/badge/src/badge.js.map +1 -1
  483. package/lib/components/badge/src/badge2.js +32 -71
  484. package/lib/components/badge/src/badge2.js.map +1 -1
  485. package/lib/components/breadcrumb/index.js +2 -2
  486. package/lib/components/breadcrumb/src/breadcrumb-item.js +8 -56
  487. package/lib/components/breadcrumb/src/breadcrumb-item.js.map +1 -1
  488. package/lib/components/breadcrumb/src/breadcrumb-item2.js +56 -8
  489. package/lib/components/breadcrumb/src/breadcrumb-item2.js.map +1 -1
  490. package/lib/components/calendar/index.js +2 -2
  491. package/lib/components/calendar/src/calendar.js +17 -134
  492. package/lib/components/calendar/src/calendar.js.map +1 -1
  493. package/lib/components/calendar/src/calendar2.js +134 -17
  494. package/lib/components/calendar/src/calendar2.js.map +1 -1
  495. package/lib/components/cascader/src/cascader2.js +1 -1
  496. package/lib/components/collapse/index.js +2 -2
  497. package/lib/components/collapse/src/collapse.js +18 -28
  498. package/lib/components/collapse/src/collapse.js.map +1 -1
  499. package/lib/components/collapse/src/collapse2.js +28 -18
  500. package/lib/components/collapse/src/collapse2.js.map +1 -1
  501. package/lib/components/collection/index.js +1 -1
  502. package/lib/components/collection/src/collection.js +62 -9
  503. package/lib/components/collection/src/collection.js.map +1 -1
  504. package/lib/components/collection/src/collection2.js +9 -62
  505. package/lib/components/collection/src/collection2.js.map +1 -1
  506. package/lib/components/date-picker/src/date-picker-com/basic-month-table.js +1 -1
  507. package/lib/components/date-picker/src/date-picker-com/basic-month-table.js.map +1 -1
  508. package/lib/components/date-picker/src/date-picker-com/panel-date-pick.js +2 -2
  509. package/lib/components/date-picker/src/date-picker-com/panel-date-pick.js.map +1 -1
  510. package/lib/components/date-picker/src/date-picker-com/panel-date-range.js +1 -1
  511. package/lib/components/date-picker/src/date-picker-com/panel-date-range.js.map +1 -1
  512. package/lib/components/date-picker/src/date-picker-com/panel-month-range.js +1 -1
  513. package/lib/components/date-picker/src/date-picker-com/panel-month-range.js.map +1 -1
  514. package/lib/components/date-picker/src/date-picker-com/panel-year-range.js +1 -1
  515. package/lib/components/date-picker/src/date-picker-com/panel-year-range.js.map +1 -1
  516. package/lib/components/date-picker/src/utils.d.ts +1 -0
  517. package/lib/components/date-picker/src/utils.js +14 -1
  518. package/lib/components/date-picker/src/utils.js.map +1 -1
  519. package/lib/components/descriptions/index.js +2 -2
  520. package/lib/components/descriptions/src/description.js +126 -26
  521. package/lib/components/descriptions/src/description.js.map +1 -1
  522. package/lib/components/descriptions/src/description2.js +26 -126
  523. package/lib/components/descriptions/src/description2.js.map +1 -1
  524. package/lib/components/descriptions/src/descriptions-row.js +63 -6
  525. package/lib/components/descriptions/src/descriptions-row.js.map +1 -1
  526. package/lib/components/descriptions/src/descriptions-row2.js +6 -63
  527. package/lib/components/descriptions/src/descriptions-row2.js.map +1 -1
  528. package/lib/components/dropdown/src/dropdown-item-impl.js +2 -2
  529. package/lib/components/dropdown/src/dropdown-menu.js +1 -1
  530. package/lib/components/dropdown/src/dropdown.d.ts +1 -1
  531. package/lib/components/dropdown/src/dropdown.js +1 -1
  532. package/lib/components/dropdown/src/dropdown.js.map +1 -1
  533. package/lib/components/dropdown/src/dropdown.vue.d.ts +2 -2
  534. package/lib/components/dropdown/src/dropdown2.js +1 -1
  535. package/lib/components/index.js +21 -21
  536. package/lib/components/input/index.js +2 -2
  537. package/lib/components/input/src/input.js +102 -430
  538. package/lib/components/input/src/input.js.map +1 -1
  539. package/lib/components/input/src/input2.js +434 -102
  540. package/lib/components/input/src/input2.js.map +1 -1
  541. package/lib/components/input-tag/src/input-tag.js +1 -1
  542. package/lib/components/mention/src/mention-dropdown.js +16 -166
  543. package/lib/components/mention/src/mention-dropdown.js.map +1 -1
  544. package/lib/components/mention/src/mention-dropdown2.js +166 -16
  545. package/lib/components/mention/src/mention-dropdown2.js.map +1 -1
  546. package/lib/components/mention/src/mention.js +1 -1
  547. package/lib/components/mention/src/mention2.js +2 -2
  548. package/lib/components/message/index.js +1 -1
  549. package/lib/components/message/src/message.js +93 -144
  550. package/lib/components/message/src/message.js.map +1 -1
  551. package/lib/components/message/src/message2.js +144 -93
  552. package/lib/components/message/src/message2.js.map +1 -1
  553. package/lib/components/message/src/method.js +2 -2
  554. package/lib/components/notification/index.js +1 -1
  555. package/lib/components/notification/src/notification.js +69 -141
  556. package/lib/components/notification/src/notification.js.map +1 -1
  557. package/lib/components/notification/src/notification2.js +141 -69
  558. package/lib/components/notification/src/notification2.js.map +1 -1
  559. package/lib/components/notification/src/notify.js +2 -2
  560. package/lib/components/popconfirm/index.js +2 -2
  561. package/lib/components/popconfirm/src/popconfirm.js +46 -114
  562. package/lib/components/popconfirm/src/popconfirm.js.map +1 -1
  563. package/lib/components/popconfirm/src/popconfirm2.js +114 -46
  564. package/lib/components/popconfirm/src/popconfirm2.js.map +1 -1
  565. package/lib/components/popper/index.js +2 -2
  566. package/lib/components/popper/src/content.js +97 -132
  567. package/lib/components/popper/src/content.js.map +1 -1
  568. package/lib/components/popper/src/content2.js +132 -97
  569. package/lib/components/popper/src/content2.js.map +1 -1
  570. package/lib/components/roving-focus-group/index.js +2 -2
  571. package/lib/components/roving-focus-group/src/roving-focus-group-impl.js +1 -1
  572. package/lib/components/roving-focus-group/src/roving-focus-group.js +27 -31
  573. package/lib/components/roving-focus-group/src/roving-focus-group.js.map +1 -1
  574. package/lib/components/roving-focus-group/src/roving-focus-group2.js +31 -27
  575. package/lib/components/roving-focus-group/src/roving-focus-group2.js.map +1 -1
  576. package/lib/components/roving-focus-group/src/roving-focus-item.js +1 -1
  577. package/lib/components/scrollbar/src/bar.js +64 -10
  578. package/lib/components/scrollbar/src/bar.js.map +1 -1
  579. package/lib/components/scrollbar/src/bar2.js +10 -64
  580. package/lib/components/scrollbar/src/bar2.js.map +1 -1
  581. package/lib/components/scrollbar/src/scrollbar2.js +1 -1
  582. package/lib/components/select/src/select.js +1 -1
  583. package/lib/components/select-v2/src/defaults.js +1 -1
  584. package/lib/components/select-v2/src/select-dropdown.js +5 -1
  585. package/lib/components/select-v2/src/select-dropdown.js.map +1 -1
  586. package/lib/components/slider/index.js +2 -2
  587. package/lib/components/slider/src/slider.js +238 -93
  588. package/lib/components/slider/src/slider.js.map +1 -1
  589. package/lib/components/slider/src/slider2.js +93 -238
  590. package/lib/components/slider/src/slider2.js.map +1 -1
  591. package/lib/components/statistic/index.js +2 -2
  592. package/lib/components/statistic/src/statistic.js +25 -69
  593. package/lib/components/statistic/src/statistic.js.map +1 -1
  594. package/lib/components/statistic/src/statistic2.js +69 -25
  595. package/lib/components/statistic/src/statistic2.js.map +1 -1
  596. package/lib/components/steps/index.js +4 -4
  597. package/lib/components/steps/src/item.js +19 -190
  598. package/lib/components/steps/src/item.js.map +1 -1
  599. package/lib/components/steps/src/item2.js +190 -19
  600. package/lib/components/steps/src/item2.js.map +1 -1
  601. package/lib/components/steps/src/steps.js +38 -36
  602. package/lib/components/steps/src/steps.js.map +1 -1
  603. package/lib/components/steps/src/steps2.js +36 -38
  604. package/lib/components/steps/src/steps2.js.map +1 -1
  605. package/lib/components/tag/index.js +2 -2
  606. package/lib/components/tag/src/tag.js +99 -28
  607. package/lib/components/tag/src/tag.js.map +1 -1
  608. package/lib/components/tag/src/tag2.js +28 -99
  609. package/lib/components/tag/src/tag2.js.map +1 -1
  610. package/lib/components/teleport/index.js +2 -2
  611. package/lib/components/teleport/src/teleport.js +18 -8
  612. package/lib/components/teleport/src/teleport.js.map +1 -1
  613. package/lib/components/teleport/src/teleport2.js +8 -18
  614. package/lib/components/teleport/src/teleport2.js.map +1 -1
  615. package/lib/components/tooltip/src/content.js +1 -1
  616. package/lib/components/tooltip/src/content2.js +1 -1
  617. package/lib/components/tooltip-v2/index.js +1 -1
  618. package/lib/components/tooltip-v2/src/arrow.js +37 -22
  619. package/lib/components/tooltip-v2/src/arrow.js.map +1 -1
  620. package/lib/components/tooltip-v2/src/arrow2.js +22 -37
  621. package/lib/components/tooltip-v2/src/arrow2.js.map +1 -1
  622. package/lib/components/tooltip-v2/src/content2.js +1 -1
  623. package/lib/components/tooltip-v2/src/tooltip.js +1 -1
  624. package/lib/components/tooltip-v2/src/tooltip2.js +2 -2
  625. package/lib/components/tour/index.js +3 -3
  626. package/lib/components/tour/src/content.js +46 -67
  627. package/lib/components/tour/src/content.js.map +1 -1
  628. package/lib/components/tour/src/content2.js +67 -46
  629. package/lib/components/tour/src/content2.js.map +1 -1
  630. package/lib/components/tour/src/step.js +44 -167
  631. package/lib/components/tour/src/step.js.map +1 -1
  632. package/lib/components/tour/src/step2.js +167 -44
  633. package/lib/components/tour/src/step2.js.map +1 -1
  634. package/lib/components/tour/src/tour.js +1 -1
  635. package/lib/components/tour/src/tour2.js +1 -1
  636. package/lib/components/transfer/src/composables/use-check.js +1 -1
  637. package/lib/components/transfer/src/transfer-panel.js +21 -130
  638. package/lib/components/transfer/src/transfer-panel.js.map +1 -1
  639. package/lib/components/transfer/src/transfer-panel2.js +130 -21
  640. package/lib/components/transfer/src/transfer-panel2.js.map +1 -1
  641. package/lib/components/transfer/src/transfer2.js +1 -1
  642. package/lib/components/upload/index.js +1 -1
  643. package/lib/components/upload/src/upload-content2.js +1 -1
  644. package/lib/components/upload/src/upload-dragger.js +47 -11
  645. package/lib/components/upload/src/upload-dragger.js.map +1 -1
  646. package/lib/components/upload/src/upload-dragger2.js +11 -47
  647. package/lib/components/upload/src/upload-dragger2.js.map +1 -1
  648. package/lib/components/visual-hidden/index.js +2 -2
  649. package/lib/components/visual-hidden/src/visual-hidden.js +6 -35
  650. package/lib/components/visual-hidden/src/visual-hidden.js.map +1 -1
  651. package/lib/components/visual-hidden/src/visual-hidden2.js +35 -6
  652. package/lib/components/visual-hidden/src/visual-hidden2.js.map +1 -1
  653. package/lib/index.js +21 -21
  654. package/lib/version.d.ts +1 -1
  655. package/lib/version.js +1 -1
  656. package/lib/version.js.map +1 -1
  657. package/package.json +2 -2
  658. package/tags.json +1 -1
  659. package/theme-chalk/el-cascader.css +1 -1
  660. package/theme-chalk/index.css +1 -1
  661. package/theme-chalk/src/cascader.scss +0 -2
  662. package/web-types.json +1 -1
@@ -1 +1 @@
1
- {"version":3,"file":"panel-month-range.js","sources":["../../../../../../../packages/components/date-picker/src/date-picker-com/panel-month-range.vue"],"sourcesContent":["<template>\n <div\n :class=\"[\n ppNs.b(),\n drpNs.b(),\n {\n 'has-sidebar': Boolean($slots.sidebar) || hasShortcuts,\n },\n ]\"\n >\n <div :class=\"ppNs.e('body-wrapper')\">\n <slot name=\"sidebar\" :class=\"ppNs.e('sidebar')\" />\n <div v-if=\"hasShortcuts\" :class=\"ppNs.e('sidebar')\">\n <button\n v-for=\"(shortcut, key) in shortcuts\"\n :key=\"key\"\n type=\"button\"\n :class=\"ppNs.e('shortcut')\"\n @click=\"handleShortcutClick(shortcut)\"\n >\n {{ shortcut.text }}\n </button>\n </div>\n <div :class=\"ppNs.e('body')\">\n <div :class=\"[ppNs.e('content'), drpNs.e('content')]\" class=\"is-left\">\n <div :class=\"drpNs.e('header')\">\n <button\n type=\"button\"\n :class=\"ppNs.e('icon-btn')\"\n class=\"d-arrow-left\"\n @click=\"leftPrevYear\"\n >\n <slot name=\"prev-year\">\n <el-icon><d-arrow-left /></el-icon>\n </slot>\n </button>\n <button\n v-if=\"unlinkPanels\"\n type=\"button\"\n :disabled=\"!enableYearArrow\"\n :class=\"[\n ppNs.e('icon-btn'),\n { [ppNs.is('disabled')]: !enableYearArrow },\n ]\"\n class=\"d-arrow-right\"\n @click=\"leftNextYear\"\n >\n <slot name=\"next-year\">\n <el-icon><d-arrow-right /></el-icon>\n </slot>\n </button>\n <div>{{ leftLabel }}</div>\n </div>\n <month-table\n selection-mode=\"range\"\n :date=\"leftDate\"\n :min-date=\"minDate\"\n :max-date=\"maxDate\"\n :range-state=\"rangeState\"\n :disabled-date=\"disabledDate\"\n @changerange=\"handleChangeRange\"\n @pick=\"handleRangePick\"\n @select=\"onSelect\"\n />\n </div>\n <div :class=\"[ppNs.e('content'), drpNs.e('content')]\" class=\"is-right\">\n <div :class=\"drpNs.e('header')\">\n <button\n v-if=\"unlinkPanels\"\n type=\"button\"\n :disabled=\"!enableYearArrow\"\n :class=\"[ppNs.e('icon-btn'), { 'is-disabled': !enableYearArrow }]\"\n class=\"d-arrow-left\"\n @click=\"rightPrevYear\"\n >\n <slot name=\"prev-year\">\n <el-icon><d-arrow-left /></el-icon>\n </slot>\n </button>\n <button\n type=\"button\"\n :class=\"ppNs.e('icon-btn')\"\n class=\"d-arrow-right\"\n @click=\"rightNextYear\"\n >\n <slot name=\"next-year\">\n <el-icon><d-arrow-right /></el-icon>\n </slot>\n </button>\n <div>{{ rightLabel }}</div>\n </div>\n <month-table\n selection-mode=\"range\"\n :date=\"rightDate\"\n :min-date=\"minDate\"\n :max-date=\"maxDate\"\n :range-state=\"rangeState\"\n :disabled-date=\"disabledDate\"\n @changerange=\"handleChangeRange\"\n @pick=\"handleRangePick\"\n @select=\"onSelect\"\n />\n </div>\n </div>\n </div>\n </div>\n</template>\n\n<script lang=\"ts\" setup>\nimport { computed, inject, ref, toRef, unref } from 'vue'\nimport dayjs from 'dayjs'\nimport ElIcon from '@element-plus/components/icon'\nimport { isArray } from '@element-plus/utils'\nimport { useLocale } from '@element-plus/hooks'\nimport { DArrowLeft, DArrowRight } from '@element-plus/icons-vue'\nimport { getDefaultValue, isValidRange } from '../utils'\nimport {\n panelMonthRangeEmits,\n panelMonthRangeProps,\n} from '../props/panel-month-range'\nimport { useMonthRangeHeader } from '../composables/use-month-range-header'\nimport { useRangePicker } from '../composables/use-range-picker'\nimport MonthTable from './basic-month-table.vue'\n\nimport type { Dayjs } from 'dayjs'\n\ndefineOptions({\n name: 'DatePickerMonthRange',\n})\n\nconst props = defineProps(panelMonthRangeProps)\nconst emit = defineEmits(panelMonthRangeEmits)\nconst unit = 'year'\n\nconst { lang } = useLocale()\nconst pickerBase = inject('EP_PICKER_BASE') as any\nconst { shortcuts, disabledDate } = pickerBase.props\nconst format = toRef(pickerBase.props, 'format')\nconst defaultValue = toRef(pickerBase.props, 'defaultValue')\nconst leftDate = ref(dayjs().locale(lang.value))\nconst rightDate = ref(dayjs().locale(lang.value).add(1, unit))\n\nconst {\n minDate,\n maxDate,\n rangeState,\n ppNs,\n drpNs,\n\n handleChangeRange,\n handleRangeConfirm,\n handleShortcutClick,\n onSelect,\n} = useRangePicker(props, {\n defaultValue,\n leftDate,\n rightDate,\n unit,\n onParsedValueChanged,\n})\n\nconst hasShortcuts = computed(() => !!shortcuts.length)\n\nconst {\n leftPrevYear,\n rightNextYear,\n leftNextYear,\n rightPrevYear,\n leftLabel,\n rightLabel,\n leftYear,\n rightYear,\n} = useMonthRangeHeader({\n unlinkPanels: toRef(props, 'unlinkPanels'),\n leftDate,\n rightDate,\n})\n\nconst enableYearArrow = computed(() => {\n return props.unlinkPanels && rightYear.value > leftYear.value + 1\n})\n\ntype RangePickValue = {\n minDate: Dayjs\n maxDate: Dayjs\n}\n\nconst handleRangePick = (val: RangePickValue, close = true) => {\n // const defaultTime = props.defaultTime || []\n // const minDate_ = modifyWithTimeString(val.minDate, defaultTime[0])\n // const maxDate_ = modifyWithTimeString(val.maxDate, defaultTime[1])\n // todo\n const minDate_ = val.minDate\n const maxDate_ = val.maxDate\n if (maxDate.value === maxDate_ && minDate.value === minDate_) {\n return\n }\n emit('calendar-change', [minDate_.toDate(), maxDate_ && maxDate_.toDate()])\n maxDate.value = maxDate_\n minDate.value = minDate_\n\n if (!close) return\n handleRangeConfirm()\n}\n\nconst handleClear = () => {\n leftDate.value = getDefaultValue(unref(defaultValue), {\n lang: unref(lang),\n unit: 'year',\n unlinkPanels: props.unlinkPanels,\n })[0]\n rightDate.value = leftDate.value.add(1, 'year')\n emit('pick', null)\n}\n\nconst formatToString = (value: Dayjs | Dayjs[]) => {\n return isArray(value)\n ? value.map((_) => _.format(format.value))\n : value.format(format.value)\n}\n\nconst parseUserInput = (value: Dayjs | Dayjs[]) => {\n return isArray(value)\n ? value.map((_) => dayjs(_, format.value).locale(lang.value))\n : dayjs(value, format.value).locale(lang.value)\n}\n\nfunction onParsedValueChanged(\n minDate: Dayjs | undefined,\n maxDate: Dayjs | undefined\n) {\n if (props.unlinkPanels && maxDate) {\n const minDateYear = minDate?.year() || 0\n const maxDateYear = maxDate.year()\n rightDate.value =\n minDateYear === maxDateYear ? maxDate.add(1, unit) : maxDate\n } else {\n rightDate.value = leftDate.value.add(1, unit)\n }\n}\n\nemit('set-picker-option', ['isValidValue', isValidRange])\nemit('set-picker-option', ['formatToString', formatToString])\nemit('set-picker-option', ['parseUserInput', parseUserInput])\nemit('set-picker-option', ['handleClear', handleClear])\n</script>\n"],"names":["useLocale","inject","toRef","ref","dayjs","useRangePicker","computed","useMonthRangeHeader","getDefaultValue","unref","isArray","minDate","maxDate","isValidRange"],"mappings":"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"}
1
+ {"version":3,"file":"panel-month-range.js","sources":["../../../../../../../packages/components/date-picker/src/date-picker-com/panel-month-range.vue"],"sourcesContent":["<template>\n <div\n :class=\"[\n ppNs.b(),\n drpNs.b(),\n {\n 'has-sidebar': Boolean($slots.sidebar) || hasShortcuts,\n },\n ]\"\n >\n <div :class=\"ppNs.e('body-wrapper')\">\n <slot name=\"sidebar\" :class=\"ppNs.e('sidebar')\" />\n <div v-if=\"hasShortcuts\" :class=\"ppNs.e('sidebar')\">\n <button\n v-for=\"(shortcut, key) in shortcuts\"\n :key=\"key\"\n type=\"button\"\n :class=\"ppNs.e('shortcut')\"\n @click=\"handleShortcutClick(shortcut)\"\n >\n {{ shortcut.text }}\n </button>\n </div>\n <div :class=\"ppNs.e('body')\">\n <div :class=\"[ppNs.e('content'), drpNs.e('content')]\" class=\"is-left\">\n <div :class=\"drpNs.e('header')\">\n <button\n type=\"button\"\n :class=\"ppNs.e('icon-btn')\"\n class=\"d-arrow-left\"\n @click=\"leftPrevYear\"\n >\n <slot name=\"prev-year\">\n <el-icon><d-arrow-left /></el-icon>\n </slot>\n </button>\n <button\n v-if=\"unlinkPanels\"\n type=\"button\"\n :disabled=\"!enableYearArrow\"\n :class=\"[\n ppNs.e('icon-btn'),\n { [ppNs.is('disabled')]: !enableYearArrow },\n ]\"\n class=\"d-arrow-right\"\n @click=\"leftNextYear\"\n >\n <slot name=\"next-year\">\n <el-icon><d-arrow-right /></el-icon>\n </slot>\n </button>\n <div>{{ leftLabel }}</div>\n </div>\n <month-table\n selection-mode=\"range\"\n :date=\"leftDate\"\n :min-date=\"minDate\"\n :max-date=\"maxDate\"\n :range-state=\"rangeState\"\n :disabled-date=\"disabledDate\"\n @changerange=\"handleChangeRange\"\n @pick=\"handleRangePick\"\n @select=\"onSelect\"\n />\n </div>\n <div :class=\"[ppNs.e('content'), drpNs.e('content')]\" class=\"is-right\">\n <div :class=\"drpNs.e('header')\">\n <button\n v-if=\"unlinkPanels\"\n type=\"button\"\n :disabled=\"!enableYearArrow\"\n :class=\"[ppNs.e('icon-btn'), { 'is-disabled': !enableYearArrow }]\"\n class=\"d-arrow-left\"\n @click=\"rightPrevYear\"\n >\n <slot name=\"prev-year\">\n <el-icon><d-arrow-left /></el-icon>\n </slot>\n </button>\n <button\n type=\"button\"\n :class=\"ppNs.e('icon-btn')\"\n class=\"d-arrow-right\"\n @click=\"rightNextYear\"\n >\n <slot name=\"next-year\">\n <el-icon><d-arrow-right /></el-icon>\n </slot>\n </button>\n <div>{{ rightLabel }}</div>\n </div>\n <month-table\n selection-mode=\"range\"\n :date=\"rightDate\"\n :min-date=\"minDate\"\n :max-date=\"maxDate\"\n :range-state=\"rangeState\"\n :disabled-date=\"disabledDate\"\n @changerange=\"handleChangeRange\"\n @pick=\"handleRangePick\"\n @select=\"onSelect\"\n />\n </div>\n </div>\n </div>\n </div>\n</template>\n\n<script lang=\"ts\" setup>\nimport { computed, inject, ref, toRef, unref } from 'vue'\nimport dayjs from 'dayjs'\nimport ElIcon from '@element-plus/components/icon'\nimport { isArray } from '@element-plus/utils'\nimport { useLocale } from '@element-plus/hooks'\nimport { DArrowLeft, DArrowRight } from '@element-plus/icons-vue'\nimport {\n correctlyParseUserInput,\n getDefaultValue,\n isValidRange,\n} from '../utils'\nimport {\n panelMonthRangeEmits,\n panelMonthRangeProps,\n} from '../props/panel-month-range'\nimport { useMonthRangeHeader } from '../composables/use-month-range-header'\nimport { useRangePicker } from '../composables/use-range-picker'\nimport MonthTable from './basic-month-table.vue'\n\nimport type { Dayjs } from 'dayjs'\n\ndefineOptions({\n name: 'DatePickerMonthRange',\n})\n\nconst props = defineProps(panelMonthRangeProps)\nconst emit = defineEmits(panelMonthRangeEmits)\nconst unit = 'year'\n\nconst { lang } = useLocale()\nconst pickerBase = inject('EP_PICKER_BASE') as any\nconst { shortcuts, disabledDate } = pickerBase.props\nconst format = toRef(pickerBase.props, 'format')\nconst defaultValue = toRef(pickerBase.props, 'defaultValue')\nconst leftDate = ref(dayjs().locale(lang.value))\nconst rightDate = ref(dayjs().locale(lang.value).add(1, unit))\n\nconst {\n minDate,\n maxDate,\n rangeState,\n ppNs,\n drpNs,\n\n handleChangeRange,\n handleRangeConfirm,\n handleShortcutClick,\n onSelect,\n} = useRangePicker(props, {\n defaultValue,\n leftDate,\n rightDate,\n unit,\n onParsedValueChanged,\n})\n\nconst hasShortcuts = computed(() => !!shortcuts.length)\n\nconst {\n leftPrevYear,\n rightNextYear,\n leftNextYear,\n rightPrevYear,\n leftLabel,\n rightLabel,\n leftYear,\n rightYear,\n} = useMonthRangeHeader({\n unlinkPanels: toRef(props, 'unlinkPanels'),\n leftDate,\n rightDate,\n})\n\nconst enableYearArrow = computed(() => {\n return props.unlinkPanels && rightYear.value > leftYear.value + 1\n})\n\ntype RangePickValue = {\n minDate: Dayjs\n maxDate: Dayjs\n}\n\nconst handleRangePick = (val: RangePickValue, close = true) => {\n // const defaultTime = props.defaultTime || []\n // const minDate_ = modifyWithTimeString(val.minDate, defaultTime[0])\n // const maxDate_ = modifyWithTimeString(val.maxDate, defaultTime[1])\n // todo\n const minDate_ = val.minDate\n const maxDate_ = val.maxDate\n if (maxDate.value === maxDate_ && minDate.value === minDate_) {\n return\n }\n emit('calendar-change', [minDate_.toDate(), maxDate_ && maxDate_.toDate()])\n maxDate.value = maxDate_\n minDate.value = minDate_\n\n if (!close) return\n handleRangeConfirm()\n}\n\nconst handleClear = () => {\n leftDate.value = getDefaultValue(unref(defaultValue), {\n lang: unref(lang),\n unit: 'year',\n unlinkPanels: props.unlinkPanels,\n })[0]\n rightDate.value = leftDate.value.add(1, 'year')\n emit('pick', null)\n}\n\nconst formatToString = (value: Dayjs | Dayjs[]) => {\n return isArray(value)\n ? value.map((_) => _.format(format.value))\n : value.format(format.value)\n}\n\nconst parseUserInput = (value: Dayjs | Dayjs[]) => {\n return correctlyParseUserInput(value, format.value, lang.value)\n}\n\nfunction onParsedValueChanged(\n minDate: Dayjs | undefined,\n maxDate: Dayjs | undefined\n) {\n if (props.unlinkPanels && maxDate) {\n const minDateYear = minDate?.year() || 0\n const maxDateYear = maxDate.year()\n rightDate.value =\n minDateYear === maxDateYear ? maxDate.add(1, unit) : maxDate\n } else {\n rightDate.value = leftDate.value.add(1, unit)\n }\n}\n\nemit('set-picker-option', ['isValidValue', isValidRange])\nemit('set-picker-option', ['formatToString', formatToString])\nemit('set-picker-option', ['parseUserInput', parseUserInput])\nemit('set-picker-option', ['handleClear', handleClear])\n</script>\n"],"names":["useLocale","inject","toRef","ref","dayjs","useRangePicker","computed","useMonthRangeHeader","getDefaultValue","unref","isArray","correctlyParseUserInput","minDate","maxDate","isValidRange"],"mappings":";;;;;;;;;;;;;;;;;;;;;;uCAkIc,CAAA;AAAA,EACZ,IAAM,EAAA,sBAAA;AACR;;;;;;;AAMA,IAAM,MAAA,EAAE,IAAK,EAAA,GAAIA,eAAU,EAAA,CAAA;AAC3B,IAAM,MAAA,UAAA,GAAaC,WAAO,gBAAgB,CAAA,CAAA;AAC1C,IAAA,MAAM,EAAE,SAAA,EAAW,YAAa,EAAA,GAAI,UAAW,CAAA,KAAA,CAAA;AAC/C,IAAA,MAAM,MAAS,GAAAC,SAAA,CAAM,UAAW,CAAA,KAAA,EAAO,QAAQ,CAAA,CAAA;AAC/C,IAAA,MAAM,YAAe,GAAAA,SAAA,CAAM,UAAW,CAAA,KAAA,EAAO,cAAc,CAAA,CAAA;AAC3D,IAAA,MAAM,WAAWC,OAAI,CAAAC,yBAAA,GAAQ,MAAO,CAAA,IAAA,CAAK,KAAK,CAAC,CAAA,CAAA;AAC/C,IAAM,MAAA,SAAA,GAAYD,OAAI,CAAAC,yBAAA,EAAQ,CAAA,MAAA,CAAO,IAAK,CAAA,KAAK,CAAE,CAAA,GAAA,CAAI,CAAG,EAAA,IAAI,CAAC,CAAA,CAAA;AAE7D,IAAM,MAAA;AAAA,MACJ,OAAA;AAAA,MACA,OAAA;AAAA,MACA,UAAA;AAAA,MACA,IAAA;AAAA,MACA,KAAA;AAAA,MAEA,iBAAA;AAAA,MACA,kBAAA;AAAA,MACA,mBAAA;AAAA,MACA,QAAA;AAAA,KACF,GAAIC,8BAAe,KAAO,EAAA;AAAA,MACxB,YAAA;AAAA,MACA,QAAA;AAAA,MACA,SAAA;AAAA,MACA,IAAA;AAAA,MACA,oBAAA;AAAA,KACD,CAAA,CAAA;AAED,IAAA,MAAM,eAAeC,YAAS,CAAA,MAAM,CAAC,CAAC,UAAU,MAAM,CAAA,CAAA;AAEtD,IAAM,MAAA;AAAA,MACJ,YAAA;AAAA,MACA,aAAA;AAAA,MACA,YAAA;AAAA,MACA,aAAA;AAAA,MACA,SAAA;AAAA,MACA,UAAA;AAAA,MACA,QAAA;AAAA,MACA,SAAA;AAAA,QACEC,uCAAoB,CAAA;AAAA,MACtB,YAAA,EAAcL,SAAM,CAAA,KAAA,EAAO,cAAc,CAAA;AAAA,MACzC,QAAA;AAAA,MACA,SAAA;AAAA,KACD,CAAA,CAAA;AAED,IAAM,MAAA,eAAA,GAAkBI,aAAS,MAAM;AACrC,MAAA,OAAO,KAAM,CAAA,YAAA,IAAgB,SAAU,CAAA,KAAA,GAAQ,SAAS,KAAQ,GAAA,CAAA,CAAA;AAAA,KACjE,CAAA,CAAA;AAOD,IAAA,MAAM,eAAkB,GAAA,CAAC,GAAqB,EAAA,KAAA,GAAQ,IAAS,KAAA;AAK7D,MAAA,MAAM,WAAW,GAAI,CAAA,OAAA,CAAA;AACrB,MAAA,MAAM,WAAW,GAAI,CAAA,OAAA,CAAA;AACrB,MAAA,IAAI,OAAQ,CAAA,KAAA,KAAU,QAAY,IAAA,OAAA,CAAQ,UAAU,QAAU,EAAA;AAC5D,QAAA,OAAA;AAAA,OACF;AACA,MAAK,IAAA,CAAA,iBAAA,EAAmB,CAAC,QAAS,CAAA,MAAA,IAAU,QAAY,IAAA,QAAA,CAAS,MAAO,EAAC,CAAC,CAAA,CAAA;AAC1E,MAAA,OAAA,CAAQ,KAAQ,GAAA,QAAA,CAAA;AAChB,MAAA,OAAA,CAAQ,KAAQ,GAAA,QAAA,CAAA;AAEhB,MAAA,IAAI,CAAC,KAAO;AACZ,QAAmB,OAAA;AAAA,MACrB,kBAAA,EAAA,CAAA;AAEA,KAAA,CAAA;AACE,IAAA,MAAA,WAAiB,GAAA,MAAA;AAAqC,MACpD,QAAM,MAAM,GAAIE,qBAAA,CAAAC,SAAA,CAAA,YAAA,CAAA,EAAA;AAAA,QAChB,IAAM,EAAAA,SAAA,CAAA,IAAA,CAAA;AAAA,QACN;AAAoB,oBAClB,EAAA,KAAA,CAAA,YAAA;AACJ,OAAA,CAAA,CAAA,CAAA,CAAA,CAAA;AACA,MAAA,eAAiB,GAAA,QAAA,CAAA,KAAA,CAAA,GAAA,CAAA,CAAA,EAAA,MAAA,CAAA,CAAA;AAAA,MACnB,IAAA,CAAA,MAAA,EAAA,IAAA,CAAA,CAAA;AAEA,KAAM,CAAA;AACJ,IAAA,MAAA,cAAoB,GAAA,CAAA,KACV,KAAA;AACmB,MAC/B,OAAAC,cAAA,CAAA,KAAA,CAAA,GAAA,KAAA,CAAA,GAAA,CAAA,CAAA,CAAA,KAAA,CAAA,CAAA,MAAA,CAAA,MAAA,CAAA,KAAA,CAAA,CAAA,GAAA,KAAA,CAAA,MAAA,CAAA,MAAA,CAAA,KAAA,CAAA,CAAA;AAEA,KAAM,CAAA;AACJ,IAAA,MAAA,cAA+B,GAAA,CAAA,KAAA,KAAA;AAA+B,MAChE,OAAAC,6BAAA,CAAA,KAAA,EAAA,MAAA,CAAA,KAAA,EAAA,IAAA,CAAA,KAAA,CAAA,CAAA;AAEA,KAAS,CAAA;AAIP,IAAI,SAAA,oBAA+B,CAAA,QAAA,EAAA,QAAA,EAAA;AACjC,MAAM,IAAA,KAAA,CAAA,YAAcC,IAAS,QAAA,EAAA;AAC7B,QAAM,MAAA,WAAA,GAAcC,SAAQ,IAAK,IAAA,GAAA,KAAA,CAAA,GAAA,QAAA,CAAA,IAAA,EAAA,KAAA,CAAA,CAAA;AACjC,QAAA,MAAA,cACkB,QAAA,CAAA,IAAA,EAAA,CAAA;AAAqC,QAClD,SAAA,CAAA,KAAA,GAAA,WAAA,KAAA,WAAA,GAAA,QAAA,CAAA,GAAA,CAAA,CAAA,EAAA,IAAA,CAAA,GAAA,QAAA,CAAA;AACL,OAAA,MAAA;AAA4C,QAC9C,SAAA,CAAA,KAAA,GAAA,QAAA,CAAA,KAAA,CAAA,GAAA,CAAA,CAAA,EAAA,IAAA,CAAA,CAAA;AAAA,OACF;AAEA,KAAA;AACA,IAAA,IAAA,CAAK,mBAAqB,EAAA,CAAC,cAAkB,EAAAC,kBAAA,CAAA,CAAA,CAAA;AAC7C,IAAA,IAAA,CAAK,mBAAqB,EAAA,CAAC,gBAAkB,EAAA,cAAc,CAAC,CAAA,CAAA;AAC5D,IAAA,IAAA,CAAK,mBAAqB,EAAA,CAAC,gBAAe,EAAA,cAAY,CAAA,CAAA,CAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;"}
@@ -166,7 +166,7 @@ const _sfc_main = /* @__PURE__ */ vue.defineComponent({
166
166
  }
167
167
  }, { immediate: true });
168
168
  const parseUserInput = (value) => {
169
- return shared.isArray(value) ? value.map((_) => dayjs__default["default"](_, format.value).locale(lang.value)) : dayjs__default["default"](value, format.value).locale(lang.value);
169
+ return utils.correctlyParseUserInput(value, format.value, lang.value);
170
170
  };
171
171
  const formatToString = (value) => {
172
172
  return shared.isArray(value) ? value.map((day) => day.format(format.value)) : value.format(format.value);
@@ -1 +1 @@
1
- {"version":3,"file":"panel-year-range.js","sources":["../../../../../../../packages/components/date-picker/src/date-picker-com/panel-year-range.vue"],"sourcesContent":["<template>\n <div :class=\"panelKls\">\n <div :class=\"ppNs.e('body-wrapper')\">\n <slot name=\"sidebar\" :class=\"ppNs.e('sidebar')\" />\n <div v-if=\"hasShortcuts\" :class=\"ppNs.e('sidebar')\">\n <button\n v-for=\"(shortcut, key) in shortcuts\"\n :key=\"key\"\n type=\"button\"\n :class=\"ppNs.e('shortcut')\"\n @click=\"handleShortcutClick(shortcut)\"\n >\n {{ shortcut.text }}\n </button>\n </div>\n <div :class=\"ppNs.e('body')\">\n <div :class=\"leftPanelKls.content\">\n <div :class=\"drpNs.e('header')\">\n <button\n type=\"button\"\n :class=\"leftPanelKls.arrowLeftBtn\"\n @click=\"leftPrevYear\"\n >\n <slot name=\"prev-year\">\n <el-icon><d-arrow-left /></el-icon>\n </slot>\n </button>\n <button\n v-if=\"unlinkPanels\"\n type=\"button\"\n :disabled=\"!enableYearArrow\"\n :class=\"leftPanelKls.arrowRightBtn\"\n @click=\"leftNextYear\"\n >\n <slot name=\"next-year\">\n <el-icon><d-arrow-right /></el-icon>\n </slot>\n </button>\n <div>{{ leftLabel }}</div>\n </div>\n <year-table\n selection-mode=\"range\"\n :date=\"leftDate\"\n :min-date=\"minDate\"\n :max-date=\"maxDate\"\n :range-state=\"rangeState\"\n :disabled-date=\"disabledDate\"\n @changerange=\"handleChangeRange\"\n @pick=\"handleRangePick\"\n @select=\"onSelect\"\n />\n </div>\n <div :class=\"rightPanelKls.content\">\n <div :class=\"drpNs.e('header')\">\n <button\n v-if=\"unlinkPanels\"\n type=\"button\"\n :disabled=\"!enableYearArrow\"\n :class=\"rightPanelKls.arrowLeftBtn\"\n @click=\"rightPrevYear\"\n >\n <slot name=\"prev-year\">\n <el-icon><d-arrow-left /></el-icon>\n </slot>\n </button>\n <button\n type=\"button\"\n :class=\"rightPanelKls.arrowRightBtn\"\n @click=\"rightNextYear\"\n >\n <slot name=\"next-year\">\n <el-icon><d-arrow-right /></el-icon>\n </slot>\n </button>\n <div>{{ rightLabel }}</div>\n </div>\n <year-table\n selection-mode=\"range\"\n :date=\"rightDate\"\n :min-date=\"minDate\"\n :max-date=\"maxDate\"\n :range-state=\"rangeState\"\n :disabled-date=\"disabledDate\"\n @changerange=\"handleChangeRange\"\n @pick=\"handleRangePick\"\n @select=\"onSelect\"\n />\n </div>\n </div>\n </div>\n </div>\n</template>\n<script lang=\"ts\" setup>\nimport { computed, inject, ref, toRef, useSlots, watch } from 'vue'\nimport dayjs from 'dayjs'\nimport { isArray } from '@element-plus/utils'\nimport { DArrowLeft, DArrowRight } from '@element-plus/icons-vue'\nimport ElIcon from '@element-plus/components/icon'\nimport { useLocale, useNamespace } from '@element-plus/hooks'\nimport {\n panelYearRangeEmits,\n panelYearRangeProps,\n} from '../props/panel-year-range'\nimport { useShortcut } from '../composables/use-shortcut'\nimport { useYearRangeHeader } from '../composables/use-year-range-header'\nimport { isValidRange } from '../utils'\nimport { ROOT_PICKER_INJECTION_KEY } from '../constants'\nimport YearTable from './basic-year-table.vue'\n\nimport type { Dayjs } from 'dayjs'\nimport type { RangeState } from '../props/shared'\n\ndefineOptions({\n name: 'DatePickerYearRange',\n})\n\nconst props = defineProps(panelYearRangeProps)\nconst emit = defineEmits(panelYearRangeEmits)\n\nconst { lang } = useLocale()\nconst leftDate = ref(dayjs().locale(lang.value))\nconst rightDate = ref(leftDate.value.add(10, 'year'))\nconst { pickerNs: ppNs } = inject(ROOT_PICKER_INJECTION_KEY)!\nconst drpNs = useNamespace('date-range-picker')\n\nconst hasShortcuts = computed(() => !!shortcuts.length)\n\nconst panelKls = computed(() => [\n ppNs.b(),\n drpNs.b(),\n {\n 'has-sidebar': Boolean(useSlots().sidebar) || hasShortcuts.value,\n },\n])\n\nconst leftPanelKls = computed(() => {\n return {\n content: [ppNs.e('content'), drpNs.e('content'), 'is-left'],\n arrowLeftBtn: [ppNs.e('icon-btn'), 'd-arrow-left'],\n arrowRightBtn: [\n ppNs.e('icon-btn'),\n { [ppNs.is('disabled')]: !enableYearArrow.value },\n 'd-arrow-right',\n ],\n }\n})\n\nconst rightPanelKls = computed(() => {\n return {\n content: [ppNs.e('content'), drpNs.e('content'), 'is-right'],\n arrowLeftBtn: [\n ppNs.e('icon-btn'),\n { 'is-disabled': !enableYearArrow.value },\n 'd-arrow-left',\n ],\n arrowRightBtn: [ppNs.e('icon-btn'), 'd-arrow-right'],\n }\n})\n\nconst handleShortcutClick = useShortcut(lang)\n\nconst {\n leftPrevYear,\n rightNextYear,\n leftNextYear,\n rightPrevYear,\n leftLabel,\n rightLabel,\n leftYear,\n rightYear,\n} = useYearRangeHeader({\n unlinkPanels: toRef(props, 'unlinkPanels'),\n leftDate,\n rightDate,\n})\n\nconst enableYearArrow = computed(() => {\n return props.unlinkPanels && rightYear.value > leftYear.value + 1\n})\n\nconst minDate = ref<Dayjs>()\nconst maxDate = ref<Dayjs>()\n\nconst rangeState = ref<RangeState>({\n endDate: null,\n selecting: false,\n})\n\nconst handleChangeRange = (val: RangeState) => {\n rangeState.value = val\n}\n\ntype RangePickValue = {\n minDate: Dayjs\n maxDate: Dayjs\n}\nconst handleRangePick = (val: RangePickValue, close = true) => {\n const minDate_ = val.minDate\n const maxDate_ = val.maxDate\n if (maxDate.value === maxDate_ && minDate.value === minDate_) {\n return\n }\n emit('calendar-change', [minDate_.toDate(), maxDate_ && maxDate_.toDate()])\n maxDate.value = maxDate_\n minDate.value = minDate_\n\n if (!close) return\n handleConfirm()\n}\n\nconst handleConfirm = (visible = false) => {\n if (isValidRange([minDate.value, maxDate.value])) {\n emit('pick', [minDate.value, maxDate.value], visible)\n }\n}\n\nconst onSelect = (selecting: boolean) => {\n rangeState.value.selecting = selecting\n if (!selecting) {\n rangeState.value.endDate = null\n }\n}\n\nconst pickerBase = inject('EP_PICKER_BASE') as any\nconst { shortcuts, disabledDate } = pickerBase.props\nconst format = toRef(pickerBase.props, 'format')\nconst defaultValue = toRef(pickerBase.props, 'defaultValue')\nconst unit = 'year'\n\nconst getDefaultValue = () => {\n let start: Dayjs\n if (isArray(defaultValue.value)) {\n const left = dayjs(defaultValue.value[0])\n let right = dayjs(defaultValue.value[1])\n if (!props.unlinkPanels) {\n right = left.add(10, unit)\n }\n return [left, right]\n } else if (defaultValue.value) {\n start = dayjs(defaultValue.value)\n } else {\n start = dayjs()\n }\n start = start.locale(lang.value)\n return [start, start.add(10, unit)]\n}\n\nwatch(\n () => defaultValue.value,\n (val) => {\n if (val) {\n const defaultArr = getDefaultValue()\n leftDate.value = defaultArr[0]\n rightDate.value = defaultArr[1]\n }\n },\n { immediate: true }\n)\n\nwatch(\n () => props.parsedValue,\n (newVal) => {\n if (newVal && newVal.length === 2) {\n minDate.value = newVal[0]\n maxDate.value = newVal[1]\n leftDate.value = minDate.value\n if (props.unlinkPanels && maxDate.value) {\n const minDateYear = minDate.value.year()\n const maxDateYear = maxDate.value.year()\n rightDate.value =\n minDateYear === maxDateYear\n ? maxDate.value.add(10, 'year')\n : maxDate.value\n } else {\n rightDate.value = leftDate.value.add(10, 'year')\n }\n } else {\n const defaultArr = getDefaultValue()\n minDate.value = undefined\n maxDate.value = undefined\n leftDate.value = defaultArr[0]\n rightDate.value = defaultArr[1]\n }\n },\n { immediate: true }\n)\n\nconst parseUserInput = (value: Dayjs | Dayjs[]) => {\n return isArray(value)\n ? value.map((_) => dayjs(_, format.value).locale(lang.value))\n : dayjs(value, format.value).locale(lang.value)\n}\n\nconst formatToString = (value: Dayjs[] | Dayjs) => {\n return isArray(value)\n ? value.map((day) => day.format(format.value))\n : value.format(format.value)\n}\n\nconst isValidValue = (date: [Dayjs, Dayjs]) => {\n return (\n isValidRange(date) &&\n (disabledDate\n ? !disabledDate(date[0].toDate()) && !disabledDate(date[1].toDate())\n : true)\n )\n}\n\nconst handleClear = () => {\n const defaultArr = getDefaultValue()\n leftDate.value = defaultArr[0]\n rightDate.value = defaultArr[1]\n maxDate.value = undefined\n minDate.value = undefined\n emit('pick', null)\n}\n\nemit('set-picker-option', ['isValidValue', isValidValue])\nemit('set-picker-option', ['parseUserInput', parseUserInput])\nemit('set-picker-option', ['formatToString', formatToString])\nemit('set-picker-option', ['handleClear', handleClear])\n</script>\n"],"names":["useLocale","ref","dayjs","inject","ROOT_PICKER_INJECTION_KEY","useNamespace","computed","useSlots","useShortcut","useYearRangeHeader","toRef","isValidRange","isArray","watch","_createElementBlock","_normalizeClass","_unref","_createElementVNode"],"mappings":"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"}
1
+ {"version":3,"file":"panel-year-range.js","sources":["../../../../../../../packages/components/date-picker/src/date-picker-com/panel-year-range.vue"],"sourcesContent":["<template>\n <div :class=\"panelKls\">\n <div :class=\"ppNs.e('body-wrapper')\">\n <slot name=\"sidebar\" :class=\"ppNs.e('sidebar')\" />\n <div v-if=\"hasShortcuts\" :class=\"ppNs.e('sidebar')\">\n <button\n v-for=\"(shortcut, key) in shortcuts\"\n :key=\"key\"\n type=\"button\"\n :class=\"ppNs.e('shortcut')\"\n @click=\"handleShortcutClick(shortcut)\"\n >\n {{ shortcut.text }}\n </button>\n </div>\n <div :class=\"ppNs.e('body')\">\n <div :class=\"leftPanelKls.content\">\n <div :class=\"drpNs.e('header')\">\n <button\n type=\"button\"\n :class=\"leftPanelKls.arrowLeftBtn\"\n @click=\"leftPrevYear\"\n >\n <slot name=\"prev-year\">\n <el-icon><d-arrow-left /></el-icon>\n </slot>\n </button>\n <button\n v-if=\"unlinkPanels\"\n type=\"button\"\n :disabled=\"!enableYearArrow\"\n :class=\"leftPanelKls.arrowRightBtn\"\n @click=\"leftNextYear\"\n >\n <slot name=\"next-year\">\n <el-icon><d-arrow-right /></el-icon>\n </slot>\n </button>\n <div>{{ leftLabel }}</div>\n </div>\n <year-table\n selection-mode=\"range\"\n :date=\"leftDate\"\n :min-date=\"minDate\"\n :max-date=\"maxDate\"\n :range-state=\"rangeState\"\n :disabled-date=\"disabledDate\"\n @changerange=\"handleChangeRange\"\n @pick=\"handleRangePick\"\n @select=\"onSelect\"\n />\n </div>\n <div :class=\"rightPanelKls.content\">\n <div :class=\"drpNs.e('header')\">\n <button\n v-if=\"unlinkPanels\"\n type=\"button\"\n :disabled=\"!enableYearArrow\"\n :class=\"rightPanelKls.arrowLeftBtn\"\n @click=\"rightPrevYear\"\n >\n <slot name=\"prev-year\">\n <el-icon><d-arrow-left /></el-icon>\n </slot>\n </button>\n <button\n type=\"button\"\n :class=\"rightPanelKls.arrowRightBtn\"\n @click=\"rightNextYear\"\n >\n <slot name=\"next-year\">\n <el-icon><d-arrow-right /></el-icon>\n </slot>\n </button>\n <div>{{ rightLabel }}</div>\n </div>\n <year-table\n selection-mode=\"range\"\n :date=\"rightDate\"\n :min-date=\"minDate\"\n :max-date=\"maxDate\"\n :range-state=\"rangeState\"\n :disabled-date=\"disabledDate\"\n @changerange=\"handleChangeRange\"\n @pick=\"handleRangePick\"\n @select=\"onSelect\"\n />\n </div>\n </div>\n </div>\n </div>\n</template>\n<script lang=\"ts\" setup>\nimport { computed, inject, ref, toRef, useSlots, watch } from 'vue'\nimport dayjs from 'dayjs'\nimport { isArray } from '@element-plus/utils'\nimport { DArrowLeft, DArrowRight } from '@element-plus/icons-vue'\nimport ElIcon from '@element-plus/components/icon'\nimport { useLocale, useNamespace } from '@element-plus/hooks'\nimport {\n panelYearRangeEmits,\n panelYearRangeProps,\n} from '../props/panel-year-range'\nimport { useShortcut } from '../composables/use-shortcut'\nimport { useYearRangeHeader } from '../composables/use-year-range-header'\nimport { correctlyParseUserInput, isValidRange } from '../utils'\nimport { ROOT_PICKER_INJECTION_KEY } from '../constants'\nimport YearTable from './basic-year-table.vue'\n\nimport type { Dayjs } from 'dayjs'\nimport type { RangeState } from '../props/shared'\n\ndefineOptions({\n name: 'DatePickerYearRange',\n})\n\nconst props = defineProps(panelYearRangeProps)\nconst emit = defineEmits(panelYearRangeEmits)\n\nconst { lang } = useLocale()\nconst leftDate = ref(dayjs().locale(lang.value))\nconst rightDate = ref(leftDate.value.add(10, 'year'))\nconst { pickerNs: ppNs } = inject(ROOT_PICKER_INJECTION_KEY)!\nconst drpNs = useNamespace('date-range-picker')\n\nconst hasShortcuts = computed(() => !!shortcuts.length)\n\nconst panelKls = computed(() => [\n ppNs.b(),\n drpNs.b(),\n {\n 'has-sidebar': Boolean(useSlots().sidebar) || hasShortcuts.value,\n },\n])\n\nconst leftPanelKls = computed(() => {\n return {\n content: [ppNs.e('content'), drpNs.e('content'), 'is-left'],\n arrowLeftBtn: [ppNs.e('icon-btn'), 'd-arrow-left'],\n arrowRightBtn: [\n ppNs.e('icon-btn'),\n { [ppNs.is('disabled')]: !enableYearArrow.value },\n 'd-arrow-right',\n ],\n }\n})\n\nconst rightPanelKls = computed(() => {\n return {\n content: [ppNs.e('content'), drpNs.e('content'), 'is-right'],\n arrowLeftBtn: [\n ppNs.e('icon-btn'),\n { 'is-disabled': !enableYearArrow.value },\n 'd-arrow-left',\n ],\n arrowRightBtn: [ppNs.e('icon-btn'), 'd-arrow-right'],\n }\n})\n\nconst handleShortcutClick = useShortcut(lang)\n\nconst {\n leftPrevYear,\n rightNextYear,\n leftNextYear,\n rightPrevYear,\n leftLabel,\n rightLabel,\n leftYear,\n rightYear,\n} = useYearRangeHeader({\n unlinkPanels: toRef(props, 'unlinkPanels'),\n leftDate,\n rightDate,\n})\n\nconst enableYearArrow = computed(() => {\n return props.unlinkPanels && rightYear.value > leftYear.value + 1\n})\n\nconst minDate = ref<Dayjs>()\nconst maxDate = ref<Dayjs>()\n\nconst rangeState = ref<RangeState>({\n endDate: null,\n selecting: false,\n})\n\nconst handleChangeRange = (val: RangeState) => {\n rangeState.value = val\n}\n\ntype RangePickValue = {\n minDate: Dayjs\n maxDate: Dayjs\n}\nconst handleRangePick = (val: RangePickValue, close = true) => {\n const minDate_ = val.minDate\n const maxDate_ = val.maxDate\n if (maxDate.value === maxDate_ && minDate.value === minDate_) {\n return\n }\n emit('calendar-change', [minDate_.toDate(), maxDate_ && maxDate_.toDate()])\n maxDate.value = maxDate_\n minDate.value = minDate_\n\n if (!close) return\n handleConfirm()\n}\n\nconst handleConfirm = (visible = false) => {\n if (isValidRange([minDate.value, maxDate.value])) {\n emit('pick', [minDate.value, maxDate.value], visible)\n }\n}\n\nconst onSelect = (selecting: boolean) => {\n rangeState.value.selecting = selecting\n if (!selecting) {\n rangeState.value.endDate = null\n }\n}\n\nconst pickerBase = inject('EP_PICKER_BASE') as any\nconst { shortcuts, disabledDate } = pickerBase.props\nconst format = toRef(pickerBase.props, 'format')\nconst defaultValue = toRef(pickerBase.props, 'defaultValue')\nconst unit = 'year'\n\nconst getDefaultValue = () => {\n let start: Dayjs\n if (isArray(defaultValue.value)) {\n const left = dayjs(defaultValue.value[0])\n let right = dayjs(defaultValue.value[1])\n if (!props.unlinkPanels) {\n right = left.add(10, unit)\n }\n return [left, right]\n } else if (defaultValue.value) {\n start = dayjs(defaultValue.value)\n } else {\n start = dayjs()\n }\n start = start.locale(lang.value)\n return [start, start.add(10, unit)]\n}\n\nwatch(\n () => defaultValue.value,\n (val) => {\n if (val) {\n const defaultArr = getDefaultValue()\n leftDate.value = defaultArr[0]\n rightDate.value = defaultArr[1]\n }\n },\n { immediate: true }\n)\n\nwatch(\n () => props.parsedValue,\n (newVal) => {\n if (newVal && newVal.length === 2) {\n minDate.value = newVal[0]\n maxDate.value = newVal[1]\n leftDate.value = minDate.value\n if (props.unlinkPanels && maxDate.value) {\n const minDateYear = minDate.value.year()\n const maxDateYear = maxDate.value.year()\n rightDate.value =\n minDateYear === maxDateYear\n ? maxDate.value.add(10, 'year')\n : maxDate.value\n } else {\n rightDate.value = leftDate.value.add(10, 'year')\n }\n } else {\n const defaultArr = getDefaultValue()\n minDate.value = undefined\n maxDate.value = undefined\n leftDate.value = defaultArr[0]\n rightDate.value = defaultArr[1]\n }\n },\n { immediate: true }\n)\n\nconst parseUserInput = (value: Dayjs | Dayjs[]) => {\n return correctlyParseUserInput(value, format.value, lang.value)\n}\n\nconst formatToString = (value: Dayjs[] | Dayjs) => {\n return isArray(value)\n ? value.map((day) => day.format(format.value))\n : value.format(format.value)\n}\n\nconst isValidValue = (date: [Dayjs, Dayjs]) => {\n return (\n isValidRange(date) &&\n (disabledDate\n ? !disabledDate(date[0].toDate()) && !disabledDate(date[1].toDate())\n : true)\n )\n}\n\nconst handleClear = () => {\n const defaultArr = getDefaultValue()\n leftDate.value = defaultArr[0]\n rightDate.value = defaultArr[1]\n maxDate.value = undefined\n minDate.value = undefined\n emit('pick', null)\n}\n\nemit('set-picker-option', ['isValidValue', isValidValue])\nemit('set-picker-option', ['parseUserInput', parseUserInput])\nemit('set-picker-option', ['formatToString', formatToString])\nemit('set-picker-option', ['handleClear', handleClear])\n</script>\n"],"names":["useLocale","ref","dayjs","inject","ROOT_PICKER_INJECTION_KEY","useNamespace","computed","useSlots","useShortcut","useYearRangeHeader","toRef","isValidRange","isArray","watch","correctlyParseUserInput","_createElementBlock","_normalizeClass","_unref","_createElementVNode"],"mappings":"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"}
@@ -32,4 +32,5 @@ export declare const buildPickerTable: (dimension: Dimension, rows: DateCell[][]
32
32
  export declare const datesInMonth: (year: number, month: number, lang: string) => Date[];
33
33
  export declare const getValidDateOfMonth: (year: number, month: number, lang: string, disabledDate?: DisabledDateType) => dayjs.Dayjs;
34
34
  export declare const getValidDateOfYear: (value: Dayjs, lang: string, disabledDate?: DisabledDateType) => dayjs.Dayjs;
35
+ export declare const correctlyParseUserInput: (value: string | Dayjs | Dayjs[], format: string, lang: string) => Dayjs | Dayjs[];
35
36
  export {};
@@ -14,7 +14,7 @@ const isValidRange = (range) => {
14
14
  if (!shared.isArray(range))
15
15
  return false;
16
16
  const [left, right] = range;
17
- return dayjs__default["default"].isDayjs(left) && dayjs__default["default"].isDayjs(right) && left.isSameOrBefore(right);
17
+ return dayjs__default["default"].isDayjs(left) && dayjs__default["default"].isDayjs(right) && dayjs__default["default"](left).isValid() && dayjs__default["default"](right).isValid() && left.isSameOrBefore(right);
18
18
  };
19
19
  const getDefaultValue = (defaultValue, { lang, unit, unlinkPanels }) => {
20
20
  let start;
@@ -111,8 +111,21 @@ const getValidDateOfYear = (value, lang, disabledDate) => {
111
111
  }
112
112
  return value;
113
113
  };
114
+ const correctlyParseUserInput = (value, format, lang) => {
115
+ if (shared.isArray(value)) {
116
+ return value.map((v) => correctlyParseUserInput(v, format, lang));
117
+ }
118
+ if (typeof value === "string") {
119
+ const dayjsValue = dayjs__default["default"](value);
120
+ if (!dayjsValue.isValid()) {
121
+ return dayjsValue;
122
+ }
123
+ }
124
+ return dayjs__default["default"](value, format).locale(lang);
125
+ };
114
126
 
115
127
  exports.buildPickerTable = buildPickerTable;
128
+ exports.correctlyParseUserInput = correctlyParseUserInput;
116
129
  exports.datesInMonth = datesInMonth;
117
130
  exports.getDefaultValue = getDefaultValue;
118
131
  exports.getValidDateOfMonth = getValidDateOfMonth;
@@ -1 +1 @@
1
- {"version":3,"file":"utils.js","sources":["../../../../../../packages/components/date-picker/src/utils.ts"],"sourcesContent":["import dayjs from 'dayjs'\nimport { isArray } from '@element-plus/utils'\nimport { rangeArr } from '@element-plus/components/time-picker'\n\nimport type { Dayjs } from 'dayjs'\nimport type { DateCell } from './date-picker.type'\nimport type { DisabledDateType } from './props/shared'\n\ntype DayRange = [Dayjs | undefined, Dayjs | undefined]\n\nexport const isValidRange = (range: DayRange): boolean => {\n if (!isArray(range)) return false\n\n const [left, right] = range\n\n return (\n dayjs.isDayjs(left) && dayjs.isDayjs(right) && left.isSameOrBefore(right)\n )\n}\n\ntype GetDefaultValueParams = {\n lang: string\n unit: 'month' | 'year'\n unlinkPanels: boolean\n}\n\nexport type DefaultValue = [Date, Date] | Date | undefined\n\nexport const getDefaultValue = (\n defaultValue: DefaultValue,\n { lang, unit, unlinkPanels }: GetDefaultValueParams\n) => {\n let start: Dayjs\n\n if (isArray(defaultValue)) {\n let [left, right] = defaultValue.map((d) => dayjs(d).locale(lang))\n if (!unlinkPanels) {\n right = left.add(1, unit)\n }\n return [left, right]\n } else if (defaultValue) {\n start = dayjs(defaultValue)\n } else {\n start = dayjs()\n }\n start = start.locale(lang)\n return [start, start.add(1, unit)]\n}\n\ntype Dimension = {\n row: number\n column: number\n}\n\ntype BuildPickerTableMetadata = {\n startDate?: Dayjs | null\n unit: 'month' | 'day'\n columnIndexOffset: number\n now: Dayjs\n nextEndDate: Dayjs | null\n relativeDateGetter: (index: number) => Dayjs\n setCellMetadata?: (\n cell: DateCell,\n dimension: { rowIndex: number; columnIndex: number }\n ) => void\n setRowMetadata?: (row: DateCell[]) => void\n}\n\nexport const buildPickerTable = (\n dimension: Dimension,\n rows: DateCell[][],\n {\n columnIndexOffset,\n startDate,\n nextEndDate,\n now,\n unit,\n relativeDateGetter,\n setCellMetadata,\n setRowMetadata,\n }: BuildPickerTableMetadata\n) => {\n for (let rowIndex = 0; rowIndex < dimension.row; rowIndex++) {\n const row = rows[rowIndex]\n for (let columnIndex = 0; columnIndex < dimension.column; columnIndex++) {\n let cell = row[columnIndex + columnIndexOffset]\n if (!cell) {\n cell = {\n row: rowIndex,\n column: columnIndex,\n type: 'normal',\n inRange: false,\n start: false,\n end: false,\n }\n }\n const index = rowIndex * dimension.column + columnIndex\n const nextStartDate = relativeDateGetter(index)\n cell.dayjs = nextStartDate\n cell.date = nextStartDate.toDate()\n cell.timestamp = nextStartDate.valueOf()\n cell.type = 'normal'\n\n cell.inRange =\n !!(\n startDate &&\n nextStartDate.isSameOrAfter(startDate, unit) &&\n nextEndDate &&\n nextStartDate.isSameOrBefore(nextEndDate, unit)\n ) ||\n !!(\n startDate &&\n nextStartDate.isSameOrBefore(startDate, unit) &&\n nextEndDate &&\n nextStartDate.isSameOrAfter(nextEndDate, unit)\n )\n\n if (startDate?.isSameOrAfter(nextEndDate)) {\n cell.start = !!nextEndDate && nextStartDate.isSame(nextEndDate, unit)\n cell.end = startDate && nextStartDate.isSame(startDate, unit)\n } else {\n cell.start = !!startDate && nextStartDate.isSame(startDate, unit)\n cell.end = !!nextEndDate && nextStartDate.isSame(nextEndDate, unit)\n }\n\n const isToday = nextStartDate.isSame(now, unit)\n\n if (isToday) {\n cell.type = 'today'\n }\n setCellMetadata?.(cell, { rowIndex, columnIndex })\n row[columnIndex + columnIndexOffset] = cell\n }\n setRowMetadata?.(row)\n }\n}\n\nexport const datesInMonth = (year: number, month: number, lang: string) => {\n const firstDay = dayjs().locale(lang).startOf('month').month(month).year(year)\n const numOfDays = firstDay.daysInMonth()\n return rangeArr(numOfDays).map((n) => firstDay.add(n, 'day').toDate())\n}\n\nexport const getValidDateOfMonth = (\n year: number,\n month: number,\n lang: string,\n disabledDate?: DisabledDateType\n) => {\n const _value = dayjs().year(year).month(month).startOf('month')\n const _date = datesInMonth(year, month, lang).find((date) => {\n return !disabledDate?.(date)\n })\n if (_date) {\n return dayjs(_date).locale(lang)\n }\n return _value.locale(lang)\n}\n\nexport const getValidDateOfYear = (\n value: Dayjs,\n lang: string,\n disabledDate?: DisabledDateType\n) => {\n const year = value.year()\n if (!disabledDate?.(value.toDate())) {\n return value.locale(lang)\n }\n const month = value.month()\n if (!datesInMonth(year, month, lang).every(disabledDate)) {\n return getValidDateOfMonth(year, month, lang, disabledDate)\n }\n for (let i = 0; i < 12; i++) {\n if (!datesInMonth(year, i, lang).every(disabledDate)) {\n return getValidDateOfMonth(year, i, lang, disabledDate)\n }\n }\n return value\n}\n"],"names":["isArray","dayjs","rangeArr"],"mappings":"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"}
1
+ {"version":3,"file":"utils.js","sources":["../../../../../../packages/components/date-picker/src/utils.ts"],"sourcesContent":["import dayjs from 'dayjs'\nimport { isArray } from '@element-plus/utils'\nimport { rangeArr } from '@element-plus/components/time-picker'\n\nimport type { Dayjs } from 'dayjs'\nimport type { DateCell } from './date-picker.type'\nimport type { DisabledDateType } from './props/shared'\n\ntype DayRange = [Dayjs | undefined, Dayjs | undefined]\n\nexport const isValidRange = (range: DayRange): boolean => {\n if (!isArray(range)) return false\n\n const [left, right] = range\n\n return (\n dayjs.isDayjs(left) &&\n dayjs.isDayjs(right) &&\n dayjs(left).isValid() &&\n dayjs(right).isValid() &&\n left.isSameOrBefore(right)\n )\n}\n\ntype GetDefaultValueParams = {\n lang: string\n unit: 'month' | 'year'\n unlinkPanels: boolean\n}\n\nexport type DefaultValue = [Date, Date] | Date | undefined\n\nexport const getDefaultValue = (\n defaultValue: DefaultValue,\n { lang, unit, unlinkPanels }: GetDefaultValueParams\n) => {\n let start: Dayjs\n\n if (isArray(defaultValue)) {\n let [left, right] = defaultValue.map((d) => dayjs(d).locale(lang))\n if (!unlinkPanels) {\n right = left.add(1, unit)\n }\n return [left, right]\n } else if (defaultValue) {\n start = dayjs(defaultValue)\n } else {\n start = dayjs()\n }\n start = start.locale(lang)\n return [start, start.add(1, unit)]\n}\n\ntype Dimension = {\n row: number\n column: number\n}\n\ntype BuildPickerTableMetadata = {\n startDate?: Dayjs | null\n unit: 'month' | 'day'\n columnIndexOffset: number\n now: Dayjs\n nextEndDate: Dayjs | null\n relativeDateGetter: (index: number) => Dayjs\n setCellMetadata?: (\n cell: DateCell,\n dimension: { rowIndex: number; columnIndex: number }\n ) => void\n setRowMetadata?: (row: DateCell[]) => void\n}\n\nexport const buildPickerTable = (\n dimension: Dimension,\n rows: DateCell[][],\n {\n columnIndexOffset,\n startDate,\n nextEndDate,\n now,\n unit,\n relativeDateGetter,\n setCellMetadata,\n setRowMetadata,\n }: BuildPickerTableMetadata\n) => {\n for (let rowIndex = 0; rowIndex < dimension.row; rowIndex++) {\n const row = rows[rowIndex]\n for (let columnIndex = 0; columnIndex < dimension.column; columnIndex++) {\n let cell = row[columnIndex + columnIndexOffset]\n if (!cell) {\n cell = {\n row: rowIndex,\n column: columnIndex,\n type: 'normal',\n inRange: false,\n start: false,\n end: false,\n }\n }\n const index = rowIndex * dimension.column + columnIndex\n const nextStartDate = relativeDateGetter(index)\n cell.dayjs = nextStartDate\n cell.date = nextStartDate.toDate()\n cell.timestamp = nextStartDate.valueOf()\n cell.type = 'normal'\n\n cell.inRange =\n !!(\n startDate &&\n nextStartDate.isSameOrAfter(startDate, unit) &&\n nextEndDate &&\n nextStartDate.isSameOrBefore(nextEndDate, unit)\n ) ||\n !!(\n startDate &&\n nextStartDate.isSameOrBefore(startDate, unit) &&\n nextEndDate &&\n nextStartDate.isSameOrAfter(nextEndDate, unit)\n )\n\n if (startDate?.isSameOrAfter(nextEndDate)) {\n cell.start = !!nextEndDate && nextStartDate.isSame(nextEndDate, unit)\n cell.end = startDate && nextStartDate.isSame(startDate, unit)\n } else {\n cell.start = !!startDate && nextStartDate.isSame(startDate, unit)\n cell.end = !!nextEndDate && nextStartDate.isSame(nextEndDate, unit)\n }\n\n const isToday = nextStartDate.isSame(now, unit)\n\n if (isToday) {\n cell.type = 'today'\n }\n setCellMetadata?.(cell, { rowIndex, columnIndex })\n row[columnIndex + columnIndexOffset] = cell\n }\n setRowMetadata?.(row)\n }\n}\n\nexport const datesInMonth = (year: number, month: number, lang: string) => {\n const firstDay = dayjs().locale(lang).startOf('month').month(month).year(year)\n const numOfDays = firstDay.daysInMonth()\n return rangeArr(numOfDays).map((n) => firstDay.add(n, 'day').toDate())\n}\n\nexport const getValidDateOfMonth = (\n year: number,\n month: number,\n lang: string,\n disabledDate?: DisabledDateType\n) => {\n const _value = dayjs().year(year).month(month).startOf('month')\n const _date = datesInMonth(year, month, lang).find((date) => {\n return !disabledDate?.(date)\n })\n if (_date) {\n return dayjs(_date).locale(lang)\n }\n return _value.locale(lang)\n}\n\nexport const getValidDateOfYear = (\n value: Dayjs,\n lang: string,\n disabledDate?: DisabledDateType\n) => {\n const year = value.year()\n if (!disabledDate?.(value.toDate())) {\n return value.locale(lang)\n }\n const month = value.month()\n if (!datesInMonth(year, month, lang).every(disabledDate)) {\n return getValidDateOfMonth(year, month, lang, disabledDate)\n }\n for (let i = 0; i < 12; i++) {\n if (!datesInMonth(year, i, lang).every(disabledDate)) {\n return getValidDateOfMonth(year, i, lang, disabledDate)\n }\n }\n return value\n}\n\nexport const correctlyParseUserInput = (\n value: string | Dayjs | Dayjs[],\n format: string,\n lang: string\n): Dayjs | Dayjs[] => {\n if (isArray(value)) {\n return value.map((v) => correctlyParseUserInput(v, format, lang) as Dayjs)\n }\n if (typeof value === 'string') {\n const dayjsValue = dayjs(value)\n if (!dayjsValue.isValid()) {\n // return directly if not valid\n return dayjsValue\n }\n }\n return dayjs(value, format).locale(lang)\n}\n"],"names":["isArray","dayjs","rangeArr"],"mappings":"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"}
@@ -2,9 +2,9 @@
2
2
 
3
3
  Object.defineProperty(exports, '__esModule', { value: true });
4
4
 
5
- var description$1 = require('./src/description2.js');
5
+ var description$1 = require('./src/description.js');
6
6
  var descriptionItem = require('./src/description-item.js');
7
- var description = require('./src/description.js');
7
+ var description = require('./src/description2.js');
8
8
  var install = require('../../utils/vue/install.js');
9
9
 
10
10
  const ElDescriptions = install.withInstall(description$1["default"], {
@@ -2,34 +2,134 @@
2
2
 
3
3
  Object.defineProperty(exports, '__esModule', { value: true });
4
4
 
5
- var runtime = require('../../../utils/vue/props/runtime.js');
6
- var index = require('../../../hooks/use-size/index.js');
5
+ var vue = require('vue');
6
+ var descriptionsRow = require('./descriptions-row.js');
7
+ var token = require('./token.js');
8
+ var description = require('./description2.js');
9
+ var pluginVue_exportHelper = require('../../../_virtual/plugin-vue_export-helper.js');
10
+ var index = require('../../../hooks/use-namespace/index.js');
11
+ var useFormCommonProps = require('../../form/src/hooks/use-form-common-props.js');
12
+ var vnode = require('../../../utils/vue/vnode.js');
7
13
 
8
- const descriptionProps = runtime.buildProps({
9
- border: Boolean,
10
- column: {
11
- type: Number,
12
- default: 3
13
- },
14
- direction: {
15
- type: String,
16
- values: ["horizontal", "vertical"],
17
- default: "horizontal"
18
- },
19
- size: index.useSizeProp,
20
- title: {
21
- type: String,
22
- default: ""
23
- },
24
- extra: {
25
- type: String,
26
- default: ""
27
- },
28
- labelWidth: {
29
- type: [String, Number],
30
- default: ""
14
+ const __default__ = vue.defineComponent({
15
+ name: "ElDescriptions"
16
+ });
17
+ const _sfc_main = /* @__PURE__ */ vue.defineComponent({
18
+ ...__default__,
19
+ props: description.descriptionProps,
20
+ setup(__props) {
21
+ const props = __props;
22
+ const ns = index.useNamespace("descriptions");
23
+ const descriptionsSize = useFormCommonProps.useFormSize();
24
+ const slots = vue.useSlots();
25
+ vue.provide(token.descriptionsKey, props);
26
+ const descriptionKls = vue.computed(() => [ns.b(), ns.m(descriptionsSize.value)]);
27
+ const filledNode = (node, span, count, isLast = false) => {
28
+ if (!node.props) {
29
+ node.props = {};
30
+ }
31
+ if (span > count) {
32
+ node.props.span = count;
33
+ }
34
+ if (isLast) {
35
+ node.props.span = span;
36
+ }
37
+ return node;
38
+ };
39
+ const getRows = () => {
40
+ if (!slots.default)
41
+ return [];
42
+ const children = vnode.flattedChildren(slots.default()).filter((node) => {
43
+ var _a;
44
+ return ((_a = node == null ? void 0 : node.type) == null ? void 0 : _a.name) === "ElDescriptionsItem";
45
+ });
46
+ const rows = [];
47
+ let temp = [];
48
+ let count = props.column;
49
+ let totalSpan = 0;
50
+ const rowspanTemp = [];
51
+ children.forEach((node, index) => {
52
+ var _a, _b, _c;
53
+ const span = ((_a = node.props) == null ? void 0 : _a.span) || 1;
54
+ const rowspan = ((_b = node.props) == null ? void 0 : _b.rowspan) || 1;
55
+ const rowNo = rows.length;
56
+ rowspanTemp[rowNo] || (rowspanTemp[rowNo] = 0);
57
+ if (rowspan > 1) {
58
+ for (let i = 1; i < rowspan; i++) {
59
+ rowspanTemp[_c = rowNo + i] || (rowspanTemp[_c] = 0);
60
+ rowspanTemp[rowNo + i]++;
61
+ totalSpan++;
62
+ }
63
+ }
64
+ if (rowspanTemp[rowNo] > 0) {
65
+ count -= rowspanTemp[rowNo];
66
+ rowspanTemp[rowNo] = 0;
67
+ }
68
+ if (index < children.length - 1) {
69
+ totalSpan += span > count ? count : span;
70
+ }
71
+ if (index === children.length - 1) {
72
+ const lastSpan = props.column - totalSpan % props.column;
73
+ temp.push(filledNode(node, lastSpan, count, true));
74
+ rows.push(temp);
75
+ return;
76
+ }
77
+ if (span < count) {
78
+ count -= span;
79
+ temp.push(node);
80
+ } else {
81
+ temp.push(filledNode(node, span, count));
82
+ rows.push(temp);
83
+ count = props.column;
84
+ temp = [];
85
+ }
86
+ });
87
+ return rows;
88
+ };
89
+ return (_ctx, _cache) => {
90
+ return vue.openBlock(), vue.createElementBlock("div", {
91
+ class: vue.normalizeClass(vue.unref(descriptionKls))
92
+ }, [
93
+ _ctx.title || _ctx.extra || _ctx.$slots.title || _ctx.$slots.extra ? (vue.openBlock(), vue.createElementBlock("div", {
94
+ key: 0,
95
+ class: vue.normalizeClass(vue.unref(ns).e("header"))
96
+ }, [
97
+ vue.createElementVNode("div", {
98
+ class: vue.normalizeClass(vue.unref(ns).e("title"))
99
+ }, [
100
+ vue.renderSlot(_ctx.$slots, "title", {}, () => [
101
+ vue.createTextVNode(vue.toDisplayString(_ctx.title), 1)
102
+ ])
103
+ ], 2),
104
+ vue.createElementVNode("div", {
105
+ class: vue.normalizeClass(vue.unref(ns).e("extra"))
106
+ }, [
107
+ vue.renderSlot(_ctx.$slots, "extra", {}, () => [
108
+ vue.createTextVNode(vue.toDisplayString(_ctx.extra), 1)
109
+ ])
110
+ ], 2)
111
+ ], 2)) : vue.createCommentVNode("v-if", true),
112
+ vue.createElementVNode("div", {
113
+ class: vue.normalizeClass(vue.unref(ns).e("body"))
114
+ }, [
115
+ vue.createElementVNode("table", {
116
+ class: vue.normalizeClass([vue.unref(ns).e("table"), vue.unref(ns).is("bordered", _ctx.border)])
117
+ }, [
118
+ vue.createElementVNode("tbody", null, [
119
+ (vue.openBlock(true), vue.createElementBlock(vue.Fragment, null, vue.renderList(getRows(), (row, _index) => {
120
+ return vue.openBlock(), vue.createBlock(descriptionsRow["default"], {
121
+ key: _index,
122
+ row
123
+ }, null, 8, ["row"]);
124
+ }), 128))
125
+ ])
126
+ ], 2)
127
+ ], 2)
128
+ ], 2);
129
+ };
31
130
  }
32
131
  });
132
+ var Descriptions = /* @__PURE__ */ pluginVue_exportHelper["default"](_sfc_main, [["__file", "description.vue"]]);
33
133
 
34
- exports.descriptionProps = descriptionProps;
134
+ exports["default"] = Descriptions;
35
135
  //# sourceMappingURL=description.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"description.js","sources":["../../../../../../packages/components/descriptions/src/description.ts"],"sourcesContent":["import { buildProps } from '@element-plus/utils'\nimport { useSizeProp } from '@element-plus/hooks'\n\nimport type { ExtractPropTypes } from 'vue'\nimport type Description from './description.vue'\n\nexport const descriptionProps = buildProps({\n /**\n * @description with or without border\n */\n border: Boolean,\n /**\n * @description numbers of `Descriptions Item` in one line\n */\n column: {\n type: Number,\n default: 3,\n },\n /**\n * @description direction of list\n */\n direction: {\n type: String,\n values: ['horizontal', 'vertical'],\n default: 'horizontal',\n },\n /**\n * @description size of list\n */\n size: useSizeProp,\n /**\n * @description title text, display on the top left\n */\n title: {\n type: String,\n default: '',\n },\n /**\n * @description extra text, display on the top right\n */\n extra: {\n type: String,\n default: '',\n },\n /**\n * @description width of every label column\n */\n labelWidth: {\n type: [String, Number],\n default: '',\n },\n} as const)\n\nexport type DescriptionProps = ExtractPropTypes<typeof descriptionProps>\nexport type DescriptionInstance = InstanceType<typeof Description>\n"],"names":["buildProps","useSizeProp"],"mappings":";;;;;;;AAEY,MAAC,gBAAgB,GAAGA,kBAAU,CAAC;AAC3C,EAAE,MAAM,EAAE,OAAO;AACjB,EAAE,MAAM,EAAE;AACV,IAAI,IAAI,EAAE,MAAM;AAChB,IAAI,OAAO,EAAE,CAAC;AACd,GAAG;AACH,EAAE,SAAS,EAAE;AACb,IAAI,IAAI,EAAE,MAAM;AAChB,IAAI,MAAM,EAAE,CAAC,YAAY,EAAE,UAAU,CAAC;AACtC,IAAI,OAAO,EAAE,YAAY;AACzB,GAAG;AACH,EAAE,IAAI,EAAEC,iBAAW;AACnB,EAAE,KAAK,EAAE;AACT,IAAI,IAAI,EAAE,MAAM;AAChB,IAAI,OAAO,EAAE,EAAE;AACf,GAAG;AACH,EAAE,KAAK,EAAE;AACT,IAAI,IAAI,EAAE,MAAM;AAChB,IAAI,OAAO,EAAE,EAAE;AACf,GAAG;AACH,EAAE,UAAU,EAAE;AACd,IAAI,IAAI,EAAE,CAAC,MAAM,EAAE,MAAM,CAAC;AAC1B,IAAI,OAAO,EAAE,EAAE;AACf,GAAG;AACH,CAAC;;;;"}
1
+ {"version":3,"file":"description.js","sources":["../../../../../../packages/components/descriptions/src/description.vue"],"sourcesContent":["<template>\n <div :class=\"descriptionKls\">\n <div\n v-if=\"title || extra || $slots.title || $slots.extra\"\n :class=\"ns.e('header')\"\n >\n <div :class=\"ns.e('title')\">\n <slot name=\"title\">{{ title }}</slot>\n </div>\n <div :class=\"ns.e('extra')\">\n <slot name=\"extra\">{{ extra }}</slot>\n </div>\n </div>\n\n <div :class=\"ns.e('body')\">\n <table :class=\"[ns.e('table'), ns.is('bordered', border)]\">\n <tbody>\n <template v-for=\"(row, _index) in getRows()\" :key=\"_index\">\n <el-descriptions-row :row=\"row\" />\n </template>\n </tbody>\n </table>\n </div>\n </div>\n</template>\n\n<script lang=\"ts\" setup>\nimport { computed, provide, useSlots } from 'vue'\nimport { flattedChildren } from '@element-plus/utils'\nimport { useNamespace } from '@element-plus/hooks'\nimport { useFormSize } from '@element-plus/components/form'\nimport ElDescriptionsRow from './descriptions-row.vue'\nimport { descriptionsKey } from './token'\nimport { descriptionProps } from './description'\n\nimport type { IDescriptionsInject } from './descriptions.type'\nimport type { DescriptionItemVNode } from './description-item'\n\ndefineOptions({\n name: 'ElDescriptions',\n})\n\nconst props = defineProps(descriptionProps)\n\nconst ns = useNamespace('descriptions')\n\nconst descriptionsSize = useFormSize()\n\nconst slots = useSlots()\n\nprovide(descriptionsKey, props as IDescriptionsInject)\n\nconst descriptionKls = computed(() => [ns.b(), ns.m(descriptionsSize.value)])\n\nconst filledNode = (\n node: DescriptionItemVNode,\n span: number,\n count: number,\n isLast = false\n) => {\n if (!node.props) {\n node.props = {}\n }\n if (span > count) {\n node.props.span = count\n }\n if (isLast) {\n // set the last span\n node.props.span = span\n }\n return node\n}\n\nconst getRows = () => {\n if (!slots.default) return []\n\n const children = flattedChildren(slots.default()).filter(\n (node): node is DescriptionItemVNode =>\n (node as any)?.type?.name === 'ElDescriptionsItem'\n )\n const rows: DescriptionItemVNode[][] = []\n let temp: DescriptionItemVNode[] = []\n let count = props.column\n let totalSpan = 0 // all spans number of item\n const rowspanTemp: number[] = [] // the number of row spans\n\n children.forEach((node, index) => {\n const span = node.props?.span || 1\n const rowspan = node.props?.rowspan || 1\n const rowNo = rows.length\n rowspanTemp[rowNo] ||= 0\n\n if (rowspan > 1) {\n for (let i = 1; i < rowspan; i++) {\n rowspanTemp[rowNo + i] ||= 0\n rowspanTemp[rowNo + i]++\n totalSpan++\n }\n }\n if (rowspanTemp[rowNo] > 0) {\n count -= rowspanTemp[rowNo]\n rowspanTemp[rowNo] = 0\n }\n if (index < children.length - 1) {\n totalSpan += span > count ? count : span\n }\n\n if (index === children.length - 1) {\n // calculate the last item span\n const lastSpan = props.column - (totalSpan % props.column)\n temp.push(filledNode(node, lastSpan, count, true))\n rows.push(temp)\n return\n }\n\n if (span < count) {\n count -= span\n temp.push(node)\n } else {\n temp.push(filledNode(node, span, count))\n rows.push(temp)\n count = props.column\n temp = []\n }\n })\n\n return rows\n}\n</script>\n"],"names":["useNamespace","useFormSize","useSlots","provide","descriptionsKey","computed","flattedChildren"],"mappings":"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"}
@@ -2,134 +2,34 @@
2
2
 
3
3
  Object.defineProperty(exports, '__esModule', { value: true });
4
4
 
5
- var vue = require('vue');
6
- var descriptionsRow = require('./descriptions-row2.js');
7
- var token = require('./token.js');
8
- var description = require('./description.js');
9
- var pluginVue_exportHelper = require('../../../_virtual/plugin-vue_export-helper.js');
10
- var index = require('../../../hooks/use-namespace/index.js');
11
- var useFormCommonProps = require('../../form/src/hooks/use-form-common-props.js');
12
- var vnode = require('../../../utils/vue/vnode.js');
5
+ var runtime = require('../../../utils/vue/props/runtime.js');
6
+ var index = require('../../../hooks/use-size/index.js');
13
7
 
14
- const __default__ = vue.defineComponent({
15
- name: "ElDescriptions"
16
- });
17
- const _sfc_main = /* @__PURE__ */ vue.defineComponent({
18
- ...__default__,
19
- props: description.descriptionProps,
20
- setup(__props) {
21
- const props = __props;
22
- const ns = index.useNamespace("descriptions");
23
- const descriptionsSize = useFormCommonProps.useFormSize();
24
- const slots = vue.useSlots();
25
- vue.provide(token.descriptionsKey, props);
26
- const descriptionKls = vue.computed(() => [ns.b(), ns.m(descriptionsSize.value)]);
27
- const filledNode = (node, span, count, isLast = false) => {
28
- if (!node.props) {
29
- node.props = {};
30
- }
31
- if (span > count) {
32
- node.props.span = count;
33
- }
34
- if (isLast) {
35
- node.props.span = span;
36
- }
37
- return node;
38
- };
39
- const getRows = () => {
40
- if (!slots.default)
41
- return [];
42
- const children = vnode.flattedChildren(slots.default()).filter((node) => {
43
- var _a;
44
- return ((_a = node == null ? void 0 : node.type) == null ? void 0 : _a.name) === "ElDescriptionsItem";
45
- });
46
- const rows = [];
47
- let temp = [];
48
- let count = props.column;
49
- let totalSpan = 0;
50
- const rowspanTemp = [];
51
- children.forEach((node, index) => {
52
- var _a, _b, _c;
53
- const span = ((_a = node.props) == null ? void 0 : _a.span) || 1;
54
- const rowspan = ((_b = node.props) == null ? void 0 : _b.rowspan) || 1;
55
- const rowNo = rows.length;
56
- rowspanTemp[rowNo] || (rowspanTemp[rowNo] = 0);
57
- if (rowspan > 1) {
58
- for (let i = 1; i < rowspan; i++) {
59
- rowspanTemp[_c = rowNo + i] || (rowspanTemp[_c] = 0);
60
- rowspanTemp[rowNo + i]++;
61
- totalSpan++;
62
- }
63
- }
64
- if (rowspanTemp[rowNo] > 0) {
65
- count -= rowspanTemp[rowNo];
66
- rowspanTemp[rowNo] = 0;
67
- }
68
- if (index < children.length - 1) {
69
- totalSpan += span > count ? count : span;
70
- }
71
- if (index === children.length - 1) {
72
- const lastSpan = props.column - totalSpan % props.column;
73
- temp.push(filledNode(node, lastSpan, count, true));
74
- rows.push(temp);
75
- return;
76
- }
77
- if (span < count) {
78
- count -= span;
79
- temp.push(node);
80
- } else {
81
- temp.push(filledNode(node, span, count));
82
- rows.push(temp);
83
- count = props.column;
84
- temp = [];
85
- }
86
- });
87
- return rows;
88
- };
89
- return (_ctx, _cache) => {
90
- return vue.openBlock(), vue.createElementBlock("div", {
91
- class: vue.normalizeClass(vue.unref(descriptionKls))
92
- }, [
93
- _ctx.title || _ctx.extra || _ctx.$slots.title || _ctx.$slots.extra ? (vue.openBlock(), vue.createElementBlock("div", {
94
- key: 0,
95
- class: vue.normalizeClass(vue.unref(ns).e("header"))
96
- }, [
97
- vue.createElementVNode("div", {
98
- class: vue.normalizeClass(vue.unref(ns).e("title"))
99
- }, [
100
- vue.renderSlot(_ctx.$slots, "title", {}, () => [
101
- vue.createTextVNode(vue.toDisplayString(_ctx.title), 1)
102
- ])
103
- ], 2),
104
- vue.createElementVNode("div", {
105
- class: vue.normalizeClass(vue.unref(ns).e("extra"))
106
- }, [
107
- vue.renderSlot(_ctx.$slots, "extra", {}, () => [
108
- vue.createTextVNode(vue.toDisplayString(_ctx.extra), 1)
109
- ])
110
- ], 2)
111
- ], 2)) : vue.createCommentVNode("v-if", true),
112
- vue.createElementVNode("div", {
113
- class: vue.normalizeClass(vue.unref(ns).e("body"))
114
- }, [
115
- vue.createElementVNode("table", {
116
- class: vue.normalizeClass([vue.unref(ns).e("table"), vue.unref(ns).is("bordered", _ctx.border)])
117
- }, [
118
- vue.createElementVNode("tbody", null, [
119
- (vue.openBlock(true), vue.createElementBlock(vue.Fragment, null, vue.renderList(getRows(), (row, _index) => {
120
- return vue.openBlock(), vue.createBlock(descriptionsRow["default"], {
121
- key: _index,
122
- row
123
- }, null, 8, ["row"]);
124
- }), 128))
125
- ])
126
- ], 2)
127
- ], 2)
128
- ], 2);
129
- };
8
+ const descriptionProps = runtime.buildProps({
9
+ border: Boolean,
10
+ column: {
11
+ type: Number,
12
+ default: 3
13
+ },
14
+ direction: {
15
+ type: String,
16
+ values: ["horizontal", "vertical"],
17
+ default: "horizontal"
18
+ },
19
+ size: index.useSizeProp,
20
+ title: {
21
+ type: String,
22
+ default: ""
23
+ },
24
+ extra: {
25
+ type: String,
26
+ default: ""
27
+ },
28
+ labelWidth: {
29
+ type: [String, Number],
30
+ default: ""
130
31
  }
131
32
  });
132
- var Descriptions = /* @__PURE__ */ pluginVue_exportHelper["default"](_sfc_main, [["__file", "description.vue"]]);
133
33
 
134
- exports["default"] = Descriptions;
34
+ exports.descriptionProps = descriptionProps;
135
35
  //# sourceMappingURL=description2.js.map