В этом модуле представленны функции которые переиспользуются в классе селекта или в
              других модулях. Он создан для лучшего понимания кода.
            
            
          Methods
(static) checkItemStruct(item) → {boolean}
Проверка содержит ли item указанные свойства,
          Parameters:
| Name | Type | Description | 
|---|---|---|
| item | object | проверяемый на определенную структуру элемент | 
Returns:
возвращает true/false если item содержит указанные свойства
          - Type
- boolean
(static) clearSelect(select, element, dataSelectText)
Создание кнопки отчиски селекта, при единичном выборе.
          Parameters:
| Name | Type | Description | 
|---|---|---|
| select | HTMLElement | место в селекте которое будет переназначено на ''. | 
| element | HTMLElement | экземпляр класса DropDown. | 
| dataSelectText | object | текст который отрисовывается в селекте. | 
(static) createSelected(element, content, styles)
Создание кнопки выбора элементов
          Parameters:
| Name | Type | Description | 
|---|---|---|
| element | HTMLElement | созданный экземпляр класса DropDown | 
| content | string | placeholer передаваемый из настроек селекта | 
| styles | object | не обязательный параметр. Объект в котором находяться настройки кастомизации частей селекта | 
(static) customStyles(element, styles)
            Поиск и стилизация елементов полученных из styles экземпляра DropDown
          
          Parameters:
| Name | Type | Description | 
|---|---|---|
| element | HTMLElement | созданный экземпляр класса DropDown | 
| styles | object | объект в котором находяться настройки кастомизации частей селекта | 
(static) customStylesFormat(elemOption, selector)
Универсальный метод для стилизации селекта
          Parameters:
| Name | Type | Description | 
|---|---|---|
| elemOption | object | объект полученное из объекта styles у которого мы получаем ключ-значение стилей | 
| selector | HTMLElement | HTMLElement подвергающиеся кастомизации | 
(static) getFormatItem(dataItem, index) → {object}
Преобразование каждого елемента полученного из поля Items;
          Parameters:
| Name | Type | Description | 
|---|---|---|
| dataItem | object | string | полученный елемент переданный при создании селекта может быть как object/string | 
| index | number | индекс этого элемента | 
Returns:
возвращает сформированный объект
          - Type
- object
(static) getSelectText(data, select) → {HTMLElement}
Вставка изначального текста селекта(до выбора)
          Parameters:
| Name | Type | Description | 
|---|---|---|
| data | object | объект в котором находяться title селекта | 
| select | HTMLElement | елемент селекта, куда будет вставляться title | 
Returns:
возвращает сформированный елемент селекта
          - Type
- HTMLElement
(static) nativeOptionMultiple(element, item, condition)
            Поведение нативного(Multiple) селекта при выборе в кастомном
          
          Parameters:
| Name | Type | Description | 
|---|---|---|
| element | NodeList | NodeList нативного селекта | 
| item | object | выбранный элемент в кастомном селекте | 
| condition | boolean | специальный флаг при котором добавляются/убераются атрибуты у нативного селекта | 
(static) nativeOptionOrdinary(element, item)
            Поведение нативного(одинарного) селекта при выборе кастомного
          
          Parameters:
| Name | Type | Description | 
|---|---|---|
| element | NodeList | NodeList нативного селекта | 
| item | object | выбранный элемент в кастомном селекте |