@element-plus/nightly 0.0.20220209 → 0.0.20220210

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 (372) hide show
  1. package/attributes.json +1 -1
  2. package/dist/index.full.js +866 -780
  3. package/dist/index.full.min.js +10 -10
  4. package/dist/index.full.min.js.map +1 -1
  5. package/dist/index.full.min.mjs +10 -10
  6. package/dist/index.full.min.mjs.map +1 -1
  7. package/dist/index.full.mjs +866 -780
  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.js +1 -1
  13. package/dist/locale/ar.min.js +1 -1
  14. package/dist/locale/ar.min.mjs +1 -1
  15. package/dist/locale/ar.mjs +1 -1
  16. package/dist/locale/bg.js +1 -1
  17. package/dist/locale/bg.min.js +1 -1
  18. package/dist/locale/bg.min.mjs +1 -1
  19. package/dist/locale/bg.mjs +1 -1
  20. package/dist/locale/bn.js +1 -1
  21. package/dist/locale/bn.min.js +1 -1
  22. package/dist/locale/bn.min.mjs +1 -1
  23. package/dist/locale/bn.mjs +1 -1
  24. package/dist/locale/ca.js +1 -1
  25. package/dist/locale/ca.min.js +1 -1
  26. package/dist/locale/ca.min.mjs +1 -1
  27. package/dist/locale/ca.mjs +1 -1
  28. package/dist/locale/cs.js +1 -1
  29. package/dist/locale/cs.min.js +1 -1
  30. package/dist/locale/cs.min.mjs +1 -1
  31. package/dist/locale/cs.mjs +1 -1
  32. package/dist/locale/da.js +1 -1
  33. package/dist/locale/da.min.js +1 -1
  34. package/dist/locale/da.min.mjs +1 -1
  35. package/dist/locale/da.mjs +1 -1
  36. package/dist/locale/de.js +1 -1
  37. package/dist/locale/de.min.js +1 -1
  38. package/dist/locale/de.min.mjs +1 -1
  39. package/dist/locale/de.mjs +1 -1
  40. package/dist/locale/el.js +1 -1
  41. package/dist/locale/el.min.js +1 -1
  42. package/dist/locale/el.min.mjs +1 -1
  43. package/dist/locale/el.mjs +1 -1
  44. package/dist/locale/en.js +1 -1
  45. package/dist/locale/en.min.js +1 -1
  46. package/dist/locale/en.min.mjs +1 -1
  47. package/dist/locale/en.mjs +1 -1
  48. package/dist/locale/eo.js +1 -1
  49. package/dist/locale/eo.min.js +1 -1
  50. package/dist/locale/eo.min.mjs +1 -1
  51. package/dist/locale/eo.mjs +1 -1
  52. package/dist/locale/es.js +1 -1
  53. package/dist/locale/es.min.js +1 -1
  54. package/dist/locale/es.min.mjs +1 -1
  55. package/dist/locale/es.mjs +1 -1
  56. package/dist/locale/et.js +1 -1
  57. package/dist/locale/et.min.js +1 -1
  58. package/dist/locale/et.min.mjs +1 -1
  59. package/dist/locale/et.mjs +1 -1
  60. package/dist/locale/eu.js +1 -1
  61. package/dist/locale/eu.min.js +1 -1
  62. package/dist/locale/eu.min.mjs +1 -1
  63. package/dist/locale/eu.mjs +1 -1
  64. package/dist/locale/fa.js +1 -1
  65. package/dist/locale/fa.min.js +1 -1
  66. package/dist/locale/fa.min.mjs +1 -1
  67. package/dist/locale/fa.mjs +1 -1
  68. package/dist/locale/fi.js +1 -1
  69. package/dist/locale/fi.min.js +1 -1
  70. package/dist/locale/fi.min.mjs +1 -1
  71. package/dist/locale/fi.mjs +1 -1
  72. package/dist/locale/fr.js +1 -1
  73. package/dist/locale/fr.min.js +1 -1
  74. package/dist/locale/fr.min.mjs +1 -1
  75. package/dist/locale/fr.mjs +1 -1
  76. package/dist/locale/he.js +1 -1
  77. package/dist/locale/he.min.js +1 -1
  78. package/dist/locale/he.min.mjs +1 -1
  79. package/dist/locale/he.mjs +1 -1
  80. package/dist/locale/hr.js +1 -1
  81. package/dist/locale/hr.min.js +1 -1
  82. package/dist/locale/hr.min.mjs +1 -1
  83. package/dist/locale/hr.mjs +1 -1
  84. package/dist/locale/hu.js +1 -1
  85. package/dist/locale/hu.min.js +1 -1
  86. package/dist/locale/hu.min.mjs +1 -1
  87. package/dist/locale/hu.mjs +1 -1
  88. package/dist/locale/hy-am.js +1 -1
  89. package/dist/locale/hy-am.min.js +1 -1
  90. package/dist/locale/hy-am.min.mjs +1 -1
  91. package/dist/locale/hy-am.mjs +1 -1
  92. package/dist/locale/id.js +1 -1
  93. package/dist/locale/id.min.js +1 -1
  94. package/dist/locale/id.min.mjs +1 -1
  95. package/dist/locale/id.mjs +1 -1
  96. package/dist/locale/it.js +1 -1
  97. package/dist/locale/it.min.js +1 -1
  98. package/dist/locale/it.min.mjs +1 -1
  99. package/dist/locale/it.mjs +1 -1
  100. package/dist/locale/ja.js +1 -1
  101. package/dist/locale/ja.min.js +1 -1
  102. package/dist/locale/ja.min.mjs +1 -1
  103. package/dist/locale/ja.mjs +1 -1
  104. package/dist/locale/kk.js +1 -1
  105. package/dist/locale/kk.min.js +1 -1
  106. package/dist/locale/kk.min.mjs +1 -1
  107. package/dist/locale/kk.mjs +1 -1
  108. package/dist/locale/km.js +1 -1
  109. package/dist/locale/km.min.js +1 -1
  110. package/dist/locale/km.min.mjs +1 -1
  111. package/dist/locale/km.mjs +1 -1
  112. package/dist/locale/ko.js +1 -1
  113. package/dist/locale/ko.min.js +1 -1
  114. package/dist/locale/ko.min.mjs +1 -1
  115. package/dist/locale/ko.mjs +1 -1
  116. package/dist/locale/ku.js +1 -1
  117. package/dist/locale/ku.min.js +1 -1
  118. package/dist/locale/ku.min.mjs +1 -1
  119. package/dist/locale/ku.mjs +1 -1
  120. package/dist/locale/ky.js +1 -1
  121. package/dist/locale/ky.min.js +1 -1
  122. package/dist/locale/ky.min.mjs +1 -1
  123. package/dist/locale/ky.mjs +1 -1
  124. package/dist/locale/lt.js +1 -1
  125. package/dist/locale/lt.min.js +1 -1
  126. package/dist/locale/lt.min.mjs +1 -1
  127. package/dist/locale/lt.mjs +1 -1
  128. package/dist/locale/lv.js +1 -1
  129. package/dist/locale/lv.min.js +1 -1
  130. package/dist/locale/lv.min.mjs +1 -1
  131. package/dist/locale/lv.mjs +1 -1
  132. package/dist/locale/mn.js +1 -1
  133. package/dist/locale/mn.min.js +1 -1
  134. package/dist/locale/mn.min.mjs +1 -1
  135. package/dist/locale/mn.mjs +1 -1
  136. package/dist/locale/nb-no.js +1 -1
  137. package/dist/locale/nb-no.min.js +1 -1
  138. package/dist/locale/nb-no.min.mjs +1 -1
  139. package/dist/locale/nb-no.mjs +1 -1
  140. package/dist/locale/nl.js +1 -1
  141. package/dist/locale/nl.min.js +1 -1
  142. package/dist/locale/nl.min.mjs +1 -1
  143. package/dist/locale/nl.mjs +1 -1
  144. package/dist/locale/pa.js +1 -1
  145. package/dist/locale/pa.min.js +1 -1
  146. package/dist/locale/pa.min.mjs +1 -1
  147. package/dist/locale/pa.mjs +1 -1
  148. package/dist/locale/pl.js +1 -1
  149. package/dist/locale/pl.min.js +1 -1
  150. package/dist/locale/pl.min.mjs +1 -1
  151. package/dist/locale/pl.mjs +1 -1
  152. package/dist/locale/pt-br.js +1 -1
  153. package/dist/locale/pt-br.min.js +1 -1
  154. package/dist/locale/pt-br.min.mjs +1 -1
  155. package/dist/locale/pt-br.mjs +1 -1
  156. package/dist/locale/pt.js +1 -1
  157. package/dist/locale/pt.min.js +1 -1
  158. package/dist/locale/pt.min.mjs +1 -1
  159. package/dist/locale/pt.mjs +1 -1
  160. package/dist/locale/ro.js +1 -1
  161. package/dist/locale/ro.min.js +1 -1
  162. package/dist/locale/ro.min.mjs +1 -1
  163. package/dist/locale/ro.mjs +1 -1
  164. package/dist/locale/ru.js +1 -1
  165. package/dist/locale/ru.min.js +1 -1
  166. package/dist/locale/ru.min.mjs +1 -1
  167. package/dist/locale/ru.mjs +1 -1
  168. package/dist/locale/sk.js +1 -1
  169. package/dist/locale/sk.min.js +1 -1
  170. package/dist/locale/sk.min.mjs +1 -1
  171. package/dist/locale/sk.mjs +1 -1
  172. package/dist/locale/sl.js +1 -1
  173. package/dist/locale/sl.min.js +1 -1
  174. package/dist/locale/sl.min.mjs +1 -1
  175. package/dist/locale/sl.mjs +1 -1
  176. package/dist/locale/sr.js +1 -1
  177. package/dist/locale/sr.min.js +1 -1
  178. package/dist/locale/sr.min.mjs +1 -1
  179. package/dist/locale/sr.mjs +1 -1
  180. package/dist/locale/sv.js +1 -1
  181. package/dist/locale/sv.min.js +1 -1
  182. package/dist/locale/sv.min.mjs +1 -1
  183. package/dist/locale/sv.mjs +1 -1
  184. package/dist/locale/ta.js +1 -1
  185. package/dist/locale/ta.min.js +1 -1
  186. package/dist/locale/ta.min.mjs +1 -1
  187. package/dist/locale/ta.mjs +1 -1
  188. package/dist/locale/th.js +1 -1
  189. package/dist/locale/th.min.js +1 -1
  190. package/dist/locale/th.min.mjs +1 -1
  191. package/dist/locale/th.mjs +1 -1
  192. package/dist/locale/tk.js +1 -1
  193. package/dist/locale/tk.min.js +1 -1
  194. package/dist/locale/tk.min.mjs +1 -1
  195. package/dist/locale/tk.mjs +1 -1
  196. package/dist/locale/tr.js +1 -1
  197. package/dist/locale/tr.min.js +1 -1
  198. package/dist/locale/tr.min.mjs +1 -1
  199. package/dist/locale/tr.mjs +1 -1
  200. package/dist/locale/ug-cn.js +1 -1
  201. package/dist/locale/ug-cn.min.js +1 -1
  202. package/dist/locale/ug-cn.min.mjs +1 -1
  203. package/dist/locale/ug-cn.mjs +1 -1
  204. package/dist/locale/uk.js +1 -1
  205. package/dist/locale/uk.min.js +1 -1
  206. package/dist/locale/uk.min.mjs +1 -1
  207. package/dist/locale/uk.mjs +1 -1
  208. package/dist/locale/uz-uz.js +1 -1
  209. package/dist/locale/uz-uz.min.js +1 -1
  210. package/dist/locale/uz-uz.min.mjs +1 -1
  211. package/dist/locale/uz-uz.mjs +1 -1
  212. package/dist/locale/vi.js +1 -1
  213. package/dist/locale/vi.min.js +1 -1
  214. package/dist/locale/vi.min.mjs +1 -1
  215. package/dist/locale/vi.mjs +1 -1
  216. package/dist/locale/zh-cn.js +1 -1
  217. package/dist/locale/zh-cn.min.js +1 -1
  218. package/dist/locale/zh-cn.min.mjs +1 -1
  219. package/dist/locale/zh-cn.mjs +1 -1
  220. package/dist/locale/zh-tw.js +1 -1
  221. package/dist/locale/zh-tw.min.js +1 -1
  222. package/dist/locale/zh-tw.min.mjs +1 -1
  223. package/dist/locale/zh-tw.mjs +1 -1
  224. package/es/components/dialog/src/use-dialog.mjs +11 -0
  225. package/es/components/dialog/src/use-dialog.mjs.map +1 -1
  226. package/es/components/slider/src/index.mjs +3 -1
  227. package/es/components/slider/src/index.mjs.map +1 -1
  228. package/es/components/table/index.d.ts +10 -0
  229. package/es/components/table/src/h-helper.d.ts +4 -2
  230. package/es/components/table/src/h-helper.mjs +25 -7
  231. package/es/components/table/src/h-helper.mjs.map +1 -1
  232. package/es/components/table/src/table/defaults.d.ts +6 -0
  233. package/es/components/table/src/table/defaults.mjs +4 -0
  234. package/es/components/table/src/table/defaults.mjs.map +1 -1
  235. package/es/components/table/src/table/style-helper.d.ts +1 -0
  236. package/es/components/table/src/table/style-helper.mjs +7 -1
  237. package/es/components/table/src/table/style-helper.mjs.map +1 -1
  238. package/es/components/table/src/table-body/index.mjs +5 -15
  239. package/es/components/table/src/table-body/index.mjs.map +1 -1
  240. package/es/components/table/src/table-header/index.d.ts +0 -1
  241. package/es/components/table/src/table-header/index.mjs +56 -68
  242. package/es/components/table/src/table-header/index.mjs.map +1 -1
  243. package/es/components/table/src/table-layout.mjs +6 -4
  244. package/es/components/table/src/table-layout.mjs.map +1 -1
  245. package/es/components/table/src/table.mjs +58 -22
  246. package/es/components/table/src/table.mjs.map +1 -1
  247. package/es/components/table/src/table.vue.d.ts +11 -3
  248. package/es/components/tabs/index.d.ts +26 -26
  249. package/es/components/tabs/src/tab-bar.d.ts +2 -2
  250. package/es/components/tabs/src/tab-bar.vue.d.ts +6 -6
  251. package/es/components/tabs/src/tab-nav.d.ts +28 -28
  252. package/es/components/tabs/src/tab-nav.mjs +1 -1
  253. package/es/components/tabs/src/tab-nav.mjs.map +1 -1
  254. package/es/components/tabs/src/tab-pane.d.ts +1 -1
  255. package/es/components/tabs/src/tab-pane.mjs +1 -1
  256. package/es/components/tabs/src/tab-pane.mjs.map +1 -1
  257. package/es/components/tabs/src/tab-pane.vue.d.ts +4 -4
  258. package/es/components/tabs/src/tabs.d.ts +24 -24
  259. package/es/components/tabs/src/tabs.mjs +4 -4
  260. package/es/components/tabs/src/tabs.mjs.map +1 -1
  261. package/es/components/tooltip/src/trigger.mjs +8 -4
  262. package/es/components/tooltip/src/trigger.mjs.map +1 -1
  263. package/es/components/tooltip/src/trigger.vue.d.ts +11 -0
  264. package/es/components/transfer/index.d.ts +110 -0
  265. package/es/components/transfer/src/index.mjs +19 -14
  266. package/es/components/transfer/src/index.mjs.map +1 -1
  267. package/es/components/transfer/src/index.vue.d.ts +55 -0
  268. package/es/components/transfer/src/transfer-panel.mjs +26 -20
  269. package/es/components/transfer/src/transfer-panel.mjs.map +1 -1
  270. package/es/components/transfer/src/transfer-panel.vue.d.ts +11 -0
  271. package/es/components/tree-v2/index.d.ts +11 -0
  272. package/es/components/tree-v2/src/tree-node-content.mjs +4 -1
  273. package/es/components/tree-v2/src/tree-node-content.mjs.map +1 -1
  274. package/es/components/tree-v2/src/tree-node.mjs +16 -11
  275. package/es/components/tree-v2/src/tree-node.mjs.map +1 -1
  276. package/es/components/tree-v2/src/tree-node.vue.d.ts +11 -0
  277. package/es/components/tree-v2/src/tree.mjs +13 -12
  278. package/es/components/tree-v2/src/tree.mjs.map +1 -1
  279. package/es/components/tree-v2/src/tree.vue.d.ts +11 -0
  280. package/es/components/upload/src/upload-dragger.mjs +5 -4
  281. package/es/components/upload/src/upload-dragger.mjs.map +1 -1
  282. package/es/components/upload/src/upload-dragger.vue.d.ts +11 -0
  283. package/es/components/upload/src/upload-list.mjs +57 -45
  284. package/es/components/upload/src/upload-list.mjs.map +1 -1
  285. package/es/components/upload/src/upload-list.vue.d.ts +33 -0
  286. package/es/components/upload/src/upload.mjs +7 -3
  287. package/es/components/upload/src/upload.mjs.map +1 -1
  288. package/es/components/upload/src/upload.vue.d.ts +11 -0
  289. package/es/tokens/tabs.d.ts +2 -2
  290. package/es/tokens/tabs.mjs.map +1 -1
  291. package/es/utils-v2/vue/style.d.ts +1 -1
  292. package/es/utils-v2/vue/style.mjs +2 -1
  293. package/es/utils-v2/vue/style.mjs.map +1 -1
  294. package/es/version.d.ts +1 -1
  295. package/es/version.mjs +1 -1
  296. package/es/version.mjs.map +1 -1
  297. package/lib/components/dialog/src/use-dialog.js +11 -0
  298. package/lib/components/dialog/src/use-dialog.js.map +1 -1
  299. package/lib/components/slider/src/index.js +3 -1
  300. package/lib/components/slider/src/index.js.map +1 -1
  301. package/lib/components/table/index.d.ts +10 -0
  302. package/lib/components/table/src/h-helper.d.ts +4 -2
  303. package/lib/components/table/src/h-helper.js +25 -7
  304. package/lib/components/table/src/h-helper.js.map +1 -1
  305. package/lib/components/table/src/table/defaults.d.ts +6 -0
  306. package/lib/components/table/src/table/defaults.js +4 -0
  307. package/lib/components/table/src/table/defaults.js.map +1 -1
  308. package/lib/components/table/src/table/style-helper.d.ts +1 -0
  309. package/lib/components/table/src/table/style-helper.js +7 -1
  310. package/lib/components/table/src/table/style-helper.js.map +1 -1
  311. package/lib/components/table/src/table-body/index.js +5 -15
  312. package/lib/components/table/src/table-body/index.js.map +1 -1
  313. package/lib/components/table/src/table-header/index.d.ts +0 -1
  314. package/lib/components/table/src/table-header/index.js +56 -68
  315. package/lib/components/table/src/table-header/index.js.map +1 -1
  316. package/lib/components/table/src/table-layout.js +6 -4
  317. package/lib/components/table/src/table-layout.js.map +1 -1
  318. package/lib/components/table/src/table.js +57 -21
  319. package/lib/components/table/src/table.js.map +1 -1
  320. package/lib/components/table/src/table.vue.d.ts +11 -3
  321. package/lib/components/tabs/index.d.ts +26 -26
  322. package/lib/components/tabs/src/tab-bar.d.ts +2 -2
  323. package/lib/components/tabs/src/tab-bar.vue.d.ts +6 -6
  324. package/lib/components/tabs/src/tab-nav.d.ts +28 -28
  325. package/lib/components/tabs/src/tab-nav.js +1 -1
  326. package/lib/components/tabs/src/tab-nav.js.map +1 -1
  327. package/lib/components/tabs/src/tab-pane.d.ts +1 -1
  328. package/lib/components/tabs/src/tab-pane.js +1 -1
  329. package/lib/components/tabs/src/tab-pane.js.map +1 -1
  330. package/lib/components/tabs/src/tab-pane.vue.d.ts +4 -4
  331. package/lib/components/tabs/src/tabs.d.ts +24 -24
  332. package/lib/components/tabs/src/tabs.js +4 -4
  333. package/lib/components/tabs/src/tabs.js.map +1 -1
  334. package/lib/components/tooltip/src/trigger.js +7 -3
  335. package/lib/components/tooltip/src/trigger.js.map +1 -1
  336. package/lib/components/tooltip/src/trigger.vue.d.ts +11 -0
  337. package/lib/components/transfer/index.d.ts +110 -0
  338. package/lib/components/transfer/src/index.js +18 -13
  339. package/lib/components/transfer/src/index.js.map +1 -1
  340. package/lib/components/transfer/src/index.vue.d.ts +55 -0
  341. package/lib/components/transfer/src/transfer-panel.js +25 -19
  342. package/lib/components/transfer/src/transfer-panel.js.map +1 -1
  343. package/lib/components/transfer/src/transfer-panel.vue.d.ts +11 -0
  344. package/lib/components/tree-v2/index.d.ts +11 -0
  345. package/lib/components/tree-v2/src/tree-node-content.js +4 -1
  346. package/lib/components/tree-v2/src/tree-node-content.js.map +1 -1
  347. package/lib/components/tree-v2/src/tree-node.js +16 -11
  348. package/lib/components/tree-v2/src/tree-node.js.map +1 -1
  349. package/lib/components/tree-v2/src/tree-node.vue.d.ts +11 -0
  350. package/lib/components/tree-v2/src/tree.js +13 -12
  351. package/lib/components/tree-v2/src/tree.js.map +1 -1
  352. package/lib/components/tree-v2/src/tree.vue.d.ts +11 -0
  353. package/lib/components/upload/src/upload-dragger.js +5 -4
  354. package/lib/components/upload/src/upload-dragger.js.map +1 -1
  355. package/lib/components/upload/src/upload-dragger.vue.d.ts +11 -0
  356. package/lib/components/upload/src/upload-list.js +57 -45
  357. package/lib/components/upload/src/upload-list.js.map +1 -1
  358. package/lib/components/upload/src/upload-list.vue.d.ts +33 -0
  359. package/lib/components/upload/src/upload.js +7 -3
  360. package/lib/components/upload/src/upload.js.map +1 -1
  361. package/lib/components/upload/src/upload.vue.d.ts +11 -0
  362. package/lib/tokens/tabs.d.ts +2 -2
  363. package/lib/tokens/tabs.js.map +1 -1
  364. package/lib/utils-v2/vue/style.d.ts +1 -1
  365. package/lib/utils-v2/vue/style.js +2 -1
  366. package/lib/utils-v2/vue/style.js.map +1 -1
  367. package/lib/version.d.ts +1 -1
  368. package/lib/version.js +1 -1
  369. package/lib/version.js.map +1 -1
  370. package/package.json +2 -2
  371. package/tags.json +1 -1
  372. package/web-types.json +1 -1
@@ -3,7 +3,9 @@
3
3
  Object.defineProperty(exports, '__esModule', { value: true });
4
4
 
5
5
  var vue = require('vue');
6
+ require('../../../hooks/index.js');
6
7
  var pluginVue_exportHelper = require('../../../_virtual/plugin-vue_export-helper.js');
8
+ var index = require('../../../hooks/use-namespace/index.js');
7
9
 
8
10
  const _sfc_main = vue.defineComponent({
9
11
  name: "ElUploadDrag",
@@ -16,6 +18,7 @@ const _sfc_main = vue.defineComponent({
16
18
  emits: ["file"],
17
19
  setup(props, { emit }) {
18
20
  const uploader = vue.inject("uploader", {});
21
+ const ns = index.useNamespace("upload");
19
22
  const dragover = vue.ref(false);
20
23
  function onDrop(e) {
21
24
  var _a;
@@ -50,6 +53,7 @@ const _sfc_main = vue.defineComponent({
50
53
  dragover.value = true;
51
54
  }
52
55
  return {
56
+ ns,
53
57
  dragover,
54
58
  onDrop,
55
59
  onDragover
@@ -58,10 +62,7 @@ const _sfc_main = vue.defineComponent({
58
62
  });
59
63
  function _sfc_render(_ctx, _cache, $props, $setup, $data, $options) {
60
64
  return vue.openBlock(), vue.createElementBlock("div", {
61
- class: vue.normalizeClass({
62
- "el-upload-dragger": true,
63
- "is-dragover": _ctx.dragover
64
- }),
65
+ class: vue.normalizeClass([_ctx.ns.b("dragger"), _ctx.ns.is("dragover", _ctx.dragover)]),
65
66
  onDrop: _cache[0] || (_cache[0] = vue.withModifiers((...args) => _ctx.onDrop && _ctx.onDrop(...args), ["prevent"])),
66
67
  onDragover: _cache[1] || (_cache[1] = vue.withModifiers((...args) => _ctx.onDragover && _ctx.onDragover(...args), ["prevent"])),
67
68
  onDragleave: _cache[2] || (_cache[2] = vue.withModifiers(($event) => _ctx.dragover = false, ["prevent"]))
@@ -1 +1 @@
1
- {"version":3,"file":"upload-dragger.js","sources":["../../../../../../packages/components/upload/src/upload-dragger.vue"],"sourcesContent":["<template>\n <div\n :class=\"{\n 'el-upload-dragger': true,\n 'is-dragover': dragover,\n }\"\n @drop.prevent=\"onDrop\"\n @dragover.prevent=\"onDragover\"\n @dragleave.prevent=\"dragover = false\"\n >\n <slot></slot>\n </div>\n</template>\n<script lang=\"ts\">\nimport { defineComponent, ref, inject } from 'vue'\n\nimport type { ElUpload } from './upload.type'\n\nexport default defineComponent({\n name: 'ElUploadDrag',\n props: {\n disabled: {\n type: Boolean,\n default: false,\n },\n },\n emits: ['file'],\n setup(props, { emit }) {\n const uploader = inject('uploader', {} as ElUpload)\n const dragover = ref(false)\n\n function onDrop(e: DragEvent) {\n if (props.disabled || !uploader) return\n const accept = uploader.props?.accept || uploader.accept\n dragover.value = false\n if (!accept) {\n emit('file', e.dataTransfer.files)\n return\n }\n emit(\n 'file',\n Array.from(e.dataTransfer.files).filter((file) => {\n const { type, name } = file\n const extension =\n name.indexOf('.') > -1 ? `.${name.split('.').pop()}` : ''\n const baseType = type.replace(/\\/.*$/, '')\n return accept\n .split(',')\n .map((type) => type.trim())\n .filter((type) => type)\n .some((acceptedType) => {\n if (acceptedType.startsWith('.')) {\n return extension === acceptedType\n }\n if (/\\/\\*$/.test(acceptedType)) {\n return baseType === acceptedType.replace(/\\/\\*$/, '')\n }\n if (/^[^/]+\\/[^/]+$/.test(acceptedType)) {\n return type === acceptedType\n }\n return false\n })\n })\n )\n }\n\n function onDragover() {\n if (!props.disabled) dragover.value = true\n }\n\n return {\n dragover,\n onDrop,\n onDragover,\n }\n },\n})\n</script>\n"],"names":["defineComponent","inject","ref"],"mappings":";;;;;;;AAkBA,MAAK,YAAaA,oBAAa;AAAA,EAC7B,MAAM;AAAA,EACN,OAAO;AAAA,IACL,UAAU;AAAA,MACR,MAAM;AAAA,MACN,SAAS;AAAA;AAAA;AAAA,EAGb,OAAO,CAAC;AAAA,EACR,MAAM,OAAO,EAAE,QAAQ;AACrB,UAAM,WAAWC,WAAO,YAAY;AACpC,UAAM,WAAWC,QAAI;AAErB,oBAAgB,GAAc;AAC5B,UAAI;AAA6B;AACjC;AACA,uBAAiB;AACjB;AACE;AACA;AAAA;AAEF;AAGI,+BAAuB;AACvB,cAAM,YACJ,KAAK;AACP,cAAM,gBAAgB,QAAQ,SAAS;AACvC,sBACG,eACI,CAAC;AAGJ,2BAAiB,WAAW;AAC1B;AAAqB;AAEvB;AACE;AAAkD;AAEpD;AACE;AAAgB;AAElB;AAAO;AAAA;AAAA;AAMjB;AACE;AAAqB,iBAAS,QAAQ;AAAA;AAGxC;AAAO;AACL,MACA;AAAA,MACA;AAAA;AAAA;AAAA;;SAvEI;AAAA;8BAA0D;AAAA;;;AAK7C,IAClB,qEAAmB;AAAQ;;AAE5B;;;;;;;;"}
1
+ {"version":3,"file":"upload-dragger.js","sources":["../../../../../../packages/components/upload/src/upload-dragger.vue"],"sourcesContent":["<template>\n <div\n :class=\"[ns.b('dragger'), ns.is('dragover', dragover)]\"\n @drop.prevent=\"onDrop\"\n @dragover.prevent=\"onDragover\"\n @dragleave.prevent=\"dragover = false\"\n >\n <slot></slot>\n </div>\n</template>\n<script lang=\"ts\">\nimport { defineComponent, ref, inject } from 'vue'\nimport { useNamespace } from '@element-plus/hooks'\n\nimport type { ElUpload } from './upload.type'\n\nexport default defineComponent({\n name: 'ElUploadDrag',\n props: {\n disabled: {\n type: Boolean,\n default: false,\n },\n },\n emits: ['file'],\n setup(props, { emit }) {\n const uploader = inject('uploader', {} as ElUpload)\n const ns = useNamespace('upload')\n const dragover = ref(false)\n\n function onDrop(e: DragEvent) {\n if (props.disabled || !uploader) return\n const accept = uploader.props?.accept || uploader.accept\n dragover.value = false\n if (!accept) {\n emit('file', e.dataTransfer.files)\n return\n }\n emit(\n 'file',\n Array.from(e.dataTransfer.files).filter((file) => {\n const { type, name } = file\n const extension =\n name.indexOf('.') > -1 ? `.${name.split('.').pop()}` : ''\n const baseType = type.replace(/\\/.*$/, '')\n return accept\n .split(',')\n .map((type) => type.trim())\n .filter((type) => type)\n .some((acceptedType) => {\n if (acceptedType.startsWith('.')) {\n return extension === acceptedType\n }\n if (/\\/\\*$/.test(acceptedType)) {\n return baseType === acceptedType.replace(/\\/\\*$/, '')\n }\n if (/^[^/]+\\/[^/]+$/.test(acceptedType)) {\n return type === acceptedType\n }\n return false\n })\n })\n )\n }\n\n function onDragover() {\n if (!props.disabled) dragover.value = true\n }\n\n return {\n ns,\n dragover,\n onDrop,\n onDragover,\n }\n },\n})\n</script>\n"],"names":["defineComponent","inject","useNamespace","ref"],"mappings":";;;;;;;;;AAgBA,MAAK,YAAaA,oBAAa;AAAA,EAC7B,MAAM;AAAA,EACN,OAAO;AAAA,IACL,UAAU;AAAA,MACR,MAAM;AAAA,MACN,SAAS;AAAA;AAAA;AAAA,EAGb,OAAO,CAAC;AAAA,EACR,MAAM,OAAO,EAAE,QAAQ;AACrB,UAAM,WAAWC,WAAO,YAAY;AACpC,UAAM,KAAKC,mBAAa;AACxB,UAAM,WAAWC,QAAI;AAErB,oBAAgB,GAAc;AAC5B,UAAI;AAA6B;AACjC;AACA,uBAAiB;AACjB;AACE;AACA;AAAA;AAEF;AAGI,+BAAuB;AACvB,cAAM,YACJ,KAAK;AACP,cAAM,gBAAgB,QAAQ,SAAS;AACvC,sBACG,eACI,CAAC;AAGJ,2BAAiB,WAAW;AAC1B;AAAqB;AAEvB;AACE;AAAkD;AAEpD;AACE;AAAgB;AAElB;AAAO;AAAA;AAAA;AAMjB;AACE;AAAqB,iBAAS,QAAQ;AAAA;AAGxC;AAAO;AACL,MACA;AAAA,MACA;AAAA,MACA;AAAA;AAAA;AAAA;;SAvEI,kCAAO;AAAa;AACX,IACd,sEAAkB;AAAA,IAClB,qEAAmB;AAAQ;;AAE5B;;;;;;;;"}
@@ -4,6 +4,17 @@ declare const _default: import("vue").DefineComponent<{
4
4
  default: boolean;
5
5
  };
6
6
  }, {
7
+ ns: {
8
+ namespace: import("vue").ComputedRef<string>;
9
+ b: (blockSuffix?: string) => string;
10
+ e: (element?: string | undefined) => string;
11
+ m: (modifier?: string | undefined) => string;
12
+ be: (blockSuffix?: string | undefined, element?: string | undefined) => string;
13
+ em: (element?: string | undefined, modifier?: string | undefined) => string;
14
+ bm: (blockSuffix?: string | undefined, modifier?: string | undefined) => string;
15
+ bem: (blockSuffix?: string | undefined, element?: string | undefined, modifier?: string | undefined) => string;
16
+ is: (name: string, state?: boolean) => string;
17
+ };
7
18
  dragover: import("vue").Ref<boolean>;
8
19
  onDrop: (e: DragEvent) => void;
9
20
  onDragover: () => void;
@@ -10,6 +10,7 @@ require('../../../hooks/index.js');
10
10
  var index = require('../../progress/index.js');
11
11
  var pluginVue_exportHelper = require('../../../_virtual/plugin-vue_export-helper.js');
12
12
  var index$2 = require('../../../hooks/use-locale/index.js');
13
+ var index$3 = require('../../../hooks/use-namespace/index.js');
13
14
 
14
15
  const _sfc_main = vue.defineComponent({
15
16
  name: "ElUploadList",
@@ -44,6 +45,9 @@ const _sfc_main = vue.defineComponent({
44
45
  emits: ["remove"],
45
46
  setup(props, { emit }) {
46
47
  const { t } = index$2.useLocale();
48
+ const nsUpload = index$3.useNamespace("upload");
49
+ const nsIcon = index$3.useNamespace("icon");
50
+ const nsList = index$3.useNamespace("list");
47
51
  const handleClick = (file) => {
48
52
  props.handlePreview(file);
49
53
  };
@@ -59,24 +63,18 @@ const _sfc_main = vue.defineComponent({
59
63
  handleClick,
60
64
  handleRemove,
61
65
  onFileClicked,
62
- t
66
+ t,
67
+ nsUpload,
68
+ nsIcon,
69
+ nsList
63
70
  };
64
71
  }
65
72
  });
66
73
  const _hoisted_1 = ["onKeydown"];
67
74
  const _hoisted_2 = ["src"];
68
75
  const _hoisted_3 = ["onClick"];
69
- const _hoisted_4 = { class: "el-upload-list__item-status-label" };
70
- const _hoisted_5 = {
71
- key: 2,
72
- class: "el-icon--close-tip"
73
- };
74
- const _hoisted_6 = {
75
- key: 4,
76
- class: "el-upload-list__item-actions"
77
- };
78
- const _hoisted_7 = ["onClick"];
79
- const _hoisted_8 = ["onClick"];
76
+ const _hoisted_4 = ["onClick"];
77
+ const _hoisted_5 = ["onClick"];
80
78
  function _sfc_render(_ctx, _cache, $props, $setup, $data, $options) {
81
79
  const _component_document = vue.resolveComponent("document");
82
80
  const _component_el_icon = vue.resolveComponent("el-icon");
@@ -89,20 +87,20 @@ function _sfc_render(_ctx, _cache, $props, $setup, $data, $options) {
89
87
  return vue.openBlock(), vue.createBlock(vue.TransitionGroup, {
90
88
  tag: "ul",
91
89
  class: vue.normalizeClass([
92
- "el-upload-list",
93
- "el-upload-list--" + _ctx.listType,
94
- { "is-disabled": _ctx.disabled }
90
+ _ctx.nsUpload.b("list"),
91
+ _ctx.nsUpload.bm("list", _ctx.listType),
92
+ _ctx.nsUpload.is("disabled", _ctx.disabled)
95
93
  ]),
96
- name: "el-list"
94
+ name: _ctx.nsList.b()
97
95
  }, {
98
96
  default: vue.withCtx(() => [
99
97
  (vue.openBlock(true), vue.createElementBlock(vue.Fragment, null, vue.renderList(_ctx.files, (file) => {
100
98
  return vue.openBlock(), vue.createElementBlock("li", {
101
99
  key: file.uid || file,
102
100
  class: vue.normalizeClass([
103
- "el-upload-list__item",
104
- "is-" + file.status,
105
- _ctx.focusing ? "focusing" : ""
101
+ _ctx.nsUpload.be("list", "item"),
102
+ _ctx.nsUpload.is(file.status),
103
+ { focusing: _ctx.focusing }
106
104
  ]),
107
105
  tabindex: "0",
108
106
  onKeydown: vue.withKeys(($event) => !_ctx.disabled && _ctx.handleRemove(file), ["delete"]),
@@ -113,55 +111,62 @@ function _sfc_render(_ctx, _cache, $props, $setup, $data, $options) {
113
111
  vue.renderSlot(_ctx.$slots, "default", { file }, () => [
114
112
  file.status !== "uploading" && ["picture-card", "picture"].includes(_ctx.listType) ? (vue.openBlock(), vue.createElementBlock("img", {
115
113
  key: 0,
116
- class: "el-upload-list__item-thumbnail",
114
+ class: vue.normalizeClass(_ctx.nsUpload.be("list", "item-thumbnail")),
117
115
  src: file.url,
118
116
  alt: ""
119
- }, null, 8, _hoisted_2)) : vue.createCommentVNode("v-if", true),
117
+ }, null, 10, _hoisted_2)) : vue.createCommentVNode("v-if", true),
120
118
  vue.createElementVNode("a", {
121
- class: "el-upload-list__item-name",
119
+ class: vue.normalizeClass(_ctx.nsUpload.be("list", "item-name")),
122
120
  onClick: ($event) => _ctx.handleClick(file)
123
121
  }, [
124
- vue.createVNode(_component_el_icon, { class: "el-icon--document" }, {
122
+ vue.createVNode(_component_el_icon, {
123
+ class: vue.normalizeClass(_ctx.nsIcon.m("document"))
124
+ }, {
125
125
  default: vue.withCtx(() => [
126
126
  vue.createVNode(_component_document)
127
127
  ]),
128
128
  _: 1
129
- }),
129
+ }, 8, ["class"]),
130
130
  vue.createTextVNode(" " + vue.toDisplayString(file.name), 1)
131
- ], 8, _hoisted_3),
132
- vue.createElementVNode("label", _hoisted_4, [
131
+ ], 10, _hoisted_3),
132
+ vue.createElementVNode("label", {
133
+ class: vue.normalizeClass(_ctx.nsUpload.be("list", "item-status-label"))
134
+ }, [
133
135
  _ctx.listType === "text" ? (vue.openBlock(), vue.createBlock(_component_el_icon, {
134
136
  key: 0,
135
- class: "el-icon--upload-success el-icon--circle-check"
137
+ class: vue.normalizeClass([_ctx.nsIcon.m("upload-success"), _ctx.nsIcon.m("circle-check")])
136
138
  }, {
137
139
  default: vue.withCtx(() => [
138
140
  vue.createVNode(_component_circle_check)
139
141
  ]),
140
142
  _: 1
141
- })) : ["picture-card", "picture"].includes(_ctx.listType) ? (vue.openBlock(), vue.createBlock(_component_el_icon, {
143
+ }, 8, ["class"])) : ["picture-card", "picture"].includes(_ctx.listType) ? (vue.openBlock(), vue.createBlock(_component_el_icon, {
142
144
  key: 1,
143
- class: "el-icon--upload-success el-icon--check"
145
+ class: vue.normalizeClass([_ctx.nsIcon.m("upload-success"), _ctx.nsIcon.m("check")])
144
146
  }, {
145
147
  default: vue.withCtx(() => [
146
148
  vue.createVNode(_component_check)
147
149
  ]),
148
150
  _: 1
149
- })) : vue.createCommentVNode("v-if", true)
150
- ]),
151
+ }, 8, ["class"])) : vue.createCommentVNode("v-if", true)
152
+ ], 2),
151
153
  !_ctx.disabled ? (vue.openBlock(), vue.createBlock(_component_el_icon, {
152
154
  key: 1,
153
- class: "el-icon--close",
155
+ class: vue.normalizeClass(_ctx.nsIcon.m("close")),
154
156
  onClick: ($event) => _ctx.handleRemove(file)
155
157
  }, {
156
158
  default: vue.withCtx(() => [
157
159
  vue.createVNode(_component_close)
158
160
  ]),
159
161
  _: 2
160
- }, 1032, ["onClick"])) : vue.createCommentVNode("v-if", true),
162
+ }, 1032, ["class", "onClick"])) : vue.createCommentVNode("v-if", true),
161
163
  vue.createCommentVNode(" Due to close btn only appears when li gets focused disappears after li gets blurred, thus keyboard navigation can never reach close btn"),
162
164
  vue.createCommentVNode(" This is a bug which needs to be fixed "),
163
165
  vue.createCommentVNode(" TODO: Fix the incorrect navigation interaction "),
164
- !_ctx.disabled ? (vue.openBlock(), vue.createElementBlock("i", _hoisted_5, vue.toDisplayString(_ctx.t("el.upload.deleteTip")), 1)) : vue.createCommentVNode("v-if", true),
166
+ !_ctx.disabled ? (vue.openBlock(), vue.createElementBlock("i", {
167
+ key: 2,
168
+ class: vue.normalizeClass(_ctx.nsIcon.m("close-tip"))
169
+ }, vue.toDisplayString(_ctx.t("el.upload.deleteTip")), 3)) : vue.createCommentVNode("v-if", true),
165
170
  file.status === "uploading" ? (vue.openBlock(), vue.createBlock(_component_el_progress, {
166
171
  key: 3,
167
172
  type: _ctx.listType === "picture-card" ? "circle" : "line",
@@ -169,37 +174,44 @@ function _sfc_render(_ctx, _cache, $props, $setup, $data, $options) {
169
174
  percentage: +file.percentage,
170
175
  style: { "margin-top": "0.5rem" }
171
176
  }, null, 8, ["type", "stroke-width", "percentage"])) : vue.createCommentVNode("v-if", true),
172
- _ctx.listType === "picture-card" ? (vue.openBlock(), vue.createElementBlock("span", _hoisted_6, [
177
+ _ctx.listType === "picture-card" ? (vue.openBlock(), vue.createElementBlock("span", {
178
+ key: 4,
179
+ class: vue.normalizeClass(_ctx.nsUpload.be("list", "item-actions"))
180
+ }, [
173
181
  vue.createElementVNode("span", {
174
- class: "el-upload-list__item-preview",
182
+ class: vue.normalizeClass(_ctx.nsUpload.be("list", "item-preview")),
175
183
  onClick: ($event) => _ctx.handlePreview(file)
176
184
  }, [
177
- vue.createVNode(_component_el_icon, { class: "el-icon--zoom-in" }, {
185
+ vue.createVNode(_component_el_icon, {
186
+ class: vue.normalizeClass(_ctx.nsIcon.m("zoom-in"))
187
+ }, {
178
188
  default: vue.withCtx(() => [
179
189
  vue.createVNode(_component_zoom_in)
180
190
  ]),
181
191
  _: 1
182
- })
183
- ], 8, _hoisted_7),
192
+ }, 8, ["class"])
193
+ ], 10, _hoisted_4),
184
194
  !_ctx.disabled ? (vue.openBlock(), vue.createElementBlock("span", {
185
195
  key: 0,
186
- class: "el-upload-list__item-delete",
196
+ class: vue.normalizeClass(_ctx.nsUpload.be("list", "item-delete")),
187
197
  onClick: ($event) => _ctx.handleRemove(file)
188
198
  }, [
189
- vue.createVNode(_component_el_icon, { class: "el-icon--delete" }, {
199
+ vue.createVNode(_component_el_icon, {
200
+ class: vue.normalizeClass(_ctx.nsIcon.m("delete"))
201
+ }, {
190
202
  default: vue.withCtx(() => [
191
203
  vue.createVNode(_component_delete)
192
204
  ]),
193
205
  _: 1
194
- })
195
- ], 8, _hoisted_8)) : vue.createCommentVNode("v-if", true)
196
- ])) : vue.createCommentVNode("v-if", true)
206
+ }, 8, ["class"])
207
+ ], 10, _hoisted_5)) : vue.createCommentVNode("v-if", true)
208
+ ], 2)) : vue.createCommentVNode("v-if", true)
197
209
  ])
198
210
  ], 42, _hoisted_1);
199
211
  }), 128))
200
212
  ]),
201
213
  _: 3
202
- }, 8, ["class"]);
214
+ }, 8, ["class", "name"]);
203
215
  }
204
216
  var UploadList = /* @__PURE__ */ pluginVue_exportHelper["default"](_sfc_main, [["render", _sfc_render]]);
205
217
 
@@ -1 +1 @@
1
- {"version":3,"file":"upload-list.js","sources":["../../../../../../packages/components/upload/src/upload-list.vue"],"sourcesContent":["<template>\n <transition-group\n tag=\"ul\"\n :class=\"[\n 'el-upload-list',\n 'el-upload-list--' + listType,\n { 'is-disabled': disabled },\n ]\"\n name=\"el-list\"\n >\n <li\n v-for=\"file in files\"\n :key=\"file.uid || file\"\n :class=\"[\n 'el-upload-list__item',\n 'is-' + file.status,\n focusing ? 'focusing' : '',\n ]\"\n tabindex=\"0\"\n @keydown.delete=\"!disabled && handleRemove(file)\"\n @focus=\"focusing = true\"\n @blur=\"focusing = false\"\n @click=\"onFileClicked\"\n >\n <slot :file=\"file\">\n <img\n v-if=\"\n file.status !== 'uploading' &&\n ['picture-card', 'picture'].includes(listType)\n \"\n class=\"el-upload-list__item-thumbnail\"\n :src=\"file.url\"\n alt=\"\"\n />\n <a class=\"el-upload-list__item-name\" @click=\"handleClick(file)\">\n <el-icon class=\"el-icon--document\"><document /></el-icon>\n {{ file.name }}\n </a>\n <label class=\"el-upload-list__item-status-label\">\n <el-icon\n v-if=\"listType === 'text'\"\n class=\"el-icon--upload-success el-icon--circle-check\"\n >\n <circle-check />\n </el-icon>\n <el-icon\n v-else-if=\"['picture-card', 'picture'].includes(listType)\"\n class=\"el-icon--upload-success el-icon--check\"\n >\n <check />\n </el-icon>\n </label>\n <el-icon\n v-if=\"!disabled\"\n class=\"el-icon--close\"\n @click=\"handleRemove(file)\"\n >\n <close />\n </el-icon>\n <!-- Due to close btn only appears when li gets focused disappears after li gets blurred, thus keyboard navigation can never reach close btn-->\n <!-- This is a bug which needs to be fixed -->\n <!-- TODO: Fix the incorrect navigation interaction -->\n <i v-if=\"!disabled\" class=\"el-icon--close-tip\">{{\n t('el.upload.deleteTip')\n }}</i>\n <el-progress\n v-if=\"file.status === 'uploading'\"\n :type=\"listType === 'picture-card' ? 'circle' : 'line'\"\n :stroke-width=\"listType === 'picture-card' ? 6 : 2\"\n :percentage=\"+file.percentage\"\n style=\"margin-top: 0.5rem\"\n />\n <span\n v-if=\"listType === 'picture-card'\"\n class=\"el-upload-list__item-actions\"\n >\n <span\n class=\"el-upload-list__item-preview\"\n @click=\"handlePreview(file)\"\n >\n <el-icon class=\"el-icon--zoom-in\"><zoom-in /></el-icon>\n </span>\n <span\n v-if=\"!disabled\"\n class=\"el-upload-list__item-delete\"\n @click=\"handleRemove(file)\"\n >\n <el-icon class=\"el-icon--delete\"><delete /></el-icon>\n </span>\n </span>\n </slot>\n </li>\n </transition-group>\n</template>\n<script lang=\"ts\">\nimport { defineComponent, ref } from 'vue'\nimport { NOOP } from '@vue/shared'\nimport { ElIcon } from '@element-plus/components/icon'\nimport {\n Document,\n Delete,\n Close,\n ZoomIn,\n Check,\n CircleCheck,\n} from '@element-plus/icons-vue'\nimport { useLocale } from '@element-plus/hooks'\nimport ElProgress from '@element-plus/components/progress'\n\nimport type { PropType } from 'vue'\nimport type { UploadFile } from './upload.type'\n\nexport default defineComponent({\n name: 'ElUploadList',\n components: {\n ElProgress,\n ElIcon,\n Document,\n Delete,\n Close,\n ZoomIn,\n Check,\n CircleCheck,\n },\n props: {\n files: {\n type: Array as PropType<UploadFile[]>,\n default: () => [] as File[],\n },\n disabled: {\n type: Boolean,\n default: false,\n },\n handlePreview: {\n type: Function as PropType<(file: UploadFile) => void>,\n default: () => NOOP,\n },\n listType: {\n type: String as PropType<'picture' | 'picture-card' | 'text'>,\n default: 'text',\n },\n },\n emits: ['remove'],\n setup(props, { emit }) {\n const { t } = useLocale()\n\n const handleClick = (file: UploadFile) => {\n props.handlePreview(file)\n }\n\n const onFileClicked = (e: Event) => {\n ;(e.target as HTMLElement).focus()\n }\n\n const handleRemove = (file: UploadFile) => {\n emit('remove', file)\n }\n return {\n focusing: ref(false),\n handleClick,\n handleRemove,\n onFileClicked,\n t,\n }\n },\n})\n</script>\n"],"names":["defineComponent","ElProgress","ElIcon","Document","Delete","Close","ZoomIn","Check","CircleCheck","NOOP","useLocale","ref","_openBlock","_createBlock","_createElementBlock","_withKeys","_createCommentVNode","_withCtx"],"mappings":";;;;;;;;;;;;;AAgHA,MAAK,YAAaA,oBAAa;AAAA,EAC7B,MAAM;AAAA,EACN,YAAY;AAAA,gBACVC;AAAA,YACAC;AAAA,cACAC;AAAA,YACAC;AAAA,WACAC;AAAA,YACAC;AAAA,WACAC;AAAA,iBACAC;AAAA;AAAA,EAEF,OAAO;AAAA,IACL,OAAO;AAAA,MACL,MAAM;AAAA,MACN,SAAS,MAAM;AAAA;AAAA,IAEjB,UAAU;AAAA,MACR,MAAM;AAAA,MACN,SAAS;AAAA;AAAA,IAEX,eAAe;AAAA,MACb,MAAM;AAAA,MACN,SAAS,MAAMC;AAAA;AAAA,IAEjB,UAAU;AAAA,MACR,MAAM;AAAA,MACN,SAAS;AAAA;AAAA;AAAA,EAGb,OAAO,CAAC;AAAA,EACR,MAAM,OAAO,EAAE,QAAQ;AACrB,UAAM,EAAE,MAAMC;AAEd,UAAM,cAAc,CAAC,SAAqB;AACxC,YAAM,cAAc;AAAA;AAGtB,UAAM,gBAAgB,CAAC,MAAa;AAClC;AAAC,MAAC,EAAE,OAAuB;AAAA;AAG7B,UAAM,eAAe,CAAC,SAAqB;AACzC,WAAK,UAAU;AAAA;AAEjB,WAAO;AAAA,MACL,UAAUC,QAAI;AAAA,MACd;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA;AAAA;AAAA;;;;;;EApGsB,KAAK;AAAA;;;EAYvB,KAAK;AAAA;;;;;;;;;;;;;SAxEPC,iBAAIC;AAAA,IACP,KAAK;AAAA;;2BAAwF;AAAA;;;;+BAO9F;AAAA,iEAiFK;eA/EGD,iBAAYE,uBAAI;AAAA,UACrB,KAAK;AAAA;;YAAyE,aAAQ;AAAA;;UAMtF,UAAO;AAAA,UACP,WAAKC,2CAAE,kBAAQ;AAAA,UACf,SAAI,sCAAE,gBAAQ;AAAA,UACd,QAAK,2CAAE;AAAA;WAER;AAAA;;cAMI,KAAK;AAAA,cACJ,OAAK;AAAA,cACN,KAAI,KAAE;AAAA;uCAERC,uBAGI;AAAA,mCAHK;AAAA,cAA6B,OAAK;AAAA;eACzC;AAAA,kDAA+C;AAAA,yBAAZC,YAAY;AAAA;;;;;eAGjD;AAAA,mCAEkB;AAAA,gCADhB;gBAEE,KAAK;AAAA;;yBAELA,YAAgB;AAAA;;;qCAElB,oBAKU;gBAHR,KAAK;AAAA;;yBAELA,YAAS;AAAA;;;;;;cAKX,KAAK;AAAA,cACJ,OAAK;AAAA;;uBAENA,YAAS;AAAA;;;qCAEXD;AAAA,YACAA;AAAA,YACAA;AAAA,mCACkB;AAAA,iJAIVA,uBAAW;AAAA;cAChB,KAAI;AAAA,cACJ,wBAAc,iBAAQ;AAAA,cACtB,gBAAa,KAAK,aAAU;AAAA,cAC7B;AAAA;mEAGMA,uBAAQ;AAAA,8BADhB,mCAIEF,uBAKO;AAAA,qCAJC;AAAA,gBACL,OAAK;AAAA;iBAEN;AAAA,oDAA6C;AAAA,2BAAXG,YAAW;AAAA;;;;iBAGtC,GAAQ;AAAA;gBACf,KAAK;AAAA,gBACJ,OAAK;AAAA;iBAEN;AAAA,oDAA2C;AAAA,2BAAVA,YAAU;AAAA;;;;;;;;;;;;;;;;;"}
1
+ {"version":3,"file":"upload-list.js","sources":["../../../../../../packages/components/upload/src/upload-list.vue"],"sourcesContent":["<template>\n <transition-group\n tag=\"ul\"\n :class=\"[\n nsUpload.b('list'),\n nsUpload.bm('list', listType),\n nsUpload.is('disabled', disabled),\n ]\"\n :name=\"nsList.b()\"\n >\n <li\n v-for=\"file in files\"\n :key=\"file.uid || file\"\n :class=\"[\n nsUpload.be('list', 'item'),\n nsUpload.is(file.status),\n { focusing },\n ]\"\n tabindex=\"0\"\n @keydown.delete=\"!disabled && handleRemove(file)\"\n @focus=\"focusing = true\"\n @blur=\"focusing = false\"\n @click=\"onFileClicked\"\n >\n <slot :file=\"file\">\n <img\n v-if=\"\n file.status !== 'uploading' &&\n ['picture-card', 'picture'].includes(listType)\n \"\n :class=\"nsUpload.be('list', 'item-thumbnail')\"\n :src=\"file.url\"\n alt=\"\"\n />\n <a :class=\"nsUpload.be('list', 'item-name')\" @click=\"handleClick(file)\">\n <el-icon :class=\"nsIcon.m('document')\"><document /></el-icon>\n {{ file.name }}\n </a>\n <label :class=\"nsUpload.be('list', 'item-status-label')\">\n <el-icon\n v-if=\"listType === 'text'\"\n :class=\"[nsIcon.m('upload-success'), nsIcon.m('circle-check')]\"\n >\n <circle-check />\n </el-icon>\n <el-icon\n v-else-if=\"['picture-card', 'picture'].includes(listType)\"\n :class=\"[nsIcon.m('upload-success'), nsIcon.m('check')]\"\n >\n <check />\n </el-icon>\n </label>\n <el-icon\n v-if=\"!disabled\"\n :class=\"nsIcon.m('close')\"\n @click=\"handleRemove(file)\"\n >\n <close />\n </el-icon>\n <!-- Due to close btn only appears when li gets focused disappears after li gets blurred, thus keyboard navigation can never reach close btn-->\n <!-- This is a bug which needs to be fixed -->\n <!-- TODO: Fix the incorrect navigation interaction -->\n <i v-if=\"!disabled\" :class=\"nsIcon.m('close-tip')\">{{\n t('el.upload.deleteTip')\n }}</i>\n <el-progress\n v-if=\"file.status === 'uploading'\"\n :type=\"listType === 'picture-card' ? 'circle' : 'line'\"\n :stroke-width=\"listType === 'picture-card' ? 6 : 2\"\n :percentage=\"+file.percentage\"\n style=\"margin-top: 0.5rem\"\n />\n <span\n v-if=\"listType === 'picture-card'\"\n :class=\"nsUpload.be('list', 'item-actions')\"\n >\n <span\n :class=\"nsUpload.be('list', 'item-preview')\"\n @click=\"handlePreview(file)\"\n >\n <el-icon :class=\"nsIcon.m('zoom-in')\"><zoom-in /></el-icon>\n </span>\n <span\n v-if=\"!disabled\"\n :class=\"nsUpload.be('list', 'item-delete')\"\n @click=\"handleRemove(file)\"\n >\n <el-icon :class=\"nsIcon.m('delete')\"><delete /></el-icon>\n </span>\n </span>\n </slot>\n </li>\n </transition-group>\n</template>\n<script lang=\"ts\">\nimport { defineComponent, ref } from 'vue'\nimport { NOOP } from '@vue/shared'\nimport { ElIcon } from '@element-plus/components/icon'\nimport {\n Document,\n Delete,\n Close,\n ZoomIn,\n Check,\n CircleCheck,\n} from '@element-plus/icons-vue'\nimport { useLocale, useNamespace } from '@element-plus/hooks'\nimport ElProgress from '@element-plus/components/progress'\n\nimport type { PropType } from 'vue'\nimport type { UploadFile } from './upload.type'\n\nexport default defineComponent({\n name: 'ElUploadList',\n components: {\n ElProgress,\n ElIcon,\n Document,\n Delete,\n Close,\n ZoomIn,\n Check,\n CircleCheck,\n },\n props: {\n files: {\n type: Array as PropType<UploadFile[]>,\n default: () => [] as File[],\n },\n disabled: {\n type: Boolean,\n default: false,\n },\n handlePreview: {\n type: Function as PropType<(file: UploadFile) => void>,\n default: () => NOOP,\n },\n listType: {\n type: String as PropType<'picture' | 'picture-card' | 'text'>,\n default: 'text',\n },\n },\n emits: ['remove'],\n setup(props, { emit }) {\n const { t } = useLocale()\n const nsUpload = useNamespace('upload')\n const nsIcon = useNamespace('icon')\n const nsList = useNamespace('list')\n\n const handleClick = (file: UploadFile) => {\n props.handlePreview(file)\n }\n\n const onFileClicked = (e: Event) => {\n ;(e.target as HTMLElement).focus()\n }\n\n const handleRemove = (file: UploadFile) => {\n emit('remove', file)\n }\n return {\n focusing: ref(false),\n handleClick,\n handleRemove,\n onFileClicked,\n t,\n nsUpload,\n nsIcon,\n nsList,\n }\n },\n})\n</script>\n"],"names":["defineComponent","ElProgress","ElIcon","Document","Delete","Close","ZoomIn","Check","CircleCheck","NOOP","useLocale","useNamespace","ref","_openBlock","_createBlock","_normalizeClass","_createElementBlock","_withKeys","_createCommentVNode","_withCtx"],"mappings":";;;;;;;;;;;;;;AAgHA,MAAK,YAAaA,oBAAa;AAAA,EAC7B,MAAM;AAAA,EACN,YAAY;AAAA,gBACVC;AAAA,YACAC;AAAA,cACAC;AAAA,YACAC;AAAA,WACAC;AAAA,YACAC;AAAA,WACAC;AAAA,iBACAC;AAAA;AAAA,EAEF,OAAO;AAAA,IACL,OAAO;AAAA,MACL,MAAM;AAAA,MACN,SAAS,MAAM;AAAA;AAAA,IAEjB,UAAU;AAAA,MACR,MAAM;AAAA,MACN,SAAS;AAAA;AAAA,IAEX,eAAe;AAAA,MACb,MAAM;AAAA,MACN,SAAS,MAAMC;AAAA;AAAA,IAEjB,UAAU;AAAA,MACR,MAAM;AAAA,MACN,SAAS;AAAA;AAAA;AAAA,EAGb,OAAO,CAAC;AAAA,EACR,MAAM,OAAO,EAAE,QAAQ;AACrB,UAAM,EAAE,MAAMC;AACd,UAAM,WAAWC,qBAAa;AAC9B,UAAM,SAASA,qBAAa;AAC5B,UAAM,SAASA,qBAAa;AAE5B,UAAM,cAAc,CAAC,SAAqB;AACxC,YAAM,cAAc;AAAA;AAGtB,UAAM,gBAAgB,CAAC,MAAa;AAClC;AAAC,MAAC,EAAE,OAAuB;AAAA;AAG7B,UAAM,eAAe,CAAC,SAAqB;AACzC,WAAK,UAAU;AAAA;AAEjB,WAAO;AAAA,MACL,UAAUC,QAAI;AAAA,MACd;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA;AAAA;AAAA;;;;;;;;;;;;;;;SAtKEC,iBAAIC;AAAA,IACP,KAAK;AAAA,WAAUC,mBAAU;AAAA,MAAgB,cAAS,EAAE;AAAA,MAA0B,cAAS,GAAE,aAAa;AAAA;;;;+BAOvG;AAAA,iEAiFK;eA/EGF,iBAAYG,uBAAI;AAAA,UACrB,KAAK;AAAA,UAAY,0BAAW;AAAA,YAA0B,cAAS,GAAG,QAAK;AAAA,0BAAmB;AAAA;;UAM1F,UAAO;AAAA,UACP,WAAKC,2CAAE,kBAAQ;AAAA,UACf,SAAI,sCAAE,gBAAQ;AAAA,UACd,QAAK,2CAAE;AAAA;WAER;AAAA;;cAMK,KAAK;AAAA,cACL,OAAKF,mBAAQ;AAAA,cACd,KAAI,KAAE;AAAA;wCAERG,uBAGI;AAAA,mCAHK,KAAE;AAAA,cAAmC,OAAKH,mBAAE,cAAY,WAAI;AAAA;eACnE;AAAA,8BAAe,oBAAE;AAAA;;yBAAsBI,YAAY;AAAA;;;oBAAU;AAAA;eAG/D,IAaQ;AAAA,mCAbK,SAAE;AAAA;eAEL;AAAA,gCADR;gBAEG,KAAK;AAAA;;yBAENA,YAAgB;AAAA;;;mDAElB,oBAKU;gBAHP,KAAK;AAAA;;yBAENA,YAAS;AAAA;;;;eAIJ;AAAA;cACN,KAAK;AAAA,cACL,OAAKJ,mBAAE,cAAY;AAAA;;uBAEpBI,YAAS;AAAA;;;8CAEXD;AAAA,YACAA;AAAA,YACAA;AAAA,mCACkB;AAAA;cAAG,KAAK;AAAA,wCACxB,KAAC;AAAA,yEAGKA,uBAAW;AAAA;cAChB,KAAI;AAAA,cACJ,wBAAc,iBAAQ;AAAA,cACtB,gBAAa,KAAK,aAAU;AAAA,cAC7B;AAAA;mEAGMA,uBAAQ;AAAA,8BADhB;cAEG,KAAK;AAAA;eAEN;AAAA,qCACQ,QAAE;AAAA,gBACP,OAAKH,mBAAE,iBAAc,QAAI;AAAA;iBAE1B;AAAA,gCAAe,oBAAE;AAAA;;2BAAqBI,YAAW;AAAA;;;;iBAG1C,IAAQ;AAAA;gBACd,KAAK;AAAA,gBACL,OAAKJ,mBAAE,cAAY,GAAC,QAAI;AAAA;iBAEzB;AAAA,gCAAe,oBAAE;AAAA;;2BAAoBI,YAAU;AAAA;;;;;;;;;;;;;;;;;"}
@@ -23,6 +23,39 @@ declare const _default: import("vue").DefineComponent<{
23
23
  handleRemove: (file: UploadFile) => void;
24
24
  onFileClicked: (e: Event) => void;
25
25
  t: import("element-plus/es/hooks").Translator;
26
+ nsUpload: {
27
+ namespace: import("vue").ComputedRef<string>;
28
+ b: (blockSuffix?: string) => string;
29
+ e: (element?: string | undefined) => string;
30
+ m: (modifier?: string | undefined) => string;
31
+ be: (blockSuffix?: string | undefined, element?: string | undefined) => string;
32
+ em: (element?: string | undefined, modifier?: string | undefined) => string;
33
+ bm: (blockSuffix?: string | undefined, modifier?: string | undefined) => string;
34
+ bem: (blockSuffix?: string | undefined, element?: string | undefined, modifier?: string | undefined) => string;
35
+ is: (name: string, state?: boolean) => string;
36
+ };
37
+ nsIcon: {
38
+ namespace: import("vue").ComputedRef<string>;
39
+ b: (blockSuffix?: string) => string;
40
+ e: (element?: string | undefined) => string;
41
+ m: (modifier?: string | undefined) => string;
42
+ be: (blockSuffix?: string | undefined, element?: string | undefined) => string;
43
+ em: (element?: string | undefined, modifier?: string | undefined) => string;
44
+ bm: (blockSuffix?: string | undefined, modifier?: string | undefined) => string;
45
+ bem: (blockSuffix?: string | undefined, element?: string | undefined, modifier?: string | undefined) => string;
46
+ is: (name: string, state?: boolean) => string;
47
+ };
48
+ nsList: {
49
+ namespace: import("vue").ComputedRef<string>;
50
+ b: (blockSuffix?: string) => string;
51
+ e: (element?: string | undefined) => string;
52
+ m: (modifier?: string | undefined) => string;
53
+ be: (blockSuffix?: string | undefined, element?: string | undefined) => string;
54
+ em: (element?: string | undefined, modifier?: string | undefined) => string;
55
+ bm: (blockSuffix?: string | undefined, modifier?: string | undefined) => string;
56
+ bem: (blockSuffix?: string | undefined, element?: string | undefined, modifier?: string | undefined) => string;
57
+ is: (name: string, state?: boolean) => string;
58
+ };
26
59
  }, unknown, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, "remove"[], "remove", import("vue").VNodeProps & import("vue").AllowedComponentProps & import("vue").ComponentCustomProps, Readonly<import("vue").ExtractPropTypes<{
27
60
  files: {
28
61
  type: PropType<UploadFile[]>;
@@ -5,9 +5,11 @@ Object.defineProperty(exports, '__esModule', { value: true });
5
5
  var vue = require('vue');
6
6
  var shared = require('@vue/shared');
7
7
  require('../../../utils-v2/index.js');
8
+ require('../../../hooks/index.js');
8
9
  var ajax = require('./ajax.js');
9
10
  var uploadDragger = require('./upload-dragger.js');
10
11
  var pluginVue_exportHelper = require('../../../_virtual/plugin-vue_export-helper.js');
12
+ var index = require('../../../hooks/use-namespace/index.js');
11
13
 
12
14
  const _sfc_main = vue.defineComponent({
13
15
  components: {
@@ -110,6 +112,7 @@ const _sfc_main = vue.defineComponent({
110
112
  },
111
113
  setup(props) {
112
114
  const reqs = vue.ref({});
115
+ const ns = index.useNamespace("upload");
113
116
  const mouseover = vue.ref(false);
114
117
  const inputRef = vue.ref(null);
115
118
  function uploadFiles(files) {
@@ -225,6 +228,7 @@ const _sfc_main = vue.defineComponent({
225
228
  handleClick();
226
229
  }
227
230
  return {
231
+ ns,
228
232
  reqs,
229
233
  mouseover,
230
234
  inputRef,
@@ -242,7 +246,7 @@ const _hoisted_1 = ["name", "multiple", "accept"];
242
246
  function _sfc_render(_ctx, _cache, $props, $setup, $data, $options) {
243
247
  const _component_upload_dragger = vue.resolveComponent("upload-dragger");
244
248
  return vue.openBlock(), vue.createElementBlock("div", {
245
- class: vue.normalizeClass(["el-upload", `el-upload--${_ctx.listType}`]),
249
+ class: vue.normalizeClass([_ctx.ns.b(), _ctx.ns.m(_ctx.listType)]),
246
250
  tabindex: "0",
247
251
  onClick: _cache[1] || (_cache[1] = (...args) => _ctx.handleClick && _ctx.handleClick(...args)),
248
252
  onKeydown: _cache[2] || (_cache[2] = vue.withKeys(vue.withModifiers((...args) => _ctx.handleKeydown && _ctx.handleKeydown(...args), ["self"]), ["enter", "space"]))
@@ -259,13 +263,13 @@ function _sfc_render(_ctx, _cache, $props, $setup, $data, $options) {
259
263
  }, 8, ["disabled", "onFile"])) : vue.renderSlot(_ctx.$slots, "default", { key: 1 }),
260
264
  vue.createElementVNode("input", {
261
265
  ref: "inputRef",
262
- class: "el-upload__input",
266
+ class: vue.normalizeClass(_ctx.ns.e("input")),
263
267
  type: "file",
264
268
  name: _ctx.name,
265
269
  multiple: _ctx.multiple,
266
270
  accept: _ctx.accept,
267
271
  onChange: _cache[0] || (_cache[0] = (...args) => _ctx.handleChange && _ctx.handleChange(...args))
268
- }, null, 40, _hoisted_1)
272
+ }, null, 42, _hoisted_1)
269
273
  ], 34);
270
274
  }
271
275
  var Upload = /* @__PURE__ */ pluginVue_exportHelper["default"](_sfc_main, [["render", _sfc_render]]);
@@ -1 +1 @@
1
- {"version":3,"file":"upload.js","sources":["../../../../../../packages/components/upload/src/upload.vue"],"sourcesContent":["<template>\n <div\n :class=\"['el-upload', `el-upload--${listType}`]\"\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></slot>\n </upload-dragger>\n </template>\n <template v-else>\n <slot></slot>\n </template>\n <input\n ref=\"inputRef\"\n class=\"el-upload__input\"\n type=\"file\"\n :name=\"name\"\n :multiple=\"multiple\"\n :accept=\"accept\"\n @change=\"handleChange\"\n />\n </div>\n</template>\n\n<script lang=\"ts\">\nimport { defineComponent, ref } from 'vue'\nimport { NOOP } from '@vue/shared'\nimport { hasOwn } from '@element-plus/utils-v2'\n\nimport ajax from './ajax'\nimport UploadDragger from './upload-dragger.vue'\n\nimport type { PropType } from 'vue'\nimport type { Nullable } from '@element-plus/utils/types'\nimport type { ListType, UploadFile, ElFile } from './upload.type'\n\ntype IFileHanlder = (\n file: Nullable<ElFile[]>,\n fileList?: UploadFile[]\n) => unknown\n\ntype AjaxEventListener = (e: ProgressEvent, file: ElFile) => unknown\n\nexport default defineComponent({\n components: {\n UploadDragger,\n },\n props: {\n type: {\n type: String,\n default: '',\n },\n action: {\n type: String,\n required: true,\n },\n name: {\n type: String,\n default: 'file',\n },\n data: {\n type: Object as PropType<Record<string, any>>,\n default: () => null,\n },\n headers: {\n type: Object as PropType<Nullable<Partial<Headers>>>,\n default: () => null,\n },\n method: {\n type: String,\n default: 'post',\n },\n withCredentials: {\n type: Boolean,\n default: false,\n },\n multiple: {\n type: Boolean as PropType<Nullable<boolean>>,\n default: null,\n },\n // https://developer.mozilla.org/en-US/docs/Web/HTML/Element/input/file#Unique_file_type_specifiers\n accept: {\n type: String,\n default: '',\n },\n onStart: {\n type: Function as PropType<(file: File) => void>,\n default: NOOP as (file: File) => void,\n },\n onProgress: {\n type: Function as PropType<AjaxEventListener>,\n default: NOOP as AjaxEventListener,\n },\n onSuccess: {\n type: Function as PropType<AjaxEventListener>,\n default: NOOP as AjaxEventListener,\n },\n onError: {\n type: Function as PropType<AjaxEventListener>,\n default: NOOP as AjaxEventListener,\n },\n beforeUpload: {\n type: Function as PropType<\n (file: File) => Promise<File | Blob> | boolean | unknown\n >,\n default: NOOP as (file: File) => void,\n },\n drag: {\n type: Boolean,\n default: false,\n },\n onPreview: {\n type: Function as PropType<IFileHanlder>,\n default: NOOP as IFileHanlder,\n },\n onRemove: {\n type: Function as PropType<\n (file: Nullable<FileList>, rawFile: ElFile) => void\n >,\n default: NOOP as (file: Nullable<FileList>, rawFile: ElFile) => void,\n },\n fileList: {\n type: Array as PropType<UploadFile[]>,\n default: () => [] as UploadFile[],\n },\n autoUpload: {\n type: Boolean,\n default: true,\n },\n listType: {\n type: String as PropType<ListType>,\n default: 'text',\n },\n httpRequest: {\n type: Function as\n | PropType<typeof ajax>\n | PropType<(...args: unknown[]) => Promise<unknown>>,\n default: () => ajax,\n },\n disabled: Boolean,\n limit: {\n type: Number as PropType<Nullable<number>>,\n default: null,\n },\n onExceed: {\n type: Function as PropType<\n (files: FileList, fileList: UploadFile[]) => void\n >,\n default: NOOP,\n },\n },\n setup(props) {\n const reqs = ref({} as Record<string, XMLHttpRequest | Promise<any>>)\n const mouseover = ref(false)\n const inputRef = ref(null as Nullable<HTMLInputElement>)\n\n function uploadFiles(files: FileList) {\n if (props.limit && props.fileList.length + files.length > props.limit) {\n props.onExceed(files, props.fileList)\n return\n }\n let postFiles = Array.from(files)\n if (!props.multiple) {\n postFiles = postFiles.slice(0, 1)\n }\n if (postFiles.length === 0) {\n return\n }\n postFiles.forEach((rawFile) => {\n props.onStart(rawFile)\n if (props.autoUpload) upload(rawFile as ElFile)\n })\n }\n\n function upload(rawFile: ElFile) {\n inputRef.value.value = null\n if (!props.beforeUpload) {\n return post(rawFile)\n }\n const before = props.beforeUpload(rawFile)\n if (before instanceof Promise) {\n before\n .then((processedFile) => {\n const fileType = Object.prototype.toString.call(processedFile)\n if (fileType === '[object File]' || fileType === '[object Blob]') {\n if (fileType === '[object Blob]') {\n processedFile = new File([processedFile], rawFile.name, {\n type: rawFile.type,\n })\n }\n for (const p in rawFile) {\n if (hasOwn(rawFile, p)) {\n processedFile[p] = rawFile[p]\n }\n }\n post(processedFile)\n } else {\n post(rawFile)\n }\n })\n .catch(() => {\n props.onRemove(null, rawFile)\n })\n } else if (before !== false) {\n post(rawFile)\n } else {\n props.onRemove(null, rawFile)\n }\n }\n function abort(file) {\n const _reqs = reqs.value\n if (file) {\n let uid = file\n if (file.uid) uid = file.uid\n if (_reqs[uid]) {\n ;(_reqs[uid] as XMLHttpRequest).abort()\n }\n } else {\n Object.keys(_reqs).forEach((uid) => {\n if (_reqs[uid]) (_reqs[uid] as XMLHttpRequest).abort()\n delete _reqs[uid]\n })\n }\n }\n\n function post(rawFile: ElFile) {\n const { uid } = rawFile\n const options = {\n headers: props.headers,\n withCredentials: props.withCredentials,\n file: rawFile,\n data: props.data,\n method: props.method,\n filename: props.name,\n action: props.action,\n onProgress: (e) => {\n props.onProgress(e, rawFile)\n },\n onSuccess: (res) => {\n props.onSuccess(res, rawFile)\n delete reqs.value[uid]\n },\n onError: (err) => {\n props.onError(err, rawFile)\n delete reqs.value[uid]\n },\n }\n const req = props.httpRequest(options)\n reqs.value[uid] = req\n if (req instanceof Promise) {\n req.then(options.onSuccess, options.onError)\n }\n }\n\n function handleChange(e: DragEvent) {\n const files = (e.target as HTMLInputElement).files\n if (!files) return\n uploadFiles(files)\n }\n\n function handleClick() {\n if (!props.disabled) {\n inputRef.value.value = null\n inputRef.value.click()\n }\n }\n\n function handleKeydown() {\n handleClick()\n }\n\n return {\n reqs,\n mouseover,\n inputRef,\n abort,\n post,\n handleChange,\n handleClick,\n handleKeydown,\n upload,\n uploadFiles,\n }\n },\n})\n</script>\n"],"names":["defineComponent","UploadDragger","NOOP","ajax","ref","hasOwn","_openBlock","_withCtx","_renderSlot"],"mappings":"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"}
1
+ {"version":3,"file":"upload.js","sources":["../../../../../../packages/components/upload/src/upload.vue"],"sourcesContent":["<template>\n <div\n :class=\"[ns.b(), ns.m(listType)]\"\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></slot>\n </upload-dragger>\n </template>\n <template v-else>\n <slot></slot>\n </template>\n <input\n ref=\"inputRef\"\n :class=\"ns.e('input')\"\n type=\"file\"\n :name=\"name\"\n :multiple=\"multiple\"\n :accept=\"accept\"\n @change=\"handleChange\"\n />\n </div>\n</template>\n\n<script lang=\"ts\">\nimport { defineComponent, ref } from 'vue'\nimport { NOOP } from '@vue/shared'\nimport { hasOwn } from '@element-plus/utils-v2'\n\nimport { useNamespace } from '@element-plus/hooks'\nimport ajax from './ajax'\nimport UploadDragger from './upload-dragger.vue'\n\nimport type { PropType } from 'vue'\nimport type { Nullable } from '@element-plus/utils/types'\nimport type { ListType, UploadFile, ElFile } from './upload.type'\n\ntype IFileHanlder = (\n file: Nullable<ElFile[]>,\n fileList?: UploadFile[]\n) => unknown\n\ntype AjaxEventListener = (e: ProgressEvent, file: ElFile) => unknown\n\nexport default defineComponent({\n components: {\n UploadDragger,\n },\n props: {\n type: {\n type: String,\n default: '',\n },\n action: {\n type: String,\n required: true,\n },\n name: {\n type: String,\n default: 'file',\n },\n data: {\n type: Object as PropType<Record<string, any>>,\n default: () => null,\n },\n headers: {\n type: Object as PropType<Nullable<Partial<Headers>>>,\n default: () => null,\n },\n method: {\n type: String,\n default: 'post',\n },\n withCredentials: {\n type: Boolean,\n default: false,\n },\n multiple: {\n type: Boolean as PropType<Nullable<boolean>>,\n default: null,\n },\n // https://developer.mozilla.org/en-US/docs/Web/HTML/Element/input/file#Unique_file_type_specifiers\n accept: {\n type: String,\n default: '',\n },\n onStart: {\n type: Function as PropType<(file: File) => void>,\n default: NOOP as (file: File) => void,\n },\n onProgress: {\n type: Function as PropType<AjaxEventListener>,\n default: NOOP as AjaxEventListener,\n },\n onSuccess: {\n type: Function as PropType<AjaxEventListener>,\n default: NOOP as AjaxEventListener,\n },\n onError: {\n type: Function as PropType<AjaxEventListener>,\n default: NOOP as AjaxEventListener,\n },\n beforeUpload: {\n type: Function as PropType<\n (file: File) => Promise<File | Blob> | boolean | unknown\n >,\n default: NOOP as (file: File) => void,\n },\n drag: {\n type: Boolean,\n default: false,\n },\n onPreview: {\n type: Function as PropType<IFileHanlder>,\n default: NOOP as IFileHanlder,\n },\n onRemove: {\n type: Function as PropType<\n (file: Nullable<FileList>, rawFile: ElFile) => void\n >,\n default: NOOP as (file: Nullable<FileList>, rawFile: ElFile) => void,\n },\n fileList: {\n type: Array as PropType<UploadFile[]>,\n default: () => [] as UploadFile[],\n },\n autoUpload: {\n type: Boolean,\n default: true,\n },\n listType: {\n type: String as PropType<ListType>,\n default: 'text',\n },\n httpRequest: {\n type: Function as\n | PropType<typeof ajax>\n | PropType<(...args: unknown[]) => Promise<unknown>>,\n default: () => ajax,\n },\n disabled: Boolean,\n limit: {\n type: Number as PropType<Nullable<number>>,\n default: null,\n },\n onExceed: {\n type: Function as PropType<\n (files: FileList, fileList: UploadFile[]) => void\n >,\n default: NOOP,\n },\n },\n setup(props) {\n const reqs = ref({} as Record<string, XMLHttpRequest | Promise<any>>)\n const ns = useNamespace('upload')\n const mouseover = ref(false)\n const inputRef = ref(null as Nullable<HTMLInputElement>)\n\n function uploadFiles(files: FileList) {\n if (props.limit && props.fileList.length + files.length > props.limit) {\n props.onExceed(files, props.fileList)\n return\n }\n let postFiles = Array.from(files)\n if (!props.multiple) {\n postFiles = postFiles.slice(0, 1)\n }\n if (postFiles.length === 0) {\n return\n }\n postFiles.forEach((rawFile) => {\n props.onStart(rawFile)\n if (props.autoUpload) upload(rawFile as ElFile)\n })\n }\n\n function upload(rawFile: ElFile) {\n inputRef.value.value = null\n if (!props.beforeUpload) {\n return post(rawFile)\n }\n const before = props.beforeUpload(rawFile)\n if (before instanceof Promise) {\n before\n .then((processedFile) => {\n const fileType = Object.prototype.toString.call(processedFile)\n if (fileType === '[object File]' || fileType === '[object Blob]') {\n if (fileType === '[object Blob]') {\n processedFile = new File([processedFile], rawFile.name, {\n type: rawFile.type,\n })\n }\n for (const p in rawFile) {\n if (hasOwn(rawFile, p)) {\n processedFile[p] = rawFile[p]\n }\n }\n post(processedFile)\n } else {\n post(rawFile)\n }\n })\n .catch(() => {\n props.onRemove(null, rawFile)\n })\n } else if (before !== false) {\n post(rawFile)\n } else {\n props.onRemove(null, rawFile)\n }\n }\n function abort(file) {\n const _reqs = reqs.value\n if (file) {\n let uid = file\n if (file.uid) uid = file.uid\n if (_reqs[uid]) {\n ;(_reqs[uid] as XMLHttpRequest).abort()\n }\n } else {\n Object.keys(_reqs).forEach((uid) => {\n if (_reqs[uid]) (_reqs[uid] as XMLHttpRequest).abort()\n delete _reqs[uid]\n })\n }\n }\n\n function post(rawFile: ElFile) {\n const { uid } = rawFile\n const options = {\n headers: props.headers,\n withCredentials: props.withCredentials,\n file: rawFile,\n data: props.data,\n method: props.method,\n filename: props.name,\n action: props.action,\n onProgress: (e) => {\n props.onProgress(e, rawFile)\n },\n onSuccess: (res) => {\n props.onSuccess(res, rawFile)\n delete reqs.value[uid]\n },\n onError: (err) => {\n props.onError(err, rawFile)\n delete reqs.value[uid]\n },\n }\n const req = props.httpRequest(options)\n reqs.value[uid] = req\n if (req instanceof Promise) {\n req.then(options.onSuccess, options.onError)\n }\n }\n\n function handleChange(e: DragEvent) {\n const files = (e.target as HTMLInputElement).files\n if (!files) return\n uploadFiles(files)\n }\n\n function handleClick() {\n if (!props.disabled) {\n inputRef.value.value = null\n inputRef.value.click()\n }\n }\n\n function handleKeydown() {\n handleClick()\n }\n\n return {\n ns,\n reqs,\n mouseover,\n inputRef,\n abort,\n post,\n handleChange,\n handleClick,\n handleKeydown,\n upload,\n uploadFiles,\n }\n },\n})\n</script>\n"],"names":["defineComponent","UploadDragger","NOOP","ajax","ref","useNamespace","hasOwn","_openBlock","_withCtx","_renderSlot","_normalizeClass"],"mappings":"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"}
@@ -99,6 +99,17 @@ declare const _default: import("vue").DefineComponent<{
99
99
  default: () => void;
100
100
  };
101
101
  }, {
102
+ ns: {
103
+ namespace: import("vue").ComputedRef<string>;
104
+ b: (blockSuffix?: string) => string;
105
+ e: (element?: string | undefined) => string;
106
+ m: (modifier?: string | undefined) => string;
107
+ be: (blockSuffix?: string | undefined, element?: string | undefined) => string;
108
+ em: (element?: string | undefined, modifier?: string | undefined) => string;
109
+ bm: (blockSuffix?: string | undefined, modifier?: string | undefined) => string;
110
+ bem: (blockSuffix?: string | undefined, element?: string | undefined, modifier?: string | undefined) => string;
111
+ is: (name: string, state?: boolean) => string;
112
+ };
102
113
  reqs: import("vue").Ref<{
103
114
  [x: string]: {
104
115
  then: <TResult1 = any, TResult2 = never>(onfulfilled?: ((value: any) => TResult1 | PromiseLike<TResult1>) | null | undefined, onrejected?: ((reason: any) => TResult2 | PromiseLike<TResult2>) | null | undefined) => Promise<TResult1 | TResult2>;
@@ -4,14 +4,14 @@ export declare type TabsPaneContext = UnwrapRef<{
4
4
  uid: number;
5
5
  instance: ShallowReactive<ComponentInternalInstance>;
6
6
  props: TabPaneProps;
7
- paneName: ComputedRef<string | undefined>;
7
+ paneName: ComputedRef<string | number | undefined>;
8
8
  active: ComputedRef<boolean>;
9
9
  index: Ref<string | undefined>;
10
10
  isClosable: ComputedRef<boolean>;
11
11
  }>;
12
12
  export interface TabsRootContext {
13
13
  props: TabsProps;
14
- currentName: Ref<string>;
14
+ currentName: Ref<string | number>;
15
15
  updatePaneState: (pane: TabsPaneContext) => void;
16
16
  }
17
17
  export declare const tabsRootContextKey: InjectionKey<TabsRootContext>;
@@ -1 +1 @@
1
- {"version":3,"file":"tabs.js","sources":["../../../../packages/tokens/tabs.ts"],"sourcesContent":["import type { TabsProps, TabPaneProps } from '@element-plus/components/tabs'\nimport type {\n ComponentInternalInstance,\n ComputedRef,\n Ref,\n InjectionKey,\n UnwrapRef,\n ShallowReactive,\n} from 'vue'\n\nexport type TabsPaneContext = UnwrapRef<{\n uid: number\n instance: ShallowReactive<ComponentInternalInstance>\n props: TabPaneProps\n paneName: ComputedRef<string | undefined>\n active: ComputedRef<boolean>\n index: Ref<string | undefined>\n isClosable: ComputedRef<boolean>\n}>\n\nexport interface TabsRootContext {\n props: TabsProps\n currentName: Ref<string>\n updatePaneState: (pane: TabsPaneContext) => void\n}\n\nexport const tabsRootContextKey: InjectionKey<TabsRootContext> =\n Symbol('tabsRootContextKey')\n"],"names":[],"mappings":";;;;AAAY,MAAC,kBAAkB,GAAG,MAAM,CAAC,oBAAoB;;;;"}
1
+ {"version":3,"file":"tabs.js","sources":["../../../../packages/tokens/tabs.ts"],"sourcesContent":["import type { TabsProps, TabPaneProps } from '@element-plus/components/tabs'\nimport type {\n ComponentInternalInstance,\n ComputedRef,\n Ref,\n InjectionKey,\n UnwrapRef,\n ShallowReactive,\n} from 'vue'\n\nexport type TabsPaneContext = UnwrapRef<{\n uid: number\n instance: ShallowReactive<ComponentInternalInstance>\n props: TabPaneProps\n paneName: ComputedRef<string | number | undefined>\n active: ComputedRef<boolean>\n index: Ref<string | undefined>\n isClosable: ComputedRef<boolean>\n}>\n\nexport interface TabsRootContext {\n props: TabsProps\n currentName: Ref<string | number>\n updatePaneState: (pane: TabsPaneContext) => void\n}\n\nexport const tabsRootContextKey: InjectionKey<TabsRootContext> =\n Symbol('tabsRootContextKey')\n"],"names":[],"mappings":";;;;AAAY,MAAC,kBAAkB,GAAG,MAAM,CAAC,oBAAoB;;;;"}
@@ -1 +1 @@
1
- export declare function addUnit(value: string | number, defaultUnit?: string): string;
1
+ export declare function addUnit(value: string | number, defaultUnit?: string): string | undefined;
@@ -9,13 +9,14 @@ var core = require('@vueuse/core');
9
9
 
10
10
  const SCOPE = "utils-v2/vue/style";
11
11
  function addUnit(value, defaultUnit = "px") {
12
+ if (!value)
13
+ return "";
12
14
  if (shared.isString(value)) {
13
15
  return value;
14
16
  } else if (core.isNumber(value)) {
15
17
  return `${value}${defaultUnit}`;
16
18
  }
17
19
  error.debugWarn(SCOPE, "binding value must be a string or number");
18
- return "";
19
20
  }
20
21
 
21
22
  exports.addUnit = addUnit;
@@ -1 +1 @@
1
- {"version":3,"file":"style.js","sources":["../../../../../packages/utils-v2/vue/style.ts"],"sourcesContent":["import { isString, isNumber } from '../types'\nimport { debugWarn } from '../error'\n\nconst SCOPE = 'utils-v2/vue/style'\n\nexport function addUnit(value: string | number, defaultUnit = 'px') {\n if (isString(value)) {\n return value\n } else if (isNumber(value)) {\n return `${value}${defaultUnit}`\n }\n debugWarn(SCOPE, 'binding value must be a string or number')\n return ''\n}\n"],"names":["isString","isNumber","debugWarn"],"mappings":";;;;;;;;;AAEA,MAAM,KAAK,GAAG,oBAAoB,CAAC;AAC5B,SAAS,OAAO,CAAC,KAAK,EAAE,WAAW,GAAG,IAAI,EAAE;AACnD,EAAE,IAAIA,eAAQ,CAAC,KAAK,CAAC,EAAE;AACvB,IAAI,OAAO,KAAK,CAAC;AACjB,GAAG,MAAM,IAAIC,aAAQ,CAAC,KAAK,CAAC,EAAE;AAC9B,IAAI,OAAO,CAAC,EAAE,KAAK,CAAC,EAAE,WAAW,CAAC,CAAC,CAAC;AACpC,GAAG;AACH,EAAEC,eAAS,CAAC,KAAK,EAAE,0CAA0C,CAAC,CAAC;AAC/D,EAAE,OAAO,EAAE,CAAC;AACZ;;;;"}
1
+ {"version":3,"file":"style.js","sources":["../../../../../packages/utils-v2/vue/style.ts"],"sourcesContent":["import { isString, isNumber } from '../types'\nimport { debugWarn } from '../error'\n\nconst SCOPE = 'utils-v2/vue/style'\n\nexport function addUnit(value: string | number, defaultUnit = 'px') {\n if (!value) return ''\n if (isString(value)) {\n return value\n } else if (isNumber(value)) {\n return `${value}${defaultUnit}`\n }\n debugWarn(SCOPE, 'binding value must be a string or number')\n}\n"],"names":["isString","isNumber","debugWarn"],"mappings":";;;;;;;;;AAEA,MAAM,KAAK,GAAG,oBAAoB,CAAC;AAC5B,SAAS,OAAO,CAAC,KAAK,EAAE,WAAW,GAAG,IAAI,EAAE;AACnD,EAAE,IAAI,CAAC,KAAK;AACZ,IAAI,OAAO,EAAE,CAAC;AACd,EAAE,IAAIA,eAAQ,CAAC,KAAK,CAAC,EAAE;AACvB,IAAI,OAAO,KAAK,CAAC;AACjB,GAAG,MAAM,IAAIC,aAAQ,CAAC,KAAK,CAAC,EAAE;AAC9B,IAAI,OAAO,CAAC,EAAE,KAAK,CAAC,EAAE,WAAW,CAAC,CAAC,CAAC;AACpC,GAAG;AACH,EAAEC,eAAS,CAAC,KAAK,EAAE,0CAA0C,CAAC,CAAC;AAC/D;;;;"}
package/lib/version.d.ts CHANGED
@@ -1 +1 @@
1
- export declare const version = "0.0.20220209";
1
+ export declare const version = "0.0.20220210";
package/lib/version.js CHANGED
@@ -2,7 +2,7 @@
2
2
 
3
3
  Object.defineProperty(exports, '__esModule', { value: true });
4
4
 
5
- const version = "0.0.20220209";
5
+ const version = "0.0.20220210";
6
6
 
7
7
  exports.version = version;
8
8
  //# sourceMappingURL=version.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"version.js","sources":["../../../packages/element-plus/version.ts"],"sourcesContent":["export const version = '0.0.20220209'\n"],"names":[],"mappings":";;;;AAAY,MAAC,OAAO,GAAG;;;;"}
1
+ {"version":3,"file":"version.js","sources":["../../../packages/element-plus/version.ts"],"sourcesContent":["export const version = '0.0.20220210'\n"],"names":[],"mappings":";;;;AAAY,MAAC,OAAO,GAAG;;;;"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@element-plus/nightly",
3
- "version": "0.0.20220209",
3
+ "version": "0.0.20220210",
4
4
  "description": "A Component Library for Vue 3",
5
5
  "homepage": "https://element-plus.org/",
6
6
  "keywords": [
@@ -77,5 +77,5 @@
77
77
  "not ie 11",
78
78
  "not op_mini all"
79
79
  ],
80
- "gitHead": "563b8692e622d03240e8c8e761bf8ed80f421faf"
80
+ "gitHead": "1d8584d627de5b0318577210666adf2be64d3e75"
81
81
  }