eslint-plugin-safeguard
Version:
A custom ESLint plugin that provides multiple rules to enforce best practices and code safety.
29 lines (26 loc) • 636 B
JavaScript
;
const meta = {
docs: {
description: "Disallow direct use of Error constructor",
recommended: true
},
messages: {
noRawError: 'Avoid using raw "Error". Use a custom error class instead.'
},
schema: [],
type: "problem"
};
const create = (context) => {
function checkErrorCallee(node) {
const { callee } = node;
if (callee.type === "Identifier" && callee.name === "Error") {
context.report({ messageId: "noRawError", node });
}
}
return {
CallExpression: checkErrorCallee,
NewExpression: checkErrorCallee
};
};
const rule = { create, meta };
module.exports = rule;