Overhaul UI with shadcn components and new pages

Add shadcn/ui components (badge, button, card, input, select,
separator). Add company context provider. New pages: Activity,
Approvals, Companies, Costs, Org chart. Restyle existing pages
(Dashboard, Agents, Issues, Goals, Projects) with shadcn components
and dark theme. Update layout, sidebar navigation, and routing.

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
This commit is contained in:
Forgotten
2026-02-17 09:07:32 -06:00
parent abadd469bc
commit 22e7930d0b
40 changed files with 1555 additions and 137 deletions

18
ui/src/api/costs.ts Normal file
View File

@@ -0,0 +1,18 @@
import type { CostSummary } from "@paperclip/shared";
import { api } from "./client";
export interface CostByEntity {
agentId?: string | null;
projectId?: string | null;
costCents: number;
inputTokens: number;
outputTokens: number;
}
export const costsApi = {
summary: (companyId: string) => api.get<CostSummary>(`/companies/${companyId}/costs/summary`),
byAgent: (companyId: string) =>
api.get<CostByEntity[]>(`/companies/${companyId}/costs/by-agent`),
byProject: (companyId: string) =>
api.get<CostByEntity[]>(`/companies/${companyId}/costs/by-project`),
};