/* global React */ (function () { const { useState, useEffect } = React; const T = window.SC_T; function useCountUp(target, { duration = 900, enabled = true } = {}) { const [val, setVal] = useState(enabled ? 0 : target); useEffect(() => { if (!enabled) { setVal(target); return; } let raf, start; const step = (t) => { if (!start) start = t; const p = Math.min(1, (t - start) / duration); setVal(Math.round(target * (1 - Math.pow(1 - p, 3)))); if (p < 1) raf = requestAnimationFrame(step); }; raf = requestAnimationFrame(step); return () => cancelAnimationFrame(raf); }, [target, duration, enabled]); return val; } function StatCard({ label, value, active, animate = true, onClick }) { const v = useCountUp(value, { enabled: animate }); const [hover, setHover] = useState(false); return (