Skip to content

Commit 405fea6

Browse files
committed
refactor: move specific stuff out of the base method
1 parent d434691 commit 405fea6

3 files changed

Lines changed: 34 additions & 34 deletions

File tree

lib/BaseWasmMainTemplatePlugin.js

Lines changed: 0 additions & 32 deletions
Original file line numberDiff line numberDiff line change
@@ -78,38 +78,6 @@ function generateImportObject(module) {
7878
}
7979

8080
class BaseWasmMainTemplatePlugin {
81-
applyWeb(mainTemplate) {
82-
const generateLoadBinaryCode = path =>
83-
`fetch(${mainTemplate.requireFn}.p + ${path})`;
84-
85-
this.apply(mainTemplate, generateLoadBinaryCode);
86-
}
87-
88-
applyNode(mainTemplate) {
89-
const generateLoadBinaryCode = path => `new Promise(function (resolve, reject) {
90-
var {readFile} = require("fs");
91-
var {join} = require("path");
92-
93-
try {
94-
readFile(join(__dirname, ${path}), function(err, buffer){
95-
if (err) return reject(err);
96-
97-
// Fake fetch response
98-
resolve({
99-
arrayBuffer() {
100-
return Promise.resolve(buffer)
101-
}
102-
});
103-
});
104-
} catch (err) {
105-
reject(err);
106-
}
107-
});
108-
`;
109-
110-
this.apply(mainTemplate, generateLoadBinaryCode);
111-
}
112-
11381
apply(mainTemplate, generateLoadBinaryCode) {
11482
mainTemplate.hooks.localVars.tap(
11583
"BaseWasmMainTemplatePlugin",

lib/node/ReadFileCompileWasmTemplatePlugin.js

Lines changed: 27 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -12,7 +12,33 @@ class ReadFileCompileWasmTemplatePlugin {
1212
compiler.hooks.thisCompilation.tap(
1313
"ReadFileCompileWasmTemplatePlugin",
1414
compilation => {
15-
new BaseWasmMainTemplatePlugin().applyNode(compilation.mainTemplate);
15+
const generateLoadBinaryCode = path => `new Promise(function (resolve, reject) {
16+
var {readFile} = require("fs");
17+
var {join} = require("path");
18+
19+
try {
20+
readFile(join(__dirname, ${
21+
path
22+
}), function(err, buffer){
23+
if (err) return reject(err);
24+
25+
// Fake fetch response
26+
resolve({
27+
arrayBuffer() {
28+
return Promise.resolve(buffer)
29+
}
30+
});
31+
});
32+
} catch (err) {
33+
reject(err);
34+
}
35+
});
36+
`;
37+
38+
new BaseWasmMainTemplatePlugin().apply(
39+
compilation.mainTemplate,
40+
generateLoadBinaryCode
41+
);
1642
new WasmModuleTemplatePlugin().apply(
1743
compilation.moduleTemplates.javascript
1844
);

lib/web/FetchCompileWasmMainTemplatePlugin.js

Lines changed: 7 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -8,7 +8,13 @@ const BaseWasmMainTemplatePlugin = require("../BaseWasmMainTemplatePlugin");
88

99
class FetchCompileWasmMainTemplatePlugin {
1010
apply(mainTemplate) {
11-
new BaseWasmMainTemplatePlugin().applyWeb(mainTemplate);
11+
const generateLoadBinaryCode = path =>
12+
`fetch(${mainTemplate.requireFn}.p + ${path})`;
13+
14+
new BaseWasmMainTemplatePlugin().apply(
15+
mainTemplate,
16+
generateLoadBinaryCode
17+
);
1218
}
1319
}
1420

0 commit comments

Comments
 (0)