| 1 |
- var m=(t,n,a)=>new Promise((o,u)=>{var l=e=>{try{r(a.next(e))}catch(c){u(c)}},s=e=>{try{r(a.throw(e))}catch(c){u(c)}},r=e=>e.done?o(e.value):Promise.resolve(e.value).then(l,s);r((a=a.apply(t,n)).next())});import{a7 as h,Z as z,dw as F,a8 as S,e as g,bM as A,J as k,f as d,r as f,bB as N,d as w,B as T,l as C,a4 as D,j as y,k as p,o as b,q as _,y as v,v as P,w as j,z as $,c as q,b0 as O,D as R,ad as E,C as V,aq as J,g as L,bP as B}from"./index-610a1d46.js";function M(t,n="value",a="change",o){const u=h(),l=u==null?void 0:u.emit,s=z({value:t[n]}),r=F(s),e=i=>{s.value=i};return S(()=>{s.value=t[n]}),[g({get(){return s.value},set(i){A(i,r.value)||(s.value=i,l==null||l(a,i,...k(d(o))||[]))}}),e,r]}function U(t){const n=f(t),a=f(!1);let o;function u(){o&&window.clearInterval(o)}function l(){a.value=!1,u(),o=null}function s(){d(a)||o||(a.value=!0,o=setInterval(()=>{d(n)===1?(l(),n.value=t):n.value-=1},1e3))}function r(){n.value=t,l()}function e(){r(),s()}return N(()=>{r()}),{start:s,reset:r,restart:e,clear:u,stop:l,currentCount:n,isStart:a}}const Z={value:{type:[Object,Number,String,Array]},count:{type:Number,default:60},beforeStartFunc:{type:Function,default:null}},G=w({name:"CountButton",components:{Button:T},props:Z,setup(t){const n=f(!1),{currentCount:a,isStart:o,start:u,reset:l}=U(t.count),s=g(()=>d(o)?C.countdown.sendText:C.countdown.normalText);S(()=>{t.value===void 0&&l()});function r(){return m(this,null,function*(){const{beforeStartFunc:e}=t;if(e&&D(e)){n.value=!0;try{(yield e())&&u()}finally{n.value=!1}}else u()})}return{handleStart:r,currentCount:a,loading:n,getButtonText:s,isStart:o}}});function H(t,n,a,o,u,l){const s=p("Button");return b(),_(s,$(t.$attrs,{disabled:t.isStart,onClick:t.handleStart,loading:t.loading}),{default:v(()=>[P(j(t.getButtonText),1)]),_:1},16,["disabled","onClick","loading"])}const I=y(G,[["render",H]]),K={value:{type:String},size:{type:String,validator:t=>["default","large","small"].includes(t)},count:{type:Number,default:60},sendCodeApi:{type:Function,default:null}},Q=w({name:"CountDownInput",components:{CountButton:I},inheritAttrs:!1,props:K,setup(t){const{prefixCls:n}=q("countdown-input"),[a]=M(t);return{prefixCls:n,state:a}}});function W(t,n,a,o,u,l){const s=p("CountButton"),r=p("a-input");return b(),_(r,$(t.$attrs,{class:t.prefixCls,size:t.size,value:t.state}),O({addonAfter:v(()=>[L(s,{size:t.size,count:t.count,value:t.state,beforeStartFunc:t.sendCodeApi},null,8,["size","count","value","beforeStartFunc"])]),_:2},[R(Object.keys(t.$slots).filter(e=>e!=="addonAfter"),e=>({name:e,fn:v(c=>[E(t.$slots,e,V(J(c||{})))])}))]),1040,["class","size","value"])}const X=y(Q,[["render",W]]),tt=B(X);B(I);export{tt as C,M as u};
|