TextArea
A multiline text input with built-in label, description, error handling, and configurable resize behavior.
Basic
With Description
With Error
Required
Resize Modes
Colors
Props
| Prop | Type | Default | Description |
|---|---|---|---|
label | string | — | Label text displayed above the textarea. |
description | string | — | Helper text displayed below the textarea. |
error | string | — | Error message displayed below the textarea. Overrides description when set. |
required | boolean | false | Marks the field as required with a visual indicator. |
color | "blue" | "red" | "green" | "yellow" | "purple" | "neutral" | string | "blue" | Accent color for the focus ring. |
resize | "vertical" | "horizontal" | "both" | "none" | "vertical" | Controls the resize behavior of the textarea. |
--mantle-bg | CSS variable | theme default | Override the background color via style. e.g. style={{ "--mantle-bg": "#1a1a2e" }} |
--mantle-border | CSS variable | theme default | Override the border color via style. Set to "transparent" to remove. e.g. style={{ "--mantle-border": "#e94560" }} |
--mantle-text | CSS variable | theme default | Override the text color via style. e.g. style={{ "--mantle-text": "#ffffff" }} |
--mantle-ring | CSS variable | accent | Override the focus ring color via style. e.g. style={{ "--mantle-ring": "#e94560" }} |
labelstringLabel text displayed above the textarea.
descriptionstringHelper text displayed below the textarea.
errorstringError message displayed below the textarea. Overrides description when set.
requiredfalsebooleanMarks the field as required with a visual indicator.
color"blue""blue" | "red" | "green" | "yellow" | "purple" | "neutral" | stringAccent color for the focus ring.
resize"vertical""vertical" | "horizontal" | "both" | "none"Controls the resize behavior of the textarea.
--mantle-bgtheme defaultCSS variableOverride the background color via style. e.g. style={{ "--mantle-bg": "#1a1a2e" }}
--mantle-bordertheme defaultCSS variableOverride the border color via style. Set to "transparent" to remove. e.g. style={{ "--mantle-border": "#e94560" }}
--mantle-texttheme defaultCSS variableOverride the text color via style. e.g. style={{ "--mantle-text": "#ffffff" }}
--mantle-ringaccentCSS variableOverride the focus ring color via style. e.g. style={{ "--mantle-ring": "#e94560" }}