# Вспомогательные сущности

## Описание
* В данном репозитории собраны классы, которые помогают в разработке
## Установка
```bash
yarn add "../repo/3-class-complex-assistants"
```

### Logger
* Заменяет console.log, console.error, console.warn, console.info  Отправляет логи на сервер, если передан url
#### Функции
* convertObject - Адаптирует объект к другому виду, путем замены ключей, может заменять значения через callback
* convertList   - Имплементация метода convertObject для массива объектов

```js
import {Logger} from '3-class-complex-assistants'

/**
 *
 * @type {{
 *  datetime: string,
 *  loggerLevel: {0 | 1 | 2 | 3 | 4 | 5},
 *  port: number,
 *  serviceName: string,
 *  machineAddr: string
 * }}
 * @description loggerLevel - уровень логирования;
 * берется из конфига, приложения, например из .env
 *
 * 0 - не логировать,
 * 1 - только ошибки,
 * 2 - ошибки и предупреждения,
 * 3 - ошибки, предупреждения и информация,
 * 4 - все,
 * 5 - все + отладка
 */


const loggerInfo = {
  "loggerLevel": 4,
  "serviceName": "live_monitor",
  "machineAddr": "172.25.78.151",
  "port":         6175,
  "datetime":     moment().format("YYYY-MM-DDTHH:mm:ss"),
}

const callback    = () => {}
const allParams   = {...loggerInfo, callFunc: callback, isPushToServer: true}
const newLogger   = new Logger(allParams)
const loggerDebug = newLogger.debug('Test debug', 1)
const loggerInfos = newLogger.info('Test info', 1)
const loggerWarn  = newLogger.warn('Test warn', 1)
const loggerError = newLogger.error('Test error', 1)
```
