@element-plus/nightly 0.0.20240505 → 0.0.20240507

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 (353) hide show
  1. package/README.md +8 -3
  2. package/dist/index.full.js +4 -3
  3. package/dist/index.full.min.js +2 -2
  4. package/dist/index.full.min.js.map +1 -1
  5. package/dist/index.full.min.mjs +2 -2
  6. package/dist/index.full.min.mjs.map +1 -1
  7. package/dist/index.full.mjs +4 -3
  8. package/dist/locale/af.js +1 -1
  9. package/dist/locale/af.min.js +1 -1
  10. package/dist/locale/af.min.mjs +1 -1
  11. package/dist/locale/af.mjs +1 -1
  12. package/dist/locale/ar-eg.js +1 -1
  13. package/dist/locale/ar-eg.min.js +1 -1
  14. package/dist/locale/ar-eg.min.mjs +1 -1
  15. package/dist/locale/ar-eg.mjs +1 -1
  16. package/dist/locale/ar.js +1 -1
  17. package/dist/locale/ar.min.js +1 -1
  18. package/dist/locale/ar.min.mjs +1 -1
  19. package/dist/locale/ar.mjs +1 -1
  20. package/dist/locale/az.js +1 -1
  21. package/dist/locale/az.min.js +1 -1
  22. package/dist/locale/az.min.mjs +1 -1
  23. package/dist/locale/az.mjs +1 -1
  24. package/dist/locale/bg.js +1 -1
  25. package/dist/locale/bg.min.js +1 -1
  26. package/dist/locale/bg.min.mjs +1 -1
  27. package/dist/locale/bg.mjs +1 -1
  28. package/dist/locale/bn.js +1 -1
  29. package/dist/locale/bn.min.js +1 -1
  30. package/dist/locale/bn.min.mjs +1 -1
  31. package/dist/locale/bn.mjs +1 -1
  32. package/dist/locale/ca.js +1 -1
  33. package/dist/locale/ca.min.js +1 -1
  34. package/dist/locale/ca.min.mjs +1 -1
  35. package/dist/locale/ca.mjs +1 -1
  36. package/dist/locale/ckb.js +1 -1
  37. package/dist/locale/ckb.min.js +1 -1
  38. package/dist/locale/ckb.min.mjs +1 -1
  39. package/dist/locale/ckb.mjs +1 -1
  40. package/dist/locale/cs.js +1 -1
  41. package/dist/locale/cs.min.js +1 -1
  42. package/dist/locale/cs.min.mjs +1 -1
  43. package/dist/locale/cs.mjs +1 -1
  44. package/dist/locale/da.js +1 -1
  45. package/dist/locale/da.min.js +1 -1
  46. package/dist/locale/da.min.mjs +1 -1
  47. package/dist/locale/da.mjs +1 -1
  48. package/dist/locale/de.js +1 -1
  49. package/dist/locale/de.min.js +1 -1
  50. package/dist/locale/de.min.mjs +1 -1
  51. package/dist/locale/de.mjs +1 -1
  52. package/dist/locale/el.js +1 -1
  53. package/dist/locale/el.min.js +1 -1
  54. package/dist/locale/el.min.mjs +1 -1
  55. package/dist/locale/el.mjs +1 -1
  56. package/dist/locale/en.js +1 -1
  57. package/dist/locale/en.min.js +1 -1
  58. package/dist/locale/en.min.mjs +1 -1
  59. package/dist/locale/en.mjs +1 -1
  60. package/dist/locale/eo.js +1 -1
  61. package/dist/locale/eo.min.js +1 -1
  62. package/dist/locale/eo.min.mjs +1 -1
  63. package/dist/locale/eo.mjs +1 -1
  64. package/dist/locale/es.js +1 -1
  65. package/dist/locale/es.min.js +1 -1
  66. package/dist/locale/es.min.mjs +1 -1
  67. package/dist/locale/es.mjs +1 -1
  68. package/dist/locale/et.js +1 -1
  69. package/dist/locale/et.min.js +1 -1
  70. package/dist/locale/et.min.mjs +1 -1
  71. package/dist/locale/et.mjs +1 -1
  72. package/dist/locale/eu.js +1 -1
  73. package/dist/locale/eu.min.js +1 -1
  74. package/dist/locale/eu.min.mjs +1 -1
  75. package/dist/locale/eu.mjs +1 -1
  76. package/dist/locale/fa.js +1 -1
  77. package/dist/locale/fa.min.js +1 -1
  78. package/dist/locale/fa.min.mjs +1 -1
  79. package/dist/locale/fa.mjs +1 -1
  80. package/dist/locale/fi.js +1 -1
  81. package/dist/locale/fi.min.js +1 -1
  82. package/dist/locale/fi.min.mjs +1 -1
  83. package/dist/locale/fi.mjs +1 -1
  84. package/dist/locale/fr.js +1 -1
  85. package/dist/locale/fr.min.js +1 -1
  86. package/dist/locale/fr.min.mjs +1 -1
  87. package/dist/locale/fr.mjs +1 -1
  88. package/dist/locale/he.js +1 -1
  89. package/dist/locale/he.min.js +1 -1
  90. package/dist/locale/he.min.mjs +1 -1
  91. package/dist/locale/he.mjs +1 -1
  92. package/dist/locale/hr.js +1 -1
  93. package/dist/locale/hr.min.js +1 -1
  94. package/dist/locale/hr.min.mjs +1 -1
  95. package/dist/locale/hr.mjs +1 -1
  96. package/dist/locale/hu.js +1 -1
  97. package/dist/locale/hu.min.js +1 -1
  98. package/dist/locale/hu.min.mjs +1 -1
  99. package/dist/locale/hu.mjs +1 -1
  100. package/dist/locale/hy-am.js +1 -1
  101. package/dist/locale/hy-am.min.js +1 -1
  102. package/dist/locale/hy-am.min.mjs +1 -1
  103. package/dist/locale/hy-am.mjs +1 -1
  104. package/dist/locale/id.js +1 -1
  105. package/dist/locale/id.min.js +1 -1
  106. package/dist/locale/id.min.mjs +1 -1
  107. package/dist/locale/id.mjs +1 -1
  108. package/dist/locale/it.js +1 -1
  109. package/dist/locale/it.min.js +1 -1
  110. package/dist/locale/it.min.mjs +1 -1
  111. package/dist/locale/it.mjs +1 -1
  112. package/dist/locale/ja.js +1 -1
  113. package/dist/locale/ja.min.js +1 -1
  114. package/dist/locale/ja.min.mjs +1 -1
  115. package/dist/locale/ja.mjs +1 -1
  116. package/dist/locale/kk.js +1 -1
  117. package/dist/locale/kk.min.js +1 -1
  118. package/dist/locale/kk.min.mjs +1 -1
  119. package/dist/locale/kk.mjs +1 -1
  120. package/dist/locale/km.js +1 -1
  121. package/dist/locale/km.min.js +1 -1
  122. package/dist/locale/km.min.mjs +1 -1
  123. package/dist/locale/km.mjs +1 -1
  124. package/dist/locale/ko.js +1 -1
  125. package/dist/locale/ko.min.js +1 -1
  126. package/dist/locale/ko.min.mjs +1 -1
  127. package/dist/locale/ko.mjs +1 -1
  128. package/dist/locale/ku.js +1 -1
  129. package/dist/locale/ku.min.js +1 -1
  130. package/dist/locale/ku.min.mjs +1 -1
  131. package/dist/locale/ku.mjs +1 -1
  132. package/dist/locale/ky.js +1 -1
  133. package/dist/locale/ky.min.js +1 -1
  134. package/dist/locale/ky.min.mjs +1 -1
  135. package/dist/locale/ky.mjs +1 -1
  136. package/dist/locale/lt.js +1 -1
  137. package/dist/locale/lt.min.js +1 -1
  138. package/dist/locale/lt.min.mjs +1 -1
  139. package/dist/locale/lt.mjs +1 -1
  140. package/dist/locale/lv.js +1 -1
  141. package/dist/locale/lv.min.js +1 -1
  142. package/dist/locale/lv.min.mjs +1 -1
  143. package/dist/locale/lv.mjs +1 -1
  144. package/dist/locale/mg.js +1 -1
  145. package/dist/locale/mg.min.js +1 -1
  146. package/dist/locale/mg.min.mjs +1 -1
  147. package/dist/locale/mg.mjs +1 -1
  148. package/dist/locale/mn.js +1 -1
  149. package/dist/locale/mn.min.js +1 -1
  150. package/dist/locale/mn.min.mjs +1 -1
  151. package/dist/locale/mn.mjs +1 -1
  152. package/dist/locale/nb-no.js +1 -1
  153. package/dist/locale/nb-no.min.js +1 -1
  154. package/dist/locale/nb-no.min.mjs +1 -1
  155. package/dist/locale/nb-no.mjs +1 -1
  156. package/dist/locale/nl.js +1 -1
  157. package/dist/locale/nl.min.js +1 -1
  158. package/dist/locale/nl.min.mjs +1 -1
  159. package/dist/locale/nl.mjs +1 -1
  160. package/dist/locale/pa.js +1 -1
  161. package/dist/locale/pa.min.js +1 -1
  162. package/dist/locale/pa.min.mjs +1 -1
  163. package/dist/locale/pa.mjs +1 -1
  164. package/dist/locale/pl.js +1 -1
  165. package/dist/locale/pl.min.js +1 -1
  166. package/dist/locale/pl.min.mjs +1 -1
  167. package/dist/locale/pl.mjs +1 -1
  168. package/dist/locale/pt-br.js +1 -1
  169. package/dist/locale/pt-br.min.js +1 -1
  170. package/dist/locale/pt-br.min.mjs +1 -1
  171. package/dist/locale/pt-br.mjs +1 -1
  172. package/dist/locale/pt.js +1 -1
  173. package/dist/locale/pt.min.js +1 -1
  174. package/dist/locale/pt.min.mjs +1 -1
  175. package/dist/locale/pt.mjs +1 -1
  176. package/dist/locale/ro.js +1 -1
  177. package/dist/locale/ro.min.js +1 -1
  178. package/dist/locale/ro.min.mjs +1 -1
  179. package/dist/locale/ro.mjs +1 -1
  180. package/dist/locale/ru.js +1 -1
  181. package/dist/locale/ru.min.js +1 -1
  182. package/dist/locale/ru.min.mjs +1 -1
  183. package/dist/locale/ru.mjs +1 -1
  184. package/dist/locale/sk.js +1 -1
  185. package/dist/locale/sk.min.js +1 -1
  186. package/dist/locale/sk.min.mjs +1 -1
  187. package/dist/locale/sk.mjs +1 -1
  188. package/dist/locale/sl.js +1 -1
  189. package/dist/locale/sl.min.js +1 -1
  190. package/dist/locale/sl.min.mjs +1 -1
  191. package/dist/locale/sl.mjs +1 -1
  192. package/dist/locale/sr.js +1 -1
  193. package/dist/locale/sr.min.js +1 -1
  194. package/dist/locale/sr.min.mjs +1 -1
  195. package/dist/locale/sr.mjs +1 -1
  196. package/dist/locale/sv.js +1 -1
  197. package/dist/locale/sv.min.js +1 -1
  198. package/dist/locale/sv.min.mjs +1 -1
  199. package/dist/locale/sv.mjs +1 -1
  200. package/dist/locale/sw.js +1 -1
  201. package/dist/locale/sw.min.js +1 -1
  202. package/dist/locale/sw.min.mjs +1 -1
  203. package/dist/locale/sw.mjs +1 -1
  204. package/dist/locale/ta.js +1 -1
  205. package/dist/locale/ta.min.js +1 -1
  206. package/dist/locale/ta.min.mjs +1 -1
  207. package/dist/locale/ta.mjs +1 -1
  208. package/dist/locale/th.js +1 -1
  209. package/dist/locale/th.min.js +1 -1
  210. package/dist/locale/th.min.mjs +1 -1
  211. package/dist/locale/th.mjs +1 -1
  212. package/dist/locale/tk.js +1 -1
  213. package/dist/locale/tk.min.js +1 -1
  214. package/dist/locale/tk.min.mjs +1 -1
  215. package/dist/locale/tk.mjs +1 -1
  216. package/dist/locale/tr.js +1 -1
  217. package/dist/locale/tr.min.js +1 -1
  218. package/dist/locale/tr.min.mjs +1 -1
  219. package/dist/locale/tr.mjs +1 -1
  220. package/dist/locale/ug-cn.js +1 -1
  221. package/dist/locale/ug-cn.min.js +1 -1
  222. package/dist/locale/ug-cn.min.mjs +1 -1
  223. package/dist/locale/ug-cn.mjs +1 -1
  224. package/dist/locale/uk.js +1 -1
  225. package/dist/locale/uk.min.js +1 -1
  226. package/dist/locale/uk.min.mjs +1 -1
  227. package/dist/locale/uk.mjs +1 -1
  228. package/dist/locale/uz-uz.js +1 -1
  229. package/dist/locale/uz-uz.min.js +1 -1
  230. package/dist/locale/uz-uz.min.mjs +1 -1
  231. package/dist/locale/uz-uz.mjs +1 -1
  232. package/dist/locale/vi.js +1 -1
  233. package/dist/locale/vi.min.js +1 -1
  234. package/dist/locale/vi.min.mjs +1 -1
  235. package/dist/locale/vi.mjs +1 -1
  236. package/dist/locale/zh-cn.js +1 -1
  237. package/dist/locale/zh-cn.min.js +1 -1
  238. package/dist/locale/zh-cn.min.mjs +1 -1
  239. package/dist/locale/zh-cn.mjs +1 -1
  240. package/dist/locale/zh-tw.js +1 -1
  241. package/dist/locale/zh-tw.min.js +1 -1
  242. package/dist/locale/zh-tw.min.mjs +1 -1
  243. package/dist/locale/zh-tw.mjs +1 -1
  244. package/es/components/anchor/index.mjs +2 -2
  245. package/es/components/anchor/src/anchor.mjs +38 -193
  246. package/es/components/anchor/src/anchor.mjs.map +1 -1
  247. package/es/components/anchor/src/anchor2.mjs +193 -38
  248. package/es/components/anchor/src/anchor2.mjs.map +1 -1
  249. package/es/components/form/src/form2.mjs +2 -1
  250. package/es/components/form/src/form2.mjs.map +1 -1
  251. package/es/components/index.mjs +5 -5
  252. package/es/components/popper/index.mjs +2 -2
  253. package/es/components/popper/src/popper.mjs +25 -32
  254. package/es/components/popper/src/popper.mjs.map +1 -1
  255. package/es/components/popper/src/popper2.mjs +32 -25
  256. package/es/components/popper/src/popper2.mjs.map +1 -1
  257. package/es/components/progress/index.mjs +2 -2
  258. package/es/components/progress/src/progress.mjs +59 -205
  259. package/es/components/progress/src/progress.mjs.map +1 -1
  260. package/es/components/progress/src/progress2.mjs +205 -59
  261. package/es/components/progress/src/progress2.mjs.map +1 -1
  262. package/es/components/slider/src/button.mjs +93 -21
  263. package/es/components/slider/src/button.mjs.map +1 -1
  264. package/es/components/slider/src/button2.mjs +21 -93
  265. package/es/components/slider/src/button2.mjs.map +1 -1
  266. package/es/components/slider/src/slider2.mjs +1 -1
  267. package/es/components/steps/index.mjs +2 -2
  268. package/es/components/steps/src/steps.mjs +36 -39
  269. package/es/components/steps/src/steps.mjs.map +1 -1
  270. package/es/components/steps/src/steps2.mjs +39 -36
  271. package/es/components/steps/src/steps2.mjs.map +1 -1
  272. package/es/components/tooltip/src/tooltip.mjs +1 -1
  273. package/es/components/tooltip-v2/index.mjs +3 -3
  274. package/es/components/tooltip-v2/src/content2.mjs +1 -1
  275. package/es/components/tooltip-v2/src/root.mjs +80 -17
  276. package/es/components/tooltip-v2/src/root.mjs.map +1 -1
  277. package/es/components/tooltip-v2/src/root2.mjs +17 -80
  278. package/es/components/tooltip-v2/src/root2.mjs.map +1 -1
  279. package/es/components/tooltip-v2/src/tooltip.mjs +73 -20
  280. package/es/components/tooltip-v2/src/tooltip.mjs.map +1 -1
  281. package/es/components/tooltip-v2/src/tooltip2.mjs +20 -73
  282. package/es/components/tooltip-v2/src/tooltip2.mjs.map +1 -1
  283. package/es/components/upload/index.mjs +1 -1
  284. package/es/components/upload/src/upload-content2.mjs +1 -1
  285. package/es/components/upload/src/upload-dragger.mjs +11 -50
  286. package/es/components/upload/src/upload-dragger.mjs.map +1 -1
  287. package/es/components/upload/src/upload-dragger2.mjs +50 -11
  288. package/es/components/upload/src/upload-dragger2.mjs.map +1 -1
  289. package/es/components/visual-hidden/index.mjs +3 -3
  290. package/es/components/visual-hidden/src/visual-hidden.mjs +35 -7
  291. package/es/components/visual-hidden/src/visual-hidden.mjs.map +1 -1
  292. package/es/components/visual-hidden/src/visual-hidden2.mjs +7 -35
  293. package/es/components/visual-hidden/src/visual-hidden2.mjs.map +1 -1
  294. package/es/index.mjs +5 -5
  295. package/es/version.d.ts +1 -1
  296. package/es/version.mjs +1 -1
  297. package/es/version.mjs.map +1 -1
  298. package/lib/components/anchor/index.js +2 -2
  299. package/lib/components/anchor/src/anchor.js +38 -192
  300. package/lib/components/anchor/src/anchor.js.map +1 -1
  301. package/lib/components/anchor/src/anchor2.js +192 -38
  302. package/lib/components/anchor/src/anchor2.js.map +1 -1
  303. package/lib/components/form/src/form2.js +2 -1
  304. package/lib/components/form/src/form2.js.map +1 -1
  305. package/lib/components/index.js +5 -5
  306. package/lib/components/popper/index.js +2 -2
  307. package/lib/components/popper/src/popper.js +28 -32
  308. package/lib/components/popper/src/popper.js.map +1 -1
  309. package/lib/components/popper/src/popper2.js +32 -28
  310. package/lib/components/popper/src/popper2.js.map +1 -1
  311. package/lib/components/progress/index.js +2 -2
  312. package/lib/components/progress/src/progress.js +59 -205
  313. package/lib/components/progress/src/progress.js.map +1 -1
  314. package/lib/components/progress/src/progress2.js +205 -59
  315. package/lib/components/progress/src/progress2.js.map +1 -1
  316. package/lib/components/slider/src/button.js +93 -22
  317. package/lib/components/slider/src/button.js.map +1 -1
  318. package/lib/components/slider/src/button2.js +22 -93
  319. package/lib/components/slider/src/button2.js.map +1 -1
  320. package/lib/components/slider/src/slider2.js +1 -1
  321. package/lib/components/steps/index.js +2 -2
  322. package/lib/components/steps/src/steps.js +37 -39
  323. package/lib/components/steps/src/steps.js.map +1 -1
  324. package/lib/components/steps/src/steps2.js +39 -37
  325. package/lib/components/steps/src/steps2.js.map +1 -1
  326. package/lib/components/tooltip/src/tooltip.js +1 -1
  327. package/lib/components/tooltip-v2/index.js +3 -3
  328. package/lib/components/tooltip-v2/src/content2.js +1 -1
  329. package/lib/components/tooltip-v2/src/root.js +80 -17
  330. package/lib/components/tooltip-v2/src/root.js.map +1 -1
  331. package/lib/components/tooltip-v2/src/root2.js +17 -80
  332. package/lib/components/tooltip-v2/src/root2.js.map +1 -1
  333. package/lib/components/tooltip-v2/src/tooltip.js +73 -20
  334. package/lib/components/tooltip-v2/src/tooltip.js.map +1 -1
  335. package/lib/components/tooltip-v2/src/tooltip2.js +20 -73
  336. package/lib/components/tooltip-v2/src/tooltip2.js.map +1 -1
  337. package/lib/components/upload/index.js +1 -1
  338. package/lib/components/upload/src/upload-content2.js +1 -1
  339. package/lib/components/upload/src/upload-dragger.js +12 -50
  340. package/lib/components/upload/src/upload-dragger.js.map +1 -1
  341. package/lib/components/upload/src/upload-dragger2.js +50 -12
  342. package/lib/components/upload/src/upload-dragger2.js.map +1 -1
  343. package/lib/components/visual-hidden/index.js +2 -2
  344. package/lib/components/visual-hidden/src/visual-hidden.js +35 -7
  345. package/lib/components/visual-hidden/src/visual-hidden.js.map +1 -1
  346. package/lib/components/visual-hidden/src/visual-hidden2.js +7 -35
  347. package/lib/components/visual-hidden/src/visual-hidden2.js.map +1 -1
  348. package/lib/index.js +5 -5
  349. package/lib/version.d.ts +1 -1
  350. package/lib/version.js +1 -1
  351. package/lib/version.js.map +1 -1
  352. package/package.json +2 -2
  353. package/web-types.json +1 -1
@@ -1,9 +1,9 @@
1
1
  import '../../utils/index.mjs';
2
- import Popper from './src/popper.mjs';
2
+ import Popper from './src/popper2.mjs';
3
3
  export { default as ElPopperArrow } from './src/arrow2.mjs';
4
4
  export { default as ElPopperTrigger } from './src/trigger2.mjs';
5
5
  export { default as ElPopperContent } from './src/content2.mjs';
6
- export { Effect, popperProps, roleTypes, usePopperProps } from './src/popper2.mjs';
6
+ export { Effect, popperProps, roleTypes, usePopperProps } from './src/popper.mjs';
7
7
  export { popperTriggerProps, usePopperTriggerProps } from './src/trigger.mjs';
8
8
  export { popperContentEmits, popperContentProps, popperCoreConfigProps, usePopperContentEmits, usePopperContentProps, usePopperCoreConfigProps } from './src/content.mjs';
9
9
  export { popperArrowProps, usePopperArrowProps } from './src/arrow.mjs';
@@ -1,37 +1,30 @@
1
- import { defineComponent, ref, computed, provide, renderSlot } from 'vue';
2
- import { POPPER_INJECTION_KEY } from './constants.mjs';
3
- import { popperProps } from './popper2.mjs';
4
- import _export_sfc from '../../../_virtual/plugin-vue_export-helper.mjs';
1
+ import '../../../utils/index.mjs';
2
+ import { buildProps } from '../../../utils/vue/props/runtime.mjs';
5
3
 
6
- const __default__ = defineComponent({
7
- name: "ElPopper",
8
- inheritAttrs: false
9
- });
10
- const _sfc_main = /* @__PURE__ */ defineComponent({
11
- ...__default__,
12
- props: popperProps,
13
- setup(__props, { expose }) {
14
- const props = __props;
15
- const triggerRef = ref();
16
- const popperInstanceRef = ref();
17
- const contentRef = ref();
18
- const referenceRef = ref();
19
- const role = computed(() => props.role);
20
- const popperProvides = {
21
- triggerRef,
22
- popperInstanceRef,
23
- contentRef,
24
- referenceRef,
25
- role
26
- };
27
- expose(popperProvides);
28
- provide(POPPER_INJECTION_KEY, popperProvides);
29
- return (_ctx, _cache) => {
30
- return renderSlot(_ctx.$slots, "default");
31
- };
4
+ const effects = ["light", "dark"];
5
+ const triggers = ["click", "contextmenu", "hover", "focus"];
6
+ const Effect = {
7
+ LIGHT: "light",
8
+ DARK: "dark"
9
+ };
10
+ const roleTypes = [
11
+ "dialog",
12
+ "grid",
13
+ "group",
14
+ "listbox",
15
+ "menu",
16
+ "navigation",
17
+ "tooltip",
18
+ "tree"
19
+ ];
20
+ const popperProps = buildProps({
21
+ role: {
22
+ type: String,
23
+ values: roleTypes,
24
+ default: "tooltip"
32
25
  }
33
26
  });
34
- var Popper = /* @__PURE__ */ _export_sfc(_sfc_main, [["__file", "popper.vue"]]);
27
+ const usePopperProps = popperProps;
35
28
 
36
- export { Popper as default };
29
+ export { Effect, popperProps, roleTypes, usePopperProps };
37
30
  //# sourceMappingURL=popper.mjs.map
@@ -1 +1 @@
1
- {"version":3,"file":"popper.mjs","sources":["../../../../../../packages/components/popper/src/popper.vue"],"sourcesContent":["<template>\n <slot />\n</template>\n\n<script lang=\"ts\" setup>\nimport { computed, provide, ref } from 'vue'\nimport { POPPER_INJECTION_KEY } from './constants'\nimport { popperProps } from './popper'\n\nimport type { Instance as PopperInstance } from '@popperjs/core'\nimport type { ElPopperInjectionContext } from './constants'\n\ndefineOptions({\n name: 'ElPopper',\n inheritAttrs: false,\n})\nconst props = defineProps(popperProps)\n\nconst triggerRef = ref<HTMLElement>()\nconst popperInstanceRef = ref<PopperInstance>()\nconst contentRef = ref<HTMLElement>()\nconst referenceRef = ref<HTMLElement>()\nconst role = computed(() => props.role)\n\nconst popperProvides = {\n /**\n * @description trigger element\n */\n triggerRef,\n /**\n * @description popperjs instance\n */\n popperInstanceRef,\n /**\n * @description popper content element\n */\n contentRef,\n /**\n * @description popper reference element\n */\n referenceRef,\n /**\n * @description role determines how aria attributes are distributed\n */\n role,\n} as ElPopperInjectionContext\n\ndefineExpose(popperProvides)\n\nprovide(POPPER_INJECTION_KEY, popperProvides)\n</script>\n"],"names":[],"mappings":";;;;;mCAYc,CAAA;AAAA,EACZ,IAAM,EAAA,UAAA;AAAA,EACN,YAAc,EAAA,KAAA;AAChB,CAAA,CAAA,CAAA;;;;;;AAGA,IAAA,MAAM,aAAa,GAAiB,EAAA,CAAA;AACpC,IAAA,MAAM,oBAAoB,GAAoB,EAAA,CAAA;AAC9C,IAAA,MAAM,aAAa,GAAiB,EAAA,CAAA;AACpC,IAAA,MAAM,eAAe,GAAiB,EAAA,CAAA;AACtC,IAAA,MAAM,IAAO,GAAA,QAAA,CAAS,MAAM,KAAA,CAAM,IAAI,CAAA,CAAA;AAEtC,IAAA,MAAM,cAAiB,GAAA;AAAA,MAIrB,UAAA;AAAA,MAIA,iBAAA;AAAA,MAIA,UAAA;AAAA,MAIA,YAAA;AAAA,MAIA,IAAA;AAAA,KACF,CAAA;AAEA,IAAA,MAAA,CAAa,cAAc,CAAA,CAAA;AAE3B,IAAA,OAAA,CAAQ,sBAAsB,cAAc,CAAA,CAAA;;;;;;;;;;"}
1
+ {"version":3,"file":"popper.mjs","sources":["../../../../../../packages/components/popper/src/popper.ts"],"sourcesContent":["import { buildProps } from '@element-plus/utils'\n\nimport type { ExtractPropTypes } from 'vue'\nimport type Popper from './popper.vue'\n\nconst effects = ['light', 'dark'] as const\nconst triggers = ['click', 'contextmenu', 'hover', 'focus'] as const\n\nexport const Effect = {\n LIGHT: 'light',\n DARK: 'dark',\n} as const\n\nexport const roleTypes = [\n 'dialog',\n 'grid',\n 'group',\n 'listbox',\n 'menu',\n 'navigation',\n 'tooltip',\n 'tree',\n] as const\n\nexport type PopperEffect = typeof effects[number]\nexport type PopperTrigger = typeof triggers[number]\n\nexport const popperProps = buildProps({\n role: {\n type: String,\n values: roleTypes,\n default: 'tooltip',\n },\n} as const)\n\nexport type PopperProps = ExtractPropTypes<typeof popperProps>\n\nexport type PopperInstance = InstanceType<typeof Popper>\n\n/** @deprecated use `popperProps` instead, and it will be deprecated in the next major version */\nexport const usePopperProps = popperProps\n\n/** @deprecated use `PopperProps` instead, and it will be deprecated in the next major version */\nexport type UsePopperProps = PopperProps\n"],"names":[],"mappings":";;;AACA,MAAM,OAAO,GAAG,CAAC,OAAO,EAAE,MAAM,CAAC,CAAC;AAClC,MAAM,QAAQ,GAAG,CAAC,OAAO,EAAE,aAAa,EAAE,OAAO,EAAE,OAAO,CAAC,CAAC;AAChD,MAAC,MAAM,GAAG;AACtB,EAAE,KAAK,EAAE,OAAO;AAChB,EAAE,IAAI,EAAE,MAAM;AACd,EAAE;AACU,MAAC,SAAS,GAAG;AACzB,EAAE,QAAQ;AACV,EAAE,MAAM;AACR,EAAE,OAAO;AACT,EAAE,SAAS;AACX,EAAE,MAAM;AACR,EAAE,YAAY;AACd,EAAE,SAAS;AACX,EAAE,MAAM;AACR,EAAE;AACU,MAAC,WAAW,GAAG,UAAU,CAAC;AACtC,EAAE,IAAI,EAAE;AACR,IAAI,IAAI,EAAE,MAAM;AAChB,IAAI,MAAM,EAAE,SAAS;AACrB,IAAI,OAAO,EAAE,SAAS;AACtB,GAAG;AACH,CAAC,EAAE;AACS,MAAC,cAAc,GAAG;;;;"}
@@ -1,30 +1,37 @@
1
- import '../../../utils/index.mjs';
2
- import { buildProps } from '../../../utils/vue/props/runtime.mjs';
1
+ import { defineComponent, ref, computed, provide, renderSlot } from 'vue';
2
+ import { POPPER_INJECTION_KEY } from './constants.mjs';
3
+ import { popperProps } from './popper.mjs';
4
+ import _export_sfc from '../../../_virtual/plugin-vue_export-helper.mjs';
3
5
 
4
- const effects = ["light", "dark"];
5
- const triggers = ["click", "contextmenu", "hover", "focus"];
6
- const Effect = {
7
- LIGHT: "light",
8
- DARK: "dark"
9
- };
10
- const roleTypes = [
11
- "dialog",
12
- "grid",
13
- "group",
14
- "listbox",
15
- "menu",
16
- "navigation",
17
- "tooltip",
18
- "tree"
19
- ];
20
- const popperProps = buildProps({
21
- role: {
22
- type: String,
23
- values: roleTypes,
24
- default: "tooltip"
6
+ const __default__ = defineComponent({
7
+ name: "ElPopper",
8
+ inheritAttrs: false
9
+ });
10
+ const _sfc_main = /* @__PURE__ */ defineComponent({
11
+ ...__default__,
12
+ props: popperProps,
13
+ setup(__props, { expose }) {
14
+ const props = __props;
15
+ const triggerRef = ref();
16
+ const popperInstanceRef = ref();
17
+ const contentRef = ref();
18
+ const referenceRef = ref();
19
+ const role = computed(() => props.role);
20
+ const popperProvides = {
21
+ triggerRef,
22
+ popperInstanceRef,
23
+ contentRef,
24
+ referenceRef,
25
+ role
26
+ };
27
+ expose(popperProvides);
28
+ provide(POPPER_INJECTION_KEY, popperProvides);
29
+ return (_ctx, _cache) => {
30
+ return renderSlot(_ctx.$slots, "default");
31
+ };
25
32
  }
26
33
  });
27
- const usePopperProps = popperProps;
34
+ var Popper = /* @__PURE__ */ _export_sfc(_sfc_main, [["__file", "popper.vue"]]);
28
35
 
29
- export { Effect, popperProps, roleTypes, usePopperProps };
36
+ export { Popper as default };
30
37
  //# sourceMappingURL=popper2.mjs.map
@@ -1 +1 @@
1
- {"version":3,"file":"popper2.mjs","sources":["../../../../../../packages/components/popper/src/popper.ts"],"sourcesContent":["import { buildProps } from '@element-plus/utils'\n\nimport type { ExtractPropTypes } from 'vue'\nimport type Popper from './popper.vue'\n\nconst effects = ['light', 'dark'] as const\nconst triggers = ['click', 'contextmenu', 'hover', 'focus'] as const\n\nexport const Effect = {\n LIGHT: 'light',\n DARK: 'dark',\n} as const\n\nexport const roleTypes = [\n 'dialog',\n 'grid',\n 'group',\n 'listbox',\n 'menu',\n 'navigation',\n 'tooltip',\n 'tree',\n] as const\n\nexport type PopperEffect = typeof effects[number]\nexport type PopperTrigger = typeof triggers[number]\n\nexport const popperProps = buildProps({\n role: {\n type: String,\n values: roleTypes,\n default: 'tooltip',\n },\n} as const)\n\nexport type PopperProps = ExtractPropTypes<typeof popperProps>\n\nexport type PopperInstance = InstanceType<typeof Popper>\n\n/** @deprecated use `popperProps` instead, and it will be deprecated in the next major version */\nexport const usePopperProps = popperProps\n\n/** @deprecated use `PopperProps` instead, and it will be deprecated in the next major version */\nexport type UsePopperProps = PopperProps\n"],"names":[],"mappings":";;;AACA,MAAM,OAAO,GAAG,CAAC,OAAO,EAAE,MAAM,CAAC,CAAC;AAClC,MAAM,QAAQ,GAAG,CAAC,OAAO,EAAE,aAAa,EAAE,OAAO,EAAE,OAAO,CAAC,CAAC;AAChD,MAAC,MAAM,GAAG;AACtB,EAAE,KAAK,EAAE,OAAO;AAChB,EAAE,IAAI,EAAE,MAAM;AACd,EAAE;AACU,MAAC,SAAS,GAAG;AACzB,EAAE,QAAQ;AACV,EAAE,MAAM;AACR,EAAE,OAAO;AACT,EAAE,SAAS;AACX,EAAE,MAAM;AACR,EAAE,YAAY;AACd,EAAE,SAAS;AACX,EAAE,MAAM;AACR,EAAE;AACU,MAAC,WAAW,GAAG,UAAU,CAAC;AACtC,EAAE,IAAI,EAAE;AACR,IAAI,IAAI,EAAE,MAAM;AAChB,IAAI,MAAM,EAAE,SAAS;AACrB,IAAI,OAAO,EAAE,SAAS;AACtB,GAAG;AACH,CAAC,EAAE;AACS,MAAC,cAAc,GAAG;;;;"}
1
+ {"version":3,"file":"popper2.mjs","sources":["../../../../../../packages/components/popper/src/popper.vue"],"sourcesContent":["<template>\n <slot />\n</template>\n\n<script lang=\"ts\" setup>\nimport { computed, provide, ref } from 'vue'\nimport { POPPER_INJECTION_KEY } from './constants'\nimport { popperProps } from './popper'\n\nimport type { Instance as PopperInstance } from '@popperjs/core'\nimport type { ElPopperInjectionContext } from './constants'\n\ndefineOptions({\n name: 'ElPopper',\n inheritAttrs: false,\n})\nconst props = defineProps(popperProps)\n\nconst triggerRef = ref<HTMLElement>()\nconst popperInstanceRef = ref<PopperInstance>()\nconst contentRef = ref<HTMLElement>()\nconst referenceRef = ref<HTMLElement>()\nconst role = computed(() => props.role)\n\nconst popperProvides = {\n /**\n * @description trigger element\n */\n triggerRef,\n /**\n * @description popperjs instance\n */\n popperInstanceRef,\n /**\n * @description popper content element\n */\n contentRef,\n /**\n * @description popper reference element\n */\n referenceRef,\n /**\n * @description role determines how aria attributes are distributed\n */\n role,\n} as ElPopperInjectionContext\n\ndefineExpose(popperProvides)\n\nprovide(POPPER_INJECTION_KEY, popperProvides)\n</script>\n"],"names":[],"mappings":";;;;;mCAYc,CAAA;AAAA,EACZ,IAAM,EAAA,UAAA;AAAA,EACN,YAAc,EAAA,KAAA;AAChB,CAAA,CAAA,CAAA;;;;;;AAGA,IAAA,MAAM,aAAa,GAAiB,EAAA,CAAA;AACpC,IAAA,MAAM,oBAAoB,GAAoB,EAAA,CAAA;AAC9C,IAAA,MAAM,aAAa,GAAiB,EAAA,CAAA;AACpC,IAAA,MAAM,eAAe,GAAiB,EAAA,CAAA;AACtC,IAAA,MAAM,IAAO,GAAA,QAAA,CAAS,MAAM,KAAA,CAAM,IAAI,CAAA,CAAA;AAEtC,IAAA,MAAM,cAAiB,GAAA;AAAA,MAIrB,UAAA;AAAA,MAIA,iBAAA;AAAA,MAIA,UAAA;AAAA,MAIA,YAAA;AAAA,MAIA,IAAA;AAAA,KACF,CAAA;AAEA,IAAA,MAAA,CAAa,cAAc,CAAA,CAAA;AAE3B,IAAA,OAAA,CAAQ,sBAAsB,cAAc,CAAA,CAAA;;;;;;;;;;"}
@@ -1,6 +1,6 @@
1
1
  import '../../utils/index.mjs';
2
- import Progress from './src/progress.mjs';
3
- export { progressProps } from './src/progress2.mjs';
2
+ import Progress from './src/progress2.mjs';
3
+ export { progressProps } from './src/progress.mjs';
4
4
  import { withInstall } from '../../utils/vue/install.mjs';
5
5
 
6
6
  const ElProgress = withInstall(Progress);
@@ -1,211 +1,65 @@
1
- import { defineComponent, computed, openBlock, createElementBlock, normalizeClass, unref, createElementVNode, normalizeStyle, renderSlot, toDisplayString, createCommentVNode, createBlock, withCtx, resolveDynamicComponent } from 'vue';
2
- import { ElIcon } from '../../icon/index.mjs';
3
- import { WarningFilled, CircleCheck, CircleClose, Check, Close } from '@element-plus/icons-vue';
4
- import '../../../hooks/index.mjs';
5
1
  import '../../../utils/index.mjs';
6
- import { progressProps } from './progress2.mjs';
7
- import _export_sfc from '../../../_virtual/plugin-vue_export-helper.mjs';
8
- import { useNamespace } from '../../../hooks/use-namespace/index.mjs';
9
- import { isString, isFunction } from '@vue/shared';
2
+ import { buildProps, definePropType } from '../../../utils/vue/props/runtime.mjs';
10
3
 
11
- const _hoisted_1 = ["aria-valuenow"];
12
- const _hoisted_2 = { viewBox: "0 0 100 100" };
13
- const _hoisted_3 = ["d", "stroke", "stroke-linecap", "stroke-width"];
14
- const _hoisted_4 = ["d", "stroke", "opacity", "stroke-linecap", "stroke-width"];
15
- const _hoisted_5 = { key: 0 };
16
- const __default__ = defineComponent({
17
- name: "ElProgress"
18
- });
19
- const _sfc_main = /* @__PURE__ */ defineComponent({
20
- ...__default__,
21
- props: progressProps,
22
- setup(__props) {
23
- const props = __props;
24
- const STATUS_COLOR_MAP = {
25
- success: "#13ce66",
26
- exception: "#ff4949",
27
- warning: "#e6a23c",
28
- default: "#20a0ff"
29
- };
30
- const ns = useNamespace("progress");
31
- const barStyle = computed(() => ({
32
- width: `${props.percentage}%`,
33
- animationDuration: `${props.duration}s`,
34
- background: getCurrentColor(props.percentage)
35
- }));
36
- const relativeStrokeWidth = computed(() => (props.strokeWidth / props.width * 100).toFixed(1));
37
- const radius = computed(() => {
38
- if (["circle", "dashboard"].includes(props.type)) {
39
- return Number.parseInt(`${50 - Number.parseFloat(relativeStrokeWidth.value) / 2}`, 10);
40
- }
41
- return 0;
42
- });
43
- const trackPath = computed(() => {
44
- const r = radius.value;
45
- const isDashboard = props.type === "dashboard";
46
- return `
47
- M 50 50
48
- m 0 ${isDashboard ? "" : "-"}${r}
49
- a ${r} ${r} 0 1 1 0 ${isDashboard ? "-" : ""}${r * 2}
50
- a ${r} ${r} 0 1 1 0 ${isDashboard ? "" : "-"}${r * 2}
51
- `;
52
- });
53
- const perimeter = computed(() => 2 * Math.PI * radius.value);
54
- const rate = computed(() => props.type === "dashboard" ? 0.75 : 1);
55
- const strokeDashoffset = computed(() => {
56
- const offset = -1 * perimeter.value * (1 - rate.value) / 2;
57
- return `${offset}px`;
58
- });
59
- const trailPathStyle = computed(() => ({
60
- strokeDasharray: `${perimeter.value * rate.value}px, ${perimeter.value}px`,
61
- strokeDashoffset: strokeDashoffset.value
62
- }));
63
- const circlePathStyle = computed(() => ({
64
- strokeDasharray: `${perimeter.value * rate.value * (props.percentage / 100)}px, ${perimeter.value}px`,
65
- strokeDashoffset: strokeDashoffset.value,
66
- transition: "stroke-dasharray 0.6s ease 0s, stroke 0.6s ease, opacity ease 0.6s"
67
- }));
68
- const stroke = computed(() => {
69
- let ret;
70
- if (props.color) {
71
- ret = getCurrentColor(props.percentage);
72
- } else {
73
- ret = STATUS_COLOR_MAP[props.status] || STATUS_COLOR_MAP.default;
74
- }
75
- return ret;
76
- });
77
- const statusIcon = computed(() => {
78
- if (props.status === "warning") {
79
- return WarningFilled;
80
- }
81
- if (props.type === "line") {
82
- return props.status === "success" ? CircleCheck : CircleClose;
83
- } else {
84
- return props.status === "success" ? Check : Close;
85
- }
86
- });
87
- const progressTextSize = computed(() => {
88
- return props.type === "line" ? 12 + props.strokeWidth * 0.4 : props.width * 0.111111 + 2;
89
- });
90
- const content = computed(() => props.format(props.percentage));
91
- function getColors(color) {
92
- const span = 100 / color.length;
93
- const seriesColors = color.map((seriesColor, index) => {
94
- if (isString(seriesColor)) {
95
- return {
96
- color: seriesColor,
97
- percentage: (index + 1) * span
98
- };
99
- }
100
- return seriesColor;
101
- });
102
- return seriesColors.sort((a, b) => a.percentage - b.percentage);
103
- }
104
- const getCurrentColor = (percentage) => {
105
- var _a;
106
- const { color } = props;
107
- if (isFunction(color)) {
108
- return color(percentage);
109
- } else if (isString(color)) {
110
- return color;
111
- } else {
112
- const colors = getColors(color);
113
- for (const color2 of colors) {
114
- if (color2.percentage > percentage)
115
- return color2.color;
116
- }
117
- return (_a = colors[colors.length - 1]) == null ? void 0 : _a.color;
118
- }
119
- };
120
- return (_ctx, _cache) => {
121
- return openBlock(), createElementBlock("div", {
122
- class: normalizeClass([
123
- unref(ns).b(),
124
- unref(ns).m(_ctx.type),
125
- unref(ns).is(_ctx.status),
126
- {
127
- [unref(ns).m("without-text")]: !_ctx.showText,
128
- [unref(ns).m("text-inside")]: _ctx.textInside
129
- }
130
- ]),
131
- role: "progressbar",
132
- "aria-valuenow": _ctx.percentage,
133
- "aria-valuemin": "0",
134
- "aria-valuemax": "100"
135
- }, [
136
- _ctx.type === "line" ? (openBlock(), createElementBlock("div", {
137
- key: 0,
138
- class: normalizeClass(unref(ns).b("bar"))
139
- }, [
140
- createElementVNode("div", {
141
- class: normalizeClass(unref(ns).be("bar", "outer")),
142
- style: normalizeStyle({ height: `${_ctx.strokeWidth}px` })
143
- }, [
144
- createElementVNode("div", {
145
- class: normalizeClass([
146
- unref(ns).be("bar", "inner"),
147
- { [unref(ns).bem("bar", "inner", "indeterminate")]: _ctx.indeterminate },
148
- { [unref(ns).bem("bar", "inner", "striped")]: _ctx.striped },
149
- { [unref(ns).bem("bar", "inner", "striped-flow")]: _ctx.stripedFlow }
150
- ]),
151
- style: normalizeStyle(unref(barStyle))
152
- }, [
153
- (_ctx.showText || _ctx.$slots.default) && _ctx.textInside ? (openBlock(), createElementBlock("div", {
154
- key: 0,
155
- class: normalizeClass(unref(ns).be("bar", "innerText"))
156
- }, [
157
- renderSlot(_ctx.$slots, "default", { percentage: _ctx.percentage }, () => [
158
- createElementVNode("span", null, toDisplayString(unref(content)), 1)
159
- ])
160
- ], 2)) : createCommentVNode("v-if", true)
161
- ], 6)
162
- ], 6)
163
- ], 2)) : (openBlock(), createElementBlock("div", {
164
- key: 1,
165
- class: normalizeClass(unref(ns).b("circle")),
166
- style: normalizeStyle({ height: `${_ctx.width}px`, width: `${_ctx.width}px` })
167
- }, [
168
- (openBlock(), createElementBlock("svg", _hoisted_2, [
169
- createElementVNode("path", {
170
- class: normalizeClass(unref(ns).be("circle", "track")),
171
- d: unref(trackPath),
172
- stroke: `var(${unref(ns).cssVarName("fill-color-light")}, #e5e9f2)`,
173
- "stroke-linecap": _ctx.strokeLinecap,
174
- "stroke-width": unref(relativeStrokeWidth),
175
- fill: "none",
176
- style: normalizeStyle(unref(trailPathStyle))
177
- }, null, 14, _hoisted_3),
178
- createElementVNode("path", {
179
- class: normalizeClass(unref(ns).be("circle", "path")),
180
- d: unref(trackPath),
181
- stroke: unref(stroke),
182
- fill: "none",
183
- opacity: _ctx.percentage ? 1 : 0,
184
- "stroke-linecap": _ctx.strokeLinecap,
185
- "stroke-width": unref(relativeStrokeWidth),
186
- style: normalizeStyle(unref(circlePathStyle))
187
- }, null, 14, _hoisted_4)
188
- ]))
189
- ], 6)),
190
- (_ctx.showText || _ctx.$slots.default) && !_ctx.textInside ? (openBlock(), createElementBlock("div", {
191
- key: 2,
192
- class: normalizeClass(unref(ns).e("text")),
193
- style: normalizeStyle({ fontSize: `${unref(progressTextSize)}px` })
194
- }, [
195
- renderSlot(_ctx.$slots, "default", { percentage: _ctx.percentage }, () => [
196
- !_ctx.status ? (openBlock(), createElementBlock("span", _hoisted_5, toDisplayString(unref(content)), 1)) : (openBlock(), createBlock(unref(ElIcon), { key: 1 }, {
197
- default: withCtx(() => [
198
- (openBlock(), createBlock(resolveDynamicComponent(unref(statusIcon))))
199
- ]),
200
- _: 1
201
- }))
202
- ])
203
- ], 6)) : createCommentVNode("v-if", true)
204
- ], 10, _hoisted_1);
205
- };
4
+ const progressProps = buildProps({
5
+ type: {
6
+ type: String,
7
+ default: "line",
8
+ values: ["line", "circle", "dashboard"]
9
+ },
10
+ percentage: {
11
+ type: Number,
12
+ default: 0,
13
+ validator: (val) => val >= 0 && val <= 100
14
+ },
15
+ status: {
16
+ type: String,
17
+ default: "",
18
+ values: ["", "success", "exception", "warning"]
19
+ },
20
+ indeterminate: {
21
+ type: Boolean,
22
+ default: false
23
+ },
24
+ duration: {
25
+ type: Number,
26
+ default: 3
27
+ },
28
+ strokeWidth: {
29
+ type: Number,
30
+ default: 6
31
+ },
32
+ strokeLinecap: {
33
+ type: definePropType(String),
34
+ default: "round"
35
+ },
36
+ textInside: {
37
+ type: Boolean,
38
+ default: false
39
+ },
40
+ width: {
41
+ type: Number,
42
+ default: 126
43
+ },
44
+ showText: {
45
+ type: Boolean,
46
+ default: true
47
+ },
48
+ color: {
49
+ type: definePropType([
50
+ String,
51
+ Array,
52
+ Function
53
+ ]),
54
+ default: ""
55
+ },
56
+ striped: Boolean,
57
+ stripedFlow: Boolean,
58
+ format: {
59
+ type: definePropType(Function),
60
+ default: (percentage) => `${percentage}%`
206
61
  }
207
62
  });
208
- var Progress = /* @__PURE__ */ _export_sfc(_sfc_main, [["__file", "progress.vue"]]);
209
63
 
210
- export { Progress as default };
64
+ export { progressProps };
211
65
  //# sourceMappingURL=progress.mjs.map
@@ -1 +1 @@
1
- {"version":3,"file":"progress.mjs","sources":["../../../../../../packages/components/progress/src/progress.vue"],"sourcesContent":["<template>\n <div\n :class=\"[\n ns.b(),\n ns.m(type),\n ns.is(status),\n {\n [ns.m('without-text')]: !showText,\n [ns.m('text-inside')]: textInside,\n },\n ]\"\n role=\"progressbar\"\n :aria-valuenow=\"percentage\"\n aria-valuemin=\"0\"\n aria-valuemax=\"100\"\n >\n <div v-if=\"type === 'line'\" :class=\"ns.b('bar')\">\n <div\n :class=\"ns.be('bar', 'outer')\"\n :style=\"{ height: `${strokeWidth}px` }\"\n >\n <div\n :class=\"[\n ns.be('bar', 'inner'),\n { [ns.bem('bar', 'inner', 'indeterminate')]: indeterminate },\n { [ns.bem('bar', 'inner', 'striped')]: striped },\n { [ns.bem('bar', 'inner', 'striped-flow')]: stripedFlow },\n ]\"\n :style=\"barStyle\"\n >\n <div\n v-if=\"(showText || $slots.default) && textInside\"\n :class=\"ns.be('bar', 'innerText')\"\n >\n <slot :percentage=\"percentage\">\n <span>{{ content }}</span>\n </slot>\n </div>\n </div>\n </div>\n </div>\n <div\n v-else\n :class=\"ns.b('circle')\"\n :style=\"{ height: `${width}px`, width: `${width}px` }\"\n >\n <svg viewBox=\"0 0 100 100\">\n <path\n :class=\"ns.be('circle', 'track')\"\n :d=\"trackPath\"\n :stroke=\"`var(${ns.cssVarName('fill-color-light')}, #e5e9f2)`\"\n :stroke-linecap=\"strokeLinecap\"\n :stroke-width=\"relativeStrokeWidth\"\n fill=\"none\"\n :style=\"trailPathStyle\"\n />\n <path\n :class=\"ns.be('circle', 'path')\"\n :d=\"trackPath\"\n :stroke=\"stroke\"\n fill=\"none\"\n :opacity=\"percentage ? 1 : 0\"\n :stroke-linecap=\"strokeLinecap\"\n :stroke-width=\"relativeStrokeWidth\"\n :style=\"circlePathStyle\"\n />\n </svg>\n </div>\n <div\n v-if=\"(showText || $slots.default) && !textInside\"\n :class=\"ns.e('text')\"\n :style=\"{ fontSize: `${progressTextSize}px` }\"\n >\n <slot :percentage=\"percentage\">\n <span v-if=\"!status\">{{ content }}</span>\n <el-icon v-else>\n <component :is=\"statusIcon\" />\n </el-icon>\n </slot>\n </div>\n </div>\n</template>\n\n<script lang=\"ts\" setup>\nimport { computed } from 'vue'\nimport { ElIcon } from '@element-plus/components/icon'\nimport {\n Check,\n CircleCheck,\n CircleClose,\n Close,\n WarningFilled,\n} from '@element-plus/icons-vue'\nimport { useNamespace } from '@element-plus/hooks'\nimport { isFunction, isString } from '@element-plus/utils'\nimport { progressProps } from './progress'\nimport type { CSSProperties } from 'vue'\nimport type { ProgressColor } from './progress'\n\ndefineOptions({\n name: 'ElProgress',\n})\n\nconst STATUS_COLOR_MAP: Record<string, string> = {\n success: '#13ce66',\n exception: '#ff4949',\n warning: '#e6a23c',\n default: '#20a0ff',\n}\n\nconst props = defineProps(progressProps)\n\nconst ns = useNamespace('progress')\n\nconst barStyle = computed<CSSProperties>(() => ({\n width: `${props.percentage}%`,\n animationDuration: `${props.duration}s`,\n background: getCurrentColor(props.percentage),\n}))\n\nconst relativeStrokeWidth = computed(() =>\n ((props.strokeWidth / props.width) * 100).toFixed(1)\n)\n\nconst radius = computed(() => {\n if (['circle', 'dashboard'].includes(props.type)) {\n return Number.parseInt(\n `${50 - Number.parseFloat(relativeStrokeWidth.value) / 2}`,\n 10\n )\n }\n return 0\n})\n\nconst trackPath = computed(() => {\n const r = radius.value\n const isDashboard = props.type === 'dashboard'\n return `\n M 50 50\n m 0 ${isDashboard ? '' : '-'}${r}\n a ${r} ${r} 0 1 1 0 ${isDashboard ? '-' : ''}${r * 2}\n a ${r} ${r} 0 1 1 0 ${isDashboard ? '' : '-'}${r * 2}\n `\n})\n\nconst perimeter = computed(() => 2 * Math.PI * radius.value)\n\nconst rate = computed(() => (props.type === 'dashboard' ? 0.75 : 1))\n\nconst strokeDashoffset = computed(() => {\n const offset = (-1 * perimeter.value * (1 - rate.value)) / 2\n return `${offset}px`\n})\n\nconst trailPathStyle = computed<CSSProperties>(() => ({\n strokeDasharray: `${perimeter.value * rate.value}px, ${perimeter.value}px`,\n strokeDashoffset: strokeDashoffset.value,\n}))\n\nconst circlePathStyle = computed<CSSProperties>(() => ({\n strokeDasharray: `${\n perimeter.value * rate.value * (props.percentage / 100)\n }px, ${perimeter.value}px`,\n strokeDashoffset: strokeDashoffset.value,\n transition:\n 'stroke-dasharray 0.6s ease 0s, stroke 0.6s ease, opacity ease 0.6s',\n}))\n\nconst stroke = computed(() => {\n let ret: string\n if (props.color) {\n ret = getCurrentColor(props.percentage)\n } else {\n ret = STATUS_COLOR_MAP[props.status] || STATUS_COLOR_MAP.default\n }\n return ret\n})\n\nconst statusIcon = computed(() => {\n if (props.status === 'warning') {\n return WarningFilled\n }\n if (props.type === 'line') {\n return props.status === 'success' ? CircleCheck : CircleClose\n } else {\n return props.status === 'success' ? Check : Close\n }\n})\n\nconst progressTextSize = computed(() => {\n return props.type === 'line'\n ? 12 + props.strokeWidth * 0.4\n : props.width * 0.111111 + 2\n})\n\nconst content = computed(() => props.format(props.percentage))\n\nfunction getColors(color: ProgressColor[]) {\n const span = 100 / color.length\n const seriesColors = color.map((seriesColor, index) => {\n if (isString(seriesColor)) {\n return {\n color: seriesColor,\n percentage: (index + 1) * span,\n }\n }\n return seriesColor\n })\n return seriesColors.sort((a, b) => a.percentage - b.percentage)\n}\n\nconst getCurrentColor = (percentage: number) => {\n const { color } = props\n if (isFunction(color)) {\n return color(percentage)\n } else if (isString(color)) {\n return color\n } else {\n const colors = getColors(color)\n for (const color of colors) {\n if (color.percentage > percentage) return color.color\n }\n return colors[colors.length - 1]?.color\n }\n}\n</script>\n"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"progress.mjs","sources":["../../../../../../packages/components/progress/src/progress.ts"],"sourcesContent":["import { buildProps, definePropType } from '@element-plus/utils'\nimport type { ExtractPropTypes, SVGAttributes } from 'vue'\nimport type Progress from './progress.vue'\n\nexport type ProgressColor = { color: string; percentage: number }\nexport type ProgressFn = (percentage: number) => string\n\nexport const progressProps = buildProps({\n /**\n * @description type of progress bar\n */\n type: {\n type: String,\n default: 'line',\n values: ['line', 'circle', 'dashboard'],\n },\n /**\n * @description percentage, required\n */\n percentage: {\n type: Number,\n default: 0,\n validator: (val: number): boolean => val >= 0 && val <= 100,\n },\n /**\n * @description the current status of progress bar\n */\n status: {\n type: String,\n default: '',\n values: ['', 'success', 'exception', 'warning'],\n },\n /**\n * @description set indeterminate progress\n */\n indeterminate: {\n type: Boolean,\n default: false,\n },\n /**\n * @description control the animation duration of indeterminate progress or striped flow progress\n */\n duration: {\n type: Number,\n default: 3,\n },\n /**\n * @description the width of progress bar\n */\n strokeWidth: {\n type: Number,\n default: 6,\n },\n /**\n * @description butt/circle/dashboard type shape at the end path\n */\n strokeLinecap: {\n type: definePropType<NonNullable<SVGAttributes['stroke-linecap']>>(String),\n default: 'round',\n },\n /**\n * @description whether to place the percentage inside progress bar, only works when `type` is 'line'\n */\n textInside: {\n type: Boolean,\n default: false,\n },\n /**\n * @description the canvas width of circle progress bar\n */\n width: {\n type: Number,\n default: 126,\n },\n /**\n * @description whether to show percentage\n */\n showText: {\n type: Boolean,\n default: true,\n },\n /**\n * @description background color of progress bar. Overrides `status` prop\n */\n color: {\n type: definePropType<string | ProgressColor[] | ProgressFn>([\n String,\n Array,\n Function,\n ]),\n default: '',\n },\n /**\n * @description stripe over the progress bar's color\n */\n striped: Boolean,\n /**\n * @description get the stripes to flow\n */\n stripedFlow: Boolean,\n /**\n * @description custom text format\n */\n format: {\n type: definePropType<ProgressFn>(Function),\n default: (percentage: number): string => `${percentage}%`,\n },\n} as const)\n\nexport type ProgressProps = ExtractPropTypes<typeof progressProps>\nexport type ProgressInstance = InstanceType<typeof Progress>\n"],"names":[],"mappings":";;;AACY,MAAC,aAAa,GAAG,UAAU,CAAC;AACxC,EAAE,IAAI,EAAE;AACR,IAAI,IAAI,EAAE,MAAM;AAChB,IAAI,OAAO,EAAE,MAAM;AACnB,IAAI,MAAM,EAAE,CAAC,MAAM,EAAE,QAAQ,EAAE,WAAW,CAAC;AAC3C,GAAG;AACH,EAAE,UAAU,EAAE;AACd,IAAI,IAAI,EAAE,MAAM;AAChB,IAAI,OAAO,EAAE,CAAC;AACd,IAAI,SAAS,EAAE,CAAC,GAAG,KAAK,GAAG,IAAI,CAAC,IAAI,GAAG,IAAI,GAAG;AAC9C,GAAG;AACH,EAAE,MAAM,EAAE;AACV,IAAI,IAAI,EAAE,MAAM;AAChB,IAAI,OAAO,EAAE,EAAE;AACf,IAAI,MAAM,EAAE,CAAC,EAAE,EAAE,SAAS,EAAE,WAAW,EAAE,SAAS,CAAC;AACnD,GAAG;AACH,EAAE,aAAa,EAAE;AACjB,IAAI,IAAI,EAAE,OAAO;AACjB,IAAI,OAAO,EAAE,KAAK;AAClB,GAAG;AACH,EAAE,QAAQ,EAAE;AACZ,IAAI,IAAI,EAAE,MAAM;AAChB,IAAI,OAAO,EAAE,CAAC;AACd,GAAG;AACH,EAAE,WAAW,EAAE;AACf,IAAI,IAAI,EAAE,MAAM;AAChB,IAAI,OAAO,EAAE,CAAC;AACd,GAAG;AACH,EAAE,aAAa,EAAE;AACjB,IAAI,IAAI,EAAE,cAAc,CAAC,MAAM,CAAC;AAChC,IAAI,OAAO,EAAE,OAAO;AACpB,GAAG;AACH,EAAE,UAAU,EAAE;AACd,IAAI,IAAI,EAAE,OAAO;AACjB,IAAI,OAAO,EAAE,KAAK;AAClB,GAAG;AACH,EAAE,KAAK,EAAE;AACT,IAAI,IAAI,EAAE,MAAM;AAChB,IAAI,OAAO,EAAE,GAAG;AAChB,GAAG;AACH,EAAE,QAAQ,EAAE;AACZ,IAAI,IAAI,EAAE,OAAO;AACjB,IAAI,OAAO,EAAE,IAAI;AACjB,GAAG;AACH,EAAE,KAAK,EAAE;AACT,IAAI,IAAI,EAAE,cAAc,CAAC;AACzB,MAAM,MAAM;AACZ,MAAM,KAAK;AACX,MAAM,QAAQ;AACd,KAAK,CAAC;AACN,IAAI,OAAO,EAAE,EAAE;AACf,GAAG;AACH,EAAE,OAAO,EAAE,OAAO;AAClB,EAAE,WAAW,EAAE,OAAO;AACtB,EAAE,MAAM,EAAE;AACV,IAAI,IAAI,EAAE,cAAc,CAAC,QAAQ,CAAC;AAClC,IAAI,OAAO,EAAE,CAAC,UAAU,KAAK,CAAC,EAAE,UAAU,CAAC,CAAC,CAAC;AAC7C,GAAG;AACH,CAAC;;;;"}