element-plus 2.2.12 → 2.2.15

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 (561) hide show
  1. package/attributes.json +1 -1
  2. package/dist/index.css +1 -1
  3. package/dist/index.full.js +926 -725
  4. package/dist/index.full.min.js +16 -16
  5. package/dist/index.full.min.js.map +1 -1
  6. package/dist/index.full.min.mjs +17 -17
  7. package/dist/index.full.min.mjs.map +1 -1
  8. package/dist/index.full.mjs +927 -726
  9. package/dist/locale/af.js +1 -1
  10. package/dist/locale/af.min.js +1 -1
  11. package/dist/locale/af.min.mjs +1 -1
  12. package/dist/locale/af.mjs +1 -1
  13. package/dist/locale/ar.js +1 -1
  14. package/dist/locale/ar.min.js +1 -1
  15. package/dist/locale/ar.min.mjs +1 -1
  16. package/dist/locale/ar.mjs +1 -1
  17. package/dist/locale/az.js +1 -1
  18. package/dist/locale/az.min.js +1 -1
  19. package/dist/locale/az.min.mjs +1 -1
  20. package/dist/locale/az.mjs +1 -1
  21. package/dist/locale/bg.js +1 -1
  22. package/dist/locale/bg.min.js +1 -1
  23. package/dist/locale/bg.min.mjs +1 -1
  24. package/dist/locale/bg.mjs +1 -1
  25. package/dist/locale/bn.js +1 -1
  26. package/dist/locale/bn.min.js +1 -1
  27. package/dist/locale/bn.min.mjs +1 -1
  28. package/dist/locale/bn.mjs +1 -1
  29. package/dist/locale/ca.js +1 -1
  30. package/dist/locale/ca.min.js +1 -1
  31. package/dist/locale/ca.min.mjs +1 -1
  32. package/dist/locale/ca.mjs +1 -1
  33. package/dist/locale/cs.js +1 -1
  34. package/dist/locale/cs.min.js +1 -1
  35. package/dist/locale/cs.min.mjs +1 -1
  36. package/dist/locale/cs.mjs +1 -1
  37. package/dist/locale/da.js +1 -1
  38. package/dist/locale/da.min.js +1 -1
  39. package/dist/locale/da.min.mjs +1 -1
  40. package/dist/locale/da.mjs +1 -1
  41. package/dist/locale/de.js +1 -1
  42. package/dist/locale/de.min.js +1 -1
  43. package/dist/locale/de.min.mjs +1 -1
  44. package/dist/locale/de.mjs +1 -1
  45. package/dist/locale/el.js +1 -1
  46. package/dist/locale/el.min.js +1 -1
  47. package/dist/locale/el.min.mjs +1 -1
  48. package/dist/locale/el.mjs +1 -1
  49. package/dist/locale/en.js +1 -1
  50. package/dist/locale/en.min.js +1 -1
  51. package/dist/locale/en.min.mjs +1 -1
  52. package/dist/locale/en.mjs +1 -1
  53. package/dist/locale/eo.js +1 -1
  54. package/dist/locale/eo.min.js +1 -1
  55. package/dist/locale/eo.min.mjs +1 -1
  56. package/dist/locale/eo.mjs +1 -1
  57. package/dist/locale/es.js +1 -1
  58. package/dist/locale/es.min.js +1 -1
  59. package/dist/locale/es.min.mjs +1 -1
  60. package/dist/locale/es.mjs +1 -1
  61. package/dist/locale/et.js +1 -1
  62. package/dist/locale/et.min.js +1 -1
  63. package/dist/locale/et.min.mjs +1 -1
  64. package/dist/locale/et.mjs +1 -1
  65. package/dist/locale/eu.js +1 -1
  66. package/dist/locale/eu.min.js +1 -1
  67. package/dist/locale/eu.min.mjs +1 -1
  68. package/dist/locale/eu.mjs +1 -1
  69. package/dist/locale/fa.js +1 -1
  70. package/dist/locale/fa.min.js +1 -1
  71. package/dist/locale/fa.min.mjs +1 -1
  72. package/dist/locale/fa.mjs +1 -1
  73. package/dist/locale/fi.js +1 -1
  74. package/dist/locale/fi.min.js +1 -1
  75. package/dist/locale/fi.min.mjs +1 -1
  76. package/dist/locale/fi.mjs +1 -1
  77. package/dist/locale/fr.js +1 -1
  78. package/dist/locale/fr.min.js +1 -1
  79. package/dist/locale/fr.min.mjs +1 -1
  80. package/dist/locale/fr.mjs +1 -1
  81. package/dist/locale/he.js +1 -1
  82. package/dist/locale/he.min.js +1 -1
  83. package/dist/locale/he.min.mjs +1 -1
  84. package/dist/locale/he.mjs +1 -1
  85. package/dist/locale/hr.js +1 -1
  86. package/dist/locale/hr.min.js +1 -1
  87. package/dist/locale/hr.min.mjs +1 -1
  88. package/dist/locale/hr.mjs +1 -1
  89. package/dist/locale/hu.js +1 -1
  90. package/dist/locale/hu.min.js +1 -1
  91. package/dist/locale/hu.min.mjs +1 -1
  92. package/dist/locale/hu.mjs +1 -1
  93. package/dist/locale/hy-am.js +1 -1
  94. package/dist/locale/hy-am.min.js +1 -1
  95. package/dist/locale/hy-am.min.mjs +1 -1
  96. package/dist/locale/hy-am.mjs +1 -1
  97. package/dist/locale/id.js +1 -1
  98. package/dist/locale/id.min.js +1 -1
  99. package/dist/locale/id.min.mjs +1 -1
  100. package/dist/locale/id.mjs +1 -1
  101. package/dist/locale/it.js +1 -1
  102. package/dist/locale/it.min.js +1 -1
  103. package/dist/locale/it.min.mjs +1 -1
  104. package/dist/locale/it.mjs +1 -1
  105. package/dist/locale/ja.js +1 -1
  106. package/dist/locale/ja.min.js +1 -1
  107. package/dist/locale/ja.min.mjs +1 -1
  108. package/dist/locale/ja.mjs +1 -1
  109. package/dist/locale/kk.js +1 -1
  110. package/dist/locale/kk.min.js +1 -1
  111. package/dist/locale/kk.min.mjs +1 -1
  112. package/dist/locale/kk.mjs +1 -1
  113. package/dist/locale/km.js +1 -1
  114. package/dist/locale/km.min.js +1 -1
  115. package/dist/locale/km.min.mjs +1 -1
  116. package/dist/locale/km.mjs +1 -1
  117. package/dist/locale/ko.js +1 -1
  118. package/dist/locale/ko.min.js +1 -1
  119. package/dist/locale/ko.min.mjs +1 -1
  120. package/dist/locale/ko.mjs +1 -1
  121. package/dist/locale/ku.js +1 -1
  122. package/dist/locale/ku.min.js +1 -1
  123. package/dist/locale/ku.min.mjs +1 -1
  124. package/dist/locale/ku.mjs +1 -1
  125. package/dist/locale/ky.js +1 -1
  126. package/dist/locale/ky.min.js +1 -1
  127. package/dist/locale/ky.min.mjs +1 -1
  128. package/dist/locale/ky.mjs +1 -1
  129. package/dist/locale/lt.js +1 -1
  130. package/dist/locale/lt.min.js +1 -1
  131. package/dist/locale/lt.min.mjs +1 -1
  132. package/dist/locale/lt.mjs +1 -1
  133. package/dist/locale/lv.js +1 -1
  134. package/dist/locale/lv.min.js +1 -1
  135. package/dist/locale/lv.min.mjs +1 -1
  136. package/dist/locale/lv.mjs +1 -1
  137. package/dist/locale/mg.js +1 -1
  138. package/dist/locale/mg.min.js +1 -1
  139. package/dist/locale/mg.min.mjs +1 -1
  140. package/dist/locale/mg.mjs +1 -1
  141. package/dist/locale/mn.js +1 -1
  142. package/dist/locale/mn.min.js +1 -1
  143. package/dist/locale/mn.min.mjs +1 -1
  144. package/dist/locale/mn.mjs +1 -1
  145. package/dist/locale/nb-no.js +1 -1
  146. package/dist/locale/nb-no.min.js +1 -1
  147. package/dist/locale/nb-no.min.mjs +1 -1
  148. package/dist/locale/nb-no.mjs +1 -1
  149. package/dist/locale/nl.js +1 -1
  150. package/dist/locale/nl.min.js +1 -1
  151. package/dist/locale/nl.min.mjs +1 -1
  152. package/dist/locale/nl.mjs +1 -1
  153. package/dist/locale/pa.js +1 -1
  154. package/dist/locale/pa.min.js +1 -1
  155. package/dist/locale/pa.min.mjs +1 -1
  156. package/dist/locale/pa.mjs +1 -1
  157. package/dist/locale/pl.js +1 -1
  158. package/dist/locale/pl.min.js +1 -1
  159. package/dist/locale/pl.min.mjs +1 -1
  160. package/dist/locale/pl.mjs +1 -1
  161. package/dist/locale/pt-br.js +1 -1
  162. package/dist/locale/pt-br.min.js +1 -1
  163. package/dist/locale/pt-br.min.mjs +1 -1
  164. package/dist/locale/pt-br.mjs +1 -1
  165. package/dist/locale/pt.js +1 -1
  166. package/dist/locale/pt.min.js +1 -1
  167. package/dist/locale/pt.min.mjs +1 -1
  168. package/dist/locale/pt.mjs +1 -1
  169. package/dist/locale/ro.js +1 -1
  170. package/dist/locale/ro.min.js +1 -1
  171. package/dist/locale/ro.min.mjs +1 -1
  172. package/dist/locale/ro.mjs +1 -1
  173. package/dist/locale/ru.js +1 -1
  174. package/dist/locale/ru.min.js +1 -1
  175. package/dist/locale/ru.min.mjs +1 -1
  176. package/dist/locale/ru.mjs +1 -1
  177. package/dist/locale/sk.js +1 -1
  178. package/dist/locale/sk.min.js +1 -1
  179. package/dist/locale/sk.min.mjs +1 -1
  180. package/dist/locale/sk.mjs +1 -1
  181. package/dist/locale/sl.js +1 -1
  182. package/dist/locale/sl.min.js +1 -1
  183. package/dist/locale/sl.min.mjs +1 -1
  184. package/dist/locale/sl.mjs +1 -1
  185. package/dist/locale/sr.js +1 -1
  186. package/dist/locale/sr.min.js +1 -1
  187. package/dist/locale/sr.min.mjs +1 -1
  188. package/dist/locale/sr.mjs +1 -1
  189. package/dist/locale/sv.js +1 -1
  190. package/dist/locale/sv.min.js +1 -1
  191. package/dist/locale/sv.min.mjs +1 -1
  192. package/dist/locale/sv.mjs +1 -1
  193. package/dist/locale/ta.js +1 -1
  194. package/dist/locale/ta.min.js +1 -1
  195. package/dist/locale/ta.min.mjs +1 -1
  196. package/dist/locale/ta.mjs +1 -1
  197. package/dist/locale/th.js +1 -1
  198. package/dist/locale/th.min.js +1 -1
  199. package/dist/locale/th.min.mjs +1 -1
  200. package/dist/locale/th.mjs +1 -1
  201. package/dist/locale/tk.js +1 -1
  202. package/dist/locale/tk.min.js +1 -1
  203. package/dist/locale/tk.min.mjs +1 -1
  204. package/dist/locale/tk.mjs +1 -1
  205. package/dist/locale/tr.js +1 -1
  206. package/dist/locale/tr.min.js +1 -1
  207. package/dist/locale/tr.min.mjs +1 -1
  208. package/dist/locale/tr.mjs +1 -1
  209. package/dist/locale/ug-cn.js +1 -1
  210. package/dist/locale/ug-cn.min.js +1 -1
  211. package/dist/locale/ug-cn.min.mjs +1 -1
  212. package/dist/locale/ug-cn.mjs +1 -1
  213. package/dist/locale/uk.js +1 -1
  214. package/dist/locale/uk.min.js +1 -1
  215. package/dist/locale/uk.min.mjs +1 -1
  216. package/dist/locale/uk.mjs +1 -1
  217. package/dist/locale/uz-uz.js +1 -1
  218. package/dist/locale/uz-uz.min.js +1 -1
  219. package/dist/locale/uz-uz.min.mjs +1 -1
  220. package/dist/locale/uz-uz.mjs +1 -1
  221. package/dist/locale/vi.js +1 -1
  222. package/dist/locale/vi.min.js +1 -1
  223. package/dist/locale/vi.min.mjs +1 -1
  224. package/dist/locale/vi.mjs +1 -1
  225. package/dist/locale/zh-cn.js +1 -1
  226. package/dist/locale/zh-cn.min.js +1 -1
  227. package/dist/locale/zh-cn.min.mjs +1 -1
  228. package/dist/locale/zh-cn.mjs +1 -1
  229. package/dist/locale/zh-tw.js +47 -12
  230. package/dist/locale/zh-tw.min.js +1 -1
  231. package/dist/locale/zh-tw.min.js.map +1 -1
  232. package/dist/locale/zh-tw.min.mjs +1 -1
  233. package/dist/locale/zh-tw.min.mjs.map +1 -1
  234. package/dist/locale/zh-tw.mjs +47 -12
  235. package/es/components/carousel/index.d.ts +1 -1
  236. package/es/components/carousel/src/carousel.vue.d.ts +1 -1
  237. package/es/components/cascader/index.d.ts +2 -2
  238. package/es/components/cascader/src/index.mjs +15 -12
  239. package/es/components/cascader/src/index.mjs.map +1 -1
  240. package/es/components/cascader/src/index.vue.d.ts +42 -43
  241. package/es/components/checkbox/index.d.ts +2 -2
  242. package/es/components/checkbox/src/checkbox-group.mjs +3 -3
  243. package/es/components/checkbox/src/checkbox-group.mjs.map +1 -1
  244. package/es/components/checkbox/src/checkbox-group.vue.d.ts +1 -1
  245. package/es/components/checkbox/src/checkbox.d.ts +4 -5
  246. package/es/components/checkbox/src/checkbox.mjs +6 -10
  247. package/es/components/checkbox/src/checkbox.mjs.map +1 -1
  248. package/es/components/color-picker/src/index.mjs +10 -15
  249. package/es/components/color-picker/src/index.mjs.map +1 -1
  250. package/es/components/date-picker/src/date-picker-com/panel-date-pick.vue.d.ts +1 -0
  251. package/es/components/date-picker/src/date-picker-com/panel-date-range.vue.d.ts +1 -0
  252. package/es/components/date-picker/src/panel-utils.d.ts +2 -0
  253. package/es/components/dialog/src/use-dialog.mjs +1 -1
  254. package/es/components/dialog/src/use-dialog.mjs.map +1 -1
  255. package/es/components/form/index.d.ts +4 -0
  256. package/es/components/form/src/form-item2.mjs +1 -0
  257. package/es/components/form/src/form-item2.mjs.map +1 -1
  258. package/es/components/form/src/form.d.ts +1 -0
  259. package/es/components/form/src/form.mjs +5 -0
  260. package/es/components/form/src/form.mjs.map +1 -1
  261. package/es/components/form/src/form.vue.d.ts +4 -0
  262. package/es/components/index.mjs +1 -1
  263. package/es/components/menu/index.d.ts +224 -0
  264. package/es/components/menu/src/menu.mjs +39 -17
  265. package/es/components/menu/src/menu.mjs.map +1 -1
  266. package/es/components/menu/src/sub-menu.d.ts +138 -2
  267. package/es/components/menu/src/sub-menu.mjs +18 -3
  268. package/es/components/menu/src/sub-menu.mjs.map +1 -1
  269. package/es/components/message/src/instance.mjs +1 -1
  270. package/es/components/message/src/instance.mjs.map +1 -1
  271. package/es/components/message/src/method.mjs +1 -1
  272. package/es/components/message/src/method.mjs.map +1 -1
  273. package/es/components/message-box/src/message-box.type.d.ts +1 -1
  274. package/es/components/message-box/src/messageBox.mjs +10 -9
  275. package/es/components/message-box/src/messageBox.mjs.map +1 -1
  276. package/es/components/notification/src/notification.d.ts +2 -0
  277. package/es/components/notification/src/notification.mjs.map +1 -1
  278. package/es/components/notification/src/notification.vue.d.ts +111 -5
  279. package/es/components/notification/src/notification2.mjs +84 -91
  280. package/es/components/notification/src/notification2.mjs.map +1 -1
  281. package/es/components/notification/src/notify.mjs +2 -2
  282. package/es/components/notification/src/notify.mjs.map +1 -1
  283. package/es/components/page-header/index.d.ts +46 -0
  284. package/es/components/page-header/src/page-header.vue.d.ts +46 -0
  285. package/es/components/page-header/src/page-header2.mjs +70 -28
  286. package/es/components/page-header/src/page-header2.mjs.map +1 -1
  287. package/es/components/pagination/index.d.ts +6 -0
  288. package/es/components/pagination/src/components/next.d.ts +6 -0
  289. package/es/components/pagination/src/components/next.mjs +4 -0
  290. package/es/components/pagination/src/components/next.mjs.map +1 -1
  291. package/es/components/pagination/src/components/next.vue.d.ts +18 -1
  292. package/es/components/pagination/src/components/next2.mjs +2 -3
  293. package/es/components/pagination/src/components/next2.mjs.map +1 -1
  294. package/es/components/pagination/src/components/prev.d.ts +6 -0
  295. package/es/components/pagination/src/components/prev.mjs +4 -0
  296. package/es/components/pagination/src/components/prev.mjs.map +1 -1
  297. package/es/components/pagination/src/components/prev.vue.d.ts +18 -1
  298. package/es/components/pagination/src/components/prev2.mjs +2 -3
  299. package/es/components/pagination/src/components/prev2.mjs.map +1 -1
  300. package/es/components/pagination/src/pagination.d.ts +8 -0
  301. package/es/components/pagination/src/pagination.mjs +12 -0
  302. package/es/components/pagination/src/pagination.mjs.map +1 -1
  303. package/es/components/popconfirm/index.d.ts +7 -0
  304. package/es/components/popconfirm/src/popconfirm.d.ts +1 -0
  305. package/es/components/popconfirm/src/popconfirm.mjs +5 -1
  306. package/es/components/popconfirm/src/popconfirm.mjs.map +1 -1
  307. package/es/components/popconfirm/src/popconfirm.vue.d.ts +454 -447
  308. package/es/components/popconfirm/src/popconfirm2.mjs +14 -5
  309. package/es/components/popconfirm/src/popconfirm2.mjs.map +1 -1
  310. package/es/components/popover/src/popover2.mjs +1 -1
  311. package/es/components/popover/src/popover2.mjs.map +1 -1
  312. package/es/components/scrollbar/index.mjs +2 -2
  313. package/es/components/scrollbar/src/scrollbar.mjs +169 -44
  314. package/es/components/scrollbar/src/scrollbar.mjs.map +1 -1
  315. package/es/components/scrollbar/src/scrollbar2.mjs +44 -169
  316. package/es/components/scrollbar/src/scrollbar2.mjs.map +1 -1
  317. package/es/components/select/src/useOption.mjs +2 -2
  318. package/es/components/select/src/useOption.mjs.map +1 -1
  319. package/es/components/select/src/useSelect.d.ts +31 -32
  320. package/es/components/select/src/useSelect.mjs +8 -11
  321. package/es/components/select/src/useSelect.mjs.map +1 -1
  322. package/es/components/slider/src/composables/use-marks.mjs +1 -1
  323. package/es/components/slider/src/composables/use-marks.mjs.map +1 -1
  324. package/es/components/slot/src/only-child.mjs +3 -1
  325. package/es/components/slot/src/only-child.mjs.map +1 -1
  326. package/es/components/space/index.d.ts +3 -3
  327. package/es/components/space/src/space.d.ts +5 -4
  328. package/es/components/space/src/space.mjs.map +1 -1
  329. package/es/components/space/src/use-space.d.ts +1 -1
  330. package/es/components/switch/src/switch2.mjs +2 -1
  331. package/es/components/switch/src/switch2.mjs.map +1 -1
  332. package/es/components/table/src/table/style-helper.mjs +11 -9
  333. package/es/components/table/src/table/style-helper.mjs.map +1 -1
  334. package/es/components/table/src/table-body/events-helper.d.ts +1 -3
  335. package/es/components/table/src/table-body/events-helper.mjs +2 -2
  336. package/es/components/table/src/table-body/events-helper.mjs.map +1 -1
  337. package/es/components/table/src/table-body/index.mjs +1 -5
  338. package/es/components/table/src/table-body/index.mjs.map +1 -1
  339. package/es/components/table/src/table-body/render-helper.mjs +2 -2
  340. package/es/components/table/src/table-body/render-helper.mjs.map +1 -1
  341. package/es/components/table/src/table-header/index.mjs +1 -2
  342. package/es/components/table/src/table-header/index.mjs.map +1 -1
  343. package/es/components/table/src/util.mjs +1 -0
  344. package/es/components/table/src/util.mjs.map +1 -1
  345. package/es/components/time-picker/src/common/picker.mjs +6 -9
  346. package/es/components/time-picker/src/common/picker.mjs.map +1 -1
  347. package/es/components/time-picker/src/common/picker.vue.d.ts +21 -22
  348. package/es/components/time-picker/src/time-picker-com/basic-time-spinner.mjs +12 -4
  349. package/es/components/time-picker/src/time-picker-com/basic-time-spinner.mjs.map +1 -1
  350. package/es/components/time-picker/src/time-picker-com/basic-time-spinner.vue.d.ts +1 -0
  351. package/es/components/time-picker/src/time-picker-com/panel-time-pick.vue.d.ts +1 -0
  352. package/es/components/time-picker/src/time-picker-com/panel-time-range.vue.d.ts +1 -0
  353. package/es/components/transfer/index.d.ts +10 -10
  354. package/es/components/transfer/src/transfer-panel.vue.d.ts +2 -2
  355. package/es/components/transfer/src/transfer.vue.d.ts +10 -10
  356. package/es/components/tree/src/model/node.mjs +3 -3
  357. package/es/components/tree/src/model/node.mjs.map +1 -1
  358. package/es/components/tree/src/model/tree-store.mjs +2 -2
  359. package/es/components/tree/src/model/tree-store.mjs.map +1 -1
  360. package/es/components/tree-v2/src/composables/useTree.d.ts +4 -0
  361. package/es/components/tree-v2/src/composables/useTree.mjs +21 -7
  362. package/es/components/tree-v2/src/composables/useTree.mjs.map +1 -1
  363. package/es/components/tree-v2/src/tree.mjs +10 -2
  364. package/es/components/tree-v2/src/tree.mjs.map +1 -1
  365. package/es/components/virtual-list/src/builders/build-list.mjs +3 -3
  366. package/es/components/virtual-list/src/builders/build-list.mjs.map +1 -1
  367. package/es/hooks/use-id/index.mjs +4 -1
  368. package/es/hooks/use-id/index.mjs.map +1 -1
  369. package/es/hooks/use-lockscreen/index.mjs +4 -6
  370. package/es/hooks/use-lockscreen/index.mjs.map +1 -1
  371. package/es/index.mjs +1 -1
  372. package/es/locale/lang/zh-tw.d.ts +35 -0
  373. package/es/locale/lang/zh-tw.mjs +46 -11
  374. package/es/locale/lang/zh-tw.mjs.map +1 -1
  375. package/es/utils/dom/index.d.ts +0 -1
  376. package/es/utils/dom/index.mjs +0 -1
  377. package/es/utils/dom/index.mjs.map +1 -1
  378. package/es/utils/index.mjs +0 -1
  379. package/es/utils/index.mjs.map +1 -1
  380. package/es/version.d.ts +1 -1
  381. package/es/version.mjs +1 -1
  382. package/es/version.mjs.map +1 -1
  383. package/lib/components/carousel/index.d.ts +1 -1
  384. package/lib/components/carousel/src/carousel.vue.d.ts +1 -1
  385. package/lib/components/cascader/index.d.ts +2 -2
  386. package/lib/components/cascader/src/index.js +16 -13
  387. package/lib/components/cascader/src/index.js.map +1 -1
  388. package/lib/components/cascader/src/index.vue.d.ts +42 -43
  389. package/lib/components/checkbox/index.d.ts +2 -2
  390. package/lib/components/checkbox/src/checkbox-group.js +3 -3
  391. package/lib/components/checkbox/src/checkbox-group.js.map +1 -1
  392. package/lib/components/checkbox/src/checkbox-group.vue.d.ts +1 -1
  393. package/lib/components/checkbox/src/checkbox.d.ts +4 -5
  394. package/lib/components/checkbox/src/checkbox.js +4 -8
  395. package/lib/components/checkbox/src/checkbox.js.map +1 -1
  396. package/lib/components/color-picker/src/index.js +8 -13
  397. package/lib/components/color-picker/src/index.js.map +1 -1
  398. package/lib/components/date-picker/src/date-picker-com/panel-date-pick.vue.d.ts +1 -0
  399. package/lib/components/date-picker/src/date-picker-com/panel-date-range.vue.d.ts +1 -0
  400. package/lib/components/date-picker/src/panel-utils.d.ts +2 -0
  401. package/lib/components/dialog/src/use-dialog.js +1 -1
  402. package/lib/components/dialog/src/use-dialog.js.map +1 -1
  403. package/lib/components/form/index.d.ts +4 -0
  404. package/lib/components/form/src/form-item2.js +1 -0
  405. package/lib/components/form/src/form-item2.js.map +1 -1
  406. package/lib/components/form/src/form.d.ts +1 -0
  407. package/lib/components/form/src/form.js +5 -0
  408. package/lib/components/form/src/form.js.map +1 -1
  409. package/lib/components/form/src/form.vue.d.ts +4 -0
  410. package/lib/components/index.js +1 -1
  411. package/lib/components/menu/index.d.ts +224 -0
  412. package/lib/components/menu/src/menu.js +39 -17
  413. package/lib/components/menu/src/menu.js.map +1 -1
  414. package/lib/components/menu/src/sub-menu.d.ts +138 -2
  415. package/lib/components/menu/src/sub-menu.js +17 -2
  416. package/lib/components/menu/src/sub-menu.js.map +1 -1
  417. package/lib/components/message/src/instance.js +1 -1
  418. package/lib/components/message/src/instance.js.map +1 -1
  419. package/lib/components/message/src/method.js +1 -1
  420. package/lib/components/message/src/method.js.map +1 -1
  421. package/lib/components/message-box/src/message-box.type.d.ts +1 -1
  422. package/lib/components/message-box/src/messageBox.js +10 -9
  423. package/lib/components/message-box/src/messageBox.js.map +1 -1
  424. package/lib/components/notification/src/notification.d.ts +2 -0
  425. package/lib/components/notification/src/notification.js.map +1 -1
  426. package/lib/components/notification/src/notification.vue.d.ts +111 -5
  427. package/lib/components/notification/src/notification2.js +85 -92
  428. package/lib/components/notification/src/notification2.js.map +1 -1
  429. package/lib/components/notification/src/notify.js +2 -2
  430. package/lib/components/notification/src/notify.js.map +1 -1
  431. package/lib/components/page-header/index.d.ts +46 -0
  432. package/lib/components/page-header/src/page-header.vue.d.ts +46 -0
  433. package/lib/components/page-header/src/page-header2.js +69 -27
  434. package/lib/components/page-header/src/page-header2.js.map +1 -1
  435. package/lib/components/pagination/index.d.ts +6 -0
  436. package/lib/components/pagination/src/components/next.d.ts +6 -0
  437. package/lib/components/pagination/src/components/next.js +4 -0
  438. package/lib/components/pagination/src/components/next.js.map +1 -1
  439. package/lib/components/pagination/src/components/next.vue.d.ts +18 -1
  440. package/lib/components/pagination/src/components/next2.js +1 -2
  441. package/lib/components/pagination/src/components/next2.js.map +1 -1
  442. package/lib/components/pagination/src/components/prev.d.ts +6 -0
  443. package/lib/components/pagination/src/components/prev.js +4 -0
  444. package/lib/components/pagination/src/components/prev.js.map +1 -1
  445. package/lib/components/pagination/src/components/prev.vue.d.ts +18 -1
  446. package/lib/components/pagination/src/components/prev2.js +1 -2
  447. package/lib/components/pagination/src/components/prev2.js.map +1 -1
  448. package/lib/components/pagination/src/pagination.d.ts +8 -0
  449. package/lib/components/pagination/src/pagination.js +12 -0
  450. package/lib/components/pagination/src/pagination.js.map +1 -1
  451. package/lib/components/popconfirm/index.d.ts +7 -0
  452. package/lib/components/popconfirm/src/popconfirm.d.ts +1 -0
  453. package/lib/components/popconfirm/src/popconfirm.js +5 -1
  454. package/lib/components/popconfirm/src/popconfirm.js.map +1 -1
  455. package/lib/components/popconfirm/src/popconfirm.vue.d.ts +454 -447
  456. package/lib/components/popconfirm/src/popconfirm2.js +13 -4
  457. package/lib/components/popconfirm/src/popconfirm2.js.map +1 -1
  458. package/lib/components/popover/src/popover2.js +1 -1
  459. package/lib/components/popover/src/popover2.js.map +1 -1
  460. package/lib/components/scrollbar/index.js +2 -2
  461. package/lib/components/scrollbar/src/scrollbar.js +169 -45
  462. package/lib/components/scrollbar/src/scrollbar.js.map +1 -1
  463. package/lib/components/scrollbar/src/scrollbar2.js +45 -169
  464. package/lib/components/scrollbar/src/scrollbar2.js.map +1 -1
  465. package/lib/components/select/src/useOption.js +1 -1
  466. package/lib/components/select/src/useOption.js.map +1 -1
  467. package/lib/components/select/src/useSelect.d.ts +31 -32
  468. package/lib/components/select/src/useSelect.js +9 -12
  469. package/lib/components/select/src/useSelect.js.map +1 -1
  470. package/lib/components/slider/src/composables/use-marks.js +1 -1
  471. package/lib/components/slider/src/composables/use-marks.js.map +1 -1
  472. package/lib/components/slot/src/only-child.js +3 -1
  473. package/lib/components/slot/src/only-child.js.map +1 -1
  474. package/lib/components/space/index.d.ts +3 -3
  475. package/lib/components/space/src/space.d.ts +5 -4
  476. package/lib/components/space/src/space.js.map +1 -1
  477. package/lib/components/space/src/use-space.d.ts +1 -1
  478. package/lib/components/switch/src/switch2.js +2 -1
  479. package/lib/components/switch/src/switch2.js.map +1 -1
  480. package/lib/components/table/src/table/style-helper.js +11 -9
  481. package/lib/components/table/src/table/style-helper.js.map +1 -1
  482. package/lib/components/table/src/table-body/events-helper.d.ts +1 -3
  483. package/lib/components/table/src/table-body/events-helper.js +2 -2
  484. package/lib/components/table/src/table-body/events-helper.js.map +1 -1
  485. package/lib/components/table/src/table-body/index.js +0 -4
  486. package/lib/components/table/src/table-body/index.js.map +1 -1
  487. package/lib/components/table/src/table-body/render-helper.js +2 -2
  488. package/lib/components/table/src/table-body/render-helper.js.map +1 -1
  489. package/lib/components/table/src/table-header/index.js +1 -2
  490. package/lib/components/table/src/table-header/index.js.map +1 -1
  491. package/lib/components/table/src/util.js +1 -0
  492. package/lib/components/table/src/util.js.map +1 -1
  493. package/lib/components/time-picker/src/common/picker.js +17 -20
  494. package/lib/components/time-picker/src/common/picker.js.map +1 -1
  495. package/lib/components/time-picker/src/common/picker.vue.d.ts +21 -22
  496. package/lib/components/time-picker/src/time-picker-com/basic-time-spinner.js +12 -4
  497. package/lib/components/time-picker/src/time-picker-com/basic-time-spinner.js.map +1 -1
  498. package/lib/components/time-picker/src/time-picker-com/basic-time-spinner.vue.d.ts +1 -0
  499. package/lib/components/time-picker/src/time-picker-com/panel-time-pick.vue.d.ts +1 -0
  500. package/lib/components/time-picker/src/time-picker-com/panel-time-range.vue.d.ts +1 -0
  501. package/lib/components/transfer/index.d.ts +10 -10
  502. package/lib/components/transfer/src/transfer-panel.vue.d.ts +2 -2
  503. package/lib/components/transfer/src/transfer.vue.d.ts +10 -10
  504. package/lib/components/tree/src/model/node.js +3 -3
  505. package/lib/components/tree/src/model/node.js.map +1 -1
  506. package/lib/components/tree/src/model/tree-store.js +1 -1
  507. package/lib/components/tree/src/model/tree-store.js.map +1 -1
  508. package/lib/components/tree-v2/src/composables/useTree.d.ts +4 -0
  509. package/lib/components/tree-v2/src/composables/useTree.js +21 -7
  510. package/lib/components/tree-v2/src/composables/useTree.js.map +1 -1
  511. package/lib/components/tree-v2/src/tree.js +10 -2
  512. package/lib/components/tree-v2/src/tree.js.map +1 -1
  513. package/lib/components/virtual-list/src/builders/build-list.js +2 -2
  514. package/lib/components/virtual-list/src/builders/build-list.js.map +1 -1
  515. package/lib/hooks/use-id/index.js +4 -1
  516. package/lib/hooks/use-id/index.js.map +1 -1
  517. package/lib/hooks/use-lockscreen/index.js +4 -6
  518. package/lib/hooks/use-lockscreen/index.js.map +1 -1
  519. package/lib/index.js +1 -1
  520. package/lib/locale/lang/zh-tw.d.ts +35 -0
  521. package/lib/locale/lang/zh-tw.js +46 -11
  522. package/lib/locale/lang/zh-tw.js.map +1 -1
  523. package/lib/utils/dom/index.d.ts +0 -1
  524. package/lib/utils/dom/index.js +0 -3
  525. package/lib/utils/dom/index.js.map +1 -1
  526. package/lib/utils/index.js +0 -3
  527. package/lib/utils/index.js.map +1 -1
  528. package/lib/version.d.ts +1 -1
  529. package/lib/version.js +1 -1
  530. package/lib/version.js.map +1 -1
  531. package/package.json +6 -4
  532. package/tags.json +1 -1
  533. package/theme-chalk/el-form.css +1 -1
  534. package/theme-chalk/el-input.css +1 -1
  535. package/theme-chalk/el-menu.css +1 -1
  536. package/theme-chalk/el-message.css +1 -1
  537. package/theme-chalk/el-page-header.css +1 -1
  538. package/theme-chalk/el-popover.css +1 -1
  539. package/theme-chalk/el-rate.css +1 -1
  540. package/theme-chalk/el-select-v2.css +1 -1
  541. package/theme-chalk/el-select.css +1 -1
  542. package/theme-chalk/el-table.css +1 -1
  543. package/theme-chalk/index.css +1 -1
  544. package/theme-chalk/src/common/var.scss +0 -2
  545. package/theme-chalk/src/form.scss +17 -6
  546. package/theme-chalk/src/input.scss +1 -0
  547. package/theme-chalk/src/menu.scss +0 -11
  548. package/theme-chalk/src/message.scss +1 -0
  549. package/theme-chalk/src/page-header.scss +40 -26
  550. package/theme-chalk/src/popover.scss +8 -0
  551. package/theme-chalk/src/rate.scss +1 -1
  552. package/theme-chalk/src/select/common.scss +3 -5
  553. package/theme-chalk/src/select.scss +1 -0
  554. package/theme-chalk/src/table.scss +15 -25
  555. package/web-types.json +1 -1
  556. package/es/utils/dom/resize-event.d.ts +0 -9
  557. package/es/utils/dom/resize-event.mjs +0 -34
  558. package/es/utils/dom/resize-event.mjs.map +0 -1
  559. package/lib/utils/dom/resize-event.d.ts +0 -9
  560. package/lib/utils/dom/resize-event.js +0 -39
  561. package/lib/utils/dom/resize-event.js.map +0 -1
@@ -1 +1 @@
1
- {"version":3,"file":"util.mjs","sources":["../../../../../../packages/components/table/src/util.ts"],"sourcesContent":["// @ts-nocheck\nimport { createPopper } from '@popperjs/core'\nimport { get } from 'lodash-unified'\nimport escapeHtml from 'escape-html'\nimport { hasOwn } from '@element-plus/utils'\nimport { useZIndex } from '@element-plus/hooks'\nimport type {\n IPopperOptions,\n PopperInstance,\n} from '@element-plus/components/popper'\nimport type { Nullable } from '@element-plus/utils'\nimport type { TableColumnCtx } from './table-column/defaults'\n\nexport const getCell = function (event: Event) {\n return (event.target as HTMLElement)?.closest('td')\n}\n\nconst isObject = function (obj: unknown): boolean {\n return obj !== null && typeof obj === 'object'\n}\n\nexport const orderBy = function <T>(\n array: T[],\n sortKey: string,\n reverse: string | number,\n sortMethod,\n sortBy: string | (string | ((a: T, b: T, array?: T[]) => number))[]\n) {\n if (\n !sortKey &&\n !sortMethod &&\n (!sortBy || (Array.isArray(sortBy) && !sortBy.length))\n ) {\n return array\n }\n if (typeof reverse === 'string') {\n reverse = reverse === 'descending' ? -1 : 1\n } else {\n reverse = reverse && reverse < 0 ? -1 : 1\n }\n const getKey = sortMethod\n ? null\n : function (value, index) {\n if (sortBy) {\n if (!Array.isArray(sortBy)) {\n sortBy = [sortBy]\n }\n return sortBy.map((by) => {\n if (typeof by === 'string') {\n return get(value, by)\n } else {\n return by(value, index, array)\n }\n })\n }\n if (sortKey !== '$key') {\n if (isObject(value) && '$value' in value) value = value.$value\n }\n return [isObject(value) ? get(value, sortKey) : value]\n }\n const compare = function (a, b) {\n if (sortMethod) {\n return sortMethod(a.value, b.value)\n }\n for (let i = 0, len = a.key.length; i < len; i++) {\n if (a.key[i] < b.key[i]) {\n return -1\n }\n if (a.key[i] > b.key[i]) {\n return 1\n }\n }\n return 0\n }\n return array\n .map((value, index) => {\n return {\n value,\n index,\n key: getKey ? getKey(value, index) : null,\n }\n })\n .sort((a, b) => {\n let order = compare(a, b)\n if (!order) {\n // make stable https://en.wikipedia.org/wiki/Sorting_algorithm#Stability\n order = a.index - b.index\n }\n return order * +reverse\n })\n .map((item) => item.value)\n}\n\nexport const getColumnById = function <T>(\n table: {\n columns: TableColumnCtx<T>[]\n },\n columnId: string\n): null | TableColumnCtx<T> {\n let column = null\n table.columns.forEach((item) => {\n if (item.id === columnId) {\n column = item\n }\n })\n return column\n}\n\nexport const getColumnByKey = function <T>(\n table: {\n columns: TableColumnCtx<T>[]\n },\n columnKey: string\n): TableColumnCtx<T> {\n let column = null\n for (let i = 0; i < table.columns.length; i++) {\n const item = table.columns[i]\n if (item.columnKey === columnKey) {\n column = item\n break\n }\n }\n return column\n}\n\nexport const getColumnByCell = function <T>(\n table: {\n columns: TableColumnCtx<T>[]\n },\n cell: HTMLElement,\n namespace: string\n): null | TableColumnCtx<T> {\n const matches = (cell.className || '').match(\n new RegExp(`${namespace}-table_[^\\\\s]+`, 'gm')\n )\n if (matches) {\n return getColumnById(table, matches[0])\n }\n return null\n}\n\nexport const getRowIdentity = <T>(\n row: T,\n rowKey: string | ((row: T) => any)\n): string => {\n if (!row) throw new Error('Row is required when get row identity')\n if (typeof rowKey === 'string') {\n if (!rowKey.includes('.')) {\n return `${row[rowKey]}`\n }\n const key = rowKey.split('.')\n let current = row\n for (const element of key) {\n current = current[element]\n }\n return `${current}`\n } else if (typeof rowKey === 'function') {\n return rowKey.call(null, row)\n }\n}\n\nexport const getKeysMap = function <T>(\n array: T[],\n rowKey: string\n): Record<string, { row: T; index: number }> {\n const arrayMap = {}\n ;(array || []).forEach((row, index) => {\n arrayMap[getRowIdentity(row, rowKey)] = { row, index }\n })\n return arrayMap\n}\n\nexport function mergeOptions<T, K>(defaults: T, config: K): T & K {\n const options = {} as T & K\n let key\n for (key in defaults) {\n options[key] = defaults[key]\n }\n for (key in config) {\n if (hasOwn(config as unknown as Record<string, any>, key)) {\n const value = config[key]\n if (typeof value !== 'undefined') {\n options[key] = value\n }\n }\n }\n return options\n}\n\nexport function parseWidth(width: number | string): number | string {\n if (width === '') return width\n if (width !== undefined) {\n width = Number.parseInt(width as string, 10)\n if (Number.isNaN(width)) {\n width = ''\n }\n }\n return width\n}\n\nexport function parseMinWidth(minWidth: number | string): number | string {\n if (minWidth === '') return minWidth\n if (minWidth !== undefined) {\n minWidth = parseWidth(minWidth)\n if (Number.isNaN(minWidth)) {\n minWidth = 80\n }\n }\n return minWidth\n}\n\nexport function parseHeight(height: number | string) {\n if (typeof height === 'number') {\n return height\n }\n if (typeof height === 'string') {\n if (/^\\d+(?:px)?$/.test(height)) {\n return Number.parseInt(height, 10)\n } else {\n return height\n }\n }\n return null\n}\n\n// https://github.com/reduxjs/redux/blob/master/src/compose.js\nexport function compose(...funcs) {\n if (funcs.length === 0) {\n return (arg) => arg\n }\n if (funcs.length === 1) {\n return funcs[0]\n }\n return funcs.reduce(\n (a, b) =>\n (...args) =>\n a(b(...args))\n )\n}\n\nexport function toggleRowStatus<T>(\n statusArr: T[],\n row: T,\n newVal: boolean\n): boolean {\n let changed = false\n const index = statusArr.indexOf(row)\n const included = index !== -1\n\n const addRow = () => {\n statusArr.push(row)\n changed = true\n }\n const removeRow = () => {\n statusArr.splice(index, 1)\n changed = true\n }\n\n if (typeof newVal === 'boolean') {\n if (newVal && !included) {\n addRow()\n } else if (!newVal && included) {\n removeRow()\n }\n } else {\n if (included) {\n removeRow()\n } else {\n addRow()\n }\n }\n return changed\n}\n\nexport function walkTreeNode(\n root,\n cb,\n childrenKey = 'children',\n lazyKey = 'hasChildren'\n) {\n const isNil = (array) => !(Array.isArray(array) && array.length)\n\n function _walker(parent, children, level) {\n cb(parent, children, level)\n children.forEach((item) => {\n if (item[lazyKey]) {\n cb(item, null, level + 1)\n return\n }\n const children = item[childrenKey]\n if (!isNil(children)) {\n _walker(item, children, level + 1)\n }\n })\n }\n\n root.forEach((item) => {\n if (item[lazyKey]) {\n cb(item, null, 0)\n return\n }\n const children = item[childrenKey]\n if (!isNil(children)) {\n _walker(item, children, 0)\n }\n })\n}\n\nexport let removePopper\n\nexport function createTablePopper(\n parentNode: HTMLElement | undefined,\n trigger: HTMLElement,\n popperContent: string,\n popperOptions: Partial<IPopperOptions>,\n tooltipEffect: string\n) {\n const { nextZIndex } = useZIndex()\n const ns = parentNode?.dataset.prefix\n const scrollContainer = parentNode?.querySelector(`.${ns}-scrollbar__wrap`)\n function renderContent(): HTMLDivElement {\n const isLight = tooltipEffect === 'light'\n const content = document.createElement('div')\n content.className = `${ns}-popper ${isLight ? 'is-light' : 'is-dark'}`\n popperContent = escapeHtml(popperContent)\n content.innerHTML = popperContent\n content.style.zIndex = String(nextZIndex())\n // Avoid side effects caused by append to body\n parentNode?.appendChild(content)\n return content\n }\n function renderArrow(): HTMLDivElement {\n const arrow = document.createElement('div')\n arrow.className = `${ns}-popper__arrow`\n return arrow\n }\n function showPopper() {\n popperInstance && popperInstance.update()\n }\n removePopper = () => {\n try {\n popperInstance && popperInstance.destroy()\n content && parentNode?.removeChild(content)\n trigger.removeEventListener('mouseenter', showPopper)\n trigger.removeEventListener('mouseleave', removePopper)\n scrollContainer?.removeEventListener('scroll', removePopper)\n removePopper = undefined\n } catch {}\n }\n let popperInstance: Nullable<PopperInstance> = null\n const content = renderContent()\n const arrow = renderArrow()\n content.appendChild(arrow)\n popperInstance = createPopper(trigger, content, {\n strategy: 'absolute',\n modifiers: [\n {\n name: 'offset',\n options: {\n offset: [0, 8],\n },\n },\n {\n name: 'arrow',\n options: {\n element: arrow,\n padding: 10,\n },\n },\n ],\n ...popperOptions,\n })\n trigger.addEventListener('mouseenter', showPopper)\n trigger.addEventListener('mouseleave', removePopper)\n scrollContainer?.addEventListener('scroll', removePopper)\n return popperInstance\n}\n\nexport const isFixedColumn = <T>(\n index: number,\n fixed: string | boolean,\n store: any,\n realColumns?: TableColumnCtx<T>[]\n) => {\n let start = 0\n let after = index\n if (realColumns) {\n if (realColumns[index].colSpan > 1) {\n // fixed column not supported in grouped header\n return {}\n }\n // handle group\n for (let i = 0; i < index; i++) {\n start += realColumns[i].colSpan\n }\n after = start + realColumns[index].colSpan - 1\n } else {\n start = index\n }\n let fixedLayout\n const columns = store.states.columns\n switch (fixed) {\n case 'left':\n if (after < store.states.fixedLeafColumnsLength.value) {\n fixedLayout = 'left'\n }\n break\n case 'right':\n if (\n start >=\n columns.value.length - store.states.rightFixedLeafColumnsLength.value\n ) {\n fixedLayout = 'right'\n }\n break\n default:\n if (after < store.states.fixedLeafColumnsLength.value) {\n fixedLayout = 'left'\n } else if (\n start >=\n columns.value.length - store.states.rightFixedLeafColumnsLength.value\n ) {\n fixedLayout = 'right'\n }\n }\n return fixedLayout\n ? {\n direction: fixedLayout,\n start,\n after,\n }\n : {}\n}\n\nexport const getFixedColumnsClass = <T>(\n namespace: string,\n index: number,\n fixed: string | boolean,\n store: any,\n realColumns?: TableColumnCtx<T>[]\n) => {\n const classes: string[] = []\n const { direction, start } = isFixedColumn(index, fixed, store, realColumns)\n if (direction) {\n const isLeft = direction === 'left'\n classes.push(`${namespace}-fixed-column--${direction}`)\n if (isLeft && start === store.states.fixedLeafColumnsLength.value - 1) {\n classes.push('is-last-column')\n } else if (\n !isLeft &&\n start ===\n store.states.columns.value.length -\n store.states.rightFixedLeafColumnsLength.value\n ) {\n classes.push('is-first-column')\n }\n }\n return classes\n}\n\nfunction getOffset<T>(offset: number, column: TableColumnCtx<T>) {\n return (\n offset +\n (column.realWidth === null || Number.isNaN(column.realWidth)\n ? Number(column.width)\n : column.realWidth)\n )\n}\n\nexport const getFixedColumnOffset = <T>(\n index: number,\n fixed: string | boolean,\n store: any,\n realColumns?: TableColumnCtx<T>[]\n) => {\n const { direction, start = 0 } = isFixedColumn(\n index,\n fixed,\n store,\n realColumns\n )\n if (!direction) {\n return\n }\n const styles: any = {}\n const isLeft = direction === 'left'\n const columns = store.states.columns.value\n if (isLeft) {\n styles.left = columns.slice(0, index).reduce(getOffset, 0)\n } else {\n styles.right = columns\n .slice(start + 1)\n .reverse()\n .reduce(getOffset, 0)\n }\n return styles\n}\n\nexport const ensurePosition = (style, key: string) => {\n if (!style) return\n if (!Number.isNaN(style[key])) {\n style[key] = `${style[key]}px`\n }\n}\n"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"util.mjs","sources":["../../../../../../packages/components/table/src/util.ts"],"sourcesContent":["// @ts-nocheck\nimport { createPopper } from '@popperjs/core'\nimport { get } from 'lodash-unified'\nimport escapeHtml from 'escape-html'\nimport { hasOwn } from '@element-plus/utils'\nimport { useZIndex } from '@element-plus/hooks'\nimport type {\n IPopperOptions,\n PopperInstance,\n} from '@element-plus/components/popper'\nimport type { Nullable } from '@element-plus/utils'\nimport type { TableColumnCtx } from './table-column/defaults'\n\nexport const getCell = function (event: Event) {\n return (event.target as HTMLElement)?.closest('td')\n}\n\nconst isObject = function (obj: unknown): boolean {\n return obj !== null && typeof obj === 'object'\n}\n\nexport const orderBy = function <T>(\n array: T[],\n sortKey: string,\n reverse: string | number,\n sortMethod,\n sortBy: string | (string | ((a: T, b: T, array?: T[]) => number))[]\n) {\n if (\n !sortKey &&\n !sortMethod &&\n (!sortBy || (Array.isArray(sortBy) && !sortBy.length))\n ) {\n return array\n }\n if (typeof reverse === 'string') {\n reverse = reverse === 'descending' ? -1 : 1\n } else {\n reverse = reverse && reverse < 0 ? -1 : 1\n }\n const getKey = sortMethod\n ? null\n : function (value, index) {\n if (sortBy) {\n if (!Array.isArray(sortBy)) {\n sortBy = [sortBy]\n }\n return sortBy.map((by) => {\n if (typeof by === 'string') {\n return get(value, by)\n } else {\n return by(value, index, array)\n }\n })\n }\n if (sortKey !== '$key') {\n if (isObject(value) && '$value' in value) value = value.$value\n }\n return [isObject(value) ? get(value, sortKey) : value]\n }\n const compare = function (a, b) {\n if (sortMethod) {\n return sortMethod(a.value, b.value)\n }\n for (let i = 0, len = a.key.length; i < len; i++) {\n if (a.key[i] < b.key[i]) {\n return -1\n }\n if (a.key[i] > b.key[i]) {\n return 1\n }\n }\n return 0\n }\n return array\n .map((value, index) => {\n return {\n value,\n index,\n key: getKey ? getKey(value, index) : null,\n }\n })\n .sort((a, b) => {\n let order = compare(a, b)\n if (!order) {\n // make stable https://en.wikipedia.org/wiki/Sorting_algorithm#Stability\n order = a.index - b.index\n }\n return order * +reverse\n })\n .map((item) => item.value)\n}\n\nexport const getColumnById = function <T>(\n table: {\n columns: TableColumnCtx<T>[]\n },\n columnId: string\n): null | TableColumnCtx<T> {\n let column = null\n table.columns.forEach((item) => {\n if (item.id === columnId) {\n column = item\n }\n })\n return column\n}\n\nexport const getColumnByKey = function <T>(\n table: {\n columns: TableColumnCtx<T>[]\n },\n columnKey: string\n): TableColumnCtx<T> {\n let column = null\n for (let i = 0; i < table.columns.length; i++) {\n const item = table.columns[i]\n if (item.columnKey === columnKey) {\n column = item\n break\n }\n }\n return column\n}\n\nexport const getColumnByCell = function <T>(\n table: {\n columns: TableColumnCtx<T>[]\n },\n cell: HTMLElement,\n namespace: string\n): null | TableColumnCtx<T> {\n const matches = (cell.className || '').match(\n new RegExp(`${namespace}-table_[^\\\\s]+`, 'gm')\n )\n if (matches) {\n return getColumnById(table, matches[0])\n }\n return null\n}\n\nexport const getRowIdentity = <T>(\n row: T,\n rowKey: string | ((row: T) => any)\n): string => {\n if (!row) throw new Error('Row is required when get row identity')\n if (typeof rowKey === 'string') {\n if (!rowKey.includes('.')) {\n return `${row[rowKey]}`\n }\n const key = rowKey.split('.')\n let current = row\n for (const element of key) {\n current = current[element]\n }\n return `${current}`\n } else if (typeof rowKey === 'function') {\n return rowKey.call(null, row)\n }\n}\n\nexport const getKeysMap = function <T>(\n array: T[],\n rowKey: string\n): Record<string, { row: T; index: number }> {\n const arrayMap = {}\n ;(array || []).forEach((row, index) => {\n arrayMap[getRowIdentity(row, rowKey)] = { row, index }\n })\n return arrayMap\n}\n\nexport function mergeOptions<T, K>(defaults: T, config: K): T & K {\n const options = {} as T & K\n let key\n for (key in defaults) {\n options[key] = defaults[key]\n }\n for (key in config) {\n if (hasOwn(config as unknown as Record<string, any>, key)) {\n const value = config[key]\n if (typeof value !== 'undefined') {\n options[key] = value\n }\n }\n }\n return options\n}\n\nexport function parseWidth(width: number | string): number | string {\n if (width === '') return width\n if (width !== undefined) {\n width = Number.parseInt(width as string, 10)\n if (Number.isNaN(width)) {\n width = ''\n }\n }\n return width\n}\n\nexport function parseMinWidth(minWidth: number | string): number | string {\n if (minWidth === '') return minWidth\n if (minWidth !== undefined) {\n minWidth = parseWidth(minWidth)\n if (Number.isNaN(minWidth)) {\n minWidth = 80\n }\n }\n return minWidth\n}\n\nexport function parseHeight(height: number | string) {\n if (typeof height === 'number') {\n return height\n }\n if (typeof height === 'string') {\n if (/^\\d+(?:px)?$/.test(height)) {\n return Number.parseInt(height, 10)\n } else {\n return height\n }\n }\n return null\n}\n\n// https://github.com/reduxjs/redux/blob/master/src/compose.js\nexport function compose(...funcs) {\n if (funcs.length === 0) {\n return (arg) => arg\n }\n if (funcs.length === 1) {\n return funcs[0]\n }\n return funcs.reduce(\n (a, b) =>\n (...args) =>\n a(b(...args))\n )\n}\n\nexport function toggleRowStatus<T>(\n statusArr: T[],\n row: T,\n newVal: boolean\n): boolean {\n let changed = false\n const index = statusArr.indexOf(row)\n const included = index !== -1\n\n const addRow = () => {\n statusArr.push(row)\n changed = true\n }\n const removeRow = () => {\n statusArr.splice(index, 1)\n changed = true\n }\n\n if (typeof newVal === 'boolean') {\n if (newVal && !included) {\n addRow()\n } else if (!newVal && included) {\n removeRow()\n }\n } else {\n if (included) {\n removeRow()\n } else {\n addRow()\n }\n }\n return changed\n}\n\nexport function walkTreeNode(\n root,\n cb,\n childrenKey = 'children',\n lazyKey = 'hasChildren'\n) {\n const isNil = (array) => !(Array.isArray(array) && array.length)\n\n function _walker(parent, children, level) {\n cb(parent, children, level)\n children.forEach((item) => {\n if (item[lazyKey]) {\n cb(item, null, level + 1)\n return\n }\n const children = item[childrenKey]\n if (!isNil(children)) {\n _walker(item, children, level + 1)\n }\n })\n }\n\n root.forEach((item) => {\n if (item[lazyKey]) {\n cb(item, null, 0)\n return\n }\n const children = item[childrenKey]\n if (!isNil(children)) {\n _walker(item, children, 0)\n }\n })\n}\n\nexport let removePopper\n\nexport function createTablePopper(\n parentNode: HTMLElement | undefined,\n trigger: HTMLElement,\n popperContent: string,\n popperOptions: Partial<IPopperOptions>,\n tooltipEffect: string\n) {\n const { nextZIndex } = useZIndex()\n const ns = parentNode?.dataset.prefix\n const scrollContainer = parentNode?.querySelector(`.${ns}-scrollbar__wrap`)\n function renderContent(): HTMLDivElement {\n const isLight = tooltipEffect === 'light'\n const content = document.createElement('div')\n content.className = `${ns}-popper ${isLight ? 'is-light' : 'is-dark'}`\n popperContent = escapeHtml(popperContent)\n content.innerHTML = popperContent\n content.style.zIndex = String(nextZIndex())\n // Avoid side effects caused by append to body\n parentNode?.appendChild(content)\n return content\n }\n function renderArrow(): HTMLDivElement {\n const arrow = document.createElement('div')\n arrow.className = `${ns}-popper__arrow`\n return arrow\n }\n function showPopper() {\n popperInstance && popperInstance.update()\n }\n removePopper?.()\n removePopper = () => {\n try {\n popperInstance && popperInstance.destroy()\n content && parentNode?.removeChild(content)\n trigger.removeEventListener('mouseenter', showPopper)\n trigger.removeEventListener('mouseleave', removePopper)\n scrollContainer?.removeEventListener('scroll', removePopper)\n removePopper = undefined\n } catch {}\n }\n let popperInstance: Nullable<PopperInstance> = null\n const content = renderContent()\n const arrow = renderArrow()\n content.appendChild(arrow)\n popperInstance = createPopper(trigger, content, {\n strategy: 'absolute',\n modifiers: [\n {\n name: 'offset',\n options: {\n offset: [0, 8],\n },\n },\n {\n name: 'arrow',\n options: {\n element: arrow,\n padding: 10,\n },\n },\n ],\n ...popperOptions,\n })\n trigger.addEventListener('mouseenter', showPopper)\n trigger.addEventListener('mouseleave', removePopper)\n scrollContainer?.addEventListener('scroll', removePopper)\n return popperInstance\n}\n\nexport const isFixedColumn = <T>(\n index: number,\n fixed: string | boolean,\n store: any,\n realColumns?: TableColumnCtx<T>[]\n) => {\n let start = 0\n let after = index\n if (realColumns) {\n if (realColumns[index].colSpan > 1) {\n // fixed column not supported in grouped header\n return {}\n }\n // handle group\n for (let i = 0; i < index; i++) {\n start += realColumns[i].colSpan\n }\n after = start + realColumns[index].colSpan - 1\n } else {\n start = index\n }\n let fixedLayout\n const columns = store.states.columns\n switch (fixed) {\n case 'left':\n if (after < store.states.fixedLeafColumnsLength.value) {\n fixedLayout = 'left'\n }\n break\n case 'right':\n if (\n start >=\n columns.value.length - store.states.rightFixedLeafColumnsLength.value\n ) {\n fixedLayout = 'right'\n }\n break\n default:\n if (after < store.states.fixedLeafColumnsLength.value) {\n fixedLayout = 'left'\n } else if (\n start >=\n columns.value.length - store.states.rightFixedLeafColumnsLength.value\n ) {\n fixedLayout = 'right'\n }\n }\n return fixedLayout\n ? {\n direction: fixedLayout,\n start,\n after,\n }\n : {}\n}\n\nexport const getFixedColumnsClass = <T>(\n namespace: string,\n index: number,\n fixed: string | boolean,\n store: any,\n realColumns?: TableColumnCtx<T>[]\n) => {\n const classes: string[] = []\n const { direction, start } = isFixedColumn(index, fixed, store, realColumns)\n if (direction) {\n const isLeft = direction === 'left'\n classes.push(`${namespace}-fixed-column--${direction}`)\n if (isLeft && start === store.states.fixedLeafColumnsLength.value - 1) {\n classes.push('is-last-column')\n } else if (\n !isLeft &&\n start ===\n store.states.columns.value.length -\n store.states.rightFixedLeafColumnsLength.value\n ) {\n classes.push('is-first-column')\n }\n }\n return classes\n}\n\nfunction getOffset<T>(offset: number, column: TableColumnCtx<T>) {\n return (\n offset +\n (column.realWidth === null || Number.isNaN(column.realWidth)\n ? Number(column.width)\n : column.realWidth)\n )\n}\n\nexport const getFixedColumnOffset = <T>(\n index: number,\n fixed: string | boolean,\n store: any,\n realColumns?: TableColumnCtx<T>[]\n) => {\n const { direction, start = 0 } = isFixedColumn(\n index,\n fixed,\n store,\n realColumns\n )\n if (!direction) {\n return\n }\n const styles: any = {}\n const isLeft = direction === 'left'\n const columns = store.states.columns.value\n if (isLeft) {\n styles.left = columns.slice(0, index).reduce(getOffset, 0)\n } else {\n styles.right = columns\n .slice(start + 1)\n .reverse()\n .reduce(getOffset, 0)\n }\n return styles\n}\n\nexport const ensurePosition = (style, key: string) => {\n if (!style) return\n if (!Number.isNaN(style[key])) {\n style[key] = `${style[key]}px`\n }\n}\n"],"names":[],"mappings":"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"}
@@ -2,7 +2,6 @@ import { defineComponent, inject, ref, watch, nextTick, computed, unref, provide
2
2
  import { isEqual } from 'lodash-unified';
3
3
  import { onClickOutside } from '@vueuse/core';
4
4
  import '../../../../hooks/index.mjs';
5
- import '../../../../tokens/index.mjs';
6
5
  import { ElInput } from '../../../input/index.mjs';
7
6
  import { ElIcon } from '../../../icon/index.mjs';
8
7
  import { ElTooltip } from '../../../tooltip/index.mjs';
@@ -14,7 +13,7 @@ import { timePickerDefaultProps } from './props.mjs';
14
13
  import _export_sfc from '../../../../_virtual/plugin-vue_export-helper.mjs';
15
14
  import { useLocale } from '../../../../hooks/use-locale/index.mjs';
16
15
  import { useNamespace } from '../../../../hooks/use-namespace/index.mjs';
17
- import { formContextKey, formItemContextKey } from '../../../../tokens/form.mjs';
16
+ import { useFormItem } from '../../../../hooks/use-form-item/index.mjs';
18
17
  import { debugWarn } from '../../../../utils/error.mjs';
19
18
  import { isArray } from '@vue/shared';
20
19
  import { EVENT_CODE } from '../../../../constants/aria.mjs';
@@ -44,8 +43,7 @@ const _sfc_main = /* @__PURE__ */ defineComponent({
44
43
  const nsDate = useNamespace("date");
45
44
  const nsInput = useNamespace("input");
46
45
  const nsRange = useNamespace("range");
47
- const elForm = inject(formContextKey, {});
48
- const elFormItem = inject(formItemContextKey, {});
46
+ const { form, formItem } = useFormItem();
49
47
  const elPopperOptions = inject("ElPopperOptions", {});
50
48
  const refPopper = ref();
51
49
  const inputRef = ref();
@@ -65,10 +63,9 @@ const _sfc_main = /* @__PURE__ */ defineComponent({
65
63
  }
66
64
  });
67
65
  const emitChange = (val, isClear) => {
68
- var _a;
69
66
  if (isClear || !valueEquals(val, valueOnOpen.value)) {
70
67
  emit("change", val);
71
- props.validateEvent && ((_a = elFormItem.validate) == null ? void 0 : _a.call(elFormItem, "change").catch((err) => debugWarn(err)));
68
+ props.validateEvent && (formItem == null ? void 0 : formItem.validate("change").catch((err) => debugWarn(err)));
72
69
  }
73
70
  };
74
71
  const emitInput = (input) => {
@@ -162,7 +159,7 @@ const _sfc_main = /* @__PURE__ */ defineComponent({
162
159
  const handleBlurInput = (e) => {
163
160
  const handleBlurDefer = async () => {
164
161
  setTimeout(() => {
165
- var _a, _b;
162
+ var _a;
166
163
  if (currentHandleBlurDeferCallback === handleBlurDefer) {
167
164
  if (!(((_a = refPopper.value) == null ? void 0 : _a.isFocusInsideContent()) && !hasJustTabExitedInput) && refInput.value.filter((input) => {
168
165
  return input.contains(document.activeElement);
@@ -170,7 +167,7 @@ const _sfc_main = /* @__PURE__ */ defineComponent({
170
167
  handleChange();
171
168
  pickerVisible.value = false;
172
169
  emit("blur", e);
173
- props.validateEvent && ((_b = elFormItem.validate) == null ? void 0 : _b.call(elFormItem, "blur").catch((err) => debugWarn(err)));
170
+ props.validateEvent && (formItem == null ? void 0 : formItem.validate("blur").catch((err) => debugWarn(err)));
174
171
  }
175
172
  hasJustTabExitedInput = false;
176
173
  }
@@ -180,7 +177,7 @@ const _sfc_main = /* @__PURE__ */ defineComponent({
180
177
  handleBlurDefer();
181
178
  };
182
179
  const pickerDisabled = computed(() => {
183
- return props.disabled || elForm.disabled;
180
+ return props.disabled || (form == null ? void 0 : form.disabled);
184
181
  });
185
182
  const parsedValue = computed(() => {
186
183
  let dayOrDays;
@@ -1 +1 @@
1
- {"version":3,"file":"picker.mjs","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-options=\"elPopperOptions\"\n :fallback-placements=\"['bottom', 'top', 'right', 'left']\"\n :gpu-acceleration=\"false\"\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=\"(id as string | undefined)\"\n ref=\"inputRef\"\n container-role=\"combobox\"\n :model-value=\"(displayValue as string)\"\n :name=\"name\"\n :size=\"pickerSize\"\n :disabled=\"pickerDisabled\"\n :placeholder=\"placeholder\"\n :class=\"[nsDate.b('editor'), nsDate.bm('editor', type), $attrs.class]\"\n :style=\"$attrs.style\"\n :readonly=\"!editable || readonly || isDatesPicker || type === 'week'\"\n :label=\"label\"\n :tabindex=\"tabindex\"\n :validate-event=\"validateEvent\"\n @input=\"onUserInput\"\n @focus=\"handleFocusInput\"\n @blur=\"handleBlurInput\"\n @keydown=\"\n //\n handleKeydownInput as any\n \"\n @change=\"handleChange\"\n @mousedown=\"onMouseDownInput\"\n @mouseenter=\"onMouseEnter\"\n @mouseleave=\"onMouseLeave\"\n @touchstart=\"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=\"onTouchStartInput\"\n >\n <component :is=\"triggerIcon\" />\n </el-icon>\n </template>\n <template #suffix>\n <el-icon\n v-if=\"showClose && clearIcon\"\n :class=\"`${nsInput.e('icon')} clear-icon`\"\n @click.stop=\"onClearIconClick\"\n >\n <component :is=\"clearIcon\" />\n </el-icon>\n </template>\n </el-input>\n <div\n v-else\n ref=\"inputRef\"\n :class=\"[\n nsDate.b('editor'),\n nsDate.bm('editor', type),\n nsInput.e('wrapper'),\n nsDate.is('disabled', pickerDisabled),\n nsDate.is('active', pickerVisible),\n nsRange.b('editor'),\n pickerSize ? nsRange.bm('editor', pickerSize) : '',\n $attrs.class,\n ]\"\n :style=\"($attrs.style as any)\"\n @click=\"handleFocusInput\"\n @mouseenter=\"onMouseEnter\"\n @mouseleave=\"onMouseLeave\"\n @touchstart=\"onTouchStartInput\"\n @keydown=\"handleKeydownInput\"\n >\n <el-icon\n v-if=\"triggerIcon\"\n :class=\"[nsInput.e('icon'), nsRange.e('icon')]\"\n @mousedown.prevent=\"onMouseDownInput\"\n @touchstart=\"onTouchStartInput\"\n >\n <component :is=\"triggerIcon\" />\n </el-icon>\n <input\n :id=\"id && id[0]\"\n autocomplete=\"off\"\n :name=\"name && name[0]\"\n :placeholder=\"startPlaceholder\"\n :value=\"displayValue && displayValue[0]\"\n :disabled=\"pickerDisabled\"\n :readonly=\"!editable || readonly\"\n :class=\"nsRange.b('input')\"\n @mousedown=\"onMouseDownInput\"\n @input=\"handleStartInput\"\n @change=\"handleStartChange\"\n @focus=\"handleFocusInput\"\n @blur=\"handleBlurInput\"\n />\n <slot name=\"range-separator\">\n <span :class=\"nsRange.b('separator')\">{{ rangeSeparator }}</span>\n </slot>\n <input\n :id=\"id && id[1]\"\n autocomplete=\"off\"\n :name=\"name && name[1]\"\n :placeholder=\"endPlaceholder\"\n :value=\"displayValue && displayValue[1]\"\n :disabled=\"pickerDisabled\"\n :readonly=\"!editable || readonly\"\n :class=\"nsRange.b('input')\"\n @mousedown=\"onMouseDownInput\"\n @focus=\"handleFocusInput\"\n @blur=\"handleBlurInput\"\n @input=\"handleEndInput\"\n @change=\"handleEndChange\"\n />\n <el-icon\n v-if=\"clearIcon\"\n :class=\"[\n nsInput.e('icon'),\n nsRange.e('close-icon'),\n {\n [nsRange.e('close-icon--hidden')]: !showClose,\n },\n ]\"\n @click=\"onClearIconClick\"\n >\n <component :is=\"clearIcon\" />\n </el-icon>\n </div>\n </template>\n <template #content>\n <slot\n :visible=\"pickerVisible\"\n :actual-visible=\"pickerActualVisible\"\n :parsed-value=\"parsedValue\"\n :format=\"format\"\n :unlink-panels=\"unlinkPanels\"\n :type=\"type\"\n :default-value=\"defaultValue\"\n @pick=\"onPick\"\n @select-range=\"setSelectionRange\"\n @set-picker-option=\"onSetPickerOption\"\n @calendar-change=\"onCalendarChange\"\n @panel-change=\"onPanelChange\"\n @keydown=\"onKeydownPopperContent\"\n @mousedown.stop\n />\n </template>\n </el-tooltip>\n</template>\n<script lang=\"ts\" setup>\nimport { computed, inject, nextTick, provide, ref, unref, watch } from 'vue'\nimport { isEqual } from 'lodash-unified'\nimport { onClickOutside } from '@vueuse/core'\nimport { useLocale, useNamespace, useSize } from '@element-plus/hooks'\nimport { formContextKey, formItemContextKey } from '@element-plus/tokens'\nimport ElInput from '@element-plus/components/input'\nimport ElIcon from '@element-plus/components/icon'\nimport ElTooltip from '@element-plus/components/tooltip'\nimport { debugWarn, isArray } from '@element-plus/utils'\nimport { EVENT_CODE } from '@element-plus/constants'\nimport { Calendar, Clock } from '@element-plus/icons-vue'\nimport { formatter, parseDate, valueEquals } from '../utils'\nimport { timePickerDefaultProps } from './props'\n\nimport type { Dayjs } from 'dayjs'\nimport type { ComponentPublicInstance } from 'vue'\nimport type { Options } from '@popperjs/core'\nimport type { FormContext, FormItemContext } from '@element-plus/tokens'\nimport type {\n DateModelType,\n DateOrDates,\n DayOrDays,\n PickerOptions,\n SingleOrRange,\n TimePickerDefaultProps,\n UserInput,\n} from './props'\nimport type { TooltipInstance } from '@element-plus/components/tooltip'\n\n// Date object and string\n\ndefineOptions({\n name: 'Picker',\n})\n\nconst props = defineProps(timePickerDefaultProps)\nconst emit = defineEmits([\n 'update:modelValue',\n 'change',\n 'focus',\n 'blur',\n 'calendar-change',\n 'panel-change',\n 'visible-change',\n 'keydown',\n])\n\nconst { lang } = useLocale()\n\nconst nsDate = useNamespace('date')\nconst nsInput = useNamespace('input')\nconst nsRange = useNamespace('range')\n\nconst elForm = inject(formContextKey, {} as FormContext)\nconst elFormItem = inject(formItemContextKey, {} as FormItemContext)\nconst elPopperOptions = inject('ElPopperOptions', {} as Options)\n\nconst refPopper = ref<TooltipInstance>()\nconst inputRef = ref<HTMLElement | ComponentPublicInstance>()\nconst pickerVisible = ref(false)\nconst pickerActualVisible = ref(false)\nconst valueOnOpen = ref<TimePickerDefaultProps['modelValue'] | null>(null)\n\nlet hasJustTabExitedInput = false\nlet ignoreFocusEvent = false\n\nwatch(pickerVisible, (val) => {\n if (!val) {\n userInput.value = null\n nextTick(() => {\n emitChange(props.modelValue)\n })\n } else {\n valueOnOpen.value = props.modelValue\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', val)\n props.validateEvent &&\n elFormItem.validate?.('change').catch((err) => debugWarn(err))\n }\n}\nconst emitInput = (input: SingleOrRange<DateModelType | Dayjs> | null) => {\n if (!valueEquals(props.modelValue, input)) {\n let formatted\n if (isArray(input)) {\n formatted = input.map((item) =>\n formatter(item, props.valueFormat, lang.value)\n )\n } else if (input) {\n formatted = formatter(input, props.valueFormat, lang.value)\n }\n emit('update:modelValue', input ? formatted : input, lang.value)\n }\n}\nconst emitKeydown = (e: KeyboardEvent) => {\n emit('keydown', e)\n}\n\nconst refInput = computed<HTMLInputElement[]>(() => {\n if (inputRef.value) {\n const _r = isRangeInput.value\n ? inputRef.value\n : (inputRef.value as any as ComponentPublicInstance).$el\n return Array.from<HTMLInputElement>(_r.querySelectorAll('input'))\n }\n return []\n})\n\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}\nconst focusOnInputBox = () => {\n focus(true, true)\n nextTick(() => {\n ignoreFocusEvent = false\n })\n}\n\nconst onPick = (date: any = '', visible = false) => {\n if (!visible) {\n focusOnInputBox()\n }\n pickerVisible.value = visible\n let result\n if (isArray(date)) {\n result = date.map((_) => _.toDate())\n } else {\n // clear btn emit null\n result = date ? date.toDate() : date\n }\n userInput.value = null\n emitInput(result)\n}\n\nconst onBeforeShow = () => {\n pickerActualVisible.value = true\n}\n\nconst onShow = () => {\n emit('visible-change', true)\n}\n\nconst onKeydownPopperContent = (event: KeyboardEvent) => {\n if ((event as KeyboardEvent)?.key === EVENT_CODE.esc) {\n focus(true, true)\n }\n}\n\nconst onHide = () => {\n pickerActualVisible.value = false\n ignoreFocusEvent = false\n emit('visible-change', false)\n}\n\nconst focus = (focusStartInput = true, isIgnoreFocusEvent = false) => {\n ignoreFocusEvent = isIgnoreFocusEvent\n const [leftInput, rightInput] = unref(refInput)\n let input = leftInput\n if (!focusStartInput && isRangeInput.value) {\n input = rightInput\n }\n if (input) {\n input.focus()\n }\n}\n\nconst handleFocusInput = (e?: FocusEvent) => {\n if (\n props.readonly ||\n pickerDisabled.value ||\n pickerVisible.value ||\n ignoreFocusEvent\n ) {\n return\n }\n pickerVisible.value = true\n emit('focus', e)\n}\n\nlet currentHandleBlurDeferCallback:\n | (() => Promise<void> | undefined)\n | undefined = undefined\n\n// Check if document.activeElement is inside popper or any input before popper close\nconst handleBlurInput = (e?: FocusEvent) => {\n const handleBlurDefer = async () => {\n setTimeout(() => {\n if (currentHandleBlurDeferCallback === handleBlurDefer) {\n if (\n !(\n refPopper.value?.isFocusInsideContent() && !hasJustTabExitedInput\n ) &&\n refInput.value.filter((input) => {\n return input.contains(document.activeElement)\n }).length === 0\n ) {\n handleChange()\n pickerVisible.value = false\n emit('blur', e)\n props.validateEvent &&\n elFormItem.validate?.('blur').catch((err) => debugWarn(err))\n }\n hasJustTabExitedInput = false\n }\n }, 0)\n }\n currentHandleBlurDeferCallback = handleBlurDefer\n handleBlurDefer()\n}\n\nconst pickerDisabled = computed(() => {\n return props.disabled || elForm.disabled\n})\n\nconst parsedValue = computed(() => {\n let dayOrDays: DayOrDays\n if (valueIsEmpty.value) {\n if (pickerOptions.value.getDefaultValue) {\n dayOrDays = pickerOptions.value.getDefaultValue()\n }\n } else {\n if (isArray(props.modelValue)) {\n dayOrDays = props.modelValue.map((d) =>\n parseDate(d, props.valueFormat, lang.value)\n ) as [Dayjs, Dayjs]\n } else {\n dayOrDays = parseDate(props.modelValue, props.valueFormat, lang.value)!\n }\n }\n\n if (pickerOptions.value.getRangeAvailableTime) {\n const availableResult = pickerOptions.value.getRangeAvailableTime(\n dayOrDays!\n )\n if (!isEqual(availableResult, dayOrDays!)) {\n dayOrDays = availableResult\n emitInput(\n (isArray(dayOrDays)\n ? dayOrDays.map((_) => _.toDate())\n : dayOrDays.toDate()) as SingleOrRange<Date>\n )\n }\n }\n if (isArray(dayOrDays!) && dayOrDays.some((day) => !day)) {\n dayOrDays = [] as unknown as DayOrDays\n }\n return dayOrDays!\n})\n\nconst displayValue = computed<UserInput>(() => {\n if (!pickerOptions.value.panelReady) return ''\n const formattedValue = formatDayjsToString(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) return ''\n if (!pickerVisible.value && valueIsEmpty.value) return ''\n if (formattedValue) {\n return isDatesPicker.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 triggerIcon = computed(\n () => props.prefixIcon || (isTimeLikePicker.value ? Clock : Calendar)\n)\n\nconst showClose = ref(false)\n\nconst onClearIconClick = (event: MouseEvent) => {\n if (props.readonly || pickerDisabled.value) return\n if (showClose.value) {\n event.stopPropagation()\n focusOnInputBox()\n emitInput(null)\n emitChange(null, true)\n showClose.value = false\n pickerVisible.value = false\n pickerOptions.value.handleClear && pickerOptions.value.handleClear()\n }\n}\n\nconst valueIsEmpty = computed(() => {\n const { modelValue } = props\n return (\n !modelValue || (isArray(modelValue) && !modelValue.filter(Boolean).length)\n )\n})\n\nconst onMouseDownInput = async (event: MouseEvent) => {\n if (props.readonly || pickerDisabled.value) return\n if (\n (event.target as HTMLElement)?.tagName !== 'INPUT' ||\n refInput.value.includes(document.activeElement as HTMLInputElement)\n ) {\n pickerVisible.value = true\n }\n}\nconst onMouseEnter = () => {\n if (props.readonly || pickerDisabled.value) return\n if (!valueIsEmpty.value && props.clearable) {\n showClose.value = true\n }\n}\nconst onMouseLeave = () => {\n showClose.value = false\n}\nconst onTouchStartInput = (event: TouchEvent) => {\n if (\n (event.touches[0].target as HTMLElement)?.tagName !== 'INPUT' ||\n refInput.value.includes(document.activeElement as HTMLInputElement)\n ) {\n pickerVisible.value = true\n }\n}\nconst isRangeInput = computed(() => {\n return props.type.includes('range')\n})\n\nconst pickerSize = useSize()\n\nconst popperEl = computed(() => unref(refPopper)?.popperRef?.contentRef)\nconst actualInputRef = computed(() => {\n if (unref(isRangeInput)) {\n return unref(inputRef)\n }\n\n return (unref(inputRef) as ComponentPublicInstance)?.$el\n})\n\nonClickOutside(actualInputRef, (e: PointerEvent) => {\n const unrefedPopperEl = unref(popperEl)\n const inputEl = unref(actualInputRef)\n if (\n (unrefedPopperEl &&\n (e.target === unrefedPopperEl ||\n e.composedPath().includes(unrefedPopperEl))) ||\n e.target === inputEl ||\n e.composedPath().includes(inputEl)\n )\n return\n pickerVisible.value = false\n})\n\nconst userInput = ref<UserInput>(null)\n\nconst handleChange = () => {\n if (userInput.value) {\n const value = parseUserInputToDayjs(displayValue.value)\n if (value) {\n if (isValidValue(value)) {\n emitInput(\n (isArray(value)\n ? value.map((_) => _.toDate())\n : value.toDate()) as DateOrDates\n )\n userInput.value = null\n }\n }\n }\n if (userInput.value === '') {\n emitInput(null)\n emitChange(null)\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 formatDayjsToString = (value: DayOrDays) => {\n if (!value) return null\n return pickerOptions.value.formatToString!(value)\n}\n\nconst isValidValue = (value: DayOrDays) => {\n return pickerOptions.value.isValidValue!(value)\n}\n\nconst handleKeydownInput = async (event: KeyboardEvent) => {\n if (props.readonly || pickerDisabled.value) return\n\n const { code } = event\n emitKeydown(event)\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 (\n userInput.value === null ||\n userInput.value === '' ||\n isValidValue(parseUserInputToDayjs(displayValue.value) as DayOrDays)\n ) {\n handleChange()\n pickerVisible.value = false\n }\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)\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 formatDayjsToString(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(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 formatDayjsToString(value) as string,\n ]\n const newValue = [parsedVal && parsedVal[0], value] as DayOrDays\n if (isValidValue(newValue)) {\n emitInput(newValue)\n userInput.value = null\n }\n }\n}\n\nconst pickerOptions = ref<Partial<PickerOptions>>({})\nconst onSetPickerOption = <T extends keyof PickerOptions>(\n e: [T, PickerOptions[T]]\n) => {\n pickerOptions.value[e[0]] = e[1]\n pickerOptions.value.panelReady = true\n}\n\nconst onCalendarChange = (e: [Date, false | Date]) => {\n emit('calendar-change', e)\n}\n\nconst onPanelChange = (\n value: [Dayjs, Dayjs],\n mode: 'month' | 'year',\n view: unknown\n) => {\n emit('panel-change', value, mode, view)\n}\n\nprovide('EP_PICKER_BASE', {\n props,\n})\n\ndefineExpose({\n /**\n * @description focus input box.\n */\n focus,\n /**\n * @description emit focus event\n */\n handleFocusInput,\n /**\n * @description emit blur event\n */\n handleBlurInput,\n /**\n * @description pick item manually\n */\n onPick,\n})\n</script>\n"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"picker.mjs","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-options=\"elPopperOptions\"\n :fallback-placements=\"['bottom', 'top', 'right', 'left']\"\n :gpu-acceleration=\"false\"\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=\"(id as string | undefined)\"\n ref=\"inputRef\"\n container-role=\"combobox\"\n :model-value=\"(displayValue as string)\"\n :name=\"name\"\n :size=\"pickerSize\"\n :disabled=\"pickerDisabled\"\n :placeholder=\"placeholder\"\n :class=\"[nsDate.b('editor'), nsDate.bm('editor', type), $attrs.class]\"\n :style=\"$attrs.style\"\n :readonly=\"!editable || readonly || isDatesPicker || type === 'week'\"\n :label=\"label\"\n :tabindex=\"tabindex\"\n :validate-event=\"validateEvent\"\n @input=\"onUserInput\"\n @focus=\"handleFocusInput\"\n @blur=\"handleBlurInput\"\n @keydown=\"\n //\n handleKeydownInput as any\n \"\n @change=\"handleChange\"\n @mousedown=\"onMouseDownInput\"\n @mouseenter=\"onMouseEnter\"\n @mouseleave=\"onMouseLeave\"\n @touchstart=\"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=\"onTouchStartInput\"\n >\n <component :is=\"triggerIcon\" />\n </el-icon>\n </template>\n <template #suffix>\n <el-icon\n v-if=\"showClose && clearIcon\"\n :class=\"`${nsInput.e('icon')} clear-icon`\"\n @click.stop=\"onClearIconClick\"\n >\n <component :is=\"clearIcon\" />\n </el-icon>\n </template>\n </el-input>\n <div\n v-else\n ref=\"inputRef\"\n :class=\"[\n nsDate.b('editor'),\n nsDate.bm('editor', type),\n nsInput.e('wrapper'),\n nsDate.is('disabled', pickerDisabled),\n nsDate.is('active', pickerVisible),\n nsRange.b('editor'),\n pickerSize ? nsRange.bm('editor', pickerSize) : '',\n $attrs.class,\n ]\"\n :style=\"($attrs.style as any)\"\n @click=\"handleFocusInput\"\n @mouseenter=\"onMouseEnter\"\n @mouseleave=\"onMouseLeave\"\n @touchstart=\"onTouchStartInput\"\n @keydown=\"handleKeydownInput\"\n >\n <el-icon\n v-if=\"triggerIcon\"\n :class=\"[nsInput.e('icon'), nsRange.e('icon')]\"\n @mousedown.prevent=\"onMouseDownInput\"\n @touchstart=\"onTouchStartInput\"\n >\n <component :is=\"triggerIcon\" />\n </el-icon>\n <input\n :id=\"id && id[0]\"\n autocomplete=\"off\"\n :name=\"name && name[0]\"\n :placeholder=\"startPlaceholder\"\n :value=\"displayValue && displayValue[0]\"\n :disabled=\"pickerDisabled\"\n :readonly=\"!editable || readonly\"\n :class=\"nsRange.b('input')\"\n @mousedown=\"onMouseDownInput\"\n @input=\"handleStartInput\"\n @change=\"handleStartChange\"\n @focus=\"handleFocusInput\"\n @blur=\"handleBlurInput\"\n />\n <slot name=\"range-separator\">\n <span :class=\"nsRange.b('separator')\">{{ rangeSeparator }}</span>\n </slot>\n <input\n :id=\"id && id[1]\"\n autocomplete=\"off\"\n :name=\"name && name[1]\"\n :placeholder=\"endPlaceholder\"\n :value=\"displayValue && displayValue[1]\"\n :disabled=\"pickerDisabled\"\n :readonly=\"!editable || readonly\"\n :class=\"nsRange.b('input')\"\n @mousedown=\"onMouseDownInput\"\n @focus=\"handleFocusInput\"\n @blur=\"handleBlurInput\"\n @input=\"handleEndInput\"\n @change=\"handleEndChange\"\n />\n <el-icon\n v-if=\"clearIcon\"\n :class=\"[\n nsInput.e('icon'),\n nsRange.e('close-icon'),\n {\n [nsRange.e('close-icon--hidden')]: !showClose,\n },\n ]\"\n @click=\"onClearIconClick\"\n >\n <component :is=\"clearIcon\" />\n </el-icon>\n </div>\n </template>\n <template #content>\n <slot\n :visible=\"pickerVisible\"\n :actual-visible=\"pickerActualVisible\"\n :parsed-value=\"parsedValue\"\n :format=\"format\"\n :unlink-panels=\"unlinkPanels\"\n :type=\"type\"\n :default-value=\"defaultValue\"\n @pick=\"onPick\"\n @select-range=\"setSelectionRange\"\n @set-picker-option=\"onSetPickerOption\"\n @calendar-change=\"onCalendarChange\"\n @panel-change=\"onPanelChange\"\n @keydown=\"onKeydownPopperContent\"\n @mousedown.stop\n />\n </template>\n </el-tooltip>\n</template>\n<script lang=\"ts\" setup>\nimport { computed, inject, nextTick, provide, ref, unref, watch } from 'vue'\nimport { isEqual } from 'lodash-unified'\nimport { onClickOutside } from '@vueuse/core'\nimport {\n useFormItem,\n useLocale,\n useNamespace,\n useSize,\n} from '@element-plus/hooks'\nimport ElInput from '@element-plus/components/input'\nimport ElIcon from '@element-plus/components/icon'\nimport ElTooltip from '@element-plus/components/tooltip'\nimport { debugWarn, isArray } from '@element-plus/utils'\nimport { EVENT_CODE } from '@element-plus/constants'\nimport { Calendar, Clock } from '@element-plus/icons-vue'\nimport { formatter, parseDate, valueEquals } from '../utils'\nimport { timePickerDefaultProps } from './props'\n\nimport type { Dayjs } from 'dayjs'\nimport type { ComponentPublicInstance } from 'vue'\nimport type { Options } from '@popperjs/core'\nimport type {\n DateModelType,\n DateOrDates,\n DayOrDays,\n PickerOptions,\n SingleOrRange,\n TimePickerDefaultProps,\n UserInput,\n} from './props'\nimport type { TooltipInstance } from '@element-plus/components/tooltip'\n\n// Date object and string\n\ndefineOptions({\n name: 'Picker',\n})\n\nconst props = defineProps(timePickerDefaultProps)\nconst emit = defineEmits([\n 'update:modelValue',\n 'change',\n 'focus',\n 'blur',\n 'calendar-change',\n 'panel-change',\n 'visible-change',\n 'keydown',\n])\n\nconst { lang } = useLocale()\n\nconst nsDate = useNamespace('date')\nconst nsInput = useNamespace('input')\nconst nsRange = useNamespace('range')\n\nconst { form, formItem } = useFormItem()\nconst elPopperOptions = inject('ElPopperOptions', {} as Options)\n\nconst refPopper = ref<TooltipInstance>()\nconst inputRef = ref<HTMLElement | ComponentPublicInstance>()\nconst pickerVisible = ref(false)\nconst pickerActualVisible = ref(false)\nconst valueOnOpen = ref<TimePickerDefaultProps['modelValue'] | null>(null)\n\nlet hasJustTabExitedInput = false\nlet ignoreFocusEvent = false\n\nwatch(pickerVisible, (val) => {\n if (!val) {\n userInput.value = null\n nextTick(() => {\n emitChange(props.modelValue)\n })\n } else {\n valueOnOpen.value = props.modelValue\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', val)\n props.validateEvent &&\n formItem?.validate('change').catch((err) => debugWarn(err))\n }\n}\nconst emitInput = (input: SingleOrRange<DateModelType | Dayjs> | null) => {\n if (!valueEquals(props.modelValue, input)) {\n let formatted\n if (isArray(input)) {\n formatted = input.map((item) =>\n formatter(item, props.valueFormat, lang.value)\n )\n } else if (input) {\n formatted = formatter(input, props.valueFormat, lang.value)\n }\n emit('update:modelValue', input ? formatted : input, lang.value)\n }\n}\nconst emitKeydown = (e: KeyboardEvent) => {\n emit('keydown', e)\n}\n\nconst refInput = computed<HTMLInputElement[]>(() => {\n if (inputRef.value) {\n const _r = isRangeInput.value\n ? inputRef.value\n : (inputRef.value as any as ComponentPublicInstance).$el\n return Array.from<HTMLInputElement>(_r.querySelectorAll('input'))\n }\n return []\n})\n\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}\nconst focusOnInputBox = () => {\n focus(true, true)\n nextTick(() => {\n ignoreFocusEvent = false\n })\n}\n\nconst onPick = (date: any = '', visible = false) => {\n if (!visible) {\n focusOnInputBox()\n }\n pickerVisible.value = visible\n let result\n if (isArray(date)) {\n result = date.map((_) => _.toDate())\n } else {\n // clear btn emit null\n result = date ? date.toDate() : date\n }\n userInput.value = null\n emitInput(result)\n}\n\nconst onBeforeShow = () => {\n pickerActualVisible.value = true\n}\n\nconst onShow = () => {\n emit('visible-change', true)\n}\n\nconst onKeydownPopperContent = (event: KeyboardEvent) => {\n if ((event as KeyboardEvent)?.key === EVENT_CODE.esc) {\n focus(true, true)\n }\n}\n\nconst onHide = () => {\n pickerActualVisible.value = false\n ignoreFocusEvent = false\n emit('visible-change', false)\n}\n\nconst focus = (focusStartInput = true, isIgnoreFocusEvent = false) => {\n ignoreFocusEvent = isIgnoreFocusEvent\n const [leftInput, rightInput] = unref(refInput)\n let input = leftInput\n if (!focusStartInput && isRangeInput.value) {\n input = rightInput\n }\n if (input) {\n input.focus()\n }\n}\n\nconst handleFocusInput = (e?: FocusEvent) => {\n if (\n props.readonly ||\n pickerDisabled.value ||\n pickerVisible.value ||\n ignoreFocusEvent\n ) {\n return\n }\n pickerVisible.value = true\n emit('focus', e)\n}\n\nlet currentHandleBlurDeferCallback:\n | (() => Promise<void> | undefined)\n | undefined = undefined\n\n// Check if document.activeElement is inside popper or any input before popper close\nconst handleBlurInput = (e?: FocusEvent) => {\n const handleBlurDefer = async () => {\n setTimeout(() => {\n if (currentHandleBlurDeferCallback === handleBlurDefer) {\n if (\n !(\n refPopper.value?.isFocusInsideContent() && !hasJustTabExitedInput\n ) &&\n refInput.value.filter((input) => {\n return input.contains(document.activeElement)\n }).length === 0\n ) {\n handleChange()\n pickerVisible.value = false\n emit('blur', e)\n props.validateEvent &&\n formItem?.validate('blur').catch((err) => debugWarn(err))\n }\n hasJustTabExitedInput = false\n }\n }, 0)\n }\n currentHandleBlurDeferCallback = handleBlurDefer\n handleBlurDefer()\n}\n\nconst pickerDisabled = computed(() => {\n return props.disabled || form?.disabled\n})\n\nconst parsedValue = computed(() => {\n let dayOrDays: DayOrDays\n if (valueIsEmpty.value) {\n if (pickerOptions.value.getDefaultValue) {\n dayOrDays = pickerOptions.value.getDefaultValue()\n }\n } else {\n if (isArray(props.modelValue)) {\n dayOrDays = props.modelValue.map((d) =>\n parseDate(d, props.valueFormat, lang.value)\n ) as [Dayjs, Dayjs]\n } else {\n dayOrDays = parseDate(props.modelValue, props.valueFormat, lang.value)!\n }\n }\n\n if (pickerOptions.value.getRangeAvailableTime) {\n const availableResult = pickerOptions.value.getRangeAvailableTime(\n dayOrDays!\n )\n if (!isEqual(availableResult, dayOrDays!)) {\n dayOrDays = availableResult\n emitInput(\n (isArray(dayOrDays)\n ? dayOrDays.map((_) => _.toDate())\n : dayOrDays.toDate()) as SingleOrRange<Date>\n )\n }\n }\n if (isArray(dayOrDays!) && dayOrDays.some((day) => !day)) {\n dayOrDays = [] as unknown as DayOrDays\n }\n return dayOrDays!\n})\n\nconst displayValue = computed<UserInput>(() => {\n if (!pickerOptions.value.panelReady) return ''\n const formattedValue = formatDayjsToString(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) return ''\n if (!pickerVisible.value && valueIsEmpty.value) return ''\n if (formattedValue) {\n return isDatesPicker.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 triggerIcon = computed(\n () => props.prefixIcon || (isTimeLikePicker.value ? Clock : Calendar)\n)\n\nconst showClose = ref(false)\n\nconst onClearIconClick = (event: MouseEvent) => {\n if (props.readonly || pickerDisabled.value) return\n if (showClose.value) {\n event.stopPropagation()\n focusOnInputBox()\n emitInput(null)\n emitChange(null, true)\n showClose.value = false\n pickerVisible.value = false\n pickerOptions.value.handleClear && pickerOptions.value.handleClear()\n }\n}\n\nconst valueIsEmpty = computed(() => {\n const { modelValue } = props\n return (\n !modelValue || (isArray(modelValue) && !modelValue.filter(Boolean).length)\n )\n})\n\nconst onMouseDownInput = async (event: MouseEvent) => {\n if (props.readonly || pickerDisabled.value) return\n if (\n (event.target as HTMLElement)?.tagName !== 'INPUT' ||\n refInput.value.includes(document.activeElement as HTMLInputElement)\n ) {\n pickerVisible.value = true\n }\n}\nconst onMouseEnter = () => {\n if (props.readonly || pickerDisabled.value) return\n if (!valueIsEmpty.value && props.clearable) {\n showClose.value = true\n }\n}\nconst onMouseLeave = () => {\n showClose.value = false\n}\nconst onTouchStartInput = (event: TouchEvent) => {\n if (\n (event.touches[0].target as HTMLElement)?.tagName !== 'INPUT' ||\n refInput.value.includes(document.activeElement as HTMLInputElement)\n ) {\n pickerVisible.value = true\n }\n}\nconst isRangeInput = computed(() => {\n return props.type.includes('range')\n})\n\nconst pickerSize = useSize()\n\nconst popperEl = computed(() => unref(refPopper)?.popperRef?.contentRef)\nconst actualInputRef = computed(() => {\n if (unref(isRangeInput)) {\n return unref(inputRef)\n }\n\n return (unref(inputRef) as ComponentPublicInstance)?.$el\n})\n\nonClickOutside(actualInputRef, (e: PointerEvent) => {\n const unrefedPopperEl = unref(popperEl)\n const inputEl = unref(actualInputRef)\n if (\n (unrefedPopperEl &&\n (e.target === unrefedPopperEl ||\n e.composedPath().includes(unrefedPopperEl))) ||\n e.target === inputEl ||\n e.composedPath().includes(inputEl)\n )\n return\n pickerVisible.value = false\n})\n\nconst userInput = ref<UserInput>(null)\n\nconst handleChange = () => {\n if (userInput.value) {\n const value = parseUserInputToDayjs(displayValue.value)\n if (value) {\n if (isValidValue(value)) {\n emitInput(\n (isArray(value)\n ? value.map((_) => _.toDate())\n : value.toDate()) as DateOrDates\n )\n userInput.value = null\n }\n }\n }\n if (userInput.value === '') {\n emitInput(null)\n emitChange(null)\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 formatDayjsToString = (value: DayOrDays) => {\n if (!value) return null\n return pickerOptions.value.formatToString!(value)\n}\n\nconst isValidValue = (value: DayOrDays) => {\n return pickerOptions.value.isValidValue!(value)\n}\n\nconst handleKeydownInput = async (event: KeyboardEvent) => {\n if (props.readonly || pickerDisabled.value) return\n\n const { code } = event\n emitKeydown(event)\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 (\n userInput.value === null ||\n userInput.value === '' ||\n isValidValue(parseUserInputToDayjs(displayValue.value) as DayOrDays)\n ) {\n handleChange()\n pickerVisible.value = false\n }\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)\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 formatDayjsToString(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(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 formatDayjsToString(value) as string,\n ]\n const newValue = [parsedVal && parsedVal[0], value] as DayOrDays\n if (isValidValue(newValue)) {\n emitInput(newValue)\n userInput.value = null\n }\n }\n}\n\nconst pickerOptions = ref<Partial<PickerOptions>>({})\nconst onSetPickerOption = <T extends keyof PickerOptions>(\n e: [T, PickerOptions[T]]\n) => {\n pickerOptions.value[e[0]] = e[1]\n pickerOptions.value.panelReady = true\n}\n\nconst onCalendarChange = (e: [Date, false | Date]) => {\n emit('calendar-change', e)\n}\n\nconst onPanelChange = (\n value: [Dayjs, Dayjs],\n mode: 'month' | 'year',\n view: unknown\n) => {\n emit('panel-change', value, mode, view)\n}\n\nprovide('EP_PICKER_BASE', {\n props,\n})\n\ndefineExpose({\n /**\n * @description focus input box.\n */\n focus,\n /**\n * @description emit focus event\n */\n handleFocusInput,\n /**\n * @description emit blur event\n */\n handleBlurInput,\n /**\n * @description pick item manually\n */\n onPick,\n})\n</script>\n"],"names":[],"mappings":"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"}
@@ -2,7 +2,6 @@ import { nextTick } from 'vue';
2
2
  import type { Dayjs } from 'dayjs';
3
3
  import type { ComponentPublicInstance } from 'vue';
4
4
  import type { Options } from '@popperjs/core';
5
- import type { FormContext, FormItemContext } from 'element-plus/es/tokens';
6
5
  import type { DateModelType, DayOrDays, PickerOptions, SingleOrRange, TimePickerDefaultProps, UserInput } from './props';
7
6
  declare const _default: import("vue").DefineComponent<{
8
7
  readonly disabledDate: {
@@ -229,8 +228,8 @@ declare const _default: import("vue").DefineComponent<{
229
228
  cssVarBlock: (object: Record<string, string>) => Record<string, string>;
230
229
  cssVarBlockName: (name: string) => string;
231
230
  };
232
- elForm: FormContext;
233
- elFormItem: FormItemContext;
231
+ form: import("../../../..").FormContext | undefined;
232
+ formItem: import("../../../..").FormItemContext | undefined;
234
233
  elPopperOptions: Options;
235
234
  refPopper: import("vue").Ref<any>;
236
235
  inputRef: import("vue").Ref<HTMLElement | ComponentPublicInstance<{}, {}, {}, {}, {}, {}, {}, {}, false, import("vue").ComponentOptionsBase<any, any, any, any, any, any, any, any, any, {}>> | undefined>;
@@ -431,7 +430,7 @@ declare const _default: import("vue").DefineComponent<{
431
430
  handleFocusInput: (e?: FocusEvent | undefined) => void;
432
431
  currentHandleBlurDeferCallback: undefined;
433
432
  handleBlurInput: (e?: FocusEvent | undefined) => void;
434
- pickerDisabled: import("vue").ComputedRef<boolean>;
433
+ pickerDisabled: import("vue").ComputedRef<boolean | undefined>;
435
434
  parsedValue: import("vue").ComputedRef<DayOrDays>;
436
435
  displayValue: import("vue").ComputedRef<UserInput>;
437
436
  isTimeLikePicker: import("vue").ComputedRef<boolean>;
@@ -601,8 +600,8 @@ declare const _default: import("vue").DefineComponent<{
601
600
  }>;
602
601
  containerAttrs: import("vue").ComputedRef<Record<string, unknown>>;
603
602
  attrs: import("vue").ComputedRef<Record<string, unknown>>;
604
- form: FormContext | undefined;
605
- formItem: FormItemContext | undefined;
603
+ form: import("../../../..").FormContext | undefined;
604
+ formItem: import("../../../..").FormItemContext | undefined;
606
605
  inputId: import("vue").Ref<string | undefined>;
607
606
  inputSize: import("vue").ComputedRef<"" | "default" | "small" | "large">;
608
607
  inputDisabled: import("vue").ComputedRef<boolean>;
@@ -923,7 +922,7 @@ declare const _default: import("vue").DefineComponent<{
923
922
  trigger: import("element-plus/es/utils").EpPropFinalized<(new (...args: any[]) => ("focus" | "hover" | "click" | "contextmenu" | ("focus" | "hover" | "click" | "contextmenu")[]) & {}) | (() => "focus" | "hover" | "click" | "contextmenu" | ("focus" | "hover" | "click" | "contextmenu")[]) | ((new (...args: any[]) => ("focus" | "hover" | "click" | "contextmenu" | ("focus" | "hover" | "click" | "contextmenu")[]) & {}) | (() => "focus" | "hover" | "click" | "contextmenu" | ("focus" | "hover" | "click" | "contextmenu")[]))[], unknown, unknown, "hover", boolean>;
924
923
  triggerKeys: import("element-plus/es/utils").EpPropFinalized<(new (...args: any[]) => string[]) | (() => string[]) | ((new (...args: any[]) => string[]) | (() => string[]))[], unknown, unknown, () => string[], boolean>;
925
924
  virtualRef: {
926
- readonly type: import("vue").PropType<import("element-plus/es/tokens").Measurable>;
925
+ readonly type: import("vue").PropType<import("../../../..").Measurable>;
927
926
  readonly required: false;
928
927
  readonly validator: ((val: unknown) => boolean) | undefined;
929
928
  __epPropKey: true;
@@ -1233,7 +1232,7 @@ declare const _default: import("vue").DefineComponent<{
1233
1232
  contentRef: import("vue").Ref<HTMLElement | undefined>;
1234
1233
  referenceRef: import("vue").Ref<HTMLElement | undefined>;
1235
1234
  role: import("vue").ComputedRef<import("element-plus/es/utils").EpPropMergeType<(new (...args: any[]) => ("listbox" | "grid" | "menu" | "tooltip" | "dialog" | "tree") & {}) | (() => "listbox" | "grid" | "menu" | "tooltip" | "dialog" | "tree") | ((new (...args: any[]) => ("listbox" | "grid" | "menu" | "tooltip" | "dialog" | "tree") & {}) | (() => "listbox" | "grid" | "menu" | "tooltip" | "dialog" | "tree"))[], unknown, unknown>>;
1236
- popperProvides: import("element-plus/es/tokens").ElPopperInjectionContext;
1235
+ popperProvides: import("../../../..").ElPopperInjectionContext;
1237
1236
  }, unknown, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, Record<string, any>, string, {
1238
1237
  readonly role: import("element-plus/es/utils").EpPropMergeType<(new (...args: any[]) => ("listbox" | "grid" | "menu" | "tooltip" | "dialog" | "tree") & {}) | (() => "listbox" | "grid" | "menu" | "tooltip" | "dialog" | "tree") | ((new (...args: any[]) => ("listbox" | "grid" | "menu" | "tooltip" | "dialog" | "tree") & {}) | (() => "listbox" | "grid" | "menu" | "tooltip" | "dialog" | "tree"))[], unknown, unknown>;
1239
1238
  }> & {
@@ -1269,7 +1268,7 @@ declare const _default: import("vue").DefineComponent<{
1269
1268
  contentRef: import("vue").Ref<HTMLElement | undefined>;
1270
1269
  referenceRef: import("vue").Ref<HTMLElement | undefined>;
1271
1270
  role: import("vue").ComputedRef<import("element-plus/es/utils").EpPropMergeType<(new (...args: any[]) => ("listbox" | "grid" | "menu" | "tooltip" | "dialog" | "tree") & {}) | (() => "listbox" | "grid" | "menu" | "tooltip" | "dialog" | "tree") | ((new (...args: any[]) => ("listbox" | "grid" | "menu" | "tooltip" | "dialog" | "tree") & {}) | (() => "listbox" | "grid" | "menu" | "tooltip" | "dialog" | "tree"))[], unknown, unknown>>;
1272
- popperProvides: import("element-plus/es/tokens").ElPopperInjectionContext;
1271
+ popperProvides: import("../../../..").ElPopperInjectionContext;
1273
1272
  }> & {} & import("vue").ComponentCustomProperties) | null>;
1274
1273
  contentRef: import("vue").Ref<({
1275
1274
  $: import("vue").ComponentInternalInstance;
@@ -2627,9 +2626,9 @@ declare const _default: import("vue").DefineComponent<{
2627
2626
  }>>;
2628
2627
  popperInstanceRef: import("vue").Ref<import("@popperjs/core").Instance | undefined>;
2629
2628
  contentRef: import("vue").Ref<HTMLElement | undefined>;
2630
- triggerRef: import("vue").Ref<import("element-plus/es/tokens").Measurable | undefined>;
2629
+ triggerRef: import("vue").Ref<import("../../../..").Measurable | undefined>;
2631
2630
  role: import("vue").ComputedRef<string>;
2632
- formItemContext: FormItemContext | undefined;
2631
+ formItemContext: import("../../../..").FormItemContext | undefined;
2633
2632
  nextZIndex: () => number;
2634
2633
  ns: {
2635
2634
  namespace: import("vue").ComputedRef<string>;
@@ -2656,7 +2655,7 @@ declare const _default: import("vue").DefineComponent<{
2656
2655
  contentZIndex: import("vue").Ref<number>;
2657
2656
  trapped: import("vue").Ref<boolean>;
2658
2657
  triggerTargetAriaStopWatch: undefined;
2659
- computedReference: import("vue").ComputedRef<import("element-plus/es/tokens").Measurable | undefined>;
2658
+ computedReference: import("vue").ComputedRef<import("../../../..").Measurable | undefined>;
2660
2659
  contentStyle: import("vue").ComputedRef<any>;
2661
2660
  contentClass: import("vue").ComputedRef<((string | {
2662
2661
  [x: string]: boolean;
@@ -3266,9 +3265,9 @@ declare const _default: import("vue").DefineComponent<{
3266
3265
  }>>;
3267
3266
  popperInstanceRef: import("vue").Ref<import("@popperjs/core").Instance | undefined>;
3268
3267
  contentRef: import("vue").Ref<HTMLElement | undefined>;
3269
- triggerRef: import("vue").Ref<import("element-plus/es/tokens").Measurable | undefined>;
3268
+ triggerRef: import("vue").Ref<import("../../../..").Measurable | undefined>;
3270
3269
  role: import("vue").ComputedRef<string>;
3271
- formItemContext: FormItemContext | undefined;
3270
+ formItemContext: import("../../../..").FormItemContext | undefined;
3272
3271
  nextZIndex: () => number;
3273
3272
  ns: {
3274
3273
  namespace: import("vue").ComputedRef<string>;
@@ -3295,7 +3294,7 @@ declare const _default: import("vue").DefineComponent<{
3295
3294
  contentZIndex: import("vue").Ref<number>;
3296
3295
  trapped: import("vue").Ref<boolean>;
3297
3296
  triggerTargetAriaStopWatch: undefined;
3298
- computedReference: import("vue").ComputedRef<import("element-plus/es/tokens").Measurable | undefined>;
3297
+ computedReference: import("vue").ComputedRef<import("../../../..").Measurable | undefined>;
3299
3298
  contentStyle: import("vue").ComputedRef<any>;
3300
3299
  contentClass: import("vue").ComputedRef<((string | {
3301
3300
  [x: string]: boolean;
@@ -4476,9 +4475,9 @@ declare const _default: import("vue").DefineComponent<{
4476
4475
  }>>;
4477
4476
  popperInstanceRef: import("vue").Ref<import("@popperjs/core").Instance | undefined>;
4478
4477
  contentRef: import("vue").Ref<HTMLElement | undefined>;
4479
- triggerRef: import("vue").Ref<import("element-plus/es/tokens").Measurable | undefined>;
4478
+ triggerRef: import("vue").Ref<import("../../../..").Measurable | undefined>;
4480
4479
  role: import("vue").ComputedRef<string>;
4481
- formItemContext: FormItemContext | undefined;
4480
+ formItemContext: import("../../../..").FormItemContext | undefined;
4482
4481
  nextZIndex: () => number;
4483
4482
  ns: {
4484
4483
  namespace: import("vue").ComputedRef<string>;
@@ -4505,7 +4504,7 @@ declare const _default: import("vue").DefineComponent<{
4505
4504
  contentZIndex: import("vue").Ref<number>;
4506
4505
  trapped: import("vue").Ref<boolean>;
4507
4506
  triggerTargetAriaStopWatch: undefined;
4508
- computedReference: import("vue").ComputedRef<import("element-plus/es/tokens").Measurable | undefined>;
4507
+ computedReference: import("vue").ComputedRef<import("../../../..").Measurable | undefined>;
4509
4508
  contentStyle: import("vue").ComputedRef<any>;
4510
4509
  contentClass: import("vue").ComputedRef<((string | {
4511
4510
  [x: string]: boolean;
@@ -5115,9 +5114,9 @@ declare const _default: import("vue").DefineComponent<{
5115
5114
  }>>;
5116
5115
  popperInstanceRef: import("vue").Ref<import("@popperjs/core").Instance | undefined>;
5117
5116
  contentRef: import("vue").Ref<HTMLElement | undefined>;
5118
- triggerRef: import("vue").Ref<import("element-plus/es/tokens").Measurable | undefined>;
5117
+ triggerRef: import("vue").Ref<import("../../../..").Measurable | undefined>;
5119
5118
  role: import("vue").ComputedRef<string>;
5120
- formItemContext: FormItemContext | undefined;
5119
+ formItemContext: import("../../../..").FormItemContext | undefined;
5121
5120
  nextZIndex: () => number;
5122
5121
  ns: {
5123
5122
  namespace: import("vue").ComputedRef<string>;
@@ -5144,7 +5143,7 @@ declare const _default: import("vue").DefineComponent<{
5144
5143
  contentZIndex: import("vue").Ref<number>;
5145
5144
  trapped: import("vue").Ref<boolean>;
5146
5145
  triggerTargetAriaStopWatch: undefined;
5147
- computedReference: import("vue").ComputedRef<import("element-plus/es/tokens").Measurable | undefined>;
5146
+ computedReference: import("vue").ComputedRef<import("../../../..").Measurable | undefined>;
5148
5147
  contentStyle: import("vue").ComputedRef<any>;
5149
5148
  contentClass: import("vue").ComputedRef<((string | {
5150
5149
  [x: string]: boolean;
@@ -5249,7 +5248,7 @@ declare const _default: import("vue").DefineComponent<{
5249
5248
  trigger: import("element-plus/es/utils").EpPropFinalized<(new (...args: any[]) => ("focus" | "hover" | "click" | "contextmenu" | ("focus" | "hover" | "click" | "contextmenu")[]) & {}) | (() => "focus" | "hover" | "click" | "contextmenu" | ("focus" | "hover" | "click" | "contextmenu")[]) | ((new (...args: any[]) => ("focus" | "hover" | "click" | "contextmenu" | ("focus" | "hover" | "click" | "contextmenu")[]) & {}) | (() => "focus" | "hover" | "click" | "contextmenu" | ("focus" | "hover" | "click" | "contextmenu")[]))[], unknown, unknown, "hover", boolean>;
5250
5249
  triggerKeys: import("element-plus/es/utils").EpPropFinalized<(new (...args: any[]) => string[]) | (() => string[]) | ((new (...args: any[]) => string[]) | (() => string[]))[], unknown, unknown, () => string[], boolean>;
5251
5250
  virtualRef: {
5252
- readonly type: import("vue").PropType<import("element-plus/es/tokens").Measurable>;
5251
+ readonly type: import("vue").PropType<import("../../../..").Measurable>;
5253
5252
  readonly required: false;
5254
5253
  readonly validator: ((val: unknown) => boolean) | undefined;
5255
5254
  __epPropKey: true;
@@ -122,13 +122,21 @@ const _sfc_main = /* @__PURE__ */ defineComponent({
122
122
  emitSelectRange("hours");
123
123
  }
124
124
  const label = currentScrollbar.value;
125
- let now = unref(timePartials)[label];
125
+ const now = unref(timePartials)[label];
126
126
  const total = currentScrollbar.value === "hours" ? 24 : 60;
127
- now = (now + step + total) % total;
128
- modifyDateField(label, now);
129
- adjustSpinner(label, now);
127
+ const next = findNextUnDisabled(label, now, step, total);
128
+ modifyDateField(label, next);
129
+ adjustSpinner(label, next);
130
130
  nextTick(() => emitSelectRange(label));
131
131
  };
132
+ const findNextUnDisabled = (type, now, step, total) => {
133
+ let next = (now + step + total) % total;
134
+ const list = unref(timeList)[type];
135
+ while (list[next] && next !== now) {
136
+ next = (next + step + total) % total;
137
+ }
138
+ return next;
139
+ };
132
140
  const modifyDateField = (type, value) => {
133
141
  const list = unref(timeList)[type];
134
142
  const isDisabled = list[value];