@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 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
- ## [14.8.8](https://github.com/nrwl/nx/compare/14.8.7...14.8.8) (2023-03-14)
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-2022 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.
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
- The `create-nx-workspace` command will ask you to select a preset, which will configure some plugins and create your applications to help you get started.
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 add-nx-to-monorepo@latest
51
+ npx nx@latest init
71
52
  ```
72
53
 
73
54
  ## Documentation & Resources
74
55
 
75
- A few links to help you get started:
76
-
77
- - [Nx.Dev: Documentation, Guides, Interactive Tutorials](https://nx.dev)
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.8.8",
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.8.8",
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": "26f7cfdf15ae9c7f90a79789d744b71612951ae4"
46
+ "gitHead": "b2a467bcb2bdc124ed52f3755780bca429a43855"
48
47
  }
@@ -1,4 +1,4 @@
1
1
  import type { TSESLint } from '@typescript-eslint/utils';
2
- declare type ESLintRules = Record<string, TSESLint.RuleModule<string, unknown[]>>;
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 '@nrwl/workspace/src/utils/runtime-lint-utils';
2
- declare type Options = [
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 declare type MessageIds = 'noRelativeOrAbsoluteImportsAcrossLibraries' | 'noSelfCircularDependencies' | 'noCircularDependencies' | 'noImportsOfApps' | 'noImportsOfE2e' | 'noImportOfNonBuildableLibraries' | 'noImportsOfLazyLoadedLibraries' | 'projectWithoutTagsCannotHaveDependencies' | 'bannedExternalImportsViolation' | 'nestedBannedExternalImportsViolation' | 'noTransitiveDependencies' | 'onlyTagsConstraintViolation' | 'notTagsConstraintViolation';
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("@nrwl/workspace/src/utilities/fileutils");
6
- const graph_utils_1 = require("@nrwl/workspace/src/utils/graph-utils");
7
- const runtime_lint_utils_1 = require("@nrwl/workspace/src/utils/runtime-lint-utils");
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
- sourceTag: { type: 'string' },
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.findSourceProject)(projectGraph, sourceFilePath);
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.findTargetProject)(projectGraph, imp);
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.map((s) => s.imported.name);
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)(targetProjectLocator, imp)) {
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.map((s) => s.imported.name);
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 && !(0, runtime_lint_utils_1.isDirectDependency)(targetProject)) {
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.sourceTag,
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.sourceTag,
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.sourceTag,
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.sourceTag,
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
- declare type Options = [
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 declare type MessageIds = 'missingRequiredSchema' | 'invalidSchemaPath' | 'missingImplementation' | 'invalidImplementationPath' | 'invalidImplementationModule' | 'unableToReadImplementationExports' | 'invalidVersion' | 'missingVersion' | 'noGeneratorsOrSchematicsFound' | 'noExecutorsOrBuildersFound' | 'valueShouldBeObject';
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("@nrwl/workspace/src/utils/runtime-lint-utils");
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.findSourceProject)(projectGraph, sourceFilePath);
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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"}
@@ -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<any>): {
8
+ export declare function getBarrelEntryPointProjectNode(projectNode: ProjectGraphProjectNode): {
9
9
  path: string;
10
10
  importScope: string;
11
11
  }[] | null;
@@ -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("@nrwl/workspace/src/utilities/typescript");
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)(devkit_3.workspaceRoot, 'tsconfig.base.json'));
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)('./', (0, path_1.dirname)(filePath), `${modulePath}.ts`);
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)('./', (0, path_1.dirname)(filePath), `${modulePath}/index.ts`);
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":"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"}
1
+ {"version":3,"file":"ast-utils.js","sourceRoot":"","sources":["../../../../../packages/eslint-plugin-nx/src/utils/ast-utils.ts"],"names":[],"mappings":"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"}
@@ -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 { MappedProjectGraph } from '@nrwl/workspace/src/utils/runtime-lint-utils';
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): MappedProjectGraph<any>;
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("@nrwl/workspace/src/utils/runtime-lint-utils");
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 || !(0, runtime_lint_utils_1.isTerminalRun)()) {
13
- const nxJson = (0, devkit_1.readNxJson)();
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, runtime_lint_utils_1.mapProjectGraphFiles)((0, devkit_1.readCachedProjectGraph)());
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 global.projectGraph;
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,yCAAkE;AAClE,qFAIsD;AACtD,+BAA+B;AAE/B,SAAgB,wBAAwB,CAAC,QAAgB;IACvD;;;OAGG;IACH,IAAI,CAAE,MAAc,CAAC,YAAY,IAAI,CAAC,IAAA,kCAAa,GAAE,EAAE;QACrD,MAAM,MAAM,GAAG,IAAA,mBAAU,GAAE,CAAC;QAC3B,MAAc,CAAC,eAAe,GAAG,MAAM,CAAC,eAAe,CAAC;QAEzD;;;WAGG;QACH,IAAI;YACD,MAAc,CAAC,YAAY,GAAG,IAAA,yCAAoB,EACjD,IAAA,+BAAsB,GAAE,CACzB,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;AA1BD,4DA0BC;AAED,SAAgB,gBAAgB,CAAC,QAAgB;IAC/C,wBAAwB,CAAC,QAAQ,CAAC,CAAC;IACnC,OAAQ,MAAc,CAAC,YAAkC,CAAC;AAC5D,CAAC;AAHD,4CAGC"}
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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"}