import { useState } from "react";
import {
Bot,
CircleDot,
DollarSign,
Hexagon,
History,
Inbox,
LayoutDashboard,
ListTodo,
Mail,
Plus,
Search,
Settings,
Target,
Trash2,
Upload,
User,
Zap,
} from "lucide-react";
import { Button } from "@/components/ui/button";
import { Badge } from "@/components/ui/badge";
import { Input } from "@/components/ui/input";
import { Textarea } from "@/components/ui/textarea";
import { Checkbox } from "@/components/ui/checkbox";
import { Label } from "@/components/ui/label";
import { Separator } from "@/components/ui/separator";
import { Skeleton } from "@/components/ui/skeleton";
import { Tabs, TabsList, TabsTrigger, TabsContent } from "@/components/ui/tabs";
import {
Card,
CardHeader,
CardTitle,
CardDescription,
CardContent,
CardFooter,
} from "@/components/ui/card";
import {
Dialog,
DialogTrigger,
DialogContent,
DialogHeader,
DialogTitle,
DialogDescription,
DialogFooter,
} from "@/components/ui/dialog";
import {
Tooltip,
TooltipTrigger,
TooltipContent,
} from "@/components/ui/tooltip";
import {
Avatar,
AvatarFallback,
AvatarGroup,
AvatarGroupCount,
} from "@/components/ui/avatar";
import { StatusBadge } from "@/components/StatusBadge";
import { StatusIcon } from "@/components/StatusIcon";
import { PriorityIcon } from "@/components/PriorityIcon";
import { EntityRow } from "@/components/EntityRow";
import { EmptyState } from "@/components/EmptyState";
import { MetricCard } from "@/components/MetricCard";
import { FilterBar, type FilterValue } from "@/components/FilterBar";
import { InlineEditor } from "@/components/InlineEditor";
import { PageSkeleton } from "@/components/PageSkeleton";
/* ------------------------------------------------------------------ */
/* Section wrapper */
/* ------------------------------------------------------------------ */
function Section({ title, children }: { title: string; children: React.ReactNode }) {
return (
{title}
{cssVar}
{name}
Every component, style, and pattern used across Paperclip.
Card Title — text-sm font-medium
Card Title Alt — text-sm font-semibold
Body text — text-sm
Muted description — text-sm text-muted-foreground
Tiny label — text-xs text-muted-foreground
Mono identifier — text-xs font-mono text-muted-foreground
Large stat — text-2xl font-bold
Log/code text — font-mono text-xs
Click the text above to edit inline.
Card content goes here. This is the main body area.
Overview tab content.
Runs tab content.
Config tab content.
Costs tab content.
Summary content with underline tabs.
Details content.
Comments content.
Started working on the authentication module. Will need API keys configured.
API keys have been added to the vault. Please proceed.
| Model | Tokens | Cost |
|---|---|---|
| claude-sonnet-4-20250514 | 1.2M | $18.00 |
| claude-haiku-4-20250506 | 500k | $1.25 |
| Total | 1.7M | $19.25 |
Horizontal