Compare commits

..

No commits in common. "d061a0e6f80c3c777a3f1dc5bb69cca70faa1bb8" and "8d6e6d7cd032c0d15e66d9af01629a9c6e530d46" have entirely different histories.

2 changed files with 42 additions and 52 deletions

View File

@ -17,13 +17,7 @@ const NAV = [
{to: '/pricing', label: '요금'}, {to: '/pricing', label: '요금'},
]; ];
export function MarketingShell({ export function MarketingShell({children}: {children: ReactNode}) {
children,
showAuthCta = true,
}: {
children: ReactNode;
showAuthCta?: boolean;
}) {
const user = useAuthStore((s) => s.user); const user = useAuthStore((s) => s.user);
return ( return (
@ -58,7 +52,7 @@ export function MarketingShell({
히어로의 큰 입력 카드가 이미 그 자리다 — 시작하는 문이 한 화면에 둘이면 히어로의 큰 입력 카드가 이미 그 자리다 — 시작하는 문이 한 화면에 둘이면
어느 쪽이 진짜인지 고르게 만든다. 헤더는 로그인만 받는다. 어느 쪽이 진짜인지 고르게 만든다. 헤더는 로그인만 받는다.
*/} */}
{showAuthCta && (user ? ( {user ? (
<Link <Link
to="/sites" to="/sites"
className="rounded-md bg-primary px-4 py-2 text-[13px] font-medium text-primary-foreground transition-colors hover:bg-primary/90" className="rounded-md bg-primary px-4 py-2 text-[13px] font-medium text-primary-foreground transition-colors hover:bg-primary/90"
@ -72,7 +66,7 @@ export function MarketingShell({
> >
로그인 로그인
</Link> </Link>
))} )}
</div> </div>
</div> </div>
</header> </header>

View File

@ -1,5 +1,5 @@
import {useState, type FormEvent} from 'react'; import {useState, type FormEvent} from 'react';
import {Link, useNavigate, useSearchParams} from 'react-router'; import {Link, useNavigate} from 'react-router';
import {ArrowRight, ArrowUp, Check} from 'lucide-react'; import {ArrowRight, ArrowUp, Check} from 'lucide-react';
import {MarketingShell, Section, SectionHead} from '@/components/layout/MarketingShell'; import {MarketingShell, Section, SectionHead} from '@/components/layout/MarketingShell';
import {ShowcaseGrid, ShowcasePeeks} from '@/features/marketing/ShowcaseGrid'; import {ShowcaseGrid, ShowcasePeeks} from '@/features/marketing/ShowcaseGrid';
@ -74,8 +74,6 @@ const HEADLINES = [
export function LandingPage() { export function LandingPage() {
const navigate = useNavigate(); const navigate = useNavigate();
const [query, setQuery] = useState(''); const [query, setQuery] = useState('');
const [searchParams] = useSearchParams();
const buildMode = searchParams.get('build') === '1';
const submit = (event: FormEvent) => { const submit = (event: FormEvent) => {
event.preventDefault(); event.preventDefault();
@ -86,7 +84,7 @@ export function LandingPage() {
}; };
return ( return (
<MarketingShell showAuthCta={buildMode}> <MarketingShell>
{/* ── 상단 ─────────────────────────────────────── */} {/* ── 상단 ─────────────────────────────────────── */}
<section className="relative flex min-h-[calc(100dvh-4rem)] items-center overflow-hidden border-b border-border"> <section className="relative flex min-h-[calc(100dvh-4rem)] items-center overflow-hidden border-b border-border">
<div className="mx-auto w-full max-w-6xl px-5 text-center"> <div className="mx-auto w-full max-w-6xl px-5 text-center">
@ -114,7 +112,6 @@ export function LandingPage() {
<ShowcasePeeks /> <ShowcasePeeks />
</div> </div>
{buildMode && (
<form <form
onSubmit={submit} onSubmit={submit}
className="relative z-10 mx-auto max-w-2xl rounded-2xl border border-border bg-card p-4 text-left shadow-[0_18px_50px_-20px_rgb(20_22_34/0.35)]" className="relative z-10 mx-auto max-w-2xl rounded-2xl border border-border bg-card p-4 text-left shadow-[0_18px_50px_-20px_rgb(20_22_34/0.35)]"
@ -154,7 +151,6 @@ export function LandingPage() {
</button> </button>
</div> </div>
</form> </form>
)}
</div> </div>
</div> </div>
</section> </section>