| 12 |
- import{T as e,g as a}from"./index-B_-K9rXC.js";import{k as t,c as u,q as l,w as s,p as r,P as i,D as n,S as v,X as d,n as o}from"./vendor-CgKklJ4r.js";import{_ as p}from"./_plugin-vue_export-helper-BCo6x5W8.js";const f="easeOutExpo",c=p(t({__name:"index",props:{target:{default:0},duration:{default:2e3},autoStart:{type:Boolean,default:!0},decimals:{default:0},decimal:{default:"."},separator:{default:""},prefix:{default:""},suffix:{default:""},easing:{default:f},disabled:{type:Boolean,default:!1}},emits:["started","finished","paused","reset"],setup(t,{expose:p,emit:c}){const m=Number.EPSILON,g=t,b=c,x=(e,a,t)=>Number.isFinite(e)?e:t,h=(e,a,t)=>Math.max(a,Math.min(e,t)),S=u((()=>x(g.target,0,0))),_=u((()=>h(x(g.duration,0,2e3),100,6e4))),F=u((()=>h(x(g.decimals,0,0),0,10))),N=u((()=>{const a=g.easing;return a in e?a:f})),M=l(0),$=l(S.value),j=l(!1),B=l(!1),P=l(0),y=a(M,{duration:_,transition:u((()=>e[N.value])),onStarted:()=>{j.value=!0,B.value=!1,b("started",$.value)},onFinished:()=>{j.value=!1,B.value=!1,b("finished",$.value)}}),E=u((()=>{const e=B.value?P.value:y.value;if(!Number.isFinite(e))return`${g.prefix}0${g.suffix}`;const a=((e,a,t,u)=>{let l=a>0?e.toFixed(a):Math.floor(e).toString();if("."!==t&&l.includes(".")&&(l=l.replace(".",t)),u){const e=l.split(t);e[0]=e[0].replace(/\B(?=(\d{3})+(?!\d))/g,u),l=e.join(t)}return l})(e,F.value,g.decimal,g.separator);return`${g.prefix}${a}${g.suffix}`})),I=()=>{B.value=!1,P.value=0},O=e=>{if(g.disabled)return;const a=void 0!==e?e:$.value;Number.isFinite(a)&&($.value=a,(e=>{const a=B.value?P.value:y.value;return Math.abs(a-e)<m})(a)||(B.value&&(M.value=P.value,I()),o((()=>{M.value=a}))))},T=()=>{(j.value||B.value)&&(M.value=0,I(),b("paused",0))};return s(S,(e=>{g.autoStart&&!g.disabled?O(e):$.value=e}),{immediate:g.autoStart&&!g.disabled}),s((()=>g.disabled),(e=>{e&&j.value&&T()})),r((()=>{j.value&&T()})),p({start:O,pause:()=>{j.value&&!B.value&&(B.value=!0,P.value=y.value,M.value=P.value,b("paused",P.value))},reset:(e=0)=>{const a=x(e,0,0);M.value=a,$.value=a,I(),b("reset")},stop:T,setTarget:e=>{Number.isFinite(e)&&($.value=e,!j.value&&!g.autoStart||g.disabled||O(e))},get isRunning(){return j.value},get isPaused(){return B.value},get currentValue(){return B.value?P.value:y.value},get targetValue(){return $.value},get progress(){const e=B.value?P.value:y.value,a=$.value;return 0===a?0===e?1:0:Math.abs(e/a)}}),(e,a)=>(n(),i("span",{class:v(["art-count-to",{"is-running":j.value}])},d(E.value),3))}}),[["__scopeId","data-v-3323b7a2"]]);export{c as A};
|