@quilted/create 0.1.23 → 0.1.24

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/CHANGELOG.md CHANGED
@@ -1,5 +1,11 @@
1
1
  # @quilted/create
2
2
 
3
+ ## 0.1.24
4
+
5
+ ### Patch Changes
6
+
7
+ - [`dae904fe`](https://github.com/lemonmade/quilt/commit/dae904fe489f7b869bcc2fa2398b3826651e75b9) Thanks [@lemonmade](https://github.com/lemonmade)! - Fix non-monorepo app creation issues
8
+
3
9
  ## 0.1.23
4
10
 
5
11
  ### Patch Changes
package/build/cjs/app.cjs CHANGED
@@ -1,14 +1,14 @@
1
1
  'use strict';
2
2
 
3
- var fs = require('fs');
4
- var path = require('path');
5
- var child_process = require('child_process');
3
+ var fs = require('node:fs');
4
+ var path = require('node:path');
5
+ var node_child_process = require('node:child_process');
6
6
  var index = require('./index.cjs');
7
7
  var packageManager = require('./package-manager.cjs');
8
- require('tty');
9
- require('url');
10
- require('readline');
11
- require('events');
8
+ require('node:tty');
9
+ require('node:url');
10
+ require('node:readline');
11
+ require('node:events');
12
12
 
13
13
  function _interopNamespace(e) {
14
14
  if (e && e.__esModule) return e;
@@ -126,6 +126,7 @@ async function createApp() {
126
126
  workspacePackageJson.name = packageManager.toValidPackageName(name);
127
127
  workspacePackageJson.eslintConfig = projectPackageJson.eslintConfig;
128
128
  workspacePackageJson.browserslist = projectPackageJson.browserslist;
129
+ workspacePackageJson.devDependencies = packageManager.mergeDependencies(workspacePackageJson.devDependencies, projectPackageJson.devDependencies);
129
130
  let quiltProject = await appTemplate.read('quilt.project.ts');
130
131
  quiltProject = quiltProject.replace('quiltApp', 'quiltWorkspace, quiltApp').replace('quiltApp(', 'quiltWorkspace(), quiltApp(');
131
132
  await outputRoot.write('quilt.project.ts', await packageManager.format(quiltProject, {
@@ -171,7 +172,7 @@ async function createApp() {
171
172
  if (shouldInstall) {
172
173
  process.stdout.write('\nInstalling dependencies...\n'); // TODO: better loading, handle errors
173
174
 
174
- child_process.execSync(`${packageManager$1} install`, {
175
+ node_child_process.execSync(`${packageManager$1} install`, {
175
176
  cwd: rootDirectory
176
177
  });
177
178
  process.stdout.moveCursor(0, -1);
@@ -181,12 +182,14 @@ async function createApp() {
181
182
 
182
183
  const commands = [];
183
184
 
185
+ const packageManagerRun = command => packageManager$1 === 'npm' ? `npm run ${command}` : `pnpm ${command}`;
186
+
184
187
  if (!inWorkspace && directory !== process.cwd()) {
185
188
  commands.push(`cd ${index.cyan_1(packageManager.relativeDirectoryForDisplay(path__namespace.relative(process.cwd(), directory)))} ${index.dim_1('# Move into your new app’s directory')}`);
186
189
  }
187
190
 
188
191
  if (!shouldInstall) {
189
- commands.push(`pnpm install ${index.dim_1('# Install all your dependencies')}`);
192
+ commands.push(`${packageManager$1} install ${index.dim_1('# Install all your dependencies')}`);
190
193
  }
191
194
 
192
195
  if (!inWorkspace) {
@@ -194,7 +197,7 @@ async function createApp() {
194
197
  commands.push(`git init && git add -A && git commit -m "Initial commit" ${index.dim_1('# Start your git history (optional)')}`);
195
198
  }
196
199
 
197
- commands.push(`pnpm develop ${index.dim_1('# Start the development server')}`);
200
+ commands.push(`${packageManagerRun('develop')} ${index.dim_1('# Start the development server')}`);
198
201
  const whatsNext = index.stripIndent(_t2 || (_t2 = _`
199
202
  Your new app is ready to go! There’s just ${0} you’ll need to take
200
203
  in order to start developing:
@@ -2,12 +2,12 @@
2
2
 
3
3
  Object.defineProperty(exports, '__esModule', { value: true });
4
4
 
5
- var require$$0 = require('tty');
6
- var fs = require('fs');
7
- require('path');
8
- require('url');
9
- var require$$0$1 = require('readline');
10
- var require$$2 = require('events');
5
+ var require$$0 = require('node:tty');
6
+ var fs = require('node:fs');
7
+ require('node:path');
8
+ require('node:url');
9
+ var require$$0$1 = require('node:readline');
10
+ var require$$2 = require('node:events');
11
11
 
12
12
  function _interopDefaultLegacy (e) { return e && typeof e === 'object' && 'default' in e ? e : { 'default': e }; }
13
13
 
@@ -1,8 +1,8 @@
1
1
  'use strict';
2
2
 
3
- var path = require('path');
4
- var fs = require('fs');
5
- var url = require('url');
3
+ var path = require('node:path');
4
+ var fs = require('node:fs');
5
+ var node_url = require('node:url');
6
6
  require('./index.cjs');
7
7
 
8
8
  function _interopNamespace(e) {
@@ -90,7 +90,7 @@ async function getPackageRoot() {
90
90
  packageDirectory
91
91
  } = await Promise.resolve().then(function () { return require('./index2.cjs'); });
92
92
  return packageDirectory({
93
- cwd: path__namespace.dirname(url.fileURLToPath((typeof document === 'undefined' ? new (require('u' + 'rl').URL)('file:' + __filename).href : (document.currentScript && document.currentScript.src || new URL('package-manager.cjs', document.baseURI).href))))
93
+ cwd: path__namespace.dirname(node_url.fileURLToPath((typeof document === 'undefined' ? new (require('u' + 'rl').URL)('file:' + __filename).href : (document.currentScript && document.currentScript.src || new URL('package-manager.cjs', document.baseURI).href))))
94
94
  });
95
95
  })();
96
96
  }
@@ -152,18 +152,32 @@ async function format(content, {
152
152
  format
153
153
  }, {
154
154
  default: babel
155
+ }, {
156
+ default: typescript
155
157
  }, {
156
158
  default: yaml
157
- }] = await Promise.all([Promise.resolve().then(function () { return require('./standalone.cjs'); }).then(function (n) { return n.standalone; }), Promise.resolve().then(function () { return require('./parser-babel.cjs'); }).then(function (n) { return n.parserBabel; }), Promise.resolve().then(function () { return require('./parser-yaml.cjs'); }).then(function (n) { return n.parserYaml; })]);
159
+ }] = await Promise.all([Promise.resolve().then(function () { return require('./standalone.cjs'); }).then(function (n) { return n.standalone; }), Promise.resolve().then(function () { return require('./parser-babel.cjs'); }).then(function (n) { return n.parserBabel; }), Promise.resolve().then(function () { return require('./parser-typescript.cjs'); }).then(function (n) { return n.parserTypescript; }), Promise.resolve().then(function () { return require('./parser-yaml.cjs'); }).then(function (n) { return n.parserYaml; })]);
158
160
  return format(content, {
159
161
  arrowParens: 'always',
160
162
  bracketSpacing: false,
161
163
  singleQuote: true,
162
164
  trailingComma: 'all',
163
165
  parser,
164
- plugins: [babel, yaml]
166
+ plugins: [babel, typescript, yaml]
165
167
  });
166
168
  }
169
+ function mergeDependencies(first = {}, second = {}) {
170
+ const all = { ...first,
171
+ ...second
172
+ };
173
+ const merged = {};
174
+
175
+ for (const [key, value] of Object.entries(all).sort(([keyOne], [keyTwo]) => keyOne.localeCompare(keyTwo))) {
176
+ merged[key] = value;
177
+ }
178
+
179
+ return merged;
180
+ }
167
181
 
168
182
  const ENDS_WITH_TSCONFIG = /[/]?tsconfig[.a-z0-9]*[.]json/i;
169
183
  async function addToTsConfig(directory, output) {
@@ -311,5 +325,6 @@ exports.emptyDirectory = emptyDirectory;
311
325
  exports.format = format;
312
326
  exports.isEmpty = isEmpty;
313
327
  exports.loadTemplate = loadTemplate;
328
+ exports.mergeDependencies = mergeDependencies;
314
329
  exports.relativeDirectoryForDisplay = relativeDirectoryForDisplay;
315
330
  exports.toValidPackageName = toValidPackageName;
@@ -1,14 +1,14 @@
1
1
  'use strict';
2
2
 
3
- var fs = require('fs');
4
- var path = require('path');
5
- var child_process = require('child_process');
3
+ var fs = require('node:fs');
4
+ var path = require('node:path');
5
+ var node_child_process = require('node:child_process');
6
6
  var index = require('./index.cjs');
7
7
  var packageManager = require('./package-manager.cjs');
8
- require('tty');
9
- require('url');
10
- require('readline');
11
- require('events');
8
+ require('node:tty');
9
+ require('node:url');
10
+ require('node:readline');
11
+ require('node:events');
12
12
 
13
13
  function _interopNamespace(e) {
14
14
  if (e && e.__esModule) return e;
@@ -149,9 +149,7 @@ async function createProject() {
149
149
  newPackageJson.dependencies = projectPackageJson.dependencies;
150
150
  newPackageJson.peerDependencies = projectPackageJson.peerDependencies;
151
151
  newPackageJson.peerDependenciesMeta = projectPackageJson.peerDependenciesMeta;
152
- newPackageJson.devDependencies = sortKeys({ ...workspacePackageJson.devDependencies,
153
- ...projectPackageJson.devDependencies
154
- });
152
+ newPackageJson.devDependencies = packageManager.mergeDependencies(workspacePackageJson.devDependencies, projectPackageJson.devDependencies);
155
153
  }
156
154
 
157
155
  adjustPackageJson(newPackageJson, {
@@ -211,7 +209,7 @@ async function createProject() {
211
209
  if (shouldInstall) {
212
210
  process.stdout.write('\nInstalling dependencies...\n'); // TODO: better loading, handle errors
213
211
 
214
- child_process.execSync(`${packageManager$1} install`, {
212
+ node_child_process.execSync(`${packageManager$1} install`, {
215
213
  cwd: rootDirectory
216
214
  });
217
215
  process.stdout.moveCursor(0, -1);
@@ -418,15 +416,4 @@ function adjustPackageJson(packageJson, {
418
416
  return packageJson;
419
417
  }
420
418
 
421
- function sortKeys(object) {
422
- const newObject = {};
423
- const sortedEntries = Object.entries(object).sort(([keyOne], [keyTwo]) => keyOne.localeCompare(keyTwo));
424
-
425
- for (const [key, value] of sortedEntries) {
426
- newObject[key] = value;
427
- }
428
-
429
- return newObject;
430
- }
431
-
432
419
  exports.createProject = createProject;