{
  "$schema": "https://ui.shadcn.com/schema/registry-item.json",
  "name": "contact-2",
  "registryDependencies": [
    "@fulldev/button",
    "@fulldev/field",
    "@fulldev/input",
    "@fulldev/section",
    "@fulldev/textarea",
    "@fulldev/icon"
  ],
  "files": [
    {
      "path": "src/components/blocks/contact-2.astro",
      "content": "---\nimport { cn } from \"@/lib/utils\"\nimport { Button } from \"@/components/ui/button\"\nimport {\n  Field,\n  FieldGroup,\n  FieldLabel,\n  FieldLegend,\n  FieldSet,\n} from \"@/components/ui/field\"\nimport { Icon } from \"@/components/ui/icon\"\nimport { Input } from \"@/components/ui/input\"\nimport { Section, SectionContainer } from \"@/components/ui/section\"\nimport { Textarea } from \"@/components/ui/textarea\"\n\ntype Props = {\n  class?: string\n  title: string\n  description: string\n  contactItems: {\n    icon: string\n    title: string\n    description: string\n    href?: string\n  }[]\n  form: {\n    title: string\n    legend: string\n    nameLabel: string\n    namePlaceholder: string\n    emailLabel: string\n    emailPlaceholder: string\n    messageLabel: string\n    messagePlaceholder: string\n    actionLabel: string\n  }\n}\n\nconst { class: className, title, description, contactItems, form } = Astro.props\n---\n\n<Section class={cn(\"\", className)}>\n  <SectionContainer\n    class=\"grid gap-10 lg:grid-cols-[minmax(0,1fr)_22rem] lg:items-start\"\n  >\n    <div class=\"flex flex-col gap-6\">\n      <div class=\"flex flex-col gap-4\">\n        <h2\n          class=\"text-foreground text-3xl font-semibold tracking-tight text-balance sm:text-4xl\"\n        >\n          {title}\n        </h2>\n        <p class=\"text-muted-foreground max-w-xl text-base leading-relaxed\">\n          {description}\n        </p>\n      </div>\n      <div class=\"rounded-xl border p-6\">\n        <div class=\"mb-6\">\n          <h3 class=\"text-lg font-medium\">{form.title}</h3>\n        </div>\n        <FieldSet>\n          <FieldLegend class=\"sr-only\">{form.legend}</FieldLegend>\n          <FieldGroup>\n            <div class=\"grid gap-4 md:grid-cols-2\">\n              <Field>\n                <FieldLabel for=\"contact-name-2\">{form.nameLabel}</FieldLabel>\n                <Input id=\"contact-name-2\" placeholder={form.namePlaceholder} />\n              </Field>\n              <Field>\n                <FieldLabel for=\"contact-email-2\">{form.emailLabel}</FieldLabel>\n                <Input\n                  id=\"contact-email-2\"\n                  type=\"email\"\n                  placeholder={form.emailPlaceholder}\n                />\n              </Field>\n            </div>\n            <Field>\n              <FieldLabel for=\"contact-message-2\"\n                >{form.messageLabel}</FieldLabel\n              >\n              <Textarea\n                id=\"contact-message-2\"\n                rows={5}\n                placeholder={form.messagePlaceholder}\n              />\n            </Field>\n            <Button size=\"lg\" class=\"w-full\">{form.actionLabel}</Button>\n          </FieldGroup>\n        </FieldSet>\n      </div>\n    </div>\n\n    <div class=\"flex flex-col gap-3\">\n      {\n        contactItems.map((item) => (\n          <div class=\"flex gap-4 rounded-xl border p-4\">\n            {item.href ? (\n              <Button\n                as=\"a\"\n                href={item.href}\n                variant=\"secondary\"\n                size=\"icon\"\n                class=\"text-primary shrink-0\"\n                aria-label={item.title}\n              >\n                <Icon name={item.icon} />\n              </Button>\n            ) : (\n              <Button\n                variant=\"secondary\"\n                size=\"icon\"\n                class=\"text-primary shrink-0\"\n                aria-label={item.title}\n              >\n                <Icon name={item.icon} />\n              </Button>\n            )}\n            <div class=\"flex flex-col gap-1\">\n              <p class=\"text-foreground text-sm font-medium\">{item.title}</p>\n              <p class=\"text-muted-foreground text-sm leading-relaxed\">\n                {item.description}\n              </p>\n            </div>\n          </div>\n        ))\n      }\n    </div>\n  </SectionContainer>\n</Section>\n",
      "type": "registry:block"
    }
  ],
  "type": "registry:block"
}