nx 21.4.0-beta.0 → 21.4.0-canary.20250722-5163bcd

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/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "nx",
3
- "version": "21.4.0-beta.0",
3
+ "version": "21.4.0-canary.20250722-5163bcd",
4
4
  "private": false,
5
5
  "description": "The core Nx plugin contains the core functionality of Nx like the project graph, nx commands and task orchestration.",
6
6
  "repository": {
@@ -83,16 +83,16 @@
83
83
  }
84
84
  },
85
85
  "optionalDependencies": {
86
- "@nx/nx-darwin-arm64": "21.4.0-beta.0",
87
- "@nx/nx-darwin-x64": "21.4.0-beta.0",
88
- "@nx/nx-freebsd-x64": "21.4.0-beta.0",
89
- "@nx/nx-linux-arm-gnueabihf": "21.4.0-beta.0",
90
- "@nx/nx-linux-arm64-gnu": "21.4.0-beta.0",
91
- "@nx/nx-linux-arm64-musl": "21.4.0-beta.0",
92
- "@nx/nx-linux-x64-gnu": "21.4.0-beta.0",
93
- "@nx/nx-linux-x64-musl": "21.4.0-beta.0",
94
- "@nx/nx-win32-arm64-msvc": "21.4.0-beta.0",
95
- "@nx/nx-win32-x64-msvc": "21.4.0-beta.0"
86
+ "@nx/nx-darwin-arm64": "21.4.0-canary.20250722-5163bcd",
87
+ "@nx/nx-darwin-x64": "21.4.0-canary.20250722-5163bcd",
88
+ "@nx/nx-freebsd-x64": "21.4.0-canary.20250722-5163bcd",
89
+ "@nx/nx-linux-arm-gnueabihf": "21.4.0-canary.20250722-5163bcd",
90
+ "@nx/nx-linux-arm64-gnu": "21.4.0-canary.20250722-5163bcd",
91
+ "@nx/nx-linux-arm64-musl": "21.4.0-canary.20250722-5163bcd",
92
+ "@nx/nx-linux-x64-gnu": "21.4.0-canary.20250722-5163bcd",
93
+ "@nx/nx-linux-x64-musl": "21.4.0-canary.20250722-5163bcd",
94
+ "@nx/nx-win32-arm64-msvc": "21.4.0-canary.20250722-5163bcd",
95
+ "@nx/nx-win32-x64-msvc": "21.4.0-canary.20250722-5163bcd"
96
96
  },
97
97
  "nx-migrations": {
98
98
  "migrations": "./migrations.json",
@@ -2,6 +2,6 @@ import { InitArgs } from '../init-v1';
2
2
  type Options = Pick<InitArgs, 'nxCloud' | 'interactive' | 'cacheable'> & {
3
3
  legacy?: boolean;
4
4
  };
5
- export declare function addNxToMonorepo(options: Options): Promise<void>;
5
+ export declare function addNxToMonorepo(options: Options, guided?: boolean): Promise<void>;
6
6
  export {};
7
7
  //# sourceMappingURL=add-nx-to-monorepo.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"add-nx-to-monorepo.d.ts","sourceRoot":"","sources":["../../../../../../../packages/nx/src/command-line/init/implementation/add-nx-to-monorepo.ts"],"names":[],"mappings":"AAIA,OAAO,EAAE,QAAQ,EAAE,MAAM,YAAY,CAAC;AAYtC,KAAK,OAAO,GAAG,IAAI,CAAC,QAAQ,EAAE,SAAS,GAAG,aAAa,GAAG,WAAW,CAAC,GAAG;IACvE,MAAM,CAAC,EAAE,OAAO,CAAC;CAClB,CAAC;AAEF,wBAAsB,eAAe,CAAC,OAAO,EAAE,OAAO,iBA4FrD"}
1
+ {"version":3,"file":"add-nx-to-monorepo.d.ts","sourceRoot":"","sources":["../../../../../../../packages/nx/src/command-line/init/implementation/add-nx-to-monorepo.ts"],"names":[],"mappings":"AAIA,OAAO,EAAE,QAAQ,EAAE,MAAM,YAAY,CAAC;AAYtC,KAAK,OAAO,GAAG,IAAI,CAAC,QAAQ,EAAE,SAAS,GAAG,aAAa,GAAG,WAAW,CAAC,GAAG;IACvE,MAAM,CAAC,EAAE,OAAO,CAAC;CAClB,CAAC;AAEF,wBAAsB,eAAe,CACnC,OAAO,EAAE,OAAO,EAChB,MAAM,GAAE,OAAc,iBA6FvB"}
@@ -9,7 +9,7 @@ const fileutils_1 = require("../../../utils/fileutils");
9
9
  const output_1 = require("../../../utils/output");
10
10
  const utils_1 = require("./utils");
11
11
  const connect_to_nx_cloud_1 = require("../../nx-cloud/connect/connect-to-nx-cloud");
12
- async function addNxToMonorepo(options) {
12
+ async function addNxToMonorepo(options, guided = true) {
13
13
  const repoRoot = process.cwd();
14
14
  output_1.output.log({ title: '🐳 Nx initialization' });
15
15
  const packageJsonFiles = allProjectPackageJsonFiles(repoRoot);
@@ -18,7 +18,7 @@ async function addNxToMonorepo(options) {
18
18
  let cacheableOperations;
19
19
  let scriptOutputs = {};
20
20
  let useNxCloud;
21
- if (options.interactive && scripts.length > 0) {
21
+ if (options.interactive && scripts.length > 0 && guided) {
22
22
  output_1.output.log({
23
23
  title: '🧑‍🔧 Please answer the following questions about the scripts found in your workspace in order to generate task runner configuration',
24
24
  });
@@ -2,6 +2,6 @@ import { InitArgs } from '../init-v1';
2
2
  type Options = Pick<InitArgs, 'nxCloud' | 'interactive' | 'cacheable'> & {
3
3
  legacy?: boolean;
4
4
  };
5
- export declare function addNxToNpmRepo(options: Options): Promise<void>;
5
+ export declare function addNxToNpmRepo(options: Options, guided?: boolean): Promise<void>;
6
6
  export {};
7
7
  //# sourceMappingURL=add-nx-to-npm-repo.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"add-nx-to-npm-repo.d.ts","sourceRoot":"","sources":["../../../../../../../packages/nx/src/command-line/init/implementation/add-nx-to-npm-repo.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,QAAQ,EAAE,MAAM,YAAY,CAAC;AAetC,KAAK,OAAO,GAAG,IAAI,CAAC,QAAQ,EAAE,SAAS,GAAG,aAAa,GAAG,WAAW,CAAC,GAAG;IACvE,MAAM,CAAC,EAAE,OAAO,CAAC;CAClB,CAAC;AAEF,wBAAsB,cAAc,CAAC,OAAO,EAAE,OAAO,iBAgFpD"}
1
+ {"version":3,"file":"add-nx-to-npm-repo.d.ts","sourceRoot":"","sources":["../../../../../../../packages/nx/src/command-line/init/implementation/add-nx-to-npm-repo.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,QAAQ,EAAE,MAAM,YAAY,CAAC;AAetC,KAAK,OAAO,GAAG,IAAI,CAAC,QAAQ,EAAE,SAAS,GAAG,aAAa,GAAG,WAAW,CAAC,GAAG;IACvE,MAAM,CAAC,EAAE,OAAO,CAAC;CAClB,CAAC;AAEF,wBAAsB,cAAc,CAAC,OAAO,EAAE,OAAO,EAAE,MAAM,GAAE,OAAc,iBAgF5E"}
@@ -8,7 +8,7 @@ const output_1 = require("../../../utils/output");
8
8
  const package_manager_1 = require("../../../utils/package-manager");
9
9
  const utils_1 = require("./utils");
10
10
  const connect_to_nx_cloud_1 = require("../../nx-cloud/connect/connect-to-nx-cloud");
11
- async function addNxToNpmRepo(options) {
11
+ async function addNxToNpmRepo(options, guided = true) {
12
12
  const repoRoot = process.cwd();
13
13
  output_1.output.log({ title: '🐳 Nx initialization' });
14
14
  let cacheableOperations;
@@ -16,7 +16,7 @@ async function addNxToNpmRepo(options) {
16
16
  let useNxCloud;
17
17
  const packageJson = (0, fileutils_1.readJsonFile)('package.json');
18
18
  const scripts = Object.keys(packageJson.scripts ?? {}).filter((s) => !s.startsWith('pre') && !s.startsWith('post'));
19
- if (options.interactive && scripts.length > 0) {
19
+ if (options.interactive && scripts.length > 0 && guided) {
20
20
  output_1.output.log({
21
21
  title: '🧑‍🔧 Please answer the following questions about the scripts found in your package.json in order to generate task runner configuration',
22
22
  });
@@ -1 +1 @@
1
- {"version":3,"file":"utils.d.ts","sourceRoot":"","sources":["../../../../../../../packages/nx/src/command-line/init/implementation/utils.ts"],"names":[],"mappings":"AAGA,OAAO,EAAE,mBAAmB,EAAE,MAAM,yBAAyB,CAAC;AAQ9D,OAAO,EAAE,WAAW,EAAE,MAAM,6BAA6B,CAAC;AAC1D,OAAO,EAEL,sBAAsB,EACvB,MAAM,gCAAgC,CAAC;AAUxC,wBAAgB,gBAAgB,CAC9B,QAAQ,EAAE,MAAM,EAChB,kBAAkB,EAAE,MAAM,EAAE,EAC5B,mBAAmB,EAAE,MAAM,EAAE,EAC7B,aAAa,EAAE;IAAE,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM,CAAA;CAAE,QA0C1C;AAED,wBAAgB,yBAAyB,CACvC,SAAS,EAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,GAC7B,mBAAmB,CA+GrB;AAED,wBAAgB,oBAAoB,CAClC,QAAQ,EAAE,MAAM,EAChB,kBAAkB,CAAC,EAAE,MAAM,EAAE,QAY9B;AAED,wBAAgB,eAAe,CAAC,IAAI,EAAE,MAAM,QAqC3C;AAED,wBAAgB,UAAU,CACxB,QAAQ,EAAE,MAAM,EAChB,GAAG,GAAE,sBAAmD,QAOzD;AAED,wBAAsB,SAAS,CAC7B,kBAAkB,EACd,SAAS,GACT,iBAAiB,GACjB,aAAa,GACb,kBAAkB,GAClB,cAAc,GACd,kBAAkB,GAClB,mBAAmB,iBAMxB;AAED,wBAAgB,8BAA8B,CAC5C,QAAQ,EAAE,MAAM,EAChB,UAAU,EAAE,MAAM,EAAE,GACnB,IAAI,CAiBN;AAED,wBAAgB,oCAAoC,CAClD,QAAQ,EAAE,MAAM,EAChB,gBAAgB,EAAE,MAAM,EAAE,EAC1B,GAAG,EAAE,sBAAsB,QAqB5B;AAED,wBAAgB,0BAA0B,CAAC,eAAe,EAAE,MAAM,QAQjE;AAED,wBAAgB,iBAAiB,CAAC,EAChC,aAAa,EACb,WAAW,GACZ,EAAE;IACD,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,WAAW,CAAC,EAAE,MAAM,EAAE,CAAC;CACxB,GAAG,IAAI,CAgBP;AAED,wBAAgB,UAAU,CAAC,WAAW,EAAE,WAAW,WASlD;AAED,wBAAgB,KAAK,CAAC,WAAW,EAAE,WAAW,WAa7C"}
1
+ {"version":3,"file":"utils.d.ts","sourceRoot":"","sources":["../../../../../../../packages/nx/src/command-line/init/implementation/utils.ts"],"names":[],"mappings":"AAGA,OAAO,EAAE,mBAAmB,EAAE,MAAM,yBAAyB,CAAC;AAQ9D,OAAO,EAAE,WAAW,EAAE,MAAM,6BAA6B,CAAC;AAC1D,OAAO,EAEL,sBAAsB,EACvB,MAAM,gCAAgC,CAAC;AAUxC,wBAAgB,gBAAgB,CAC9B,QAAQ,EAAE,MAAM,EAChB,kBAAkB,EAAE,MAAM,EAAE,EAC5B,mBAAmB,EAAE,MAAM,EAAE,EAC7B,aAAa,EAAE;IAAE,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM,CAAA;CAAE,QA0C1C;AAED,wBAAgB,yBAAyB,CACvC,SAAS,EAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,GAC7B,mBAAmB,CA+GrB;AAED,wBAAgB,oBAAoB,CAClC,QAAQ,EAAE,MAAM,EAChB,kBAAkB,CAAC,EAAE,MAAM,EAAE,QAY9B;AAED,wBAAgB,eAAe,CAAC,IAAI,EAAE,MAAM,QAqC3C;AAED,wBAAgB,UAAU,CACxB,QAAQ,EAAE,MAAM,EAChB,GAAG,GAAE,sBAAmD,QAOzD;AAED,wBAAsB,SAAS,CAC7B,kBAAkB,EACd,SAAS,GACT,iBAAiB,GACjB,aAAa,GACb,kBAAkB,GAClB,cAAc,GACd,kBAAkB,GAClB,mBAAmB,iBAMxB;AAED,wBAAgB,8BAA8B,CAC5C,QAAQ,EAAE,MAAM,EAChB,UAAU,EAAE,MAAM,EAAE,GACnB,IAAI,CAiBN;AAED,wBAAgB,oCAAoC,CAClD,QAAQ,EAAE,MAAM,EAChB,gBAAgB,EAAE,MAAM,EAAE,EAC1B,GAAG,EAAE,sBAAsB,QAqB5B;AAED,wBAAgB,0BAA0B,CAAC,eAAe,EAAE,MAAM,QAQjE;AAED,wBAAgB,iBAAiB,CAAC,EAChC,aAAa,EACb,WAAW,GACZ,EAAE;IACD,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,WAAW,CAAC,EAAE,MAAM,EAAE,CAAC;CACxB,GAAG,IAAI,CAUP;AAED,wBAAgB,UAAU,CAAC,WAAW,EAAE,WAAW,WASlD;AAED,wBAAgB,KAAK,CAAC,WAAW,EAAE,WAAW,WAa7C"}
@@ -24,7 +24,6 @@ const connect_to_nx_cloud_1 = require("../../../nx-cloud/generators/connect-to-n
24
24
  const url_shorten_1 = require("../../../nx-cloud/utilities/url-shorten");
25
25
  const connect_to_nx_cloud_2 = require("../../nx-cloud/connect/connect-to-nx-cloud");
26
26
  const deduce_default_base_1 = require("./deduce-default-base");
27
- const child_process_2 = require("../../../utils/child-process");
28
27
  function createNxJsonFile(repoRoot, topologicalTargets, cacheableOperations, scriptOutputs) {
29
28
  const nxJsonPath = (0, path_2.joinPathFragments)(repoRoot, 'nx.json');
30
29
  let nxJson = {};
@@ -263,13 +262,10 @@ function markPackageJsonAsNxProject(packageJsonPath) {
263
262
  (0, fileutils_1.writeJsonFile)(packageJsonPath, json);
264
263
  }
265
264
  function printFinalMessage({ learnMoreLink, appendLines, }) {
266
- const pmc = (0, package_manager_1.getPackageManagerCommand)();
267
265
  output_1.output.success({
268
266
  title: '🎉 Done!',
269
267
  bodyLines: [
270
- `- Run "${(0, child_process_2.getRunNxBaseCommand)(pmc)} run-many -t build" to run the build target for every project in the workspace. Run it again to replay the cached computation. https://nx.dev/features/cache-task-results`,
271
- `- Run "${(0, child_process_2.getRunNxBaseCommand)(pmc)} graph" to see the graph of projects and tasks in your workspace. https://nx.dev/core-features/explore-graph`,
272
- learnMoreLink ? `- Learn more at ${learnMoreLink}.` : undefined,
268
+ `- Learn more about what to do next at ${learnMoreLink ?? 'https://nx.dev/getting-started/adding-to-existing'}`,
273
269
  ...(appendLines ?? []),
274
270
  ].filter(Boolean),
275
271
  });
@@ -1 +1 @@
1
- {"version":3,"file":"init-v2.d.ts","sourceRoot":"","sources":["../../../../../../packages/nx/src/command-line/init/init-v2.ts"],"names":[],"mappings":"AAIA,OAAO,EAAE,mBAAmB,EAAc,MAAM,sBAAsB,CAAC;AA6BvE,MAAM,WAAW,QAAQ;IACvB,WAAW,EAAE,OAAO,CAAC;IACrB,OAAO,CAAC,EAAE,OAAO,CAAC;IAClB,oBAAoB,CAAC,EAAE,OAAO,CAAC;IAC/B,UAAU,CAAC,EAAE,OAAO,CAAC;IACrB,OAAO,CAAC,EAAE,OAAO,CAAC;IAClB,KAAK,CAAC,EAAE,OAAO,CAAC;CACjB;AAED,wBAAsB,WAAW,CAAC,OAAO,EAAE,QAAQ,GAAG,OAAO,CAAC,IAAI,CAAC,CA0HlE;AA2BD,wBAAsB,aAAa,CACjC,MAAM,EAAE,mBAAmB,EAC3B,WAAW,EAAE,OAAO,EACpB,iBAAiB,CAAC,EAAE,OAAO,GAC1B,OAAO,CAAC;IACT,OAAO,EAAE,MAAM,EAAE,CAAC;IAClB,oBAAoB,EAAE,OAAO,CAAC;CAC/B,CAAC,CAgID"}
1
+ {"version":3,"file":"init-v2.d.ts","sourceRoot":"","sources":["../../../../../../packages/nx/src/command-line/init/init-v2.ts"],"names":[],"mappings":"AAIA,OAAO,EAAE,mBAAmB,EAAc,MAAM,sBAAsB,CAAC;AA4BvE,MAAM,WAAW,QAAQ;IACvB,WAAW,EAAE,OAAO,CAAC;IACrB,OAAO,CAAC,EAAE,OAAO,CAAC;IAClB,oBAAoB,CAAC,EAAE,OAAO,CAAC;IAC/B,UAAU,CAAC,EAAE,OAAO,CAAC;IACrB,OAAO,CAAC,EAAE,OAAO,CAAC;IAClB,KAAK,CAAC,EAAE,OAAO,CAAC;CACjB;AAED,wBAAsB,WAAW,CAAC,OAAO,EAAE,QAAQ,GAAG,OAAO,CAAC,IAAI,CAAC,CAkJlE;AA2BD,wBAAsB,aAAa,CACjC,MAAM,EAAE,mBAAmB,EAC3B,WAAW,EAAE,OAAO,EACpB,iBAAiB,CAAC,EAAE,OAAO,GAC1B,OAAO,CAAC;IACT,OAAO,EAAE,MAAM,EAAE,CAAC;IAClB,oBAAoB,EAAE,OAAO,CAAC;CAC/B,CAAC,CAgID"}
@@ -34,7 +34,7 @@ async function initHandler(options) {
34
34
  integrated: !!options.integrated,
35
35
  });
36
36
  (0, utils_1.printFinalMessage)({
37
- learnMoreLink: 'https://nx.dev/recipes/angular/migration/angular',
37
+ learnMoreLink: 'https://nx.dev/technologies/angular/migration/angular',
38
38
  });
39
39
  return;
40
40
  }
@@ -45,6 +45,18 @@ async function initHandler(options) {
45
45
  const _isTurborepo = (0, fs_1.existsSync)('turbo.json');
46
46
  const _isMonorepo = _isNonJs ? false : (0, utils_1.isMonorepo)(packageJson);
47
47
  const _isCRA = _isNonJs ? false : (0, utils_1.isCRA)(packageJson);
48
+ let guided = true;
49
+ if (options.interactive && !(_isTurborepo || _isCRA || _isNonJs)) {
50
+ const setupType = await (0, enquirer_1.prompt)([
51
+ {
52
+ type: 'select',
53
+ name: 'setupPreference',
54
+ message: 'Would you like a minimum or guided setup?',
55
+ choices: [{ name: 'Minimum' }, { name: 'Guided' }],
56
+ },
57
+ ]).then((r) => r.setupPreference);
58
+ guided = setupType === 'Guided';
59
+ }
48
60
  /**
49
61
  * Turborepo users must have set up individual scripts already, and we keep the transition as minimal as possible.
50
62
  * We log a message during the conversion process in addNxToTurborepo about how they can learn more about the power
@@ -75,7 +87,7 @@ async function initHandler(options) {
75
87
  await (0, add_nx_to_monorepo_1.addNxToMonorepo)({
76
88
  interactive: options.interactive,
77
89
  nxCloud: false,
78
- });
90
+ }, guided);
79
91
  }
80
92
  else if (_isNonJs) {
81
93
  (0, add_nx_scripts_1.generateDotNxSetup)(version);
@@ -85,41 +97,48 @@ async function initHandler(options) {
85
97
  await (0, add_nx_to_npm_repo_1.addNxToNpmRepo)({
86
98
  interactive: options.interactive,
87
99
  nxCloud: false,
88
- });
100
+ }, guided);
89
101
  }
90
- const useNxCloud = options.nxCloud ??
91
- (options.interactive ? await (0, connect_to_nx_cloud_1.connectExistingRepoToNxCloudPrompt)() : false);
92
102
  const repoRoot = process.cwd();
93
103
  (0, utils_1.createNxJsonFile)(repoRoot, [], [], {});
94
104
  (0, utils_1.updateGitIgnore)(repoRoot);
95
105
  const nxJson = (0, nx_json_1.readNxJson)(repoRoot);
96
- output_1.output.log({ title: '🧐 Checking dependencies' });
97
- let plugins;
98
- let updatePackageScripts;
99
- if (_isCRA) {
100
- plugins = ['@nx/vite'];
101
- updatePackageScripts = true;
106
+ if (guided) {
107
+ output_1.output.log({ title: '🧐 Checking dependencies' });
108
+ let plugins;
109
+ let updatePackageScripts;
110
+ if (_isCRA) {
111
+ plugins = ['@nx/vite'];
112
+ updatePackageScripts = true;
113
+ }
114
+ else {
115
+ const { plugins: _plugins, updatePackageScripts: _updatePackageScripts } = await detectPlugins(nxJson, options.interactive);
116
+ plugins = _plugins;
117
+ updatePackageScripts = _updatePackageScripts;
118
+ }
119
+ output_1.output.log({ title: '📦 Installing Nx' });
120
+ (0, configure_plugins_1.installPluginPackages)(repoRoot, pmc, plugins);
121
+ await (0, configure_plugins_1.configurePlugins)(plugins, updatePackageScripts, pmc, repoRoot, options.verbose);
102
122
  }
103
- else {
104
- const { plugins: _plugins, updatePackageScripts: _updatePackageScripts } = await detectPlugins(nxJson, options.interactive);
105
- plugins = _plugins;
106
- updatePackageScripts = _updatePackageScripts;
123
+ let useNxCloud = options.nxCloud;
124
+ if (useNxCloud === undefined) {
125
+ output_1.output.log({ title: '🛠️ Setting up Self-Healing CI and Remote Caching' });
126
+ useNxCloud = options.interactive
127
+ ? await (0, connect_to_nx_cloud_1.connectExistingRepoToNxCloudPrompt)()
128
+ : false;
107
129
  }
108
- output_1.output.log({ title: '📦 Installing Nx' });
109
- (0, configure_plugins_1.installPluginPackages)(repoRoot, pmc, plugins);
110
- await (0, configure_plugins_1.configurePlugins)(plugins, updatePackageScripts, pmc, repoRoot, options.verbose);
111
130
  if (useNxCloud) {
112
- output_1.output.log({ title: '🛠️ Setting up Nx Cloud' });
113
131
  await (0, utils_1.initCloud)('nx-init');
114
132
  }
115
133
  (0, utils_1.printFinalMessage)({
134
+ learnMoreLink: _isMonorepo
135
+ ? 'https://nx.dev/recipes/adopting-nx/adding-to-monorepo'
136
+ : 'https://nx.dev/getting-started/adding-to-existing',
116
137
  appendLines: _isMonorepo
117
138
  ? [
118
139
  `- Learn how Nx helps manage your TypeScript monorepo at https://nx.dev/features/maintain-ts-monorepos.`,
119
140
  ]
120
- : [
121
- `- Learn how Nx works with any type of project at https://nx.dev/recipes/adopting-nx/adding-to-existing-project.`,
122
- ],
141
+ : [],
123
142
  });
124
143
  }
125
144
  const npmPackageToPluginMap = {