12345678910111213141516171819202122232425262728293031323334 |
- 'use strict';
- const extractError = require('./extractWebpackError');
- /**
- * Applies all transformers to all errors and returns "annotated"
- * errors.
- *
- * Each transformer should have the following signature WebpackError => AnnotatedError
- *
- * A WebpackError has the following fields:
- * - message
- * - file
- * - origin
- * - name
- * - severity
- * - webpackError (original error)
- *
- * An AnnotatedError should be an extension (Object.assign) of the WebpackError
- * and add whatever information is convenient for formatting.
- * In particular, they should have a 'priority' field.
- *
- * The plugin will only display errors having maximum priority at the same time.
- *
- * If they don't have a 'type' field, the will be handled by the default formatter.
- */
- function processErrors (errors, transformers) {
- const transform = (error, transformer) => transformer(error);
- const applyTransformations = (error) => transformers.reduce(transform, error);
- return errors.map(extractError).map(applyTransformations);
- }
- module.exports = processErrors;
|