{
  "$schema": "https://ui.shadcn.com/schema/registry-item.json",
  "name": "button-21",
  "title": "Expand button",
  "description": "A plus that turns into a cross when the menu opens.",
  "dependencies": [],
  "registryDependencies": [
    "https://ui.ndekocode.dev/r/button.json",
    "https://ui.ndekocode.dev/r/icons.json",
    "https://ui.ndekocode.dev/r/theme.json"
  ],
  "files": [
    {
      "path": "registry/ndeko/components/button/button-21.tsx",
      "content": "'use client';\n\nimport { useState } from 'react';\n\nimport { PlusIcon } from '@/registry/ndeko/lib/icons';\nimport { Button } from '@/registry/ndeko/ui/button';\n\nfunction menuLabelOf(isOpen: boolean) {\n  if (isOpen) {\n    return 'Close menu';\n  }\n  return 'Open menu';\n}\n\nexport default function Button21() {\n  const [isOpen, setIsOpen] = useState(false);\n\n  function toggleMenu() {\n    setIsOpen((current) => !current);\n  }\n\n  return (\n    <Button\n      variant='outline'\n      size='icon'\n      onClick={toggleMenu}\n      aria-expanded={isOpen}\n      aria-label={menuLabelOf(isOpen)}\n    >\n      <PlusIcon className='transition-[rotate] duration-200 ease-(--ease-out-strong) group-aria-expanded/button:rotate-135' />\n    </Button>\n  );\n}\n",
      "type": "registry:component"
    }
  ],
  "categories": [
    "components",
    "button"
  ],
  "type": "registry:component"
}