Input
A semantic field primitive with default, soft and glass surfaces. InputGroup gives icons, prefixes and actions one shared focus ring.
Import
import { Input, InputGroup, InputGroupAddon } from "@/components/ui/atoms/input";Surface variants
Variant and radius are independent and consumer className remains the final override.
<Input variant="default" placeholder="Default" />
<Input variant="soft" radius="lg" placeholder="Soft" />
<Input variant="glass" radius="xl" placeholder="Glass" />Single-focus InputGroup
The icon and suffix belong to the same field surface. Only the group draws focus; the editable input never creates a second ring.
⌘K
<InputGroup variant="glass" radius="xl">
<InputGroupAddon position="start"><Search /></InputGroupAddon>
<Input placeholder="Search everything..." />
<InputGroupAddon position="end">⌘K</InputGroupAddon>
</InputGroup>Invalid and disabled
Enter a valid email address.
<Input aria-invalid placeholder="Invalid value" />
<Input disabled value="Disabled" readOnly />pnpm dlx shadcn@latest add @poyraz/inputRuntime dependencies
class-variance-authority@^0.7.1
Registry dependencies
@poyraz/poyraz-utils, @poyraz/poyraz-theme, @poyraz/poyraz-recipes
Installed files
@ui/atoms/input.tsx