From 8533b20675fac91cc10de1b7a9969f8ba676d3a5 Mon Sep 17 00:00:00 2001 From: "Builder.io" Date: Fri, 26 Sep 2025 21:49:39 +0000 Subject: [PATCH] Simplify PageTransition to fast fade without overlay cgen-090757e34c764632ac3dfca36ace0c37 --- client/components/PageTransition.tsx | 29 +++++++--------------------- 1 file changed, 7 insertions(+), 22 deletions(-) diff --git a/client/components/PageTransition.tsx b/client/components/PageTransition.tsx index 3637a14f..94b0b86c 100644 --- a/client/components/PageTransition.tsx +++ b/client/components/PageTransition.tsx @@ -1,38 +1,23 @@ import { useEffect, useState } from "react"; import { useLocation } from "react-router-dom"; -import LoadingScreen from "./LoadingScreen"; interface PageTransitionProps { children: React.ReactNode; } export default function PageTransition({ children }: PageTransitionProps) { - const [isLoading, setIsLoading] = useState(false); - const [isVisible, setIsVisible] = useState(true); + const [visible, setVisible] = useState(false); const location = useLocation(); useEffect(() => { - setIsLoading(true); - setIsVisible(false); - - const timer = setTimeout(() => { - setIsLoading(false); - setIsVisible(true); - }, 600); - - return () => clearTimeout(timer); + setVisible(false); + const id = requestAnimationFrame(() => setVisible(true)); + return () => cancelAnimationFrame(id); }, [location.pathname]); return ( - <> - {isLoading && ( - - )} -
- {children} -
- +
+ {children} +
); }