Styled input with focus ring, validation states, and file input support. Built on Base UI Input primitive.
Input wraps Base UI's Input primitive with consistent styling. Supports focus-visible ring, data-invalid / aria-invalid error states, file input styling, and selection color customization.
import { Input } from "@/components/ui/shared/input"<Input type="email" placeholder="Email" />typeHTMLInputTypeAttribute"text"The input type (text, email, password, file, etc.)
placeholderstringPlaceholder text
disabledbooleanfalseDisable the input
classNamestringAdditional CSS classes