Files
filecodebox/fcb-fronted/dist/assets/SendView-7d099b74.js
T
2024-06-15 17:38:14 +08:00

2 lines
23 KiB
Python

import{U as te,C as Ke,c as He,d as q,u as We,e as Xe,f as Je,g as ve,t as ae,i as ye,b as ge,E as Ye}from"./el-input-c25ad51d.js";import{g as Qe,e as Ze,c as be,d as he,f as et,_ as tt}from"./config-7632f76a.js";import"./el-tag-f0c6e901.js";import{i as at,E as st,a as ot}from"./el-select-99f548d0.js";import"./el-popper-bd43c540.js";import{b as V,ad as _e,G as oe,l as le,ae as ne,s as P,k as ke,c as B,d as x,u as T,o as b,V as w,S as R,A as Se,af as Ee,f as e,J as $e,e as h,r as D,U as O,_ as N,n as we,Z as A,X as U,g as Re,P as xe,p as De,t as lt,x as nt,O as Y,i as Ce,ag as Ue,j as $,m as Q,ah as C,ai as rt,a as F,w as S,a8 as it,a9 as ut,Y as Fe,W as E,B as _,L as I,aj as dt,ak as pt,al as ct,am as ft,an as mt,ao as vt,ap as yt,aq as gt,ar as Z,q as re,as as bt,at as ht,au as _t,Q as kt,av as St,aw as ie,ax as ue,a7 as se,ay as Et,az as $t,aA as M,ac as Le}from"./index-bfb46708.js";import{b as wt}from"./_baseClone-a013b03b.js";import"./_commonjsHelpers-de833af9.js";import"./vnode-dc2a6bf4.js";var Rt=1,xt=4;function de(l){return wt(l,Rt|xt)}const Be=V({size:_e,disabled:Boolean,label:{type:[String,Number,Boolean],default:""}}),Dt=V({...Be,modelValue:{type:[String,Number,Boolean],default:""},name:{type:String,default:""},border:Boolean}),Pe={[te]:l=>oe(l)||le(l)||ne(l),[Ke]:l=>oe(l)||le(l)||ne(l)},Ve=Symbol("radioGroupKey"),Te=(l,r)=>{const t=P(),a=ke(Ve,void 0),p=B(()=>!!a),u=B({get(){return p.value?a.modelValue:l.modelValue},set(y){p.value?a.changeEvent(y):r&&r(te,y),t.value.checked=l.modelValue===l.label}}),c=He(B(()=>a==null?void 0:a.size)),g=q(B(()=>a==null?void 0:a.disabled)),m=P(!1),d=B(()=>g.value||p.value&&u.value!==l.label?-1:0);return{radioRef:t,isGroup:p,radioGroup:a,focus:m,size:c,disabled:g,tabIndex:d,modelValue:u}},Ct=["value","name","disabled"],Ut=x({name:"ElRadio"}),Ft=x({...Ut,props:Dt,emits:Pe,setup(l,{emit:r}){const t=l,a=T("radio"),{radioRef:p,radioGroup:u,focus:c,size:g,disabled:m,modelValue:d}=Te(t,r);function y(){we(()=>r("change",d.value))}return(n,s)=>{var i;return b(),w("label",{class:h([e(a).b(),e(a).is("disabled",e(m)),e(a).is("focus",e(c)),e(a).is("bordered",n.border),e(a).is("checked",e(d)===n.label),e(a).m(e(g))])},[R("span",{class:h([e(a).e("input"),e(a).is("disabled",e(m)),e(a).is("checked",e(d)===n.label)])},[Se(R("input",{ref_key:"radioRef",ref:p,"onUpdate:modelValue":s[0]||(s[0]=o=>$e(d)?d.value=o:null),class:h(e(a).e("original")),value:n.label,name:n.name||((i=e(u))==null?void 0:i.name),disabled:e(m),type:"radio",onFocus:s[1]||(s[1]=o=>c.value=!0),onBlur:s[2]||(s[2]=o=>c.value=!1),onChange:y},null,42,Ct),[[Ee,e(d)]]),R("span",{class:h(e(a).e("inner"))},null,2)],2),R("span",{class:h(e(a).e("label")),onKeydown:s[3]||(s[3]=O(()=>{},["stop"]))},[D(n.$slots,"default",{},()=>[A(U(n.label),1)])],34)],2)}}});var Lt=N(Ft,[["__file","/home/runner/work/element-plus/element-plus/packages/components/radio/src/radio.vue"]]);const Bt=V({...Be,name:{type:String,default:""}}),Pt=["value","name","disabled"],Vt=x({name:"ElRadioButton"}),Tt=x({...Vt,props:Bt,setup(l){const r=l,t=T("radio"),{radioRef:a,focus:p,size:u,disabled:c,modelValue:g,radioGroup:m}=Te(r),d=B(()=>({backgroundColor:(m==null?void 0:m.fill)||"",borderColor:(m==null?void 0:m.fill)||"",boxShadow:m!=null&&m.fill?`-1px 0 0 0 ${m.fill}`:"",color:(m==null?void 0:m.textColor)||""}));return(y,n)=>{var s;return b(),w("label",{class:h([e(t).b("button"),e(t).is("active",e(g)===y.label),e(t).is("disabled",e(c)),e(t).is("focus",e(p)),e(t).bm("button",e(u))])},[Se(R("input",{ref_key:"radioRef",ref:a,"onUpdate:modelValue":n[0]||(n[0]=i=>$e(g)?g.value=i:null),class:h(e(t).be("button","original-radio")),value:y.label,type:"radio",name:y.name||((s=e(m))==null?void 0:s.name),disabled:e(c),onFocus:n[1]||(n[1]=i=>p.value=!0),onBlur:n[2]||(n[2]=i=>p.value=!1)},null,42,Pt),[[Ee,e(g)]]),R("span",{class:h(e(t).be("button","inner")),style:Re(e(g)===y.label?e(d):{}),onKeydown:n[3]||(n[3]=O(()=>{},["stop"]))},[D(y.$slots,"default",{},()=>[A(U(y.label),1)])],38)],2)}}});var Oe=N(Tt,[["__file","/home/runner/work/element-plus/element-plus/packages/components/radio/src/radio-button.vue"]]);const Ot=V({id:{type:String,default:void 0},size:_e,disabled:Boolean,modelValue:{type:[String,Number,Boolean],default:""},fill:{type:String,default:""},label:{type:String,default:void 0},textColor:{type:String,default:""},name:{type:String,default:void 0},validateEvent:{type:Boolean,default:!0}}),zt=Pe,It=["id","aria-label","aria-labelledby"],Nt=x({name:"ElRadioGroup"}),At=x({...Nt,props:Ot,emits:zt,setup(l,{emit:r}){const t=l,a=T("radio"),p=We(),u=P(),{formItem:c}=Xe(),{inputId:g,isLabeledByFormItem:m}=Je(t,{formItemContext:c}),d=n=>{r(te,n),we(()=>r("change",n))};xe(()=>{const n=u.value.querySelectorAll("[type=radio]"),s=n[0];!Array.from(n).some(i=>i.checked)&&s&&(s.tabIndex=0)});const y=B(()=>t.name||p.value);return De(Ve,lt({...nt(t),changeEvent:d,name:y})),Y(()=>t.modelValue,()=>{t.validateEvent&&(c==null||c.validate("change").catch(n=>ve()))}),(n,s)=>(b(),w("div",{id:e(g),ref_key:"radioGroupRef",ref:u,class:h(e(a).b("group")),role:"radiogroup","aria-label":e(m)?void 0:n.label||"radio-group","aria-labelledby":e(m)?e(c).labelId:void 0},[D(n.$slots,"default")],10,It))}});var ze=N(At,[["__file","/home/runner/work/element-plus/element-plus/packages/components/radio/src/radio-group.vue"]]);const jt=Ce(Lt,{RadioButton:Oe,RadioGroup:ze}),Gt=Ue(ze);Ue(Oe);const Ie=Symbol("uploadContextKey"),qt="ElUpload";class Mt extends Error{constructor(r,t,a,p){super(r),this.name="UploadAjaxError",this.status=t,this.method=a,this.url=p}}function pe(l,r,t){let a;return t.response?a=`${t.response.error||t.response}`:t.responseText?a=`${t.responseText}`:a=`fail to ${r.method} ${l} ${t.status}`,new Mt(a,t.status,r.method,l)}function Kt(l){const r=l.responseText||l.response;if(!r)return r;try{return JSON.parse(r)}catch{return r}}const Ht=l=>{typeof XMLHttpRequest>"u"&&ae(qt,"XMLHttpRequest is undefined");const r=new XMLHttpRequest,t=l.action;r.upload&&r.upload.addEventListener("progress",u=>{const c=u;c.percent=u.total>0?u.loaded/u.total*100:0,l.onProgress(c)});const a=new FormData;if(l.data)for(const[u,c]of Object.entries(l.data))Array.isArray(c)?a.append(u,...c):a.append(u,c);a.append(l.filename,l.file,l.file.name),r.addEventListener("error",()=>{l.onError(pe(t,l,r))}),r.addEventListener("load",()=>{if(r.status<200||r.status>=300)return l.onError(pe(t,l,r));l.onSuccess(Kt(r))}),r.open(l.method,t,!0),l.withCredentials&&"withCredentials"in r&&(r.withCredentials=!0);const p=l.headers||{};if(p instanceof Headers)p.forEach((u,c)=>r.setRequestHeader(c,u));else for(const[u,c]of Object.entries(p))ye(c)||r.setRequestHeader(u,String(c));return r.send(a),r},Ne=["text","picture","picture-card"];let Wt=1;const ee=()=>Date.now()+Wt++,Ae=V({action:{type:String,default:"#"},headers:{type:$(Object)},method:{type:String,default:"post"},data:{type:Object,default:()=>Q({})},multiple:{type:Boolean,default:!1},name:{type:String,default:"file"},drag:{type:Boolean,default:!1},withCredentials:Boolean,showFileList:{type:Boolean,default:!0},accept:{type:String,default:""},type:{type:String,default:"select"},fileList:{type:$(Array),default:()=>Q([])},autoUpload:{type:Boolean,default:!0},listType:{type:String,values:Ne,default:"text"},httpRequest:{type:$(Function),default:Ht},disabled:Boolean,limit:Number}),Xt=V({...Ae,beforeUpload:{type:$(Function),default:C},beforeRemove:{type:$(Function)},onRemove:{type:$(Function),default:C},onChange:{type:$(Function),default:C},onPreview:{type:$(Function),default:C},onSuccess:{type:$(Function),default:C},onProgress:{type:$(Function),default:C},onError:{type:$(Function),default:C},onExceed:{type:$(Function),default:C}}),Jt=V({files:{type:$(Array),default:()=>Q([])},disabled:{type:Boolean,default:!1},handlePreview:{type:$(Function),default:C},listType:{type:String,values:Ne,default:"text"}}),Yt={remove:l=>!!l},Qt=["onKeydown"],Zt=["src"],ea=["onClick"],ta=["title"],aa=["onClick"],sa=["onClick"],oa=x({name:"ElUploadList"}),la=x({...oa,props:Jt,emits:Yt,setup(l,{emit:r}){const{t}=rt(),a=T("upload"),p=T("icon"),u=T("list"),c=q(),g=P(!1),m=d=>{r("remove",d)};return(d,y)=>(b(),F(yt,{tag:"ul",class:h([e(a).b("list"),e(a).bm("list",d.listType),e(a).is("disabled",e(c))]),name:e(u).b()},{default:S(()=>[(b(!0),w(it,null,ut(d.files,n=>(b(),w("li",{key:n.uid||n.name,class:h([e(a).be("list","item"),e(a).is(n.status),{focusing:g.value}]),tabindex:"0",onKeydown:Fe(s=>!e(c)&&m(n),["delete"]),onFocus:y[0]||(y[0]=s=>g.value=!0),onBlur:y[1]||(y[1]=s=>g.value=!1),onClick:y[2]||(y[2]=s=>g.value=!1)},[D(d.$slots,"default",{file:n},()=>[d.listType==="picture"||n.status!=="uploading"&&d.listType==="picture-card"?(b(),w("img",{key:0,class:h(e(a).be("list","item-thumbnail")),src:n.url,alt:""},null,10,Zt)):E("v-if",!0),n.status==="uploading"||d.listType!=="picture-card"?(b(),w("div",{key:1,class:h(e(a).be("list","item-info"))},[R("a",{class:h(e(a).be("list","item-name")),onClick:O(s=>d.handlePreview(n),["prevent"])},[_(e(I),{class:h(e(p).m("document"))},{default:S(()=>[_(e(dt))]),_:1},8,["class"]),R("span",{class:h(e(a).be("list","item-file-name")),title:n.name},U(n.name),11,ta)],10,ea),n.status==="uploading"?(b(),F(e(Qe),{key:0,type:d.listType==="picture-card"?"circle":"line","stroke-width":d.listType==="picture-card"?6:2,percentage:Number(n.percentage),style:Re(d.listType==="picture-card"?"":"margin-top: 0.5rem")},null,8,["type","stroke-width","percentage","style"])):E("v-if",!0)],2)):E("v-if",!0),R("label",{class:h(e(a).be("list","item-status-label"))},[d.listType==="text"?(b(),F(e(I),{key:0,class:h([e(p).m("upload-success"),e(p).m("circle-check")])},{default:S(()=>[_(e(pt))]),_:1},8,["class"])):["picture-card","picture"].includes(d.listType)?(b(),F(e(I),{key:1,class:h([e(p).m("upload-success"),e(p).m("check")])},{default:S(()=>[_(e(ct))]),_:1},8,["class"])):E("v-if",!0)],2),e(c)?E("v-if",!0):(b(),F(e(I),{key:2,class:h(e(p).m("close")),onClick:s=>m(n)},{default:S(()=>[_(e(ft))]),_:2},1032,["class","onClick"])),E(" Due to close btn only appears when li gets focused disappears after li gets blurred, thus keyboard navigation can never reach close btn"),E(" This is a bug which needs to be fixed "),E(" TODO: Fix the incorrect navigation interaction "),e(c)?E("v-if",!0):(b(),w("i",{key:3,class:h(e(p).m("close-tip"))},U(e(t)("el.upload.deleteTip")),3)),d.listType==="picture-card"?(b(),w("span",{key:4,class:h(e(a).be("list","item-actions"))},[R("span",{class:h(e(a).be("list","item-preview")),onClick:s=>d.handlePreview(n)},[_(e(I),{class:h(e(p).m("zoom-in"))},{default:S(()=>[_(e(mt))]),_:1},8,["class"])],10,aa),e(c)?E("v-if",!0):(b(),w("span",{key:0,class:h(e(a).be("list","item-delete")),onClick:s=>m(n)},[_(e(I),{class:h(e(p).m("delete"))},{default:S(()=>[_(e(vt))]),_:1},8,["class"])],10,sa))],2)):E("v-if",!0)])],42,Qt))),128)),D(d.$slots,"append")]),_:3},8,["class","name"]))}});var ce=N(la,[["__file","/home/runner/work/element-plus/element-plus/packages/components/upload/src/upload-list.vue"]]);const na=V({disabled:{type:Boolean,default:!1}}),ra={file:l=>gt(l)},ia=["onDrop","onDragover"],je="ElUploadDrag",ua=x({name:je}),da=x({...ua,props:na,emits:ra,setup(l,{emit:r}){const t=ke(Ie);t||ae(je,"usage: <el-upload><el-upload-dragger /></el-upload>");const a=T("upload"),p=P(!1),u=q(),c=m=>{if(u.value)return;p.value=!1,m.stopPropagation();const d=Array.from(m.dataTransfer.files),y=t.accept.value;if(!y){r("file",d);return}const n=d.filter(s=>{const{type:i,name:o}=s,f=o.includes(".")?`.${o.split(".").pop()}`:"",k=i.replace(/\/.*$/,"");return y.split(",").map(v=>v.trim()).filter(v=>v).some(v=>v.startsWith(".")?f===v:/\/\*$/.test(v)?k===v.replace(/\/\*$/,""):/^[^/]+\/[^/]+$/.test(v)?i===v:!1)});r("file",n)},g=()=>{u.value||(p.value=!0)};return(m,d)=>(b(),w("div",{class:h([e(a).b("dragger"),e(a).is("dragover",p.value)]),onDrop:O(c,["prevent"]),onDragover:O(g,["prevent"]),onDragleave:d[0]||(d[0]=O(y=>p.value=!1,["prevent"]))},[D(m.$slots,"default")],42,ia))}});var pa=N(da,[["__file","/home/runner/work/element-plus/element-plus/packages/components/upload/src/upload-dragger.vue"]]);const ca=V({...Ae,beforeUpload:{type:$(Function),default:C},onRemove:{type:$(Function),default:C},onStart:{type:$(Function),default:C},onSuccess:{type:$(Function),default:C},onProgress:{type:$(Function),default:C},onError:{type:$(Function),default:C},onExceed:{type:$(Function),default:C}}),fa=["onKeydown"],ma=["name","multiple","accept"],va=x({name:"ElUploadContent",inheritAttrs:!1}),ya=x({...va,props:ca,setup(l,{expose:r}){const t=l,a=T("upload"),p=q(),u=Z({}),c=Z(),g=o=>{if(o.length===0)return;const{autoUpload:f,limit:k,fileList:v,multiple:z,onStart:L,onExceed:K}=t;if(k&&v.length+o.length>k){K(o,v);return}z||(o=o.slice(0,1));for(const H of o){const j=H;j.uid=ee(),L(j),f&&m(j)}},m=async o=>{if(c.value.value="",!t.beforeUpload)return d(o);let f,k={};try{const z=t.data,L=t.beforeUpload(o);k=re(t.data)?de(t.data):t.data,f=await L,re(t.data)&&at(z,k)&&(k=de(t.data))}catch{f=!1}if(f===!1){t.onRemove(o);return}let v=o;f instanceof Blob&&(f instanceof File?v=f:v=new File([f],o.name,{type:o.type})),d(Object.assign(v,{uid:o.uid}),k)},d=(o,f)=>{const{headers:k,data:v,method:z,withCredentials:L,name:K,action:H,onProgress:j,onSuccess:Ge,onError:qe,httpRequest:Me}=t,{uid:W}=o,X={headers:k||{},withCredentials:L,file:o,data:f??v,method:z,filename:K,action:H,onProgress:G=>{j(G,o)},onSuccess:G=>{Ge(G,o),delete u.value[W]},onError:G=>{qe(G,o),delete u.value[W]}},J=Me(X);u.value[W]=J,J instanceof Promise&&J.then(X.onSuccess,X.onError)},y=o=>{const f=o.target.files;f&&g(Array.from(f))},n=()=>{p.value||(c.value.value="",c.value.click())},s=()=>{n()};return r({abort:o=>{bt(u.value).filter(o?([k])=>String(o.uid)===k:()=>!0).forEach(([k,v])=>{v instanceof XMLHttpRequest&&v.abort(),delete u.value[k]})},upload:m}),(o,f)=>(b(),w("div",{class:h([e(a).b(),e(a).m(o.listType),e(a).is("drag",o.drag)]),tabindex:"0",onClick:n,onKeydown:Fe(O(s,["self"]),["enter","space"])},[o.drag?(b(),F(pa,{key:0,disabled:e(p),onFile:g},{default:S(()=>[D(o.$slots,"default")]),_:3},8,["disabled"])):D(o.$slots,"default",{key:1}),R("input",{ref_key:"inputRef",ref:c,class:h(e(a).e("input")),name:o.name,multiple:o.multiple,accept:o.accept,type:"file",onChange:y,onClick:f[0]||(f[0]=O(()=>{},["stop"]))},null,42,ma)],42,fa))}});var fe=N(ya,[["__file","/home/runner/work/element-plus/element-plus/packages/components/upload/src/upload-content.vue"]]);const me="ElUpload",ga=l=>{var r;(r=l.url)!=null&&r.startsWith("blob:")&&URL.revokeObjectURL(l.url)},ba=(l,r)=>{const t=ht(l,"fileList",void 0,{passive:!0}),a=s=>t.value.find(i=>i.uid===s.uid);function p(s){var i;(i=r.value)==null||i.abort(s)}function u(s=["ready","uploading","success","fail"]){t.value=t.value.filter(i=>!s.includes(i.status))}const c=(s,i)=>{const o=a(i);o&&(console.error(s),o.status="fail",t.value.splice(t.value.indexOf(o),1),l.onError(s,o,t.value),l.onChange(o,t.value))},g=(s,i)=>{const o=a(i);o&&(l.onProgress(s,o,t.value),o.status="uploading",o.percentage=Math.round(s.percent))},m=(s,i)=>{const o=a(i);o&&(o.status="success",o.response=s,l.onSuccess(s,o,t.value),l.onChange(o,t.value))},d=s=>{ye(s.uid)&&(s.uid=ee());const i={name:s.name,percentage:0,status:"ready",size:s.size,raw:s,uid:s.uid};if(l.listType==="picture-card"||l.listType==="picture")try{i.url=URL.createObjectURL(s)}catch(o){ve(me,o.message),l.onError(o,i,t.value)}t.value=[...t.value,i],l.onChange(i,t.value)},y=async s=>{const i=s instanceof File?a(s):s;i||ae(me,"file to be removed not found");const o=f=>{p(f);const k=t.value;k.splice(k.indexOf(f),1),l.onRemove(f,k),ga(f)};l.beforeRemove?await l.beforeRemove(i,t.value)!==!1&&o(i):o(i)};function n(){t.value.filter(({status:s})=>s==="ready").forEach(({raw:s})=>{var i;return s&&((i=r.value)==null?void 0:i.upload(s))})}return Y(()=>l.listType,s=>{s!=="picture-card"&&s!=="picture"||(t.value=t.value.map(i=>{const{raw:o,url:f}=i;if(!f&&o)try{i.url=URL.createObjectURL(o)}catch(k){l.onError(k,i,t.value)}return i}))}),Y(t,s=>{for(const i of s)i.uid||(i.uid=ee()),i.status||(i.status="success")},{immediate:!0,deep:!0}),{uploadFiles:t,abort:p,clearFiles:u,handleError:c,handleProgress:g,handleStart:d,handleSuccess:m,handleRemove:y,submit:n}},ha=x({name:"ElUpload"}),_a=x({...ha,props:Xt,setup(l,{expose:r}){const t=l,a=_t(),p=q(),u=Z(),{abort:c,submit:g,clearFiles:m,uploadFiles:d,handleStart:y,handleError:n,handleRemove:s,handleSuccess:i,handleProgress:o}=ba(t,u),f=B(()=>t.listType==="picture-card"),k=B(()=>({...t,fileList:d.value,onStart:y,onProgress:o,onSuccess:i,onError:n,onRemove:s}));return kt(()=>{d.value.forEach(({url:v})=>{v!=null&&v.startsWith("blob:")&&URL.revokeObjectURL(v)})}),De(Ie,{accept:St(t,"accept")}),r({abort:c,submit:g,clearFiles:m,handleStart:y,handleRemove:s}),(v,z)=>(b(),w("div",null,[e(f)&&v.showFileList?(b(),F(ce,{key:0,disabled:e(p),"list-type":v.listType,files:e(d),"handle-preview":v.onPreview,onRemove:e(s)},ie({append:S(()=>[_(fe,ue({ref_key:"uploadRef",ref:u},e(k)),{default:S(()=>[e(a).trigger?D(v.$slots,"trigger",{key:0}):E("v-if",!0),!e(a).trigger&&e(a).default?D(v.$slots,"default",{key:1}):E("v-if",!0)]),_:3},16)]),_:2},[v.$slots.file?{name:"default",fn:S(({file:L})=>[D(v.$slots,"file",{file:L})])}:void 0]),1032,["disabled","list-type","files","handle-preview","onRemove"])):E("v-if",!0),!e(f)||e(f)&&!v.showFileList?(b(),F(fe,ue({key:1,ref_key:"uploadRef",ref:u},e(k)),{default:S(()=>[e(a).trigger?D(v.$slots,"trigger",{key:0}):E("v-if",!0),!e(a).trigger&&e(a).default?D(v.$slots,"default",{key:1}):E("v-if",!0)]),_:3},16)):E("v-if",!0),v.$slots.trigger?D(v.$slots,"default",{key:2}):E("v-if",!0),D(v.$slots,"tip"),!e(f)&&v.showFileList?(b(),F(ce,{key:3,disabled:e(p),"list-type":v.listType,files:e(d),"handle-preview":v.onPreview,onRemove:e(s)},ie({_:2},[v.$slots.file?{name:"default",fn:S(({file:L})=>[D(v.$slots,"file",{file:L})])}:void 0]),1032,["disabled","list-type","files","handle-preview","onRemove"])):E("v-if",!0)]))}});var ka=N(_a,[["__file","/home/runner/work/element-plus/element-plus/packages/components/upload/src/upload.vue"]]);const Sa=Ce(ka);const Ea={class:"el-upload__text"},$a={class:"el-upload__text",style:{"font-size":"10px"}},wa=R("div",{class:"el-upload__tip"},null,-1),Ra=x({__name:"UploadFile",props:{shareData:{type:Object,default:()=>({expire_value:1,expire_style:"day"})}},setup(l){const r=l,{config:t}=Ze(),{t:a}=se(),p=be(),u=he(),c=P([]),g=P(null),m=n=>{u.addShareData({name:n.name,text:"",status:n.status,percentage:0,size:n.size,type:n.raw.type,uid:n.uid})},d=n=>{p.showFileBox=!0;const s=new FormData;if(n.file.size>t.uploadSize){u.shareData.forEach(i=>{i.uid===n.file.uid&&(M.error(a("msg.fileOverSize")),i.status="fail",i.code=a("msg.fileOverSize"),u.save())});return}s.append("file",n.file),s.append("expire_value",r.shareData.expireValue),s.append("expire_style",r.shareData.expireStyle),Le({url:"share/file/",method:"post",data:s,onUploadProgress:i=>{const o=Math.round(i.loaded*100/i.total)||0;u.shareData.forEach(f=>{f.uid===n.file.uid&&(f.percentage=o,u.save())})}}).then(i=>{const o=i.detail;u.shareData.forEach(f=>{f.uid===n.file.uid&&(f.status="success",f.text=o.text,f.code=o.code,M.success(a("msg.fileUploadSuccess")),u.save())})}).catch(()=>{u.shareData.forEach(i=>{i.uid===n.file.uid&&(i.status="fail",i.code=a("msg.fileUploadFail"),M.error(a("msg.fileUploadFail")),u.save())})})};function y(n){const s=n.clipboardData&&n.clipboardData.items;if(s&&s.length)for(let i=0;i<s.length;i++)if(s[i].kind==="string")s[i].type.match(/^text\/plain/)&&s[i].getAsString(function(o){console.log(o)});else{const o=s[i].getAsFile();if(o){const f=Date.now();o.uid=f,u.addShareData({name:o.name,text:"",status:"ready",percentage:0,size:o.size,type:o.type,uid:f}),d({file:o})}}}return Et(()=>{document.removeEventListener("paste",y)}),xe(()=>{document.addEventListener("paste",y)}),(n,s)=>{const i=I,o=Sa;return b(),w("div",null,[_(o,{class:"upload-demo",drag:"",multiple:"","show-file-list":!1,ref_key:"uploadBox",ref:g,"file-list":c.value,"onUpdate:fileList":s[0]||(s[0]=f=>c.value=f),"on-change":m,"http-request":d},{tip:S(()=>[wa]),default:S(()=>[_(i,{class:"el-icon--upload"},{default:S(()=>[_(e($t))]),_:1}),R("div",Ea,[A(U(e(a)("send.prompt1")),1),R("em",null,U(e(a)("send.clickUpload")),1)]),R("div",$a,U(e(a)("send.prompt2")),1)]),_:1},8,["file-list"])])}}});const xa={style:{position:"relative"}},Da=x({__name:"UploadText",props:{shareData:{type:Object,default:()=>({expire_value:1,expire_style:"day"})}},setup(l){const r=l,t=P(""),{t:a}=se(),p=be(),u=he(),c=()=>{if(t.value==="")M.warning(a("send.prompt3"));else{const g=new FormData;g.append("text",t.value),g.append("expire_value",r.shareData.expireValue),g.append("expire_style",r.shareData.expireStyle),Le({url:"share/text/",method:"post",data:g}).then(m=>{const d=m.detail;p.showFileBox=!0,u.addShareData({name:a("send.textShare"),text:d.text,code:d.code,status:"success",percentage:100,size:t.value.length,type:"text",uid:Date.now()})})}};return(g,m)=>{const d=ge,y=Ye;return b(),w("div",xa,[_(d,{placeholder:e(a)("send.prompt3"),modelValue:t.value,"onUpdate:modelValue":m[0]||(m[0]=n=>t.value=n),type:"textarea",rows:9,"input-style":{"border-radius":"20px",border:"1px dashed var(--el-border-color)","box-shadow":"none"}},null,8,["placeholder","modelValue","input-style"]),_(y,{onClick:c,style:{position:"absolute",right:"0",top:"0","border-radius":"0 20px 0 20px",margin:"1px",background:"rgba(255,255,255,0.2)"},size:"large"},{default:S(()=>[A(U(e(a)("send.share")),1)]),_:1})])}}}),Ca={style:{display:"flex",margin:"1rem"}},Ua={key:0},Fa={key:1},La={key:2},Ba={key:3},Pa={key:4},Va={style:{margin:"1rem"}},Ma=x({__name:"SendView",setup(l){const{t:r}=se(),t=P({expireValue:1,expireStyle:"day",targetType:"file"});return(a,p)=>{const u=st,c=ot,g=ge,m=jt,d=Gt,y=et;return b(),w("main",null,[_(y,{class:"card",style:{position:"relative"},"body-style":{padding:"0"}},{default:S(()=>[_(tt,{style:{padding:"1rem"}}),R("div",Ca,[R("div",null,[_(g,{modelValue:t.value.expireValue,"onUpdate:modelValue":p[1]||(p[1]=n=>t.value.expireValue=n),style:{width:"200px"},placeholder:e(r)("send.pleaseInputExpireValue")},{prepend:S(()=>[_(c,{modelValue:t.value.expireStyle,"onUpdate:modelValue":p[0]||(p[0]=n=>t.value.expireStyle=n),placeholder:e(r)("send.expireStyle"),style:{width:"75px"}},{default:S(()=>[_(u,{label:e(r)("send.expireData.day"),value:"day"},null,8,["label"]),_(u,{label:e(r)("send.expireData.hour"),value:"hour"},null,8,["label"]),_(u,{label:e(r)("send.expireData.minute"),value:"minute"},null,8,["label"]),_(u,{label:e(r)("send.expireData.forever"),value:"forever"},null,8,["label"]),_(u,{label:e(r)("send.expireData.count"),value:"count"},null,8,["label"])]),_:1},8,["modelValue","placeholder"])]),append:S(()=>[t.value.expireStyle=="day"?(b(),w("span",Ua,U(e(r)("send.expireValue.day")),1)):t.value.expireStyle=="hour"?(b(),w("span",Fa,U(e(r)("send.expireValue.hour")),1)):t.value.expireStyle=="minute"?(b(),w("span",La,U(e(r)("send.expireValue.minute")),1)):t.value.expireStyle=="forever"?(b(),w("span",Ba,"👌")):t.value.expireStyle=="count"?(b(),w("span",Pa,U(e(r)("send.expireValue.count")),1)):E("",!0)]),_:1},8,["modelValue","placeholder"])]),_(d,{modelValue:t.value.targetType,"onUpdate:modelValue":p[2]||(p[2]=n=>t.value.targetType=n),style:{"margin-left":"1rem"}},{default:S(()=>[_(m,{label:"file"},{default:S(()=>[A(U(e(r)("send.fileType.file")),1)]),_:1}),_(m,{label:"text"},{default:S(()=>[A(U(e(r)("send.fileType.text")),1)]),_:1})]),_:1},8,["modelValue"])]),R("div",Va,[t.value.targetType=="file"?(b(),F(Ra,{key:0,shareData:t.value},null,8,["shareData"])):t.value.targetType=="text"?(b(),F(Da,{key:1,shareData:t.value},null,8,["shareData"])):E("",!0)])]),_:1})])}}});export{Ma as default};