create-nx-plugin 15.9.2 → 16.0.0-beta.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.
@@ -1,2 +1,25 @@
1
1
  #!/usr/bin/env node
2
+ import yargs = require('yargs');
3
+ import { CI } from 'create-nx-workspace/src/utils/ci/ci-list';
4
+ import type { PackageManager } from 'create-nx-workspace/src/utils/package-manager';
5
+ export declare const yargsDecorator: {
6
+ 'Options:': string;
7
+ 'Examples:': string;
8
+ boolean: string;
9
+ count: string;
10
+ string: string;
11
+ array: string;
12
+ required: string;
13
+ 'default:': string;
14
+ 'choices:': string;
15
+ 'aliases:': string;
16
+ };
17
+ interface CreateNxPluginArguments {
18
+ pluginName: string;
19
+ packageManager: PackageManager;
20
+ ci: CI;
21
+ allPrompts: boolean;
22
+ nxCloud: boolean;
23
+ }
24
+ export declare const commandsObject: yargs.Argv<CreateNxPluginArguments>;
2
25
  export {};
@@ -1,114 +1,28 @@
1
1
  #!/usr/bin/env node
2
2
  "use strict";
3
3
  Object.defineProperty(exports, "__esModule", { value: true });
4
- // we can't import from '@nrwl/workspace' because it will require typescript
5
- const devkit_1 = require("@nrwl/devkit");
6
- const child_process_1 = require("child_process");
7
- const fs_1 = require("fs");
8
- const path = require("path");
9
- const tmp_1 = require("tmp");
10
- const shared_1 = require("./shared");
11
- const detect_invoked_package_manager_1 = require("./detect-invoked-package-manager");
4
+ exports.commandsObject = exports.yargsDecorator = void 0;
5
+ const tslib_1 = require("tslib");
6
+ const chalk = require("chalk");
12
7
  const enquirer = require("enquirer");
13
- const yargsParser = require("yargs-parser");
8
+ const yargs = require("yargs");
9
+ const prompts_1 = require("create-nx-workspace/src/internal-utils/prompts");
10
+ const yargs_options_1 = require("create-nx-workspace/src/internal-utils/yargs-options");
11
+ const create_nx_workspace_1 = require("create-nx-workspace");
12
+ const output_1 = require("create-nx-workspace/src/utils/output");
13
+ exports.yargsDecorator = {
14
+ 'Options:': `${chalk.green `Options`}:`,
15
+ 'Examples:': `${chalk.green `Examples`}:`,
16
+ boolean: `${chalk.blue `boolean`}`,
17
+ count: `${chalk.blue `count`}`,
18
+ string: `${chalk.blue `string`}`,
19
+ array: `${chalk.blue `array`}`,
20
+ required: `${chalk.blue `required`}`,
21
+ 'default:': `${chalk.blue `default`}:`,
22
+ 'choices:': `${chalk.blue `choices`}:`,
23
+ 'aliases:': `${chalk.blue `aliases`}:`,
24
+ };
14
25
  const nxVersion = require('../package.json').version;
15
- const tsVersion = '~4.9.5'; // This gets replaced with the typescript version in the root package.json during build
16
- const prettierVersion = '^2.6.2'; // This gets replaced with the prettier version in the root package.json during build
17
- const parsedArgs = yargsParser(process.argv, {
18
- string: ['pluginName', 'packageManager', 'importPath'],
19
- alias: {
20
- importPath: 'import-path',
21
- pluginName: 'plugin-name',
22
- packageManager: 'pm',
23
- },
24
- boolean: ['help'],
25
- });
26
- function createSandbox(packageManager) {
27
- console.log(`Creating a sandbox with Nx...`);
28
- const tmpDir = (0, tmp_1.dirSync)().name;
29
- (0, devkit_1.writeJsonFile)(path.join(tmpDir, 'package.json'), {
30
- dependencies: {
31
- '@nrwl/workspace': nxVersion,
32
- nx: nxVersion,
33
- typescript: tsVersion,
34
- prettier: prettierVersion,
35
- },
36
- license: 'MIT',
37
- });
38
- (0, child_process_1.execSync)(`${packageManager} install --silent --ignore-scripts`, {
39
- cwd: tmpDir,
40
- stdio: [0, 1, 2],
41
- });
42
- return tmpDir;
43
- }
44
- function createWorkspace(tmpDir, packageManager, parsedArgs, name) {
45
- // Ensure to use packageManager for args
46
- // if it's not already passed in from previous process
47
- if (!parsedArgs.packageManager) {
48
- parsedArgs.packageManager = packageManager;
49
- }
50
- const args = [
51
- name,
52
- ...process.argv.slice(parsedArgs._[2] ? 3 : 2).map((a) => `"${a}"`),
53
- ].join(' ');
54
- const command = `new ${args} --preset=empty --collection=@nrwl/workspace`;
55
- console.log(command);
56
- const pmc = (0, devkit_1.getPackageManagerCommand)(packageManager);
57
- (0, child_process_1.execSync)(`${pmc.exec} nx ${command}/generators.json --nxWorkspaceRoot="${process.cwd()}"`, {
58
- stdio: [0, 1, 2],
59
- cwd: tmpDir,
60
- });
61
- (0, child_process_1.execSync)(`${packageManager} add -D @nrwl/nx-plugin@${nxVersion}`, {
62
- cwd: name,
63
- stdio: [0, 1, 2],
64
- });
65
- }
66
- function createNxPlugin(workspaceName, pluginName, packageManager, parsedArgs) {
67
- var _a;
68
- const importPath = (_a = parsedArgs.importPath) !== null && _a !== void 0 ? _a : `@${workspaceName}/${pluginName}`;
69
- const command = `nx generate @nrwl/nx-plugin:plugin ${pluginName} --importPath=${importPath}`;
70
- console.log(command);
71
- const pmc = (0, devkit_1.getPackageManagerCommand)(packageManager);
72
- (0, child_process_1.execSync)(`${pmc.exec} ${command}`, {
73
- cwd: workspaceName,
74
- stdio: [0, 1, 2],
75
- });
76
- }
77
- function updateWorkspace(workspaceName) {
78
- const nxJsonPath = path.join(workspaceName, 'nx.json');
79
- const nxJson = (0, devkit_1.readJsonFile)(nxJsonPath);
80
- nxJson.workspaceLayout = {
81
- appsDir: 'e2e',
82
- libsDir: 'packages',
83
- };
84
- (0, devkit_1.writeJsonFile)(nxJsonPath, nxJson);
85
- (0, fs_1.rmSync)(path.join(workspaceName, 'apps'), { recursive: true, force: true });
86
- (0, fs_1.rmSync)(path.join(workspaceName, 'libs'), { recursive: true, force: true });
87
- }
88
- function determineWorkspaceName(parsedArgs) {
89
- const workspaceName = parsedArgs._[2];
90
- if (workspaceName) {
91
- return Promise.resolve(workspaceName);
92
- }
93
- return enquirer
94
- .prompt([
95
- {
96
- name: 'WorkspaceName',
97
- message: `Workspace name (e.g., org name) `,
98
- type: 'input',
99
- },
100
- ])
101
- .then((a) => {
102
- if (!a.WorkspaceName) {
103
- devkit_1.output.error({
104
- title: 'Invalid workspace name',
105
- bodyLines: [`Workspace name cannot be empty`],
106
- });
107
- process.exit(1);
108
- }
109
- return a.WorkspaceName;
110
- });
111
- }
112
26
  function determinePluginName(parsedArgs) {
113
27
  if (parsedArgs.pluginName) {
114
28
  return Promise.resolve(parsedArgs.pluginName);
@@ -116,51 +30,83 @@ function determinePluginName(parsedArgs) {
116
30
  return enquirer
117
31
  .prompt([
118
32
  {
119
- name: 'PluginName',
33
+ name: 'pluginName',
120
34
  message: `Plugin name `,
121
35
  type: 'input',
36
+ validate: (s) => (s.length ? true : 'Name cannot be empty'),
122
37
  },
123
38
  ])
124
39
  .then((a) => {
125
- if (!a.PluginName) {
126
- devkit_1.output.error({
40
+ if (!a.pluginName) {
41
+ output_1.output.error({
127
42
  title: 'Invalid name',
128
43
  bodyLines: [`Name cannot be empty`],
129
44
  });
130
45
  process.exit(1);
131
46
  }
132
- return a.PluginName;
47
+ return a.pluginName;
133
48
  });
134
49
  }
135
- function showHelp() {
136
- console.log(`
137
- Usage: <name> [options]
138
-
139
- Create a new Nx workspace
140
-
141
- Args:
142
-
143
- name workspace name (e.g., org name)
144
-
145
- Options:
146
-
147
- pluginName the name of the plugin to be created
148
- `);
149
- }
150
- if (parsedArgs.help) {
151
- showHelp();
152
- process.exit(0);
153
- }
154
- const packageManager = parsedArgs.packageManager || (0, detect_invoked_package_manager_1.detectInvokedPackageManager)();
155
- determineWorkspaceName(parsedArgs).then((workspaceName) => {
156
- return determinePluginName(parsedArgs).then((pluginName) => {
157
- const tmpDir = createSandbox(packageManager);
158
- createWorkspace(tmpDir, packageManager, parsedArgs, workspaceName);
159
- updateWorkspace(workspaceName);
160
- createNxPlugin(workspaceName, pluginName, packageManager, parsedArgs);
161
- return (0, shared_1.initializeGitRepo)(workspaceName).then(() => {
162
- (0, shared_1.showNxWarning)(workspaceName);
50
+ exports.commandsObject = yargs
51
+ .wrap(yargs.terminalWidth())
52
+ .parserConfiguration({
53
+ 'strip-dashed': true,
54
+ 'dot-notation': true,
55
+ })
56
+ .command(
57
+ // this is the default and only command
58
+ '$0 [name] [options]', 'Create a new Nx plugin workspace', (yargs) => (0, yargs_options_1.withOptions)(yargs.positional('pluginName', {
59
+ describe: chalk.dim `Plugin name`,
60
+ type: 'string',
61
+ alias: ['name'],
62
+ }), yargs_options_1.withNxCloud, yargs_options_1.withCI, yargs_options_1.withAllPrompts, yargs_options_1.withPackageManager, yargs_options_1.withGitOptions), (argv) => tslib_1.__awaiter(void 0, void 0, void 0, function* () {
63
+ yield main(argv).catch((error) => {
64
+ const { version } = require('../package.json');
65
+ output_1.output.error({
66
+ title: `Something went wrong! v${version}`,
163
67
  });
68
+ throw error;
164
69
  });
165
- });
70
+ }), [normalizeArgsMiddleware])
71
+ .help('help', chalk.dim `Show help`)
72
+ .updateLocale(exports.yargsDecorator)
73
+ .version('version', chalk.dim `Show version`, nxVersion);
74
+ function main(parsedArgs) {
75
+ return tslib_1.__awaiter(this, void 0, void 0, function* () {
76
+ const populatedArguments = Object.assign(Object.assign({}, parsedArgs), { name: parsedArgs.pluginName.includes('/')
77
+ ? parsedArgs.pluginName.split('/')[1]
78
+ : parsedArgs.pluginName });
79
+ yield (0, create_nx_workspace_1.createWorkspace)('@nrwl/nx-plugin', populatedArguments);
80
+ });
81
+ }
82
+ /**
83
+ * This function is used to normalize the arguments passed to the command.
84
+ * It would:
85
+ * - normalize the preset.
86
+ * @param argv user arguments
87
+ */
88
+ function normalizeArgsMiddleware(argv) {
89
+ return tslib_1.__awaiter(this, void 0, void 0, function* () {
90
+ try {
91
+ const name = yield determinePluginName(argv);
92
+ const packageManager = yield (0, prompts_1.determinePackageManager)(argv);
93
+ const defaultBase = yield (0, prompts_1.determineDefaultBase)(argv);
94
+ const nxCloud = yield (0, prompts_1.determineNxCloud)(argv);
95
+ const ci = yield (0, prompts_1.determineCI)(argv, nxCloud);
96
+ Object.assign(argv, {
97
+ name,
98
+ nxCloud,
99
+ packageManager,
100
+ defaultBase,
101
+ ci,
102
+ });
103
+ }
104
+ catch (e) {
105
+ console.error(e);
106
+ process.exit(1);
107
+ }
108
+ });
109
+ }
110
+ // Trigger Yargs
111
+ exports.commandsObject.argv;
166
112
  //# sourceMappingURL=create-nx-plugin.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"create-nx-plugin.js","sourceRoot":"","sources":["../../../../packages/create-nx-plugin/bin/create-nx-plugin.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"create-nx-plugin.js","sourceRoot":"","sources":["../../../../packages/create-nx-plugin/bin/create-nx-plugin.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "create-nx-plugin",
3
- "version": "15.9.2",
3
+ "version": "16.0.0-beta.0",
4
4
  "private": false,
5
5
  "description": "This package is used to scaffold a brand-new workspace used to develop an Nx plugin, and sets up a pre-configured plugin with the specified name. The new plugin is created with a default generator, executor, and e2e app.",
6
6
  "repository": {
@@ -29,16 +29,15 @@
29
29
  },
30
30
  "homepage": "https://nx.dev",
31
31
  "dependencies": {
32
- "@nrwl/devkit": "15.9.2",
32
+ "chalk": "^4.1.0",
33
+ "create-nx-workspace": "16.0.0-beta.0",
33
34
  "enquirer": "~2.3.6",
34
- "nx": "15.9.2",
35
- "tmp": "~0.2.1",
36
- "yargs-parser": "21.1.1"
35
+ "yargs": "^17.6.2"
37
36
  },
38
37
  "publishConfig": {
39
38
  "access": "public"
40
39
  },
41
40
  "main": "./bin/create-nx-plugin.js",
42
41
  "types": "./bin/create-nx-plugin.d.ts",
43
- "gitHead": "c60dd8b2f03545ba7d9bbf58c10ac7b49f7f3e92"
42
+ "gitHead": "1e31d4726f2c623ede0c515429aa842e943dba47"
44
43
  }
@@ -1,13 +0,0 @@
1
- declare const packageManagerList: readonly ["pnpm", "yarn", "npm"];
2
- export type PackageManager = typeof packageManagerList[number];
3
- /**
4
- * Detects which package manager was used to invoke create-nx-{plugin|workspace} command
5
- * based on the main Module process that invokes the command
6
- * - npx returns 'npm'
7
- * - pnpx returns 'pnpm'
8
- * - yarn create returns 'yarn'
9
- *
10
- * Default to 'npm'
11
- */
12
- export declare function detectInvokedPackageManager(): PackageManager;
13
- export {};
@@ -1,31 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.detectInvokedPackageManager = void 0;
4
- const packageManagerList = ['pnpm', 'yarn', 'npm'];
5
- /**
6
- * Detects which package manager was used to invoke create-nx-{plugin|workspace} command
7
- * based on the main Module process that invokes the command
8
- * - npx returns 'npm'
9
- * - pnpx returns 'pnpm'
10
- * - yarn create returns 'yarn'
11
- *
12
- * Default to 'npm'
13
- */
14
- function detectInvokedPackageManager() {
15
- let detectedPackageManager = 'npm';
16
- // mainModule is deprecated since Node 14, fallback for older versions
17
- const invoker = require.main || process['mainModule'];
18
- // default to `npm`
19
- if (!invoker) {
20
- return detectedPackageManager;
21
- }
22
- for (const pkgManager of packageManagerList) {
23
- if (invoker.path.includes(pkgManager)) {
24
- detectedPackageManager = pkgManager;
25
- break;
26
- }
27
- }
28
- return detectedPackageManager;
29
- }
30
- exports.detectInvokedPackageManager = detectInvokedPackageManager;
31
- //# sourceMappingURL=detect-invoked-package-manager.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"detect-invoked-package-manager.js","sourceRoot":"","sources":["../../../../packages/create-nx-plugin/bin/detect-invoked-package-manager.ts"],"names":[],"mappings":";;;AAAA,MAAM,kBAAkB,GAAG,CAAC,MAAM,EAAE,MAAM,EAAE,KAAK,CAAU,CAAC;AAI5D;;;;;;;;GAQG;AACH,SAAgB,2BAA2B;IACzC,IAAI,sBAAsB,GAAmB,KAAK,CAAC;IACnD,sEAAsE;IACtE,MAAM,OAAO,GAAG,OAAO,CAAC,IAAI,IAAI,OAAO,CAAC,YAAY,CAAC,CAAC;IAEtD,mBAAmB;IACnB,IAAI,CAAC,OAAO,EAAE;QACZ,OAAO,sBAAsB,CAAC;KAC/B;IAED,KAAK,MAAM,UAAU,IAAI,kBAAkB,EAAE;QAC3C,IAAI,OAAO,CAAC,IAAI,CAAC,QAAQ,CAAC,UAAU,CAAC,EAAE;YACrC,sBAAsB,GAAG,UAAU,CAAC;YACpC,MAAM;SACP;KACF;IAED,OAAO,sBAAsB,CAAC;AAChC,CAAC;AAlBD,kEAkBC"}
package/bin/shared.d.ts DELETED
@@ -1,3 +0,0 @@
1
- export declare function showNxWarning(workspaceName: string): void;
2
- export declare function deduceDefaultBase(): string;
3
- export declare function initializeGitRepo(directory: string): Promise<void>;
package/bin/shared.js DELETED
@@ -1,107 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.initializeGitRepo = exports.deduceDefaultBase = exports.showNxWarning = void 0;
4
- const tslib_1 = require("tslib");
5
- const path = require("path");
6
- const child_process_1 = require("child_process");
7
- const devkit_1 = require("@nrwl/devkit");
8
- function showNxWarning(workspaceName) {
9
- try {
10
- const pathToRunNxCommand = path.resolve(process.cwd(), workspaceName);
11
- (0, child_process_1.execSync)('nx --version', {
12
- cwd: pathToRunNxCommand,
13
- stdio: ['ignore', 'ignore', 'ignore'],
14
- });
15
- }
16
- catch (_a) {
17
- // no nx found
18
- devkit_1.output.addVerticalSeparator();
19
- devkit_1.output.note({
20
- title: `Nx CLI is not installed globally.`,
21
- bodyLines: [
22
- `This means that you might have to use "yarn nx" or "npx nx" to execute commands in the workspace.`,
23
- `Run "yarn global add nx" or "npm install -g nx" to be able to execute command directly.`,
24
- ],
25
- });
26
- }
27
- }
28
- exports.showNxWarning = showNxWarning;
29
- /*
30
- * Because we don't want to depend on @nrwl/workspace
31
- * we duplicate the helper functions from @nrwl/workspace in this file.
32
- */
33
- function deduceDefaultBase() {
34
- const nxDefaultBase = 'main';
35
- try {
36
- return ((0, child_process_1.execSync)('git config --get init.defaultBranch').toString().trim() ||
37
- nxDefaultBase);
38
- }
39
- catch (_a) {
40
- return nxDefaultBase;
41
- }
42
- }
43
- exports.deduceDefaultBase = deduceDefaultBase;
44
- function checkGitVersion() {
45
- try {
46
- let gitVersionOutput = (0, child_process_1.execSync)('git --version').toString().trim();
47
- return gitVersionOutput.match(/[0-9]+\.[0-9]+\.+[0-9]+/)[0];
48
- }
49
- catch (_a) {
50
- return null;
51
- }
52
- }
53
- /*
54
- * Because we don't want to depend on create-nx-workspace
55
- * we duplicate the helper functions from create-nx-workspace in this file.
56
- */
57
- function initializeGitRepo(directory) {
58
- return tslib_1.__awaiter(this, void 0, void 0, function* () {
59
- const execute = (args, ignoreErrorStream = false) => {
60
- const errorStream = ignoreErrorStream ? 'ignore' : process.stderr;
61
- const spawnOptions = {
62
- stdio: [process.stdin, 'ignore', errorStream],
63
- shell: true,
64
- cwd: directory,
65
- env: process.env,
66
- };
67
- return new Promise((resolve, reject) => {
68
- (0, child_process_1.spawn)('git', args, spawnOptions).on('close', (code) => {
69
- if (code === 0) {
70
- resolve();
71
- }
72
- else {
73
- reject(code);
74
- }
75
- });
76
- });
77
- };
78
- const gitVersion = checkGitVersion();
79
- if (!gitVersion) {
80
- return;
81
- }
82
- const insideRepo = yield execute(['rev-parse', '--is-inside-work-tree'], true).then(() => true, () => false);
83
- if (insideRepo) {
84
- devkit_1.output.log({
85
- title: 'Directory is already under version control. Skipping initialization of git.',
86
- });
87
- return;
88
- }
89
- const defaultBase = deduceDefaultBase();
90
- const [gitMajor, gitMinor] = gitVersion.split('.');
91
- if (+gitMajor > 2 || (+gitMajor === 2 && +gitMinor >= 28)) {
92
- yield execute(['init', '-b', defaultBase]);
93
- }
94
- else {
95
- yield execute(['init']);
96
- yield execute(['checkout', '-b', defaultBase]); // Git < 2.28 doesn't support -b on git init.
97
- }
98
- yield execute(['add', '.']);
99
- const message = 'Initial commit';
100
- yield execute(['commit', `-m "${message}"`]);
101
- devkit_1.output.log({
102
- title: 'Successfully initialized git.',
103
- });
104
- });
105
- }
106
- exports.initializeGitRepo = initializeGitRepo;
107
- //# sourceMappingURL=shared.js.map
package/bin/shared.js.map DELETED
@@ -1 +0,0 @@
1
- {"version":3,"file":"shared.js","sourceRoot":"","sources":["../../../../packages/create-nx-plugin/bin/shared.ts"],"names":[],"mappings":"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"}