{
  "$schema": "https://ui.shadcn.com/schema/registry-item.json",
  "name": "settings",
  "title": "Settings form",
  "description": "A profile settings card — name fields, a bio textarea, and an email-notification toggle.",
  "registryDependencies": [
    "card",
    "input",
    "textarea",
    "label",
    "button",
    "switch",
    "separator"
  ],
  "files": [
    {
      "path": "registry/blocks/settings.tsx",
      "content": "import {\n  Card,\n  CardHeader,\n  CardTitle,\n  CardDescription,\n  CardContent,\n  CardFooter,\n} from '@/components/ui/card'\nimport { Input } from '@/components/ui/input'\nimport { Textarea } from '@/components/ui/textarea'\nimport { Label } from '@/components/ui/label'\nimport { Button } from '@/components/ui/button'\nimport { Switch } from '@/components/ui/switch'\nimport { Separator } from '@/components/ui/separator'\n\n/** A profile settings card — name fields, a bio textarea, and an email-notification toggle. */\nexport function Settings() {\n  return (\n    <Card className=\"w-[560px]\">\n      <CardHeader>\n        <CardTitle>Profile</CardTitle>\n        <CardDescription>Update your public profile and notification preferences.</CardDescription>\n      </CardHeader>\n      <CardContent className=\"flex flex-col gap-5\">\n        <div className=\"grid grid-cols-2 gap-4\">\n          <div className=\"flex flex-col gap-1.5\">\n            <Label htmlFor=\"s-first\">First name</Label>\n            <Input id=\"s-first\" defaultValue=\"Ada\" />\n          </div>\n          <div className=\"flex flex-col gap-1.5\">\n            <Label htmlFor=\"s-last\">Last name</Label>\n            <Input id=\"s-last\" defaultValue=\"Lovelace\" />\n          </div>\n        </div>\n        <div className=\"flex flex-col gap-1.5\">\n          <Label htmlFor=\"s-bio\">Bio</Label>\n          <Textarea id=\"s-bio\" placeholder=\"Tell us a little about yourself…\" />\n        </div>\n        <Separator />\n        <div className=\"flex items-center justify-between\">\n          <div className=\"flex flex-col\">\n            <Label htmlFor=\"s-notify\">Email notifications</Label>\n            <span className=\"text-sm text-muted-foreground\">Get notified about activity.</span>\n          </div>\n          <Switch id=\"s-notify\" defaultChecked />\n        </div>\n      </CardContent>\n      <CardFooter className=\"justify-end gap-2\">\n        <Button variant=\"ghost\">Cancel</Button>\n        <Button>Save changes</Button>\n      </CardFooter>\n    </Card>\n  )\n}\n",
      "type": "registry:component",
      "target": "components/quill/settings.tsx"
    }
  ],
  "meta": {
    "intent": [
      "settings",
      "form"
    ],
    "use_when": "You need a profile settings form with name, bio, and notification preferences.",
    "not_for": "you're sending a one-off message, not editing a persistent profile → contact-form; setup needs multiple sequential steps, not a single settings page a user returns to and edits freely → wizard"
  },
  "docs": "A profile settings card — name fields, a bio textarea, and an email-notification toggle. Do: Keep Save changes and Cancel as two distinct, clearly differentiated actions (primary vs ghost). Don't: Make Cancel look as prominent as Save — the user should never mis-tap away unsaved changes as the default action. Use contact-form when you're sending a one-off message, not editing a persistent profile. Use wizard when setup needs multiple sequential steps, not a single settings page a user returns to and edits freely.",
  "categories": [
    "settings",
    "form"
  ],
  "type": "registry:block"
}