import{D as e,ct as t,it as n,k as r,xn as i}from"./runtime-core.esm-bundler-DkysjgTd.js";import{J as a,Tt as o,nt as s}from"./useConfigInject-z_xeO0pP.js";import{i as c,t as l}from"./button-B2y2NpJm.js";var u=()=>{let e=i(!1);return n(()=>{e.value=!0}),e},d={type:{type:String},actionFn:Function,close:Function,autofocus:Boolean,prefixCls:String,buttonProps:a(),emitEvent:Boolean,quitOnNullishReturnValue:Boolean};function f(e){return!!(e&&e.then)}var p=r({compatConfig:{MODE:3},name:`ActionButton`,props:d,setup(r,a){let{slots:d}=a,p=i(!1),m=i(),h=i(!1),g,_=u();t(()=>{r.autofocus&&(g=setTimeout(()=>{var e,t;return(t=(e=s(m.value))==null?void 0:e.focus)==null?void 0:t.call(e)}))}),n(()=>{clearTimeout(g)});let v=function(){var e,t=[...arguments];(e=r.close)==null||e.call(r,...t)},y=e=>{f(e)&&(h.value=!0,e.then(function(){_.value||(h.value=!1),v(...arguments),p.value=!1},e=>(_.value||(h.value=!1),p.value=!1,Promise.reject(e))))},b=e=>{let{actionFn:t}=r;if(p.value)return;if(p.value=!0,!t){v();return}let n;if(r.emitEvent){if(n=t(e),r.quitOnNullishReturnValue&&!f(n)){p.value=!1,v(e);return}}else if(t.length)n=t(r.close),p.value=!1;else if(n=t(),!n){v();return}y(n)};return()=>{let{type:t,prefixCls:n,buttonProps:i}=r;return e(l,o(o(o({},c(t)),{},{onClick:b,loading:h.value,prefixCls:n},i),{},{ref:m}),d)}}});export{p as t};