page.tsx
650 bytes
| 1 | import { LandingBackground } from '@/components/landing-background'; |
|---|---|
| 2 | import { LandingHero } from '@/components/landing-hero'; |
| 3 | import type { DebateResult } from '@/core/types'; |
| 4 | import { listDemoDebates, loadDebateResult } from '@/db/repositories'; |
| 5 | |
| 6 | export const dynamic = 'force-dynamic'; |
| 7 | |
| 8 | export default async function HomePage() { |
| 9 | let demo: DebateResult | null = null; |
| 10 | try { |
| 11 | const demos = await listDemoDebates(); |
| 12 | if (demos[0]) demo = await loadDebateResult(demos[0].id); |
| 13 | } catch { |
| 14 | demo = null; |
| 15 | } |
| 16 | |
| 17 | return ( |
| 18 | <div className="overflow-hidden"> |
| 19 | <LandingBackground /> |
| 20 | <LandingHero result={demo} /> |
| 21 | </div> |
| 22 | ); |
| 23 | } |
| 24 | |