Textarea
Multi-line text input with label, description, error state, and resize control.
Example
Optional field
Props
| Name | Type | Default | Required | Description |
|---|---|---|---|---|
label | string | — | Required | Accessible label text |
description | string | — | No | Helper text below the textarea |
error | string | — | No | Error message (triggers error state) |
required | boolean | — | No | Marks the field as required |
hideLabel | boolean | false | No | Visually hides label (still accessible) |
resize | 'none' | 'vertical' | 'horizontal' | 'both' | 'vertical' | No | Resize behavior |
Accessibility
- Auto-generated IDs link label, description, and error via ARIA attributes
- aria-invalid set when error is present
- aria-required when required
Related Tokens
--textarea-surface--textarea-on-surface--textarea-border--textarea-gap--textarea-label-font-weight