@element-plus/nightly 0.0.20260811 → 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 (684) 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/affix/src/affix.d.ts +1 -1
  276. package/es/components/affix/src/affix.vue.d.ts +2 -2
  277. package/es/components/alert/src/alert.d.ts +2 -2
  278. package/es/components/alert/src/alert.vue.d.ts +2 -2
  279. package/es/components/anchor/src/anchor.vue.d.ts +4 -4
  280. package/es/components/autocomplete/src/autocomplete.d.ts +3 -3
  281. package/es/components/autocomplete/src/autocomplete.vue.d.ts +3 -3
  282. package/es/components/avatar/src/avatar-group-props.d.ts +1 -1
  283. package/es/components/avatar/src/avatar-group.d.ts +3 -3
  284. package/es/components/avatar/src/avatar.d.ts +2 -2
  285. package/es/components/backtop/src/backtop.vue.d.ts +1 -1
  286. package/es/components/badge/src/badge.d.ts +1 -1
  287. package/es/components/badge/src/badge.vue.d.ts +1 -1
  288. package/es/components/button/src/button-group.d.ts +1 -1
  289. package/es/components/button/src/button-group.vue.d.ts +1 -1
  290. package/es/components/button/src/button.d.ts +2 -2
  291. package/es/components/button/src/button.vue.d.ts +5 -5
  292. package/es/components/button/src/use-button.d.ts +2 -2
  293. package/es/components/card/src/card.d.ts +1 -1
  294. package/es/components/card/src/card.vue.d.ts +1 -1
  295. package/es/components/carousel/src/carousel-item.vue.d.ts +1 -1
  296. package/es/components/carousel/src/carousel.d.ts +2 -2
  297. package/es/components/carousel/src/carousel.vue.d.ts +1 -1
  298. package/es/components/cascader/src/cascader.d.ts +3 -3
  299. package/es/components/cascader/src/cascader.vue.d.ts +12 -12
  300. package/es/components/cascader-panel/src/index.vue.d.ts +2 -2
  301. package/es/components/cascader-panel/src/menu.vue.d.ts +1 -1
  302. package/es/components/check-tag/src/check-tag.d.ts +1 -1
  303. package/es/components/checkbox/src/checkbox-button.vue.d.ts +3 -3
  304. package/es/components/checkbox/src/checkbox-group.vue.d.ts +3 -3
  305. package/es/components/checkbox/src/checkbox.d.ts +3 -3
  306. package/es/components/checkbox/src/checkbox.vue.d.ts +3 -3
  307. package/es/components/col/src/col.vue.d.ts +2 -2
  308. package/es/components/color-picker/src/color-picker.vue.d.ts +5 -5
  309. package/es/components/color-picker-panel/src/color-picker-panel.vue.d.ts +1 -1
  310. package/es/components/config-provider/src/hooks/use-global-config.d.ts +1 -1
  311. package/es/components/countdown/src/countdown.vue.d.ts +2 -2
  312. package/es/components/date-picker/src/date-picker.d.ts +15 -15
  313. package/es/components/date-picker/src/props.d.ts +3 -3
  314. package/es/components/date-picker-panel/src/composables/use-basic-date-table.d.ts +1 -1
  315. package/es/components/date-picker-panel/src/composables/use-panel-date-range.mjs +4 -4
  316. package/es/components/date-picker-panel/src/composables/use-panel-date-range.mjs.map +1 -1
  317. package/es/components/date-picker-panel/src/date-picker-com/panel-date-pick.mjs.map +1 -1
  318. package/es/components/date-picker-panel/src/date-picker-com/panel-date-pick.vue.d.ts +6 -6
  319. package/es/components/date-picker-panel/src/date-picker-com/panel-date-pick.vue_vue_type_script_setup_true_lang.mjs +25 -24
  320. package/es/components/date-picker-panel/src/date-picker-com/panel-date-pick.vue_vue_type_script_setup_true_lang.mjs.map +1 -1
  321. package/es/components/date-picker-panel/src/date-picker-com/panel-date-range.mjs.map +1 -1
  322. package/es/components/date-picker-panel/src/date-picker-com/panel-date-range.vue.d.ts +5 -5
  323. package/es/components/date-picker-panel/src/date-picker-com/panel-date-range.vue_vue_type_script_setup_true_lang.mjs +12 -11
  324. package/es/components/date-picker-panel/src/date-picker-com/panel-date-range.vue_vue_type_script_setup_true_lang.mjs.map +1 -1
  325. package/es/components/date-picker-panel/src/date-picker-com/panel-month-range.mjs.map +1 -1
  326. package/es/components/date-picker-panel/src/date-picker-com/panel-month-range.vue.d.ts +1 -1
  327. package/es/components/date-picker-panel/src/date-picker-com/panel-month-range.vue_vue_type_script_setup_true_lang.mjs +4 -3
  328. package/es/components/date-picker-panel/src/date-picker-com/panel-month-range.vue_vue_type_script_setup_true_lang.mjs.map +1 -1
  329. package/es/components/date-picker-panel/src/date-picker-com/panel-quarter-range.mjs.map +1 -1
  330. package/es/components/date-picker-panel/src/date-picker-com/panel-quarter-range.vue.d.ts +1 -1
  331. package/es/components/date-picker-panel/src/date-picker-com/panel-quarter-range.vue_vue_type_script_setup_true_lang.mjs +6 -5
  332. package/es/components/date-picker-panel/src/date-picker-com/panel-quarter-range.vue_vue_type_script_setup_true_lang.mjs.map +1 -1
  333. package/es/components/date-picker-panel/src/date-picker-com/panel-year-range.mjs.map +1 -1
  334. package/es/components/date-picker-panel/src/date-picker-com/panel-year-range.vue.d.ts +1 -1
  335. package/es/components/date-picker-panel/src/date-picker-com/panel-year-range.vue_vue_type_script_setup_true_lang.mjs +5 -4
  336. package/es/components/date-picker-panel/src/date-picker-com/panel-year-range.vue_vue_type_script_setup_true_lang.mjs.map +1 -1
  337. package/es/components/date-picker-panel/src/date-picker-panel.d.ts +7 -7
  338. package/es/components/date-picker-panel/src/panel-utils.d.ts +28 -28
  339. package/es/components/date-picker-panel/src/props/date-picker-panel.d.ts +2 -2
  340. package/es/components/date-picker-panel/src/props/panel-date-pick.d.ts +1 -1
  341. package/es/components/date-picker-panel/src/props/panel-date-range.d.ts +1 -1
  342. package/es/components/date-picker-panel/src/props/shared.d.ts +1 -1
  343. package/es/components/descriptions/src/description-item.d.ts +10 -10
  344. package/es/components/descriptions/src/description.vue.d.ts +1 -1
  345. package/es/components/dialog/src/dialog-content.vue.d.ts +2 -2
  346. package/es/components/dialog/src/dialog.vue.d.ts +11 -11
  347. package/es/components/divider/src/divider.d.ts +1 -1
  348. package/es/components/divider/src/divider.vue.d.ts +1 -1
  349. package/es/components/drawer/src/drawer.vue.d.ts +13 -13
  350. package/es/components/dropdown/src/dropdown-menu.vue.d.ts +1 -1
  351. package/es/components/dropdown/src/dropdown.d.ts +4 -4
  352. package/es/components/dropdown/src/dropdown.vue.d.ts +97 -97
  353. package/es/components/focus-trap/src/focus-trap.vue.d.ts +1 -1
  354. package/es/components/form/src/form-item.d.ts +1 -1
  355. package/es/components/form/src/form-item.vue.d.ts +1 -1
  356. package/es/components/form/src/form.vue.d.ts +1 -1
  357. package/es/components/image/src/image.d.ts +1 -1
  358. package/es/components/image/src/image.vue.d.ts +3 -3
  359. package/es/components/image-viewer/src/image-viewer.vue.d.ts +3 -3
  360. package/es/components/input/src/input.d.ts +2 -2
  361. package/es/components/input/src/input.vue.d.ts +4 -4
  362. package/es/components/input-number/src/input-number.d.ts +2 -2
  363. package/es/components/input-number/src/input-number.vue.d.ts +7 -7
  364. package/es/components/input-otp/src/input-otp.vue.d.ts +6 -6
  365. package/es/components/input-tag/src/input-tag.d.ts +3 -3
  366. package/es/components/input-tag/src/input-tag.vue.d.ts +5 -5
  367. package/es/components/link/src/link.d.ts +2 -2
  368. package/es/components/link/src/link.vue.d.ts +1 -1
  369. package/es/components/mention/src/mention.d.ts +3 -3
  370. package/es/components/mention/src/mention.vue.d.ts +3 -3
  371. package/es/components/menu/src/menu.d.ts +10 -10
  372. package/es/components/menu/src/sub-menu.d.ts +1 -1
  373. package/es/components/message/src/instance.d.ts +1 -1
  374. package/es/components/message/src/message.d.ts +2 -2
  375. package/es/components/message/src/message.vue.d.ts +5 -5
  376. package/es/components/message-box/src/index.vue.d.ts +40 -40
  377. package/es/components/notification/src/notification.d.ts +1 -1
  378. package/es/components/notification/src/notification.vue.d.ts +7 -7
  379. package/es/components/page-header/src/page-header.vue.d.ts +1 -1
  380. package/es/components/pagination/src/components/next.vue.d.ts +1 -1
  381. package/es/components/pagination/src/components/pager.vue.d.ts +1 -1
  382. package/es/components/pagination/src/components/prev.vue.d.ts +1 -1
  383. package/es/components/pagination/src/components/sizes.vue.d.ts +1 -1
  384. package/es/components/pagination/src/pagination.d.ts +7 -7
  385. package/es/components/popconfirm/src/popconfirm.d.ts +2 -2
  386. package/es/components/popconfirm/src/popconfirm.vue.d.ts +3 -3
  387. package/es/components/popover/src/popover.d.ts +41 -41
  388. package/es/components/popover/src/popover.vue.d.ts +24 -24
  389. package/es/components/popper/src/composables/use-content.d.ts +1 -1
  390. package/es/components/popper/src/composables/use-focus-trap.d.ts +1 -1
  391. package/es/components/popper/src/content.vue.d.ts +12 -12
  392. package/es/components/popper/src/popper.d.ts +2 -2
  393. package/es/components/progress/src/progress.d.ts +2 -2
  394. package/es/components/progress/src/progress.vue.d.ts +1 -1
  395. package/es/components/radio/src/radio-button.d.ts +3 -3
  396. package/es/components/radio/src/radio-button.vue.d.ts +2 -2
  397. package/es/components/radio/src/radio-group.vue.d.ts +4 -4
  398. package/es/components/radio/src/radio.d.ts +6 -6
  399. package/es/components/radio/src/radio.vue.d.ts +2 -2
  400. package/es/components/rate/src/rate.vue.d.ts +1 -1
  401. package/es/components/result/src/result.d.ts +1 -1
  402. package/es/components/roving-focus-group/src/roving-focus-group-impl.vue.d.ts +1 -1
  403. package/es/components/roving-focus-group/src/roving-focus-group.vue.d.ts +1 -1
  404. package/es/components/row/src/row.d.ts +1 -1
  405. package/es/components/row/src/row.vue.d.ts +1 -1
  406. package/es/components/scrollbar/src/scrollbar.vue.d.ts +2 -2
  407. package/es/components/segmented/index.d.ts +1 -1
  408. package/es/components/segmented/src/segmented.d.ts +1 -1
  409. package/es/components/select/src/option.d.ts +1 -1
  410. package/es/components/select/src/option.vue.d.ts +2 -2
  411. package/es/components/select/src/select.d.ts +4 -4
  412. package/es/components/select/src/select.vue.d.ts +90 -90
  413. package/es/components/select/src/useSelect.d.ts +6 -6
  414. package/es/components/select-v2/src/defaults.d.ts +3 -3
  415. package/es/components/select-v2/src/option-item.vue.d.ts +1 -1
  416. package/es/components/select-v2/src/select.vue.d.ts +76 -76
  417. package/es/components/select-v2/src/useSelect.d.ts +1 -1
  418. package/es/components/skeleton/src/skeleton-item.d.ts +1 -1
  419. package/es/components/skeleton/src/skeleton.vue.d.ts +1 -1
  420. package/es/components/slider/src/button.vue.d.ts +1 -1
  421. package/es/components/slider/src/slider.vue.d.ts +8 -8
  422. package/es/components/space/src/space.d.ts +4 -4
  423. package/es/components/splitter/src/split-bar.vue.d.ts +1 -1
  424. package/es/components/statistic/src/statistic.vue.d.ts +2 -2
  425. package/es/components/steps/src/item.d.ts +1 -1
  426. package/es/components/steps/src/item.vue.d.ts +1 -1
  427. package/es/components/steps/src/steps.d.ts +2 -2
  428. package/es/components/steps/src/steps.vue.d.ts +1 -1
  429. package/es/components/switch/src/switch.vue.d.ts +4 -4
  430. package/es/components/table/src/filter-panel.vue.d.ts +77 -77
  431. package/es/components/table/src/table-column/defaults.d.ts +2 -2
  432. package/es/components/table/src/table-header/index.d.ts +9 -9
  433. package/es/components/table/src/table.vue.d.ts +2 -2
  434. package/es/components/table-v2/src/components/row.d.ts +1 -1
  435. package/es/components/table-v2/src/table-grid.d.ts +1 -1
  436. package/es/components/table-v2/src/table-v2.d.ts +3 -3
  437. package/es/components/tabs/src/tab-pane.vue.d.ts +1 -1
  438. package/es/components/tabs/src/tabs.d.ts +5 -5
  439. package/es/components/tag/src/tag.d.ts +2 -2
  440. package/es/components/text/src/text.d.ts +1 -1
  441. package/es/components/text/src/text.vue.d.ts +1 -1
  442. package/es/components/time-picker/src/common/picker-range-trigger.vue.d.ts +2 -2
  443. package/es/components/time-picker/src/common/picker.vue.d.ts +14 -14
  444. package/es/components/time-picker/src/common/props.d.ts +2 -2
  445. package/es/components/time-picker/src/time-picker.d.ts +12 -12
  446. package/es/components/time-select/src/time-select.vue.d.ts +7 -7
  447. package/es/components/timeline/src/timeline-item.d.ts +2 -2
  448. package/es/components/tooltip/src/content.vue.d.ts +16 -16
  449. package/es/components/tooltip/src/tooltip.d.ts +2 -2
  450. package/es/components/tooltip/src/tooltip.vue.d.ts +18 -18
  451. package/es/components/tooltip/src/trigger.d.ts +1 -1
  452. package/es/components/tour/src/content.d.ts +1 -1
  453. package/es/components/tour/src/step.d.ts +1 -1
  454. package/es/components/tour/src/step.vue.d.ts +1 -1
  455. package/es/components/tour/src/tour.d.ts +1 -1
  456. package/es/components/tour/src/tour.vue.d.ts +5 -5
  457. package/es/components/tree/src/tree-node.vue.d.ts +10 -10
  458. package/es/components/tree/src/tree.vue.d.ts +13 -13
  459. package/es/components/tree-select/src/tree-select-option.d.ts +2 -2
  460. package/es/components/tree-select/src/tree-select.vue.d.ts +26 -26
  461. package/es/components/tree-v2/src/composables/useTree.d.ts +10 -10
  462. package/es/components/tree-v2/src/tree.vue.d.ts +5 -5
  463. package/es/components/upload/src/upload-content.vue.d.ts +6 -6
  464. package/es/components/upload/src/upload.vue.d.ts +8 -8
  465. package/es/components/virtual-list/src/builders/build-grid.d.ts +2 -2
  466. package/es/components/virtual-list/src/builders/build-list.d.ts +5 -5
  467. package/es/components/virtual-list/src/components/dynamic-size-grid.d.ts +2 -2
  468. package/es/components/virtual-list/src/components/dynamic-size-list.d.ts +5 -5
  469. package/es/components/virtual-list/src/components/fixed-size-grid.d.ts +2 -2
  470. package/es/components/virtual-list/src/components/fixed-size-list.d.ts +5 -5
  471. package/es/components/virtual-list/src/components/scrollbar.d.ts +1 -1
  472. package/es/components/watermark/src/watermark.vue.d.ts +1 -1
  473. package/es/hooks/use-floating/index.d.ts +12 -12
  474. package/es/hooks/use-popper/index.d.ts +1 -1
  475. package/es/utils/vue/size.d.ts +1 -1
  476. package/es/version.d.ts +1 -1
  477. package/es/version.mjs +1 -1
  478. package/es/version.mjs.map +1 -1
  479. package/lib/components/affix/src/affix.d.ts +1 -1
  480. package/lib/components/affix/src/affix.vue.d.ts +2 -2
  481. package/lib/components/alert/src/alert.d.ts +2 -2
  482. package/lib/components/alert/src/alert.vue.d.ts +2 -2
  483. package/lib/components/anchor/src/anchor.vue.d.ts +4 -4
  484. package/lib/components/autocomplete/src/autocomplete.d.ts +3 -3
  485. package/lib/components/autocomplete/src/autocomplete.vue.d.ts +3 -3
  486. package/lib/components/avatar/src/avatar-group-props.d.ts +1 -1
  487. package/lib/components/avatar/src/avatar-group.d.ts +3 -3
  488. package/lib/components/avatar/src/avatar.d.ts +2 -2
  489. package/lib/components/backtop/src/backtop.vue.d.ts +1 -1
  490. package/lib/components/badge/src/badge.d.ts +1 -1
  491. package/lib/components/badge/src/badge.vue.d.ts +1 -1
  492. package/lib/components/button/src/button-group.d.ts +1 -1
  493. package/lib/components/button/src/button-group.vue.d.ts +1 -1
  494. package/lib/components/button/src/button.d.ts +2 -2
  495. package/lib/components/button/src/button.vue.d.ts +5 -5
  496. package/lib/components/button/src/use-button.d.ts +2 -2
  497. package/lib/components/card/src/card.d.ts +1 -1
  498. package/lib/components/card/src/card.vue.d.ts +1 -1
  499. package/lib/components/carousel/src/carousel-item.vue.d.ts +1 -1
  500. package/lib/components/carousel/src/carousel.d.ts +2 -2
  501. package/lib/components/carousel/src/carousel.vue.d.ts +1 -1
  502. package/lib/components/cascader/src/cascader.d.ts +3 -3
  503. package/lib/components/cascader/src/cascader.vue.d.ts +12 -12
  504. package/lib/components/cascader-panel/src/index.vue.d.ts +2 -2
  505. package/lib/components/cascader-panel/src/menu.vue.d.ts +1 -1
  506. package/lib/components/check-tag/src/check-tag.d.ts +1 -1
  507. package/lib/components/checkbox/src/checkbox-button.vue.d.ts +3 -3
  508. package/lib/components/checkbox/src/checkbox-group.vue.d.ts +3 -3
  509. package/lib/components/checkbox/src/checkbox.d.ts +3 -3
  510. package/lib/components/checkbox/src/checkbox.vue.d.ts +3 -3
  511. package/lib/components/col/src/col.vue.d.ts +2 -2
  512. package/lib/components/color-picker/src/color-picker.vue.d.ts +5 -5
  513. package/lib/components/color-picker-panel/src/color-picker-panel.vue.d.ts +1 -1
  514. package/lib/components/config-provider/src/hooks/use-global-config.d.ts +1 -1
  515. package/lib/components/countdown/src/countdown.vue.d.ts +2 -2
  516. package/lib/components/date-picker/src/date-picker.d.ts +15 -15
  517. package/lib/components/date-picker/src/props.d.ts +3 -3
  518. package/lib/components/date-picker-panel/src/composables/use-basic-date-table.d.ts +1 -1
  519. package/lib/components/date-picker-panel/src/composables/use-panel-date-range.js +3 -3
  520. package/lib/components/date-picker-panel/src/composables/use-panel-date-range.js.map +1 -1
  521. package/lib/components/date-picker-panel/src/date-picker-com/panel-date-pick.js.map +1 -1
  522. package/lib/components/date-picker-panel/src/date-picker-com/panel-date-pick.vue.d.ts +6 -6
  523. package/lib/components/date-picker-panel/src/date-picker-com/panel-date-pick.vue_vue_type_script_setup_true_lang.js +25 -24
  524. package/lib/components/date-picker-panel/src/date-picker-com/panel-date-pick.vue_vue_type_script_setup_true_lang.js.map +1 -1
  525. package/lib/components/date-picker-panel/src/date-picker-com/panel-date-range.js.map +1 -1
  526. package/lib/components/date-picker-panel/src/date-picker-com/panel-date-range.vue.d.ts +5 -5
  527. package/lib/components/date-picker-panel/src/date-picker-com/panel-date-range.vue_vue_type_script_setup_true_lang.js +12 -11
  528. package/lib/components/date-picker-panel/src/date-picker-com/panel-date-range.vue_vue_type_script_setup_true_lang.js.map +1 -1
  529. package/lib/components/date-picker-panel/src/date-picker-com/panel-month-range.js.map +1 -1
  530. package/lib/components/date-picker-panel/src/date-picker-com/panel-month-range.vue.d.ts +1 -1
  531. package/lib/components/date-picker-panel/src/date-picker-com/panel-month-range.vue_vue_type_script_setup_true_lang.js +4 -3
  532. package/lib/components/date-picker-panel/src/date-picker-com/panel-month-range.vue_vue_type_script_setup_true_lang.js.map +1 -1
  533. package/lib/components/date-picker-panel/src/date-picker-com/panel-quarter-range.js.map +1 -1
  534. package/lib/components/date-picker-panel/src/date-picker-com/panel-quarter-range.vue.d.ts +1 -1
  535. package/lib/components/date-picker-panel/src/date-picker-com/panel-quarter-range.vue_vue_type_script_setup_true_lang.js +6 -5
  536. package/lib/components/date-picker-panel/src/date-picker-com/panel-quarter-range.vue_vue_type_script_setup_true_lang.js.map +1 -1
  537. package/lib/components/date-picker-panel/src/date-picker-com/panel-year-range.js.map +1 -1
  538. package/lib/components/date-picker-panel/src/date-picker-com/panel-year-range.vue.d.ts +1 -1
  539. package/lib/components/date-picker-panel/src/date-picker-com/panel-year-range.vue_vue_type_script_setup_true_lang.js +5 -4
  540. package/lib/components/date-picker-panel/src/date-picker-com/panel-year-range.vue_vue_type_script_setup_true_lang.js.map +1 -1
  541. package/lib/components/date-picker-panel/src/date-picker-panel.d.ts +7 -7
  542. package/lib/components/date-picker-panel/src/panel-utils.d.ts +28 -28
  543. package/lib/components/date-picker-panel/src/props/date-picker-panel.d.ts +2 -2
  544. package/lib/components/date-picker-panel/src/props/panel-date-pick.d.ts +1 -1
  545. package/lib/components/date-picker-panel/src/props/panel-date-range.d.ts +1 -1
  546. package/lib/components/date-picker-panel/src/props/shared.d.ts +1 -1
  547. package/lib/components/descriptions/src/description-item.d.ts +10 -10
  548. package/lib/components/descriptions/src/description.vue.d.ts +1 -1
  549. package/lib/components/dialog/src/dialog-content.vue.d.ts +2 -2
  550. package/lib/components/dialog/src/dialog.vue.d.ts +11 -11
  551. package/lib/components/divider/src/divider.d.ts +1 -1
  552. package/lib/components/divider/src/divider.vue.d.ts +1 -1
  553. package/lib/components/drawer/src/drawer.vue.d.ts +13 -13
  554. package/lib/components/dropdown/src/dropdown-menu.vue.d.ts +1 -1
  555. package/lib/components/dropdown/src/dropdown.d.ts +4 -4
  556. package/lib/components/dropdown/src/dropdown.vue.d.ts +97 -97
  557. package/lib/components/focus-trap/src/focus-trap.vue.d.ts +1 -1
  558. package/lib/components/form/src/form-item.d.ts +1 -1
  559. package/lib/components/form/src/form-item.vue.d.ts +1 -1
  560. package/lib/components/form/src/form.vue.d.ts +1 -1
  561. package/lib/components/image/src/image.d.ts +1 -1
  562. package/lib/components/image/src/image.vue.d.ts +3 -3
  563. package/lib/components/image-viewer/src/image-viewer.vue.d.ts +3 -3
  564. package/lib/components/input/src/input.d.ts +2 -2
  565. package/lib/components/input/src/input.vue.d.ts +4 -4
  566. package/lib/components/input-number/src/input-number.d.ts +2 -2
  567. package/lib/components/input-number/src/input-number.vue.d.ts +7 -7
  568. package/lib/components/input-otp/src/input-otp.vue.d.ts +6 -6
  569. package/lib/components/input-tag/src/input-tag.d.ts +3 -3
  570. package/lib/components/input-tag/src/input-tag.vue.d.ts +5 -5
  571. package/lib/components/link/src/link.d.ts +2 -2
  572. package/lib/components/link/src/link.vue.d.ts +1 -1
  573. package/lib/components/mention/src/mention.d.ts +3 -3
  574. package/lib/components/mention/src/mention.vue.d.ts +3 -3
  575. package/lib/components/menu/src/menu.d.ts +10 -10
  576. package/lib/components/menu/src/sub-menu.d.ts +1 -1
  577. package/lib/components/message/src/instance.d.ts +1 -1
  578. package/lib/components/message/src/message.d.ts +2 -2
  579. package/lib/components/message/src/message.vue.d.ts +5 -5
  580. package/lib/components/message-box/src/index.vue.d.ts +40 -40
  581. package/lib/components/notification/src/notification.d.ts +1 -1
  582. package/lib/components/notification/src/notification.vue.d.ts +7 -7
  583. package/lib/components/page-header/src/page-header.vue.d.ts +1 -1
  584. package/lib/components/pagination/src/components/next.vue.d.ts +1 -1
  585. package/lib/components/pagination/src/components/pager.vue.d.ts +1 -1
  586. package/lib/components/pagination/src/components/prev.vue.d.ts +1 -1
  587. package/lib/components/pagination/src/components/sizes.vue.d.ts +1 -1
  588. package/lib/components/pagination/src/pagination.d.ts +7 -7
  589. package/lib/components/popconfirm/src/popconfirm.d.ts +2 -2
  590. package/lib/components/popconfirm/src/popconfirm.vue.d.ts +3 -3
  591. package/lib/components/popover/src/popover.d.ts +41 -41
  592. package/lib/components/popover/src/popover.vue.d.ts +24 -24
  593. package/lib/components/popper/src/composables/use-content.d.ts +1 -1
  594. package/lib/components/popper/src/composables/use-focus-trap.d.ts +1 -1
  595. package/lib/components/popper/src/content.vue.d.ts +12 -12
  596. package/lib/components/popper/src/popper.d.ts +2 -2
  597. package/lib/components/progress/src/progress.d.ts +2 -2
  598. package/lib/components/progress/src/progress.vue.d.ts +1 -1
  599. package/lib/components/radio/src/radio-button.d.ts +3 -3
  600. package/lib/components/radio/src/radio-button.vue.d.ts +2 -2
  601. package/lib/components/radio/src/radio-group.vue.d.ts +4 -4
  602. package/lib/components/radio/src/radio.d.ts +6 -6
  603. package/lib/components/radio/src/radio.vue.d.ts +2 -2
  604. package/lib/components/rate/src/rate.vue.d.ts +1 -1
  605. package/lib/components/result/src/result.d.ts +1 -1
  606. package/lib/components/roving-focus-group/src/roving-focus-group-impl.vue.d.ts +1 -1
  607. package/lib/components/roving-focus-group/src/roving-focus-group.vue.d.ts +1 -1
  608. package/lib/components/row/src/row.d.ts +1 -1
  609. package/lib/components/row/src/row.vue.d.ts +1 -1
  610. package/lib/components/scrollbar/src/scrollbar.vue.d.ts +2 -2
  611. package/lib/components/segmented/index.d.ts +1 -1
  612. package/lib/components/segmented/src/segmented.d.ts +1 -1
  613. package/lib/components/select/src/option.d.ts +1 -1
  614. package/lib/components/select/src/option.vue.d.ts +2 -2
  615. package/lib/components/select/src/select.d.ts +4 -4
  616. package/lib/components/select/src/select.vue.d.ts +90 -90
  617. package/lib/components/select/src/useSelect.d.ts +6 -6
  618. package/lib/components/select-v2/src/defaults.d.ts +3 -3
  619. package/lib/components/select-v2/src/option-item.vue.d.ts +1 -1
  620. package/lib/components/select-v2/src/select.vue.d.ts +76 -76
  621. package/lib/components/select-v2/src/useSelect.d.ts +1 -1
  622. package/lib/components/skeleton/src/skeleton-item.d.ts +1 -1
  623. package/lib/components/skeleton/src/skeleton.vue.d.ts +1 -1
  624. package/lib/components/slider/src/button.vue.d.ts +1 -1
  625. package/lib/components/slider/src/slider.vue.d.ts +8 -8
  626. package/lib/components/space/src/space.d.ts +4 -4
  627. package/lib/components/splitter/src/split-bar.vue.d.ts +1 -1
  628. package/lib/components/statistic/src/statistic.vue.d.ts +2 -2
  629. package/lib/components/steps/src/item.d.ts +1 -1
  630. package/lib/components/steps/src/item.vue.d.ts +1 -1
  631. package/lib/components/steps/src/steps.d.ts +2 -2
  632. package/lib/components/steps/src/steps.vue.d.ts +1 -1
  633. package/lib/components/switch/src/switch.vue.d.ts +4 -4
  634. package/lib/components/table/src/filter-panel.vue.d.ts +77 -77
  635. package/lib/components/table/src/table-column/defaults.d.ts +2 -2
  636. package/lib/components/table/src/table-header/index.d.ts +9 -9
  637. package/lib/components/table/src/table.vue.d.ts +2 -2
  638. package/lib/components/table-v2/src/components/row.d.ts +1 -1
  639. package/lib/components/table-v2/src/table-grid.d.ts +1 -1
  640. package/lib/components/table-v2/src/table-v2.d.ts +3 -3
  641. package/lib/components/tabs/src/tab-pane.vue.d.ts +1 -1
  642. package/lib/components/tabs/src/tabs.d.ts +5 -5
  643. package/lib/components/tag/src/tag.d.ts +2 -2
  644. package/lib/components/text/src/text.d.ts +1 -1
  645. package/lib/components/text/src/text.vue.d.ts +1 -1
  646. package/lib/components/time-picker/src/common/picker-range-trigger.vue.d.ts +2 -2
  647. package/lib/components/time-picker/src/common/picker.vue.d.ts +14 -14
  648. package/lib/components/time-picker/src/common/props.d.ts +2 -2
  649. package/lib/components/time-picker/src/time-picker.d.ts +12 -12
  650. package/lib/components/time-select/src/time-select.vue.d.ts +7 -7
  651. package/lib/components/timeline/src/timeline-item.d.ts +2 -2
  652. package/lib/components/tooltip/src/content.vue.d.ts +16 -16
  653. package/lib/components/tooltip/src/tooltip.d.ts +2 -2
  654. package/lib/components/tooltip/src/tooltip.vue.d.ts +18 -18
  655. package/lib/components/tooltip/src/trigger.d.ts +1 -1
  656. package/lib/components/tour/src/content.d.ts +1 -1
  657. package/lib/components/tour/src/step.d.ts +1 -1
  658. package/lib/components/tour/src/step.vue.d.ts +1 -1
  659. package/lib/components/tour/src/tour.d.ts +1 -1
  660. package/lib/components/tour/src/tour.vue.d.ts +5 -5
  661. package/lib/components/tree/src/tree-node.vue.d.ts +10 -10
  662. package/lib/components/tree/src/tree.vue.d.ts +13 -13
  663. package/lib/components/tree-select/src/tree-select-option.d.ts +2 -2
  664. package/lib/components/tree-select/src/tree-select.vue.d.ts +26 -26
  665. package/lib/components/tree-v2/src/composables/useTree.d.ts +10 -10
  666. package/lib/components/tree-v2/src/tree.vue.d.ts +5 -5
  667. package/lib/components/upload/src/upload-content.vue.d.ts +6 -6
  668. package/lib/components/upload/src/upload.vue.d.ts +8 -8
  669. package/lib/components/virtual-list/src/builders/build-grid.d.ts +2 -2
  670. package/lib/components/virtual-list/src/builders/build-list.d.ts +5 -5
  671. package/lib/components/virtual-list/src/components/dynamic-size-grid.d.ts +2 -2
  672. package/lib/components/virtual-list/src/components/dynamic-size-list.d.ts +5 -5
  673. package/lib/components/virtual-list/src/components/fixed-size-grid.d.ts +2 -2
  674. package/lib/components/virtual-list/src/components/fixed-size-list.d.ts +5 -5
  675. package/lib/components/virtual-list/src/components/scrollbar.d.ts +1 -1
  676. package/lib/components/watermark/src/watermark.vue.d.ts +1 -1
  677. package/lib/hooks/use-floating/index.d.ts +12 -12
  678. package/lib/hooks/use-popper/index.d.ts +1 -1
  679. package/lib/utils/vue/size.d.ts +1 -1
  680. package/lib/version.d.ts +1 -1
  681. package/lib/version.js +1 -1
  682. package/lib/version.js.map +1 -1
  683. package/package.json +2 -2
  684. package/web-types.json +1 -1
@@ -1 +1 @@
1
- {"version":3,"file":"panel-date-pick.mjs","names":[],"sources":["../../../../../../../packages/components/date-picker-panel/src/date-picker-com/panel-date-pick.vue"],"sourcesContent":["<template>\n <div\n :class=\"[\n ppNs.b(),\n dpNs.b(),\n ppNs.is('border', border),\n ppNs.is('disabled', dateDisabled),\n {\n 'has-sidebar': $slots.sidebar || hasShortcuts,\n 'has-time': showTime,\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 :disabled=\"dateDisabled\"\n :class=\"ppNs.e('shortcut')\"\n @click=\"handleShortcutClick(shortcut)\"\n >\n {{ shortcut.text }}\n </button>\n </div>\n <div :class=\"ppNs.e('body')\">\n <div v-if=\"showTime\" :class=\"dpNs.e('time-header')\">\n <span :class=\"dpNs.e('editor-wrap')\">\n <el-input\n :placeholder=\"t('el.datepicker.selectDate')\"\n :model-value=\"visibleDate\"\n size=\"small\"\n :validate-event=\"false\"\n :disabled=\"dateDisabled\"\n :readonly=\"!editable\"\n @input=\"(val) => (userInputDate = val)\"\n @change=\"handleVisibleDateChange\"\n />\n </span>\n <span\n v-click-outside=\"handleTimePickClose\"\n :class=\"dpNs.e('editor-wrap')\"\n >\n <el-input\n :placeholder=\"t('el.datepicker.selectTime')\"\n :model-value=\"visibleTime\"\n size=\"small\"\n :validate-event=\"false\"\n :disabled=\"dateDisabled\"\n :readonly=\"!editable\"\n @focus=\"onTimePickerInputFocus\"\n @input=\"(val) => (userInputTime = val)\"\n @change=\"handleVisibleTimeChange\"\n />\n <time-pick-panel\n :visible=\"timePickerVisible\"\n :format=\"timeFormat\"\n :parsed-value=\"innerDate\"\n @pick=\"handleTimePick\"\n />\n </span>\n </div>\n <div\n v-show=\"currentView !== 'time'\"\n :class=\"[\n dpNs.e('header'),\n (currentView === 'year' ||\n currentView === 'month' ||\n currentView === 'quarter') &&\n dpNs.em('header', 'bordered'),\n ]\"\n >\n <span :class=\"dpNs.e('prev-btn')\">\n <button\n type=\"button\"\n :aria-label=\"t(`el.datepicker.prevYear`)\"\n class=\"d-arrow-left\"\n :class=\"ppNs.e('icon-btn')\"\n :disabled=\"dateDisabled\"\n @click=\"moveByYear(false)\"\n >\n <slot name=\"prev-year\">\n <el-icon><d-arrow-left /></el-icon>\n </slot>\n </button>\n <button\n v-show=\"currentView === 'date'\"\n type=\"button\"\n :aria-label=\"t(`el.datepicker.prevMonth`)\"\n :class=\"ppNs.e('icon-btn')\"\n class=\"arrow-left\"\n :disabled=\"dateDisabled\"\n @click=\"moveByMonth(false)\"\n >\n <slot name=\"prev-month\">\n <el-icon><arrow-left /></el-icon>\n </slot>\n </button>\n </span>\n <span\n role=\"button\"\n :class=\"dpNs.e('header-label')\"\n aria-live=\"polite\"\n :tabindex=\"disabled ? undefined : 0\"\n :aria-disabled=\"disabled\"\n @keydown.enter=\"showPicker('year')\"\n @click=\"showPicker('year')\"\n >{{ yearLabel }}</span\n >\n <span\n v-show=\"currentView === 'date'\"\n role=\"button\"\n aria-live=\"polite\"\n :tabindex=\"disabled ? undefined : 0\"\n :aria-disabled=\"disabled\"\n :class=\"[\n dpNs.e('header-label'),\n { active: currentView === 'month' },\n ]\"\n @keydown.enter=\"showPicker('month')\"\n @click=\"showPicker('month')\"\n >{{ t(`el.datepicker.month${month + 1}`) }}</span\n >\n <span :class=\"dpNs.e('next-btn')\">\n <button\n v-show=\"currentView === 'date'\"\n type=\"button\"\n :aria-label=\"t(`el.datepicker.nextMonth`)\"\n :class=\"ppNs.e('icon-btn')\"\n class=\"arrow-right\"\n :disabled=\"dateDisabled\"\n @click=\"moveByMonth(true)\"\n >\n <slot name=\"next-month\">\n <el-icon><arrow-right /></el-icon>\n </slot>\n </button>\n <button\n type=\"button\"\n :aria-label=\"t(`el.datepicker.nextYear`)\"\n :class=\"ppNs.e('icon-btn')\"\n class=\"d-arrow-right\"\n :disabled=\"dateDisabled\"\n @click=\"moveByYear(true)\"\n >\n <slot name=\"next-year\">\n <el-icon><d-arrow-right /></el-icon>\n </slot>\n </button>\n </span>\n </div>\n <div :class=\"ppNs.e('content')\" @keydown=\"handleKeydownTable\">\n <date-table\n v-if=\"currentView === 'date'\"\n ref=\"currentViewRef\"\n :selection-mode=\"selectionMode\"\n :date=\"innerDate\"\n :parsed-value=\"parsedValue\"\n :disabled-date=\"disabledDate\"\n :disabled=\"dateDisabled\"\n :cell-class-name=\"cellClassName\"\n :show-week-number=\"showWeekNumber\"\n @pick=\"handleDatePick\"\n />\n <year-table\n v-if=\"currentView === 'year'\"\n ref=\"currentViewRef\"\n :selection-mode=\"selectionMode\"\n :date=\"innerDate\"\n :disabled-date=\"disabledDate\"\n :disabled=\"dateDisabled\"\n :parsed-value=\"parsedValue\"\n :cell-class-name=\"cellClassName\"\n @pick=\"handleYearPick\"\n />\n <month-table\n v-if=\"currentView === 'month'\"\n ref=\"currentViewRef\"\n :selection-mode=\"selectionMode\"\n :date=\"innerDate\"\n :parsed-value=\"parsedValue\"\n :disabled-date=\"disabledDate\"\n :disabled=\"dateDisabled\"\n :cell-class-name=\"cellClassName\"\n @pick=\"handleMonthPick\"\n />\n <quarter-table\n v-if=\"currentView === 'quarter'\"\n ref=\"currentViewRef\"\n :selection-mode=\"selectionMode\"\n :date=\"innerDate\"\n :parsed-value=\"parsedValue\"\n :disabled-date=\"disabledDate\"\n :disabled=\"dateDisabled\"\n :cell-class-name=\"cellClassName\"\n @pick=\"handleQuarterPick\"\n />\n </div>\n </div>\n </div>\n <div\n v-if=\"showFooter && footerVisible && footerFilled\"\n :class=\"ppNs.e('footer')\"\n >\n <el-button\n v-show=\"!isMultipleType && showNow\"\n text\n size=\"small\"\n :class=\"ppNs.e('link-btn')\"\n :disabled=\"disabledNow\"\n @click=\"changeToNow\"\n >\n {{ t('el.datepicker.now') }}\n </el-button>\n <el-button\n v-if=\"showConfirm\"\n plain\n size=\"small\"\n :class=\"ppNs.e('link-btn')\"\n :disabled=\"disabledConfirm\"\n @click=\"onConfirm\"\n >\n {{ t('el.datepicker.confirm') }}\n </el-button>\n </div>\n </div>\n</template>\n\n<script lang=\"ts\" setup>\nimport {\n computed,\n inject,\n nextTick,\n ref,\n toRef,\n useAttrs,\n useSlots,\n watch,\n} from 'vue'\nimport dayjs from 'dayjs'\nimport ElButton from '@element-plus/components/button'\nimport { ClickOutside as vClickOutside } from '@element-plus/directives'\nimport { useLocale, useNamespace } from '@element-plus/hooks'\nimport ElInput from '@element-plus/components/input'\nimport {\n DEFAULT_FORMATS_DATE,\n DEFAULT_FORMATS_TIME,\n PICKER_BASE_INJECTION_KEY,\n TimePickPanel,\n extractDateFormat,\n extractTimeFormat,\n} from '@element-plus/components/time-picker'\nimport { ElIcon } from '@element-plus/components/icon'\nimport {\n extractFirst,\n getEventCode,\n isArray,\n isFunction,\n} from '@element-plus/utils'\nimport { EVENT_CODE } from '@element-plus/constants'\nimport {\n ArrowLeft,\n ArrowRight,\n DArrowLeft,\n DArrowRight,\n} from '@element-plus/icons-vue'\nimport { panelDatePickProps } from '../props/panel-date-pick'\nimport {\n correctlyParseUserInput,\n getValidDateOfMonth,\n getValidDateOfQuarter,\n getValidDateOfYear,\n isQuarterFullyDisabled,\n isSelectableQuarterDate,\n normalizeQuarterDate,\n} from '../utils'\nimport DateTable from './basic-date-table.vue'\nimport MonthTable from './basic-month-table.vue'\nimport QuarterTable from './basic-quarter-table.vue'\nimport YearTable from './basic-year-table.vue'\nimport { useFormDisabled } from '@element-plus/components/form'\n\nimport type { SetupContext } from 'vue'\nimport type { ConfigType, Dayjs } from 'dayjs'\nimport type { PanelDatePickProps } from '../props/panel-date-pick'\nimport type {\n DateTableEmits,\n DatesPickerEmits,\n MonthsPickerEmits,\n QuartersPickerEmits,\n WeekPickerEmits,\n YearsPickerEmits,\n} from '../props/basic-date-table'\n\ntype DatePickType = PanelDatePickProps['type']\n// todo\n// eslint-disable-next-line @typescript-eslint/no-unused-vars\nconst timeWithinRange = (_: ConfigType, __: any, ___: string) => true\nconst props = defineProps(panelDatePickProps)\nconst contextEmit = defineEmits(['pick', 'set-picker-option', 'panel-change'])\nconst ppNs = useNamespace('picker-panel')\nconst dpNs = useNamespace('date-picker')\nconst attrs = useAttrs()\nconst slots = useSlots()\n\nconst { t, lang } = useLocale()\nconst pickerBase = inject(PICKER_BASE_INJECTION_KEY) as any\nconst { shortcuts, disabledDate, cellClassName, defaultTime } = pickerBase.props\nconst defaultValue = toRef(pickerBase.props, 'defaultValue')\n\nconst currentViewRef = ref<{ focus: () => void }>()\n\nconst innerDate = ref(dayjs().locale(lang.value))\n\nconst isChangeToNow = ref(false)\n\nlet isShortcut = false\n\nconst defaultTimeD = computed(() => {\n return dayjs(defaultTime).locale(lang.value)\n})\n\nconst month = computed(() => {\n return innerDate.value.month()\n})\n\nconst year = computed(() => {\n return innerDate.value.year()\n})\n\nconst selectableRange = ref([])\nconst userInputDate = ref<string | null>(null)\nconst userInputTime = ref<string | null>(null)\n// todo update to disableHour\nconst checkDateWithinRange = (date: ConfigType) => {\n return selectableRange.value.length > 0\n ? timeWithinRange(\n date,\n selectableRange.value,\n props.format || DEFAULT_FORMATS_TIME\n )\n : true\n}\nconst formatEmit = (emitDayjs: Dayjs) => {\n if (\n defaultTime &&\n !visibleTime.value &&\n !isChangeToNow.value &&\n !isShortcut\n ) {\n return defaultTimeD.value\n .year(emitDayjs.year())\n .month(emitDayjs.month())\n .date(emitDayjs.date())\n }\n if (showTime.value) return emitDayjs.millisecond(0)\n return emitDayjs.startOf('day')\n}\nconst emit = (value: Dayjs | Dayjs[], ...args: any[]) => {\n if (!value) {\n contextEmit('pick', value, ...args)\n } else if (isArray(value)) {\n const dates = value.map(formatEmit)\n contextEmit('pick', dates, ...args)\n } else {\n contextEmit('pick', formatEmit(value), ...args)\n }\n userInputDate.value = null\n userInputTime.value = null\n isChangeToNow.value = false\n isShortcut = false\n}\nconst handleDatePick = async (value: DateTableEmits, keepOpen?: boolean) => {\n if (selectionMode.value === 'date' && dayjs.isDayjs(value)) {\n const parsedDateValue = extractFirst(props.parsedValue)\n let newDate = parsedDateValue\n ? parsedDateValue\n .year(value.year())\n .month(value.month())\n .date(value.date())\n : value\n // change default time while out of selectableRange\n if (!checkDateWithinRange(newDate)) {\n newDate = (selectableRange.value[0][0] as Dayjs)\n .year(value.year())\n .month(value.month())\n .date(value.date())\n }\n innerDate.value = newDate\n emit(newDate, showTime.value || keepOpen)\n } else if (selectionMode.value === 'week') {\n emit((value as WeekPickerEmits).date)\n } else if (selectionMode.value === 'dates') {\n emit(value as DatesPickerEmits, true) // set true to keep panel open\n }\n}\n\nconst moveByMonth = (forward: boolean) => {\n const action = forward ? 'add' : 'subtract'\n innerDate.value = innerDate.value[action](1, 'month')\n handlePanelChange('month')\n}\n\nconst moveByYear = (forward: boolean) => {\n const currentDate = innerDate.value\n const action = forward ? 'add' : 'subtract'\n\n innerDate.value =\n currentView.value === 'year'\n ? currentDate[action](10, 'year')\n : currentDate[action](1, 'year')\n\n handlePanelChange('year')\n}\n\nconst currentView = ref('date')\n\nconst yearLabel = computed(() => {\n const yearTranslation = t('el.datepicker.year')\n if (currentView.value === 'year') {\n const startYear = Math.floor(year.value / 10) * 10\n if (yearTranslation) {\n return `${startYear} ${yearTranslation} - ${\n startYear + 9\n } ${yearTranslation}`\n }\n return `${startYear} - ${startYear + 9}`\n }\n return `${year.value} ${yearTranslation}`\n})\n\ntype Shortcut = {\n value: (() => Dayjs) | Dayjs\n onClick?: (ctx: Omit<SetupContext, 'expose'>) => void\n}\n\nconst handleShortcutClick = (shortcut: Shortcut) => {\n const shortcutValue = isFunction(shortcut.value)\n ? shortcut.value()\n : shortcut.value\n if (shortcutValue) {\n isShortcut = true\n emit(dayjs(shortcutValue).locale(lang.value))\n return\n }\n if (shortcut.onClick) {\n shortcut.onClick({\n attrs,\n slots,\n emit: contextEmit as SetupContext['emit'],\n })\n }\n}\n\nconst selectionMode = computed<DatePickType>(() => {\n const { type } = props\n if (\n [\n 'week',\n 'month',\n 'months',\n 'year',\n 'years',\n 'dates',\n 'quarter',\n 'quarters',\n ].includes(type)\n )\n return type\n return 'date'\n})\n\nconst isMultipleType = computed(() => {\n return (\n selectionMode.value === 'dates' ||\n selectionMode.value === 'months' ||\n selectionMode.value === 'years' ||\n selectionMode.value === 'quarters'\n )\n})\n\nconst keyboardMode = computed<string>(() => {\n return selectionMode.value === 'date'\n ? currentView.value\n : selectionMode.value\n})\n\nconst hasShortcuts = computed(() => !!shortcuts.length)\n\nconst handleMonthPick = async (\n month: number | MonthsPickerEmits,\n keepOpen?: boolean\n) => {\n if (selectionMode.value === 'month') {\n innerDate.value = getValidDateOfMonth(\n innerDate.value,\n innerDate.value.year(),\n month as number,\n lang.value,\n disabledDate\n )\n emit(innerDate.value, false)\n } else if (selectionMode.value === 'months') {\n emit(month as MonthsPickerEmits, keepOpen ?? true)\n } else {\n innerDate.value = getValidDateOfMonth(\n innerDate.value,\n innerDate.value.year(),\n month as number,\n lang.value,\n disabledDate\n )\n currentView.value = 'date'\n if (['month', 'year', 'date', 'week'].includes(selectionMode.value)) {\n emit(innerDate.value, true)\n await nextTick()\n handleFocusPicker()\n }\n }\n handlePanelChange('month')\n}\n\nconst handleQuarterPick = async (\n quarter: number | QuartersPickerEmits,\n keepOpen?: boolean\n) => {\n if (selectionMode.value === 'quarter') {\n innerDate.value = getValidDateOfQuarter(\n innerDate.value,\n innerDate.value.year(),\n quarter as number,\n lang.value,\n disabledDate\n )\n emit(innerDate.value, false)\n } else if (selectionMode.value === 'quarters') {\n emit(quarter as QuartersPickerEmits, keepOpen ?? true)\n }\n}\n\nconst handleYearPick = async (\n year: number | YearsPickerEmits,\n keepOpen?: boolean\n) => {\n if (selectionMode.value === 'year') {\n const data = innerDate.value.startOf('year').year(year as number)\n innerDate.value = getValidDateOfYear(data, lang.value, disabledDate)\n emit(innerDate.value, false)\n } else if (selectionMode.value === 'years') {\n emit(year as YearsPickerEmits, keepOpen ?? true)\n } else {\n const data = innerDate.value.year(year as number)\n innerDate.value = getValidDateOfYear(data, lang.value, disabledDate)\n currentView.value = ['quarter', 'quarters'].includes(selectionMode.value)\n ? 'quarter'\n : 'month'\n if (\n ['month', 'year', 'date', 'week', 'quarter'].includes(selectionMode.value)\n ) {\n emit(innerDate.value, true)\n await nextTick()\n handleFocusPicker()\n }\n }\n handlePanelChange('year')\n}\n\nconst dateDisabled = useFormDisabled()\n\nconst showPicker = async (view: 'month' | 'year') => {\n if (dateDisabled.value) return\n currentView.value = view\n await nextTick()\n handleFocusPicker()\n}\n\nconst showTime = computed(\n () => props.type === 'datetime' || props.type === 'datetimerange'\n)\n\nconst footerVisible = computed(() => {\n const showDateFooter = showTime.value || selectionMode.value === 'dates'\n const showYearFooter = selectionMode.value === 'years'\n const showMonthFooter = selectionMode.value === 'months'\n const showQuarterFooter = selectionMode.value === 'quarters'\n const isDateView = currentView.value === 'date'\n const isYearView = currentView.value === 'year'\n const isMonthView = currentView.value === 'month'\n const isQuarterView = currentView.value === 'quarter'\n return (\n (showDateFooter && isDateView) ||\n (showYearFooter && isYearView) ||\n (showMonthFooter && isMonthView) ||\n (showQuarterFooter && isQuarterView)\n )\n})\n\nconst footerFilled = computed(\n () => (!isMultipleType.value && props.showNow) || props.showConfirm\n)\n\nconst disabledConfirm = computed(() => {\n if (!disabledDate) return false\n if (!props.parsedValue) return true\n if (isArray(props.parsedValue)) {\n if (!props.parsedValue.length) return true\n\n if (selectionMode.value === 'quarters') {\n return props.parsedValue.some((date) =>\n isQuarterFullyDisabled(date, lang.value, disabledDate)\n )\n }\n\n return disabledDate(props.parsedValue[0].toDate())\n }\n return disabledDate(props.parsedValue.toDate())\n})\nconst onConfirm = () => {\n if (isMultipleType.value) {\n emit(props.parsedValue as Dayjs[])\n } else {\n // deal with the scenario where: user opens the date time picker, then confirm without doing anything\n let result = extractFirst(props.parsedValue)\n if (!result) {\n const defaultTimeD = dayjs(defaultTime).locale(lang.value)\n const defaultValueD = getDefaultValue()\n result = defaultTimeD\n .year(defaultValueD.year())\n .month(defaultValueD.month())\n .date(defaultValueD.date())\n }\n innerDate.value = result\n emit(result)\n }\n}\n\nconst disabledNow = computed(() => {\n if (!disabledDate) return false\n return disabledDate(dayjs().locale(lang.value).toDate())\n})\nconst changeToNow = () => {\n // NOTE: not a permanent solution\n // consider disable \"now\" button in the future\n const now = dayjs().locale(lang.value)\n const nowDate = now.toDate()\n isChangeToNow.value = true\n if (\n (!disabledDate || !disabledDate(nowDate)) &&\n checkDateWithinRange(nowDate)\n ) {\n innerDate.value = dayjs().locale(lang.value)\n emit(innerDate.value)\n }\n}\n\nconst timeFormat = computed(() => {\n return (\n props.timeFormat || extractTimeFormat(props.format) || DEFAULT_FORMATS_TIME\n )\n})\n\nconst dateFormat = computed(() => {\n return (\n props.dateFormat || extractDateFormat(props.format) || DEFAULT_FORMATS_DATE\n )\n})\n\nconst visibleTime = computed(() => {\n if (userInputTime.value) return userInputTime.value\n if (!props.parsedValue && !defaultValue.value) return\n const dateValue = extractFirst(props.parsedValue) || innerDate.value\n return dateValue.format(timeFormat.value)\n})\n\nconst visibleDate = computed(() => {\n if (userInputDate.value) return userInputDate.value\n if (!props.parsedValue && !defaultValue.value) return\n const dateValue = extractFirst(props.parsedValue) || innerDate.value\n return dateValue.format(dateFormat.value)\n})\n\nconst timePickerVisible = ref(false)\nconst onTimePickerInputFocus = () => {\n timePickerVisible.value = true\n}\nconst handleTimePickClose = () => {\n timePickerVisible.value = false\n}\n\nconst getUnits = (date: Dayjs) => {\n return {\n hour: date.hour(),\n minute: date.minute(),\n second: date.second(),\n year: date.year(),\n month: date.month(),\n date: date.date(),\n }\n}\n\nconst handleTimePick = (value: Dayjs, visible: boolean, first: boolean) => {\n const { hour, minute, second } = getUnits(value)\n const parsedDateValue = extractFirst(props.parsedValue)\n const newDate = parsedDateValue\n ? parsedDateValue.hour(hour).minute(minute).second(second)\n : value\n innerDate.value = newDate\n emit(innerDate.value, true)\n if (!first) {\n timePickerVisible.value = visible\n }\n}\n\nconst handleVisibleTimeChange = (value: string) => {\n const newDate = dayjs(value, timeFormat.value).locale(lang.value)\n if (newDate.isValid() && checkDateWithinRange(newDate)) {\n const { year, month, date } = getUnits(innerDate.value)\n innerDate.value = newDate.year(year).month(month).date(date)\n userInputTime.value = null\n timePickerVisible.value = false\n emit(innerDate.value, true)\n }\n}\n\nconst handleVisibleDateChange = (value: string) => {\n const newDate = correctlyParseUserInput(\n value,\n dateFormat.value,\n lang.value\n ) as Dayjs\n if (newDate.isValid()) {\n if (disabledDate && disabledDate(newDate.toDate())) {\n return\n }\n const { hour, minute, second } = getUnits(innerDate.value)\n innerDate.value = newDate.hour(hour).minute(minute).second(second)\n userInputDate.value = null\n emit(innerDate.value, true)\n }\n}\n\nconst isValidValue = (date: unknown) => {\n if (!dayjs.isDayjs(date) || !date.isValid()) {\n return false\n }\n\n if (selectionMode.value === 'quarter') {\n return isSelectableQuarterDate(date, lang.value, disabledDate)\n }\n\n return disabledDate ? !disabledDate(date.toDate()) : true\n}\n\nconst parseUserInput = (value: Dayjs | Dayjs[]) => {\n const parsed = correctlyParseUserInput(value, props.format, lang.value) as\n Dayjs | Dayjs[]\n\n if (!['quarter', 'quarters'].includes(selectionMode.value)) {\n return parsed\n }\n\n const normalize = (date: Dayjs) =>\n normalizeQuarterDate(date, lang.value, disabledDate)\n\n if (isArray(parsed)) {\n return parsed.map(normalize)\n }\n if (!dayjs.isDayjs(parsed) || !parsed.isValid()) {\n return parsed\n }\n return normalize(parsed)\n}\n\nconst getDefaultValue = () => {\n const parseDate = dayjs(defaultValue.value).locale(lang.value)\n if (!defaultValue.value) {\n const defaultTimeDValue = defaultTimeD.value\n return dayjs()\n .hour(defaultTimeDValue.hour())\n .minute(defaultTimeDValue.minute())\n .second(defaultTimeDValue.second())\n .locale(lang.value)\n }\n return parseDate\n}\n\nconst handleFocusPicker = () => {\n if (\n ['week', 'month', 'year', 'date', 'quarter', 'quarters'].includes(\n selectionMode.value\n )\n ) {\n currentViewRef.value?.focus()\n }\n}\n\nconst _handleFocusPicker = () => {\n handleFocusPicker()\n // TODO: After focus the date input, the first time you use the ArrowDown keys, you cannot focus on the date cell\n if (selectionMode.value === 'week') {\n handleKeyControl(EVENT_CODE.down)\n }\n}\n\nconst handleKeydownTable = (event: KeyboardEvent) => {\n const code = getEventCode(event)\n\n const validCode = [\n EVENT_CODE.up,\n EVENT_CODE.down,\n EVENT_CODE.left,\n EVENT_CODE.right,\n EVENT_CODE.home,\n EVENT_CODE.end,\n EVENT_CODE.pageUp,\n EVENT_CODE.pageDown,\n ]\n if (validCode.includes(code)) {\n handleKeyControl(code)\n event.stopPropagation()\n event.preventDefault()\n }\n if (\n [EVENT_CODE.enter, EVENT_CODE.space, EVENT_CODE.numpadEnter].includes(\n code\n ) &&\n userInputDate.value === null &&\n userInputTime.value === null\n ) {\n event.preventDefault()\n emit(innerDate.value, false)\n }\n}\n\nconst handleKeyControl = (code: string) => {\n type KeyControlMappingCallableOffset = (date: Date, step?: number) => number\n type KeyControl = {\n [key: string]:\n | number\n | KeyControlMappingCallableOffset\n | ((date: Date, step: number) => any)\n offset: (date: Date, step: number) => any\n }\n interface KeyControlMapping {\n [key: string]: KeyControl\n }\n\n const { up, down, left, right, home, end, pageUp, pageDown } = EVENT_CODE\n const mapping: KeyControlMapping = {\n year: {\n [up]: -4,\n [down]: 4,\n [left]: -1,\n [right]: 1,\n offset: (date: Date, step: number) =>\n date.setFullYear(date.getFullYear() + step),\n },\n month: {\n [up]: -4,\n [down]: 4,\n [left]: -1,\n [right]: 1,\n offset: (date: Date, step: number) =>\n date.setMonth(date.getMonth() + step),\n },\n quarter: {\n [up]: -4,\n [down]: 4,\n [left]: -1,\n [right]: 1,\n offset: (date: Date, step: number) =>\n date.setMonth(date.getMonth() + step * 3),\n },\n week: {\n [up]: -1,\n [down]: 1,\n [left]: -1,\n [right]: 1,\n offset: (date: Date, step: number) =>\n date.setDate(date.getDate() + step * 7),\n },\n date: {\n [up]: -7,\n [down]: 7,\n [left]: -1,\n [right]: 1,\n [home]: (date: Date) => -date.getDay(),\n [end]: (date: Date) => -date.getDay() + 6,\n [pageUp]: (date: Date) =>\n -new Date(date.getFullYear(), date.getMonth(), 0).getDate(),\n [pageDown]: (date: Date) =>\n new Date(date.getFullYear(), date.getMonth() + 1, 0).getDate(),\n offset: (date: Date, step: number) => date.setDate(date.getDate() + step),\n },\n }\n\n const newDate = innerDate.value.toDate()\n while (Math.abs(innerDate.value.diff(newDate, 'year', true)) < 1) {\n const mode =\n keyboardMode.value === 'quarters' ? 'quarter' : keyboardMode.value\n const map = mapping[mode]\n if (!map) return\n map.offset(\n newDate,\n isFunction(map[code])\n ? (map[code] as unknown as KeyControlMappingCallableOffset)(newDate)\n : ((map[code] as number) ?? 0)\n )\n\n let result: Dayjs\n if (mode === 'quarter') {\n const candidate = dayjs(newDate).locale(lang.value)\n if (isQuarterFullyDisabled(candidate, lang.value, disabledDate)) {\n break\n }\n result = getValidDateOfQuarter(\n candidate,\n candidate.year(),\n candidate.quarter() - 1,\n lang.value,\n disabledDate\n )\n } else {\n if (disabledDate && disabledDate(newDate)) {\n break\n }\n result = dayjs(newDate).locale(lang.value)\n }\n\n innerDate.value = result\n if (!isMultipleType.value) {\n contextEmit('pick', result, true)\n }\n break\n }\n}\n\nconst handlePanelChange = (mode: 'month' | 'year') => {\n contextEmit('panel-change', innerDate.value.toDate(), mode, currentView.value)\n}\n\nwatch(\n () => selectionMode.value,\n (val) => {\n if (['month', 'year', 'quarter'].includes(val)) {\n currentView.value = val\n return\n } else if (val === 'years') {\n currentView.value = 'year'\n return\n } else if (val === 'months') {\n currentView.value = 'month'\n return\n } else if (val === 'quarters') {\n currentView.value = 'quarter'\n return\n }\n currentView.value = 'date'\n },\n { immediate: true }\n)\n\nwatch(\n () => defaultValue.value,\n (val) => {\n if (val) {\n innerDate.value = getDefaultValue()\n }\n },\n { immediate: true }\n)\n\nwatch(\n () => props.parsedValue,\n (val) => {\n if (val) {\n if (isMultipleType.value) return\n if (isArray(val)) return\n innerDate.value = val\n } else {\n innerDate.value = getDefaultValue()\n }\n },\n { immediate: true }\n)\n\ncontextEmit('set-picker-option', ['isValidValue', isValidValue])\ncontextEmit('set-picker-option', ['parseUserInput', parseUserInput])\ncontextEmit('set-picker-option', ['handleFocusPicker', _handleFocusPicker])\n</script>\n"],"mappings":""}
1
+ {"version":3,"file":"panel-date-pick.mjs","names":[],"sources":["../../../../../../../packages/components/date-picker-panel/src/date-picker-com/panel-date-pick.vue"],"sourcesContent":["<template>\n <div\n :class=\"[\n ppNs.b(),\n dpNs.b(),\n ppNs.is('border', border),\n ppNs.is('disabled', dateDisabled),\n {\n 'has-sidebar': $slots.sidebar || hasShortcuts,\n 'has-time': showTime,\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 :disabled=\"dateDisabled\"\n :class=\"ppNs.e('shortcut')\"\n @click=\"handleShortcutClick(shortcut)\"\n >\n {{ shortcut.text }}\n </button>\n </div>\n <div :class=\"ppNs.e('body')\">\n <div v-if=\"showTime\" :class=\"dpNs.e('time-header')\">\n <span :class=\"dpNs.e('editor-wrap')\">\n <el-input\n :placeholder=\"t('el.datepicker.selectDate')\"\n :model-value=\"visibleDate\"\n size=\"small\"\n :validate-event=\"false\"\n :disabled=\"dateDisabled\"\n :readonly=\"!editable\"\n @input=\"(val) => (userInputDate = val)\"\n @change=\"handleVisibleDateChange\"\n />\n </span>\n <span\n v-click-outside=\"handleTimePickClose\"\n :class=\"dpNs.e('editor-wrap')\"\n >\n <el-input\n :placeholder=\"t('el.datepicker.selectTime')\"\n :model-value=\"visibleTime\"\n size=\"small\"\n :validate-event=\"false\"\n :disabled=\"dateDisabled\"\n :readonly=\"!editable\"\n @focus=\"onTimePickerInputFocus\"\n @input=\"(val) => (userInputTime = val)\"\n @change=\"handleVisibleTimeChange\"\n />\n <time-pick-panel\n :visible=\"timePickerVisible\"\n :format=\"timeFormat\"\n :parsed-value=\"innerDate\"\n @pick=\"handleTimePick\"\n />\n </span>\n </div>\n <div\n v-show=\"currentView !== 'time'\"\n :class=\"[\n dpNs.e('header'),\n (currentView === 'year' ||\n currentView === 'month' ||\n currentView === 'quarter') &&\n dpNs.em('header', 'bordered'),\n ]\"\n >\n <span :class=\"dpNs.e('prev-btn')\">\n <button\n type=\"button\"\n :aria-label=\"t(`el.datepicker.prevYear`)\"\n class=\"d-arrow-left\"\n :class=\"ppNs.e('icon-btn')\"\n :disabled=\"dateDisabled\"\n @click=\"moveByYear(false)\"\n >\n <slot name=\"prev-year\">\n <el-icon><d-arrow-left /></el-icon>\n </slot>\n </button>\n <button\n v-show=\"currentView === 'date'\"\n type=\"button\"\n :aria-label=\"t(`el.datepicker.prevMonth`)\"\n :class=\"ppNs.e('icon-btn')\"\n class=\"arrow-left\"\n :disabled=\"dateDisabled\"\n @click=\"moveByMonth(false)\"\n >\n <slot name=\"prev-month\">\n <el-icon><arrow-left /></el-icon>\n </slot>\n </button>\n </span>\n <span\n role=\"button\"\n :class=\"dpNs.e('header-label')\"\n aria-live=\"polite\"\n :tabindex=\"disabled ? undefined : 0\"\n :aria-disabled=\"disabled\"\n @keydown.enter=\"showPicker('year')\"\n @click=\"showPicker('year')\"\n >{{ yearLabel }}</span\n >\n <span\n v-show=\"currentView === 'date'\"\n role=\"button\"\n aria-live=\"polite\"\n :tabindex=\"disabled ? undefined : 0\"\n :aria-disabled=\"disabled\"\n :class=\"[\n dpNs.e('header-label'),\n { active: currentView === 'month' },\n ]\"\n @keydown.enter=\"showPicker('month')\"\n @click=\"showPicker('month')\"\n >{{ t(`el.datepicker.month${month + 1}`) }}</span\n >\n <span :class=\"dpNs.e('next-btn')\">\n <button\n v-show=\"currentView === 'date'\"\n type=\"button\"\n :aria-label=\"t(`el.datepicker.nextMonth`)\"\n :class=\"ppNs.e('icon-btn')\"\n class=\"arrow-right\"\n :disabled=\"dateDisabled\"\n @click=\"moveByMonth(true)\"\n >\n <slot name=\"next-month\">\n <el-icon><arrow-right /></el-icon>\n </slot>\n </button>\n <button\n type=\"button\"\n :aria-label=\"t(`el.datepicker.nextYear`)\"\n :class=\"ppNs.e('icon-btn')\"\n class=\"d-arrow-right\"\n :disabled=\"dateDisabled\"\n @click=\"moveByYear(true)\"\n >\n <slot name=\"next-year\">\n <el-icon><d-arrow-right /></el-icon>\n </slot>\n </button>\n </span>\n </div>\n <div :class=\"ppNs.e('content')\" @keydown=\"handleKeydownTable\">\n <date-table\n v-if=\"currentView === 'date'\"\n ref=\"currentViewRef\"\n :selection-mode=\"selectionMode\"\n :date=\"innerDate\"\n :parsed-value=\"parsedValue\"\n :disabled-date=\"disabledDate\"\n :disabled=\"dateDisabled\"\n :cell-class-name=\"cellClassName\"\n :show-week-number=\"showWeekNumber\"\n @pick=\"handleDatePick\"\n />\n <year-table\n v-if=\"currentView === 'year'\"\n ref=\"currentViewRef\"\n :selection-mode=\"selectionMode\"\n :date=\"innerDate\"\n :disabled-date=\"disabledDate\"\n :disabled=\"dateDisabled\"\n :parsed-value=\"parsedValue\"\n :cell-class-name=\"cellClassName\"\n @pick=\"handleYearPick\"\n />\n <month-table\n v-if=\"currentView === 'month'\"\n ref=\"currentViewRef\"\n :selection-mode=\"selectionMode\"\n :date=\"innerDate\"\n :parsed-value=\"parsedValue\"\n :disabled-date=\"disabledDate\"\n :disabled=\"dateDisabled\"\n :cell-class-name=\"cellClassName\"\n @pick=\"handleMonthPick\"\n />\n <quarter-table\n v-if=\"currentView === 'quarter'\"\n ref=\"currentViewRef\"\n :selection-mode=\"selectionMode\"\n :date=\"innerDate\"\n :parsed-value=\"parsedValue\"\n :disabled-date=\"disabledDate\"\n :disabled=\"dateDisabled\"\n :cell-class-name=\"cellClassName\"\n @pick=\"handleQuarterPick\"\n />\n </div>\n </div>\n </div>\n <div\n v-if=\"showFooter && footerVisible && footerFilled\"\n :class=\"ppNs.e('footer')\"\n >\n <el-button\n v-show=\"!isMultipleType && showNow\"\n text\n size=\"small\"\n :class=\"ppNs.e('link-btn')\"\n :disabled=\"disabledNow\"\n @click=\"changeToNow\"\n >\n {{ t('el.datepicker.now') }}\n </el-button>\n <el-button\n v-if=\"showConfirm\"\n plain\n size=\"small\"\n :class=\"ppNs.e('link-btn')\"\n :disabled=\"disabledConfirm\"\n @click=\"onConfirm\"\n >\n {{ t('el.datepicker.confirm') }}\n </el-button>\n </div>\n </div>\n</template>\n\n<script lang=\"ts\" setup>\nimport {\n computed,\n inject,\n nextTick,\n ref,\n toRef,\n useAttrs,\n useSlots,\n watch,\n} from 'vue'\nimport dayjs from 'dayjs'\nimport ElButton from '@element-plus/components/button'\nimport { ClickOutside as vClickOutside } from '@element-plus/directives'\nimport { useLocale, useNamespace } from '@element-plus/hooks'\nimport ElInput from '@element-plus/components/input'\nimport {\n DEFAULT_FORMATS_DATE,\n DEFAULT_FORMATS_TIME,\n PICKER_BASE_INJECTION_KEY,\n TimePickPanel,\n extractDateFormat,\n extractTimeFormat,\n} from '@element-plus/components/time-picker'\nimport { ElIcon } from '@element-plus/components/icon'\nimport {\n extractFirst,\n getEventCode,\n isArray,\n isFunction,\n} from '@element-plus/utils'\nimport { EVENT_CODE } from '@element-plus/constants'\nimport {\n ArrowLeft,\n ArrowRight,\n DArrowLeft,\n DArrowRight,\n} from '@element-plus/icons-vue'\nimport { panelDatePickProps } from '../props/panel-date-pick'\nimport {\n correctlyParseUserInput,\n getValidDateOfMonth,\n getValidDateOfQuarter,\n getValidDateOfYear,\n isQuarterFullyDisabled,\n isSelectableQuarterDate,\n normalizeQuarterDate,\n} from '../utils'\nimport DateTable from './basic-date-table.vue'\nimport MonthTable from './basic-month-table.vue'\nimport QuarterTable from './basic-quarter-table.vue'\nimport YearTable from './basic-year-table.vue'\nimport { useFormDisabled } from '@element-plus/components/form'\n\nimport type { SetupContext } from 'vue'\nimport type { ConfigType, Dayjs } from 'dayjs'\nimport type { PanelDatePickProps } from '../props/panel-date-pick'\nimport type {\n DateTableEmits,\n DatesPickerEmits,\n MonthsPickerEmits,\n QuartersPickerEmits,\n WeekPickerEmits,\n YearsPickerEmits,\n} from '../props/basic-date-table'\n\ntype DatePickType = PanelDatePickProps['type']\n// todo\n// eslint-disable-next-line @typescript-eslint/no-unused-vars\nconst timeWithinRange = (_: ConfigType, __: any, ___: string) => true\nconst props = defineProps(panelDatePickProps)\nconst contextEmit = defineEmits(['pick', 'set-picker-option', 'panel-change'])\nconst ppNs = useNamespace('picker-panel')\nconst dpNs = useNamespace('date-picker')\nconst attrs = useAttrs()\nconst slots = useSlots()\n\nconst { t, lang } = useLocale()\nconst pickerBase = inject(PICKER_BASE_INJECTION_KEY) as any\nconst { shortcuts, cellClassName, defaultTime } = pickerBase.props\nconst disabledDate = toRef(pickerBase.props, 'disabledDate')\nconst defaultValue = toRef(pickerBase.props, 'defaultValue')\n\nconst currentViewRef = ref<{ focus: () => void }>()\n\nconst innerDate = ref(dayjs().locale(lang.value))\n\nconst isChangeToNow = ref(false)\n\nlet isShortcut = false\n\nconst defaultTimeD = computed(() => {\n return dayjs(defaultTime).locale(lang.value)\n})\n\nconst month = computed(() => {\n return innerDate.value.month()\n})\n\nconst year = computed(() => {\n return innerDate.value.year()\n})\n\nconst selectableRange = ref([])\nconst userInputDate = ref<string | null>(null)\nconst userInputTime = ref<string | null>(null)\n// todo update to disableHour\nconst checkDateWithinRange = (date: ConfigType) => {\n return selectableRange.value.length > 0\n ? timeWithinRange(\n date,\n selectableRange.value,\n props.format || DEFAULT_FORMATS_TIME\n )\n : true\n}\nconst formatEmit = (emitDayjs: Dayjs) => {\n if (\n defaultTime &&\n !visibleTime.value &&\n !isChangeToNow.value &&\n !isShortcut\n ) {\n return defaultTimeD.value\n .year(emitDayjs.year())\n .month(emitDayjs.month())\n .date(emitDayjs.date())\n }\n if (showTime.value) return emitDayjs.millisecond(0)\n return emitDayjs.startOf('day')\n}\nconst emit = (value: Dayjs | Dayjs[], ...args: any[]) => {\n if (!value) {\n contextEmit('pick', value, ...args)\n } else if (isArray(value)) {\n const dates = value.map(formatEmit)\n contextEmit('pick', dates, ...args)\n } else {\n contextEmit('pick', formatEmit(value), ...args)\n }\n userInputDate.value = null\n userInputTime.value = null\n isChangeToNow.value = false\n isShortcut = false\n}\nconst handleDatePick = async (value: DateTableEmits, keepOpen?: boolean) => {\n if (selectionMode.value === 'date' && dayjs.isDayjs(value)) {\n const parsedDateValue = extractFirst(props.parsedValue)\n let newDate = parsedDateValue\n ? parsedDateValue\n .year(value.year())\n .month(value.month())\n .date(value.date())\n : value\n // change default time while out of selectableRange\n if (!checkDateWithinRange(newDate)) {\n newDate = (selectableRange.value[0][0] as Dayjs)\n .year(value.year())\n .month(value.month())\n .date(value.date())\n }\n innerDate.value = newDate\n emit(newDate, showTime.value || keepOpen)\n } else if (selectionMode.value === 'week') {\n emit((value as WeekPickerEmits).date)\n } else if (selectionMode.value === 'dates') {\n emit(value as DatesPickerEmits, true) // set true to keep panel open\n }\n}\n\nconst moveByMonth = (forward: boolean) => {\n const action = forward ? 'add' : 'subtract'\n innerDate.value = innerDate.value[action](1, 'month')\n handlePanelChange('month')\n}\n\nconst moveByYear = (forward: boolean) => {\n const currentDate = innerDate.value\n const action = forward ? 'add' : 'subtract'\n\n innerDate.value =\n currentView.value === 'year'\n ? currentDate[action](10, 'year')\n : currentDate[action](1, 'year')\n\n handlePanelChange('year')\n}\n\nconst currentView = ref('date')\n\nconst yearLabel = computed(() => {\n const yearTranslation = t('el.datepicker.year')\n if (currentView.value === 'year') {\n const startYear = Math.floor(year.value / 10) * 10\n if (yearTranslation) {\n return `${startYear} ${yearTranslation} - ${\n startYear + 9\n } ${yearTranslation}`\n }\n return `${startYear} - ${startYear + 9}`\n }\n return `${year.value} ${yearTranslation}`\n})\n\ntype Shortcut = {\n value: (() => Dayjs) | Dayjs\n onClick?: (ctx: Omit<SetupContext, 'expose'>) => void\n}\n\nconst handleShortcutClick = (shortcut: Shortcut) => {\n const shortcutValue = isFunction(shortcut.value)\n ? shortcut.value()\n : shortcut.value\n if (shortcutValue) {\n isShortcut = true\n emit(dayjs(shortcutValue).locale(lang.value))\n return\n }\n if (shortcut.onClick) {\n shortcut.onClick({\n attrs,\n slots,\n emit: contextEmit as SetupContext['emit'],\n })\n }\n}\n\nconst selectionMode = computed<DatePickType>(() => {\n const { type } = props\n if (\n [\n 'week',\n 'month',\n 'months',\n 'year',\n 'years',\n 'dates',\n 'quarter',\n 'quarters',\n ].includes(type)\n )\n return type\n return 'date'\n})\n\nconst isMultipleType = computed(() => {\n return (\n selectionMode.value === 'dates' ||\n selectionMode.value === 'months' ||\n selectionMode.value === 'years' ||\n selectionMode.value === 'quarters'\n )\n})\n\nconst keyboardMode = computed<string>(() => {\n return selectionMode.value === 'date'\n ? currentView.value\n : selectionMode.value\n})\n\nconst hasShortcuts = computed(() => !!shortcuts.length)\n\nconst handleMonthPick = async (\n month: number | MonthsPickerEmits,\n keepOpen?: boolean\n) => {\n if (selectionMode.value === 'month') {\n innerDate.value = getValidDateOfMonth(\n innerDate.value,\n innerDate.value.year(),\n month as number,\n lang.value,\n disabledDate.value\n )\n emit(innerDate.value, false)\n } else if (selectionMode.value === 'months') {\n emit(month as MonthsPickerEmits, keepOpen ?? true)\n } else {\n innerDate.value = getValidDateOfMonth(\n innerDate.value,\n innerDate.value.year(),\n month as number,\n lang.value,\n disabledDate.value\n )\n currentView.value = 'date'\n if (['month', 'year', 'date', 'week'].includes(selectionMode.value)) {\n emit(innerDate.value, true)\n await nextTick()\n handleFocusPicker()\n }\n }\n handlePanelChange('month')\n}\n\nconst handleQuarterPick = async (\n quarter: number | QuartersPickerEmits,\n keepOpen?: boolean\n) => {\n if (selectionMode.value === 'quarter') {\n innerDate.value = getValidDateOfQuarter(\n innerDate.value,\n innerDate.value.year(),\n quarter as number,\n lang.value,\n disabledDate.value\n )\n emit(innerDate.value, false)\n } else if (selectionMode.value === 'quarters') {\n emit(quarter as QuartersPickerEmits, keepOpen ?? true)\n }\n}\n\nconst handleYearPick = async (\n year: number | YearsPickerEmits,\n keepOpen?: boolean\n) => {\n if (selectionMode.value === 'year') {\n const data = innerDate.value.startOf('year').year(year as number)\n innerDate.value = getValidDateOfYear(data, lang.value, disabledDate.value)\n emit(innerDate.value, false)\n } else if (selectionMode.value === 'years') {\n emit(year as YearsPickerEmits, keepOpen ?? true)\n } else {\n const data = innerDate.value.year(year as number)\n innerDate.value = getValidDateOfYear(data, lang.value, disabledDate.value)\n currentView.value = ['quarter', 'quarters'].includes(selectionMode.value)\n ? 'quarter'\n : 'month'\n if (\n ['month', 'year', 'date', 'week', 'quarter'].includes(selectionMode.value)\n ) {\n emit(innerDate.value, true)\n await nextTick()\n handleFocusPicker()\n }\n }\n handlePanelChange('year')\n}\n\nconst dateDisabled = useFormDisabled()\n\nconst showPicker = async (view: 'month' | 'year') => {\n if (dateDisabled.value) return\n currentView.value = view\n await nextTick()\n handleFocusPicker()\n}\n\nconst showTime = computed(\n () => props.type === 'datetime' || props.type === 'datetimerange'\n)\n\nconst footerVisible = computed(() => {\n const showDateFooter = showTime.value || selectionMode.value === 'dates'\n const showYearFooter = selectionMode.value === 'years'\n const showMonthFooter = selectionMode.value === 'months'\n const showQuarterFooter = selectionMode.value === 'quarters'\n const isDateView = currentView.value === 'date'\n const isYearView = currentView.value === 'year'\n const isMonthView = currentView.value === 'month'\n const isQuarterView = currentView.value === 'quarter'\n return (\n (showDateFooter && isDateView) ||\n (showYearFooter && isYearView) ||\n (showMonthFooter && isMonthView) ||\n (showQuarterFooter && isQuarterView)\n )\n})\n\nconst footerFilled = computed(\n () => (!isMultipleType.value && props.showNow) || props.showConfirm\n)\n\nconst disabledConfirm = computed(() => {\n if (!disabledDate.value) return false\n if (!props.parsedValue) return true\n if (isArray(props.parsedValue)) {\n if (!props.parsedValue.length) return true\n\n if (selectionMode.value === 'quarters') {\n return props.parsedValue.some((date) =>\n isQuarterFullyDisabled(date, lang.value, disabledDate.value)\n )\n }\n\n return disabledDate.value(props.parsedValue[0].toDate())\n }\n return disabledDate.value(props.parsedValue.toDate())\n})\nconst onConfirm = () => {\n if (isMultipleType.value) {\n emit(props.parsedValue as Dayjs[])\n } else {\n // deal with the scenario where: user opens the date time picker, then confirm without doing anything\n let result = extractFirst(props.parsedValue)\n if (!result) {\n const defaultTimeD = dayjs(defaultTime).locale(lang.value)\n const defaultValueD = getDefaultValue()\n result = defaultTimeD\n .year(defaultValueD.year())\n .month(defaultValueD.month())\n .date(defaultValueD.date())\n }\n innerDate.value = result\n emit(result)\n }\n}\n\nconst disabledNow = computed(() => {\n if (!disabledDate.value) return false\n return disabledDate.value(dayjs().locale(lang.value).toDate())\n})\nconst changeToNow = () => {\n // NOTE: not a permanent solution\n // consider disable \"now\" button in the future\n const now = dayjs().locale(lang.value)\n const nowDate = now.toDate()\n isChangeToNow.value = true\n if (\n (!disabledDate.value || !disabledDate.value(nowDate)) &&\n checkDateWithinRange(nowDate)\n ) {\n innerDate.value = dayjs().locale(lang.value)\n emit(innerDate.value)\n }\n}\n\nconst timeFormat = computed(() => {\n return (\n props.timeFormat || extractTimeFormat(props.format) || DEFAULT_FORMATS_TIME\n )\n})\n\nconst dateFormat = computed(() => {\n return (\n props.dateFormat || extractDateFormat(props.format) || DEFAULT_FORMATS_DATE\n )\n})\n\nconst visibleTime = computed(() => {\n if (userInputTime.value) return userInputTime.value\n if (!props.parsedValue && !defaultValue.value) return\n const dateValue = extractFirst(props.parsedValue) || innerDate.value\n return dateValue.format(timeFormat.value)\n})\n\nconst visibleDate = computed(() => {\n if (userInputDate.value) return userInputDate.value\n if (!props.parsedValue && !defaultValue.value) return\n const dateValue = extractFirst(props.parsedValue) || innerDate.value\n return dateValue.format(dateFormat.value)\n})\n\nconst timePickerVisible = ref(false)\nconst onTimePickerInputFocus = () => {\n timePickerVisible.value = true\n}\nconst handleTimePickClose = () => {\n timePickerVisible.value = false\n}\n\nconst getUnits = (date: Dayjs) => {\n return {\n hour: date.hour(),\n minute: date.minute(),\n second: date.second(),\n year: date.year(),\n month: date.month(),\n date: date.date(),\n }\n}\n\nconst handleTimePick = (value: Dayjs, visible: boolean, first: boolean) => {\n const { hour, minute, second } = getUnits(value)\n const parsedDateValue = extractFirst(props.parsedValue)\n const newDate = parsedDateValue\n ? parsedDateValue.hour(hour).minute(minute).second(second)\n : value\n innerDate.value = newDate\n emit(innerDate.value, true)\n if (!first) {\n timePickerVisible.value = visible\n }\n}\n\nconst handleVisibleTimeChange = (value: string) => {\n const newDate = dayjs(value, timeFormat.value).locale(lang.value)\n if (newDate.isValid() && checkDateWithinRange(newDate)) {\n const { year, month, date } = getUnits(innerDate.value)\n innerDate.value = newDate.year(year).month(month).date(date)\n userInputTime.value = null\n timePickerVisible.value = false\n emit(innerDate.value, true)\n }\n}\n\nconst handleVisibleDateChange = (value: string) => {\n const newDate = correctlyParseUserInput(\n value,\n dateFormat.value,\n lang.value\n ) as Dayjs\n if (newDate.isValid()) {\n if (disabledDate.value && disabledDate.value(newDate.toDate())) {\n return\n }\n const { hour, minute, second } = getUnits(innerDate.value)\n innerDate.value = newDate.hour(hour).minute(minute).second(second)\n userInputDate.value = null\n emit(innerDate.value, true)\n }\n}\n\nconst isValidValue = (date: unknown) => {\n if (!dayjs.isDayjs(date) || !date.isValid()) {\n return false\n }\n\n if (selectionMode.value === 'quarter') {\n return isSelectableQuarterDate(date, lang.value, disabledDate.value)\n }\n\n return disabledDate.value ? !disabledDate.value(date.toDate()) : true\n}\n\nconst parseUserInput = (value: Dayjs | Dayjs[]) => {\n const parsed = correctlyParseUserInput(value, props.format, lang.value) as\n Dayjs | Dayjs[]\n\n if (!['quarter', 'quarters'].includes(selectionMode.value)) {\n return parsed\n }\n\n const normalize = (date: Dayjs) =>\n normalizeQuarterDate(date, lang.value, disabledDate.value)\n\n if (isArray(parsed)) {\n return parsed.map(normalize)\n }\n if (!dayjs.isDayjs(parsed) || !parsed.isValid()) {\n return parsed\n }\n return normalize(parsed)\n}\n\nconst getDefaultValue = () => {\n const parseDate = dayjs(defaultValue.value).locale(lang.value)\n if (!defaultValue.value) {\n const defaultTimeDValue = defaultTimeD.value\n return dayjs()\n .hour(defaultTimeDValue.hour())\n .minute(defaultTimeDValue.minute())\n .second(defaultTimeDValue.second())\n .locale(lang.value)\n }\n return parseDate\n}\n\nconst handleFocusPicker = () => {\n if (\n ['week', 'month', 'year', 'date', 'quarter', 'quarters'].includes(\n selectionMode.value\n )\n ) {\n currentViewRef.value?.focus()\n }\n}\n\nconst _handleFocusPicker = () => {\n handleFocusPicker()\n // TODO: After focus the date input, the first time you use the ArrowDown keys, you cannot focus on the date cell\n if (selectionMode.value === 'week') {\n handleKeyControl(EVENT_CODE.down)\n }\n}\n\nconst handleKeydownTable = (event: KeyboardEvent) => {\n const code = getEventCode(event)\n\n const validCode = [\n EVENT_CODE.up,\n EVENT_CODE.down,\n EVENT_CODE.left,\n EVENT_CODE.right,\n EVENT_CODE.home,\n EVENT_CODE.end,\n EVENT_CODE.pageUp,\n EVENT_CODE.pageDown,\n ]\n if (validCode.includes(code)) {\n handleKeyControl(code)\n event.stopPropagation()\n event.preventDefault()\n }\n if (\n [EVENT_CODE.enter, EVENT_CODE.space, EVENT_CODE.numpadEnter].includes(\n code\n ) &&\n userInputDate.value === null &&\n userInputTime.value === null\n ) {\n event.preventDefault()\n emit(innerDate.value, false)\n }\n}\n\nconst handleKeyControl = (code: string) => {\n type KeyControlMappingCallableOffset = (date: Date, step?: number) => number\n type KeyControl = {\n [key: string]:\n | number\n | KeyControlMappingCallableOffset\n | ((date: Date, step: number) => any)\n offset: (date: Date, step: number) => any\n }\n interface KeyControlMapping {\n [key: string]: KeyControl\n }\n\n const { up, down, left, right, home, end, pageUp, pageDown } = EVENT_CODE\n const mapping: KeyControlMapping = {\n year: {\n [up]: -4,\n [down]: 4,\n [left]: -1,\n [right]: 1,\n offset: (date: Date, step: number) =>\n date.setFullYear(date.getFullYear() + step),\n },\n month: {\n [up]: -4,\n [down]: 4,\n [left]: -1,\n [right]: 1,\n offset: (date: Date, step: number) =>\n date.setMonth(date.getMonth() + step),\n },\n quarter: {\n [up]: -4,\n [down]: 4,\n [left]: -1,\n [right]: 1,\n offset: (date: Date, step: number) =>\n date.setMonth(date.getMonth() + step * 3),\n },\n week: {\n [up]: -1,\n [down]: 1,\n [left]: -1,\n [right]: 1,\n offset: (date: Date, step: number) =>\n date.setDate(date.getDate() + step * 7),\n },\n date: {\n [up]: -7,\n [down]: 7,\n [left]: -1,\n [right]: 1,\n [home]: (date: Date) => -date.getDay(),\n [end]: (date: Date) => -date.getDay() + 6,\n [pageUp]: (date: Date) =>\n -new Date(date.getFullYear(), date.getMonth(), 0).getDate(),\n [pageDown]: (date: Date) =>\n new Date(date.getFullYear(), date.getMonth() + 1, 0).getDate(),\n offset: (date: Date, step: number) => date.setDate(date.getDate() + step),\n },\n }\n\n const newDate = innerDate.value.toDate()\n while (Math.abs(innerDate.value.diff(newDate, 'year', true)) < 1) {\n const mode =\n keyboardMode.value === 'quarters' ? 'quarter' : keyboardMode.value\n const map = mapping[mode]\n if (!map) return\n map.offset(\n newDate,\n isFunction(map[code])\n ? (map[code] as unknown as KeyControlMappingCallableOffset)(newDate)\n : ((map[code] as number) ?? 0)\n )\n\n let result: Dayjs\n if (mode === 'quarter') {\n const candidate = dayjs(newDate).locale(lang.value)\n if (isQuarterFullyDisabled(candidate, lang.value, disabledDate.value)) {\n break\n }\n result = getValidDateOfQuarter(\n candidate,\n candidate.year(),\n candidate.quarter() - 1,\n lang.value,\n disabledDate.value\n )\n } else {\n if (disabledDate.value && disabledDate.value(newDate)) {\n break\n }\n result = dayjs(newDate).locale(lang.value)\n }\n\n innerDate.value = result\n if (!isMultipleType.value) {\n contextEmit('pick', result, true)\n }\n break\n }\n}\n\nconst handlePanelChange = (mode: 'month' | 'year') => {\n contextEmit('panel-change', innerDate.value.toDate(), mode, currentView.value)\n}\n\nwatch(\n () => selectionMode.value,\n (val) => {\n if (['month', 'year', 'quarter'].includes(val)) {\n currentView.value = val\n return\n } else if (val === 'years') {\n currentView.value = 'year'\n return\n } else if (val === 'months') {\n currentView.value = 'month'\n return\n } else if (val === 'quarters') {\n currentView.value = 'quarter'\n return\n }\n currentView.value = 'date'\n },\n { immediate: true }\n)\n\nwatch(\n () => defaultValue.value,\n (val) => {\n if (val) {\n innerDate.value = getDefaultValue()\n }\n },\n { immediate: true }\n)\n\nwatch(\n () => props.parsedValue,\n (val) => {\n if (val) {\n if (isMultipleType.value) return\n if (isArray(val)) return\n innerDate.value = val\n } else {\n innerDate.value = getDefaultValue()\n }\n },\n { immediate: true }\n)\n\ncontextEmit('set-picker-option', ['isValidValue', isValidValue])\ncontextEmit('set-picker-option', ['parseUserInput', parseUserInput])\ncontextEmit('set-picker-option', ['handleFocusPicker', _handleFocusPicker])\n</script>\n"],"mappings":""}
@@ -28,7 +28,7 @@ declare const __VLS_base: _$vue.DefineComponent<_$vue.ExtractPropTypes<{
28
28
  readonly visible: EpPropFinalized<BooleanConstructor, unknown, unknown, true, boolean>;
29
29
  readonly format: EpPropFinalized<StringConstructor, unknown, unknown, "", boolean>;
30
30
  readonly type: {
31
- readonly type: _$vue.PropType<EpPropMergeType<(new (...args: any[]) => "year" | "months" | "month" | "date" | "years" | "dates" | "quarter" | "quarters" | "week" | "datetime" | "datetimerange" | "daterange" | "monthrange" | "yearrange" | "quarterrange") | (() => "year" | "months" | "month" | "date" | "years" | "dates" | "quarter" | "quarters" | "week" | "datetime" | "datetimerange" | "daterange" | "monthrange" | "yearrange" | "quarterrange") | (((new (...args: any[]) => "year" | "months" | "month" | "date" | "years" | "dates" | "quarter" | "quarters" | "week" | "datetime" | "datetimerange" | "daterange" | "monthrange" | "yearrange" | "quarterrange") | (() => "year" | "months" | "month" | "date" | "years" | "dates" | "quarter" | "quarters" | "week" | "datetime" | "datetimerange" | "daterange" | "monthrange" | "yearrange" | "quarterrange")) | null)[], "year" | "months" | "month" | "date" | "years" | "dates" | "quarter" | "quarters" | "week" | "datetime" | "datetimerange" | "daterange" | "monthrange" | "yearrange" | "quarterrange", unknown>>;
31
+ readonly type: _$vue.PropType<EpPropMergeType<(new (...args: any[]) => "year" | "years" | "month" | "months" | "date" | "dates" | "week" | "quarter" | "quarters" | "datetime" | "datetimerange" | "daterange" | "monthrange" | "yearrange" | "quarterrange") | (() => "year" | "years" | "month" | "months" | "date" | "dates" | "week" | "quarter" | "quarters" | "datetime" | "datetimerange" | "daterange" | "monthrange" | "yearrange" | "quarterrange") | (((new (...args: any[]) => "year" | "years" | "month" | "months" | "date" | "dates" | "week" | "quarter" | "quarters" | "datetime" | "datetimerange" | "daterange" | "monthrange" | "yearrange" | "quarterrange") | (() => "year" | "years" | "month" | "months" | "date" | "dates" | "week" | "quarter" | "quarters" | "datetime" | "datetimerange" | "daterange" | "monthrange" | "yearrange" | "quarterrange")) | null)[], "year" | "years" | "month" | "months" | "date" | "dates" | "week" | "quarter" | "quarters" | "datetime" | "datetimerange" | "daterange" | "monthrange" | "yearrange" | "quarterrange", unknown>>;
32
32
  readonly required: true;
33
33
  readonly validator: ((val: unknown) => boolean) | undefined;
34
34
  __epPropKey: true;
@@ -43,8 +43,8 @@ declare const __VLS_base: _$vue.DefineComponent<_$vue.ExtractPropTypes<{
43
43
  readonly disabled: BooleanConstructor;
44
44
  readonly editable: EpPropFinalized<BooleanConstructor, unknown, unknown, true, boolean>;
45
45
  }>, {}, {}, {}, {}, _$vue.ComponentOptionsMixin, _$vue.ComponentOptionsMixin, {
46
- pick: (...args: any[]) => void;
47
46
  "panel-change": (...args: any[]) => void;
47
+ pick: (...args: any[]) => void;
48
48
  "set-picker-option": (...args: any[]) => void;
49
49
  }, string, _$vue.PublicProps, Readonly<_$vue.ExtractPropTypes<{
50
50
  readonly parsedValue: {
@@ -56,7 +56,7 @@ declare const __VLS_base: _$vue.DefineComponent<_$vue.ExtractPropTypes<{
56
56
  readonly visible: EpPropFinalized<BooleanConstructor, unknown, unknown, true, boolean>;
57
57
  readonly format: EpPropFinalized<StringConstructor, unknown, unknown, "", boolean>;
58
58
  readonly type: {
59
- readonly type: _$vue.PropType<EpPropMergeType<(new (...args: any[]) => "year" | "months" | "month" | "date" | "years" | "dates" | "quarter" | "quarters" | "week" | "datetime" | "datetimerange" | "daterange" | "monthrange" | "yearrange" | "quarterrange") | (() => "year" | "months" | "month" | "date" | "years" | "dates" | "quarter" | "quarters" | "week" | "datetime" | "datetimerange" | "daterange" | "monthrange" | "yearrange" | "quarterrange") | (((new (...args: any[]) => "year" | "months" | "month" | "date" | "years" | "dates" | "quarter" | "quarters" | "week" | "datetime" | "datetimerange" | "daterange" | "monthrange" | "yearrange" | "quarterrange") | (() => "year" | "months" | "month" | "date" | "years" | "dates" | "quarter" | "quarters" | "week" | "datetime" | "datetimerange" | "daterange" | "monthrange" | "yearrange" | "quarterrange")) | null)[], "year" | "months" | "month" | "date" | "years" | "dates" | "quarter" | "quarters" | "week" | "datetime" | "datetimerange" | "daterange" | "monthrange" | "yearrange" | "quarterrange", unknown>>;
59
+ readonly type: _$vue.PropType<EpPropMergeType<(new (...args: any[]) => "year" | "years" | "month" | "months" | "date" | "dates" | "week" | "quarter" | "quarters" | "datetime" | "datetimerange" | "daterange" | "monthrange" | "yearrange" | "quarterrange") | (() => "year" | "years" | "month" | "months" | "date" | "dates" | "week" | "quarter" | "quarters" | "datetime" | "datetimerange" | "daterange" | "monthrange" | "yearrange" | "quarterrange") | (((new (...args: any[]) => "year" | "years" | "month" | "months" | "date" | "dates" | "week" | "quarter" | "quarters" | "datetime" | "datetimerange" | "daterange" | "monthrange" | "yearrange" | "quarterrange") | (() => "year" | "years" | "month" | "months" | "date" | "dates" | "week" | "quarter" | "quarters" | "datetime" | "datetimerange" | "daterange" | "monthrange" | "yearrange" | "quarterrange")) | null)[], "year" | "years" | "month" | "months" | "date" | "dates" | "week" | "quarter" | "quarters" | "datetime" | "datetimerange" | "daterange" | "monthrange" | "yearrange" | "quarterrange", unknown>>;
60
60
  readonly required: true;
61
61
  readonly validator: ((val: unknown) => boolean) | undefined;
62
62
  __epPropKey: true;
@@ -71,19 +71,19 @@ declare const __VLS_base: _$vue.DefineComponent<_$vue.ExtractPropTypes<{
71
71
  readonly disabled: BooleanConstructor;
72
72
  readonly editable: EpPropFinalized<BooleanConstructor, unknown, unknown, true, boolean>;
73
73
  }>> & Readonly<{
74
- onPick?: ((...args: any[]) => any) | undefined;
75
74
  "onPanel-change"?: ((...args: any[]) => any) | undefined;
75
+ onPick?: ((...args: any[]) => any) | undefined;
76
76
  "onSet-picker-option"?: ((...args: any[]) => any) | undefined;
77
77
  }>, {
78
78
  readonly disabled: boolean;
79
- readonly border: boolean;
80
79
  readonly visible: EpPropMergeType<BooleanConstructor, unknown, unknown>;
81
- readonly format: string;
80
+ readonly border: boolean;
82
81
  readonly editable: EpPropMergeType<BooleanConstructor, unknown, unknown>;
83
82
  readonly showNow: EpPropMergeType<BooleanConstructor, unknown, unknown>;
84
83
  readonly showConfirm: boolean;
85
84
  readonly showFooter: EpPropMergeType<BooleanConstructor, unknown, unknown>;
86
85
  readonly showWeekNumber: boolean;
86
+ readonly format: string;
87
87
  }, {}, {}, {}, string, _$vue.ComponentProvideOptions, true, {}, any>;
88
88
  declare const __VLS_export: __VLS_WithSlots<typeof __VLS_base, __VLS_Slots>;
89
89
  declare const _default: typeof __VLS_export;
@@ -47,7 +47,8 @@ var panel_date_pick_vue_vue_type_script_setup_true_lang_default = /* @__PURE__ *
47
47
  const slots = useSlots();
48
48
  const { t, lang } = useLocale();
49
49
  const pickerBase = inject(PICKER_BASE_INJECTION_KEY);
50
- const { shortcuts, disabledDate, cellClassName, defaultTime } = pickerBase.props;
50
+ const { shortcuts, cellClassName, defaultTime } = pickerBase.props;
51
+ const disabledDate = toRef(pickerBase.props, "disabledDate");
51
52
  const defaultValue = toRef(pickerBase.props, "defaultValue");
52
53
  const currentViewRef = ref();
53
54
  const innerDate = ref(dayjs().locale(lang.value));
@@ -149,11 +150,11 @@ var panel_date_pick_vue_vue_type_script_setup_true_lang_default = /* @__PURE__ *
149
150
  const hasShortcuts = computed(() => !!shortcuts.length);
150
151
  const handleMonthPick = async (month, keepOpen) => {
151
152
  if (selectionMode.value === "month") {
152
- innerDate.value = getValidDateOfMonth(innerDate.value, innerDate.value.year(), month, lang.value, disabledDate);
153
+ innerDate.value = getValidDateOfMonth(innerDate.value, innerDate.value.year(), month, lang.value, disabledDate.value);
153
154
  emit(innerDate.value, false);
154
155
  } else if (selectionMode.value === "months") emit(month, keepOpen ?? true);
155
156
  else {
156
- innerDate.value = getValidDateOfMonth(innerDate.value, innerDate.value.year(), month, lang.value, disabledDate);
157
+ innerDate.value = getValidDateOfMonth(innerDate.value, innerDate.value.year(), month, lang.value, disabledDate.value);
157
158
  currentView.value = "date";
158
159
  if ([
159
160
  "month",
@@ -170,17 +171,17 @@ var panel_date_pick_vue_vue_type_script_setup_true_lang_default = /* @__PURE__ *
170
171
  };
171
172
  const handleQuarterPick = async (quarter, keepOpen) => {
172
173
  if (selectionMode.value === "quarter") {
173
- innerDate.value = getValidDateOfQuarter(innerDate.value, innerDate.value.year(), quarter, lang.value, disabledDate);
174
+ innerDate.value = getValidDateOfQuarter(innerDate.value, innerDate.value.year(), quarter, lang.value, disabledDate.value);
174
175
  emit(innerDate.value, false);
175
176
  } else if (selectionMode.value === "quarters") emit(quarter, keepOpen ?? true);
176
177
  };
177
178
  const handleYearPick = async (year, keepOpen) => {
178
179
  if (selectionMode.value === "year") {
179
- innerDate.value = getValidDateOfYear(innerDate.value.startOf("year").year(year), lang.value, disabledDate);
180
+ innerDate.value = getValidDateOfYear(innerDate.value.startOf("year").year(year), lang.value, disabledDate.value);
180
181
  emit(innerDate.value, false);
181
182
  } else if (selectionMode.value === "years") emit(year, keepOpen ?? true);
182
183
  else {
183
- innerDate.value = getValidDateOfYear(innerDate.value.year(year), lang.value, disabledDate);
184
+ innerDate.value = getValidDateOfYear(innerDate.value.year(year), lang.value, disabledDate.value);
184
185
  currentView.value = ["quarter", "quarters"].includes(selectionMode.value) ? "quarter" : "month";
185
186
  if ([
186
187
  "month",
@@ -217,14 +218,14 @@ var panel_date_pick_vue_vue_type_script_setup_true_lang_default = /* @__PURE__ *
217
218
  });
218
219
  const footerFilled = computed(() => !isMultipleType.value && props.showNow || props.showConfirm);
219
220
  const disabledConfirm = computed(() => {
220
- if (!disabledDate) return false;
221
+ if (!disabledDate.value) return false;
221
222
  if (!props.parsedValue) return true;
222
223
  if (isArray(props.parsedValue)) {
223
224
  if (!props.parsedValue.length) return true;
224
- if (selectionMode.value === "quarters") return props.parsedValue.some((date) => isQuarterFullyDisabled(date, lang.value, disabledDate));
225
- return disabledDate(props.parsedValue[0].toDate());
225
+ if (selectionMode.value === "quarters") return props.parsedValue.some((date) => isQuarterFullyDisabled(date, lang.value, disabledDate.value));
226
+ return disabledDate.value(props.parsedValue[0].toDate());
226
227
  }
227
- return disabledDate(props.parsedValue.toDate());
228
+ return disabledDate.value(props.parsedValue.toDate());
228
229
  });
229
230
  const onConfirm = () => {
230
231
  if (isMultipleType.value) emit(props.parsedValue);
@@ -240,13 +241,13 @@ var panel_date_pick_vue_vue_type_script_setup_true_lang_default = /* @__PURE__ *
240
241
  }
241
242
  };
242
243
  const disabledNow = computed(() => {
243
- if (!disabledDate) return false;
244
- return disabledDate(dayjs().locale(lang.value).toDate());
244
+ if (!disabledDate.value) return false;
245
+ return disabledDate.value(dayjs().locale(lang.value).toDate());
245
246
  });
246
247
  const changeToNow = () => {
247
248
  const nowDate = dayjs().locale(lang.value).toDate();
248
249
  isChangeToNow.value = true;
249
- if ((!disabledDate || !disabledDate(nowDate)) && checkDateWithinRange(nowDate)) {
250
+ if ((!disabledDate.value || !disabledDate.value(nowDate)) && checkDateWithinRange(nowDate)) {
250
251
  innerDate.value = dayjs().locale(lang.value);
251
252
  emit(innerDate.value);
252
253
  }
@@ -304,7 +305,7 @@ var panel_date_pick_vue_vue_type_script_setup_true_lang_default = /* @__PURE__ *
304
305
  const handleVisibleDateChange = (value) => {
305
306
  const newDate = correctlyParseUserInput(value, dateFormat.value, lang.value);
306
307
  if (newDate.isValid()) {
307
- if (disabledDate && disabledDate(newDate.toDate())) return;
308
+ if (disabledDate.value && disabledDate.value(newDate.toDate())) return;
308
309
  const { hour, minute, second } = getUnits(innerDate.value);
309
310
  innerDate.value = newDate.hour(hour).minute(minute).second(second);
310
311
  userInputDate.value = null;
@@ -313,13 +314,13 @@ var panel_date_pick_vue_vue_type_script_setup_true_lang_default = /* @__PURE__ *
313
314
  };
314
315
  const isValidValue = (date) => {
315
316
  if (!dayjs.isDayjs(date) || !date.isValid()) return false;
316
- if (selectionMode.value === "quarter") return isSelectableQuarterDate(date, lang.value, disabledDate);
317
- return disabledDate ? !disabledDate(date.toDate()) : true;
317
+ if (selectionMode.value === "quarter") return isSelectableQuarterDate(date, lang.value, disabledDate.value);
318
+ return disabledDate.value ? !disabledDate.value(date.toDate()) : true;
318
319
  };
319
320
  const parseUserInput = (value) => {
320
321
  const parsed = correctlyParseUserInput(value, props.format, lang.value);
321
322
  if (!["quarter", "quarters"].includes(selectionMode.value)) return parsed;
322
- const normalize = (date) => normalizeQuarterDate(date, lang.value, disabledDate);
323
+ const normalize = (date) => normalizeQuarterDate(date, lang.value, disabledDate.value);
323
324
  if (isArray(parsed)) return parsed.map(normalize);
324
325
  if (!dayjs.isDayjs(parsed) || !parsed.isValid()) return parsed;
325
326
  return normalize(parsed);
@@ -423,10 +424,10 @@ var panel_date_pick_vue_vue_type_script_setup_true_lang_default = /* @__PURE__ *
423
424
  let result;
424
425
  if (mode === "quarter") {
425
426
  const candidate = dayjs(newDate).locale(lang.value);
426
- if (isQuarterFullyDisabled(candidate, lang.value, disabledDate)) break;
427
- result = getValidDateOfQuarter(candidate, candidate.year(), candidate.quarter() - 1, lang.value, disabledDate);
427
+ if (isQuarterFullyDisabled(candidate, lang.value, disabledDate.value)) break;
428
+ result = getValidDateOfQuarter(candidate, candidate.year(), candidate.quarter() - 1, lang.value, disabledDate.value);
428
429
  } else {
429
- if (disabledDate && disabledDate(newDate)) break;
430
+ if (disabledDate.value && disabledDate.value(newDate)) break;
430
431
  result = dayjs(newDate).locale(lang.value);
431
432
  }
432
433
  innerDate.value = result;
@@ -606,7 +607,7 @@ var panel_date_pick_vue_vue_type_script_setup_true_lang_default = /* @__PURE__ *
606
607
  "selection-mode": selectionMode.value,
607
608
  date: innerDate.value,
608
609
  "parsed-value": _ctx.parsedValue,
609
- "disabled-date": unref(disabledDate),
610
+ "disabled-date": disabledDate.value,
610
611
  disabled: unref(dateDisabled),
611
612
  "cell-class-name": unref(cellClassName),
612
613
  "show-week-number": _ctx.showWeekNumber,
@@ -626,7 +627,7 @@ var panel_date_pick_vue_vue_type_script_setup_true_lang_default = /* @__PURE__ *
626
627
  ref: currentViewRef,
627
628
  "selection-mode": selectionMode.value,
628
629
  date: innerDate.value,
629
- "disabled-date": unref(disabledDate),
630
+ "disabled-date": disabledDate.value,
630
631
  disabled: unref(dateDisabled),
631
632
  "parsed-value": _ctx.parsedValue,
632
633
  "cell-class-name": unref(cellClassName),
@@ -646,7 +647,7 @@ var panel_date_pick_vue_vue_type_script_setup_true_lang_default = /* @__PURE__ *
646
647
  "selection-mode": selectionMode.value,
647
648
  date: innerDate.value,
648
649
  "parsed-value": _ctx.parsedValue,
649
- "disabled-date": unref(disabledDate),
650
+ "disabled-date": disabledDate.value,
650
651
  disabled: unref(dateDisabled),
651
652
  "cell-class-name": unref(cellClassName),
652
653
  onPick: handleMonthPick
@@ -665,7 +666,7 @@ var panel_date_pick_vue_vue_type_script_setup_true_lang_default = /* @__PURE__ *
665
666
  "selection-mode": selectionMode.value,
666
667
  date: innerDate.value,
667
668
  "parsed-value": _ctx.parsedValue,
668
- "disabled-date": unref(disabledDate),
669
+ "disabled-date": disabledDate.value,
669
670
  disabled: unref(dateDisabled),
670
671
  "cell-class-name": unref(cellClassName),
671
672
  onPick: handleQuarterPick