2 lines
2.0 KiB
JavaScript
2 lines
2.0 KiB
JavaScript
import{j as i,R as g,x as w,y as F,z as y}from"../index.D-NvtsOM.js";import{b_ as C}from"./vendor/index.CRpmXtWV.js";async function S(e,t){return i({url:`/file/download/${C(e)}`,method:"get",headers:t?{range:t}:{},responseType:"blob",timeout:6e4})}async function x(e,t=1){t=t*1024*1024;let o=0,a=t-1,n=0,h=0,r=[];async function l(){const R=`bytes=${o}-${a}`,s=await S(e,R);if(s.code===g&&s.status===206){const p=s.headers.get("content-range")||"0/0";n=parseInt(p.split("/")[1]);const c=s.headers.get("content-length")||"0",u=parseInt(c);o+=u,a=Math.min(o+u-1,n-1),r.push(s.data),h+=u,h<n&&await l()}else return s}return await l(),new Blob(r,{type:"application/octet-stream"})}function M(e){return i({url:"/file/upload",method:"post",data:e,dataType:"form-data",timeout:18e4})}async function E(e,t=1,o="default"){let{name:a,size:n}=e;a=a.replace(/[\\/:*?"<>|]/g,"").replace(/\s/g,"_");const r=t*1024*1024,l=`${a}-${n}`,R=Math.ceil(n/r),s=[];for(let d=0;d<R;d++){const f=d*r,m=Math.min(f+r,n);s.push({index:d,chunk:e.slice(f,m)})}const p=await T(l,a);if(p.code!==g)return p;let c=0,u=0;for(const{index:d,chunk:f}of s){const m=`${d}`;if(p.data.includes(m)){c+=f.size;continue}const k=new FormData;if(k.append("file",f,a),k.append("index",m),k.append("identifier",l),(await _(k)).code===g)c+=f.size,u=c/n*100,console.log(`上传进度:${u}%`);else break}return c===n?await U(l,a,o):{code:w,msg:F[y]}}function T(e,t){return i({url:"/file/chunkCheck",method:"post",data:{identifier:e,fileName:t},timeout:6e4})}function U(e,t,o="default"){return i({url:"/file/chunkMerge",method:"post",data:{identifier:e,fileName:t,subPath:o},timeout:6e4})}function _(e){return i({url:"/file/chunkUpload",method:"post",data:e,dataType:"form-data",timeout:6e4})}function I(e){return i({url:"/file/transferStaticFile",method:"post",data:e,timeout:6e4})}async function L(e,t,o,a=1){const n=await E(o,a,"import");return n.code===g?await i({url:"/ne/action/pushFile",method:"post",data:{uploadPath:n.data.fileName,neType:e,neId:t},timeout:6e4}):n}export{M as a,E as b,x as c,S as d,I as t,L as u};
|