{
	"$schema": "https://ui.shadcn.com/schema/registry-item.json",
	"name": "input",
	"dependencies": [],
	"registryDependencies": [],
	"files": [
		{
			"path": "ui/input.tsx",
			"content": "import * as React from \"react\"\nimport { Input as BaseInput } from \"@base-ui/react/input\"\n\nimport { cn } from \"@/lib/utils\"\n\ninterface InputProps extends React.ComponentProps<typeof BaseInput> {\n\tinputContainerClassName?: string\n\tleadingIcon?: React.ReactNode\n\ttrailingIcon?: React.ReactNode\n}\n\nfunction Input({\n\tinputContainerClassName,\n\tclassName,\n\ttype,\n\tleadingIcon,\n\ttrailingIcon,\n\tdisabled,\n\t...props\n}: InputProps) {\n\treturn (\n\t\t<div\n\t\t\tclassName={cn(\n\t\t\t\t\"group relative w-full has-[[data-slot=input][data-disabled]]:pointer-events-none has-[[data-slot=input][data-disabled]]:opacity-50\",\n\t\t\t\tinputContainerClassName\n\t\t\t)}\n\t\t\tdata-slot=\"input-container\"\n\t\t>\n\t\t\t{leadingIcon && (\n\t\t\t\t<span\n\t\t\t\t\tdata-slot=\"input-leading-icon\"\n\t\t\t\t\tclassName=\"text-muted-foreground absolute top-1/2 left-3 shrink-0 -translate-y-1/2 [&_svg]:shrink-0 [&_svg:not([class*='pointer-events-'])]:pointer-events-none [&_svg:not([class*='size-'])]:size-4\"\n\t\t\t\t>\n\t\t\t\t\t{leadingIcon}\n\t\t\t\t</span>\n\t\t\t)}\n\t\t\t<BaseInput\n\t\t\t\ttype={type}\n\t\t\t\tdata-slot=\"input\"\n\t\t\t\tclassName={cn(\n\t\t\t\t\t\"placeholder:text-muted-foreground selection:bg-primary group-hover:border-ring/70 selection:text-primary-foreground bg-input file:text-foreground focus-visible:border-ring focus-visible:ring-ring/50 aria-invalid:ring-destructive/50 aria-invalid:border-destructive flex h-9 w-full min-w-0 rounded-md border px-3 py-1 text-base shadow-xs transition-[color,box-shadow,border-color] outline-none file:inline-flex file:h-7 file:border-0 file:bg-transparent file:text-sm file:font-medium focus-visible:ring-[3px] md:text-sm\",\n\t\t\t\t\tleadingIcon && \"pl-10\",\n\t\t\t\t\ttrailingIcon && \"pr-10\",\n\t\t\t\t\tclassName\n\t\t\t\t)}\n\t\t\t\tdisabled={disabled}\n\t\t\t\t{...props}\n\t\t\t/>\n\t\t\t{trailingIcon && (\n\t\t\t\t<span\n\t\t\t\t\tdata-slot=\"input-trailing-icon\"\n\t\t\t\t\tclassName=\"text-muted-foreground absolute top-1/2 right-3 shrink-0 -translate-y-1/2 [&_svg]:shrink-0 [&_svg:not([class*='pointer-events-'])]:pointer-events-none [&_svg:not([class*='size-'])]:size-4\"\n\t\t\t\t>\n\t\t\t\t\t{trailingIcon}\n\t\t\t\t</span>\n\t\t\t)}\n\t\t</div>\n\t)\n}\n\nexport { Input }\n",
			"type": "registry:ui",
			"target": ""
		}
	],
	"type": "registry:ui"
}
