@nx/react 23.0.0-beta.23 → 23.0.0-beta.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.
Files changed (90) hide show
  1. package/migrations.json +39 -1
  2. package/package.json +20 -16
  3. package/plugins/component-testing/index.js +2 -5
  4. package/plugins/storybook/index.d.ts.map +1 -1
  5. package/plugins/storybook/index.js +15 -9
  6. package/plugins/with-react.d.ts +4 -0
  7. package/plugins/with-react.d.ts.map +1 -1
  8. package/plugins/with-react.js +6 -0
  9. package/src/executors/module-federation-dev-server/module-federation-dev-server.impl.d.ts.map +1 -1
  10. package/src/executors/module-federation-dev-server/module-federation-dev-server.impl.js +7 -9
  11. package/src/executors/module-federation-dev-server/schema.d.ts +1 -1
  12. package/src/executors/module-federation-ssr-dev-server/module-federation-ssr-dev-server.impl.js +6 -7
  13. package/src/executors/module-federation-ssr-dev-server/schema.d.ts +2 -2
  14. package/src/executors/module-federation-static-server/module-federation-static-server.impl.d.ts +1 -1
  15. package/src/executors/module-federation-static-server/module-federation-static-server.impl.d.ts.map +1 -1
  16. package/src/executors/module-federation-static-server/module-federation-static-server.impl.js +9 -12
  17. package/src/generators/application/application.d.ts.map +1 -1
  18. package/src/generators/application/application.js +2 -0
  19. package/src/generators/application/lib/add-linting.d.ts.map +1 -1
  20. package/src/generators/application/lib/add-linting.js +1 -1
  21. package/src/generators/application/lib/add-routing.d.ts.map +1 -1
  22. package/src/generators/application/lib/add-routing.js +1 -1
  23. package/src/generators/application/lib/bundlers/add-rsbuild.js +1 -1
  24. package/src/generators/application/lib/bundlers/add-webpack.d.ts.map +1 -1
  25. package/src/generators/application/lib/bundlers/add-webpack.js +1 -1
  26. package/src/generators/application/lib/install-common-dependencies.d.ts.map +1 -1
  27. package/src/generators/application/lib/install-common-dependencies.js +5 -5
  28. package/src/generators/component/component.d.ts.map +1 -1
  29. package/src/generators/component/component.js +4 -2
  30. package/src/generators/component-story/component-story.d.ts.map +1 -1
  31. package/src/generators/component-story/component-story.js +2 -0
  32. package/src/generators/component-test/component-test.d.ts.map +1 -1
  33. package/src/generators/component-test/component-test.js +2 -0
  34. package/src/generators/consumer/consumer.d.ts.map +1 -1
  35. package/src/generators/consumer/consumer.js +3 -1
  36. package/src/generators/cypress-component-configuration/cypress-component-configuration.d.ts.map +1 -1
  37. package/src/generators/cypress-component-configuration/cypress-component-configuration.js +2 -0
  38. package/src/generators/cypress-component-configuration/lib/add-files.d.ts.map +1 -1
  39. package/src/generators/cypress-component-configuration/lib/add-files.js +2 -2
  40. package/src/generators/federate-module/federate-module.d.ts.map +1 -1
  41. package/src/generators/federate-module/federate-module.js +2 -0
  42. package/src/generators/hook/hook.d.ts.map +1 -1
  43. package/src/generators/hook/hook.js +2 -0
  44. package/src/generators/host/host.d.ts.map +1 -1
  45. package/src/generators/host/host.js +3 -1
  46. package/src/generators/host/lib/setup-ssr-for-host.d.ts.map +1 -1
  47. package/src/generators/host/lib/setup-ssr-for-host.js +1 -1
  48. package/src/generators/init/init.d.ts.map +1 -1
  49. package/src/generators/init/init.js +3 -1
  50. package/src/generators/init/schema.json +1 -1
  51. package/src/generators/library/lib/add-linting.d.ts.map +1 -1
  52. package/src/generators/library/lib/add-linting.js +1 -1
  53. package/src/generators/library/lib/add-rollup-build-target.d.ts.map +1 -1
  54. package/src/generators/library/lib/add-rollup-build-target.js +1 -1
  55. package/src/generators/library/lib/install-common-dependencies.d.ts.map +1 -1
  56. package/src/generators/library/lib/install-common-dependencies.js +2 -2
  57. package/src/generators/library/lib/update-app-routes.d.ts.map +1 -1
  58. package/src/generators/library/lib/update-app-routes.js +1 -1
  59. package/src/generators/library/library.d.ts.map +1 -1
  60. package/src/generators/library/library.js +2 -0
  61. package/src/generators/provider/provider.d.ts.map +1 -1
  62. package/src/generators/provider/provider.js +3 -1
  63. package/src/generators/redux/redux.d.ts.map +1 -1
  64. package/src/generators/redux/redux.js +3 -1
  65. package/src/generators/remote/lib/setup-ssr-for-remote.d.ts.map +1 -1
  66. package/src/generators/remote/lib/setup-ssr-for-remote.js +1 -1
  67. package/src/generators/remote/remote.d.ts.map +1 -1
  68. package/src/generators/remote/remote.js +3 -1
  69. package/src/generators/setup-ssr/setup-ssr.d.ts.map +1 -1
  70. package/src/generators/setup-ssr/setup-ssr.js +3 -1
  71. package/src/generators/stories/stories.d.ts.map +1 -1
  72. package/src/generators/stories/stories.js +2 -0
  73. package/src/generators/storybook-configuration/configuration.d.ts.map +1 -1
  74. package/src/generators/storybook-configuration/configuration.js +3 -1
  75. package/src/migrations/update-23-0-0/migrate-create-nodes-v2-to-create-nodes.d.ts +10 -0
  76. package/src/migrations/update-23-0-0/migrate-create-nodes-v2-to-create-nodes.d.ts.map +1 -0
  77. package/src/migrations/update-23-0-0/migrate-create-nodes-v2-to-create-nodes.js +136 -0
  78. package/src/migrations/update-23-0-0/migrate-create-nodes-v2-to-create-nodes.md +25 -0
  79. package/src/utils/assert-supported-react-version.d.ts +3 -0
  80. package/src/utils/assert-supported-react-version.d.ts.map +1 -0
  81. package/src/utils/assert-supported-react-version.js +8 -0
  82. package/src/utils/deprecation.d.ts +4 -0
  83. package/src/utils/deprecation.d.ts.map +1 -0
  84. package/src/utils/deprecation.js +33 -0
  85. package/src/utils/version-utils.d.ts +1 -0
  86. package/src/utils/version-utils.d.ts.map +1 -1
  87. package/src/utils/version-utils.js +3 -0
  88. package/src/utils/versions.d.ts +3 -2
  89. package/src/utils/versions.d.ts.map +1 -1
  90. package/src/utils/versions.js +6 -3
package/migrations.json CHANGED
@@ -47,6 +47,12 @@
47
47
  "description": "Rewrites imports of NxReactWebpackPlugin from '@nx/react' to the sub-path '@nx/react/webpack-plugin'.",
48
48
  "factory": "./src/migrations/update-23-0-0/remove-nx-react-webpack-plugin-import",
49
49
  "documentation": "./src/migrations/update-23-0-0/remove-nx-react-webpack-plugin-import.md"
50
+ },
51
+ "update-23-0-0-migrate-create-nodes-v2-import": {
52
+ "version": "23.0.0-beta.24",
53
+ "description": "Rename imports of `createNodesV2` from `@nx/react/router-plugin` to the canonical `createNodes` export.",
54
+ "implementation": "./src/migrations/update-23-0-0/migrate-create-nodes-v2-to-create-nodes",
55
+ "documentation": "./src/migrations/update-23-0-0/migrate-create-nodes-v2-to-create-nodes.md"
50
56
  }
51
57
  },
52
58
  "packageJsonUpdates": {
@@ -61,6 +67,9 @@
61
67
  },
62
68
  "20.1.0": {
63
69
  "version": "20.1.0-beta.0",
70
+ "requires": {
71
+ "eslint-plugin-react-hooks": ">=4.0.0 <5.0.0"
72
+ },
64
73
  "packages": {
65
74
  "eslint-plugin-react-hooks": {
66
75
  "version": "5.0.0",
@@ -74,6 +83,9 @@
74
83
  },
75
84
  "20.2.0": {
76
85
  "version": "20.2.0-beta.3",
86
+ "requires": {
87
+ "@module-federation/enhanced": ">=0.6.0 <0.7.0"
88
+ },
77
89
  "packages": {
78
90
  "@module-federation/enhanced": {
79
91
  "version": "0.7.6",
@@ -95,6 +107,9 @@
95
107
  },
96
108
  "20.3.0": {
97
109
  "version": "20.3.0-beta.0",
110
+ "requires": {
111
+ "@testing-library/react": ">=15.0.0 <16.0.0"
112
+ },
98
113
  "packages": {
99
114
  "@testing-library/react": {
100
115
  "version": "16.1.0",
@@ -104,6 +119,9 @@
104
119
  },
105
120
  "21.4.0": {
106
121
  "version": "21.4.0-beta.8",
122
+ "requires": {
123
+ "http-proxy-middleware": ">=2.0.0 <3.0.0"
124
+ },
107
125
  "packages": {
108
126
  "http-proxy-middleware": {
109
127
  "version": "^3.0.5",
@@ -113,6 +131,9 @@
113
131
  },
114
132
  "22.2.0": {
115
133
  "version": "22.2.0-beta.0",
134
+ "requires": {
135
+ "@module-federation/enhanced": ">=0.7.0 <0.8.0"
136
+ },
116
137
  "packages": {
117
138
  "@module-federation/enhanced": {
118
139
  "version": "^0.21.2",
@@ -151,11 +172,22 @@
151
172
  },
152
173
  "22.3.4": {
153
174
  "version": "22.3.4-beta.0",
175
+ "requires": {
176
+ "react-router-dom": ">=6.0.0 <7.0.0"
177
+ },
154
178
  "packages": {
155
179
  "react-router-dom": {
156
180
  "version": "6.30.3",
157
181
  "alwaysAddToPackageJson": false
158
- },
182
+ }
183
+ }
184
+ },
185
+ "22.3.4-react-router": {
186
+ "version": "22.3.4-beta.0",
187
+ "requires": {
188
+ "react-router": ">=7.0.0 <8.0.0"
189
+ },
190
+ "packages": {
159
191
  "react-router": {
160
192
  "version": "7.12.0",
161
193
  "alwaysAddToPackageJson": false
@@ -196,6 +228,9 @@
196
228
  },
197
229
  "22.6.0": {
198
230
  "version": "22.6.0-beta.10",
231
+ "requires": {
232
+ "@module-federation/enhanced": ">=0.21.0 <1.0.0"
233
+ },
199
234
  "x-prompt": "Bump @module-federation packages to v2.x to resolve koa CVE-2026-27959 (via dts-plugin)",
200
235
  "packages": {
201
236
  "@module-federation/enhanced": {
@@ -210,6 +245,9 @@
210
245
  },
211
246
  "22.7.0": {
212
247
  "version": "22.7.0-beta.18",
248
+ "requires": {
249
+ "react-router": ">=7.0.0 <8.0.0"
250
+ },
213
251
  "packages": {
214
252
  "react-router": {
215
253
  "version": "7.14.2",
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@nx/react",
3
- "version": "23.0.0-beta.23",
3
+ "version": "23.0.0-beta.24",
4
4
  "private": false,
5
5
  "description": "The React plugin for Nx contains executors and generators for managing React applications and libraries within an Nx workspace. It provides:\n\n\n- Integration with libraries such as Jest, Vitest, Playwright, Cypress, and Storybook.\n\n- Generators for applications, libraries, components, hooks, and more.\n\n- Library build support for publishing packages to npm or other registries.\n\n- Utilities for automatic workspace refactoring.",
6
6
  "repository": {
@@ -32,33 +32,37 @@
32
32
  "requirements": {},
33
33
  "migrations": "./migrations.json"
34
34
  },
35
+ "peerDependencies": {
36
+ "react": ">=18.0.0 <20.0.0",
37
+ "react-dom": ">=18.0.0 <20.0.0"
38
+ },
35
39
  "dependencies": {
36
40
  "@phenomnomnominal/tsquery": "~6.2.0",
37
41
  "@svgr/webpack": "^8.0.1",
38
42
  "minimatch": "10.2.5",
39
43
  "tslib": "^2.3.0",
40
- "@nx/devkit": "23.0.0-beta.23",
41
- "@nx/js": "23.0.0-beta.23",
42
- "@nx/eslint": "23.0.0-beta.23",
43
- "@nx/web": "23.0.0-beta.23",
44
- "@nx/module-federation": "23.0.0-beta.23",
45
- "@nx/rollup": "23.0.0-beta.23",
44
+ "@nx/devkit": "23.0.0-beta.24",
45
+ "@nx/js": "23.0.0-beta.24",
46
+ "@nx/eslint": "23.0.0-beta.24",
47
+ "@nx/web": "23.0.0-beta.24",
48
+ "@nx/module-federation": "23.0.0-beta.24",
49
+ "@nx/rollup": "23.0.0-beta.24",
46
50
  "express": "^4.21.2",
47
51
  "http-proxy-middleware": "^3.0.5",
48
52
  "semver": "^7.6.3"
49
53
  },
50
54
  "devDependencies": {
51
- "@nx/cypress": "23.0.0-beta.23",
52
- "@nx/playwright": "23.0.0-beta.23",
53
- "@nx/rsbuild": "23.0.0-beta.23",
54
- "@nx/vite": "23.0.0-beta.23",
55
- "@nx/vitest": "23.0.0-beta.23",
56
- "@nx/webpack": "23.0.0-beta.23",
57
- "@nx/storybook": "23.0.0-beta.23",
58
- "nx": "23.0.0-beta.23"
55
+ "@nx/cypress": "23.0.0-beta.24",
56
+ "@nx/playwright": "23.0.0-beta.24",
57
+ "@nx/rsbuild": "23.0.0-beta.24",
58
+ "@nx/vite": "23.0.0-beta.24",
59
+ "@nx/vitest": "23.0.0-beta.24",
60
+ "@nx/webpack": "23.0.0-beta.24",
61
+ "@nx/storybook": "23.0.0-beta.24",
62
+ "nx": "23.0.0-beta.24"
59
63
  },
60
64
  "optionalDependencies": {
61
- "@nx/vite": "23.0.0-beta.23"
65
+ "@nx/vite": "23.0.0-beta.24"
62
66
  },
63
67
  "publishConfig": {
64
68
  "access": "public"
@@ -162,11 +162,8 @@ function buildTargetWebpack(ctx, buildTarget, componentTestingProjectName) {
162
162
  `Please make sure to use '@nx/webpack:webpack' or '@nx/rspack:rspack' executor in that target to use Cypress Component Testing.`);
163
163
  }
164
164
  const context = (0, internal_1.createExecutorContext)(graph, buildableProjectConfig.targets, parsed.project, parsed.target, parsed.target);
165
- const { normalizeOptions, } = require('@nx/webpack/src/executors/webpack/lib/normalize-options');
166
- const { resolveUserDefinedWebpackConfig, } = require('@nx/webpack/src/utils/webpack/resolve-user-defined-webpack-config');
167
- const { composePluginsSync } = require('@nx/webpack/src/utils/config');
168
- const { withNx } = require('@nx/webpack/src/utils/with-nx');
169
- const { withWeb } = require('@nx/webpack/src/utils/with-web');
165
+ const { resolveUserDefinedWebpackConfig } = require('@nx/webpack/internal');
166
+ const { normalizeOptions, composePluginsSync, withNx, withWeb, } = require('@nx/webpack');
170
167
  const options = normalizeOptions(withSchemaDefaults(parsed, context), devkit_1.workspaceRoot, buildableProjectConfig.root, (0, internal_2.getProjectSourceRoot)(buildableProjectConfig));
171
168
  let customWebpack;
172
169
  if (options.webpackConfig) {
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../packages/react/plugins/storybook/index.ts"],"names":[],"mappings":"AAYA,OAAO,EACL,aAAa,EAId,MAAM,SAAS,CAAC;AAiDjB,eAAO,MAAM,IAAI,GAAI,SAAI,EAAE,YAAO,QAGhC,CAAC;AAqFH,eAAO,MAAM,OAAO,GAClB,wBAAwB,aAAkB,EAC1C,SAAS,GAAG,KACX,OAAO,CAAC,aAAa,CAuFvB,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../packages/react/plugins/storybook/index.ts"],"names":[],"mappings":"AAeA,OAAO,EACL,aAAa,EAId,MAAM,SAAS,CAAC;AAkDjB,eAAO,MAAM,IAAI,GAAI,SAAI,EAAE,YAAO,QAGhC,CAAC;AAqFH,eAAO,MAAM,OAAO,GAClB,wBAAwB,aAAkB,EAC1C,SAAS,GAAG,KACX,OAAO,CAAC,aAAa,CA6FvB,CAAC"}
@@ -3,11 +3,13 @@ Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.webpack = exports.core = void 0;
4
4
  const devkit_1 = require("@nx/devkit");
5
5
  const internal_1 = require("@nx/js/internal");
6
- const config_1 = require("@nx/webpack/src/utils/config");
6
+ const webpack_1 = require("@nx/webpack");
7
+ const internal_2 = require("@nx/webpack/internal");
7
8
  const fs_1 = require("fs");
8
9
  const path_1 = require("path");
9
- const webpack_1 = require("webpack");
10
+ const webpack_2 = require("webpack");
10
11
  const with_react_1 = require("../with-react");
12
+ const deprecation_1 = require("../../src/utils/deprecation");
11
13
  const merge_plugins_1 = require("./merge-plugins");
12
14
  // This is shamelessly taken from CRA and modified for NX use
13
15
  // https://github.com/facebook/create-react-app/blob/4784997f0682e75eb32a897b4ffe34d735912e6c/packages/react-scripts/config/env.js#L71
@@ -141,12 +143,16 @@ const webpack = async (storybookWebpackConfig = {}, options) => {
141
143
  };
142
144
  // ESM build for modern browsers.
143
145
  let baseWebpackConfig = {};
144
- const configure = (0, config_1.composePluginsSync)(withNx({ target: 'web', skipTypeChecking: true }), (0, with_react_1.withReact)());
145
- const finalConfig = configure(baseWebpackConfig, {
146
- options: builderOptions,
147
- // TODO(JamesHenry): replace as any type assertion with as ExecutorContext once the nx repo is updated to use https://github.com/nrwl/nx/pull/33095
148
- context: { root: devkit_1.workspaceRoot }, // The context is not used here.
149
- });
146
+ // Nx composes these helpers internally for the storybook preset; suppress
147
+ // their deprecation warning so it fires only for user-authored configs.
148
+ const finalConfig = (0, internal_2.suppressWebpackComposeHelperWarnings)(() => (0, deprecation_1.suppressReactComposeHelperWarnings)(() => {
149
+ const configure = (0, webpack_1.composePluginsSync)(withNx({ target: 'web', skipTypeChecking: true }), (0, with_react_1.withReact)());
150
+ return configure(baseWebpackConfig, {
151
+ options: builderOptions,
152
+ // TODO(JamesHenry): replace as any type assertion with as ExecutorContext once the nx repo is updated to use https://github.com/nrwl/nx/pull/33095
153
+ context: { root: devkit_1.workspaceRoot }, // The context is not used here.
154
+ });
155
+ }));
150
156
  return {
151
157
  ...storybookWebpackConfig,
152
158
  module: {
@@ -170,7 +176,7 @@ const webpack = async (storybookWebpackConfig = {}, options) => {
170
176
  []), ...(finalConfig.resolve
171
177
  .plugins ?? [])),
172
178
  },
173
- plugins: (0, merge_plugins_1.mergePlugins)(new webpack_1.DefinePlugin(getClientEnvironment(storybookWebpackConfig.mode).stringified), ...(storybookWebpackConfig.plugins ?? []), ...(finalConfig.plugins ?? [])),
179
+ plugins: (0, merge_plugins_1.mergePlugins)(new webpack_2.DefinePlugin(getClientEnvironment(storybookWebpackConfig.mode).stringified), ...(storybookWebpackConfig.plugins ?? []), ...(finalConfig.plugins ?? [])),
174
180
  };
175
181
  };
176
182
  exports.webpack = webpack;
@@ -3,6 +3,10 @@ import type { NxWebpackExecutionContext, WithWebOptions } from '@nx/webpack';
3
3
  export interface WithReactOptions extends WithWebOptions {
4
4
  }
5
5
  /**
6
+ * @deprecated Will be removed in Nx v24. Use `NxReactWebpackPlugin` from
7
+ * `@nx/react/webpack-plugin` in a standard webpack config and run
8
+ * `nx g @nx/webpack:convert-to-inferred`. See
9
+ * https://nx.dev/docs/guides/tasks--caching/convert-to-inferred for details.
6
10
  * @param {WithReactOptions} pluginOptions
7
11
  * @returns {NxWebpackPlugin}
8
12
  */
@@ -1 +1 @@
1
- {"version":3,"file":"with-react.d.ts","sourceRoot":"","sources":["../../../../packages/react/plugins/with-react.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,SAAS,CAAC;AAC7C,OAAO,KAAK,EAAE,yBAAyB,EAAE,cAAc,EAAE,MAAM,aAAa,CAAC;AAK7E,MAAM,WAAW,gBAAiB,SAAQ,cAAc;CAAG;AAE3D;;;GAGG;AACH,wBAAgB,SAAS,CAAC,aAAa,GAAE,gBAAqB,IAE1D,QAAQ,aAAa,EACrB,SAAS,yBAAyB,KACjC,aAAa,CAajB"}
1
+ {"version":3,"file":"with-react.d.ts","sourceRoot":"","sources":["../../../../packages/react/plugins/with-react.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,SAAS,CAAC;AAC7C,OAAO,KAAK,EAAE,yBAAyB,EAAE,cAAc,EAAE,MAAM,aAAa,CAAC;AAM7E,MAAM,WAAW,gBAAiB,SAAQ,cAAc;CAAG;AAE3D;;;;;;;GAOG;AACH,wBAAgB,SAAS,CAAC,aAAa,GAAE,gBAAqB,IAG1D,QAAQ,aAAa,EACrB,SAAS,yBAAyB,KACjC,aAAa,CAajB"}
@@ -2,12 +2,18 @@
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.withReact = withReact;
4
4
  const apply_react_config_1 = require("./nx-react-webpack-plugin/lib/apply-react-config");
5
+ const deprecation_1 = require("../src/utils/deprecation");
5
6
  const processed = new Set();
6
7
  /**
8
+ * @deprecated Will be removed in Nx v24. Use `NxReactWebpackPlugin` from
9
+ * `@nx/react/webpack-plugin` in a standard webpack config and run
10
+ * `nx g @nx/webpack:convert-to-inferred`. See
11
+ * https://nx.dev/docs/guides/tasks--caching/convert-to-inferred for details.
7
12
  * @param {WithReactOptions} pluginOptions
8
13
  * @returns {NxWebpackPlugin}
9
14
  */
10
15
  function withReact(pluginOptions = {}) {
16
+ (0, deprecation_1.warnReactWithReactDeprecation)();
11
17
  return function configure(config, context) {
12
18
  const { withWeb } = require('@nx/webpack');
13
19
  if (processed.has(config))
@@ -1 +1 @@
1
- {"version":3,"file":"module-federation-dev-server.impl.d.ts","sourceRoot":"","sources":["../../../../../../packages/react/src/executors/module-federation-dev-server/module-federation-dev-server.impl.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,eAAe,EAAU,MAAM,YAAY,CAAC;AAarD,OAAO,EAAE,gCAAgC,EAAE,MAAM,UAAU,CAAC;AAG5D,wBAA+B,yBAAyB,CACtD,MAAM,EAAE,gCAAgC,EACxC,OAAO,EAAE,eAAe,GACvB,qBAAqB,CAAC;IAAE,OAAO,EAAE,OAAO,CAAC;IAAC,OAAO,CAAC,EAAE,MAAM,CAAA;CAAE,CAAC,CAwG/D"}
1
+ {"version":3,"file":"module-federation-dev-server.impl.d.ts","sourceRoot":"","sources":["../../../../../../packages/react/src/executors/module-federation-dev-server/module-federation-dev-server.impl.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,eAAe,EAAU,MAAM,YAAY,CAAC;AAYrD,OAAO,EAAE,gCAAgC,EAAE,MAAM,UAAU,CAAC;AAG5D,wBAA+B,yBAAyB,CACtD,MAAM,EAAE,gCAAgC,EACxC,OAAO,EAAE,eAAe,GACvB,qBAAqB,CAAC;IAAE,OAAO,EAAE,OAAO,CAAC;IAAC,OAAO,CAAC,EAAE,MAAM,CAAA;CAAE,CAAC,CAwG/D"}
@@ -1,14 +1,12 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.default = moduleFederationDevServer;
4
- const tslib_1 = require("tslib");
5
4
  const devkit_1 = require("@nx/devkit");
6
5
  const internal_1 = require("@nx/devkit/internal");
7
6
  const internal_2 = require("@nx/js/internal");
8
- const utils_1 = require("@nx/module-federation/src/executors/utils");
9
- const file_server_impl_1 = tslib_1.__importDefault(require("@nx/web/src/executors/file-server/file-server.impl"));
10
- const wait_for_port_open_1 = require("@nx/web/src/utils/wait-for-port-open");
11
- const dev_server_impl_1 = tslib_1.__importDefault(require("@nx/webpack/src/executors/dev-server/dev-server.impl"));
7
+ const internal_3 = require("@nx/module-federation/internal");
8
+ const internal_4 = require("@nx/web/internal");
9
+ const webpack_1 = require("@nx/webpack");
12
10
  const fs_1 = require("fs");
13
11
  const path_1 = require("path");
14
12
  const lib_1 = require("./lib");
@@ -17,7 +15,7 @@ async function* moduleFederationDevServer(schema, context) {
17
15
  (0, module_federation_deprecation_1.warnReactMfDevServerExecutorDeprecation)();
18
16
  const options = (0, lib_1.normalizeOptions)(schema);
19
17
  const currIter = options.static
20
- ? (0, file_server_impl_1.default)({
18
+ ? (0, internal_4.fileServerExecutor)({
21
19
  ...options,
22
20
  parallel: false,
23
21
  withDeps: false,
@@ -26,7 +24,7 @@ async function* moduleFederationDevServer(schema, context) {
26
24
  cacheSeconds: -1,
27
25
  }, context)
28
26
  : // TODO(JamesHenry): remove type assertion once the nx repo is updated to use https://github.com/nrwl/nx/pull/33095
29
- (0, dev_server_impl_1.default)(options, context);
27
+ (0, webpack_1.devServerExecutor)(options, context);
30
28
  const p = context.projectsConfigurations.projects[context.projectName];
31
29
  let pathToManifestFile = (0, path_1.join)(context.root, (0, internal_2.getProjectSourceRoot)(p), 'assets/module-federation.manifest.json');
32
30
  if (options.pathToManifestFile) {
@@ -42,7 +40,7 @@ async function* moduleFederationDevServer(schema, context) {
42
40
  if (!options.isInitialHost) {
43
41
  return yield* currIter;
44
42
  }
45
- const { staticRemotesIter, devRemoteIters, remotes } = await (0, utils_1.startRemoteIterators)(options, context, lib_1.startRemotes, pathToManifestFile, 'react');
43
+ const { staticRemotesIter, devRemoteIters, remotes } = await (0, internal_3.startRemoteIterators)(options, context, lib_1.startRemotes, pathToManifestFile, 'react');
46
44
  return yield* (0, internal_1.combineAsyncIterables)(currIter, ...devRemoteIters, ...(staticRemotesIter ? [staticRemotesIter] : []), (0, internal_1.createAsyncIterable)(async ({ next, done }) => {
47
45
  if (!options.isInitialHost) {
48
46
  done();
@@ -58,7 +56,7 @@ async function* moduleFederationDevServer(schema, context) {
58
56
  const portsToWaitFor = staticRemotesIter && options.staticRemotesPort
59
57
  ? [options.staticRemotesPort, ...remotes.remotePorts]
60
58
  : [...remotes.remotePorts];
61
- await Promise.all(portsToWaitFor.map((port) => (0, wait_for_port_open_1.waitForPortOpen)(port, {
59
+ await Promise.all(portsToWaitFor.map((port) => (0, internal_4.waitForPortOpen)(port, {
62
60
  retries: 480,
63
61
  retryDelay: 2500,
64
62
  host: host,
@@ -1,5 +1,5 @@
1
1
  import { WebDevServerOptions } from '@nx/webpack';
2
- import { DevRemoteDefinition } from '@nx/module-federation/src/executors/utils';
2
+ import { DevRemoteDefinition } from '@nx/module-federation/internal';
3
3
 
4
4
  export type ModuleFederationDevServerOptions = WebDevServerOptions & {
5
5
  devRemotes?: DevRemoteDefinition[];
@@ -1,13 +1,12 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.default = moduleFederationSsrDevServer;
4
- const tslib_1 = require("tslib");
5
4
  const devkit_1 = require("@nx/devkit");
6
5
  const internal_1 = require("@nx/devkit/internal");
7
6
  const internal_2 = require("@nx/js/internal");
8
- const utils_1 = require("@nx/module-federation/src/executors/utils");
9
- const wait_for_port_open_1 = require("@nx/web/src/utils/wait-for-port-open");
10
- const ssr_dev_server_impl_1 = tslib_1.__importDefault(require("@nx/webpack/src/executors/ssr-dev-server/ssr-dev-server.impl"));
7
+ const internal_3 = require("@nx/module-federation/internal");
8
+ const internal_4 = require("@nx/web/internal");
9
+ const internal_5 = require("@nx/webpack/internal");
11
10
  const fs_1 = require("fs");
12
11
  const path_1 = require("path");
13
12
  const lib_1 = require("./lib");
@@ -16,7 +15,7 @@ async function* moduleFederationSsrDevServer(ssrDevServerOptions, context) {
16
15
  (0, module_federation_deprecation_1.warnReactMfSsrDevServerExecutorDeprecation)();
17
16
  const options = (0, lib_1.normalizeOptions)(ssrDevServerOptions);
18
17
  // TODO(JamesHenry): remove type assertion once the nx repo is updated to use https://github.com/nrwl/nx/pull/33095
19
- let iter = (0, ssr_dev_server_impl_1.default)(options, context);
18
+ let iter = (0, internal_5.ssrDevServerExecutor)(options, context);
20
19
  const projectConfig = context.projectsConfigurations.projects[context.projectName];
21
20
  let pathToManifestFile = (0, path_1.join)(context.root, (0, internal_2.getProjectSourceRoot)(projectConfig), 'assets/module-federation.manifest.json');
22
21
  if (options.pathToManifestFile) {
@@ -32,7 +31,7 @@ async function* moduleFederationSsrDevServer(ssrDevServerOptions, context) {
32
31
  if (!options.isInitialHost) {
33
32
  return yield* iter;
34
33
  }
35
- const { staticRemotesIter, devRemoteIters, remotes } = await (0, utils_1.startRemoteIterators)(options, context, lib_1.startRemotes, pathToManifestFile, 'react', true);
34
+ const { staticRemotesIter, devRemoteIters, remotes } = await (0, internal_3.startRemoteIterators)(options, context, lib_1.startRemotes, pathToManifestFile, 'react', true);
36
35
  const combined = (0, internal_1.combineAsyncIterables)(staticRemotesIter, ...devRemoteIters);
37
36
  let refs = 1 + (devRemoteIters?.length ?? 0);
38
37
  for await (const result of combined) {
@@ -60,7 +59,7 @@ async function* moduleFederationSsrDevServer(ssrDevServerOptions, context) {
60
59
  const portsToWaitFor = staticRemotesIter && options.staticRemotesPort
61
60
  ? [options.staticRemotesPort, ...remotes.remotePorts]
62
61
  : [...remotes.remotePorts];
63
- await Promise.all(portsToWaitFor.map((port) => (0, wait_for_port_open_1.waitForPortOpen)(port, {
62
+ await Promise.all(portsToWaitFor.map((port) => (0, internal_4.waitForPortOpen)(port, {
64
63
  retries: 480,
65
64
  retryDelay: 2500,
66
65
  host,
@@ -1,5 +1,5 @@
1
- import { WebSsrDevServerOptions } from '@nx/webpack/src/executors/ssr-dev-server/schema';
2
- import { DevRemoteDefinition } from '@nx/module-federation/src/executors/utils';
1
+ import { WebSsrDevServerOptions } from '@nx/webpack/internal';
2
+ import { DevRemoteDefinition } from '@nx/module-federation/internal';
3
3
 
4
4
  export type ModuleFederationSsrDevServerOptions = WebSsrDevServerOptions & {
5
5
  devRemotes?: (
@@ -1,4 +1,4 @@
1
- import { StaticRemotesConfig } from '@nx/module-federation/src/utils';
1
+ import { StaticRemotesConfig } from '@nx/module-federation/internal';
2
2
  import { ExecutorContext } from 'nx/src/config/misc-interfaces';
3
3
  import { ModuleFederationDevServerOptions } from '../module-federation-dev-server/schema';
4
4
  import { ModuleFederationStaticServerSchema } from './schema';
@@ -1 +1 @@
1
- {"version":3,"file":"module-federation-static-server.impl.d.ts","sourceRoot":"","sources":["../../../../../../packages/react/src/executors/module-federation-static-server/module-federation-static-server.impl.ts"],"names":[],"mappings":"AAaA,OAAO,EAIL,mBAAmB,EACpB,MAAM,iCAAiC,CAAC;AAQzC,OAAO,EAAE,eAAe,EAAE,MAAM,+BAA+B,CAAC;AAEhE,OAAO,EAAE,gCAAgC,EAAE,MAAM,wCAAwC,CAAC;AAC1F,OAAO,EAAE,kCAAkC,EAAE,MAAM,UAAU,CAAC;AAgJ9D,wBAAgB,YAAY,CAC1B,mBAAmB,EAAE,mBAAmB,EACxC,gBAAgB,EAAE,gCAAgC,EAClD,oBAAoB,EAAE,MAAM,EAC5B,wBAAwB,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,EAChD,UAAU,CAAC,EAAE;IAAE,UAAU,EAAE,MAAM,CAAC;IAAC,SAAS,EAAE,MAAM,CAAA;CAAE,QAgEvD;AAED,wBAA+B,4BAA4B,CACzD,MAAM,EAAE,kCAAkC,EAC1C,OAAO,EAAE,eAAe;;;aAkJzB"}
1
+ {"version":3,"file":"module-federation-static-server.impl.d.ts","sourceRoot":"","sources":["../../../../../../packages/react/src/executors/module-federation-static-server/module-federation-static-server.impl.ts"],"names":[],"mappings":"AAYA,OAAO,EAKL,mBAAmB,EACpB,MAAM,gCAAgC,CAAC;AAOxC,OAAO,EAAE,eAAe,EAAE,MAAM,+BAA+B,CAAC;AAEhE,OAAO,EAAE,gCAAgC,EAAE,MAAM,wCAAwC,CAAC;AAC1F,OAAO,EAAE,kCAAkC,EAAE,MAAM,UAAU,CAAC;AAgJ9D,wBAAgB,YAAY,CAC1B,mBAAmB,EAAE,mBAAmB,EACxC,gBAAgB,EAAE,gCAAgC,EAClD,oBAAoB,EAAE,MAAM,EAC5B,wBAAwB,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,EAChD,UAAU,CAAC,EAAE;IAAE,UAAU,EAAE,MAAM,CAAC;IAAC,SAAS,EAAE,MAAM,CAAA;CAAE,QAgEvD;AAED,wBAA+B,4BAA4B,CACzD,MAAM,EAAE,kCAAkC,EAC1C,OAAO,EAAE,eAAe;;;aAkJzB"}
@@ -2,14 +2,11 @@
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.startProxies = startProxies;
4
4
  exports.default = moduleFederationStaticServer;
5
- const tslib_1 = require("tslib");
6
5
  const internal_1 = require("@nx/devkit/internal");
7
6
  const devkit_1 = require("@nx/devkit");
8
7
  const internal_2 = require("@nx/js/internal");
9
- const utils_1 = require("@nx/module-federation/src/executors/utils");
10
- const utils_2 = require("@nx/module-federation/src/utils");
11
- const file_server_impl_1 = tslib_1.__importDefault(require("@nx/web/src/executors/file-server/file-server.impl"));
12
- const wait_for_port_open_1 = require("@nx/web/src/utils/wait-for-port-open");
8
+ const internal_3 = require("@nx/module-federation/internal");
9
+ const internal_4 = require("@nx/web/internal");
13
10
  const module_federation_deprecation_1 = require("../../utils/module-federation-deprecation");
14
11
  const child_process_1 = require("child_process");
15
12
  const fs_1 = require("fs");
@@ -166,15 +163,15 @@ async function* moduleFederationStaticServer(schema, context) {
166
163
  // Get the remotes from the module federation config
167
164
  const p = context.projectsConfigurations.projects[context.projectName];
168
165
  const options = getBuildAndServeOptionsFromServeTarget(schema.serveTarget, context);
169
- const moduleFederationConfig = (0, utils_2.getModuleFederationConfig)(options.buildOptions.tsConfig, context.root, p.root, 'react');
170
- const remotes = (0, utils_2.getRemotes)([], options.serveOptions.skipRemotes, moduleFederationConfig, {
166
+ const moduleFederationConfig = (0, internal_3.getModuleFederationConfig)(options.buildOptions.tsConfig, context.root, p.root, 'react');
167
+ const remotes = (0, internal_3.getRemotes)([], options.serveOptions.skipRemotes, moduleFederationConfig, {
171
168
  projectName: context.projectName,
172
169
  projectGraph: context.projectGraph,
173
170
  root: context.root,
174
171
  }, options.pathToManifestFile);
175
- const staticRemotesConfig = (0, utils_2.parseStaticRemotesConfig)([...remotes.staticRemotes, ...remotes.dynamicRemotes], context);
172
+ const staticRemotesConfig = (0, internal_3.parseStaticRemotesConfig)([...remotes.staticRemotes, ...remotes.dynamicRemotes], context);
176
173
  options.serveOptions.staticRemotesPort ??= remotes.staticRemotePort;
177
- const mappedLocationsOfStaticRemotes = await (0, utils_1.buildStaticRemotes)(staticRemotesConfig, nxBin, context, options.serveOptions);
174
+ const mappedLocationsOfStaticRemotes = await (0, internal_3.buildStaticRemotes)(staticRemotesConfig, nxBin, context, options.serveOptions);
178
175
  // Build the host
179
176
  const hostUrlSegment = (0, path_1.basename)(options.buildOptions.outputPath);
180
177
  const mappedLocationOfHost = `http${options.serveOptions.ssl ? 's' : ''}://${options.serveOptions.host}:${options.serveOptions.staticRemotesPort}/${hostUrlSegment}`;
@@ -182,7 +179,7 @@ async function* moduleFederationStaticServer(schema, context) {
182
179
  // Move to a temporary directory
183
180
  const commonOutputDirectory = moveToTmpDirectory(staticRemotesConfig, options.buildOptions.outputPath, hostUrlSegment);
184
181
  // File Serve the temporary directory
185
- const staticFileServerIter = (0, file_server_impl_1.default)({
182
+ const staticFileServerIter = (0, internal_4.fileServerExecutor)({
186
183
  cors: true,
187
184
  watch: false,
188
185
  staticFilePath: commonOutputDirectory,
@@ -208,7 +205,7 @@ async function* moduleFederationStaticServer(schema, context) {
208
205
  const baseUrl = `http${options.serveOptions.ssl ? 's' : ''}://${host}:${options.serveOptions.port}`;
209
206
  if (remotes.remotePorts.length === 0) {
210
207
  const portsToWaitFor = [options.serveOptions.staticRemotesPort];
211
- await Promise.all(portsToWaitFor.map((port) => (0, wait_for_port_open_1.waitForPortOpen)(port, {
208
+ await Promise.all(portsToWaitFor.map((port) => (0, internal_4.waitForPortOpen)(port, {
212
209
  retries: 480,
213
210
  retryDelay: 2500,
214
211
  host: host,
@@ -222,7 +219,7 @@ async function* moduleFederationStaticServer(schema, context) {
222
219
  const portsToWaitFor = staticFileServerIter && options.serveOptions.staticRemotesPort
223
220
  ? [options.serveOptions.staticRemotesPort, ...remotes.remotePorts]
224
221
  : [...remotes.remotePorts];
225
- await Promise.all(portsToWaitFor.map((port) => (0, wait_for_port_open_1.waitForPortOpen)(port, {
222
+ await Promise.all(portsToWaitFor.map((port) => (0, internal_4.waitForPortOpen)(port, {
226
223
  retries: 480,
227
224
  retryDelay: 2500,
228
225
  host: host,
@@ -1 +1 @@
1
- {"version":3,"file":"application.d.ts","sourceRoot":"","sources":["../../../../../../packages/react/src/generators/application/application.ts"],"names":[],"mappings":"AAIA,OAAO,EAEL,iBAAiB,EAMjB,IAAI,EAGL,MAAM,YAAY,CAAC;AA+BpB,OAAO,EAAE,MAAM,EAAE,MAAM,UAAU,CAAC;AAClC,wBAAsB,oBAAoB,CACxC,IAAI,EAAE,IAAI,EACV,MAAM,EAAE,MAAM,GACb,OAAO,CAAC,iBAAiB,CAAC,CAM5B;AAED,wBAAsB,4BAA4B,CAChD,IAAI,EAAE,IAAI,EACV,MAAM,EAAE,MAAM,GACb,OAAO,CAAC,iBAAiB,CAAC,CA2L5B;AAiBD,eAAe,oBAAoB,CAAC"}
1
+ {"version":3,"file":"application.d.ts","sourceRoot":"","sources":["../../../../../../packages/react/src/generators/application/application.ts"],"names":[],"mappings":"AAKA,OAAO,EAEL,iBAAiB,EAMjB,IAAI,EAGL,MAAM,YAAY,CAAC;AA+BpB,OAAO,EAAE,MAAM,EAAE,MAAM,UAAU,CAAC;AAClC,wBAAsB,oBAAoB,CACxC,IAAI,EAAE,IAAI,EACV,MAAM,EAAE,MAAM,GACb,OAAO,CAAC,iBAAiB,CAAC,CAM5B;AAED,wBAAsB,4BAA4B,CAChD,IAAI,EAAE,IAAI,EACV,MAAM,EAAE,MAAM,GACb,OAAO,CAAC,iBAAiB,CAAC,CA6L5B;AAiBD,eAAe,oBAAoB,CAAC"}
@@ -4,6 +4,7 @@ exports.applicationGenerator = applicationGenerator;
4
4
  exports.applicationGeneratorInternal = applicationGeneratorInternal;
5
5
  const tslib_1 = require("tslib");
6
6
  const internal_1 = require("@nx/devkit/internal");
7
+ const assert_supported_react_version_1 = require("../../utils/assert-supported-react-version");
7
8
  const devkit_1 = require("@nx/devkit");
8
9
  const internal_2 = require("@nx/devkit/internal");
9
10
  const js_1 = require("@nx/js");
@@ -32,6 +33,7 @@ async function applicationGenerator(tree, schema) {
32
33
  });
33
34
  }
34
35
  async function applicationGeneratorInternal(tree, schema) {
36
+ (0, assert_supported_react_version_1.assertSupportedReactVersion)(tree);
35
37
  const tasks = [];
36
38
  const addTsPlugin = (0, internal_3.shouldConfigureTsSolutionSetup)(tree, schema.addPlugin, schema.useTsSolution);
37
39
  const jsInitTask = await (0, js_1.initGenerator)(tree, {
@@ -1 +1 @@
1
- {"version":3,"file":"add-linting.d.ts","sourceRoot":"","sources":["../../../../../../../packages/react/src/generators/application/lib/add-linting.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,KAAK,IAAI,EACT,KAAK,iBAAiB,EAIvB,MAAM,YAAY,CAAC;AAYpB,OAAO,EAAE,gBAAgB,EAAE,MAAM,WAAW,CAAC;AAG7C,wBAAsB,UAAU,CAAC,IAAI,EAAE,IAAI,EAAE,OAAO,EAAE,gBAAgB,8BAsDrE;AAiCD,wBAAgB,iBAAiB,CAAC,IAAI,EAAE,IAAI,GAAG,OAAO,CAYrD"}
1
+ {"version":3,"file":"add-linting.d.ts","sourceRoot":"","sources":["../../../../../../../packages/react/src/generators/application/lib/add-linting.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,KAAK,IAAI,EACT,KAAK,iBAAiB,EAIvB,MAAM,YAAY,CAAC;AAYpB,OAAO,EAAE,gBAAgB,EAAE,MAAM,WAAW,CAAC;AAG7C,wBAAsB,UAAU,CAAC,IAAI,EAAE,IAAI,EAAE,OAAO,EAAE,gBAAgB,8BAwDrE;AAiCD,wBAAgB,iBAAiB,CAAC,IAAI,EAAE,IAAI,GAAG,OAAO,CAYrD"}
@@ -73,7 +73,7 @@ async function addLinting(host, options) {
73
73
  }
74
74
  }
75
75
  if (!options.skipPackageJson) {
76
- const installTask = (0, devkit_2.addDependenciesToPackageJson)(host, lint_1.extraEslintDependencies.dependencies, lint_1.extraEslintDependencies.devDependencies);
76
+ const installTask = (0, devkit_2.addDependenciesToPackageJson)(host, lint_1.extraEslintDependencies.dependencies, lint_1.extraEslintDependencies.devDependencies, undefined, true);
77
77
  const addSwcTask = (0, internal_2.addSwcDependencies)(host);
78
78
  tasks.push(installTask, addSwcTask);
79
79
  }
@@ -1 +1 @@
1
- {"version":3,"file":"add-routing.d.ts","sourceRoot":"","sources":["../../../../../../../packages/react/src/generators/application/lib/add-routing.ts"],"names":[],"mappings":"AAAA,OAAO,EAEL,IAAI,EAGL,MAAM,YAAY,CAAC;AAKpB,OAAO,EAAE,gBAAgB,EAAE,MAAM,WAAW,CAAC;AAI7C,wBAAgB,UAAU,CAAC,IAAI,EAAE,IAAI,EAAE,OAAO,EAAE,gBAAgB,0CAyC/D"}
1
+ {"version":3,"file":"add-routing.d.ts","sourceRoot":"","sources":["../../../../../../../packages/react/src/generators/application/lib/add-routing.ts"],"names":[],"mappings":"AAAA,OAAO,EAEL,IAAI,EAGL,MAAM,YAAY,CAAC;AAKpB,OAAO,EAAE,gBAAgB,EAAE,MAAM,WAAW,CAAC;AAI7C,wBAAgB,UAAU,CAAC,IAAI,EAAE,IAAI,EAAE,OAAO,EAAE,gBAAgB,0CA2C/D"}
@@ -23,7 +23,7 @@ function addRouting(host, options) {
23
23
  const changes = (0, devkit_1.applyChangesToString)(appFileContent, (0, ast_utils_1.addInitialRoutes)(appPath, appSource, options.inSourceTests));
24
24
  host.write(appPath, changes);
25
25
  if (!options.skipPackageJson) {
26
- return (0, devkit_1.addDependenciesToPackageJson)(host, { 'react-router-dom': versions_1.reactRouterDomVersion }, {});
26
+ return (0, devkit_1.addDependenciesToPackageJson)(host, { 'react-router-dom': versions_1.reactRouterDomVersion }, {}, undefined, true);
27
27
  }
28
28
  return () => { };
29
29
  }
@@ -76,5 +76,5 @@ async function setupRsbuildConfiguration(tree, options, tasks) {
76
76
  addHtmlTemplatePath(tree, pathToConfigFile, './src/index.html');
77
77
  addCopyAssets(tree, pathToConfigFile, './src/assets');
78
78
  addCopyAssets(tree, pathToConfigFile, './src/favicon.ico');
79
- tasks.push((0, devkit_1.addDependenciesToPackageJson)(tree, {}, deps));
79
+ tasks.push((0, devkit_1.addDependenciesToPackageJson)(tree, {}, deps, undefined, true));
80
80
  }
@@ -1 +1 @@
1
- {"version":3,"file":"add-webpack.d.ts","sourceRoot":"","sources":["../../../../../../../../packages/react/src/generators/application/lib/bundlers/add-webpack.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,IAAI,EAAiB,MAAM,YAAY,CAAC;AAEtD,OAAO,EAAE,MAAM,EAAE,gBAAgB,EAAE,MAAM,cAAc,CAAC;AAExD,wBAAsB,WAAW,CAC/B,IAAI,EAAE,IAAI,EACV,OAAO,EAAE,gBAAgB,CAAC,MAAM,CAAC,EACjC,KAAK,EAAE,GAAG,EAAE,iBAkBb"}
1
+ {"version":3,"file":"add-webpack.d.ts","sourceRoot":"","sources":["../../../../../../../../packages/react/src/generators/application/lib/bundlers/add-webpack.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,IAAI,EAAiB,MAAM,YAAY,CAAC;AAEtD,OAAO,EAAE,MAAM,EAAE,gBAAgB,EAAE,MAAM,cAAc,CAAC;AAExD,wBAAsB,WAAW,CAC/B,IAAI,EAAE,IAAI,EACV,OAAO,EAAE,gBAAgB,CAAC,MAAM,CAAC,EACjC,KAAK,EAAE,GAAG,EAAE,iBAgBb"}
@@ -45,7 +45,7 @@ async function initWebpack(tree, options, tasks) {
45
45
  });
46
46
  tasks.push(webpackInitTask);
47
47
  if (!options.skipPackageJson) {
48
- const { ensureDependencies } = await Promise.resolve().then(() => __importStar(require('@nx/webpack/src/utils/ensure-dependencies')));
48
+ const { ensureDependencies } = await Promise.resolve().then(() => __importStar(require('@nx/webpack/internal')));
49
49
  tasks.push(ensureDependencies(tree, { uiFramework: 'react' }));
50
50
  }
51
51
  }
@@ -1 +1 @@
1
- {"version":3,"file":"install-common-dependencies.d.ts","sourceRoot":"","sources":["../../../../../../../packages/react/src/generators/application/lib/install-common-dependencies.ts"],"names":[],"mappings":"AAAA,OAAO,EAAgC,IAAI,EAAE,MAAM,YAAY,CAAC;AAahE,OAAO,EAAE,gBAAgB,EAAE,MAAM,WAAW,CAAC;AAG7C,wBAAsB,yBAAyB,CAC7C,IAAI,EAAE,IAAI,EACV,OAAO,EAAE,gBAAgB,mDAwD1B"}
1
+ {"version":3,"file":"install-common-dependencies.d.ts","sourceRoot":"","sources":["../../../../../../../packages/react/src/generators/application/lib/install-common-dependencies.ts"],"names":[],"mappings":"AAAA,OAAO,EAAgC,IAAI,EAAE,MAAM,YAAY,CAAC;AAYhE,OAAO,EAAE,gBAAgB,EAAE,MAAM,WAAW,CAAC;AAG7C,wBAAsB,yBAAyB,CAC7C,IAAI,EAAE,IAAI,EACV,OAAO,EAAE,gBAAgB,mDA8D1B"}
@@ -16,7 +16,7 @@ async function installCommonDependencies(host, options) {
16
16
  '@types/node': versions_1.typesNodeVersion,
17
17
  ...(options.useReactRouter
18
18
  ? {
19
- '@react-router/dev': versions_1.reactRouterVersion,
19
+ '@react-router/dev': reactDeps['react-router'],
20
20
  }
21
21
  : {}),
22
22
  };
@@ -24,9 +24,9 @@ async function installCommonDependencies(host, options) {
24
24
  dependencies['tslib'] = versions_1.tsLibVersion;
25
25
  }
26
26
  if (options.useReactRouter) {
27
- dependencies['react-router'] = versions_1.reactRouterVersion;
28
- dependencies['@react-router/node'] = versions_1.reactRouterVersion;
29
- dependencies['@react-router/serve'] = versions_1.reactRouterVersion;
27
+ dependencies['react-router'] = reactDeps['react-router'];
28
+ dependencies['@react-router/node'] = reactDeps['react-router'];
29
+ dependencies['@react-router/serve'] = reactDeps['react-router'];
30
30
  dependencies['isbot'] = versions_1.reactRouterIsBotVersion;
31
31
  }
32
32
  // Vite requires style preprocessors to be installed manually.
@@ -51,5 +51,5 @@ async function installCommonDependencies(host, options) {
51
51
  devDependencies['@testing-library/react'] = versions_1.testingLibraryReactVersion;
52
52
  devDependencies['@testing-library/dom'] = versions_1.testingLibraryDomVersion;
53
53
  }
54
- return (0, devkit_1.addDependenciesToPackageJson)(host, dependencies, devDependencies);
54
+ return (0, devkit_1.addDependenciesToPackageJson)(host, dependencies, devDependencies, undefined, true);
55
55
  }
@@ -1 +1 @@
1
- {"version":3,"file":"component.d.ts","sourceRoot":"","sources":["../../../../../../packages/react/src/generators/component/component.ts"],"names":[],"mappings":"AAAA,OAAO,EAKL,iBAAiB,EAIjB,IAAI,EACL,MAAM,YAAY,CAAC;AAQpB,OAAO,EAAoB,MAAM,EAAE,MAAM,UAAU,CAAC;AAGpD,wBAAsB,kBAAkB,CAAC,IAAI,EAAE,IAAI,EAAE,MAAM,EAAE,MAAM,8BAsBlE;AAiFD,eAAe,kBAAkB,CAAC"}
1
+ {"version":3,"file":"component.d.ts","sourceRoot":"","sources":["../../../../../../packages/react/src/generators/component/component.ts"],"names":[],"mappings":"AAAA,OAAO,EAKL,iBAAiB,EAIjB,IAAI,EACL,MAAM,YAAY,CAAC;AAOpB,OAAO,EAAoB,MAAM,EAAE,MAAM,UAAU,CAAC;AAKpD,wBAAsB,kBAAkB,CAAC,IAAI,EAAE,IAAI,EAAE,MAAM,EAAE,MAAM,8BA0BlE;AAiFD,eAAe,kBAAkB,CAAC"}
@@ -6,16 +6,18 @@ const internal_1 = require("@nx/js/internal");
6
6
  const path_1 = require("path");
7
7
  const ast_utils_1 = require("../../utils/ast-utils");
8
8
  const get_in_source_vitest_tests_template_1 = require("../../utils/get-in-source-vitest-tests-template");
9
- const versions_1 = require("../../utils/versions");
10
9
  const get_component_tests_1 = require("./lib/get-component-tests");
11
10
  const normalize_options_1 = require("./lib/normalize-options");
11
+ const versions_1 = require("../../utils/versions");
12
+ const assert_supported_react_version_1 = require("../../utils/assert-supported-react-version");
12
13
  async function componentGenerator(host, schema) {
14
+ (0, assert_supported_react_version_1.assertSupportedReactVersion)(host);
13
15
  const options = await (0, normalize_options_1.normalizeOptions)(host, schema);
14
16
  createComponentFiles(host, options);
15
17
  const tasks = [];
16
18
  addExportsToBarrel(host, options);
17
19
  if (options.routing) {
18
- const routingTask = (0, devkit_1.addDependenciesToPackageJson)(host, { 'react-router-dom': versions_1.reactRouterDomVersion }, {});
20
+ const routingTask = (0, devkit_1.addDependenciesToPackageJson)(host, { 'react-router-dom': versions_1.reactRouterDomVersion }, {}, undefined, true);
19
21
  tasks.push(routingTask);
20
22
  }
21
23
  if (!options.skipFormat) {