@quilted/create 0.1.29 → 0.1.31

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.
@@ -2,13 +2,13 @@
2
2
 
3
3
  var fs = require('node:fs');
4
4
  var path = require('node:path');
5
- var node_child_process = require('node:child_process');
6
5
  var index = require('./index.cjs');
7
- var packageManager = require('./package-manager.cjs');
6
+ var packageManager = require('./shared/package-manager.cjs');
8
7
  require('node:tty');
9
8
  require('node:url');
10
9
  require('node:readline');
11
10
  require('node:events');
11
+ require('node:child_process');
12
12
 
13
13
  function _interopNamespace(e) {
14
14
  if (e && e.__esModule) return e;
@@ -37,10 +37,10 @@ let _ = t => t,
37
37
  _t3,
38
38
  _t4;
39
39
  async function createProject() {
40
- const argv = getArgv();
40
+ const args = getArguments();
41
41
 
42
- if (argv['--help']) {
43
- var _argv$PackageManag;
42
+ if (args['--help']) {
43
+ var _args$PackageManag;
44
44
 
45
45
  const additionalOptions = index.stripIndent(_t || (_t = _`
46
46
  ${0}, ${0}
@@ -58,23 +58,25 @@ async function createProject() {
58
58
  index.printHelp({
59
59
  kind: 'package',
60
60
  options: additionalOptions,
61
- packageManager: (_argv$PackageManag = argv['--package-manager']) === null || _argv$PackageManag === void 0 ? void 0 : _argv$PackageManag.toLowerCase()
61
+ packageManager: (_args$PackageManag = args['--package-manager']) === null || _args$PackageManag === void 0 ? void 0 : _args$PackageManag.toLowerCase()
62
62
  });
63
63
  return;
64
64
  }
65
65
 
66
66
  const inWorkspace = fs__namespace.existsSync('quilt.workspace.ts');
67
- const name = await getName(argv);
68
- const directory = await getDirectory(argv, {
67
+ const name = await getName(args);
68
+ const directory = await getDirectory(args, {
69
69
  name,
70
70
  inWorkspace
71
71
  });
72
- const isPublic = await getPublic(argv);
73
- const useReact = await getReact(argv);
74
- const createAsMonorepo = !inWorkspace && (await index.getCreateAsMonorepo(argv));
75
- const shouldInstall = await index.getShouldInstall(argv);
76
- const packageManager$1 = await index.getPackageManager(argv);
77
- const setupExtras = await index.getExtrasToSetup(argv, {
72
+ const isPublic = await getPublic(args);
73
+ const useReact = await getReact(args);
74
+ const createAsMonorepo = !inWorkspace && (await packageManager.getCreateAsMonorepo(args));
75
+ const shouldInstall = await packageManager.getShouldInstall(args);
76
+ const packageManager$1 = await packageManager.getPackageManager(args, {
77
+ root: directory
78
+ });
79
+ const setupExtras = await packageManager.getExtrasToSetup(args, {
78
80
  inWorkspace
79
81
  });
80
82
  const partOfMonorepo = inWorkspace || createAsMonorepo;
@@ -114,7 +116,7 @@ async function createProject() {
114
116
  const workspacePackageJson = JSON.parse(await workspaceTemplate.read('package.json'));
115
117
  workspacePackageJson.name = packageManager.toValidPackageName(name);
116
118
 
117
- if (packageManager$1 === 'pnpm') {
119
+ if (packageManager$1.type === 'pnpm') {
118
120
  await outputRoot.write('pnpm-workspace.yaml', await packageManager.format(`
119
121
  packages:
120
122
  - './packages/*'
@@ -151,7 +153,7 @@ async function createProject() {
151
153
  name: packageManager.toValidPackageName(name),
152
154
  react: useReact,
153
155
  isPublic,
154
- registry: argv['--registry']
156
+ registry: args['--registry']
155
157
  });
156
158
  quiltProject = quiltProject.replace('quiltPackage', 'quiltWorkspace, quiltPackage').replace('quiltPackage(', 'quiltWorkspace(), quiltPackage(');
157
159
  await outputRoot.write('quilt.project.ts', await packageManager.format(quiltProject, {
@@ -192,21 +194,19 @@ async function createProject() {
192
194
  name: packageManager.toValidPackageName(name),
193
195
  react: useReact,
194
196
  isPublic,
195
- registry: argv['--registry']
197
+ registry: args['--registry']
196
198
  });
197
199
  await outputRoot.write(path__namespace.join(packageDirectory, 'package.json'), await packageManager.format(JSON.stringify(projectPackageJson), {
198
200
  as: 'json-stringify'
199
201
  }));
200
202
  await outputRoot.write(path__namespace.join(packageDirectory, 'quilt.project.ts'), quiltProject);
201
- await Promise.all([packageManager.addToTsConfig(packageDirectory, outputRoot), packageManager.addToPackageManagerWorkspaces(packageDirectory, outputRoot, packageManager$1)]);
203
+ await Promise.all([packageManager.addToTsConfig(packageDirectory, outputRoot), packageManager.addToPackageManagerWorkspaces(packageDirectory, outputRoot, packageManager$1.type)]);
202
204
  }
203
205
 
204
206
  if (shouldInstall) {
205
207
  process.stdout.write('\nInstalling dependencies...\n'); // TODO: better loading, handle errors
206
208
 
207
- node_child_process.execSync(`${packageManager$1} install`, {
208
- cwd: rootDirectory
209
- });
209
+ await packageManager$1.install();
210
210
  process.stdout.moveCursor(0, -1);
211
211
  process.stdout.clearLine(1);
212
212
  console.log('Installed dependencies.');
@@ -231,7 +231,7 @@ async function createProject() {
231
231
  }
232
232
 
233
233
  if (!shouldInstall) {
234
- commands.push(`pnpm install ${index.dim_1('# Install all your dependencies')}`);
234
+ commands.push(`${packageManager$1.commands.install()} ${index.dim_1('# Install all your dependencies')}`);
235
235
  }
236
236
 
237
237
  if (!inWorkspace) {
@@ -261,8 +261,8 @@ async function createProject() {
261
261
  console.log(followUp);
262
262
  } // Argument handling
263
263
 
264
- function getArgv() {
265
- const argv = index.arg_1({
264
+ function getArguments() {
265
+ const args = index.parseArguments({
266
266
  '--yes': Boolean,
267
267
  '-y': '--yes',
268
268
  '--name': String,
@@ -284,13 +284,13 @@ function getArgv() {
284
284
  }, {
285
285
  permissive: true
286
286
  });
287
- return argv;
287
+ return args;
288
288
  }
289
289
 
290
- async function getName(argv) {
290
+ async function getName(args) {
291
291
  let {
292
292
  '--name': name
293
- } = argv;
293
+ } = args;
294
294
 
295
295
  if (name == null) {
296
296
  name = await index.prompt({
@@ -303,11 +303,11 @@ async function getName(argv) {
303
303
  return name;
304
304
  }
305
305
 
306
- async function getDirectory(argv, {
306
+ async function getDirectory(args, {
307
307
  name,
308
308
  inWorkspace
309
309
  }) {
310
- let directory = argv['--directory'] ? path__namespace.resolve(argv['--directory']) : undefined;
310
+ let directory = args['--directory'] ? path__namespace.resolve(args['--directory']) : undefined;
311
311
 
312
312
  if (directory == null) {
313
313
  const basePackageName = packageManager.toValidPackageName(name.split('/').pop());
@@ -319,7 +319,7 @@ async function getDirectory(argv, {
319
319
  }));
320
320
  }
321
321
 
322
- while (!argv['--yes']) {
322
+ while (!args['--yes']) {
323
323
  if (fs__namespace.existsSync(directory) && !(await packageManager.isEmpty(directory))) {
324
324
  const relativeDirectory = path__namespace.relative(process.cwd(), directory);
325
325
  const empty = await index.prompt({
@@ -341,12 +341,12 @@ async function getDirectory(argv, {
341
341
  return directory;
342
342
  }
343
343
 
344
- async function getPublic(argv) {
344
+ async function getPublic(args) {
345
345
  let isPublic;
346
346
 
347
- if (argv['--public'] || argv['--yes']) {
347
+ if (args['--public'] || args['--yes']) {
348
348
  isPublic = true;
349
- } else if (argv['--private']) {
349
+ } else if (args['--private']) {
350
350
  isPublic = false;
351
351
  } else {
352
352
  isPublic = await index.prompt({
@@ -359,12 +359,12 @@ async function getPublic(argv) {
359
359
  return isPublic;
360
360
  }
361
361
 
362
- async function getReact(argv) {
362
+ async function getReact(args) {
363
363
  let useReact;
364
364
 
365
- if (argv['--react'] || argv['--yes']) {
365
+ if (args['--react'] || args['--yes']) {
366
366
  useReact = true;
367
- } else if (argv['--no-react']) {
367
+ } else if (args['--no-react']) {
368
368
  useReact = false;
369
369
  } else {
370
370
  useReact = await index.prompt({