{
  "$schema": "https://ui.shadcn.com/schema/registry-item.json",
  "name": "input",
  "type": "registry:item",
  "title": "Input",
  "description": "An input component for user text entry.",
  "files": [
    {
      "path": "registry/brook/ui/input/input.tsx",
      "content": "\"use client\";\n\nimport { Input } from \"@base-ui/react/input\";\nimport { cn } from \"@/lib/utils\";\nimport styles from \"./input.module.css\";\n\ninterface InputProps extends Input.Props {\n  variant?: \"default\" | \"error\";\n}\n\nfunction InputRoot({ className, variant = \"default\", ...props }: InputProps) {\n  return (\n    <Input\n      className={(state: Input.State) =>\n        cn(styles.base, styles[variant], typeof className === \"function\" ? className(state) : className)\n      }\n      {...props}\n    />\n  );\n}\n\nexport { InputRoot as Input };\n",
      "type": "registry:file",
      "target": "~/components/ui/input/input.tsx"
    },
    {
      "path": "registry/brook/ui/input/input.module.css",
      "content": ".base {\n  display: flex;\n  height: 2.5rem;\n  width: 100%;\n  border-radius: var(--radius);\n  border: none;\n  background-color: var(--popover);\n  padding: 0 0.75rem;\n  font-size: 0.875rem;\n  transition: all 150ms ease-out;\n  color: var(--foreground);\n  box-shadow: 0 0 0 1px oklch(from var(--border) l c h / 0.5);\n}\n\n.base::placeholder {\n  color: var(--muted-foreground);\n  font-size: 0.875rem;\n}\n\n.base:focus,\n.base:focus-visible,\n.base[data-focused] {\n  outline: none;\n  box-shadow:\n    0 0 0 1px var(--ring),\n    0 0 0 3px oklch(from var(--ring) l c h / 0.2);\n}\n\n.base[data-disabled] {\n  cursor: not-allowed;\n  opacity: 0.5;\n}\n\n.base[data-invalid] {\n  box-shadow: 0 0 0 1px var(--destructive);\n}\n\n.base[data-invalid]:focus,\n.base[data-invalid][data-focused] {\n  box-shadow:\n    0 0 0 1px var(--destructive),\n    0 0 0 3px oklch(from var(--destructive) l c h / 0.2);\n}\n\n.error {\n  box-shadow: 0 0 0 1px var(--destructive);\n}\n",
      "type": "registry:file",
      "target": "~/components/ui/input/input.module.css"
    }
  ]
}