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