From fb5ac4bb4804262f94a9dc4e01006a91a2bc575a Mon Sep 17 00:00:00 2001 From: Krishna Kumar Date: Thu, 4 Jun 2026 18:58:47 +0530 Subject: [PATCH 1/4] Fix unreachable launching soon modal --- web/src/app/page.tsx | 29 ++++++++++++++++++++------ web/src/components/HeroAndDownload.tsx | 22 +++++++++---------- 2 files changed, 34 insertions(+), 17 deletions(-) diff --git a/web/src/app/page.tsx b/web/src/app/page.tsx index 38616cb0..ebf16c58 100644 --- a/web/src/app/page.tsx +++ b/web/src/app/page.tsx @@ -3,11 +3,10 @@ import Image from "next/image"; import "./globals.css"; -import { type RefObject, useCallback, useEffect, useRef, useState, useSyncExternalStore } from "react"; import { type RefObject, useCallback, useEffect, useRef, useState, useSyncExternalStore } from "react"; import HeroAndDownload from "../components/HeroAndDownload"; import ScrollToTop from "../components/ScrollToTop"; -import ScrollToTop from "../components/ScrollToTop"; +import { PageWrapper, Section } from "../components/layout"; import { Skeleton } from "../components/ui"; const userScreenshots = [ @@ -119,6 +118,14 @@ export default function Home() { const userSliderRef = useRef(null); const adminSliderRef = useRef(null); + const openComingSoonModal = useCallback(() => { + setComingSoonModal(true); + }, []); + + const closeComingSoonModal = useCallback(() => { + setComingSoonModal(false); + }, []); + useEffect(() => { dnaEnabledRef.current = cursorGlowEnabled; if (dnaCanvasRef.current) { @@ -492,7 +499,10 @@ export default function Home() { {/* ── Hero ── */} - setAppleModal(true)} /> + setAppleModal(true)} + onShowComingSoon={openComingSoonModal} + /> {/* ── Screenshots ── */}
@@ -889,15 +899,22 @@ export default function Home() { {/* ── Coming Soon Modal ── */} -
setComingSoonModal(false)}> +
e.stopPropagation()}>
🚀
-

Launching Soon!

+

Launching Soon!

We're currently in final testing. We're 85% of the way there!

- +
diff --git a/web/src/components/HeroAndDownload.tsx b/web/src/components/HeroAndDownload.tsx index 9cf3056f..460b46d2 100644 --- a/web/src/components/HeroAndDownload.tsx +++ b/web/src/components/HeroAndDownload.tsx @@ -4,6 +4,7 @@ import Image from "next/image"; type HeroAndDownloadProps = { onJoinTestFlight: () => void; + onShowComingSoon: () => void; }; const activityItems = [ @@ -56,7 +57,7 @@ const platforms = [ }, ]; -export default function HeroAndDownload({ onJoinTestFlight }: HeroAndDownloadProps) { +export default function HeroAndDownload({ onJoinTestFlight, onShowComingSoon }: HeroAndDownloadProps) { return ( <>
@@ -244,7 +245,7 @@ export default function HeroAndDownload({ onJoinTestFlight }: HeroAndDownloadPro {platform.theme === "android" ? ( - + ) : ( )} @@ -322,7 +323,7 @@ function MiniPhone({ theme }: { theme: string }) { ); } -function AndroidStoreButtons() { +function AndroidStoreButtons({ onShowComingSoon }: Pick) { return (
@@ -339,25 +340,24 @@ function AndroidStoreButtons() { Google Play
-