UNPKG

wasm-check

Version:

TypeScript / JavaScript library for detect WebAssembly features in node.js & browser

1 lines 2.45 kB
"use strict";function e({buffer:e},n=!1){if(!r)return!1;const u=l.get(e);if(null!=u)return u;let i=t.validate(e);if(i&&n)try{new t.Instance(new t.Module(e)).exports[0]()}catch{i=!1}return l.set(e,i),i}const t=globalThis.WebAssembly,r="object"==typeof t,n=e=>void 0!==e,u=(...e)=>Uint8Array.of(0,97,115,109,1,0,0,0,...e),i=(...e)=>Uint32Array.of(1836278016,1,...e),s=(...e)=>i(1610679297,33751040,...e,40239360,259),g=(...e)=>u(1,4,1,96,0,0,3,2,1,0,...e,11,0,10,4,110,97,109,101,2,3,1,0,0),o=(...e)=>Uint16Array.of(24832,28019,1,0,1025,24577,0,515,1,...e),a=(...e)=>o(...e,2842,4096,28164,28001,357,260,256,560,259,0),l=new WeakMap,f=i(1610679553,58589440,117440770,805372165,101318656,1107297281,268438272,1835101700,17039717,36700416,259),c=u(5,3,1,4,1,0,8,4,110,97,109,101,2,1,0),m=u(5,4,1,8,0,0),y=o(773,1,2561,269,11,65,65,65,3068,2816,2560,28164,28001,613,259,0),p=i(1610679297,33751040,134873089,100664833,185276736),b=u(2,8,1,1,97,1,98,3,127,1,6,6,1,127,1,65,0,11,7,5,1,1,97,3,1,0,8,4,110,97,109,101,2,1,0),d=Uint16Array.of(24832,28019,1,0,1537,24577,512,32639,515,1,2058,1537,16640,16640,2816,2560,28164,28001,613,259,0),A=a(3082,2561,17152,0,0,252),h=a(2058,1537,16640,49152),x=s(101318657,301990913,268438272,1835101700,17039717),M=g(5,4,1,3,1,1,10,7,1,5,0,254,3,0),S=s(84344833,6357249,17369600,4259847,186257917,1845758464),U=u(1,4,1,96,0,0,3,2,1,0,7,5,1,1,48,0,0,10,12,1,10,1,1,123,32,0,253,129,2,26,11),w=u(1,3,1,95,0,6,7,1,99,0,0,208,113,11),j=g(10,7,1,5,0,208,112,26),v=u(1,4,1,96,0,0,3,2,1,0,9,5,1,3,0,1,0,10,8,1,6,0,210,0,20,0,11),k=u(1,6,1,96,1,111,1,127,2,23,1,14,119,97,115,109,58,106,115,45,115,116,114,105,110,103,4,116,101,115,116,0,0);module.exports={support:(t=1)=>r&&e(Uint32Array.of(1836278016,t)),get supportStreaming(){return r&&n(t.instantiateStreaming)},feature:{get bigInt(){return e(f,!0)},get bulk(){return e(y)},get exceptions(){return e(p)},get memory64(){return e(c)},get customPageSizes(){return e(m)},get mutableGlobal(){return e(b)},get multiValue(){return e(d)},get saturateConversions(){return e(A)},get signExtensions(){return e(h)},get tailCall(){return e(x)},get threads(){return e(M)},get simd(){return e(S)},get relaxedSimd(){return e(U)},get gc(){return e(w)},get references(){return e(j)},get typeReflection(){return r&&n(t.Memory.type)},get funcReferences(){return e(v)},get jsStringBuiltins(){try{return r&&!t.Module.imports(new t.Module(k.buffer,{builtins:["js-string"]})).length}catch{return!1}}}};