@nrwl/eslint-plugin-nx 14.8.8 → 14.9.0-beta.1
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/CHANGELOG.md +1 -1
- package/LICENSE +22 -22
- package/README.md +5 -26
- package/package.json +4 -5
- package/src/resolve-workspace-rules.d.ts +1 -1
- package/src/rules/enforce-module-boundaries.d.ts +3 -3
- package/src/rules/enforce-module-boundaries.js +56 -18
- package/src/rules/enforce-module-boundaries.js.map +1 -1
- package/src/rules/nx-plugin-checks.d.ts +2 -2
- package/src/rules/nx-plugin-checks.js +3 -3
- package/src/rules/nx-plugin-checks.js.map +1 -1
- package/src/utils/ast-utils.d.ts +1 -1
- package/src/utils/ast-utils.js +8 -5
- package/src/utils/ast-utils.js.map +1 -1
- package/src/utils/graph-utils.d.ts +5 -0
- package/src/utils/graph-utils.js +117 -0
- package/src/utils/graph-utils.js.map +1 -0
- package/src/utils/project-graph-utils.d.ts +6 -2
- package/src/utils/project-graph-utils.js +13 -5
- package/src/utils/project-graph-utils.js.map +1 -1
- package/src/utils/runtime-lint-utils.d.ts +85 -0
- package/src/utils/runtime-lint-utils.js +329 -0
- package/src/utils/runtime-lint-utils.js.map +1 -0
package/CHANGELOG.md
CHANGED
|
@@ -3,6 +3,6 @@
|
|
|
3
3
|
All notable changes to this project will be documented in this file.
|
|
4
4
|
See [Conventional Commits](https://conventionalcommits.org) for commit guidelines.
|
|
5
5
|
|
|
6
|
-
|
|
6
|
+
|
|
7
7
|
|
|
8
8
|
**Note:** Version bump only for package @nrwl/eslint-plugin-nx
|
package/LICENSE
CHANGED
|
@@ -1,22 +1,22 @@
|
|
|
1
|
-
(The MIT License)
|
|
2
|
-
|
|
3
|
-
Copyright (c) 2017-
|
|
4
|
-
|
|
5
|
-
Permission is hereby granted, free of charge, to any person obtaining
|
|
6
|
-
a copy of this software and associated documentation files (the
|
|
7
|
-
'Software'), to deal in the Software without restriction, including
|
|
8
|
-
without limitation the rights to use, copy, modify, merge, publish,
|
|
9
|
-
distribute, sublicense, and/or sell copies of the Software, and to
|
|
10
|
-
permit persons to whom the Software is furnished to do so, subject to
|
|
11
|
-
the following conditions:
|
|
12
|
-
|
|
13
|
-
The above copyright notice and this permission notice shall be
|
|
14
|
-
included in all copies or substantial portions of the Software.
|
|
15
|
-
|
|
16
|
-
THE SOFTWARE IS PROVIDED 'AS IS', WITHOUT WARRANTY OF ANY KIND,
|
|
17
|
-
EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
|
|
18
|
-
MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT.
|
|
19
|
-
IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY
|
|
20
|
-
CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT,
|
|
21
|
-
TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE
|
|
22
|
-
SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
|
|
1
|
+
(The MIT License)
|
|
2
|
+
|
|
3
|
+
Copyright (c) 2017-2023 Narwhal Technologies Inc.
|
|
4
|
+
|
|
5
|
+
Permission is hereby granted, free of charge, to any person obtaining
|
|
6
|
+
a copy of this software and associated documentation files (the
|
|
7
|
+
'Software'), to deal in the Software without restriction, including
|
|
8
|
+
without limitation the rights to use, copy, modify, merge, publish,
|
|
9
|
+
distribute, sublicense, and/or sell copies of the Software, and to
|
|
10
|
+
permit persons to whom the Software is furnished to do so, subject to
|
|
11
|
+
the following conditions:
|
|
12
|
+
|
|
13
|
+
The above copyright notice and this permission notice shall be
|
|
14
|
+
included in all copies or substantial portions of the Software.
|
|
15
|
+
|
|
16
|
+
THE SOFTWARE IS PROVIDED 'AS IS', WITHOUT WARRANTY OF ANY KIND,
|
|
17
|
+
EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
|
|
18
|
+
MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT.
|
|
19
|
+
IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY
|
|
20
|
+
CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT,
|
|
21
|
+
TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE
|
|
22
|
+
SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
|
package/README.md
CHANGED
|
@@ -43,40 +43,19 @@ npm init nx-workspace
|
|
|
43
43
|
yarn create nx-workspace
|
|
44
44
|
```
|
|
45
45
|
|
|
46
|
-
|
|
47
|
-
|
|
48
|
-
```
|
|
49
|
-
? What to create in the new workspace (Use arrow keys)
|
|
50
|
-
❯ apps [an empty workspace with no plugins with a layout that works best for building apps]
|
|
51
|
-
core [an empty workspace with no plugins set up to publish npm packages (similar to yarn workspaces)]
|
|
52
|
-
ts [an empty workspace with the JS/TS plugin preinstalled]
|
|
53
|
-
react [a workspace with a single React application]
|
|
54
|
-
angular [a workspace with a single Angular application]
|
|
55
|
-
next.js [a workspace with a single Next.js application]
|
|
56
|
-
nest [a workspace with a single Nest application]
|
|
57
|
-
express [a workspace with a single Express application]
|
|
58
|
-
web components [a workspace with a single app built using web components]
|
|
59
|
-
react-native [a workspace with a single React Native application]
|
|
60
|
-
react-express [a workspace with a full stack application (React + Express)]
|
|
61
|
-
```
|
|
62
|
-
|
|
63
|
-
Select the preset that works best for you
|
|
64
|
-
|
|
65
|
-
### Adding Nx to an Existing Monorepo
|
|
46
|
+
### Adding Nx to an Existing Repository
|
|
66
47
|
|
|
67
48
|
Run:
|
|
68
49
|
|
|
69
50
|
```bash
|
|
70
|
-
npx
|
|
51
|
+
npx nx@latest init
|
|
71
52
|
```
|
|
72
53
|
|
|
73
54
|
## Documentation & Resources
|
|
74
55
|
|
|
75
|
-
|
|
76
|
-
|
|
77
|
-
- [Nx
|
|
78
|
-
- [Tutorial: Adding Nx to an Existing Monorepo](/recipe/adding-to-monorepo)
|
|
79
|
-
- [Official Nx YouTube Channel](https://www.youtube.com/c/Nrwl_io)
|
|
56
|
+
- [Nx.Dev: Documentation, Guides, Tutorials](https://nx.dev)
|
|
57
|
+
- [Intro to Nx](https://nx.dev/getting-started/intro)
|
|
58
|
+
- [Official Nx YouTube Channel](https://www.youtube.com/@NxDevtools)
|
|
80
59
|
- [Blog Posts About Nx](https://blog.nrwl.io/nx/home)
|
|
81
60
|
|
|
82
61
|
<p style="text-align: center;"><a href="https://nx.dev/#learning-materials" target="_blank" rel="noreferrer"><img src="https://raw.githubusercontent.com/nrwl/nx/master/images/nx-courses-and-videos.svg"
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@nrwl/eslint-plugin-nx",
|
|
3
|
-
"version": "14.
|
|
3
|
+
"version": "14.9.0-beta.1",
|
|
4
4
|
"private": false,
|
|
5
5
|
"description": "The ESLint Plugin for Nx contains a collection of recommended ESLint rule configurations wrapped as ESLint plugins and an Nx specific enforce-module-boundaries rule.",
|
|
6
6
|
"repository": {
|
|
@@ -33,10 +33,9 @@
|
|
|
33
33
|
}
|
|
34
34
|
},
|
|
35
35
|
"dependencies": {
|
|
36
|
-
"@nrwl/devkit": "14.
|
|
37
|
-
"@nrwl/workspace": "14.8.8",
|
|
36
|
+
"@nrwl/devkit": "14.9.0-beta.1",
|
|
38
37
|
"@typescript-eslint/utils": "^5.36.1",
|
|
39
|
-
"chalk": "4.1.0",
|
|
38
|
+
"chalk": "^4.1.0",
|
|
40
39
|
"confusing-browser-globals": "^1.0.9",
|
|
41
40
|
"semver": "7.3.4"
|
|
42
41
|
},
|
|
@@ -44,5 +43,5 @@
|
|
|
44
43
|
"access": "public"
|
|
45
44
|
},
|
|
46
45
|
"types": "./src/index.d.ts",
|
|
47
|
-
"gitHead": "
|
|
46
|
+
"gitHead": "b2a467bcb2bdc124ed52f3755780bca429a43855"
|
|
48
47
|
}
|
|
@@ -1,4 +1,4 @@
|
|
|
1
1
|
import type { TSESLint } from '@typescript-eslint/utils';
|
|
2
|
-
|
|
2
|
+
type ESLintRules = Record<string, TSESLint.RuleModule<string, unknown[]>>;
|
|
3
3
|
export declare const workspaceRules: ESLintRules;
|
|
4
4
|
export {};
|
|
@@ -1,5 +1,5 @@
|
|
|
1
|
-
import { DepConstraint } from '
|
|
2
|
-
|
|
1
|
+
import { DepConstraint } from '../utils/runtime-lint-utils';
|
|
2
|
+
type Options = [
|
|
3
3
|
{
|
|
4
4
|
allow: string[];
|
|
5
5
|
depConstraints: DepConstraint[];
|
|
@@ -9,7 +9,7 @@ declare type Options = [
|
|
|
9
9
|
checkNestedExternalImports: boolean;
|
|
10
10
|
}
|
|
11
11
|
];
|
|
12
|
-
export
|
|
12
|
+
export type MessageIds = 'noRelativeOrAbsoluteImportsAcrossLibraries' | 'noSelfCircularDependencies' | 'noCircularDependencies' | 'noImportsOfApps' | 'noImportsOfE2e' | 'noImportOfNonBuildableLibraries' | 'noImportsOfLazyLoadedLibraries' | 'projectWithoutTagsCannotHaveDependencies' | 'bannedExternalImportsViolation' | 'nestedBannedExternalImportsViolation' | 'noTransitiveDependencies' | 'onlyTagsConstraintViolation' | 'emptyOnlyTagsConstraintViolation' | 'notTagsConstraintViolation';
|
|
13
13
|
export declare const RULE_NAME = "enforce-module-boundaries";
|
|
14
14
|
declare const _default: import("@typescript-eslint/utils/dist/ts-eslint/Rule").RuleModule<MessageIds, Options, import("@typescript-eslint/utils/dist/ts-eslint/Rule").RuleListener>;
|
|
15
15
|
export default _default;
|
|
@@ -2,9 +2,9 @@
|
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
3
|
exports.RULE_NAME = void 0;
|
|
4
4
|
const devkit_1 = require("@nrwl/devkit");
|
|
5
|
-
const fileutils_1 = require("
|
|
6
|
-
const graph_utils_1 = require("
|
|
7
|
-
const runtime_lint_utils_1 = require("
|
|
5
|
+
const fileutils_1 = require("nx/src/utils/fileutils");
|
|
6
|
+
const graph_utils_1 = require("../utils/graph-utils");
|
|
7
|
+
const runtime_lint_utils_1 = require("../utils/runtime-lint-utils");
|
|
8
8
|
const utils_1 = require("@typescript-eslint/utils");
|
|
9
9
|
const target_project_locator_1 = require("nx/src/utils/target-project-locator");
|
|
10
10
|
const path_1 = require("path");
|
|
@@ -34,8 +34,18 @@ exports.default = (0, create_eslint_rule_1.createESLintRule)({
|
|
|
34
34
|
{
|
|
35
35
|
type: 'object',
|
|
36
36
|
properties: {
|
|
37
|
-
|
|
37
|
+
oneOf: [
|
|
38
|
+
{ sourceTag: { type: 'string' } },
|
|
39
|
+
{
|
|
40
|
+
allSourceTags: {
|
|
41
|
+
type: 'array',
|
|
42
|
+
items: { type: 'string' },
|
|
43
|
+
minItems: 2,
|
|
44
|
+
},
|
|
45
|
+
},
|
|
46
|
+
],
|
|
38
47
|
onlyDependOnLibsWithTags: [{ type: 'string' }],
|
|
48
|
+
allowedExternalImports: [{ type: 'string' }],
|
|
39
49
|
bannedExternalImports: [{ type: 'string' }],
|
|
40
50
|
notDependOnLibsWithTags: [{ type: 'string' }],
|
|
41
51
|
},
|
|
@@ -59,6 +69,7 @@ exports.default = (0, create_eslint_rule_1.createESLintRule)({
|
|
|
59
69
|
nestedBannedExternalImportsViolation: `A project tagged with "{{sourceTag}}" is not allowed to import the "{{package}}" package. Nested import found at {{childProjectName}}`,
|
|
60
70
|
noTransitiveDependencies: `Transitive dependencies are not allowed. Only packages defined in the "package.json" can be imported`,
|
|
61
71
|
onlyTagsConstraintViolation: `A project tagged with "{{sourceTag}}" can only depend on libs tagged with {{tags}}`,
|
|
72
|
+
emptyOnlyTagsConstraintViolation: 'A project tagged with "{{sourceTag}}" cannot depend on any libs with tags',
|
|
62
73
|
notTagsConstraintViolation: `A project tagged with "{{sourceTag}}" can not depend on libs tagged with {{tags}}\n\nViolation detected in:\n{{projects}}`,
|
|
63
74
|
},
|
|
64
75
|
},
|
|
@@ -78,7 +89,7 @@ exports.default = (0, create_eslint_rule_1.createESLintRule)({
|
|
|
78
89
|
*/
|
|
79
90
|
const projectPath = (0, devkit_1.normalizePath)(global.projectPath || devkit_1.workspaceRoot);
|
|
80
91
|
const fileName = (0, devkit_1.normalizePath)(context.getFilename());
|
|
81
|
-
const projectGraph = (0, project_graph_utils_1.readProjectGraph)(exports.RULE_NAME);
|
|
92
|
+
const { projectGraph, projectRootMappings } = (0, project_graph_utils_1.readProjectGraph)(exports.RULE_NAME);
|
|
82
93
|
if (!projectGraph) {
|
|
83
94
|
return {};
|
|
84
95
|
}
|
|
@@ -104,7 +115,7 @@ exports.default = (0, create_eslint_rule_1.createESLintRule)({
|
|
|
104
115
|
return;
|
|
105
116
|
}
|
|
106
117
|
const sourceFilePath = (0, runtime_lint_utils_1.getSourceFilePath)(fileName, projectPath);
|
|
107
|
-
const sourceProject = (0, runtime_lint_utils_1.
|
|
118
|
+
const sourceProject = (0, runtime_lint_utils_1.findProject)(projectGraph, projectRootMappings, sourceFilePath);
|
|
108
119
|
// If source is not part of an nx workspace, return.
|
|
109
120
|
if (!sourceProject) {
|
|
110
121
|
return;
|
|
@@ -113,10 +124,10 @@ exports.default = (0, create_eslint_rule_1.createESLintRule)({
|
|
|
113
124
|
const isAbsoluteImportIntoAnotherProj = (0, runtime_lint_utils_1.isAbsoluteImportIntoAnotherProject)(imp, workspaceLayout);
|
|
114
125
|
let targetProject;
|
|
115
126
|
if (isAbsoluteImportIntoAnotherProj) {
|
|
116
|
-
targetProject = (0, runtime_lint_utils_1.
|
|
127
|
+
targetProject = (0, runtime_lint_utils_1.findProject)(projectGraph, projectRootMappings, imp);
|
|
117
128
|
}
|
|
118
129
|
else {
|
|
119
|
-
targetProject = (0, runtime_lint_utils_1.getTargetProjectBasedOnRelativeImport)(imp, projectPath, projectGraph, sourceFilePath);
|
|
130
|
+
targetProject = (0, runtime_lint_utils_1.getTargetProjectBasedOnRelativeImport)(imp, projectPath, projectGraph, projectRootMappings, sourceFilePath);
|
|
120
131
|
}
|
|
121
132
|
if ((targetProject && sourceProject !== targetProject) ||
|
|
122
133
|
isAbsoluteImportIntoAnotherProj) {
|
|
@@ -131,12 +142,14 @@ exports.default = (0, create_eslint_rule_1.createESLintRule)({
|
|
|
131
142
|
if (!specifiers || specifiers.length === 0) {
|
|
132
143
|
return;
|
|
133
144
|
}
|
|
134
|
-
const imports = specifiers
|
|
145
|
+
const imports = specifiers
|
|
146
|
+
.filter((s) => s.type === 'ImportSpecifier')
|
|
147
|
+
.map((s) => s.imported.name);
|
|
135
148
|
// process each potential entry point and try to find the imports
|
|
136
149
|
const importsToRemap = [];
|
|
137
150
|
for (const entryPointPath of indexTsPaths) {
|
|
138
151
|
for (const importMember of imports) {
|
|
139
|
-
const importPath = (0, ast_utils_1.getRelativeImportPath)(importMember, entryPointPath.path, sourceProject.data.sourceRoot);
|
|
152
|
+
const importPath = (0, ast_utils_1.getRelativeImportPath)(importMember, (0, devkit_1.joinPathFragments)(devkit_1.workspaceRoot, entryPointPath.path), sourceProject.data.sourceRoot);
|
|
140
153
|
// we cannot remap, so leave it as is
|
|
141
154
|
if (importPath) {
|
|
142
155
|
importsToRemap.push({
|
|
@@ -168,7 +181,7 @@ exports.default = (0, create_eslint_rule_1.createESLintRule)({
|
|
|
168
181
|
if (sourceProject === targetProject) {
|
|
169
182
|
if (!allowCircularSelfDependency &&
|
|
170
183
|
!(0, fileutils_1.isRelativePath)(imp) &&
|
|
171
|
-
!(0, runtime_lint_utils_1.isAngularSecondaryEntrypoint)(
|
|
184
|
+
!(0, runtime_lint_utils_1.isAngularSecondaryEntrypoint)(imp, sourceFilePath)) {
|
|
172
185
|
context.report({
|
|
173
186
|
node,
|
|
174
187
|
messageId: 'noSelfCircularDependencies',
|
|
@@ -184,12 +197,14 @@ exports.default = (0, create_eslint_rule_1.createESLintRule)({
|
|
|
184
197
|
return;
|
|
185
198
|
}
|
|
186
199
|
// imported JS functions to remap
|
|
187
|
-
const imports = specifiers
|
|
200
|
+
const imports = specifiers
|
|
201
|
+
.filter((s) => s.type === 'ImportSpecifier')
|
|
202
|
+
.map((s) => s.imported.name);
|
|
188
203
|
// process each potential entry point and try to find the imports
|
|
189
204
|
const importsToRemap = [];
|
|
190
205
|
for (const entryPointPath of indexTsPaths) {
|
|
191
206
|
for (const importMember of imports) {
|
|
192
|
-
const importPath = (0, ast_utils_1.getRelativeImportPath)(importMember, entryPointPath, sourceProject.data.sourceRoot);
|
|
207
|
+
const importPath = (0, ast_utils_1.getRelativeImportPath)(importMember, (0, devkit_1.joinPathFragments)(devkit_1.workspaceRoot, entryPointPath), sourceProject.data.sourceRoot);
|
|
193
208
|
if (importPath) {
|
|
194
209
|
// resolve the import path
|
|
195
210
|
const relativePath = (0, path_1.relative)((0, path_1.dirname)(fileName), (0, path_1.dirname)(importPath));
|
|
@@ -216,7 +231,8 @@ exports.default = (0, create_eslint_rule_1.createESLintRule)({
|
|
|
216
231
|
}
|
|
217
232
|
// project => npm package
|
|
218
233
|
if (targetProject.type === 'npm') {
|
|
219
|
-
if (banTransitiveDependencies &&
|
|
234
|
+
if (banTransitiveDependencies &&
|
|
235
|
+
!(0, runtime_lint_utils_1.isDirectDependency)(sourceProject, targetProject)) {
|
|
220
236
|
context.report({
|
|
221
237
|
node,
|
|
222
238
|
messageId: 'noTransitiveDependencies',
|
|
@@ -228,7 +244,9 @@ exports.default = (0, create_eslint_rule_1.createESLintRule)({
|
|
|
228
244
|
node,
|
|
229
245
|
messageId: 'bannedExternalImportsViolation',
|
|
230
246
|
data: {
|
|
231
|
-
sourceTag: constraint
|
|
247
|
+
sourceTag: (0, runtime_lint_utils_1.isComboDepConstraint)(constraint)
|
|
248
|
+
? constraint.allSourceTags.join('" and "')
|
|
249
|
+
: constraint.sourceTag,
|
|
232
250
|
package: targetProject.data.packageName,
|
|
233
251
|
},
|
|
234
252
|
});
|
|
@@ -322,12 +340,28 @@ exports.default = (0, create_eslint_rule_1.createESLintRule)({
|
|
|
322
340
|
node,
|
|
323
341
|
messageId: 'onlyTagsConstraintViolation',
|
|
324
342
|
data: {
|
|
325
|
-
sourceTag: constraint
|
|
343
|
+
sourceTag: (0, runtime_lint_utils_1.isComboDepConstraint)(constraint)
|
|
344
|
+
? constraint.allSourceTags.join('" and "')
|
|
345
|
+
: constraint.sourceTag,
|
|
326
346
|
tags: (0, runtime_lint_utils_1.stringifyTags)(constraint.onlyDependOnLibsWithTags),
|
|
327
347
|
},
|
|
328
348
|
});
|
|
329
349
|
return;
|
|
330
350
|
}
|
|
351
|
+
if (constraint.onlyDependOnLibsWithTags &&
|
|
352
|
+
constraint.onlyDependOnLibsWithTags.length === 0 &&
|
|
353
|
+
targetProject.data.tags.length !== 0) {
|
|
354
|
+
context.report({
|
|
355
|
+
node,
|
|
356
|
+
messageId: 'emptyOnlyTagsConstraintViolation',
|
|
357
|
+
data: {
|
|
358
|
+
sourceTag: (0, runtime_lint_utils_1.isComboDepConstraint)(constraint)
|
|
359
|
+
? constraint.allSourceTags.join('" and "')
|
|
360
|
+
: constraint.sourceTag,
|
|
361
|
+
},
|
|
362
|
+
});
|
|
363
|
+
return;
|
|
364
|
+
}
|
|
331
365
|
if (constraint.notDependOnLibsWithTags &&
|
|
332
366
|
constraint.notDependOnLibsWithTags.length) {
|
|
333
367
|
const projectPaths = (0, runtime_lint_utils_1.findDependenciesWithTags)(targetProject, constraint.notDependOnLibsWithTags, projectGraph);
|
|
@@ -336,7 +370,9 @@ exports.default = (0, create_eslint_rule_1.createESLintRule)({
|
|
|
336
370
|
node,
|
|
337
371
|
messageId: 'notTagsConstraintViolation',
|
|
338
372
|
data: {
|
|
339
|
-
sourceTag: constraint
|
|
373
|
+
sourceTag: (0, runtime_lint_utils_1.isComboDepConstraint)(constraint)
|
|
374
|
+
? constraint.allSourceTags.join('" and "')
|
|
375
|
+
: constraint.sourceTag,
|
|
340
376
|
tags: (0, runtime_lint_utils_1.stringifyTags)(constraint.notDependOnLibsWithTags),
|
|
341
377
|
projects: projectPaths
|
|
342
378
|
.map((projectPath) => `- ${projectPath.map((p) => p.name).join(' -> ')}`)
|
|
@@ -356,7 +392,9 @@ exports.default = (0, create_eslint_rule_1.createESLintRule)({
|
|
|
356
392
|
node,
|
|
357
393
|
messageId: 'bannedExternalImportsViolation',
|
|
358
394
|
data: {
|
|
359
|
-
sourceTag: constraint
|
|
395
|
+
sourceTag: (0, runtime_lint_utils_1.isComboDepConstraint)(constraint)
|
|
396
|
+
? constraint.allSourceTags.join('" and "')
|
|
397
|
+
: constraint.sourceTag,
|
|
360
398
|
childProjectName: violatingSource.name,
|
|
361
399
|
package: target.data.packageName,
|
|
362
400
|
},
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"enforce-module-boundaries.js","sourceRoot":"","sources":["../../../../../packages/eslint-plugin-nx/src/rules/enforce-module-boundaries.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"enforce-module-boundaries.js","sourceRoot":"","sources":["../../../../../packages/eslint-plugin-nx/src/rules/enforce-module-boundaries.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import type { AST } from 'jsonc-eslint-parser';
|
|
2
2
|
import type { TSESLint } from '@typescript-eslint/utils';
|
|
3
|
-
|
|
3
|
+
type Options = [
|
|
4
4
|
{
|
|
5
5
|
generatorsJson?: string;
|
|
6
6
|
executorsJson?: string;
|
|
@@ -9,7 +9,7 @@ declare type Options = [
|
|
|
9
9
|
allowedVersionStrings: string[];
|
|
10
10
|
}
|
|
11
11
|
];
|
|
12
|
-
export
|
|
12
|
+
export type MessageIds = 'missingRequiredSchema' | 'invalidSchemaPath' | 'missingImplementation' | 'invalidImplementationPath' | 'invalidImplementationModule' | 'unableToReadImplementationExports' | 'invalidVersion' | 'missingVersion' | 'noGeneratorsOrSchematicsFound' | 'noExecutorsOrBuildersFound' | 'valueShouldBeObject';
|
|
13
13
|
export declare const RULE_NAME = "nx-plugin-checks";
|
|
14
14
|
declare const _default: TSESLint.RuleModule<MessageIds, Options, TSESLint.RuleListener>;
|
|
15
15
|
export default _default;
|
|
@@ -2,7 +2,7 @@
|
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
3
|
exports.validateVersionJsonExpression = exports.validatePackageGroup = exports.validateImplemenationNode = exports.validateEntry = exports.checkCollectionNode = exports.checkCollectionFileNode = exports.RULE_NAME = void 0;
|
|
4
4
|
const devkit_1 = require("@nrwl/devkit");
|
|
5
|
-
const runtime_lint_utils_1 = require("
|
|
5
|
+
const runtime_lint_utils_1 = require("../utils/runtime-lint-utils");
|
|
6
6
|
const fs_1 = require("fs");
|
|
7
7
|
const register_1 = require("nx/src/utils/register");
|
|
8
8
|
const path = require("path");
|
|
@@ -46,9 +46,9 @@ exports.default = (0, create_eslint_rule_1.createESLintRule)({
|
|
|
46
46
|
if (!context.parserServices.isJSON) {
|
|
47
47
|
return {};
|
|
48
48
|
}
|
|
49
|
-
const projectGraph = (0, project_graph_utils_1.readProjectGraph)(exports.RULE_NAME);
|
|
49
|
+
const { projectGraph, projectRootMappings } = (0, project_graph_utils_1.readProjectGraph)(exports.RULE_NAME);
|
|
50
50
|
const sourceFilePath = (0, runtime_lint_utils_1.getSourceFilePath)(context.getFilename(), devkit_1.workspaceRoot);
|
|
51
|
-
const sourceProject = (0, runtime_lint_utils_1.
|
|
51
|
+
const sourceProject = (0, runtime_lint_utils_1.findProject)(projectGraph, projectRootMappings, sourceFilePath);
|
|
52
52
|
// If source is not part of an nx workspace, return.
|
|
53
53
|
if (!sourceProject) {
|
|
54
54
|
return {};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"nx-plugin-checks.js","sourceRoot":"","sources":["../../../../../packages/eslint-plugin-nx/src/rules/nx-plugin-checks.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"nx-plugin-checks.js","sourceRoot":"","sources":["../../../../../packages/eslint-plugin-nx/src/rules/nx-plugin-checks.ts"],"names":[],"mappings":"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"}
|
package/src/utils/ast-utils.d.ts
CHANGED
|
@@ -5,7 +5,7 @@ import { ProjectGraphProjectNode } from '@nrwl/devkit';
|
|
|
5
5
|
* @returns
|
|
6
6
|
*/
|
|
7
7
|
export declare function getBarrelEntryPointByImportScope(importScope: string): string[] | null;
|
|
8
|
-
export declare function getBarrelEntryPointProjectNode(projectNode: ProjectGraphProjectNode
|
|
8
|
+
export declare function getBarrelEntryPointProjectNode(projectNode: ProjectGraphProjectNode): {
|
|
9
9
|
path: string;
|
|
10
10
|
importScope: string;
|
|
11
11
|
}[] | null;
|
package/src/utils/ast-utils.js
CHANGED
|
@@ -2,15 +2,14 @@
|
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
3
|
exports.getRelativeImportPath = exports.getBarrelEntryPointProjectNode = exports.getBarrelEntryPointByImportScope = void 0;
|
|
4
4
|
const devkit_1 = require("@nrwl/devkit");
|
|
5
|
-
const typescript_1 = require("
|
|
5
|
+
const typescript_1 = require("nx/src/utils/typescript");
|
|
6
6
|
const fs_1 = require("fs");
|
|
7
7
|
const path_1 = require("path");
|
|
8
8
|
const ts = require("typescript");
|
|
9
9
|
const devkit_2 = require("@nrwl/devkit");
|
|
10
|
-
const devkit_3 = require("@nrwl/devkit");
|
|
11
10
|
function tryReadBaseJson() {
|
|
12
11
|
try {
|
|
13
|
-
return (0, devkit_1.readJsonFile)((0, devkit_1.joinPathFragments)(
|
|
12
|
+
return (0, devkit_1.readJsonFile)((0, devkit_1.joinPathFragments)(devkit_2.workspaceRoot, 'tsconfig.base.json'));
|
|
14
13
|
}
|
|
15
14
|
catch (e) {
|
|
16
15
|
devkit_2.logger.warn(`Error reading "tsconfig.base.json": \n${JSON.stringify(e)}`);
|
|
@@ -146,10 +145,14 @@ function getRelativeImportPath(exportedMember, filePath, basePath) {
|
|
|
146
145
|
continue;
|
|
147
146
|
}
|
|
148
147
|
const modulePath = exportDeclaration.moduleSpecifier.text;
|
|
149
|
-
let moduleFilePath = (0, devkit_1.joinPathFragments)(
|
|
148
|
+
let moduleFilePath = (0, devkit_1.joinPathFragments)((0, path_1.dirname)(filePath), `${modulePath}.ts`);
|
|
149
|
+
if (!(0, fs_1.existsSync)(moduleFilePath)) {
|
|
150
|
+
// might be a tsx file
|
|
151
|
+
moduleFilePath = (0, devkit_1.joinPathFragments)((0, path_1.dirname)(filePath), `${modulePath}.tsx`);
|
|
152
|
+
}
|
|
150
153
|
if (!(0, fs_1.existsSync)(moduleFilePath)) {
|
|
151
154
|
// might be a index.ts
|
|
152
|
-
moduleFilePath = (0, devkit_1.joinPathFragments)(
|
|
155
|
+
moduleFilePath = (0, devkit_1.joinPathFragments)((0, path_1.dirname)(filePath), `${modulePath}/index.ts`);
|
|
153
156
|
}
|
|
154
157
|
if (hasMemberExport(exportedMember, moduleFilePath)) {
|
|
155
158
|
const foundFilePath = getRelativeImportPath(exportedMember, moduleFilePath, basePath);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ast-utils.js","sourceRoot":"","sources":["../../../../../packages/eslint-plugin-nx/src/utils/ast-utils.ts"],"names":[],"mappings":";;;AAAA,yCAIsB;AACtB,
|
|
1
|
+
{"version":3,"file":"ast-utils.js","sourceRoot":"","sources":["../../../../../packages/eslint-plugin-nx/src/utils/ast-utils.ts"],"names":[],"mappings":";;;AAAA,yCAIsB;AACtB,wDAAoD;AACpD,2BAA8C;AAC9C,+BAA+B;AAC/B,iCAAkC;AAClC,yCAAqD;AAErD,SAAS,eAAe;IACtB,IAAI;QACF,OAAO,IAAA,qBAAY,EAAC,IAAA,0BAAiB,EAAC,sBAAa,EAAE,oBAAoB,CAAC,CAAC,CAAC;KAC7E;IAAC,OAAO,CAAC,EAAE;QACV,eAAM,CAAC,IAAI,CAAC,yCAAyC,IAAI,CAAC,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC;QAC1E,OAAO,IAAI,CAAC;KACb;AACH,CAAC;AAED;;;;GAIG;AACH,SAAgB,gCAAgC,CAC9C,WAAmB;;IAEnB,MAAM,YAAY,GAAG,eAAe,EAAE,CAAC;IACvC,OAAO,CAAA,MAAA,YAAY,aAAZ,YAAY,uBAAZ,YAAY,CAAE,eAAe,0CAAE,KAAK,CAAC,WAAW,CAAC,KAAI,IAAI,CAAC;AACnE,CAAC;AALD,4EAKC;AAED,SAAgB,8BAA8B,CAC5C,WAAoC;;IAEpC,MAAM,YAAY,GAAG,eAAe,EAAE,CAAC;IAEvC,IAAI,MAAA,YAAY,aAAZ,YAAY,uBAAZ,YAAY,CAAE,eAAe,0CAAE,KAAK,EAAE;QACxC,MAAM,oBAAoB,GAAG,MAAM,CAAC,IAAI,CAAC,YAAY,CAAC,eAAe,CAAC,KAAK,CAAC;aACzE,MAAM,CAAC,CAAC,KAAK,EAAE,EAAE;YAChB,MAAM,iBAAiB,GAAG,YAAY,CAAC,eAAe,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC;YACpE,OAAO,iBAAiB,CAAC,IAAI,CAAC,CAAC,gBAAgB,EAAE,EAAE;gBACjD,OAAO,CACL,gBAAgB,KAAK,WAAW,CAAC,IAAI,CAAC,UAAU;oBAChD,gBAAgB,CAAC,OAAO,CAAC,GAAG,WAAW,CAAC,IAAI,CAAC,UAAU,GAAG,CAAC,KAAK,CAAC,CAClE,CAAC;YACJ,CAAC,CAAC,CAAC;QACL,CAAC,CAAC;aACD,GAAG,CAAC,CAAC,KAAK,EAAE,EAAE,CACb,YAAY,CAAC,eAAe,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC;YACpD,IAAI,EAAE,CAAC;YACP,WAAW,EAAE,KAAK;SACnB,CAAC,CAAC,CACJ,CAAC;QAEJ,OAAO,oBAAoB,CAAC,IAAI,EAAE,CAAC;KACpC;IAED,OAAO,IAAI,CAAC;AACd,CAAC;AA3BD,wEA2BC;AAED,SAAS,eAAe,CAAC,cAAc,EAAE,QAAQ;IAC/C,MAAM,WAAW,GAAG,IAAA,iBAAY,EAAC,QAAQ,EAAE,MAAM,CAAC,CAAC;IAEnD,sFAAsF;IACtF,MAAM,UAAU,GAAG,EAAE,CAAC,gBAAgB,CACpC,QAAQ,EACR,WAAW,EACX,EAAE,CAAC,YAAY,CAAC,MAAM,EACtB,IAAI,CACL,CAAC;IAEF,0DAA0D;IAC1D,OAAO,CACL,IAAA,sBAAS,EAAC,UAAU,EAAE,EAAE,CAAC,UAAU,CAAC,UAAU,CAAC,CAAC,MAAM,CACpD,CAAC,UAAe,EAAE,EAAE,CAAC,UAAU,CAAC,IAAI,KAAK,cAAc,CACxD,CAAC,MAAM,GAAG,CAAC,CACb,CAAC;AACJ,CAAC;AAED,SAAgB,qBAAqB,CAAC,cAAc,EAAE,QAAQ,EAAE,QAAQ;;IACtE,MAAM,WAAW,GAAG,IAAA,iBAAY,EAAC,QAAQ,EAAE,MAAM,CAAC,CAAC;IAEnD,sFAAsF;IACtF,MAAM,UAAU,GAAG,EAAE,CAAC,gBAAgB,CACpC,QAAQ,EACR,WAAW,EACX,EAAE,CAAC,YAAY,CAAC,MAAM,EACtB,IAAI,CACL,CAAC;IAEF,gEAAgE;IAChE,MAAM,WAAW,GAAG,IAAA,sBAAS,EAAC,UAAU,EAAE,EAAE,CAAC,UAAU,CAAC,UAAU,CAAC,CAAC,MAAM,CACxE,CAAC,UAAe,EAAE,EAAE,CAAC,UAAU,CAAC,IAAI,KAAK,cAAc,CACxD,CAAC;IAEF,IAAI,SAAS,GAAG,KAAK,CAAC;IACtB,KAAK,MAAM,UAAU,IAAI,WAAW,IAAI,EAAE,EAAE;QAC1C,IAAI,UAAU,EAAE;YACd,8DAA8D;YAC9D,IAAI,MAAM,GAAG,UAAU,CAAC;YACxB,GAAG;gBACD,MAAM,GAAG,MAAM,CAAC,MAAM,CAAC;gBACvB,IAAI,MAAM,EAAE;oBACV,qEAAqE;oBACrE,yDAAyD;oBACzD,IACE,MAAM,CAAC,IAAI,KAAK,EAAE,CAAC,UAAU,CAAC,SAAS;wBACvC,MAAM,CAAC,IAAI,KAAK,EAAE,CAAC,UAAU,CAAC,wBAAwB;wBACtD,MAAM,CAAC,IAAI,KAAK,EAAE,CAAC,UAAU,CAAC,aAAa;wBAC3C,MAAM,CAAC,IAAI,KAAK,EAAE,CAAC,UAAU,CAAC,cAAc;wBAC5C,MAAM,CAAC,IAAI,KAAK,EAAE,CAAC,UAAU,CAAC,SAAS,EACvC;wBACA,SAAS,GAAG,KAAK,CAAC;wBAClB,MAAM;qBACP;oBAED,mEAAmE;oBACnE,+CAA+C;oBAC/C,IACE,MAAM,CAAC,IAAI,KAAK,EAAE,CAAC,UAAU,CAAC,iBAAiB;wBAC/C,CAAE,MAAc,CAAC,eAAe,EAChC;wBACA,SAAS,GAAG,IAAI,CAAC;wBACjB,MAAM;qBACP;oBAED,IACE,MAAM,CAAC,SAAS;wBAChB,MAAM,CAAC,SAAS,CAAC,IAAI,CACnB,CAAC,QAAQ,EAAE,EAAE,CAAC,QAAQ,CAAC,IAAI,KAAK,EAAE,CAAC,UAAU,CAAC,aAAa,CAC5D,EACD;wBACA;;;;;;;;;;;;;;;;;;2BAkBG;wBACH,IAAI,MAAM,CAAC,IAAI,KAAK,EAAE,CAAC,UAAU,CAAC,mBAAmB,EAAE;4BACrD,MAAM,UAAU,GAAG,MAAC,MAAc,CAAC,IAAI,0CAAE,IAAI,CAAC;4BAC9C,IAAI,UAAU,KAAK,cAAc,EAAE;gCACjC,SAAS,GAAG,IAAI,CAAC;gCACjB,MAAM;6BACP;yBACF;6BAAM;4BACL,SAAS,GAAG,IAAI,CAAC;4BACjB,MAAM;yBACP;qBACF;iBACF;aACF,QAAQ,CAAC,CAAC,MAAM,EAAE;SACpB;QAED,IAAI,SAAS,EAAE;YACb,MAAM;SACP;KACF;IAED,IAAI,SAAS,EAAE;QACb,uCAAuC;QACvC,OAAO,QAAQ,CAAC;KACjB;IAED,mDAAmD;IACnD,uDAAuD;IACvD,uCAAuC;IACvC,MAAM,kBAAkB,GAAG,IAAA,sBAAS,EAClC,UAAU,EACV,EAAE,CAAC,UAAU,CAAC,iBAAiB,CACN,CAAC;IAC5B,KAAK,MAAM,iBAAiB,IAAI,kBAAkB,EAAE;QAClD,IAAK,iBAAyB,CAAC,eAAe,EAAE;YAC9C,2EAA2E;YAC3E,qEAAqE;YACrE,sBAAsB;YACtB,IACE,iBAAiB,CAAC,YAAY;gBAC9B,IAAA,sBAAS,EAAC,iBAAiB,EAAE,EAAE,CAAC,UAAU,CAAC,UAAU,CAAC,CAAC,MAAM,CAC3D,CAAC,UAAe,EAAE,EAAE,CAAC,UAAU,CAAC,IAAI,KAAK,cAAc,CACxD,CAAC,MAAM,KAAK,CAAC,EACd;gBACA,SAAS;aACV;YAED,MAAM,UAAU,GAAI,iBAAyB,CAAC,eAAe,CAAC,IAAI,CAAC;YAEnE,IAAI,cAAc,GAAG,IAAA,0BAAiB,EACpC,IAAA,cAAO,EAAC,QAAQ,CAAC,EACjB,GAAG,UAAU,KAAK,CACnB,CAAC;YACF,IAAI,CAAC,IAAA,eAAU,EAAC,cAAc,CAAC,EAAE;gBAC/B,sBAAsB;gBACtB,cAAc,GAAG,IAAA,0BAAiB,EAChC,IAAA,cAAO,EAAC,QAAQ,CAAC,EACjB,GAAG,UAAU,MAAM,CACpB,CAAC;aACH;YACD,IAAI,CAAC,IAAA,eAAU,EAAC,cAAc,CAAC,EAAE;gBAC/B,sBAAsB;gBACtB,cAAc,GAAG,IAAA,0BAAiB,EAChC,IAAA,cAAO,EAAC,QAAQ,CAAC,EACjB,GAAG,UAAU,WAAW,CACzB,CAAC;aACH;YAED,IAAI,eAAe,CAAC,cAAc,EAAE,cAAc,CAAC,EAAE;gBACnD,MAAM,aAAa,GAAG,qBAAqB,CACzC,cAAc,EACd,cAAc,EACd,QAAQ,CACT,CAAC;gBACF,IAAI,aAAa,EAAE;oBACjB,OAAO,aAAa,CAAC;iBACtB;aACF;SACF;KACF;IAED,OAAO,IAAI,CAAC;AACd,CAAC;AAzJD,sDAyJC"}
|
|
@@ -0,0 +1,5 @@
|
|
|
1
|
+
import type { ProjectGraph, ProjectGraphProjectNode } from '@nrwl/devkit';
|
|
2
|
+
export declare function getPath(graph: ProjectGraph, sourceProjectName: string, targetProjectName: string): Array<ProjectGraphProjectNode>;
|
|
3
|
+
export declare function pathExists(graph: ProjectGraph, sourceProjectName: string, targetProjectName: string): boolean;
|
|
4
|
+
export declare function checkCircularPath(graph: ProjectGraph, sourceProject: ProjectGraphProjectNode, targetProject: ProjectGraphProjectNode): ProjectGraphProjectNode[];
|
|
5
|
+
export declare function findFilesInCircularPath(circularPath: ProjectGraphProjectNode[]): Array<string[]>;
|
|
@@ -0,0 +1,117 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.findFilesInCircularPath = exports.checkCircularPath = exports.pathExists = exports.getPath = void 0;
|
|
4
|
+
const reach = {
|
|
5
|
+
graph: null,
|
|
6
|
+
matrix: null,
|
|
7
|
+
adjList: null,
|
|
8
|
+
};
|
|
9
|
+
function buildMatrix(graph) {
|
|
10
|
+
const nodes = Object.keys(graph.nodes);
|
|
11
|
+
const nodesLength = nodes.length;
|
|
12
|
+
const adjList = {};
|
|
13
|
+
const matrix = {};
|
|
14
|
+
// create matrix value set
|
|
15
|
+
for (let i = 0; i < nodesLength; i++) {
|
|
16
|
+
const v = nodes[i];
|
|
17
|
+
adjList[v] = [];
|
|
18
|
+
// meeroslav: turns out this is 10x faster than spreading the pre-generated initMatrixValues
|
|
19
|
+
matrix[v] = {};
|
|
20
|
+
}
|
|
21
|
+
const projectsWithDependencies = Object.keys(graph.dependencies);
|
|
22
|
+
for (let i = 0; i < projectsWithDependencies.length; i++) {
|
|
23
|
+
const dependencies = graph.dependencies[projectsWithDependencies[i]];
|
|
24
|
+
for (let j = 0; j < dependencies.length; j++) {
|
|
25
|
+
const dependency = dependencies[j];
|
|
26
|
+
if (graph.nodes[dependency.target]) {
|
|
27
|
+
adjList[dependency.source].push(dependency.target);
|
|
28
|
+
}
|
|
29
|
+
}
|
|
30
|
+
}
|
|
31
|
+
const traverse = (s, v) => {
|
|
32
|
+
matrix[s][v] = true;
|
|
33
|
+
const adjListLength = adjList[v].length;
|
|
34
|
+
for (let i = 0; i < adjListLength; i++) {
|
|
35
|
+
const adj = adjList[v][i];
|
|
36
|
+
if (!matrix[s][adj]) {
|
|
37
|
+
traverse(s, adj);
|
|
38
|
+
}
|
|
39
|
+
}
|
|
40
|
+
};
|
|
41
|
+
for (let i = 0; i < nodesLength; i++) {
|
|
42
|
+
const v = nodes[i];
|
|
43
|
+
traverse(v, v);
|
|
44
|
+
}
|
|
45
|
+
return {
|
|
46
|
+
matrix,
|
|
47
|
+
adjList,
|
|
48
|
+
};
|
|
49
|
+
}
|
|
50
|
+
function getPath(graph, sourceProjectName, targetProjectName) {
|
|
51
|
+
if (sourceProjectName === targetProjectName)
|
|
52
|
+
return [];
|
|
53
|
+
if (reach.graph !== graph) {
|
|
54
|
+
const { matrix, adjList } = buildMatrix(graph);
|
|
55
|
+
reach.graph = graph;
|
|
56
|
+
reach.matrix = matrix;
|
|
57
|
+
reach.adjList = adjList;
|
|
58
|
+
}
|
|
59
|
+
const adjList = reach.adjList;
|
|
60
|
+
let path = [];
|
|
61
|
+
const queue = [[sourceProjectName, path]];
|
|
62
|
+
const visited = [sourceProjectName];
|
|
63
|
+
while (queue.length > 0) {
|
|
64
|
+
const [current, p] = queue.pop();
|
|
65
|
+
path = [...p, current];
|
|
66
|
+
if (current === targetProjectName)
|
|
67
|
+
break;
|
|
68
|
+
if (!adjList[current])
|
|
69
|
+
break;
|
|
70
|
+
adjList[current]
|
|
71
|
+
.filter((adj) => visited.indexOf(adj) === -1)
|
|
72
|
+
.filter((adj) => reach.matrix[adj][targetProjectName])
|
|
73
|
+
.forEach((adj) => {
|
|
74
|
+
visited.push(adj);
|
|
75
|
+
queue.push([adj, [...path]]);
|
|
76
|
+
});
|
|
77
|
+
}
|
|
78
|
+
if (path.length > 1) {
|
|
79
|
+
return path.map((n) => graph.nodes[n]);
|
|
80
|
+
}
|
|
81
|
+
else {
|
|
82
|
+
return [];
|
|
83
|
+
}
|
|
84
|
+
}
|
|
85
|
+
exports.getPath = getPath;
|
|
86
|
+
function pathExists(graph, sourceProjectName, targetProjectName) {
|
|
87
|
+
if (sourceProjectName === targetProjectName)
|
|
88
|
+
return true;
|
|
89
|
+
if (reach.graph !== graph) {
|
|
90
|
+
const { matrix, adjList } = buildMatrix(graph);
|
|
91
|
+
reach.graph = graph;
|
|
92
|
+
reach.matrix = matrix;
|
|
93
|
+
reach.adjList = adjList;
|
|
94
|
+
}
|
|
95
|
+
return !!reach.matrix[sourceProjectName][targetProjectName];
|
|
96
|
+
}
|
|
97
|
+
exports.pathExists = pathExists;
|
|
98
|
+
function checkCircularPath(graph, sourceProject, targetProject) {
|
|
99
|
+
if (!graph.nodes[targetProject.name])
|
|
100
|
+
return [];
|
|
101
|
+
return getPath(graph, targetProject.name, sourceProject.name);
|
|
102
|
+
}
|
|
103
|
+
exports.checkCircularPath = checkCircularPath;
|
|
104
|
+
function findFilesInCircularPath(circularPath) {
|
|
105
|
+
const filePathChain = [];
|
|
106
|
+
for (let i = 0; i < circularPath.length - 1; i++) {
|
|
107
|
+
const next = circularPath[i + 1].name;
|
|
108
|
+
const files = circularPath[i].data.files;
|
|
109
|
+
filePathChain.push(Object.keys(files)
|
|
110
|
+
.filter((key) => files[key].dependencies &&
|
|
111
|
+
files[key].dependencies.find((d) => d.target === next))
|
|
112
|
+
.map((key) => files[key].file));
|
|
113
|
+
}
|
|
114
|
+
return filePathChain;
|
|
115
|
+
}
|
|
116
|
+
exports.findFilesInCircularPath = findFilesInCircularPath;
|
|
117
|
+
//# sourceMappingURL=graph-utils.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"graph-utils.js","sourceRoot":"","sources":["../../../../../packages/eslint-plugin-nx/src/utils/graph-utils.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,3 +1,7 @@
|
|
|
1
|
-
import {
|
|
1
|
+
import { ProjectGraph } from '@nrwl/devkit';
|
|
2
|
+
import { ProjectRootMappings } from 'nx/src/project-graph/utils/find-project-for-path';
|
|
2
3
|
export declare function ensureGlobalProjectGraph(ruleName: string): void;
|
|
3
|
-
export declare function readProjectGraph(ruleName: string):
|
|
4
|
+
export declare function readProjectGraph(ruleName: string): {
|
|
5
|
+
projectGraph: ProjectGraph;
|
|
6
|
+
projectRootMappings: ProjectRootMappings;
|
|
7
|
+
};
|
|
@@ -2,22 +2,27 @@
|
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
3
|
exports.readProjectGraph = exports.ensureGlobalProjectGraph = void 0;
|
|
4
4
|
const devkit_1 = require("@nrwl/devkit");
|
|
5
|
-
const runtime_lint_utils_1 = require("
|
|
5
|
+
const runtime_lint_utils_1 = require("./runtime-lint-utils");
|
|
6
6
|
const chalk = require("chalk");
|
|
7
|
+
const find_project_for_path_1 = require("nx/src/project-graph/utils/find-project-for-path");
|
|
8
|
+
const file_utils_1 = require("nx/src/project-graph/file-utils");
|
|
7
9
|
function ensureGlobalProjectGraph(ruleName) {
|
|
8
10
|
/**
|
|
9
11
|
* Only reuse graph when running from terminal
|
|
10
12
|
* Enforce every IDE change to get a fresh nxdeps.json
|
|
11
13
|
*/
|
|
12
|
-
if (!global.projectGraph ||
|
|
13
|
-
|
|
14
|
+
if (!global.projectGraph ||
|
|
15
|
+
!global.projectRootMappings ||
|
|
16
|
+
!(0, runtime_lint_utils_1.isTerminalRun)()) {
|
|
17
|
+
const nxJson = (0, file_utils_1.readNxJson)();
|
|
14
18
|
global.workspaceLayout = nxJson.workspaceLayout;
|
|
15
19
|
/**
|
|
16
20
|
* Because there are a number of ways in which the rule can be invoked (executor vs ESLint CLI vs IDE Plugin),
|
|
17
21
|
* the ProjectGraph may or may not exist by the time the lint rule is invoked for the first time.
|
|
18
22
|
*/
|
|
19
23
|
try {
|
|
20
|
-
global.projectGraph = (0,
|
|
24
|
+
global.projectGraph = (0, devkit_1.readCachedProjectGraph)();
|
|
25
|
+
global.projectRootMappings = (0, find_project_for_path_1.createProjectRootMappings)(global.projectGraph.nodes);
|
|
21
26
|
}
|
|
22
27
|
catch (_a) {
|
|
23
28
|
const WARNING_PREFIX = `${chalk.reset.keyword('orange')('warning')}`;
|
|
@@ -32,7 +37,10 @@ function ensureGlobalProjectGraph(ruleName) {
|
|
|
32
37
|
exports.ensureGlobalProjectGraph = ensureGlobalProjectGraph;
|
|
33
38
|
function readProjectGraph(ruleName) {
|
|
34
39
|
ensureGlobalProjectGraph(ruleName);
|
|
35
|
-
return
|
|
40
|
+
return {
|
|
41
|
+
projectGraph: global.projectGraph,
|
|
42
|
+
projectRootMappings: global.projectRootMappings,
|
|
43
|
+
};
|
|
36
44
|
}
|
|
37
45
|
exports.readProjectGraph = readProjectGraph;
|
|
38
46
|
//# sourceMappingURL=project-graph-utils.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"project-graph-utils.js","sourceRoot":"","sources":["../../../../../packages/eslint-plugin-nx/src/utils/project-graph-utils.ts"],"names":[],"mappings":";;;AAAA,
|
|
1
|
+
{"version":3,"file":"project-graph-utils.js","sourceRoot":"","sources":["../../../../../packages/eslint-plugin-nx/src/utils/project-graph-utils.ts"],"names":[],"mappings":";;;AAAA,yCAAoE;AACpE,6DAAqD;AACrD,+BAA+B;AAC/B,4FAG0D;AAC1D,gEAA6D;AAE7D,SAAgB,wBAAwB,CAAC,QAAgB;IACvD;;;OAGG;IACH,IACE,CAAE,MAAc,CAAC,YAAY;QAC7B,CAAE,MAAc,CAAC,mBAAmB;QACpC,CAAC,IAAA,kCAAa,GAAE,EAChB;QACA,MAAM,MAAM,GAAG,IAAA,uBAAU,GAAE,CAAC;QAC3B,MAAc,CAAC,eAAe,GAAG,MAAM,CAAC,eAAe,CAAC;QAEzD;;;WAGG;QACH,IAAI;YACD,MAAc,CAAC,YAAY,GAAG,IAAA,+BAAsB,GAAE,CAAC;YACvD,MAAc,CAAC,mBAAmB,GAAG,IAAA,iDAAyB,EAC5D,MAAc,CAAC,YAAY,CAAC,KAAK,CACnC,CAAC;SACH;QAAC,WAAM;YACN,MAAM,cAAc,GAAG,GAAG,KAAK,CAAC,KAAK,CAAC,OAAO,CAAC,QAAQ,CAAC,CAAC,SAAS,CAAC,EAAE,CAAC;YACrE,MAAM,gBAAgB,GAAG,GAAG,KAAK,CAAC,KAAK,CAAC,GAAG,CAAC,YAAY,QAAQ,EAAE,CAAC,EAAE,CAAC;YACtE,OAAO,CAAC,MAAM;iBACX,KAAK,CAAC,GAAG,cAAc;;YAEpB,gBAAgB,IAAI,CAAC,CAAC;SAC7B;KACF;AACH,CAAC;AA/BD,4DA+BC;AAED,SAAgB,gBAAgB,CAAC,QAAgB;IAI/C,wBAAwB,CAAC,QAAQ,CAAC,CAAC;IACnC,OAAO;QACL,YAAY,EAAG,MAAc,CAAC,YAAY;QAC1C,mBAAmB,EAAG,MAAc,CAAC,mBAAmB;KACzD,CAAC;AACJ,CAAC;AATD,4CASC"}
|
|
@@ -0,0 +1,85 @@
|
|
|
1
|
+
import { ProjectGraph, ProjectGraphDependency, ProjectGraphExternalNode, ProjectGraphProjectNode } from '@nrwl/devkit';
|
|
2
|
+
import { TargetProjectLocator } from 'nx/src/utils/target-project-locator';
|
|
3
|
+
import { ProjectRootMappings } from 'nx/src/project-graph/utils/find-project-for-path';
|
|
4
|
+
export type Deps = {
|
|
5
|
+
[projectName: string]: ProjectGraphDependency[];
|
|
6
|
+
};
|
|
7
|
+
type SingleSourceTagConstraint = {
|
|
8
|
+
sourceTag: string;
|
|
9
|
+
onlyDependOnLibsWithTags?: string[];
|
|
10
|
+
notDependOnLibsWithTags?: string[];
|
|
11
|
+
allowedExternalImports?: string[];
|
|
12
|
+
bannedExternalImports?: string[];
|
|
13
|
+
};
|
|
14
|
+
type ComboSourceTagConstraint = {
|
|
15
|
+
allSourceTags: string[];
|
|
16
|
+
onlyDependOnLibsWithTags?: string[];
|
|
17
|
+
notDependOnLibsWithTags?: string[];
|
|
18
|
+
allowedExternalImports?: string[];
|
|
19
|
+
bannedExternalImports?: string[];
|
|
20
|
+
};
|
|
21
|
+
export type DepConstraint = SingleSourceTagConstraint | ComboSourceTagConstraint;
|
|
22
|
+
export declare function stringifyTags(tags: string[]): string;
|
|
23
|
+
export declare function hasNoneOfTheseTags(proj: ProjectGraphProjectNode, tags: string[]): boolean;
|
|
24
|
+
export declare function isComboDepConstraint(depConstraint: DepConstraint): depConstraint is ComboSourceTagConstraint;
|
|
25
|
+
/**
|
|
26
|
+
* Check if any of the given tags is included in the project
|
|
27
|
+
* @param proj ProjectGraphProjectNode
|
|
28
|
+
* @param tags
|
|
29
|
+
* @returns
|
|
30
|
+
*/
|
|
31
|
+
export declare function findDependenciesWithTags(targetProject: ProjectGraphProjectNode, tags: string[], graph: ProjectGraph): ProjectGraphProjectNode[][];
|
|
32
|
+
export declare function matchImportWithWildcard(allowableImport: string, extractedImport: string): boolean;
|
|
33
|
+
export declare function isRelative(s: string): boolean;
|
|
34
|
+
export declare function getTargetProjectBasedOnRelativeImport(imp: string, projectPath: string, projectGraph: ProjectGraph, projectRootMappings: ProjectRootMappings, sourceFilePath: string): ProjectGraphProjectNode | undefined;
|
|
35
|
+
export declare function findProject(projectGraph: ProjectGraph, projectRootMappings: ProjectRootMappings, sourceFilePath: string): ProjectGraphProjectNode;
|
|
36
|
+
export declare function isAbsoluteImportIntoAnotherProject(imp: string, workspaceLayout?: {
|
|
37
|
+
libsDir: string;
|
|
38
|
+
appsDir: string;
|
|
39
|
+
}): boolean;
|
|
40
|
+
export declare function findProjectUsingImport(projectGraph: ProjectGraph, targetProjectLocator: TargetProjectLocator, filePath: string, imp: string): ProjectGraphProjectNode | ProjectGraphExternalNode;
|
|
41
|
+
export declare function findConstraintsFor(depConstraints: DepConstraint[], sourceProject: ProjectGraphProjectNode): DepConstraint[];
|
|
42
|
+
export declare function onlyLoadChildren(graph: ProjectGraph, sourceProjectName: string, targetProjectName: string, visited: string[]): any;
|
|
43
|
+
export declare function getSourceFilePath(sourceFileName: string, projectPath: string): string;
|
|
44
|
+
export declare function hasBannedImport(source: ProjectGraphProjectNode, target: ProjectGraphExternalNode, depConstraints: DepConstraint[]): DepConstraint | undefined;
|
|
45
|
+
/**
|
|
46
|
+
* Find all unique (transitive) external dependencies of given project
|
|
47
|
+
* @param graph
|
|
48
|
+
* @param source
|
|
49
|
+
* @returns
|
|
50
|
+
*/
|
|
51
|
+
export declare function findTransitiveExternalDependencies(graph: ProjectGraph, source: ProjectGraphProjectNode): ProjectGraphDependency[];
|
|
52
|
+
/**
|
|
53
|
+
* Check if
|
|
54
|
+
* @param externalDependencies
|
|
55
|
+
* @param graph
|
|
56
|
+
* @param depConstraint
|
|
57
|
+
* @returns
|
|
58
|
+
*/
|
|
59
|
+
export declare function hasBannedDependencies(externalDependencies: ProjectGraphDependency[], graph: ProjectGraph, depConstraint: DepConstraint): Array<[ProjectGraphExternalNode, ProjectGraphProjectNode, DepConstraint]> | undefined;
|
|
60
|
+
export declare function isDirectDependency(source: ProjectGraphProjectNode, target: ProjectGraphExternalNode): boolean;
|
|
61
|
+
/**
|
|
62
|
+
* Verifies whether the given node has an architect builder attached
|
|
63
|
+
* @param projectGraph the node to verify
|
|
64
|
+
*/
|
|
65
|
+
export declare function hasBuildExecutor(projectGraph: ProjectGraphProjectNode): boolean;
|
|
66
|
+
export declare function isTerminalRun(): boolean;
|
|
67
|
+
/**
|
|
68
|
+
* Takes an array of imports and tries to group them, so rather than having
|
|
69
|
+
* `import { A } from './some-location'` and `import { B } from './some-location'` you get
|
|
70
|
+
* `import { A, B } from './some-location'`
|
|
71
|
+
* @param importsToRemap
|
|
72
|
+
* @returns
|
|
73
|
+
*/
|
|
74
|
+
export declare function groupImports(importsToRemap: {
|
|
75
|
+
member: string;
|
|
76
|
+
importPath: string;
|
|
77
|
+
}[]): string;
|
|
78
|
+
/**
|
|
79
|
+
* Checks if import points to a secondary entry point in Angular project
|
|
80
|
+
* @param targetProjectLocator
|
|
81
|
+
* @param importExpr
|
|
82
|
+
* @returns
|
|
83
|
+
*/
|
|
84
|
+
export declare function isAngularSecondaryEntrypoint(importExpr: string, filePath: string): boolean;
|
|
85
|
+
export {};
|
|
@@ -0,0 +1,329 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.isAngularSecondaryEntrypoint = exports.groupImports = exports.isTerminalRun = exports.hasBuildExecutor = exports.isDirectDependency = exports.hasBannedDependencies = exports.findTransitiveExternalDependencies = exports.hasBannedImport = exports.getSourceFilePath = exports.onlyLoadChildren = exports.findConstraintsFor = exports.findProjectUsingImport = exports.isAbsoluteImportIntoAnotherProject = exports.findProject = exports.getTargetProjectBasedOnRelativeImport = exports.isRelative = exports.matchImportWithWildcard = exports.findDependenciesWithTags = exports.isComboDepConstraint = exports.hasNoneOfTheseTags = exports.stringifyTags = void 0;
|
|
4
|
+
const path = require("path");
|
|
5
|
+
const path_1 = require("path");
|
|
6
|
+
const devkit_1 = require("@nrwl/devkit");
|
|
7
|
+
const graph_utils_1 = require("./graph-utils");
|
|
8
|
+
const fileutils_1 = require("nx/src/utils/fileutils");
|
|
9
|
+
const find_project_for_path_1 = require("nx/src/project-graph/utils/find-project-for-path");
|
|
10
|
+
const typescript_1 = require("nx/src/utils/typescript");
|
|
11
|
+
function stringifyTags(tags) {
|
|
12
|
+
return tags.map((t) => `"${t}"`).join(', ');
|
|
13
|
+
}
|
|
14
|
+
exports.stringifyTags = stringifyTags;
|
|
15
|
+
function hasNoneOfTheseTags(proj, tags) {
|
|
16
|
+
return tags.filter((tag) => hasTag(proj, tag)).length === 0;
|
|
17
|
+
}
|
|
18
|
+
exports.hasNoneOfTheseTags = hasNoneOfTheseTags;
|
|
19
|
+
function isComboDepConstraint(depConstraint) {
|
|
20
|
+
return !!depConstraint.allSourceTags;
|
|
21
|
+
}
|
|
22
|
+
exports.isComboDepConstraint = isComboDepConstraint;
|
|
23
|
+
/**
|
|
24
|
+
* Check if any of the given tags is included in the project
|
|
25
|
+
* @param proj ProjectGraphProjectNode
|
|
26
|
+
* @param tags
|
|
27
|
+
* @returns
|
|
28
|
+
*/
|
|
29
|
+
function findDependenciesWithTags(targetProject, tags, graph) {
|
|
30
|
+
// find all reachable projects that have one of the tags and
|
|
31
|
+
// are reacheable from the targetProject (including self)
|
|
32
|
+
const allReachableProjects = Object.keys(graph.nodes).filter((projectName) => (0, graph_utils_1.pathExists)(graph, targetProject.name, projectName) &&
|
|
33
|
+
tags.some((tag) => hasTag(graph.nodes[projectName], tag)));
|
|
34
|
+
// return path from targetProject to reachable project
|
|
35
|
+
return allReachableProjects.map((project) => targetProject.name === project
|
|
36
|
+
? [targetProject]
|
|
37
|
+
: (0, graph_utils_1.getPath)(graph, targetProject.name, project));
|
|
38
|
+
}
|
|
39
|
+
exports.findDependenciesWithTags = findDependenciesWithTags;
|
|
40
|
+
const regexMap = new Map();
|
|
41
|
+
function hasTag(proj, tag) {
|
|
42
|
+
if (tag === '*')
|
|
43
|
+
return true;
|
|
44
|
+
// if the tag is a regex, check if the project matches the regex
|
|
45
|
+
if (tag.startsWith('/') && tag.endsWith('/')) {
|
|
46
|
+
let regex;
|
|
47
|
+
if (regexMap.has(tag)) {
|
|
48
|
+
regex = regexMap.get(tag);
|
|
49
|
+
}
|
|
50
|
+
else {
|
|
51
|
+
regex = new RegExp(tag.substring(1, tag.length - 1));
|
|
52
|
+
regexMap.set(tag, regex);
|
|
53
|
+
}
|
|
54
|
+
return (proj.data.tags || []).some((t) => regex.test(t));
|
|
55
|
+
}
|
|
56
|
+
return (proj.data.tags || []).indexOf(tag) > -1;
|
|
57
|
+
}
|
|
58
|
+
function matchImportWithWildcard(
|
|
59
|
+
// This may or may not contain wildcards ("*")
|
|
60
|
+
allowableImport, extractedImport) {
|
|
61
|
+
if (allowableImport.endsWith('/**')) {
|
|
62
|
+
const prefix = allowableImport.substring(0, allowableImport.length - 2);
|
|
63
|
+
return extractedImport.startsWith(prefix);
|
|
64
|
+
}
|
|
65
|
+
else if (allowableImport.endsWith('/*')) {
|
|
66
|
+
const prefix = allowableImport.substring(0, allowableImport.length - 1);
|
|
67
|
+
if (!extractedImport.startsWith(prefix))
|
|
68
|
+
return false;
|
|
69
|
+
return extractedImport.substring(prefix.length).indexOf('/') === -1;
|
|
70
|
+
}
|
|
71
|
+
else if (allowableImport.indexOf('/**/') > -1) {
|
|
72
|
+
const [prefix, suffix] = allowableImport.split('/**/');
|
|
73
|
+
return (extractedImport.startsWith(prefix) && extractedImport.endsWith(suffix));
|
|
74
|
+
}
|
|
75
|
+
else {
|
|
76
|
+
return new RegExp(allowableImport).test(extractedImport);
|
|
77
|
+
}
|
|
78
|
+
}
|
|
79
|
+
exports.matchImportWithWildcard = matchImportWithWildcard;
|
|
80
|
+
function isRelative(s) {
|
|
81
|
+
return s.startsWith('.');
|
|
82
|
+
}
|
|
83
|
+
exports.isRelative = isRelative;
|
|
84
|
+
function getTargetProjectBasedOnRelativeImport(imp, projectPath, projectGraph, projectRootMappings, sourceFilePath) {
|
|
85
|
+
if (!isRelative(imp)) {
|
|
86
|
+
return undefined;
|
|
87
|
+
}
|
|
88
|
+
const sourceDir = path.join(projectPath, path.dirname(sourceFilePath));
|
|
89
|
+
const targetFile = (0, devkit_1.normalizePath)(path.resolve(sourceDir, imp)).substring(projectPath.length + 1);
|
|
90
|
+
return findProject(projectGraph, projectRootMappings, targetFile);
|
|
91
|
+
}
|
|
92
|
+
exports.getTargetProjectBasedOnRelativeImport = getTargetProjectBasedOnRelativeImport;
|
|
93
|
+
function findProject(projectGraph, projectRootMappings, sourceFilePath) {
|
|
94
|
+
return projectGraph.nodes[(0, find_project_for_path_1.findProjectForPath)(sourceFilePath, projectRootMappings)];
|
|
95
|
+
}
|
|
96
|
+
exports.findProject = findProject;
|
|
97
|
+
function isAbsoluteImportIntoAnotherProject(imp, workspaceLayout = { libsDir: 'libs', appsDir: 'apps' }) {
|
|
98
|
+
return (imp.startsWith(`${workspaceLayout.libsDir}/`) ||
|
|
99
|
+
imp.startsWith(`/${workspaceLayout.libsDir}/`) ||
|
|
100
|
+
imp.startsWith(`${workspaceLayout.appsDir}/`) ||
|
|
101
|
+
imp.startsWith(`/${workspaceLayout.appsDir}/`));
|
|
102
|
+
}
|
|
103
|
+
exports.isAbsoluteImportIntoAnotherProject = isAbsoluteImportIntoAnotherProject;
|
|
104
|
+
function findProjectUsingImport(projectGraph, targetProjectLocator, filePath, imp) {
|
|
105
|
+
var _a;
|
|
106
|
+
const target = targetProjectLocator.findProjectWithImport(imp, filePath);
|
|
107
|
+
return projectGraph.nodes[target] || ((_a = projectGraph.externalNodes) === null || _a === void 0 ? void 0 : _a[target]);
|
|
108
|
+
}
|
|
109
|
+
exports.findProjectUsingImport = findProjectUsingImport;
|
|
110
|
+
function findConstraintsFor(depConstraints, sourceProject) {
|
|
111
|
+
return depConstraints.filter((f) => {
|
|
112
|
+
if (isComboDepConstraint(f)) {
|
|
113
|
+
return f.allSourceTags.every((tag) => hasTag(sourceProject, tag));
|
|
114
|
+
}
|
|
115
|
+
else {
|
|
116
|
+
return hasTag(sourceProject, f.sourceTag);
|
|
117
|
+
}
|
|
118
|
+
});
|
|
119
|
+
}
|
|
120
|
+
exports.findConstraintsFor = findConstraintsFor;
|
|
121
|
+
function onlyLoadChildren(graph, sourceProjectName, targetProjectName, visited) {
|
|
122
|
+
if (visited.indexOf(sourceProjectName) > -1)
|
|
123
|
+
return false;
|
|
124
|
+
return ((graph.dependencies[sourceProjectName] || []).filter((d) => {
|
|
125
|
+
if (d.type !== devkit_1.DependencyType.dynamic)
|
|
126
|
+
return false;
|
|
127
|
+
if (d.target === targetProjectName)
|
|
128
|
+
return true;
|
|
129
|
+
return onlyLoadChildren(graph, d.target, targetProjectName, [
|
|
130
|
+
...visited,
|
|
131
|
+
sourceProjectName,
|
|
132
|
+
]);
|
|
133
|
+
}).length > 0);
|
|
134
|
+
}
|
|
135
|
+
exports.onlyLoadChildren = onlyLoadChildren;
|
|
136
|
+
function getSourceFilePath(sourceFileName, projectPath) {
|
|
137
|
+
const relativePath = sourceFileName.slice(projectPath.length + 1);
|
|
138
|
+
return (0, devkit_1.normalizePath)(relativePath);
|
|
139
|
+
}
|
|
140
|
+
exports.getSourceFilePath = getSourceFilePath;
|
|
141
|
+
/**
|
|
142
|
+
* Find constraint (if any) that explicitly banns the given target npm project
|
|
143
|
+
* @param externalProject
|
|
144
|
+
* @param depConstraints
|
|
145
|
+
* @returns
|
|
146
|
+
*/
|
|
147
|
+
function isConstraintBanningProject(externalProject, constraint) {
|
|
148
|
+
const { allowedExternalImports, bannedExternalImports } = constraint;
|
|
149
|
+
const { packageName } = externalProject.data;
|
|
150
|
+
/* Check if import is banned... */
|
|
151
|
+
if (bannedExternalImports === null || bannedExternalImports === void 0 ? void 0 : bannedExternalImports.some((importDefinition) => parseImportWildcards(importDefinition).test(packageName))) {
|
|
152
|
+
return true;
|
|
153
|
+
}
|
|
154
|
+
/* ... then check if there is a whitelist and if there is a match in the whitelist. */
|
|
155
|
+
return allowedExternalImports === null || allowedExternalImports === void 0 ? void 0 : allowedExternalImports.every((importDefinition) => !parseImportWildcards(importDefinition).test(packageName));
|
|
156
|
+
}
|
|
157
|
+
function hasBannedImport(source, target, depConstraints) {
|
|
158
|
+
// return those constraints that match source project
|
|
159
|
+
depConstraints = depConstraints.filter((c) => {
|
|
160
|
+
let tags = [];
|
|
161
|
+
if (isComboDepConstraint(c)) {
|
|
162
|
+
tags = c.allSourceTags;
|
|
163
|
+
}
|
|
164
|
+
else {
|
|
165
|
+
tags = [c.sourceTag];
|
|
166
|
+
}
|
|
167
|
+
return tags.every((t) => hasTag(source, t));
|
|
168
|
+
});
|
|
169
|
+
return depConstraints.find((constraint) => isConstraintBanningProject(target, constraint));
|
|
170
|
+
}
|
|
171
|
+
exports.hasBannedImport = hasBannedImport;
|
|
172
|
+
/**
|
|
173
|
+
* Find all unique (transitive) external dependencies of given project
|
|
174
|
+
* @param graph
|
|
175
|
+
* @param source
|
|
176
|
+
* @returns
|
|
177
|
+
*/
|
|
178
|
+
function findTransitiveExternalDependencies(graph, source) {
|
|
179
|
+
if (!graph.externalNodes) {
|
|
180
|
+
return [];
|
|
181
|
+
}
|
|
182
|
+
const allReachableProjects = [];
|
|
183
|
+
const allProjects = Object.keys(graph.nodes);
|
|
184
|
+
for (let i = 0; i < allProjects.length; i++) {
|
|
185
|
+
if ((0, graph_utils_1.pathExists)(graph, source.name, allProjects[i])) {
|
|
186
|
+
allReachableProjects.push(allProjects[i]);
|
|
187
|
+
}
|
|
188
|
+
}
|
|
189
|
+
const externalDependencies = [];
|
|
190
|
+
for (let i = 0; i < allReachableProjects.length; i++) {
|
|
191
|
+
const dependencies = graph.dependencies[allReachableProjects[i]];
|
|
192
|
+
if (dependencies) {
|
|
193
|
+
for (let d = 0; d < dependencies.length; d++) {
|
|
194
|
+
const dependency = dependencies[d];
|
|
195
|
+
if (graph.externalNodes[dependency.target]) {
|
|
196
|
+
externalDependencies.push(dependency);
|
|
197
|
+
}
|
|
198
|
+
}
|
|
199
|
+
}
|
|
200
|
+
}
|
|
201
|
+
return externalDependencies;
|
|
202
|
+
}
|
|
203
|
+
exports.findTransitiveExternalDependencies = findTransitiveExternalDependencies;
|
|
204
|
+
/**
|
|
205
|
+
* Check if
|
|
206
|
+
* @param externalDependencies
|
|
207
|
+
* @param graph
|
|
208
|
+
* @param depConstraint
|
|
209
|
+
* @returns
|
|
210
|
+
*/
|
|
211
|
+
function hasBannedDependencies(externalDependencies, graph, depConstraint) {
|
|
212
|
+
return externalDependencies
|
|
213
|
+
.filter((dependency) => isConstraintBanningProject(graph.externalNodes[dependency.target], depConstraint))
|
|
214
|
+
.map((dep) => [
|
|
215
|
+
graph.externalNodes[dep.target],
|
|
216
|
+
graph.nodes[dep.source],
|
|
217
|
+
depConstraint,
|
|
218
|
+
]);
|
|
219
|
+
}
|
|
220
|
+
exports.hasBannedDependencies = hasBannedDependencies;
|
|
221
|
+
function isDirectDependency(source, target) {
|
|
222
|
+
return (packageExistsInPackageJson(target.data.packageName, '.') ||
|
|
223
|
+
packageExistsInPackageJson(target.data.packageName, source.data.root));
|
|
224
|
+
}
|
|
225
|
+
exports.isDirectDependency = isDirectDependency;
|
|
226
|
+
function packageExistsInPackageJson(packageName, projectRoot) {
|
|
227
|
+
const content = (0, fileutils_1.readFileIfExisting)((0, path_1.join)(devkit_1.workspaceRoot, projectRoot, 'package.json'));
|
|
228
|
+
if (content) {
|
|
229
|
+
const { dependencies, devDependencies, peerDependencies } = (0, devkit_1.parseJson)(content);
|
|
230
|
+
if (dependencies && dependencies[packageName]) {
|
|
231
|
+
return true;
|
|
232
|
+
}
|
|
233
|
+
if (peerDependencies && peerDependencies[packageName]) {
|
|
234
|
+
return true;
|
|
235
|
+
}
|
|
236
|
+
if (devDependencies && devDependencies[packageName]) {
|
|
237
|
+
return true;
|
|
238
|
+
}
|
|
239
|
+
}
|
|
240
|
+
return false;
|
|
241
|
+
}
|
|
242
|
+
/**
|
|
243
|
+
* Maps import with wildcards to regex pattern
|
|
244
|
+
* @param importDefinition
|
|
245
|
+
* @returns
|
|
246
|
+
*/
|
|
247
|
+
function parseImportWildcards(importDefinition) {
|
|
248
|
+
// we replace all instances of `*`, `**..*` and `.*` with `.*`
|
|
249
|
+
const mappedWildcards = importDefinition.split(/(?:\.\*)|\*+/).join('.*');
|
|
250
|
+
return new RegExp(`^${new RegExp(mappedWildcards).source}$`);
|
|
251
|
+
}
|
|
252
|
+
/**
|
|
253
|
+
* Verifies whether the given node has an architect builder attached
|
|
254
|
+
* @param projectGraph the node to verify
|
|
255
|
+
*/
|
|
256
|
+
function hasBuildExecutor(projectGraph) {
|
|
257
|
+
return (
|
|
258
|
+
// can the architect not be defined? real use case?
|
|
259
|
+
projectGraph.data.targets &&
|
|
260
|
+
projectGraph.data.targets.build &&
|
|
261
|
+
projectGraph.data.targets.build.executor !== '');
|
|
262
|
+
}
|
|
263
|
+
exports.hasBuildExecutor = hasBuildExecutor;
|
|
264
|
+
const ESLINT_REGEX = /node_modules.*[\/\\]eslint$/;
|
|
265
|
+
const JEST_REGEX = /node_modules\/.bin\/jest$/; // when we run unit tests in jest
|
|
266
|
+
const NRWL_CLI_REGEX = /nx[\/\\]bin[\/\\]run-executor\.js$/;
|
|
267
|
+
function isTerminalRun() {
|
|
268
|
+
return (process.argv.length > 1 &&
|
|
269
|
+
(!!process.argv[1].match(NRWL_CLI_REGEX) ||
|
|
270
|
+
!!process.argv[1].match(JEST_REGEX) ||
|
|
271
|
+
!!process.argv[1].match(ESLINT_REGEX)));
|
|
272
|
+
}
|
|
273
|
+
exports.isTerminalRun = isTerminalRun;
|
|
274
|
+
/**
|
|
275
|
+
* Takes an array of imports and tries to group them, so rather than having
|
|
276
|
+
* `import { A } from './some-location'` and `import { B } from './some-location'` you get
|
|
277
|
+
* `import { A, B } from './some-location'`
|
|
278
|
+
* @param importsToRemap
|
|
279
|
+
* @returns
|
|
280
|
+
*/
|
|
281
|
+
function groupImports(importsToRemap) {
|
|
282
|
+
const importsToRemapGrouped = importsToRemap.reduce((acc, curr) => {
|
|
283
|
+
const existing = acc.find((i) => i.importPath === curr.importPath && i.member !== curr.member);
|
|
284
|
+
if (existing) {
|
|
285
|
+
if (existing.member) {
|
|
286
|
+
existing.member += `, ${curr.member}`;
|
|
287
|
+
}
|
|
288
|
+
}
|
|
289
|
+
else {
|
|
290
|
+
acc.push({
|
|
291
|
+
importPath: curr.importPath,
|
|
292
|
+
member: curr.member,
|
|
293
|
+
});
|
|
294
|
+
}
|
|
295
|
+
return acc;
|
|
296
|
+
}, []);
|
|
297
|
+
return importsToRemapGrouped
|
|
298
|
+
.map((entry) => `import { ${entry.member} } from '${entry.importPath}';`)
|
|
299
|
+
.join('\n');
|
|
300
|
+
}
|
|
301
|
+
exports.groupImports = groupImports;
|
|
302
|
+
/**
|
|
303
|
+
* Checks if import points to a secondary entry point in Angular project
|
|
304
|
+
* @param targetProjectLocator
|
|
305
|
+
* @param importExpr
|
|
306
|
+
* @returns
|
|
307
|
+
*/
|
|
308
|
+
function isAngularSecondaryEntrypoint(importExpr, filePath) {
|
|
309
|
+
const resolvedModule = (0, typescript_1.resolveModuleByImport)(importExpr, filePath, (0, path_1.join)(devkit_1.workspaceRoot, (0, typescript_1.getRootTsConfigFileName)()));
|
|
310
|
+
return !!resolvedModule && fileIsSecondaryEntryPoint(resolvedModule);
|
|
311
|
+
}
|
|
312
|
+
exports.isAngularSecondaryEntrypoint = isAngularSecondaryEntrypoint;
|
|
313
|
+
function fileIsSecondaryEntryPoint(file) {
|
|
314
|
+
var _a, _b;
|
|
315
|
+
let parent = (0, devkit_1.joinPathFragments)(file, '../');
|
|
316
|
+
while (parent !== './') {
|
|
317
|
+
// we need to find closest existing ng-package.json
|
|
318
|
+
// in order to determine if the file matches the secondary entry point
|
|
319
|
+
const ngPackageContent = (0, fileutils_1.readFileIfExisting)((0, devkit_1.joinPathFragments)(devkit_1.workspaceRoot, parent, 'ng-package.json'));
|
|
320
|
+
if (ngPackageContent) {
|
|
321
|
+
// https://github.com/ng-packagr/ng-packagr/blob/23c718d04eea85e015b4c261310b7bd0c39e5311/src/ng-package.schema.json#L54
|
|
322
|
+
const entryFile = (_b = (_a = (0, devkit_1.parseJson)(ngPackageContent)) === null || _a === void 0 ? void 0 : _a.lib) === null || _b === void 0 ? void 0 : _b.entryFile;
|
|
323
|
+
return entryFile && file === (0, devkit_1.joinPathFragments)(parent, entryFile);
|
|
324
|
+
}
|
|
325
|
+
parent = (0, devkit_1.joinPathFragments)(parent, '../');
|
|
326
|
+
}
|
|
327
|
+
return false;
|
|
328
|
+
}
|
|
329
|
+
//# sourceMappingURL=runtime-lint-utils.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"runtime-lint-utils.js","sourceRoot":"","sources":["../../../../../packages/eslint-plugin-nx/src/utils/runtime-lint-utils.ts"],"names":[],"mappings":"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"}
|