/*
  Сервис интеграции ПП Парус 8 с WEB API
  Модели данных: описатель списка записей журнала работы сервиса обмена
*/

//----------------------
// Подключение библиотек
//----------------------

const Schema = require("validate"); //Схемы валидации
const { Log } = require("./obj_log"); //Схема валидации записи журнала работы сервиса обмена

//------------
// Тело модуля
//------------

//Описатель схемы валидации списка сервисов
const defLogs = (bRequired, sName) => {
    return {
        type: Array,
        required: bRequired,
        each: Log,
        message: {
            type: `Список записей журнала работы сервиса обмена (${sName}) имеет некорректный тип данных (ожидалось - Array)`,
            required: `Не указан список записей журнала работы сервиса обмена (${sName})`
        }
    };
};

//------------------
//  Интерфейс модуля
//------------------

//Описатель схемы валидации списка сервисов
exports.defLogs = defLogs;

//Схема валидации списка сервисов
exports.Logs = new Schema({ logs: defLogs(true, "logs") });
