123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100 |
- "use strict";
- const loaderFlag = "LOADER_EXECUTION";
- const webpackOptionsFlag = "WEBPACK_OPTIONS";
- const cutOffByFlag = (stack, flag) => {
- const errorStack = stack.split("\n");
- for (let i = 0; i < errorStack.length; i++) {
- if (errorStack[i].includes(flag)) {
- errorStack.length = i;
- }
- }
- return errorStack.join("\n");
- };
- const cutOffLoaderExecution = stack => cutOffByFlag(stack, loaderFlag);
- const cutOffWebpackOptions = stack => cutOffByFlag(stack, webpackOptionsFlag);
- const cutOffMultilineMessage = (stack, message) => {
- const stackSplitByLines = stack.split("\n");
- const messageSplitByLines = message.split("\n");
-
- const result = [];
- for (const [idx, line] of stackSplitByLines.entries()) {
- if (!line.includes(messageSplitByLines[idx])) result.push(line);
- }
- return result.join("\n");
- };
- const cutOffMessage = (stack, message) => {
- const nextLine = stack.indexOf("\n");
- if (nextLine === -1) {
- return stack === message ? "" : stack;
- }
- const firstLine = stack.slice(0, nextLine);
- return firstLine === message ? stack.slice(nextLine + 1) : stack;
- };
- const cleanUp = (stack, message) => {
- stack = cutOffLoaderExecution(stack);
- stack = cutOffMessage(stack, message);
- return stack;
- };
- const cleanUpWebpackOptions = (stack, message) => {
- stack = cutOffWebpackOptions(stack);
- stack = cutOffMultilineMessage(stack, message);
- return stack;
- };
- module.exports.cutOffByFlag = cutOffByFlag;
- module.exports.cutOffLoaderExecution = cutOffLoaderExecution;
- module.exports.cutOffWebpackOptions = cutOffWebpackOptions;
- module.exports.cutOffMultilineMessage = cutOffMultilineMessage;
- module.exports.cutOffMessage = cutOffMessage;
- module.exports.cleanUp = cleanUp;
- module.exports.cleanUpWebpackOptions = cleanUpWebpackOptions;
|