{
  "$schema": "https://ui.shadcn.com/schema/registry-item.json",
  "name": "dropdown-11",
  "title": "Table row actions",
  "description": "Per-row ellipsis menu with edit, copy, and remove.",
  "dependencies": [],
  "registryDependencies": [
    "dropdown-menu",
    "button",
    "table"
  ],
  "files": [
    {
      "path": "registry/patterns/dropdown/dropdown-11.tsx",
      "content": "import { Button } from '@/components/ui/button'\nimport {\n  DropdownMenu,\n  DropdownMenuContent,\n  DropdownMenuGroup,\n  DropdownMenuItem,\n  DropdownMenuLabel,\n  DropdownMenuSeparator,\n  DropdownMenuTrigger,\n} from '@/components/ui/dropdown-menu'\nimport {\n  Table,\n  TableBody,\n  TableCell,\n  TableHead,\n  TableHeader,\n  TableRow,\n} from '@/components/ui/table'\nimport {\n  CopyIcon,\n  MoreHorizontalIcon,\n  PencilIcon,\n  TrashIcon,\n} from 'lucide-react'\n\nconst members = [\n  { name: 'Ava Carter', email: 'ava@acme.com', role: 'Owner' },\n  { name: 'Ben Lopez', email: 'ben@acme.com', role: 'Member' },\n  { name: 'Cara Diaz', email: 'cara@acme.com', role: 'Member' },\n]\n\nexport function Dropdown11() {\n  return (\n    <div className=\"w-full max-w-xl overflow-hidden rounded-lg border\">\n      <Table>\n        <TableHeader>\n          <TableRow>\n            <TableHead>Name</TableHead>\n            <TableHead>Role</TableHead>\n            <TableHead className=\"w-12\" />\n          </TableRow>\n        </TableHeader>\n        <TableBody>\n          {members.map((member) => (\n            <TableRow key={member.email}>\n              <TableCell>\n                <div className=\"flex flex-col\">\n                  <span className=\"font-medium\">{member.name}</span>\n                  <span className=\"text-muted-foreground\">{member.email}</span>\n                </div>\n              </TableCell>\n              <TableCell>{member.role}</TableCell>\n              <TableCell>\n                <DropdownMenu>\n                  <DropdownMenuTrigger\n                    render={\n                      <Button\n                        variant=\"ghost\"\n                        size=\"icon-sm\"\n                        aria-label={`Actions for ${member.name}`}\n                      >\n                        <MoreHorizontalIcon />\n                      </Button>\n                    }\n                  />\n                  <DropdownMenuContent align=\"end\" className=\"w-40\">\n                    <DropdownMenuGroup>\n                      <DropdownMenuLabel>Actions</DropdownMenuLabel>\n                    </DropdownMenuGroup>\n                    <DropdownMenuSeparator />\n                    <DropdownMenuItem>\n                      <PencilIcon />\n                      Edit\n                    </DropdownMenuItem>\n                    <DropdownMenuItem>\n                      <CopyIcon />\n                      Copy email\n                    </DropdownMenuItem>\n                    <DropdownMenuSeparator />\n                    <DropdownMenuItem variant=\"destructive\">\n                      <TrashIcon />\n                      Remove\n                    </DropdownMenuItem>\n                  </DropdownMenuContent>\n                </DropdownMenu>\n              </TableCell>\n            </TableRow>\n          ))}\n        </TableBody>\n      </Table>\n    </div>\n  )\n}\n",
      "type": "registry:component",
      "target": "components/flx/patterns/dropdown/dropdown-11.tsx"
    }
  ],
  "type": "registry:block"
}