SYN/public/admin/assets/index.80fefa57.js

2 lines
2.6 KiB
JavaScript

import{V as L,W as w,J as U}from"./element-plus.7c242749.js";import{a as V,i as c,R as C,f as p,d as P}from"./index.0f3c9d87.js";import{d as D,s as R,r as f,b as F,o as n,c as m,X as b,P as y,K as N,O as j,a as g,W as I,a8 as O,V as W,T as _}from"./@vue.54440ad7.js";const q=D({components:{},props:{type:{type:String,default:"image"},multiple:{type:Boolean,default:!0},limit:{type:Number,default:10},data:{type:Object,default:()=>({})},showProgress:{type:Boolean,default:!1}},emits:["change","error","success","allSuccess"],setup(e,{emit:a}){const h=V(),u=R(),v=f(`${c.baseUrl}${c.urlPrefix}/upload/${e.type}`),E=F(()=>({token:h.token,version:c.version})),l=f(!1),o=f([]),i=()=>{l.value=!0};let s=0;const d=(t,r)=>{s++,s==o.value.length&&(s=0,o.value=[],a("allSuccess")),a("change",r),t.code==C.SUCCESS&&a("success",t),t.code==C.FAIL&&t.msg&&p.msgError(t.msg)},k=(t,r)=>{var S;s++,s==o.value.length&&(s=0,o.value=[],a("allSuccess")),p.msgError(`${r.name}\u6587\u4EF6\u4E0A\u4F20\u5931\u8D25`),(S=u.value)==null||S.abort(r),l.value=!1,a("change",r),a("error",r)},A=()=>{p.msgError(`\u8D85\u51FA\u4E0A\u4F20\u4E0A\u9650${e.limit}\uFF0C\u8BF7\u91CD\u65B0\u4E0A\u4F20`)},$=()=>{o.value=[],l.value=!1},B=F(()=>{switch(e.type){case"image":return".jpg,.png,.gif,.jpeg,.ico";case"video":return".wmv,.avi,.mpg,.mpeg,.3gp,.mov,.mp4,.flv,.rmvb,.mkv";default:return"*"}});return{uploadRefs:u,action:v,headers:E,visible:l,fileList:o,getAccept:B,handleProgress:i,handleSuccess:d,handleError:k,handleExceed:A,handleClose:$}}}),J={class:"upload"},K={class:"file-list p-4"},T={class:"flex-1"};function X(e,a,h,u,v,E){const l=L,o=w,i=U;return n(),m("div",J,[b(l,{"file-list":e.fileList,"onUpdate:fileList":a[0]||(a[0]=s=>e.fileList=s),ref:"uploadRefs",action:e.action,multiple:e.multiple,limit:e.limit,"show-file-list":!1,headers:e.headers,data:e.data,"on-progress":e.handleProgress,"on-success":e.handleSuccess,"on-exceed":e.handleExceed,"on-error":e.handleError,accept:e.getAccept},{default:y(()=>[N(e.$slots,"default")]),_:3},8,["file-list","action","multiple","limit","headers","data","on-progress","on-success","on-exceed","on-error","accept"]),e.showProgress&&e.fileList.length?(n(),j(i,{key:0,modelValue:e.visible,"onUpdate:modelValue":a[1]||(a[1]=s=>e.visible=s),title:"\u4E0A\u4F20\u8FDB\u5EA6","close-on-click-modal":!1,width:"500px",modal:!1,onClose:e.handleClose},{default:y(()=>[g("div",K,[(n(!0),m(I,null,O(e.fileList,(s,d)=>(n(),m("div",{key:d,class:"mb-5"},[g("div",null,W(s.name),1),g("div",T,[b(o,{percentage:parseInt(s.percentage)},null,8,["percentage"])])]))),128))])]),_:1},8,["modelValue","onClose"])):_("",!0)])}const M=P(q,[["render",X]]);export{M as U};