Gloss UIv4.4
Architecture
Style Guide
Primitives
Input
TextNumberTextareaSelectCheckboxRadioToggle
Output7
Actions4
Forms2
Dashboard10
Composites
Compositions
Planning
Applications

Prototypes

Gloss UIv4.4
Architecture
Style Guide
Primitives
Input
TextNumberTextareaSelectCheckboxRadioToggle
Output7
Actions4
Forms2
Dashboard10
Composites
Compositions
Planning
Applications

Prototypes

Textarea

Multi-line text input with support for auto-resize, character counting, and validation states.

Textarea StatesInteractive
Default
Success
Error
Disabled

Basic Usage

Provide a detailed description

Auto-Resize

Enable autoResize to automatically grow and shrink the textarea based on content. Use minRows and maxRows to constrain the resize behavior.

Expands from 2 rows to max 8 rows based on content

Character Counter

Show a character counter by setting maxLength and showCounter. The counter turns orange when near the limit and red when exceeded.

Custom Counter Renderer

Validation States

Thank you for your feedback
Comment is required
Validating content

Fixed Height

Without autoResize, the textarea maintains a fixed height based on the rows prop.

Fixed 5-row height with scrolling

Props Reference

PropTypeDefaultDescription
labelstring-Label text
status'default' | 'success' | 'error' | 'pending''default'Validation state
helperTextstring-Helper/error text
requiredbooleanfalseShow required indicator
autoResizebooleanfalseAuto-resize based on content
minRowsnumber3Minimum rows (with autoResize)
maxRowsnumber10Maximum rows (with autoResize)
showCounterbooleanfalseShow character counter (requires maxLength)
maxLengthnumber-Maximum character limit
renderCounter(current, max) => ReactNode-Custom counter renderer

Also accepts all standard HTML textarea attributes (value, onChange, placeholder, disabled, rows, etc.)