| | |
| | | if (typeof fetch === "function") { |
| | | // Web version of reading a wasm file into an array buffer. |
| | | "use strict"; |
| | | |
| | | let mappingsWasmUrl = null; |
| | | // Note: This file is replaced with "read-wasm-browser.js" when this module is |
| | | // bundled with a packager that takes package.json#browser fields into account. |
| | | |
| | | module.exports = function readWasm() { |
| | | if (typeof mappingsWasmUrl !== "string") { |
| | | throw new Error("You must provide the URL of lib/mappings.wasm by calling " + |
| | | "SourceMapConsumer.initialize({ 'lib/mappings.wasm': ... }) " + |
| | | "before using SourceMapConsumer"); |
| | | } |
| | | const fs = require("fs"); |
| | | const path = require("path"); |
| | | |
| | | return fetch(mappingsWasmUrl) |
| | | .then(response => response.arrayBuffer()); |
| | | }; |
| | | module.exports = function readWasm() { |
| | | return new Promise((resolve, reject) => { |
| | | const wasmPath = path.join(__dirname, "mappings.wasm"); |
| | | fs.readFile(wasmPath, null, (error, data) => { |
| | | if (error) { |
| | | reject(error); |
| | | return; |
| | | } |
| | | |
| | | module.exports.initialize = url => mappingsWasmUrl = url; |
| | | } else { |
| | | // Node version of reading a wasm file into an array buffer. |
| | | const fs = require("fs"); |
| | | const path = require("path"); |
| | | |
| | | module.exports = function readWasm() { |
| | | return new Promise((resolve, reject) => { |
| | | const wasmPath = path.join(__dirname, "mappings.wasm"); |
| | | fs.readFile(wasmPath, null, (error, data) => { |
| | | if (error) { |
| | | reject(error); |
| | | return; |
| | | } |
| | | |
| | | resolve(data.buffer); |
| | | }); |
| | | resolve(data.buffer); |
| | | }); |
| | | }; |
| | | }); |
| | | }; |
| | | |
| | | module.exports.initialize = _ => { |
| | | console.debug("SourceMapConsumer.initialize is a no-op when running in node.js"); |
| | | }; |
| | | } |
| | | module.exports.initialize = _ => { |
| | | console.debug("SourceMapConsumer.initialize is a no-op when running in node.js"); |
| | | }; |