@nx/webpack 17.3.0-beta.2 → 17.3.0-beta.4
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/package.json +4 -4
- package/src/generators/init/init.js +11 -25
- package/src/generators/init/schema.d.ts +1 -2
- package/src/generators/init/schema.json +5 -12
- package/src/plugins/nx-webpack-plugin/lib/apply-base-config.js +7 -5
- package/src/utils/ensure-dependencies.d.ts +6 -0
- package/src/utils/ensure-dependencies.js +28 -0
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@nx/webpack",
|
|
3
|
-
"version": "17.3.0-beta.
|
|
3
|
+
"version": "17.3.0-beta.4",
|
|
4
4
|
"private": false,
|
|
5
5
|
"description": "The Nx Plugin for Webpack contains executors and generators that support building applications using Webpack.",
|
|
6
6
|
"repository": {
|
|
@@ -62,9 +62,9 @@
|
|
|
62
62
|
"webpack-dev-server": "^4.9.3",
|
|
63
63
|
"webpack-node-externals": "^3.0.0",
|
|
64
64
|
"webpack-subresource-integrity": "^5.1.0",
|
|
65
|
-
"@nx/devkit": "17.3.0-beta.
|
|
66
|
-
"@nx/js": "17.3.0-beta.
|
|
67
|
-
"@nrwl/webpack": "17.3.0-beta.
|
|
65
|
+
"@nx/devkit": "17.3.0-beta.4",
|
|
66
|
+
"@nx/js": "17.3.0-beta.4",
|
|
67
|
+
"@nrwl/webpack": "17.3.0-beta.4"
|
|
68
68
|
},
|
|
69
69
|
"publishConfig": {
|
|
70
70
|
"access": "public"
|
|
@@ -2,40 +2,26 @@
|
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
3
|
exports.webpackInitGenerator = void 0;
|
|
4
4
|
const devkit_1 = require("@nx/devkit");
|
|
5
|
-
const add_swc_dependencies_1 = require("@nx/js/src/utils/swc/add-swc-dependencies");
|
|
6
5
|
const versions_1 = require("../../utils/versions");
|
|
7
6
|
async function webpackInitGenerator(tree, schema) {
|
|
8
7
|
const shouldAddPlugin = process.env.NX_PCV3 === 'true';
|
|
9
|
-
const tasks = [];
|
|
10
|
-
const devDependencies = {
|
|
11
|
-
'@nx/webpack': versions_1.nxVersion,
|
|
12
|
-
};
|
|
13
8
|
if (shouldAddPlugin) {
|
|
14
|
-
|
|
15
|
-
}
|
|
16
|
-
if (schema.compiler === 'swc') {
|
|
17
|
-
devDependencies['swc-loader'] = versions_1.swcLoaderVersion;
|
|
18
|
-
const addSwcTask = (0, add_swc_dependencies_1.addSwcDependencies)(tree);
|
|
19
|
-
tasks.push(addSwcTask);
|
|
20
|
-
}
|
|
21
|
-
if (schema.compiler === 'tsc') {
|
|
22
|
-
devDependencies['tslib'] = versions_1.tsLibVersion;
|
|
9
|
+
addPlugin(tree);
|
|
23
10
|
}
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
11
|
+
let installTask = () => { };
|
|
12
|
+
if (!schema.skipPackageJson) {
|
|
13
|
+
const devDependencies = {
|
|
14
|
+
'@nx/webpack': versions_1.nxVersion,
|
|
15
|
+
};
|
|
16
|
+
if (shouldAddPlugin) {
|
|
17
|
+
devDependencies['webpack-cli'] = versions_1.webpackCliVersion;
|
|
18
|
+
}
|
|
19
|
+
installTask = (0, devkit_1.addDependenciesToPackageJson)(tree, {}, devDependencies);
|
|
30
20
|
}
|
|
31
21
|
if (!schema.skipFormat) {
|
|
32
22
|
await (0, devkit_1.formatFiles)(tree);
|
|
33
23
|
}
|
|
34
|
-
|
|
35
|
-
tasks.push(baseInstallTask);
|
|
36
|
-
if (shouldAddPlugin)
|
|
37
|
-
addPlugin(tree);
|
|
38
|
-
return (0, devkit_1.runTasksInSerial)(...tasks);
|
|
24
|
+
return installTask;
|
|
39
25
|
}
|
|
40
26
|
exports.webpackInitGenerator = webpackInitGenerator;
|
|
41
27
|
function addPlugin(tree) {
|
|
@@ -6,22 +6,15 @@
|
|
|
6
6
|
"description": "Initialize the Webpack Plugin.",
|
|
7
7
|
"type": "object",
|
|
8
8
|
"properties": {
|
|
9
|
-
"uiFramework": {
|
|
10
|
-
"type": "string",
|
|
11
|
-
"description": "UI Framework to use for Webpack.",
|
|
12
|
-
"enum": ["react", "none"],
|
|
13
|
-
"x-prompt": "What UI framework plugin should Webpack use?"
|
|
14
|
-
},
|
|
15
|
-
"compiler": {
|
|
16
|
-
"type": "string",
|
|
17
|
-
"enum": ["babel", "swc", "tsc"],
|
|
18
|
-
"description": "The compiler to initialize for.",
|
|
19
|
-
"default": "babel"
|
|
20
|
-
},
|
|
21
9
|
"skipFormat": {
|
|
22
10
|
"description": "Skip formatting files.",
|
|
23
11
|
"type": "boolean",
|
|
24
12
|
"default": false
|
|
13
|
+
},
|
|
14
|
+
"skipPackageJson": {
|
|
15
|
+
"description": "Do not add dependencies to `package.json`.",
|
|
16
|
+
"type": "boolean",
|
|
17
|
+
"default": false
|
|
25
18
|
}
|
|
26
19
|
},
|
|
27
20
|
"required": []
|
|
@@ -271,13 +271,15 @@ function applyNxDependentConfig(options, config, { useNormalizedEntry } = {}) {
|
|
|
271
271
|
}
|
|
272
272
|
config.resolve = {
|
|
273
273
|
...config.resolve,
|
|
274
|
-
extensions: [...
|
|
275
|
-
alias:
|
|
276
|
-
|
|
274
|
+
extensions: [...(config?.resolve?.extensions ?? []), ...extensions],
|
|
275
|
+
alias: {
|
|
276
|
+
...(config.resolve?.alias ?? {}),
|
|
277
|
+
...(options.fileReplacements?.reduce((aliases, replacement) => ({
|
|
277
278
|
...aliases,
|
|
278
279
|
[replacement.replace]: replacement.with,
|
|
279
|
-
}), {}),
|
|
280
|
-
|
|
280
|
+
}), {}) ?? {}),
|
|
281
|
+
},
|
|
282
|
+
mainFields: config.resolve?.mainFields ?? mainFields,
|
|
281
283
|
};
|
|
282
284
|
config.externals = externals;
|
|
283
285
|
config.module = {
|
|
@@ -0,0 +1,6 @@
|
|
|
1
|
+
import { type GeneratorCallback, type Tree } from '@nx/devkit';
|
|
2
|
+
export type EnsureDependenciesOptions = {
|
|
3
|
+
compiler?: 'swc' | 'tsc';
|
|
4
|
+
uiFramework?: 'none' | 'react';
|
|
5
|
+
};
|
|
6
|
+
export declare function ensureDependencies(tree: Tree, options: EnsureDependenciesOptions): GeneratorCallback;
|
|
@@ -0,0 +1,28 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.ensureDependencies = void 0;
|
|
4
|
+
const devkit_1 = require("@nx/devkit");
|
|
5
|
+
const add_swc_dependencies_1 = require("@nx/js/src/utils/swc/add-swc-dependencies");
|
|
6
|
+
const versions_1 = require("./versions");
|
|
7
|
+
function ensureDependencies(tree, options) {
|
|
8
|
+
const tasks = [];
|
|
9
|
+
const devDependencies = {};
|
|
10
|
+
if (options.compiler === 'swc') {
|
|
11
|
+
devDependencies['swc-loader'] = versions_1.swcLoaderVersion;
|
|
12
|
+
const addSwcTask = (0, add_swc_dependencies_1.addSwcDependencies)(tree);
|
|
13
|
+
tasks.push(addSwcTask);
|
|
14
|
+
}
|
|
15
|
+
if (options.compiler === 'tsc') {
|
|
16
|
+
devDependencies['tslib'] = versions_1.tsLibVersion;
|
|
17
|
+
}
|
|
18
|
+
if (options.uiFramework === 'react') {
|
|
19
|
+
devDependencies['@pmmmwh/react-refresh-webpack-plugin'] =
|
|
20
|
+
versions_1.reactRefreshWebpackPluginVersion;
|
|
21
|
+
devDependencies['@svgr/webpack'] = versions_1.svgrWebpackVersion;
|
|
22
|
+
devDependencies['react-refresh'] = versions_1.reactRefreshVersion;
|
|
23
|
+
devDependencies['url-loader'] = versions_1.urlLoaderVersion;
|
|
24
|
+
}
|
|
25
|
+
tasks.push((0, devkit_1.addDependenciesToPackageJson)(tree, {}, devDependencies));
|
|
26
|
+
return (0, devkit_1.runTasksInSerial)(...tasks);
|
|
27
|
+
}
|
|
28
|
+
exports.ensureDependencies = ensureDependencies;
|