@nicolasflamel/blake2b-wasm
Version:
WASM wrapper for parts of the official BLAKE2b implementation
36 lines (30 loc) • 27.9 kB
JavaScript
var blake2b = (() => {
var _scriptDir = typeof document !== 'undefined' && document.currentScript ? document.currentScript.src : undefined;
if (typeof __filename !== 'undefined') _scriptDir = _scriptDir || __filename;
return (
function(blake2b) {
blake2b = blake2b || {};
var b;b||(b=typeof blake2b !== 'undefined' ? blake2b : {});var g,l;b.ready=new Promise(function(a,c){g=a;l=c});var m=Object.assign({},b),n="object"==typeof window,p="function"==typeof importScripts,q="object"==typeof process&&"object"==typeof process.versions&&"string"==typeof process.versions.node,r="",t,u,fs,v,w;
if(q)r=p?require("path").dirname(r)+"/":__dirname+"/",w=()=>{v||(fs=require("fs"),v=require("path"))},t=function(a,c){var d=x(a);if(d)return c?d:d.toString();w();a=v.normalize(a);return fs.readFileSync(a,c?void 0:"utf8")},u=a=>{a=t(a,!0);a.buffer||(a=new Uint8Array(a));return a},1<process.argv.length&&process.argv[1].replace(/\\/g,"/"),process.argv.slice(2),process.on("uncaughtException",function(a){throw a;}),process.on("unhandledRejection",function(a){throw a;}),b.inspect=function(){return"[Emscripten Module object]"};
else if(n||p)p?r=self.location.href:"undefined"!=typeof document&&document.currentScript&&(r=document.currentScript.src),_scriptDir&&(r=_scriptDir),0!==r.indexOf("blob:")?r=r.substr(0,r.replace(/[?#].*/,"").lastIndexOf("/")+1):r="",t=a=>{try{var c=new XMLHttpRequest;c.open("GET",a,!1);c.send(null);return c.responseText}catch(f){if(a=x(a)){c=[];for(var d=0;d<a.length;d++){var e=a[d];255<e&&(y&&z("Character code "+e+" ("+String.fromCharCode(e)+") at offset "+d+" not in 0x00-0xFF."),e&=255);c.push(String.fromCharCode(e))}return c.join("")}throw f;
}},p&&(u=a=>{try{var c=new XMLHttpRequest;c.open("GET",a,!1);c.responseType="arraybuffer";c.send(null);return new Uint8Array(c.response)}catch(d){if(a=x(a))return a;throw d;}});b.print||console.log.bind(console);var A=b.printErr||console.warn.bind(console);Object.assign(b,m);m=null;var B;b.wasmBinary&&(B=b.wasmBinary);var noExitRuntime=b.noExitRuntime||!0;"object"!=typeof WebAssembly&&z("no native wasm support detected");var C,D=!1,E,F;
function G(){var a=C.buffer;E=a;b.HEAP8=new Int8Array(a);b.HEAP16=new Int16Array(a);b.HEAP32=new Int32Array(a);b.HEAPU8=F=new Uint8Array(a);b.HEAPU16=new Uint16Array(a);b.HEAPU32=new Uint32Array(a);b.HEAPF32=new Float32Array(a);b.HEAPF64=new Float64Array(a)}var H=[],I=[],J=[];function K(){var a=b.preRun.shift();H.unshift(a)}var L=0,M=null,N=null;
function z(a){if(b.onAbort)b.onAbort(a);a="Aborted("+a+")";A(a);D=!0;a=new WebAssembly.RuntimeError(a+". Build with -sASSERTIONS for more info.");l(a);throw a;}var O="data:application/octet-stream;base64,",P;P="data:application/octet-stream;base64,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";if(!P.startsWith(O)){var Q=P;P=b.locateFile?b.locateFile(Q,r):r+Q}
function R(a){var c=P;try{a:{try{if(c==P&&B){var d=new Uint8Array(B);break a}var e=x(c);if(e){d=e;break a}if(u){d=u(c);break a}throw"sync fetching of the wasm failed: you can preload it to Module['wasmBinary'] manually, or emcc.py will do that for you when generating HTML (but not JS)";}catch(h){z(h)}d=void 0}var f=new WebAssembly.Module(d);var k=new WebAssembly.Instance(f,a)}catch(h){throw a=h.toString(),A("failed to compile wasm module: "+a),(a.includes("imported Memory")||a.includes("memory import"))&&
A("Memory size incompatibility issues may be due to changing INITIAL_MEMORY at runtime to something too large. Use ALLOW_MEMORY_GROWTH to allow any size memory (and also make sure not to set INITIAL_MEMORY at runtime to something smaller than it was at compile time)."),h;}return[k,f]}function S(a){for(;0<a.length;)a.shift()(b)}
var y=!1,T="function"==typeof atob?atob:function(a){var c="",d=0;a=a.replace(/[^A-Za-z0-9\+\/=]/g,"");do{var e="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/=".indexOf(a.charAt(d++));var f="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/=".indexOf(a.charAt(d++));var k="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/=".indexOf(a.charAt(d++));var h="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/=".indexOf(a.charAt(d++));e=e<<2|f>>
4;f=(f&15)<<4|k>>2;var W=(k&3)<<6|h;c+=String.fromCharCode(e);64!==k&&(c+=String.fromCharCode(f));64!==h&&(c+=String.fromCharCode(W))}while(d<a.length);return c};function x(a){if(a.startsWith(O)){a=a.slice(O.length);if("boolean"==typeof q&&q){var c=Buffer.from(a,"base64");c=new Uint8Array(c.buffer,c.byteOffset,c.byteLength)}else try{var d=T(a),e=new Uint8Array(d.length);for(a=0;a<d.length;++a)e[a]=d.charCodeAt(a);c=e}catch(f){throw Error("Converting base64 string to bytes failed.");}return c}}
var U={a:function(a){var c=F.length;a>>>=0;if(2147483648<a)return!1;for(var d=1;4>=d;d*=2){var e=c*(1+.2/d);e=Math.min(e,a+100663296);var f=Math;e=Math.max(a,e);f=f.min.call(f,2147483648,e+(65536-e%65536)%65536);a:{try{C.grow(f-E.byteLength+65535>>>16);G();var k=1;break a}catch(h){}k=void 0}if(k)return!0}return!1}},V=function(){function a(d){b.asm=d.exports;C=b.asm.b;G();I.unshift(b.asm.c);L--;b.monitorRunDependencies&&b.monitorRunDependencies(L);0==L&&(null!==M&&(clearInterval(M),M=null),N&&(d=N,
N=null,d()))}var c={a:U};L++;b.monitorRunDependencies&&b.monitorRunDependencies(L);if(b.instantiateWasm)try{return b.instantiateWasm(c,a)}catch(d){return A("Module.instantiateWasm callback failed with error: "+d),!1}c=R(c);a(c[0]);return b.asm}();b.___wasm_call_ctors=V.c;b._compute=V.d;b._malloc=V.e;b._free=V.f;var X;N=function Y(){X||Z();X||(N=Y)};
function Z(){function a(){if(!X&&(X=!0,b.calledRun=!0,!D)){S(I);g(b);if(b.onRuntimeInitialized)b.onRuntimeInitialized();if(b.postRun)for("function"==typeof b.postRun&&(b.postRun=[b.postRun]);b.postRun.length;){var c=b.postRun.shift();J.unshift(c)}S(J)}}if(!(0<L)){if(b.preRun)for("function"==typeof b.preRun&&(b.preRun=[b.preRun]);b.preRun.length;)K();S(H);0<L||(b.setStatus?(b.setStatus("Running..."),setTimeout(function(){setTimeout(function(){b.setStatus("")},1);a()},1)):a())}}
if(b.preInit)for("function"==typeof b.preInit&&(b.preInit=[b.preInit]);0<b.preInit.length;)b.preInit.pop()();Z();
return blake2b
}
);
})();
if (typeof exports === 'object' && typeof module === 'object')
module.exports = blake2b;
else if (typeof define === 'function' && define['amd'])
define([], function() { return blake2b; });
else if (typeof exports === 'object')
exports["blake2b"] = blake2b;