/
home
/
infinitibizsol
/
insurcrm.infinitibizsol.com
/
node_modules
/
megajs
/
dist
/
File Upload :
llllll
Current File: /home/infinitibizsol/insurcrm.infinitibizsol.com/node_modules/megajs/dist/main.browser-es.mjs
var __create = Object.create; var __defProp = Object.defineProperty; var __getOwnPropDesc = Object.getOwnPropertyDescriptor; var __getOwnPropNames = Object.getOwnPropertyNames; var __getProtoOf = Object.getPrototypeOf; var __hasOwnProp = Object.prototype.hasOwnProperty; var __esm = (fn, res) => function __init() { return fn && (res = (0, fn[__getOwnPropNames(fn)[0]])(fn = 0)), res; }; var __commonJS = (cb, mod) => function __require() { return mod || (0, cb[__getOwnPropNames(cb)[0]])((mod = { exports: {} }).exports, mod), mod.exports; }; var __export = (target, all) => { for (var name in all) __defProp(target, name, { get: all[name], enumerable: true }); }; var __copyProps = (to, from, except, desc) => { if (from && typeof from === "object" || typeof from === "function") { for (let key of __getOwnPropNames(from)) if (!__hasOwnProp.call(to, key) && key !== except) __defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable }); } return to; }; var __toESM = (mod, isNodeMode, target) => (target = mod != null ? __create(__getProtoOf(mod)) : {}, __copyProps( // If the importer is in node compatibility mode or this is not an ESM // file that has been converted to a CommonJS file using a Babel- // compatible transform (i.e. "__esModule" has not been set), then set // "default" to the CommonJS "module.exports" for node compatibility. isNodeMode || !mod || !mod.__esModule ? __defProp(target, "default", { value: mod, enumerable: true }) : target, mod )); var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod); // node_modules/base64-js/index.js var require_base64_js = __commonJS({ "node_modules/base64-js/index.js"(exports) { "use strict"; init_process_shim(); exports.byteLength = byteLength; exports.toByteArray = toByteArray; exports.fromByteArray = fromByteArray; var lookup = []; var revLookup = []; var Arr = typeof Uint8Array !== "undefined" ? Uint8Array : Array; var code = "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/"; for (i = 0, len = code.length; i < len; ++i) { lookup[i] = code[i]; revLookup[code.charCodeAt(i)] = i; } var i; var len; revLookup["-".charCodeAt(0)] = 62; revLookup["_".charCodeAt(0)] = 63; function getLens(b64) { var len2 = b64.length; if (len2 % 4 > 0) { throw new Error("Invalid string. Length must be a multiple of 4"); } var validLen = b64.indexOf("="); if (validLen === -1) validLen = len2; var placeHoldersLen = validLen === len2 ? 0 : 4 - validLen % 4; return [validLen, placeHoldersLen]; } function byteLength(b64) { var lens = getLens(b64); var validLen = lens[0]; var placeHoldersLen = lens[1]; return (validLen + placeHoldersLen) * 3 / 4 - placeHoldersLen; } function _byteLength(b64, validLen, placeHoldersLen) { return (validLen + placeHoldersLen) * 3 / 4 - placeHoldersLen; } function toByteArray(b64) { var tmp; var lens = getLens(b64); var validLen = lens[0]; var placeHoldersLen = lens[1]; var arr = new Arr(_byteLength(b64, validLen, placeHoldersLen)); var curByte = 0; var len2 = placeHoldersLen > 0 ? validLen - 4 : validLen; var i2; for (i2 = 0; i2 < len2; i2 += 4) { tmp = revLookup[b64.charCodeAt(i2)] << 18 | revLookup[b64.charCodeAt(i2 + 1)] << 12 | revLookup[b64.charCodeAt(i2 + 2)] << 6 | revLookup[b64.charCodeAt(i2 + 3)]; arr[curByte++] = tmp >> 16 & 255; arr[curByte++] = tmp >> 8 & 255; arr[curByte++] = tmp & 255; } if (placeHoldersLen === 2) { tmp = revLookup[b64.charCodeAt(i2)] << 2 | revLookup[b64.charCodeAt(i2 + 1)] >> 4; arr[curByte++] = tmp & 255; } if (placeHoldersLen === 1) { tmp = revLookup[b64.charCodeAt(i2)] << 10 | revLookup[b64.charCodeAt(i2 + 1)] << 4 | revLookup[b64.charCodeAt(i2 + 2)] >> 2; arr[curByte++] = tmp >> 8 & 255; arr[curByte++] = tmp & 255; } return arr; } function tripletToBase64(num) { return lookup[num >> 18 & 63] + lookup[num >> 12 & 63] + lookup[num >> 6 & 63] + lookup[num & 63]; } function encodeChunk(uint8, start, end) { var tmp; var output = []; for (var i2 = start; i2 < end; i2 += 3) { tmp = (uint8[i2] << 16 & 16711680) + (uint8[i2 + 1] << 8 & 65280) + (uint8[i2 + 2] & 255); output.push(tripletToBase64(tmp)); } return output.join(""); } function fromByteArray(uint8) { var tmp; var len2 = uint8.length; var extraBytes = len2 % 3; var parts = []; var maxChunkLength = 16383; for (var i2 = 0, len22 = len2 - extraBytes; i2 < len22; i2 += maxChunkLength) { parts.push(encodeChunk(uint8, i2, i2 + maxChunkLength > len22 ? len22 : i2 + maxChunkLength)); } if (extraBytes === 1) { tmp = uint8[len2 - 1]; parts.push( lookup[tmp >> 2] + lookup[tmp << 4 & 63] + "==" ); } else if (extraBytes === 2) { tmp = (uint8[len2 - 2] << 8) + uint8[len2 - 1]; parts.push( lookup[tmp >> 10] + lookup[tmp >> 4 & 63] + lookup[tmp << 2 & 63] + "=" ); } return parts.join(""); } } }); // node_modules/ieee754/index.js var require_ieee754 = __commonJS({ "node_modules/ieee754/index.js"(exports) { init_process_shim(); exports.read = function(buffer, offset, isLE, mLen, nBytes) { var e, m; var eLen = nBytes * 8 - mLen - 1; var eMax = (1 << eLen) - 1; var eBias = eMax >> 1; var nBits = -7; var i = isLE ? nBytes - 1 : 0; var d = isLE ? -1 : 1; var s = buffer[offset + i]; i += d; e = s & (1 << -nBits) - 1; s >>= -nBits; nBits += eLen; for (; nBits > 0; e = e * 256 + buffer[offset + i], i += d, nBits -= 8) { } m = e & (1 << -nBits) - 1; e >>= -nBits; nBits += mLen; for (; nBits > 0; m = m * 256 + buffer[offset + i], i += d, nBits -= 8) { } if (e === 0) { e = 1 - eBias; } else if (e === eMax) { return m ? NaN : (s ? -1 : 1) * Infinity; } else { m = m + Math.pow(2, mLen); e = e - eBias; } return (s ? -1 : 1) * m * Math.pow(2, e - mLen); }; exports.write = function(buffer, value, offset, isLE, mLen, nBytes) { var e, m, c; var eLen = nBytes * 8 - mLen - 1; var eMax = (1 << eLen) - 1; var eBias = eMax >> 1; var rt = mLen === 23 ? Math.pow(2, -24) - Math.pow(2, -77) : 0; var i = isLE ? 0 : nBytes - 1; var d = isLE ? 1 : -1; var s = value < 0 || value === 0 && 1 / value < 0 ? 1 : 0; value = Math.abs(value); if (isNaN(value) || value === Infinity) { m = isNaN(value) ? 1 : 0; e = eMax; } else { e = Math.floor(Math.log(value) / Math.LN2); if (value * (c = Math.pow(2, -e)) < 1) { e--; c *= 2; } if (e + eBias >= 1) { value += rt / c; } else { value += rt * Math.pow(2, 1 - eBias); } if (value * c >= 2) { e++; c /= 2; } if (e + eBias >= eMax) { m = 0; e = eMax; } else if (e + eBias >= 1) { m = (value * c - 1) * Math.pow(2, mLen); e = e + eBias; } else { m = value * Math.pow(2, eBias - 1) * Math.pow(2, mLen); e = 0; } } for (; mLen >= 8; buffer[offset + i] = m & 255, i += d, m /= 256, mLen -= 8) { } e = e << mLen | m; eLen += mLen; for (; eLen > 0; buffer[offset + i] = e & 255, i += d, e /= 256, eLen -= 8) { } buffer[offset + i - d] |= s * 128; }; } }); // node_modules/buffer/index.js var require_buffer = __commonJS({ "node_modules/buffer/index.js"(exports) { "use strict"; init_process_shim(); var base64 = require_base64_js(); var ieee754 = require_ieee754(); var customInspectSymbol = typeof Symbol === "function" && typeof Symbol["for"] === "function" ? Symbol["for"]("nodejs.util.inspect.custom") : null; exports.Buffer = Buffer3; exports.SlowBuffer = SlowBuffer; exports.INSPECT_MAX_BYTES = 50; var K_MAX_LENGTH = 2147483647; exports.kMaxLength = K_MAX_LENGTH; Buffer3.TYPED_ARRAY_SUPPORT = typedArraySupport(); if (!Buffer3.TYPED_ARRAY_SUPPORT && typeof console !== "undefined" && typeof console.error === "function") { console.error( "This browser lacks typed array (Uint8Array) support which is required by `buffer` v5.x. Use `buffer` v4.x if you require old browser support." ); } function typedArraySupport() { try { const arr = new Uint8Array(1); const proto = { foo: function() { return 42; } }; Object.setPrototypeOf(proto, Uint8Array.prototype); Object.setPrototypeOf(arr, proto); return arr.foo() === 42; } catch (e) { return false; } } Object.defineProperty(Buffer3.prototype, "parent", { enumerable: true, get: function() { if (!Buffer3.isBuffer(this)) return void 0; return this.buffer; } }); Object.defineProperty(Buffer3.prototype, "offset", { enumerable: true, get: function() { if (!Buffer3.isBuffer(this)) return void 0; return this.byteOffset; } }); function createBuffer(length) { if (length > K_MAX_LENGTH) { throw new RangeError('The value "' + length + '" is invalid for option "size"'); } const buf = new Uint8Array(length); Object.setPrototypeOf(buf, Buffer3.prototype); return buf; } function Buffer3(arg, encodingOrOffset, length) { if (typeof arg === "number") { if (typeof encodingOrOffset === "string") { throw new TypeError( 'The "string" argument must be of type string. Received type number' ); } return allocUnsafe(arg); } return from(arg, encodingOrOffset, length); } Buffer3.poolSize = 8192; function from(value, encodingOrOffset, length) { if (typeof value === "string") { return fromString(value, encodingOrOffset); } if (ArrayBuffer.isView(value)) { return fromArrayView(value); } if (value == null) { throw new TypeError( "The first argument must be one of type string, Buffer, ArrayBuffer, Array, or Array-like Object. Received type " + typeof value ); } if (isInstance(value, ArrayBuffer) || value && isInstance(value.buffer, ArrayBuffer)) { return fromArrayBuffer(value, encodingOrOffset, length); } if (typeof SharedArrayBuffer !== "undefined" && (isInstance(value, SharedArrayBuffer) || value && isInstance(value.buffer, SharedArrayBuffer))) { return fromArrayBuffer(value, encodingOrOffset, length); } if (typeof value === "number") { throw new TypeError( 'The "value" argument must not be of type number. Received type number' ); } const valueOf = value.valueOf && value.valueOf(); if (valueOf != null && valueOf !== value) { return Buffer3.from(valueOf, encodingOrOffset, length); } const b = fromObject(value); if (b) return b; if (typeof Symbol !== "undefined" && Symbol.toPrimitive != null && typeof value[Symbol.toPrimitive] === "function") { return Buffer3.from(value[Symbol.toPrimitive]("string"), encodingOrOffset, length); } throw new TypeError( "The first argument must be one of type string, Buffer, ArrayBuffer, Array, or Array-like Object. Received type " + typeof value ); } Buffer3.from = function(value, encodingOrOffset, length) { return from(value, encodingOrOffset, length); }; Object.setPrototypeOf(Buffer3.prototype, Uint8Array.prototype); Object.setPrototypeOf(Buffer3, Uint8Array); function assertSize(size) { if (typeof size !== "number") { throw new TypeError('"size" argument must be of type number'); } else if (size < 0) { throw new RangeError('The value "' + size + '" is invalid for option "size"'); } } function alloc(size, fill, encoding) { assertSize(size); if (size <= 0) { return createBuffer(size); } if (fill !== void 0) { return typeof encoding === "string" ? createBuffer(size).fill(fill, encoding) : createBuffer(size).fill(fill); } return createBuffer(size); } Buffer3.alloc = function(size, fill, encoding) { return alloc(size, fill, encoding); }; function allocUnsafe(size) { assertSize(size); return createBuffer(size < 0 ? 0 : checked(size) | 0); } Buffer3.allocUnsafe = function(size) { return allocUnsafe(size); }; Buffer3.allocUnsafeSlow = function(size) { return allocUnsafe(size); }; function fromString(string, encoding) { if (typeof encoding !== "string" || encoding === "") { encoding = "utf8"; } if (!Buffer3.isEncoding(encoding)) { throw new TypeError("Unknown encoding: " + encoding); } const length = byteLength(string, encoding) | 0; let buf = createBuffer(length); const actual = buf.write(string, encoding); if (actual !== length) { buf = buf.slice(0, actual); } return buf; } function fromArrayLike(array) { const length = array.length < 0 ? 0 : checked(array.length) | 0; const buf = createBuffer(length); for (let i = 0; i < length; i += 1) { buf[i] = array[i] & 255; } return buf; } function fromArrayView(arrayView) { if (isInstance(arrayView, Uint8Array)) { const copy = new Uint8Array(arrayView); return fromArrayBuffer(copy.buffer, copy.byteOffset, copy.byteLength); } return fromArrayLike(arrayView); } function fromArrayBuffer(array, byteOffset, length) { if (byteOffset < 0 || array.byteLength < byteOffset) { throw new RangeError('"offset" is outside of buffer bounds'); } if (array.byteLength < byteOffset + (length || 0)) { throw new RangeError('"length" is outside of buffer bounds'); } let buf; if (byteOffset === void 0 && length === void 0) { buf = new Uint8Array(array); } else if (length === void 0) { buf = new Uint8Array(array, byteOffset); } else { buf = new Uint8Array(array, byteOffset, length); } Object.setPrototypeOf(buf, Buffer3.prototype); return buf; } function fromObject(obj) { if (Buffer3.isBuffer(obj)) { const len = checked(obj.length) | 0; const buf = createBuffer(len); if (buf.length === 0) { return buf; } obj.copy(buf, 0, 0, len); return buf; } if (obj.length !== void 0) { if (typeof obj.length !== "number" || numberIsNaN(obj.length)) { return createBuffer(0); } return fromArrayLike(obj); } if (obj.type === "Buffer" && Array.isArray(obj.data)) { return fromArrayLike(obj.data); } } function checked(length) { if (length >= K_MAX_LENGTH) { throw new RangeError("Attempt to allocate Buffer larger than maximum size: 0x" + K_MAX_LENGTH.toString(16) + " bytes"); } return length | 0; } function SlowBuffer(length) { if (+length != length) { length = 0; } return Buffer3.alloc(+length); } Buffer3.isBuffer = function isBuffer(b) { return b != null && b._isBuffer === true && b !== Buffer3.prototype; }; Buffer3.compare = function compare(a, b) { if (isInstance(a, Uint8Array)) a = Buffer3.from(a, a.offset, a.byteLength); if (isInstance(b, Uint8Array)) b = Buffer3.from(b, b.offset, b.byteLength); if (!Buffer3.isBuffer(a) || !Buffer3.isBuffer(b)) { throw new TypeError( 'The "buf1", "buf2" arguments must be one of type Buffer or Uint8Array' ); } if (a === b) return 0; let x = a.length; let y = b.length; for (let i = 0, len = Math.min(x, y); i < len; ++i) { if (a[i] !== b[i]) { x = a[i]; y = b[i]; break; } } if (x < y) return -1; if (y < x) return 1; return 0; }; Buffer3.isEncoding = function isEncoding(encoding) { switch (String(encoding).toLowerCase()) { case "hex": case "utf8": case "utf-8": case "ascii": case "latin1": case "binary": case "base64": case "ucs2": case "ucs-2": case "utf16le": case "utf-16le": return true; default: return false; } }; Buffer3.concat = function concat(list, length) { if (!Array.isArray(list)) { throw new TypeError('"list" argument must be an Array of Buffers'); } if (list.length === 0) { return Buffer3.alloc(0); } let i; if (length === void 0) { length = 0; for (i = 0; i < list.length; ++i) { length += list[i].length; } } const buffer = Buffer3.allocUnsafe(length); let pos = 0; for (i = 0; i < list.length; ++i) { let buf = list[i]; if (isInstance(buf, Uint8Array)) { if (pos + buf.length > buffer.length) { if (!Buffer3.isBuffer(buf)) buf = Buffer3.from(buf); buf.copy(buffer, pos); } else { Uint8Array.prototype.set.call( buffer, buf, pos ); } } else if (!Buffer3.isBuffer(buf)) { throw new TypeError('"list" argument must be an Array of Buffers'); } else { buf.copy(buffer, pos); } pos += buf.length; } return buffer; }; function byteLength(string, encoding) { if (Buffer3.isBuffer(string)) { return string.length; } if (ArrayBuffer.isView(string) || isInstance(string, ArrayBuffer)) { return string.byteLength; } if (typeof string !== "string") { throw new TypeError( 'The "string" argument must be one of type string, Buffer, or ArrayBuffer. Received type ' + typeof string ); } const len = string.length; const mustMatch = arguments.length > 2 && arguments[2] === true; if (!mustMatch && len === 0) return 0; let loweredCase = false; for (; ; ) { switch (encoding) { case "ascii": case "latin1": case "binary": return len; case "utf8": case "utf-8": return utf8ToBytes(string).length; case "ucs2": case "ucs-2": case "utf16le": case "utf-16le": return len * 2; case "hex": return len >>> 1; case "base64": return base64ToBytes(string).length; default: if (loweredCase) { return mustMatch ? -1 : utf8ToBytes(string).length; } encoding = ("" + encoding).toLowerCase(); loweredCase = true; } } } Buffer3.byteLength = byteLength; function slowToString(encoding, start, end) { let loweredCase = false; if (start === void 0 || start < 0) { start = 0; } if (start > this.length) { return ""; } if (end === void 0 || end > this.length) { end = this.length; } if (end <= 0) { return ""; } end >>>= 0; start >>>= 0; if (end <= start) { return ""; } if (!encoding) encoding = "utf8"; while (true) { switch (encoding) { case "hex": return hexSlice(this, start, end); case "utf8": case "utf-8": return utf8Slice(this, start, end); case "ascii": return asciiSlice(this, start, end); case "latin1": case "binary": return latin1Slice(this, start, end); case "base64": return base64Slice(this, start, end); case "ucs2": case "ucs-2": case "utf16le": case "utf-16le": return utf16leSlice(this, start, end); default: if (loweredCase) throw new TypeError("Unknown encoding: " + encoding); encoding = (encoding + "").toLowerCase(); loweredCase = true; } } } Buffer3.prototype._isBuffer = true; function swap(b, n, m) { const i = b[n]; b[n] = b[m]; b[m] = i; } Buffer3.prototype.swap16 = function swap16() { const len = this.length; if (len % 2 !== 0) { throw new RangeError("Buffer size must be a multiple of 16-bits"); } for (let i = 0; i < len; i += 2) { swap(this, i, i + 1); } return this; }; Buffer3.prototype.swap32 = function swap32() { const len = this.length; if (len % 4 !== 0) { throw new RangeError("Buffer size must be a multiple of 32-bits"); } for (let i = 0; i < len; i += 4) { swap(this, i, i + 3); swap(this, i + 1, i + 2); } return this; }; Buffer3.prototype.swap64 = function swap64() { const len = this.length; if (len % 8 !== 0) { throw new RangeError("Buffer size must be a multiple of 64-bits"); } for (let i = 0; i < len; i += 8) { swap(this, i, i + 7); swap(this, i + 1, i + 6); swap(this, i + 2, i + 5); swap(this, i + 3, i + 4); } return this; }; Buffer3.prototype.toString = function toString() { const length = this.length; if (length === 0) return ""; if (arguments.length === 0) return utf8Slice(this, 0, length); return slowToString.apply(this, arguments); }; Buffer3.prototype.toLocaleString = Buffer3.prototype.toString; Buffer3.prototype.equals = function equals(b) { if (!Buffer3.isBuffer(b)) throw new TypeError("Argument must be a Buffer"); if (this === b) return true; return Buffer3.compare(this, b) === 0; }; Buffer3.prototype.inspect = function inspect() { let str = ""; const max = exports.INSPECT_MAX_BYTES; str = this.toString("hex", 0, max).replace(/(.{2})/g, "$1 ").trim(); if (this.length > max) str += " ... "; return "<Buffer " + str + ">"; }; if (customInspectSymbol) { Buffer3.prototype[customInspectSymbol] = Buffer3.prototype.inspect; } Buffer3.prototype.compare = function compare(target, start, end, thisStart, thisEnd) { if (isInstance(target, Uint8Array)) { target = Buffer3.from(target, target.offset, target.byteLength); } if (!Buffer3.isBuffer(target)) { throw new TypeError( 'The "target" argument must be one of type Buffer or Uint8Array. Received type ' + typeof target ); } if (start === void 0) { start = 0; } if (end === void 0) { end = target ? target.length : 0; } if (thisStart === void 0) { thisStart = 0; } if (thisEnd === void 0) { thisEnd = this.length; } if (start < 0 || end > target.length || thisStart < 0 || thisEnd > this.length) { throw new RangeError("out of range index"); } if (thisStart >= thisEnd && start >= end) { return 0; } if (thisStart >= thisEnd) { return -1; } if (start >= end) { return 1; } start >>>= 0; end >>>= 0; thisStart >>>= 0; thisEnd >>>= 0; if (this === target) return 0; let x = thisEnd - thisStart; let y = end - start; const len = Math.min(x, y); const thisCopy = this.slice(thisStart, thisEnd); const targetCopy = target.slice(start, end); for (let i = 0; i < len; ++i) { if (thisCopy[i] !== targetCopy[i]) { x = thisCopy[i]; y = targetCopy[i]; break; } } if (x < y) return -1; if (y < x) return 1; return 0; }; function bidirectionalIndexOf(buffer, val, byteOffset, encoding, dir) { if (buffer.length === 0) return -1; if (typeof byteOffset === "string") { encoding = byteOffset; byteOffset = 0; } else if (byteOffset > 2147483647) { byteOffset = 2147483647; } else if (byteOffset < -2147483648) { byteOffset = -2147483648; } byteOffset = +byteOffset; if (numberIsNaN(byteOffset)) { byteOffset = dir ? 0 : buffer.length - 1; } if (byteOffset < 0) byteOffset = buffer.length + byteOffset; if (byteOffset >= buffer.length) { if (dir) return -1; else byteOffset = buffer.length - 1; } else if (byteOffset < 0) { if (dir) byteOffset = 0; else return -1; } if (typeof val === "string") { val = Buffer3.from(val, encoding); } if (Buffer3.isBuffer(val)) { if (val.length === 0) { return -1; } return arrayIndexOf(buffer, val, byteOffset, encoding, dir); } else if (typeof val === "number") { val = val & 255; if (typeof Uint8Array.prototype.indexOf === "function") { if (dir) { return Uint8Array.prototype.indexOf.call(buffer, val, byteOffset); } else { return Uint8Array.prototype.lastIndexOf.call(buffer, val, byteOffset); } } return arrayIndexOf(buffer, [val], byteOffset, encoding, dir); } throw new TypeError("val must be string, number or Buffer"); } function arrayIndexOf(arr, val, byteOffset, encoding, dir) { let indexSize = 1; let arrLength = arr.length; let valLength = val.length; if (encoding !== void 0) { encoding = String(encoding).toLowerCase(); if (encoding === "ucs2" || encoding === "ucs-2" || encoding === "utf16le" || encoding === "utf-16le") { if (arr.length < 2 || val.length < 2) { return -1; } indexSize = 2; arrLength /= 2; valLength /= 2; byteOffset /= 2; } } function read(buf, i2) { if (indexSize === 1) { return buf[i2]; } else { return buf.readUInt16BE(i2 * indexSize); } } let i; if (dir) { let foundIndex = -1; for (i = byteOffset; i < arrLength; i++) { if (read(arr, i) === read(val, foundIndex === -1 ? 0 : i - foundIndex)) { if (foundIndex === -1) foundIndex = i; if (i - foundIndex + 1 === valLength) return foundIndex * indexSize; } else { if (foundIndex !== -1) i -= i - foundIndex; foundIndex = -1; } } } else { if (byteOffset + valLength > arrLength) byteOffset = arrLength - valLength; for (i = byteOffset; i >= 0; i--) { let found = true; for (let j = 0; j < valLength; j++) { if (read(arr, i + j) !== read(val, j)) { found = false; break; } } if (found) return i; } } return -1; } Buffer3.prototype.includes = function includes(val, byteOffset, encoding) { return this.indexOf(val, byteOffset, encoding) !== -1; }; Buffer3.prototype.indexOf = function indexOf(val, byteOffset, encoding) { return bidirectionalIndexOf(this, val, byteOffset, encoding, true); }; Buffer3.prototype.lastIndexOf = function lastIndexOf(val, byteOffset, encoding) { return bidirectionalIndexOf(this, val, byteOffset, encoding, false); }; function hexWrite(buf, string, offset, length) { offset = Number(offset) || 0; const remaining = buf.length - offset; if (!length) { length = remaining; } else { length = Number(length); if (length > remaining) { length = remaining; } } const strLen = string.length; if (length > strLen / 2) { length = strLen / 2; } let i; for (i = 0; i < length; ++i) { const parsed = parseInt(string.substr(i * 2, 2), 16); if (numberIsNaN(parsed)) return i; buf[offset + i] = parsed; } return i; } function utf8Write(buf, string, offset, length) { return blitBuffer(utf8ToBytes(string, buf.length - offset), buf, offset, length); } function asciiWrite(buf, string, offset, length) { return blitBuffer(asciiToBytes(string), buf, offset, length); } function base64Write(buf, string, offset, length) { return blitBuffer(base64ToBytes(string), buf, offset, length); } function ucs2Write(buf, string, offset, length) { return blitBuffer(utf16leToBytes(string, buf.length - offset), buf, offset, length); } Buffer3.prototype.write = function write(string, offset, length, encoding) { if (offset === void 0) { encoding = "utf8"; length = this.length; offset = 0; } else if (length === void 0 && typeof offset === "string") { encoding = offset; length = this.length; offset = 0; } else if (isFinite(offset)) { offset = offset >>> 0; if (isFinite(length)) { length = length >>> 0; if (encoding === void 0) encoding = "utf8"; } else { encoding = length; length = void 0; } } else { throw new Error( "Buffer.write(string, encoding, offset[, length]) is no longer supported" ); } const remaining = this.length - offset; if (length === void 0 || length > remaining) length = remaining; if (string.length > 0 && (length < 0 || offset < 0) || offset > this.length) { throw new RangeError("Attempt to write outside buffer bounds"); } if (!encoding) encoding = "utf8"; let loweredCase = false; for (; ; ) { switch (encoding) { case "hex": return hexWrite(this, string, offset, length); case "utf8": case "utf-8": return utf8Write(this, string, offset, length); case "ascii": case "latin1": case "binary": return asciiWrite(this, string, offset, length); case "base64": return base64Write(this, string, offset, length); case "ucs2": case "ucs-2": case "utf16le": case "utf-16le": return ucs2Write(this, string, offset, length); default: if (loweredCase) throw new TypeError("Unknown encoding: " + encoding); encoding = ("" + encoding).toLowerCase(); loweredCase = true; } } }; Buffer3.prototype.toJSON = function toJSON() { return { type: "Buffer", data: Array.prototype.slice.call(this._arr || this, 0) }; }; function base64Slice(buf, start, end) { if (start === 0 && end === buf.length) { return base64.fromByteArray(buf); } else { return base64.fromByteArray(buf.slice(start, end)); } } function utf8Slice(buf, start, end) { end = Math.min(buf.length, end); const res = []; let i = start; while (i < end) { const firstByte = buf[i]; let codePoint = null; let bytesPerSequence = firstByte > 239 ? 4 : firstByte > 223 ? 3 : firstByte > 191 ? 2 : 1; if (i + bytesPerSequence <= end) { let secondByte, thirdByte, fourthByte, tempCodePoint; switch (bytesPerSequence) { case 1: if (firstByte < 128) { codePoint = firstByte; } break; case 2: secondByte = buf[i + 1]; if ((secondByte & 192) === 128) { tempCodePoint = (firstByte & 31) << 6 | secondByte & 63; if (tempCodePoint > 127) { codePoint = tempCodePoint; } } break; case 3: secondByte = buf[i + 1]; thirdByte = buf[i + 2]; if ((secondByte & 192) === 128 && (thirdByte & 192) === 128) { tempCodePoint = (firstByte & 15) << 12 | (secondByte & 63) << 6 | thirdByte & 63; if (tempCodePoint > 2047 && (tempCodePoint < 55296 || tempCodePoint > 57343)) { codePoint = tempCodePoint; } } break; case 4: secondByte = buf[i + 1]; thirdByte = buf[i + 2]; fourthByte = buf[i + 3]; if ((secondByte & 192) === 128 && (thirdByte & 192) === 128 && (fourthByte & 192) === 128) { tempCodePoint = (firstByte & 15) << 18 | (secondByte & 63) << 12 | (thirdByte & 63) << 6 | fourthByte & 63; if (tempCodePoint > 65535 && tempCodePoint < 1114112) { codePoint = tempCodePoint; } } } } if (codePoint === null) { codePoint = 65533; bytesPerSequence = 1; } else if (codePoint > 65535) { codePoint -= 65536; res.push(codePoint >>> 10 & 1023 | 55296); codePoint = 56320 | codePoint & 1023; } res.push(codePoint); i += bytesPerSequence; } return decodeCodePointsArray(res); } var MAX_ARGUMENTS_LENGTH = 4096; function decodeCodePointsArray(codePoints) { const len = codePoints.length; if (len <= MAX_ARGUMENTS_LENGTH) { return String.fromCharCode.apply(String, codePoints); } let res = ""; let i = 0; while (i < len) { res += String.fromCharCode.apply( String, codePoints.slice(i, i += MAX_ARGUMENTS_LENGTH) ); } return res; } function asciiSlice(buf, start, end) { let ret = ""; end = Math.min(buf.length, end); for (let i = start; i < end; ++i) { ret += String.fromCharCode(buf[i] & 127); } return ret; } function latin1Slice(buf, start, end) { let ret = ""; end = Math.min(buf.length, end); for (let i = start; i < end; ++i) { ret += String.fromCharCode(buf[i]); } return ret; } function hexSlice(buf, start, end) { const len = buf.length; if (!start || start < 0) start = 0; if (!end || end < 0 || end > len) end = len; let out = ""; for (let i = start; i < end; ++i) { out += hexSliceLookupTable[buf[i]]; } return out; } function utf16leSlice(buf, start, end) { const bytes = buf.slice(start, end); let res = ""; for (let i = 0; i < bytes.length - 1; i += 2) { res += String.fromCharCode(bytes[i] + bytes[i + 1] * 256); } return res; } Buffer3.prototype.slice = function slice(start, end) { const len = this.length; start = ~~start; end = end === void 0 ? len : ~~end; if (start < 0) { start += len; if (start < 0) start = 0; } else if (start > len) { start = len; } if (end < 0) { end += len; if (end < 0) end = 0; } else if (end > len) { end = len; } if (end < start) end = start; const newBuf = this.subarray(start, end); Object.setPrototypeOf(newBuf, Buffer3.prototype); return newBuf; }; function checkOffset(offset, ext, length) { if (offset % 1 !== 0 || offset < 0) throw new RangeError("offset is not uint"); if (offset + ext > length) throw new RangeError("Trying to access beyond buffer length"); } Buffer3.prototype.readUintLE = Buffer3.prototype.readUIntLE = function readUIntLE(offset, byteLength2, noAssert) { offset = offset >>> 0; byteLength2 = byteLength2 >>> 0; if (!noAssert) checkOffset(offset, byteLength2, this.length); let val = this[offset]; let mul = 1; let i = 0; while (++i < byteLength2 && (mul *= 256)) { val += this[offset + i] * mul; } return val; }; Buffer3.prototype.readUintBE = Buffer3.prototype.readUIntBE = function readUIntBE(offset, byteLength2, noAssert) { offset = offset >>> 0; byteLength2 = byteLength2 >>> 0; if (!noAssert) { checkOffset(offset, byteLength2, this.length); } let val = this[offset + --byteLength2]; let mul = 1; while (byteLength2 > 0 && (mul *= 256)) { val += this[offset + --byteLength2] * mul; } return val; }; Buffer3.prototype.readUint8 = Buffer3.prototype.readUInt8 = function readUInt8(offset, noAssert) { offset = offset >>> 0; if (!noAssert) checkOffset(offset, 1, this.length); return this[offset]; }; Buffer3.prototype.readUint16LE = Buffer3.prototype.readUInt16LE = function readUInt16LE(offset, noAssert) { offset = offset >>> 0; if (!noAssert) checkOffset(offset, 2, this.length); return this[offset] | this[offset + 1] << 8; }; Buffer3.prototype.readUint16BE = Buffer3.prototype.readUInt16BE = function readUInt16BE(offset, noAssert) { offset = offset >>> 0; if (!noAssert) checkOffset(offset, 2, this.length); return this[offset] << 8 | this[offset + 1]; }; Buffer3.prototype.readUint32LE = Buffer3.prototype.readUInt32LE = function readUInt32LE(offset, noAssert) { offset = offset >>> 0; if (!noAssert) checkOffset(offset, 4, this.length); return (this[offset] | this[offset + 1] << 8 | this[offset + 2] << 16) + this[offset + 3] * 16777216; }; Buffer3.prototype.readUint32BE = Buffer3.prototype.readUInt32BE = function readUInt32BE(offset, noAssert) { offset = offset >>> 0; if (!noAssert) checkOffset(offset, 4, this.length); return this[offset] * 16777216 + (this[offset + 1] << 16 | this[offset + 2] << 8 | this[offset + 3]); }; Buffer3.prototype.readBigUInt64LE = defineBigIntMethod(function readBigUInt64LE(offset) { offset = offset >>> 0; validateNumber(offset, "offset"); const first = this[offset]; const last = this[offset + 7]; if (first === void 0 || last === void 0) { boundsError(offset, this.length - 8); } const lo = first + this[++offset] * 2 ** 8 + this[++offset] * 2 ** 16 + this[++offset] * 2 ** 24; const hi = this[++offset] + this[++offset] * 2 ** 8 + this[++offset] * 2 ** 16 + last * 2 ** 24; return BigInt(lo) + (BigInt(hi) << BigInt(32)); }); Buffer3.prototype.readBigUInt64BE = defineBigIntMethod(function readBigUInt64BE(offset) { offset = offset >>> 0; validateNumber(offset, "offset"); const first = this[offset]; const last = this[offset + 7]; if (first === void 0 || last === void 0) { boundsError(offset, this.length - 8); } const hi = first * 2 ** 24 + this[++offset] * 2 ** 16 + this[++offset] * 2 ** 8 + this[++offset]; const lo = this[++offset] * 2 ** 24 + this[++offset] * 2 ** 16 + this[++offset] * 2 ** 8 + last; return (BigInt(hi) << BigInt(32)) + BigInt(lo); }); Buffer3.prototype.readIntLE = function readIntLE(offset, byteLength2, noAssert) { offset = offset >>> 0; byteLength2 = byteLength2 >>> 0; if (!noAssert) checkOffset(offset, byteLength2, this.length); let val = this[offset]; let mul = 1; let i = 0; while (++i < byteLength2 && (mul *= 256)) { val += this[offset + i] * mul; } mul *= 128; if (val >= mul) val -= Math.pow(2, 8 * byteLength2); return val; }; Buffer3.prototype.readIntBE = function readIntBE(offset, byteLength2, noAssert) { offset = offset >>> 0; byteLength2 = byteLength2 >>> 0; if (!noAssert) checkOffset(offset, byteLength2, this.length); let i = byteLength2; let mul = 1; let val = this[offset + --i]; while (i > 0 && (mul *= 256)) { val += this[offset + --i] * mul; } mul *= 128; if (val >= mul) val -= Math.pow(2, 8 * byteLength2); return val; }; Buffer3.prototype.readInt8 = function readInt8(offset, noAssert) { offset = offset >>> 0; if (!noAssert) checkOffset(offset, 1, this.length); if (!(this[offset] & 128)) return this[offset]; return (255 - this[offset] + 1) * -1; }; Buffer3.prototype.readInt16LE = function readInt16LE(offset, noAssert) { offset = offset >>> 0; if (!noAssert) checkOffset(offset, 2, this.length); const val = this[offset] | this[offset + 1] << 8; return val & 32768 ? val | 4294901760 : val; }; Buffer3.prototype.readInt16BE = function readInt16BE(offset, noAssert) { offset = offset >>> 0; if (!noAssert) checkOffset(offset, 2, this.length); const val = this[offset + 1] | this[offset] << 8; return val & 32768 ? val | 4294901760 : val; }; Buffer3.prototype.readInt32LE = function readInt32LE(offset, noAssert) { offset = offset >>> 0; if (!noAssert) checkOffset(offset, 4, this.length); return this[offset] | this[offset + 1] << 8 | this[offset + 2] << 16 | this[offset + 3] << 24; }; Buffer3.prototype.readInt32BE = function readInt32BE(offset, noAssert) { offset = offset >>> 0; if (!noAssert) checkOffset(offset, 4, this.length); return this[offset] << 24 | this[offset + 1] << 16 | this[offset + 2] << 8 | this[offset + 3]; }; Buffer3.prototype.readBigInt64LE = defineBigIntMethod(function readBigInt64LE(offset) { offset = offset >>> 0; validateNumber(offset, "offset"); const first = this[offset]; const last = this[offset + 7]; if (first === void 0 || last === void 0) { boundsError(offset, this.length - 8); } const val = this[offset + 4] + this[offset + 5] * 2 ** 8 + this[offset + 6] * 2 ** 16 + (last << 24); return (BigInt(val) << BigInt(32)) + BigInt(first + this[++offset] * 2 ** 8 + this[++offset] * 2 ** 16 + this[++offset] * 2 ** 24); }); Buffer3.prototype.readBigInt64BE = defineBigIntMethod(function readBigInt64BE(offset) { offset = offset >>> 0; validateNumber(offset, "offset"); const first = this[offset]; const last = this[offset + 7]; if (first === void 0 || last === void 0) { boundsError(offset, this.length - 8); } const val = (first << 24) + // Overflow this[++offset] * 2 ** 16 + this[++offset] * 2 ** 8 + this[++offset]; return (BigInt(val) << BigInt(32)) + BigInt(this[++offset] * 2 ** 24 + this[++offset] * 2 ** 16 + this[++offset] * 2 ** 8 + last); }); Buffer3.prototype.readFloatLE = function readFloatLE(offset, noAssert) { offset = offset >>> 0; if (!noAssert) checkOffset(offset, 4, this.length); return ieee754.read(this, offset, true, 23, 4); }; Buffer3.prototype.readFloatBE = function readFloatBE(offset, noAssert) { offset = offset >>> 0; if (!noAssert) checkOffset(offset, 4, this.length); return ieee754.read(this, offset, false, 23, 4); }; Buffer3.prototype.readDoubleLE = function readDoubleLE(offset, noAssert) { offset = offset >>> 0; if (!noAssert) checkOffset(offset, 8, this.length); return ieee754.read(this, offset, true, 52, 8); }; Buffer3.prototype.readDoubleBE = function readDoubleBE(offset, noAssert) { offset = offset >>> 0; if (!noAssert) checkOffset(offset, 8, this.length); return ieee754.read(this, offset, false, 52, 8); }; function checkInt(buf, value, offset, ext, max, min) { if (!Buffer3.isBuffer(buf)) throw new TypeError('"buffer" argument must be a Buffer instance'); if (value > max || value < min) throw new RangeError('"value" argument is out of bounds'); if (offset + ext > buf.length) throw new RangeError("Index out of range"); } Buffer3.prototype.writeUintLE = Buffer3.prototype.writeUIntLE = function writeUIntLE(value, offset, byteLength2, noAssert) { value = +value; offset = offset >>> 0; byteLength2 = byteLength2 >>> 0; if (!noAssert) { const maxBytes = Math.pow(2, 8 * byteLength2) - 1; checkInt(this, value, offset, byteLength2, maxBytes, 0); } let mul = 1; let i = 0; this[offset] = value & 255; while (++i < byteLength2 && (mul *= 256)) { this[offset + i] = value / mul & 255; } return offset + byteLength2; }; Buffer3.prototype.writeUintBE = Buffer3.prototype.writeUIntBE = function writeUIntBE(value, offset, byteLength2, noAssert) { value = +value; offset = offset >>> 0; byteLength2 = byteLength2 >>> 0; if (!noAssert) { const maxBytes = Math.pow(2, 8 * byteLength2) - 1; checkInt(this, value, offset, byteLength2, maxBytes, 0); } let i = byteLength2 - 1; let mul = 1; this[offset + i] = value & 255; while (--i >= 0 && (mul *= 256)) { this[offset + i] = value / mul & 255; } return offset + byteLength2; }; Buffer3.prototype.writeUint8 = Buffer3.prototype.writeUInt8 = function writeUInt8(value, offset, noAssert) { value = +value; offset = offset >>> 0; if (!noAssert) checkInt(this, value, offset, 1, 255, 0); this[offset] = value & 255; return offset + 1; }; Buffer3.prototype.writeUint16LE = Buffer3.prototype.writeUInt16LE = function writeUInt16LE(value, offset, noAssert) { value = +value; offset = offset >>> 0; if (!noAssert) checkInt(this, value, offset, 2, 65535, 0); this[offset] = value & 255; this[offset + 1] = value >>> 8; return offset + 2; }; Buffer3.prototype.writeUint16BE = Buffer3.prototype.writeUInt16BE = function writeUInt16BE(value, offset, noAssert) { value = +value; offset = offset >>> 0; if (!noAssert) checkInt(this, value, offset, 2, 65535, 0); this[offset] = value >>> 8; this[offset + 1] = value & 255; return offset + 2; }; Buffer3.prototype.writeUint32LE = Buffer3.prototype.writeUInt32LE = function writeUInt32LE(value, offset, noAssert) { value = +value; offset = offset >>> 0; if (!noAssert) checkInt(this, value, offset, 4, 4294967295, 0); this[offset + 3] = value >>> 24; this[offset + 2] = value >>> 16; this[offset + 1] = value >>> 8; this[offset] = value & 255; return offset + 4; }; Buffer3.prototype.writeUint32BE = Buffer3.prototype.writeUInt32BE = function writeUInt32BE(value, offset, noAssert) { value = +value; offset = offset >>> 0; if (!noAssert) checkInt(this, value, offset, 4, 4294967295, 0); this[offset] = value >>> 24; this[offset + 1] = value >>> 16; this[offset + 2] = value >>> 8; this[offset + 3] = value & 255; return offset + 4; }; function wrtBigUInt64LE(buf, value, offset, min, max) { checkIntBI(value, min, max, buf, offset, 7); let lo = Number(value & BigInt(4294967295)); buf[offset++] = lo; lo = lo >> 8; buf[offset++] = lo; lo = lo >> 8; buf[offset++] = lo; lo = lo >> 8; buf[offset++] = lo; let hi = Number(value >> BigInt(32) & BigInt(4294967295)); buf[offset++] = hi; hi = hi >> 8; buf[offset++] = hi; hi = hi >> 8; buf[offset++] = hi; hi = hi >> 8; buf[offset++] = hi; return offset; } function wrtBigUInt64BE(buf, value, offset, min, max) { checkIntBI(value, min, max, buf, offset, 7); let lo = Number(value & BigInt(4294967295)); buf[offset + 7] = lo; lo = lo >> 8; buf[offset + 6] = lo; lo = lo >> 8; buf[offset + 5] = lo; lo = lo >> 8; buf[offset + 4] = lo; let hi = Number(value >> BigInt(32) & BigInt(4294967295)); buf[offset + 3] = hi; hi = hi >> 8; buf[offset + 2] = hi; hi = hi >> 8; buf[offset + 1] = hi; hi = hi >> 8; buf[offset] = hi; return offset + 8; } Buffer3.prototype.writeBigUInt64LE = defineBigIntMethod(function writeBigUInt64LE(value, offset = 0) { return wrtBigUInt64LE(this, value, offset, BigInt(0), BigInt("0xffffffffffffffff")); }); Buffer3.prototype.writeBigUInt64BE = defineBigIntMethod(function writeBigUInt64BE(value, offset = 0) { return wrtBigUInt64BE(this, value, offset, BigInt(0), BigInt("0xffffffffffffffff")); }); Buffer3.prototype.writeIntLE = function writeIntLE(value, offset, byteLength2, noAssert) { value = +value; offset = offset >>> 0; if (!noAssert) { const limit = Math.pow(2, 8 * byteLength2 - 1); checkInt(this, value, offset, byteLength2, limit - 1, -limit); } let i = 0; let mul = 1; let sub = 0; this[offset] = value & 255; while (++i < byteLength2 && (mul *= 256)) { if (value < 0 && sub === 0 && this[offset + i - 1] !== 0) { sub = 1; } this[offset + i] = (value / mul >> 0) - sub & 255; } return offset + byteLength2; }; Buffer3.prototype.writeIntBE = function writeIntBE(value, offset, byteLength2, noAssert) { value = +value; offset = offset >>> 0; if (!noAssert) { const limit = Math.pow(2, 8 * byteLength2 - 1); checkInt(this, value, offset, byteLength2, limit - 1, -limit); } let i = byteLength2 - 1; let mul = 1; let sub = 0; this[offset + i] = value & 255; while (--i >= 0 && (mul *= 256)) { if (value < 0 && sub === 0 && this[offset + i + 1] !== 0) { sub = 1; } this[offset + i] = (value / mul >> 0) - sub & 255; } return offset + byteLength2; }; Buffer3.prototype.writeInt8 = function writeInt8(value, offset, noAssert) { value = +value; offset = offset >>> 0; if (!noAssert) checkInt(this, value, offset, 1, 127, -128); if (value < 0) value = 255 + value + 1; this[offset] = value & 255; return offset + 1; }; Buffer3.prototype.writeInt16LE = function writeInt16LE(value, offset, noAssert) { value = +value; offset = offset >>> 0; if (!noAssert) checkInt(this, value, offset, 2, 32767, -32768); this[offset] = value & 255; this[offset + 1] = value >>> 8; return offset + 2; }; Buffer3.prototype.writeInt16BE = function writeInt16BE(value, offset, noAssert) { value = +value; offset = offset >>> 0; if (!noAssert) checkInt(this, value, offset, 2, 32767, -32768); this[offset] = value >>> 8; this[offset + 1] = value & 255; return offset + 2; }; Buffer3.prototype.writeInt32LE = function writeInt32LE(value, offset, noAssert) { value = +value; offset = offset >>> 0; if (!noAssert) checkInt(this, value, offset, 4, 2147483647, -2147483648); this[offset] = value & 255; this[offset + 1] = value >>> 8; this[offset + 2] = value >>> 16; this[offset + 3] = value >>> 24; return offset + 4; }; Buffer3.prototype.writeInt32BE = function writeInt32BE(value, offset, noAssert) { value = +value; offset = offset >>> 0; if (!noAssert) checkInt(this, value, offset, 4, 2147483647, -2147483648); if (value < 0) value = 4294967295 + value + 1; this[offset] = value >>> 24; this[offset + 1] = value >>> 16; this[offset + 2] = value >>> 8; this[offset + 3] = value & 255; return offset + 4; }; Buffer3.prototype.writeBigInt64LE = defineBigIntMethod(function writeBigInt64LE(value, offset = 0) { return wrtBigUInt64LE(this, value, offset, -BigInt("0x8000000000000000"), BigInt("0x7fffffffffffffff")); }); Buffer3.prototype.writeBigInt64BE = defineBigIntMethod(function writeBigInt64BE(value, offset = 0) { return wrtBigUInt64BE(this, value, offset, -BigInt("0x8000000000000000"), BigInt("0x7fffffffffffffff")); }); function checkIEEE754(buf, value, offset, ext, max, min) { if (offset + ext > buf.length) throw new RangeError("Index out of range"); if (offset < 0) throw new RangeError("Index out of range"); } function writeFloat(buf, value, offset, littleEndian, noAssert) { value = +value; offset = offset >>> 0; if (!noAssert) { checkIEEE754(buf, value, offset, 4, 34028234663852886e22, -34028234663852886e22); } ieee754.write(buf, value, offset, littleEndian, 23, 4); return offset + 4; } Buffer3.prototype.writeFloatLE = function writeFloatLE(value, offset, noAssert) { return writeFloat(this, value, offset, true, noAssert); }; Buffer3.prototype.writeFloatBE = function writeFloatBE(value, offset, noAssert) { return writeFloat(this, value, offset, false, noAssert); }; function writeDouble(buf, value, offset, littleEndian, noAssert) { value = +value; offset = offset >>> 0; if (!noAssert) { checkIEEE754(buf, value, offset, 8, 17976931348623157e292, -17976931348623157e292); } ieee754.write(buf, value, offset, littleEndian, 52, 8); return offset + 8; } Buffer3.prototype.writeDoubleLE = function writeDoubleLE(value, offset, noAssert) { return writeDouble(this, value, offset, true, noAssert); }; Buffer3.prototype.writeDoubleBE = function writeDoubleBE(value, offset, noAssert) { return writeDouble(this, value, offset, false, noAssert); }; Buffer3.prototype.copy = function copy(target, targetStart, start, end) { if (!Buffer3.isBuffer(target)) throw new TypeError("argument should be a Buffer"); if (!start) start = 0; if (!end && end !== 0) end = this.length; if (targetStart >= target.length) targetStart = target.length; if (!targetStart) targetStart = 0; if (end > 0 && end < start) end = start; if (end === start) return 0; if (target.length === 0 || this.length === 0) return 0; if (targetStart < 0) { throw new RangeError("targetStart out of bounds"); } if (start < 0 || start >= this.length) throw new RangeError("Index out of range"); if (end < 0) throw new RangeError("sourceEnd out of bounds"); if (end > this.length) end = this.length; if (target.length - targetStart < end - start) { end = target.length - targetStart + start; } const len = end - start; if (this === target && typeof Uint8Array.prototype.copyWithin === "function") { this.copyWithin(targetStart, start, end); } else { Uint8Array.prototype.set.call( target, this.subarray(start, end), targetStart ); } return len; }; Buffer3.prototype.fill = function fill(val, start, end, encoding) { if (typeof val === "string") { if (typeof start === "string") { encoding = start; start = 0; end = this.length; } else if (typeof end === "string") { encoding = end; end = this.length; } if (encoding !== void 0 && typeof encoding !== "string") { throw new TypeError("encoding must be a string"); } if (typeof encoding === "string" && !Buffer3.isEncoding(encoding)) { throw new TypeError("Unknown encoding: " + encoding); } if (val.length === 1) { const code = val.charCodeAt(0); if (encoding === "utf8" && code < 128 || encoding === "latin1") { val = code; } } } else if (typeof val === "number") { val = val & 255; } else if (typeof val === "boolean") { val = Number(val); } if (start < 0 || this.length < start || this.length < end) { throw new RangeError("Out of range index"); } if (end <= start) { return this; } start = start >>> 0; end = end === void 0 ? this.length : end >>> 0; if (!val) val = 0; let i; if (typeof val === "number") { for (i = start; i < end; ++i) { this[i] = val; } } else { const bytes = Buffer3.isBuffer(val) ? val : Buffer3.from(val, encoding); const len = bytes.length; if (len === 0) { throw new TypeError('The value "' + val + '" is invalid for argument "value"'); } for (i = 0; i < end - start; ++i) { this[i + start] = bytes[i % len]; } } return this; }; var errors = {}; function E(sym, getMessage, Base) { errors[sym] = class NodeError extends Base { constructor() { super(); Object.defineProperty(this, "message", { value: getMessage.apply(this, arguments), writable: true, configurable: true }); this.name = `${this.name} [${sym}]`; this.stack; delete this.name; } get code() { return sym; } set code(value) { Object.defineProperty(this, "code", { configurable: true, enumerable: true, value, writable: true }); } toString() { return `${this.name} [${sym}]: ${this.message}`; } }; } E( "ERR_BUFFER_OUT_OF_BOUNDS", function(name) { if (name) { return `${name} is outside of buffer bounds`; } return "Attempt to access memory outside buffer bounds"; }, RangeError ); E( "ERR_INVALID_ARG_TYPE", function(name, actual) { return `The "${name}" argument must be of type number. Received type ${typeof actual}`; }, TypeError ); E( "ERR_OUT_OF_RANGE", function(str, range, input) { let msg = `The value of "${str}" is out of range.`; let received = input; if (Number.isInteger(input) && Math.abs(input) > 2 ** 32) { received = addNumericalSeparator(String(input)); } else if (typeof input === "bigint") { received = String(input); if (input > BigInt(2) ** BigInt(32) || input < -(BigInt(2) ** BigInt(32))) { received = addNumericalSeparator(received); } received += "n"; } msg += ` It must be ${range}. Received ${received}`; return msg; }, RangeError ); function addNumericalSeparator(val) { let res = ""; let i = val.length; const start = val[0] === "-" ? 1 : 0; for (; i >= start + 4; i -= 3) { res = `_${val.slice(i - 3, i)}${res}`; } return `${val.slice(0, i)}${res}`; } function checkBounds(buf, offset, byteLength2) { validateNumber(offset, "offset"); if (buf[offset] === void 0 || buf[offset + byteLength2] === void 0) { boundsError(offset, buf.length - (byteLength2 + 1)); } } function checkIntBI(value, min, max, buf, offset, byteLength2) { if (value > max || value < min) { const n = typeof min === "bigint" ? "n" : ""; let range; if (byteLength2 > 3) { if (min === 0 || min === BigInt(0)) { range = `>= 0${n} and < 2${n} ** ${(byteLength2 + 1) * 8}${n}`; } else { range = `>= -(2${n} ** ${(byteLength2 + 1) * 8 - 1}${n}) and < 2 ** ${(byteLength2 + 1) * 8 - 1}${n}`; } } else { range = `>= ${min}${n} and <= ${max}${n}`; } throw new errors.ERR_OUT_OF_RANGE("value", range, value); } checkBounds(buf, offset, byteLength2); } function validateNumber(value, name) { if (typeof value !== "number") { throw new errors.ERR_INVALID_ARG_TYPE(name, "number", value); } } function boundsError(value, length, type) { if (Math.floor(value) !== value) { validateNumber(value, type); throw new errors.ERR_OUT_OF_RANGE(type || "offset", "an integer", value); } if (length < 0) { throw new errors.ERR_BUFFER_OUT_OF_BOUNDS(); } throw new errors.ERR_OUT_OF_RANGE( type || "offset", `>= ${type ? 1 : 0} and <= ${length}`, value ); } var INVALID_BASE64_RE = /[^+/0-9A-Za-z-_]/g; function base64clean(str) { str = str.split("=")[0]; str = str.trim().replace(INVALID_BASE64_RE, ""); if (str.length < 2) return ""; while (str.length % 4 !== 0) { str = str + "="; } return str; } function utf8ToBytes(string, units) { units = units || Infinity; let codePoint; const length = string.length; let leadSurrogate = null; const bytes = []; for (let i = 0; i < length; ++i) { codePoint = string.charCodeAt(i); if (codePoint > 55295 && codePoint < 57344) { if (!leadSurrogate) { if (codePoint > 56319) { if ((units -= 3) > -1) bytes.push(239, 191, 189); continue; } else if (i + 1 === length) { if ((units -= 3) > -1) bytes.push(239, 191, 189); continue; } leadSurrogate = codePoint; continue; } if (codePoint < 56320) { if ((units -= 3) > -1) bytes.push(239, 191, 189); leadSurrogate = codePoint; continue; } codePoint = (leadSurrogate - 55296 << 10 | codePoint - 56320) + 65536; } else if (leadSurrogate) { if ((units -= 3) > -1) bytes.push(239, 191, 189); } leadSurrogate = null; if (codePoint < 128) { if ((units -= 1) < 0) break; bytes.push(codePoint); } else if (codePoint < 2048) { if ((units -= 2) < 0) break; bytes.push( codePoint >> 6 | 192, codePoint & 63 | 128 ); } else if (codePoint < 65536) { if ((units -= 3) < 0) break; bytes.push( codePoint >> 12 | 224, codePoint >> 6 & 63 | 128, codePoint & 63 | 128 ); } else if (codePoint < 1114112) { if ((units -= 4) < 0) break; bytes.push( codePoint >> 18 | 240, codePoint >> 12 & 63 | 128, codePoint >> 6 & 63 | 128, codePoint & 63 | 128 ); } else { throw new Error("Invalid code point"); } } return bytes; } function asciiToBytes(str) { const byteArray = []; for (let i = 0; i < str.length; ++i) { byteArray.push(str.charCodeAt(i) & 255); } return byteArray; } function utf16leToBytes(str, units) { let c, hi, lo; const byteArray = []; for (let i = 0; i < str.length; ++i) { if ((units -= 2) < 0) break; c = str.charCodeAt(i); hi = c >> 8; lo = c % 256; byteArray.push(lo); byteArray.push(hi); } return byteArray; } function base64ToBytes(str) { return base64.toByteArray(base64clean(str)); } function blitBuffer(src, dst, offset, length) { let i; for (i = 0; i < length; ++i) { if (i + offset >= dst.length || i >= src.length) break; dst[i + offset] = src[i]; } return i; } function isInstance(obj, type) { return obj instanceof type || obj != null && obj.constructor != null && obj.constructor.name != null && obj.constructor.name === type.name; } function numberIsNaN(obj) { return obj !== obj; } var hexSliceLookupTable = function() { const alphabet = "0123456789abcdef"; const table = new Array(256); for (let i = 0; i < 16; ++i) { const i16 = i * 16; for (let j = 0; j < 16; ++j) { table[i16 + j] = alphabet[i] + alphabet[j]; } } return table; }(); function defineBigIntMethod(fn) { return typeof BigInt === "undefined" ? BufferBigIntNotDefined : fn; } function BufferBigIntNotDefined() { throw new Error("BigInt not supported"); } } }); // browser/process-shim.mjs var import_buffer, process, global; var init_process_shim = __esm({ "browser/process-shim.mjs"() { import_buffer = __toESM(require_buffer(), 1); process = { env: {}, nextTick: (fn, ...argv) => { globalThis.setTimeout(fn, 0, ...argv); } }; global = globalThis; } }); // node_modules/readable-stream/lib/ours/primordials.js var require_primordials = __commonJS({ "node_modules/readable-stream/lib/ours/primordials.js"(exports, module) { "use strict"; init_process_shim(); module.exports = { ArrayIsArray(self2) { return Array.isArray(self2); }, ArrayPrototypeIncludes(self2, el) { return self2.includes(el); }, ArrayPrototypeIndexOf(self2, el) { return self2.indexOf(el); }, ArrayPrototypeJoin(self2, sep) { return self2.join(sep); }, ArrayPrototypeMap(self2, fn) { return self2.map(fn); }, ArrayPrototypePop(self2, el) { return self2.pop(el); }, ArrayPrototypePush(self2, el) { return self2.push(el); }, ArrayPrototypeSlice(self2, start, end) { return self2.slice(start, end); }, Error, FunctionPrototypeCall(fn, thisArgs, ...args) { return fn.call(thisArgs, ...args); }, FunctionPrototypeSymbolHasInstance(self2, instance) { return Function.prototype[Symbol.hasInstance].call(self2, instance); }, MathFloor: Math.floor, Number, NumberIsInteger: Number.isInteger, NumberIsNaN: Number.isNaN, NumberMAX_SAFE_INTEGER: Number.MAX_SAFE_INTEGER, NumberMIN_SAFE_INTEGER: Number.MIN_SAFE_INTEGER, NumberParseInt: Number.parseInt, ObjectDefineProperties(self2, props) { return Object.defineProperties(self2, props); }, ObjectDefineProperty(self2, name, prop) { return Object.defineProperty(self2, name, prop); }, ObjectGetOwnPropertyDescriptor(self2, name) { return Object.getOwnPropertyDescriptor(self2, name); }, ObjectKeys(obj) { return Object.keys(obj); }, ObjectSetPrototypeOf(target, proto) { return Object.setPrototypeOf(target, proto); }, Promise, PromisePrototypeCatch(self2, fn) { return self2.catch(fn); }, PromisePrototypeThen(self2, thenFn, catchFn) { return self2.then(thenFn, catchFn); }, PromiseReject(err) { return Promise.reject(err); }, PromiseResolve(val) { return Promise.resolve(val); }, ReflectApply: Reflect.apply, RegExpPrototypeTest(self2, value) { return self2.test(value); }, SafeSet: Set, String, StringPrototypeSlice(self2, start, end) { return self2.slice(start, end); }, StringPrototypeToLowerCase(self2) { return self2.toLowerCase(); }, StringPrototypeToUpperCase(self2) { return self2.toUpperCase(); }, StringPrototypeTrim(self2) { return self2.trim(); }, Symbol, SymbolFor: Symbol.for, SymbolAsyncIterator: Symbol.asyncIterator, SymbolHasInstance: Symbol.hasInstance, SymbolIterator: Symbol.iterator, SymbolDispose: Symbol.dispose || Symbol("Symbol.dispose"), SymbolAsyncDispose: Symbol.asyncDispose || Symbol("Symbol.asyncDispose"), TypedArrayPrototypeSet(self2, buf, len) { return self2.set(buf, len); }, Boolean, Uint8Array }; } }); // browser/noop.mjs var noop_exports = {}; __export(noop_exports, { Agent: () => Agent, default: () => noop_default }); var Agent, noop_default; var init_noop = __esm({ "browser/noop.mjs"() { init_process_shim(); Agent = null; noop_default = Agent; } }); // node_modules/events/events.js var require_events = __commonJS({ "node_modules/events/events.js"(exports, module) { "use strict"; init_process_shim(); var R = typeof Reflect === "object" ? Reflect : null; var ReflectApply = R && typeof R.apply === "function" ? R.apply : function ReflectApply2(target, receiver, args) { return Function.prototype.apply.call(target, receiver, args); }; var ReflectOwnKeys; if (R && typeof R.ownKeys === "function") { ReflectOwnKeys = R.ownKeys; } else if (Object.getOwnPropertySymbols) { ReflectOwnKeys = function ReflectOwnKeys2(target) { return Object.getOwnPropertyNames(target).concat(Object.getOwnPropertySymbols(target)); }; } else { ReflectOwnKeys = function ReflectOwnKeys2(target) { return Object.getOwnPropertyNames(target); }; } function ProcessEmitWarning(warning) { if (console && console.warn) console.warn(warning); } var NumberIsNaN = Number.isNaN || function NumberIsNaN2(value) { return value !== value; }; function EventEmitter4() { EventEmitter4.init.call(this); } module.exports = EventEmitter4; module.exports.once = once; EventEmitter4.EventEmitter = EventEmitter4; EventEmitter4.prototype._events = void 0; EventEmitter4.prototype._eventsCount = 0; EventEmitter4.prototype._maxListeners = void 0; var defaultMaxListeners = 10; function checkListener(listener) { if (typeof listener !== "function") { throw new TypeError('The "listener" argument must be of type Function. Received type ' + typeof listener); } } Object.defineProperty(EventEmitter4, "defaultMaxListeners", { enumerable: true, get: function() { return defaultMaxListeners; }, set: function(arg) { if (typeof arg !== "number" || arg < 0 || NumberIsNaN(arg)) { throw new RangeError('The value of "defaultMaxListeners" is out of range. It must be a non-negative number. Received ' + arg + "."); } defaultMaxListeners = arg; } }); EventEmitter4.init = function() { if (this._events === void 0 || this._events === Object.getPrototypeOf(this)._events) { this._events = /* @__PURE__ */ Object.create(null); this._eventsCount = 0; } this._maxListeners = this._maxListeners || void 0; }; EventEmitter4.prototype.setMaxListeners = function setMaxListeners(n) { if (typeof n !== "number" || n < 0 || NumberIsNaN(n)) { throw new RangeError('The value of "n" is out of range. It must be a non-negative number. Received ' + n + "."); } this._maxListeners = n; return this; }; function _getMaxListeners(that) { if (that._maxListeners === void 0) return EventEmitter4.defaultMaxListeners; return that._maxListeners; } EventEmitter4.prototype.getMaxListeners = function getMaxListeners() { return _getMaxListeners(this); }; EventEmitter4.prototype.emit = function emit(type) { var args = []; for (var i = 1; i < arguments.length; i++) args.push(arguments[i]); var doError = type === "error"; var events = this._events; if (events !== void 0) doError = doError && events.error === void 0; else if (!doError) return false; if (doError) { var er; if (args.length > 0) er = args[0]; if (er instanceof Error) { throw er; } var err = new Error("Unhandled error." + (er ? " (" + er.message + ")" : "")); err.context = er; throw err; } var handler = events[type]; if (handler === void 0) return false; if (typeof handler === "function") { ReflectApply(handler, this, args); } else { var len = handler.length; var listeners = arrayClone(handler, len); for (var i = 0; i < len; ++i) ReflectApply(listeners[i], this, args); } return true; }; function _addListener(target, type, listener, prepend) { var m; var events; var existing; checkListener(listener); events = target._events; if (events === void 0) { events = target._events = /* @__PURE__ */ Object.create(null); target._eventsCount = 0; } else { if (events.newListener !== void 0) { target.emit( "newListener", type, listener.listener ? listener.listener : listener ); events = target._events; } existing = events[type]; } if (existing === void 0) { existing = events[type] = listener; ++target._eventsCount; } else { if (typeof existing === "function") { existing = events[type] = prepend ? [listener, existing] : [existing, listener]; } else if (prepend) { existing.unshift(listener); } else { existing.push(listener); } m = _getMaxListeners(target); if (m > 0 && existing.length > m && !existing.warned) { existing.warned = true; var w = new Error("Possible EventEmitter memory leak detected. " + existing.length + " " + String(type) + " listeners added. Use emitter.setMaxListeners() to increase limit"); w.name = "MaxListenersExceededWarning"; w.emitter = target; w.type = type; w.count = existing.length; ProcessEmitWarning(w); } } return target; } EventEmitter4.prototype.addListener = function addListener(type, listener) { return _addListener(this, type, listener, false); }; EventEmitter4.prototype.on = EventEmitter4.prototype.addListener; EventEmitter4.prototype.prependListener = function prependListener(type, listener) { return _addListener(this, type, listener, true); }; function onceWrapper() { if (!this.fired) { this.target.removeListener(this.type, this.wrapFn); this.fired = true; if (arguments.length === 0) return this.listener.call(this.target); return this.listener.apply(this.target, arguments); } } function _onceWrap(target, type, listener) { var state = { fired: false, wrapFn: void 0, target, type, listener }; var wrapped = onceWrapper.bind(state); wrapped.listener = listener; state.wrapFn = wrapped; return wrapped; } EventEmitter4.prototype.once = function once2(type, listener) { checkListener(listener); this.on(type, _onceWrap(this, type, listener)); return this; }; EventEmitter4.prototype.prependOnceListener = function prependOnceListener(type, listener) { checkListener(listener); this.prependListener(type, _onceWrap(this, type, listener)); return this; }; EventEmitter4.prototype.removeListener = function removeListener(type, listener) { var list, events, position, i, originalListener; checkListener(listener); events = this._events; if (events === void 0) return this; list = events[type]; if (list === void 0) return this; if (list === listener || list.listener === listener) { if (--this._eventsCount === 0) this._events = /* @__PURE__ */ Object.create(null); else { delete events[type]; if (events.removeListener) this.emit("removeListener", type, list.listener || listener); } } else if (typeof list !== "function") { position = -1; for (i = list.length - 1; i >= 0; i--) { if (list[i] === listener || list[i].listener === listener) { originalListener = list[i].listener; position = i; break; } } if (position < 0) return this; if (position === 0) list.shift(); else { spliceOne(list, position); } if (list.length === 1) events[type] = list[0]; if (events.removeListener !== void 0) this.emit("removeListener", type, originalListener || listener); } return this; }; EventEmitter4.prototype.off = EventEmitter4.prototype.removeListener; EventEmitter4.prototype.removeAllListeners = function removeAllListeners(type) { var listeners, events, i; events = this._events; if (events === void 0) return this; if (events.removeListener === void 0) { if (arguments.length === 0) { this._events = /* @__PURE__ */ Object.create(null); this._eventsCount = 0; } else if (events[type] !== void 0) { if (--this._eventsCount === 0) this._events = /* @__PURE__ */ Object.create(null); else delete events[type]; } return this; } if (arguments.length === 0) { var keys = Object.keys(events); var key; for (i = 0; i < keys.length; ++i) { key = keys[i]; if (key === "removeListener") continue; this.removeAllListeners(key); } this.removeAllListeners("removeListener"); this._events = /* @__PURE__ */ Object.create(null); this._eventsCount = 0; return this; } listeners = events[type]; if (typeof listeners === "function") { this.removeListener(type, listeners); } else if (listeners !== void 0) { for (i = listeners.length - 1; i >= 0; i--) { this.removeListener(type, listeners[i]); } } return this; }; function _listeners(target, type, unwrap) { var events = target._events; if (events === void 0) return []; var evlistener = events[type]; if (evlistener === void 0) return []; if (typeof evlistener === "function") return unwrap ? [evlistener.listener || evlistener] : [evlistener]; return unwrap ? unwrapListeners(evlistener) : arrayClone(evlistener, evlistener.length); } EventEmitter4.prototype.listeners = function listeners(type) { return _listeners(this, type, true); }; EventEmitter4.prototype.rawListeners = function rawListeners(type) { return _listeners(this, type, false); }; EventEmitter4.listenerCount = function(emitter, type) { if (typeof emitter.listenerCount === "function") { return emitter.listenerCount(type); } else { return listenerCount.call(emitter, type); } }; EventEmitter4.prototype.listenerCount = listenerCount; function listenerCount(type) { var events = this._events; if (events !== void 0) { var evlistener = events[type]; if (typeof evlistener === "function") { return 1; } else if (evlistener !== void 0) { return evlistener.length; } } return 0; } EventEmitter4.prototype.eventNames = function eventNames() { return this._eventsCount > 0 ? ReflectOwnKeys(this._events) : []; }; function arrayClone(arr, n) { var copy = new Array(n); for (var i = 0; i < n; ++i) copy[i] = arr[i]; return copy; } function spliceOne(list, index) { for (; index + 1 < list.length; index++) list[index] = list[index + 1]; list.pop(); } function unwrapListeners(arr) { var ret = new Array(arr.length); for (var i = 0; i < ret.length; ++i) { ret[i] = arr[i].listener || arr[i]; } return ret; } function once(emitter, name) { return new Promise(function(resolve, reject) { function errorListener(err) { emitter.removeListener(name, resolver); reject(err); } function resolver() { if (typeof emitter.removeListener === "function") { emitter.removeListener("error", errorListener); } resolve([].slice.call(arguments)); } ; eventTargetAgnosticAddListener(emitter, name, resolver, { once: true }); if (name !== "error") { addErrorHandlerIfEventEmitter(emitter, errorListener, { once: true }); } }); } function addErrorHandlerIfEventEmitter(emitter, handler, flags) { if (typeof emitter.on === "function") { eventTargetAgnosticAddListener(emitter, "error", handler, flags); } } function eventTargetAgnosticAddListener(emitter, name, listener, flags) { if (typeof emitter.on === "function") { if (flags.once) { emitter.once(name, listener); } else { emitter.on(name, listener); } } else if (typeof emitter.addEventListener === "function") { emitter.addEventListener(name, function wrapListener(arg) { if (flags.once) { emitter.removeEventListener(name, wrapListener); } listener(arg); }); } else { throw new TypeError('The "emitter" argument must be of type EventEmitter. Received type ' + typeof emitter); } } } }); // node_modules/readable-stream/lib/ours/util.js var require_util = __commonJS({ "node_modules/readable-stream/lib/ours/util.js"(exports, module) { "use strict"; init_process_shim(); var bufferModule = require_buffer(); var { kResistStopPropagation, SymbolDispose } = require_primordials(); var AbortSignal = globalThis.AbortSignal || (init_noop(), __toCommonJS(noop_exports)).AbortSignal; var AbortController = globalThis.AbortController || (init_noop(), __toCommonJS(noop_exports)).AbortController; var AsyncFunction = Object.getPrototypeOf(async function() { }).constructor; var Blob = globalThis.Blob || bufferModule.Blob; var isBlob = typeof Blob !== "undefined" ? function isBlob2(b) { return b instanceof Blob; } : function isBlob2(b) { return false; }; var validateAbortSignal = (signal, name) => { if (signal !== void 0 && (signal === null || typeof signal !== "object" || !("aborted" in signal))) { throw new ERR_INVALID_ARG_TYPE(name, "AbortSignal", signal); } }; var validateFunction = (value, name) => { if (typeof value !== "function") throw new ERR_INVALID_ARG_TYPE(name, "Function", value); }; var AggregateError2 = class extends Error { constructor(errors) { if (!Array.isArray(errors)) { throw new TypeError(`Expected input to be an Array, got ${typeof errors}`); } let message = ""; for (let i = 0; i < errors.length; i++) { message += ` ${errors[i].stack} `; } super(message); this.name = "AggregateError"; this.errors = errors; } }; module.exports = { AggregateError: AggregateError2, kEmptyObject: Object.freeze({}), once(callback) { let called = false; return function(...args) { if (called) { return; } called = true; callback.apply(this, args); }; }, createDeferredPromise: function() { let resolve; let reject; const promise = new Promise((res, rej) => { resolve = res; reject = rej; }); return { promise, resolve, reject }; }, promisify(fn) { return new Promise((resolve, reject) => { fn((err, ...args) => { if (err) { return reject(err); } return resolve(...args); }); }); }, debuglog() { return function() { }; }, format(format, ...args) { return format.replace(/%([sdifj])/g, function(...[_unused, type]) { const replacement = args.shift(); if (type === "f") { return replacement.toFixed(6); } else if (type === "j") { return JSON.stringify(replacement); } else if (type === "s" && typeof replacement === "object") { const ctor = replacement.constructor !== Object ? replacement.constructor.name : ""; return `${ctor} {}`.trim(); } else { return replacement.toString(); } }); }, inspect(value) { switch (typeof value) { case "string": if (value.includes("'")) { if (!value.includes('"')) { return `"${value}"`; } else if (!value.includes("`") && !value.includes("${")) { return `\`${value}\``; } } return `'${value}'`; case "number": if (isNaN(value)) { return "NaN"; } else if (Object.is(value, -0)) { return String(value); } return value; case "bigint": return `${String(value)}n`; case "boolean": case "undefined": return String(value); case "object": return "{}"; } }, types: { isAsyncFunction(fn) { return fn instanceof AsyncFunction; }, isArrayBufferView(arr) { return ArrayBuffer.isView(arr); } }, isBlob, deprecate(fn, message) { return fn; }, addAbortListener: require_events().addAbortListener || function addAbortListener(signal, listener) { if (signal === void 0) { throw new ERR_INVALID_ARG_TYPE("signal", "AbortSignal", signal); } validateAbortSignal(signal, "signal"); validateFunction(listener, "listener"); let removeEventListener; if (signal.aborted) { queueMicrotask(() => listener()); } else { signal.addEventListener("abort", listener, { __proto__: null, once: true, [kResistStopPropagation]: true }); removeEventListener = () => { signal.removeEventListener("abort", listener); }; } return { __proto__: null, [SymbolDispose]() { var _removeEventListener; (_removeEventListener = removeEventListener) === null || _removeEventListener === void 0 ? void 0 : _removeEventListener(); } }; }, AbortSignalAny: AbortSignal.any || function AbortSignalAny(signals) { if (signals.length === 1) { return signals[0]; } const ac = new AbortController(); const abort = () => ac.abort(); signals.forEach((signal) => { validateAbortSignal(signal, "signals"); signal.addEventListener("abort", abort, { once: true }); }); ac.signal.addEventListener( "abort", () => { signals.forEach((signal) => signal.removeEventListener("abort", abort)); }, { once: true } ); return ac.signal; } }; module.exports.promisify.custom = Symbol.for("nodejs.util.promisify.custom"); } }); // node_modules/readable-stream/lib/ours/errors.js var require_errors = __commonJS({ "node_modules/readable-stream/lib/ours/errors.js"(exports, module) { "use strict"; init_process_shim(); var { format, inspect, AggregateError: CustomAggregateError } = require_util(); var AggregateError2 = globalThis.AggregateError || CustomAggregateError; var kIsNodeError = Symbol("kIsNodeError"); var kTypes = [ "string", "function", "number", "object", // Accept 'Function' and 'Object' as alternative to the lower cased version. "Function", "Object", "boolean", "bigint", "symbol" ]; var classRegExp = /^([A-Z][a-z0-9]*)+$/; var nodeInternalPrefix = "__node_internal_"; var codes = {}; function assert(value, message) { if (!value) { throw new codes.ERR_INTERNAL_ASSERTION(message); } } function addNumericalSeparator(val) { let res = ""; let i = val.length; const start = val[0] === "-" ? 1 : 0; for (; i >= start + 4; i -= 3) { res = `_${val.slice(i - 3, i)}${res}`; } return `${val.slice(0, i)}${res}`; } function getMessage(key, msg, args) { if (typeof msg === "function") { assert( msg.length <= args.length, // Default options do not count. `Code: ${key}; The provided arguments length (${args.length}) does not match the required ones (${msg.length}).` ); return msg(...args); } const expectedLength = (msg.match(/%[dfijoOs]/g) || []).length; assert( expectedLength === args.length, `Code: ${key}; The provided arguments length (${args.length}) does not match the required ones (${expectedLength}).` ); if (args.length === 0) { return msg; } return format(msg, ...args); } function E(code, message, Base) { if (!Base) { Base = Error; } class NodeError extends Base { constructor(...args) { super(getMessage(code, message, args)); } toString() { return `${this.name} [${code}]: ${this.message}`; } } Object.defineProperties(NodeError.prototype, { name: { value: Base.name, writable: true, enumerable: false, configurable: true }, toString: { value() { return `${this.name} [${code}]: ${this.message}`; }, writable: true, enumerable: false, configurable: true } }); NodeError.prototype.code = code; NodeError.prototype[kIsNodeError] = true; codes[code] = NodeError; } function hideStackFrames(fn) { const hidden = nodeInternalPrefix + fn.name; Object.defineProperty(fn, "name", { value: hidden }); return fn; } function aggregateTwoErrors(innerError, outerError) { if (innerError && outerError && innerError !== outerError) { if (Array.isArray(outerError.errors)) { outerError.errors.push(innerError); return outerError; } const err = new AggregateError2([outerError, innerError], outerError.message); err.code = outerError.code; return err; } return innerError || outerError; } var AbortError = class extends Error { constructor(message = "The operation was aborted", options = void 0) { if (options !== void 0 && typeof options !== "object") { throw new codes.ERR_INVALID_ARG_TYPE("options", "Object", options); } super(message, options); this.code = "ABORT_ERR"; this.name = "AbortError"; } }; E("ERR_ASSERTION", "%s", Error); E( "ERR_INVALID_ARG_TYPE", (name, expected, actual) => { assert(typeof name === "string", "'name' must be a string"); if (!Array.isArray(expected)) { expected = [expected]; } let msg = "The "; if (name.endsWith(" argument")) { msg += `${name} `; } else { msg += `"${name}" ${name.includes(".") ? "property" : "argument"} `; } msg += "must be "; const types = []; const instances = []; const other = []; for (const value of expected) { assert(typeof value === "string", "All expected entries have to be of type string"); if (kTypes.includes(value)) { types.push(value.toLowerCase()); } else if (classRegExp.test(value)) { instances.push(value); } else { assert(value !== "object", 'The value "object" should be written as "Object"'); other.push(value); } } if (instances.length > 0) { const pos = types.indexOf("object"); if (pos !== -1) { types.splice(types, pos, 1); instances.push("Object"); } } if (types.length > 0) { switch (types.length) { case 1: msg += `of type ${types[0]}`; break; case 2: msg += `one of type ${types[0]} or ${types[1]}`; break; default: { const last = types.pop(); msg += `one of type ${types.join(", ")}, or ${last}`; } } if (instances.length > 0 || other.length > 0) { msg += " or "; } } if (instances.length > 0) { switch (instances.length) { case 1: msg += `an instance of ${instances[0]}`; break; case 2: msg += `an instance of ${instances[0]} or ${instances[1]}`; break; default: { const last = instances.pop(); msg += `an instance of ${instances.join(", ")}, or ${last}`; } } if (other.length > 0) { msg += " or "; } } switch (other.length) { case 0: break; case 1: if (other[0].toLowerCase() !== other[0]) { msg += "an "; } msg += `${other[0]}`; break; case 2: msg += `one of ${other[0]} or ${other[1]}`; break; default: { const last = other.pop(); msg += `one of ${other.join(", ")}, or ${last}`; } } if (actual == null) { msg += `. Received ${actual}`; } else if (typeof actual === "function" && actual.name) { msg += `. Received function ${actual.name}`; } else if (typeof actual === "object") { var _actual$constructor; if ((_actual$constructor = actual.constructor) !== null && _actual$constructor !== void 0 && _actual$constructor.name) { msg += `. Received an instance of ${actual.constructor.name}`; } else { const inspected = inspect(actual, { depth: -1 }); msg += `. Received ${inspected}`; } } else { let inspected = inspect(actual, { colors: false }); if (inspected.length > 25) { inspected = `${inspected.slice(0, 25)}...`; } msg += `. Received type ${typeof actual} (${inspected})`; } return msg; }, TypeError ); E( "ERR_INVALID_ARG_VALUE", (name, value, reason = "is invalid") => { let inspected = inspect(value); if (inspected.length > 128) { inspected = inspected.slice(0, 128) + "..."; } const type = name.includes(".") ? "property" : "argument"; return `The ${type} '${name}' ${reason}. Received ${inspected}`; }, TypeError ); E( "ERR_INVALID_RETURN_VALUE", (input, name, value) => { var _value$constructor; const type = value !== null && value !== void 0 && (_value$constructor = value.constructor) !== null && _value$constructor !== void 0 && _value$constructor.name ? `instance of ${value.constructor.name}` : `type ${typeof value}`; return `Expected ${input} to be returned from the "${name}" function but got ${type}.`; }, TypeError ); E( "ERR_MISSING_ARGS", (...args) => { assert(args.length > 0, "At least one arg needs to be specified"); let msg; const len = args.length; args = (Array.isArray(args) ? args : [args]).map((a) => `"${a}"`).join(" or "); switch (len) { case 1: msg += `The ${args[0]} argument`; break; case 2: msg += `The ${args[0]} and ${args[1]} arguments`; break; default: { const last = args.pop(); msg += `The ${args.join(", ")}, and ${last} arguments`; } break; } return `${msg} must be specified`; }, TypeError ); E( "ERR_OUT_OF_RANGE", (str, range, input) => { assert(range, 'Missing "range" argument'); let received; if (Number.isInteger(input) && Math.abs(input) > 2 ** 32) { received = addNumericalSeparator(String(input)); } else if (typeof input === "bigint") { received = String(input); if (input > 2n ** 32n || input < -(2n ** 32n)) { received = addNumericalSeparator(received); } received += "n"; } else { received = inspect(input); } return `The value of "${str}" is out of range. It must be ${range}. Received ${received}`; }, RangeError ); E("ERR_MULTIPLE_CALLBACK", "Callback called multiple times", Error); E("ERR_METHOD_NOT_IMPLEMENTED", "The %s method is not implemented", Error); E("ERR_STREAM_ALREADY_FINISHED", "Cannot call %s after a stream was finished", Error); E("ERR_STREAM_CANNOT_PIPE", "Cannot pipe, not readable", Error); E("ERR_STREAM_DESTROYED", "Cannot call %s after a stream was destroyed", Error); E("ERR_STREAM_NULL_VALUES", "May not write null values to stream", TypeError); E("ERR_STREAM_PREMATURE_CLOSE", "Premature close", Error); E("ERR_STREAM_PUSH_AFTER_EOF", "stream.push() after EOF", Error); E("ERR_STREAM_UNSHIFT_AFTER_END_EVENT", "stream.unshift() after end event", Error); E("ERR_STREAM_WRITE_AFTER_END", "write after end", Error); E("ERR_UNKNOWN_ENCODING", "Unknown encoding: %s", TypeError); module.exports = { AbortError, aggregateTwoErrors: hideStackFrames(aggregateTwoErrors), hideStackFrames, codes }; } }); // node_modules/readable-stream/lib/internal/validators.js var require_validators = __commonJS({ "node_modules/readable-stream/lib/internal/validators.js"(exports, module) { "use strict"; init_process_shim(); var { ArrayIsArray, ArrayPrototypeIncludes, ArrayPrototypeJoin, ArrayPrototypeMap, NumberIsInteger, NumberIsNaN, NumberMAX_SAFE_INTEGER, NumberMIN_SAFE_INTEGER, NumberParseInt, ObjectPrototypeHasOwnProperty, RegExpPrototypeExec, String: String2, StringPrototypeToUpperCase, StringPrototypeTrim } = require_primordials(); var { hideStackFrames, codes: { ERR_SOCKET_BAD_PORT, ERR_INVALID_ARG_TYPE: ERR_INVALID_ARG_TYPE2, ERR_INVALID_ARG_VALUE, ERR_OUT_OF_RANGE, ERR_UNKNOWN_SIGNAL } } = require_errors(); var { normalizeEncoding } = require_util(); var { isAsyncFunction, isArrayBufferView } = require_util().types; var signals = {}; function isInt32(value) { return value === (value | 0); } function isUint32(value) { return value === value >>> 0; } var octalReg = /^[0-7]+$/; var modeDesc = "must be a 32-bit unsigned integer or an octal string"; function parseFileMode(value, name, def) { if (typeof value === "undefined") { value = def; } if (typeof value === "string") { if (RegExpPrototypeExec(octalReg, value) === null) { throw new ERR_INVALID_ARG_VALUE(name, value, modeDesc); } value = NumberParseInt(value, 8); } validateUint32(value, name); return value; } var validateInteger = hideStackFrames((value, name, min = NumberMIN_SAFE_INTEGER, max = NumberMAX_SAFE_INTEGER) => { if (typeof value !== "number") throw new ERR_INVALID_ARG_TYPE2(name, "number", value); if (!NumberIsInteger(value)) throw new ERR_OUT_OF_RANGE(name, "an integer", value); if (value < min || value > max) throw new ERR_OUT_OF_RANGE(name, `>= ${min} && <= ${max}`, value); }); var validateInt32 = hideStackFrames((value, name, min = -2147483648, max = 2147483647) => { if (typeof value !== "number") { throw new ERR_INVALID_ARG_TYPE2(name, "number", value); } if (!NumberIsInteger(value)) { throw new ERR_OUT_OF_RANGE(name, "an integer", value); } if (value < min || value > max) { throw new ERR_OUT_OF_RANGE(name, `>= ${min} && <= ${max}`, value); } }); var validateUint32 = hideStackFrames((value, name, positive = false) => { if (typeof value !== "number") { throw new ERR_INVALID_ARG_TYPE2(name, "number", value); } if (!NumberIsInteger(value)) { throw new ERR_OUT_OF_RANGE(name, "an integer", value); } const min = positive ? 1 : 0; const max = 4294967295; if (value < min || value > max) { throw new ERR_OUT_OF_RANGE(name, `>= ${min} && <= ${max}`, value); } }); function validateString(value, name) { if (typeof value !== "string") throw new ERR_INVALID_ARG_TYPE2(name, "string", value); } function validateNumber(value, name, min = void 0, max) { if (typeof value !== "number") throw new ERR_INVALID_ARG_TYPE2(name, "number", value); if (min != null && value < min || max != null && value > max || (min != null || max != null) && NumberIsNaN(value)) { throw new ERR_OUT_OF_RANGE( name, `${min != null ? `>= ${min}` : ""}${min != null && max != null ? " && " : ""}${max != null ? `<= ${max}` : ""}`, value ); } } var validateOneOf = hideStackFrames((value, name, oneOf) => { if (!ArrayPrototypeIncludes(oneOf, value)) { const allowed = ArrayPrototypeJoin( ArrayPrototypeMap(oneOf, (v) => typeof v === "string" ? `'${v}'` : String2(v)), ", " ); const reason = "must be one of: " + allowed; throw new ERR_INVALID_ARG_VALUE(name, value, reason); } }); function validateBoolean(value, name) { if (typeof value !== "boolean") throw new ERR_INVALID_ARG_TYPE2(name, "boolean", value); } function getOwnPropertyValueOrDefault(options, key, defaultValue) { return options == null || !ObjectPrototypeHasOwnProperty(options, key) ? defaultValue : options[key]; } var validateObject = hideStackFrames((value, name, options = null) => { const allowArray = getOwnPropertyValueOrDefault(options, "allowArray", false); const allowFunction = getOwnPropertyValueOrDefault(options, "allowFunction", false); const nullable = getOwnPropertyValueOrDefault(options, "nullable", false); if (!nullable && value === null || !allowArray && ArrayIsArray(value) || typeof value !== "object" && (!allowFunction || typeof value !== "function")) { throw new ERR_INVALID_ARG_TYPE2(name, "Object", value); } }); var validateDictionary = hideStackFrames((value, name) => { if (value != null && typeof value !== "object" && typeof value !== "function") { throw new ERR_INVALID_ARG_TYPE2(name, "a dictionary", value); } }); var validateArray = hideStackFrames((value, name, minLength = 0) => { if (!ArrayIsArray(value)) { throw new ERR_INVALID_ARG_TYPE2(name, "Array", value); } if (value.length < minLength) { const reason = `must be longer than ${minLength}`; throw new ERR_INVALID_ARG_VALUE(name, value, reason); } }); function validateStringArray(value, name) { validateArray(value, name); for (let i = 0; i < value.length; i++) { validateString(value[i], `${name}[${i}]`); } } function validateBooleanArray(value, name) { validateArray(value, name); for (let i = 0; i < value.length; i++) { validateBoolean(value[i], `${name}[${i}]`); } } function validateAbortSignalArray(value, name) { validateArray(value, name); for (let i = 0; i < value.length; i++) { const signal = value[i]; const indexedName = `${name}[${i}]`; if (signal == null) { throw new ERR_INVALID_ARG_TYPE2(indexedName, "AbortSignal", signal); } validateAbortSignal(signal, indexedName); } } function validateSignalName(signal, name = "signal") { validateString(signal, name); if (signals[signal] === void 0) { if (signals[StringPrototypeToUpperCase(signal)] !== void 0) { throw new ERR_UNKNOWN_SIGNAL(signal + " (signals must use all capital letters)"); } throw new ERR_UNKNOWN_SIGNAL(signal); } } var validateBuffer = hideStackFrames((buffer, name = "buffer") => { if (!isArrayBufferView(buffer)) { throw new ERR_INVALID_ARG_TYPE2(name, ["Buffer", "TypedArray", "DataView"], buffer); } }); function validateEncoding(data, encoding) { const normalizedEncoding = normalizeEncoding(encoding); const length = data.length; if (normalizedEncoding === "hex" && length % 2 !== 0) { throw new ERR_INVALID_ARG_VALUE("encoding", encoding, `is invalid for data of length ${length}`); } } function validatePort(port, name = "Port", allowZero = true) { if (typeof port !== "number" && typeof port !== "string" || typeof port === "string" && StringPrototypeTrim(port).length === 0 || +port !== +port >>> 0 || port > 65535 || port === 0 && !allowZero) { throw new ERR_SOCKET_BAD_PORT(name, port, allowZero); } return port | 0; } var validateAbortSignal = hideStackFrames((signal, name) => { if (signal !== void 0 && (signal === null || typeof signal !== "object" || !("aborted" in signal))) { throw new ERR_INVALID_ARG_TYPE2(name, "AbortSignal", signal); } }); var validateFunction = hideStackFrames((value, name) => { if (typeof value !== "function") throw new ERR_INVALID_ARG_TYPE2(name, "Function", value); }); var validatePlainFunction = hideStackFrames((value, name) => { if (typeof value !== "function" || isAsyncFunction(value)) throw new ERR_INVALID_ARG_TYPE2(name, "Function", value); }); var validateUndefined = hideStackFrames((value, name) => { if (value !== void 0) throw new ERR_INVALID_ARG_TYPE2(name, "undefined", value); }); function validateUnion(value, name, union) { if (!ArrayPrototypeIncludes(union, value)) { throw new ERR_INVALID_ARG_TYPE2(name, `('${ArrayPrototypeJoin(union, "|")}')`, value); } } var linkValueRegExp = /^(?:<[^>]*>)(?:\s*;\s*[^;"\s]+(?:=(")?[^;"\s]*\1)?)*$/; function validateLinkHeaderFormat(value, name) { if (typeof value === "undefined" || !RegExpPrototypeExec(linkValueRegExp, value)) { throw new ERR_INVALID_ARG_VALUE( name, value, 'must be an array or string of format "</styles.css>; rel=preload; as=style"' ); } } function validateLinkHeaderValue(hints) { if (typeof hints === "string") { validateLinkHeaderFormat(hints, "hints"); return hints; } else if (ArrayIsArray(hints)) { const hintsLength = hints.length; let result = ""; if (hintsLength === 0) { return result; } for (let i = 0; i < hintsLength; i++) { const link = hints[i]; validateLinkHeaderFormat(link, "hints"); result += link; if (i !== hintsLength - 1) { result += ", "; } } return result; } throw new ERR_INVALID_ARG_VALUE( "hints", hints, 'must be an array or string of format "</styles.css>; rel=preload; as=style"' ); } module.exports = { isInt32, isUint32, parseFileMode, validateArray, validateStringArray, validateBooleanArray, validateAbortSignalArray, validateBoolean, validateBuffer, validateDictionary, validateEncoding, validateFunction, validateInt32, validateInteger, validateNumber, validateObject, validateOneOf, validatePlainFunction, validatePort, validateSignalName, validateString, validateUint32, validateUndefined, validateUnion, validateAbortSignal, validateLinkHeaderValue }; } }); // node_modules/process/browser.js var require_browser = __commonJS({ "node_modules/process/browser.js"(exports, module) { init_process_shim(); var process2 = module.exports = {}; var cachedSetTimeout; var cachedClearTimeout; function defaultSetTimout() { throw new Error("setTimeout has not been defined"); } function defaultClearTimeout() { throw new Error("clearTimeout has not been defined"); } (function() { try { if (typeof setTimeout === "function") { cachedSetTimeout = setTimeout; } else { cachedSetTimeout = defaultSetTimout; } } catch (e) { cachedSetTimeout = defaultSetTimout; } try { if (typeof clearTimeout === "function") { cachedClearTimeout = clearTimeout; } else { cachedClearTimeout = defaultClearTimeout; } } catch (e) { cachedClearTimeout = defaultClearTimeout; } })(); function runTimeout(fun) { if (cachedSetTimeout === setTimeout) { return setTimeout(fun, 0); } if ((cachedSetTimeout === defaultSetTimout || !cachedSetTimeout) && setTimeout) { cachedSetTimeout = setTimeout; return setTimeout(fun, 0); } try { return cachedSetTimeout(fun, 0); } catch (e) { try { return cachedSetTimeout.call(null, fun, 0); } catch (e2) { return cachedSetTimeout.call(this, fun, 0); } } } function runClearTimeout(marker) { if (cachedClearTimeout === clearTimeout) { return clearTimeout(marker); } if ((cachedClearTimeout === defaultClearTimeout || !cachedClearTimeout) && clearTimeout) { cachedClearTimeout = clearTimeout; return clearTimeout(marker); } try { return cachedClearTimeout(marker); } catch (e) { try { return cachedClearTimeout.call(null, marker); } catch (e2) { return cachedClearTimeout.call(this, marker); } } } var queue = []; var draining = false; var currentQueue; var queueIndex = -1; function cleanUpNextTick() { if (!draining || !currentQueue) { return; } draining = false; if (currentQueue.length) { queue = currentQueue.concat(queue); } else { queueIndex = -1; } if (queue.length) { drainQueue(); } } function drainQueue() { if (draining) { return; } var timeout = runTimeout(cleanUpNextTick); draining = true; var len = queue.length; while (len) { currentQueue = queue; queue = []; while (++queueIndex < len) { if (currentQueue) { currentQueue[queueIndex].run(); } } queueIndex = -1; len = queue.length; } currentQueue = null; draining = false; runClearTimeout(timeout); } process2.nextTick = function(fun) { var args = new Array(arguments.length - 1); if (arguments.length > 1) { for (var i = 1; i < arguments.length; i++) { args[i - 1] = arguments[i]; } } queue.push(new Item(fun, args)); if (queue.length === 1 && !draining) { runTimeout(drainQueue); } }; function Item(fun, array) { this.fun = fun; this.array = array; } Item.prototype.run = function() { this.fun.apply(null, this.array); }; process2.title = "browser"; process2.browser = true; process2.env = {}; process2.argv = []; process2.version = ""; process2.versions = {}; function noop() { } process2.on = noop; process2.addListener = noop; process2.once = noop; process2.off = noop; process2.removeListener = noop; process2.removeAllListeners = noop; process2.emit = noop; process2.prependListener = noop; process2.prependOnceListener = noop; process2.listeners = function(name) { return []; }; process2.binding = function(name) { throw new Error("process.binding is not supported"); }; process2.cwd = function() { return "/"; }; process2.chdir = function(dir) { throw new Error("process.chdir is not supported"); }; process2.umask = function() { return 0; }; } }); // node_modules/readable-stream/lib/internal/streams/utils.js var require_utils = __commonJS({ "node_modules/readable-stream/lib/internal/streams/utils.js"(exports, module) { "use strict"; init_process_shim(); var { SymbolAsyncIterator, SymbolIterator, SymbolFor } = require_primordials(); var kIsDestroyed = SymbolFor("nodejs.stream.destroyed"); var kIsErrored = SymbolFor("nodejs.stream.errored"); var kIsReadable = SymbolFor("nodejs.stream.readable"); var kIsWritable = SymbolFor("nodejs.stream.writable"); var kIsDisturbed = SymbolFor("nodejs.stream.disturbed"); var kIsClosedPromise = SymbolFor("nodejs.webstream.isClosedPromise"); var kControllerErrorFunction = SymbolFor("nodejs.webstream.controllerErrorFunction"); function isReadableNodeStream(obj, strict = false) { var _obj$_readableState; return !!(obj && typeof obj.pipe === "function" && typeof obj.on === "function" && (!strict || typeof obj.pause === "function" && typeof obj.resume === "function") && (!obj._writableState || ((_obj$_readableState = obj._readableState) === null || _obj$_readableState === void 0 ? void 0 : _obj$_readableState.readable) !== false) && // Duplex (!obj._writableState || obj._readableState)); } function isWritableNodeStream(obj) { var _obj$_writableState; return !!(obj && typeof obj.write === "function" && typeof obj.on === "function" && (!obj._readableState || ((_obj$_writableState = obj._writableState) === null || _obj$_writableState === void 0 ? void 0 : _obj$_writableState.writable) !== false)); } function isDuplexNodeStream(obj) { return !!(obj && typeof obj.pipe === "function" && obj._readableState && typeof obj.on === "function" && typeof obj.write === "function"); } function isNodeStream(obj) { return obj && (obj._readableState || obj._writableState || typeof obj.write === "function" && typeof obj.on === "function" || typeof obj.pipe === "function" && typeof obj.on === "function"); } function isReadableStream(obj) { return !!(obj && !isNodeStream(obj) && typeof obj.pipeThrough === "function" && typeof obj.getReader === "function" && typeof obj.cancel === "function"); } function isWritableStream(obj) { return !!(obj && !isNodeStream(obj) && typeof obj.getWriter === "function" && typeof obj.abort === "function"); } function isTransformStream(obj) { return !!(obj && !isNodeStream(obj) && typeof obj.readable === "object" && typeof obj.writable === "object"); } function isWebStream(obj) { return isReadableStream(obj) || isWritableStream(obj) || isTransformStream(obj); } function isIterable(obj, isAsync) { if (obj == null) return false; if (isAsync === true) return typeof obj[SymbolAsyncIterator] === "function"; if (isAsync === false) return typeof obj[SymbolIterator] === "function"; return typeof obj[SymbolAsyncIterator] === "function" || typeof obj[SymbolIterator] === "function"; } function isDestroyed(stream) { if (!isNodeStream(stream)) return null; const wState = stream._writableState; const rState = stream._readableState; const state = wState || rState; return !!(stream.destroyed || stream[kIsDestroyed] || state !== null && state !== void 0 && state.destroyed); } function isWritableEnded(stream) { if (!isWritableNodeStream(stream)) return null; if (stream.writableEnded === true) return true; const wState = stream._writableState; if (wState !== null && wState !== void 0 && wState.errored) return false; if (typeof (wState === null || wState === void 0 ? void 0 : wState.ended) !== "boolean") return null; return wState.ended; } function isWritableFinished(stream, strict) { if (!isWritableNodeStream(stream)) return null; if (stream.writableFinished === true) return true; const wState = stream._writableState; if (wState !== null && wState !== void 0 && wState.errored) return false; if (typeof (wState === null || wState === void 0 ? void 0 : wState.finished) !== "boolean") return null; return !!(wState.finished || strict === false && wState.ended === true && wState.length === 0); } function isReadableEnded(stream) { if (!isReadableNodeStream(stream)) return null; if (stream.readableEnded === true) return true; const rState = stream._readableState; if (!rState || rState.errored) return false; if (typeof (rState === null || rState === void 0 ? void 0 : rState.ended) !== "boolean") return null; return rState.ended; } function isReadableFinished(stream, strict) { if (!isReadableNodeStream(stream)) return null; const rState = stream._readableState; if (rState !== null && rState !== void 0 && rState.errored) return false; if (typeof (rState === null || rState === void 0 ? void 0 : rState.endEmitted) !== "boolean") return null; return !!(rState.endEmitted || strict === false && rState.ended === true && rState.length === 0); } function isReadable(stream) { if (stream && stream[kIsReadable] != null) return stream[kIsReadable]; if (typeof (stream === null || stream === void 0 ? void 0 : stream.readable) !== "boolean") return null; if (isDestroyed(stream)) return false; return isReadableNodeStream(stream) && stream.readable && !isReadableFinished(stream); } function isWritable(stream) { if (stream && stream[kIsWritable] != null) return stream[kIsWritable]; if (typeof (stream === null || stream === void 0 ? void 0 : stream.writable) !== "boolean") return null; if (isDestroyed(stream)) return false; return isWritableNodeStream(stream) && stream.writable && !isWritableEnded(stream); } function isFinished(stream, opts) { if (!isNodeStream(stream)) { return null; } if (isDestroyed(stream)) { return true; } if ((opts === null || opts === void 0 ? void 0 : opts.readable) !== false && isReadable(stream)) { return false; } if ((opts === null || opts === void 0 ? void 0 : opts.writable) !== false && isWritable(stream)) { return false; } return true; } function isWritableErrored(stream) { var _stream$_writableStat, _stream$_writableStat2; if (!isNodeStream(stream)) { return null; } if (stream.writableErrored) { return stream.writableErrored; } return (_stream$_writableStat = (_stream$_writableStat2 = stream._writableState) === null || _stream$_writableStat2 === void 0 ? void 0 : _stream$_writableStat2.errored) !== null && _stream$_writableStat !== void 0 ? _stream$_writableStat : null; } function isReadableErrored(stream) { var _stream$_readableStat, _stream$_readableStat2; if (!isNodeStream(stream)) { return null; } if (stream.readableErrored) { return stream.readableErrored; } return (_stream$_readableStat = (_stream$_readableStat2 = stream._readableState) === null || _stream$_readableStat2 === void 0 ? void 0 : _stream$_readableStat2.errored) !== null && _stream$_readableStat !== void 0 ? _stream$_readableStat : null; } function isClosed(stream) { if (!isNodeStream(stream)) { return null; } if (typeof stream.closed === "boolean") { return stream.closed; } const wState = stream._writableState; const rState = stream._readableState; if (typeof (wState === null || wState === void 0 ? void 0 : wState.closed) === "boolean" || typeof (rState === null || rState === void 0 ? void 0 : rState.closed) === "boolean") { return (wState === null || wState === void 0 ? void 0 : wState.closed) || (rState === null || rState === void 0 ? void 0 : rState.closed); } if (typeof stream._closed === "boolean" && isOutgoingMessage(stream)) { return stream._closed; } return null; } function isOutgoingMessage(stream) { return typeof stream._closed === "boolean" && typeof stream._defaultKeepAlive === "boolean" && typeof stream._removedConnection === "boolean" && typeof stream._removedContLen === "boolean"; } function isServerResponse(stream) { return typeof stream._sent100 === "boolean" && isOutgoingMessage(stream); } function isServerRequest(stream) { var _stream$req; return typeof stream._consuming === "boolean" && typeof stream._dumped === "boolean" && ((_stream$req = stream.req) === null || _stream$req === void 0 ? void 0 : _stream$req.upgradeOrConnect) === void 0; } function willEmitClose(stream) { if (!isNodeStream(stream)) return null; const wState = stream._writableState; const rState = stream._readableState; const state = wState || rState; return !state && isServerResponse(stream) || !!(state && state.autoDestroy && state.emitClose && state.closed === false); } function isDisturbed(stream) { var _stream$kIsDisturbed; return !!(stream && ((_stream$kIsDisturbed = stream[kIsDisturbed]) !== null && _stream$kIsDisturbed !== void 0 ? _stream$kIsDisturbed : stream.readableDidRead || stream.readableAborted)); } function isErrored(stream) { var _ref, _ref2, _ref3, _ref4, _ref5, _stream$kIsErrored, _stream$_readableStat3, _stream$_writableStat3, _stream$_readableStat4, _stream$_writableStat4; return !!(stream && ((_ref = (_ref2 = (_ref3 = (_ref4 = (_ref5 = (_stream$kIsErrored = stream[kIsErrored]) !== null && _stream$kIsErrored !== void 0 ? _stream$kIsErrored : stream.readableErrored) !== null && _ref5 !== void 0 ? _ref5 : stream.writableErrored) !== null && _ref4 !== void 0 ? _ref4 : (_stream$_readableStat3 = stream._readableState) === null || _stream$_readableStat3 === void 0 ? void 0 : _stream$_readableStat3.errorEmitted) !== null && _ref3 !== void 0 ? _ref3 : (_stream$_writableStat3 = stream._writableState) === null || _stream$_writableStat3 === void 0 ? void 0 : _stream$_writableStat3.errorEmitted) !== null && _ref2 !== void 0 ? _ref2 : (_stream$_readableStat4 = stream._readableState) === null || _stream$_readableStat4 === void 0 ? void 0 : _stream$_readableStat4.errored) !== null && _ref !== void 0 ? _ref : (_stream$_writableStat4 = stream._writableState) === null || _stream$_writableStat4 === void 0 ? void 0 : _stream$_writableStat4.errored)); } module.exports = { isDestroyed, kIsDestroyed, isDisturbed, kIsDisturbed, isErrored, kIsErrored, isReadable, kIsReadable, kIsClosedPromise, kControllerErrorFunction, kIsWritable, isClosed, isDuplexNodeStream, isFinished, isIterable, isReadableNodeStream, isReadableStream, isReadableEnded, isReadableFinished, isReadableErrored, isNodeStream, isWebStream, isWritable, isWritableNodeStream, isWritableStream, isWritableEnded, isWritableFinished, isWritableErrored, isServerRequest, isServerResponse, willEmitClose, isTransformStream }; } }); // node_modules/readable-stream/lib/internal/streams/end-of-stream.js var require_end_of_stream = __commonJS({ "node_modules/readable-stream/lib/internal/streams/end-of-stream.js"(exports, module) { init_process_shim(); var process2 = require_browser(); var { AbortError, codes } = require_errors(); var { ERR_INVALID_ARG_TYPE: ERR_INVALID_ARG_TYPE2, ERR_STREAM_PREMATURE_CLOSE } = codes; var { kEmptyObject, once } = require_util(); var { validateAbortSignal, validateFunction, validateObject, validateBoolean } = require_validators(); var { Promise: Promise2, PromisePrototypeThen, SymbolDispose } = require_primordials(); var { isClosed, isReadable, isReadableNodeStream, isReadableStream, isReadableFinished, isReadableErrored, isWritable, isWritableNodeStream, isWritableStream, isWritableFinished, isWritableErrored, isNodeStream, willEmitClose: _willEmitClose, kIsClosedPromise } = require_utils(); var addAbortListener; function isRequest(stream) { return stream.setHeader && typeof stream.abort === "function"; } var nop = () => { }; function eos(stream, options, callback) { var _options$readable, _options$writable; if (arguments.length === 2) { callback = options; options = kEmptyObject; } else if (options == null) { options = kEmptyObject; } else { validateObject(options, "options"); } validateFunction(callback, "callback"); validateAbortSignal(options.signal, "options.signal"); callback = once(callback); if (isReadableStream(stream) || isWritableStream(stream)) { return eosWeb(stream, options, callback); } if (!isNodeStream(stream)) { throw new ERR_INVALID_ARG_TYPE2("stream", ["ReadableStream", "WritableStream", "Stream"], stream); } const readable = (_options$readable = options.readable) !== null && _options$readable !== void 0 ? _options$readable : isReadableNodeStream(stream); const writable = (_options$writable = options.writable) !== null && _options$writable !== void 0 ? _options$writable : isWritableNodeStream(stream); const wState = stream._writableState; const rState = stream._readableState; const onlegacyfinish = () => { if (!stream.writable) { onfinish(); } }; let willEmitClose = _willEmitClose(stream) && isReadableNodeStream(stream) === readable && isWritableNodeStream(stream) === writable; let writableFinished = isWritableFinished(stream, false); const onfinish = () => { writableFinished = true; if (stream.destroyed) { willEmitClose = false; } if (willEmitClose && (!stream.readable || readable)) { return; } if (!readable || readableFinished) { callback.call(stream); } }; let readableFinished = isReadableFinished(stream, false); const onend = () => { readableFinished = true; if (stream.destroyed) { willEmitClose = false; } if (willEmitClose && (!stream.writable || writable)) { return; } if (!writable || writableFinished) { callback.call(stream); } }; const onerror = (err) => { callback.call(stream, err); }; let closed = isClosed(stream); const onclose = () => { closed = true; const errored = isWritableErrored(stream) || isReadableErrored(stream); if (errored && typeof errored !== "boolean") { return callback.call(stream, errored); } if (readable && !readableFinished && isReadableNodeStream(stream, true)) { if (!isReadableFinished(stream, false)) return callback.call(stream, new ERR_STREAM_PREMATURE_CLOSE()); } if (writable && !writableFinished) { if (!isWritableFinished(stream, false)) return callback.call(stream, new ERR_STREAM_PREMATURE_CLOSE()); } callback.call(stream); }; const onclosed = () => { closed = true; const errored = isWritableErrored(stream) || isReadableErrored(stream); if (errored && typeof errored !== "boolean") { return callback.call(stream, errored); } callback.call(stream); }; const onrequest = () => { stream.req.on("finish", onfinish); }; if (isRequest(stream)) { stream.on("complete", onfinish); if (!willEmitClose) { stream.on("abort", onclose); } if (stream.req) { onrequest(); } else { stream.on("request", onrequest); } } else if (writable && !wState) { stream.on("end", onlegacyfinish); stream.on("close", onlegacyfinish); } if (!willEmitClose && typeof stream.aborted === "boolean") { stream.on("aborted", onclose); } stream.on("end", onend); stream.on("finish", onfinish); if (options.error !== false) { stream.on("error", onerror); } stream.on("close", onclose); if (closed) { process2.nextTick(onclose); } else if (wState !== null && wState !== void 0 && wState.errorEmitted || rState !== null && rState !== void 0 && rState.errorEmitted) { if (!willEmitClose) { process2.nextTick(onclosed); } } else if (!readable && (!willEmitClose || isReadable(stream)) && (writableFinished || isWritable(stream) === false)) { process2.nextTick(onclosed); } else if (!writable && (!willEmitClose || isWritable(stream)) && (readableFinished || isReadable(stream) === false)) { process2.nextTick(onclosed); } else if (rState && stream.req && stream.aborted) { process2.nextTick(onclosed); } const cleanup = () => { callback = nop; stream.removeListener("aborted", onclose); stream.removeListener("complete", onfinish); stream.removeListener("abort", onclose); stream.removeListener("request", onrequest); if (stream.req) stream.req.removeListener("finish", onfinish); stream.removeListener("end", onlegacyfinish); stream.removeListener("close", onlegacyfinish); stream.removeListener("finish", onfinish); stream.removeListener("end", onend); stream.removeListener("error", onerror); stream.removeListener("close", onclose); }; if (options.signal && !closed) { const abort = () => { const endCallback = callback; cleanup(); endCallback.call( stream, new AbortError(void 0, { cause: options.signal.reason }) ); }; if (options.signal.aborted) { process2.nextTick(abort); } else { addAbortListener = addAbortListener || require_util().addAbortListener; const disposable = addAbortListener(options.signal, abort); const originalCallback = callback; callback = once((...args) => { disposable[SymbolDispose](); originalCallback.apply(stream, args); }); } } return cleanup; } function eosWeb(stream, options, callback) { let isAborted = false; let abort = nop; if (options.signal) { abort = () => { isAborted = true; callback.call( stream, new AbortError(void 0, { cause: options.signal.reason }) ); }; if (options.signal.aborted) { process2.nextTick(abort); } else { addAbortListener = addAbortListener || require_util().addAbortListener; const disposable = addAbortListener(options.signal, abort); const originalCallback = callback; callback = once((...args) => { disposable[SymbolDispose](); originalCallback.apply(stream, args); }); } } const resolverFn = (...args) => { if (!isAborted) { process2.nextTick(() => callback.apply(stream, args)); } }; PromisePrototypeThen(stream[kIsClosedPromise].promise, resolverFn, resolverFn); return nop; } function finished(stream, opts) { var _opts; let autoCleanup = false; if (opts === null) { opts = kEmptyObject; } if ((_opts = opts) !== null && _opts !== void 0 && _opts.cleanup) { validateBoolean(opts.cleanup, "cleanup"); autoCleanup = opts.cleanup; } return new Promise2((resolve, reject) => { const cleanup = eos(stream, opts, (err) => { if (autoCleanup) { cleanup(); } if (err) { reject(err); } else { resolve(); } }); }); } module.exports = eos; module.exports.finished = finished; } }); // node_modules/readable-stream/lib/internal/streams/destroy.js var require_destroy = __commonJS({ "node_modules/readable-stream/lib/internal/streams/destroy.js"(exports, module) { "use strict"; init_process_shim(); var process2 = require_browser(); var { aggregateTwoErrors, codes: { ERR_MULTIPLE_CALLBACK }, AbortError } = require_errors(); var { Symbol: Symbol2 } = require_primordials(); var { kIsDestroyed, isDestroyed, isFinished, isServerRequest } = require_utils(); var kDestroy = Symbol2("kDestroy"); var kConstruct = Symbol2("kConstruct"); function checkError(err, w, r) { if (err) { err.stack; if (w && !w.errored) { w.errored = err; } if (r && !r.errored) { r.errored = err; } } } function destroy(err, cb) { const r = this._readableState; const w = this._writableState; const s = w || r; if (w !== null && w !== void 0 && w.destroyed || r !== null && r !== void 0 && r.destroyed) { if (typeof cb === "function") { cb(); } return this; } checkError(err, w, r); if (w) { w.destroyed = true; } if (r) { r.destroyed = true; } if (!s.constructed) { this.once(kDestroy, function(er) { _destroy(this, aggregateTwoErrors(er, err), cb); }); } else { _destroy(this, err, cb); } return this; } function _destroy(self2, err, cb) { let called = false; function onDestroy(err2) { if (called) { return; } called = true; const r = self2._readableState; const w = self2._writableState; checkError(err2, w, r); if (w) { w.closed = true; } if (r) { r.closed = true; } if (typeof cb === "function") { cb(err2); } if (err2) { process2.nextTick(emitErrorCloseNT, self2, err2); } else { process2.nextTick(emitCloseNT, self2); } } try { self2._destroy(err || null, onDestroy); } catch (err2) { onDestroy(err2); } } function emitErrorCloseNT(self2, err) { emitErrorNT(self2, err); emitCloseNT(self2); } function emitCloseNT(self2) { const r = self2._readableState; const w = self2._writableState; if (w) { w.closeEmitted = true; } if (r) { r.closeEmitted = true; } if (w !== null && w !== void 0 && w.emitClose || r !== null && r !== void 0 && r.emitClose) { self2.emit("close"); } } function emitErrorNT(self2, err) { const r = self2._readableState; const w = self2._writableState; if (w !== null && w !== void 0 && w.errorEmitted || r !== null && r !== void 0 && r.errorEmitted) { return; } if (w) { w.errorEmitted = true; } if (r) { r.errorEmitted = true; } self2.emit("error", err); } function undestroy() { const r = this._readableState; const w = this._writableState; if (r) { r.constructed = true; r.closed = false; r.closeEmitted = false; r.destroyed = false; r.errored = null; r.errorEmitted = false; r.reading = false; r.ended = r.readable === false; r.endEmitted = r.readable === false; } if (w) { w.constructed = true; w.destroyed = false; w.closed = false; w.closeEmitted = false; w.errored = null; w.errorEmitted = false; w.finalCalled = false; w.prefinished = false; w.ended = w.writable === false; w.ending = w.writable === false; w.finished = w.writable === false; } } function errorOrDestroy(stream, err, sync) { const r = stream._readableState; const w = stream._writableState; if (w !== null && w !== void 0 && w.destroyed || r !== null && r !== void 0 && r.destroyed) { return this; } if (r !== null && r !== void 0 && r.autoDestroy || w !== null && w !== void 0 && w.autoDestroy) stream.destroy(err); else if (err) { err.stack; if (w && !w.errored) { w.errored = err; } if (r && !r.errored) { r.errored = err; } if (sync) { process2.nextTick(emitErrorNT, stream, err); } else { emitErrorNT(stream, err); } } } function construct(stream, cb) { if (typeof stream._construct !== "function") { return; } const r = stream._readableState; const w = stream._writableState; if (r) { r.constructed = false; } if (w) { w.constructed = false; } stream.once(kConstruct, cb); if (stream.listenerCount(kConstruct) > 1) { return; } process2.nextTick(constructNT, stream); } function constructNT(stream) { let called = false; function onConstruct(err) { if (called) { errorOrDestroy(stream, err !== null && err !== void 0 ? err : new ERR_MULTIPLE_CALLBACK()); return; } called = true; const r = stream._readableState; const w = stream._writableState; const s = w || r; if (r) { r.constructed = true; } if (w) { w.constructed = true; } if (s.destroyed) { stream.emit(kDestroy, err); } else if (err) { errorOrDestroy(stream, err, true); } else { process2.nextTick(emitConstructNT, stream); } } try { stream._construct((err) => { process2.nextTick(onConstruct, err); }); } catch (err) { process2.nextTick(onConstruct, err); } } function emitConstructNT(stream) { stream.emit(kConstruct); } function isRequest(stream) { return (stream === null || stream === void 0 ? void 0 : stream.setHeader) && typeof stream.abort === "function"; } function emitCloseLegacy(stream) { stream.emit("close"); } function emitErrorCloseLegacy(stream, err) { stream.emit("error", err); process2.nextTick(emitCloseLegacy, stream); } function destroyer(stream, err) { if (!stream || isDestroyed(stream)) { return; } if (!err && !isFinished(stream)) { err = new AbortError(); } if (isServerRequest(stream)) { stream.socket = null; stream.destroy(err); } else if (isRequest(stream)) { stream.abort(); } else if (isRequest(stream.req)) { stream.req.abort(); } else if (typeof stream.destroy === "function") { stream.destroy(err); } else if (typeof stream.close === "function") { stream.close(); } else if (err) { process2.nextTick(emitErrorCloseLegacy, stream, err); } else { process2.nextTick(emitCloseLegacy, stream); } if (!stream.destroyed) { stream[kIsDestroyed] = true; } } module.exports = { construct, destroyer, destroy, undestroy, errorOrDestroy }; } }); // node_modules/readable-stream/lib/internal/streams/legacy.js var require_legacy = __commonJS({ "node_modules/readable-stream/lib/internal/streams/legacy.js"(exports, module) { "use strict"; init_process_shim(); var { ArrayIsArray, ObjectSetPrototypeOf } = require_primordials(); var { EventEmitter: EE } = require_events(); function Stream(opts) { EE.call(this, opts); } ObjectSetPrototypeOf(Stream.prototype, EE.prototype); ObjectSetPrototypeOf(Stream, EE); Stream.prototype.pipe = function(dest, options) { const source = this; function ondata(chunk) { if (dest.writable && dest.write(chunk) === false && source.pause) { source.pause(); } } source.on("data", ondata); function ondrain() { if (source.readable && source.resume) { source.resume(); } } dest.on("drain", ondrain); if (!dest._isStdio && (!options || options.end !== false)) { source.on("end", onend); source.on("close", onclose); } let didOnEnd = false; function onend() { if (didOnEnd) return; didOnEnd = true; dest.end(); } function onclose() { if (didOnEnd) return; didOnEnd = true; if (typeof dest.destroy === "function") dest.destroy(); } function onerror(er) { cleanup(); if (EE.listenerCount(this, "error") === 0) { this.emit("error", er); } } prependListener(source, "error", onerror); prependListener(dest, "error", onerror); function cleanup() { source.removeListener("data", ondata); dest.removeListener("drain", ondrain); source.removeListener("end", onend); source.removeListener("close", onclose); source.removeListener("error", onerror); dest.removeListener("error", onerror); source.removeListener("end", cleanup); source.removeListener("close", cleanup); dest.removeListener("close", cleanup); } source.on("end", cleanup); source.on("close", cleanup); dest.on("close", cleanup); dest.emit("pipe", source); return dest; }; function prependListener(emitter, event, fn) { if (typeof emitter.prependListener === "function") return emitter.prependListener(event, fn); if (!emitter._events || !emitter._events[event]) emitter.on(event, fn); else if (ArrayIsArray(emitter._events[event])) emitter._events[event].unshift(fn); else emitter._events[event] = [fn, emitter._events[event]]; } module.exports = { Stream, prependListener }; } }); // node_modules/readable-stream/lib/internal/streams/add-abort-signal.js var require_add_abort_signal = __commonJS({ "node_modules/readable-stream/lib/internal/streams/add-abort-signal.js"(exports, module) { "use strict"; init_process_shim(); var { SymbolDispose } = require_primordials(); var { AbortError, codes } = require_errors(); var { isNodeStream, isWebStream, kControllerErrorFunction } = require_utils(); var eos = require_end_of_stream(); var { ERR_INVALID_ARG_TYPE: ERR_INVALID_ARG_TYPE2 } = codes; var addAbortListener; var validateAbortSignal = (signal, name) => { if (typeof signal !== "object" || !("aborted" in signal)) { throw new ERR_INVALID_ARG_TYPE2(name, "AbortSignal", signal); } }; module.exports.addAbortSignal = function addAbortSignal(signal, stream) { validateAbortSignal(signal, "signal"); if (!isNodeStream(stream) && !isWebStream(stream)) { throw new ERR_INVALID_ARG_TYPE2("stream", ["ReadableStream", "WritableStream", "Stream"], stream); } return module.exports.addAbortSignalNoValidate(signal, stream); }; module.exports.addAbortSignalNoValidate = function(signal, stream) { if (typeof signal !== "object" || !("aborted" in signal)) { return stream; } const onAbort = isNodeStream(stream) ? () => { stream.destroy( new AbortError(void 0, { cause: signal.reason }) ); } : () => { stream[kControllerErrorFunction]( new AbortError(void 0, { cause: signal.reason }) ); }; if (signal.aborted) { onAbort(); } else { addAbortListener = addAbortListener || require_util().addAbortListener; const disposable = addAbortListener(signal, onAbort); eos(stream, disposable[SymbolDispose]); } return stream; }; } }); // node_modules/readable-stream/lib/internal/streams/buffer_list.js var require_buffer_list = __commonJS({ "node_modules/readable-stream/lib/internal/streams/buffer_list.js"(exports, module) { "use strict"; init_process_shim(); var { StringPrototypeSlice, SymbolIterator, TypedArrayPrototypeSet, Uint8Array: Uint8Array2 } = require_primordials(); var { Buffer: Buffer3 } = require_buffer(); var { inspect } = require_util(); module.exports = class BufferList { constructor() { this.head = null; this.tail = null; this.length = 0; } push(v) { const entry = { data: v, next: null }; if (this.length > 0) this.tail.next = entry; else this.head = entry; this.tail = entry; ++this.length; } unshift(v) { const entry = { data: v, next: this.head }; if (this.length === 0) this.tail = entry; this.head = entry; ++this.length; } shift() { if (this.length === 0) return; const ret = this.head.data; if (this.length === 1) this.head = this.tail = null; else this.head = this.head.next; --this.length; return ret; } clear() { this.head = this.tail = null; this.length = 0; } join(s) { if (this.length === 0) return ""; let p = this.head; let ret = "" + p.data; while ((p = p.next) !== null) ret += s + p.data; return ret; } concat(n) { if (this.length === 0) return Buffer3.alloc(0); const ret = Buffer3.allocUnsafe(n >>> 0); let p = this.head; let i = 0; while (p) { TypedArrayPrototypeSet(ret, p.data, i); i += p.data.length; p = p.next; } return ret; } // Consumes a specified amount of bytes or characters from the buffered data. consume(n, hasStrings) { const data = this.head.data; if (n < data.length) { const slice = data.slice(0, n); this.head.data = data.slice(n); return slice; } if (n === data.length) { return this.shift(); } return hasStrings ? this._getString(n) : this._getBuffer(n); } first() { return this.head.data; } *[SymbolIterator]() { for (let p = this.head; p; p = p.next) { yield p.data; } } // Consumes a specified amount of characters from the buffered data. _getString(n) { let ret = ""; let p = this.head; let c = 0; do { const str = p.data; if (n > str.length) { ret += str; n -= str.length; } else { if (n === str.length) { ret += str; ++c; if (p.next) this.head = p.next; else this.head = this.tail = null; } else { ret += StringPrototypeSlice(str, 0, n); this.head = p; p.data = StringPrototypeSlice(str, n); } break; } ++c; } while ((p = p.next) !== null); this.length -= c; return ret; } // Consumes a specified amount of bytes from the buffered data. _getBuffer(n) { const ret = Buffer3.allocUnsafe(n); const retLen = n; let p = this.head; let c = 0; do { const buf = p.data; if (n > buf.length) { TypedArrayPrototypeSet(ret, buf, retLen - n); n -= buf.length; } else { if (n === buf.length) { TypedArrayPrototypeSet(ret, buf, retLen - n); ++c; if (p.next) this.head = p.next; else this.head = this.tail = null; } else { TypedArrayPrototypeSet(ret, new Uint8Array2(buf.buffer, buf.byteOffset, n), retLen - n); this.head = p; p.data = buf.slice(n); } break; } ++c; } while ((p = p.next) !== null); this.length -= c; return ret; } // Make sure the linked list only shows the minimal necessary information. [Symbol.for("nodejs.util.inspect.custom")](_, options) { return inspect(this, { ...options, // Only inspect one level. depth: 0, // It should not recurse. customInspect: false }); } }; } }); // node_modules/readable-stream/lib/internal/streams/state.js var require_state = __commonJS({ "node_modules/readable-stream/lib/internal/streams/state.js"(exports, module) { "use strict"; init_process_shim(); var { MathFloor, NumberIsInteger } = require_primordials(); var { validateInteger } = require_validators(); var { ERR_INVALID_ARG_VALUE } = require_errors().codes; var defaultHighWaterMarkBytes = 16 * 1024; var defaultHighWaterMarkObjectMode = 16; function highWaterMarkFrom(options, isDuplex, duplexKey) { return options.highWaterMark != null ? options.highWaterMark : isDuplex ? options[duplexKey] : null; } function getDefaultHighWaterMark(objectMode) { return objectMode ? defaultHighWaterMarkObjectMode : defaultHighWaterMarkBytes; } function setDefaultHighWaterMark(objectMode, value) { validateInteger(value, "value", 0); if (objectMode) { defaultHighWaterMarkObjectMode = value; } else { defaultHighWaterMarkBytes = value; } } function getHighWaterMark(state, options, duplexKey, isDuplex) { const hwm = highWaterMarkFrom(options, isDuplex, duplexKey); if (hwm != null) { if (!NumberIsInteger(hwm) || hwm < 0) { const name = isDuplex ? `options.${duplexKey}` : "options.highWaterMark"; throw new ERR_INVALID_ARG_VALUE(name, hwm); } return MathFloor(hwm); } return getDefaultHighWaterMark(state.objectMode); } module.exports = { getHighWaterMark, getDefaultHighWaterMark, setDefaultHighWaterMark }; } }); // node_modules/safe-buffer/index.js var require_safe_buffer = __commonJS({ "node_modules/safe-buffer/index.js"(exports, module) { init_process_shim(); var buffer = require_buffer(); var Buffer3 = buffer.Buffer; function copyProps(src, dst) { for (var key in src) { dst[key] = src[key]; } } if (Buffer3.from && Buffer3.alloc && Buffer3.allocUnsafe && Buffer3.allocUnsafeSlow) { module.exports = buffer; } else { copyProps(buffer, exports); exports.Buffer = SafeBuffer; } function SafeBuffer(arg, encodingOrOffset, length) { return Buffer3(arg, encodingOrOffset, length); } SafeBuffer.prototype = Object.create(Buffer3.prototype); copyProps(Buffer3, SafeBuffer); SafeBuffer.from = function(arg, encodingOrOffset, length) { if (typeof arg === "number") { throw new TypeError("Argument must not be a number"); } return Buffer3(arg, encodingOrOffset, length); }; SafeBuffer.alloc = function(size, fill, encoding) { if (typeof size !== "number") { throw new TypeError("Argument must be a number"); } var buf = Buffer3(size); if (fill !== void 0) { if (typeof encoding === "string") { buf.fill(fill, encoding); } else { buf.fill(fill); } } else { buf.fill(0); } return buf; }; SafeBuffer.allocUnsafe = function(size) { if (typeof size !== "number") { throw new TypeError("Argument must be a number"); } return Buffer3(size); }; SafeBuffer.allocUnsafeSlow = function(size) { if (typeof size !== "number") { throw new TypeError("Argument must be a number"); } return buffer.SlowBuffer(size); }; } }); // node_modules/string_decoder/lib/string_decoder.js var require_string_decoder = __commonJS({ "node_modules/string_decoder/lib/string_decoder.js"(exports) { "use strict"; init_process_shim(); var Buffer3 = require_safe_buffer().Buffer; var isEncoding = Buffer3.isEncoding || function(encoding) { encoding = "" + encoding; switch (encoding && encoding.toLowerCase()) { case "hex": case "utf8": case "utf-8": case "ascii": case "binary": case "base64": case "ucs2": case "ucs-2": case "utf16le": case "utf-16le": case "raw": return true; default: return false; } }; function _normalizeEncoding(enc) { if (!enc) return "utf8"; var retried; while (true) { switch (enc) { case "utf8": case "utf-8": return "utf8"; case "ucs2": case "ucs-2": case "utf16le": case "utf-16le": return "utf16le"; case "latin1": case "binary": return "latin1"; case "base64": case "ascii": case "hex": return enc; default: if (retried) return; enc = ("" + enc).toLowerCase(); retried = true; } } } function normalizeEncoding(enc) { var nenc = _normalizeEncoding(enc); if (typeof nenc !== "string" && (Buffer3.isEncoding === isEncoding || !isEncoding(enc))) throw new Error("Unknown encoding: " + enc); return nenc || enc; } exports.StringDecoder = StringDecoder; function StringDecoder(encoding) { this.encoding = normalizeEncoding(encoding); var nb; switch (this.encoding) { case "utf16le": this.text = utf16Text; this.end = utf16End; nb = 4; break; case "utf8": this.fillLast = utf8FillLast; nb = 4; break; case "base64": this.text = base64Text; this.end = base64End; nb = 3; break; default: this.write = simpleWrite; this.end = simpleEnd; return; } this.lastNeed = 0; this.lastTotal = 0; this.lastChar = Buffer3.allocUnsafe(nb); } StringDecoder.prototype.write = function(buf) { if (buf.length === 0) return ""; var r; var i; if (this.lastNeed) { r = this.fillLast(buf); if (r === void 0) return ""; i = this.lastNeed; this.lastNeed = 0; } else { i = 0; } if (i < buf.length) return r ? r + this.text(buf, i) : this.text(buf, i); return r || ""; }; StringDecoder.prototype.end = utf8End; StringDecoder.prototype.text = utf8Text; StringDecoder.prototype.fillLast = function(buf) { if (this.lastNeed <= buf.length) { buf.copy(this.lastChar, this.lastTotal - this.lastNeed, 0, this.lastNeed); return this.lastChar.toString(this.encoding, 0, this.lastTotal); } buf.copy(this.lastChar, this.lastTotal - this.lastNeed, 0, buf.length); this.lastNeed -= buf.length; }; function utf8CheckByte(byte) { if (byte <= 127) return 0; else if (byte >> 5 === 6) return 2; else if (byte >> 4 === 14) return 3; else if (byte >> 3 === 30) return 4; return byte >> 6 === 2 ? -1 : -2; } function utf8CheckIncomplete(self2, buf, i) { var j = buf.length - 1; if (j < i) return 0; var nb = utf8CheckByte(buf[j]); if (nb >= 0) { if (nb > 0) self2.lastNeed = nb - 1; return nb; } if (--j < i || nb === -2) return 0; nb = utf8CheckByte(buf[j]); if (nb >= 0) { if (nb > 0) self2.lastNeed = nb - 2; return nb; } if (--j < i || nb === -2) return 0; nb = utf8CheckByte(buf[j]); if (nb >= 0) { if (nb > 0) { if (nb === 2) nb = 0; else self2.lastNeed = nb - 3; } return nb; } return 0; } function utf8CheckExtraBytes(self2, buf, p) { if ((buf[0] & 192) !== 128) { self2.lastNeed = 0; return "\uFFFD"; } if (self2.lastNeed > 1 && buf.length > 1) { if ((buf[1] & 192) !== 128) { self2.lastNeed = 1; return "\uFFFD"; } if (self2.lastNeed > 2 && buf.length > 2) { if ((buf[2] & 192) !== 128) { self2.lastNeed = 2; return "\uFFFD"; } } } } function utf8FillLast(buf) { var p = this.lastTotal - this.lastNeed; var r = utf8CheckExtraBytes(this, buf, p); if (r !== void 0) return r; if (this.lastNeed <= buf.length) { buf.copy(this.lastChar, p, 0, this.lastNeed); return this.lastChar.toString(this.encoding, 0, this.lastTotal); } buf.copy(this.lastChar, p, 0, buf.length); this.lastNeed -= buf.length; } function utf8Text(buf, i) { var total = utf8CheckIncomplete(this, buf, i); if (!this.lastNeed) return buf.toString("utf8", i); this.lastTotal = total; var end = buf.length - (total - this.lastNeed); buf.copy(this.lastChar, 0, end); return buf.toString("utf8", i, end); } function utf8End(buf) { var r = buf && buf.length ? this.write(buf) : ""; if (this.lastNeed) return r + "\uFFFD"; return r; } function utf16Text(buf, i) { if ((buf.length - i) % 2 === 0) { var r = buf.toString("utf16le", i); if (r) { var c = r.charCodeAt(r.length - 1); if (c >= 55296 && c <= 56319) { this.lastNeed = 2; this.lastTotal = 4; this.lastChar[0] = buf[buf.length - 2]; this.lastChar[1] = buf[buf.length - 1]; return r.slice(0, -1); } } return r; } this.lastNeed = 1; this.lastTotal = 2; this.lastChar[0] = buf[buf.length - 1]; return buf.toString("utf16le", i, buf.length - 1); } function utf16End(buf) { var r = buf && buf.length ? this.write(buf) : ""; if (this.lastNeed) { var end = this.lastTotal - this.lastNeed; return r + this.lastChar.toString("utf16le", 0, end); } return r; } function base64Text(buf, i) { var n = (buf.length - i) % 3; if (n === 0) return buf.toString("base64", i); this.lastNeed = 3 - n; this.lastTotal = 3; if (n === 1) { this.lastChar[0] = buf[buf.length - 1]; } else { this.lastChar[0] = buf[buf.length - 2]; this.lastChar[1] = buf[buf.length - 1]; } return buf.toString("base64", i, buf.length - n); } function base64End(buf) { var r = buf && buf.length ? this.write(buf) : ""; if (this.lastNeed) return r + this.lastChar.toString("base64", 0, 3 - this.lastNeed); return r; } function simpleWrite(buf) { return buf.toString(this.encoding); } function simpleEnd(buf) { return buf && buf.length ? this.write(buf) : ""; } } }); // node_modules/readable-stream/lib/internal/streams/from.js var require_from = __commonJS({ "node_modules/readable-stream/lib/internal/streams/from.js"(exports, module) { "use strict"; init_process_shim(); var process2 = require_browser(); var { PromisePrototypeThen, SymbolAsyncIterator, SymbolIterator } = require_primordials(); var { Buffer: Buffer3 } = require_buffer(); var { ERR_INVALID_ARG_TYPE: ERR_INVALID_ARG_TYPE2, ERR_STREAM_NULL_VALUES } = require_errors().codes; function from(Readable, iterable, opts) { let iterator; if (typeof iterable === "string" || iterable instanceof Buffer3) { return new Readable({ objectMode: true, ...opts, read() { this.push(iterable); this.push(null); } }); } let isAsync; if (iterable && iterable[SymbolAsyncIterator]) { isAsync = true; iterator = iterable[SymbolAsyncIterator](); } else if (iterable && iterable[SymbolIterator]) { isAsync = false; iterator = iterable[SymbolIterator](); } else { throw new ERR_INVALID_ARG_TYPE2("iterable", ["Iterable"], iterable); } const readable = new Readable({ objectMode: true, highWaterMark: 1, // TODO(ronag): What options should be allowed? ...opts }); let reading = false; readable._read = function() { if (!reading) { reading = true; next(); } }; readable._destroy = function(error, cb) { PromisePrototypeThen( close(error), () => process2.nextTick(cb, error), // nextTick is here in case cb throws (e) => process2.nextTick(cb, e || error) ); }; async function close(error) { const hadError = error !== void 0 && error !== null; const hasThrow = typeof iterator.throw === "function"; if (hadError && hasThrow) { const { value, done } = await iterator.throw(error); await value; if (done) { return; } } if (typeof iterator.return === "function") { const { value } = await iterator.return(); await value; } } async function next() { for (; ; ) { try { const { value, done } = isAsync ? await iterator.next() : iterator.next(); if (done) { readable.push(null); } else { const res = value && typeof value.then === "function" ? await value : value; if (res === null) { reading = false; throw new ERR_STREAM_NULL_VALUES(); } else if (readable.push(res)) { continue; } else { reading = false; } } } catch (err) { readable.destroy(err); } break; } } return readable; } module.exports = from; } }); // node_modules/readable-stream/lib/internal/streams/readable.js var require_readable = __commonJS({ "node_modules/readable-stream/lib/internal/streams/readable.js"(exports, module) { init_process_shim(); var process2 = require_browser(); var { ArrayPrototypeIndexOf, NumberIsInteger, NumberIsNaN, NumberParseInt, ObjectDefineProperties, ObjectKeys, ObjectSetPrototypeOf, Promise: Promise2, SafeSet, SymbolAsyncDispose, SymbolAsyncIterator, Symbol: Symbol2 } = require_primordials(); module.exports = Readable; Readable.ReadableState = ReadableState; var { EventEmitter: EE } = require_events(); var { Stream, prependListener } = require_legacy(); var { Buffer: Buffer3 } = require_buffer(); var { addAbortSignal } = require_add_abort_signal(); var eos = require_end_of_stream(); var debug = require_util().debuglog("stream", (fn) => { debug = fn; }); var BufferList = require_buffer_list(); var destroyImpl = require_destroy(); var { getHighWaterMark, getDefaultHighWaterMark } = require_state(); var { aggregateTwoErrors, codes: { ERR_INVALID_ARG_TYPE: ERR_INVALID_ARG_TYPE2, ERR_METHOD_NOT_IMPLEMENTED, ERR_OUT_OF_RANGE, ERR_STREAM_PUSH_AFTER_EOF, ERR_STREAM_UNSHIFT_AFTER_END_EVENT }, AbortError } = require_errors(); var { validateObject } = require_validators(); var kPaused = Symbol2("kPaused"); var { StringDecoder } = require_string_decoder(); var from = require_from(); ObjectSetPrototypeOf(Readable.prototype, Stream.prototype); ObjectSetPrototypeOf(Readable, Stream); var nop = () => { }; var { errorOrDestroy } = destroyImpl; var kObjectMode = 1 << 0; var kEnded = 1 << 1; var kEndEmitted = 1 << 2; var kReading = 1 << 3; var kConstructed = 1 << 4; var kSync = 1 << 5; var kNeedReadable = 1 << 6; var kEmittedReadable = 1 << 7; var kReadableListening = 1 << 8; var kResumeScheduled = 1 << 9; var kErrorEmitted = 1 << 10; var kEmitClose = 1 << 11; var kAutoDestroy = 1 << 12; var kDestroyed = 1 << 13; var kClosed = 1 << 14; var kCloseEmitted = 1 << 15; var kMultiAwaitDrain = 1 << 16; var kReadingMore = 1 << 17; var kDataEmitted = 1 << 18; function makeBitMapDescriptor(bit) { return { enumerable: false, get() { return (this.state & bit) !== 0; }, set(value) { if (value) this.state |= bit; else this.state &= ~bit; } }; } ObjectDefineProperties(ReadableState.prototype, { objectMode: makeBitMapDescriptor(kObjectMode), ended: makeBitMapDescriptor(kEnded), endEmitted: makeBitMapDescriptor(kEndEmitted), reading: makeBitMapDescriptor(kReading), // Stream is still being constructed and cannot be // destroyed until construction finished or failed. // Async construction is opt in, therefore we start as // constructed. constructed: makeBitMapDescriptor(kConstructed), // A flag to be able to tell if the event 'readable'/'data' is emitted // immediately, or on a later tick. We set this to true at first, because // any actions that shouldn't happen until "later" should generally also // not happen before the first read call. sync: makeBitMapDescriptor(kSync), // Whenever we return null, then we set a flag to say // that we're awaiting a 'readable' event emission. needReadable: makeBitMapDescriptor(kNeedReadable), emittedReadable: makeBitMapDescriptor(kEmittedReadable), readableListening: makeBitMapDescriptor(kReadableListening), resumeScheduled: makeBitMapDescriptor(kResumeScheduled), // True if the error was already emitted and should not be thrown again. errorEmitted: makeBitMapDescriptor(kErrorEmitted), emitClose: makeBitMapDescriptor(kEmitClose), autoDestroy: makeBitMapDescriptor(kAutoDestroy), // Has it been destroyed. destroyed: makeBitMapDescriptor(kDestroyed), // Indicates whether the stream has finished destroying. closed: makeBitMapDescriptor(kClosed), // True if close has been emitted or would have been emitted // depending on emitClose. closeEmitted: makeBitMapDescriptor(kCloseEmitted), multiAwaitDrain: makeBitMapDescriptor(kMultiAwaitDrain), // If true, a maybeReadMore has been scheduled. readingMore: makeBitMapDescriptor(kReadingMore), dataEmitted: makeBitMapDescriptor(kDataEmitted) }); function ReadableState(options, stream, isDuplex) { if (typeof isDuplex !== "boolean") isDuplex = stream instanceof require_duplex(); this.state = kEmitClose | kAutoDestroy | kConstructed | kSync; if (options && options.objectMode) this.state |= kObjectMode; if (isDuplex && options && options.readableObjectMode) this.state |= kObjectMode; this.highWaterMark = options ? getHighWaterMark(this, options, "readableHighWaterMark", isDuplex) : getDefaultHighWaterMark(false); this.buffer = new BufferList(); this.length = 0; this.pipes = []; this.flowing = null; this[kPaused] = null; if (options && options.emitClose === false) this.state &= ~kEmitClose; if (options && options.autoDestroy === false) this.state &= ~kAutoDestroy; this.errored = null; this.defaultEncoding = options && options.defaultEncoding || "utf8"; this.awaitDrainWriters = null; this.decoder = null; this.encoding = null; if (options && options.encoding) { this.decoder = new StringDecoder(options.encoding); this.encoding = options.encoding; } } function Readable(options) { if (!(this instanceof Readable)) return new Readable(options); const isDuplex = this instanceof require_duplex(); this._readableState = new ReadableState(options, this, isDuplex); if (options) { if (typeof options.read === "function") this._read = options.read; if (typeof options.destroy === "function") this._destroy = options.destroy; if (typeof options.construct === "function") this._construct = options.construct; if (options.signal && !isDuplex) addAbortSignal(options.signal, this); } Stream.call(this, options); destroyImpl.construct(this, () => { if (this._readableState.needReadable) { maybeReadMore(this, this._readableState); } }); } Readable.prototype.destroy = destroyImpl.destroy; Readable.prototype._undestroy = destroyImpl.undestroy; Readable.prototype._destroy = function(err, cb) { cb(err); }; Readable.prototype[EE.captureRejectionSymbol] = function(err) { this.destroy(err); }; Readable.prototype[SymbolAsyncDispose] = function() { let error; if (!this.destroyed) { error = this.readableEnded ? null : new AbortError(); this.destroy(error); } return new Promise2((resolve, reject) => eos(this, (err) => err && err !== error ? reject(err) : resolve(null))); }; Readable.prototype.push = function(chunk, encoding) { return readableAddChunk(this, chunk, encoding, false); }; Readable.prototype.unshift = function(chunk, encoding) { return readableAddChunk(this, chunk, encoding, true); }; function readableAddChunk(stream, chunk, encoding, addToFront) { debug("readableAddChunk", chunk); const state = stream._readableState; let err; if ((state.state & kObjectMode) === 0) { if (typeof chunk === "string") { encoding = encoding || state.defaultEncoding; if (state.encoding !== encoding) { if (addToFront && state.encoding) { chunk = Buffer3.from(chunk, encoding).toString(state.encoding); } else { chunk = Buffer3.from(chunk, encoding); encoding = ""; } } } else if (chunk instanceof Buffer3) { encoding = ""; } else if (Stream._isUint8Array(chunk)) { chunk = Stream._uint8ArrayToBuffer(chunk); encoding = ""; } else if (chunk != null) { err = new ERR_INVALID_ARG_TYPE2("chunk", ["string", "Buffer", "Uint8Array"], chunk); } } if (err) { errorOrDestroy(stream, err); } else if (chunk === null) { state.state &= ~kReading; onEofChunk(stream, state); } else if ((state.state & kObjectMode) !== 0 || chunk && chunk.length > 0) { if (addToFront) { if ((state.state & kEndEmitted) !== 0) errorOrDestroy(stream, new ERR_STREAM_UNSHIFT_AFTER_END_EVENT()); else if (state.destroyed || state.errored) return false; else addChunk(stream, state, chunk, true); } else if (state.ended) { errorOrDestroy(stream, new ERR_STREAM_PUSH_AFTER_EOF()); } else if (state.destroyed || state.errored) { return false; } else { state.state &= ~kReading; if (state.decoder && !encoding) { chunk = state.decoder.write(chunk); if (state.objectMode || chunk.length !== 0) addChunk(stream, state, chunk, false); else maybeReadMore(stream, state); } else { addChunk(stream, state, chunk, false); } } } else if (!addToFront) { state.state &= ~kReading; maybeReadMore(stream, state); } return !state.ended && (state.length < state.highWaterMark || state.length === 0); } function addChunk(stream, state, chunk, addToFront) { if (state.flowing && state.length === 0 && !state.sync && stream.listenerCount("data") > 0) { if ((state.state & kMultiAwaitDrain) !== 0) { state.awaitDrainWriters.clear(); } else { state.awaitDrainWriters = null; } state.dataEmitted = true; stream.emit("data", chunk); } else { state.length += state.objectMode ? 1 : chunk.length; if (addToFront) state.buffer.unshift(chunk); else state.buffer.push(chunk); if ((state.state & kNeedReadable) !== 0) emitReadable(stream); } maybeReadMore(stream, state); } Readable.prototype.isPaused = function() { const state = this._readableState; return state[kPaused] === true || state.flowing === false; }; Readable.prototype.setEncoding = function(enc) { const decoder = new StringDecoder(enc); this._readableState.decoder = decoder; this._readableState.encoding = this._readableState.decoder.encoding; const buffer = this._readableState.buffer; let content = ""; for (const data of buffer) { content += decoder.write(data); } buffer.clear(); if (content !== "") buffer.push(content); this._readableState.length = content.length; return this; }; var MAX_HWM = 1073741824; function computeNewHighWaterMark(n) { if (n > MAX_HWM) { throw new ERR_OUT_OF_RANGE("size", "<= 1GiB", n); } else { n--; n |= n >>> 1; n |= n >>> 2; n |= n >>> 4; n |= n >>> 8; n |= n >>> 16; n++; } return n; } function howMuchToRead(n, state) { if (n <= 0 || state.length === 0 && state.ended) return 0; if ((state.state & kObjectMode) !== 0) return 1; if (NumberIsNaN(n)) { if (state.flowing && state.length) return state.buffer.first().length; return state.length; } if (n <= state.length) return n; return state.ended ? state.length : 0; } Readable.prototype.read = function(n) { debug("read", n); if (n === void 0) { n = NaN; } else if (!NumberIsInteger(n)) { n = NumberParseInt(n, 10); } const state = this._readableState; const nOrig = n; if (n > state.highWaterMark) state.highWaterMark = computeNewHighWaterMark(n); if (n !== 0) state.state &= ~kEmittedReadable; if (n === 0 && state.needReadable && ((state.highWaterMark !== 0 ? state.length >= state.highWaterMark : state.length > 0) || state.ended)) { debug("read: emitReadable", state.length, state.ended); if (state.length === 0 && state.ended) endReadable(this); else emitReadable(this); return null; } n = howMuchToRead(n, state); if (n === 0 && state.ended) { if (state.length === 0) endReadable(this); return null; } let doRead = (state.state & kNeedReadable) !== 0; debug("need readable", doRead); if (state.length === 0 || state.length - n < state.highWaterMark) { doRead = true; debug("length less than watermark", doRead); } if (state.ended || state.reading || state.destroyed || state.errored || !state.constructed) { doRead = false; debug("reading, ended or constructing", doRead); } else if (doRead) { debug("do read"); state.state |= kReading | kSync; if (state.length === 0) state.state |= kNeedReadable; try { this._read(state.highWaterMark); } catch (err) { errorOrDestroy(this, err); } state.state &= ~kSync; if (!state.reading) n = howMuchToRead(nOrig, state); } let ret; if (n > 0) ret = fromList(n, state); else ret = null; if (ret === null) { state.needReadable = state.length <= state.highWaterMark; n = 0; } else { state.length -= n; if (state.multiAwaitDrain) { state.awaitDrainWriters.clear(); } else { state.awaitDrainWriters = null; } } if (state.length === 0) { if (!state.ended) state.needReadable = true; if (nOrig !== n && state.ended) endReadable(this); } if (ret !== null && !state.errorEmitted && !state.closeEmitted) { state.dataEmitted = true; this.emit("data", ret); } return ret; }; function onEofChunk(stream, state) { debug("onEofChunk"); if (state.ended) return; if (state.decoder) { const chunk = state.decoder.end(); if (chunk && chunk.length) { state.buffer.push(chunk); state.length += state.objectMode ? 1 : chunk.length; } } state.ended = true; if (state.sync) { emitReadable(stream); } else { state.needReadable = false; state.emittedReadable = true; emitReadable_(stream); } } function emitReadable(stream) { const state = stream._readableState; debug("emitReadable", state.needReadable, state.emittedReadable); state.needReadable = false; if (!state.emittedReadable) { debug("emitReadable", state.flowing); state.emittedReadable = true; process2.nextTick(emitReadable_, stream); } } function emitReadable_(stream) { const state = stream._readableState; debug("emitReadable_", state.destroyed, state.length, state.ended); if (!state.destroyed && !state.errored && (state.length || state.ended)) { stream.emit("readable"); state.emittedReadable = false; } state.needReadable = !state.flowing && !state.ended && state.length <= state.highWaterMark; flow(stream); } function maybeReadMore(stream, state) { if (!state.readingMore && state.constructed) { state.readingMore = true; process2.nextTick(maybeReadMore_, stream, state); } } function maybeReadMore_(stream, state) { while (!state.reading && !state.ended && (state.length < state.highWaterMark || state.flowing && state.length === 0)) { const len = state.length; debug("maybeReadMore read 0"); stream.read(0); if (len === state.length) break; } state.readingMore = false; } Readable.prototype._read = function(n) { throw new ERR_METHOD_NOT_IMPLEMENTED("_read()"); }; Readable.prototype.pipe = function(dest, pipeOpts) { const src = this; const state = this._readableState; if (state.pipes.length === 1) { if (!state.multiAwaitDrain) { state.multiAwaitDrain = true; state.awaitDrainWriters = new SafeSet(state.awaitDrainWriters ? [state.awaitDrainWriters] : []); } } state.pipes.push(dest); debug("pipe count=%d opts=%j", state.pipes.length, pipeOpts); const doEnd = (!pipeOpts || pipeOpts.end !== false) && dest !== process2.stdout && dest !== process2.stderr; const endFn = doEnd ? onend : unpipe; if (state.endEmitted) process2.nextTick(endFn); else src.once("end", endFn); dest.on("unpipe", onunpipe); function onunpipe(readable, unpipeInfo) { debug("onunpipe"); if (readable === src) { if (unpipeInfo && unpipeInfo.hasUnpiped === false) { unpipeInfo.hasUnpiped = true; cleanup(); } } } function onend() { debug("onend"); dest.end(); } let ondrain; let cleanedUp = false; function cleanup() { debug("cleanup"); dest.removeListener("close", onclose); dest.removeListener("finish", onfinish); if (ondrain) { dest.removeListener("drain", ondrain); } dest.removeListener("error", onerror); dest.removeListener("unpipe", onunpipe); src.removeListener("end", onend); src.removeListener("end", unpipe); src.removeListener("data", ondata); cleanedUp = true; if (ondrain && state.awaitDrainWriters && (!dest._writableState || dest._writableState.needDrain)) ondrain(); } function pause() { if (!cleanedUp) { if (state.pipes.length === 1 && state.pipes[0] === dest) { debug("false write response, pause", 0); state.awaitDrainWriters = dest; state.multiAwaitDrain = false; } else if (state.pipes.length > 1 && state.pipes.includes(dest)) { debug("false write response, pause", state.awaitDrainWriters.size); state.awaitDrainWriters.add(dest); } src.pause(); } if (!ondrain) { ondrain = pipeOnDrain(src, dest); dest.on("drain", ondrain); } } src.on("data", ondata); function ondata(chunk) { debug("ondata"); const ret = dest.write(chunk); debug("dest.write", ret); if (ret === false) { pause(); } } function onerror(er) { debug("onerror", er); unpipe(); dest.removeListener("error", onerror); if (dest.listenerCount("error") === 0) { const s = dest._writableState || dest._readableState; if (s && !s.errorEmitted) { errorOrDestroy(dest, er); } else { dest.emit("error", er); } } } prependListener(dest, "error", onerror); function onclose() { dest.removeListener("finish", onfinish); unpipe(); } dest.once("close", onclose); function onfinish() { debug("onfinish"); dest.removeListener("close", onclose); unpipe(); } dest.once("finish", onfinish); function unpipe() { debug("unpipe"); src.unpipe(dest); } dest.emit("pipe", src); if (dest.writableNeedDrain === true) { pause(); } else if (!state.flowing) { debug("pipe resume"); src.resume(); } return dest; }; function pipeOnDrain(src, dest) { return function pipeOnDrainFunctionResult() { const state = src._readableState; if (state.awaitDrainWriters === dest) { debug("pipeOnDrain", 1); state.awaitDrainWriters = null; } else if (state.multiAwaitDrain) { debug("pipeOnDrain", state.awaitDrainWriters.size); state.awaitDrainWriters.delete(dest); } if ((!state.awaitDrainWriters || state.awaitDrainWriters.size === 0) && src.listenerCount("data")) { src.resume(); } }; } Readable.prototype.unpipe = function(dest) { const state = this._readableState; const unpipeInfo = { hasUnpiped: false }; if (state.pipes.length === 0) return this; if (!dest) { const dests = state.pipes; state.pipes = []; this.pause(); for (let i = 0; i < dests.length; i++) dests[i].emit("unpipe", this, { hasUnpiped: false }); return this; } const index = ArrayPrototypeIndexOf(state.pipes, dest); if (index === -1) return this; state.pipes.splice(index, 1); if (state.pipes.length === 0) this.pause(); dest.emit("unpipe", this, unpipeInfo); return this; }; Readable.prototype.on = function(ev, fn) { const res = Stream.prototype.on.call(this, ev, fn); const state = this._readableState; if (ev === "data") { state.readableListening = this.listenerCount("readable") > 0; if (state.flowing !== false) this.resume(); } else if (ev === "readable") { if (!state.endEmitted && !state.readableListening) { state.readableListening = state.needReadable = true; state.flowing = false; state.emittedReadable = false; debug("on readable", state.length, state.reading); if (state.length) { emitReadable(this); } else if (!state.reading) { process2.nextTick(nReadingNextTick, this); } } } return res; }; Readable.prototype.addListener = Readable.prototype.on; Readable.prototype.removeListener = function(ev, fn) { const res = Stream.prototype.removeListener.call(this, ev, fn); if (ev === "readable") { process2.nextTick(updateReadableListening, this); } return res; }; Readable.prototype.off = Readable.prototype.removeListener; Readable.prototype.removeAllListeners = function(ev) { const res = Stream.prototype.removeAllListeners.apply(this, arguments); if (ev === "readable" || ev === void 0) { process2.nextTick(updateReadableListening, this); } return res; }; function updateReadableListening(self2) { const state = self2._readableState; state.readableListening = self2.listenerCount("readable") > 0; if (state.resumeScheduled && state[kPaused] === false) { state.flowing = true; } else if (self2.listenerCount("data") > 0) { self2.resume(); } else if (!state.readableListening) { state.flowing = null; } } function nReadingNextTick(self2) { debug("readable nexttick read 0"); self2.read(0); } Readable.prototype.resume = function() { const state = this._readableState; if (!state.flowing) { debug("resume"); state.flowing = !state.readableListening; resume(this, state); } state[kPaused] = false; return this; }; function resume(stream, state) { if (!state.resumeScheduled) { state.resumeScheduled = true; process2.nextTick(resume_, stream, state); } } function resume_(stream, state) { debug("resume", state.reading); if (!state.reading) { stream.read(0); } state.resumeScheduled = false; stream.emit("resume"); flow(stream); if (state.flowing && !state.reading) stream.read(0); } Readable.prototype.pause = function() { debug("call pause flowing=%j", this._readableState.flowing); if (this._readableState.flowing !== false) { debug("pause"); this._readableState.flowing = false; this.emit("pause"); } this._readableState[kPaused] = true; return this; }; function flow(stream) { const state = stream._readableState; debug("flow", state.flowing); while (state.flowing && stream.read() !== null) ; } Readable.prototype.wrap = function(stream) { let paused = false; stream.on("data", (chunk) => { if (!this.push(chunk) && stream.pause) { paused = true; stream.pause(); } }); stream.on("end", () => { this.push(null); }); stream.on("error", (err) => { errorOrDestroy(this, err); }); stream.on("close", () => { this.destroy(); }); stream.on("destroy", () => { this.destroy(); }); this._read = () => { if (paused && stream.resume) { paused = false; stream.resume(); } }; const streamKeys = ObjectKeys(stream); for (let j = 1; j < streamKeys.length; j++) { const i = streamKeys[j]; if (this[i] === void 0 && typeof stream[i] === "function") { this[i] = stream[i].bind(stream); } } return this; }; Readable.prototype[SymbolAsyncIterator] = function() { return streamToAsyncIterator(this); }; Readable.prototype.iterator = function(options) { if (options !== void 0) { validateObject(options, "options"); } return streamToAsyncIterator(this, options); }; function streamToAsyncIterator(stream, options) { if (typeof stream.read !== "function") { stream = Readable.wrap(stream, { objectMode: true }); } const iter = createAsyncIterator(stream, options); iter.stream = stream; return iter; } async function* createAsyncIterator(stream, options) { let callback = nop; function next(resolve) { if (this === stream) { callback(); callback = nop; } else { callback = resolve; } } stream.on("readable", next); let error; const cleanup = eos( stream, { writable: false }, (err) => { error = err ? aggregateTwoErrors(error, err) : null; callback(); callback = nop; } ); try { while (true) { const chunk = stream.destroyed ? null : stream.read(); if (chunk !== null) { yield chunk; } else if (error) { throw error; } else if (error === null) { return; } else { await new Promise2(next); } } } catch (err) { error = aggregateTwoErrors(error, err); throw error; } finally { if ((error || (options === null || options === void 0 ? void 0 : options.destroyOnReturn) !== false) && (error === void 0 || stream._readableState.autoDestroy)) { destroyImpl.destroyer(stream, null); } else { stream.off("readable", next); cleanup(); } } } ObjectDefineProperties(Readable.prototype, { readable: { __proto__: null, get() { const r = this._readableState; return !!r && r.readable !== false && !r.destroyed && !r.errorEmitted && !r.endEmitted; }, set(val) { if (this._readableState) { this._readableState.readable = !!val; } } }, readableDidRead: { __proto__: null, enumerable: false, get: function() { return this._readableState.dataEmitted; } }, readableAborted: { __proto__: null, enumerable: false, get: function() { return !!(this._readableState.readable !== false && (this._readableState.destroyed || this._readableState.errored) && !this._readableState.endEmitted); } }, readableHighWaterMark: { __proto__: null, enumerable: false, get: function() { return this._readableState.highWaterMark; } }, readableBuffer: { __proto__: null, enumerable: false, get: function() { return this._readableState && this._readableState.buffer; } }, readableFlowing: { __proto__: null, enumerable: false, get: function() { return this._readableState.flowing; }, set: function(state) { if (this._readableState) { this._readableState.flowing = state; } } }, readableLength: { __proto__: null, enumerable: false, get() { return this._readableState.length; } }, readableObjectMode: { __proto__: null, enumerable: false, get() { return this._readableState ? this._readableState.objectMode : false; } }, readableEncoding: { __proto__: null, enumerable: false, get() { return this._readableState ? this._readableState.encoding : null; } }, errored: { __proto__: null, enumerable: false, get() { return this._readableState ? this._readableState.errored : null; } }, closed: { __proto__: null, get() { return this._readableState ? this._readableState.closed : false; } }, destroyed: { __proto__: null, enumerable: false, get() { return this._readableState ? this._readableState.destroyed : false; }, set(value) { if (!this._readableState) { return; } this._readableState.destroyed = value; } }, readableEnded: { __proto__: null, enumerable: false, get() { return this._readableState ? this._readableState.endEmitted : false; } } }); ObjectDefineProperties(ReadableState.prototype, { // Legacy getter for `pipesCount`. pipesCount: { __proto__: null, get() { return this.pipes.length; } }, // Legacy property for `paused`. paused: { __proto__: null, get() { return this[kPaused] !== false; }, set(value) { this[kPaused] = !!value; } } }); Readable._fromList = fromList; function fromList(n, state) { if (state.length === 0) return null; let ret; if (state.objectMode) ret = state.buffer.shift(); else if (!n || n >= state.length) { if (state.decoder) ret = state.buffer.join(""); else if (state.buffer.length === 1) ret = state.buffer.first(); else ret = state.buffer.concat(state.length); state.buffer.clear(); } else { ret = state.buffer.consume(n, state.decoder); } return ret; } function endReadable(stream) { const state = stream._readableState; debug("endReadable", state.endEmitted); if (!state.endEmitted) { state.ended = true; process2.nextTick(endReadableNT, state, stream); } } function endReadableNT(state, stream) { debug("endReadableNT", state.endEmitted, state.length); if (!state.errored && !state.closeEmitted && !state.endEmitted && state.length === 0) { state.endEmitted = true; stream.emit("end"); if (stream.writable && stream.allowHalfOpen === false) { process2.nextTick(endWritableNT, stream); } else if (state.autoDestroy) { const wState = stream._writableState; const autoDestroy = !wState || wState.autoDestroy && // We don't expect the writable to ever 'finish' // if writable is explicitly set to false. (wState.finished || wState.writable === false); if (autoDestroy) { stream.destroy(); } } } } function endWritableNT(stream) { const writable = stream.writable && !stream.writableEnded && !stream.destroyed; if (writable) { stream.end(); } } Readable.from = function(iterable, opts) { return from(Readable, iterable, opts); }; var webStreamsAdapters; function lazyWebStreams() { if (webStreamsAdapters === void 0) webStreamsAdapters = {}; return webStreamsAdapters; } Readable.fromWeb = function(readableStream, options) { return lazyWebStreams().newStreamReadableFromReadableStream(readableStream, options); }; Readable.toWeb = function(streamReadable, options) { return lazyWebStreams().newReadableStreamFromStreamReadable(streamReadable, options); }; Readable.wrap = function(src, options) { var _ref, _src$readableObjectMo; return new Readable({ objectMode: (_ref = (_src$readableObjectMo = src.readableObjectMode) !== null && _src$readableObjectMo !== void 0 ? _src$readableObjectMo : src.objectMode) !== null && _ref !== void 0 ? _ref : true, ...options, destroy(err, callback) { destroyImpl.destroyer(src, err); callback(err); } }).wrap(src); }; } }); // node_modules/readable-stream/lib/internal/streams/writable.js var require_writable = __commonJS({ "node_modules/readable-stream/lib/internal/streams/writable.js"(exports, module) { init_process_shim(); var process2 = require_browser(); var { ArrayPrototypeSlice, Error: Error2, FunctionPrototypeSymbolHasInstance, ObjectDefineProperty, ObjectDefineProperties, ObjectSetPrototypeOf, StringPrototypeToLowerCase, Symbol: Symbol2, SymbolHasInstance } = require_primordials(); module.exports = Writable; Writable.WritableState = WritableState; var { EventEmitter: EE } = require_events(); var Stream = require_legacy().Stream; var { Buffer: Buffer3 } = require_buffer(); var destroyImpl = require_destroy(); var { addAbortSignal } = require_add_abort_signal(); var { getHighWaterMark, getDefaultHighWaterMark } = require_state(); var { ERR_INVALID_ARG_TYPE: ERR_INVALID_ARG_TYPE2, ERR_METHOD_NOT_IMPLEMENTED, ERR_MULTIPLE_CALLBACK, ERR_STREAM_CANNOT_PIPE, ERR_STREAM_DESTROYED, ERR_STREAM_ALREADY_FINISHED, ERR_STREAM_NULL_VALUES, ERR_STREAM_WRITE_AFTER_END, ERR_UNKNOWN_ENCODING } = require_errors().codes; var { errorOrDestroy } = destroyImpl; ObjectSetPrototypeOf(Writable.prototype, Stream.prototype); ObjectSetPrototypeOf(Writable, Stream); function nop() { } var kOnFinished = Symbol2("kOnFinished"); function WritableState(options, stream, isDuplex) { if (typeof isDuplex !== "boolean") isDuplex = stream instanceof require_duplex(); this.objectMode = !!(options && options.objectMode); if (isDuplex) this.objectMode = this.objectMode || !!(options && options.writableObjectMode); this.highWaterMark = options ? getHighWaterMark(this, options, "writableHighWaterMark", isDuplex) : getDefaultHighWaterMark(false); this.finalCalled = false; this.needDrain = false; this.ending = false; this.ended = false; this.finished = false; this.destroyed = false; const noDecode = !!(options && options.decodeStrings === false); this.decodeStrings = !noDecode; this.defaultEncoding = options && options.defaultEncoding || "utf8"; this.length = 0; this.writing = false; this.corked = 0; this.sync = true; this.bufferProcessing = false; this.onwrite = onwrite.bind(void 0, stream); this.writecb = null; this.writelen = 0; this.afterWriteTickInfo = null; resetBuffer(this); this.pendingcb = 0; this.constructed = true; this.prefinished = false; this.errorEmitted = false; this.emitClose = !options || options.emitClose !== false; this.autoDestroy = !options || options.autoDestroy !== false; this.errored = null; this.closed = false; this.closeEmitted = false; this[kOnFinished] = []; } function resetBuffer(state) { state.buffered = []; state.bufferedIndex = 0; state.allBuffers = true; state.allNoop = true; } WritableState.prototype.getBuffer = function getBuffer() { return ArrayPrototypeSlice(this.buffered, this.bufferedIndex); }; ObjectDefineProperty(WritableState.prototype, "bufferedRequestCount", { __proto__: null, get() { return this.buffered.length - this.bufferedIndex; } }); function Writable(options) { const isDuplex = this instanceof require_duplex(); if (!isDuplex && !FunctionPrototypeSymbolHasInstance(Writable, this)) return new Writable(options); this._writableState = new WritableState(options, this, isDuplex); if (options) { if (typeof options.write === "function") this._write = options.write; if (typeof options.writev === "function") this._writev = options.writev; if (typeof options.destroy === "function") this._destroy = options.destroy; if (typeof options.final === "function") this._final = options.final; if (typeof options.construct === "function") this._construct = options.construct; if (options.signal) addAbortSignal(options.signal, this); } Stream.call(this, options); destroyImpl.construct(this, () => { const state = this._writableState; if (!state.writing) { clearBuffer(this, state); } finishMaybe(this, state); }); } ObjectDefineProperty(Writable, SymbolHasInstance, { __proto__: null, value: function(object) { if (FunctionPrototypeSymbolHasInstance(this, object)) return true; if (this !== Writable) return false; return object && object._writableState instanceof WritableState; } }); Writable.prototype.pipe = function() { errorOrDestroy(this, new ERR_STREAM_CANNOT_PIPE()); }; function _write(stream, chunk, encoding, cb) { const state = stream._writableState; if (typeof encoding === "function") { cb = encoding; encoding = state.defaultEncoding; } else { if (!encoding) encoding = state.defaultEncoding; else if (encoding !== "buffer" && !Buffer3.isEncoding(encoding)) throw new ERR_UNKNOWN_ENCODING(encoding); if (typeof cb !== "function") cb = nop; } if (chunk === null) { throw new ERR_STREAM_NULL_VALUES(); } else if (!state.objectMode) { if (typeof chunk === "string") { if (state.decodeStrings !== false) { chunk = Buffer3.from(chunk, encoding); encoding = "buffer"; } } else if (chunk instanceof Buffer3) { encoding = "buffer"; } else if (Stream._isUint8Array(chunk)) { chunk = Stream._uint8ArrayToBuffer(chunk); encoding = "buffer"; } else { throw new ERR_INVALID_ARG_TYPE2("chunk", ["string", "Buffer", "Uint8Array"], chunk); } } let err; if (state.ending) { err = new ERR_STREAM_WRITE_AFTER_END(); } else if (state.destroyed) { err = new ERR_STREAM_DESTROYED("write"); } if (err) { process2.nextTick(cb, err); errorOrDestroy(stream, err, true); return err; } state.pendingcb++; return writeOrBuffer(stream, state, chunk, encoding, cb); } Writable.prototype.write = function(chunk, encoding, cb) { return _write(this, chunk, encoding, cb) === true; }; Writable.prototype.cork = function() { this._writableState.corked++; }; Writable.prototype.uncork = function() { const state = this._writableState; if (state.corked) { state.corked--; if (!state.writing) clearBuffer(this, state); } }; Writable.prototype.setDefaultEncoding = function setDefaultEncoding(encoding) { if (typeof encoding === "string") encoding = StringPrototypeToLowerCase(encoding); if (!Buffer3.isEncoding(encoding)) throw new ERR_UNKNOWN_ENCODING(encoding); this._writableState.defaultEncoding = encoding; return this; }; function writeOrBuffer(stream, state, chunk, encoding, callback) { const len = state.objectMode ? 1 : chunk.length; state.length += len; const ret = state.length < state.highWaterMark; if (!ret) state.needDrain = true; if (state.writing || state.corked || state.errored || !state.constructed) { state.buffered.push({ chunk, encoding, callback }); if (state.allBuffers && encoding !== "buffer") { state.allBuffers = false; } if (state.allNoop && callback !== nop) { state.allNoop = false; } } else { state.writelen = len; state.writecb = callback; state.writing = true; state.sync = true; stream._write(chunk, encoding, state.onwrite); state.sync = false; } return ret && !state.errored && !state.destroyed; } function doWrite(stream, state, writev, len, chunk, encoding, cb) { state.writelen = len; state.writecb = cb; state.writing = true; state.sync = true; if (state.destroyed) state.onwrite(new ERR_STREAM_DESTROYED("write")); else if (writev) stream._writev(chunk, state.onwrite); else stream._write(chunk, encoding, state.onwrite); state.sync = false; } function onwriteError(stream, state, er, cb) { --state.pendingcb; cb(er); errorBuffer(state); errorOrDestroy(stream, er); } function onwrite(stream, er) { const state = stream._writableState; const sync = state.sync; const cb = state.writecb; if (typeof cb !== "function") { errorOrDestroy(stream, new ERR_MULTIPLE_CALLBACK()); return; } state.writing = false; state.writecb = null; state.length -= state.writelen; state.writelen = 0; if (er) { er.stack; if (!state.errored) { state.errored = er; } if (stream._readableState && !stream._readableState.errored) { stream._readableState.errored = er; } if (sync) { process2.nextTick(onwriteError, stream, state, er, cb); } else { onwriteError(stream, state, er, cb); } } else { if (state.buffered.length > state.bufferedIndex) { clearBuffer(stream, state); } if (sync) { if (state.afterWriteTickInfo !== null && state.afterWriteTickInfo.cb === cb) { state.afterWriteTickInfo.count++; } else { state.afterWriteTickInfo = { count: 1, cb, stream, state }; process2.nextTick(afterWriteTick, state.afterWriteTickInfo); } } else { afterWrite(stream, state, 1, cb); } } } function afterWriteTick({ stream, state, count, cb }) { state.afterWriteTickInfo = null; return afterWrite(stream, state, count, cb); } function afterWrite(stream, state, count, cb) { const needDrain = !state.ending && !stream.destroyed && state.length === 0 && state.needDrain; if (needDrain) { state.needDrain = false; stream.emit("drain"); } while (count-- > 0) { state.pendingcb--; cb(); } if (state.destroyed) { errorBuffer(state); } finishMaybe(stream, state); } function errorBuffer(state) { if (state.writing) { return; } for (let n = state.bufferedIndex; n < state.buffered.length; ++n) { var _state$errored; const { chunk, callback } = state.buffered[n]; const len = state.objectMode ? 1 : chunk.length; state.length -= len; callback( (_state$errored = state.errored) !== null && _state$errored !== void 0 ? _state$errored : new ERR_STREAM_DESTROYED("write") ); } const onfinishCallbacks = state[kOnFinished].splice(0); for (let i = 0; i < onfinishCallbacks.length; i++) { var _state$errored2; onfinishCallbacks[i]( (_state$errored2 = state.errored) !== null && _state$errored2 !== void 0 ? _state$errored2 : new ERR_STREAM_DESTROYED("end") ); } resetBuffer(state); } function clearBuffer(stream, state) { if (state.corked || state.bufferProcessing || state.destroyed || !state.constructed) { return; } const { buffered, bufferedIndex, objectMode } = state; const bufferedLength = buffered.length - bufferedIndex; if (!bufferedLength) { return; } let i = bufferedIndex; state.bufferProcessing = true; if (bufferedLength > 1 && stream._writev) { state.pendingcb -= bufferedLength - 1; const callback = state.allNoop ? nop : (err) => { for (let n = i; n < buffered.length; ++n) { buffered[n].callback(err); } }; const chunks = state.allNoop && i === 0 ? buffered : ArrayPrototypeSlice(buffered, i); chunks.allBuffers = state.allBuffers; doWrite(stream, state, true, state.length, chunks, "", callback); resetBuffer(state); } else { do { const { chunk, encoding, callback } = buffered[i]; buffered[i++] = null; const len = objectMode ? 1 : chunk.length; doWrite(stream, state, false, len, chunk, encoding, callback); } while (i < buffered.length && !state.writing); if (i === buffered.length) { resetBuffer(state); } else if (i > 256) { buffered.splice(0, i); state.bufferedIndex = 0; } else { state.bufferedIndex = i; } } state.bufferProcessing = false; } Writable.prototype._write = function(chunk, encoding, cb) { if (this._writev) { this._writev( [ { chunk, encoding } ], cb ); } else { throw new ERR_METHOD_NOT_IMPLEMENTED("_write()"); } }; Writable.prototype._writev = null; Writable.prototype.end = function(chunk, encoding, cb) { const state = this._writableState; if (typeof chunk === "function") { cb = chunk; chunk = null; encoding = null; } else if (typeof encoding === "function") { cb = encoding; encoding = null; } let err; if (chunk !== null && chunk !== void 0) { const ret = _write(this, chunk, encoding); if (ret instanceof Error2) { err = ret; } } if (state.corked) { state.corked = 1; this.uncork(); } if (err) { } else if (!state.errored && !state.ending) { state.ending = true; finishMaybe(this, state, true); state.ended = true; } else if (state.finished) { err = new ERR_STREAM_ALREADY_FINISHED("end"); } else if (state.destroyed) { err = new ERR_STREAM_DESTROYED("end"); } if (typeof cb === "function") { if (err || state.finished) { process2.nextTick(cb, err); } else { state[kOnFinished].push(cb); } } return this; }; function needFinish(state) { return state.ending && !state.destroyed && state.constructed && state.length === 0 && !state.errored && state.buffered.length === 0 && !state.finished && !state.writing && !state.errorEmitted && !state.closeEmitted; } function callFinal(stream, state) { let called = false; function onFinish(err) { if (called) { errorOrDestroy(stream, err !== null && err !== void 0 ? err : ERR_MULTIPLE_CALLBACK()); return; } called = true; state.pendingcb--; if (err) { const onfinishCallbacks = state[kOnFinished].splice(0); for (let i = 0; i < onfinishCallbacks.length; i++) { onfinishCallbacks[i](err); } errorOrDestroy(stream, err, state.sync); } else if (needFinish(state)) { state.prefinished = true; stream.emit("prefinish"); state.pendingcb++; process2.nextTick(finish, stream, state); } } state.sync = true; state.pendingcb++; try { stream._final(onFinish); } catch (err) { onFinish(err); } state.sync = false; } function prefinish(stream, state) { if (!state.prefinished && !state.finalCalled) { if (typeof stream._final === "function" && !state.destroyed) { state.finalCalled = true; callFinal(stream, state); } else { state.prefinished = true; stream.emit("prefinish"); } } } function finishMaybe(stream, state, sync) { if (needFinish(state)) { prefinish(stream, state); if (state.pendingcb === 0) { if (sync) { state.pendingcb++; process2.nextTick( (stream2, state2) => { if (needFinish(state2)) { finish(stream2, state2); } else { state2.pendingcb--; } }, stream, state ); } else if (needFinish(state)) { state.pendingcb++; finish(stream, state); } } } } function finish(stream, state) { state.pendingcb--; state.finished = true; const onfinishCallbacks = state[kOnFinished].splice(0); for (let i = 0; i < onfinishCallbacks.length; i++) { onfinishCallbacks[i](); } stream.emit("finish"); if (state.autoDestroy) { const rState = stream._readableState; const autoDestroy = !rState || rState.autoDestroy && // We don't expect the readable to ever 'end' // if readable is explicitly set to false. (rState.endEmitted || rState.readable === false); if (autoDestroy) { stream.destroy(); } } } ObjectDefineProperties(Writable.prototype, { closed: { __proto__: null, get() { return this._writableState ? this._writableState.closed : false; } }, destroyed: { __proto__: null, get() { return this._writableState ? this._writableState.destroyed : false; }, set(value) { if (this._writableState) { this._writableState.destroyed = value; } } }, writable: { __proto__: null, get() { const w = this._writableState; return !!w && w.writable !== false && !w.destroyed && !w.errored && !w.ending && !w.ended; }, set(val) { if (this._writableState) { this._writableState.writable = !!val; } } }, writableFinished: { __proto__: null, get() { return this._writableState ? this._writableState.finished : false; } }, writableObjectMode: { __proto__: null, get() { return this._writableState ? this._writableState.objectMode : false; } }, writableBuffer: { __proto__: null, get() { return this._writableState && this._writableState.getBuffer(); } }, writableEnded: { __proto__: null, get() { return this._writableState ? this._writableState.ending : false; } }, writableNeedDrain: { __proto__: null, get() { const wState = this._writableState; if (!wState) return false; return !wState.destroyed && !wState.ending && wState.needDrain; } }, writableHighWaterMark: { __proto__: null, get() { return this._writableState && this._writableState.highWaterMark; } }, writableCorked: { __proto__: null, get() { return this._writableState ? this._writableState.corked : 0; } }, writableLength: { __proto__: null, get() { return this._writableState && this._writableState.length; } }, errored: { __proto__: null, enumerable: false, get() { return this._writableState ? this._writableState.errored : null; } }, writableAborted: { __proto__: null, enumerable: false, get: function() { return !!(this._writableState.writable !== false && (this._writableState.destroyed || this._writableState.errored) && !this._writableState.finished); } } }); var destroy = destroyImpl.destroy; Writable.prototype.destroy = function(err, cb) { const state = this._writableState; if (!state.destroyed && (state.bufferedIndex < state.buffered.length || state[kOnFinished].length)) { process2.nextTick(errorBuffer, state); } destroy.call(this, err, cb); return this; }; Writable.prototype._undestroy = destroyImpl.undestroy; Writable.prototype._destroy = function(err, cb) { cb(err); }; Writable.prototype[EE.captureRejectionSymbol] = function(err) { this.destroy(err); }; var webStreamsAdapters; function lazyWebStreams() { if (webStreamsAdapters === void 0) webStreamsAdapters = {}; return webStreamsAdapters; } Writable.fromWeb = function(writableStream, options) { return lazyWebStreams().newStreamWritableFromWritableStream(writableStream, options); }; Writable.toWeb = function(streamWritable) { return lazyWebStreams().newWritableStreamFromStreamWritable(streamWritable); }; } }); // node_modules/readable-stream/lib/internal/streams/duplexify.js var require_duplexify = __commonJS({ "node_modules/readable-stream/lib/internal/streams/duplexify.js"(exports, module) { init_process_shim(); var process2 = require_browser(); var bufferModule = require_buffer(); var { isReadable, isWritable, isIterable, isNodeStream, isReadableNodeStream, isWritableNodeStream, isDuplexNodeStream, isReadableStream, isWritableStream } = require_utils(); var eos = require_end_of_stream(); var { AbortError, codes: { ERR_INVALID_ARG_TYPE: ERR_INVALID_ARG_TYPE2, ERR_INVALID_RETURN_VALUE } } = require_errors(); var { destroyer } = require_destroy(); var Duplex = require_duplex(); var Readable = require_readable(); var Writable = require_writable(); var { createDeferredPromise } = require_util(); var from = require_from(); var Blob = globalThis.Blob || bufferModule.Blob; var isBlob = typeof Blob !== "undefined" ? function isBlob2(b) { return b instanceof Blob; } : function isBlob2(b) { return false; }; var AbortController = globalThis.AbortController || (init_noop(), __toCommonJS(noop_exports)).AbortController; var { FunctionPrototypeCall } = require_primordials(); var Duplexify = class extends Duplex { constructor(options) { super(options); if ((options === null || options === void 0 ? void 0 : options.readable) === false) { this._readableState.readable = false; this._readableState.ended = true; this._readableState.endEmitted = true; } if ((options === null || options === void 0 ? void 0 : options.writable) === false) { this._writableState.writable = false; this._writableState.ending = true; this._writableState.ended = true; this._writableState.finished = true; } } }; module.exports = function duplexify(body, name) { if (isDuplexNodeStream(body)) { return body; } if (isReadableNodeStream(body)) { return _duplexify({ readable: body }); } if (isWritableNodeStream(body)) { return _duplexify({ writable: body }); } if (isNodeStream(body)) { return _duplexify({ writable: false, readable: false }); } if (isReadableStream(body)) { return _duplexify({ readable: Readable.fromWeb(body) }); } if (isWritableStream(body)) { return _duplexify({ writable: Writable.fromWeb(body) }); } if (typeof body === "function") { const { value, write, final, destroy } = fromAsyncGen(body); if (isIterable(value)) { return from(Duplexify, value, { // TODO (ronag): highWaterMark? objectMode: true, write, final, destroy }); } const then2 = value === null || value === void 0 ? void 0 : value.then; if (typeof then2 === "function") { let d; const promise = FunctionPrototypeCall( then2, value, (val) => { if (val != null) { throw new ERR_INVALID_RETURN_VALUE("nully", "body", val); } }, (err) => { destroyer(d, err); } ); return d = new Duplexify({ // TODO (ronag): highWaterMark? objectMode: true, readable: false, write, final(cb) { final(async () => { try { await promise; process2.nextTick(cb, null); } catch (err) { process2.nextTick(cb, err); } }); }, destroy }); } throw new ERR_INVALID_RETURN_VALUE("Iterable, AsyncIterable or AsyncFunction", name, value); } if (isBlob(body)) { return duplexify(body.arrayBuffer()); } if (isIterable(body)) { return from(Duplexify, body, { // TODO (ronag): highWaterMark? objectMode: true, writable: false }); } if (isReadableStream(body === null || body === void 0 ? void 0 : body.readable) && isWritableStream(body === null || body === void 0 ? void 0 : body.writable)) { return Duplexify.fromWeb(body); } if (typeof (body === null || body === void 0 ? void 0 : body.writable) === "object" || typeof (body === null || body === void 0 ? void 0 : body.readable) === "object") { const readable = body !== null && body !== void 0 && body.readable ? isReadableNodeStream(body === null || body === void 0 ? void 0 : body.readable) ? body === null || body === void 0 ? void 0 : body.readable : duplexify(body.readable) : void 0; const writable = body !== null && body !== void 0 && body.writable ? isWritableNodeStream(body === null || body === void 0 ? void 0 : body.writable) ? body === null || body === void 0 ? void 0 : body.writable : duplexify(body.writable) : void 0; return _duplexify({ readable, writable }); } const then = body === null || body === void 0 ? void 0 : body.then; if (typeof then === "function") { let d; FunctionPrototypeCall( then, body, (val) => { if (val != null) { d.push(val); } d.push(null); }, (err) => { destroyer(d, err); } ); return d = new Duplexify({ objectMode: true, writable: false, read() { } }); } throw new ERR_INVALID_ARG_TYPE2( name, [ "Blob", "ReadableStream", "WritableStream", "Stream", "Iterable", "AsyncIterable", "Function", "{ readable, writable } pair", "Promise" ], body ); }; function fromAsyncGen(fn) { let { promise, resolve } = createDeferredPromise(); const ac = new AbortController(); const signal = ac.signal; const value = fn( async function* () { while (true) { const _promise = promise; promise = null; const { chunk, done, cb } = await _promise; process2.nextTick(cb); if (done) return; if (signal.aborted) throw new AbortError(void 0, { cause: signal.reason }); ({ promise, resolve } = createDeferredPromise()); yield chunk; } }(), { signal } ); return { value, write(chunk, encoding, cb) { const _resolve = resolve; resolve = null; _resolve({ chunk, done: false, cb }); }, final(cb) { const _resolve = resolve; resolve = null; _resolve({ done: true, cb }); }, destroy(err, cb) { ac.abort(); cb(err); } }; } function _duplexify(pair) { const r = pair.readable && typeof pair.readable.read !== "function" ? Readable.wrap(pair.readable) : pair.readable; const w = pair.writable; let readable = !!isReadable(r); let writable = !!isWritable(w); let ondrain; let onfinish; let onreadable; let onclose; let d; function onfinished(err) { const cb = onclose; onclose = null; if (cb) { cb(err); } else if (err) { d.destroy(err); } } d = new Duplexify({ // TODO (ronag): highWaterMark? readableObjectMode: !!(r !== null && r !== void 0 && r.readableObjectMode), writableObjectMode: !!(w !== null && w !== void 0 && w.writableObjectMode), readable, writable }); if (writable) { eos(w, (err) => { writable = false; if (err) { destroyer(r, err); } onfinished(err); }); d._write = function(chunk, encoding, callback) { if (w.write(chunk, encoding)) { callback(); } else { ondrain = callback; } }; d._final = function(callback) { w.end(); onfinish = callback; }; w.on("drain", function() { if (ondrain) { const cb = ondrain; ondrain = null; cb(); } }); w.on("finish", function() { if (onfinish) { const cb = onfinish; onfinish = null; cb(); } }); } if (readable) { eos(r, (err) => { readable = false; if (err) { destroyer(r, err); } onfinished(err); }); r.on("readable", function() { if (onreadable) { const cb = onreadable; onreadable = null; cb(); } }); r.on("end", function() { d.push(null); }); d._read = function() { while (true) { const buf = r.read(); if (buf === null) { onreadable = d._read; return; } if (!d.push(buf)) { return; } } }; } d._destroy = function(err, callback) { if (!err && onclose !== null) { err = new AbortError(); } onreadable = null; ondrain = null; onfinish = null; if (onclose === null) { callback(err); } else { onclose = callback; destroyer(w, err); destroyer(r, err); } }; return d; } } }); // node_modules/readable-stream/lib/internal/streams/duplex.js var require_duplex = __commonJS({ "node_modules/readable-stream/lib/internal/streams/duplex.js"(exports, module) { "use strict"; init_process_shim(); var { ObjectDefineProperties, ObjectGetOwnPropertyDescriptor, ObjectKeys, ObjectSetPrototypeOf } = require_primordials(); module.exports = Duplex; var Readable = require_readable(); var Writable = require_writable(); ObjectSetPrototypeOf(Duplex.prototype, Readable.prototype); ObjectSetPrototypeOf(Duplex, Readable); { const keys = ObjectKeys(Writable.prototype); for (let i = 0; i < keys.length; i++) { const method = keys[i]; if (!Duplex.prototype[method]) Duplex.prototype[method] = Writable.prototype[method]; } } function Duplex(options) { if (!(this instanceof Duplex)) return new Duplex(options); Readable.call(this, options); Writable.call(this, options); if (options) { this.allowHalfOpen = options.allowHalfOpen !== false; if (options.readable === false) { this._readableState.readable = false; this._readableState.ended = true; this._readableState.endEmitted = true; } if (options.writable === false) { this._writableState.writable = false; this._writableState.ending = true; this._writableState.ended = true; this._writableState.finished = true; } } else { this.allowHalfOpen = true; } } ObjectDefineProperties(Duplex.prototype, { writable: { __proto__: null, ...ObjectGetOwnPropertyDescriptor(Writable.prototype, "writable") }, writableHighWaterMark: { __proto__: null, ...ObjectGetOwnPropertyDescriptor(Writable.prototype, "writableHighWaterMark") }, writableObjectMode: { __proto__: null, ...ObjectGetOwnPropertyDescriptor(Writable.prototype, "writableObjectMode") }, writableBuffer: { __proto__: null, ...ObjectGetOwnPropertyDescriptor(Writable.prototype, "writableBuffer") }, writableLength: { __proto__: null, ...ObjectGetOwnPropertyDescriptor(Writable.prototype, "writableLength") }, writableFinished: { __proto__: null, ...ObjectGetOwnPropertyDescriptor(Writable.prototype, "writableFinished") }, writableCorked: { __proto__: null, ...ObjectGetOwnPropertyDescriptor(Writable.prototype, "writableCorked") }, writableEnded: { __proto__: null, ...ObjectGetOwnPropertyDescriptor(Writable.prototype, "writableEnded") }, writableNeedDrain: { __proto__: null, ...ObjectGetOwnPropertyDescriptor(Writable.prototype, "writableNeedDrain") }, destroyed: { __proto__: null, get() { if (this._readableState === void 0 || this._writableState === void 0) { return false; } return this._readableState.destroyed && this._writableState.destroyed; }, set(value) { if (this._readableState && this._writableState) { this._readableState.destroyed = value; this._writableState.destroyed = value; } } } }); var webStreamsAdapters; function lazyWebStreams() { if (webStreamsAdapters === void 0) webStreamsAdapters = {}; return webStreamsAdapters; } Duplex.fromWeb = function(pair, options) { return lazyWebStreams().newStreamDuplexFromReadableWritablePair(pair, options); }; Duplex.toWeb = function(duplex) { return lazyWebStreams().newReadableWritablePairFromDuplex(duplex); }; var duplexify; Duplex.from = function(body) { if (!duplexify) { duplexify = require_duplexify(); } return duplexify(body, "body"); }; } }); // node_modules/readable-stream/lib/internal/streams/transform.js var require_transform = __commonJS({ "node_modules/readable-stream/lib/internal/streams/transform.js"(exports, module) { "use strict"; init_process_shim(); var { ObjectSetPrototypeOf, Symbol: Symbol2 } = require_primordials(); module.exports = Transform3; var { ERR_METHOD_NOT_IMPLEMENTED } = require_errors().codes; var Duplex = require_duplex(); var { getHighWaterMark } = require_state(); ObjectSetPrototypeOf(Transform3.prototype, Duplex.prototype); ObjectSetPrototypeOf(Transform3, Duplex); var kCallback = Symbol2("kCallback"); function Transform3(options) { if (!(this instanceof Transform3)) return new Transform3(options); const readableHighWaterMark = options ? getHighWaterMark(this, options, "readableHighWaterMark", true) : null; if (readableHighWaterMark === 0) { options = { ...options, highWaterMark: null, readableHighWaterMark, // TODO (ronag): 0 is not optimal since we have // a "bug" where we check needDrain before calling _write and not after. // Refs: https://github.com/nodejs/node/pull/32887 // Refs: https://github.com/nodejs/node/pull/35941 writableHighWaterMark: options.writableHighWaterMark || 0 }; } Duplex.call(this, options); this._readableState.sync = false; this[kCallback] = null; if (options) { if (typeof options.transform === "function") this._transform = options.transform; if (typeof options.flush === "function") this._flush = options.flush; } this.on("prefinish", prefinish); } function final(cb) { if (typeof this._flush === "function" && !this.destroyed) { this._flush((er, data) => { if (er) { if (cb) { cb(er); } else { this.destroy(er); } return; } if (data != null) { this.push(data); } this.push(null); if (cb) { cb(); } }); } else { this.push(null); if (cb) { cb(); } } } function prefinish() { if (this._final !== final) { final.call(this); } } Transform3.prototype._final = final; Transform3.prototype._transform = function(chunk, encoding, callback) { throw new ERR_METHOD_NOT_IMPLEMENTED("_transform()"); }; Transform3.prototype._write = function(chunk, encoding, callback) { const rState = this._readableState; const wState = this._writableState; const length = rState.length; this._transform(chunk, encoding, (err, val) => { if (err) { callback(err); return; } if (val != null) { this.push(val); } if (wState.ended || // Backwards compat. length === rState.length || // Backwards compat. rState.length < rState.highWaterMark) { callback(); } else { this[kCallback] = callback; } }); }; Transform3.prototype._read = function() { if (this[kCallback]) { const callback = this[kCallback]; this[kCallback] = null; callback(); } }; } }); // node_modules/readable-stream/lib/internal/streams/passthrough.js var require_passthrough = __commonJS({ "node_modules/readable-stream/lib/internal/streams/passthrough.js"(exports, module) { "use strict"; init_process_shim(); var { ObjectSetPrototypeOf } = require_primordials(); module.exports = PassThrough3; var Transform3 = require_transform(); ObjectSetPrototypeOf(PassThrough3.prototype, Transform3.prototype); ObjectSetPrototypeOf(PassThrough3, Transform3); function PassThrough3(options) { if (!(this instanceof PassThrough3)) return new PassThrough3(options); Transform3.call(this, options); } PassThrough3.prototype._transform = function(chunk, encoding, cb) { cb(null, chunk); }; } }); // node_modules/readable-stream/lib/internal/streams/pipeline.js var require_pipeline = __commonJS({ "node_modules/readable-stream/lib/internal/streams/pipeline.js"(exports, module) { init_process_shim(); var process2 = require_browser(); var { ArrayIsArray, Promise: Promise2, SymbolAsyncIterator, SymbolDispose } = require_primordials(); var eos = require_end_of_stream(); var { once } = require_util(); var destroyImpl = require_destroy(); var Duplex = require_duplex(); var { aggregateTwoErrors, codes: { ERR_INVALID_ARG_TYPE: ERR_INVALID_ARG_TYPE2, ERR_INVALID_RETURN_VALUE, ERR_MISSING_ARGS, ERR_STREAM_DESTROYED, ERR_STREAM_PREMATURE_CLOSE }, AbortError } = require_errors(); var { validateFunction, validateAbortSignal } = require_validators(); var { isIterable, isReadable, isReadableNodeStream, isNodeStream, isTransformStream, isWebStream, isReadableStream, isReadableFinished } = require_utils(); var AbortController = globalThis.AbortController || (init_noop(), __toCommonJS(noop_exports)).AbortController; var PassThrough3; var Readable; var addAbortListener; function destroyer(stream, reading, writing) { let finished = false; stream.on("close", () => { finished = true; }); const cleanup = eos( stream, { readable: reading, writable: writing }, (err) => { finished = !err; } ); return { destroy: (err) => { if (finished) return; finished = true; destroyImpl.destroyer(stream, err || new ERR_STREAM_DESTROYED("pipe")); }, cleanup }; } function popCallback(streams) { validateFunction(streams[streams.length - 1], "streams[stream.length - 1]"); return streams.pop(); } function makeAsyncIterable(val) { if (isIterable(val)) { return val; } else if (isReadableNodeStream(val)) { return fromReadable(val); } throw new ERR_INVALID_ARG_TYPE2("val", ["Readable", "Iterable", "AsyncIterable"], val); } async function* fromReadable(val) { if (!Readable) { Readable = require_readable(); } yield* Readable.prototype[SymbolAsyncIterator].call(val); } async function pumpToNode(iterable, writable, finish, { end }) { let error; let onresolve = null; const resume = (err) => { if (err) { error = err; } if (onresolve) { const callback = onresolve; onresolve = null; callback(); } }; const wait = () => new Promise2((resolve, reject) => { if (error) { reject(error); } else { onresolve = () => { if (error) { reject(error); } else { resolve(); } }; } }); writable.on("drain", resume); const cleanup = eos( writable, { readable: false }, resume ); try { if (writable.writableNeedDrain) { await wait(); } for await (const chunk of iterable) { if (!writable.write(chunk)) { await wait(); } } if (end) { writable.end(); await wait(); } finish(); } catch (err) { finish(error !== err ? aggregateTwoErrors(error, err) : err); } finally { cleanup(); writable.off("drain", resume); } } async function pumpToWeb(readable, writable, finish, { end }) { if (isTransformStream(writable)) { writable = writable.writable; } const writer = writable.getWriter(); try { for await (const chunk of readable) { await writer.ready; writer.write(chunk).catch(() => { }); } await writer.ready; if (end) { await writer.close(); } finish(); } catch (err) { try { await writer.abort(err); finish(err); } catch (err2) { finish(err2); } } } function pipeline(...streams) { return pipelineImpl(streams, once(popCallback(streams))); } function pipelineImpl(streams, callback, opts) { if (streams.length === 1 && ArrayIsArray(streams[0])) { streams = streams[0]; } if (streams.length < 2) { throw new ERR_MISSING_ARGS("streams"); } const ac = new AbortController(); const signal = ac.signal; const outerSignal = opts === null || opts === void 0 ? void 0 : opts.signal; const lastStreamCleanup = []; validateAbortSignal(outerSignal, "options.signal"); function abort() { finishImpl(new AbortError()); } addAbortListener = addAbortListener || require_util().addAbortListener; let disposable; if (outerSignal) { disposable = addAbortListener(outerSignal, abort); } let error; let value; const destroys = []; let finishCount = 0; function finish(err) { finishImpl(err, --finishCount === 0); } function finishImpl(err, final) { var _disposable; if (err && (!error || error.code === "ERR_STREAM_PREMATURE_CLOSE")) { error = err; } if (!error && !final) { return; } while (destroys.length) { destroys.shift()(error); } ; (_disposable = disposable) === null || _disposable === void 0 ? void 0 : _disposable[SymbolDispose](); ac.abort(); if (final) { if (!error) { lastStreamCleanup.forEach((fn) => fn()); } process2.nextTick(callback, error, value); } } let ret; for (let i = 0; i < streams.length; i++) { const stream = streams[i]; const reading = i < streams.length - 1; const writing = i > 0; const end = reading || (opts === null || opts === void 0 ? void 0 : opts.end) !== false; const isLastStream = i === streams.length - 1; if (isNodeStream(stream)) { let onError2 = function(err) { if (err && err.name !== "AbortError" && err.code !== "ERR_STREAM_PREMATURE_CLOSE") { finish(err); } }; var onError = onError2; if (end) { const { destroy, cleanup } = destroyer(stream, reading, writing); destroys.push(destroy); if (isReadable(stream) && isLastStream) { lastStreamCleanup.push(cleanup); } } stream.on("error", onError2); if (isReadable(stream) && isLastStream) { lastStreamCleanup.push(() => { stream.removeListener("error", onError2); }); } } if (i === 0) { if (typeof stream === "function") { ret = stream({ signal }); if (!isIterable(ret)) { throw new ERR_INVALID_RETURN_VALUE("Iterable, AsyncIterable or Stream", "source", ret); } } else if (isIterable(stream) || isReadableNodeStream(stream) || isTransformStream(stream)) { ret = stream; } else { ret = Duplex.from(stream); } } else if (typeof stream === "function") { if (isTransformStream(ret)) { var _ret; ret = makeAsyncIterable((_ret = ret) === null || _ret === void 0 ? void 0 : _ret.readable); } else { ret = makeAsyncIterable(ret); } ret = stream(ret, { signal }); if (reading) { if (!isIterable(ret, true)) { throw new ERR_INVALID_RETURN_VALUE("AsyncIterable", `transform[${i - 1}]`, ret); } } else { var _ret2; if (!PassThrough3) { PassThrough3 = require_passthrough(); } const pt = new PassThrough3({ objectMode: true }); const then = (_ret2 = ret) === null || _ret2 === void 0 ? void 0 : _ret2.then; if (typeof then === "function") { finishCount++; then.call( ret, (val) => { value = val; if (val != null) { pt.write(val); } if (end) { pt.end(); } process2.nextTick(finish); }, (err) => { pt.destroy(err); process2.nextTick(finish, err); } ); } else if (isIterable(ret, true)) { finishCount++; pumpToNode(ret, pt, finish, { end }); } else if (isReadableStream(ret) || isTransformStream(ret)) { const toRead = ret.readable || ret; finishCount++; pumpToNode(toRead, pt, finish, { end }); } else { throw new ERR_INVALID_RETURN_VALUE("AsyncIterable or Promise", "destination", ret); } ret = pt; const { destroy, cleanup } = destroyer(ret, false, true); destroys.push(destroy); if (isLastStream) { lastStreamCleanup.push(cleanup); } } } else if (isNodeStream(stream)) { if (isReadableNodeStream(ret)) { finishCount += 2; const cleanup = pipe(ret, stream, finish, { end }); if (isReadable(stream) && isLastStream) { lastStreamCleanup.push(cleanup); } } else if (isTransformStream(ret) || isReadableStream(ret)) { const toRead = ret.readable || ret; finishCount++; pumpToNode(toRead, stream, finish, { end }); } else if (isIterable(ret)) { finishCount++; pumpToNode(ret, stream, finish, { end }); } else { throw new ERR_INVALID_ARG_TYPE2( "val", ["Readable", "Iterable", "AsyncIterable", "ReadableStream", "TransformStream"], ret ); } ret = stream; } else if (isWebStream(stream)) { if (isReadableNodeStream(ret)) { finishCount++; pumpToWeb(makeAsyncIterable(ret), stream, finish, { end }); } else if (isReadableStream(ret) || isIterable(ret)) { finishCount++; pumpToWeb(ret, stream, finish, { end }); } else if (isTransformStream(ret)) { finishCount++; pumpToWeb(ret.readable, stream, finish, { end }); } else { throw new ERR_INVALID_ARG_TYPE2( "val", ["Readable", "Iterable", "AsyncIterable", "ReadableStream", "TransformStream"], ret ); } ret = stream; } else { ret = Duplex.from(stream); } } if (signal !== null && signal !== void 0 && signal.aborted || outerSignal !== null && outerSignal !== void 0 && outerSignal.aborted) { process2.nextTick(abort); } return ret; } function pipe(src, dst, finish, { end }) { let ended = false; dst.on("close", () => { if (!ended) { finish(new ERR_STREAM_PREMATURE_CLOSE()); } }); src.pipe(dst, { end: false }); if (end) { let endFn2 = function() { ended = true; dst.end(); }; var endFn = endFn2; if (isReadableFinished(src)) { process2.nextTick(endFn2); } else { src.once("end", endFn2); } } else { finish(); } eos( src, { readable: true, writable: false }, (err) => { const rState = src._readableState; if (err && err.code === "ERR_STREAM_PREMATURE_CLOSE" && rState && rState.ended && !rState.errored && !rState.errorEmitted) { src.once("end", finish).once("error", finish); } else { finish(err); } } ); return eos( dst, { readable: false, writable: true }, finish ); } module.exports = { pipelineImpl, pipeline }; } }); // node_modules/readable-stream/lib/internal/streams/compose.js var require_compose = __commonJS({ "node_modules/readable-stream/lib/internal/streams/compose.js"(exports, module) { "use strict"; init_process_shim(); var { pipeline } = require_pipeline(); var Duplex = require_duplex(); var { destroyer } = require_destroy(); var { isNodeStream, isReadable, isWritable, isWebStream, isTransformStream, isWritableStream, isReadableStream } = require_utils(); var { AbortError, codes: { ERR_INVALID_ARG_VALUE, ERR_MISSING_ARGS } } = require_errors(); var eos = require_end_of_stream(); module.exports = function compose(...streams) { if (streams.length === 0) { throw new ERR_MISSING_ARGS("streams"); } if (streams.length === 1) { return Duplex.from(streams[0]); } const orgStreams = [...streams]; if (typeof streams[0] === "function") { streams[0] = Duplex.from(streams[0]); } if (typeof streams[streams.length - 1] === "function") { const idx = streams.length - 1; streams[idx] = Duplex.from(streams[idx]); } for (let n = 0; n < streams.length; ++n) { if (!isNodeStream(streams[n]) && !isWebStream(streams[n])) { continue; } if (n < streams.length - 1 && !(isReadable(streams[n]) || isReadableStream(streams[n]) || isTransformStream(streams[n]))) { throw new ERR_INVALID_ARG_VALUE(`streams[${n}]`, orgStreams[n], "must be readable"); } if (n > 0 && !(isWritable(streams[n]) || isWritableStream(streams[n]) || isTransformStream(streams[n]))) { throw new ERR_INVALID_ARG_VALUE(`streams[${n}]`, orgStreams[n], "must be writable"); } } let ondrain; let onfinish; let onreadable; let onclose; let d; function onfinished(err) { const cb = onclose; onclose = null; if (cb) { cb(err); } else if (err) { d.destroy(err); } else if (!readable && !writable) { d.destroy(); } } const head = streams[0]; const tail = pipeline(streams, onfinished); const writable = !!(isWritable(head) || isWritableStream(head) || isTransformStream(head)); const readable = !!(isReadable(tail) || isReadableStream(tail) || isTransformStream(tail)); d = new Duplex({ // TODO (ronag): highWaterMark? writableObjectMode: !!(head !== null && head !== void 0 && head.writableObjectMode), readableObjectMode: !!(tail !== null && tail !== void 0 && tail.readableObjectMode), writable, readable }); if (writable) { if (isNodeStream(head)) { d._write = function(chunk, encoding, callback) { if (head.write(chunk, encoding)) { callback(); } else { ondrain = callback; } }; d._final = function(callback) { head.end(); onfinish = callback; }; head.on("drain", function() { if (ondrain) { const cb = ondrain; ondrain = null; cb(); } }); } else if (isWebStream(head)) { const writable2 = isTransformStream(head) ? head.writable : head; const writer = writable2.getWriter(); d._write = async function(chunk, encoding, callback) { try { await writer.ready; writer.write(chunk).catch(() => { }); callback(); } catch (err) { callback(err); } }; d._final = async function(callback) { try { await writer.ready; writer.close().catch(() => { }); onfinish = callback; } catch (err) { callback(err); } }; } const toRead = isTransformStream(tail) ? tail.readable : tail; eos(toRead, () => { if (onfinish) { const cb = onfinish; onfinish = null; cb(); } }); } if (readable) { if (isNodeStream(tail)) { tail.on("readable", function() { if (onreadable) { const cb = onreadable; onreadable = null; cb(); } }); tail.on("end", function() { d.push(null); }); d._read = function() { while (true) { const buf = tail.read(); if (buf === null) { onreadable = d._read; return; } if (!d.push(buf)) { return; } } }; } else if (isWebStream(tail)) { const readable2 = isTransformStream(tail) ? tail.readable : tail; const reader = readable2.getReader(); d._read = async function() { while (true) { try { const { value, done } = await reader.read(); if (!d.push(value)) { return; } if (done) { d.push(null); return; } } catch { return; } } }; } } d._destroy = function(err, callback) { if (!err && onclose !== null) { err = new AbortError(); } onreadable = null; ondrain = null; onfinish = null; if (onclose === null) { callback(err); } else { onclose = callback; if (isNodeStream(tail)) { destroyer(tail, err); } } }; return d; }; } }); // node_modules/readable-stream/lib/internal/streams/operators.js var require_operators = __commonJS({ "node_modules/readable-stream/lib/internal/streams/operators.js"(exports, module) { "use strict"; init_process_shim(); var AbortController = globalThis.AbortController || (init_noop(), __toCommonJS(noop_exports)).AbortController; var { codes: { ERR_INVALID_ARG_VALUE, ERR_INVALID_ARG_TYPE: ERR_INVALID_ARG_TYPE2, ERR_MISSING_ARGS, ERR_OUT_OF_RANGE }, AbortError } = require_errors(); var { validateAbortSignal, validateInteger, validateObject } = require_validators(); var kWeakHandler = require_primordials().Symbol("kWeak"); var kResistStopPropagation = require_primordials().Symbol("kResistStopPropagation"); var { finished } = require_end_of_stream(); var staticCompose = require_compose(); var { addAbortSignalNoValidate } = require_add_abort_signal(); var { isWritable, isNodeStream } = require_utils(); var { deprecate } = require_util(); var { ArrayPrototypePush, Boolean: Boolean2, MathFloor, Number: Number2, NumberIsNaN, Promise: Promise2, PromiseReject, PromiseResolve, PromisePrototypeThen, Symbol: Symbol2 } = require_primordials(); var kEmpty = Symbol2("kEmpty"); var kEof = Symbol2("kEof"); function compose(stream, options) { if (options != null) { validateObject(options, "options"); } if ((options === null || options === void 0 ? void 0 : options.signal) != null) { validateAbortSignal(options.signal, "options.signal"); } if (isNodeStream(stream) && !isWritable(stream)) { throw new ERR_INVALID_ARG_VALUE("stream", stream, "must be writable"); } const composedStream = staticCompose(this, stream); if (options !== null && options !== void 0 && options.signal) { addAbortSignalNoValidate(options.signal, composedStream); } return composedStream; } function map(fn, options) { if (typeof fn !== "function") { throw new ERR_INVALID_ARG_TYPE2("fn", ["Function", "AsyncFunction"], fn); } if (options != null) { validateObject(options, "options"); } if ((options === null || options === void 0 ? void 0 : options.signal) != null) { validateAbortSignal(options.signal, "options.signal"); } let concurrency = 1; if ((options === null || options === void 0 ? void 0 : options.concurrency) != null) { concurrency = MathFloor(options.concurrency); } let highWaterMark = concurrency - 1; if ((options === null || options === void 0 ? void 0 : options.highWaterMark) != null) { highWaterMark = MathFloor(options.highWaterMark); } validateInteger(concurrency, "options.concurrency", 1); validateInteger(highWaterMark, "options.highWaterMark", 0); highWaterMark += concurrency; return async function* map2() { const signal = require_util().AbortSignalAny( [options === null || options === void 0 ? void 0 : options.signal].filter(Boolean2) ); const stream = this; const queue = []; const signalOpt = { signal }; let next; let resume; let done = false; let cnt = 0; function onCatch() { done = true; afterItemProcessed(); } function afterItemProcessed() { cnt -= 1; maybeResume(); } function maybeResume() { if (resume && !done && cnt < concurrency && queue.length < highWaterMark) { resume(); resume = null; } } async function pump() { try { for await (let val of stream) { if (done) { return; } if (signal.aborted) { throw new AbortError(); } try { val = fn(val, signalOpt); if (val === kEmpty) { continue; } val = PromiseResolve(val); } catch (err) { val = PromiseReject(err); } cnt += 1; PromisePrototypeThen(val, afterItemProcessed, onCatch); queue.push(val); if (next) { next(); next = null; } if (!done && (queue.length >= highWaterMark || cnt >= concurrency)) { await new Promise2((resolve) => { resume = resolve; }); } } queue.push(kEof); } catch (err) { const val = PromiseReject(err); PromisePrototypeThen(val, afterItemProcessed, onCatch); queue.push(val); } finally { done = true; if (next) { next(); next = null; } } } pump(); try { while (true) { while (queue.length > 0) { const val = await queue[0]; if (val === kEof) { return; } if (signal.aborted) { throw new AbortError(); } if (val !== kEmpty) { yield val; } queue.shift(); maybeResume(); } await new Promise2((resolve) => { next = resolve; }); } } finally { done = true; if (resume) { resume(); resume = null; } } }.call(this); } function asIndexedPairs(options = void 0) { if (options != null) { validateObject(options, "options"); } if ((options === null || options === void 0 ? void 0 : options.signal) != null) { validateAbortSignal(options.signal, "options.signal"); } return async function* asIndexedPairs2() { let index = 0; for await (const val of this) { var _options$signal; if (options !== null && options !== void 0 && (_options$signal = options.signal) !== null && _options$signal !== void 0 && _options$signal.aborted) { throw new AbortError({ cause: options.signal.reason }); } yield [index++, val]; } }.call(this); } async function some(fn, options = void 0) { for await (const unused of filter.call(this, fn, options)) { return true; } return false; } async function every(fn, options = void 0) { if (typeof fn !== "function") { throw new ERR_INVALID_ARG_TYPE2("fn", ["Function", "AsyncFunction"], fn); } return !await some.call( this, async (...args) => { return !await fn(...args); }, options ); } async function find(fn, options) { for await (const result of filter.call(this, fn, options)) { return result; } return void 0; } async function forEach(fn, options) { if (typeof fn !== "function") { throw new ERR_INVALID_ARG_TYPE2("fn", ["Function", "AsyncFunction"], fn); } async function forEachFn(value, options2) { await fn(value, options2); return kEmpty; } for await (const unused of map.call(this, forEachFn, options)) ; } function filter(fn, options) { if (typeof fn !== "function") { throw new ERR_INVALID_ARG_TYPE2("fn", ["Function", "AsyncFunction"], fn); } async function filterFn(value, options2) { if (await fn(value, options2)) { return value; } return kEmpty; } return map.call(this, filterFn, options); } var ReduceAwareErrMissingArgs = class extends ERR_MISSING_ARGS { constructor() { super("reduce"); this.message = "Reduce of an empty stream requires an initial value"; } }; async function reduce(reducer, initialValue, options) { var _options$signal2; if (typeof reducer !== "function") { throw new ERR_INVALID_ARG_TYPE2("reducer", ["Function", "AsyncFunction"], reducer); } if (options != null) { validateObject(options, "options"); } if ((options === null || options === void 0 ? void 0 : options.signal) != null) { validateAbortSignal(options.signal, "options.signal"); } let hasInitialValue = arguments.length > 1; if (options !== null && options !== void 0 && (_options$signal2 = options.signal) !== null && _options$signal2 !== void 0 && _options$signal2.aborted) { const err = new AbortError(void 0, { cause: options.signal.reason }); this.once("error", () => { }); await finished(this.destroy(err)); throw err; } const ac = new AbortController(); const signal = ac.signal; if (options !== null && options !== void 0 && options.signal) { const opts = { once: true, [kWeakHandler]: this, [kResistStopPropagation]: true }; options.signal.addEventListener("abort", () => ac.abort(), opts); } let gotAnyItemFromStream = false; try { for await (const value of this) { var _options$signal3; gotAnyItemFromStream = true; if (options !== null && options !== void 0 && (_options$signal3 = options.signal) !== null && _options$signal3 !== void 0 && _options$signal3.aborted) { throw new AbortError(); } if (!hasInitialValue) { initialValue = value; hasInitialValue = true; } else { initialValue = await reducer(initialValue, value, { signal }); } } if (!gotAnyItemFromStream && !hasInitialValue) { throw new ReduceAwareErrMissingArgs(); } } finally { ac.abort(); } return initialValue; } async function toArray(options) { if (options != null) { validateObject(options, "options"); } if ((options === null || options === void 0 ? void 0 : options.signal) != null) { validateAbortSignal(options.signal, "options.signal"); } const result = []; for await (const val of this) { var _options$signal4; if (options !== null && options !== void 0 && (_options$signal4 = options.signal) !== null && _options$signal4 !== void 0 && _options$signal4.aborted) { throw new AbortError(void 0, { cause: options.signal.reason }); } ArrayPrototypePush(result, val); } return result; } function flatMap(fn, options) { const values = map.call(this, fn, options); return async function* flatMap2() { for await (const val of values) { yield* val; } }.call(this); } function toIntegerOrInfinity(number) { number = Number2(number); if (NumberIsNaN(number)) { return 0; } if (number < 0) { throw new ERR_OUT_OF_RANGE("number", ">= 0", number); } return number; } function drop(number, options = void 0) { if (options != null) { validateObject(options, "options"); } if ((options === null || options === void 0 ? void 0 : options.signal) != null) { validateAbortSignal(options.signal, "options.signal"); } number = toIntegerOrInfinity(number); return async function* drop2() { var _options$signal5; if (options !== null && options !== void 0 && (_options$signal5 = options.signal) !== null && _options$signal5 !== void 0 && _options$signal5.aborted) { throw new AbortError(); } for await (const val of this) { var _options$signal6; if (options !== null && options !== void 0 && (_options$signal6 = options.signal) !== null && _options$signal6 !== void 0 && _options$signal6.aborted) { throw new AbortError(); } if (number-- <= 0) { yield val; } } }.call(this); } function take(number, options = void 0) { if (options != null) { validateObject(options, "options"); } if ((options === null || options === void 0 ? void 0 : options.signal) != null) { validateAbortSignal(options.signal, "options.signal"); } number = toIntegerOrInfinity(number); return async function* take2() { var _options$signal7; if (options !== null && options !== void 0 && (_options$signal7 = options.signal) !== null && _options$signal7 !== void 0 && _options$signal7.aborted) { throw new AbortError(); } for await (const val of this) { var _options$signal8; if (options !== null && options !== void 0 && (_options$signal8 = options.signal) !== null && _options$signal8 !== void 0 && _options$signal8.aborted) { throw new AbortError(); } if (number-- > 0) { yield val; } if (number <= 0) { return; } } }.call(this); } module.exports.streamReturningOperators = { asIndexedPairs: deprecate(asIndexedPairs, "readable.asIndexedPairs will be removed in a future version."), drop, filter, flatMap, map, take, compose }; module.exports.promiseReturningOperators = { every, forEach, reduce, toArray, some, find }; } }); // node_modules/readable-stream/lib/stream/promises.js var require_promises = __commonJS({ "node_modules/readable-stream/lib/stream/promises.js"(exports, module) { "use strict"; init_process_shim(); var { ArrayPrototypePop, Promise: Promise2 } = require_primordials(); var { isIterable, isNodeStream, isWebStream } = require_utils(); var { pipelineImpl: pl } = require_pipeline(); var { finished } = require_end_of_stream(); require_stream(); function pipeline(...streams) { return new Promise2((resolve, reject) => { let signal; let end; const lastArg = streams[streams.length - 1]; if (lastArg && typeof lastArg === "object" && !isNodeStream(lastArg) && !isIterable(lastArg) && !isWebStream(lastArg)) { const options = ArrayPrototypePop(streams); signal = options.signal; end = options.end; } pl( streams, (err, value) => { if (err) { reject(err); } else { resolve(value); } }, { signal, end } ); }); } module.exports = { finished, pipeline }; } }); // node_modules/readable-stream/lib/stream.js var require_stream = __commonJS({ "node_modules/readable-stream/lib/stream.js"(exports, module) { init_process_shim(); var { Buffer: Buffer3 } = require_buffer(); var { ObjectDefineProperty, ObjectKeys, ReflectApply } = require_primordials(); var { promisify: { custom: customPromisify } } = require_util(); var { streamReturningOperators, promiseReturningOperators } = require_operators(); var { codes: { ERR_ILLEGAL_CONSTRUCTOR } } = require_errors(); var compose = require_compose(); var { setDefaultHighWaterMark, getDefaultHighWaterMark } = require_state(); var { pipeline } = require_pipeline(); var { destroyer } = require_destroy(); var eos = require_end_of_stream(); var promises = require_promises(); var utils = require_utils(); var Stream = module.exports = require_legacy().Stream; Stream.isDestroyed = utils.isDestroyed; Stream.isDisturbed = utils.isDisturbed; Stream.isErrored = utils.isErrored; Stream.isReadable = utils.isReadable; Stream.isWritable = utils.isWritable; Stream.Readable = require_readable(); for (const key of ObjectKeys(streamReturningOperators)) { let fn2 = function(...args) { if (new.target) { throw ERR_ILLEGAL_CONSTRUCTOR(); } return Stream.Readable.from(ReflectApply(op, this, args)); }; fn = fn2; const op = streamReturningOperators[key]; ObjectDefineProperty(fn2, "name", { __proto__: null, value: op.name }); ObjectDefineProperty(fn2, "length", { __proto__: null, value: op.length }); ObjectDefineProperty(Stream.Readable.prototype, key, { __proto__: null, value: fn2, enumerable: false, configurable: true, writable: true }); } var fn; for (const key of ObjectKeys(promiseReturningOperators)) { let fn2 = function(...args) { if (new.target) { throw ERR_ILLEGAL_CONSTRUCTOR(); } return ReflectApply(op, this, args); }; fn = fn2; const op = promiseReturningOperators[key]; ObjectDefineProperty(fn2, "name", { __proto__: null, value: op.name }); ObjectDefineProperty(fn2, "length", { __proto__: null, value: op.length }); ObjectDefineProperty(Stream.Readable.prototype, key, { __proto__: null, value: fn2, enumerable: false, configurable: true, writable: true }); } var fn; Stream.Writable = require_writable(); Stream.Duplex = require_duplex(); Stream.Transform = require_transform(); Stream.PassThrough = require_passthrough(); Stream.pipeline = pipeline; var { addAbortSignal } = require_add_abort_signal(); Stream.addAbortSignal = addAbortSignal; Stream.finished = eos; Stream.destroy = destroyer; Stream.compose = compose; Stream.setDefaultHighWaterMark = setDefaultHighWaterMark; Stream.getDefaultHighWaterMark = getDefaultHighWaterMark; ObjectDefineProperty(Stream, "promises", { __proto__: null, configurable: true, enumerable: true, get() { return promises; } }); ObjectDefineProperty(pipeline, customPromisify, { __proto__: null, enumerable: true, get() { return promises.pipeline; } }); ObjectDefineProperty(eos, customPromisify, { __proto__: null, enumerable: true, get() { return promises.finished; } }); Stream.Stream = Stream; Stream._isUint8Array = function isUint8Array(value) { return value instanceof Uint8Array; }; Stream._uint8ArrayToBuffer = function _uint8ArrayToBuffer(chunk) { return Buffer3.from(chunk.buffer, chunk.byteOffset, chunk.byteLength); }; } }); // node_modules/readable-stream/lib/ours/index.js var require_ours = __commonJS({ "node_modules/readable-stream/lib/ours/index.js"(exports, module) { "use strict"; init_process_shim(); var Stream = require_ours(); if (Stream && process.env.READABLE_STREAM === "disable") { const promises = Stream.promises; module.exports._uint8ArrayToBuffer = Stream._uint8ArrayToBuffer; module.exports._isUint8Array = Stream._isUint8Array; module.exports.isDisturbed = Stream.isDisturbed; module.exports.isErrored = Stream.isErrored; module.exports.isReadable = Stream.isReadable; module.exports.Readable = Stream.Readable; module.exports.Writable = Stream.Writable; module.exports.Duplex = Stream.Duplex; module.exports.Transform = Stream.Transform; module.exports.PassThrough = Stream.PassThrough; module.exports.addAbortSignal = Stream.addAbortSignal; module.exports.finished = Stream.finished; module.exports.destroy = Stream.destroy; module.exports.pipeline = Stream.pipeline; module.exports.compose = Stream.compose; Object.defineProperty(Stream, "promises", { configurable: true, enumerable: true, get() { return promises; } }); module.exports.Stream = Stream.Stream; } else { const CustomStream = require_stream(); const promises = require_promises(); const originalDestroy = CustomStream.Readable.destroy; module.exports = CustomStream.Readable; module.exports._uint8ArrayToBuffer = CustomStream._uint8ArrayToBuffer; module.exports._isUint8Array = CustomStream._isUint8Array; module.exports.isDisturbed = CustomStream.isDisturbed; module.exports.isErrored = CustomStream.isErrored; module.exports.isReadable = CustomStream.isReadable; module.exports.Readable = CustomStream.Readable; module.exports.Writable = CustomStream.Writable; module.exports.Duplex = CustomStream.Duplex; module.exports.Transform = CustomStream.Transform; module.exports.PassThrough = CustomStream.PassThrough; module.exports.addAbortSignal = CustomStream.addAbortSignal; module.exports.finished = CustomStream.finished; module.exports.destroy = CustomStream.destroy; module.exports.destroy = originalDestroy; module.exports.pipeline = CustomStream.pipeline; module.exports.compose = CustomStream.compose; Object.defineProperty(CustomStream, "promises", { configurable: true, enumerable: true, get() { return promises; } }); module.exports.Stream = CustomStream.Stream; } module.exports.default = module.exports; } }); // node_modules/wrappy/wrappy.js var require_wrappy = __commonJS({ "node_modules/wrappy/wrappy.js"(exports, module) { init_process_shim(); module.exports = wrappy; function wrappy(fn, cb) { if (fn && cb) return wrappy(fn)(cb); if (typeof fn !== "function") throw new TypeError("need wrapper function"); Object.keys(fn).forEach(function(k) { wrapper[k] = fn[k]; }); return wrapper; function wrapper() { var args = new Array(arguments.length); for (var i = 0; i < args.length; i++) { args[i] = arguments[i]; } var ret = fn.apply(this, args); var cb2 = args[args.length - 1]; if (typeof ret === "function" && ret !== cb2) { Object.keys(cb2).forEach(function(k) { ret[k] = cb2[k]; }); } return ret; } } } }); // node_modules/once/once.js var require_once = __commonJS({ "node_modules/once/once.js"(exports, module) { init_process_shim(); var wrappy = require_wrappy(); module.exports = wrappy(once); module.exports.strict = wrappy(onceStrict); once.proto = once(function() { Object.defineProperty(Function.prototype, "once", { value: function() { return once(this); }, configurable: true }); Object.defineProperty(Function.prototype, "onceStrict", { value: function() { return onceStrict(this); }, configurable: true }); }); function once(fn) { var f = function() { if (f.called) return f.value; f.called = true; return f.value = fn.apply(this, arguments); }; f.called = false; return f; } function onceStrict(fn) { var f = function() { if (f.called) throw new Error(f.onceError); f.called = true; return f.value = fn.apply(this, arguments); }; var name = fn.name || "Function wrapped with `once`"; f.onceError = name + " shouldn't be called more than once"; f.called = false; return f; } } }); // node_modules/end-of-stream/index.js var require_end_of_stream2 = __commonJS({ "node_modules/end-of-stream/index.js"(exports, module) { init_process_shim(); var once = require_once(); var noop = function() { }; var isRequest = function(stream) { return stream.setHeader && typeof stream.abort === "function"; }; var isChildProcess = function(stream) { return stream.stdio && Array.isArray(stream.stdio) && stream.stdio.length === 3; }; var eos = function(stream, opts, callback) { if (typeof opts === "function") return eos(stream, null, opts); if (!opts) opts = {}; callback = once(callback || noop); var ws = stream._writableState; var rs = stream._readableState; var readable = opts.readable || opts.readable !== false && stream.readable; var writable = opts.writable || opts.writable !== false && stream.writable; var cancelled = false; var onlegacyfinish = function() { if (!stream.writable) onfinish(); }; var onfinish = function() { writable = false; if (!readable) callback.call(stream); }; var onend = function() { readable = false; if (!writable) callback.call(stream); }; var onexit = function(exitCode) { callback.call(stream, exitCode ? new Error("exited with error code: " + exitCode) : null); }; var onerror = function(err) { callback.call(stream, err); }; var onclose = function() { process.nextTick(onclosenexttick); }; var onclosenexttick = function() { if (cancelled) return; if (readable && !(rs && (rs.ended && !rs.destroyed))) return callback.call(stream, new Error("premature close")); if (writable && !(ws && (ws.ended && !ws.destroyed))) return callback.call(stream, new Error("premature close")); }; var onrequest = function() { stream.req.on("finish", onfinish); }; if (isRequest(stream)) { stream.on("complete", onfinish); stream.on("abort", onclose); if (stream.req) onrequest(); else stream.on("request", onrequest); } else if (writable && !ws) { stream.on("end", onlegacyfinish); stream.on("close", onlegacyfinish); } if (isChildProcess(stream)) stream.on("exit", onexit); stream.on("end", onend); stream.on("finish", onfinish); if (opts.error !== false) stream.on("error", onerror); stream.on("close", onclose); return function() { cancelled = true; stream.removeListener("complete", onfinish); stream.removeListener("abort", onclose); stream.removeListener("request", onrequest); if (stream.req) stream.req.removeListener("finish", onfinish); stream.removeListener("end", onlegacyfinish); stream.removeListener("close", onlegacyfinish); stream.removeListener("finish", onfinish); stream.removeListener("exit", onexit); stream.removeListener("end", onend); stream.removeListener("error", onerror); stream.removeListener("close", onclose); }; }; module.exports = eos; } }); // (disabled):fs var require_fs = __commonJS({ "(disabled):fs"() { init_process_shim(); } }); // node_modules/pump/index.js var require_pump = __commonJS({ "node_modules/pump/index.js"(exports, module) { init_process_shim(); var once = require_once(); var eos = require_end_of_stream2(); var fs = require_fs(); var noop = function() { }; var ancient = /^v?\.0/.test(process.version); var isFn = function(fn) { return typeof fn === "function"; }; var isFS = function(stream) { if (!ancient) return false; if (!fs) return false; return (stream instanceof (fs.ReadStream || noop) || stream instanceof (fs.WriteStream || noop)) && isFn(stream.close); }; var isRequest = function(stream) { return stream.setHeader && isFn(stream.abort); }; var destroyer = function(stream, reading, writing, callback) { callback = once(callback); var closed = false; stream.on("close", function() { closed = true; }); eos(stream, { readable: reading, writable: writing }, function(err) { if (err) return callback(err); closed = true; callback(); }); var destroyed = false; return function(err) { if (closed) return; if (destroyed) return; destroyed = true; if (isFS(stream)) return stream.close(noop); if (isRequest(stream)) return stream.abort(); if (isFn(stream.destroy)) return stream.destroy(); callback(err || new Error("stream was destroyed")); }; }; var call = function(fn) { fn(); }; var pipe = function(from, to) { return from.pipe(to); }; var pump = function() { var streams = Array.prototype.slice.call(arguments); var callback = isFn(streams[streams.length - 1] || noop) && streams.pop() || noop; if (Array.isArray(streams[0])) streams = streams[0]; if (streams.length < 2) throw new Error("pump requires two streams per minimum"); var error; var destroys = streams.map(function(stream, i) { var reading = i < streams.length - 1; var writing = i > 0; return destroyer(stream, reading, writing, function(err) { if (!error) error = err; if (err) destroys.forEach(call); if (reading) return; destroys.forEach(call); callback(error); }); }); return streams.reduce(pipe); }; module.exports = pump; } }); // node_modules/inherits/inherits_browser.js var require_inherits_browser = __commonJS({ "node_modules/inherits/inherits_browser.js"(exports, module) { init_process_shim(); if (typeof Object.create === "function") { module.exports = function inherits(ctor, superCtor) { if (superCtor) { ctor.super_ = superCtor; ctor.prototype = Object.create(superCtor.prototype, { constructor: { value: ctor, enumerable: false, writable: true, configurable: true } }); } }; } else { module.exports = function inherits(ctor, superCtor) { if (superCtor) { ctor.super_ = superCtor; var TempCtor = function() { }; TempCtor.prototype = superCtor.prototype; ctor.prototype = new TempCtor(); ctor.prototype.constructor = ctor; } }; } } }); // node_modules/duplexify/node_modules/readable-stream/lib/internal/streams/stream-browser.js var require_stream_browser = __commonJS({ "node_modules/duplexify/node_modules/readable-stream/lib/internal/streams/stream-browser.js"(exports, module) { init_process_shim(); module.exports = require_events().EventEmitter; } }); // (disabled):node_modules/util/util.js var require_util2 = __commonJS({ "(disabled):node_modules/util/util.js"() { init_process_shim(); } }); // node_modules/duplexify/node_modules/readable-stream/lib/internal/streams/buffer_list.js var require_buffer_list2 = __commonJS({ "node_modules/duplexify/node_modules/readable-stream/lib/internal/streams/buffer_list.js"(exports, module) { "use strict"; init_process_shim(); function ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); enumerableOnly && (symbols = symbols.filter(function(sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; })), keys.push.apply(keys, symbols); } return keys; } function _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? ownKeys(Object(source), true).forEach(function(key) { _defineProperty(target, key, source[key]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : ownKeys(Object(source)).forEach(function(key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } return target; } function _defineProperty(obj, key, value) { key = _toPropertyKey(key); if (key in obj) { Object.defineProperty(obj, key, { value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; } function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } } function _defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, _toPropertyKey(descriptor.key), descriptor); } } function _createClass(Constructor, protoProps, staticProps) { if (protoProps) _defineProperties(Constructor.prototype, protoProps); if (staticProps) _defineProperties(Constructor, staticProps); Object.defineProperty(Constructor, "prototype", { writable: false }); return Constructor; } function _toPropertyKey(arg) { var key = _toPrimitive(arg, "string"); return typeof key === "symbol" ? key : String(key); } function _toPrimitive(input, hint) { if (typeof input !== "object" || input === null) return input; var prim = input[Symbol.toPrimitive]; if (prim !== void 0) { var res = prim.call(input, hint || "default"); if (typeof res !== "object") return res; throw new TypeError("@@toPrimitive must return a primitive value."); } return (hint === "string" ? String : Number)(input); } var _require = require_buffer(); var Buffer3 = _require.Buffer; var _require2 = require_util2(); var inspect = _require2.inspect; var custom = inspect && inspect.custom || "inspect"; function copyBuffer(src, target, offset) { Buffer3.prototype.copy.call(src, target, offset); } module.exports = /* @__PURE__ */ function() { function BufferList() { _classCallCheck(this, BufferList); this.head = null; this.tail = null; this.length = 0; } _createClass(BufferList, [{ key: "push", value: function push(v) { var entry = { data: v, next: null }; if (this.length > 0) this.tail.next = entry; else this.head = entry; this.tail = entry; ++this.length; } }, { key: "unshift", value: function unshift(v) { var entry = { data: v, next: this.head }; if (this.length === 0) this.tail = entry; this.head = entry; ++this.length; } }, { key: "shift", value: function shift() { if (this.length === 0) return; var ret = this.head.data; if (this.length === 1) this.head = this.tail = null; else this.head = this.head.next; --this.length; return ret; } }, { key: "clear", value: function clear() { this.head = this.tail = null; this.length = 0; } }, { key: "join", value: function join(s) { if (this.length === 0) return ""; var p = this.head; var ret = "" + p.data; while (p = p.next) ret += s + p.data; return ret; } }, { key: "concat", value: function concat(n) { if (this.length === 0) return Buffer3.alloc(0); var ret = Buffer3.allocUnsafe(n >>> 0); var p = this.head; var i = 0; while (p) { copyBuffer(p.data, ret, i); i += p.data.length; p = p.next; } return ret; } // Consumes a specified amount of bytes or characters from the buffered data. }, { key: "consume", value: function consume(n, hasStrings) { var ret; if (n < this.head.data.length) { ret = this.head.data.slice(0, n); this.head.data = this.head.data.slice(n); } else if (n === this.head.data.length) { ret = this.shift(); } else { ret = hasStrings ? this._getString(n) : this._getBuffer(n); } return ret; } }, { key: "first", value: function first() { return this.head.data; } // Consumes a specified amount of characters from the buffered data. }, { key: "_getString", value: function _getString(n) { var p = this.head; var c = 1; var ret = p.data; n -= ret.length; while (p = p.next) { var str = p.data; var nb = n > str.length ? str.length : n; if (nb === str.length) ret += str; else ret += str.slice(0, n); n -= nb; if (n === 0) { if (nb === str.length) { ++c; if (p.next) this.head = p.next; else this.head = this.tail = null; } else { this.head = p; p.data = str.slice(nb); } break; } ++c; } this.length -= c; return ret; } // Consumes a specified amount of bytes from the buffered data. }, { key: "_getBuffer", value: function _getBuffer(n) { var ret = Buffer3.allocUnsafe(n); var p = this.head; var c = 1; p.data.copy(ret); n -= p.data.length; while (p = p.next) { var buf = p.data; var nb = n > buf.length ? buf.length : n; buf.copy(ret, ret.length - n, 0, nb); n -= nb; if (n === 0) { if (nb === buf.length) { ++c; if (p.next) this.head = p.next; else this.head = this.tail = null; } else { this.head = p; p.data = buf.slice(nb); } break; } ++c; } this.length -= c; return ret; } // Make sure the linked list only shows the minimal necessary information. }, { key: custom, value: function value(_, options) { return inspect(this, _objectSpread(_objectSpread({}, options), {}, { // Only inspect one level. depth: 0, // It should not recurse. customInspect: false })); } }]); return BufferList; }(); } }); // node_modules/duplexify/node_modules/readable-stream/lib/internal/streams/destroy.js var require_destroy2 = __commonJS({ "node_modules/duplexify/node_modules/readable-stream/lib/internal/streams/destroy.js"(exports, module) { "use strict"; init_process_shim(); function destroy(err, cb) { var _this = this; var readableDestroyed = this._readableState && this._readableState.destroyed; var writableDestroyed = this._writableState && this._writableState.destroyed; if (readableDestroyed || writableDestroyed) { if (cb) { cb(err); } else if (err) { if (!this._writableState) { process.nextTick(emitErrorNT, this, err); } else if (!this._writableState.errorEmitted) { this._writableState.errorEmitted = true; process.nextTick(emitErrorNT, this, err); } } return this; } if (this._readableState) { this._readableState.destroyed = true; } if (this._writableState) { this._writableState.destroyed = true; } this._destroy(err || null, function(err2) { if (!cb && err2) { if (!_this._writableState) { process.nextTick(emitErrorAndCloseNT, _this, err2); } else if (!_this._writableState.errorEmitted) { _this._writableState.errorEmitted = true; process.nextTick(emitErrorAndCloseNT, _this, err2); } else { process.nextTick(emitCloseNT, _this); } } else if (cb) { process.nextTick(emitCloseNT, _this); cb(err2); } else { process.nextTick(emitCloseNT, _this); } }); return this; } function emitErrorAndCloseNT(self2, err) { emitErrorNT(self2, err); emitCloseNT(self2); } function emitCloseNT(self2) { if (self2._writableState && !self2._writableState.emitClose) return; if (self2._readableState && !self2._readableState.emitClose) return; self2.emit("close"); } function undestroy() { if (this._readableState) { this._readableState.destroyed = false; this._readableState.reading = false; this._readableState.ended = false; this._readableState.endEmitted = false; } if (this._writableState) { this._writableState.destroyed = false; this._writableState.ended = false; this._writableState.ending = false; this._writableState.finalCalled = false; this._writableState.prefinished = false; this._writableState.finished = false; this._writableState.errorEmitted = false; } } function emitErrorNT(self2, err) { self2.emit("error", err); } function errorOrDestroy(stream, err) { var rState = stream._readableState; var wState = stream._writableState; if (rState && rState.autoDestroy || wState && wState.autoDestroy) stream.destroy(err); else stream.emit("error", err); } module.exports = { destroy, undestroy, errorOrDestroy }; } }); // node_modules/duplexify/node_modules/readable-stream/errors-browser.js var require_errors_browser = __commonJS({ "node_modules/duplexify/node_modules/readable-stream/errors-browser.js"(exports, module) { "use strict"; init_process_shim(); function _inheritsLoose(subClass, superClass) { subClass.prototype = Object.create(superClass.prototype); subClass.prototype.constructor = subClass; subClass.__proto__ = superClass; } var codes = {}; function createErrorType(code, message, Base) { if (!Base) { Base = Error; } function getMessage(arg1, arg2, arg3) { if (typeof message === "string") { return message; } else { return message(arg1, arg2, arg3); } } var NodeError = /* @__PURE__ */ function(_Base) { _inheritsLoose(NodeError2, _Base); function NodeError2(arg1, arg2, arg3) { return _Base.call(this, getMessage(arg1, arg2, arg3)) || this; } return NodeError2; }(Base); NodeError.prototype.name = Base.name; NodeError.prototype.code = code; codes[code] = NodeError; } function oneOf(expected, thing) { if (Array.isArray(expected)) { var len = expected.length; expected = expected.map(function(i) { return String(i); }); if (len > 2) { return "one of ".concat(thing, " ").concat(expected.slice(0, len - 1).join(", "), ", or ") + expected[len - 1]; } else if (len === 2) { return "one of ".concat(thing, " ").concat(expected[0], " or ").concat(expected[1]); } else { return "of ".concat(thing, " ").concat(expected[0]); } } else { return "of ".concat(thing, " ").concat(String(expected)); } } function startsWith(str, search, pos) { return str.substr(!pos || pos < 0 ? 0 : +pos, search.length) === search; } function endsWith(str, search, this_len) { if (this_len === void 0 || this_len > str.length) { this_len = str.length; } return str.substring(this_len - search.length, this_len) === search; } function includes(str, search, start) { if (typeof start !== "number") { start = 0; } if (start + search.length > str.length) { return false; } else { return str.indexOf(search, start) !== -1; } } createErrorType("ERR_INVALID_OPT_VALUE", function(name, value) { return 'The value "' + value + '" is invalid for option "' + name + '"'; }, TypeError); createErrorType("ERR_INVALID_ARG_TYPE", function(name, expected, actual) { var determiner; if (typeof expected === "string" && startsWith(expected, "not ")) { determiner = "must not be"; expected = expected.replace(/^not /, ""); } else { determiner = "must be"; } var msg; if (endsWith(name, " argument")) { msg = "The ".concat(name, " ").concat(determiner, " ").concat(oneOf(expected, "type")); } else { var type = includes(name, ".") ? "property" : "argument"; msg = 'The "'.concat(name, '" ').concat(type, " ").concat(determiner, " ").concat(oneOf(expected, "type")); } msg += ". Received type ".concat(typeof actual); return msg; }, TypeError); createErrorType("ERR_STREAM_PUSH_AFTER_EOF", "stream.push() after EOF"); createErrorType("ERR_METHOD_NOT_IMPLEMENTED", function(name) { return "The " + name + " method is not implemented"; }); createErrorType("ERR_STREAM_PREMATURE_CLOSE", "Premature close"); createErrorType("ERR_STREAM_DESTROYED", function(name) { return "Cannot call " + name + " after a stream was destroyed"; }); createErrorType("ERR_MULTIPLE_CALLBACK", "Callback called multiple times"); createErrorType("ERR_STREAM_CANNOT_PIPE", "Cannot pipe, not readable"); createErrorType("ERR_STREAM_WRITE_AFTER_END", "write after end"); createErrorType("ERR_STREAM_NULL_VALUES", "May not write null values to stream", TypeError); createErrorType("ERR_UNKNOWN_ENCODING", function(arg) { return "Unknown encoding: " + arg; }, TypeError); createErrorType("ERR_STREAM_UNSHIFT_AFTER_END_EVENT", "stream.unshift() after end event"); module.exports.codes = codes; } }); // node_modules/duplexify/node_modules/readable-stream/lib/internal/streams/state.js var require_state2 = __commonJS({ "node_modules/duplexify/node_modules/readable-stream/lib/internal/streams/state.js"(exports, module) { "use strict"; init_process_shim(); var ERR_INVALID_OPT_VALUE = require_errors_browser().codes.ERR_INVALID_OPT_VALUE; function highWaterMarkFrom(options, isDuplex, duplexKey) { return options.highWaterMark != null ? options.highWaterMark : isDuplex ? options[duplexKey] : null; } function getHighWaterMark(state, options, duplexKey, isDuplex) { var hwm = highWaterMarkFrom(options, isDuplex, duplexKey); if (hwm != null) { if (!(isFinite(hwm) && Math.floor(hwm) === hwm) || hwm < 0) { var name = isDuplex ? duplexKey : "highWaterMark"; throw new ERR_INVALID_OPT_VALUE(name, hwm); } return Math.floor(hwm); } return state.objectMode ? 16 : 16 * 1024; } module.exports = { getHighWaterMark }; } }); // node_modules/util-deprecate/browser.js var require_browser2 = __commonJS({ "node_modules/util-deprecate/browser.js"(exports, module) { init_process_shim(); module.exports = deprecate; function deprecate(fn, msg) { if (config("noDeprecation")) { return fn; } var warned = false; function deprecated() { if (!warned) { if (config("throwDeprecation")) { throw new Error(msg); } else if (config("traceDeprecation")) { console.trace(msg); } else { console.warn(msg); } warned = true; } return fn.apply(this, arguments); } return deprecated; } function config(name) { try { if (!global.localStorage) return false; } catch (_) { return false; } var val = global.localStorage[name]; if (null == val) return false; return String(val).toLowerCase() === "true"; } } }); // node_modules/duplexify/node_modules/readable-stream/lib/_stream_writable.js var require_stream_writable = __commonJS({ "node_modules/duplexify/node_modules/readable-stream/lib/_stream_writable.js"(exports, module) { "use strict"; init_process_shim(); module.exports = Writable; function CorkedRequest(state) { var _this = this; this.next = null; this.entry = null; this.finish = function() { onCorkedFinish(_this, state); }; } var Duplex; Writable.WritableState = WritableState; var internalUtil = { deprecate: require_browser2() }; var Stream = require_stream_browser(); var Buffer3 = require_buffer().Buffer; var OurUint8Array = (typeof global !== "undefined" ? global : typeof window !== "undefined" ? window : typeof self !== "undefined" ? self : {}).Uint8Array || function() { }; function _uint8ArrayToBuffer(chunk) { return Buffer3.from(chunk); } function _isUint8Array(obj) { return Buffer3.isBuffer(obj) || obj instanceof OurUint8Array; } var destroyImpl = require_destroy2(); var _require = require_state2(); var getHighWaterMark = _require.getHighWaterMark; var _require$codes = require_errors_browser().codes; var ERR_INVALID_ARG_TYPE2 = _require$codes.ERR_INVALID_ARG_TYPE; var ERR_METHOD_NOT_IMPLEMENTED = _require$codes.ERR_METHOD_NOT_IMPLEMENTED; var ERR_MULTIPLE_CALLBACK = _require$codes.ERR_MULTIPLE_CALLBACK; var ERR_STREAM_CANNOT_PIPE = _require$codes.ERR_STREAM_CANNOT_PIPE; var ERR_STREAM_DESTROYED = _require$codes.ERR_STREAM_DESTROYED; var ERR_STREAM_NULL_VALUES = _require$codes.ERR_STREAM_NULL_VALUES; var ERR_STREAM_WRITE_AFTER_END = _require$codes.ERR_STREAM_WRITE_AFTER_END; var ERR_UNKNOWN_ENCODING = _require$codes.ERR_UNKNOWN_ENCODING; var errorOrDestroy = destroyImpl.errorOrDestroy; require_inherits_browser()(Writable, Stream); function nop() { } function WritableState(options, stream, isDuplex) { Duplex = Duplex || require_stream_duplex(); options = options || {}; if (typeof isDuplex !== "boolean") isDuplex = stream instanceof Duplex; this.objectMode = !!options.objectMode; if (isDuplex) this.objectMode = this.objectMode || !!options.writableObjectMode; this.highWaterMark = getHighWaterMark(this, options, "writableHighWaterMark", isDuplex); this.finalCalled = false; this.needDrain = false; this.ending = false; this.ended = false; this.finished = false; this.destroyed = false; var noDecode = options.decodeStrings === false; this.decodeStrings = !noDecode; this.defaultEncoding = options.defaultEncoding || "utf8"; this.length = 0; this.writing = false; this.corked = 0; this.sync = true; this.bufferProcessing = false; this.onwrite = function(er) { onwrite(stream, er); }; this.writecb = null; this.writelen = 0; this.bufferedRequest = null; this.lastBufferedRequest = null; this.pendingcb = 0; this.prefinished = false; this.errorEmitted = false; this.emitClose = options.emitClose !== false; this.autoDestroy = !!options.autoDestroy; this.bufferedRequestCount = 0; this.corkedRequestsFree = new CorkedRequest(this); } WritableState.prototype.getBuffer = function getBuffer() { var current = this.bufferedRequest; var out = []; while (current) { out.push(current); current = current.next; } return out; }; (function() { try { Object.defineProperty(WritableState.prototype, "buffer", { get: internalUtil.deprecate(function writableStateBufferGetter() { return this.getBuffer(); }, "_writableState.buffer is deprecated. Use _writableState.getBuffer instead.", "DEP0003") }); } catch (_) { } })(); var realHasInstance; if (typeof Symbol === "function" && Symbol.hasInstance && typeof Function.prototype[Symbol.hasInstance] === "function") { realHasInstance = Function.prototype[Symbol.hasInstance]; Object.defineProperty(Writable, Symbol.hasInstance, { value: function value(object) { if (realHasInstance.call(this, object)) return true; if (this !== Writable) return false; return object && object._writableState instanceof WritableState; } }); } else { realHasInstance = function realHasInstance2(object) { return object instanceof this; }; } function Writable(options) { Duplex = Duplex || require_stream_duplex(); var isDuplex = this instanceof Duplex; if (!isDuplex && !realHasInstance.call(Writable, this)) return new Writable(options); this._writableState = new WritableState(options, this, isDuplex); this.writable = true; if (options) { if (typeof options.write === "function") this._write = options.write; if (typeof options.writev === "function") this._writev = options.writev; if (typeof options.destroy === "function") this._destroy = options.destroy; if (typeof options.final === "function") this._final = options.final; } Stream.call(this); } Writable.prototype.pipe = function() { errorOrDestroy(this, new ERR_STREAM_CANNOT_PIPE()); }; function writeAfterEnd(stream, cb) { var er = new ERR_STREAM_WRITE_AFTER_END(); errorOrDestroy(stream, er); process.nextTick(cb, er); } function validChunk(stream, state, chunk, cb) { var er; if (chunk === null) { er = new ERR_STREAM_NULL_VALUES(); } else if (typeof chunk !== "string" && !state.objectMode) { er = new ERR_INVALID_ARG_TYPE2("chunk", ["string", "Buffer"], chunk); } if (er) { errorOrDestroy(stream, er); process.nextTick(cb, er); return false; } return true; } Writable.prototype.write = function(chunk, encoding, cb) { var state = this._writableState; var ret = false; var isBuf = !state.objectMode && _isUint8Array(chunk); if (isBuf && !Buffer3.isBuffer(chunk)) { chunk = _uint8ArrayToBuffer(chunk); } if (typeof encoding === "function") { cb = encoding; encoding = null; } if (isBuf) encoding = "buffer"; else if (!encoding) encoding = state.defaultEncoding; if (typeof cb !== "function") cb = nop; if (state.ending) writeAfterEnd(this, cb); else if (isBuf || validChunk(this, state, chunk, cb)) { state.pendingcb++; ret = writeOrBuffer(this, state, isBuf, chunk, encoding, cb); } return ret; }; Writable.prototype.cork = function() { this._writableState.corked++; }; Writable.prototype.uncork = function() { var state = this._writableState; if (state.corked) { state.corked--; if (!state.writing && !state.corked && !state.bufferProcessing && state.bufferedRequest) clearBuffer(this, state); } }; Writable.prototype.setDefaultEncoding = function setDefaultEncoding(encoding) { if (typeof encoding === "string") encoding = encoding.toLowerCase(); if (!(["hex", "utf8", "utf-8", "ascii", "binary", "base64", "ucs2", "ucs-2", "utf16le", "utf-16le", "raw"].indexOf((encoding + "").toLowerCase()) > -1)) throw new ERR_UNKNOWN_ENCODING(encoding); this._writableState.defaultEncoding = encoding; return this; }; Object.defineProperty(Writable.prototype, "writableBuffer", { // making it explicit this property is not enumerable // because otherwise some prototype manipulation in // userland will fail enumerable: false, get: function get() { return this._writableState && this._writableState.getBuffer(); } }); function decodeChunk(state, chunk, encoding) { if (!state.objectMode && state.decodeStrings !== false && typeof chunk === "string") { chunk = Buffer3.from(chunk, encoding); } return chunk; } Object.defineProperty(Writable.prototype, "writableHighWaterMark", { // making it explicit this property is not enumerable // because otherwise some prototype manipulation in // userland will fail enumerable: false, get: function get() { return this._writableState.highWaterMark; } }); function writeOrBuffer(stream, state, isBuf, chunk, encoding, cb) { if (!isBuf) { var newChunk = decodeChunk(state, chunk, encoding); if (chunk !== newChunk) { isBuf = true; encoding = "buffer"; chunk = newChunk; } } var len = state.objectMode ? 1 : chunk.length; state.length += len; var ret = state.length < state.highWaterMark; if (!ret) state.needDrain = true; if (state.writing || state.corked) { var last = state.lastBufferedRequest; state.lastBufferedRequest = { chunk, encoding, isBuf, callback: cb, next: null }; if (last) { last.next = state.lastBufferedRequest; } else { state.bufferedRequest = state.lastBufferedRequest; } state.bufferedRequestCount += 1; } else { doWrite(stream, state, false, len, chunk, encoding, cb); } return ret; } function doWrite(stream, state, writev, len, chunk, encoding, cb) { state.writelen = len; state.writecb = cb; state.writing = true; state.sync = true; if (state.destroyed) state.onwrite(new ERR_STREAM_DESTROYED("write")); else if (writev) stream._writev(chunk, state.onwrite); else stream._write(chunk, encoding, state.onwrite); state.sync = false; } function onwriteError(stream, state, sync, er, cb) { --state.pendingcb; if (sync) { process.nextTick(cb, er); process.nextTick(finishMaybe, stream, state); stream._writableState.errorEmitted = true; errorOrDestroy(stream, er); } else { cb(er); stream._writableState.errorEmitted = true; errorOrDestroy(stream, er); finishMaybe(stream, state); } } function onwriteStateUpdate(state) { state.writing = false; state.writecb = null; state.length -= state.writelen; state.writelen = 0; } function onwrite(stream, er) { var state = stream._writableState; var sync = state.sync; var cb = state.writecb; if (typeof cb !== "function") throw new ERR_MULTIPLE_CALLBACK(); onwriteStateUpdate(state); if (er) onwriteError(stream, state, sync, er, cb); else { var finished = needFinish(state) || stream.destroyed; if (!finished && !state.corked && !state.bufferProcessing && state.bufferedRequest) { clearBuffer(stream, state); } if (sync) { process.nextTick(afterWrite, stream, state, finished, cb); } else { afterWrite(stream, state, finished, cb); } } } function afterWrite(stream, state, finished, cb) { if (!finished) onwriteDrain(stream, state); state.pendingcb--; cb(); finishMaybe(stream, state); } function onwriteDrain(stream, state) { if (state.length === 0 && state.needDrain) { state.needDrain = false; stream.emit("drain"); } } function clearBuffer(stream, state) { state.bufferProcessing = true; var entry = state.bufferedRequest; if (stream._writev && entry && entry.next) { var l = state.bufferedRequestCount; var buffer = new Array(l); var holder = state.corkedRequestsFree; holder.entry = entry; var count = 0; var allBuffers = true; while (entry) { buffer[count] = entry; if (!entry.isBuf) allBuffers = false; entry = entry.next; count += 1; } buffer.allBuffers = allBuffers; doWrite(stream, state, true, state.length, buffer, "", holder.finish); state.pendingcb++; state.lastBufferedRequest = null; if (holder.next) { state.corkedRequestsFree = holder.next; holder.next = null; } else { state.corkedRequestsFree = new CorkedRequest(state); } state.bufferedRequestCount = 0; } else { while (entry) { var chunk = entry.chunk; var encoding = entry.encoding; var cb = entry.callback; var len = state.objectMode ? 1 : chunk.length; doWrite(stream, state, false, len, chunk, encoding, cb); entry = entry.next; state.bufferedRequestCount--; if (state.writing) { break; } } if (entry === null) state.lastBufferedRequest = null; } state.bufferedRequest = entry; state.bufferProcessing = false; } Writable.prototype._write = function(chunk, encoding, cb) { cb(new ERR_METHOD_NOT_IMPLEMENTED("_write()")); }; Writable.prototype._writev = null; Writable.prototype.end = function(chunk, encoding, cb) { var state = this._writableState; if (typeof chunk === "function") { cb = chunk; chunk = null; encoding = null; } else if (typeof encoding === "function") { cb = encoding; encoding = null; } if (chunk !== null && chunk !== void 0) this.write(chunk, encoding); if (state.corked) { state.corked = 1; this.uncork(); } if (!state.ending) endWritable(this, state, cb); return this; }; Object.defineProperty(Writable.prototype, "writableLength", { // making it explicit this property is not enumerable // because otherwise some prototype manipulation in // userland will fail enumerable: false, get: function get() { return this._writableState.length; } }); function needFinish(state) { return state.ending && state.length === 0 && state.bufferedRequest === null && !state.finished && !state.writing; } function callFinal(stream, state) { stream._final(function(err) { state.pendingcb--; if (err) { errorOrDestroy(stream, err); } state.prefinished = true; stream.emit("prefinish"); finishMaybe(stream, state); }); } function prefinish(stream, state) { if (!state.prefinished && !state.finalCalled) { if (typeof stream._final === "function" && !state.destroyed) { state.pendingcb++; state.finalCalled = true; process.nextTick(callFinal, stream, state); } else { state.prefinished = true; stream.emit("prefinish"); } } } function finishMaybe(stream, state) { var need = needFinish(state); if (need) { prefinish(stream, state); if (state.pendingcb === 0) { state.finished = true; stream.emit("finish"); if (state.autoDestroy) { var rState = stream._readableState; if (!rState || rState.autoDestroy && rState.endEmitted) { stream.destroy(); } } } } return need; } function endWritable(stream, state, cb) { state.ending = true; finishMaybe(stream, state); if (cb) { if (state.finished) process.nextTick(cb); else stream.once("finish", cb); } state.ended = true; stream.writable = false; } function onCorkedFinish(corkReq, state, err) { var entry = corkReq.entry; corkReq.entry = null; while (entry) { var cb = entry.callback; state.pendingcb--; cb(err); entry = entry.next; } state.corkedRequestsFree.next = corkReq; } Object.defineProperty(Writable.prototype, "destroyed", { // making it explicit this property is not enumerable // because otherwise some prototype manipulation in // userland will fail enumerable: false, get: function get() { if (this._writableState === void 0) { return false; } return this._writableState.destroyed; }, set: function set(value) { if (!this._writableState) { return; } this._writableState.destroyed = value; } }); Writable.prototype.destroy = destroyImpl.destroy; Writable.prototype._undestroy = destroyImpl.undestroy; Writable.prototype._destroy = function(err, cb) { cb(err); }; } }); // node_modules/duplexify/node_modules/readable-stream/lib/_stream_duplex.js var require_stream_duplex = __commonJS({ "node_modules/duplexify/node_modules/readable-stream/lib/_stream_duplex.js"(exports, module) { "use strict"; init_process_shim(); var objectKeys = Object.keys || function(obj) { var keys2 = []; for (var key in obj) keys2.push(key); return keys2; }; module.exports = Duplex; var Readable = require_stream_readable(); var Writable = require_stream_writable(); require_inherits_browser()(Duplex, Readable); { keys = objectKeys(Writable.prototype); for (v = 0; v < keys.length; v++) { method = keys[v]; if (!Duplex.prototype[method]) Duplex.prototype[method] = Writable.prototype[method]; } } var keys; var method; var v; function Duplex(options) { if (!(this instanceof Duplex)) return new Duplex(options); Readable.call(this, options); Writable.call(this, options); this.allowHalfOpen = true; if (options) { if (options.readable === false) this.readable = false; if (options.writable === false) this.writable = false; if (options.allowHalfOpen === false) { this.allowHalfOpen = false; this.once("end", onend); } } } Object.defineProperty(Duplex.prototype, "writableHighWaterMark", { // making it explicit this property is not enumerable // because otherwise some prototype manipulation in // userland will fail enumerable: false, get: function get() { return this._writableState.highWaterMark; } }); Object.defineProperty(Duplex.prototype, "writableBuffer", { // making it explicit this property is not enumerable // because otherwise some prototype manipulation in // userland will fail enumerable: false, get: function get() { return this._writableState && this._writableState.getBuffer(); } }); Object.defineProperty(Duplex.prototype, "writableLength", { // making it explicit this property is not enumerable // because otherwise some prototype manipulation in // userland will fail enumerable: false, get: function get() { return this._writableState.length; } }); function onend() { if (this._writableState.ended) return; process.nextTick(onEndNT, this); } function onEndNT(self2) { self2.end(); } Object.defineProperty(Duplex.prototype, "destroyed", { // making it explicit this property is not enumerable // because otherwise some prototype manipulation in // userland will fail enumerable: false, get: function get() { if (this._readableState === void 0 || this._writableState === void 0) { return false; } return this._readableState.destroyed && this._writableState.destroyed; }, set: function set(value) { if (this._readableState === void 0 || this._writableState === void 0) { return; } this._readableState.destroyed = value; this._writableState.destroyed = value; } }); } }); // node_modules/duplexify/node_modules/readable-stream/lib/internal/streams/end-of-stream.js var require_end_of_stream3 = __commonJS({ "node_modules/duplexify/node_modules/readable-stream/lib/internal/streams/end-of-stream.js"(exports, module) { "use strict"; init_process_shim(); var ERR_STREAM_PREMATURE_CLOSE = require_errors_browser().codes.ERR_STREAM_PREMATURE_CLOSE; function once(callback) { var called = false; return function() { if (called) return; called = true; for (var _len = arguments.length, args = new Array(_len), _key = 0; _key < _len; _key++) { args[_key] = arguments[_key]; } callback.apply(this, args); }; } function noop() { } function isRequest(stream) { return stream.setHeader && typeof stream.abort === "function"; } function eos(stream, opts, callback) { if (typeof opts === "function") return eos(stream, null, opts); if (!opts) opts = {}; callback = once(callback || noop); var readable = opts.readable || opts.readable !== false && stream.readable; var writable = opts.writable || opts.writable !== false && stream.writable; var onlegacyfinish = function onlegacyfinish2() { if (!stream.writable) onfinish(); }; var writableEnded = stream._writableState && stream._writableState.finished; var onfinish = function onfinish2() { writable = false; writableEnded = true; if (!readable) callback.call(stream); }; var readableEnded = stream._readableState && stream._readableState.endEmitted; var onend = function onend2() { readable = false; readableEnded = true; if (!writable) callback.call(stream); }; var onerror = function onerror2(err) { callback.call(stream, err); }; var onclose = function onclose2() { var err; if (readable && !readableEnded) { if (!stream._readableState || !stream._readableState.ended) err = new ERR_STREAM_PREMATURE_CLOSE(); return callback.call(stream, err); } if (writable && !writableEnded) { if (!stream._writableState || !stream._writableState.ended) err = new ERR_STREAM_PREMATURE_CLOSE(); return callback.call(stream, err); } }; var onrequest = function onrequest2() { stream.req.on("finish", onfinish); }; if (isRequest(stream)) { stream.on("complete", onfinish); stream.on("abort", onclose); if (stream.req) onrequest(); else stream.on("request", onrequest); } else if (writable && !stream._writableState) { stream.on("end", onlegacyfinish); stream.on("close", onlegacyfinish); } stream.on("end", onend); stream.on("finish", onfinish); if (opts.error !== false) stream.on("error", onerror); stream.on("close", onclose); return function() { stream.removeListener("complete", onfinish); stream.removeListener("abort", onclose); stream.removeListener("request", onrequest); if (stream.req) stream.req.removeListener("finish", onfinish); stream.removeListener("end", onlegacyfinish); stream.removeListener("close", onlegacyfinish); stream.removeListener("finish", onfinish); stream.removeListener("end", onend); stream.removeListener("error", onerror); stream.removeListener("close", onclose); }; } module.exports = eos; } }); // node_modules/duplexify/node_modules/readable-stream/lib/internal/streams/async_iterator.js var require_async_iterator = __commonJS({ "node_modules/duplexify/node_modules/readable-stream/lib/internal/streams/async_iterator.js"(exports, module) { "use strict"; init_process_shim(); var _Object$setPrototypeO; function _defineProperty(obj, key, value) { key = _toPropertyKey(key); if (key in obj) { Object.defineProperty(obj, key, { value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; } function _toPropertyKey(arg) { var key = _toPrimitive(arg, "string"); return typeof key === "symbol" ? key : String(key); } function _toPrimitive(input, hint) { if (typeof input !== "object" || input === null) return input; var prim = input[Symbol.toPrimitive]; if (prim !== void 0) { var res = prim.call(input, hint || "default"); if (typeof res !== "object") return res; throw new TypeError("@@toPrimitive must return a primitive value."); } return (hint === "string" ? String : Number)(input); } var finished = require_end_of_stream3(); var kLastResolve = Symbol("lastResolve"); var kLastReject = Symbol("lastReject"); var kError = Symbol("error"); var kEnded = Symbol("ended"); var kLastPromise = Symbol("lastPromise"); var kHandlePromise = Symbol("handlePromise"); var kStream = Symbol("stream"); function createIterResult(value, done) { return { value, done }; } function readAndResolve(iter) { var resolve = iter[kLastResolve]; if (resolve !== null) { var data = iter[kStream].read(); if (data !== null) { iter[kLastPromise] = null; iter[kLastResolve] = null; iter[kLastReject] = null; resolve(createIterResult(data, false)); } } } function onReadable(iter) { process.nextTick(readAndResolve, iter); } function wrapForNext(lastPromise, iter) { return function(resolve, reject) { lastPromise.then(function() { if (iter[kEnded]) { resolve(createIterResult(void 0, true)); return; } iter[kHandlePromise](resolve, reject); }, reject); }; } var AsyncIteratorPrototype = Object.getPrototypeOf(function() { }); var ReadableStreamAsyncIteratorPrototype = Object.setPrototypeOf((_Object$setPrototypeO = { get stream() { return this[kStream]; }, next: function next() { var _this = this; var error = this[kError]; if (error !== null) { return Promise.reject(error); } if (this[kEnded]) { return Promise.resolve(createIterResult(void 0, true)); } if (this[kStream].destroyed) { return new Promise(function(resolve, reject) { process.nextTick(function() { if (_this[kError]) { reject(_this[kError]); } else { resolve(createIterResult(void 0, true)); } }); }); } var lastPromise = this[kLastPromise]; var promise; if (lastPromise) { promise = new Promise(wrapForNext(lastPromise, this)); } else { var data = this[kStream].read(); if (data !== null) { return Promise.resolve(createIterResult(data, false)); } promise = new Promise(this[kHandlePromise]); } this[kLastPromise] = promise; return promise; } }, _defineProperty(_Object$setPrototypeO, Symbol.asyncIterator, function() { return this; }), _defineProperty(_Object$setPrototypeO, "return", function _return() { var _this2 = this; return new Promise(function(resolve, reject) { _this2[kStream].destroy(null, function(err) { if (err) { reject(err); return; } resolve(createIterResult(void 0, true)); }); }); }), _Object$setPrototypeO), AsyncIteratorPrototype); var createReadableStreamAsyncIterator = function createReadableStreamAsyncIterator2(stream) { var _Object$create; var iterator = Object.create(ReadableStreamAsyncIteratorPrototype, (_Object$create = {}, _defineProperty(_Object$create, kStream, { value: stream, writable: true }), _defineProperty(_Object$create, kLastResolve, { value: null, writable: true }), _defineProperty(_Object$create, kLastReject, { value: null, writable: true }), _defineProperty(_Object$create, kError, { value: null, writable: true }), _defineProperty(_Object$create, kEnded, { value: stream._readableState.endEmitted, writable: true }), _defineProperty(_Object$create, kHandlePromise, { value: function value(resolve, reject) { var data = iterator[kStream].read(); if (data) { iterator[kLastPromise] = null; iterator[kLastResolve] = null; iterator[kLastReject] = null; resolve(createIterResult(data, false)); } else { iterator[kLastResolve] = resolve; iterator[kLastReject] = reject; } }, writable: true }), _Object$create)); iterator[kLastPromise] = null; finished(stream, function(err) { if (err && err.code !== "ERR_STREAM_PREMATURE_CLOSE") { var reject = iterator[kLastReject]; if (reject !== null) { iterator[kLastPromise] = null; iterator[kLastResolve] = null; iterator[kLastReject] = null; reject(err); } iterator[kError] = err; return; } var resolve = iterator[kLastResolve]; if (resolve !== null) { iterator[kLastPromise] = null; iterator[kLastResolve] = null; iterator[kLastReject] = null; resolve(createIterResult(void 0, true)); } iterator[kEnded] = true; }); stream.on("readable", onReadable.bind(null, iterator)); return iterator; }; module.exports = createReadableStreamAsyncIterator; } }); // node_modules/duplexify/node_modules/readable-stream/lib/internal/streams/from-browser.js var require_from_browser = __commonJS({ "node_modules/duplexify/node_modules/readable-stream/lib/internal/streams/from-browser.js"(exports, module) { init_process_shim(); module.exports = function() { throw new Error("Readable.from is not available in the browser"); }; } }); // node_modules/duplexify/node_modules/readable-stream/lib/_stream_readable.js var require_stream_readable = __commonJS({ "node_modules/duplexify/node_modules/readable-stream/lib/_stream_readable.js"(exports, module) { "use strict"; init_process_shim(); module.exports = Readable; var Duplex; Readable.ReadableState = ReadableState; var EE = require_events().EventEmitter; var EElistenerCount = function EElistenerCount2(emitter, type) { return emitter.listeners(type).length; }; var Stream = require_stream_browser(); var Buffer3 = require_buffer().Buffer; var OurUint8Array = (typeof global !== "undefined" ? global : typeof window !== "undefined" ? window : typeof self !== "undefined" ? self : {}).Uint8Array || function() { }; function _uint8ArrayToBuffer(chunk) { return Buffer3.from(chunk); } function _isUint8Array(obj) { return Buffer3.isBuffer(obj) || obj instanceof OurUint8Array; } var debugUtil = require_util2(); var debug; if (debugUtil && debugUtil.debuglog) { debug = debugUtil.debuglog("stream"); } else { debug = function debug2() { }; } var BufferList = require_buffer_list2(); var destroyImpl = require_destroy2(); var _require = require_state2(); var getHighWaterMark = _require.getHighWaterMark; var _require$codes = require_errors_browser().codes; var ERR_INVALID_ARG_TYPE2 = _require$codes.ERR_INVALID_ARG_TYPE; var ERR_STREAM_PUSH_AFTER_EOF = _require$codes.ERR_STREAM_PUSH_AFTER_EOF; var ERR_METHOD_NOT_IMPLEMENTED = _require$codes.ERR_METHOD_NOT_IMPLEMENTED; var ERR_STREAM_UNSHIFT_AFTER_END_EVENT = _require$codes.ERR_STREAM_UNSHIFT_AFTER_END_EVENT; var StringDecoder; var createReadableStreamAsyncIterator; var from; require_inherits_browser()(Readable, Stream); var errorOrDestroy = destroyImpl.errorOrDestroy; var kProxyEvents = ["error", "close", "destroy", "pause", "resume"]; function prependListener(emitter, event, fn) { if (typeof emitter.prependListener === "function") return emitter.prependListener(event, fn); if (!emitter._events || !emitter._events[event]) emitter.on(event, fn); else if (Array.isArray(emitter._events[event])) emitter._events[event].unshift(fn); else emitter._events[event] = [fn, emitter._events[event]]; } function ReadableState(options, stream, isDuplex) { Duplex = Duplex || require_stream_duplex(); options = options || {}; if (typeof isDuplex !== "boolean") isDuplex = stream instanceof Duplex; this.objectMode = !!options.objectMode; if (isDuplex) this.objectMode = this.objectMode || !!options.readableObjectMode; this.highWaterMark = getHighWaterMark(this, options, "readableHighWaterMark", isDuplex); this.buffer = new BufferList(); this.length = 0; this.pipes = null; this.pipesCount = 0; this.flowing = null; this.ended = false; this.endEmitted = false; this.reading = false; this.sync = true; this.needReadable = false; this.emittedReadable = false; this.readableListening = false; this.resumeScheduled = false; this.paused = true; this.emitClose = options.emitClose !== false; this.autoDestroy = !!options.autoDestroy; this.destroyed = false; this.defaultEncoding = options.defaultEncoding || "utf8"; this.awaitDrain = 0; this.readingMore = false; this.decoder = null; this.encoding = null; if (options.encoding) { if (!StringDecoder) StringDecoder = require_string_decoder().StringDecoder; this.decoder = new StringDecoder(options.encoding); this.encoding = options.encoding; } } function Readable(options) { Duplex = Duplex || require_stream_duplex(); if (!(this instanceof Readable)) return new Readable(options); var isDuplex = this instanceof Duplex; this._readableState = new ReadableState(options, this, isDuplex); this.readable = true; if (options) { if (typeof options.read === "function") this._read = options.read; if (typeof options.destroy === "function") this._destroy = options.destroy; } Stream.call(this); } Object.defineProperty(Readable.prototype, "destroyed", { // making it explicit this property is not enumerable // because otherwise some prototype manipulation in // userland will fail enumerable: false, get: function get() { if (this._readableState === void 0) { return false; } return this._readableState.destroyed; }, set: function set(value) { if (!this._readableState) { return; } this._readableState.destroyed = value; } }); Readable.prototype.destroy = destroyImpl.destroy; Readable.prototype._undestroy = destroyImpl.undestroy; Readable.prototype._destroy = function(err, cb) { cb(err); }; Readable.prototype.push = function(chunk, encoding) { var state = this._readableState; var skipChunkCheck; if (!state.objectMode) { if (typeof chunk === "string") { encoding = encoding || state.defaultEncoding; if (encoding !== state.encoding) { chunk = Buffer3.from(chunk, encoding); encoding = ""; } skipChunkCheck = true; } } else { skipChunkCheck = true; } return readableAddChunk(this, chunk, encoding, false, skipChunkCheck); }; Readable.prototype.unshift = function(chunk) { return readableAddChunk(this, chunk, null, true, false); }; function readableAddChunk(stream, chunk, encoding, addToFront, skipChunkCheck) { debug("readableAddChunk", chunk); var state = stream._readableState; if (chunk === null) { state.reading = false; onEofChunk(stream, state); } else { var er; if (!skipChunkCheck) er = chunkInvalid(state, chunk); if (er) { errorOrDestroy(stream, er); } else if (state.objectMode || chunk && chunk.length > 0) { if (typeof chunk !== "string" && !state.objectMode && Object.getPrototypeOf(chunk) !== Buffer3.prototype) { chunk = _uint8ArrayToBuffer(chunk); } if (addToFront) { if (state.endEmitted) errorOrDestroy(stream, new ERR_STREAM_UNSHIFT_AFTER_END_EVENT()); else addChunk(stream, state, chunk, true); } else if (state.ended) { errorOrDestroy(stream, new ERR_STREAM_PUSH_AFTER_EOF()); } else if (state.destroyed) { return false; } else { state.reading = false; if (state.decoder && !encoding) { chunk = state.decoder.write(chunk); if (state.objectMode || chunk.length !== 0) addChunk(stream, state, chunk, false); else maybeReadMore(stream, state); } else { addChunk(stream, state, chunk, false); } } } else if (!addToFront) { state.reading = false; maybeReadMore(stream, state); } } return !state.ended && (state.length < state.highWaterMark || state.length === 0); } function addChunk(stream, state, chunk, addToFront) { if (state.flowing && state.length === 0 && !state.sync) { state.awaitDrain = 0; stream.emit("data", chunk); } else { state.length += state.objectMode ? 1 : chunk.length; if (addToFront) state.buffer.unshift(chunk); else state.buffer.push(chunk); if (state.needReadable) emitReadable(stream); } maybeReadMore(stream, state); } function chunkInvalid(state, chunk) { var er; if (!_isUint8Array(chunk) && typeof chunk !== "string" && chunk !== void 0 && !state.objectMode) { er = new ERR_INVALID_ARG_TYPE2("chunk", ["string", "Buffer", "Uint8Array"], chunk); } return er; } Readable.prototype.isPaused = function() { return this._readableState.flowing === false; }; Readable.prototype.setEncoding = function(enc) { if (!StringDecoder) StringDecoder = require_string_decoder().StringDecoder; var decoder = new StringDecoder(enc); this._readableState.decoder = decoder; this._readableState.encoding = this._readableState.decoder.encoding; var p = this._readableState.buffer.head; var content = ""; while (p !== null) { content += decoder.write(p.data); p = p.next; } this._readableState.buffer.clear(); if (content !== "") this._readableState.buffer.push(content); this._readableState.length = content.length; return this; }; var MAX_HWM = 1073741824; function computeNewHighWaterMark(n) { if (n >= MAX_HWM) { n = MAX_HWM; } else { n--; n |= n >>> 1; n |= n >>> 2; n |= n >>> 4; n |= n >>> 8; n |= n >>> 16; n++; } return n; } function howMuchToRead(n, state) { if (n <= 0 || state.length === 0 && state.ended) return 0; if (state.objectMode) return 1; if (n !== n) { if (state.flowing && state.length) return state.buffer.head.data.length; else return state.length; } if (n > state.highWaterMark) state.highWaterMark = computeNewHighWaterMark(n); if (n <= state.length) return n; if (!state.ended) { state.needReadable = true; return 0; } return state.length; } Readable.prototype.read = function(n) { debug("read", n); n = parseInt(n, 10); var state = this._readableState; var nOrig = n; if (n !== 0) state.emittedReadable = false; if (n === 0 && state.needReadable && ((state.highWaterMark !== 0 ? state.length >= state.highWaterMark : state.length > 0) || state.ended)) { debug("read: emitReadable", state.length, state.ended); if (state.length === 0 && state.ended) endReadable(this); else emitReadable(this); return null; } n = howMuchToRead(n, state); if (n === 0 && state.ended) { if (state.length === 0) endReadable(this); return null; } var doRead = state.needReadable; debug("need readable", doRead); if (state.length === 0 || state.length - n < state.highWaterMark) { doRead = true; debug("length less than watermark", doRead); } if (state.ended || state.reading) { doRead = false; debug("reading or ended", doRead); } else if (doRead) { debug("do read"); state.reading = true; state.sync = true; if (state.length === 0) state.needReadable = true; this._read(state.highWaterMark); state.sync = false; if (!state.reading) n = howMuchToRead(nOrig, state); } var ret; if (n > 0) ret = fromList(n, state); else ret = null; if (ret === null) { state.needReadable = state.length <= state.highWaterMark; n = 0; } else { state.length -= n; state.awaitDrain = 0; } if (state.length === 0) { if (!state.ended) state.needReadable = true; if (nOrig !== n && state.ended) endReadable(this); } if (ret !== null) this.emit("data", ret); return ret; }; function onEofChunk(stream, state) { debug("onEofChunk"); if (state.ended) return; if (state.decoder) { var chunk = state.decoder.end(); if (chunk && chunk.length) { state.buffer.push(chunk); state.length += state.objectMode ? 1 : chunk.length; } } state.ended = true; if (state.sync) { emitReadable(stream); } else { state.needReadable = false; if (!state.emittedReadable) { state.emittedReadable = true; emitReadable_(stream); } } } function emitReadable(stream) { var state = stream._readableState; debug("emitReadable", state.needReadable, state.emittedReadable); state.needReadable = false; if (!state.emittedReadable) { debug("emitReadable", state.flowing); state.emittedReadable = true; process.nextTick(emitReadable_, stream); } } function emitReadable_(stream) { var state = stream._readableState; debug("emitReadable_", state.destroyed, state.length, state.ended); if (!state.destroyed && (state.length || state.ended)) { stream.emit("readable"); state.emittedReadable = false; } state.needReadable = !state.flowing && !state.ended && state.length <= state.highWaterMark; flow(stream); } function maybeReadMore(stream, state) { if (!state.readingMore) { state.readingMore = true; process.nextTick(maybeReadMore_, stream, state); } } function maybeReadMore_(stream, state) { while (!state.reading && !state.ended && (state.length < state.highWaterMark || state.flowing && state.length === 0)) { var len = state.length; debug("maybeReadMore read 0"); stream.read(0); if (len === state.length) break; } state.readingMore = false; } Readable.prototype._read = function(n) { errorOrDestroy(this, new ERR_METHOD_NOT_IMPLEMENTED("_read()")); }; Readable.prototype.pipe = function(dest, pipeOpts) { var src = this; var state = this._readableState; switch (state.pipesCount) { case 0: state.pipes = dest; break; case 1: state.pipes = [state.pipes, dest]; break; default: state.pipes.push(dest); break; } state.pipesCount += 1; debug("pipe count=%d opts=%j", state.pipesCount, pipeOpts); var doEnd = (!pipeOpts || pipeOpts.end !== false) && dest !== process.stdout && dest !== process.stderr; var endFn = doEnd ? onend : unpipe; if (state.endEmitted) process.nextTick(endFn); else src.once("end", endFn); dest.on("unpipe", onunpipe); function onunpipe(readable, unpipeInfo) { debug("onunpipe"); if (readable === src) { if (unpipeInfo && unpipeInfo.hasUnpiped === false) { unpipeInfo.hasUnpiped = true; cleanup(); } } } function onend() { debug("onend"); dest.end(); } var ondrain = pipeOnDrain(src); dest.on("drain", ondrain); var cleanedUp = false; function cleanup() { debug("cleanup"); dest.removeListener("close", onclose); dest.removeListener("finish", onfinish); dest.removeListener("drain", ondrain); dest.removeListener("error", onerror); dest.removeListener("unpipe", onunpipe); src.removeListener("end", onend); src.removeListener("end", unpipe); src.removeListener("data", ondata); cleanedUp = true; if (state.awaitDrain && (!dest._writableState || dest._writableState.needDrain)) ondrain(); } src.on("data", ondata); function ondata(chunk) { debug("ondata"); var ret = dest.write(chunk); debug("dest.write", ret); if (ret === false) { if ((state.pipesCount === 1 && state.pipes === dest || state.pipesCount > 1 && indexOf(state.pipes, dest) !== -1) && !cleanedUp) { debug("false write response, pause", state.awaitDrain); state.awaitDrain++; } src.pause(); } } function onerror(er) { debug("onerror", er); unpipe(); dest.removeListener("error", onerror); if (EElistenerCount(dest, "error") === 0) errorOrDestroy(dest, er); } prependListener(dest, "error", onerror); function onclose() { dest.removeListener("finish", onfinish); unpipe(); } dest.once("close", onclose); function onfinish() { debug("onfinish"); dest.removeListener("close", onclose); unpipe(); } dest.once("finish", onfinish); function unpipe() { debug("unpipe"); src.unpipe(dest); } dest.emit("pipe", src); if (!state.flowing) { debug("pipe resume"); src.resume(); } return dest; }; function pipeOnDrain(src) { return function pipeOnDrainFunctionResult() { var state = src._readableState; debug("pipeOnDrain", state.awaitDrain); if (state.awaitDrain) state.awaitDrain--; if (state.awaitDrain === 0 && EElistenerCount(src, "data")) { state.flowing = true; flow(src); } }; } Readable.prototype.unpipe = function(dest) { var state = this._readableState; var unpipeInfo = { hasUnpiped: false }; if (state.pipesCount === 0) return this; if (state.pipesCount === 1) { if (dest && dest !== state.pipes) return this; if (!dest) dest = state.pipes; state.pipes = null; state.pipesCount = 0; state.flowing = false; if (dest) dest.emit("unpipe", this, unpipeInfo); return this; } if (!dest) { var dests = state.pipes; var len = state.pipesCount; state.pipes = null; state.pipesCount = 0; state.flowing = false; for (var i = 0; i < len; i++) dests[i].emit("unpipe", this, { hasUnpiped: false }); return this; } var index = indexOf(state.pipes, dest); if (index === -1) return this; state.pipes.splice(index, 1); state.pipesCount -= 1; if (state.pipesCount === 1) state.pipes = state.pipes[0]; dest.emit("unpipe", this, unpipeInfo); return this; }; Readable.prototype.on = function(ev, fn) { var res = Stream.prototype.on.call(this, ev, fn); var state = this._readableState; if (ev === "data") { state.readableListening = this.listenerCount("readable") > 0; if (state.flowing !== false) this.resume(); } else if (ev === "readable") { if (!state.endEmitted && !state.readableListening) { state.readableListening = state.needReadable = true; state.flowing = false; state.emittedReadable = false; debug("on readable", state.length, state.reading); if (state.length) { emitReadable(this); } else if (!state.reading) { process.nextTick(nReadingNextTick, this); } } } return res; }; Readable.prototype.addListener = Readable.prototype.on; Readable.prototype.removeListener = function(ev, fn) { var res = Stream.prototype.removeListener.call(this, ev, fn); if (ev === "readable") { process.nextTick(updateReadableListening, this); } return res; }; Readable.prototype.removeAllListeners = function(ev) { var res = Stream.prototype.removeAllListeners.apply(this, arguments); if (ev === "readable" || ev === void 0) { process.nextTick(updateReadableListening, this); } return res; }; function updateReadableListening(self2) { var state = self2._readableState; state.readableListening = self2.listenerCount("readable") > 0; if (state.resumeScheduled && !state.paused) { state.flowing = true; } else if (self2.listenerCount("data") > 0) { self2.resume(); } } function nReadingNextTick(self2) { debug("readable nexttick read 0"); self2.read(0); } Readable.prototype.resume = function() { var state = this._readableState; if (!state.flowing) { debug("resume"); state.flowing = !state.readableListening; resume(this, state); } state.paused = false; return this; }; function resume(stream, state) { if (!state.resumeScheduled) { state.resumeScheduled = true; process.nextTick(resume_, stream, state); } } function resume_(stream, state) { debug("resume", state.reading); if (!state.reading) { stream.read(0); } state.resumeScheduled = false; stream.emit("resume"); flow(stream); if (state.flowing && !state.reading) stream.read(0); } Readable.prototype.pause = function() { debug("call pause flowing=%j", this._readableState.flowing); if (this._readableState.flowing !== false) { debug("pause"); this._readableState.flowing = false; this.emit("pause"); } this._readableState.paused = true; return this; }; function flow(stream) { var state = stream._readableState; debug("flow", state.flowing); while (state.flowing && stream.read() !== null) ; } Readable.prototype.wrap = function(stream) { var _this = this; var state = this._readableState; var paused = false; stream.on("end", function() { debug("wrapped end"); if (state.decoder && !state.ended) { var chunk = state.decoder.end(); if (chunk && chunk.length) _this.push(chunk); } _this.push(null); }); stream.on("data", function(chunk) { debug("wrapped data"); if (state.decoder) chunk = state.decoder.write(chunk); if (state.objectMode && (chunk === null || chunk === void 0)) return; else if (!state.objectMode && (!chunk || !chunk.length)) return; var ret = _this.push(chunk); if (!ret) { paused = true; stream.pause(); } }); for (var i in stream) { if (this[i] === void 0 && typeof stream[i] === "function") { this[i] = /* @__PURE__ */ function methodWrap(method) { return function methodWrapReturnFunction() { return stream[method].apply(stream, arguments); }; }(i); } } for (var n = 0; n < kProxyEvents.length; n++) { stream.on(kProxyEvents[n], this.emit.bind(this, kProxyEvents[n])); } this._read = function(n2) { debug("wrapped _read", n2); if (paused) { paused = false; stream.resume(); } }; return this; }; if (typeof Symbol === "function") { Readable.prototype[Symbol.asyncIterator] = function() { if (createReadableStreamAsyncIterator === void 0) { createReadableStreamAsyncIterator = require_async_iterator(); } return createReadableStreamAsyncIterator(this); }; } Object.defineProperty(Readable.prototype, "readableHighWaterMark", { // making it explicit this property is not enumerable // because otherwise some prototype manipulation in // userland will fail enumerable: false, get: function get() { return this._readableState.highWaterMark; } }); Object.defineProperty(Readable.prototype, "readableBuffer", { // making it explicit this property is not enumerable // because otherwise some prototype manipulation in // userland will fail enumerable: false, get: function get() { return this._readableState && this._readableState.buffer; } }); Object.defineProperty(Readable.prototype, "readableFlowing", { // making it explicit this property is not enumerable // because otherwise some prototype manipulation in // userland will fail enumerable: false, get: function get() { return this._readableState.flowing; }, set: function set(state) { if (this._readableState) { this._readableState.flowing = state; } } }); Readable._fromList = fromList; Object.defineProperty(Readable.prototype, "readableLength", { // making it explicit this property is not enumerable // because otherwise some prototype manipulation in // userland will fail enumerable: false, get: function get() { return this._readableState.length; } }); function fromList(n, state) { if (state.length === 0) return null; var ret; if (state.objectMode) ret = state.buffer.shift(); else if (!n || n >= state.length) { if (state.decoder) ret = state.buffer.join(""); else if (state.buffer.length === 1) ret = state.buffer.first(); else ret = state.buffer.concat(state.length); state.buffer.clear(); } else { ret = state.buffer.consume(n, state.decoder); } return ret; } function endReadable(stream) { var state = stream._readableState; debug("endReadable", state.endEmitted); if (!state.endEmitted) { state.ended = true; process.nextTick(endReadableNT, state, stream); } } function endReadableNT(state, stream) { debug("endReadableNT", state.endEmitted, state.length); if (!state.endEmitted && state.length === 0) { state.endEmitted = true; stream.readable = false; stream.emit("end"); if (state.autoDestroy) { var wState = stream._writableState; if (!wState || wState.autoDestroy && wState.finished) { stream.destroy(); } } } } if (typeof Symbol === "function") { Readable.from = function(iterable, opts) { if (from === void 0) { from = require_from_browser(); } return from(Readable, iterable, opts); }; } function indexOf(xs, x) { for (var i = 0, l = xs.length; i < l; i++) { if (xs[i] === x) return i; } return -1; } } }); // node_modules/duplexify/node_modules/readable-stream/lib/_stream_transform.js var require_stream_transform = __commonJS({ "node_modules/duplexify/node_modules/readable-stream/lib/_stream_transform.js"(exports, module) { "use strict"; init_process_shim(); module.exports = Transform3; var _require$codes = require_errors_browser().codes; var ERR_METHOD_NOT_IMPLEMENTED = _require$codes.ERR_METHOD_NOT_IMPLEMENTED; var ERR_MULTIPLE_CALLBACK = _require$codes.ERR_MULTIPLE_CALLBACK; var ERR_TRANSFORM_ALREADY_TRANSFORMING = _require$codes.ERR_TRANSFORM_ALREADY_TRANSFORMING; var ERR_TRANSFORM_WITH_LENGTH_0 = _require$codes.ERR_TRANSFORM_WITH_LENGTH_0; var Duplex = require_stream_duplex(); require_inherits_browser()(Transform3, Duplex); function afterTransform(er, data) { var ts = this._transformState; ts.transforming = false; var cb = ts.writecb; if (cb === null) { return this.emit("error", new ERR_MULTIPLE_CALLBACK()); } ts.writechunk = null; ts.writecb = null; if (data != null) this.push(data); cb(er); var rs = this._readableState; rs.reading = false; if (rs.needReadable || rs.length < rs.highWaterMark) { this._read(rs.highWaterMark); } } function Transform3(options) { if (!(this instanceof Transform3)) return new Transform3(options); Duplex.call(this, options); this._transformState = { afterTransform: afterTransform.bind(this), needTransform: false, transforming: false, writecb: null, writechunk: null, writeencoding: null }; this._readableState.needReadable = true; this._readableState.sync = false; if (options) { if (typeof options.transform === "function") this._transform = options.transform; if (typeof options.flush === "function") this._flush = options.flush; } this.on("prefinish", prefinish); } function prefinish() { var _this = this; if (typeof this._flush === "function" && !this._readableState.destroyed) { this._flush(function(er, data) { done(_this, er, data); }); } else { done(this, null, null); } } Transform3.prototype.push = function(chunk, encoding) { this._transformState.needTransform = false; return Duplex.prototype.push.call(this, chunk, encoding); }; Transform3.prototype._transform = function(chunk, encoding, cb) { cb(new ERR_METHOD_NOT_IMPLEMENTED("_transform()")); }; Transform3.prototype._write = function(chunk, encoding, cb) { var ts = this._transformState; ts.writecb = cb; ts.writechunk = chunk; ts.writeencoding = encoding; if (!ts.transforming) { var rs = this._readableState; if (ts.needTransform || rs.needReadable || rs.length < rs.highWaterMark) this._read(rs.highWaterMark); } }; Transform3.prototype._read = function(n) { var ts = this._transformState; if (ts.writechunk !== null && !ts.transforming) { ts.transforming = true; this._transform(ts.writechunk, ts.writeencoding, ts.afterTransform); } else { ts.needTransform = true; } }; Transform3.prototype._destroy = function(err, cb) { Duplex.prototype._destroy.call(this, err, function(err2) { cb(err2); }); }; function done(stream, er, data) { if (er) return stream.emit("error", er); if (data != null) stream.push(data); if (stream._writableState.length) throw new ERR_TRANSFORM_WITH_LENGTH_0(); if (stream._transformState.transforming) throw new ERR_TRANSFORM_ALREADY_TRANSFORMING(); return stream.push(null); } } }); // node_modules/duplexify/node_modules/readable-stream/lib/_stream_passthrough.js var require_stream_passthrough = __commonJS({ "node_modules/duplexify/node_modules/readable-stream/lib/_stream_passthrough.js"(exports, module) { "use strict"; init_process_shim(); module.exports = PassThrough3; var Transform3 = require_stream_transform(); require_inherits_browser()(PassThrough3, Transform3); function PassThrough3(options) { if (!(this instanceof PassThrough3)) return new PassThrough3(options); Transform3.call(this, options); } PassThrough3.prototype._transform = function(chunk, encoding, cb) { cb(null, chunk); }; } }); // node_modules/duplexify/node_modules/readable-stream/lib/internal/streams/pipeline.js var require_pipeline2 = __commonJS({ "node_modules/duplexify/node_modules/readable-stream/lib/internal/streams/pipeline.js"(exports, module) { "use strict"; init_process_shim(); var eos; function once(callback) { var called = false; return function() { if (called) return; called = true; callback.apply(void 0, arguments); }; } var _require$codes = require_errors_browser().codes; var ERR_MISSING_ARGS = _require$codes.ERR_MISSING_ARGS; var ERR_STREAM_DESTROYED = _require$codes.ERR_STREAM_DESTROYED; function noop(err) { if (err) throw err; } function isRequest(stream) { return stream.setHeader && typeof stream.abort === "function"; } function destroyer(stream, reading, writing, callback) { callback = once(callback); var closed = false; stream.on("close", function() { closed = true; }); if (eos === void 0) eos = require_end_of_stream3(); eos(stream, { readable: reading, writable: writing }, function(err) { if (err) return callback(err); closed = true; callback(); }); var destroyed = false; return function(err) { if (closed) return; if (destroyed) return; destroyed = true; if (isRequest(stream)) return stream.abort(); if (typeof stream.destroy === "function") return stream.destroy(); callback(err || new ERR_STREAM_DESTROYED("pipe")); }; } function call(fn) { fn(); } function pipe(from, to) { return from.pipe(to); } function popCallback(streams) { if (!streams.length) return noop; if (typeof streams[streams.length - 1] !== "function") return noop; return streams.pop(); } function pipeline() { for (var _len = arguments.length, streams = new Array(_len), _key = 0; _key < _len; _key++) { streams[_key] = arguments[_key]; } var callback = popCallback(streams); if (Array.isArray(streams[0])) streams = streams[0]; if (streams.length < 2) { throw new ERR_MISSING_ARGS("streams"); } var error; var destroys = streams.map(function(stream, i) { var reading = i < streams.length - 1; var writing = i > 0; return destroyer(stream, reading, writing, function(err) { if (!error) error = err; if (err) destroys.forEach(call); if (reading) return; destroys.forEach(call); callback(error); }); }); return streams.reduce(pipe); } module.exports = pipeline; } }); // node_modules/duplexify/node_modules/readable-stream/readable-browser.js var require_readable_browser = __commonJS({ "node_modules/duplexify/node_modules/readable-stream/readable-browser.js"(exports, module) { init_process_shim(); exports = module.exports = require_stream_readable(); exports.Stream = exports; exports.Readable = exports; exports.Writable = require_stream_writable(); exports.Duplex = require_stream_duplex(); exports.Transform = require_stream_transform(); exports.PassThrough = require_stream_passthrough(); exports.finished = require_end_of_stream3(); exports.pipeline = require_pipeline2(); } }); // node_modules/stream-shift/index.js var require_stream_shift = __commonJS({ "node_modules/stream-shift/index.js"(exports, module) { init_process_shim(); module.exports = shift; function shift(stream) { var rs = stream._readableState; if (!rs) return null; return rs.objectMode || typeof stream._duplexState === "number" ? stream.read() : stream.read(getStateLength(rs)); } function getStateLength(state) { if (state.buffer.length) { var idx = state.bufferIndex || 0; if (state.buffer.head) { return state.buffer.head.data.length; } else if (state.buffer.length - idx > 0 && state.buffer[idx]) { return state.buffer[idx].length; } } return state.length; } } }); // node_modules/duplexify/index.js var require_duplexify2 = __commonJS({ "node_modules/duplexify/index.js"(exports, module) { init_process_shim(); var stream = require_readable_browser(); var eos = require_end_of_stream2(); var inherits = require_inherits_browser(); var shift = require_stream_shift(); var SIGNAL_FLUSH = import_buffer.Buffer.from && import_buffer.Buffer.from !== Uint8Array.from ? import_buffer.Buffer.from([0]) : new import_buffer.Buffer([0]); var onuncork = function(self2, fn) { if (self2._corked) self2.once("uncork", fn); else fn(); }; var autoDestroy = function(self2, err) { if (self2._autoDestroy) self2.destroy(err); }; var destroyer = function(self2, end2) { return function(err) { if (err) autoDestroy(self2, err.message === "premature close" ? null : err); else if (end2 && !self2._ended) self2.end(); }; }; var end = function(ws, fn) { if (!ws) return fn(); if (ws._writableState && ws._writableState.finished) return fn(); if (ws._writableState) return ws.end(fn); ws.end(); fn(); }; var noop = function() { }; var toStreams2 = function(rs) { return new stream.Readable({ objectMode: true, highWaterMark: 16 }).wrap(rs); }; var Duplexify = function(writable, readable, opts) { if (!(this instanceof Duplexify)) return new Duplexify(writable, readable, opts); stream.Duplex.call(this, opts); this._writable = null; this._readable = null; this._readable2 = null; this._autoDestroy = !opts || opts.autoDestroy !== false; this._forwardDestroy = !opts || opts.destroy !== false; this._forwardEnd = !opts || opts.end !== false; this._corked = 1; this._ondrain = null; this._drained = false; this._forwarding = false; this._unwrite = null; this._unread = null; this._ended = false; this.destroyed = false; if (writable) this.setWritable(writable); if (readable) this.setReadable(readable); }; inherits(Duplexify, stream.Duplex); Duplexify.obj = function(writable, readable, opts) { if (!opts) opts = {}; opts.objectMode = true; opts.highWaterMark = 16; return new Duplexify(writable, readable, opts); }; Duplexify.prototype.cork = function() { if (++this._corked === 1) this.emit("cork"); }; Duplexify.prototype.uncork = function() { if (this._corked && --this._corked === 0) this.emit("uncork"); }; Duplexify.prototype.setWritable = function(writable) { if (this._unwrite) this._unwrite(); if (this.destroyed) { if (writable && writable.destroy) writable.destroy(); return; } if (writable === null || writable === false) { this.end(); return; } var self2 = this; var unend = eos(writable, { writable: true, readable: false }, destroyer(this, this._forwardEnd)); var ondrain = function() { var ondrain2 = self2._ondrain; self2._ondrain = null; if (ondrain2) ondrain2(); }; var clear = function() { self2._writable.removeListener("drain", ondrain); unend(); }; if (this._unwrite) process.nextTick(ondrain); this._writable = writable; this._writable.on("drain", ondrain); this._unwrite = clear; this.uncork(); }; Duplexify.prototype.setReadable = function(readable) { if (this._unread) this._unread(); if (this.destroyed) { if (readable && readable.destroy) readable.destroy(); return; } if (readable === null || readable === false) { this.push(null); this.resume(); return; } var self2 = this; var unend = eos(readable, { writable: false, readable: true }, destroyer(this)); var onreadable = function() { self2._forward(); }; var onend = function() { self2.push(null); }; var clear = function() { self2._readable2.removeListener("readable", onreadable); self2._readable2.removeListener("end", onend); unend(); }; this._drained = true; this._readable = readable; this._readable2 = readable._readableState ? readable : toStreams2(readable); this._readable2.on("readable", onreadable); this._readable2.on("end", onend); this._unread = clear; this._forward(); }; Duplexify.prototype._read = function() { this._drained = true; this._forward(); }; Duplexify.prototype._forward = function() { if (this._forwarding || !this._readable2 || !this._drained) return; this._forwarding = true; var data; while (this._drained && (data = shift(this._readable2)) !== null) { if (this.destroyed) continue; this._drained = this.push(data); } this._forwarding = false; }; Duplexify.prototype.destroy = function(err, cb) { if (!cb) cb = noop; if (this.destroyed) return cb(null); this.destroyed = true; var self2 = this; process.nextTick(function() { self2._destroy(err); cb(null); }); }; Duplexify.prototype._destroy = function(err) { if (err) { var ondrain = this._ondrain; this._ondrain = null; if (ondrain) ondrain(err); else this.emit("error", err); } if (this._forwardDestroy) { if (this._readable && this._readable.destroy) this._readable.destroy(); if (this._writable && this._writable.destroy) this._writable.destroy(); } this.emit("close"); }; Duplexify.prototype._write = function(data, enc, cb) { if (this.destroyed) return; if (this._corked) return onuncork(this, this._write.bind(this, data, enc, cb)); if (data === SIGNAL_FLUSH) return this._finish(cb); if (!this._writable) return cb(); if (this._writable.write(data) === false) this._ondrain = cb; else if (!this.destroyed) cb(); }; Duplexify.prototype._finish = function(cb) { var self2 = this; this.emit("preend"); onuncork(this, function() { end(self2._forwardEnd && self2._writable, function() { if (self2._writableState.prefinished === false) self2._writableState.prefinished = true; self2.emit("prefinish"); onuncork(self2, cb); }); }); }; Duplexify.prototype.end = function(data, enc, cb) { if (typeof data === "function") return this.end(null, null, data); if (typeof enc === "function") return this.end(data, null, enc); this._ended = true; if (data) this.write(data); if (!this._writableState.ending && !this._writableState.destroyed) this.write(SIGNAL_FLUSH); return stream.Writable.prototype.end.call(this, cb); }; module.exports = Duplexify; } }); // node_modules/pumpify/index.js var require_pumpify = __commonJS({ "node_modules/pumpify/index.js"(exports, module) { init_process_shim(); var pump = require_pump(); var inherits = require_inherits_browser(); var Duplexify = require_duplexify2(); var toArray = function(args) { if (!args.length) return []; return Array.isArray(args[0]) ? args[0] : Array.prototype.slice.call(args); }; var define2 = function(opts) { var Pumpify = function() { var streams = toArray(arguments); if (!(this instanceof Pumpify)) return new Pumpify(streams); Duplexify.call(this, null, null, opts); if (streams.length) this.setPipeline(streams); }; inherits(Pumpify, Duplexify); Pumpify.prototype.setPipeline = function() { var streams = toArray(arguments); var self2 = this; var ended = false; var w = streams[0]; var r = streams[streams.length - 1]; r = r.readable ? r : null; w = w.writable ? w : null; var onclose = function() { streams[0].emit("error", new Error("stream was destroyed")); }; this.on("close", onclose); this.on("prefinish", function() { if (!ended) self2.cork(); }); pump(streams, function(err) { self2.removeListener("close", onclose); if (err) return self2.destroy(err.message === "premature close" ? null : err); ended = true; if (self2._autoDestroy === false) self2._autoDestroy = true; self2.uncork(); }); if (this.destroyed) return onclose(); this.setWritable(w); this.setReadable(r); }; return Pumpify; }; module.exports = define2({ autoDestroy: false, destroy: false }); module.exports.obj = define2({ autoDestroy: false, destroy: false, objectMode: true, highWaterMark: 16 }); module.exports.ctor = define2; } }); // (disabled):crypto var require_crypto = __commonJS({ "(disabled):crypto"() { init_process_shim(); } }); // node_modules/secure-random/lib/secure-random.js var require_secure_random = __commonJS({ "node_modules/secure-random/lib/secure-random.js"(exports, module) { init_process_shim(); !function(globals) { "use strict"; if (typeof define !== "undefined" && define.amd) { define([], function() { return secureRandom3; }); } else if (typeof module !== "undefined" && module.exports) { module.exports = secureRandom3; } else { globals.secureRandom = secureRandom3; } function secureRandom3(count, options) { options = options || { type: "Array" }; if (typeof process != "undefined" && typeof process.pid == "number" && process.versions && process.versions.node) { return nodeRandom(count, options); } else { var crypto = window.crypto || window.msCrypto; if (!crypto) throw new Error("Your browser does not support window.crypto."); return browserRandom(count, options); } } function nodeRandom(count, options) { var crypto = require_crypto(); var buf = crypto.randomBytes(count); switch (options.type) { case "Array": return [].slice.call(buf); case "Buffer": return buf; case "Uint8Array": var arr = new Uint8Array(count); for (var i = 0; i < count; ++i) { arr[i] = buf.readUInt8(i); } return arr; default: throw new Error(options.type + " is unsupported."); } } function browserRandom(count, options) { var nativeArr = new Uint8Array(count); var crypto = window.crypto || window.msCrypto; crypto.getRandomValues(nativeArr); switch (options.type) { case "Array": return [].slice.call(nativeArr); case "Buffer": try { var b = new import_buffer.Buffer(1); } catch (e) { throw new Error("Buffer not supported in this environment. Use Node.js or Browserify for browser support."); } return new import_buffer.Buffer(nativeArr); case "Uint8Array": return nativeArr; default: throw new Error(options.type + " is unsupported."); } } secureRandom3.randomArray = function(byteCount) { return secureRandom3(byteCount, { type: "Array" }); }; secureRandom3.randomUint8Array = function(byteCount) { return secureRandom3(byteCount, { type: "Uint8Array" }); }; secureRandom3.randomBuffer = function(byteCount) { return secureRandom3(byteCount, { type: "Buffer" }); }; }(exports); } }); // node_modules/has-symbols/shams.js var require_shams = __commonJS({ "node_modules/has-symbols/shams.js"(exports, module) { "use strict"; init_process_shim(); module.exports = function hasSymbols() { if (typeof Symbol !== "function" || typeof Object.getOwnPropertySymbols !== "function") { return false; } if (typeof Symbol.iterator === "symbol") { return true; } var obj = {}; var sym = Symbol("test"); var symObj = Object(sym); if (typeof sym === "string") { return false; } if (Object.prototype.toString.call(sym) !== "[object Symbol]") { return false; } if (Object.prototype.toString.call(symObj) !== "[object Symbol]") { return false; } var symVal = 42; obj[sym] = symVal; for (sym in obj) { return false; } if (typeof Object.keys === "function" && Object.keys(obj).length !== 0) { return false; } if (typeof Object.getOwnPropertyNames === "function" && Object.getOwnPropertyNames(obj).length !== 0) { return false; } var syms = Object.getOwnPropertySymbols(obj); if (syms.length !== 1 || syms[0] !== sym) { return false; } if (!Object.prototype.propertyIsEnumerable.call(obj, sym)) { return false; } if (typeof Object.getOwnPropertyDescriptor === "function") { var descriptor = Object.getOwnPropertyDescriptor(obj, sym); if (descriptor.value !== symVal || descriptor.enumerable !== true) { return false; } } return true; }; } }); // node_modules/has-tostringtag/shams.js var require_shams2 = __commonJS({ "node_modules/has-tostringtag/shams.js"(exports, module) { "use strict"; init_process_shim(); var hasSymbols = require_shams(); module.exports = function hasToStringTagShams() { return hasSymbols() && !!Symbol.toStringTag; }; } }); // node_modules/es-errors/index.js var require_es_errors = __commonJS({ "node_modules/es-errors/index.js"(exports, module) { "use strict"; init_process_shim(); module.exports = Error; } }); // node_modules/es-errors/eval.js var require_eval = __commonJS({ "node_modules/es-errors/eval.js"(exports, module) { "use strict"; init_process_shim(); module.exports = EvalError; } }); // node_modules/es-errors/range.js var require_range = __commonJS({ "node_modules/es-errors/range.js"(exports, module) { "use strict"; init_process_shim(); module.exports = RangeError; } }); // node_modules/es-errors/ref.js var require_ref = __commonJS({ "node_modules/es-errors/ref.js"(exports, module) { "use strict"; init_process_shim(); module.exports = ReferenceError; } }); // node_modules/es-errors/syntax.js var require_syntax = __commonJS({ "node_modules/es-errors/syntax.js"(exports, module) { "use strict"; init_process_shim(); module.exports = SyntaxError; } }); // node_modules/es-errors/type.js var require_type = __commonJS({ "node_modules/es-errors/type.js"(exports, module) { "use strict"; init_process_shim(); module.exports = TypeError; } }); // node_modules/es-errors/uri.js var require_uri = __commonJS({ "node_modules/es-errors/uri.js"(exports, module) { "use strict"; init_process_shim(); module.exports = URIError; } }); // node_modules/has-symbols/index.js var require_has_symbols = __commonJS({ "node_modules/has-symbols/index.js"(exports, module) { "use strict"; init_process_shim(); var origSymbol = typeof Symbol !== "undefined" && Symbol; var hasSymbolSham = require_shams(); module.exports = function hasNativeSymbols() { if (typeof origSymbol !== "function") { return false; } if (typeof Symbol !== "function") { return false; } if (typeof origSymbol("foo") !== "symbol") { return false; } if (typeof Symbol("bar") !== "symbol") { return false; } return hasSymbolSham(); }; } }); // node_modules/has-proto/index.js var require_has_proto = __commonJS({ "node_modules/has-proto/index.js"(exports, module) { "use strict"; init_process_shim(); var test = { __proto__: null, foo: {} }; var $Object = Object; module.exports = function hasProto() { return { __proto__: test }.foo === test.foo && !(test instanceof $Object); }; } }); // node_modules/function-bind/implementation.js var require_implementation = __commonJS({ "node_modules/function-bind/implementation.js"(exports, module) { "use strict"; init_process_shim(); var ERROR_MESSAGE = "Function.prototype.bind called on incompatible "; var toStr = Object.prototype.toString; var max = Math.max; var funcType = "[object Function]"; var concatty = function concatty2(a, b) { var arr = []; for (var i = 0; i < a.length; i += 1) { arr[i] = a[i]; } for (var j = 0; j < b.length; j += 1) { arr[j + a.length] = b[j]; } return arr; }; var slicy = function slicy2(arrLike, offset) { var arr = []; for (var i = offset || 0, j = 0; i < arrLike.length; i += 1, j += 1) { arr[j] = arrLike[i]; } return arr; }; var joiny = function(arr, joiner) { var str = ""; for (var i = 0; i < arr.length; i += 1) { str += arr[i]; if (i + 1 < arr.length) { str += joiner; } } return str; }; module.exports = function bind(that) { var target = this; if (typeof target !== "function" || toStr.apply(target) !== funcType) { throw new TypeError(ERROR_MESSAGE + target); } var args = slicy(arguments, 1); var bound; var binder = function() { if (this instanceof bound) { var result = target.apply( this, concatty(args, arguments) ); if (Object(result) === result) { return result; } return this; } return target.apply( that, concatty(args, arguments) ); }; var boundLength = max(0, target.length - args.length); var boundArgs = []; for (var i = 0; i < boundLength; i++) { boundArgs[i] = "$" + i; } bound = Function("binder", "return function (" + joiny(boundArgs, ",") + "){ return binder.apply(this,arguments); }")(binder); if (target.prototype) { var Empty = function Empty2() { }; Empty.prototype = target.prototype; bound.prototype = new Empty(); Empty.prototype = null; } return bound; }; } }); // node_modules/function-bind/index.js var require_function_bind = __commonJS({ "node_modules/function-bind/index.js"(exports, module) { "use strict"; init_process_shim(); var implementation = require_implementation(); module.exports = Function.prototype.bind || implementation; } }); // node_modules/hasown/index.js var require_hasown = __commonJS({ "node_modules/hasown/index.js"(exports, module) { "use strict"; init_process_shim(); var call = Function.prototype.call; var $hasOwn = Object.prototype.hasOwnProperty; var bind = require_function_bind(); module.exports = bind.call(call, $hasOwn); } }); // node_modules/get-intrinsic/index.js var require_get_intrinsic = __commonJS({ "node_modules/get-intrinsic/index.js"(exports, module) { "use strict"; init_process_shim(); var undefined2; var $Error = require_es_errors(); var $EvalError = require_eval(); var $RangeError = require_range(); var $ReferenceError = require_ref(); var $SyntaxError = require_syntax(); var $TypeError = require_type(); var $URIError = require_uri(); var $Function = Function; var getEvalledConstructor = function(expressionSyntax) { try { return $Function('"use strict"; return (' + expressionSyntax + ").constructor;")(); } catch (e) { } }; var $gOPD = Object.getOwnPropertyDescriptor; if ($gOPD) { try { $gOPD({}, ""); } catch (e) { $gOPD = null; } } var throwTypeError = function() { throw new $TypeError(); }; var ThrowTypeError = $gOPD ? function() { try { arguments.callee; return throwTypeError; } catch (calleeThrows) { try { return $gOPD(arguments, "callee").get; } catch (gOPDthrows) { return throwTypeError; } } }() : throwTypeError; var hasSymbols = require_has_symbols()(); var hasProto = require_has_proto()(); var getProto = Object.getPrototypeOf || (hasProto ? function(x) { return x.__proto__; } : null); var needsEval = {}; var TypedArray = typeof Uint8Array === "undefined" || !getProto ? undefined2 : getProto(Uint8Array); var INTRINSICS = { __proto__: null, "%AggregateError%": typeof AggregateError === "undefined" ? undefined2 : AggregateError, "%Array%": Array, "%ArrayBuffer%": typeof ArrayBuffer === "undefined" ? undefined2 : ArrayBuffer, "%ArrayIteratorPrototype%": hasSymbols && getProto ? getProto([][Symbol.iterator]()) : undefined2, "%AsyncFromSyncIteratorPrototype%": undefined2, "%AsyncFunction%": needsEval, "%AsyncGenerator%": needsEval, "%AsyncGeneratorFunction%": needsEval, "%AsyncIteratorPrototype%": needsEval, "%Atomics%": typeof Atomics === "undefined" ? undefined2 : Atomics, "%BigInt%": typeof BigInt === "undefined" ? undefined2 : BigInt, "%BigInt64Array%": typeof BigInt64Array === "undefined" ? undefined2 : BigInt64Array, "%BigUint64Array%": typeof BigUint64Array === "undefined" ? undefined2 : BigUint64Array, "%Boolean%": Boolean, "%DataView%": typeof DataView === "undefined" ? undefined2 : DataView, "%Date%": Date, "%decodeURI%": decodeURI, "%decodeURIComponent%": decodeURIComponent, "%encodeURI%": encodeURI, "%encodeURIComponent%": encodeURIComponent, "%Error%": $Error, "%eval%": eval, // eslint-disable-line no-eval "%EvalError%": $EvalError, "%Float32Array%": typeof Float32Array === "undefined" ? undefined2 : Float32Array, "%Float64Array%": typeof Float64Array === "undefined" ? undefined2 : Float64Array, "%FinalizationRegistry%": typeof FinalizationRegistry === "undefined" ? undefined2 : FinalizationRegistry, "%Function%": $Function, "%GeneratorFunction%": needsEval, "%Int8Array%": typeof Int8Array === "undefined" ? undefined2 : Int8Array, "%Int16Array%": typeof Int16Array === "undefined" ? undefined2 : Int16Array, "%Int32Array%": typeof Int32Array === "undefined" ? undefined2 : Int32Array, "%isFinite%": isFinite, "%isNaN%": isNaN, "%IteratorPrototype%": hasSymbols && getProto ? getProto(getProto([][Symbol.iterator]())) : undefined2, "%JSON%": typeof JSON === "object" ? JSON : undefined2, "%Map%": typeof Map === "undefined" ? undefined2 : Map, "%MapIteratorPrototype%": typeof Map === "undefined" || !hasSymbols || !getProto ? undefined2 : getProto((/* @__PURE__ */ new Map())[Symbol.iterator]()), "%Math%": Math, "%Number%": Number, "%Object%": Object, "%parseFloat%": parseFloat, "%parseInt%": parseInt, "%Promise%": typeof Promise === "undefined" ? undefined2 : Promise, "%Proxy%": typeof Proxy === "undefined" ? undefined2 : Proxy, "%RangeError%": $RangeError, "%ReferenceError%": $ReferenceError, "%Reflect%": typeof Reflect === "undefined" ? undefined2 : Reflect, "%RegExp%": RegExp, "%Set%": typeof Set === "undefined" ? undefined2 : Set, "%SetIteratorPrototype%": typeof Set === "undefined" || !hasSymbols || !getProto ? undefined2 : getProto((/* @__PURE__ */ new Set())[Symbol.iterator]()), "%SharedArrayBuffer%": typeof SharedArrayBuffer === "undefined" ? undefined2 : SharedArrayBuffer, "%String%": String, "%StringIteratorPrototype%": hasSymbols && getProto ? getProto(""[Symbol.iterator]()) : undefined2, "%Symbol%": hasSymbols ? Symbol : undefined2, "%SyntaxError%": $SyntaxError, "%ThrowTypeError%": ThrowTypeError, "%TypedArray%": TypedArray, "%TypeError%": $TypeError, "%Uint8Array%": typeof Uint8Array === "undefined" ? undefined2 : Uint8Array, "%Uint8ClampedArray%": typeof Uint8ClampedArray === "undefined" ? undefined2 : Uint8ClampedArray, "%Uint16Array%": typeof Uint16Array === "undefined" ? undefined2 : Uint16Array, "%Uint32Array%": typeof Uint32Array === "undefined" ? undefined2 : Uint32Array, "%URIError%": $URIError, "%WeakMap%": typeof WeakMap === "undefined" ? undefined2 : WeakMap, "%WeakRef%": typeof WeakRef === "undefined" ? undefined2 : WeakRef, "%WeakSet%": typeof WeakSet === "undefined" ? undefined2 : WeakSet }; if (getProto) { try { null.error; } catch (e) { errorProto = getProto(getProto(e)); INTRINSICS["%Error.prototype%"] = errorProto; } } var errorProto; var doEval = function doEval2(name) { var value; if (name === "%AsyncFunction%") { value = getEvalledConstructor("async function () {}"); } else if (name === "%GeneratorFunction%") { value = getEvalledConstructor("function* () {}"); } else if (name === "%AsyncGeneratorFunction%") { value = getEvalledConstructor("async function* () {}"); } else if (name === "%AsyncGenerator%") { var fn = doEval2("%AsyncGeneratorFunction%"); if (fn) { value = fn.prototype; } } else if (name === "%AsyncIteratorPrototype%") { var gen = doEval2("%AsyncGenerator%"); if (gen && getProto) { value = getProto(gen.prototype); } } INTRINSICS[name] = value; return value; }; var LEGACY_ALIASES = { __proto__: null, "%ArrayBufferPrototype%": ["ArrayBuffer", "prototype"], "%ArrayPrototype%": ["Array", "prototype"], "%ArrayProto_entries%": ["Array", "prototype", "entries"], "%ArrayProto_forEach%": ["Array", "prototype", "forEach"], "%ArrayProto_keys%": ["Array", "prototype", "keys"], "%ArrayProto_values%": ["Array", "prototype", "values"], "%AsyncFunctionPrototype%": ["AsyncFunction", "prototype"], "%AsyncGenerator%": ["AsyncGeneratorFunction", "prototype"], "%AsyncGeneratorPrototype%": ["AsyncGeneratorFunction", "prototype", "prototype"], "%BooleanPrototype%": ["Boolean", "prototype"], "%DataViewPrototype%": ["DataView", "prototype"], "%DatePrototype%": ["Date", "prototype"], "%ErrorPrototype%": ["Error", "prototype"], "%EvalErrorPrototype%": ["EvalError", "prototype"], "%Float32ArrayPrototype%": ["Float32Array", "prototype"], "%Float64ArrayPrototype%": ["Float64Array", "prototype"], "%FunctionPrototype%": ["Function", "prototype"], "%Generator%": ["GeneratorFunction", "prototype"], "%GeneratorPrototype%": ["GeneratorFunction", "prototype", "prototype"], "%Int8ArrayPrototype%": ["Int8Array", "prototype"], "%Int16ArrayPrototype%": ["Int16Array", "prototype"], "%Int32ArrayPrototype%": ["Int32Array", "prototype"], "%JSONParse%": ["JSON", "parse"], "%JSONStringify%": ["JSON", "stringify"], "%MapPrototype%": ["Map", "prototype"], "%NumberPrototype%": ["Number", "prototype"], "%ObjectPrototype%": ["Object", "prototype"], "%ObjProto_toString%": ["Object", "prototype", "toString"], "%ObjProto_valueOf%": ["Object", "prototype", "valueOf"], "%PromisePrototype%": ["Promise", "prototype"], "%PromiseProto_then%": ["Promise", "prototype", "then"], "%Promise_all%": ["Promise", "all"], "%Promise_reject%": ["Promise", "reject"], "%Promise_resolve%": ["Promise", "resolve"], "%RangeErrorPrototype%": ["RangeError", "prototype"], "%ReferenceErrorPrototype%": ["ReferenceError", "prototype"], "%RegExpPrototype%": ["RegExp", "prototype"], "%SetPrototype%": ["Set", "prototype"], "%SharedArrayBufferPrototype%": ["SharedArrayBuffer", "prototype"], "%StringPrototype%": ["String", "prototype"], "%SymbolPrototype%": ["Symbol", "prototype"], "%SyntaxErrorPrototype%": ["SyntaxError", "prototype"], "%TypedArrayPrototype%": ["TypedArray", "prototype"], "%TypeErrorPrototype%": ["TypeError", "prototype"], "%Uint8ArrayPrototype%": ["Uint8Array", "prototype"], "%Uint8ClampedArrayPrototype%": ["Uint8ClampedArray", "prototype"], "%Uint16ArrayPrototype%": ["Uint16Array", "prototype"], "%Uint32ArrayPrototype%": ["Uint32Array", "prototype"], "%URIErrorPrototype%": ["URIError", "prototype"], "%WeakMapPrototype%": ["WeakMap", "prototype"], "%WeakSetPrototype%": ["WeakSet", "prototype"] }; var bind = require_function_bind(); var hasOwn = require_hasown(); var $concat = bind.call(Function.call, Array.prototype.concat); var $spliceApply = bind.call(Function.apply, Array.prototype.splice); var $replace = bind.call(Function.call, String.prototype.replace); var $strSlice = bind.call(Function.call, String.prototype.slice); var $exec = bind.call(Function.call, RegExp.prototype.exec); var rePropName = /[^%.[\]]+|\[(?:(-?\d+(?:\.\d+)?)|(["'])((?:(?!\2)[^\\]|\\.)*?)\2)\]|(?=(?:\.|\[\])(?:\.|\[\]|%$))/g; var reEscapeChar = /\\(\\)?/g; var stringToPath = function stringToPath2(string) { var first = $strSlice(string, 0, 1); var last = $strSlice(string, -1); if (first === "%" && last !== "%") { throw new $SyntaxError("invalid intrinsic syntax, expected closing `%`"); } else if (last === "%" && first !== "%") { throw new $SyntaxError("invalid intrinsic syntax, expected opening `%`"); } var result = []; $replace(string, rePropName, function(match, number, quote, subString) { result[result.length] = quote ? $replace(subString, reEscapeChar, "$1") : number || match; }); return result; }; var getBaseIntrinsic = function getBaseIntrinsic2(name, allowMissing) { var intrinsicName = name; var alias; if (hasOwn(LEGACY_ALIASES, intrinsicName)) { alias = LEGACY_ALIASES[intrinsicName]; intrinsicName = "%" + alias[0] + "%"; } if (hasOwn(INTRINSICS, intrinsicName)) { var value = INTRINSICS[intrinsicName]; if (value === needsEval) { value = doEval(intrinsicName); } if (typeof value === "undefined" && !allowMissing) { throw new $TypeError("intrinsic " + name + " exists, but is not available. Please file an issue!"); } return { alias, name: intrinsicName, value }; } throw new $SyntaxError("intrinsic " + name + " does not exist!"); }; module.exports = function GetIntrinsic(name, allowMissing) { if (typeof name !== "string" || name.length === 0) { throw new $TypeError("intrinsic name must be a non-empty string"); } if (arguments.length > 1 && typeof allowMissing !== "boolean") { throw new $TypeError('"allowMissing" argument must be a boolean'); } if ($exec(/^%?[^%]*%?$/, name) === null) { throw new $SyntaxError("`%` may not be present anywhere but at the beginning and end of the intrinsic name"); } var parts = stringToPath(name); var intrinsicBaseName = parts.length > 0 ? parts[0] : ""; var intrinsic = getBaseIntrinsic("%" + intrinsicBaseName + "%", allowMissing); var intrinsicRealName = intrinsic.name; var value = intrinsic.value; var skipFurtherCaching = false; var alias = intrinsic.alias; if (alias) { intrinsicBaseName = alias[0]; $spliceApply(parts, $concat([0, 1], alias)); } for (var i = 1, isOwn = true; i < parts.length; i += 1) { var part = parts[i]; var first = $strSlice(part, 0, 1); var last = $strSlice(part, -1); if ((first === '"' || first === "'" || first === "`" || (last === '"' || last === "'" || last === "`")) && first !== last) { throw new $SyntaxError("property names with quotes must have matching quotes"); } if (part === "constructor" || !isOwn) { skipFurtherCaching = true; } intrinsicBaseName += "." + part; intrinsicRealName = "%" + intrinsicBaseName + "%"; if (hasOwn(INTRINSICS, intrinsicRealName)) { value = INTRINSICS[intrinsicRealName]; } else if (value != null) { if (!(part in value)) { if (!allowMissing) { throw new $TypeError("base intrinsic for " + name + " exists, but the property is not available."); } return void 0; } if ($gOPD && i + 1 >= parts.length) { var desc = $gOPD(value, part); isOwn = !!desc; if (isOwn && "get" in desc && !("originalValue" in desc.get)) { value = desc.get; } else { value = value[part]; } } else { isOwn = hasOwn(value, part); value = value[part]; } if (isOwn && !skipFurtherCaching) { INTRINSICS[intrinsicRealName] = value; } } } return value; }; } }); // node_modules/es-define-property/index.js var require_es_define_property = __commonJS({ "node_modules/es-define-property/index.js"(exports, module) { "use strict"; init_process_shim(); var GetIntrinsic = require_get_intrinsic(); var $defineProperty = GetIntrinsic("%Object.defineProperty%", true) || false; if ($defineProperty) { try { $defineProperty({}, "a", { value: 1 }); } catch (e) { $defineProperty = false; } } module.exports = $defineProperty; } }); // node_modules/gopd/index.js var require_gopd = __commonJS({ "node_modules/gopd/index.js"(exports, module) { "use strict"; init_process_shim(); var GetIntrinsic = require_get_intrinsic(); var $gOPD = GetIntrinsic("%Object.getOwnPropertyDescriptor%", true); if ($gOPD) { try { $gOPD([], "length"); } catch (e) { $gOPD = null; } } module.exports = $gOPD; } }); // node_modules/define-data-property/index.js var require_define_data_property = __commonJS({ "node_modules/define-data-property/index.js"(exports, module) { "use strict"; init_process_shim(); var $defineProperty = require_es_define_property(); var $SyntaxError = require_syntax(); var $TypeError = require_type(); var gopd = require_gopd(); module.exports = function defineDataProperty(obj, property, value) { if (!obj || typeof obj !== "object" && typeof obj !== "function") { throw new $TypeError("`obj` must be an object or a function`"); } if (typeof property !== "string" && typeof property !== "symbol") { throw new $TypeError("`property` must be a string or a symbol`"); } if (arguments.length > 3 && typeof arguments[3] !== "boolean" && arguments[3] !== null) { throw new $TypeError("`nonEnumerable`, if provided, must be a boolean or null"); } if (arguments.length > 4 && typeof arguments[4] !== "boolean" && arguments[4] !== null) { throw new $TypeError("`nonWritable`, if provided, must be a boolean or null"); } if (arguments.length > 5 && typeof arguments[5] !== "boolean" && arguments[5] !== null) { throw new $TypeError("`nonConfigurable`, if provided, must be a boolean or null"); } if (arguments.length > 6 && typeof arguments[6] !== "boolean") { throw new $TypeError("`loose`, if provided, must be a boolean"); } var nonEnumerable = arguments.length > 3 ? arguments[3] : null; var nonWritable = arguments.length > 4 ? arguments[4] : null; var nonConfigurable = arguments.length > 5 ? arguments[5] : null; var loose = arguments.length > 6 ? arguments[6] : false; var desc = !!gopd && gopd(obj, property); if ($defineProperty) { $defineProperty(obj, property, { configurable: nonConfigurable === null && desc ? desc.configurable : !nonConfigurable, enumerable: nonEnumerable === null && desc ? desc.enumerable : !nonEnumerable, value, writable: nonWritable === null && desc ? desc.writable : !nonWritable }); } else if (loose || !nonEnumerable && !nonWritable && !nonConfigurable) { obj[property] = value; } else { throw new $SyntaxError("This environment does not support defining a property as non-configurable, non-writable, or non-enumerable."); } }; } }); // node_modules/has-property-descriptors/index.js var require_has_property_descriptors = __commonJS({ "node_modules/has-property-descriptors/index.js"(exports, module) { "use strict"; init_process_shim(); var $defineProperty = require_es_define_property(); var hasPropertyDescriptors = function hasPropertyDescriptors2() { return !!$defineProperty; }; hasPropertyDescriptors.hasArrayLengthDefineBug = function hasArrayLengthDefineBug() { if (!$defineProperty) { return null; } try { return $defineProperty([], "length", { value: 1 }).length !== 1; } catch (e) { return true; } }; module.exports = hasPropertyDescriptors; } }); // node_modules/set-function-length/index.js var require_set_function_length = __commonJS({ "node_modules/set-function-length/index.js"(exports, module) { "use strict"; init_process_shim(); var GetIntrinsic = require_get_intrinsic(); var define2 = require_define_data_property(); var hasDescriptors = require_has_property_descriptors()(); var gOPD = require_gopd(); var $TypeError = require_type(); var $floor = GetIntrinsic("%Math.floor%"); module.exports = function setFunctionLength(fn, length) { if (typeof fn !== "function") { throw new $TypeError("`fn` is not a function"); } if (typeof length !== "number" || length < 0 || length > 4294967295 || $floor(length) !== length) { throw new $TypeError("`length` must be a positive 32-bit integer"); } var loose = arguments.length > 2 && !!arguments[2]; var functionLengthIsConfigurable = true; var functionLengthIsWritable = true; if ("length" in fn && gOPD) { var desc = gOPD(fn, "length"); if (desc && !desc.configurable) { functionLengthIsConfigurable = false; } if (desc && !desc.writable) { functionLengthIsWritable = false; } } if (functionLengthIsConfigurable || functionLengthIsWritable || !loose) { if (hasDescriptors) { define2( /** @type {Parameters<define>[0]} */ fn, "length", length, true, true ); } else { define2( /** @type {Parameters<define>[0]} */ fn, "length", length ); } } return fn; }; } }); // node_modules/call-bind/index.js var require_call_bind = __commonJS({ "node_modules/call-bind/index.js"(exports, module) { "use strict"; init_process_shim(); var bind = require_function_bind(); var GetIntrinsic = require_get_intrinsic(); var setFunctionLength = require_set_function_length(); var $TypeError = require_type(); var $apply = GetIntrinsic("%Function.prototype.apply%"); var $call = GetIntrinsic("%Function.prototype.call%"); var $reflectApply = GetIntrinsic("%Reflect.apply%", true) || bind.call($call, $apply); var $defineProperty = require_es_define_property(); var $max = GetIntrinsic("%Math.max%"); module.exports = function callBind(originalFunction) { if (typeof originalFunction !== "function") { throw new $TypeError("a function is required"); } var func = $reflectApply(bind, $call, arguments); return setFunctionLength( func, 1 + $max(0, originalFunction.length - (arguments.length - 1)), true ); }; var applyBind = function applyBind2() { return $reflectApply(bind, $apply, arguments); }; if ($defineProperty) { $defineProperty(module.exports, "apply", { value: applyBind }); } else { module.exports.apply = applyBind; } } }); // node_modules/call-bind/callBound.js var require_callBound = __commonJS({ "node_modules/call-bind/callBound.js"(exports, module) { "use strict"; init_process_shim(); var GetIntrinsic = require_get_intrinsic(); var callBind = require_call_bind(); var $indexOf = callBind(GetIntrinsic("String.prototype.indexOf")); module.exports = function callBoundIntrinsic(name, allowMissing) { var intrinsic = GetIntrinsic(name, !!allowMissing); if (typeof intrinsic === "function" && $indexOf(name, ".prototype.") > -1) { return callBind(intrinsic); } return intrinsic; }; } }); // node_modules/is-arguments/index.js var require_is_arguments = __commonJS({ "node_modules/is-arguments/index.js"(exports, module) { "use strict"; init_process_shim(); var hasToStringTag = require_shams2()(); var callBound = require_callBound(); var $toString = callBound("Object.prototype.toString"); var isStandardArguments = function isArguments(value) { if (hasToStringTag && value && typeof value === "object" && Symbol.toStringTag in value) { return false; } return $toString(value) === "[object Arguments]"; }; var isLegacyArguments = function isArguments(value) { if (isStandardArguments(value)) { return true; } return value !== null && typeof value === "object" && typeof value.length === "number" && value.length >= 0 && $toString(value) !== "[object Array]" && $toString(value.callee) === "[object Function]"; }; var supportsStandardArguments = function() { return isStandardArguments(arguments); }(); isStandardArguments.isLegacyArguments = isLegacyArguments; module.exports = supportsStandardArguments ? isStandardArguments : isLegacyArguments; } }); // node_modules/is-generator-function/index.js var require_is_generator_function = __commonJS({ "node_modules/is-generator-function/index.js"(exports, module) { "use strict"; init_process_shim(); var toStr = Object.prototype.toString; var fnToStr = Function.prototype.toString; var isFnRegex = /^\s*(?:function)?\*/; var hasToStringTag = require_shams2()(); var getProto = Object.getPrototypeOf; var getGeneratorFunc = function() { if (!hasToStringTag) { return false; } try { return Function("return function*() {}")(); } catch (e) { } }; var GeneratorFunction; module.exports = function isGeneratorFunction(fn) { if (typeof fn !== "function") { return false; } if (isFnRegex.test(fnToStr.call(fn))) { return true; } if (!hasToStringTag) { var str = toStr.call(fn); return str === "[object GeneratorFunction]"; } if (!getProto) { return false; } if (typeof GeneratorFunction === "undefined") { var generatorFunc = getGeneratorFunc(); GeneratorFunction = generatorFunc ? getProto(generatorFunc) : false; } return getProto(fn) === GeneratorFunction; }; } }); // node_modules/is-callable/index.js var require_is_callable = __commonJS({ "node_modules/is-callable/index.js"(exports, module) { "use strict"; init_process_shim(); var fnToStr = Function.prototype.toString; var reflectApply = typeof Reflect === "object" && Reflect !== null && Reflect.apply; var badArrayLike; var isCallableMarker; if (typeof reflectApply === "function" && typeof Object.defineProperty === "function") { try { badArrayLike = Object.defineProperty({}, "length", { get: function() { throw isCallableMarker; } }); isCallableMarker = {}; reflectApply(function() { throw 42; }, null, badArrayLike); } catch (_) { if (_ !== isCallableMarker) { reflectApply = null; } } } else { reflectApply = null; } var constructorRegex = /^\s*class\b/; var isES6ClassFn = function isES6ClassFunction(value) { try { var fnStr = fnToStr.call(value); return constructorRegex.test(fnStr); } catch (e) { return false; } }; var tryFunctionObject = function tryFunctionToStr(value) { try { if (isES6ClassFn(value)) { return false; } fnToStr.call(value); return true; } catch (e) { return false; } }; var toStr = Object.prototype.toString; var objectClass = "[object Object]"; var fnClass = "[object Function]"; var genClass = "[object GeneratorFunction]"; var ddaClass = "[object HTMLAllCollection]"; var ddaClass2 = "[object HTML document.all class]"; var ddaClass3 = "[object HTMLCollection]"; var hasToStringTag = typeof Symbol === "function" && !!Symbol.toStringTag; var isIE68 = !(0 in [,]); var isDDA = function isDocumentDotAll() { return false; }; if (typeof document === "object") { all = document.all; if (toStr.call(all) === toStr.call(document.all)) { isDDA = function isDocumentDotAll(value) { if ((isIE68 || !value) && (typeof value === "undefined" || typeof value === "object")) { try { var str = toStr.call(value); return (str === ddaClass || str === ddaClass2 || str === ddaClass3 || str === objectClass) && value("") == null; } catch (e) { } } return false; }; } } var all; module.exports = reflectApply ? function isCallable(value) { if (isDDA(value)) { return true; } if (!value) { return false; } if (typeof value !== "function" && typeof value !== "object") { return false; } try { reflectApply(value, null, badArrayLike); } catch (e) { if (e !== isCallableMarker) { return false; } } return !isES6ClassFn(value) && tryFunctionObject(value); } : function isCallable(value) { if (isDDA(value)) { return true; } if (!value) { return false; } if (typeof value !== "function" && typeof value !== "object") { return false; } if (hasToStringTag) { return tryFunctionObject(value); } if (isES6ClassFn(value)) { return false; } var strClass = toStr.call(value); if (strClass !== fnClass && strClass !== genClass && !/^\[object HTML/.test(strClass)) { return false; } return tryFunctionObject(value); }; } }); // node_modules/for-each/index.js var require_for_each = __commonJS({ "node_modules/for-each/index.js"(exports, module) { "use strict"; init_process_shim(); var isCallable = require_is_callable(); var toStr = Object.prototype.toString; var hasOwnProperty = Object.prototype.hasOwnProperty; var forEachArray = function forEachArray2(array, iterator, receiver) { for (var i = 0, len = array.length; i < len; i++) { if (hasOwnProperty.call(array, i)) { if (receiver == null) { iterator(array[i], i, array); } else { iterator.call(receiver, array[i], i, array); } } } }; var forEachString = function forEachString2(string, iterator, receiver) { for (var i = 0, len = string.length; i < len; i++) { if (receiver == null) { iterator(string.charAt(i), i, string); } else { iterator.call(receiver, string.charAt(i), i, string); } } }; var forEachObject = function forEachObject2(object, iterator, receiver) { for (var k in object) { if (hasOwnProperty.call(object, k)) { if (receiver == null) { iterator(object[k], k, object); } else { iterator.call(receiver, object[k], k, object); } } } }; var forEach = function forEach2(list, iterator, thisArg) { if (!isCallable(iterator)) { throw new TypeError("iterator must be a function"); } var receiver; if (arguments.length >= 3) { receiver = thisArg; } if (toStr.call(list) === "[object Array]") { forEachArray(list, iterator, receiver); } else if (typeof list === "string") { forEachString(list, iterator, receiver); } else { forEachObject(list, iterator, receiver); } }; module.exports = forEach; } }); // node_modules/possible-typed-array-names/index.js var require_possible_typed_array_names = __commonJS({ "node_modules/possible-typed-array-names/index.js"(exports, module) { "use strict"; init_process_shim(); module.exports = [ "Float32Array", "Float64Array", "Int8Array", "Int16Array", "Int32Array", "Uint8Array", "Uint8ClampedArray", "Uint16Array", "Uint32Array", "BigInt64Array", "BigUint64Array" ]; } }); // node_modules/available-typed-arrays/index.js var require_available_typed_arrays = __commonJS({ "node_modules/available-typed-arrays/index.js"(exports, module) { "use strict"; init_process_shim(); var possibleNames = require_possible_typed_array_names(); var g = typeof globalThis === "undefined" ? global : globalThis; module.exports = function availableTypedArrays() { var out = []; for (var i = 0; i < possibleNames.length; i++) { if (typeof g[possibleNames[i]] === "function") { out[out.length] = possibleNames[i]; } } return out; }; } }); // node_modules/which-typed-array/index.js var require_which_typed_array = __commonJS({ "node_modules/which-typed-array/index.js"(exports, module) { "use strict"; init_process_shim(); var forEach = require_for_each(); var availableTypedArrays = require_available_typed_arrays(); var callBind = require_call_bind(); var callBound = require_callBound(); var gOPD = require_gopd(); var $toString = callBound("Object.prototype.toString"); var hasToStringTag = require_shams2()(); var g = typeof globalThis === "undefined" ? global : globalThis; var typedArrays = availableTypedArrays(); var $slice = callBound("String.prototype.slice"); var getPrototypeOf = Object.getPrototypeOf; var $indexOf = callBound("Array.prototype.indexOf", true) || function indexOf(array, value) { for (var i = 0; i < array.length; i += 1) { if (array[i] === value) { return i; } } return -1; }; var cache = { __proto__: null }; if (hasToStringTag && gOPD && getPrototypeOf) { forEach(typedArrays, function(typedArray) { var arr = new g[typedArray](); if (Symbol.toStringTag in arr) { var proto = getPrototypeOf(arr); var descriptor = gOPD(proto, Symbol.toStringTag); if (!descriptor) { var superProto = getPrototypeOf(proto); descriptor = gOPD(superProto, Symbol.toStringTag); } cache["$" + typedArray] = callBind(descriptor.get); } }); } else { forEach(typedArrays, function(typedArray) { var arr = new g[typedArray](); var fn = arr.slice || arr.set; if (fn) { cache["$" + typedArray] = callBind(fn); } }); } var tryTypedArrays = function tryAllTypedArrays(value) { var found = false; forEach( // eslint-disable-next-line no-extra-parens /** @type {Record<`\$${TypedArrayName}`, Getter>} */ /** @type {any} */ cache, /** @type {(getter: Getter, name: `\$${import('.').TypedArrayName}`) => void} */ function(getter, typedArray) { if (!found) { try { if ("$" + getter(value) === typedArray) { found = $slice(typedArray, 1); } } catch (e) { } } } ); return found; }; var trySlices = function tryAllSlices(value) { var found = false; forEach( // eslint-disable-next-line no-extra-parens /** @type {Record<`\$${TypedArrayName}`, Getter>} */ /** @type {any} */ cache, /** @type {(getter: typeof cache, name: `\$${import('.').TypedArrayName}`) => void} */ function(getter, name) { if (!found) { try { getter(value); found = $slice(name, 1); } catch (e) { } } } ); return found; }; module.exports = function whichTypedArray(value) { if (!value || typeof value !== "object") { return false; } if (!hasToStringTag) { var tag = $slice($toString(value), 8, -1); if ($indexOf(typedArrays, tag) > -1) { return tag; } if (tag !== "Object") { return false; } return trySlices(value); } if (!gOPD) { return null; } return tryTypedArrays(value); }; } }); // node_modules/is-typed-array/index.js var require_is_typed_array = __commonJS({ "node_modules/is-typed-array/index.js"(exports, module) { "use strict"; init_process_shim(); var whichTypedArray = require_which_typed_array(); module.exports = function isTypedArray(value) { return !!whichTypedArray(value); }; } }); // node_modules/util/support/types.js var require_types = __commonJS({ "node_modules/util/support/types.js"(exports) { "use strict"; init_process_shim(); var isArgumentsObject = require_is_arguments(); var isGeneratorFunction = require_is_generator_function(); var whichTypedArray = require_which_typed_array(); var isTypedArray = require_is_typed_array(); function uncurryThis(f) { return f.call.bind(f); } var BigIntSupported = typeof BigInt !== "undefined"; var SymbolSupported = typeof Symbol !== "undefined"; var ObjectToString = uncurryThis(Object.prototype.toString); var numberValue = uncurryThis(Number.prototype.valueOf); var stringValue = uncurryThis(String.prototype.valueOf); var booleanValue = uncurryThis(Boolean.prototype.valueOf); if (BigIntSupported) { bigIntValue = uncurryThis(BigInt.prototype.valueOf); } var bigIntValue; if (SymbolSupported) { symbolValue = uncurryThis(Symbol.prototype.valueOf); } var symbolValue; function checkBoxedPrimitive(value, prototypeValueOf) { if (typeof value !== "object") { return false; } try { prototypeValueOf(value); return true; } catch (e) { return false; } } exports.isArgumentsObject = isArgumentsObject; exports.isGeneratorFunction = isGeneratorFunction; exports.isTypedArray = isTypedArray; function isPromise(input) { return typeof Promise !== "undefined" && input instanceof Promise || input !== null && typeof input === "object" && typeof input.then === "function" && typeof input.catch === "function"; } exports.isPromise = isPromise; function isArrayBufferView(value) { if (typeof ArrayBuffer !== "undefined" && ArrayBuffer.isView) { return ArrayBuffer.isView(value); } return isTypedArray(value) || isDataView(value); } exports.isArrayBufferView = isArrayBufferView; function isUint8Array(value) { return whichTypedArray(value) === "Uint8Array"; } exports.isUint8Array = isUint8Array; function isUint8ClampedArray(value) { return whichTypedArray(value) === "Uint8ClampedArray"; } exports.isUint8ClampedArray = isUint8ClampedArray; function isUint16Array(value) { return whichTypedArray(value) === "Uint16Array"; } exports.isUint16Array = isUint16Array; function isUint32Array(value) { return whichTypedArray(value) === "Uint32Array"; } exports.isUint32Array = isUint32Array; function isInt8Array(value) { return whichTypedArray(value) === "Int8Array"; } exports.isInt8Array = isInt8Array; function isInt16Array(value) { return whichTypedArray(value) === "Int16Array"; } exports.isInt16Array = isInt16Array; function isInt32Array(value) { return whichTypedArray(value) === "Int32Array"; } exports.isInt32Array = isInt32Array; function isFloat32Array(value) { return whichTypedArray(value) === "Float32Array"; } exports.isFloat32Array = isFloat32Array; function isFloat64Array(value) { return whichTypedArray(value) === "Float64Array"; } exports.isFloat64Array = isFloat64Array; function isBigInt64Array(value) { return whichTypedArray(value) === "BigInt64Array"; } exports.isBigInt64Array = isBigInt64Array; function isBigUint64Array(value) { return whichTypedArray(value) === "BigUint64Array"; } exports.isBigUint64Array = isBigUint64Array; function isMapToString(value) { return ObjectToString(value) === "[object Map]"; } isMapToString.working = typeof Map !== "undefined" && isMapToString(/* @__PURE__ */ new Map()); function isMap(value) { if (typeof Map === "undefined") { return false; } return isMapToString.working ? isMapToString(value) : value instanceof Map; } exports.isMap = isMap; function isSetToString(value) { return ObjectToString(value) === "[object Set]"; } isSetToString.working = typeof Set !== "undefined" && isSetToString(/* @__PURE__ */ new Set()); function isSet(value) { if (typeof Set === "undefined") { return false; } return isSetToString.working ? isSetToString(value) : value instanceof Set; } exports.isSet = isSet; function isWeakMapToString(value) { return ObjectToString(value) === "[object WeakMap]"; } isWeakMapToString.working = typeof WeakMap !== "undefined" && isWeakMapToString(/* @__PURE__ */ new WeakMap()); function isWeakMap(value) { if (typeof WeakMap === "undefined") { return false; } return isWeakMapToString.working ? isWeakMapToString(value) : value instanceof WeakMap; } exports.isWeakMap = isWeakMap; function isWeakSetToString(value) { return ObjectToString(value) === "[object WeakSet]"; } isWeakSetToString.working = typeof WeakSet !== "undefined" && isWeakSetToString(/* @__PURE__ */ new WeakSet()); function isWeakSet(value) { return isWeakSetToString(value); } exports.isWeakSet = isWeakSet; function isArrayBufferToString(value) { return ObjectToString(value) === "[object ArrayBuffer]"; } isArrayBufferToString.working = typeof ArrayBuffer !== "undefined" && isArrayBufferToString(new ArrayBuffer()); function isArrayBuffer(value) { if (typeof ArrayBuffer === "undefined") { return false; } return isArrayBufferToString.working ? isArrayBufferToString(value) : value instanceof ArrayBuffer; } exports.isArrayBuffer = isArrayBuffer; function isDataViewToString(value) { return ObjectToString(value) === "[object DataView]"; } isDataViewToString.working = typeof ArrayBuffer !== "undefined" && typeof DataView !== "undefined" && isDataViewToString(new DataView(new ArrayBuffer(1), 0, 1)); function isDataView(value) { if (typeof DataView === "undefined") { return false; } return isDataViewToString.working ? isDataViewToString(value) : value instanceof DataView; } exports.isDataView = isDataView; var SharedArrayBufferCopy = typeof SharedArrayBuffer !== "undefined" ? SharedArrayBuffer : void 0; function isSharedArrayBufferToString(value) { return ObjectToString(value) === "[object SharedArrayBuffer]"; } function isSharedArrayBuffer(value) { if (typeof SharedArrayBufferCopy === "undefined") { return false; } if (typeof isSharedArrayBufferToString.working === "undefined") { isSharedArrayBufferToString.working = isSharedArrayBufferToString(new SharedArrayBufferCopy()); } return isSharedArrayBufferToString.working ? isSharedArrayBufferToString(value) : value instanceof SharedArrayBufferCopy; } exports.isSharedArrayBuffer = isSharedArrayBuffer; function isAsyncFunction(value) { return ObjectToString(value) === "[object AsyncFunction]"; } exports.isAsyncFunction = isAsyncFunction; function isMapIterator(value) { return ObjectToString(value) === "[object Map Iterator]"; } exports.isMapIterator = isMapIterator; function isSetIterator(value) { return ObjectToString(value) === "[object Set Iterator]"; } exports.isSetIterator = isSetIterator; function isGeneratorObject(value) { return ObjectToString(value) === "[object Generator]"; } exports.isGeneratorObject = isGeneratorObject; function isWebAssemblyCompiledModule(value) { return ObjectToString(value) === "[object WebAssembly.Module]"; } exports.isWebAssemblyCompiledModule = isWebAssemblyCompiledModule; function isNumberObject(value) { return checkBoxedPrimitive(value, numberValue); } exports.isNumberObject = isNumberObject; function isStringObject(value) { return checkBoxedPrimitive(value, stringValue); } exports.isStringObject = isStringObject; function isBooleanObject(value) { return checkBoxedPrimitive(value, booleanValue); } exports.isBooleanObject = isBooleanObject; function isBigIntObject(value) { return BigIntSupported && checkBoxedPrimitive(value, bigIntValue); } exports.isBigIntObject = isBigIntObject; function isSymbolObject(value) { return SymbolSupported && checkBoxedPrimitive(value, symbolValue); } exports.isSymbolObject = isSymbolObject; function isBoxedPrimitive(value) { return isNumberObject(value) || isStringObject(value) || isBooleanObject(value) || isBigIntObject(value) || isSymbolObject(value); } exports.isBoxedPrimitive = isBoxedPrimitive; function isAnyArrayBuffer(value) { return typeof Uint8Array !== "undefined" && (isArrayBuffer(value) || isSharedArrayBuffer(value)); } exports.isAnyArrayBuffer = isAnyArrayBuffer; ["isProxy", "isExternal", "isModuleNamespaceObject"].forEach(function(method) { Object.defineProperty(exports, method, { enumerable: false, value: function() { throw new Error(method + " is not supported in userland"); } }); }); } }); // node_modules/util/support/isBufferBrowser.js var require_isBufferBrowser = __commonJS({ "node_modules/util/support/isBufferBrowser.js"(exports, module) { init_process_shim(); module.exports = function isBuffer(arg) { return arg && typeof arg === "object" && typeof arg.copy === "function" && typeof arg.fill === "function" && typeof arg.readUInt8 === "function"; }; } }); // node_modules/util/util.js var require_util3 = __commonJS({ "node_modules/util/util.js"(exports) { init_process_shim(); var getOwnPropertyDescriptors = Object.getOwnPropertyDescriptors || function getOwnPropertyDescriptors2(obj) { var keys = Object.keys(obj); var descriptors = {}; for (var i = 0; i < keys.length; i++) { descriptors[keys[i]] = Object.getOwnPropertyDescriptor(obj, keys[i]); } return descriptors; }; var formatRegExp = /%[sdj%]/g; exports.format = function(f) { if (!isString(f)) { var objects = []; for (var i = 0; i < arguments.length; i++) { objects.push(inspect(arguments[i])); } return objects.join(" "); } var i = 1; var args = arguments; var len = args.length; var str = String(f).replace(formatRegExp, function(x2) { if (x2 === "%%") return "%"; if (i >= len) return x2; switch (x2) { case "%s": return String(args[i++]); case "%d": return Number(args[i++]); case "%j": try { return JSON.stringify(args[i++]); } catch (_) { return "[Circular]"; } default: return x2; } }); for (var x = args[i]; i < len; x = args[++i]) { if (isNull(x) || !isObject(x)) { str += " " + x; } else { str += " " + inspect(x); } } return str; }; exports.deprecate = function(fn, msg) { if (typeof process !== "undefined" && process.noDeprecation === true) { return fn; } if (typeof process === "undefined") { return function() { return exports.deprecate(fn, msg).apply(this, arguments); }; } var warned = false; function deprecated() { if (!warned) { if (process.throwDeprecation) { throw new Error(msg); } else if (process.traceDeprecation) { console.trace(msg); } else { console.error(msg); } warned = true; } return fn.apply(this, arguments); } return deprecated; }; var debugs = {}; var debugEnvRegex = /^$/; if (process.env.NODE_DEBUG) { debugEnv = process.env.NODE_DEBUG; debugEnv = debugEnv.replace(/[|\\{}()[\]^$+?.]/g, "\\$&").replace(/\*/g, ".*").replace(/,/g, "$|^").toUpperCase(); debugEnvRegex = new RegExp("^" + debugEnv + "$", "i"); } var debugEnv; exports.debuglog = function(set) { set = set.toUpperCase(); if (!debugs[set]) { if (debugEnvRegex.test(set)) { var pid = process.pid; debugs[set] = function() { var msg = exports.format.apply(exports, arguments); console.error("%s %d: %s", set, pid, msg); }; } else { debugs[set] = function() { }; } } return debugs[set]; }; function inspect(obj, opts) { var ctx = { seen: [], stylize: stylizeNoColor }; if (arguments.length >= 3) ctx.depth = arguments[2]; if (arguments.length >= 4) ctx.colors = arguments[3]; if (isBoolean(opts)) { ctx.showHidden = opts; } else if (opts) { exports._extend(ctx, opts); } if (isUndefined(ctx.showHidden)) ctx.showHidden = false; if (isUndefined(ctx.depth)) ctx.depth = 2; if (isUndefined(ctx.colors)) ctx.colors = false; if (isUndefined(ctx.customInspect)) ctx.customInspect = true; if (ctx.colors) ctx.stylize = stylizeWithColor; return formatValue(ctx, obj, ctx.depth); } exports.inspect = inspect; inspect.colors = { "bold": [1, 22], "italic": [3, 23], "underline": [4, 24], "inverse": [7, 27], "white": [37, 39], "grey": [90, 39], "black": [30, 39], "blue": [34, 39], "cyan": [36, 39], "green": [32, 39], "magenta": [35, 39], "red": [31, 39], "yellow": [33, 39] }; inspect.styles = { "special": "cyan", "number": "yellow", "boolean": "yellow", "undefined": "grey", "null": "bold", "string": "green", "date": "magenta", // "name": intentionally not styling "regexp": "red" }; function stylizeWithColor(str, styleType) { var style = inspect.styles[styleType]; if (style) { return "\x1B[" + inspect.colors[style][0] + "m" + str + "\x1B[" + inspect.colors[style][1] + "m"; } else { return str; } } function stylizeNoColor(str, styleType) { return str; } function arrayToHash(array) { var hash = {}; array.forEach(function(val, idx) { hash[val] = true; }); return hash; } function formatValue(ctx, value, recurseTimes) { if (ctx.customInspect && value && isFunction(value.inspect) && // Filter out the util module, it's inspect function is special value.inspect !== exports.inspect && // Also filter out any prototype objects using the circular check. !(value.constructor && value.constructor.prototype === value)) { var ret = value.inspect(recurseTimes, ctx); if (!isString(ret)) { ret = formatValue(ctx, ret, recurseTimes); } return ret; } var primitive = formatPrimitive(ctx, value); if (primitive) { return primitive; } var keys = Object.keys(value); var visibleKeys = arrayToHash(keys); if (ctx.showHidden) { keys = Object.getOwnPropertyNames(value); } if (isError(value) && (keys.indexOf("message") >= 0 || keys.indexOf("description") >= 0)) { return formatError(value); } if (keys.length === 0) { if (isFunction(value)) { var name = value.name ? ": " + value.name : ""; return ctx.stylize("[Function" + name + "]", "special"); } if (isRegExp(value)) { return ctx.stylize(RegExp.prototype.toString.call(value), "regexp"); } if (isDate(value)) { return ctx.stylize(Date.prototype.toString.call(value), "date"); } if (isError(value)) { return formatError(value); } } var base = "", array = false, braces = ["{", "}"]; if (isArray(value)) { array = true; braces = ["[", "]"]; } if (isFunction(value)) { var n = value.name ? ": " + value.name : ""; base = " [Function" + n + "]"; } if (isRegExp(value)) { base = " " + RegExp.prototype.toString.call(value); } if (isDate(value)) { base = " " + Date.prototype.toUTCString.call(value); } if (isError(value)) { base = " " + formatError(value); } if (keys.length === 0 && (!array || value.length == 0)) { return braces[0] + base + braces[1]; } if (recurseTimes < 0) { if (isRegExp(value)) { return ctx.stylize(RegExp.prototype.toString.call(value), "regexp"); } else { return ctx.stylize("[Object]", "special"); } } ctx.seen.push(value); var output; if (array) { output = formatArray(ctx, value, recurseTimes, visibleKeys, keys); } else { output = keys.map(function(key) { return formatProperty(ctx, value, recurseTimes, visibleKeys, key, array); }); } ctx.seen.pop(); return reduceToSingleString(output, base, braces); } function formatPrimitive(ctx, value) { if (isUndefined(value)) return ctx.stylize("undefined", "undefined"); if (isString(value)) { var simple = "'" + JSON.stringify(value).replace(/^"|"$/g, "").replace(/'/g, "\\'").replace(/\\"/g, '"') + "'"; return ctx.stylize(simple, "string"); } if (isNumber(value)) return ctx.stylize("" + value, "number"); if (isBoolean(value)) return ctx.stylize("" + value, "boolean"); if (isNull(value)) return ctx.stylize("null", "null"); } function formatError(value) { return "[" + Error.prototype.toString.call(value) + "]"; } function formatArray(ctx, value, recurseTimes, visibleKeys, keys) { var output = []; for (var i = 0, l = value.length; i < l; ++i) { if (hasOwnProperty(value, String(i))) { output.push(formatProperty( ctx, value, recurseTimes, visibleKeys, String(i), true )); } else { output.push(""); } } keys.forEach(function(key) { if (!key.match(/^\d+$/)) { output.push(formatProperty( ctx, value, recurseTimes, visibleKeys, key, true )); } }); return output; } function formatProperty(ctx, value, recurseTimes, visibleKeys, key, array) { var name, str, desc; desc = Object.getOwnPropertyDescriptor(value, key) || { value: value[key] }; if (desc.get) { if (desc.set) { str = ctx.stylize("[Getter/Setter]", "special"); } else { str = ctx.stylize("[Getter]", "special"); } } else { if (desc.set) { str = ctx.stylize("[Setter]", "special"); } } if (!hasOwnProperty(visibleKeys, key)) { name = "[" + key + "]"; } if (!str) { if (ctx.seen.indexOf(desc.value) < 0) { if (isNull(recurseTimes)) { str = formatValue(ctx, desc.value, null); } else { str = formatValue(ctx, desc.value, recurseTimes - 1); } if (str.indexOf("\n") > -1) { if (array) { str = str.split("\n").map(function(line) { return " " + line; }).join("\n").slice(2); } else { str = "\n" + str.split("\n").map(function(line) { return " " + line; }).join("\n"); } } } else { str = ctx.stylize("[Circular]", "special"); } } if (isUndefined(name)) { if (array && key.match(/^\d+$/)) { return str; } name = JSON.stringify("" + key); if (name.match(/^"([a-zA-Z_][a-zA-Z_0-9]*)"$/)) { name = name.slice(1, -1); name = ctx.stylize(name, "name"); } else { name = name.replace(/'/g, "\\'").replace(/\\"/g, '"').replace(/(^"|"$)/g, "'"); name = ctx.stylize(name, "string"); } } return name + ": " + str; } function reduceToSingleString(output, base, braces) { var numLinesEst = 0; var length = output.reduce(function(prev, cur) { numLinesEst++; if (cur.indexOf("\n") >= 0) numLinesEst++; return prev + cur.replace(/\u001b\[\d\d?m/g, "").length + 1; }, 0); if (length > 60) { return braces[0] + (base === "" ? "" : base + "\n ") + " " + output.join(",\n ") + " " + braces[1]; } return braces[0] + base + " " + output.join(", ") + " " + braces[1]; } exports.types = require_types(); function isArray(ar) { return Array.isArray(ar); } exports.isArray = isArray; function isBoolean(arg) { return typeof arg === "boolean"; } exports.isBoolean = isBoolean; function isNull(arg) { return arg === null; } exports.isNull = isNull; function isNullOrUndefined(arg) { return arg == null; } exports.isNullOrUndefined = isNullOrUndefined; function isNumber(arg) { return typeof arg === "number"; } exports.isNumber = isNumber; function isString(arg) { return typeof arg === "string"; } exports.isString = isString; function isSymbol(arg) { return typeof arg === "symbol"; } exports.isSymbol = isSymbol; function isUndefined(arg) { return arg === void 0; } exports.isUndefined = isUndefined; function isRegExp(re) { return isObject(re) && objectToString(re) === "[object RegExp]"; } exports.isRegExp = isRegExp; exports.types.isRegExp = isRegExp; function isObject(arg) { return typeof arg === "object" && arg !== null; } exports.isObject = isObject; function isDate(d) { return isObject(d) && objectToString(d) === "[object Date]"; } exports.isDate = isDate; exports.types.isDate = isDate; function isError(e) { return isObject(e) && (objectToString(e) === "[object Error]" || e instanceof Error); } exports.isError = isError; exports.types.isNativeError = isError; function isFunction(arg) { return typeof arg === "function"; } exports.isFunction = isFunction; function isPrimitive(arg) { return arg === null || typeof arg === "boolean" || typeof arg === "number" || typeof arg === "string" || typeof arg === "symbol" || // ES6 symbol typeof arg === "undefined"; } exports.isPrimitive = isPrimitive; exports.isBuffer = require_isBufferBrowser(); function objectToString(o) { return Object.prototype.toString.call(o); } function pad(n) { return n < 10 ? "0" + n.toString(10) : n.toString(10); } var months = [ "Jan", "Feb", "Mar", "Apr", "May", "Jun", "Jul", "Aug", "Sep", "Oct", "Nov", "Dec" ]; function timestamp() { var d = /* @__PURE__ */ new Date(); var time = [ pad(d.getHours()), pad(d.getMinutes()), pad(d.getSeconds()) ].join(":"); return [d.getDate(), months[d.getMonth()], time].join(" "); } exports.log = function() { console.log("%s - %s", timestamp(), exports.format.apply(exports, arguments)); }; exports.inherits = require_inherits_browser(); exports._extend = function(origin, add) { if (!add || !isObject(add)) return origin; var keys = Object.keys(add); var i = keys.length; while (i--) { origin[keys[i]] = add[keys[i]]; } return origin; }; function hasOwnProperty(obj, prop) { return Object.prototype.hasOwnProperty.call(obj, prop); } var kCustomPromisifiedSymbol = typeof Symbol !== "undefined" ? Symbol("util.promisify.custom") : void 0; exports.promisify = function promisify(original) { if (typeof original !== "function") throw new TypeError('The "original" argument must be of type Function'); if (kCustomPromisifiedSymbol && original[kCustomPromisifiedSymbol]) { var fn = original[kCustomPromisifiedSymbol]; if (typeof fn !== "function") { throw new TypeError('The "util.promisify.custom" argument must be of type Function'); } Object.defineProperty(fn, kCustomPromisifiedSymbol, { value: fn, enumerable: false, writable: false, configurable: true }); return fn; } function fn() { var promiseResolve, promiseReject; var promise = new Promise(function(resolve, reject) { promiseResolve = resolve; promiseReject = reject; }); var args = []; for (var i = 0; i < arguments.length; i++) { args.push(arguments[i]); } args.push(function(err, value) { if (err) { promiseReject(err); } else { promiseResolve(value); } }); try { original.apply(this, args); } catch (err) { promiseReject(err); } return promise; } Object.setPrototypeOf(fn, Object.getPrototypeOf(original)); if (kCustomPromisifiedSymbol) Object.defineProperty(fn, kCustomPromisifiedSymbol, { value: fn, enumerable: false, writable: false, configurable: true }); return Object.defineProperties( fn, getOwnPropertyDescriptors(original) ); }; exports.promisify.custom = kCustomPromisifiedSymbol; function callbackifyOnRejected(reason, cb) { if (!reason) { var newReason = new Error("Promise was rejected with a falsy value"); newReason.reason = reason; reason = newReason; } return cb(reason); } function callbackify(original) { if (typeof original !== "function") { throw new TypeError('The "original" argument must be of type Function'); } function callbackified() { var args = []; for (var i = 0; i < arguments.length; i++) { args.push(arguments[i]); } var maybeCb = args.pop(); if (typeof maybeCb !== "function") { throw new TypeError("The last argument must be of type Function"); } var self2 = this; var cb = function() { return maybeCb.apply(self2, arguments); }; original.apply(this, args).then( function(ret) { process.nextTick(cb.bind(null, null, ret)); }, function(rej) { process.nextTick(callbackifyOnRejected.bind(null, rej, cb)); } ); } Object.setPrototypeOf(callbackified, Object.getPrototypeOf(original)); Object.defineProperties( callbackified, getOwnPropertyDescriptors(original) ); return callbackified; } exports.callbackify = callbackify; } }); // node_modules/stream-skip/index.js var require_stream_skip = __commonJS({ "node_modules/stream-skip/index.js"(exports, module) { init_process_shim(); var stream = require_ours(); var util = require_util3(); var Transform3 = stream.Transform; function Skip(options) { if (!(this instanceof Skip)) { return new Skip(options); } this._toSkip = options.skip; Transform3.call(this, options); } util.inherits(Skip, Transform3); Skip.prototype._transform = function(chunk, enc, cb) { if (this._toSkip == 0) this.push(chunk); else if (this._toSkip > chunk.length) { this._toSkip -= chunk.length; } else { if (this._toSkip !== chunk.length) this.push(chunk.slice(this._toSkip)); this._toSkip = 0; } cb(); }; module.exports = Skip; } }); // lib/mega.mjs init_process_shim(); // lib/crypto/index.mjs init_process_shim(); var import_stream2 = __toESM(require_ours(), 1); var import_pumpify = __toESM(require_pumpify(), 1); // lib/util.mjs init_process_shim(); var import_stream = __toESM(require_ours(), 1); function streamToCb(stream, cb) { const chunks = []; let complete; stream.on("data", (d) => chunks.push(d)); stream.on("end", () => { if (!complete) { complete = true; cb(null, import_buffer.Buffer.concat(chunks)); } }); stream.on("error", (e) => { if (!complete) { complete = true; cb(e); } }); } function chunkSizeSafe(size) { let last; return new import_stream.Transform({ transform(chunk, encoding, callback) { if (last) chunk = import_buffer.Buffer.concat([last, chunk]); const end = Math.floor(chunk.length / size) * size; if (!end) { last = last ? import_buffer.Buffer.concat([last, chunk]) : chunk; } else if (chunk.length > end) { last = chunk.slice(end); this.push(chunk.slice(0, end)); } else { last = void 0; this.push(chunk); } callback(); }, flush(callback) { if (last) this.push(last); callback(); } }); } function detectSize(targetStream, cb) { const chunks = []; let size = 0; return new import_stream.Transform({ transform(chunk, encoding, callback) { chunks.push(chunk); size += chunk.length; callback(); }, flush(callback) { cb(size); function handleChunk() { while (chunks.length) { const needDrain = !targetStream.write(chunks.shift()); if (needDrain) return targetStream.once("drain", handleChunk); } targetStream.end(); callback(); } handleChunk(); } }); } function createPromise(originalCb) { let cb; const promise = new Promise((resolve, reject) => { cb = (err, arg) => { if (err) { reject(err); } else { resolve(arg); } }; }); if (originalCb) { promise.then((arg) => originalCb(null, arg), originalCb); } return [cb, promise]; } // lib/crypto/index.mjs var import_secure_random = __toESM(require_secure_random(), 1); // browser/aes.mjs init_process_shim(); // browser/sjcl.mjs init_process_shim(); var AES = class { constructor(key) { if (!this._tables[0][0][0]) { this._precompute(); } let i; let j; let tmp; let encKey; let decKey; const sbox = this._tables[0][4]; const decTable = this._tables[1]; const keyLen = key.length; let rcon = 1; if (keyLen !== 4 && keyLen !== 6 && keyLen !== 8) { throw new Error("invalid aes key size"); } this._key = [encKey = key.slice(0), decKey = []]; for (i = keyLen; i < 4 * keyLen + 28; i++) { tmp = encKey[i - 1]; if (i % keyLen === 0 || keyLen === 8 && i % keyLen === 4) { tmp = sbox[tmp >>> 24] << 24 ^ sbox[tmp >> 16 & 255] << 16 ^ sbox[tmp >> 8 & 255] << 8 ^ sbox[tmp & 255]; if (i % keyLen === 0) { tmp = tmp << 8 ^ tmp >>> 24 ^ rcon << 24; rcon = rcon << 1 ^ (rcon >> 7) * 283; } } encKey[i] = encKey[i - keyLen] ^ tmp; } for (j = 0; i; j++, i--) { tmp = encKey[j & 3 ? i : i - 4]; if (i <= 4 || j < 4) { decKey[j] = tmp; } else { decKey[j] = decTable[0][sbox[tmp >>> 24]] ^ decTable[1][sbox[tmp >> 16 & 255]] ^ decTable[2][sbox[tmp >> 8 & 255]] ^ decTable[3][sbox[tmp & 255]]; } } } // public /* Something like this might appear here eventually name: "AES", blockSize: 4, keySizes: [4,6,8], */ /** * Encrypt an array of 4 big-endian words. * @param {Array} data The plaintext. * @return {Array} The ciphertext. */ encrypt(data) { return this._crypt(data, 0); } /** * Decrypt an array of 4 big-endian words. * @param {Array} data The ciphertext. * @return {Array} The plaintext. */ decrypt(data) { return this._crypt(data, 1); } /** * Expand the S-box tables. * * @private */ _precompute() { const encTable = this._tables[0]; const decTable = this._tables[1]; const sbox = encTable[4]; const sboxInv = decTable[4]; let i; let x; let xInv; const d = []; const th = []; let x2; let x4; let x8; let s; let tEnc; let tDec; for (i = 0; i < 256; i++) { th[(d[i] = i << 1 ^ (i >> 7) * 283) ^ i] = i; } for (x = xInv = 0; !sbox[x]; x ^= x2 || 1, xInv = th[xInv] || 1) { s = xInv ^ xInv << 1 ^ xInv << 2 ^ xInv << 3 ^ xInv << 4; s = s >> 8 ^ s & 255 ^ 99; sbox[x] = s; sboxInv[s] = x; x8 = d[x4 = d[x2 = d[x]]]; tDec = x8 * 16843009 ^ x4 * 65537 ^ x2 * 257 ^ x * 16843008; tEnc = d[s] * 257 ^ s * 16843008; for (i = 0; i < 4; i++) { encTable[i][x] = tEnc = tEnc << 24 ^ tEnc >>> 8; decTable[i][s] = tDec = tDec << 24 ^ tDec >>> 8; } } for (i = 0; i < 5; i++) { encTable[i] = encTable[i].slice(0); decTable[i] = decTable[i].slice(0); } } /** * Encryption and decryption core. * @param {Array} input Four words to be encrypted or decrypted. * @param dir The direction, 0 for encrypt and 1 for decrypt. * @return {Array} The four encrypted or decrypted words. * @private */ _crypt(input, dir) { if (input.length !== 4) { throw new Error("invalid aes block size"); } const key = this._key[dir]; let a = input[0] ^ key[0]; let b = input[dir ? 3 : 1] ^ key[1]; let c = input[2] ^ key[2]; let d = input[dir ? 1 : 3] ^ key[3]; let a2; let b2; let c2; const nInnerRounds = key.length / 4 - 2; let i; let kIndex = 4; const out = [0, 0, 0, 0]; const table = this._tables[dir]; const t0 = table[0]; const t1 = table[1]; const t2 = table[2]; const t3 = table[3]; const sbox = table[4]; for (i = 0; i < nInnerRounds; i++) { a2 = t0[a >>> 24] ^ t1[b >> 16 & 255] ^ t2[c >> 8 & 255] ^ t3[d & 255] ^ key[kIndex]; b2 = t0[b >>> 24] ^ t1[c >> 16 & 255] ^ t2[d >> 8 & 255] ^ t3[a & 255] ^ key[kIndex + 1]; c2 = t0[c >>> 24] ^ t1[d >> 16 & 255] ^ t2[a >> 8 & 255] ^ t3[b & 255] ^ key[kIndex + 2]; d = t0[d >>> 24] ^ t1[a >> 16 & 255] ^ t2[b >> 8 & 255] ^ t3[c & 255] ^ key[kIndex + 3]; kIndex += 4; a = a2; b = b2; c = c2; } for (i = 0; i < 4; i++) { out[dir ? 3 & -i : i] = sbox[a >>> 24] << 24 ^ sbox[b >> 16 & 255] << 16 ^ sbox[c >> 8 & 255] << 8 ^ sbox[d & 255] ^ key[kIndex++]; a2 = a; a = b; b = c; c = d; d = a2; } return out; } }; AES.prototype._tables = [[[], [], [], [], []], [[], [], [], [], []]]; // browser/aes.mjs function prepareKey(password) { let i, j, r; let pkey = [2479122403, 2108737444, 3518906241, 22203222]; const paddedPassword = import_buffer.Buffer.alloc(Math.ceil(password.length / 4) * 4); paddedPassword.set(password, 0); for (r = 65536; r--; ) { for (j = 0; j < password.length; j += 16) { const key2 = [0, 0, 0, 0]; for (i = 0; i < 16; i += 4) { if (i + j < password.length) { key2[i / 4] = paddedPassword.readInt32BE(i + j); } } pkey = new AES(key2).encrypt(pkey); } } const key = import_buffer.Buffer.allocUnsafe(16); for (i = 0; i < 4; i++) { key.writeInt32BE(pkey[i], i * 4); } return key; } function prepareKeyV2(password, info, cb) { const salt = import_buffer.Buffer.from(info.s, "base64"); const iterations = 1e5; const digest = "SHA-512"; window.crypto.subtle.importKey("raw", password, "PBKDF2", false, ["deriveKey", "deriveBits"]).then((key) => { return window.crypto.subtle.deriveBits({ name: "PBKDF2", salt, iterations, hash: { name: digest } }, key, 256); }).then((result) => { cb(null, import_buffer.Buffer.from(result)); }).catch(cb); } var AES2 = class { constructor(key) { if (key.length !== 16) throw Error("Wrong key length. Key must be 128bit."); const a32 = []; for (let i = 0; i < 4; i++) a32[i] = key.readInt32BE(i * 4); this.aes = new AES(a32); } encryptCBC(buffer) { let iv = [0, 0, 0, 0]; const d = Array(4); let i, j; for (i = 0; i < buffer.length; i += 16) { for (j = 0; j < 4; j++) { d[j] = buffer.readUInt32BE(i + j * 4) ^ iv[j]; } iv = this.aes.encrypt(d); for (j = 0; j < 4; j++) { buffer.writeInt32BE(iv[j], i + j * 4); } } } decryptCBC(buffer) { let iv = [0, 0, 0, 0]; let d = Array(4); let t = Array(4); let i, j; for (i = 0; i < buffer.length; i += 16) { for (j = 0; j < 4; j++) { d[j] = buffer.readUInt32BE(i + j * 4); } t = d; d = this.aes.decrypt(d); for (j = 0; j < 4; j++) { buffer.writeInt32BE(d[j] ^ iv[j], i + j * 4); } iv = t; } } stringhash(buffer) { let h32 = [0, 0, 0, 0]; for (let i = 0; i < buffer.length; i += 4) { if (buffer.length - i < 4) { const len = buffer.length - i; h32[i / 4 & 3] ^= buffer.readIntBE(i, len) << (4 - len) * 8; } else { h32[i / 4 & 3] ^= buffer.readInt32BE(i); } } for (let i = 16384; i--; ) h32 = this.aes.encrypt(h32); const b = import_buffer.Buffer.allocUnsafe(8); b.writeInt32BE(h32[0], 0); b.writeInt32BE(h32[2], 4); return b; } encryptECB(key) { let d = []; for (let i = 0; i < key.length; i += 16) { d[0] = key.readInt32BE(i); d[1] = key.readInt32BE(i + 4); d[2] = key.readInt32BE(i + 8); d[3] = key.readInt32BE(i + 12); d = this.aes.encrypt(d); key.writeInt32BE(d[0], i); key.writeInt32BE(d[1], i + 4); key.writeInt32BE(d[2], i + 8); key.writeInt32BE(d[3], i + 12); } return key; } decryptECB(key) { let d = []; for (let i = 0; i < key.length; i += 16) { d[0] = key.readInt32BE(i); d[1] = key.readInt32BE(i + 4); d[2] = key.readInt32BE(i + 8); d[3] = key.readInt32BE(i + 12); d = this.aes.decrypt(d); key.writeInt32BE(d[0], i); key.writeInt32BE(d[1], i + 4); key.writeInt32BE(d[2], i + 8); key.writeInt32BE(d[3], i + 12); } return key; } }; var CTR = class { constructor(aes, nonce, start = 0) { this.aes = aes; this.nonce = nonce.slice(0, 8); this.increment = 131072; this.posNext = this.increment; this.pos = 0; this.ctr = import_buffer.Buffer.alloc(16); this.nonce.copy(this.ctr, 0); this.incrementCTR(start / 16); } encrypt(buffer) { for (let i = 0; i < buffer.length; i += 16) { const enc = this.aes.encryptECB(import_buffer.Buffer.from(this.ctr)); for (let j = 0; j < 16; j++) { buffer[i + j] ^= enc[j]; } this.incrementCTR(); } return buffer; } decrypt(buffer) { for (let i = 0; i < buffer.length; i += 16) { const enc = this.aes.encryptECB(import_buffer.Buffer.from(this.ctr)); for (let j = 0; j < 16; j++) { buffer[i + j] ^= enc[j]; } this.incrementCTR(); } return buffer; } incrementCTR(cnt = 1) { const buf = this.ctr; let i = 15; let mod; while (cnt !== 0) { mod = (cnt + buf[i]) % 256; cnt = Math.floor((cnt + buf[i]) / 256); buf[i] = mod; i -= 1; if (i < 0) i = 15; } } }; var MAC = class { constructor(aes, nonce, start = 0) { this.aes = aes; this.nonce = nonce.slice(0, 8); this.increment = 131072; this.posNext = this.increment; this.pos = 0; this.mac = import_buffer.Buffer.alloc(16); this.nonce.copy(this.mac, 0); this.nonce.copy(this.mac, 8); this.macs = []; } condense() { if (this.mac) { this.macs.push(this.mac); this.mac = void 0; } const mac = import_buffer.Buffer.alloc(16); for (let i = 0; i < this.macs.length; i++) { for (let j = 0; j < 16; j++) mac[j] ^= this.macs[i][j]; this.aes.encryptECB(mac); } const macBuffer = import_buffer.Buffer.allocUnsafe(8); macBuffer.writeInt32BE(mac.readInt32BE(0) ^ mac.readInt32BE(4), 0); macBuffer.writeInt32BE(mac.readInt32BE(8) ^ mac.readInt32BE(12), 4); return macBuffer; } update(buffer) { for (let i = 0; i < buffer.length; i += 16) { for (let j = 0; j < 16; j++) { this.mac[j] ^= buffer[i + j]; } this.aes.encryptECB(this.mac); this.checkBounding(); } } checkBounding() { this.pos += 16; if (this.pos >= this.posNext) { this.macs.push(import_buffer.Buffer.from(this.mac)); this.nonce.copy(this.mac, 0); this.nonce.copy(this.mac, 8); if (this.increment < 1048576) { this.increment += 131072; } this.posNext += this.increment; } } }; // lib/crypto/index.mjs function formatKey(key) { return typeof key === "string" ? d64(key) : key; } function e64(buffer) { return buffer.toString("base64").replace(/\+/g, "-").replace(/\//g, "_").replace(/=/g, ""); } function d64(s) { return import_buffer.Buffer.from(s, "base64"); } function getCipher(key) { return new AES2(unmergeKeyMac(key).slice(0, 16)); } function megaEncrypt(key, options = {}) { const start = options.start || 0; if (start !== 0) { throw Error("Encryption cannot start midstream otherwise MAC verification will fail."); } key = formatKey(key); if (!key) { key = (0, import_secure_random.default)(24); } if (!(key instanceof import_buffer.Buffer)) { key = import_buffer.Buffer.from(key); } let stream = new import_stream2.Transform({ transform(chunk, encoding, callback) { mac.update(chunk); const data = ctr.encrypt(chunk); callback(null, import_buffer.Buffer.from(data)); }, flush(callback) { stream.mac = mac.condense(); stream.key = mergeKeyMac(key, stream.mac); callback(); } }); if (key.length !== 24) throw Error("Wrong key length. Key must be 192bit."); const aes = new AES2(key.slice(0, 16)); const ctr = new CTR(aes, key.slice(16), start); const mac = new MAC(aes, key.slice(16)); stream = (0, import_pumpify.default)(chunkSizeSafe(16), stream); return stream; } function megaDecrypt(key, options = {}) { const start = options.start || 0; if (start !== 0) options.disableVerification = true; if (start % 16 !== 0) throw Error("start argument of megaDecrypt must be a multiple of 16"); key = formatKey(key); if (!(key instanceof import_buffer.Buffer)) { key = import_buffer.Buffer.from(key); } const aes = getCipher(key); const ctr = new CTR(aes, key.slice(16), start); const mac = !options.disableVerification && new MAC(aes, key.slice(16)); let stream = new import_stream2.Transform({ transform(chunk, encoding, callback) { const data = ctr.decrypt(chunk); if (mac) mac.update(data); callback(null, import_buffer.Buffer.from(data)); }, flush(callback) { if (mac) stream.mac = mac.condense(); if (!options.disableVerification && !stream.mac.equals(key.slice(24))) { callback(Error("MAC verification failed")); return; } callback(); } }); stream = (0, import_pumpify.default)(chunkSizeSafe(16), stream); return stream; } function megaVerify(key) { key = formatKey(key); if (!(key instanceof import_buffer.Buffer)) { key = import_buffer.Buffer.from(key); } let stream = new import_stream2.Transform({ transform(chunk, encoding, callback) { mac.update(chunk); callback(null); }, flush(callback) { stream.mac = mac.condense(); if (!stream.mac.equals(key.slice(24))) { callback(Error("MAC verification failed")); return; } callback(); } }); if (key.length !== 32) throw Error("Wrong key length. Key must be 256bit."); const aes = getCipher(key); const mac = new MAC(aes, key.slice(16)); stream = (0, import_pumpify.default)(chunkSizeSafe(16), stream); return stream; } function unmergeKeyMac(key) { const newKey = import_buffer.Buffer.alloc(32); key.copy(newKey); for (let i = 0; i < 16; i++) { newKey.writeUInt8(newKey.readUInt8(i) ^ newKey.readUInt8(16 + i, true), i); } return newKey; } function mergeKeyMac(key, mac) { const newKey = import_buffer.Buffer.alloc(32); key.copy(newKey); mac.copy(newKey, 24); for (let i = 0; i < 16; i++) { newKey.writeUInt8(newKey.readUInt8(i) ^ newKey.readUInt8(16 + i), i); } return newKey; } function constantTimeCompare(bufferA, bufferB) { if (bufferA.length !== bufferB.length) return false; const len = bufferA.length; let result = 0; for (let i = 0; i < len; i++) { result |= bufferA[i] ^ bufferB[i]; } return result === 0; } // lib/storage.mjs init_process_shim(); // browser/rsa.mjs init_process_shim(); var globalState = {}; var bs = 28; var bx2 = 1 << bs; var bm = bx2 - 1; var bd = bs >> 1; var bdm = (1 << bd) - 1; var log2 = Math.log(2); function zeros(n) { const r = []; while (n-- > 0) r[n] = 0; return r; } function zclip(r) { let n = r.length; if (r[n - 1]) return r; while (n > 1 && r[n - 1] === 0) n--; return r.slice(0, n); } function nbits(x) { let n = 1; let t; if ((t = x >>> 16) !== 0) { x = t; n += 16; } if ((t = x >> 8) !== 0) { x = t; n += 8; } if ((t = x >> 4) !== 0) { x = t; n += 4; } if ((t = x >> 2) !== 0) { x = t; n += 2; } if ((t = x >> 1) !== 0) { x = t; n += 1; } return n; } function badd(a, b) { const al = a.length; const bl = b.length; if (al < bl) return badd(b, a); const r = []; let c = 0; let n = 0; for (; n < bl; n++) { c += a[n] + b[n]; r[n] = c & bm; c >>>= bs; } for (; n < al; n++) { c += a[n]; r[n] = c & bm; c >>>= bs; } if (c) r[n] = c; return r; } function bsub(a, b) { const al = a.length; const bl = b.length; if (bl > al) return []; if (bl === al) { if (b[bl - 1] > a[bl - 1]) return []; if (bl === 1) return [a[0] - b[0]]; } const r = []; let c = 0; let n; for (n = 0; n < bl; n++) { c += a[n] - b[n]; r[n] = c & bm; c >>= bs; } for (; n < al; n++) { c += a[n]; r[n] = c & bm; c >>= bs; } if (c) return []; return zclip(r); } function ip(w, n, x, y, c) { const xl = x & bdm; const xh = x >> bd; const yl = y & bdm; const yh = y >> bd; const m = xh * yl + yh * xl; const l = xl * yl + ((m & bdm) << bd) + w[n] + c; w[n] = l & bm; c = xh * yh + (m >> bd) + (l >> bs); return c; } function bsqr(x) { const t = x.length; const n = 2 * t; const r = zeros(n); let c = 0; let i, j; for (i = 0; i < t; i++) { c = ip(r, 2 * i, x[i], x[i], 0); for (j = i + 1; j < t; j++) { c = ip(r, i + j, 2 * x[j], x[i], c); } r[i + t] = c; } return zclip(r); } function bmul(x, y) { const n = x.length; const t = y.length; const r = zeros(n + t - 1); let c, i, j; for (i = 0; i < t; i++) { c = 0; for (j = 0; j < n; j++) { c = ip(r, i + j, x[j], y[i], c); } r[i + n] = c; } return zclip(r); } function toppart(x, start, len) { let n = 0; while (start >= 0 && len-- > 0) n = n * bx2 + x[start--]; return n; } function bdiv(a, b) { let n = a.length - 1; const t = b.length - 1; let nmt = n - t; let x, qq, xx; let i; if (n < t || n === t && (a[n] < b[n] || n > 0 && a[n] === b[n] && a[n - 1] < b[n - 1])) { globalState.q = [0]; globalState.mod = a; return globalState; } if (n === t && toppart(a, t, 2) / toppart(b, t, 2) < 4) { x = a.concat(); qq = 0; for (; ; ) { xx = bsub(x, b); if (xx.length === 0) break; x = xx; qq++; } globalState.q = [qq]; globalState.mod = x; return globalState; } const shift2 = Math.floor(Math.log(b[t]) / log2) + 1; const shift = bs - shift2; x = a.concat(); const y = b.concat(); if (shift) { for (i = t; i > 0; i--) y[i] = y[i] << shift & bm | y[i - 1] >> shift2; y[0] = y[0] << shift & bm; if (x[n] & (bm << shift2 & bm)) { x[++n] = 0; nmt++; } for (i = n; i > 0; i--) x[i] = x[i] << shift & bm | x[i - 1] >> shift2; x[0] = x[0] << shift & bm; } let x2; const q = zeros(nmt + 1); let y2 = zeros(nmt).concat(y); for (; ; ) { x2 = bsub(x, y2); if (x2.length === 0) break; q[nmt]++; x = x2; } const yt = y[t]; const top = toppart(y, t, 2); let m; for (i = n; i > t; i--) { m = i - t - 1; if (i >= x.length) { q[m] = 1; } else if (x[i] === yt) { q[m] = bm; } else { q[m] = Math.floor(toppart(x, i, 2) / yt); } const topx = toppart(x, i, 3); while (q[m] * top > topx) q[m]--; y2 = y2.slice(1); x2 = bsub(x, bmul([q[m]], y2)); if (x2.length === 0) { q[m]--; x2 = bsub(x, bmul([q[m]], y2)); } x = x2; } if (shift) { for (i = 0; i < x.length - 1; i++) x[i] = x[i] >> shift | x[i + 1] << shift2 & bm; x[x.length - 1] >>= shift; } globalState.q = zclip(q); globalState.mod = zclip(x); return globalState; } function simplemod(i, m) { let c = 0; let v; for (let n = i.length - 1; n >= 0; n--) { v = i[n]; c = ((v >> bd) + (c << bd)) % m; c = ((v & bdm) + (c << bd)) % m; } return c; } function bmod(p, m) { if (m.length === 1) { if (p.length === 1) return [p[0] % m[0]]; if (m[0] < bdm) return [simplemod(p, m[0])]; } const r = bdiv(p, m); return r.mod; } function bmod2(x, m, mu) { const xl = x.length - (m.length << 1); if (xl > 0) return bmod2(x.slice(0, xl).concat(bmod2(x.slice(xl), m, mu)), m, mu); const ml1 = m.length + 1; const ml2 = m.length - 1; let rr; const q3 = bmul(x.slice(ml2), mu).slice(ml1); const r1 = x.slice(0, ml1); const r2 = bmul(q3, m).slice(0, ml1); let r = bsub(r1, r2); if (r.length === 0) { r1[ml1] = 1; r = bsub(r1, r2); } for (let n = 0; ; n++) { rr = bsub(r, m); if (rr.length === 0) break; r = rr; if (n >= 3) return bmod2(r, m, mu); } return r; } function bmodexp(g, e, m) { let a = g.concat(); let l = e.length - 1; let n = m.length * 2; let mu = zeros(n + 1); mu[n] = 1; mu = bdiv(mu, m).q; n = nbits(e[l]) - 2; for (; l >= 0; l--) { for (; n >= 0; n -= 1) { a = bmod2(bsqr(a), m, mu); if (e[l] & 1 << n) a = bmod2(bmul(a, g), m, mu); } n = bs - 1; } return a; } function RSAdecrypt(m, d, p, q, u) { const xp = bmodexp(bmod(m, p), bmod(d, bsub(p, [1])), p); const xq = bmodexp(bmod(m, q), bmod(d, bsub(q, [1])), q); let t = bsub(xq, xp); if (t.length === 0) { t = bsub(xp, xq); t = bmod(bmul(t, u), q); t = bsub(q, t); } else { t = bmod(bmul(t, u), q); } return badd(bmul(t, p), xp); } function mpi2b(s) { let bn = 1; const r = [0]; let rn = 0; let sb = 256; let sn = s.length; let c; if (sn < 2) return 0; const len = (sn - 2) * 8; const bits = s.charCodeAt(0) * 256 + s.charCodeAt(1); if (bits > len || bits < len - 8) return 0; for (let n = 0; n < len; n++) { if ((sb <<= 1) > 255) { sb = 1; c = s.charCodeAt(--sn); } if (bn > bm) { bn = 1; r[++rn] = 0; } if (c & sb) r[rn] |= bn; bn <<= 1; } return r; } function b2s(b) { let bn = 1; let bc = 0; const r = [0]; let rb = 1; let rn = 0; const bits = b.length * bs; let rr = ""; let n; for (n = 0; n < bits; n++) { if (b[bc] & bn) r[rn] |= rb; if ((rb <<= 1) > 255) { rb = 1; r[++rn] = 0; } if ((bn <<= 1) > bm) { bn = 1; bc++; } } while (rn >= 0 && r[rn] === 0) rn--; for (n = 0; n <= rn; n++) rr = String.fromCharCode(r[n]) + rr; return rr; } function cryptoDecodePrivKey(privk) { const pubkey = []; for (let i = 0; i < 4; i++) { const l = (privk[0] * 256 + privk[1] + 7 >> 3) + 2; pubkey[i] = mpi2b(privk.toString("binary").substr(0, l)); if (typeof pubkey[i] === "number") { if (i !== 4 || privk.length >= 16) return false; break; } privk = privk.slice(l); } return pubkey; } function cryptoRsaDecrypt(ciphertext, privkey) { const integerCiphertext = mpi2b(ciphertext.toString("binary")); const plaintext = b2s(RSAdecrypt(integerCiphertext, privkey[2], privkey[0], privkey[1], privkey[3])); return import_buffer.Buffer.from(plaintext, "binary"); } // lib/api.mjs init_process_shim(); var import_events = __toESM(require_events(), 1); init_noop(); init_noop(); // lib/abort-controller-polyfill.mjs init_process_shim(); init_noop(); var abortController = globalThis.AbortController || noop_default; var abort_controller_polyfill_default = abortController; // lib/api.mjs var MAX_RETRIES = 4; var ERRORS = { 1: "EINTERNAL (-1): An internal error has occurred. Please submit a bug report, detailing the exact circumstances in which this error occurred.", 2: "EARGS (-2): You have passed invalid arguments to this command.", 3: "EAGAIN (-3): A temporary congestion or server malfunction prevented your request from being processed. No data was altered. Retried " + MAX_RETRIES + " times.", 4: "ERATELIMIT (-4): You have exceeded your command weight per time quota. Please wait a few seconds, then try again (this should never happen in sane real-life applications).", 5: "EFAILED (-5): The upload failed. Please restart it from scratch.", 6: "ETOOMANY (-6): Too many concurrent IP addresses are accessing this upload target URL.", 7: "ERANGE (-7): The upload file packet is out of range or not starting and ending on a chunk boundary.", 8: "EEXPIRED (-8): The upload target URL you are trying to access has expired. Please request a fresh one.", 9: "ENOENT (-9): Object (typically, node or user) not found. Wrong password?", 10: "ECIRCULAR (-10): Circular linkage attempted", 11: "EACCESS (-11): Access violation (e.g., trying to write to a read-only share)", 12: "EEXIST (-12): Trying to create an object that already exists", 13: "EINCOMPLETE (-13): Trying to access an incomplete resource", 14: "EKEY (-14): A decryption operation failed (never returned by the API)", 15: "ESID (-15): Invalid or expired user session, please relogin", 16: "EBLOCKED (-16): User blocked", 17: "EOVERQUOTA (-17): Request over quota", 18: "ETEMPUNAVAIL (-18): Resource temporarily not available, please try again later", 19: "ETOOMANYCONNECTIONS (-19)", 24: "EGOINGOVERQUOTA (-24)", 25: "EROLLEDBACK (-25)", 26: "EMFAREQUIRED (-26): Multi-Factor Authentication Required", 27: "EMASTERONLY (-27)", 28: "EBUSINESSPASTDUE (-28)", 29: "EPAYWALL (-29): ODQ paywall state", 400: "ETOOERR (-400)", 401: "ESHAREROVERQUOTA (-401)" }; var DEFAULT_GATEWAY = "https://g.api.mega.co.nz/"; var DEFAULT_HTTP_AGENT = true ? null : new Agent({ keepAlive: true }); var DEFAULT_HTTPS_AGENT = true ? null : new Agent({ keepAlive: true }); var API = class _API extends import_events.EventEmitter { constructor(keepalive, opt = {}) { super(); this.keepalive = keepalive; this.counterId = Math.random().toString().substr(2, 10); this.gateway = opt.gateway || DEFAULT_GATEWAY; const packageVersion = "1.2.2"; const shouldAvoidUA = _API.getShouldAvoidUA(); this.userAgent = opt.userAgent === null || shouldAvoidUA ? null : `${opt.userAgent || ""} megajs/${packageVersion}`.trim(); this.httpAgent = opt.httpAgent || DEFAULT_HTTP_AGENT; this.httpsAgent = opt.httpsAgent || DEFAULT_HTTPS_AGENT; this.fetch = opt.fetch || this.defaultFetch.bind(this); this.closed = false; } async defaultFetch(url, opts) { if (!opts) opts = {}; if (!opts.agent) { opts.agent = (url2) => url2.protocol === "http:" ? this.httpAgent : this.httpsAgent; } if (this.userAgent) { if (!opts.headers) opts.headers = {}; if (!opts.headers["user-agent"]) opts.headers["user-agent"] = this.userAgent; } if (!_API.fetchModule) { if (typeof globalThis.fetch === "function") { _API.fetchModule = globalThis.fetch.bind(globalThis); } else { throw Error("globalThis.fetch not found!"); } } return _API.fetchModule(url, opts); } request(json, originalCb, retryno = 0) { const isLogout = json.a === "sml"; if (this.closed && !isLogout) throw Error("API is closed"); const [cb, promise] = createPromise(originalCb); const qs = { id: (this.counterId++).toString() }; if (this.sid) { qs.sid = this.sid; } if (typeof json._querystring === "object") { Object.assign(qs, json._querystring); delete json._querystring; } this.fetch(`${this.gateway}cs?${new URLSearchParams(qs)}`, { method: "POST", headers: { "Content-Type": "application/json" }, body: JSON.stringify([json]) }).then(handleApiResponse).then((resp) => { if (this.closed && !isLogout) return; if (!resp) return cb(Error("Empty response")); if (resp.length) resp = resp[0]; let err; if (typeof resp === "number" && resp < 0) { if (resp === -3) { if (retryno < MAX_RETRIES) { return setTimeout(() => { this.request(json, cb, retryno + 1); }, Math.pow(2, retryno + 1) * 1e3); } } err = Error(ERRORS[-resp]); } else { if (this.keepalive && resp && resp.sn) { this.pull(resp.sn); } } cb(err, resp); }).catch((err) => { cb(err); }); return promise; } pull(sn, retryno = 0) { const controller = new abort_controller_polyfill_default(); this.sn = controller; this.fetch(`${this.gateway}sc?${new URLSearchParams({ sn, sid: this.sid })}`, { method: "POST", signal: controller.signal }).then(handleApiResponse).then((resp) => { this.sn = void 0; if (this.closed) return; if (typeof resp === "number" && resp < 0) { if (resp === -3) { if (retryno < MAX_RETRIES) { return setTimeout(() => { this.pull(sn, retryno + 1); }, Math.pow(2, retryno + 1) * 1e3); } } this.emit("error", Error(ERRORS[-resp])); } if (resp.w) { this.wait(resp.w, sn); } else if (resp.sn) { if (resp.a) { this.emit("sc", resp.a); } this.pull(resp.sn); } }).catch(ignoreAbortError).catch((error) => { this.emit("error", error); }); } wait(url, sn) { const controller = new abort_controller_polyfill_default(); this.sn = controller; this.fetch(url, { method: "POST", signal: controller.signal }).catch(() => { }).then(() => { this.sn = void 0; this.pull(sn); }); } close() { if (this.sn) this.sn.abort(); this.closed = true; } static getGlobalApi() { if (!_API.globalApi) { _API.globalApi = new _API(); } return _API.globalApi; } static handleForceHttps(userOpt) { if (userOpt != null) return userOpt; if (globalThis.Deno) return false; return true; } static getShouldAvoidUA() { let headersErr; try { globalThis.Headers(); } catch (err) { headersErr = err.message; } return !((globalThis.fetch + "").length === 38 && headersErr.includes("Headers")); } }; function handleApiResponse(response) { if (response.statusText === "Server Too Busy") { return -3; } if (!response.ok) { throw Error(`Server returned error: ${response.statusText}`); } return response.json(); } function ignoreAbortError(error) { if (error.name !== "AbortError") throw error; } var api_default = API; // lib/storage.mjs var import_events3 = __toESM(require_events(), 1); // lib/mutable-file.mjs init_process_shim(); // lib/file.mjs init_process_shim(); var import_events2 = __toESM(require_events(), 1); var import_stream3 = __toESM(require_ours(), 1); var import_stream_skip = __toESM(require_stream_skip(), 1); var File = class _File extends import_events2.EventEmitter { constructor(opt) { super(); this.checkConstructorArgument(opt.downloadId); this.checkConstructorArgument(opt.key); this.checkConstructorArgument(opt.loadedFile); this.downloadId = opt.downloadId; this.key = opt.key ? formatKey(opt.key) : null; this.type = opt.directory ? 1 : 0; this.directory = !!opt.directory; this.api = opt.api || api_default.getGlobalApi(); if (!(this.api instanceof api_default)) { throw Error("api must be a instance of API"); } this.loadedFile = opt.loadedFile; } get createdAt() { if (typeof this.timestamp !== "undefined") { return this.timestamp * 1e3; } } checkConstructorArgument(value) { if (typeof value === "string" && !/^[\w-]+$/.test(value)) { throw Error(`Invalid argument: "${value}"`); } } loadMetadata(aes, opt) { this.size = opt.s || 0; this.timestamp = opt.ts || 0; this.type = opt.t; this.directory = !!opt.t; this.owner = opt.u; this.name = null; if (!aes || !opt.k) return; const parts = opt.k.split(":"); this.key = formatKey(parts[parts.length - 1]); aes.decryptECB(this.key); if (opt.a) { this.decryptAttributes(opt.a); } } decryptAttributes(at) { if (!this.key) return this; at = d64(at); getCipher(this.key).decryptCBC(at); const unpackedAttribtes = _File.unpackAttributes(at); if (unpackedAttribtes) { this.parseAttributes(unpackedAttribtes); } } parseAttributes(at) { this.attributes = at; this.name = at.n; this.label = LABEL_NAMES[at.lbl || 0]; this.favorited = !!at.fav; } loadAttributes(originalCb) { const [cb, promise] = createPromise(originalCb); const req = this.directory ? { a: "f", c: 1, ca: 1, r: 1, _querystring: { n: this.downloadId } } : { a: "g", p: this.downloadId }; this.api.request(req, (err, response) => { if (err) return cb(err); if (this.directory) { const filesMap = /* @__PURE__ */ Object.create(null); const nodes = response.f; const folder = nodes.find( (node) => node.k && // the root folder is the one which "n" equals the first part of "k" node.h === node.k.split(":")[0] ); const aes = this.key ? new AES2(this.key) : null; this.nodeId = folder.h; this.timestamp = folder.ts; filesMap[folder.h] = this; for (const file of nodes) { if (file === folder) continue; const fileObj = new _File(file, this.storage); fileObj.loadMetadata(aes, file); fileObj.downloadId = [this.downloadId, file.h]; filesMap[file.h] = fileObj; } for (const file of nodes) { const parent = filesMap[file.p]; if (parent) { const fileObj = filesMap[file.h]; if (!parent.children) parent.children = []; parent.children.push(fileObj); fileObj.parent = parent; } } this.loadMetadata(aes, folder); if (this.key && !this.attributes) { return cb(Error("Attributes could not be decrypted with provided key.")); } if (this.loadedFile) { const loadedNode = filesMap[this.loadedFile]; if (typeof loadedNode === "undefined") { cb(Error("Node (file or folder) not found in folder")); } else { cb(null, loadedNode); } } else { cb(null, this); } } else { this.size = response.s; this.decryptAttributes(response.at); if (this.key && !this.attributes) { return cb(Error("Attributes could not be decrypted with provided key.")); } cb(null, this); } }); return promise; } download(options, cb) { if (typeof options === "function") { cb = options; options = {}; } if (!options) options = {}; const start = options.start || 0; const apiStart = options.returnCiphertext ? start : start - start % 16; let end = options.end || null; const maxConnections = options.maxConnections || 4; const initialChunkSize = options.initialChunkSize || 128 * 1024; const chunkSizeIncrement = options.chunkSizeIncrement || 128 * 1024; const maxChunkSize = options.maxChunkSize || 1024 * 1024; const ssl = api_default.handleForceHttps(options.forceHttps) ? 2 : 0; const req = { a: "g", g: 1, ssl }; if (this.nodeId) { req.n = this.nodeId; } else if (Array.isArray(this.downloadId)) { req._querystring = { n: this.downloadId[0] }; req.n = this.downloadId[1]; } else { req.p = this.downloadId; } if (this.directory) throw Error("Can't download: folder download isn't supported"); if (!this.key && !options.returnCiphertext) throw Error("Can't download: key isn't defined"); const decryptStream = this.key && !options.returnCiphertext ? megaDecrypt(this.key, { start: apiStart, disableVerification: apiStart !== 0 || end !== null }) : new import_stream3.PassThrough(); const stream = apiStart === start ? decryptStream : decryptStream.pipe(new import_stream_skip.default({ skip: start - apiStart })); const handleRetries = options.handleRetries || _File.defaultHandleRetries; this.api.request(req, (err, response) => { if (err) return stream.emit("error", err); if (typeof response.g !== "string" || response.g.substr(0, 4) !== "http") { return stream.emit("error", Error("MEGA servers returned an invalid response, maybe caused by rate limit")); } if (response.s === 0) return stream.end(); if (!end) end = response.s - 1; if (start > end) return stream.emit("error", Error("You can't download past the end of the file.")); function handleMegaErrors(resp) { if (resp.status === 200) return; if (resp.status === 509) { const timeLimit = resp.headers.get("x-mega-time-left"); const error = Error("Bandwidth limit reached: " + timeLimit + " seconds until it resets"); error.timeLimit = timeLimit; stream.emit("error", error); return; } stream.emit("error", Error("MEGA returned a " + resp.status + " status code")); } function handleError(err2) { stream.emit("error", err2); } let i = 0; stream.on("data", (d) => { i += d.length; stream.emit("progress", { bytesLoaded: i, bytesTotal: response.s }); }); if (maxConnections === 1) { const controller = new abort_controller_polyfill_default(); stream.on("close", () => { controller.abort(); }); this.api.fetch(response.g + "/" + apiStart + "-" + end, { signal: controller.signal }).then((response2) => { handleMegaErrors(response2); const body = response2.body; if (!body) { throw Error("Missing response body"); } else if (body.pipe) { response2.body.pipe(decryptStream); } else if (body.getReader) { const reader = body.getReader(); const read = ({ done, value }) => { if (done) { decryptStream.end(); } else { decryptStream.write(value); return reader.read().then(read); } }; reader.read().then(read); } else { throw Error("Single connection streaming not supported by fetch"); } }).catch(handleError); return; } const chunkBuffer = {}; let lastStartedChunk = 0; let nextChunk = 0; let stopped = false; let currentOffset = apiStart; let chunkSize = initialChunkSize; stream.on("error", () => { stopped = true; }); stream.on("close", () => { stopped = true; }); const getChunk = () => { if (currentOffset > end) { stopped = true; if (lastStartedChunk === nextChunk) { decryptStream.end(); } return; } const chunkOffset = currentOffset; const chunkMax = Math.min(end, chunkOffset + chunkSize - 1); const chunkNumber = lastStartedChunk++; let tries = 0; const tryFetchChunk = () => { tries++; this.api.fetch(response.g + "/" + chunkOffset + "-" + chunkMax).then((response2) => { handleMegaErrors(response2); return response2.arrayBuffer(); }).then((data) => { const dataBuffer = import_buffer.Buffer.from(data); chunkBuffer[chunkNumber] = dataBuffer; if (nextChunk === chunkNumber) { handleStreamWrite(); } }, (error) => { handleRetries(tries, error, (error2) => { if (error2) { handleError(error2); } else { tryFetchChunk(); } }); }); }; tryFetchChunk(); currentOffset = chunkMax + 1; if (chunkSize < maxChunkSize) { chunkSize = chunkSize + chunkSizeIncrement; } }; const handleStreamWrite = () => { let shouldWaitDrain; while (true) { const bufferChunk = chunkBuffer[nextChunk]; if (!bufferChunk) break; shouldWaitDrain = !decryptStream.write(bufferChunk); delete chunkBuffer[nextChunk]; nextChunk++; if (shouldWaitDrain) break; } if (stopped && lastStartedChunk === nextChunk) { decryptStream.end(); } if (shouldWaitDrain) { decryptStream.once("drain", handleStreamWrite); } else { getChunk(); } }; for (let i2 = 0; i2 < maxConnections; i2++) { getChunk(); } }); if (cb) streamToCb(stream, cb); return stream; } // Just wraps the download function as it can't adapted to // use promises without causing performance issues. downloadBuffer(options, originalCb) { const [cb, promise] = createPromise(originalCb); this.download(options, cb); return promise; } link(options, originalCb) { if (arguments.length === 1 && typeof options === "function") { originalCb = options; options = { noKey: false }; } const [cb, promise] = createPromise(originalCb); if (typeof options === "boolean") { options = { noKey: options }; } let url = `https://mega.nz/${this.directory ? "folder" : "file"}/${this.downloadId}`; if (!options.noKey && this.key) url += `#${e64(this.key)}`; if (!options.noKey && this.loadedFile) { url += `/file/${this.loadedFile}`; } cb(null, url); return promise; } find(query, deep) { if (!this.children) throw Error("You can only call .find on directories"); if (typeof query === "string") { const queryString = query; query = (file) => file.name === queryString; } else if (Array.isArray(query)) { const queryArray = query; query = (file) => queryArray.includes(file.name); } if (typeof query !== "function") { throw Error("Query must be a file matching function, an array of valid file names or a string with a file name"); } return this.children.reduce((result, entry) => { if (result) return result; if (entry.children) { return deep ? entry.find(query, deep) : null; } return query(entry) ? entry : null; }, null); } filter(query, deep) { if (!this.children) throw Error("You can only call .filter on directories"); if (typeof query === "string") { const queryString = query; query = (file) => file.name === queryString; } else if (Array.isArray(query)) { const queryArray = query; query = (file) => queryArray.includes(file.name); } if (typeof query !== "function") { throw Error("Query must be a file matching function, an array of valid file names or a string with a file name"); } return this.children.reduce((results, entry) => { if (entry.children) { if (deep) return results.concat(entry.find(query, deep)); return results; } return query(entry) ? results.concat(entry) : results; }, []); } navigate(query, deep) { if (!this.children) throw Error("You can only call .navigate on directories"); if (typeof query === "string") { query = query.split("/"); } else if (!Array.isArray(query)) { throw Error("Query must be an array or a string"); } return query.reduce((node, name) => { return node && node.children && node.children.find((e) => e.name === name); }, this); } static fromURL(opt, extraOpt = {}) { if (typeof opt === "object") { return new _File(opt); } const url = new URL(opt); if (url.hostname !== "mega.nz" && url.hostname !== "mega.co.nz") throw Error("Invalid URL: wrong hostname"); if (!url.hash) throw Error("Invalid URL: no hash"); if (url.pathname.match(/\/(file|folder)\//) !== null) { const split = url.hash.substr(1).split("/file/"); const fileHandler = url.pathname.substring( url.pathname.lastIndexOf("/") + 1, url.pathname.length + 1 ); const fileKey = split[0]; if (fileHandler && !fileKey || !fileHandler && fileKey) throw Error("Invalid URL: too few arguments"); return new _File({ downloadId: fileHandler, key: fileKey, directory: url.pathname.indexOf("/folder/") >= 0, loadedFile: split[1], ...extraOpt }); } else { const split = url.hash.split("!"); if (split[0] !== "#" && split[0] !== "#F") throw Error("Invalid URL: format not recognized"); if (split.length <= 1) throw Error("Invalid URL: too few arguments"); if (split.length >= (split[0] === "#" ? 4 : 5)) throw Error("Invalid URL: too many arguments"); return new _File({ downloadId: split[1], key: split[2], directory: split[0] === "#F", loadedFile: split[3], ...extraOpt }); } } static unpackAttributes(at) { let end = 0; while (end < at.length && at.readUInt8(end)) end++; at = at.slice(0, end).toString(); if (at.substr(0, 6) !== 'MEGA{"') return; try { return JSON.parse(at.substr(4)); } catch (e) { } } static defaultHandleRetries(tries, error, cb) { if (tries > 8) { cb(error); } else { setTimeout(cb, 1e3 * Math.pow(2, tries)); } } }; var LABEL_NAMES = ["", "red", "orange", "yellow", "green", "blue", "purple", "grey"]; var file_default = File; // lib/mutable-file.mjs var import_secure_random2 = __toESM(require_secure_random(), 1); var import_stream4 = __toESM(require_ours(), 1); var KEY_CACHE = {}; var MutableFile = class _MutableFile extends file_default { constructor(opt, storage) { super(opt); this.storage = storage; this.api = storage.api; this.nodeId = opt.h; this.timestamp = opt.ts; this.type = opt.t; this.directory = !!this.type; if (opt.k) { const idKeyPairs = opt.k.split("/"); let aes = storage.aes; for (const idKeyPair of idKeyPairs) { const id = idKeyPair.split(":")[0]; if (id === storage.user) { opt.k = idKeyPair; break; } const shareKey = storage.shareKeys[id]; if (shareKey) { opt.k = idKeyPair; aes = KEY_CACHE[id]; if (!aes) { aes = KEY_CACHE[id] = new AES2(shareKey); } break; } } this.loadMetadata(aes, opt); } } loadAttributes() { throw Error("This is not needed for files loaded from logged in sessions"); } mkdir(opt, originalCb) { if (!this.directory) throw Error("node isn't a directory"); const [cb, promise] = createPromise(originalCb); if (typeof opt === "string") { opt = { name: opt }; } if (!opt.attributes) opt.attributes = {}; if (opt.name) opt.attributes.n = opt.name; if (!opt.attributes.n) { throw Error("file name is required"); } if (!opt.target) opt.target = this; if (!opt.key) opt.key = import_buffer.Buffer.from((0, import_secure_random2.default)(16)); if (opt.key.length !== 16) { throw Error("wrong key length, must be 128bit"); } const key = opt.key; const at = _MutableFile.packAttributes(opt.attributes); getCipher(key).encryptCBC(at); const storedKey = import_buffer.Buffer.from(key); this.storage.aes.encryptECB(storedKey); const request = { a: "p", t: opt.target.nodeId ? opt.target.nodeId : opt.target, n: [{ h: "xxxxxxxx", t: 1, a: e64(at), k: e64(storedKey) }] }; const shares = getShares(this.storage.shareKeys, this); if (shares.length > 0) { request.cr = makeCryptoRequest(this.storage, [{ nodeId: "xxxxxxxx", key }], shares); } this.api.request(request, (err, response) => { if (err) return cb(err); const file = this.storage._importFile(response.f[0]); this.storage.emit("add", file); cb(null, file); }); return promise; } upload(opt, source, originalCb) { if (!this.directory) throw Error("node is not a directory"); if (arguments.length === 2 && typeof source === "function") { [originalCb, source] = [source, null]; } const [cb, promise] = createPromise(originalCb); if (typeof opt === "string") { opt = { name: opt }; } if (!opt.attributes) opt.attributes = {}; if (opt.name) opt.attributes.n = opt.name; if (!opt.attributes.n) { throw Error("File name is required."); } if (!(typeof opt.size === "number" && opt.size >= 0) && !(source && typeof source.pipe !== "function" && typeof source.length === "number") && !opt.allowUploadBuffering) { throw Error("Specify a file size or set allowUploadBuffering to true"); } if (!opt.target) opt.target = this; let finalKey; let key = formatKey(opt.key); if (!key) key = (0, import_secure_random2.default)(24); if (!(key instanceof import_buffer.Buffer)) key = import_buffer.Buffer.from(key); const keySize = opt.uploadCiphertext ? 32 : 24; if (key.length !== keySize) { throw Error("Wrong key length. Key must be 192bit"); } if (opt.uploadCiphertext) { finalKey = key; key = unmergeKeyMac(key).slice(0, 24); } opt.key = key; const hashes = []; const checkCallbacks = (err, type, hash, encrypter) => { if (err) return returnError(err); if (!hash || hash.length === 0) { returnError(Error("Server returned a invalid response while uploading")); return; } const errorCheck = Number(hash.toString()); if (errorCheck < 0) { returnError(Error("Server returned error " + errorCheck + " while uploading")); return; } hashes[type] = hash; if (type === 0 && !finalKey) finalKey = encrypter.key; if (opt.thumbnailImage && !hashes[1]) return; if (opt.previewImage && !hashes[2]) return; if (!hashes[0]) return; const at = _MutableFile.packAttributes(opt.attributes); getCipher(finalKey).encryptCBC(at); const storedKey = import_buffer.Buffer.from(finalKey); this.storage.aes.encryptECB(storedKey); const fileObject = { h: e64(hashes[0]), t: 0, a: e64(at), k: e64(storedKey) }; if (hashes.length !== 1) { fileObject.fa = hashes.slice(1).map((hash2, index) => { return index + "*" + e64(hash2); }).filter((e) => e).join("/"); } const request = { a: "p", t: opt.target.nodeId ? opt.target.nodeId : opt.target, n: [fileObject] }; const shares = getShares(this.storage.shareKeys, this); if (shares.length > 0) { request.cr = makeCryptoRequest(this.storage, [{ nodeId: fileObject.h, key: finalKey }], shares); } this.api.request(request, (err2, response) => { if (err2) return returnError(err2); const file = this.storage._importFile(response.f[0]); this.storage.emit("add", file); stream.emit("complete", file); if (cb) cb(null, file); }); }; if (opt.thumbnailImage) { this._uploadAttribute(opt, opt.thumbnailImage, 1, checkCallbacks); } if (opt.previewImage) { this._uploadAttribute(opt, opt.previewImage, 2, checkCallbacks); } const stream = this._upload(opt, source, 0, checkCallbacks); function returnError(e) { if (stream.listenerCount("error")) { stream.emit("error", e); } else { cb(e); } } stream.complete = promise; return stream; } _upload(opt, source, type, cb) { const encrypter = opt.uploadCiphertext ? new import_stream4.PassThrough() : megaEncrypt(opt.key); let stream = encrypter; let size = opt.size; if (source && typeof source.pipe !== "function") { size = source.length; stream.end(source); } if (size != null) { if (size === 0) encrypter.end(); this._uploadWithSize(stream, size, encrypter, type, opt, cb); } else { stream = detectSize(stream, (size2) => { this._uploadWithSize(stream, size2, encrypter, type, opt, cb); }); } if (source && typeof source.pipe === "function") { source.pipe(stream); } return stream; } _uploadAttribute(opt, source, type, cb) { const gotBuffer = (err, buffer) => { if (err) return cb(err); const len = buffer.length; const rest = Math.ceil(len / 16) * 16 - len; if (rest !== 0) { buffer = import_buffer.Buffer.concat([buffer, import_buffer.Buffer.alloc(rest)]); } const encrypter = opt.handle ? getCipher(opt.key) : new AES2(opt.key.slice(0, 16)); encrypter.encryptCBC(buffer); const stream = new import_stream4.PassThrough(); stream.end(buffer); this._uploadWithSize(stream, buffer.length, stream, type, opt, cb); }; if (source instanceof import_buffer.Buffer) { gotBuffer(null, source); return; } streamToCb(source, gotBuffer); } _uploadWithSize(stream, size, source, type, opt, cb) { const ssl = api_default.handleForceHttps(opt.forceHttps) ? 2 : 0; const getUrlRequest = type === 0 ? { a: "u", ssl, s: size, ms: 0, r: 0, e: 0, v: 2 } : { a: "ufa", ssl, s: size }; if (opt.handle) { getUrlRequest.h = opt.handle; } const initialChunkSize = type === 0 ? opt.initialChunkSize || 128 * 1024 : size; const chunkSizeIncrement = opt.chunkSizeIncrement || 128 * 1024; const maxChunkSize = opt.maxChunkSize || 1024 * 1024; const maxConnections = opt.maxConnections || 4; const handleRetries = opt.handleRetries || file_default.defaultHandleRetries; let currentChunkSize = initialChunkSize; let activeConnections = 0; let isReading = false; let position = 0; let remainingBuffer; let uploadBuffer, uploadURL; let chunkSize, chunkPos; let bytesUploaded = 0; const handleChunk = () => { chunkSize = Math.min(currentChunkSize, size - position); uploadBuffer = import_buffer.Buffer.alloc(chunkSize); activeConnections++; if (currentChunkSize < maxChunkSize) { currentChunkSize += chunkSizeIncrement; } chunkPos = 0; if (remainingBuffer) { remainingBuffer.copy(uploadBuffer); chunkPos = Math.min(remainingBuffer.length, chunkSize); remainingBuffer = remainingBuffer.length > chunkSize ? remainingBuffer.slice(chunkSize) : null; } if (chunkPos === chunkSize) { sendChunk(); } else { isReading = true; handleData(); } }; const sendChunk = () => { const chunkPosition = position; const chunkBuffer = uploadBuffer; let tries = 0; const trySendChunk = () => { tries++; this.api.fetch(uploadURL + "/" + (type === 0 ? chunkPosition : type - 1), { method: "POST", body: chunkBuffer, headers: { "content-length": chunkBuffer.length } }).then((response) => { if (response.status !== 200) { throw Error("MEGA returned a " + response.status + " status code"); } return response.arrayBuffer(); }).then((hash) => { bytesUploaded += chunkBuffer.length; stream.emit("progress", { bytesLoaded: sizeCheck, bytesUploaded, bytesTotal: size }); const hashBuffer = import_buffer.Buffer.from(hash); if (hashBuffer.length > 0) { source.end(); process.nextTick(() => { cb(null, type, hashBuffer, source); }); } else if (position < size && !isReading) { handleChunk(); } }, (error) => { handleRetries(tries, error, (error2) => { if (error2) { stream.emit("error", error2); } else { trySendChunk(); } }); }); }; trySendChunk(); uploadBuffer = null; position += chunkSize; if (position < size && !isReading && activeConnections < maxConnections) { handleChunk(); } }; let sizeCheck = 0; const handleData = () => { while (true) { const data = source.read(); if (data === null) { source.once("readable", handleData); break; } sizeCheck += data.length; data.copy(uploadBuffer, chunkPos); chunkPos += data.length; if (chunkPos >= chunkSize) { isReading = false; remainingBuffer = data.slice(data.length - (chunkPos - chunkSize)); sendChunk(); break; } } }; source.on("end", () => { if (size && sizeCheck !== size) { stream.emit("error", Error("Specified data size does not match: " + size + " !== " + sizeCheck)); } }); this.api.request(getUrlRequest, (err, resp) => { if (err) return cb(err); uploadURL = resp.p; handleChunk(); }); } uploadAttribute(type, data, originalCb) { const [cb, promise] = createPromise(originalCb); if (typeof type === "string") { type = ["thumbnail", "preview"].indexOf(type); } if (type !== 0 && type !== 1) throw Error("Invalid attribute type"); this._uploadAttribute({ key: this.key, handle: this.nodeId }, data, type + 1, (err, streamType, hash, encrypter) => { if (err) return cb(err); const request = { a: "pfa", n: this.nodeId, fa: type + "*" + e64(hash) }; this.api.request(request, (err2, response) => { if (err2) return cb(err2); cb(null, this); }); }); return promise; } delete(permanent, cb) { if (typeof permanent === "function") { cb = permanent; permanent = void 0; } if (typeof permanent === "undefined") { permanent = this.parent === this.storage.trash; } if (permanent) return this.api.request({ a: "d", n: this.nodeId }, cb); return this.moveTo(this.storage.trash, cb); } moveTo(target, cb) { if (typeof target === "string") { target = this.storage.files[target]; } if (!(target instanceof file_default)) { throw Error("target must be a folder or a nodeId"); } const request = { a: "m", n: this.nodeId, t: target.nodeId }; const shares = getShares(this.storage.shareKeys, target); if (shares.length > 0) { request.cr = makeCryptoRequest(this.storage, [this], shares); } return this.api.request(request, cb); } setAttributes(attributes, originalCb) { const [cb, promise] = createPromise(originalCb); Object.assign(this.attributes, attributes); const newAttributes = _MutableFile.packAttributes(this.attributes); getCipher(this.key).encryptCBC(newAttributes); this.api.request({ a: "a", n: this.nodeId, at: e64(newAttributes) }, (error) => { this.parseAttributes(this.attributes); cb(error); }); return promise; } rename(filename, cb) { return this.setAttributes({ n: filename }, cb); } setLabel(label, cb) { if (typeof label === "string") label = LABEL_NAMES.indexOf(label); if (typeof label !== "number" || Math.floor(label) !== label || label < 0 || label > 7) { throw Error("label must be a integer between 0 and 7 or a valid label name"); } return this.setAttributes({ lbl: label }, cb); } setFavorite(isFavorite, cb) { return this.setAttributes({ fav: isFavorite ? 1 : 0 }, cb); } link(options, originalCb) { if (arguments.length === 1 && typeof options === "function") { originalCb = options; options = { noKey: false }; } if (typeof options === "boolean") { options = { noKey: options }; } if (!options) options = {}; const folderKey = options.__folderKey; if (this.directory && !folderKey) { return this.shareFolder(options, originalCb); } const [cb, promise] = createPromise(originalCb); this.api.request({ a: "l", n: this.nodeId }, (err, id) => { if (err) return cb(err); let url = `https://mega.nz/${folderKey ? "folder" : "file"}/${id}`; if (!options.noKey && this.key) url += `#${e64(folderKey || this.key)}`; cb(null, url); }); return promise; } shareFolder(options, originalCb) { if (!this.directory) throw Error("node isn't a folder"); const handler = this.nodeId; const storedShareKey = this.storage.shareKeys[handler]; if (storedShareKey) { return this.link(Object.assign({ __folderKey: storedShareKey }, options), originalCb); } let shareKey = formatKey(options.key); if (!shareKey) { shareKey = (0, import_secure_random2.default)(16); } if (!(shareKey instanceof import_buffer.Buffer)) { shareKey = import_buffer.Buffer.from(shareKey); } const [cb, promise] = createPromise(originalCb); if (shareKey.length !== 16) { cb(Error("share key must be 16 byte / 22 characters")); return promise; } this.storage.shareKeys[handler] = shareKey; const authKey = import_buffer.Buffer.from(handler + handler); this.storage.aes.encryptECB(authKey); const request = { a: "s2", n: handler, s: [{ u: "EXP", r: 0 }], ok: e64(this.storage.aes.encryptECB(import_buffer.Buffer.from(shareKey))), ha: e64(authKey), cr: makeCryptoRequest(this.storage, this) }; this.api.request(request, (err) => { if (err) return cb(err); this.link(Object.assign({ __folderKey: shareKey }, options), cb); }); return promise; } unshare(cb) { if (this.directory) return this.unshareFolder(cb); return this.api.request({ a: "l", n: this.nodeId, d: 1 }, cb); } unshareFolder(cb) { if (!this.directory) throw Error("node isn't a folder"); delete this.storage.shareKeys[this.nodeId]; return this.api.request({ a: "s2", n: this.nodeId, s: [{ u: "EXP", r: "" }] }, cb); } importFile(sharedFile, originalCb) { const [cb, promise] = createPromise(originalCb); if (!this.directory) throw Error("importFile can only be called on directories"); if (typeof sharedFile === "string") sharedFile = file_default.fromURL(sharedFile); if (!(sharedFile instanceof file_default)) throw Error("First argument of importFile should be a File or a URL string"); if (!sharedFile.key) { cb(Error("Can't import files without encryption keys")); return promise; } const afterGotAttributes = (err, file) => { if (err) return cb(err); const attributes = _MutableFile.packAttributes(file.attributes); getCipher(file.key).encryptCBC(attributes); const downloadId = Array.isArray(file.downloadId) ? file.downloadId[1] : file.downloadId; const request = { a: "p", t: this.nodeId, n: [{ ph: downloadId, t: 0, a: e64(attributes), k: e64(this.storage.aes.encryptECB(file.key)) }] }; this.api.request(request, (err2, response) => { if (err2) return cb(err2); const file2 = this.storage._importFile(response.f[0]); this.storage.emit("add", file2); cb(null, file2); }); }; if (sharedFile.attributes) { afterGotAttributes(null, sharedFile); } else { sharedFile.loadAttributes(afterGotAttributes); } return promise; } static packAttributes(attributes) { let at = JSON.stringify(attributes); at = import_buffer.Buffer.from(`MEGA${at}`); const ret = import_buffer.Buffer.alloc(Math.ceil(at.length / 16) * 16); at.copy(ret); return ret; } }; function makeCryptoRequest(storage, sources, shares) { const shareKeys = storage.shareKeys; if (!Array.isArray(sources)) { sources = selfAndChildren(sources); } if (!shares) { shares = sources.map((source) => getShares(shareKeys, source)).reduce((arr, el) => arr.concat(el)).filter((el, index, arr) => index === arr.indexOf(el)); } const cryptoRequest = [ shares, sources.map((node) => node.nodeId), [] ]; for (let i = shares.length; i--; ) { const aes = new AES2(shareKeys[shares[i]]); for (let j = sources.length; j--; ) { const fileKey = import_buffer.Buffer.from(sources[j].key); if (fileKey && (fileKey.length === 32 || fileKey.length === 16)) { cryptoRequest[2].push(i, j, e64(aes.encryptECB(fileKey))); } } } return cryptoRequest; } function selfAndChildren(node) { return [node].concat((node.children || []).map(selfAndChildren).reduce((arr, el) => arr.concat(el), [])); } function getShares(shareKeys, node) { const handle = node.nodeId; const parent = node.parent; const shares = []; if (shareKeys[handle]) { shares.push(handle); } return parent ? shares.concat(getShares(shareKeys, parent)) : shares; } var mutable_file_default = MutableFile; // lib/storage.mjs var Storage = class _Storage extends import_events3.EventEmitter { constructor(options, originalCb) { super(); if (arguments.length === 1 && typeof options === "function") { originalCb = options; options = {}; } const [cb, promise] = createPromise(originalCb); this.ready = promise; options.keepalive = options.keepalive === void 0 ? true : !!options.keepalive; options.autoload = options.autoload === void 0 ? true : !!options.autoload; options.autologin = options.autologin === void 0 ? true : !!options.autologin; this.api = new api_default(options.keepalive, options); this.files = {}; this.options = options; this.status = "closed"; if (options.autologin) { this.login(cb); } else { process.nextTick(() => { cb(null, this); }); } } login(originalCb) { const [cb, promise] = createPromise(originalCb); if (typeof this.options.email !== "string") { process.nextTick(() => { cb(Error("starting a session without credentials isn't supported")); }); return promise; } const ready = () => { this.status = "ready"; cb(null, this); this.emit("ready", this); }; const loadUser = (cb2) => { this.api.request({ a: "ug" }, (err, response) => { if (err) return cb2(err); this.name = response.name; this.user = response.u; if (this.options.autoload) { this.reload(true, (err2) => { if (err2) return cb2(err2); ready(); }); } else { ready(); } }); }; this.email = this.options.email.toLowerCase(); const handleV1Account = (cb2) => { const pw = prepareKey(import_buffer.Buffer.from(this.options.password)); const aes = new AES2(pw); const uh = e64(aes.stringhash(import_buffer.Buffer.from(this.email))); const request = { a: "us", user: this.email, uh }; finishLogin(request, aes, cb2); }; const handleV2Account = (info, cb2) => { prepareKeyV2(import_buffer.Buffer.from(this.options.password), info, (err, result) => { if (err) return cb2(err); const aes = new AES2(result.slice(0, 16)); const uh = e64(result.slice(16)); const request = { a: "us", user: this.email, uh }; finishLogin(request, aes, cb2); }); }; const finishLogin = (request, aes, cb2) => { delete this.options.password; if (this.options.secondFactorCode) { request.mfa = this.options.secondFactorCode.toString(); } this.api.request(request, (err, response) => { if (err) return cb2(err); this.key = formatKey(response.k); aes.decryptECB(this.key); this.aes = new AES2(this.key); const t = formatKey(response.csid); const privk = this.aes.decryptECB(formatKey(response.privk)); const rsaPrivk = cryptoDecodePrivKey(privk); if (!rsaPrivk) throw Error("invalid credentials"); const sid = e64(cryptoRsaDecrypt(t, rsaPrivk).slice(0, 43)); this.api.sid = this.sid = sid; this.RSAPrivateKey = rsaPrivk; loadUser(cb2); }); }; this.api.request({ a: "us0", user: this.email }, (err, response) => { if (err) return cb(err); if (response.v === 1) return handleV1Account(cb); if (response.v === 2) return handleV2Account(response, cb); cb(Error("Account version not supported")); }); this.status = "connecting"; return promise; } reload(force, originalCb) { if (typeof force === "function") [force, originalCb] = [originalCb, force]; const [cb, promise] = createPromise(originalCb); if (this.status === "connecting" && !force) { this.once("ready", () => { this.reload(force, cb); }); return promise; } this.mounts = []; this.api.request({ a: "f", c: 1 }, (err, response) => { if (err) return cb(err); this.shareKeys = response.ok.reduce((shares, share) => { const handler = share.h; const auth = this.aes.encryptECB(import_buffer.Buffer.from(handler + handler)); if (constantTimeCompare(formatKey(share.ha), auth)) { shares[handler] = this.aes.decryptECB(formatKey(share.k)); } return shares; }, {}); for (let file of response.f) { file = this._importFile(file); if (response.ph !== void 0) { file.shareId = response.ph.find((item) => item.h === file.nodeId)?.ph; file.shared = !!file.shareId; if (file.shared) { file.shareURL = `https://mega.nz/${file.directory ? "folder" : "file"}/${file.shareId}`; const key = file.directory ? this.shareKeys[file.nodeId] : file.key; if (key) file.shareURL += "#" + e64(key); } } } cb(null, this.mounts); }); this.api.on("sc", (arr) => { const deleted = {}; arr.forEach((o) => { if (o.a === "u") { const file = this.files[o.n]; if (file) { file.timestamp = o.ts; file.decryptAttributes(o.at); file.emit("update"); this.emit("update", file); } } else if (o.a === "d") { deleted[o.n] = true; } else if (o.a === "t") { o.t.f.forEach((f) => { const file = this.files[f.h]; if (file) { delete deleted[f.h]; const oldparent = file.parent; if (oldparent.nodeId === f.p) return; oldparent.children.splice(oldparent.children.indexOf(file), 1); file.parent = this.files[f.p]; if (!file.parent.children) file.parent.children = []; file.parent.children.push(file); file.emit("move", oldparent); this.emit("move", file, oldparent); } else { this.emit("add", this._importFile(f)); } }); } }); Object.keys(deleted).forEach((n) => { const file = this.files[n]; const parent = file.parent; parent.children.splice(parent.children.indexOf(file), 1); this.emit("delete", file); file.emit("delete"); }); }); return promise; } _importFile(f) { if (!this.files[f.h]) { const file = this.files[f.h] = new mutable_file_default(f, this); if (f.t === NODE_TYPE_DRIVE) { this.root = file; file.name = "Cloud Drive"; } if (f.t === NODE_TYPE_RUBBISH_BIN) { this.trash = file; file.name = "Rubbish Bin"; } if (f.t === NODE_TYPE_INBOX) { this.inbox = file; file.name = "Inbox"; } if (f.t > 1) { this.mounts.push(file); } if (f.p) { const parent = this.files[f.p]; if (parent) { if (!parent.children) parent.children = []; parent.children.push(file); file.parent = parent; } } } return this.files[f.h]; } // alternative to this.root.mkdir mkdir(opt, cb) { if (this.status !== "ready") { throw Error("storage is not ready"); } return this.root.mkdir(opt, cb); } // alternative to this.root.upload upload(opt, buffer, cb) { if (this.status !== "ready") { throw Error("storage is not ready"); } return this.root.upload(opt, buffer, cb); } // alternative to this.root.find find(query, deep) { if (this.status !== "ready") { throw Error("storage is not ready"); } return this.root.find(query, deep); } // alternative to this.root.filter filter(query, deep) { if (this.status !== "ready") { throw Error("storage is not ready"); } return this.root.filter(query, deep); } // alternative to this.root.navigate navigate(query, deep) { if (this.status !== "ready") { throw Error("storage is not ready"); } return this.root.navigate(query, deep); } close(cb) { this.status = "closed"; this.api.close(); return this.api.request({ a: "sml" }, cb); } getAccountInfo(originalCb) { const [cb, promise] = createPromise(originalCb); this.api.request({ a: "uq", strg: 1, xfer: 1, pro: 1 }, (err, response) => { if (err) cb(err); const account = {}; account.type = response.utype; account.spaceUsed = response.cstrg; account.spaceTotal = response.mstrg; account.downloadBandwidthTotal = response.mxfer || Math.pow(1024, 5) * 10; account.downloadBandwidthUsed = response.caxfer || 0; account.sharedBandwidthUsed = response.csxfer || 0; account.sharedBandwidthLimit = response.srvratio; cb(null, account); }); return promise; } toJSON() { return { key: e64(this.key), sid: this.sid, name: this.name, user: this.user, options: this.options }; } static fromJSON(json) { const storage = new _Storage(Object.assign(json.options, { autoload: false, autologin: false })); storage.key = d64(json.key); storage.aes = new AES2(storage.key); storage.api.sid = storage.sid = json.sid; storage.name = json.name; storage.user = json.user; return storage; } }; var NODE_TYPE_DRIVE = 2; var NODE_TYPE_INBOX = 3; var NODE_TYPE_RUBBISH_BIN = 4; var storage_default = Storage; // lib/mega.mjs var fileFromURL = file_default.fromURL; export { api_default as API, file_default as File, mutable_file_default as MutableFile, storage_default as Storage, megaDecrypt as decrypt, megaEncrypt as encrypt, fileFromURL as file, megaVerify as verify }; /*! Bundled license information: ieee754/index.js: (*! ieee754. BSD-3-Clause License. Feross Aboukhadijeh <https://feross.org/opensource> *) buffer/index.js: (*! * The buffer module from node.js, for the browser. * * @author Feross Aboukhadijeh <https://feross.org> * @license MIT *) safe-buffer/index.js: (*! safe-buffer. MIT License. Feross Aboukhadijeh <https://feross.org/opensource> *) */
Copyright ©2k19 -
Hexid
|
Tex7ure