npm and error messages

This commit is contained in:
2018-10-27 03:51:47 -05:00
parent 692ab70565
commit 025a403027
29601 changed files with 2759363 additions and 14 deletions

View File

@@ -0,0 +1,30 @@
'use strict';
var getError = require('./get-error');
/**
* Where the given list is non-null and contains error instances then consolidate and throw
* @throws Error
* @param {string} resourcePath The path to the resource being processed
* @param {null|Array} candidates A possible Array with possible error elements
*/
function throwErrors(resourcePath, candidates) {
var errors = !!candidates && candidates
.filter(testIsError)
.map(getMessage);
var hasError = !!errors && errors.length;
if (hasError) {
throw getError(['For resource: ' + resourcePath].concat(errors).join('\n'));
}
function testIsError(candidate) {
return !!candidate && (typeof candidate === 'object') && (candidate instanceof Error);
}
function getMessage(error) {
return error.message;
}
}
module.exports = throwErrors;