Textarea
A multi-line text input for longer form content.
Import
import { Textarea } from '@oztix/roadie-components'
Examples
Default
<Textarea placeholder='Enter text' />
Emphasis
<div className='grid gap-2'> <Textarea emphasis='normal' placeholder='Normal emphasis' /> <Textarea emphasis='subtle' placeholder='Subtle emphasis' /> </div>
Sizes
<div className='grid gap-2'> <Textarea size='sm' placeholder='Small' /> <Textarea size='md' placeholder='Medium (default)' /> <Textarea size='lg' placeholder='Large' /> </div>
Auto resize
Uses CSS field-sizing: content to grow with the content. No manual resize
handle — the textarea adjusts automatically.
<Textarea autoResize placeholder='This textarea grows as you type...' />
States
Textareas start neutral, gain an accent-coloured border and ring on focus, and switch to danger colouring when invalid.
Accessibility
- Label association: Always pair with a
<label>(orField.Label) using matchinghtmlFor/idattributes. - Validation: Set
aria-invalid="true"on invalid textareas.is-interactive-fieldprovides visual danger styling automatically. - Description: Use
aria-describedbyto link helper or error text to the textarea.
API reference
Textarea
autoResize?boolean
intent?"neutral" | "brand" | "brand-secondary" | "accent" | "danger" | "success" | "warning" | "info" | null
emphasis?"normal" | "subtle" | null
size?"sm" | "md" | "lg" | null