A client-side React card component that displays a brand association item with an icon, title, description, and an external link button. ## Key Components ### Interfaces - **`BrandAssociationItem`** — Data shape for a card entry, containing: - `icon` — Accepts either a React component type or a pre-rendered React element - `title`, `description`, `buttonText`, `link` — Display content and navigation target - **`BrandAssociationCardProps`** — Props for the card component (`item` + optional `className`) ### Exports - **`BrandAssociationCard`** — The primary card component. Internally uses a `renderIcon` helper that handles both raw React elements and component types (rendering the latter at `size={120}` with `w-20 h-20` classes). ## Usage Example ```typescript import { BrandAssociationCard } from './brand-association-card'; import { ShieldCheck } from 'lucide-react'; const item = { icon: ShieldCheck, // component type title: 'Security Tools', description: 'Browse our curated security integrations.', buttonText: 'Integrations', link: 'https://openframe.ai/integrations', }; // Pre-rendered element also accepted: const item2 = { icon: , // React element // ... }; ``` ## Notes - Uses `'use client'` — intended for Next.js App Router client components. - The `Button` component's `openInNewTab` prop and `ExternalLink` icon are applied automatically. - Source: [`brand-association-card.tsx`](https://github.com/flamingo-stack/openframe-oss-lib/blob/main/brand-association-card.tsx)