Components
Textarea
Multi-line text input built on React Aria's TextField/TextArea, sharing Input's own Label and HintText. Two sizes, an optional tooltip, and invalid/disabled states - driven from config/design-system.config.ts.
Contextual config
Textarea sections
Show or hide documentation sections on this page. Changes apply immediately and persist across the site.
Component Playground
Live instance - the controls read their options from the same config that drives the Variants section below.
md · valid · enabledControls
Size
Hint
Sizes
Two sizes - sm and md (default).
Small / Medium
smmdWith hint text
Pass a hint for supporting detail beneath the field.
Labelled with hint
With tooltip
Use the tooltip prop to show a help tooltip next to the label - the same Label/Tooltip pairing Input uses.
Tooltip
Disabled
Dims the field and prevents interaction.
Disabled
Invalid
Pass isInvalid to switch the ring to the error token - typically paired with a validation-error hint.
Invalid
API
TextArea pairs a Label/HintText (shared with Input) around the underlying TextAreaBase field.
| Prop | Type | Default |
|---|---|---|
label | string | - |
hint | ReactNode | - |
tooltip | string | - |
size | "sm" | "md" | "md" |
placeholder | string | - |
rows | number | - |
cols | number | - |
value | string | - |
defaultValue | string | - |
onChange | (value: string) => void | - |
isDisabled | boolean | false |
isRequired | boolean | false |
isInvalid | boolean | false |
hideRequiredIndicator | boolean | false |
textAreaClassName | string | - |
className | string | - |
Usage
import { TextArea } from "@/components/base/textarea/textarea";
<TextArea
label="Purpose of data use"
hint="Explain how you plan to use this data."
rows={4}
/>Figma
No linked Figma file yet - this component was pulled in via the Untitled UI CLI, not designed in Figma first.