@element-plus/nightly 0.0.20220527 → 0.0.20220528

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 (256) hide show
  1. package/dist/index.full.js +68 -36
  2. package/dist/index.full.min.js +12 -12
  3. package/dist/index.full.min.js.map +1 -1
  4. package/dist/index.full.min.mjs +12 -12
  5. package/dist/index.full.min.mjs.map +1 -1
  6. package/dist/index.full.mjs +68 -36
  7. package/dist/locale/af.js +1 -1
  8. package/dist/locale/af.min.js +1 -1
  9. package/dist/locale/af.min.mjs +1 -1
  10. package/dist/locale/af.mjs +1 -1
  11. package/dist/locale/ar.js +1 -1
  12. package/dist/locale/ar.min.js +1 -1
  13. package/dist/locale/ar.min.mjs +1 -1
  14. package/dist/locale/ar.mjs +1 -1
  15. package/dist/locale/az.js +1 -1
  16. package/dist/locale/az.min.js +1 -1
  17. package/dist/locale/az.min.mjs +1 -1
  18. package/dist/locale/az.mjs +1 -1
  19. package/dist/locale/bg.js +1 -1
  20. package/dist/locale/bg.min.js +1 -1
  21. package/dist/locale/bg.min.mjs +1 -1
  22. package/dist/locale/bg.mjs +1 -1
  23. package/dist/locale/bn.js +1 -1
  24. package/dist/locale/bn.min.js +1 -1
  25. package/dist/locale/bn.min.mjs +1 -1
  26. package/dist/locale/bn.mjs +1 -1
  27. package/dist/locale/ca.js +1 -1
  28. package/dist/locale/ca.min.js +1 -1
  29. package/dist/locale/ca.min.mjs +1 -1
  30. package/dist/locale/ca.mjs +1 -1
  31. package/dist/locale/cs.js +1 -1
  32. package/dist/locale/cs.min.js +1 -1
  33. package/dist/locale/cs.min.mjs +1 -1
  34. package/dist/locale/cs.mjs +1 -1
  35. package/dist/locale/da.js +1 -1
  36. package/dist/locale/da.min.js +1 -1
  37. package/dist/locale/da.min.mjs +1 -1
  38. package/dist/locale/da.mjs +1 -1
  39. package/dist/locale/de.js +1 -1
  40. package/dist/locale/de.min.js +1 -1
  41. package/dist/locale/de.min.mjs +1 -1
  42. package/dist/locale/de.mjs +1 -1
  43. package/dist/locale/el.js +1 -1
  44. package/dist/locale/el.min.js +1 -1
  45. package/dist/locale/el.min.mjs +1 -1
  46. package/dist/locale/el.mjs +1 -1
  47. package/dist/locale/en.js +1 -1
  48. package/dist/locale/en.min.js +1 -1
  49. package/dist/locale/en.min.mjs +1 -1
  50. package/dist/locale/en.mjs +1 -1
  51. package/dist/locale/eo.js +1 -1
  52. package/dist/locale/eo.min.js +1 -1
  53. package/dist/locale/eo.min.mjs +1 -1
  54. package/dist/locale/eo.mjs +1 -1
  55. package/dist/locale/es.js +1 -1
  56. package/dist/locale/es.min.js +1 -1
  57. package/dist/locale/es.min.mjs +1 -1
  58. package/dist/locale/es.mjs +1 -1
  59. package/dist/locale/et.js +1 -1
  60. package/dist/locale/et.min.js +1 -1
  61. package/dist/locale/et.min.mjs +1 -1
  62. package/dist/locale/et.mjs +1 -1
  63. package/dist/locale/eu.js +1 -1
  64. package/dist/locale/eu.min.js +1 -1
  65. package/dist/locale/eu.min.mjs +1 -1
  66. package/dist/locale/eu.mjs +1 -1
  67. package/dist/locale/fa.js +1 -1
  68. package/dist/locale/fa.min.js +1 -1
  69. package/dist/locale/fa.min.mjs +1 -1
  70. package/dist/locale/fa.mjs +1 -1
  71. package/dist/locale/fi.js +1 -1
  72. package/dist/locale/fi.min.js +1 -1
  73. package/dist/locale/fi.min.mjs +1 -1
  74. package/dist/locale/fi.mjs +1 -1
  75. package/dist/locale/fr.js +1 -1
  76. package/dist/locale/fr.min.js +1 -1
  77. package/dist/locale/fr.min.mjs +1 -1
  78. package/dist/locale/fr.mjs +1 -1
  79. package/dist/locale/he.js +1 -1
  80. package/dist/locale/he.min.js +1 -1
  81. package/dist/locale/he.min.mjs +1 -1
  82. package/dist/locale/he.mjs +1 -1
  83. package/dist/locale/hr.js +1 -1
  84. package/dist/locale/hr.min.js +1 -1
  85. package/dist/locale/hr.min.mjs +1 -1
  86. package/dist/locale/hr.mjs +1 -1
  87. package/dist/locale/hu.js +1 -1
  88. package/dist/locale/hu.min.js +1 -1
  89. package/dist/locale/hu.min.mjs +1 -1
  90. package/dist/locale/hu.mjs +1 -1
  91. package/dist/locale/hy-am.js +1 -1
  92. package/dist/locale/hy-am.min.js +1 -1
  93. package/dist/locale/hy-am.min.mjs +1 -1
  94. package/dist/locale/hy-am.mjs +1 -1
  95. package/dist/locale/id.js +1 -1
  96. package/dist/locale/id.min.js +1 -1
  97. package/dist/locale/id.min.mjs +1 -1
  98. package/dist/locale/id.mjs +1 -1
  99. package/dist/locale/it.js +1 -1
  100. package/dist/locale/it.min.js +1 -1
  101. package/dist/locale/it.min.mjs +1 -1
  102. package/dist/locale/it.mjs +1 -1
  103. package/dist/locale/ja.js +1 -1
  104. package/dist/locale/ja.min.js +1 -1
  105. package/dist/locale/ja.min.mjs +1 -1
  106. package/dist/locale/ja.mjs +1 -1
  107. package/dist/locale/kk.js +1 -1
  108. package/dist/locale/kk.min.js +1 -1
  109. package/dist/locale/kk.min.mjs +1 -1
  110. package/dist/locale/kk.mjs +1 -1
  111. package/dist/locale/km.js +1 -1
  112. package/dist/locale/km.min.js +1 -1
  113. package/dist/locale/km.min.mjs +1 -1
  114. package/dist/locale/km.mjs +1 -1
  115. package/dist/locale/ko.js +1 -1
  116. package/dist/locale/ko.min.js +1 -1
  117. package/dist/locale/ko.min.mjs +1 -1
  118. package/dist/locale/ko.mjs +1 -1
  119. package/dist/locale/ku.js +1 -1
  120. package/dist/locale/ku.min.js +1 -1
  121. package/dist/locale/ku.min.mjs +1 -1
  122. package/dist/locale/ku.mjs +1 -1
  123. package/dist/locale/ky.js +1 -1
  124. package/dist/locale/ky.min.js +1 -1
  125. package/dist/locale/ky.min.mjs +1 -1
  126. package/dist/locale/ky.mjs +1 -1
  127. package/dist/locale/lt.js +1 -1
  128. package/dist/locale/lt.min.js +1 -1
  129. package/dist/locale/lt.min.mjs +1 -1
  130. package/dist/locale/lt.mjs +1 -1
  131. package/dist/locale/lv.js +1 -1
  132. package/dist/locale/lv.min.js +1 -1
  133. package/dist/locale/lv.min.mjs +1 -1
  134. package/dist/locale/lv.mjs +1 -1
  135. package/dist/locale/mg.js +1 -1
  136. package/dist/locale/mg.min.js +1 -1
  137. package/dist/locale/mg.min.mjs +1 -1
  138. package/dist/locale/mg.mjs +1 -1
  139. package/dist/locale/mn.js +1 -1
  140. package/dist/locale/mn.min.js +1 -1
  141. package/dist/locale/mn.min.mjs +1 -1
  142. package/dist/locale/mn.mjs +1 -1
  143. package/dist/locale/nb-no.js +1 -1
  144. package/dist/locale/nb-no.min.js +1 -1
  145. package/dist/locale/nb-no.min.mjs +1 -1
  146. package/dist/locale/nb-no.mjs +1 -1
  147. package/dist/locale/nl.js +1 -1
  148. package/dist/locale/nl.min.js +1 -1
  149. package/dist/locale/nl.min.mjs +1 -1
  150. package/dist/locale/nl.mjs +1 -1
  151. package/dist/locale/pa.js +1 -1
  152. package/dist/locale/pa.min.js +1 -1
  153. package/dist/locale/pa.min.mjs +1 -1
  154. package/dist/locale/pa.mjs +1 -1
  155. package/dist/locale/pl.js +1 -1
  156. package/dist/locale/pl.min.js +1 -1
  157. package/dist/locale/pl.min.mjs +1 -1
  158. package/dist/locale/pl.mjs +1 -1
  159. package/dist/locale/pt-br.js +1 -1
  160. package/dist/locale/pt-br.min.js +1 -1
  161. package/dist/locale/pt-br.min.mjs +1 -1
  162. package/dist/locale/pt-br.mjs +1 -1
  163. package/dist/locale/pt.js +1 -1
  164. package/dist/locale/pt.min.js +1 -1
  165. package/dist/locale/pt.min.mjs +1 -1
  166. package/dist/locale/pt.mjs +1 -1
  167. package/dist/locale/ro.js +1 -1
  168. package/dist/locale/ro.min.js +1 -1
  169. package/dist/locale/ro.min.mjs +1 -1
  170. package/dist/locale/ro.mjs +1 -1
  171. package/dist/locale/ru.js +1 -1
  172. package/dist/locale/ru.min.js +1 -1
  173. package/dist/locale/ru.min.mjs +1 -1
  174. package/dist/locale/ru.mjs +1 -1
  175. package/dist/locale/sk.js +1 -1
  176. package/dist/locale/sk.min.js +1 -1
  177. package/dist/locale/sk.min.mjs +1 -1
  178. package/dist/locale/sk.mjs +1 -1
  179. package/dist/locale/sl.js +1 -1
  180. package/dist/locale/sl.min.js +1 -1
  181. package/dist/locale/sl.min.mjs +1 -1
  182. package/dist/locale/sl.mjs +1 -1
  183. package/dist/locale/sr.js +1 -1
  184. package/dist/locale/sr.min.js +1 -1
  185. package/dist/locale/sr.min.mjs +1 -1
  186. package/dist/locale/sr.mjs +1 -1
  187. package/dist/locale/sv.js +1 -1
  188. package/dist/locale/sv.min.js +1 -1
  189. package/dist/locale/sv.min.mjs +1 -1
  190. package/dist/locale/sv.mjs +1 -1
  191. package/dist/locale/ta.js +1 -1
  192. package/dist/locale/ta.min.js +1 -1
  193. package/dist/locale/ta.min.mjs +1 -1
  194. package/dist/locale/ta.mjs +1 -1
  195. package/dist/locale/th.js +1 -1
  196. package/dist/locale/th.min.js +1 -1
  197. package/dist/locale/th.min.mjs +1 -1
  198. package/dist/locale/th.mjs +1 -1
  199. package/dist/locale/tk.js +1 -1
  200. package/dist/locale/tk.min.js +1 -1
  201. package/dist/locale/tk.min.mjs +1 -1
  202. package/dist/locale/tk.mjs +1 -1
  203. package/dist/locale/tr.js +1 -1
  204. package/dist/locale/tr.min.js +1 -1
  205. package/dist/locale/tr.min.mjs +1 -1
  206. package/dist/locale/tr.mjs +1 -1
  207. package/dist/locale/ug-cn.js +1 -1
  208. package/dist/locale/ug-cn.min.js +1 -1
  209. package/dist/locale/ug-cn.min.mjs +1 -1
  210. package/dist/locale/ug-cn.mjs +1 -1
  211. package/dist/locale/uk.js +1 -1
  212. package/dist/locale/uk.min.js +1 -1
  213. package/dist/locale/uk.min.mjs +1 -1
  214. package/dist/locale/uk.mjs +1 -1
  215. package/dist/locale/uz-uz.js +1 -1
  216. package/dist/locale/uz-uz.min.js +1 -1
  217. package/dist/locale/uz-uz.min.mjs +1 -1
  218. package/dist/locale/uz-uz.mjs +1 -1
  219. package/dist/locale/vi.js +1 -1
  220. package/dist/locale/vi.min.js +1 -1
  221. package/dist/locale/vi.min.mjs +1 -1
  222. package/dist/locale/vi.mjs +1 -1
  223. package/dist/locale/zh-cn.js +1 -1
  224. package/dist/locale/zh-cn.min.js +1 -1
  225. package/dist/locale/zh-cn.min.mjs +1 -1
  226. package/dist/locale/zh-cn.mjs +1 -1
  227. package/dist/locale/zh-tw.js +1 -1
  228. package/dist/locale/zh-tw.min.js +1 -1
  229. package/dist/locale/zh-tw.min.mjs +1 -1
  230. package/dist/locale/zh-tw.mjs +1 -1
  231. package/es/components/date-picker/src/composables/use-month-range-header.mjs +2 -0
  232. package/es/components/date-picker/src/composables/use-month-range-header.mjs.map +1 -0
  233. package/es/components/date-picker/src/composables/use-month-range-header2.mjs +54 -0
  234. package/es/components/date-picker/src/composables/use-month-range-header2.mjs.map +1 -0
  235. package/es/components/date-picker/src/date-picker-com/panel-month-range2.mjs +19 -34
  236. package/es/components/date-picker/src/date-picker-com/panel-month-range2.mjs.map +1 -1
  237. package/es/packages/components/date-picker/src/composables/use-month-range-header.d.ts +16 -0
  238. package/es/packages/components/date-picker/src/date-picker-com/panel-month-range.vue.d.ts +0 -1
  239. package/es/packages/components/date-picker/src/utils.d.ts +0 -1
  240. package/es/packages/version.d.ts +1 -1
  241. package/es/version2.mjs +1 -1
  242. package/es/version2.mjs.map +1 -1
  243. package/lib/components/date-picker/src/composables/use-month-range-header.js +10 -0
  244. package/lib/components/date-picker/src/composables/use-month-range-header.js.map +1 -0
  245. package/lib/components/date-picker/src/composables/use-month-range-header2.js +58 -0
  246. package/lib/components/date-picker/src/composables/use-month-range-header2.js.map +1 -0
  247. package/lib/components/date-picker/src/date-picker-com/panel-month-range2.js +19 -34
  248. package/lib/components/date-picker/src/date-picker-com/panel-month-range2.js.map +1 -1
  249. package/lib/packages/components/date-picker/src/composables/use-month-range-header.d.ts +16 -0
  250. package/lib/packages/components/date-picker/src/date-picker-com/panel-month-range.vue.d.ts +0 -1
  251. package/lib/packages/components/date-picker/src/utils.d.ts +0 -1
  252. package/lib/packages/version.d.ts +1 -1
  253. package/lib/version2.js +1 -1
  254. package/lib/version2.js.map +1 -1
  255. package/package.json +2 -2
  256. package/web-types.json +1 -1
@@ -1,2 +1,2 @@
1
- /*! Element Plus v0.0.20220527 */var u={name:"zh-tw",el:{colorpicker:{confirm:"\u78BA\u8A8D",clear:"\u6E05\u7A7A"},datepicker:{now:"\u73FE\u5728",today:"\u4ECA\u5929",cancel:"\u53D6\u6D88",clear:"\u6E05\u7A7A",confirm:"\u78BA\u8A8D",selectDate:"\u9078\u64C7\u65E5\u671F",selectTime:"\u9078\u64C7\u6642\u9593",startDate:"\u958B\u59CB\u65E5\u671F",startTime:"\u958B\u59CB\u6642\u9593",endDate:"\u7D50\u675F\u65E5\u671F",endTime:"\u7D50\u675F\u6642\u9593",prevYear:"\u524D\u4E00\u5E74",nextYear:"\u5F8C\u4E00\u5E74",prevMonth:"\u4E0A\u500B\u6708",nextMonth:"\u4E0B\u500B\u6708",year:"\u5E74",month1:"1 \u6708",month2:"2 \u6708",month3:"3 \u6708",month4:"4 \u6708",month5:"5 \u6708",month6:"6 \u6708",month7:"7 \u6708",month8:"8 \u6708",month9:"9 \u6708",month10:"10 \u6708",month11:"11 \u6708",month12:"12 \u6708",weeks:{sun:"\u65E5",mon:"\u4E00",tue:"\u4E8C",wed:"\u4E09",thu:"\u56DB",fri:"\u4E94",sat:"\u516D"},months:{jan:"\u4E00\u6708",feb:"\u4E8C\u6708",mar:"\u4E09\u6708",apr:"\u56DB\u6708",may:"\u4E94\u6708",jun:"\u516D\u6708",jul:"\u4E03\u6708",aug:"\u516B\u6708",sep:"\u4E5D\u6708",oct:"\u5341\u6708",nov:"\u5341\u4E00\u6708",dec:"\u5341\u4E8C\u6708"}},select:{loading:"\u52A0\u8F09\u4E2D",noMatch:"\u7121\u5339\u914D\u8CC7\u6599",noData:"\u7121\u8CC7\u6599",placeholder:"\u8ACB\u9078\u64C7"},cascader:{noMatch:"\u7121\u5339\u914D\u8CC7\u6599",loading:"\u52A0\u8F09\u4E2D",placeholder:"\u8ACB\u9078\u64C7",noData:"\u7121\u8CC7\u6599"},pagination:{goto:"\u524D\u5F80",pagesize:"\u9805/\u9801",total:"\u5171 {total} \u9805",pageClassifier:"\u9801"},messagebox:{title:"\u63D0\u793A",confirm:"\u78BA\u5B9A",cancel:"\u53D6\u6D88",error:"\u8F38\u5165\u7684\u8CC7\u6599\u4E0D\u7B26\u898F\u5B9A!"},upload:{deleteTip:"\u6309 delete \u9375\u53EF\u522A\u9664",delete:"\u522A\u9664",preview:"\u67E5\u770B\u5716\u7247",continue:"\u7E7C\u7E8C\u4E0A\u50B3"},table:{emptyText:"\u66AB\u7121\u8CC7\u6599",confirmFilter:"\u7BE9\u9078",resetFilter:"\u91CD\u7F6E",clearFilter:"\u5168\u90E8",sumText:"\u5408\u8A08"},tree:{emptyText:"\u66AB\u7121\u8CC7\u6599"},transfer:{noMatch:"\u7121\u5339\u914D\u8CC7\u6599",noData:"\u7121\u8CC7\u6599",titles:["\u5217\u8868 1","\u5217\u8868 2"],filterPlaceholder:"\u8ACB\u8F38\u5165\u641C\u7D22\u5167\u5BB9",noCheckedFormat:"\u5171 {total} \u9805",hasCheckedFormat:"\u5DF2\u9078 {checked}/{total} \u9805"},image:{error:"\u52A0\u8F09\u5931\u6557"},pageHeader:{title:"\u8FD4\u56DE"},popconfirm:{confirmButtonText:"\u78BA\u8A8D",cancelButtonText:"\u53D6\u6D88"}}};export{u as default};
1
+ /*! Element Plus v0.0.20220528 */var u={name:"zh-tw",el:{colorpicker:{confirm:"\u78BA\u8A8D",clear:"\u6E05\u7A7A"},datepicker:{now:"\u73FE\u5728",today:"\u4ECA\u5929",cancel:"\u53D6\u6D88",clear:"\u6E05\u7A7A",confirm:"\u78BA\u8A8D",selectDate:"\u9078\u64C7\u65E5\u671F",selectTime:"\u9078\u64C7\u6642\u9593",startDate:"\u958B\u59CB\u65E5\u671F",startTime:"\u958B\u59CB\u6642\u9593",endDate:"\u7D50\u675F\u65E5\u671F",endTime:"\u7D50\u675F\u6642\u9593",prevYear:"\u524D\u4E00\u5E74",nextYear:"\u5F8C\u4E00\u5E74",prevMonth:"\u4E0A\u500B\u6708",nextMonth:"\u4E0B\u500B\u6708",year:"\u5E74",month1:"1 \u6708",month2:"2 \u6708",month3:"3 \u6708",month4:"4 \u6708",month5:"5 \u6708",month6:"6 \u6708",month7:"7 \u6708",month8:"8 \u6708",month9:"9 \u6708",month10:"10 \u6708",month11:"11 \u6708",month12:"12 \u6708",weeks:{sun:"\u65E5",mon:"\u4E00",tue:"\u4E8C",wed:"\u4E09",thu:"\u56DB",fri:"\u4E94",sat:"\u516D"},months:{jan:"\u4E00\u6708",feb:"\u4E8C\u6708",mar:"\u4E09\u6708",apr:"\u56DB\u6708",may:"\u4E94\u6708",jun:"\u516D\u6708",jul:"\u4E03\u6708",aug:"\u516B\u6708",sep:"\u4E5D\u6708",oct:"\u5341\u6708",nov:"\u5341\u4E00\u6708",dec:"\u5341\u4E8C\u6708"}},select:{loading:"\u52A0\u8F09\u4E2D",noMatch:"\u7121\u5339\u914D\u8CC7\u6599",noData:"\u7121\u8CC7\u6599",placeholder:"\u8ACB\u9078\u64C7"},cascader:{noMatch:"\u7121\u5339\u914D\u8CC7\u6599",loading:"\u52A0\u8F09\u4E2D",placeholder:"\u8ACB\u9078\u64C7",noData:"\u7121\u8CC7\u6599"},pagination:{goto:"\u524D\u5F80",pagesize:"\u9805/\u9801",total:"\u5171 {total} \u9805",pageClassifier:"\u9801"},messagebox:{title:"\u63D0\u793A",confirm:"\u78BA\u5B9A",cancel:"\u53D6\u6D88",error:"\u8F38\u5165\u7684\u8CC7\u6599\u4E0D\u7B26\u898F\u5B9A!"},upload:{deleteTip:"\u6309 delete \u9375\u53EF\u522A\u9664",delete:"\u522A\u9664",preview:"\u67E5\u770B\u5716\u7247",continue:"\u7E7C\u7E8C\u4E0A\u50B3"},table:{emptyText:"\u66AB\u7121\u8CC7\u6599",confirmFilter:"\u7BE9\u9078",resetFilter:"\u91CD\u7F6E",clearFilter:"\u5168\u90E8",sumText:"\u5408\u8A08"},tree:{emptyText:"\u66AB\u7121\u8CC7\u6599"},transfer:{noMatch:"\u7121\u5339\u914D\u8CC7\u6599",noData:"\u7121\u8CC7\u6599",titles:["\u5217\u8868 1","\u5217\u8868 2"],filterPlaceholder:"\u8ACB\u8F38\u5165\u641C\u7D22\u5167\u5BB9",noCheckedFormat:"\u5171 {total} \u9805",hasCheckedFormat:"\u5DF2\u9078 {checked}/{total} \u9805"},image:{error:"\u52A0\u8F09\u5931\u6557"},pageHeader:{title:"\u8FD4\u56DE"},popconfirm:{confirmButtonText:"\u78BA\u8A8D",cancelButtonText:"\u53D6\u6D88"}}};export{u as default};
2
2
  //# sourceMappingURL=zh-tw.min.mjs.map
@@ -1,4 +1,4 @@
1
- /*! Element Plus v0.0.20220527 */
1
+ /*! Element Plus v0.0.20220528 */
2
2
 
3
3
  var zhTw = {
4
4
  name: "zh-tw",
@@ -0,0 +1,2 @@
1
+ export { useMonthRangeHeader } from './use-month-range-header2.mjs';
2
+ //# sourceMappingURL=use-month-range-header.mjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"use-month-range-header.mjs","sources":[],"sourcesContent":[],"names":[],"mappings":""}
@@ -0,0 +1,54 @@
1
+ import { computed } from 'vue';
2
+ import '../../../../hooks/index2.mjs';
3
+ import { useLocale } from '../../../../hooks/use-locale/index2.mjs';
4
+
5
+ const useMonthRangeHeader = ({
6
+ unlinkPanels,
7
+ leftDate,
8
+ rightDate
9
+ }) => {
10
+ const { t } = useLocale();
11
+ const leftPrevYear = () => {
12
+ leftDate.value = leftDate.value.subtract(1, "year");
13
+ if (!unlinkPanels) {
14
+ rightDate.value = rightDate.value.subtract(1, "year");
15
+ }
16
+ };
17
+ const rightNextYear = () => {
18
+ if (!unlinkPanels) {
19
+ leftDate.value = leftDate.value.add(1, "year");
20
+ }
21
+ rightDate.value = rightDate.value.add(1, "year");
22
+ };
23
+ const leftNextYear = () => {
24
+ leftDate.value = leftDate.value.add(1, "year");
25
+ };
26
+ const rightPrevYear = () => {
27
+ rightDate.value = rightDate.value.subtract(1, "year");
28
+ };
29
+ const leftLabel = computed(() => {
30
+ return `${leftDate.value.year()} ${t("el.datepicker.year")}`;
31
+ });
32
+ const rightLabel = computed(() => {
33
+ return `${rightDate.value.year()} ${t("el.datepicker.year")}`;
34
+ });
35
+ const leftYear = computed(() => {
36
+ return leftDate.value.year();
37
+ });
38
+ const rightYear = computed(() => {
39
+ return rightDate.value.year() === leftDate.value.year() ? leftDate.value.year() + 1 : rightDate.value.year();
40
+ });
41
+ return {
42
+ leftPrevYear,
43
+ rightNextYear,
44
+ leftNextYear,
45
+ rightPrevYear,
46
+ leftLabel,
47
+ rightLabel,
48
+ leftYear,
49
+ rightYear
50
+ };
51
+ };
52
+
53
+ export { useMonthRangeHeader };
54
+ //# sourceMappingURL=use-month-range-header2.mjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"use-month-range-header2.mjs","sources":["../../../../../../../packages/components/date-picker/src/composables/use-month-range-header.ts"],"sourcesContent":["import { computed } from 'vue'\nimport { useLocale } from '@element-plus/hooks'\nimport type { Ref, ToRef } from 'vue'\nimport type { Dayjs } from 'dayjs'\n\nexport const useMonthRangeHeader = ({\n unlinkPanels,\n leftDate,\n rightDate,\n}: {\n unlinkPanels: ToRef<boolean>\n leftDate: Ref<Dayjs>\n rightDate: Ref<Dayjs>\n}) => {\n const { t } = useLocale()\n const leftPrevYear = () => {\n leftDate.value = leftDate.value.subtract(1, 'year')\n if (!unlinkPanels) {\n rightDate.value = rightDate.value.subtract(1, 'year')\n }\n }\n\n const rightNextYear = () => {\n if (!unlinkPanels) {\n leftDate.value = leftDate.value.add(1, 'year')\n }\n rightDate.value = rightDate.value.add(1, 'year')\n }\n\n const leftNextYear = () => {\n leftDate.value = leftDate.value.add(1, 'year')\n }\n\n const rightPrevYear = () => {\n rightDate.value = rightDate.value.subtract(1, 'year')\n }\n const leftLabel = computed(() => {\n return `${leftDate.value.year()} ${t('el.datepicker.year')}`\n })\n\n const rightLabel = computed(() => {\n return `${rightDate.value.year()} ${t('el.datepicker.year')}`\n })\n\n const leftYear = computed(() => {\n return leftDate.value.year()\n })\n\n const rightYear = computed(() => {\n return rightDate.value.year() === leftDate.value.year()\n ? leftDate.value.year() + 1\n : rightDate.value.year()\n })\n\n return {\n leftPrevYear,\n rightNextYear,\n leftNextYear,\n rightPrevYear,\n leftLabel,\n rightLabel,\n leftYear,\n rightYear,\n }\n}\n"],"names":[],"mappings":";;;;AAEY,MAAC,mBAAmB,GAAG,CAAC;AACpC,EAAE,YAAY;AACd,EAAE,QAAQ;AACV,EAAE,SAAS;AACX,CAAC,KAAK;AACN,EAAE,MAAM,EAAE,CAAC,EAAE,GAAG,SAAS,EAAE,CAAC;AAC5B,EAAE,MAAM,YAAY,GAAG,MAAM;AAC7B,IAAI,QAAQ,CAAC,KAAK,GAAG,QAAQ,CAAC,KAAK,CAAC,QAAQ,CAAC,CAAC,EAAE,MAAM,CAAC,CAAC;AACxD,IAAI,IAAI,CAAC,YAAY,EAAE;AACvB,MAAM,SAAS,CAAC,KAAK,GAAG,SAAS,CAAC,KAAK,CAAC,QAAQ,CAAC,CAAC,EAAE,MAAM,CAAC,CAAC;AAC5D,KAAK;AACL,GAAG,CAAC;AACJ,EAAE,MAAM,aAAa,GAAG,MAAM;AAC9B,IAAI,IAAI,CAAC,YAAY,EAAE;AACvB,MAAM,QAAQ,CAAC,KAAK,GAAG,QAAQ,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,EAAE,MAAM,CAAC,CAAC;AACrD,KAAK;AACL,IAAI,SAAS,CAAC,KAAK,GAAG,SAAS,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,EAAE,MAAM,CAAC,CAAC;AACrD,GAAG,CAAC;AACJ,EAAE,MAAM,YAAY,GAAG,MAAM;AAC7B,IAAI,QAAQ,CAAC,KAAK,GAAG,QAAQ,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,EAAE,MAAM,CAAC,CAAC;AACnD,GAAG,CAAC;AACJ,EAAE,MAAM,aAAa,GAAG,MAAM;AAC9B,IAAI,SAAS,CAAC,KAAK,GAAG,SAAS,CAAC,KAAK,CAAC,QAAQ,CAAC,CAAC,EAAE,MAAM,CAAC,CAAC;AAC1D,GAAG,CAAC;AACJ,EAAE,MAAM,SAAS,GAAG,QAAQ,CAAC,MAAM;AACnC,IAAI,OAAO,CAAC,EAAE,QAAQ,CAAC,KAAK,CAAC,IAAI,EAAE,CAAC,CAAC,EAAE,CAAC,CAAC,oBAAoB,CAAC,CAAC,CAAC,CAAC;AACjE,GAAG,CAAC,CAAC;AACL,EAAE,MAAM,UAAU,GAAG,QAAQ,CAAC,MAAM;AACpC,IAAI,OAAO,CAAC,EAAE,SAAS,CAAC,KAAK,CAAC,IAAI,EAAE,CAAC,CAAC,EAAE,CAAC,CAAC,oBAAoB,CAAC,CAAC,CAAC,CAAC;AAClE,GAAG,CAAC,CAAC;AACL,EAAE,MAAM,QAAQ,GAAG,QAAQ,CAAC,MAAM;AAClC,IAAI,OAAO,QAAQ,CAAC,KAAK,CAAC,IAAI,EAAE,CAAC;AACjC,GAAG,CAAC,CAAC;AACL,EAAE,MAAM,SAAS,GAAG,QAAQ,CAAC,MAAM;AACnC,IAAI,OAAO,SAAS,CAAC,KAAK,CAAC,IAAI,EAAE,KAAK,QAAQ,CAAC,KAAK,CAAC,IAAI,EAAE,GAAG,QAAQ,CAAC,KAAK,CAAC,IAAI,EAAE,GAAG,CAAC,GAAG,SAAS,CAAC,KAAK,CAAC,IAAI,EAAE,CAAC;AACjH,GAAG,CAAC,CAAC;AACL,EAAE,OAAO;AACT,IAAI,YAAY;AAChB,IAAI,aAAa;AACjB,IAAI,YAAY;AAChB,IAAI,aAAa;AACjB,IAAI,SAAS;AACb,IAAI,UAAU;AACd,IAAI,QAAQ;AACZ,IAAI,SAAS;AACb,GAAG,CAAC;AACJ;;;;"}
@@ -6,6 +6,7 @@ import '../../../../utils/index2.mjs';
6
6
  import { DArrowLeft, DArrowRight } from '@element-plus/icons-vue';
7
7
  import '../../../../tokens/index2.mjs';
8
8
  import { panelMonthRangeProps, panelMonthRangeEmits } from '../props/panel-month-range2.mjs';
9
+ import { useMonthRangeHeader } from '../composables/use-month-range-header2.mjs';
9
10
  import MonthTable from './basic-month-table2.mjs';
10
11
  import _export_sfc from '../../../../_virtual/plugin-vue_export-helper.mjs';
11
12
  import { ROOT_PICKER_INJECTION_KEY } from '../../../../tokens/date-picker2.mjs';
@@ -29,7 +30,7 @@ const _sfc_main = /* @__PURE__ */ defineComponent({
29
30
  const slots = useSlots();
30
31
  const { pickerNs: ppNs } = inject(ROOT_PICKER_INJECTION_KEY);
31
32
  const drpNs = useNamespace("date-range-picker");
32
- const { t, lang } = useLocale();
33
+ const { lang } = useLocale();
33
34
  const leftDate = ref(dayjs().locale(lang.value));
34
35
  const rightDate = ref(dayjs().locale(lang.value).add(1, "year"));
35
36
  const hasShortcuts = computed(() => !!shortcuts.length);
@@ -50,35 +51,19 @@ const _sfc_main = /* @__PURE__ */ defineComponent({
50
51
  });
51
52
  }
52
53
  };
53
- const leftPrevYear = () => {
54
- leftDate.value = leftDate.value.subtract(1, "year");
55
- if (!props.unlinkPanels) {
56
- rightDate.value = rightDate.value.subtract(1, "year");
57
- }
58
- };
59
- const rightNextYear = () => {
60
- if (!props.unlinkPanels) {
61
- leftDate.value = leftDate.value.add(1, "year");
62
- }
63
- rightDate.value = rightDate.value.add(1, "year");
64
- };
65
- const leftNextYear = () => {
66
- leftDate.value = leftDate.value.add(1, "year");
67
- };
68
- const rightPrevYear = () => {
69
- rightDate.value = rightDate.value.subtract(1, "year");
70
- };
71
- const leftLabel = computed(() => {
72
- return `${leftDate.value.year()} ${t("el.datepicker.year")}`;
73
- });
74
- const rightLabel = computed(() => {
75
- return `${rightDate.value.year()} ${t("el.datepicker.year")}`;
76
- });
77
- const leftYear = computed(() => {
78
- return leftDate.value.year();
79
- });
80
- const rightYear = computed(() => {
81
- return rightDate.value.year() === leftDate.value.year() ? leftDate.value.year() + 1 : rightDate.value.year();
54
+ const {
55
+ leftPrevYear,
56
+ rightNextYear,
57
+ leftNextYear,
58
+ rightPrevYear,
59
+ leftLabel,
60
+ rightLabel,
61
+ leftYear,
62
+ rightYear
63
+ } = useMonthRangeHeader({
64
+ unlinkPanels: toRef(props, "unlinkPanels"),
65
+ leftDate,
66
+ rightDate
82
67
  });
83
68
  const enableYearArrow = computed(() => {
84
69
  return props.unlinkPanels && rightYear.value > leftYear.value + 1;
@@ -210,7 +195,7 @@ const _sfc_main = /* @__PURE__ */ defineComponent({
210
195
  createElementVNode("button", {
211
196
  type: "button",
212
197
  class: normalizeClass([unref(ppNs).e("icon-btn"), "d-arrow-left"]),
213
- onClick: leftPrevYear
198
+ onClick: _cache[0] || (_cache[0] = (...args) => unref(leftPrevYear) && unref(leftPrevYear)(...args))
214
199
  }, [
215
200
  createVNode(unref(ElIcon), null, {
216
201
  default: withCtx(() => [
@@ -227,7 +212,7 @@ const _sfc_main = /* @__PURE__ */ defineComponent({
227
212
  unref(ppNs).e("icon-btn"),
228
213
  { [unref(ppNs).is("disabled")]: !unref(enableYearArrow) }
229
214
  ], "d-arrow-right"]),
230
- onClick: leftNextYear
215
+ onClick: _cache[1] || (_cache[1] = (...args) => unref(leftNextYear) && unref(leftNextYear)(...args))
231
216
  }, [
232
217
  createVNode(unref(ElIcon), null, {
233
218
  default: withCtx(() => [
@@ -261,7 +246,7 @@ const _sfc_main = /* @__PURE__ */ defineComponent({
261
246
  type: "button",
262
247
  disabled: !unref(enableYearArrow),
263
248
  class: normalizeClass([[unref(ppNs).e("icon-btn"), { "is-disabled": !unref(enableYearArrow) }], "d-arrow-left"]),
264
- onClick: rightPrevYear
249
+ onClick: _cache[2] || (_cache[2] = (...args) => unref(rightPrevYear) && unref(rightPrevYear)(...args))
265
250
  }, [
266
251
  createVNode(unref(ElIcon), null, {
267
252
  default: withCtx(() => [
@@ -273,7 +258,7 @@ const _sfc_main = /* @__PURE__ */ defineComponent({
273
258
  createElementVNode("button", {
274
259
  type: "button",
275
260
  class: normalizeClass([unref(ppNs).e("icon-btn"), "d-arrow-right"]),
276
- onClick: rightNextYear
261
+ onClick: _cache[3] || (_cache[3] = (...args) => unref(rightNextYear) && unref(rightNextYear)(...args))
277
262
  }, [
278
263
  createVNode(unref(ElIcon), null, {
279
264
  default: withCtx(() => [
@@ -1 +1 @@
1
- {"version":3,"file":"panel-month-range2.mjs","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 <el-icon><d-arrow-left /></el-icon>\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 <el-icon><d-arrow-right /></el-icon>\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 <el-icon><d-arrow-left /></el-icon>\n </button>\n <button\n type=\"button\"\n :class=\"ppNs.e('icon-btn')\"\n class=\"d-arrow-right\"\n @click=\"rightNextYear\"\n >\n <el-icon><d-arrow-right /></el-icon>\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, useAttrs, useSlots, watch } from 'vue'\nimport dayjs from 'dayjs'\nimport ElIcon from '@element-plus/components/icon'\nimport { useLocale, useNamespace } from '@element-plus/hooks'\nimport { isArray, isFunction } from '@element-plus/utils'\nimport { DArrowLeft, DArrowRight } from '@element-plus/icons-vue'\nimport { ROOT_PICKER_INJECTION_KEY } from '@element-plus/tokens'\nimport {\n panelMonthRangeEmits,\n panelMonthRangeProps,\n} from '../props/panel-month-range'\nimport MonthTable from './basic-month-table.vue'\n\nimport type { SetupContext } from 'vue'\nimport type { Dayjs } from 'dayjs'\nimport type { RangeState } from '../props/shared'\n\ndefineOptions({\n name: 'DatePickerMonthRange',\n})\n\nconst props = defineProps(panelMonthRangeProps)\nconst emit = defineEmits(panelMonthRangeEmits)\nconst attrs = useAttrs()\nconst slots = useSlots()\n\nconst { pickerNs: ppNs } = inject(ROOT_PICKER_INJECTION_KEY)!\nconst drpNs = useNamespace('date-range-picker')\nconst { t, lang } = useLocale()\nconst leftDate = ref(dayjs().locale(lang.value))\nconst rightDate = ref(dayjs().locale(lang.value).add(1, 'year'))\n\nconst hasShortcuts = computed(() => !!shortcuts.length)\n\n// FIXME: extract this to `date-picker.ts`\ntype Shortcut = {\n text: string\n value: [Date, Date] | (() => [Date, Date])\n onClick?: (\n ctx: Omit<SetupContext<typeof panelMonthRangeEmits>, 'expose'>\n ) => void\n}\n\nconst handleShortcutClick = (shortcut: Shortcut) => {\n const shortcutValues = isFunction(shortcut.value)\n ? shortcut.value()\n : shortcut.value\n\n if (shortcutValues) {\n emit('pick', [\n dayjs(shortcutValues[0]).locale(lang.value),\n dayjs(shortcutValues[1]).locale(lang.value),\n ])\n return\n }\n if (shortcut.onClick) {\n shortcut.onClick({\n attrs,\n slots,\n emit,\n })\n }\n}\n\nconst leftPrevYear = () => {\n leftDate.value = leftDate.value.subtract(1, 'year')\n if (!props.unlinkPanels) {\n rightDate.value = rightDate.value.subtract(1, 'year')\n }\n}\n\nconst rightNextYear = () => {\n if (!props.unlinkPanels) {\n leftDate.value = leftDate.value.add(1, 'year')\n }\n rightDate.value = rightDate.value.add(1, 'year')\n}\n\nconst leftNextYear = () => {\n leftDate.value = leftDate.value.add(1, 'year')\n}\n\nconst rightPrevYear = () => {\n rightDate.value = rightDate.value.subtract(1, 'year')\n}\nconst leftLabel = computed(() => {\n return `${leftDate.value.year()} ${t('el.datepicker.year')}`\n})\n\nconst rightLabel = computed(() => {\n return `${rightDate.value.year()} ${t('el.datepicker.year')}`\n})\n\nconst leftYear = computed(() => {\n return leftDate.value.year()\n})\n\nconst rightYear = computed(() => {\n return rightDate.value.year() === leftDate.value.year()\n ? leftDate.value.year() + 1\n : rightDate.value.year()\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}\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 maxDate.value = maxDate_\n minDate.value = minDate_\n\n if (!close) return\n handleConfirm()\n}\n\nconst isValidValue = (value: [Dayjs | undefined, Dayjs | undefined]) => {\n return (\n isArray(value) &&\n value &&\n value[0] &&\n value[1] &&\n value[0].valueOf() <= value[1].valueOf()\n )\n}\n\nconst handleConfirm = (visible = false) => {\n if (isValidValue([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 formatToString = (days: Dayjs[]) => {\n return days.map((day) => day.format(format))\n}\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(1, 'year')\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(1, 'year')]\n}\n\n// pickerBase.hub.emit('SetPickerOption', ['isValidValue', isValidValue])\nemit('set-picker-option', ['formatToString', formatToString])\nconst pickerBase = inject('EP_PICKER_BASE') as any\nconst { shortcuts, disabledDate, format } = pickerBase.props\nconst defaultValue = toRef(pickerBase.props, 'defaultValue')\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(1, 'year')\n : maxDate.value\n } else {\n rightDate.value = leftDate.value.add(1, '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</script>\n"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"panel-month-range2.mjs","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 <el-icon><d-arrow-left /></el-icon>\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 <el-icon><d-arrow-right /></el-icon>\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 <el-icon><d-arrow-left /></el-icon>\n </button>\n <button\n type=\"button\"\n :class=\"ppNs.e('icon-btn')\"\n class=\"d-arrow-right\"\n @click=\"rightNextYear\"\n >\n <el-icon><d-arrow-right /></el-icon>\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, useAttrs, useSlots, watch } from 'vue'\nimport dayjs from 'dayjs'\nimport ElIcon from '@element-plus/components/icon'\nimport { useLocale, useNamespace } from '@element-plus/hooks'\nimport { isArray, isFunction } from '@element-plus/utils'\nimport { DArrowLeft, DArrowRight } from '@element-plus/icons-vue'\nimport { ROOT_PICKER_INJECTION_KEY } from '@element-plus/tokens'\nimport {\n panelMonthRangeEmits,\n panelMonthRangeProps,\n} from '../props/panel-month-range'\nimport { useMonthRangeHeader } from '../composables/use-month-range-header'\nimport MonthTable from './basic-month-table.vue'\n\nimport type { SetupContext } from 'vue'\nimport type { Dayjs } from 'dayjs'\nimport type { RangeState } from '../props/shared'\n\ndefineOptions({\n name: 'DatePickerMonthRange',\n})\n\nconst props = defineProps(panelMonthRangeProps)\nconst emit = defineEmits(panelMonthRangeEmits)\nconst attrs = useAttrs()\nconst slots = useSlots()\n\nconst { pickerNs: ppNs } = inject(ROOT_PICKER_INJECTION_KEY)!\nconst drpNs = useNamespace('date-range-picker')\nconst { lang } = useLocale()\nconst leftDate = ref(dayjs().locale(lang.value))\nconst rightDate = ref(dayjs().locale(lang.value).add(1, 'year'))\n\nconst hasShortcuts = computed(() => !!shortcuts.length)\n\n// FIXME: extract this to `date-picker.ts`\ntype Shortcut = {\n text: string\n value: [Date, Date] | (() => [Date, Date])\n onClick?: (\n ctx: Omit<SetupContext<typeof panelMonthRangeEmits>, 'expose'>\n ) => void\n}\n\nconst handleShortcutClick = (shortcut: Shortcut) => {\n const shortcutValues = isFunction(shortcut.value)\n ? shortcut.value()\n : shortcut.value\n\n if (shortcutValues) {\n emit('pick', [\n dayjs(shortcutValues[0]).locale(lang.value),\n dayjs(shortcutValues[1]).locale(lang.value),\n ])\n return\n }\n if (shortcut.onClick) {\n shortcut.onClick({\n attrs,\n slots,\n emit,\n })\n }\n}\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\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}\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 maxDate.value = maxDate_\n minDate.value = minDate_\n\n if (!close) return\n handleConfirm()\n}\n\nconst isValidValue = (value: [Dayjs | undefined, Dayjs | undefined]) => {\n return (\n isArray(value) &&\n value &&\n value[0] &&\n value[1] &&\n value[0].valueOf() <= value[1].valueOf()\n )\n}\n\nconst handleConfirm = (visible = false) => {\n if (isValidValue([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 formatToString = (days: Dayjs[]) => {\n return days.map((day) => day.format(format))\n}\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(1, 'year')\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(1, 'year')]\n}\n\n// pickerBase.hub.emit('SetPickerOption', ['isValidValue', isValidValue])\nemit('set-picker-option', ['formatToString', formatToString])\nconst pickerBase = inject('EP_PICKER_BASE') as any\nconst { shortcuts, disabledDate, format } = pickerBase.props\nconst defaultValue = toRef(pickerBase.props, 'defaultValue')\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(1, 'year')\n : maxDate.value\n } else {\n rightDate.value = leftDate.value.add(1, '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</script>\n"],"names":[],"mappings":"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"}
@@ -0,0 +1,16 @@
1
+ import type { Ref, ToRef } from 'vue';
2
+ import type { Dayjs } from 'dayjs';
3
+ export declare const useMonthRangeHeader: ({ unlinkPanels, leftDate, rightDate, }: {
4
+ unlinkPanels: ToRef<boolean>;
5
+ leftDate: Ref<Dayjs>;
6
+ rightDate: Ref<Dayjs>;
7
+ }) => {
8
+ leftPrevYear: () => void;
9
+ rightNextYear: () => void;
10
+ leftNextYear: () => void;
11
+ rightPrevYear: () => void;
12
+ leftLabel: import("vue").ComputedRef<string>;
13
+ rightLabel: import("vue").ComputedRef<string>;
14
+ leftYear: import("vue").ComputedRef<number>;
15
+ rightYear: import("vue").ComputedRef<number>;
16
+ };
@@ -65,7 +65,6 @@ declare const _default: import("vue").DefineComponent<{
65
65
  cssVarBlock: (object: Record<string, string>) => Record<string, string>;
66
66
  cssVarBlockName: (name: string) => string;
67
67
  };
68
- t: import("element-plus/es/hooks").Translator;
69
68
  lang: import("vue").Ref<string>;
70
69
  leftDate: import("vue").Ref<{
71
70
  clone: () => dayjs.Dayjs;
@@ -1268,7 +1268,6 @@ export declare const getPanel: (type: IDatePickerType) => import("vue").DefineCo
1268
1268
  cssVarBlock: (object: Record<string, string>) => Record<string, string>;
1269
1269
  cssVarBlockName: (name: string) => string;
1270
1270
  };
1271
- t: import("../../..").Translator;
1272
1271
  lang: import("vue").Ref<string>;
1273
1272
  leftDate: import("vue").Ref<{
1274
1273
  clone: () => Dayjs;
@@ -1 +1 @@
1
- export declare const version = "0.0.20220527";
1
+ export declare const version = "0.0.20220528";
package/es/version2.mjs CHANGED
@@ -1,4 +1,4 @@
1
- const version = "0.0.20220527";
1
+ const version = "0.0.20220528";
2
2
 
3
3
  export { version };
4
4
  //# sourceMappingURL=version2.mjs.map
@@ -1 +1 @@
1
- {"version":3,"file":"version2.mjs","sources":["../../../packages/element-plus/version.ts"],"sourcesContent":["export const version = '0.0.20220527'\n"],"names":[],"mappings":"AAAY,MAAC,OAAO,GAAG;;;;"}
1
+ {"version":3,"file":"version2.mjs","sources":["../../../packages/element-plus/version.ts"],"sourcesContent":["export const version = '0.0.20220528'\n"],"names":[],"mappings":"AAAY,MAAC,OAAO,GAAG;;;;"}
@@ -0,0 +1,10 @@
1
+ 'use strict';
2
+
3
+ Object.defineProperty(exports, '__esModule', { value: true });
4
+
5
+ var useMonthRangeHeader = require('./use-month-range-header2.js');
6
+
7
+
8
+
9
+ exports.useMonthRangeHeader = useMonthRangeHeader.useMonthRangeHeader;
10
+ //# sourceMappingURL=use-month-range-header.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"use-month-range-header.js","sources":[],"sourcesContent":[],"names":[],"mappings":";;;;;;;;"}
@@ -0,0 +1,58 @@
1
+ 'use strict';
2
+
3
+ Object.defineProperty(exports, '__esModule', { value: true });
4
+
5
+ var vue = require('vue');
6
+ require('../../../../hooks/index2.js');
7
+ var index = require('../../../../hooks/use-locale/index2.js');
8
+
9
+ const useMonthRangeHeader = ({
10
+ unlinkPanels,
11
+ leftDate,
12
+ rightDate
13
+ }) => {
14
+ const { t } = index.useLocale();
15
+ const leftPrevYear = () => {
16
+ leftDate.value = leftDate.value.subtract(1, "year");
17
+ if (!unlinkPanels) {
18
+ rightDate.value = rightDate.value.subtract(1, "year");
19
+ }
20
+ };
21
+ const rightNextYear = () => {
22
+ if (!unlinkPanels) {
23
+ leftDate.value = leftDate.value.add(1, "year");
24
+ }
25
+ rightDate.value = rightDate.value.add(1, "year");
26
+ };
27
+ const leftNextYear = () => {
28
+ leftDate.value = leftDate.value.add(1, "year");
29
+ };
30
+ const rightPrevYear = () => {
31
+ rightDate.value = rightDate.value.subtract(1, "year");
32
+ };
33
+ const leftLabel = vue.computed(() => {
34
+ return `${leftDate.value.year()} ${t("el.datepicker.year")}`;
35
+ });
36
+ const rightLabel = vue.computed(() => {
37
+ return `${rightDate.value.year()} ${t("el.datepicker.year")}`;
38
+ });
39
+ const leftYear = vue.computed(() => {
40
+ return leftDate.value.year();
41
+ });
42
+ const rightYear = vue.computed(() => {
43
+ return rightDate.value.year() === leftDate.value.year() ? leftDate.value.year() + 1 : rightDate.value.year();
44
+ });
45
+ return {
46
+ leftPrevYear,
47
+ rightNextYear,
48
+ leftNextYear,
49
+ rightPrevYear,
50
+ leftLabel,
51
+ rightLabel,
52
+ leftYear,
53
+ rightYear
54
+ };
55
+ };
56
+
57
+ exports.useMonthRangeHeader = useMonthRangeHeader;
58
+ //# sourceMappingURL=use-month-range-header2.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"use-month-range-header2.js","sources":["../../../../../../../packages/components/date-picker/src/composables/use-month-range-header.ts"],"sourcesContent":["import { computed } from 'vue'\nimport { useLocale } from '@element-plus/hooks'\nimport type { Ref, ToRef } from 'vue'\nimport type { Dayjs } from 'dayjs'\n\nexport const useMonthRangeHeader = ({\n unlinkPanels,\n leftDate,\n rightDate,\n}: {\n unlinkPanels: ToRef<boolean>\n leftDate: Ref<Dayjs>\n rightDate: Ref<Dayjs>\n}) => {\n const { t } = useLocale()\n const leftPrevYear = () => {\n leftDate.value = leftDate.value.subtract(1, 'year')\n if (!unlinkPanels) {\n rightDate.value = rightDate.value.subtract(1, 'year')\n }\n }\n\n const rightNextYear = () => {\n if (!unlinkPanels) {\n leftDate.value = leftDate.value.add(1, 'year')\n }\n rightDate.value = rightDate.value.add(1, 'year')\n }\n\n const leftNextYear = () => {\n leftDate.value = leftDate.value.add(1, 'year')\n }\n\n const rightPrevYear = () => {\n rightDate.value = rightDate.value.subtract(1, 'year')\n }\n const leftLabel = computed(() => {\n return `${leftDate.value.year()} ${t('el.datepicker.year')}`\n })\n\n const rightLabel = computed(() => {\n return `${rightDate.value.year()} ${t('el.datepicker.year')}`\n })\n\n const leftYear = computed(() => {\n return leftDate.value.year()\n })\n\n const rightYear = computed(() => {\n return rightDate.value.year() === leftDate.value.year()\n ? leftDate.value.year() + 1\n : rightDate.value.year()\n })\n\n return {\n leftPrevYear,\n rightNextYear,\n leftNextYear,\n rightPrevYear,\n leftLabel,\n rightLabel,\n leftYear,\n rightYear,\n }\n}\n"],"names":["useLocale","computed"],"mappings":";;;;;;;;AAEY,MAAC,mBAAmB,GAAG,CAAC;AACpC,EAAE,YAAY;AACd,EAAE,QAAQ;AACV,EAAE,SAAS;AACX,CAAC,KAAK;AACN,EAAE,MAAM,EAAE,CAAC,EAAE,GAAGA,eAAS,EAAE,CAAC;AAC5B,EAAE,MAAM,YAAY,GAAG,MAAM;AAC7B,IAAI,QAAQ,CAAC,KAAK,GAAG,QAAQ,CAAC,KAAK,CAAC,QAAQ,CAAC,CAAC,EAAE,MAAM,CAAC,CAAC;AACxD,IAAI,IAAI,CAAC,YAAY,EAAE;AACvB,MAAM,SAAS,CAAC,KAAK,GAAG,SAAS,CAAC,KAAK,CAAC,QAAQ,CAAC,CAAC,EAAE,MAAM,CAAC,CAAC;AAC5D,KAAK;AACL,GAAG,CAAC;AACJ,EAAE,MAAM,aAAa,GAAG,MAAM;AAC9B,IAAI,IAAI,CAAC,YAAY,EAAE;AACvB,MAAM,QAAQ,CAAC,KAAK,GAAG,QAAQ,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,EAAE,MAAM,CAAC,CAAC;AACrD,KAAK;AACL,IAAI,SAAS,CAAC,KAAK,GAAG,SAAS,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,EAAE,MAAM,CAAC,CAAC;AACrD,GAAG,CAAC;AACJ,EAAE,MAAM,YAAY,GAAG,MAAM;AAC7B,IAAI,QAAQ,CAAC,KAAK,GAAG,QAAQ,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,EAAE,MAAM,CAAC,CAAC;AACnD,GAAG,CAAC;AACJ,EAAE,MAAM,aAAa,GAAG,MAAM;AAC9B,IAAI,SAAS,CAAC,KAAK,GAAG,SAAS,CAAC,KAAK,CAAC,QAAQ,CAAC,CAAC,EAAE,MAAM,CAAC,CAAC;AAC1D,GAAG,CAAC;AACJ,EAAE,MAAM,SAAS,GAAGC,YAAQ,CAAC,MAAM;AACnC,IAAI,OAAO,CAAC,EAAE,QAAQ,CAAC,KAAK,CAAC,IAAI,EAAE,CAAC,CAAC,EAAE,CAAC,CAAC,oBAAoB,CAAC,CAAC,CAAC,CAAC;AACjE,GAAG,CAAC,CAAC;AACL,EAAE,MAAM,UAAU,GAAGA,YAAQ,CAAC,MAAM;AACpC,IAAI,OAAO,CAAC,EAAE,SAAS,CAAC,KAAK,CAAC,IAAI,EAAE,CAAC,CAAC,EAAE,CAAC,CAAC,oBAAoB,CAAC,CAAC,CAAC,CAAC;AAClE,GAAG,CAAC,CAAC;AACL,EAAE,MAAM,QAAQ,GAAGA,YAAQ,CAAC,MAAM;AAClC,IAAI,OAAO,QAAQ,CAAC,KAAK,CAAC,IAAI,EAAE,CAAC;AACjC,GAAG,CAAC,CAAC;AACL,EAAE,MAAM,SAAS,GAAGA,YAAQ,CAAC,MAAM;AACnC,IAAI,OAAO,SAAS,CAAC,KAAK,CAAC,IAAI,EAAE,KAAK,QAAQ,CAAC,KAAK,CAAC,IAAI,EAAE,GAAG,QAAQ,CAAC,KAAK,CAAC,IAAI,EAAE,GAAG,CAAC,GAAG,SAAS,CAAC,KAAK,CAAC,IAAI,EAAE,CAAC;AACjH,GAAG,CAAC,CAAC;AACL,EAAE,OAAO;AACT,IAAI,YAAY;AAChB,IAAI,aAAa;AACjB,IAAI,YAAY;AAChB,IAAI,aAAa;AACjB,IAAI,SAAS;AACb,IAAI,UAAU;AACd,IAAI,QAAQ;AACZ,IAAI,SAAS;AACb,GAAG,CAAC;AACJ;;;;"}
@@ -10,6 +10,7 @@ require('../../../../utils/index2.js');
10
10
  var iconsVue = require('@element-plus/icons-vue');
11
11
  require('../../../../tokens/index2.js');
12
12
  var panelMonthRange = require('../props/panel-month-range2.js');
13
+ var useMonthRangeHeader = require('../composables/use-month-range-header2.js');
13
14
  var basicMonthTable = require('./basic-month-table2.js');
14
15
  var pluginVue_exportHelper = require('../../../../_virtual/plugin-vue_export-helper.js');
15
16
  var datePicker = require('../../../../tokens/date-picker2.js');
@@ -37,7 +38,7 @@ const _sfc_main = /* @__PURE__ */ vue.defineComponent({
37
38
  const slots = vue.useSlots();
38
39
  const { pickerNs: ppNs } = vue.inject(datePicker.ROOT_PICKER_INJECTION_KEY);
39
40
  const drpNs = index.useNamespace("date-range-picker");
40
- const { t, lang } = index$1.useLocale();
41
+ const { lang } = index$1.useLocale();
41
42
  const leftDate = vue.ref(dayjs__default["default"]().locale(lang.value));
42
43
  const rightDate = vue.ref(dayjs__default["default"]().locale(lang.value).add(1, "year"));
43
44
  const hasShortcuts = vue.computed(() => !!shortcuts.length);
@@ -58,35 +59,19 @@ const _sfc_main = /* @__PURE__ */ vue.defineComponent({
58
59
  });
59
60
  }
60
61
  };
61
- const leftPrevYear = () => {
62
- leftDate.value = leftDate.value.subtract(1, "year");
63
- if (!props.unlinkPanels) {
64
- rightDate.value = rightDate.value.subtract(1, "year");
65
- }
66
- };
67
- const rightNextYear = () => {
68
- if (!props.unlinkPanels) {
69
- leftDate.value = leftDate.value.add(1, "year");
70
- }
71
- rightDate.value = rightDate.value.add(1, "year");
72
- };
73
- const leftNextYear = () => {
74
- leftDate.value = leftDate.value.add(1, "year");
75
- };
76
- const rightPrevYear = () => {
77
- rightDate.value = rightDate.value.subtract(1, "year");
78
- };
79
- const leftLabel = vue.computed(() => {
80
- return `${leftDate.value.year()} ${t("el.datepicker.year")}`;
81
- });
82
- const rightLabel = vue.computed(() => {
83
- return `${rightDate.value.year()} ${t("el.datepicker.year")}`;
84
- });
85
- const leftYear = vue.computed(() => {
86
- return leftDate.value.year();
87
- });
88
- const rightYear = vue.computed(() => {
89
- return rightDate.value.year() === leftDate.value.year() ? leftDate.value.year() + 1 : rightDate.value.year();
62
+ const {
63
+ leftPrevYear,
64
+ rightNextYear,
65
+ leftNextYear,
66
+ rightPrevYear,
67
+ leftLabel,
68
+ rightLabel,
69
+ leftYear,
70
+ rightYear
71
+ } = useMonthRangeHeader.useMonthRangeHeader({
72
+ unlinkPanels: vue.toRef(props, "unlinkPanels"),
73
+ leftDate,
74
+ rightDate
90
75
  });
91
76
  const enableYearArrow = vue.computed(() => {
92
77
  return props.unlinkPanels && rightYear.value > leftYear.value + 1;
@@ -218,7 +203,7 @@ const _sfc_main = /* @__PURE__ */ vue.defineComponent({
218
203
  vue.createElementVNode("button", {
219
204
  type: "button",
220
205
  class: vue.normalizeClass([vue.unref(ppNs).e("icon-btn"), "d-arrow-left"]),
221
- onClick: leftPrevYear
206
+ onClick: _cache[0] || (_cache[0] = (...args) => vue.unref(leftPrevYear) && vue.unref(leftPrevYear)(...args))
222
207
  }, [
223
208
  vue.createVNode(vue.unref(index$2.ElIcon), null, {
224
209
  default: vue.withCtx(() => [
@@ -235,7 +220,7 @@ const _sfc_main = /* @__PURE__ */ vue.defineComponent({
235
220
  vue.unref(ppNs).e("icon-btn"),
236
221
  { [vue.unref(ppNs).is("disabled")]: !vue.unref(enableYearArrow) }
237
222
  ], "d-arrow-right"]),
238
- onClick: leftNextYear
223
+ onClick: _cache[1] || (_cache[1] = (...args) => vue.unref(leftNextYear) && vue.unref(leftNextYear)(...args))
239
224
  }, [
240
225
  vue.createVNode(vue.unref(index$2.ElIcon), null, {
241
226
  default: vue.withCtx(() => [
@@ -269,7 +254,7 @@ const _sfc_main = /* @__PURE__ */ vue.defineComponent({
269
254
  type: "button",
270
255
  disabled: !vue.unref(enableYearArrow),
271
256
  class: vue.normalizeClass([[vue.unref(ppNs).e("icon-btn"), { "is-disabled": !vue.unref(enableYearArrow) }], "d-arrow-left"]),
272
- onClick: rightPrevYear
257
+ onClick: _cache[2] || (_cache[2] = (...args) => vue.unref(rightPrevYear) && vue.unref(rightPrevYear)(...args))
273
258
  }, [
274
259
  vue.createVNode(vue.unref(index$2.ElIcon), null, {
275
260
  default: vue.withCtx(() => [
@@ -281,7 +266,7 @@ const _sfc_main = /* @__PURE__ */ vue.defineComponent({
281
266
  vue.createElementVNode("button", {
282
267
  type: "button",
283
268
  class: vue.normalizeClass([vue.unref(ppNs).e("icon-btn"), "d-arrow-right"]),
284
- onClick: rightNextYear
269
+ onClick: _cache[3] || (_cache[3] = (...args) => vue.unref(rightNextYear) && vue.unref(rightNextYear)(...args))
285
270
  }, [
286
271
  vue.createVNode(vue.unref(index$2.ElIcon), null, {
287
272
  default: vue.withCtx(() => [
@@ -1 +1 @@
1
- {"version":3,"file":"panel-month-range2.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 <el-icon><d-arrow-left /></el-icon>\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 <el-icon><d-arrow-right /></el-icon>\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 <el-icon><d-arrow-left /></el-icon>\n </button>\n <button\n type=\"button\"\n :class=\"ppNs.e('icon-btn')\"\n class=\"d-arrow-right\"\n @click=\"rightNextYear\"\n >\n <el-icon><d-arrow-right /></el-icon>\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, useAttrs, useSlots, watch } from 'vue'\nimport dayjs from 'dayjs'\nimport ElIcon from '@element-plus/components/icon'\nimport { useLocale, useNamespace } from '@element-plus/hooks'\nimport { isArray, isFunction } from '@element-plus/utils'\nimport { DArrowLeft, DArrowRight } from '@element-plus/icons-vue'\nimport { ROOT_PICKER_INJECTION_KEY } from '@element-plus/tokens'\nimport {\n panelMonthRangeEmits,\n panelMonthRangeProps,\n} from '../props/panel-month-range'\nimport MonthTable from './basic-month-table.vue'\n\nimport type { SetupContext } from 'vue'\nimport type { Dayjs } from 'dayjs'\nimport type { RangeState } from '../props/shared'\n\ndefineOptions({\n name: 'DatePickerMonthRange',\n})\n\nconst props = defineProps(panelMonthRangeProps)\nconst emit = defineEmits(panelMonthRangeEmits)\nconst attrs = useAttrs()\nconst slots = useSlots()\n\nconst { pickerNs: ppNs } = inject(ROOT_PICKER_INJECTION_KEY)!\nconst drpNs = useNamespace('date-range-picker')\nconst { t, lang } = useLocale()\nconst leftDate = ref(dayjs().locale(lang.value))\nconst rightDate = ref(dayjs().locale(lang.value).add(1, 'year'))\n\nconst hasShortcuts = computed(() => !!shortcuts.length)\n\n// FIXME: extract this to `date-picker.ts`\ntype Shortcut = {\n text: string\n value: [Date, Date] | (() => [Date, Date])\n onClick?: (\n ctx: Omit<SetupContext<typeof panelMonthRangeEmits>, 'expose'>\n ) => void\n}\n\nconst handleShortcutClick = (shortcut: Shortcut) => {\n const shortcutValues = isFunction(shortcut.value)\n ? shortcut.value()\n : shortcut.value\n\n if (shortcutValues) {\n emit('pick', [\n dayjs(shortcutValues[0]).locale(lang.value),\n dayjs(shortcutValues[1]).locale(lang.value),\n ])\n return\n }\n if (shortcut.onClick) {\n shortcut.onClick({\n attrs,\n slots,\n emit,\n })\n }\n}\n\nconst leftPrevYear = () => {\n leftDate.value = leftDate.value.subtract(1, 'year')\n if (!props.unlinkPanels) {\n rightDate.value = rightDate.value.subtract(1, 'year')\n }\n}\n\nconst rightNextYear = () => {\n if (!props.unlinkPanels) {\n leftDate.value = leftDate.value.add(1, 'year')\n }\n rightDate.value = rightDate.value.add(1, 'year')\n}\n\nconst leftNextYear = () => {\n leftDate.value = leftDate.value.add(1, 'year')\n}\n\nconst rightPrevYear = () => {\n rightDate.value = rightDate.value.subtract(1, 'year')\n}\nconst leftLabel = computed(() => {\n return `${leftDate.value.year()} ${t('el.datepicker.year')}`\n})\n\nconst rightLabel = computed(() => {\n return `${rightDate.value.year()} ${t('el.datepicker.year')}`\n})\n\nconst leftYear = computed(() => {\n return leftDate.value.year()\n})\n\nconst rightYear = computed(() => {\n return rightDate.value.year() === leftDate.value.year()\n ? leftDate.value.year() + 1\n : rightDate.value.year()\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}\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 maxDate.value = maxDate_\n minDate.value = minDate_\n\n if (!close) return\n handleConfirm()\n}\n\nconst isValidValue = (value: [Dayjs | undefined, Dayjs | undefined]) => {\n return (\n isArray(value) &&\n value &&\n value[0] &&\n value[1] &&\n value[0].valueOf() <= value[1].valueOf()\n )\n}\n\nconst handleConfirm = (visible = false) => {\n if (isValidValue([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 formatToString = (days: Dayjs[]) => {\n return days.map((day) => day.format(format))\n}\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(1, 'year')\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(1, 'year')]\n}\n\n// pickerBase.hub.emit('SetPickerOption', ['isValidValue', isValidValue])\nemit('set-picker-option', ['formatToString', formatToString])\nconst pickerBase = inject('EP_PICKER_BASE') as any\nconst { shortcuts, disabledDate, format } = pickerBase.props\nconst defaultValue = toRef(pickerBase.props, 'defaultValue')\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(1, 'year')\n : maxDate.value\n } else {\n rightDate.value = leftDate.value.add(1, '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</script>\n"],"names":["useAttrs","useSlots","inject","ROOT_PICKER_INJECTION_KEY","useNamespace","useLocale","ref","dayjs","computed","isFunction","isArray","toRef","watch"],"mappings":"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"}
1
+ {"version":3,"file":"panel-month-range2.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 <el-icon><d-arrow-left /></el-icon>\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 <el-icon><d-arrow-right /></el-icon>\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 <el-icon><d-arrow-left /></el-icon>\n </button>\n <button\n type=\"button\"\n :class=\"ppNs.e('icon-btn')\"\n class=\"d-arrow-right\"\n @click=\"rightNextYear\"\n >\n <el-icon><d-arrow-right /></el-icon>\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, useAttrs, useSlots, watch } from 'vue'\nimport dayjs from 'dayjs'\nimport ElIcon from '@element-plus/components/icon'\nimport { useLocale, useNamespace } from '@element-plus/hooks'\nimport { isArray, isFunction } from '@element-plus/utils'\nimport { DArrowLeft, DArrowRight } from '@element-plus/icons-vue'\nimport { ROOT_PICKER_INJECTION_KEY } from '@element-plus/tokens'\nimport {\n panelMonthRangeEmits,\n panelMonthRangeProps,\n} from '../props/panel-month-range'\nimport { useMonthRangeHeader } from '../composables/use-month-range-header'\nimport MonthTable from './basic-month-table.vue'\n\nimport type { SetupContext } from 'vue'\nimport type { Dayjs } from 'dayjs'\nimport type { RangeState } from '../props/shared'\n\ndefineOptions({\n name: 'DatePickerMonthRange',\n})\n\nconst props = defineProps(panelMonthRangeProps)\nconst emit = defineEmits(panelMonthRangeEmits)\nconst attrs = useAttrs()\nconst slots = useSlots()\n\nconst { pickerNs: ppNs } = inject(ROOT_PICKER_INJECTION_KEY)!\nconst drpNs = useNamespace('date-range-picker')\nconst { lang } = useLocale()\nconst leftDate = ref(dayjs().locale(lang.value))\nconst rightDate = ref(dayjs().locale(lang.value).add(1, 'year'))\n\nconst hasShortcuts = computed(() => !!shortcuts.length)\n\n// FIXME: extract this to `date-picker.ts`\ntype Shortcut = {\n text: string\n value: [Date, Date] | (() => [Date, Date])\n onClick?: (\n ctx: Omit<SetupContext<typeof panelMonthRangeEmits>, 'expose'>\n ) => void\n}\n\nconst handleShortcutClick = (shortcut: Shortcut) => {\n const shortcutValues = isFunction(shortcut.value)\n ? shortcut.value()\n : shortcut.value\n\n if (shortcutValues) {\n emit('pick', [\n dayjs(shortcutValues[0]).locale(lang.value),\n dayjs(shortcutValues[1]).locale(lang.value),\n ])\n return\n }\n if (shortcut.onClick) {\n shortcut.onClick({\n attrs,\n slots,\n emit,\n })\n }\n}\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\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}\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 maxDate.value = maxDate_\n minDate.value = minDate_\n\n if (!close) return\n handleConfirm()\n}\n\nconst isValidValue = (value: [Dayjs | undefined, Dayjs | undefined]) => {\n return (\n isArray(value) &&\n value &&\n value[0] &&\n value[1] &&\n value[0].valueOf() <= value[1].valueOf()\n )\n}\n\nconst handleConfirm = (visible = false) => {\n if (isValidValue([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 formatToString = (days: Dayjs[]) => {\n return days.map((day) => day.format(format))\n}\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(1, 'year')\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(1, 'year')]\n}\n\n// pickerBase.hub.emit('SetPickerOption', ['isValidValue', isValidValue])\nemit('set-picker-option', ['formatToString', formatToString])\nconst pickerBase = inject('EP_PICKER_BASE') as any\nconst { shortcuts, disabledDate, format } = pickerBase.props\nconst defaultValue = toRef(pickerBase.props, 'defaultValue')\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(1, 'year')\n : maxDate.value\n } else {\n rightDate.value = leftDate.value.add(1, '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</script>\n"],"names":["useAttrs","useSlots","inject","ROOT_PICKER_INJECTION_KEY","useNamespace","useLocale","ref","dayjs","computed","isFunction","useMonthRangeHeader","toRef","isArray","watch"],"mappings":"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"}
@@ -0,0 +1,16 @@
1
+ import type { Ref, ToRef } from 'vue';
2
+ import type { Dayjs } from 'dayjs';
3
+ export declare const useMonthRangeHeader: ({ unlinkPanels, leftDate, rightDate, }: {
4
+ unlinkPanels: ToRef<boolean>;
5
+ leftDate: Ref<Dayjs>;
6
+ rightDate: Ref<Dayjs>;
7
+ }) => {
8
+ leftPrevYear: () => void;
9
+ rightNextYear: () => void;
10
+ leftNextYear: () => void;
11
+ rightPrevYear: () => void;
12
+ leftLabel: import("vue").ComputedRef<string>;
13
+ rightLabel: import("vue").ComputedRef<string>;
14
+ leftYear: import("vue").ComputedRef<number>;
15
+ rightYear: import("vue").ComputedRef<number>;
16
+ };