@backstage/cli 0.26.11 → 0.27.0-next.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 (48) hide show
  1. package/CHANGELOG.md +52 -0
  2. package/config/eslint-factory.js +1 -0
  3. package/dist/cjs/Lockfile-B4mqBkH6.cjs.js +86 -0
  4. package/dist/cjs/{build-DwlXzIpR.cjs.js → build-CKbg8vDy.cjs.js} +8 -13
  5. package/dist/cjs/{buildBackend-CrncxAY5.cjs.js → buildBackend-CKvZxnhd.cjs.js} +17 -41
  6. package/dist/cjs/{buildWorkspace-D95Cv1QN.cjs.js → buildWorkspace-Bgal1pOb.cjs.js} +4 -4
  7. package/dist/cjs/{bump-b90k9Vrg.cjs.js → bump-CiNV2fUk.cjs.js} +7 -84
  8. package/dist/cjs/{clean-Bev614vS.cjs.js → clean-DWLquyLr.cjs.js} +2 -2
  9. package/dist/cjs/{clean-Cn9pRgoI.cjs.js → clean-zL7jVsU5.cjs.js} +2 -2
  10. package/dist/cjs/{codeowners-C_BzEYI6.cjs.js → codeowners-BrkuyJ8l.cjs.js} +2 -2
  11. package/dist/cjs/{config-EizsMYjy.cjs.js → config-OxHvAWIF.cjs.js} +43 -35
  12. package/dist/cjs/{createDistWorkspace-CqCdLqOV.cjs.js → createDistWorkspace-DwyDvZfi.cjs.js} +3 -3
  13. package/dist/cjs/{createPlugin-Dp_zJ1vU.cjs.js → createPlugin-Ck9TOlnh.cjs.js} +6 -6
  14. package/dist/cjs/{diff-SflPPir6.cjs.js → diff-Dm8uwN3O.cjs.js} +2 -2
  15. package/dist/cjs/{docs-B0MlNQaZ.cjs.js → docs-DiVm3Jyl.cjs.js} +3 -3
  16. package/dist/cjs/{fix-BoMIpogO.cjs.js → fix-D7YmpV2S.cjs.js} +2 -2
  17. package/dist/cjs/{index-D6bTzT6C.cjs.js → index-0ipl86K1.cjs.js} +19 -15
  18. package/dist/cjs/{index-Do6EL2Yb.cjs.js → index-Bv4-PI5M.cjs.js} +4 -4
  19. package/dist/cjs/{index-JoytU5ZM.cjs.js → index-D18yXEOi.cjs.js} +2 -2
  20. package/dist/cjs/{index-nl4fBJN1.cjs.js → index-LFa1qFkm.cjs.js} +49 -63
  21. package/dist/cjs/{index-7vT98W4X.cjs.js → index-bOEMttRt.cjs.js} +47 -47
  22. package/dist/cjs/{info-BRPLyhql.cjs.js → info-D2kXSViM.cjs.js} +4 -4
  23. package/dist/cjs/{install-DBTY3GMv.cjs.js → install-Bps4yUpK.cjs.js} +5 -5
  24. package/dist/cjs/lint-Dkx_fBkS.cjs.js +10 -0
  25. package/dist/cjs/{lint-6Ua9puez.cjs.js → lint-lreWPKDb.cjs.js} +2 -2
  26. package/dist/cjs/{lint-DmKqylEy.cjs.js → lint-sP18LtkH.cjs.js} +2 -2
  27. package/dist/cjs/{list-deprecations-DNYfBnHZ.cjs.js → list-deprecations-DarYxnzb.cjs.js} +2 -2
  28. package/dist/cjs/{packageDetection-DlDcN5Ll.cjs.js → moduleFederation-Ds12A1ny.cjs.js} +94 -25
  29. package/dist/cjs/{new-WebKpNSz.cjs.js → new-D72AQ8YF.cjs.js} +6 -6
  30. package/dist/cjs/{pack-5if7U6_6.cjs.js → pack-BFAsZEaP.cjs.js} +2 -2
  31. package/dist/cjs/{packageExports-Ddqkury2.cjs.js → packageExports-CKvYT5Dd.cjs.js} +3 -3
  32. package/dist/cjs/{packageLintConfigs-CrhcoEVX.cjs.js → packageLintConfigs-BJUnt71U.cjs.js} +3 -3
  33. package/dist/cjs/{packageRole-CBF_rIK0.cjs.js → packageRole-BCFLf-ng.cjs.js} +2 -2
  34. package/dist/cjs/{packages-RRALGdRj.cjs.js → packages-tE0j2nFD.cjs.js} +3 -3
  35. package/dist/cjs/{print-Caq1MMDY.cjs.js → print-CE1QTUoS.cjs.js} +3 -3
  36. package/dist/cjs/{role-DNHddFRX.cjs.js → role-5g8jmQmw.cjs.js} +2 -2
  37. package/dist/cjs/{run-Dyr28990.cjs.js → run-D3KP0xX6.cjs.js} +2 -2
  38. package/dist/cjs/{schema-CXKpYRvf.cjs.js → schema-DhYVPVv8.cjs.js} +3 -3
  39. package/dist/cjs/{tasks-CMO3PrbZ.cjs.js → tasks-CFmZJX_z.cjs.js} +2 -2
  40. package/dist/cjs/{test-CyF0ge7_.cjs.js → test-BqJnIwQq.cjs.js} +3 -3
  41. package/dist/cjs/{test-CTXtMelk.cjs.js → test-CBw6il53.cjs.js} +3 -3
  42. package/dist/cjs/{validate-CPunUthn.cjs.js → validate-CebIxFrQ.cjs.js} +3 -3
  43. package/dist/index.cjs.js +1 -1
  44. package/package.json +10 -10
  45. package/templates/default-backend-plugin/package.json.hbs +0 -1
  46. package/templates/default-backend-plugin/src/service/router.ts +2 -3
  47. package/dist/cjs/Lockfile-BndFvzHc.cjs.js +0 -221
  48. package/dist/cjs/lint-CCzUmZcU.cjs.js +0 -112
@@ -10,14 +10,14 @@ var camelCase = require('lodash/camelCase');
10
10
  var upperFirst = require('lodash/upperFirst');
11
11
  var os = require('os');
12
12
  var errors = require('@backstage/errors');
13
- var codeowners = require('./codeowners-C_BzEYI6.cjs.js');
14
- var index = require('./index-7vT98W4X.cjs.js');
15
- var tasks = require('./tasks-CMO3PrbZ.cjs.js');
16
- var Lockfile = require('./Lockfile-BndFvzHc.cjs.js');
13
+ var codeowners = require('./codeowners-BrkuyJ8l.cjs.js');
14
+ var index = require('./index-bOEMttRt.cjs.js');
15
+ var tasks = require('./tasks-CFmZJX_z.cjs.js');
16
+ var Lockfile = require('./Lockfile-B4mqBkH6.cjs.js');
17
17
  require('minimatch');
18
18
  require('@manypkg/get-packages');
19
19
  require('./yarn-Ukl9MOS0.cjs.js');
20
- require('./run-Dyr28990.cjs.js');
20
+ require('./run-D3KP0xX6.cjs.js');
21
21
  require('commander');
22
22
  require('semver');
23
23
  require('@backstage/cli-common');
@@ -275,4 +275,4 @@ exports.addPluginExtensionToApp = addPluginExtensionToApp;
275
275
  exports.capitalize = capitalize;
276
276
  exports.default = createPlugin;
277
277
  exports.movePlugin = movePlugin;
278
- //# sourceMappingURL=createPlugin-Dp_zJ1vU.cjs.js.map
278
+ //# sourceMappingURL=createPlugin-Ck9TOlnh.cjs.js.map
@@ -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-7vT98W4X.cjs.js');
10
+ var index = require('./index-bOEMttRt.cjs.js');
11
11
  require('commander');
12
12
  require('semver');
13
13
  require('@backstage/cli-common');
@@ -433,4 +433,4 @@ async function readPluginData() {
433
433
  }
434
434
 
435
435
  exports.default = diff;
436
- //# sourceMappingURL=diff-SflPPir6.cjs.js.map
436
+ //# sourceMappingURL=diff-Dm8uwN3O.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-EizsMYjy.cjs.js');
5
+ var config = require('./config-OxHvAWIF.cjs.js');
6
6
  require('@backstage/config');
7
- require('./index-7vT98W4X.cjs.js');
7
+ require('./index-bOEMttRt.cjs.js');
8
8
  require('commander');
9
9
  require('chalk');
10
10
  require('fs-extra');
@@ -34,4 +34,4 @@ var docs = async (opts) => {
34
34
  };
35
35
 
36
36
  exports.default = docs;
37
- //# sourceMappingURL=docs-B0MlNQaZ.cjs.js.map
37
+ //# sourceMappingURL=docs-DiVm3Jyl.cjs.js.map
@@ -3,7 +3,7 @@
3
3
  var cliNode = require('@backstage/cli-node');
4
4
  var fs = require('fs-extra');
5
5
  var path = require('path');
6
- var index = require('./index-7vT98W4X.cjs.js');
6
+ var index = require('./index-bOEMttRt.cjs.js');
7
7
  var publishing = require('./publishing-DQtsKTbc.cjs.js');
8
8
  require('commander');
9
9
  require('chalk');
@@ -359,4 +359,4 @@ exports.fixSideEffects = fixSideEffects;
359
359
  exports.printPackageFixHint = printPackageFixHint;
360
360
  exports.readFixablePackages = readFixablePackages;
361
361
  exports.writeFixedPackages = writeFixedPackages;
362
- //# sourceMappingURL=fix-BoMIpogO.cjs.js.map
362
+ //# sourceMappingURL=fix-D7YmpV2S.cjs.js.map
@@ -1,11 +1,10 @@
1
1
  'use strict';
2
2
 
3
- var createDistWorkspace = require('./createDistWorkspace-CqCdLqOV.cjs.js');
4
- var role = require('./role-DNHddFRX.cjs.js');
3
+ var createDistWorkspace = require('./createDistWorkspace-DwyDvZfi.cjs.js');
4
+ var role = require('./role-5g8jmQmw.cjs.js');
5
5
  var cliNode = require('@backstage/cli-node');
6
- var index = require('./index-7vT98W4X.cjs.js');
7
- var buildBackend = require('./buildBackend-CrncxAY5.cjs.js');
8
- var config = require('./config-EizsMYjy.cjs.js');
6
+ var index = require('./index-bOEMttRt.cjs.js');
7
+ var buildBackend = require('./buildBackend-CKvZxnhd.cjs.js');
9
8
  var chalk = require('chalk');
10
9
  require('fs-extra');
11
10
  require('path');
@@ -13,7 +12,7 @@ require('p-limit');
13
12
  require('os');
14
13
  require('tar');
15
14
  require('lodash/partition');
16
- require('./run-Dyr28990.cjs.js');
15
+ require('./run-D3KP0xX6.cjs.js');
17
16
  require('child_process');
18
17
  require('util');
19
18
  require('@backstage/errors');
@@ -43,36 +42,41 @@ require('html-webpack-plugin');
43
42
  require('@module-federation/enhanced/webpack');
44
43
  require('react-dev-utils/ModuleScopePlugin');
45
44
  require('run-script-webpack-plugin');
45
+ require('@pmmmwh/react-refresh-webpack-plugin');
46
46
  require('@manypkg/get-packages');
47
47
  require('webpack-node-externals');
48
- require('./packageDetection-DlDcN5Ll.cjs.js');
48
+ require('./moduleFederation-Ds12A1ny.cjs.js');
49
49
  require('lodash/pickBy');
50
50
  require('mini-css-extract-plugin');
51
- require('@pmmmwh/react-refresh-webpack-plugin');
52
51
  require('yn');
53
52
  require('@backstage/config');
54
53
  require('chokidar');
55
54
  require('p-queue');
56
55
  require('react-dev-utils/FileSizeReporter');
57
56
  require('react-dev-utils/formatWebpackMessages');
58
- require('lodash/uniq');
59
57
  require('react-dev-utils/openBrowser');
60
58
  require('webpack-dev-server');
61
- require('@yarnpkg/parsers');
62
- require('@yarnpkg/lockfile');
63
- require('minimatch');
64
- require('./yarn-Ukl9MOS0.cjs.js');
59
+ require('./config-OxHvAWIF.cjs.js');
65
60
  require('@backstage/config-loader');
66
61
 
67
62
  function _interopDefaultCompat (e) { return e && typeof e === 'object' && 'default' in e ? e : { default: e }; }
68
63
 
69
64
  var chalk__default = /*#__PURE__*/_interopDefaultCompat(chalk);
70
65
 
66
+ function isValidUrl(url) {
67
+ try {
68
+ new URL(url);
69
+ return true;
70
+ } catch {
71
+ return false;
72
+ }
73
+ }
74
+
71
75
  async function command(opts) {
72
76
  const role$1 = await role.findRoleFromCommand(opts);
73
77
  if (role$1 === "frontend" || role$1 === "backend") {
74
78
  const configPaths = opts.config.map((arg) => {
75
- if (config.isValidUrl(arg)) {
79
+ if (isValidUrl(arg)) {
76
80
  return arg;
77
81
  }
78
82
  return index.paths.resolveTarget(arg);
@@ -122,4 +126,4 @@ async function command(opts) {
122
126
  }
123
127
 
124
128
  exports.command = command;
125
- //# sourceMappingURL=index-D6bTzT6C.cjs.js.map
129
+ //# sourceMappingURL=index-0ipl86K1.cjs.js.map
@@ -2,14 +2,14 @@
2
2
 
3
3
  var chalk = require('chalk');
4
4
  var inquirer = require('inquirer');
5
- var tasks = require('./tasks-CMO3PrbZ.cjs.js');
5
+ var tasks = require('./tasks-CFmZJX_z.cjs.js');
6
6
  var oauthApp = require('@octokit/oauth-app');
7
7
  var fs = require('fs-extra');
8
8
  var yaml = require('yaml');
9
9
  var cliCommon = require('@backstage/cli-common');
10
10
  var path = require('path');
11
11
  var differ = require('diff');
12
- var config = require('./config-EizsMYjy.cjs.js');
12
+ var config = require('./config-OxHvAWIF.cjs.js');
13
13
  var catalogModel = require('@backstage/catalog-model');
14
14
  var z = require('zod');
15
15
  var integration = require('@backstage/integration');
@@ -22,7 +22,7 @@ require('util');
22
22
  require('recursive-readdir');
23
23
  require('child_process');
24
24
  require('@backstage/errors');
25
- require('./index-7vT98W4X.cjs.js');
25
+ require('./index-bOEMttRt.cjs.js');
26
26
  require('commander');
27
27
  require('semver');
28
28
  require('@backstage/config-loader');
@@ -1024,4 +1024,4 @@ async function command() {
1024
1024
  }
1025
1025
 
1026
1026
  exports.command = command;
1027
- //# sourceMappingURL=index-Do6EL2Yb.cjs.js.map
1027
+ //# sourceMappingURL=index-Bv4-PI5M.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-7vT98W4X.cjs.js');
7
+ var index$1 = require('./index-bOEMttRt.cjs.js');
8
8
  var crypto = require('crypto');
9
9
  var openBrowser = require('react-dev-utils/openBrowser');
10
10
  var request = require('@octokit/request');
@@ -224,4 +224,4 @@ async function verifyGithubOrg(org) {
224
224
  }
225
225
 
226
226
  exports.default = index;
227
- //# sourceMappingURL=index-JoytU5ZM.cjs.js.map
227
+ //# sourceMappingURL=index-D18yXEOi.cjs.js.map
@@ -1,14 +1,15 @@
1
1
  'use strict';
2
2
 
3
- var role = require('./role-DNHddFRX.cjs.js');
3
+ var role = require('./role-5g8jmQmw.cjs.js');
4
4
  var fs = require('fs-extra');
5
- var index = require('./index-7vT98W4X.cjs.js');
5
+ var index = require('./index-bOEMttRt.cjs.js');
6
6
  var webpack = require('webpack');
7
- var packageDetection = require('./packageDetection-DlDcN5Ll.cjs.js');
7
+ var moduleFederation = require('./moduleFederation-Ds12A1ny.cjs.js');
8
8
  require('yn');
9
9
  var path = require('path');
10
10
  require('react-dev-utils/FileSizeReporter');
11
11
  require('react-dev-utils/formatWebpackMessages');
12
+ var chalk = require('chalk');
12
13
  require('eslint-webpack-plugin');
13
14
  require('fork-ts-checker-webpack-plugin');
14
15
  require('html-webpack-plugin');
@@ -16,35 +17,26 @@ require('@module-federation/enhanced/webpack');
16
17
  require('@backstage/cli-common');
17
18
  require('react-dev-utils/ModuleScopePlugin');
18
19
  require('run-script-webpack-plugin');
20
+ require('@pmmmwh/react-refresh-webpack-plugin');
19
21
  require('@manypkg/get-packages');
20
22
  require('webpack-node-externals');
21
23
  require('lodash/pickBy');
22
- require('./run-Dyr28990.cjs.js');
24
+ require('./run-D3KP0xX6.cjs.js');
23
25
  require('mini-css-extract-plugin');
24
- require('@pmmmwh/react-refresh-webpack-plugin');
25
- var chalk = require('chalk');
26
- var cliNode = require('@backstage/cli-node');
27
- var uniq = require('lodash/uniq');
28
26
  var openBrowser = require('react-dev-utils/openBrowser');
29
27
  var WebpackDevServer = require('webpack-dev-server');
30
- require('semver');
31
- require('@yarnpkg/parsers');
32
- require('@yarnpkg/lockfile');
33
- require('minimatch');
34
- require('./yarn-Ukl9MOS0.cjs.js');
35
- require('lodash/partition');
36
28
  require('@backstage/config-loader');
37
29
  require('@backstage/config');
30
+ require('@backstage/cli-node');
38
31
  var chokidar = require('chokidar');
39
32
  var ctrlcWindows = require('ctrlc-windows');
40
33
  var errors = require('@backstage/errors');
41
34
  var debounce = require('lodash/debounce');
42
35
  var url = require('url');
43
36
  var spawn = require('cross-spawn');
44
- var lint = require('./lint-CCzUmZcU.cjs.js');
45
- var config = require('./config-EizsMYjy.cjs.js');
46
- var Lockfile = require('./Lockfile-BndFvzHc.cjs.js');
37
+ var config = require('./config-OxHvAWIF.cjs.js');
47
38
  require('commander');
39
+ require('semver');
48
40
  require('./entryPoints-CoHH4lBA.cjs.js');
49
41
  require('./svgrTemplate-BTjBQ3by.cjs.js');
50
42
  require('p-queue');
@@ -56,15 +48,14 @@ function _interopDefaultCompat (e) { return e && typeof e === 'object' && 'defau
56
48
  var fs__default = /*#__PURE__*/_interopDefaultCompat(fs);
57
49
  var webpack__default = /*#__PURE__*/_interopDefaultCompat(webpack);
58
50
  var chalk__default = /*#__PURE__*/_interopDefaultCompat(chalk);
59
- var uniq__default = /*#__PURE__*/_interopDefaultCompat(uniq);
60
51
  var openBrowser__default = /*#__PURE__*/_interopDefaultCompat(openBrowser);
61
52
  var WebpackDevServer__default = /*#__PURE__*/_interopDefaultCompat(WebpackDevServer);
62
53
  var debounce__default = /*#__PURE__*/_interopDefaultCompat(debounce);
63
54
  var spawn__default = /*#__PURE__*/_interopDefaultCompat(spawn);
64
55
 
65
56
  async function serveBackend(options) {
66
- const paths = packageDetection.resolveBundlingPaths(options);
67
- const config = await packageDetection.createBackendConfig(paths, {
57
+ const paths = moduleFederation.resolveBundlingPaths(options);
58
+ const config = await moduleFederation.createBackendConfig(paths, {
68
59
  ...options,
69
60
  isDev: true
70
61
  });
@@ -87,37 +78,9 @@ async function serveBackend(options) {
87
78
  }
88
79
 
89
80
  async function serveBundle(options) {
90
- const paths = packageDetection.resolveBundlingPaths(options);
81
+ const paths = moduleFederation.resolveBundlingPaths(options);
91
82
  const targetPkg = await fs__default.default.readJson(paths.targetPackageJson);
92
83
  if (options.verifyVersions) {
93
- const lockfile = await Lockfile.Lockfile.load(
94
- index.paths.resolveTargetRoot("yarn.lock")
95
- );
96
- const result = lockfile.analyze({
97
- filter: lint.includedFilter,
98
- localPackages: cliNode.PackageGraph.fromPackages(
99
- await cliNode.PackageGraph.listTargetPackages()
100
- )
101
- });
102
- const problemPackages = [...result.newVersions, ...result.newRanges].map(({ name: name2 }) => name2).filter(lint.forbiddenDuplicatesFilter);
103
- if (problemPackages.length > 1) {
104
- console.log(
105
- chalk__default.default.yellow(
106
- `\u26A0\uFE0F Some of the following packages may be outdated or have duplicate installations:
107
-
108
- ${uniq__default.default(problemPackages).join(", ")}
109
- `
110
- )
111
- );
112
- console.log(
113
- chalk__default.default.yellow(
114
- `\u26A0\uFE0F This can be resolved using the following command:
115
-
116
- yarn backstage-cli versions:check --fix
117
- `
118
- )
119
- );
120
- }
121
84
  if (targetPkg.dependencies?.["react-router"]?.includes("beta") || targetPkg.dependencies?.["react-router-dom"]?.includes("beta")) {
122
85
  console.warn(
123
86
  chalk__default.default.yellow(`
@@ -162,10 +125,12 @@ DEPRECATION WARNING: React Router Beta is deprecated and support for it will be
162
125
  );
163
126
  }
164
127
  const { frontendConfig, fullConfig } = cliConfig;
165
- const url = packageDetection.resolveBaseUrl(frontendConfig);
166
- const host = frontendConfig.getOptionalString("app.listen.host") || url.hostname;
167
- const port = frontendConfig.getOptionalNumber("app.listen.port") || Number(url.port) || (url.protocol === "https:" ? 443 : 80);
168
- const detectedModulesEntryPoint = await packageDetection.createDetectedModulesEntryPoint({
128
+ const url = moduleFederation.resolveBaseUrl(frontendConfig, options.moduleFederation);
129
+ const { host, port } = moduleFederation.resolveEndpoint(
130
+ frontendConfig,
131
+ options.moduleFederation
132
+ );
133
+ const detectedModulesEntryPoint = await moduleFederation.createDetectedModulesEntryPoint({
169
134
  config: fullConfig,
170
135
  targetPath: paths.targetPath,
171
136
  watch() {
@@ -183,9 +148,10 @@ DEPRECATION WARNING: React Router Beta is deprecated and support for it will be
183
148
  return latestFrontendAppConfigs;
184
149
  }
185
150
  };
186
- const config$1 = await packageDetection.createConfig(paths, {
151
+ const config$1 = await moduleFederation.createConfig(paths, {
187
152
  ...commonConfigOptions,
188
- additionalEntryPoints: detectedModulesEntryPoint
153
+ additionalEntryPoints: detectedModulesEntryPoint,
154
+ moduleFederation: options.moduleFederation
189
155
  });
190
156
  if (process.env.EXPERIMENTAL_VITE) {
191
157
  const vite = require("vite");
@@ -201,7 +167,7 @@ DEPRECATION WARNING: React Router Beta is deprecated and support for it will be
201
167
  "process.env.APP_CONFIG": JSON.stringify(cliConfig.frontendAppConfigs),
202
168
  // This allows for conditional imports of react-dom/client, since there's no way
203
169
  // to check for presence of it in source code without module resolution errors.
204
- "process.env.HAS_REACT_DOM_CLIENT": JSON.stringify(packageDetection.hasReactDomClient())
170
+ "process.env.HAS_REACT_DOM_CLIENT": JSON.stringify(moduleFederation.hasReactDomClient())
205
171
  },
206
172
  plugins: [
207
173
  viteReact(),
@@ -227,7 +193,7 @@ DEPRECATION WARNING: React Router Beta is deprecated and support for it will be
227
193
  root: paths.targetPath
228
194
  });
229
195
  } else {
230
- const publicPaths = await packageDetection.resolveOptionalBundlingPaths({
196
+ const publicPaths = await moduleFederation.resolveOptionalBundlingPaths({
231
197
  entry: "src/index-public-experimental",
232
198
  dist: "dist/public"
233
199
  });
@@ -238,7 +204,7 @@ DEPRECATION WARNING: React Router Beta is deprecated and support for it will be
238
204
  )
239
205
  );
240
206
  }
241
- const compiler = publicPaths ? webpack__default.default([config$1, await packageDetection.createConfig(publicPaths, commonConfigOptions)]) : webpack__default.default(config$1);
207
+ const compiler = publicPaths ? webpack__default.default([config$1, await moduleFederation.createConfig(publicPaths, commonConfigOptions)]) : webpack__default.default(config$1);
242
208
  webpackServer = new WebpackDevServer__default.default(
243
209
  {
244
210
  hot: !process.env.CI,
@@ -250,7 +216,7 @@ DEPRECATION WARNING: React Router Beta is deprecated and support for it will be
250
216
  publicPath: config$1.output?.publicPath,
251
217
  directory: paths.targetPublic
252
218
  } : void 0,
253
- historyApiFallback: {
219
+ historyApiFallback: options.moduleFederation?.mode === "remote" ? false : {
254
220
  // Paths with dots should still use the history fallback.
255
221
  // See https://github.com/facebookincubator/create-react-app/issues/387.
256
222
  disableDotRule: true,
@@ -270,7 +236,12 @@ DEPRECATION WARNING: React Router Beta is deprecated and support for it will be
270
236
  // When the dev server is behind a proxy, the host and public hostname differ
271
237
  allowedHosts: [url.hostname],
272
238
  client: {
273
- webSocketURL: "auto://0.0.0.0:0/ws"
239
+ webSocketURL: { hostname: host, port }
240
+ },
241
+ headers: {
242
+ "Access-Control-Allow-Origin": "*",
243
+ "Access-Control-Allow-Methods": "GET, OPTIONS",
244
+ "Access-Control-Allow-Headers": "X-Requested-With, content-type, Authorization"
274
245
  }
275
246
  },
276
247
  compiler
@@ -290,7 +261,9 @@ DEPRECATION WARNING: React Router Beta is deprecated and support for it will be
290
261
  resolve();
291
262
  }
292
263
  });
293
- openBrowser__default.default(url.href);
264
+ if (!options.skipOpenBrowser) {
265
+ openBrowser__default.default(url.href);
266
+ }
294
267
  const waitForExit = async () => {
295
268
  for (const signal of ["SIGINT", "SIGTERM"]) {
296
269
  process.on(signal, () => {
@@ -590,11 +563,17 @@ async function cleanDistAndServeBackend(options) {
590
563
  }
591
564
 
592
565
  async function startFrontend(options) {
566
+ const { name } = await fs.readJson(index.paths.resolveTarget("package.json"));
593
567
  const waitForExit = await serveBundle({
594
568
  entry: options.entry,
595
569
  checksEnabled: options.checksEnabled,
596
570
  configPaths: options.configPaths,
597
- verifyVersions: options.verifyVersions
571
+ verifyVersions: options.verifyVersions,
572
+ skipOpenBrowser: options.skipOpenBrowser,
573
+ moduleFederation: moduleFederation.getModuleFederationOptions(
574
+ name,
575
+ options.isModuleFederationRemote
576
+ )
598
577
  });
599
578
  await waitForExit();
600
579
  }
@@ -625,6 +604,13 @@ async function command(opts) {
625
604
  case "frontend-plugin":
626
605
  case "frontend-plugin-module":
627
606
  return startFrontend({ entry: "dev/index", ...options });
607
+ case "frontend-dynamic-container":
608
+ return startFrontend({
609
+ entry: "src/index",
610
+ ...options,
611
+ skipOpenBrowser: true,
612
+ isModuleFederationRemote: true
613
+ });
628
614
  default:
629
615
  throw new Error(
630
616
  `Start command is not supported for package role '${role$1}'`
@@ -633,4 +619,4 @@ async function command(opts) {
633
619
  }
634
620
 
635
621
  exports.command = command;
636
- //# sourceMappingURL=index-nl4fBJN1.cjs.js.map
622
+ //# sourceMappingURL=index-LFa1qFkm.cjs.js.map