@exadel/eslint-plugin-esl
Version:
Helper ESLint rules to find and migrate ESL (@exadel/esl) library deprecations
39 lines (38 loc) • 1.11 kB
JavaScript
;
var __importDefault = (this && this.__importDefault) || function (mod) {
return (mod && mod.__esModule) ? mod : { "default": mod };
};
Object.defineProperty(exports, "__esModule", { value: true });
exports.log = log;
exports.buildLoggingRule = buildLoggingRule;
const kleur_1 = __importDefault(require("kleur"));
const LOGGERS = {
error: console.error,
warn: console.warn,
off: console.info,
};
const HEADERS = {
error: kleur_1.default.red('[ESL Lint Plugin] ❌ Error:'),
warn: kleur_1.default.yellow('[ESL Lint Plugin] ⚠️ Warning:'),
off: kleur_1.default.blue('[ESL Lint Plugin] ℹ️ Info:'),
};
function log(msg, severity = 'off') {
LOGGERS[severity](`\n${HEADERS[severity]}\n${msg}`);
}
function buildLoggingRule(msg, severity = 'off') {
let notified = false;
return {
meta: {
docs: {
description: msg,
}
},
create: () => {
if (!notified) {
log(msg, severity);
notified = true;
}
return {};
}
};
}