"use client"; import type { ReactNode } from "react"; import { Reveal } from "@/components/animations/reveal"; import { EyebrowMark } from "@/components/brand/eyebrow"; import { Highlight } from "@/components/brand/highlight"; import { Slide } from "@/components/deck/slide"; type CenteredThesisProps = { number: number; total: number; eyebrow: string; /** Text before the highlighted phrase. */ beforeHighlight: ReactNode; /** Single key phrase rendered with animated yellow fill. */ highlight: ReactNode; /** Text after the highlight (often a single character: "." or "?"). */ afterHighlight?: ReactNode; /** Optional tail sentence rendered with rules either side. */ tail?: ReactNode; }; /** * Centered thesis statement on dark slide. One headline with a single Highlight word. * Reserve for the single most important slide of the deck (or each block). */ export function CenteredThesis({ number, total, eyebrow, beforeHighlight, highlight, afterHighlight = ".", tail, }: CenteredThesisProps) { return (
{eyebrow}

{beforeHighlight} {highlight} {afterHighlight}

{tail && (

{tail}

)}
); }