{
  "$schema": "https://ui.shadcn.com/schema/registry-item.json",
  "name": "event-registration-form",
  "description": "Event registration form with attendee details",
  "dependencies": [
    "react-hook-form",
    "@hookform/resolvers",
    "zod",
    "sonner"
  ],
  "registryDependencies": [
    "https://formscn.space/r/button.json",
    "https://formscn.space/r/card.json",
    "https://formscn.space/r/input.json",
    "https://formscn.space/r/textarea.json",
    "https://formscn.space/r/label.json",
    "https://formscn.space/r/select.json"
  ],
  "files": [
    {
      "path": "src/registry/default/templates/event-registration-form.tsx",
      "content": "\"use client\";\n\nimport { useForm } from \"react-hook-form\";\nimport { zodResolver } from \"@hookform/resolvers/zod\";\nimport * as z from \"zod\";\nimport { Button } from \"@/components/ui/button\";\nimport { Card, CardContent, CardDescription, CardHeader, CardTitle } from \"@/components/ui/card\";\nimport { Input } from \"@/components/ui/input\";\nimport { Label } from \"@/components/ui/label\";\nimport { Textarea } from \"@/components/ui/textarea\";\nimport { toast } from \"sonner\";\n\nconst formSchema = z.object({\n  attendeeName: z.string().min(2, \"Name is required\"),\n  attendeeEmail: z.string().email(\"Invalid email\"),\n  company: z.string().optional(),\n  dietaryRestrictions: z.string().optional(),\n});\n\ntype FormValues = z.infer<typeof formSchema>;\n\nexport function EventRegistrationForm() {\n  const form = useForm<FormValues>({\n    resolver: zodResolver(formSchema),\n    defaultValues: {\n      attendeeName: \"\",\n      attendeeEmail: \"\",\n      company: \"\",\n      dietaryRestrictions: \"\",\n    },\n  });\n\n  const onSubmit = async (data: FormValues) => {\n    console.log(\"Form submitted:\", data);\n    toast.success(\"Successfully registered for the event!\");\n  };\n\n  return (\n    <Card className=\"w-full max-w-2xl mx-auto\">\n      <CardHeader>\n        <CardTitle>Event Registration</CardTitle>\n        <CardDescription>Register for our upcoming event</CardDescription>\n      </CardHeader>\n      <CardContent>\n        <form onSubmit={form.handleSubmit(onSubmit)} className=\"space-y-4\">\n          <div className=\"space-y-2\">\n            <Label htmlFor=\"attendeeName\">Full Name</Label>\n            <Input\n              id=\"attendeeName\"\n              placeholder=\"John Smith\"\n              {...form.register(\"attendeeName\")}\n            />\n            {form.formState.errors.attendeeName && (\n              <p className=\"text-sm text-destructive\">{form.formState.errors.attendeeName.message}</p>\n            )}\n          </div>\n          \n          <div className=\"space-y-2\">\n            <Label htmlFor=\"attendeeEmail\">Work Email</Label>\n            <Input\n              id=\"attendeeEmail\"\n              type=\"email\"\n              placeholder=\"john@company.com\"\n              {...form.register(\"attendeeEmail\")}\n            />\n            {form.formState.errors.attendeeEmail && (\n              <p className=\"text-sm text-destructive\">{form.formState.errors.attendeeEmail.message}</p>\n            )}\n          </div>\n          \n          <div className=\"space-y-2\">\n            <Label htmlFor=\"company\">Company Name</Label>\n            <Input\n              id=\"company\"\n              placeholder=\"Acme Inc.\"\n              {...form.register(\"company\")}\n            />\n          </div>\n          \n          <div className=\"space-y-2\">\n            <Label htmlFor=\"dietaryRestrictions\">Dietary Requirements</Label>\n            <Textarea\n              id=\"dietaryRestrictions\"\n              placeholder=\"Vegetarian, Gluten-free, etc.\"\n              className=\"min-h-[80px]\"\n              {...form.register(\"dietaryRestrictions\")}\n            />\n            <p className=\"text-sm text-muted-foreground\">\n              Let us know if you have any food allergies\n            </p>\n          </div>\n\n          <Button type=\"submit\" className=\"w-full\">Register Now</Button>\n        </form>\n      </CardContent>\n    </Card>\n  );\n}\n",
      "type": "registry:block",
      "target": "components/forms/event-registration-form.tsx"
    }
  ],
  "type": "registry:block"
}