@nx/eslint 0.0.0-pr-30715-a5f5e3b → 0.0.0-pr-31222-862e973
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/LICENSE +1 -1
- package/README.md +1 -1
- package/migrations.json +98 -119
- package/package.json +7 -6
- package/src/executors/lint/utility/eslint-utils.js +0 -6
- package/src/generators/convert-to-flat-config/converters/json-converter.d.ts +1 -1
- package/src/generators/convert-to-flat-config/converters/json-converter.js +18 -10
- package/src/generators/convert-to-flat-config/generator.js +17 -18
- package/src/generators/convert-to-flat-config/schema.d.ts +0 -2
- package/src/generators/convert-to-inferred/convert-to-inferred.js +1 -2
- package/src/generators/init/global-eslint-config.d.ts +1 -1
- package/src/generators/init/global-eslint-config.js +6 -17
- package/src/generators/init/init-migration.d.ts +1 -1
- package/src/generators/init/init-migration.js +13 -18
- package/src/generators/init/init.d.ts +0 -1
- package/src/generators/init/init.js +6 -31
- package/src/generators/lint-project/lint-project.d.ts +0 -1
- package/src/generators/lint-project/lint-project.js +15 -37
- package/src/generators/lint-project/setup-root-eslint.d.ts +0 -1
- package/src/generators/lint-project/setup-root-eslint.js +1 -2
- package/src/generators/utils/eslint-file.d.ts +2 -3
- package/src/generators/utils/eslint-file.js +28 -160
- package/src/generators/utils/flat-config/ast-utils.d.ts +4 -12
- package/src/generators/utils/flat-config/ast-utils.js +63 -412
- package/src/generators/utils/linter.d.ts +0 -3
- package/src/generators/utils/linter.js +2 -2
- package/src/generators/workspace-rule/files/__name__.spec.ts__tmpl__ +2 -11
- package/src/generators/workspace-rule/workspace-rule.d.ts +2 -2
- package/src/generators/workspace-rule/workspace-rule.js +3 -11
- package/src/generators/workspace-rules-project/workspace-rules-project.js +1 -4
- package/src/migrations/update-16-0-0-add-nx-packages/update-16-0-0-add-nx-packages.d.ts +2 -0
- package/src/migrations/update-16-0-0-add-nx-packages/update-16-0-0-add-nx-packages.js +9 -0
- package/src/migrations/update-16-8-0-add-ignored-files/update-16-8-0-add-ignored-files.d.ts +2 -0
- package/src/migrations/update-16-8-0-add-ignored-files/update-16-8-0-add-ignored-files.js +44 -0
- package/src/migrations/update-17-0-0-rename-to-eslint/update-17-0-0-rename-to-eslint.d.ts +2 -0
- package/src/migrations/update-17-0-0-rename-to-eslint/update-17-0-0-rename-to-eslint.js +47 -0
- package/src/migrations/update-17-1-0/update-typescript-eslint.d.ts +2 -0
- package/src/migrations/update-17-1-0/update-typescript-eslint.js +74 -0
- package/src/migrations/update-17-2-0/simplify-eslint-patterns.d.ts +2 -0
- package/src/migrations/update-17-2-0/simplify-eslint-patterns.js +46 -0
- package/src/migrations/update-17-2-9/move-options-to-target-defaults.d.ts +2 -0
- package/src/migrations/update-17-2-9/move-options-to-target-defaults.js +107 -0
- package/src/plugins/plugin.js +10 -21
- package/src/utils/config-file.d.ts +1 -3
- package/src/utils/config-file.js +2 -5
- package/src/utils/flat-config.d.ts +0 -1
- package/src/utils/flat-config.js +3 -9
- package/src/utils/version-utils.d.ts +0 -1
- package/src/utils/version-utils.js +9 -13
- package/src/utils/versions.d.ts +2 -3
- package/src/utils/versions.js +3 -4
- package/src/migrations/update-20-2-0/update-typescript-eslint-v8-13-0.d.ts +0 -2
- package/src/migrations/update-20-2-0/update-typescript-eslint-v8-13-0.js +0 -23
- package/src/migrations/update-20-3-0/add-file-extensions-to-overrides.d.ts +0 -2
- package/src/migrations/update-20-3-0/add-file-extensions-to-overrides.js +0 -49
|
@@ -1,35 +1,31 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.getInstalledPackageVersion = getInstalledPackageVersion;
|
|
4
3
|
exports.getInstalledEslintVersion = getInstalledEslintVersion;
|
|
5
4
|
const devkit_1 = require("@nx/devkit");
|
|
6
5
|
const semver_1 = require("@nx/devkit/src/utils/semver");
|
|
7
6
|
const devkit_internals_1 = require("nx/src/devkit-internals");
|
|
8
|
-
function
|
|
7
|
+
function getInstalledEslintVersion(tree) {
|
|
9
8
|
try {
|
|
10
|
-
const
|
|
11
|
-
return
|
|
9
|
+
const eslintPackageJson = (0, devkit_internals_1.readModulePackageJson)('eslint').packageJson;
|
|
10
|
+
return eslintPackageJson.version;
|
|
12
11
|
}
|
|
13
12
|
catch { }
|
|
14
|
-
//
|
|
13
|
+
// eslint is not installed on disk, it could be in the package.json
|
|
15
14
|
// but waiting to be installed
|
|
16
15
|
const rootPackageJson = tree
|
|
17
16
|
? (0, devkit_1.readJson)(tree, 'package.json')
|
|
18
17
|
: (0, devkit_1.readJsonFile)('package.json');
|
|
19
|
-
const
|
|
20
|
-
rootPackageJson.dependencies?.[
|
|
21
|
-
if (!
|
|
22
|
-
//
|
|
18
|
+
const eslintVersionInRootPackageJson = rootPackageJson.devDependencies?.['eslint'] ??
|
|
19
|
+
rootPackageJson.dependencies?.['eslint'];
|
|
20
|
+
if (!eslintVersionInRootPackageJson) {
|
|
21
|
+
// eslint is not installed
|
|
23
22
|
return null;
|
|
24
23
|
}
|
|
25
24
|
try {
|
|
26
25
|
// try to parse and return the version
|
|
27
|
-
return (0, semver_1.checkAndCleanWithSemver)(
|
|
26
|
+
return (0, semver_1.checkAndCleanWithSemver)('eslint', eslintVersionInRootPackageJson);
|
|
28
27
|
}
|
|
29
28
|
catch { }
|
|
30
29
|
// we could not resolve the version
|
|
31
30
|
return null;
|
|
32
31
|
}
|
|
33
|
-
function getInstalledEslintVersion(tree) {
|
|
34
|
-
return getInstalledPackageVersion('eslint', tree);
|
|
35
|
-
}
|
package/src/utils/versions.d.ts
CHANGED
|
@@ -1,9 +1,8 @@
|
|
|
1
1
|
export declare const nxVersion: any;
|
|
2
2
|
export declare const eslintVersion = "~8.57.0";
|
|
3
3
|
export declare const eslintrcVersion = "^2.1.1";
|
|
4
|
-
export declare const eslintConfigPrettierVersion = "^
|
|
4
|
+
export declare const eslintConfigPrettierVersion = "^9.0.0";
|
|
5
5
|
export declare const typescriptESLintVersion = "^7.16.0";
|
|
6
|
-
export declare const
|
|
7
|
-
export declare const eslint9__typescriptESLintVersion = "^8.29.0";
|
|
6
|
+
export declare const eslint9__typescriptESLintVersion = "^8.0.0";
|
|
8
7
|
export declare const eslint9__eslintVersion = "^9.8.0";
|
|
9
8
|
export declare const eslintCompat = "^1.1.1";
|
package/src/utils/versions.js
CHANGED
|
@@ -1,13 +1,12 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.eslintCompat = exports.eslint9__eslintVersion = exports.eslint9__typescriptESLintVersion = exports.
|
|
3
|
+
exports.eslintCompat = exports.eslint9__eslintVersion = exports.eslint9__typescriptESLintVersion = exports.typescriptESLintVersion = exports.eslintConfigPrettierVersion = exports.eslintrcVersion = exports.eslintVersion = exports.nxVersion = void 0;
|
|
4
4
|
exports.nxVersion = require('../../package.json').version;
|
|
5
5
|
exports.eslintVersion = '~8.57.0';
|
|
6
6
|
exports.eslintrcVersion = '^2.1.1';
|
|
7
|
-
exports.eslintConfigPrettierVersion = '^
|
|
7
|
+
exports.eslintConfigPrettierVersion = '^9.0.0';
|
|
8
8
|
exports.typescriptESLintVersion = '^7.16.0';
|
|
9
|
-
exports.jsoncEslintParserVersion = '^2.1.0';
|
|
10
9
|
// Updated linting stack for ESLint v9, typescript-eslint v8
|
|
11
|
-
exports.eslint9__typescriptESLintVersion = '^8.
|
|
10
|
+
exports.eslint9__typescriptESLintVersion = '^8.0.0';
|
|
12
11
|
exports.eslint9__eslintVersion = '^9.8.0';
|
|
13
12
|
exports.eslintCompat = '^1.1.1';
|
|
@@ -1,23 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.default = default_1;
|
|
4
|
-
const devkit_1 = require("@nx/devkit");
|
|
5
|
-
const semver_1 = require("semver");
|
|
6
|
-
const version_utils_1 = require("../../utils/version-utils");
|
|
7
|
-
async function default_1(tree) {
|
|
8
|
-
const devDependencies = {};
|
|
9
|
-
const checkPackageAndMigrate = (pkgName) => {
|
|
10
|
-
const pkgVersion = (0, version_utils_1.getInstalledPackageVersion)(pkgName, tree);
|
|
11
|
-
if (!!pkgVersion && (0, semver_1.gte)(pkgVersion, '8.0.0') && (0, semver_1.lt)(pkgVersion, '8.13.0')) {
|
|
12
|
-
devDependencies[pkgName] = '^8.13.0';
|
|
13
|
-
}
|
|
14
|
-
};
|
|
15
|
-
checkPackageAndMigrate('typescript-eslint');
|
|
16
|
-
checkPackageAndMigrate('@typescript-eslint/eslint-plugin');
|
|
17
|
-
checkPackageAndMigrate('@typescript-eslint/parser');
|
|
18
|
-
checkPackageAndMigrate('@typescript-eslint/utils');
|
|
19
|
-
if (Object.keys(devDependencies).length > 0) {
|
|
20
|
-
return (0, devkit_1.addDependenciesToPackageJson)(tree, {}, devDependencies);
|
|
21
|
-
}
|
|
22
|
-
return () => { };
|
|
23
|
-
}
|
|
@@ -1,49 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.default = default_1;
|
|
4
|
-
const ts = require("typescript");
|
|
5
|
-
const js_1 = require("@nx/js");
|
|
6
|
-
async function default_1(tree) {
|
|
7
|
-
let rootConfig;
|
|
8
|
-
// NOTE: we don't support generating ESM base config currently so they are not handled.
|
|
9
|
-
for (const candidate of ['eslint.config.js', 'eslint.config.cjs']) {
|
|
10
|
-
if (tree.exists(candidate)) {
|
|
11
|
-
rootConfig = candidate;
|
|
12
|
-
break;
|
|
13
|
-
}
|
|
14
|
-
}
|
|
15
|
-
if (!rootConfig)
|
|
16
|
-
return;
|
|
17
|
-
updateOverrideFileExtensions(tree, rootConfig, 'plugin:@nx/typescript', [`'**/*.ts'`, `'**/*.tsx'`], [`'**/*.cts'`, `'**/*.mts'`]);
|
|
18
|
-
updateOverrideFileExtensions(tree, rootConfig, 'plugin:@nx/javascript', [`'**/*.js'`, `'**/*.jsx'`], [`'**/*.cjs'`, `'**/*.mjs'`]);
|
|
19
|
-
}
|
|
20
|
-
function updateOverrideFileExtensions(tree, configFile, plugin, matchingExts, newExts) {
|
|
21
|
-
const content = tree.read(configFile, 'utf-8');
|
|
22
|
-
const source = ts.createSourceFile('', content, ts.ScriptTarget.Latest, true, ts.ScriptKind.JS);
|
|
23
|
-
let compatNode;
|
|
24
|
-
const spreadElementNodes = (0, js_1.findNodes)(source, ts.SyntaxKind.SpreadElement);
|
|
25
|
-
for (const a of spreadElementNodes) {
|
|
26
|
-
const assignmentNodes = (0, js_1.findNodes)(a, ts.SyntaxKind.PropertyAssignment);
|
|
27
|
-
if (assignmentNodes.length === 0)
|
|
28
|
-
continue;
|
|
29
|
-
for (const b of assignmentNodes) {
|
|
30
|
-
if (b.name.getText() === 'extends' &&
|
|
31
|
-
b.initializer.getText().includes(plugin)) {
|
|
32
|
-
compatNode = a;
|
|
33
|
-
break;
|
|
34
|
-
}
|
|
35
|
-
}
|
|
36
|
-
}
|
|
37
|
-
if (compatNode) {
|
|
38
|
-
const arrayNodes = (0, js_1.findNodes)(compatNode, ts.SyntaxKind.ArrayLiteralExpression);
|
|
39
|
-
for (const a of arrayNodes) {
|
|
40
|
-
if (matchingExts.every((ext) => a.elements.some((e) => e.getText() === ext))) {
|
|
41
|
-
const exts = new Set(a.elements.map((e) => e.getText()));
|
|
42
|
-
for (const ext of newExts) {
|
|
43
|
-
exts.add(ext);
|
|
44
|
-
}
|
|
45
|
-
(0, js_1.replaceChange)(tree, source, configFile, a.getStart(a.getSourceFile()), `[${Array.from(exts).join(', ')}]`, a.getText()).getText();
|
|
46
|
-
}
|
|
47
|
-
}
|
|
48
|
-
}
|
|
49
|
-
}
|