@fahnestockj/numcodecs-fork
Version:
Buffer compression and transformation codecs for use in data storage and communication applications.
778 lines (774 loc) • 45.5 kB
JavaScript
import {
__toBinary
} from "./chunk-INHXZS53.js";
// codecs/lz4/lz4_codec.js
var lz4_codec = (() => {
var _scriptDir = typeof document !== "undefined" && document.currentScript ? document.currentScript.src : void 0;
return function(moduleArg = {}) {
var f = moduleArg, t, u;
f.ready = new Promise((a, b) => {
t = a;
u = b;
});
var aa = Object.assign({}, f), v = f.printErr || console.error.bind(console);
Object.assign(f, aa);
aa = null;
var x;
f.wasmBinary && (x = f.wasmBinary);
"object" != typeof WebAssembly && y("no native wasm support detected");
var A, ba = false, B, C, D, E, F, G, ca, da;
function ea() {
var a = A.buffer;
f.HEAP8 = B = new Int8Array(a);
f.HEAP16 = D = new Int16Array(a);
f.HEAPU8 = C = new Uint8Array(a);
f.HEAPU16 = E = new Uint16Array(a);
f.HEAP32 = F = new Int32Array(a);
f.HEAPU32 = G = new Uint32Array(a);
f.HEAPF32 = ca = new Float32Array(a);
f.HEAPF64 = da = new Float64Array(a);
}
var fa = [], ha = [], ia = [];
function ja() {
var a = f.preRun.shift();
fa.unshift(a);
}
var H = 0, I = null, J = null;
function y(a) {
f.onAbort?.(a);
a = "Aborted(" + a + ")";
v(a);
ba = true;
a = new WebAssembly.RuntimeError(a + ". Build with -sASSERTIONS for more info.");
u(a);
throw a;
}
var ka = (a) => a.startsWith("data:application/octet-stream;base64,"), la = (a) => a.startsWith("file://"), K;
K = "lz4_codec.wasm";
if (!ka(K)) {
var ma = K;
K = f.locateFile ? f.locateFile(ma, "") : "" + ma;
}
function na(a) {
return Promise.resolve().then(() => {
if (a == K && x)
var b = new Uint8Array(x);
else
throw "both async and sync fetching of the wasm failed";
return b;
});
}
function oa(a, b, c) {
return na(a).then((d) => WebAssembly.instantiate(d, b)).then((d) => d).then(c, (d) => {
v(`failed to asynchronously prepare wasm: ${d}`);
y(d);
});
}
function pa(a, b) {
var c = K;
return x || "function" != typeof WebAssembly.instantiateStreaming || ka(c) || la(c) || "function" != typeof fetch ? oa(c, a, b) : fetch(c, { credentials: "same-origin" }).then((d) => WebAssembly.instantiateStreaming(d, a).then(b, function(e) {
v(`wasm streaming compile failed: ${e}`);
v("falling back to ArrayBuffer instantiation");
return oa(c, a, b);
}));
}
var L = (a) => {
for (; 0 < a.length; )
a.shift()(f);
};
function qa(a) {
this.D = a - 24;
this.K = function(b) {
G[this.D + 4 >> 2] = b;
};
this.J = function(b) {
G[this.D + 8 >> 2] = b;
};
this.F = function(b, c) {
this.G();
this.K(b);
this.J(c);
};
this.G = function() {
G[this.D + 16 >> 2] = 0;
};
}
var ra = 0, sa = 0, ta, M = (a) => {
for (var b = ""; C[a]; )
b += ta[C[a++]];
return b;
}, N = {}, O = {}, P = {}, Q, R, ua = (a, b) => {
function c(k) {
k = b(k);
if (k.length !== d.length)
throw new R("Mismatched type converter count");
for (var l = 0; l < d.length; ++l)
S(d[l], k[l]);
}
var d = [];
d.forEach(function(k) {
P[k] = a;
});
var e = Array(a.length), g = [], h = 0;
a.forEach((k, l) => {
O.hasOwnProperty(k) ? e[l] = O[k] : (g.push(k), N.hasOwnProperty(k) || (N[k] = []), N[k].push(() => {
e[l] = O[k];
++h;
h === g.length && c(e);
}));
});
0 === g.length && c(e);
};
function va(a, b, c = {}) {
var d = b.name;
if (!a)
throw new Q(`type "${d}" must have a positive integer typeid pointer`);
if (O.hasOwnProperty(a)) {
if (c.M)
return;
throw new Q(`Cannot register type '${d}' twice`);
}
O[a] = b;
delete P[a];
N.hasOwnProperty(a) && (b = N[a], delete N[a], b.forEach((e) => e()));
}
function S(a, b, c = {}) {
if (!("argPackAdvance" in b))
throw new TypeError("registerType registeredInstance requires argPackAdvance");
va(a, b, c);
}
function wa() {
this.B = [void 0];
this.H = [];
}
var T = new wa(), xa = (a) => {
a >= T.D && 0 === --T.get(a).I && T.G(a);
}, ya = (a) => {
switch (a) {
case void 0:
return 1;
case null:
return 2;
case true:
return 3;
case false:
return 4;
default:
return T.F({ I: 1, value: a });
}
};
function za(a) {
return this.fromWireType(F[a >> 2]);
}
var Aa = (a, b) => {
switch (b) {
case 4:
return function(c) {
return this.fromWireType(ca[c >> 2]);
};
case 8:
return function(c) {
return this.fromWireType(da[c >> 3]);
};
default:
throw new TypeError(`invalid float width (${b}): ${a}`);
}
}, Ba = (a, b) => Object.defineProperty(b, "name", { value: a });
function Ca(a) {
for (var b = 1; b < a.length; ++b)
if (null !== a[b] && void 0 === a[b].C)
return true;
return false;
}
function Da(a, b, c, d) {
var e = b.length;
if (2 > e)
throw new Q("argTypes array size mismatch! Must at least get return value and 'this' types!");
var g = null !== b[1] && false, h = Ca(b), k = "void" !== b[0].name, l = e - 2, m = Array(l), n = [], p = [];
return Ba(a, function() {
if (arguments.length !== l)
throw new Q(`function ${a} called with ${arguments.length} arguments, expected ${l}`);
p.length = 0;
n.length = g ? 2 : 1;
n[0] = d;
if (g) {
var q = b[1].toWireType(p, this);
n[1] = q;
}
for (var r = 0; r < l; ++r)
m[r] = b[r + 2].toWireType(p, arguments[r]), n.push(m[r]);
r = c.apply(
null,
n
);
if (h)
for (; p.length; )
q = p.pop(), p.pop()(q);
else
for (var w = g ? 1 : 2; w < b.length; w++) {
var z = 1 === w ? q : m[w - 2];
null !== b[w].C && b[w].C(z);
}
q = k ? b[0].fromWireType(r) : void 0;
return q;
});
}
var Ea = (a, b) => {
if (void 0 === f[a].A) {
var c = f[a];
f[a] = function() {
if (!f[a].A.hasOwnProperty(arguments.length))
throw new Q(`Function '${b}' called with an invalid number of arguments (${arguments.length}) - expects one of (${f[a].A})!`);
return f[a].A[arguments.length].apply(this, arguments);
};
f[a].A = [];
f[a].A[c.L] = c;
}
}, Fa = (a, b, c) => {
if (f.hasOwnProperty(a)) {
if (void 0 === c || void 0 !== f[a].A && void 0 !== f[a].A[c])
throw new Q(`Cannot register public name '${a}' twice`);
Ea(a, a);
if (f.hasOwnProperty(c))
throw new Q(`Cannot register multiple overloads of a function with the same number of arguments (${c})!`);
f[a].A[c] = b;
} else
f[a] = b, void 0 !== c && (f[a].O = c);
}, Ga = (a, b) => {
for (var c = [], d = 0; d < a; d++)
c.push(G[b + 4 * d >> 2]);
return c;
}, U, Ha = (a, b) => {
var c = [];
return function() {
c.length = 0;
Object.assign(c, arguments);
if (a.includes("j")) {
var d = f["dynCall_" + a];
d = c && c.length ? d.apply(null, [b].concat(c)) : d.call(null, b);
} else
d = U.get(b).apply(null, c);
return d;
};
}, Ia = (a, b) => {
a = M(a);
var c = a.includes("j") ? Ha(a, b) : U.get(b);
if ("function" != typeof c)
throw new Q(`unknown function pointer with signature ${a}: ${b}`);
return c;
}, Ja, La = (a) => {
a = Ka(a);
var b = M(a);
V(a);
return b;
}, Ma = (a, b) => {
function c(g) {
e[g] || O[g] || (P[g] ? P[g].forEach(c) : (d.push(g), e[g] = true));
}
var d = [], e = {};
b.forEach(c);
throw new Ja(`${a}: ` + d.map(La).join([", "]));
}, Na = (a) => {
a = a.trim();
const b = a.indexOf("(");
return -1 !== b ? a.substr(0, b) : a;
}, Oa = (a, b, c) => {
switch (b) {
case 1:
return c ? (d) => B[d >> 0] : (d) => C[d >> 0];
case 2:
return c ? (d) => D[d >> 1] : (d) => E[d >> 1];
case 4:
return c ? (d) => F[d >> 2] : (d) => G[d >> 2];
default:
throw new TypeError(`invalid integer width (${b}): ${a}`);
}
};
function Pa(a) {
return this.fromWireType(G[a >> 2]);
}
for (var Qa = "undefined" != typeof TextDecoder ? new TextDecoder("utf8") : void 0, Ra = "undefined" != typeof TextDecoder ? new TextDecoder("utf-16le") : void 0, Sa = (a, b) => {
var c = a >> 1;
for (var d = c + b / 2; !(c >= d) && E[c]; )
++c;
c <<= 1;
if (32 < c - a && Ra)
return Ra.decode(C.subarray(a, c));
c = "";
for (d = 0; !(d >= b / 2); ++d) {
var e = D[a + 2 * d >> 1];
if (0 == e)
break;
c += String.fromCharCode(e);
}
return c;
}, Ta = (a, b, c) => {
c ??= 2147483647;
if (2 > c)
return 0;
c -= 2;
var d = b;
c = c < 2 * a.length ? c / 2 : a.length;
for (var e = 0; e < c; ++e)
D[b >> 1] = a.charCodeAt(e), b += 2;
D[b >> 1] = 0;
return b - d;
}, Ua = (a) => 2 * a.length, Va = (a, b) => {
for (var c = 0, d = ""; !(c >= b / 4); ) {
var e = F[a + 4 * c >> 2];
if (0 == e)
break;
++c;
65536 <= e ? (e -= 65536, d += String.fromCharCode(55296 | e >> 10, 56320 | e & 1023)) : d += String.fromCharCode(e);
}
return d;
}, Wa = (a, b, c) => {
c ??= 2147483647;
if (4 > c)
return 0;
var d = b;
c = d + c - 4;
for (var e = 0; e < a.length; ++e) {
var g = a.charCodeAt(e);
if (55296 <= g && 57343 >= g) {
var h = a.charCodeAt(++e);
g = 65536 + ((g & 1023) << 10) | h & 1023;
}
F[b >> 2] = g;
b += 4;
if (b + 4 > c)
break;
}
F[b >> 2] = 0;
return b - d;
}, Xa = (a) => {
for (var b = 0, c = 0; c < a.length; ++c) {
var d = a.charCodeAt(c);
55296 <= d && 57343 >= d && ++c;
b += 4;
}
return b;
}, Ya = Array(256), W = 0; 256 > W; ++W)
Ya[W] = String.fromCharCode(W);
ta = Ya;
Q = f.BindingError = class extends Error {
constructor(a) {
super(a);
this.name = "BindingError";
}
};
R = f.InternalError = class extends Error {
constructor(a) {
super(a);
this.name = "InternalError";
}
};
Object.assign(wa.prototype, { get(a) {
return this.B[a];
}, has(a) {
return void 0 !== this.B[a];
}, F(a) {
var b = this.H.pop() || this.B.length;
this.B[b] = a;
return b;
}, G(a) {
this.B[a] = void 0;
this.H.push(a);
} });
T.B.push({ value: void 0 }, { value: null }, { value: true }, { value: false });
T.D = T.B.length;
f.count_emval_handles = () => {
for (var a = 0, b = T.D; b < T.B.length; ++b)
void 0 !== T.B[b] && ++a;
return a;
};
Ja = f.UnboundTypeError = ((a, b) => {
var c = Ba(b, function(d) {
this.name = b;
this.message = d;
d = Error(d).stack;
void 0 !== d && (this.stack = this.toString() + "\n" + d.replace(/^Error(:[^\n]*)?\n/, ""));
});
c.prototype = Object.create(a.prototype);
c.prototype.constructor = c;
c.prototype.toString = function() {
return void 0 === this.message ? this.name : `${this.name}: ${this.message}`;
};
return c;
})(Error, "UnboundTypeError");
var Za = { n: (a, b, c) => {
new qa(a).F(b, c);
ra = a;
sa++;
throw ra;
}, o: () => {
}, l: (a, b, c, d) => {
b = M(b);
S(a, { name: b, fromWireType: function(e) {
return !!e;
}, toWireType: function(e, g) {
return g ? c : d;
}, argPackAdvance: 8, readValueFromPointer: function(e) {
return this.fromWireType(C[e]);
}, C: null });
}, k: (a, b) => {
b = M(b);
S(a, { name: b, fromWireType: (c) => {
if (!c)
throw new Q("Cannot use deleted val. handle = " + c);
var d = T.get(c).value;
xa(c);
return d;
}, toWireType: (c, d) => ya(d), argPackAdvance: 8, readValueFromPointer: za, C: null });
}, i: (a, b, c) => {
b = M(b);
S(a, { name: b, fromWireType: (d) => d, toWireType: (d, e) => e, argPackAdvance: 8, readValueFromPointer: Aa(b, c), C: null });
}, d: (a, b, c, d, e, g) => {
var h = Ga(b, c);
a = M(a);
a = Na(a);
e = Ia(d, e);
Fa(a, function() {
Ma(`Cannot call ${a} due to unbound types`, h);
}, b - 1);
ua(h, function(k) {
var l = a;
k = Da(a, [k[0], null].concat(k.slice(1)), e, g);
var m = b - 1;
if (!f.hasOwnProperty(l))
throw new R("Replacing nonexistant public symbol");
void 0 !== f[l].A && void 0 !== m ? f[l].A[m] = k : (f[l] = k, f[l].L = m);
return [];
});
}, b: (a, b, c, d, e) => {
b = M(b);
-1 === e && (e = 4294967295);
e = (k) => k;
if (0 === d) {
var g = 32 - 8 * c;
e = (k) => k << g >>> g;
}
var h = b.includes("unsigned") ? function(k, l) {
return l >>> 0;
} : function(k, l) {
return l;
};
S(a, { name: b, fromWireType: e, toWireType: h, argPackAdvance: 8, readValueFromPointer: Oa(b, c, 0 !== d), C: null });
}, a: (a, b, c) => {
function d(g) {
return new e(B.buffer, G[g + 4 >> 2], G[g >> 2]);
}
var e = [Int8Array, Uint8Array, Int16Array, Uint16Array, Int32Array, Uint32Array, Float32Array, Float64Array][b];
c = M(c);
S(a, { name: c, fromWireType: d, argPackAdvance: 8, readValueFromPointer: d }, { M: true });
}, e: (a, b) => {
b = M(b);
var c = "std::string" === b;
S(a, { name: b, fromWireType: function(d) {
var e = G[d >> 2], g = d + 4;
if (c)
for (var h = g, k = 0; k <= e; ++k) {
var l = g + k;
if (k == e || 0 == C[l]) {
if (h) {
var m = h;
var n = C, p = m + (l - h);
for (h = m; n[h] && !(h >= p); )
++h;
if (16 < h - m && n.buffer && Qa)
m = Qa.decode(n.subarray(m, h));
else {
for (p = ""; m < h; ) {
var q = n[m++];
if (q & 128) {
var r = n[m++] & 63;
if (192 == (q & 224))
p += String.fromCharCode((q & 31) << 6 | r);
else {
var w = n[m++] & 63;
q = 224 == (q & 240) ? (q & 15) << 12 | r << 6 | w : (q & 7) << 18 | r << 12 | w << 6 | n[m++] & 63;
65536 > q ? p += String.fromCharCode(q) : (q -= 65536, p += String.fromCharCode(55296 | q >> 10, 56320 | q & 1023));
}
} else
p += String.fromCharCode(q);
}
m = p;
}
} else
m = "";
if (void 0 === z)
var z = m;
else
z += String.fromCharCode(0), z += m;
h = l + 1;
}
}
else {
z = Array(e);
for (k = 0; k < e; ++k)
z[k] = String.fromCharCode(C[g + k]);
z = z.join("");
}
V(d);
return z;
}, toWireType: function(d, e) {
e instanceof ArrayBuffer && (e = new Uint8Array(e));
var g, h = "string" == typeof e;
if (!(h || e instanceof Uint8Array || e instanceof Uint8ClampedArray || e instanceof Int8Array))
throw new Q("Cannot pass non-string to std::string");
var k;
if (c && h)
for (g = k = 0; g < e.length; ++g) {
var l = e.charCodeAt(g);
127 >= l ? k++ : 2047 >= l ? k += 2 : 55296 <= l && 57343 >= l ? (k += 4, ++g) : k += 3;
}
else
k = e.length;
g = k;
k = X(4 + g + 1);
l = k + 4;
G[k >> 2] = g;
if (c && h) {
if (h = l, l = g + 1, g = C, 0 < l) {
l = h + l - 1;
for (var m = 0; m < e.length; ++m) {
var n = e.charCodeAt(m);
if (55296 <= n && 57343 >= n) {
var p = e.charCodeAt(++m);
n = 65536 + ((n & 1023) << 10) | p & 1023;
}
if (127 >= n) {
if (h >= l)
break;
g[h++] = n;
} else {
if (2047 >= n) {
if (h + 1 >= l)
break;
g[h++] = 192 | n >> 6;
} else {
if (65535 >= n) {
if (h + 2 >= l)
break;
g[h++] = 224 | n >> 12;
} else {
if (h + 3 >= l)
break;
g[h++] = 240 | n >> 18;
g[h++] = 128 | n >> 12 & 63;
}
g[h++] = 128 | n >> 6 & 63;
}
g[h++] = 128 | n & 63;
}
}
g[h] = 0;
}
} else if (h)
for (h = 0; h < g; ++h) {
m = e.charCodeAt(h);
if (255 < m)
throw V(l), new Q("String has UTF-16 code units that do not fit in 8 bits");
C[l + h] = m;
}
else
for (h = 0; h < g; ++h)
C[l + h] = e[h];
null !== d && d.push(V, k);
return k;
}, argPackAdvance: 8, readValueFromPointer: Pa, C(d) {
V(d);
} });
}, c: (a, b, c) => {
c = M(c);
if (2 === b) {
var d = Sa;
var e = Ta;
var g = Ua;
var h = () => E;
var k = 1;
} else
4 === b && (d = Va, e = Wa, g = Xa, h = () => G, k = 2);
S(a, { name: c, fromWireType: (l) => {
for (var m = G[l >> 2], n = h(), p, q = l + 4, r = 0; r <= m; ++r) {
var w = l + 4 + r * b;
if (r == m || 0 == n[w >> k])
q = d(q, w - q), void 0 === p ? p = q : (p += String.fromCharCode(0), p += q), q = w + b;
}
V(l);
return p;
}, toWireType: (l, m) => {
if ("string" != typeof m)
throw new Q(`Cannot pass non-string to C++ string type ${c}`);
var n = g(m), p = X(4 + n + b);
G[p >> 2] = n >> k;
e(m, p + 4, n + b);
null !== l && l.push(V, p);
return p;
}, argPackAdvance: 8, readValueFromPointer: za, C(l) {
V(l);
} });
}, m: (a, b) => {
b = M(b);
S(a, { N: true, name: b, argPackAdvance: 0, fromWireType: () => {
}, toWireType: () => {
} });
}, g: xa, j: (a) => {
4 < a && (T.get(a).I += 1);
}, f: (a, b) => {
var c = O[a];
if (void 0 === c)
throw a = "_emval_take_value has unknown type " + La(a), new Q(a);
a = c;
a = a.readValueFromPointer(b);
return ya(a);
}, h: () => {
y("");
}, q: (a, b, c) => C.copyWithin(a, b, b + c), p: (a) => {
var b = C.length;
a >>>= 0;
if (2147483648 < a)
return false;
for (var c = 1; 4 >= c; c *= 2) {
var d = b * (1 + 0.2 / c);
d = Math.min(d, a + 100663296);
var e = Math;
d = Math.max(a, d);
a: {
e = (e.min.call(e, 2147483648, d + (65536 - d % 65536) % 65536) - A.buffer.byteLength + 65535) / 65536;
try {
A.grow(e);
ea();
var g = 1;
break a;
} catch (h) {
}
g = void 0;
}
if (g)
return true;
}
return false;
} }, Y = function() {
function a(c) {
Y = c.exports;
A = Y.r;
ea();
U = Y.w;
ha.unshift(Y.s);
H--;
f.monitorRunDependencies?.(H);
0 == H && (null !== I && (clearInterval(I), I = null), J && (c = J, J = null, c()));
return Y;
}
var b = { a: Za };
H++;
f.monitorRunDependencies?.(H);
if (f.instantiateWasm)
try {
return f.instantiateWasm(b, a);
} catch (c) {
v(`Module.instantiateWasm callback failed with error: ${c}`), u(c);
}
pa(b, function(c) {
a(c.instance);
}).catch(u);
return {};
}(), X = (a) => (X = Y.t)(a), V = (a) => (V = Y.u)(a), Ka = (a) => (Ka = Y.v)(a), Z;
J = function $a() {
Z || ab();
Z || (J = $a);
};
function ab() {
function a() {
if (!Z && (Z = true, f.calledRun = true, !ba)) {
L(ha);
t(f);
if (f.onRuntimeInitialized)
f.onRuntimeInitialized();
if (f.postRun)
for ("function" == typeof f.postRun && (f.postRun = [f.postRun]); f.postRun.length; ) {
var b = f.postRun.shift();
ia.unshift(b);
}
L(ia);
}
}
if (!(0 < H)) {
if (f.preRun)
for ("function" == typeof f.preRun && (f.preRun = [f.preRun]); f.preRun.length; )
ja();
L(fa);
0 < H || (f.setStatus ? (f.setStatus("Running..."), setTimeout(function() {
setTimeout(function() {
f.setStatus("");
}, 1);
a();
}, 1)) : a());
}
}
if (f.preInit)
for ("function" == typeof f.preInit && (f.preInit = [f.preInit]); 0 < f.preInit.length; )
f.preInit.pop()();
ab();
return moduleArg.ready;
};
})();
var lz4_codec_default = lz4_codec;
// codecs/lz4/lz4_codec.wasm
var lz4_codec_default2 = __toBinary("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ZW1zY3JpcHRlbjo6bWVtb3J5X3ZpZXc8dW5zaWduZWQgaW50PgBlbXNjcmlwdGVuOjptZW1vcnlfdmlldzxmbG9hdD4AZW1zY3JpcHRlbjo6bWVtb3J5X3ZpZXc8dWludDhfdD4AZW1zY3JpcHRlbjo6bWVtb3J5X3ZpZXc8aW50OF90PgBlbXNjcmlwdGVuOjptZW1vcnlfdmlldzx1aW50MTZfdD4AZW1zY3JpcHRlbjo6bWVtb3J5X3ZpZXc8aW50MTZfdD4AZW1zY3JpcHRlbjo6bWVtb3J5X3ZpZXc8dWludDY0X3Q+AGVtc2NyaXB0ZW46Om1lbW9yeV92aWV3PGludDY0X3Q+AGVtc2NyaXB0ZW46Om1lbW9yeV92aWV3PHVpbnQzMl90PgBlbXNjcmlwdGVuOjptZW1vcnlfdmlldzxpbnQzMl90PgBlbXNjcmlwdGVuOjptZW1vcnlfdmlldzxjaGFyPgBlbXNjcmlwdGVuOjptZW1vcnlfdmlldzx1bnNpZ25lZCBjaGFyPgBzdGQ6OmJhc2ljX3N0cmluZzx1bnNpZ25lZCBjaGFyPgBlbXNjcmlwdGVuOjptZW1vcnlfdmlldzxzaWduZWQgY2hhcj4AZW1zY3JpcHRlbjo6bWVtb3J5X3ZpZXc8bG9uZz4AZW1zY3JpcHRlbjo6bWVtb3J5X3ZpZXc8dW5zaWduZWQgbG9uZz4AZW1zY3JpcHRlbjo6bWVtb3J5X3ZpZXc8ZG91YmxlPgAAAABkCQAAIAgAAGlpaQBkCQAAIAgAANwMAABpaWlpAAAAAIgMAAB2aQAAAAAAAAEAAAACAAAAAQAAAAAAAAAEAAAABAAAAAQAQcwPC5UN//////z///8BAAAAAgAAAAMAAABOU3QzX18yMTJiYXNpY19zdHJpbmdJY05TXzExY2hhcl90cmFpdHNJY0VFTlNfOWFsbG9jYXRvckljRUVFRQAA6A0AAOAHAABOU3QzX18yMTJiYXNpY19zdHJpbmdJaE5TXzExY2hhcl90cmFpdHNJaEVFTlNfOWFsbG9jYXRvckloRUVFRQAA6A0AACgIAABOU3QzX18yMTJiYXNpY19zdHJpbmdJd05TXzExY2hhcl90cmFpdHNJd0VFTlNfOWFsbG9jYXRvckl3RUVFRQAA6A0AAHAIAABOU3QzX18yMTJiYXNpY19zdHJpbmdJRHNOU18xMWNoYXJfdHJhaXRzSURzRUVOU185YWxsb2NhdG9ySURzRUVFRQAAAOgNAAC4CAAATlN0M19fMjEyYmFzaWNfc3RyaW5nSURpTlNfMTFjaGFyX3RyYWl0c0lEaUVFTlNfOWFsbG9jYXRvcklEaUVFRUUAAADoDQAABAkAAE4xMGVtc2NyaXB0ZW4zdmFsRQAA6A0AAFAJAABOMTBlbXNjcmlwdGVuMTFtZW1vcnlfdmlld0ljRUUAAOgNAABsCQAATjEwZW1zY3JpcHRlbjExbWVtb3J5X3ZpZXdJYUVFAADoDQAAlAkAAE4xMGVtc2NyaXB0ZW4xMW1lbW9yeV92aWV3SWhFRQAA6A0AALwJAABOMTBlbXNjcmlwdGVuMTFtZW1vcnlfdmlld0lzRUUAAOgNAADkCQAATjEwZW1zY3JpcHRlbjExbWVtb3J5X3ZpZXdJdEVFAADoDQAADAoAAE4xMGVtc2NyaXB0ZW4xMW1lbW9yeV92aWV3SWlFRQAA6A0AADQKAABOMTBlbXNjcmlwdGVuMTFtZW1vcnlfdmlld0lqRUUAAOgNAABcCgAATjEwZW1zY3JpcHRlbjExbWVtb3J5X3ZpZXdJbEVFAADoDQAAhAoAAE4xMGVtc2NyaXB0ZW4xMW1lbW9yeV92aWV3SW1FRQAA6A0AAKwKAABOMTBlbXNjcmlwdGVuMTFtZW1vcnlfdmlld0l4RUUAAOgNAADUCgAATjEwZW1zY3JpcHRlbjExbWVtb3J5X3ZpZXdJeUVFAADoDQAA/AoAAE4xMGVtc2NyaXB0ZW4xMW1lbW9yeV92aWV3SWZFRQAA6A0AACQLAABOMTBlbXNjcmlwdGVuMTFtZW1vcnlfdmlld0lkRUUAAOgNAABMCwAATjEwX19jeHhhYml2MTE2X19zaGltX3R5cGVfaW5mb0UAAAAAKA4AAHQLAAAYDgAATjEwX19jeHhhYml2MTE3X19jbGFzc190eXBlX2luZm9FAAAAKA4AAKQLAACYCwAATjEwX19jeHhhYml2MTE3X19wYmFzZV90eXBlX2luZm9FAAAAKA4AANQLAACYCwAATjEwX19jeHhhYml2MTE5X19wb2ludGVyX3R5cGVfaW5mb0UAKA4AAAQMAAD4CwAAAAAAAHgMAAALAAAADAAAAA0AAAAOAAAADwAAAE4xMF9fY3h4YWJpdjEyM19fZnVuZGFtZW50YWxfdHlwZV9pbmZvRQAoDgAAUAwAAJgLAAB2AAAAPAwAAIQMAABiAAAAPAwAAJAMAABjAAAAPAwAAJwMAABoAAAAPAwAAKgMAABhAAAAPAwAALQMAABzAAAAPAwAAMAMAAB0AAAAPAwAAMwMAABpAAAAPAwAANgMAABqAAAAPAwAAOQMAABsAAAAPAwAAPAMAABtAAAAPAwAAPwMAAB4AAAAPAwAAAgNAAB5AAAAPAwAABQNAABmAAAAPAwAACANAABkAAAAPAwAACwNAABOMTBfX2N4eGFiaXYxMjBfX3NpX2NsYXNzX3R5cGVfaW5mb0UAAAAAKA4AADgNAADICwAAU3Q5ZXhjZXB0aW9uAAAAAAAAAACgDQAACAAAABAAAAARAAAAU3QxMWxvZ2ljX2Vycm9yACgOAACQDQAASA4AAAAAAADUDQAACAAAABIAAAARAAAAU3QxMmxlbmd0aF9lcnJvcgAAAAAoDgAAwA0AAKANAAAAAAAAyAsAAAsAAAATAAAADQAAAA4AAAAUAAAAFQAAABYAAAAXAAAAU3Q5dHlwZV9pbmZvAAAAAOgNAAAIDgAAAAAAAGANAAALAAAAGAAAAA0AAAAOAAAAFAAAABkAAAAaAAAAGwAAAOgNAABsDQAAAAAAAEgOAAAcAAAAHQAAAB4AQeQcCwNwEwEAQYAdCwEqAEHIHQsCSBMAQewdCwEK");
// src/lz4.ts
var DEFAULT_ACCELERATION = 1;
var MAX_BUFFER_SIZE = 2113929216;
var emscriptenModule;
var init = () => lz4_codec_default({ noInitialRun: true, wasmBinary: lz4_codec_default2 });
var LZ4 = class LZ42 {
static codecId = "lz4";
static DEFAULT_ACCELERATION = DEFAULT_ACCELERATION;
static max_buffer_size = MAX_BUFFER_SIZE;
max_buffer_size = MAX_BUFFER_SIZE;
acceleration;
constructor(acceleration = DEFAULT_ACCELERATION) {
if (!Number.isInteger(acceleration)) {
throw Error(`Invalid acceleration "${acceleration}". Must be a positive integer.`);
}
this.acceleration = acceleration <= 0 ? DEFAULT_ACCELERATION : acceleration;
}
static fromConfig({ acceleration }) {
return new LZ42(acceleration);
}
async encode(data) {
if (!emscriptenModule) {
emscriptenModule = init();
}
if (data.length > MAX_BUFFER_SIZE) {
throw Error(`Codec does not support buffers of > ${MAX_BUFFER_SIZE} bytes.`);
}
const module = await emscriptenModule;
const view = module.compress(data, this.acceleration);
const result = new Uint8Array(view);
module.free_result();
return result;
}
async decode(data, out) {
if (!emscriptenModule) {
emscriptenModule = init();
}
if (data.length > MAX_BUFFER_SIZE) {
throw Error(`Codec does not support buffers of > ${MAX_BUFFER_SIZE} bytes.`);
}
const module = await emscriptenModule;
const view = module.decompress(data);
const result = new Uint8Array(view);
module.free_result();
if (out !== void 0) {
out.set(result);
return out;
}
return result;
}
};
var lz4_default = LZ4;
export {
lz4_default as default
};