@nx/workspace 16.8.0-beta.4 → 16.8.0-beta.6

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.
Files changed (52) hide show
  1. package/package.json +29 -29
  2. package/src/executors/counter/counter.impl.js +29 -36
  3. package/src/generators/ci-workflow/ci-workflow.js +22 -21
  4. package/src/generators/convert-to-monorepo/convert-to-monorepo.js +29 -32
  5. package/src/generators/convert-to-nx-project/convert-to-nx-project.js +59 -64
  6. package/src/generators/move/lib/create-project-configuration-in-new-destination.js +6 -5
  7. package/src/generators/move/lib/extract-base-configs.js +13 -16
  8. package/src/generators/move/lib/normalize-schema.js +9 -3
  9. package/src/generators/move/lib/update-eslint-config.js +1 -1
  10. package/src/generators/move/lib/update-imports.js +4 -5
  11. package/src/generators/move/move.js +28 -31
  12. package/src/generators/new/generate-preset.js +4 -8
  13. package/src/generators/new/generate-workspace-files.js +47 -41
  14. package/src/generators/new/new.js +24 -30
  15. package/src/generators/npm-package/npm-package.js +27 -27
  16. package/src/generators/preset/preset.js +182 -188
  17. package/src/generators/remove/lib/check-dependencies.js +12 -15
  18. package/src/generators/remove/lib/check-targets.js +31 -34
  19. package/src/generators/remove/lib/update-tsconfig.js +16 -19
  20. package/src/generators/remove/remove.js +12 -15
  21. package/src/generators/run-commands/run-commands.js +18 -21
  22. package/src/generators/utils/get-npm-package-version.js +1 -1
  23. package/src/generators/utils/presets.d.ts +4 -0
  24. package/src/generators/utils/presets.js +5 -0
  25. package/src/generators/workspace-generator/workspace-generator.js +3 -6
  26. package/src/migrations/update-12-5-0/add-target-dependencies.js +26 -28
  27. package/src/migrations/update-13-0-0/config-locations/config-locations.js +16 -19
  28. package/src/migrations/update-13-0-0/set-default-base-if-not-set.js +16 -21
  29. package/src/migrations/update-13-10-0/update-decorate-cli.js +1 -2
  30. package/src/migrations/update-13-10-0/update-tasks-runner.js +2 -3
  31. package/src/migrations/update-13-2-0/set-parallel-default.js +14 -18
  32. package/src/migrations/update-13-3-0/update-tsc-executor-location.js +17 -20
  33. package/src/migrations/update-13-6-0/remove-old-task-runner-options.js +1 -2
  34. package/src/migrations/update-13-9-0/replace-tao-with-nx.js +2 -3
  35. package/src/migrations/update-13-9-0/update-decorate-cli.js +1 -2
  36. package/src/migrations/update-14-0-0/change-npm-script-executor.js +7 -10
  37. package/src/migrations/update-14-0-0/change-nx-json-presets.js +13 -13
  38. package/src/migrations/update-14-2-0/enable-source-analysis.js +14 -18
  39. package/src/migrations/update-14-8-0/change-run-commands-executor.js +7 -10
  40. package/src/migrations/update-15-7-0/split-configuration-into-project-json-files.js +3 -6
  41. package/src/migrations/update-16-0-0/fix-invalid-babelrc.js +2 -3
  42. package/src/migrations/update-16-0-0/move-workspace-generators-to-local-plugin.js +51 -60
  43. package/src/migrations/update-16-0-0-add-nx-packages/update-16-0-0-add-nx-packages.js +3 -6
  44. package/src/utilities/buildable-libs-utils.js +3 -6
  45. package/src/utilities/default-base.js +1 -1
  46. package/src/utilities/get-import-path.js +1 -1
  47. package/src/utilities/run-tasks-in-serial.js +3 -4
  48. package/src/utilities/typescript/compilation.js +14 -13
  49. package/src/utils/rules/format-files.js +9 -7
  50. package/src/utils/rules/visit-not-ignored-files.js +2 -2
  51. package/src/utils/testing-utils.js +7 -14
  52. package/src/utils/workspace.js +26 -37
@@ -1,199 +1,193 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.presetGenerator = void 0;
4
- const tslib_1 = require("tslib");
5
4
  const devkit_1 = require("@nx/devkit");
6
5
  const presets_1 = require("../utils/presets");
7
- function presetGenerator(tree, options) {
8
- return tslib_1.__awaiter(this, void 0, void 0, function* () {
9
- options = normalizeOptions(options);
10
- const presetTask = yield createPreset(tree, options);
11
- return () => tslib_1.__awaiter(this, void 0, void 0, function* () {
12
- (0, devkit_1.installPackagesTask)(tree);
13
- if (presetTask)
14
- yield presetTask();
15
- });
16
- });
6
+ async function presetGenerator(tree, options) {
7
+ options = normalizeOptions(options);
8
+ const presetTask = await createPreset(tree, options);
9
+ return async () => {
10
+ (0, devkit_1.installPackagesTask)(tree);
11
+ if (presetTask)
12
+ await presetTask();
13
+ };
17
14
  }
18
15
  exports.presetGenerator = presetGenerator;
19
16
  exports.default = presetGenerator;
20
- function createPreset(tree, options) {
21
- var _a, _b, _c, _d, _e, _f, _g, _h, _j, _k, _l, _m, _o, _p, _q;
22
- return tslib_1.__awaiter(this, void 0, void 0, function* () {
23
- if (options.preset === presets_1.Preset.Empty || options.preset === presets_1.Preset.Apps) {
24
- return;
25
- }
26
- else if (options.preset === presets_1.Preset.AngularMonorepo) {
27
- const { applicationGenerator: angularApplicationGenerator, } = require('@nx' + '/angular/generators');
28
- return angularApplicationGenerator(tree, {
29
- name: options.name,
30
- style: options.style,
31
- linter: options.linter,
32
- standalone: options.standaloneApi,
33
- routing: options.routing,
34
- e2eTestRunner: (_a = options.e2eTestRunner) !== null && _a !== void 0 ? _a : 'cypress',
35
- });
36
- }
37
- else if (options.preset === presets_1.Preset.AngularStandalone) {
38
- const { applicationGenerator: angularApplicationGenerator, } = require('@nx' + '/angular/generators');
39
- return angularApplicationGenerator(tree, {
40
- name: options.name,
41
- style: options.style,
42
- linter: options.linter,
43
- routing: options.routing,
44
- rootProject: true,
45
- standalone: options.standaloneApi,
46
- e2eTestRunner: (_b = options.e2eTestRunner) !== null && _b !== void 0 ? _b : 'cypress',
47
- });
48
- }
49
- else if (options.preset === presets_1.Preset.ReactMonorepo) {
50
- const { applicationGenerator: reactApplicationGenerator } = require('@nx' +
51
- '/react');
52
- return reactApplicationGenerator(tree, {
53
- name: options.name,
54
- style: options.style,
55
- linter: options.linter,
56
- bundler: (_c = options.bundler) !== null && _c !== void 0 ? _c : 'webpack',
57
- e2eTestRunner: (_d = options.e2eTestRunner) !== null && _d !== void 0 ? _d : 'cypress',
58
- });
59
- }
60
- else if (options.preset === presets_1.Preset.ReactStandalone) {
61
- const { applicationGenerator: reactApplicationGenerator } = require('@nx' +
62
- '/react');
63
- return reactApplicationGenerator(tree, {
64
- name: options.name,
65
- style: options.style,
66
- linter: options.linter,
67
- rootProject: true,
68
- bundler: (_e = options.bundler) !== null && _e !== void 0 ? _e : 'vite',
69
- e2eTestRunner: (_f = options.e2eTestRunner) !== null && _f !== void 0 ? _f : 'cypress',
70
- unitTestRunner: options.bundler === 'vite' ? 'vitest' : 'jest',
71
- });
72
- }
73
- else if (options.preset === presets_1.Preset.NextJs) {
74
- const { applicationGenerator: nextApplicationGenerator } = require('@nx' +
75
- '/next');
76
- return nextApplicationGenerator(tree, {
77
- name: options.name,
78
- style: options.style,
79
- linter: options.linter,
80
- appDir: options.nextAppDir,
81
- e2eTestRunner: (_g = options.e2eTestRunner) !== null && _g !== void 0 ? _g : 'cypress',
82
- });
83
- }
84
- else if (options.preset === presets_1.Preset.NextJsStandalone) {
85
- const { applicationGenerator: nextApplicationGenerator } = require('@nx' +
86
- '/next');
87
- return nextApplicationGenerator(tree, {
88
- name: options.name,
89
- style: options.style,
90
- linter: options.linter,
91
- appDir: options.nextAppDir,
92
- e2eTestRunner: (_h = options.e2eTestRunner) !== null && _h !== void 0 ? _h : 'cypress',
93
- rootProject: true,
94
- });
95
- }
96
- else if (options.preset === presets_1.Preset.WebComponents) {
97
- const { applicationGenerator: webApplicationGenerator } = require('@nx' +
98
- '/web');
99
- return webApplicationGenerator(tree, {
100
- name: options.name,
101
- style: options.style,
102
- linter: options.linter,
103
- bundler: 'vite',
104
- e2eTestRunner: (_j = options.e2eTestRunner) !== null && _j !== void 0 ? _j : 'cypress',
105
- });
106
- }
107
- else if (options.preset === presets_1.Preset.Nest) {
108
- const { applicationGenerator: nestApplicationGenerator } = require('@nx' +
109
- '/nest');
110
- return nestApplicationGenerator(tree, {
111
- name: options.name,
112
- linter: options.linter,
113
- e2eTestRunner: (_k = options.e2eTestRunner) !== null && _k !== void 0 ? _k : 'jest',
114
- });
115
- }
116
- else if (options.preset === presets_1.Preset.Express) {
117
- const { applicationGenerator: expressApplicationGenerator, } = require('@nx' + '/express');
118
- return expressApplicationGenerator(tree, {
119
- name: options.name,
120
- linter: options.linter,
121
- e2eTestRunner: (_l = options.e2eTestRunner) !== null && _l !== void 0 ? _l : 'jest',
122
- });
123
- }
124
- else if (options.preset === presets_1.Preset.ReactNative) {
125
- const { reactNativeApplicationGenerator } = require('@nx' +
126
- '/react-native');
127
- return reactNativeApplicationGenerator(tree, {
128
- name: options.name,
129
- linter: options.linter,
130
- e2eTestRunner: (_m = options.e2eTestRunner) !== null && _m !== void 0 ? _m : 'detox',
131
- });
132
- }
133
- else if (options.preset === presets_1.Preset.Expo) {
134
- const { expoApplicationGenerator } = require('@nx' + '/expo');
135
- return expoApplicationGenerator(tree, {
136
- name: options.name,
137
- linter: options.linter,
138
- e2eTestRunner: (_o = options.e2eTestRunner) !== null && _o !== void 0 ? _o : 'detox',
139
- });
140
- }
141
- else if (options.preset === presets_1.Preset.TS) {
142
- const c = (0, devkit_1.readNxJson)(tree);
143
- const { initGenerator } = require('@nx' + '/js');
144
- c.workspaceLayout = {
145
- appsDir: 'packages',
146
- libsDir: 'packages',
147
- };
148
- (0, devkit_1.updateNxJson)(tree, c);
149
- return initGenerator(tree, {});
150
- }
151
- else if (options.preset === presets_1.Preset.TsStandalone) {
152
- const c = (0, devkit_1.readNxJson)(tree);
153
- const { libraryGenerator } = require('@nx' + '/js');
154
- (0, devkit_1.updateNxJson)(tree, c);
155
- return libraryGenerator(tree, {
156
- name: options.name,
157
- bundler: 'tsc',
158
- unitTestRunner: 'vitest',
159
- testEnvironment: 'node',
160
- js: options.js,
161
- rootProject: true,
162
- });
163
- }
164
- else if (options.preset === presets_1.Preset.NodeStandalone) {
165
- const { applicationGenerator: nodeApplicationGenerator } = require('@nx' +
166
- '/node');
167
- const bundler = options.bundler === 'webpack' ? 'webpack' : 'esbuild';
168
- return nodeApplicationGenerator(tree, {
169
- bundler,
170
- name: options.name,
171
- linter: options.linter,
172
- standaloneConfig: options.standaloneConfig,
173
- framework: options.framework,
174
- docker: options.docker,
175
- rootProject: true,
176
- e2eTestRunner: (_p = options.e2eTestRunner) !== null && _p !== void 0 ? _p : 'jest',
177
- });
178
- }
179
- else if (options.preset === presets_1.Preset.NodeMonorepo) {
180
- const { applicationGenerator: nodeApplicationGenerator } = require('@nx' +
181
- '/node');
182
- const bundler = options.bundler === 'webpack' ? 'webpack' : 'esbuild';
183
- return nodeApplicationGenerator(tree, {
184
- bundler,
185
- name: options.name,
186
- linter: options.linter,
187
- framework: options.framework,
188
- docker: options.docker,
189
- rootProject: false,
190
- e2eTestRunner: (_q = options.e2eTestRunner) !== null && _q !== void 0 ? _q : 'jest',
191
- });
192
- }
193
- else {
194
- throw new Error(`Invalid preset ${options.preset}`);
195
- }
196
- });
17
+ async function createPreset(tree, options) {
18
+ if (options.preset === presets_1.Preset.Apps) {
19
+ return;
20
+ }
21
+ else if (options.preset === presets_1.Preset.AngularMonorepo) {
22
+ const { applicationGenerator: angularApplicationGenerator, } = require('@nx' + '/angular/generators');
23
+ return angularApplicationGenerator(tree, {
24
+ name: options.name,
25
+ style: options.style,
26
+ linter: options.linter,
27
+ standalone: options.standaloneApi,
28
+ routing: options.routing,
29
+ e2eTestRunner: options.e2eTestRunner ?? 'cypress',
30
+ });
31
+ }
32
+ else if (options.preset === presets_1.Preset.AngularStandalone) {
33
+ const { applicationGenerator: angularApplicationGenerator, } = require('@nx' + '/angular/generators');
34
+ return angularApplicationGenerator(tree, {
35
+ name: options.name,
36
+ style: options.style,
37
+ linter: options.linter,
38
+ routing: options.routing,
39
+ rootProject: true,
40
+ standalone: options.standaloneApi,
41
+ e2eTestRunner: options.e2eTestRunner ?? 'cypress',
42
+ });
43
+ }
44
+ else if (options.preset === presets_1.Preset.ReactMonorepo) {
45
+ const { applicationGenerator: reactApplicationGenerator } = require('@nx' +
46
+ '/react');
47
+ return reactApplicationGenerator(tree, {
48
+ name: options.name,
49
+ style: options.style,
50
+ linter: options.linter,
51
+ bundler: options.bundler ?? 'webpack',
52
+ e2eTestRunner: options.e2eTestRunner ?? 'cypress',
53
+ });
54
+ }
55
+ else if (options.preset === presets_1.Preset.ReactStandalone) {
56
+ const { applicationGenerator: reactApplicationGenerator } = require('@nx' +
57
+ '/react');
58
+ return reactApplicationGenerator(tree, {
59
+ name: options.name,
60
+ style: options.style,
61
+ linter: options.linter,
62
+ rootProject: true,
63
+ bundler: options.bundler ?? 'vite',
64
+ e2eTestRunner: options.e2eTestRunner ?? 'cypress',
65
+ unitTestRunner: options.bundler === 'vite' ? 'vitest' : 'jest',
66
+ });
67
+ }
68
+ else if (options.preset === presets_1.Preset.NextJs) {
69
+ const { applicationGenerator: nextApplicationGenerator } = require('@nx' +
70
+ '/next');
71
+ return nextApplicationGenerator(tree, {
72
+ name: options.name,
73
+ style: options.style,
74
+ linter: options.linter,
75
+ appDir: options.nextAppDir,
76
+ e2eTestRunner: options.e2eTestRunner ?? 'cypress',
77
+ });
78
+ }
79
+ else if (options.preset === presets_1.Preset.NextJsStandalone) {
80
+ const { applicationGenerator: nextApplicationGenerator } = require('@nx' +
81
+ '/next');
82
+ return nextApplicationGenerator(tree, {
83
+ name: options.name,
84
+ style: options.style,
85
+ linter: options.linter,
86
+ appDir: options.nextAppDir,
87
+ e2eTestRunner: options.e2eTestRunner ?? 'cypress',
88
+ rootProject: true,
89
+ });
90
+ }
91
+ else if (options.preset === presets_1.Preset.WebComponents) {
92
+ const { applicationGenerator: webApplicationGenerator } = require('@nx' +
93
+ '/web');
94
+ return webApplicationGenerator(tree, {
95
+ name: options.name,
96
+ style: options.style,
97
+ linter: options.linter,
98
+ bundler: 'vite',
99
+ e2eTestRunner: options.e2eTestRunner ?? 'cypress',
100
+ });
101
+ }
102
+ else if (options.preset === presets_1.Preset.Nest) {
103
+ const { applicationGenerator: nestApplicationGenerator } = require('@nx' +
104
+ '/nest');
105
+ return nestApplicationGenerator(tree, {
106
+ name: options.name,
107
+ linter: options.linter,
108
+ e2eTestRunner: options.e2eTestRunner ?? 'jest',
109
+ });
110
+ }
111
+ else if (options.preset === presets_1.Preset.Express) {
112
+ const { applicationGenerator: expressApplicationGenerator, } = require('@nx' + '/express');
113
+ return expressApplicationGenerator(tree, {
114
+ name: options.name,
115
+ linter: options.linter,
116
+ e2eTestRunner: options.e2eTestRunner ?? 'jest',
117
+ });
118
+ }
119
+ else if (options.preset === presets_1.Preset.ReactNative) {
120
+ const { reactNativeApplicationGenerator } = require('@nx' +
121
+ '/react-native');
122
+ return reactNativeApplicationGenerator(tree, {
123
+ name: options.name,
124
+ linter: options.linter,
125
+ e2eTestRunner: options.e2eTestRunner ?? 'detox',
126
+ });
127
+ }
128
+ else if (options.preset === presets_1.Preset.Expo) {
129
+ const { expoApplicationGenerator } = require('@nx' + '/expo');
130
+ return expoApplicationGenerator(tree, {
131
+ name: options.name,
132
+ linter: options.linter,
133
+ e2eTestRunner: options.e2eTestRunner ?? 'detox',
134
+ });
135
+ }
136
+ else if (options.preset === presets_1.Preset.TS) {
137
+ const c = (0, devkit_1.readNxJson)(tree);
138
+ const { initGenerator } = require('@nx' + '/js');
139
+ c.workspaceLayout = {
140
+ appsDir: 'packages',
141
+ libsDir: 'packages',
142
+ };
143
+ (0, devkit_1.updateNxJson)(tree, c);
144
+ return initGenerator(tree, {});
145
+ }
146
+ else if (options.preset === presets_1.Preset.TsStandalone) {
147
+ const c = (0, devkit_1.readNxJson)(tree);
148
+ const { libraryGenerator } = require('@nx' + '/js');
149
+ (0, devkit_1.updateNxJson)(tree, c);
150
+ return libraryGenerator(tree, {
151
+ name: options.name,
152
+ bundler: 'tsc',
153
+ unitTestRunner: 'vitest',
154
+ testEnvironment: 'node',
155
+ js: options.js,
156
+ rootProject: true,
157
+ });
158
+ }
159
+ else if (options.preset === presets_1.Preset.NodeStandalone) {
160
+ const { applicationGenerator: nodeApplicationGenerator } = require('@nx' +
161
+ '/node');
162
+ const bundler = options.bundler === 'webpack' ? 'webpack' : 'esbuild';
163
+ return nodeApplicationGenerator(tree, {
164
+ bundler,
165
+ name: options.name,
166
+ linter: options.linter,
167
+ standaloneConfig: options.standaloneConfig,
168
+ framework: options.framework,
169
+ docker: options.docker,
170
+ rootProject: true,
171
+ e2eTestRunner: options.e2eTestRunner ?? 'jest',
172
+ });
173
+ }
174
+ else if (options.preset === presets_1.Preset.NodeMonorepo) {
175
+ const { applicationGenerator: nodeApplicationGenerator } = require('@nx' +
176
+ '/node');
177
+ const bundler = options.bundler === 'webpack' ? 'webpack' : 'esbuild';
178
+ return nodeApplicationGenerator(tree, {
179
+ bundler,
180
+ name: options.name,
181
+ linter: options.linter,
182
+ framework: options.framework,
183
+ docker: options.docker,
184
+ rootProject: false,
185
+ e2eTestRunner: options.e2eTestRunner ?? 'jest',
186
+ });
187
+ }
188
+ else {
189
+ throw new Error(`Invalid preset ${options.preset}`);
190
+ }
197
191
  }
198
192
  function normalizeOptions(options) {
199
193
  options.name = (0, devkit_1.names)(options.name).fileName;
@@ -1,26 +1,23 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.checkDependencies = void 0;
4
- const tslib_1 = require("tslib");
5
4
  const devkit_1 = require("@nx/devkit");
6
5
  /**
7
6
  * Check whether the project to be removed is depended on by another project
8
7
  *
9
8
  * Throws an error if the project is in use, unless the `--forceRemove` option is used.
10
9
  */
11
- function checkDependencies(_, schema) {
12
- return tslib_1.__awaiter(this, void 0, void 0, function* () {
13
- if (schema.forceRemove) {
14
- return;
15
- }
16
- const graph = yield (0, devkit_1.createProjectGraphAsync)();
17
- const reverseGraph = (0, devkit_1.reverse)(graph);
18
- const deps = reverseGraph.dependencies[schema.projectName] || [];
19
- if (deps.length > 0) {
20
- throw new Error(`${schema.projectName} is still a dependency of the following projects:\n${deps
21
- .map((x) => x.target)
22
- .join('\n')}`);
23
- }
24
- });
10
+ async function checkDependencies(_, schema) {
11
+ if (schema.forceRemove) {
12
+ return;
13
+ }
14
+ const graph = await (0, devkit_1.createProjectGraphAsync)();
15
+ const reverseGraph = (0, devkit_1.reverse)(graph);
16
+ const deps = reverseGraph.dependencies[schema.projectName] || [];
17
+ if (deps.length > 0) {
18
+ throw new Error(`${schema.projectName} is still a dependency of the following projects:\n${deps
19
+ .map((x) => x.target)
20
+ .join('\n')}`);
21
+ }
25
22
  }
26
23
  exports.checkDependencies = checkDependencies;
@@ -1,7 +1,6 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.checkTargets = void 0;
4
- const tslib_1 = require("tslib");
5
4
  const devkit_1 = require("@nx/devkit");
6
5
  /**
7
6
  * Check whether the project to be removed has builders targetted by another project
@@ -10,45 +9,43 @@ const devkit_1 = require("@nx/devkit");
10
9
  *
11
10
  * @param schema The options provided to the schematic
12
11
  */
13
- function checkTargets(tree, schema) {
14
- return tslib_1.__awaiter(this, void 0, void 0, function* () {
15
- if (schema.forceRemove) {
12
+ async function checkTargets(tree, schema) {
13
+ if (schema.forceRemove) {
14
+ return;
15
+ }
16
+ const graph = await (0, devkit_1.createProjectGraphAsync)();
17
+ const errors = [];
18
+ (0, devkit_1.getProjects)(tree).forEach((projectConfig, projectName) => {
19
+ if (projectName === schema.projectName) {
16
20
  return;
17
21
  }
18
- const graph = yield (0, devkit_1.createProjectGraphAsync)();
19
- const errors = [];
20
- (0, devkit_1.getProjects)(tree).forEach((projectConfig, projectName) => {
21
- if (projectName === schema.projectName) {
22
- return;
23
- }
24
- Object.entries(projectConfig.targets || {}).forEach(([, targetConfig]) => {
25
- checkIfProjectIsUsed(targetConfig, (value) => {
26
- try {
27
- const { project } = (0, devkit_1.parseTargetString)(value, graph);
28
- if (project === schema.projectName) {
29
- errors.push(`"${value}" is used by "${projectName}"`);
30
- }
31
- }
32
- catch (err) {
33
- /**
34
- * It threw because the target string was not
35
- * in the format of project:target:configuration
36
- *
37
- * In that case, we don't care about it.
38
- * So we can ignore this error.
39
- */
22
+ Object.entries(projectConfig.targets || {}).forEach(([, targetConfig]) => {
23
+ checkIfProjectIsUsed(targetConfig, (value) => {
24
+ try {
25
+ const { project } = (0, devkit_1.parseTargetString)(value, graph);
26
+ if (project === schema.projectName) {
27
+ errors.push(`"${value}" is used by "${projectName}"`);
40
28
  }
41
- });
29
+ }
30
+ catch (err) {
31
+ /**
32
+ * It threw because the target string was not
33
+ * in the format of project:target:configuration
34
+ *
35
+ * In that case, we don't care about it.
36
+ * So we can ignore this error.
37
+ */
38
+ }
42
39
  });
43
40
  });
44
- if (errors.length > 0) {
45
- let message = `${schema.projectName} is still targeted by some projects:\n\n`;
46
- for (let error of errors) {
47
- message += `${error}\n`;
48
- }
49
- throw new Error(message);
50
- }
51
41
  });
42
+ if (errors.length > 0) {
43
+ let message = `${schema.projectName} is still targeted by some projects:\n\n`;
44
+ for (let error of errors) {
45
+ message += `${error}\n`;
46
+ }
47
+ throw new Error(message);
48
+ }
52
49
  }
53
50
  exports.checkTargets = checkTargets;
54
51
  function checkIfProjectIsUsed(config, callback) {
@@ -1,7 +1,6 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.updateTsconfig = void 0;
4
- const tslib_1 = require("tslib");
5
4
  const devkit_1 = require("@nx/devkit");
6
5
  const ts_config_1 = require("../../../utilities/ts-config");
7
6
  const find_project_for_path_1 = require("nx/src/project-graph/utils/find-project-for-path");
@@ -10,25 +9,23 @@ const find_project_for_path_1 = require("nx/src/project-graph/utils/find-project
10
9
  *
11
10
  * @param schema The options provided to the schematic
12
11
  */
13
- function updateTsconfig(tree, schema) {
14
- return tslib_1.__awaiter(this, void 0, void 0, function* () {
15
- const tsConfigPath = (0, ts_config_1.getRootTsConfigPathInTree)(tree);
16
- if (tree.exists(tsConfigPath)) {
17
- const graph = yield (0, devkit_1.createProjectGraphAsync)();
18
- const projectMapping = (0, find_project_for_path_1.createProjectRootMappings)(graph.nodes);
19
- (0, devkit_1.updateJson)(tree, tsConfigPath, (json) => {
20
- for (const importPath in json.compilerOptions.paths) {
21
- for (const path of json.compilerOptions.paths[importPath]) {
22
- const project = (0, find_project_for_path_1.findProjectForPath)((0, devkit_1.normalizePath)(path), projectMapping);
23
- if (project === schema.projectName) {
24
- delete json.compilerOptions.paths[importPath];
25
- break;
26
- }
12
+ async function updateTsconfig(tree, schema) {
13
+ const tsConfigPath = (0, ts_config_1.getRootTsConfigPathInTree)(tree);
14
+ if (tree.exists(tsConfigPath)) {
15
+ const graph = await (0, devkit_1.createProjectGraphAsync)();
16
+ const projectMapping = (0, find_project_for_path_1.createProjectRootMappings)(graph.nodes);
17
+ (0, devkit_1.updateJson)(tree, tsConfigPath, (json) => {
18
+ for (const importPath in json.compilerOptions.paths) {
19
+ for (const path of json.compilerOptions.paths[importPath]) {
20
+ const project = (0, find_project_for_path_1.findProjectForPath)((0, devkit_1.normalizePath)(path), projectMapping);
21
+ if (project === schema.projectName) {
22
+ delete json.compilerOptions.paths[importPath];
23
+ break;
27
24
  }
28
25
  }
29
- return json;
30
- });
31
- }
32
- });
26
+ }
27
+ return json;
28
+ });
29
+ }
33
30
  }
34
31
  exports.updateTsconfig = updateTsconfig;
@@ -1,7 +1,6 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.removeSchematic = exports.removeGenerator = void 0;
4
- const tslib_1 = require("tslib");
5
4
  const devkit_1 = require("@nx/devkit");
6
5
  const check_project_is_safe_to_remove_1 = require("./lib/check-project-is-safe-to-remove");
7
6
  const check_dependencies_1 = require("./lib/check-dependencies");
@@ -10,20 +9,18 @@ const remove_project_1 = require("./lib/remove-project");
10
9
  const update_tsconfig_1 = require("./lib/update-tsconfig");
11
10
  const remove_project_references_in_config_1 = require("./lib/remove-project-references-in-config");
12
11
  const update_jest_config_1 = require("./lib/update-jest-config");
13
- function removeGenerator(tree, schema) {
14
- return tslib_1.__awaiter(this, void 0, void 0, function* () {
15
- const project = (0, devkit_1.readProjectConfiguration)(tree, schema.projectName);
16
- yield (0, check_project_is_safe_to_remove_1.checkProjectIsSafeToRemove)(tree, schema, project);
17
- yield (0, check_dependencies_1.checkDependencies)(tree, schema);
18
- yield (0, check_targets_1.checkTargets)(tree, schema);
19
- (0, update_jest_config_1.updateJestConfig)(tree, schema, project);
20
- (0, remove_project_references_in_config_1.removeProjectReferencesInConfig)(tree, schema);
21
- (0, remove_project_1.removeProject)(tree, project);
22
- yield (0, update_tsconfig_1.updateTsconfig)(tree, schema);
23
- if (!schema.skipFormat) {
24
- yield (0, devkit_1.formatFiles)(tree);
25
- }
26
- });
12
+ async function removeGenerator(tree, schema) {
13
+ const project = (0, devkit_1.readProjectConfiguration)(tree, schema.projectName);
14
+ await (0, check_project_is_safe_to_remove_1.checkProjectIsSafeToRemove)(tree, schema, project);
15
+ await (0, check_dependencies_1.checkDependencies)(tree, schema);
16
+ await (0, check_targets_1.checkTargets)(tree, schema);
17
+ (0, update_jest_config_1.updateJestConfig)(tree, schema, project);
18
+ (0, remove_project_references_in_config_1.removeProjectReferencesInConfig)(tree, schema);
19
+ (0, remove_project_1.removeProject)(tree, project);
20
+ await (0, update_tsconfig_1.updateTsconfig)(tree, schema);
21
+ if (!schema.skipFormat) {
22
+ await (0, devkit_1.formatFiles)(tree);
23
+ }
27
24
  }
28
25
  exports.removeGenerator = removeGenerator;
29
26
  exports.default = removeGenerator;