import{au as Le,z as be,H as Oe,A as he,a6 as Ae,u as Ce,aG as $e,x as oe,aH as ze,aq as Q,J as H,k as Pe,G as re,d as Ee,Q as E,r as te,B as Ve,aa as Re,e as L,q as O,v as He,a3 as De,L as A,o as m,c as h,w as v,D as Z,M as g,n as c,g as ie,$ as q,f as x,X as W,V as $,O as R,a5 as j,N as _,E as ee,T as Ne,C as we,i as Me,aI as Be,aJ as ue,I as Fe,R as Ue,ap as de,ak as ce}from"./index-7ed2d026.js";import{a1 as fe,I as ke,h as me,J as Ye,a as Xe,r as Ke,_ as qe,G as We,E as je,ac as Ge,ad as pe,V as ve}from"./el-button-e2db9d24.js";import{E as Je}from"./el-input-5fc6aaec.js";import{P as ne}from"./el-dropdown-item-bbb7be2f.js";import{E as Qe}from"./aria-60e0cdc6.js";import{o as ge}from"./el-icon-08628b36.js";import{e as Ze,c as xe}from"./el-scrollbar-5933f25d.js";import{t as _e}from"./index-dc664f45.js";const en=e=>["",...Le].includes(e),nn=(e,n,s)=>{let a={offsetX:0,offsetY:0};const l=d=>{const f=d.clientX,o=d.clientY,{offsetX:p,offsetY:w}=a,i=e.value.getBoundingClientRect(),N=i.left,F=i.top,y=i.width,U=i.height,M=document.documentElement.clientWidth,S=document.documentElement.clientHeight,Y=-N+p,G=-F+w,J=M-N-y+p,B=S-F-U+w,P=K=>{const k=Math.min(Math.max(p+K.clientX-f,Y),J),V=Math.min(Math.max(w+K.clientY-o,G),B);a={offsetX:k,offsetY:V},e.value&&(e.value.style.transform=`translate(${fe(k)}, ${fe(V)})`)},X=()=>{document.removeEventListener("mousemove",P),document.removeEventListener("mouseup",X)};document.addEventListener("mousemove",P),document.addEventListener("mouseup",X)},t=()=>{n.value&&e.value&&n.value.addEventListener("mousedown",l)},r=()=>{n.value&&e.value&&n.value.removeEventListener("mousedown",l)};be(()=>{Oe(()=>{s.value?t():r()})}),he(()=>{r()})},on=(e,n={})=>{Ae(e)||_e("[useLockscreen]","You need to pass a ref param to this function");const s=n.ns||Ce("popup"),a=$e(()=>s.bm("parent","hidden"));if(!ke||me(document.body,a.value))return;let l=0,t=!1,r="0";const d=()=>{setTimeout(()=>{Ke(document==null?void 0:document.body,a.value),t&&document&&(document.body.style.width=r)},200)};oe(e,f=>{if(!f){d();return}t=!me(document.body,a.value),t&&(r=document.body.style.width),l=Ze(s.namespace.value);const o=document.documentElement.clientHeight0&&(o||p==="scroll")&&t&&(document.body.style.width=`calc(100% - ${l}px)`),Xe(document.body,a.value)}),ze(()=>d())},Te=e=>{if(!e)return{onClick:Q,onMousedown:Q,onMouseup:Q};let n=!1,s=!1;return{onClick:r=>{n&&s&&e(r),n=s=!1},onMousedown:r=>{n=r.target===r.currentTarget},onMouseup:r=>{s=r.target===r.currentTarget}}},se="_trap-focus-children",T=[],ye=e=>{if(T.length===0)return;const n=T[T.length-1][se];if(n.length>0&&e.code===Qe.tab){if(n.length===1){e.preventDefault(),document.activeElement!==n[0]&&n[0].focus();return}const s=e.shiftKey,a=e.target===n[0],l=e.target===n[n.length-1];a&&s&&(e.preventDefault(),n[n.length-1].focus()),l&&!s&&(e.preventDefault(),n[0].focus())}},tn={beforeMount(e){e[se]=ge(e),T.push(e),T.length<=1&&document.addEventListener("keydown",ye)},updated(e){H(()=>{e[se]=ge(e)})},unmounted(){T.shift(),T.length===0&&document.removeEventListener("keydown",ye)}},sn=Pe({mask:{type:Boolean,default:!0},customMaskEvent:{type:Boolean,default:!1},overlayClass:{type:re([String,Array,Object])},zIndex:{type:re([String,Number])}}),an={click:e=>e instanceof MouseEvent},ln="overlay";var rn=Ee({name:"ElOverlay",props:sn,emits:an,setup(e,{slots:n,emit:s}){const a=Ce(ln),l=f=>{s("click",f)},{onClick:t,onMousedown:r,onMouseup:d}=Te(e.customMaskEvent?void 0:l);return()=>e.mask?E("div",{class:[a.b(),e.overlayClass],style:{zIndex:e.zIndex},onClick:t,onMousedown:r,onMouseup:d},[te(n,"default")],ne.STYLE|ne.CLASS|ne.PROPS,["onClick","onMouseup","onMousedown"]):Ve("div",{class:e.overlayClass,style:{zIndex:e.zIndex,position:"fixed",top:"0px",right:"0px",bottom:"0px",left:"0px"}},[te(n,"default")])}});const un=rn,dn=Ee({name:"ElMessageBox",directives:{TrapFocus:tn},components:{ElButton:We,ElFocusTrap:xe,ElInput:Je,ElOverlay:un,ElIcon:je,...Ge},inheritAttrs:!1,props:{buttonSize:{type:String,validator:en},modal:{type:Boolean,default:!0},lockScroll:{type:Boolean,default:!0},showClose:{type:Boolean,default:!0},closeOnClickModal:{type:Boolean,default:!0},closeOnPressEscape:{type:Boolean,default:!0},closeOnHashChange:{type:Boolean,default:!0},center:Boolean,draggable:Boolean,roundButton:{default:!1,type:Boolean},container:{type:String,default:"body"},boxType:{type:String,default:""}},emits:["vanish","action"],setup(e,{emit:n}){const{locale:s,zIndex:a,ns:l,size:t}=Re("message-box",L(()=>e.buttonSize)),{t:r}=s,{nextZIndex:d}=a,f=O(!1),o=He({autofocus:!0,beforeClose:null,callback:null,cancelButtonText:"",cancelButtonClass:"",confirmButtonText:"",confirmButtonClass:"",customClass:"",customStyle:{},dangerouslyUseHTMLString:!1,distinguishCancelAndClose:!1,icon:"",inputPattern:null,inputPlaceholder:"",inputType:"text",inputValue:null,inputValidator:null,inputErrorMessage:"",message:null,modalFade:!0,modalClass:"",showCancelButton:!1,showConfirmButton:!0,type:"",title:void 0,showInput:!1,action:"",confirmButtonLoading:!1,cancelButtonLoading:!1,confirmButtonDisabled:!1,editorErrorMessage:"",validateError:!1,zIndex:d()}),p=L(()=>{const u=o.type;return{[l.bm("icon",u)]:u&&pe[u]}}),w=ve(),i=ve(),N=L(()=>o.icon||pe[o.type]||""),F=L(()=>!!o.message),y=O(),U=O(),M=O(),S=O(),Y=O(),G=L(()=>o.confirmButtonClass);oe(()=>o.inputValue,async u=>{await H(),e.boxType==="prompt"&&u!==null&&V()},{immediate:!0}),oe(()=>f.value,u=>{var b,I;u&&(e.boxType!=="prompt"&&(o.autofocus?M.value=(I=(b=Y.value)==null?void 0:b.$el)!=null?I:y.value:M.value=y.value),o.zIndex=d()),e.boxType==="prompt"&&(u?H().then(()=>{var le;S.value&&S.value.$el&&(o.autofocus?M.value=(le=Se())!=null?le:y.value:M.value=y.value)}):(o.editorErrorMessage="",o.validateError=!1))});const J=L(()=>e.draggable);nn(y,U,J),be(async()=>{await H(),e.closeOnHashChange&&window.addEventListener("hashchange",B)}),he(()=>{e.closeOnHashChange&&window.removeEventListener("hashchange",B)});function B(){f.value&&(f.value=!1,H(()=>{o.action&&n("action",o.action)}))}const P=()=>{e.closeOnClickModal&&k(o.distinguishCancelAndClose?"close":"cancel")},X=Te(P),K=u=>{if(o.inputType!=="textarea")return u.preventDefault(),k("confirm")},k=u=>{var b;e.boxType==="prompt"&&u==="confirm"&&!V()||(o.action=u,o.beforeClose?(b=o.beforeClose)==null||b.call(o,u,o,B):B())},V=()=>{if(e.boxType==="prompt"){const u=o.inputPattern;if(u&&!u.test(o.inputValue||""))return o.editorErrorMessage=o.inputErrorMessage||r("el.messagebox.error"),o.validateError=!0,!1;const b=o.inputValidator;if(typeof b=="function"){const I=b(o.inputValue);if(I===!1)return o.editorErrorMessage=o.inputErrorMessage||r("el.messagebox.error"),o.validateError=!0,!1;if(typeof I=="string")return o.editorErrorMessage=I,o.validateError=!0,!1}}return o.editorErrorMessage="",o.validateError=!1,!0},Se=()=>{const u=S.value.$refs;return u.input||u.textarea},ae=()=>{k("close")},Ie=()=>{e.closeOnPressEscape&&ae()};return e.lockScroll&&on(f),{...De(o),ns:l,overlayEvent:X,visible:f,hasMessage:F,typeClass:p,contentId:w,inputId:i,btnSize:t,iconComponent:N,confirmButtonClasses:G,rootRef:y,focusStartRef:M,headerRef:U,inputRef:S,confirmRef:Y,doClose:B,handleClose:ae,onCloseRequested:Ie,handleWrapperClick:P,handleInputEnter:K,handleAction:k,t:r}}}),cn=["aria-label","aria-describedby"],fn=["aria-label"],mn=["id"];function pn(e,n,s,a,l,t){const r=A("el-icon"),d=A("close"),f=A("el-input"),o=A("el-button"),p=A("el-focus-trap"),w=A("el-overlay");return m(),h(Ne,{name:"fade-in-linear",onAfterLeave:n[11]||(n[11]=i=>e.$emit("vanish")),persisted:""},{default:v(()=>[Z(E(w,{"z-index":e.zIndex,"overlay-class":[e.ns.is("message-box"),e.modalClass],mask:e.modal},{default:v(()=>[g("div",{role:"dialog","aria-label":e.title,"aria-modal":"true","aria-describedby":e.showInput?void 0:e.contentId,class:c(`${e.ns.namespace.value}-overlay-message-box`),onClick:n[8]||(n[8]=(...i)=>e.overlayEvent.onClick&&e.overlayEvent.onClick(...i)),onMousedown:n[9]||(n[9]=(...i)=>e.overlayEvent.onMousedown&&e.overlayEvent.onMousedown(...i)),onMouseup:n[10]||(n[10]=(...i)=>e.overlayEvent.onMouseup&&e.overlayEvent.onMouseup(...i))},[E(p,{loop:"",trapped:e.visible,"focus-trap-el":e.rootRef,"focus-start-el":e.focusStartRef,onReleaseRequested:e.onCloseRequested},{default:v(()=>[g("div",{ref:"rootRef",class:c([e.ns.b(),e.customClass,e.ns.is("draggable",e.draggable),{[e.ns.m("center")]:e.center}]),style:ie(e.customStyle),tabindex:"-1",onClick:n[7]||(n[7]=q(()=>{},["stop"]))},[e.title!==null&&e.title!==void 0?(m(),x("div",{key:0,ref:"headerRef",class:c(e.ns.e("header"))},[g("div",{class:c(e.ns.e("title"))},[e.iconComponent&&e.center?(m(),h(r,{key:0,class:c([e.ns.e("status"),e.typeClass])},{default:v(()=>[(m(),h(W(e.iconComponent)))]),_:1},8,["class"])):$("v-if",!0),g("span",null,R(e.title),1)],2),e.showClose?(m(),x("button",{key:0,type:"button",class:c(e.ns.e("headerbtn")),"aria-label":e.t("el.messagebox.close"),onClick:n[0]||(n[0]=i=>e.handleAction(e.distinguishCancelAndClose?"close":"cancel")),onKeydown:n[1]||(n[1]=j(q(i=>e.handleAction(e.distinguishCancelAndClose?"close":"cancel"),["prevent"]),["enter"]))},[E(r,{class:c(e.ns.e("close"))},{default:v(()=>[E(d)]),_:1},8,["class"])],42,fn)):$("v-if",!0)],2)):$("v-if",!0),g("div",{id:e.contentId,class:c(e.ns.e("content"))},[g("div",{class:c(e.ns.e("container"))},[e.iconComponent&&!e.center&&e.hasMessage?(m(),h(r,{key:0,class:c([e.ns.e("status"),e.typeClass])},{default:v(()=>[(m(),h(W(e.iconComponent)))]),_:1},8,["class"])):$("v-if",!0),e.hasMessage?(m(),x("div",{key:1,class:c(e.ns.e("message"))},[te(e.$slots,"default",{},()=>[e.dangerouslyUseHTMLString?(m(),h(W(e.showInput?"label":"p"),{key:1,for:e.showInput?e.inputId:void 0,innerHTML:e.message},null,8,["for","innerHTML"])):(m(),h(W(e.showInput?"label":"p"),{key:0,for:e.showInput?e.inputId:void 0},{default:v(()=>[_(R(e.dangerouslyUseHTMLString?"":e.message),1)]),_:1},8,["for"]))])],2)):$("v-if",!0)],2),Z(g("div",{class:c(e.ns.e("input"))},[E(f,{id:e.inputId,ref:"inputRef",modelValue:e.inputValue,"onUpdate:modelValue":n[2]||(n[2]=i=>e.inputValue=i),type:e.inputType,placeholder:e.inputPlaceholder,"aria-invalid":e.validateError,class:c({invalid:e.validateError}),onKeydown:j(e.handleInputEnter,["enter"])},null,8,["id","modelValue","type","placeholder","aria-invalid","class","onKeydown"]),g("div",{class:c(e.ns.e("errormsg")),style:ie({visibility:e.editorErrorMessage?"visible":"hidden"})},R(e.editorErrorMessage),7)],2),[[ee,e.showInput]])],10,mn),g("div",{class:c(e.ns.e("btns"))},[e.showCancelButton?(m(),h(o,{key:0,loading:e.cancelButtonLoading,class:c([e.cancelButtonClass]),round:e.roundButton,size:e.btnSize,onClick:n[3]||(n[3]=i=>e.handleAction("cancel")),onKeydown:n[4]||(n[4]=j(q(i=>e.handleAction("cancel"),["prevent"]),["enter"]))},{default:v(()=>[_(R(e.cancelButtonText||e.t("el.messagebox.cancel")),1)]),_:1},8,["loading","class","round","size"])):$("v-if",!0),Z(E(o,{ref:"confirmRef",type:"primary",loading:e.confirmButtonLoading,class:c([e.confirmButtonClasses]),round:e.roundButton,disabled:e.confirmButtonDisabled,size:e.btnSize,onClick:n[5]||(n[5]=i=>e.handleAction("confirm")),onKeydown:n[6]||(n[6]=j(q(i=>e.handleAction("confirm"),["prevent"]),["enter"]))},{default:v(()=>[_(R(e.confirmButtonText||e.t("el.messagebox.confirm")),1)]),_:1},8,["loading","class","round","disabled","size"]),[[ee,e.showConfirmButton]])],2)],6)]),_:3},8,["trapped","focus-trap-el","focus-start-el","onReleaseRequested"])],42,cn)]),_:3},8,["z-index","overlay-class","mask"]),[[ee,e.visible]])]),_:3})}var vn=qe(dn,[["render",pn],["__file","index.vue"]]);const D=new Map,gn=e=>{let n=document.body;return e.appendTo&&(we(e.appendTo)&&(n=document.querySelector(e.appendTo)),ce(e.appendTo)&&(n=e.appendTo),ce(n)||(n=document.body)),n},yn=(e,n,s=null)=>{const a=E(vn,e,de(e.message)||Me(e.message)?{default:de(e.message)?e.message:()=>e.message}:null);return a.appContext=s,Be(a,n),gn(e).appendChild(n.firstElementChild),a.component},bn=()=>document.createElement("div"),hn=(e,n)=>{const s=bn();e.onVanish=()=>{Be(null,s),D.delete(l)},e.onAction=t=>{const r=D.get(l);let d;e.showInput?d={value:l.inputValue,action:t}:d=t,e.callback?e.callback(d,a.proxy):t==="cancel"||t==="close"?e.distinguishCancelAndClose&&t!=="cancel"?r.reject("close"):r.reject("cancel"):r.resolve(d)};const a=yn(e,s,n),l=a.proxy;for(const t in e)ue(e,t)&&!ue(l.$props,t)&&(l[t]=e[t]);return l.visible=!0,l};function z(e,n=null){if(!ke)return Promise.reject();let s;return we(e)||Me(e)?e={message:e}:s=e.callback,new Promise((a,l)=>{const t=hn(e,n??z._context);D.set(t,{options:e,callback:s,resolve:a,reject:l})})}const Cn=["alert","confirm","prompt"],En={alert:{closeOnPressEscape:!1,closeOnClickModal:!1},confirm:{showCancelButton:!0},prompt:{showCancelButton:!0,showInput:!0}};Cn.forEach(e=>{z[e]=wn(e)});function wn(e){return(n,s,a,l)=>{let t="";return Fe(s)?(a=s,t=""):Ue(s)?t="":t=s,z(Object.assign({title:t,message:n,type:"",...En[e]},a,{boxType:e}),l)}}z.close=()=>{D.forEach((e,n)=>{n.doClose()}),D.clear()};z._context=null;const C=z;C.install=e=>{C._context=e._context,e.config.globalProperties.$msgbox=C,e.config.globalProperties.$messageBox=C,e.config.globalProperties.$alert=C.alert,e.config.globalProperties.$confirm=C.confirm,e.config.globalProperties.$prompt=C.prompt};const An=C;export{An as E,un as a,Te as b,on as c,nn as u};