@ronas-it/nx-generators 0.11.1 → 0.12.0

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.
@@ -3,6 +3,7 @@ Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.libRenameGenerator = void 0;
4
4
  const tslib_1 = require("tslib");
5
5
  const child_process_1 = require("child_process");
6
+ const path = require("path");
6
7
  const utils_1 = require("../../shared/utils");
7
8
  function libRenameGenerator(tree, options) {
8
9
  return tslib_1.__awaiter(this, void 0, void 0, function* () {
@@ -14,7 +15,10 @@ function libRenameGenerator(tree, options) {
14
15
  libPathSegments.shift();
15
16
  libPathSegments.push(destLibraryName);
16
17
  const destLibraryPath = `libs/${libPathSegments.join('/')}`;
17
- (0, child_process_1.execSync)(`npx nx g mv --project=${currentLibraryName} --destination=${destLibraryPath}`, { stdio: 'inherit' });
18
+ const newLibImportPath = path.normalize(libPathSegments.join('/'));
19
+ const fullLibraryPath = `${(0, utils_1.getImportPathPrefix)(tree)}/${newLibImportPath}`;
20
+ const fullLibraryName = newLibImportPath.split('/').join('-');
21
+ (0, child_process_1.execSync)(`npx nx g mv --projectName=${currentLibraryName} --newProjectName=${fullLibraryName} --destination=${destLibraryPath} --importPath=${fullLibraryPath}`, { stdio: 'inherit' });
18
22
  });
19
23
  }
20
24
  exports.libRenameGenerator = libRenameGenerator;
@@ -1 +1 @@
1
- {"version":3,"file":"generator.js","sourceRoot":"","sources":["../../../../../plugin/src/generators/lib-rename/generator.ts"],"names":[],"mappings":";;;;AAAA,iDAAyC;AAEzC,8CAA0E;AAG1E,SAAsB,kBAAkB,CAAC,IAAU,EAAE,OAAiC;;QACpF,MAAM,EAAE,IAAI,EAAE,kBAAkB,EAAE,IAAI,EAAE,kBAAkB,EAAE,GAAG,MAAM,IAAA,+BAAuB,EAC1F,IAAI,EACJ,OAAO,CAAC,cAAc,CACvB,CAAC;QAEF,MAAM,eAAe,GAAG,kBAAkB,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;QACtD,MAAM,sBAAsB,GAAG,eAAe,CAAC,GAAG,EAAE,CAAC;QACrD,MAAM,eAAe,GACnB,OAAO,CAAC,UAAU,IAAI,CAAC,MAAM,IAAA,mBAAW,EAAC,4BAA4B,EAAE,sBAAsB,CAAC,CAAC,CAAC;QAElG,8BAA8B;QAC9B,eAAe,CAAC,KAAK,EAAE,CAAC;QACxB,eAAe,CAAC,IAAI,CAAC,eAAe,CAAC,CAAC;QAEtC,MAAM,eAAe,GAAG,QAAQ,eAAe,CAAC,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC;QAC5D,IAAA,wBAAQ,EAAC,yBAAyB,kBAAkB,kBAAkB,eAAe,EAAE,EAAE,EAAE,KAAK,EAAE,SAAS,EAAE,CAAC,CAAC;IACjH,CAAC;CAAA;AAjBD,gDAiBC;AAED,kBAAe,kBAAkB,CAAC"}
1
+ {"version":3,"file":"generator.js","sourceRoot":"","sources":["../../../../../plugin/src/generators/lib-rename/generator.ts"],"names":[],"mappings":";;;;AAAA,iDAAyC;AACzC,6BAA6B;AAE7B,8CAA+F;AAG/F,SAAsB,kBAAkB,CAAC,IAAU,EAAE,OAAiC;;QACpF,MAAM,EAAE,IAAI,EAAE,kBAAkB,EAAE,IAAI,EAAE,kBAAkB,EAAE,GAAG,MAAM,IAAA,+BAAuB,EAC1F,IAAI,EACJ,OAAO,CAAC,cAAc,CACvB,CAAC;QAEF,MAAM,eAAe,GAAG,kBAAkB,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;QACtD,MAAM,sBAAsB,GAAG,eAAe,CAAC,GAAG,EAAE,CAAC;QACrD,MAAM,eAAe,GACnB,OAAO,CAAC,UAAU,IAAI,CAAC,MAAM,IAAA,mBAAW,EAAC,4BAA4B,EAAE,sBAAsB,CAAC,CAAC,CAAC;QAElG,8BAA8B;QAC9B,eAAe,CAAC,KAAK,EAAE,CAAC;QACxB,eAAe,CAAC,IAAI,CAAC,eAAe,CAAC,CAAC;QAEtC,MAAM,eAAe,GAAG,QAAQ,eAAe,CAAC,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC;QAC5D,MAAM,gBAAgB,GAAG,IAAI,CAAC,SAAS,CAAC,eAAe,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC;QACnE,MAAM,eAAe,GAAG,GAAG,IAAA,2BAAmB,EAAC,IAAI,CAAC,IAAI,gBAAgB,EAAE,CAAC;QAC3E,MAAM,eAAe,GAAG,gBAAgB,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;QAE9D,IAAA,wBAAQ,EAAC,6BAA6B,kBAAkB,qBAAqB,eAAe,kBAAkB,eAAe,iBAAiB,eAAe,EAAE,EAAE,EAAE,KAAK,EAAE,SAAS,EAAE,CAAC,CAAC;IACzL,CAAC;CAAA;AArBD,gDAqBC;AAED,kBAAe,kBAAkB,CAAC"}
@@ -8,13 +8,7 @@ const lodash_1 = require("lodash");
8
8
  const utils_1 = require("../../shared/utils");
9
9
  const utils_2 = require("./utils");
10
10
  const context = {
11
- config: {},
12
- rules: [],
13
- log: console.log,
14
- reload: (tree) => {
15
- context.config = (0, utils_1.readESLintConfig)(tree).config;
16
- context.rules = (0, utils_1.getNxRules)(context.config);
17
- },
11
+ log: console.log
18
12
  };
19
13
  function libTagsGenerator(tree, options) {
20
14
  return tslib_1.__awaiter(this, void 0, void 0, function* () {
@@ -30,13 +24,12 @@ function libTagsGenerator(tree, options) {
30
24
  }
31
25
  // #1 Check eslint config nx-boundaries rule
32
26
  devkit_1.output.log({ title: devkit_1.output.bold('1. Checking eslint config nx-boundaries rule...') });
33
- context.config = (0, utils_1.verifyEsLintConfig)(tree);
34
- // #2 Check projects tags
35
- devkit_1.output.log({ title: devkit_1.output.bold('2. Checking projects tags...') });
27
+ (0, utils_1.verifyESLintConstraintsConfig)(tree);
28
+ // #2 Check project tags
29
+ devkit_1.output.log({ title: devkit_1.output.bold('Checking projects tags...') });
36
30
  const projects = (0, devkit_1.getProjects)(tree);
37
31
  const applications = [];
38
32
  const libraries = [];
39
- context.rules = (0, utils_1.getNxRules)(context.config);
40
33
  projects.forEach((project) => {
41
34
  if (project.projectType === 'application') {
42
35
  applications.push(project);
@@ -46,7 +39,6 @@ function libTagsGenerator(tree, options) {
46
39
  }
47
40
  });
48
41
  applications.forEach((application) => (0, utils_2.checkApplicationTags)(application, tree, context));
49
- context.reload(tree);
50
42
  libraries.forEach((library) => (0, utils_2.checkLibraryTags)(library, tree, context));
51
43
  yield (0, devkit_1.formatFiles)(tree);
52
44
  });
@@ -1 +1 @@
1
- {"version":3,"file":"generator.js","sourceRoot":"","sources":["../../../../../plugin/src/generators/lib-tags/generator.ts"],"names":[],"mappings":";;;;AAAA,iDAAyC;AACzC,uCAA0F;AAC1F,mCAA8B;AAC9B,8CAAmG;AAGnG,mCAAiE;AAEjE,MAAM,OAAO,GAAmB;IAC9B,MAAM,EAAE,EAAE;IACV,KAAK,EAAE,EAAE;IACT,GAAG,EAAE,OAAO,CAAC,GAAG;IAChB,MAAM,EAAE,CAAC,IAAU,EAAE,EAAE;QACrB,OAAO,CAAC,MAAM,GAAG,IAAA,wBAAgB,EAAC,IAAI,CAAC,CAAC,MAAM,CAAC;QAC/C,OAAO,CAAC,KAAK,GAAG,IAAA,kBAAU,EAAC,OAAO,CAAC,MAAM,CAAC,CAAC;IAC7C,CAAC;CACF,CAAC;AAEF,SAAsB,gBAAgB,CAAC,IAAU,EAAE,OAA+B;;QAChF,MAAM,kBAAkB,GAAG,CAAC,OAAO,CAAC,aAAa,IAAI,IAAA,wBAAQ,EAAC,eAAe,CAAC,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC;QAEhG,IAAI,kBAAkB,EAAE,CAAC;YACvB,MAAM,cAAc,GAClB,CAAC,MAAM,IAAA,mBAAW,EAAC,uEAAuE,CAAC,CAAC,KAAK,GAAG,CAAC;YAEvG,IAAI,CAAC,cAAc,EAAE,CAAC;gBACpB,OAAO;YACT,CAAC;QACH,CAAC;QAED,IAAI,OAAO,CAAC,MAAM,EAAE,CAAC;YACnB,OAAO,CAAC,GAAG,GAAG,aAAI,CAAC;QACrB,CAAC;QAED,4CAA4C;QAC5C,eAAM,CAAC,GAAG,CAAC,EAAE,KAAK,EAAE,eAAM,CAAC,IAAI,CAAC,iDAAiD,CAAC,EAAE,CAAC,CAAC;QACtF,OAAO,CAAC,MAAM,GAAG,IAAA,0BAAkB,EAAC,IAAI,CAAC,CAAC;QAE1C,yBAAyB;QACzB,eAAM,CAAC,GAAG,CAAC,EAAE,KAAK,EAAE,eAAM,CAAC,IAAI,CAAC,8BAA8B,CAAC,EAAE,CAAC,CAAC;QACnE,MAAM,QAAQ,GAAG,IAAA,oBAAW,EAAC,IAAI,CAAC,CAAC;QACnC,MAAM,YAAY,GAAgC,EAAE,CAAC;QACrD,MAAM,SAAS,GAAgC,EAAE,CAAC;QAElD,OAAO,CAAC,KAAK,GAAG,IAAA,kBAAU,EAAC,OAAO,CAAC,MAAM,CAAC,CAAC;QAE3C,QAAQ,CAAC,OAAO,CAAC,CAAC,OAAO,EAAE,EAAE;YAC3B,IAAI,OAAO,CAAC,WAAW,KAAK,aAAa,EAAE,CAAC;gBAC1C,YAAY,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;YAC7B,CAAC;YAED,IAAI,OAAO,CAAC,WAAW,KAAK,SAAS,IAAI,OAAO,CAAC,IAAI,CAAC,UAAU,CAAC,MAAM,CAAC,EAAE,CAAC;gBACzE,SAAS,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;YAC1B,CAAC;QACH,CAAC,CAAC,CAAC;QAEH,YAAY,CAAC,OAAO,CAAC,CAAC,WAAW,EAAE,EAAE,CAAC,IAAA,4BAAoB,EAAC,WAAW,EAAE,IAAI,EAAE,OAAO,CAAC,CAAC,CAAC;QAExF,OAAO,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC;QAErB,SAAS,CAAC,OAAO,CAAC,CAAC,OAAO,EAAE,EAAE,CAAC,IAAA,wBAAgB,EAAC,OAAO,EAAE,IAAI,EAAE,OAAO,CAAC,CAAC,CAAC;QAEzE,MAAM,IAAA,oBAAW,EAAC,IAAI,CAAC,CAAC;IAC1B,CAAC;CAAA;AA7CD,4CA6CC;AAED,kBAAe,gBAAgB,CAAC"}
1
+ {"version":3,"file":"generator.js","sourceRoot":"","sources":["../../../../../plugin/src/generators/lib-tags/generator.ts"],"names":[],"mappings":";;;;AAAA,iDAAyC;AACzC,uCAA0F;AAC1F,mCAA8B;AAC9B,8CAAgF;AAGhF,mCAAiE;AAEjE,MAAM,OAAO,GAAmB;IAC9B,GAAG,EAAE,OAAO,CAAC,GAAG;CACjB,CAAC;AAEF,SAAsB,gBAAgB,CAAC,IAAU,EAAE,OAA+B;;QAChF,MAAM,kBAAkB,GAAG,CAAC,OAAO,CAAC,aAAa,IAAI,IAAA,wBAAQ,EAAC,eAAe,CAAC,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC;QAEhG,IAAI,kBAAkB,EAAE,CAAC;YACvB,MAAM,cAAc,GAClB,CAAC,MAAM,IAAA,mBAAW,EAAC,uEAAuE,CAAC,CAAC,KAAK,GAAG,CAAC;YAEvG,IAAI,CAAC,cAAc,EAAE,CAAC;gBACpB,OAAO;YACT,CAAC;QACH,CAAC;QAED,IAAI,OAAO,CAAC,MAAM,EAAE,CAAC;YACnB,OAAO,CAAC,GAAG,GAAG,aAAI,CAAC;QACrB,CAAC;QAED,4CAA4C;QAC5C,eAAM,CAAC,GAAG,CAAC,EAAE,KAAK,EAAE,eAAM,CAAC,IAAI,CAAC,iDAAiD,CAAC,EAAE,CAAC,CAAC;QACtF,IAAA,qCAA6B,EAAC,IAAI,CAAC,CAAC;QAEpC,wBAAwB;QACxB,eAAM,CAAC,GAAG,CAAC,EAAE,KAAK,EAAE,eAAM,CAAC,IAAI,CAAC,2BAA2B,CAAC,EAAE,CAAC,CAAC;QAEhE,MAAM,QAAQ,GAAG,IAAA,oBAAW,EAAC,IAAI,CAAC,CAAC;QACnC,MAAM,YAAY,GAAgC,EAAE,CAAC;QACrD,MAAM,SAAS,GAAgC,EAAE,CAAC;QAElD,QAAQ,CAAC,OAAO,CAAC,CAAC,OAAO,EAAE,EAAE;YAC3B,IAAI,OAAO,CAAC,WAAW,KAAK,aAAa,EAAE,CAAC;gBAC1C,YAAY,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;YAC7B,CAAC;YAED,IAAI,OAAO,CAAC,WAAW,KAAK,SAAS,IAAI,OAAO,CAAC,IAAI,CAAC,UAAU,CAAC,MAAM,CAAC,EAAE,CAAC;gBACzE,SAAS,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;YAC1B,CAAC;QACH,CAAC,CAAC,CAAC;QAEH,YAAY,CAAC,OAAO,CAAC,CAAC,WAAW,EAAE,EAAE,CAAC,IAAA,4BAAoB,EAAC,WAAW,EAAE,IAAI,EAAE,OAAO,CAAC,CAAC,CAAC;QACxF,SAAS,CAAC,OAAO,CAAC,CAAC,OAAO,EAAE,EAAE,CAAC,IAAA,wBAAgB,EAAC,OAAO,EAAE,IAAI,EAAE,OAAO,CAAC,CAAC,CAAC;QAEzE,MAAM,IAAA,oBAAW,EAAC,IAAI,CAAC,CAAC;IAC1B,CAAC;CAAA;AAzCD,4CAyCC;AAED,kBAAe,gBAAgB,CAAC"}
@@ -1,8 +1,3 @@
1
- import { Tree } from '@nx/devkit';
2
- import { Constraint } from '../../../shared/utils';
3
1
  export interface LibTagsContext {
4
- config: Record<string, any>;
5
- rules: Array<Constraint>;
6
2
  log: (message: any, ...optionalParams: Array<any>) => void;
7
- reload: (tree: Tree) => void;
8
3
  }
@@ -20,7 +20,7 @@ const verifyLibraryTag = ({ project, tree, tag, tagType, context, ruleNotFoundCa
20
20
  throw new Error(`Missing ${tagType} tag rule for ${tag}. Please add it to the ESLint config file.`);
21
21
  };
22
22
  if (tag) {
23
- const tagRule = context.rules.find((rule) => rule.sourceTag === tag);
23
+ const tagRule = (0, utils_1.readConstraints)(tree).find((rule) => rule.sourceTag === tag);
24
24
  if (!tagRule) {
25
25
  const callback = ruleNotFoundCallback || defaultRuleNotFoundCallback;
26
26
  callback();
@@ -35,7 +35,6 @@ const verifyLibraryTag = ({ project, tree, tag, tagType, context, ruleNotFoundCa
35
35
  (0, devkit_1.updateProjectConfiguration)(tree, project.name, project);
36
36
  if (tagType === 'scope') {
37
37
  (0, utils_1.addNxScopeTag)(tree, tagFromLibPath);
38
- context.reload(tree);
39
38
  }
40
39
  verifyLibraryTag({
41
40
  project,
@@ -51,15 +50,14 @@ const verifyLibraryTag = ({ project, tree, tag, tagType, context, ruleNotFoundCa
51
50
  project = (0, devkit_1.readProjectConfiguration)(tree, project.name);
52
51
  const tag = getTagFromLibPath(project.root, tagType);
53
52
  if (tagType === 'type') {
54
- const typeTagRule = context.rules.find((rule) => rule.sourceTag === `type:${tag}`);
53
+ const typeTagRule = (0, utils_1.readConstraints)(tree).find((rule) => rule.sourceTag === `type:${tag}`);
55
54
  if (!typeTagRule) {
56
- throw new Error(`Missing type tag rule for ${tag}. Please add it to the ESLint config file.`);
55
+ throw new Error(`Missing type tag rule for ${tag}. Please add it to the ESLint constraints config file.`);
57
56
  }
58
57
  }
59
58
  (0, devkit_1.updateProjectConfiguration)(tree, project.name, Object.assign(Object.assign({}, project), { tags: [...(project.tags || []), `${tagType}:${tag}`] }));
60
59
  if (tagType === 'scope') {
61
60
  (0, utils_1.addNxScopeTag)(tree, tag);
62
- context.reload(tree);
63
61
  }
64
62
  }
65
63
  };
@@ -68,11 +66,10 @@ const checkApplicationTags = (project, tree, context) => {
68
66
  const appTag = tags === null || tags === void 0 ? void 0 : tags.find((tag) => tag.startsWith('app:'));
69
67
  const hasTypeTag = tags === null || tags === void 0 ? void 0 : tags.includes('type:app');
70
68
  if (appTag) {
71
- const appTagRule = context.rules.find((rule) => rule.sourceTag === appTag);
69
+ const appTagRule = (0, utils_1.readConstraints)(tree).find((rule) => rule.sourceTag === appTag);
72
70
  if (!appTagRule) {
73
71
  context.log(`Missing app tag rule for ${appTag}. Adding...\n`);
74
72
  (0, utils_1.addNxAppTag)(tree, appTag.replace('app:', ''));
75
- context.reload(tree);
76
73
  }
77
74
  }
78
75
  else {
@@ -80,7 +77,6 @@ const checkApplicationTags = (project, tree, context) => {
80
77
  const projectAppTag = project.root.split('/').pop();
81
78
  (0, devkit_1.updateProjectConfiguration)(tree, project.name, Object.assign(Object.assign({}, project), { tags: [...(project.tags || []), `app:${projectAppTag}`] }));
82
79
  (0, utils_1.addNxAppTag)(tree, projectAppTag);
83
- context.reload(tree);
84
80
  }
85
81
  if (!hasTypeTag) {
86
82
  context.log(`Missing type tag for ${project.name}. Adding...`);
@@ -104,7 +100,6 @@ const checkLibraryTags = (project, tree, context) => {
104
100
  ruleNotFoundCallback: () => {
105
101
  context.log(`Missing scope tag rule for ${scopeTag}. Adding...`);
106
102
  (0, utils_1.addNxScopeTag)(tree, scopeTag === null || scopeTag === void 0 ? void 0 : scopeTag.replace('scope:', ''));
107
- context.reload(tree);
108
103
  },
109
104
  });
110
105
  verifyLibraryTag({ project, tree, tag: typeTag, tagType: 'type', context });
@@ -1 +1 @@
1
- {"version":3,"file":"check-lib-tags.js","sourceRoot":"","sources":["../../../../../../plugin/src/generators/lib-tags/utils/check-lib-tags.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"check-lib-tags.js","sourceRoot":"","sources":["../../../../../../plugin/src/generators/lib-tags/utils/check-lib-tags.ts"],"names":[],"mappings":"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"}
@@ -1,42 +1,30 @@
1
- {
2
- "files": ["*.ts", "*.tsx", "*.js", "*.jsx"],
3
- "rules": {
4
- "@nx/enforce-module-boundaries": [
5
- "error",
6
- {
7
- "enforceBuildableLibDependency": true,
8
- "allow": [],
9
- "depConstraints": [
10
- {
11
- "sourceTag": "app:shared",
12
- "onlyDependOnLibsWithTags": ["app:shared"]
13
- },
14
- {
15
- "sourceTag": "scope:shared",
16
- "onlyDependOnLibsWithTags": ["scope:*"]
17
- },
18
- {
19
- "sourceTag": "type:app",
20
- "onlyDependOnLibsWithTags": ["type:features", "type:ui", "type:utils", "type:data-access"]
21
- },
22
- {
23
- "sourceTag": "type:utils",
24
- "onlyDependOnLibsWithTags": ["type:utils"]
25
- },
26
- {
27
- "sourceTag": "type:data-access",
28
- "onlyDependOnLibsWithTags": ["type:data-access", "type:utils"]
29
- },
30
- {
31
- "sourceTag": "type:features",
32
- "onlyDependOnLibsWithTags": ["type:features", "type:data-access", "type:ui", "type:utils"]
33
- },
34
- {
35
- "sourceTag": "type:ui",
36
- "onlyDependOnLibsWithTags": ["type:ui", "type:utils"]
37
- }
38
- ]
39
- }
40
- ]
1
+ [
2
+ {
3
+ "sourceTag": "app:shared",
4
+ "onlyDependOnLibsWithTags": ["app:shared"]
5
+ },
6
+ {
7
+ "sourceTag": "scope:shared",
8
+ "onlyDependOnLibsWithTags": ["scope:*"]
9
+ },
10
+ {
11
+ "sourceTag": "type:app",
12
+ "onlyDependOnLibsWithTags": ["type:features", "type:ui", "type:utils", "type:data-access"]
13
+ },
14
+ {
15
+ "sourceTag": "type:utils",
16
+ "onlyDependOnLibsWithTags": ["type:utils"]
17
+ },
18
+ {
19
+ "sourceTag": "type:data-access",
20
+ "onlyDependOnLibsWithTags": ["type:data-access", "type:utils"]
21
+ },
22
+ {
23
+ "sourceTag": "type:features",
24
+ "onlyDependOnLibsWithTags": ["type:features", "type:data-access", "type:ui", "type:utils"]
25
+ },
26
+ {
27
+ "sourceTag": "type:ui",
28
+ "onlyDependOnLibsWithTags": ["type:ui", "type:utils"]
41
29
  }
42
- }
30
+ ]
@@ -3,17 +3,9 @@ export interface Constraint {
3
3
  sourceTag: string;
4
4
  onlyDependOnLibsWithTags: Array<string>;
5
5
  }
6
- export declare const getNxRulesEntryOrThrowError: (config: Record<string, any>) => {
7
- files: Array<string>;
8
- rules: Record<string, any>;
9
- };
10
- export declare const getNxRulesStatus: (config: Record<string, any>) => string;
11
- export declare const getNxRules: (config: Record<string, any>) => Array<Constraint>;
12
- export declare const readESLintConfig: (tree: Tree) => {
13
- config: Record<string, any>;
14
- path: string;
15
- };
6
+ export declare const readConstraints: (tree: Tree) => Array<Constraint>;
7
+ export declare const writeConstraints: (tree: Tree, constraints: Array<Constraint>) => void;
16
8
  export declare const addNxAppTag: (tree: Tree, appDirectory: string) => void;
17
9
  export declare const addNxScopeTag: (tree: Tree, scope: string) => void;
18
10
  export declare const getImportPathPrefix: (tree: Tree) => string;
19
- export declare const verifyEsLintConfig: (tree: Tree) => Record<string, any>;
11
+ export declare const verifyESLintConstraintsConfig: (tree: Tree) => void;
@@ -1,57 +1,26 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.verifyEsLintConfig = exports.getImportPathPrefix = exports.addNxScopeTag = exports.addNxAppTag = exports.readESLintConfig = exports.getNxRules = exports.getNxRulesStatus = exports.getNxRulesEntryOrThrowError = void 0;
3
+ exports.verifyESLintConstraintsConfig = exports.getImportPathPrefix = exports.addNxScopeTag = exports.addNxAppTag = exports.writeConstraints = exports.readConstraints = void 0;
4
4
  const devkit_1 = require("@nx/devkit");
5
- const lodash_1 = require("lodash");
6
- const defaultEsLintConfigPath = '.eslintrc.json';
7
- const getNxRulesEntry = (config) => { var _a; return (_a = config.overrides) === null || _a === void 0 ? void 0 : _a.find((entry) => !!entry.rules['@nx/enforce-module-boundaries']); };
8
- const getNxRulesEntryOrThrowError = (config) => {
9
- if (!config) {
10
- throw new Error('ESLint config not found');
5
+ const constraintsConfigPath = 'eslint.constraints.json';
6
+ const readConstraints = (tree) => {
7
+ if (!tree.exists(constraintsConfigPath)) {
8
+ throw new Error(`ESLint constraints config not found: ${constraintsConfigPath}`);
11
9
  }
12
- const entryWithRules = getNxRulesEntry(config);
13
- if (!entryWithRules) {
14
- throw new Error(`ESLint: can't find '@nx/enforce-module-boundaries' rule`);
15
- }
16
- return entryWithRules;
17
- };
18
- exports.getNxRulesEntryOrThrowError = getNxRulesEntryOrThrowError;
19
- const getNxRulesStatus = (config) => {
20
- return (0, exports.getNxRulesEntryOrThrowError)(config).rules['@nx/enforce-module-boundaries'][0];
21
- };
22
- exports.getNxRulesStatus = getNxRulesStatus;
23
- const getNxRules = (config) => {
24
- return (0, exports.getNxRulesEntryOrThrowError)(config).rules['@nx/enforce-module-boundaries'][1].depConstraints;
10
+ const config = (0, devkit_1.readJson)(tree, constraintsConfigPath);
11
+ return config;
25
12
  };
26
- exports.getNxRules = getNxRules;
27
- const readESLintConfig = (tree) => {
28
- var _a;
29
- let path = defaultEsLintConfigPath;
30
- const checkConfigExists = (path) => {
31
- if (!tree.exists(path)) {
32
- throw new Error(`ESLint config not found: ${path}`);
33
- }
34
- };
35
- checkConfigExists(path);
36
- let config = (0, devkit_1.readJson)(tree, path);
37
- if (getNxRulesEntry(config)) {
38
- return { config, path };
39
- }
40
- if ((_a = config.extends) === null || _a === void 0 ? void 0 : _a.length) {
41
- path = config.extends[0];
42
- checkConfigExists(path);
43
- config = (0, devkit_1.readJson)(tree, config.extends[0]);
44
- }
45
- return { config, path };
13
+ exports.readConstraints = readConstraints;
14
+ const writeConstraints = (tree, constraints) => {
15
+ (0, devkit_1.writeJson)(tree, constraintsConfigPath, constraints);
46
16
  };
47
- exports.readESLintConfig = readESLintConfig;
17
+ exports.writeConstraints = writeConstraints;
48
18
  const getNpmScope = (tree) => {
49
19
  const { name } = tree.exists('package.json') ? (0, devkit_1.readJson)(tree, 'package.json') : { name: null };
50
20
  return (name === null || name === void 0 ? void 0 : name.startsWith('@')) ? name.split('/')[0].substring(1) : undefined;
51
21
  };
52
22
  const addNxAppTag = (tree, appDirectory) => {
53
- const { config, path } = (0, exports.readESLintConfig)(tree);
54
- const constraints = (0, exports.getNxRules)(config);
23
+ const constraints = (0, exports.readConstraints)(tree);
55
24
  const doesTagExist = !!constraints.find((constraint) => constraint.sourceTag === `app:${appDirectory}`);
56
25
  if (doesTagExist) {
57
26
  return;
@@ -60,18 +29,17 @@ const addNxAppTag = (tree, appDirectory) => {
60
29
  sourceTag: `app:${appDirectory}`,
61
30
  onlyDependOnLibsWithTags: [`app:${appDirectory}`, 'app:shared'],
62
31
  });
63
- (0, devkit_1.writeJson)(tree, path, config);
32
+ (0, exports.writeConstraints)(tree, constraints);
64
33
  };
65
34
  exports.addNxAppTag = addNxAppTag;
66
35
  const addNxScopeTag = (tree, scope) => {
67
- const { config, path } = (0, exports.readESLintConfig)(tree);
68
- const constraints = (0, exports.getNxRules)(config);
36
+ const constraints = (0, exports.readConstraints)(tree);
69
37
  const doesTagExist = !!constraints.find((constraint) => constraint.sourceTag === `scope:${scope}`);
70
38
  if (doesTagExist) {
71
39
  return;
72
40
  }
73
41
  constraints.push({ sourceTag: `scope:${scope}`, onlyDependOnLibsWithTags: [`scope:${scope}`, 'scope:shared'] });
74
- (0, devkit_1.writeJson)(tree, path, config);
42
+ (0, exports.writeConstraints)(tree, constraints);
75
43
  };
76
44
  exports.addNxScopeTag = addNxScopeTag;
77
45
  const getImportPathPrefix = (tree) => {
@@ -79,8 +47,41 @@ const getImportPathPrefix = (tree) => {
79
47
  return npmScope ? `${npmScope === '@' ? '' : '@'}${npmScope}` : '';
80
48
  };
81
49
  exports.getImportPathPrefix = getImportPathPrefix;
82
- const verifyEsLintConfig = (tree) => {
83
- const { config, path } = (0, exports.readESLintConfig)(tree);
50
+ const verifyESLintConstraintsConfig = (tree) => {
51
+ let constraints = [];
52
+ try {
53
+ constraints = (0, exports.readConstraints)(tree);
54
+ }
55
+ catch (_a) {
56
+ devkit_1.output.warn({ title: devkit_1.output.bold('ESLint constraints config not found. Generating default rules...') });
57
+ const defaultConstraints = require('../templates/config-template.json');
58
+ (0, exports.writeConstraints)(tree, defaultConstraints);
59
+ devkit_1.output.note({
60
+ title: 'Configure NX boundaries',
61
+ bodyLines: [
62
+ 'To complete setup add the following changes in your ESLint config (eslint.config.cjs):',
63
+ '```',
64
+ devkit_1.output.bold(`const constraints = require('./eslint.constraints.json');`),
65
+ '```',
66
+ 'module.exports = [',
67
+ '```',
68
+ ` {
69
+ files: ['**/*.ts', '**/*.tsx', '**/*.js', '**/*.jsx'],
70
+ rules: {
71
+ '@nx/enforce-module-boundaries': [
72
+ 'error',
73
+ {
74
+ enforceBuildableLibDependency: true,
75
+ allow: [],
76
+ depConstraints: ${devkit_1.output.bold('constraints')},
77
+ },
78
+ ],
79
+ },
80
+ },`,
81
+ '```'
82
+ ]
83
+ });
84
+ }
84
85
  const importantTags = [
85
86
  'app:shared',
86
87
  'scope:shared',
@@ -90,35 +91,13 @@ const verifyEsLintConfig = (tree) => {
90
91
  'type:ui',
91
92
  'type:utils',
92
93
  ];
93
- if (!config || (0, lodash_1.isEmpty)(config)) {
94
- throw new Error(`Failed to load ESLint config: ${path}`);
95
- }
96
- try {
97
- const rulesEntry = (0, exports.getNxRulesEntryOrThrowError)(config).rules['@nx/enforce-module-boundaries'];
98
- const tags = rulesEntry[1].depConstraints.map((rule) => rule.sourceTag);
99
- const areRulesDisabled = rulesEntry[1].depConstraints.find((rule) => rule.sourceTag === '*' && rule.onlyDependOnLibsWithTags.includes('*'));
100
- const areRulesBroken = !importantTags.every((tag) => tags.includes(tag));
101
- if (rulesEntry[0] !== 'error') {
102
- rulesEntry[0] = 'error';
103
- }
104
- if (areRulesDisabled || areRulesBroken) {
105
- // eslint-disable-next-line @typescript-eslint/no-var-requires
106
- const esLintConfigTemplate = require('../templates/config-template.json');
107
- const templateRules = esLintConfigTemplate.rules['@nx/enforce-module-boundaries'];
108
- rulesEntry[0] = templateRules[0];
109
- rulesEntry[1] = templateRules[1];
110
- (0, devkit_1.writeJson)(tree, path, config);
111
- }
112
- // TODO: use custom errors
94
+ const tags = constraints.map((rule) => rule.sourceTag);
95
+ const areRulesBroken = !importantTags.every((tag) => tags.includes(tag));
96
+ if (areRulesBroken) {
97
+ const defaultConstraints = require('../templates/config-template.json');
98
+ (0, exports.writeConstraints)(tree, defaultConstraints);
99
+ devkit_1.output.warn({ title: devkit_1.output.bold('ESLint constraints config is incorrect. Restoring default rules...') });
113
100
  }
114
- catch (_a) {
115
- devkit_1.output.warn({ title: devkit_1.output.bold('ESLint config has no @nx/enforce-module-boundaries rule. Updating rules...') });
116
- // eslint-disable-next-line @typescript-eslint/no-var-requires
117
- const esLintConfigRulesTemplate = require('../templates/config-template.json');
118
- config.overrides.push(esLintConfigRulesTemplate);
119
- (0, devkit_1.writeJson)(tree, path, config);
120
- }
121
- return config;
122
101
  };
123
- exports.verifyEsLintConfig = verifyEsLintConfig;
102
+ exports.verifyESLintConstraintsConfig = verifyESLintConstraintsConfig;
124
103
  //# sourceMappingURL=config-utils.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"config-utils.js","sourceRoot":"","sources":["../../../../../plugin/src/shared/utils/config-utils.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"config-utils.js","sourceRoot":"","sources":["../../../../../plugin/src/shared/utils/config-utils.ts"],"names":[],"mappings":";;;AAAA,uCAA+D;AAE/D,MAAM,qBAAqB,GAAG,yBAAyB,CAAC;AAOjD,MAAM,eAAe,GAAG,CAAC,IAAU,EAAqB,EAAE;IAC/D,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC,qBAAqB,CAAC,EAAE,CAAC;QACxC,MAAM,IAAI,KAAK,CAAC,wCAAwC,qBAAqB,EAAE,CAAC,CAAC;IACnF,CAAC;IAED,MAAM,MAAM,GAAG,IAAA,iBAAQ,EAAC,IAAI,EAAE,qBAAqB,CAAC,CAAC;IAErD,OAAO,MAA2B,CAAC;AACrC,CAAC,CAAC;AARW,QAAA,eAAe,mBAQ1B;AAEK,MAAM,gBAAgB,GAAG,CAAC,IAAU,EAAE,WAA8B,EAAQ,EAAE;IACnF,IAAA,kBAAS,EAAC,IAAI,EAAE,qBAAqB,EAAE,WAAW,CAAC,CAAC;AACtD,CAAC,CAAC;AAFW,QAAA,gBAAgB,oBAE3B;AAEF,MAAM,WAAW,GAAG,CAAC,IAAU,EAAsB,EAAE;IACrD,MAAM,EAAE,IAAI,EAAE,GAAG,IAAI,CAAC,MAAM,CAAC,cAAc,CAAC,CAAC,CAAC,CAAC,IAAA,iBAAQ,EAAoB,IAAI,EAAE,cAAc,CAAC,CAAC,CAAC,CAAC,EAAE,IAAI,EAAE,IAAI,EAAE,CAAC;IAElH,OAAO,CAAA,IAAI,aAAJ,IAAI,uBAAJ,IAAI,CAAE,UAAU,CAAC,GAAG,CAAC,EAAC,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC;AAC7E,CAAC,CAAC;AAEK,MAAM,WAAW,GAAG,CAAC,IAAU,EAAE,YAAoB,EAAQ,EAAE;IACpE,MAAM,WAAW,GAAG,IAAA,uBAAe,EAAC,IAAI,CAAC,CAAC;IAC1C,MAAM,YAAY,GAAG,CAAC,CAAC,WAAW,CAAC,IAAI,CAAC,CAAC,UAAU,EAAE,EAAE,CAAC,UAAU,CAAC,SAAS,KAAK,OAAO,YAAY,EAAE,CAAC,CAAC;IAExG,IAAI,YAAY,EAAE,CAAC;QACjB,OAAO;IACT,CAAC;IAED,WAAW,CAAC,IAAI,CAAC;QACf,SAAS,EAAE,OAAO,YAAY,EAAE;QAChC,wBAAwB,EAAE,CAAC,OAAO,YAAY,EAAE,EAAE,YAAY,CAAC;KAChE,CAAC,CAAC;IAEH,IAAA,wBAAgB,EAAC,IAAI,EAAE,WAAW,CAAC,CAAC;AACtC,CAAC,CAAC;AAdW,QAAA,WAAW,eActB;AAEK,MAAM,aAAa,GAAG,CAAC,IAAU,EAAE,KAAa,EAAQ,EAAE;IAC/D,MAAM,WAAW,GAAG,IAAA,uBAAe,EAAC,IAAI,CAAC,CAAC;IAC1C,MAAM,YAAY,GAAG,CAAC,CAAC,WAAW,CAAC,IAAI,CAAC,CAAC,UAAU,EAAE,EAAE,CAAC,UAAU,CAAC,SAAS,KAAK,SAAS,KAAK,EAAE,CAAC,CAAC;IAEnG,IAAI,YAAY,EAAE,CAAC;QACjB,OAAO;IACT,CAAC;IAED,WAAW,CAAC,IAAI,CAAC,EAAE,SAAS,EAAE,SAAS,KAAK,EAAE,EAAE,wBAAwB,EAAE,CAAC,SAAS,KAAK,EAAE,EAAE,cAAc,CAAC,EAAE,CAAC,CAAC;IAEhH,IAAA,wBAAgB,EAAC,IAAI,EAAE,WAAW,CAAC,CAAC;AACtC,CAAC,CAAC;AAXW,QAAA,aAAa,iBAWxB;AAEK,MAAM,mBAAmB,GAAG,CAAC,IAAU,EAAU,EAAE;IACxD,MAAM,QAAQ,GAAG,WAAW,CAAC,IAAI,CAAC,CAAC;IAEnC,OAAO,QAAQ,CAAC,CAAC,CAAC,GAAG,QAAQ,KAAK,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,GAAG,GAAG,QAAQ,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;AACrE,CAAC,CAAC;AAJW,QAAA,mBAAmB,uBAI9B;AAEK,MAAM,6BAA6B,GAAG,CAAC,IAAU,EAAQ,EAAE;IAChE,IAAI,WAAW,GAAsB,EAAE,CAAC;IAExC,IAAI,CAAC;QACH,WAAW,GAAG,IAAA,uBAAe,EAAC,IAAI,CAAC,CAAC;IACtC,CAAC;IAAC,WAAM,CAAC;QACP,eAAM,CAAC,IAAI,CAAC,EAAE,KAAK,EAAE,eAAM,CAAC,IAAI,CAAC,kEAAkE,CAAC,EAAE,CAAC,CAAC;QAExG,MAAM,kBAAkB,GAAG,OAAO,CAAC,mCAAmC,CAAsB,CAAC;QAE7F,IAAA,wBAAgB,EAAC,IAAI,EAAE,kBAAkB,CAAC,CAAC;QAE3C,eAAM,CAAC,IAAI,CAAC;YACV,KAAK,EAAE,yBAAyB;YAChC,SAAS,EAAE;gBACT,wFAAwF;gBACxF,KAAK;gBACL,eAAM,CAAC,IAAI,CAAC,2DAA2D,CAAC;gBACxE,KAAK;gBACL,oBAAoB;gBACpB,KAAK;gBACL;;;;;;;;kCAQ0B,eAAM,CAAC,IAAI,CAAC,aAAa,CAAC;;;;WAIjD;gBACH,KAAK;aACN;SACF,CAAC,CAAA;IACJ,CAAC;IAED,MAAM,aAAa,GAAG;QACpB,YAAY;QACZ,cAAc;QACd,UAAU;QACV,kBAAkB;QAClB,eAAe;QACf,SAAS;QACT,YAAY;KACb,CAAC;IAEF,MAAM,IAAI,GAAG,WAAW,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC;IACvD,MAAM,cAAc,GAAG,CAAC,aAAa,CAAC,KAAK,CAAC,CAAC,GAAG,EAAE,EAAE,CAAC,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC,CAAC;IAEzE,IAAI,cAAc,EAAE,CAAC;QACnB,MAAM,kBAAkB,GAAG,OAAO,CAAC,mCAAmC,CAAsB,CAAC;QAE7F,IAAA,wBAAgB,EAAC,IAAI,EAAE,kBAAkB,CAAC,CAAC;QAE3C,eAAM,CAAC,IAAI,CAAC,EAAE,KAAK,EAAE,eAAM,CAAC,IAAI,CAAC,oEAAoE,CAAC,EAAE,CAAC,CAAC;IAC5G,CAAC;AACH,CAAC,CAAC;AA3DW,QAAA,6BAA6B,iCA2DxC"}