Textarea
Multi-line text entry, sharing Input's border, focus and invalid states. Registers itself with an ancestor FormField automatically.
Basic
Sizes
The same sm / md / lg scale as Input, applied to padding and text.
Inside a FormField
No wiring needed - the label, description and error associate themselves.
Visible to your team only.
Clearable
clearable pins a clear button to the top-right corner once there is a value.
- Clearing fires a native input event, so onChange sees it whether the value is controlled or not
States
invalid paints the error surface; the message itself belongs to FormField.Error.
- rows sets the initial height; the control stays resizable unless you disable it in CSS
API reference
Shows an "X" button once there is a value that clears it. Works controlled or uncontrolled: it sets the DOM value and fires a native `input` event, so `onChange` sees the change.
Paints the error state. Pair with `FormField`'s `error` for the message.
Visible text lines. Without it, `size` sets a min height (5rem / 6rem / 8rem for `sm` / `md` / `lg`); with it the box is exactly `rows` tall, so `rows={1}` gives a growable one-line composer.
Padding and text scale, matching `Input` at the same value.
Also accepts everything from React.TextareaHTMLAttributes<HTMLTextAreaElement>.
Coding agents read this reference, with its examples, from the version your project has installed, through the Fuji UI MCP server. Set up your agent
