import { useState, JSX } from 'react'; import { Boxes } from 'lucide-react'; import { Package } from '../../types'; import { InstallGuide } from '../InstallGuide'; import { Badge } from './Badge'; import { ExpandButton } from './ExpandButton'; interface PackageCardProps { package: Package; } export function PackageCard({ package: pkg }: PackageCardProps): JSX.Element { const [expanded, setExpanded] = useState(false); return (
{/* Header Section */}
{/* Icon */}
{/* Content */}

{pkg.name}

{pkg.version}

{pkg.description}

{pkg.repository} setExpanded(!expanded)} aria-label={expanded ? 'Collapse package details' : 'Expand package details'} />
{/* Expandable Section */} {expanded && (
)}
); }