# Text Input

> Text input component for modal forms.

- ID: `modalcmp_input_text`
- Type: Block
- Category: [Modals](https://inventor.bot/docs/reference/blocks/modals.md)

- Can only be placed inside `modalcmp_layout_label` (component).

**Inputs**

| Name | Required | Description | Value |
| --- | --- | --- | --- |
| `custom_id` | yes | Custom ID for this input (1-100 chars). | e.g. `"bug_reason"` |
| `style` | yes | Input style. | `"short"`, `"paragraph"` |
| `placeholder` |  | Placeholder text. | e.g. `"Write here..."` |
| `value` |  | Optional default input value. |  |
| `required` |  | Whether this field must be filled. | `"true"`, `"false"` |
| `min_length` |  | Minimum text length (0-4000). | e.g. `"10"` |
| `max_length` |  | Maximum text length (1-4000). | e.g. `"2000"` |

**Example**

```go
modalcmp_layout_label(Args{
	label: "Reason",
	component: func() {
		modalcmp_input_text(Args{custom_id: "bug_reason", style: "paragraph"})
	},
})
```

## Placement

Can only be placed inside:

- [Modal Label](https://inventor.bot/docs/reference/blocks/modals/modalcmp-layout-label.md) (`modalcmp_layout_label`), in `component`