Skip to content

Commit dc3e6ca

Browse files
committed
fix: externalize node: modules
1 parent 3c54de1 commit dc3e6ca

5 files changed

Lines changed: 28 additions & 20 deletions

File tree

lib/plugins/node-protocol.js

Lines changed: 13 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,13 @@
1+
export default class NodeProtocolWebpackPlugin {
2+
3+
// public
4+
apply ( compiler ) {
5+
compiler.hooks.normalModuleFactory.tap( "TrackNodeImportsPlugin", nmf => {
6+
nmf.hooks.beforeResolve.tap( "TrackNodeImportsPlugin", resolveData => {
7+
if ( resolveData.request.startsWith( "node:" ) ) {
8+
console.warn( `Node import detected: ${ resolveData.request } in ${ resolveData.context }` );
9+
}
10+
} );
11+
} );
12+
}
13+
}

lib/webpack.js

Lines changed: 3 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -10,6 +10,7 @@ import ansi from "#core/ansi";
1010
import { readConfig } from "#core/config";
1111
import env from "#core/env";
1212
import { BULLET } from "#core/unicode";
13+
import NodeProtocolWebpackPlugin from "#lib/plugins/node-protocol";
1314
import WebpackDevServer from "#lib/webpack/dev-server";
1415

1516
const ajv = new Ajv().addSchema( await readConfig( "#resources/schemas/config.schema.yaml", { "resolve": import.meta.url } ) );
@@ -219,6 +220,8 @@ export default class WebpackRunner {
219220

220221
const config = component.webpackConfig;
221222

223+
config.plugins.push( new NodeProtocolWebpackPlugin() );
224+
222225
// inject webpack bundle analyzer
223226
if ( this.#useAnalyzer ) {
224227
config.plugins.push( new BundleAnalyzerPlugin( {
@@ -344,14 +347,6 @@ export default class WebpackRunner {
344347

345348
this.#printCompilationStart();
346349
} );
347-
348-
compiler.hooks.normalModuleFactory.tap( "TrackNodeImportsPlugin", nmf => {
349-
nmf.hooks.beforeResolve.tap( "TrackNodeImportsPlugin", resolveData => {
350-
if ( resolveData.request.startsWith( "node:" ) ) {
351-
console.log( `Node import detected: ${ resolveData.request } in ${ resolveData.context }` );
352-
}
353-
} );
354-
} );
355350
},
356351
};
357352

resources/webpack-components/node/component.js

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -29,11 +29,11 @@ export default class extends WebpackComponent {
2929
},
3030
"cache": this.webpackCacheOptions,
3131

32-
"externals": [
32+
// "externals": [
3333

34-
//
35-
/^node:/,
36-
],
34+
// //
35+
// /^node:/,
36+
// ],
3737

3838
"entry": {
3939
"main": this.context + "/bin/main.js",

resources/webpack-components/web-worker/component.js

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -47,11 +47,11 @@ export default class extends WebpackComponent {
4747
},
4848
"cache": this.webpackCacheOptions,
4949

50-
"externals": [
50+
// "externals": [
5151

52-
//
53-
/^node:/,
54-
],
52+
// //
53+
// /^node:/,
54+
// ],
5555

5656
"entry": {
5757
"worker": {

resources/webpack-components/web/component.js

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -38,11 +38,11 @@ export default class extends WebpackComponent {
3838
},
3939
"cache": this.webpackCacheOptions,
4040

41-
"externals": [
41+
// "externals": [
4242

43-
//
44-
/^node:/,
45-
],
43+
// //
44+
// /^node:/,
45+
// ],
4646

4747
"entry": {
4848
"app": "@",

0 commit comments

Comments
 (0)