---
url: /documentation/input-types/textarea.md
description: >-
  Configure multiline text inputs with monospace rendering, pattern and length
  validation, and visibility conditions.
---

# Textarea Input

Input for multi-line text.

```js
{
  input: {
    type: 'textarea', // [!code focus:2]
    monospace: true
  }
}
```

## Input Options

| Option | Values | Default | Description |
| - | - | - | - |
| `required` | `boolean` | `false` | Whether filling the field is mandatory. |
| `minLength` | `number` | - | Minimum length for the content to be valid. |
| `maxLength` | `number` | - | Maximum length for the content. |
| `pattern` | `string` | - | A regular expression pattern to match agains input value. |
| `patternDesciption` | `string` | - | Human readable description of the pattern. |
| `rows` | `integer` | `10` | TextArea rows attribute (number of lines). |
| `monospace` | `boolean` | `false` | Whether the field should be presented for writing code. |

## Conditions

The `textarea` input type supports the following conditions for [dynamic visibility](/documentation/concepts/elements/definition#dynamic-visibility):

| Condition | Payload | Description |
| - | - | - |
| `isEmpty` | `boolean`defaults to `true` | Checks whether the input is empty or not. |
| `equals` | `string` | Checks whether the input value equals the `payload` string. |
| `matches` | `RegExp` | Checks whether the input value matches the `payload` regular expression. |
