{
  "$schema": "https://ui.shadcn.com/schema/registry-item.json",
  "name": "hero69",
  "title": "Email Signup Hero",
  "description": "Minimal centered hero with inline email input field and submit button for newsletter or waitlist signups. Perfect for coming-soon pages and early access campaigns.",
  "dependencies": [
    "clsx",
    "tailwind-merge",
    "lucide-react"
  ],
  "registryDependencies": [
    "badge",
    "button",
    "input"
  ],
  "files": [
    {
      "path": "registry/hero69/hero69.tsx",
      "content": "\"use client\";\n\nimport { ArrowRight, Mail } from \"lucide-react\";\n\nimport { Badge } from \"@/components/ui/badge\";\nimport { Button } from \"@/components/ui/button\";\nimport { Input } from \"@/components/ui/input\";\nimport { cn } from \"@/lib/utils\";\n\ninterface Hero69Props {\n  badge?: {\n    label: string;\n    variant?: \"default\" | \"secondary\" | \"outline\";\n  };\n  heading?: string;\n  description?: string;\n  inputPlaceholder?: string;\n  buttonLabel?: string;\n  privacyText?: string;\n  className?: string;\n}\n\nexport const hero69Demo: Hero69Props = {\n  badge: { label: \"Coming Soon\", variant: \"secondary\" },\n  heading: \"Be the first to know\",\n  description:\n    \"We're building something amazing. Sign up to get early access and exclusive updates.\",\n  inputPlaceholder: \"Enter your email\",\n  buttonLabel: \"Get Early Access\",\n  privacyText: \"We respect your privacy. Unsubscribe at any time.\",\n};\n\nexport function Hero69({\n  badge,\n  heading,\n  description,\n  inputPlaceholder,\n  buttonLabel,\n  privacyText,\n  className,\n}: Hero69Props) {\n  return (\n    <section className={cn(\"py-16 md:py-24 w-full\", className)}>\n      <div className=\"mx-auto max-w-3xl px-4 md:px-6\">\n        <div className=\"flex flex-col items-center text-center\">\n          {badge && (\n            <Badge variant={badge.variant ?? \"default\"} className=\"mb-6\">\n              {badge.label}\n            </Badge>\n          )}\n\n          {heading && (\n            <h1 className=\"text-4xl font-bold tracking-tight md:text-5xl lg:text-6xl\">\n              {heading}\n            </h1>\n          )}\n\n          {description && (\n            <p className=\"mt-6 max-w-xl text-lg text-muted-foreground\">\n              {description}\n            </p>\n          )}\n\n          <form\n            className=\"mt-10 flex w-full max-w-md flex-col gap-3 sm:flex-row\"\n            onSubmit={(e) => e.preventDefault()}\n          >\n            <div className=\"relative flex-1\">\n              <Mail className=\"absolute left-3 top-1/2 size-4 -translate-y-1/2 text-muted-foreground\" />\n              <Input\n                type=\"email\"\n                placeholder={inputPlaceholder}\n                className=\"h-10 pl-9\"\n              />\n            </div>\n            <Button type=\"submit\" size=\"lg\" className=\"h-10\">\n              {buttonLabel}\n              <ArrowRight className=\"size-4\" />\n            </Button>\n          </form>\n\n          {privacyText && (\n            <p className=\"mt-4 text-sm text-muted-foreground\">{privacyText}</p>\n          )}\n        </div>\n      </div>\n    </section>\n  );\n}\n",
      "type": "registry:component",
      "target": "components/beste/block/hero69.tsx"
    }
  ],
  "type": "registry:block"
}