diff --git a/src/components/hooks/useWelcomeModal.ts b/src/components/hooks/useWelcomeModal.ts index 0f307b941e..d0a55a0c18 100644 --- a/src/components/hooks/useWelcomeModal.ts +++ b/src/components/hooks/useWelcomeModal.ts @@ -8,27 +8,23 @@ export function useWelcomeModal() { const [isOpen, setIsOpen] = useState(false) const open = () => setIsOpen(true) - const close = () => { - setIsOpen(false) - // Mark that user has actively closed the modal, don't show again this session - if (typeof window !== 'undefined') { - sessionStorage.setItem('welcomeModalClosed', 'true') - } - } + const close = () => setIsOpen(false) useEffect(() => { // Only show modal if: // 1. User is not logged in // 2. We're on the web (this is a web-only feature) // 3. We're on the homepage (path is '/' or '/home') - // 4. User hasn't actively closed the modal in this session + // 4. Modal hasn't been shown before if (IS_WEB && !hasSession && typeof window !== 'undefined') { const currentPath = window.location.pathname const isHomePage = currentPath === '/' - const hasUserClosedModal = - sessionStorage.getItem('welcomeModalClosed') === 'true' + const hasModalBeenShown = + localStorage.getItem('welcomeModalShown') === 'true' - if (isHomePage && !hasUserClosedModal) { + if (isHomePage && !hasModalBeenShown) { + // Mark that the modal has been shown, don't show again + localStorage.setItem('welcomeModalShown', 'true') // Small delay to ensure the page has loaded const timer = setTimeout(() => { open()