45bfae6e94
Initial import of all source code, config, and README assets: the packages workspace (cli, core, server, web, docs, landing, skills), build scripts, tooling config, and CI workflows. Includes the data-layout revision made on this branch: the local data root defaults to ~/.penguin/data (PENGUIN_HOME still overrides; the installer keeps its binaries in ~/.penguin), and every Agent lives under <project>/agents/<agent>/ — path helpers, the three agent-enumeration scans, the system prompt, built-in Skills, tests and docs all follow the new layout. Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_018ihk8iQuo3kv2aPjAYEPuR
32 lines
703 B
TypeScript
32 lines
703 B
TypeScript
/**
|
|
* Unified rendering for stat icons (shared by the chat page's stat row and the Trace page's turn
|
|
* cards): a 24x24 line path with stroke set to currentColor, so the color follows the caller's
|
|
* text color. See lib/stat-icons.ts for the paths.
|
|
*/
|
|
export function GlyphIcon({
|
|
d,
|
|
size = 13,
|
|
className = "",
|
|
}: {
|
|
d: string;
|
|
size?: number;
|
|
className?: string;
|
|
}) {
|
|
return (
|
|
<svg
|
|
width={size}
|
|
height={size}
|
|
viewBox="0 0 24 24"
|
|
fill="none"
|
|
stroke="currentColor"
|
|
strokeWidth="1.7"
|
|
strokeLinecap="round"
|
|
strokeLinejoin="round"
|
|
className={`block shrink-0 ${className}`}
|
|
aria-hidden
|
|
>
|
|
<path d={d} />
|
|
</svg>
|
|
);
|
|
}
|