element-plus-mobile 0.1.1 → 0.1.2

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 (652) hide show
  1. package/README.md +1 -1
  2. package/attributes.json +1 -1
  3. package/dist/index.css +1 -1
  4. package/dist/index.full.js +594 -905
  5. package/dist/index.full.min.js +8 -8
  6. package/dist/index.full.min.js.map +1 -1
  7. package/dist/index.full.min.mjs +8 -8
  8. package/dist/index.full.min.mjs.map +1 -1
  9. package/dist/index.full.mjs +593 -904
  10. package/dist/locale/af.js +1 -1
  11. package/dist/locale/af.min.js +1 -1
  12. package/dist/locale/af.min.mjs +1 -1
  13. package/dist/locale/af.mjs +1 -1
  14. package/dist/locale/ar-eg.js +1 -1
  15. package/dist/locale/ar-eg.min.js +1 -1
  16. package/dist/locale/ar-eg.min.mjs +1 -1
  17. package/dist/locale/ar-eg.mjs +1 -1
  18. package/dist/locale/ar.js +1 -1
  19. package/dist/locale/ar.min.js +1 -1
  20. package/dist/locale/ar.min.mjs +1 -1
  21. package/dist/locale/ar.mjs +1 -1
  22. package/dist/locale/az.js +1 -1
  23. package/dist/locale/az.min.js +1 -1
  24. package/dist/locale/az.min.mjs +1 -1
  25. package/dist/locale/az.mjs +1 -1
  26. package/dist/locale/bg.js +1 -1
  27. package/dist/locale/bg.min.js +1 -1
  28. package/dist/locale/bg.min.mjs +1 -1
  29. package/dist/locale/bg.mjs +1 -1
  30. package/dist/locale/bn.js +1 -1
  31. package/dist/locale/bn.min.js +1 -1
  32. package/dist/locale/bn.min.mjs +1 -1
  33. package/dist/locale/bn.mjs +1 -1
  34. package/dist/locale/ca.js +1 -1
  35. package/dist/locale/ca.min.js +1 -1
  36. package/dist/locale/ca.min.mjs +1 -1
  37. package/dist/locale/ca.mjs +1 -1
  38. package/dist/locale/ckb.js +1 -1
  39. package/dist/locale/ckb.min.js +1 -1
  40. package/dist/locale/ckb.min.mjs +1 -1
  41. package/dist/locale/ckb.mjs +1 -1
  42. package/dist/locale/cs.js +1 -1
  43. package/dist/locale/cs.min.js +1 -1
  44. package/dist/locale/cs.min.mjs +1 -1
  45. package/dist/locale/cs.mjs +1 -1
  46. package/dist/locale/da.js +1 -1
  47. package/dist/locale/da.min.js +1 -1
  48. package/dist/locale/da.min.mjs +1 -1
  49. package/dist/locale/da.mjs +1 -1
  50. package/dist/locale/de.js +1 -1
  51. package/dist/locale/de.min.js +1 -1
  52. package/dist/locale/de.min.mjs +1 -1
  53. package/dist/locale/de.mjs +1 -1
  54. package/dist/locale/el.js +1 -1
  55. package/dist/locale/el.min.js +1 -1
  56. package/dist/locale/el.min.mjs +1 -1
  57. package/dist/locale/el.mjs +1 -1
  58. package/dist/locale/en.js +1 -1
  59. package/dist/locale/en.min.js +1 -1
  60. package/dist/locale/en.min.mjs +1 -1
  61. package/dist/locale/en.mjs +1 -1
  62. package/dist/locale/eo.js +1 -1
  63. package/dist/locale/eo.min.js +1 -1
  64. package/dist/locale/eo.min.mjs +1 -1
  65. package/dist/locale/eo.mjs +1 -1
  66. package/dist/locale/es.js +1 -1
  67. package/dist/locale/es.min.js +1 -1
  68. package/dist/locale/es.min.mjs +1 -1
  69. package/dist/locale/es.mjs +1 -1
  70. package/dist/locale/et.js +1 -1
  71. package/dist/locale/et.min.js +1 -1
  72. package/dist/locale/et.min.mjs +1 -1
  73. package/dist/locale/et.mjs +1 -1
  74. package/dist/locale/eu.js +1 -1
  75. package/dist/locale/eu.min.js +1 -1
  76. package/dist/locale/eu.min.mjs +1 -1
  77. package/dist/locale/eu.mjs +1 -1
  78. package/dist/locale/fa.js +1 -1
  79. package/dist/locale/fa.min.js +1 -1
  80. package/dist/locale/fa.min.mjs +1 -1
  81. package/dist/locale/fa.mjs +1 -1
  82. package/dist/locale/fi.js +1 -1
  83. package/dist/locale/fi.min.js +1 -1
  84. package/dist/locale/fi.min.mjs +1 -1
  85. package/dist/locale/fi.mjs +1 -1
  86. package/dist/locale/fr.js +1 -1
  87. package/dist/locale/fr.min.js +1 -1
  88. package/dist/locale/fr.min.mjs +1 -1
  89. package/dist/locale/fr.mjs +1 -1
  90. package/dist/locale/he.js +1 -1
  91. package/dist/locale/he.min.js +1 -1
  92. package/dist/locale/he.min.mjs +1 -1
  93. package/dist/locale/he.mjs +1 -1
  94. package/dist/locale/hi.js +1 -1
  95. package/dist/locale/hi.min.js +1 -1
  96. package/dist/locale/hi.min.mjs +1 -1
  97. package/dist/locale/hi.mjs +1 -1
  98. package/dist/locale/hr.js +1 -1
  99. package/dist/locale/hr.min.js +1 -1
  100. package/dist/locale/hr.min.mjs +1 -1
  101. package/dist/locale/hr.mjs +1 -1
  102. package/dist/locale/hu.js +1 -1
  103. package/dist/locale/hu.min.js +1 -1
  104. package/dist/locale/hu.min.mjs +1 -1
  105. package/dist/locale/hu.mjs +1 -1
  106. package/dist/locale/hy-am.js +1 -1
  107. package/dist/locale/hy-am.min.js +1 -1
  108. package/dist/locale/hy-am.min.mjs +1 -1
  109. package/dist/locale/hy-am.mjs +1 -1
  110. package/dist/locale/id.js +1 -1
  111. package/dist/locale/id.min.js +1 -1
  112. package/dist/locale/id.min.mjs +1 -1
  113. package/dist/locale/id.mjs +1 -1
  114. package/dist/locale/it.js +1 -1
  115. package/dist/locale/it.min.js +1 -1
  116. package/dist/locale/it.min.mjs +1 -1
  117. package/dist/locale/it.mjs +1 -1
  118. package/dist/locale/ja.js +1 -1
  119. package/dist/locale/ja.min.js +1 -1
  120. package/dist/locale/ja.min.mjs +1 -1
  121. package/dist/locale/ja.mjs +1 -1
  122. package/dist/locale/kk.js +1 -1
  123. package/dist/locale/kk.min.js +1 -1
  124. package/dist/locale/kk.min.mjs +1 -1
  125. package/dist/locale/kk.mjs +1 -1
  126. package/dist/locale/km.js +1 -1
  127. package/dist/locale/km.min.js +1 -1
  128. package/dist/locale/km.min.mjs +1 -1
  129. package/dist/locale/km.mjs +1 -1
  130. package/dist/locale/ko.js +1 -1
  131. package/dist/locale/ko.min.js +1 -1
  132. package/dist/locale/ko.min.mjs +1 -1
  133. package/dist/locale/ko.mjs +1 -1
  134. package/dist/locale/ku.js +1 -1
  135. package/dist/locale/ku.min.js +1 -1
  136. package/dist/locale/ku.min.mjs +1 -1
  137. package/dist/locale/ku.mjs +1 -1
  138. package/dist/locale/ky.js +1 -1
  139. package/dist/locale/ky.min.js +1 -1
  140. package/dist/locale/ky.min.mjs +1 -1
  141. package/dist/locale/ky.mjs +1 -1
  142. package/dist/locale/lo.js +1 -1
  143. package/dist/locale/lo.min.js +1 -1
  144. package/dist/locale/lo.min.mjs +1 -1
  145. package/dist/locale/lo.mjs +1 -1
  146. package/dist/locale/lt.js +1 -1
  147. package/dist/locale/lt.min.js +1 -1
  148. package/dist/locale/lt.min.mjs +1 -1
  149. package/dist/locale/lt.mjs +1 -1
  150. package/dist/locale/lv.js +1 -1
  151. package/dist/locale/lv.min.js +1 -1
  152. package/dist/locale/lv.min.mjs +1 -1
  153. package/dist/locale/lv.mjs +1 -1
  154. package/dist/locale/mg.js +1 -1
  155. package/dist/locale/mg.min.js +1 -1
  156. package/dist/locale/mg.min.mjs +1 -1
  157. package/dist/locale/mg.mjs +1 -1
  158. package/dist/locale/mn.js +1 -1
  159. package/dist/locale/mn.min.js +1 -1
  160. package/dist/locale/mn.min.mjs +1 -1
  161. package/dist/locale/mn.mjs +1 -1
  162. package/dist/locale/ms.js +1 -1
  163. package/dist/locale/ms.min.js +1 -1
  164. package/dist/locale/ms.min.mjs +1 -1
  165. package/dist/locale/ms.mjs +1 -1
  166. package/dist/locale/my.js +1 -1
  167. package/dist/locale/my.min.js +1 -1
  168. package/dist/locale/my.min.mjs +1 -1
  169. package/dist/locale/my.mjs +1 -1
  170. package/dist/locale/nb-no.js +1 -1
  171. package/dist/locale/nb-no.min.js +1 -1
  172. package/dist/locale/nb-no.min.mjs +1 -1
  173. package/dist/locale/nb-no.mjs +1 -1
  174. package/dist/locale/nl.js +1 -1
  175. package/dist/locale/nl.min.js +1 -1
  176. package/dist/locale/nl.min.mjs +1 -1
  177. package/dist/locale/nl.mjs +1 -1
  178. package/dist/locale/no.js +1 -1
  179. package/dist/locale/no.min.js +1 -1
  180. package/dist/locale/no.min.mjs +1 -1
  181. package/dist/locale/no.mjs +1 -1
  182. package/dist/locale/pa.js +1 -1
  183. package/dist/locale/pa.min.js +1 -1
  184. package/dist/locale/pa.min.mjs +1 -1
  185. package/dist/locale/pa.mjs +1 -1
  186. package/dist/locale/pl.js +1 -1
  187. package/dist/locale/pl.min.js +1 -1
  188. package/dist/locale/pl.min.mjs +1 -1
  189. package/dist/locale/pl.mjs +1 -1
  190. package/dist/locale/pt-br.js +1 -1
  191. package/dist/locale/pt-br.min.js +1 -1
  192. package/dist/locale/pt-br.min.mjs +1 -1
  193. package/dist/locale/pt-br.mjs +1 -1
  194. package/dist/locale/pt.js +1 -1
  195. package/dist/locale/pt.min.js +1 -1
  196. package/dist/locale/pt.min.mjs +1 -1
  197. package/dist/locale/pt.mjs +1 -1
  198. package/dist/locale/ro.js +1 -1
  199. package/dist/locale/ro.min.js +1 -1
  200. package/dist/locale/ro.min.mjs +1 -1
  201. package/dist/locale/ro.mjs +1 -1
  202. package/dist/locale/ru.js +1 -1
  203. package/dist/locale/ru.min.js +1 -1
  204. package/dist/locale/ru.min.mjs +1 -1
  205. package/dist/locale/ru.mjs +1 -1
  206. package/dist/locale/sk.js +1 -1
  207. package/dist/locale/sk.min.js +1 -1
  208. package/dist/locale/sk.min.mjs +1 -1
  209. package/dist/locale/sk.mjs +1 -1
  210. package/dist/locale/sl.js +1 -1
  211. package/dist/locale/sl.min.js +1 -1
  212. package/dist/locale/sl.min.mjs +1 -1
  213. package/dist/locale/sl.mjs +1 -1
  214. package/dist/locale/sr.js +1 -1
  215. package/dist/locale/sr.min.js +1 -1
  216. package/dist/locale/sr.min.mjs +1 -1
  217. package/dist/locale/sr.mjs +1 -1
  218. package/dist/locale/sv.js +1 -1
  219. package/dist/locale/sv.min.js +1 -1
  220. package/dist/locale/sv.min.mjs +1 -1
  221. package/dist/locale/sv.mjs +1 -1
  222. package/dist/locale/sw.js +1 -1
  223. package/dist/locale/sw.min.js +1 -1
  224. package/dist/locale/sw.min.mjs +1 -1
  225. package/dist/locale/sw.mjs +1 -1
  226. package/dist/locale/ta.js +1 -1
  227. package/dist/locale/ta.min.js +1 -1
  228. package/dist/locale/ta.min.mjs +1 -1
  229. package/dist/locale/ta.mjs +1 -1
  230. package/dist/locale/te.js +1 -1
  231. package/dist/locale/te.min.js +1 -1
  232. package/dist/locale/te.min.mjs +1 -1
  233. package/dist/locale/te.mjs +1 -1
  234. package/dist/locale/th.js +1 -1
  235. package/dist/locale/th.min.js +1 -1
  236. package/dist/locale/th.min.mjs +1 -1
  237. package/dist/locale/th.mjs +1 -1
  238. package/dist/locale/tk.js +1 -1
  239. package/dist/locale/tk.min.js +1 -1
  240. package/dist/locale/tk.min.mjs +1 -1
  241. package/dist/locale/tk.mjs +1 -1
  242. package/dist/locale/tr.js +1 -1
  243. package/dist/locale/tr.min.js +1 -1
  244. package/dist/locale/tr.min.mjs +1 -1
  245. package/dist/locale/tr.mjs +1 -1
  246. package/dist/locale/ug-cn.js +1 -1
  247. package/dist/locale/ug-cn.min.js +1 -1
  248. package/dist/locale/ug-cn.min.mjs +1 -1
  249. package/dist/locale/ug-cn.mjs +1 -1
  250. package/dist/locale/uk.js +1 -1
  251. package/dist/locale/uk.min.js +1 -1
  252. package/dist/locale/uk.min.mjs +1 -1
  253. package/dist/locale/uk.mjs +1 -1
  254. package/dist/locale/uz-uz.js +1 -1
  255. package/dist/locale/uz-uz.min.js +1 -1
  256. package/dist/locale/uz-uz.min.mjs +1 -1
  257. package/dist/locale/uz-uz.mjs +1 -1
  258. package/dist/locale/vi.js +1 -1
  259. package/dist/locale/vi.min.js +1 -1
  260. package/dist/locale/vi.min.mjs +1 -1
  261. package/dist/locale/vi.mjs +1 -1
  262. package/dist/locale/zh-cn.js +1 -1
  263. package/dist/locale/zh-cn.min.js +1 -1
  264. package/dist/locale/zh-cn.min.mjs +1 -1
  265. package/dist/locale/zh-cn.mjs +1 -1
  266. package/dist/locale/zh-hk.js +1 -1
  267. package/dist/locale/zh-hk.min.js +1 -1
  268. package/dist/locale/zh-hk.min.mjs +1 -1
  269. package/dist/locale/zh-hk.mjs +1 -1
  270. package/dist/locale/zh-mo.js +1 -1
  271. package/dist/locale/zh-mo.min.js +1 -1
  272. package/dist/locale/zh-mo.min.mjs +1 -1
  273. package/dist/locale/zh-mo.mjs +1 -1
  274. package/dist/locale/zh-tw.js +1 -1
  275. package/dist/locale/zh-tw.min.js +1 -1
  276. package/dist/locale/zh-tw.min.mjs +1 -1
  277. package/dist/locale/zh-tw.mjs +1 -1
  278. package/es/component.mjs +3 -3
  279. package/es/components/button/src/button-custom.mjs +49 -1
  280. package/es/components/button/src/button-custom.mjs.map +1 -1
  281. package/es/components/button/src/button-group.mjs +1 -1
  282. package/es/components/button/src/button-group.mjs.map +1 -1
  283. package/es/components/button/src/button-group.vue_vue_type_script_setup_true_lang.mjs.map +1 -1
  284. package/es/components/button/src/button-group2.mjs.map +1 -1
  285. package/es/components/cascader/src/cascader.d.ts +3 -131
  286. package/es/components/cascader/src/cascader.mjs +15 -24
  287. package/es/components/cascader/src/cascader.mjs.map +1 -1
  288. package/es/components/cascader/src/cascader.vue.d.ts +0 -6
  289. package/es/components/cascader/src/cascader.vue_vue_type_script_setup_true_lang.mjs +12 -37
  290. package/es/components/cascader/src/cascader.vue_vue_type_script_setup_true_lang.mjs.map +1 -1
  291. package/es/components/cascader/src/cascader2.mjs.map +1 -1
  292. package/es/components/cascader-panel/src/index.mjs.map +1 -1
  293. package/es/components/cascader-panel/src/index.vue_vue_type_script_setup_true_lang.mjs +8 -0
  294. package/es/components/cascader-panel/src/index.vue_vue_type_script_setup_true_lang.mjs.map +1 -1
  295. package/es/components/color-picker/src/color-picker.d.ts +0 -16
  296. package/es/components/color-picker/src/color-picker.mjs +0 -3
  297. package/es/components/color-picker/src/color-picker.mjs.map +1 -1
  298. package/es/components/color-picker/src/color-picker.vue.d.ts +0 -1
  299. package/es/components/color-picker/src/color-picker.vue_vue_type_script_setup_true_lang.mjs +4 -14
  300. package/es/components/color-picker/src/color-picker.vue_vue_type_script_setup_true_lang.mjs.map +1 -1
  301. package/es/components/color-picker/src/color-picker2.mjs.map +1 -1
  302. package/es/components/countdown/src/countdown.vue_vue_type_script_setup_true_lang.mjs +1 -1
  303. package/es/components/date-picker/src/date-picker.d.ts +0 -3
  304. package/es/components/date-picker/src/props.d.ts +0 -1
  305. package/es/components/date-picker-panel/src/date-picker-com/panel-date-pick.vue_vue_type_script_setup_true_lang.mjs +1 -1
  306. package/es/components/date-picker-panel/src/date-picker-com/panel-date-range.vue_vue_type_script_setup_true_lang.mjs +1 -1
  307. package/es/components/date-picker-panel/src/date-picker-panel.d.ts +1 -1
  308. package/es/components/form/index.d.ts +2 -2
  309. package/es/components/form/src/form-item.d.ts +0 -15
  310. package/es/components/form/src/form-item.mjs +0 -11
  311. package/es/components/form/src/form-item.mjs.map +1 -1
  312. package/es/components/form/src/form-item.vue.d.ts +5 -6
  313. package/es/components/form/src/form-item.vue_vue_type_script_setup_true_lang.mjs +15 -46
  314. package/es/components/form/src/form-item.vue_vue_type_script_setup_true_lang.mjs.map +1 -1
  315. package/es/components/form/src/form-item2.mjs.map +1 -1
  316. package/es/components/form/src/form.d.ts +0 -20
  317. package/es/components/form/src/form.mjs +0 -15
  318. package/es/components/form/src/form.mjs.map +1 -1
  319. package/es/components/form/src/form.vue.d.ts +0 -2
  320. package/es/components/form/src/form.vue_vue_type_script_setup_true_lang.mjs +3 -19
  321. package/es/components/form/src/form.vue_vue_type_script_setup_true_lang.mjs.map +1 -1
  322. package/es/components/form/src/form2.mjs.map +1 -1
  323. package/es/components/form/src/types.d.ts +2 -5
  324. package/es/components/form/src/utils.mjs +1 -32
  325. package/es/components/form/src/utils.mjs.map +1 -1
  326. package/es/components/index.d.ts +2 -2
  327. package/es/components/index.mjs +6 -6
  328. package/es/components/input-number/src/input-number.d.ts +0 -5
  329. package/es/components/input-number/src/input-number.mjs +0 -1
  330. package/es/components/input-number/src/input-number.mjs.map +1 -1
  331. package/es/components/input-number/src/input-number.vue_vue_type_script_setup_true_lang.mjs +2 -4
  332. package/es/components/input-number/src/input-number.vue_vue_type_script_setup_true_lang.mjs.map +1 -1
  333. package/es/components/input-number/src/input-number2.mjs.map +1 -1
  334. package/es/components/link/src/link.d.ts +2 -2
  335. package/es/components/link/src/link.mjs +3 -9
  336. package/es/components/link/src/link.mjs.map +1 -1
  337. package/es/components/link/src/link.vue.d.ts +1 -1
  338. package/es/components/link/src/link.vue_vue_type_script_setup_true_lang.mjs +2 -13
  339. package/es/components/link/src/link.vue_vue_type_script_setup_true_lang.mjs.map +1 -1
  340. package/es/components/link/src/link2.mjs.map +1 -1
  341. package/es/components/menu/src/menu.mjs +1 -1
  342. package/es/components/message-box/src/index.vue_vue_type_script_lang.mjs +1 -1
  343. package/es/components/scrollbar/src/thumb.vue_vue_type_script_setup_true_lang.mjs +26 -77
  344. package/es/components/scrollbar/src/thumb.vue_vue_type_script_setup_true_lang.mjs.map +1 -1
  345. package/es/components/scrollbar/src/thumb2.mjs.map +1 -1
  346. package/es/components/select/src/select-dropdown.mjs +7 -10
  347. package/es/components/select/src/select-dropdown.mjs.map +1 -1
  348. package/es/components/select/src/select-dropdown.vue_vue_type_script_lang.mjs +4 -22
  349. package/es/components/select/src/select-dropdown.vue_vue_type_script_lang.mjs.map +1 -1
  350. package/es/components/select/src/select.d.ts +1 -21
  351. package/es/components/select/src/select.mjs +0 -32
  352. package/es/components/select/src/select.mjs.map +1 -1
  353. package/es/components/select/src/select.vue.d.ts +0 -40
  354. package/es/components/select/src/select.vue_vue_type_script_lang.mjs +1 -1
  355. package/es/components/select/src/select.vue_vue_type_script_lang.mjs.map +1 -1
  356. package/es/components/select/src/select2.mjs +8 -44
  357. package/es/components/select/src/select2.mjs.map +1 -1
  358. package/es/components/select/src/useSelect.mjs +12 -26
  359. package/es/components/select/src/useSelect.mjs.map +1 -1
  360. package/es/components/select-v2/src/defaults.d.ts +1 -21
  361. package/es/components/select-v2/src/defaults.mjs +1 -38
  362. package/es/components/select-v2/src/defaults.mjs.map +1 -1
  363. package/es/components/select-v2/src/select.mjs +8 -44
  364. package/es/components/select-v2/src/select.mjs.map +1 -1
  365. package/es/components/select-v2/src/select.vue.d.ts +0 -38
  366. package/es/components/select-v2/src/select.vue_vue_type_script_lang.mjs +1 -1
  367. package/es/components/select-v2/src/select.vue_vue_type_script_lang.mjs.map +1 -1
  368. package/es/components/select-v2/src/useSelect.mjs +20 -60
  369. package/es/components/select-v2/src/useSelect.mjs.map +1 -1
  370. package/es/components/space/src/space.d.ts +21 -7
  371. package/es/components/space/src/space.mjs +2 -5
  372. package/es/components/space/src/space.mjs.map +1 -1
  373. package/es/components/space/src/use-space.mjs +7 -4
  374. package/es/components/space/src/use-space.mjs.map +1 -1
  375. package/es/components/splitter/src/split-bar.mjs.map +1 -1
  376. package/es/components/splitter/src/split-bar.vue_vue_type_script_setup_true_lang.mjs +51 -58
  377. package/es/components/splitter/src/split-bar.vue_vue_type_script_setup_true_lang.mjs.map +1 -1
  378. package/es/components/splitter/src/splitter.d.ts +1 -1
  379. package/es/components/splitter/src/splitter.mjs +1 -1
  380. package/es/components/splitter/src/splitter.mjs.map +1 -1
  381. package/es/components/splitter/src/splitter.vue_vue_type_script_setup_true_lang.mjs.map +1 -1
  382. package/es/components/splitter/src/splitter2.mjs.map +1 -1
  383. package/es/components/table/src/table.vue_vue_type_script_lang.mjs +1 -1
  384. package/es/components/time-picker/src/common/picker.mjs.map +1 -1
  385. package/es/components/time-picker/src/common/picker.vue.d.ts +0 -3
  386. package/es/components/time-picker/src/common/picker.vue_vue_type_script_setup_true_lang.mjs +4 -3
  387. package/es/components/time-picker/src/common/picker.vue_vue_type_script_setup_true_lang.mjs.map +1 -1
  388. package/es/components/time-picker/src/common/props.d.ts +0 -1
  389. package/es/components/time-picker/src/common/props.mjs +0 -1
  390. package/es/components/time-picker/src/common/props.mjs.map +1 -1
  391. package/es/components/time-picker/src/time-picker-com/basic-time-spinner.vue_vue_type_script_setup_true_lang.mjs +1 -1
  392. package/es/components/time-picker/src/time-picker.d.ts +0 -3
  393. package/es/components/time-picker/src/time-picker.mjs +2 -3
  394. package/es/components/time-picker/src/time-picker.mjs.map +1 -1
  395. package/es/components/time-select/src/time-select.d.ts +0 -7
  396. package/es/components/time-select/src/time-select.mjs +0 -4
  397. package/es/components/time-select/src/time-select.mjs.map +1 -1
  398. package/es/components/time-select/src/time-select.vue.d.ts +0 -3
  399. package/es/components/time-select/src/time-select.vue_vue_type_script_setup_true_lang.mjs +0 -2
  400. package/es/components/time-select/src/time-select.vue_vue_type_script_setup_true_lang.mjs.map +1 -1
  401. package/es/components/time-select/src/time-select2.mjs.map +1 -1
  402. package/es/components/transfer/src/composables/index.d.ts +2 -1
  403. package/es/components/transfer/src/composables/index.mjs +2 -1
  404. package/es/components/transfer/src/composables/use-tab.d.ts +15 -0
  405. package/es/components/transfer/src/composables/use-tab.mjs +47 -0
  406. package/es/components/transfer/src/composables/use-tab.mjs.map +1 -0
  407. package/es/components/transfer/src/transfer-panel.d.ts +2 -3
  408. package/es/components/transfer/src/transfer-panel.vue.d.ts +4 -31
  409. package/es/components/transfer/src/transfer-panel.vue_vue_type_script_setup_true_lang.mjs +40 -67
  410. package/es/components/transfer/src/transfer-panel.vue_vue_type_script_setup_true_lang.mjs.map +1 -1
  411. package/es/components/transfer/src/transfer-panel2.mjs.map +1 -1
  412. package/es/components/transfer/src/transfer.vue.d.ts +359 -5
  413. package/es/components/transfer/src/transfer.vue_vue_type_script_setup_true_lang.mjs +162 -55
  414. package/es/components/transfer/src/transfer.vue_vue_type_script_setup_true_lang.mjs.map +1 -1
  415. package/es/components/transfer/src/transfer2.mjs.map +1 -1
  416. package/es/components/tree-select/src/tree-select.vue.d.ts +0 -37
  417. package/es/components/tree-select/src/tree.mjs +16 -3
  418. package/es/components/tree-select/src/tree.mjs.map +1 -1
  419. package/es/index.d.ts +2 -2
  420. package/es/index.mjs +11 -11
  421. package/es/plugin.mjs +1 -1
  422. package/es/version.mjs +1 -1
  423. package/es/version.mjs.map +1 -1
  424. package/lib/component.js +107 -107
  425. package/lib/components/button/src/button-custom.js +49 -1
  426. package/lib/components/button/src/button-custom.js.map +1 -1
  427. package/lib/components/button/src/button-group.js +1 -1
  428. package/lib/components/button/src/button-group.js.map +1 -1
  429. package/lib/components/button/src/button-group.vue_vue_type_script_setup_true_lang.js.map +1 -1
  430. package/lib/components/button/src/button-group2.js.map +1 -1
  431. package/lib/components/cascader/src/cascader.d.ts +3 -131
  432. package/lib/components/cascader/src/cascader.js +19 -29
  433. package/lib/components/cascader/src/cascader.js.map +1 -1
  434. package/lib/components/cascader/src/cascader.vue.d.ts +0 -6
  435. package/lib/components/cascader/src/cascader.vue_vue_type_script_setup_true_lang.js +36 -61
  436. package/lib/components/cascader/src/cascader.vue_vue_type_script_setup_true_lang.js.map +1 -1
  437. package/lib/components/cascader/src/cascader2.js.map +1 -1
  438. package/lib/components/cascader-panel/src/index.js.map +1 -1
  439. package/lib/components/cascader-panel/src/index.vue_vue_type_script_setup_true_lang.js +8 -0
  440. package/lib/components/cascader-panel/src/index.vue_vue_type_script_setup_true_lang.js.map +1 -1
  441. package/lib/components/color-picker/src/color-picker.d.ts +0 -16
  442. package/lib/components/color-picker/src/color-picker.js +0 -3
  443. package/lib/components/color-picker/src/color-picker.js.map +1 -1
  444. package/lib/components/color-picker/src/color-picker.vue.d.ts +0 -1
  445. package/lib/components/color-picker/src/color-picker.vue_vue_type_script_setup_true_lang.js +21 -31
  446. package/lib/components/color-picker/src/color-picker.vue_vue_type_script_setup_true_lang.js.map +1 -1
  447. package/lib/components/color-picker/src/color-picker2.js.map +1 -1
  448. package/lib/components/countdown/src/countdown.vue_vue_type_script_setup_true_lang.js +1 -1
  449. package/lib/components/date-picker/src/date-picker.d.ts +0 -3
  450. package/lib/components/date-picker/src/props.d.ts +0 -1
  451. package/lib/components/date-picker-panel/src/date-picker-com/panel-date-pick.vue_vue_type_script_setup_true_lang.js +18 -18
  452. package/lib/components/date-picker-panel/src/date-picker-com/panel-date-pick.vue_vue_type_script_setup_true_lang.js.map +1 -1
  453. package/lib/components/date-picker-panel/src/date-picker-com/panel-date-range.vue_vue_type_script_setup_true_lang.js +23 -23
  454. package/lib/components/date-picker-panel/src/date-picker-com/panel-date-range.vue_vue_type_script_setup_true_lang.js.map +1 -1
  455. package/lib/components/date-picker-panel/src/date-picker-panel.d.ts +1 -1
  456. package/lib/components/form/index.d.ts +2 -2
  457. package/lib/components/form/src/form-item.d.ts +0 -15
  458. package/lib/components/form/src/form-item.js +0 -11
  459. package/lib/components/form/src/form-item.js.map +1 -1
  460. package/lib/components/form/src/form-item.vue.d.ts +5 -6
  461. package/lib/components/form/src/form-item.vue_vue_type_script_setup_true_lang.js +14 -45
  462. package/lib/components/form/src/form-item.vue_vue_type_script_setup_true_lang.js.map +1 -1
  463. package/lib/components/form/src/form-item2.js.map +1 -1
  464. package/lib/components/form/src/form.d.ts +0 -20
  465. package/lib/components/form/src/form.js +0 -15
  466. package/lib/components/form/src/form.js.map +1 -1
  467. package/lib/components/form/src/form.vue.d.ts +0 -2
  468. package/lib/components/form/src/form.vue_vue_type_script_setup_true_lang.js +2 -18
  469. package/lib/components/form/src/form.vue_vue_type_script_setup_true_lang.js.map +1 -1
  470. package/lib/components/form/src/form2.js.map +1 -1
  471. package/lib/components/form/src/types.d.ts +2 -5
  472. package/lib/components/form/src/utils.js +0 -32
  473. package/lib/components/form/src/utils.js.map +1 -1
  474. package/lib/components/index.d.ts +2 -2
  475. package/lib/components/index.js +123 -123
  476. package/lib/components/input-number/src/input-number.d.ts +0 -5
  477. package/lib/components/input-number/src/input-number.js +0 -1
  478. package/lib/components/input-number/src/input-number.js.map +1 -1
  479. package/lib/components/input-number/src/input-number.vue_vue_type_script_setup_true_lang.js +13 -15
  480. package/lib/components/input-number/src/input-number.vue_vue_type_script_setup_true_lang.js.map +1 -1
  481. package/lib/components/input-number/src/input-number2.js.map +1 -1
  482. package/lib/components/link/src/link.d.ts +2 -2
  483. package/lib/components/link/src/link.js +3 -9
  484. package/lib/components/link/src/link.js.map +1 -1
  485. package/lib/components/link/src/link.vue.d.ts +1 -1
  486. package/lib/components/link/src/link.vue_vue_type_script_setup_true_lang.js +6 -17
  487. package/lib/components/link/src/link.vue_vue_type_script_setup_true_lang.js.map +1 -1
  488. package/lib/components/link/src/link2.js.map +1 -1
  489. package/lib/components/menu/src/menu.js +7 -7
  490. package/lib/components/menu/src/menu.js.map +1 -1
  491. package/lib/components/message-box/src/index.vue_vue_type_script_lang.js +19 -19
  492. package/lib/components/message-box/src/index.vue_vue_type_script_lang.js.map +1 -1
  493. package/lib/components/scrollbar/src/thumb.vue_vue_type_script_setup_true_lang.js +26 -77
  494. package/lib/components/scrollbar/src/thumb.vue_vue_type_script_setup_true_lang.js.map +1 -1
  495. package/lib/components/scrollbar/src/thumb2.js.map +1 -1
  496. package/lib/components/select/src/select-dropdown.js +6 -9
  497. package/lib/components/select/src/select-dropdown.js.map +1 -1
  498. package/lib/components/select/src/select-dropdown.vue_vue_type_script_lang.js +3 -21
  499. package/lib/components/select/src/select-dropdown.vue_vue_type_script_lang.js.map +1 -1
  500. package/lib/components/select/src/select.d.ts +1 -21
  501. package/lib/components/select/src/select.js +10 -43
  502. package/lib/components/select/src/select.js.map +1 -1
  503. package/lib/components/select/src/select.vue.d.ts +0 -40
  504. package/lib/components/select/src/select.vue_vue_type_script_lang.js +12 -12
  505. package/lib/components/select/src/select.vue_vue_type_script_lang.js.map +1 -1
  506. package/lib/components/select/src/select2.js +8 -44
  507. package/lib/components/select/src/select2.js.map +1 -1
  508. package/lib/components/select/src/useSelect.js +11 -25
  509. package/lib/components/select/src/useSelect.js.map +1 -1
  510. package/lib/components/select-v2/src/defaults.d.ts +1 -21
  511. package/lib/components/select-v2/src/defaults.js +12 -50
  512. package/lib/components/select-v2/src/defaults.js.map +1 -1
  513. package/lib/components/select-v2/src/select.js +8 -44
  514. package/lib/components/select-v2/src/select.js.map +1 -1
  515. package/lib/components/select-v2/src/select.vue.d.ts +0 -38
  516. package/lib/components/select-v2/src/select.vue_vue_type_script_lang.js +12 -12
  517. package/lib/components/select-v2/src/select.vue_vue_type_script_lang.js.map +1 -1
  518. package/lib/components/select-v2/src/useSelect.js +19 -59
  519. package/lib/components/select-v2/src/useSelect.js.map +1 -1
  520. package/lib/components/space/src/space.d.ts +21 -7
  521. package/lib/components/space/src/space.js +2 -5
  522. package/lib/components/space/src/space.js.map +1 -1
  523. package/lib/components/space/src/use-space.js +7 -4
  524. package/lib/components/space/src/use-space.js.map +1 -1
  525. package/lib/components/splitter/src/split-bar.js.map +1 -1
  526. package/lib/components/splitter/src/split-bar.vue_vue_type_script_setup_true_lang.js +50 -57
  527. package/lib/components/splitter/src/split-bar.vue_vue_type_script_setup_true_lang.js.map +1 -1
  528. package/lib/components/splitter/src/splitter.d.ts +1 -1
  529. package/lib/components/splitter/src/splitter.js +1 -1
  530. package/lib/components/splitter/src/splitter.js.map +1 -1
  531. package/lib/components/splitter/src/splitter.vue_vue_type_script_setup_true_lang.js.map +1 -1
  532. package/lib/components/splitter/src/splitter2.js.map +1 -1
  533. package/lib/components/table/src/table.vue_vue_type_script_lang.js +8 -8
  534. package/lib/components/table/src/table.vue_vue_type_script_lang.js.map +1 -1
  535. package/lib/components/time-picker/src/common/picker.js.map +1 -1
  536. package/lib/components/time-picker/src/common/picker.vue.d.ts +0 -3
  537. package/lib/components/time-picker/src/common/picker.vue_vue_type_script_setup_true_lang.js +4 -3
  538. package/lib/components/time-picker/src/common/picker.vue_vue_type_script_setup_true_lang.js.map +1 -1
  539. package/lib/components/time-picker/src/common/props.d.ts +0 -1
  540. package/lib/components/time-picker/src/common/props.js +0 -1
  541. package/lib/components/time-picker/src/common/props.js.map +1 -1
  542. package/lib/components/time-picker/src/time-picker-com/basic-time-spinner.vue_vue_type_script_setup_true_lang.js +10 -10
  543. package/lib/components/time-picker/src/time-picker-com/basic-time-spinner.vue_vue_type_script_setup_true_lang.js.map +1 -1
  544. package/lib/components/time-picker/src/time-picker.d.ts +0 -3
  545. package/lib/components/time-picker/src/time-picker.js +0 -1
  546. package/lib/components/time-picker/src/time-picker.js.map +1 -1
  547. package/lib/components/time-select/src/time-select.d.ts +0 -7
  548. package/lib/components/time-select/src/time-select.js +0 -4
  549. package/lib/components/time-select/src/time-select.js.map +1 -1
  550. package/lib/components/time-select/src/time-select.vue.d.ts +0 -3
  551. package/lib/components/time-select/src/time-select.vue_vue_type_script_setup_true_lang.js +0 -2
  552. package/lib/components/time-select/src/time-select.vue_vue_type_script_setup_true_lang.js.map +1 -1
  553. package/lib/components/time-select/src/time-select2.js.map +1 -1
  554. package/lib/components/transfer/src/composables/index.d.ts +2 -1
  555. package/lib/components/transfer/src/composables/index.js +3 -1
  556. package/lib/components/transfer/src/composables/use-tab.d.ts +15 -0
  557. package/lib/components/transfer/src/composables/use-tab.js +49 -0
  558. package/lib/components/transfer/src/composables/use-tab.js.map +1 -0
  559. package/lib/components/transfer/src/transfer-panel.d.ts +2 -3
  560. package/lib/components/transfer/src/transfer-panel.vue.d.ts +4 -31
  561. package/lib/components/transfer/src/transfer-panel.vue_vue_type_script_setup_true_lang.js +40 -67
  562. package/lib/components/transfer/src/transfer-panel.vue_vue_type_script_setup_true_lang.js.map +1 -1
  563. package/lib/components/transfer/src/transfer-panel2.js.map +1 -1
  564. package/lib/components/transfer/src/transfer.vue.d.ts +359 -5
  565. package/lib/components/transfer/src/transfer.vue_vue_type_script_setup_true_lang.js +161 -54
  566. package/lib/components/transfer/src/transfer.vue_vue_type_script_setup_true_lang.js.map +1 -1
  567. package/lib/components/transfer/src/transfer2.js.map +1 -1
  568. package/lib/components/tree-select/src/tree-select.vue.d.ts +0 -37
  569. package/lib/components/tree-select/src/tree.js +15 -2
  570. package/lib/components/tree-select/src/tree.js.map +1 -1
  571. package/lib/index.d.ts +2 -2
  572. package/lib/index.js +265 -265
  573. package/lib/plugin.js +12 -12
  574. package/lib/version.js +1 -1
  575. package/lib/version.js.map +1 -1
  576. package/package.json +3 -3
  577. package/tags.json +1 -1
  578. package/theme-chalk/display.css +1 -1
  579. package/theme-chalk/el-cascader-panel.css +1 -1
  580. package/theme-chalk/el-cascader.css +1 -1
  581. package/theme-chalk/el-checkbox-group.css +1 -1
  582. package/theme-chalk/el-checkbox.css +1 -1
  583. package/theme-chalk/el-color-picker-panel.css +1 -1
  584. package/theme-chalk/el-color-picker.css +1 -1
  585. package/theme-chalk/el-date-picker-panel.css +1 -1
  586. package/theme-chalk/el-form-item.css +1 -1
  587. package/theme-chalk/el-form.css +1 -1
  588. package/theme-chalk/el-input-number.css +1 -1
  589. package/theme-chalk/el-input.css +1 -1
  590. package/theme-chalk/el-link.css +1 -1
  591. package/theme-chalk/el-option.css +1 -1
  592. package/theme-chalk/el-radio-group.css +1 -1
  593. package/theme-chalk/el-radio.css +1 -1
  594. package/theme-chalk/el-rate.css +1 -1
  595. package/theme-chalk/el-scrollbar.css +1 -1
  596. package/theme-chalk/el-segmented.css +1 -1
  597. package/theme-chalk/el-select-dropdown-v2.css +1 -1
  598. package/theme-chalk/el-select-dropdown.css +1 -1
  599. package/theme-chalk/el-select-v2.css +1 -1
  600. package/theme-chalk/el-select.css +1 -1
  601. package/theme-chalk/el-slider.css +1 -1
  602. package/theme-chalk/el-space.css +1 -1
  603. package/theme-chalk/el-splitter.css +1 -1
  604. package/theme-chalk/el-switch.css +1 -1
  605. package/theme-chalk/el-text.css +1 -1
  606. package/theme-chalk/el-time-picker.css +1 -1
  607. package/theme-chalk/el-time-select.css +1 -1
  608. package/theme-chalk/el-transfer.css +1 -1
  609. package/theme-chalk/el-upload.css +1 -1
  610. package/theme-chalk/index.css +1 -1
  611. package/theme-chalk/src/cascader-panel.scss +61 -0
  612. package/theme-chalk/src/cascader.scss +69 -0
  613. package/theme-chalk/src/checkbox-group.scss +6 -10
  614. package/theme-chalk/src/checkbox.scss +21 -23
  615. package/theme-chalk/src/color-picker-panel.scss +91 -16
  616. package/theme-chalk/src/color-picker.scss +64 -6
  617. package/theme-chalk/src/common/var.scss +10 -17
  618. package/theme-chalk/src/date-picker/date-picker.scss +75 -0
  619. package/theme-chalk/src/date-picker/date-range-picker.scss +95 -0
  620. package/theme-chalk/src/date-picker/picker-panel.scss +95 -1
  621. package/theme-chalk/src/date-picker/picker.scss +93 -0
  622. package/theme-chalk/src/date-picker/time-picker.scss +49 -0
  623. package/theme-chalk/src/date-picker/time-range-picker.scss +29 -0
  624. package/theme-chalk/src/date-picker/time-spinner.scss +35 -0
  625. package/theme-chalk/src/form-item.scss +20 -122
  626. package/theme-chalk/src/form.scss +0 -29
  627. package/theme-chalk/src/input-number.scss +24 -123
  628. package/theme-chalk/src/input.scss +18 -57
  629. package/theme-chalk/src/link.scss +0 -13
  630. package/theme-chalk/src/option.scss +11 -31
  631. package/theme-chalk/src/radio-group.scss +4 -6
  632. package/theme-chalk/src/radio.scss +21 -23
  633. package/theme-chalk/src/rate.scss +15 -17
  634. package/theme-chalk/src/scrollbar.scss +0 -2
  635. package/theme-chalk/src/segmented.scss +7 -9
  636. package/theme-chalk/src/select-dropdown.scss +35 -62
  637. package/theme-chalk/src/select.scss +37 -65
  638. package/theme-chalk/src/slider.scss +44 -45
  639. package/theme-chalk/src/space.scss +17 -8
  640. package/theme-chalk/src/splitter.scss +49 -81
  641. package/theme-chalk/src/switch.scss +36 -54
  642. package/theme-chalk/src/text.scss +0 -1
  643. package/theme-chalk/src/time-select.scss +17 -0
  644. package/theme-chalk/src/transfer.scss +223 -120
  645. package/theme-chalk/src/upload.scss +176 -2
  646. package/web-types.json +1 -1
  647. package/es/components/form/src/form-label-wrap.mjs +0 -72
  648. package/es/components/form/src/form-label-wrap.mjs.map +0 -1
  649. package/es/components/form/src/utils.d.ts +0 -13
  650. package/lib/components/form/src/form-label-wrap.js +0 -73
  651. package/lib/components/form/src/form-label-wrap.js.map +0 -1
  652. package/lib/components/form/src/utils.d.ts +0 -13
@@ -1 +1 @@
1
- {"version":3,"file":"picker.vue_vue_type_script_setup_true_lang.mjs","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"],"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 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 <el-icon-content :icon=\"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 <el-icon-content :icon=\"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 <el-icon-content :icon=\"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 <el-icon-content :icon=\"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 @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 ElIconContent from '@element-plus/components/icon/src/icon-content.vue'\nimport ElTooltip from '@element-plus/components/tooltip'\nimport {\n Calendar,\n Clock,\n NOOP,\n debugWarn,\n getEventCode,\n isArray,\n} from '@element-plus/utils'\nimport {\n CHANGE_EVENT,\n EVENT_CODE,\n UPDATE_MODEL_EVENT,\n} from '@element-plus/constants'\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 &&\n formItem?.validate('blur').catch((err) => debugWarn(err))\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 &&\n formItem?.validate('change').catch((err) => debugWarn(err))\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 || isMonthsPicker.value || isYearsPicker.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 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 }\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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"}
1
+ {"version":3,"file":"picker.vue_vue_type_script_setup_true_lang.mjs","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"],"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 :show-arrow=\"false\"\n :transition=\"`${nsDate.namespace.value}-fade-in-linear`\"\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 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 <el-icon-content :icon=\"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 <el-icon-content :icon=\"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 <el-icon-content :icon=\"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 <el-icon-content :icon=\"clearIcon\" />\n </el-icon>\n </template>\n </picker-range-trigger>\n </template>\n <template #content>\n <div :class=\"nsDate.be('editor', 'sheet')\">\n <div :class=\"nsDate.be('editor', 'sheet-handle')\" />\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 @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 </div>\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 ElIconContent from '@element-plus/components/icon/src/icon-content.vue'\nimport ElTooltip from '@element-plus/components/tooltip'\nimport {\n Calendar,\n Clock,\n NOOP,\n debugWarn,\n getEventCode,\n isArray,\n} from '@element-plus/utils'\nimport {\n CHANGE_EVENT,\n EVENT_CODE,\n UPDATE_MODEL_EVENT,\n} from '@element-plus/constants'\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 &&\n formItem?.validate('blur').catch((err) => debugWarn(err))\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 &&\n formItem?.validate('change').catch((err) => debugWarn(err))\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 || isMonthsPicker.value || isYearsPicker.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 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 }\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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"}
@@ -38,7 +38,6 @@ declare const timePickerDefaultProps: {
38
38
  __epPropKey: true;
39
39
  };
40
40
  readonly shortcuts: EpPropFinalized<ArrayConstructor, unknown, unknown, () => never[], boolean>;
41
- readonly arrowControl: BooleanConstructor;
42
41
  readonly tabindex: EpPropFinalized<(new (...args: any[]) => string | number) | (() => string | number) | (((new (...args: any[]) => string | number) | (() => string | number)) | null)[], unknown, unknown, 0, boolean>;
43
42
  readonly validateEvent: EpPropFinalized<BooleanConstructor, unknown, unknown, true, boolean>;
44
43
  readonly unlinkPanels: BooleanConstructor;
@@ -85,7 +85,6 @@ const timePickerDefaultProps = buildProps({
85
85
  type: Array,
86
86
  default: () => []
87
87
  },
88
- arrowControl: Boolean,
89
88
  tabindex: {
90
89
  type: definePropType([String, Number]),
91
90
  default: 0
@@ -1 +1 @@
1
- {"version":3,"file":"props.mjs","names":[],"sources":["../../../../../../../packages/components/time-picker/src/common/props.ts"],"sourcesContent":["import { placements } from '@popperjs/core'\nimport {\n CircleClose,\n buildProps,\n definePropType,\n iconPropType,\n} from '@element-plus/utils'\nimport {\n useAriaProps,\n useEmptyValuesProps,\n useSizeProp,\n} from '@element-plus/hooks'\nimport { useTooltipContentProps } from '@element-plus/components/tooltip'\nimport { disabledTimeListsProps } from '../props/shared'\n\nimport type { ExtractPropTypes, ExtractPublicPropTypes } from 'vue'\nimport type { Options } from '@popperjs/core'\nimport type { Dayjs } from 'dayjs'\nimport type { Placement } from '@element-plus/components/popper'\n\nexport type SingleOrRange<T> = T | [T, T]\nexport type DateModelType = number | string | Date\nexport type ModelValueType = DateModelType | number[] | string[] | Date[]\nexport type DayOrDays = SingleOrRange<Dayjs>\nexport type DateOrDates = SingleOrRange<Date>\nexport type UserInput = SingleOrRange<string | null>\nexport type GetDisabledHours = (role: string, comparingDate?: Dayjs) => number[]\nexport type GetDisabledMinutes = (\n hour: number,\n role: string,\n comparingDate?: Dayjs\n) => number[]\nexport type GetDisabledSeconds = (\n hour: number,\n minute: number,\n role: string,\n comparingDate?: Dayjs\n) => number[]\n\nexport const timePickerDefaultProps = buildProps({\n /**\n * @description this prop decides if the date picker panel pops up when the input is focused\n */\n automaticDropdown: {\n type: Boolean,\n default: true,\n },\n /**\n * @description same as `id` in native input\n */\n id: {\n type: definePropType<SingleOrRange<string>>([Array, String]),\n },\n /**\n * @description same as `name` in native input\n */\n name: {\n type: definePropType<SingleOrRange<string>>([Array, String]),\n },\n /**\n * @description custom class name for TimePicker's dropdown\n */\n popperClass: useTooltipContentProps.popperClass,\n /**\n * @description custom style for TimePicker's dropdown\n */\n popperStyle: useTooltipContentProps.popperStyle,\n /**\n * @description format of the displayed value in the input box\n */\n format: String,\n /**\n * @description optional, format of binding value. If not specified, the binding value will be a Date object\n */\n valueFormat: String,\n /**\n * @description optional, format of the date displayed in input's inner panel\n */\n dateFormat: String,\n /**\n * @description optional, format of the time displayed in input's inner panel\n */\n timeFormat: String,\n /**\n * @description type of the picker\n */\n type: {\n type: String,\n default: '',\n },\n /**\n * @description whether to show clear button\n */\n clearable: {\n type: Boolean,\n default: true,\n },\n /**\n * @description Custom clear icon component\n */\n clearIcon: {\n type: iconPropType,\n default: CircleClose,\n },\n /**\n * @description whether the input is editable\n */\n editable: {\n type: Boolean,\n default: true,\n },\n /**\n * @description Whether to auto-fill the input with the current time on focus when no value is selected.\n */\n saveOnBlur: {\n type: Boolean,\n default: true,\n },\n /**\n * @description Custom prefix icon component\n */\n prefixIcon: {\n type: iconPropType,\n default: '',\n },\n /**\n * @description size of Input\n */\n size: useSizeProp,\n /**\n * @description whether TimePicker is read only\n */\n readonly: Boolean,\n /**\n * @description whether TimePicker is disabled\n */\n disabled: {\n type: Boolean,\n default: undefined,\n },\n /**\n * @description placeholder in non-range mode\n */\n placeholder: {\n type: String,\n default: '',\n },\n /**\n * @description [popper.js](https://popper.js.org/docs/v2/) parameters\n */\n popperOptions: {\n type: definePropType<Partial<Options>>(Object),\n default: () => ({}),\n },\n /**\n * @description binding value, if it is an array, the length should be 2\n */\n modelValue: {\n type: definePropType<ModelValueType | null>([Date, Array, String, Number]),\n default: '',\n },\n /**\n * @description range separator\n */\n rangeSeparator: {\n type: String,\n default: '-',\n },\n /**\n * @description placeholder for the start date in range mode\n */\n startPlaceholder: String,\n /**\n * @description placeholder for the end date in range mode\n */\n endPlaceholder: String,\n /**\n * @description optional, default date of the calendar\n */\n defaultValue: {\n type: definePropType<SingleOrRange<Date>>([Date, Array]),\n },\n /**\n * @description optional, the time value to use when selecting date range\n */\n defaultTime: {\n type: definePropType<SingleOrRange<Date>>([Date, Array]),\n },\n /**\n * @description whether to pick a time range\n */\n isRange: Boolean,\n ...disabledTimeListsProps,\n /**\n * @description a function determining if a date is disabled with that date as its parameter. Should return a Boolean\n */\n disabledDate: {\n type: Function,\n },\n /**\n * @description set custom className\n */\n cellClassName: {\n type: Function,\n },\n /**\n * @description an object array to set shortcut options\n */\n shortcuts: {\n type: Array,\n default: () => [],\n },\n /**\n * @description whether to pick time using arrow buttons\n */\n arrowControl: Boolean,\n /**\n * @description input tabindex\n */\n tabindex: {\n type: definePropType<string | number>([String, Number]),\n default: 0,\n },\n /**\n * @description whether to trigger form validation\n */\n validateEvent: {\n type: Boolean,\n default: true,\n },\n /**\n * @description unlink two date-panels in range-picker\n */\n unlinkPanels: Boolean,\n /**\n * @description position of dropdown\n */\n placement: {\n type: definePropType<Placement>(String),\n values: placements,\n default: 'bottom',\n },\n /**\n * @description list of possible positions for dropdown\n */\n fallbackPlacements: {\n type: definePropType<Placement[]>(Array),\n default: ['bottom', 'top', 'right', 'left'],\n },\n ...useEmptyValuesProps,\n ...useAriaProps(['ariaLabel']),\n /**\n * @description whether to show the now button\n */\n showNow: {\n type: Boolean,\n default: true,\n },\n /**\n * @description whether to show footer\n */\n showConfirm: {\n type: Boolean,\n default: true,\n },\n /**\n * @description whether to show footer\n */\n showFooter: {\n type: Boolean,\n default: true,\n },\n /**\n * @description whether to show the number of the calendar week\n */\n showWeekNumber: Boolean,\n} as const)\n\nexport type TimePickerDefaultProps = ExtractPropTypes<\n typeof timePickerDefaultProps\n>\nexport type TimePickerDefaultPropsPublic = ExtractPublicPropTypes<\n typeof timePickerDefaultProps\n>\n\nexport interface PickerOptions {\n isValidValue: (date: DayOrDays) => boolean\n handleKeydownInput: (event: KeyboardEvent) => void\n parseUserInput: (value: UserInput) => DayOrDays\n getRangeAvailableTime: (date: DayOrDays) => DayOrDays\n getDefaultValue: () => DayOrDays\n panelReady: boolean\n handleClear: () => void\n handleFocusPicker?: () => void\n handleCancel?: () => void\n}\n\nexport const timePickerRangeTriggerProps = buildProps({\n id: {\n type: definePropType<string[]>(Array),\n },\n name: {\n type: definePropType<string[]>(Array),\n },\n modelValue: {\n type: definePropType<UserInput>([Array, String]),\n },\n startPlaceholder: String,\n endPlaceholder: String,\n disabled: Boolean,\n} as const)\n\n/**\n * @deprecated Use `timePickerRangeTriggerProps` instead. This will be removed in future versions.\n */\nexport const timePickerRngeTriggerProps = timePickerRangeTriggerProps\n"],"mappings":";;;;;;;;;;;AAuCA,MAAa,yBAAyB,WAAW;CAI/C,mBAAmB;EACjB,MAAM;EACN,SAAS;EACV;CAID,IAAI,EACF,MAAM,eAAsC,CAAC,OAAO,OAAO,CAAC,EAC7D;CAID,MAAM,EACJ,MAAM,eAAsC,CAAC,OAAO,OAAO,CAAC,EAC7D;CAID,aAAa,uBAAuB;CAIpC,aAAa,uBAAuB;CAIpC,QAAQ;CAIR,aAAa;CAIb,YAAY;CAIZ,YAAY;CAIZ,MAAM;EACJ,MAAM;EACN,SAAS;EACV;CAID,WAAW;EACT,MAAM;EACN,SAAS;EACV;CAID,WAAW;EACT,MAAM;EACN,SAAS;EACV;CAID,UAAU;EACR,MAAM;EACN,SAAS;EACV;CAID,YAAY;EACV,MAAM;EACN,SAAS;EACV;CAID,YAAY;EACV,MAAM;EACN,SAAS;EACV;CAID,MAAM;CAIN,UAAU;CAIV,UAAU;EACR,MAAM;EACN,SAAS;EACV;CAID,aAAa;EACX,MAAM;EACN,SAAS;EACV;CAID,eAAe;EACb,MAAM,eAAiC,OAAO;EAC9C,gBAAgB,EAAE;EACnB;CAID,YAAY;EACV,MAAM,eAAsC;GAAC;GAAM;GAAO;GAAQ;GAAO,CAAC;EAC1E,SAAS;EACV;CAID,gBAAgB;EACd,MAAM;EACN,SAAS;EACV;CAID,kBAAkB;CAIlB,gBAAgB;CAIhB,cAAc,EACZ,MAAM,eAAoC,CAAC,MAAM,MAAM,CAAC,EACzD;CAID,aAAa,EACX,MAAM,eAAoC,CAAC,MAAM,MAAM,CAAC,EACzD;CAID,SAAS;CACT,GAAG;CAIH,cAAc,EACZ,MAAM,UACP;CAID,eAAe,EACb,MAAM,UACP;CAID,WAAW;EACT,MAAM;EACN,eAAe,EAAE;EAClB;CAID,cAAc;CAId,UAAU;EACR,MAAM,eAAgC,CAAC,QAAQ,OAAO,CAAC;EACvD,SAAS;EACV;CAID,eAAe;EACb,MAAM;EACN,SAAS;EACV;CAID,cAAc;CAId,WAAW;EACT,MAAM,eAA0B,OAAO;EACvC,QAAQ;EACR,SAAS;EACV;CAID,oBAAoB;EAClB,MAAM,eAA4B,MAAM;EACxC,SAAS;GAAC;GAAU;GAAO;GAAS;GAAO;EAC5C;CACD,GAAG;CACH,GAAG,aAAa,CAAC,YAAY,CAAC;CAI9B,SAAS;EACP,MAAM;EACN,SAAS;EACV;CAID,aAAa;EACX,MAAM;EACN,SAAS;EACV;CAID,YAAY;EACV,MAAM;EACN,SAAS;EACV;CAID,gBAAgB;CACjB,CAAU;AAqBX,MAAa,8BAA8B,WAAW;CACpD,IAAI,EACF,MAAM,eAAyB,MAAM,EACtC;CACD,MAAM,EACJ,MAAM,eAAyB,MAAM,EACtC;CACD,YAAY,EACV,MAAM,eAA0B,CAAC,OAAO,OAAO,CAAC,EACjD;CACD,kBAAkB;CAClB,gBAAgB;CAChB,UAAU;CACX,CAAU;;;;AAKX,MAAa,6BAA6B"}
1
+ {"version":3,"file":"props.mjs","names":[],"sources":["../../../../../../../packages/components/time-picker/src/common/props.ts"],"sourcesContent":["import { placements } from '@popperjs/core'\nimport {\n CircleClose,\n buildProps,\n definePropType,\n iconPropType,\n} from '@element-plus/utils'\nimport {\n useAriaProps,\n useEmptyValuesProps,\n useSizeProp,\n} from '@element-plus/hooks'\nimport { useTooltipContentProps } from '@element-plus/components/tooltip'\nimport { disabledTimeListsProps } from '../props/shared'\n\nimport type { ExtractPropTypes, ExtractPublicPropTypes } from 'vue'\nimport type { Options } from '@popperjs/core'\nimport type { Dayjs } from 'dayjs'\nimport type { Placement } from '@element-plus/components/popper'\n\nexport type SingleOrRange<T> = T | [T, T]\nexport type DateModelType = number | string | Date\nexport type ModelValueType = DateModelType | number[] | string[] | Date[]\nexport type DayOrDays = SingleOrRange<Dayjs>\nexport type DateOrDates = SingleOrRange<Date>\nexport type UserInput = SingleOrRange<string | null>\nexport type GetDisabledHours = (role: string, comparingDate?: Dayjs) => number[]\nexport type GetDisabledMinutes = (\n hour: number,\n role: string,\n comparingDate?: Dayjs\n) => number[]\nexport type GetDisabledSeconds = (\n hour: number,\n minute: number,\n role: string,\n comparingDate?: Dayjs\n) => number[]\n\nexport const timePickerDefaultProps = buildProps({\n /**\n * @description this prop decides if the date picker panel pops up when the input is focused\n */\n automaticDropdown: {\n type: Boolean,\n default: true,\n },\n /**\n * @description same as `id` in native input\n */\n id: {\n type: definePropType<SingleOrRange<string>>([Array, String]),\n },\n /**\n * @description same as `name` in native input\n */\n name: {\n type: definePropType<SingleOrRange<string>>([Array, String]),\n },\n /**\n * @description custom class name for TimePicker's dropdown\n */\n popperClass: useTooltipContentProps.popperClass,\n /**\n * @description custom style for TimePicker's dropdown\n */\n popperStyle: useTooltipContentProps.popperStyle,\n /**\n * @description format of the displayed value in the input box\n */\n format: String,\n /**\n * @description optional, format of binding value. If not specified, the binding value will be a Date object\n */\n valueFormat: String,\n /**\n * @description optional, format of the date displayed in input's inner panel\n */\n dateFormat: String,\n /**\n * @description optional, format of the time displayed in input's inner panel\n */\n timeFormat: String,\n /**\n * @description type of the picker\n */\n type: {\n type: String,\n default: '',\n },\n /**\n * @description whether to show clear button\n */\n clearable: {\n type: Boolean,\n default: true,\n },\n /**\n * @description Custom clear icon component\n */\n clearIcon: {\n type: iconPropType,\n default: CircleClose,\n },\n /**\n * @description whether the input is editable\n */\n editable: {\n type: Boolean,\n default: true,\n },\n /**\n * @description Whether to auto-fill the input with the current time on focus when no value is selected.\n */\n saveOnBlur: {\n type: Boolean,\n default: true,\n },\n /**\n * @description Custom prefix icon component\n */\n prefixIcon: {\n type: iconPropType,\n default: '',\n },\n /**\n * @description size of Input\n */\n size: useSizeProp,\n /**\n * @description whether TimePicker is read only\n */\n readonly: Boolean,\n /**\n * @description whether TimePicker is disabled\n */\n disabled: {\n type: Boolean,\n default: undefined,\n },\n /**\n * @description placeholder in non-range mode\n */\n placeholder: {\n type: String,\n default: '',\n },\n /**\n * @description [popper.js](https://popper.js.org/docs/v2/) parameters\n */\n popperOptions: {\n type: definePropType<Partial<Options>>(Object),\n default: () => ({}),\n },\n /**\n * @description binding value, if it is an array, the length should be 2\n */\n modelValue: {\n type: definePropType<ModelValueType | null>([Date, Array, String, Number]),\n default: '',\n },\n /**\n * @description range separator\n */\n rangeSeparator: {\n type: String,\n default: '-',\n },\n /**\n * @description placeholder for the start date in range mode\n */\n startPlaceholder: String,\n /**\n * @description placeholder for the end date in range mode\n */\n endPlaceholder: String,\n /**\n * @description optional, default date of the calendar\n */\n defaultValue: {\n type: definePropType<SingleOrRange<Date>>([Date, Array]),\n },\n /**\n * @description optional, the time value to use when selecting date range\n */\n defaultTime: {\n type: definePropType<SingleOrRange<Date>>([Date, Array]),\n },\n /**\n * @description whether to pick a time range\n */\n isRange: Boolean,\n ...disabledTimeListsProps,\n /**\n * @description a function determining if a date is disabled with that date as its parameter. Should return a Boolean\n */\n disabledDate: {\n type: Function,\n },\n /**\n * @description set custom className\n */\n cellClassName: {\n type: Function,\n },\n /**\n * @description an object array to set shortcut options\n */\n shortcuts: {\n type: Array,\n default: () => [],\n },\n /**\n * @description input tabindex\n */\n tabindex: {\n type: definePropType<string | number>([String, Number]),\n default: 0,\n },\n /**\n * @description whether to trigger form validation\n */\n validateEvent: {\n type: Boolean,\n default: true,\n },\n /**\n * @description unlink two date-panels in range-picker\n */\n unlinkPanels: Boolean,\n /**\n * @description position of dropdown\n */\n placement: {\n type: definePropType<Placement>(String),\n values: placements,\n default: 'bottom',\n },\n /**\n * @description list of possible positions for dropdown\n */\n fallbackPlacements: {\n type: definePropType<Placement[]>(Array),\n default: ['bottom', 'top', 'right', 'left'],\n },\n ...useEmptyValuesProps,\n ...useAriaProps(['ariaLabel']),\n /**\n * @description whether to show the now button\n */\n showNow: {\n type: Boolean,\n default: true,\n },\n /**\n * @description whether to show footer\n */\n showConfirm: {\n type: Boolean,\n default: true,\n },\n /**\n * @description whether to show footer\n */\n showFooter: {\n type: Boolean,\n default: true,\n },\n /**\n * @description whether to show the number of the calendar week\n */\n showWeekNumber: Boolean,\n} as const)\n\nexport type TimePickerDefaultProps = ExtractPropTypes<\n typeof timePickerDefaultProps\n>\nexport type TimePickerDefaultPropsPublic = ExtractPublicPropTypes<\n typeof timePickerDefaultProps\n>\n\nexport interface PickerOptions {\n isValidValue: (date: DayOrDays) => boolean\n handleKeydownInput: (event: KeyboardEvent) => void\n parseUserInput: (value: UserInput) => DayOrDays\n getRangeAvailableTime: (date: DayOrDays) => DayOrDays\n getDefaultValue: () => DayOrDays\n panelReady: boolean\n handleClear: () => void\n handleFocusPicker?: () => void\n handleCancel?: () => void\n}\n\nexport const timePickerRangeTriggerProps = buildProps({\n id: {\n type: definePropType<string[]>(Array),\n },\n name: {\n type: definePropType<string[]>(Array),\n },\n modelValue: {\n type: definePropType<UserInput>([Array, String]),\n },\n startPlaceholder: String,\n endPlaceholder: String,\n disabled: Boolean,\n} as const)\n\n/**\n * @deprecated Use `timePickerRangeTriggerProps` instead. This will be removed in future versions.\n */\nexport const timePickerRngeTriggerProps = timePickerRangeTriggerProps\n"],"mappings":";;;;;;;;;;;AAuCA,MAAa,yBAAyB,WAAW;CAI/C,mBAAmB;EACjB,MAAM;EACN,SAAS;EACV;CAID,IAAI,EACF,MAAM,eAAsC,CAAC,OAAO,OAAO,CAAC,EAC7D;CAID,MAAM,EACJ,MAAM,eAAsC,CAAC,OAAO,OAAO,CAAC,EAC7D;CAID,aAAa,uBAAuB;CAIpC,aAAa,uBAAuB;CAIpC,QAAQ;CAIR,aAAa;CAIb,YAAY;CAIZ,YAAY;CAIZ,MAAM;EACJ,MAAM;EACN,SAAS;EACV;CAID,WAAW;EACT,MAAM;EACN,SAAS;EACV;CAID,WAAW;EACT,MAAM;EACN,SAAS;EACV;CAID,UAAU;EACR,MAAM;EACN,SAAS;EACV;CAID,YAAY;EACV,MAAM;EACN,SAAS;EACV;CAID,YAAY;EACV,MAAM;EACN,SAAS;EACV;CAID,MAAM;CAIN,UAAU;CAIV,UAAU;EACR,MAAM;EACN,SAAS;EACV;CAID,aAAa;EACX,MAAM;EACN,SAAS;EACV;CAID,eAAe;EACb,MAAM,eAAiC,OAAO;EAC9C,gBAAgB,EAAE;EACnB;CAID,YAAY;EACV,MAAM,eAAsC;GAAC;GAAM;GAAO;GAAQ;GAAO,CAAC;EAC1E,SAAS;EACV;CAID,gBAAgB;EACd,MAAM;EACN,SAAS;EACV;CAID,kBAAkB;CAIlB,gBAAgB;CAIhB,cAAc,EACZ,MAAM,eAAoC,CAAC,MAAM,MAAM,CAAC,EACzD;CAID,aAAa,EACX,MAAM,eAAoC,CAAC,MAAM,MAAM,CAAC,EACzD;CAID,SAAS;CACT,GAAG;CAIH,cAAc,EACZ,MAAM,UACP;CAID,eAAe,EACb,MAAM,UACP;CAID,WAAW;EACT,MAAM;EACN,eAAe,EAAE;EAClB;CAID,UAAU;EACR,MAAM,eAAgC,CAAC,QAAQ,OAAO,CAAC;EACvD,SAAS;EACV;CAID,eAAe;EACb,MAAM;EACN,SAAS;EACV;CAID,cAAc;CAId,WAAW;EACT,MAAM,eAA0B,OAAO;EACvC,QAAQ;EACR,SAAS;EACV;CAID,oBAAoB;EAClB,MAAM,eAA4B,MAAM;EACxC,SAAS;GAAC;GAAU;GAAO;GAAS;GAAO;EAC5C;CACD,GAAG;CACH,GAAG,aAAa,CAAC,YAAY,CAAC;CAI9B,SAAS;EACP,MAAM;EACN,SAAS;EACV;CAID,aAAa;EACX,MAAM;EACN,SAAS;EACV;CAID,YAAY;EACV,MAAM;EACN,SAAS;EACV;CAID,gBAAgB;CACjB,CAAU;AAqBX,MAAa,8BAA8B,WAAW;CACpD,IAAI,EACF,MAAM,eAAyB,MAAM,EACtC;CACD,MAAM,EACJ,MAAM,eAAyB,MAAM,EACtC;CACD,YAAY,EACV,MAAM,eAA0B,CAAC,OAAO,OAAO,CAAC,EACjD;CACD,kBAAkB;CAClB,gBAAgB;CAChB,UAAU;CACX,CAAU;;;;AAKX,MAAa,6BAA6B"}
@@ -3,13 +3,13 @@ import { isNumber } from "../../../../utils/types.mjs";
3
3
  import { rAF } from "../../../../utils/raf.mjs";
4
4
  import { getStyle } from "../../../../utils/dom/style.mjs";
5
5
  import { ArrowDown, ArrowUp } from "../../../../utils/vue/builtin-icons.mjs";
6
- import { vRepeatClick } from "../../../../directives/repeat-click/index.mjs";
7
6
  import { useNamespace } from "../../../../hooks/use-namespace/index.mjs";
8
7
  import { ElIcon } from "../../../icon/index.mjs";
9
8
  import { ElScrollbar } from "../../../scrollbar/index.mjs";
10
9
  import { DEFAULT_FORMATS_TIME, PICKER_BASE_INJECTION_KEY, timeUnits } from "../constants.mjs";
11
10
  import { buildTimeList } from "../utils.mjs";
12
11
  import { getTimeLists } from "../composables/use-time-picker.mjs";
12
+ import { vRepeatClick } from "../../../../directives/repeat-click/index.mjs";
13
13
  import { basicTimeSpinnerProps } from "../props/basic-time-spinner.mjs";
14
14
  import { debounce } from "lodash-unified";
15
15
  import { Fragment, computed, createBlock, createCommentVNode, createElementBlock, createElementVNode, createTextVNode, createVNode, defineComponent, inject, nextTick, normalizeClass, onMounted, openBlock, ref, renderList, toDisplayString, unref, watch, withCtx, withDirectives } from "vue";
@@ -33,7 +33,6 @@ declare const _default: vue.DefineComponent<vue.ExtractPropTypes<{
33
33
  __epPropKey: true;
34
34
  };
35
35
  shortcuts: EpPropFinalized<ArrayConstructor, unknown, unknown, () => never[], boolean>;
36
- arrowControl: BooleanConstructor;
37
36
  tabindex: EpPropFinalized<(new (...args: any[]) => string | number) | (() => string | number) | (((new (...args: any[]) => string | number) | (() => string | number)) | null)[], unknown, unknown, 0, boolean>;
38
37
  validateEvent: EpPropFinalized<BooleanConstructor, unknown, unknown, true, boolean>;
39
38
  unlinkPanels: BooleanConstructor;
@@ -241,7 +240,6 @@ declare const _default: vue.DefineComponent<vue.ExtractPropTypes<{
241
240
  __epPropKey: true;
242
241
  };
243
242
  shortcuts: EpPropFinalized<ArrayConstructor, unknown, unknown, () => never[], boolean>;
244
- arrowControl: BooleanConstructor;
245
243
  tabindex: EpPropFinalized<(new (...args: any[]) => string | number) | (() => string | number) | (((new (...args: any[]) => string | number) | (() => string | number)) | null)[], unknown, unknown, 0, boolean>;
246
244
  validateEvent: EpPropFinalized<BooleanConstructor, unknown, unknown, true, boolean>;
247
245
  unlinkPanels: BooleanConstructor;
@@ -450,7 +448,6 @@ declare const _default: vue.DefineComponent<vue.ExtractPropTypes<{
450
448
  showConfirm: EpPropMergeType<BooleanConstructor, unknown, unknown>;
451
449
  showFooter: EpPropMergeType<BooleanConstructor, unknown, unknown>;
452
450
  showWeekNumber: boolean;
453
- arrowControl: boolean;
454
451
  unlinkPanels: boolean;
455
452
  isRange: boolean;
456
453
  }, {}, {}, {}, string, vue.ComponentProvideOptions, true, {}, any>;
@@ -1,10 +1,10 @@
1
1
  import { UPDATE_MODEL_EVENT } from "../../../constants/event.mjs";
2
- import { DEFAULT_FORMATS_TIME, PICKER_POPPER_OPTIONS_INJECTION_KEY } from "./constants.mjs";
2
+ import { DEFAULT_FORMATS_TIME } from "./constants.mjs";
3
3
  import { timePickerDefaultProps } from "./common/props.mjs";
4
4
  import picker_default from "./common/picker.mjs";
5
5
  import panel_time_pick_default from "./time-picker-com/panel-time-pick.mjs";
6
6
  import panel_time_range_default from "./time-picker-com/panel-time-range.mjs";
7
- import { createVNode, defineComponent, mergeProps, provide, ref } from "vue";
7
+ import { createVNode, defineComponent, mergeProps, ref } from "vue";
8
8
  import dayjs from "dayjs";
9
9
  import customParseFormat from "dayjs/plugin/customParseFormat.js";
10
10
 
@@ -22,7 +22,6 @@ var time_picker_default = /* @__PURE__ */ defineComponent({
22
22
  const commonPicker = ref();
23
23
  const [type, Panel] = props.isRange ? ["timerange", panel_time_range_default] : ["time", panel_time_pick_default];
24
24
  const modelUpdater = (value) => ctx.emit(UPDATE_MODEL_EVENT, value);
25
- provide(PICKER_POPPER_OPTIONS_INJECTION_KEY, props.popperOptions);
26
25
  ctx.expose({
27
26
  focus: () => {
28
27
  commonPicker.value?.focus();
@@ -1 +1 @@
1
- {"version":3,"file":"time-picker.mjs","names":["defineComponent","provide","ref","createVNode","_createVNode","mergeProps","_mergeProps","dayjs","customParseFormat","UPDATE_MODEL_EVENT","DEFAULT_FORMATS_TIME","PICKER_POPPER_OPTIONS_INJECTION_KEY","Picker","TimePickPanel","TimeRangePanel","timePickerDefaultProps","extend","name","install","props","isRange","Boolean","emits","setup","ctx","commonPicker","type","Panel","modelUpdater","value","emit","popperOptions","expose","focus","blur","handleOpen","handleClose","format","default"],"sources":["../../../../../../packages/components/time-picker/src/time-picker.tsx"],"sourcesContent":["import { defineComponent, provide, ref } from 'vue'\nimport dayjs from 'dayjs'\nimport customParseFormat from 'dayjs/plugin/customParseFormat.js'\nimport { UPDATE_MODEL_EVENT } from '@element-plus/constants'\nimport {\n DEFAULT_FORMATS_TIME,\n PICKER_POPPER_OPTIONS_INJECTION_KEY,\n} from './constants'\nimport Picker from './common/picker.vue'\nimport TimePickPanel from './time-picker-com/panel-time-pick.vue'\nimport TimeRangePanel from './time-picker-com/panel-time-range.vue'\nimport { timePickerDefaultProps } from './common/props'\n\ndayjs.extend(customParseFormat)\n\nexport default defineComponent({\n name: 'ElTimePicker',\n install: null,\n props: {\n ...timePickerDefaultProps,\n /**\n * @description whether to pick a time range\n */\n isRange: Boolean,\n },\n emits: [UPDATE_MODEL_EVENT],\n setup(props, ctx) {\n const commonPicker = ref<InstanceType<typeof Picker>>()\n const [type, Panel] = props.isRange\n ? ['timerange', TimeRangePanel]\n : ['time', TimePickPanel]\n\n const modelUpdater = (value: any) => ctx.emit(UPDATE_MODEL_EVENT, value)\n provide(PICKER_POPPER_OPTIONS_INJECTION_KEY, props.popperOptions)\n ctx.expose({\n /**\n * @description focus the Input component\n */\n focus: () => {\n commonPicker.value?.focus()\n },\n /**\n * @description blur the Input component\n */\n blur: () => {\n commonPicker.value?.blur()\n },\n /**\n * @description open the TimePicker popper\n */\n handleOpen: () => {\n commonPicker.value?.handleOpen()\n },\n /**\n * @description close the TimePicker popper\n */\n handleClose: () => {\n commonPicker.value?.handleClose()\n },\n })\n\n return () => {\n const format = props.format ?? DEFAULT_FORMATS_TIME\n\n return (\n <Picker\n {...props}\n ref={commonPicker}\n type={type}\n format={format}\n onUpdate:modelValue={modelUpdater}\n >\n {{\n default: (props: any) => <Panel {...props} />,\n }}\n </Picker>\n )\n }\n },\n})\n"],"mappings":";;;;;;;;;;;AAaAO,MAAMS,OAAOR,kBAAkB;AAE/B,0BAAeR,gCAAgB;CAC7BiB,MAAM;CACNC,SAAS;CACTC,OAAO;EACL,GAAGJ;EAIHK,SAASC;EACV;CACDC,OAAO,CAACb,mBAAmB;CAC3Bc,MAAMJ,OAAOK,KAAK;EAChB,MAAMC,eAAevB,KAAkC;EACvD,MAAM,CAACwB,MAAMC,SAASR,MAAMC,UACxB,CAAC,aAAaN,yBAAe,GAC7B,CAAC,QAAQD,wBAAc;EAE3B,MAAMe,gBAAgBC,UAAeL,IAAIM,KAAKrB,oBAAoBoB,MAAM;AACxE5B,UAAQU,qCAAqCQ,MAAMY,cAAc;AACjEP,MAAIQ,OAAO;GAITC,aAAa;AACXR,iBAAaI,OAAOI,OAAO;;GAK7BC,YAAY;AACVT,iBAAaI,OAAOK,MAAM;;GAK5BC,kBAAkB;AAChBV,iBAAaI,OAAOM,YAAY;;GAKlCC,mBAAmB;AACjBX,iBAAaI,OAAOO,aAAa;;GAEpC,CAAC;AAEF,eAAa;GACX,MAAMC,SAASlB,MAAMkB,UAAU3B;AAE/B,UAAAN,YAAAQ,gBAAAN,WAEQa,OAAK;IAAA,OACJM;IAAY,QACXC;IAAI,UACFW;IAAM,uBACOT;IAAY,CAAA,EAAA,EAG/BU,UAAUnB,UAAUf,YAAAuB,OAAgBR,OAAK,KAAA,EAAI,CAAA;;;CAMxD,CAAC"}
1
+ {"version":3,"file":"time-picker.mjs","names":["defineComponent","ref","createVNode","_createVNode","mergeProps","_mergeProps","dayjs","customParseFormat","UPDATE_MODEL_EVENT","DEFAULT_FORMATS_TIME","Picker","TimePickPanel","TimeRangePanel","timePickerDefaultProps","extend","name","install","props","isRange","Boolean","emits","setup","ctx","commonPicker","type","Panel","modelUpdater","value","emit","expose","focus","blur","handleOpen","handleClose","format","default"],"sources":["../../../../../../packages/components/time-picker/src/time-picker.tsx"],"sourcesContent":["import { defineComponent, ref } from 'vue'\nimport dayjs from 'dayjs'\nimport customParseFormat from 'dayjs/plugin/customParseFormat.js'\nimport { UPDATE_MODEL_EVENT } from '@element-plus/constants'\nimport { DEFAULT_FORMATS_TIME } from './constants'\nimport Picker from './common/picker.vue'\nimport TimePickPanel from './time-picker-com/panel-time-pick.vue'\nimport TimeRangePanel from './time-picker-com/panel-time-range.vue'\nimport { timePickerDefaultProps } from './common/props'\n\ndayjs.extend(customParseFormat)\n\nexport default defineComponent({\n name: 'ElTimePicker',\n install: null,\n props: {\n ...timePickerDefaultProps,\n /**\n * @description whether to pick a time range\n */\n isRange: Boolean,\n },\n emits: [UPDATE_MODEL_EVENT],\n setup(props, ctx) {\n const commonPicker = ref<InstanceType<typeof Picker>>()\n const [type, Panel] = props.isRange\n ? ['timerange', TimeRangePanel]\n : ['time', TimePickPanel]\n\n const modelUpdater = (value: any) => ctx.emit(UPDATE_MODEL_EVENT, value)\n ctx.expose({\n /**\n * @description focus the Input component\n */\n focus: () => {\n commonPicker.value?.focus()\n },\n /**\n * @description blur the Input component\n */\n blur: () => {\n commonPicker.value?.blur()\n },\n /**\n * @description open the TimePicker popper\n */\n handleOpen: () => {\n commonPicker.value?.handleOpen()\n },\n /**\n * @description close the TimePicker popper\n */\n handleClose: () => {\n commonPicker.value?.handleClose()\n },\n })\n\n return () => {\n const format = props.format ?? DEFAULT_FORMATS_TIME\n\n return (\n <Picker\n {...props}\n ref={commonPicker}\n type={type}\n format={format}\n onUpdate:modelValue={modelUpdater}\n >\n {{\n default: (props: any) => <Panel {...props} />,\n }}\n </Picker>\n )\n }\n },\n})\n"],"mappings":";;;;;;;;;;;AAUAM,MAAMQ,OAAOP,kBAAkB;AAE/B,0BAAeP,gCAAgB;CAC7Be,MAAM;CACNC,SAAS;CACTC,OAAO;EACL,GAAGJ;EAIHK,SAASC;EACV;CACDC,OAAO,CAACZ,mBAAmB;CAC3Ba,MAAMJ,OAAOK,KAAK;EAChB,MAAMC,eAAetB,KAAkC;EACvD,MAAM,CAACuB,MAAMC,SAASR,MAAMC,UACxB,CAAC,aAAaN,yBAAe,GAC7B,CAAC,QAAQD,wBAAc;EAE3B,MAAMe,gBAAgBC,UAAeL,IAAIM,KAAKpB,oBAAoBmB,MAAM;AACxEL,MAAIO,OAAO;GAITC,aAAa;AACXP,iBAAaI,OAAOG,OAAO;;GAK7BC,YAAY;AACVR,iBAAaI,OAAOI,MAAM;;GAK5BC,kBAAkB;AAChBT,iBAAaI,OAAOK,YAAY;;GAKlCC,mBAAmB;AACjBV,iBAAaI,OAAOM,aAAa;;GAEpC,CAAC;AAEF,eAAa;GACX,MAAMC,SAASjB,MAAMiB,UAAUzB;AAE/B,UAAAN,YAAAO,gBAAAL,WAEQY,OAAK;IAAA,OACJM;IAAY,QACXC;IAAI,UACFU;IAAM,uBACOR;IAAY,CAAA,EAAA,EAG/BS,UAAUlB,UAAUd,YAAAsB,OAAgBR,OAAK,KAAA,EAAI,CAAA;;;CAMxD,CAAC"}
@@ -2,11 +2,9 @@ import { IconPropType } from "../../../utils/vue/icon.js";
2
2
  import { EpPropFinalized, EpPropMergeType } from "../../../utils/vue/props/types.js";
3
3
  import { ComponentSize } from "../../../constants/size.js";
4
4
  import "../../../utils/index.js";
5
- import { PopperEffect } from "../../popper/src/popper.js";
6
5
  import { UseEmptyValuesProps } from "../../../hooks/use-empty-values/index.js";
7
6
  import "../../../hooks/index.js";
8
7
  import { _default } from "./time-select.vue.js";
9
- import "../../popper/index.js";
10
8
  import * as vue from "vue";
11
9
  import { CSSProperties, ExtractPublicPropTypes } from "vue";
12
10
 
@@ -28,10 +26,6 @@ interface TimeSelectProps extends UseEmptyValuesProps {
28
26
  * @description whether the input is editable
29
27
  */
30
28
  editable?: boolean;
31
- /**
32
- * @description Tooltip theme, built-in theme: `dark` / `light`
33
- */
34
- effect?: PopperEffect;
35
29
  /**
36
30
  * @description whether to show clear button
37
31
  */
@@ -105,7 +99,6 @@ declare const timeSelectProps: {
105
99
  };
106
100
  readonly disabled: EpPropFinalized<BooleanConstructor, unknown, unknown, undefined, boolean>;
107
101
  readonly editable: EpPropFinalized<BooleanConstructor, unknown, unknown, true, boolean>;
108
- readonly effect: EpPropFinalized<(new (...args: any[]) => string) | (() => PopperEffect) | (((new (...args: any[]) => string) | (() => PopperEffect)) | null)[], unknown, unknown, "light", boolean>;
109
102
  readonly clearable: EpPropFinalized<BooleanConstructor, unknown, unknown, true, boolean>;
110
103
  readonly size: {
111
104
  readonly type: vue.PropType<EpPropMergeType<StringConstructor, "" | "default" | "small" | "large", never>>;
@@ -23,10 +23,6 @@ const timeSelectProps = buildProps({
23
23
  type: Boolean,
24
24
  default: true
25
25
  },
26
- effect: {
27
- type: definePropType(String),
28
- default: "light"
29
- },
30
26
  clearable: {
31
27
  type: Boolean,
32
28
  default: true
@@ -1 +1 @@
1
- {"version":3,"file":"time-select.mjs","names":[],"sources":["../../../../../../packages/components/time-select/src/time-select.ts"],"sourcesContent":["import {\n CircleClose,\n Clock,\n buildProps,\n definePropType,\n iconPropType,\n} from '@element-plus/utils'\nimport { useEmptyValuesProps, useSizeProp } from '@element-plus/hooks'\n\nimport type { UseEmptyValuesProps } from '@element-plus/hooks'\nimport type { PopperEffect } from '@element-plus/components/popper'\nimport type TimeSelect from './time-select.vue'\nimport type { CSSProperties, ExtractPublicPropTypes } from 'vue'\nimport type { ComponentSize } from '@element-plus/constants'\nimport type { IconPropType } from '@element-plus/utils'\n\nexport interface TimeSelectProps extends UseEmptyValuesProps {\n /**\n * @description set format of time\n */\n format?: string\n /**\n * @description binding value\n */\n modelValue?: string | null\n /**\n * @description whether TimeSelect is disabled\n */\n disabled?: boolean\n /**\n * @description whether the input is editable\n */\n editable?: boolean\n /**\n * @description Tooltip theme, built-in theme: `dark` / `light`\n */\n effect?: PopperEffect\n /**\n * @description whether to show clear button\n */\n clearable?: boolean\n /**\n * @description size of Input\n */\n size?: ComponentSize\n /**\n * @description placeholder in non-range mode\n */\n placeholder?: string\n /**\n * @description start time\n */\n start?: string\n /**\n * @description end time\n */\n end?: string\n /**\n * @description time step\n */\n step?: string\n /**\n * @description minimum time, any time before this time will be disabled\n */\n minTime?: string | null\n /**\n * @description maximum time, any time after this time will be disabled\n */\n maxTime?: string | null\n /**\n * @description whether `end` is included in options\n */\n includeEndTime?: boolean\n /**\n * @description same as `name` in native input\n */\n name?: string\n /**\n * @description custom prefix icon component\n */\n prefixIcon?: IconPropType\n /**\n * @description custom clear icon component\n */\n clearIcon?: IconPropType\n /**\n * @description custom class name for TimeSelect's dropdown\n */\n popperClass?: string\n /**\n * @description custom style for TimeSelect's dropdown\n */\n popperStyle?: string | CSSProperties\n}\n\nexport const DEFAULT_STEP = '00:30'\n\n/**\n * @deprecated Removed after 3.0.0, Use `TimeSelectProps` instead.\n */\nexport const timeSelectProps = buildProps({\n /**\n * @description set format of time\n */\n format: {\n type: String,\n default: 'HH:mm',\n },\n /**\n * @description binding value\n */\n modelValue: {\n type: definePropType<string | null>(String),\n },\n /**\n * @description whether TimeSelect is disabled\n */\n disabled: {\n type: Boolean,\n default: undefined,\n },\n /**\n * @description whether the input is editable\n */\n editable: {\n type: Boolean,\n default: true,\n },\n /**\n * @description Tooltip theme, built-in theme: `dark` / `light`\n */\n effect: {\n type: definePropType<PopperEffect>(String),\n default: 'light',\n },\n /**\n * @description whether to show clear button\n */\n clearable: {\n type: Boolean,\n default: true,\n },\n /**\n * @description size of Input\n */\n size: useSizeProp,\n /**\n * @description placeholder in non-range mode\n */\n placeholder: String,\n /**\n * @description start time\n */\n start: {\n type: String,\n default: '09:00',\n },\n /**\n * @description end time\n */\n end: {\n type: String,\n default: '18:00',\n },\n /**\n * @description time step\n */\n step: {\n type: String,\n default: DEFAULT_STEP,\n },\n /**\n * @description minimum time, any time before this time will be disabled\n */\n minTime: {\n type: definePropType<string | null>(String),\n },\n /**\n * @description maximum time, any time after this time will be disabled\n */\n maxTime: {\n type: definePropType<string | null>(String),\n },\n /**\n * @description whether `end` is included in options\n */\n includeEndTime: Boolean,\n /**\n * @description same as `name` in native input\n */\n name: String,\n /**\n * @description custom prefix icon component\n */\n prefixIcon: {\n type: iconPropType,\n default: () => Clock,\n },\n /**\n * @description custom clear icon component\n */\n clearIcon: {\n type: iconPropType,\n default: () => CircleClose,\n },\n /**\n * @description custom class name for TimeSelect's dropdown\n */\n popperClass: {\n type: String,\n default: '',\n },\n /**\n * @description custom style for TimeSelect's dropdown\n */\n popperStyle: {\n type: definePropType<string | CSSProperties>([String, Object]),\n },\n ...useEmptyValuesProps,\n} as const)\n\n/**\n * @deprecated Removed after 3.0.0, Use `TimeSelectProps` instead.\n */\nexport type TimeSelectPropsPublic = ExtractPublicPropTypes<\n typeof timeSelectProps\n>\n\nexport type TimeSelectInstance = InstanceType<typeof TimeSelect> & unknown\n"],"mappings":";;;;;;;AA+FA,MAAa,eAAe;;;;AAK5B,MAAa,kBAAkB,WAAW;CAIxC,QAAQ;EACN,MAAM;EACN,SAAS;EACV;CAID,YAAY,EACV,MAAM,eAA8B,OAAO,EAC5C;CAID,UAAU;EACR,MAAM;EACN,SAAS;EACV;CAID,UAAU;EACR,MAAM;EACN,SAAS;EACV;CAID,QAAQ;EACN,MAAM,eAA6B,OAAO;EAC1C,SAAS;EACV;CAID,WAAW;EACT,MAAM;EACN,SAAS;EACV;CAID,MAAM;CAIN,aAAa;CAIb,OAAO;EACL,MAAM;EACN,SAAS;EACV;CAID,KAAK;EACH,MAAM;EACN,SAAS;EACV;CAID,MAAM;EACJ,MAAM;EACN,SAAS;EACV;CAID,SAAS,EACP,MAAM,eAA8B,OAAO,EAC5C;CAID,SAAS,EACP,MAAM,eAA8B,OAAO,EAC5C;CAID,gBAAgB;CAIhB,MAAM;CAIN,YAAY;EACV,MAAM;EACN,eAAe;EAChB;CAID,WAAW;EACT,MAAM;EACN,eAAe;EAChB;CAID,aAAa;EACX,MAAM;EACN,SAAS;EACV;CAID,aAAa,EACX,MAAM,eAAuC,CAAC,QAAQ,OAAO,CAAC,EAC/D;CACD,GAAG;CACJ,CAAU"}
1
+ {"version":3,"file":"time-select.mjs","names":[],"sources":["../../../../../../packages/components/time-select/src/time-select.ts"],"sourcesContent":["import {\n CircleClose,\n Clock,\n buildProps,\n definePropType,\n iconPropType,\n} from '@element-plus/utils'\nimport { useEmptyValuesProps, useSizeProp } from '@element-plus/hooks'\n\nimport type { UseEmptyValuesProps } from '@element-plus/hooks'\nimport type TimeSelect from './time-select.vue'\nimport type { CSSProperties, ExtractPublicPropTypes } from 'vue'\nimport type { ComponentSize } from '@element-plus/constants'\nimport type { IconPropType } from '@element-plus/utils'\n\nexport interface TimeSelectProps extends UseEmptyValuesProps {\n /**\n * @description set format of time\n */\n format?: string\n /**\n * @description binding value\n */\n modelValue?: string | null\n /**\n * @description whether TimeSelect is disabled\n */\n disabled?: boolean\n /**\n * @description whether the input is editable\n */\n editable?: boolean\n /**\n * @description whether to show clear button\n */\n clearable?: boolean\n /**\n * @description size of Input\n */\n size?: ComponentSize\n /**\n * @description placeholder in non-range mode\n */\n placeholder?: string\n /**\n * @description start time\n */\n start?: string\n /**\n * @description end time\n */\n end?: string\n /**\n * @description time step\n */\n step?: string\n /**\n * @description minimum time, any time before this time will be disabled\n */\n minTime?: string | null\n /**\n * @description maximum time, any time after this time will be disabled\n */\n maxTime?: string | null\n /**\n * @description whether `end` is included in options\n */\n includeEndTime?: boolean\n /**\n * @description same as `name` in native input\n */\n name?: string\n /**\n * @description custom prefix icon component\n */\n prefixIcon?: IconPropType\n /**\n * @description custom clear icon component\n */\n clearIcon?: IconPropType\n /**\n * @description custom class name for TimeSelect's dropdown\n */\n popperClass?: string\n /**\n * @description custom style for TimeSelect's dropdown\n */\n popperStyle?: string | CSSProperties\n}\n\nexport const DEFAULT_STEP = '00:30'\n\n/**\n * @deprecated Removed after 3.0.0, Use `TimeSelectProps` instead.\n */\nexport const timeSelectProps = buildProps({\n /**\n * @description set format of time\n */\n format: {\n type: String,\n default: 'HH:mm',\n },\n /**\n * @description binding value\n */\n modelValue: {\n type: definePropType<string | null>(String),\n },\n /**\n * @description whether TimeSelect is disabled\n */\n disabled: {\n type: Boolean,\n default: undefined,\n },\n /**\n * @description whether the input is editable\n */\n editable: {\n type: Boolean,\n default: true,\n },\n /**\n * @description whether to show clear button\n */\n clearable: {\n type: Boolean,\n default: true,\n },\n /**\n * @description size of Input\n */\n size: useSizeProp,\n /**\n * @description placeholder in non-range mode\n */\n placeholder: String,\n /**\n * @description start time\n */\n start: {\n type: String,\n default: '09:00',\n },\n /**\n * @description end time\n */\n end: {\n type: String,\n default: '18:00',\n },\n /**\n * @description time step\n */\n step: {\n type: String,\n default: DEFAULT_STEP,\n },\n /**\n * @description minimum time, any time before this time will be disabled\n */\n minTime: {\n type: definePropType<string | null>(String),\n },\n /**\n * @description maximum time, any time after this time will be disabled\n */\n maxTime: {\n type: definePropType<string | null>(String),\n },\n /**\n * @description whether `end` is included in options\n */\n includeEndTime: Boolean,\n /**\n * @description same as `name` in native input\n */\n name: String,\n /**\n * @description custom prefix icon component\n */\n prefixIcon: {\n type: iconPropType,\n default: () => Clock,\n },\n /**\n * @description custom clear icon component\n */\n clearIcon: {\n type: iconPropType,\n default: () => CircleClose,\n },\n /**\n * @description custom class name for TimeSelect's dropdown\n */\n popperClass: {\n type: String,\n default: '',\n },\n /**\n * @description custom style for TimeSelect's dropdown\n */\n popperStyle: {\n type: definePropType<string | CSSProperties>([String, Object]),\n },\n ...useEmptyValuesProps,\n} as const)\n\n/**\n * @deprecated Removed after 3.0.0, Use `TimeSelectProps` instead.\n */\nexport type TimeSelectPropsPublic = ExtractPublicPropTypes<\n typeof timeSelectProps\n>\n\nexport type TimeSelectInstance = InstanceType<typeof TimeSelect> & unknown\n"],"mappings":";;;;;;;AA0FA,MAAa,eAAe;;;;AAK5B,MAAa,kBAAkB,WAAW;CAIxC,QAAQ;EACN,MAAM;EACN,SAAS;EACV;CAID,YAAY,EACV,MAAM,eAA8B,OAAO,EAC5C;CAID,UAAU;EACR,MAAM;EACN,SAAS;EACV;CAID,UAAU;EACR,MAAM;EACN,SAAS;EACV;CAID,WAAW;EACT,MAAM;EACN,SAAS;EACV;CAID,MAAM;CAIN,aAAa;CAIb,OAAO;EACL,MAAM;EACN,SAAS;EACV;CAID,KAAK;EACH,MAAM;EACN,SAAS;EACV;CAID,MAAM;EACJ,MAAM;EACN,SAAS;EACV;CAID,SAAS,EACP,MAAM,eAA8B,OAAO,EAC5C;CAID,SAAS,EACP,MAAM,eAA8B,OAAO,EAC5C;CAID,gBAAgB;CAIhB,MAAM;CAIN,YAAY;EACV,MAAM;EACN,eAAe;EAChB;CAID,WAAW;EACT,MAAM;EACN,eAAe;EAChB;CAID,aAAa;EACX,MAAM;EACN,SAAS;EACV;CAID,aAAa,EACX,MAAM,eAAuC,CAAC,QAAQ,OAAO,CAAC,EAC/D;CACD,GAAG;CACJ,CAAU"}
@@ -1,8 +1,6 @@
1
1
  import { IconPropType } from "../../../utils/vue/icon.js";
2
2
  import "../../../utils/index.js";
3
- import { PopperEffect } from "../../popper/src/popper.js";
4
3
  import { TimeSelectProps } from "./time-select.js";
5
- import "../../../index.js";
6
4
  import * as vue from "vue";
7
5
 
8
6
  //#region ../../packages/components/time-select/src/time-select.vue.d.ts
@@ -28,7 +26,6 @@ declare const __VLS_export: vue.DefineComponent<TimeSelectProps, {
28
26
  onClear?: ((...args: any[]) => any) | undefined;
29
27
  "onUpdate:modelValue"?: ((...args: any[]) => any) | undefined;
30
28
  }>, {
31
- effect: PopperEffect;
32
29
  popperClass: string;
33
30
  popperStyle: string | vue.CSSProperties;
34
31
  disabled: boolean;
@@ -96,7 +96,6 @@ var time_select_vue_vue_type_script_setup_true_lang_default = /* @__PURE__ */ de
96
96
  clearable: __props.clearable,
97
97
  "clear-icon": __props.clearIcon,
98
98
  size: __props.size,
99
- effect: __props.effect,
100
99
  placeholder: __props.placeholder,
101
100
  "default-first-option": "",
102
101
  filterable: __props.editable,
@@ -137,7 +136,6 @@ var time_select_vue_vue_type_script_setup_true_lang_default = /* @__PURE__ */ de
137
136
  "clearable",
138
137
  "clear-icon",
139
138
  "size",
140
- "effect",
141
139
  "placeholder",
142
140
  "filterable",
143
141
  "empty-values",
@@ -1 +1 @@
1
- {"version":3,"file":"time-select.vue_vue_type_script_setup_true_lang.mjs","names":["$emit"],"sources":["../../../../../../packages/components/time-select/src/time-select.vue"],"sourcesContent":["<template>\n <el-select\n ref=\"select\"\n :name=\"name\"\n :model-value=\"value\"\n :disabled=\"_disabled\"\n :clearable=\"clearable\"\n :clear-icon=\"clearIcon\"\n :size=\"size\"\n :effect=\"effect\"\n :placeholder=\"placeholder\"\n default-first-option\n :filterable=\"editable\"\n :empty-values=\"emptyValues\"\n :value-on-clear=\"valueOnClear\"\n :popper-class=\"popperClass\"\n :popper-style=\"popperStyle\"\n @update:model-value=\"(event) => $emit(UPDATE_MODEL_EVENT, event)\"\n @change=\"(event) => $emit(CHANGE_EVENT, event)\"\n @blur=\"(event) => $emit('blur', event)\"\n @focus=\"(event) => $emit('focus', event)\"\n @clear=\"() => $emit('clear')\"\n >\n <el-option\n v-for=\"item in items\"\n :key=\"item.value\"\n :label=\"item.value\"\n :value=\"item.value\"\n :disabled=\"item.disabled\"\n />\n <template #prefix>\n <el-icon v-if=\"prefixIcon\" :class=\"nsInput.e('prefix-icon')\">\n <el-icon-content :icon=\"prefixIcon\" />\n </el-icon>\n </template>\n </el-select>\n</template>\n\n<script lang=\"ts\" setup>\nimport { computed, ref } from 'vue'\nimport dayjs from 'dayjs'\nimport customParseFormat from 'dayjs/plugin/customParseFormat.js'\nimport ElSelect from '@element-plus/components/select'\nimport { useFormDisabled } from '@element-plus/components/form'\nimport ElIcon from '@element-plus/components/icon'\nimport ElIconContent from '@element-plus/components/icon/src/icon-content.vue'\nimport { useLocale, useNamespace } from '@element-plus/hooks'\nimport { CHANGE_EVENT, UPDATE_MODEL_EVENT } from '@element-plus/constants'\nimport { CircleClose, Clock, debugWarn } from '@element-plus/utils'\nimport { compareTime, formatTime, nextTime, parseTime } from './utils'\nimport { DEFAULT_STEP } from './time-select'\n\nimport type { TimeSelectProps } from './time-select'\n\ndayjs.extend(customParseFormat)\n\nconst { Option: ElOption } = ElSelect\n\ndefineOptions({\n name: 'ElTimeSelect',\n})\n\ndefineEmits([CHANGE_EVENT, 'blur', 'focus', 'clear', UPDATE_MODEL_EVENT])\n\nconst props = withDefaults(defineProps<TimeSelectProps>(), {\n format: 'HH:mm',\n disabled: undefined,\n editable: true,\n effect: 'light',\n clearable: true,\n start: '09:00',\n end: '18:00',\n step: DEFAULT_STEP,\n prefixIcon: () => Clock,\n clearIcon: () => CircleClose,\n popperClass: '',\n valueOnClear: undefined,\n popperStyle: undefined,\n})\n\nconst nsInput = useNamespace('input')\nconst select = ref<typeof ElSelect>()\n\nconst _disabled = useFormDisabled()\nconst { lang } = useLocale()\n\nconst value = computed(() => props.modelValue)\nconst start = computed(() => {\n const time = parseTime(props.start)\n return time ? formatTime(time) : null\n})\n\nconst end = computed(() => {\n const time = parseTime(props.end)\n return time ? formatTime(time) : null\n})\n\nconst minTime = computed(() => {\n const time = parseTime(props.minTime || '')\n return time ? formatTime(time) : null\n})\n\nconst maxTime = computed(() => {\n const time = parseTime(props.maxTime || '')\n return time ? formatTime(time) : null\n})\n\nconst step = computed(() => {\n const time = parseTime(props.step)\n const isInvalidStep =\n !time ||\n time.hours < 0 ||\n time.minutes < 0 ||\n Number.isNaN(time.hours) ||\n Number.isNaN(time.minutes) ||\n (time.hours === 0 && time.minutes === 0)\n if (isInvalidStep) {\n debugWarn(\n 'ElTimeSelect',\n `invalid step, fallback to default step (${DEFAULT_STEP}).`\n )\n }\n return !isInvalidStep ? formatTime(time) : DEFAULT_STEP\n})\n\nconst items = computed(() => {\n const result: { value: string; rawValue: string; disabled: boolean }[] = []\n const push = (formattedValue: string, rawValue: string) => {\n result.push({\n value: formattedValue,\n rawValue,\n disabled:\n compareTime(rawValue, minTime.value || '-1:-1') <= 0 ||\n compareTime(rawValue, maxTime.value || '100:100') >= 0,\n })\n }\n\n if (props.start && props.end && props.step) {\n let current = start.value\n let currentTime: string\n while (current && end.value && compareTime(current, end.value) <= 0) {\n currentTime = dayjs(current, 'HH:mm')\n .locale(lang.value)\n .format(props.format)\n push(currentTime, current)\n current = nextTime(current, step.value!)\n }\n if (\n props.includeEndTime &&\n end.value &&\n result[result.length - 1]?.rawValue !== end.value\n ) {\n const formattedValue = dayjs(end.value, 'HH:mm')\n .locale(lang.value)\n .format(props.format)\n push(formattedValue, end.value)\n }\n }\n return result\n})\n\nconst blur = () => {\n select.value?.blur?.()\n}\n\nconst focus = () => {\n select.value?.focus?.()\n}\n\ndefineExpose({\n /**\n * @description blur the Input component\n */\n blur,\n /**\n * @description focus the Input component\n */\n focus,\n})\n</script>\n"],"mappings":"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"}
1
+ {"version":3,"file":"time-select.vue_vue_type_script_setup_true_lang.mjs","names":["$emit"],"sources":["../../../../../../packages/components/time-select/src/time-select.vue"],"sourcesContent":["<template>\n <el-select\n ref=\"select\"\n :name=\"name\"\n :model-value=\"value\"\n :disabled=\"_disabled\"\n :clearable=\"clearable\"\n :clear-icon=\"clearIcon\"\n :size=\"size\"\n :placeholder=\"placeholder\"\n default-first-option\n :filterable=\"editable\"\n :empty-values=\"emptyValues\"\n :value-on-clear=\"valueOnClear\"\n :popper-class=\"popperClass\"\n :popper-style=\"popperStyle\"\n @update:model-value=\"(event) => $emit(UPDATE_MODEL_EVENT, event)\"\n @change=\"(event) => $emit(CHANGE_EVENT, event)\"\n @blur=\"(event) => $emit('blur', event)\"\n @focus=\"(event) => $emit('focus', event)\"\n @clear=\"() => $emit('clear')\"\n >\n <el-option\n v-for=\"item in items\"\n :key=\"item.value\"\n :label=\"item.value\"\n :value=\"item.value\"\n :disabled=\"item.disabled\"\n />\n <template #prefix>\n <el-icon v-if=\"prefixIcon\" :class=\"nsInput.e('prefix-icon')\">\n <el-icon-content :icon=\"prefixIcon\" />\n </el-icon>\n </template>\n </el-select>\n</template>\n\n<script lang=\"ts\" setup>\nimport { computed, ref } from 'vue'\nimport dayjs from 'dayjs'\nimport customParseFormat from 'dayjs/plugin/customParseFormat.js'\nimport ElSelect from '@element-plus/components/select'\nimport { useFormDisabled } from '@element-plus/components/form'\nimport ElIcon from '@element-plus/components/icon'\nimport ElIconContent from '@element-plus/components/icon/src/icon-content.vue'\nimport { useLocale, useNamespace } from '@element-plus/hooks'\nimport { CHANGE_EVENT, UPDATE_MODEL_EVENT } from '@element-plus/constants'\nimport { CircleClose, Clock, debugWarn } from '@element-plus/utils'\nimport { compareTime, formatTime, nextTime, parseTime } from './utils'\nimport { DEFAULT_STEP } from './time-select'\n\nimport type { TimeSelectProps } from './time-select'\n\ndayjs.extend(customParseFormat)\n\nconst { Option: ElOption } = ElSelect\n\ndefineOptions({\n name: 'ElTimeSelect',\n})\n\ndefineEmits([CHANGE_EVENT, 'blur', 'focus', 'clear', UPDATE_MODEL_EVENT])\n\nconst props = withDefaults(defineProps<TimeSelectProps>(), {\n format: 'HH:mm',\n disabled: undefined,\n editable: true,\n clearable: true,\n start: '09:00',\n end: '18:00',\n step: DEFAULT_STEP,\n prefixIcon: () => Clock,\n clearIcon: () => CircleClose,\n popperClass: '',\n valueOnClear: undefined,\n popperStyle: undefined,\n})\n\nconst nsInput = useNamespace('input')\nconst select = ref<typeof ElSelect>()\n\nconst _disabled = useFormDisabled()\nconst { lang } = useLocale()\n\nconst value = computed(() => props.modelValue)\nconst start = computed(() => {\n const time = parseTime(props.start)\n return time ? formatTime(time) : null\n})\n\nconst end = computed(() => {\n const time = parseTime(props.end)\n return time ? formatTime(time) : null\n})\n\nconst minTime = computed(() => {\n const time = parseTime(props.minTime || '')\n return time ? formatTime(time) : null\n})\n\nconst maxTime = computed(() => {\n const time = parseTime(props.maxTime || '')\n return time ? formatTime(time) : null\n})\n\nconst step = computed(() => {\n const time = parseTime(props.step)\n const isInvalidStep =\n !time ||\n time.hours < 0 ||\n time.minutes < 0 ||\n Number.isNaN(time.hours) ||\n Number.isNaN(time.minutes) ||\n (time.hours === 0 && time.minutes === 0)\n if (isInvalidStep) {\n debugWarn(\n 'ElTimeSelect',\n `invalid step, fallback to default step (${DEFAULT_STEP}).`\n )\n }\n return !isInvalidStep ? formatTime(time) : DEFAULT_STEP\n})\n\nconst items = computed(() => {\n const result: { value: string; rawValue: string; disabled: boolean }[] = []\n const push = (formattedValue: string, rawValue: string) => {\n result.push({\n value: formattedValue,\n rawValue,\n disabled:\n compareTime(rawValue, minTime.value || '-1:-1') <= 0 ||\n compareTime(rawValue, maxTime.value || '100:100') >= 0,\n })\n }\n\n if (props.start && props.end && props.step) {\n let current = start.value\n let currentTime: string\n while (current && end.value && compareTime(current, end.value) <= 0) {\n currentTime = dayjs(current, 'HH:mm')\n .locale(lang.value)\n .format(props.format)\n push(currentTime, current)\n current = nextTime(current, step.value!)\n }\n if (\n props.includeEndTime &&\n end.value &&\n result[result.length - 1]?.rawValue !== end.value\n ) {\n const formattedValue = dayjs(end.value, 'HH:mm')\n .locale(lang.value)\n .format(props.format)\n push(formattedValue, end.value)\n }\n }\n return result\n})\n\nconst blur = () => {\n select.value?.blur?.()\n}\n\nconst focus = () => {\n select.value?.focus?.()\n}\n\ndefineExpose({\n /**\n * @description blur the Input component\n */\n blur,\n /**\n * @description focus the Input component\n */\n focus,\n})\n</script>\n"],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"time-select2.mjs","names":[],"sources":["../../../../../../packages/components/time-select/src/time-select.vue"],"sourcesContent":["<template>\n <el-select\n ref=\"select\"\n :name=\"name\"\n :model-value=\"value\"\n :disabled=\"_disabled\"\n :clearable=\"clearable\"\n :clear-icon=\"clearIcon\"\n :size=\"size\"\n :effect=\"effect\"\n :placeholder=\"placeholder\"\n default-first-option\n :filterable=\"editable\"\n :empty-values=\"emptyValues\"\n :value-on-clear=\"valueOnClear\"\n :popper-class=\"popperClass\"\n :popper-style=\"popperStyle\"\n @update:model-value=\"(event) => $emit(UPDATE_MODEL_EVENT, event)\"\n @change=\"(event) => $emit(CHANGE_EVENT, event)\"\n @blur=\"(event) => $emit('blur', event)\"\n @focus=\"(event) => $emit('focus', event)\"\n @clear=\"() => $emit('clear')\"\n >\n <el-option\n v-for=\"item in items\"\n :key=\"item.value\"\n :label=\"item.value\"\n :value=\"item.value\"\n :disabled=\"item.disabled\"\n />\n <template #prefix>\n <el-icon v-if=\"prefixIcon\" :class=\"nsInput.e('prefix-icon')\">\n <el-icon-content :icon=\"prefixIcon\" />\n </el-icon>\n </template>\n </el-select>\n</template>\n\n<script lang=\"ts\" setup>\nimport { computed, ref } from 'vue'\nimport dayjs from 'dayjs'\nimport customParseFormat from 'dayjs/plugin/customParseFormat.js'\nimport ElSelect from '@element-plus/components/select'\nimport { useFormDisabled } from '@element-plus/components/form'\nimport ElIcon from '@element-plus/components/icon'\nimport ElIconContent from '@element-plus/components/icon/src/icon-content.vue'\nimport { useLocale, useNamespace } from '@element-plus/hooks'\nimport { CHANGE_EVENT, UPDATE_MODEL_EVENT } from '@element-plus/constants'\nimport { CircleClose, Clock, debugWarn } from '@element-plus/utils'\nimport { compareTime, formatTime, nextTime, parseTime } from './utils'\nimport { DEFAULT_STEP } from './time-select'\n\nimport type { TimeSelectProps } from './time-select'\n\ndayjs.extend(customParseFormat)\n\nconst { Option: ElOption } = ElSelect\n\ndefineOptions({\n name: 'ElTimeSelect',\n})\n\ndefineEmits([CHANGE_EVENT, 'blur', 'focus', 'clear', UPDATE_MODEL_EVENT])\n\nconst props = withDefaults(defineProps<TimeSelectProps>(), {\n format: 'HH:mm',\n disabled: undefined,\n editable: true,\n effect: 'light',\n clearable: true,\n start: '09:00',\n end: '18:00',\n step: DEFAULT_STEP,\n prefixIcon: () => Clock,\n clearIcon: () => CircleClose,\n popperClass: '',\n valueOnClear: undefined,\n popperStyle: undefined,\n})\n\nconst nsInput = useNamespace('input')\nconst select = ref<typeof ElSelect>()\n\nconst _disabled = useFormDisabled()\nconst { lang } = useLocale()\n\nconst value = computed(() => props.modelValue)\nconst start = computed(() => {\n const time = parseTime(props.start)\n return time ? formatTime(time) : null\n})\n\nconst end = computed(() => {\n const time = parseTime(props.end)\n return time ? formatTime(time) : null\n})\n\nconst minTime = computed(() => {\n const time = parseTime(props.minTime || '')\n return time ? formatTime(time) : null\n})\n\nconst maxTime = computed(() => {\n const time = parseTime(props.maxTime || '')\n return time ? formatTime(time) : null\n})\n\nconst step = computed(() => {\n const time = parseTime(props.step)\n const isInvalidStep =\n !time ||\n time.hours < 0 ||\n time.minutes < 0 ||\n Number.isNaN(time.hours) ||\n Number.isNaN(time.minutes) ||\n (time.hours === 0 && time.minutes === 0)\n if (isInvalidStep) {\n debugWarn(\n 'ElTimeSelect',\n `invalid step, fallback to default step (${DEFAULT_STEP}).`\n )\n }\n return !isInvalidStep ? formatTime(time) : DEFAULT_STEP\n})\n\nconst items = computed(() => {\n const result: { value: string; rawValue: string; disabled: boolean }[] = []\n const push = (formattedValue: string, rawValue: string) => {\n result.push({\n value: formattedValue,\n rawValue,\n disabled:\n compareTime(rawValue, minTime.value || '-1:-1') <= 0 ||\n compareTime(rawValue, maxTime.value || '100:100') >= 0,\n })\n }\n\n if (props.start && props.end && props.step) {\n let current = start.value\n let currentTime: string\n while (current && end.value && compareTime(current, end.value) <= 0) {\n currentTime = dayjs(current, 'HH:mm')\n .locale(lang.value)\n .format(props.format)\n push(currentTime, current)\n current = nextTime(current, step.value!)\n }\n if (\n props.includeEndTime &&\n end.value &&\n result[result.length - 1]?.rawValue !== end.value\n ) {\n const formattedValue = dayjs(end.value, 'HH:mm')\n .locale(lang.value)\n .format(props.format)\n push(formattedValue, end.value)\n }\n }\n return result\n})\n\nconst blur = () => {\n select.value?.blur?.()\n}\n\nconst focus = () => {\n select.value?.focus?.()\n}\n\ndefineExpose({\n /**\n * @description blur the Input component\n */\n blur,\n /**\n * @description focus the Input component\n */\n focus,\n})\n</script>\n"],"mappings":""}
1
+ {"version":3,"file":"time-select2.mjs","names":[],"sources":["../../../../../../packages/components/time-select/src/time-select.vue"],"sourcesContent":["<template>\n <el-select\n ref=\"select\"\n :name=\"name\"\n :model-value=\"value\"\n :disabled=\"_disabled\"\n :clearable=\"clearable\"\n :clear-icon=\"clearIcon\"\n :size=\"size\"\n :placeholder=\"placeholder\"\n default-first-option\n :filterable=\"editable\"\n :empty-values=\"emptyValues\"\n :value-on-clear=\"valueOnClear\"\n :popper-class=\"popperClass\"\n :popper-style=\"popperStyle\"\n @update:model-value=\"(event) => $emit(UPDATE_MODEL_EVENT, event)\"\n @change=\"(event) => $emit(CHANGE_EVENT, event)\"\n @blur=\"(event) => $emit('blur', event)\"\n @focus=\"(event) => $emit('focus', event)\"\n @clear=\"() => $emit('clear')\"\n >\n <el-option\n v-for=\"item in items\"\n :key=\"item.value\"\n :label=\"item.value\"\n :value=\"item.value\"\n :disabled=\"item.disabled\"\n />\n <template #prefix>\n <el-icon v-if=\"prefixIcon\" :class=\"nsInput.e('prefix-icon')\">\n <el-icon-content :icon=\"prefixIcon\" />\n </el-icon>\n </template>\n </el-select>\n</template>\n\n<script lang=\"ts\" setup>\nimport { computed, ref } from 'vue'\nimport dayjs from 'dayjs'\nimport customParseFormat from 'dayjs/plugin/customParseFormat.js'\nimport ElSelect from '@element-plus/components/select'\nimport { useFormDisabled } from '@element-plus/components/form'\nimport ElIcon from '@element-plus/components/icon'\nimport ElIconContent from '@element-plus/components/icon/src/icon-content.vue'\nimport { useLocale, useNamespace } from '@element-plus/hooks'\nimport { CHANGE_EVENT, UPDATE_MODEL_EVENT } from '@element-plus/constants'\nimport { CircleClose, Clock, debugWarn } from '@element-plus/utils'\nimport { compareTime, formatTime, nextTime, parseTime } from './utils'\nimport { DEFAULT_STEP } from './time-select'\n\nimport type { TimeSelectProps } from './time-select'\n\ndayjs.extend(customParseFormat)\n\nconst { Option: ElOption } = ElSelect\n\ndefineOptions({\n name: 'ElTimeSelect',\n})\n\ndefineEmits([CHANGE_EVENT, 'blur', 'focus', 'clear', UPDATE_MODEL_EVENT])\n\nconst props = withDefaults(defineProps<TimeSelectProps>(), {\n format: 'HH:mm',\n disabled: undefined,\n editable: true,\n clearable: true,\n start: '09:00',\n end: '18:00',\n step: DEFAULT_STEP,\n prefixIcon: () => Clock,\n clearIcon: () => CircleClose,\n popperClass: '',\n valueOnClear: undefined,\n popperStyle: undefined,\n})\n\nconst nsInput = useNamespace('input')\nconst select = ref<typeof ElSelect>()\n\nconst _disabled = useFormDisabled()\nconst { lang } = useLocale()\n\nconst value = computed(() => props.modelValue)\nconst start = computed(() => {\n const time = parseTime(props.start)\n return time ? formatTime(time) : null\n})\n\nconst end = computed(() => {\n const time = parseTime(props.end)\n return time ? formatTime(time) : null\n})\n\nconst minTime = computed(() => {\n const time = parseTime(props.minTime || '')\n return time ? formatTime(time) : null\n})\n\nconst maxTime = computed(() => {\n const time = parseTime(props.maxTime || '')\n return time ? formatTime(time) : null\n})\n\nconst step = computed(() => {\n const time = parseTime(props.step)\n const isInvalidStep =\n !time ||\n time.hours < 0 ||\n time.minutes < 0 ||\n Number.isNaN(time.hours) ||\n Number.isNaN(time.minutes) ||\n (time.hours === 0 && time.minutes === 0)\n if (isInvalidStep) {\n debugWarn(\n 'ElTimeSelect',\n `invalid step, fallback to default step (${DEFAULT_STEP}).`\n )\n }\n return !isInvalidStep ? formatTime(time) : DEFAULT_STEP\n})\n\nconst items = computed(() => {\n const result: { value: string; rawValue: string; disabled: boolean }[] = []\n const push = (formattedValue: string, rawValue: string) => {\n result.push({\n value: formattedValue,\n rawValue,\n disabled:\n compareTime(rawValue, minTime.value || '-1:-1') <= 0 ||\n compareTime(rawValue, maxTime.value || '100:100') >= 0,\n })\n }\n\n if (props.start && props.end && props.step) {\n let current = start.value\n let currentTime: string\n while (current && end.value && compareTime(current, end.value) <= 0) {\n currentTime = dayjs(current, 'HH:mm')\n .locale(lang.value)\n .format(props.format)\n push(currentTime, current)\n current = nextTime(current, step.value!)\n }\n if (\n props.includeEndTime &&\n end.value &&\n result[result.length - 1]?.rawValue !== end.value\n ) {\n const formattedValue = dayjs(end.value, 'HH:mm')\n .locale(lang.value)\n .format(props.format)\n push(formattedValue, end.value)\n }\n }\n return result\n})\n\nconst blur = () => {\n select.value?.blur?.()\n}\n\nconst focus = () => {\n select.value?.focus?.()\n}\n\ndefineExpose({\n /**\n * @description blur the Input component\n */\n blur,\n /**\n * @description focus the Input component\n */\n focus,\n})\n</script>\n"],"mappings":""}
@@ -3,4 +3,5 @@ import { useCheckedChange } from "./use-checked-change.js";
3
3
  import { useComputedData } from "./use-computed-data.js";
4
4
  import { useMove } from "./use-move.js";
5
5
  import { usePropsAlias } from "./use-props-alias.js";
6
- export { useCheck, useCheckedChange, useComputedData, useMove, usePropsAlias };
6
+ import { useTab } from "./use-tab.js";
7
+ export { useCheck, useCheckedChange, useComputedData, useMove, usePropsAlias, useTab };
@@ -3,5 +3,6 @@ import { useCheck } from "./use-check.mjs";
3
3
  import { useCheckedChange } from "./use-checked-change.mjs";
4
4
  import { useComputedData } from "./use-computed-data.mjs";
5
5
  import { useMove } from "./use-move.mjs";
6
+ import { useTab } from "./use-tab.mjs";
6
7
 
7
- export { useCheck, useCheckedChange, useComputedData, useMove, usePropsAlias };
8
+ export { useCheck, useCheckedChange, useComputedData, useMove, usePropsAlias, useTab };
@@ -0,0 +1,15 @@
1
+ import { TransferDirection } from "../transfer.js";
2
+ import * as vue from "vue";
3
+
4
+ //#region ../../packages/components/transfer/src/composables/use-tab.d.ts
5
+ declare const useTab: () => {
6
+ activePanel: vue.Ref<TransferDirection, TransferDirection>;
7
+ indicatorStyle: vue.ComputedRef<{
8
+ transform: string;
9
+ }>;
10
+ panelsRef: vue.Ref<HTMLElement | undefined, HTMLElement | undefined>;
11
+ scrollToPanel: (panel: TransferDirection, behavior?: ScrollBehavior) => Promise<void>;
12
+ syncActivePanel: () => void;
13
+ };
14
+ //#endregion
15
+ export { useTab };
@@ -0,0 +1,47 @@
1
+ import { computed, nextTick, ref } from "vue";
2
+
3
+ //#region ../../packages/components/transfer/src/composables/use-tab.ts
4
+ const PANEL_INDEX = {
5
+ left: 0,
6
+ right: 1
7
+ };
8
+ const useTab = () => {
9
+ const activePanel = ref("left");
10
+ const panelsRef = ref();
11
+ const indicatorStyle = computed(() => ({ transform: `translateX(${PANEL_INDEX[activePanel.value] * 100}%)` }));
12
+ const syncActivePanel = () => {
13
+ const panels = panelsRef.value;
14
+ if (!panels) return;
15
+ const width = panels.clientWidth || panels.offsetWidth;
16
+ if (!width) return;
17
+ activePanel.value = panels.scrollLeft >= width / 2 ? "right" : "left";
18
+ };
19
+ const scrollToPanel = async (panel, behavior = "smooth") => {
20
+ activePanel.value = panel;
21
+ await nextTick();
22
+ const panels = panelsRef.value;
23
+ if (!panels) return;
24
+ const width = panels.clientWidth || panels.offsetWidth;
25
+ if (!width) return;
26
+ const left = width * PANEL_INDEX[panel];
27
+ if (typeof panels.scrollTo === "function") {
28
+ panels.scrollTo({
29
+ left,
30
+ behavior
31
+ });
32
+ return;
33
+ }
34
+ panels.scrollLeft = left;
35
+ };
36
+ return {
37
+ activePanel,
38
+ indicatorStyle,
39
+ panelsRef,
40
+ scrollToPanel,
41
+ syncActivePanel
42
+ };
43
+ };
44
+
45
+ //#endregion
46
+ export { useTab };
47
+ //# sourceMappingURL=use-tab.mjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"use-tab.mjs","names":[],"sources":["../../../../../../../packages/components/transfer/src/composables/use-tab.ts"],"sourcesContent":["import { computed, nextTick, ref } from 'vue'\n\nimport type { TransferDirection } from '../transfer'\n\nconst PANEL_INDEX: Record<TransferDirection, number> = {\n left: 0,\n right: 1,\n}\n\nexport const useTab = () => {\n const activePanel = ref<TransferDirection>('left')\n const panelsRef = ref<HTMLElement>()\n\n const indicatorStyle = computed(() => ({\n transform: `translateX(${PANEL_INDEX[activePanel.value] * 100}%)`,\n }))\n\n const syncActivePanel = () => {\n const panels = panelsRef.value\n if (!panels) return\n\n const width = panels.clientWidth || panels.offsetWidth\n if (!width) return\n\n activePanel.value = panels.scrollLeft >= width / 2 ? 'right' : 'left'\n }\n\n const scrollToPanel = async (\n panel: TransferDirection,\n behavior: ScrollBehavior = 'smooth'\n ) => {\n activePanel.value = panel\n await nextTick()\n\n const panels = panelsRef.value\n if (!panels) return\n\n const width = panels.clientWidth || panels.offsetWidth\n if (!width) return\n\n const left = width * PANEL_INDEX[panel]\n if (typeof panels.scrollTo === 'function') {\n panels.scrollTo({ left, behavior })\n return\n }\n\n panels.scrollLeft = left\n }\n\n return {\n activePanel,\n indicatorStyle,\n panelsRef,\n scrollToPanel,\n syncActivePanel,\n }\n}\n"],"mappings":";;;AAIA,MAAM,cAAiD;CACrD,MAAM;CACN,OAAO;CACR;AAED,MAAa,eAAe;CAC1B,MAAM,cAAc,IAAuB,OAAO;CAClD,MAAM,YAAY,KAAkB;CAEpC,MAAM,iBAAiB,gBAAgB,EACrC,WAAW,cAAc,YAAY,YAAY,SAAS,IAAI,KAC/D,EAAE;CAEH,MAAM,wBAAwB;EAC5B,MAAM,SAAS,UAAU;AACzB,MAAI,CAAC,OAAQ;EAEb,MAAM,QAAQ,OAAO,eAAe,OAAO;AAC3C,MAAI,CAAC,MAAO;AAEZ,cAAY,QAAQ,OAAO,cAAc,QAAQ,IAAI,UAAU;;CAGjE,MAAM,gBAAgB,OACpB,OACA,WAA2B,aACxB;AACH,cAAY,QAAQ;AACpB,QAAM,UAAU;EAEhB,MAAM,SAAS,UAAU;AACzB,MAAI,CAAC,OAAQ;EAEb,MAAM,QAAQ,OAAO,eAAe,OAAO;AAC3C,MAAI,CAAC,MAAO;EAEZ,MAAM,OAAO,QAAQ,YAAY;AACjC,MAAI,OAAO,OAAO,aAAa,YAAY;AACzC,UAAO,SAAS;IAAE;IAAM;IAAU,CAAC;AACnC;;AAGF,SAAO,aAAa;;AAGtB,QAAO;EACL;EACA;EACA;EACA;EACA;EACD"}