mirror of
https://github.com/MarSeventh/CloudFlare-ImgBed.git
synced 2026-04-30 08:56:48 +00:00
2 lines
17 KiB
JavaScript
2 lines
17 KiB
JavaScript
"use strict";(self["webpackChunksanyue_imghub"]=self["webpackChunksanyue_imghub"]||[]).push([[860],{7064:function(e,t,l){l.r(t),l.d(t,{default:function(){return J}});var s=l(6768),a=l.p+"img/logo.08a1b5de.png";const i=e=>((0,s.Qi)("data-v-7ae3a220"),e=e(),(0,s.jt)(),e),o={class:"upload-home"},n=i((()=>(0,s.Lk)("img",{id:"bg1",class:"background-image1",alt:"Background Image"},null,-1))),d=i((()=>(0,s.Lk)("img",{id:"bg2",class:"background-image2",alt:"Background Image"},null,-1))),r={class:"toolbar"},u=i((()=>(0,s.Lk)("div",{class:"header"},[(0,s.Lk)("a",{href:"https://github.com/MarSeventh/CloudFlare-ImgBed"},[(0,s.Lk)("img",{class:"logo",alt:"Sanyue logo",src:a})]),(0,s.Lk)("h1",null,[(0,s.Lk)("a",{class:"main-title",href:"https://github.com/MarSeventh/CloudFlare-ImgBed",target:"_blank"},"Sanyue"),(0,s.eW)(" ImgHub")])],-1))),c={class:"dialog-action"};function p(e,t,l,a,i,p){const g=(0,s.g2)("Refresh"),h=(0,s.g2)("el-icon"),m=(0,s.g2)("el-button"),f=(0,s.g2)("el-tooltip"),b=(0,s.g2)("Connection"),k=(0,s.g2)("Tools"),L=(0,s.g2)("Close"),F=(0,s.g2)("UploadForm"),y=(0,s.g2)("Footer"),U=(0,s.g2)("el-radio"),C=(0,s.g2)("el-radio-group"),v=(0,s.g2)("el-dialog");return(0,s.uX)(),(0,s.CE)("div",o,[n,d,(0,s.Lk)("div",r,[(0,s.bF)(f,{content:"上传方式",placement:"left"},{default:(0,s.k6)((()=>[(0,s.bF)(m,{class:"toolbar-button",size:"large",type:"info",onClick:p.changeUploadMethod,circle:""},{default:(0,s.k6)((()=>[(0,s.bF)(h,{size:"large"},{default:(0,s.k6)((()=>[(0,s.bF)(g)])),_:1})])),_:1},8,["onClick"])])),_:1}),(0,s.bF)(f,{content:"链接格式",placement:"left"},{default:(0,s.k6)((()=>[(0,s.bF)(m,{class:"toolbar-button",size:"large",type:"success",onClick:p.openUrlDialog,circle:""},{default:(0,s.k6)((()=>[(0,s.bF)(h,{size:"large"},{default:(0,s.k6)((()=>[(0,s.bF)(b)])),_:1})])),_:1},8,["onClick"])])),_:1}),(0,s.bF)(f,{content:"管理页面",placement:"left"},{default:(0,s.k6)((()=>[(0,s.bF)(m,{class:"toolbar-button",size:"large",type:"primary",onClick:p.handleManage,circle:""},{default:(0,s.k6)((()=>[(0,s.bF)(h,{size:"large"},{default:(0,s.k6)((()=>[(0,s.bF)(k)])),_:1})])),_:1},8,["onClick"])])),_:1}),(0,s.bF)(f,{content:"退出登录",placement:"left"},{default:(0,s.k6)((()=>[(0,s.bF)(m,{class:"toolbar-button",size:"large",type:"danger",onClick:p.handleLogout,circle:""},{default:(0,s.k6)((()=>[(0,s.bF)(h,{size:"large"},{default:(0,s.k6)((()=>[(0,s.bF)(L)])),_:1})])),_:1},8,["onClick"])])),_:1})]),u,(0,s.bF)(F,{selectedUrlForm:i.selectedUrlForm,uploadMethod:i.uploadMethod,class:"upload"},null,8,["selectedUrlForm","uploadMethod"]),(0,s.bF)(y),(0,s.bF)(v,{title:"选择复制链接格式",modelValue:i.showUrlDialog,"onUpdate:modelValue":t[2]||(t[2]=e=>i.showUrlDialog=e),width:"40%","show-close":!1},{default:(0,s.k6)((()=>[(0,s.bF)(C,{modelValue:i.selectedUrlForm,"onUpdate:modelValue":t[0]||(t[0]=e=>i.selectedUrlForm=e)},{default:(0,s.k6)((()=>[(0,s.bF)(U,{value:"url"},{default:(0,s.k6)((()=>[(0,s.eW)("原始链接")])),_:1}),(0,s.bF)(U,{value:"md"},{default:(0,s.k6)((()=>[(0,s.eW)("MarkDown")])),_:1}),(0,s.bF)(U,{value:"html"},{default:(0,s.k6)((()=>[(0,s.eW)("HTML")])),_:1}),(0,s.bF)(U,{value:"ubb"},{default:(0,s.k6)((()=>[(0,s.eW)("BBCode")])),_:1})])),_:1},8,["modelValue"]),(0,s.Lk)("div",c,[(0,s.bF)(m,{type:"primary",onClick:t[1]||(t[1]=e=>i.showUrlDialog=!1)},{default:(0,s.k6)((()=>[(0,s.eW)("确定")])),_:1})])])),_:1},8,["modelValue"])])}l(4114);var g=l(4232);const h=e=>((0,s.Qi)("data-v-3d98df6c"),e=e(),(0,s.jt)(),e),m={key:0,class:"el-upload__text"},f=h((()=>(0,s.Lk)("em",null,"点击上传",-1))),b={key:1,class:"el-upload__text"},k=h((()=>(0,s.Lk)("em",null,"粘贴",-1))),L=h((()=>(0,s.Lk)("div",{class:"el-upload__tip"},"支持多文件上传,支持图片和视频,文件大小不超过5MB",-1))),F={class:"upload-list-dashboard"},y={class:"upload-list-dashboard-action"},U=["href"],C=["src","onError"],v={class:"upload-list-item-content"},_={key:0,class:"upload-list-item-url"},w={class:"upload-list-item-url-row"},R={class:"upload-list-item-url-row"},W={key:1,class:"upload-list-item-progress"},x={class:"upload-list-item-action"};function I(e,t,l,a,i,o){const n=(0,s.g2)("CameraFilled"),d=(0,s.g2)("CopyDocument"),r=(0,s.g2)("el-icon"),u=(0,s.g2)("el-upload"),c=(0,s.g2)("List"),p=(0,s.g2)("Checked"),h=(0,s.g2)("Failed"),I=(0,s.g2)("el-text"),P=(0,s.g2)("Grid"),M=(0,s.g2)("el-button"),$=(0,s.g2)("el-tooltip"),E=(0,s.g2)("CircleClose"),B=(0,s.g2)("el-button-group"),S=(0,s.g2)("el-input"),V=(0,s.g2)("el-progress"),T=(0,s.g2)("Link"),D=(0,s.g2)("Delete"),A=(0,s.g2)("el-scrollbar"),z=(0,s.g2)("el-card");return(0,s.uX)(),(0,s.CE)("div",{class:"upload-form",onPaste:t[0]||(t[0]=(...e)=>o.handlePaste&&o.handlePaste(...e))},[(0,s.bF)(u,{class:(0,g.C4)(["upload-card",{"is-uploading":i.uploading,"upload-card-busy":i.fileList.length,"paste-mode":"paste"===l.uploadMethod}]),drag:"",multiple:"","http-request":o.uploadFile,onSuccess:o.handleSuccess,"on-error":o.handleError,"before-upload":o.beforeUpload,"on-progress":o.handleProgress,"file-list":i.fileList,"show-file-list":!1,accept:"image/*, video/*"},{tip:(0,s.k6)((()=>[L])),default:(0,s.k6)((()=>[(0,s.bF)(r,{class:"el-icon--upload"},{default:(0,s.k6)((()=>["drag"===l.uploadMethod?((0,s.uX)(),(0,s.Wv)(n,{key:0,color:"blanchedalmond"})):((0,s.uX)(),(0,s.Wv)(d,{key:1,color:"blanchedalmond"}))])),_:1}),"drag"===l.uploadMethod?((0,s.uX)(),(0,s.CE)("div",m,[(0,s.eW)("拖拽 或 "),f])):((0,s.uX)(),(0,s.CE)("div",b,[(0,s.eW)("复制 "),k,(0,s.eW)(" 上传")]))])),_:1},8,["class","http-request","onSuccess","on-error","before-upload","on-progress","file-list"]),(0,s.bF)(z,{class:(0,g.C4)(["upload-list-card",{"upload-list-busy":i.fileList.length}])},{default:(0,s.k6)((()=>[(0,s.Lk)("div",{class:(0,g.C4)(["upload-list-container",{"upload-list-busy":i.fileList.length}])},[(0,s.bF)(A,null,{default:(0,s.k6)((()=>[(0,s.Lk)("div",F,[(0,s.bF)(I,{class:"upload-list-dashboard-title"},{default:(0,s.k6)((()=>[(0,s.bF)(r,null,{default:(0,s.k6)((()=>[(0,s.bF)(c)])),_:1}),(0,s.eW)((0,g.v_)(o.uploadingCount+o.waitingCount)+" ",1),(0,s.bF)(r,null,{default:(0,s.k6)((()=>[(0,s.bF)(p)])),_:1}),(0,s.eW)((0,g.v_)(o.uploadSuccessCount)+" ",1),(0,s.bF)(r,null,{default:(0,s.k6)((()=>[(0,s.bF)(h)])),_:1}),(0,s.eW)((0,g.v_)(o.uploadErrorCount),1)])),_:1}),(0,s.Lk)("div",y,[(0,s.bF)(B,null,{default:(0,s.k6)((()=>[(0,s.bF)($,{content:"整体复制",placement:"top"},{default:(0,s.k6)((()=>[(0,s.bF)(M,{type:"primary",round:"",onClick:o.copyAll,alt:"整体复制"},{default:(0,s.k6)((()=>[(0,s.bF)(r,null,{default:(0,s.k6)((()=>[(0,s.bF)(P)])),_:1})])),_:1},8,["onClick"])])),_:1}),(0,s.bF)($,{content:"清空列表",placement:"top"},{default:(0,s.k6)((()=>[(0,s.bF)(M,{type:"primary",round:"",onClick:o.clearFileList},{default:(0,s.k6)((()=>[(0,s.bF)(r,null,{default:(0,s.k6)((()=>[(0,s.bF)(E)])),_:1})])),_:1},8,["onClick"])])),_:1})])),_:1})])]),((0,s.uX)(!0),(0,s.CE)(s.FK,null,(0,s.pI)(i.fileList,(e=>((0,s.uX)(),(0,s.CE)("div",{class:"upload-list-item",key:e.name,span:8},[(0,s.Lk)("a",{href:e.url,target:"_blank"},[(0,s.Lk)("img",{style:{width:"10vw","border-radius":"12px"},src:e.url,onError:t=>e.url="https://imgbed.sanyue.site/file/b6a4a65b4edba4377492e.png"},null,40,C)],8,U),(0,s.Lk)("div",v,[(0,s.bF)(I,{class:"upload-list-item-name",truncated:""},{default:(0,s.k6)((()=>[(0,s.eW)((0,g.v_)(e.name),1)])),_:2},1024),"done"===e.status?((0,s.uX)(),(0,s.CE)("div",_,[(0,s.Lk)("div",w,[(0,s.bF)(S,{modelValue:e.finalURL,"onUpdate:modelValue":t=>e.finalURL=t,size:"small",readonly:"",onFocus:o.selectAllText},{prepend:(0,s.k6)((()=>[(0,s.eW)("URL:")])),_:2},1032,["modelValue","onUpdate:modelValue","onFocus"]),(0,s.bF)(S,{modelValue:e.mdURL,"onUpdate:modelValue":t=>e.mdURL=t,size:"small",readonly:"",onFocus:o.selectAllText},{prepend:(0,s.k6)((()=>[(0,s.eW)("MarkDown:")])),_:2},1032,["modelValue","onUpdate:modelValue","onFocus"])]),(0,s.Lk)("div",R,[(0,s.bF)(S,{modelValue:e.htmlURL,"onUpdate:modelValue":t=>e.htmlURL=t,size:"small",readonly:"",onFocus:o.selectAllText},{prepend:(0,s.k6)((()=>[(0,s.eW)("HTML:")])),_:2},1032,["modelValue","onUpdate:modelValue","onFocus"]),(0,s.bF)(S,{modelValue:e.ubbURL,"onUpdate:modelValue":t=>e.ubbURL=t,size:"small",readonly:"",onFocus:o.selectAllText},{prepend:(0,s.k6)((()=>[(0,s.eW)("BBCode:")])),_:2},1032,["modelValue","onUpdate:modelValue","onFocus"])])])):((0,s.uX)(),(0,s.CE)("div",W,[(0,s.bF)(V,{percentage:e.progreess,status:e.status,"show-text":!1},null,8,["percentage","status"])]))]),(0,s.Lk)("div",x,[(0,s.bF)(M,{type:"primary",circle:"",class:"upload-list-item-action-button",onClick:t=>o.handleCopy(e)},{default:(0,s.k6)((()=>[(0,s.bF)(r,null,{default:(0,s.k6)((()=>[(0,s.bF)(T)])),_:1})])),_:2},1032,["onClick"]),(0,s.bF)(M,{type:"danger",circle:"",class:"upload-list-item-action-button",onClick:t=>o.handleRemove(e)},{default:(0,s.k6)((()=>[(0,s.bF)(r,null,{default:(0,s.k6)((()=>[(0,s.bF)(D)])),_:1})])),_:2},1032,["onClick"])])])))),128))])),_:1})],2)])),_:1},8,["class"])],32)}l(4603),l(7566),l(8721);var P=l(4373),M=l(4570),$=l.n(M),E={name:"UploadForm",props:{selectedUrlForm:{type:String,default:"url",required:!1},uploadMethod:{type:String,default:"drag",required:!1}},data(){return{fileList:[],uploading:!1,maxUploading:10,waitingList:[]}},computed:{uploadSuccessCount(){return this.fileList.filter((e=>"done"===e.status||"success"===e.status)).length},uploadErrorCount(){return this.fileList.filter((e=>"exception"===e.status)).length},uploadingCount(){return this.fileList.filter((e=>"uploading"===e.status)).length},waitingCount(){return this.waitingList.length}},methods:{uploadFile(e){if(this.uploadingCount>this.maxUploading)return this.waitingList.push(e),void(this.fileList.find((t=>t.uid===e.file.uid)).status="waiting");this.fileList.find((t=>t.uid===e.file.uid)).status="uploading";const t=new FormData;t.append("file",e.file),(0,P.A)({url:"/upload?authCode="+$().get("authCode"),method:"post",data:t,onUploadProgress:t=>{const l=Math.round(t.loaded/t.total*100);e.onProgress({percent:l,file:e.file})}}).then((t=>{e.onSuccess(t,e.file)})).catch((t=>{t.response&&401===t.response.status?(this.waitingList=[],this.fileList=[],this.$message.error("认证状态错误!"),this.$router.push("/login")):e.onError(t,e.file)})).finally((()=>{this.uploadingCount+this.waitingCount===0&&(this.uploading=!1)}))},handleRemove(e){this.fileList=this.fileList.filter((t=>t.uid!==e.uid)),this.$message({type:"info",message:e.name+"已删除"})},handleSuccess(e,t){try{const l=`${window.location.protocol}//${window.location.host}`;this.fileList.find((e=>e.uid===t.uid)).url=l+e.data[0].src,this.fileList.find((e=>e.uid===t.uid)).finalURL=l+e.data[0].src,this.fileList.find((e=>e.uid===t.uid)).mdURL=``,this.fileList.find((e=>e.uid===t.uid)).htmlURL=`<img src="${l+e.data[0].src}" alt="${t.name}" width=100% />`,this.fileList.find((e=>e.uid===t.uid)).ubbURL=`[img]${l+e.data[0].src}[/img]`,this.fileList.find((e=>e.uid===t.uid)).progreess=100,this.fileList.find((e=>e.uid===t.uid)).status="success",this.$message({type:"success",message:t.name+"上传成功"}),setTimeout((()=>{this.fileList.find((e=>e.uid===t.uid)).status="done"}),1e3)}catch(l){this.$message.error(t.name+"上传失败"),this.fileList.find((e=>e.uid===t.uid)).status="exception"}finally{if(this.uploadingCount+this.waitingCount===0&&(this.uploading=!1),this.waitingList.length){const e=this.waitingList.shift();this.uploadFile(e)}}},handleError(e,t){if(this.$message.error(t.name+"上传失败"),this.fileList.find((e=>e.uid===t.uid)).status="exception",this.waitingList.length){const e=this.waitingList.shift();this.uploadFile(e)}this.uploadingCount+this.waitingCount===0&&(this.uploading=!1)},handleCopy(e){const t=this.fileList.find((t=>t.uid===e.uid)).status;"done"===t||"success"===t?("url"===this.selectedUrlForm?navigator.clipboard.writeText(e.finalURL):"md"===this.selectedUrlForm?navigator.clipboard.writeText(e.mdURL):"html"===this.selectedUrlForm?navigator.clipboard.writeText(e.htmlURL):"ubb"===this.selectedUrlForm?navigator.clipboard.writeText(e.ubbURL):navigator.clipboard.writeText(e.finalURL),this.$message({type:"success",message:"复制成功"})):this.$message({type:"warning",message:"文件未上传成功,无法复制链接"})},beforeUpload(e){const t=e.size/1024/1024<5;if(t){this.uploading=!0;const t=URL.createObjectURL(e);return this.fileList.push({uid:e.uid,name:e.name,url:t,finalURL:"",mdURL:"",htmlURL:"",ubbURL:"",status:"uploading",progreess:0}),!0}return this.$message.error("上传文件大小不能超过 5MB!"),!1},handleProgress(e){this.fileList.find((t=>t.uid===e.file.uid)).progreess=e.percent},copyAll(){if("url"===this.selectedUrlForm){const e=this.fileList.map((e=>{if("done"===e.status||"success"===e.status)return e.finalURL})).join("\n");navigator.clipboard.writeText(e)}else if("md"===this.selectedUrlForm){const e=this.fileList.map((e=>{if("done"===e.status||"success"===e.status)return e.mdURL})).join("\n");navigator.clipboard.writeText(e)}else if("html"===this.selectedUrlForm){const e=this.fileList.map((e=>{if("done"===e.status||"success"===e.status)return e.htmlURL})).join("\n");navigator.clipboard.writeText(e)}else if("ubb"===this.selectedUrlForm){const e=this.fileList.map((e=>{if("done"===e.status||"success"===e.status)return e.ubbURL})).join("\n");navigator.clipboard.writeText(e)}else{const e=this.fileList.map((e=>{if("done"===e.status||"success"===e.status)return e.finalURL})).join("\n");navigator.clipboard.writeText(e)}this.$message({type:"success",message:"整体复制成功"})},clearFileList(){this.fileList=[],this.$message({type:"info",message:"列表已清空"})},handlePaste(e){if("paste"!==this.uploadMethod)return;const t=e.clipboardData.items;for(let l=0;l<t.length;l++)if("file"===t[l].kind){const e=t[l].getAsFile();e.type.includes("image")||e.type.includes("video")?(e.uid=Date.now()+l,e.file=e,this.beforeUpload(e)&&this.uploadFile({file:e,onProgress:e=>this.handleProgress(e),onSuccess:(e,t)=>this.handleSuccess(e,t),onError:(e,t)=>this.handleError(e,t)})):this.$message({type:"warning",message:"粘贴板中的文件不是图片或视频"})}else"string"===t[l].kind&&t[l].getAsString((e=>{const t=/^(https?:\/\/[^\s$.?#].[^\s]*)$/;t.test(e)&&fetch("/api/fetchRes",{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({url:e})}).then((e=>{const t=e.headers.get("content-type");if(200==e.status&&(t.includes("image")||t.includes("video")))return e.blob();throw new Error("URL地址的内容不是图片或视频")})).then((t=>{const s=e.split("/").pop(),a=new File([t],s,{type:t.type});a.uid=Date.now()+l,a.file=a,this.beforeUpload(a)&&this.uploadFile({file:a,onProgress:e=>this.handleProgress(e),onSuccess:(e,t)=>this.handleSuccess(e,t),onError:(e,t)=>this.handleError(e,t)})})).catch((e=>{this.$message({type:"warning",message:"粘贴板中的URL地址的内容不是图片或视频"})}))}))},selectAllText(e){e.target.select()}}},B=l(1241);const S=(0,B.A)(E,[["render",I],["__scopeId","data-v-3d98df6c"]]);var V=S;const T=e=>((0,s.Qi)("data-v-7c801e22"),e=e(),(0,s.jt)(),e),D={class:"page-footer"},A=T((()=>(0,s.Lk)("p",null,[(0,s.eW)("© 2024 Designed by "),(0,s.Lk)("a",{class:"footer-name",href:"https://github.com/MarSeventh",target:"_blank"},"SanyueQi"),(0,s.eW)(" for You!")],-1))),z=[A];function j(e,t){return(0,s.uX)(),(0,s.CE)("div",D,z)}const X={},q=(0,B.A)(X,[["render",j],["__scopeId","data-v-7c801e22"]]);var H=q,Q=l(144),K=l(782),O={name:"UploadHome",data(){return{selectedUrlForm:(0,Q.KR)("url"),uploadMethod:(0,Q.KR)("drag"),showUrlDialog:!1,bingWallPaperIndex:0,customWallPaperIndex:0}},computed:{...(0,K.L8)(["userConfig","bingWallPapers"])},mounted(){const e=document.getElementById("bg1"),t=document.getElementById("bg2");"bing"===this.userConfig?.uploadBkImg?(this.$store.dispatch("fetchBingWallPapers"),e.src=this.bingWallPapers[this.bingWallPaperIndex]?.url,e.onload=()=>{e.style.opacity=1},setInterval((()=>{let l=0!=e.style.opacity?e:t,s=0!=e.style.opacity?t:e;l.style.opacity=0,this.bingWallPaperIndex=(this.bingWallPaperIndex+1)%this.bingWallPapers.length,s.src=this.bingWallPapers[this.bingWallPaperIndex]?.url,s.onload=()=>{s.style.opacity=1}}),3e3)):this.userConfig?.uploadBkImg instanceof Array&&this.userConfig?.uploadBkImg?.length>1?(e.src=this.userConfig.uploadBkImg[this.customWallPaperIndex],e.onload=()=>{e.style.opacity=1},setInterval((()=>{let l=0!=e.style.opacity?e:t,s=0!=e.style.opacity?t:e;l.style.opacity=0,this.customWallPaperIndex=(this.customWallPaperIndex+1)%this.userConfig.uploadBkImg.length,s.src=this.userConfig.uploadBkImg[this.customWallPaperIndex],s.onload=()=>{s.style.opacity=1}}),3e3)):this.userConfig?.uploadBkImg instanceof Array&&1==this.userConfig?.uploadBkImg.length?(e.src=this.userConfig.uploadBkImg[0],e.onload=()=>{e.style.opacity=1}):(e.src="https://imgbed.sanyue.site/file/0dbd5add3605a0b2e8994.jpg",e.onload=()=>{e.style.opacity=1})},components:{UploadForm:V,Footer:H},methods:{handleManage(){window.location.href="/admin"},openUrlDialog(){this.showUrlDialog=!0},changeUploadMethod(){this.uploadMethod="drag"===this.uploadMethod?"paste":"drag"},handleLogout(){$().remove("authCode"),this.$router.push("/login"),this.$message.success("已退出登录~")}}};const G=(0,B.A)(O,[["render",p],["__scopeId","data-v-7ae3a220"]]);var J=G}}]);
|
||
//# sourceMappingURL=860.65de41aa.js.map
|