nx 19.5.2 → 19.5.3

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 (50) hide show
  1. package/bin/nx-cloud.d.ts +2 -1
  2. package/bin/nx-cloud.js +9 -17
  3. package/package.json +12 -12
  4. package/src/command-line/list/list.js +10 -14
  5. package/src/command-line/release/command-object.js +5 -21
  6. package/src/command-line/reset/command-object.d.ts +1 -0
  7. package/src/command-line/reset/command-object.js +4 -0
  8. package/src/command-line/reset/reset.js +13 -0
  9. package/src/command-line/run/run.js +2 -14
  10. package/src/command-line/watch/watch.js +1 -1
  11. package/src/daemon/socket-utils.js +1 -1
  12. package/src/daemon/tmp-dir.d.ts +1 -1
  13. package/src/daemon/tmp-dir.js +3 -2
  14. package/src/migrations/update-16-0-0/update-nx-cloud-runner.js +2 -0
  15. package/src/migrations/update-18-0-0/disable-crystal-for-existing-workspaces.d.ts +1 -1
  16. package/src/migrations/update-18-0-0/disable-crystal-for-existing-workspaces.js +3 -1
  17. package/src/native/nx.wasm32-wasi.wasm +0 -0
  18. package/src/nx-cloud/generators/connect-to-nx-cloud/connect-to-nx-cloud.js +2 -10
  19. package/src/nx-cloud/utilities/client.d.ts +10 -0
  20. package/src/nx-cloud/utilities/client.js +35 -0
  21. package/src/nx-cloud/utilities/url-shorten.d.ts +2 -2
  22. package/src/nx-cloud/utilities/url-shorten.js +13 -6
  23. package/src/tasks-runner/run-command.d.ts +4 -4
  24. package/src/tasks-runner/run-command.js +22 -17
  25. package/src/tasks-runner/task-graph-utils.d.ts +3 -0
  26. package/src/tasks-runner/task-graph-utils.js +34 -0
  27. package/src/tasks-runner/utils.js +9 -5
  28. package/src/utils/chunkify.d.ts +10 -0
  29. package/src/utils/chunkify.js +19 -12
  30. package/src/utils/command-line-utils.d.ts +3 -0
  31. package/src/utils/command-line-utils.js +11 -7
  32. package/src/utils/git-utils.js +14 -4
  33. package/src/utils/plugins/core-plugins.d.ts +6 -3
  34. package/src/utils/plugins/core-plugins.js +107 -115
  35. package/src/utils/plugins/index.d.ts +4 -4
  36. package/src/utils/plugins/index.js +7 -8
  37. package/src/utils/plugins/installed-plugins.d.ts +2 -3
  38. package/src/utils/plugins/installed-plugins.js +4 -31
  39. package/src/utils/plugins/local-plugins.d.ts +2 -3
  40. package/src/utils/plugins/local-plugins.js +2 -29
  41. package/src/utils/plugins/output.d.ts +5 -0
  42. package/src/utils/plugins/output.js +104 -0
  43. package/src/utils/plugins/plugin-capabilities.d.ts +12 -2
  44. package/src/utils/plugins/plugin-capabilities.js +2 -87
  45. package/src/utils/plugins/community-plugins.d.ts +0 -2
  46. package/src/utils/plugins/community-plugins.js +0 -28
  47. package/src/utils/plugins/models.d.ts +0 -22
  48. package/src/utils/plugins/models.js +0 -2
  49. package/src/utils/plugins/shared.d.ts +0 -1
  50. package/src/utils/plugins/shared.js +0 -7
@@ -215,16 +215,20 @@ function getOutputsForTargetAndConfiguration(taskTargetOrTask, overridesOrNode,
215
215
  };
216
216
  if (targetConfiguration?.outputs) {
217
217
  validateOutputs(targetConfiguration.outputs);
218
- return targetConfiguration.outputs
219
- .map((output) => {
220
- return interpolate(output, {
218
+ const result = new Set();
219
+ for (const output of targetConfiguration.outputs) {
220
+ const interpolatedOutput = interpolate(output, {
221
221
  projectRoot: node.data.root,
222
222
  projectName: node.name,
223
223
  project: { ...node.data, name: node.name }, // this is legacy
224
224
  options,
225
225
  });
226
- })
227
- .filter((output) => !!output && !output.match(/{(projectRoot|workspaceRoot|(options.*))}/));
226
+ if (!!interpolatedOutput &&
227
+ !interpolatedOutput.match(/{(projectRoot|workspaceRoot|(options.*))}/)) {
228
+ result.add(interpolatedOutput);
229
+ }
230
+ }
231
+ return Array.from(result);
228
232
  }
229
233
  // Keep backwards compatibility in case `outputs` doesn't exist
230
234
  if (options.outputPath) {
@@ -1 +1,11 @@
1
1
  export declare function chunkify(target: string[], maxChunkLength?: number): string[][];
2
+ /**
3
+ * Get the maximum length of a command-line argument string based on current platform
4
+ *
5
+ * https://serverfault.com/questions/69430/what-is-the-maximum-length-of-a-command-line-in-mac-os-x
6
+ * https://support.microsoft.com/en-us/help/830473/command-prompt-cmd-exe-command-line-string-limitation
7
+ * https://unix.stackexchange.com/a/120652
8
+ *
9
+ * Taken from: https://github.com/lint-staged/lint-staged/blob/adf50b00669f6aac2eeca25dd28ff86a9a3c2a48/lib/index.js#L21-L37
10
+ */
11
+ export declare function getMaxArgLength(): 262144 | 8191 | 131072;
@@ -1,8 +1,8 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.chunkify = chunkify;
4
- const child_process_1 = require("child_process");
5
- const TERMINAL_SIZE = process.platform === 'win32' ? 8192 : getUnixTerminalSize();
4
+ exports.getMaxArgLength = getMaxArgLength;
5
+ const TERMINAL_SIZE = getMaxArgLength();
6
6
  function chunkify(target, maxChunkLength = TERMINAL_SIZE - 500) {
7
7
  const chunks = [];
8
8
  let currentChunk = [];
@@ -23,15 +23,22 @@ function chunkify(target, maxChunkLength = TERMINAL_SIZE - 500) {
23
23
  chunks.push(currentChunk);
24
24
  return chunks;
25
25
  }
26
- function getUnixTerminalSize() {
27
- try {
28
- const argMax = (0, child_process_1.execSync)('getconf ARG_MAX').toString().trim();
29
- return Number.parseInt(argMax);
30
- }
31
- catch {
32
- // This number varies by system, but 100k seems like a safe
33
- // number from some research...
34
- // https://stackoverflow.com/questions/19354870/bash-command-line-and-input-limit
35
- return 100000;
26
+ /**
27
+ * Get the maximum length of a command-line argument string based on current platform
28
+ *
29
+ * https://serverfault.com/questions/69430/what-is-the-maximum-length-of-a-command-line-in-mac-os-x
30
+ * https://support.microsoft.com/en-us/help/830473/command-prompt-cmd-exe-command-line-string-limitation
31
+ * https://unix.stackexchange.com/a/120652
32
+ *
33
+ * Taken from: https://github.com/lint-staged/lint-staged/blob/adf50b00669f6aac2eeca25dd28ff86a9a3c2a48/lib/index.js#L21-L37
34
+ */
35
+ function getMaxArgLength() {
36
+ switch (process.platform) {
37
+ case 'darwin':
38
+ return 262144;
39
+ case 'win32':
40
+ return 8191;
41
+ default:
42
+ return 131072;
36
43
  }
37
44
  }
@@ -41,6 +41,9 @@ export declare function splitArgsIntoNxArgsAndOverrides(args: {
41
41
  __overrides_unparsed__: string[];
42
42
  };
43
43
  };
44
+ export declare function readParallelFromArgsAndEnv(args: {
45
+ [k: string]: any;
46
+ }): number;
44
47
  export declare function parseFiles(options: NxArgs): {
45
48
  files: string[];
46
49
  };
@@ -2,6 +2,7 @@
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.createOverrides = createOverrides;
4
4
  exports.splitArgsIntoNxArgsAndOverrides = splitArgsIntoNxArgsAndOverrides;
5
+ exports.readParallelFromArgsAndEnv = readParallelFromArgsAndEnv;
5
6
  exports.parseFiles = parseFiles;
6
7
  exports.getProjectRoots = getProjectRoots;
7
8
  exports.readGraphFileFromGraphArg = readGraphFileFromGraphArg;
@@ -112,23 +113,26 @@ function splitArgsIntoNxArgsAndOverrides(args, mode, options = { printWarnings:
112
113
  nxArgs.skipNxCache = process.env.NX_SKIP_NX_CACHE === 'true';
113
114
  }
114
115
  normalizeNxArgsRunner(nxArgs, nxJson, options);
116
+ nxArgs['parallel'] = readParallelFromArgsAndEnv(args);
117
+ return { nxArgs, overrides };
118
+ }
119
+ function readParallelFromArgsAndEnv(args) {
115
120
  if (args['parallel'] === 'false' || args['parallel'] === false) {
116
- nxArgs['parallel'] = 1;
121
+ return 1;
117
122
  }
118
123
  else if (args['parallel'] === 'true' ||
119
124
  args['parallel'] === true ||
120
125
  args['parallel'] === '' ||
121
- process.env.NX_PARALLEL // dont require passing --parallel if NX_PARALLEL is set
122
- ) {
123
- nxArgs['parallel'] = Number(nxArgs['maxParallel'] ||
124
- nxArgs['max-parallel'] ||
126
+ // dont require passing --parallel if NX_PARALLEL is set, but allow overriding it
127
+ (process.env.NX_PARALLEL && args['parallel'] === undefined)) {
128
+ return Number(args['maxParallel'] ||
129
+ args['max-parallel'] ||
125
130
  process.env.NX_PARALLEL ||
126
131
  3);
127
132
  }
128
133
  else if (args['parallel'] !== undefined) {
129
- nxArgs['parallel'] = Number(args['parallel']);
134
+ return Number(args['parallel']);
130
135
  }
131
- return { nxArgs, overrides };
132
136
  }
133
137
  function normalizeNxArgsRunner(nxArgs, nxJson, options) {
134
138
  if (!nxArgs.runner) {
@@ -9,26 +9,36 @@ const devkit_exports_1 = require("../devkit-exports");
9
9
  function getGithubSlugOrNull() {
10
10
  try {
11
11
  const gitRemote = (0, child_process_1.execSync)('git remote -v').toString();
12
+ // If there are no remotes, we default to github
13
+ if (!gitRemote || gitRemote.length === 0) {
14
+ return 'github';
15
+ }
12
16
  return extractUserAndRepoFromGitHubUrl(gitRemote);
13
17
  }
14
18
  catch (e) {
15
- return null;
19
+ // Probably git is not set up, so we default to github
20
+ return 'github';
16
21
  }
17
22
  }
18
23
  function extractUserAndRepoFromGitHubUrl(gitRemotes) {
19
24
  const regex = /^\s*(\w+)\s+(git@github\.com:|https:\/\/github\.com\/)([A-Za-z0-9_.-]+)\/([A-Za-z0-9_.-]+)\.git/gm;
25
+ const remotesPriority = ['origin', 'upstream', 'base'];
26
+ const foundRemotes = {};
20
27
  let firstGitHubUrl = null;
21
28
  let match;
22
29
  while ((match = regex.exec(gitRemotes)) !== null) {
23
30
  const remoteName = match[1];
24
31
  const url = match[2] + match[3] + '/' + match[4] + '.git';
25
- if (remoteName === 'origin') {
26
- return parseGitHubUrl(url);
27
- }
32
+ foundRemotes[remoteName] = url;
28
33
  if (!firstGitHubUrl) {
29
34
  firstGitHubUrl = url;
30
35
  }
31
36
  }
37
+ for (const remote of remotesPriority) {
38
+ if (foundRemotes[remote]) {
39
+ return parseGitHubUrl(foundRemotes[remote]);
40
+ }
41
+ }
32
42
  return firstGitHubUrl ? parseGitHubUrl(firstGitHubUrl) : null;
33
43
  }
34
44
  function parseGitHubUrl(url) {
@@ -1,3 +1,6 @@
1
- import type { CorePlugin, PluginCapabilities } from './models';
2
- export declare function fetchCorePlugins(): CorePlugin[];
3
- export declare function listCorePlugins(installedPlugins: Map<string, PluginCapabilities>, corePlugins: CorePlugin[]): void;
1
+ export interface CorePlugin {
2
+ name: string;
3
+ capabilities: 'executors' | 'generators' | 'executors,generators' | 'graph';
4
+ link?: string;
5
+ }
6
+ export declare const CORE_PLUGINS: CorePlugin[];
@@ -1,117 +1,109 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.fetchCorePlugins = fetchCorePlugins;
4
- exports.listCorePlugins = listCorePlugins;
5
- const chalk = require("chalk");
6
- const output_1 = require("../output");
7
- function fetchCorePlugins() {
8
- return [
9
- {
10
- name: '@nx/angular',
11
- capabilities: 'executors,generators',
12
- },
13
- {
14
- name: '@nx/cypress',
15
- capabilities: 'executors,generators',
16
- },
17
- {
18
- name: '@nx/detox',
19
- capabilities: 'executors,generators',
20
- },
21
- {
22
- name: '@nx/esbuild',
23
- capabilities: 'executors,generators',
24
- },
25
- {
26
- name: '@nx/expo',
27
- capabilities: 'executors,generators',
28
- },
29
- {
30
- name: '@nx/express',
31
- capabilities: 'generators',
32
- },
33
- {
34
- name: '@nx/jest',
35
- capabilities: 'executors,generators',
36
- },
37
- {
38
- name: '@nx/js',
39
- capabilities: 'executors,generators',
40
- },
41
- {
42
- name: '@nx/eslint',
43
- capabilities: 'executors,generators',
44
- },
45
- {
46
- name: '@nx/nest',
47
- capabilities: 'generators',
48
- },
49
- {
50
- name: '@nx/next',
51
- capabilities: 'executors,generators',
52
- },
53
- {
54
- name: '@nx/node',
55
- capabilities: 'executors,generators',
56
- },
57
- {
58
- name: '@nx/nuxt',
59
- capabilities: 'generators',
60
- },
61
- {
62
- name: 'nx',
63
- capabilities: 'executors',
64
- },
65
- {
66
- name: '@nx/plugin',
67
- capabilities: 'executors,generators',
68
- },
69
- {
70
- name: '@nx/react',
71
- capabilities: 'executors,generators',
72
- },
73
- {
74
- name: '@nx/react-native',
75
- capabilities: 'executors,generators',
76
- },
77
- {
78
- name: '@nx/remix',
79
- capabilities: 'executors,generators',
80
- },
81
- {
82
- name: '@nx/rollup',
83
- capabilities: 'executors,generators',
84
- },
85
- {
86
- name: '@nx/storybook',
87
- capabilities: 'executors,generators',
88
- },
89
- {
90
- name: '@nx/vite',
91
- capabilities: 'executors,generators',
92
- },
93
- {
94
- name: '@nx/web',
95
- capabilities: 'executors,generators',
96
- },
97
- {
98
- name: '@nx/webpack',
99
- capabilities: 'executors,generators',
100
- },
101
- {
102
- name: '@nx/workspace',
103
- capabilities: 'executors,generators',
104
- },
105
- ];
106
- }
107
- function listCorePlugins(installedPlugins, corePlugins) {
108
- const alsoAvailable = corePlugins.filter((p) => !installedPlugins.has(p.name));
109
- if (alsoAvailable.length) {
110
- output_1.output.log({
111
- title: `Also available:`,
112
- bodyLines: alsoAvailable.map((p) => {
113
- return `${chalk.bold(p.name)} (${p.capabilities})`;
114
- }),
115
- });
116
- }
117
- }
3
+ exports.CORE_PLUGINS = void 0;
4
+ exports.CORE_PLUGINS = [
5
+ {
6
+ name: '@nx/angular',
7
+ capabilities: 'executors,generators',
8
+ },
9
+ {
10
+ name: '@nx/cypress',
11
+ capabilities: 'executors,generators',
12
+ },
13
+ {
14
+ name: '@nx/detox',
15
+ capabilities: 'executors,generators',
16
+ },
17
+ {
18
+ name: '@nx/esbuild',
19
+ capabilities: 'executors,generators',
20
+ },
21
+ {
22
+ name: '@nx/expo',
23
+ capabilities: 'executors,generators',
24
+ },
25
+ {
26
+ name: '@nx/express',
27
+ capabilities: 'generators',
28
+ },
29
+ {
30
+ name: '@nx/gradle',
31
+ capabilities: 'graph',
32
+ },
33
+ {
34
+ name: '@nx/jest',
35
+ capabilities: 'executors,generators',
36
+ },
37
+ {
38
+ name: '@nx/js',
39
+ capabilities: 'executors,generators',
40
+ },
41
+ {
42
+ name: '@nx/eslint',
43
+ capabilities: 'executors,generators',
44
+ },
45
+ {
46
+ name: '@nx/nest',
47
+ capabilities: 'generators',
48
+ },
49
+ {
50
+ name: '@nx/next',
51
+ capabilities: 'executors,generators',
52
+ },
53
+ {
54
+ name: '@nx/node',
55
+ capabilities: 'executors,generators',
56
+ },
57
+ {
58
+ name: '@nx/nuxt',
59
+ capabilities: 'generators',
60
+ },
61
+ {
62
+ name: 'nx',
63
+ capabilities: 'executors',
64
+ },
65
+ {
66
+ name: '@nx/plugin',
67
+ capabilities: 'executors,generators',
68
+ },
69
+ {
70
+ name: '@nx/react',
71
+ capabilities: 'executors,generators',
72
+ },
73
+ {
74
+ name: '@nx/react-native',
75
+ capabilities: 'executors,generators',
76
+ },
77
+ {
78
+ name: '@nx/remix',
79
+ capabilities: 'executors,generators',
80
+ },
81
+ {
82
+ name: '@nx/rollup',
83
+ capabilities: 'executors,generators',
84
+ },
85
+ {
86
+ name: '@nx/storybook',
87
+ capabilities: 'executors,generators',
88
+ },
89
+ {
90
+ name: '@nx/vite',
91
+ capabilities: 'executors,generators',
92
+ },
93
+ {
94
+ name: '@nx/vue',
95
+ capabilities: 'generators',
96
+ },
97
+ {
98
+ name: '@nx/web',
99
+ capabilities: 'executors,generators',
100
+ },
101
+ {
102
+ name: '@nx/webpack',
103
+ capabilities: 'executors,generators',
104
+ },
105
+ {
106
+ name: '@nx/workspace',
107
+ capabilities: 'executors,generators',
108
+ },
109
+ ];
@@ -1,4 +1,4 @@
1
- export { fetchCommunityPlugins } from './community-plugins';
2
- export { fetchCorePlugins, listCorePlugins } from './core-plugins';
3
- export { getInstalledPluginsAndCapabilities, listInstalledPlugins, } from './installed-plugins';
4
- export { getPluginCapabilities, listPluginCapabilities, } from './plugin-capabilities';
1
+ export { getInstalledPluginsAndCapabilities } from './installed-plugins';
2
+ export { getLocalWorkspacePlugins } from './local-plugins';
3
+ export { listPlugins, listAlsoAvailableCorePlugins, listPluginCapabilities, } from './output';
4
+ export { getPluginCapabilities } from './plugin-capabilities';
@@ -1,14 +1,13 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.listPluginCapabilities = exports.getPluginCapabilities = exports.listInstalledPlugins = exports.getInstalledPluginsAndCapabilities = exports.listCorePlugins = exports.fetchCorePlugins = exports.fetchCommunityPlugins = void 0;
4
- var community_plugins_1 = require("./community-plugins");
5
- Object.defineProperty(exports, "fetchCommunityPlugins", { enumerable: true, get: function () { return community_plugins_1.fetchCommunityPlugins; } });
6
- var core_plugins_1 = require("./core-plugins");
7
- Object.defineProperty(exports, "fetchCorePlugins", { enumerable: true, get: function () { return core_plugins_1.fetchCorePlugins; } });
8
- Object.defineProperty(exports, "listCorePlugins", { enumerable: true, get: function () { return core_plugins_1.listCorePlugins; } });
3
+ exports.getPluginCapabilities = exports.listPluginCapabilities = exports.listAlsoAvailableCorePlugins = exports.listPlugins = exports.getLocalWorkspacePlugins = exports.getInstalledPluginsAndCapabilities = void 0;
9
4
  var installed_plugins_1 = require("./installed-plugins");
10
5
  Object.defineProperty(exports, "getInstalledPluginsAndCapabilities", { enumerable: true, get: function () { return installed_plugins_1.getInstalledPluginsAndCapabilities; } });
11
- Object.defineProperty(exports, "listInstalledPlugins", { enumerable: true, get: function () { return installed_plugins_1.listInstalledPlugins; } });
6
+ var local_plugins_1 = require("./local-plugins");
7
+ Object.defineProperty(exports, "getLocalWorkspacePlugins", { enumerable: true, get: function () { return local_plugins_1.getLocalWorkspacePlugins; } });
8
+ var output_1 = require("./output");
9
+ Object.defineProperty(exports, "listPlugins", { enumerable: true, get: function () { return output_1.listPlugins; } });
10
+ Object.defineProperty(exports, "listAlsoAvailableCorePlugins", { enumerable: true, get: function () { return output_1.listAlsoAvailableCorePlugins; } });
11
+ Object.defineProperty(exports, "listPluginCapabilities", { enumerable: true, get: function () { return output_1.listPluginCapabilities; } });
12
12
  var plugin_capabilities_1 = require("./plugin-capabilities");
13
13
  Object.defineProperty(exports, "getPluginCapabilities", { enumerable: true, get: function () { return plugin_capabilities_1.getPluginCapabilities; } });
14
- Object.defineProperty(exports, "listPluginCapabilities", { enumerable: true, get: function () { return plugin_capabilities_1.listPluginCapabilities; } });
@@ -1,6 +1,5 @@
1
- import type { PluginCapabilities } from './models';
2
- import { PackageJson } from '../package-json';
3
1
  import { ProjectConfiguration } from '../../config/workspace-json-project-json';
2
+ import { PackageJson } from '../package-json';
3
+ import { PluginCapabilities } from './plugin-capabilities';
4
4
  export declare function findInstalledPlugins(): PackageJson[];
5
5
  export declare function getInstalledPluginsAndCapabilities(workspaceRoot: string, projects: Record<string, ProjectConfiguration>): Promise<Map<string, PluginCapabilities>>;
6
- export declare function listInstalledPlugins(installedPlugins: Map<string, PluginCapabilities>): void;
@@ -2,17 +2,13 @@
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.findInstalledPlugins = findInstalledPlugins;
4
4
  exports.getInstalledPluginsAndCapabilities = getInstalledPluginsAndCapabilities;
5
- exports.listInstalledPlugins = listInstalledPlugins;
6
- const chalk = require("chalk");
7
- const output_1 = require("../output");
8
- const plugin_capabilities_1 = require("./plugin-capabilities");
9
- const shared_1 = require("./shared");
10
- const fileutils_1 = require("../fileutils");
11
- const package_json_1 = require("../package-json");
12
- const workspace_root_1 = require("../workspace-root");
13
5
  const path_1 = require("path");
14
6
  const nx_json_1 = require("../../config/nx-json");
7
+ const fileutils_1 = require("../fileutils");
15
8
  const installation_directory_1 = require("../installation-directory");
9
+ const package_json_1 = require("../package-json");
10
+ const workspace_root_1 = require("../workspace-root");
11
+ const plugin_capabilities_1 = require("./plugin-capabilities");
16
12
  function findInstalledPlugins() {
17
13
  const packageJsonDeps = getDependenciesFromPackageJson();
18
14
  const nxJsonDeps = getDependenciesFromNxJson();
@@ -78,26 +74,3 @@ async function getInstalledPluginsAndCapabilities(workspaceRoot, projects) {
78
74
  }
79
75
  return result;
80
76
  }
81
- function listInstalledPlugins(installedPlugins) {
82
- const bodyLines = [];
83
- for (const [, p] of installedPlugins) {
84
- const capabilities = [];
85
- if ((0, shared_1.hasElements)(p.executors)) {
86
- capabilities.push('executors');
87
- }
88
- if ((0, shared_1.hasElements)(p.generators)) {
89
- capabilities.push('generators');
90
- }
91
- if (p.projectGraphExtension) {
92
- capabilities.push('graph-extensions');
93
- }
94
- if (p.projectInference) {
95
- capabilities.push('project-inference');
96
- }
97
- bodyLines.push(`${chalk.bold(p.name)} (${capabilities.join()})`);
98
- }
99
- output_1.output.log({
100
- title: `Installed plugins:`,
101
- bodyLines: bodyLines,
102
- });
103
- }
@@ -1,5 +1,4 @@
1
- import type { PluginCapabilities } from './models';
2
- import { ProjectsConfigurations } from '../../config/workspace-json-project-json';
3
1
  import { NxJsonConfiguration } from '../../config/nx-json';
2
+ import { ProjectsConfigurations } from '../../config/workspace-json-project-json';
3
+ import { PluginCapabilities } from './plugin-capabilities';
4
4
  export declare function getLocalWorkspacePlugins(projectsConfiguration: ProjectsConfigurations, nxJson: NxJsonConfiguration): Promise<Map<string, PluginCapabilities>>;
5
- export declare function listLocalWorkspacePlugins(installedPlugins: Map<string, PluginCapabilities>): void;
@@ -1,14 +1,10 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.getLocalWorkspacePlugins = getLocalWorkspacePlugins;
4
- exports.listLocalWorkspacePlugins = listLocalWorkspacePlugins;
5
- const chalk = require("chalk");
6
- const output_1 = require("../output");
7
- const shared_1 = require("./shared");
8
- const fileutils_1 = require("../fileutils");
4
+ const fs_1 = require("fs");
9
5
  const path_1 = require("path");
6
+ const fileutils_1 = require("../fileutils");
10
7
  const workspace_root_1 = require("../workspace-root");
11
- const fs_1 = require("fs");
12
8
  const plugin_capabilities_1 = require("./plugin-capabilities");
13
9
  async function getLocalWorkspacePlugins(projectsConfiguration, nxJson) {
14
10
  const plugins = new Map();
@@ -32,26 +28,3 @@ async function getLocalWorkspacePlugins(projectsConfiguration, nxJson) {
32
28
  }
33
29
  return plugins;
34
30
  }
35
- function listLocalWorkspacePlugins(installedPlugins) {
36
- const bodyLines = [];
37
- for (const [, p] of installedPlugins) {
38
- const capabilities = [];
39
- if ((0, shared_1.hasElements)(p.executors)) {
40
- capabilities.push('executors');
41
- }
42
- if ((0, shared_1.hasElements)(p.generators)) {
43
- capabilities.push('generators');
44
- }
45
- if (p.projectGraphExtension) {
46
- capabilities.push('graph-extension');
47
- }
48
- if (p.projectInference) {
49
- capabilities.push('project-inference');
50
- }
51
- bodyLines.push(`${chalk.bold(p.name)} (${capabilities.join()})`);
52
- }
53
- output_1.output.log({
54
- title: `Local workspace plugins:`,
55
- bodyLines: bodyLines,
56
- });
57
- }
@@ -0,0 +1,5 @@
1
+ import { ProjectConfiguration } from '../../config/workspace-json-project-json';
2
+ import { PluginCapabilities } from './plugin-capabilities';
3
+ export declare function listPlugins(plugins: Map<string, PluginCapabilities>, title: string): void;
4
+ export declare function listAlsoAvailableCorePlugins(installedPlugins: Map<string, PluginCapabilities>): void;
5
+ export declare function listPluginCapabilities(pluginName: string, projects: Record<string, ProjectConfiguration>): Promise<void>;