import Image from "next/image"; import { withBasePath } from "@/lib/base-path"; import { GuideExportBranding } from "@/components/public/guide-export-branding"; import { ExportText } from "@/components/public/export-language"; import type { PublicGuide } from "@/lib/guides/queries"; import { constellationChartRows } from "@/lib/guides/export-image"; import { cn } from "@/lib/utils"; function percentage(value: number): string { return `${value.toLocaleString("en-US", { maximumFractionDigits: 2 })}%`; } export function ConstellationImage({ guide, group, }: { guide: PublicGuide; group: PublicGuide["constellationGroups"][number]; }) { const rows = constellationChartRows(group.rows); const background = guide.character.splashImageUrl ?? guide.coverUrl; const footer = group.note; return (

16 ? "text-[60px]" : "text-[76px]", )} > {`${guide.character.name}’s Constellations`}

{rows.map((row) => (
C{row.level}
{percentage(row.percent)}
))}
{footer ? (

{footer}

) : null}
); }