{
  "$schema": "https://ui.shadcn.com/schema/registry-item.json",
  "extends": "none",
  "name": "menu-with-icon-example",
  "title": "Menu With Icon",
  "description": "menu-with-icon-example",
  "dependencies": [
    "@heroicons/react"
  ],
  "registryDependencies": [
    "https://intentui.com/r/avatar",
    "https://intentui.com/r/menu"
  ],
  "files": [
    {
      "path": "src/components/examples/collections/menu/menu-with-icon-example.tsx",
      "content": "'use client'\n\nimport {\n  ArrowLeftOnRectangleIcon,\n  Cog6ToothIcon,\n  CommandLineIcon,\n  ComputerDesktopIcon,\n  MoonIcon,\n  Squares2X2Icon,\n  SunIcon,\n} from '@heroicons/react/24/outline'\nimport { useTheme } from '@/components/theme-provider'\nimport { Avatar } from '@/components/ui/avatar'\nimport {\n  Menu,\n  MenuContent,\n  MenuHeader,\n  MenuItem,\n  MenuLabel,\n  MenuSection,\n  MenuSeparator,\n  MenuSubMenu,\n  MenuTrigger,\n} from '@/components/ui/menu'\n\nexport default function MenuWithIconDemo() {\n  const { resolvedTheme, setTheme } = useTheme()\n  return (\n    <Menu>\n      <MenuTrigger aria-label=\"Open Menu\">\n        <Avatar alt=\"kurt cobain\" size=\"lg\" src=\"https://intentui.com/images/avatar/cobain.jpg\" />\n      </MenuTrigger>\n      <MenuContent popover={{ placement: 'bottom' }} className=\"min-w-48\">\n        <MenuHeader separator>\n          <span className=\"block\">Kurt Cobain</span>\n          <span className=\"font-normal text-muted-fg\">@cobain</span>\n        </MenuHeader>\n\n        <MenuSection>\n          <MenuItem href=\"#dashboard\">\n            <Squares2X2Icon className=\"size-6\" aria-hidden=\"true\" />\n            <MenuLabel>Dashboard</MenuLabel>\n          </MenuItem>\n          <MenuItem href=\"#settings\">\n            <Cog6ToothIcon className=\"size-6\" aria-hidden=\"true\" />\n            <MenuLabel>Settings</MenuLabel>\n          </MenuItem>\n        </MenuSection>\n        <MenuSeparator />\n        <MenuItem>\n          <CommandLineIcon className=\"size-6\" aria-hidden=\"true\" />\n          <MenuLabel>Command Menu</MenuLabel>\n        </MenuItem>\n        <MenuSubMenu>\n          <MenuItem>\n            {resolvedTheme === 'light' ? (\n              <SunIcon className=\"size-6\" aria-hidden=\"true\" />\n            ) : resolvedTheme === 'dark' ? (\n              <MoonIcon className=\"size-6\" aria-hidden=\"true\" />\n            ) : (\n              <ComputerDesktopIcon className=\"size-6\" aria-hidden=\"true\" />\n            )}\n            <MenuLabel>Switch theme</MenuLabel>\n          </MenuItem>\n          <MenuContent>\n            <MenuItem onAction={() => setTheme('system')}>\n              <ComputerDesktopIcon className=\"size-6\" aria-hidden=\"true\" /> System\n            </MenuItem>\n            <MenuItem onAction={() => setTheme('dark')}>\n              <MoonIcon className=\"size-6\" aria-hidden=\"true\" /> Dark\n            </MenuItem>\n            <MenuItem onAction={() => setTheme('light')}>\n              <SunIcon className=\"size-6\" aria-hidden=\"true\" /> Light\n            </MenuItem>\n          </MenuContent>\n        </MenuSubMenu>\n        <MenuSeparator />\n        <MenuItem href=\"#contact-s\">\n          <MenuLabel>Contact Support</MenuLabel>\n        </MenuItem>\n        <MenuSeparator />\n        <MenuItem href=\"#logout\">\n          <ArrowLeftOnRectangleIcon className=\"size-6\" aria-hidden=\"true\" />\n          <MenuLabel>Log out</MenuLabel>\n        </MenuItem>\n      </MenuContent>\n    </Menu>\n  )\n}\n",
      "type": "registry:page",
      "target": "app/menu-with-icon-example/page.tsx"
    }
  ],
  "type": "registry:page"
}