schema-util-loader
Version:
schema-util webpack loader
35 lines (34 loc) • 1.11 kB
JavaScript
;
Object.defineProperty(exports, "__esModule", { value: true });
var path = require("path");
var os = require("os");
var fs = require("fs");
var getFileExcerptIfPossible = function (err) {
try {
var content = fs.readFileSync(err.file, 'utf8');
return os.EOL +
content.split(os.EOL)[err.line - 1] +
os.EOL +
new Array(err.column - 1).join(' ') + "^" + os.EOL + " ";
}
catch (ignoreErr) {
// If anything goes wrong here, we don't want any errors to be reported to the user
return '';
}
};
exports.default = (function (err, resourcePath) {
err.hideStack = false;
if (!err.file) {
return;
}
var msg = err.message;
if (err.file === 'stdin') {
err.file = resourcePath;
}
err.file = path.normalize(err.file);
msg = msg.replace(/\s*Current dir:\s*/, '');
err.message = getFileExcerptIfPossible(err) +
msg.charAt(0).toUpperCase() +
msg.slice(1) +
os.EOL + " in " + err.file + " (line " + err.line + ", column " + err.column + ")";
});