{"version":3,"file":"SpeedMultipier.BDIouaBm.mjs","names":["useState"],"sources":["https:/framerusercontent.com/modules/nBVFJ7Ya1RHH6S3BVRH5/VqHR4dPfr4M8I0ImN5Yh/SpeedMultipier.js"],"sourcesContent":["import{jsxs as _jsxs}from\"react/jsx-runtime\";import{useEffect,useState}from\"react\";import{addPropertyControls,ControlType}from\"framer\";export function AnimatedCounter({value=100,duration=1e3,delay=0,fontSize=32,fontWeight=600,color=\"#000\",textAlign=\"center\",prefix=\"\",suffix=\"\"}){const[displayValue,setDisplayValue]=useState(0);useEffect(()=>{const timeout=setTimeout(()=>{let startTime;let startValue=displayValue;const endValue=Number(value);const animate=currentTime=>{if(!startTime)startTime=currentTime;const progress=Math.min((currentTime-startTime)/duration,1);// Easing function for smooth animation\nconst easeOutQuad=t=>t*(2-t);const easedProgress=easeOutQuad(progress);const currentValue=Math.round(startValue+(endValue-startValue)*easedProgress);setDisplayValue(currentValue);if(progress<1){requestAnimationFrame(animate);}};requestAnimationFrame(animate);},delay);return()=>clearTimeout(timeout);},[value,duration,delay]);return /*#__PURE__*/_jsxs(\"div\",{style:{fontSize:`${fontSize}px`,fontWeight:fontWeight,color:color,textAlign:textAlign},children:[prefix,displayValue.toLocaleString(),suffix]});}// Add Property Controls for Framer\naddPropertyControls(AnimatedCounter,{value:{type:ControlType.Number,title:\"Value\",defaultValue:100},duration:{type:ControlType.Number,title:\"Duration\",defaultValue:1e3,min:100,max:5e3,unit:\"ms\"},delay:{type:ControlType.Number,title:\"Delay\",defaultValue:0,min:0,max:1e4,unit:\"ms\"},fontSize:{type:ControlType.Number,title:\"Font Size\",defaultValue:32,min:10,max:100,unit:\"px\"},fontWeight:{type:ControlType.Number,title:\"Font Weight\",defaultValue:600,min:100,max:900,step:100},color:{type:ControlType.Color,title:\"Color\",defaultValue:\"#000\"},textAlign:{type:ControlType.Enum,title:\"Text Align\",options:[\"left\",\"center\",\"right\"],optionTitles:[\"Left\",\"Center\",\"Right\"],defaultValue:\"center\"},prefix:{type:ControlType.String,title:\"Prefix\",defaultValue:\"\"},suffix:{type:ControlType.String,title:\"Suffix\",defaultValue:\"\"}});\nexport const __FramerMetadata__ = {\"exports\":{\"AnimatedCounter\":{\"type\":\"reactComponent\",\"name\":\"AnimatedCounter\",\"slots\":[],\"annotations\":{\"framerContractVersion\":\"1\"}},\"__FramerMetadata__\":{\"type\":\"variable\"}}}\n//# sourceMappingURL=./SpeedMultipier.map"],"mappings":"0QAAuI,SAAgB,EAAgB,CAAC,QAAM,IAAI,WAAS,IAAI,QAAM,EAAE,WAAS,GAAG,aAAW,IAAI,QAAM,OAAO,YAAU,SAAS,SAAO,GAAG,SAAO,IAAI,CAAC,GAAK,CAAC,EAAa,GAAiBA,EAAS,EAAE,CACD,OADE,MAAc,CAAC,IAAM,EAAQ,eAAe,CAAC,IAAI,EAAc,EAAW,EAAmB,EAAS,OAAO,EAAM,CAAO,EAAQ,GAAa,CAAC,AAAc,IAAU,EAAY,IAAM,EAAS,KAAK,KAAK,EAAY,GAAW,EAAS,EAAE,CACphB,GAAjB,GAAG,GAAG,EAAE,IAAmC,EAAS,CAAO,EAAa,KAAK,MAAM,GAAY,EAAS,GAAY,EAAc,CAAC,EAAgB,EAAa,CAAI,EAAS,GAAG,sBAAsB,EAAQ,EAAI,sBAAsB,EAAQ,EAAG,EAAM,CAAC,UAAU,aAAa,EAAQ,EAAG,CAAC,EAAM,EAAS,EAAM,CAAC,CAAqB,EAAM,MAAM,CAAC,MAAM,CAAC,SAAS,GAAG,EAAS,IAAe,aAAiB,QAAgB,YAAU,CAAC,SAAS,CAAC,EAAO,EAAa,gBAAgB,CAAC,EAAO,CAAC,CAAC,kBADzc,IAAsC,IAAoD,CAEvI,EAAoB,EAAgB,CAAC,MAAM,CAAC,KAAK,EAAY,OAAO,MAAM,QAAQ,aAAa,IAAI,CAAC,SAAS,CAAC,KAAK,EAAY,OAAO,MAAM,WAAW,aAAa,IAAI,IAAI,IAAI,IAAI,IAAI,KAAK,KAAK,CAAC,MAAM,CAAC,KAAK,EAAY,OAAO,MAAM,QAAQ,aAAa,EAAE,IAAI,EAAE,IAAI,IAAI,KAAK,KAAK,CAAC,SAAS,CAAC,KAAK,EAAY,OAAO,MAAM,YAAY,aAAa,GAAG,IAAI,GAAG,IAAI,IAAI,KAAK,KAAK,CAAC,WAAW,CAAC,KAAK,EAAY,OAAO,MAAM,cAAc,aAAa,IAAI,IAAI,IAAI,IAAI,IAAI,KAAK,IAAI,CAAC,MAAM,CAAC,KAAK,EAAY,MAAM,MAAM,QAAQ,aAAa,OAAO,CAAC,UAAU,CAAC,KAAK,EAAY,KAAK,MAAM,aAAa,QAAQ,CAAC,OAAO,SAAS,QAAQ,CAAC,aAAa,CAAC,OAAO,SAAS,QAAQ,CAAC,aAAa,SAAS,CAAC,OAAO,CAAC,KAAK,EAAY,OAAO,MAAM,SAAS,aAAa,GAAG,CAAC,OAAO,CAAC,KAAK,EAAY,OAAO,MAAM,SAAS,aAAa,GAAG,CAAC,CAAC"}