create-nx-workspace 19.7.2 → 19.8.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.
@@ -17,6 +17,7 @@ const show_nx_warning_1 = require("../src/utils/nx/show-nx-warning");
17
17
  const ab_testing_1 = require("../src/utils/nx/ab-testing");
18
18
  const error_utils_1 = require("../src/utils/error-utils");
19
19
  const fs_1 = require("fs");
20
+ const is_ci_1 = require("../src/utils/ci/is-ci");
20
21
  exports.commandsObject = yargs
21
22
  .wrap(yargs.terminalWidth())
22
23
  .parserConfiguration({
@@ -208,6 +209,7 @@ async function determineFolder(parsedArgs) {
208
209
  message: `Where would you like to create your workspace?`,
209
210
  initial: 'org',
210
211
  type: 'input',
212
+ skip: !parsedArgs.interactive || (0, is_ci_1.isCI)(),
211
213
  },
212
214
  ]);
213
215
  invariant(reply.folderName, {
@@ -244,6 +246,7 @@ async function determineStack(parsedArgs) {
244
246
  return 'vue';
245
247
  case preset_1.Preset.Nest:
246
248
  case preset_1.Preset.NodeStandalone:
249
+ case preset_1.Preset.NodeMonorepo:
247
250
  case preset_1.Preset.Express:
248
251
  return 'node';
249
252
  case preset_1.Preset.Apps:
@@ -343,6 +346,7 @@ async function determineNoneOptions(parsedArgs) {
343
346
  },
344
347
  ],
345
348
  initial: 0,
349
+ skip: !parsedArgs.interactive || (0, is_ci_1.isCI)(),
346
350
  },
347
351
  ]);
348
352
  js = reply.ts === 'No';
@@ -440,6 +444,7 @@ async function determineReactOptions(parsedArgs) {
440
444
  message: `Default stylesheet format`,
441
445
  initial: 0,
442
446
  type: 'autocomplete',
447
+ skip: !parsedArgs.interactive || (0, is_ci_1.isCI)(),
443
448
  choices: [
444
449
  {
445
450
  name: 'css',
@@ -535,6 +540,7 @@ async function determineVueOptions(parsedArgs) {
535
540
  message: `Default stylesheet format`,
536
541
  initial: 0,
537
542
  type: 'autocomplete',
543
+ skip: !parsedArgs.interactive || (0, is_ci_1.isCI)(),
538
544
  choices: [
539
545
  {
540
546
  name: 'css',
@@ -612,6 +618,7 @@ async function determineAngularOptions(parsedArgs) {
612
618
  name: 'bundler',
613
619
  message: `Which bundler would you like to use?`,
614
620
  type: 'autocomplete',
621
+ skip: !parsedArgs.interactive || (0, is_ci_1.isCI)(),
615
622
  choices: [
616
623
  {
617
624
  name: 'esbuild',
@@ -637,6 +644,7 @@ async function determineAngularOptions(parsedArgs) {
637
644
  message: `Default stylesheet format`,
638
645
  initial: 0,
639
646
  type: 'autocomplete',
647
+ skip: !parsedArgs.interactive || (0, is_ci_1.isCI)(),
640
648
  choices: [
641
649
  {
642
650
  name: 'css',
@@ -666,6 +674,7 @@ async function determineAngularOptions(parsedArgs) {
666
674
  type: 'autocomplete',
667
675
  choices: [{ name: 'Yes' }, { name: 'No' }],
668
676
  initial: 1,
677
+ skip: !parsedArgs.interactive || (0, is_ci_1.isCI)(),
669
678
  },
670
679
  ]);
671
680
  ssr = reply.ssr === 'Yes';
@@ -726,6 +735,7 @@ async function determineNodeOptions(parsedArgs) {
726
735
  name: 'docker',
727
736
  message: 'Would you like to generate a Dockerfile? [https://docs.docker.com/]',
728
737
  type: 'autocomplete',
738
+ skip: !parsedArgs.interactive || (0, is_ci_1.isCI)(),
729
739
  choices: [
730
740
  {
731
741
  name: 'Yes',
@@ -814,6 +824,7 @@ async function determineAppName(parsedArgs) {
814
824
  message: `Application name`,
815
825
  type: 'input',
816
826
  initial: parsedArgs.name,
827
+ skip: !parsedArgs.interactive || (0, is_ci_1.isCI)(),
817
828
  },
818
829
  ]);
819
830
  invariant(appName, {
@@ -864,6 +875,7 @@ async function determineReactBundler(parsedArgs) {
864
875
  name: 'bundler',
865
876
  message: `Which bundler would you like to use?`,
866
877
  type: 'autocomplete',
878
+ skip: !parsedArgs.interactive || (0, is_ci_1.isCI)(),
867
879
  choices: [
868
880
  {
869
881
  name: 'vite',
@@ -878,6 +890,7 @@ async function determineReactBundler(parsedArgs) {
878
890
  message: 'Rspack [ https://www.rspack.dev/ ]',
879
891
  },
880
892
  ],
893
+ initial: 0,
881
894
  },
882
895
  ]);
883
896
  return reply.bundler;
@@ -890,6 +903,7 @@ async function determineNextAppDir(parsedArgs) {
890
903
  name: 'nextAppDir',
891
904
  message: 'Would you like to use the App Router (recommended)?',
892
905
  type: 'autocomplete',
906
+ skip: !parsedArgs.interactive || (0, is_ci_1.isCI)(),
893
907
  choices: [
894
908
  {
895
909
  name: 'Yes',
@@ -911,6 +925,7 @@ async function determineNextSrcDir(parsedArgs) {
911
925
  name: 'nextSrcDir',
912
926
  message: 'Would you like to use the src/ directory?',
913
927
  type: 'autocomplete',
928
+ skip: !parsedArgs.interactive || (0, is_ci_1.isCI)(),
914
929
  choices: [
915
930
  {
916
931
  name: 'Yes',
@@ -932,6 +947,7 @@ async function determineVueFramework(parsedArgs) {
932
947
  name: 'framework',
933
948
  message: 'What framework would you like to use?',
934
949
  type: 'autocomplete',
950
+ skip: !parsedArgs.interactive || (0, is_ci_1.isCI)(),
935
951
  choices: [
936
952
  {
937
953
  name: 'none',
@@ -949,13 +965,14 @@ async function determineVueFramework(parsedArgs) {
949
965
  return reply.framework;
950
966
  }
951
967
  async function determineNodeFramework(parsedArgs) {
952
- if (parsedArgs.framework)
968
+ if (!!parsedArgs.framework)
953
969
  return parsedArgs.framework;
954
970
  const reply = await enquirer.prompt([
955
971
  {
956
972
  message: 'What framework should be used?',
957
973
  type: 'autocomplete',
958
974
  name: 'framework',
975
+ skip: !parsedArgs.interactive || (0, is_ci_1.isCI)(),
959
976
  choices: [
960
977
  {
961
978
  name: 'none',
@@ -978,6 +995,7 @@ async function determineNodeFramework(parsedArgs) {
978
995
  message: 'NestJs [ https://nestjs.com/ ]',
979
996
  },
980
997
  ],
998
+ initial: 0,
981
999
  },
982
1000
  ]);
983
1001
  return reply.framework;
@@ -990,6 +1008,7 @@ async function determineE2eTestRunner(parsedArgs) {
990
1008
  message: 'Test runner to use for end to end (E2E) tests',
991
1009
  type: 'autocomplete',
992
1010
  name: 'e2eTestRunner',
1011
+ skip: !parsedArgs.interactive || (0, is_ci_1.isCI)(),
993
1012
  choices: [
994
1013
  {
995
1014
  name: 'playwright',
@@ -1004,6 +1023,7 @@ async function determineE2eTestRunner(parsedArgs) {
1004
1023
  message: 'None',
1005
1024
  },
1006
1025
  ],
1026
+ initial: 0,
1007
1027
  },
1008
1028
  ]);
1009
1029
  return reply.e2eTestRunner;
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "create-nx-workspace",
3
- "version": "19.7.2",
3
+ "version": "19.8.0-beta.0",
4
4
  "private": false,
5
5
  "description": "Smart Monorepos · Fast CI",
6
6
  "repository": {
@@ -14,7 +14,13 @@ function spawnAndWait(command, args, cwd) {
14
14
  const childProcess = (0, child_process_1.spawn)(command, args, {
15
15
  cwd,
16
16
  stdio: 'inherit',
17
- env: { ...process.env, NX_DAEMON: 'false' },
17
+ env: {
18
+ ...process.env,
19
+ NX_DAEMON: 'false',
20
+ // This is the same environment variable that ESLint uses to determine if it should use a flat config.
21
+ // Default to true for all new workspaces.
22
+ ESLINT_USE_FLAT_CONFIG: process.env.ESLINT_USE_FLAT_CONFIG ?? 'true',
23
+ },
18
24
  shell: true,
19
25
  windowsHide: true,
20
26
  });
@@ -13,9 +13,9 @@ function readNxCloudToken(directory) {
13
13
  }
14
14
  // nx-ignore-next-line
15
15
  ));
16
- const { accessToken } = getCloudOptions(directory);
16
+ const { accessToken, nxCloudId } = getCloudOptions(directory);
17
17
  nxCloudSpinner.succeed('Nx Cloud has been set up successfully');
18
- return accessToken;
18
+ return accessToken || nxCloudId;
19
19
  }
20
20
  async function getOnboardingInfo(nxCloud, token, directory, useGithub) {
21
21
  // nx-ignore-next-line