@shayanthenerd/eslint-config
Version:
A modern, flexible ESLint configuration for enforcing best practices and maintaining a consistent coding style
38 lines (37 loc) • 1.37 kB
JavaScript
import { isEnabled } from "../utils/isEnabled.mjs";
//#region src/rules/node.ts
function getNodeRules(options) {
const { typescript } = options.configs;
return {
"n/file-extension-in-import": "error",
"n/hashbang": "error",
"n/no-deprecated-api": "error",
"n/no-exports-assign": "error",
"n/no-missing-import": isEnabled(typescript) ? "off" : "error",
"n/no-path-concat": "error",
"n/no-process-env": ["error", { allowedVariables: ["NODE_ENV"] }],
"n/no-process-exit": "error",
"n/no-sync": "warn",
"n/no-unpublished-import": "error",
"n/no-unsupported-features/es-builtins": "error",
"n/no-unsupported-features/es-syntax": "error",
"n/no-unsupported-features/node-builtins": ["error", { allowExperimental: true }],
"n/prefer-global/buffer": "warn",
"n/prefer-global/console": "warn",
"n/prefer-global/crypto": "warn",
"n/prefer-global/process": "warn",
"n/prefer-global/text-decoder": "warn",
"n/prefer-global/text-encoder": "warn",
"n/prefer-global/timers": "warn",
"n/prefer-global/url": "warn",
"n/prefer-global/url-search-params": "warn",
"n/prefer-import/assert-strict": "error",
"n/prefer-node-protocol": "warn",
"n/prefer-process-get-builtin-module": "error",
"n/prefer-promises/dns": "warn",
"n/prefer-promises/fs": "warn",
"n/process-exit-as-throw": "error"
};
}
//#endregion
export { getNodeRules };