import React from "react"; import { Link } from "@remix-run/react"; import { Card, CardContent, CardDescription, CardFooter, CardHeader, CardTitle, } from "~/components/ui/card"; import { getIcon, type IconType } from "~/components/icon-utils"; interface IntegrationCardProps { integration: { id: string; name: string; description?: string; icon: string; slug?: string; }; isConnected: boolean; onClick?: () => void; showDetail?: boolean; } export function IntegrationCard({ integration, isConnected, onClick, showDetail = false, }: IntegrationCardProps) { const Component = getIcon(integration.icon as IconType); const CardWrapper = showDetail ? Link : "div"; const cardProps = showDetail ? { to: `/home/integration/${integration.slug || integration.id}` } : { onClick, className: "cursor-pointer" }; return (
{integration.name} {integration.description || `Connect to ${integration.name}`}
{isConnected && (
Connected
)}
); }