@backstage/cli 0.18.0 → 0.18.1

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 (46) hide show
  1. package/CHANGELOG.md +23 -0
  2. package/config/eslint-factory.js +1 -1
  3. package/dist/cjs/{Lockfile-48dc675e.cjs.js → Lockfile-72b7072e.cjs.js} +25 -9
  4. package/dist/cjs/{PackageGraph-1d7b086a.cjs.js → PackageGraph-7ea22294.cjs.js} +17 -9
  5. package/dist/cjs/{build-52ba70a2.cjs.js → build-688edcd3.cjs.js} +26 -15
  6. package/dist/cjs/{buildBackend-55985c84.cjs.js → buildBackend-ac6c633b.cjs.js} +61 -36
  7. package/dist/cjs/{buildWorkspace-d663903d.cjs.js → buildWorkspace-76f958f0.cjs.js} +7 -7
  8. package/dist/cjs/{bump-1a3769e9.cjs.js → bump-db89c0f3.cjs.js} +88 -33
  9. package/dist/cjs/{clean-9a8c294a.cjs.js → clean-68c34bfd.cjs.js} +2 -2
  10. package/dist/cjs/{config-de1bf46a.cjs.js → config-9d64a562.cjs.js} +15 -11
  11. package/dist/cjs/{create-b0ca2add.cjs.js → create-94a20b19.cjs.js} +80 -32
  12. package/dist/cjs/{createDistWorkspace-fc94c796.cjs.js → createDistWorkspace-0412df70.cjs.js} +137 -65
  13. package/dist/cjs/{createPlugin-4d7e1b01.cjs.js → createPlugin-02079f81.cjs.js} +69 -30
  14. package/dist/cjs/{diff-a561bee3.cjs.js → diff-f68eaf29.cjs.js} +68 -16
  15. package/dist/cjs/{docs-bd70b38e.cjs.js → docs-1527b730.cjs.js} +9 -5
  16. package/dist/cjs/{fix-47eb8dc4.cjs.js → fix-56a6d092.cjs.js} +17 -7
  17. package/dist/cjs/{index-27d57881.cjs.js → index-025feb83.cjs.js} +10 -10
  18. package/dist/cjs/{index-bb24147b.cjs.js → index-16fe1d27.cjs.js} +39 -12
  19. package/dist/cjs/{index-4f4a8498.cjs.js → index-4f8f2562.cjs.js} +58 -38
  20. package/dist/cjs/{index-7e13cc9d.cjs.js → index-b7ce30d9.cjs.js} +151 -50
  21. package/dist/cjs/{info-29f0ee36.cjs.js → info-88431720.cjs.js} +20 -6
  22. package/dist/cjs/{install-fea0e3f5.cjs.js → install-4d423030.cjs.js} +44 -17
  23. package/dist/cjs/{lint-0db8937c.cjs.js → lint-2fd53d5f.cjs.js} +4 -4
  24. package/dist/cjs/{lint-81a75364.cjs.js → lint-bd7b9e13.cjs.js} +37 -11
  25. package/dist/cjs/{lint-1711bbbb.cjs.js → lint-da011116.cjs.js} +5 -3
  26. package/dist/cjs/{list-deprecations-cea8fad3.cjs.js → list-deprecations-268e1d6b.cjs.js} +3 -3
  27. package/dist/cjs/{pack-8ab429c0.cjs.js → pack-ce12d4b7.cjs.js} +17 -11
  28. package/dist/cjs/packageLintConfigs-9f3b0766.cjs.js +83 -0
  29. package/dist/cjs/packageRole-582e0558.cjs.js +59 -0
  30. package/dist/cjs/{packageRoles-a310f84c.cjs.js → packageRoles-fec3121b.cjs.js} +5 -3
  31. package/dist/cjs/packageScripts-04ac9bc2.cjs.js +98 -0
  32. package/dist/cjs/{packages-ea5c38ec.cjs.js → packages-24759dcb.cjs.js} +17 -12
  33. package/dist/cjs/parallel-a8f6219c.cjs.js +187 -0
  34. package/dist/cjs/{paths-d98c9d0c.cjs.js → paths-13d8625f.cjs.js} +102 -57
  35. package/dist/cjs/{print-4cbe70e7.cjs.js → print-58fe18ba.cjs.js} +4 -4
  36. package/dist/cjs/{run-5e05ba2c.cjs.js → run-f4586ef6.cjs.js} +2 -2
  37. package/dist/cjs/{schema-2c842cbe.cjs.js → schema-65c31be1.cjs.js} +9 -5
  38. package/dist/cjs/{tasks-b054c9ce.cjs.js → tasks-16da761b.cjs.js} +29 -12
  39. package/dist/cjs/{test-b5969f53.cjs.js → test-464a46fe.cjs.js} +3 -3
  40. package/dist/cjs/{validate-8a03d402.cjs.js → validate-3231ba7d.cjs.js} +4 -4
  41. package/dist/index.cjs.js +1 -1
  42. package/package.json +12 -12
  43. package/dist/cjs/packageLintConfigs-77b71b79.cjs.js +0 -74
  44. package/dist/cjs/packageRole-d1e7c7d6.cjs.js +0 -53
  45. package/dist/cjs/packageScripts-6731503e.cjs.js +0 -96
  46. package/dist/cjs/parallel-8286d3fa.cjs.js +0 -171
@@ -7,7 +7,7 @@ var path = require('path');
7
7
  var inquirer = require('inquirer');
8
8
  var handlebars = require('handlebars');
9
9
  var recursive = require('recursive-readdir');
10
- var index = require('./index-7e13cc9d.cjs.js');
10
+ var index = require('./index-b7ce30d9.cjs.js');
11
11
  require('commander');
12
12
  require('semver');
13
13
  require('@backstage/cli-common');
@@ -44,7 +44,13 @@ class PackageJsonHandler {
44
44
  }
45
45
  const pkg = JSON.parse(templateContents);
46
46
  const targetPkg = JSON.parse(targetContents);
47
- const handler = new PackageJsonHandler(write, prompt, pkg, targetPkg, variant);
47
+ const handler = new PackageJsonHandler(
48
+ write,
49
+ prompt,
50
+ pkg,
51
+ targetPkg,
52
+ variant
53
+ );
48
54
  await handler.handle();
49
55
  }
50
56
  static async appHandler(file, prompt) {
@@ -65,7 +71,9 @@ class PackageJsonHandler {
65
71
  await this.syncReactDeps();
66
72
  }
67
73
  async syncField(fieldName, obj = this.pkg, targetObj = this.targetPkg, prefix, sort, optional) {
68
- const fullFieldName = chalk__default["default"].cyan(prefix ? `${prefix}[${fieldName}]` : fieldName);
74
+ const fullFieldName = chalk__default["default"].cyan(
75
+ prefix ? `${prefix}[${fieldName}]` : fieldName
76
+ );
69
77
  const newValue = obj[fieldName];
70
78
  const coloredNewValue = chalk__default["default"].cyan(JSON.stringify(newValue));
71
79
  if (fieldName in targetObj) {
@@ -83,7 +91,9 @@ class PackageJsonHandler {
83
91
  await this.write();
84
92
  }
85
93
  } else if (fieldName in obj && optional !== true) {
86
- if (await this.prompt(`package.json is missing field ${fullFieldName}, set to ${coloredNewValue}?`)) {
94
+ if (await this.prompt(
95
+ `package.json is missing field ${fullFieldName}, set to ${coloredNewValue}?`
96
+ )) {
87
97
  targetObj[fieldName] = newValue;
88
98
  if (sort) {
89
99
  sortObjectKeys(targetObj);
@@ -97,7 +107,11 @@ class PackageJsonHandler {
97
107
  const hasSchemaFile = typeof configSchema === "string";
98
108
  if (!this.targetPkg.files) {
99
109
  const expected = hasSchemaFile ? ["dist", configSchema] : ["dist"];
100
- if (await this.prompt(`package.json is missing field "files", set to ${JSON.stringify(expected)}?`)) {
110
+ if (await this.prompt(
111
+ `package.json is missing field "files", set to ${JSON.stringify(
112
+ expected
113
+ )}?`
114
+ )) {
101
115
  this.targetPkg.files = expected;
102
116
  await this.write();
103
117
  }
@@ -110,7 +124,11 @@ class PackageJsonHandler {
110
124
  missing.push(configSchema);
111
125
  }
112
126
  if (missing.length) {
113
- if (await this.prompt(`package.json is missing ${JSON.stringify(missing)} in the "files" field, add?`)) {
127
+ if (await this.prompt(
128
+ `package.json is missing ${JSON.stringify(
129
+ missing
130
+ )} in the "files" field, add?`
131
+ )) {
114
132
  this.targetPkg.files.push(...missing);
115
133
  await this.write();
116
134
  }
@@ -123,7 +141,9 @@ class PackageJsonHandler {
123
141
  if (!pkgScripts) {
124
142
  return;
125
143
  }
126
- const hasNewScript = Object.values(targetScripts).some((script) => String(script).includes("backstage-cli package "));
144
+ const hasNewScript = Object.values(targetScripts).some(
145
+ (script) => String(script).includes("backstage-cli package ")
146
+ );
127
147
  if (hasNewScript) {
128
148
  return;
129
149
  }
@@ -146,7 +166,12 @@ class PackageJsonHandler {
146
166
  }
147
167
  for (const key of Object.keys(pkgPublishConf)) {
148
168
  if (!["access", "registry"].includes(key)) {
149
- await this.syncField(key, pkgPublishConf, targetPublishConf, "publishConfig");
169
+ await this.syncField(
170
+ key,
171
+ pkgPublishConf,
172
+ targetPublishConf,
173
+ "publishConfig"
174
+ );
150
175
  }
151
176
  }
152
177
  }
@@ -157,12 +182,25 @@ class PackageJsonHandler {
157
182
  return;
158
183
  }
159
184
  await this.syncField("@backstage/core", {}, targetDeps, fieldName, true);
160
- await this.syncField("@backstage/core-api", {}, targetDeps, fieldName, true);
185
+ await this.syncField(
186
+ "@backstage/core-api",
187
+ {},
188
+ targetDeps,
189
+ fieldName,
190
+ true
191
+ );
161
192
  for (const key of Object.keys(pkgDeps)) {
162
193
  if (this.variant === "app" && key.startsWith("plugin-")) {
163
194
  continue;
164
195
  }
165
- await this.syncField(key, pkgDeps, targetDeps, fieldName, true, !required);
196
+ await this.syncField(
197
+ key,
198
+ pkgDeps,
199
+ targetDeps,
200
+ fieldName,
201
+ true,
202
+ !required
203
+ );
166
204
  }
167
205
  }
168
206
  async syncReactDeps() {
@@ -197,7 +235,9 @@ async function exactMatchHandler({ path, write, missing, targetContents, templat
197
235
  process.stdout.write(` ${diff.value}`);
198
236
  }
199
237
  }
200
- if (await prompt(`Outdated ${coloredPath}, do you want to apply the above patch?`)) {
238
+ if (await prompt(
239
+ `Outdated ${coloredPath}, do you want to apply the above patch?`
240
+ )) {
201
241
  await write(templateContents);
202
242
  }
203
243
  }
@@ -224,7 +264,11 @@ const handlers = {
224
264
  async function handleAllFiles(fileHandlers, files, promptFunc) {
225
265
  for (const file of files) {
226
266
  const path$1 = file.path.split(path.sep).join(path.posix.sep);
227
- const fileHandler = fileHandlers.find((handler) => handler.patterns.some((pattern) => typeof pattern === "string" ? pattern === path$1 : pattern.test(path$1)));
267
+ const fileHandler = fileHandlers.find(
268
+ (handler) => handler.patterns.some(
269
+ (pattern) => typeof pattern === "string" ? pattern === path$1 : pattern.test(path$1)
270
+ )
271
+ );
228
272
  if (fileHandler) {
229
273
  await fileHandler.handler(file, promptFunc);
230
274
  } else {
@@ -250,7 +294,9 @@ const makeCheckPromptFunc = () => {
250
294
  };
251
295
  const finalize = () => {
252
296
  if (failed) {
253
- throw new Error("Check failed, the plugin is not in sync with the latest template");
297
+ throw new Error(
298
+ "Check failed, the plugin is not in sync with the latest template"
299
+ );
254
300
  }
255
301
  };
256
302
  return [promptFunc, finalize];
@@ -269,7 +315,10 @@ async function readTemplateFile(templateFile, templateVars) {
269
315
  return handlebars__default["default"].compile(contents)(templateVars, {
270
316
  helpers: {
271
317
  versionQuery(name, hint) {
272
- return packageVersionProvider(name, typeof hint === "string" ? hint : void 0);
318
+ return packageVersionProvider(
319
+ name,
320
+ typeof hint === "string" ? hint : void 0
321
+ );
273
322
  }
274
323
  }
275
324
  });
@@ -370,7 +419,10 @@ async function readPluginData() {
370
419
  } catch (error) {
371
420
  throw new Error(`Failed to read target package, ${error}`);
372
421
  }
373
- const pluginTsContents = await fs__default["default"].readFile(index.paths.resolveTarget("src/plugin.ts"), "utf8");
422
+ const pluginTsContents = await fs__default["default"].readFile(
423
+ index.paths.resolveTarget("src/plugin.ts"),
424
+ "utf8"
425
+ );
374
426
  const pluginIdMatch = pluginTsContents.match(/id: ['"`](.+?)['"`]/);
375
427
  if (!pluginIdMatch) {
376
428
  throw new Error(`Failed to parse plugin.ts, no plugin ID found`);
@@ -380,4 +432,4 @@ async function readPluginData() {
380
432
  }
381
433
 
382
434
  exports["default"] = diff;
383
- //# sourceMappingURL=diff-a561bee3.cjs.js.map
435
+ //# sourceMappingURL=diff-f68eaf29.cjs.js.map
@@ -2,9 +2,9 @@
2
2
 
3
3
  var configLoader = require('@backstage/config-loader');
4
4
  var openBrowser = require('react-dev-utils/openBrowser');
5
- var config = require('./config-de1bf46a.cjs.js');
5
+ var config = require('./config-9d64a562.cjs.js');
6
6
  require('@backstage/config');
7
- require('./index-7e13cc9d.cjs.js');
7
+ require('./index-b7ce30d9.cjs.js');
8
8
  require('commander');
9
9
  require('chalk');
10
10
  require('fs-extra');
@@ -12,7 +12,7 @@ require('semver');
12
12
  require('@backstage/cli-common');
13
13
  require('@backstage/errors');
14
14
  require('@manypkg/get-packages');
15
- require('./PackageGraph-1d7b086a.cjs.js');
15
+ require('./PackageGraph-7ea22294.cjs.js');
16
16
  require('path');
17
17
  require('child_process');
18
18
  require('util');
@@ -28,9 +28,13 @@ var docs = async (opts) => {
28
28
  fromPackage: opts.package,
29
29
  mockEnv: true
30
30
  });
31
- const schema = configLoader.mergeConfigSchemas(appSchemas.serialize().schemas.map((_) => _.value));
31
+ const schema = configLoader.mergeConfigSchemas(
32
+ appSchemas.serialize().schemas.map(
33
+ (_) => _.value
34
+ )
35
+ );
32
36
  openBrowser__default["default"](`${DOCS_URL}#schema=${JSON.stringify(schema)}`);
33
37
  };
34
38
 
35
39
  exports["default"] = docs;
36
- //# sourceMappingURL=docs-bd70b38e.cjs.js.map
40
+ //# sourceMappingURL=docs-1527b730.cjs.js.map
@@ -1,11 +1,11 @@
1
1
  'use strict';
2
2
 
3
- var index = require('./index-7e13cc9d.cjs.js');
3
+ var index = require('./index-b7ce30d9.cjs.js');
4
4
  var eslint = require('eslint');
5
5
  var path = require('path');
6
6
  var fs = require('fs-extra');
7
7
  var cliCommon = require('@backstage/cli-common');
8
- var PackageGraph = require('./PackageGraph-1d7b086a.cjs.js');
8
+ var PackageGraph = require('./PackageGraph-7ea22294.cjs.js');
9
9
  require('commander');
10
10
  require('chalk');
11
11
  require('semver');
@@ -29,10 +29,14 @@ async function command() {
29
29
  const pkgJsonPath = index.paths.resolveTarget("package.json");
30
30
  const pkg = await fs__default["default"].readJson(pkgJsonPath);
31
31
  if (pkg.workspaces) {
32
- throw new Error("Adding dependencies to the workspace root is not supported");
32
+ throw new Error(
33
+ "Adding dependencies to the workspace root is not supported"
34
+ );
33
35
  }
34
36
  const packages = await PackageGraph.PackageGraph.listTargetPackages();
35
- const localPackageVersions = new Map(packages.map((p) => [p.packageJson.name, p.packageJson.version]));
37
+ const localPackageVersions = new Map(
38
+ packages.map((p) => [p.packageJson.name, p.packageJson.version])
39
+ );
36
40
  const eslint$1 = new eslint.ESLint({
37
41
  cwd: index.paths.targetDir,
38
42
  overrideConfig: {
@@ -103,14 +107,20 @@ async function command() {
103
107
  delete pkg.devDependencies;
104
108
  }
105
109
  if (pkg.dependencies) {
106
- pkg.dependencies = Object.fromEntries(Object.entries(pkg.dependencies).sort(([a], [b]) => a.localeCompare(b)));
110
+ pkg.dependencies = Object.fromEntries(
111
+ Object.entries(pkg.dependencies).sort(([a], [b]) => a.localeCompare(b))
112
+ );
107
113
  }
108
114
  if (pkg.devDependencies) {
109
- pkg.devDependencies = Object.fromEntries(Object.entries(pkg.devDependencies).sort(([a], [b]) => a.localeCompare(b)));
115
+ pkg.devDependencies = Object.fromEntries(
116
+ Object.entries(pkg.devDependencies).sort(
117
+ ([a], [b]) => a.localeCompare(b)
118
+ )
119
+ );
110
120
  }
111
121
  await fs__default["default"].writeJson(pkgJsonPath, pkg, { spaces: 2 });
112
122
  }
113
123
  }
114
124
 
115
125
  exports.command = command;
116
- //# sourceMappingURL=fix-47eb8dc4.cjs.js.map
126
+ //# sourceMappingURL=fix-56a6d092.cjs.js.map
@@ -1,20 +1,20 @@
1
1
  'use strict';
2
2
 
3
- var createDistWorkspace = require('./createDistWorkspace-fc94c796.cjs.js');
4
- var packageRoles = require('./packageRoles-a310f84c.cjs.js');
5
- var index = require('./index-7e13cc9d.cjs.js');
6
- var buildBackend = require('./buildBackend-55985c84.cjs.js');
3
+ var createDistWorkspace = require('./createDistWorkspace-0412df70.cjs.js');
4
+ var packageRoles = require('./packageRoles-fec3121b.cjs.js');
5
+ var index = require('./index-b7ce30d9.cjs.js');
6
+ var buildBackend = require('./buildBackend-ac6c633b.cjs.js');
7
7
  require('chalk');
8
8
  require('fs-extra');
9
9
  require('path');
10
10
  require('os');
11
11
  require('tar');
12
12
  require('lodash/partition');
13
- require('./run-5e05ba2c.cjs.js');
13
+ require('./run-f4586ef6.cjs.js');
14
14
  require('child_process');
15
15
  require('util');
16
16
  require('@backstage/errors');
17
- require('./PackageGraph-1d7b086a.cjs.js');
17
+ require('./PackageGraph-7ea22294.cjs.js');
18
18
  require('@manypkg/get-packages');
19
19
  require('rollup');
20
20
  require('@rollup/plugin-commonjs');
@@ -27,7 +27,7 @@ require('@rollup/plugin-json');
27
27
  require('@rollup/plugin-yaml');
28
28
  require('rollup-pluginutils');
29
29
  require('./svgrTemplate-550efce6.cjs.js');
30
- require('./parallel-8286d3fa.cjs.js');
30
+ require('./parallel-a8f6219c.cjs.js');
31
31
  require('worker_threads');
32
32
  require('npm-packlist');
33
33
  require('zod');
@@ -40,7 +40,7 @@ require('html-webpack-plugin');
40
40
  require('react-dev-utils/ModuleScopePlugin');
41
41
  require('run-script-webpack-plugin');
42
42
  require('webpack-node-externals');
43
- require('./paths-d98c9d0c.cjs.js');
43
+ require('./paths-13d8625f.cjs.js');
44
44
  require('mini-css-extract-plugin');
45
45
  require('eslint-webpack-plugin');
46
46
  require('lodash/pickBy');
@@ -49,7 +49,7 @@ require('react-dev-utils/FileSizeReporter');
49
49
  require('react-dev-utils/formatWebpackMessages');
50
50
  require('webpack-dev-server');
51
51
  require('react-dev-utils/openBrowser');
52
- require('./config-de1bf46a.cjs.js');
52
+ require('./config-9d64a562.cjs.js');
53
53
  require('@backstage/config-loader');
54
54
  require('@backstage/config');
55
55
 
@@ -87,4 +87,4 @@ async function command(opts) {
87
87
  }
88
88
 
89
89
  exports.command = command;
90
- //# sourceMappingURL=index-27d57881.cjs.js.map
90
+ //# sourceMappingURL=index-025feb83.cjs.js.map
@@ -4,7 +4,7 @@ var fs = require('fs-extra');
4
4
  var chalk = require('chalk');
5
5
  var yaml = require('yaml');
6
6
  var inquirer = require('inquirer');
7
- var index$1 = require('./index-7e13cc9d.cjs.js');
7
+ var index$1 = require('./index-b7ce30d9.cjs.js');
8
8
  var crypto = require('crypto');
9
9
  var openBrowser = require('react-dev-utils/openBrowser');
10
10
  var request = require('@octokit/request');
@@ -89,7 +89,11 @@ class GithubCreateAppServer {
89
89
  app.get("/", this.formHandler);
90
90
  const callPromise = new Promise((resolve, reject) => {
91
91
  app.get("/callback", (req, res) => {
92
- request.request(`POST /app-manifests/${encodeURIComponent(req.query.code)}/conversions`).then(({ data }) => {
92
+ request.request(
93
+ `POST /app-manifests/${encodeURIComponent(
94
+ req.query.code
95
+ )}/conversions`
96
+ ).then(({ data }) => {
93
97
  resolve({
94
98
  name: data.name,
95
99
  slug: data.slug,
@@ -159,40 +163,63 @@ var index = async (org) => {
159
163
  ${yaml.stringify(config)}`;
160
164
  await fs__default["default"].writeFile(index$1.paths.resolveTargetRoot(fileName), content);
161
165
  console.log(`GitHub App configuration written to ${chalk__default["default"].cyan(fileName)}`);
162
- console.log(chalk__default["default"].yellow("This file contains sensitive credentials, it should not be committed to version control and handled with care!"));
163
- console.log("Here's an example on how to update the integrations section in app-config.yaml");
164
- console.log(chalk__default["default"].green(`
166
+ console.log(
167
+ chalk__default["default"].yellow(
168
+ "This file contains sensitive credentials, it should not be committed to version control and handled with care!"
169
+ )
170
+ );
171
+ console.log(
172
+ "Here's an example on how to update the integrations section in app-config.yaml"
173
+ );
174
+ console.log(
175
+ chalk__default["default"].green(`
165
176
  integrations:
166
177
  github:
167
178
  - host: github.com
168
179
  apps:
169
- - $include: ${fileName}`));
180
+ - $include: ${fileName}`)
181
+ );
170
182
  };
171
183
  async function verifyGithubOrg(org) {
172
184
  let response;
173
185
  try {
174
- response = await fetch__default["default"](`https://api.github.com/orgs/${encodeURIComponent(org)}`);
186
+ response = await fetch__default["default"](
187
+ `https://api.github.com/orgs/${encodeURIComponent(org)}`
188
+ );
175
189
  } catch (e) {
176
- console.log(chalk__default["default"].yellow("Warning: Unable to verify existence of GitHub organization. ", e));
190
+ console.log(
191
+ chalk__default["default"].yellow(
192
+ "Warning: Unable to verify existence of GitHub organization. ",
193
+ e
194
+ )
195
+ );
177
196
  }
178
197
  if ((response == null ? void 0 : response.status) === 404) {
179
198
  const questions = [
180
199
  {
181
200
  type: "confirm",
182
201
  name: "shouldCreateOrg",
183
- message: `GitHub organization ${chalk__default["default"].cyan(org)} does not exist. Would you like to create a new Organization instead?`
202
+ message: `GitHub organization ${chalk__default["default"].cyan(
203
+ org
204
+ )} does not exist. Would you like to create a new Organization instead?`
184
205
  }
185
206
  ];
186
207
  const answers = await inquirer__default["default"].prompt(questions);
187
208
  if (!answers.shouldCreateOrg) {
188
- console.log(chalk__default["default"].yellow("GitHub organization must exist to create GitHub app"));
209
+ console.log(
210
+ chalk__default["default"].yellow("GitHub organization must exist to create GitHub app")
211
+ );
189
212
  process.exit(1);
190
213
  }
191
214
  openBrowser__default["default"]("https://github.com/account/organizations/new");
192
- console.log(chalk__default["default"].yellow("Please re-run this command when you have created your new organization"));
215
+ console.log(
216
+ chalk__default["default"].yellow(
217
+ "Please re-run this command when you have created your new organization"
218
+ )
219
+ );
193
220
  process.exit(0);
194
221
  }
195
222
  }
196
223
 
197
224
  exports["default"] = index;
198
- //# sourceMappingURL=index-bb24147b.cjs.js.map
225
+ //# sourceMappingURL=index-16fe1d27.cjs.js.map
@@ -1,9 +1,9 @@
1
1
  'use strict';
2
2
 
3
3
  var fs = require('fs-extra');
4
- var index = require('./index-7e13cc9d.cjs.js');
4
+ var index = require('./index-b7ce30d9.cjs.js');
5
5
  var webpack = require('webpack');
6
- var paths = require('./paths-d98c9d0c.cjs.js');
6
+ var paths = require('./paths-13d8625f.cjs.js');
7
7
  require('yn');
8
8
  require('path');
9
9
  require('react-dev-utils/FileSizeReporter');
@@ -16,18 +16,18 @@ require('webpack-node-externals');
16
16
  require('@backstage/cli-common');
17
17
  require('@manypkg/get-packages');
18
18
  require('mini-css-extract-plugin');
19
- require('./run-5e05ba2c.cjs.js');
19
+ require('./run-f4586ef6.cjs.js');
20
20
  require('eslint-webpack-plugin');
21
21
  require('lodash/pickBy');
22
22
  var chalk = require('chalk');
23
23
  var WebpackDevServer = require('webpack-dev-server');
24
24
  var openBrowser = require('react-dev-utils/openBrowser');
25
25
  var uniq = require('lodash/uniq');
26
- var config = require('./config-de1bf46a.cjs.js');
27
- var Lockfile = require('./Lockfile-48dc675e.cjs.js');
26
+ var config = require('./config-9d64a562.cjs.js');
27
+ var Lockfile = require('./Lockfile-72b7072e.cjs.js');
28
28
  require('minimatch');
29
- var lint = require('./lint-81a75364.cjs.js');
30
- var packageRoles = require('./packageRoles-a310f84c.cjs.js');
29
+ var lint = require('./lint-bd7b9e13.cjs.js');
30
+ var packageRoles = require('./packageRoles-fec3121b.cjs.js');
31
31
  require('commander');
32
32
  require('semver');
33
33
  require('@backstage/errors');
@@ -36,7 +36,7 @@ require('child_process');
36
36
  require('util');
37
37
  require('@backstage/config-loader');
38
38
  require('@backstage/config');
39
- require('./PackageGraph-1d7b086a.cjs.js');
39
+ require('./PackageGraph-7ea22294.cjs.js');
40
40
  require('@yarnpkg/parsers');
41
41
  require('@yarnpkg/lockfile');
42
42
  require('lodash/partition');
@@ -57,6 +57,7 @@ async function serveBackend(options) {
57
57
  ...options,
58
58
  isDev: true
59
59
  });
60
+ process.env.NODE_ENV = "development";
60
61
  const compiler = webpack__default["default"](config, (err) => {
61
62
  if (err) {
62
63
  console.error(err);
@@ -89,28 +90,31 @@ async function serveBundle(options) {
89
90
  baseUrl: url
90
91
  });
91
92
  const compiler = webpack__default["default"](config);
92
- const server = new WebpackDevServer__default["default"]({
93
- hot: !process.env.CI,
94
- devMiddleware: {
95
- publicPath: (_a = config.output) == null ? void 0 : _a.publicPath,
96
- stats: "errors-warnings"
97
- },
98
- static: paths$1.targetPublic ? {
99
- publicPath: (_b = config.output) == null ? void 0 : _b.publicPath,
100
- directory: paths$1.targetPublic
101
- } : void 0,
102
- historyApiFallback: {
103
- disableDotRule: true
93
+ const server = new WebpackDevServer__default["default"](
94
+ {
95
+ hot: !process.env.CI,
96
+ devMiddleware: {
97
+ publicPath: (_a = config.output) == null ? void 0 : _a.publicPath,
98
+ stats: "errors-warnings"
99
+ },
100
+ static: paths$1.targetPublic ? {
101
+ publicPath: (_b = config.output) == null ? void 0 : _b.publicPath,
102
+ directory: paths$1.targetPublic
103
+ } : void 0,
104
+ historyApiFallback: {
105
+ disableDotRule: true
106
+ },
107
+ https: url.protocol === "https:",
108
+ host,
109
+ port,
110
+ proxy: pkg.proxy,
111
+ allowedHosts: [url.hostname],
112
+ client: {
113
+ webSocketURL: "auto://0.0.0.0:0/ws"
114
+ }
104
115
  },
105
- https: url.protocol === "https:",
106
- host,
107
- port,
108
- proxy: pkg.proxy,
109
- allowedHosts: [url.hostname],
110
- client: {
111
- webSocketURL: "auto://0.0.0.0:0/ws"
112
- }
113
- }, compiler);
116
+ compiler
117
+ );
114
118
  await new Promise((resolve, reject) => {
115
119
  server.startCallback((err) => {
116
120
  if (err) {
@@ -151,16 +155,26 @@ async function startFrontend(options) {
151
155
  const result = lockfile.analyze({
152
156
  filter: lint.includedFilter
153
157
  });
154
- const problemPackages = [...result.newVersions, ...result.newRanges].map(({ name: name2 }) => name2);
158
+ const problemPackages = [...result.newVersions, ...result.newRanges].map(
159
+ ({ name: name2 }) => name2
160
+ );
155
161
  if (problemPackages.length > 1) {
156
- console.log(chalk__default["default"].yellow(`\u26A0\uFE0F Some of the following packages may be outdated or have duplicate installations:
162
+ console.log(
163
+ chalk__default["default"].yellow(
164
+ `\u26A0\uFE0F Some of the following packages may be outdated or have duplicate installations:
157
165
 
158
166
  ${uniq__default["default"](problemPackages).join(", ")}
159
- `));
160
- console.log(chalk__default["default"].yellow(`\u26A0\uFE0F This can be resolved using the following command:
167
+ `
168
+ )
169
+ );
170
+ console.log(
171
+ chalk__default["default"].yellow(
172
+ `\u26A0\uFE0F This can be resolved using the following command:
161
173
 
162
174
  yarn backstage-cli versions:check --fix
163
- `));
175
+ `
176
+ )
177
+ );
164
178
  }
165
179
  }
166
180
  const { name } = await fs__default["default"].readJson(index.paths.resolveTarget("package.json"));
@@ -172,7 +186,9 @@ async function startFrontend(options) {
172
186
  const appBaseUrl = config$1.frontendConfig.getString("app.baseUrl");
173
187
  const backendBaseUrl = config$1.frontendConfig.getString("backend.baseUrl");
174
188
  if (appBaseUrl === backendBaseUrl) {
175
- console.log(chalk__default["default"].yellow(`\u26A0\uFE0F Conflict between app baseUrl and backend baseUrl:
189
+ console.log(
190
+ chalk__default["default"].yellow(
191
+ `\u26A0\uFE0F Conflict between app baseUrl and backend baseUrl:
176
192
 
177
193
  app.baseUrl: ${appBaseUrl}
178
194
  backend.baseUrl: ${appBaseUrl}
@@ -180,7 +196,9 @@ async function startFrontend(options) {
180
196
  Must have unique hostname and/or ports.
181
197
 
182
198
  This can be resolved by changing app.baseUrl and backend.baseUrl to point to their respective local development ports.
183
- `));
199
+ `
200
+ )
201
+ );
184
202
  }
185
203
  const waitForExit = await serveBundle({
186
204
  entry: options.entry,
@@ -215,9 +233,11 @@ async function command(opts) {
215
233
  case "frontend-plugin-module":
216
234
  return startFrontend({ entry: "dev/index", ...options });
217
235
  default:
218
- throw new Error(`Start command is not supported for package role '${role}'`);
236
+ throw new Error(
237
+ `Start command is not supported for package role '${role}'`
238
+ );
219
239
  }
220
240
  }
221
241
 
222
242
  exports.command = command;
223
- //# sourceMappingURL=index-4f4a8498.cjs.js.map
243
+ //# sourceMappingURL=index-4f8f2562.cjs.js.map