vue-devui
Version:
DevUI components based on Vite and Vue3
9 lines (8 loc) • 25.1 kB
JavaScript
var at=Object.defineProperty,it=Object.defineProperties;var rt=Object.getOwnPropertyDescriptors;var ae=Object.getOwnPropertySymbols;var ut=Object.prototype.hasOwnProperty,ct=Object.prototype.propertyIsEnumerable;var Z=(y,t,b)=>t in y?at(y,t,{enumerable:!0,configurable:!0,writable:!0,value:b}):y[t]=b,W=(y,t)=>{for(var b in t||(t={}))ut.call(t,b)&&Z(y,b,t[b]);if(ae)for(var b of ae(t))ct.call(t,b)&&Z(y,b,t[b]);return y},ie=(y,t)=>it(y,rt(t));var D=(y,t,b)=>(Z(y,typeof t!="symbol"?t+"":t,b),b);(function(y,t){typeof exports=="object"&&typeof module!="undefined"?t(exports,require("vue")):typeof define=="function"&&define.amd?define(["exports","vue"],t):(y=typeof globalThis!="undefined"?globalThis:y||self,t(y.index={},y.Vue))})(this,function(y,t){"use strict";const b={modelValue:{type:Boolean,default:!1},title:{type:String,default:""},type:{type:String,default:"normal"},duration:{type:Number,default:3e3},onClose:{type:Function}},re={name:{type:String,default:"",required:!0},size:{type:[Number,String],default:"inherit"},color:{type:String,default:"inherit"},component:{type:Object,default:null},classPrefix:{type:String,default:"icon"},operable:{type:Boolean,default:!1},disabled:{type:Boolean,default:!1},rotate:{type:[Number,String]}},ue={name:{type:String,default:"",required:!0},color:{type:String,default:"inherit"},size:{type:[Number,String],default:"inherit"}};function L(e,n,o){let l=e;return n&&(l+=`__${n}`),o&&(l+=`--${o}`),l}function x(e,n=!1){const o=n?`.devui-${e}`:`devui-${e}`;return{b:()=>L(o),e:a=>a?L(o,a):"",m:a=>a?L(o,"",a):"",em:(a,p)=>a&&p?L(o,a,p):""}}var pt="",ce=t.defineComponent({name:"DSvgIcon",props:ue,setup(e){const{name:n,color:o,size:l}=t.toRefs(e),s=x("svg-icon"),r=t.computed(()=>`#icon-${n.value}`),f=t.computed(()=>typeof l.value=="number"?`${l.value}px`:l.value),a={width:f.value,height:f.value};return()=>t.createVNode("svg",{class:s.b(),style:a},[t.createVNode("use",{"xlink:href":r.value,fill:o.value},null)])}});function de(e){return/^((http|https):)?\/\//.test(e)}function pe(e,n){const{component:o,name:l,size:s,color:r,classPrefix:f,rotate:a}=t.toRefs(e),p=x("icon"),V=t.computed(()=>typeof s.value=="number"?`${s.value}px`:s.value),m=o.value?t.resolveDynamicComponent(o.value):t.resolveDynamicComponent(ce),u=()=>t.createVNode("img",t.mergeProps({src:l.value,alt:l.value.split("/")[l.value.split("/").length-1],class:[(a==null?void 0:a.value)==="infinite"&&p.m("spin")],style:{width:V.value||"",transform:`rotate(${a==null?void 0:a.value}deg)`,verticalAlign:"middle"}},n.attrs),null),v=()=>t.createVNode(m,t.mergeProps({name:l.value,color:r.value,size:V.value,class:[(a==null?void 0:a.value)==="infinite"&&p.m("spin")],style:{transform:`rotate(${a==null?void 0:a.value}deg)`}},n.attrs),null),i=()=>{const c=/^icon-/.test(l.value)?l.value:`${f.value}-${l.value}`;return t.createVNode("i",t.mergeProps({class:[f.value,c,(a==null?void 0:a.value)==="infinite"&&p.m("spin")],style:{fontSize:V.value,color:r.value,transform:`rotate(${a==null?void 0:a.value}deg)`}},n.attrs),null)};return{iconDom:()=>o.value?v():de(l.value)?u():i()}}var fe=t.defineComponent({name:"DIcon",props:re,emits:["click"],setup(e,n){const{disabled:o,operable:l}=t.toRefs(e),{iconDom:s}=pe(e,n),r=x("icon"),f=t.computed(()=>({[r.e("container")]:!0,[r.m("disabled")]:o.value,[r.m("operable")]:l.value,[r.m("no-slots")]:!Object.keys(n.slots).length})),a=p=>{o.value||n.emit("click",p)};return()=>{var p,V,m,u;return t.createVNode("div",{class:f.value,onClick:a},[(V=(p=n.slots).prefix)==null?void 0:V.call(p),s(),(u=(m=n.slots).suffix)==null?void 0:u.call(m)])}}}),ft="";t.defineComponent({name:"DIconGroup",setup(e,n){const o=x("icon-group");return()=>{var l,s;return t.createVNode("div",{class:o.b()},[(s=(l=n.slots).default)==null?void 0:s.call(l)])}}});var me=t.defineComponent({emits:["click"],setup(e,{emit:n}){const o=x("notification");return()=>t.createVNode("div",{class:o.e("icon-close"),onClick:l=>n("click",l)},[t.createVNode(fe,{name:"close",size:"14px"},null)])}});const T=x("notification"),M={"xmlns:xlink":"http://www.w3.org/1999/xlink"},I={"xlink:href":"#path-s"};function he(){return t.createVNode("svg",t.mergeProps({width:"16px",height:"16px",viewBox:"0 0 16 16",version:"1.1",xmlns:"http://www.w3.org/2000/svg"},M),[t.createVNode("defs",null,[t.createVNode("polygon",{id:"path-s",points:"6.53553391 9.77817459 12.1923882 4.12132034 13.6066017 5.53553391 6.53553391 12.6066017 3 9.07106781 4.41421356 7.65685425 6.53553391 9.77817459"},null)]),t.createVNode("g",{id:"correct",stroke:"none","stroke-width":"1",fill:"none","fill-rule":"evenodd"},[t.createVNode("mask",{id:"mask-2",fill:"white"},[t.createVNode("use",I,null)]),t.createVNode("use",t.mergeProps({id:"Mask",class:T.e("image-success-path")},I),null)])])}function ge(){return t.createVNode("svg",t.mergeProps({width:"16px",height:"16px",viewBox:"0 0 16 16",version:"1.1",xmlns:"http://www.w3.org/2000/svg"},M),[t.createVNode("g",{stroke:"none","stroke-width":"1",fill:"none","fill-rule":"evenodd"},[t.createVNode("path",{class:T.e("warning-outer"),d:`M8.96244623,0.57254229 L15.8714442,13.4101975 C16.1549662,13.9370117
15.9538562,14.5918482 15.4222523,14.8728158 C15.2642579,14.9563203 15.0879506,
15 14.9088903,15 L1.09089441,15 C0.488410063,15 0,14.5159904 0,13.9189343 C0,13.7414873
0.0440768395,13.5667684 0.128340519,13.4101975 L7.03733844,0.57254229 C7.32086049,
0.0457280838 7.98165058,-0.153569987 8.51325441,0.127397589 C8.70423071,
0.228333932 8.8605922,0.383286648 8.96244623,0.57254229 Z`},null),t.createVNode("path",{class:T.e("warning-inner"),"stroke-width":"0.3","fill-rule":"nonzero",d:"M8.87894737,13 L7.08947368,13 L7.08947368,11.2105263 L8.87894737,11.2105263 L8.87894737,13 Z M8.62102372,9.86842105 L7.32800539,9.86842105 L7,4.5 L8.96842105,4.5 L8.62102372,9.86842105 Z"},null)])])}function Fe(){return t.createVNode("svg",t.mergeProps({width:"16px",height:"16px",viewBox:"0 0 16 16",version:"1.1",xmlns:"http://www.w3.org/2000/svg"},M),[t.createVNode("g",{id:"info",stroke:"none","stroke-width":"1",fill:"none","fill-rule":"evenodd"},[t.createVNode("path",{class:T.e("image-info-path"),d:"M7,13 L7,6 L9,6 L9,13 L7,13 Z M7,5 L7,3 L9,3 L9,5 L7,5 Z",id:"info"},null)])])}function ye(){return t.createVNode("svg",t.mergeProps({width:"16px",height:"16px",viewBox:"0 0 16 16",version:"1.1",xmlns:"http://www.w3.org/2000/svg"},M),[t.createVNode("defs",null,[t.createVNode("polygon",{id:"path-e",points:`8.07106781 6.65685425 10.8994949 3.82842712 12.3137085 5.24264069 9.48528137 8.07106781 12.3137085
10.8994949 10.8994949 12.3137085 8.07106781 9.48528137 5.24264069 12.3137085 3.82842712 10.8994949 6.65685425
8.07106781 3.82842712 5.24264069 5.24264069 3.82842712`},null)]),t.createVNode("g",{id:"error",stroke:"none","stroke-width":"1",fill:"none","fill-rule":"evenodd"},[t.createVNode("mask",{id:"mask-2",fill:"white"},[t.createVNode("use",I,null)]),t.createVNode("use",t.mergeProps({id:"Mask",class:T.e("image-error-path")},I),null)])])}var ve=t.defineComponent({props:{type:{type:String,default:"normal"}},setup(e){const{type:n}=t.toRefs(e),o=x("notification"),l=t.computed(()=>({[o.e("image")]:!0,[o.em("image",n.value)]:!0}));return()=>t.createVNode("span",{class:l.value},[n.value&&n.value!=="normal"&&(n.value==="success"&&t.createVNode(he,null,null)||n.value==="info"&&t.createVNode(Fe,null,null)||n.value==="warning"&&t.createVNode(ge,null,null)||n.value==="error"&&t.createVNode(ye,null,null))])}});function Ee(e){return{classes:t.computed(()=>({"devui-notification-item-container":!0,[`devui-notification-message-${e.type}`]:!0}))}}function Ne(e,n){let o=null,l;const s=()=>{var p;o&&clearTimeout(o),o=null,(p=e.onClose)==null||p.call(e),n("update:modelValue",!1)},r=()=>{o&&e.duration&&(clearTimeout(o),o=null)},f=()=>{if(e.modelValue&&e.duration){const p=e.duration-(Date.now()-l);o=setTimeout(s,p)}},a=()=>{n("destroy")};return t.watch(()=>e.modelValue,p=>{p&&(l=Date.now(),e.duration&&(o=setTimeout(s,e.duration)))}),{interrupt:r,removeReset:f,close:s,handleDestroy:a}}var mt="",we=t.defineComponent({name:"DNotification",props:b,emits:["update:modelValue","destroy"],setup(e,{emit:n,slots:o}){const{modelValue:l,title:s,type:r}=t.toRefs(e),{classes:f}=Ee(e),{interrupt:a,removeReset:p,close:V,handleDestroy:m}=Ne(e,n),u=x("notification");return()=>t.createVNode(t.Transition,{name:"notification-fade",onAfterLeave:m},{default:()=>{var v;return[l.value&&t.createVNode("div",{class:u.b(),onClick:t.withModifiers(()=>({}),["stop"]),onPointerup:t.withModifiers(()=>({}),["stop"])},[t.createVNode("div",{class:f.value,onMouseenter:a,onMouseleave:p},[t.createVNode("div",{class:u.e("item")},[t.createVNode(me,{onClick:V},null),s.value&&t.createVNode(ve,{type:r.value},null),t.createVNode("div",{class:u.e("message")},[t.createVNode("span",{class:u.e("title")},[s.value]),t.createVNode("span",{class:u.e("content")},[(v=o.default)==null?void 0:v.call(o)])])])])])]}})}});function Ce(e){return typeof e=="function"||Object.prototype.toString.call(e)==="[object Object]"&&!t.isVNode(e)}const De={modelValue:!1,duration:3e3,type:"normal"};function Ve(e,n){const o=document.createElement("div");o.classList.add("notification__warpper");const l=document.body.lastElementChild;let s=50;if(l==null?void 0:l.classList.contains("notification__warpper")){const a=l.lastElementChild.getBoundingClientRect(),p=a.height,V=a.top;s=p+V}const r=t.createApp({setup(){return t.onUnmounted(()=>{document.body.removeChild(o)}),()=>t.createVNode(we,t.mergeProps(e,{onDestroy:r.unmount,style:[`top: ${s}px`]}),Ce(n)?n:{default:()=>[n]})}});return document.body.appendChild(o),r.mount(o),r}function ke(e,n){e.modelValue=!1,n==null||n()}class be{static open(n){const o=n.onClose||null,l=n.content;delete n.content;const s=t.reactive(ie(W(W({},De),n),{onClose:()=>{ke(s,o)}}));Ve(s,l),s.modelValue=!0}}class xe{constructor(){D(this,"uri");D(this,"method");D(this,"maximumSize");D(this,"headers");D(this,"authToken");D(this,"authTokenHeader");D(this,"additionalParameter");D(this,"fileFieldName");D(this,"checkSameName");D(this,"withCredentials");D(this,"responseType")}}class Ae{constructor(){D(this,"accept");D(this,"multiple");D(this,"webkitdirectory")}}var N=(e=>(e[e.preLoad=0]="preLoad",e[e.uploading=1]="uploading",e[e.uploaded=2]="uploaded",e[e.failed=3]="failed",e))(N||{});const K={accept:{type:String},webkitdirectory:{type:Boolean,default:!1},uploadOptions:{type:Object},multiple:{type:Boolean,default:!1},autoUpload:{type:Boolean,default:!0},placeholder:{type:String,default:""},modelValue:{type:Array,default:()=>[]},droppable:{type:Boolean,default:!1},beforeUpload:{type:Function},dynamicUploadOptionsFn:{type:Function},disabled:{type:Boolean,default:!1},onChange:{type:Function},fileDrop:{type:Function,default:void 0},fileOver:{type:Function,default:void 0},fileSelect:{type:Function,default:void 0},deleteUploadedFile:{type:Function,default:void 0},onError:{type:Function,default:void 0},onSuccess:{type:Function,default:void 0},onExceed:{type:Function,default:void 0},onProgress:{type:Function,default:void 0},onPreview:{type:Function,default:void 0},oneTimeUpload:{type:Boolean,default:!1},limit:{type:Number,default:0},httpRequest:{type:Function,default:void 0}},Se=e=>{const n=t.ref(""),o=m=>{const u=document.createEvent("MouseEvents");u.initMouseEvent("click",!0,!0,window,1,0,0,0,0,!1,!1,!1,!1,0,null),m.dispatchEvent(u)},l=({multiple:m,accept:u,webkitdirectory:v})=>new Promise(i=>{const h=document.getElementById("d-upload-temp");h&&document.body.removeChild(h);const c=document.createElement("input");c.style.position="fixed",c.style.left="-2000px",c.style.top="-2000px",c.setAttribute("id","d-upload-temp"),c.setAttribute("type","file"),m&&c.setAttribute("multiple",""),u&&c.setAttribute("accept",u),v&&c.setAttribute("webkitdirectory",""),c.addEventListener("change",w=>{i(Array.prototype.slice.call(w.target.files))}),document.body.appendChild(c),o(c)}),s=(m,u)=>{if(m){const v=m.split(","),i=u.type.replace(/\/.*$/,"");return v.some(h=>{const c=h.trim();return c.startsWith(".")?u.name.toLowerCase().indexOf(c.toLowerCase(),u.name.toLowerCase().length-c.toLowerCase().length)>-1:/\/\*$/.test(c)?i===c.replace(/\/.*$/,""):u.type===c})}return!0},r=(m,u)=>u?m>1024*1024*u:!1;return{triggerSelectFiles:m=>{const{multiple:u,accept:v,webkitdirectory:i}=m;return l({multiple:u,accept:v,webkitdirectory:i})},_validateFiles:(m,u,v)=>s(u,m)?v&&r(m.size,v.maximumSize)?{checkError:!0,errorMsg:e("getBeyondMaximalFileSizeMsg")(m.name,v.maximumSize||0)}:{checkError:!1,errorMsg:void 0}:{checkError:!0,errorMsg:e("getNotAllowedFileTypeMsg")(m.name,u)},triggerDropFiles:m=>Promise.resolve(m),checkAllFilesSize:(m,u)=>{if(r(m,u))return n.value=e("getAllFilesBeyondMaximalFileSizeMsg")(u),{checkError:!0,errorMsg:n.value}}}};class Y{constructor(n,o){D(this,"xhr");D(this,"status");D(this,"response");D(this,"percentage",0);this.file=n,this.uploadOptions=o,this.file=n,this.uploadOptions=o,this.status=N.preLoad}send(n){return new Promise((o,l)=>{const{uri:s,method:r,headers:f,authToken:a,authTokenHeader:p,additionalParameter:V,fileFieldName:m,withCredentials:u,responseType:v}=this.uploadOptions||{},i=p||"Authorization",h=m||"file";this.xhr=new XMLHttpRequest,this.xhr.open(r||"POST",s||""),u&&(this.xhr.withCredentials=u),v&&(this.xhr.responseType=v),a&&this.xhr.setRequestHeader(i,a),f&&Object.keys(f).forEach(w=>{var E;(E=this.xhr)==null||E.setRequestHeader(w,f[w])}),this.xhr.upload.onprogress=w=>{this.percentage=Math.round(w.loaded*100/w.total)};const c=n&&n.length?this.oneTimeUploadFiles(h,V,n):this.parallelUploadFiles(h,V);this.xhr.send(c),this.status=N.uploading,this.xhr.onabort=()=>{this.status=N.preLoad,this.xhr=null},this.xhr.onerror=()=>{var w,E;this.response=(w=this.xhr)==null?void 0:w.response,this.status=N.failed,l({file:this.file,response:(E=this.xhr)==null?void 0:E.response})},this.xhr.onload=()=>{var w,E,A;((w=this.xhr)==null?void 0:w.readyState)===4&&this.xhr.status>=200&&this.xhr.status<300?(this.response=this.xhr.response,this.status=N.uploaded,o({file:this.file,response:this.xhr.response})):(this.response=(E=this.xhr)==null?void 0:E.response,this.status=N.failed,l({file:this.file,response:(A=this.xhr)==null?void 0:A.response}))}})}parallelUploadFiles(n,o){const l=new FormData;return l.append(n,this.file,this.file.name),o&&Object.keys(o).forEach(s=>{l.append(s,o[s])}),l}oneTimeUploadFiles(n,o,l){const s=new FormData;return l.forEach(r=>{s.append(n,r.file,r.file.name),o&&Object.keys(o).forEach(f=>{s.append(f,o[f])})}),s}cancel(){this.xhr&&this.xhr.abort()}}const Be=()=>{const e=t.ref([]),n=t.ref([]),o=i=>{let h=!0;for(let c=0;c<e.value.length;c++)if(i===e.value[c].file.name){h=!1,n.value.indexOf(i)===-1&&n.value.push(i);break}return h},l=(i,h)=>{h&&h.checkSameName?o(i.name)&&e.value.push(new Y(i,h)):e.value.push(new Y(i,h))},s=()=>e.value.map(i=>i.file),r=()=>e.value.map(i=>i),f=async i=>{if(!i||!i.length)return Promise.reject("no files");let h=[];return await i[0].send(i).finally(()=>h=i.map(c=>(c.status=i[0].status,c.percentage=i[0].percentage,{file:c.file,response:i[0].response}))),h};return{fileUploaders:e,getFiles:s,addFile:l,getFullFiles:r,deleteFile:i=>{const h=e.value.find(c=>c.file===i);h==null||h.cancel(),e.value=e.value.filter(c=>i!==c.file)},upload:async i=>{let h=[];if(i){i.percentage=0;const c=await i.send();h.push(c)}else{const c=e.value.filter(A=>A.status===N.preLoad),w=e.value.filter(A=>A.status===N.failed),E=c.length>0?c:w;h=await Promise.all(E.map(async A=>(A.percentage=0,await A.send())))}return h.length>0?Promise.resolve(h):Promise.reject("no files")},removeFiles:()=>{e.value=[],n.value=[]},getSameNameFiles:()=>n.value.join(),resetSameNameFiles:()=>{n.value=[]},_oneTimeUpload:()=>{const i=e.value.filter(h=>h.status!==N.uploaded);return f(i)}}};var ht="";function U(...e){const n=o=>o&&typeof o=="object";return e.reduce((o,l)=>(Object.keys(l).forEach(s=>{const r=o[s],f=l[s];Array.isArray(r)&&Array.isArray(f)?o[s]=Array.from(new Set([...f,...r])):n(r)&&n(f)?o[s]=U(r,f):o[s]=f}),o),{})}var Pe={pagination:{totalItemText:"\u6240\u6709\u6761\u76EE",goToText:"\u8DF3\u81F3",perPage:"\u6761/\u9875"},accordion:{loading:"\u52A0\u8F7D\u4E2D",noData:"\u6CA1\u6709\u6570\u636E"},autoCompleteDropdown:{latestInput:"\u6700\u8FD1\u8F93\u5165"},cascaderList:{noData:"\u6CA1\u6709\u6570\u636E"},colorPicker:{foundationPanel:"\u57FA\u7840\u9762\u677F",advancedPanel:"\u9AD8\u7EA7\u9762\u677F"},datePickerPro:{ok:"\u786E\u5B9A",placeholder:"\u8BF7\u9009\u62E9\u65E5\u671F",month1:"1\u6708",month2:"2\u6708",month3:"3\u6708",month4:"4\u6708",month5:"5\u6708",month6:"6\u6708",month7:"7\u6708",month8:"8\u6708",month9:"9\u6708",month10:"10\u6708",month11:"11\u6708",month12:"12\u6708",year:"\u5E74",startPlaceholder:"\u8BF7\u9009\u62E9\u5F00\u59CB\u65E5\u671F",endPlaceholder:"\u8BF7\u9009\u62E9\u7ED3\u675F\u65E5\u671F",getWeekDays(){return["\u65E5","\u4E00","\u4E8C","\u4E09","\u56DB","\u4E94","\u516D"]},getTimeArr(){return["\u65F6","\u5206","\u79D2"]},getYearMonthStr(e,n){return`${e}\u5E74${n}\u6708`}},editableSelect:{noRelatedRecords:"\u627E\u4E0D\u5230\u76F8\u5173\u8BB0\u5F55",noData:"\u6CA1\u6709\u6570\u636E"},input:{placeholder:"\u8BF7\u8F93\u5165"},splitterBar:{collapse:"\u6536\u8D77",expand:"\u5C55\u5F00"},stepsGuide:{previous:"\u4E0A\u4E00\u6B65",continue:"\u6211\u77E5\u9053\u5566\uFF0C\u7EE7\u7EED",ok:"\u6211\u77E5\u9053\u5566"},table:{selectAll:"\u5168\u9009",ok:"\u786E\u5B9A"},timePopup:{ok:"\u786E\u5B9A"},transfer:{unit:"\u9879",panelUnit:"\u9879",headerUnit:"\u9879",noData:"\u6682\u65E0\u6570\u636E",placeholder:"\u8BF7\u8F93\u5165\u5173\u952E\u8BCD\u641C\u7D22"},tree:{loading:"\u52A0\u8F7D\u4E2D",newNode:"\u65B0\u8282\u70B9",selectPlaceholder:"\u8BF7\u9009\u62E9"},upload:{placeholder:"\u9009\u62E9\u6587\u4EF6",getExistSameNameFilesMsg(e){return`\u60A8\u4E0A\u4F20\u7684 "${e}" \u5B58\u5728\u91CD\u540D\u6587\u4EF6, \u8BF7\u91CD\u65B0\u9009\u62E9\u6587\u4EF6`},getAllFilesBeyondMaximalFileSizeMsg(e){return`\u6700\u5927\u652F\u6301\u4E0A\u4F20${e}MB\u7684\u6587\u4EF6, \u60A8\u672C\u6B21\u4E0A\u4F20\u7684\u6240\u6709\u6587\u4EF6\u8D85\u8FC7\u53EF\u4E0A\u4F20\u6587\u4EF6\u5927\u5C0F`},getBeyondMaximalFileSizeMsg(e,n){return`\u6700\u5927\u652F\u6301\u4E0A\u4F20${n}MB\u7684\u6587\u4EF6, \u60A8\u4E0A\u4F20\u7684\u6587\u4EF6"${e}"\u8D85\u8FC7\u53EF\u4E0A\u4F20\u6587\u4EF6\u5927\u5C0F`},getNotAllowedFileTypeMsg(e,n){return`\u652F\u6301\u7684\u6587\u4EF6\u7C7B\u578B: "${n}", \u60A8\u4E0A\u4F20\u7684\u6587\u4EF6"${e}"\u4E0D\u5728\u5141\u8BB8\u8303\u56F4\u5185\uFF0C\u8BF7\u91CD\u65B0\u9009\u62E9\u6587\u4EF6`}},search:{placeholder:"\u8BF7\u8F93\u5165\u5173\u952E\u5B57"},select:{placeholder:"\u8BF7\u9009\u62E9",noDataText:"\u65E0\u6570\u636E",noMatchText:"\u627E\u4E0D\u5230\u76F8\u5173\u8BB0\u5F55",loadingText:"\u52A0\u8F7D\u4E2D..."},tagInput:{maxTagsText:"\u5DF2\u8FBE\u5230\u6700\u5927\u4E2A\u6570\uFF1A"},timeSelect:{placeholder:"\u8BF7\u9009\u62E9\u65F6\u95F4"}};const z=t.ref("zh-CN");let O=t.reactive({[z.value]:Pe});const Te={messages(){return O[z.value]},lang(){return z.value},use(e,n){z.value=e,this.add({[e]:n})},add(e={}){O=U(O,e)}},Le=e=>e.substring(1).replace(/^\S/,n=>n.toLocaleLowerCase());function J(e,n){const o=n.split(".");let l=e;return o.forEach(s=>{var r;l=(r=l[s])!=null?r:""}),l}function Me(e,n,o){const l=o||Le(e)+".";return s=>{var a;const r=((a=n==null?void 0:n.appContext.config.globalProperties.langMessages)==null?void 0:a.value)||Te.messages();return J(r,l+s)||J(r,s)}}var $=t.defineComponent({name:"DUpload",props:K,emits:["fileDrop","fileOver","fileSelect","deleteUploadedFile","update:modelValue"],setup(e,n){const o=t.getCurrentInstance(),l=Me("DUpload",o),{uploadOptions:s,placeholder:r,autoUpload:f,disabled:a,beforeUpload:p,droppable:V,oneTimeUpload:m,modelValue:u,multiple:v,accept:i,webkitdirectory:h,limit:c,httpRequest:w}=t.toRefs(e),E=x("upload"),A=x("input-group"),j=x("form-control"),Re=x("input-group-addon"),{triggerSelectFiles:je,_validateFiles:He,triggerDropFiles:qe,checkAllFilesSize:Ge}=Se(l),{fileUploaders:S,addFile:Xe,getFullFiles:Ze,deleteFile:te,upload:We,resetSameNameFiles:Ke,removeFiles:H,_oneTimeUpload:Ye,getSameNameFiles:Ue}=Be(),q=t.ref(!1),G=t.ref([]),_=d=>{be.open({type:"warning",content:d})},Je=()=>{var g;let d=0;if(S.value.forEach(C=>{d+=C.file.size;const k=He(C.file,(i==null?void 0:i.value)||"",C.uploadOptions);if(k&&k.checkError){te(C.file),_(k.errorMsg);return}}),m.value){const C=Ge(d,((g=s==null?void 0:s.value)==null?void 0:g.maximumSize)||0);C&&C.checkError&&(H(),_(C.errorMsg))}},Qe=d=>{q.value=d,n.emit("fileOver",d)},ne=d=>{const g=u.value.filter(C=>C.name!==d.name);n.emit("deleteUploadedFile",d),n.emit("update:modelValue",g)},oe=(d,g,C)=>{d==null||d.stopPropagation(),C===N.uploaded&&ne(g),te(g)},et=()=>{let d=Promise.resolve(!0);if(p==null?void 0:p.value){const g=p==null?void 0:p.value(Ze());typeof g!="undefined"&&(typeof g=="boolean"?d=Promise.resolve(g):d=g)}return d},X=(d,g)=>{d&&d.stopPropagation(),et().then(C=>{if(!C){H();return}if(typeof(w==null?void 0:w.value)=="function"){const F=S.value.map(B=>B.file);w.value(F);return}const k=m.value?Ye():We(g);e.onProgress&&e.onProgress(G.value,u.value),k==null||k.then(F=>{e.onSuccess&&e.onSuccess(F);const B=F.map(st=>st.file),P=[...B,...u.value];n.emit("update:modelValue",P),e.onChange&&e.onChange(B,P)}).catch(F=>{e.onError&&e.onError(F),e.onChange&&e.onChange([F.file],u.value)})})},le=d=>{Ke(),d.then(g=>{if(c.value&&u.value.length+g.length>c.value){e.onExceed&&e.onExceed(g,u.value);return}e.onChange&&e.onChange(g,u.value),g.forEach(k=>{v.value||H(),Xe(k,s==null?void 0:s.value)}),Je();const C=Ue();(s==null?void 0:s.value)&&s.value.checkSameName&&C.length&&_(l("getExistSameNameFilesMsg")(C)),G.value=S.value.filter(k=>k.status===N.preLoad).map(k=>k.file),n.emit("fileSelect",G.value),f.value&&X()}).catch(g=>{_(g.message)})},se=()=>{a.value||le(je({accept:i==null?void 0:i.value,multiple:v.value,webkitdirectory:h.value}))},tt=d=>{q.value=!1,le(qe(d)),n.emit("fileDrop",d)},nt=(d,g)=>{X(d,g)},ot=d=>{S.value.forEach(g=>{oe(d,g.file,g.status)})},lt=(d,g)=>{d==null||d.stopPropagation(),e.onPreview&&e.onPreview(g)};return n.expose({submit:nt,clearFiles:ot}),()=>{var d,g,C,k;return t.createVNode("div",null,[t.withDirectives(t.createVNode("div",{class:E.b(),style:`border: ${q.value?"1px solid #15bf15":"0"}`},[((g=(d=n.slots).default)==null?void 0:g.call(d))?t.createVNode("div",{onClick:se},[n.slots.default()]):t.createVNode("div",{class:[A.b(),a.value?"disabled":""],onClick:se},[S.value.length===0&&t.createVNode("div",{class:[j.b(),E.e("placeholder")]},[r.value||l("placeholder")]),S.value.length>0&&t.createVNode("ul",{class:[j.b(),E.e("files-list")]},[S.value.map((F,B)=>t.createVNode("li",{key:B,class:[E.e("file-item"),E.e("file-tag")],style:"display: inline-block;",title:F.file.name,onClick:P=>lt(P,F.file)},[t.createVNode("span",{class:[E.e("filename"),F.status===N.failed?E.m("failed-color"):""]},[F.file.name]),t.createVNode(t.resolveComponent("d-icon"),{name:"close",class:[(F==null?void 0:F.status)===N.failed?E.e("delete-file-button"):"",(F==null?void 0:F.status)===N.uploading||(F==null?void 0:F.status)===N.uploaded?E.e("delete"):""],onClick:P=>oe(P,F.file,F.status)},null),F.status===N.uploading&&t.createVNode("div",{class:["icon",E.e("progress")]},[t.createVNode(t.resolveComponent("d-progress"),{isCircle:!0,percentage:F.percentage,barbgcolor:"#50D4AB",strokeWidth:8,showContent:!1},null)]),F.status===N.failed&&t.createVNode(t.resolveComponent("d-icon"),{name:"running",onClick:X},null),F.status===N.uploaded&&t.createVNode(t.resolveComponent("d-icon"),{name:"right",color:"#50d4ab"},null)]))]),t.createVNode("span",{class:Re.b()},[t.createVNode(t.resolveComponent("d-icon"),{name:"more-operate",color:"#252b3a"},null)])])]),[[t.resolveDirective("file-drop"),{droppable:V,isSingle:!v,onFileDrop:tt,onFileOver:Qe}]]),t.createVNode("div",null,[(k=(C=n.slots)["uploaded-files"])==null?void 0:k.call(C,{uploadedFiles:u.value,deleteFile:ne})])])}}});const Q=e=>{var n;return e.dataTransfer?e.dataTransfer:(n=e.originalEvent)==null?void 0:n.dataTransfer},Ie=e=>e?e.indexOf?e.indexOf("Files")!==-1:e.contains?e.contains("Files"):!1:!1,R=e=>{e.preventDefault(),e.stopPropagation()},ze=(e,n)=>{const{onFileOver:o}=n.value;e.addEventListener("dragover",l=>{const s=Q(l);!Ie(s.types)||(R(l),o&&o(!0))})},_e=(e,n)=>{const{onFileOver:o}=n.value;e.addEventListener("dragleave",l=>{l.currentTarget!==e&&(R(l),o&&o(!0))})},Oe=(e,n)=>{const{onFileDrop:o,isSingle:l}=n.value;e.addEventListener("drop",s=>{const r=Q(s);!r||(R(s),l?o&&o([r.files[0]]):o&&o(Array.from(r.files)))})},ee={mounted:(e,n)=>{const{droppable:o}=n.value;!o||(ze(e,n),_e(e,n),Oe(e,n))}};var $e={title:"Upload \u4E0A\u4F20",category:"\u6570\u636E\u5F55\u5165",status:"100%",install(e){e.directive("file-drop",ee),e.component($.name,$)}};y.IFileOptions=Ae,y.IUploadOptions=xe,y.Upload=$,y.UploadStatus=N,y.default=$e,y.fileDropDirective=ee,y.uploadProps=K,Object.defineProperty(y,"__esModule",{value:!0}),y[Symbol.toStringTag]="Module"});