ray-gulp-eslint
Version:
use eslint with gulp
77 lines (73 loc) • 2.31 kB
JavaScript
;
function isErrorMessage(e) {
var r = e.fatal ? 2 : e.severity;
return Array.isArray(r) ? r[0] > 1 : r > 1
}
function countErrorMessage(e, r) {
return e + isErrorMessage(r)
}
function countWarningMessage(e, r) {
return e + (1 === r.severity)
}
var Transform = require("stream").Transform,
gutil = require("gulp-util"),
CLIEngine = require("eslint").CLIEngine;
exports.transform = function(e, r) {
return new Transform("function" == typeof r ? {
objectMode: !0,
transform: e,
flush: r
} : {
objectMode: !0,
transform: e
})
}, exports.createIgnoreResult = function(e) {
return {
filePath: e.path,
messages: [{
fatal: !1,
severity: 1,
message: e.path.indexOf("node_modules/") < 0 ? "File ignored because of .eslintignore file" : "File ignored because it has a node_modules/** path"
}],
errorCount: 0,
warningCount: 1
}
}, exports.migrateOptions = function(e) {
return "string" == typeof e && (e = {
configFile: e
}), e
}, exports.handleCallback = function(e, r) {
return function(n) {
null == n || n instanceof gutil.PluginError || (n = new gutil.PluginError(n.plugin || "gulp-eslint", n, {
showStack: !1 !== n.showStack
})), e(n, r)
}
}, exports.tryResultAction = function(e, r, n) {
try {
e.length > 1 ? e.call(this, r, n) : (e.call(this, r), n())
} catch (e) {
n(null == e ? new Error("Unknown Error") : e)
}
}, exports.firstResultMessage = function(e, r) {
return e.messages ? e.messages.find(r) : null
}, exports.isErrorMessage = isErrorMessage, exports.filterResult = function(e, r) {
"function" != typeof r && (r = isErrorMessage);
var n = e.messages.filter(r, e);
return {
filePath: e.filePath,
messages: n,
errorCount: n.reduce(countErrorMessage, 0),
warningCount: n.reduce(countWarningMessage, 0)
}
}, exports.resolveFormatter = function(e) {
return "function" != typeof e && (e = CLIEngine.getFormatter(e) || e), e
}, exports.resolveWritable = function(e) {
return e ? "function" == typeof e.write && (e = e.write.bind(e)) : e = gutil.log, e
}, exports.writeResults = function(e, r, n) {
e || (e = []);
var t = e.find(function(e) {
return e.config
}),
s = r(e, t ? t.config : {});
n && null != s && "" !== s && n(s)
};