| // eslint-disable-next-line import/default | |
| import validateConfig from '../dist/validateConfig'; | |
| // eslint-disable-next-line import/default | |
| import validateStreamConfig from '../dist/validateStreamConfig'; | |
| const validate = { | |
| 'config.json': validateConfig, | |
| 'streamConfig.json': validateStreamConfig | |
| }; | |
| /** | |
| * @param {string} schemaId | |
| * @param {formatData~config} config | |
| * @returns {undefined} | |
| */ | |
| export default (schemaId, config = {}) => { | |
| if (!validate[schemaId](config)) { | |
| const errors = validate[schemaId].errors.map((error) => { | |
| return { | |
| dataPath: error.dataPath, | |
| message: error.message, | |
| params: error.params, | |
| schemaPath: error.schemaPath | |
| }; | |
| }); | |
| /* eslint-disable no-console */ | |
| console.log('config', config); | |
| console.log('errors', errors); | |
| /* eslint-enable no-console */ | |
| throw new Error('Invalid config.'); | |
| } | |
| }; |