{"version":3,"file":"Numbers_Animation.BEzRonXz.mjs","names":["useRef","useState","__esmMin","init_npm_react_18_3_1","_e","p","c","init_jsx_runtime","ce","de","useInView","animate","init_framer_motion_DhsWWWsN","init_framer_BWFVvmND","addPropertyControls","ControlType","AnimatedStat","ref","isInView","display","setDisplay","suffix","setSuffix","target","setTarget","res","parts","json","stat","num","countFrom","startFrom","controls","v","duration","alignment","italic","font","showSuffix","init_Numbers_Animation"],"sources":["https:/framerusercontent.com/modules/t2DLWsciaBpj7EOzEJEM/fJycDC8tqvmlhesTtVxB/Numbers_Animation.js"],"sourcesContent":["import{jsx as _jsx,jsxs as _jsxs}from\"react/jsx-runtime\";import{useEffect,useState,useRef}from\"react\";import{useInView,animate}from\"framer-motion\";import{addPropertyControls,ControlType}from\"framer\";export default function AnimatedStat({stat=\"Fresh Produce Harvested\",showSuffix=true,duration=10,countFrom=10,color=\"#E5A820\",alignment=\"center\",font,fontWeight=700,italic=false}){const ref=useRef(null);const isInView=useInView(ref,{once:true});const[display,setDisplay]=useState(null);const[suffix,setSuffix]=useState(\"\");const[target,setTarget]=useState(null);useEffect(()=>{fetch(\"https://g6yj8tok7l.execute-api.ap-southeast-1.amazonaws.com/staging/locations?location=All\").then(res=>res.json()).then(json=>{const raw=json.data?.[0]?.[stat]||\"0\";const parts=raw.match(/^([\\d,]+)\\s*(.*)$/);if(parts){const num=parseInt(parts[1].replace(/,/g,\"\"),10);setSuffix(parts[2]||\"\");setTarget(num);setDisplay(num-countFrom);}}).catch(()=>{});},[stat,countFrom]);useEffect(()=>{if(!isInView||target===null)return;const startFrom=target-countFrom;const controls=animate(startFrom,target,{duration:duration,ease:[.25,.1,.25,1],onUpdate:v=>setDisplay(Math.round(v))});return()=>controls.stop();},[isInView,target,countFrom,duration]);return /*#__PURE__*/_jsx(\"div\",{ref:ref,style:{width:\"100%\",textAlign:alignment},children:/*#__PURE__*/_jsxs(\"span\",{style:{color,fontWeight,fontStyle:italic?\"italic\":\"normal\",...font},children:[display!==null?display.toLocaleString():\"\",showSuffix&&suffix?` ${suffix}`:\"\"]})});}addPropertyControls(AnimatedStat,{stat:{type:ControlType.Enum,title:\"Stat\",options:[\"Fresh Produce Harvested\",\"Plastic Wrappers Saved\",\"Food Waste Prevented\",\"Water Preserved\",\"Farm Size\",\"Total Weeks\"],defaultValue:\"Fresh Produce Harvested\"},countFrom:{type:ControlType.Number,title:\"Count Up By\",defaultValue:10,min:1,max:1e3,step:1},alignment:{type:ControlType.Enum,title:\"Alignment\",options:[\"left\",\"center\",\"right\"],defaultValue:\"center\"},font:{//@ts-ignore\ntype:ControlType.Font,controls:\"extended\",displayFontSize:true,displayTextAlignment:false,defaultValue:{fontSize:32,lineHeight:\"1.2em\"}},fontWeight:{type:ControlType.Enum,title:\"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:700},italic:{type:ControlType.Boolean,title:\"Italic\",enabledTitle:\"On\",disabledTitle:\"Off\",defaultValue:false},color:{type:ControlType.Color,title:\"Color\",defaultValue:\"#E5A820\"},showSuffix:{type:ControlType.Boolean,title:\"Show Suffix\",defaultValue:true},duration:{type:ControlType.Number,title:\"Duration (sec)\",defaultValue:10,min:3,max:30,step:1}});\nexport const __FramerMetadata__ = {\"exports\":{\"default\":{\"type\":\"reactComponent\",\"name\":\"AnimatedStat\",\"slots\":[],\"annotations\":{\"framerContractVersion\":\"1\"}},\"__FramerMetadata__\":{\"type\":\"variable\"}}}\n//# sourceMappingURL=./Numbers_Animation.map"],"mappings":"A,uPAAuM,SAAwBgB,EAAa,CAAC,OAAK,0BAA0B,aAAW,GAAK,WAAS,GAAG,YAAU,GAAG,QAAM,UAAU,YAAU,SAAS,OAAK,aAAW,IAAI,SAAO,IAAO,CAAC,IAAMC,EAAIjB,EAAO,IAAI,EAAQkB,EAASR,EAAUO,EAAI,CAAC,KAAK,EAAI,CAAC,EAAO,CAACE,EAAQC,GAAYnB,EAAS,IAAI,EAAO,CAACoB,EAAOC,GAAWrB,EAAS,EAAE,EAAO,CAACsB,EAAOC,GAAWvB,EAAS,IAAI,EAAspB,OAAppBO,MAAc,CAAC,MAAM,4FAA4F,CAAC,CAAC,KAAK,GAAKiB,EAAI,KAAK,CAAC,CAAC,CAAC,KAAK,GAAM,CAAuC,IAAMC,GAAlCC,EAAK,OAAO,EAAE,GAAGC,IAAO,IAAA,CAAoB,MAAM,mBAAmB,EAAE,GAAGF,EAAM,CAAC,IAAMG,EAAI,SAASH,EAAM,EAAE,CAAC,QAAQ,KAAK,EAAE,EAAE,EAAE,EAAEJ,EAAUI,EAAM,IAAI,EAAE,EAAEF,EAAUK,CAAG,EAAET,EAAWS,EAAIC,CAAS,CAAE,CAAC,CAAC,CAAC,CAAC,UAAU,CAAC,CAAC,CAAE,EAAE,CAACF,EAAKE,CAAS,CAAC,EAAEtB,MAAc,CAAC,GAAG,CAACU,GAAUK,IAAS,KAAK,OAAO,IAAMQ,EAAUR,EAAOO,EAAgBE,EAASrB,EAAQoB,EAAUR,EAAO,CAAU,WAAS,KAAK,CAAC,IAAI,GAAG,IAAI,CAAC,EAAE,SAAS,GAAGH,EAAW,KAAK,MAAMa,CAAC,CAAC,CAAC,CAAC,EAAE,UAAUD,EAAS,KAAK,CAAE,EAAE,CAACd,EAASK,EAAOO,EAAUI,CAAQ,CAAC,EAAsB,gBAAK,MAAM,CAAK,MAAI,MAAM,CAAC,MAAM,OAAO,UAAUC,CAAS,EAAE,SAAsB,gBAAM,OAAO,CAAC,MAAM,CAAC,QAAM,aAAW,UAAUC,EAAO,SAAS,SAAS,GAAGC,CAAI,EAAE,SAAS,CAAClB,IAAU,KAA8B,GAAzBA,EAAQ,eAAe,EAAKmB,GAAYjB,EAAO,IAAIA,IAAS,EAAE,CAAC,CAAC,CAAC,CAAC,CAAE,C,8CAACP,EAAoBE,EAAa,CAAC,KAAK,CAAC,KAAKD,EAAY,KAAK,MAAM,OAAO,QAAQ,CAAC,0BAA0B,yBAAyB,uBAAuB,kBAAkB,YAAY,aAAa,EAAE,aAAa,yBAAyB,EAAE,UAAU,CAAC,KAAKA,EAAY,OAAO,MAAM,cAAc,aAAa,GAAG,IAAI,EAAE,IAAI,IAAI,KAAK,CAAC,EAAE,UAAU,CAAC,KAAKA,EAAY,KAAK,MAAM,YAAY,QAAQ,CAAC,OAAO,SAAS,OAAO,EAAE,aAAa,QAAQ,EAAE,KAAK,CAC75D,KAAKA,EAAY,KAAK,SAAS,WAAW,gBAAgB,GAAK,qBAAqB,GAAM,aAAa,CAAC,SAAS,GAAG,WAAW,OAAO,CAAC,EAAE,WAAW,CAAC,KAAKA,EAAY,KAAK,MAAM,SAAS,QAAQ,CAAC,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,GAAG,EAAE,aAAa,CAAC,OAAO,cAAc,QAAQ,UAAU,SAAS,YAAY,OAAO,aAAa,OAAO,EAAE,aAAa,GAAG,EAAE,OAAO,CAAC,KAAKA,EAAY,QAAQ,MAAM,SAAS,aAAa,KAAK,cAAc,MAAM,aAAa,EAAK,EAAE,MAAM,CAAC,KAAKA,EAAY,MAAM,MAAM,QAAQ,aAAa,SAAS,EAAE,WAAW,CAAC,KAAKA,EAAY,QAAQ,MAAM,cAAc,aAAa,EAAI,EAAE,SAAS,CAAC,KAAKA,EAAY,OAAO,MAAM,iBAAiB,aAAa,GAAG,IAAI,EAAE,IAAI,GAAG,KAAK,CAAC,CAAC,CAAC,C"}