import { Atom, Bot, Brain, Bug, CircuitBoard, Code, Cog, Cpu, Crown, Database, Eye, FileCode, Fingerprint, Flame, Gem, GitBranch, Globe, Hammer, Heart, Hexagon, Lightbulb, Lock, Mail, MessageSquare, Microscope, Package, Pentagon, Puzzle, Radar, Rocket, Search, Shield, Sparkles, Star, Swords, Target, Telescope, Terminal, Wand2, Wrench, Zap, type LucideIcon, } from "lucide-react"; import { AGENT_ICON_NAMES, type AgentIconName } from "@paperclipai/shared"; export const AGENT_ICONS: Record = { bot: Bot, cpu: Cpu, brain: Brain, zap: Zap, rocket: Rocket, code: Code, terminal: Terminal, shield: Shield, eye: Eye, search: Search, wrench: Wrench, hammer: Hammer, lightbulb: Lightbulb, sparkles: Sparkles, star: Star, heart: Heart, flame: Flame, bug: Bug, cog: Cog, database: Database, globe: Globe, lock: Lock, mail: Mail, "message-square": MessageSquare, "file-code": FileCode, "git-branch": GitBranch, package: Package, puzzle: Puzzle, target: Target, wand: Wand2, atom: Atom, "circuit-board": CircuitBoard, radar: Radar, swords: Swords, telescope: Telescope, microscope: Microscope, crown: Crown, gem: Gem, hexagon: Hexagon, pentagon: Pentagon, fingerprint: Fingerprint, }; const DEFAULT_ICON: AgentIconName = "bot"; export function getAgentIcon(iconName: string | null | undefined): LucideIcon { if (iconName && AGENT_ICON_NAMES.includes(iconName as AgentIconName)) { return AGENT_ICONS[iconName as AgentIconName]; } return AGENT_ICONS[DEFAULT_ICON]; }