Skip to content

Commit 32942c4

Browse files
committed
fix webpack externals
Signed-off-by: karthik2804 <[email protected]>
1 parent 579ddc1 commit 32942c4

File tree

1 file changed

+16
-18
lines changed

1 file changed

+16
-18
lines changed

plugins/webpack/index.js

Lines changed: 16 additions & 18 deletions
Original file line numberDiff line numberDiff line change
@@ -1,28 +1,26 @@
11
class SpinSdkPlugin {
22
constructor() {
3-
this.externals = {
4-
"wasi:http/[email protected]": "wasi:http/[email protected]",
5-
"wasi:cli/[email protected]": "wasi:cli/[email protected]",
6-
"wasi:filesystem/[email protected]": "wasi:filesystem/[email protected]",
7-
"fermyon:spin/[email protected]": "fermyon:spin/[email protected]",
8-
"fermyon:spin/[email protected]": "fermyon:spin/[email protected]",
9-
"fermyon:spin/[email protected]": "fermyon:spin/[email protected]",
10-
"fermyon:spin/[email protected]": "fermyon:spin/[email protected]",
11-
"fermyon:spin/[email protected]": "fermyon:spin/[email protected]",
12-
"fermyon:spin/[email protected]": "fermyon:spin/[email protected]",
13-
"fermyon:spin/[email protected]": "fermyon:spin/[email protected]",
14-
"fermyon:spin/[email protected]": "fermyon:spin/[email protected]",
15-
"wasi:config/[email protected]": "wasi:config/[email protected]",
16-
"spin:postgres/[email protected]": "spin:postgres/[email protected]",
17-
};
3+
this.externals = [
4+
/^wasi:.*/,
5+
/^fermyon:.*/,
6+
/^spin:.*/,
7+
];
188
}
199

2010
apply(compiler) {
2111
// If externals are already defined, merge them with new externals
22-
if (compiler.options.externals && typeof compiler.options.externals === 'object') {
23-
this.externals = Object.assign({}, compiler.options.externals, this.externals);
12+
const userExternals = compiler.options.externals;
13+
14+
if (Array.isArray(userExternals)) {
15+
// Append to the existing array
16+
compiler.options.externals = [...userExternals, ...this.externals];
17+
} else if (typeof userExternals === 'object') {
18+
// Wrap in an array and add the object as-is
19+
compiler.options.externals = [userExternals, ...this.externals];
20+
} else {
21+
// Default: Just use our externals
22+
compiler.options.externals = [...this.externals];
2423
}
25-
compiler.options.externals = this.externals;
2624
}
2725
}
2826

0 commit comments

Comments
 (0)