'use strict';
const TYPE = 'module-not-found';
function isModuleNotFoundError (e) {
const webpackError = e.webpackError || {};
return webpackError.dependencies
&& webpackError.dependencies.length > 0
&& e.name === 'ModuleNotFoundError'
&& e.message.indexOf('Module not found') === 0;
}
function transform(error) {
const webpackError = error.webpackError;
if (isModuleNotFoundError(error)) {
const dependency = webpackError.dependencies[0];
const module = dependency.request || dependency.options.request;
return Object.assign({}, error, {
message: `Module not found ${module}`,
type: TYPE,
severity: 900,
module,
name: 'Module not found'
});
}
return error;
}
module.exports = transform;