@nx/eslint
Version:
50 lines (49 loc) • 2.25 kB
JavaScript
;
Object.defineProperty(exports, "__esModule", { value: true });
exports.typescriptESLintVersion = exports.eslintVersion = exports.eslintCompat = exports.jsoncEslintParserVersion = exports.eslintrcVersion = exports.eslintConfigPrettierVersion = exports.minSupportedEslintVersion = exports.nxVersion = void 0;
exports.versions = versions;
exports.getInstalledEslintVersion = getInstalledEslintVersion;
exports.getInstalledEslintMajorVersion = getInstalledEslintMajorVersion;
const internal_1 = require("@nx/devkit/internal");
const path_1 = require("path");
const semver_1 = require("semver");
exports.nxVersion = require((0, path_1.join)('@nx/eslint', 'package.json')).version;
exports.minSupportedEslintVersion = '8.0.0';
exports.eslintConfigPrettierVersion = '^10.0.0';
exports.eslintrcVersion = '^2.1.1';
exports.jsoncEslintParserVersion = '^2.1.0';
exports.eslintCompat = '^1.1.1';
exports.eslintVersion = '^9.8.0';
exports.typescriptESLintVersion = '^8.40.0';
const latestVersions = {
eslintVersion: exports.eslintVersion,
typescriptESLintVersion: exports.typescriptESLintVersion,
};
const versionMap = {
8: {
eslintVersion: '~8.57.0',
typescriptESLintVersion: '^8.40.0',
},
};
function versions(tree) {
const installedEslintVersion = getInstalledEslintVersion(tree);
if (installedEslintVersion) {
const eslintMajorVersion = (0, semver_1.major)(installedEslintVersion);
return versionMap[eslintMajorVersion] ?? latestVersions;
}
// No ESLint declared yet — fresh installs always go to the latest supported
// ESLint stack (v9 + typescript-eslint v8). The eslintrc config shape is
// still respected at the config-file level when `useFlatConfig(tree)` is
// false; only the installed package versions move forward.
return latestVersions;
}
function getInstalledEslintVersion(tree) {
if (!tree) {
return (0, internal_1.getInstalledPackageVersion)('eslint');
}
return (0, internal_1.getDeclaredPackageVersion)(tree, 'eslint');
}
function getInstalledEslintMajorVersion(tree) {
const installedEslintVersion = getInstalledEslintVersion(tree);
return installedEslintVersion ? (0, semver_1.major)(installedEslintVersion) : null;
}