# input

Используется для создания различных типов текстовых полей.

## Обзор блока

### Модификаторы блока

| Модификатор | Допустимые значения | Способы использования | Описание |
| ----------- | ------------------- | -------------------- | -------- |
| <a href="#typeSuggest">type</a> | <code>'suggest'</code> | <code>BEMJSON</code> | Предоставляют предложения при вводе в поле. |
| <a href="#has-spin">has-spin</a> | <code>true</code> | <code>BEMJSON</code>, <code>JS</code> | Вид загрузки для поля ввода. |
| <a href="#has-password">has-password</a> | <code>true</code> | <code>BEMJSON</code> | Парольный глаз для поля типа password. |
| <a href="#handler">handler</a> | <code>String</code> | <code>BEMJSON</code> | Использую модификатор handler переопределить методы модификатора type в значение suggest|

<a name="typeSuggest"></a>
#### Модификатор `type`

Допустимое значение: `suggest`.

Способы использования: `BEMJSON`, `JS`.

Позволяет пользователям быстро находить и выбирать из предварительно заполненного списка значений по мере их ввода, используя поиск и фильтрацию.
<a name="handler"></a>
```js
{
    block : 'input',
    placeholder : 'Город или регион',
    mods : {
        theme : 'default',
        type : 'suggest',
        source : 'api',
        handler : 'region'
    },
    directions : ['bottom-center', 'bottom-left'],
    js : {
        src : 'https://api.teleport.org/api/cities/',
        data : {  _valField : 'search' }
    }
}
```

<a name="has-spin"></a>
#### Модификатор `has-spin`

Допустимое значение: `true`.

Способы использования: `BEMJSON`, `JS`.

Добавляет к текстовому полю иконку загрузки.

```js
{
    block : 'input',
    mods : { theme : 'default', 'has-spin' : true }
    val : 'Hellow'
}
```
#### Управления через JS

```js
var input = this.findChildBlock(Input);
input._elem('spin').setMod('visible', true);
```

<a name="has-password"></a>
#### Модификатор `has-password`

Допустимое значение: `true`.

Способы использования: `BEMJSON`.

Добавляет к текстовому полю иконку для отображения пароля.

```js
{
    block : 'input',
    mods : { theme : 'default', 'has-password' : true, type : 'password' },
    val : 'password'
}
```
