File: /www/server/panel/BTPanel/static/js/index424.js
import{n as ae,w as oe,a as le,c7 as ne,f as re,cZ as ie}from"./utils-lib.js?v=1777008528";import{c as ue,r as k,H as de,g as R,o as pe,aH as ce,j as d,k as w,J as m,K as f,p as a,q as s,F as me,C as h,v as u,x as _,L as D,y as v,e as n,s as r,M as fe,at as _e,as as ve,ar as ge,z as we,aW as ke}from"./base-lib.js?v=1777008528";import{_ as ye}from"./index119.js?v=1777008528";import{s as be}from"./vue-virtual-scroller.esm.js?v=1777008528";import{ai as xe,aj as Se,ak as he,al as De}from"./index3.js?v=1777008528";import"./__commonjsHelpers__.js?v=1777008528";import"./index116.js?v=1777008528";const Fe={id:"upload-mask"},ze={class:"p-[20px]"},Ce=["accept","webkitdirectory"],Ee={class:"mb-[16px] flex justify-between"},Ne={key:1,class:"upload-press"},$e={key:2,class:"upload-press"},Ue={key:3,class:"upload-files-tips"},Le={key:4,class:"uploader-list"},Ie={class:"th"},Re={class:"td justify-end"},Me={class:"uploader-file tr"},Oe={class:"td-block"},Pe={class:"td !w-[55%] flex"},je=["title"],Be={class:"td"},Te={class:"td"},Ve={class:"truncate"},He={key:0},Ge={class:"td justify-end"},Xe={class:"flex justify-end"},qe=ue({__name:"index",props:{compData:{default:()=>({path:""})}},setup(y,{expose:M}){const F=y,O=re(),{refreshFilesList:P}=xe();let U=null;const j=k(),x=k(!1),i=k("paused"),p=k([]),z=k(),C=k(!1),o=de({totalProgress:0,uploadList:0,sizeUploaded:0,currentSpeed:0,timeRemaining:0,timeElapsed:0,averageSpeed:0,errorNumber:0,successNumber:0,uploadSize:""}),b=new Se({target:"/files?action=upload",uploadPath:F.compData.path||"/www/wwwroot",renewalData:t=>{p.value=[...t]},renewalSpeed:t=>{o.totalProgress=t.totalProgress,o.uploadList=t.uploadList,o.sizeUploaded=t.sizeUploaded,o.currentSpeed=t.currentSpeed,o.timeRemaining=t.timeRemaining},renewalStatus:t=>{i.value=t.status,o.timeElapsed=t.timeElapsed,o.averageSpeed=t.averageSpeed,o.uploadSize=t.uploadSize,o.successNumber=t.successNumber,o.errorNumber=t.errorNumber},uploadEnd:()=>{F.compData.uploadEnd&&F.compData.uploadEnd(p.value)}}),{uploadStatusInfo:L,initData:B,fileUploadLimit:T,cancelFile:V}=b,H=R(()=>!p.value.length),G=R(()=>!p.value.length),I=t=>"".concat(t.path,"/").concat(t.name).replace(/\/\//,"/"),X=t=>{if(t.isFolder)return"folder";const e=t.name.split(".").pop();return["zip","rar","gz","tar","war","tgz","bz2","7z","tar.gz"].includes(e)?"compress":e},E=t=>{b.isGetFiles=!0,t==="file"||!ae(t)?C.value=!1:C.value=!0,setTimeout(()=>{z.value.click()},0)},q=t=>{const{files:e}=t.target;for(let c=0;c<e.length;c++){const S="/".concat(e[c].webkitRelativePath===""?e[c].name:e[c].webkitRelativePath);if(!T(e[c],S))return!1}if(!b.isGetFiles)return!1},J=t=>t.status==="success"?{transform:"translateX(-0%)"}:{transform:"translateX(-".concat(100-t.progress,"%)")},K=()=>{if(p.value.length===0)return O.error("请添加需要上传的文件");i.value="uploading",b.useFileUploadExistsConfirm()},N=()=>{B(),p.value=[],i.value="paused",z.value.value=""},W=()=>{x.value=!0,i.value==="success"&&N()},Z=()=>{x.value=!1},A=t=>{x.value=!1,b.fileSelectHandler(t,e=>{p.value=e||[]})},Q=async()=>{try{if(["uploading","paused"].includes(i.value)&&p.value.length)return await oe({title:"取消上传",width:"35rem",icon:"warning-filled",content:"是否取消上传,取消后将清空上传列表?"}),P(),!0}catch(t){return!1}};return pe(()=>{U={...he({dragenter:W,dragleave:Z,drop:A,dragover:()=>{}})}}),ce(()=>{De(U)}),M({onCancel:Q}),(t,e)=>{const c=le,S=_e,Y=ve,ee=ge,$=we,g=ye,se=ke,te=ne;return d(),w("div",{ref_key:"upload",ref:j,class:"upload-file-view"},[m(s("div",Fe,"请将需要上传的文件/文件夹拖到此处",512),[[f,a(x)]]),s("div",ze,[a(i).indexOf("paused")>-1?(d(),w(me,{key:0},[s("input",{ref_key:"uploadFileInput",ref:z,type:"file",accept:y.compData.accept||"",webkitdirectory:a(C),style:{display:"none"},multiple:"",onChange:q},null,40,Ce),s("div",Ee,[y.compData.accept?(d(),h(c,{key:0,class:D(y.compData.accept?"":"rounded-r-none"),onClick:e[0]||(e[0]=l=>E("file"))},{default:u(()=>[...e[1]||(e[1]=[_(" 上传文件 ",-1)])]),_:1},8,["class"])):v("",!0),y.compData.accept?v("",!0):(d(),h(ee,{key:1,"split-button":"",type:"default","show-timeout":50,"hide-timeout":50,onClick:E,onCommand:E},{dropdown:u(()=>[n(Y,{class:"w-[10rem]"},{default:u(()=>[n(S,{command:"file"},{default:u(()=>[...e[2]||(e[2]=[_("上传文件",-1)])]),_:1}),n(S,{command:"dir"},{default:u(()=>[...e[3]||(e[3]=[_("上传文件夹",-1)])]),_:1})]),_:1})]),default:u(()=>[e[4]||(e[4]=_(" 上传文件 ",-1))]),_:1})),n($,{disabled:a(H),onClick:N},{default:u(()=>[...e[5]||(e[5]=[_("清空列表",-1)])]),_:1},8,["disabled"])])],64)):v("",!0),a(i).indexOf("uploading")>-1?(d(),w("div",Ne,[s("span",null,"总进度:"+r(a(o).totalProgress)+"%",1),n(g),s("span",null,"正在上传:("+r("".concat(a(o).uploadList,"/").concat(a(p).length))+")",1),n(g),s("span",null,"上传速度:"+r(a(o).currentSpeed)+"/s",1),n(g),s("span",null,"预计耗时:"+r(a(o).timeRemaining),1)])):v("",!0),a(i).indexOf("success")>-1?(d(),w("div",$e,[s("span",null,"上传大小:"+r(a(o).uploadSize),1),n(g),s("span",null,"共耗时:"+r(a(o).timeElapsed),1),n(g),s("span",null,"平均上传速度:"+r(a(o).averageSpeed)+"/s",1),n(g),s("span",null,"上传成功:"+r(a(o).successNumber)+"个",1),m(n(g,null,null,512),[[f,a(o).errorNumber>0]]),m(s("span",null,"上传失败:"+r(a(o).errorNumber)+"个",513),[[f,a(o).errorNumber>0]])])):v("",!0),a(G)?(d(),w("div",Ue,[...e[6]||(e[6]=[s("span",null,"请将需要上传的文件/文件夹拖到此处",-1)])])):(d(),w("div",Le,[s("div",Ie,[e[7]||(e[7]=s("div",{class:"td !w-[55%]"},"文件名",-1)),e[8]||(e[8]=s("div",{class:"td"},"文件大小",-1)),e[9]||(e[9]=s("div",{class:"td"},"上传状态",-1)),m(s("div",Re,"操作",512),[[f,a(i)!=="success"]])]),s("div",null,[n(a(be),{class:D(["!mb-0 overflow-auto file-upload-list files-list","!h-[400px]"]),items:a(p),"item-size":45,buffer:800,"key-field":"vid"},{default:u(({item:l})=>[s("div",Me,[s("div",{class:D({"td-progress":!0,error:l.status==="error",success:l.status==="success"}),style:fe(J(l))},null,6),s("div",Oe,[s("div",Pe,[s("i",{class:D(["icon-bg","".concat(X(l),"-icon")])},null,2),s("span",{class:"flex-1 w-0 ml-[4px] truncate h-[20px] leading-[20px]",title:I(l)},r(I(l)),9,je)]),s("div",Be,r(l.size),1),s("div",Te,[m(n(se,{effect:"dark",content:"".concat(a(L)(l.status)).concat(l.message?",".concat(l.message):""),placement:"right","show-after":200},{default:u(()=>[m(s("span",Ve,[_(r(a(L)(l.status))+" ",1),l.message?(d(),w("span",He," ,"+r(l.message),1)):v("",!0)],512),[[f,l.status!=="uploading"]])]),_:2},1032,["content"]),[[f,l.status!=="uploading"]]),m(s("span",null,[s("span",null,"上传中("+r(parseInt(l.progress))+"%)",1)],512),[[f,l.status==="uploading"]])]),m(s("div",Ge,[m(n(te,{onClick:Je=>a(V)(l)},{default:u(()=>[...e[10]||(e[10]=[_("取消",-1)])]),_:1},8,["onClick"]),[[f,a(i).indexOf("paused")>-1]])],512),[[f,a(i)!=="success"]])])])]),_:1},8,["items"])])])),s("div",Xe,[a(i).indexOf("paused")>-1?(d(),h($,{key:0,type:"primary",onClick:K},{default:u(()=>[...e[11]||(e[11]=[_(" 开始上传 ",-1)])]),_:1})):v("",!0),["success","error"].includes(a(i))?(d(),h($,{key:1,type:"primary",onClick:N},{default:u(()=>[...e[12]||(e[12]=[_(" 继续上传 ",-1)])]),_:1})):v("",!0)])])],512)}}}),ss=ie(qe,[["__scopeId","data-v-9bd44dc9"]]);export{ss as default};