@nx/rspack 17.0.0 → 17.2.0
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 +3 -2
- package/src/executors/rspack/schema.d.ts +3 -1
- package/src/executors/rspack/schema.json +8 -0
- package/src/plugins/generate-package-json-plugin.d.ts +12 -0
- package/src/plugins/generate-package-json-plugin.js +48 -0
- package/src/plugins/generate-package-json-plugin.js.map +1 -0
- package/src/utils/with-nx.js +11 -3
- package/src/utils/with-nx.js.map +1 -1
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@nx/rspack",
|
|
3
|
-
"version": "17.
|
|
3
|
+
"version": "17.2.0",
|
|
4
4
|
"type": "commonjs",
|
|
5
5
|
"repository": {
|
|
6
6
|
"type": "git",
|
|
@@ -31,7 +31,8 @@
|
|
|
31
31
|
"sass-loader": "^12.2.0",
|
|
32
32
|
"stylus-loader": "^7.1.0",
|
|
33
33
|
"tsconfig-paths": "4.2.0",
|
|
34
|
-
"
|
|
34
|
+
"webpack-sources": "3.2.3",
|
|
35
|
+
"@nrwl/rspack": "17.2.0"
|
|
35
36
|
},
|
|
36
37
|
"nx-migrations": {
|
|
37
38
|
"migrations": "./migrations.json"
|
|
@@ -5,6 +5,7 @@ export interface RspackExecutorSchema {
|
|
|
5
5
|
tsConfig: string;
|
|
6
6
|
typeCheck?: boolean;
|
|
7
7
|
outputPath: string;
|
|
8
|
+
outputFileName?: string;
|
|
8
9
|
indexHtml?: string;
|
|
9
10
|
mode?: Mode;
|
|
10
11
|
watch?: boolean;
|
|
@@ -15,9 +16,10 @@ export interface RspackExecutorSchema {
|
|
|
15
16
|
assets?: any[];
|
|
16
17
|
extractLicenses?: boolean;
|
|
17
18
|
fileReplacements?: FileReplacement[];
|
|
19
|
+
generatePackageJson?: boolean;
|
|
18
20
|
}
|
|
19
21
|
|
|
20
22
|
export interface FileReplacement {
|
|
21
23
|
replace: string;
|
|
22
24
|
with: string;
|
|
23
|
-
}
|
|
25
|
+
}
|
|
@@ -18,6 +18,10 @@
|
|
|
18
18
|
"type": "string",
|
|
19
19
|
"description": "The output path for the bundle."
|
|
20
20
|
},
|
|
21
|
+
"outputFileName": {
|
|
22
|
+
"type": "string",
|
|
23
|
+
"description": "The main output entry file"
|
|
24
|
+
},
|
|
21
25
|
"tsConfig": {
|
|
22
26
|
"type": "string",
|
|
23
27
|
"description": "The tsconfig file to build the project."
|
|
@@ -89,6 +93,10 @@
|
|
|
89
93
|
"type": "string",
|
|
90
94
|
"description": "Mode to run the build in.",
|
|
91
95
|
"enum": ["development", "production", "none"]
|
|
96
|
+
},
|
|
97
|
+
"generatePackageJson": {
|
|
98
|
+
"type": "boolean",
|
|
99
|
+
"description": "Generates a `package.json` and pruned lock file with the project's `node_module` dependencies populated for installing in a container. If a `package.json` exists in the project's directory, it will be reused with dependencies populated."
|
|
92
100
|
}
|
|
93
101
|
},
|
|
94
102
|
"required": ["target", "main", "outputPath", "tsConfig", "rspackConfig"],
|
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
import { ExecutorContext } from '@nx/devkit';
|
|
2
|
+
import { type Compiler, type RspackPluginInstance } from '@rspack/core';
|
|
3
|
+
export declare class GeneratePackageJsonPlugin implements RspackPluginInstance {
|
|
4
|
+
private readonly options;
|
|
5
|
+
private readonly context;
|
|
6
|
+
private readonly projectGraph;
|
|
7
|
+
constructor(options: {
|
|
8
|
+
tsConfig: string;
|
|
9
|
+
outputFileName: string;
|
|
10
|
+
}, context: ExecutorContext);
|
|
11
|
+
apply(compiler: Compiler): void;
|
|
12
|
+
}
|
|
@@ -0,0 +1,48 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.GeneratePackageJsonPlugin = void 0;
|
|
4
|
+
const devkit_1 = require("@nx/devkit");
|
|
5
|
+
const js_1 = require("@nx/js");
|
|
6
|
+
const webpack_sources_1 = require("webpack-sources");
|
|
7
|
+
const pluginName = 'GeneratePackageJsonPlugin';
|
|
8
|
+
class GeneratePackageJsonPlugin {
|
|
9
|
+
constructor(options, context) {
|
|
10
|
+
this.options = options;
|
|
11
|
+
this.context = context;
|
|
12
|
+
this.projectGraph = context.projectGraph;
|
|
13
|
+
}
|
|
14
|
+
apply(compiler) {
|
|
15
|
+
compiler.hooks.thisCompilation.tap(pluginName, (compilation) => {
|
|
16
|
+
compilation.hooks.processAssets.tap({
|
|
17
|
+
name: pluginName,
|
|
18
|
+
stage: compiler.webpack.Compilation.PROCESS_ASSETS_STAGE_ADDITIONAL,
|
|
19
|
+
}, () => {
|
|
20
|
+
var _a;
|
|
21
|
+
const helperDependencies = (0, js_1.getHelperDependenciesFromProjectGraph)(this.context.root, this.context.projectName, this.projectGraph);
|
|
22
|
+
const importHelpers = !!(0, js_1.readTsConfig)(this.options.tsConfig).options
|
|
23
|
+
.importHelpers;
|
|
24
|
+
const shouldAddHelperDependency = importHelpers &&
|
|
25
|
+
helperDependencies.every((dep) => dep.target !== js_1.HelperDependency.tsc);
|
|
26
|
+
if (shouldAddHelperDependency) {
|
|
27
|
+
helperDependencies.push({
|
|
28
|
+
type: 'static',
|
|
29
|
+
source: this.context.projectName,
|
|
30
|
+
target: js_1.HelperDependency.tsc,
|
|
31
|
+
});
|
|
32
|
+
}
|
|
33
|
+
const packageJson = (0, js_1.createPackageJson)(this.context.projectName, this.projectGraph, {
|
|
34
|
+
target: this.context.targetName,
|
|
35
|
+
root: this.context.root,
|
|
36
|
+
isProduction: true,
|
|
37
|
+
helperDependencies: helperDependencies.map((dep) => dep.target),
|
|
38
|
+
});
|
|
39
|
+
packageJson.main = (_a = packageJson.main) !== null && _a !== void 0 ? _a : this.options.outputFileName;
|
|
40
|
+
compilation.emitAsset('package.json', new webpack_sources_1.RawSource((0, devkit_1.serializeJson)(packageJson)));
|
|
41
|
+
const packageManager = (0, devkit_1.detectPackageManager)(this.context.root);
|
|
42
|
+
compilation.emitAsset((0, js_1.getLockFileName)(packageManager), new webpack_sources_1.RawSource((0, js_1.createLockFile)(packageJson, this.projectGraph, packageManager)));
|
|
43
|
+
});
|
|
44
|
+
});
|
|
45
|
+
}
|
|
46
|
+
}
|
|
47
|
+
exports.GeneratePackageJsonPlugin = GeneratePackageJsonPlugin;
|
|
48
|
+
//# sourceMappingURL=generate-package-json-plugin.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"generate-package-json-plugin.js","sourceRoot":"","sources":["../../../../../packages/rspack/src/plugins/generate-package-json-plugin.ts"],"names":[],"mappings":";;;AAAA,uCAKoB;AACpB,+BAOgB;AAEhB,qDAA4C;AAE5C,MAAM,UAAU,GAAG,2BAA2B,CAAC;AAE/C,MAAa,yBAAyB;IAGpC,YACmB,OAAqD,EACrD,OAAwB;QADxB,YAAO,GAAP,OAAO,CAA8C;QACrD,YAAO,GAAP,OAAO,CAAiB;QAEzC,IAAI,CAAC,YAAY,GAAG,OAAO,CAAC,YAAY,CAAC;IAC3C,CAAC;IAED,KAAK,CAAC,QAAkB;QACtB,QAAQ,CAAC,KAAK,CAAC,eAAe,CAAC,GAAG,CAAC,UAAU,EAAE,CAAC,WAAW,EAAE,EAAE;YAC7D,WAAW,CAAC,KAAK,CAAC,aAAa,CAAC,GAAG,CACjC;gBACE,IAAI,EAAE,UAAU;gBAChB,KAAK,EAAE,QAAQ,CAAC,OAAO,CAAC,WAAW,CAAC,+BAA+B;aACpE,EACD,GAAG,EAAE;;gBACH,MAAM,kBAAkB,GAAG,IAAA,0CAAqC,EAC9D,IAAI,CAAC,OAAO,CAAC,IAAI,EACjB,IAAI,CAAC,OAAO,CAAC,WAAW,EACxB,IAAI,CAAC,YAAY,CAClB,CAAC;gBAEF,MAAM,aAAa,GAAG,CAAC,CAAC,IAAA,iBAAY,EAAC,IAAI,CAAC,OAAO,CAAC,QAAQ,CAAC,CAAC,OAAO;qBAChE,aAAa,CAAC;gBACjB,MAAM,yBAAyB,GAC7B,aAAa;oBACb,kBAAkB,CAAC,KAAK,CACtB,CAAC,GAAG,EAAE,EAAE,CAAC,GAAG,CAAC,MAAM,KAAK,qBAAgB,CAAC,GAAG,CAC7C,CAAC;gBAEJ,IAAI,yBAAyB,EAAE;oBAC7B,kBAAkB,CAAC,IAAI,CAAC;wBACtB,IAAI,EAAE,QAAQ;wBACd,MAAM,EAAE,IAAI,CAAC,OAAO,CAAC,WAAW;wBAChC,MAAM,EAAE,qBAAgB,CAAC,GAAG;qBAC7B,CAAC,CAAC;iBACJ;gBAED,MAAM,WAAW,GAAG,IAAA,sBAAiB,EACnC,IAAI,CAAC,OAAO,CAAC,WAAW,EACxB,IAAI,CAAC,YAAY,EACjB;oBACE,MAAM,EAAE,IAAI,CAAC,OAAO,CAAC,UAAU;oBAC/B,IAAI,EAAE,IAAI,CAAC,OAAO,CAAC,IAAI;oBACvB,YAAY,EAAE,IAAI;oBAClB,kBAAkB,EAAE,kBAAkB,CAAC,GAAG,CAAC,CAAC,GAAG,EAAE,EAAE,CAAC,GAAG,CAAC,MAAM,CAAC;iBAChE,CACF,CAAC;gBACF,WAAW,CAAC,IAAI,GAAG,MAAA,WAAW,CAAC,IAAI,mCAAI,IAAI,CAAC,OAAO,CAAC,cAAc,CAAC;gBAEnE,WAAW,CAAC,SAAS,CACnB,cAAc,EACd,IAAI,2BAAS,CAAC,IAAA,sBAAa,EAAC,WAAW,CAAC,CAAC,CAC1C,CAAC;gBACF,MAAM,cAAc,GAAG,IAAA,6BAAoB,EAAC,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC;gBAC/D,WAAW,CAAC,SAAS,CACnB,IAAA,oBAAe,EAAC,cAAc,CAAC,EAC/B,IAAI,2BAAS,CACX,IAAA,mBAAc,EAAC,WAAW,EAAE,IAAI,CAAC,YAAY,EAAE,cAAc,CAAC,CAC/D,CACF,CAAC;YACJ,CAAC,CACF,CAAC;QACJ,CAAC,CAAC,CAAC;IACL,CAAC;CACF;AAnED,8DAmEC"}
|
package/src/utils/with-nx.js
CHANGED
|
@@ -1,13 +1,14 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
3
|
exports.withNx = void 0;
|
|
4
|
+
const license_webpack_plugin_1 = require("license-webpack-plugin");
|
|
4
5
|
const path = require("path");
|
|
6
|
+
const generate_package_json_plugin_1 = require("../plugins/generate-package-json-plugin");
|
|
5
7
|
const get_copy_patterns_1 = require("./get-copy-patterns");
|
|
6
8
|
const normalize_assets_1 = require("./normalize-assets");
|
|
7
|
-
const license_webpack_plugin_1 = require("license-webpack-plugin");
|
|
8
9
|
function withNx(_opts = {}) {
|
|
9
10
|
return function makeConfig(config, { options, context }) {
|
|
10
|
-
var _a;
|
|
11
|
+
var _a, _b;
|
|
11
12
|
const isProd = process.env.NODE_ENV === 'production' || options.mode === 'production';
|
|
12
13
|
const project = context.projectGraph.nodes[context.projectName];
|
|
13
14
|
const sourceRoot = path.join(context.root, project.data.sourceRoot);
|
|
@@ -28,7 +29,14 @@ function withNx(_opts = {}) {
|
|
|
28
29
|
outputFilename: `3rdpartylicenses.txt`,
|
|
29
30
|
}));
|
|
30
31
|
}
|
|
31
|
-
options.
|
|
32
|
+
if (options.generatePackageJson) {
|
|
33
|
+
const mainOutputFile = options.main.split('/').pop().split('.')[0] + '.js';
|
|
34
|
+
plugins.push(new generate_package_json_plugin_1.GeneratePackageJsonPlugin({
|
|
35
|
+
tsConfig: options.tsConfig,
|
|
36
|
+
outputFileName: (_b = options.outputFileName) !== null && _b !== void 0 ? _b : mainOutputFile,
|
|
37
|
+
}, context));
|
|
38
|
+
}
|
|
39
|
+
options.fileReplacements.forEach((item) => {
|
|
32
40
|
alias[item.replace] = item.with;
|
|
33
41
|
});
|
|
34
42
|
const externals = {};
|
package/src/utils/with-nx.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"with-nx.js","sourceRoot":"","sources":["../../../../../packages/rspack/src/utils/with-nx.ts"],"names":[],"mappings":";;;
|
|
1
|
+
{"version":3,"file":"with-nx.js","sourceRoot":"","sources":["../../../../../packages/rspack/src/utils/with-nx.ts"],"names":[],"mappings":"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"}
|