import Image from "next/image"; type CoverProject = { id: string; title: string }; /** Capturas de tela publicadas dos projetos que têm interface pública. */ const SCREENSHOTS: Record = { nutriscan: "/assets/notebook/nutriscan.webp", "sc-plus": "/assets/notebook/sc-plus.webp", "sev-modaintima": "/assets/notebook/sev-modaintima.webp", "as-servicos": "/assets/notebook/as-servicos.webp", }; function initials(title: string) { return title .split(/\s+/) .filter((word) => word.length > 2 || /^[A-Z]/.test(word)) .slice(0, 2) .map((word) => word[0]) .join("") .toUpperCase(); } /** * Capa do card de projeto: a captura de tela real quando existe; sem captura, um painel gerado em código * (só o monograma, sem repetir a stack que já aparece nas tags do card) em vez de uma imagem inventada. */ export function ProjectCover({ project, priority = false, }: { project: CoverProject; priority?: boolean; }) { const src = SCREENSHOTS[project.id]; if (src) { return (
{`Captura
); } return ( ); }