{ "$schema": "https://ui.shadcn.com/schema/registry-item.json", "name": "native-user-card-shadcnui", "type": "registry:component", "title": "Native User Card", "description": "Compact user profile card with avatar, name, handle, and action button with spring animations", "dependencies": [ "framer-motion", "react" ], "files": [ { "path": "@uitripled/react-shadcn/src/components/native/native-user-card-shadcnui.tsx", "content": "\"use client\";\n\nimport { Avatar, AvatarFallback, AvatarImage } from \"@/components/ui/avatar\";\nimport { cn } from \"@/lib/utils\";\nimport { motion, MotionConfig } from \"framer-motion\";\nimport { ArrowRight } from \"lucide-react\";\nimport Link from \"next/link\";\n\ninterface NativeUserCardProps {\n imageSrc: string;\n name: string;\n handle: string;\n href?: string;\n onClick?: () => void;\n className?: string;\n}\n\nconst transition = {\n type: \"spring\" as const,\n stiffness: 400,\n damping: 30,\n};\n\nconst wrapperClassName =\n \"group block w-full max-w-full rounded-xl text-left outline-none focus-visible:ring-2 focus-visible:ring-ring focus-visible:ring-offset-2 focus-visible:ring-offset-background\";\n\nexport function NativeUserCard({\n imageSrc,\n name,\n handle,\n href = \"#\",\n onClick,\n className,\n}: NativeUserCardProps) {\n const card = (\n \n \n \n \n \n \n {name.charAt(0).toUpperCase()}\n \n \n \n \n\n \n \n {name}\n \n \n {handle}\n \n \n \n\n \n \n \n \n );\n\n return (\n \n {onClick ? (\n \n {card}\n \n ) : (\n \n {card}\n \n )}\n \n );\n}\n", "type": "registry:component", "target": "components/uitripled/native-user-card-shadcnui.tsx" } ] }
\n {name}\n
\n {handle}\n