ModuleBuildError.js 1.1 KB

123456789101112131415161718192021222324252627282930313233343536373839
  1. /*
  2. MIT License http://www.opensource.org/licenses/mit-license.php
  3. Author Tobias Koppers @sokra
  4. */
  5. var loaderFlag = "WEBPACK_CORE_LOADER_EXECUTION";
  6. function ModuleBuildError(module, err) {
  7. Error.call(this);
  8. Error.captureStackTrace(this, ModuleBuildError);
  9. this.name = "ModuleBuildError";
  10. this.message = "Module build failed: ";
  11. if(err !== null && typeof err === "object") {
  12. if(typeof err.stack === "string" && err.stack) {
  13. var stack = err.stack.split("\n");
  14. for(var i = 0; i < stack.length; i++)
  15. if(stack[i].indexOf(loaderFlag) >= 0)
  16. stack.length = i;
  17. stack = stack.join("\n");
  18. if(!err.hideStack) {
  19. this.message += stack;
  20. } else {
  21. this.details = stack;
  22. if(typeof err.message === "string" && err.message) {
  23. this.message += err.message;
  24. } else {
  25. this.message += err;
  26. }
  27. }
  28. } else if(typeof err.message === "string" && err.message) {
  29. this.message += err.message;
  30. } else {
  31. this.message += err;
  32. }
  33. }
  34. this.module = module;
  35. this.error = err;
  36. }
  37. module.exports = ModuleBuildError;
  38. ModuleBuildError.prototype = Object.create(Error.prototype);