nepse-api-helper
Version:
a wrapper to use nepse api easily since they set up weird restrictions
30 lines (29 loc) • 1.12 kB
JavaScript
;
Object.defineProperty(exports, "__esModule", { value: true });
exports.loadWasmModule = loadWasmModule;
const constants_1 = require("./constants");
const errors_1 = require("./errors");
// wasm.ts - WASM-related functions
async function loadWasmModule(wasmUrl = `${constants_1.BASE_URL}/assets/prod/css.wasm`) {
try {
const response = await fetch(wasmUrl);
if (!response.ok) {
throw (0, errors_1.createNepseError)(`Failed to fetch WASM module: ${response.status} ${response.statusText}`, 'WASM_FETCH_ERROR');
}
const buffer = await response.arrayBuffer();
const { instance } = await WebAssembly.instantiate(buffer);
return {
cdx: instance.exports.cdx,
rdx: instance.exports.rdx,
bdx: instance.exports.bdx,
ndx: instance.exports.ndx,
mdx: instance.exports.mdx
};
}
catch (error) {
if (error.code) {
throw error;
}
throw (0, errors_1.createNepseError)('Failed to instantiate WASM module', 'WASM_INSTANTIATE_ERROR', error);
}
}