Input
Styled <input>. Mirrors shadcn Input.
Purpose
Styled <input>. Mirrors shadcn Input.
Island model
island: true if it has onChange/onBlur JS handlers. As an uncontrolled native input inside a server form, it is effectively island-free — the build downgrades it when no handlers are bound.
Peer dependencies
None.
Public API
export function Input(props: React.InputHTMLAttributes<HTMLInputElement> & { className?: string }): JSX.Element
export const island = true
Patties adjustments
- Drops
forwardRef. - No special wrapper — it's literally
<input class={...} {...props} />.
Acceptance criteria
- Native form submission carries the input value when no JS is present.
- All
typevalues (text, email, number, file, etc.) render with consistent styling. disabledandaria-invalidproduce the documented styles.