diff --git a/solution/frontend/src/components/layout/MarketingShell.tsx b/solution/frontend/src/components/layout/MarketingShell.tsx index 2acf72b..6ad75cd 100644 --- a/solution/frontend/src/components/layout/MarketingShell.tsx +++ b/solution/frontend/src/components/layout/MarketingShell.tsx @@ -17,7 +17,13 @@ const NAV = [ {to: '/pricing', label: '요금'}, ]; -export function MarketingShell({children}: {children: ReactNode}) { +export function MarketingShell({ + children, + showAuthCta = true, +}: { + children: ReactNode; + showAuthCta?: boolean; +}) { const user = useAuthStore((s) => s.user); return ( @@ -52,7 +58,7 @@ export function MarketingShell({children}: {children: ReactNode}) { 히어로의 큰 입력 카드가 이미 그 자리다 — 시작하는 문이 한 화면에 둘이면 어느 쪽이 진짜인지 고르게 만든다. 헤더는 로그인만 받는다. */} - {user ? ( + {showAuthCta && (user ? ( 로그인 - )} + ))} diff --git a/solution/frontend/src/pages/LandingPage.tsx b/solution/frontend/src/pages/LandingPage.tsx index 8352693..f21c30c 100644 --- a/solution/frontend/src/pages/LandingPage.tsx +++ b/solution/frontend/src/pages/LandingPage.tsx @@ -1,5 +1,5 @@ import {useState, type FormEvent} from 'react'; -import {Link, useNavigate} from 'react-router'; +import {Link, useNavigate, useSearchParams} from 'react-router'; import {ArrowRight, ArrowUp, Check} from 'lucide-react'; import {MarketingShell, Section, SectionHead} from '@/components/layout/MarketingShell'; import {ShowcaseGrid, ShowcasePeeks} from '@/features/marketing/ShowcaseGrid'; @@ -74,6 +74,8 @@ const HEADLINES = [ export function LandingPage() { const navigate = useNavigate(); const [query, setQuery] = useState(''); + const [searchParams] = useSearchParams(); + const buildMode = searchParams.get('build') === '1'; const submit = (event: FormEvent) => { event.preventDefault(); @@ -84,7 +86,7 @@ export function LandingPage() { }; return ( - + {/* ── 상단 ─────────────────────────────────────── */} @@ -112,45 +114,47 @@ export function LandingPage() { - - - - - 가게 이름으로 시작 - - {/* 업종부터 고르고 싶은 사람을 위한 갈래. 위저드의 업종 단계로 바로 보낸다. */} - - 업종부터 고르기 - - + {buildMode && ( + + + + + 가게 이름으로 시작 + + {/* 업종부터 고르고 싶은 사람을 위한 갈래. 위저드의 업종 단계로 바로 보낸다. */} + + 업종부터 고르기 + + - setQuery(e.target.value)} - placeholder="가게 이름을 입력하세요" - aria-label="가게 이름" - className="mt-4 w-full border-0 bg-transparent px-1 text-base outline-none placeholder:text-muted-foreground sm:text-lg" - /> + setQuery(e.target.value)} + placeholder="가게 이름을 입력하세요" + aria-label="가게 이름" + className="mt-4 w-full border-0 bg-transparent px-1 text-base outline-none placeholder:text-muted-foreground sm:text-lg" + /> - - - 숙박 · 카페 · 음식점 · 피부과 · 성형외과 - - - - - - + + + 숙박 · 카페 · 음식점 · 피부과 · 성형외과 + + + + + + + )}
- 숙박 · 카페 · 음식점 · 피부과 · 성형외과 -
+ 숙박 · 카페 · 음식점 · 피부과 · 성형외과 +