import { languageColor } from "~/lib/languages"; import type { LanguageShare } from "~/lib/languages"; import { cn } from "~/utils/cn"; const ONE_DECIMAL_BELOW = 10; function percent(bytes: number, total: number): string { const share = (bytes / total) * 100; return `${share < ONE_DECIMAL_BELOW ? share.toFixed(1) : share.toFixed(0)}%`; } /** The default branch's languages as one proportional bar with a legend, like GitHub's sidebar. */ export function LanguageBar({ languages, className }: { languages: readonly LanguageShare[]; className?: string }) { const total = languages.reduce((sum, language) => sum + language.bytes, 0); if (total === 0) return null; return (
{languages.map((language) => ( ))}
); } export function LanguageDot({ name }: { name: string }) { return ( ); }