{ "name": "blog-card-three", "type": "registry:ui", "registryDependencies": [], "dependencies": [ "lucide-react" ], "devDependencies": [], "tailwind": {}, "cssVars": { "light": {}, "dark": {} }, "files": [ { "path": "blog-card-three.tsx", "content": "'use client';\n\nimport * as React from 'react';\nimport Link from 'next/link';\nimport { ThumbsUp, Bookmark } from 'lucide-react';\nimport { cn } from '@/lib/utils';\n\nexport type BlogCardThreeMeta = {\n author?: { name: string; avatar?: string; href?: string };\n readLabel?: string; // \"2 min read\"\n};\n\nexport type BlogCardThreeProps = {\n /** Whole card link */\n href?: string;\n\n /** Title */\n title: string;\n\n /** Small square thumbnail */\n thumb?: { src: string; alt?: string };\n\n /** Meta row */\n meta?: BlogCardThreeMeta;\n\n /** Actions */\n onLike?: () => void;\n onBookmark?: () => void;\n\n /** Layout */\n variant?: 'thumb-right' | 'thumb-left';\n\n /** Slot overrides */\n className?: string;\n titleClassName?: string;\n thumbClassName?: string;\n metaClassName?: string;\n actionsClassName?: string;\n};\n\nexport function BlogCardThree({\n href,\n title,\n thumb,\n meta,\n onLike,\n onBookmark,\n variant = 'thumb-right',\n className,\n titleClassName,\n thumbClassName,\n metaClassName,\n actionsClassName,\n}: BlogCardThreeProps) {\n const Wrapper: any = href ? Link : 'article';\n const wrapperProps = href\n ? { href, 'aria-label': title }\n : { role: 'article' };\n\n const Thumb = (\n