@element-plus/nightly 0.0.20260812 → 0.0.20260813

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 (356) hide show
  1. package/dist/index.full.js +57 -52
  2. package/dist/index.full.min.js +3 -3
  3. package/dist/index.full.min.js.map +1 -1
  4. package/dist/index.full.min.mjs +3 -3
  5. package/dist/index.full.min.mjs.map +1 -1
  6. package/dist/index.full.mjs +57 -52
  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-eg.js +1 -1
  12. package/dist/locale/ar-eg.min.js +1 -1
  13. package/dist/locale/ar-eg.min.mjs +1 -1
  14. package/dist/locale/ar-eg.mjs +1 -1
  15. package/dist/locale/ar.js +1 -1
  16. package/dist/locale/ar.min.js +1 -1
  17. package/dist/locale/ar.min.mjs +1 -1
  18. package/dist/locale/ar.mjs +1 -1
  19. package/dist/locale/az.js +1 -1
  20. package/dist/locale/az.min.js +1 -1
  21. package/dist/locale/az.min.mjs +1 -1
  22. package/dist/locale/az.mjs +1 -1
  23. package/dist/locale/bg.js +1 -1
  24. package/dist/locale/bg.min.js +1 -1
  25. package/dist/locale/bg.min.mjs +1 -1
  26. package/dist/locale/bg.mjs +1 -1
  27. package/dist/locale/bn.js +1 -1
  28. package/dist/locale/bn.min.js +1 -1
  29. package/dist/locale/bn.min.mjs +1 -1
  30. package/dist/locale/bn.mjs +1 -1
  31. package/dist/locale/ca.js +1 -1
  32. package/dist/locale/ca.min.js +1 -1
  33. package/dist/locale/ca.min.mjs +1 -1
  34. package/dist/locale/ca.mjs +1 -1
  35. package/dist/locale/ckb.js +1 -1
  36. package/dist/locale/ckb.min.js +1 -1
  37. package/dist/locale/ckb.min.mjs +1 -1
  38. package/dist/locale/ckb.mjs +1 -1
  39. package/dist/locale/cs.js +1 -1
  40. package/dist/locale/cs.min.js +1 -1
  41. package/dist/locale/cs.min.mjs +1 -1
  42. package/dist/locale/cs.mjs +1 -1
  43. package/dist/locale/da.js +1 -1
  44. package/dist/locale/da.min.js +1 -1
  45. package/dist/locale/da.min.mjs +1 -1
  46. package/dist/locale/da.mjs +1 -1
  47. package/dist/locale/de.js +1 -1
  48. package/dist/locale/de.min.js +1 -1
  49. package/dist/locale/de.min.mjs +1 -1
  50. package/dist/locale/de.mjs +1 -1
  51. package/dist/locale/el.js +1 -1
  52. package/dist/locale/el.min.js +1 -1
  53. package/dist/locale/el.min.mjs +1 -1
  54. package/dist/locale/el.mjs +1 -1
  55. package/dist/locale/en.js +1 -1
  56. package/dist/locale/en.min.js +1 -1
  57. package/dist/locale/en.min.mjs +1 -1
  58. package/dist/locale/en.mjs +1 -1
  59. package/dist/locale/eo.js +1 -1
  60. package/dist/locale/eo.min.js +1 -1
  61. package/dist/locale/eo.min.mjs +1 -1
  62. package/dist/locale/eo.mjs +1 -1
  63. package/dist/locale/es.js +1 -1
  64. package/dist/locale/es.min.js +1 -1
  65. package/dist/locale/es.min.mjs +1 -1
  66. package/dist/locale/es.mjs +1 -1
  67. package/dist/locale/et.js +1 -1
  68. package/dist/locale/et.min.js +1 -1
  69. package/dist/locale/et.min.mjs +1 -1
  70. package/dist/locale/et.mjs +1 -1
  71. package/dist/locale/eu.js +1 -1
  72. package/dist/locale/eu.min.js +1 -1
  73. package/dist/locale/eu.min.mjs +1 -1
  74. package/dist/locale/eu.mjs +1 -1
  75. package/dist/locale/fa.js +1 -1
  76. package/dist/locale/fa.min.js +1 -1
  77. package/dist/locale/fa.min.mjs +1 -1
  78. package/dist/locale/fa.mjs +1 -1
  79. package/dist/locale/fi.js +1 -1
  80. package/dist/locale/fi.min.js +1 -1
  81. package/dist/locale/fi.min.mjs +1 -1
  82. package/dist/locale/fi.mjs +1 -1
  83. package/dist/locale/fr.js +1 -1
  84. package/dist/locale/fr.min.js +1 -1
  85. package/dist/locale/fr.min.mjs +1 -1
  86. package/dist/locale/fr.mjs +1 -1
  87. package/dist/locale/he.js +1 -1
  88. package/dist/locale/he.min.js +1 -1
  89. package/dist/locale/he.min.mjs +1 -1
  90. package/dist/locale/he.mjs +1 -1
  91. package/dist/locale/hi.js +1 -1
  92. package/dist/locale/hi.min.js +1 -1
  93. package/dist/locale/hi.min.mjs +1 -1
  94. package/dist/locale/hi.mjs +1 -1
  95. package/dist/locale/hr.js +1 -1
  96. package/dist/locale/hr.min.js +1 -1
  97. package/dist/locale/hr.min.mjs +1 -1
  98. package/dist/locale/hr.mjs +1 -1
  99. package/dist/locale/hu.js +1 -1
  100. package/dist/locale/hu.min.js +1 -1
  101. package/dist/locale/hu.min.mjs +1 -1
  102. package/dist/locale/hu.mjs +1 -1
  103. package/dist/locale/hy-am.js +1 -1
  104. package/dist/locale/hy-am.min.js +1 -1
  105. package/dist/locale/hy-am.min.mjs +1 -1
  106. package/dist/locale/hy-am.mjs +1 -1
  107. package/dist/locale/id.js +1 -1
  108. package/dist/locale/id.min.js +1 -1
  109. package/dist/locale/id.min.mjs +1 -1
  110. package/dist/locale/id.mjs +1 -1
  111. package/dist/locale/it.js +1 -1
  112. package/dist/locale/it.min.js +1 -1
  113. package/dist/locale/it.min.mjs +1 -1
  114. package/dist/locale/it.mjs +1 -1
  115. package/dist/locale/ja.js +1 -1
  116. package/dist/locale/ja.min.js +1 -1
  117. package/dist/locale/ja.min.mjs +1 -1
  118. package/dist/locale/ja.mjs +1 -1
  119. package/dist/locale/kk.js +1 -1
  120. package/dist/locale/kk.min.js +1 -1
  121. package/dist/locale/kk.min.mjs +1 -1
  122. package/dist/locale/kk.mjs +1 -1
  123. package/dist/locale/km.js +1 -1
  124. package/dist/locale/km.min.js +1 -1
  125. package/dist/locale/km.min.mjs +1 -1
  126. package/dist/locale/km.mjs +1 -1
  127. package/dist/locale/ko.js +1 -1
  128. package/dist/locale/ko.min.js +1 -1
  129. package/dist/locale/ko.min.mjs +1 -1
  130. package/dist/locale/ko.mjs +1 -1
  131. package/dist/locale/ku.js +1 -1
  132. package/dist/locale/ku.min.js +1 -1
  133. package/dist/locale/ku.min.mjs +1 -1
  134. package/dist/locale/ku.mjs +1 -1
  135. package/dist/locale/ky.js +1 -1
  136. package/dist/locale/ky.min.js +1 -1
  137. package/dist/locale/ky.min.mjs +1 -1
  138. package/dist/locale/ky.mjs +1 -1
  139. package/dist/locale/lo.js +1 -1
  140. package/dist/locale/lo.min.js +1 -1
  141. package/dist/locale/lo.min.mjs +1 -1
  142. package/dist/locale/lo.mjs +1 -1
  143. package/dist/locale/lt.js +1 -1
  144. package/dist/locale/lt.min.js +1 -1
  145. package/dist/locale/lt.min.mjs +1 -1
  146. package/dist/locale/lt.mjs +1 -1
  147. package/dist/locale/lv.js +1 -1
  148. package/dist/locale/lv.min.js +1 -1
  149. package/dist/locale/lv.min.mjs +1 -1
  150. package/dist/locale/lv.mjs +1 -1
  151. package/dist/locale/mg.js +1 -1
  152. package/dist/locale/mg.min.js +1 -1
  153. package/dist/locale/mg.min.mjs +1 -1
  154. package/dist/locale/mg.mjs +1 -1
  155. package/dist/locale/mn.js +1 -1
  156. package/dist/locale/mn.min.js +1 -1
  157. package/dist/locale/mn.min.mjs +1 -1
  158. package/dist/locale/mn.mjs +1 -1
  159. package/dist/locale/ms.js +1 -1
  160. package/dist/locale/ms.min.js +1 -1
  161. package/dist/locale/ms.min.mjs +1 -1
  162. package/dist/locale/ms.mjs +1 -1
  163. package/dist/locale/my.js +1 -1
  164. package/dist/locale/my.min.js +1 -1
  165. package/dist/locale/my.min.mjs +1 -1
  166. package/dist/locale/my.mjs +1 -1
  167. package/dist/locale/nb-no.js +1 -1
  168. package/dist/locale/nb-no.min.js +1 -1
  169. package/dist/locale/nb-no.min.mjs +1 -1
  170. package/dist/locale/nb-no.mjs +1 -1
  171. package/dist/locale/nl.js +1 -1
  172. package/dist/locale/nl.min.js +1 -1
  173. package/dist/locale/nl.min.mjs +1 -1
  174. package/dist/locale/nl.mjs +1 -1
  175. package/dist/locale/no.js +1 -1
  176. package/dist/locale/no.min.js +1 -1
  177. package/dist/locale/no.min.mjs +1 -1
  178. package/dist/locale/no.mjs +1 -1
  179. package/dist/locale/pa.js +1 -1
  180. package/dist/locale/pa.min.js +1 -1
  181. package/dist/locale/pa.min.mjs +1 -1
  182. package/dist/locale/pa.mjs +1 -1
  183. package/dist/locale/pl.js +1 -1
  184. package/dist/locale/pl.min.js +1 -1
  185. package/dist/locale/pl.min.mjs +1 -1
  186. package/dist/locale/pl.mjs +1 -1
  187. package/dist/locale/pt-br.js +1 -1
  188. package/dist/locale/pt-br.min.js +1 -1
  189. package/dist/locale/pt-br.min.mjs +1 -1
  190. package/dist/locale/pt-br.mjs +1 -1
  191. package/dist/locale/pt.js +1 -1
  192. package/dist/locale/pt.min.js +1 -1
  193. package/dist/locale/pt.min.mjs +1 -1
  194. package/dist/locale/pt.mjs +1 -1
  195. package/dist/locale/ro.js +1 -1
  196. package/dist/locale/ro.min.js +1 -1
  197. package/dist/locale/ro.min.mjs +1 -1
  198. package/dist/locale/ro.mjs +1 -1
  199. package/dist/locale/ru.js +1 -1
  200. package/dist/locale/ru.min.js +1 -1
  201. package/dist/locale/ru.min.mjs +1 -1
  202. package/dist/locale/ru.mjs +1 -1
  203. package/dist/locale/sk.js +1 -1
  204. package/dist/locale/sk.min.js +1 -1
  205. package/dist/locale/sk.min.mjs +1 -1
  206. package/dist/locale/sk.mjs +1 -1
  207. package/dist/locale/sl.js +1 -1
  208. package/dist/locale/sl.min.js +1 -1
  209. package/dist/locale/sl.min.mjs +1 -1
  210. package/dist/locale/sl.mjs +1 -1
  211. package/dist/locale/sr.js +1 -1
  212. package/dist/locale/sr.min.js +1 -1
  213. package/dist/locale/sr.min.mjs +1 -1
  214. package/dist/locale/sr.mjs +1 -1
  215. package/dist/locale/sv.js +1 -1
  216. package/dist/locale/sv.min.js +1 -1
  217. package/dist/locale/sv.min.mjs +1 -1
  218. package/dist/locale/sv.mjs +1 -1
  219. package/dist/locale/sw.js +1 -1
  220. package/dist/locale/sw.min.js +1 -1
  221. package/dist/locale/sw.min.mjs +1 -1
  222. package/dist/locale/sw.mjs +1 -1
  223. package/dist/locale/ta.js +1 -1
  224. package/dist/locale/ta.min.js +1 -1
  225. package/dist/locale/ta.min.mjs +1 -1
  226. package/dist/locale/ta.mjs +1 -1
  227. package/dist/locale/te.js +1 -1
  228. package/dist/locale/te.min.js +1 -1
  229. package/dist/locale/te.min.mjs +1 -1
  230. package/dist/locale/te.mjs +1 -1
  231. package/dist/locale/th.js +1 -1
  232. package/dist/locale/th.min.js +1 -1
  233. package/dist/locale/th.min.mjs +1 -1
  234. package/dist/locale/th.mjs +1 -1
  235. package/dist/locale/tk.js +1 -1
  236. package/dist/locale/tk.min.js +1 -1
  237. package/dist/locale/tk.min.mjs +1 -1
  238. package/dist/locale/tk.mjs +1 -1
  239. package/dist/locale/tr.js +1 -1
  240. package/dist/locale/tr.min.js +1 -1
  241. package/dist/locale/tr.min.mjs +1 -1
  242. package/dist/locale/tr.mjs +1 -1
  243. package/dist/locale/ug-cn.js +1 -1
  244. package/dist/locale/ug-cn.min.js +1 -1
  245. package/dist/locale/ug-cn.min.mjs +1 -1
  246. package/dist/locale/ug-cn.mjs +1 -1
  247. package/dist/locale/uk.js +1 -1
  248. package/dist/locale/uk.min.js +1 -1
  249. package/dist/locale/uk.min.mjs +1 -1
  250. package/dist/locale/uk.mjs +1 -1
  251. package/dist/locale/uz-uz.js +1 -1
  252. package/dist/locale/uz-uz.min.js +1 -1
  253. package/dist/locale/uz-uz.min.mjs +1 -1
  254. package/dist/locale/uz-uz.mjs +1 -1
  255. package/dist/locale/vi.js +1 -1
  256. package/dist/locale/vi.min.js +1 -1
  257. package/dist/locale/vi.min.mjs +1 -1
  258. package/dist/locale/vi.mjs +1 -1
  259. package/dist/locale/zh-cn.js +1 -1
  260. package/dist/locale/zh-cn.min.js +1 -1
  261. package/dist/locale/zh-cn.min.mjs +1 -1
  262. package/dist/locale/zh-cn.mjs +1 -1
  263. package/dist/locale/zh-hk.js +1 -1
  264. package/dist/locale/zh-hk.min.js +1 -1
  265. package/dist/locale/zh-hk.min.mjs +1 -1
  266. package/dist/locale/zh-hk.mjs +1 -1
  267. package/dist/locale/zh-mo.js +1 -1
  268. package/dist/locale/zh-mo.min.js +1 -1
  269. package/dist/locale/zh-mo.min.mjs +1 -1
  270. package/dist/locale/zh-mo.mjs +1 -1
  271. package/dist/locale/zh-tw.js +1 -1
  272. package/dist/locale/zh-tw.min.js +1 -1
  273. package/dist/locale/zh-tw.min.mjs +1 -1
  274. package/dist/locale/zh-tw.mjs +1 -1
  275. package/es/components/anchor/src/anchor.d.ts +1 -1
  276. package/es/components/button/src/button.vue.d.ts +1 -1
  277. package/es/components/button/src/use-button.d.ts +1 -1
  278. package/es/components/calendar/style/css.mjs +1 -1
  279. package/es/components/calendar/style/index.mjs +1 -1
  280. package/es/components/config-provider/src/hooks/use-global-config.d.ts +1 -1
  281. package/es/components/date-picker/src/date-picker.d.ts +3 -3
  282. package/es/components/date-picker/src/props.d.ts +1 -1
  283. package/es/components/date-picker-panel/src/composables/use-panel-date-range.mjs +4 -4
  284. package/es/components/date-picker-panel/src/composables/use-panel-date-range.mjs.map +1 -1
  285. package/es/components/date-picker-panel/src/date-picker-com/panel-date-pick.mjs.map +1 -1
  286. package/es/components/date-picker-panel/src/date-picker-com/panel-date-pick.vue_vue_type_script_setup_true_lang.mjs +25 -24
  287. package/es/components/date-picker-panel/src/date-picker-com/panel-date-pick.vue_vue_type_script_setup_true_lang.mjs.map +1 -1
  288. package/es/components/date-picker-panel/src/date-picker-com/panel-date-range.mjs.map +1 -1
  289. package/es/components/date-picker-panel/src/date-picker-com/panel-date-range.vue_vue_type_script_setup_true_lang.mjs +12 -11
  290. package/es/components/date-picker-panel/src/date-picker-com/panel-date-range.vue_vue_type_script_setup_true_lang.mjs.map +1 -1
  291. package/es/components/date-picker-panel/src/date-picker-com/panel-month-range.mjs.map +1 -1
  292. package/es/components/date-picker-panel/src/date-picker-com/panel-month-range.vue_vue_type_script_setup_true_lang.mjs +4 -3
  293. package/es/components/date-picker-panel/src/date-picker-com/panel-month-range.vue_vue_type_script_setup_true_lang.mjs.map +1 -1
  294. package/es/components/date-picker-panel/src/date-picker-com/panel-quarter-range.mjs.map +1 -1
  295. package/es/components/date-picker-panel/src/date-picker-com/panel-quarter-range.vue_vue_type_script_setup_true_lang.mjs +6 -5
  296. package/es/components/date-picker-panel/src/date-picker-com/panel-quarter-range.vue_vue_type_script_setup_true_lang.mjs.map +1 -1
  297. package/es/components/date-picker-panel/src/date-picker-com/panel-year-range.mjs.map +1 -1
  298. package/es/components/date-picker-panel/src/date-picker-com/panel-year-range.vue_vue_type_script_setup_true_lang.mjs +5 -4
  299. package/es/components/date-picker-panel/src/date-picker-com/panel-year-range.vue_vue_type_script_setup_true_lang.mjs.map +1 -1
  300. package/es/components/date-picker-panel/src/date-picker-panel.d.ts +3 -3
  301. package/es/components/date-picker-panel/src/props/date-picker-panel.d.ts +1 -1
  302. package/es/components/dropdown/src/dropdown.vue.d.ts +3 -3
  303. package/es/components/dropdown/style/css.mjs +1 -1
  304. package/es/components/dropdown/style/index.mjs +1 -1
  305. package/es/components/message-box/src/index.vue.d.ts +4 -4
  306. package/es/components/select/src/select.vue.d.ts +1 -1
  307. package/es/components/select/src/useSelect.d.ts +1 -1
  308. package/es/components/time-picker/src/common/picker.vue.d.ts +3 -3
  309. package/es/components/time-picker/src/common/props.d.ts +1 -1
  310. package/es/components/time-picker/src/time-picker.d.ts +3 -3
  311. package/es/components/tour/src/mask.vue.d.ts +1 -1
  312. package/es/version.d.ts +1 -1
  313. package/es/version.mjs +1 -1
  314. package/es/version.mjs.map +1 -1
  315. package/lib/components/anchor/src/anchor.d.ts +1 -1
  316. package/lib/components/button/src/button.vue.d.ts +1 -1
  317. package/lib/components/button/src/use-button.d.ts +1 -1
  318. package/lib/components/calendar/style/css.js +1 -1
  319. package/lib/components/calendar/style/index.js +1 -1
  320. package/lib/components/config-provider/src/hooks/use-global-config.d.ts +1 -1
  321. package/lib/components/date-picker/src/date-picker.d.ts +3 -3
  322. package/lib/components/date-picker/src/props.d.ts +1 -1
  323. package/lib/components/date-picker-panel/src/composables/use-panel-date-range.js +3 -3
  324. package/lib/components/date-picker-panel/src/composables/use-panel-date-range.js.map +1 -1
  325. package/lib/components/date-picker-panel/src/date-picker-com/panel-date-pick.js.map +1 -1
  326. package/lib/components/date-picker-panel/src/date-picker-com/panel-date-pick.vue_vue_type_script_setup_true_lang.js +25 -24
  327. package/lib/components/date-picker-panel/src/date-picker-com/panel-date-pick.vue_vue_type_script_setup_true_lang.js.map +1 -1
  328. package/lib/components/date-picker-panel/src/date-picker-com/panel-date-range.js.map +1 -1
  329. package/lib/components/date-picker-panel/src/date-picker-com/panel-date-range.vue_vue_type_script_setup_true_lang.js +12 -11
  330. package/lib/components/date-picker-panel/src/date-picker-com/panel-date-range.vue_vue_type_script_setup_true_lang.js.map +1 -1
  331. package/lib/components/date-picker-panel/src/date-picker-com/panel-month-range.js.map +1 -1
  332. package/lib/components/date-picker-panel/src/date-picker-com/panel-month-range.vue_vue_type_script_setup_true_lang.js +4 -3
  333. package/lib/components/date-picker-panel/src/date-picker-com/panel-month-range.vue_vue_type_script_setup_true_lang.js.map +1 -1
  334. package/lib/components/date-picker-panel/src/date-picker-com/panel-quarter-range.js.map +1 -1
  335. package/lib/components/date-picker-panel/src/date-picker-com/panel-quarter-range.vue_vue_type_script_setup_true_lang.js +6 -5
  336. package/lib/components/date-picker-panel/src/date-picker-com/panel-quarter-range.vue_vue_type_script_setup_true_lang.js.map +1 -1
  337. package/lib/components/date-picker-panel/src/date-picker-com/panel-year-range.js.map +1 -1
  338. package/lib/components/date-picker-panel/src/date-picker-com/panel-year-range.vue_vue_type_script_setup_true_lang.js +5 -4
  339. package/lib/components/date-picker-panel/src/date-picker-com/panel-year-range.vue_vue_type_script_setup_true_lang.js.map +1 -1
  340. package/lib/components/date-picker-panel/src/date-picker-panel.d.ts +3 -3
  341. package/lib/components/date-picker-panel/src/props/date-picker-panel.d.ts +1 -1
  342. package/lib/components/dropdown/src/dropdown.vue.d.ts +3 -3
  343. package/lib/components/dropdown/style/css.js +1 -1
  344. package/lib/components/dropdown/style/index.js +1 -1
  345. package/lib/components/message-box/src/index.vue.d.ts +4 -4
  346. package/lib/components/select/src/select.vue.d.ts +1 -1
  347. package/lib/components/select/src/useSelect.d.ts +1 -1
  348. package/lib/components/time-picker/src/common/picker.vue.d.ts +3 -3
  349. package/lib/components/time-picker/src/common/props.d.ts +1 -1
  350. package/lib/components/time-picker/src/time-picker.d.ts +3 -3
  351. package/lib/components/tour/src/mask.vue.d.ts +1 -1
  352. package/lib/version.d.ts +1 -1
  353. package/lib/version.js +1 -1
  354. package/lib/version.js.map +1 -1
  355. package/package.json +2 -2
  356. package/web-types.json +1 -1
@@ -29,7 +29,8 @@ var panel_month_range_vue_vue_type_script_setup_true_lang_default = /* @__PURE__
29
29
  const emit = __emit;
30
30
  const { lang } = require_index.useLocale();
31
31
  const pickerBase = (0, vue.inject)(require_constants.PICKER_BASE_INJECTION_KEY);
32
- const { shortcuts, disabledDate, cellClassName } = pickerBase.props;
32
+ const { shortcuts, cellClassName } = pickerBase.props;
33
+ const disabledDate = (0, vue.toRef)(pickerBase.props, "disabledDate");
33
34
  const format = (0, vue.toRef)(pickerBase.props, "format");
34
35
  const defaultValue = (0, vue.toRef)(pickerBase.props, "defaultValue");
35
36
  const leftDate = (0, vue.ref)((0, dayjs.default)().locale(lang.value));
@@ -143,7 +144,7 @@ var panel_month_range_vue_vue_type_script_setup_true_lang_default = /* @__PURE__
143
144
  "min-date": (0, vue.unref)(minDate),
144
145
  "max-date": (0, vue.unref)(maxDate),
145
146
  "range-state": (0, vue.unref)(rangeState),
146
- "disabled-date": (0, vue.unref)(disabledDate),
147
+ "disabled-date": disabledDate.value,
147
148
  disabled: (0, vue.unref)(monthRangeDisabled),
148
149
  "cell-class-name": (0, vue.unref)(cellClassName),
149
150
  onChangerange: (0, vue.unref)(handleChangeRange),
@@ -189,7 +190,7 @@ var panel_month_range_vue_vue_type_script_setup_true_lang_default = /* @__PURE__
189
190
  "min-date": (0, vue.unref)(minDate),
190
191
  "max-date": (0, vue.unref)(maxDate),
191
192
  "range-state": (0, vue.unref)(rangeState),
192
- "disabled-date": (0, vue.unref)(disabledDate),
193
+ "disabled-date": disabledDate.value,
193
194
  disabled: (0, vue.unref)(monthRangeDisabled),
194
195
  "cell-class-name": (0, vue.unref)(cellClassName),
195
196
  onChangerange: (0, vue.unref)(handleChangeRange),
@@ -1 +1 @@
1
- {"version":3,"file":"panel-month-range.vue_vue_type_script_setup_true_lang.js","names":["border","$slots","singlePanel","unlinkPanels"],"sources":["../../../../../../../packages/components/date-picker-panel/src/date-picker-com/panel-month-range.vue"],"sourcesContent":["<template>\n <div\n :class=\"[\n ppNs.b(),\n drpNs.b(),\n ppNs.is('border', border),\n ppNs.is('disabled', monthRangeDisabled),\n {\n 'has-sidebar': Boolean($slots.sidebar) || hasShortcuts,\n 'single-panel': singlePanel,\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 :disabled=\"monthRangeDisabled\"\n @click=\"handleShortcutClick(shortcut)\"\n >\n {{ shortcut.text }}\n </button>\n </div>\n <div :class=\"ppNs.e('body')\">\n <div\n :class=\"[\n ppNs.e('content'),\n drpNs.e('content'),\n drpNs.is('left', !singlePanel),\n ]\"\n >\n <div :class=\"drpNs.e('header')\">\n <button\n type=\"button\"\n :class=\"ppNs.e('icon-btn')\"\n class=\"d-arrow-left\"\n :disabled=\"monthRangeDisabled\"\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 || singlePanel\"\n type=\"button\"\n :disabled=\"!enableYearArrow || monthRangeDisabled\"\n :class=\"[\n ppNs.e('icon-btn'),\n ppNs.is('disabled', !enableYearArrow || monthRangeDisabled),\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 :disabled=\"monthRangeDisabled\"\n :cell-class-name=\"cellClassName\"\n @changerange=\"handleChangeRange\"\n @pick=\"handleRangePick\"\n @select=\"onSelect\"\n />\n </div>\n <div\n v-if=\"!singlePanel\"\n :class=\"[ppNs.e('content'), drpNs.e('content')]\"\n class=\"is-right\"\n >\n <div :class=\"drpNs.e('header')\">\n <button\n v-if=\"unlinkPanels\"\n type=\"button\"\n :disabled=\"!enableYearArrow || monthRangeDisabled\"\n :class=\"[\n ppNs.e('icon-btn'),\n ppNs.is('disabled', !enableYearArrow || monthRangeDisabled),\n ]\"\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 :disabled=\"monthRangeDisabled\"\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 :disabled=\"monthRangeDisabled\"\n :cell-class-name=\"cellClassName\"\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, watch } from 'vue'\nimport dayjs from 'dayjs'\nimport ElIcon from '@element-plus/components/icon'\nimport { useLocale } from '@element-plus/hooks'\nimport { DArrowLeft, DArrowRight } from '@element-plus/icons-vue'\nimport { PICKER_BASE_INJECTION_KEY } from '@element-plus/components/time-picker'\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'\nimport { useFormDisabled } from '@element-plus/components/form'\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(PICKER_BASE_INJECTION_KEY) as any\nconst { shortcuts, disabledDate, cellClassName } = 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 parseValue,\n} = useRangePicker(props, {\n defaultValue,\n leftDate,\n rightDate,\n unit,\n sortDates,\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 (\n props.singlePanel ||\n (props.unlinkPanels && rightYear.value > leftYear.value + 1)\n )\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 let valueOnClear = null\n if (pickerBase?.emptyValues) {\n valueOnClear = pickerBase.emptyValues.valueOnClear.value\n }\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', valueOnClear)\n}\n\nconst parseUserInput = (value: Dayjs | Dayjs[]) => {\n return correctlyParseUserInput(value, format.value, lang.value)\n}\n\nfunction sortDates(minDate: Dayjs | undefined, maxDate: Dayjs | undefined) {\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\nconst monthRangeDisabled = useFormDisabled()\n\nwatch(\n () => props.visible,\n (visible) => {\n if (!visible && rangeState.value.selecting) {\n parseValue(props.parsedValue)\n onSelect(false)\n }\n }\n)\n\nemit('set-picker-option', ['isValidValue', isValidRange])\nemit('set-picker-option', ['parseUserInput', parseUserInput])\nemit('set-picker-option', ['handleClear', handleClear])\n</script>\n"],"mappings":"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"}
1
+ {"version":3,"file":"panel-month-range.vue_vue_type_script_setup_true_lang.js","names":["border","$slots","singlePanel","unlinkPanels"],"sources":["../../../../../../../packages/components/date-picker-panel/src/date-picker-com/panel-month-range.vue"],"sourcesContent":["<template>\n <div\n :class=\"[\n ppNs.b(),\n drpNs.b(),\n ppNs.is('border', border),\n ppNs.is('disabled', monthRangeDisabled),\n {\n 'has-sidebar': Boolean($slots.sidebar) || hasShortcuts,\n 'single-panel': singlePanel,\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 :disabled=\"monthRangeDisabled\"\n @click=\"handleShortcutClick(shortcut)\"\n >\n {{ shortcut.text }}\n </button>\n </div>\n <div :class=\"ppNs.e('body')\">\n <div\n :class=\"[\n ppNs.e('content'),\n drpNs.e('content'),\n drpNs.is('left', !singlePanel),\n ]\"\n >\n <div :class=\"drpNs.e('header')\">\n <button\n type=\"button\"\n :class=\"ppNs.e('icon-btn')\"\n class=\"d-arrow-left\"\n :disabled=\"monthRangeDisabled\"\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 || singlePanel\"\n type=\"button\"\n :disabled=\"!enableYearArrow || monthRangeDisabled\"\n :class=\"[\n ppNs.e('icon-btn'),\n ppNs.is('disabled', !enableYearArrow || monthRangeDisabled),\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 :disabled=\"monthRangeDisabled\"\n :cell-class-name=\"cellClassName\"\n @changerange=\"handleChangeRange\"\n @pick=\"handleRangePick\"\n @select=\"onSelect\"\n />\n </div>\n <div\n v-if=\"!singlePanel\"\n :class=\"[ppNs.e('content'), drpNs.e('content')]\"\n class=\"is-right\"\n >\n <div :class=\"drpNs.e('header')\">\n <button\n v-if=\"unlinkPanels\"\n type=\"button\"\n :disabled=\"!enableYearArrow || monthRangeDisabled\"\n :class=\"[\n ppNs.e('icon-btn'),\n ppNs.is('disabled', !enableYearArrow || monthRangeDisabled),\n ]\"\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 :disabled=\"monthRangeDisabled\"\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 :disabled=\"monthRangeDisabled\"\n :cell-class-name=\"cellClassName\"\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, watch } from 'vue'\nimport dayjs from 'dayjs'\nimport ElIcon from '@element-plus/components/icon'\nimport { useLocale } from '@element-plus/hooks'\nimport { DArrowLeft, DArrowRight } from '@element-plus/icons-vue'\nimport { PICKER_BASE_INJECTION_KEY } from '@element-plus/components/time-picker'\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'\nimport { useFormDisabled } from '@element-plus/components/form'\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(PICKER_BASE_INJECTION_KEY) as any\nconst { shortcuts, cellClassName } = pickerBase.props\nconst disabledDate = toRef(pickerBase.props, 'disabledDate')\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 parseValue,\n} = useRangePicker(props, {\n defaultValue,\n leftDate,\n rightDate,\n unit,\n sortDates,\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 (\n props.singlePanel ||\n (props.unlinkPanels && rightYear.value > leftYear.value + 1)\n )\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 let valueOnClear = null\n if (pickerBase?.emptyValues) {\n valueOnClear = pickerBase.emptyValues.valueOnClear.value\n }\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', valueOnClear)\n}\n\nconst parseUserInput = (value: Dayjs | Dayjs[]) => {\n return correctlyParseUserInput(value, format.value, lang.value)\n}\n\nfunction sortDates(minDate: Dayjs | undefined, maxDate: Dayjs | undefined) {\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\nconst monthRangeDisabled = useFormDisabled()\n\nwatch(\n () => props.visible,\n (visible) => {\n if (!visible && rangeState.value.selecting) {\n parseValue(props.parsedValue)\n onSelect(false)\n }\n }\n)\n\nemit('set-picker-option', ['isValidValue', isValidRange])\nemit('set-picker-option', ['parseUserInput', parseUserInput])\nemit('set-picker-option', ['handleClear', handleClear])\n</script>\n"],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"panel-quarter-range.js","names":[],"sources":["../../../../../../../packages/components/date-picker-panel/src/date-picker-com/panel-quarter-range.vue"],"sourcesContent":["<template>\n <div\n :class=\"[\n ppNs.b(),\n drpNs.b(),\n ppNs.is('border', border),\n ppNs.is('disabled', quarterRangeDisabled),\n {\n 'has-sidebar': Boolean($slots.sidebar) || hasShortcuts,\n 'single-panel': singlePanel,\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 :disabled=\"quarterRangeDisabled\"\n @click=\"handleShortcutClick(shortcut)\"\n >\n {{ shortcut.text }}\n </button>\n </div>\n <div :class=\"ppNs.e('body')\">\n <div\n :class=\"[\n ppNs.e('content'),\n drpNs.e('content'),\n drpNs.is('left', !singlePanel),\n ]\"\n >\n <div :class=\"drpNs.e('header')\">\n <button\n type=\"button\"\n :class=\"ppNs.e('icon-btn')\"\n class=\"d-arrow-left\"\n :disabled=\"quarterRangeDisabled\"\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 || singlePanel\"\n type=\"button\"\n :disabled=\"!enableYearArrow || quarterRangeDisabled\"\n :class=\"[\n ppNs.e('icon-btn'),\n ppNs.is('disabled', !enableYearArrow || quarterRangeDisabled),\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 <quarter-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 :disabled=\"quarterRangeDisabled\"\n :cell-class-name=\"cellClassName\"\n @changerange=\"handleChangeRange\"\n @pick=\"handleRangePick\"\n @select=\"onSelect\"\n />\n </div>\n <div\n v-if=\"!singlePanel\"\n :class=\"[ppNs.e('content'), drpNs.e('content')]\"\n class=\"is-right\"\n >\n <div :class=\"drpNs.e('header')\">\n <button\n v-if=\"unlinkPanels\"\n type=\"button\"\n :disabled=\"!enableYearArrow || quarterRangeDisabled\"\n :class=\"[\n ppNs.e('icon-btn'),\n ppNs.is('disabled', !enableYearArrow || quarterRangeDisabled),\n ]\"\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 :disabled=\"quarterRangeDisabled\"\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 <quarter-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 :disabled=\"quarterRangeDisabled\"\n :cell-class-name=\"cellClassName\"\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, watch } from 'vue'\nimport dayjs from 'dayjs'\nimport ElIcon from '@element-plus/components/icon'\nimport { useLocale } from '@element-plus/hooks'\nimport { DArrowLeft, DArrowRight } from '@element-plus/icons-vue'\nimport { PICKER_BASE_INJECTION_KEY } from '@element-plus/components/time-picker'\nimport { isArray } from '@element-plus/utils'\nimport {\n correctlyParseUserInput,\n getDefaultValue,\n isQuarterFullyDisabled,\n isValidRange,\n normalizeQuarterDate,\n} from '../utils'\nimport {\n panelQuarterRangeEmits,\n panelQuarterRangeProps,\n} from '../props/panel-quarter-range'\nimport { useMonthRangeHeader } from '../composables/use-month-range-header'\nimport { useRangePicker } from '../composables/use-range-picker'\nimport QuarterTable from './basic-quarter-table.vue'\nimport { useFormDisabled } from '@element-plus/components/form'\n\nimport type { Dayjs } from 'dayjs'\n\ntype RangePickValue = {\n minDate: Dayjs\n maxDate?: Dayjs\n}\n\ndefineOptions({\n name: 'DatePickerQuarterRange',\n})\n\nconst props = defineProps(panelQuarterRangeProps)\nconst emit = defineEmits(panelQuarterRangeEmits)\nconst unit = 'year'\n\nconst { lang } = useLocale()\nconst pickerBase = inject(PICKER_BASE_INJECTION_KEY) as any\nconst { shortcuts, disabledDate, cellClassName } = 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 handleChangeRange,\n handleRangeConfirm,\n handleShortcutClick,\n onSelect,\n parseValue,\n} = useRangePicker(props, {\n defaultValue,\n leftDate,\n rightDate,\n unit,\n sortDates,\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 (\n props.singlePanel ||\n (props.unlinkPanels && rightYear.value > leftYear.value + 1)\n )\n})\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 handleRangeConfirm()\n}\n\nconst handleClear = () => {\n let valueOnClear = null\n if (pickerBase?.emptyValues) {\n valueOnClear = pickerBase.emptyValues.valueOnClear.value\n }\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', valueOnClear)\n}\n\nconst normalizeQuarterInput = (value: Dayjs) =>\n normalizeQuarterDate(value, lang.value, disabledDate)\n\nconst parseUserInput = (value: Dayjs | Dayjs[]) => {\n const parsed = correctlyParseUserInput(value, format.value, lang.value)\n\n if (isArray(parsed)) {\n return parsed.map((item) => normalizeQuarterInput(item))\n }\n\n return normalizeQuarterInput(parsed)\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 !isQuarterFullyDisabled(date[0], lang.value, disabledDate) &&\n !isQuarterFullyDisabled(date[1], lang.value, disabledDate)\n )\n}\n\nfunction sortDates(minDate: Dayjs | undefined, maxDate: Dayjs | undefined) {\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\nconst quarterRangeDisabled = useFormDisabled()\n\nwatch(\n () => props.visible,\n (visible) => {\n if (!visible && rangeState.value.selecting) {\n parseValue(props.parsedValue)\n onSelect(false)\n }\n }\n)\n\nemit('set-picker-option', ['isValidValue', isValidValue])\nemit('set-picker-option', ['parseUserInput', parseUserInput])\nemit('set-picker-option', ['handleClear', handleClear])\n</script>\n"],"mappings":""}
1
+ {"version":3,"file":"panel-quarter-range.js","names":[],"sources":["../../../../../../../packages/components/date-picker-panel/src/date-picker-com/panel-quarter-range.vue"],"sourcesContent":["<template>\n <div\n :class=\"[\n ppNs.b(),\n drpNs.b(),\n ppNs.is('border', border),\n ppNs.is('disabled', quarterRangeDisabled),\n {\n 'has-sidebar': Boolean($slots.sidebar) || hasShortcuts,\n 'single-panel': singlePanel,\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 :disabled=\"quarterRangeDisabled\"\n @click=\"handleShortcutClick(shortcut)\"\n >\n {{ shortcut.text }}\n </button>\n </div>\n <div :class=\"ppNs.e('body')\">\n <div\n :class=\"[\n ppNs.e('content'),\n drpNs.e('content'),\n drpNs.is('left', !singlePanel),\n ]\"\n >\n <div :class=\"drpNs.e('header')\">\n <button\n type=\"button\"\n :class=\"ppNs.e('icon-btn')\"\n class=\"d-arrow-left\"\n :disabled=\"quarterRangeDisabled\"\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 || singlePanel\"\n type=\"button\"\n :disabled=\"!enableYearArrow || quarterRangeDisabled\"\n :class=\"[\n ppNs.e('icon-btn'),\n ppNs.is('disabled', !enableYearArrow || quarterRangeDisabled),\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 <quarter-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 :disabled=\"quarterRangeDisabled\"\n :cell-class-name=\"cellClassName\"\n @changerange=\"handleChangeRange\"\n @pick=\"handleRangePick\"\n @select=\"onSelect\"\n />\n </div>\n <div\n v-if=\"!singlePanel\"\n :class=\"[ppNs.e('content'), drpNs.e('content')]\"\n class=\"is-right\"\n >\n <div :class=\"drpNs.e('header')\">\n <button\n v-if=\"unlinkPanels\"\n type=\"button\"\n :disabled=\"!enableYearArrow || quarterRangeDisabled\"\n :class=\"[\n ppNs.e('icon-btn'),\n ppNs.is('disabled', !enableYearArrow || quarterRangeDisabled),\n ]\"\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 :disabled=\"quarterRangeDisabled\"\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 <quarter-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 :disabled=\"quarterRangeDisabled\"\n :cell-class-name=\"cellClassName\"\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, watch } from 'vue'\nimport dayjs from 'dayjs'\nimport ElIcon from '@element-plus/components/icon'\nimport { useLocale } from '@element-plus/hooks'\nimport { DArrowLeft, DArrowRight } from '@element-plus/icons-vue'\nimport { PICKER_BASE_INJECTION_KEY } from '@element-plus/components/time-picker'\nimport { isArray } from '@element-plus/utils'\nimport {\n correctlyParseUserInput,\n getDefaultValue,\n isQuarterFullyDisabled,\n isValidRange,\n normalizeQuarterDate,\n} from '../utils'\nimport {\n panelQuarterRangeEmits,\n panelQuarterRangeProps,\n} from '../props/panel-quarter-range'\nimport { useMonthRangeHeader } from '../composables/use-month-range-header'\nimport { useRangePicker } from '../composables/use-range-picker'\nimport QuarterTable from './basic-quarter-table.vue'\nimport { useFormDisabled } from '@element-plus/components/form'\n\nimport type { Dayjs } from 'dayjs'\n\ntype RangePickValue = {\n minDate: Dayjs\n maxDate?: Dayjs\n}\n\ndefineOptions({\n name: 'DatePickerQuarterRange',\n})\n\nconst props = defineProps(panelQuarterRangeProps)\nconst emit = defineEmits(panelQuarterRangeEmits)\nconst unit = 'year'\n\nconst { lang } = useLocale()\nconst pickerBase = inject(PICKER_BASE_INJECTION_KEY) as any\nconst { shortcuts, cellClassName } = pickerBase.props\nconst disabledDate = toRef(pickerBase.props, 'disabledDate')\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 handleChangeRange,\n handleRangeConfirm,\n handleShortcutClick,\n onSelect,\n parseValue,\n} = useRangePicker(props, {\n defaultValue,\n leftDate,\n rightDate,\n unit,\n sortDates,\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 (\n props.singlePanel ||\n (props.unlinkPanels && rightYear.value > leftYear.value + 1)\n )\n})\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 handleRangeConfirm()\n}\n\nconst handleClear = () => {\n let valueOnClear = null\n if (pickerBase?.emptyValues) {\n valueOnClear = pickerBase.emptyValues.valueOnClear.value\n }\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', valueOnClear)\n}\n\nconst normalizeQuarterInput = (value: Dayjs) =>\n normalizeQuarterDate(value, lang.value, disabledDate.value)\n\nconst parseUserInput = (value: Dayjs | Dayjs[]) => {\n const parsed = correctlyParseUserInput(value, format.value, lang.value)\n\n if (isArray(parsed)) {\n return parsed.map((item) => normalizeQuarterInput(item))\n }\n\n return normalizeQuarterInput(parsed)\n}\n\nconst isValidValue = (date: [Dayjs, Dayjs]) => {\n return (\n isValidRange(date) &&\n (disabledDate.value\n ? !disabledDate.value(date[0].toDate()) &&\n !disabledDate.value(date[1].toDate())\n : true) &&\n !isQuarterFullyDisabled(date[0], lang.value, disabledDate.value) &&\n !isQuarterFullyDisabled(date[1], lang.value, disabledDate.value)\n )\n}\n\nfunction sortDates(minDate: Dayjs | undefined, maxDate: Dayjs | undefined) {\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\nconst quarterRangeDisabled = useFormDisabled()\n\nwatch(\n () => props.visible,\n (visible) => {\n if (!visible && rangeState.value.selecting) {\n parseValue(props.parsedValue)\n onSelect(false)\n }\n }\n)\n\nemit('set-picker-option', ['isValidValue', isValidValue])\nemit('set-picker-option', ['parseUserInput', parseUserInput])\nemit('set-picker-option', ['handleClear', handleClear])\n</script>\n"],"mappings":""}
@@ -30,7 +30,8 @@ var panel_quarter_range_vue_vue_type_script_setup_true_lang_default = /* @__PURE
30
30
  const emit = __emit;
31
31
  const { lang } = require_index.useLocale();
32
32
  const pickerBase = (0, vue.inject)(require_constants.PICKER_BASE_INJECTION_KEY);
33
- const { shortcuts, disabledDate, cellClassName } = pickerBase.props;
33
+ const { shortcuts, cellClassName } = pickerBase.props;
34
+ const disabledDate = (0, vue.toRef)(pickerBase.props, "disabledDate");
34
35
  const format = (0, vue.toRef)(pickerBase.props, "format");
35
36
  const defaultValue = (0, vue.toRef)(pickerBase.props, "defaultValue");
36
37
  const leftDate = (0, vue.ref)((0, dayjs.default)().locale(lang.value));
@@ -72,14 +73,14 @@ var panel_quarter_range_vue_vue_type_script_setup_true_lang_default = /* @__PURE
72
73
  rightDate.value = leftDate.value.add(1, "year");
73
74
  emit("pick", valueOnClear);
74
75
  };
75
- const normalizeQuarterInput = (value) => require_utils.normalizeQuarterDate(value, lang.value, disabledDate);
76
+ const normalizeQuarterInput = (value) => require_utils.normalizeQuarterDate(value, lang.value, disabledDate.value);
76
77
  const parseUserInput = (value) => {
77
78
  const parsed = require_utils.correctlyParseUserInput(value, format.value, lang.value);
78
79
  if ((0, _vue_shared.isArray)(parsed)) return parsed.map((item) => normalizeQuarterInput(item));
79
80
  return normalizeQuarterInput(parsed);
80
81
  };
81
82
  const isValidValue = (date) => {
82
- return require_utils.isValidRange(date) && (disabledDate ? !disabledDate(date[0].toDate()) && !disabledDate(date[1].toDate()) : true) && !require_utils.isQuarterFullyDisabled(date[0], lang.value, disabledDate) && !require_utils.isQuarterFullyDisabled(date[1], lang.value, disabledDate);
83
+ return require_utils.isValidRange(date) && (disabledDate.value ? !disabledDate.value(date[0].toDate()) && !disabledDate.value(date[1].toDate()) : true) && !require_utils.isQuarterFullyDisabled(date[0], lang.value, disabledDate.value) && !require_utils.isQuarterFullyDisabled(date[1], lang.value, disabledDate.value);
83
84
  };
84
85
  function sortDates(minDate, maxDate) {
85
86
  if (props.unlinkPanels && maxDate) rightDate.value = (minDate?.year() || 0) === maxDate.year() ? maxDate.add(1, unit) : maxDate;
@@ -150,7 +151,7 @@ var panel_quarter_range_vue_vue_type_script_setup_true_lang_default = /* @__PURE
150
151
  "min-date": (0, vue.unref)(minDate),
151
152
  "max-date": (0, vue.unref)(maxDate),
152
153
  "range-state": (0, vue.unref)(rangeState),
153
- "disabled-date": (0, vue.unref)(disabledDate),
154
+ "disabled-date": disabledDate.value,
154
155
  disabled: (0, vue.unref)(quarterRangeDisabled),
155
156
  "cell-class-name": (0, vue.unref)(cellClassName),
156
157
  onChangerange: (0, vue.unref)(handleChangeRange),
@@ -196,7 +197,7 @@ var panel_quarter_range_vue_vue_type_script_setup_true_lang_default = /* @__PURE
196
197
  "min-date": (0, vue.unref)(minDate),
197
198
  "max-date": (0, vue.unref)(maxDate),
198
199
  "range-state": (0, vue.unref)(rangeState),
199
- "disabled-date": (0, vue.unref)(disabledDate),
200
+ "disabled-date": disabledDate.value,
200
201
  disabled: (0, vue.unref)(quarterRangeDisabled),
201
202
  "cell-class-name": (0, vue.unref)(cellClassName),
202
203
  onChangerange: (0, vue.unref)(handleChangeRange),
@@ -1 +1 @@
1
- {"version":3,"file":"panel-quarter-range.vue_vue_type_script_setup_true_lang.js","names":["border","$slots","singlePanel","unlinkPanels"],"sources":["../../../../../../../packages/components/date-picker-panel/src/date-picker-com/panel-quarter-range.vue"],"sourcesContent":["<template>\n <div\n :class=\"[\n ppNs.b(),\n drpNs.b(),\n ppNs.is('border', border),\n ppNs.is('disabled', quarterRangeDisabled),\n {\n 'has-sidebar': Boolean($slots.sidebar) || hasShortcuts,\n 'single-panel': singlePanel,\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 :disabled=\"quarterRangeDisabled\"\n @click=\"handleShortcutClick(shortcut)\"\n >\n {{ shortcut.text }}\n </button>\n </div>\n <div :class=\"ppNs.e('body')\">\n <div\n :class=\"[\n ppNs.e('content'),\n drpNs.e('content'),\n drpNs.is('left', !singlePanel),\n ]\"\n >\n <div :class=\"drpNs.e('header')\">\n <button\n type=\"button\"\n :class=\"ppNs.e('icon-btn')\"\n class=\"d-arrow-left\"\n :disabled=\"quarterRangeDisabled\"\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 || singlePanel\"\n type=\"button\"\n :disabled=\"!enableYearArrow || quarterRangeDisabled\"\n :class=\"[\n ppNs.e('icon-btn'),\n ppNs.is('disabled', !enableYearArrow || quarterRangeDisabled),\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 <quarter-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 :disabled=\"quarterRangeDisabled\"\n :cell-class-name=\"cellClassName\"\n @changerange=\"handleChangeRange\"\n @pick=\"handleRangePick\"\n @select=\"onSelect\"\n />\n </div>\n <div\n v-if=\"!singlePanel\"\n :class=\"[ppNs.e('content'), drpNs.e('content')]\"\n class=\"is-right\"\n >\n <div :class=\"drpNs.e('header')\">\n <button\n v-if=\"unlinkPanels\"\n type=\"button\"\n :disabled=\"!enableYearArrow || quarterRangeDisabled\"\n :class=\"[\n ppNs.e('icon-btn'),\n ppNs.is('disabled', !enableYearArrow || quarterRangeDisabled),\n ]\"\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 :disabled=\"quarterRangeDisabled\"\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 <quarter-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 :disabled=\"quarterRangeDisabled\"\n :cell-class-name=\"cellClassName\"\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, watch } from 'vue'\nimport dayjs from 'dayjs'\nimport ElIcon from '@element-plus/components/icon'\nimport { useLocale } from '@element-plus/hooks'\nimport { DArrowLeft, DArrowRight } from '@element-plus/icons-vue'\nimport { PICKER_BASE_INJECTION_KEY } from '@element-plus/components/time-picker'\nimport { isArray } from '@element-plus/utils'\nimport {\n correctlyParseUserInput,\n getDefaultValue,\n isQuarterFullyDisabled,\n isValidRange,\n normalizeQuarterDate,\n} from '../utils'\nimport {\n panelQuarterRangeEmits,\n panelQuarterRangeProps,\n} from '../props/panel-quarter-range'\nimport { useMonthRangeHeader } from '../composables/use-month-range-header'\nimport { useRangePicker } from '../composables/use-range-picker'\nimport QuarterTable from './basic-quarter-table.vue'\nimport { useFormDisabled } from '@element-plus/components/form'\n\nimport type { Dayjs } from 'dayjs'\n\ntype RangePickValue = {\n minDate: Dayjs\n maxDate?: Dayjs\n}\n\ndefineOptions({\n name: 'DatePickerQuarterRange',\n})\n\nconst props = defineProps(panelQuarterRangeProps)\nconst emit = defineEmits(panelQuarterRangeEmits)\nconst unit = 'year'\n\nconst { lang } = useLocale()\nconst pickerBase = inject(PICKER_BASE_INJECTION_KEY) as any\nconst { shortcuts, disabledDate, cellClassName } = 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 handleChangeRange,\n handleRangeConfirm,\n handleShortcutClick,\n onSelect,\n parseValue,\n} = useRangePicker(props, {\n defaultValue,\n leftDate,\n rightDate,\n unit,\n sortDates,\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 (\n props.singlePanel ||\n (props.unlinkPanels && rightYear.value > leftYear.value + 1)\n )\n})\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 handleRangeConfirm()\n}\n\nconst handleClear = () => {\n let valueOnClear = null\n if (pickerBase?.emptyValues) {\n valueOnClear = pickerBase.emptyValues.valueOnClear.value\n }\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', valueOnClear)\n}\n\nconst normalizeQuarterInput = (value: Dayjs) =>\n normalizeQuarterDate(value, lang.value, disabledDate)\n\nconst parseUserInput = (value: Dayjs | Dayjs[]) => {\n const parsed = correctlyParseUserInput(value, format.value, lang.value)\n\n if (isArray(parsed)) {\n return parsed.map((item) => normalizeQuarterInput(item))\n }\n\n return normalizeQuarterInput(parsed)\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 !isQuarterFullyDisabled(date[0], lang.value, disabledDate) &&\n !isQuarterFullyDisabled(date[1], lang.value, disabledDate)\n )\n}\n\nfunction sortDates(minDate: Dayjs | undefined, maxDate: Dayjs | undefined) {\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\nconst quarterRangeDisabled = useFormDisabled()\n\nwatch(\n () => props.visible,\n (visible) => {\n if (!visible && rangeState.value.selecting) {\n parseValue(props.parsedValue)\n onSelect(false)\n }\n }\n)\n\nemit('set-picker-option', ['isValidValue', isValidValue])\nemit('set-picker-option', ['parseUserInput', parseUserInput])\nemit('set-picker-option', ['handleClear', handleClear])\n</script>\n"],"mappings":"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"}
1
+ {"version":3,"file":"panel-quarter-range.vue_vue_type_script_setup_true_lang.js","names":["border","$slots","singlePanel","unlinkPanels"],"sources":["../../../../../../../packages/components/date-picker-panel/src/date-picker-com/panel-quarter-range.vue"],"sourcesContent":["<template>\n <div\n :class=\"[\n ppNs.b(),\n drpNs.b(),\n ppNs.is('border', border),\n ppNs.is('disabled', quarterRangeDisabled),\n {\n 'has-sidebar': Boolean($slots.sidebar) || hasShortcuts,\n 'single-panel': singlePanel,\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 :disabled=\"quarterRangeDisabled\"\n @click=\"handleShortcutClick(shortcut)\"\n >\n {{ shortcut.text }}\n </button>\n </div>\n <div :class=\"ppNs.e('body')\">\n <div\n :class=\"[\n ppNs.e('content'),\n drpNs.e('content'),\n drpNs.is('left', !singlePanel),\n ]\"\n >\n <div :class=\"drpNs.e('header')\">\n <button\n type=\"button\"\n :class=\"ppNs.e('icon-btn')\"\n class=\"d-arrow-left\"\n :disabled=\"quarterRangeDisabled\"\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 || singlePanel\"\n type=\"button\"\n :disabled=\"!enableYearArrow || quarterRangeDisabled\"\n :class=\"[\n ppNs.e('icon-btn'),\n ppNs.is('disabled', !enableYearArrow || quarterRangeDisabled),\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 <quarter-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 :disabled=\"quarterRangeDisabled\"\n :cell-class-name=\"cellClassName\"\n @changerange=\"handleChangeRange\"\n @pick=\"handleRangePick\"\n @select=\"onSelect\"\n />\n </div>\n <div\n v-if=\"!singlePanel\"\n :class=\"[ppNs.e('content'), drpNs.e('content')]\"\n class=\"is-right\"\n >\n <div :class=\"drpNs.e('header')\">\n <button\n v-if=\"unlinkPanels\"\n type=\"button\"\n :disabled=\"!enableYearArrow || quarterRangeDisabled\"\n :class=\"[\n ppNs.e('icon-btn'),\n ppNs.is('disabled', !enableYearArrow || quarterRangeDisabled),\n ]\"\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 :disabled=\"quarterRangeDisabled\"\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 <quarter-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 :disabled=\"quarterRangeDisabled\"\n :cell-class-name=\"cellClassName\"\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, watch } from 'vue'\nimport dayjs from 'dayjs'\nimport ElIcon from '@element-plus/components/icon'\nimport { useLocale } from '@element-plus/hooks'\nimport { DArrowLeft, DArrowRight } from '@element-plus/icons-vue'\nimport { PICKER_BASE_INJECTION_KEY } from '@element-plus/components/time-picker'\nimport { isArray } from '@element-plus/utils'\nimport {\n correctlyParseUserInput,\n getDefaultValue,\n isQuarterFullyDisabled,\n isValidRange,\n normalizeQuarterDate,\n} from '../utils'\nimport {\n panelQuarterRangeEmits,\n panelQuarterRangeProps,\n} from '../props/panel-quarter-range'\nimport { useMonthRangeHeader } from '../composables/use-month-range-header'\nimport { useRangePicker } from '../composables/use-range-picker'\nimport QuarterTable from './basic-quarter-table.vue'\nimport { useFormDisabled } from '@element-plus/components/form'\n\nimport type { Dayjs } from 'dayjs'\n\ntype RangePickValue = {\n minDate: Dayjs\n maxDate?: Dayjs\n}\n\ndefineOptions({\n name: 'DatePickerQuarterRange',\n})\n\nconst props = defineProps(panelQuarterRangeProps)\nconst emit = defineEmits(panelQuarterRangeEmits)\nconst unit = 'year'\n\nconst { lang } = useLocale()\nconst pickerBase = inject(PICKER_BASE_INJECTION_KEY) as any\nconst { shortcuts, cellClassName } = pickerBase.props\nconst disabledDate = toRef(pickerBase.props, 'disabledDate')\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 handleChangeRange,\n handleRangeConfirm,\n handleShortcutClick,\n onSelect,\n parseValue,\n} = useRangePicker(props, {\n defaultValue,\n leftDate,\n rightDate,\n unit,\n sortDates,\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 (\n props.singlePanel ||\n (props.unlinkPanels && rightYear.value > leftYear.value + 1)\n )\n})\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 handleRangeConfirm()\n}\n\nconst handleClear = () => {\n let valueOnClear = null\n if (pickerBase?.emptyValues) {\n valueOnClear = pickerBase.emptyValues.valueOnClear.value\n }\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', valueOnClear)\n}\n\nconst normalizeQuarterInput = (value: Dayjs) =>\n normalizeQuarterDate(value, lang.value, disabledDate.value)\n\nconst parseUserInput = (value: Dayjs | Dayjs[]) => {\n const parsed = correctlyParseUserInput(value, format.value, lang.value)\n\n if (isArray(parsed)) {\n return parsed.map((item) => normalizeQuarterInput(item))\n }\n\n return normalizeQuarterInput(parsed)\n}\n\nconst isValidValue = (date: [Dayjs, Dayjs]) => {\n return (\n isValidRange(date) &&\n (disabledDate.value\n ? !disabledDate.value(date[0].toDate()) &&\n !disabledDate.value(date[1].toDate())\n : true) &&\n !isQuarterFullyDisabled(date[0], lang.value, disabledDate.value) &&\n !isQuarterFullyDisabled(date[1], lang.value, disabledDate.value)\n )\n}\n\nfunction sortDates(minDate: Dayjs | undefined, maxDate: Dayjs | undefined) {\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\nconst quarterRangeDisabled = useFormDisabled()\n\nwatch(\n () => props.visible,\n (visible) => {\n if (!visible && rangeState.value.selecting) {\n parseValue(props.parsedValue)\n onSelect(false)\n }\n }\n)\n\nemit('set-picker-option', ['isValidValue', isValidValue])\nemit('set-picker-option', ['parseUserInput', parseUserInput])\nemit('set-picker-option', ['handleClear', handleClear])\n</script>\n"],"mappings":";;;;;;;;;;;;;;;;;;;;;AAwKA,MAAM,OAAO;;;;;;;EAFb,MAAM,QAAQ;EACd,MAAM,OAAO;EAGb,MAAM,EAAE,SAAS,cAAA,WAAU;EAC3B,MAAM,cAAA,GAAA,IAAA,QAAoB,kBAAA,0BAA0B;EACpD,MAAM,EAAE,WAAW,kBAAkB,WAAW;EAChD,MAAM,gBAAA,GAAA,IAAA,OAAqB,WAAW,OAAO,eAAc;EAC3D,MAAM,UAAA,GAAA,IAAA,OAAe,WAAW,OAAO,SAAQ;EAC/C,MAAM,gBAAA,GAAA,IAAA,OAAqB,WAAW,OAAO,eAAc;EAC3D,MAAM,YAAA,GAAA,IAAA,MAAA,GAAA,MAAA,UAAsB,CAAC,OAAO,KAAK,MAAM,CAAA;EAC/C,MAAM,aAAA,GAAA,IAAA,MAAA,GAAA,MAAA,UAAuB,CAAC,OAAO,KAAK,MAAM,CAAC,IAAI,GAAG,KAAK,CAAA;EAE7D,MAAM,EACJ,SACA,SACA,YACA,MACA,OACA,mBACA,oBACA,qBACA,UACA,eACE,yBAAA,eAAe,OAAO;GACxB;GACA;GACA;GACA;GACA;GACD,CAAA;EAED,MAAM,gBAAA,GAAA,IAAA,gBAA8B,CAAC,CAAC,UAAU,OAAM;EAEtD,MAAM,EACJ,cACA,eACA,cACA,eACA,WACA,YACA,UACA,cACE,+BAAA,oBAAoB;GACtB,eAAA,GAAA,IAAA,OAAoB,OAAO,eAAe;GAC1C;GACA;GACD,CAAA;EAED,MAAM,mBAAA,GAAA,IAAA,gBAAiC;GACrC,OACE,MAAM,eACL,MAAM,gBAAgB,UAAU,QAAQ,SAAS,QAAQ;IAE7D;EAED,MAAM,mBAAmB,KAAqB,QAAQ,SAAS;GAC7D,MAAM,WAAW,IAAI;GACrB,MAAM,WAAW,IAAI;GACrB,IAAI,QAAQ,UAAU,YAAY,QAAQ,UAAU,UAClD;GAEF,KAAK,mBAAmB,CAAC,SAAS,QAAQ,EAAE,YAAY,SAAS,QAAQ,CAAC,CAAA;GAC1E,QAAQ,QAAQ;GAChB,QAAQ,QAAQ;GAEhB,IAAI,CAAC,OAAO;GACZ,oBAAmB;;EAGrB,MAAM,oBAAoB;GACxB,IAAI,eAAe;GACnB,IAAI,YAAY,aACd,eAAe,WAAW,YAAY,aAAa;GAErD,SAAS,QAAQ,cAAA,iBAAA,GAAA,IAAA,OAAsB,aAAa,EAAE;IACpD,OAAA,GAAA,IAAA,OAAY,KAAK;IACjB,MAAM;IACN,cAAc,MAAM;IACrB,CAAC,CAAC;GACH,UAAU,QAAQ,SAAS,MAAM,IAAI,GAAG,OAAM;GAC9C,KAAK,QAAQ,aAAY;;EAG3B,MAAM,yBAAyB,UAC7B,cAAA,qBAAqB,OAAO,KAAK,OAAO,aAAa,MAAK;EAE5D,MAAM,kBAAkB,UAA2B;GACjD,MAAM,SAAS,cAAA,wBAAwB,OAAO,OAAO,OAAO,KAAK,MAAK;GAEtE,KAAA,GAAA,YAAA,SAAY,OAAO,EACjB,OAAO,OAAO,KAAK,SAAS,sBAAsB,KAAK,CAAA;GAGzD,OAAO,sBAAsB,OAAM;;EAGrC,MAAM,gBAAgB,SAAyB;GAC7C,OACE,cAAA,aAAa,KAAK,KACjB,aAAa,QACV,CAAC,aAAa,MAAM,KAAK,GAAG,QAAQ,CAAC,IACrC,CAAC,aAAa,MAAM,KAAK,GAAG,QAAQ,CAAA,GACpC,SACJ,CAAC,cAAA,uBAAuB,KAAK,IAAI,KAAK,OAAO,aAAa,MAAM,IAChE,CAAC,cAAA,uBAAuB,KAAK,IAAI,KAAK,OAAO,aAAa,MAAK;;EAInE,SAAS,UAAU,SAA4B,SAA4B;GACzE,IAAI,MAAM,gBAAgB,SAGxB,UAAU,SAFU,SAAS,MAAM,IAAI,OACnB,QAAQ,MAEC,GAAG,QAAQ,IAAI,GAAG,KAAK,GAAG;QAEvD,UAAU,QAAQ,SAAS,MAAM,IAAI,GAAG,KAAI;;EAIhD,MAAM,uBAAuB,8BAAA,iBAAgB;EAE7C,CAAA,GAAA,IAAA,aACQ,MAAM,UACX,YAAY;GACX,IAAI,CAAC,WAAW,WAAW,MAAM,WAAW;IAC1C,WAAW,MAAM,YAAW;IAC5B,SAAS,MAAK;;IAGpB;EAEA,KAAK,qBAAqB,CAAC,gBAAgB,aAAa,CAAA;EACxD,KAAK,qBAAqB,CAAC,kBAAkB,eAAe,CAAA;EAC5D,KAAK,qBAAqB,CAAC,eAAe,YAAY,CAAA;;4DA5K9C,OAAA,EA9HH,QAAA,GAAA,IAAA,gBAAK;mBAAU,KAAI,CAAC,GAAC;mBAAU,MAAK,CAAC,GAAC;mBAAU,KAAI,CAAC,GAAE,UAAWA,KAAAA,OAAM;mBAAS,KAAI,CAAC,GAAE,aAAA,GAAA,IAAA,OAAa,qBAAoB,CAAA;;oBAAkC,QAAQC,KAAAA,OAAO,QAAO,IAAK,aAAA;qBAAsCC,KAAAA;;sCA6HvN,OAAA,EAlHA,QAAA,GAAA,IAAA,iBAAA,GAAA,IAAA,OAAO,KAAI,CAAC,EAAC,eAAA,CAAA,EAAA,EAAA;wBACiC,KAAA,QAAA,WAAA,EAA5B,QAAA,GAAA,IAAA,iBAAA,GAAA,IAAA,OAAO,KAAI,CAAC,EAAC,UAAA,CAAA,EAAA,CAAA;IACxB,aAAA,UAAA,GAAA,IAAA,YAAA,GAAA,GAAA,IAAA,oBAWL,OAAA;;KAXoB,QAAA,GAAA,IAAA,iBAAA,GAAA,IAAA,OAAO,KAAI,CAAC,EAAC,UAAA,CAAA;+DAU5B,IAAA,UAAA,OAAA,GAAA,IAAA,aAAA,GAAA,IAAA,OARmB,UAAS,GAA3B,UAAU,QAAG;8DAQd,UAAA;MAPD;MACN,MAAK;MACJ,QAAA,GAAA,IAAA,iBAAA,GAAA,IAAA,OAAO,KAAI,CAAC,EAAC,WAAA,CAAA;MACb,WAAA,GAAA,IAAA,OAAU,qBAAoB;MAC9B,UAAK,YAAA,GAAA,IAAA,OAAE,oBAAmB,CAAC,SAAQ;iCAEjC,SAAS,KAAI,EAAA,IAAA,WAAA;;gCAsGd,OAAA,EAnGA,QAAA,GAAA,IAAA,iBAAA,GAAA,IAAA,OAAO,KAAI,CAAC,EAAC,OAAA,CAAA,EAAA,EAAA,EAAA,GAAA,IAAA,oBAkDX,OAAA,EAhDH,QAAA,GAAA,IAAA,gBAAK;oBAAgB,KAAI,CAAC,EAAC,UAAA;oBAAyB,MAAK,CAAC,EAAC,UAAA;oBAAyB,MAAK,CAAC,GAAE,QAAA,CAAUA,KAAAA,YAAW;uCAkC5G,OAAA,EA5BA,QAAA,GAAA,IAAA,iBAAA,GAAA,IAAA,OAAO,MAAK,CAAC,EAAC,SAAA,CAAA,EAAA,EAAA;iCAWT,UAAA;MATP,MAAK;MACJ,QAAA,GAAA,IAAA,gBAAK,EAAA,GAAA,IAAA,OAAE,KAAI,CAAC,EAAC,WAAA,EACR,eAAc,CAAA;MACnB,WAAA,GAAA,IAAA,OAAU,qBAAoB;MAC9B,SAAK,OAAA,OAAA,OAAA,MAAA,GAAA,UAAA,GAAA,IAAA,OAAE,aAAA,KAAA,GAAA,IAAA,OAAA,aAAA,CAAA,GAAA,KAAY;6BAIb,KAAA,QAAA,aAAA,EAAA,QAAA,EAAA,GAAA,IAAA,cAAA,GAAA,IAAA,OAD8B,gBAAA,OAAA,EAAA,MAAA;sCAAV,EAAA,GAAA,IAAA,cAAA,GAAA,IAAA,OAAA,wBAAA,WAAA,CAAA,CAAA,CAAA;;;KAIrBC,KAAAA,gBAAgBD,KAAAA,gBAAAA,GAAAA,IAAAA,YAAAA,GAAAA,GAAAA,IAAAA,oBAaf,UAAA;;MAZP,MAAK;MACJ,UAAQ,CAAG,gBAAA,UAAA,GAAA,IAAA,OAAmB,qBAAoB;MAClD,QAAA,GAAA,IAAA,gBAAK,CAAA,EAAA,GAAA,IAAA,OAAoB,KAAI,CAAC,EAAC,WAAA,GAAA,GAAA,IAAA,OAA8B,KAAI,CAAC,GAAE,YAAA,CAAc,gBAAA,UAAA,GAAA,IAAA,OAAmB,qBAAoB,CAAA,CAAA,EAIpH,gBAAe,CAAA;MACpB,SAAK,OAAA,OAAA,OAAA,MAAA,GAAA,UAAA,GAAA,IAAA,OAAE,aAAA,KAAA,GAAA,IAAA,OAAA,aAAA,CAAA,GAAA,KAAY;6BAIb,KAAA,QAAA,aAAA,EAAA,QAAA,EAAA,GAAA,IAAA,cAAA,GAAA,IAAA,OAD+B,gBAAA,OAAA,EAAA,MAAA;sCAAV,EAAA,GAAA,IAAA,cAAA,GAAA,IAAA,OAAA,wBAAA,YAAA,CAAA,CAAA,CAAA;;;iCAGJ,OAAA,OAAA,GAAA,IAAA,kBAAA,GAAA,IAAA,OAAlB,UAAS,CAAA,EAAA,EAAA;gCAcjB,4BAAA,SAAA;KAXA,kBAAe;KACd,MAAM,SAAA;KACN,aAAA,GAAA,IAAA,OAAU,QAAO;KACjB,aAAA,GAAA,IAAA,OAAU,QAAO;KACjB,gBAAA,GAAA,IAAA,OAAa,WAAU;KACvB,iBAAe,aAAA;KACf,WAAA,GAAA,IAAA,OAAU,qBAAoB;KAC9B,oBAAA,GAAA,IAAA,OAAiB,cAAa;KAC9B,gBAAA,GAAA,IAAA,OAAa,kBAAiB;KAC9B,QAAM;KACN,WAAA,GAAA,IAAA,OAAQ,SAAQ;;;;;;;;;;;cAIZA,KAAAA,gBAAAA,GAAAA,IAAAA,YAAAA,GAAAA,GAAAA,IAAAA,oBA8CH,OAAA;;KA7CH,QAAA,GAAA,IAAA,gBAAK,CAAA,EAAA,GAAA,IAAA,OAAG,KAAI,CAAC,EAAC,UAAA,GAAA,GAAA,IAAA,OAAa,MAAK,CAAC,EAAC,UAAA,CAAA,EAC7B,WAAU,CAAA;oCA8BV,OAAA,EA5BA,QAAA,GAAA,IAAA,iBAAA,GAAA,IAAA,OAAO,MAAK,CAAC,EAAC,SAAA,CAAA,EAAA,EAAA;KAEVC,KAAAA,iBAAAA,GAAAA,IAAAA,YAAAA,GAAAA,GAAAA,IAAAA,oBAaC,UAAA;;MAZP,MAAK;MACJ,UAAQ,CAAG,gBAAA,UAAA,GAAA,IAAA,OAAmB,qBAAoB;MAClD,QAAA,GAAA,IAAA,gBAAK,CAAA,EAAA,GAAA,IAAA,OAAoB,KAAI,CAAC,EAAC,WAAA,GAAA,GAAA,IAAA,OAA8B,KAAI,CAAC,GAAE,YAAA,CAAc,gBAAA,UAAA,GAAA,IAAA,OAAmB,qBAAoB,CAAA,CAAA,EAIpH,eAAc,CAAA;MACnB,SAAK,OAAA,OAAA,OAAA,MAAA,GAAA,UAAA,GAAA,IAAA,OAAE,cAAA,KAAA,GAAA,IAAA,OAAA,cAAA,CAAA,GAAA,KAAa;6BAId,KAAA,QAAA,aAAA,EAAA,QAAA,EAAA,GAAA,IAAA,cAAA,GAAA,IAAA,OAD8B,gBAAA,OAAA,EAAA,MAAA;sCAAV,EAAA,GAAA,IAAA,cAAA,GAAA,IAAA,OAAA,wBAAA,WAAA,CAAA,CAAA,CAAA;;;iCAapB,UAAA;MATP,MAAK;MACJ,QAAA,GAAA,IAAA,gBAAK,EAAA,GAAA,IAAA,OAAE,KAAI,CAAC,EAAC,WAAA,EACR,gBAAe,CAAA;MACpB,WAAA,GAAA,IAAA,OAAU,qBAAoB;MAC9B,SAAK,OAAA,OAAA,OAAA,MAAA,GAAA,UAAA,GAAA,IAAA,OAAE,cAAA,KAAA,GAAA,IAAA,OAAA,cAAA,CAAA,GAAA,KAAa;6BAId,KAAA,QAAA,aAAA,EAAA,QAAA,EAAA,GAAA,IAAA,cAAA,GAAA,IAAA,OAD+B,gBAAA,OAAA,EAAA,MAAA;sCAAV,EAAA,GAAA,IAAA,cAAA,GAAA,IAAA,OAAA,wBAAA,YAAA,CAAA,CAAA,CAAA;;;iCAGH,OAAA,OAAA,GAAA,IAAA,kBAAA,GAAA,IAAA,OAAnB,WAAU,CAAA,EAAA,EAAA;gCAclB,4BAAA,SAAA;KAXA,kBAAe;KACd,MAAM,UAAA;KACN,aAAA,GAAA,IAAA,OAAU,QAAO;KACjB,aAAA,GAAA,IAAA,OAAU,QAAO;KACjB,gBAAA,GAAA,IAAA,OAAa,WAAU;KACvB,iBAAe,aAAA;KACf,WAAA,GAAA,IAAA,OAAU,qBAAoB;KAC9B,oBAAA,GAAA,IAAA,OAAiB,cAAa;KAC9B,gBAAA,GAAA,IAAA,OAAa,kBAAiB;KAC9B,QAAM;KACN,WAAA,GAAA,IAAA,OAAQ,SAAQ"}
@@ -1 +1 @@
1
- {"version":3,"file":"panel-year-range.js","names":[],"sources":["../../../../../../../packages/components/date-picker-panel/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 :disabled=\"yearRangeDisabled\"\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 :disabled=\"yearRangeDisabled\"\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 || singlePanel\"\n type=\"button\"\n :disabled=\"!enableYearArrow || yearRangeDisabled\"\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 :disabled=\"yearRangeDisabled\"\n :cell-class-name=\"cellClassName\"\n @changerange=\"handleChangeRange\"\n @pick=\"handleRangePick\"\n @select=\"onSelect\"\n />\n </div>\n <div v-if=\"!singlePanel\" :class=\"rightPanelKls.content\">\n <div :class=\"drpNs.e('header')\">\n <button\n v-if=\"unlinkPanels\"\n type=\"button\"\n :disabled=\"!enableYearArrow || yearRangeDisabled\"\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 :disabled=\"yearRangeDisabled\"\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 :disabled=\"yearRangeDisabled\"\n :cell-class-name=\"cellClassName\"\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, useSlots, watch } from 'vue'\nimport dayjs from 'dayjs'\nimport { DArrowLeft, DArrowRight } from '@element-plus/icons-vue'\nimport ElIcon from '@element-plus/components/icon'\nimport { useLocale } from '@element-plus/hooks'\nimport { PICKER_BASE_INJECTION_KEY } from '@element-plus/components/time-picker'\nimport {\n panelYearRangeEmits,\n panelYearRangeProps,\n} from '../props/panel-year-range'\nimport { useYearRangeHeader } from '../composables/use-year-range-header'\nimport { useRangePicker } from '../composables/use-range-picker'\nimport {\n correctlyParseUserInput,\n getDefaultValue,\n isValidRange,\n} from '../utils'\nimport YearTable from './basic-year-table.vue'\nimport { useFormDisabled } from '@element-plus/components/form'\n\nimport type { Dayjs } from 'dayjs'\n\ndefineOptions({\n name: 'DatePickerYearRange',\n})\n\nconst props = defineProps(panelYearRangeProps)\nconst emit = defineEmits(panelYearRangeEmits)\nconst step = 10\nconst unit = 'year'\n\nconst { lang } = useLocale()\nconst leftDate = ref(dayjs().locale(lang.value))\nconst rightDate = ref(dayjs().locale(lang.value).add(step, unit))\nconst pickerBase = inject(PICKER_BASE_INJECTION_KEY) as any\nconst { shortcuts, disabledDate, cellClassName } = pickerBase.props\nconst format = toRef(pickerBase.props, 'format')\nconst defaultValue = toRef(pickerBase.props, 'defaultValue')\n\nconst {\n minDate,\n maxDate,\n rangeState,\n ppNs,\n drpNs,\n\n handleChangeRange,\n handleRangeConfirm,\n handleShortcutClick,\n onSelect,\n parseValue,\n} = useRangePicker(props, {\n defaultValue,\n leftDate,\n rightDate,\n step,\n unit,\n sortDates,\n})\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 yearRangeDisabled = useFormDisabled()\n\nconst hasShortcuts = computed(() => !!shortcuts.length)\n\nconst panelKls = computed(() => [\n ppNs.b(),\n drpNs.b(),\n ppNs.is('border', props.border),\n ppNs.is('disabled', yearRangeDisabled.value),\n {\n 'has-sidebar': Boolean(useSlots().sidebar) || hasShortcuts.value,\n 'single-panel': props.singlePanel,\n },\n])\n\nconst leftPanelKls = computed(() => {\n return {\n content: [\n ppNs.e('content'),\n drpNs.e('content'),\n drpNs.is('left', !props.singlePanel),\n ],\n arrowLeftBtn: [ppNs.e('icon-btn'), 'd-arrow-left'],\n arrowRightBtn: [\n ppNs.e('icon-btn'),\n ppNs.is('disabled', !enableYearArrow.value || yearRangeDisabled.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 ppNs.is('disabled', !enableYearArrow.value || yearRangeDisabled.value),\n 'd-arrow-left',\n ],\n arrowRightBtn: [ppNs.e('icon-btn'), 'd-arrow-right'],\n }\n})\n\nconst enableYearArrow = computed(() => {\n return (\n props.singlePanel ||\n (props.unlinkPanels && rightYear.value > leftYear.value + 1)\n )\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 handleRangeConfirm()\n}\n\nconst parseUserInput = (value: Dayjs | Dayjs[]) => {\n return correctlyParseUserInput(value, format.value, lang.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 let valueOnClear = null\n if (pickerBase?.emptyValues) {\n valueOnClear = pickerBase.emptyValues.valueOnClear.value\n }\n const defaultArr = getDefaultValue(unref(defaultValue), {\n lang: unref(lang),\n step,\n unit,\n unlinkPanels: props.unlinkPanels,\n })\n leftDate.value = defaultArr[0]\n rightDate.value = defaultArr[1]\n emit('pick', valueOnClear)\n}\n\nfunction sortDates(minDate: Dayjs | undefined, maxDate: Dayjs | undefined) {\n if (props.unlinkPanels && maxDate) {\n const minDateYear = minDate?.year() || 0\n const maxDateYear = maxDate.year()\n\n rightDate.value =\n minDateYear + step > maxDateYear ? maxDate.add(step, unit) : maxDate\n } else {\n rightDate.value = leftDate.value.add(step, unit)\n }\n}\n\nwatch(\n () => props.visible,\n (visible) => {\n if (!visible && rangeState.value.selecting) {\n parseValue(props.parsedValue)\n onSelect(false)\n }\n }\n)\n\nemit('set-picker-option', ['isValidValue', isValidValue])\nemit('set-picker-option', ['parseUserInput', parseUserInput])\nemit('set-picker-option', ['handleClear', handleClear])\n</script>\n"],"mappings":""}
1
+ {"version":3,"file":"panel-year-range.js","names":[],"sources":["../../../../../../../packages/components/date-picker-panel/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 :disabled=\"yearRangeDisabled\"\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 :disabled=\"yearRangeDisabled\"\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 || singlePanel\"\n type=\"button\"\n :disabled=\"!enableYearArrow || yearRangeDisabled\"\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 :disabled=\"yearRangeDisabled\"\n :cell-class-name=\"cellClassName\"\n @changerange=\"handleChangeRange\"\n @pick=\"handleRangePick\"\n @select=\"onSelect\"\n />\n </div>\n <div v-if=\"!singlePanel\" :class=\"rightPanelKls.content\">\n <div :class=\"drpNs.e('header')\">\n <button\n v-if=\"unlinkPanels\"\n type=\"button\"\n :disabled=\"!enableYearArrow || yearRangeDisabled\"\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 :disabled=\"yearRangeDisabled\"\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 :disabled=\"yearRangeDisabled\"\n :cell-class-name=\"cellClassName\"\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, useSlots, watch } from 'vue'\nimport dayjs from 'dayjs'\nimport { DArrowLeft, DArrowRight } from '@element-plus/icons-vue'\nimport ElIcon from '@element-plus/components/icon'\nimport { useLocale } from '@element-plus/hooks'\nimport { PICKER_BASE_INJECTION_KEY } from '@element-plus/components/time-picker'\nimport {\n panelYearRangeEmits,\n panelYearRangeProps,\n} from '../props/panel-year-range'\nimport { useYearRangeHeader } from '../composables/use-year-range-header'\nimport { useRangePicker } from '../composables/use-range-picker'\nimport {\n correctlyParseUserInput,\n getDefaultValue,\n isValidRange,\n} from '../utils'\nimport YearTable from './basic-year-table.vue'\nimport { useFormDisabled } from '@element-plus/components/form'\n\nimport type { Dayjs } from 'dayjs'\n\ndefineOptions({\n name: 'DatePickerYearRange',\n})\n\nconst props = defineProps(panelYearRangeProps)\nconst emit = defineEmits(panelYearRangeEmits)\nconst step = 10\nconst unit = 'year'\n\nconst { lang } = useLocale()\nconst leftDate = ref(dayjs().locale(lang.value))\nconst rightDate = ref(dayjs().locale(lang.value).add(step, unit))\nconst pickerBase = inject(PICKER_BASE_INJECTION_KEY) as any\nconst { shortcuts, cellClassName } = pickerBase.props\nconst disabledDate = toRef(pickerBase.props, 'disabledDate')\nconst format = toRef(pickerBase.props, 'format')\nconst defaultValue = toRef(pickerBase.props, 'defaultValue')\n\nconst {\n minDate,\n maxDate,\n rangeState,\n ppNs,\n drpNs,\n\n handleChangeRange,\n handleRangeConfirm,\n handleShortcutClick,\n onSelect,\n parseValue,\n} = useRangePicker(props, {\n defaultValue,\n leftDate,\n rightDate,\n step,\n unit,\n sortDates,\n})\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 yearRangeDisabled = useFormDisabled()\n\nconst hasShortcuts = computed(() => !!shortcuts.length)\n\nconst panelKls = computed(() => [\n ppNs.b(),\n drpNs.b(),\n ppNs.is('border', props.border),\n ppNs.is('disabled', yearRangeDisabled.value),\n {\n 'has-sidebar': Boolean(useSlots().sidebar) || hasShortcuts.value,\n 'single-panel': props.singlePanel,\n },\n])\n\nconst leftPanelKls = computed(() => {\n return {\n content: [\n ppNs.e('content'),\n drpNs.e('content'),\n drpNs.is('left', !props.singlePanel),\n ],\n arrowLeftBtn: [ppNs.e('icon-btn'), 'd-arrow-left'],\n arrowRightBtn: [\n ppNs.e('icon-btn'),\n ppNs.is('disabled', !enableYearArrow.value || yearRangeDisabled.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 ppNs.is('disabled', !enableYearArrow.value || yearRangeDisabled.value),\n 'd-arrow-left',\n ],\n arrowRightBtn: [ppNs.e('icon-btn'), 'd-arrow-right'],\n }\n})\n\nconst enableYearArrow = computed(() => {\n return (\n props.singlePanel ||\n (props.unlinkPanels && rightYear.value > leftYear.value + 1)\n )\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 handleRangeConfirm()\n}\n\nconst parseUserInput = (value: Dayjs | Dayjs[]) => {\n return correctlyParseUserInput(value, format.value, lang.value)\n}\n\nconst isValidValue = (date: [Dayjs, Dayjs]) => {\n return (\n isValidRange(date) &&\n (disabledDate.value\n ? !disabledDate.value(date[0].toDate()) &&\n !disabledDate.value(date[1].toDate())\n : true)\n )\n}\n\nconst handleClear = () => {\n let valueOnClear = null\n if (pickerBase?.emptyValues) {\n valueOnClear = pickerBase.emptyValues.valueOnClear.value\n }\n const defaultArr = getDefaultValue(unref(defaultValue), {\n lang: unref(lang),\n step,\n unit,\n unlinkPanels: props.unlinkPanels,\n })\n leftDate.value = defaultArr[0]\n rightDate.value = defaultArr[1]\n emit('pick', valueOnClear)\n}\n\nfunction sortDates(minDate: Dayjs | undefined, maxDate: Dayjs | undefined) {\n if (props.unlinkPanels && maxDate) {\n const minDateYear = minDate?.year() || 0\n const maxDateYear = maxDate.year()\n\n rightDate.value =\n minDateYear + step > maxDateYear ? maxDate.add(step, unit) : maxDate\n } else {\n rightDate.value = leftDate.value.add(step, unit)\n }\n}\n\nwatch(\n () => props.visible,\n (visible) => {\n if (!visible && rangeState.value.selecting) {\n parseValue(props.parsedValue)\n onSelect(false)\n }\n }\n)\n\nemit('set-picker-option', ['isValidValue', isValidValue])\nemit('set-picker-option', ['parseUserInput', parseUserInput])\nemit('set-picker-option', ['handleClear', handleClear])\n</script>\n"],"mappings":""}
@@ -32,7 +32,8 @@ var panel_year_range_vue_vue_type_script_setup_true_lang_default = /* @__PURE__
32
32
  const leftDate = (0, vue.ref)((0, dayjs.default)().locale(lang.value));
33
33
  const rightDate = (0, vue.ref)((0, dayjs.default)().locale(lang.value).add(step, unit));
34
34
  const pickerBase = (0, vue.inject)(require_constants.PICKER_BASE_INJECTION_KEY);
35
- const { shortcuts, disabledDate, cellClassName } = pickerBase.props;
35
+ const { shortcuts, cellClassName } = pickerBase.props;
36
+ const disabledDate = (0, vue.toRef)(pickerBase.props, "disabledDate");
36
37
  const format = (0, vue.toRef)(pickerBase.props, "format");
37
38
  const defaultValue = (0, vue.toRef)(pickerBase.props, "defaultValue");
38
39
  const { minDate, maxDate, rangeState, ppNs, drpNs, handleChangeRange, handleRangeConfirm, handleShortcutClick, onSelect, parseValue } = require_use_range_picker.useRangePicker(props, {
@@ -107,7 +108,7 @@ var panel_year_range_vue_vue_type_script_setup_true_lang_default = /* @__PURE__
107
108
  return require_utils.correctlyParseUserInput(value, format.value, lang.value);
108
109
  };
109
110
  const isValidValue = (date) => {
110
- return require_utils.isValidRange(date) && (disabledDate ? !disabledDate(date[0].toDate()) && !disabledDate(date[1].toDate()) : true);
111
+ return require_utils.isValidRange(date) && (disabledDate.value ? !disabledDate.value(date[0].toDate()) && !disabledDate.value(date[1].toDate()) : true);
111
112
  };
112
113
  const handleClear = () => {
113
114
  let valueOnClear = null;
@@ -180,7 +181,7 @@ var panel_year_range_vue_vue_type_script_setup_true_lang_default = /* @__PURE__
180
181
  "min-date": (0, vue.unref)(minDate),
181
182
  "max-date": (0, vue.unref)(maxDate),
182
183
  "range-state": (0, vue.unref)(rangeState),
183
- "disabled-date": (0, vue.unref)(disabledDate),
184
+ "disabled-date": disabledDate.value,
184
185
  disabled: (0, vue.unref)(yearRangeDisabled),
185
186
  "cell-class-name": (0, vue.unref)(cellClassName),
186
187
  onChangerange: (0, vue.unref)(handleChangeRange),
@@ -226,7 +227,7 @@ var panel_year_range_vue_vue_type_script_setup_true_lang_default = /* @__PURE__
226
227
  "min-date": (0, vue.unref)(minDate),
227
228
  "max-date": (0, vue.unref)(maxDate),
228
229
  "range-state": (0, vue.unref)(rangeState),
229
- "disabled-date": (0, vue.unref)(disabledDate),
230
+ "disabled-date": disabledDate.value,
230
231
  disabled: (0, vue.unref)(yearRangeDisabled),
231
232
  "cell-class-name": (0, vue.unref)(cellClassName),
232
233
  onChangerange: (0, vue.unref)(handleChangeRange),
@@ -1 +1 @@
1
- {"version":3,"file":"panel-year-range.vue_vue_type_script_setup_true_lang.js","names":["unlinkPanels","singlePanel"],"sources":["../../../../../../../packages/components/date-picker-panel/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 :disabled=\"yearRangeDisabled\"\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 :disabled=\"yearRangeDisabled\"\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 || singlePanel\"\n type=\"button\"\n :disabled=\"!enableYearArrow || yearRangeDisabled\"\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 :disabled=\"yearRangeDisabled\"\n :cell-class-name=\"cellClassName\"\n @changerange=\"handleChangeRange\"\n @pick=\"handleRangePick\"\n @select=\"onSelect\"\n />\n </div>\n <div v-if=\"!singlePanel\" :class=\"rightPanelKls.content\">\n <div :class=\"drpNs.e('header')\">\n <button\n v-if=\"unlinkPanels\"\n type=\"button\"\n :disabled=\"!enableYearArrow || yearRangeDisabled\"\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 :disabled=\"yearRangeDisabled\"\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 :disabled=\"yearRangeDisabled\"\n :cell-class-name=\"cellClassName\"\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, useSlots, watch } from 'vue'\nimport dayjs from 'dayjs'\nimport { DArrowLeft, DArrowRight } from '@element-plus/icons-vue'\nimport ElIcon from '@element-plus/components/icon'\nimport { useLocale } from '@element-plus/hooks'\nimport { PICKER_BASE_INJECTION_KEY } from '@element-plus/components/time-picker'\nimport {\n panelYearRangeEmits,\n panelYearRangeProps,\n} from '../props/panel-year-range'\nimport { useYearRangeHeader } from '../composables/use-year-range-header'\nimport { useRangePicker } from '../composables/use-range-picker'\nimport {\n correctlyParseUserInput,\n getDefaultValue,\n isValidRange,\n} from '../utils'\nimport YearTable from './basic-year-table.vue'\nimport { useFormDisabled } from '@element-plus/components/form'\n\nimport type { Dayjs } from 'dayjs'\n\ndefineOptions({\n name: 'DatePickerYearRange',\n})\n\nconst props = defineProps(panelYearRangeProps)\nconst emit = defineEmits(panelYearRangeEmits)\nconst step = 10\nconst unit = 'year'\n\nconst { lang } = useLocale()\nconst leftDate = ref(dayjs().locale(lang.value))\nconst rightDate = ref(dayjs().locale(lang.value).add(step, unit))\nconst pickerBase = inject(PICKER_BASE_INJECTION_KEY) as any\nconst { shortcuts, disabledDate, cellClassName } = pickerBase.props\nconst format = toRef(pickerBase.props, 'format')\nconst defaultValue = toRef(pickerBase.props, 'defaultValue')\n\nconst {\n minDate,\n maxDate,\n rangeState,\n ppNs,\n drpNs,\n\n handleChangeRange,\n handleRangeConfirm,\n handleShortcutClick,\n onSelect,\n parseValue,\n} = useRangePicker(props, {\n defaultValue,\n leftDate,\n rightDate,\n step,\n unit,\n sortDates,\n})\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 yearRangeDisabled = useFormDisabled()\n\nconst hasShortcuts = computed(() => !!shortcuts.length)\n\nconst panelKls = computed(() => [\n ppNs.b(),\n drpNs.b(),\n ppNs.is('border', props.border),\n ppNs.is('disabled', yearRangeDisabled.value),\n {\n 'has-sidebar': Boolean(useSlots().sidebar) || hasShortcuts.value,\n 'single-panel': props.singlePanel,\n },\n])\n\nconst leftPanelKls = computed(() => {\n return {\n content: [\n ppNs.e('content'),\n drpNs.e('content'),\n drpNs.is('left', !props.singlePanel),\n ],\n arrowLeftBtn: [ppNs.e('icon-btn'), 'd-arrow-left'],\n arrowRightBtn: [\n ppNs.e('icon-btn'),\n ppNs.is('disabled', !enableYearArrow.value || yearRangeDisabled.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 ppNs.is('disabled', !enableYearArrow.value || yearRangeDisabled.value),\n 'd-arrow-left',\n ],\n arrowRightBtn: [ppNs.e('icon-btn'), 'd-arrow-right'],\n }\n})\n\nconst enableYearArrow = computed(() => {\n return (\n props.singlePanel ||\n (props.unlinkPanels && rightYear.value > leftYear.value + 1)\n )\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 handleRangeConfirm()\n}\n\nconst parseUserInput = (value: Dayjs | Dayjs[]) => {\n return correctlyParseUserInput(value, format.value, lang.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 let valueOnClear = null\n if (pickerBase?.emptyValues) {\n valueOnClear = pickerBase.emptyValues.valueOnClear.value\n }\n const defaultArr = getDefaultValue(unref(defaultValue), {\n lang: unref(lang),\n step,\n unit,\n unlinkPanels: props.unlinkPanels,\n })\n leftDate.value = defaultArr[0]\n rightDate.value = defaultArr[1]\n emit('pick', valueOnClear)\n}\n\nfunction sortDates(minDate: Dayjs | undefined, maxDate: Dayjs | undefined) {\n if (props.unlinkPanels && maxDate) {\n const minDateYear = minDate?.year() || 0\n const maxDateYear = maxDate.year()\n\n rightDate.value =\n minDateYear + step > maxDateYear ? maxDate.add(step, unit) : maxDate\n } else {\n rightDate.value = leftDate.value.add(step, unit)\n }\n}\n\nwatch(\n () => props.visible,\n (visible) => {\n if (!visible && rangeState.value.selecting) {\n parseValue(props.parsedValue)\n onSelect(false)\n }\n }\n)\n\nemit('set-picker-option', ['isValidValue', isValidValue])\nemit('set-picker-option', ['parseUserInput', parseUserInput])\nemit('set-picker-option', ['handleClear', handleClear])\n</script>\n"],"mappings":"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"}
1
+ {"version":3,"file":"panel-year-range.vue_vue_type_script_setup_true_lang.js","names":["unlinkPanels","singlePanel"],"sources":["../../../../../../../packages/components/date-picker-panel/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 :disabled=\"yearRangeDisabled\"\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 :disabled=\"yearRangeDisabled\"\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 || singlePanel\"\n type=\"button\"\n :disabled=\"!enableYearArrow || yearRangeDisabled\"\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 :disabled=\"yearRangeDisabled\"\n :cell-class-name=\"cellClassName\"\n @changerange=\"handleChangeRange\"\n @pick=\"handleRangePick\"\n @select=\"onSelect\"\n />\n </div>\n <div v-if=\"!singlePanel\" :class=\"rightPanelKls.content\">\n <div :class=\"drpNs.e('header')\">\n <button\n v-if=\"unlinkPanels\"\n type=\"button\"\n :disabled=\"!enableYearArrow || yearRangeDisabled\"\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 :disabled=\"yearRangeDisabled\"\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 :disabled=\"yearRangeDisabled\"\n :cell-class-name=\"cellClassName\"\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, useSlots, watch } from 'vue'\nimport dayjs from 'dayjs'\nimport { DArrowLeft, DArrowRight } from '@element-plus/icons-vue'\nimport ElIcon from '@element-plus/components/icon'\nimport { useLocale } from '@element-plus/hooks'\nimport { PICKER_BASE_INJECTION_KEY } from '@element-plus/components/time-picker'\nimport {\n panelYearRangeEmits,\n panelYearRangeProps,\n} from '../props/panel-year-range'\nimport { useYearRangeHeader } from '../composables/use-year-range-header'\nimport { useRangePicker } from '../composables/use-range-picker'\nimport {\n correctlyParseUserInput,\n getDefaultValue,\n isValidRange,\n} from '../utils'\nimport YearTable from './basic-year-table.vue'\nimport { useFormDisabled } from '@element-plus/components/form'\n\nimport type { Dayjs } from 'dayjs'\n\ndefineOptions({\n name: 'DatePickerYearRange',\n})\n\nconst props = defineProps(panelYearRangeProps)\nconst emit = defineEmits(panelYearRangeEmits)\nconst step = 10\nconst unit = 'year'\n\nconst { lang } = useLocale()\nconst leftDate = ref(dayjs().locale(lang.value))\nconst rightDate = ref(dayjs().locale(lang.value).add(step, unit))\nconst pickerBase = inject(PICKER_BASE_INJECTION_KEY) as any\nconst { shortcuts, cellClassName } = pickerBase.props\nconst disabledDate = toRef(pickerBase.props, 'disabledDate')\nconst format = toRef(pickerBase.props, 'format')\nconst defaultValue = toRef(pickerBase.props, 'defaultValue')\n\nconst {\n minDate,\n maxDate,\n rangeState,\n ppNs,\n drpNs,\n\n handleChangeRange,\n handleRangeConfirm,\n handleShortcutClick,\n onSelect,\n parseValue,\n} = useRangePicker(props, {\n defaultValue,\n leftDate,\n rightDate,\n step,\n unit,\n sortDates,\n})\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 yearRangeDisabled = useFormDisabled()\n\nconst hasShortcuts = computed(() => !!shortcuts.length)\n\nconst panelKls = computed(() => [\n ppNs.b(),\n drpNs.b(),\n ppNs.is('border', props.border),\n ppNs.is('disabled', yearRangeDisabled.value),\n {\n 'has-sidebar': Boolean(useSlots().sidebar) || hasShortcuts.value,\n 'single-panel': props.singlePanel,\n },\n])\n\nconst leftPanelKls = computed(() => {\n return {\n content: [\n ppNs.e('content'),\n drpNs.e('content'),\n drpNs.is('left', !props.singlePanel),\n ],\n arrowLeftBtn: [ppNs.e('icon-btn'), 'd-arrow-left'],\n arrowRightBtn: [\n ppNs.e('icon-btn'),\n ppNs.is('disabled', !enableYearArrow.value || yearRangeDisabled.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 ppNs.is('disabled', !enableYearArrow.value || yearRangeDisabled.value),\n 'd-arrow-left',\n ],\n arrowRightBtn: [ppNs.e('icon-btn'), 'd-arrow-right'],\n }\n})\n\nconst enableYearArrow = computed(() => {\n return (\n props.singlePanel ||\n (props.unlinkPanels && rightYear.value > leftYear.value + 1)\n )\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 handleRangeConfirm()\n}\n\nconst parseUserInput = (value: Dayjs | Dayjs[]) => {\n return correctlyParseUserInput(value, format.value, lang.value)\n}\n\nconst isValidValue = (date: [Dayjs, Dayjs]) => {\n return (\n isValidRange(date) &&\n (disabledDate.value\n ? !disabledDate.value(date[0].toDate()) &&\n !disabledDate.value(date[1].toDate())\n : true)\n )\n}\n\nconst handleClear = () => {\n let valueOnClear = null\n if (pickerBase?.emptyValues) {\n valueOnClear = pickerBase.emptyValues.valueOnClear.value\n }\n const defaultArr = getDefaultValue(unref(defaultValue), {\n lang: unref(lang),\n step,\n unit,\n unlinkPanels: props.unlinkPanels,\n })\n leftDate.value = defaultArr[0]\n rightDate.value = defaultArr[1]\n emit('pick', valueOnClear)\n}\n\nfunction sortDates(minDate: Dayjs | undefined, maxDate: Dayjs | undefined) {\n if (props.unlinkPanels && maxDate) {\n const minDateYear = minDate?.year() || 0\n const maxDateYear = maxDate.year()\n\n rightDate.value =\n minDateYear + step > maxDateYear ? maxDate.add(step, unit) : maxDate\n } else {\n rightDate.value = leftDate.value.add(step, unit)\n }\n}\n\nwatch(\n () => props.visible,\n (visible) => {\n if (!visible && rangeState.value.selecting) {\n parseValue(props.parsedValue)\n onSelect(false)\n }\n }\n)\n\nemit('set-picker-option', ['isValidValue', isValidValue])\nemit('set-picker-option', ['parseUserInput', parseUserInput])\nemit('set-picker-option', ['handleClear', handleClear])\n</script>\n"],"mappings":"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"}
@@ -51,7 +51,7 @@ declare const _default: _$vue.DefineComponent<_$vue.ExtractPropTypes<{
51
51
  readonly dateFormat: StringConstructor;
52
52
  readonly timeFormat: StringConstructor;
53
53
  readonly disabled: EpPropFinalized<BooleanConstructor, unknown, unknown, undefined, boolean>;
54
- readonly modelValue: EpPropFinalized<(new (...args: any[]) => string | number | Date | number[] | string[] | Date[]) | (() => ModelValueType) | (((new (...args: any[]) => string | number | Date | number[] | string[] | Date[]) | (() => ModelValueType)) | null)[], unknown, unknown, "", boolean>;
54
+ readonly modelValue: EpPropFinalized<(new (...args: any[]) => string | number | string[] | Date | number[] | Date[]) | (() => ModelValueType) | (((new (...args: any[]) => string | number | string[] | Date | number[] | Date[]) | (() => ModelValueType)) | null)[], unknown, unknown, "", boolean>;
55
55
  readonly defaultValue: {
56
56
  readonly type: _$vue.PropType<EpPropMergeType<(new (...args: any[]) => Date | [Date, Date]) | (() => SingleOrRange<Date>) | (((new (...args: any[]) => Date | [Date, Date]) | (() => SingleOrRange<Date>)) | null)[], unknown, unknown>>;
57
57
  readonly required: false;
@@ -111,7 +111,7 @@ declare const _default: _$vue.DefineComponent<_$vue.ExtractPropTypes<{
111
111
  readonly dateFormat: StringConstructor;
112
112
  readonly timeFormat: StringConstructor;
113
113
  readonly disabled: EpPropFinalized<BooleanConstructor, unknown, unknown, undefined, boolean>;
114
- readonly modelValue: EpPropFinalized<(new (...args: any[]) => string | number | Date | number[] | string[] | Date[]) | (() => ModelValueType) | (((new (...args: any[]) => string | number | Date | number[] | string[] | Date[]) | (() => ModelValueType)) | null)[], unknown, unknown, "", boolean>;
114
+ readonly modelValue: EpPropFinalized<(new (...args: any[]) => string | number | string[] | Date | number[] | Date[]) | (() => ModelValueType) | (((new (...args: any[]) => string | number | string[] | Date | number[] | Date[]) | (() => ModelValueType)) | null)[], unknown, unknown, "", boolean>;
115
115
  readonly defaultValue: {
116
116
  readonly type: _$vue.PropType<EpPropMergeType<(new (...args: any[]) => Date | [Date, Date]) | (() => SingleOrRange<Date>) | (((new (...args: any[]) => Date | [Date, Date]) | (() => SingleOrRange<Date>)) | null)[], unknown, unknown>>;
117
117
  readonly required: false;
@@ -134,7 +134,7 @@ declare const _default: _$vue.DefineComponent<_$vue.ExtractPropTypes<{
134
134
  }>, {
135
135
  readonly type: EpPropMergeType<(new (...args: any[]) => "year" | "years" | "month" | "months" | "date" | "dates" | "week" | "quarter" | "quarters" | "datetime" | "datetimerange" | "daterange" | "monthrange" | "yearrange" | "quarterrange") | (() => DatePickerType) | (((new (...args: any[]) => "year" | "years" | "month" | "months" | "date" | "dates" | "week" | "quarter" | "quarters" | "datetime" | "datetimerange" | "daterange" | "monthrange" | "yearrange" | "quarterrange") | (() => DatePickerType)) | null)[], unknown, unknown>;
136
136
  readonly disabled: EpPropMergeType<BooleanConstructor, unknown, unknown>;
137
- readonly modelValue: EpPropMergeType<(new (...args: any[]) => string | number | Date | number[] | string[] | Date[]) | (() => ModelValueType) | (((new (...args: any[]) => string | number | Date | number[] | string[] | Date[]) | (() => ModelValueType)) | null)[], unknown, unknown>;
137
+ readonly modelValue: EpPropMergeType<(new (...args: any[]) => string | number | string[] | Date | number[] | Date[]) | (() => ModelValueType) | (((new (...args: any[]) => string | number | string[] | Date | number[] | Date[]) | (() => ModelValueType)) | null)[], unknown, unknown>;
138
138
  readonly clearable: EpPropMergeType<BooleanConstructor, unknown, unknown>;
139
139
  readonly border: EpPropMergeType<BooleanConstructor, unknown, unknown>;
140
140
  readonly editable: EpPropMergeType<BooleanConstructor, unknown, unknown>;
@@ -51,7 +51,7 @@ declare const datePickerPanelProps: {
51
51
  readonly dateFormat: StringConstructor;
52
52
  readonly timeFormat: StringConstructor;
53
53
  readonly disabled: EpPropFinalized<BooleanConstructor, unknown, unknown, undefined, boolean>;
54
- readonly modelValue: EpPropFinalized<(new (...args: any[]) => string | number | Date | number[] | string[] | Date[]) | (() => ModelValueType) | (((new (...args: any[]) => string | number | Date | number[] | string[] | Date[]) | (() => ModelValueType)) | null)[], unknown, unknown, "", boolean>;
54
+ readonly modelValue: EpPropFinalized<(new (...args: any[]) => string | number | string[] | Date | number[] | Date[]) | (() => ModelValueType) | (((new (...args: any[]) => string | number | string[] | Date | number[] | Date[]) | (() => ModelValueType)) | null)[], unknown, unknown, "", boolean>;
55
55
  readonly defaultValue: {
56
56
  readonly type: _$vue.PropType<EpPropMergeType<(new (...args: any[]) => Date | [Date, Date]) | (() => SingleOrRange<Date>) | (((new (...args: any[]) => Date | [Date, Date]) | (() => SingleOrRange<Date>)) | null)[], unknown, unknown>>;
57
57
  readonly required: false;
@@ -207,7 +207,7 @@ declare const __VLS_export: _$vue.DefineComponent<_$vue.ExtractPropTypes<{
207
207
  }>, {
208
208
  ref: _$vue.Ref<HTMLButtonElement | undefined, HTMLButtonElement | undefined>;
209
209
  size: _$vue.ComputedRef<"" | "default" | "small" | "large">;
210
- type: _$vue.ComputedRef<"" | "default" | "info" | "primary" | "success" | "warning" | "text" | "danger">;
210
+ type: _$vue.ComputedRef<"default" | "" | "info" | "primary" | "success" | "warning" | "text" | "danger">;
211
211
  disabled: _$vue.ComputedRef<boolean>;
212
212
  shouldAddSpace: _$vue.ComputedRef<boolean>;
213
213
  }, {}, {}, {}, _$vue.ComponentOptionsMixin, _$vue.ComponentOptionsMixin, {
@@ -235,7 +235,7 @@ declare const __VLS_export: _$vue.DefineComponent<_$vue.ExtractPropTypes<{
235
235
  }>, {
236
236
  ref: _$vue.Ref<HTMLButtonElement | undefined, HTMLButtonElement | undefined>;
237
237
  size: _$vue.ComputedRef<"" | "default" | "small" | "large">;
238
- type: _$vue.ComputedRef<"" | "default" | "info" | "primary" | "success" | "warning" | "text" | "danger">;
238
+ type: _$vue.ComputedRef<"default" | "" | "info" | "primary" | "success" | "warning" | "text" | "danger">;
239
239
  disabled: _$vue.ComputedRef<boolean>;
240
240
  shouldAddSpace: _$vue.ComputedRef<boolean>;
241
241
  }, {}, {}, {}, {
@@ -258,7 +258,7 @@ declare const __VLS_export: _$vue.DefineComponent<_$vue.ExtractPropTypes<{
258
258
  }>, {
259
259
  ref: _$vue.Ref<HTMLButtonElement | undefined, HTMLButtonElement | undefined>;
260
260
  size: _$vue.ComputedRef<"" | "default" | "small" | "large">;
261
- type: _$vue.ComputedRef<"" | "default" | "info" | "primary" | "success" | "warning" | "text" | "danger">;
261
+ type: _$vue.ComputedRef<"default" | "" | "info" | "primary" | "success" | "warning" | "text" | "danger">;
262
262
  disabled: _$vue.ComputedRef<boolean>;
263
263
  shouldAddSpace: _$vue.ComputedRef<boolean>;
264
264
  }, {}, {}, {}, _$vue.ComponentOptionsMixin, _$vue.ComponentOptionsMixin, {
@@ -2,6 +2,6 @@ Object.defineProperty(exports, Symbol.toStringTag, { value: "Module" });
2
2
  require("../../base/style/css.js");
3
3
  require("../../scrollbar/style/css.js");
4
4
  require("../../popper/style/css.js");
5
- require("../../button-group/style/css.js");
6
5
  require("../../button/style/css.js");
6
+ require("../../button-group/style/css.js");
7
7
  require("@element-plus/nightly/theme-chalk/el-dropdown.css");
@@ -2,6 +2,6 @@ Object.defineProperty(exports, Symbol.toStringTag, { value: "Module" });
2
2
  require("../../base/style/index.js");
3
3
  require("../../scrollbar/style/index.js");
4
4
  require("../../popper/style/index.js");
5
- require("../../button-group/style/index.js");
6
5
  require("../../button/style/index.js");
6
+ require("../../button-group/style/index.js");
7
7
  require("@element-plus/nightly/theme-chalk/src/dropdown.scss");
@@ -90,7 +90,7 @@ declare const __VLS_export: _$vue.DefineComponent<_$vue.ExtractPropTypes<{
90
90
  }>;
91
91
  contentId: _$vue.Ref<string, string>;
92
92
  inputId: _$vue.Ref<string, string>;
93
- btnSize: _$vue.ComputedRef<"" | "default" | "small" | "large">;
93
+ btnSize: _$vue.ComputedRef<"default" | "" | "small" | "large">;
94
94
  iconComponent: _$vue.ComputedRef<string | _$vue.FunctionalComponent<any, {}, any, {}> | {
95
95
  new (...args: any[]): any;
96
96
  __isFragment?: never;
@@ -4602,7 +4602,7 @@ declare const __VLS_export: _$vue.DefineComponent<_$vue.ExtractPropTypes<{
4602
4602
  }>, {
4603
4603
  ref: _$vue.Ref<HTMLButtonElement | undefined, HTMLButtonElement | undefined>;
4604
4604
  size: _$vue.ComputedRef<"" | "default" | "small" | "large">;
4605
- type: _$vue.ComputedRef<"" | "default" | "info" | "primary" | "success" | "warning" | "text" | "danger">;
4605
+ type: _$vue.ComputedRef<"default" | "" | "info" | "primary" | "success" | "warning" | "text" | "danger">;
4606
4606
  disabled: _$vue.ComputedRef<boolean>;
4607
4607
  shouldAddSpace: _$vue.ComputedRef<boolean>;
4608
4608
  }, {}, {}, {}, _$vue.ComponentOptionsMixin, _$vue.ComponentOptionsMixin, {
@@ -4630,7 +4630,7 @@ declare const __VLS_export: _$vue.DefineComponent<_$vue.ExtractPropTypes<{
4630
4630
  }>, {
4631
4631
  ref: _$vue.Ref<HTMLButtonElement | undefined, HTMLButtonElement | undefined>;
4632
4632
  size: _$vue.ComputedRef<"" | "default" | "small" | "large">;
4633
- type: _$vue.ComputedRef<"" | "default" | "info" | "primary" | "success" | "warning" | "text" | "danger">;
4633
+ type: _$vue.ComputedRef<"default" | "" | "info" | "primary" | "success" | "warning" | "text" | "danger">;
4634
4634
  disabled: _$vue.ComputedRef<boolean>;
4635
4635
  shouldAddSpace: _$vue.ComputedRef<boolean>;
4636
4636
  }, {}, {}, {}, {
@@ -4653,7 +4653,7 @@ declare const __VLS_export: _$vue.DefineComponent<_$vue.ExtractPropTypes<{
4653
4653
  }>, {
4654
4654
  ref: _$vue.Ref<HTMLButtonElement | undefined, HTMLButtonElement | undefined>;
4655
4655
  size: _$vue.ComputedRef<"" | "default" | "small" | "large">;
4656
- type: _$vue.ComputedRef<"" | "default" | "info" | "primary" | "success" | "warning" | "text" | "danger">;
4656
+ type: _$vue.ComputedRef<"default" | "" | "info" | "primary" | "success" | "warning" | "text" | "danger">;
4657
4657
  disabled: _$vue.ComputedRef<boolean>;
4658
4658
  shouldAddSpace: _$vue.ComputedRef<boolean>;
4659
4659
  }, {}, {}, {}, _$vue.ComponentOptionsMixin, _$vue.ComponentOptionsMixin, {