@element-plus/nightly 0.0.20260108 → 0.0.20260110

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 (563) hide show
  1. package/README.md +0 -5
  2. package/dist/index.full.js +15 -5
  3. package/dist/index.full.min.js +5 -5
  4. package/dist/index.full.min.js.map +1 -1
  5. package/dist/index.full.min.mjs +5 -5
  6. package/dist/index.full.min.mjs.map +1 -1
  7. package/dist/index.full.mjs +15 -5
  8. package/dist/locale/af.js +1 -1
  9. package/dist/locale/af.min.js +1 -1
  10. package/dist/locale/af.min.mjs +1 -1
  11. package/dist/locale/af.mjs +1 -1
  12. package/dist/locale/ar-eg.js +1 -1
  13. package/dist/locale/ar-eg.min.js +1 -1
  14. package/dist/locale/ar-eg.min.mjs +1 -1
  15. package/dist/locale/ar-eg.mjs +1 -1
  16. package/dist/locale/ar.js +1 -1
  17. package/dist/locale/ar.min.js +1 -1
  18. package/dist/locale/ar.min.mjs +1 -1
  19. package/dist/locale/ar.mjs +1 -1
  20. package/dist/locale/az.js +1 -1
  21. package/dist/locale/az.min.js +1 -1
  22. package/dist/locale/az.min.mjs +1 -1
  23. package/dist/locale/az.mjs +1 -1
  24. package/dist/locale/bg.js +1 -1
  25. package/dist/locale/bg.min.js +1 -1
  26. package/dist/locale/bg.min.mjs +1 -1
  27. package/dist/locale/bg.mjs +1 -1
  28. package/dist/locale/bn.js +1 -1
  29. package/dist/locale/bn.min.js +1 -1
  30. package/dist/locale/bn.min.mjs +1 -1
  31. package/dist/locale/bn.mjs +1 -1
  32. package/dist/locale/ca.js +1 -1
  33. package/dist/locale/ca.min.js +1 -1
  34. package/dist/locale/ca.min.mjs +1 -1
  35. package/dist/locale/ca.mjs +1 -1
  36. package/dist/locale/ckb.js +1 -1
  37. package/dist/locale/ckb.min.js +1 -1
  38. package/dist/locale/ckb.min.mjs +1 -1
  39. package/dist/locale/ckb.mjs +1 -1
  40. package/dist/locale/cs.js +1 -1
  41. package/dist/locale/cs.min.js +1 -1
  42. package/dist/locale/cs.min.mjs +1 -1
  43. package/dist/locale/cs.mjs +1 -1
  44. package/dist/locale/da.js +1 -1
  45. package/dist/locale/da.min.js +1 -1
  46. package/dist/locale/da.min.mjs +1 -1
  47. package/dist/locale/da.mjs +1 -1
  48. package/dist/locale/de.js +1 -1
  49. package/dist/locale/de.min.js +1 -1
  50. package/dist/locale/de.min.mjs +1 -1
  51. package/dist/locale/de.mjs +1 -1
  52. package/dist/locale/el.js +1 -1
  53. package/dist/locale/el.min.js +1 -1
  54. package/dist/locale/el.min.mjs +1 -1
  55. package/dist/locale/el.mjs +1 -1
  56. package/dist/locale/en.js +1 -1
  57. package/dist/locale/en.min.js +1 -1
  58. package/dist/locale/en.min.mjs +1 -1
  59. package/dist/locale/en.mjs +1 -1
  60. package/dist/locale/eo.js +1 -1
  61. package/dist/locale/eo.min.js +1 -1
  62. package/dist/locale/eo.min.mjs +1 -1
  63. package/dist/locale/eo.mjs +1 -1
  64. package/dist/locale/es.js +1 -1
  65. package/dist/locale/es.min.js +1 -1
  66. package/dist/locale/es.min.mjs +1 -1
  67. package/dist/locale/es.mjs +1 -1
  68. package/dist/locale/et.js +1 -1
  69. package/dist/locale/et.min.js +1 -1
  70. package/dist/locale/et.min.mjs +1 -1
  71. package/dist/locale/et.mjs +1 -1
  72. package/dist/locale/eu.js +1 -1
  73. package/dist/locale/eu.min.js +1 -1
  74. package/dist/locale/eu.min.mjs +1 -1
  75. package/dist/locale/eu.mjs +1 -1
  76. package/dist/locale/fa.js +1 -1
  77. package/dist/locale/fa.min.js +1 -1
  78. package/dist/locale/fa.min.mjs +1 -1
  79. package/dist/locale/fa.mjs +1 -1
  80. package/dist/locale/fi.js +1 -1
  81. package/dist/locale/fi.min.js +1 -1
  82. package/dist/locale/fi.min.mjs +1 -1
  83. package/dist/locale/fi.mjs +1 -1
  84. package/dist/locale/fr.js +1 -1
  85. package/dist/locale/fr.min.js +1 -1
  86. package/dist/locale/fr.min.mjs +1 -1
  87. package/dist/locale/fr.mjs +1 -1
  88. package/dist/locale/he.js +1 -1
  89. package/dist/locale/he.min.js +1 -1
  90. package/dist/locale/he.min.mjs +1 -1
  91. package/dist/locale/he.mjs +1 -1
  92. package/dist/locale/hi.js +1 -1
  93. package/dist/locale/hi.min.js +1 -1
  94. package/dist/locale/hi.min.mjs +1 -1
  95. package/dist/locale/hi.mjs +1 -1
  96. package/dist/locale/hr.js +1 -1
  97. package/dist/locale/hr.min.js +1 -1
  98. package/dist/locale/hr.min.mjs +1 -1
  99. package/dist/locale/hr.mjs +1 -1
  100. package/dist/locale/hu.js +1 -1
  101. package/dist/locale/hu.min.js +1 -1
  102. package/dist/locale/hu.min.mjs +1 -1
  103. package/dist/locale/hu.mjs +1 -1
  104. package/dist/locale/hy-am.js +1 -1
  105. package/dist/locale/hy-am.min.js +1 -1
  106. package/dist/locale/hy-am.min.mjs +1 -1
  107. package/dist/locale/hy-am.mjs +1 -1
  108. package/dist/locale/id.js +1 -1
  109. package/dist/locale/id.min.js +1 -1
  110. package/dist/locale/id.min.mjs +1 -1
  111. package/dist/locale/id.mjs +1 -1
  112. package/dist/locale/it.js +1 -1
  113. package/dist/locale/it.min.js +1 -1
  114. package/dist/locale/it.min.mjs +1 -1
  115. package/dist/locale/it.mjs +1 -1
  116. package/dist/locale/ja.js +1 -1
  117. package/dist/locale/ja.min.js +1 -1
  118. package/dist/locale/ja.min.mjs +1 -1
  119. package/dist/locale/ja.mjs +1 -1
  120. package/dist/locale/kk.js +1 -1
  121. package/dist/locale/kk.min.js +1 -1
  122. package/dist/locale/kk.min.mjs +1 -1
  123. package/dist/locale/kk.mjs +1 -1
  124. package/dist/locale/km.js +1 -1
  125. package/dist/locale/km.min.js +1 -1
  126. package/dist/locale/km.min.mjs +1 -1
  127. package/dist/locale/km.mjs +1 -1
  128. package/dist/locale/ko.js +1 -1
  129. package/dist/locale/ko.min.js +1 -1
  130. package/dist/locale/ko.min.mjs +1 -1
  131. package/dist/locale/ko.mjs +1 -1
  132. package/dist/locale/ku.js +1 -1
  133. package/dist/locale/ku.min.js +1 -1
  134. package/dist/locale/ku.min.mjs +1 -1
  135. package/dist/locale/ku.mjs +1 -1
  136. package/dist/locale/ky.js +1 -1
  137. package/dist/locale/ky.min.js +1 -1
  138. package/dist/locale/ky.min.mjs +1 -1
  139. package/dist/locale/ky.mjs +1 -1
  140. package/dist/locale/lo.js +1 -1
  141. package/dist/locale/lo.min.js +1 -1
  142. package/dist/locale/lo.min.mjs +1 -1
  143. package/dist/locale/lo.mjs +1 -1
  144. package/dist/locale/lt.js +1 -1
  145. package/dist/locale/lt.min.js +1 -1
  146. package/dist/locale/lt.min.mjs +1 -1
  147. package/dist/locale/lt.mjs +1 -1
  148. package/dist/locale/lv.js +1 -1
  149. package/dist/locale/lv.min.js +1 -1
  150. package/dist/locale/lv.min.mjs +1 -1
  151. package/dist/locale/lv.mjs +1 -1
  152. package/dist/locale/mg.js +1 -1
  153. package/dist/locale/mg.min.js +1 -1
  154. package/dist/locale/mg.min.mjs +1 -1
  155. package/dist/locale/mg.mjs +1 -1
  156. package/dist/locale/mn.js +1 -1
  157. package/dist/locale/mn.min.js +1 -1
  158. package/dist/locale/mn.min.mjs +1 -1
  159. package/dist/locale/mn.mjs +1 -1
  160. package/dist/locale/ms.js +1 -1
  161. package/dist/locale/ms.min.js +1 -1
  162. package/dist/locale/ms.min.mjs +1 -1
  163. package/dist/locale/ms.mjs +1 -1
  164. package/dist/locale/my.js +1 -1
  165. package/dist/locale/my.min.js +1 -1
  166. package/dist/locale/my.min.mjs +1 -1
  167. package/dist/locale/my.mjs +1 -1
  168. package/dist/locale/nb-no.js +1 -1
  169. package/dist/locale/nb-no.min.js +1 -1
  170. package/dist/locale/nb-no.min.mjs +1 -1
  171. package/dist/locale/nb-no.mjs +1 -1
  172. package/dist/locale/nl.js +1 -1
  173. package/dist/locale/nl.min.js +1 -1
  174. package/dist/locale/nl.min.mjs +1 -1
  175. package/dist/locale/nl.mjs +1 -1
  176. package/dist/locale/no.js +1 -1
  177. package/dist/locale/no.min.js +1 -1
  178. package/dist/locale/no.min.mjs +1 -1
  179. package/dist/locale/no.mjs +1 -1
  180. package/dist/locale/pa.js +1 -1
  181. package/dist/locale/pa.min.js +1 -1
  182. package/dist/locale/pa.min.mjs +1 -1
  183. package/dist/locale/pa.mjs +1 -1
  184. package/dist/locale/pl.js +1 -1
  185. package/dist/locale/pl.min.js +1 -1
  186. package/dist/locale/pl.min.mjs +1 -1
  187. package/dist/locale/pl.mjs +1 -1
  188. package/dist/locale/pt-br.js +1 -1
  189. package/dist/locale/pt-br.min.js +1 -1
  190. package/dist/locale/pt-br.min.mjs +1 -1
  191. package/dist/locale/pt-br.mjs +1 -1
  192. package/dist/locale/pt.js +1 -1
  193. package/dist/locale/pt.min.js +1 -1
  194. package/dist/locale/pt.min.mjs +1 -1
  195. package/dist/locale/pt.mjs +1 -1
  196. package/dist/locale/ro.js +1 -1
  197. package/dist/locale/ro.min.js +1 -1
  198. package/dist/locale/ro.min.mjs +1 -1
  199. package/dist/locale/ro.mjs +1 -1
  200. package/dist/locale/ru.js +1 -1
  201. package/dist/locale/ru.min.js +1 -1
  202. package/dist/locale/ru.min.mjs +1 -1
  203. package/dist/locale/ru.mjs +1 -1
  204. package/dist/locale/sk.js +1 -1
  205. package/dist/locale/sk.min.js +1 -1
  206. package/dist/locale/sk.min.mjs +1 -1
  207. package/dist/locale/sk.mjs +1 -1
  208. package/dist/locale/sl.js +1 -1
  209. package/dist/locale/sl.min.js +1 -1
  210. package/dist/locale/sl.min.mjs +1 -1
  211. package/dist/locale/sl.mjs +1 -1
  212. package/dist/locale/sr.js +1 -1
  213. package/dist/locale/sr.min.js +1 -1
  214. package/dist/locale/sr.min.mjs +1 -1
  215. package/dist/locale/sr.mjs +1 -1
  216. package/dist/locale/sv.js +1 -1
  217. package/dist/locale/sv.min.js +1 -1
  218. package/dist/locale/sv.min.mjs +1 -1
  219. package/dist/locale/sv.mjs +1 -1
  220. package/dist/locale/sw.js +1 -1
  221. package/dist/locale/sw.min.js +1 -1
  222. package/dist/locale/sw.min.mjs +1 -1
  223. package/dist/locale/sw.mjs +1 -1
  224. package/dist/locale/ta.js +1 -1
  225. package/dist/locale/ta.min.js +1 -1
  226. package/dist/locale/ta.min.mjs +1 -1
  227. package/dist/locale/ta.mjs +1 -1
  228. package/dist/locale/te.js +1 -1
  229. package/dist/locale/te.min.js +1 -1
  230. package/dist/locale/te.min.mjs +1 -1
  231. package/dist/locale/te.mjs +1 -1
  232. package/dist/locale/th.js +1 -1
  233. package/dist/locale/th.min.js +1 -1
  234. package/dist/locale/th.min.mjs +1 -1
  235. package/dist/locale/th.mjs +1 -1
  236. package/dist/locale/tk.js +1 -1
  237. package/dist/locale/tk.min.js +1 -1
  238. package/dist/locale/tk.min.mjs +1 -1
  239. package/dist/locale/tk.mjs +1 -1
  240. package/dist/locale/tr.js +1 -1
  241. package/dist/locale/tr.min.js +1 -1
  242. package/dist/locale/tr.min.mjs +1 -1
  243. package/dist/locale/tr.mjs +1 -1
  244. package/dist/locale/ug-cn.js +1 -1
  245. package/dist/locale/ug-cn.min.js +1 -1
  246. package/dist/locale/ug-cn.min.mjs +1 -1
  247. package/dist/locale/ug-cn.mjs +1 -1
  248. package/dist/locale/uk.js +1 -1
  249. package/dist/locale/uk.min.js +1 -1
  250. package/dist/locale/uk.min.mjs +1 -1
  251. package/dist/locale/uk.mjs +1 -1
  252. package/dist/locale/uz-uz.js +1 -1
  253. package/dist/locale/uz-uz.min.js +1 -1
  254. package/dist/locale/uz-uz.min.mjs +1 -1
  255. package/dist/locale/uz-uz.mjs +1 -1
  256. package/dist/locale/vi.js +1 -1
  257. package/dist/locale/vi.min.js +1 -1
  258. package/dist/locale/vi.min.mjs +1 -1
  259. package/dist/locale/vi.mjs +1 -1
  260. package/dist/locale/zh-cn.js +1 -1
  261. package/dist/locale/zh-cn.min.js +1 -1
  262. package/dist/locale/zh-cn.min.mjs +1 -1
  263. package/dist/locale/zh-cn.mjs +1 -1
  264. package/dist/locale/zh-hk.js +1 -1
  265. package/dist/locale/zh-hk.min.js +1 -1
  266. package/dist/locale/zh-hk.min.mjs +1 -1
  267. package/dist/locale/zh-hk.mjs +1 -1
  268. package/dist/locale/zh-mo.js +1 -1
  269. package/dist/locale/zh-mo.min.js +1 -1
  270. package/dist/locale/zh-mo.min.mjs +1 -1
  271. package/dist/locale/zh-mo.mjs +1 -1
  272. package/dist/locale/zh-tw.js +1 -1
  273. package/dist/locale/zh-tw.min.js +1 -1
  274. package/dist/locale/zh-tw.min.mjs +1 -1
  275. package/dist/locale/zh-tw.mjs +1 -1
  276. package/es/components/anchor/index.mjs +2 -2
  277. package/es/components/anchor/src/anchor.mjs +237 -39
  278. package/es/components/anchor/src/anchor.mjs.map +1 -1
  279. package/es/components/anchor/src/anchor2.mjs +39 -237
  280. package/es/components/anchor/src/anchor2.mjs.map +1 -1
  281. package/es/components/avatar/src/avatar2.mjs +1 -1
  282. package/es/components/avatar/src/avatar2.mjs.map +1 -1
  283. package/es/components/backtop/index.mjs +2 -2
  284. package/es/components/backtop/src/backtop.mjs +61 -20
  285. package/es/components/backtop/src/backtop.mjs.map +1 -1
  286. package/es/components/backtop/src/backtop2.mjs +20 -61
  287. package/es/components/backtop/src/backtop2.mjs.map +1 -1
  288. package/es/components/badge/index.mjs +2 -2
  289. package/es/components/badge/src/badge.mjs +31 -83
  290. package/es/components/badge/src/badge.mjs.map +1 -1
  291. package/es/components/badge/src/badge2.mjs +83 -31
  292. package/es/components/badge/src/badge2.mjs.map +1 -1
  293. package/es/components/button/index.mjs +2 -2
  294. package/es/components/button/src/button-group.mjs +1 -1
  295. package/es/components/button/src/button.mjs +98 -67
  296. package/es/components/button/src/button.mjs.map +1 -1
  297. package/es/components/button/src/button2.mjs +67 -98
  298. package/es/components/button/src/button2.mjs.map +1 -1
  299. package/es/components/calendar/src/calendar2.mjs +1 -1
  300. package/es/components/calendar/src/date-table.mjs +132 -31
  301. package/es/components/calendar/src/date-table.mjs.map +1 -1
  302. package/es/components/calendar/src/date-table2.mjs +31 -132
  303. package/es/components/calendar/src/date-table2.mjs.map +1 -1
  304. package/es/components/calendar/src/use-date-table.mjs +1 -1
  305. package/es/components/card/index.mjs +2 -2
  306. package/es/components/card/src/card.mjs +22 -73
  307. package/es/components/card/src/card.mjs.map +1 -1
  308. package/es/components/card/src/card2.mjs +73 -22
  309. package/es/components/card/src/card2.mjs.map +1 -1
  310. package/es/components/checkbox/index.mjs +2 -2
  311. package/es/components/checkbox/src/checkbox-button.mjs +1 -1
  312. package/es/components/checkbox/src/checkbox-group2.mjs +1 -1
  313. package/es/components/checkbox/src/checkbox.mjs +134 -62
  314. package/es/components/checkbox/src/checkbox.mjs.map +1 -1
  315. package/es/components/checkbox/src/checkbox2.mjs +62 -134
  316. package/es/components/checkbox/src/checkbox2.mjs.map +1 -1
  317. package/es/components/col/index.mjs +2 -2
  318. package/es/components/col/src/col.mjs +42 -65
  319. package/es/components/col/src/col.mjs.map +1 -1
  320. package/es/components/col/src/col2.mjs +65 -42
  321. package/es/components/col/src/col2.mjs.map +1 -1
  322. package/es/components/collapse/index.mjs +2 -2
  323. package/es/components/collapse/src/collapse-item.mjs +17 -118
  324. package/es/components/collapse/src/collapse-item.mjs.map +1 -1
  325. package/es/components/collapse/src/collapse-item2.mjs +118 -17
  326. package/es/components/collapse/src/collapse-item2.mjs.map +1 -1
  327. package/es/components/descriptions/index.mjs +2 -2
  328. package/es/components/descriptions/src/description.mjs +169 -24
  329. package/es/components/descriptions/src/description.mjs.map +1 -1
  330. package/es/components/descriptions/src/description2.mjs +24 -169
  331. package/es/components/descriptions/src/description2.mjs.map +1 -1
  332. package/es/components/descriptions/src/descriptions-row.mjs +94 -6
  333. package/es/components/descriptions/src/descriptions-row.mjs.map +1 -1
  334. package/es/components/descriptions/src/descriptions-row2.mjs +6 -94
  335. package/es/components/descriptions/src/descriptions-row2.mjs.map +1 -1
  336. package/es/components/drawer/index.mjs +2 -2
  337. package/es/components/drawer/src/drawer.mjs +225 -31
  338. package/es/components/drawer/src/drawer.mjs.map +1 -1
  339. package/es/components/drawer/src/drawer2.mjs +31 -225
  340. package/es/components/drawer/src/drawer2.mjs.map +1 -1
  341. package/es/components/index.mjs +19 -19
  342. package/es/components/notification/index.mjs +1 -1
  343. package/es/components/notification/src/notification.mjs +174 -72
  344. package/es/components/notification/src/notification.mjs.map +1 -1
  345. package/es/components/notification/src/notification2.mjs +72 -174
  346. package/es/components/notification/src/notification2.mjs.map +1 -1
  347. package/es/components/notification/src/notify.mjs +2 -2
  348. package/es/components/page-header/index.mjs +2 -2
  349. package/es/components/page-header/src/page-header.mjs +149 -15
  350. package/es/components/page-header/src/page-header.mjs.map +1 -1
  351. package/es/components/page-header/src/page-header2.mjs +15 -149
  352. package/es/components/page-header/src/page-header2.mjs.map +1 -1
  353. package/es/components/pagination/src/components/total.mjs +6 -27
  354. package/es/components/pagination/src/components/total.mjs.map +1 -1
  355. package/es/components/pagination/src/components/total2.mjs +27 -6
  356. package/es/components/pagination/src/components/total2.mjs.map +1 -1
  357. package/es/components/pagination/src/pagination.mjs +1 -1
  358. package/es/components/popconfirm/src/popconfirm.mjs +1 -1
  359. package/es/components/scrollbar/index.mjs +1 -1
  360. package/es/components/scrollbar/src/bar.mjs +69 -10
  361. package/es/components/scrollbar/src/bar.mjs.map +1 -1
  362. package/es/components/scrollbar/src/bar2.mjs +10 -69
  363. package/es/components/scrollbar/src/bar2.mjs.map +1 -1
  364. package/es/components/scrollbar/src/scrollbar2.mjs +1 -1
  365. package/es/components/scrollbar/src/thumb.mjs +163 -11
  366. package/es/components/scrollbar/src/thumb.mjs.map +1 -1
  367. package/es/components/scrollbar/src/thumb2.mjs +11 -163
  368. package/es/components/scrollbar/src/thumb2.mjs.map +1 -1
  369. package/es/components/select/src/useSelect.mjs +1 -0
  370. package/es/components/select/src/useSelect.mjs.map +1 -1
  371. package/es/components/select-v2/src/useSelect.mjs +1 -0
  372. package/es/components/select-v2/src/useSelect.mjs.map +1 -1
  373. package/es/components/splitter/index.mjs +2 -2
  374. package/es/components/splitter/src/splitter.mjs +114 -14
  375. package/es/components/splitter/src/splitter.mjs.map +1 -1
  376. package/es/components/splitter/src/splitter2.mjs +14 -114
  377. package/es/components/splitter/src/splitter2.mjs.map +1 -1
  378. package/es/components/steps/index.mjs +2 -2
  379. package/es/components/steps/src/steps.mjs +49 -34
  380. package/es/components/steps/src/steps.mjs.map +1 -1
  381. package/es/components/steps/src/steps2.mjs +34 -49
  382. package/es/components/steps/src/steps2.mjs.map +1 -1
  383. package/es/components/table-v2/src/table-grid.mjs +10 -2
  384. package/es/components/table-v2/src/table-grid.mjs.map +1 -1
  385. package/es/components/time-select/index.mjs +2 -2
  386. package/es/components/time-select/src/time-select.mjs +138 -66
  387. package/es/components/time-select/src/time-select.mjs.map +1 -1
  388. package/es/components/time-select/src/time-select2.mjs +66 -138
  389. package/es/components/time-select/src/time-select2.mjs.map +1 -1
  390. package/es/components/tour/index.mjs +2 -2
  391. package/es/components/tour/src/step.mjs +255 -43
  392. package/es/components/tour/src/step.mjs.map +1 -1
  393. package/es/components/tour/src/step2.mjs +43 -255
  394. package/es/components/tour/src/step2.mjs.map +1 -1
  395. package/es/components/transfer/src/composables/use-check.mjs +1 -1
  396. package/es/components/transfer/src/transfer-panel.mjs +173 -20
  397. package/es/components/transfer/src/transfer-panel.mjs.map +1 -1
  398. package/es/components/transfer/src/transfer-panel2.mjs +20 -173
  399. package/es/components/transfer/src/transfer-panel2.mjs.map +1 -1
  400. package/es/components/transfer/src/transfer2.mjs +1 -1
  401. package/es/components/upload/index.mjs +1 -1
  402. package/es/components/upload/src/upload-list.mjs +27 -206
  403. package/es/components/upload/src/upload-list.mjs.map +1 -1
  404. package/es/components/upload/src/upload-list2.mjs +206 -27
  405. package/es/components/upload/src/upload-list2.mjs.map +1 -1
  406. package/es/components/upload/src/upload.vue.d.ts +1 -1
  407. package/es/components/upload/src/upload2.mjs +1 -1
  408. package/es/components/upload/src/use-handlers.d.ts +1 -1
  409. package/es/components/upload/src/use-handlers.mjs.map +1 -1
  410. package/es/components/watermark/index.mjs +2 -2
  411. package/es/components/watermark/src/watermark.mjs +247 -26
  412. package/es/components/watermark/src/watermark.mjs.map +1 -1
  413. package/es/components/watermark/src/watermark2.mjs +26 -247
  414. package/es/components/watermark/src/watermark2.mjs.map +1 -1
  415. package/es/index.mjs +19 -19
  416. package/es/version.d.ts +1 -1
  417. package/es/version.mjs +1 -1
  418. package/es/version.mjs.map +1 -1
  419. package/lib/components/anchor/index.js +2 -2
  420. package/lib/components/anchor/src/anchor.js +236 -39
  421. package/lib/components/anchor/src/anchor.js.map +1 -1
  422. package/lib/components/anchor/src/anchor2.js +39 -236
  423. package/lib/components/anchor/src/anchor2.js.map +1 -1
  424. package/lib/components/avatar/src/avatar2.js +1 -1
  425. package/lib/components/avatar/src/avatar2.js.map +1 -1
  426. package/lib/components/backtop/index.js +2 -2
  427. package/lib/components/backtop/src/backtop.js +61 -21
  428. package/lib/components/backtop/src/backtop.js.map +1 -1
  429. package/lib/components/backtop/src/backtop2.js +21 -61
  430. package/lib/components/backtop/src/backtop2.js.map +1 -1
  431. package/lib/components/badge/index.js +2 -2
  432. package/lib/components/badge/src/badge.js +31 -83
  433. package/lib/components/badge/src/badge.js.map +1 -1
  434. package/lib/components/badge/src/badge2.js +83 -31
  435. package/lib/components/badge/src/badge2.js.map +1 -1
  436. package/lib/components/button/index.js +2 -2
  437. package/lib/components/button/src/button-group.js +1 -1
  438. package/lib/components/button/src/button.js +98 -70
  439. package/lib/components/button/src/button.js.map +1 -1
  440. package/lib/components/button/src/button2.js +70 -98
  441. package/lib/components/button/src/button2.js.map +1 -1
  442. package/lib/components/calendar/src/calendar2.js +1 -1
  443. package/lib/components/calendar/src/date-table.js +132 -35
  444. package/lib/components/calendar/src/date-table.js.map +1 -1
  445. package/lib/components/calendar/src/date-table2.js +35 -132
  446. package/lib/components/calendar/src/date-table2.js.map +1 -1
  447. package/lib/components/calendar/src/use-date-table.js +1 -1
  448. package/lib/components/card/index.js +2 -2
  449. package/lib/components/card/src/card.js +23 -73
  450. package/lib/components/card/src/card.js.map +1 -1
  451. package/lib/components/card/src/card2.js +73 -23
  452. package/lib/components/card/src/card2.js.map +1 -1
  453. package/lib/components/checkbox/index.js +2 -2
  454. package/lib/components/checkbox/src/checkbox-button.js +1 -1
  455. package/lib/components/checkbox/src/checkbox-group2.js +1 -1
  456. package/lib/components/checkbox/src/checkbox.js +134 -63
  457. package/lib/components/checkbox/src/checkbox.js.map +1 -1
  458. package/lib/components/checkbox/src/checkbox2.js +63 -134
  459. package/lib/components/checkbox/src/checkbox2.js.map +1 -1
  460. package/lib/components/col/index.js +2 -2
  461. package/lib/components/col/src/col.js +42 -65
  462. package/lib/components/col/src/col.js.map +1 -1
  463. package/lib/components/col/src/col2.js +65 -42
  464. package/lib/components/col/src/col2.js.map +1 -1
  465. package/lib/components/collapse/index.js +2 -2
  466. package/lib/components/collapse/src/collapse-item.js +17 -118
  467. package/lib/components/collapse/src/collapse-item.js.map +1 -1
  468. package/lib/components/collapse/src/collapse-item2.js +118 -17
  469. package/lib/components/collapse/src/collapse-item2.js.map +1 -1
  470. package/lib/components/descriptions/index.js +2 -2
  471. package/lib/components/descriptions/src/description.js +169 -24
  472. package/lib/components/descriptions/src/description.js.map +1 -1
  473. package/lib/components/descriptions/src/description2.js +24 -169
  474. package/lib/components/descriptions/src/description2.js.map +1 -1
  475. package/lib/components/descriptions/src/descriptions-row.js +94 -6
  476. package/lib/components/descriptions/src/descriptions-row.js.map +1 -1
  477. package/lib/components/descriptions/src/descriptions-row2.js +6 -94
  478. package/lib/components/descriptions/src/descriptions-row2.js.map +1 -1
  479. package/lib/components/drawer/index.js +2 -2
  480. package/lib/components/drawer/src/drawer.js +225 -32
  481. package/lib/components/drawer/src/drawer.js.map +1 -1
  482. package/lib/components/drawer/src/drawer2.js +32 -225
  483. package/lib/components/drawer/src/drawer2.js.map +1 -1
  484. package/lib/components/index.js +19 -19
  485. package/lib/components/notification/index.js +1 -1
  486. package/lib/components/notification/src/notification.js +173 -73
  487. package/lib/components/notification/src/notification.js.map +1 -1
  488. package/lib/components/notification/src/notification2.js +73 -173
  489. package/lib/components/notification/src/notification2.js.map +1 -1
  490. package/lib/components/notification/src/notify.js +2 -2
  491. package/lib/components/page-header/index.js +2 -2
  492. package/lib/components/page-header/src/page-header.js +149 -16
  493. package/lib/components/page-header/src/page-header.js.map +1 -1
  494. package/lib/components/page-header/src/page-header2.js +16 -149
  495. package/lib/components/page-header/src/page-header2.js.map +1 -1
  496. package/lib/components/pagination/src/components/total.js +6 -27
  497. package/lib/components/pagination/src/components/total.js.map +1 -1
  498. package/lib/components/pagination/src/components/total2.js +27 -6
  499. package/lib/components/pagination/src/components/total2.js.map +1 -1
  500. package/lib/components/pagination/src/pagination.js +1 -1
  501. package/lib/components/popconfirm/src/popconfirm.js +1 -1
  502. package/lib/components/scrollbar/index.js +1 -1
  503. package/lib/components/scrollbar/src/bar.js +69 -10
  504. package/lib/components/scrollbar/src/bar.js.map +1 -1
  505. package/lib/components/scrollbar/src/bar2.js +10 -69
  506. package/lib/components/scrollbar/src/bar2.js.map +1 -1
  507. package/lib/components/scrollbar/src/scrollbar2.js +1 -1
  508. package/lib/components/scrollbar/src/thumb.js +163 -11
  509. package/lib/components/scrollbar/src/thumb.js.map +1 -1
  510. package/lib/components/scrollbar/src/thumb2.js +11 -163
  511. package/lib/components/scrollbar/src/thumb2.js.map +1 -1
  512. package/lib/components/select/src/useSelect.js +1 -0
  513. package/lib/components/select/src/useSelect.js.map +1 -1
  514. package/lib/components/select-v2/src/useSelect.js +1 -0
  515. package/lib/components/select-v2/src/useSelect.js.map +1 -1
  516. package/lib/components/splitter/index.js +2 -2
  517. package/lib/components/splitter/src/splitter.js +114 -15
  518. package/lib/components/splitter/src/splitter.js.map +1 -1
  519. package/lib/components/splitter/src/splitter2.js +15 -114
  520. package/lib/components/splitter/src/splitter2.js.map +1 -1
  521. package/lib/components/steps/index.js +2 -2
  522. package/lib/components/steps/src/steps.js +49 -35
  523. package/lib/components/steps/src/steps.js.map +1 -1
  524. package/lib/components/steps/src/steps2.js +35 -49
  525. package/lib/components/steps/src/steps2.js.map +1 -1
  526. package/lib/components/table-v2/src/table-grid.js +10 -2
  527. package/lib/components/table-v2/src/table-grid.js.map +1 -1
  528. package/lib/components/time-select/index.js +2 -2
  529. package/lib/components/time-select/src/time-select.js +143 -66
  530. package/lib/components/time-select/src/time-select.js.map +1 -1
  531. package/lib/components/time-select/src/time-select2.js +66 -143
  532. package/lib/components/time-select/src/time-select2.js.map +1 -1
  533. package/lib/components/tour/index.js +2 -2
  534. package/lib/components/tour/src/step.js +254 -43
  535. package/lib/components/tour/src/step.js.map +1 -1
  536. package/lib/components/tour/src/step2.js +43 -254
  537. package/lib/components/tour/src/step2.js.map +1 -1
  538. package/lib/components/transfer/src/composables/use-check.js +1 -1
  539. package/lib/components/transfer/src/transfer-panel.js +173 -22
  540. package/lib/components/transfer/src/transfer-panel.js.map +1 -1
  541. package/lib/components/transfer/src/transfer-panel2.js +22 -173
  542. package/lib/components/transfer/src/transfer-panel2.js.map +1 -1
  543. package/lib/components/transfer/src/transfer2.js +1 -1
  544. package/lib/components/upload/index.js +1 -1
  545. package/lib/components/upload/src/upload-list.js +28 -206
  546. package/lib/components/upload/src/upload-list.js.map +1 -1
  547. package/lib/components/upload/src/upload-list2.js +206 -28
  548. package/lib/components/upload/src/upload-list2.js.map +1 -1
  549. package/lib/components/upload/src/upload.vue.d.ts +1 -1
  550. package/lib/components/upload/src/upload2.js +1 -1
  551. package/lib/components/upload/src/use-handlers.d.ts +1 -1
  552. package/lib/components/upload/src/use-handlers.js.map +1 -1
  553. package/lib/components/watermark/index.js +2 -2
  554. package/lib/components/watermark/src/watermark.js +247 -26
  555. package/lib/components/watermark/src/watermark.js.map +1 -1
  556. package/lib/components/watermark/src/watermark2.js +26 -247
  557. package/lib/components/watermark/src/watermark2.js.map +1 -1
  558. package/lib/index.js +19 -19
  559. package/lib/version.d.ts +1 -1
  560. package/lib/version.js +1 -1
  561. package/lib/version.js.map +1 -1
  562. package/package.json +2 -2
  563. package/web-types.json +1 -1
@@ -1 +1 @@
1
- {"version":3,"file":"table-grid.mjs","sources":["../../../../../../packages/components/table-v2/src/table-grid.tsx"],"sourcesContent":["import {\n computed,\n defineComponent,\n inject,\n nextTick,\n onActivated,\n provide,\n ref,\n unref,\n watch,\n} from 'vue'\nimport {\n DynamicSizeGrid,\n FixedSizeGrid,\n} from '@element-plus/components/virtual-list'\nimport { isNumber, isObject } from '@element-plus/utils'\nimport { Header } from './components'\nimport { TABLE_V2_GRID_INJECTION_KEY, TableV2InjectionKey } from './tokens'\nimport { tableV2GridProps } from './grid'\nimport { sum } from './utils'\n\nimport type { UnwrapRef } from 'vue'\nimport type {\n DynamicSizeGridInstance,\n GridDefaultSlotParams,\n GridItemKeyGetter,\n GridItemRenderedEvtParams,\n GridScrollOptions,\n ResetAfterIndex,\n Alignment as ScrollStrategy,\n} from '@element-plus/components/virtual-list'\nimport type { TableV2HeaderInstance } from './components'\nimport type { TableV2GridProps } from './grid'\n\nconst COMPONENT_NAME = 'ElTableV2Grid'\n\nconst useTableGrid = (props: TableV2GridProps) => {\n const headerRef = ref<TableV2HeaderInstance>()\n const bodyRef = ref<DynamicSizeGridInstance>()\n const scrollLeft = ref(0)\n\n const totalHeight = computed(() => {\n const { data, rowHeight, estimatedRowHeight } = props\n\n if (estimatedRowHeight) {\n return\n }\n\n return data.length * (rowHeight as number)\n })\n\n const fixedRowHeight = computed(() => {\n const { fixedData, rowHeight } = props\n\n return (fixedData?.length || 0) * (rowHeight as number)\n })\n\n const headerHeight = computed(() => sum(props.headerHeight))\n\n const gridHeight = computed(() => {\n const { height } = props\n return Math.max(0, height - unref(headerHeight) - unref(fixedRowHeight))\n })\n\n const hasHeader = computed(() => {\n return unref(headerHeight) + unref(fixedRowHeight) > 0\n })\n\n const itemKey: GridItemKeyGetter = ({ data, rowIndex }) =>\n data[rowIndex][props.rowKey]\n\n function onItemRendered({\n rowCacheStart,\n rowCacheEnd,\n rowVisibleStart,\n rowVisibleEnd,\n }: GridItemRenderedEvtParams) {\n props.onRowsRendered?.({\n rowCacheStart,\n rowCacheEnd,\n rowVisibleStart,\n rowVisibleEnd,\n })\n }\n\n function resetAfterRowIndex(index: number, forceUpdate: boolean) {\n bodyRef.value?.resetAfterRowIndex(index, forceUpdate)\n }\n\n function scrollTo(x: number, y: number): void\n function scrollTo(options: GridScrollOptions): void\n function scrollTo(leftOrOptions: number | GridScrollOptions, top?: number) {\n const header$ = unref(headerRef)\n const body$ = unref(bodyRef)\n\n if (isObject(leftOrOptions)) {\n header$?.scrollToLeft(leftOrOptions.scrollLeft)\n scrollLeft.value = leftOrOptions.scrollLeft!\n body$?.scrollTo(leftOrOptions)\n } else {\n header$?.scrollToLeft(leftOrOptions)\n scrollLeft.value = leftOrOptions\n body$?.scrollTo({\n scrollLeft: leftOrOptions,\n scrollTop: top,\n })\n }\n }\n\n function scrollToTop(scrollTop: number) {\n unref(bodyRef)?.scrollTo({\n scrollTop,\n })\n }\n\n function scrollToRow(row: number, strategy: ScrollStrategy) {\n unref(bodyRef)?.scrollToItem(row, 1, strategy)\n }\n\n function forceUpdate() {\n unref(bodyRef)?.$forceUpdate()\n unref(headerRef)?.$forceUpdate()\n }\n\n watch(\n () => props.bodyWidth,\n () => {\n if (isNumber(props.estimatedRowHeight))\n bodyRef.value?.resetAfter({ columnIndex: 0 }, false)\n }\n )\n\n return {\n bodyRef,\n forceUpdate,\n fixedRowHeight,\n gridHeight,\n hasHeader,\n headerHeight,\n headerRef,\n totalHeight,\n\n itemKey,\n onItemRendered,\n resetAfterRowIndex,\n scrollTo,\n scrollToTop,\n scrollToRow,\n scrollLeft,\n }\n}\n\nconst TableGrid = defineComponent({\n name: COMPONENT_NAME,\n props: tableV2GridProps,\n setup(props, { slots, expose }) {\n const { ns } = inject(TableV2InjectionKey)!\n\n const {\n bodyRef,\n fixedRowHeight,\n gridHeight,\n hasHeader,\n headerRef,\n headerHeight,\n totalHeight,\n\n forceUpdate,\n itemKey,\n onItemRendered,\n resetAfterRowIndex,\n scrollTo,\n scrollToTop,\n scrollToRow,\n scrollLeft,\n } = useTableGrid(props)\n\n provide(TABLE_V2_GRID_INJECTION_KEY, scrollLeft)\n\n onActivated(async () => {\n await nextTick()\n const scrollTop = bodyRef.value?.states.scrollTop\n scrollTop && scrollToTop(Math.round(scrollTop) + 1)\n })\n\n expose({\n forceUpdate,\n /**\n * @description fetch total height\n */\n totalHeight,\n /**\n * @description scroll to a position\n */\n scrollTo,\n /**\n * @description scroll vertically to position y\n */\n scrollToTop,\n /**\n * @description scroll to a given row\n * @params row {Number} which row to scroll to\n * @params strategy {ScrollStrategy} use what strategy to scroll to\n */\n scrollToRow,\n /**\n * @description reset rendered state after row index\n */\n resetAfterRowIndex,\n })\n\n const getColumnWidth = () => props.bodyWidth\n\n return () => {\n const {\n cache,\n columns,\n data,\n fixedData,\n useIsScrolling,\n scrollbarAlwaysOn,\n scrollbarEndGap,\n scrollbarStartGap,\n style,\n rowHeight,\n bodyWidth,\n estimatedRowHeight,\n headerWidth,\n height,\n width,\n\n getRowHeight,\n onScroll,\n } = props\n\n const isDynamicRowEnabled = isNumber(estimatedRowHeight)\n const Grid = isDynamicRowEnabled ? DynamicSizeGrid : FixedSizeGrid\n const _headerHeight = unref(headerHeight)\n\n return (\n <div role=\"table\" class={[ns.e('table'), props.class]} style={style}>\n <Grid\n ref={bodyRef}\n // special attrs\n data={data}\n useIsScrolling={useIsScrolling}\n itemKey={itemKey}\n // column attrs\n columnCache={0}\n columnWidth={isDynamicRowEnabled ? getColumnWidth : bodyWidth}\n totalColumn={1}\n // row attrs\n totalRow={data.length}\n rowCache={cache}\n rowHeight={isDynamicRowEnabled ? getRowHeight : rowHeight}\n // DOM attrs\n width={width}\n height={unref(gridHeight)}\n class={ns.e('body')}\n role=\"rowgroup\"\n scrollbarStartGap={scrollbarStartGap}\n scrollbarEndGap={scrollbarEndGap}\n scrollbarAlwaysOn={scrollbarAlwaysOn}\n // handlers\n onScroll={onScroll}\n onItemRendered={onItemRendered}\n perfMode={false}\n >\n {{\n default: (params: GridDefaultSlotParams) => {\n const rowData = data[params.rowIndex]\n return slots.row?.({\n ...params,\n columns,\n rowData,\n })\n },\n }}\n </Grid>\n {unref(hasHeader) && (\n <Header\n ref={headerRef}\n class={ns.e('header-wrapper')}\n columns={columns}\n headerData={data}\n headerHeight={props.headerHeight}\n fixedHeaderData={fixedData}\n rowWidth={headerWidth}\n rowHeight={rowHeight}\n width={width}\n height={Math.min(_headerHeight + unref(fixedRowHeight), height)}\n >\n {{\n dynamic: slots.header,\n fixed: slots.row,\n }}\n </Header>\n )}\n </div>\n )\n }\n },\n})\n\nexport default TableGrid\n\nexport type TableGridRowSlotParams = {\n columns: TableV2GridProps['columns']\n rowData: any\n} & GridDefaultSlotParams\n\nexport type TableGridInstance = InstanceType<typeof TableGrid> &\n UnwrapRef<{\n forceUpdate: () => void\n /**\n * @description fetch total height\n */\n totalHeight: number\n\n /**\n * @description scrollTo a position\n * @param { number | ScrollToOptions } arg1\n * @param { number } arg2\n */\n scrollTo(leftOrOptions: number | GridScrollOptions, top?: number): void\n\n /**\n * @description scroll vertically to position y\n */\n scrollToTop(scrollTop: number): void\n /**\n * @description scroll to a given row\n * @params row {Number} which row to scroll to\n * @params @optional strategy {ScrollStrategy} use what strategy to scroll to\n */\n scrollToRow(row: number, strategy: ScrollStrategy): void\n /**\n * @description reset rendered state after row index\n * @param { number } rowIndex\n * @param { boolean } forceUpdate\n */\n resetAfterRowIndex: ResetAfterIndex\n }>\n"],"names":["COMPONENT_NAME","useTableGrid","props","headerRef","ref","bodyRef","scrollLeft","totalHeight","computed","data","rowHeight","estimatedRowHeight","length","fixedRowHeight","fixedData","headerHeight","sum","gridHeight","height","Math","max","unref","hasHeader","itemKey","rowIndex","rowKey","onItemRendered","rowCacheStart","rowCacheEnd","rowVisibleStart","rowVisibleEnd","onRowsRendered","resetAfterRowIndex","index","forceUpdate","value","scrollTo","leftOrOptions","top","header$","body$","isObject","scrollToLeft","scrollTop","scrollToTop","scrollToRow","row","strategy","scrollToItem","$forceUpdate","watch","bodyWidth","isNumber","resetAfter","columnIndex","TableGrid","defineComponent","name","tableV2GridProps","setup","slots","expose","ns","inject","TableV2InjectionKey","provide","TABLE_V2_GRID_INJECTION_KEY","onActivated","nextTick","states","round","getColumnWidth","cache","columns","useIsScrolling","scrollbarAlwaysOn","scrollbarEndGap","scrollbarStartGap","style","headerWidth","width","getRowHeight","onScroll","isDynamicRowEnabled","Grid","DynamicSizeGrid","FixedSizeGrid","_headerHeight","_createVNode","e","class","default","params","rowData","Header","min","dynamic","header","fixed"],"mappings":"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"}
1
+ {"version":3,"file":"table-grid.mjs","sources":["../../../../../../packages/components/table-v2/src/table-grid.tsx"],"sourcesContent":["import {\n computed,\n defineComponent,\n inject,\n nextTick,\n onActivated,\n provide,\n ref,\n unref,\n watch,\n} from 'vue'\nimport {\n DynamicSizeGrid,\n FixedSizeGrid,\n} from '@element-plus/components/virtual-list'\nimport { isNumber, isObject } from '@element-plus/utils'\nimport { Header } from './components'\nimport { TABLE_V2_GRID_INJECTION_KEY, TableV2InjectionKey } from './tokens'\nimport { tableV2GridProps } from './grid'\nimport { sum } from './utils'\n\nimport type { UnwrapRef } from 'vue'\nimport type {\n DynamicSizeGridInstance,\n GridDefaultSlotParams,\n GridItemKeyGetter,\n GridItemRenderedEvtParams,\n GridScrollOptions,\n ResetAfterIndex,\n Alignment as ScrollStrategy,\n} from '@element-plus/components/virtual-list'\nimport type { TableV2HeaderInstance } from './components'\nimport type { TableV2GridProps } from './grid'\n\nconst COMPONENT_NAME = 'ElTableV2Grid'\n\nconst useTableGrid = (props: TableV2GridProps) => {\n const headerRef = ref<TableV2HeaderInstance>()\n const bodyRef = ref<DynamicSizeGridInstance>()\n const scrollLeft = ref(0)\n\n const totalHeight = computed(() => {\n const { data, rowHeight, estimatedRowHeight } = props\n\n if (estimatedRowHeight) {\n return\n }\n\n return data.length * (rowHeight as number)\n })\n\n const fixedRowHeight = computed(() => {\n const { fixedData, rowHeight } = props\n\n return (fixedData?.length || 0) * (rowHeight as number)\n })\n\n const headerHeight = computed(() => sum(props.headerHeight))\n\n const gridHeight = computed(() => {\n const { height } = props\n return Math.max(0, height - unref(headerHeight) - unref(fixedRowHeight))\n })\n\n const hasHeader = computed(() => {\n return unref(headerHeight) + unref(fixedRowHeight) > 0\n })\n\n const itemKey: GridItemKeyGetter = ({ data, rowIndex }) =>\n data[rowIndex][props.rowKey]\n\n function onItemRendered({\n rowCacheStart,\n rowCacheEnd,\n rowVisibleStart,\n rowVisibleEnd,\n }: GridItemRenderedEvtParams) {\n props.onRowsRendered?.({\n rowCacheStart,\n rowCacheEnd,\n rowVisibleStart,\n rowVisibleEnd,\n })\n }\n\n function resetAfterRowIndex(index: number, forceUpdate: boolean) {\n bodyRef.value?.resetAfterRowIndex(index, forceUpdate)\n }\n\n function scrollTo(x: number, y: number): void\n function scrollTo(options: GridScrollOptions): void\n function scrollTo(leftOrOptions: number | GridScrollOptions, top?: number) {\n const header$ = unref(headerRef)\n const body$ = unref(bodyRef)\n\n if (isObject(leftOrOptions)) {\n header$?.scrollToLeft(leftOrOptions.scrollLeft)\n scrollLeft.value = leftOrOptions.scrollLeft!\n body$?.scrollTo(leftOrOptions)\n } else {\n header$?.scrollToLeft(leftOrOptions)\n scrollLeft.value = leftOrOptions\n body$?.scrollTo({\n scrollLeft: leftOrOptions,\n scrollTop: top,\n })\n }\n }\n\n function scrollToTop(scrollTop: number) {\n unref(bodyRef)?.scrollTo({\n scrollTop,\n })\n }\n\n function scrollToRow(row: number, strategy: ScrollStrategy) {\n const body = unref(bodyRef)\n if (!body) return\n\n const prevScrollLeft = scrollLeft.value\n\n body.scrollToItem(row, 0, strategy)\n\n if (prevScrollLeft) {\n scrollTo({\n scrollLeft: prevScrollLeft,\n })\n }\n }\n\n function forceUpdate() {\n unref(bodyRef)?.$forceUpdate()\n unref(headerRef)?.$forceUpdate()\n }\n\n watch(\n () => props.bodyWidth,\n () => {\n if (isNumber(props.estimatedRowHeight))\n bodyRef.value?.resetAfter({ columnIndex: 0 }, false)\n }\n )\n\n return {\n bodyRef,\n forceUpdate,\n fixedRowHeight,\n gridHeight,\n hasHeader,\n headerHeight,\n headerRef,\n totalHeight,\n\n itemKey,\n onItemRendered,\n resetAfterRowIndex,\n scrollTo,\n scrollToTop,\n scrollToRow,\n scrollLeft,\n }\n}\n\nconst TableGrid = defineComponent({\n name: COMPONENT_NAME,\n props: tableV2GridProps,\n setup(props, { slots, expose }) {\n const { ns } = inject(TableV2InjectionKey)!\n\n const {\n bodyRef,\n fixedRowHeight,\n gridHeight,\n hasHeader,\n headerRef,\n headerHeight,\n totalHeight,\n\n forceUpdate,\n itemKey,\n onItemRendered,\n resetAfterRowIndex,\n scrollTo,\n scrollToTop,\n scrollToRow,\n scrollLeft,\n } = useTableGrid(props)\n\n provide(TABLE_V2_GRID_INJECTION_KEY, scrollLeft)\n\n onActivated(async () => {\n await nextTick()\n const scrollTop = bodyRef.value?.states.scrollTop\n scrollTop && scrollToTop(Math.round(scrollTop) + 1)\n })\n\n expose({\n forceUpdate,\n /**\n * @description fetch total height\n */\n totalHeight,\n /**\n * @description scroll to a position\n */\n scrollTo,\n /**\n * @description scroll vertically to position y\n */\n scrollToTop,\n /**\n * @description scroll to a given row\n * @params row {Number} which row to scroll to\n * @params strategy {ScrollStrategy} use what strategy to scroll to\n */\n scrollToRow,\n /**\n * @description reset rendered state after row index\n */\n resetAfterRowIndex,\n })\n\n const getColumnWidth = () => props.bodyWidth\n\n return () => {\n const {\n cache,\n columns,\n data,\n fixedData,\n useIsScrolling,\n scrollbarAlwaysOn,\n scrollbarEndGap,\n scrollbarStartGap,\n style,\n rowHeight,\n bodyWidth,\n estimatedRowHeight,\n headerWidth,\n height,\n width,\n\n getRowHeight,\n onScroll,\n } = props\n\n const isDynamicRowEnabled = isNumber(estimatedRowHeight)\n const Grid = isDynamicRowEnabled ? DynamicSizeGrid : FixedSizeGrid\n const _headerHeight = unref(headerHeight)\n\n return (\n <div role=\"table\" class={[ns.e('table'), props.class]} style={style}>\n <Grid\n ref={bodyRef}\n // special attrs\n data={data}\n useIsScrolling={useIsScrolling}\n itemKey={itemKey}\n // column attrs\n columnCache={0}\n columnWidth={isDynamicRowEnabled ? getColumnWidth : bodyWidth}\n totalColumn={1}\n // row attrs\n totalRow={data.length}\n rowCache={cache}\n rowHeight={isDynamicRowEnabled ? getRowHeight : rowHeight}\n // DOM attrs\n width={width}\n height={unref(gridHeight)}\n class={ns.e('body')}\n role=\"rowgroup\"\n scrollbarStartGap={scrollbarStartGap}\n scrollbarEndGap={scrollbarEndGap}\n scrollbarAlwaysOn={scrollbarAlwaysOn}\n // handlers\n onScroll={onScroll}\n onItemRendered={onItemRendered}\n perfMode={false}\n >\n {{\n default: (params: GridDefaultSlotParams) => {\n const rowData = data[params.rowIndex]\n return slots.row?.({\n ...params,\n columns,\n rowData,\n })\n },\n }}\n </Grid>\n {unref(hasHeader) && (\n <Header\n ref={headerRef}\n class={ns.e('header-wrapper')}\n columns={columns}\n headerData={data}\n headerHeight={props.headerHeight}\n fixedHeaderData={fixedData}\n rowWidth={headerWidth}\n rowHeight={rowHeight}\n width={width}\n height={Math.min(_headerHeight + unref(fixedRowHeight), height)}\n >\n {{\n dynamic: slots.header,\n fixed: slots.row,\n }}\n </Header>\n )}\n </div>\n )\n }\n },\n})\n\nexport default TableGrid\n\nexport type TableGridRowSlotParams = {\n columns: TableV2GridProps['columns']\n rowData: any\n} & GridDefaultSlotParams\n\nexport type TableGridInstance = InstanceType<typeof TableGrid> &\n UnwrapRef<{\n forceUpdate: () => void\n /**\n * @description fetch total height\n */\n totalHeight: number\n\n /**\n * @description scrollTo a position\n * @param { number | ScrollToOptions } arg1\n * @param { number } arg2\n */\n scrollTo(leftOrOptions: number | GridScrollOptions, top?: number): void\n\n /**\n * @description scroll vertically to position y\n */\n scrollToTop(scrollTop: number): void\n /**\n * @description scroll to a given row\n * @params row {Number} which row to scroll to\n * @params @optional strategy {ScrollStrategy} use what strategy to scroll to\n */\n scrollToRow(row: number, strategy: ScrollStrategy): void\n /**\n * @description reset rendered state after row index\n * @param { number } rowIndex\n * @param { boolean } forceUpdate\n */\n resetAfterRowIndex: ResetAfterIndex\n }>\n"],"names":["COMPONENT_NAME","useTableGrid","props","headerRef","ref","bodyRef","scrollLeft","totalHeight","computed","data","rowHeight","estimatedRowHeight","length","fixedRowHeight","fixedData","headerHeight","sum","gridHeight","height","Math","max","unref","hasHeader","itemKey","rowIndex","rowKey","onItemRendered","rowCacheStart","rowCacheEnd","rowVisibleStart","rowVisibleEnd","onRowsRendered","resetAfterRowIndex","index","forceUpdate","value","scrollTo","leftOrOptions","top","header$","body$","isObject","scrollToLeft","scrollTop","scrollToTop","scrollToRow","row","strategy","body","prevScrollLeft","scrollToItem","$forceUpdate","watch","bodyWidth","isNumber","resetAfter","columnIndex","TableGrid","defineComponent","name","tableV2GridProps","setup","slots","expose","ns","inject","TableV2InjectionKey","provide","TABLE_V2_GRID_INJECTION_KEY","onActivated","nextTick","states","round","getColumnWidth","cache","columns","useIsScrolling","scrollbarAlwaysOn","scrollbarEndGap","scrollbarStartGap","style","headerWidth","width","getRowHeight","onScroll","isDynamicRowEnabled","Grid","DynamicSizeGrid","FixedSizeGrid","_headerHeight","_createVNode","e","class","default","params","rowData","Header","min","dynamic","header","fixed"],"mappings":"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"}
@@ -1,5 +1,5 @@
1
- import TimeSelect from './src/time-select2.mjs';
2
- export { timeSelectProps } from './src/time-select.mjs';
1
+ import TimeSelect from './src/time-select.mjs';
2
+ export { timeSelectProps } from './src/time-select2.mjs';
3
3
  import { withInstall } from '../../utils/vue/install.mjs';
4
4
 
5
5
  const ElTimeSelect = withInstall(TimeSelect);
@@ -1,71 +1,143 @@
1
- import { Clock, CircleClose } from '@element-plus/icons-vue';
2
- import { buildProps, definePropType } from '../../../utils/vue/props/runtime.mjs';
3
- import { useSizeProp } from '../../../hooks/use-size/index.mjs';
4
- import { useEmptyValuesProps } from '../../../hooks/use-empty-values/index.mjs';
1
+ import { defineComponent, ref, computed, openBlock, createBlock, unref, withCtx, normalizeClass, resolveDynamicComponent, createCommentVNode, createElementBlock, Fragment, renderList } from 'vue';
2
+ import dayjs from 'dayjs';
3
+ import customParseFormat from 'dayjs/plugin/customParseFormat.js';
4
+ import { ElSelect } from '../../select/index.mjs';
5
+ import { ElIcon } from '../../icon/index.mjs';
6
+ import { timeSelectProps } from './time-select2.mjs';
7
+ import { parseTime, formatTime, compareTime, nextTime } from './utils.mjs';
8
+ import _export_sfc from '../../../_virtual/plugin-vue_export-helper.mjs';
9
+ import { CHANGE_EVENT, UPDATE_MODEL_EVENT } from '../../../constants/event.mjs';
10
+ import { useNamespace } from '../../../hooks/use-namespace/index.mjs';
11
+ import { useFormDisabled } from '../../form/src/hooks/use-form-common-props.mjs';
12
+ import { useLocale } from '../../../hooks/use-locale/index.mjs';
5
13
 
6
- const timeSelectProps = buildProps({
7
- format: {
8
- type: String,
9
- default: "HH:mm"
14
+ const _sfc_main = defineComponent({
15
+ ...{
16
+ name: "ElTimeSelect"
10
17
  },
11
- modelValue: {
12
- type: definePropType(String)
13
- },
14
- disabled: {
15
- type: Boolean,
16
- default: void 0
17
- },
18
- editable: {
19
- type: Boolean,
20
- default: true
21
- },
22
- effect: {
23
- type: definePropType(String),
24
- default: "light"
25
- },
26
- clearable: {
27
- type: Boolean,
28
- default: true
29
- },
30
- size: useSizeProp,
31
- placeholder: String,
32
- start: {
33
- type: String,
34
- default: "09:00"
35
- },
36
- end: {
37
- type: String,
38
- default: "18:00"
39
- },
40
- step: {
41
- type: String,
42
- default: "00:30"
43
- },
44
- minTime: {
45
- type: definePropType(String)
46
- },
47
- maxTime: {
48
- type: definePropType(String)
49
- },
50
- includeEndTime: Boolean,
51
- name: String,
52
- prefixIcon: {
53
- type: definePropType([String, Object]),
54
- default: () => Clock
55
- },
56
- clearIcon: {
57
- type: definePropType([String, Object]),
58
- default: () => CircleClose
59
- },
60
- popperClass: {
61
- type: String,
62
- default: ""
63
- },
64
- popperStyle: {
65
- type: definePropType([String, Object])
66
- },
67
- ...useEmptyValuesProps
18
+ __name: "time-select",
19
+ props: timeSelectProps,
20
+ emits: [CHANGE_EVENT, "blur", "focus", "clear", UPDATE_MODEL_EVENT],
21
+ setup(__props, { expose: __expose }) {
22
+ dayjs.extend(customParseFormat);
23
+ const { Option: ElOption } = ElSelect;
24
+ const props = __props;
25
+ const nsInput = useNamespace("input");
26
+ const select = ref();
27
+ const _disabled = useFormDisabled();
28
+ const { lang } = useLocale();
29
+ const value = computed(() => props.modelValue);
30
+ const start = computed(() => {
31
+ const time = parseTime(props.start);
32
+ return time ? formatTime(time) : null;
33
+ });
34
+ const end = computed(() => {
35
+ const time = parseTime(props.end);
36
+ return time ? formatTime(time) : null;
37
+ });
38
+ const step = computed(() => {
39
+ const time = parseTime(props.step);
40
+ return time ? formatTime(time) : null;
41
+ });
42
+ const minTime = computed(() => {
43
+ const time = parseTime(props.minTime || "");
44
+ return time ? formatTime(time) : null;
45
+ });
46
+ const maxTime = computed(() => {
47
+ const time = parseTime(props.maxTime || "");
48
+ return time ? formatTime(time) : null;
49
+ });
50
+ const items = computed(() => {
51
+ var _a;
52
+ const result = [];
53
+ const push = (formattedValue, rawValue) => {
54
+ result.push({
55
+ value: formattedValue,
56
+ disabled: compareTime(rawValue, minTime.value || "-1:-1") <= 0 || compareTime(rawValue, maxTime.value || "100:100") >= 0
57
+ });
58
+ };
59
+ if (props.start && props.end && props.step) {
60
+ let current = start.value;
61
+ let currentTime;
62
+ while (current && end.value && compareTime(current, end.value) <= 0) {
63
+ currentTime = dayjs(current, "HH:mm").locale(lang.value).format(props.format);
64
+ push(currentTime, current);
65
+ current = nextTime(current, step.value);
66
+ }
67
+ if (props.includeEndTime && end.value && ((_a = result[result.length - 1]) == null ? void 0 : _a.value) !== end.value) {
68
+ const formattedValue = dayjs(end.value, "HH:mm").locale(lang.value).format(props.format);
69
+ push(formattedValue, end.value);
70
+ }
71
+ }
72
+ return result;
73
+ });
74
+ const blur = () => {
75
+ var _a, _b;
76
+ (_b = (_a = select.value) == null ? void 0 : _a.blur) == null ? void 0 : _b.call(_a);
77
+ };
78
+ const focus = () => {
79
+ var _a, _b;
80
+ (_b = (_a = select.value) == null ? void 0 : _a.focus) == null ? void 0 : _b.call(_a);
81
+ };
82
+ __expose({
83
+ blur,
84
+ focus
85
+ });
86
+ return (_ctx, _cache) => {
87
+ return openBlock(), createBlock(unref(ElSelect), {
88
+ ref_key: "select",
89
+ ref: select,
90
+ "model-value": value.value,
91
+ disabled: unref(_disabled),
92
+ clearable: _ctx.clearable,
93
+ "clear-icon": _ctx.clearIcon,
94
+ size: _ctx.size,
95
+ effect: _ctx.effect,
96
+ placeholder: _ctx.placeholder,
97
+ "default-first-option": "",
98
+ filterable: _ctx.editable,
99
+ "empty-values": _ctx.emptyValues,
100
+ "value-on-clear": _ctx.valueOnClear,
101
+ "popper-class": _ctx.popperClass,
102
+ "popper-style": _ctx.popperStyle,
103
+ "onUpdate:modelValue": _cache[0] || (_cache[0] = (event) => _ctx.$emit(unref(UPDATE_MODEL_EVENT), event)),
104
+ onChange: _cache[1] || (_cache[1] = (event) => _ctx.$emit(unref(CHANGE_EVENT), event)),
105
+ onBlur: _cache[2] || (_cache[2] = (event) => _ctx.$emit("blur", event)),
106
+ onFocus: _cache[3] || (_cache[3] = (event) => _ctx.$emit("focus", event)),
107
+ onClear: _cache[4] || (_cache[4] = () => _ctx.$emit("clear"))
108
+ }, {
109
+ prefix: withCtx(() => [
110
+ _ctx.prefixIcon ? (openBlock(), createBlock(unref(ElIcon), {
111
+ key: 0,
112
+ class: normalizeClass(unref(nsInput).e("prefix-icon"))
113
+ }, {
114
+ default: withCtx(() => [
115
+ (openBlock(), createBlock(resolveDynamicComponent(_ctx.prefixIcon)))
116
+ ]),
117
+ _: 1
118
+ }, 8, ["class"])) : createCommentVNode("v-if", true)
119
+ ]),
120
+ default: withCtx(() => [
121
+ (openBlock(true), createElementBlock(
122
+ Fragment,
123
+ null,
124
+ renderList(items.value, (item) => {
125
+ return openBlock(), createBlock(unref(ElOption), {
126
+ key: item.value,
127
+ label: item.value,
128
+ value: item.value,
129
+ disabled: item.disabled
130
+ }, null, 8, ["label", "value", "disabled"]);
131
+ }),
132
+ 128
133
+ ))
134
+ ]),
135
+ _: 1
136
+ }, 8, ["model-value", "disabled", "clearable", "clear-icon", "size", "effect", "placeholder", "filterable", "empty-values", "value-on-clear", "popper-class", "popper-style"]);
137
+ };
138
+ }
68
139
  });
140
+ var TimeSelect = /* @__PURE__ */ _export_sfc(_sfc_main, [["__file", "/home/runner/work/element-plus/element-plus/packages/components/time-select/src/time-select.vue"]]);
69
141
 
70
- export { timeSelectProps };
142
+ export { TimeSelect as default };
71
143
  //# sourceMappingURL=time-select.mjs.map
@@ -1 +1 @@
1
- {"version":3,"file":"time-select.mjs","sources":["../../../../../../packages/components/time-select/src/time-select.ts"],"sourcesContent":["import { buildProps, definePropType } from '@element-plus/utils'\nimport { CircleClose, Clock } from '@element-plus/icons-vue'\nimport { useEmptyValuesProps, useSizeProp } from '@element-plus/hooks'\n\nimport type { PopperEffect } from '@element-plus/components/popper'\nimport type TimeSelect from './time-select.vue'\nimport type {\n CSSProperties,\n Component,\n ExtractPropTypes,\n ExtractPublicPropTypes,\n} from 'vue'\n\nexport const timeSelectProps = buildProps({\n /**\n * @description set format of time\n */\n format: {\n type: String,\n default: 'HH:mm',\n },\n /**\n * @description binding value\n */\n modelValue: {\n type: definePropType<string | null>(String),\n },\n /**\n * @description whether TimeSelect is disabled\n */\n disabled: {\n type: Boolean,\n default: undefined,\n },\n /**\n * @description whether the input is editable\n */\n editable: {\n type: Boolean,\n default: true,\n },\n /**\n * @description Tooltip theme, built-in theme: `dark` / `light`\n */\n effect: {\n type: definePropType<PopperEffect>(String),\n default: 'light',\n },\n /**\n * @description whether to show clear button\n */\n clearable: {\n type: Boolean,\n default: true,\n },\n /**\n * @description size of Input\n */\n size: useSizeProp,\n /**\n * @description placeholder in non-range mode\n */\n placeholder: String,\n /**\n * @description start time\n */\n start: {\n type: String,\n default: '09:00',\n },\n /**\n * @description end time\n */\n end: {\n type: String,\n default: '18:00',\n },\n /**\n * @description time step\n */\n step: {\n type: String,\n default: '00:30',\n },\n /**\n * @description minimum time, any time before this time will be disabled\n */\n minTime: {\n type: definePropType<string | null>(String),\n },\n /**\n * @description maximum time, any time after this time will be disabled\n */\n maxTime: {\n type: definePropType<string | null>(String),\n },\n /**\n * @description whether `end` is included in options\n */\n includeEndTime: Boolean,\n /**\n * @description same as `name` in native input\n */\n name: String,\n /**\n * @description custom prefix icon component\n */\n prefixIcon: {\n type: definePropType<string | Component>([String, Object]),\n default: () => Clock,\n },\n /**\n * @description custom clear icon component\n */\n clearIcon: {\n type: definePropType<string | Component>([String, Object]),\n default: () => CircleClose,\n },\n /**\n * @description custom class name for TimeSelect's dropdown\n */\n popperClass: {\n type: String,\n default: '',\n },\n /**\n * @description custom style for TimeSelect's dropdown\n */\n popperStyle: {\n type: definePropType<string | CSSProperties>([String, Object]),\n },\n ...useEmptyValuesProps,\n} as const)\n\nexport type TimeSelectProps = ExtractPropTypes<typeof timeSelectProps>\nexport type TimeSelectPropsPublic = ExtractPublicPropTypes<\n typeof timeSelectProps\n>\n\nexport type TimeSelectInstance = InstanceType<typeof TimeSelect> & unknown\n"],"names":[],"mappings":";;;;;AAaO,MAAM,kBAAkB,UAAW,CAAA;AAAA,EAIxC,MAAQ,EAAA;AAAA,IACN,IAAM,EAAA,MAAA;AAAA,IACN,OAAS,EAAA,OAAA;AAAA,GACX;AAAA,EAIA,UAAY,EAAA;AAAA,IACV,IAAA,EAAM,eAA8B,MAAM,CAAA;AAAA,GAC5C;AAAA,EAIA,QAAU,EAAA;AAAA,IACR,IAAM,EAAA,OAAA;AAAA,IACN,OAAS,EAAA,KAAA,CAAA;AAAA,GACX;AAAA,EAIA,QAAU,EAAA;AAAA,IACR,IAAM,EAAA,OAAA;AAAA,IACN,OAAS,EAAA,IAAA;AAAA,GACX;AAAA,EAIA,MAAQ,EAAA;AAAA,IACN,IAAA,EAAM,eAA6B,MAAM,CAAA;AAAA,IACzC,OAAS,EAAA,OAAA;AAAA,GACX;AAAA,EAIA,SAAW,EAAA;AAAA,IACT,IAAM,EAAA,OAAA;AAAA,IACN,OAAS,EAAA,IAAA;AAAA,GACX;AAAA,EAIA,IAAM,EAAA,WAAA;AAAA,EAIN,WAAa,EAAA,MAAA;AAAA,EAIb,KAAO,EAAA;AAAA,IACL,IAAM,EAAA,MAAA;AAAA,IACN,OAAS,EAAA,OAAA;AAAA,GACX;AAAA,EAIA,GAAK,EAAA;AAAA,IACH,IAAM,EAAA,MAAA;AAAA,IACN,OAAS,EAAA,OAAA;AAAA,GACX;AAAA,EAIA,IAAM,EAAA;AAAA,IACJ,IAAM,EAAA,MAAA;AAAA,IACN,OAAS,EAAA,OAAA;AAAA,GACX;AAAA,EAIA,OAAS,EAAA;AAAA,IACP,IAAA,EAAM,eAA8B,MAAM,CAAA;AAAA,GAC5C;AAAA,EAIA,OAAS,EAAA;AAAA,IACP,IAAA,EAAM,eAA8B,MAAM,CAAA;AAAA,GAC5C;AAAA,EAIA,cAAgB,EAAA,OAAA;AAAA,EAIhB,IAAM,EAAA,MAAA;AAAA,EAIN,UAAY,EAAA;AAAA,IACV,IAAM,EAAA,cAAA,CAAmC,CAAC,MAAA,EAAQ,MAAM,CAAC,CAAA;AAAA,IACzD,SAAS,MAAM,KAAA;AAAA,GACjB;AAAA,EAIA,SAAW,EAAA;AAAA,IACT,IAAM,EAAA,cAAA,CAAmC,CAAC,MAAA,EAAQ,MAAM,CAAC,CAAA;AAAA,IACzD,SAAS,MAAM,WAAA;AAAA,GACjB;AAAA,EAIA,WAAa,EAAA;AAAA,IACX,IAAM,EAAA,MAAA;AAAA,IACN,OAAS,EAAA,EAAA;AAAA,GACX;AAAA,EAIA,WAAa,EAAA;AAAA,IACX,IAAM,EAAA,cAAA,CAAuC,CAAC,MAAA,EAAQ,MAAM,CAAC,CAAA;AAAA,GAC/D;AAAA,EACA,GAAG,mBAAA;AACL,CAAU;;;;"}
1
+ {"version":3,"file":"time-select.mjs","sources":["../../../../../../packages/components/time-select/src/time-select.vue"],"sourcesContent":["<template>\n <el-select\n ref=\"select\"\n :model-value=\"value\"\n :disabled=\"_disabled\"\n :clearable=\"clearable\"\n :clear-icon=\"clearIcon\"\n :size=\"size\"\n :effect=\"effect\"\n :placeholder=\"placeholder\"\n default-first-option\n :filterable=\"editable\"\n :empty-values=\"emptyValues\"\n :value-on-clear=\"valueOnClear\"\n :popper-class=\"popperClass\"\n :popper-style=\"popperStyle\"\n @update:model-value=\"(event) => $emit(UPDATE_MODEL_EVENT, event)\"\n @change=\"(event) => $emit(CHANGE_EVENT, event)\"\n @blur=\"(event) => $emit('blur', event)\"\n @focus=\"(event) => $emit('focus', event)\"\n @clear=\"() => $emit('clear')\"\n >\n <el-option\n v-for=\"item in items\"\n :key=\"item.value\"\n :label=\"item.value\"\n :value=\"item.value\"\n :disabled=\"item.disabled\"\n />\n <template #prefix>\n <el-icon v-if=\"prefixIcon\" :class=\"nsInput.e('prefix-icon')\">\n <component :is=\"prefixIcon\" />\n </el-icon>\n </template>\n </el-select>\n</template>\n\n<script lang=\"ts\" setup>\nimport { computed, ref } from 'vue'\nimport dayjs from 'dayjs'\nimport customParseFormat from 'dayjs/plugin/customParseFormat.js'\nimport ElSelect from '@element-plus/components/select'\nimport { useFormDisabled } from '@element-plus/components/form'\nimport ElIcon from '@element-plus/components/icon'\nimport { useLocale, useNamespace } from '@element-plus/hooks'\nimport { CHANGE_EVENT, UPDATE_MODEL_EVENT } from '@element-plus/constants'\nimport { timeSelectProps } from './time-select'\nimport { compareTime, formatTime, nextTime, parseTime } from './utils'\n\ndayjs.extend(customParseFormat)\n\nconst { Option: ElOption } = ElSelect\n\ndefineOptions({\n name: 'ElTimeSelect',\n})\n\ndefineEmits([CHANGE_EVENT, 'blur', 'focus', 'clear', UPDATE_MODEL_EVENT])\n\nconst props = defineProps(timeSelectProps)\n\nconst nsInput = useNamespace('input')\nconst select = ref<typeof ElSelect>()\n\nconst _disabled = useFormDisabled()\nconst { lang } = useLocale()\n\nconst value = computed(() => props.modelValue)\nconst start = computed(() => {\n const time = parseTime(props.start)\n return time ? formatTime(time) : null\n})\n\nconst end = computed(() => {\n const time = parseTime(props.end)\n return time ? formatTime(time) : null\n})\n\nconst step = computed(() => {\n const time = parseTime(props.step)\n return time ? formatTime(time) : null\n})\n\nconst minTime = computed(() => {\n const time = parseTime(props.minTime || '')\n return time ? formatTime(time) : null\n})\n\nconst maxTime = computed(() => {\n const time = parseTime(props.maxTime || '')\n return time ? formatTime(time) : null\n})\n\nconst items = computed(() => {\n const result: { value: string; disabled: boolean }[] = []\n const push = (formattedValue: string, rawValue: string) => {\n result.push({\n value: formattedValue,\n disabled:\n compareTime(rawValue, minTime.value || '-1:-1') <= 0 ||\n compareTime(rawValue, maxTime.value || '100:100') >= 0,\n })\n }\n\n if (props.start && props.end && props.step) {\n let current = start.value\n let currentTime: string\n while (current && end.value && compareTime(current, end.value) <= 0) {\n currentTime = dayjs(current, 'HH:mm')\n .locale(lang.value)\n .format(props.format)\n push(currentTime, current)\n current = nextTime(current, step.value!)\n }\n if (\n props.includeEndTime &&\n end.value &&\n result[result.length - 1]?.value !== end.value\n ) {\n const formattedValue = dayjs(end.value, 'HH:mm')\n .locale(lang.value)\n .format(props.format)\n push(formattedValue, end.value)\n }\n }\n return result\n})\n\nconst blur = () => {\n select.value?.blur?.()\n}\n\nconst focus = () => {\n select.value?.focus?.()\n}\n\ndefineExpose({\n /**\n * @description blur the Input component\n */\n blur,\n /**\n * @description focus the Input component\n */\n focus,\n})\n</script>\n"],"names":["_createBlock","_unref","clearable","clearIcon","size","effect","placeholder","editable","emptyValues","valueOnClear","popperClass","popperStyle","$emit","_withCtx","prefixIcon","_normalizeClass","_openBlock","_resolveDynamicComponent","_createElementBlock","_Fragment","_renderList"],"mappings":"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"}
@@ -1,143 +1,71 @@
1
- import { defineComponent, ref, computed, openBlock, createBlock, unref, withCtx, normalizeClass, resolveDynamicComponent, createCommentVNode, createElementBlock, Fragment, renderList } from 'vue';
2
- import dayjs from 'dayjs';
3
- import customParseFormat from 'dayjs/plugin/customParseFormat.js';
4
- import { ElSelect } from '../../select/index.mjs';
5
- import { ElIcon } from '../../icon/index.mjs';
6
- import { timeSelectProps } from './time-select.mjs';
7
- import { parseTime, formatTime, compareTime, nextTime } from './utils.mjs';
8
- import _export_sfc from '../../../_virtual/plugin-vue_export-helper.mjs';
9
- import { CHANGE_EVENT, UPDATE_MODEL_EVENT } from '../../../constants/event.mjs';
10
- import { useNamespace } from '../../../hooks/use-namespace/index.mjs';
11
- import { useFormDisabled } from '../../form/src/hooks/use-form-common-props.mjs';
12
- import { useLocale } from '../../../hooks/use-locale/index.mjs';
1
+ import { Clock, CircleClose } from '@element-plus/icons-vue';
2
+ import { buildProps, definePropType } from '../../../utils/vue/props/runtime.mjs';
3
+ import { useSizeProp } from '../../../hooks/use-size/index.mjs';
4
+ import { useEmptyValuesProps } from '../../../hooks/use-empty-values/index.mjs';
13
5
 
14
- const _sfc_main = defineComponent({
15
- ...{
16
- name: "ElTimeSelect"
6
+ const timeSelectProps = buildProps({
7
+ format: {
8
+ type: String,
9
+ default: "HH:mm"
17
10
  },
18
- __name: "time-select",
19
- props: timeSelectProps,
20
- emits: [CHANGE_EVENT, "blur", "focus", "clear", UPDATE_MODEL_EVENT],
21
- setup(__props, { expose: __expose }) {
22
- dayjs.extend(customParseFormat);
23
- const { Option: ElOption } = ElSelect;
24
- const props = __props;
25
- const nsInput = useNamespace("input");
26
- const select = ref();
27
- const _disabled = useFormDisabled();
28
- const { lang } = useLocale();
29
- const value = computed(() => props.modelValue);
30
- const start = computed(() => {
31
- const time = parseTime(props.start);
32
- return time ? formatTime(time) : null;
33
- });
34
- const end = computed(() => {
35
- const time = parseTime(props.end);
36
- return time ? formatTime(time) : null;
37
- });
38
- const step = computed(() => {
39
- const time = parseTime(props.step);
40
- return time ? formatTime(time) : null;
41
- });
42
- const minTime = computed(() => {
43
- const time = parseTime(props.minTime || "");
44
- return time ? formatTime(time) : null;
45
- });
46
- const maxTime = computed(() => {
47
- const time = parseTime(props.maxTime || "");
48
- return time ? formatTime(time) : null;
49
- });
50
- const items = computed(() => {
51
- var _a;
52
- const result = [];
53
- const push = (formattedValue, rawValue) => {
54
- result.push({
55
- value: formattedValue,
56
- disabled: compareTime(rawValue, minTime.value || "-1:-1") <= 0 || compareTime(rawValue, maxTime.value || "100:100") >= 0
57
- });
58
- };
59
- if (props.start && props.end && props.step) {
60
- let current = start.value;
61
- let currentTime;
62
- while (current && end.value && compareTime(current, end.value) <= 0) {
63
- currentTime = dayjs(current, "HH:mm").locale(lang.value).format(props.format);
64
- push(currentTime, current);
65
- current = nextTime(current, step.value);
66
- }
67
- if (props.includeEndTime && end.value && ((_a = result[result.length - 1]) == null ? void 0 : _a.value) !== end.value) {
68
- const formattedValue = dayjs(end.value, "HH:mm").locale(lang.value).format(props.format);
69
- push(formattedValue, end.value);
70
- }
71
- }
72
- return result;
73
- });
74
- const blur = () => {
75
- var _a, _b;
76
- (_b = (_a = select.value) == null ? void 0 : _a.blur) == null ? void 0 : _b.call(_a);
77
- };
78
- const focus = () => {
79
- var _a, _b;
80
- (_b = (_a = select.value) == null ? void 0 : _a.focus) == null ? void 0 : _b.call(_a);
81
- };
82
- __expose({
83
- blur,
84
- focus
85
- });
86
- return (_ctx, _cache) => {
87
- return openBlock(), createBlock(unref(ElSelect), {
88
- ref_key: "select",
89
- ref: select,
90
- "model-value": value.value,
91
- disabled: unref(_disabled),
92
- clearable: _ctx.clearable,
93
- "clear-icon": _ctx.clearIcon,
94
- size: _ctx.size,
95
- effect: _ctx.effect,
96
- placeholder: _ctx.placeholder,
97
- "default-first-option": "",
98
- filterable: _ctx.editable,
99
- "empty-values": _ctx.emptyValues,
100
- "value-on-clear": _ctx.valueOnClear,
101
- "popper-class": _ctx.popperClass,
102
- "popper-style": _ctx.popperStyle,
103
- "onUpdate:modelValue": _cache[0] || (_cache[0] = (event) => _ctx.$emit(unref(UPDATE_MODEL_EVENT), event)),
104
- onChange: _cache[1] || (_cache[1] = (event) => _ctx.$emit(unref(CHANGE_EVENT), event)),
105
- onBlur: _cache[2] || (_cache[2] = (event) => _ctx.$emit("blur", event)),
106
- onFocus: _cache[3] || (_cache[3] = (event) => _ctx.$emit("focus", event)),
107
- onClear: _cache[4] || (_cache[4] = () => _ctx.$emit("clear"))
108
- }, {
109
- prefix: withCtx(() => [
110
- _ctx.prefixIcon ? (openBlock(), createBlock(unref(ElIcon), {
111
- key: 0,
112
- class: normalizeClass(unref(nsInput).e("prefix-icon"))
113
- }, {
114
- default: withCtx(() => [
115
- (openBlock(), createBlock(resolveDynamicComponent(_ctx.prefixIcon)))
116
- ]),
117
- _: 1
118
- }, 8, ["class"])) : createCommentVNode("v-if", true)
119
- ]),
120
- default: withCtx(() => [
121
- (openBlock(true), createElementBlock(
122
- Fragment,
123
- null,
124
- renderList(items.value, (item) => {
125
- return openBlock(), createBlock(unref(ElOption), {
126
- key: item.value,
127
- label: item.value,
128
- value: item.value,
129
- disabled: item.disabled
130
- }, null, 8, ["label", "value", "disabled"]);
131
- }),
132
- 128
133
- ))
134
- ]),
135
- _: 1
136
- }, 8, ["model-value", "disabled", "clearable", "clear-icon", "size", "effect", "placeholder", "filterable", "empty-values", "value-on-clear", "popper-class", "popper-style"]);
137
- };
138
- }
11
+ modelValue: {
12
+ type: definePropType(String)
13
+ },
14
+ disabled: {
15
+ type: Boolean,
16
+ default: void 0
17
+ },
18
+ editable: {
19
+ type: Boolean,
20
+ default: true
21
+ },
22
+ effect: {
23
+ type: definePropType(String),
24
+ default: "light"
25
+ },
26
+ clearable: {
27
+ type: Boolean,
28
+ default: true
29
+ },
30
+ size: useSizeProp,
31
+ placeholder: String,
32
+ start: {
33
+ type: String,
34
+ default: "09:00"
35
+ },
36
+ end: {
37
+ type: String,
38
+ default: "18:00"
39
+ },
40
+ step: {
41
+ type: String,
42
+ default: "00:30"
43
+ },
44
+ minTime: {
45
+ type: definePropType(String)
46
+ },
47
+ maxTime: {
48
+ type: definePropType(String)
49
+ },
50
+ includeEndTime: Boolean,
51
+ name: String,
52
+ prefixIcon: {
53
+ type: definePropType([String, Object]),
54
+ default: () => Clock
55
+ },
56
+ clearIcon: {
57
+ type: definePropType([String, Object]),
58
+ default: () => CircleClose
59
+ },
60
+ popperClass: {
61
+ type: String,
62
+ default: ""
63
+ },
64
+ popperStyle: {
65
+ type: definePropType([String, Object])
66
+ },
67
+ ...useEmptyValuesProps
139
68
  });
140
- var TimeSelect = /* @__PURE__ */ _export_sfc(_sfc_main, [["__file", "/home/runner/work/element-plus/element-plus/packages/components/time-select/src/time-select.vue"]]);
141
69
 
142
- export { TimeSelect as default };
70
+ export { timeSelectProps };
143
71
  //# sourceMappingURL=time-select2.mjs.map