|
|
- /*
- MIT License http://www.opensource.org/licenses/mit-license.php
- Author Tobias Koppers @sokra
- */
- "use strict";
-
- const WasmMainTemplatePlugin = require("../wasm/WasmMainTemplatePlugin");
-
- class FetchCompileWasmTemplatePlugin {
- constructor(options) {
- this.options = options || {};
- }
-
- apply(compiler) {
- compiler.hooks.thisCompilation.tap(
- "FetchCompileWasmTemplatePlugin",
- compilation => {
- const mainTemplate = compilation.mainTemplate;
- const generateLoadBinaryCode = path =>
- `fetch(${mainTemplate.requireFn}.p + ${path})`;
-
- const plugin = new WasmMainTemplatePlugin(
- Object.assign(
- {
- generateLoadBinaryCode,
- supportsStreaming: true
- },
- this.options
- )
- );
- plugin.apply(mainTemplate);
- }
- );
- }
- }
-
- module.exports = FetchCompileWasmTemplatePlugin;
|