{ "$schema": "https://ui.shadcn.com/schema/registry-item.json", "name": "staggered-dropdown-shadcnui", "type": "registry:component", "title": "Staggered Dropdown", "description": "Dropdown menu with staggered item animations", "registryDependencies": [ "button" ], "dependencies": [ "framer-motion", "react" ], "files": [ { "path": "@uitripled/react-shadcn/src/components/components/dropdown/staggered-items.tsx", "content": "\"use client\";\n\nimport { AnimatePresence, motion } from \"framer-motion\";\nimport { ChevronDown } from \"lucide-react\";\nimport { useState } from \"react\";\n\nconst items = [\"Profile\", \"Settings\", \"Billing\", \"Team\", \"Logout\"];\n\nexport function StaggeredDropdown() {\n const [isOpen, setIsOpen] = useState(false);\n\n return (\n
\n
\n setIsOpen(!isOpen)}\n className=\"flex items-center gap-2 rounded-lg border bg-[var(--card-bg)] px-4 py-2 shadow-sm transition-colors hover:bg-gray-50 dark:hover:bg-gray-800\"\n >\n Menu\n \n \n\n \n {isOpen && (\n \n {items.map((item, index) => (\n setIsOpen(false)}\n className=\"w-full px-4 py-2.5 text-left transition-colors hover:bg-gray-100 dark:hover:bg-gray-800\"\n >\n {item}\n \n ))}\n \n )}\n \n
\n
\n );\n}\n", "type": "registry:component", "target": "components/uitripled/staggered-dropdown-shadcnui.tsx" } ] }