'use client';
// Simple SVG icon components based on Lucide icons
// Using inline SVGs to avoid external dependencies
interface IconProps {
className?: string;
size?: number;
}
const createIcon = (paths: string) => {
return function Icon({ className = '', size = 24 }: IconProps) {
return (
);
};
};
export const icons: Record> = {
// Infrastructure
'server': createIcon(''),
'scroll-text': createIcon(''),
'monitor': createIcon(''),
// Automation
'workflow': createIcon(''),
// Development
'git-branch': createIcon(''),
'database': createIcon(''),
'table': createIcon(''),
// Knowledge
'book-open': createIcon(''),
'grid-3x3': createIcon(''),
// Storage
'folder': createIcon(''),
'hard-drive': createIcon(''),
'archive': createIcon(''),
// Monitoring
'activity': createIcon(''),
'bell': createIcon(''),
// Security
'lock': createIcon(''),
'shield': createIcon(''),
// Developer tools
'book': createIcon(''),
'check-circle': createIcon(''),
'brackets': createIcon(''),
'package': createIcon(''),
'arrow-right-left': createIcon(''),
// AI tools
'bot': createIcon(''),
'message-square': createIcon(''),
'search': createIcon(''),
'code': createIcon(''),
'terminal': createIcon(''),
// AI platforms
'layout': createIcon(''),
'cpu': createIcon(''),
'smile': createIcon(''),
'users': createIcon(''),
// Utilities
'pencil': createIcon(''),
'braces': createIcon(''),
'image': createIcon(''),
'image-down': createIcon(''),
'file-image': createIcon(''),
// Design
'figma': createIcon(''),
'palette': createIcon(''),
'shapes': createIcon(''),
'circle': createIcon(''),
// Learning
'graduation-cap': createIcon(''),
'globe': createIcon(''),
// Productivity
'list-todo': createIcon(''),
'notebook': createIcon(''),
// UI elements
'sun': createIcon(''),
'moon': createIcon(''),
'external-link': createIcon(''),
'refresh-cw': createIcon(''),
'x': createIcon(''),
'settings': createIcon(''),
'loader': createIcon(''),
};
export function Icon({ name, className, size }: { name: string; className?: string; size?: number }) {
const IconComponent = icons[name];
if (!IconComponent) {
return ?;
}
return ;
}