@element-plus/nightly 0.0.20240929 → 0.0.20241001

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 (848) hide show
  1. package/attributes.json +1 -1
  2. package/dist/index.css +1 -1
  3. package/dist/index.full.js +27 -11
  4. package/dist/index.full.min.js +2 -2
  5. package/dist/index.full.min.js.map +1 -1
  6. package/dist/index.full.min.mjs +2 -2
  7. package/dist/index.full.min.mjs.map +1 -1
  8. package/dist/index.full.mjs +27 -11
  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-eg.js +1 -1
  14. package/dist/locale/ar-eg.min.js +1 -1
  15. package/dist/locale/ar-eg.min.mjs +1 -1
  16. package/dist/locale/ar-eg.mjs +1 -1
  17. package/dist/locale/ar.js +1 -1
  18. package/dist/locale/ar.min.js +1 -1
  19. package/dist/locale/ar.min.mjs +1 -1
  20. package/dist/locale/ar.mjs +1 -1
  21. package/dist/locale/az.js +1 -1
  22. package/dist/locale/az.min.js +1 -1
  23. package/dist/locale/az.min.mjs +1 -1
  24. package/dist/locale/az.mjs +1 -1
  25. package/dist/locale/bg.js +1 -1
  26. package/dist/locale/bg.min.js +1 -1
  27. package/dist/locale/bg.min.mjs +1 -1
  28. package/dist/locale/bg.mjs +1 -1
  29. package/dist/locale/bn.js +1 -1
  30. package/dist/locale/bn.min.js +1 -1
  31. package/dist/locale/bn.min.mjs +1 -1
  32. package/dist/locale/bn.mjs +1 -1
  33. package/dist/locale/ca.js +1 -1
  34. package/dist/locale/ca.min.js +1 -1
  35. package/dist/locale/ca.min.mjs +1 -1
  36. package/dist/locale/ca.mjs +1 -1
  37. package/dist/locale/ckb.js +1 -1
  38. package/dist/locale/ckb.min.js +1 -1
  39. package/dist/locale/ckb.min.mjs +1 -1
  40. package/dist/locale/ckb.mjs +1 -1
  41. package/dist/locale/cs.js +1 -1
  42. package/dist/locale/cs.min.js +1 -1
  43. package/dist/locale/cs.min.mjs +1 -1
  44. package/dist/locale/cs.mjs +1 -1
  45. package/dist/locale/da.js +1 -1
  46. package/dist/locale/da.min.js +1 -1
  47. package/dist/locale/da.min.mjs +1 -1
  48. package/dist/locale/da.mjs +1 -1
  49. package/dist/locale/de.js +1 -1
  50. package/dist/locale/de.min.js +1 -1
  51. package/dist/locale/de.min.mjs +1 -1
  52. package/dist/locale/de.mjs +1 -1
  53. package/dist/locale/el.js +1 -1
  54. package/dist/locale/el.min.js +1 -1
  55. package/dist/locale/el.min.mjs +1 -1
  56. package/dist/locale/el.mjs +1 -1
  57. package/dist/locale/en.js +1 -1
  58. package/dist/locale/en.min.js +1 -1
  59. package/dist/locale/en.min.mjs +1 -1
  60. package/dist/locale/en.mjs +1 -1
  61. package/dist/locale/eo.js +1 -1
  62. package/dist/locale/eo.min.js +1 -1
  63. package/dist/locale/eo.min.mjs +1 -1
  64. package/dist/locale/eo.mjs +1 -1
  65. package/dist/locale/es.js +1 -1
  66. package/dist/locale/es.min.js +1 -1
  67. package/dist/locale/es.min.mjs +1 -1
  68. package/dist/locale/es.mjs +1 -1
  69. package/dist/locale/et.js +1 -1
  70. package/dist/locale/et.min.js +1 -1
  71. package/dist/locale/et.min.mjs +1 -1
  72. package/dist/locale/et.mjs +1 -1
  73. package/dist/locale/eu.js +1 -1
  74. package/dist/locale/eu.min.js +1 -1
  75. package/dist/locale/eu.min.mjs +1 -1
  76. package/dist/locale/eu.mjs +1 -1
  77. package/dist/locale/fa.js +1 -1
  78. package/dist/locale/fa.min.js +1 -1
  79. package/dist/locale/fa.min.mjs +1 -1
  80. package/dist/locale/fa.mjs +1 -1
  81. package/dist/locale/fi.js +1 -1
  82. package/dist/locale/fi.min.js +1 -1
  83. package/dist/locale/fi.min.mjs +1 -1
  84. package/dist/locale/fi.mjs +1 -1
  85. package/dist/locale/fr.js +1 -1
  86. package/dist/locale/fr.min.js +1 -1
  87. package/dist/locale/fr.min.mjs +1 -1
  88. package/dist/locale/fr.mjs +1 -1
  89. package/dist/locale/he.js +1 -1
  90. package/dist/locale/he.min.js +1 -1
  91. package/dist/locale/he.min.mjs +1 -1
  92. package/dist/locale/he.mjs +1 -1
  93. package/dist/locale/hr.js +1 -1
  94. package/dist/locale/hr.min.js +1 -1
  95. package/dist/locale/hr.min.mjs +1 -1
  96. package/dist/locale/hr.mjs +1 -1
  97. package/dist/locale/hu.js +1 -1
  98. package/dist/locale/hu.min.js +1 -1
  99. package/dist/locale/hu.min.mjs +1 -1
  100. package/dist/locale/hu.mjs +1 -1
  101. package/dist/locale/hy-am.js +1 -1
  102. package/dist/locale/hy-am.min.js +1 -1
  103. package/dist/locale/hy-am.min.mjs +1 -1
  104. package/dist/locale/hy-am.mjs +1 -1
  105. package/dist/locale/id.js +1 -1
  106. package/dist/locale/id.min.js +1 -1
  107. package/dist/locale/id.min.mjs +1 -1
  108. package/dist/locale/id.mjs +1 -1
  109. package/dist/locale/it.js +1 -1
  110. package/dist/locale/it.min.js +1 -1
  111. package/dist/locale/it.min.mjs +1 -1
  112. package/dist/locale/it.mjs +1 -1
  113. package/dist/locale/ja.js +1 -1
  114. package/dist/locale/ja.min.js +1 -1
  115. package/dist/locale/ja.min.mjs +1 -1
  116. package/dist/locale/ja.mjs +1 -1
  117. package/dist/locale/kk.js +1 -1
  118. package/dist/locale/kk.min.js +1 -1
  119. package/dist/locale/kk.min.mjs +1 -1
  120. package/dist/locale/kk.mjs +1 -1
  121. package/dist/locale/km.js +1 -1
  122. package/dist/locale/km.min.js +1 -1
  123. package/dist/locale/km.min.mjs +1 -1
  124. package/dist/locale/km.mjs +1 -1
  125. package/dist/locale/ko.js +1 -1
  126. package/dist/locale/ko.min.js +1 -1
  127. package/dist/locale/ko.min.mjs +1 -1
  128. package/dist/locale/ko.mjs +1 -1
  129. package/dist/locale/ku.js +1 -1
  130. package/dist/locale/ku.min.js +1 -1
  131. package/dist/locale/ku.min.mjs +1 -1
  132. package/dist/locale/ku.mjs +1 -1
  133. package/dist/locale/ky.js +1 -1
  134. package/dist/locale/ky.min.js +1 -1
  135. package/dist/locale/ky.min.mjs +1 -1
  136. package/dist/locale/ky.mjs +1 -1
  137. package/dist/locale/lt.js +1 -1
  138. package/dist/locale/lt.min.js +1 -1
  139. package/dist/locale/lt.min.mjs +1 -1
  140. package/dist/locale/lt.mjs +1 -1
  141. package/dist/locale/lv.js +1 -1
  142. package/dist/locale/lv.min.js +1 -1
  143. package/dist/locale/lv.min.mjs +1 -1
  144. package/dist/locale/lv.mjs +1 -1
  145. package/dist/locale/mg.js +1 -1
  146. package/dist/locale/mg.min.js +1 -1
  147. package/dist/locale/mg.min.mjs +1 -1
  148. package/dist/locale/mg.mjs +1 -1
  149. package/dist/locale/mn.js +1 -1
  150. package/dist/locale/mn.min.js +1 -1
  151. package/dist/locale/mn.min.mjs +1 -1
  152. package/dist/locale/mn.mjs +1 -1
  153. package/dist/locale/my.js +1 -1
  154. package/dist/locale/my.min.js +1 -1
  155. package/dist/locale/my.min.mjs +1 -1
  156. package/dist/locale/my.mjs +1 -1
  157. package/dist/locale/nb-no.js +1 -1
  158. package/dist/locale/nb-no.min.js +1 -1
  159. package/dist/locale/nb-no.min.mjs +1 -1
  160. package/dist/locale/nb-no.mjs +1 -1
  161. package/dist/locale/nl.js +1 -1
  162. package/dist/locale/nl.min.js +1 -1
  163. package/dist/locale/nl.min.mjs +1 -1
  164. package/dist/locale/nl.mjs +1 -1
  165. package/dist/locale/pa.js +1 -1
  166. package/dist/locale/pa.min.js +1 -1
  167. package/dist/locale/pa.min.mjs +1 -1
  168. package/dist/locale/pa.mjs +1 -1
  169. package/dist/locale/pl.js +1 -1
  170. package/dist/locale/pl.min.js +1 -1
  171. package/dist/locale/pl.min.mjs +1 -1
  172. package/dist/locale/pl.mjs +1 -1
  173. package/dist/locale/pt-br.js +1 -1
  174. package/dist/locale/pt-br.min.js +1 -1
  175. package/dist/locale/pt-br.min.mjs +1 -1
  176. package/dist/locale/pt-br.mjs +1 -1
  177. package/dist/locale/pt.js +1 -1
  178. package/dist/locale/pt.min.js +1 -1
  179. package/dist/locale/pt.min.mjs +1 -1
  180. package/dist/locale/pt.mjs +1 -1
  181. package/dist/locale/ro.js +1 -1
  182. package/dist/locale/ro.min.js +1 -1
  183. package/dist/locale/ro.min.mjs +1 -1
  184. package/dist/locale/ro.mjs +1 -1
  185. package/dist/locale/ru.js +1 -1
  186. package/dist/locale/ru.min.js +1 -1
  187. package/dist/locale/ru.min.mjs +1 -1
  188. package/dist/locale/ru.mjs +1 -1
  189. package/dist/locale/sk.js +1 -1
  190. package/dist/locale/sk.min.js +1 -1
  191. package/dist/locale/sk.min.mjs +1 -1
  192. package/dist/locale/sk.mjs +1 -1
  193. package/dist/locale/sl.js +1 -1
  194. package/dist/locale/sl.min.js +1 -1
  195. package/dist/locale/sl.min.mjs +1 -1
  196. package/dist/locale/sl.mjs +1 -1
  197. package/dist/locale/sr.js +1 -1
  198. package/dist/locale/sr.min.js +1 -1
  199. package/dist/locale/sr.min.mjs +1 -1
  200. package/dist/locale/sr.mjs +1 -1
  201. package/dist/locale/sv.js +1 -1
  202. package/dist/locale/sv.min.js +1 -1
  203. package/dist/locale/sv.min.mjs +1 -1
  204. package/dist/locale/sv.mjs +1 -1
  205. package/dist/locale/sw.js +1 -1
  206. package/dist/locale/sw.min.js +1 -1
  207. package/dist/locale/sw.min.mjs +1 -1
  208. package/dist/locale/sw.mjs +1 -1
  209. package/dist/locale/ta.js +1 -1
  210. package/dist/locale/ta.min.js +1 -1
  211. package/dist/locale/ta.min.mjs +1 -1
  212. package/dist/locale/ta.mjs +1 -1
  213. package/dist/locale/th.js +1 -1
  214. package/dist/locale/th.min.js +1 -1
  215. package/dist/locale/th.min.mjs +1 -1
  216. package/dist/locale/th.mjs +1 -1
  217. package/dist/locale/tk.js +1 -1
  218. package/dist/locale/tk.min.js +1 -1
  219. package/dist/locale/tk.min.mjs +1 -1
  220. package/dist/locale/tk.mjs +1 -1
  221. package/dist/locale/tr.js +1 -1
  222. package/dist/locale/tr.min.js +1 -1
  223. package/dist/locale/tr.min.mjs +1 -1
  224. package/dist/locale/tr.mjs +1 -1
  225. package/dist/locale/ug-cn.js +1 -1
  226. package/dist/locale/ug-cn.min.js +1 -1
  227. package/dist/locale/ug-cn.min.mjs +1 -1
  228. package/dist/locale/ug-cn.mjs +1 -1
  229. package/dist/locale/uk.js +1 -1
  230. package/dist/locale/uk.min.js +1 -1
  231. package/dist/locale/uk.min.mjs +1 -1
  232. package/dist/locale/uk.mjs +1 -1
  233. package/dist/locale/uz-uz.js +1 -1
  234. package/dist/locale/uz-uz.min.js +1 -1
  235. package/dist/locale/uz-uz.min.mjs +1 -1
  236. package/dist/locale/uz-uz.mjs +1 -1
  237. package/dist/locale/vi.js +1 -1
  238. package/dist/locale/vi.min.js +1 -1
  239. package/dist/locale/vi.min.mjs +1 -1
  240. package/dist/locale/vi.mjs +1 -1
  241. package/dist/locale/zh-cn.js +1 -1
  242. package/dist/locale/zh-cn.min.js +1 -1
  243. package/dist/locale/zh-cn.min.mjs +1 -1
  244. package/dist/locale/zh-cn.mjs +1 -1
  245. package/dist/locale/zh-tw.js +1 -1
  246. package/dist/locale/zh-tw.min.js +1 -1
  247. package/dist/locale/zh-tw.min.mjs +1 -1
  248. package/dist/locale/zh-tw.mjs +1 -1
  249. package/es/components/affix/index.mjs +2 -2
  250. package/es/components/affix/src/affix.mjs +26 -119
  251. package/es/components/affix/src/affix.mjs.map +1 -1
  252. package/es/components/affix/src/affix2.mjs +119 -26
  253. package/es/components/affix/src/affix2.mjs.map +1 -1
  254. package/es/components/alert/src/alert2.mjs.map +1 -1
  255. package/es/components/anchor/src/anchor-link2.mjs.map +1 -1
  256. package/es/components/anchor/src/anchor2.mjs.map +1 -1
  257. package/es/components/autocomplete/index.mjs +2 -2
  258. package/es/components/autocomplete/src/autocomplete.mjs +367 -81
  259. package/es/components/autocomplete/src/autocomplete.mjs.map +1 -1
  260. package/es/components/autocomplete/src/autocomplete2.mjs +81 -365
  261. package/es/components/autocomplete/src/autocomplete2.mjs.map +1 -1
  262. package/es/components/avatar/src/avatar2.mjs.map +1 -1
  263. package/es/components/backtop/index.mjs +2 -2
  264. package/es/components/backtop/src/backtop.mjs +21 -54
  265. package/es/components/backtop/src/backtop.mjs.map +1 -1
  266. package/es/components/backtop/src/backtop2.mjs +54 -21
  267. package/es/components/backtop/src/backtop2.mjs.map +1 -1
  268. package/es/components/badge/src/badge2.mjs.map +1 -1
  269. package/es/components/breadcrumb/src/breadcrumb-item2.mjs.map +1 -1
  270. package/es/components/breadcrumb/src/breadcrumb2.mjs.map +1 -1
  271. package/es/components/button/src/button-group2.mjs.map +1 -1
  272. package/es/components/button/src/button2.mjs.map +1 -1
  273. package/es/components/calendar/src/calendar2.mjs +6 -2
  274. package/es/components/calendar/src/calendar2.mjs.map +1 -1
  275. package/es/components/calendar/src/date-table2.mjs.map +1 -1
  276. package/es/components/carousel/index.mjs +2 -2
  277. package/es/components/carousel/src/carousel-item.mjs +8 -70
  278. package/es/components/carousel/src/carousel-item.mjs.map +1 -1
  279. package/es/components/carousel/src/carousel-item2.mjs +70 -8
  280. package/es/components/carousel/src/carousel-item2.mjs.map +1 -1
  281. package/es/components/carousel/src/carousel2.mjs.map +1 -1
  282. package/es/components/cascader/src/cascader.mjs +1 -1
  283. package/es/components/cascader/src/cascader2.mjs.map +1 -1
  284. package/es/components/cascader-panel/src/index.mjs.map +1 -1
  285. package/es/components/cascader-panel/src/menu.mjs.map +1 -1
  286. package/es/components/cascader-panel/src/node2.mjs.map +1 -1
  287. package/es/components/check-tag/index.mjs +2 -2
  288. package/es/components/check-tag/src/check-tag.mjs +15 -39
  289. package/es/components/check-tag/src/check-tag.mjs.map +1 -1
  290. package/es/components/check-tag/src/check-tag2.mjs +39 -15
  291. package/es/components/check-tag/src/check-tag2.mjs.map +1 -1
  292. package/es/components/checkbox/index.mjs +2 -2
  293. package/es/components/checkbox/src/checkbox-button.mjs +1 -1
  294. package/es/components/checkbox/src/checkbox-button.mjs.map +1 -1
  295. package/es/components/checkbox/src/checkbox-group2.mjs.map +1 -1
  296. package/es/components/checkbox/src/checkbox.mjs +120 -61
  297. package/es/components/checkbox/src/checkbox.mjs.map +1 -1
  298. package/es/components/checkbox/src/checkbox2.mjs +61 -120
  299. package/es/components/checkbox/src/checkbox2.mjs.map +1 -1
  300. package/es/components/col/src/col2.mjs.map +1 -1
  301. package/es/components/collapse/index.mjs +2 -2
  302. package/es/components/collapse/src/collapse-item.mjs +90 -19
  303. package/es/components/collapse/src/collapse-item.mjs.map +1 -1
  304. package/es/components/collapse/src/collapse-item2.mjs +19 -90
  305. package/es/components/collapse/src/collapse-item2.mjs.map +1 -1
  306. package/es/components/collapse/src/collapse2.mjs.map +1 -1
  307. package/es/components/collapse-transition/src/collapse-transition.mjs.map +1 -1
  308. package/es/components/collection/index.mjs +1 -1
  309. package/es/components/collection/src/collection.mjs +62 -10
  310. package/es/components/collection/src/collection.mjs.map +1 -1
  311. package/es/components/collection/src/collection2.mjs +10 -62
  312. package/es/components/collection/src/collection2.mjs.map +1 -1
  313. package/es/components/color-picker/src/color-picker.mjs +1 -1
  314. package/es/components/color-picker/src/color-picker2.mjs.map +1 -1
  315. package/es/components/color-picker/src/components/alpha-slider.mjs.map +1 -1
  316. package/es/components/color-picker/src/components/hue-slider.mjs.map +1 -1
  317. package/es/components/color-picker/src/components/predefine.mjs.map +1 -1
  318. package/es/components/color-picker/src/components/sv-panel.mjs.map +1 -1
  319. package/es/components/container/src/aside.mjs.map +1 -1
  320. package/es/components/container/src/container.mjs.map +1 -1
  321. package/es/components/container/src/footer.mjs.map +1 -1
  322. package/es/components/container/src/header.mjs.map +1 -1
  323. package/es/components/countdown/src/countdown2.mjs +3 -1
  324. package/es/components/countdown/src/countdown2.mjs.map +1 -1
  325. package/es/components/date-picker/src/date-picker-com/basic-date-table.mjs.map +1 -1
  326. package/es/components/date-picker/src/date-picker-com/basic-month-table.mjs +1 -1
  327. package/es/components/date-picker/src/date-picker-com/basic-month-table.mjs.map +1 -1
  328. package/es/components/date-picker/src/date-picker-com/basic-year-table.mjs.map +1 -1
  329. package/es/components/date-picker/src/date-picker-com/panel-date-pick.mjs.map +1 -1
  330. package/es/components/date-picker/src/date-picker-com/panel-date-range.mjs.map +1 -1
  331. package/es/components/date-picker/src/date-picker-com/panel-month-range.mjs.map +1 -1
  332. package/es/components/date-picker/src/date-picker-com/panel-year-range.mjs.map +1 -1
  333. package/es/components/descriptions/src/description2.mjs.map +1 -1
  334. package/es/components/dialog/src/dialog-content2.mjs.map +1 -1
  335. package/es/components/dialog/src/dialog2.mjs.map +1 -1
  336. package/es/components/divider/index.mjs +2 -2
  337. package/es/components/divider/src/divider.mjs +17 -35
  338. package/es/components/divider/src/divider.mjs.map +1 -1
  339. package/es/components/divider/src/divider2.mjs +35 -17
  340. package/es/components/divider/src/divider2.mjs.map +1 -1
  341. package/es/components/drawer/index.mjs +2 -2
  342. package/es/components/drawer/src/drawer.mjs +27 -181
  343. package/es/components/drawer/src/drawer.mjs.map +1 -1
  344. package/es/components/drawer/src/drawer2.mjs +181 -27
  345. package/es/components/drawer/src/drawer2.mjs.map +1 -1
  346. package/es/components/dropdown/index.mjs +2 -2
  347. package/es/components/dropdown/src/dropdown-item-impl.mjs +2 -2
  348. package/es/components/dropdown/src/dropdown-item-impl.mjs.map +1 -1
  349. package/es/components/dropdown/src/dropdown-item.mjs +1 -1
  350. package/es/components/dropdown/src/dropdown-item.mjs.map +1 -1
  351. package/es/components/dropdown/src/dropdown-menu.mjs +1 -1
  352. package/es/components/dropdown/src/dropdown-menu.mjs.map +1 -1
  353. package/es/components/dropdown/src/dropdown.mjs +304 -94
  354. package/es/components/dropdown/src/dropdown.mjs.map +1 -1
  355. package/es/components/dropdown/src/dropdown2.mjs +94 -304
  356. package/es/components/dropdown/src/dropdown2.mjs.map +1 -1
  357. package/es/components/empty/src/empty2.mjs.map +1 -1
  358. package/es/components/focus-trap/src/focus-trap.mjs.map +1 -1
  359. package/es/components/form/index.mjs +2 -2
  360. package/es/components/form/src/form-item.mjs +48 -321
  361. package/es/components/form/src/form-item.mjs.map +1 -1
  362. package/es/components/form/src/form-item2.mjs +321 -48
  363. package/es/components/form/src/form-item2.mjs.map +1 -1
  364. package/es/components/form/src/form2.mjs.map +1 -1
  365. package/es/components/icon/src/icon2.mjs.map +1 -1
  366. package/es/components/image/src/image2.mjs.map +1 -1
  367. package/es/components/image-viewer/src/image-viewer.mjs.map +1 -1
  368. package/es/components/index.mjs +25 -25
  369. package/es/components/input/index.mjs +2 -2
  370. package/es/components/input/src/input.mjs +445 -103
  371. package/es/components/input/src/input.mjs.map +1 -1
  372. package/es/components/input/src/input2.mjs +103 -445
  373. package/es/components/input/src/input2.mjs.map +1 -1
  374. package/es/components/input-number/src/input-number2.mjs +3 -1
  375. package/es/components/input-number/src/input-number2.mjs.map +1 -1
  376. package/es/components/link/index.mjs +2 -2
  377. package/es/components/link/src/link.mjs +25 -50
  378. package/es/components/link/src/link.mjs.map +1 -1
  379. package/es/components/link/src/link2.mjs +50 -25
  380. package/es/components/link/src/link2.mjs.map +1 -1
  381. package/es/components/mention/src/mention-dropdown2.mjs.map +1 -1
  382. package/es/components/mention/src/mention.mjs +1 -1
  383. package/es/components/mention/src/mention2.mjs +7 -3
  384. package/es/components/mention/src/mention2.mjs.map +1 -1
  385. package/es/components/menu/src/menu-collapse-transition.mjs.map +1 -1
  386. package/es/components/menu/src/menu-item-group2.mjs.map +1 -1
  387. package/es/components/menu/src/menu-item2.mjs.map +1 -1
  388. package/es/components/message/index.mjs +1 -1
  389. package/es/components/message/src/message.mjs +147 -91
  390. package/es/components/message/src/message.mjs.map +1 -1
  391. package/es/components/message/src/message2.mjs +91 -147
  392. package/es/components/message/src/message2.mjs.map +1 -1
  393. package/es/components/message/src/method.mjs +2 -2
  394. package/es/components/message-box/src/index.mjs.map +1 -1
  395. package/es/components/notification/src/notification2.mjs.map +1 -1
  396. package/es/components/page-header/src/page-header2.mjs.map +1 -1
  397. package/es/components/pagination/src/components/jumper.mjs +59 -9
  398. package/es/components/pagination/src/components/jumper.mjs.map +1 -1
  399. package/es/components/pagination/src/components/jumper2.mjs +9 -59
  400. package/es/components/pagination/src/components/jumper2.mjs.map +1 -1
  401. package/es/components/pagination/src/components/next2.mjs.map +1 -1
  402. package/es/components/pagination/src/components/pager.mjs +210 -17
  403. package/es/components/pagination/src/components/pager.mjs.map +1 -1
  404. package/es/components/pagination/src/components/pager2.mjs +17 -210
  405. package/es/components/pagination/src/components/pager2.mjs.map +1 -1
  406. package/es/components/pagination/src/components/prev2.mjs.map +1 -1
  407. package/es/components/pagination/src/components/sizes.mjs +71 -25
  408. package/es/components/pagination/src/components/sizes.mjs.map +1 -1
  409. package/es/components/pagination/src/components/sizes2.mjs +25 -71
  410. package/es/components/pagination/src/components/sizes2.mjs.map +1 -1
  411. package/es/components/pagination/src/components/total.mjs +7 -27
  412. package/es/components/pagination/src/components/total.mjs.map +1 -1
  413. package/es/components/pagination/src/components/total2.mjs +27 -7
  414. package/es/components/pagination/src/components/total2.mjs.map +1 -1
  415. package/es/components/pagination/src/pagination.mjs +4 -4
  416. package/es/components/popconfirm/src/popconfirm.mjs +1 -1
  417. package/es/components/popconfirm/src/popconfirm2.mjs.map +1 -1
  418. package/es/components/popover/src/popover.mjs +3 -3
  419. package/es/components/popover/src/popover2.mjs.map +1 -1
  420. package/es/components/popper/src/arrow2.mjs.map +1 -1
  421. package/es/components/popper/src/content2.mjs.map +1 -1
  422. package/es/components/popper/src/popper2.mjs.map +1 -1
  423. package/es/components/popper/src/trigger2.mjs.map +1 -1
  424. package/es/components/progress/src/progress2.mjs.map +1 -1
  425. package/es/components/radio/index.mjs +4 -4
  426. package/es/components/radio/src/radio-button.mjs +66 -6
  427. package/es/components/radio/src/radio-button.mjs.map +1 -1
  428. package/es/components/radio/src/radio-button2.mjs +6 -66
  429. package/es/components/radio/src/radio-button2.mjs.map +1 -1
  430. package/es/components/radio/src/radio-group.mjs +35 -68
  431. package/es/components/radio/src/radio-group.mjs.map +1 -1
  432. package/es/components/radio/src/radio-group2.mjs +68 -35
  433. package/es/components/radio/src/radio-group2.mjs.map +1 -1
  434. package/es/components/radio/src/radio2.mjs.map +1 -1
  435. package/es/components/rate/src/rate2.mjs.map +1 -1
  436. package/es/components/result/index.mjs +2 -2
  437. package/es/components/result/src/result.mjs +63 -29
  438. package/es/components/result/src/result.mjs.map +1 -1
  439. package/es/components/result/src/result2.mjs +29 -63
  440. package/es/components/result/src/result2.mjs.map +1 -1
  441. package/es/components/roving-focus-group/src/roving-focus-group-impl.mjs.map +1 -1
  442. package/es/components/roving-focus-group/src/roving-focus-group.mjs +1 -1
  443. package/es/components/roving-focus-group/src/roving-focus-group2.mjs.map +1 -1
  444. package/es/components/roving-focus-group/src/roving-focus-item.mjs.map +1 -1
  445. package/es/components/row/src/row2.mjs.map +1 -1
  446. package/es/components/scrollbar/src/bar2.mjs.map +1 -1
  447. package/es/components/scrollbar/src/scrollbar2.mjs.map +1 -1
  448. package/es/components/scrollbar/src/thumb2.mjs.map +1 -1
  449. package/es/components/segmented/index.mjs +2 -2
  450. package/es/components/segmented/src/segmented.mjs +30 -158
  451. package/es/components/segmented/src/segmented.mjs.map +1 -1
  452. package/es/components/segmented/src/segmented2.mjs +158 -30
  453. package/es/components/segmented/src/segmented2.mjs.map +1 -1
  454. package/es/components/select/index.mjs +1 -1
  455. package/es/components/select/src/option-group.mjs.map +1 -1
  456. package/es/components/select/src/option.mjs.map +1 -1
  457. package/es/components/select/src/select-dropdown.mjs.map +1 -1
  458. package/es/components/select/src/select.mjs +104 -412
  459. package/es/components/select/src/select.mjs.map +1 -1
  460. package/es/components/select/src/select2.mjs +412 -104
  461. package/es/components/select/src/select2.mjs.map +1 -1
  462. package/es/components/select-v2/src/defaults.mjs +1 -1
  463. package/es/components/select-v2/src/group-item.mjs.map +1 -1
  464. package/es/components/select-v2/src/option-item.mjs.map +1 -1
  465. package/es/components/select-v2/src/select.mjs.map +1 -1
  466. package/es/components/skeleton/src/skeleton2.mjs.map +1 -1
  467. package/es/components/slider/index.mjs +2 -2
  468. package/es/components/slider/src/button2.mjs.map +1 -1
  469. package/es/components/slider/src/slider.mjs +90 -240
  470. package/es/components/slider/src/slider.mjs.map +1 -1
  471. package/es/components/slider/src/slider2.mjs +240 -90
  472. package/es/components/slider/src/slider2.mjs.map +1 -1
  473. package/es/components/statistic/index.mjs +2 -2
  474. package/es/components/statistic/src/statistic.mjs +25 -70
  475. package/es/components/statistic/src/statistic.mjs.map +1 -1
  476. package/es/components/statistic/src/statistic2.mjs +70 -25
  477. package/es/components/statistic/src/statistic2.mjs.map +1 -1
  478. package/es/components/steps/src/item.mjs.map +1 -1
  479. package/es/components/steps/src/steps2.mjs.map +1 -1
  480. package/es/components/switch/src/switch2.mjs.map +1 -1
  481. package/es/components/table/src/filter-panel.mjs.map +1 -1
  482. package/es/components/table/src/table.mjs.map +1 -1
  483. package/es/components/tabs/src/tab-bar2.mjs.map +1 -1
  484. package/es/components/tabs/src/tab-pane2.mjs.map +1 -1
  485. package/es/components/tag/src/tag2.mjs.map +1 -1
  486. package/es/components/time-picker/src/common/picker.mjs.map +1 -1
  487. package/es/components/time-picker/src/time-picker-com/basic-time-spinner.mjs.map +1 -1
  488. package/es/components/time-picker/src/time-picker-com/panel-time-pick.mjs.map +1 -1
  489. package/es/components/time-picker/src/time-picker-com/panel-time-range.mjs.map +1 -1
  490. package/es/components/time-select/src/time-select2.mjs.map +1 -1
  491. package/es/components/tooltip/index.mjs +4 -4
  492. package/es/components/tooltip/src/content.mjs +183 -29
  493. package/es/components/tooltip/src/content.mjs.map +1 -1
  494. package/es/components/tooltip/src/content2.mjs +29 -183
  495. package/es/components/tooltip/src/content2.mjs.map +1 -1
  496. package/es/components/tooltip/src/tooltip.mjs +168 -31
  497. package/es/components/tooltip/src/tooltip.mjs.map +1 -1
  498. package/es/components/tooltip/src/tooltip2.mjs +31 -168
  499. package/es/components/tooltip/src/tooltip2.mjs.map +1 -1
  500. package/es/components/tooltip/src/trigger.mjs +73 -16
  501. package/es/components/tooltip/src/trigger.mjs.map +1 -1
  502. package/es/components/tooltip/src/trigger2.mjs +16 -73
  503. package/es/components/tooltip/src/trigger2.mjs.map +1 -1
  504. package/es/components/tooltip-v2/index.mjs +2 -2
  505. package/es/components/tooltip-v2/src/arrow2.mjs.map +1 -1
  506. package/es/components/tooltip-v2/src/content2.mjs.map +1 -1
  507. package/es/components/tooltip-v2/src/root2.mjs.map +1 -1
  508. package/es/components/tooltip-v2/src/tooltip.mjs +20 -77
  509. package/es/components/tooltip-v2/src/tooltip.mjs.map +1 -1
  510. package/es/components/tooltip-v2/src/tooltip2.mjs +77 -20
  511. package/es/components/tooltip-v2/src/tooltip2.mjs.map +1 -1
  512. package/es/components/tooltip-v2/src/trigger2.mjs.map +1 -1
  513. package/es/components/tour/src/content2.mjs.map +1 -1
  514. package/es/components/tour/src/mask2.mjs.map +1 -1
  515. package/es/components/tour/src/step2.mjs.map +1 -1
  516. package/es/components/tour/src/tour2.mjs.map +1 -1
  517. package/es/components/transfer/index.mjs +2 -2
  518. package/es/components/transfer/src/composables/use-checked-change.mjs +1 -1
  519. package/es/components/transfer/src/transfer-panel.mjs +1 -1
  520. package/es/components/transfer/src/transfer-panel2.mjs.map +1 -1
  521. package/es/components/transfer/src/transfer.mjs +158 -69
  522. package/es/components/transfer/src/transfer.mjs.map +1 -1
  523. package/es/components/transfer/src/transfer.vue.d.ts +9 -9
  524. package/es/components/transfer/src/transfer2.mjs +69 -158
  525. package/es/components/transfer/src/transfer2.mjs.map +1 -1
  526. package/es/components/tree/src/tree-node-content.mjs.map +1 -1
  527. package/es/components/tree/src/tree-node.mjs.map +1 -1
  528. package/es/components/tree/src/tree.mjs.map +1 -1
  529. package/es/components/tree-select/src/tree-select.mjs.map +1 -1
  530. package/es/components/tree-v2/src/tree.mjs.map +1 -1
  531. package/es/components/upload/src/upload-content2.mjs.map +1 -1
  532. package/es/components/upload/src/upload-dragger2.mjs.map +1 -1
  533. package/es/components/upload/src/upload-list2.mjs.map +1 -1
  534. package/es/components/upload/src/upload2.mjs +3 -1
  535. package/es/components/upload/src/upload2.mjs.map +1 -1
  536. package/es/components/watermark/index.mjs +2 -2
  537. package/es/components/watermark/src/watermark.mjs +209 -28
  538. package/es/components/watermark/src/watermark.mjs.map +1 -1
  539. package/es/components/watermark/src/watermark2.mjs +28 -209
  540. package/es/components/watermark/src/watermark2.mjs.map +1 -1
  541. package/es/index.mjs +25 -25
  542. package/es/version.d.ts +1 -1
  543. package/es/version.mjs +1 -1
  544. package/es/version.mjs.map +1 -1
  545. package/lib/components/affix/index.js +2 -2
  546. package/lib/components/affix/src/affix.js +27 -119
  547. package/lib/components/affix/src/affix.js.map +1 -1
  548. package/lib/components/affix/src/affix2.js +119 -27
  549. package/lib/components/affix/src/affix2.js.map +1 -1
  550. package/lib/components/alert/src/alert2.js.map +1 -1
  551. package/lib/components/anchor/src/anchor-link2.js.map +1 -1
  552. package/lib/components/anchor/src/anchor2.js.map +1 -1
  553. package/lib/components/autocomplete/index.js +2 -2
  554. package/lib/components/autocomplete/src/autocomplete.js +365 -80
  555. package/lib/components/autocomplete/src/autocomplete.js.map +1 -1
  556. package/lib/components/autocomplete/src/autocomplete2.js +80 -363
  557. package/lib/components/autocomplete/src/autocomplete2.js.map +1 -1
  558. package/lib/components/avatar/src/avatar2.js.map +1 -1
  559. package/lib/components/backtop/index.js +2 -2
  560. package/lib/components/backtop/src/backtop.js +22 -54
  561. package/lib/components/backtop/src/backtop.js.map +1 -1
  562. package/lib/components/backtop/src/backtop2.js +54 -22
  563. package/lib/components/backtop/src/backtop2.js.map +1 -1
  564. package/lib/components/badge/src/badge2.js.map +1 -1
  565. package/lib/components/breadcrumb/src/breadcrumb-item2.js.map +1 -1
  566. package/lib/components/breadcrumb/src/breadcrumb2.js.map +1 -1
  567. package/lib/components/button/src/button-group2.js.map +1 -1
  568. package/lib/components/button/src/button2.js.map +1 -1
  569. package/lib/components/calendar/src/calendar2.js +6 -2
  570. package/lib/components/calendar/src/calendar2.js.map +1 -1
  571. package/lib/components/calendar/src/date-table2.js.map +1 -1
  572. package/lib/components/carousel/index.js +2 -2
  573. package/lib/components/carousel/src/carousel-item.js +8 -70
  574. package/lib/components/carousel/src/carousel-item.js.map +1 -1
  575. package/lib/components/carousel/src/carousel-item2.js +70 -8
  576. package/lib/components/carousel/src/carousel-item2.js.map +1 -1
  577. package/lib/components/carousel/src/carousel2.js.map +1 -1
  578. package/lib/components/cascader/src/cascader.js +1 -1
  579. package/lib/components/cascader/src/cascader2.js.map +1 -1
  580. package/lib/components/cascader-panel/src/index.js.map +1 -1
  581. package/lib/components/cascader-panel/src/menu.js.map +1 -1
  582. package/lib/components/cascader-panel/src/node2.js.map +1 -1
  583. package/lib/components/check-tag/index.js +2 -2
  584. package/lib/components/check-tag/src/check-tag.js +16 -39
  585. package/lib/components/check-tag/src/check-tag.js.map +1 -1
  586. package/lib/components/check-tag/src/check-tag2.js +39 -16
  587. package/lib/components/check-tag/src/check-tag2.js.map +1 -1
  588. package/lib/components/checkbox/index.js +2 -2
  589. package/lib/components/checkbox/src/checkbox-button.js +1 -1
  590. package/lib/components/checkbox/src/checkbox-button.js.map +1 -1
  591. package/lib/components/checkbox/src/checkbox-group2.js.map +1 -1
  592. package/lib/components/checkbox/src/checkbox.js +120 -62
  593. package/lib/components/checkbox/src/checkbox.js.map +1 -1
  594. package/lib/components/checkbox/src/checkbox2.js +62 -120
  595. package/lib/components/checkbox/src/checkbox2.js.map +1 -1
  596. package/lib/components/col/src/col2.js.map +1 -1
  597. package/lib/components/collapse/index.js +2 -2
  598. package/lib/components/collapse/src/collapse-item.js +90 -19
  599. package/lib/components/collapse/src/collapse-item.js.map +1 -1
  600. package/lib/components/collapse/src/collapse-item2.js +19 -90
  601. package/lib/components/collapse/src/collapse-item2.js.map +1 -1
  602. package/lib/components/collapse/src/collapse2.js.map +1 -1
  603. package/lib/components/collapse-transition/src/collapse-transition.js.map +1 -1
  604. package/lib/components/collection/index.js +1 -1
  605. package/lib/components/collection/src/collection.js +62 -9
  606. package/lib/components/collection/src/collection.js.map +1 -1
  607. package/lib/components/collection/src/collection2.js +9 -62
  608. package/lib/components/collection/src/collection2.js.map +1 -1
  609. package/lib/components/color-picker/src/color-picker.js +1 -1
  610. package/lib/components/color-picker/src/color-picker2.js.map +1 -1
  611. package/lib/components/color-picker/src/components/alpha-slider.js.map +1 -1
  612. package/lib/components/color-picker/src/components/hue-slider.js.map +1 -1
  613. package/lib/components/color-picker/src/components/predefine.js.map +1 -1
  614. package/lib/components/color-picker/src/components/sv-panel.js.map +1 -1
  615. package/lib/components/container/src/aside.js.map +1 -1
  616. package/lib/components/container/src/container.js.map +1 -1
  617. package/lib/components/container/src/footer.js.map +1 -1
  618. package/lib/components/container/src/header.js.map +1 -1
  619. package/lib/components/countdown/src/countdown2.js +3 -1
  620. package/lib/components/countdown/src/countdown2.js.map +1 -1
  621. package/lib/components/date-picker/src/date-picker-com/basic-date-table.js.map +1 -1
  622. package/lib/components/date-picker/src/date-picker-com/basic-month-table.js +1 -1
  623. package/lib/components/date-picker/src/date-picker-com/basic-month-table.js.map +1 -1
  624. package/lib/components/date-picker/src/date-picker-com/basic-year-table.js.map +1 -1
  625. package/lib/components/date-picker/src/date-picker-com/panel-date-pick.js.map +1 -1
  626. package/lib/components/date-picker/src/date-picker-com/panel-date-range.js.map +1 -1
  627. package/lib/components/date-picker/src/date-picker-com/panel-month-range.js.map +1 -1
  628. package/lib/components/date-picker/src/date-picker-com/panel-year-range.js.map +1 -1
  629. package/lib/components/descriptions/src/description2.js.map +1 -1
  630. package/lib/components/dialog/src/dialog-content2.js.map +1 -1
  631. package/lib/components/dialog/src/dialog2.js.map +1 -1
  632. package/lib/components/divider/index.js +2 -2
  633. package/lib/components/divider/src/divider.js +17 -35
  634. package/lib/components/divider/src/divider.js.map +1 -1
  635. package/lib/components/divider/src/divider2.js +35 -17
  636. package/lib/components/divider/src/divider2.js.map +1 -1
  637. package/lib/components/drawer/index.js +2 -2
  638. package/lib/components/drawer/src/drawer.js +28 -181
  639. package/lib/components/drawer/src/drawer.js.map +1 -1
  640. package/lib/components/drawer/src/drawer2.js +181 -28
  641. package/lib/components/drawer/src/drawer2.js.map +1 -1
  642. package/lib/components/dropdown/index.js +2 -2
  643. package/lib/components/dropdown/src/dropdown-item-impl.js +2 -2
  644. package/lib/components/dropdown/src/dropdown-item-impl.js.map +1 -1
  645. package/lib/components/dropdown/src/dropdown-item.js +1 -1
  646. package/lib/components/dropdown/src/dropdown-item.js.map +1 -1
  647. package/lib/components/dropdown/src/dropdown-menu.js +1 -1
  648. package/lib/components/dropdown/src/dropdown-menu.js.map +1 -1
  649. package/lib/components/dropdown/src/dropdown.js +304 -103
  650. package/lib/components/dropdown/src/dropdown.js.map +1 -1
  651. package/lib/components/dropdown/src/dropdown2.js +103 -304
  652. package/lib/components/dropdown/src/dropdown2.js.map +1 -1
  653. package/lib/components/empty/src/empty2.js.map +1 -1
  654. package/lib/components/focus-trap/src/focus-trap.js.map +1 -1
  655. package/lib/components/form/index.js +2 -2
  656. package/lib/components/form/src/form-item.js +49 -325
  657. package/lib/components/form/src/form-item.js.map +1 -1
  658. package/lib/components/form/src/form-item2.js +325 -49
  659. package/lib/components/form/src/form-item2.js.map +1 -1
  660. package/lib/components/form/src/form2.js.map +1 -1
  661. package/lib/components/icon/src/icon2.js.map +1 -1
  662. package/lib/components/image/src/image2.js.map +1 -1
  663. package/lib/components/image-viewer/src/image-viewer.js.map +1 -1
  664. package/lib/components/index.js +25 -25
  665. package/lib/components/input/index.js +2 -2
  666. package/lib/components/input/src/input.js +444 -103
  667. package/lib/components/input/src/input.js.map +1 -1
  668. package/lib/components/input/src/input2.js +103 -444
  669. package/lib/components/input/src/input2.js.map +1 -1
  670. package/lib/components/input-number/src/input-number2.js +3 -1
  671. package/lib/components/input-number/src/input-number2.js.map +1 -1
  672. package/lib/components/link/index.js +2 -2
  673. package/lib/components/link/src/link.js +26 -50
  674. package/lib/components/link/src/link.js.map +1 -1
  675. package/lib/components/link/src/link2.js +50 -26
  676. package/lib/components/link/src/link2.js.map +1 -1
  677. package/lib/components/mention/src/mention-dropdown2.js.map +1 -1
  678. package/lib/components/mention/src/mention.js +1 -1
  679. package/lib/components/mention/src/mention2.js +7 -3
  680. package/lib/components/mention/src/mention2.js.map +1 -1
  681. package/lib/components/menu/src/menu-collapse-transition.js.map +1 -1
  682. package/lib/components/menu/src/menu-item-group2.js.map +1 -1
  683. package/lib/components/menu/src/menu-item2.js.map +1 -1
  684. package/lib/components/message/index.js +1 -1
  685. package/lib/components/message/src/message.js +146 -93
  686. package/lib/components/message/src/message.js.map +1 -1
  687. package/lib/components/message/src/message2.js +93 -146
  688. package/lib/components/message/src/message2.js.map +1 -1
  689. package/lib/components/message/src/method.js +2 -2
  690. package/lib/components/message-box/src/index.js.map +1 -1
  691. package/lib/components/notification/src/notification2.js.map +1 -1
  692. package/lib/components/page-header/src/page-header2.js.map +1 -1
  693. package/lib/components/pagination/src/components/jumper.js +59 -9
  694. package/lib/components/pagination/src/components/jumper.js.map +1 -1
  695. package/lib/components/pagination/src/components/jumper2.js +9 -59
  696. package/lib/components/pagination/src/components/jumper2.js.map +1 -1
  697. package/lib/components/pagination/src/components/next2.js.map +1 -1
  698. package/lib/components/pagination/src/components/pager.js +210 -17
  699. package/lib/components/pagination/src/components/pager.js.map +1 -1
  700. package/lib/components/pagination/src/components/pager2.js +17 -210
  701. package/lib/components/pagination/src/components/pager2.js.map +1 -1
  702. package/lib/components/pagination/src/components/prev2.js.map +1 -1
  703. package/lib/components/pagination/src/components/sizes.js +71 -25
  704. package/lib/components/pagination/src/components/sizes.js.map +1 -1
  705. package/lib/components/pagination/src/components/sizes2.js +25 -71
  706. package/lib/components/pagination/src/components/sizes2.js.map +1 -1
  707. package/lib/components/pagination/src/components/total.js +7 -27
  708. package/lib/components/pagination/src/components/total.js.map +1 -1
  709. package/lib/components/pagination/src/components/total2.js +27 -7
  710. package/lib/components/pagination/src/components/total2.js.map +1 -1
  711. package/lib/components/pagination/src/pagination.js +4 -4
  712. package/lib/components/popconfirm/src/popconfirm.js +1 -1
  713. package/lib/components/popconfirm/src/popconfirm2.js.map +1 -1
  714. package/lib/components/popover/src/popover.js +3 -3
  715. package/lib/components/popover/src/popover2.js.map +1 -1
  716. package/lib/components/popper/src/arrow2.js.map +1 -1
  717. package/lib/components/popper/src/content2.js.map +1 -1
  718. package/lib/components/popper/src/popper2.js.map +1 -1
  719. package/lib/components/popper/src/trigger2.js.map +1 -1
  720. package/lib/components/progress/src/progress2.js.map +1 -1
  721. package/lib/components/radio/index.js +4 -4
  722. package/lib/components/radio/src/radio-button.js +66 -6
  723. package/lib/components/radio/src/radio-button.js.map +1 -1
  724. package/lib/components/radio/src/radio-button2.js +6 -66
  725. package/lib/components/radio/src/radio-button2.js.map +1 -1
  726. package/lib/components/radio/src/radio-group.js +36 -68
  727. package/lib/components/radio/src/radio-group.js.map +1 -1
  728. package/lib/components/radio/src/radio-group2.js +68 -36
  729. package/lib/components/radio/src/radio-group2.js.map +1 -1
  730. package/lib/components/radio/src/radio2.js.map +1 -1
  731. package/lib/components/rate/src/rate2.js.map +1 -1
  732. package/lib/components/result/index.js +2 -2
  733. package/lib/components/result/src/result.js +63 -31
  734. package/lib/components/result/src/result.js.map +1 -1
  735. package/lib/components/result/src/result2.js +31 -63
  736. package/lib/components/result/src/result2.js.map +1 -1
  737. package/lib/components/roving-focus-group/src/roving-focus-group-impl.js.map +1 -1
  738. package/lib/components/roving-focus-group/src/roving-focus-group.js +1 -1
  739. package/lib/components/roving-focus-group/src/roving-focus-group2.js.map +1 -1
  740. package/lib/components/roving-focus-group/src/roving-focus-item.js.map +1 -1
  741. package/lib/components/row/src/row2.js.map +1 -1
  742. package/lib/components/scrollbar/src/bar2.js.map +1 -1
  743. package/lib/components/scrollbar/src/scrollbar2.js.map +1 -1
  744. package/lib/components/scrollbar/src/thumb2.js.map +1 -1
  745. package/lib/components/segmented/index.js +2 -2
  746. package/lib/components/segmented/src/segmented.js +30 -157
  747. package/lib/components/segmented/src/segmented.js.map +1 -1
  748. package/lib/components/segmented/src/segmented2.js +157 -30
  749. package/lib/components/segmented/src/segmented2.js.map +1 -1
  750. package/lib/components/select/index.js +1 -1
  751. package/lib/components/select/src/option-group.js.map +1 -1
  752. package/lib/components/select/src/option.js.map +1 -1
  753. package/lib/components/select/src/select-dropdown.js.map +1 -1
  754. package/lib/components/select/src/select.js +104 -412
  755. package/lib/components/select/src/select.js.map +1 -1
  756. package/lib/components/select/src/select2.js +412 -104
  757. package/lib/components/select/src/select2.js.map +1 -1
  758. package/lib/components/select-v2/src/defaults.js +1 -1
  759. package/lib/components/select-v2/src/group-item.js.map +1 -1
  760. package/lib/components/select-v2/src/option-item.js.map +1 -1
  761. package/lib/components/select-v2/src/select.js.map +1 -1
  762. package/lib/components/skeleton/src/skeleton2.js.map +1 -1
  763. package/lib/components/slider/index.js +2 -2
  764. package/lib/components/slider/src/button2.js.map +1 -1
  765. package/lib/components/slider/src/slider.js +91 -240
  766. package/lib/components/slider/src/slider.js.map +1 -1
  767. package/lib/components/slider/src/slider2.js +240 -91
  768. package/lib/components/slider/src/slider2.js.map +1 -1
  769. package/lib/components/statistic/index.js +2 -2
  770. package/lib/components/statistic/src/statistic.js +25 -70
  771. package/lib/components/statistic/src/statistic.js.map +1 -1
  772. package/lib/components/statistic/src/statistic2.js +70 -25
  773. package/lib/components/statistic/src/statistic2.js.map +1 -1
  774. package/lib/components/steps/src/item.js.map +1 -1
  775. package/lib/components/steps/src/steps2.js.map +1 -1
  776. package/lib/components/switch/src/switch2.js.map +1 -1
  777. package/lib/components/table/src/filter-panel.js.map +1 -1
  778. package/lib/components/table/src/table.js.map +1 -1
  779. package/lib/components/tabs/src/tab-bar2.js.map +1 -1
  780. package/lib/components/tabs/src/tab-pane2.js.map +1 -1
  781. package/lib/components/tag/src/tag2.js.map +1 -1
  782. package/lib/components/time-picker/src/common/picker.js.map +1 -1
  783. package/lib/components/time-picker/src/time-picker-com/basic-time-spinner.js.map +1 -1
  784. package/lib/components/time-picker/src/time-picker-com/panel-time-pick.js.map +1 -1
  785. package/lib/components/time-picker/src/time-picker-com/panel-time-range.js.map +1 -1
  786. package/lib/components/time-select/src/time-select2.js.map +1 -1
  787. package/lib/components/tooltip/index.js +4 -4
  788. package/lib/components/tooltip/src/content.js +183 -29
  789. package/lib/components/tooltip/src/content.js.map +1 -1
  790. package/lib/components/tooltip/src/content2.js +29 -183
  791. package/lib/components/tooltip/src/content2.js.map +1 -1
  792. package/lib/components/tooltip/src/tooltip.js +167 -34
  793. package/lib/components/tooltip/src/tooltip.js.map +1 -1
  794. package/lib/components/tooltip/src/tooltip2.js +34 -167
  795. package/lib/components/tooltip/src/tooltip2.js.map +1 -1
  796. package/lib/components/tooltip/src/trigger.js +73 -16
  797. package/lib/components/tooltip/src/trigger.js.map +1 -1
  798. package/lib/components/tooltip/src/trigger2.js +16 -73
  799. package/lib/components/tooltip/src/trigger2.js.map +1 -1
  800. package/lib/components/tooltip-v2/index.js +2 -2
  801. package/lib/components/tooltip-v2/src/arrow2.js.map +1 -1
  802. package/lib/components/tooltip-v2/src/content2.js.map +1 -1
  803. package/lib/components/tooltip-v2/src/root2.js.map +1 -1
  804. package/lib/components/tooltip-v2/src/tooltip.js +20 -77
  805. package/lib/components/tooltip-v2/src/tooltip.js.map +1 -1
  806. package/lib/components/tooltip-v2/src/tooltip2.js +77 -20
  807. package/lib/components/tooltip-v2/src/tooltip2.js.map +1 -1
  808. package/lib/components/tooltip-v2/src/trigger2.js.map +1 -1
  809. package/lib/components/tour/src/content2.js.map +1 -1
  810. package/lib/components/tour/src/mask2.js.map +1 -1
  811. package/lib/components/tour/src/step2.js.map +1 -1
  812. package/lib/components/tour/src/tour2.js.map +1 -1
  813. package/lib/components/transfer/index.js +2 -2
  814. package/lib/components/transfer/src/composables/use-checked-change.js +1 -1
  815. package/lib/components/transfer/src/transfer-panel.js +1 -1
  816. package/lib/components/transfer/src/transfer-panel2.js.map +1 -1
  817. package/lib/components/transfer/src/transfer.js +158 -73
  818. package/lib/components/transfer/src/transfer.js.map +1 -1
  819. package/lib/components/transfer/src/transfer.vue.d.ts +9 -9
  820. package/lib/components/transfer/src/transfer2.js +73 -158
  821. package/lib/components/transfer/src/transfer2.js.map +1 -1
  822. package/lib/components/tree/src/tree-node-content.js.map +1 -1
  823. package/lib/components/tree/src/tree-node.js.map +1 -1
  824. package/lib/components/tree/src/tree.js.map +1 -1
  825. package/lib/components/tree-select/src/tree-select.js.map +1 -1
  826. package/lib/components/tree-v2/src/tree.js.map +1 -1
  827. package/lib/components/upload/src/upload-content2.js.map +1 -1
  828. package/lib/components/upload/src/upload-dragger2.js.map +1 -1
  829. package/lib/components/upload/src/upload-list2.js.map +1 -1
  830. package/lib/components/upload/src/upload2.js +3 -1
  831. package/lib/components/upload/src/upload2.js.map +1 -1
  832. package/lib/components/watermark/index.js +2 -2
  833. package/lib/components/watermark/src/watermark.js +209 -28
  834. package/lib/components/watermark/src/watermark.js.map +1 -1
  835. package/lib/components/watermark/src/watermark2.js +28 -209
  836. package/lib/components/watermark/src/watermark2.js.map +1 -1
  837. package/lib/index.js +25 -25
  838. package/lib/version.d.ts +1 -1
  839. package/lib/version.js +1 -1
  840. package/lib/version.js.map +1 -1
  841. package/package.json +2 -2
  842. package/theme-chalk/base.css +1 -1
  843. package/theme-chalk/dark/css-vars.css +1 -1
  844. package/theme-chalk/el-var.css +1 -1
  845. package/theme-chalk/index.css +1 -1
  846. package/theme-chalk/src/color/index.scss +6 -3
  847. package/theme-chalk/src/mixins/_var.scss +4 -3
  848. package/web-types.json +1 -1
@@ -1 +1 @@
1
- {"version":3,"file":"alpha-slider.mjs","sources":["../../../../../../../packages/components/color-picker/src/components/alpha-slider.vue"],"sourcesContent":["<template>\n <div :class=\"rootKls\">\n <div ref=\"bar\" :class=\"barKls\" :style=\"barStyle\" @click=\"handleClick\" />\n <div\n ref=\"thumb\"\n :class=\"thumbKls\"\n :style=\"thumbStyle\"\n :aria-label=\"alphaLabel\"\n :aria-valuenow=\"alpha\"\n :aria-orientation=\"vertical ? 'vertical' : 'horizontal'\"\n aria-valuemin=\"0\"\n aria-valuemax=\"100\"\n role=\"slider\"\n tabindex=\"0\"\n @keydown=\"handleKeydown\"\n />\n </div>\n</template>\n\n<script lang=\"ts\" setup>\nimport { alphaSliderProps } from '../props/alpha-slider'\nimport {\n useAlphaSlider,\n useAlphaSliderDOM,\n} from '../composables/use-alpha-slider'\n\nconst COMPONENT_NAME = 'ElColorAlphaSlider'\n\ndefineOptions({\n name: COMPONENT_NAME,\n})\n\nconst props = defineProps(alphaSliderProps)\n\nconst {\n alpha,\n alphaLabel,\n bar,\n thumb,\n handleDrag,\n handleClick,\n handleKeydown,\n} = useAlphaSlider(props)\n\nconst { rootKls, barKls, barStyle, thumbKls, thumbStyle, update } =\n useAlphaSliderDOM(props, {\n bar,\n thumb,\n handleDrag,\n })\n\ndefineExpose({\n /**\n * @description update alpha slider manually\n * @type {Function}\n */\n update,\n /**\n * @description bar element ref\n * @type {HTMLElement}\n */\n bar,\n /**\n * @description thumb element ref\n * @type {HTMLElement}\n */\n thumb,\n})\n</script>\n"],"names":[],"mappings":";;;;;;mCA4Bc,CAAA;AAAA,EACZ,IAAM,EAAA,cAAA;AACR;;;;;;AAIA,IAAM,MAAA;AAAA,MACJ,KAAA;AAAA,MACA,UAAA;AAAA,MACA,GAAA;AAAA,MACA,KAAA;AAAA,MACA,UAAA;AAAA,MACA,WAAA;AAAA,MACA,aAAA;AAAA,KAAA,GACE,eAAe,KAAK,CAAA,CAAA;AAExB,IAAM,MAAA,EAAE,SAAS,MAAQ,EAAA,QAAA,EAAU,UAAU,UAAY,EAAA,MAAA,EAAA,GACvD,kBAAkB,KAAO,EAAA;AAAA,MACvB,GAAA;AAAA,MACA,KAAA;AAAA,MACA,UAAA;AAAA,KACD,CAAA,CAAA;AAEH,IAAa,MAAA,CAAA;AAAA,MAKX,MAAA;AAAA,MAKA,GAAA;AAAA,MAKA,KAAA;AAAA,KACD,CAAA,CAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;"}
1
+ {"version":3,"file":"alpha-slider.mjs","sources":["../../../../../../../packages/components/color-picker/src/components/alpha-slider.vue"],"sourcesContent":["<template>\n <div :class=\"rootKls\">\n <div ref=\"bar\" :class=\"barKls\" :style=\"barStyle\" @click=\"handleClick\" />\n <div\n ref=\"thumb\"\n :class=\"thumbKls\"\n :style=\"thumbStyle\"\n :aria-label=\"alphaLabel\"\n :aria-valuenow=\"alpha\"\n :aria-orientation=\"vertical ? 'vertical' : 'horizontal'\"\n aria-valuemin=\"0\"\n aria-valuemax=\"100\"\n role=\"slider\"\n tabindex=\"0\"\n @keydown=\"handleKeydown\"\n />\n </div>\n</template>\n\n<script lang=\"ts\" setup>\nimport { alphaSliderProps } from '../props/alpha-slider'\nimport {\n useAlphaSlider,\n useAlphaSliderDOM,\n} from '../composables/use-alpha-slider'\n\nconst COMPONENT_NAME = 'ElColorAlphaSlider'\n\ndefineOptions({\n name: COMPONENT_NAME,\n})\n\nconst props = defineProps(alphaSliderProps)\n\nconst {\n alpha,\n alphaLabel,\n bar,\n thumb,\n handleDrag,\n handleClick,\n handleKeydown,\n} = useAlphaSlider(props)\n\nconst { rootKls, barKls, barStyle, thumbKls, thumbStyle, update } =\n useAlphaSliderDOM(props, {\n bar,\n thumb,\n handleDrag,\n })\n\ndefineExpose({\n /**\n * @description update alpha slider manually\n * @type {Function}\n */\n update,\n /**\n * @description bar element ref\n * @type {HTMLElement}\n */\n bar,\n /**\n * @description thumb element ref\n * @type {HTMLElement}\n */\n thumb,\n})\n</script>\n"],"names":["_openBlock","_createElementBlock","_normalizeClass","_unref","_createElementVNode","_normalizeStyle"],"mappings":";;;;;;mCA4Bc,CAAA;AAAA,EACZ,IAAM,EAAA,cAAA;AACR;;;;;;AAIA,IAAM,MAAA;AAAA,MACJ,KAAA;AAAA,MACA,UAAA;AAAA,MACA,GAAA;AAAA,MACA,KAAA;AAAA,MACA,UAAA;AAAA,MACA,WAAA;AAAA,MACA,aAAA;AAAA,KACF,GAAI,eAAe,KAAK,CAAA,CAAA;AAExB,IAAM,MAAA,EAAE,SAAS,MAAQ,EAAA,QAAA,EAAU,UAAU,UAAY,EAAA,MAAA,EACvD,GAAA,iBAAA,CAAkB,KAAO,EAAA;AAAA,MACvB,GAAA;AAAA,MACA,KAAA;AAAA,MACA,UAAA;AAAA,KACD,CAAA,CAAA;AAEH,IAAa,MAAA,CAAA;AAAA,MAAA,MAAA;AAAA,MAAA,GAAA;AAAA,MAAA,KAAA;AAAA,KAAA,CAAA,CAAA;AAAA,IAKX,OAAA,CAAA,IAAA,EAAA,MAAA,KAAA;AAAA,MAAA,OAAAA,SAAA,EAAA,EAAAC,kBAAA,CAAA,KAAA,EAAA;AAAA,QAAA,KAAA,EAAAC,cAAA,CAAAC,KAAA,CAAA,OAAA,CAAA,CAAA;AAAA,OAAA,EAAA;AAAA,QAAAC,kBAAA,CAAA,KAAA,EAAA;AAAA,UAKA,OAAA,EAAA,KAAA;AAAA,UAAA,GAAA,EAAA,GAAA;AAAA,UAAA,KAAA,EAAAF,cAAA,CAAAC,KAAA,CAAA,MAAA,CAAA,CAAA;AAAA,UAAA,KAAA,EAAAE,cAAA,CAAAF,KAAA,CAAA,QAAA,CAAA,CAAA;AAAA,UAAA,OAAA,EAAAA,KAAA,CAAA,WAAA,CAAA;AAAA,SAKA,EAAA,IAAA,EAAA,EAAA,EAAA,CAAA,SAAA,CAAA,CAAA;AAAA,QACDC,kBAAA,CAAA,KAAA,EAAA;;;;;;;;;;;;;;;;;;;;;;"}
@@ -1 +1 @@
1
- {"version":3,"file":"hue-slider.mjs","sources":["../../../../../../../packages/components/color-picker/src/components/hue-slider.vue"],"sourcesContent":["<template>\n <div :class=\"[ns.b(), ns.is('vertical', vertical)]\">\n <div ref=\"bar\" :class=\"ns.e('bar')\" @click=\"handleClick\" />\n <div\n ref=\"thumb\"\n :class=\"ns.e('thumb')\"\n :style=\"{\n left: thumbLeft + 'px',\n top: thumbTop + 'px',\n }\"\n />\n </div>\n</template>\n\n<script lang=\"ts\">\nimport {\n computed,\n defineComponent,\n getCurrentInstance,\n onMounted,\n ref,\n watch,\n} from 'vue'\nimport { getClientXY } from '@element-plus/utils'\nimport { useNamespace } from '@element-plus/hooks'\nimport { draggable } from '../utils/draggable'\n\nimport type { PropType } from 'vue'\nimport type Color from '../utils/color'\n\nexport default defineComponent({\n name: 'ElColorHueSlider',\n\n props: {\n color: {\n type: Object as PropType<Color>,\n required: true,\n },\n\n vertical: Boolean,\n },\n setup(props) {\n const ns = useNamespace('color-hue-slider')\n const instance = getCurrentInstance()!\n // ref\n const thumb = ref<HTMLElement>()\n const bar = ref<HTMLElement>()\n // data\n const thumbLeft = ref(0)\n const thumbTop = ref(0)\n // computed\n const hueValue = computed(() => {\n return props.color.get('hue')\n })\n // watch\n watch(\n () => hueValue.value,\n () => {\n update()\n }\n )\n\n // methods\n function handleClick(event: MouseEvent | TouchEvent) {\n const target = event.target\n\n if (target !== thumb.value) {\n handleDrag(event)\n }\n }\n\n function handleDrag(event: MouseEvent | TouchEvent) {\n if (!bar.value || !thumb.value) return\n\n const el = instance.vnode.el as HTMLElement\n const rect = el.getBoundingClientRect()\n const { clientX, clientY } = getClientXY(event)\n let hue\n\n if (!props.vertical) {\n let left = clientX - rect.left\n left = Math.min(left, rect.width - thumb.value.offsetWidth / 2)\n left = Math.max(thumb.value.offsetWidth / 2, left)\n\n hue = Math.round(\n ((left - thumb.value.offsetWidth / 2) /\n (rect.width - thumb.value.offsetWidth)) *\n 360\n )\n } else {\n let top = clientY - rect.top\n\n top = Math.min(top, rect.height - thumb.value.offsetHeight / 2)\n top = Math.max(thumb.value.offsetHeight / 2, top)\n hue = Math.round(\n ((top - thumb.value.offsetHeight / 2) /\n (rect.height - thumb.value.offsetHeight)) *\n 360\n )\n }\n props.color.set('hue', hue)\n }\n\n function getThumbLeft() {\n if (!thumb.value) return 0\n\n const el = instance.vnode.el\n\n if (props.vertical) return 0\n const hue = props.color.get('hue')\n\n if (!el) return 0\n return Math.round(\n (hue * (el.offsetWidth - thumb.value.offsetWidth / 2)) / 360\n )\n }\n\n function getThumbTop() {\n if (!thumb.value) return 0\n\n const el = instance.vnode.el as HTMLElement\n if (!props.vertical) return 0\n const hue = props.color.get('hue')\n\n if (!el) return 0\n return Math.round(\n (hue * (el.offsetHeight - thumb.value.offsetHeight / 2)) / 360\n )\n }\n\n function update() {\n thumbLeft.value = getThumbLeft()\n thumbTop.value = getThumbTop()\n }\n\n // mounded\n onMounted(() => {\n if (!bar.value || !thumb.value) return\n\n const dragConfig = {\n drag: (event: MouseEvent | TouchEvent) => {\n handleDrag(event)\n },\n end: (event: MouseEvent | TouchEvent) => {\n handleDrag(event)\n },\n }\n\n draggable(bar.value, dragConfig)\n draggable(thumb.value, dragConfig)\n update()\n })\n\n return {\n bar,\n thumb,\n thumbLeft,\n thumbTop,\n hueValue,\n handleClick,\n update,\n ns,\n }\n },\n})\n</script>\n"],"names":["_createElementBlock","_normalizeClass","_createElementVNode","_normalizeStyle"],"mappings":"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"}
1
+ {"version":3,"file":"hue-slider.mjs","sources":["../../../../../../../packages/components/color-picker/src/components/hue-slider.vue"],"sourcesContent":["<template>\n <div :class=\"[ns.b(), ns.is('vertical', vertical)]\">\n <div ref=\"bar\" :class=\"ns.e('bar')\" @click=\"handleClick\" />\n <div\n ref=\"thumb\"\n :class=\"ns.e('thumb')\"\n :style=\"{\n left: thumbLeft + 'px',\n top: thumbTop + 'px',\n }\"\n />\n </div>\n</template>\n\n<script lang=\"ts\">\nimport {\n computed,\n defineComponent,\n getCurrentInstance,\n onMounted,\n ref,\n watch,\n} from 'vue'\nimport { getClientXY } from '@element-plus/utils'\nimport { useNamespace } from '@element-plus/hooks'\nimport { draggable } from '../utils/draggable'\n\nimport type { PropType } from 'vue'\nimport type Color from '../utils/color'\n\nexport default defineComponent({\n name: 'ElColorHueSlider',\n\n props: {\n color: {\n type: Object as PropType<Color>,\n required: true,\n },\n\n vertical: Boolean,\n },\n setup(props) {\n const ns = useNamespace('color-hue-slider')\n const instance = getCurrentInstance()!\n // ref\n const thumb = ref<HTMLElement>()\n const bar = ref<HTMLElement>()\n // data\n const thumbLeft = ref(0)\n const thumbTop = ref(0)\n // computed\n const hueValue = computed(() => {\n return props.color.get('hue')\n })\n // watch\n watch(\n () => hueValue.value,\n () => {\n update()\n }\n )\n\n // methods\n function handleClick(event: MouseEvent | TouchEvent) {\n const target = event.target\n\n if (target !== thumb.value) {\n handleDrag(event)\n }\n }\n\n function handleDrag(event: MouseEvent | TouchEvent) {\n if (!bar.value || !thumb.value) return\n\n const el = instance.vnode.el as HTMLElement\n const rect = el.getBoundingClientRect()\n const { clientX, clientY } = getClientXY(event)\n let hue\n\n if (!props.vertical) {\n let left = clientX - rect.left\n left = Math.min(left, rect.width - thumb.value.offsetWidth / 2)\n left = Math.max(thumb.value.offsetWidth / 2, left)\n\n hue = Math.round(\n ((left - thumb.value.offsetWidth / 2) /\n (rect.width - thumb.value.offsetWidth)) *\n 360\n )\n } else {\n let top = clientY - rect.top\n\n top = Math.min(top, rect.height - thumb.value.offsetHeight / 2)\n top = Math.max(thumb.value.offsetHeight / 2, top)\n hue = Math.round(\n ((top - thumb.value.offsetHeight / 2) /\n (rect.height - thumb.value.offsetHeight)) *\n 360\n )\n }\n props.color.set('hue', hue)\n }\n\n function getThumbLeft() {\n if (!thumb.value) return 0\n\n const el = instance.vnode.el\n\n if (props.vertical) return 0\n const hue = props.color.get('hue')\n\n if (!el) return 0\n return Math.round(\n (hue * (el.offsetWidth - thumb.value.offsetWidth / 2)) / 360\n )\n }\n\n function getThumbTop() {\n if (!thumb.value) return 0\n\n const el = instance.vnode.el as HTMLElement\n if (!props.vertical) return 0\n const hue = props.color.get('hue')\n\n if (!el) return 0\n return Math.round(\n (hue * (el.offsetHeight - thumb.value.offsetHeight / 2)) / 360\n )\n }\n\n function update() {\n thumbLeft.value = getThumbLeft()\n thumbTop.value = getThumbTop()\n }\n\n // mounded\n onMounted(() => {\n if (!bar.value || !thumb.value) return\n\n const dragConfig = {\n drag: (event: MouseEvent | TouchEvent) => {\n handleDrag(event)\n },\n end: (event: MouseEvent | TouchEvent) => {\n handleDrag(event)\n },\n }\n\n draggable(bar.value, dragConfig)\n draggable(thumb.value, dragConfig)\n update()\n })\n\n return {\n bar,\n thumb,\n thumbLeft,\n thumbTop,\n hueValue,\n handleClick,\n update,\n ns,\n }\n },\n})\n</script>\n"],"names":["_openBlock","_createElementBlock","_createElementVNode","_normalizeClass","_normalizeStyle"],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"predefine.mjs","sources":["../../../../../../../packages/components/color-picker/src/components/predefine.vue"],"sourcesContent":["<template>\n <div :class=\"ns.b()\">\n <div :class=\"ns.e('colors')\">\n <div\n v-for=\"(item, index) in rgbaColors\"\n :key=\"colors[index]\"\n :class=\"[\n ns.e('color-selector'),\n ns.is('alpha', item._alpha < 100),\n { selected: item.selected },\n ]\"\n @click=\"handleSelect(index)\"\n >\n <div :style=\"{ backgroundColor: item.value }\" />\n </div>\n </div>\n </div>\n</template>\n\n<script lang=\"ts\">\nimport { defineComponent, inject, ref, watch, watchEffect } from 'vue'\nimport { useNamespace } from '@element-plus/hooks'\nimport { colorPickerContextKey } from '../color-picker'\nimport Color from '../utils/color'\n\nimport type { PropType, Ref } from 'vue'\n\nexport default defineComponent({\n props: {\n colors: {\n type: Array as PropType<string[]>,\n required: true,\n },\n color: {\n type: Object as PropType<Color>,\n required: true,\n },\n enableAlpha: {\n type: Boolean,\n required: true,\n },\n },\n setup(props) {\n const ns = useNamespace('color-predefine')\n const { currentColor } = inject(colorPickerContextKey)!\n\n const rgbaColors = ref(parseColors(props.colors, props.color)) as Ref<\n Color[]\n >\n\n watch(\n () => currentColor.value,\n (val) => {\n const color = new Color()\n color.fromString(val)\n\n rgbaColors.value.forEach((item) => {\n item.selected = color.compare(item)\n })\n }\n )\n\n watchEffect(() => {\n rgbaColors.value = parseColors(props.colors, props.color)\n })\n\n function handleSelect(index: number) {\n props.color.fromString(props.colors[index])\n }\n\n function parseColors(colors: string[], color: Color) {\n return colors.map((value) => {\n const c = new Color()\n c.enableAlpha = props.enableAlpha\n c.format = 'rgba'\n c.fromString(value)\n c.selected = c.value === color.value\n return c\n })\n }\n return {\n rgbaColors,\n handleSelect,\n ns,\n }\n },\n})\n</script>\n"],"names":["_createElementBlock","_normalizeClass","_createElementVNode","_openBlock","_Fragment","_renderList","_normalizeStyle"],"mappings":"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"}
1
+ {"version":3,"file":"predefine.mjs","sources":["../../../../../../../packages/components/color-picker/src/components/predefine.vue"],"sourcesContent":["<template>\n <div :class=\"ns.b()\">\n <div :class=\"ns.e('colors')\">\n <div\n v-for=\"(item, index) in rgbaColors\"\n :key=\"colors[index]\"\n :class=\"[\n ns.e('color-selector'),\n ns.is('alpha', item._alpha < 100),\n { selected: item.selected },\n ]\"\n @click=\"handleSelect(index)\"\n >\n <div :style=\"{ backgroundColor: item.value }\" />\n </div>\n </div>\n </div>\n</template>\n\n<script lang=\"ts\">\nimport { defineComponent, inject, ref, watch, watchEffect } from 'vue'\nimport { useNamespace } from '@element-plus/hooks'\nimport { colorPickerContextKey } from '../color-picker'\nimport Color from '../utils/color'\n\nimport type { PropType, Ref } from 'vue'\n\nexport default defineComponent({\n props: {\n colors: {\n type: Array as PropType<string[]>,\n required: true,\n },\n color: {\n type: Object as PropType<Color>,\n required: true,\n },\n enableAlpha: {\n type: Boolean,\n required: true,\n },\n },\n setup(props) {\n const ns = useNamespace('color-predefine')\n const { currentColor } = inject(colorPickerContextKey)!\n\n const rgbaColors = ref(parseColors(props.colors, props.color)) as Ref<\n Color[]\n >\n\n watch(\n () => currentColor.value,\n (val) => {\n const color = new Color()\n color.fromString(val)\n\n rgbaColors.value.forEach((item) => {\n item.selected = color.compare(item)\n })\n }\n )\n\n watchEffect(() => {\n rgbaColors.value = parseColors(props.colors, props.color)\n })\n\n function handleSelect(index: number) {\n props.color.fromString(props.colors[index])\n }\n\n function parseColors(colors: string[], color: Color) {\n return colors.map((value) => {\n const c = new Color()\n c.enableAlpha = props.enableAlpha\n c.format = 'rgba'\n c.fromString(value)\n c.selected = c.value === color.value\n return c\n })\n }\n return {\n rgbaColors,\n handleSelect,\n ns,\n }\n },\n})\n</script>\n"],"names":["_openBlock","_createElementBlock","_createElementVNode","_normalizeClass","_Fragment","_renderList","_normalizeStyle"],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"sv-panel.mjs","sources":["../../../../../../../packages/components/color-picker/src/components/sv-panel.vue"],"sourcesContent":["<template>\n <div\n :class=\"ns.b()\"\n :style=\"{\n backgroundColor: background,\n }\"\n >\n <div :class=\"ns.e('white')\" />\n <div :class=\"ns.e('black')\" />\n <div\n :class=\"ns.e('cursor')\"\n :style=\"{\n top: cursorTop + 'px',\n left: cursorLeft + 'px',\n }\"\n >\n <div />\n </div>\n </div>\n</template>\n\n<script lang=\"ts\">\nimport {\n computed,\n defineComponent,\n getCurrentInstance,\n onMounted,\n ref,\n watch,\n} from 'vue'\nimport { getClientXY } from '@element-plus/utils'\nimport { useNamespace } from '@element-plus/hooks'\nimport { draggable } from '../utils/draggable'\n\nimport type { PropType } from 'vue'\nimport type Color from '../utils/color'\n\nexport default defineComponent({\n name: 'ElSlPanel',\n\n props: {\n color: {\n type: Object as PropType<Color>,\n required: true,\n },\n },\n\n setup(props) {\n const ns = useNamespace('color-svpanel')\n\n // instance\n const instance = getCurrentInstance()!\n\n // data\n const cursorTop = ref(0)\n const cursorLeft = ref(0)\n const background = ref('hsl(0, 100%, 50%)')\n const colorValue = computed(() => {\n const hue = props.color.get('hue')\n const value = props.color.get('value')\n return { hue, value }\n })\n\n // methods\n function update() {\n const saturation = props.color.get('saturation')\n const value = props.color.get('value')\n\n const el = instance.vnode.el!\n const { clientWidth: width, clientHeight: height } = el\n\n cursorLeft.value = (saturation * width) / 100\n cursorTop.value = ((100 - value) * height) / 100\n\n background.value = `hsl(${props.color.get('hue')}, 100%, 50%)`\n }\n\n function handleDrag(event: MouseEvent | TouchEvent) {\n const el = instance.vnode.el!\n const rect = el.getBoundingClientRect()\n const { clientX, clientY } = getClientXY(event)\n\n let left = clientX - rect.left\n let top = clientY - rect.top\n left = Math.max(0, left)\n left = Math.min(left, rect.width)\n\n top = Math.max(0, top)\n top = Math.min(top, rect.height)\n\n cursorLeft.value = left\n cursorTop.value = top\n props.color.set({\n saturation: (left / rect.width) * 100,\n value: 100 - (top / rect.height) * 100,\n })\n }\n\n // watch\n watch(\n () => colorValue.value,\n () => {\n update()\n }\n )\n // mounted\n onMounted(() => {\n draggable(instance.vnode.el as HTMLElement, {\n drag: (event) => {\n handleDrag(event)\n },\n end: (event) => {\n handleDrag(event)\n },\n })\n\n update()\n })\n return {\n cursorTop,\n cursorLeft,\n background,\n colorValue,\n handleDrag,\n update,\n ns,\n }\n },\n})\n</script>\n"],"names":["_createElementBlock","_normalizeClass","_normalizeStyle","_createElementVNode"],"mappings":"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"}
1
+ {"version":3,"file":"sv-panel.mjs","sources":["../../../../../../../packages/components/color-picker/src/components/sv-panel.vue"],"sourcesContent":["<template>\n <div\n :class=\"ns.b()\"\n :style=\"{\n backgroundColor: background,\n }\"\n >\n <div :class=\"ns.e('white')\" />\n <div :class=\"ns.e('black')\" />\n <div\n :class=\"ns.e('cursor')\"\n :style=\"{\n top: cursorTop + 'px',\n left: cursorLeft + 'px',\n }\"\n >\n <div />\n </div>\n </div>\n</template>\n\n<script lang=\"ts\">\nimport {\n computed,\n defineComponent,\n getCurrentInstance,\n onMounted,\n ref,\n watch,\n} from 'vue'\nimport { getClientXY } from '@element-plus/utils'\nimport { useNamespace } from '@element-plus/hooks'\nimport { draggable } from '../utils/draggable'\n\nimport type { PropType } from 'vue'\nimport type Color from '../utils/color'\n\nexport default defineComponent({\n name: 'ElSlPanel',\n\n props: {\n color: {\n type: Object as PropType<Color>,\n required: true,\n },\n },\n\n setup(props) {\n const ns = useNamespace('color-svpanel')\n\n // instance\n const instance = getCurrentInstance()!\n\n // data\n const cursorTop = ref(0)\n const cursorLeft = ref(0)\n const background = ref('hsl(0, 100%, 50%)')\n const colorValue = computed(() => {\n const hue = props.color.get('hue')\n const value = props.color.get('value')\n return { hue, value }\n })\n\n // methods\n function update() {\n const saturation = props.color.get('saturation')\n const value = props.color.get('value')\n\n const el = instance.vnode.el!\n const { clientWidth: width, clientHeight: height } = el\n\n cursorLeft.value = (saturation * width) / 100\n cursorTop.value = ((100 - value) * height) / 100\n\n background.value = `hsl(${props.color.get('hue')}, 100%, 50%)`\n }\n\n function handleDrag(event: MouseEvent | TouchEvent) {\n const el = instance.vnode.el!\n const rect = el.getBoundingClientRect()\n const { clientX, clientY } = getClientXY(event)\n\n let left = clientX - rect.left\n let top = clientY - rect.top\n left = Math.max(0, left)\n left = Math.min(left, rect.width)\n\n top = Math.max(0, top)\n top = Math.min(top, rect.height)\n\n cursorLeft.value = left\n cursorTop.value = top\n props.color.set({\n saturation: (left / rect.width) * 100,\n value: 100 - (top / rect.height) * 100,\n })\n }\n\n // watch\n watch(\n () => colorValue.value,\n () => {\n update()\n }\n )\n // mounted\n onMounted(() => {\n draggable(instance.vnode.el as HTMLElement, {\n drag: (event) => {\n handleDrag(event)\n },\n end: (event) => {\n handleDrag(event)\n },\n })\n\n update()\n })\n return {\n cursorTop,\n cursorLeft,\n background,\n colorValue,\n handleDrag,\n update,\n ns,\n }\n },\n})\n</script>\n"],"names":["_openBlock","_createElementBlock","_createElementVNode","_normalizeClass","_normalizeStyle"],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"aside.mjs","sources":["../../../../../../packages/components/container/src/aside.vue"],"sourcesContent":["<template>\n <aside :class=\"ns.b()\" :style=\"style\">\n <slot />\n </aside>\n</template>\n<script lang=\"ts\" setup>\nimport { computed } from 'vue'\nimport { useNamespace } from '@element-plus/hooks'\n\nimport type { CSSProperties } from 'vue'\n\ndefineOptions({\n name: 'ElAside',\n})\nconst props = defineProps({\n /**\n * @description width of the side section\n */\n width: {\n type: String,\n default: null,\n },\n})\n\nconst ns = useNamespace('aside')\nconst style = computed(\n () =>\n (props.width ? ns.cssVarBlock({ width: props.width }) : {}) as CSSProperties\n)\n</script>\n"],"names":[],"mappings":";;;;;mCAWc,CAAA;AAAA,EACZ,IAAM,EAAA,SAAA;AACR,CAAA,CAAA,CAAA;;;;;;;;;;;AAWA,IAAM,MAAA,EAAA,GAAK,aAAa,OAAO,CAAA,CAAA;AAC/B,IAAA,MAAM,KAAQ,GAAA,QAAA,CACZ,MACG,KAAA,CAAM,QAAQ,EAAG,CAAA,WAAA,CAAY,EAAE,KAAA,EAAO,KAAM,CAAA,KAAA,EAAO,CAAA,GAAI,EAC5D,CAAA,CAAA;;;;;;;;;;;;;;;"}
1
+ {"version":3,"file":"aside.mjs","sources":["../../../../../../packages/components/container/src/aside.vue"],"sourcesContent":["<template>\n <aside :class=\"ns.b()\" :style=\"style\">\n <slot />\n </aside>\n</template>\n<script lang=\"ts\" setup>\nimport { computed } from 'vue'\nimport { useNamespace } from '@element-plus/hooks'\n\nimport type { CSSProperties } from 'vue'\n\ndefineOptions({\n name: 'ElAside',\n})\nconst props = defineProps({\n /**\n * @description width of the side section\n */\n width: {\n type: String,\n default: null,\n },\n})\n\nconst ns = useNamespace('aside')\nconst style = computed(\n () =>\n (props.width ? ns.cssVarBlock({ width: props.width }) : {}) as CSSProperties\n)\n</script>\n"],"names":["_openBlock","_normalizeClass","_unref","_normalizeStyle"],"mappings":";;;;;mCAWc,CAAA;AAAA,EACZ,IAAM,EAAA,SAAA;AACR,CAAA,CAAA,CAAA;;;;;;;;;;;;;;AAWA,MAAM,OAAAA,+BAAyB,CAAA,OAAA,EAAA;AAC/B,QAAA,KAAc,EAAAC,cAAA,CAAAC,KAAA,CAAA,EAAA,CAAA,CAAA,CAAA,EAAA,CAAA;AAAA,QACZ,KACS,EAAAC,cAAW,CAAAD,KAAA,CAAA,KAAc,CAAA,CAAA;AAAyB,OAC7D,EAAA;;;;;;;;;;"}
@@ -1 +1 @@
1
- {"version":3,"file":"container.mjs","sources":["../../../../../../packages/components/container/src/container.vue"],"sourcesContent":["<template>\n <section :class=\"[ns.b(), ns.is('vertical', isVertical)]\">\n <slot />\n </section>\n</template>\n<script lang=\"ts\" setup>\nimport { computed, useSlots } from 'vue'\nimport { useNamespace } from '@element-plus/hooks'\n\nimport type { Component, VNode } from 'vue'\n\ndefineOptions({\n name: 'ElContainer',\n})\nconst props = defineProps({\n /**\n * @description layout direction for child elements\n */\n direction: {\n type: String,\n },\n})\nconst slots = useSlots()\n\nconst ns = useNamespace('container')\n\nconst isVertical = computed(() => {\n if (props.direction === 'vertical') {\n return true\n } else if (props.direction === 'horizontal') {\n return false\n }\n if (slots && slots.default) {\n const vNodes: VNode[] = slots.default()\n return vNodes.some((vNode) => {\n const tag = (vNode.type as Component).name\n return tag === 'ElHeader' || tag === 'ElFooter'\n })\n } else {\n return false\n }\n})\n</script>\n"],"names":[],"mappings":";;;;;mCAWc,CAAA;AAAA,EACZ,IAAM,EAAA,aAAA;AACR,CAAA,CAAA,CAAA;;;;;;;;;;AASA,IAAA,MAAM,QAAQ,QAAS,EAAA,CAAA;AAEvB,IAAM,MAAA,EAAA,GAAK,aAAa,WAAW,CAAA,CAAA;AAEnC,IAAM,MAAA,UAAA,GAAa,SAAS,MAAM;AAChC,MAAI,IAAA,KAAA,CAAM,cAAc,UAAY,EAAA;AAClC,QAAO,OAAA,IAAA,CAAA;AAAA,OACT,MAAA,IAAW,KAAM,CAAA,SAAA,KAAc,YAAc,EAAA;AAC3C,QAAO,OAAA,KAAA,CAAA;AAAA,OACT;AACA,MAAI,IAAA,KAAA,IAAS,MAAM,OAAS,EAAA;AAC1B,QAAM,MAAA,MAAA,GAAkB,MAAM,OAAQ,EAAA,CAAA;AACtC,QAAO,OAAA,MAAA,CAAO,IAAK,CAAA,CAAC,KAAU,KAAA;AAC5B,UAAM,MAAA,GAAA,GAAO,MAAM,IAAmB,CAAA,IAAA,CAAA;AACtC,UAAO,OAAA,GAAA,KAAQ,cAAc,GAAQ,KAAA,UAAA,CAAA;AAAA,SACtC,CAAA,CAAA;AAAA,OACI,MAAA;AACL,QAAO,OAAA,KAAA,CAAA;AAAA,OACT;AAAA,KACD,CAAA,CAAA;;;;;;;;;;;;;;"}
1
+ {"version":3,"file":"container.mjs","sources":["../../../../../../packages/components/container/src/container.vue"],"sourcesContent":["<template>\n <section :class=\"[ns.b(), ns.is('vertical', isVertical)]\">\n <slot />\n </section>\n</template>\n<script lang=\"ts\" setup>\nimport { computed, useSlots } from 'vue'\nimport { useNamespace } from '@element-plus/hooks'\n\nimport type { Component, VNode } from 'vue'\n\ndefineOptions({\n name: 'ElContainer',\n})\nconst props = defineProps({\n /**\n * @description layout direction for child elements\n */\n direction: {\n type: String,\n },\n})\nconst slots = useSlots()\n\nconst ns = useNamespace('container')\n\nconst isVertical = computed(() => {\n if (props.direction === 'vertical') {\n return true\n } else if (props.direction === 'horizontal') {\n return false\n }\n if (slots && slots.default) {\n const vNodes: VNode[] = slots.default()\n return vNodes.some((vNode) => {\n const tag = (vNode.type as Component).name\n return tag === 'ElHeader' || tag === 'ElFooter'\n })\n } else {\n return false\n }\n})\n</script>\n"],"names":["_openBlock","_createElementBlock","_normalizeClass","_unref"],"mappings":";;;;;mCAWc,CAAA;AAAA,EACZ,IAAM,EAAA,aAAA;AACR,CAAA,CAAA,CAAA;;;;;;;;;;;;;AASA,MAAA,IAAM,eAAiB,KAAA,UAAA,EAAA;AAEvB,QAAM,OAAK;AAEX,OAAM,MAAA,IAAA,KAAA,CAAa,SAAS,KAAM,YAAA,EAAA;AAChC,QAAI,OAAA;AACF,OAAO;AAAA,MACT,IAAA,KAAA,IAAiB,KAAA,CAAA,OAAA,EAAA;AACf,QAAO,MAAA,MAAA,GAAA,KAAA,CAAA,OAAA,EAAA,CAAA;AAAA,QACT,OAAA,MAAA,CAAA,IAAA,CAAA,CAAA,KAAA,KAAA;AACA,UAAI,MAAA,GAAS,QAAe,CAAA,IAAA,CAAA,IAAA,CAAA;AAC1B,UAAM,OAAA,GAAA,eAAgC,IAAA,GAAA,KAAA,UAAA,CAAA;AACtC,SAAO,CAAA,CAAA;AACL,OAAM,MAAA;AACN,QAAO,OAAA,KAAA,CAAA;AAA8B,OAAA;AACtC,KAAA,CACH,CAAO;AACL,IAAO,OAAA,CAAA,IAAA,EAAA,MAAA,KAAA;AAAA,MACT,OAAAA,SAAA,EAAA,EAAAC,kBAAA,CAAA,SAAA,EAAA;AAAA,QACD,KAAA,EAAAC,cAAA,CAAA,CAAAC,KAAA,CAAA,EAAA,CAAA,CAAA,CAAA,EAAA,EAAAA,KAAA,CAAA,EAAA,CAAA,CAAA,EAAA,CAAA,UAAA,EAAAA,KAAA,CAAA,UAAA,CAAA,CAAA,CAAA,CAAA;;;;;;;;;;;"}
@@ -1 +1 @@
1
- {"version":3,"file":"footer.mjs","sources":["../../../../../../packages/components/container/src/footer.vue"],"sourcesContent":["<template>\n <footer :class=\"ns.b()\" :style=\"style\">\n <slot />\n </footer>\n</template>\n<script lang=\"ts\" setup>\nimport { computed } from 'vue'\nimport { useNamespace } from '@element-plus/hooks'\n\nimport type { CSSProperties } from 'vue'\n\ndefineOptions({\n name: 'ElFooter',\n})\nconst props = defineProps({\n /**\n * @description height of the footer\n */\n height: {\n type: String,\n default: null,\n },\n})\n\nconst ns = useNamespace('footer')\n\nconst style = computed(\n () =>\n (props.height\n ? ns.cssVarBlock({ height: props.height })\n : {}) as CSSProperties\n)\n</script>\n"],"names":[],"mappings":";;;;;mCAWc,CAAA;AAAA,EACZ,IAAM,EAAA,UAAA;AACR,CAAA,CAAA,CAAA;;;;;;;;;;;AAWA,IAAM,MAAA,EAAA,GAAK,aAAa,QAAQ,CAAA,CAAA;AAEhC,IAAA,MAAM,KAAQ,GAAA,QAAA,CACZ,MACG,KAAA,CAAM,SACH,EAAG,CAAA,WAAA,CAAY,EAAE,MAAA,EAAQ,KAAM,CAAA,MAAA,EAAQ,CAAA,GACvC,EACR,CAAA,CAAA;;;;;;;;;;;;;;;"}
1
+ {"version":3,"file":"footer.mjs","sources":["../../../../../../packages/components/container/src/footer.vue"],"sourcesContent":["<template>\n <footer :class=\"ns.b()\" :style=\"style\">\n <slot />\n </footer>\n</template>\n<script lang=\"ts\" setup>\nimport { computed } from 'vue'\nimport { useNamespace } from '@element-plus/hooks'\n\nimport type { CSSProperties } from 'vue'\n\ndefineOptions({\n name: 'ElFooter',\n})\nconst props = defineProps({\n /**\n * @description height of the footer\n */\n height: {\n type: String,\n default: null,\n },\n})\n\nconst ns = useNamespace('footer')\n\nconst style = computed(\n () =>\n (props.height\n ? ns.cssVarBlock({ height: props.height })\n : {}) as CSSProperties\n)\n</script>\n"],"names":["_openBlock","_normalizeClass","_unref","_normalizeStyle"],"mappings":";;;;;mCAWc,CAAA;AAAA,EACZ,IAAM,EAAA,UAAA;AACR,CAAA,CAAA,CAAA;;;;;;;;;;;;;;AAWA,MAAM,OAAAA,+BAA0B,CAAA,QAAA,EAAA;AAEhC,QAAA,KAAc,EAAAC,cAAA,CAAAC,KAAA,CAAA,EAAA,CAAA,CAAA,CAAA,EAAA,CAAA;AAAA,QACZ,KACS,EAAAC,cACA,CAAAD,KAAA,CAAA,KAAc,CAAA,CAAA;AAChB,OACT,EAAA;;;;;;;;;;"}
@@ -1 +1 @@
1
- {"version":3,"file":"header.mjs","sources":["../../../../../../packages/components/container/src/header.vue"],"sourcesContent":["<template>\n <header :class=\"ns.b()\" :style=\"style\">\n <slot />\n </header>\n</template>\n<script lang=\"ts\" setup>\nimport { computed } from 'vue'\nimport { useNamespace } from '@element-plus/hooks'\n\nimport type { CSSProperties } from 'vue'\n\ndefineOptions({\n name: 'ElHeader',\n})\n\nconst props = defineProps({\n /**\n * @description height of the header\n */\n height: {\n type: String,\n default: null,\n },\n})\n\nconst ns = useNamespace('header')\nconst style = computed(() => {\n return props.height\n ? (ns.cssVarBlock({\n height: props.height,\n }) as CSSProperties)\n : {}\n})\n</script>\n"],"names":[],"mappings":";;;;;mCAWc,CAAA;AAAA,EACZ,IAAM,EAAA,UAAA;AACR,CAAA,CAAA,CAAA;;;;;;;;;;;AAYA,IAAM,MAAA,EAAA,GAAK,aAAa,QAAQ,CAAA,CAAA;AAChC,IAAM,MAAA,KAAA,GAAQ,SAAS,MAAM;AAC3B,MAAO,OAAA,KAAA,CAAM,MACR,GAAA,EAAA,CAAG,WAAY,CAAA;AAAA,QACd,QAAQ,KAAM,CAAA,MAAA;AAAA,OACf,IACD,EAAC,CAAA;AAAA,KACN,CAAA,CAAA;;;;;;;;;;;;;;;"}
1
+ {"version":3,"file":"header.mjs","sources":["../../../../../../packages/components/container/src/header.vue"],"sourcesContent":["<template>\n <header :class=\"ns.b()\" :style=\"style\">\n <slot />\n </header>\n</template>\n<script lang=\"ts\" setup>\nimport { computed } from 'vue'\nimport { useNamespace } from '@element-plus/hooks'\n\nimport type { CSSProperties } from 'vue'\n\ndefineOptions({\n name: 'ElHeader',\n})\n\nconst props = defineProps({\n /**\n * @description height of the header\n */\n height: {\n type: String,\n default: null,\n },\n})\n\nconst ns = useNamespace('header')\nconst style = computed(() => {\n return props.height\n ? (ns.cssVarBlock({\n height: props.height,\n }) as CSSProperties)\n : {}\n})\n</script>\n"],"names":["_openBlock","_createElementBlock","_normalizeClass","_unref"],"mappings":";;;;;mCAWc,CAAA;AAAA,EACZ,IAAM,EAAA,UAAA;AACR,CAAA,CAAA,CAAA;;;;;;;;;;;;;;AAYA,QAAM,MAAA,cAAkB;AACxB,OAAM,CAAA,GAAA,EAAA,CAAA;AACJ,KAAO,CAAA,CAAA;AACa,IAAA,YACN,EAAM,MAAA,KAAA;AAAA,MAChB,OACCA,SAAA,EAAA,EAAAC,kBAAA,CAAA,QAAA,EAAA;AAAA,QACN,KAAA,EAAAC,cAAA,CAAAC,KAAA,CAAA,EAAA,CAAA,CAAA,CAAA,EAAA,CAAA;;;;;;;;;;;;"}
@@ -64,7 +64,9 @@ const _sfc_main = /* @__PURE__ */ defineComponent({
64
64
  suffix: _ctx.suffix,
65
65
  "value-style": _ctx.valueStyle,
66
66
  formatter
67
- }, createSlots({ _: 2 }, [
67
+ }, createSlots({
68
+ _: 2
69
+ }, [
68
70
  renderList(_ctx.$slots, (_, name) => {
69
71
  return {
70
72
  name,
@@ -1 +1 @@
1
- {"version":3,"file":"countdown2.mjs","sources":["../../../../../../packages/components/countdown/src/countdown.vue"],"sourcesContent":["<template>\n <el-statistic\n :value=\"rawValue\"\n :title=\"title\"\n :prefix=\"prefix\"\n :suffix=\"suffix\"\n :value-style=\"valueStyle\"\n :formatter=\"formatter\"\n >\n <template v-for=\"(_, name) in $slots\" #[name]>\n <slot :name=\"name\" />\n </template>\n </el-statistic>\n</template>\n<script lang=\"ts\" setup>\nimport { computed, onBeforeUnmount, onMounted, ref, watch } from 'vue'\nimport { ElStatistic } from '@element-plus/components/statistic'\nimport { cAF, rAF } from '@element-plus/utils'\nimport { countdownEmits, countdownProps } from './countdown'\nimport { formatTime, getTime } from './utils'\n\ndefineOptions({\n name: 'ElCountdown',\n})\n\nconst props = defineProps(countdownProps)\nconst emit = defineEmits(countdownEmits)\n\nlet timer: ReturnType<typeof rAF> | undefined\nconst rawValue = ref<number>(0)\nconst displayValue = computed(() => formatTime(rawValue.value, props.format))\n\nconst formatter = (val: number) => formatTime(val, props.format)\n\nconst stopTimer = () => {\n if (timer) {\n cAF(timer)\n timer = undefined\n }\n}\n\nconst startTimer = () => {\n const timestamp = getTime(props.value)\n const frameFunc = () => {\n let diff = timestamp - Date.now()\n emit('change', diff)\n if (diff <= 0) {\n diff = 0\n stopTimer()\n emit('finish')\n } else {\n timer = rAF(frameFunc)\n }\n rawValue.value = diff\n }\n timer = rAF(frameFunc)\n}\n\nonMounted(() => {\n rawValue.value = getTime(props.value) - Date.now()\n\n watch(\n () => [props.value, props.format],\n () => {\n stopTimer()\n startTimer()\n },\n {\n immediate: true,\n }\n )\n})\n\nonBeforeUnmount(() => {\n stopTimer()\n})\n\ndefineExpose({\n /**\n * @description current display value\n */\n displayValue,\n})\n</script>\n"],"names":[],"mappings":";;;;;;;;mCAqBc,CAAA;AAAA,EACZ,IAAM,EAAA,aAAA;AACR,CAAA,CAAA,CAAA;;;;;;;AAKA,IAAI,IAAA,KAAA,CAAA;AACJ,IAAM,MAAA,QAAA,GAAW,IAAY,CAAC,CAAA,CAAA;AAC9B,IAAM,MAAA,YAAA,GAAe,SAAS,MAAM,UAAA,CAAW,SAAS,KAAO,EAAA,KAAA,CAAM,MAAM,CAAC,CAAA,CAAA;AAE5E,IAAA,MAAM,YAAY,CAAC,GAAA,KAAgB,UAAW,CAAA,GAAA,EAAK,MAAM,MAAM,CAAA,CAAA;AAE/D,IAAA,MAAM,YAAY,MAAM;AACtB,MAAA,IAAI,KAAO,EAAA;AACT,QAAA,GAAA,CAAI,KAAK,CAAA,CAAA;AACT,QAAQ,KAAA,GAAA,KAAA,CAAA,CAAA;AAAA,OACV;AAAA,KACF,CAAA;AAEA,IAAA,MAAM,aAAa,MAAM;AACvB,MAAM,MAAA,SAAA,GAAY,OAAQ,CAAA,KAAA,CAAM,KAAK,CAAA,CAAA;AACrC,MAAA,MAAM,YAAY,MAAM;AACtB,QAAI,IAAA,IAAA,GAAO,SAAY,GAAA,IAAA,CAAK,GAAI,EAAA,CAAA;AAChC,QAAA,IAAA,CAAK,UAAU,IAAI,CAAA,CAAA;AACnB,QAAA,IAAI,QAAQ,CAAG,EAAA;AACb,UAAO,IAAA,GAAA,CAAA,CAAA;AACP,UAAU,SAAA,EAAA,CAAA;AACV,UAAA,IAAA,CAAK,QAAQ,CAAA,CAAA;AAAA,SACR,MAAA;AACL,UAAA,KAAA,GAAQ,IAAI,SAAS,CAAA,CAAA;AAAA,SACvB;AACA,QAAA,QAAA,CAAS,KAAQ,GAAA,IAAA,CAAA;AAAA,OACnB,CAAA;AACA,MAAA,KAAA,GAAQ,IAAI,SAAS,CAAA,CAAA;AAAA,KACvB,CAAA;AAEA,IAAA,SAAA,CAAU,MAAM;AACd,MAAA,QAAA,CAAS,QAAQ,OAAQ,CAAA,KAAA,CAAM,KAAK,CAAA,GAAI,KAAK,GAAI,EAAA,CAAA;AAEjD,MAAA,KAAA,CACE,MAAM,CAAC,KAAA,CAAM,OAAO,KAAM,CAAA,MAAM,GAChC,MAAM;AACJ,QAAU,SAAA,EAAA,CAAA;AACV,QAAW,UAAA,EAAA,CAAA;AAAA,OAEb,EAAA;AAAA,QACE,SAAW,EAAA,IAAA;AAAA,OAEf,CAAA,CAAA;AAAA,KACD,CAAA,CAAA;AAED,IAAA,eAAA,CAAgB,MAAM;AACpB,MAAU,SAAA,EAAA,CAAA;AAAA,KACX,CAAA,CAAA;AAED,IAAa,MAAA,CAAA;AAAA,MAIX,YAAA;AAAA,KACD,CAAA,CAAA;;;;;;;;;;;;;;;;;;;;;;;;;;"}
1
+ {"version":3,"file":"countdown2.mjs","sources":["../../../../../../packages/components/countdown/src/countdown.vue"],"sourcesContent":["<template>\n <el-statistic\n :value=\"rawValue\"\n :title=\"title\"\n :prefix=\"prefix\"\n :suffix=\"suffix\"\n :value-style=\"valueStyle\"\n :formatter=\"formatter\"\n >\n <template v-for=\"(_, name) in $slots\" #[name]>\n <slot :name=\"name\" />\n </template>\n </el-statistic>\n</template>\n<script lang=\"ts\" setup>\nimport { computed, onBeforeUnmount, onMounted, ref, watch } from 'vue'\nimport { ElStatistic } from '@element-plus/components/statistic'\nimport { cAF, rAF } from '@element-plus/utils'\nimport { countdownEmits, countdownProps } from './countdown'\nimport { formatTime, getTime } from './utils'\n\ndefineOptions({\n name: 'ElCountdown',\n})\n\nconst props = defineProps(countdownProps)\nconst emit = defineEmits(countdownEmits)\n\nlet timer: ReturnType<typeof rAF> | undefined\nconst rawValue = ref<number>(0)\nconst displayValue = computed(() => formatTime(rawValue.value, props.format))\n\nconst formatter = (val: number) => formatTime(val, props.format)\n\nconst stopTimer = () => {\n if (timer) {\n cAF(timer)\n timer = undefined\n }\n}\n\nconst startTimer = () => {\n const timestamp = getTime(props.value)\n const frameFunc = () => {\n let diff = timestamp - Date.now()\n emit('change', diff)\n if (diff <= 0) {\n diff = 0\n stopTimer()\n emit('finish')\n } else {\n timer = rAF(frameFunc)\n }\n rawValue.value = diff\n }\n timer = rAF(frameFunc)\n}\n\nonMounted(() => {\n rawValue.value = getTime(props.value) - Date.now()\n\n watch(\n () => [props.value, props.format],\n () => {\n stopTimer()\n startTimer()\n },\n {\n immediate: true,\n }\n )\n})\n\nonBeforeUnmount(() => {\n stopTimer()\n})\n\ndefineExpose({\n /**\n * @description current display value\n */\n displayValue,\n})\n</script>\n"],"names":["_openBlock","_createBlock","_unref"],"mappings":";;;;;;;;mCAqBc,CAAA;AAAA,EACZ,IAAM,EAAA,aAAA;AACR,CAAA,CAAA,CAAA;;;;;;;AAKA,IAAI,IAAA,KAAA,CAAA;AACJ,IAAM,MAAA,QAAA,GAAW,IAAY,CAAC,CAAA,CAAA;AAC9B,IAAM,MAAA,YAAA,GAAe,SAAS,MAAM,UAAA,CAAW,SAAS,KAAO,EAAA,KAAA,CAAM,MAAM,CAAC,CAAA,CAAA;AAE5E,IAAA,MAAM,YAAY,CAAC,GAAA,KAAgB,UAAW,CAAA,GAAA,EAAK,MAAM,MAAM,CAAA,CAAA;AAE/D,IAAA,MAAM,YAAY,MAAM;AACtB,MAAA,IAAI,KAAO,EAAA;AACT,QAAA,GAAA,CAAI,KAAK,CAAA,CAAA;AACT,QAAQ,KAAA,GAAA,KAAA,CAAA,CAAA;AAAA,OACV;AAAA,KACF,CAAA;AAEA,IAAA,MAAM,aAAa,MAAM;AACvB,MAAM,MAAA,SAAA,GAAY,OAAQ,CAAA,KAAA,CAAM,KAAK,CAAA,CAAA;AACrC,MAAA,MAAM,YAAY,MAAM;AACtB,QAAI,IAAA,IAAA,GAAO,SAAY,GAAA,IAAA,CAAK,GAAI,EAAA,CAAA;AAChC,QAAA,IAAA,CAAK,UAAU,IAAI,CAAA,CAAA;AACnB,QAAA,IAAI,QAAQ,CAAG,EAAA;AACb,UAAO,IAAA,GAAA,CAAA,CAAA;AACP,UAAU,SAAA,EAAA,CAAA;AACV,UAAA,IAAA,CAAK,QAAQ,CAAA,CAAA;AAAA,SACR,MAAA;AACL,UAAA,KAAA,GAAQ,IAAI,SAAS,CAAA,CAAA;AAAA,SACvB;AACA,QAAA,QAAA,CAAS,KAAQ,GAAA,IAAA,CAAA;AAAA,OACnB,CAAA;AACA,MAAA,KAAA,GAAQ,IAAI,SAAS,CAAA,CAAA;AAAA,KACvB,CAAA;AAEA,IAAA,SAAA,CAAU,MAAM;AACd,MAAA,QAAA,CAAS,QAAQ,OAAQ,CAAA,KAAA,CAAM,KAAK,CAAA,GAAI,KAAK,GAAI,EAAA,CAAA;AAEjD,MAAA,KAAA,CAAA,MAAA,CAAA,KAAA,CAAA,KAAA,EAAA,KAAA,CAAA,MAAA,CAAA,EAAA,MAAA;AAAA,QACE,SAAa,EAAA,CAAA;AAAmB,QAChC,UAAM,EAAA,CAAA;AACJ,OAAU,EAAA;AACV,QAAW,SAAA,EAAA,IAAA;AAAA,OACb,CAAA,CAAA;AAAA,KACA,CAAA,CAAA;AAAA,IAAA,eACa,CAAA,MAAA;AAAA,MACb,SAAA,EAAA,CAAA;AAAA,KACF,CAAA,CAAA;AAAA,IACF,MAAC,CAAA;AAED,MAAA,YAAA;AACE,KAAU,CAAA,CAAA;AAAA,IACZ,OAAC,CAAA,IAAA,EAAA,MAAA,KAAA;AAED,MAAa,OAAAA,SAAA,EAAA,EAAAC,WAAA,CAAAC,KAAA,CAAA,WAAA,CAAA,EAAA;AAAA,QAAA,KAAA,EAAA,QAAA,CAAA,KAAA;AAAA,QAAA,KAAA,EAAA,IAAA,CAAA,KAAA;AAAA,QAAA,MAAA,EAAA,IAAA,CAAA,MAAA;AAAA,QAIX,MAAA,EAAA,IAAA,CAAA,MAAA;AAAA,QACD,aAAA,EAAA,IAAA,CAAA,UAAA;;;;;;;;;;;;;;;;;;;;;"}
@@ -1 +1 @@
1
- {"version":3,"file":"basic-date-table.mjs","sources":["../../../../../../../packages/components/date-picker/src/date-picker-com/basic-date-table.vue"],"sourcesContent":["<template>\n <table\n :aria-label=\"tableLabel\"\n :class=\"tableKls\"\n cellspacing=\"0\"\n cellpadding=\"0\"\n role=\"grid\"\n @click=\"handlePickDate\"\n @mousemove=\"handleMouseMove\"\n @mousedown.prevent=\"handleMouseDown\"\n @mouseup=\"handleMouseUp\"\n >\n <tbody ref=\"tbodyRef\">\n <tr>\n <th v-if=\"showWeekNumber\" scope=\"col\">{{ weekLabel }}</th>\n <th\n v-for=\"(week, key) in WEEKS\"\n :key=\"key\"\n :aria-label=\"t('el.datepicker.weeksFull.' + week)\"\n scope=\"col\"\n >\n {{ t('el.datepicker.weeks.' + week) }}\n </th>\n </tr>\n <tr\n v-for=\"(row, rowKey) in rows\"\n :key=\"rowKey\"\n :class=\"getRowKls(row[1])\"\n >\n <td\n v-for=\"(cell, columnKey) in row\"\n :key=\"`${rowKey}.${columnKey}`\"\n :ref=\"(el) => isSelectedCell(cell) && (currentCellRef = el as HTMLElement)\"\n :class=\"getCellClasses(cell)\"\n :aria-current=\"cell.isCurrent ? 'date' : undefined\"\n :aria-selected=\"cell.isCurrent\"\n :tabindex=\"isSelectedCell(cell) ? 0 : -1\"\n @focus=\"handleFocus\"\n >\n <el-date-picker-cell :cell=\"cell\" />\n </td>\n </tr>\n </tbody>\n </table>\n</template>\n\n<script lang=\"ts\" setup>\nimport {\n basicDateTableEmits,\n basicDateTableProps,\n} from '../props/basic-date-table'\nimport {\n useBasicDateTable,\n useBasicDateTableDOM,\n} from '../composables/use-basic-date-table'\nimport ElDatePickerCell from './basic-cell-render'\n\nconst props = defineProps(basicDateTableProps)\nconst emit = defineEmits(basicDateTableEmits)\n\nconst {\n WEEKS,\n rows,\n tbodyRef,\n currentCellRef,\n\n focus,\n isCurrent,\n isWeekActive,\n isSelectedCell,\n\n handlePickDate,\n handleMouseUp,\n handleMouseDown,\n handleMouseMove,\n handleFocus,\n} = useBasicDateTable(props, emit)\nconst { tableLabel, tableKls, weekLabel, getCellClasses, getRowKls, t } =\n useBasicDateTableDOM(props, {\n isCurrent,\n isWeekActive,\n })\n\ndefineExpose({\n /**\n * @description focus on current cell\n */\n focus,\n})\n</script>\n"],"names":[],"mappings":";;;;;;;;;;;;AA4DA,IAAM,MAAA;AAAA,MACJ,KAAA;AAAA,MACA,IAAA;AAAA,MACA,QAAA;AAAA,MACA,cAAA;AAAA,MAEA,KAAA;AAAA,MACA,SAAA;AAAA,MACA,YAAA;AAAA,MACA,cAAA;AAAA,MAEA,cAAA;AAAA,MACA,aAAA;AAAA,MACA,eAAA;AAAA,MACA,eAAA;AAAA,MACA,WAAA;AAAA,KACE,GAAA,iBAAA,CAAkB,OAAO,IAAI,CAAA,CAAA;AACjC,IAAM,MAAA,EAAE,YAAY,QAAU,EAAA,SAAA,EAAW,gBAAgB,SAAW,EAAA,CAAA,EAAA,GAClE,qBAAqB,KAAO,EAAA;AAAA,MAC1B,SAAA;AAAA,MACA,YAAA;AAAA,KACD,CAAA,CAAA;AAEH,IAAa,MAAA,CAAA;AAAA,MAIX,KAAA;AAAA,KACD,CAAA,CAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;"}
1
+ {"version":3,"file":"basic-date-table.mjs","sources":["../../../../../../../packages/components/date-picker/src/date-picker-com/basic-date-table.vue"],"sourcesContent":["<template>\n <table\n :aria-label=\"tableLabel\"\n :class=\"tableKls\"\n cellspacing=\"0\"\n cellpadding=\"0\"\n role=\"grid\"\n @click=\"handlePickDate\"\n @mousemove=\"handleMouseMove\"\n @mousedown.prevent=\"handleMouseDown\"\n @mouseup=\"handleMouseUp\"\n >\n <tbody ref=\"tbodyRef\">\n <tr>\n <th v-if=\"showWeekNumber\" scope=\"col\">{{ weekLabel }}</th>\n <th\n v-for=\"(week, key) in WEEKS\"\n :key=\"key\"\n :aria-label=\"t('el.datepicker.weeksFull.' + week)\"\n scope=\"col\"\n >\n {{ t('el.datepicker.weeks.' + week) }}\n </th>\n </tr>\n <tr\n v-for=\"(row, rowKey) in rows\"\n :key=\"rowKey\"\n :class=\"getRowKls(row[1])\"\n >\n <td\n v-for=\"(cell, columnKey) in row\"\n :key=\"`${rowKey}.${columnKey}`\"\n :ref=\"(el) => isSelectedCell(cell) && (currentCellRef = el as HTMLElement)\"\n :class=\"getCellClasses(cell)\"\n :aria-current=\"cell.isCurrent ? 'date' : undefined\"\n :aria-selected=\"cell.isCurrent\"\n :tabindex=\"isSelectedCell(cell) ? 0 : -1\"\n @focus=\"handleFocus\"\n >\n <el-date-picker-cell :cell=\"cell\" />\n </td>\n </tr>\n </tbody>\n </table>\n</template>\n\n<script lang=\"ts\" setup>\nimport {\n basicDateTableEmits,\n basicDateTableProps,\n} from '../props/basic-date-table'\nimport {\n useBasicDateTable,\n useBasicDateTableDOM,\n} from '../composables/use-basic-date-table'\nimport ElDatePickerCell from './basic-cell-render'\n\nconst props = defineProps(basicDateTableProps)\nconst emit = defineEmits(basicDateTableEmits)\n\nconst {\n WEEKS,\n rows,\n tbodyRef,\n currentCellRef,\n\n focus,\n isCurrent,\n isWeekActive,\n isSelectedCell,\n\n handlePickDate,\n handleMouseUp,\n handleMouseDown,\n handleMouseMove,\n handleFocus,\n} = useBasicDateTable(props, emit)\nconst { tableLabel, tableKls, weekLabel, getCellClasses, getRowKls, t } =\n useBasicDateTableDOM(props, {\n isCurrent,\n isWeekActive,\n })\n\ndefineExpose({\n /**\n * @description focus on current cell\n */\n focus,\n})\n</script>\n"],"names":["_openBlock","_createElementBlock","_unref"],"mappings":";;;;;;;;;;;;AA4DA,IAAM,MAAA;AAAA,MACJ,KAAA;AAAA,MACA,IAAA;AAAA,MACA,QAAA;AAAA,MACA,cAAA;AAAA,MAEA,KAAA;AAAA,MACA,SAAA;AAAA,MACA,YAAA;AAAA,MACA,cAAA;AAAA,MAEA,cAAA;AAAA,MACA,aAAA;AAAA,MACA,eAAA;AAAA,MACA,eAAA;AAAA,MACA,WAAA;AAAA,KACF,GAAI,iBAAkB,CAAA,KAAA,EAAO,IAAI,CAAA,CAAA;AACjC,IAAM,MAAA,EAAE,YAAY,QAAU,EAAA,SAAA,EAAW,gBAAgB,SAAW,EAAA,CAAA,EAClE,GAAA,oBAAA,CAAqB,KAAO,EAAA;AAAA,MAC1B,SAAA;AAAA,MACA,YAAA;AAAA,KACD,CAAA,CAAA;AAEH,IAAa,MAAA,CAAA;AAAA,MAAA,KAAA;AAAA,KAAA,CAAA,CAAA;AAAA,IAAA,OAAA,CAAA,IAAA,EAAA,MAAA,KAAA;AAAA,MAIX,OAAAA,SAAA,EAAA,EAAAC,kBAAA,CAAA,OAAA,EAAA;AAAA,QACD,YAAA,EAAAC,KAAA,CAAA,UAAA,CAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;"}
@@ -75,7 +75,7 @@ const _sfc_main = /* @__PURE__ */ defineComponent({
75
75
  const getCellStyle = (cell) => {
76
76
  const style = {};
77
77
  const year = props.date.year();
78
- const today = new Date();
78
+ const today = /* @__PURE__ */ new Date();
79
79
  const month = cell.text;
80
80
  style.disabled = props.disabledDate ? datesInMonth(year, month, lang.value).every(props.disabledDate) : false;
81
81
  style.current = castArray(props.parsedValue).findIndex((date) => dayjs.isDayjs(date) && date.year() === year && date.month() === month) >= 0;
@@ -1 +1 @@
1
- {"version":3,"file":"basic-month-table.mjs","sources":["../../../../../../../packages/components/date-picker/src/date-picker-com/basic-month-table.vue"],"sourcesContent":["<template>\n <table\n role=\"grid\"\n :aria-label=\"t('el.datepicker.monthTablePrompt')\"\n :class=\"ns.b()\"\n @click=\"handleMonthTableClick\"\n @mousemove=\"handleMouseMove\"\n >\n <tbody ref=\"tbodyRef\">\n <tr v-for=\"(row, key) in rows\" :key=\"key\">\n <td\n v-for=\"(cell, key_) in row\"\n :key=\"key_\"\n :ref=\"(el) => isSelectedCell(cell) && (currentCellRef = el as HTMLElement)\"\n :class=\"getCellStyle(cell)\"\n :aria-selected=\"`${isSelectedCell(cell)}`\"\n :aria-label=\"t(`el.datepicker.month${+cell.text + 1}`)\"\n :tabindex=\"isSelectedCell(cell) ? 0 : -1\"\n @keydown.space.prevent.stop=\"handleMonthTableClick\"\n @keydown.enter.prevent.stop=\"handleMonthTableClick\"\n >\n <el-date-picker-cell\n :cell=\"{\n ...cell,\n renderText: t('el.datepicker.months.' + months[cell.text]),\n }\"\n />\n </td>\n </tr>\n </tbody>\n </table>\n</template>\n\n<script lang=\"ts\" setup>\nimport { computed, nextTick, ref, watch } from 'vue'\nimport dayjs from 'dayjs'\nimport { useLocale, useNamespace } from '@element-plus/hooks'\nimport { castArray, hasClass } from '@element-plus/utils'\nimport { basicMonthTableProps } from '../props/basic-month-table'\nimport { datesInMonth, getValidDateOfMonth } from '../utils'\nimport ElDatePickerCell from './basic-cell-render'\n\ntype MonthCell = {\n column: number\n row: number\n disabled: boolean\n start: boolean\n end: boolean\n text: number\n type: 'normal' | 'today'\n inRange: boolean\n}\n\nconst props = defineProps(basicMonthTableProps)\nconst emit = defineEmits(['changerange', 'pick', 'select'])\n\nconst ns = useNamespace('month-table')\n\nconst { t, lang } = useLocale()\nconst tbodyRef = ref<HTMLElement>()\nconst currentCellRef = ref<HTMLElement>()\nconst months = ref(\n props.date\n .locale('en')\n .localeData()\n .monthsShort()\n .map((_) => _.toLowerCase())\n)\nconst tableRows = ref<MonthCell[][]>([\n [] as MonthCell[],\n [] as MonthCell[],\n [] as MonthCell[],\n])\nconst lastRow = ref<number>()\nconst lastColumn = ref<number>()\nconst rows = computed<MonthCell[][]>(() => {\n const rows = tableRows.value\n\n const now = dayjs().locale(lang.value).startOf('month')\n\n for (let i = 0; i < 3; i++) {\n const row = rows[i]\n for (let j = 0; j < 4; j++) {\n const cell = (row[j] ||= {\n row: i,\n column: j,\n type: 'normal',\n inRange: false,\n start: false,\n end: false,\n text: -1,\n disabled: false,\n })\n\n cell.type = 'normal'\n\n const index = i * 4 + j\n const calTime = props.date.startOf('year').month(index)\n\n const calEndDate =\n props.rangeState.endDate ||\n props.maxDate ||\n (props.rangeState.selecting && props.minDate) ||\n null\n\n cell.inRange =\n !!(\n props.minDate &&\n calTime.isSameOrAfter(props.minDate, 'month') &&\n calEndDate &&\n calTime.isSameOrBefore(calEndDate, 'month')\n ) ||\n !!(\n props.minDate &&\n calTime.isSameOrBefore(props.minDate, 'month') &&\n calEndDate &&\n calTime.isSameOrAfter(calEndDate, 'month')\n )\n\n if (props.minDate?.isSameOrAfter(calEndDate)) {\n cell.start = !!(calEndDate && calTime.isSame(calEndDate, 'month'))\n cell.end = props.minDate && calTime.isSame(props.minDate, 'month')\n } else {\n cell.start = !!(props.minDate && calTime.isSame(props.minDate, 'month'))\n cell.end = !!(calEndDate && calTime.isSame(calEndDate, 'month'))\n }\n\n const isToday = now.isSame(calTime)\n if (isToday) {\n cell.type = 'today'\n }\n\n cell.text = index\n cell.disabled = props.disabledDate?.(calTime.toDate()) || false\n }\n }\n return rows\n})\n\nconst focus = () => {\n currentCellRef.value?.focus()\n}\n\nconst getCellStyle = (cell: MonthCell) => {\n const style = {} as any\n const year = props.date.year()\n const today = new Date()\n const month = cell.text\n\n style.disabled = props.disabledDate\n ? datesInMonth(year, month, lang.value).every(props.disabledDate)\n : false\n style.current =\n castArray(props.parsedValue).findIndex(\n (date) =>\n dayjs.isDayjs(date) && date.year() === year && date.month() === month\n ) >= 0\n style.today = today.getFullYear() === year && today.getMonth() === month\n\n if (cell.inRange) {\n style['in-range'] = true\n\n if (cell.start) {\n style['start-date'] = true\n }\n\n if (cell.end) {\n style['end-date'] = true\n }\n }\n return style\n}\n\nconst isSelectedCell = (cell: MonthCell) => {\n const year = props.date.year()\n const month = cell.text\n return (\n castArray(props.date).findIndex(\n (date) => date.year() === year && date.month() === month\n ) >= 0\n )\n}\n\nconst handleMouseMove = (event: MouseEvent) => {\n if (!props.rangeState.selecting) return\n\n let target = event.target as HTMLElement\n if (target.tagName === 'SPAN') {\n target = target.parentNode?.parentNode as HTMLElement\n }\n if (target.tagName === 'DIV') {\n target = target.parentNode as HTMLElement\n }\n if (target.tagName !== 'TD') return\n\n const row = (target.parentNode as HTMLTableRowElement).rowIndex\n const column = (target as HTMLTableCellElement).cellIndex\n // can not select disabled date\n if (rows.value[row][column].disabled) return\n\n // only update rangeState when mouse moves to a new cell\n // this avoids frequent Date object creation and improves performance\n if (row !== lastRow.value || column !== lastColumn.value) {\n lastRow.value = row\n lastColumn.value = column\n emit('changerange', {\n selecting: true,\n endDate: props.date.startOf('year').month(row * 4 + column),\n })\n }\n}\nconst handleMonthTableClick = (event: MouseEvent | KeyboardEvent) => {\n const target = (event.target as HTMLElement)?.closest(\n 'td'\n ) as HTMLTableCellElement\n if (target?.tagName !== 'TD') return\n if (hasClass(target, 'disabled')) return\n const column = target.cellIndex\n const row = (target.parentNode as HTMLTableRowElement).rowIndex\n const month = row * 4 + column\n const newDate = props.date.startOf('year').month(month)\n if (props.selectionMode === 'months') {\n if (event.type === 'keydown') {\n emit('pick', castArray(props.parsedValue), false)\n return\n }\n const newMonth = getValidDateOfMonth(\n props.date.year(),\n month,\n lang.value,\n props.disabledDate\n )\n const newValue = hasClass(target, 'current')\n ? castArray(props.parsedValue).filter(\n (d) => d?.month() !== newMonth.month()\n )\n : castArray(props.parsedValue).concat([dayjs(newMonth)])\n emit('pick', newValue)\n } else if (props.selectionMode === 'range') {\n if (!props.rangeState.selecting) {\n emit('pick', { minDate: newDate, maxDate: null })\n emit('select', true)\n } else {\n if (props.minDate && newDate >= props.minDate) {\n emit('pick', { minDate: props.minDate, maxDate: newDate })\n } else {\n emit('pick', { minDate: newDate, maxDate: props.minDate })\n }\n emit('select', false)\n }\n } else {\n emit('pick', month)\n }\n}\n\nwatch(\n () => props.date,\n async () => {\n if (tbodyRef.value?.contains(document.activeElement)) {\n await nextTick()\n currentCellRef.value?.focus()\n }\n }\n)\n\ndefineExpose({\n /**\n * @description focus current cell\n */\n focus,\n})\n</script>\n"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"basic-month-table.mjs","sources":["../../../../../../../packages/components/date-picker/src/date-picker-com/basic-month-table.vue"],"sourcesContent":["<template>\n <table\n role=\"grid\"\n :aria-label=\"t('el.datepicker.monthTablePrompt')\"\n :class=\"ns.b()\"\n @click=\"handleMonthTableClick\"\n @mousemove=\"handleMouseMove\"\n >\n <tbody ref=\"tbodyRef\">\n <tr v-for=\"(row, key) in rows\" :key=\"key\">\n <td\n v-for=\"(cell, key_) in row\"\n :key=\"key_\"\n :ref=\"(el) => isSelectedCell(cell) && (currentCellRef = el as HTMLElement)\"\n :class=\"getCellStyle(cell)\"\n :aria-selected=\"`${isSelectedCell(cell)}`\"\n :aria-label=\"t(`el.datepicker.month${+cell.text + 1}`)\"\n :tabindex=\"isSelectedCell(cell) ? 0 : -1\"\n @keydown.space.prevent.stop=\"handleMonthTableClick\"\n @keydown.enter.prevent.stop=\"handleMonthTableClick\"\n >\n <el-date-picker-cell\n :cell=\"{\n ...cell,\n renderText: t('el.datepicker.months.' + months[cell.text]),\n }\"\n />\n </td>\n </tr>\n </tbody>\n </table>\n</template>\n\n<script lang=\"ts\" setup>\nimport { computed, nextTick, ref, watch } from 'vue'\nimport dayjs from 'dayjs'\nimport { useLocale, useNamespace } from '@element-plus/hooks'\nimport { castArray, hasClass } from '@element-plus/utils'\nimport { basicMonthTableProps } from '../props/basic-month-table'\nimport { datesInMonth, getValidDateOfMonth } from '../utils'\nimport ElDatePickerCell from './basic-cell-render'\n\ntype MonthCell = {\n column: number\n row: number\n disabled: boolean\n start: boolean\n end: boolean\n text: number\n type: 'normal' | 'today'\n inRange: boolean\n}\n\nconst props = defineProps(basicMonthTableProps)\nconst emit = defineEmits(['changerange', 'pick', 'select'])\n\nconst ns = useNamespace('month-table')\n\nconst { t, lang } = useLocale()\nconst tbodyRef = ref<HTMLElement>()\nconst currentCellRef = ref<HTMLElement>()\nconst months = ref(\n props.date\n .locale('en')\n .localeData()\n .monthsShort()\n .map((_) => _.toLowerCase())\n)\nconst tableRows = ref<MonthCell[][]>([\n [] as MonthCell[],\n [] as MonthCell[],\n [] as MonthCell[],\n])\nconst lastRow = ref<number>()\nconst lastColumn = ref<number>()\nconst rows = computed<MonthCell[][]>(() => {\n const rows = tableRows.value\n\n const now = dayjs().locale(lang.value).startOf('month')\n\n for (let i = 0; i < 3; i++) {\n const row = rows[i]\n for (let j = 0; j < 4; j++) {\n const cell = (row[j] ||= {\n row: i,\n column: j,\n type: 'normal',\n inRange: false,\n start: false,\n end: false,\n text: -1,\n disabled: false,\n })\n\n cell.type = 'normal'\n\n const index = i * 4 + j\n const calTime = props.date.startOf('year').month(index)\n\n const calEndDate =\n props.rangeState.endDate ||\n props.maxDate ||\n (props.rangeState.selecting && props.minDate) ||\n null\n\n cell.inRange =\n !!(\n props.minDate &&\n calTime.isSameOrAfter(props.minDate, 'month') &&\n calEndDate &&\n calTime.isSameOrBefore(calEndDate, 'month')\n ) ||\n !!(\n props.minDate &&\n calTime.isSameOrBefore(props.minDate, 'month') &&\n calEndDate &&\n calTime.isSameOrAfter(calEndDate, 'month')\n )\n\n if (props.minDate?.isSameOrAfter(calEndDate)) {\n cell.start = !!(calEndDate && calTime.isSame(calEndDate, 'month'))\n cell.end = props.minDate && calTime.isSame(props.minDate, 'month')\n } else {\n cell.start = !!(props.minDate && calTime.isSame(props.minDate, 'month'))\n cell.end = !!(calEndDate && calTime.isSame(calEndDate, 'month'))\n }\n\n const isToday = now.isSame(calTime)\n if (isToday) {\n cell.type = 'today'\n }\n\n cell.text = index\n cell.disabled = props.disabledDate?.(calTime.toDate()) || false\n }\n }\n return rows\n})\n\nconst focus = () => {\n currentCellRef.value?.focus()\n}\n\nconst getCellStyle = (cell: MonthCell) => {\n const style = {} as any\n const year = props.date.year()\n const today = new Date()\n const month = cell.text\n\n style.disabled = props.disabledDate\n ? datesInMonth(year, month, lang.value).every(props.disabledDate)\n : false\n style.current =\n castArray(props.parsedValue).findIndex(\n (date) =>\n dayjs.isDayjs(date) && date.year() === year && date.month() === month\n ) >= 0\n style.today = today.getFullYear() === year && today.getMonth() === month\n\n if (cell.inRange) {\n style['in-range'] = true\n\n if (cell.start) {\n style['start-date'] = true\n }\n\n if (cell.end) {\n style['end-date'] = true\n }\n }\n return style\n}\n\nconst isSelectedCell = (cell: MonthCell) => {\n const year = props.date.year()\n const month = cell.text\n return (\n castArray(props.date).findIndex(\n (date) => date.year() === year && date.month() === month\n ) >= 0\n )\n}\n\nconst handleMouseMove = (event: MouseEvent) => {\n if (!props.rangeState.selecting) return\n\n let target = event.target as HTMLElement\n if (target.tagName === 'SPAN') {\n target = target.parentNode?.parentNode as HTMLElement\n }\n if (target.tagName === 'DIV') {\n target = target.parentNode as HTMLElement\n }\n if (target.tagName !== 'TD') return\n\n const row = (target.parentNode as HTMLTableRowElement).rowIndex\n const column = (target as HTMLTableCellElement).cellIndex\n // can not select disabled date\n if (rows.value[row][column].disabled) return\n\n // only update rangeState when mouse moves to a new cell\n // this avoids frequent Date object creation and improves performance\n if (row !== lastRow.value || column !== lastColumn.value) {\n lastRow.value = row\n lastColumn.value = column\n emit('changerange', {\n selecting: true,\n endDate: props.date.startOf('year').month(row * 4 + column),\n })\n }\n}\nconst handleMonthTableClick = (event: MouseEvent | KeyboardEvent) => {\n const target = (event.target as HTMLElement)?.closest(\n 'td'\n ) as HTMLTableCellElement\n if (target?.tagName !== 'TD') return\n if (hasClass(target, 'disabled')) return\n const column = target.cellIndex\n const row = (target.parentNode as HTMLTableRowElement).rowIndex\n const month = row * 4 + column\n const newDate = props.date.startOf('year').month(month)\n if (props.selectionMode === 'months') {\n if (event.type === 'keydown') {\n emit('pick', castArray(props.parsedValue), false)\n return\n }\n const newMonth = getValidDateOfMonth(\n props.date.year(),\n month,\n lang.value,\n props.disabledDate\n )\n const newValue = hasClass(target, 'current')\n ? castArray(props.parsedValue).filter(\n (d) => d?.month() !== newMonth.month()\n )\n : castArray(props.parsedValue).concat([dayjs(newMonth)])\n emit('pick', newValue)\n } else if (props.selectionMode === 'range') {\n if (!props.rangeState.selecting) {\n emit('pick', { minDate: newDate, maxDate: null })\n emit('select', true)\n } else {\n if (props.minDate && newDate >= props.minDate) {\n emit('pick', { minDate: props.minDate, maxDate: newDate })\n } else {\n emit('pick', { minDate: newDate, maxDate: props.minDate })\n }\n emit('select', false)\n }\n } else {\n emit('pick', month)\n }\n}\n\nwatch(\n () => props.date,\n async () => {\n if (tbodyRef.value?.contains(document.activeElement)) {\n await nextTick()\n currentCellRef.value?.focus()\n }\n }\n)\n\ndefineExpose({\n /**\n * @description focus current cell\n */\n focus,\n})\n</script>\n"],"names":["rows","_openBlock","_unref","_normalizeClass","_createElementVNode"],"mappings":";;;;;;;;;;;;;;;;;;;AAwDA,IAAM,MAAA,EAAA,GAAK,aAAa,aAAa,CAAA,CAAA;AAErC,IAAA,MAAM,EAAE,CAAA,EAAG,IAAK,EAAA,GAAI,SAAU,EAAA,CAAA;AAC9B,IAAA,MAAM,WAAW,GAAiB,EAAA,CAAA;AAClC,IAAA,MAAM,iBAAiB,GAAiB,EAAA,CAAA;AACxC,IAAA,MAAM,MAAS,GAAA,GAAA,CAAA,KAAA,CAAA,IAAA,CAAA,MAAA,CAAA,IAAA,CAAA,CAAA,UAAA,EAAA,CAAA,WAAA,EAAA,CAAA,GAAA,CAAA,CAAA,CAAA,KAAA,CAAA,CAAA,WAAA,EAAA,CAAA,CAAA,CAAA;AAAA,IAAA,MACP,SACI,GAAA,GAAA,CAAA;AAGmB,MAC/B,EAAA;AACA,MAAA,EAAA;AAAqC,MACnC,EAAC;AAAA,KAAA,CACD,CAAC;AAAA,IAAA,MACA,OAAA,GAAA,GAAA,EAAA,CAAA;AAAA,IACH,MAAC,UAAA,GAAA,GAAA,EAAA,CAAA;AACD,IAAA,MAAM,eAAsB,CAAA,MAAA;AAC5B,MAAA,IAAM;AACN,MAAM,MAAA,KAAO,YAA8B,CAAA,KAAA,CAAA;AACzC,MAAA,MAAMA,WAAiB,EAAA,CAAA,MAAA,CAAA,IAAA,CAAA,KAAA,CAAA,CAAA,OAAA,CAAA,OAAA,CAAA,CAAA;AAEvB,MAAM,KAAA,IAAA,CAAA,UAAc,CAAA,EAAA,CAAA,EAAA;AAEpB,QAAA,MAAA,GAAa,GAAA,KAAO,CAAA,CAAA,CAAA,CAAG;AACrB,QAAM,KAAA,IAAA,CAAA,UAAY,CAAA,EAAA,CAAA,EAAA,EAAA;AAClB,UAAA,MAAA,IAAa,GAAA,GAAO,CAAA,CAAA,CAAA,KAAQ,GAAA,CAAA,CAAA,CAAA,GAAA;AAC1B,YAAM,GAAA,EAAA,CAAA;AAAmB,YACvB,MAAK,EAAA,CAAA;AAAA,YACL,IAAQ,EAAA,QAAA;AAAA,YACR,OAAM,EAAA,KAAA;AAAA,YACN,KAAS,EAAA,KAAA;AAAA,YACT,GAAO,EAAA,KAAA;AAAA,YACP,IAAK,EAAA,CAAA,CAAA;AAAA,YACL,QAAM,EAAA,KAAA;AAAA,WAAA,CACN,CAAU;AAAA,UACZ,IAAA,CAAA,IAAA,GAAA,QAAA,CAAA;AAEA,UAAA,MAAY,KAAA,GAAA,CAAA,GAAA,CAAA,GAAA,CAAA,CAAA;AAEZ,UAAM,MAAA,OAAA,QAAgB,CAAA,IAAA,CAAA,OAAA,CAAA,MAAA,CAAA,CAAA,KAAA,CAAA,KAAA,CAAA,CAAA;AACtB,UAAA,MAAM,UAAU,GAAM,KAAA,CAAA,UAAa,CAAM,OAAE,SAAW,CAAA,OAAA,IAAA,KAAA,CAAA,UAAA,CAAA,SAAA,IAAA,KAAA,CAAA,OAAA,IAAA,IAAA,CAAA;AAEtD,UAAM,IAAA,CAAA,OAAA,GAAA,CAAA,EAAA,KACE,CAAA,OAAA,IAAA,OACN,CAAA,2BACO,EAAA,OAAA,CAAA,IAAwB,UAAA,IAAA,OAC/B,CAAA,cAAA,CAAA,UAAA,EAAA,OAAA,CAAA,CAAA,IAAA,CAAA,EAAA,KAAA,CAAA,OAAA,IAAA,OAAA,CAAA,cAAA,CAAA,KAAA,CAAA,OAAA,EAAA,OAAA,CAAA,IAAA,UAAA,IAAA,OAAA,CAAA,aAAA,CAAA,UAAA,EAAA,OAAA,CAAA,CAAA,CAAA;AAEF,UAAA,IAAA,CAAK,EACH,GAAA,KAAA,CAAC,OACC,KACA,IAAA,GAAA,KAAA,CAAA,GAAsB,EAAA,CAAA,aAAA,CAAA,UAAe,CAAA,EAAA;AAWzC,YAAA,IAAU,CAAA,KAAA,GAAA,CAAA,EAAA,UAAuB,IAAA,OAAA,CAAA,MAAa,CAAA,UAAA,EAAA,OAAA,CAAA,CAAA,CAAA;AAC5C,YAAA,IAAA,CAAK,WAAW,mBAAsB,CAAA,MAAA,CAAA,eAA0B,OAAA,CAAA,CAAA;AAChE,WAAA,MAAK;AAA4D,YAC5D,IAAA,CAAA,KAAA,GAAA,CAAA,EAAA,KAAA,CAAA,OAAA,IAAA,OAAA,CAAA,MAAA,CAAA,KAAA,CAAA,OAAA,EAAA,OAAA,CAAA,CAAA,CAAA;AACL,YAAK,IAAA,CAAA,GAAA,GAAA,CAAA,EAAS,qBAA2B,CAAA,MAAA,CAAA,UAAa,EAAA,OAAA,CAAS,CAAO,CAAA;AACtE,WAAA;AAA8D,UAChE,MAAA,OAAA,GAAA,GAAA,CAAA,MAAA,CAAA,OAAA,CAAA,CAAA;AAEA,UAAM,IAAA,OAAA,EAAA;AACN,YAAA,IAAa,CAAA,IAAA,GAAA,OAAA,CAAA;AACX,WAAA;AAAY,UACd,IAAA,CAAA,IAAA,GAAA,KAAA,CAAA;AAEA,UAAA,IAAA,CAAK,QAAO,GAAA,CAAA,CAAA,EAAA,GAAA,KAAA,CAAA,YAAA,KAAA,IAAA,GAAA,KAAA,CAAA,GAAA,EAAA,CAAA,IAAA,CAAA,KAAA,EAAA,OAAA,CAAA,MAAA,EAAA,CAAA,KAAA,KAAA,CAAA;AACZ,SAAA;AAA0D,OAC5D;AAAA,MACF,OAAA,KAAA,CAAA;AACA,KAAOA,CAAAA,CAAAA;AAAA,IACT,MAAC,KAAA,GAAA,MAAA;AAED,MAAA,IAAM;AACJ,MAAA,CAAA,EAAA,GAAA,oBAA4B,KAAA,IAAA,GAAA,KAAA,CAAA,GAAA,EAAA,CAAA,KAAA,EAAA,CAAA;AAAA,KAC9B,CAAA;AAEA,IAAM,MAAA,YAAA,GAAe,CAAC,IAAoB,KAAA;AACxC,MAAA,MAAM,QAAQ,EAAC,CAAA;AACf,MAAM,MAAA,IAAA,GAAO,KAAM,CAAA,IAAA,CAAK,IAAK,EAAA,CAAA;AAC7B,MAAM,MAAA,KAAA,uBAAY,IAAK,EAAA,CAAA;AACvB,MAAA,MAAM,QAAQ,IAAK,CAAA,IAAA,CAAA;AAEnB,MAAA,KAAA,CAAM,QAAW,GAAA,KAAA,CAAM,YACnB,GAAA,YAAA,CAAa,IAAM,EAAA,KAAA,EAAO,IAAK,CAAA,KAAK,CAAE,CAAA,KAAA,CAAM,KAAM,CAAA,YAAY,CAC9D,GAAA,KAAA,CAAA;AACJ,MAAA,KAAA,CAAM,OACJ,GAAA,SAAA,CAAU,KAAM,CAAA,WAAW,CAAE,CAAA,SAAA,CAAA,CAAA,IAAA,KAAA,KAAA,CAAA,OAAA,CAAA,IAAA,CAAA,IAAA,IAAA,CAAA,IAAA,EAAA,KAAA,IAAA,IAAA,IAAA,CAAA,KAAA,EAAA,KAAA,KAAA,CAAA,IAAA,CAAA,CAAA;AAAA,MAAA,KAC1B,CAAA,KAAA,GACO,KAAA,CAAA,WAAY,EAAA,KAAU,IAAA,IAAW,KAAA,CAAA,QAAa,EAAA,KAAA,KAAY,CAAA;AAAA,MACpE,IAAK,IAAA,CAAA,OAAA,EAAA;AACP,QAAA,gBAAoB,CAAA,GAAA,IAAA,CAAA;AAEpB,QAAA,QAAkB,CAAA,KAAA,EAAA;AAChB,UAAA,kBAAoB,CAAA,GAAA,IAAA,CAAA;AAEpB,SAAA;AACE,QAAA,IAAA,IAAM;AAAgB,UACxB,KAAA,CAAA,UAAA,CAAA,GAAA,IAAA,CAAA;AAEA,SAAA;AACE,OAAA;AAAoB,MACtB,OAAA,KAAA,CAAA;AAAA,KACF,CAAA;AACA,IAAO,MAAA,cAAA,GAAA,CAAA,IAAA,KAAA;AAAA,MACT,MAAA,IAAA,GAAA,KAAA,CAAA,IAAA,CAAA,IAAA,EAAA,CAAA;AAEA,MAAM,MAAA,KAAA,GAAA,IAAA,CAAA,IAAsC,CAAA;AAC1C,MAAM,OAAA,SAAa,CAAA,KAAA,CAAA,IAAU,CAAA,CAAA,SAAA,CAAA,CAAA,IAAA,KAAA,IAAA,CAAA,IAAA,EAAA,KAAA,IAAA,IAAA,IAAA,CAAA,KAAA,EAAA,KAAA,KAAA,CAAA,IAAA,CAAA,CAAA;AAC7B,KAAA,CAAA;AACA,IACE,MAAA,eAAgB,GAAA,CAAA,KAAM,KAAA;AAAA,MACpB;AAAmD,MACrD,IAAK,CAAA,KAAA,CAAA,UAAA,CAAA,SAAA;AAAA,QAET,OAAA;AAEA,MAAM,IAAA,MAAA,GAAA,KAAA,CAAA,MAAyC,CAAA;AAC7C,MAAI,IAAA,MAAO,CAAA,OAAA,KAAsB,MAAA,EAAA;AAEjC,QAAA,YAAmB,GAAA,MAAA,CAAA,UAAA,KAAA,IAAA,GAAA,KAAA,CAAA,GAAA,EAAA,CAAA,UAAA,CAAA;AACnB,OAAI;AACF,MAAA,IAAA,MAAA,CAAS,OAAO,KAAY,KAAA,EAAA;AAAA,QAC9B,MAAA,GAAA,MAAA,CAAA,UAAA,CAAA;AACA,OAAI;AACF,MAAA,IAAA,MAAA,CAAS,OAAO,KAAA,IAAA;AAAA,QAClB,OAAA;AACA,MAAI,MAAA,GAAA,oBAAyB,CAAA,QAAA,CAAA;AAE7B,MAAM,MAAA,MAAO,SAA0C,CAAA,SAAA,CAAA;AACvD,MAAA,IAAA,WAAgB,GAAgC,CAAA,CAAA,MAAA,CAAA,CAAA,QAAA;AAEhD,QAAA,OAAS;AAIT,MAAA,IAAI,GAAQ,KAAA,OAAA,CAAQ,KAAS,IAAA,MAAA,KAAW,WAAW,KAAO,EAAA;AACxD,QAAA,OAAA,CAAQ,KAAQ,GAAA,GAAA,CAAA;AAChB,QAAA,UAAA,CAAW,KAAQ,GAAA,MAAA,CAAA;AACnB,QAAA,IAAA,CAAK,aAAe,EAAA;AAAA,UAClB,SAAW,EAAA,IAAA;AAAA,UACX,OAAA,EAAS,MAAM,IAAK,CAAA,OAAA,CAAQ,MAAM,CAAE,CAAA,KAAA,CAAM,GAAM,GAAA,CAAA,GAAI,MAAM,CAAA;AAAA,SAC3D,CAAA,CAAA;AAAA,OACH;AAAA,KACF,CAAA;AACA,IAAM,MAAA,qBAAA,GAAwB,CAAC,KAAsC,KAAA;AACnE,MAAM,IAAA,EAAA,CAAA;AAAwC,MAC5C,MAAA,MAAA,GAAA,CAAA,EAAA,GAAA,KAAA,CAAA,MAAA,KAAA,IAAA,GAAA,KAAA,CAAA,GAAA,EAAA,CAAA,OAAA,CAAA,IAAA,CAAA,CAAA;AAAA,MACF,IAAA,CAAA,MAAA,IAAA,IAAA,GAAA,KAAA,CAAA,GAAA,MAAA,CAAA,OAAA,MAAA,IAAA;AACA,QAAI,OAAA;AACJ,MAAI,IAAA,QAAA,CAAS,MAAQ,EAAA,UAAU,CAAG;AAClC,QAAA;AACA,MAAM,MAAA,MAAO,SAA0C,CAAA,SAAA,CAAA;AACvD,MAAM,MAAA,GAAA,GAAA,iBAAkB,CAAA,QAAA,CAAA;AACxB,MAAA,MAAM,WAAgB,GAAA,CAAA,GAAA;AACtB,MAAI,MAAA,4BAAkC,CAAA,MAAA,CAAA,CAAA,KAAA,CAAA,KAAA,CAAA,CAAA;AACpC,MAAI,IAAA,KAAA,CAAA,aAA0B,KAAA,QAAA,EAAA;AAC5B,QAAA,IAAA,KAAa,CAAA,IAAA,KAAA,SAAgB,EAAA;AAC7B,UAAA,IAAA,CAAA,MAAA,EAAA,SAAA,CAAA,KAAA,CAAA,WAAA,CAAA,EAAA,KAAA,CAAA,CAAA;AAAA,UACF,OAAA;AACA,SAAA;AAAiB,QACf,MAAA,QAAgB,GAAA,mBAAA,CAAA,KAAA,CAAA,IAAA,CAAA,IAAA,EAAA,EAAA,KAAA,EAAA,IAAA,CAAA,KAAA,EAAA,KAAA,CAAA,YAAA,CAAA,CAAA;AAAA,QAChB,MAAA,QAAA,GAAA,QAAA,CAAA,MAAA,EAAA,SAAA,CAAA,GAAA,SAAA,CAAA,KAAA,CAAA,WAAA,CAAA,CAAA,MAAA,CAAA,CAAA,CAAA,KAAA,CAAA,CAAA,IAAA,IAAA,GAAA,KAAA,CAAA,GAAA,CAAA,CAAA,KAAA,EAAA,MAAA,QAAA,CAAA,KAAA,EAAA,CAAA,GAAA,SAAA,CAAA,KAAA,CAAA,WAAA,CAAA,CAAA,MAAA,CAAA,CAAA,KAAA,CAAA,QAAA,CAAA,CAAA,CAAA,CAAA;AAAA,QAAA,IACK,CAAA,MAAA,EAAA,QAAA,CAAA,CAAA;AAAA,OAAA,MACC,IAAA,KAAA,CAAA,aAAA,KAAA,OAAA,EAAA;AAAA,QACR,IAAA,CAAA,KAAA,CAAA,UAAA,CAAA,SAAA,EAAA;AACA,UAAM,IAAA,CAAA,MAAA,EAAA,EAAW,SAAS,OAAQ,EAAA,OAAA,MACpB,EAAA,CAAA,CAAA;AAAmB,UAC3B,IAAO,CAAA,QAAS,EAAA,IAAA,CAAA,CAAA;AAAqB,SACvC,MACU;AACd,UAAA,iBAAqB,IAAA,OAAA,IAAA,KAAA,CAAA,OAAA,EAAA;AAAA,YACvB,IAAA,CAAW,MAAM,EAAA,EAAA,OAAA,EAAA,KAAkB,CAAS,OAAA,EAAA,OAAA,EAAA,OAAA,EAAA,CAAA,CAAA;AAC1C,WAAI,MAAO;AACT,YAAA,WAAa,EAAE,EAAA,OAAS,EAAS,OAAA,EAAA,OAAS,OAAM,CAAA,OAAA,EAAA,CAAA,CAAA;AAChD,WAAA;AAAmB,UACd,IAAA,CAAA,QAAA,EAAA,KAAA,CAAA,CAAA;AACL,SAAA;AACE,OAAA,MAAA;AAAyD,QAAA,IACpD,CAAA,MAAA,EAAA,KAAA,CAAA,CAAA;AACL,OAAA;AAAyD,KAC3D,CAAA;AACA,IAAA,KAAA,CAAA,gBAAoB,EAAA,YAAA;AAAA,MACtB,IAAA,EAAA,EAAA,EAAA,CAAA;AAAA,MACF,IAAO,CAAA,EAAA,GAAA,QAAA,CAAA,KAAA,KAAA,IAAA,GAAA,KAAA,CAAA,GAAA,EAAA,CAAA,QAAA,CAAA,QAAA,CAAA,aAAA,CAAA,EAAA;AACL,QAAA,cAAkB,EAAA,CAAA;AAAA,QACpB,CAAA,EAAA,GAAA,cAAA,CAAA,KAAA,KAAA,IAAA,GAAA,KAAA,CAAA,GAAA,EAAA,CAAA,KAAA,EAAA,CAAA;AAAA,OACF;AAEA,KAAA,CAAA,CAAA;AAAA,IAAA;AACc,MACZ,KAAY;AACV,KAAA,CAAA,CAAA;AACE,IAAA,OAAA,CAAA,IAAM,EAAS,MAAA,KAAA;AACf,MAAA,OAAAC,SAAA,EAAe,oBAAa,CAAA,OAAA,EAAA;AAAA,QAC9B,IAAA,EAAA,MAAA;AAAA,QACF,YAAA,EAAAC,KAAA,CAAA,CAAA,CAAA,CAAA,gCAAA,CAAA;AAAA,QACF,KAAA,EAAAC,cAAA,CAAAD,KAAA,CAAA,EAAA,CAAA,CAAA,CAAA,EAAA,CAAA;AAEA,QAAa,OAAA,EAAA,qBAAA;AAAA,QAAA,WAAA,EAAA,eAAA;AAAA,OAAA,EAAA;AAAA,QAAAE,kBAAA,CAAA,OAAA,EAAA;AAAA,UAIX,OAAA,EAAA,UAAA;AAAA,UACD,GAAA,EAAA,QAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;"}
@@ -1 +1 @@
1
- {"version":3,"file":"basic-year-table.mjs","sources":["../../../../../../../packages/components/date-picker/src/date-picker-com/basic-year-table.vue"],"sourcesContent":["<template>\n <table\n role=\"grid\"\n :aria-label=\"t('el.datepicker.yearTablePrompt')\"\n :class=\"ns.b()\"\n @click=\"handleYearTableClick\"\n @mousemove=\"handleMouseMove\"\n >\n <tbody ref=\"tbodyRef\">\n <tr v-for=\"(row, rowKey) in rows\" :key=\"rowKey\">\n <td\n v-for=\"(cell, cellKey) in row\"\n :key=\"`${rowKey}_${cellKey}`\"\n :ref=\"(el) => isSelectedCell(cell) && (currentCellRef = el as HTMLElement)\"\n class=\"available\"\n :class=\"getCellKls(cell)\"\n :aria-selected=\"isSelectedCell(cell)\"\n :aria-label=\"String(cell.text)\"\n :tabindex=\"isSelectedCell(cell) ? 0 : -1\"\n @keydown.space.prevent.stop=\"handleYearTableClick\"\n @keydown.enter.prevent.stop=\"handleYearTableClick\"\n >\n <el-date-picker-cell :cell=\"cell\" />\n </td>\n </tr>\n </tbody>\n </table>\n</template>\n\n<script lang=\"ts\" setup>\nimport { computed, nextTick, ref, watch } from 'vue'\nimport dayjs from 'dayjs'\nimport { useLocale, useNamespace } from '@element-plus/hooks'\nimport { rangeArr } from '@element-plus/components/time-picker'\nimport { castArray, hasClass } from '@element-plus/utils'\nimport { basicYearTableProps } from '../props/basic-year-table'\nimport { getValidDateOfYear } from '../utils'\nimport ElDatePickerCell from './basic-cell-render'\n\ntype YearCell = {\n column: number\n row: number\n disabled: boolean\n start: boolean\n end: boolean\n text: number\n type: 'normal' | 'today'\n inRange: boolean\n}\n\nconst datesInYear = (year: number, lang: string) => {\n const firstDay = dayjs(String(year)).locale(lang).startOf('year')\n const lastDay = firstDay.endOf('year')\n const numOfDays = lastDay.dayOfYear()\n return rangeArr(numOfDays).map((n) => firstDay.add(n, 'day').toDate())\n}\n\nconst props = defineProps(basicYearTableProps)\nconst emit = defineEmits(['changerange', 'pick', 'select'])\n\nconst ns = useNamespace('year-table')\n\nconst { t, lang } = useLocale()\nconst tbodyRef = ref<HTMLElement>()\nconst currentCellRef = ref<HTMLElement>()\nconst startYear = computed(() => {\n return Math.floor(props.date.year() / 10) * 10\n})\n\nconst tableRows = ref<YearCell[][]>([[], [], []])\nconst lastRow = ref<number>()\nconst lastColumn = ref<number>()\nconst rows = computed(() => {\n const rows = tableRows.value\n const now = dayjs().locale(lang.value).startOf('year')\n\n for (let i = 0; i < 3; i++) {\n const row = rows[i]\n for (let j = 0; j < 4; j++) {\n if (i * 4 + j >= 10) {\n break\n }\n let cell = row[j]\n if (!cell) {\n cell = {\n row: i,\n column: j,\n type: 'normal',\n inRange: false,\n start: false,\n end: false,\n text: -1,\n disabled: false,\n }\n }\n cell.type = 'normal'\n const index = i * 4 + j + startYear.value\n const calTime = dayjs().year(index)\n\n const calEndDate =\n props.rangeState.endDate ||\n props.maxDate ||\n (props.rangeState.selecting && props.minDate) ||\n null\n\n cell.inRange =\n !!(\n props.minDate &&\n calTime.isSameOrAfter(props.minDate, 'year') &&\n calEndDate &&\n calTime.isSameOrBefore(calEndDate, 'year')\n ) ||\n !!(\n props.minDate &&\n calTime.isSameOrBefore(props.minDate, 'year') &&\n calEndDate &&\n calTime.isSameOrAfter(calEndDate, 'year')\n )\n\n if (props.minDate?.isSameOrAfter(calEndDate)) {\n cell.start = !!(calEndDate && calTime.isSame(calEndDate, 'year'))\n cell.end = !!(props.minDate && calTime.isSame(props.minDate, 'year'))\n } else {\n cell.start = !!(props.minDate && calTime.isSame(props.minDate, 'year'))\n cell.end = !!(calEndDate && calTime.isSame(calEndDate, 'year'))\n }\n\n const isToday = now.isSame(calTime)\n if (isToday) {\n cell.type = 'today'\n }\n cell.text = index\n const cellDate = calTime.toDate()\n cell.disabled =\n (props.disabledDate && props.disabledDate(cellDate)) || false\n row[j] = cell\n }\n }\n return rows\n})\n\nconst focus = () => {\n currentCellRef.value?.focus()\n}\n\nconst getCellKls = (cell: YearCell) => {\n const kls: Record<string, boolean> = {}\n const today = dayjs().locale(lang.value)\n const year = cell.text\n\n kls.disabled = props.disabledDate\n ? datesInYear(year, lang.value).every(props.disabledDate)\n : false\n\n kls.today = today.year() === year\n kls.current =\n castArray(props.parsedValue).findIndex((d) => d!.year() === year) >= 0\n\n if (cell.inRange) {\n kls['in-range'] = true\n\n if (cell.start) {\n kls['start-date'] = true\n }\n\n if (cell.end) {\n kls['end-date'] = true\n }\n }\n return kls\n}\n\nconst isSelectedCell = (cell: YearCell) => {\n const year = cell.text\n return castArray(props.date).findIndex((date) => date.year() === year) >= 0\n}\n\nconst handleYearTableClick = (event: MouseEvent | KeyboardEvent) => {\n const target = (event.target as HTMLElement)?.closest(\n 'td'\n ) as HTMLTableCellElement\n if (!target || !target.textContent || hasClass(target, 'disabled')) return\n\n const column = target.cellIndex\n const row = (target.parentNode as HTMLTableRowElement).rowIndex\n const selectedYear = row * 4 + column + startYear.value\n const newDate = dayjs().year(selectedYear)\n if (props.selectionMode === 'range') {\n if (!props.rangeState.selecting) {\n emit('pick', { minDate: newDate, maxDate: null })\n emit('select', true)\n } else {\n if (props.minDate && newDate >= props.minDate) {\n emit('pick', { minDate: props.minDate, maxDate: newDate })\n } else {\n emit('pick', { minDate: newDate, maxDate: props.minDate })\n }\n emit('select', false)\n }\n } else if (props.selectionMode === 'years') {\n if (event.type === 'keydown') {\n emit('pick', castArray(props.parsedValue), false)\n return\n }\n const vaildYear = getValidDateOfYear(\n newDate.startOf('year'),\n lang.value,\n props.disabledDate\n )\n const newValue = hasClass(target, 'current')\n ? castArray(props.parsedValue).filter((d) => d?.year() !== selectedYear)\n : castArray(props.parsedValue).concat([vaildYear])\n emit('pick', newValue)\n } else {\n emit('pick', selectedYear)\n }\n}\n\nconst handleMouseMove = (event: MouseEvent) => {\n if (!props.rangeState.selecting) return\n const target = (event.target as HTMLElement)?.closest(\n 'td'\n ) as HTMLTableCellElement\n if (!target) return\n\n const row = (target.parentNode as HTMLTableRowElement).rowIndex\n const column = (target as HTMLTableCellElement).cellIndex\n\n // can not select disabled date\n if (rows.value[row][column].disabled) return\n\n // only update rangeState when mouse moves to a new cell\n // this avoids frequent Date object creation and improves performance\n if (row !== lastRow.value || column !== lastColumn.value) {\n lastRow.value = row\n lastColumn.value = column\n emit('changerange', {\n selecting: true,\n endDate: dayjs()\n .year(startYear.value)\n .add(row * 4 + column, 'year'),\n })\n }\n}\n\nwatch(\n () => props.date,\n async () => {\n if (tbodyRef.value?.contains(document.activeElement)) {\n await nextTick()\n currentCellRef.value?.focus()\n }\n }\n)\n\ndefineExpose({\n /**\n * @description focus on the current cell\n */\n focus,\n})\n</script>\n"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"basic-year-table.mjs","sources":["../../../../../../../packages/components/date-picker/src/date-picker-com/basic-year-table.vue"],"sourcesContent":["<template>\n <table\n role=\"grid\"\n :aria-label=\"t('el.datepicker.yearTablePrompt')\"\n :class=\"ns.b()\"\n @click=\"handleYearTableClick\"\n @mousemove=\"handleMouseMove\"\n >\n <tbody ref=\"tbodyRef\">\n <tr v-for=\"(row, rowKey) in rows\" :key=\"rowKey\">\n <td\n v-for=\"(cell, cellKey) in row\"\n :key=\"`${rowKey}_${cellKey}`\"\n :ref=\"(el) => isSelectedCell(cell) && (currentCellRef = el as HTMLElement)\"\n class=\"available\"\n :class=\"getCellKls(cell)\"\n :aria-selected=\"isSelectedCell(cell)\"\n :aria-label=\"String(cell.text)\"\n :tabindex=\"isSelectedCell(cell) ? 0 : -1\"\n @keydown.space.prevent.stop=\"handleYearTableClick\"\n @keydown.enter.prevent.stop=\"handleYearTableClick\"\n >\n <el-date-picker-cell :cell=\"cell\" />\n </td>\n </tr>\n </tbody>\n </table>\n</template>\n\n<script lang=\"ts\" setup>\nimport { computed, nextTick, ref, watch } from 'vue'\nimport dayjs from 'dayjs'\nimport { useLocale, useNamespace } from '@element-plus/hooks'\nimport { rangeArr } from '@element-plus/components/time-picker'\nimport { castArray, hasClass } from '@element-plus/utils'\nimport { basicYearTableProps } from '../props/basic-year-table'\nimport { getValidDateOfYear } from '../utils'\nimport ElDatePickerCell from './basic-cell-render'\n\ntype YearCell = {\n column: number\n row: number\n disabled: boolean\n start: boolean\n end: boolean\n text: number\n type: 'normal' | 'today'\n inRange: boolean\n}\n\nconst datesInYear = (year: number, lang: string) => {\n const firstDay = dayjs(String(year)).locale(lang).startOf('year')\n const lastDay = firstDay.endOf('year')\n const numOfDays = lastDay.dayOfYear()\n return rangeArr(numOfDays).map((n) => firstDay.add(n, 'day').toDate())\n}\n\nconst props = defineProps(basicYearTableProps)\nconst emit = defineEmits(['changerange', 'pick', 'select'])\n\nconst ns = useNamespace('year-table')\n\nconst { t, lang } = useLocale()\nconst tbodyRef = ref<HTMLElement>()\nconst currentCellRef = ref<HTMLElement>()\nconst startYear = computed(() => {\n return Math.floor(props.date.year() / 10) * 10\n})\n\nconst tableRows = ref<YearCell[][]>([[], [], []])\nconst lastRow = ref<number>()\nconst lastColumn = ref<number>()\nconst rows = computed(() => {\n const rows = tableRows.value\n const now = dayjs().locale(lang.value).startOf('year')\n\n for (let i = 0; i < 3; i++) {\n const row = rows[i]\n for (let j = 0; j < 4; j++) {\n if (i * 4 + j >= 10) {\n break\n }\n let cell = row[j]\n if (!cell) {\n cell = {\n row: i,\n column: j,\n type: 'normal',\n inRange: false,\n start: false,\n end: false,\n text: -1,\n disabled: false,\n }\n }\n cell.type = 'normal'\n const index = i * 4 + j + startYear.value\n const calTime = dayjs().year(index)\n\n const calEndDate =\n props.rangeState.endDate ||\n props.maxDate ||\n (props.rangeState.selecting && props.minDate) ||\n null\n\n cell.inRange =\n !!(\n props.minDate &&\n calTime.isSameOrAfter(props.minDate, 'year') &&\n calEndDate &&\n calTime.isSameOrBefore(calEndDate, 'year')\n ) ||\n !!(\n props.minDate &&\n calTime.isSameOrBefore(props.minDate, 'year') &&\n calEndDate &&\n calTime.isSameOrAfter(calEndDate, 'year')\n )\n\n if (props.minDate?.isSameOrAfter(calEndDate)) {\n cell.start = !!(calEndDate && calTime.isSame(calEndDate, 'year'))\n cell.end = !!(props.minDate && calTime.isSame(props.minDate, 'year'))\n } else {\n cell.start = !!(props.minDate && calTime.isSame(props.minDate, 'year'))\n cell.end = !!(calEndDate && calTime.isSame(calEndDate, 'year'))\n }\n\n const isToday = now.isSame(calTime)\n if (isToday) {\n cell.type = 'today'\n }\n cell.text = index\n const cellDate = calTime.toDate()\n cell.disabled =\n (props.disabledDate && props.disabledDate(cellDate)) || false\n row[j] = cell\n }\n }\n return rows\n})\n\nconst focus = () => {\n currentCellRef.value?.focus()\n}\n\nconst getCellKls = (cell: YearCell) => {\n const kls: Record<string, boolean> = {}\n const today = dayjs().locale(lang.value)\n const year = cell.text\n\n kls.disabled = props.disabledDate\n ? datesInYear(year, lang.value).every(props.disabledDate)\n : false\n\n kls.today = today.year() === year\n kls.current =\n castArray(props.parsedValue).findIndex((d) => d!.year() === year) >= 0\n\n if (cell.inRange) {\n kls['in-range'] = true\n\n if (cell.start) {\n kls['start-date'] = true\n }\n\n if (cell.end) {\n kls['end-date'] = true\n }\n }\n return kls\n}\n\nconst isSelectedCell = (cell: YearCell) => {\n const year = cell.text\n return castArray(props.date).findIndex((date) => date.year() === year) >= 0\n}\n\nconst handleYearTableClick = (event: MouseEvent | KeyboardEvent) => {\n const target = (event.target as HTMLElement)?.closest(\n 'td'\n ) as HTMLTableCellElement\n if (!target || !target.textContent || hasClass(target, 'disabled')) return\n\n const column = target.cellIndex\n const row = (target.parentNode as HTMLTableRowElement).rowIndex\n const selectedYear = row * 4 + column + startYear.value\n const newDate = dayjs().year(selectedYear)\n if (props.selectionMode === 'range') {\n if (!props.rangeState.selecting) {\n emit('pick', { minDate: newDate, maxDate: null })\n emit('select', true)\n } else {\n if (props.minDate && newDate >= props.minDate) {\n emit('pick', { minDate: props.minDate, maxDate: newDate })\n } else {\n emit('pick', { minDate: newDate, maxDate: props.minDate })\n }\n emit('select', false)\n }\n } else if (props.selectionMode === 'years') {\n if (event.type === 'keydown') {\n emit('pick', castArray(props.parsedValue), false)\n return\n }\n const vaildYear = getValidDateOfYear(\n newDate.startOf('year'),\n lang.value,\n props.disabledDate\n )\n const newValue = hasClass(target, 'current')\n ? castArray(props.parsedValue).filter((d) => d?.year() !== selectedYear)\n : castArray(props.parsedValue).concat([vaildYear])\n emit('pick', newValue)\n } else {\n emit('pick', selectedYear)\n }\n}\n\nconst handleMouseMove = (event: MouseEvent) => {\n if (!props.rangeState.selecting) return\n const target = (event.target as HTMLElement)?.closest(\n 'td'\n ) as HTMLTableCellElement\n if (!target) return\n\n const row = (target.parentNode as HTMLTableRowElement).rowIndex\n const column = (target as HTMLTableCellElement).cellIndex\n\n // can not select disabled date\n if (rows.value[row][column].disabled) return\n\n // only update rangeState when mouse moves to a new cell\n // this avoids frequent Date object creation and improves performance\n if (row !== lastRow.value || column !== lastColumn.value) {\n lastRow.value = row\n lastColumn.value = column\n emit('changerange', {\n selecting: true,\n endDate: dayjs()\n .year(startYear.value)\n .add(row * 4 + column, 'year'),\n })\n }\n}\n\nwatch(\n () => props.date,\n async () => {\n if (tbodyRef.value?.contains(document.activeElement)) {\n await nextTick()\n currentCellRef.value?.focus()\n }\n }\n)\n\ndefineExpose({\n /**\n * @description focus on the current cell\n */\n focus,\n})\n</script>\n"],"names":["lang","rows","_openBlock","_createElementBlock","_unref","_normalizeClass"],"mappings":"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"}