12 |
- import{j as Z,m as N,t as ae,z as d,l as _,o as p,b as M,R as U,f as k,a as w,P as A,d as z,C as m,u as n,X as j,Q as q,T as G,V as re,k as O,g as J,bH as le,bI as ie,r as S,B as ue,w as ce,c as b,D as de,e as T,L as pe,G as me,E as fe,bs as ge,bJ as H,_ as F,bz as K,av as $,bK as P,Z as ye,bL as ve}from"./index-312d0758.js";import{m as Ce,u as be,a as he,E as Te}from"./typescript-c7dac87b.js";import{_ as Q}from"./plugin-vue_export-helper-1cff8a04.js";import{i as we,T as R,E as V,a as Ne}from"./index-7588b595.js";const Be=Z({value:{type:[String,Number],default:""},max:{type:Number,default:99},isDot:Boolean,hidden:Boolean,type:{type:String,values:["primary","success","warning","info","danger"],default:"danger"},showZero:{type:Boolean,default:!0}}),Ee=["textContent"],Se=N({name:"ElBadge"}),_e=N({...Se,props:Be,setup(s,{expose:t}){const e=s,o=ae("badge"),a=d(()=>e.isDot?"":_(e.value)&&_(e.max)?e.max<e.value?`${e.max}+`:e.value===0&&!e.showZero?"":`${e.value}`:`${e.value}`);return t({content:a}),(l,u)=>(p(),M("div",{class:m(n(o).b())},[U(l.$slots,"default"),k(G,{name:`${n(o).namespace.value}-zoom-in-center`,persisted:""},{default:w(()=>[A(z("sup",{class:m([n(o).e("content"),n(o).em("content",l.type),n(o).is("fixed",!!l.$slots.default),n(o).is("dot",l.isDot)]),textContent:j(n(a))},null,10,Ee),[[q,!l.hidden&&(n(a)||l.isDot)]])]),_:1},8,["name"])],2))}});var Me=Q(_e,[["__file","badge.vue"]]);const ze=re(Me),X=["success","info","warning","error"],i=Ce({customClass:"",center:!1,dangerouslyUseHTMLString:!1,duration:3e3,icon:void 0,id:"",message:"",onClose:void 0,showClose:!1,type:"info",offset:16,zIndex:0,grouping:!1,repeatNum:1,appendTo:J?document.body:void 0}),$e=Z({customClass:{type:String,default:i.customClass},center:{type:Boolean,default:i.center},dangerouslyUseHTMLString:{type:Boolean,default:i.dangerouslyUseHTMLString},duration:{type:Number,default:i.duration},icon:{type:we,default:i.icon},id:{type:String,default:i.id},message:{type:O([String,Object,Function]),default:i.message},onClose:{type:O(Function),required:!1},showClose:{type:Boolean,default:i.showClose},type:{type:String,values:X,default:i.type},offset:{type:Number,default:i.offset},zIndex:{type:Number,default:i.zIndex},grouping:{type:Boolean,default:i.grouping},repeatNum:{type:Number,default:i.repeatNum}}),ke={destroy:()=>!0},c=le([]),xe=s=>{const t=c.findIndex(a=>a.id===s),e=c[t];let o;return t>0&&(o=c[t-1]),{current:e,prev:o}},Ie=s=>{const{prev:t}=xe(s);return t?t.vm.exposed.bottom.value:0},Le=(s,t)=>c.findIndex(o=>o.id===s)>0?16:t,De=["id"],Oe=["innerHTML"],He=N({name:"ElMessage"}),Fe=N({...He,props:$e,emits:ke,setup(s,{expose:t}){const e=s,{Close:o}=Ne,{ns:a,zIndex:l}=ie("message"),{currentZIndex:u,nextZIndex:f}=l,g=S(),v=S(!1),C=S(0);let B;const Y=d(()=>e.type?e.type==="error"?"danger":e.type:"info"),ee=d(()=>{const r=e.type;return{[a.bm("icon",r)]:r&&R[r]}}),x=d(()=>e.icon||R[e.type]||""),se=d(()=>Ie(e.id)),I=d(()=>Le(e.id,e.offset)+se.value),te=d(()=>C.value+I.value),ne=d(()=>({top:`${I.value}px`,zIndex:u.value}));function E(){e.duration!==0&&({stop:B}=ge(()=>{h()},e.duration))}function L(){B==null||B()}function h(){v.value=!1}function oe({code:r}){r===Te.esc&&h()}return ue(()=>{E(),f(),v.value=!0}),ce(()=>e.repeatNum,()=>{L(),E()}),be(document,"keydown",oe),he(g,()=>{C.value=g.value.getBoundingClientRect().height}),t({visible:v,bottom:te,close:h}),(r,D)=>(p(),b(G,{name:n(a).b("fade"),onBeforeLeave:r.onClose,onAfterLeave:D[0]||(D[0]=Ae=>r.$emit("destroy")),persisted:""},{default:w(()=>[A(z("div",{id:r.id,ref_key:"messageRef",ref:g,class:m([n(a).b(),{[n(a).m(r.type)]:r.type},n(a).is("center",r.center),n(a).is("closable",r.showClose),r.customClass]),style:de(n(ne)),role:"alert",onMouseenter:L,onMouseleave:E},[r.repeatNum>1?(p(),b(n(ze),{key:0,value:r.repeatNum,type:n(Y),class:m(n(a).e("badge"))},null,8,["value","type","class"])):T("v-if",!0),n(x)?(p(),b(n(V),{key:1,class:m([n(a).e("icon"),n(ee)])},{default:w(()=>[(p(),b(pe(n(x))))]),_:1},8,["class"])):T("v-if",!0),U(r.$slots,"default",{},()=>[r.dangerouslyUseHTMLString?(p(),M(me,{key:1},[T(" Caution here, message could've been compromised, never use user's input as message "),z("p",{class:m(n(a).e("content")),innerHTML:r.message},null,10,Oe)],2112)):(p(),M("p",{key:0,class:m(n(a).e("content"))},j(r.message),3))]),r.showClose?(p(),b(n(V),{key:2,class:m(n(a).e("closeBtn")),onClick:fe(h,["stop"])},{default:w(()=>[k(n(o))]),_:1},8,["class","onClick"])):T("v-if",!0)],46,De),[[q,v.value]])]),_:3},8,["name","onBeforeLeave"]))}});var Pe=Q(Fe,[["__file","message.vue"]]);let Re=1;const W=s=>{const t=!s||F(s)||K(s)||$(s)?{message:s}:s,e={...i,...t};if(!e.appendTo)e.appendTo=document.body;else if(F(e.appendTo)){let o=document.querySelector(e.appendTo);ye(o)||(o=document.body),e.appendTo=o}return e},Ve=s=>{const t=c.indexOf(s);if(t===-1)return;c.splice(t,1);const{handler:e}=s;e.close()},Ze=({appendTo:s,...t},e)=>{const o=`message_${Re++}`,a=t.onClose,l=document.createElement("div"),u={...t,id:o,onClose:()=>{a==null||a(),Ve(C)},onDestroy:()=>{P(null,l)}},f=k(Pe,u,$(u.message)||K(u.message)?{default:$(u.message)?u.message:()=>u.message}:null);f.appContext=e||y._context,P(f,l),s.appendChild(l.firstElementChild);const g=f.component,C={id:o,vnode:f,vm:g,handler:{close:()=>{g.exposed.visible.value=!1}},props:f.component.props};return C},y=(s={},t)=>{if(!J)return{close:()=>{}};if(_(H.max)&&c.length>=H.max)return{close:()=>{}};const e=W(s);if(e.grouping&&c.length){const a=c.find(({vnode:l})=>{var u;return((u=l.props)==null?void 0:u.message)===e.message});if(a)return a.props.repeatNum+=1,a.props.type=e.type,a.handler}const o=Ze(e,t);return c.push(o),o.handler};X.forEach(s=>{y[s]=(t={},e)=>{const o=W(t);return y({...o,type:s},e)}});function Ue(s){for(const t of c)(!s||s===t.props.type)&&t.handler.close()}y.closeAll=Ue;y._context=null;const Ke=ve(y,"$message");export{Ke as E};
|