From 7ea8cba65d324654d422f50512a9e449d2aa7044 Mon Sep 17 00:00:00 2001 From: Stefano Greco Date: Thu, 11 Dec 2025 11:27:35 +0000 Subject: [PATCH] Fix: Initialize useIsMobile state for SSR consistency --- src/hooks/use-mobile.ts | 9 ++++++--- 1 file changed, 6 insertions(+), 3 deletions(-) diff --git a/src/hooks/use-mobile.ts b/src/hooks/use-mobile.ts index 511d4ee..30723d3 100644 --- a/src/hooks/use-mobile.ts +++ b/src/hooks/use-mobile.ts @@ -3,7 +3,12 @@ import * as React from 'react'; const MOBILE_BREAKPOINT = 768; export function useIsMobile() { - const [isMobile, setIsMobile] = React.useState(false); + const [isMobile, setIsMobile] = React.useState(() => { + if (typeof window === 'undefined') { + return false; // Default for SSR + } + return window.innerWidth < MOBILE_BREAKPOINT; // Initial value for client + }); React.useEffect(() => { if (typeof window === 'undefined') { @@ -14,8 +19,6 @@ export function useIsMobile() { setIsMobile(window.innerWidth < MOBILE_BREAKPOINT); }; - checkIsMobile(); // Set initial value - const resizeObserver = new ResizeObserver(() => { checkIsMobile(); });