@element-plus/nightly 0.0.20231104 → 0.0.20231106

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 (390) hide show
  1. package/attributes.json +1 -1
  2. package/dist/index.css +1 -1
  3. package/dist/index.full.js +15 -3
  4. package/dist/index.full.min.js +3 -3
  5. package/dist/index.full.min.js.map +1 -1
  6. package/dist/index.full.min.mjs +11 -11
  7. package/dist/index.full.min.mjs.map +1 -1
  8. package/dist/index.full.mjs +15 -3
  9. package/dist/locale/af.js +1 -1
  10. package/dist/locale/af.min.js +1 -1
  11. package/dist/locale/af.min.mjs +1 -1
  12. package/dist/locale/af.mjs +1 -1
  13. package/dist/locale/ar.js +1 -1
  14. package/dist/locale/ar.min.js +1 -1
  15. package/dist/locale/ar.min.mjs +1 -1
  16. package/dist/locale/ar.mjs +1 -1
  17. package/dist/locale/az.js +1 -1
  18. package/dist/locale/az.min.js +1 -1
  19. package/dist/locale/az.min.mjs +1 -1
  20. package/dist/locale/az.mjs +1 -1
  21. package/dist/locale/bg.js +1 -1
  22. package/dist/locale/bg.min.js +1 -1
  23. package/dist/locale/bg.min.mjs +1 -1
  24. package/dist/locale/bg.mjs +1 -1
  25. package/dist/locale/bn.js +1 -1
  26. package/dist/locale/bn.min.js +1 -1
  27. package/dist/locale/bn.min.mjs +1 -1
  28. package/dist/locale/bn.mjs +1 -1
  29. package/dist/locale/ca.js +1 -1
  30. package/dist/locale/ca.min.js +1 -1
  31. package/dist/locale/ca.min.mjs +1 -1
  32. package/dist/locale/ca.mjs +1 -1
  33. package/dist/locale/ckb.js +1 -1
  34. package/dist/locale/ckb.min.js +1 -1
  35. package/dist/locale/ckb.min.mjs +1 -1
  36. package/dist/locale/ckb.mjs +1 -1
  37. package/dist/locale/cs.js +1 -1
  38. package/dist/locale/cs.min.js +1 -1
  39. package/dist/locale/cs.min.mjs +1 -1
  40. package/dist/locale/cs.mjs +1 -1
  41. package/dist/locale/da.js +1 -1
  42. package/dist/locale/da.min.js +1 -1
  43. package/dist/locale/da.min.mjs +1 -1
  44. package/dist/locale/da.mjs +1 -1
  45. package/dist/locale/de.js +1 -1
  46. package/dist/locale/de.min.js +1 -1
  47. package/dist/locale/de.min.mjs +1 -1
  48. package/dist/locale/de.mjs +1 -1
  49. package/dist/locale/el.js +1 -1
  50. package/dist/locale/el.min.js +1 -1
  51. package/dist/locale/el.min.mjs +1 -1
  52. package/dist/locale/el.mjs +1 -1
  53. package/dist/locale/en.js +1 -1
  54. package/dist/locale/en.min.js +1 -1
  55. package/dist/locale/en.min.mjs +1 -1
  56. package/dist/locale/en.mjs +1 -1
  57. package/dist/locale/eo.js +1 -1
  58. package/dist/locale/eo.min.js +1 -1
  59. package/dist/locale/eo.min.mjs +1 -1
  60. package/dist/locale/eo.mjs +1 -1
  61. package/dist/locale/es.js +1 -1
  62. package/dist/locale/es.min.js +1 -1
  63. package/dist/locale/es.min.mjs +1 -1
  64. package/dist/locale/es.mjs +1 -1
  65. package/dist/locale/et.js +1 -1
  66. package/dist/locale/et.min.js +1 -1
  67. package/dist/locale/et.min.mjs +1 -1
  68. package/dist/locale/et.mjs +1 -1
  69. package/dist/locale/eu.js +1 -1
  70. package/dist/locale/eu.min.js +1 -1
  71. package/dist/locale/eu.min.mjs +1 -1
  72. package/dist/locale/eu.mjs +1 -1
  73. package/dist/locale/fa.js +1 -1
  74. package/dist/locale/fa.min.js +1 -1
  75. package/dist/locale/fa.min.mjs +1 -1
  76. package/dist/locale/fa.mjs +1 -1
  77. package/dist/locale/fi.js +1 -1
  78. package/dist/locale/fi.min.js +1 -1
  79. package/dist/locale/fi.min.mjs +1 -1
  80. package/dist/locale/fi.mjs +1 -1
  81. package/dist/locale/fr.js +1 -1
  82. package/dist/locale/fr.min.js +1 -1
  83. package/dist/locale/fr.min.mjs +1 -1
  84. package/dist/locale/fr.mjs +1 -1
  85. package/dist/locale/he.js +1 -1
  86. package/dist/locale/he.min.js +1 -1
  87. package/dist/locale/he.min.mjs +1 -1
  88. package/dist/locale/he.mjs +1 -1
  89. package/dist/locale/hr.js +1 -1
  90. package/dist/locale/hr.min.js +1 -1
  91. package/dist/locale/hr.min.mjs +1 -1
  92. package/dist/locale/hr.mjs +1 -1
  93. package/dist/locale/hu.js +1 -1
  94. package/dist/locale/hu.min.js +1 -1
  95. package/dist/locale/hu.min.mjs +1 -1
  96. package/dist/locale/hu.mjs +1 -1
  97. package/dist/locale/hy-am.js +1 -1
  98. package/dist/locale/hy-am.min.js +1 -1
  99. package/dist/locale/hy-am.min.mjs +1 -1
  100. package/dist/locale/hy-am.mjs +1 -1
  101. package/dist/locale/id.js +1 -1
  102. package/dist/locale/id.min.js +1 -1
  103. package/dist/locale/id.min.mjs +1 -1
  104. package/dist/locale/id.mjs +1 -1
  105. package/dist/locale/it.js +1 -1
  106. package/dist/locale/it.min.js +1 -1
  107. package/dist/locale/it.min.mjs +1 -1
  108. package/dist/locale/it.mjs +1 -1
  109. package/dist/locale/ja.js +1 -1
  110. package/dist/locale/ja.min.js +1 -1
  111. package/dist/locale/ja.min.mjs +1 -1
  112. package/dist/locale/ja.mjs +1 -1
  113. package/dist/locale/kk.js +1 -1
  114. package/dist/locale/kk.min.js +1 -1
  115. package/dist/locale/kk.min.mjs +1 -1
  116. package/dist/locale/kk.mjs +1 -1
  117. package/dist/locale/km.js +1 -1
  118. package/dist/locale/km.min.js +1 -1
  119. package/dist/locale/km.min.mjs +1 -1
  120. package/dist/locale/km.mjs +1 -1
  121. package/dist/locale/ko.js +1 -1
  122. package/dist/locale/ko.min.js +1 -1
  123. package/dist/locale/ko.min.mjs +1 -1
  124. package/dist/locale/ko.mjs +1 -1
  125. package/dist/locale/ku.js +1 -1
  126. package/dist/locale/ku.min.js +1 -1
  127. package/dist/locale/ku.min.mjs +1 -1
  128. package/dist/locale/ku.mjs +1 -1
  129. package/dist/locale/ky.js +1 -1
  130. package/dist/locale/ky.min.js +1 -1
  131. package/dist/locale/ky.min.mjs +1 -1
  132. package/dist/locale/ky.mjs +1 -1
  133. package/dist/locale/lt.js +1 -1
  134. package/dist/locale/lt.min.js +1 -1
  135. package/dist/locale/lt.min.mjs +1 -1
  136. package/dist/locale/lt.mjs +1 -1
  137. package/dist/locale/lv.js +1 -1
  138. package/dist/locale/lv.min.js +1 -1
  139. package/dist/locale/lv.min.mjs +1 -1
  140. package/dist/locale/lv.mjs +1 -1
  141. package/dist/locale/mg.js +1 -1
  142. package/dist/locale/mg.min.js +1 -1
  143. package/dist/locale/mg.min.mjs +1 -1
  144. package/dist/locale/mg.mjs +1 -1
  145. package/dist/locale/mn.js +1 -1
  146. package/dist/locale/mn.min.js +1 -1
  147. package/dist/locale/mn.min.mjs +1 -1
  148. package/dist/locale/mn.mjs +1 -1
  149. package/dist/locale/nb-no.js +1 -1
  150. package/dist/locale/nb-no.min.js +1 -1
  151. package/dist/locale/nb-no.min.mjs +1 -1
  152. package/dist/locale/nb-no.mjs +1 -1
  153. package/dist/locale/nl.js +1 -1
  154. package/dist/locale/nl.min.js +1 -1
  155. package/dist/locale/nl.min.mjs +1 -1
  156. package/dist/locale/nl.mjs +1 -1
  157. package/dist/locale/pa.js +1 -1
  158. package/dist/locale/pa.min.js +1 -1
  159. package/dist/locale/pa.min.mjs +1 -1
  160. package/dist/locale/pa.mjs +1 -1
  161. package/dist/locale/pl.js +1 -1
  162. package/dist/locale/pl.min.js +1 -1
  163. package/dist/locale/pl.min.mjs +1 -1
  164. package/dist/locale/pl.mjs +1 -1
  165. package/dist/locale/pt-br.js +1 -1
  166. package/dist/locale/pt-br.min.js +1 -1
  167. package/dist/locale/pt-br.min.mjs +1 -1
  168. package/dist/locale/pt-br.mjs +1 -1
  169. package/dist/locale/pt.js +1 -1
  170. package/dist/locale/pt.min.js +1 -1
  171. package/dist/locale/pt.min.mjs +1 -1
  172. package/dist/locale/pt.mjs +1 -1
  173. package/dist/locale/ro.js +1 -1
  174. package/dist/locale/ro.min.js +1 -1
  175. package/dist/locale/ro.min.mjs +1 -1
  176. package/dist/locale/ro.mjs +1 -1
  177. package/dist/locale/ru.js +1 -1
  178. package/dist/locale/ru.min.js +1 -1
  179. package/dist/locale/ru.min.mjs +1 -1
  180. package/dist/locale/ru.mjs +1 -1
  181. package/dist/locale/sk.js +1 -1
  182. package/dist/locale/sk.min.js +1 -1
  183. package/dist/locale/sk.min.mjs +1 -1
  184. package/dist/locale/sk.mjs +1 -1
  185. package/dist/locale/sl.js +1 -1
  186. package/dist/locale/sl.min.js +1 -1
  187. package/dist/locale/sl.min.mjs +1 -1
  188. package/dist/locale/sl.mjs +1 -1
  189. package/dist/locale/sr.js +1 -1
  190. package/dist/locale/sr.min.js +1 -1
  191. package/dist/locale/sr.min.mjs +1 -1
  192. package/dist/locale/sr.mjs +1 -1
  193. package/dist/locale/sv.js +1 -1
  194. package/dist/locale/sv.min.js +1 -1
  195. package/dist/locale/sv.min.mjs +1 -1
  196. package/dist/locale/sv.mjs +1 -1
  197. package/dist/locale/sw.js +1 -1
  198. package/dist/locale/sw.min.js +1 -1
  199. package/dist/locale/sw.min.mjs +1 -1
  200. package/dist/locale/sw.mjs +1 -1
  201. package/dist/locale/ta.js +1 -1
  202. package/dist/locale/ta.min.js +1 -1
  203. package/dist/locale/ta.min.mjs +1 -1
  204. package/dist/locale/ta.mjs +1 -1
  205. package/dist/locale/th.js +1 -1
  206. package/dist/locale/th.min.js +1 -1
  207. package/dist/locale/th.min.mjs +1 -1
  208. package/dist/locale/th.mjs +1 -1
  209. package/dist/locale/tk.js +1 -1
  210. package/dist/locale/tk.min.js +1 -1
  211. package/dist/locale/tk.min.mjs +1 -1
  212. package/dist/locale/tk.mjs +1 -1
  213. package/dist/locale/tr.js +1 -1
  214. package/dist/locale/tr.min.js +1 -1
  215. package/dist/locale/tr.min.mjs +1 -1
  216. package/dist/locale/tr.mjs +1 -1
  217. package/dist/locale/ug-cn.js +1 -1
  218. package/dist/locale/ug-cn.min.js +1 -1
  219. package/dist/locale/ug-cn.min.mjs +1 -1
  220. package/dist/locale/ug-cn.mjs +1 -1
  221. package/dist/locale/uk.js +1 -1
  222. package/dist/locale/uk.min.js +1 -1
  223. package/dist/locale/uk.min.mjs +1 -1
  224. package/dist/locale/uk.mjs +1 -1
  225. package/dist/locale/uz-uz.js +1 -1
  226. package/dist/locale/uz-uz.min.js +1 -1
  227. package/dist/locale/uz-uz.min.mjs +1 -1
  228. package/dist/locale/uz-uz.mjs +1 -1
  229. package/dist/locale/vi.js +1 -1
  230. package/dist/locale/vi.min.js +1 -1
  231. package/dist/locale/vi.min.mjs +1 -1
  232. package/dist/locale/vi.mjs +1 -1
  233. package/dist/locale/zh-cn.js +1 -1
  234. package/dist/locale/zh-cn.min.js +1 -1
  235. package/dist/locale/zh-cn.min.mjs +1 -1
  236. package/dist/locale/zh-cn.mjs +1 -1
  237. package/dist/locale/zh-tw.js +1 -1
  238. package/dist/locale/zh-tw.min.js +1 -1
  239. package/dist/locale/zh-tw.min.mjs +1 -1
  240. package/dist/locale/zh-tw.mjs +1 -1
  241. package/es/components/card/index.d.ts +3 -0
  242. package/es/components/card/src/card.d.ts +1 -0
  243. package/es/components/card/src/card.mjs +4 -0
  244. package/es/components/card/src/card.mjs.map +1 -1
  245. package/es/components/card/src/card.vue.d.ts +3 -0
  246. package/es/components/card/src/card2.mjs +9 -1
  247. package/es/components/card/src/card2.mjs.map +1 -1
  248. package/es/components/cascader/index.mjs +2 -2
  249. package/es/components/cascader/src/cascader.mjs +626 -65
  250. package/es/components/cascader/src/cascader.mjs.map +1 -1
  251. package/es/components/cascader/src/cascader2.mjs +65 -626
  252. package/es/components/cascader/src/cascader2.mjs.map +1 -1
  253. package/es/components/checkbox/index.mjs +2 -2
  254. package/es/components/checkbox/src/checkbox-group.mjs +28 -72
  255. package/es/components/checkbox/src/checkbox-group.mjs.map +1 -1
  256. package/es/components/checkbox/src/checkbox-group2.mjs +72 -28
  257. package/es/components/checkbox/src/checkbox-group2.mjs.map +1 -1
  258. package/es/components/collapse/index.mjs +2 -2
  259. package/es/components/collapse/src/collapse-item.mjs +14 -91
  260. package/es/components/collapse/src/collapse-item.mjs.map +1 -1
  261. package/es/components/collapse/src/collapse-item2.mjs +91 -14
  262. package/es/components/collapse/src/collapse-item2.mjs.map +1 -1
  263. package/es/components/image/index.mjs +2 -2
  264. package/es/components/image/src/image.mjs +225 -61
  265. package/es/components/image/src/image.mjs.map +1 -1
  266. package/es/components/image/src/image2.mjs +61 -225
  267. package/es/components/image/src/image2.mjs.map +1 -1
  268. package/es/components/index.mjs +10 -10
  269. package/es/components/pagination/src/components/jumper.mjs +60 -9
  270. package/es/components/pagination/src/components/jumper.mjs.map +1 -1
  271. package/es/components/pagination/src/components/jumper2.mjs +9 -60
  272. package/es/components/pagination/src/components/jumper2.mjs.map +1 -1
  273. package/es/components/pagination/src/components/prev.mjs +38 -18
  274. package/es/components/pagination/src/components/prev.mjs.map +1 -1
  275. package/es/components/pagination/src/components/prev2.mjs +18 -38
  276. package/es/components/pagination/src/components/prev2.mjs.map +1 -1
  277. package/es/components/pagination/src/pagination.mjs +2 -2
  278. package/es/components/popper/index.mjs +2 -2
  279. package/es/components/popper/src/trigger.mjs +119 -31
  280. package/es/components/popper/src/trigger.mjs.map +1 -1
  281. package/es/components/popper/src/trigger2.mjs +31 -119
  282. package/es/components/popper/src/trigger2.mjs.map +1 -1
  283. package/es/components/scrollbar/index.mjs +2 -2
  284. package/es/components/scrollbar/src/scrollbar.mjs +178 -53
  285. package/es/components/scrollbar/src/scrollbar.mjs.map +1 -1
  286. package/es/components/scrollbar/src/scrollbar2.mjs +53 -178
  287. package/es/components/scrollbar/src/scrollbar2.mjs.map +1 -1
  288. package/es/components/steps/index.mjs +2 -2
  289. package/es/components/steps/src/steps.mjs +36 -39
  290. package/es/components/steps/src/steps.mjs.map +1 -1
  291. package/es/components/steps/src/steps2.mjs +39 -36
  292. package/es/components/steps/src/steps2.mjs.map +1 -1
  293. package/es/components/tooltip/src/trigger.mjs +1 -1
  294. package/es/components/tooltip/src/trigger2.mjs +1 -1
  295. package/es/components/upload/index.mjs +2 -2
  296. package/es/components/upload/src/upload-content.mjs +1 -1
  297. package/es/components/upload/src/upload-content2.mjs +1 -1
  298. package/es/components/upload/src/upload-list.mjs +1 -1
  299. package/es/components/upload/src/upload.mjs +116 -101
  300. package/es/components/upload/src/upload.mjs.map +1 -1
  301. package/es/components/upload/src/upload2.mjs +101 -116
  302. package/es/components/upload/src/upload2.mjs.map +1 -1
  303. package/es/components/upload/src/use-handlers.mjs +1 -1
  304. package/es/components/watermark/index.mjs +2 -2
  305. package/es/components/watermark/src/watermark.mjs +207 -28
  306. package/es/components/watermark/src/watermark.mjs.map +1 -1
  307. package/es/components/watermark/src/watermark2.mjs +28 -207
  308. package/es/components/watermark/src/watermark2.mjs.map +1 -1
  309. package/es/index.mjs +10 -10
  310. package/es/version.d.ts +1 -1
  311. package/es/version.mjs +1 -1
  312. package/es/version.mjs.map +1 -1
  313. package/lib/components/card/index.d.ts +3 -0
  314. package/lib/components/card/src/card.d.ts +1 -0
  315. package/lib/components/card/src/card.js +4 -0
  316. package/lib/components/card/src/card.js.map +1 -1
  317. package/lib/components/card/src/card.vue.d.ts +3 -0
  318. package/lib/components/card/src/card2.js +9 -1
  319. package/lib/components/card/src/card2.js.map +1 -1
  320. package/lib/components/cascader/index.js +2 -2
  321. package/lib/components/cascader/src/cascader.js +626 -66
  322. package/lib/components/cascader/src/cascader.js.map +1 -1
  323. package/lib/components/cascader/src/cascader2.js +66 -626
  324. package/lib/components/cascader/src/cascader2.js.map +1 -1
  325. package/lib/components/checkbox/index.js +2 -2
  326. package/lib/components/checkbox/src/checkbox-group.js +29 -72
  327. package/lib/components/checkbox/src/checkbox-group.js.map +1 -1
  328. package/lib/components/checkbox/src/checkbox-group2.js +72 -29
  329. package/lib/components/checkbox/src/checkbox-group2.js.map +1 -1
  330. package/lib/components/collapse/index.js +2 -2
  331. package/lib/components/collapse/src/collapse-item.js +14 -91
  332. package/lib/components/collapse/src/collapse-item.js.map +1 -1
  333. package/lib/components/collapse/src/collapse-item2.js +91 -14
  334. package/lib/components/collapse/src/collapse-item2.js.map +1 -1
  335. package/lib/components/image/index.js +2 -2
  336. package/lib/components/image/src/image.js +224 -61
  337. package/lib/components/image/src/image.js.map +1 -1
  338. package/lib/components/image/src/image2.js +61 -224
  339. package/lib/components/image/src/image2.js.map +1 -1
  340. package/lib/components/index.js +10 -10
  341. package/lib/components/pagination/src/components/jumper.js +60 -9
  342. package/lib/components/pagination/src/components/jumper.js.map +1 -1
  343. package/lib/components/pagination/src/components/jumper2.js +9 -60
  344. package/lib/components/pagination/src/components/jumper2.js.map +1 -1
  345. package/lib/components/pagination/src/components/prev.js +38 -19
  346. package/lib/components/pagination/src/components/prev.js.map +1 -1
  347. package/lib/components/pagination/src/components/prev2.js +19 -38
  348. package/lib/components/pagination/src/components/prev2.js.map +1 -1
  349. package/lib/components/pagination/src/pagination.js +2 -2
  350. package/lib/components/popper/index.js +2 -2
  351. package/lib/components/popper/src/trigger.js +119 -32
  352. package/lib/components/popper/src/trigger.js.map +1 -1
  353. package/lib/components/popper/src/trigger2.js +32 -119
  354. package/lib/components/popper/src/trigger2.js.map +1 -1
  355. package/lib/components/scrollbar/index.js +2 -2
  356. package/lib/components/scrollbar/src/scrollbar.js +178 -54
  357. package/lib/components/scrollbar/src/scrollbar.js.map +1 -1
  358. package/lib/components/scrollbar/src/scrollbar2.js +54 -178
  359. package/lib/components/scrollbar/src/scrollbar2.js.map +1 -1
  360. package/lib/components/steps/index.js +2 -2
  361. package/lib/components/steps/src/steps.js +37 -39
  362. package/lib/components/steps/src/steps.js.map +1 -1
  363. package/lib/components/steps/src/steps2.js +39 -37
  364. package/lib/components/steps/src/steps2.js.map +1 -1
  365. package/lib/components/tooltip/src/trigger.js +1 -1
  366. package/lib/components/tooltip/src/trigger2.js +1 -1
  367. package/lib/components/upload/index.js +2 -2
  368. package/lib/components/upload/src/upload-content.js +1 -1
  369. package/lib/components/upload/src/upload-content2.js +1 -1
  370. package/lib/components/upload/src/upload-list.js +1 -1
  371. package/lib/components/upload/src/upload.js +116 -104
  372. package/lib/components/upload/src/upload.js.map +1 -1
  373. package/lib/components/upload/src/upload2.js +104 -116
  374. package/lib/components/upload/src/upload2.js.map +1 -1
  375. package/lib/components/upload/src/use-handlers.js +1 -1
  376. package/lib/components/watermark/index.js +2 -2
  377. package/lib/components/watermark/src/watermark.js +207 -28
  378. package/lib/components/watermark/src/watermark.js.map +1 -1
  379. package/lib/components/watermark/src/watermark2.js +28 -207
  380. package/lib/components/watermark/src/watermark2.js.map +1 -1
  381. package/lib/index.js +10 -10
  382. package/lib/version.d.ts +1 -1
  383. package/lib/version.js +1 -1
  384. package/lib/version.js.map +1 -1
  385. package/package.json +2 -2
  386. package/tags.json +1 -1
  387. package/theme-chalk/el-card.css +1 -1
  388. package/theme-chalk/index.css +1 -1
  389. package/theme-chalk/src/card.scss +7 -0
  390. package/web-types.json +1 -1
@@ -2,215 +2,36 @@
2
2
 
3
3
  Object.defineProperty(exports, '__esModule', { value: true });
4
4
 
5
- var vue = require('vue');
6
- var core = require('@vueuse/core');
7
- var watermark = require('./watermark.js');
8
- var utils = require('./utils.js');
9
- var useClips = require('./useClips.js');
10
- var pluginVue_exportHelper = require('../../../_virtual/plugin-vue_export-helper.js');
5
+ require('../../../utils/index.js');
6
+ var runtime = require('../../../utils/vue/props/runtime.js');
11
7
 
12
- const __default__ = vue.defineComponent({
13
- name: "ElWatermark"
14
- });
15
- const _sfc_main = /* @__PURE__ */ vue.defineComponent({
16
- ...__default__,
17
- props: watermark.watermarkProps,
18
- setup(__props) {
19
- const props = __props;
20
- const style = {
21
- position: "relative"
22
- };
23
- const color = vue.computed(() => {
24
- var _a, _b;
25
- return (_b = (_a = props.font) == null ? void 0 : _a.color) != null ? _b : "rgba(0,0,0,.15)";
26
- });
27
- const fontSize = vue.computed(() => {
28
- var _a, _b;
29
- return (_b = (_a = props.font) == null ? void 0 : _a.fontSize) != null ? _b : 16;
30
- });
31
- const fontWeight = vue.computed(() => {
32
- var _a, _b;
33
- return (_b = (_a = props.font) == null ? void 0 : _a.fontWeight) != null ? _b : "normal";
34
- });
35
- const fontStyle = vue.computed(() => {
36
- var _a, _b;
37
- return (_b = (_a = props.font) == null ? void 0 : _a.fontStyle) != null ? _b : "normal";
38
- });
39
- const fontFamily = vue.computed(() => {
40
- var _a, _b;
41
- return (_b = (_a = props.font) == null ? void 0 : _a.fontFamily) != null ? _b : "sans-serif";
42
- });
43
- const textAlign = vue.computed(() => {
44
- var _a, _b;
45
- return (_b = (_a = props.font) == null ? void 0 : _a.textAlign) != null ? _b : "center";
46
- });
47
- const textBaseline = vue.computed(() => {
48
- var _a, _b;
49
- return (_b = (_a = props.font) == null ? void 0 : _a.textBaseline) != null ? _b : "top";
50
- });
51
- const gapX = vue.computed(() => props.gap[0]);
52
- const gapY = vue.computed(() => props.gap[1]);
53
- const gapXCenter = vue.computed(() => gapX.value / 2);
54
- const gapYCenter = vue.computed(() => gapY.value / 2);
55
- const offsetLeft = vue.computed(() => {
56
- var _a, _b;
57
- return (_b = (_a = props.offset) == null ? void 0 : _a[0]) != null ? _b : gapXCenter.value;
58
- });
59
- const offsetTop = vue.computed(() => {
60
- var _a, _b;
61
- return (_b = (_a = props.offset) == null ? void 0 : _a[1]) != null ? _b : gapYCenter.value;
62
- });
63
- const getMarkStyle = () => {
64
- const markStyle = {
65
- zIndex: props.zIndex,
66
- position: "absolute",
67
- left: 0,
68
- top: 0,
69
- width: "100%",
70
- height: "100%",
71
- pointerEvents: "none",
72
- backgroundRepeat: "repeat"
73
- };
74
- let positionLeft = offsetLeft.value - gapXCenter.value;
75
- let positionTop = offsetTop.value - gapYCenter.value;
76
- if (positionLeft > 0) {
77
- markStyle.left = `${positionLeft}px`;
78
- markStyle.width = `calc(100% - ${positionLeft}px)`;
79
- positionLeft = 0;
80
- }
81
- if (positionTop > 0) {
82
- markStyle.top = `${positionTop}px`;
83
- markStyle.height = `calc(100% - ${positionTop}px)`;
84
- positionTop = 0;
85
- }
86
- markStyle.backgroundPosition = `${positionLeft}px ${positionTop}px`;
87
- return markStyle;
88
- };
89
- const containerRef = vue.shallowRef(null);
90
- const watermarkRef = vue.shallowRef();
91
- const stopObservation = vue.ref(false);
92
- const destroyWatermark = () => {
93
- if (watermarkRef.value) {
94
- watermarkRef.value.remove();
95
- watermarkRef.value = void 0;
96
- }
97
- };
98
- const appendWatermark = (base64Url, markWidth) => {
99
- var _a;
100
- if (containerRef.value && watermarkRef.value) {
101
- stopObservation.value = true;
102
- watermarkRef.value.setAttribute("style", utils.getStyleStr({
103
- ...getMarkStyle(),
104
- backgroundImage: `url('${base64Url}')`,
105
- backgroundSize: `${Math.floor(markWidth)}px`
106
- }));
107
- (_a = containerRef.value) == null ? void 0 : _a.append(watermarkRef.value);
108
- setTimeout(() => {
109
- stopObservation.value = false;
110
- });
111
- }
112
- };
113
- const getMarkSize = (ctx) => {
114
- let defaultWidth = 120;
115
- let defaultHeight = 64;
116
- const image = props.image;
117
- const content = props.content;
118
- const width = props.width;
119
- const height = props.height;
120
- if (!image && ctx.measureText) {
121
- ctx.font = `${Number(fontSize.value)}px ${fontFamily.value}`;
122
- const contents = Array.isArray(content) ? content : [content];
123
- const sizes = contents.map((item) => {
124
- const metrics = ctx.measureText(item);
125
- return [
126
- metrics.width,
127
- metrics.fontBoundingBoxAscent + metrics.fontBoundingBoxDescent
128
- ];
129
- });
130
- defaultWidth = Math.ceil(Math.max(...sizes.map((size) => size[0])));
131
- defaultHeight = Math.ceil(Math.max(...sizes.map((size) => size[1]))) * contents.length + (contents.length - 1) * useClips.FontGap;
132
- }
133
- return [width != null ? width : defaultWidth, height != null ? height : defaultHeight];
134
- };
135
- const getClips = useClips["default"]();
136
- const renderWatermark = () => {
137
- const canvas = document.createElement("canvas");
138
- const ctx = canvas.getContext("2d");
139
- const image = props.image;
140
- const content = props.content;
141
- const rotate = props.rotate;
142
- if (ctx) {
143
- if (!watermarkRef.value) {
144
- watermarkRef.value = document.createElement("div");
145
- }
146
- const ratio = utils.getPixelRatio();
147
- const [markWidth, markHeight] = getMarkSize(ctx);
148
- const drawCanvas = (drawContent) => {
149
- const [textClips, clipWidth] = getClips(drawContent || "", rotate, ratio, markWidth, markHeight, {
150
- color: color.value,
151
- fontSize: fontSize.value,
152
- fontStyle: fontStyle.value,
153
- fontWeight: fontWeight.value,
154
- fontFamily: fontFamily.value,
155
- textAlign: textAlign.value,
156
- textBaseline: textBaseline.value
157
- }, gapX.value, gapY.value);
158
- appendWatermark(textClips, clipWidth);
159
- };
160
- if (image) {
161
- const img = new Image();
162
- img.onload = () => {
163
- drawCanvas(img);
164
- };
165
- img.onerror = () => {
166
- drawCanvas(content);
167
- };
168
- img.crossOrigin = "anonymous";
169
- img.referrerPolicy = "no-referrer";
170
- img.src = image;
171
- } else {
172
- drawCanvas(content);
173
- }
174
- }
175
- };
176
- vue.onMounted(() => {
177
- renderWatermark();
178
- });
179
- vue.watch(() => props, () => {
180
- renderWatermark();
181
- }, {
182
- deep: true,
183
- flush: "post"
184
- });
185
- vue.onBeforeUnmount(() => {
186
- destroyWatermark();
187
- });
188
- const onMutate = (mutations) => {
189
- if (stopObservation.value) {
190
- return;
191
- }
192
- mutations.forEach((mutation) => {
193
- if (utils.reRendering(mutation, watermarkRef.value)) {
194
- destroyWatermark();
195
- renderWatermark();
196
- }
197
- });
198
- };
199
- core.useMutationObserver(containerRef, onMutate, {
200
- attributes: true
201
- });
202
- return (_ctx, _cache) => {
203
- return vue.openBlock(), vue.createElementBlock("div", {
204
- ref_key: "containerRef",
205
- ref: containerRef,
206
- style: vue.normalizeStyle([style])
207
- }, [
208
- vue.renderSlot(_ctx.$slots, "default")
209
- ], 4);
210
- };
8
+ const watermarkProps = runtime.buildProps({
9
+ zIndex: {
10
+ type: Number,
11
+ default: 9
12
+ },
13
+ rotate: {
14
+ type: Number,
15
+ default: -22
16
+ },
17
+ width: Number,
18
+ height: Number,
19
+ image: String,
20
+ content: {
21
+ type: runtime.definePropType([String, Array]),
22
+ default: "Element Plus"
23
+ },
24
+ font: {
25
+ type: runtime.definePropType(Object)
26
+ },
27
+ gap: {
28
+ type: runtime.definePropType(Array),
29
+ default: () => [100, 100]
30
+ },
31
+ offset: {
32
+ type: runtime.definePropType(Array)
211
33
  }
212
34
  });
213
- var Watermark = /* @__PURE__ */ pluginVue_exportHelper["default"](_sfc_main, [["__file", "/home/runner/work/element-plus/element-plus/packages/components/watermark/src/watermark.vue"]]);
214
35
 
215
- exports["default"] = Watermark;
36
+ exports.watermarkProps = watermarkProps;
216
37
  //# sourceMappingURL=watermark2.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"watermark2.js","sources":["../../../../../../packages/components/watermark/src/watermark.vue"],"sourcesContent":["<template>\n <div ref=\"containerRef\" :style=\"[style]\">\n <slot />\n </div>\n</template>\n\n<script lang=\"ts\" setup>\nimport {\n computed,\n onBeforeUnmount,\n onMounted,\n ref,\n shallowRef,\n watch,\n} from 'vue'\nimport { useMutationObserver } from '@vueuse/core'\nimport { watermarkProps } from './watermark'\nimport { getPixelRatio, getStyleStr, reRendering } from './utils'\nimport useClips, { FontGap } from './useClips'\nimport type { WatermarkProps } from './watermark'\nimport type { CSSProperties } from 'vue'\n\ndefineOptions({\n name: 'ElWatermark',\n})\n\nconst style: CSSProperties = {\n position: 'relative',\n}\n\nconst props = defineProps(watermarkProps)\nconst color = computed(() => props.font?.color ?? 'rgba(0,0,0,.15)')\nconst fontSize = computed(() => props.font?.fontSize ?? 16)\nconst fontWeight = computed(() => props.font?.fontWeight ?? 'normal')\nconst fontStyle = computed(() => props.font?.fontStyle ?? 'normal')\nconst fontFamily = computed(() => props.font?.fontFamily ?? 'sans-serif')\nconst textAlign = computed(() => props.font?.textAlign ?? 'center')\nconst textBaseline = computed(() => props.font?.textBaseline ?? 'top')\n\nconst gapX = computed(() => props.gap[0])\nconst gapY = computed(() => props.gap[1])\nconst gapXCenter = computed(() => gapX.value / 2)\nconst gapYCenter = computed(() => gapY.value / 2)\nconst offsetLeft = computed(() => props.offset?.[0] ?? gapXCenter.value)\nconst offsetTop = computed(() => props.offset?.[1] ?? gapYCenter.value)\n\nconst getMarkStyle = () => {\n const markStyle: CSSProperties = {\n zIndex: props.zIndex,\n position: 'absolute',\n left: 0,\n top: 0,\n width: '100%',\n height: '100%',\n pointerEvents: 'none',\n backgroundRepeat: 'repeat',\n }\n\n /** Calculate the style of the offset */\n let positionLeft = offsetLeft.value - gapXCenter.value\n let positionTop = offsetTop.value - gapYCenter.value\n if (positionLeft > 0) {\n markStyle.left = `${positionLeft}px`\n markStyle.width = `calc(100% - ${positionLeft}px)`\n positionLeft = 0\n }\n if (positionTop > 0) {\n markStyle.top = `${positionTop}px`\n markStyle.height = `calc(100% - ${positionTop}px)`\n positionTop = 0\n }\n markStyle.backgroundPosition = `${positionLeft}px ${positionTop}px`\n\n return markStyle\n}\n\nconst containerRef = shallowRef<HTMLDivElement | null>(null)\nconst watermarkRef = shallowRef<HTMLDivElement>()\nconst stopObservation = ref(false)\n\nconst destroyWatermark = () => {\n if (watermarkRef.value) {\n watermarkRef.value.remove()\n watermarkRef.value = undefined\n }\n}\nconst appendWatermark = (base64Url: string, markWidth: number) => {\n if (containerRef.value && watermarkRef.value) {\n stopObservation.value = true\n watermarkRef.value.setAttribute(\n 'style',\n getStyleStr({\n ...getMarkStyle(),\n backgroundImage: `url('${base64Url}')`,\n backgroundSize: `${Math.floor(markWidth)}px`,\n })\n )\n containerRef.value?.append(watermarkRef.value)\n // Delayed execution\n setTimeout(() => {\n stopObservation.value = false\n })\n }\n}\n\n/**\n * Get the width and height of the watermark. The default values are as follows\n * Image: [120, 64]; Content: It's calculated by content;\n */\nconst getMarkSize = (ctx: CanvasRenderingContext2D) => {\n let defaultWidth = 120\n let defaultHeight = 64\n const image = props.image\n const content = props.content\n const width = props.width\n const height = props.height\n if (!image && ctx.measureText) {\n ctx.font = `${Number(fontSize.value)}px ${fontFamily.value}`\n const contents = Array.isArray(content) ? content : [content]\n const sizes = contents.map((item) => {\n const metrics = ctx.measureText(item!)\n\n return [\n metrics.width,\n metrics.fontBoundingBoxAscent + metrics.fontBoundingBoxDescent,\n ]\n })\n defaultWidth = Math.ceil(Math.max(...sizes.map((size) => size[0])))\n defaultHeight =\n Math.ceil(Math.max(...sizes.map((size) => size[1]))) * contents.length +\n (contents.length - 1) * FontGap\n }\n return [width ?? defaultWidth, height ?? defaultHeight] as const\n}\n\nconst getClips = useClips()\n\nconst renderWatermark = () => {\n const canvas = document.createElement('canvas')\n const ctx = canvas.getContext('2d')\n const image = props.image\n const content = props.content\n const rotate = props.rotate\n\n if (ctx) {\n if (!watermarkRef.value) {\n watermarkRef.value = document.createElement('div')\n }\n\n const ratio = getPixelRatio()\n const [markWidth, markHeight] = getMarkSize(ctx)\n\n const drawCanvas = (\n drawContent?: NonNullable<WatermarkProps['content']> | HTMLImageElement\n ) => {\n const [textClips, clipWidth] = getClips(\n drawContent || '',\n rotate,\n ratio,\n markWidth,\n markHeight,\n {\n color: color.value,\n fontSize: fontSize.value,\n fontStyle: fontStyle.value,\n fontWeight: fontWeight.value,\n fontFamily: fontFamily.value,\n textAlign: textAlign.value,\n textBaseline: textBaseline.value,\n },\n gapX.value,\n gapY.value\n )\n\n appendWatermark(textClips, clipWidth)\n }\n\n if (image) {\n const img = new Image()\n img.onload = () => {\n drawCanvas(img)\n }\n img.onerror = () => {\n drawCanvas(content)\n }\n img.crossOrigin = 'anonymous'\n img.referrerPolicy = 'no-referrer'\n img.src = image\n } else {\n drawCanvas(content)\n }\n }\n}\n\nonMounted(() => {\n renderWatermark()\n})\n\nwatch(\n () => props,\n () => {\n renderWatermark()\n },\n {\n deep: true,\n flush: 'post',\n }\n)\n\nonBeforeUnmount(() => {\n destroyWatermark()\n})\n\nconst onMutate = (mutations: MutationRecord[]) => {\n if (stopObservation.value) {\n return\n }\n mutations.forEach((mutation) => {\n if (reRendering(mutation, watermarkRef.value)) {\n destroyWatermark()\n renderWatermark()\n }\n })\n}\n\nuseMutationObserver(containerRef, onMutate, {\n attributes: true,\n})\n</script>\n"],"names":["computed","shallowRef","ref","getStyleStr","FontGap","useClips","getPixelRatio"],"mappings":"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"}
1
+ {"version":3,"file":"watermark2.js","sources":["../../../../../../packages/components/watermark/src/watermark.ts"],"sourcesContent":["import { buildProps, definePropType } from '@element-plus/utils'\n\nimport type { ExtractPropTypes } from 'vue'\nimport type Watermark from './watermark.vue'\n\nexport interface WatermarkFontType {\n color?: string\n fontSize?: number | string\n fontWeight?: 'normal' | 'light' | 'weight' | number\n fontStyle?: 'none' | 'normal' | 'italic' | 'oblique'\n fontFamily?: string\n textAlign?: 'start' | 'end' | 'left' | 'right' | 'center'\n textBaseline?:\n | 'top'\n | 'hanging'\n | 'middle'\n | 'alphabetic'\n | 'ideographic'\n | 'bottom'\n}\n\nexport const watermarkProps = buildProps({\n /**\n * @description The z-index of the appended watermark element\n */\n zIndex: {\n type: Number,\n default: 9,\n },\n /**\n * @description The rotation angle of the watermark\n */\n rotate: {\n type: Number,\n default: -22,\n },\n /**\n * @description The width of the watermark\n */\n width: Number,\n /**\n * @description The height of the watermark\n */\n height: Number,\n /**\n * @description Image source, it is recommended to export 2x or 3x image, high priority (support base64 format)\n */\n image: String,\n /**\n * @description Watermark text content\n */\n content: {\n type: definePropType<string | string[]>([String, Array]),\n default: 'Element Plus',\n },\n /**\n * @description Text style\n */\n font: {\n type: definePropType<WatermarkFontType>(Object),\n },\n /**\n * @description The spacing between watermarks\n */\n gap: {\n type: definePropType<[number, number]>(Array),\n default: () => [100, 100],\n },\n /**\n * @description The offset of the watermark from the upper left corner of the container. The default is gap/2\n */\n offset: {\n type: definePropType<[number, number]>(Array),\n },\n} as const)\n\nexport type WatermarkProps = ExtractPropTypes<typeof watermarkProps>\nexport type WatermarkInstance = InstanceType<typeof Watermark>\n"],"names":["buildProps","definePropType"],"mappings":";;;;;;;AACY,MAAC,cAAc,GAAGA,kBAAU,CAAC;AACzC,EAAE,MAAM,EAAE;AACV,IAAI,IAAI,EAAE,MAAM;AAChB,IAAI,OAAO,EAAE,CAAC;AACd,GAAG;AACH,EAAE,MAAM,EAAE;AACV,IAAI,IAAI,EAAE,MAAM;AAChB,IAAI,OAAO,EAAE,CAAC,EAAE;AAChB,GAAG;AACH,EAAE,KAAK,EAAE,MAAM;AACf,EAAE,MAAM,EAAE,MAAM;AAChB,EAAE,KAAK,EAAE,MAAM;AACf,EAAE,OAAO,EAAE;AACX,IAAI,IAAI,EAAEC,sBAAc,CAAC,CAAC,MAAM,EAAE,KAAK,CAAC,CAAC;AACzC,IAAI,OAAO,EAAE,cAAc;AAC3B,GAAG;AACH,EAAE,IAAI,EAAE;AACR,IAAI,IAAI,EAAEA,sBAAc,CAAC,MAAM,CAAC;AAChC,GAAG;AACH,EAAE,GAAG,EAAE;AACP,IAAI,IAAI,EAAEA,sBAAc,CAAC,KAAK,CAAC;AAC/B,IAAI,OAAO,EAAE,MAAM,CAAC,GAAG,EAAE,GAAG,CAAC;AAC7B,GAAG;AACH,EAAE,MAAM,EAAE;AACV,IAAI,IAAI,EAAEA,sBAAc,CAAC,KAAK,CAAC;AAC/B,GAAG;AACH,CAAC;;;;"}
package/lib/index.js CHANGED
@@ -36,21 +36,21 @@ var carousel = require('./components/carousel/src/carousel.js');
36
36
  var carouselItem = require('./components/carousel/src/carousel-item.js');
37
37
  var constants$2 = require('./components/carousel/src/constants.js');
38
38
  var index$a = require('./components/carousel/index.js');
39
- var cascader = require('./components/cascader/src/cascader.js');
39
+ var cascader = require('./components/cascader/src/cascader2.js');
40
40
  var index$b = require('./components/cascader/index.js');
41
41
  var types = require('./components/cascader-panel/src/types.js');
42
42
  var config = require('./components/cascader-panel/src/config.js');
43
43
  var index$c = require('./components/cascader-panel/index.js');
44
44
  var checkTag = require('./components/check-tag/src/check-tag.js');
45
45
  var index$d = require('./components/check-tag/index.js');
46
- var checkboxGroup = require('./components/checkbox/src/checkbox-group2.js');
46
+ var checkboxGroup = require('./components/checkbox/src/checkbox-group.js');
47
47
  var checkbox = require('./components/checkbox/src/checkbox.js');
48
48
  var constants$3 = require('./components/checkbox/src/constants.js');
49
49
  var index$e = require('./components/checkbox/index.js');
50
50
  var col = require('./components/col/src/col.js');
51
51
  var index$f = require('./components/col/index.js');
52
52
  var collapse = require('./components/collapse/src/collapse.js');
53
- var collapseItem = require('./components/collapse/src/collapse-item2.js');
53
+ var collapseItem = require('./components/collapse/src/collapse-item.js');
54
54
  var constants$4 = require('./components/collapse/src/constants.js');
55
55
  var index$g = require('./components/collapse/index.js');
56
56
  var index$h = require('./components/collapse-transition/index.js');
@@ -90,7 +90,7 @@ var useFormItem = require('./components/form/src/hooks/use-form-item.js');
90
90
  var index$t = require('./components/form/index.js');
91
91
  var icon = require('./components/icon/src/icon.js');
92
92
  var index$u = require('./components/icon/index.js');
93
- var image = require('./components/image/src/image.js');
93
+ var image = require('./components/image/src/image2.js');
94
94
  var index$v = require('./components/image/index.js');
95
95
  var imageViewer = require('./components/image-viewer/src/image-viewer.js');
96
96
  var index$w = require('./components/image-viewer/index.js');
@@ -115,12 +115,12 @@ var index$D = require('./components/pagination/index.js');
115
115
  var popconfirm = require('./components/popconfirm/src/popconfirm.js');
116
116
  var index$E = require('./components/popconfirm/index.js');
117
117
  var popper = require('./components/popper/src/popper.js');
118
- var trigger$1 = require('./components/popper/src/trigger.js');
118
+ var trigger$1 = require('./components/popper/src/trigger2.js');
119
119
  var content$1 = require('./components/popper/src/content.js');
120
120
  var arrow$1 = require('./components/popper/src/arrow.js');
121
121
  var constants$a = require('./components/popper/src/constants.js');
122
122
  var arrow = require('./components/popper/src/arrow2.js');
123
- var trigger = require('./components/popper/src/trigger2.js');
123
+ var trigger = require('./components/popper/src/trigger.js');
124
124
  var content = require('./components/popper/src/content2.js');
125
125
  var index$F = require('./components/popper/index.js');
126
126
  var progress = require('./components/progress/src/progress.js');
@@ -138,7 +138,7 @@ var row = require('./components/row/src/row.js');
138
138
  var constants$c = require('./components/row/src/constants.js');
139
139
  var index$K = require('./components/row/index.js');
140
140
  var util = require('./components/scrollbar/src/util.js');
141
- var scrollbar = require('./components/scrollbar/src/scrollbar.js');
141
+ var scrollbar = require('./components/scrollbar/src/scrollbar2.js');
142
142
  var thumb = require('./components/scrollbar/src/thumb.js');
143
143
  var constants$d = require('./components/scrollbar/src/constants.js');
144
144
  var index$L = require('./components/scrollbar/index.js');
@@ -158,7 +158,7 @@ var index$Q = require('./components/space/index.js');
158
158
  var statistic = require('./components/statistic/src/statistic.js');
159
159
  var index$R = require('./components/statistic/index.js');
160
160
  var item = require('./components/steps/src/item.js');
161
- var steps = require('./components/steps/src/steps2.js');
161
+ var steps = require('./components/steps/src/steps.js');
162
162
  var index$S = require('./components/steps/index.js');
163
163
  var _switch = require('./components/switch/src/switch.js');
164
164
  var index$T = require('./components/switch/index.js');
@@ -199,7 +199,7 @@ var index$11 = require('./components/transfer/index.js');
199
199
  var index$12 = require('./components/tree/index.js');
200
200
  var index$13 = require('./components/tree-select/index.js');
201
201
  var index$14 = require('./components/tree-v2/index.js');
202
- var upload = require('./components/upload/src/upload.js');
202
+ var upload = require('./components/upload/src/upload2.js');
203
203
  var uploadContent = require('./components/upload/src/upload-content.js');
204
204
  var uploadList = require('./components/upload/src/upload-list.js');
205
205
  var uploadDragger = require('./components/upload/src/upload-dragger.js');
@@ -210,7 +210,7 @@ var dynamicSizeList = require('./components/virtual-list/src/components/dynamic-
210
210
  var fixedSizeGrid = require('./components/virtual-list/src/components/fixed-size-grid.js');
211
211
  var dynamicSizeGrid = require('./components/virtual-list/src/components/dynamic-size-grid.js');
212
212
  var props$1 = require('./components/virtual-list/src/props.js');
213
- var watermark = require('./components/watermark/src/watermark.js');
213
+ var watermark = require('./components/watermark/src/watermark2.js');
214
214
  var index$16 = require('./components/watermark/index.js');
215
215
  var index$17 = require('./components/infinite-scroll/index.js');
216
216
  var index$18 = require('./components/loading/index.js');
package/lib/version.d.ts CHANGED
@@ -1 +1 @@
1
- export declare const version = "0.0.20231104";
1
+ export declare const version = "0.0.20231106";
package/lib/version.js CHANGED
@@ -2,7 +2,7 @@
2
2
 
3
3
  Object.defineProperty(exports, '__esModule', { value: true });
4
4
 
5
- const version = "0.0.20231104";
5
+ const version = "0.0.20231106";
6
6
 
7
7
  exports.version = version;
8
8
  //# sourceMappingURL=version.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"version.js","sources":["../../../packages/element-plus/version.ts"],"sourcesContent":["export const version = '0.0.20231104'\n"],"names":[],"mappings":";;;;AAAY,MAAC,OAAO,GAAG;;;;"}
1
+ {"version":3,"file":"version.js","sources":["../../../packages/element-plus/version.ts"],"sourcesContent":["export const version = '0.0.20231106'\n"],"names":[],"mappings":";;;;AAAY,MAAC,OAAO,GAAG;;;;"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@element-plus/nightly",
3
- "version": "0.0.20231104",
3
+ "version": "0.0.20231106",
4
4
  "description": "A Component Library for Vue 3",
5
5
  "keywords": [
6
6
  "element-plus",
@@ -112,5 +112,5 @@
112
112
  "not ie 11",
113
113
  "not op_mini all"
114
114
  ],
115
- "gitHead": "4e62015a70486f7a7cde5557c27a5e63229a5759"
115
+ "gitHead": "dfad5539f5c51ae11378378ac73d90c53e33b274"
116
116
  }
package/tags.json CHANGED
@@ -1 +1 @@
1
- {"el-affix":{"attributes":["offset","position","target","z-index","change","scroll"],"description":"Fix the element to a specific visible area.\n\n[Docs](https://element-plus.org/en-US/component/affix.html#affix)"},"el-alert":{"attributes":["title","type","description","closable","center","close-text","show-icon","effect","close"],"description":"Displays important alert messages.\n\n[Docs](https://element-plus.org/en-US/component/alert.html#alert)"},"el-autocomplete":{"attributes":["model-value","placeholder","clearable","disabled","value-key","debounce","placement","fetch-suggestions","trigger-on-focus","select-when-unmatched","name","label","hide-loading","popper-class","popper-append-to-body","teleported","highlight-first-item","fit-input-width","select","change"],"description":"Get some recommended tips based on the current input.\n\n[Docs](https://element-plus.org/en-US/component/autocomplete.html#autocomplete)"},"el-avatar":{"attributes":["icon","size","shape","src","src-set","alt","fit","error"],"description":"Avatars can be used to represent people or objects. It supports images, Icons, or characters.\n\n[Docs](https://element-plus.org/en-US/component/avatar.html#avatar)"},"el-backtop":{"attributes":["target","visibility-height","right","bottom","click"],"description":"A button to back to top.\n\n[Docs](https://element-plus.org/en-US/component/backtop.html#backtop)"},"el-badge":{"attributes":["value","max","is-dot","hidden","type"],"description":"A number or status mark on buttons and icons.\n\n[Docs](https://element-plus.org/en-US/component/badge.html#badge)"},"el-breadcrumb":{"attributes":["separator","separator-icon"],"subtags":["el-breadcrumb-item"],"description":"Displays the location of the current page, making it easier to browser back.\n\n[Docs](https://element-plus.org/en-US/component/breadcrumb.html#breadcrumb)"},"el-breadcrumb-item":{"attributes":["to","replace"],"description":"[Docs](https://element-plus.org/en-US/component/breadcrumb.html#breadcrumbitem)"},"el-button":{"attributes":["size","type","plain","text","bg","link","round","circle","loading","loading-icon","disabled","icon","autofocus","native-type","auto-insert-space","color","dark","tag"],"description":"Commonly used button.\n\n[Docs](https://element-plus.org/en-US/component/button.html#button)"},"el-button-group":{"attributes":["size","type"],"subtags":["el-button"],"description":"[Docs](https://element-plus.org/en-US/component/button.html#buttongroup)"},"el-calendar":{"attributes":["model-value","range"],"description":"Display date.\n\n[Docs](https://element-plus.org/en-US/component/calendar.html#calendar)"},"el-card":{"attributes":["header","body-style","body-class","shadow"],"description":"Integrate information in a card container.\n\n[Docs](https://element-plus.org/en-US/component/card.html#card)"},"el-carousel":{"attributes":["height","initial-index","trigger","autoplay","interval","indicator-position","arrow","type","loop","direction","pause-on-hover","change"],"subtags":["el-carousel-item"],"description":"Loop a series of images or texts in a limited space\n\n[Docs](https://element-plus.org/en-US/component/carousel.html#carousel)"},"el-carousel-item":{"attributes":["name","label"],"description":"[Docs](https://element-plus.org/en-US/component/carousel.html#carousel-item)"},"el-cascader":{"attributes":["model-value","options","props","size","placeholder","disabled","clearable","show-all-levels","collapse-tags","collapse-tags-tooltip","separator","filterable","filter-method","debounce","before-filter","popper-class","teleported","popper-append-to-body","tag-type","validate-event","max-collapse-tags","change","expand-change","blur","focus","visible-change","remove-tag"],"description":"If the options have a clear hierarchical structure, Cascader can be used to view and select them.\n\n[Docs](https://element-plus.org/en-US/component/cascader.html#cascader)"},"el-cascader-panel":{"attributes":["model-value","options","props","change","expand-change","close"],"description":"[Docs](https://element-plus.org/en-US/component/cascader.html#cascaderpanel)"},"el-checkbox":{"attributes":["model-value","label","true-label","false-label","disabled","border","size","name","checked","indeterminate","validate-event","tabindex","id","controls","change"],"description":"A group of options for multiple choices.\n\n[Docs](https://element-plus.org/en-US/component/checkbox.html#checkbox)"},"el-checkbox-group":{"attributes":["model-value","size","disabled","min","max","label","text-color","fill","tag","validate-event","change"],"subtags":["el-checkbox","el-checkbox-button"],"description":"[Docs](https://element-plus.org/en-US/component/checkbox.html#checkboxgroup)"},"el-checkbox-button":{"attributes":["label","true-label","false-label","disabled","name","checked"],"description":"[Docs](https://element-plus.org/en-US/component/checkbox.html#checkboxbutton)"},"el-collapse":{"attributes":["model-value","accordion","change"],"subtags":["el-collapse-item"],"description":"Use Collapse to store contents.\n\n[Docs](https://element-plus.org/en-US/component/collapse.html#collapse)"},"el-collapse-item":{"attributes":["name","title","disabled"],"description":"[Docs](https://element-plus.org/en-US/component/collapse.html#collapse-item)"},"el-color-picker":{"attributes":["model-value","disabled","size","show-alpha","color-format","popper-class","predefine","validate-event","tabindex","label","id","change","active-change","focus","blur"],"description":"ColorPicker is a color selector supporting multiple color formats.\n\n[Docs](https://element-plus.org/en-US/component/color-picker.html#colorpicker)"},"el-config-provider":{"attributes":["locale","size","z-index","namespace","button","message","experimental-features"],"description":"Config Provider is used for providing global configurations, which enables your entire application to access these configurations everywhere.\n\n[Docs](https://element-plus.org/en-US/component/config-provider.html#config-provider)"},"el-container":{"attributes":["direction"],"subtags":["el-container","el-header","el-aside","el-main","el-footer"],"description":"Container components for scaffolding basic structure of the page:\n\n[Docs](https://element-plus.org/en-US/component/container.html#container)"},"el-header":{"attributes":["height"],"description":"[Docs](https://element-plus.org/en-US/component/container.html#header)"},"el-aside":{"attributes":["width"],"description":"[Docs](https://element-plus.org/en-US/component/container.html#aside)"},"el-main":{"description":"[Docs](https://element-plus.org/en-US/component/container.html#main)"},"el-footer":{"attributes":["height"],"description":"[Docs](https://element-plus.org/en-US/component/container.html#footer)"},"el-date-picker":{"attributes":["model-value","readonly","disabled","size","editable","clearable","placeholder","start-placeholder","end-placeholder","type","format","popper-class","popper-options","range-separator","default-value","default-time","value-format","id","name","unlink-panels","prefix-icon","clear-icon","validate-event","disabled-date","shortcuts","cell-class-name","teleported","change","blur","focus","calendar-change","panel-change","visible-change"],"description":"Use Date Picker for date input.\n\n[Docs](https://element-plus.org/en-US/component/date-picker.html#datepicker)"},"el-descriptions":{"attributes":["border","column","direction","size","title","extra"],"subtags":["el-descriptions-item"],"description":"Display multiple fields in list form.\n\n[Docs](https://element-plus.org/en-US/component/descriptions.html#descriptions)"},"el-descriptions-item":{"attributes":["label","span","width","min-width","align","label-align","class-name","label-class-name"],"description":"[Docs](https://element-plus.org/en-US/component/descriptions.html#descriptionsitem)"},"el-dialog":{"attributes":["model-value","title","width","fullscreen","top","modal","modal-class","append-to-body","lock-scroll","custom-class","open-delay","close-delay","close-on-click-modal","close-on-press-escape","show-close","before-close","draggable","center","align-center","destroy-on-close","close-icon","z-index","header-aria-level","open","opened","close","closed","open-auto-focus","close-auto-focus"],"description":"Informs users while preserving the current page state.\n\n[Docs](https://element-plus.org/en-US/component/dialog.html#dialog)"},"el-divider":{"attributes":["direction","border-style","content-position"],"description":"The dividing line that separates the content.\n\n[Docs](https://element-plus.org/en-US/component/divider.html#divider)"},"el-drawer":{"attributes":["model-value","append-to-body","lock-scroll","before-close","close-on-click-modal","close-on-press-escape","open-delay","close-delay","custom-class","destroy-on-close","modal","direction","show-close","size","title","with-header","modal-class","z-index","header-aria-level","open","opened","close","closed"],"description":"Sometimes, `Dialog` does not always satisfy our requirements, let's say you have a massive form, or you need space to display something like `terms & conditions`, `Drawer` has almost identical API with `Dialog`, but it introduces different user experience.\n\n[Docs](https://element-plus.org/en-US/component/drawer.html#drawer)"},"el-dropdown":{"attributes":["type","size","max-height","split-button","disabled","placement","trigger","hide-on-click","show-timeout","hide-timeout","role","tabindex","popper-class","popper-options","teleported","click","command","visible-change"],"subtags":["el-dropdown-menu"],"description":"Toggleable menu for displaying lists of links and actions.\n\n[Docs](https://element-plus.org/en-US/component/dropdown.html#dropdown)"},"el-dropdown-menu":{"subtags":["el-dropdown-item"],"description":"[Docs](https://element-plus.org/en-US/component/dropdown.html#dropdown-menu)"},"el-dropdown-item":{"attributes":["command","disabled","divided","icon"],"description":"[Docs](https://element-plus.org/en-US/component/dropdown.html#dropdown-item)"},"el-empty":{"attributes":["image","image-size","description"],"description":"Placeholder hints for empty states.\n\n[Docs](https://element-plus.org/en-US/component/empty.html#empty)"},"el-form":{"attributes":["model","rules","inline","label-position","label-width","label-suffix","hide-required-asterisk","require-asterisk-position","show-message","inline-message","status-icon","validate-on-rule-change","size","disabled","scroll-to-error","scroll-into-view-options","validate"],"subtags":["el-form-item"],"description":"Form consists of `input`, `radio`, `select`, `checkbox` and so on. With form, you can collect, verify and submit data.\n\n[Docs](https://element-plus.org/en-US/component/form.html#form)"},"el-form-item":{"attributes":["prop","label","label-width","required","rules","error","show-message","inline-message","size","for","validate-status"],"description":"[Docs](https://element-plus.org/en-US/component/form.html#formitem)"},"el-icon":{"attributes":["color","size"],"description":"Element Plus provides a set of common icons.\n\n[Docs](https://element-plus.org/en-US/component/icon.html#icon)"},"el-image":{"attributes":["src","fit","hide-on-click-modal","loading","lazy","scroll-container","alt","referrerpolicy","preview-src-list","z-index","initial-index","close-on-press-escape","preview-teleported","infinite","zoom-rate","min-scale","max-scale","load","error","switch","close","show"],"description":"Besides the native features of img, support lazy load, custom placeholder and load failure, etc.\n\n[Docs](https://element-plus.org/en-US/component/image.html#image)"},"el-image-viewer":{"attributes":["url-list","z-index","initial-index","infinite","hide-on-click-modal","teleported","zoom-rate","min-scale","max-scale","close-on-press-escape","close","switch","rotate"],"description":"[Docs](https://element-plus.org/en-US/component/image.html#image-viewer)"},"el-input-number":{"attributes":["model-value","min","max","step","step-strictly","precision","size","readonly","disabled","controls","controls-position","name","label","placeholder","id","value-on-clear","validate-event","change","blur","focus"],"description":"Input numerical values with a customizable range.\n\n[Docs](https://element-plus.org/en-US/component/input-number.html#input-number)"},"el-input":{"attributes":["type","model-value","maxlength","minlength","show-word-limit","placeholder","clearable","formatter","parser","show-password","disabled","size","prefix-icon","suffix-icon","rows","autosize","autocomplete","name","readonly","max","min","step","resize","autofocus","form","label","tabindex","validate-event","input-style","blur","focus","change","input","clear"],"description":"Input data using mouse or keyboard.\n\n[Docs](https://element-plus.org/en-US/component/input.html#input)"},"el-row":{"attributes":["gutter","justify","align","tag"],"subtags":["el-col"],"description":"[Docs](https://element-plus.org/en-US/component/layout.html#row)"},"el-col":{"attributes":["span","offset","push","pull","xs","sm","md","lg","xl","tag"],"description":"[Docs](https://element-plus.org/en-US/component/layout.html#col)"},"el-link":{"attributes":["type","underline","disabled","href","icon"],"description":"Text hyperlink\n\n[Docs](https://element-plus.org/en-US/component/link.html#link)"},"el-menu":{"attributes":["mode","collapse","ellipsis","background-color","text-color","active-text-color","default-active","default-openeds","unique-opened","menu-trigger","router","collapse-transition","popper-effect","select","open","close"],"subtags":["el-sub-menu","el-menu-item","el-menu-item-group"],"description":"Menu that provides navigation for your website.\n\n[Docs](https://element-plus.org/en-US/component/menu.html#menu)"},"el-sub-menu":{"attributes":["index","popper-class","show-timeout","hide-timeout","disabled","popper-append-to-body","teleported","popper-offset","expand-close-icon","expand-open-icon","collapse-close-icon","collapse-open-icon"],"subtags":["el-sub-menu","el-menu-item","el-menu-item-group"],"description":"[Docs](https://element-plus.org/en-US/component/menu.html#submenu)"},"el-menu-item":{"attributes":["index","route","disabled","click"],"description":"[Docs](https://element-plus.org/en-US/component/menu.html#menu-item)"},"el-menu-item-group":{"attributes":["title"],"subtags":["el-menu-item"],"description":"[Docs](https://element-plus.org/en-US/component/menu.html#menu-item-group)"},"el-page-header":{"attributes":["icon","title","content","back"],"description":"If path of the page is simple, it is recommended to use PageHeader instead of the Breadcrumb.\n\n[Docs](https://element-plus.org/en-US/component/page-header.html#page-header)"},"el-pagination":{"attributes":["small","background","page-size","default-page-size","total","page-count","pager-count","current-page","default-current-page","layout","page-sizes","popper-class","prev-text","prev-icon","next-text","next-icon","disabled","teleported","hide-on-single-page","size-change","current-change","prev-click","next-click"],"description":"If you have too much data to display in one page, use pagination.\n\n[Docs](https://element-plus.org/en-US/component/pagination.html#pagination)"},"el-popconfirm":{"attributes":["title","confirm-button-text","cancel-button-text","confirm-button-type","cancel-button-type","icon","icon-color","hide-icon","hide-after","teleported","persistent","width","confirm","cancel"],"description":"A simple confirmation dialog of an element click action.\n\n[Docs](https://element-plus.org/en-US/component/popconfirm.html#popconfirm)"},"el-popover":{"attributes":["trigger","title","effect","content","width","placement","disabled","visible","offset","transition","show-arrow","popper-options","popper-class","popper-style","show-after","hide-after","auto-close","tabindex","teleported","persistent","show","before-enter","after-enter","hide","before-leave","after-leave"],"description":":::tip\n\n[Docs](https://element-plus.org/en-US/component/popover.html#popover)"},"el-progress":{"attributes":["percentage","type","stroke-width","text-inside","status","indeterminate","duration","color","width","show-text","stroke-linecap","format","striped","striped-flow"],"description":"Progress is used to show the progress of current operation, and inform the user the current status.\n\n[Docs](https://element-plus.org/en-US/component/progress.html#progress)"},"el-radio":{"attributes":["model-value","label","disabled","border","size","name","change"],"description":"Single selection among multiple options.\n\n[Docs](https://element-plus.org/en-US/component/radio.html#radio)"},"el-radio-group":{"attributes":["model-value","size","disabled","text-color","fill","validate-event","label","name","id","change"],"subtags":["el-radio","el-radio-button"],"description":"[Docs](https://element-plus.org/en-US/component/radio.html#radiogroup)"},"el-radio-button":{"attributes":["label","disabled","name"],"description":"[Docs](https://element-plus.org/en-US/component/radio.html#radiobutton)"},"el-rate":{"attributes":["model-value","max","size","disabled","allow-half","low-threshold","high-threshold","colors","void-color","disabled-void-color","icons","void-icon","disabled-void-icon","show-text","show-score","text-color","texts","score-template","clearable","id","label","change"],"description":"Used for rating\n\n[Docs](https://element-plus.org/en-US/component/rate.html#rate)"},"el-result":{"attributes":["title","sub-title","icon"],"description":"Used to give feedback on the result of user's operation or access exception.\n\n[Docs](https://element-plus.org/en-US/component/result.html#result)"},"el-scrollbar":{"attributes":["height","max-height","native","wrap-style","wrap-class","view-style","view-class","noresize","tag","always","min-size","id","role","aria-label","aria-orientation","scroll"],"description":"Used to replace the browser's native scrollbar.\n\n[Docs](https://element-plus.org/en-US/component/scrollbar.html#scrollbar)"},"el-select-v2":{"attributes":["model-value","options","props","multiple","disabled","value-key","size","clearable","clear-icon","collapse-tags","multiple-limit","name","effect","autocomplete","placeholder","filterable","allow-create","reserve-keyword","no-data-text","popper-class","popper-append-to-body","teleported","persistent","popper-options","automatic-dropdown","height","item-height","scrollbar-always-on","remote","remote-method","validate-event","placement","collapse-tags-tooltip","max-collapse-tags","change","visible-change","remove-tag","clear","blur","focus"],"description":"[Docs](https://element-plus.org/en-US/component/select-v2.html#selectv2)"},"el-select":{"attributes":["model-value","multiple","disabled","value-key","size","clearable","collapse-tags","collapse-tags-tooltip","multiple-limit","name","effect","autocomplete","placeholder","filterable","allow-create","filter-method","remote","remote-method","remote-show-suffix","loading","loading-text","no-match-text","no-data-text","popper-class","reserve-keyword","default-first-option","teleported","persistent","automatic-dropdown","clear-icon","fit-input-width","suffix-icon","suffix-transition","tag-type","validate-event","placement","max-collapse-tags","popper-options","aria-label","change","visible-change","remove-tag","clear","blur","focus"],"subtags":["el-option-group","el-option"],"description":"When there are plenty of options, use a drop-down menu to display and select desired ones.\n\n[Docs](https://element-plus.org/en-US/component/select.html#select)"},"el-option-group":{"attributes":["label","disabled"],"subtags":["el-option"],"description":"[Docs](https://element-plus.org/en-US/component/select.html#option-group)"},"el-option":{"attributes":["value","label","disabled"],"description":"[Docs](https://element-plus.org/en-US/component/select.html#option)"},"el-skeleton":{"attributes":["animated","count","loading","rows","throttle"],"description":"When loading data, and you need a rich experience for visual and interactions for your end users, you can choose `skeleton`.\n\n[Docs](https://element-plus.org/en-US/component/skeleton.html#skeleton)"},"el-skeleton-item":{"attributes":["variant"],"description":"[Docs](https://element-plus.org/en-US/component/skeleton.html#skeletonitem)"},"el-slider":{"attributes":["model-value","min","max","disabled","step","show-input","show-input-controls","size","input-size","show-stops","show-tooltip","format-tooltip","range","vertical","height","label","range-start-label","range-end-label","format-value-text","debounce","tooltip-class","placement","marks","validate-event","change","input"],"description":"Drag the slider within a fixed range.\n\n[Docs](https://element-plus.org/en-US/component/slider.html#slider)"},"el-space":{"attributes":["alignment","class","direction","prefix-cls","style","spacer","size","wrap","fill","fill-ratio"],"description":"Even though we have [Divider]\n\n[Docs](https://element-plus.org/en-US/component/space.html#space)"},"el-statistic":{"description":"Display statistics.\n\n[Docs](https://element-plus.org/en-US/component/statistic.html#statistic)"},"el-countdown":{"description":":::demo Countdown component, support to add other components control countdown.\n\n[Docs](https://element-plus.org/en-US/component/statistic.html#countdown)"},"el-steps":{"attributes":["space","direction","active","process-status","finish-status","align-center","simple"],"subtags":["el-step"],"description":"Guide the user to complete tasks in accordance with the process. Its steps can be set according to the actual application scenario and the number of the steps can't be less than 2.\n\n[Docs](https://element-plus.org/en-US/component/steps.html#steps)"},"el-step":{"attributes":["title","description","icon","status"],"description":"[Docs](https://element-plus.org/en-US/component/steps.html#step)"},"el-switch":{"attributes":["model-value","disabled","loading","size","width","inline-prompt","active-icon","inactive-icon","active-action-icon","inactive-action-icon","active-text","inactive-text","active-value","inactive-value","active-color","inactive-color","border-color","name","validate-event","before-change","id","tabindex","label","change"],"description":"Switch is used for switching between two opposing states.\n\n[Docs](https://element-plus.org/en-US/component/switch.html#switch)"},"el-table-v2":{"attributes":["cache","estimated-row-height","header-class","header-props","header-cell-props","header-height","footer-height","row-class","row-key","row-props","row-height","cell-props","columns","data","data-getter","fixed-data","expand-column-key","expanded-row-keys","default-expanded-row-keys","class","fixed","width","height","max-height","h-scrollbar-size","v-scrollbar-size","scrollbar-always-on","sort-by","sort-state","column-sort","expanded-rows-change","end-reached","scroll","rows-rendered","row-expand","row-event-handlers"],"description":"[Docs](https://element-plus.org/en-US/component/table-v2.html#tablev2)"},"el-table":{"attributes":["data","height","max-height","stripe","border","size","fit","show-header","highlight-current-row","current-row-key","row-class-name","row-style","cell-class-name","cell-style","header-row-class-name","header-row-style","header-cell-class-name","header-cell-style","row-key","empty-text","default-expand-all","expand-row-keys","default-sort","tooltip-effect","tooltip-options","show-summary","sum-text","summary-method","span-method","select-on-indeterminate","indent","lazy","load","tree-props","table-layout","scrollbar-always-on","show-overflow-tooltip","flexible","select","select-all","selection-change","cell-mouse-enter","cell-mouse-leave","cell-click","cell-dblclick","cell-contextmenu","row-click","row-contextmenu","row-dblclick","header-click","header-contextmenu","sort-change","filter-change","current-change","header-dragend","expand-change"],"subtags":["el-table-column"],"description":"Display multiple data with similar format. You can sort, filter, compare your data in a table.\n\n[Docs](https://element-plus.org/en-US/component/table.html#table)"},"el-table-column":{"attributes":["type","index","label","column-key","prop","width","min-width","fixed","render-header","sortable","sort-method","sort-by","sort-orders","resizable","formatter","show-overflow-tooltip","align","header-align","class-name","label-class-name","selectable","reserve-selection","filters","filter-placement","filter-multiple","filter-method","filtered-value"],"description":"[Docs](https://element-plus.org/en-US/component/table.html#table-column)"},"el-tabs":{"attributes":["model-value","type","closable","addable","editable","tab-position","stretch","before-leave","tab-click","tab-change","tab-remove","tab-add","edit"],"subtags":["el-tab-pane"],"description":"Divide data collections which are related yet belong to different types.\n\n[Docs](https://element-plus.org/en-US/component/tabs.html#tabs)"},"el-tab-pane":{"attributes":["label","disabled","name","closable","lazy"],"description":"[Docs](https://element-plus.org/en-US/component/tabs.html#tab-pane)"},"el-tag":{"attributes":["type","closable","disable-transitions","hit","color","size","effect","round","click","close"],"description":"Used for marking and selection.\n\n[Docs](https://element-plus.org/en-US/component/tag.html#tag)"},"el-check-tag":{"attributes":["checked","change"],"description":"[Docs](https://element-plus.org/en-US/component/tag.html#checktag)"},"el-text":{"attributes":["type","size","truncated","line-clamp","tag"],"description":"Used for text.\n\n[Docs](https://element-plus.org/en-US/component/text.html#text)"},"el-time-picker":{"attributes":["model-value","readonly","disabled","editable","clearable","size","placeholder","start-placeholder","end-placeholder","is-range","arrow-control","popper-class","range-separator","format","default-value","id","name","label","prefix-icon","clear-icon","disabled-hours","disabled-minutes","disabled-seconds","teleported","tabindex","change","blur","focus","visible-change"],"description":"Use Time Picker for time input.\n\n[Docs](https://element-plus.org/en-US/component/time-picker.html#timepicker)"},"el-time-select":{"attributes":["model-value","disabled","editable","clearable","size","placeholder","name","effect","prefix-icon","clear-icon","start","end","step","min-time","max-time","format","change","blur","focus"],"description":"Use Time Select for time input.\n\n[Docs](https://element-plus.org/en-US/component/time-select.html#timeselect)"},"el-timeline":{"subtags":["el-timeline-item"],"description":"Visually display timeline.\n\n[Docs](https://element-plus.org/en-US/component/timeline.html#timeline)"},"el-timeline-item":{"attributes":["timestamp","hide-timestamp","center","placement","type","color","size","icon","hollow"],"description":"[Docs](https://element-plus.org/en-US/component/timeline.html#timeline-item)"},"el-tooltip":{"attributes":["append-to","effect","content","raw-content","placement","visible","disabled","offset","transition","popper-options","show-after","show-arrow","hide-after","auto-close","popper-class","enterable","teleported","trigger","virtual-triggering","virtual-ref","trigger-keys","persistent","aria-label"],"description":"Display prompt information for mouse hover.\n\n[Docs](https://element-plus.org/en-US/component/tooltip.html#tooltip)"},"el-transfer":{"attributes":["model-value","data","filterable","filter-placeholder","filter-method","target-order","titles","button-texts","render-content","format","props","left-default-checked","right-default-checked","validate-event","change","left-check-change","right-check-change"],"description":"[Docs](https://element-plus.org/en-US/component/transfer.html#transfer)"},"el-own":{"attributes":["cache-data"],"description":"[Docs](https://element-plus.org/en-US/component/tree-select.html#own)"},"el-tree-v2":{"attributes":["data","empty-text","props","highlight-current","expand-on-click-node","check-on-click-node","default-expanded-keys","show-checkbox","check-strictly","default-checked-keys","current-node-key","filter-method","indent","icon","item-size","node-click","node-contextmenu","check-change","check","current-change","node-expand","node-collapse"],"description":"[Docs](https://element-plus.org/en-US/component/tree-v2.html#treev2)"},"el-tree":{"attributes":["data","empty-text","node-key","props","render-after-expand","load","render-content","highlight-current","default-expand-all","expand-on-click-node","check-on-click-node","auto-expand-parent","default-expanded-keys","show-checkbox","check-strictly","default-checked-keys","current-node-key","filter-node-method","accordion","indent","icon","lazy","draggable","allow-drag","allow-drop","node-click","node-contextmenu","check-change","check","current-change","node-expand","node-collapse","node-drag-start","node-drag-enter","node-drag-leave","node-drag-over","node-drag-end","node-drop"],"description":"Display a set of data with hierarchies.\n\n[Docs](https://element-plus.org/en-US/component/tree.html#tree)"},"el-upload":{"attributes":["action","headers","method","multiple","data","name","with-credentials","show-file-list","drag","accept","on-preview","on-remove","on-success","on-error","on-progress","on-change","on-exceed","before-upload","before-remove","file-list","list-type","auto-upload","http-request","disabled","limit"],"description":"Upload files by clicking or drag-and-drop.\n\n[Docs](https://element-plus.org/en-US/component/upload.html#upload)"},"el-watermark":{"attributes":["width","height","rotate","z-index","image","content","font","gap","offset"],"description":"Add specific text or patterns to the page.\n\n[Docs](https://element-plus.org/en-US/component/watermark.html#watermark)"}}
1
+ {"el-affix":{"attributes":["offset","position","target","z-index","change","scroll"],"description":"Fix the element to a specific visible area.\n\n[Docs](https://element-plus.org/en-US/component/affix.html#affix)"},"el-alert":{"attributes":["title","type","description","closable","center","close-text","show-icon","effect","close"],"description":"Displays important alert messages.\n\n[Docs](https://element-plus.org/en-US/component/alert.html#alert)"},"el-autocomplete":{"attributes":["model-value","placeholder","clearable","disabled","value-key","debounce","placement","fetch-suggestions","trigger-on-focus","select-when-unmatched","name","label","hide-loading","popper-class","popper-append-to-body","teleported","highlight-first-item","fit-input-width","select","change"],"description":"Get some recommended tips based on the current input.\n\n[Docs](https://element-plus.org/en-US/component/autocomplete.html#autocomplete)"},"el-avatar":{"attributes":["icon","size","shape","src","src-set","alt","fit","error"],"description":"Avatars can be used to represent people or objects. It supports images, Icons, or characters.\n\n[Docs](https://element-plus.org/en-US/component/avatar.html#avatar)"},"el-backtop":{"attributes":["target","visibility-height","right","bottom","click"],"description":"A button to back to top.\n\n[Docs](https://element-plus.org/en-US/component/backtop.html#backtop)"},"el-badge":{"attributes":["value","max","is-dot","hidden","type"],"description":"A number or status mark on buttons and icons.\n\n[Docs](https://element-plus.org/en-US/component/badge.html#badge)"},"el-breadcrumb":{"attributes":["separator","separator-icon"],"subtags":["el-breadcrumb-item"],"description":"Displays the location of the current page, making it easier to browser back.\n\n[Docs](https://element-plus.org/en-US/component/breadcrumb.html#breadcrumb)"},"el-breadcrumb-item":{"attributes":["to","replace"],"description":"[Docs](https://element-plus.org/en-US/component/breadcrumb.html#breadcrumbitem)"},"el-button":{"attributes":["size","type","plain","text","bg","link","round","circle","loading","loading-icon","disabled","icon","autofocus","native-type","auto-insert-space","color","dark","tag"],"description":"Commonly used button.\n\n[Docs](https://element-plus.org/en-US/component/button.html#button)"},"el-button-group":{"attributes":["size","type"],"subtags":["el-button"],"description":"[Docs](https://element-plus.org/en-US/component/button.html#buttongroup)"},"el-calendar":{"attributes":["model-value","range"],"description":"Display date.\n\n[Docs](https://element-plus.org/en-US/component/calendar.html#calendar)"},"el-card":{"attributes":["header","footer","body-style","body-class","shadow"],"description":"Integrate information in a card container.\n\n[Docs](https://element-plus.org/en-US/component/card.html#card)"},"el-carousel":{"attributes":["height","initial-index","trigger","autoplay","interval","indicator-position","arrow","type","loop","direction","pause-on-hover","change"],"subtags":["el-carousel-item"],"description":"Loop a series of images or texts in a limited space\n\n[Docs](https://element-plus.org/en-US/component/carousel.html#carousel)"},"el-carousel-item":{"attributes":["name","label"],"description":"[Docs](https://element-plus.org/en-US/component/carousel.html#carousel-item)"},"el-cascader":{"attributes":["model-value","options","props","size","placeholder","disabled","clearable","show-all-levels","collapse-tags","collapse-tags-tooltip","separator","filterable","filter-method","debounce","before-filter","popper-class","teleported","popper-append-to-body","tag-type","validate-event","max-collapse-tags","change","expand-change","blur","focus","visible-change","remove-tag"],"description":"If the options have a clear hierarchical structure, Cascader can be used to view and select them.\n\n[Docs](https://element-plus.org/en-US/component/cascader.html#cascader)"},"el-cascader-panel":{"attributes":["model-value","options","props","change","expand-change","close"],"description":"[Docs](https://element-plus.org/en-US/component/cascader.html#cascaderpanel)"},"el-checkbox":{"attributes":["model-value","label","true-label","false-label","disabled","border","size","name","checked","indeterminate","validate-event","tabindex","id","controls","change"],"description":"A group of options for multiple choices.\n\n[Docs](https://element-plus.org/en-US/component/checkbox.html#checkbox)"},"el-checkbox-group":{"attributes":["model-value","size","disabled","min","max","label","text-color","fill","tag","validate-event","change"],"subtags":["el-checkbox","el-checkbox-button"],"description":"[Docs](https://element-plus.org/en-US/component/checkbox.html#checkboxgroup)"},"el-checkbox-button":{"attributes":["label","true-label","false-label","disabled","name","checked"],"description":"[Docs](https://element-plus.org/en-US/component/checkbox.html#checkboxbutton)"},"el-collapse":{"attributes":["model-value","accordion","change"],"subtags":["el-collapse-item"],"description":"Use Collapse to store contents.\n\n[Docs](https://element-plus.org/en-US/component/collapse.html#collapse)"},"el-collapse-item":{"attributes":["name","title","disabled"],"description":"[Docs](https://element-plus.org/en-US/component/collapse.html#collapse-item)"},"el-color-picker":{"attributes":["model-value","disabled","size","show-alpha","color-format","popper-class","predefine","validate-event","tabindex","label","id","change","active-change","focus","blur"],"description":"ColorPicker is a color selector supporting multiple color formats.\n\n[Docs](https://element-plus.org/en-US/component/color-picker.html#colorpicker)"},"el-config-provider":{"attributes":["locale","size","z-index","namespace","button","message","experimental-features"],"description":"Config Provider is used for providing global configurations, which enables your entire application to access these configurations everywhere.\n\n[Docs](https://element-plus.org/en-US/component/config-provider.html#config-provider)"},"el-container":{"attributes":["direction"],"subtags":["el-container","el-header","el-aside","el-main","el-footer"],"description":"Container components for scaffolding basic structure of the page:\n\n[Docs](https://element-plus.org/en-US/component/container.html#container)"},"el-header":{"attributes":["height"],"description":"[Docs](https://element-plus.org/en-US/component/container.html#header)"},"el-aside":{"attributes":["width"],"description":"[Docs](https://element-plus.org/en-US/component/container.html#aside)"},"el-main":{"description":"[Docs](https://element-plus.org/en-US/component/container.html#main)"},"el-footer":{"attributes":["height"],"description":"[Docs](https://element-plus.org/en-US/component/container.html#footer)"},"el-date-picker":{"attributes":["model-value","readonly","disabled","size","editable","clearable","placeholder","start-placeholder","end-placeholder","type","format","popper-class","popper-options","range-separator","default-value","default-time","value-format","id","name","unlink-panels","prefix-icon","clear-icon","validate-event","disabled-date","shortcuts","cell-class-name","teleported","change","blur","focus","calendar-change","panel-change","visible-change"],"description":"Use Date Picker for date input.\n\n[Docs](https://element-plus.org/en-US/component/date-picker.html#datepicker)"},"el-descriptions":{"attributes":["border","column","direction","size","title","extra"],"subtags":["el-descriptions-item"],"description":"Display multiple fields in list form.\n\n[Docs](https://element-plus.org/en-US/component/descriptions.html#descriptions)"},"el-descriptions-item":{"attributes":["label","span","width","min-width","align","label-align","class-name","label-class-name"],"description":"[Docs](https://element-plus.org/en-US/component/descriptions.html#descriptionsitem)"},"el-dialog":{"attributes":["model-value","title","width","fullscreen","top","modal","modal-class","append-to-body","lock-scroll","custom-class","open-delay","close-delay","close-on-click-modal","close-on-press-escape","show-close","before-close","draggable","center","align-center","destroy-on-close","close-icon","z-index","header-aria-level","open","opened","close","closed","open-auto-focus","close-auto-focus"],"description":"Informs users while preserving the current page state.\n\n[Docs](https://element-plus.org/en-US/component/dialog.html#dialog)"},"el-divider":{"attributes":["direction","border-style","content-position"],"description":"The dividing line that separates the content.\n\n[Docs](https://element-plus.org/en-US/component/divider.html#divider)"},"el-drawer":{"attributes":["model-value","append-to-body","lock-scroll","before-close","close-on-click-modal","close-on-press-escape","open-delay","close-delay","custom-class","destroy-on-close","modal","direction","show-close","size","title","with-header","modal-class","z-index","header-aria-level","open","opened","close","closed"],"description":"Sometimes, `Dialog` does not always satisfy our requirements, let's say you have a massive form, or you need space to display something like `terms & conditions`, `Drawer` has almost identical API with `Dialog`, but it introduces different user experience.\n\n[Docs](https://element-plus.org/en-US/component/drawer.html#drawer)"},"el-dropdown":{"attributes":["type","size","max-height","split-button","disabled","placement","trigger","hide-on-click","show-timeout","hide-timeout","role","tabindex","popper-class","popper-options","teleported","click","command","visible-change"],"subtags":["el-dropdown-menu"],"description":"Toggleable menu for displaying lists of links and actions.\n\n[Docs](https://element-plus.org/en-US/component/dropdown.html#dropdown)"},"el-dropdown-menu":{"subtags":["el-dropdown-item"],"description":"[Docs](https://element-plus.org/en-US/component/dropdown.html#dropdown-menu)"},"el-dropdown-item":{"attributes":["command","disabled","divided","icon"],"description":"[Docs](https://element-plus.org/en-US/component/dropdown.html#dropdown-item)"},"el-empty":{"attributes":["image","image-size","description"],"description":"Placeholder hints for empty states.\n\n[Docs](https://element-plus.org/en-US/component/empty.html#empty)"},"el-form":{"attributes":["model","rules","inline","label-position","label-width","label-suffix","hide-required-asterisk","require-asterisk-position","show-message","inline-message","status-icon","validate-on-rule-change","size","disabled","scroll-to-error","scroll-into-view-options","validate"],"subtags":["el-form-item"],"description":"Form consists of `input`, `radio`, `select`, `checkbox` and so on. With form, you can collect, verify and submit data.\n\n[Docs](https://element-plus.org/en-US/component/form.html#form)"},"el-form-item":{"attributes":["prop","label","label-width","required","rules","error","show-message","inline-message","size","for","validate-status"],"description":"[Docs](https://element-plus.org/en-US/component/form.html#formitem)"},"el-icon":{"attributes":["color","size"],"description":"Element Plus provides a set of common icons.\n\n[Docs](https://element-plus.org/en-US/component/icon.html#icon)"},"el-image":{"attributes":["src","fit","hide-on-click-modal","loading","lazy","scroll-container","alt","referrerpolicy","preview-src-list","z-index","initial-index","close-on-press-escape","preview-teleported","infinite","zoom-rate","min-scale","max-scale","load","error","switch","close","show"],"description":"Besides the native features of img, support lazy load, custom placeholder and load failure, etc.\n\n[Docs](https://element-plus.org/en-US/component/image.html#image)"},"el-image-viewer":{"attributes":["url-list","z-index","initial-index","infinite","hide-on-click-modal","teleported","zoom-rate","min-scale","max-scale","close-on-press-escape","close","switch","rotate"],"description":"[Docs](https://element-plus.org/en-US/component/image.html#image-viewer)"},"el-input-number":{"attributes":["model-value","min","max","step","step-strictly","precision","size","readonly","disabled","controls","controls-position","name","label","placeholder","id","value-on-clear","validate-event","change","blur","focus"],"description":"Input numerical values with a customizable range.\n\n[Docs](https://element-plus.org/en-US/component/input-number.html#input-number)"},"el-input":{"attributes":["type","model-value","maxlength","minlength","show-word-limit","placeholder","clearable","formatter","parser","show-password","disabled","size","prefix-icon","suffix-icon","rows","autosize","autocomplete","name","readonly","max","min","step","resize","autofocus","form","label","tabindex","validate-event","input-style","blur","focus","change","input","clear"],"description":"Input data using mouse or keyboard.\n\n[Docs](https://element-plus.org/en-US/component/input.html#input)"},"el-row":{"attributes":["gutter","justify","align","tag"],"subtags":["el-col"],"description":"[Docs](https://element-plus.org/en-US/component/layout.html#row)"},"el-col":{"attributes":["span","offset","push","pull","xs","sm","md","lg","xl","tag"],"description":"[Docs](https://element-plus.org/en-US/component/layout.html#col)"},"el-link":{"attributes":["type","underline","disabled","href","icon"],"description":"Text hyperlink\n\n[Docs](https://element-plus.org/en-US/component/link.html#link)"},"el-menu":{"attributes":["mode","collapse","ellipsis","background-color","text-color","active-text-color","default-active","default-openeds","unique-opened","menu-trigger","router","collapse-transition","popper-effect","select","open","close"],"subtags":["el-sub-menu","el-menu-item","el-menu-item-group"],"description":"Menu that provides navigation for your website.\n\n[Docs](https://element-plus.org/en-US/component/menu.html#menu)"},"el-sub-menu":{"attributes":["index","popper-class","show-timeout","hide-timeout","disabled","popper-append-to-body","teleported","popper-offset","expand-close-icon","expand-open-icon","collapse-close-icon","collapse-open-icon"],"subtags":["el-sub-menu","el-menu-item","el-menu-item-group"],"description":"[Docs](https://element-plus.org/en-US/component/menu.html#submenu)"},"el-menu-item":{"attributes":["index","route","disabled","click"],"description":"[Docs](https://element-plus.org/en-US/component/menu.html#menu-item)"},"el-menu-item-group":{"attributes":["title"],"subtags":["el-menu-item"],"description":"[Docs](https://element-plus.org/en-US/component/menu.html#menu-item-group)"},"el-page-header":{"attributes":["icon","title","content","back"],"description":"If path of the page is simple, it is recommended to use PageHeader instead of the Breadcrumb.\n\n[Docs](https://element-plus.org/en-US/component/page-header.html#page-header)"},"el-pagination":{"attributes":["small","background","page-size","default-page-size","total","page-count","pager-count","current-page","default-current-page","layout","page-sizes","popper-class","prev-text","prev-icon","next-text","next-icon","disabled","teleported","hide-on-single-page","size-change","current-change","prev-click","next-click"],"description":"If you have too much data to display in one page, use pagination.\n\n[Docs](https://element-plus.org/en-US/component/pagination.html#pagination)"},"el-popconfirm":{"attributes":["title","confirm-button-text","cancel-button-text","confirm-button-type","cancel-button-type","icon","icon-color","hide-icon","hide-after","teleported","persistent","width","confirm","cancel"],"description":"A simple confirmation dialog of an element click action.\n\n[Docs](https://element-plus.org/en-US/component/popconfirm.html#popconfirm)"},"el-popover":{"attributes":["trigger","title","effect","content","width","placement","disabled","visible","offset","transition","show-arrow","popper-options","popper-class","popper-style","show-after","hide-after","auto-close","tabindex","teleported","persistent","show","before-enter","after-enter","hide","before-leave","after-leave"],"description":":::tip\n\n[Docs](https://element-plus.org/en-US/component/popover.html#popover)"},"el-progress":{"attributes":["percentage","type","stroke-width","text-inside","status","indeterminate","duration","color","width","show-text","stroke-linecap","format","striped","striped-flow"],"description":"Progress is used to show the progress of current operation, and inform the user the current status.\n\n[Docs](https://element-plus.org/en-US/component/progress.html#progress)"},"el-radio":{"attributes":["model-value","label","disabled","border","size","name","change"],"description":"Single selection among multiple options.\n\n[Docs](https://element-plus.org/en-US/component/radio.html#radio)"},"el-radio-group":{"attributes":["model-value","size","disabled","text-color","fill","validate-event","label","name","id","change"],"subtags":["el-radio","el-radio-button"],"description":"[Docs](https://element-plus.org/en-US/component/radio.html#radiogroup)"},"el-radio-button":{"attributes":["label","disabled","name"],"description":"[Docs](https://element-plus.org/en-US/component/radio.html#radiobutton)"},"el-rate":{"attributes":["model-value","max","size","disabled","allow-half","low-threshold","high-threshold","colors","void-color","disabled-void-color","icons","void-icon","disabled-void-icon","show-text","show-score","text-color","texts","score-template","clearable","id","label","change"],"description":"Used for rating\n\n[Docs](https://element-plus.org/en-US/component/rate.html#rate)"},"el-result":{"attributes":["title","sub-title","icon"],"description":"Used to give feedback on the result of user's operation or access exception.\n\n[Docs](https://element-plus.org/en-US/component/result.html#result)"},"el-scrollbar":{"attributes":["height","max-height","native","wrap-style","wrap-class","view-style","view-class","noresize","tag","always","min-size","id","role","aria-label","aria-orientation","scroll"],"description":"Used to replace the browser's native scrollbar.\n\n[Docs](https://element-plus.org/en-US/component/scrollbar.html#scrollbar)"},"el-select-v2":{"attributes":["model-value","options","props","multiple","disabled","value-key","size","clearable","clear-icon","collapse-tags","multiple-limit","name","effect","autocomplete","placeholder","filterable","allow-create","reserve-keyword","no-data-text","popper-class","popper-append-to-body","teleported","persistent","popper-options","automatic-dropdown","height","item-height","scrollbar-always-on","remote","remote-method","validate-event","placement","collapse-tags-tooltip","max-collapse-tags","change","visible-change","remove-tag","clear","blur","focus"],"description":"[Docs](https://element-plus.org/en-US/component/select-v2.html#selectv2)"},"el-select":{"attributes":["model-value","multiple","disabled","value-key","size","clearable","collapse-tags","collapse-tags-tooltip","multiple-limit","name","effect","autocomplete","placeholder","filterable","allow-create","filter-method","remote","remote-method","remote-show-suffix","loading","loading-text","no-match-text","no-data-text","popper-class","reserve-keyword","default-first-option","teleported","persistent","automatic-dropdown","clear-icon","fit-input-width","suffix-icon","suffix-transition","tag-type","validate-event","placement","max-collapse-tags","popper-options","aria-label","change","visible-change","remove-tag","clear","blur","focus"],"subtags":["el-option-group","el-option"],"description":"When there are plenty of options, use a drop-down menu to display and select desired ones.\n\n[Docs](https://element-plus.org/en-US/component/select.html#select)"},"el-option-group":{"attributes":["label","disabled"],"subtags":["el-option"],"description":"[Docs](https://element-plus.org/en-US/component/select.html#option-group)"},"el-option":{"attributes":["value","label","disabled"],"description":"[Docs](https://element-plus.org/en-US/component/select.html#option)"},"el-skeleton":{"attributes":["animated","count","loading","rows","throttle"],"description":"When loading data, and you need a rich experience for visual and interactions for your end users, you can choose `skeleton`.\n\n[Docs](https://element-plus.org/en-US/component/skeleton.html#skeleton)"},"el-skeleton-item":{"attributes":["variant"],"description":"[Docs](https://element-plus.org/en-US/component/skeleton.html#skeletonitem)"},"el-slider":{"attributes":["model-value","min","max","disabled","step","show-input","show-input-controls","size","input-size","show-stops","show-tooltip","format-tooltip","range","vertical","height","label","range-start-label","range-end-label","format-value-text","debounce","tooltip-class","placement","marks","validate-event","change","input"],"description":"Drag the slider within a fixed range.\n\n[Docs](https://element-plus.org/en-US/component/slider.html#slider)"},"el-space":{"attributes":["alignment","class","direction","prefix-cls","style","spacer","size","wrap","fill","fill-ratio"],"description":"Even though we have [Divider]\n\n[Docs](https://element-plus.org/en-US/component/space.html#space)"},"el-statistic":{"description":"Display statistics.\n\n[Docs](https://element-plus.org/en-US/component/statistic.html#statistic)"},"el-countdown":{"description":":::demo Countdown component, support to add other components control countdown.\n\n[Docs](https://element-plus.org/en-US/component/statistic.html#countdown)"},"el-steps":{"attributes":["space","direction","active","process-status","finish-status","align-center","simple"],"subtags":["el-step"],"description":"Guide the user to complete tasks in accordance with the process. Its steps can be set according to the actual application scenario and the number of the steps can't be less than 2.\n\n[Docs](https://element-plus.org/en-US/component/steps.html#steps)"},"el-step":{"attributes":["title","description","icon","status"],"description":"[Docs](https://element-plus.org/en-US/component/steps.html#step)"},"el-switch":{"attributes":["model-value","disabled","loading","size","width","inline-prompt","active-icon","inactive-icon","active-action-icon","inactive-action-icon","active-text","inactive-text","active-value","inactive-value","active-color","inactive-color","border-color","name","validate-event","before-change","id","tabindex","label","change"],"description":"Switch is used for switching between two opposing states.\n\n[Docs](https://element-plus.org/en-US/component/switch.html#switch)"},"el-table-v2":{"attributes":["cache","estimated-row-height","header-class","header-props","header-cell-props","header-height","footer-height","row-class","row-key","row-props","row-height","cell-props","columns","data","data-getter","fixed-data","expand-column-key","expanded-row-keys","default-expanded-row-keys","class","fixed","width","height","max-height","h-scrollbar-size","v-scrollbar-size","scrollbar-always-on","sort-by","sort-state","column-sort","expanded-rows-change","end-reached","scroll","rows-rendered","row-expand","row-event-handlers"],"description":"[Docs](https://element-plus.org/en-US/component/table-v2.html#tablev2)"},"el-table":{"attributes":["data","height","max-height","stripe","border","size","fit","show-header","highlight-current-row","current-row-key","row-class-name","row-style","cell-class-name","cell-style","header-row-class-name","header-row-style","header-cell-class-name","header-cell-style","row-key","empty-text","default-expand-all","expand-row-keys","default-sort","tooltip-effect","tooltip-options","show-summary","sum-text","summary-method","span-method","select-on-indeterminate","indent","lazy","load","tree-props","table-layout","scrollbar-always-on","show-overflow-tooltip","flexible","select","select-all","selection-change","cell-mouse-enter","cell-mouse-leave","cell-click","cell-dblclick","cell-contextmenu","row-click","row-contextmenu","row-dblclick","header-click","header-contextmenu","sort-change","filter-change","current-change","header-dragend","expand-change"],"subtags":["el-table-column"],"description":"Display multiple data with similar format. You can sort, filter, compare your data in a table.\n\n[Docs](https://element-plus.org/en-US/component/table.html#table)"},"el-table-column":{"attributes":["type","index","label","column-key","prop","width","min-width","fixed","render-header","sortable","sort-method","sort-by","sort-orders","resizable","formatter","show-overflow-tooltip","align","header-align","class-name","label-class-name","selectable","reserve-selection","filters","filter-placement","filter-multiple","filter-method","filtered-value"],"description":"[Docs](https://element-plus.org/en-US/component/table.html#table-column)"},"el-tabs":{"attributes":["model-value","type","closable","addable","editable","tab-position","stretch","before-leave","tab-click","tab-change","tab-remove","tab-add","edit"],"subtags":["el-tab-pane"],"description":"Divide data collections which are related yet belong to different types.\n\n[Docs](https://element-plus.org/en-US/component/tabs.html#tabs)"},"el-tab-pane":{"attributes":["label","disabled","name","closable","lazy"],"description":"[Docs](https://element-plus.org/en-US/component/tabs.html#tab-pane)"},"el-tag":{"attributes":["type","closable","disable-transitions","hit","color","size","effect","round","click","close"],"description":"Used for marking and selection.\n\n[Docs](https://element-plus.org/en-US/component/tag.html#tag)"},"el-check-tag":{"attributes":["checked","change"],"description":"[Docs](https://element-plus.org/en-US/component/tag.html#checktag)"},"el-text":{"attributes":["type","size","truncated","line-clamp","tag"],"description":"Used for text.\n\n[Docs](https://element-plus.org/en-US/component/text.html#text)"},"el-time-picker":{"attributes":["model-value","readonly","disabled","editable","clearable","size","placeholder","start-placeholder","end-placeholder","is-range","arrow-control","popper-class","range-separator","format","default-value","id","name","label","prefix-icon","clear-icon","disabled-hours","disabled-minutes","disabled-seconds","teleported","tabindex","change","blur","focus","visible-change"],"description":"Use Time Picker for time input.\n\n[Docs](https://element-plus.org/en-US/component/time-picker.html#timepicker)"},"el-time-select":{"attributes":["model-value","disabled","editable","clearable","size","placeholder","name","effect","prefix-icon","clear-icon","start","end","step","min-time","max-time","format","change","blur","focus"],"description":"Use Time Select for time input.\n\n[Docs](https://element-plus.org/en-US/component/time-select.html#timeselect)"},"el-timeline":{"subtags":["el-timeline-item"],"description":"Visually display timeline.\n\n[Docs](https://element-plus.org/en-US/component/timeline.html#timeline)"},"el-timeline-item":{"attributes":["timestamp","hide-timestamp","center","placement","type","color","size","icon","hollow"],"description":"[Docs](https://element-plus.org/en-US/component/timeline.html#timeline-item)"},"el-tooltip":{"attributes":["append-to","effect","content","raw-content","placement","visible","disabled","offset","transition","popper-options","show-after","show-arrow","hide-after","auto-close","popper-class","enterable","teleported","trigger","virtual-triggering","virtual-ref","trigger-keys","persistent","aria-label"],"description":"Display prompt information for mouse hover.\n\n[Docs](https://element-plus.org/en-US/component/tooltip.html#tooltip)"},"el-transfer":{"attributes":["model-value","data","filterable","filter-placeholder","filter-method","target-order","titles","button-texts","render-content","format","props","left-default-checked","right-default-checked","validate-event","change","left-check-change","right-check-change"],"description":"[Docs](https://element-plus.org/en-US/component/transfer.html#transfer)"},"el-own":{"attributes":["cache-data"],"description":"[Docs](https://element-plus.org/en-US/component/tree-select.html#own)"},"el-tree-v2":{"attributes":["data","empty-text","props","highlight-current","expand-on-click-node","check-on-click-node","default-expanded-keys","show-checkbox","check-strictly","default-checked-keys","current-node-key","filter-method","indent","icon","item-size","node-click","node-contextmenu","check-change","check","current-change","node-expand","node-collapse"],"description":"[Docs](https://element-plus.org/en-US/component/tree-v2.html#treev2)"},"el-tree":{"attributes":["data","empty-text","node-key","props","render-after-expand","load","render-content","highlight-current","default-expand-all","expand-on-click-node","check-on-click-node","auto-expand-parent","default-expanded-keys","show-checkbox","check-strictly","default-checked-keys","current-node-key","filter-node-method","accordion","indent","icon","lazy","draggable","allow-drag","allow-drop","node-click","node-contextmenu","check-change","check","current-change","node-expand","node-collapse","node-drag-start","node-drag-enter","node-drag-leave","node-drag-over","node-drag-end","node-drop"],"description":"Display a set of data with hierarchies.\n\n[Docs](https://element-plus.org/en-US/component/tree.html#tree)"},"el-upload":{"attributes":["action","headers","method","multiple","data","name","with-credentials","show-file-list","drag","accept","on-preview","on-remove","on-success","on-error","on-progress","on-change","on-exceed","before-upload","before-remove","file-list","list-type","auto-upload","http-request","disabled","limit"],"description":"Upload files by clicking or drag-and-drop.\n\n[Docs](https://element-plus.org/en-US/component/upload.html#upload)"},"el-watermark":{"attributes":["width","height","rotate","z-index","image","content","font","gap","offset"],"description":"Add specific text or patterns to the page.\n\n[Docs](https://element-plus.org/en-US/component/watermark.html#watermark)"}}