UNPKG

vue-devui

Version:

DevUI components based on Vite and Vue3

6 lines (5 loc) 8.93 kB
(function(f,e){typeof exports=="object"&&typeof module!="undefined"?e(exports,require("vue")):typeof define=="function"&&define.amd?define(["exports","vue"],e):(f=typeof globalThis!="undefined"?globalThis:f||self,e(f.index={},f.Vue))})(this,function(f,e){"use strict";/** * @vue/shared v3.4.27 * (c) 2018-present Yuxi (Evan) You and Vue contributors * @license MIT **/const P=t=>typeof t=="string",M={name:{type:String,default:""},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]}},T={name:{type:String,default:"",required:!0},color:{type:String,default:"inherit"},size:{type:[Number,String],default:"inherit"}};function b(t,n,s){let o=t;return n&&(o+=`__${n}`),s&&(o+=`--${s}`),o}function g(t,n=!1){const s=n?`.devui-${t}`:`devui-${t}`;return{b:()=>b(s),e:l=>l?b(s,l):"",m:l=>l?b(s,"",l):"",em:(l,u)=>l&&u?b(s,l,u):""}}var ce="",B=e.defineComponent({name:"DSvgIcon",props:T,setup(t){const{name:n,color:s,size:o}=e.toRefs(t),a=g("svg-icon"),r=e.computed(()=>`#icon-${n.value}`),c=e.computed(()=>typeof o.value=="number"?`${o.value}px`:o.value),l={width:c.value,height:c.value};return()=>e.createVNode("svg",{class:a.b(),style:l},[e.createVNode("use",{"xlink:href":r.value,fill:s.value},null)])}});function L(t){return/^((http|https):)?\/\//.test(t)}function k(t,n){const{component:s,name:o,size:a,color:r,classPrefix:c,rotate:l}=e.toRefs(t),u=g("icon"),p=e.computed(()=>typeof a.value=="number"?`${a.value}px`:a.value),m=s.value?e.resolveDynamicComponent(s.value):e.resolveDynamicComponent(B),d=()=>e.createVNode("img",e.mergeProps({src:o.value,alt:o.value.split("/")[o.value.split("/").length-1],class:[(l==null?void 0:l.value)==="infinite"&&u.m("spin")],style:{width:p.value||"",transform:`rotate(${l==null?void 0:l.value}deg)`,verticalAlign:"middle"}},n.attrs),null),N=()=>e.createVNode(m,e.mergeProps({name:o.value,color:r.value,size:p.value,class:[(l==null?void 0:l.value)==="infinite"&&u.m("spin")],style:{transform:`rotate(${l==null?void 0:l.value}deg)`}},n.attrs),null),V=()=>{const I=/^icon-/.test(o.value)?o.value:`${c.value}-${o.value}`;return e.createVNode("i",e.mergeProps({class:[c.value,I,(l==null?void 0:l.value)==="infinite"&&u.m("spin")],style:{fontSize:p.value,color:r.value,transform:`rotate(${l==null?void 0:l.value}deg)`}},n.attrs),null)};return{iconDom:()=>s.value?N():L(o.value)?d():V()}}var A=e.defineComponent({name:"DIcon",props:M,emits:["click"],setup(t,n){const{disabled:s,operable:o}=e.toRefs(t),{iconDom:a}=k(t,n),r=g("icon"),c=e.computed(()=>({[r.e("container")]:!0,[r.m("disabled")]:s.value,[r.m("operable")]:o.value,[r.m("no-slots")]:!Object.keys(n.slots).length})),l=u=>{s.value||n.emit("click",u)};return()=>{var u,p,m,d;return e.createVNode("div",{class:c.value,onClick:l},[(p=(u=n.slots).prefix)==null?void 0:p.call(u),a(),(d=(m=n.slots).suffix)==null?void 0:d.call(m)])}}}),re="";e.defineComponent({name:"DIconGroup",setup(t,n){const s=g("icon-group");return()=>{var o,a;return e.createVNode("div",{class:s.b()},[(a=(o=n.slots).default)==null?void 0:a.call(o)])}}});var O=e.defineComponent({emits:["click"],setup(t,{emit:n}){const s=g("message");return()=>e.createVNode("div",{class:s.e("icon-close"),onClick:o=>n("click",o)},[e.createVNode(A,{name:"close",size:"14px"},null)])}});const x={id:{type:String,default:""},visible:{type:Boolean,default:!1},message:{type:String,default:""},type:{type:String,default:"normal"},bordered:{type:Boolean,default:!0},shadow:{type:Boolean,default:!0},duration:{type:Number,default:3e3},showClose:{type:Boolean,default:!1},onClose:{type:Function}},h=g("message");function _(){return e.createVNode("svg",{viewBox:"0 0 1024 1024",xmlns:"http://www.w3.org/2000/svg",class:h.e("icon")},[e.createVNode("path",{fill:"currentColor",d:"M512 64a448 448 0 1 1 0 896 448 448 0 0 1 0-896zm-55.808 536.384-99.52-99.584a38.4 38.4 0 1 0-54.336 54.336l126.72 126.72a38.272 38.272 0 0 0 54.336 0l262.4-262.464a38.4 38.4 0 1 0-54.272-54.336L456.192 600.384z"},null)])}function j(){return e.createVNode("svg",{viewBox:"0 0 1024 1024",xmlns:"http://www.w3.org/2000/svg",class:h.e("icon")},[e.createVNode("path",{fill:"currentColor",d:"M512 64a448 448 0 1 1 0 896 448 448 0 0 1 0-896zm0 192a58.432 58.432 0 0 0-58.24 63.744l23.36 256.384a35.072 35.072 0 0 0 69.76 0l23.296-256.384A58.432 58.432 0 0 0 512 256zm0 512a51.2 51.2 0 1 0 0-102.4 51.2 51.2 0 0 0 0 102.4z"},null)])}function R(){return e.createVNode("svg",{viewBox:"0 0 1024 1024",xmlns:"http://www.w3.org/2000/svg",class:h.e("icon")},[e.createVNode("path",{fill:"currentColor",d:"M512 64a448 448 0 1 1 0 896.064A448 448 0 0 1 512 64zm67.2 275.072c33.28 0 60.288-23.104 60.288-57.344s-27.072-57.344-60.288-57.344c-33.28 0-60.16 23.104-60.16 57.344s26.88 57.344 60.16 57.344zM590.912 699.2c0-6.848 2.368-24.64 1.024-34.752l-52.608 60.544c-10.88 11.456-24.512 19.392-30.912 17.28a12.992 12.992 0 0 1-8.256-14.72l87.68-276.992c7.168-35.136-12.544-67.2-54.336-71.296-44.096 0-108.992 44.736-148.48 101.504 0 6.784-1.28 23.68.064 33.792l52.544-60.608c10.88-11.328 23.552-19.328 29.952-17.152a12.8 12.8 0 0 1 7.808 16.128L388.48 728.576c-10.048 32.256 8.96 63.872 55.04 71.04 67.84 0 107.904-43.648 147.456-100.416z"},null)])}function E(){return e.createVNode("svg",{viewBox:"0 0 1024 1024",xmlns:"http://www.w3.org/2000/svg",class:h.e("icon")},[e.createVNode("path",{fill:"currentColor",d:"M512 64a448 448 0 1 1 0 896 448 448 0 0 1 0-896zm0 393.664L407.936 353.6a38.4 38.4 0 1 0-54.336 54.336L457.664 512 353.6 616.064a38.4 38.4 0 1 0 54.336 54.336L512 566.336 616.064 670.4a38.4 38.4 0 1 0 54.336-54.336L566.336 512 670.4 407.936a38.4 38.4 0 1 0-54.336-54.336L512 457.664z"},null)])}var ie="",F=e.defineComponent({name:"DMessage",inheritAttrs:!1,props:x,emits:["destroy","close"],setup(t,{emit:n,attrs:s,slots:o}){const{visible:a,message:r,type:c,bordered:l,shadow:u,showClose:p}=e.toRefs(t),m=g("message");let d=null,N;const V=()=>{n("destroy")},C=()=>{var i;d&&clearTimeout(d),d=null,(i=t.onClose)==null||i.call(t)},I=()=>{d&&t.duration&&(clearTimeout(d),d=null)},Z=()=>{if(t.visible&&t.duration){const i=t.duration-(Date.now()-N);d=setTimeout(C,i)}};e.watch(()=>t.visible,i=>{i&&(N=Date.now(),t.duration&&(d=setTimeout(C,t.duration)))});const ee=e.computed(()=>({[m.b()]:!0,[m.m(c.value)]:!0})),te=e.computed(()=>q(t.id)),ne=e.computed(()=>{const i={};return l.value||(i.border="none"),u.value||(i["box-shadow"]="none"),{...i,top:`${te.value}px`}}),oe=e.computed(()=>{const i=e.computed(()=>({[m.e("image")]:!0,[m.em("image",c.value)]:!0}));return!(!c.value||c.value==="normal")&&e.createVNode("span",{class:i.value},[c.value&&(c.value==="success"&&e.createVNode(_,null,null)||c.value==="info"&&e.createVNode(R,null,null)||c.value==="warning"&&e.createVNode(j,null,null)||c.value==="error"&&e.createVNode(E,null,null))])}),se=e.computed(()=>{var $;const i=e.computed(()=>({[m.e("content")]:!0,[m.em("content",c.value)]:!0}));return e.createVNode("span",{class:i.value},[r.value?r.value:($=o.default)==null?void 0:$.call(o)])}),le=e.computed(()=>p.value&&e.createVNode("span",{class:[m.e("close")],onClick:C},[e.createVNode(O,null,null)]));return()=>e.createVNode(e.Transition,{name:"message-fade",onAfterLeave:V},{default:()=>[a.value&&e.createVNode("div",e.mergeProps({class:ee.value,style:{...ne.value},onMouseenter:I,onMouseleave:Z},s),[oe.value,se.value,le.value])]})}});function U(t){return typeof t=="function"||Object.prototype.toString.call(t)==="[object Object]"&&!e.isVNode(t)}const w=e.shallowReactive([]),q=t=>w.findIndex(s=>s.id===t)*65+80,G=t=>{const n=w.findIndex(s=>s.id===t);return n!==-1&&w.splice(n,1),n},X=(t,n,s)=>{const o=document.createElement("div");o.id=t;const a=e.createApp({setup(){return e.onUnmounted(()=>{document.body.removeChild(o)}),()=>e.createVNode(F,e.mergeProps(n,{id:t,onDestroy:a.unmount}),U(s)?s:{default:()=>[s]})}});return document.body.appendChild(o),a.mount(o),{id:t,props:n}},z={duration:3e3,type:"normal"},v=t=>{const n=!t||P(t)?{message:t}:t;return{...z,...n}};let S=0;function y(t){const n=t.onClose||null,s=t.message;delete t.message;const o=e.reactive({...z,...t,onClose:()=>{o.visible=!1,G(o.id),n==null||n()}});S++;const a=`message_${S}`;o.id=a;const r=X(a,o,s);w.push(r),o.visible=!0}function W(t){const n=v(t);y({...n})}function H(t){const n=v(t);y({...n,type:"success"})}function J(t){const n=v(t);y({...n,type:"error"})}function K(t){const n=v(t);y({...n,type:"warning"})}function Q(t){const n=v(t);y({...n,type:"info"})}const D=Object.assign(W,{success:H,error:J,warning:K,info:Q});var Y={title:"Message \u5168\u5C40\u63D0\u793A",category:"\u53CD\u9988",status:"100%",install(t){t.config.globalProperties.$message=D}};f.Message=D,f.default=Y,f.messageProps=x,Object.defineProperties(f,{__esModule:{value:!0},[Symbol.toStringTag]:{value:"Module"}})});