38 lines
1.0 KiB
TypeScript
38 lines
1.0 KiB
TypeScript
"use client";
|
|
|
|
import { LandingHero } from "./landing/LandingHero";
|
|
import { AssetStats } from "./landing/AssetStats";
|
|
import { TopicEbookShowcase } from "./landing/TopicEbookShowcase";
|
|
import { CompareSection } from "./landing/CompareSection";
|
|
import { CommunityPreview } from "./landing/CommunityPreview";
|
|
import { FAQSection } from "./landing/FAQSection";
|
|
import { LandingCTA } from "./landing/LandingCTA";
|
|
import { LoginBlock } from "./landing/LoginBlock";
|
|
|
|
type LandingPageProps = {
|
|
onJoin: () => void;
|
|
onLogin: () => void;
|
|
onVerify: (userId: string) => Promise<boolean>;
|
|
onVerifySuccess: () => void;
|
|
};
|
|
|
|
export function LandingPage({
|
|
onJoin,
|
|
onLogin,
|
|
onVerify,
|
|
onVerifySuccess,
|
|
}: LandingPageProps) {
|
|
return (
|
|
<>
|
|
<LandingHero />
|
|
<AssetStats />
|
|
<TopicEbookShowcase />
|
|
<CompareSection />
|
|
<CommunityPreview />
|
|
<FAQSection />
|
|
<LandingCTA onJoin={onJoin} onLogin={onLogin} />
|
|
<LoginBlock onVerify={onVerify} onSuccess={onVerifySuccess} />
|
|
</>
|
|
);
|
|
}
|