liusuyi
2023-04-24 4737f1e038743ced243c9e52423404d9034d6107
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
'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;