import { useEffect } from 'react';
import { useLocation } from 'react-router-dom';

export const ScrollToTop = () => {
  const { pathname } = useLocation();

  useEffect(() => {
    const animationFrame = window.requestAnimationFrame(() => {
      window.scrollTo({ top: 0, left: 0, behavior: 'auto' });
      const mainElement = document.querySelector('main');
      if (mainElement instanceof HTMLElement) {
        if (typeof mainElement.scrollTo === 'function') {
          mainElement.scrollTo({ top: 0, left: 0, behavior: 'auto' });
        } else {
          mainElement.scrollTop = 0;
          mainElement.scrollLeft = 0;
        }
      }
    });

    return () => window.cancelAnimationFrame(animationFrame);
  }, [pathname]);

  return null;
};
