"use client"; import { useEffect, useState } from "react"; export function ScrollProgress() { const [w, setW] = useState(0); useEffect(() => { const onScroll = () => { const h = document.documentElement; const scrolled = (h.scrollTop / (h.scrollHeight - h.clientHeight)) * 100; setW(Number.isFinite(scrolled) ? scrolled : 0); }; onScroll(); window.addEventListener("scroll", onScroll, { passive: true }); return () => window.removeEventListener("scroll", onScroll); }, []); return (