@element-plus/nightly 0.0.20260929 → 0.0.20260930

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 (645) hide show
  1. package/dist/index.full.js +18 -7
  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 +18 -7
  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 +3 -3
  277. package/es/components/alert/src/alert.d.ts +1 -1
  278. package/es/components/anchor/src/anchor.vue.d.ts +2 -2
  279. package/es/components/autocomplete/src/autocomplete.d.ts +4 -4
  280. package/es/components/avatar/src/avatar-group-props.d.ts +2 -2
  281. package/es/components/avatar/src/avatar-group.d.ts +4 -4
  282. package/es/components/avatar/src/avatar.d.ts +2 -2
  283. package/es/components/backtop/src/backtop.vue.d.ts +1 -1
  284. package/es/components/badge/src/badge.d.ts +1 -1
  285. package/es/components/badge/src/badge.vue.d.ts +1 -1
  286. package/es/components/button/src/button-group.d.ts +2 -2
  287. package/es/components/button/src/button-group.vue.d.ts +1 -1
  288. package/es/components/button/src/button.d.ts +3 -3
  289. package/es/components/button/src/button.vue.d.ts +6 -6
  290. package/es/components/button/src/use-button.d.ts +3 -3
  291. package/es/components/carousel/src/carousel.d.ts +1 -1
  292. package/es/components/carousel/src/carousel.vue.d.ts +1 -1
  293. package/es/components/cascader/src/cascader.d.ts +5 -5
  294. package/es/components/cascader/src/cascader.vue.d.ts +6 -6
  295. package/es/components/cascader-panel/src/index.vue.d.ts +2 -2
  296. package/es/components/cascader-panel/src/menu.vue.d.ts +1 -1
  297. package/es/components/check-tag/src/check-tag.d.ts +1 -1
  298. package/es/components/checkbox/src/checkbox-button.vue.d.ts +2 -2
  299. package/es/components/checkbox/src/checkbox-group.d.ts +1 -1
  300. package/es/components/checkbox/src/checkbox-group.vue.d.ts +2 -2
  301. package/es/components/checkbox/src/checkbox.d.ts +9 -9
  302. package/es/components/checkbox/src/checkbox.vue.d.ts +2 -2
  303. package/es/components/checkbox/src/composables/use-checkbox-status.d.ts +2 -2
  304. package/es/components/checkbox/src/composables/use-checkbox.d.ts +2 -2
  305. package/es/components/col/src/col.vue.d.ts +1 -1
  306. package/es/components/color-picker/src/color-picker.d.ts +1 -1
  307. package/es/components/color-picker-panel/src/color-picker-panel.vue.d.ts +1 -1
  308. package/es/components/config-provider/src/config-provider-props.d.ts +1 -1
  309. package/es/components/config-provider/src/config-provider.d.ts +2 -2
  310. package/es/components/config-provider/src/hooks/use-global-config.d.ts +1 -1
  311. package/es/components/date-picker/src/date-picker.d.ts +9 -9
  312. package/es/components/date-picker/src/props.d.ts +3 -3
  313. package/es/components/date-picker-panel/src/composables/use-basic-date-table.d.ts +1 -1
  314. package/es/components/date-picker-panel/src/date-picker-com/panel-date-pick.vue.d.ts +1 -1
  315. package/es/components/date-picker-panel/src/date-picker-com/panel-date-range.vue.d.ts +1 -1
  316. package/es/components/date-picker-panel/src/date-picker-com/panel-month-range.vue.d.ts +1 -1
  317. package/es/components/date-picker-panel/src/date-picker-com/panel-quarter-range.vue.d.ts +1 -1
  318. package/es/components/date-picker-panel/src/date-picker-com/panel-year-range.vue.d.ts +1 -1
  319. package/es/components/date-picker-panel/src/date-picker-panel.d.ts +5 -5
  320. package/es/components/date-picker-panel/src/panel-utils.d.ts +9 -9
  321. package/es/components/date-picker-panel/src/props/date-picker-panel.d.ts +1 -1
  322. package/es/components/descriptions/src/description-item.d.ts +18 -18
  323. package/es/components/descriptions/src/description.d.ts +1 -1
  324. package/es/components/descriptions/src/description.vue.d.ts +1 -1
  325. package/es/components/dialog/src/dialog.vue.d.ts +2 -2
  326. package/es/components/divider/src/divider.d.ts +1 -1
  327. package/es/components/drawer/src/drawer.vue.d.ts +3 -3
  328. package/es/components/dropdown/src/dropdown-menu.vue.d.ts +1 -1
  329. package/es/components/dropdown/src/dropdown.d.ts +4 -4
  330. package/es/components/dropdown/src/dropdown.vue.d.ts +59 -59
  331. package/es/components/form/src/form-item.d.ts +1 -1
  332. package/es/components/form/src/form-item.vue.d.ts +1 -1
  333. package/es/components/form/src/form.d.ts +2 -2
  334. package/es/components/form/src/hooks/use-form-common-props.d.ts +2 -2
  335. package/es/components/image/src/image.vue.d.ts +2 -2
  336. package/es/components/input/src/input.d.ts +3 -3
  337. package/es/components/input/src/input.vue.d.ts +1 -1
  338. package/es/components/input-number/src/input-number.d.ts +3 -3
  339. package/es/components/input-number/src/input-number.vue.d.ts +1 -1
  340. package/es/components/input-otp/src/input-otp.vue.d.ts +1 -1
  341. package/es/components/input-tag/src/composables/use-input-tag.d.ts +1 -1
  342. package/es/components/input-tag/src/input-tag.d.ts +4 -4
  343. package/es/components/input-tag/src/input-tag.vue.d.ts +2 -2
  344. package/es/components/link/src/link.d.ts +1 -1
  345. package/es/components/link/src/link.vue.d.ts +1 -1
  346. package/es/components/mention/src/mention.d.ts +4 -4
  347. package/es/components/menu/src/menu.d.ts +5 -5
  348. package/es/components/message/src/instance.d.ts +1 -1
  349. package/es/components/message/src/message.d.ts +2 -2
  350. package/es/components/message/src/message.vue.d.ts +1 -1
  351. package/es/components/message-box/src/index.vue.d.ts +28 -28
  352. package/es/components/notification/src/notification.d.ts +1 -1
  353. package/es/components/notification/src/notification.vue.d.ts +3 -3
  354. package/es/components/page-header/src/page-header.vue.d.ts +1 -1
  355. package/es/components/pagination/src/components/jumper.d.ts +1 -1
  356. package/es/components/pagination/src/components/jumper.vue.d.ts +2 -2
  357. package/es/components/pagination/src/components/sizes.d.ts +1 -1
  358. package/es/components/pagination/src/components/sizes.vue.d.ts +2 -2
  359. package/es/components/pagination/src/pagination.d.ts +5 -5
  360. package/es/components/popconfirm/src/popconfirm.d.ts +2 -2
  361. package/es/components/popconfirm/src/popconfirm.vue.d.ts +1 -1
  362. package/es/components/popover/src/popover.d.ts +17 -17
  363. package/es/components/popover/src/popover.vue.d.ts +5 -5
  364. package/es/components/popper/src/composables/use-content.d.ts +2 -2
  365. package/es/components/popper/src/content.d.ts +4 -4
  366. package/es/components/popper/src/content.vue.d.ts +3 -3
  367. package/es/components/popper/src/popper.d.ts +2 -2
  368. package/es/components/progress/src/progress.d.ts +1 -1
  369. package/es/components/progress/src/progress.vue.d.ts +1 -1
  370. package/es/components/radio/src/radio-button.d.ts +4 -4
  371. package/es/components/radio/src/radio-button.vue.d.ts +2 -2
  372. package/es/components/radio/src/radio-group.d.ts +1 -1
  373. package/es/components/radio/src/radio-group.vue.d.ts +2 -2
  374. package/es/components/radio/src/radio.d.ts +8 -8
  375. package/es/components/radio/src/radio.vue.d.ts +3 -3
  376. package/es/components/radio/src/use-radio.d.ts +1 -1
  377. package/es/components/rate/src/rate.d.ts +1 -1
  378. package/es/components/result/src/result.d.ts +1 -1
  379. package/es/components/row/src/row.d.ts +2 -2
  380. package/es/components/row/src/row.vue.d.ts +1 -1
  381. package/es/components/scrollbar/src/scrollbar.vue.d.ts +2 -2
  382. package/es/components/segmented/index.d.ts +1 -1
  383. package/es/components/segmented/src/segmented.d.ts +2 -2
  384. package/es/components/select/src/option.d.ts +2 -2
  385. package/es/components/select/src/option.vue.d.ts +5 -5
  386. package/es/components/select/src/select.d.ts +6 -6
  387. package/es/components/select/src/select.vue.d.ts +60 -60
  388. package/es/components/select/src/useOption.d.ts +2 -2
  389. package/es/components/select/src/useSelect.d.ts +6 -6
  390. package/es/components/select-v2/src/defaults.d.ts +4 -4
  391. package/es/components/select-v2/src/select.vue.d.ts +40 -40
  392. package/es/components/select-v2/src/useSelect.d.ts +1 -1
  393. package/es/components/skeleton/src/skeleton.vue.d.ts +1 -1
  394. package/es/components/slider/src/slider.d.ts +2 -2
  395. package/es/components/slider/src/slider.vue.d.ts +6 -6
  396. package/es/components/space/src/space.d.ts +5 -5
  397. package/es/components/splitter/src/splitter.vue.d.ts +2 -2
  398. package/es/components/steps/src/item.d.ts +1 -1
  399. package/es/components/steps/src/steps.d.ts +2 -2
  400. package/es/components/switch/src/switch.d.ts +1 -1
  401. package/es/components/switch/src/switch.vue.d.ts +2 -2
  402. package/es/components/table/src/filter-panel.vue.d.ts +36 -36
  403. package/es/components/table/src/table/defaults.d.ts +6 -6
  404. package/es/components/table/src/table/style-helper.d.ts +2 -2
  405. package/es/components/table/src/table-column/defaults.d.ts +2 -2
  406. package/es/components/table/src/table-header/index.d.ts +7 -7
  407. package/es/components/table/src/table.vue.d.ts +3 -3
  408. package/es/components/table-v2/src/table-v2.d.ts +1 -1
  409. package/es/components/tabs/src/tab-nav.d.ts +1 -1
  410. package/es/components/tabs/src/tabs.d.ts +5 -5
  411. package/es/components/tag/src/tag.d.ts +3 -3
  412. package/es/components/tag/src/tag.vue.d.ts +2 -2
  413. package/es/components/text/src/text.d.ts +2 -2
  414. package/es/components/text/src/text.vue.d.ts +1 -1
  415. package/es/components/time-picker/src/common/picker-range-trigger.vue.d.ts +2 -2
  416. package/es/components/time-picker/src/common/picker.mjs.map +1 -1
  417. package/es/components/time-picker/src/common/picker.vue.d.ts +9 -9
  418. package/es/components/time-picker/src/common/picker.vue_vue_type_script_setup_true_lang.mjs +16 -5
  419. package/es/components/time-picker/src/common/picker.vue_vue_type_script_setup_true_lang.mjs.map +1 -1
  420. package/es/components/time-picker/src/common/props.d.ts +3 -3
  421. package/es/components/time-picker/src/time-picker-com/panel-time-pick.vue.d.ts +2 -2
  422. package/es/components/time-picker/src/time-picker-com/panel-time-range.vue.d.ts +2 -2
  423. package/es/components/time-picker/src/time-picker.d.ts +9 -9
  424. package/es/components/time-select/src/time-select.d.ts +1 -1
  425. package/es/components/time-select/src/time-select.vue.d.ts +2 -2
  426. package/es/components/timeline/src/timeline-item.d.ts +3 -3
  427. package/es/components/timeline/src/timeline-item.vue.d.ts +1 -1
  428. package/es/components/tooltip/src/content.d.ts +1 -1
  429. package/es/components/tooltip/src/content.vue.d.ts +4 -4
  430. package/es/components/tooltip/src/tooltip.d.ts +3 -3
  431. package/es/components/tooltip/src/tooltip.vue.d.ts +6 -6
  432. package/es/components/tooltip/src/trigger.d.ts +1 -1
  433. package/es/components/tour/src/content.d.ts +2 -2
  434. package/es/components/tour/src/mask.vue.d.ts +1 -1
  435. package/es/components/tour/src/step.d.ts +1 -1
  436. package/es/components/tour/src/tour.d.ts +1 -1
  437. package/es/components/tree/src/tree-node.vue.d.ts +7 -7
  438. package/es/components/tree/src/tree.vue.d.ts +8 -8
  439. package/es/components/tree-select/src/tree-select-option.d.ts +5 -5
  440. package/es/components/tree-select/src/tree-select.vue.d.ts +21 -21
  441. package/es/components/tree-v2/src/composables/useTree.d.ts +12 -12
  442. package/es/components/tree-v2/src/tree.vue.d.ts +4 -4
  443. package/es/components/upload/src/upload-content.vue.d.ts +2 -2
  444. package/es/components/upload/src/upload.vue.d.ts +2 -2
  445. package/es/components/virtual-list/src/builders/build-grid.d.ts +5 -5
  446. package/es/components/virtual-list/src/builders/build-list.d.ts +6 -6
  447. package/es/components/virtual-list/src/components/dynamic-size-grid.d.ts +5 -5
  448. package/es/components/virtual-list/src/components/dynamic-size-list.d.ts +6 -6
  449. package/es/components/virtual-list/src/components/fixed-size-grid.d.ts +5 -5
  450. package/es/components/virtual-list/src/components/fixed-size-list.d.ts +6 -6
  451. package/es/components/virtual-list/src/components/scrollbar.d.ts +1 -1
  452. package/es/components/watermark/src/watermark.vue.d.ts +1 -1
  453. package/es/hooks/use-floating/index.d.ts +4 -4
  454. package/es/hooks/use-popper/index.d.ts +2 -2
  455. package/es/hooks/use-size/index.d.ts +3 -3
  456. package/es/version.d.ts +1 -1
  457. package/es/version.mjs +1 -1
  458. package/es/version.mjs.map +1 -1
  459. package/lib/components/affix/src/affix.d.ts +1 -1
  460. package/lib/components/affix/src/affix.vue.d.ts +3 -3
  461. package/lib/components/alert/src/alert.d.ts +1 -1
  462. package/lib/components/anchor/src/anchor.vue.d.ts +2 -2
  463. package/lib/components/autocomplete/src/autocomplete.d.ts +4 -4
  464. package/lib/components/avatar/src/avatar-group-props.d.ts +2 -2
  465. package/lib/components/avatar/src/avatar-group.d.ts +4 -4
  466. package/lib/components/avatar/src/avatar.d.ts +2 -2
  467. package/lib/components/backtop/src/backtop.vue.d.ts +1 -1
  468. package/lib/components/badge/src/badge.d.ts +1 -1
  469. package/lib/components/badge/src/badge.vue.d.ts +1 -1
  470. package/lib/components/button/src/button-group.d.ts +2 -2
  471. package/lib/components/button/src/button-group.vue.d.ts +1 -1
  472. package/lib/components/button/src/button.d.ts +3 -3
  473. package/lib/components/button/src/button.vue.d.ts +6 -6
  474. package/lib/components/button/src/use-button.d.ts +3 -3
  475. package/lib/components/carousel/src/carousel.d.ts +1 -1
  476. package/lib/components/carousel/src/carousel.vue.d.ts +1 -1
  477. package/lib/components/cascader/src/cascader.d.ts +5 -5
  478. package/lib/components/cascader/src/cascader.vue.d.ts +6 -6
  479. package/lib/components/cascader-panel/src/index.vue.d.ts +2 -2
  480. package/lib/components/cascader-panel/src/menu.vue.d.ts +1 -1
  481. package/lib/components/check-tag/src/check-tag.d.ts +1 -1
  482. package/lib/components/checkbox/src/checkbox-button.vue.d.ts +2 -2
  483. package/lib/components/checkbox/src/checkbox-group.d.ts +1 -1
  484. package/lib/components/checkbox/src/checkbox-group.vue.d.ts +2 -2
  485. package/lib/components/checkbox/src/checkbox.d.ts +9 -9
  486. package/lib/components/checkbox/src/checkbox.vue.d.ts +2 -2
  487. package/lib/components/checkbox/src/composables/use-checkbox-status.d.ts +2 -2
  488. package/lib/components/checkbox/src/composables/use-checkbox.d.ts +2 -2
  489. package/lib/components/col/src/col.vue.d.ts +1 -1
  490. package/lib/components/color-picker/src/color-picker.d.ts +1 -1
  491. package/lib/components/color-picker-panel/src/color-picker-panel.vue.d.ts +1 -1
  492. package/lib/components/config-provider/src/config-provider-props.d.ts +1 -1
  493. package/lib/components/config-provider/src/config-provider.d.ts +2 -2
  494. package/lib/components/config-provider/src/hooks/use-global-config.d.ts +1 -1
  495. package/lib/components/date-picker/src/date-picker.d.ts +9 -9
  496. package/lib/components/date-picker/src/props.d.ts +3 -3
  497. package/lib/components/date-picker-panel/src/composables/use-basic-date-table.d.ts +1 -1
  498. package/lib/components/date-picker-panel/src/date-picker-com/panel-date-pick.vue.d.ts +1 -1
  499. package/lib/components/date-picker-panel/src/date-picker-com/panel-date-range.vue.d.ts +1 -1
  500. package/lib/components/date-picker-panel/src/date-picker-com/panel-month-range.vue.d.ts +1 -1
  501. package/lib/components/date-picker-panel/src/date-picker-com/panel-quarter-range.vue.d.ts +1 -1
  502. package/lib/components/date-picker-panel/src/date-picker-com/panel-year-range.vue.d.ts +1 -1
  503. package/lib/components/date-picker-panel/src/date-picker-panel.d.ts +5 -5
  504. package/lib/components/date-picker-panel/src/panel-utils.d.ts +9 -9
  505. package/lib/components/date-picker-panel/src/props/date-picker-panel.d.ts +1 -1
  506. package/lib/components/descriptions/src/description-item.d.ts +18 -18
  507. package/lib/components/descriptions/src/description.d.ts +1 -1
  508. package/lib/components/descriptions/src/description.vue.d.ts +1 -1
  509. package/lib/components/dialog/src/dialog.vue.d.ts +2 -2
  510. package/lib/components/divider/src/divider.d.ts +1 -1
  511. package/lib/components/drawer/src/drawer.vue.d.ts +3 -3
  512. package/lib/components/dropdown/src/dropdown-menu.vue.d.ts +1 -1
  513. package/lib/components/dropdown/src/dropdown.d.ts +4 -4
  514. package/lib/components/dropdown/src/dropdown.vue.d.ts +59 -59
  515. package/lib/components/form/src/form-item.d.ts +1 -1
  516. package/lib/components/form/src/form-item.vue.d.ts +1 -1
  517. package/lib/components/form/src/form.d.ts +2 -2
  518. package/lib/components/form/src/hooks/use-form-common-props.d.ts +2 -2
  519. package/lib/components/image/src/image.vue.d.ts +2 -2
  520. package/lib/components/input/src/input.d.ts +3 -3
  521. package/lib/components/input/src/input.vue.d.ts +1 -1
  522. package/lib/components/input-number/src/input-number.d.ts +3 -3
  523. package/lib/components/input-number/src/input-number.vue.d.ts +1 -1
  524. package/lib/components/input-otp/src/input-otp.vue.d.ts +1 -1
  525. package/lib/components/input-tag/src/composables/use-input-tag.d.ts +1 -1
  526. package/lib/components/input-tag/src/input-tag.d.ts +4 -4
  527. package/lib/components/input-tag/src/input-tag.vue.d.ts +2 -2
  528. package/lib/components/link/src/link.d.ts +1 -1
  529. package/lib/components/link/src/link.vue.d.ts +1 -1
  530. package/lib/components/mention/src/mention.d.ts +4 -4
  531. package/lib/components/menu/src/menu.d.ts +5 -5
  532. package/lib/components/message/src/instance.d.ts +1 -1
  533. package/lib/components/message/src/message.d.ts +2 -2
  534. package/lib/components/message/src/message.vue.d.ts +1 -1
  535. package/lib/components/message-box/src/index.vue.d.ts +28 -28
  536. package/lib/components/notification/src/notification.d.ts +1 -1
  537. package/lib/components/notification/src/notification.vue.d.ts +3 -3
  538. package/lib/components/page-header/src/page-header.vue.d.ts +1 -1
  539. package/lib/components/pagination/src/components/jumper.d.ts +1 -1
  540. package/lib/components/pagination/src/components/jumper.vue.d.ts +2 -2
  541. package/lib/components/pagination/src/components/sizes.d.ts +1 -1
  542. package/lib/components/pagination/src/components/sizes.vue.d.ts +2 -2
  543. package/lib/components/pagination/src/pagination.d.ts +5 -5
  544. package/lib/components/popconfirm/src/popconfirm.d.ts +2 -2
  545. package/lib/components/popconfirm/src/popconfirm.vue.d.ts +1 -1
  546. package/lib/components/popover/src/popover.d.ts +17 -17
  547. package/lib/components/popover/src/popover.vue.d.ts +5 -5
  548. package/lib/components/popper/src/composables/use-content.d.ts +2 -2
  549. package/lib/components/popper/src/content.d.ts +4 -4
  550. package/lib/components/popper/src/content.vue.d.ts +3 -3
  551. package/lib/components/popper/src/popper.d.ts +2 -2
  552. package/lib/components/progress/src/progress.d.ts +1 -1
  553. package/lib/components/progress/src/progress.vue.d.ts +1 -1
  554. package/lib/components/radio/src/radio-button.d.ts +4 -4
  555. package/lib/components/radio/src/radio-button.vue.d.ts +2 -2
  556. package/lib/components/radio/src/radio-group.d.ts +1 -1
  557. package/lib/components/radio/src/radio-group.vue.d.ts +2 -2
  558. package/lib/components/radio/src/radio.d.ts +8 -8
  559. package/lib/components/radio/src/radio.vue.d.ts +3 -3
  560. package/lib/components/radio/src/use-radio.d.ts +1 -1
  561. package/lib/components/rate/src/rate.d.ts +1 -1
  562. package/lib/components/result/src/result.d.ts +1 -1
  563. package/lib/components/row/src/row.d.ts +2 -2
  564. package/lib/components/row/src/row.vue.d.ts +1 -1
  565. package/lib/components/scrollbar/src/scrollbar.vue.d.ts +2 -2
  566. package/lib/components/segmented/index.d.ts +1 -1
  567. package/lib/components/segmented/src/segmented.d.ts +2 -2
  568. package/lib/components/select/src/option.d.ts +2 -2
  569. package/lib/components/select/src/option.vue.d.ts +5 -5
  570. package/lib/components/select/src/select.d.ts +6 -6
  571. package/lib/components/select/src/select.vue.d.ts +60 -60
  572. package/lib/components/select/src/useOption.d.ts +2 -2
  573. package/lib/components/select/src/useSelect.d.ts +6 -6
  574. package/lib/components/select-v2/src/defaults.d.ts +4 -4
  575. package/lib/components/select-v2/src/select.vue.d.ts +40 -40
  576. package/lib/components/select-v2/src/useSelect.d.ts +1 -1
  577. package/lib/components/skeleton/src/skeleton.vue.d.ts +1 -1
  578. package/lib/components/slider/src/slider.d.ts +2 -2
  579. package/lib/components/slider/src/slider.vue.d.ts +6 -6
  580. package/lib/components/space/src/space.d.ts +5 -5
  581. package/lib/components/splitter/src/splitter.vue.d.ts +2 -2
  582. package/lib/components/steps/src/item.d.ts +1 -1
  583. package/lib/components/steps/src/steps.d.ts +2 -2
  584. package/lib/components/switch/src/switch.d.ts +1 -1
  585. package/lib/components/switch/src/switch.vue.d.ts +2 -2
  586. package/lib/components/table/src/filter-panel.vue.d.ts +36 -36
  587. package/lib/components/table/src/table/defaults.d.ts +6 -6
  588. package/lib/components/table/src/table/style-helper.d.ts +2 -2
  589. package/lib/components/table/src/table-column/defaults.d.ts +2 -2
  590. package/lib/components/table/src/table-header/index.d.ts +7 -7
  591. package/lib/components/table/src/table.vue.d.ts +3 -3
  592. package/lib/components/table-v2/src/table-v2.d.ts +1 -1
  593. package/lib/components/tabs/src/tab-nav.d.ts +1 -1
  594. package/lib/components/tabs/src/tabs.d.ts +5 -5
  595. package/lib/components/tag/src/tag.d.ts +3 -3
  596. package/lib/components/tag/src/tag.vue.d.ts +2 -2
  597. package/lib/components/text/src/text.d.ts +2 -2
  598. package/lib/components/text/src/text.vue.d.ts +1 -1
  599. package/lib/components/time-picker/src/common/picker-range-trigger.vue.d.ts +2 -2
  600. package/lib/components/time-picker/src/common/picker.js.map +1 -1
  601. package/lib/components/time-picker/src/common/picker.vue.d.ts +9 -9
  602. package/lib/components/time-picker/src/common/picker.vue_vue_type_script_setup_true_lang.js +16 -5
  603. package/lib/components/time-picker/src/common/picker.vue_vue_type_script_setup_true_lang.js.map +1 -1
  604. package/lib/components/time-picker/src/common/props.d.ts +3 -3
  605. package/lib/components/time-picker/src/time-picker-com/panel-time-pick.vue.d.ts +2 -2
  606. package/lib/components/time-picker/src/time-picker-com/panel-time-range.vue.d.ts +2 -2
  607. package/lib/components/time-picker/src/time-picker.d.ts +9 -9
  608. package/lib/components/time-select/src/time-select.d.ts +1 -1
  609. package/lib/components/time-select/src/time-select.vue.d.ts +2 -2
  610. package/lib/components/timeline/src/timeline-item.d.ts +3 -3
  611. package/lib/components/timeline/src/timeline-item.vue.d.ts +1 -1
  612. package/lib/components/tooltip/src/content.d.ts +1 -1
  613. package/lib/components/tooltip/src/content.vue.d.ts +4 -4
  614. package/lib/components/tooltip/src/tooltip.d.ts +3 -3
  615. package/lib/components/tooltip/src/tooltip.vue.d.ts +6 -6
  616. package/lib/components/tooltip/src/trigger.d.ts +1 -1
  617. package/lib/components/tour/src/content.d.ts +2 -2
  618. package/lib/components/tour/src/mask.vue.d.ts +1 -1
  619. package/lib/components/tour/src/step.d.ts +1 -1
  620. package/lib/components/tour/src/tour.d.ts +1 -1
  621. package/lib/components/tree/src/tree-node.vue.d.ts +7 -7
  622. package/lib/components/tree/src/tree.vue.d.ts +8 -8
  623. package/lib/components/tree-select/src/tree-select-option.d.ts +5 -5
  624. package/lib/components/tree-select/src/tree-select.vue.d.ts +21 -21
  625. package/lib/components/tree-v2/src/composables/useTree.d.ts +12 -12
  626. package/lib/components/tree-v2/src/tree.vue.d.ts +4 -4
  627. package/lib/components/upload/src/upload-content.vue.d.ts +2 -2
  628. package/lib/components/upload/src/upload.vue.d.ts +2 -2
  629. package/lib/components/virtual-list/src/builders/build-grid.d.ts +5 -5
  630. package/lib/components/virtual-list/src/builders/build-list.d.ts +6 -6
  631. package/lib/components/virtual-list/src/components/dynamic-size-grid.d.ts +5 -5
  632. package/lib/components/virtual-list/src/components/dynamic-size-list.d.ts +6 -6
  633. package/lib/components/virtual-list/src/components/fixed-size-grid.d.ts +5 -5
  634. package/lib/components/virtual-list/src/components/fixed-size-list.d.ts +6 -6
  635. package/lib/components/virtual-list/src/components/scrollbar.d.ts +1 -1
  636. package/lib/components/watermark/src/watermark.vue.d.ts +1 -1
  637. package/lib/hooks/use-floating/index.d.ts +4 -4
  638. package/lib/hooks/use-popper/index.d.ts +2 -2
  639. package/lib/hooks/use-size/index.d.ts +3 -3
  640. package/lib/version.d.ts +1 -1
  641. package/lib/version.js +1 -1
  642. package/lib/version.js.map +1 -1
  643. package/package.json +2 -2
  644. package/theme-chalk/src/table.scss +0 -0
  645. package/web-types.json +1 -1
@@ -1 +1 @@
1
- {"version":3,"file":"picker.js","names":[],"sources":["../../../../../../../packages/components/time-picker/src/common/picker.vue"],"sourcesContent":["<template>\n <el-tooltip\n ref=\"refPopper\"\n :visible=\"pickerVisible\"\n effect=\"light\"\n pure\n trigger=\"click\"\n v-bind=\"$attrs\"\n role=\"dialog\"\n teleported\n :transition=\"`${nsDate.namespace.value}-zoom-in-top`\"\n :popper-class=\"[`${nsDate.namespace.value}-picker__popper`, popperClass!]\"\n :popper-style=\"popperStyle\"\n :popper-options=\"elPopperOptions\"\n :fallback-placements=\"fallbackPlacements\"\n :gpu-acceleration=\"false\"\n :placement=\"placement\"\n :stop-popper-mouse-event=\"false\"\n :hide-after=\"0\"\n persistent\n @before-show=\"onBeforeShow\"\n @show=\"onShow\"\n @hide=\"onHide\"\n >\n <template #default>\n <el-input\n v-if=\"!isRangeInput\"\n :id=\"\n // https://github.com/vuejs/language-tools/issues/2104#issuecomment-3092541527\n id as string\n \"\n ref=\"inputRef\"\n container-role=\"combobox\"\n :model-value=\"\n // https://github.com/vuejs/language-tools/issues/2104#issuecomment-3092541527\n displayValue as string\n \"\n :name=\"\n // https://github.com/vuejs/language-tools/issues/2104#issuecomment-3092541527\n name as string\n \"\n :size=\"pickerSize\"\n :disabled=\"pickerDisabled\"\n :placeholder=\"placeholder\"\n :class=\"[\n nsDate.b('editor'),\n nsDate.bm('editor', type),\n nsDate.is('focus', pickerVisible),\n $attrs.class,\n ]\"\n :style=\"$attrs.style\"\n :readonly=\"\n !editable ||\n readonly ||\n isDatesPicker ||\n isMonthsPicker ||\n isYearsPicker ||\n isQuartersPicker ||\n type === 'week'\n \"\n :aria-label=\"ariaLabel\"\n :tabindex=\"tabindex\"\n :validate-event=\"false\"\n @input=\"onUserInput\"\n @focus=\"handleFocus\"\n @blur=\"handleBlur\"\n @keydown=\"handleKeydownInput\"\n @change=\"handleChange\"\n @mousedown=\"onMouseDownInput\"\n @mouseenter=\"onMouseEnter\"\n @mouseleave=\"onMouseLeave\"\n @touchstart.passive=\"onTouchStartInput\"\n @click.stop\n >\n <template #prefix>\n <el-icon\n v-if=\"triggerIcon\"\n :class=\"nsInput.e('icon')\"\n @mousedown.prevent=\"onMouseDownInput\"\n @touchstart.passive=\"onTouchStartInput\"\n >\n <component :is=\"triggerIcon\" />\n </el-icon>\n </template>\n <template #suffix>\n <el-icon\n v-if=\"showClearBtn && clearIcon\"\n :class=\"`${nsInput.e('icon')} clear-icon`\"\n @mousedown.prevent=\"NOOP\"\n @click=\"onClear\"\n >\n <component :is=\"clearIcon\" />\n </el-icon>\n </template>\n </el-input>\n <picker-range-trigger\n v-else\n :id=\"\n // https://github.com/vuejs/language-tools/issues/2104#issuecomment-3092541527\n id as string[]\n \"\n ref=\"inputRef\"\n :model-value=\"displayValue\"\n :name=\"\n // https://github.com/vuejs/language-tools/issues/2104#issuecomment-3092541527\n name as string[]\n \"\n :disabled=\"pickerDisabled\"\n :readonly=\"!editable || readonly\"\n :start-placeholder=\"startPlaceholder\"\n :end-placeholder=\"endPlaceholder\"\n :class=\"rangeInputKls\"\n :style=\"$attrs.style\"\n :aria-label=\"ariaLabel\"\n :tabindex=\"tabindex\"\n autocomplete=\"off\"\n role=\"combobox\"\n @click=\"onMouseDownInput\"\n @focus=\"handleFocus\"\n @blur=\"handleBlur\"\n @start-input=\"handleStartInput\"\n @start-change=\"handleStartChange\"\n @end-input=\"handleEndInput\"\n @end-change=\"handleEndChange\"\n @mousedown=\"onMouseDownInput\"\n @mouseenter=\"onMouseEnter\"\n @mouseleave=\"onMouseLeave\"\n @touchstart.passive=\"onTouchStartInput\"\n @keydown=\"handleKeydownInput\"\n >\n <template #prefix>\n <el-icon\n v-if=\"triggerIcon\"\n :class=\"[nsInput.e('icon'), nsRange.e('icon')]\"\n >\n <component :is=\"triggerIcon\" />\n </el-icon>\n </template>\n <template #range-separator>\n <slot name=\"range-separator\">\n <span :class=\"nsRange.b('separator')\">{{ rangeSeparator }}</span>\n </slot>\n </template>\n <template #suffix>\n <el-icon\n v-if=\"clearIcon\"\n :class=\"clearIconKls\"\n @mousedown.prevent=\"NOOP\"\n @click=\"onClear\"\n >\n <component :is=\"clearIcon\" />\n </el-icon>\n </template>\n </picker-range-trigger>\n </template>\n <template #content>\n <slot\n :visible=\"pickerVisible\"\n :actual-visible=\"pickerActualVisible\"\n :parsed-value=\"parsedValue\"\n :format=\"format\"\n :date-format=\"dateFormat\"\n :time-format=\"timeFormat\"\n :unlink-panels=\"unlinkPanels\"\n :type=\"type\"\n :default-value=\"defaultValue\"\n :show-now=\"showNow\"\n :show-confirm=\"showConfirm\"\n :show-footer=\"showFooter\"\n :show-week-number=\"showWeekNumber\"\n :single-panel=\"singlePanel\"\n @pick=\"onPick\"\n @select-range=\"setSelectionRange\"\n @set-picker-option=\"onSetPickerOption\"\n @calendar-change=\"onCalendarChange\"\n @clear=\"onClear\"\n @panel-change=\"onPanelChange\"\n @mousedown.stop\n />\n </template>\n </el-tooltip>\n</template>\n\n<script lang=\"ts\" setup>\nimport {\n computed,\n inject,\n nextTick,\n onBeforeUnmount,\n provide,\n ref,\n unref,\n useAttrs,\n watch,\n} from 'vue'\nimport { onClickOutside, unrefElement } from '@vueuse/core'\nimport {\n useEmptyValues,\n useFocusController,\n useNamespace,\n} from '@element-plus/hooks'\nimport {\n useFormDisabled,\n useFormItem,\n useFormSize,\n} from '@element-plus/components/form'\nimport ElInput from '@element-plus/components/input'\nimport ElIcon from '@element-plus/components/icon'\nimport ElTooltip from '@element-plus/components/tooltip'\nimport { NOOP, debugWarn, getEventCode, isArray } from '@element-plus/utils'\nimport {\n CHANGE_EVENT,\n EVENT_CODE,\n UPDATE_MODEL_EVENT,\n} from '@element-plus/constants'\nimport { Calendar, Clock } from '@element-plus/icons-vue'\nimport { dayOrDaysToDate, valueEquals } from '../utils'\nimport {\n PICKER_BASE_INJECTION_KEY,\n PICKER_POPPER_OPTIONS_INJECTION_KEY,\n ROOT_COMMON_PICKER_INJECTION_KEY,\n} from '../constants'\nimport { useCommonPicker } from '../composables/use-common-picker'\nimport { timePickerDefaultProps } from './props'\nimport PickerRangeTrigger from './picker-range-trigger.vue'\n\nimport type { InputInstance } from '@element-plus/components/input'\nimport type { Dayjs } from 'dayjs'\nimport type { ComponentPublicInstance, Ref } from 'vue'\nimport type { Options } from '@popperjs/core'\nimport type { DayOrDays, TimePickerDefaultProps, UserInput } from './props'\nimport type { TooltipInstance } from '@element-plus/components/tooltip'\n\ndefineOptions({\n name: 'Picker',\n})\n\nconst props = defineProps(timePickerDefaultProps)\nconst emit = defineEmits([\n UPDATE_MODEL_EVENT,\n CHANGE_EVENT,\n 'focus',\n 'blur',\n 'clear',\n 'calendar-change',\n 'panel-change',\n 'visible-change',\n 'keydown',\n])\nconst attrs = useAttrs()\n\nconst nsDate = useNamespace('date')\nconst nsInput = useNamespace('input')\nconst nsRange = useNamespace('range')\n\nconst { formItem } = useFormItem()\nconst elPopperOptions = inject(\n PICKER_POPPER_OPTIONS_INJECTION_KEY,\n {} as Options\n)\nconst emptyValues = useEmptyValues(props, null)\n\nconst refPopper = ref<TooltipInstance>()\nconst inputRef = ref<InputInstance>()\nconst valueOnOpen = ref<TimePickerDefaultProps['modelValue'] | null>(null)\nlet hasJustTabExitedInput = false\n\nconst pickerDisabled = useFormDisabled()\n\nconst commonPicker = useCommonPicker(props, emit)\nconst {\n parsedValue,\n pickerActualVisible,\n userInput,\n pickerVisible,\n pickerOptions,\n valueIsEmpty,\n emitInput,\n onPick,\n onSetPickerOption,\n onCalendarChange,\n onPanelChange,\n} = commonPicker\n\nconst { isFocused, handleFocus, handleBlur } = useFocusController(inputRef, {\n disabled: pickerDisabled,\n beforeFocus() {\n return props.readonly\n },\n afterFocus() {\n if (!props.automaticDropdown) return\n pickerVisible.value = true\n },\n beforeBlur(event) {\n return (\n !hasJustTabExitedInput && refPopper.value?.isFocusInsideContent(event)\n )\n },\n afterBlur() {\n if (isTimePicker.value && !props.saveOnBlur) {\n if (!valueIsEmpty.value) {\n pickerOptions.value.handleCancel?.()\n }\n } else {\n handleChange()\n }\n pickerVisible.value = false\n hasJustTabExitedInput = false\n props.validateEvent && formItem?.validate('blur').catch(NOOP)\n },\n})\n\nconst hovering = ref(false)\n\nconst rangeInputKls = computed(() => [\n nsDate.b('editor'),\n nsDate.bm('editor', props.type),\n nsInput.e('wrapper'),\n nsDate.is('disabled', pickerDisabled.value),\n nsDate.is('active', pickerVisible.value),\n nsRange.b('editor'),\n pickerSize ? nsRange.bm('editor', pickerSize.value) : '',\n attrs.class,\n])\n\nconst clearIconKls = computed(() => [\n nsInput.e('icon'),\n nsRange.e('close-icon'),\n !showClearBtn.value ? nsRange.em('close-icon', 'hidden') : '',\n])\n\nwatch(pickerVisible, (val) => {\n if (!val) {\n userInput.value = null\n nextTick(() => {\n emitChange(props.modelValue)\n })\n } else {\n nextTick(() => {\n if (val) {\n valueOnOpen.value = props.modelValue\n }\n })\n }\n})\nconst emitChange = (\n val: TimePickerDefaultProps['modelValue'] | null,\n isClear?: boolean\n) => {\n // determine user real change only\n if (isClear || !valueEquals(val, valueOnOpen.value)) {\n emit(CHANGE_EVENT, val)\n // Set the value of valueOnOpen when clearing to avoid triggering change events multiple times.\n isClear && (valueOnOpen.value = val)\n props.validateEvent && formItem?.validate('change').catch(NOOP)\n }\n}\nconst emitKeydown = (e: KeyboardEvent) => {\n emit('keydown', e)\n}\n\nconst refInput = computed<HTMLInputElement[]>(() => {\n if (inputRef.value) {\n return Array.from<HTMLInputElement>(\n inputRef.value.$el.querySelectorAll('input')\n )\n }\n return []\n})\n\n// @ts-ignore\nconst setSelectionRange = (start: number, end: number, pos?: 'min' | 'max') => {\n const _inputs = refInput.value\n if (!_inputs.length) return\n if (!pos || pos === 'min') {\n _inputs[0].setSelectionRange(start, end)\n _inputs[0].focus()\n } else if (pos === 'max') {\n _inputs[1].setSelectionRange(start, end)\n _inputs[1].focus()\n }\n}\n\nconst onBeforeShow = () => {\n pickerActualVisible.value = true\n}\n\nconst onShow = () => {\n emit('visible-change', true)\n}\n\nconst onHide = () => {\n pickerActualVisible.value = false\n pickerVisible.value = false\n emit('visible-change', false)\n}\n\nconst handleOpen = () => {\n pickerVisible.value = true\n}\n\nconst handleClose = () => {\n pickerVisible.value = false\n}\n\nconst displayValue = computed<UserInput>(() => {\n const formattedValue = formatToString(parsedValue.value)\n if (isArray(userInput.value)) {\n return [\n userInput.value[0] ?? (formattedValue && formattedValue[0]) ?? '',\n userInput.value[1] ?? (formattedValue && formattedValue[1]) ?? '',\n ]\n } else if (userInput.value !== null) {\n return userInput.value\n }\n if (isTimePicker.value && valueIsEmpty.value && !props.saveOnBlur) return ''\n if (!isTimePicker.value && valueIsEmpty.value) return ''\n if (!pickerVisible.value && valueIsEmpty.value) return ''\n if (formattedValue) {\n return isDatesPicker.value ||\n isMonthsPicker.value ||\n isYearsPicker.value ||\n isQuartersPicker.value\n ? (formattedValue as Array<string>).join(', ')\n : formattedValue\n }\n return ''\n})\n\nconst isTimeLikePicker = computed(() => props.type.includes('time'))\n\nconst isTimePicker = computed(() => props.type.startsWith('time'))\n\nconst isDatesPicker = computed(() => props.type === 'dates')\n\nconst isMonthsPicker = computed(() => props.type === 'months')\n\nconst isYearsPicker = computed(() => props.type === 'years')\n\nconst isQuartersPicker = computed(() => props.type === 'quarters')\n\nconst triggerIcon = computed(\n () => props.prefixIcon || (isTimeLikePicker.value ? Clock : Calendar)\n)\n\nconst showClearBtn = computed(\n () =>\n props.clearable &&\n !pickerDisabled.value &&\n !props.readonly &&\n !valueIsEmpty.value &&\n (hovering.value || isFocused.value)\n)\n\nconst onClear = (event?: MouseEvent) => {\n if (props.readonly || pickerDisabled.value) return\n if (showClearBtn.value) {\n event?.stopPropagation()\n // When the handleClear Function was provided, emit null will be executed inside it\n // There is no need for us to execute emit null twice. #14752\n if (pickerOptions.value.handleClear) {\n pickerOptions.value.handleClear()\n } else {\n emitInput(emptyValues.valueOnClear.value)\n }\n emitChange(emptyValues.valueOnClear.value, true)\n onHide()\n }\n emit('clear')\n}\n\nconst onMouseDownInput = async (event: MouseEvent) => {\n if (props.readonly || pickerDisabled.value) return\n if (\n (event.target as HTMLElement)?.tagName !== 'INPUT' ||\n isFocused.value ||\n !props.automaticDropdown\n ) {\n pickerVisible.value = true\n }\n}\nconst onMouseEnter = () => {\n if (props.readonly || pickerDisabled.value) return\n if (!valueIsEmpty.value && props.clearable) {\n hovering.value = true\n }\n}\nconst onMouseLeave = () => {\n hovering.value = false\n}\n\nconst onTouchStartInput = (event: TouchEvent) => {\n if (props.readonly || pickerDisabled.value) return\n if (\n (event.touches[0].target as HTMLElement)?.tagName !== 'INPUT' ||\n isFocused.value ||\n !props.automaticDropdown\n ) {\n pickerVisible.value = true\n }\n}\n\nconst isRangeInput = computed(() => {\n return props.type.includes('range')\n})\n\nconst pickerSize = useFormSize()\n\nconst popperEl = computed(() => unref(refPopper)?.popperRef?.contentRef)\n\nconst stophandle = onClickOutside(\n inputRef as Ref<ComponentPublicInstance>,\n (e: PointerEvent) => {\n const unrefedPopperEl = unref(popperEl)\n const inputEl = unrefElement(inputRef as Ref<ComponentPublicInstance>)\n if (\n (unrefedPopperEl &&\n (e.target === unrefedPopperEl ||\n e.composedPath().includes(unrefedPopperEl))) ||\n e.target === inputEl ||\n (inputEl && e.composedPath().includes(inputEl))\n )\n return\n pickerVisible.value = false\n }\n)\n\nonBeforeUnmount(() => {\n stophandle?.()\n})\n\nconst handleChange = () => {\n if (isTimePicker.value && !props.saveOnBlur) return\n\n const isRangeEmpty =\n isArray(userInput.value) && userInput.value.every((v) => v === '')\n\n if (userInput.value && !isRangeEmpty) {\n const value = parseUserInputToDayjs(displayValue.value)\n if (value) {\n if (isValidValue(value)) {\n emitInput(dayOrDaysToDate(value))\n }\n userInput.value = null\n }\n }\n if (userInput.value === '' || isRangeEmpty) {\n emitInput(emptyValues.valueOnClear.value)\n emitChange(emptyValues.valueOnClear.value, true)\n userInput.value = null\n }\n}\n\nconst parseUserInputToDayjs = (value: UserInput) => {\n if (!value) return null\n return pickerOptions.value.parseUserInput!(value)\n}\n\nconst formatToString = (value: DayOrDays) => {\n if (!value) return null\n const res = isArray(value)\n ? value.map((_) => _.format(props.format))\n : value.format(props.format)\n return res as UserInput\n}\n\nconst isValidValue = (value: DayOrDays) => {\n return pickerOptions.value.isValidValue!(value)\n}\n\nconst handleKeydownInput = async (event: Event | KeyboardEvent) => {\n if (props.readonly || pickerDisabled.value) return\n\n const code = getEventCode(event as KeyboardEvent)\n emitKeydown(event as KeyboardEvent)\n if (code === EVENT_CODE.esc) {\n if (pickerVisible.value === true) {\n pickerVisible.value = false\n event.preventDefault()\n event.stopPropagation()\n }\n return\n }\n\n if (code === EVENT_CODE.down) {\n if (pickerOptions.value.handleFocusPicker) {\n event.preventDefault()\n event.stopPropagation()\n }\n if (pickerVisible.value === false) {\n pickerVisible.value = true\n await nextTick()\n }\n if (pickerOptions.value.handleFocusPicker) {\n pickerOptions.value.handleFocusPicker()\n return\n }\n }\n\n if (code === EVENT_CODE.tab) {\n hasJustTabExitedInput = true\n return\n }\n\n if (code === EVENT_CODE.enter || code === EVENT_CODE.numpadEnter) {\n if (!pickerVisible.value) {\n pickerVisible.value = true\n } else if (\n userInput.value === null ||\n userInput.value === '' ||\n isValidValue(parseUserInputToDayjs(displayValue.value) as DayOrDays)\n ) {\n handleChange()\n pickerVisible.value = false\n } else {\n if (\n !isValidValue(parseUserInputToDayjs(displayValue.value) as DayOrDays)\n ) {\n debugWarn(\n 'Picker',\n `Invalid user input: ${displayValue.value}. Please check the format of the input.`\n )\n }\n }\n event.preventDefault()\n event.stopPropagation()\n return\n }\n\n // if user is typing, do not let picker handle key input\n if (userInput.value) {\n event.stopPropagation()\n return\n }\n if (pickerOptions.value.handleKeydownInput) {\n pickerOptions.value.handleKeydownInput(event as KeyboardEvent)\n }\n}\nconst onUserInput = (e: string) => {\n userInput.value = e\n // Temporary fix when the picker is dismissed and the input box\n // is focused, just mimic the behavior of antdesign.\n if (!pickerVisible.value) {\n pickerVisible.value = true\n }\n}\n\nconst handleStartInput = (event: Event) => {\n const target = event.target as HTMLInputElement\n if (userInput.value) {\n userInput.value = [target.value, userInput.value[1]]\n } else {\n userInput.value = [target.value, null]\n }\n}\n\nconst handleEndInput = (event: Event) => {\n const target = event.target as HTMLInputElement\n if (userInput.value) {\n userInput.value = [userInput.value[0], target.value]\n } else {\n userInput.value = [null, target.value]\n }\n}\n\nconst handleStartChange = () => {\n const values = userInput.value as string[]\n const value = parseUserInputToDayjs(values && values[0]) as Dayjs\n const parsedVal = unref(parsedValue) as [Dayjs, Dayjs]\n if (value && value.isValid()) {\n userInput.value = [\n formatToString(value) as string,\n displayValue.value?.[1] || null,\n ]\n const newValue = [value, parsedVal && (parsedVal[1] || null)] as DayOrDays\n if (isValidValue(newValue)) {\n emitInput(dayOrDaysToDate(newValue))\n userInput.value = null\n }\n }\n}\n\nconst handleEndChange = () => {\n const values = unref(userInput) as string[]\n const value = parseUserInputToDayjs(values && values[1]) as Dayjs\n const parsedVal = unref(parsedValue) as [Dayjs, Dayjs]\n if (value && value.isValid()) {\n userInput.value = [\n unref(displayValue)?.[0] || null,\n formatToString(value) as string,\n ]\n const newValue = [parsedVal && parsedVal[0], value] as DayOrDays\n if (isValidValue(newValue)) {\n emitInput(dayOrDaysToDate(newValue))\n userInput.value = null\n }\n }\n}\n\nconst focus = () => {\n inputRef.value?.focus()\n}\n\nconst blur = () => {\n inputRef.value?.blur()\n}\n\nprovide(PICKER_BASE_INJECTION_KEY, {\n props,\n emptyValues,\n})\nprovide(ROOT_COMMON_PICKER_INJECTION_KEY, commonPicker)\n\ndefineExpose({\n /**\n * @description focus input box.\n */\n focus,\n /**\n * @description blur input box.\n */\n blur,\n /**\n * @description opens picker\n */\n handleOpen,\n /**\n * @description closes picker\n */\n handleClose,\n /**\n * @description pick item manually\n */\n onPick,\n})\n</script>\n"],"mappings":""}
1
+ {"version":3,"file":"picker.js","names":[],"sources":["../../../../../../../packages/components/time-picker/src/common/picker.vue"],"sourcesContent":["<template>\n <el-tooltip\n ref=\"refPopper\"\n :visible=\"pickerVisible\"\n effect=\"light\"\n pure\n trigger=\"click\"\n v-bind=\"$attrs\"\n role=\"dialog\"\n teleported\n :transition=\"`${nsDate.namespace.value}-zoom-in-top`\"\n :popper-class=\"[`${nsDate.namespace.value}-picker__popper`, popperClass!]\"\n :popper-style=\"popperStyle\"\n :popper-options=\"elPopperOptions\"\n :fallback-placements=\"fallbackPlacements\"\n :gpu-acceleration=\"false\"\n :placement=\"placement\"\n :stop-popper-mouse-event=\"false\"\n :hide-after=\"0\"\n persistent\n @before-show=\"onBeforeShow\"\n @show=\"onShow\"\n @hide=\"onHide\"\n >\n <template #default>\n <el-input\n v-if=\"!isRangeInput\"\n :id=\"\n // https://github.com/vuejs/language-tools/issues/2104#issuecomment-3092541527\n id as string\n \"\n ref=\"inputRef\"\n container-role=\"combobox\"\n :model-value=\"\n // https://github.com/vuejs/language-tools/issues/2104#issuecomment-3092541527\n displayValue as string\n \"\n :name=\"\n // https://github.com/vuejs/language-tools/issues/2104#issuecomment-3092541527\n name as string\n \"\n :size=\"pickerSize\"\n :disabled=\"pickerDisabled\"\n :placeholder=\"placeholder\"\n :class=\"[\n nsDate.b('editor'),\n nsDate.bm('editor', type),\n nsDate.is('focus', pickerVisible),\n $attrs.class,\n ]\"\n :style=\"$attrs.style\"\n :readonly=\"\n !editable ||\n readonly ||\n isDatesPicker ||\n isMonthsPicker ||\n isYearsPicker ||\n isQuartersPicker ||\n type === 'week'\n \"\n :aria-label=\"ariaLabel\"\n :tabindex=\"tabindex\"\n :validate-event=\"false\"\n @input=\"onUserInput\"\n @focus=\"handleFocus\"\n @blur=\"handleBlur\"\n @keydown=\"handleKeydownInput\"\n @change=\"handleChange\"\n @mousedown=\"onMouseDownInput\"\n @mouseenter=\"onMouseEnter\"\n @mouseleave=\"onMouseLeave\"\n @touchstart.passive=\"onTouchStartInput\"\n @click.stop\n >\n <template #prefix>\n <el-icon\n v-if=\"triggerIcon\"\n :class=\"nsInput.e('icon')\"\n @mousedown.prevent=\"onMouseDownInput\"\n @touchstart.passive=\"onTouchStartInput\"\n >\n <component :is=\"triggerIcon\" />\n </el-icon>\n </template>\n <template #suffix>\n <el-icon\n v-if=\"showClearBtn && clearIcon\"\n :class=\"`${nsInput.e('icon')} clear-icon`\"\n @mousedown.prevent=\"onClearIconMousedown\"\n @click=\"onClear\"\n >\n <component :is=\"clearIcon\" />\n </el-icon>\n </template>\n </el-input>\n <picker-range-trigger\n v-else\n :id=\"\n // https://github.com/vuejs/language-tools/issues/2104#issuecomment-3092541527\n id as string[]\n \"\n ref=\"inputRef\"\n :model-value=\"displayValue\"\n :name=\"\n // https://github.com/vuejs/language-tools/issues/2104#issuecomment-3092541527\n name as string[]\n \"\n :disabled=\"pickerDisabled\"\n :readonly=\"!editable || readonly\"\n :start-placeholder=\"startPlaceholder\"\n :end-placeholder=\"endPlaceholder\"\n :class=\"rangeInputKls\"\n :style=\"$attrs.style\"\n :aria-label=\"ariaLabel\"\n :tabindex=\"tabindex\"\n autocomplete=\"off\"\n role=\"combobox\"\n @click=\"onMouseDownInput\"\n @focus=\"handleFocus\"\n @blur=\"handleBlur\"\n @start-input=\"handleStartInput\"\n @start-change=\"handleStartChange\"\n @end-input=\"handleEndInput\"\n @end-change=\"handleEndChange\"\n @mousedown=\"onMouseDownInput\"\n @mouseenter=\"onMouseEnter\"\n @mouseleave=\"onMouseLeave\"\n @touchstart.passive=\"onTouchStartInput\"\n @keydown=\"handleKeydownInput\"\n >\n <template #prefix>\n <el-icon\n v-if=\"triggerIcon\"\n :class=\"[nsInput.e('icon'), nsRange.e('icon')]\"\n >\n <component :is=\"triggerIcon\" />\n </el-icon>\n </template>\n <template #range-separator>\n <slot name=\"range-separator\">\n <span :class=\"nsRange.b('separator')\">{{ rangeSeparator }}</span>\n </slot>\n </template>\n <template #suffix>\n <el-icon\n v-if=\"clearIcon\"\n :class=\"clearIconKls\"\n @mousedown.prevent=\"onClearIconMousedown\"\n @click=\"onClear\"\n >\n <component :is=\"clearIcon\" />\n </el-icon>\n </template>\n </picker-range-trigger>\n </template>\n <template #content>\n <slot\n :visible=\"pickerVisible\"\n :actual-visible=\"pickerActualVisible\"\n :parsed-value=\"parsedValue\"\n :format=\"format\"\n :date-format=\"dateFormat\"\n :time-format=\"timeFormat\"\n :unlink-panels=\"unlinkPanels\"\n :type=\"type\"\n :default-value=\"defaultValue\"\n :show-now=\"showNow\"\n :show-confirm=\"showConfirm\"\n :show-footer=\"showFooter\"\n :show-week-number=\"showWeekNumber\"\n :single-panel=\"singlePanel\"\n @pick=\"onPick\"\n @select-range=\"setSelectionRange\"\n @set-picker-option=\"onSetPickerOption\"\n @calendar-change=\"onCalendarChange\"\n @clear=\"onClear\"\n @panel-change=\"onPanelChange\"\n @mousedown.stop\n />\n </template>\n </el-tooltip>\n</template>\n\n<script lang=\"ts\" setup>\nimport {\n computed,\n inject,\n nextTick,\n onBeforeUnmount,\n provide,\n ref,\n unref,\n useAttrs,\n watch,\n} from 'vue'\nimport { onClickOutside, unrefElement } from '@vueuse/core'\nimport {\n useEmptyValues,\n useFocusController,\n useNamespace,\n} from '@element-plus/hooks'\nimport {\n useFormDisabled,\n useFormItem,\n useFormSize,\n} from '@element-plus/components/form'\nimport ElInput from '@element-plus/components/input'\nimport ElIcon from '@element-plus/components/icon'\nimport ElTooltip from '@element-plus/components/tooltip'\nimport { NOOP, debugWarn, getEventCode, isArray } from '@element-plus/utils'\nimport {\n CHANGE_EVENT,\n EVENT_CODE,\n UPDATE_MODEL_EVENT,\n} from '@element-plus/constants'\nimport { Calendar, Clock } from '@element-plus/icons-vue'\nimport { dayOrDaysToDate, valueEquals } from '../utils'\nimport {\n PICKER_BASE_INJECTION_KEY,\n PICKER_POPPER_OPTIONS_INJECTION_KEY,\n ROOT_COMMON_PICKER_INJECTION_KEY,\n} from '../constants'\nimport { useCommonPicker } from '../composables/use-common-picker'\nimport { timePickerDefaultProps } from './props'\nimport PickerRangeTrigger from './picker-range-trigger.vue'\n\nimport type { InputInstance } from '@element-plus/components/input'\nimport type { Dayjs } from 'dayjs'\nimport type { ComponentPublicInstance, Ref } from 'vue'\nimport type { Options } from '@popperjs/core'\nimport type { DayOrDays, TimePickerDefaultProps, UserInput } from './props'\nimport type { TooltipInstance } from '@element-plus/components/tooltip'\n\ndefineOptions({\n name: 'Picker',\n})\n\nconst props = defineProps(timePickerDefaultProps)\nconst emit = defineEmits([\n UPDATE_MODEL_EVENT,\n CHANGE_EVENT,\n 'focus',\n 'blur',\n 'clear',\n 'calendar-change',\n 'panel-change',\n 'visible-change',\n 'keydown',\n])\nconst attrs = useAttrs()\n\nconst nsDate = useNamespace('date')\nconst nsInput = useNamespace('input')\nconst nsRange = useNamespace('range')\n\nconst { formItem } = useFormItem()\nconst elPopperOptions = inject(\n PICKER_POPPER_OPTIONS_INJECTION_KEY,\n {} as Options\n)\nconst emptyValues = useEmptyValues(props, null)\n\nconst refPopper = ref<TooltipInstance>()\nconst inputRef = ref<InputInstance>()\nconst valueOnOpen = ref<TimePickerDefaultProps['modelValue'] | null>(null)\nlet hasJustTabExitedInput = false\nlet isClearIconMousedown = false\n\nconst pickerDisabled = useFormDisabled()\n\nconst commonPicker = useCommonPicker(props, emit)\nconst {\n parsedValue,\n pickerActualVisible,\n userInput,\n pickerVisible,\n pickerOptions,\n valueIsEmpty,\n emitInput,\n onPick,\n onSetPickerOption,\n onCalendarChange,\n onPanelChange,\n} = commonPicker\n\nconst { isFocused, handleFocus, handleBlur } = useFocusController(inputRef, {\n disabled: pickerDisabled,\n beforeFocus() {\n return props.readonly\n },\n afterFocus() {\n if (!props.automaticDropdown) return\n // Clicking the clear icon focuses the input, which must not open the panel (#24826)\n if (isClearIconMousedown) {\n isClearIconMousedown = false\n return\n }\n pickerVisible.value = true\n },\n beforeBlur(event) {\n return (\n !hasJustTabExitedInput && refPopper.value?.isFocusInsideContent(event)\n )\n },\n afterBlur() {\n if (isTimePicker.value && !props.saveOnBlur) {\n if (!valueIsEmpty.value) {\n pickerOptions.value.handleCancel?.()\n }\n } else {\n handleChange()\n }\n pickerVisible.value = false\n hasJustTabExitedInput = false\n isClearIconMousedown = false\n props.validateEvent && formItem?.validate('blur').catch(NOOP)\n },\n})\n\nconst hovering = ref(false)\n\nconst rangeInputKls = computed(() => [\n nsDate.b('editor'),\n nsDate.bm('editor', props.type),\n nsInput.e('wrapper'),\n nsDate.is('disabled', pickerDisabled.value),\n nsDate.is('active', pickerVisible.value),\n nsRange.b('editor'),\n pickerSize ? nsRange.bm('editor', pickerSize.value) : '',\n attrs.class,\n])\n\nconst clearIconKls = computed(() => [\n nsInput.e('icon'),\n nsRange.e('close-icon'),\n !showClearBtn.value ? nsRange.em('close-icon', 'hidden') : '',\n])\n\nwatch(pickerVisible, (val) => {\n if (!val) {\n userInput.value = null\n nextTick(() => {\n emitChange(props.modelValue)\n })\n } else {\n nextTick(() => {\n if (val) {\n valueOnOpen.value = props.modelValue\n }\n })\n }\n})\nconst emitChange = (\n val: TimePickerDefaultProps['modelValue'] | null,\n isClear?: boolean\n) => {\n // determine user real change only\n if (\n isClear ||\n !(\n valueEquals(val, valueOnOpen.value) ||\n // the parent may normalize the cleared value to another empty\n // representation, e.g. `null` to '' (#24826)\n (emptyValues.isEmptyValue(val) &&\n emptyValues.isEmptyValue(valueOnOpen.value))\n )\n ) {\n emit(CHANGE_EVENT, val)\n // Set the value of valueOnOpen when clearing to avoid triggering change events multiple times.\n isClear && (valueOnOpen.value = val)\n props.validateEvent && formItem?.validate('change').catch(NOOP)\n }\n}\nconst emitKeydown = (e: KeyboardEvent) => {\n emit('keydown', e)\n}\n\nconst refInput = computed<HTMLInputElement[]>(() => {\n if (inputRef.value) {\n return Array.from<HTMLInputElement>(\n inputRef.value.$el.querySelectorAll('input')\n )\n }\n return []\n})\n\n// @ts-ignore\nconst setSelectionRange = (start: number, end: number, pos?: 'min' | 'max') => {\n const _inputs = refInput.value\n if (!_inputs.length) return\n if (!pos || pos === 'min') {\n _inputs[0].setSelectionRange(start, end)\n _inputs[0].focus()\n } else if (pos === 'max') {\n _inputs[1].setSelectionRange(start, end)\n _inputs[1].focus()\n }\n}\n\nconst onBeforeShow = () => {\n pickerActualVisible.value = true\n}\n\nconst onShow = () => {\n emit('visible-change', true)\n}\n\nconst onHide = () => {\n pickerActualVisible.value = false\n pickerVisible.value = false\n emit('visible-change', false)\n}\n\nconst handleOpen = () => {\n pickerVisible.value = true\n}\n\nconst handleClose = () => {\n pickerVisible.value = false\n}\n\nconst displayValue = computed<UserInput>(() => {\n const formattedValue = formatToString(parsedValue.value)\n if (isArray(userInput.value)) {\n return [\n userInput.value[0] ?? (formattedValue && formattedValue[0]) ?? '',\n userInput.value[1] ?? (formattedValue && formattedValue[1]) ?? '',\n ]\n } else if (userInput.value !== null) {\n return userInput.value\n }\n if (isTimePicker.value && valueIsEmpty.value && !props.saveOnBlur) return ''\n if (!isTimePicker.value && valueIsEmpty.value) return ''\n if (!pickerVisible.value && valueIsEmpty.value) return ''\n if (formattedValue) {\n return isDatesPicker.value ||\n isMonthsPicker.value ||\n isYearsPicker.value ||\n isQuartersPicker.value\n ? (formattedValue as Array<string>).join(', ')\n : formattedValue\n }\n return ''\n})\n\nconst isTimeLikePicker = computed(() => props.type.includes('time'))\n\nconst isTimePicker = computed(() => props.type.startsWith('time'))\n\nconst isDatesPicker = computed(() => props.type === 'dates')\n\nconst isMonthsPicker = computed(() => props.type === 'months')\n\nconst isYearsPicker = computed(() => props.type === 'years')\n\nconst isQuartersPicker = computed(() => props.type === 'quarters')\n\nconst triggerIcon = computed(\n () => props.prefixIcon || (isTimeLikePicker.value ? Clock : Calendar)\n)\n\nconst showClearBtn = computed(\n () =>\n props.clearable &&\n !pickerDisabled.value &&\n !props.readonly &&\n !valueIsEmpty.value &&\n (hovering.value || isFocused.value)\n)\n\nconst onClearIconMousedown = () => {\n isClearIconMousedown = true\n}\n\nconst onClear = (event?: MouseEvent) => {\n if (props.readonly || pickerDisabled.value) return\n isClearIconMousedown = false\n if (showClearBtn.value) {\n event?.stopPropagation()\n // When the handleClear Function was provided, emit null will be executed inside it\n // There is no need for us to execute emit null twice. #14752\n if (pickerOptions.value.handleClear) {\n pickerOptions.value.handleClear()\n } else {\n emitInput(emptyValues.valueOnClear.value)\n }\n emitChange(emptyValues.valueOnClear.value, true)\n onHide()\n }\n emit('clear')\n}\n\nconst onMouseDownInput = async (event: MouseEvent) => {\n if (props.readonly || pickerDisabled.value) return\n if (\n (event.target as HTMLElement)?.tagName !== 'INPUT' ||\n isFocused.value ||\n !props.automaticDropdown\n ) {\n pickerVisible.value = true\n }\n}\nconst onMouseEnter = () => {\n if (props.readonly || pickerDisabled.value) return\n if (!valueIsEmpty.value && props.clearable) {\n hovering.value = true\n }\n}\nconst onMouseLeave = () => {\n hovering.value = false\n isClearIconMousedown = false\n}\n\nconst onTouchStartInput = (event: TouchEvent) => {\n if (props.readonly || pickerDisabled.value) return\n if (\n (event.touches[0].target as HTMLElement)?.tagName !== 'INPUT' ||\n isFocused.value ||\n !props.automaticDropdown\n ) {\n pickerVisible.value = true\n }\n}\n\nconst isRangeInput = computed(() => {\n return props.type.includes('range')\n})\n\nconst pickerSize = useFormSize()\n\nconst popperEl = computed(() => unref(refPopper)?.popperRef?.contentRef)\n\nconst stophandle = onClickOutside(\n inputRef as Ref<ComponentPublicInstance>,\n (e: PointerEvent) => {\n const unrefedPopperEl = unref(popperEl)\n const inputEl = unrefElement(inputRef as Ref<ComponentPublicInstance>)\n if (\n (unrefedPopperEl &&\n (e.target === unrefedPopperEl ||\n e.composedPath().includes(unrefedPopperEl))) ||\n e.target === inputEl ||\n (inputEl && e.composedPath().includes(inputEl))\n )\n return\n pickerVisible.value = false\n }\n)\n\nonBeforeUnmount(() => {\n stophandle?.()\n})\n\nconst handleChange = () => {\n if (isTimePicker.value && !props.saveOnBlur) return\n\n const isRangeEmpty =\n isArray(userInput.value) && userInput.value.every((v) => v === '')\n\n if (userInput.value && !isRangeEmpty) {\n const value = parseUserInputToDayjs(displayValue.value)\n if (value) {\n if (isValidValue(value)) {\n emitInput(dayOrDaysToDate(value))\n }\n userInput.value = null\n }\n }\n if (userInput.value === '' || isRangeEmpty) {\n emitInput(emptyValues.valueOnClear.value)\n emitChange(emptyValues.valueOnClear.value, true)\n userInput.value = null\n }\n}\n\nconst parseUserInputToDayjs = (value: UserInput) => {\n if (!value) return null\n return pickerOptions.value.parseUserInput!(value)\n}\n\nconst formatToString = (value: DayOrDays) => {\n if (!value) return null\n const res = isArray(value)\n ? value.map((_) => _.format(props.format))\n : value.format(props.format)\n return res as UserInput\n}\n\nconst isValidValue = (value: DayOrDays) => {\n return pickerOptions.value.isValidValue!(value)\n}\n\nconst handleKeydownInput = async (event: Event | KeyboardEvent) => {\n if (props.readonly || pickerDisabled.value) return\n\n const code = getEventCode(event as KeyboardEvent)\n emitKeydown(event as KeyboardEvent)\n if (code === EVENT_CODE.esc) {\n if (pickerVisible.value === true) {\n pickerVisible.value = false\n event.preventDefault()\n event.stopPropagation()\n }\n return\n }\n\n if (code === EVENT_CODE.down) {\n if (pickerOptions.value.handleFocusPicker) {\n event.preventDefault()\n event.stopPropagation()\n }\n if (pickerVisible.value === false) {\n pickerVisible.value = true\n await nextTick()\n }\n if (pickerOptions.value.handleFocusPicker) {\n pickerOptions.value.handleFocusPicker()\n return\n }\n }\n\n if (code === EVENT_CODE.tab) {\n hasJustTabExitedInput = true\n return\n }\n\n if (code === EVENT_CODE.enter || code === EVENT_CODE.numpadEnter) {\n if (!pickerVisible.value) {\n pickerVisible.value = true\n } else if (\n userInput.value === null ||\n userInput.value === '' ||\n isValidValue(parseUserInputToDayjs(displayValue.value) as DayOrDays)\n ) {\n handleChange()\n pickerVisible.value = false\n } else {\n if (\n !isValidValue(parseUserInputToDayjs(displayValue.value) as DayOrDays)\n ) {\n debugWarn(\n 'Picker',\n `Invalid user input: ${displayValue.value}. Please check the format of the input.`\n )\n }\n }\n event.preventDefault()\n event.stopPropagation()\n return\n }\n\n // if user is typing, do not let picker handle key input\n if (userInput.value) {\n event.stopPropagation()\n return\n }\n if (pickerOptions.value.handleKeydownInput) {\n pickerOptions.value.handleKeydownInput(event as KeyboardEvent)\n }\n}\nconst onUserInput = (e: string) => {\n userInput.value = e\n // Temporary fix when the picker is dismissed and the input box\n // is focused, just mimic the behavior of antdesign.\n if (!pickerVisible.value) {\n pickerVisible.value = true\n }\n}\n\nconst handleStartInput = (event: Event) => {\n const target = event.target as HTMLInputElement\n if (userInput.value) {\n userInput.value = [target.value, userInput.value[1]]\n } else {\n userInput.value = [target.value, null]\n }\n}\n\nconst handleEndInput = (event: Event) => {\n const target = event.target as HTMLInputElement\n if (userInput.value) {\n userInput.value = [userInput.value[0], target.value]\n } else {\n userInput.value = [null, target.value]\n }\n}\n\nconst handleStartChange = () => {\n const values = userInput.value as string[]\n const value = parseUserInputToDayjs(values && values[0]) as Dayjs\n const parsedVal = unref(parsedValue) as [Dayjs, Dayjs]\n if (value && value.isValid()) {\n userInput.value = [\n formatToString(value) as string,\n displayValue.value?.[1] || null,\n ]\n const newValue = [value, parsedVal && (parsedVal[1] || null)] as DayOrDays\n if (isValidValue(newValue)) {\n emitInput(dayOrDaysToDate(newValue))\n userInput.value = null\n }\n }\n}\n\nconst handleEndChange = () => {\n const values = unref(userInput) as string[]\n const value = parseUserInputToDayjs(values && values[1]) as Dayjs\n const parsedVal = unref(parsedValue) as [Dayjs, Dayjs]\n if (value && value.isValid()) {\n userInput.value = [\n unref(displayValue)?.[0] || null,\n formatToString(value) as string,\n ]\n const newValue = [parsedVal && parsedVal[0], value] as DayOrDays\n if (isValidValue(newValue)) {\n emitInput(dayOrDaysToDate(newValue))\n userInput.value = null\n }\n }\n}\n\nconst focus = () => {\n inputRef.value?.focus()\n}\n\nconst blur = () => {\n inputRef.value?.blur()\n}\n\nprovide(PICKER_BASE_INJECTION_KEY, {\n props,\n emptyValues,\n})\nprovide(ROOT_COMMON_PICKER_INJECTION_KEY, commonPicker)\n\ndefineExpose({\n /**\n * @description focus input box.\n */\n focus,\n /**\n * @description blur input box.\n */\n blur,\n /**\n * @description opens picker\n */\n handleOpen,\n /**\n * @description closes picker\n */\n handleClose,\n /**\n * @description pick item manually\n */\n onPick,\n})\n</script>\n"],"mappings":""}
@@ -61,7 +61,7 @@ declare const __VLS_base: _$vue.DefineComponent<_$vue.ExtractPropTypes<{
61
61
  readonly validateEvent: EpPropFinalized<BooleanConstructor, unknown, unknown, true, boolean>;
62
62
  readonly unlinkPanels: BooleanConstructor;
63
63
  readonly singlePanel: BooleanConstructor;
64
- readonly placement: EpPropFinalized<(new (...args: any[]) => "auto" | "left" | "right" | "bottom" | "top" | "auto-start" | "auto-end" | "top-start" | "top-end" | "bottom-start" | "bottom-end" | "right-start" | "right-end" | "left-start" | "left-end") | (() => Placement$1) | (((new (...args: any[]) => "auto" | "left" | "right" | "bottom" | "top" | "auto-start" | "auto-end" | "top-start" | "top-end" | "bottom-start" | "bottom-end" | "right-start" | "right-end" | "left-start" | "left-end") | (() => Placement$1)) | null)[], Placement$1, unknown, "bottom", boolean>;
64
+ readonly placement: EpPropFinalized<(new (...args: any[]) => "left" | "right" | "top" | "auto" | "bottom" | "auto-start" | "auto-end" | "top-start" | "top-end" | "bottom-start" | "bottom-end" | "right-start" | "right-end" | "left-start" | "left-end") | (() => Placement$1) | (((new (...args: any[]) => "left" | "right" | "top" | "auto" | "bottom" | "auto-start" | "auto-end" | "top-start" | "top-end" | "bottom-start" | "bottom-end" | "right-start" | "right-end" | "left-start" | "left-end") | (() => Placement$1)) | null)[], Placement$1, unknown, "bottom", boolean>;
65
65
  readonly fallbackPlacements: EpPropFinalized<(new (...args: any[]) => Placement$1[]) | (() => Placement$1[]) | (((new (...args: any[]) => Placement$1[]) | (() => Placement$1[])) | null)[], unknown, unknown, readonly ["bottom", "top", "right", "left"], boolean>;
66
66
  readonly disabledHours: {
67
67
  readonly type: _$vue.PropType<GetDisabledHours>;
@@ -107,7 +107,7 @@ declare const __VLS_base: _$vue.DefineComponent<_$vue.ExtractPropTypes<{
107
107
  readonly saveOnBlur: EpPropFinalized<BooleanConstructor, unknown, unknown, true, boolean>;
108
108
  readonly prefixIcon: EpPropFinalized<(new (...args: any[]) => (string | _$vue.Component) & {}) | (() => string | _$vue.Component) | (((new (...args: any[]) => (string | _$vue.Component) & {}) | (() => string | _$vue.Component)) | null)[], unknown, unknown, "", boolean>;
109
109
  readonly size: {
110
- readonly type: _$vue.PropType<EpPropMergeType<StringConstructor, "" | "default" | "large" | "small", never>>;
110
+ readonly type: _$vue.PropType<EpPropMergeType<StringConstructor, "" | "default" | "small" | "large", never>>;
111
111
  readonly required: false;
112
112
  readonly validator: ((val: unknown) => boolean) | undefined;
113
113
  __epPropKey: true;
@@ -116,7 +116,7 @@ declare const __VLS_base: _$vue.DefineComponent<_$vue.ExtractPropTypes<{
116
116
  readonly disabled: EpPropFinalized<BooleanConstructor, unknown, unknown, undefined, boolean>;
117
117
  readonly placeholder: EpPropFinalized<StringConstructor, unknown, unknown, "", boolean>;
118
118
  readonly popperOptions: EpPropFinalized<(new (...args: any[]) => Partial<Options>) | (() => Partial<Options>) | (((new (...args: any[]) => Partial<Options>) | (() => Partial<Options>)) | null)[], unknown, unknown, () => {}, boolean>;
119
- readonly modelValue: EpPropFinalized<(new (...args: any[]) => string | number | Date | string[] | number[] | Date[]) | (() => ModelValueType | null) | (((new (...args: any[]) => string | number | Date | string[] | number[] | Date[]) | (() => ModelValueType | null)) | null)[], unknown, unknown, "", boolean>;
119
+ readonly modelValue: EpPropFinalized<(new (...args: any[]) => string | number | string[] | Date | number[] | Date[]) | (() => ModelValueType | null) | (((new (...args: any[]) => string | number | string[] | Date | number[] | Date[]) | (() => ModelValueType | null)) | null)[], unknown, unknown, "", boolean>;
120
120
  readonly rangeSeparator: EpPropFinalized<StringConstructor, unknown, unknown, "-", boolean>;
121
121
  readonly startPlaceholder: StringConstructor;
122
122
  readonly endPlaceholder: StringConstructor;
@@ -190,7 +190,7 @@ declare const __VLS_base: _$vue.DefineComponent<_$vue.ExtractPropTypes<{
190
190
  readonly validateEvent: EpPropFinalized<BooleanConstructor, unknown, unknown, true, boolean>;
191
191
  readonly unlinkPanels: BooleanConstructor;
192
192
  readonly singlePanel: BooleanConstructor;
193
- readonly placement: EpPropFinalized<(new (...args: any[]) => "auto" | "left" | "right" | "bottom" | "top" | "auto-start" | "auto-end" | "top-start" | "top-end" | "bottom-start" | "bottom-end" | "right-start" | "right-end" | "left-start" | "left-end") | (() => Placement$1) | (((new (...args: any[]) => "auto" | "left" | "right" | "bottom" | "top" | "auto-start" | "auto-end" | "top-start" | "top-end" | "bottom-start" | "bottom-end" | "right-start" | "right-end" | "left-start" | "left-end") | (() => Placement$1)) | null)[], Placement$1, unknown, "bottom", boolean>;
193
+ readonly placement: EpPropFinalized<(new (...args: any[]) => "left" | "right" | "top" | "auto" | "bottom" | "auto-start" | "auto-end" | "top-start" | "top-end" | "bottom-start" | "bottom-end" | "right-start" | "right-end" | "left-start" | "left-end") | (() => Placement$1) | (((new (...args: any[]) => "left" | "right" | "top" | "auto" | "bottom" | "auto-start" | "auto-end" | "top-start" | "top-end" | "bottom-start" | "bottom-end" | "right-start" | "right-end" | "left-start" | "left-end") | (() => Placement$1)) | null)[], Placement$1, unknown, "bottom", boolean>;
194
194
  readonly fallbackPlacements: EpPropFinalized<(new (...args: any[]) => Placement$1[]) | (() => Placement$1[]) | (((new (...args: any[]) => Placement$1[]) | (() => Placement$1[])) | null)[], unknown, unknown, readonly ["bottom", "top", "right", "left"], boolean>;
195
195
  readonly disabledHours: {
196
196
  readonly type: _$vue.PropType<GetDisabledHours>;
@@ -236,7 +236,7 @@ declare const __VLS_base: _$vue.DefineComponent<_$vue.ExtractPropTypes<{
236
236
  readonly saveOnBlur: EpPropFinalized<BooleanConstructor, unknown, unknown, true, boolean>;
237
237
  readonly prefixIcon: EpPropFinalized<(new (...args: any[]) => (string | _$vue.Component) & {}) | (() => string | _$vue.Component) | (((new (...args: any[]) => (string | _$vue.Component) & {}) | (() => string | _$vue.Component)) | null)[], unknown, unknown, "", boolean>;
238
238
  readonly size: {
239
- readonly type: _$vue.PropType<EpPropMergeType<StringConstructor, "" | "default" | "large" | "small", never>>;
239
+ readonly type: _$vue.PropType<EpPropMergeType<StringConstructor, "" | "default" | "small" | "large", never>>;
240
240
  readonly required: false;
241
241
  readonly validator: ((val: unknown) => boolean) | undefined;
242
242
  __epPropKey: true;
@@ -245,7 +245,7 @@ declare const __VLS_base: _$vue.DefineComponent<_$vue.ExtractPropTypes<{
245
245
  readonly disabled: EpPropFinalized<BooleanConstructor, unknown, unknown, undefined, boolean>;
246
246
  readonly placeholder: EpPropFinalized<StringConstructor, unknown, unknown, "", boolean>;
247
247
  readonly popperOptions: EpPropFinalized<(new (...args: any[]) => Partial<Options>) | (() => Partial<Options>) | (((new (...args: any[]) => Partial<Options>) | (() => Partial<Options>)) | null)[], unknown, unknown, () => {}, boolean>;
248
- readonly modelValue: EpPropFinalized<(new (...args: any[]) => string | number | Date | string[] | number[] | Date[]) | (() => ModelValueType | null) | (((new (...args: any[]) => string | number | Date | string[] | number[] | Date[]) | (() => ModelValueType | null)) | null)[], unknown, unknown, "", boolean>;
248
+ readonly modelValue: EpPropFinalized<(new (...args: any[]) => string | number | string[] | Date | number[] | Date[]) | (() => ModelValueType | null) | (((new (...args: any[]) => string | number | string[] | Date | number[] | Date[]) | (() => ModelValueType | null)) | null)[], unknown, unknown, "", boolean>;
249
249
  readonly rangeSeparator: EpPropFinalized<StringConstructor, unknown, unknown, "-", boolean>;
250
250
  readonly startPlaceholder: StringConstructor;
251
251
  readonly endPlaceholder: StringConstructor;
@@ -273,10 +273,10 @@ declare const __VLS_base: _$vue.DefineComponent<_$vue.ExtractPropTypes<{
273
273
  "onPanel-change"?: ((...args: any[]) => any) | undefined;
274
274
  "onVisible-change"?: ((...args: any[]) => any) | undefined;
275
275
  }>, {
276
- readonly type: string;
277
276
  readonly disabled: EpPropMergeType<BooleanConstructor, unknown, unknown>;
277
+ readonly type: string;
278
278
  readonly valueOnClear: EpPropMergeType<(new (...args: any[]) => string | number | boolean | Function) | (() => string | number | boolean | Function | null) | (((new (...args: any[]) => string | number | boolean | Function) | (() => string | number | boolean | Function | null)) | null)[], unknown, unknown>;
279
- readonly modelValue: EpPropMergeType<(new (...args: any[]) => string | number | Date | string[] | number[] | Date[]) | (() => ModelValueType | null) | (((new (...args: any[]) => string | number | Date | string[] | number[] | Date[]) | (() => ModelValueType | null)) | null)[], unknown, unknown>;
279
+ readonly modelValue: EpPropMergeType<(new (...args: any[]) => string | number | string[] | Date | number[] | Date[]) | (() => ModelValueType | null) | (((new (...args: any[]) => string | number | string[] | Date | number[] | Date[]) | (() => ModelValueType | null)) | null)[], unknown, unknown>;
280
280
  readonly placeholder: string;
281
281
  readonly readonly: boolean;
282
282
  readonly clearable: EpPropMergeType<BooleanConstructor, unknown, unknown>;
@@ -287,7 +287,7 @@ declare const __VLS_base: _$vue.DefineComponent<_$vue.ExtractPropTypes<{
287
287
  readonly popperClass: ClassValue;
288
288
  readonly popperStyle: _$vue.StyleValue;
289
289
  readonly fallbackPlacements: Placement$1[];
290
- readonly placement: EpPropMergeType<(new (...args: any[]) => "auto" | "left" | "right" | "bottom" | "top" | "auto-start" | "auto-end" | "top-start" | "top-end" | "bottom-start" | "bottom-end" | "right-start" | "right-end" | "left-start" | "left-end") | (() => Placement$1) | (((new (...args: any[]) => "auto" | "left" | "right" | "bottom" | "top" | "auto-start" | "auto-end" | "top-start" | "top-end" | "bottom-start" | "bottom-end" | "right-start" | "right-end" | "left-start" | "left-end") | (() => Placement$1)) | null)[], Placement$1, unknown>;
290
+ readonly placement: EpPropMergeType<(new (...args: any[]) => "left" | "right" | "top" | "auto" | "bottom" | "auto-start" | "auto-end" | "top-start" | "top-end" | "bottom-start" | "bottom-end" | "right-start" | "right-end" | "left-start" | "left-end") | (() => Placement$1) | (((new (...args: any[]) => "left" | "right" | "top" | "auto" | "bottom" | "auto-start" | "auto-end" | "top-start" | "top-end" | "bottom-start" | "bottom-end" | "right-start" | "right-end" | "left-start" | "left-end") | (() => Placement$1)) | null)[], Placement$1, unknown>;
291
291
  readonly popperOptions: Partial<Options>;
292
292
  readonly automaticDropdown: EpPropMergeType<BooleanConstructor, unknown, unknown>;
293
293
  readonly editable: EpPropMergeType<BooleanConstructor, unknown, unknown>;
@@ -49,6 +49,7 @@ var picker_vue_vue_type_script_setup_true_lang_default = /*@__PURE__*/ (0, vue.d
49
49
  const inputRef = (0, vue.ref)();
50
50
  const valueOnOpen = (0, vue.ref)(null);
51
51
  let hasJustTabExitedInput = false;
52
+ let isClearIconMousedown = false;
52
53
  const pickerDisabled = require_use_form_common_props.useFormDisabled();
53
54
  const commonPicker = require_use_common_picker.useCommonPicker(props, emit);
54
55
  const { parsedValue, pickerActualVisible, userInput, pickerVisible, pickerOptions, valueIsEmpty, emitInput, onPick, onSetPickerOption, onCalendarChange, onPanelChange } = commonPicker;
@@ -59,6 +60,10 @@ var picker_vue_vue_type_script_setup_true_lang_default = /*@__PURE__*/ (0, vue.d
59
60
  },
60
61
  afterFocus() {
61
62
  if (!props.automaticDropdown) return;
63
+ if (isClearIconMousedown) {
64
+ isClearIconMousedown = false;
65
+ return;
66
+ }
62
67
  pickerVisible.value = true;
63
68
  },
64
69
  beforeBlur(event) {
@@ -70,6 +75,7 @@ var picker_vue_vue_type_script_setup_true_lang_default = /*@__PURE__*/ (0, vue.d
70
75
  } else handleChange();
71
76
  pickerVisible.value = false;
72
77
  hasJustTabExitedInput = false;
78
+ isClearIconMousedown = false;
73
79
  props.validateEvent && formItem?.validate("blur").catch(_vue_shared.NOOP);
74
80
  }
75
81
  });
@@ -100,7 +106,7 @@ var picker_vue_vue_type_script_setup_true_lang_default = /*@__PURE__*/ (0, vue.d
100
106
  });
101
107
  });
102
108
  const emitChange = (val, isClear) => {
103
- if (isClear || !require_utils.valueEquals(val, valueOnOpen.value)) {
109
+ if (isClear || !(require_utils.valueEquals(val, valueOnOpen.value) || emptyValues.isEmptyValue(val) && emptyValues.isEmptyValue(valueOnOpen.value))) {
104
110
  emit(require_event.CHANGE_EVENT, val);
105
111
  isClear && (valueOnOpen.value = val);
106
112
  props.validateEvent && formItem?.validate("change").catch(_vue_shared.NOOP);
@@ -159,8 +165,12 @@ var picker_vue_vue_type_script_setup_true_lang_default = /*@__PURE__*/ (0, vue.d
159
165
  const isQuartersPicker = (0, vue.computed)(() => props.type === "quarters");
160
166
  const triggerIcon = (0, vue.computed)(() => props.prefixIcon || (isTimeLikePicker.value ? _element_plus_icons_vue.Clock : _element_plus_icons_vue.Calendar));
161
167
  const showClearBtn = (0, vue.computed)(() => props.clearable && !pickerDisabled.value && !props.readonly && !valueIsEmpty.value && (hovering.value || isFocused.value));
168
+ const onClearIconMousedown = () => {
169
+ isClearIconMousedown = true;
170
+ };
162
171
  const onClear = (event) => {
163
172
  if (props.readonly || pickerDisabled.value) return;
173
+ isClearIconMousedown = false;
164
174
  if (showClearBtn.value) {
165
175
  event?.stopPropagation();
166
176
  if (pickerOptions.value.handleClear) pickerOptions.value.handleClear();
@@ -180,6 +190,7 @@ var picker_vue_vue_type_script_setup_true_lang_default = /*@__PURE__*/ (0, vue.d
180
190
  };
181
191
  const onMouseLeave = () => {
182
192
  hovering.value = false;
193
+ isClearIconMousedown = false;
183
194
  };
184
195
  const onTouchStartInput = (event) => {
185
196
  if (props.readonly || pickerDisabled.value) return;
@@ -415,12 +426,12 @@ var picker_vue_vue_type_script_setup_true_lang_default = /*@__PURE__*/ (0, vue.d
415
426
  suffix: (0, vue.withCtx)(() => [showClearBtn.value && _ctx.clearIcon ? ((0, vue.openBlock)(), (0, vue.createBlock)((0, vue.unref)(require_index$3.ElIcon), {
416
427
  key: 0,
417
428
  class: (0, vue.normalizeClass)(`${(0, vue.unref)(nsInput).e("icon")} clear-icon`),
418
- onMousedown: (0, vue.withModifiers)((0, vue.unref)(_vue_shared.NOOP), ["prevent"]),
429
+ onMousedown: (0, vue.withModifiers)(onClearIconMousedown, ["prevent"]),
419
430
  onClick: onClear
420
431
  }, {
421
432
  default: (0, vue.withCtx)(() => [((0, vue.openBlock)(), (0, vue.createBlock)((0, vue.resolveDynamicComponent)(_ctx.clearIcon)))]),
422
433
  _: 1
423
- }, 8, ["class", "onMousedown"])) : (0, vue.createCommentVNode)("v-if", true)]),
434
+ }, 8, ["class"])) : (0, vue.createCommentVNode)("v-if", true)]),
424
435
  _: 1
425
436
  }, 8, [
426
437
  "id",
@@ -477,12 +488,12 @@ var picker_vue_vue_type_script_setup_true_lang_default = /*@__PURE__*/ (0, vue.d
477
488
  suffix: (0, vue.withCtx)(() => [_ctx.clearIcon ? ((0, vue.openBlock)(), (0, vue.createBlock)((0, vue.unref)(require_index$3.ElIcon), {
478
489
  key: 0,
479
490
  class: (0, vue.normalizeClass)(clearIconKls.value),
480
- onMousedown: (0, vue.withModifiers)((0, vue.unref)(_vue_shared.NOOP), ["prevent"]),
491
+ onMousedown: (0, vue.withModifiers)(onClearIconMousedown, ["prevent"]),
481
492
  onClick: onClear
482
493
  }, {
483
494
  default: (0, vue.withCtx)(() => [((0, vue.openBlock)(), (0, vue.createBlock)((0, vue.resolveDynamicComponent)(_ctx.clearIcon)))]),
484
495
  _: 1
485
- }, 8, ["class", "onMousedown"])) : (0, vue.createCommentVNode)("v-if", true)]),
496
+ }, 8, ["class"])) : (0, vue.createCommentVNode)("v-if", true)]),
486
497
  _: 3
487
498
  }, 8, [
488
499
  "id",
@@ -1 +1 @@
1
- {"version":3,"file":"picker.vue_vue_type_script_setup_true_lang.js","names":["$attrs","popperClass","popperStyle","fallbackPlacements","placement","id","name","placeholder","type","editable","readonly","ariaLabel","tabindex","clearIcon","startPlaceholder","endPlaceholder","rangeSeparator","format","dateFormat","timeFormat","unlinkPanels","defaultValue","showNow","showConfirm","showFooter","showWeekNumber","singlePanel"],"sources":["../../../../../../../packages/components/time-picker/src/common/picker.vue"],"sourcesContent":["<template>\n <el-tooltip\n ref=\"refPopper\"\n :visible=\"pickerVisible\"\n effect=\"light\"\n pure\n trigger=\"click\"\n v-bind=\"$attrs\"\n role=\"dialog\"\n teleported\n :transition=\"`${nsDate.namespace.value}-zoom-in-top`\"\n :popper-class=\"[`${nsDate.namespace.value}-picker__popper`, popperClass!]\"\n :popper-style=\"popperStyle\"\n :popper-options=\"elPopperOptions\"\n :fallback-placements=\"fallbackPlacements\"\n :gpu-acceleration=\"false\"\n :placement=\"placement\"\n :stop-popper-mouse-event=\"false\"\n :hide-after=\"0\"\n persistent\n @before-show=\"onBeforeShow\"\n @show=\"onShow\"\n @hide=\"onHide\"\n >\n <template #default>\n <el-input\n v-if=\"!isRangeInput\"\n :id=\"\n // https://github.com/vuejs/language-tools/issues/2104#issuecomment-3092541527\n id as string\n \"\n ref=\"inputRef\"\n container-role=\"combobox\"\n :model-value=\"\n // https://github.com/vuejs/language-tools/issues/2104#issuecomment-3092541527\n displayValue as string\n \"\n :name=\"\n // https://github.com/vuejs/language-tools/issues/2104#issuecomment-3092541527\n name as string\n \"\n :size=\"pickerSize\"\n :disabled=\"pickerDisabled\"\n :placeholder=\"placeholder\"\n :class=\"[\n nsDate.b('editor'),\n nsDate.bm('editor', type),\n nsDate.is('focus', pickerVisible),\n $attrs.class,\n ]\"\n :style=\"$attrs.style\"\n :readonly=\"\n !editable ||\n readonly ||\n isDatesPicker ||\n isMonthsPicker ||\n isYearsPicker ||\n isQuartersPicker ||\n type === 'week'\n \"\n :aria-label=\"ariaLabel\"\n :tabindex=\"tabindex\"\n :validate-event=\"false\"\n @input=\"onUserInput\"\n @focus=\"handleFocus\"\n @blur=\"handleBlur\"\n @keydown=\"handleKeydownInput\"\n @change=\"handleChange\"\n @mousedown=\"onMouseDownInput\"\n @mouseenter=\"onMouseEnter\"\n @mouseleave=\"onMouseLeave\"\n @touchstart.passive=\"onTouchStartInput\"\n @click.stop\n >\n <template #prefix>\n <el-icon\n v-if=\"triggerIcon\"\n :class=\"nsInput.e('icon')\"\n @mousedown.prevent=\"onMouseDownInput\"\n @touchstart.passive=\"onTouchStartInput\"\n >\n <component :is=\"triggerIcon\" />\n </el-icon>\n </template>\n <template #suffix>\n <el-icon\n v-if=\"showClearBtn && clearIcon\"\n :class=\"`${nsInput.e('icon')} clear-icon`\"\n @mousedown.prevent=\"NOOP\"\n @click=\"onClear\"\n >\n <component :is=\"clearIcon\" />\n </el-icon>\n </template>\n </el-input>\n <picker-range-trigger\n v-else\n :id=\"\n // https://github.com/vuejs/language-tools/issues/2104#issuecomment-3092541527\n id as string[]\n \"\n ref=\"inputRef\"\n :model-value=\"displayValue\"\n :name=\"\n // https://github.com/vuejs/language-tools/issues/2104#issuecomment-3092541527\n name as string[]\n \"\n :disabled=\"pickerDisabled\"\n :readonly=\"!editable || readonly\"\n :start-placeholder=\"startPlaceholder\"\n :end-placeholder=\"endPlaceholder\"\n :class=\"rangeInputKls\"\n :style=\"$attrs.style\"\n :aria-label=\"ariaLabel\"\n :tabindex=\"tabindex\"\n autocomplete=\"off\"\n role=\"combobox\"\n @click=\"onMouseDownInput\"\n @focus=\"handleFocus\"\n @blur=\"handleBlur\"\n @start-input=\"handleStartInput\"\n @start-change=\"handleStartChange\"\n @end-input=\"handleEndInput\"\n @end-change=\"handleEndChange\"\n @mousedown=\"onMouseDownInput\"\n @mouseenter=\"onMouseEnter\"\n @mouseleave=\"onMouseLeave\"\n @touchstart.passive=\"onTouchStartInput\"\n @keydown=\"handleKeydownInput\"\n >\n <template #prefix>\n <el-icon\n v-if=\"triggerIcon\"\n :class=\"[nsInput.e('icon'), nsRange.e('icon')]\"\n >\n <component :is=\"triggerIcon\" />\n </el-icon>\n </template>\n <template #range-separator>\n <slot name=\"range-separator\">\n <span :class=\"nsRange.b('separator')\">{{ rangeSeparator }}</span>\n </slot>\n </template>\n <template #suffix>\n <el-icon\n v-if=\"clearIcon\"\n :class=\"clearIconKls\"\n @mousedown.prevent=\"NOOP\"\n @click=\"onClear\"\n >\n <component :is=\"clearIcon\" />\n </el-icon>\n </template>\n </picker-range-trigger>\n </template>\n <template #content>\n <slot\n :visible=\"pickerVisible\"\n :actual-visible=\"pickerActualVisible\"\n :parsed-value=\"parsedValue\"\n :format=\"format\"\n :date-format=\"dateFormat\"\n :time-format=\"timeFormat\"\n :unlink-panels=\"unlinkPanels\"\n :type=\"type\"\n :default-value=\"defaultValue\"\n :show-now=\"showNow\"\n :show-confirm=\"showConfirm\"\n :show-footer=\"showFooter\"\n :show-week-number=\"showWeekNumber\"\n :single-panel=\"singlePanel\"\n @pick=\"onPick\"\n @select-range=\"setSelectionRange\"\n @set-picker-option=\"onSetPickerOption\"\n @calendar-change=\"onCalendarChange\"\n @clear=\"onClear\"\n @panel-change=\"onPanelChange\"\n @mousedown.stop\n />\n </template>\n </el-tooltip>\n</template>\n\n<script lang=\"ts\" setup>\nimport {\n computed,\n inject,\n nextTick,\n onBeforeUnmount,\n provide,\n ref,\n unref,\n useAttrs,\n watch,\n} from 'vue'\nimport { onClickOutside, unrefElement } from '@vueuse/core'\nimport {\n useEmptyValues,\n useFocusController,\n useNamespace,\n} from '@element-plus/hooks'\nimport {\n useFormDisabled,\n useFormItem,\n useFormSize,\n} from '@element-plus/components/form'\nimport ElInput from '@element-plus/components/input'\nimport ElIcon from '@element-plus/components/icon'\nimport ElTooltip from '@element-plus/components/tooltip'\nimport { NOOP, debugWarn, getEventCode, isArray } from '@element-plus/utils'\nimport {\n CHANGE_EVENT,\n EVENT_CODE,\n UPDATE_MODEL_EVENT,\n} from '@element-plus/constants'\nimport { Calendar, Clock } from '@element-plus/icons-vue'\nimport { dayOrDaysToDate, valueEquals } from '../utils'\nimport {\n PICKER_BASE_INJECTION_KEY,\n PICKER_POPPER_OPTIONS_INJECTION_KEY,\n ROOT_COMMON_PICKER_INJECTION_KEY,\n} from '../constants'\nimport { useCommonPicker } from '../composables/use-common-picker'\nimport { timePickerDefaultProps } from './props'\nimport PickerRangeTrigger from './picker-range-trigger.vue'\n\nimport type { InputInstance } from '@element-plus/components/input'\nimport type { Dayjs } from 'dayjs'\nimport type { ComponentPublicInstance, Ref } from 'vue'\nimport type { Options } from '@popperjs/core'\nimport type { DayOrDays, TimePickerDefaultProps, UserInput } from './props'\nimport type { TooltipInstance } from '@element-plus/components/tooltip'\n\ndefineOptions({\n name: 'Picker',\n})\n\nconst props = defineProps(timePickerDefaultProps)\nconst emit = defineEmits([\n UPDATE_MODEL_EVENT,\n CHANGE_EVENT,\n 'focus',\n 'blur',\n 'clear',\n 'calendar-change',\n 'panel-change',\n 'visible-change',\n 'keydown',\n])\nconst attrs = useAttrs()\n\nconst nsDate = useNamespace('date')\nconst nsInput = useNamespace('input')\nconst nsRange = useNamespace('range')\n\nconst { formItem } = useFormItem()\nconst elPopperOptions = inject(\n PICKER_POPPER_OPTIONS_INJECTION_KEY,\n {} as Options\n)\nconst emptyValues = useEmptyValues(props, null)\n\nconst refPopper = ref<TooltipInstance>()\nconst inputRef = ref<InputInstance>()\nconst valueOnOpen = ref<TimePickerDefaultProps['modelValue'] | null>(null)\nlet hasJustTabExitedInput = false\n\nconst pickerDisabled = useFormDisabled()\n\nconst commonPicker = useCommonPicker(props, emit)\nconst {\n parsedValue,\n pickerActualVisible,\n userInput,\n pickerVisible,\n pickerOptions,\n valueIsEmpty,\n emitInput,\n onPick,\n onSetPickerOption,\n onCalendarChange,\n onPanelChange,\n} = commonPicker\n\nconst { isFocused, handleFocus, handleBlur } = useFocusController(inputRef, {\n disabled: pickerDisabled,\n beforeFocus() {\n return props.readonly\n },\n afterFocus() {\n if (!props.automaticDropdown) return\n pickerVisible.value = true\n },\n beforeBlur(event) {\n return (\n !hasJustTabExitedInput && refPopper.value?.isFocusInsideContent(event)\n )\n },\n afterBlur() {\n if (isTimePicker.value && !props.saveOnBlur) {\n if (!valueIsEmpty.value) {\n pickerOptions.value.handleCancel?.()\n }\n } else {\n handleChange()\n }\n pickerVisible.value = false\n hasJustTabExitedInput = false\n props.validateEvent && formItem?.validate('blur').catch(NOOP)\n },\n})\n\nconst hovering = ref(false)\n\nconst rangeInputKls = computed(() => [\n nsDate.b('editor'),\n nsDate.bm('editor', props.type),\n nsInput.e('wrapper'),\n nsDate.is('disabled', pickerDisabled.value),\n nsDate.is('active', pickerVisible.value),\n nsRange.b('editor'),\n pickerSize ? nsRange.bm('editor', pickerSize.value) : '',\n attrs.class,\n])\n\nconst clearIconKls = computed(() => [\n nsInput.e('icon'),\n nsRange.e('close-icon'),\n !showClearBtn.value ? nsRange.em('close-icon', 'hidden') : '',\n])\n\nwatch(pickerVisible, (val) => {\n if (!val) {\n userInput.value = null\n nextTick(() => {\n emitChange(props.modelValue)\n })\n } else {\n nextTick(() => {\n if (val) {\n valueOnOpen.value = props.modelValue\n }\n })\n }\n})\nconst emitChange = (\n val: TimePickerDefaultProps['modelValue'] | null,\n isClear?: boolean\n) => {\n // determine user real change only\n if (isClear || !valueEquals(val, valueOnOpen.value)) {\n emit(CHANGE_EVENT, val)\n // Set the value of valueOnOpen when clearing to avoid triggering change events multiple times.\n isClear && (valueOnOpen.value = val)\n props.validateEvent && formItem?.validate('change').catch(NOOP)\n }\n}\nconst emitKeydown = (e: KeyboardEvent) => {\n emit('keydown', e)\n}\n\nconst refInput = computed<HTMLInputElement[]>(() => {\n if (inputRef.value) {\n return Array.from<HTMLInputElement>(\n inputRef.value.$el.querySelectorAll('input')\n )\n }\n return []\n})\n\n// @ts-ignore\nconst setSelectionRange = (start: number, end: number, pos?: 'min' | 'max') => {\n const _inputs = refInput.value\n if (!_inputs.length) return\n if (!pos || pos === 'min') {\n _inputs[0].setSelectionRange(start, end)\n _inputs[0].focus()\n } else if (pos === 'max') {\n _inputs[1].setSelectionRange(start, end)\n _inputs[1].focus()\n }\n}\n\nconst onBeforeShow = () => {\n pickerActualVisible.value = true\n}\n\nconst onShow = () => {\n emit('visible-change', true)\n}\n\nconst onHide = () => {\n pickerActualVisible.value = false\n pickerVisible.value = false\n emit('visible-change', false)\n}\n\nconst handleOpen = () => {\n pickerVisible.value = true\n}\n\nconst handleClose = () => {\n pickerVisible.value = false\n}\n\nconst displayValue = computed<UserInput>(() => {\n const formattedValue = formatToString(parsedValue.value)\n if (isArray(userInput.value)) {\n return [\n userInput.value[0] ?? (formattedValue && formattedValue[0]) ?? '',\n userInput.value[1] ?? (formattedValue && formattedValue[1]) ?? '',\n ]\n } else if (userInput.value !== null) {\n return userInput.value\n }\n if (isTimePicker.value && valueIsEmpty.value && !props.saveOnBlur) return ''\n if (!isTimePicker.value && valueIsEmpty.value) return ''\n if (!pickerVisible.value && valueIsEmpty.value) return ''\n if (formattedValue) {\n return isDatesPicker.value ||\n isMonthsPicker.value ||\n isYearsPicker.value ||\n isQuartersPicker.value\n ? (formattedValue as Array<string>).join(', ')\n : formattedValue\n }\n return ''\n})\n\nconst isTimeLikePicker = computed(() => props.type.includes('time'))\n\nconst isTimePicker = computed(() => props.type.startsWith('time'))\n\nconst isDatesPicker = computed(() => props.type === 'dates')\n\nconst isMonthsPicker = computed(() => props.type === 'months')\n\nconst isYearsPicker = computed(() => props.type === 'years')\n\nconst isQuartersPicker = computed(() => props.type === 'quarters')\n\nconst triggerIcon = computed(\n () => props.prefixIcon || (isTimeLikePicker.value ? Clock : Calendar)\n)\n\nconst showClearBtn = computed(\n () =>\n props.clearable &&\n !pickerDisabled.value &&\n !props.readonly &&\n !valueIsEmpty.value &&\n (hovering.value || isFocused.value)\n)\n\nconst onClear = (event?: MouseEvent) => {\n if (props.readonly || pickerDisabled.value) return\n if (showClearBtn.value) {\n event?.stopPropagation()\n // When the handleClear Function was provided, emit null will be executed inside it\n // There is no need for us to execute emit null twice. #14752\n if (pickerOptions.value.handleClear) {\n pickerOptions.value.handleClear()\n } else {\n emitInput(emptyValues.valueOnClear.value)\n }\n emitChange(emptyValues.valueOnClear.value, true)\n onHide()\n }\n emit('clear')\n}\n\nconst onMouseDownInput = async (event: MouseEvent) => {\n if (props.readonly || pickerDisabled.value) return\n if (\n (event.target as HTMLElement)?.tagName !== 'INPUT' ||\n isFocused.value ||\n !props.automaticDropdown\n ) {\n pickerVisible.value = true\n }\n}\nconst onMouseEnter = () => {\n if (props.readonly || pickerDisabled.value) return\n if (!valueIsEmpty.value && props.clearable) {\n hovering.value = true\n }\n}\nconst onMouseLeave = () => {\n hovering.value = false\n}\n\nconst onTouchStartInput = (event: TouchEvent) => {\n if (props.readonly || pickerDisabled.value) return\n if (\n (event.touches[0].target as HTMLElement)?.tagName !== 'INPUT' ||\n isFocused.value ||\n !props.automaticDropdown\n ) {\n pickerVisible.value = true\n }\n}\n\nconst isRangeInput = computed(() => {\n return props.type.includes('range')\n})\n\nconst pickerSize = useFormSize()\n\nconst popperEl = computed(() => unref(refPopper)?.popperRef?.contentRef)\n\nconst stophandle = onClickOutside(\n inputRef as Ref<ComponentPublicInstance>,\n (e: PointerEvent) => {\n const unrefedPopperEl = unref(popperEl)\n const inputEl = unrefElement(inputRef as Ref<ComponentPublicInstance>)\n if (\n (unrefedPopperEl &&\n (e.target === unrefedPopperEl ||\n e.composedPath().includes(unrefedPopperEl))) ||\n e.target === inputEl ||\n (inputEl && e.composedPath().includes(inputEl))\n )\n return\n pickerVisible.value = false\n }\n)\n\nonBeforeUnmount(() => {\n stophandle?.()\n})\n\nconst handleChange = () => {\n if (isTimePicker.value && !props.saveOnBlur) return\n\n const isRangeEmpty =\n isArray(userInput.value) && userInput.value.every((v) => v === '')\n\n if (userInput.value && !isRangeEmpty) {\n const value = parseUserInputToDayjs(displayValue.value)\n if (value) {\n if (isValidValue(value)) {\n emitInput(dayOrDaysToDate(value))\n }\n userInput.value = null\n }\n }\n if (userInput.value === '' || isRangeEmpty) {\n emitInput(emptyValues.valueOnClear.value)\n emitChange(emptyValues.valueOnClear.value, true)\n userInput.value = null\n }\n}\n\nconst parseUserInputToDayjs = (value: UserInput) => {\n if (!value) return null\n return pickerOptions.value.parseUserInput!(value)\n}\n\nconst formatToString = (value: DayOrDays) => {\n if (!value) return null\n const res = isArray(value)\n ? value.map((_) => _.format(props.format))\n : value.format(props.format)\n return res as UserInput\n}\n\nconst isValidValue = (value: DayOrDays) => {\n return pickerOptions.value.isValidValue!(value)\n}\n\nconst handleKeydownInput = async (event: Event | KeyboardEvent) => {\n if (props.readonly || pickerDisabled.value) return\n\n const code = getEventCode(event as KeyboardEvent)\n emitKeydown(event as KeyboardEvent)\n if (code === EVENT_CODE.esc) {\n if (pickerVisible.value === true) {\n pickerVisible.value = false\n event.preventDefault()\n event.stopPropagation()\n }\n return\n }\n\n if (code === EVENT_CODE.down) {\n if (pickerOptions.value.handleFocusPicker) {\n event.preventDefault()\n event.stopPropagation()\n }\n if (pickerVisible.value === false) {\n pickerVisible.value = true\n await nextTick()\n }\n if (pickerOptions.value.handleFocusPicker) {\n pickerOptions.value.handleFocusPicker()\n return\n }\n }\n\n if (code === EVENT_CODE.tab) {\n hasJustTabExitedInput = true\n return\n }\n\n if (code === EVENT_CODE.enter || code === EVENT_CODE.numpadEnter) {\n if (!pickerVisible.value) {\n pickerVisible.value = true\n } else if (\n userInput.value === null ||\n userInput.value === '' ||\n isValidValue(parseUserInputToDayjs(displayValue.value) as DayOrDays)\n ) {\n handleChange()\n pickerVisible.value = false\n } else {\n if (\n !isValidValue(parseUserInputToDayjs(displayValue.value) as DayOrDays)\n ) {\n debugWarn(\n 'Picker',\n `Invalid user input: ${displayValue.value}. Please check the format of the input.`\n )\n }\n }\n event.preventDefault()\n event.stopPropagation()\n return\n }\n\n // if user is typing, do not let picker handle key input\n if (userInput.value) {\n event.stopPropagation()\n return\n }\n if (pickerOptions.value.handleKeydownInput) {\n pickerOptions.value.handleKeydownInput(event as KeyboardEvent)\n }\n}\nconst onUserInput = (e: string) => {\n userInput.value = e\n // Temporary fix when the picker is dismissed and the input box\n // is focused, just mimic the behavior of antdesign.\n if (!pickerVisible.value) {\n pickerVisible.value = true\n }\n}\n\nconst handleStartInput = (event: Event) => {\n const target = event.target as HTMLInputElement\n if (userInput.value) {\n userInput.value = [target.value, userInput.value[1]]\n } else {\n userInput.value = [target.value, null]\n }\n}\n\nconst handleEndInput = (event: Event) => {\n const target = event.target as HTMLInputElement\n if (userInput.value) {\n userInput.value = [userInput.value[0], target.value]\n } else {\n userInput.value = [null, target.value]\n }\n}\n\nconst handleStartChange = () => {\n const values = userInput.value as string[]\n const value = parseUserInputToDayjs(values && values[0]) as Dayjs\n const parsedVal = unref(parsedValue) as [Dayjs, Dayjs]\n if (value && value.isValid()) {\n userInput.value = [\n formatToString(value) as string,\n displayValue.value?.[1] || null,\n ]\n const newValue = [value, parsedVal && (parsedVal[1] || null)] as DayOrDays\n if (isValidValue(newValue)) {\n emitInput(dayOrDaysToDate(newValue))\n userInput.value = null\n }\n }\n}\n\nconst handleEndChange = () => {\n const values = unref(userInput) as string[]\n const value = parseUserInputToDayjs(values && values[1]) as Dayjs\n const parsedVal = unref(parsedValue) as [Dayjs, Dayjs]\n if (value && value.isValid()) {\n userInput.value = [\n unref(displayValue)?.[0] || null,\n formatToString(value) as string,\n ]\n const newValue = [parsedVal && parsedVal[0], value] as DayOrDays\n if (isValidValue(newValue)) {\n emitInput(dayOrDaysToDate(newValue))\n userInput.value = null\n }\n }\n}\n\nconst focus = () => {\n inputRef.value?.focus()\n}\n\nconst blur = () => {\n inputRef.value?.blur()\n}\n\nprovide(PICKER_BASE_INJECTION_KEY, {\n props,\n emptyValues,\n})\nprovide(ROOT_COMMON_PICKER_INJECTION_KEY, commonPicker)\n\ndefineExpose({\n /**\n * @description focus input box.\n */\n focus,\n /**\n * @description blur input box.\n */\n blur,\n /**\n * @description opens picker\n */\n handleOpen,\n /**\n * @description closes picker\n */\n handleClose,\n /**\n * @description pick item manually\n */\n onPick,\n})\n</script>\n"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EA6OA,MAAM,QAAQ;EACd,MAAM,OAAO;EAWb,MAAM,SAAA,GAAQ,IAAA,SAAA,CAAS;EAEvB,MAAM,SAAS,cAAA,aAAa,MAAM;EAClC,MAAM,UAAU,cAAA,aAAa,OAAO;EACpC,MAAM,UAAU,cAAA,aAAa,OAAO;EAEpC,MAAM,EAAE,aAAa,sBAAA,YAAY;EACjC,MAAM,mBAAA,GAAkB,IAAA,OAAA,CACtB,kBAAA,qCACA,CAAC,CACH;EACA,MAAM,cAAc,gBAAA,eAAe,OAAO,IAAI;EAE9C,MAAM,aAAA,GAAY,IAAA,IAAA,CAAqB;EACvC,MAAM,YAAA,GAAW,IAAA,IAAA,CAAmB;EACpC,MAAM,eAAA,GAAc,IAAA,IAAA,CAAiD,IAAI;EACzE,IAAI,wBAAwB;EAE5B,MAAM,iBAAiB,8BAAA,gBAAgB;EAEvC,MAAM,eAAe,0BAAA,gBAAgB,OAAO,IAAI;EAChD,MAAM,EACJ,aACA,qBACA,WACA,eACA,eACA,cACA,WACA,QACA,mBACA,kBACA,kBACE;EAEJ,MAAM,EAAE,WAAW,aAAa,eAAe,gBAAA,mBAAmB,UAAU;GAC1E,UAAU;GACV,cAAc;IACZ,OAAO,MAAM;GACf;GACA,aAAa;IACX,IAAI,CAAC,MAAM,mBAAmB;IAC9B,cAAc,QAAQ;GACxB;GACA,WAAW,OAAO;IAChB,OACE,CAAC,yBAAyB,UAAU,OAAO,qBAAqB,KAAK;GAEzE;GACA,YAAY;IACV,IAAI,aAAa,SAAS,CAAC,MAAM,YAC3B;SAAA,CAAC,aAAa,OAChB,cAAc,MAAM,eAAe;IAAA,OAGrC,aAAa;IAEf,cAAc,QAAQ;IACtB,wBAAwB;IACxB,MAAM,iBAAiB,UAAU,SAAS,MAAM,CAAC,CAAC,MAAM,YAAA,IAAI;GAC9D;EACF,CAAC;EAED,MAAM,YAAA,GAAW,IAAA,IAAA,CAAI,KAAK;EAE1B,MAAM,iBAAA,GAAgB,IAAA,SAAA,OAAe;GACnC,OAAO,EAAE,QAAQ;GACjB,OAAO,GAAG,UAAU,MAAM,IAAI;GAC9B,QAAQ,EAAE,SAAS;GACnB,OAAO,GAAG,YAAY,eAAe,KAAK;GAC1C,OAAO,GAAG,UAAU,cAAc,KAAK;GACvC,QAAQ,EAAE,QAAQ;GAClB,aAAa,QAAQ,GAAG,UAAU,WAAW,KAAK,IAAI;GACtD,MAAM;EACR,CAAC;EAED,MAAM,gBAAA,GAAe,IAAA,SAAA,OAAe;GAClC,QAAQ,EAAE,MAAM;GAChB,QAAQ,EAAE,YAAY;GACtB,CAAC,aAAa,QAAQ,QAAQ,GAAG,cAAc,QAAQ,IAAI;EAC7D,CAAC;EAED,CAAA,GAAA,IAAA,MAAA,CAAM,gBAAgB,QAAQ;GAC5B,IAAI,CAAC,KAAK;IACR,UAAU,QAAQ;IAClB,CAAA,GAAA,IAAA,SAAA,OAAe;KACb,WAAW,MAAM,UAAU;IAC7B,CAAC;GACH,OACE,CAAA,GAAA,IAAA,SAAA,OAAe;IACb,IAAI,KACF,YAAY,QAAQ,MAAM;GAE9B,CAAC;EAEL,CAAC;EACD,MAAM,cACJ,KACA,YACG;GAEH,IAAI,WAAW,CAAC,cAAA,YAAY,KAAK,YAAY,KAAK,GAAG;IACnD,KAAK,cAAA,cAAc,GAAG;IAEtB,YAAY,YAAY,QAAQ;IAChC,MAAM,iBAAiB,UAAU,SAAS,QAAQ,CAAC,CAAC,MAAM,YAAA,IAAI;GAChE;EACF;EACA,MAAM,eAAe,MAAqB;GACxC,KAAK,WAAW,CAAC;EACnB;EAEA,MAAM,YAAA,GAAW,IAAA,SAAA,OAAmC;GAClD,IAAI,SAAS,OACX,OAAO,MAAM,KACX,SAAS,MAAM,IAAI,iBAAiB,OAAO,CAC7C;GAEF,OAAO,CAAC;EACV,CAAC;EAGD,MAAM,qBAAqB,OAAe,KAAa,QAAwB;GAC7E,MAAM,UAAU,SAAS;GACzB,IAAI,CAAC,QAAQ,QAAQ;GACrB,IAAI,CAAC,OAAO,QAAQ,OAAO;IACzB,QAAQ,EAAE,CAAC,kBAAkB,OAAO,GAAG;IACvC,QAAQ,EAAE,CAAC,MAAM;GACnB,OAAO,IAAI,QAAQ,OAAO;IACxB,QAAQ,EAAE,CAAC,kBAAkB,OAAO,GAAG;IACvC,QAAQ,EAAE,CAAC,MAAM;GACnB;EACF;EAEA,MAAM,qBAAqB;GACzB,oBAAoB,QAAQ;EAC9B;EAEA,MAAM,eAAe;GACnB,KAAK,kBAAkB,IAAI;EAC7B;EAEA,MAAM,eAAe;GACnB,oBAAoB,QAAQ;GAC5B,cAAc,QAAQ;GACtB,KAAK,kBAAkB,KAAK;EAC9B;EAEA,MAAM,mBAAmB;GACvB,cAAc,QAAQ;EACxB;EAEA,MAAM,oBAAoB;GACxB,cAAc,QAAQ;EACxB;EAEA,MAAM,gBAAA,GAAe,IAAA,SAAA,OAA0B;GAC7C,MAAM,iBAAiB,eAAe,YAAY,KAAK;GACvD,KAAA,GAAI,YAAA,QAAA,CAAQ,UAAU,KAAK,GACzB,OAAO,CACL,UAAU,MAAM,OAAO,kBAAkB,eAAe,OAAO,IAC/D,UAAU,MAAM,OAAO,kBAAkB,eAAe,OAAO,EACjE;QACK,IAAI,UAAU,UAAU,MAC7B,OAAO,UAAU;GAEnB,IAAI,aAAa,SAAS,aAAa,SAAS,CAAC,MAAM,YAAY,OAAO;GAC1E,IAAI,CAAC,aAAa,SAAS,aAAa,OAAO,OAAO;GACtD,IAAI,CAAC,cAAc,SAAS,aAAa,OAAO,OAAO;GACvD,IAAI,gBACF,OAAO,cAAc,SACnB,eAAe,SACf,cAAc,SACd,iBAAiB,QACd,eAAiC,KAAK,IAAI,IAC3C;GAEN,OAAO;EACT,CAAC;EAED,MAAM,oBAAA,GAAmB,IAAA,SAAA,OAAe,MAAM,KAAK,SAAS,MAAM,CAAC;EAEnE,MAAM,gBAAA,GAAe,IAAA,SAAA,OAAe,MAAM,KAAK,WAAW,MAAM,CAAC;EAEjE,MAAM,iBAAA,GAAgB,IAAA,SAAA,OAAe,MAAM,SAAS,OAAO;EAE3D,MAAM,kBAAA,GAAiB,IAAA,SAAA,OAAe,MAAM,SAAS,QAAQ;EAE7D,MAAM,iBAAA,GAAgB,IAAA,SAAA,OAAe,MAAM,SAAS,OAAO;EAE3D,MAAM,oBAAA,GAAmB,IAAA,SAAA,OAAe,MAAM,SAAS,UAAU;EAEjE,MAAM,eAAA,GAAc,IAAA,SAAA,OACZ,MAAM,eAAe,iBAAiB,QAAQ,wBAAA,QAAQ,wBAAA,SAC9D;EAEA,MAAM,gBAAA,GAAe,IAAA,SAAA,OAEjB,MAAM,aACN,CAAC,eAAe,SAChB,CAAC,MAAM,YACP,CAAC,aAAa,UACb,SAAS,SAAS,UAAU,MACjC;EAEA,MAAM,WAAW,UAAuB;GACtC,IAAI,MAAM,YAAY,eAAe,OAAO;GAC5C,IAAI,aAAa,OAAO;IACtB,OAAO,gBAAgB;IAGvB,IAAI,cAAc,MAAM,aACtB,cAAc,MAAM,YAAY;SAEhC,UAAU,YAAY,aAAa,KAAK;IAE1C,WAAW,YAAY,aAAa,OAAO,IAAI;IAC/C,OAAO;GACT;GACA,KAAK,OAAO;EACd;EAEA,MAAM,mBAAmB,OAAO,UAAsB;GACpD,IAAI,MAAM,YAAY,eAAe,OAAO;GAC5C,IACG,MAAM,QAAwB,YAAY,WAC3C,UAAU,SACV,CAAC,MAAM,mBAEP,cAAc,QAAQ;EAE1B;EACA,MAAM,qBAAqB;GACzB,IAAI,MAAM,YAAY,eAAe,OAAO;GAC5C,IAAI,CAAC,aAAa,SAAS,MAAM,WAC/B,SAAS,QAAQ;EAErB;EACA,MAAM,qBAAqB;GACzB,SAAS,QAAQ;EACnB;EAEA,MAAM,qBAAqB,UAAsB;GAC/C,IAAI,MAAM,YAAY,eAAe,OAAO;GAC5C,IACG,MAAM,QAAQ,EAAE,CAAC,QAAwB,YAAY,WACtD,UAAU,SACV,CAAC,MAAM,mBAEP,cAAc,QAAQ;EAE1B;EAEA,MAAM,gBAAA,GAAe,IAAA,SAAA,OAAe;GAClC,OAAO,MAAM,KAAK,SAAS,OAAO;EACpC,CAAC;EAED,MAAM,aAAa,8BAAA,YAAY;EAE/B,MAAM,YAAA,GAAW,IAAA,SAAA,QAAA,GAAe,IAAA,MAAA,CAAM,SAAS,CAAC,EAAE,WAAW,UAAU;EAEvE,MAAM,cAAA,GAAa,aAAA,eAAA,CACjB,WACC,MAAoB;GACnB,MAAM,mBAAA,GAAkB,IAAA,MAAA,CAAM,QAAQ;GACtC,MAAM,WAAA,GAAU,aAAA,aAAA,CAAa,QAAwC;GACrE,IACG,oBACE,EAAE,WAAW,mBACZ,EAAE,aAAa,CAAC,CAAC,SAAS,eAAe,MAC7C,EAAE,WAAW,WACZ,WAAW,EAAE,aAAa,CAAC,CAAC,SAAS,OAAO,GAE7C;GACF,cAAc,QAAQ;EACxB,CACF;EAEA,CAAA,GAAA,IAAA,gBAAA,OAAsB;GACpB,aAAa;EACf,CAAC;EAED,MAAM,qBAAqB;GACzB,IAAI,aAAa,SAAS,CAAC,MAAM,YAAY;GAE7C,MAAM,gBAAA,GACJ,YAAA,QAAA,CAAQ,UAAU,KAAK,KAAK,UAAU,MAAM,OAAO,MAAM,MAAM,EAAE;GAEnE,IAAI,UAAU,SAAS,CAAC,cAAc;IACpC,MAAM,QAAQ,sBAAsB,aAAa,KAAK;IACtD,IAAI,OAAO;KACT,IAAI,aAAa,KAAK,GACpB,UAAU,cAAA,gBAAgB,KAAK,CAAC;KAElC,UAAU,QAAQ;IACpB;GACF;GACA,IAAI,UAAU,UAAU,MAAM,cAAc;IAC1C,UAAU,YAAY,aAAa,KAAK;IACxC,WAAW,YAAY,aAAa,OAAO,IAAI;IAC/C,UAAU,QAAQ;GACpB;EACF;EAEA,MAAM,yBAAyB,UAAqB;GAClD,IAAI,CAAC,OAAO,OAAO;GACnB,OAAO,cAAc,MAAM,eAAgB,KAAK;EAClD;EAEA,MAAM,kBAAkB,UAAqB;GAC3C,IAAI,CAAC,OAAO,OAAO;GAInB,QAAA,GAHY,YAAA,QAAA,CAAQ,KAAK,IACrB,MAAM,KAAK,MAAM,EAAE,OAAO,MAAM,MAAM,CAAC,IACvC,MAAM,OAAO,MAAM,MAAM;EAE/B;EAEA,MAAM,gBAAgB,UAAqB;GACzC,OAAO,cAAc,MAAM,aAAc,KAAK;EAChD;EAEA,MAAM,qBAAqB,OAAO,UAAiC;GACjE,IAAI,MAAM,YAAY,eAAe,OAAO;GAE5C,MAAM,OAAO,gBAAA,aAAa,KAAsB;GAChD,YAAY,KAAsB;GAClC,IAAI,SAAS,aAAA,WAAW,KAAK;IAC3B,IAAI,cAAc,UAAU,MAAM;KAChC,cAAc,QAAQ;KACtB,MAAM,eAAe;KACrB,MAAM,gBAAgB;IACxB;IACA;GACF;GAEA,IAAI,SAAS,aAAA,WAAW,MAAM;IAC5B,IAAI,cAAc,MAAM,mBAAmB;KACzC,MAAM,eAAe;KACrB,MAAM,gBAAgB;IACxB;IACA,IAAI,cAAc,UAAU,OAAO;KACjC,cAAc,QAAQ;KACtB,OAAA,GAAM,IAAA,SAAA,CAAS;IACjB;IACA,IAAI,cAAc,MAAM,mBAAmB;KACzC,cAAc,MAAM,kBAAkB;KACtC;IACF;GACF;GAEA,IAAI,SAAS,aAAA,WAAW,KAAK;IAC3B,wBAAwB;IACxB;GACF;GAEA,IAAI,SAAS,aAAA,WAAW,SAAS,SAAS,aAAA,WAAW,aAAa;IAChE,IAAI,CAAC,cAAc,OACjB,cAAc,QAAQ;SACjB,IACL,UAAU,UAAU,QACpB,UAAU,UAAU,MACpB,aAAa,sBAAsB,aAAa,KAAK,CAAc,GACnE;KACA,aAAa;KACb,cAAc,QAAQ;IACxB,OACE,IACE,CAAC,aAAa,sBAAsB,aAAa,KAAK,CAAc,GAEpE,cAAA,UACE,UACA,uBAAuB,aAAa,MAAM,wCAC5C;IAGJ,MAAM,eAAe;IACrB,MAAM,gBAAgB;IACtB;GACF;GAGA,IAAI,UAAU,OAAO;IACnB,MAAM,gBAAgB;IACtB;GACF;GACA,IAAI,cAAc,MAAM,oBACtB,cAAc,MAAM,mBAAmB,KAAsB;EAEjE;EACA,MAAM,eAAe,MAAc;GACjC,UAAU,QAAQ;GAGlB,IAAI,CAAC,cAAc,OACjB,cAAc,QAAQ;EAE1B;EAEA,MAAM,oBAAoB,UAAiB;GACzC,MAAM,SAAS,MAAM;GACrB,IAAI,UAAU,OACZ,UAAU,QAAQ,CAAC,OAAO,OAAO,UAAU,MAAM,EAAE;QAEnD,UAAU,QAAQ,CAAC,OAAO,OAAO,IAAI;EAEzC;EAEA,MAAM,kBAAkB,UAAiB;GACvC,MAAM,SAAS,MAAM;GACrB,IAAI,UAAU,OACZ,UAAU,QAAQ,CAAC,UAAU,MAAM,IAAI,OAAO,KAAK;QAEnD,UAAU,QAAQ,CAAC,MAAM,OAAO,KAAK;EAEzC;EAEA,MAAM,0BAA0B;GAC9B,MAAM,SAAS,UAAU;GACzB,MAAM,QAAQ,sBAAsB,UAAU,OAAO,EAAE;GACvD,MAAM,aAAA,GAAY,IAAA,MAAA,CAAM,WAAW;GACnC,IAAI,SAAS,MAAM,QAAQ,GAAG;IAC5B,UAAU,QAAQ,CAChB,eAAe,KAAK,GACpB,aAAa,QAAQ,MAAM,IAC7B;IACA,MAAM,WAAW,CAAC,OAAO,cAAc,UAAU,MAAM,KAAK;IAC5D,IAAI,aAAa,QAAQ,GAAG;KAC1B,UAAU,cAAA,gBAAgB,QAAQ,CAAC;KACnC,UAAU,QAAQ;IACpB;GACF;EACF;EAEA,MAAM,wBAAwB;GAC5B,MAAM,UAAA,GAAS,IAAA,MAAA,CAAM,SAAS;GAC9B,MAAM,QAAQ,sBAAsB,UAAU,OAAO,EAAE;GACvD,MAAM,aAAA,GAAY,IAAA,MAAA,CAAM,WAAW;GACnC,IAAI,SAAS,MAAM,QAAQ,GAAG;IAC5B,UAAU,QAAQ,EAAA,GAChB,IAAA,MAAA,CAAM,YAAY,CAAC,GAAG,MAAM,MAC5B,eAAe,KAAK,CACtB;IACA,MAAM,WAAW,CAAC,aAAa,UAAU,IAAI,KAAK;IAClD,IAAI,aAAa,QAAQ,GAAG;KAC1B,UAAU,cAAA,gBAAgB,QAAQ,CAAC;KACnC,UAAU,QAAQ;IACpB;GACF;EACF;EAEA,MAAM,cAAc;GAClB,SAAS,OAAO,MAAM;EACxB;EAEA,MAAM,aAAa;GACjB,SAAS,OAAO,KAAK;EACvB;EAEA,CAAA,GAAA,IAAA,QAAA,CAAQ,kBAAA,2BAA2B;GACjC;GACA;EACF,CAAC;EACD,CAAA,GAAA,IAAA,QAAA,CAAQ,kBAAA,kCAAkC,YAAY;EAEtD,SAAa;;;;GAIX;;;;GAIA;;;;GAIA;;;;GAIA;;;;GAIA;EACF,CAAC;;GA7tBC,QAAA,GAAA,IAAA,UAAA,CAAA,IAAA,GAAA,IAAA,YAAA,EAAA,GAmLa,IAAA,MAAA,CAAA,gBAAA,SAAA,IAAA,GAnLb,IAAA,WAAA,CAmLa;IAlLP,SAAA;IAAJ,KAAI;IACH,UAAA,GAAS,IAAA,MAAA,CAAA,aAAA;IACV,QAAO;IACP,MAAA;IACA,SAAQ;GACAA,GAAAA,KAAAA,QAAM;IACd,MAAK;IACL,YAAA;IACC,YAAU,IAAA,GAAK,IAAA,MAAA,CAAA,MAAA,CAAM,CAAC,UAAU,MAAK;IACrC,gBAAY,CAAA,IAAA,GAAM,IAAA,MAAA,CAAA,MAAA,CAAM,CAAC,UAAU,MAAK,kBAAmBC,KAAAA,WAAW;IACtE,gBAAcC,KAAAA;IACd,mBAAA,GAAgB,IAAA,MAAA,CAAA,eAAA;IAChB,uBAAqBC,KAAAA;IACrB,oBAAkB;IAClB,WAAWC,KAAAA;IACX,2BAAyB;IACzB,cAAY;IACb,YAAA;IACc;IACP;IACA;;IAEI,UAAA,GAAO,IAAA,QAAA,OAsEL,CApEF,CAAA,aAAA,UAAA,GADT,IAAA,UAAA,CAAA,IAAA,GAAA,IAAA,YAAA,EAAA,GAqEW,IAAA,MAAA,CAAA,gBAAA,OAAA,GAAA;;KAnER,IAAwGC,KAAAA;KAIrG,SAAA;KAAJ,KAAI;KACJ,kBAAe;KACd,eAAiH,aAAA;KAIjH,MAA0GC,KAAAA;KAI1G,OAAA,GAAM,IAAA,MAAA,CAAA,UAAA;KACN,WAAA,GAAU,IAAA,MAAA,CAAA,cAAA;KACV,aAAaC,KAAAA;KACb,QAAA,GAAK,IAAA,eAAA,CAAA;OAAc,GAAA,IAAA,MAAA,CAAA,MAAA,CAAM,CAAC,EAAC,QAAA;OAAsB,GAAA,IAAA,MAAA,CAAA,MAAA,CAAM,CAAC,GAAE,UAAWC,KAAAA,IAAI;OAAa,GAAA,IAAA,MAAA,CAAA,MAAA,CAAM,CAAC,GAAE,UAAA,GAAU,IAAA,MAAA,CAAA,aAAA,CAAa;MAAaR,KAAAA,OAAO;;KAM1I,QAAA,GAAK,IAAA,eAAA,CAAEA,KAAAA,OAAO,KAAK;KACnB,UAAsBS,CAAAA,KAAAA,YAAsBC,KAAAA,YAAsB,cAAA,SAA2B,eAAA,SAA4B,cAAA,SAA2B,iBAAA,SAA8BF,KAAAA,SAAI;KAStL,cAAYG,KAAAA;KACZ,UAAUC,KAAAA;KACV,kBAAgB;KAChB,SAAO;KACP,UAAA,GAAO,IAAA,MAAA,CAAA,WAAA;KACP,SAAA,GAAM,IAAA,MAAA,CAAA,UAAA;KACN,WAAS;KACT,UAAQ;KACR,aAAW;KACX,cAAY;KACZ,cAAY;KACQ,qBAAA;KACpB,SAAK,OAAA,OAAA,OAAA,MAAA,GAAA,IAAA,cAAA,OAAN,CAAA,GAAW,CAAA,MAAA,CAAA;;KAEA,SAAA,GAAM,IAAA,QAAA,OAQL,CANF,YAAA,UAAA,GADR,IAAA,UAAA,CAAA,IAAA,GAAA,IAAA,YAAA,EAAA,GAOU,IAAA,MAAA,CAAA,gBAAA,MAAA,GAAA;;MALP,QAAA,GAAK,IAAA,eAAA,EAAA,GAAE,IAAA,MAAA,CAAA,OAAA,CAAO,CAAC,EAAC,MAAA,CAAA;MAChB,cAAA,GAAS,IAAA,cAAA,CAAU,kBAAgB,CAAA,SAAA,CAAA;MACf,qBAAA;;MAErB,UAAA,GAAA,IAAA,QAAA,OAA+B,GAAA,GAA/B,IAAA,UAAA,CAAA,IAAA,GAAA,IAAA,YAAA,EAAA,GAA+B,IAAA,wBAAA,CAAf,YAAA,KAAW,CAAA,EAAA,CAAA;;;KAGpB,SAAA,GAAM,IAAA,QAAA,OAQL,CANF,aAAA,SAAgBC,KAAAA,cAAAA,GADxB,IAAA,UAAA,CAAA,IAAA,GAAA,IAAA,YAAA,EAAA,GAOU,IAAA,MAAA,CAAA,gBAAA,MAAA,GAAA;;MALP,QAAA,GAAK,IAAA,eAAA,CAAA,IAAA,GAAK,IAAA,MAAA,CAAA,OAAA,CAAO,CAAC,EAAC,MAAA,EAAA,YAAA;MACnB,cAAA,GAAS,IAAA,cAAA,EAAA,GAAU,IAAA,MAAA,CAAA,YAAA,IAAA,GAAI,CAAA,SAAA,CAAA;MACvB,SAAO;;MAER,UAAA,GAAA,IAAA,QAAA,OAA6B,GAAA,GAA7B,IAAA,UAAA,CAAA,IAAA,GAAA,IAAA,YAAA,EAAA,GAA6B,IAAA,wBAAA,CAAbA,KAAAA,SAAS,CAAA,EAAA,CAAA;;;;;;;;;;;;;;;;;;IAI/B,CAAA,OAAA,GAAA,IAAA,UAAA,CAAA,IAAA,GAAA,IAAA,YAAA,CA0DuB,6BAAA,SAAA;;KAxDpB,IAAwGR,KAAAA;KAIrG,SAAA;KAAJ,KAAI;KACH,eAAa,aAAA;KACb,MAA0GC,KAAAA;KAI1G,WAAA,GAAU,IAAA,MAAA,CAAA,cAAA;KACV,UAAQ,CAAGG,KAAAA,YAAYC,KAAAA;KACvB,qBAAmBI,KAAAA;KACnB,mBAAiBC,KAAAA;KACjB,QAAA,GAAK,IAAA,eAAA,CAAE,cAAA,KAAa;KACpB,QAAA,GAAK,IAAA,eAAA,CAAEf,KAAAA,OAAO,KAAK;KACnB,cAAYW,KAAAA;KACZ,UAAUC,KAAAA;KACX,cAAa;KACb,MAAK;KACJ,SAAO;KACP,UAAA,GAAO,IAAA,MAAA,CAAA,WAAA;KACP,SAAA,GAAM,IAAA,MAAA,CAAA,UAAA;KACN,cAAa;KACb,eAAc;KACd,YAAW;KACX,aAAY;KACZ,aAAW;KACX,cAAY;KACZ,cAAY;KACQ,qBAAA;KACpB,WAAS;;KAEC,SAAA,GAAM,IAAA,QAAA,OAML,CAJF,YAAA,UAAA,GADR,IAAA,UAAA,CAAA,IAAA,GAAA,IAAA,YAAA,EAAA,GAKU,IAAA,MAAA,CAAA,gBAAA,MAAA,GAAA;;MAHP,QAAA,GAAK,IAAA,eAAA,CAAA,EAAA,GAAG,IAAA,MAAA,CAAA,OAAA,CAAO,CAAC,EAAC,MAAA,IAAA,GAAU,IAAA,MAAA,CAAA,OAAA,CAAO,CAAC,EAAC,MAAA,CAAA,CAAA;;MAErC,UAAA,GAAA,IAAA,QAAA,OAA+B,GAAA,GAA/B,IAAA,UAAA,CAAA,IAAA,GAAA,IAAA,YAAA,EAAA,GAA+B,IAAA,wBAAA,CAAf,YAAA,KAAW,CAAA,EAAA,CAAA;;;KAGpB,oBAAA,GAAe,IAAA,QAAA,OAGjB,EAAA,GAFP,IAAA,WAAA,CAEO,KAAA,QAAA,mBAAA,CAAA,SAAA,EAAA,GADL,IAAA,mBAAA,CAAiE,QAAA,EAA1D,QAAA,GAAK,IAAA,eAAA,EAAA,GAAE,IAAA,MAAA,CAAA,OAAA,CAAO,CAAC,EAAC,WAAA,CAAA,EAAkBI,IAAAA,GAAAA,IAAAA,gBAAAA,CAAAA,KAAAA,cAAc,GAAA,CAAA,CAAA,CAAA,CAAA,CAAA;KAGhD,SAAA,GAAM,IAAA,QAAA,OAQL,CANFH,KAAAA,cAAAA,GADR,IAAA,UAAA,CAAA,IAAA,GAAA,IAAA,YAAA,EAAA,GAOU,IAAA,MAAA,CAAA,gBAAA,MAAA,GAAA;;MALP,QAAA,GAAK,IAAA,eAAA,CAAE,aAAA,KAAY;MACnB,cAAA,GAAS,IAAA,cAAA,EAAA,GAAU,IAAA,MAAA,CAAA,YAAA,IAAA,GAAI,CAAA,SAAA,CAAA;MACvB,SAAO;;MAER,UAAA,GAAA,IAAA,QAAA,OAA6B,GAAA,GAA7B,IAAA,UAAA,CAAA,IAAA,GAAA,IAAA,YAAA,EAAA,GAA6B,IAAA,wBAAA,CAAbA,KAAAA,SAAS,CAAA,EAAA,CAAA;;;;;;;;;;;;;;;;;;;IAKtB,UAAA,GAAO,IAAA,QAAA,OAuBd,EAAA,GAtBF,IAAA,WAAA,CAsBE,KAAA,QAAA,WAAA;KArBC,UAAA,GAAS,IAAA,MAAA,CAAA,aAAA;KACT,gBAAA,GAAgB,IAAA,MAAA,CAAA,mBAAA;KAChB,cAAA,GAAc,IAAA,MAAA,CAAA,WAAA;KACd,QAAQI,KAAAA;KACR,YAAaC,KAAAA;KACb,YAAaC,KAAAA;KACb,cAAeC,KAAAA;KACf,MAAMZ,KAAAA;KACN,cAAea,KAAAA;KACf,SAAUC,KAAAA;KACV,aAAcC,KAAAA;KACd,YAAaC,KAAAA;KACb,gBAAkBC,KAAAA;KAClB,aAAcC,KAAAA;KACd,QAAI,OAAA,OAAA,OAAA,MAAE,GAAA,UAAA,GAAA,IAAA,MAAA,CAAA,MAAA,MAAA,GAAA,IAAA,MAAA,CAAA,MAAA,CAAA,CAAA,GAAA,IAAA;KACN,eAAc;KACd,mBAAiB,OAAA,OAAA,OAAA,MAAE,GAAA,UAAA,GAAA,IAAA,MAAA,CAAA,iBAAA,MAAA,GAAA,IAAA,MAAA,CAAA,iBAAA,CAAA,CAAA,GAAA,IAAA;KACnB,kBAAe,OAAA,OAAA,OAAA,MAAE,GAAA,UAAA,GAAA,IAAA,MAAA,CAAA,gBAAA,MAAA,GAAA,IAAA,MAAA,CAAA,gBAAA,CAAA,CAAA,GAAA,IAAA;KACV;KACP,eAAY,OAAA,OAAA,OAAA,MAAE,GAAA,UAAA,GAAA,IAAA,MAAA,CAAA,aAAA,MAAA,GAAA,IAAA,MAAA,CAAA,aAAA,CAAA,CAAA,GAAA,IAAA;KACd,aAAS,OAAA,OAAA,OAAA,MAAA,GAAA,IAAA,cAAA,OAAV,CAAA,GAAe,CAAA,MAAA,CAAA"}
1
+ {"version":3,"file":"picker.vue_vue_type_script_setup_true_lang.js","names":["$attrs","popperClass","popperStyle","fallbackPlacements","placement","id","name","placeholder","type","editable","readonly","ariaLabel","tabindex","clearIcon","startPlaceholder","endPlaceholder","rangeSeparator","format","dateFormat","timeFormat","unlinkPanels","defaultValue","showNow","showConfirm","showFooter","showWeekNumber","singlePanel"],"sources":["../../../../../../../packages/components/time-picker/src/common/picker.vue"],"sourcesContent":["<template>\n <el-tooltip\n ref=\"refPopper\"\n :visible=\"pickerVisible\"\n effect=\"light\"\n pure\n trigger=\"click\"\n v-bind=\"$attrs\"\n role=\"dialog\"\n teleported\n :transition=\"`${nsDate.namespace.value}-zoom-in-top`\"\n :popper-class=\"[`${nsDate.namespace.value}-picker__popper`, popperClass!]\"\n :popper-style=\"popperStyle\"\n :popper-options=\"elPopperOptions\"\n :fallback-placements=\"fallbackPlacements\"\n :gpu-acceleration=\"false\"\n :placement=\"placement\"\n :stop-popper-mouse-event=\"false\"\n :hide-after=\"0\"\n persistent\n @before-show=\"onBeforeShow\"\n @show=\"onShow\"\n @hide=\"onHide\"\n >\n <template #default>\n <el-input\n v-if=\"!isRangeInput\"\n :id=\"\n // https://github.com/vuejs/language-tools/issues/2104#issuecomment-3092541527\n id as string\n \"\n ref=\"inputRef\"\n container-role=\"combobox\"\n :model-value=\"\n // https://github.com/vuejs/language-tools/issues/2104#issuecomment-3092541527\n displayValue as string\n \"\n :name=\"\n // https://github.com/vuejs/language-tools/issues/2104#issuecomment-3092541527\n name as string\n \"\n :size=\"pickerSize\"\n :disabled=\"pickerDisabled\"\n :placeholder=\"placeholder\"\n :class=\"[\n nsDate.b('editor'),\n nsDate.bm('editor', type),\n nsDate.is('focus', pickerVisible),\n $attrs.class,\n ]\"\n :style=\"$attrs.style\"\n :readonly=\"\n !editable ||\n readonly ||\n isDatesPicker ||\n isMonthsPicker ||\n isYearsPicker ||\n isQuartersPicker ||\n type === 'week'\n \"\n :aria-label=\"ariaLabel\"\n :tabindex=\"tabindex\"\n :validate-event=\"false\"\n @input=\"onUserInput\"\n @focus=\"handleFocus\"\n @blur=\"handleBlur\"\n @keydown=\"handleKeydownInput\"\n @change=\"handleChange\"\n @mousedown=\"onMouseDownInput\"\n @mouseenter=\"onMouseEnter\"\n @mouseleave=\"onMouseLeave\"\n @touchstart.passive=\"onTouchStartInput\"\n @click.stop\n >\n <template #prefix>\n <el-icon\n v-if=\"triggerIcon\"\n :class=\"nsInput.e('icon')\"\n @mousedown.prevent=\"onMouseDownInput\"\n @touchstart.passive=\"onTouchStartInput\"\n >\n <component :is=\"triggerIcon\" />\n </el-icon>\n </template>\n <template #suffix>\n <el-icon\n v-if=\"showClearBtn && clearIcon\"\n :class=\"`${nsInput.e('icon')} clear-icon`\"\n @mousedown.prevent=\"onClearIconMousedown\"\n @click=\"onClear\"\n >\n <component :is=\"clearIcon\" />\n </el-icon>\n </template>\n </el-input>\n <picker-range-trigger\n v-else\n :id=\"\n // https://github.com/vuejs/language-tools/issues/2104#issuecomment-3092541527\n id as string[]\n \"\n ref=\"inputRef\"\n :model-value=\"displayValue\"\n :name=\"\n // https://github.com/vuejs/language-tools/issues/2104#issuecomment-3092541527\n name as string[]\n \"\n :disabled=\"pickerDisabled\"\n :readonly=\"!editable || readonly\"\n :start-placeholder=\"startPlaceholder\"\n :end-placeholder=\"endPlaceholder\"\n :class=\"rangeInputKls\"\n :style=\"$attrs.style\"\n :aria-label=\"ariaLabel\"\n :tabindex=\"tabindex\"\n autocomplete=\"off\"\n role=\"combobox\"\n @click=\"onMouseDownInput\"\n @focus=\"handleFocus\"\n @blur=\"handleBlur\"\n @start-input=\"handleStartInput\"\n @start-change=\"handleStartChange\"\n @end-input=\"handleEndInput\"\n @end-change=\"handleEndChange\"\n @mousedown=\"onMouseDownInput\"\n @mouseenter=\"onMouseEnter\"\n @mouseleave=\"onMouseLeave\"\n @touchstart.passive=\"onTouchStartInput\"\n @keydown=\"handleKeydownInput\"\n >\n <template #prefix>\n <el-icon\n v-if=\"triggerIcon\"\n :class=\"[nsInput.e('icon'), nsRange.e('icon')]\"\n >\n <component :is=\"triggerIcon\" />\n </el-icon>\n </template>\n <template #range-separator>\n <slot name=\"range-separator\">\n <span :class=\"nsRange.b('separator')\">{{ rangeSeparator }}</span>\n </slot>\n </template>\n <template #suffix>\n <el-icon\n v-if=\"clearIcon\"\n :class=\"clearIconKls\"\n @mousedown.prevent=\"onClearIconMousedown\"\n @click=\"onClear\"\n >\n <component :is=\"clearIcon\" />\n </el-icon>\n </template>\n </picker-range-trigger>\n </template>\n <template #content>\n <slot\n :visible=\"pickerVisible\"\n :actual-visible=\"pickerActualVisible\"\n :parsed-value=\"parsedValue\"\n :format=\"format\"\n :date-format=\"dateFormat\"\n :time-format=\"timeFormat\"\n :unlink-panels=\"unlinkPanels\"\n :type=\"type\"\n :default-value=\"defaultValue\"\n :show-now=\"showNow\"\n :show-confirm=\"showConfirm\"\n :show-footer=\"showFooter\"\n :show-week-number=\"showWeekNumber\"\n :single-panel=\"singlePanel\"\n @pick=\"onPick\"\n @select-range=\"setSelectionRange\"\n @set-picker-option=\"onSetPickerOption\"\n @calendar-change=\"onCalendarChange\"\n @clear=\"onClear\"\n @panel-change=\"onPanelChange\"\n @mousedown.stop\n />\n </template>\n </el-tooltip>\n</template>\n\n<script lang=\"ts\" setup>\nimport {\n computed,\n inject,\n nextTick,\n onBeforeUnmount,\n provide,\n ref,\n unref,\n useAttrs,\n watch,\n} from 'vue'\nimport { onClickOutside, unrefElement } from '@vueuse/core'\nimport {\n useEmptyValues,\n useFocusController,\n useNamespace,\n} from '@element-plus/hooks'\nimport {\n useFormDisabled,\n useFormItem,\n useFormSize,\n} from '@element-plus/components/form'\nimport ElInput from '@element-plus/components/input'\nimport ElIcon from '@element-plus/components/icon'\nimport ElTooltip from '@element-plus/components/tooltip'\nimport { NOOP, debugWarn, getEventCode, isArray } from '@element-plus/utils'\nimport {\n CHANGE_EVENT,\n EVENT_CODE,\n UPDATE_MODEL_EVENT,\n} from '@element-plus/constants'\nimport { Calendar, Clock } from '@element-plus/icons-vue'\nimport { dayOrDaysToDate, valueEquals } from '../utils'\nimport {\n PICKER_BASE_INJECTION_KEY,\n PICKER_POPPER_OPTIONS_INJECTION_KEY,\n ROOT_COMMON_PICKER_INJECTION_KEY,\n} from '../constants'\nimport { useCommonPicker } from '../composables/use-common-picker'\nimport { timePickerDefaultProps } from './props'\nimport PickerRangeTrigger from './picker-range-trigger.vue'\n\nimport type { InputInstance } from '@element-plus/components/input'\nimport type { Dayjs } from 'dayjs'\nimport type { ComponentPublicInstance, Ref } from 'vue'\nimport type { Options } from '@popperjs/core'\nimport type { DayOrDays, TimePickerDefaultProps, UserInput } from './props'\nimport type { TooltipInstance } from '@element-plus/components/tooltip'\n\ndefineOptions({\n name: 'Picker',\n})\n\nconst props = defineProps(timePickerDefaultProps)\nconst emit = defineEmits([\n UPDATE_MODEL_EVENT,\n CHANGE_EVENT,\n 'focus',\n 'blur',\n 'clear',\n 'calendar-change',\n 'panel-change',\n 'visible-change',\n 'keydown',\n])\nconst attrs = useAttrs()\n\nconst nsDate = useNamespace('date')\nconst nsInput = useNamespace('input')\nconst nsRange = useNamespace('range')\n\nconst { formItem } = useFormItem()\nconst elPopperOptions = inject(\n PICKER_POPPER_OPTIONS_INJECTION_KEY,\n {} as Options\n)\nconst emptyValues = useEmptyValues(props, null)\n\nconst refPopper = ref<TooltipInstance>()\nconst inputRef = ref<InputInstance>()\nconst valueOnOpen = ref<TimePickerDefaultProps['modelValue'] | null>(null)\nlet hasJustTabExitedInput = false\nlet isClearIconMousedown = false\n\nconst pickerDisabled = useFormDisabled()\n\nconst commonPicker = useCommonPicker(props, emit)\nconst {\n parsedValue,\n pickerActualVisible,\n userInput,\n pickerVisible,\n pickerOptions,\n valueIsEmpty,\n emitInput,\n onPick,\n onSetPickerOption,\n onCalendarChange,\n onPanelChange,\n} = commonPicker\n\nconst { isFocused, handleFocus, handleBlur } = useFocusController(inputRef, {\n disabled: pickerDisabled,\n beforeFocus() {\n return props.readonly\n },\n afterFocus() {\n if (!props.automaticDropdown) return\n // Clicking the clear icon focuses the input, which must not open the panel (#24826)\n if (isClearIconMousedown) {\n isClearIconMousedown = false\n return\n }\n pickerVisible.value = true\n },\n beforeBlur(event) {\n return (\n !hasJustTabExitedInput && refPopper.value?.isFocusInsideContent(event)\n )\n },\n afterBlur() {\n if (isTimePicker.value && !props.saveOnBlur) {\n if (!valueIsEmpty.value) {\n pickerOptions.value.handleCancel?.()\n }\n } else {\n handleChange()\n }\n pickerVisible.value = false\n hasJustTabExitedInput = false\n isClearIconMousedown = false\n props.validateEvent && formItem?.validate('blur').catch(NOOP)\n },\n})\n\nconst hovering = ref(false)\n\nconst rangeInputKls = computed(() => [\n nsDate.b('editor'),\n nsDate.bm('editor', props.type),\n nsInput.e('wrapper'),\n nsDate.is('disabled', pickerDisabled.value),\n nsDate.is('active', pickerVisible.value),\n nsRange.b('editor'),\n pickerSize ? nsRange.bm('editor', pickerSize.value) : '',\n attrs.class,\n])\n\nconst clearIconKls = computed(() => [\n nsInput.e('icon'),\n nsRange.e('close-icon'),\n !showClearBtn.value ? nsRange.em('close-icon', 'hidden') : '',\n])\n\nwatch(pickerVisible, (val) => {\n if (!val) {\n userInput.value = null\n nextTick(() => {\n emitChange(props.modelValue)\n })\n } else {\n nextTick(() => {\n if (val) {\n valueOnOpen.value = props.modelValue\n }\n })\n }\n})\nconst emitChange = (\n val: TimePickerDefaultProps['modelValue'] | null,\n isClear?: boolean\n) => {\n // determine user real change only\n if (\n isClear ||\n !(\n valueEquals(val, valueOnOpen.value) ||\n // the parent may normalize the cleared value to another empty\n // representation, e.g. `null` to '' (#24826)\n (emptyValues.isEmptyValue(val) &&\n emptyValues.isEmptyValue(valueOnOpen.value))\n )\n ) {\n emit(CHANGE_EVENT, val)\n // Set the value of valueOnOpen when clearing to avoid triggering change events multiple times.\n isClear && (valueOnOpen.value = val)\n props.validateEvent && formItem?.validate('change').catch(NOOP)\n }\n}\nconst emitKeydown = (e: KeyboardEvent) => {\n emit('keydown', e)\n}\n\nconst refInput = computed<HTMLInputElement[]>(() => {\n if (inputRef.value) {\n return Array.from<HTMLInputElement>(\n inputRef.value.$el.querySelectorAll('input')\n )\n }\n return []\n})\n\n// @ts-ignore\nconst setSelectionRange = (start: number, end: number, pos?: 'min' | 'max') => {\n const _inputs = refInput.value\n if (!_inputs.length) return\n if (!pos || pos === 'min') {\n _inputs[0].setSelectionRange(start, end)\n _inputs[0].focus()\n } else if (pos === 'max') {\n _inputs[1].setSelectionRange(start, end)\n _inputs[1].focus()\n }\n}\n\nconst onBeforeShow = () => {\n pickerActualVisible.value = true\n}\n\nconst onShow = () => {\n emit('visible-change', true)\n}\n\nconst onHide = () => {\n pickerActualVisible.value = false\n pickerVisible.value = false\n emit('visible-change', false)\n}\n\nconst handleOpen = () => {\n pickerVisible.value = true\n}\n\nconst handleClose = () => {\n pickerVisible.value = false\n}\n\nconst displayValue = computed<UserInput>(() => {\n const formattedValue = formatToString(parsedValue.value)\n if (isArray(userInput.value)) {\n return [\n userInput.value[0] ?? (formattedValue && formattedValue[0]) ?? '',\n userInput.value[1] ?? (formattedValue && formattedValue[1]) ?? '',\n ]\n } else if (userInput.value !== null) {\n return userInput.value\n }\n if (isTimePicker.value && valueIsEmpty.value && !props.saveOnBlur) return ''\n if (!isTimePicker.value && valueIsEmpty.value) return ''\n if (!pickerVisible.value && valueIsEmpty.value) return ''\n if (formattedValue) {\n return isDatesPicker.value ||\n isMonthsPicker.value ||\n isYearsPicker.value ||\n isQuartersPicker.value\n ? (formattedValue as Array<string>).join(', ')\n : formattedValue\n }\n return ''\n})\n\nconst isTimeLikePicker = computed(() => props.type.includes('time'))\n\nconst isTimePicker = computed(() => props.type.startsWith('time'))\n\nconst isDatesPicker = computed(() => props.type === 'dates')\n\nconst isMonthsPicker = computed(() => props.type === 'months')\n\nconst isYearsPicker = computed(() => props.type === 'years')\n\nconst isQuartersPicker = computed(() => props.type === 'quarters')\n\nconst triggerIcon = computed(\n () => props.prefixIcon || (isTimeLikePicker.value ? Clock : Calendar)\n)\n\nconst showClearBtn = computed(\n () =>\n props.clearable &&\n !pickerDisabled.value &&\n !props.readonly &&\n !valueIsEmpty.value &&\n (hovering.value || isFocused.value)\n)\n\nconst onClearIconMousedown = () => {\n isClearIconMousedown = true\n}\n\nconst onClear = (event?: MouseEvent) => {\n if (props.readonly || pickerDisabled.value) return\n isClearIconMousedown = false\n if (showClearBtn.value) {\n event?.stopPropagation()\n // When the handleClear Function was provided, emit null will be executed inside it\n // There is no need for us to execute emit null twice. #14752\n if (pickerOptions.value.handleClear) {\n pickerOptions.value.handleClear()\n } else {\n emitInput(emptyValues.valueOnClear.value)\n }\n emitChange(emptyValues.valueOnClear.value, true)\n onHide()\n }\n emit('clear')\n}\n\nconst onMouseDownInput = async (event: MouseEvent) => {\n if (props.readonly || pickerDisabled.value) return\n if (\n (event.target as HTMLElement)?.tagName !== 'INPUT' ||\n isFocused.value ||\n !props.automaticDropdown\n ) {\n pickerVisible.value = true\n }\n}\nconst onMouseEnter = () => {\n if (props.readonly || pickerDisabled.value) return\n if (!valueIsEmpty.value && props.clearable) {\n hovering.value = true\n }\n}\nconst onMouseLeave = () => {\n hovering.value = false\n isClearIconMousedown = false\n}\n\nconst onTouchStartInput = (event: TouchEvent) => {\n if (props.readonly || pickerDisabled.value) return\n if (\n (event.touches[0].target as HTMLElement)?.tagName !== 'INPUT' ||\n isFocused.value ||\n !props.automaticDropdown\n ) {\n pickerVisible.value = true\n }\n}\n\nconst isRangeInput = computed(() => {\n return props.type.includes('range')\n})\n\nconst pickerSize = useFormSize()\n\nconst popperEl = computed(() => unref(refPopper)?.popperRef?.contentRef)\n\nconst stophandle = onClickOutside(\n inputRef as Ref<ComponentPublicInstance>,\n (e: PointerEvent) => {\n const unrefedPopperEl = unref(popperEl)\n const inputEl = unrefElement(inputRef as Ref<ComponentPublicInstance>)\n if (\n (unrefedPopperEl &&\n (e.target === unrefedPopperEl ||\n e.composedPath().includes(unrefedPopperEl))) ||\n e.target === inputEl ||\n (inputEl && e.composedPath().includes(inputEl))\n )\n return\n pickerVisible.value = false\n }\n)\n\nonBeforeUnmount(() => {\n stophandle?.()\n})\n\nconst handleChange = () => {\n if (isTimePicker.value && !props.saveOnBlur) return\n\n const isRangeEmpty =\n isArray(userInput.value) && userInput.value.every((v) => v === '')\n\n if (userInput.value && !isRangeEmpty) {\n const value = parseUserInputToDayjs(displayValue.value)\n if (value) {\n if (isValidValue(value)) {\n emitInput(dayOrDaysToDate(value))\n }\n userInput.value = null\n }\n }\n if (userInput.value === '' || isRangeEmpty) {\n emitInput(emptyValues.valueOnClear.value)\n emitChange(emptyValues.valueOnClear.value, true)\n userInput.value = null\n }\n}\n\nconst parseUserInputToDayjs = (value: UserInput) => {\n if (!value) return null\n return pickerOptions.value.parseUserInput!(value)\n}\n\nconst formatToString = (value: DayOrDays) => {\n if (!value) return null\n const res = isArray(value)\n ? value.map((_) => _.format(props.format))\n : value.format(props.format)\n return res as UserInput\n}\n\nconst isValidValue = (value: DayOrDays) => {\n return pickerOptions.value.isValidValue!(value)\n}\n\nconst handleKeydownInput = async (event: Event | KeyboardEvent) => {\n if (props.readonly || pickerDisabled.value) return\n\n const code = getEventCode(event as KeyboardEvent)\n emitKeydown(event as KeyboardEvent)\n if (code === EVENT_CODE.esc) {\n if (pickerVisible.value === true) {\n pickerVisible.value = false\n event.preventDefault()\n event.stopPropagation()\n }\n return\n }\n\n if (code === EVENT_CODE.down) {\n if (pickerOptions.value.handleFocusPicker) {\n event.preventDefault()\n event.stopPropagation()\n }\n if (pickerVisible.value === false) {\n pickerVisible.value = true\n await nextTick()\n }\n if (pickerOptions.value.handleFocusPicker) {\n pickerOptions.value.handleFocusPicker()\n return\n }\n }\n\n if (code === EVENT_CODE.tab) {\n hasJustTabExitedInput = true\n return\n }\n\n if (code === EVENT_CODE.enter || code === EVENT_CODE.numpadEnter) {\n if (!pickerVisible.value) {\n pickerVisible.value = true\n } else if (\n userInput.value === null ||\n userInput.value === '' ||\n isValidValue(parseUserInputToDayjs(displayValue.value) as DayOrDays)\n ) {\n handleChange()\n pickerVisible.value = false\n } else {\n if (\n !isValidValue(parseUserInputToDayjs(displayValue.value) as DayOrDays)\n ) {\n debugWarn(\n 'Picker',\n `Invalid user input: ${displayValue.value}. Please check the format of the input.`\n )\n }\n }\n event.preventDefault()\n event.stopPropagation()\n return\n }\n\n // if user is typing, do not let picker handle key input\n if (userInput.value) {\n event.stopPropagation()\n return\n }\n if (pickerOptions.value.handleKeydownInput) {\n pickerOptions.value.handleKeydownInput(event as KeyboardEvent)\n }\n}\nconst onUserInput = (e: string) => {\n userInput.value = e\n // Temporary fix when the picker is dismissed and the input box\n // is focused, just mimic the behavior of antdesign.\n if (!pickerVisible.value) {\n pickerVisible.value = true\n }\n}\n\nconst handleStartInput = (event: Event) => {\n const target = event.target as HTMLInputElement\n if (userInput.value) {\n userInput.value = [target.value, userInput.value[1]]\n } else {\n userInput.value = [target.value, null]\n }\n}\n\nconst handleEndInput = (event: Event) => {\n const target = event.target as HTMLInputElement\n if (userInput.value) {\n userInput.value = [userInput.value[0], target.value]\n } else {\n userInput.value = [null, target.value]\n }\n}\n\nconst handleStartChange = () => {\n const values = userInput.value as string[]\n const value = parseUserInputToDayjs(values && values[0]) as Dayjs\n const parsedVal = unref(parsedValue) as [Dayjs, Dayjs]\n if (value && value.isValid()) {\n userInput.value = [\n formatToString(value) as string,\n displayValue.value?.[1] || null,\n ]\n const newValue = [value, parsedVal && (parsedVal[1] || null)] as DayOrDays\n if (isValidValue(newValue)) {\n emitInput(dayOrDaysToDate(newValue))\n userInput.value = null\n }\n }\n}\n\nconst handleEndChange = () => {\n const values = unref(userInput) as string[]\n const value = parseUserInputToDayjs(values && values[1]) as Dayjs\n const parsedVal = unref(parsedValue) as [Dayjs, Dayjs]\n if (value && value.isValid()) {\n userInput.value = [\n unref(displayValue)?.[0] || null,\n formatToString(value) as string,\n ]\n const newValue = [parsedVal && parsedVal[0], value] as DayOrDays\n if (isValidValue(newValue)) {\n emitInput(dayOrDaysToDate(newValue))\n userInput.value = null\n }\n }\n}\n\nconst focus = () => {\n inputRef.value?.focus()\n}\n\nconst blur = () => {\n inputRef.value?.blur()\n}\n\nprovide(PICKER_BASE_INJECTION_KEY, {\n props,\n emptyValues,\n})\nprovide(ROOT_COMMON_PICKER_INJECTION_KEY, commonPicker)\n\ndefineExpose({\n /**\n * @description focus input box.\n */\n focus,\n /**\n * @description blur input box.\n */\n blur,\n /**\n * @description opens picker\n */\n handleOpen,\n /**\n * @description closes picker\n */\n handleClose,\n /**\n * @description pick item manually\n */\n onPick,\n})\n</script>\n"],"mappings":"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"}
@@ -42,7 +42,7 @@ declare const timePickerDefaultProps: {
42
42
  readonly validateEvent: EpPropFinalized<BooleanConstructor, unknown, unknown, true, boolean>;
43
43
  readonly unlinkPanels: BooleanConstructor;
44
44
  readonly singlePanel: BooleanConstructor;
45
- readonly placement: EpPropFinalized<(new (...args: any[]) => "auto" | "left" | "right" | "bottom" | "top" | "auto-start" | "auto-end" | "top-start" | "top-end" | "bottom-start" | "bottom-end" | "right-start" | "right-end" | "left-start" | "left-end") | (() => Placement$1) | (((new (...args: any[]) => "auto" | "left" | "right" | "bottom" | "top" | "auto-start" | "auto-end" | "top-start" | "top-end" | "bottom-start" | "bottom-end" | "right-start" | "right-end" | "left-start" | "left-end") | (() => Placement$1)) | null)[], Placement$1, unknown, "bottom", boolean>;
45
+ readonly placement: EpPropFinalized<(new (...args: any[]) => "left" | "right" | "top" | "auto" | "bottom" | "auto-start" | "auto-end" | "top-start" | "top-end" | "bottom-start" | "bottom-end" | "right-start" | "right-end" | "left-start" | "left-end") | (() => Placement$1) | (((new (...args: any[]) => "left" | "right" | "top" | "auto" | "bottom" | "auto-start" | "auto-end" | "top-start" | "top-end" | "bottom-start" | "bottom-end" | "right-start" | "right-end" | "left-start" | "left-end") | (() => Placement$1)) | null)[], Placement$1, unknown, "bottom", boolean>;
46
46
  readonly fallbackPlacements: EpPropFinalized<(new (...args: any[]) => Placement$1[]) | (() => Placement$1[]) | (((new (...args: any[]) => Placement$1[]) | (() => Placement$1[])) | null)[], unknown, unknown, readonly ["bottom", "top", "right", "left"], boolean>;
47
47
  readonly disabledHours: {
48
48
  readonly type: _$vue.PropType<GetDisabledHours>;
@@ -88,7 +88,7 @@ declare const timePickerDefaultProps: {
88
88
  readonly saveOnBlur: EpPropFinalized<BooleanConstructor, unknown, unknown, true, boolean>;
89
89
  readonly prefixIcon: EpPropFinalized<(new (...args: any[]) => (string | Component) & {}) | (() => string | Component) | (((new (...args: any[]) => (string | Component) & {}) | (() => string | Component)) | null)[], unknown, unknown, "", boolean>;
90
90
  readonly size: {
91
- readonly type: _$vue.PropType<EpPropMergeType<StringConstructor, "" | "default" | "large" | "small", never>>;
91
+ readonly type: _$vue.PropType<EpPropMergeType<StringConstructor, "" | "default" | "small" | "large", never>>;
92
92
  readonly required: false;
93
93
  readonly validator: ((val: unknown) => boolean) | undefined;
94
94
  __epPropKey: true;
@@ -97,7 +97,7 @@ declare const timePickerDefaultProps: {
97
97
  readonly disabled: EpPropFinalized<BooleanConstructor, unknown, unknown, undefined, boolean>;
98
98
  readonly placeholder: EpPropFinalized<StringConstructor, unknown, unknown, "", boolean>;
99
99
  readonly popperOptions: EpPropFinalized<(new (...args: any[]) => Partial<Options>) | (() => Partial<Options>) | (((new (...args: any[]) => Partial<Options>) | (() => Partial<Options>)) | null)[], unknown, unknown, () => {}, boolean>;
100
- readonly modelValue: EpPropFinalized<(new (...args: any[]) => string | number | Date | string[] | number[] | Date[]) | (() => ModelValueType | null) | (((new (...args: any[]) => string | number | Date | string[] | number[] | Date[]) | (() => ModelValueType | null)) | null)[], unknown, unknown, "", boolean>;
100
+ readonly modelValue: EpPropFinalized<(new (...args: any[]) => string | number | string[] | Date | number[] | Date[]) | (() => ModelValueType | null) | (((new (...args: any[]) => string | number | string[] | Date | number[] | Date[]) | (() => ModelValueType | null)) | null)[], unknown, unknown, "", boolean>;
101
101
  readonly rangeSeparator: EpPropFinalized<StringConstructor, unknown, unknown, "-", boolean>;
102
102
  readonly startPlaceholder: StringConstructor;
103
103
  readonly endPlaceholder: StringConstructor;
@@ -15,9 +15,9 @@ declare const __VLS_export: _$vue.DefineComponent<_$vue.ExtractPropTypes<{
15
15
  readonly actualVisible: EpPropFinalized<BooleanConstructor, unknown, unknown, undefined, boolean>;
16
16
  readonly format: EpPropFinalized<StringConstructor, unknown, unknown, "", boolean>;
17
17
  }>, {}, {}, {}, {}, _$vue.ComponentOptionsMixin, _$vue.ComponentOptionsMixin, {
18
- "select-range": (...args: any[]) => void;
19
18
  pick: (...args: any[]) => void;
20
19
  "set-picker-option": (...args: any[]) => void;
20
+ "select-range": (...args: any[]) => void;
21
21
  }, string, _$vue.PublicProps, Readonly<_$vue.ExtractPropTypes<{
22
22
  readonly datetimeRole: StringConstructor;
23
23
  readonly parsedValue: {
@@ -30,9 +30,9 @@ declare const __VLS_export: _$vue.DefineComponent<_$vue.ExtractPropTypes<{
30
30
  readonly actualVisible: EpPropFinalized<BooleanConstructor, unknown, unknown, undefined, boolean>;
31
31
  readonly format: EpPropFinalized<StringConstructor, unknown, unknown, "", boolean>;
32
32
  }>> & Readonly<{
33
- "onSelect-range"?: ((...args: any[]) => any) | undefined;
34
33
  onPick?: ((...args: any[]) => any) | undefined;
35
34
  "onSet-picker-option"?: ((...args: any[]) => any) | undefined;
35
+ "onSelect-range"?: ((...args: any[]) => any) | undefined;
36
36
  }>, {
37
37
  readonly visible: boolean;
38
38
  readonly format: string;
@@ -14,9 +14,9 @@ declare const __VLS_export: _$vue.DefineComponent<_$vue.ExtractPropTypes<{
14
14
  readonly actualVisible: EpPropFinalized<BooleanConstructor, unknown, unknown, undefined, boolean>;
15
15
  readonly format: EpPropFinalized<StringConstructor, unknown, unknown, "", boolean>;
16
16
  }>, {}, {}, {}, {}, _$vue.ComponentOptionsMixin, _$vue.ComponentOptionsMixin, {
17
- "select-range": (...args: any[]) => void;
18
17
  pick: (...args: any[]) => void;
19
18
  "set-picker-option": (...args: any[]) => void;
19
+ "select-range": (...args: any[]) => void;
20
20
  }, string, _$vue.PublicProps, Readonly<_$vue.ExtractPropTypes<{
21
21
  readonly parsedValue: {
22
22
  readonly type: _$vue.PropType<[dayjs.Dayjs, dayjs.Dayjs]>;
@@ -28,9 +28,9 @@ declare const __VLS_export: _$vue.DefineComponent<_$vue.ExtractPropTypes<{
28
28
  readonly actualVisible: EpPropFinalized<BooleanConstructor, unknown, unknown, undefined, boolean>;
29
29
  readonly format: EpPropFinalized<StringConstructor, unknown, unknown, "", boolean>;
30
30
  }>> & Readonly<{
31
- "onSelect-range"?: ((...args: any[]) => any) | undefined;
32
31
  onPick?: ((...args: any[]) => any) | undefined;
33
32
  "onSet-picker-option"?: ((...args: any[]) => any) | undefined;
33
+ "onSelect-range"?: ((...args: any[]) => any) | undefined;
34
34
  }>, {
35
35
  readonly visible: boolean;
36
36
  readonly format: string;