Capture short, single-line text.
Default
Sizes
With Icons
States
1234567891011121314151617181920212223242526272829303132333435363738394041| Prop | Type | Default | Description |
|---|---|---|---|
type | string | "text" | Input type: "text", "email", "password", "number", etc. |
placeholder | string | — | Placeholder text displayed when input is empty |
value | string | — | Controlled input value |
defaultValue | string | — | Default input value (uncontrolled) |
onChange | (e: ChangeEvent) => void | — | Callback when input value changes |
size | "sm" | "md" | "lg" | "md" | Size variant of the input |
leadingIcon | ReactNode | — | Icon displayed before the input text |
trailingIcon | ReactNode | — | Icon displayed after the input text |
disabled | boolean | false | Disable input interaction |
readOnly | boolean | false | Make input read-only (value cannot be changed) |
error | boolean | false | Show error state styling |
className | string | — | Additional CSS classes |