element-plus 2.0.2 → 2.0.3

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 (882) hide show
  1. package/README.md +3 -0
  2. package/attributes.json +1 -1
  3. package/dist/index.css +1 -1
  4. package/dist/index.full.js +3632 -6414
  5. package/dist/index.full.min.js +11 -11
  6. package/dist/index.full.min.js.map +1 -1
  7. package/dist/index.full.min.mjs +11 -11
  8. package/dist/index.full.min.mjs.map +1 -1
  9. package/dist/index.full.mjs +3633 -6415
  10. package/dist/locale/af.js +1 -1
  11. package/dist/locale/af.min.js +1 -1
  12. package/dist/locale/af.min.mjs +1 -1
  13. package/dist/locale/af.mjs +1 -1
  14. package/dist/locale/ar.js +1 -1
  15. package/dist/locale/ar.min.js +1 -1
  16. package/dist/locale/ar.min.mjs +1 -1
  17. package/dist/locale/ar.mjs +1 -1
  18. package/dist/locale/bg.js +1 -1
  19. package/dist/locale/bg.min.js +1 -1
  20. package/dist/locale/bg.min.mjs +1 -1
  21. package/dist/locale/bg.mjs +1 -1
  22. package/dist/locale/bn.js +1 -1
  23. package/dist/locale/bn.min.js +1 -1
  24. package/dist/locale/bn.min.mjs +1 -1
  25. package/dist/locale/bn.mjs +1 -1
  26. package/dist/locale/ca.js +1 -1
  27. package/dist/locale/ca.min.js +1 -1
  28. package/dist/locale/ca.min.mjs +1 -1
  29. package/dist/locale/ca.mjs +1 -1
  30. package/dist/locale/cs.js +1 -1
  31. package/dist/locale/cs.min.js +1 -1
  32. package/dist/locale/cs.min.mjs +1 -1
  33. package/dist/locale/cs.mjs +1 -1
  34. package/dist/locale/da.js +1 -1
  35. package/dist/locale/da.min.js +1 -1
  36. package/dist/locale/da.min.mjs +1 -1
  37. package/dist/locale/da.mjs +1 -1
  38. package/dist/locale/de.js +1 -1
  39. package/dist/locale/de.min.js +1 -1
  40. package/dist/locale/de.min.mjs +1 -1
  41. package/dist/locale/de.mjs +1 -1
  42. package/dist/locale/el.js +1 -1
  43. package/dist/locale/el.min.js +1 -1
  44. package/dist/locale/el.min.mjs +1 -1
  45. package/dist/locale/el.mjs +1 -1
  46. package/dist/locale/en.js +1 -1
  47. package/dist/locale/en.min.js +1 -1
  48. package/dist/locale/en.min.mjs +1 -1
  49. package/dist/locale/en.mjs +1 -1
  50. package/dist/locale/eo.js +1 -1
  51. package/dist/locale/eo.min.js +1 -1
  52. package/dist/locale/eo.min.mjs +1 -1
  53. package/dist/locale/eo.mjs +1 -1
  54. package/dist/locale/es.js +1 -1
  55. package/dist/locale/es.min.js +1 -1
  56. package/dist/locale/es.min.mjs +1 -1
  57. package/dist/locale/es.mjs +1 -1
  58. package/dist/locale/et.js +1 -1
  59. package/dist/locale/et.min.js +1 -1
  60. package/dist/locale/et.min.mjs +1 -1
  61. package/dist/locale/et.mjs +1 -1
  62. package/dist/locale/eu.js +1 -1
  63. package/dist/locale/eu.min.js +1 -1
  64. package/dist/locale/eu.min.mjs +1 -1
  65. package/dist/locale/eu.mjs +1 -1
  66. package/dist/locale/fa.js +1 -1
  67. package/dist/locale/fa.min.js +1 -1
  68. package/dist/locale/fa.min.mjs +1 -1
  69. package/dist/locale/fa.mjs +1 -1
  70. package/dist/locale/fi.js +1 -1
  71. package/dist/locale/fi.min.js +1 -1
  72. package/dist/locale/fi.min.mjs +1 -1
  73. package/dist/locale/fi.mjs +1 -1
  74. package/dist/locale/fr.js +1 -1
  75. package/dist/locale/fr.min.js +1 -1
  76. package/dist/locale/fr.min.mjs +1 -1
  77. package/dist/locale/fr.mjs +1 -1
  78. package/dist/locale/he.js +1 -1
  79. package/dist/locale/he.min.js +1 -1
  80. package/dist/locale/he.min.mjs +1 -1
  81. package/dist/locale/he.mjs +1 -1
  82. package/dist/locale/hr.js +1 -1
  83. package/dist/locale/hr.min.js +1 -1
  84. package/dist/locale/hr.min.mjs +1 -1
  85. package/dist/locale/hr.mjs +1 -1
  86. package/dist/locale/hu.js +1 -1
  87. package/dist/locale/hu.min.js +1 -1
  88. package/dist/locale/hu.min.mjs +1 -1
  89. package/dist/locale/hu.mjs +1 -1
  90. package/dist/locale/hy-am.js +1 -1
  91. package/dist/locale/hy-am.min.js +1 -1
  92. package/dist/locale/hy-am.min.mjs +1 -1
  93. package/dist/locale/hy-am.mjs +1 -1
  94. package/dist/locale/id.js +1 -1
  95. package/dist/locale/id.min.js +1 -1
  96. package/dist/locale/id.min.mjs +1 -1
  97. package/dist/locale/id.mjs +1 -1
  98. package/dist/locale/it.js +1 -1
  99. package/dist/locale/it.min.js +1 -1
  100. package/dist/locale/it.min.mjs +1 -1
  101. package/dist/locale/it.mjs +1 -1
  102. package/dist/locale/ja.js +1 -1
  103. package/dist/locale/ja.min.js +1 -1
  104. package/dist/locale/ja.min.mjs +1 -1
  105. package/dist/locale/ja.mjs +1 -1
  106. package/dist/locale/kk.js +1 -1
  107. package/dist/locale/kk.min.js +1 -1
  108. package/dist/locale/kk.min.mjs +1 -1
  109. package/dist/locale/kk.mjs +1 -1
  110. package/dist/locale/km.js +1 -1
  111. package/dist/locale/km.min.js +1 -1
  112. package/dist/locale/km.min.mjs +1 -1
  113. package/dist/locale/km.mjs +1 -1
  114. package/dist/locale/ko.js +1 -1
  115. package/dist/locale/ko.min.js +1 -1
  116. package/dist/locale/ko.min.mjs +1 -1
  117. package/dist/locale/ko.mjs +1 -1
  118. package/dist/locale/ku.js +1 -1
  119. package/dist/locale/ku.min.js +1 -1
  120. package/dist/locale/ku.min.mjs +1 -1
  121. package/dist/locale/ku.mjs +1 -1
  122. package/dist/locale/ky.js +1 -1
  123. package/dist/locale/ky.min.js +1 -1
  124. package/dist/locale/ky.min.mjs +1 -1
  125. package/dist/locale/ky.mjs +1 -1
  126. package/dist/locale/lt.js +1 -1
  127. package/dist/locale/lt.min.js +1 -1
  128. package/dist/locale/lt.min.mjs +1 -1
  129. package/dist/locale/lt.mjs +1 -1
  130. package/dist/locale/lv.js +1 -1
  131. package/dist/locale/lv.min.js +1 -1
  132. package/dist/locale/lv.min.mjs +1 -1
  133. package/dist/locale/lv.mjs +1 -1
  134. package/dist/locale/mg.js +1 -1
  135. package/dist/locale/mg.min.js +1 -1
  136. package/dist/locale/mg.min.mjs +1 -1
  137. package/dist/locale/mg.mjs +1 -1
  138. package/dist/locale/mn.js +1 -1
  139. package/dist/locale/mn.min.js +1 -1
  140. package/dist/locale/mn.min.mjs +1 -1
  141. package/dist/locale/mn.mjs +1 -1
  142. package/dist/locale/nb-no.js +1 -1
  143. package/dist/locale/nb-no.min.js +1 -1
  144. package/dist/locale/nb-no.min.mjs +1 -1
  145. package/dist/locale/nb-no.mjs +1 -1
  146. package/dist/locale/nl.js +1 -1
  147. package/dist/locale/nl.min.js +1 -1
  148. package/dist/locale/nl.min.mjs +1 -1
  149. package/dist/locale/nl.mjs +1 -1
  150. package/dist/locale/pa.js +1 -1
  151. package/dist/locale/pa.min.js +1 -1
  152. package/dist/locale/pa.min.mjs +1 -1
  153. package/dist/locale/pa.mjs +1 -1
  154. package/dist/locale/pl.js +1 -1
  155. package/dist/locale/pl.min.js +1 -1
  156. package/dist/locale/pl.min.mjs +1 -1
  157. package/dist/locale/pl.mjs +1 -1
  158. package/dist/locale/pt-br.js +1 -1
  159. package/dist/locale/pt-br.min.js +1 -1
  160. package/dist/locale/pt-br.min.mjs +1 -1
  161. package/dist/locale/pt-br.mjs +1 -1
  162. package/dist/locale/pt.js +1 -1
  163. package/dist/locale/pt.min.js +1 -1
  164. package/dist/locale/pt.min.mjs +1 -1
  165. package/dist/locale/pt.mjs +1 -1
  166. package/dist/locale/ro.js +1 -1
  167. package/dist/locale/ro.min.js +1 -1
  168. package/dist/locale/ro.min.mjs +1 -1
  169. package/dist/locale/ro.mjs +1 -1
  170. package/dist/locale/ru.js +1 -1
  171. package/dist/locale/ru.min.js +1 -1
  172. package/dist/locale/ru.min.mjs +1 -1
  173. package/dist/locale/ru.mjs +1 -1
  174. package/dist/locale/sk.js +1 -1
  175. package/dist/locale/sk.min.js +1 -1
  176. package/dist/locale/sk.min.mjs +1 -1
  177. package/dist/locale/sk.mjs +1 -1
  178. package/dist/locale/sl.js +1 -1
  179. package/dist/locale/sl.min.js +1 -1
  180. package/dist/locale/sl.min.mjs +1 -1
  181. package/dist/locale/sl.mjs +1 -1
  182. package/dist/locale/sr.js +1 -1
  183. package/dist/locale/sr.min.js +1 -1
  184. package/dist/locale/sr.min.mjs +1 -1
  185. package/dist/locale/sr.mjs +1 -1
  186. package/dist/locale/sv.js +1 -1
  187. package/dist/locale/sv.min.js +1 -1
  188. package/dist/locale/sv.min.mjs +1 -1
  189. package/dist/locale/sv.mjs +1 -1
  190. package/dist/locale/ta.js +1 -1
  191. package/dist/locale/ta.min.js +1 -1
  192. package/dist/locale/ta.min.mjs +1 -1
  193. package/dist/locale/ta.mjs +1 -1
  194. package/dist/locale/th.js +1 -1
  195. package/dist/locale/th.min.js +1 -1
  196. package/dist/locale/th.min.mjs +1 -1
  197. package/dist/locale/th.mjs +1 -1
  198. package/dist/locale/tk.js +1 -1
  199. package/dist/locale/tk.min.js +1 -1
  200. package/dist/locale/tk.min.mjs +1 -1
  201. package/dist/locale/tk.mjs +1 -1
  202. package/dist/locale/tr.js +1 -1
  203. package/dist/locale/tr.min.js +1 -1
  204. package/dist/locale/tr.min.mjs +1 -1
  205. package/dist/locale/tr.mjs +1 -1
  206. package/dist/locale/ug-cn.js +1 -1
  207. package/dist/locale/ug-cn.min.js +1 -1
  208. package/dist/locale/ug-cn.min.mjs +1 -1
  209. package/dist/locale/ug-cn.mjs +1 -1
  210. package/dist/locale/uk.js +1 -1
  211. package/dist/locale/uk.min.js +1 -1
  212. package/dist/locale/uk.min.mjs +1 -1
  213. package/dist/locale/uk.mjs +1 -1
  214. package/dist/locale/uz-uz.js +1 -1
  215. package/dist/locale/uz-uz.min.js +1 -1
  216. package/dist/locale/uz-uz.min.mjs +1 -1
  217. package/dist/locale/uz-uz.mjs +1 -1
  218. package/dist/locale/vi.js +1 -1
  219. package/dist/locale/vi.min.js +1 -1
  220. package/dist/locale/vi.min.mjs +1 -1
  221. package/dist/locale/vi.mjs +1 -1
  222. package/dist/locale/zh-cn.js +1 -1
  223. package/dist/locale/zh-cn.min.js +1 -1
  224. package/dist/locale/zh-cn.min.mjs +1 -1
  225. package/dist/locale/zh-cn.mjs +1 -1
  226. package/dist/locale/zh-tw.js +1 -1
  227. package/dist/locale/zh-tw.min.js +1 -1
  228. package/dist/locale/zh-tw.min.mjs +1 -1
  229. package/dist/locale/zh-tw.mjs +1 -1
  230. package/es/components/affix/index.d.ts +25 -8
  231. package/es/components/affix/index.mjs +2 -2
  232. package/es/components/affix/index.mjs.map +1 -1
  233. package/es/components/affix/src/affix.vue.d.ts +25 -8
  234. package/es/components/affix/src/affix2.mjs +54 -58
  235. package/es/components/affix/src/affix2.mjs.map +1 -1
  236. package/es/components/alert/index.d.ts +55 -2
  237. package/es/components/alert/index.mjs +2 -2
  238. package/es/components/alert/index.mjs.map +1 -1
  239. package/es/components/alert/src/alert.vue.d.ts +55 -2
  240. package/es/components/alert/src/alert2.mjs +70 -80
  241. package/es/components/alert/src/alert2.mjs.map +1 -1
  242. package/es/components/autocomplete/src/index.mjs.map +1 -1
  243. package/es/components/avatar/index.d.ts +58 -0
  244. package/es/components/avatar/index.mjs +2 -2
  245. package/es/components/avatar/index.mjs.map +1 -1
  246. package/es/components/avatar/src/avatar.vue.d.ts +58 -0
  247. package/es/components/avatar/src/avatar2.mjs +29 -38
  248. package/es/components/avatar/src/avatar2.mjs.map +1 -1
  249. package/es/components/backtop/index.d.ts +64 -4
  250. package/es/components/backtop/index.mjs +2 -2
  251. package/es/components/backtop/index.mjs.map +1 -1
  252. package/es/components/backtop/src/backtop.vue.d.ts +64 -4
  253. package/es/components/backtop/src/backtop2.mjs +39 -49
  254. package/es/components/backtop/src/backtop2.mjs.map +1 -1
  255. package/es/components/badge/index.d.ts +9 -0
  256. package/es/components/badge/index.mjs +2 -2
  257. package/es/components/badge/index.mjs.map +1 -1
  258. package/es/components/badge/src/badge.vue.d.ts +17 -8
  259. package/es/components/badge/src/badge2.mjs +39 -36
  260. package/es/components/badge/src/badge2.mjs.map +1 -1
  261. package/es/components/breadcrumb/src/breadcrumb-item2.mjs.map +1 -1
  262. package/es/components/breadcrumb/src/breadcrumb2.mjs.map +1 -1
  263. package/es/components/button/index.d.ts +12 -1
  264. package/es/components/button/index.mjs +3 -3
  265. package/es/components/button/index.mjs.map +1 -1
  266. package/es/components/button/src/button-group.vue.d.ts +6 -0
  267. package/es/components/button/src/button-group2.mjs +15 -16
  268. package/es/components/button/src/button-group2.mjs.map +1 -1
  269. package/es/components/button/src/button.vue.d.ts +0 -1
  270. package/es/components/button/src/button2.mjs +3 -5
  271. package/es/components/button/src/button2.mjs.map +1 -1
  272. package/es/components/calendar/index.d.ts +1 -1
  273. package/es/components/calendar/src/calendar2.mjs.map +1 -1
  274. package/es/components/calendar/src/date-table2.mjs.map +1 -1
  275. package/es/components/card/index.mjs +2 -2
  276. package/es/components/card/index.mjs.map +1 -1
  277. package/es/components/card/src/card2.mjs +27 -29
  278. package/es/components/card/src/card2.mjs.map +1 -1
  279. package/es/components/carousel/src/item.mjs.map +1 -1
  280. package/es/components/carousel/src/main.mjs.map +1 -1
  281. package/es/components/cascader/index.d.ts +26 -16
  282. package/es/components/cascader/src/index.mjs.map +1 -1
  283. package/es/components/cascader/src/index.vue.d.ts +13 -8
  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/src/check-tag2.mjs.map +1 -1
  288. package/es/components/checkbox/src/checkbox-button.mjs.map +1 -1
  289. package/es/components/checkbox/src/checkbox.mjs.map +1 -1
  290. package/es/components/collapse/src/collapse-item.mjs.map +1 -1
  291. package/es/components/collapse/src/collapse.mjs.map +1 -1
  292. package/es/components/collapse-transition/src/collapse-transition.mjs.map +1 -1
  293. package/es/components/collection/src/collection-item.mjs.map +1 -1
  294. package/es/components/collection/src/collection2.mjs.map +1 -1
  295. package/es/components/color-picker/src/components/alpha-slider.mjs.map +1 -1
  296. package/es/components/color-picker/src/components/hue-slider.mjs.map +1 -1
  297. package/es/components/color-picker/src/components/predefine.mjs.map +1 -1
  298. package/es/components/color-picker/src/components/sv-panel.mjs.map +1 -1
  299. package/es/components/color-picker/src/index.mjs.map +1 -1
  300. package/es/components/config-provider/index.d.ts +3 -3
  301. package/es/components/config-provider/src/config-provider.d.ts +2 -1
  302. package/es/components/container/src/aside.mjs.map +1 -1
  303. package/es/components/container/src/container.mjs.map +1 -1
  304. package/es/components/container/src/footer.mjs.map +1 -1
  305. package/es/components/container/src/header.mjs.map +1 -1
  306. package/es/components/container/src/main.mjs.map +1 -1
  307. package/es/components/date-picker/src/date-picker-com/basic-date-table.mjs.map +1 -1
  308. package/es/components/date-picker/src/date-picker-com/basic-date-table.vue.d.ts +3 -3
  309. package/es/components/date-picker/src/date-picker-com/basic-month-table.mjs.map +1 -1
  310. package/es/components/date-picker/src/date-picker-com/basic-year-table.mjs.map +1 -1
  311. package/es/components/date-picker/src/date-picker-com/panel-date-pick.mjs.map +1 -1
  312. package/es/components/date-picker/src/date-picker-com/panel-date-pick.vue.d.ts +1 -1
  313. package/es/components/date-picker/src/date-picker-com/panel-date-range.mjs.map +1 -1
  314. package/es/components/date-picker/src/date-picker-com/panel-date-range.vue.d.ts +2 -2
  315. package/es/components/date-picker/src/date-picker-com/panel-month-range.mjs.map +1 -1
  316. package/es/components/date-picker/src/date-picker-com/panel-month-range.vue.d.ts +2 -2
  317. package/es/components/descriptions/index.d.ts +2 -2
  318. package/es/components/descriptions/src/description-item.d.ts +1 -1
  319. package/es/components/descriptions/src/descriptions-row.mjs.map +1 -1
  320. package/es/components/descriptions/src/index.mjs.map +1 -1
  321. package/es/components/dialog/index.d.ts +200 -32
  322. package/es/components/dialog/index.mjs +2 -2
  323. package/es/components/dialog/index.mjs.map +1 -1
  324. package/es/components/dialog/src/dialog-content.d.ts +12 -0
  325. package/es/components/dialog/src/dialog-content.mjs +40 -0
  326. package/es/components/dialog/src/dialog-content.mjs.map +1 -0
  327. package/es/components/dialog/src/dialog-content.vue.d.ts +84 -0
  328. package/es/components/dialog/src/dialog-content2.mjs +84 -0
  329. package/es/components/dialog/src/dialog-content2.mjs.map +1 -0
  330. package/es/components/dialog/src/dialog.d.ts +9 -7
  331. package/es/components/dialog/src/dialog.mjs +5 -30
  332. package/es/components/dialog/src/dialog.mjs.map +1 -1
  333. package/es/components/dialog/src/dialog.vue.d.ts +236 -67
  334. package/es/components/dialog/src/dialog2.mjs +96 -122
  335. package/es/components/dialog/src/dialog2.mjs.map +1 -1
  336. package/es/components/dialog/src/token.d.ts +10 -0
  337. package/es/components/dialog/src/token.mjs +4 -0
  338. package/es/components/dialog/src/token.mjs.map +1 -0
  339. package/es/components/divider/src/divider2.mjs.map +1 -1
  340. package/es/components/drawer/index.d.ts +22 -18
  341. package/es/components/drawer/src/drawer.d.ts +9 -7
  342. package/es/components/drawer/src/drawer.vue.d.ts +22 -18
  343. package/es/components/drawer/src/drawer2.mjs.map +1 -1
  344. package/es/components/dropdown/index.d.ts +10 -5
  345. package/es/components/dropdown/src/dropdown-item-impl.mjs +5 -5
  346. package/es/components/dropdown/src/dropdown-item-impl.mjs.map +1 -1
  347. package/es/components/dropdown/src/dropdown-item-impl.vue.d.ts +2 -1
  348. package/es/components/dropdown/src/dropdown-item.mjs +2 -2
  349. package/es/components/dropdown/src/dropdown-item.mjs.map +1 -1
  350. package/es/components/dropdown/src/dropdown-menu.mjs.map +1 -1
  351. package/es/components/dropdown/src/dropdown.vue.d.ts +10 -5
  352. package/es/components/dropdown/src/dropdown2.mjs +1 -1
  353. package/es/components/dropdown/src/dropdown2.mjs.map +1 -1
  354. package/es/components/empty/src/empty2.mjs.map +1 -1
  355. package/es/components/empty/src/img-empty.mjs.map +1 -1
  356. package/es/components/focus-trap/src/focus-trap.mjs +19 -15
  357. package/es/components/focus-trap/src/focus-trap.mjs.map +1 -1
  358. package/es/components/form/src/form-item.mjs.map +1 -1
  359. package/es/components/form/src/form.mjs.map +1 -1
  360. package/es/components/image/src/image2.mjs.map +1 -1
  361. package/es/components/image-viewer/src/image-viewer2.mjs.map +1 -1
  362. package/es/components/input/src/input2.mjs +1 -1
  363. package/es/components/input/src/input2.mjs.map +1 -1
  364. package/es/components/input-number/src/input-number2.mjs.map +1 -1
  365. package/es/components/link/src/link2.mjs.map +1 -1
  366. package/es/components/menu/index.d.ts +7 -1
  367. package/es/components/menu/src/menu-collapse-transition.mjs.map +1 -1
  368. package/es/components/menu/src/menu-item-group2.mjs.map +1 -1
  369. package/es/components/menu/src/menu-item2.mjs.map +1 -1
  370. package/es/components/menu/src/menu.d.ts +1 -1
  371. package/es/components/menu/src/sub-menu.d.ts +4 -0
  372. package/es/components/menu/src/sub-menu.mjs +5 -1
  373. package/es/components/menu/src/sub-menu.mjs.map +1 -1
  374. package/es/components/message/index.d.ts +1 -1
  375. package/es/components/message/src/message-method.d.ts +1 -1
  376. package/es/components/message/src/message-method.mjs +10 -7
  377. package/es/components/message/src/message-method.mjs.map +1 -1
  378. package/es/components/message/src/message.d.ts +3 -3
  379. package/es/components/message/src/message.mjs.map +1 -1
  380. package/es/components/message/src/message2.mjs.map +1 -1
  381. package/es/components/message-box/src/index.mjs.map +1 -1
  382. package/es/components/notification/index.d.ts +1 -1
  383. package/es/components/notification/src/notification2.mjs.map +1 -1
  384. package/es/components/page-header/src/page-header2.mjs.map +1 -1
  385. package/es/components/pagination/src/components/jumper.mjs.map +1 -1
  386. package/es/components/pagination/src/components/next.mjs.map +1 -1
  387. package/es/components/pagination/src/components/pager.mjs.map +1 -1
  388. package/es/components/pagination/src/components/prev.mjs.map +1 -1
  389. package/es/components/pagination/src/components/sizes.mjs.map +1 -1
  390. package/es/components/pagination/src/components/total.mjs.map +1 -1
  391. package/es/components/popconfirm/index.d.ts +3 -0
  392. package/es/components/popconfirm/src/popconfirm.d.ts +1 -0
  393. package/es/components/popconfirm/src/popconfirm.mjs +2 -1
  394. package/es/components/popconfirm/src/popconfirm.mjs.map +1 -1
  395. package/es/components/popconfirm/src/popconfirm.vue.d.ts +3 -0
  396. package/es/components/popconfirm/src/popconfirm2.mjs +2 -2
  397. package/es/components/popconfirm/src/popconfirm2.mjs.map +1 -1
  398. package/es/components/popover/index.d.ts +34 -14
  399. package/es/components/popover/src/index.mjs +19 -3
  400. package/es/components/popover/src/index.mjs.map +1 -1
  401. package/es/components/popover/src/index.vue.d.ts +17 -7
  402. package/es/components/popover/src/popover.d.ts +1 -0
  403. package/es/components/popover/src/popover.mjs +4 -0
  404. package/es/components/popover/src/popover.mjs.map +1 -1
  405. package/es/components/popper/src/arrow.mjs.map +1 -1
  406. package/es/components/popper/src/content.mjs +9 -0
  407. package/es/components/popper/src/content.mjs.map +1 -1
  408. package/es/components/popper/src/content.vue.d.ts +4 -1
  409. package/es/components/popper/src/popper.d.ts +1 -0
  410. package/es/components/popper/src/popper.mjs +3 -0
  411. package/es/components/popper/src/popper.mjs.map +1 -1
  412. package/es/components/popper/src/popper2.mjs.map +1 -1
  413. package/es/components/popper/src/trigger.mjs.map +1 -1
  414. package/es/components/progress/src/progress2.mjs.map +1 -1
  415. package/es/components/radio/src/radio-button2.mjs.map +1 -1
  416. package/es/components/radio/src/radio-group2.mjs.map +1 -1
  417. package/es/components/radio/src/radio2.mjs.map +1 -1
  418. package/es/components/rate/src/rate2.mjs +2 -2
  419. package/es/components/rate/src/rate2.mjs.map +1 -1
  420. package/es/components/result/src/result2.mjs.map +1 -1
  421. package/es/components/roving-focus-group/src/roving-focus-group-impl.mjs.map +1 -1
  422. package/es/components/roving-focus-group/src/roving-focus-group2.mjs.map +1 -1
  423. package/es/components/roving-focus-group/src/roving-focus-item.mjs.map +1 -1
  424. package/es/components/row/index.d.ts +3 -3
  425. package/es/components/row/src/row.d.ts +4 -4
  426. package/es/components/row/src/row.mjs +8 -1
  427. package/es/components/row/src/row.mjs.map +1 -1
  428. package/es/components/scrollbar/index.d.ts +1 -1
  429. package/es/components/scrollbar/src/bar.vue.d.ts +2 -2
  430. package/es/components/scrollbar/src/bar2.mjs.map +1 -1
  431. package/es/components/scrollbar/src/scrollbar.vue.d.ts +1 -1
  432. package/es/components/scrollbar/src/scrollbar2.mjs.map +1 -1
  433. package/es/components/scrollbar/src/thumb2.mjs.map +1 -1
  434. package/es/components/select/index.d.ts +10 -5
  435. package/es/components/select/src/option-group.mjs.map +1 -1
  436. package/es/components/select/src/option.mjs.map +1 -1
  437. package/es/components/select/src/select-dropdown.mjs.map +1 -1
  438. package/es/components/select/src/select.mjs +11 -7
  439. package/es/components/select/src/select.mjs.map +1 -1
  440. package/es/components/select/src/select.vue.d.ts +10 -5
  441. package/es/components/select/src/useSelect.d.ts +10 -5
  442. package/es/components/select-v2/index.d.ts +22 -12
  443. package/es/components/select-v2/src/group-item.mjs.map +1 -1
  444. package/es/components/select-v2/src/option-item.mjs.map +1 -1
  445. package/es/components/select-v2/src/select.mjs.map +1 -1
  446. package/es/components/select-v2/src/select.vue.d.ts +11 -6
  447. package/es/components/select-v2/src/useSelect.d.ts +10 -5
  448. package/es/components/skeleton/src/image-placeholder.mjs.map +1 -1
  449. package/es/components/skeleton/src/skeleton-item2.mjs.map +1 -1
  450. package/es/components/skeleton/src/skeleton2.mjs.map +1 -1
  451. package/es/components/slider/index.d.ts +2 -2
  452. package/es/components/slider/src/button.mjs.map +1 -1
  453. package/es/components/slider/src/index.mjs.map +1 -1
  454. package/es/components/slider/src/index.vue.d.ts +1 -1
  455. package/es/components/slot/src/only-child.mjs +3 -1
  456. package/es/components/slot/src/only-child.mjs.map +1 -1
  457. package/es/components/space/src/item.mjs.map +1 -1
  458. package/es/components/steps/src/index.mjs.map +1 -1
  459. package/es/components/steps/src/item.mjs.map +1 -1
  460. package/es/components/switch/src/switch2.mjs +2 -2
  461. package/es/components/switch/src/switch2.mjs.map +1 -1
  462. package/es/components/table/src/filter-panel.mjs.map +1 -1
  463. package/es/components/table/src/filter-panel.vue.d.ts +10 -5
  464. package/es/components/table/src/store/watcher.mjs +4 -8
  465. package/es/components/table/src/store/watcher.mjs.map +1 -1
  466. package/es/components/table/src/table/style-helper.mjs +2 -2
  467. package/es/components/table/src/table/style-helper.mjs.map +1 -1
  468. package/es/components/table/src/table-footer/index.mjs +3 -1
  469. package/es/components/table/src/table-footer/index.mjs.map +1 -1
  470. package/es/components/table/src/table-layout.mjs +2 -5
  471. package/es/components/table/src/table-layout.mjs.map +1 -1
  472. package/es/components/table/src/table.mjs +1 -0
  473. package/es/components/table/src/table.mjs.map +1 -1
  474. package/es/components/table/style/css.d.ts +1 -0
  475. package/es/components/table/style/css.mjs +1 -0
  476. package/es/components/table/style/css.mjs.map +1 -1
  477. package/es/components/table/style/index.d.ts +1 -0
  478. package/es/components/table/style/index.mjs +1 -0
  479. package/es/components/table/style/index.mjs.map +1 -1
  480. package/es/components/tabs/src/tab-bar2.mjs.map +1 -1
  481. package/es/components/tabs/src/tab-pane2.mjs.map +1 -1
  482. package/es/components/tag/src/tag2.mjs.map +1 -1
  483. package/es/components/teleport/src/teleport2.mjs.map +1 -1
  484. package/es/components/time-picker/src/common/picker.mjs +6 -2
  485. package/es/components/time-picker/src/common/picker.mjs.map +1 -1
  486. package/es/components/time-picker/src/common/picker.vue.d.ts +11 -5
  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-picker/src/time-picker-com/useTimePicker.d.ts +2 -2
  491. package/es/components/time-select/src/time-select.mjs.map +1 -1
  492. package/es/components/timeline/src/timeline-item2.mjs.map +1 -1
  493. package/es/components/tooltip/index.d.ts +5 -2
  494. package/es/components/tooltip/src/content.mjs +22 -4
  495. package/es/components/tooltip/src/content.mjs.map +1 -1
  496. package/es/components/tooltip/src/content.vue.d.ts +11 -5
  497. package/es/components/tooltip/src/tokens.d.ts +2 -0
  498. package/es/components/tooltip/src/tokens.mjs.map +1 -1
  499. package/es/components/tooltip/src/tooltip.vue.d.ts +5 -2
  500. package/es/components/tooltip/src/tooltip2.mjs +10 -3
  501. package/es/components/tooltip/src/tooltip2.mjs.map +1 -1
  502. package/es/components/tooltip/src/trigger.mjs.map +1 -1
  503. package/es/components/transfer/index.d.ts +4 -4
  504. package/es/components/transfer/src/index.mjs.map +1 -1
  505. package/es/components/transfer/src/index.vue.d.ts +2 -2
  506. package/es/components/transfer/src/transfer-panel.mjs.map +1 -1
  507. package/es/components/tree/src/tree-node.mjs.map +1 -1
  508. package/es/components/tree/src/tree.mjs.map +1 -1
  509. package/es/components/tree-v2/index.d.ts +1 -1
  510. package/es/components/tree-v2/src/tree-node.mjs.map +1 -1
  511. package/es/components/tree-v2/src/tree.mjs.map +1 -1
  512. package/es/components/tree-v2/src/tree.vue.d.ts +1 -1
  513. package/es/components/upload/src/upload-dragger.mjs.map +1 -1
  514. package/es/components/upload/src/upload-list.mjs.map +1 -1
  515. package/es/components/upload/src/upload.mjs.map +1 -1
  516. package/es/components/virtual-list/src/builders/build-grid.d.ts +1 -1
  517. package/es/components/virtual-list/src/builders/build-list.d.ts +1 -1
  518. package/es/components/virtual-list/src/components/dynamic-size-grid.d.ts +1 -1
  519. package/es/components/virtual-list/src/components/dynamic-size-list.d.ts +1 -1
  520. package/es/components/virtual-list/src/components/fixed-size-grid.d.ts +1 -1
  521. package/es/components/virtual-list/src/components/fixed-size-list.d.ts +1 -1
  522. package/es/components/visual-hidden/src/visual-hidden.mjs.map +1 -1
  523. package/es/defaults.d.ts +1 -1
  524. package/es/hooks/use-global-config/index.d.ts +1 -1
  525. package/es/hooks/use-model-toggle/index.d.ts +10 -7
  526. package/es/hooks/use-model-toggle/index.mjs +9 -7
  527. package/es/hooks/use-model-toggle/index.mjs.map +1 -1
  528. package/es/index.d.ts +1 -1
  529. package/es/{locale.d.ts → locales.d.ts} +0 -0
  530. package/es/{locale.mjs → locales.mjs} +1 -1
  531. package/es/locales.mjs.map +1 -0
  532. package/es/utils/vue/install.d.ts +2 -2
  533. package/es/utils/vue/install.mjs +2 -0
  534. package/es/utils/vue/install.mjs.map +1 -1
  535. package/es/utils/vue/typescript.d.ts +4 -1
  536. package/es/version.d.ts +1 -1
  537. package/es/version.mjs +1 -1
  538. package/es/version.mjs.map +1 -1
  539. package/lib/components/affix/index.d.ts +25 -8
  540. package/lib/components/affix/src/affix.vue.d.ts +25 -8
  541. package/lib/components/affix/src/affix2.js +53 -57
  542. package/lib/components/affix/src/affix2.js.map +1 -1
  543. package/lib/components/alert/index.d.ts +55 -2
  544. package/lib/components/alert/src/alert.vue.d.ts +55 -2
  545. package/lib/components/alert/src/alert2.js +72 -82
  546. package/lib/components/alert/src/alert2.js.map +1 -1
  547. package/lib/components/autocomplete/src/index.js.map +1 -1
  548. package/lib/components/avatar/index.d.ts +58 -0
  549. package/lib/components/avatar/src/avatar.vue.d.ts +58 -0
  550. package/lib/components/avatar/src/avatar2.js +31 -40
  551. package/lib/components/avatar/src/avatar2.js.map +1 -1
  552. package/lib/components/backtop/index.d.ts +64 -4
  553. package/lib/components/backtop/src/backtop.vue.d.ts +64 -4
  554. package/lib/components/backtop/src/backtop2.js +41 -51
  555. package/lib/components/backtop/src/backtop2.js.map +1 -1
  556. package/lib/components/badge/index.d.ts +9 -0
  557. package/lib/components/badge/src/badge.vue.d.ts +17 -8
  558. package/lib/components/badge/src/badge2.js +38 -35
  559. package/lib/components/badge/src/badge2.js.map +1 -1
  560. package/lib/components/breadcrumb/src/breadcrumb-item2.js.map +1 -1
  561. package/lib/components/breadcrumb/src/breadcrumb2.js.map +1 -1
  562. package/lib/components/button/index.d.ts +12 -1
  563. package/lib/components/button/src/button-group.vue.d.ts +6 -0
  564. package/lib/components/button/src/button-group2.js +14 -15
  565. package/lib/components/button/src/button-group2.js.map +1 -1
  566. package/lib/components/button/src/button.vue.d.ts +0 -1
  567. package/lib/components/button/src/button2.js +3 -5
  568. package/lib/components/button/src/button2.js.map +1 -1
  569. package/lib/components/calendar/index.d.ts +1 -1
  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/card/src/card2.js +26 -28
  573. package/lib/components/card/src/card2.js.map +1 -1
  574. package/lib/components/carousel/src/item.js.map +1 -1
  575. package/lib/components/carousel/src/main.js.map +1 -1
  576. package/lib/components/cascader/index.d.ts +26 -16
  577. package/lib/components/cascader/src/index.js.map +1 -1
  578. package/lib/components/cascader/src/index.vue.d.ts +13 -8
  579. package/lib/components/cascader-panel/src/index.js.map +1 -1
  580. package/lib/components/cascader-panel/src/menu.js.map +1 -1
  581. package/lib/components/cascader-panel/src/node2.js.map +1 -1
  582. package/lib/components/check-tag/src/check-tag2.js.map +1 -1
  583. package/lib/components/checkbox/src/checkbox-button.js.map +1 -1
  584. package/lib/components/checkbox/src/checkbox.js.map +1 -1
  585. package/lib/components/collapse/src/collapse-item.js.map +1 -1
  586. package/lib/components/collapse/src/collapse.js.map +1 -1
  587. package/lib/components/collapse-transition/src/collapse-transition.js.map +1 -1
  588. package/lib/components/collection/src/collection-item.js.map +1 -1
  589. package/lib/components/collection/src/collection2.js.map +1 -1
  590. package/lib/components/color-picker/src/components/alpha-slider.js.map +1 -1
  591. package/lib/components/color-picker/src/components/hue-slider.js.map +1 -1
  592. package/lib/components/color-picker/src/components/predefine.js.map +1 -1
  593. package/lib/components/color-picker/src/components/sv-panel.js.map +1 -1
  594. package/lib/components/color-picker/src/index.js.map +1 -1
  595. package/lib/components/config-provider/index.d.ts +3 -3
  596. package/lib/components/config-provider/src/config-provider.d.ts +2 -1
  597. package/lib/components/container/src/aside.js.map +1 -1
  598. package/lib/components/container/src/container.js.map +1 -1
  599. package/lib/components/container/src/footer.js.map +1 -1
  600. package/lib/components/container/src/header.js.map +1 -1
  601. package/lib/components/container/src/main.js.map +1 -1
  602. package/lib/components/date-picker/src/date-picker-com/basic-date-table.js.map +1 -1
  603. package/lib/components/date-picker/src/date-picker-com/basic-date-table.vue.d.ts +3 -3
  604. package/lib/components/date-picker/src/date-picker-com/basic-month-table.js.map +1 -1
  605. package/lib/components/date-picker/src/date-picker-com/basic-year-table.js.map +1 -1
  606. package/lib/components/date-picker/src/date-picker-com/panel-date-pick.js.map +1 -1
  607. package/lib/components/date-picker/src/date-picker-com/panel-date-pick.vue.d.ts +1 -1
  608. package/lib/components/date-picker/src/date-picker-com/panel-date-range.js.map +1 -1
  609. package/lib/components/date-picker/src/date-picker-com/panel-date-range.vue.d.ts +2 -2
  610. package/lib/components/date-picker/src/date-picker-com/panel-month-range.js.map +1 -1
  611. package/lib/components/date-picker/src/date-picker-com/panel-month-range.vue.d.ts +2 -2
  612. package/lib/components/descriptions/index.d.ts +2 -2
  613. package/lib/components/descriptions/src/description-item.d.ts +1 -1
  614. package/lib/components/descriptions/src/descriptions-row.js.map +1 -1
  615. package/lib/components/descriptions/src/index.js.map +1 -1
  616. package/lib/components/dialog/index.d.ts +200 -32
  617. package/lib/components/dialog/src/dialog-content.d.ts +12 -0
  618. package/lib/components/dialog/src/dialog-content.js +45 -0
  619. package/lib/components/dialog/src/dialog-content.js.map +1 -0
  620. package/lib/components/dialog/src/dialog-content.vue.d.ts +84 -0
  621. package/lib/components/dialog/src/dialog-content2.js +88 -0
  622. package/lib/components/dialog/src/dialog-content2.js.map +1 -0
  623. package/lib/components/dialog/src/dialog.d.ts +9 -7
  624. package/lib/components/dialog/src/dialog.js +5 -30
  625. package/lib/components/dialog/src/dialog.js.map +1 -1
  626. package/lib/components/dialog/src/dialog.vue.d.ts +236 -67
  627. package/lib/components/dialog/src/dialog2.js +101 -127
  628. package/lib/components/dialog/src/dialog2.js.map +1 -1
  629. package/lib/components/dialog/src/token.d.ts +10 -0
  630. package/lib/components/dialog/src/token.js +8 -0
  631. package/lib/components/dialog/src/token.js.map +1 -0
  632. package/lib/components/divider/src/divider2.js.map +1 -1
  633. package/lib/components/drawer/index.d.ts +22 -18
  634. package/lib/components/drawer/src/drawer.d.ts +9 -7
  635. package/lib/components/drawer/src/drawer.vue.d.ts +22 -18
  636. package/lib/components/drawer/src/drawer2.js.map +1 -1
  637. package/lib/components/dropdown/index.d.ts +10 -5
  638. package/lib/components/dropdown/src/dropdown-item-impl.js +5 -5
  639. package/lib/components/dropdown/src/dropdown-item-impl.js.map +1 -1
  640. package/lib/components/dropdown/src/dropdown-item-impl.vue.d.ts +2 -1
  641. package/lib/components/dropdown/src/dropdown-item.js +2 -2
  642. package/lib/components/dropdown/src/dropdown-item.js.map +1 -1
  643. package/lib/components/dropdown/src/dropdown-menu.js.map +1 -1
  644. package/lib/components/dropdown/src/dropdown.vue.d.ts +10 -5
  645. package/lib/components/dropdown/src/dropdown2.js +1 -1
  646. package/lib/components/dropdown/src/dropdown2.js.map +1 -1
  647. package/lib/components/empty/src/empty2.js.map +1 -1
  648. package/lib/components/empty/src/img-empty.js.map +1 -1
  649. package/lib/components/focus-trap/src/focus-trap.js +18 -14
  650. package/lib/components/focus-trap/src/focus-trap.js.map +1 -1
  651. package/lib/components/form/src/form-item.js.map +1 -1
  652. package/lib/components/form/src/form.js.map +1 -1
  653. package/lib/components/image/src/image2.js.map +1 -1
  654. package/lib/components/image-viewer/src/image-viewer2.js.map +1 -1
  655. package/lib/components/input/src/input2.js +1 -1
  656. package/lib/components/input/src/input2.js.map +1 -1
  657. package/lib/components/input-number/src/input-number2.js.map +1 -1
  658. package/lib/components/link/src/link2.js.map +1 -1
  659. package/lib/components/menu/index.d.ts +7 -1
  660. package/lib/components/menu/src/menu-collapse-transition.js.map +1 -1
  661. package/lib/components/menu/src/menu-item-group2.js.map +1 -1
  662. package/lib/components/menu/src/menu-item2.js.map +1 -1
  663. package/lib/components/menu/src/menu.d.ts +1 -1
  664. package/lib/components/menu/src/sub-menu.d.ts +4 -0
  665. package/lib/components/menu/src/sub-menu.js +5 -1
  666. package/lib/components/menu/src/sub-menu.js.map +1 -1
  667. package/lib/components/message/index.d.ts +1 -1
  668. package/lib/components/message/src/message-method.d.ts +1 -1
  669. package/lib/components/message/src/message-method.js +10 -7
  670. package/lib/components/message/src/message-method.js.map +1 -1
  671. package/lib/components/message/src/message.d.ts +3 -3
  672. package/lib/components/message/src/message.js.map +1 -1
  673. package/lib/components/message/src/message2.js.map +1 -1
  674. package/lib/components/message-box/src/index.js.map +1 -1
  675. package/lib/components/notification/index.d.ts +1 -1
  676. package/lib/components/notification/src/notification2.js.map +1 -1
  677. package/lib/components/page-header/src/page-header2.js.map +1 -1
  678. package/lib/components/pagination/src/components/jumper.js.map +1 -1
  679. package/lib/components/pagination/src/components/next.js.map +1 -1
  680. package/lib/components/pagination/src/components/pager.js.map +1 -1
  681. package/lib/components/pagination/src/components/prev.js.map +1 -1
  682. package/lib/components/pagination/src/components/sizes.js.map +1 -1
  683. package/lib/components/pagination/src/components/total.js.map +1 -1
  684. package/lib/components/popconfirm/index.d.ts +3 -0
  685. package/lib/components/popconfirm/src/popconfirm.d.ts +1 -0
  686. package/lib/components/popconfirm/src/popconfirm.js +2 -1
  687. package/lib/components/popconfirm/src/popconfirm.js.map +1 -1
  688. package/lib/components/popconfirm/src/popconfirm.vue.d.ts +3 -0
  689. package/lib/components/popconfirm/src/popconfirm2.js +2 -2
  690. package/lib/components/popconfirm/src/popconfirm2.js.map +1 -1
  691. package/lib/components/popover/index.d.ts +34 -14
  692. package/lib/components/popover/src/index.js +19 -3
  693. package/lib/components/popover/src/index.js.map +1 -1
  694. package/lib/components/popover/src/index.vue.d.ts +17 -7
  695. package/lib/components/popover/src/popover.d.ts +1 -0
  696. package/lib/components/popover/src/popover.js +4 -0
  697. package/lib/components/popover/src/popover.js.map +1 -1
  698. package/lib/components/popper/src/arrow.js.map +1 -1
  699. package/lib/components/popper/src/content.js +9 -0
  700. package/lib/components/popper/src/content.js.map +1 -1
  701. package/lib/components/popper/src/content.vue.d.ts +4 -1
  702. package/lib/components/popper/src/popper.d.ts +1 -0
  703. package/lib/components/popper/src/popper.js +3 -0
  704. package/lib/components/popper/src/popper.js.map +1 -1
  705. package/lib/components/popper/src/popper2.js.map +1 -1
  706. package/lib/components/popper/src/trigger.js.map +1 -1
  707. package/lib/components/progress/src/progress2.js.map +1 -1
  708. package/lib/components/radio/src/radio-button2.js.map +1 -1
  709. package/lib/components/radio/src/radio-group2.js.map +1 -1
  710. package/lib/components/radio/src/radio2.js.map +1 -1
  711. package/lib/components/rate/src/rate2.js +2 -2
  712. package/lib/components/rate/src/rate2.js.map +1 -1
  713. package/lib/components/result/src/result2.js.map +1 -1
  714. package/lib/components/roving-focus-group/src/roving-focus-group-impl.js.map +1 -1
  715. package/lib/components/roving-focus-group/src/roving-focus-group2.js.map +1 -1
  716. package/lib/components/roving-focus-group/src/roving-focus-item.js.map +1 -1
  717. package/lib/components/row/index.d.ts +3 -3
  718. package/lib/components/row/src/row.d.ts +4 -4
  719. package/lib/components/row/src/row.js +8 -1
  720. package/lib/components/row/src/row.js.map +1 -1
  721. package/lib/components/scrollbar/index.d.ts +1 -1
  722. package/lib/components/scrollbar/src/bar.vue.d.ts +2 -2
  723. package/lib/components/scrollbar/src/bar2.js.map +1 -1
  724. package/lib/components/scrollbar/src/scrollbar.vue.d.ts +1 -1
  725. package/lib/components/scrollbar/src/scrollbar2.js.map +1 -1
  726. package/lib/components/scrollbar/src/thumb2.js.map +1 -1
  727. package/lib/components/select/index.d.ts +10 -5
  728. package/lib/components/select/src/option-group.js.map +1 -1
  729. package/lib/components/select/src/option.js.map +1 -1
  730. package/lib/components/select/src/select-dropdown.js.map +1 -1
  731. package/lib/components/select/src/select.js +11 -7
  732. package/lib/components/select/src/select.js.map +1 -1
  733. package/lib/components/select/src/select.vue.d.ts +10 -5
  734. package/lib/components/select/src/useSelect.d.ts +10 -5
  735. package/lib/components/select-v2/index.d.ts +22 -12
  736. package/lib/components/select-v2/src/group-item.js.map +1 -1
  737. package/lib/components/select-v2/src/option-item.js.map +1 -1
  738. package/lib/components/select-v2/src/select.js.map +1 -1
  739. package/lib/components/select-v2/src/select.vue.d.ts +11 -6
  740. package/lib/components/select-v2/src/useSelect.d.ts +10 -5
  741. package/lib/components/skeleton/src/image-placeholder.js.map +1 -1
  742. package/lib/components/skeleton/src/skeleton-item2.js.map +1 -1
  743. package/lib/components/skeleton/src/skeleton2.js.map +1 -1
  744. package/lib/components/slider/index.d.ts +2 -2
  745. package/lib/components/slider/src/button.js.map +1 -1
  746. package/lib/components/slider/src/index.js.map +1 -1
  747. package/lib/components/slider/src/index.vue.d.ts +1 -1
  748. package/lib/components/slot/src/only-child.js +2 -0
  749. package/lib/components/slot/src/only-child.js.map +1 -1
  750. package/lib/components/space/src/item.js.map +1 -1
  751. package/lib/components/steps/src/index.js.map +1 -1
  752. package/lib/components/steps/src/item.js.map +1 -1
  753. package/lib/components/switch/src/switch2.js +2 -2
  754. package/lib/components/switch/src/switch2.js.map +1 -1
  755. package/lib/components/table/src/filter-panel.js.map +1 -1
  756. package/lib/components/table/src/filter-panel.vue.d.ts +10 -5
  757. package/lib/components/table/src/store/watcher.js +4 -8
  758. package/lib/components/table/src/store/watcher.js.map +1 -1
  759. package/lib/components/table/src/table/style-helper.js +2 -2
  760. package/lib/components/table/src/table/style-helper.js.map +1 -1
  761. package/lib/components/table/src/table-footer/index.js +3 -1
  762. package/lib/components/table/src/table-footer/index.js.map +1 -1
  763. package/lib/components/table/src/table-layout.js +2 -5
  764. package/lib/components/table/src/table-layout.js.map +1 -1
  765. package/lib/components/table/src/table.js +1 -0
  766. package/lib/components/table/src/table.js.map +1 -1
  767. package/lib/components/table/style/css.d.ts +1 -0
  768. package/lib/components/table/style/css.js +1 -0
  769. package/lib/components/table/style/css.js.map +1 -1
  770. package/lib/components/table/style/index.d.ts +1 -0
  771. package/lib/components/table/style/index.js +1 -0
  772. package/lib/components/table/style/index.js.map +1 -1
  773. package/lib/components/tabs/src/tab-bar2.js.map +1 -1
  774. package/lib/components/tabs/src/tab-pane2.js.map +1 -1
  775. package/lib/components/tag/src/tag2.js.map +1 -1
  776. package/lib/components/teleport/src/teleport2.js.map +1 -1
  777. package/lib/components/time-picker/src/common/picker.js +6 -2
  778. package/lib/components/time-picker/src/common/picker.js.map +1 -1
  779. package/lib/components/time-picker/src/common/picker.vue.d.ts +11 -5
  780. package/lib/components/time-picker/src/time-picker-com/basic-time-spinner.js.map +1 -1
  781. package/lib/components/time-picker/src/time-picker-com/panel-time-pick.js.map +1 -1
  782. package/lib/components/time-picker/src/time-picker-com/panel-time-range.js.map +1 -1
  783. package/lib/components/time-picker/src/time-picker-com/useTimePicker.d.ts +2 -2
  784. package/lib/components/time-select/src/time-select.js.map +1 -1
  785. package/lib/components/timeline/src/timeline-item2.js.map +1 -1
  786. package/lib/components/tooltip/index.d.ts +5 -2
  787. package/lib/components/tooltip/src/content.js +22 -4
  788. package/lib/components/tooltip/src/content.js.map +1 -1
  789. package/lib/components/tooltip/src/content.vue.d.ts +11 -5
  790. package/lib/components/tooltip/src/tokens.d.ts +2 -0
  791. package/lib/components/tooltip/src/tokens.js.map +1 -1
  792. package/lib/components/tooltip/src/tooltip.vue.d.ts +5 -2
  793. package/lib/components/tooltip/src/tooltip2.js +10 -3
  794. package/lib/components/tooltip/src/tooltip2.js.map +1 -1
  795. package/lib/components/tooltip/src/trigger.js.map +1 -1
  796. package/lib/components/transfer/index.d.ts +4 -4
  797. package/lib/components/transfer/src/index.js.map +1 -1
  798. package/lib/components/transfer/src/index.vue.d.ts +2 -2
  799. package/lib/components/transfer/src/transfer-panel.js.map +1 -1
  800. package/lib/components/tree/src/tree-node.js.map +1 -1
  801. package/lib/components/tree/src/tree.js.map +1 -1
  802. package/lib/components/tree-v2/index.d.ts +1 -1
  803. package/lib/components/tree-v2/src/tree-node.js.map +1 -1
  804. package/lib/components/tree-v2/src/tree.js.map +1 -1
  805. package/lib/components/tree-v2/src/tree.vue.d.ts +1 -1
  806. package/lib/components/upload/src/upload-dragger.js.map +1 -1
  807. package/lib/components/upload/src/upload-list.js.map +1 -1
  808. package/lib/components/upload/src/upload.js.map +1 -1
  809. package/lib/components/virtual-list/src/builders/build-grid.d.ts +1 -1
  810. package/lib/components/virtual-list/src/builders/build-list.d.ts +1 -1
  811. package/lib/components/virtual-list/src/components/dynamic-size-grid.d.ts +1 -1
  812. package/lib/components/virtual-list/src/components/dynamic-size-list.d.ts +1 -1
  813. package/lib/components/virtual-list/src/components/fixed-size-grid.d.ts +1 -1
  814. package/lib/components/virtual-list/src/components/fixed-size-list.d.ts +1 -1
  815. package/lib/components/visual-hidden/src/visual-hidden.js.map +1 -1
  816. package/lib/defaults.d.ts +1 -1
  817. package/lib/hooks/use-global-config/index.d.ts +1 -1
  818. package/lib/hooks/use-model-toggle/index.d.ts +10 -7
  819. package/lib/hooks/use-model-toggle/index.js +9 -7
  820. package/lib/hooks/use-model-toggle/index.js.map +1 -1
  821. package/lib/index.d.ts +1 -1
  822. package/lib/{locale.d.ts → locales.d.ts} +0 -0
  823. package/lib/{locale.js → locales.js} +1 -1
  824. package/lib/locales.js.map +1 -0
  825. package/lib/utils/vue/install.d.ts +2 -2
  826. package/lib/utils/vue/install.js +2 -0
  827. package/lib/utils/vue/install.js.map +1 -1
  828. package/lib/utils/vue/typescript.d.ts +4 -1
  829. package/lib/version.d.ts +1 -1
  830. package/lib/version.js +1 -1
  831. package/lib/version.js.map +1 -1
  832. package/package.json +6 -6
  833. package/tags.json +1 -1
  834. package/theme-chalk/base.css +1 -1
  835. package/theme-chalk/display.css +1 -1
  836. package/theme-chalk/el-button.css +1 -1
  837. package/theme-chalk/el-cascader.css +1 -1
  838. package/theme-chalk/el-check-tag.css +1 -1
  839. package/theme-chalk/el-checkbox-button.css +1 -1
  840. package/theme-chalk/el-date-picker.css +1 -1
  841. package/theme-chalk/el-dialog.css +1 -1
  842. package/theme-chalk/el-dropdown.css +1 -1
  843. package/theme-chalk/el-form.css +1 -1
  844. package/theme-chalk/el-input-number.css +1 -1
  845. package/theme-chalk/el-input.css +1 -1
  846. package/theme-chalk/el-reset.css +1 -1
  847. package/theme-chalk/el-row.css +1 -1
  848. package/theme-chalk/el-select-v2.css +1 -1
  849. package/theme-chalk/el-select.css +1 -1
  850. package/theme-chalk/el-switch.css +1 -1
  851. package/theme-chalk/el-table-column.css +1 -1
  852. package/theme-chalk/el-tag.css +1 -1
  853. package/theme-chalk/el-time-picker.css +1 -1
  854. package/theme-chalk/el-time-select.css +1 -1
  855. package/theme-chalk/el-var.css +1 -1
  856. package/theme-chalk/index.css +1 -1
  857. package/theme-chalk/src/button.scss +1 -1
  858. package/theme-chalk/src/cascader.scss +13 -12
  859. package/theme-chalk/src/check-tag.scss +7 -5
  860. package/theme-chalk/src/checkbox-button.scss +1 -1
  861. package/theme-chalk/src/common/var.scss +37 -21
  862. package/theme-chalk/src/dark/vars.scss +6 -0
  863. package/theme-chalk/src/date-picker/date-table.scss +14 -14
  864. package/theme-chalk/src/date-picker/picker.scss +3 -4
  865. package/theme-chalk/src/dialog.scss +6 -2
  866. package/theme-chalk/src/form.scss +2 -2
  867. package/theme-chalk/src/input-number.scss +6 -4
  868. package/theme-chalk/src/input.scss +151 -44
  869. package/theme-chalk/src/mixins/_button.scss +119 -15
  870. package/theme-chalk/src/mixins/_var.scss +21 -8
  871. package/theme-chalk/src/mixins/function.scss +17 -0
  872. package/theme-chalk/src/mixins/mixins.scss +8 -0
  873. package/theme-chalk/src/reset.scss +1 -1
  874. package/theme-chalk/src/row.scss +3 -1
  875. package/theme-chalk/src/select-v2.scss +2 -1
  876. package/theme-chalk/src/select.scss +15 -4
  877. package/theme-chalk/src/switch.scss +2 -0
  878. package/theme-chalk/src/tag.scss +64 -66
  879. package/theme-chalk/src/var.scss +6 -0
  880. package/web-types.json +1 -1
  881. package/es/locale.mjs.map +0 -1
  882. package/lib/locale.js.map +0 -1
@@ -3,7 +3,6 @@
3
3
  Object.defineProperty(exports, '__esModule', { value: true });
4
4
 
5
5
  var vue = require('vue');
6
- var core = require('@vueuse/core');
7
6
  var tinycolor = require('@ctrl/tinycolor');
8
7
  var index$4 = require('../../icon/index.js');
9
8
  require('../../../hooks/index.js');
@@ -50,13 +49,12 @@ const _sfc_main = /* @__PURE__ */ vue.defineComponent({
50
49
  }
51
50
  return false;
52
51
  });
53
- const typeColor = vue.computed(() => core.useCssVar(`--el-color-${props.type}`).value);
54
52
  const buttonStyle = vue.computed(() => {
55
53
  let styles = {};
56
- const buttonColor = props.color || typeColor.value;
54
+ const buttonColor = props.color;
57
55
  if (buttonColor) {
58
56
  const color = new tinycolor.TinyColor(buttonColor);
59
- const shadeBgColor = color.shade(10).toString();
57
+ const shadeBgColor = color.shade(20).toString();
60
58
  if (props.plain) {
61
59
  styles = {
62
60
  "--el-button-bg-color": color.tint(90).toString(),
@@ -69,7 +67,7 @@ const _sfc_main = /* @__PURE__ */ vue.defineComponent({
69
67
  "--el-button-active-border-color": shadeBgColor
70
68
  };
71
69
  } else {
72
- const tintBgColor = color.tint(20).toString();
70
+ const tintBgColor = color.tint(30).toString();
73
71
  styles = {
74
72
  "--el-button-bg-color": buttonColor,
75
73
  "--el-button-border-color": buttonColor,
@@ -1 +1 @@
1
- {"version":3,"file":"button2.js","sources":["../../../../../../packages/components/button/src/button.vue"],"sourcesContent":["<template>\n <button\n ref=\"_ref\"\n :class=\"[\n ns.b(),\n ns.m(_type),\n ns.m(_size),\n ns.is('disabled', _disabled),\n ns.is('loading', loading),\n ns.is('plain', plain),\n ns.is('round', round),\n ns.is('circle', circle),\n ]\"\n :disabled=\"_disabled || loading\"\n :autofocus=\"autofocus\"\n :type=\"nativeType\"\n :style=\"buttonStyle\"\n @click=\"handleClick\"\n >\n <template v-if=\"loading\">\n <slot v-if=\"$slots.loading\" name=\"loading\"></slot>\n <el-icon v-else :class=\"ns.is('loading')\">\n <component :is=\"loadingIcon\" />\n </el-icon>\n </template>\n <el-icon v-else-if=\"icon\">\n <component :is=\"icon\" />\n </el-icon>\n <span\n v-if=\"$slots.default\"\n :class=\"{ [ns.em('text', 'expand')]: shouldAddSpace }\"\n >\n <slot></slot>\n </span>\n </button>\n</template>\n\n<script lang=\"ts\" setup>\nimport { computed, inject, Text, ref, useSlots } from 'vue'\nimport { useCssVar } from '@vueuse/core'\nimport { TinyColor } from '@ctrl/tinycolor'\nimport { ElIcon } from '@element-plus/components/icon'\nimport {\n useDisabled,\n useFormItem,\n useGlobalConfig,\n useNamespace,\n useSize,\n} from '@element-plus/hooks'\nimport { buttonGroupContextKey } from '@element-plus/tokens'\nimport { buttonEmits, buttonProps } from './button'\n\ndefineOptions({\n name: 'ElButton',\n})\n\nconst props = defineProps(buttonProps)\nconst emit = defineEmits(buttonEmits)\nconst slots = useSlots()\n\nconst buttonGroupContext = inject(buttonGroupContextKey, undefined)\nconst globalConfig = useGlobalConfig('button')\nconst ns = useNamespace('button')\nconst { form } = useFormItem()\nconst _size = useSize(computed(() => buttonGroupContext?.size))\nconst _disabled = useDisabled()\nconst _ref = ref<HTMLButtonElement>()\n\nconst _type = computed(() => props.type || buttonGroupContext?.type || '')\nconst autoInsertSpace = computed(\n () => props.autoInsertSpace ?? globalConfig.value?.autoInsertSpace ?? false\n)\n\n// add space between two characters in Chinese\nconst shouldAddSpace = computed(() => {\n const defaultSlot = slots.default?.()\n if (autoInsertSpace.value && defaultSlot?.length === 1) {\n const slot = defaultSlot[0]\n if (slot?.type === Text) {\n const text = slot.children\n return /^\\p{Unified_Ideograph}{2}$/u.test(text as string)\n }\n }\n return false\n})\n\n// calculate hover & active color by color\nconst typeColor = computed(() => useCssVar(`--el-color-${props.type}`).value)\nconst buttonStyle = computed(() => {\n let styles: Record<string, string> = {}\n\n const buttonColor = props.color || typeColor.value\n\n if (buttonColor) {\n const color = new TinyColor(buttonColor)\n const shadeBgColor = color.shade(10).toString()\n if (props.plain) {\n styles = {\n '--el-button-bg-color': color.tint(90).toString(),\n '--el-button-text-color': buttonColor,\n '--el-button-hover-text-color': 'var(--el-color-white)',\n '--el-button-hover-bg-color': buttonColor,\n '--el-button-hover-border-color': buttonColor,\n '--el-button-active-bg-color': shadeBgColor,\n '--el-button-active-text-color': 'var(--el-color-white)',\n '--el-button-active-border-color': shadeBgColor,\n }\n } else {\n const tintBgColor = color.tint(20).toString()\n styles = {\n '--el-button-bg-color': buttonColor,\n '--el-button-border-color': buttonColor,\n '--el-button-hover-bg-color': tintBgColor,\n '--el-button-hover-border-color': tintBgColor,\n '--el-button-active-bg-color': shadeBgColor,\n '--el-button-active-border-color': shadeBgColor,\n }\n }\n\n if (_disabled.value) {\n const disabledButtonColor = color.tint(50).toString()\n styles['--el-button-disabled-bg-color'] = disabledButtonColor\n styles['--el-button-disabled-border-color'] = disabledButtonColor\n }\n }\n\n return styles\n})\n\nconst handleClick = (evt: MouseEvent) => {\n if (props.nativeType === 'reset') {\n form?.resetFields()\n }\n emit('click', evt)\n}\n\ndefineExpose({\n /** @description button html element */\n ref: _ref,\n /** @description button size */\n size: _size,\n /** @description button type */\n type: _type,\n /** @description button disabled */\n disabled: _disabled,\n /** @description whether adding space */\n shouldAddSpace,\n})\n</script>\n"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;AA0DA;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AAEA;AACA;AAKA;;;;;;;;;;;AAaA;AACA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAyCA;;;;;;AAOA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;"}
1
+ {"version":3,"file":"button2.js","sources":["../../../../../../packages/components/button/src/button.vue"],"sourcesContent":["<template>\n <button\n ref=\"_ref\"\n :class=\"[\n ns.b(),\n ns.m(_type),\n ns.m(_size),\n ns.is('disabled', _disabled),\n ns.is('loading', loading),\n ns.is('plain', plain),\n ns.is('round', round),\n ns.is('circle', circle),\n ]\"\n :disabled=\"_disabled || loading\"\n :autofocus=\"autofocus\"\n :type=\"nativeType\"\n :style=\"buttonStyle\"\n @click=\"handleClick\"\n >\n <template v-if=\"loading\">\n <slot v-if=\"$slots.loading\" name=\"loading\"></slot>\n <el-icon v-else :class=\"ns.is('loading')\">\n <component :is=\"loadingIcon\" />\n </el-icon>\n </template>\n <el-icon v-else-if=\"icon\">\n <component :is=\"icon\" />\n </el-icon>\n <span\n v-if=\"$slots.default\"\n :class=\"{ [ns.em('text', 'expand')]: shouldAddSpace }\"\n >\n <slot></slot>\n </span>\n </button>\n</template>\n\n<script lang=\"ts\" setup>\nimport { computed, inject, Text, ref, useSlots } from 'vue'\nimport { TinyColor } from '@ctrl/tinycolor'\nimport { ElIcon } from '@element-plus/components/icon'\nimport {\n useDisabled,\n useFormItem,\n useGlobalConfig,\n useNamespace,\n useSize,\n} from '@element-plus/hooks'\nimport { buttonGroupContextKey } from '@element-plus/tokens'\nimport { buttonEmits, buttonProps } from './button'\n\ndefineOptions({\n name: 'ElButton',\n})\n\nconst props = defineProps(buttonProps)\nconst emit = defineEmits(buttonEmits)\nconst slots = useSlots()\n\nconst buttonGroupContext = inject(buttonGroupContextKey, undefined)\nconst globalConfig = useGlobalConfig('button')\nconst ns = useNamespace('button')\nconst { form } = useFormItem()\nconst _size = useSize(computed(() => buttonGroupContext?.size))\nconst _disabled = useDisabled()\nconst _ref = ref<HTMLButtonElement>()\n\nconst _type = computed(() => props.type || buttonGroupContext?.type || '')\nconst autoInsertSpace = computed(\n () => props.autoInsertSpace ?? globalConfig.value?.autoInsertSpace ?? false\n)\n\n// add space between two characters in Chinese\nconst shouldAddSpace = computed(() => {\n const defaultSlot = slots.default?.()\n if (autoInsertSpace.value && defaultSlot?.length === 1) {\n const slot = defaultSlot[0]\n if (slot?.type === Text) {\n const text = slot.children\n return /^\\p{Unified_Ideograph}{2}$/u.test(text as string)\n }\n }\n return false\n})\n\n// calculate hover & active color by custom color\n// only work when custom color\nconst buttonStyle = computed(() => {\n let styles: Record<string, string> = {}\n\n const buttonColor = props.color\n\n if (buttonColor) {\n const color = new TinyColor(buttonColor)\n const shadeBgColor = color.shade(20).toString()\n if (props.plain) {\n styles = {\n '--el-button-bg-color': color.tint(90).toString(),\n '--el-button-text-color': buttonColor,\n '--el-button-hover-text-color': 'var(--el-color-white)',\n '--el-button-hover-bg-color': buttonColor,\n '--el-button-hover-border-color': buttonColor,\n '--el-button-active-bg-color': shadeBgColor,\n '--el-button-active-text-color': 'var(--el-color-white)',\n '--el-button-active-border-color': shadeBgColor,\n }\n } else {\n const tintBgColor = color.tint(30).toString()\n styles = {\n '--el-button-bg-color': buttonColor,\n '--el-button-border-color': buttonColor,\n '--el-button-hover-bg-color': tintBgColor,\n '--el-button-hover-border-color': tintBgColor,\n '--el-button-active-bg-color': shadeBgColor,\n '--el-button-active-border-color': shadeBgColor,\n }\n }\n\n if (_disabled.value) {\n const disabledButtonColor = color.tint(50).toString()\n styles['--el-button-disabled-bg-color'] = disabledButtonColor\n styles['--el-button-disabled-border-color'] = disabledButtonColor\n }\n }\n\n return styles\n})\n\nconst handleClick = (evt: MouseEvent) => {\n if (props.nativeType === 'reset') {\n form?.resetFields()\n }\n emit('click', evt)\n}\n\ndefineExpose({\n /** @description button html element */\n ref: _ref,\n /** @description button size */\n size: _size,\n /** @description button type */\n type: _type,\n /** @description button disabled */\n disabled: _disabled,\n /** @description whether adding space */\n shouldAddSpace,\n})\n</script>\n"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;AAyDA;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AAEA;AACA;AAKA;;;;;;;;;;;AAcA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAyCA;;;;;;AAOA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;"}
@@ -9,7 +9,7 @@ export declare const ElCalendar: import("element-plus/es/utils").SFCWithInstall<
9
9
  date: import("vue").ComputedRef<import("dayjs").Dayjs>;
10
10
  validatedRange: import("vue").ComputedRef<[import("dayjs").Dayjs, import("dayjs").Dayjs][]>;
11
11
  pickDay: (day: import("dayjs").Dayjs) => void;
12
- selectDate: (type: "prev-month" | "next-month" | "prev-year" | "next-year" | "today") => void;
12
+ selectDate: (type: "today" | "prev-month" | "next-month" | "prev-year" | "next-year") => void;
13
13
  t: import("../..").Translator;
14
14
  ns: {
15
15
  namespace: import("vue").ComputedRef<string>;
@@ -1 +1 @@
1
- {"version":3,"file":"calendar2.js","sources":["../../../../../../packages/components/calendar/src/calendar.vue"],"sourcesContent":["<template>\n <div :class=\"ns.b()\">\n <div :class=\"ns.e('header')\">\n <slot name=\"header\" :date=\"i18nDate\">\n <div :class=\"ns.e('title')\">{{ i18nDate }}</div>\n <div v-if=\"validatedRange.length === 0\" :class=\"ns.e('button-group')\">\n <el-button-group>\n <el-button size=\"small\" @click=\"selectDate('prev-month')\">\n {{ t('el.datepicker.prevMonth') }}\n </el-button>\n <el-button size=\"small\" @click=\"selectDate('today')\">\n {{ t('el.datepicker.today') }}\n </el-button>\n <el-button size=\"small\" @click=\"selectDate('next-month')\">\n {{ t('el.datepicker.nextMonth') }}\n </el-button>\n </el-button-group>\n </div>\n </slot>\n </div>\n <div v-if=\"validatedRange.length === 0\" :class=\"ns.e('body')\">\n <date-table :date=\"date\" :selected-day=\"realSelectedDay\" @pick=\"pickDay\">\n <template v-if=\"$slots.dateCell\" #dateCell=\"data\">\n <slot name=\"dateCell\" v-bind=\"data\"></slot>\n </template>\n </date-table>\n </div>\n <div v-else :class=\"ns.e('body')\">\n <date-table\n v-for=\"(range_, index) in validatedRange\"\n :key=\"index\"\n :date=\"range_[0]\"\n :selected-day=\"realSelectedDay\"\n :range=\"range_\"\n :hide-header=\"index !== 0\"\n @pick=\"pickDay\"\n >\n <template v-if=\"$slots.dateCell\" #dateCell=\"data\">\n <slot name=\"dateCell\" v-bind=\"data\"></slot>\n </template>\n </date-table>\n </div>\n </div>\n</template>\n\n<script lang=\"ts\">\nimport { ref, computed, defineComponent } from 'vue'\nimport dayjs from 'dayjs'\nimport { ElButton, ElButtonGroup } from '@element-plus/components/button'\nimport { useLocale, useNamespace } from '@element-plus/hooks'\nimport { debugWarn } from '@element-plus/utils'\nimport DateTable from './date-table.vue'\nimport { calendarProps, calendarEmits } from './calendar'\n\nimport type { ComputedRef } from 'vue'\nimport type { Dayjs } from 'dayjs'\n\ntype DateType =\n | 'prev-month'\n | 'next-month'\n | 'prev-year'\n | 'next-year'\n | 'today'\n\nexport default defineComponent({\n name: 'ElCalendar',\n\n components: {\n DateTable,\n ElButton,\n ElButtonGroup,\n },\n\n props: calendarProps,\n emits: calendarEmits,\n\n setup(props, { emit }) {\n const ns = useNamespace('calendar')\n\n const { t, lang } = useLocale()\n const selectedDay = ref<Dayjs>()\n const now = dayjs().locale(lang.value)\n\n const prevMonthDayjs = computed(() => {\n return date.value.subtract(1, 'month').date(1)\n })\n const curMonthDatePrefix = computed(() => {\n return dayjs(date.value).locale(lang.value).format('YYYY-MM')\n })\n\n const nextMonthDayjs = computed(() => {\n return date.value.add(1, 'month').date(1)\n })\n\n const prevYearDayjs = computed(() => {\n return date.value.subtract(1, 'year').date(1)\n })\n\n const nextYearDayjs = computed(() => {\n return date.value.add(1, 'year').date(1)\n })\n\n const i18nDate = computed(() => {\n const pickedMonth = `el.datepicker.month${date.value.format('M')}`\n return `${date.value.year()} ${t('el.datepicker.year')} ${t(pickedMonth)}`\n })\n\n const realSelectedDay = computed<Dayjs | undefined>({\n get() {\n if (!props.modelValue) return selectedDay.value\n return date.value\n },\n set(val) {\n if (!val) return\n selectedDay.value = val\n const result = val.toDate()\n\n emit('input', result)\n emit('update:modelValue', result)\n },\n })\n\n const date: ComputedRef<Dayjs> = computed(() => {\n if (!props.modelValue) {\n if (realSelectedDay.value) {\n return realSelectedDay.value\n } else if (validatedRange.value.length) {\n return validatedRange.value[0][0]\n }\n return now\n } else {\n return dayjs(props.modelValue).locale(lang.value)\n }\n })\n\n // https://github.com/element-plus/element-plus/issues/3155\n // Calculate the validate date range according to the start and end dates\n const calculateValidatedDateRange = (\n startDayjs: Dayjs,\n endDayjs: Dayjs\n ): [Dayjs, Dayjs][] => {\n const firstDay = startDayjs.startOf('week')\n const lastDay = endDayjs.endOf('week')\n const firstMonth = firstDay.get('month')\n const lastMonth = lastDay.get('month')\n\n // Current mouth\n if (firstMonth === lastMonth) {\n return [[firstDay, lastDay]]\n }\n // Two adjacent months\n else if (firstMonth + 1 === lastMonth) {\n const firstMonthLastDay = firstDay.endOf('month')\n const lastMonthFirstDay = lastDay.startOf('month')\n\n // Whether the last day of the first month and the first day of the last month is in the same week\n const isSameWeek = firstMonthLastDay.isSame(lastMonthFirstDay, 'week')\n const lastMonthStartDay = isSameWeek\n ? lastMonthFirstDay.add(1, 'week')\n : lastMonthFirstDay\n\n return [\n [firstDay, firstMonthLastDay],\n [lastMonthStartDay.startOf('week'), lastDay],\n ]\n }\n // Three consecutive months (compatible: 2021-01-30 to 2021-02-28)\n else if (firstMonth + 2 === lastMonth) {\n const firstMonthLastDay = firstDay.endOf('month')\n const secondMonthFirstDay = firstDay.add(1, 'month').startOf('month')\n\n // Whether the last day of the first month and the second month is in the same week\n const secondMonthStartDay = firstMonthLastDay.isSame(\n secondMonthFirstDay,\n 'week'\n )\n ? secondMonthFirstDay.add(1, 'week')\n : secondMonthFirstDay\n\n const secondMonthLastDay = secondMonthStartDay.endOf('month')\n const lastMonthFirstDay = lastDay.startOf('month')\n\n // Whether the last day of the second month and the last day of the last month is in the same week\n const lastMonthStartDay = secondMonthLastDay.isSame(\n lastMonthFirstDay,\n 'week'\n )\n ? lastMonthFirstDay.add(1, 'week')\n : lastMonthFirstDay\n\n return [\n [firstDay, firstMonthLastDay],\n [secondMonthStartDay.startOf('week'), secondMonthLastDay],\n [lastMonthStartDay.startOf('week'), lastDay],\n ]\n }\n // Other cases\n else {\n debugWarn(\n 'ElCalendar',\n 'start time and end time interval must not exceed two months'\n )\n return []\n }\n }\n\n // if range is valid, we get a two-digit array\n const validatedRange = computed(() => {\n if (!props.range) return []\n const rangeArrDayjs = props.range.map((_) => dayjs(_).locale(lang.value))\n const [startDayjs, endDayjs] = rangeArrDayjs\n if (startDayjs.isAfter(endDayjs)) {\n debugWarn('ElCalendar', 'end time should be greater than start time')\n return []\n }\n if (startDayjs.isSame(endDayjs, 'month')) {\n // same month\n return calculateValidatedDateRange(startDayjs, endDayjs)\n } else {\n // two months\n if (startDayjs.add(1, 'month').month() !== endDayjs.month()) {\n debugWarn(\n 'ElCalendar',\n 'start time and end time interval must not exceed two months'\n )\n return []\n }\n return calculateValidatedDateRange(startDayjs, endDayjs)\n }\n })\n\n const pickDay = (day: Dayjs) => {\n realSelectedDay.value = day\n }\n\n const selectDate = (type: DateType) => {\n let day: Dayjs\n if (type === 'prev-month') {\n day = prevMonthDayjs.value\n } else if (type === 'next-month') {\n day = nextMonthDayjs.value\n } else if (type === 'prev-year') {\n day = prevYearDayjs.value\n } else if (type === 'next-year') {\n day = nextYearDayjs.value\n } else {\n day = now\n }\n\n if (day.isSame(date.value, 'day')) return\n pickDay(day)\n }\n\n return {\n selectedDay,\n curMonthDatePrefix,\n i18nDate,\n realSelectedDay,\n date,\n validatedRange,\n pickDay,\n selectDate,\n t,\n\n ns,\n }\n },\n})\n</script>\n"],"names":["defineComponent","DateTable","ElButton","ElButtonGroup","calendarProps","calendarEmits","useNamespace","useLocale","ref","dayjs","computed","_openBlock","_toDisplayString","_withCtx","_createSlots","_Fragment","_createBlock"],"mappings":"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"}
1
+ {"version":3,"file":"calendar2.js","sources":["../../../../../../packages/components/calendar/src/calendar.vue"],"sourcesContent":["<template>\n <div :class=\"ns.b()\">\n <div :class=\"ns.e('header')\">\n <slot name=\"header\" :date=\"i18nDate\">\n <div :class=\"ns.e('title')\">{{ i18nDate }}</div>\n <div v-if=\"validatedRange.length === 0\" :class=\"ns.e('button-group')\">\n <el-button-group>\n <el-button size=\"small\" @click=\"selectDate('prev-month')\">\n {{ t('el.datepicker.prevMonth') }}\n </el-button>\n <el-button size=\"small\" @click=\"selectDate('today')\">\n {{ t('el.datepicker.today') }}\n </el-button>\n <el-button size=\"small\" @click=\"selectDate('next-month')\">\n {{ t('el.datepicker.nextMonth') }}\n </el-button>\n </el-button-group>\n </div>\n </slot>\n </div>\n <div v-if=\"validatedRange.length === 0\" :class=\"ns.e('body')\">\n <date-table :date=\"date\" :selected-day=\"realSelectedDay\" @pick=\"pickDay\">\n <template v-if=\"$slots.dateCell\" #dateCell=\"data\">\n <slot name=\"dateCell\" v-bind=\"data\"></slot>\n </template>\n </date-table>\n </div>\n <div v-else :class=\"ns.e('body')\">\n <date-table\n v-for=\"(range_, index) in validatedRange\"\n :key=\"index\"\n :date=\"range_[0]\"\n :selected-day=\"realSelectedDay\"\n :range=\"range_\"\n :hide-header=\"index !== 0\"\n @pick=\"pickDay\"\n >\n <template v-if=\"$slots.dateCell\" #dateCell=\"data\">\n <slot name=\"dateCell\" v-bind=\"data\"></slot>\n </template>\n </date-table>\n </div>\n </div>\n</template>\n\n<script lang=\"ts\">\nimport { ref, computed, defineComponent } from 'vue'\nimport dayjs from 'dayjs'\nimport { ElButton, ElButtonGroup } from '@element-plus/components/button'\nimport { useLocale, useNamespace } from '@element-plus/hooks'\nimport { debugWarn } from '@element-plus/utils'\nimport DateTable from './date-table.vue'\nimport { calendarProps, calendarEmits } from './calendar'\n\nimport type { ComputedRef } from 'vue'\nimport type { Dayjs } from 'dayjs'\n\ntype DateType =\n | 'prev-month'\n | 'next-month'\n | 'prev-year'\n | 'next-year'\n | 'today'\n\nexport default defineComponent({\n name: 'ElCalendar',\n\n components: {\n DateTable,\n ElButton,\n ElButtonGroup,\n },\n\n props: calendarProps,\n emits: calendarEmits,\n\n setup(props, { emit }) {\n const ns = useNamespace('calendar')\n\n const { t, lang } = useLocale()\n const selectedDay = ref<Dayjs>()\n const now = dayjs().locale(lang.value)\n\n const prevMonthDayjs = computed(() => {\n return date.value.subtract(1, 'month').date(1)\n })\n const curMonthDatePrefix = computed(() => {\n return dayjs(date.value).locale(lang.value).format('YYYY-MM')\n })\n\n const nextMonthDayjs = computed(() => {\n return date.value.add(1, 'month').date(1)\n })\n\n const prevYearDayjs = computed(() => {\n return date.value.subtract(1, 'year').date(1)\n })\n\n const nextYearDayjs = computed(() => {\n return date.value.add(1, 'year').date(1)\n })\n\n const i18nDate = computed(() => {\n const pickedMonth = `el.datepicker.month${date.value.format('M')}`\n return `${date.value.year()} ${t('el.datepicker.year')} ${t(pickedMonth)}`\n })\n\n const realSelectedDay = computed<Dayjs | undefined>({\n get() {\n if (!props.modelValue) return selectedDay.value\n return date.value\n },\n set(val) {\n if (!val) return\n selectedDay.value = val\n const result = val.toDate()\n\n emit('input', result)\n emit('update:modelValue', result)\n },\n })\n\n const date: ComputedRef<Dayjs> = computed(() => {\n if (!props.modelValue) {\n if (realSelectedDay.value) {\n return realSelectedDay.value\n } else if (validatedRange.value.length) {\n return validatedRange.value[0][0]\n }\n return now\n } else {\n return dayjs(props.modelValue).locale(lang.value)\n }\n })\n\n // https://github.com/element-plus/element-plus/issues/3155\n // Calculate the validate date range according to the start and end dates\n const calculateValidatedDateRange = (\n startDayjs: Dayjs,\n endDayjs: Dayjs\n ): [Dayjs, Dayjs][] => {\n const firstDay = startDayjs.startOf('week')\n const lastDay = endDayjs.endOf('week')\n const firstMonth = firstDay.get('month')\n const lastMonth = lastDay.get('month')\n\n // Current mouth\n if (firstMonth === lastMonth) {\n return [[firstDay, lastDay]]\n }\n // Two adjacent months\n else if (firstMonth + 1 === lastMonth) {\n const firstMonthLastDay = firstDay.endOf('month')\n const lastMonthFirstDay = lastDay.startOf('month')\n\n // Whether the last day of the first month and the first day of the last month is in the same week\n const isSameWeek = firstMonthLastDay.isSame(lastMonthFirstDay, 'week')\n const lastMonthStartDay = isSameWeek\n ? lastMonthFirstDay.add(1, 'week')\n : lastMonthFirstDay\n\n return [\n [firstDay, firstMonthLastDay],\n [lastMonthStartDay.startOf('week'), lastDay],\n ]\n }\n // Three consecutive months (compatible: 2021-01-30 to 2021-02-28)\n else if (firstMonth + 2 === lastMonth) {\n const firstMonthLastDay = firstDay.endOf('month')\n const secondMonthFirstDay = firstDay.add(1, 'month').startOf('month')\n\n // Whether the last day of the first month and the second month is in the same week\n const secondMonthStartDay = firstMonthLastDay.isSame(\n secondMonthFirstDay,\n 'week'\n )\n ? secondMonthFirstDay.add(1, 'week')\n : secondMonthFirstDay\n\n const secondMonthLastDay = secondMonthStartDay.endOf('month')\n const lastMonthFirstDay = lastDay.startOf('month')\n\n // Whether the last day of the second month and the last day of the last month is in the same week\n const lastMonthStartDay = secondMonthLastDay.isSame(\n lastMonthFirstDay,\n 'week'\n )\n ? lastMonthFirstDay.add(1, 'week')\n : lastMonthFirstDay\n\n return [\n [firstDay, firstMonthLastDay],\n [secondMonthStartDay.startOf('week'), secondMonthLastDay],\n [lastMonthStartDay.startOf('week'), lastDay],\n ]\n }\n // Other cases\n else {\n debugWarn(\n 'ElCalendar',\n 'start time and end time interval must not exceed two months'\n )\n return []\n }\n }\n\n // if range is valid, we get a two-digit array\n const validatedRange = computed(() => {\n if (!props.range) return []\n const rangeArrDayjs = props.range.map((_) => dayjs(_).locale(lang.value))\n const [startDayjs, endDayjs] = rangeArrDayjs\n if (startDayjs.isAfter(endDayjs)) {\n debugWarn('ElCalendar', 'end time should be greater than start time')\n return []\n }\n if (startDayjs.isSame(endDayjs, 'month')) {\n // same month\n return calculateValidatedDateRange(startDayjs, endDayjs)\n } else {\n // two months\n if (startDayjs.add(1, 'month').month() !== endDayjs.month()) {\n debugWarn(\n 'ElCalendar',\n 'start time and end time interval must not exceed two months'\n )\n return []\n }\n return calculateValidatedDateRange(startDayjs, endDayjs)\n }\n })\n\n const pickDay = (day: Dayjs) => {\n realSelectedDay.value = day\n }\n\n const selectDate = (type: DateType) => {\n let day: Dayjs\n if (type === 'prev-month') {\n day = prevMonthDayjs.value\n } else if (type === 'next-month') {\n day = nextMonthDayjs.value\n } else if (type === 'prev-year') {\n day = prevYearDayjs.value\n } else if (type === 'next-year') {\n day = nextYearDayjs.value\n } else {\n day = now\n }\n\n if (day.isSame(date.value, 'day')) return\n pickDay(day)\n }\n\n return {\n selectedDay,\n curMonthDatePrefix,\n i18nDate,\n realSelectedDay,\n date,\n validatedRange,\n pickDay,\n selectDate,\n t,\n\n ns,\n }\n },\n})\n</script>\n"],"names":["defineComponent","DateTable","ElButton","ElButtonGroup","calendarProps","calendarEmits","useNamespace","useLocale","ref","dayjs","computed","_createElementBlock","_normalizeClass","_createElementVNode","_renderSlot","_createVNode","_Fragment","_createBlock"],"mappings":";;;;;;;;;;;;;;;;;;;;AAgEA,MAAK,YAAaA,oBAAa;AAAA,EAC7B,MAAM;AAAA,EAEN,YAAY;AAAA,eACVC;AAAA,cACAC;AAAA,mBACAC;AAAA;AAAA,EAGF,OAAOC;AAAA,EACP,OAAOC;AAAA,EAEP,MAAM,OAAO,EAAE,QAAQ;AACrB,UAAM,KAAKC,qBAAa;AAExB,UAAM,EAAE,GAAG,SAASC;AACpB,UAAM,cAAcC;AACpB,UAAM,MAAMC,4BAAQ,OAAO,KAAK;AAEhC,UAAM,iBAAiBC,aAAS,MAAM;AACpC,aAAO,KAAK,MAAM,SAAS,GAAG,SAAS,KAAK;AAAA;AAE9C,UAAM,qBAAqBA,aAAS,MAAM;AACxC,aAAOD,0BAAM,KAAK,OAAO,OAAO,KAAK,OAAO,OAAO;AAAA;AAGrD,UAAM,iBAAiBC,aAAS,MAAM;AACpC,aAAO,KAAK,MAAM,IAAI,GAAG,SAAS,KAAK;AAAA;AAGzC,UAAM,gBAAgBA,aAAS,MAAM;AACnC,aAAO,KAAK,MAAM,SAAS,GAAG,QAAQ,KAAK;AAAA;AAG7C,UAAM,gBAAgBA,aAAS,MAAM;AACnC,aAAO,KAAK,MAAM,IAAI,GAAG,QAAQ,KAAK;AAAA;AAGxC,UAAM,WAAWA,aAAS,MAAM;AAC9B,YAAM,cAAc,sBAAsB,KAAK,MAAM,OAAO;AAC5D,aAAO,GAAG,KAAK,MAAM,UAAU,EAAE,yBAAyB,EAAE;AAAA;AAG9D,UAAM,kBAAkBA,aAA4B;AAAA,MAClD,MAAM;AACJ,YAAI,CAAC,MAAM;AAAY,iBAAO,YAAY;AAC1C,eAAO,KAAK;AAAA;AAAA,MAEd,IAAI,KAAK;AACP,YAAI,CAAC;AAAK;AACV,oBAAY,QAAQ;AACpB,cAAM,SAAS,IAAI;AAEnB,aAAK,SAAS;AACd,aAAK,qBAAqB;AAAA;AAAA;AAI9B,UAAM,OAA2BA,aAAS,MAAM;AAC9C,UAAI,CAAC,MAAM,YAAY;AACrB,YAAI,gBAAgB,OAAO;AACzB,iBAAO,gBAAgB;AAAA,mBACd,eAAe,MAAM,QAAQ;AACtC,iBAAO,eAAe,MAAM,GAAG;AAAA;AAEjC,eAAO;AAAA,aACF;AACL,eAAOD,0BAAM,MAAM,YAAY,OAAO,KAAK;AAAA;AAAA;AAM/C,UAAM,8BAA8B,CAClC,YACA,aACqB;AACrB,YAAM,WAAW,WAAW,QAAQ;AACpC,YAAM,UAAU,SAAS,MAAM;AAC/B,YAAM,aAAa,SAAS,IAAI;AAChC,YAAM,YAAY,QAAQ,IAAI;AAG9B,UAAI,eAAe,WAAW;AAC5B,eAAO,CAAC,CAAC,UAAU;AAAA,iBAGZ,aAAa,MAAM,WAAW;AACrC,cAAM,oBAAoB,SAAS,MAAM;AACzC,cAAM,oBAAoB,QAAQ,QAAQ;AAG1C,cAAM,aAAa,kBAAkB,OAAO,mBAAmB;AAC/D,cAAM,oBAAoB,aACtB,kBAAkB,IAAI,GAAG,UACzB;AAEJ,eAAO;AAAA,UACL,CAAC,UAAU;AAAA,UACX,CAAC,kBAAkB,QAAQ,SAAS;AAAA;AAAA,iBAI/B,aAAa,MAAM,WAAW;AACrC,cAAM,oBAAoB,SAAS,MAAM;AACzC,cAAM,sBAAsB,SAAS,IAAI,GAAG,SAAS,QAAQ;AAG7D,cAAM,sBAAsB,kBAAkB,OAC5C,qBACA,UAEE,oBAAoB,IAAI,GAAG,UAC3B;AAEJ,cAAM,qBAAqB,oBAAoB,MAAM;AACrD,cAAM,oBAAoB,QAAQ,QAAQ;AAG1C,cAAM,oBAAoB,mBAAmB,OAC3C,mBACA,UAEE,kBAAkB,IAAI,GAAG,UACzB;AAEJ,eAAO;AAAA,UACL,CAAC,UAAU;AAAA,UACX,CAAC,oBAAoB,QAAQ,SAAS;AAAA,UACtC,CAAC,kBAAkB,QAAQ,SAAS;AAAA;AAAA,aAInC;AACH,wBACE,cACA;AAEF,eAAO;AAAA;AAAA;AAKX,UAAM,iBAAiBC,aAAS,MAAM;AACpC,UAAI,CAAC,MAAM;AAAO,eAAO;AACzB,YAAM,gBAAgB,MAAM,MAAM,IAAI,CAAC,MAAMD,0BAAM,GAAG,OAAO,KAAK;AAClE,YAAM,CAAC,YAAY,YAAY;AAC/B,UAAI,WAAW,QAAQ,WAAW;AAChC,wBAAU,cAAc;AACxB,eAAO;AAAA;AAET,UAAI,WAAW,OAAO,UAAU,UAAU;AAExC,eAAO,4BAA4B,YAAY;AAAA,aAC1C;AAEL,YAAI,WAAW,IAAI,GAAG,SAAS,YAAY,SAAS,SAAS;AAC3D,0BACE,cACA;AAEF,iBAAO;AAAA;AAET,eAAO,4BAA4B,YAAY;AAAA;AAAA;AAInD,UAAM,UAAU,CAAC,QAAe;AAC9B,sBAAgB,QAAQ;AAAA;AAG1B,UAAM,aAAa,CAAC,SAAmB;AACrC,UAAI;AACJ,UAAI,SAAS,cAAc;AACzB,cAAM,eAAe;AAAA,iBACZ,SAAS,cAAc;AAChC,cAAM,eAAe;AAAA,iBACZ,SAAS,aAAa;AAC/B,cAAM,cAAc;AAAA,iBACX,SAAS,aAAa;AAC/B,cAAM,cAAc;AAAA,aACf;AACL,cAAM;AAAA;AAGR,UAAI,IAAI,OAAO,KAAK,OAAO;AAAQ;AACnC,cAAQ;AAAA;AAGV,WAAO;AAAA,MACL;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MAEA;AAAA;AAAA;AAAA;;;;;0BAvQJE,uBAyCM;AAAA,IAzCA,OAAKC,mBAAE,QAAG;AAAA;IACdC,uBAiBM;AAAA,MAjBA,OAAKD,mBAAE,QAAG,EAAC;AAAA;MACfE,eAeO,yBAfc,MAAM,iBAA3B,MAeO;AAAA,QAdLD,uBAAgD;AAAA,UAA1C,OAAKD,mBAAE,QAAG,EAAC;AAAA,+BAAc,gBAAQ;AAAA,QAC5B,oBAAe,WAAM,sBAAhCD,uBAYM;AAAA;UAZmC,OAAKC,mBAAE,QAAG,EAAC;AAAA;UAClDG,gBAUkB;AAAA,iCAThB,MAEY;AAAA,cAFZA,gBAEY;AAAA,gBAFD,MAAK;AAAA,gBAAS,SAAK,sCAAE,gBAAU;AAAA;qCACxC,MAAkC;AAAA,0DAA/B,OAAC;AAAA;AAAA;;cAENA,gBAEY;AAAA,gBAFD,MAAK;AAAA,gBAAS,SAAK,sCAAE,gBAAU;AAAA;qCACxC,MAA8B;AAAA,0DAA3B,OAAC;AAAA;AAAA;;cAENA,gBAEY;AAAA,gBAFD,MAAK;AAAA,gBAAS,SAAK,sCAAE,gBAAU;AAAA;qCACxC,MAAkC;AAAA,0DAA/B,OAAC;AAAA;AAAA;;;;;;;;IAMH,oBAAe,WAAM,sBAAhCJ,uBAMM;AAAA;MANmC,OAAKC,mBAAE,QAAG,EAAC;AAAA;MAClDG,gBAIa;AAAA,QAJA,MAAM;AAAA,QAAO,gBAAc;AAAA,QAAkB,QAAM;AAAA;QAC9C,YAAO;gBAAW;AAAA,0BAChC,CAD0C,SAAI;AAAA,YAC9CD,eAA2C,mEAAb;AAAA;AAAA;;+BAIpCH,uBAcM;AAAA;MAdO,OAAKC,mBAAE,QAAG,EAAC;AAAA;4BACtBD,uBAYaK,mCAXe,qBAAc,CAAhC,QAAQ,UAAK;gCADvBC,gBAYa;AAAA,UAVV,KAAK;AAAA,UACL,MAAM,OAAM;AAAA,UACZ,gBAAc;AAAA,UACd,OAAO;AAAA,UACP,eAAa,UAAK;AAAA,UAClB,QAAM;AAAA;UAES,YAAO;kBAAW;AAAA,4BAChC,CAD0C,SAAI;AAAA,cAC9CH,eAA2C,mEAAb;AAAA;AAAA;;;;;;;;;;"}
@@ -1 +1 @@
1
- {"version":3,"file":"date-table2.js","sources":["../../../../../../packages/components/calendar/src/date-table.vue"],"sourcesContent":["<template>\n <table\n :class=\"[nsTable.b(), nsTable.is('range', isInRange)]\"\n cellspacing=\"0\"\n cellpadding=\"0\"\n >\n <thead v-if=\"!hideHeader\">\n <th v-for=\"day in weekDays\" :key=\"day\">{{ day }}</th>\n </thead>\n\n <tbody>\n <tr\n v-for=\"(row, index) in rows\"\n :key=\"index\"\n :class=\"{\n [nsTable.e('row')]: true,\n [nsTable.em('row', 'hide-border')]: index === 0 && hideHeader,\n }\"\n >\n <td\n v-for=\"(cell, key) in row\"\n :key=\"key\"\n :class=\"getCellClass(cell)\"\n @click=\"handlePickDay(cell)\"\n >\n <div :class=\"nsDay.b()\">\n <slot name=\"dateCell\" :data=\"getSlotData(cell)\">\n <span>{{ cell.text }}</span>\n </slot>\n </div>\n </td>\n </tr>\n </tbody>\n </table>\n</template>\n\n<script lang=\"ts\">\nimport { computed, defineComponent } from 'vue'\nimport dayjs from 'dayjs'\nimport localeData from 'dayjs/plugin/localeData'\nimport { useLocale, useNamespace } from '@element-plus/hooks'\nimport { rangeArr } from '@element-plus/components/time-picker'\nimport { dateTableProps, dateTableEmits } from './date-table'\nimport type { Dayjs } from 'dayjs'\ndayjs.extend(localeData)\n\ntype CellType = 'next' | 'prev' | 'current'\ninterface Cell {\n text: number\n type: CellType\n}\n\nconst WEEK_DAYS = ['sun', 'mon', 'tue', 'wed', 'thu', 'fri', 'sat'] as const\n\nexport const getPrevMonthLastDays = (date: Dayjs, count: number) => {\n const lastDay = date.subtract(1, 'month').endOf('month').date()\n return rangeArr(count).map((_, index) => lastDay - (count - index - 1))\n}\n\nexport const getMonthDays = (date: Dayjs) => {\n const days = date.daysInMonth()\n return rangeArr(days).map((_, index) => index + 1)\n}\n\nconst toNestedArr = (days: Cell[]) =>\n rangeArr(days.length / 7).map((index) => {\n const start = index * 7\n return days.slice(start, start + 7)\n })\n\nexport default defineComponent({\n props: dateTableProps,\n emits: dateTableEmits,\n\n setup(props, { emit }) {\n const { t, lang } = useLocale()\n const nsTable = useNamespace('calendar-table')\n const nsDay = useNamespace('calendar-day')\n\n const now = dayjs().locale(lang.value)\n // todo better way to get Day.js locale object\n const firstDayOfWeek: number = (now as any).$locale().weekStart || 0\n\n const isInRange = computed(() => !!props.range && !!props.range.length)\n\n const rows = computed(() => {\n let days: Cell[] = []\n if (isInRange.value) {\n const [start, end] = props.range!\n const currentMonthRange: Cell[] = rangeArr(\n end.date() - start.date() + 1\n ).map((index) => ({\n text: start.date() + index,\n type: 'current',\n }))\n\n let remaining = currentMonthRange.length % 7\n remaining = remaining === 0 ? 0 : 7 - remaining\n const nextMonthRange: Cell[] = rangeArr(remaining).map((_, index) => ({\n text: index + 1,\n type: 'next',\n }))\n days = currentMonthRange.concat(nextMonthRange)\n } else {\n const firstDay = props.date.startOf('month').day() || 7\n const prevMonthDays: Cell[] = getPrevMonthLastDays(\n props.date,\n firstDay - firstDayOfWeek\n ).map((day) => ({\n text: day,\n type: 'prev',\n }))\n const currentMonthDays: Cell[] = getMonthDays(props.date).map(\n (day) => ({\n text: day,\n type: 'current',\n })\n )\n days = [...prevMonthDays, ...currentMonthDays]\n const nextMonthDays: Cell[] = rangeArr(42 - days.length).map(\n (_, index) => ({\n text: index + 1,\n type: 'next',\n })\n )\n days = days.concat(nextMonthDays)\n }\n return toNestedArr(days)\n })\n\n const weekDays = computed(() => {\n const start = firstDayOfWeek\n if (start === 0) {\n return WEEK_DAYS.map((_) => t(`el.datepicker.weeks.${_}`))\n } else {\n return WEEK_DAYS.slice(start)\n .concat(WEEK_DAYS.slice(0, start))\n .map((_) => t(`el.datepicker.weeks.${_}`))\n }\n })\n\n const getFormattedDate = (day: number, type: CellType): Dayjs => {\n switch (type) {\n case 'prev':\n return props.date.startOf('month').subtract(1, 'month').date(day)\n case 'next':\n return props.date.startOf('month').add(1, 'month').date(day)\n case 'current':\n return props.date.date(day)\n }\n }\n\n const getCellClass = ({ text, type }: Cell) => {\n const classes: string[] = [type]\n if (type === 'current') {\n const date = getFormattedDate(text, type)\n if (date.isSame(props.selectedDay, 'day')) {\n classes.push('is-selected')\n }\n if (date.isSame(now, 'day')) {\n classes.push('is-today')\n }\n }\n return classes\n }\n\n const handlePickDay = ({ text, type }: Cell) => {\n const date = getFormattedDate(text, type)\n emit('pick', date)\n }\n\n const getSlotData = ({ text, type }: Cell) => {\n const day = getFormattedDate(text, type)\n return {\n isSelected: day.isSame(props.selectedDay),\n type: `${type}-month`,\n day: day.format('YYYY-MM-DD'),\n date: day.toDate(),\n }\n }\n\n return {\n isInRange,\n weekDays,\n rows,\n getCellClass,\n handlePickDay,\n getSlotData,\n\n nsTable,\n nsDay,\n }\n },\n})\n</script>\n"],"names":["dayjs","localeData","rangeArr","defineComponent","dateTableProps","dateTableEmits","useLocale","useNamespace","computed","_openBlock","_Fragment","_renderList","_createCommentVNode","_createElementBlock","_normalizeClass"],"mappings":"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"}
1
+ {"version":3,"file":"date-table2.js","sources":["../../../../../../packages/components/calendar/src/date-table.vue"],"sourcesContent":["<template>\n <table\n :class=\"[nsTable.b(), nsTable.is('range', isInRange)]\"\n cellspacing=\"0\"\n cellpadding=\"0\"\n >\n <thead v-if=\"!hideHeader\">\n <th v-for=\"day in weekDays\" :key=\"day\">{{ day }}</th>\n </thead>\n\n <tbody>\n <tr\n v-for=\"(row, index) in rows\"\n :key=\"index\"\n :class=\"{\n [nsTable.e('row')]: true,\n [nsTable.em('row', 'hide-border')]: index === 0 && hideHeader,\n }\"\n >\n <td\n v-for=\"(cell, key) in row\"\n :key=\"key\"\n :class=\"getCellClass(cell)\"\n @click=\"handlePickDay(cell)\"\n >\n <div :class=\"nsDay.b()\">\n <slot name=\"dateCell\" :data=\"getSlotData(cell)\">\n <span>{{ cell.text }}</span>\n </slot>\n </div>\n </td>\n </tr>\n </tbody>\n </table>\n</template>\n\n<script lang=\"ts\">\nimport { computed, defineComponent } from 'vue'\nimport dayjs from 'dayjs'\nimport localeData from 'dayjs/plugin/localeData'\nimport { useLocale, useNamespace } from '@element-plus/hooks'\nimport { rangeArr } from '@element-plus/components/time-picker'\nimport { dateTableProps, dateTableEmits } from './date-table'\nimport type { Dayjs } from 'dayjs'\ndayjs.extend(localeData)\n\ntype CellType = 'next' | 'prev' | 'current'\ninterface Cell {\n text: number\n type: CellType\n}\n\nconst WEEK_DAYS = ['sun', 'mon', 'tue', 'wed', 'thu', 'fri', 'sat'] as const\n\nexport const getPrevMonthLastDays = (date: Dayjs, count: number) => {\n const lastDay = date.subtract(1, 'month').endOf('month').date()\n return rangeArr(count).map((_, index) => lastDay - (count - index - 1))\n}\n\nexport const getMonthDays = (date: Dayjs) => {\n const days = date.daysInMonth()\n return rangeArr(days).map((_, index) => index + 1)\n}\n\nconst toNestedArr = (days: Cell[]) =>\n rangeArr(days.length / 7).map((index) => {\n const start = index * 7\n return days.slice(start, start + 7)\n })\n\nexport default defineComponent({\n props: dateTableProps,\n emits: dateTableEmits,\n\n setup(props, { emit }) {\n const { t, lang } = useLocale()\n const nsTable = useNamespace('calendar-table')\n const nsDay = useNamespace('calendar-day')\n\n const now = dayjs().locale(lang.value)\n // todo better way to get Day.js locale object\n const firstDayOfWeek: number = (now as any).$locale().weekStart || 0\n\n const isInRange = computed(() => !!props.range && !!props.range.length)\n\n const rows = computed(() => {\n let days: Cell[] = []\n if (isInRange.value) {\n const [start, end] = props.range!\n const currentMonthRange: Cell[] = rangeArr(\n end.date() - start.date() + 1\n ).map((index) => ({\n text: start.date() + index,\n type: 'current',\n }))\n\n let remaining = currentMonthRange.length % 7\n remaining = remaining === 0 ? 0 : 7 - remaining\n const nextMonthRange: Cell[] = rangeArr(remaining).map((_, index) => ({\n text: index + 1,\n type: 'next',\n }))\n days = currentMonthRange.concat(nextMonthRange)\n } else {\n const firstDay = props.date.startOf('month').day() || 7\n const prevMonthDays: Cell[] = getPrevMonthLastDays(\n props.date,\n firstDay - firstDayOfWeek\n ).map((day) => ({\n text: day,\n type: 'prev',\n }))\n const currentMonthDays: Cell[] = getMonthDays(props.date).map(\n (day) => ({\n text: day,\n type: 'current',\n })\n )\n days = [...prevMonthDays, ...currentMonthDays]\n const nextMonthDays: Cell[] = rangeArr(42 - days.length).map(\n (_, index) => ({\n text: index + 1,\n type: 'next',\n })\n )\n days = days.concat(nextMonthDays)\n }\n return toNestedArr(days)\n })\n\n const weekDays = computed(() => {\n const start = firstDayOfWeek\n if (start === 0) {\n return WEEK_DAYS.map((_) => t(`el.datepicker.weeks.${_}`))\n } else {\n return WEEK_DAYS.slice(start)\n .concat(WEEK_DAYS.slice(0, start))\n .map((_) => t(`el.datepicker.weeks.${_}`))\n }\n })\n\n const getFormattedDate = (day: number, type: CellType): Dayjs => {\n switch (type) {\n case 'prev':\n return props.date.startOf('month').subtract(1, 'month').date(day)\n case 'next':\n return props.date.startOf('month').add(1, 'month').date(day)\n case 'current':\n return props.date.date(day)\n }\n }\n\n const getCellClass = ({ text, type }: Cell) => {\n const classes: string[] = [type]\n if (type === 'current') {\n const date = getFormattedDate(text, type)\n if (date.isSame(props.selectedDay, 'day')) {\n classes.push('is-selected')\n }\n if (date.isSame(now, 'day')) {\n classes.push('is-today')\n }\n }\n return classes\n }\n\n const handlePickDay = ({ text, type }: Cell) => {\n const date = getFormattedDate(text, type)\n emit('pick', date)\n }\n\n const getSlotData = ({ text, type }: Cell) => {\n const day = getFormattedDate(text, type)\n return {\n isSelected: day.isSame(props.selectedDay),\n type: `${type}-month`,\n day: day.format('YYYY-MM-DD'),\n date: day.toDate(),\n }\n }\n\n return {\n isInRange,\n weekDays,\n rows,\n getCellClass,\n handlePickDay,\n getSlotData,\n\n nsTable,\n nsDay,\n }\n },\n})\n</script>\n"],"names":["dayjs","localeData","rangeArr","defineComponent","dateTableProps","dateTableEmits","useLocale","useNamespace","computed","_createElementBlock","_normalizeClass","_Fragment","_toDisplayString","_createElementVNode","_renderSlot"],"mappings":"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"}
@@ -5,40 +5,38 @@ Object.defineProperty(exports, '__esModule', { value: true });
5
5
  var vue = require('vue');
6
6
  require('../../../hooks/index.js');
7
7
  var card = require('./card.js');
8
- var pluginVue_exportHelper = require('../../../_virtual/plugin-vue_export-helper.js');
9
8
  var index = require('../../../hooks/use-namespace/index.js');
10
9
 
11
- const _sfc_main = vue.defineComponent({
12
- name: "ElCard",
10
+ const __default__ = {
11
+ name: "ElCard"
12
+ };
13
+ const _sfc_main = /* @__PURE__ */ vue.defineComponent({
14
+ ...__default__,
13
15
  props: card.cardProps,
14
- setup() {
16
+ setup(__props) {
15
17
  const ns = index.useNamespace("card");
16
- return {
17
- ns
18
+ return (_ctx, _cache) => {
19
+ return vue.openBlock(), vue.createElementBlock("div", {
20
+ class: vue.normalizeClass([vue.unref(ns).b(), vue.unref(ns).is(`${_ctx.shadow}-shadow`)])
21
+ }, [
22
+ _ctx.$slots.header || _ctx.header ? (vue.openBlock(), vue.createElementBlock("div", {
23
+ key: 0,
24
+ class: vue.normalizeClass(vue.unref(ns).e("header"))
25
+ }, [
26
+ vue.renderSlot(_ctx.$slots, "header", {}, () => [
27
+ vue.createTextVNode(vue.toDisplayString(_ctx.header), 1)
28
+ ])
29
+ ], 2)) : vue.createCommentVNode("v-if", true),
30
+ vue.createElementVNode("div", {
31
+ class: vue.normalizeClass(vue.unref(ns).e("body")),
32
+ style: vue.normalizeStyle(_ctx.bodyStyle)
33
+ }, [
34
+ vue.renderSlot(_ctx.$slots, "default")
35
+ ], 6)
36
+ ], 2);
18
37
  };
19
38
  }
20
39
  });
21
- function _sfc_render(_ctx, _cache, $props, $setup, $data, $options) {
22
- return vue.openBlock(), vue.createElementBlock("div", {
23
- class: vue.normalizeClass([_ctx.ns.b(), _ctx.ns.is(`${_ctx.shadow}-shadow`)])
24
- }, [
25
- _ctx.$slots.header || _ctx.header ? (vue.openBlock(), vue.createElementBlock("div", {
26
- key: 0,
27
- class: vue.normalizeClass(_ctx.ns.e("header"))
28
- }, [
29
- vue.renderSlot(_ctx.$slots, "header", {}, () => [
30
- vue.createTextVNode(vue.toDisplayString(_ctx.header), 1)
31
- ])
32
- ], 2)) : vue.createCommentVNode("v-if", true),
33
- vue.createElementVNode("div", {
34
- class: vue.normalizeClass(_ctx.ns.e("body")),
35
- style: vue.normalizeStyle(_ctx.bodyStyle)
36
- }, [
37
- vue.renderSlot(_ctx.$slots, "default")
38
- ], 6)
39
- ], 2);
40
- }
41
- var Card = /* @__PURE__ */ pluginVue_exportHelper["default"](_sfc_main, [["render", _sfc_render]]);
42
40
 
43
- exports["default"] = Card;
41
+ exports["default"] = _sfc_main;
44
42
  //# sourceMappingURL=card2.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"card2.js","sources":["../../../../../../packages/components/card/src/card.vue"],"sourcesContent":["<template>\n <div :class=\"[ns.b(), ns.is(`${shadow}-shadow`)]\">\n <div v-if=\"$slots.header || header\" :class=\"ns.e('header')\">\n <slot name=\"header\">{{ header }}</slot>\n </div>\n <div :class=\"ns.e('body')\" :style=\"bodyStyle\">\n <slot></slot>\n </div>\n </div>\n</template>\n<script lang=\"ts\">\nimport { defineComponent } from 'vue'\nimport { useNamespace } from '@element-plus/hooks'\nimport { cardProps } from './card'\n\nexport default defineComponent({\n name: 'ElCard',\n props: cardProps,\n setup() {\n const ns = useNamespace('card')\n\n return {\n ns,\n }\n },\n})\n</script>\n"],"names":["defineComponent","cardProps","useNamespace","_openBlock","_createCommentVNode","_normalizeClass"],"mappings":";;;;;;;;;;AAeA,MAAK,YAAaA,oBAAa;AAAA,EAC7B,MAAM;AAAA,EACN,OAAOC;AAAA,EACP,QAAQ;AACN,UAAM,KAAKC,mBAAa;AAExB,WAAO;AAAA,MACL;AAAA;AAAA;AAAA;2BArBJ,wBAOM;SAPKC,wCAAW,OAAK;AAAA;KACd;AAAA,0BAAX;MAAqC,KAAK;AAAA;OACxC;AAAA,gDAAuB;AAAA;;aAEzBC,uBAEM;AAAA,2BAFK,OAAE;AAAA,MAAe,OAAKC,mBAAE;AAAA;OACjC;AAAA;;;;;;;;"}
1
+ {"version":3,"file":"card2.js","sources":["../../../../../../packages/components/card/src/card.vue"],"sourcesContent":["<template>\n <div :class=\"[ns.b(), ns.is(`${shadow}-shadow`)]\">\n <div v-if=\"$slots.header || header\" :class=\"ns.e('header')\">\n <slot name=\"header\">{{ header }}</slot>\n </div>\n <div :class=\"ns.e('body')\" :style=\"bodyStyle\">\n <slot></slot>\n </div>\n </div>\n</template>\n<script lang=\"ts\" setup>\nimport { useNamespace } from '@element-plus/hooks'\nimport { cardProps } from './card'\n\ndefineOptions({\n name: 'ElCard',\n})\n\ndefineProps(cardProps)\n\nconst ns = useNamespace('card')\n</script>\n"],"names":[],"mappings":";;;;;;;;;;;;;;;;AAoBA;;;;;;;;;;;;;;;;;;;;;;;;;;"}
@@ -1 +1 @@
1
- {"version":3,"file":"item.js","sources":["../../../../../../packages/components/carousel/src/item.vue"],"sourcesContent":["<template>\n <div\n v-show=\"data.ready\"\n :class=\"[\n ns.e('item'),\n ns.is('active', data.active),\n ns.is('in-stage', data.inStage),\n ns.is('hover', data.hover),\n ns.is('animating', data.animating),\n { [ns.em('item', 'card')]: type === 'card' },\n ]\"\n :style=\"itemStyle\"\n @click=\"handleItemClick\"\n >\n <div\n v-if=\"type === 'card'\"\n v-show=\"!data.active\"\n :class=\"ns.e('mask')\"\n ></div>\n <slot></slot>\n </div>\n</template>\n<script lang=\"ts\">\nimport {\n defineComponent,\n reactive,\n onMounted,\n inject,\n computed,\n toRefs,\n getCurrentInstance,\n onUnmounted,\n} from 'vue'\nimport { debugWarn } from '@element-plus/utils'\nimport { useNamespace } from '@element-plus/hooks'\nimport type { CSSProperties } from 'vue'\nimport type { InjectCarouselScope, ICarouselItemProps } from './carousel'\n\nconst CARD_SCALE = 0.83\nexport default defineComponent({\n name: 'ElCarouselItem',\n props: {\n name: { type: String, default: '' },\n label: {\n type: [String, Number],\n default: '',\n },\n },\n setup(props: ICarouselItemProps) {\n const ns = useNamespace('carousel')\n // instance\n const instance = getCurrentInstance()\n\n // data\n const data = reactive({\n hover: false,\n translate: 0,\n scale: 1,\n active: false,\n ready: false,\n inStage: false,\n animating: false,\n })\n\n // inject\n const injectCarouselScope: InjectCarouselScope = inject(\n 'injectCarouselScope'\n )\n\n // computed\n const parentDirection = computed(() => {\n return injectCarouselScope.direction\n })\n\n const itemStyle = computed(() => {\n const translateType =\n parentDirection.value === 'vertical' ? 'translateY' : 'translateX'\n const value = `${translateType}(${data.translate}px) scale(${data.scale})`\n const style: CSSProperties = {\n transform: value,\n }\n return style\n })\n\n // methods\n\n function processIndex(index, activeIndex, length) {\n if (activeIndex === 0 && index === length - 1) {\n return -1\n } else if (activeIndex === length - 1 && index === 0) {\n return length\n } else if (index < activeIndex - 1 && activeIndex - index >= length / 2) {\n return length + 1\n } else if (index > activeIndex + 1 && index - activeIndex >= length / 2) {\n return -2\n }\n return index\n }\n\n function calcCardTranslate(index, activeIndex) {\n const parentWidth = injectCarouselScope.root.value?.offsetWidth || 0\n if (data.inStage) {\n return (\n (parentWidth * ((2 - CARD_SCALE) * (index - activeIndex) + 1)) / 4\n )\n } else if (index < activeIndex) {\n return (-(1 + CARD_SCALE) * parentWidth) / 4\n } else {\n return ((3 + CARD_SCALE) * parentWidth) / 4\n }\n }\n\n function calcTranslate(index, activeIndex, isVertical) {\n const distance =\n (isVertical\n ? injectCarouselScope.root.value?.offsetHeight\n : injectCarouselScope.root.value?.offsetWidth) || 0\n return distance * (index - activeIndex)\n }\n\n const translateItem = (\n index: number,\n activeIndex: number,\n oldIndex: number\n ) => {\n const parentType = injectCarouselScope.type\n const length = injectCarouselScope.items.value.length\n if (parentType !== 'card' && oldIndex !== undefined) {\n data.animating = index === activeIndex || index === oldIndex\n }\n if (index !== activeIndex && length > 2 && injectCarouselScope.loop) {\n index = processIndex(index, activeIndex, length)\n }\n if (parentType === 'card') {\n if (parentDirection.value === 'vertical') {\n debugWarn(\n 'Carousel',\n 'vertical direction is not supported in card mode'\n )\n }\n data.inStage = Math.round(Math.abs(index - activeIndex)) <= 1\n data.active = index === activeIndex\n data.translate = calcCardTranslate(index, activeIndex)\n data.scale = data.active ? 1 : CARD_SCALE\n } else {\n data.active = index === activeIndex\n const isVertical = parentDirection.value === 'vertical'\n data.translate = calcTranslate(index, activeIndex, isVertical)\n }\n data.ready = true\n }\n\n function handleItemClick() {\n if (injectCarouselScope && injectCarouselScope.type === 'card') {\n const index = injectCarouselScope.items.value\n .map((d) => d.uid)\n .indexOf(instance.uid)\n injectCarouselScope.setActiveItem(index)\n }\n }\n\n // lifecycle\n onMounted(() => {\n if (injectCarouselScope.addItem) {\n injectCarouselScope.addItem({\n uid: instance.uid,\n ...props,\n ...toRefs(data),\n translateItem,\n })\n }\n })\n\n onUnmounted(() => {\n if (injectCarouselScope.removeItem) {\n injectCarouselScope.removeItem(instance.uid)\n }\n })\n\n return {\n data,\n itemStyle,\n translateItem,\n type: injectCarouselScope.type,\n handleItemClick,\n ns,\n }\n },\n})\n</script>\n"],"names":["defineComponent","useNamespace","getCurrentInstance","reactive","inject","computed"],"mappings":";;;;;;;;;;;AAsCA,MAAM,aAAa;AACnB,MAAK,YAAaA,oBAAa;AAAA,EAC7B,MAAM;AAAA,EACN,OAAO;AAAA,IACL,MAAM,EAAE,MAAM,QAAQ,SAAS;AAAA,IAC/B,OAAO;AAAA,MACL,MAAM,CAAC,QAAQ;AAAA,MACf,SAAS;AAAA;AAAA;AAAA,EAGb,MAAM,OAA2B;AAC/B,UAAM,KAAKC,mBAAa;AAExB,UAAM,WAAWC;AAGjB,UAAM,OAAOC,aAAS;AAAA,MACpB,OAAO;AAAA,MACP,WAAW;AAAA,MACX,OAAO;AAAA,MACP,QAAQ;AAAA,MACR,OAAO;AAAA,MACP,SAAS;AAAA,MACT,WAAW;AAAA;AAIb,UAAM,sBAA2CC,WAC/C;AAIF,UAAM,kBAAkBC,aAAS,MAAM;AACrC,aAAO,oBAAoB;AAAA;AAG7B,UAAM,YAAYA,aAAS,MAAM;AAC/B,YAAM,gBACJ,gBAAgB,UAAU,aAAa,eAAe;AACxD,YAAM,QAAQ,GAAG,iBAAiB,KAAK,sBAAsB,KAAK;AAClE,YAAM,QAAuB;AAAA,QAC3B,WAAW;AAAA;AAEb,aAAO;AAAA;AAKT,0BAAsB,OAAO,aAAa,QAAQ;AAChD,UAAI,gBAAgB,KAAK,UAAU,SAAS,GAAG;AAC7C,eAAO;AAAA,iBACE,gBAAgB,SAAS,KAAK,UAAU,GAAG;AACpD,eAAO;AAAA,iBACE,QAAQ,cAAc,KAAK,cAAc,SAAS,SAAS,GAAG;AACvE,eAAO,SAAS;AAAA,iBACP,QAAQ,cAAc,KAAK,QAAQ,eAAe,SAAS,GAAG;AACvE,eAAO;AAAA;AAET,aAAO;AAAA;AAGT,+BAA2B,OAAO,aAAa;AAC7C,YAAM;AACN;AACE,eACG;AAAgE;AAGnE;AAA2C;AAE3C;AAA0C;AAAA;AAI9C;AACE,yDAE0B;AAE1B;AAA2B;AAG7B;AAKE;AACA,+CAAyC;AACzC,yBAAmB;AACjB,4DAAoD;AAAA;AAEtD,mCAA6B,kCAAkC;AAC7D;AAAyC;AAE3C;AACE;AACE,oBACE;AACA;AAGJ;AACA;AACA,aAAK,8BAA8B;AACnC,aAAK;AAA0B,aAC1B;AACL,aAAK,mBAAmB;AACxB;AACA,aAAK;AAA8C;AAErD;AAAa;AAGf;AACE;AACE;AAGA;AAAkC;AAAA;AAKtC;AACE;AACE;AAA4B,UAC1B;AAAc;AACX,aACA;AAAO,UACV;AAAA;AAAA;AAAA;AAKN;AACE;AACE;AAAwC;AAAA;AAI5C;AAAO,MACL;AAAA;AACA,MACA;AAAA,MACA;AAA0B,MAC1B;AAAA,MACA;AAAA;AAAA;AAAA;;;AAtLI,2BAAc;AAAA;AAAqB;AAAiD,MAAqB,QAAG;AAAiB,MAAc,QAAG,GAAE,cAAc;AAAA,WAA0B,MAAG;AAAqB;;;AAShN;;AAGE;;AAEA;;AADQ;;AAGH;;AAjBK;;;;;;;;;"}
1
+ {"version":3,"file":"item.js","sources":["../../../../../../packages/components/carousel/src/item.vue"],"sourcesContent":["<template>\n <div\n v-show=\"data.ready\"\n :class=\"[\n ns.e('item'),\n ns.is('active', data.active),\n ns.is('in-stage', data.inStage),\n ns.is('hover', data.hover),\n ns.is('animating', data.animating),\n { [ns.em('item', 'card')]: type === 'card' },\n ]\"\n :style=\"itemStyle\"\n @click=\"handleItemClick\"\n >\n <div\n v-if=\"type === 'card'\"\n v-show=\"!data.active\"\n :class=\"ns.e('mask')\"\n ></div>\n <slot></slot>\n </div>\n</template>\n<script lang=\"ts\">\nimport {\n defineComponent,\n reactive,\n onMounted,\n inject,\n computed,\n toRefs,\n getCurrentInstance,\n onUnmounted,\n} from 'vue'\nimport { debugWarn } from '@element-plus/utils'\nimport { useNamespace } from '@element-plus/hooks'\nimport type { CSSProperties } from 'vue'\nimport type { InjectCarouselScope, ICarouselItemProps } from './carousel'\n\nconst CARD_SCALE = 0.83\nexport default defineComponent({\n name: 'ElCarouselItem',\n props: {\n name: { type: String, default: '' },\n label: {\n type: [String, Number],\n default: '',\n },\n },\n setup(props: ICarouselItemProps) {\n const ns = useNamespace('carousel')\n // instance\n const instance = getCurrentInstance()\n\n // data\n const data = reactive({\n hover: false,\n translate: 0,\n scale: 1,\n active: false,\n ready: false,\n inStage: false,\n animating: false,\n })\n\n // inject\n const injectCarouselScope: InjectCarouselScope = inject(\n 'injectCarouselScope'\n )\n\n // computed\n const parentDirection = computed(() => {\n return injectCarouselScope.direction\n })\n\n const itemStyle = computed(() => {\n const translateType =\n parentDirection.value === 'vertical' ? 'translateY' : 'translateX'\n const value = `${translateType}(${data.translate}px) scale(${data.scale})`\n const style: CSSProperties = {\n transform: value,\n }\n return style\n })\n\n // methods\n\n function processIndex(index, activeIndex, length) {\n if (activeIndex === 0 && index === length - 1) {\n return -1\n } else if (activeIndex === length - 1 && index === 0) {\n return length\n } else if (index < activeIndex - 1 && activeIndex - index >= length / 2) {\n return length + 1\n } else if (index > activeIndex + 1 && index - activeIndex >= length / 2) {\n return -2\n }\n return index\n }\n\n function calcCardTranslate(index, activeIndex) {\n const parentWidth = injectCarouselScope.root.value?.offsetWidth || 0\n if (data.inStage) {\n return (\n (parentWidth * ((2 - CARD_SCALE) * (index - activeIndex) + 1)) / 4\n )\n } else if (index < activeIndex) {\n return (-(1 + CARD_SCALE) * parentWidth) / 4\n } else {\n return ((3 + CARD_SCALE) * parentWidth) / 4\n }\n }\n\n function calcTranslate(index, activeIndex, isVertical) {\n const distance =\n (isVertical\n ? injectCarouselScope.root.value?.offsetHeight\n : injectCarouselScope.root.value?.offsetWidth) || 0\n return distance * (index - activeIndex)\n }\n\n const translateItem = (\n index: number,\n activeIndex: number,\n oldIndex: number\n ) => {\n const parentType = injectCarouselScope.type\n const length = injectCarouselScope.items.value.length\n if (parentType !== 'card' && oldIndex !== undefined) {\n data.animating = index === activeIndex || index === oldIndex\n }\n if (index !== activeIndex && length > 2 && injectCarouselScope.loop) {\n index = processIndex(index, activeIndex, length)\n }\n if (parentType === 'card') {\n if (parentDirection.value === 'vertical') {\n debugWarn(\n 'Carousel',\n 'vertical direction is not supported in card mode'\n )\n }\n data.inStage = Math.round(Math.abs(index - activeIndex)) <= 1\n data.active = index === activeIndex\n data.translate = calcCardTranslate(index, activeIndex)\n data.scale = data.active ? 1 : CARD_SCALE\n } else {\n data.active = index === activeIndex\n const isVertical = parentDirection.value === 'vertical'\n data.translate = calcTranslate(index, activeIndex, isVertical)\n }\n data.ready = true\n }\n\n function handleItemClick() {\n if (injectCarouselScope && injectCarouselScope.type === 'card') {\n const index = injectCarouselScope.items.value\n .map((d) => d.uid)\n .indexOf(instance.uid)\n injectCarouselScope.setActiveItem(index)\n }\n }\n\n // lifecycle\n onMounted(() => {\n if (injectCarouselScope.addItem) {\n injectCarouselScope.addItem({\n uid: instance.uid,\n ...props,\n ...toRefs(data),\n translateItem,\n })\n }\n })\n\n onUnmounted(() => {\n if (injectCarouselScope.removeItem) {\n injectCarouselScope.removeItem(instance.uid)\n }\n })\n\n return {\n data,\n itemStyle,\n translateItem,\n type: injectCarouselScope.type,\n handleItemClick,\n ns,\n }\n },\n})\n</script>\n"],"names":["defineComponent","useNamespace","getCurrentInstance","reactive","inject","computed"],"mappings":";;;;;;;;;;;AAsCA,MAAM,aAAa;AACnB,MAAK,YAAaA,oBAAa;AAAA,EAC7B,MAAM;AAAA,EACN,OAAO;AAAA,IACL,MAAM,EAAE,MAAM,QAAQ,SAAS;AAAA,IAC/B,OAAO;AAAA,MACL,MAAM,CAAC,QAAQ;AAAA,MACf,SAAS;AAAA;AAAA;AAAA,EAGb,MAAM,OAA2B;AAC/B,UAAM,KAAKC,mBAAa;AAExB,UAAM,WAAWC;AAGjB,UAAM,OAAOC,aAAS;AAAA,MACpB,OAAO;AAAA,MACP,WAAW;AAAA,MACX,OAAO;AAAA,MACP,QAAQ;AAAA,MACR,OAAO;AAAA,MACP,SAAS;AAAA,MACT,WAAW;AAAA;AAIb,UAAM,sBAA2CC,WAC/C;AAIF,UAAM,kBAAkBC,aAAS,MAAM;AACrC,aAAO,oBAAoB;AAAA;AAG7B,UAAM,YAAYA,aAAS,MAAM;AAC/B,YAAM,gBACJ,gBAAgB,UAAU,aAAa,eAAe;AACxD,YAAM,QAAQ,GAAG,iBAAiB,KAAK,sBAAsB,KAAK;AAClE,YAAM,QAAuB;AAAA,QAC3B,WAAW;AAAA;AAEb,aAAO;AAAA;AAKT,0BAAsB,OAAO,aAAa,QAAQ;AAChD,UAAI,gBAAgB,KAAK,UAAU,SAAS,GAAG;AAC7C,eAAO;AAAA,iBACE,gBAAgB,SAAS,KAAK,UAAU,GAAG;AACpD,eAAO;AAAA,iBACE,QAAQ,cAAc,KAAK,cAAc,SAAS,SAAS,GAAG;AACvE,eAAO,SAAS;AAAA,iBACP,QAAQ,cAAc,KAAK,QAAQ,eAAe,SAAS,GAAG;AACvE,eAAO;AAAA;AAET,aAAO;AAAA;AAGT,+BAA2B,OAAO,aAAa;AAC7C,YAAM;AACN;AACE,eACG;AAAgE;AAGnE;AAA2C;AAE3C;AAA0C;AAAA;AAI9C;AACE,yDAE0B;AAE1B;AAA2B;AAG7B;AAKE;AACA,+CAAyC;AACzC,yBAAmB;AACjB,4DAAoD;AAAA;AAEtD,mCAA6B,kCAAkC;AAC7D;AAAyC;AAE3C;AACE;AACE,oBACE;AACA;AAGJ;AACA;AACA,aAAK,8BAA8B;AACnC,aAAK;AAA0B,aAC1B;AACL,aAAK,mBAAmB;AACxB;AACA,aAAK;AAA8C;AAErD;AAAa;AAGf;AACE;AACE;AAGA;AAAkC;AAAA;AAKtC;AACE;AACE;AAA4B,UAC1B;AAAc;AACX,aACA;AAAO,UACV;AAAA;AAAA;AAAA;AAKN;AACE;AACE;AAAwC;AAAA;AAI5C;AAAO,MACL;AAAA;AACA,MACA;AAAA,MACA;AAA0B,MAC1B;AAAA,MACA;AAAA;AAAA;AAAA;;;AArKE;AAjBE;AAAc,8BAAgC;AAAK,MAAe,QAAG;AAAoB,MAAgB,QAAG,GAAE,mBAAe;AAAA,MAAc,QAAG,GAAE;AAAmB,iBAAwB;AAAyB;AAAA;AAQlN;AACA;IAGA;AAGD;aADC;AAAM;;AADE;mBAGH;AAAA;;AAjBA;AAAA;;;;;;;"}
@@ -1 +1 @@
1
- {"version":3,"file":"main.js","sources":["../../../../../../packages/components/carousel/src/main.vue"],"sourcesContent":["<template>\n <div\n ref=\"root\"\n :class=\"carouselClasses\"\n @mouseenter.stop=\"handleMouseEnter\"\n @mouseleave.stop=\"handleMouseLeave\"\n >\n <div :class=\"ns.e('container')\" :style=\"{ height: height }\">\n <transition v-if=\"arrowDisplay\" name=\"carousel-arrow-left\">\n <button\n v-show=\"\n (arrow === 'always' || data.hover) &&\n (props.loop || data.activeIndex > 0)\n \"\n type=\"button\"\n :class=\"[ns.e('arrow'), ns.em('arrow', 'left')]\"\n @mouseenter=\"handleButtonEnter('left')\"\n @mouseleave=\"handleButtonLeave\"\n @click.stop=\"throttledArrowClick(data.activeIndex - 1)\"\n >\n <el-icon>\n <arrow-left />\n </el-icon>\n </button>\n </transition>\n <transition v-if=\"arrowDisplay\" name=\"carousel-arrow-right\">\n <button\n v-show=\"\n (arrow === 'always' || data.hover) &&\n (props.loop || data.activeIndex < items.length - 1)\n \"\n type=\"button\"\n :class=\"[ns.e('arrow'), ns.em('arrow', 'right')]\"\n @mouseenter=\"handleButtonEnter('right')\"\n @mouseleave=\"handleButtonLeave\"\n @click.stop=\"throttledArrowClick(data.activeIndex + 1)\"\n >\n <el-icon>\n <arrow-right />\n </el-icon>\n </button>\n </transition>\n <slot></slot>\n </div>\n <ul v-if=\"indicatorPosition !== 'none'\" :class=\"indicatorsClasses\">\n <li\n v-for=\"(item, index) in items\"\n :key=\"index\"\n :class=\"[\n ns.e('indicator'),\n ns.em('indicator', direction),\n ns.is('active', index === data.activeIndex),\n ]\"\n @mouseenter=\"throttledIndicatorHover(index)\"\n @click.stop=\"handleIndicatorClick(index)\"\n >\n <button :class=\"ns.e('button')\">\n <span v-if=\"hasLabel\">{{ item.label }}</span>\n </button>\n </li>\n </ul>\n </div>\n</template>\n\n<script lang=\"ts\">\nimport {\n defineComponent,\n reactive,\n computed,\n ref,\n provide,\n onMounted,\n onBeforeUnmount,\n watch,\n nextTick,\n} from 'vue'\nimport { throttle } from 'lodash-unified'\nimport {\n addResizeListener,\n removeResizeListener,\n debugWarn,\n} from '@element-plus/utils'\nimport { ElIcon } from '@element-plus/components/icon'\nimport { ArrowLeft, ArrowRight } from '@element-plus/icons-vue'\nimport { useNamespace } from '@element-plus/hooks'\n\nimport type {\n ICarouselProps,\n CarouselItem,\n InjectCarouselScope,\n} from './carousel'\n\nexport default defineComponent({\n name: 'ElCarousel',\n components: {\n ElIcon,\n ArrowLeft,\n ArrowRight,\n },\n props: {\n initialIndex: {\n type: Number,\n default: 0,\n },\n height: { type: String, default: '' },\n trigger: {\n type: String,\n default: 'hover',\n },\n autoplay: {\n type: Boolean,\n default: true,\n },\n interval: {\n type: Number,\n default: 3000,\n },\n indicatorPosition: { type: String, default: '' },\n indicator: {\n type: Boolean,\n default: true,\n },\n arrow: {\n type: String,\n default: 'hover',\n },\n type: { type: String, default: '' },\n loop: {\n type: Boolean,\n default: true,\n },\n direction: {\n type: String,\n default: 'horizontal',\n validator(val: string) {\n return ['horizontal', 'vertical'].includes(val)\n },\n },\n pauseOnHover: {\n type: Boolean,\n default: true,\n },\n },\n emits: ['change'],\n setup(props: ICarouselProps, { emit }) {\n const ns = useNamespace('carousel')\n // data\n const data = reactive<{\n activeIndex: number\n containerWidth: number\n timer: null | ReturnType<typeof setInterval>\n hover: boolean\n }>({\n activeIndex: -1,\n containerWidth: 0,\n timer: null,\n hover: false,\n })\n\n // refs\n const root = ref(null)\n const items = ref<CarouselItem[]>([])\n\n // computed\n const arrowDisplay = computed(\n () => props.arrow !== 'never' && props.direction !== 'vertical'\n )\n\n const hasLabel = computed(() => {\n return items.value.some((item) => item.label.toString().length > 0)\n })\n\n const carouselClasses = computed(() => {\n const classes = [ns.b(), ns.m(props.direction)]\n if (props.type === 'card') {\n classes.push(ns.m('card'))\n }\n return classes\n })\n\n const indicatorsClasses = computed(() => {\n const classes = [ns.e('indicators'), ns.em('indicators', props.direction)]\n if (hasLabel.value) {\n classes.push(ns.em('indicators', 'labels'))\n }\n if (props.indicatorPosition === 'outside' || props.type === 'card') {\n classes.push(ns.em('indicators', 'outside'))\n }\n return classes\n })\n\n // methods\n const throttledArrowClick = throttle(\n (index) => {\n setActiveItem(index)\n },\n 300,\n { trailing: true }\n )\n\n const throttledIndicatorHover = throttle((index) => {\n handleIndicatorHover(index)\n }, 300)\n\n function pauseTimer() {\n if (data.timer) {\n clearInterval(data.timer)\n data.timer = null\n }\n }\n\n function startTimer() {\n if (props.interval <= 0 || !props.autoplay || data.timer) return\n data.timer = setInterval(() => playSlides(), props.interval)\n }\n\n const playSlides = () => {\n if (data.activeIndex < items.value.length - 1) {\n data.activeIndex = data.activeIndex + 1\n } else if (props.loop) {\n data.activeIndex = 0\n }\n }\n\n function setActiveItem(index) {\n if (typeof index === 'string') {\n const filteredItems = items.value.filter((item) => item.name === index)\n if (filteredItems.length > 0) {\n index = items.value.indexOf(filteredItems[0])\n }\n }\n index = Number(index)\n if (isNaN(index) || index !== Math.floor(index)) {\n debugWarn('Carousel', 'index must be an integer.')\n return\n }\n const length = items.value.length\n const oldIndex = data.activeIndex\n if (index < 0) {\n data.activeIndex = props.loop ? length - 1 : 0\n } else if (index >= length) {\n data.activeIndex = props.loop ? 0 : length - 1\n } else {\n data.activeIndex = index\n }\n if (oldIndex === data.activeIndex) {\n resetItemPosition(oldIndex)\n }\n }\n\n function resetItemPosition(oldIndex) {\n items.value.forEach((item, index) => {\n item.translateItem(index, data.activeIndex, oldIndex)\n })\n }\n\n function addItem(item) {\n items.value.push(item)\n }\n\n function removeItem(uid) {\n const index = items.value.findIndex((item) => item.uid === uid)\n if (index !== -1) {\n items.value.splice(index, 1)\n if (data.activeIndex === index) next()\n }\n }\n\n function itemInStage(item, index) {\n const length = items.value.length\n if (\n (index === length - 1 && item.inStage && items.value[0].active) ||\n (item.inStage &&\n items.value[index + 1] &&\n items.value[index + 1].active)\n ) {\n return 'left'\n } else if (\n (index === 0 && item.inStage && items.value[length - 1].active) ||\n (item.inStage &&\n items.value[index - 1] &&\n items.value[index - 1].active)\n ) {\n return 'right'\n }\n return false\n }\n\n function handleMouseEnter() {\n data.hover = true\n if (props.pauseOnHover) {\n pauseTimer()\n }\n }\n\n function handleMouseLeave() {\n data.hover = false\n startTimer()\n }\n\n function handleButtonEnter(arrow) {\n if (props.direction === 'vertical') return\n items.value.forEach((item, index) => {\n if (arrow === itemInStage(item, index)) {\n item.hover = true\n }\n })\n }\n\n function handleButtonLeave() {\n if (props.direction === 'vertical') return\n items.value.forEach((item) => {\n item.hover = false\n })\n }\n\n function handleIndicatorClick(index) {\n data.activeIndex = index\n }\n\n function handleIndicatorHover(index) {\n if (props.trigger === 'hover' && index !== data.activeIndex) {\n data.activeIndex = index\n }\n }\n\n function prev() {\n setActiveItem(data.activeIndex - 1)\n }\n\n function next() {\n setActiveItem(data.activeIndex + 1)\n }\n\n // watch\n watch(\n () => data.activeIndex,\n (current, prev) => {\n resetItemPosition(prev)\n if (prev > -1) {\n emit('change', current, prev)\n }\n }\n )\n watch(\n () => props.autoplay,\n (current) => {\n current ? startTimer() : pauseTimer()\n }\n )\n watch(\n () => props.loop,\n () => {\n setActiveItem(data.activeIndex)\n }\n )\n\n // lifecycle\n onMounted(() => {\n nextTick(() => {\n addResizeListener(root.value, resetItemPosition)\n if (\n props.initialIndex < items.value.length &&\n props.initialIndex >= 0\n ) {\n data.activeIndex = props.initialIndex\n }\n startTimer()\n })\n })\n\n onBeforeUnmount(() => {\n if (root.value) removeResizeListener(root.value, resetItemPosition)\n pauseTimer()\n })\n\n // provide\n provide<InjectCarouselScope>('injectCarouselScope', {\n root,\n direction: props.direction,\n type: props.type,\n items,\n loop: props.loop,\n addItem,\n removeItem,\n setActiveItem,\n })\n\n return {\n data,\n props,\n items,\n\n arrowDisplay,\n carouselClasses,\n indicatorsClasses,\n hasLabel,\n\n handleMouseEnter,\n handleMouseLeave,\n handleIndicatorClick,\n throttledArrowClick,\n throttledIndicatorHover,\n handleButtonEnter,\n handleButtonLeave,\n\n prev,\n next,\n setActiveItem,\n\n root,\n ns,\n }\n },\n})\n</script>\n"],"names":["defineComponent","ElIcon","ArrowLeft","ArrowRight","useNamespace","reactive","ref","computed","throttle","_openBlock","_createElementBlock","_normalizeClass","_createElementVNode","_withCtx","_createCommentVNode","_Fragment"],"mappings":";;;;;;;;;;;;;;;AA4FA,MAAK,YAAaA,oBAAa;AAAA,EAC7B,MAAM;AAAA,EACN,YAAY;AAAA,YACVC;AAAA,eACAC;AAAA,gBACAC;AAAA;AAAA,EAEF,OAAO;AAAA,IACL,cAAc;AAAA,MACZ,MAAM;AAAA,MACN,SAAS;AAAA;AAAA,IAEX,QAAQ,EAAE,MAAM,QAAQ,SAAS;AAAA,IACjC,SAAS;AAAA,MACP,MAAM;AAAA,MACN,SAAS;AAAA;AAAA,IAEX,UAAU;AAAA,MACR,MAAM;AAAA,MACN,SAAS;AAAA;AAAA,IAEX,UAAU;AAAA,MACR,MAAM;AAAA,MACN,SAAS;AAAA;AAAA,IAEX,mBAAmB,EAAE,MAAM,QAAQ,SAAS;AAAA,IAC5C,WAAW;AAAA,MACT,MAAM;AAAA,MACN,SAAS;AAAA;AAAA,IAEX,OAAO;AAAA,MACL,MAAM;AAAA,MACN,SAAS;AAAA;AAAA,IAEX,MAAM,EAAE,MAAM,QAAQ,SAAS;AAAA,IAC/B,MAAM;AAAA,MACJ,MAAM;AAAA,MACN,SAAS;AAAA;AAAA,IAEX,WAAW;AAAA,MACT,MAAM;AAAA,MACN,SAAS;AAAA,MACT,UAAU,KAAa;AACrB,eAAO,CAAC,cAAc,YAAY,SAAS;AAAA;AAAA;AAAA,IAG/C,cAAc;AAAA,MACZ,MAAM;AAAA,MACN,SAAS;AAAA;AAAA;AAAA,EAGb,OAAO,CAAC;AAAA,EACR,MAAM,OAAuB,EAAE,QAAQ;AACrC,UAAM,KAAKC,qBAAa;AAExB,UAAM,OAAOC,aAKV;AAAA,MACD,aAAa;AAAA,MACb,gBAAgB;AAAA,MAChB,OAAO;AAAA,MACP,OAAO;AAAA;AAIT,UAAM,OAAOC,QAAI;AACjB,UAAM,QAAQA,QAAoB;AAGlC,UAAM,eAAeC,aACnB,MAAM,MAAM,UAAU,WAAW,MAAM,cAAc;AAGvD,UAAM,WAAWA,aAAS,MAAM;AAC9B,aAAO,MAAM,MAAM,KAAK,CAAC,SAAS,KAAK,MAAM,WAAW,SAAS;AAAA;AAGnE,UAAM,kBAAkBA,aAAS,MAAM;AACrC,YAAM,UAAU,CAAC,GAAG,KAAK,GAAG,EAAE,MAAM;AACpC,UAAI,MAAM,SAAS,QAAQ;AACzB,gBAAQ,KAAK,GAAG,EAAE;AAAA;AAEpB,aAAO;AAAA;AAGT,UAAM,oBAAoBA,aAAS,MAAM;AACvC,YAAM,UAAU,CAAC,GAAG,EAAE,eAAe,GAAG,GAAG,cAAc,MAAM;AAC/D,UAAI,SAAS,OAAO;AAClB,gBAAQ,KAAK,GAAG,GAAG,cAAc;AAAA;AAEnC,UAAI,MAAM,sBAAsB,aAAa,MAAM,SAAS,QAAQ;AAClE,gBAAQ,KAAK,GAAG,GAAG,cAAc;AAAA;AAEnC,aAAO;AAAA;AAIT,UAAM,sBAAsBC,uBAC1B,CAAC,UAAU;AACT,oBAAc;AAAA,OAEhB,KACA,EAAE,UAAU;AAGd,UAAM,0BAA0BA,uBAAS,CAAC,UAAU;AAClD,2BAAqB;AAAA,OACpB;AAEH,0BAAsB;AACpB,UAAI,KAAK,OAAO;AACd,sBAAc,KAAK;AACnB,aAAK,QAAQ;AAAA;AAAA;AAIjB,0BAAsB;AACpB,UAAI,MAAM,YAAY,KAAK,CAAC,MAAM,YAAY,KAAK;AAAO;AAC1D,WAAK,QAAQ,YAAY,MAAM,cAAc,MAAM;AAAA;AAGrD,UAAM,aAAa,MAAM;AACvB,UAAI,KAAK,cAAc,MAAM,MAAM,SAAS,GAAG;AAC7C,aAAK,cAAc,KAAK,cAAc;AAAA,iBAC7B,MAAM,MAAM;AACrB,aAAK,cAAc;AAAA;AAAA;AAIvB,2BAAuB,OAAO;AAC5B,UAAI,OAAO,UAAU,UAAU;AAC7B,cAAM,gBAAgB,MAAM,MAAM,OAAO,CAAC,SAAS,KAAK,SAAS;AACjE,YAAI,cAAc,SAAS,GAAG;AAC5B,kBAAQ,MAAM,MAAM,QAAQ,cAAc;AAAA;AAAA;AAG9C,cAAQ,OAAO;AACf,UAAI,MAAM,UAAU,UAAU,KAAK,MAAM,QAAQ;AAC/C,wBAAU,YAAY;AACtB;AAAA;AAEF,YAAM,SAAS,MAAM,MAAM;AAC3B,YAAM,WAAW,KAAK;AACtB,UAAI,QAAQ,GAAG;AACb,aAAK,cAAc,MAAM,OAAO,SAAS,IAAI;AAAA,iBACpC,SAAS,QAAQ;AAC1B,aAAK,cAAc,MAAM,OAAO,IAAI,SAAS;AAAA,aACxC;AACL,aAAK,cAAc;AAAA;AAErB,UAAI,aAAa,KAAK,aAAa;AACjC,0BAAkB;AAAA;AAAA;AAItB,+BAA2B,UAAU;AACnC,YAAM,MAAM,QAAQ,CAAC,MAAM,UAAU;AACnC,aAAK,cAAc,OAAO,KAAK,aAAa;AAAA;AAAA;AAIhD,qBAAiB,MAAM;AACrB,YAAM,MAAM,KAAK;AAAA;AAGnB,wBAAoB,KAAK;AACvB,YAAM,QAAQ,MAAM,MAAM,UAAU,CAAC,SAAS,KAAK,QAAQ;AAC3D,UAAI,UAAU,IAAI;AAChB,cAAM,MAAM,OAAO,OAAO;AAC1B,YAAI,KAAK,gBAAgB;AAAO;AAAA;AAAA;AAIpC,yBAAqB,MAAM,OAAO;AAChC,YAAM,SAAS,MAAM,MAAM;AAC3B,UACG,UAAU,SAAS,KAAK,KAAK,WAAW,MAAM,MAAM,GAAG,UACvD,KAAK,WACJ,MAAM,MAAM,QAAQ,MACpB,MAAM,MAAM,QAAQ,GAAG,QACzB;AACA,eAAO;AAAA,iBAEN,UAAU,KAAK,KAAK,WAAW,MAAM,MAAM,SAAS,GAAG,UACvD,KAAK,WACJ,MAAM,MAAM,QAAQ,MACpB,MAAM,MAAM,QAAQ,GAAG,QACzB;AACA,eAAO;AAAA;AAET,aAAO;AAAA;AAGT,gCAA4B;AAC1B,WAAK,QAAQ;AACb,UAAI,MAAM,cAAc;AACtB;AAAA;AAAA;AAIJ,gCAA4B;AAC1B,WAAK,QAAQ;AACb;AAAA;AAGF,+BAA2B,OAAO;AAChC,UAAI,MAAM,cAAc;AAAY;AACpC,YAAM,MAAM,QAAQ,CAAC,MAAM,UAAU;AACnC,YAAI,UAAU,YAAY,MAAM,QAAQ;AACtC,eAAK,QAAQ;AAAA;AAAA;AAAA;AAKnB,iCAA6B;AAC3B,UAAI,MAAM,cAAc;AAAY;AACpC,YAAM,MAAM,QAAQ,CAAC,SAAS;AAC5B,aAAK,QAAQ;AAAA;AAAA;AAIjB,kCAA8B,OAAO;AACnC,WAAK,cAAc;AAAA;AAGrB,kCAA8B,OAAO;AACnC,UAAI,MAAM,YAAY,WAAW,UAAU,KAAK,aAAa;AAC3D,aAAK,cAAc;AAAA;AAAA;AAIvB,oBAAgB;AACd,oBAAc,KAAK,cAAc;AAAA;AAGnC,oBAAgB;AACd,oBAAc,KAAK,cAAc;AAAA;AAInC,cACE,MAAM,KAAK,aACX,CAAC,SAAS,UAAS;AACjB,wBAAkB;AAClB,UAAI,QAAO,IAAI;AACb,aAAK,UAAU,SAAS;AAAA;AAAA;AAI9B,cACE,MAAM,MAAM,UACZ,CAAC,YAAY;AACX,gBAAU,eAAe;AAAA;AAG7B,cACE,MAAM,MAAM,MACZ,MAAM;AACJ,oBAAc,KAAK;AAAA;AAKvB,kBAAU,MAAM;AACd,mBAAS,MAAM;AACb,sCAAkB,KAAK,OAAO;AAC9B,YACE,MAAM,eAAe,MAAM,MAAM,UACjC,MAAM,gBAAgB,GACtB;AACA,eAAK,cAAc,MAAM;AAAA;AAE3B;AAAA;AAAA;AAIJ,wBAAgB,MAAM;AACpB,UAAI,KAAK;AAAO,yCAAqB,KAAK,OAAO;AACjD;AAAA;AAIF,gBAA6B,uBAAuB;AAAA,MAClD;AAAA,MACA,WAAW,MAAM;AAAA,MACjB,MAAM,MAAM;AAAA,MACZ;AAAA,MACA,MAAM,MAAM;AAAA,MACZ;AAAA,MACA;AAAA,MACA;AAAA;AAGF,WAAO;AAAA,MACL;AAAA,MACA;AAAA,MACA;AAAA,MAEA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MAEA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MAEA;AAAA,MACA;AAAA,MACA;AAAA,MAEA;AAAA,MACA;AAAA;AAAA;AAAA;;;;;;;SAzZEC,iBAAMC;AAAA,IACT,KAAK;AAAA,IACL,0BAAU;AAAA,IACV,cAAU,yDAAO,yDAAgB;AAAA;KAElC;AAAA,2BAAW,OAAE;AAAA,MAAoB,OAAKC,6BAAY;AAAA;OAC9B;AAAA;QAAc,KAAI;AAAA;;6BAClC;AAAA,6BAKeC;AAAA,YACZ,MAAK;AAAA,YACL,0BAAU,6BAAE;AAAA,YACZ,cAAU,2CAAE;AAAA,YACZ,cAAK,iEAAO,KAAmB,kBAAM;AAAA;aAEtC;AAAA,gDACgB;AAAA,uBAAdC,YAAc;AAAA;;;;;YAXM;AAAA;AAAA,cAAkD,gBAAU,YAAI,KAAK;;;;;YAe7EC,uBAAY;AAAA;QAAE,KAAI;AAAA;;6BAClC;AAAA,6BAKeF;AAAA,YACZ,MAAK;AAAA,YACL,0BAAU,6BAAE;AAAA,YACZ,cAAU,2CAAE;AAAA,YACZ,cAAK,iEAAO,KAAmB,kBAAM;AAAA;aAEtC;AAAA,gDACiB;AAAA,uBAAfC,YAAe;AAAA;;;;;YAXK;AAAA;AAAA,cAAkD,gBAAU,YAAI,KAAK;;;;;YAe/FC,uBAAa;AAAA;OAEL;AAAA,+BAAV;MAAyC,KAAK;AAAA;;mDAC5CC,cAcK;eAZGN,iBAAKC;AAAA,UACV,KAAK;AAAA,UAAc,OAAIC;AAAA,YAAyB,QAAG,EAAE;AAAA,YAAoC,QAAG,GAAE,aAAW,KAAK;AAAA;;UAM9G,cAAK,yCAAO;AAAA;WAEb;AAAA,iCAAc,UAAE;AAAA;aACF;AAAA;;;;;;;;;;;"}
1
+ {"version":3,"file":"main.js","sources":["../../../../../../packages/components/carousel/src/main.vue"],"sourcesContent":["<template>\n <div\n ref=\"root\"\n :class=\"carouselClasses\"\n @mouseenter.stop=\"handleMouseEnter\"\n @mouseleave.stop=\"handleMouseLeave\"\n >\n <div :class=\"ns.e('container')\" :style=\"{ height: height }\">\n <transition v-if=\"arrowDisplay\" name=\"carousel-arrow-left\">\n <button\n v-show=\"\n (arrow === 'always' || data.hover) &&\n (props.loop || data.activeIndex > 0)\n \"\n type=\"button\"\n :class=\"[ns.e('arrow'), ns.em('arrow', 'left')]\"\n @mouseenter=\"handleButtonEnter('left')\"\n @mouseleave=\"handleButtonLeave\"\n @click.stop=\"throttledArrowClick(data.activeIndex - 1)\"\n >\n <el-icon>\n <arrow-left />\n </el-icon>\n </button>\n </transition>\n <transition v-if=\"arrowDisplay\" name=\"carousel-arrow-right\">\n <button\n v-show=\"\n (arrow === 'always' || data.hover) &&\n (props.loop || data.activeIndex < items.length - 1)\n \"\n type=\"button\"\n :class=\"[ns.e('arrow'), ns.em('arrow', 'right')]\"\n @mouseenter=\"handleButtonEnter('right')\"\n @mouseleave=\"handleButtonLeave\"\n @click.stop=\"throttledArrowClick(data.activeIndex + 1)\"\n >\n <el-icon>\n <arrow-right />\n </el-icon>\n </button>\n </transition>\n <slot></slot>\n </div>\n <ul v-if=\"indicatorPosition !== 'none'\" :class=\"indicatorsClasses\">\n <li\n v-for=\"(item, index) in items\"\n :key=\"index\"\n :class=\"[\n ns.e('indicator'),\n ns.em('indicator', direction),\n ns.is('active', index === data.activeIndex),\n ]\"\n @mouseenter=\"throttledIndicatorHover(index)\"\n @click.stop=\"handleIndicatorClick(index)\"\n >\n <button :class=\"ns.e('button')\">\n <span v-if=\"hasLabel\">{{ item.label }}</span>\n </button>\n </li>\n </ul>\n </div>\n</template>\n\n<script lang=\"ts\">\nimport {\n defineComponent,\n reactive,\n computed,\n ref,\n provide,\n onMounted,\n onBeforeUnmount,\n watch,\n nextTick,\n} from 'vue'\nimport { throttle } from 'lodash-unified'\nimport {\n addResizeListener,\n removeResizeListener,\n debugWarn,\n} from '@element-plus/utils'\nimport { ElIcon } from '@element-plus/components/icon'\nimport { ArrowLeft, ArrowRight } from '@element-plus/icons-vue'\nimport { useNamespace } from '@element-plus/hooks'\n\nimport type {\n ICarouselProps,\n CarouselItem,\n InjectCarouselScope,\n} from './carousel'\n\nexport default defineComponent({\n name: 'ElCarousel',\n components: {\n ElIcon,\n ArrowLeft,\n ArrowRight,\n },\n props: {\n initialIndex: {\n type: Number,\n default: 0,\n },\n height: { type: String, default: '' },\n trigger: {\n type: String,\n default: 'hover',\n },\n autoplay: {\n type: Boolean,\n default: true,\n },\n interval: {\n type: Number,\n default: 3000,\n },\n indicatorPosition: { type: String, default: '' },\n indicator: {\n type: Boolean,\n default: true,\n },\n arrow: {\n type: String,\n default: 'hover',\n },\n type: { type: String, default: '' },\n loop: {\n type: Boolean,\n default: true,\n },\n direction: {\n type: String,\n default: 'horizontal',\n validator(val: string) {\n return ['horizontal', 'vertical'].includes(val)\n },\n },\n pauseOnHover: {\n type: Boolean,\n default: true,\n },\n },\n emits: ['change'],\n setup(props: ICarouselProps, { emit }) {\n const ns = useNamespace('carousel')\n // data\n const data = reactive<{\n activeIndex: number\n containerWidth: number\n timer: null | ReturnType<typeof setInterval>\n hover: boolean\n }>({\n activeIndex: -1,\n containerWidth: 0,\n timer: null,\n hover: false,\n })\n\n // refs\n const root = ref(null)\n const items = ref<CarouselItem[]>([])\n\n // computed\n const arrowDisplay = computed(\n () => props.arrow !== 'never' && props.direction !== 'vertical'\n )\n\n const hasLabel = computed(() => {\n return items.value.some((item) => item.label.toString().length > 0)\n })\n\n const carouselClasses = computed(() => {\n const classes = [ns.b(), ns.m(props.direction)]\n if (props.type === 'card') {\n classes.push(ns.m('card'))\n }\n return classes\n })\n\n const indicatorsClasses = computed(() => {\n const classes = [ns.e('indicators'), ns.em('indicators', props.direction)]\n if (hasLabel.value) {\n classes.push(ns.em('indicators', 'labels'))\n }\n if (props.indicatorPosition === 'outside' || props.type === 'card') {\n classes.push(ns.em('indicators', 'outside'))\n }\n return classes\n })\n\n // methods\n const throttledArrowClick = throttle(\n (index) => {\n setActiveItem(index)\n },\n 300,\n { trailing: true }\n )\n\n const throttledIndicatorHover = throttle((index) => {\n handleIndicatorHover(index)\n }, 300)\n\n function pauseTimer() {\n if (data.timer) {\n clearInterval(data.timer)\n data.timer = null\n }\n }\n\n function startTimer() {\n if (props.interval <= 0 || !props.autoplay || data.timer) return\n data.timer = setInterval(() => playSlides(), props.interval)\n }\n\n const playSlides = () => {\n if (data.activeIndex < items.value.length - 1) {\n data.activeIndex = data.activeIndex + 1\n } else if (props.loop) {\n data.activeIndex = 0\n }\n }\n\n function setActiveItem(index) {\n if (typeof index === 'string') {\n const filteredItems = items.value.filter((item) => item.name === index)\n if (filteredItems.length > 0) {\n index = items.value.indexOf(filteredItems[0])\n }\n }\n index = Number(index)\n if (isNaN(index) || index !== Math.floor(index)) {\n debugWarn('Carousel', 'index must be an integer.')\n return\n }\n const length = items.value.length\n const oldIndex = data.activeIndex\n if (index < 0) {\n data.activeIndex = props.loop ? length - 1 : 0\n } else if (index >= length) {\n data.activeIndex = props.loop ? 0 : length - 1\n } else {\n data.activeIndex = index\n }\n if (oldIndex === data.activeIndex) {\n resetItemPosition(oldIndex)\n }\n }\n\n function resetItemPosition(oldIndex) {\n items.value.forEach((item, index) => {\n item.translateItem(index, data.activeIndex, oldIndex)\n })\n }\n\n function addItem(item) {\n items.value.push(item)\n }\n\n function removeItem(uid) {\n const index = items.value.findIndex((item) => item.uid === uid)\n if (index !== -1) {\n items.value.splice(index, 1)\n if (data.activeIndex === index) next()\n }\n }\n\n function itemInStage(item, index) {\n const length = items.value.length\n if (\n (index === length - 1 && item.inStage && items.value[0].active) ||\n (item.inStage &&\n items.value[index + 1] &&\n items.value[index + 1].active)\n ) {\n return 'left'\n } else if (\n (index === 0 && item.inStage && items.value[length - 1].active) ||\n (item.inStage &&\n items.value[index - 1] &&\n items.value[index - 1].active)\n ) {\n return 'right'\n }\n return false\n }\n\n function handleMouseEnter() {\n data.hover = true\n if (props.pauseOnHover) {\n pauseTimer()\n }\n }\n\n function handleMouseLeave() {\n data.hover = false\n startTimer()\n }\n\n function handleButtonEnter(arrow) {\n if (props.direction === 'vertical') return\n items.value.forEach((item, index) => {\n if (arrow === itemInStage(item, index)) {\n item.hover = true\n }\n })\n }\n\n function handleButtonLeave() {\n if (props.direction === 'vertical') return\n items.value.forEach((item) => {\n item.hover = false\n })\n }\n\n function handleIndicatorClick(index) {\n data.activeIndex = index\n }\n\n function handleIndicatorHover(index) {\n if (props.trigger === 'hover' && index !== data.activeIndex) {\n data.activeIndex = index\n }\n }\n\n function prev() {\n setActiveItem(data.activeIndex - 1)\n }\n\n function next() {\n setActiveItem(data.activeIndex + 1)\n }\n\n // watch\n watch(\n () => data.activeIndex,\n (current, prev) => {\n resetItemPosition(prev)\n if (prev > -1) {\n emit('change', current, prev)\n }\n }\n )\n watch(\n () => props.autoplay,\n (current) => {\n current ? startTimer() : pauseTimer()\n }\n )\n watch(\n () => props.loop,\n () => {\n setActiveItem(data.activeIndex)\n }\n )\n\n // lifecycle\n onMounted(() => {\n nextTick(() => {\n addResizeListener(root.value, resetItemPosition)\n if (\n props.initialIndex < items.value.length &&\n props.initialIndex >= 0\n ) {\n data.activeIndex = props.initialIndex\n }\n startTimer()\n })\n })\n\n onBeforeUnmount(() => {\n if (root.value) removeResizeListener(root.value, resetItemPosition)\n pauseTimer()\n })\n\n // provide\n provide<InjectCarouselScope>('injectCarouselScope', {\n root,\n direction: props.direction,\n type: props.type,\n items,\n loop: props.loop,\n addItem,\n removeItem,\n setActiveItem,\n })\n\n return {\n data,\n props,\n items,\n\n arrowDisplay,\n carouselClasses,\n indicatorsClasses,\n hasLabel,\n\n handleMouseEnter,\n handleMouseLeave,\n handleIndicatorClick,\n throttledArrowClick,\n throttledIndicatorHover,\n handleButtonEnter,\n handleButtonLeave,\n\n prev,\n next,\n setActiveItem,\n\n root,\n ns,\n }\n },\n})\n</script>\n"],"names":["defineComponent","ElIcon","ArrowLeft","ArrowRight","useNamespace","reactive","ref","computed","throttle","_createElementBlock","_normalizeClass","_createElementVNode","_normalizeStyle","_createBlock","_Transition","_createVNode","_renderSlot","_Fragment","_withModifiers"],"mappings":"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"}