@element-plus/nightly 0.0.20240412 → 0.0.20240413

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 (332) hide show
  1. package/dist/index.full.js +2 -2
  2. package/dist/index.full.min.js +2 -2
  3. package/dist/index.full.min.js.map +1 -1
  4. package/dist/index.full.min.mjs +2 -2
  5. package/dist/index.full.min.mjs.map +1 -1
  6. package/dist/index.full.mjs +2 -2
  7. package/dist/locale/af.js +1 -1
  8. package/dist/locale/af.min.js +1 -1
  9. package/dist/locale/af.min.mjs +1 -1
  10. package/dist/locale/af.mjs +1 -1
  11. package/dist/locale/ar-eg.js +1 -1
  12. package/dist/locale/ar-eg.min.js +1 -1
  13. package/dist/locale/ar-eg.min.mjs +1 -1
  14. package/dist/locale/ar-eg.mjs +1 -1
  15. package/dist/locale/ar.js +1 -1
  16. package/dist/locale/ar.min.js +1 -1
  17. package/dist/locale/ar.min.mjs +1 -1
  18. package/dist/locale/ar.mjs +1 -1
  19. package/dist/locale/az.js +1 -1
  20. package/dist/locale/az.min.js +1 -1
  21. package/dist/locale/az.min.mjs +1 -1
  22. package/dist/locale/az.mjs +1 -1
  23. package/dist/locale/bg.js +1 -1
  24. package/dist/locale/bg.min.js +1 -1
  25. package/dist/locale/bg.min.mjs +1 -1
  26. package/dist/locale/bg.mjs +1 -1
  27. package/dist/locale/bn.js +1 -1
  28. package/dist/locale/bn.min.js +1 -1
  29. package/dist/locale/bn.min.mjs +1 -1
  30. package/dist/locale/bn.mjs +1 -1
  31. package/dist/locale/ca.js +1 -1
  32. package/dist/locale/ca.min.js +1 -1
  33. package/dist/locale/ca.min.mjs +1 -1
  34. package/dist/locale/ca.mjs +1 -1
  35. package/dist/locale/ckb.js +1 -1
  36. package/dist/locale/ckb.min.js +1 -1
  37. package/dist/locale/ckb.min.mjs +1 -1
  38. package/dist/locale/ckb.mjs +1 -1
  39. package/dist/locale/cs.js +1 -1
  40. package/dist/locale/cs.min.js +1 -1
  41. package/dist/locale/cs.min.mjs +1 -1
  42. package/dist/locale/cs.mjs +1 -1
  43. package/dist/locale/da.js +1 -1
  44. package/dist/locale/da.min.js +1 -1
  45. package/dist/locale/da.min.mjs +1 -1
  46. package/dist/locale/da.mjs +1 -1
  47. package/dist/locale/de.js +1 -1
  48. package/dist/locale/de.min.js +1 -1
  49. package/dist/locale/de.min.mjs +1 -1
  50. package/dist/locale/de.mjs +1 -1
  51. package/dist/locale/el.js +1 -1
  52. package/dist/locale/el.min.js +1 -1
  53. package/dist/locale/el.min.mjs +1 -1
  54. package/dist/locale/el.mjs +1 -1
  55. package/dist/locale/en.js +1 -1
  56. package/dist/locale/en.min.js +1 -1
  57. package/dist/locale/en.min.mjs +1 -1
  58. package/dist/locale/en.mjs +1 -1
  59. package/dist/locale/eo.js +1 -1
  60. package/dist/locale/eo.min.js +1 -1
  61. package/dist/locale/eo.min.mjs +1 -1
  62. package/dist/locale/eo.mjs +1 -1
  63. package/dist/locale/es.js +1 -1
  64. package/dist/locale/es.min.js +1 -1
  65. package/dist/locale/es.min.mjs +1 -1
  66. package/dist/locale/es.mjs +1 -1
  67. package/dist/locale/et.js +1 -1
  68. package/dist/locale/et.min.js +1 -1
  69. package/dist/locale/et.min.mjs +1 -1
  70. package/dist/locale/et.mjs +1 -1
  71. package/dist/locale/eu.js +1 -1
  72. package/dist/locale/eu.min.js +1 -1
  73. package/dist/locale/eu.min.mjs +1 -1
  74. package/dist/locale/eu.mjs +1 -1
  75. package/dist/locale/fa.js +1 -1
  76. package/dist/locale/fa.min.js +1 -1
  77. package/dist/locale/fa.min.mjs +1 -1
  78. package/dist/locale/fa.mjs +1 -1
  79. package/dist/locale/fi.js +1 -1
  80. package/dist/locale/fi.min.js +1 -1
  81. package/dist/locale/fi.min.mjs +1 -1
  82. package/dist/locale/fi.mjs +1 -1
  83. package/dist/locale/fr.js +1 -1
  84. package/dist/locale/fr.min.js +1 -1
  85. package/dist/locale/fr.min.mjs +1 -1
  86. package/dist/locale/fr.mjs +1 -1
  87. package/dist/locale/he.js +1 -1
  88. package/dist/locale/he.min.js +1 -1
  89. package/dist/locale/he.min.mjs +1 -1
  90. package/dist/locale/he.mjs +1 -1
  91. package/dist/locale/hr.js +1 -1
  92. package/dist/locale/hr.min.js +1 -1
  93. package/dist/locale/hr.min.mjs +1 -1
  94. package/dist/locale/hr.mjs +1 -1
  95. package/dist/locale/hu.js +1 -1
  96. package/dist/locale/hu.min.js +1 -1
  97. package/dist/locale/hu.min.mjs +1 -1
  98. package/dist/locale/hu.mjs +1 -1
  99. package/dist/locale/hy-am.js +1 -1
  100. package/dist/locale/hy-am.min.js +1 -1
  101. package/dist/locale/hy-am.min.mjs +1 -1
  102. package/dist/locale/hy-am.mjs +1 -1
  103. package/dist/locale/id.js +1 -1
  104. package/dist/locale/id.min.js +1 -1
  105. package/dist/locale/id.min.mjs +1 -1
  106. package/dist/locale/id.mjs +1 -1
  107. package/dist/locale/it.js +1 -1
  108. package/dist/locale/it.min.js +1 -1
  109. package/dist/locale/it.min.mjs +1 -1
  110. package/dist/locale/it.mjs +1 -1
  111. package/dist/locale/ja.js +1 -1
  112. package/dist/locale/ja.min.js +1 -1
  113. package/dist/locale/ja.min.mjs +1 -1
  114. package/dist/locale/ja.mjs +1 -1
  115. package/dist/locale/kk.js +1 -1
  116. package/dist/locale/kk.min.js +1 -1
  117. package/dist/locale/kk.min.mjs +1 -1
  118. package/dist/locale/kk.mjs +1 -1
  119. package/dist/locale/km.js +1 -1
  120. package/dist/locale/km.min.js +1 -1
  121. package/dist/locale/km.min.mjs +1 -1
  122. package/dist/locale/km.mjs +1 -1
  123. package/dist/locale/ko.js +1 -1
  124. package/dist/locale/ko.min.js +1 -1
  125. package/dist/locale/ko.min.mjs +1 -1
  126. package/dist/locale/ko.mjs +1 -1
  127. package/dist/locale/ku.js +1 -1
  128. package/dist/locale/ku.min.js +1 -1
  129. package/dist/locale/ku.min.mjs +1 -1
  130. package/dist/locale/ku.mjs +1 -1
  131. package/dist/locale/ky.js +1 -1
  132. package/dist/locale/ky.min.js +1 -1
  133. package/dist/locale/ky.min.mjs +1 -1
  134. package/dist/locale/ky.mjs +1 -1
  135. package/dist/locale/lt.js +1 -1
  136. package/dist/locale/lt.min.js +1 -1
  137. package/dist/locale/lt.min.mjs +1 -1
  138. package/dist/locale/lt.mjs +1 -1
  139. package/dist/locale/lv.js +1 -1
  140. package/dist/locale/lv.min.js +1 -1
  141. package/dist/locale/lv.min.mjs +1 -1
  142. package/dist/locale/lv.mjs +1 -1
  143. package/dist/locale/mg.js +1 -1
  144. package/dist/locale/mg.min.js +1 -1
  145. package/dist/locale/mg.min.mjs +1 -1
  146. package/dist/locale/mg.mjs +1 -1
  147. package/dist/locale/mn.js +1 -1
  148. package/dist/locale/mn.min.js +1 -1
  149. package/dist/locale/mn.min.mjs +1 -1
  150. package/dist/locale/mn.mjs +1 -1
  151. package/dist/locale/nb-no.js +1 -1
  152. package/dist/locale/nb-no.min.js +1 -1
  153. package/dist/locale/nb-no.min.mjs +1 -1
  154. package/dist/locale/nb-no.mjs +1 -1
  155. package/dist/locale/nl.js +1 -1
  156. package/dist/locale/nl.min.js +1 -1
  157. package/dist/locale/nl.min.mjs +1 -1
  158. package/dist/locale/nl.mjs +1 -1
  159. package/dist/locale/pa.js +1 -1
  160. package/dist/locale/pa.min.js +1 -1
  161. package/dist/locale/pa.min.mjs +1 -1
  162. package/dist/locale/pa.mjs +1 -1
  163. package/dist/locale/pl.js +1 -1
  164. package/dist/locale/pl.min.js +1 -1
  165. package/dist/locale/pl.min.mjs +1 -1
  166. package/dist/locale/pl.mjs +1 -1
  167. package/dist/locale/pt-br.js +1 -1
  168. package/dist/locale/pt-br.min.js +1 -1
  169. package/dist/locale/pt-br.min.mjs +1 -1
  170. package/dist/locale/pt-br.mjs +1 -1
  171. package/dist/locale/pt.js +1 -1
  172. package/dist/locale/pt.min.js +1 -1
  173. package/dist/locale/pt.min.mjs +1 -1
  174. package/dist/locale/pt.mjs +1 -1
  175. package/dist/locale/ro.js +1 -1
  176. package/dist/locale/ro.min.js +1 -1
  177. package/dist/locale/ro.min.mjs +1 -1
  178. package/dist/locale/ro.mjs +1 -1
  179. package/dist/locale/ru.js +1 -1
  180. package/dist/locale/ru.min.js +1 -1
  181. package/dist/locale/ru.min.mjs +1 -1
  182. package/dist/locale/ru.mjs +1 -1
  183. package/dist/locale/sk.js +1 -1
  184. package/dist/locale/sk.min.js +1 -1
  185. package/dist/locale/sk.min.mjs +1 -1
  186. package/dist/locale/sk.mjs +1 -1
  187. package/dist/locale/sl.js +1 -1
  188. package/dist/locale/sl.min.js +1 -1
  189. package/dist/locale/sl.min.mjs +1 -1
  190. package/dist/locale/sl.mjs +1 -1
  191. package/dist/locale/sr.js +1 -1
  192. package/dist/locale/sr.min.js +1 -1
  193. package/dist/locale/sr.min.mjs +1 -1
  194. package/dist/locale/sr.mjs +1 -1
  195. package/dist/locale/sv.js +1 -1
  196. package/dist/locale/sv.min.js +1 -1
  197. package/dist/locale/sv.min.mjs +1 -1
  198. package/dist/locale/sv.mjs +1 -1
  199. package/dist/locale/sw.js +1 -1
  200. package/dist/locale/sw.min.js +1 -1
  201. package/dist/locale/sw.min.mjs +1 -1
  202. package/dist/locale/sw.mjs +1 -1
  203. package/dist/locale/ta.js +1 -1
  204. package/dist/locale/ta.min.js +1 -1
  205. package/dist/locale/ta.min.mjs +1 -1
  206. package/dist/locale/ta.mjs +1 -1
  207. package/dist/locale/th.js +1 -1
  208. package/dist/locale/th.min.js +1 -1
  209. package/dist/locale/th.min.mjs +1 -1
  210. package/dist/locale/th.mjs +1 -1
  211. package/dist/locale/tk.js +1 -1
  212. package/dist/locale/tk.min.js +1 -1
  213. package/dist/locale/tk.min.mjs +1 -1
  214. package/dist/locale/tk.mjs +1 -1
  215. package/dist/locale/tr.js +1 -1
  216. package/dist/locale/tr.min.js +1 -1
  217. package/dist/locale/tr.min.mjs +1 -1
  218. package/dist/locale/tr.mjs +1 -1
  219. package/dist/locale/ug-cn.js +1 -1
  220. package/dist/locale/ug-cn.min.js +1 -1
  221. package/dist/locale/ug-cn.min.mjs +1 -1
  222. package/dist/locale/ug-cn.mjs +1 -1
  223. package/dist/locale/uk.js +1 -1
  224. package/dist/locale/uk.min.js +1 -1
  225. package/dist/locale/uk.min.mjs +1 -1
  226. package/dist/locale/uk.mjs +1 -1
  227. package/dist/locale/uz-uz.js +1 -1
  228. package/dist/locale/uz-uz.min.js +1 -1
  229. package/dist/locale/uz-uz.min.mjs +1 -1
  230. package/dist/locale/uz-uz.mjs +1 -1
  231. package/dist/locale/vi.js +1 -1
  232. package/dist/locale/vi.min.js +1 -1
  233. package/dist/locale/vi.min.mjs +1 -1
  234. package/dist/locale/vi.mjs +1 -1
  235. package/dist/locale/zh-cn.js +1 -1
  236. package/dist/locale/zh-cn.min.js +1 -1
  237. package/dist/locale/zh-cn.min.mjs +1 -1
  238. package/dist/locale/zh-cn.mjs +1 -1
  239. package/dist/locale/zh-tw.js +1 -1
  240. package/dist/locale/zh-tw.min.js +1 -1
  241. package/dist/locale/zh-tw.min.mjs +1 -1
  242. package/dist/locale/zh-tw.mjs +1 -1
  243. package/es/components/button/index.mjs +2 -2
  244. package/es/components/button/src/button-group.mjs +1 -1
  245. package/es/components/button/src/button.mjs +77 -57
  246. package/es/components/button/src/button.mjs.map +1 -1
  247. package/es/components/button/src/button2.mjs +57 -77
  248. package/es/components/button/src/button2.mjs.map +1 -1
  249. package/es/components/index.mjs +7 -7
  250. package/es/components/message/index.mjs +1 -1
  251. package/es/components/message/src/message.mjs +91 -149
  252. package/es/components/message/src/message.mjs.map +1 -1
  253. package/es/components/message/src/message2.mjs +149 -91
  254. package/es/components/message/src/message2.mjs.map +1 -1
  255. package/es/components/message/src/method.mjs +2 -2
  256. package/es/components/popconfirm/index.mjs +2 -2
  257. package/es/components/popconfirm/src/popconfirm.mjs +110 -47
  258. package/es/components/popconfirm/src/popconfirm.mjs.map +1 -1
  259. package/es/components/popconfirm/src/popconfirm2.mjs +47 -110
  260. package/es/components/popconfirm/src/popconfirm2.mjs.map +1 -1
  261. package/es/components/popper/index.mjs +2 -2
  262. package/es/components/popper/src/popper.mjs +32 -25
  263. package/es/components/popper/src/popper.mjs.map +1 -1
  264. package/es/components/popper/src/popper2.mjs +25 -32
  265. package/es/components/popper/src/popper2.mjs.map +1 -1
  266. package/es/components/radio/index.mjs +2 -2
  267. package/es/components/radio/src/radio-button.mjs +67 -6
  268. package/es/components/radio/src/radio-button.mjs.map +1 -1
  269. package/es/components/radio/src/radio-button2.mjs +6 -67
  270. package/es/components/radio/src/radio-button2.mjs.map +1 -1
  271. package/es/components/tooltip/src/tooltip.mjs +1 -1
  272. package/es/components/tour/index.mjs +2 -2
  273. package/es/components/tour/src/tour.mjs +152 -69
  274. package/es/components/tour/src/tour.mjs.map +1 -1
  275. package/es/components/tour/src/tour2.mjs +69 -152
  276. package/es/components/tour/src/tour2.mjs.map +1 -1
  277. package/es/components/upload/index.mjs +1 -1
  278. package/es/components/upload/src/upload-content.mjs +33 -194
  279. package/es/components/upload/src/upload-content.mjs.map +1 -1
  280. package/es/components/upload/src/upload-content2.mjs +194 -33
  281. package/es/components/upload/src/upload-content2.mjs.map +1 -1
  282. package/es/components/upload/src/upload2.mjs +1 -1
  283. package/es/index.mjs +7 -7
  284. package/es/version.d.ts +1 -1
  285. package/es/version.mjs +1 -1
  286. package/es/version.mjs.map +1 -1
  287. package/lib/components/button/index.js +2 -2
  288. package/lib/components/button/src/button-group.js +1 -1
  289. package/lib/components/button/src/button.js +77 -60
  290. package/lib/components/button/src/button.js.map +1 -1
  291. package/lib/components/button/src/button2.js +60 -77
  292. package/lib/components/button/src/button2.js.map +1 -1
  293. package/lib/components/index.js +7 -7
  294. package/lib/components/message/index.js +1 -1
  295. package/lib/components/message/src/message.js +93 -148
  296. package/lib/components/message/src/message.js.map +1 -1
  297. package/lib/components/message/src/message2.js +148 -93
  298. package/lib/components/message/src/message2.js.map +1 -1
  299. package/lib/components/message/src/method.js +2 -2
  300. package/lib/components/popconfirm/index.js +2 -2
  301. package/lib/components/popconfirm/src/popconfirm.js +110 -48
  302. package/lib/components/popconfirm/src/popconfirm.js.map +1 -1
  303. package/lib/components/popconfirm/src/popconfirm2.js +48 -110
  304. package/lib/components/popconfirm/src/popconfirm2.js.map +1 -1
  305. package/lib/components/popper/index.js +2 -2
  306. package/lib/components/popper/src/popper.js +32 -28
  307. package/lib/components/popper/src/popper.js.map +1 -1
  308. package/lib/components/popper/src/popper2.js +28 -32
  309. package/lib/components/popper/src/popper2.js.map +1 -1
  310. package/lib/components/radio/index.js +2 -2
  311. package/lib/components/radio/src/radio-button.js +67 -6
  312. package/lib/components/radio/src/radio-button.js.map +1 -1
  313. package/lib/components/radio/src/radio-button2.js +6 -67
  314. package/lib/components/radio/src/radio-button2.js.map +1 -1
  315. package/lib/components/tooltip/src/tooltip.js +1 -1
  316. package/lib/components/tour/index.js +2 -2
  317. package/lib/components/tour/src/tour.js +151 -69
  318. package/lib/components/tour/src/tour.js.map +1 -1
  319. package/lib/components/tour/src/tour2.js +69 -151
  320. package/lib/components/tour/src/tour2.js.map +1 -1
  321. package/lib/components/upload/index.js +1 -1
  322. package/lib/components/upload/src/upload-content.js +31 -192
  323. package/lib/components/upload/src/upload-content.js.map +1 -1
  324. package/lib/components/upload/src/upload-content2.js +192 -31
  325. package/lib/components/upload/src/upload-content2.js.map +1 -1
  326. package/lib/components/upload/src/upload2.js +1 -1
  327. package/lib/index.js +7 -7
  328. package/lib/version.d.ts +1 -1
  329. package/lib/version.js +1 -1
  330. package/lib/version.js.map +1 -1
  331. package/package.json +1 -1
  332. package/web-types.json +1 -1
@@ -1,39 +1,200 @@
1
- import { NOOP } from '@vue/shared';
1
+ import { defineComponent, shallowRef, openBlock, createElementBlock, normalizeClass, unref, withKeys, withModifiers, createBlock, withCtx, renderSlot, createElementVNode } from 'vue';
2
+ import { isPlainObject, isFunction } from '@vue/shared';
3
+ import { cloneDeep, isEqual } from 'lodash-unified';
4
+ import '../../../hooks/index.mjs';
2
5
  import '../../../utils/index.mjs';
3
- import { uploadBaseProps } from './upload.mjs';
4
- import { buildProps, definePropType } from '../../../utils/vue/props/runtime.mjs';
6
+ import '../../form/index.mjs';
7
+ import UploadDragger from './upload-dragger2.mjs';
8
+ import { uploadContentProps } from './upload-content.mjs';
9
+ import { genFileId } from './upload.mjs';
10
+ import _export_sfc from '../../../_virtual/plugin-vue_export-helper.mjs';
11
+ import { useNamespace } from '../../../hooks/use-namespace/index.mjs';
12
+ import { useFormDisabled } from '../../form/src/hooks/use-form-common-props.mjs';
13
+ import { entriesOf } from '../../../utils/objects.mjs';
5
14
 
6
- const uploadContentProps = buildProps({
7
- ...uploadBaseProps,
8
- beforeUpload: {
9
- type: definePropType(Function),
10
- default: NOOP
11
- },
12
- onRemove: {
13
- type: definePropType(Function),
14
- default: NOOP
15
- },
16
- onStart: {
17
- type: definePropType(Function),
18
- default: NOOP
19
- },
20
- onSuccess: {
21
- type: definePropType(Function),
22
- default: NOOP
23
- },
24
- onProgress: {
25
- type: definePropType(Function),
26
- default: NOOP
27
- },
28
- onError: {
29
- type: definePropType(Function),
30
- default: NOOP
31
- },
32
- onExceed: {
33
- type: definePropType(Function),
34
- default: NOOP
15
+ const _hoisted_1 = ["onKeydown"];
16
+ const _hoisted_2 = ["name", "multiple", "accept"];
17
+ const __default__ = defineComponent({
18
+ name: "ElUploadContent",
19
+ inheritAttrs: false
20
+ });
21
+ const _sfc_main = /* @__PURE__ */ defineComponent({
22
+ ...__default__,
23
+ props: uploadContentProps,
24
+ setup(__props, { expose }) {
25
+ const props = __props;
26
+ const ns = useNamespace("upload");
27
+ const disabled = useFormDisabled();
28
+ const requests = shallowRef({});
29
+ const inputRef = shallowRef();
30
+ const uploadFiles = (files) => {
31
+ if (files.length === 0)
32
+ return;
33
+ const { autoUpload, limit, fileList, multiple, onStart, onExceed } = props;
34
+ if (limit && fileList.length + files.length > limit) {
35
+ onExceed(files, fileList);
36
+ return;
37
+ }
38
+ if (!multiple) {
39
+ files = files.slice(0, 1);
40
+ }
41
+ for (const file of files) {
42
+ const rawFile = file;
43
+ rawFile.uid = genFileId();
44
+ onStart(rawFile);
45
+ if (autoUpload)
46
+ upload(rawFile);
47
+ }
48
+ };
49
+ const upload = async (rawFile) => {
50
+ inputRef.value.value = "";
51
+ if (!props.beforeUpload) {
52
+ return doUpload(rawFile);
53
+ }
54
+ let hookResult;
55
+ let beforeData = {};
56
+ try {
57
+ const originData = props.data;
58
+ const beforeUploadPromise = props.beforeUpload(rawFile);
59
+ beforeData = isPlainObject(props.data) ? cloneDeep(props.data) : props.data;
60
+ hookResult = await beforeUploadPromise;
61
+ if (isPlainObject(props.data) && isEqual(originData, beforeData)) {
62
+ beforeData = cloneDeep(props.data);
63
+ }
64
+ } catch (e) {
65
+ hookResult = false;
66
+ }
67
+ if (hookResult === false) {
68
+ props.onRemove(rawFile);
69
+ return;
70
+ }
71
+ let file = rawFile;
72
+ if (hookResult instanceof Blob) {
73
+ if (hookResult instanceof File) {
74
+ file = hookResult;
75
+ } else {
76
+ file = new File([hookResult], rawFile.name, {
77
+ type: rawFile.type
78
+ });
79
+ }
80
+ }
81
+ doUpload(Object.assign(file, {
82
+ uid: rawFile.uid
83
+ }), beforeData);
84
+ };
85
+ const resolveData = async (data, rawFile) => {
86
+ if (isFunction(data)) {
87
+ return data(rawFile);
88
+ }
89
+ return data;
90
+ };
91
+ const doUpload = async (rawFile, beforeData) => {
92
+ const {
93
+ headers,
94
+ data,
95
+ method,
96
+ withCredentials,
97
+ name: filename,
98
+ action,
99
+ onProgress,
100
+ onSuccess,
101
+ onError,
102
+ httpRequest
103
+ } = props;
104
+ try {
105
+ beforeData = await resolveData(beforeData != null ? beforeData : data, rawFile);
106
+ } catch (e) {
107
+ props.onRemove(rawFile);
108
+ return;
109
+ }
110
+ const { uid } = rawFile;
111
+ const options = {
112
+ headers: headers || {},
113
+ withCredentials,
114
+ file: rawFile,
115
+ data: beforeData,
116
+ method,
117
+ filename,
118
+ action,
119
+ onProgress: (evt) => {
120
+ onProgress(evt, rawFile);
121
+ },
122
+ onSuccess: (res) => {
123
+ onSuccess(res, rawFile);
124
+ delete requests.value[uid];
125
+ },
126
+ onError: (err) => {
127
+ onError(err, rawFile);
128
+ delete requests.value[uid];
129
+ }
130
+ };
131
+ const request = httpRequest(options);
132
+ requests.value[uid] = request;
133
+ if (request instanceof Promise) {
134
+ request.then(options.onSuccess, options.onError);
135
+ }
136
+ };
137
+ const handleChange = (e) => {
138
+ const files = e.target.files;
139
+ if (!files)
140
+ return;
141
+ uploadFiles(Array.from(files));
142
+ };
143
+ const handleClick = () => {
144
+ if (!disabled.value) {
145
+ inputRef.value.value = "";
146
+ inputRef.value.click();
147
+ }
148
+ };
149
+ const handleKeydown = () => {
150
+ handleClick();
151
+ };
152
+ const abort = (file) => {
153
+ const _reqs = entriesOf(requests.value).filter(file ? ([uid]) => String(file.uid) === uid : () => true);
154
+ _reqs.forEach(([uid, req]) => {
155
+ if (req instanceof XMLHttpRequest)
156
+ req.abort();
157
+ delete requests.value[uid];
158
+ });
159
+ };
160
+ expose({
161
+ abort,
162
+ upload
163
+ });
164
+ return (_ctx, _cache) => {
165
+ return openBlock(), createElementBlock("div", {
166
+ class: normalizeClass([unref(ns).b(), unref(ns).m(_ctx.listType), unref(ns).is("drag", _ctx.drag)]),
167
+ tabindex: "0",
168
+ onClick: handleClick,
169
+ onKeydown: withKeys(withModifiers(handleKeydown, ["self"]), ["enter", "space"])
170
+ }, [
171
+ _ctx.drag ? (openBlock(), createBlock(UploadDragger, {
172
+ key: 0,
173
+ disabled: unref(disabled),
174
+ onFile: uploadFiles
175
+ }, {
176
+ default: withCtx(() => [
177
+ renderSlot(_ctx.$slots, "default")
178
+ ]),
179
+ _: 3
180
+ }, 8, ["disabled"])) : renderSlot(_ctx.$slots, "default", { key: 1 }),
181
+ createElementVNode("input", {
182
+ ref_key: "inputRef",
183
+ ref: inputRef,
184
+ class: normalizeClass(unref(ns).e("input")),
185
+ name: _ctx.name,
186
+ multiple: _ctx.multiple,
187
+ accept: _ctx.accept,
188
+ type: "file",
189
+ onChange: handleChange,
190
+ onClick: _cache[0] || (_cache[0] = withModifiers(() => {
191
+ }, ["stop"]))
192
+ }, null, 42, _hoisted_2)
193
+ ], 42, _hoisted_1);
194
+ };
35
195
  }
36
196
  });
197
+ var UploadContent = /* @__PURE__ */ _export_sfc(_sfc_main, [["__file", "upload-content.vue"]]);
37
198
 
38
- export { uploadContentProps };
199
+ export { UploadContent as default };
39
200
  //# sourceMappingURL=upload-content2.mjs.map
@@ -1 +1 @@
1
- {"version":3,"file":"upload-content2.mjs","sources":["../../../../../../packages/components/upload/src/upload-content.ts"],"sourcesContent":["import { NOOP } from '@vue/shared'\nimport { buildProps, definePropType } from '@element-plus/utils'\nimport { uploadBaseProps } from './upload'\n\nimport type { ExtractPropTypes } from 'vue'\nimport type {\n UploadFile,\n UploadHooks,\n UploadProgressEvent,\n UploadRawFile,\n} from './upload'\nimport type UploadContent from './upload-content.vue'\nimport type { UploadAjaxError } from './ajax'\n\nexport const uploadContentProps = buildProps({\n ...uploadBaseProps,\n\n beforeUpload: {\n type: definePropType<UploadHooks['beforeUpload']>(Function),\n default: NOOP,\n },\n onRemove: {\n type: definePropType<\n (file: UploadFile | UploadRawFile, rawFile?: UploadRawFile) => void\n >(Function),\n default: NOOP,\n },\n onStart: {\n type: definePropType<(rawFile: UploadRawFile) => void>(Function),\n default: NOOP,\n },\n onSuccess: {\n type: definePropType<(response: any, rawFile: UploadRawFile) => unknown>(\n Function\n ),\n default: NOOP,\n },\n onProgress: {\n type: definePropType<\n (evt: UploadProgressEvent, rawFile: UploadRawFile) => void\n >(Function),\n default: NOOP,\n },\n onError: {\n type: definePropType<\n (err: UploadAjaxError, rawFile: UploadRawFile) => void\n >(Function),\n default: NOOP,\n },\n onExceed: {\n type: definePropType<UploadHooks['onExceed']>(Function),\n default: NOOP,\n },\n} as const)\n\nexport type UploadContentProps = ExtractPropTypes<typeof uploadContentProps>\n\nexport type UploadContentInstance = InstanceType<typeof UploadContent>\n"],"names":[],"mappings":";;;;;AAGY,MAAC,kBAAkB,GAAG,UAAU,CAAC;AAC7C,EAAE,GAAG,eAAe;AACpB,EAAE,YAAY,EAAE;AAChB,IAAI,IAAI,EAAE,cAAc,CAAC,QAAQ,CAAC;AAClC,IAAI,OAAO,EAAE,IAAI;AACjB,GAAG;AACH,EAAE,QAAQ,EAAE;AACZ,IAAI,IAAI,EAAE,cAAc,CAAC,QAAQ,CAAC;AAClC,IAAI,OAAO,EAAE,IAAI;AACjB,GAAG;AACH,EAAE,OAAO,EAAE;AACX,IAAI,IAAI,EAAE,cAAc,CAAC,QAAQ,CAAC;AAClC,IAAI,OAAO,EAAE,IAAI;AACjB,GAAG;AACH,EAAE,SAAS,EAAE;AACb,IAAI,IAAI,EAAE,cAAc,CAAC,QAAQ,CAAC;AAClC,IAAI,OAAO,EAAE,IAAI;AACjB,GAAG;AACH,EAAE,UAAU,EAAE;AACd,IAAI,IAAI,EAAE,cAAc,CAAC,QAAQ,CAAC;AAClC,IAAI,OAAO,EAAE,IAAI;AACjB,GAAG;AACH,EAAE,OAAO,EAAE;AACX,IAAI,IAAI,EAAE,cAAc,CAAC,QAAQ,CAAC;AAClC,IAAI,OAAO,EAAE,IAAI;AACjB,GAAG;AACH,EAAE,QAAQ,EAAE;AACZ,IAAI,IAAI,EAAE,cAAc,CAAC,QAAQ,CAAC;AAClC,IAAI,OAAO,EAAE,IAAI;AACjB,GAAG;AACH,CAAC;;;;"}
1
+ {"version":3,"file":"upload-content2.mjs","sources":["../../../../../../packages/components/upload/src/upload-content.vue"],"sourcesContent":["<template>\n <div\n :class=\"[ns.b(), ns.m(listType), ns.is('drag', drag)]\"\n tabindex=\"0\"\n @click=\"handleClick\"\n @keydown.self.enter.space=\"handleKeydown\"\n >\n <template v-if=\"drag\">\n <upload-dragger :disabled=\"disabled\" @file=\"uploadFiles\">\n <slot />\n </upload-dragger>\n </template>\n <template v-else>\n <slot />\n </template>\n <input\n ref=\"inputRef\"\n :class=\"ns.e('input')\"\n :name=\"name\"\n :multiple=\"multiple\"\n :accept=\"accept\"\n type=\"file\"\n @change=\"handleChange\"\n @click.stop\n />\n </div>\n</template>\n\n<script lang=\"ts\" setup>\nimport { shallowRef } from 'vue'\nimport { isPlainObject } from '@vue/shared'\nimport { cloneDeep, isEqual } from 'lodash-unified'\nimport { useNamespace } from '@element-plus/hooks'\nimport { entriesOf, isFunction } from '@element-plus/utils'\nimport { useFormDisabled } from '@element-plus/components/form'\nimport UploadDragger from './upload-dragger.vue'\nimport { uploadContentProps } from './upload-content'\nimport { genFileId } from './upload'\nimport type { UploadContentProps } from './upload-content'\n\nimport type {\n UploadFile,\n UploadHooks,\n UploadRawFile,\n UploadRequestOptions,\n} from './upload'\n\ndefineOptions({\n name: 'ElUploadContent',\n inheritAttrs: false,\n})\n\nconst props = defineProps(uploadContentProps)\nconst ns = useNamespace('upload')\nconst disabled = useFormDisabled()\n\nconst requests = shallowRef<Record<string, XMLHttpRequest | Promise<unknown>>>(\n {}\n)\nconst inputRef = shallowRef<HTMLInputElement>()\n\nconst uploadFiles = (files: File[]) => {\n if (files.length === 0) return\n\n const { autoUpload, limit, fileList, multiple, onStart, onExceed } = props\n\n if (limit && fileList.length + files.length > limit) {\n onExceed(files, fileList)\n return\n }\n\n if (!multiple) {\n files = files.slice(0, 1)\n }\n\n for (const file of files) {\n const rawFile = file as UploadRawFile\n rawFile.uid = genFileId()\n onStart(rawFile)\n if (autoUpload) upload(rawFile)\n }\n}\n\nconst upload = async (rawFile: UploadRawFile): Promise<void> => {\n inputRef.value!.value = ''\n\n if (!props.beforeUpload) {\n return doUpload(rawFile)\n }\n\n let hookResult: Exclude<ReturnType<UploadHooks['beforeUpload']>, Promise<any>>\n let beforeData: UploadContentProps['data'] = {}\n\n try {\n // origin data: Handle data changes after synchronization tasks are executed\n const originData = props.data\n const beforeUploadPromise = props.beforeUpload(rawFile)\n beforeData = isPlainObject(props.data) ? cloneDeep(props.data) : props.data\n hookResult = await beforeUploadPromise\n if (isPlainObject(props.data) && isEqual(originData, beforeData)) {\n beforeData = cloneDeep(props.data)\n }\n } catch {\n hookResult = false\n }\n\n if (hookResult === false) {\n props.onRemove(rawFile)\n return\n }\n\n let file: File = rawFile\n if (hookResult instanceof Blob) {\n if (hookResult instanceof File) {\n file = hookResult\n } else {\n file = new File([hookResult], rawFile.name, {\n type: rawFile.type,\n })\n }\n }\n\n doUpload(\n Object.assign(file, {\n uid: rawFile.uid,\n }),\n beforeData\n )\n}\n\nconst resolveData = async (\n data: UploadContentProps['data'],\n rawFile: UploadRawFile\n): Promise<Record<string, any>> => {\n if (isFunction(data)) {\n return data(rawFile)\n }\n\n return data\n}\n\nconst doUpload = async (\n rawFile: UploadRawFile,\n beforeData?: UploadContentProps['data']\n) => {\n const {\n headers,\n data,\n method,\n withCredentials,\n name: filename,\n action,\n onProgress,\n onSuccess,\n onError,\n httpRequest,\n } = props\n\n try {\n beforeData = await resolveData(beforeData ?? data, rawFile)\n } catch {\n props.onRemove(rawFile)\n return\n }\n\n const { uid } = rawFile\n const options: UploadRequestOptions = {\n headers: headers || {},\n withCredentials,\n file: rawFile,\n data: beforeData,\n method,\n filename,\n action,\n onProgress: (evt) => {\n onProgress(evt, rawFile)\n },\n onSuccess: (res) => {\n onSuccess(res, rawFile)\n delete requests.value[uid]\n },\n onError: (err) => {\n onError(err, rawFile)\n delete requests.value[uid]\n },\n }\n const request = httpRequest(options)\n requests.value[uid] = request\n if (request instanceof Promise) {\n request.then(options.onSuccess, options.onError)\n }\n}\n\nconst handleChange = (e: Event) => {\n const files = (e.target as HTMLInputElement).files\n if (!files) return\n uploadFiles(Array.from(files))\n}\n\nconst handleClick = () => {\n if (!disabled.value) {\n inputRef.value!.value = ''\n inputRef.value!.click()\n }\n}\n\nconst handleKeydown = () => {\n handleClick()\n}\n\nconst abort = (file?: UploadFile) => {\n const _reqs = entriesOf(requests.value).filter(\n file ? ([uid]) => String(file.uid) === uid : () => true\n )\n _reqs.forEach(([uid, req]) => {\n if (req instanceof XMLHttpRequest) req.abort()\n delete requests.value[uid]\n })\n}\n\ndefineExpose({\n abort,\n upload,\n})\n</script>\n"],"names":[],"mappings":"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"}
@@ -2,7 +2,7 @@ import { defineComponent, shallowRef, computed, onBeforeUnmount, provide, toRef,
2
2
  import '../../form/index.mjs';
3
3
  import { uploadContextKey } from './constants.mjs';
4
4
  import UploadList from './upload-list2.mjs';
5
- import UploadContent from './upload-content.mjs';
5
+ import UploadContent from './upload-content2.mjs';
6
6
  import { useHandlers } from './use-handlers.mjs';
7
7
  import { uploadProps } from './upload.mjs';
8
8
  import _export_sfc from '../../../_virtual/plugin-vue_export-helper.mjs';
package/es/index.mjs CHANGED
@@ -22,7 +22,7 @@ export { breadcrumbProps } from './components/breadcrumb/src/breadcrumb.mjs';
22
22
  export { breadcrumbItemProps } from './components/breadcrumb/src/breadcrumb-item.mjs';
23
23
  export { breadcrumbKey } from './components/breadcrumb/src/constants.mjs';
24
24
  export { ElBreadcrumb, ElBreadcrumbItem } from './components/breadcrumb/index.mjs';
25
- export { buttonEmits, buttonNativeTypes, buttonProps, buttonTypes } from './components/button/src/button.mjs';
25
+ export { buttonEmits, buttonNativeTypes, buttonProps, buttonTypes } from './components/button/src/button2.mjs';
26
26
  export { buttonGroupContextKey } from './components/button/src/constants.mjs';
27
27
  export { ElButton, ElButtonGroup } from './components/button/index.mjs';
28
28
  export { calendarEmits, calendarProps } from './components/calendar/src/calendar.mjs';
@@ -109,9 +109,9 @@ export { ElPageHeader } from './components/page-header/index.mjs';
109
109
  export { paginationEmits, paginationProps } from './components/pagination/src/pagination.mjs';
110
110
  export { elPaginationKey } from './components/pagination/src/constants.mjs';
111
111
  export { ElPagination } from './components/pagination/index.mjs';
112
- export { popconfirmEmits, popconfirmProps } from './components/popconfirm/src/popconfirm.mjs';
112
+ export { popconfirmEmits, popconfirmProps } from './components/popconfirm/src/popconfirm2.mjs';
113
113
  export { ElPopconfirm } from './components/popconfirm/index.mjs';
114
- export { Effect, popperProps, roleTypes, usePopperProps } from './components/popper/src/popper.mjs';
114
+ export { Effect, popperProps, roleTypes, usePopperProps } from './components/popper/src/popper2.mjs';
115
115
  export { popperTriggerProps, usePopperTriggerProps } from './components/popper/src/trigger.mjs';
116
116
  export { popperContentEmits, popperContentProps, popperCoreConfigProps, usePopperContentEmits, usePopperContentProps, usePopperCoreConfigProps } from './components/popper/src/content.mjs';
117
117
  export { popperArrowProps, usePopperArrowProps } from './components/popper/src/arrow.mjs';
@@ -124,7 +124,7 @@ export { progressProps } from './components/progress/src/progress.mjs';
124
124
  export { ElProgress } from './components/progress/index.mjs';
125
125
  export { radioEmits, radioProps, radioPropsBase } from './components/radio/src/radio.mjs';
126
126
  export { radioGroupEmits, radioGroupProps } from './components/radio/src/radio-group.mjs';
127
- export { radioButtonProps } from './components/radio/src/radio-button.mjs';
127
+ export { radioButtonProps } from './components/radio/src/radio-button2.mjs';
128
128
  export { radioGroupKey } from './components/radio/src/constants.mjs';
129
129
  export { ElRadio, ElRadioButton, ElRadioGroup } from './components/radio/index.mjs';
130
130
  export { rateEmits, rateProps } from './components/rate/src/rate.mjs';
@@ -197,7 +197,7 @@ export { ElTree } from './components/tree/index.mjs';
197
197
  export { ElTreeSelect } from './components/tree-select/index.mjs';
198
198
  export { ElTreeV2 } from './components/tree-v2/index.mjs';
199
199
  export { genFileId, uploadBaseProps, uploadListTypes, uploadProps } from './components/upload/src/upload.mjs';
200
- export { uploadContentProps } from './components/upload/src/upload-content2.mjs';
200
+ export { uploadContentProps } from './components/upload/src/upload-content.mjs';
201
201
  export { uploadListEmits, uploadListProps } from './components/upload/src/upload-list.mjs';
202
202
  export { uploadDraggerEmits, uploadDraggerProps } from './components/upload/src/upload-dragger.mjs';
203
203
  export { uploadContextKey } from './components/upload/src/constants.mjs';
@@ -209,7 +209,7 @@ export { default as DynamicSizeGrid } from './components/virtual-list/src/compon
209
209
  export { virtualizedGridProps, virtualizedListProps, virtualizedProps, virtualizedScrollbarProps } from './components/virtual-list/src/props.mjs';
210
210
  export { watermarkProps } from './components/watermark/src/watermark.mjs';
211
211
  export { ElWatermark } from './components/watermark/index.mjs';
212
- export { tourEmits, tourProps } from './components/tour/src/tour.mjs';
212
+ export { tourEmits, tourProps } from './components/tour/src/tour2.mjs';
213
213
  export { ElTour, ElTourStep } from './components/tour/index.mjs';
214
214
  export { anchorEmits, anchorProps } from './components/anchor/src/anchor.mjs';
215
215
  export { ElAnchor, ElAnchorLink } from './components/anchor/index.mjs';
@@ -219,7 +219,7 @@ export { ElInfiniteScroll } from './components/infinite-scroll/index.mjs';
219
219
  export { ElLoading } from './components/loading/index.mjs';
220
220
  export { vLoading as ElLoadingDirective, vLoading } from './components/loading/src/directive.mjs';
221
221
  export { Loading as ElLoadingService } from './components/loading/src/service.mjs';
222
- export { messageDefaults, messageEmits, messageProps, messageTypes } from './components/message/src/message2.mjs';
222
+ export { messageDefaults, messageEmits, messageProps, messageTypes } from './components/message/src/message.mjs';
223
223
  export { ElMessage } from './components/message/index.mjs';
224
224
  export { ElMessageBox } from './components/message-box/index.mjs';
225
225
  export { notificationEmits, notificationProps, notificationTypes } from './components/notification/src/notification.mjs';
package/es/version.d.ts CHANGED
@@ -1 +1 @@
1
- export declare const version = "0.0.20240412";
1
+ export declare const version = "0.0.20240413";
package/es/version.mjs CHANGED
@@ -1,4 +1,4 @@
1
- const version = "0.0.20240412";
1
+ const version = "0.0.20240413";
2
2
 
3
3
  export { version };
4
4
  //# sourceMappingURL=version.mjs.map
@@ -1 +1 @@
1
- {"version":3,"file":"version.mjs","sources":["../../../packages/element-plus/version.ts"],"sourcesContent":["export const version = '0.0.20240412'\n"],"names":[],"mappings":"AAAY,MAAC,OAAO,GAAG;;;;"}
1
+ {"version":3,"file":"version.mjs","sources":["../../../packages/element-plus/version.ts"],"sourcesContent":["export const version = '0.0.20240413'\n"],"names":[],"mappings":"AAAY,MAAC,OAAO,GAAG;;;;"}
@@ -3,9 +3,9 @@
3
3
  Object.defineProperty(exports, '__esModule', { value: true });
4
4
 
5
5
  require('../../utils/index.js');
6
- var button$1 = require('./src/button2.js');
6
+ var button$1 = require('./src/button.js');
7
7
  var buttonGroup = require('./src/button-group2.js');
8
- var button = require('./src/button.js');
8
+ var button = require('./src/button2.js');
9
9
  var constants = require('./src/constants.js');
10
10
  var install = require('../../utils/vue/install.js');
11
11
 
@@ -2,7 +2,7 @@
2
2
 
3
3
  Object.defineProperty(exports, '__esModule', { value: true });
4
4
 
5
- var button = require('./button.js');
5
+ var button = require('./button2.js');
6
6
 
7
7
  const buttonGroupProps = {
8
8
  size: button.buttonProps.size,
@@ -2,69 +2,86 @@
2
2
 
3
3
  Object.defineProperty(exports, '__esModule', { value: true });
4
4
 
5
+ var vue = require('vue');
6
+ var index$1 = require('../../icon/index.js');
5
7
  require('../../../hooks/index.js');
6
- require('../../../utils/index.js');
7
- var iconsVue = require('@element-plus/icons-vue');
8
- var runtime = require('../../../utils/vue/props/runtime.js');
9
- var index = require('../../../hooks/use-size/index.js');
10
- var icon = require('../../../utils/vue/icon.js');
8
+ var useButton = require('./use-button.js');
9
+ var button = require('./button2.js');
10
+ var buttonCustom = require('./button-custom.js');
11
+ var pluginVue_exportHelper = require('../../../_virtual/plugin-vue_export-helper.js');
12
+ var index = require('../../../hooks/use-namespace/index.js');
11
13
 
12
- const buttonTypes = [
13
- "default",
14
- "primary",
15
- "success",
16
- "warning",
17
- "info",
18
- "danger",
19
- "text",
20
- ""
21
- ];
22
- const buttonNativeTypes = ["button", "submit", "reset"];
23
- const buttonProps = runtime.buildProps({
24
- size: index.useSizeProp,
25
- disabled: Boolean,
26
- type: {
27
- type: String,
28
- values: buttonTypes,
29
- default: ""
30
- },
31
- icon: {
32
- type: icon.iconPropType
33
- },
34
- nativeType: {
35
- type: String,
36
- values: buttonNativeTypes,
37
- default: "button"
38
- },
39
- loading: Boolean,
40
- loadingIcon: {
41
- type: icon.iconPropType,
42
- default: () => iconsVue.Loading
43
- },
44
- plain: Boolean,
45
- text: Boolean,
46
- link: Boolean,
47
- bg: Boolean,
48
- autofocus: Boolean,
49
- round: Boolean,
50
- circle: Boolean,
51
- color: String,
52
- dark: Boolean,
53
- autoInsertSpace: {
54
- type: Boolean,
55
- default: void 0
56
- },
57
- tag: {
58
- type: runtime.definePropType([String, Object]),
59
- default: "button"
14
+ const __default__ = vue.defineComponent({
15
+ name: "ElButton"
16
+ });
17
+ const _sfc_main = /* @__PURE__ */ vue.defineComponent({
18
+ ...__default__,
19
+ props: button.buttonProps,
20
+ emits: button.buttonEmits,
21
+ setup(__props, { expose, emit }) {
22
+ const props = __props;
23
+ const buttonStyle = buttonCustom.useButtonCustomStyle(props);
24
+ const ns = index.useNamespace("button");
25
+ const { _ref, _size, _type, _disabled, _props, shouldAddSpace, handleClick } = useButton.useButton(props, emit);
26
+ const buttonKls = vue.computed(() => [
27
+ ns.b(),
28
+ ns.m(_type.value),
29
+ ns.m(_size.value),
30
+ ns.is("disabled", _disabled.value),
31
+ ns.is("loading", props.loading),
32
+ ns.is("plain", props.plain),
33
+ ns.is("round", props.round),
34
+ ns.is("circle", props.circle),
35
+ ns.is("text", props.text),
36
+ ns.is("link", props.link),
37
+ ns.is("has-bg", props.bg)
38
+ ]);
39
+ expose({
40
+ ref: _ref,
41
+ size: _size,
42
+ type: _type,
43
+ disabled: _disabled,
44
+ shouldAddSpace
45
+ });
46
+ return (_ctx, _cache) => {
47
+ return vue.openBlock(), vue.createBlock(vue.resolveDynamicComponent(_ctx.tag), vue.mergeProps({
48
+ ref_key: "_ref",
49
+ ref: _ref
50
+ }, vue.unref(_props), {
51
+ class: vue.unref(buttonKls),
52
+ style: vue.unref(buttonStyle),
53
+ onClick: vue.unref(handleClick)
54
+ }), {
55
+ default: vue.withCtx(() => [
56
+ _ctx.loading ? (vue.openBlock(), vue.createElementBlock(vue.Fragment, { key: 0 }, [
57
+ _ctx.$slots.loading ? vue.renderSlot(_ctx.$slots, "loading", { key: 0 }) : (vue.openBlock(), vue.createBlock(vue.unref(index$1.ElIcon), {
58
+ key: 1,
59
+ class: vue.normalizeClass(vue.unref(ns).is("loading"))
60
+ }, {
61
+ default: vue.withCtx(() => [
62
+ (vue.openBlock(), vue.createBlock(vue.resolveDynamicComponent(_ctx.loadingIcon)))
63
+ ]),
64
+ _: 1
65
+ }, 8, ["class"]))
66
+ ], 64)) : _ctx.icon || _ctx.$slots.icon ? (vue.openBlock(), vue.createBlock(vue.unref(index$1.ElIcon), { key: 1 }, {
67
+ default: vue.withCtx(() => [
68
+ _ctx.icon ? (vue.openBlock(), vue.createBlock(vue.resolveDynamicComponent(_ctx.icon), { key: 0 })) : vue.renderSlot(_ctx.$slots, "icon", { key: 1 })
69
+ ]),
70
+ _: 3
71
+ })) : vue.createCommentVNode("v-if", true),
72
+ _ctx.$slots.default ? (vue.openBlock(), vue.createElementBlock("span", {
73
+ key: 2,
74
+ class: vue.normalizeClass({ [vue.unref(ns).em("text", "expand")]: vue.unref(shouldAddSpace) })
75
+ }, [
76
+ vue.renderSlot(_ctx.$slots, "default")
77
+ ], 2)) : vue.createCommentVNode("v-if", true)
78
+ ]),
79
+ _: 3
80
+ }, 16, ["class", "style", "onClick"]);
81
+ };
60
82
  }
61
83
  });
62
- const buttonEmits = {
63
- click: (evt) => evt instanceof MouseEvent
64
- };
84
+ var Button = /* @__PURE__ */ pluginVue_exportHelper["default"](_sfc_main, [["__file", "button.vue"]]);
65
85
 
66
- exports.buttonEmits = buttonEmits;
67
- exports.buttonNativeTypes = buttonNativeTypes;
68
- exports.buttonProps = buttonProps;
69
- exports.buttonTypes = buttonTypes;
86
+ exports["default"] = Button;
70
87
  //# sourceMappingURL=button.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"button.js","sources":["../../../../../../packages/components/button/src/button.ts"],"sourcesContent":["import { useSizeProp } from '@element-plus/hooks'\nimport { buildProps, definePropType, iconPropType } from '@element-plus/utils'\nimport { Loading } from '@element-plus/icons-vue'\nimport type { Component, ExtractPropTypes } from 'vue'\n\nexport const buttonTypes = [\n 'default',\n 'primary',\n 'success',\n 'warning',\n 'info',\n 'danger',\n /**\n * @deprecated\n * Text type will be deprecated in the next major version (3.0.0)\n */\n 'text',\n '',\n] as const\nexport const buttonNativeTypes = ['button', 'submit', 'reset'] as const\n\nexport const buttonProps = buildProps({\n /**\n * @description button size\n */\n size: useSizeProp,\n /**\n * @description disable the button\n */\n disabled: Boolean,\n /**\n * @description button type\n */\n type: {\n type: String,\n values: buttonTypes,\n default: '',\n },\n /**\n * @description icon component\n */\n icon: {\n type: iconPropType,\n },\n /**\n * @description native button type\n */\n nativeType: {\n type: String,\n values: buttonNativeTypes,\n default: 'button',\n },\n /**\n * @description determine whether it's loading\n */\n loading: Boolean,\n /**\n * @description customize loading icon component\n */\n loadingIcon: {\n type: iconPropType,\n default: () => Loading,\n },\n /**\n * @description determine whether it's a plain button\n */\n plain: Boolean,\n /**\n * @description determine whether it's a text button\n */\n text: Boolean,\n /**\n * @description determine whether it's a link button\n */\n link: Boolean,\n /**\n * @description determine whether the text button background color is always on\n */\n bg: Boolean,\n /**\n * @description native button autofocus\n */\n autofocus: Boolean,\n /**\n * @description determine whether it's a round button\n */\n round: Boolean,\n /**\n * @description determine whether it's a circle button\n */\n circle: Boolean,\n /**\n * @description custom button color, automatically calculate `hover` and `active` color\n */\n color: String,\n /**\n * @description dark mode, which automatically converts `color` to dark mode colors\n */\n dark: Boolean,\n /**\n * @description automatically insert a space between two chinese characters\n */\n autoInsertSpace: {\n type: Boolean,\n default: undefined,\n },\n /**\n * @description custom element tag\n */\n tag: {\n type: definePropType<string | Component>([String, Object]),\n default: 'button',\n },\n} as const)\nexport const buttonEmits = {\n click: (evt: MouseEvent) => evt instanceof MouseEvent,\n}\n\nexport type ButtonProps = ExtractPropTypes<typeof buttonProps>\nexport type ButtonEmits = typeof buttonEmits\n\nexport type ButtonType = ButtonProps['type']\nexport type ButtonNativeType = ButtonProps['nativeType']\n\nexport interface ButtonConfigContext {\n autoInsertSpace?: boolean\n}\n"],"names":["buildProps","useSizeProp","iconPropType","Loading","definePropType"],"mappings":";;;;;;;;;;;AAGY,MAAC,WAAW,GAAG;AAC3B,EAAE,SAAS;AACX,EAAE,SAAS;AACX,EAAE,SAAS;AACX,EAAE,SAAS;AACX,EAAE,MAAM;AACR,EAAE,QAAQ;AACV,EAAE,MAAM;AACR,EAAE,EAAE;AACJ,EAAE;AACU,MAAC,iBAAiB,GAAG,CAAC,QAAQ,EAAE,QAAQ,EAAE,OAAO,EAAE;AACnD,MAAC,WAAW,GAAGA,kBAAU,CAAC;AACtC,EAAE,IAAI,EAAEC,iBAAW;AACnB,EAAE,QAAQ,EAAE,OAAO;AACnB,EAAE,IAAI,EAAE;AACR,IAAI,IAAI,EAAE,MAAM;AAChB,IAAI,MAAM,EAAE,WAAW;AACvB,IAAI,OAAO,EAAE,EAAE;AACf,GAAG;AACH,EAAE,IAAI,EAAE;AACR,IAAI,IAAI,EAAEC,iBAAY;AACtB,GAAG;AACH,EAAE,UAAU,EAAE;AACd,IAAI,IAAI,EAAE,MAAM;AAChB,IAAI,MAAM,EAAE,iBAAiB;AAC7B,IAAI,OAAO,EAAE,QAAQ;AACrB,GAAG;AACH,EAAE,OAAO,EAAE,OAAO;AAClB,EAAE,WAAW,EAAE;AACf,IAAI,IAAI,EAAEA,iBAAY;AACtB,IAAI,OAAO,EAAE,MAAMC,gBAAO;AAC1B,GAAG;AACH,EAAE,KAAK,EAAE,OAAO;AAChB,EAAE,IAAI,EAAE,OAAO;AACf,EAAE,IAAI,EAAE,OAAO;AACf,EAAE,EAAE,EAAE,OAAO;AACb,EAAE,SAAS,EAAE,OAAO;AACpB,EAAE,KAAK,EAAE,OAAO;AAChB,EAAE,MAAM,EAAE,OAAO;AACjB,EAAE,KAAK,EAAE,MAAM;AACf,EAAE,IAAI,EAAE,OAAO;AACf,EAAE,eAAe,EAAE;AACnB,IAAI,IAAI,EAAE,OAAO;AACjB,IAAI,OAAO,EAAE,KAAK,CAAC;AACnB,GAAG;AACH,EAAE,GAAG,EAAE;AACP,IAAI,IAAI,EAAEC,sBAAc,CAAC,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;AAC1C,IAAI,OAAO,EAAE,QAAQ;AACrB,GAAG;AACH,CAAC,EAAE;AACS,MAAC,WAAW,GAAG;AAC3B,EAAE,KAAK,EAAE,CAAC,GAAG,KAAK,GAAG,YAAY,UAAU;AAC3C;;;;;;;"}
1
+ {"version":3,"file":"button.js","sources":["../../../../../../packages/components/button/src/button.vue"],"sourcesContent":["<template>\n <component\n :is=\"tag\"\n ref=\"_ref\"\n v-bind=\"_props\"\n :class=\"buttonKls\"\n :style=\"buttonStyle\"\n @click=\"handleClick\"\n >\n <template v-if=\"loading\">\n <slot v-if=\"$slots.loading\" name=\"loading\" />\n <el-icon v-else :class=\"ns.is('loading')\">\n <component :is=\"loadingIcon\" />\n </el-icon>\n </template>\n <el-icon v-else-if=\"icon || $slots.icon\">\n <component :is=\"icon\" v-if=\"icon\" />\n <slot v-else name=\"icon\" />\n </el-icon>\n <span\n v-if=\"$slots.default\"\n :class=\"{ [ns.em('text', 'expand')]: shouldAddSpace }\"\n >\n <slot />\n </span>\n </component>\n</template>\n\n<script lang=\"ts\" setup>\nimport { computed } from 'vue'\nimport { ElIcon } from '@element-plus/components/icon'\nimport { useNamespace } from '@element-plus/hooks'\nimport { useButton } from './use-button'\nimport { buttonEmits, buttonProps } from './button'\nimport { useButtonCustomStyle } from './button-custom'\n\ndefineOptions({\n name: 'ElButton',\n})\n\nconst props = defineProps(buttonProps)\nconst emit = defineEmits(buttonEmits)\n\nconst buttonStyle = useButtonCustomStyle(props)\nconst ns = useNamespace('button')\nconst { _ref, _size, _type, _disabled, _props, shouldAddSpace, handleClick } =\n useButton(props, emit)\nconst buttonKls = computed(() => [\n ns.b(),\n ns.m(_type.value),\n ns.m(_size.value),\n ns.is('disabled', _disabled.value),\n ns.is('loading', props.loading),\n ns.is('plain', props.plain),\n ns.is('round', props.round),\n ns.is('circle', props.circle),\n ns.is('text', props.text),\n ns.is('link', props.link),\n ns.is('has-bg', props.bg),\n])\n\ndefineExpose({\n /** @description button html element */\n ref: _ref,\n /** @description button size */\n size: _size,\n /** @description button type */\n type: _type,\n /** @description button disabled */\n disabled: _disabled,\n /** @description whether adding space */\n shouldAddSpace,\n})\n</script>\n"],"names":["useButtonCustomStyle","useNamespace","useButton","computed"],"mappings":";;;;;;;;;;;;;uCAoCc,CAAA;AAAA,EACZ,IAAM,EAAA,UAAA;AACR,CAAA,CAAA,CAAA;;;;;;;AAKA,IAAM,MAAA,WAAA,GAAcA,kCAAqB,KAAK,CAAA,CAAA;AAC9C,IAAM,MAAA,EAAA,GAAKC,mBAAa,QAAQ,CAAA,CAAA;AAChC,IAAM,MAAA,EAAE,IAAM,EAAA,KAAA,EAAO,KAAO,EAAA,SAAA,EAAW,QAAQ,cAAgB,EAAA,WAAA,EAAA,GAC7DC,mBAAU,CAAA,KAAA,EAAO,IAAI,CAAA,CAAA;AACvB,IAAM,MAAA,SAAA,GAAYC,aAAS,MAAM;AAAA,MAC/B,GAAG,CAAE,EAAA;AAAA,MACL,EAAA,CAAG,CAAE,CAAA,KAAA,CAAM,KAAK,CAAA;AAAA,MAChB,EAAA,CAAG,CAAE,CAAA,KAAA,CAAM,KAAK,CAAA;AAAA,MAChB,EAAG,CAAA,EAAA,CAAG,UAAY,EAAA,SAAA,CAAU,KAAK,CAAA;AAAA,MACjC,EAAG,CAAA,EAAA,CAAG,SAAW,EAAA,KAAA,CAAM,OAAO,CAAA;AAAA,MAC9B,EAAG,CAAA,EAAA,CAAG,OAAS,EAAA,KAAA,CAAM,KAAK,CAAA;AAAA,MAC1B,EAAG,CAAA,EAAA,CAAG,OAAS,EAAA,KAAA,CAAM,KAAK,CAAA;AAAA,MAC1B,EAAG,CAAA,EAAA,CAAG,QAAU,EAAA,KAAA,CAAM,MAAM,CAAA;AAAA,MAC5B,EAAG,CAAA,EAAA,CAAG,MAAQ,EAAA,KAAA,CAAM,IAAI,CAAA;AAAA,MACxB,EAAG,CAAA,EAAA,CAAG,MAAQ,EAAA,KAAA,CAAM,IAAI,CAAA;AAAA,MACxB,EAAG,CAAA,EAAA,CAAG,QAAU,EAAA,KAAA,CAAM,EAAE,CAAA;AAAA,KACzB,CAAA,CAAA;AAED,IAAa,MAAA,CAAA;AAAA,MAEX,GAAK,EAAA,IAAA;AAAA,MAEL,IAAM,EAAA,KAAA;AAAA,MAEN,IAAM,EAAA,KAAA;AAAA,MAEN,QAAU,EAAA,SAAA;AAAA,MAEV,cAAA;AAAA,KACD,CAAA,CAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;"}