/
githubmirror
/
webpack
Обзор
Документация
Войти
/
githubmirror
/
webpack
Код
Запросы
0
Пакеты
0
Релизы
0
Аналитика
Безопасность
v5.105.4
lib/ModuleBuildError.js
83 строки
2 KB
Alexander Akait
refactor: more types and increase types coverage
03 фев 2026, 16:47
Не верифицирован
03 фев 2026, 16:47
c4a6a92
Код
Авторство
О чём код?
/* MIT License http://www.opensource.org/licenses/mit-license.php Author Tobias Koppers @sokra */ "use strict"; const { cutOffLoaderExecution } = require("./ErrorHelpers"); const WebpackError = require("./WebpackError"); const makeSerializable = require("./util/makeSerializable"); /** @typedef {import("./serialization/ObjectMiddleware").ObjectDeserializerContext} ObjectDeserializerContext */ /** @typedef {import("./serialization/ObjectMiddleware").ObjectSerializerContext} ObjectSerializerContext */ /** @typedef {Error & { hideStack?: boolean }} ErrorWithHideStack */ class ModuleBuildError extends WebpackError { /** * @param {string | ErrorWithHideStack} err error thrown * @param {{ from?: string | null }} info additional info */ constructor(err, { from = null } = {}) { let message = "Module build failed"; /** @type {undefined | string} */ let details; message += from ? ` (from ${from}):\n` : ": "; if (err !== null && typeof err === "object") { if (typeof err.stack === "string" && err.stack) { const stack = cutOffLoaderExecution(err.stack); if (!err.hideStack) { message += stack; } else { details = stack; message += typeof err.message === "string" && err.message ? err.message : err; } } else if (typeof err.message === "string" && err.message) { message += err.message; } else { message += String(err); } } else { message += String(err); } super(message); /** @type {string} */ this.name = "ModuleBuildError"; this.details = details; this.error = err; } /** * @param {ObjectSerializerContext} context context */ serialize(context) { const { write } = context; write(this.error); super.serialize(context); } /** * @param {ObjectDeserializerContext} context context */ deserialize(context) { const { read } = context; this.error = read(); super.deserialize(context); } } makeSerializable(ModuleBuildError, "webpack/lib/ModuleBuildError"); module.exports = ModuleBuildError;