В этом модуле представленны функции которые переиспользуются в классе селекта или в
              других модулях. Он создан для лучшего понимания кода.
            
            
          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 | выбранный элемент в кастомном селекте |