UNPKG

@nx/eslint

Version:

The ESLint plugin for Nx contains executors, generators and utilities used for linting JavaScript/TypeScript projects within an Nx workspace.

50 lines (49 loc) 2.25 kB
"use strict"; 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; }