vue3-odometer-counter
Advanced tools
Comparing version 0.0.5 to 0.0.6
@@ -500,2 +500,6 @@ import { defineComponent, ref, watch, onMounted, onUnmounted, openBlock, createElementBlock } from "vue"; | ||
}, | ||
minIntegerLength: { | ||
type: Number, | ||
default: 7 | ||
}, | ||
format: { | ||
@@ -555,2 +559,3 @@ type: String, | ||
value: props.value, | ||
minIntegerLength: props.minIntegerLength, | ||
format: props.format, | ||
@@ -557,0 +562,0 @@ theme: props.theme, |
@@ -1,1 +0,1 @@ | ||
(function(g,d){typeof exports=="object"&&typeof module!="undefined"?d(exports,require("vue")):typeof define=="function"&&define.amd?define(["exports","vue"],d):(g=typeof globalThis!="undefined"?globalThis:g||self,d(g.Vue3Odometer={},g.Vue))})(this,function(g,d){"use strict";function Y(m){var M=typeof m;return m!=null&&(M=="object"||M=="function")}const Z=["[object AsyncFunction]","[object Function]","[object GeneratorFunction]","[object Proxy]"];function a(m){if(!Y(m))return!1;var M=Object.prototype.toString.call(m);return Z.includes(M)}var O={exports:{}};(function(m,M){const p='<span class="odometer-ribbon"><span class="odometer-ribbon-inner">'+'<span class="odometer-value"></span>'+"</span></span>",i='<span class="odometer-digit"><span class="odometer-digit-spacer">8</span><span class="odometer-digit-inner">'+p+"</span></span>",w='<span class="odometer-formatting-mark"></span>',I="(,ddd).dd",F=0,L=/^\(?([^)]*)\)?(?:(.)(D*)(d*))?$/,R=30,H=2e3,N=20,k=2,q=.5,W=1e3/R,j=1e3/N,U="transitionend webkitTransitionEnd oTransitionEnd otransitionend MSTransitionEnd",_=s=>{const t=document.createElement("div");return t.innerHTML=s,t.children[0]},x=(s,...t)=>s.classList.remove(...t),v=(s,...t)=>(x(s,...t),s.classList.add(...t)),C=(s,t)=>s.dispatchEvent(new CustomEvent(t,{bubbles:!0,cancelable:!0})),E=()=>window.performance.now(),B=(s,t=0)=>t?(s*=Math.pow(10,t),s+=.5,s=Math.floor(s),s/Math.pow(10,t)):Math.round(s),A=s=>s<0?Math.ceil(s):Math.floor(s);class l{constructor(t){if(this.options=t,this.el=this.options.el,this.el.odometer)return this.el.odometer;this.el.odometer=this;for(let r in l.options){const e=l.options[r];this.options[r]==null&&(this.options[r]=e)}this.options.duration==null&&(this.options.duration=H),this.MAX_VALUES=this.options.duration/W/k|0,this.resetFormat(),this.value=this.cleanValue(this.options.value!=null?this.options.value:""),this.renderInside(),this.render();try{for(let r of["innerHTML","innerText","textContent"])this.el[r]!=null&&(e=>Object.defineProperty(this.el,e,{get:()=>e==="innerHTML"?this.inside.outerHTML:this.inside.innerText!=null?this.inside.innerText:this.inside.textContent,set:n=>this.update(n)}))(r)}catch{this.watchForMutations()}}static init(){const t=document.querySelectorAll(l.options.selector||".odometer");return Array.from(t).map(r=>r.odometer=new l({el:r,value:r.innerText!=null?r.innerText:r.textContent}))}renderInside(){return this.inside=document.createElement("div"),this.inside.className="odometer-inside",this.el.innerHTML="",this.el.appendChild(this.inside)}watchForMutations(){try{return this.observer||(this.observer=new MutationObserver(t=>{const r=this.el.innerText;return this.renderInside(),this.render(this.value),this.update(r)})),this.watchMutations=!0,this.startWatchingMutations()}catch{}}startWatchingMutations(){if(this.watchMutations)return this.observer.observe(this.el,{childList:!0})}stopWatchingMutations(){return this.observer&&this.observer.disconnect()}cleanValue(t){return typeof t=="string"&&(t=t.replace(this.format.radix||".","<radix>"),t=t.replace(/[.,]/g,""),t=t.replace("<radix>","."),t=parseFloat(t,10)||0),B(t,this.format.precision)}bindTransitionEnd(){if(this.transitionEndBound)return;this.transitionEndBound=!0;let t=!1;return U.split(" ").map(r=>this.el.addEventListener(r,()=>(t||(t=!0,setTimeout(()=>(this.render(),t=!1,C(this.el,"odometerdone")),0)),!0)))}resetFormat(){let t=this.options.format||I;t||(t="d");const r=L.exec(t);if(!r)throw new Error("Odometer: Unparsable digit format");const[e,n,o,u]=r.slice(1,5);let c=o?o.length:0;const b=c+(u?u.length:0);return this.format={repeating:e,radix:n,precision:b,fractional:c}}render(t=this.value){this.stopWatchingMutations(),this.resetFormat(),this.inside.innerHTML="";let{theme:r}=this.options;const e=[];for(let o of this.el.classList)if(o.length){var n;if(n=/^odometer-theme-(.+)$/.exec(o)){r=n[1];continue}if(/^odometer(-|$)/.test(o))continue;e.push(o)}return e.push("odometer"),r?e.push(`odometer-theme-${r}`):e.push("odometer-auto-theme"),this.el.className=e.join(" "),this.ribbons={},this.formatDigits(t),this.startWatchingMutations()}formatDigits(t){let r;if(this.digits=[],this.options.formatFunction){const e=this.options.formatFunction(t);for(let n of e.split("").reverse())n.match(/[0-9]/)?(r=this.renderDigit(),r.querySelector(".odometer-value").innerHTML=n,this.digits.push(r),this.insertDigit(r)):this.addSpacer(n)}else{let e=Math.abs(t),n=Math.max(this.format.fractional,this.getFractionalDigitCount(e));n&&(e=Math.round(e*Math.pow(10,n)));let o=0;for(;e>0;)this.addDigit((e%10).toString(),o>=n),e=Math.floor(e/10),o++,o===n&&this.addDigit(".",!0);let u=this.options.minIntegerLength||F,c=o-n;for(;c++<u;)this.addDigit(0,!0);t<0&&this.addDigit("-",!0)}}update(t){let r=t-this.value;if(t=this.cleanValue(t),!!r)return x(this.el,"odometer-animating-up","odometer-animating-down","odometer-animating"),r>0?v(this.el,"odometer-animating-up"):v(this.el,"odometer-animating-down"),this.stopWatchingMutations(),this.animate(t),this.startWatchingMutations(),setTimeout(()=>(this.el.offsetHeight,v(this.el,"odometer-animating")),0),this.value=t}renderDigit(){return _(i)}insertDigit(t,r){return r!=null?this.inside.insertBefore(t,r):this.inside.children.length?this.inside.insertBefore(t,this.inside.children[0]):this.inside.appendChild(t)}addSpacer(t,r,...e){const n=_(w);return n.innerHTML=t,e&&v(n,...e),this.insertDigit(n,r)}addDigit(t,r=!0){if(t==="-")return this.addSpacer(t,null,"odometer-negation-mark");if(t===".")return this.addSpacer(this.format.radix||".",null,"odometer-radix-mark");if(r){let n=!1;for(;;){if(!this.format.repeating.length){if(n)throw new Error("Bad odometer format without digits");this.resetFormat(),n=!0}const o=this.format.repeating[this.format.repeating.length-1];if(this.format.repeating=this.format.repeating.substring(0,this.format.repeating.length-1),o==="d")break;this.addSpacer(o)}}const e=this.renderDigit();return e.querySelector(".odometer-value").innerHTML=t,this.digits.push(e),this.insertDigit(e)}animate(t){return this.options.animation==="count"?this.animateCount(t):this.animateSlide(t)}animateCount(t){let r=+t-this.value,e=E(),n;if(!r)return;const o=e;let u=this.value;return(n=()=>{if(E()-o>this.options.duration)return this.value=t,this.render(),C(this.el,"odometerdone");const c=E()-e;if(c>j){e=E();const b=c/this.options.duration;u+=r*b,this.render(Math.round(u))}return requestAnimationFrame(n)})()}getDigitCount(...t){for(let e=0;e<t.length;e++){const n=t[e];t[e]=Math.abs(n)}const r=Math.max(...t);return Math.ceil(Math.log(r+1)/Math.log(10))}getFractionalDigitCount(...t){const r=/^\-?\d*\.(\d*?)0*$/;for(let e=0;e<t.length;e++){const n=t[e];t[e]=n.toString();const o=r.exec(t[e]);o?t[e]=o[1].length:t[e]=0}return Math.max(...t)}resetDigits(){return this.digits=[],this.ribbons=[],this.inside.innerHTML="",this.resetFormat()}animateSlide(t){let r,e,n,o,u,c,b,D,S=this.value;const T=Math.max(this.format.fractional,this.getFractionalDigitCount(S,t));if(T&&(t=Math.round(t*Math.pow(10,T)),S=Math.round(S*Math.pow(10,T))),!(r=t-S))return;this.bindTransitionEnd();let tt=this.options.minIntegerLength||F;const V=Math.max(this.getDigitCount(S,t),tt+T),z=[];let J=0;for(D=0,o=D,b=V,c=0<=b;c?D<b:D>b;c?D++:D--,o=D){u=A(S/Math.pow(10,V-o-1));const h=A(t/Math.pow(10,V-o-1)),f=h-u;if(Math.abs(f)>this.MAX_VALUES){n=[];const et=f/(this.MAX_VALUES+this.MAX_VALUES*J*q);let y=u;for(;f>0&&y<h||f<0&&y>h;)n.push(Math.round(y)),y+=et;n[n.length-1]!==h&&n.push(h),J++}else n=P(u,h,!0);for(o=0;o<n.length;o++)e=n[o],n[o]=Math.abs(e%10);z.push(n)}this.resetDigits();const Q=z.reverse();for(o=0;o<Q.length;o++){n=Q[o],this.digits[o]||this.addDigit(" ",o>=T),this.ribbons[o]==null&&(this.ribbons[o]=this.digits[o].querySelector(".odometer-ribbon-inner")),this.ribbons[o].innerHTML="",r<0&&(n=n.reverse());for(let h=0;h<n.length;h++){e=n[h];const f=document.createElement("div");f.className="odometer-value",f.innerHTML=e,this.ribbons[o].appendChild(f),h===n.length-1&&v(f,"odometer-last-value"),h===0&&v(f,"odometer-first-value")}}u<0&&this.addDigit("-");const G=this.inside.querySelector(".odometer-radix-mark");if(G&&G.parent.removeChild(G),T)return this.addSpacer(this.format.radix,this.digits[T-1],"odometer-radix-mark")}}l.options=window.odometerOptions||{},document.addEventListener("DOMContentLoaded",()=>{if(l.options.auto!==!1)return l.init()}),M!=null?m.exports=l:window.Odometer=l;function P(s,t,r){let e=[],n=s<t?1:-1,o=r?t+n:t;for(;s!==o;)e.push(s),s+=n;return e}})(O,O.exports);var $=O.exports;const X=d.defineComponent({__name:"Odometer",props:{value:{type:Number,required:!1,default:0},format:{type:String,required:!1},theme:{type:String,required:!1,default:"default"},duration:{type:Number,required:!1},animation:{type:String,required:!1},formatFunction:{type:Function,required:!1}},emits:["ready"],setup(m,{expose:M,emit:K}){const p=m,i=d.ref(null),w=d.ref(null);d.watch(()=>p.value,e=>{i.value&&a(i.value.update)&&i.value.update(e)},{deep:!1});function I(){typeof window!="undefined"&&(window.odometerOptions?window.odometerOptions.auto=!1:window.odometerOptions={auto:!1})}function F(){if(i.value)return;I();const e=new $({el:w.value,value:p.value,format:p.format,theme:p.theme,duration:p.duration,animation:p.animation,formatFunction:p.formatFunction});e.render(),K("ready",e,$),i.value=e}function L(){i.value=null}function R(){i.value&&a(i.value.renderInside)&&i.value.renderInside()}function H(){i.value&&a(i.value.watchForMutations)&&i.value.watchForMutations()}function N(){i.value&&a(i.value.startWatchingMutations)&&i.value.startWatchingMutations()}function k(){i.value&&a(i.value.stopWatchingMutations)&&i.value.stopWatchingMutations()}function q(e){i.value&&a(i.value.cleanValue)&&i.value.cleanValue(e)}function W(){i.value&&a(i.value.bindTransitionEnd)&&i.value.bindTransitionEnd()}function j(){i.value&&a(i.value.resetFormat)&&i.value.resetFormat()}function U(){i.value&&a(i.value.renderDigit)&&i.value.renderDigit()}function _(e){i.value&&a(i.value.formatDigits)&&i.value.formatDigits(e)}function x(e,n){i.value&&a(i.value.insertDigit)&&i.value.insertDigit(e,n)}function v(e,n){i.value&&a(i.value.addDigit)&&i.value.addDigit(e,n)}function C(e,n,o){i.value&&a(i.value.addSpacer)&&i.value.addSpacer(e,n,o)}function E(e){i.value&&a(i.value.animate)&&i.value.animate(e)}function B(e){i.value&&a(i.value.animateCount)&&i.value.animateCount(e)}function A(){i.value&&a(i.value.getDigitCount)&&i.value.getDigitCount()}function l(){i.value&&a(i.value.getFractionalDigitCount)&&i.value.getFractionalDigitCount()}function P(){i.value&&a(i.value.resetDigits)&&i.value.resetDigits()}function s(e){i.value&&a(i.value.animateSlide)&&i.value.animateSlide(e)}function t(e){i.value&&a(i.value.render)&&i.value.render(e)}function r(e){i.value&&a(i.value.update)&&i.value.update(e)}return d.onMounted(()=>{F()}),d.onUnmounted(()=>{L()}),M({instance:i,init:F,uninit:L,renderInside:R,watchForMutations:H,startWatchingMutations:N,stopWatchingMutations:k,cleanValue:q,bindTransitionEnd:W,resetFormat:j,renderDigit:U,formatDigits:_,insertDigit:x,addDigit:v,addSpacer:C,animate:E,animateCount:B,getDigitCount:A,getFractionalDigitCount:l,resetDigits:P,animateSlide:s,render:t,update:r}),(e,n)=>(d.openBlock(),d.createElementBlock("span",{ref_key:"numRef",ref:w},null,512))}});g.Odometer=X,g.default=X,Object.defineProperties(g,{__esModule:{value:!0},[Symbol.toStringTag]:{value:"Module"}})}); | ||
(function(p,d){typeof exports=="object"&&typeof module!="undefined"?d(exports,require("vue")):typeof define=="function"&&define.amd?define(["exports","vue"],d):(p=typeof globalThis!="undefined"?globalThis:p||self,d(p.Vue3Odometer={},p.Vue))})(this,function(p,d){"use strict";function Y(g){var M=typeof g;return g!=null&&(M=="object"||M=="function")}const Z=["[object AsyncFunction]","[object Function]","[object GeneratorFunction]","[object Proxy]"];function a(g){if(!Y(g))return!1;var M=Object.prototype.toString.call(g);return Z.includes(M)}var I={exports:{}};(function(g,M){const f='<span class="odometer-ribbon"><span class="odometer-ribbon-inner">'+'<span class="odometer-value"></span>'+"</span></span>",i='<span class="odometer-digit"><span class="odometer-digit-spacer">8</span><span class="odometer-digit-inner">'+f+"</span></span>",L='<span class="odometer-formatting-mark"></span>',O="(,ddd).dd",F=0,w=/^\(?([^)]*)\)?(?:(.)(D*)(d*))?$/,R=30,H=2e3,N=20,k=2,q=.5,W=1e3/R,j=1e3/N,U="transitionend webkitTransitionEnd oTransitionEnd otransitionend MSTransitionEnd",_=s=>{const t=document.createElement("div");return t.innerHTML=s,t.children[0]},x=(s,...t)=>s.classList.remove(...t),v=(s,...t)=>(x(s,...t),s.classList.add(...t)),C=(s,t)=>s.dispatchEvent(new CustomEvent(t,{bubbles:!0,cancelable:!0})),E=()=>window.performance.now(),B=(s,t=0)=>t?(s*=Math.pow(10,t),s+=.5,s=Math.floor(s),s/Math.pow(10,t)):Math.round(s),y=s=>s<0?Math.ceil(s):Math.floor(s);class l{constructor(t){if(this.options=t,this.el=this.options.el,this.el.odometer)return this.el.odometer;this.el.odometer=this;for(let r in l.options){const e=l.options[r];this.options[r]==null&&(this.options[r]=e)}this.options.duration==null&&(this.options.duration=H),this.MAX_VALUES=this.options.duration/W/k|0,this.resetFormat(),this.value=this.cleanValue(this.options.value!=null?this.options.value:""),this.renderInside(),this.render();try{for(let r of["innerHTML","innerText","textContent"])this.el[r]!=null&&(e=>Object.defineProperty(this.el,e,{get:()=>e==="innerHTML"?this.inside.outerHTML:this.inside.innerText!=null?this.inside.innerText:this.inside.textContent,set:n=>this.update(n)}))(r)}catch{this.watchForMutations()}}static init(){const t=document.querySelectorAll(l.options.selector||".odometer");return Array.from(t).map(r=>r.odometer=new l({el:r,value:r.innerText!=null?r.innerText:r.textContent}))}renderInside(){return this.inside=document.createElement("div"),this.inside.className="odometer-inside",this.el.innerHTML="",this.el.appendChild(this.inside)}watchForMutations(){try{return this.observer||(this.observer=new MutationObserver(t=>{const r=this.el.innerText;return this.renderInside(),this.render(this.value),this.update(r)})),this.watchMutations=!0,this.startWatchingMutations()}catch{}}startWatchingMutations(){if(this.watchMutations)return this.observer.observe(this.el,{childList:!0})}stopWatchingMutations(){return this.observer&&this.observer.disconnect()}cleanValue(t){return typeof t=="string"&&(t=t.replace(this.format.radix||".","<radix>"),t=t.replace(/[.,]/g,""),t=t.replace("<radix>","."),t=parseFloat(t,10)||0),B(t,this.format.precision)}bindTransitionEnd(){if(this.transitionEndBound)return;this.transitionEndBound=!0;let t=!1;return U.split(" ").map(r=>this.el.addEventListener(r,()=>(t||(t=!0,setTimeout(()=>(this.render(),t=!1,C(this.el,"odometerdone")),0)),!0)))}resetFormat(){let t=this.options.format||O;t||(t="d");const r=w.exec(t);if(!r)throw new Error("Odometer: Unparsable digit format");const[e,n,o,u]=r.slice(1,5);let c=o?o.length:0;const b=c+(u?u.length:0);return this.format={repeating:e,radix:n,precision:b,fractional:c}}render(t=this.value){this.stopWatchingMutations(),this.resetFormat(),this.inside.innerHTML="";let{theme:r}=this.options;const e=[];for(let o of this.el.classList)if(o.length){var n;if(n=/^odometer-theme-(.+)$/.exec(o)){r=n[1];continue}if(/^odometer(-|$)/.test(o))continue;e.push(o)}return e.push("odometer"),r?e.push(`odometer-theme-${r}`):e.push("odometer-auto-theme"),this.el.className=e.join(" "),this.ribbons={},this.formatDigits(t),this.startWatchingMutations()}formatDigits(t){let r;if(this.digits=[],this.options.formatFunction){const e=this.options.formatFunction(t);for(let n of e.split("").reverse())n.match(/[0-9]/)?(r=this.renderDigit(),r.querySelector(".odometer-value").innerHTML=n,this.digits.push(r),this.insertDigit(r)):this.addSpacer(n)}else{let e=Math.abs(t),n=Math.max(this.format.fractional,this.getFractionalDigitCount(e));n&&(e=Math.round(e*Math.pow(10,n)));let o=0;for(;e>0;)this.addDigit((e%10).toString(),o>=n),e=Math.floor(e/10),o++,o===n&&this.addDigit(".",!0);let u=this.options.minIntegerLength||F,c=o-n;for(;c++<u;)this.addDigit(0,!0);t<0&&this.addDigit("-",!0)}}update(t){let r=t-this.value;if(t=this.cleanValue(t),!!r)return x(this.el,"odometer-animating-up","odometer-animating-down","odometer-animating"),r>0?v(this.el,"odometer-animating-up"):v(this.el,"odometer-animating-down"),this.stopWatchingMutations(),this.animate(t),this.startWatchingMutations(),setTimeout(()=>(this.el.offsetHeight,v(this.el,"odometer-animating")),0),this.value=t}renderDigit(){return _(i)}insertDigit(t,r){return r!=null?this.inside.insertBefore(t,r):this.inside.children.length?this.inside.insertBefore(t,this.inside.children[0]):this.inside.appendChild(t)}addSpacer(t,r,...e){const n=_(L);return n.innerHTML=t,e&&v(n,...e),this.insertDigit(n,r)}addDigit(t,r=!0){if(t==="-")return this.addSpacer(t,null,"odometer-negation-mark");if(t===".")return this.addSpacer(this.format.radix||".",null,"odometer-radix-mark");if(r){let n=!1;for(;;){if(!this.format.repeating.length){if(n)throw new Error("Bad odometer format without digits");this.resetFormat(),n=!0}const o=this.format.repeating[this.format.repeating.length-1];if(this.format.repeating=this.format.repeating.substring(0,this.format.repeating.length-1),o==="d")break;this.addSpacer(o)}}const e=this.renderDigit();return e.querySelector(".odometer-value").innerHTML=t,this.digits.push(e),this.insertDigit(e)}animate(t){return this.options.animation==="count"?this.animateCount(t):this.animateSlide(t)}animateCount(t){let r=+t-this.value,e=E(),n;if(!r)return;const o=e;let u=this.value;return(n=()=>{if(E()-o>this.options.duration)return this.value=t,this.render(),C(this.el,"odometerdone");const c=E()-e;if(c>j){e=E();const b=c/this.options.duration;u+=r*b,this.render(Math.round(u))}return requestAnimationFrame(n)})()}getDigitCount(...t){for(let e=0;e<t.length;e++){const n=t[e];t[e]=Math.abs(n)}const r=Math.max(...t);return Math.ceil(Math.log(r+1)/Math.log(10))}getFractionalDigitCount(...t){const r=/^\-?\d*\.(\d*?)0*$/;for(let e=0;e<t.length;e++){const n=t[e];t[e]=n.toString();const o=r.exec(t[e]);o?t[e]=o[1].length:t[e]=0}return Math.max(...t)}resetDigits(){return this.digits=[],this.ribbons=[],this.inside.innerHTML="",this.resetFormat()}animateSlide(t){let r,e,n,o,u,c,b,D,S=this.value;const T=Math.max(this.format.fractional,this.getFractionalDigitCount(S,t));if(T&&(t=Math.round(t*Math.pow(10,T)),S=Math.round(S*Math.pow(10,T))),!(r=t-S))return;this.bindTransitionEnd();let tt=this.options.minIntegerLength||F;const V=Math.max(this.getDigitCount(S,t),tt+T),z=[];let J=0;for(D=0,o=D,b=V,c=0<=b;c?D<b:D>b;c?D++:D--,o=D){u=y(S/Math.pow(10,V-o-1));const h=y(t/Math.pow(10,V-o-1)),m=h-u;if(Math.abs(m)>this.MAX_VALUES){n=[];const et=m/(this.MAX_VALUES+this.MAX_VALUES*J*q);let A=u;for(;m>0&&A<h||m<0&&A>h;)n.push(Math.round(A)),A+=et;n[n.length-1]!==h&&n.push(h),J++}else n=P(u,h,!0);for(o=0;o<n.length;o++)e=n[o],n[o]=Math.abs(e%10);z.push(n)}this.resetDigits();const Q=z.reverse();for(o=0;o<Q.length;o++){n=Q[o],this.digits[o]||this.addDigit(" ",o>=T),this.ribbons[o]==null&&(this.ribbons[o]=this.digits[o].querySelector(".odometer-ribbon-inner")),this.ribbons[o].innerHTML="",r<0&&(n=n.reverse());for(let h=0;h<n.length;h++){e=n[h];const m=document.createElement("div");m.className="odometer-value",m.innerHTML=e,this.ribbons[o].appendChild(m),h===n.length-1&&v(m,"odometer-last-value"),h===0&&v(m,"odometer-first-value")}}u<0&&this.addDigit("-");const G=this.inside.querySelector(".odometer-radix-mark");if(G&&G.parent.removeChild(G),T)return this.addSpacer(this.format.radix,this.digits[T-1],"odometer-radix-mark")}}l.options=window.odometerOptions||{},document.addEventListener("DOMContentLoaded",()=>{if(l.options.auto!==!1)return l.init()}),M!=null?g.exports=l:window.Odometer=l;function P(s,t,r){let e=[],n=s<t?1:-1,o=r?t+n:t;for(;s!==o;)e.push(s),s+=n;return e}})(I,I.exports);var $=I.exports;const X=d.defineComponent({__name:"Odometer",props:{value:{type:Number,required:!1,default:0},minIntegerLength:{type:Number,default:7},format:{type:String,required:!1},theme:{type:String,required:!1,default:"default"},duration:{type:Number,required:!1},animation:{type:String,required:!1},formatFunction:{type:Function,required:!1}},emits:["ready"],setup(g,{expose:M,emit:K}){const f=g,i=d.ref(null),L=d.ref(null);d.watch(()=>f.value,e=>{i.value&&a(i.value.update)&&i.value.update(e)},{deep:!1});function O(){typeof window!="undefined"&&(window.odometerOptions?window.odometerOptions.auto=!1:window.odometerOptions={auto:!1})}function F(){if(i.value)return;O();const e=new $({el:L.value,value:f.value,minIntegerLength:f.minIntegerLength,format:f.format,theme:f.theme,duration:f.duration,animation:f.animation,formatFunction:f.formatFunction});e.render(),K("ready",e,$),i.value=e}function w(){i.value=null}function R(){i.value&&a(i.value.renderInside)&&i.value.renderInside()}function H(){i.value&&a(i.value.watchForMutations)&&i.value.watchForMutations()}function N(){i.value&&a(i.value.startWatchingMutations)&&i.value.startWatchingMutations()}function k(){i.value&&a(i.value.stopWatchingMutations)&&i.value.stopWatchingMutations()}function q(e){i.value&&a(i.value.cleanValue)&&i.value.cleanValue(e)}function W(){i.value&&a(i.value.bindTransitionEnd)&&i.value.bindTransitionEnd()}function j(){i.value&&a(i.value.resetFormat)&&i.value.resetFormat()}function U(){i.value&&a(i.value.renderDigit)&&i.value.renderDigit()}function _(e){i.value&&a(i.value.formatDigits)&&i.value.formatDigits(e)}function x(e,n){i.value&&a(i.value.insertDigit)&&i.value.insertDigit(e,n)}function v(e,n){i.value&&a(i.value.addDigit)&&i.value.addDigit(e,n)}function C(e,n,o){i.value&&a(i.value.addSpacer)&&i.value.addSpacer(e,n,o)}function E(e){i.value&&a(i.value.animate)&&i.value.animate(e)}function B(e){i.value&&a(i.value.animateCount)&&i.value.animateCount(e)}function y(){i.value&&a(i.value.getDigitCount)&&i.value.getDigitCount()}function l(){i.value&&a(i.value.getFractionalDigitCount)&&i.value.getFractionalDigitCount()}function P(){i.value&&a(i.value.resetDigits)&&i.value.resetDigits()}function s(e){i.value&&a(i.value.animateSlide)&&i.value.animateSlide(e)}function t(e){i.value&&a(i.value.render)&&i.value.render(e)}function r(e){i.value&&a(i.value.update)&&i.value.update(e)}return d.onMounted(()=>{F()}),d.onUnmounted(()=>{w()}),M({instance:i,init:F,uninit:w,renderInside:R,watchForMutations:H,startWatchingMutations:N,stopWatchingMutations:k,cleanValue:q,bindTransitionEnd:W,resetFormat:j,renderDigit:U,formatDigits:_,insertDigit:x,addDigit:v,addSpacer:C,animate:E,animateCount:B,getDigitCount:y,getFractionalDigitCount:l,resetDigits:P,animateSlide:s,render:t,update:r}),(e,n)=>(d.openBlock(),d.createElementBlock("span",{ref_key:"numRef",ref:L},null,512))}});p.Odometer=X,p.default=X,Object.defineProperties(p,{__esModule:{value:!0},[Symbol.toStringTag]:{value:"Module"}})}); |
{ | ||
"name": "vue3-odometer-counter", | ||
"version": "0.0.5", | ||
"version": "0.0.6", | ||
"description": "Vue.js(v3.2+) component wrap for Odometer.js", | ||
@@ -5,0 +5,0 @@ "keywords": [ |
37646
756