|
|
|
@ -49,8 +49,8 @@ export function OrganizedContent({ |
|
|
|
|
const section = sections[currentIndex]; |
|
|
|
|
const isReadAll = section.id === READ_ALL_ID; |
|
|
|
|
const ref = useRef<HTMLDivElement>(null); |
|
|
|
|
const isVisible = useOnScreen(ref.current); |
|
|
|
|
const burgerVisible = useBurger(isVisible); |
|
|
|
|
const burgerVisible = useOnScreen(ref.current); |
|
|
|
|
// const burgerVisible = useBurger(isVisible);
|
|
|
|
|
|
|
|
|
|
useEffect(() => { |
|
|
|
|
mobileNavOpen |
|
|
|
@ -332,32 +332,32 @@ function useOnScreen(element: HTMLDivElement | null) { |
|
|
|
|
return isIntersecting; |
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
function useBurger(componentIsVisible: boolean): boolean { |
|
|
|
|
const [prevScrollPos, setPrevScrollPos] = useState(0); |
|
|
|
|
const [burgerVisible, setBurgerVisible] = useState(true); |
|
|
|
|
|
|
|
|
|
const handleScroll = useDebounce(() => { |
|
|
|
|
// find current scroll position
|
|
|
|
|
const currentScrollPos = window.pageYOffset; |
|
|
|
|
setBurgerVisible( |
|
|
|
|
componentIsVisible && |
|
|
|
|
((prevScrollPos > currentScrollPos && |
|
|
|
|
prevScrollPos - currentScrollPos > 70) || |
|
|
|
|
currentScrollPos < 10) |
|
|
|
|
); |
|
|
|
|
// function useBurger(componentIsVisible: boolean): boolean {
|
|
|
|
|
// const [prevScrollPos, setPrevScrollPos] = useState(0);
|
|
|
|
|
// const [burgerVisible, setBurgerVisible] = useState(true);
|
|
|
|
|
|
|
|
|
|
// set state to new scroll position
|
|
|
|
|
setPrevScrollPos(currentScrollPos); |
|
|
|
|
}); |
|
|
|
|
// const handleScroll = useDebounce(() => {
|
|
|
|
|
// // find current scroll position
|
|
|
|
|
// const currentScrollPos = window.pageYOffset;
|
|
|
|
|
// setBurgerVisible(
|
|
|
|
|
// componentIsVisible &&
|
|
|
|
|
// ((prevScrollPos > currentScrollPos &&
|
|
|
|
|
// prevScrollPos - currentScrollPos > 70) ||
|
|
|
|
|
// currentScrollPos < 10)
|
|
|
|
|
// );
|
|
|
|
|
|
|
|
|
|
useEffect(() => { |
|
|
|
|
window.addEventListener("scroll", handleScroll); |
|
|
|
|
// // set state to new scroll position
|
|
|
|
|
// setPrevScrollPos(currentScrollPos);
|
|
|
|
|
// });
|
|
|
|
|
|
|
|
|
|
return () => window.removeEventListener("scroll", handleScroll); |
|
|
|
|
}, [handleScroll]); |
|
|
|
|
// useEffect(() => {
|
|
|
|
|
// window.addEventListener("scroll", handleScroll);
|
|
|
|
|
|
|
|
|
|
return burgerVisible; |
|
|
|
|
} |
|
|
|
|
// return () => window.removeEventListener("scroll", handleScroll);
|
|
|
|
|
// }, [handleScroll]);
|
|
|
|
|
|
|
|
|
|
// return burgerVisible;
|
|
|
|
|
// }
|
|
|
|
|
|
|
|
|
|
// Inlining this svg because we want to fill in colors using css variables
|
|
|
|
|
function Burger() { |
|
|
|
|