import { useEffect, useState } from 'react'; export default function SplashScreen() { const [visible, setVisible] = useState(true); const [fadeOut, setFadeOut] = useState(false); useEffect(() => { const show = () => { setVisible(true); setFadeOut(false); }; const hide = () => { setFadeOut(true); setTimeout(() => setVisible(false), 600); }; document.addEventListener('astro:before-preparation', show); document.addEventListener('astro:after-preparation', hide); // Initial hide for first page load const timer = setTimeout(hide, 1000); return () => { document.removeEventListener('astro:before-preparation', show); document.removeEventListener('astro:after-preparation', hide); clearTimeout(timer); }; }, []); if (!visible) return null; return (
Đang tải...