import { DollarSign } from 'lucide-react'; import { ReportSection } from '../ReportSection'; import type { ReportCostAnalysis } from '@renderer/types/sessionReport'; const fmt = (v: number) => `$${v.toFixed(4)}`; interface CostSectionProps { data: ReportCostAnalysis; } export const CostSection = ({ data }: CostSectionProps) => { const modelEntries = Object.entries(data.costByModel).sort((a, b) => b[1] - a[1]); return (
{fmt(data.totalSessionCostUsd)}
Parent Cost
{fmt(data.parentCostUsd)}
Subagent Cost
{fmt(data.subagentCostUsd)}
Per Commit
{data.costPerCommit != null ? fmt(data.costPerCommit) : 'N/A'}
Per Line Changed
{data.costPerLineChanged != null ? `$${data.costPerLineChanged.toFixed(6)}` : 'N/A'}
{modelEntries.length > 0 && ( {modelEntries.map(([model, cost]) => ( ))}
Model Cost
{model} {fmt(cost)}
)}
); };