{
  "$schema": "https://ui.shadcn.com/schema/registry-item.json",
  "name": "dropdown-09",
  "title": "Menu with submenus",
  "description": "Icons, shortcuts and submenus holding a radio group and checkboxes.",
  "dependencies": [],
  "registryDependencies": [
    "https://ui.ndekocode.dev/r/button.json",
    "https://ui.ndekocode.dev/r/dropdown-menu.json",
    "https://ui.ndekocode.dev/r/icons.json",
    "https://ui.ndekocode.dev/r/kbd.json",
    "https://ui.ndekocode.dev/r/theme.json"
  ],
  "files": [
    {
      "path": "registry/ndeko/components/dropdown/dropdown-09.tsx",
      "content": "'use client';\n\nimport { useState } from 'react';\n\nimport {\n  ArchiveIcon,\n  ChevronDownIcon,\n  PlusIcon,\n  Share2Icon,\n  TrashIcon,\n} from '@/registry/ndeko/lib/icons';\nimport { Button } from '@/registry/ndeko/ui/button';\nimport {\n  DropdownMenu,\n  DropdownMenuCheckboxItem,\n  DropdownMenuContent,\n  DropdownMenuGroup,\n  DropdownMenuItem,\n  DropdownMenuRadioGroup,\n  DropdownMenuRadioItem,\n  DropdownMenuSeparator,\n  DropdownMenuShortcut,\n  DropdownMenuSub,\n  DropdownMenuSubContent,\n  DropdownMenuSubTrigger,\n  DropdownMenuTrigger,\n} from '@/registry/ndeko/ui/dropdown-menu';\nimport { Kbd, KbdGroup } from '@/registry/ndeko/ui/kbd';\n\nfunction Shortcut({ keys }: { keys: string[] }) {\n  return (\n    <DropdownMenuShortcut>\n      <KbdGroup>\n        {keys.map((key) => (\n          <Kbd key={key}>{key}</Kbd>\n        ))}\n      </KbdGroup>\n    </DropdownMenuShortcut>\n  );\n}\n\nexport default function Dropdown09() {\n  const [framework, setFramework] = useState('nextjs');\n  const [hasEmailNotifications, setHasEmailNotifications] = useState(false);\n  const [hasPushNotifications, setHasPushNotifications] = useState(true);\n\n  return (\n    <DropdownMenu>\n      <DropdownMenuTrigger render={<Button variant='outline' />}>\n        Project\n        <ChevronDownIcon className='-me-1 opacity-60' />\n      </DropdownMenuTrigger>\n      <DropdownMenuContent>\n        <DropdownMenuItem>\n          <PlusIcon />\n          New\n          <Shortcut keys={['⌘', 'N']} />\n        </DropdownMenuItem>\n        <DropdownMenuSeparator />\n        <DropdownMenuGroup>\n          <DropdownMenuSub>\n            <DropdownMenuSubTrigger inset>Framework</DropdownMenuSubTrigger>\n            <DropdownMenuSubContent>\n              <DropdownMenuRadioGroup\n                value={framework}\n                onValueChange={setFramework}\n              >\n                <DropdownMenuRadioItem value='nextjs' closeOnClick>\n                  Next.js\n                </DropdownMenuRadioItem>\n                <DropdownMenuRadioItem value='sveltekit' closeOnClick disabled>\n                  SvelteKit\n                </DropdownMenuRadioItem>\n                <DropdownMenuRadioItem value='remix' closeOnClick>\n                  Remix\n                </DropdownMenuRadioItem>\n                <DropdownMenuRadioItem value='astro' closeOnClick>\n                  Astro\n                </DropdownMenuRadioItem>\n              </DropdownMenuRadioGroup>\n            </DropdownMenuSubContent>\n          </DropdownMenuSub>\n          <DropdownMenuSub>\n            <DropdownMenuSubTrigger inset>Notifications</DropdownMenuSubTrigger>\n            <DropdownMenuSubContent>\n              <DropdownMenuCheckboxItem\n                checked={hasEmailNotifications}\n                onCheckedChange={setHasEmailNotifications}\n              >\n                Email\n              </DropdownMenuCheckboxItem>\n              <DropdownMenuCheckboxItem\n                checked={hasPushNotifications}\n                onCheckedChange={setHasPushNotifications}\n              >\n                Push\n              </DropdownMenuCheckboxItem>\n            </DropdownMenuSubContent>\n          </DropdownMenuSub>\n        </DropdownMenuGroup>\n        <DropdownMenuSeparator />\n        <DropdownMenuGroup>\n          <DropdownMenuItem>\n            <Share2Icon />\n            Share\n          </DropdownMenuItem>\n          <DropdownMenuItem>\n            <ArchiveIcon />\n            Archive\n          </DropdownMenuItem>\n        </DropdownMenuGroup>\n        <DropdownMenuSeparator />\n        <DropdownMenuItem variant='destructive'>\n          <TrashIcon />\n          Delete\n          <Shortcut keys={['⌘', '⌫']} />\n        </DropdownMenuItem>\n      </DropdownMenuContent>\n    </DropdownMenu>\n  );\n}\n",
      "type": "registry:component"
    }
  ],
  "categories": [
    "components",
    "dropdown"
  ],
  "type": "registry:component"
}