import{aV as T,d as O,l as N,bZ as z,bK as Y,bN as S,f as o,aY as p,by as b,b_ as M,b$ as V,bE as W,e as A,bF as Z,K as k,c0 as j,bA as q,c1 as G,bO as J,c2 as Q,n as X,bS as F,bL as ee,bY as te,P as ne,c3 as oe,c4 as D,c5 as ae,c6 as le,c7 as se,c8 as ce,c9 as re,ca as ie,cb as ue}from"./index-d0809202.js";const[I,_]=T("action-bar"),K=Symbol(I),de={placeholder:Boolean,safeAreaInsetBottom:S};var fe=O({name:I,props:de,setup(e,{slots:a}){const n=N(),s=z(n,_),{linkChildren:c}=Y(K);c();const f=()=>{var m;return o("div",{ref:n,class:[_(),{"van-safe-area-bottom":e.safeAreaInsetBottom}]},[(m=a.default)==null?void 0:m.call(a)])};return()=>e.placeholder?s(f):f()}});const me=p(fe),[Be,ge]=T("action-bar-button"),be=b({},M,{type:String,text:String,icon:String,color:String,loading:Boolean,disabled:Boolean});var he=O({name:Be,props:be,setup(e,{slots:a}){const n=V(),{parent:s,index:c}=W(K),f=A(()=>{if(s){const r=s.children[c.value-1];return!(r&&"isButton"in r)}}),m=A(()=>{if(s){const r=s.children[c.value+1];return!(r&&"isButton"in r)}});return Z({isButton:!0}),()=>{const{type:r,icon:B,text:g,color:w,loading:v,disabled:y}=e;return o(k,{class:ge([r,{last:m.value,first:f.value}]),size:"large",type:r,icon:B,color:w,loading:v,disabled:y,onClick:n},{default:()=>[a.default?a.default():g]})}}});const E=p(he),[Ce,i,C]=T("dialog"),we=b({},j,{title:String,theme:String,width:q,message:[String,Function],callback:Function,allowHtml:Boolean,className:G,transition:J("van-dialog-bounce"),messageAlign:String,closeOnPopstate:S,showCancelButton:Boolean,cancelButtonText:String,cancelButtonColor:String,cancelButtonDisabled:Boolean,confirmButtonText:String,confirmButtonColor:String,confirmButtonDisabled:Boolean,showConfirmButton:S,closeOnClickOverlay:Boolean}),ve=[...Q,"transition","closeOnPopstate"];var R=O({name:Ce,props:we,emits:["confirm","cancel","keydown","update:show"],setup(e,{emit:a,slots:n}){const s=N(),c=X({confirm:!1,cancel:!1}),f=t=>a("update:show",t),m=t=>{var l;f(!1),(l=e.callback)==null||l.call(e,t)},r=t=>()=>{e.show&&(a(t),e.beforeClose?(c[t]=!0,ce(e.beforeClose,{args:[t],done(){m(t),c[t]=!1},canceled(){c[t]=!1}})):m(t))},B=r("cancel"),g=r("confirm"),w=oe(t=>{var l,u;if(t.target!==((u=(l=s.value)==null?void 0:l.popupRef)==null?void 0:u.value))return;({Enter:e.showConfirmButton?g:D,Escape:e.showCancelButton?B:D})[t.key](),a("keydown",t)},["enter","esc"]),v=()=>{const t=n.title?n.title():e.title;if(t)return o("div",{class:i("header",{isolated:!e.message&&!n.default})},[t])},y=t=>{const{message:l,allowHtml:u,messageAlign:d}=e,h=i("message",{"has-title":t,[d]:d}),P=ae(l)?l():l;return u&&typeof P=="string"?o("div",{class:h,innerHTML:P},null):o("div",{class:h},[P])},$=()=>{if(n.default)return o("div",{class:i("content")},[n.default()]);const{title:t,message:l,allowHtml:u}=e;if(l){const d=!!(t||n.title);return o("div",{key:u?1:0,class:i("content",{isolated:!d})},[y(d)])}},H=()=>o("div",{class:[se,i("footer")]},[e.showCancelButton&&o(k,{size:"large",text:e.cancelButtonText||C("cancel"),class:i("cancel"),style:{color:e.cancelButtonColor},loading:c.cancel,disabled:e.cancelButtonDisabled,onClick:B},null),e.showConfirmButton&&o(k,{size:"large",text:e.confirmButtonText||C("confirm"),class:[i("confirm"),{[le]:e.showCancelButton}],style:{color:e.confirmButtonColor},loading:c.confirm,disabled:e.confirmButtonDisabled,onClick:g},null)]),L=()=>o(me,{class:i("footer")},{default:()=>[e.showCancelButton&&o(E,{type:"warning",text:e.cancelButtonText||C("cancel"),class:i("cancel"),color:e.cancelButtonColor,loading:c.cancel,disabled:e.cancelButtonDisabled,onClick:B},null),e.showConfirmButton&&o(E,{type:"danger",text:e.confirmButtonText||C("confirm"),class:i("confirm"),color:e.confirmButtonColor,loading:c.confirm,disabled:e.confirmButtonDisabled,onClick:g},null)]}),U=()=>n.footer?n.footer():e.theme==="round-button"?L():H();return()=>{const{width:t,title:l,theme:u,message:d,className:h}=e;return o(ne,F({ref:s,role:"dialog",class:[i([u]),h],style:{width:te(t)},tabindex:0,"aria-labelledby":l||d,onKeydown:w,"onUpdate:show":f},ee(e,ve)),{default:()=>[v(),$(),U()]})}}});let x;const ye={title:"",width:"",theme:null,message:"",overlay:!0,callback:null,teleport:"body",className:"",allowHtml:!1,lockScroll:!0,transition:void 0,beforeClose:null,overlayClass:"",overlayStyle:void 0,messageAlign:"",cancelButtonText:"",cancelButtonColor:null,cancelButtonDisabled:!1,confirmButtonText:"",confirmButtonColor:null,confirmButtonDisabled:!1,showConfirmButton:!0,showCancelButton:!1,closeOnPopstate:!0,closeOnClickOverlay:!1};let Pe=b({},ye);function Se(){({instance:x}=ie({setup(){const{state:a,toggle:n}=ue();return()=>o(R,F(a,{"onUpdate:show":n}),null)}}))}function ke(e){return re?new Promise((a,n)=>{x||Se(),x.open(b({},Pe,e,{callback:s=>{(s==="confirm"?a:n)(s)}}))}):Promise.resolve()}const Te=e=>ke(b({showCancelButton:!0},e));p(R);export{Te as a,ke as s};