Input
A styled input component that extends the HTML input element.
Usage
import { Input } from "@rhinolabs/ui"
export default function InputDemo() {
return <Input type="text" placeholder="Enter your name" />
}
Examples
Basic Input
A simple text input field.
<Input placeholder="Email" type="email" />
With Labels
Input with associated label.
<div className="grid w-full max-w-sm items-center gap-1.5">
<label htmlFor="email">Email</label>
<Input type="email" id="email" placeholder="Email" />
</div>
Input Types
Different input types for various data types.
<div className="flex w-full max-w-sm flex-col gap-4">
<Input type="email" placeholder="Email" />
<Input type="password" placeholder="Password" />
<Input type="date" />
<Input type="file" />
<Input type="number" placeholder="Age" />
<Input type="tel" placeholder="Phone number" />
<Input type="url" placeholder="URL" />
<Input type="search" placeholder="Search..." />
</div>
Disabled State
Input in disabled state.
<Input disabled type="email" placeholder="Email" />
Props
The Input component extends the HTML input element props.
Prop | Type | Default | Description |
---|---|---|---|
type | string | "text" | HTML input type |
disabled | boolean | false | Whether the input is disabled |
placeholder | string | - | Placeholder text |
Design Considerations
- Use appropriate input types
- Provide clear placeholder text
- Include descriptive labels
- Show validation states
- Consider mobile input methods
Accessibility
- Associates with labels
- Supports keyboard navigation
- Provides clear focus states
- Includes ARIA attributes
- Handles error states
Last updated on