{"version":3,"file":"CountUp.uvHE-rVC.mjs","names":["useState","useRef","__esmMin","init_npm_react_18_3_1","_e","de","p","c","init_jsx_runtime","ce","init_framer_BWFVvmND","addPropertyControls","ControlType","CountUpEnhanced","props","count","setCount","isVisible","setIsVisible","hasAnimated","setHasAnimated","ref","observer","entry","start","increment","targetNumber","duration","updateCounter","formattedNumber","decimals","containerStyle","textStyle","font","fontSize","lineHeight","prefix","suffix","init_CountUp"],"sources":["https:/framerusercontent.com/modules/CnvmzGN0pjN9O1Z3XRVe/R4OR90nH6fgFVcCSdfZm/CountUp.js"],"sourcesContent":["import{jsx as _jsx,jsxs as _jsxs}from\"react/jsx-runtime\";import{useEffect,useRef,useState}from\"react\";import{addPropertyControls,ControlType}from\"framer\";/**\n * @framerSupportedLayoutWidth auto\n * @framerSupportedLayoutHeight auto\n */export default function CountUpEnhanced(props){const{targetNumber,duration,font,color,fontSize,lineHeight,fontWeight,prefix,suffix,decimals}=props;const[count,setCount]=useState(0);const[isVisible,setIsVisible]=useState(false);const[hasAnimated,setHasAnimated]=useState(false);const ref=useRef(null);useEffect(()=>{const observer=new IntersectionObserver(([entry])=>{if(entry.isIntersecting&&!hasAnimated){setIsVisible(true);setHasAnimated(true);let start=0;const increment=targetNumber/(duration*60);const updateCounter=()=>{start+=increment;if(start<targetNumber){setCount(start);requestAnimationFrame(updateCounter);}else{setCount(targetNumber);}};updateCounter();}},{threshold:.1});if(ref.current)observer.observe(ref.current);return()=>{if(ref.current)observer.unobserve(ref.current);};},[targetNumber,duration,hasAnimated]);const formattedNumber=Number(count).toLocaleString(undefined,{minimumFractionDigits:decimals,maximumFractionDigits:decimals});return /*#__PURE__*/_jsx(\"div\",{style:containerStyle,ref:ref,children:/*#__PURE__*/_jsxs(\"span\",{style:{...textStyle,fontFamily:font,color:color,fontSize:`${fontSize}px`,lineHeight:`${lineHeight}px`,fontWeight:fontWeight,opacity:isVisible?1:0,transition:\"opacity 0.5s ease-in-out\"},children:[prefix,formattedNumber,suffix]})});}const containerStyle={display:\"flex\",justifyContent:\"center\",alignItems:\"center\",overflow:\"hidden\"};const textStyle={letterSpacing:\"0em\",textAlign:\"center\",margin:\"0\"};addPropertyControls(CountUpEnhanced,{targetNumber:{type:ControlType.Number,title:\"Target Number\",defaultValue:100},duration:{type:ControlType.Number,title:\"Duration (s)\",defaultValue:2,step:.1},prefix:{type:ControlType.String,title:\"Prefix\",defaultValue:\"\",placeholder:\"\\xa3, +, etc\"},suffix:{type:ControlType.String,title:\"Suffix\",defaultValue:\"\",placeholder:\"%, months, years, etc\"},decimals:{type:ControlType.Number,title:\"Decimals\",defaultValue:0,min:0,max:4},font:{type:ControlType.String,title:\"Font Family\",defaultValue:\"Montaga, serif\"},color:{type:ControlType.Color,title:\"Color\",defaultValue:\"#000000\"},fontSize:{type:ControlType.Number,title:\"Font Size (px)\",defaultValue:54},lineHeight:{type:ControlType.Number,title:\"Line Height (px)\",defaultValue:54},fontWeight:{type:ControlType.Enum,title:\"Font Weight\",options:[\"100\",\"200\",\"300\",\"400\",\"500\",\"600\",\"700\",\"800\",\"900\"],optionTitles:[\"Thin\",\"Extra Light\",\"Light\",\"Regular\",\"Medium\",\"Semi Bold\",\"Bold\",\"Extra Bold\",\"Black\"],defaultValue:\"400\"}});\nexport const __FramerMetadata__ = {\"exports\":{\"default\":{\"type\":\"reactComponent\",\"name\":\"CountUpEnhanced\",\"slots\":[],\"annotations\":{\"framerSupportedLayoutHeight\":\"auto\",\"framerContractVersion\":\"1\",\"framerSupportedLayoutWidth\":\"auto\"}},\"__FramerMetadata__\":{\"type\":\"variable\"}}}\n//# sourceMappingURL=./CountUp.map"],"mappings":"A,+LAGG,SAAwBa,EAAgB,EAAM,CAAC,GAAK,CAAC,eAAa,WAAS,OAAK,QAAM,WAAS,aAAW,aAAW,SAAO,SAAO,YAAUC,EAAW,CAACC,EAAMC,GAAUhB,EAAS,CAAC,EAAO,CAACiB,EAAUC,GAAclB,EAAS,EAAK,EAAO,CAACmB,EAAYC,GAAgBpB,EAAS,EAAK,EAAQqB,EAAIpB,EAAO,IAAI,EAAEQ,MAAc,CAAC,IAAMa,EAAS,IAAI,sBAAsB,CAACC,KAAS,CAAC,GAAGA,EAAM,gBAAgB,CAACJ,EAAY,CAACD,EAAa,EAAI,EAAEE,EAAe,EAAI,EAAE,IAAII,EAAM,EAAQC,EAAUC,GAAcC,EAAS,IAAUC,MAAkB,CAAC,GAAOH,EAAaD,EAAME,GAAcV,EAASQ,CAAK,EAAE,sBAAsBI,CAAa,GAAQZ,EAASU,CAAY,CAAG,EAAEE,EAAc,CAAE,CAAC,EAAE,CAAC,UAAU,EAAE,CAAC,EAA+C,OAA1CP,EAAI,SAAQC,EAAS,QAAQD,EAAI,OAAO,MAAY,CAAIA,EAAI,SAAQC,EAAS,UAAUD,EAAI,OAAO,CAAE,CAAE,EAAE,CAACK,EAAaC,EAASR,CAAW,CAAC,EAAE,IAAMU,EAAgB,OAAOd,CAAK,CAAC,CAAC,eAAe,IAAA,GAAU,CAAC,sBAAsBe,EAAS,sBAAsBA,CAAQ,CAAC,EAAE,MAAoB,gBAAK,MAAM,CAAC,MAAMC,EAAmB,MAAI,SAAsB,gBAAM,OAAO,CAAC,MAAM,CAAC,GAAGC,EAAU,WAAWC,EAAW,QAAM,SAAS,GAAGC,EAAS,IAAI,WAAW,GAAGC,EAAW,IAAe,aAAW,QAAQ,KAAc,WAAW,0BAA0B,EAAE,SAAS,CAACC,EAAOP,EAAgBQ,CAAM,CAAC,CAAC,CAAC,CAAC,CAAE,C,kDAAO,EAAe,CAAC,QAAQ,OAAO,eAAe,SAAS,WAAW,SAAS,SAAS,QAAQ,EAAQ,EAAU,CAAC,cAAc,MAAM,UAAU,SAAS,OAAO,GAAG,EAAE1B,EAAoBE,EAAgB,CAAC,aAAa,CAAC,KAAKD,EAAY,OAAO,MAAM,gBAAgB,aAAa,GAAG,EAAE,SAAS,CAAC,KAAKA,EAAY,OAAO,MAAM,eAAe,aAAa,EAAE,KAAK,EAAE,EAAE,OAAO,CAAC,KAAKA,EAAY,OAAO,MAAM,SAAS,aAAa,GAAG,YAAY,WAAc,EAAE,OAAO,CAAC,KAAKA,EAAY,OAAO,MAAM,SAAS,aAAa,GAAG,YAAY,uBAAuB,EAAE,SAAS,CAAC,KAAKA,EAAY,OAAO,MAAM,WAAW,aAAa,EAAE,IAAI,EAAE,IAAI,CAAC,EAAE,KAAK,CAAC,KAAKA,EAAY,OAAO,MAAM,cAAc,aAAa,gBAAgB,EAAE,MAAM,CAAC,KAAKA,EAAY,MAAM,MAAM,QAAQ,aAAa,SAAS,EAAE,SAAS,CAAC,KAAKA,EAAY,OAAO,MAAM,iBAAiB,aAAa,EAAE,EAAE,WAAW,CAAC,KAAKA,EAAY,OAAO,MAAM,mBAAmB,aAAa,EAAE,EAAE,WAAW,CAAC,KAAKA,EAAY,KAAK,MAAM,cAAc,QAAQ,CAAC,MAAM,MAAM,MAAM,MAAM,MAAM,MAAM,MAAM,MAAM,KAAK,EAAE,aAAa,CAAC,OAAO,cAAc,QAAQ,UAAU,SAAS,YAAY,OAAO,aAAa,OAAO,EAAE,aAAa,KAAK,CAAC,CAAC,C"}