import{b as A,d as N,u as ae,c as d,k as B,o as p,v as M,r as U,y as x,w,E as j,x as $,n as m,e as t,A as q,$ as G,a6 as Z,h as re,i as O,af as J,aH as le,m as k,s as ie,G as ue,a as h,f as ce,J as T,g as de,H as pe,N as me,aj as fe,L as H,a0 as K,aa as _,al as F,aI as ge}from"./normalize-035cc755.js";import{c as ye,u as ve,E as Ce}from"./aria-c4f251c4.js";import{_ as Q,i as he,m as be,T as P,E as R,f as Te,w as we}from"./base-a3ee0d3b.js";import{b as Ne,D as V}from"./config-provider-c5285acd.js";const Ee=A({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"}}),Se=["textContent"],ke=N({name:"ElBadge"}),Be=N({...ke,props:Ee,setup(s,{expose:n}){const e=s,o=ae("badge"),a=d(()=>e.isDot?"":B(e.value)&&B(e.max)?e.max(p(),M("div",{class:m(t(o).b())},[U(l.$slots,"default"),x(Z,{name:`${t(o).namespace.value}-zoom-in-center`,persisted:""},{default:w(()=>[j($("sup",{class:m([t(o).e("content"),t(o).em("content",l.type),t(o).is("fixed",!!l.$slots.default),t(o).is("dot",l.isDot)]),textContent:q(t(a))},null,10,Se),[[G,!l.hidden&&(t(a)||l.isDot)]])]),_:1},8,["name"])],2))}});var Me=Q(Be,[["__file","/home/runner/work/element-plus/element-plus/packages/components/badge/src/badge.vue"]]);const $e=re(Me),W=["success","info","warning","error"],i=be({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=A({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:he,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:W,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}}),xe={destroy:()=>!0},c=le([]),Ie=s=>{const n=c.findIndex(a=>a.id===s),e=c[n];let o;return n>0&&(o=c[n-1]),{current:e,prev:o}},ze=s=>{const{prev:n}=Ie(s);return n?n.vm.exposed.bottom.value:0},Le=(s,n)=>c.findIndex(o=>o.id===s)>0?20:n,De=["id"],Oe=["innerHTML"],He=N({name:"ElMessage"}),Fe=N({...He,props:_e,emits:xe,setup(s,{expose:n}){const e=s,{Close:o}=Te,{ns:a,zIndex:l}=Ne("message"),{currentZIndex:u,nextZIndex:f}=l,g=k(),v=k(!1),C=k(0);let E;const Y=d(()=>e.type?e.type==="error"?"danger":e.type:"info"),ee=d(()=>{const r=e.type;return{[a.bm("icon",r)]:r&&P[r]}}),I=d(()=>e.icon||P[e.type]||""),se=d(()=>ze(e.id)),z=d(()=>Le(e.id,e.offset)+se.value),ne=d(()=>C.value+z.value),te=d(()=>({top:`${z.value}px`,zIndex:u.value}));function S(){e.duration!==0&&({stop:E}=fe(()=>{b()},e.duration))}function L(){E==null||E()}function b(){v.value=!1}function oe({code:r}){r===Ce.esc&&b()}return ie(()=>{S(),f(),v.value=!0}),ue(()=>e.repeatNum,()=>{L(),S()}),ye(document,"keydown",oe),ve(g,()=>{C.value=g.value.getBoundingClientRect().height}),n({visible:v,bottom:ne,close:b}),(r,D)=>(p(),h(Z,{name:t(a).b("fade"),onBeforeLeave:r.onClose,onAfterLeave:D[0]||(D[0]=je=>r.$emit("destroy")),persisted:""},{default:w(()=>[j($("div",{id:r.id,ref_key:"messageRef",ref:g,class:m([t(a).b(),{[t(a).m(r.type)]:r.type&&!r.icon},t(a).is("center",r.center),t(a).is("closable",r.showClose),r.customClass]),style:ce(t(te)),role:"alert",onMouseenter:L,onMouseleave:S},[r.repeatNum>1?(p(),h(t($e),{key:0,value:r.repeatNum,type:t(Y),class:m(t(a).e("badge"))},null,8,["value","type","class"])):T("v-if",!0),t(I)?(p(),h(t(R),{key:1,class:m([t(a).e("icon"),t(ee)])},{default:w(()=>[(p(),h(de(t(I))))]),_:1},8,["class"])):T("v-if",!0),U(r.$slots,"default",{},()=>[r.dangerouslyUseHTMLString?(p(),M(pe,{key:1},[T(" Caution here, message could've been compromised, never use user's input as message "),$("p",{class:m(t(a).e("content")),innerHTML:r.message},null,10,Oe)],2112)):(p(),M("p",{key:0,class:m(t(a).e("content"))},q(r.message),3))]),r.showClose?(p(),h(t(R),{key:2,class:m(t(a).e("closeBtn")),onClick:me(b,["stop"])},{default:w(()=>[x(t(o))]),_:1},8,["class","onClick"])):T("v-if",!0)],46,De),[[G,v.value]])]),_:3},8,["name","onBeforeLeave"]))}});var Pe=Q(Fe,[["__file","/home/runner/work/element-plus/element-plus/packages/components/message/src/message.vue"]]);let Re=1;const X=s=>{const n=!s||H(s)||K(s)||_(s)?{message:s}:s,e={...i,...n};if(!e.appendTo)e.appendTo=document.body;else if(H(e.appendTo)){let o=document.querySelector(e.appendTo);we(o)||(o=document.body),e.appendTo=o}return e},Ve=s=>{const n=c.indexOf(s);if(n===-1)return;c.splice(n,1);const{handler:e}=s;e.close()},Ae=({appendTo:s,...n},e)=>{const o=`message_${Re++}`,a=n.onClose,l=document.createElement("div"),u={...n,id:o,onClose:()=>{a==null||a(),Ve(C)},onDestroy:()=>{F(null,l)}},f=x(Pe,u,_(u.message)||K(u.message)?{default:_(u.message)?u.message:()=>u.message}:null);f.appContext=e||y._context,F(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={},n)=>{if(!J)return{close:()=>{}};if(B(V.max)&&c.length>=V.max)return{close:()=>{}};const e=X(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=Ae(e,n);return c.push(o),o.handler};W.forEach(s=>{y[s]=(n={},e)=>{const o=X(n);return y({...o,type:s},e)}});function Ue(s){for(const n of c)(!s||s===n.props.type)&&n.handler.close()}y.closeAll=Ue;y._context=null;const Ke=ge(y,"$message");export{Ke as E};