grpc-libp2p-client 0.0.22 → 0.0.23

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -6,6 +6,7 @@ const FRAME_TYPES = {
6
6
  RST_STREAM: 0x3, // 终止流
7
7
  SETTINGS: 0x4, // 设置连接参数
8
8
  PING: 0x6, // 测量RTT和活性检查
9
+ GOAWAY: 0x7, // 优雅地关闭连接
9
10
  WINDOW_UPDATE: 0x8};
10
11
  const FRAME_FLAGS = {
11
12
  ACK: 0x1,
@@ -1515,7 +1516,7 @@ function _createPayload(settings) {
1515
1516
  }
1516
1517
 
1517
1518
  class HTTP2Parser {
1518
- constructor(writer) {
1519
+ constructor(writer, options) {
1519
1520
  this.buffer = new Uint8Array(0);
1520
1521
  this.settingsAckReceived = false;
1521
1522
  this.peerSettingsReceived = false;
@@ -1533,6 +1534,7 @@ class HTTP2Parser {
1533
1534
  // 结束标志
1534
1535
  this.endFlag = false;
1535
1536
  this.writer = writer;
1537
+ this.compatibilityMode = options?.compatibilityMode ?? false;
1536
1538
  }
1537
1539
  // 持续处理流数据
1538
1540
  async processStream(stream) {
@@ -1574,7 +1576,7 @@ class HTTP2Parser {
1574
1576
  throw error;
1575
1577
  }
1576
1578
  finally {
1577
- if (!this.endFlag) {
1579
+ if (!this.compatibilityMode && !this.endFlag) {
1578
1580
  this.endFlag = true;
1579
1581
  try {
1580
1582
  this.onEnd?.();
@@ -1654,6 +1656,8 @@ class HTTP2Parser {
1654
1656
  }
1655
1657
  // 非标准兜底:在对端未及时发送 WINDOW_UPDATE 时,手动回填窗口额度以避免阻塞
1656
1658
  unsafeForceExtendSendWindow(streamId, bytes) {
1659
+ if (this.compatibilityMode)
1660
+ return;
1657
1661
  if (bytes <= 0)
1658
1662
  return;
1659
1663
  this.sendConnWindow = Math.min(0x7fffffff, this.sendConnWindow + bytes);
@@ -1720,6 +1724,7 @@ class HTTP2Parser {
1720
1724
  //接收到Setting请求,进行解析
1721
1725
  const settingsPayload = frameData.slice(9);
1722
1726
  let initialWindowDelta = 0;
1727
+ let maxConcurrentStreams;
1723
1728
  for (let i = 0; i < settingsPayload.length; i += 6) {
1724
1729
  // 正确解析:2字节ID + 4字节值
1725
1730
  const id = (settingsPayload[i] << 8) | settingsPayload[i + 1];
@@ -1733,13 +1738,32 @@ class HTTP2Parser {
1733
1738
  initialWindowDelta = value - this.peerInitialStreamWindow;
1734
1739
  this.peerInitialStreamWindow = value; // 对端接收窗口(我方发送)
1735
1740
  }
1741
+ else if (id === 3) {
1742
+ // SETTINGS_MAX_CONCURRENT_STREAMS
1743
+ maxConcurrentStreams = value;
1744
+ }
1736
1745
  }
1737
- if (initialWindowDelta !== 0) {
1746
+ if (!this.compatibilityMode && initialWindowDelta !== 0) {
1738
1747
  for (const [sid, current] of this.sendStreamWindows.entries()) {
1739
1748
  const updated = Math.max(0, current + initialWindowDelta);
1740
1749
  this.sendStreamWindows.set(sid, updated);
1741
1750
  }
1742
1751
  }
1752
+ try {
1753
+ if (this.onSettingsParsed && (maxConcurrentStreams !== undefined || initialWindowDelta !== 0)) {
1754
+ const payload = {};
1755
+ if (maxConcurrentStreams !== undefined) {
1756
+ payload.maxConcurrentStreams = maxConcurrentStreams;
1757
+ }
1758
+ if (initialWindowDelta !== 0) {
1759
+ payload.initialWindowSize = this.peerInitialStreamWindow;
1760
+ }
1761
+ this.onSettingsParsed(payload);
1762
+ }
1763
+ }
1764
+ catch (err) {
1765
+ console.error('Error handling parsed SETTINGS callback:', err);
1766
+ }
1743
1767
  //发送ACK
1744
1768
  if (this.onSettings) {
1745
1769
  this.onSettings(frameHeader);
@@ -1823,6 +1847,38 @@ class HTTP2Parser {
1823
1847
  // 处理PING帧
1824
1848
  this._handlePingFrame(frameHeader, frameData);
1825
1849
  break;
1850
+ case FRAME_TYPES.GOAWAY: {
1851
+ let info;
1852
+ try {
1853
+ const body = frameData.subarray(9);
1854
+ if (body.length >= 8) {
1855
+ const view = new DataView(body.buffer, body.byteOffset, body.byteLength);
1856
+ const lastStreamId = view.getUint32(0, false) & 0x7fffffff;
1857
+ const errorCode = view.getUint32(4, false);
1858
+ info = { lastStreamId, errorCode };
1859
+ console.warn('[HTTP2] GOAWAY received', info);
1860
+ }
1861
+ else {
1862
+ console.warn('[HTTP2] GOAWAY received');
1863
+ info = {};
1864
+ }
1865
+ }
1866
+ catch { }
1867
+ try {
1868
+ this.onGoaway?.(info ?? {});
1869
+ }
1870
+ catch (err) {
1871
+ console.error('Error during GOAWAY callback:', err);
1872
+ }
1873
+ this.endFlag = true;
1874
+ try {
1875
+ this.onEnd?.();
1876
+ }
1877
+ catch (err) {
1878
+ console.error('Error during GOAWAY onEnd callback:', err);
1879
+ }
1880
+ break;
1881
+ }
1826
1882
  // case FRAME_TYPES.PUSH_PROMISE:
1827
1883
  // // 处理服务器推送承诺帧
1828
1884
  // this.handlePushPromiseFrame(frameHeader, frameData);
@@ -1 +1 @@
1
- {"version":3,"file":"parser.cjs.js","sources":["../../src/dc-http2/types.ts","../../node_modules/multiformats/dist/src/bytes.js","../../node_modules/multiformats/dist/src/vendor/base-x.js","../../node_modules/multiformats/dist/src/bases/base.js","../../node_modules/multiformats/dist/src/bases/base10.js","../../node_modules/multiformats/dist/src/bases/base16.js","../../node_modules/multiformats/dist/src/bases/base2.js","../../node_modules/multiformats/dist/src/bases/base256emoji.js","../../node_modules/multiformats/dist/src/bases/base32.js","../../node_modules/multiformats/dist/src/bases/base36.js","../../node_modules/multiformats/dist/src/bases/base58.js","../../node_modules/multiformats/dist/src/bases/base64.js","../../node_modules/multiformats/dist/src/bases/base8.js","../../node_modules/multiformats/dist/src/bases/identity.js","../../node_modules/multiformats/dist/src/codecs/json.js","../../node_modules/multiformats/dist/src/basics.js","../../node_modules/uint8arrays/dist/src/alloc.js","../../node_modules/uint8arrays/dist/src/util/bases.js","../../node_modules/uint8arrays/dist/src/to-string.js","../../src/dc-http2/hpack.ts","../../src/dc-http2/encoder.ts","../../src/dc-http2/frame.ts","../../src/dc-http2/parser.ts"],"sourcesContent":[null,"export const empty = new Uint8Array(0);\nexport function toHex(d) {\n return d.reduce((hex, byte) => hex + byte.toString(16).padStart(2, '0'), '');\n}\nexport function fromHex(hex) {\n const hexes = hex.match(/../g);\n return hexes != null ? new Uint8Array(hexes.map(b => parseInt(b, 16))) : empty;\n}\nexport function equals(aa, bb) {\n if (aa === bb)\n return true;\n if (aa.byteLength !== bb.byteLength) {\n return false;\n }\n for (let ii = 0; ii < aa.byteLength; ii++) {\n if (aa[ii] !== bb[ii]) {\n return false;\n }\n }\n return true;\n}\nexport function coerce(o) {\n if (o instanceof Uint8Array && o.constructor.name === 'Uint8Array')\n return o;\n if (o instanceof ArrayBuffer)\n return new Uint8Array(o);\n if (ArrayBuffer.isView(o)) {\n return new Uint8Array(o.buffer, o.byteOffset, o.byteLength);\n }\n throw new Error('Unknown type, must be binary type');\n}\nexport function isBinary(o) {\n return o instanceof ArrayBuffer || ArrayBuffer.isView(o);\n}\nexport function fromString(str) {\n return new TextEncoder().encode(str);\n}\nexport function toString(b) {\n return new TextDecoder().decode(b);\n}\n//# sourceMappingURL=bytes.js.map","/* eslint-disable */\n// base-x encoding / decoding\n// Copyright (c) 2018 base-x contributors\n// Copyright (c) 2014-2018 The Bitcoin Core developers (base58.cpp)\n// Distributed under the MIT software license, see the accompanying\n// file LICENSE or http://www.opensource.org/licenses/mit-license.php.\n/**\n * @param {string} ALPHABET\n * @param {any} name\n */\nfunction base(ALPHABET, name) {\n if (ALPHABET.length >= 255) {\n throw new TypeError('Alphabet too long');\n }\n var BASE_MAP = new Uint8Array(256);\n for (var j = 0; j < BASE_MAP.length; j++) {\n BASE_MAP[j] = 255;\n }\n for (var i = 0; i < ALPHABET.length; i++) {\n var x = ALPHABET.charAt(i);\n var xc = x.charCodeAt(0);\n if (BASE_MAP[xc] !== 255) {\n throw new TypeError(x + ' is ambiguous');\n }\n BASE_MAP[xc] = i;\n }\n var BASE = ALPHABET.length;\n var LEADER = ALPHABET.charAt(0);\n var FACTOR = Math.log(BASE) / Math.log(256); // log(BASE) / log(256), rounded up\n var iFACTOR = Math.log(256) / Math.log(BASE); // log(256) / log(BASE), rounded up\n /**\n * @param {any[] | Iterable<number>} source\n */\n function encode(source) {\n // @ts-ignore\n if (source instanceof Uint8Array)\n ;\n else if (ArrayBuffer.isView(source)) {\n source = new Uint8Array(source.buffer, source.byteOffset, source.byteLength);\n }\n else if (Array.isArray(source)) {\n source = Uint8Array.from(source);\n }\n if (!(source instanceof Uint8Array)) {\n throw new TypeError('Expected Uint8Array');\n }\n if (source.length === 0) {\n return '';\n }\n // Skip & count leading zeroes.\n var zeroes = 0;\n var length = 0;\n var pbegin = 0;\n var pend = source.length;\n while (pbegin !== pend && source[pbegin] === 0) {\n pbegin++;\n zeroes++;\n }\n // Allocate enough space in big-endian base58 representation.\n var size = ((pend - pbegin) * iFACTOR + 1) >>> 0;\n var b58 = new Uint8Array(size);\n // Process the bytes.\n while (pbegin !== pend) {\n var carry = source[pbegin];\n // Apply \"b58 = b58 * 256 + ch\".\n var i = 0;\n for (var it1 = size - 1; (carry !== 0 || i < length) && (it1 !== -1); it1--, i++) {\n carry += (256 * b58[it1]) >>> 0;\n b58[it1] = (carry % BASE) >>> 0;\n carry = (carry / BASE) >>> 0;\n }\n if (carry !== 0) {\n throw new Error('Non-zero carry');\n }\n length = i;\n pbegin++;\n }\n // Skip leading zeroes in base58 result.\n var it2 = size - length;\n while (it2 !== size && b58[it2] === 0) {\n it2++;\n }\n // Translate the result into a string.\n var str = LEADER.repeat(zeroes);\n for (; it2 < size; ++it2) {\n str += ALPHABET.charAt(b58[it2]);\n }\n return str;\n }\n /**\n * @param {string | string[]} source\n */\n function decodeUnsafe(source) {\n if (typeof source !== 'string') {\n throw new TypeError('Expected String');\n }\n if (source.length === 0) {\n return new Uint8Array();\n }\n var psz = 0;\n // Skip leading spaces.\n if (source[psz] === ' ') {\n return;\n }\n // Skip and count leading '1's.\n var zeroes = 0;\n var length = 0;\n while (source[psz] === LEADER) {\n zeroes++;\n psz++;\n }\n // Allocate enough space in big-endian base256 representation.\n var size = (((source.length - psz) * FACTOR) + 1) >>> 0; // log(58) / log(256), rounded up.\n var b256 = new Uint8Array(size);\n // Process the characters.\n while (source[psz]) {\n // Decode character\n var carry = BASE_MAP[source.charCodeAt(psz)];\n // Invalid character\n if (carry === 255) {\n return;\n }\n var i = 0;\n for (var it3 = size - 1; (carry !== 0 || i < length) && (it3 !== -1); it3--, i++) {\n carry += (BASE * b256[it3]) >>> 0;\n b256[it3] = (carry % 256) >>> 0;\n carry = (carry / 256) >>> 0;\n }\n if (carry !== 0) {\n throw new Error('Non-zero carry');\n }\n length = i;\n psz++;\n }\n // Skip trailing spaces.\n if (source[psz] === ' ') {\n return;\n }\n // Skip leading zeroes in b256.\n var it4 = size - length;\n while (it4 !== size && b256[it4] === 0) {\n it4++;\n }\n var vch = new Uint8Array(zeroes + (size - it4));\n var j = zeroes;\n while (it4 !== size) {\n vch[j++] = b256[it4++];\n }\n return vch;\n }\n /**\n * @param {string | string[]} string\n */\n function decode(string) {\n var buffer = decodeUnsafe(string);\n if (buffer) {\n return buffer;\n }\n throw new Error(`Non-${name} character`);\n }\n return {\n encode: encode,\n decodeUnsafe: decodeUnsafe,\n decode: decode\n };\n}\nvar src = base;\nvar _brrp__multiformats_scope_baseX = src;\nexport default _brrp__multiformats_scope_baseX;\n//# sourceMappingURL=base-x.js.map","import { coerce } from '../bytes.js';\nimport basex from '../vendor/base-x.js';\n/**\n * Class represents both BaseEncoder and MultibaseEncoder meaning it\n * can be used to encode to multibase or base encode without multibase\n * prefix.\n */\nclass Encoder {\n name;\n prefix;\n baseEncode;\n constructor(name, prefix, baseEncode) {\n this.name = name;\n this.prefix = prefix;\n this.baseEncode = baseEncode;\n }\n encode(bytes) {\n if (bytes instanceof Uint8Array) {\n return `${this.prefix}${this.baseEncode(bytes)}`;\n }\n else {\n throw Error('Unknown type, must be binary type');\n }\n }\n}\n/**\n * Class represents both BaseDecoder and MultibaseDecoder so it could be used\n * to decode multibases (with matching prefix) or just base decode strings\n * with corresponding base encoding.\n */\nclass Decoder {\n name;\n prefix;\n baseDecode;\n prefixCodePoint;\n constructor(name, prefix, baseDecode) {\n this.name = name;\n this.prefix = prefix;\n const prefixCodePoint = prefix.codePointAt(0);\n /* c8 ignore next 3 */\n if (prefixCodePoint === undefined) {\n throw new Error('Invalid prefix character');\n }\n this.prefixCodePoint = prefixCodePoint;\n this.baseDecode = baseDecode;\n }\n decode(text) {\n if (typeof text === 'string') {\n if (text.codePointAt(0) !== this.prefixCodePoint) {\n throw Error(`Unable to decode multibase string ${JSON.stringify(text)}, ${this.name} decoder only supports inputs prefixed with ${this.prefix}`);\n }\n return this.baseDecode(text.slice(this.prefix.length));\n }\n else {\n throw Error('Can only multibase decode strings');\n }\n }\n or(decoder) {\n return or(this, decoder);\n }\n}\nclass ComposedDecoder {\n decoders;\n constructor(decoders) {\n this.decoders = decoders;\n }\n or(decoder) {\n return or(this, decoder);\n }\n decode(input) {\n const prefix = input[0];\n const decoder = this.decoders[prefix];\n if (decoder != null) {\n return decoder.decode(input);\n }\n else {\n throw RangeError(`Unable to decode multibase string ${JSON.stringify(input)}, only inputs prefixed with ${Object.keys(this.decoders)} are supported`);\n }\n }\n}\nexport function or(left, right) {\n // eslint-disable-next-line @typescript-eslint/consistent-type-assertions\n return new ComposedDecoder({\n ...(left.decoders ?? { [left.prefix]: left }),\n ...(right.decoders ?? { [right.prefix]: right })\n });\n}\nexport class Codec {\n name;\n prefix;\n baseEncode;\n baseDecode;\n encoder;\n decoder;\n constructor(name, prefix, baseEncode, baseDecode) {\n this.name = name;\n this.prefix = prefix;\n this.baseEncode = baseEncode;\n this.baseDecode = baseDecode;\n this.encoder = new Encoder(name, prefix, baseEncode);\n this.decoder = new Decoder(name, prefix, baseDecode);\n }\n encode(input) {\n return this.encoder.encode(input);\n }\n decode(input) {\n return this.decoder.decode(input);\n }\n}\nexport function from({ name, prefix, encode, decode }) {\n return new Codec(name, prefix, encode, decode);\n}\nexport function baseX({ name, prefix, alphabet }) {\n const { encode, decode } = basex(alphabet, name);\n return from({\n prefix,\n name,\n encode,\n decode: (text) => coerce(decode(text))\n });\n}\nfunction decode(string, alphabet, bitsPerChar, name) {\n // Build the character lookup table:\n const codes = {};\n for (let i = 0; i < alphabet.length; ++i) {\n codes[alphabet[i]] = i;\n }\n // Count the padding bytes:\n let end = string.length;\n while (string[end - 1] === '=') {\n --end;\n }\n // Allocate the output:\n const out = new Uint8Array((end * bitsPerChar / 8) | 0);\n // Parse the data:\n let bits = 0; // Number of bits currently in the buffer\n let buffer = 0; // Bits waiting to be written out, MSB first\n let written = 0; // Next byte to write\n for (let i = 0; i < end; ++i) {\n // Read one character from the string:\n const value = codes[string[i]];\n if (value === undefined) {\n throw new SyntaxError(`Non-${name} character`);\n }\n // Append the bits to the buffer:\n buffer = (buffer << bitsPerChar) | value;\n bits += bitsPerChar;\n // Write out some bits if the buffer has a byte's worth:\n if (bits >= 8) {\n bits -= 8;\n out[written++] = 0xff & (buffer >> bits);\n }\n }\n // Verify that we have received just enough bits:\n if (bits >= bitsPerChar || (0xff & (buffer << (8 - bits))) !== 0) {\n throw new SyntaxError('Unexpected end of data');\n }\n return out;\n}\nfunction encode(data, alphabet, bitsPerChar) {\n const pad = alphabet[alphabet.length - 1] === '=';\n const mask = (1 << bitsPerChar) - 1;\n let out = '';\n let bits = 0; // Number of bits currently in the buffer\n let buffer = 0; // Bits waiting to be written out, MSB first\n for (let i = 0; i < data.length; ++i) {\n // Slurp data into the buffer:\n buffer = (buffer << 8) | data[i];\n bits += 8;\n // Write out as much as we can:\n while (bits > bitsPerChar) {\n bits -= bitsPerChar;\n out += alphabet[mask & (buffer >> bits)];\n }\n }\n // Partial character:\n if (bits !== 0) {\n out += alphabet[mask & (buffer << (bitsPerChar - bits))];\n }\n // Add padding characters until we hit a byte boundary:\n if (pad) {\n while (((out.length * bitsPerChar) & 7) !== 0) {\n out += '=';\n }\n }\n return out;\n}\n/**\n * RFC4648 Factory\n */\nexport function rfc4648({ name, prefix, bitsPerChar, alphabet }) {\n return from({\n prefix,\n name,\n encode(input) {\n return encode(input, alphabet, bitsPerChar);\n },\n decode(input) {\n return decode(input, alphabet, bitsPerChar, name);\n }\n });\n}\n//# sourceMappingURL=base.js.map","import { baseX } from './base.js';\nexport const base10 = baseX({\n prefix: '9',\n name: 'base10',\n alphabet: '0123456789'\n});\n//# sourceMappingURL=base10.js.map","import { rfc4648 } from './base.js';\nexport const base16 = rfc4648({\n prefix: 'f',\n name: 'base16',\n alphabet: '0123456789abcdef',\n bitsPerChar: 4\n});\nexport const base16upper = rfc4648({\n prefix: 'F',\n name: 'base16upper',\n alphabet: '0123456789ABCDEF',\n bitsPerChar: 4\n});\n//# sourceMappingURL=base16.js.map","import { rfc4648 } from './base.js';\nexport const base2 = rfc4648({\n prefix: '0',\n name: 'base2',\n alphabet: '01',\n bitsPerChar: 1\n});\n//# sourceMappingURL=base2.js.map","import { from } from './base.js';\nconst alphabet = Array.from('🚀🪐☄🛰🌌🌑🌒🌓🌔🌕🌖🌗🌘🌍🌏🌎🐉☀💻🖥💾💿😂❤😍🤣😊🙏💕😭😘👍😅👏😁🔥🥰💔💖💙😢🤔😆🙄💪😉☺👌🤗💜😔😎😇🌹🤦🎉💞✌✨🤷😱😌🌸🙌😋💗💚😏💛🙂💓🤩😄😀🖤😃💯🙈👇🎶😒🤭❣😜💋👀😪😑💥🙋😞😩😡🤪👊🥳😥🤤👉💃😳✋😚😝😴🌟😬🙃🍀🌷😻😓⭐✅🥺🌈😈🤘💦✔😣🏃💐☹🎊💘😠☝😕🌺🎂🌻😐🖕💝🙊😹🗣💫💀👑🎵🤞😛🔴😤🌼😫⚽🤙☕🏆🤫👈😮🙆🍻🍃🐶💁😲🌿🧡🎁⚡🌞🎈❌✊👋😰🤨😶🤝🚶💰🍓💢🤟🙁🚨💨🤬✈🎀🍺🤓😙💟🌱😖👶🥴▶➡❓💎💸⬇😨🌚🦋😷🕺⚠🙅😟😵👎🤲🤠🤧📌🔵💅🧐🐾🍒😗🤑🌊🤯🐷☎💧😯💆👆🎤🙇🍑❄🌴💣🐸💌📍🥀🤢👅💡💩👐📸👻🤐🤮🎼🥵🚩🍎🍊👼💍📣🥂');\nconst alphabetBytesToChars = (alphabet.reduce((p, c, i) => { p[i] = c; return p; }, ([])));\nconst alphabetCharsToBytes = (alphabet.reduce((p, c, i) => {\n const codePoint = c.codePointAt(0);\n if (codePoint == null) {\n throw new Error(`Invalid character: ${c}`);\n }\n p[codePoint] = i;\n return p;\n}, ([])));\nfunction encode(data) {\n return data.reduce((p, c) => {\n p += alphabetBytesToChars[c];\n return p;\n }, '');\n}\nfunction decode(str) {\n const byts = [];\n for (const char of str) {\n const codePoint = char.codePointAt(0);\n if (codePoint == null) {\n throw new Error(`Invalid character: ${char}`);\n }\n const byt = alphabetCharsToBytes[codePoint];\n if (byt == null) {\n throw new Error(`Non-base256emoji character: ${char}`);\n }\n byts.push(byt);\n }\n return new Uint8Array(byts);\n}\nexport const base256emoji = from({\n prefix: '🚀',\n name: 'base256emoji',\n encode,\n decode\n});\n//# sourceMappingURL=base256emoji.js.map","import { rfc4648 } from './base.js';\nexport const base32 = rfc4648({\n prefix: 'b',\n name: 'base32',\n alphabet: 'abcdefghijklmnopqrstuvwxyz234567',\n bitsPerChar: 5\n});\nexport const base32upper = rfc4648({\n prefix: 'B',\n name: 'base32upper',\n alphabet: 'ABCDEFGHIJKLMNOPQRSTUVWXYZ234567',\n bitsPerChar: 5\n});\nexport const base32pad = rfc4648({\n prefix: 'c',\n name: 'base32pad',\n alphabet: 'abcdefghijklmnopqrstuvwxyz234567=',\n bitsPerChar: 5\n});\nexport const base32padupper = rfc4648({\n prefix: 'C',\n name: 'base32padupper',\n alphabet: 'ABCDEFGHIJKLMNOPQRSTUVWXYZ234567=',\n bitsPerChar: 5\n});\nexport const base32hex = rfc4648({\n prefix: 'v',\n name: 'base32hex',\n alphabet: '0123456789abcdefghijklmnopqrstuv',\n bitsPerChar: 5\n});\nexport const base32hexupper = rfc4648({\n prefix: 'V',\n name: 'base32hexupper',\n alphabet: '0123456789ABCDEFGHIJKLMNOPQRSTUV',\n bitsPerChar: 5\n});\nexport const base32hexpad = rfc4648({\n prefix: 't',\n name: 'base32hexpad',\n alphabet: '0123456789abcdefghijklmnopqrstuv=',\n bitsPerChar: 5\n});\nexport const base32hexpadupper = rfc4648({\n prefix: 'T',\n name: 'base32hexpadupper',\n alphabet: '0123456789ABCDEFGHIJKLMNOPQRSTUV=',\n bitsPerChar: 5\n});\nexport const base32z = rfc4648({\n prefix: 'h',\n name: 'base32z',\n alphabet: 'ybndrfg8ejkmcpqxot1uwisza345h769',\n bitsPerChar: 5\n});\n//# sourceMappingURL=base32.js.map","import { baseX } from './base.js';\nexport const base36 = baseX({\n prefix: 'k',\n name: 'base36',\n alphabet: '0123456789abcdefghijklmnopqrstuvwxyz'\n});\nexport const base36upper = baseX({\n prefix: 'K',\n name: 'base36upper',\n alphabet: '0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZ'\n});\n//# sourceMappingURL=base36.js.map","import { baseX } from './base.js';\nexport const base58btc = baseX({\n name: 'base58btc',\n prefix: 'z',\n alphabet: '123456789ABCDEFGHJKLMNPQRSTUVWXYZabcdefghijkmnopqrstuvwxyz'\n});\nexport const base58flickr = baseX({\n name: 'base58flickr',\n prefix: 'Z',\n alphabet: '123456789abcdefghijkmnopqrstuvwxyzABCDEFGHJKLMNPQRSTUVWXYZ'\n});\n//# sourceMappingURL=base58.js.map","import { rfc4648 } from './base.js';\nexport const base64 = rfc4648({\n prefix: 'm',\n name: 'base64',\n alphabet: 'ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/',\n bitsPerChar: 6\n});\nexport const base64pad = rfc4648({\n prefix: 'M',\n name: 'base64pad',\n alphabet: 'ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/=',\n bitsPerChar: 6\n});\nexport const base64url = rfc4648({\n prefix: 'u',\n name: 'base64url',\n alphabet: 'ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789-_',\n bitsPerChar: 6\n});\nexport const base64urlpad = rfc4648({\n prefix: 'U',\n name: 'base64urlpad',\n alphabet: 'ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789-_=',\n bitsPerChar: 6\n});\n//# sourceMappingURL=base64.js.map","import { rfc4648 } from './base.js';\nexport const base8 = rfc4648({\n prefix: '7',\n name: 'base8',\n alphabet: '01234567',\n bitsPerChar: 3\n});\n//# sourceMappingURL=base8.js.map","import { fromString, toString } from '../bytes.js';\nimport { from } from './base.js';\nexport const identity = from({\n prefix: '\\x00',\n name: 'identity',\n encode: (buf) => toString(buf),\n decode: (str) => fromString(str)\n});\n//# sourceMappingURL=identity.js.map","const textEncoder = new TextEncoder();\nconst textDecoder = new TextDecoder();\nexport const name = 'json';\nexport const code = 0x0200;\nexport function encode(node) {\n return textEncoder.encode(JSON.stringify(node));\n}\nexport function decode(data) {\n return JSON.parse(textDecoder.decode(data));\n}\n//# sourceMappingURL=json.js.map","import * as base10 from './bases/base10.js';\nimport * as base16 from './bases/base16.js';\nimport * as base2 from './bases/base2.js';\nimport * as base256emoji from './bases/base256emoji.js';\nimport * as base32 from './bases/base32.js';\nimport * as base36 from './bases/base36.js';\nimport * as base58 from './bases/base58.js';\nimport * as base64 from './bases/base64.js';\nimport * as base8 from './bases/base8.js';\nimport * as identityBase from './bases/identity.js';\nimport * as json from './codecs/json.js';\nimport * as raw from './codecs/raw.js';\nimport * as identity from './hashes/identity.js';\nimport * as sha2 from './hashes/sha2.js';\nimport { CID, hasher, digest, varint, bytes } from './index.js';\nexport const bases = { ...identityBase, ...base2, ...base8, ...base10, ...base16, ...base32, ...base36, ...base58, ...base64, ...base256emoji };\nexport const hashes = { ...sha2, ...identity };\nexport const codecs = { raw, json };\nexport { CID, hasher, digest, varint, bytes };\n//# sourceMappingURL=basics.js.map","/**\n * Returns a `Uint8Array` of the requested size. Referenced memory will\n * be initialized to 0.\n */\nexport function alloc(size = 0) {\n return new Uint8Array(size);\n}\n/**\n * Where possible returns a Uint8Array of the requested size that references\n * uninitialized memory. Only use if you are certain you will immediately\n * overwrite every value in the returned `Uint8Array`.\n */\nexport function allocUnsafe(size = 0) {\n return new Uint8Array(size);\n}\n//# sourceMappingURL=alloc.js.map","import { bases } from 'multiformats/basics';\nimport { allocUnsafe } from '#alloc';\nfunction createCodec(name, prefix, encode, decode) {\n return {\n name,\n prefix,\n encoder: {\n name,\n prefix,\n encode\n },\n decoder: {\n decode\n }\n };\n}\nconst string = createCodec('utf8', 'u', (buf) => {\n const decoder = new TextDecoder('utf8');\n return 'u' + decoder.decode(buf);\n}, (str) => {\n const encoder = new TextEncoder();\n return encoder.encode(str.substring(1));\n});\nconst ascii = createCodec('ascii', 'a', (buf) => {\n let string = 'a';\n for (let i = 0; i < buf.length; i++) {\n string += String.fromCharCode(buf[i]);\n }\n return string;\n}, (str) => {\n str = str.substring(1);\n const buf = allocUnsafe(str.length);\n for (let i = 0; i < str.length; i++) {\n buf[i] = str.charCodeAt(i);\n }\n return buf;\n});\nconst BASES = {\n utf8: string,\n 'utf-8': string,\n hex: bases.base16,\n latin1: ascii,\n ascii,\n binary: ascii,\n ...bases\n};\nexport default BASES;\n//# sourceMappingURL=bases.js.map","import bases, {} from './util/bases.js';\n/**\n * Turns a `Uint8Array` into a string.\n *\n * Supports `utf8`, `utf-8` and any encoding supported by the multibase module.\n *\n * Also `ascii` which is similar to node's 'binary' encoding.\n */\nexport function toString(array, encoding = 'utf8') {\n const base = bases[encoding];\n if (base == null) {\n throw new Error(`Unsupported encoding \"${encoding}\"`);\n }\n // strip multibase prefix\n return base.encoder.encode(array).substring(1);\n}\n//# sourceMappingURL=to-string.js.map",null,null,null,null],"names":["toString","basex","decode","encode","base2","base8","base10","base16","base32","base36","base64","base256emoji","bases","uint8ArrayToString"],"mappings":"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AAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE;AAC9D,gBAAA,CAAC,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,CAAC,EAAE,CAAC,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,CAAC,EAAE,EAAE,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC;AACtD,gBAAA,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,EAAE,EAAE,CAAC,EAAE,EAAE,EAAE,EAAE;AACjD,gBAAA,EAAE,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC;AAC/C,gBAAA,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,CAAC;AAClD,gBAAA,EAAE,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC;AAC/C,gBAAA,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE;AACnD,gBAAA,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE;AAC9D,gBAAA,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE;AAC9D,gBAAA,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE;AAC9D,gBAAA,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE;AAC9D,gBAAA,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE;AAC9D,gBAAA,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE;AAC9D,gBAAA,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE;AAC9D,gBAAA,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAA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","x_google_ignoreList":[1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18]}
1
+ {"version":3,"file":"parser.cjs.js","sources":["../../src/dc-http2/types.ts","../../node_modules/multiformats/dist/src/bytes.js","../../node_modules/multiformats/dist/src/vendor/base-x.js","../../node_modules/multiformats/dist/src/bases/base.js","../../node_modules/multiformats/dist/src/bases/base10.js","../../node_modules/multiformats/dist/src/bases/base16.js","../../node_modules/multiformats/dist/src/bases/base2.js","../../node_modules/multiformats/dist/src/bases/base256emoji.js","../../node_modules/multiformats/dist/src/bases/base32.js","../../node_modules/multiformats/dist/src/bases/base36.js","../../node_modules/multiformats/dist/src/bases/base58.js","../../node_modules/multiformats/dist/src/bases/base64.js","../../node_modules/multiformats/dist/src/bases/base8.js","../../node_modules/multiformats/dist/src/bases/identity.js","../../node_modules/multiformats/dist/src/codecs/json.js","../../node_modules/multiformats/dist/src/basics.js","../../node_modules/uint8arrays/dist/src/alloc.js","../../node_modules/uint8arrays/dist/src/util/bases.js","../../node_modules/uint8arrays/dist/src/to-string.js","../../src/dc-http2/hpack.ts","../../src/dc-http2/encoder.ts","../../src/dc-http2/frame.ts","../../src/dc-http2/parser.ts"],"sourcesContent":[null,"export const empty = new Uint8Array(0);\nexport function toHex(d) {\n return d.reduce((hex, byte) => hex + byte.toString(16).padStart(2, '0'), '');\n}\nexport function fromHex(hex) {\n const hexes = hex.match(/../g);\n return hexes != null ? new Uint8Array(hexes.map(b => parseInt(b, 16))) : empty;\n}\nexport function equals(aa, bb) {\n if (aa === bb)\n return true;\n if (aa.byteLength !== bb.byteLength) {\n return false;\n }\n for (let ii = 0; ii < aa.byteLength; ii++) {\n if (aa[ii] !== bb[ii]) {\n return false;\n }\n }\n return true;\n}\nexport function coerce(o) {\n if (o instanceof Uint8Array && o.constructor.name === 'Uint8Array')\n return o;\n if (o instanceof ArrayBuffer)\n return new Uint8Array(o);\n if (ArrayBuffer.isView(o)) {\n return new Uint8Array(o.buffer, o.byteOffset, o.byteLength);\n }\n throw new Error('Unknown type, must be binary type');\n}\nexport function isBinary(o) {\n return o instanceof ArrayBuffer || ArrayBuffer.isView(o);\n}\nexport function fromString(str) {\n return new TextEncoder().encode(str);\n}\nexport function toString(b) {\n return new TextDecoder().decode(b);\n}\n//# sourceMappingURL=bytes.js.map","/* eslint-disable */\n// base-x encoding / decoding\n// Copyright (c) 2018 base-x contributors\n// Copyright (c) 2014-2018 The Bitcoin Core developers (base58.cpp)\n// Distributed under the MIT software license, see the accompanying\n// file LICENSE or http://www.opensource.org/licenses/mit-license.php.\n/**\n * @param {string} ALPHABET\n * @param {any} name\n */\nfunction base(ALPHABET, name) {\n if (ALPHABET.length >= 255) {\n throw new TypeError('Alphabet too long');\n }\n var BASE_MAP = new Uint8Array(256);\n for (var j = 0; j < BASE_MAP.length; j++) {\n BASE_MAP[j] = 255;\n }\n for (var i = 0; i < ALPHABET.length; i++) {\n var x = ALPHABET.charAt(i);\n var xc = x.charCodeAt(0);\n if (BASE_MAP[xc] !== 255) {\n throw new TypeError(x + ' is ambiguous');\n }\n BASE_MAP[xc] = i;\n }\n var BASE = ALPHABET.length;\n var LEADER = ALPHABET.charAt(0);\n var FACTOR = Math.log(BASE) / Math.log(256); // log(BASE) / log(256), rounded up\n var iFACTOR = Math.log(256) / Math.log(BASE); // log(256) / log(BASE), rounded up\n /**\n * @param {any[] | Iterable<number>} source\n */\n function encode(source) {\n // @ts-ignore\n if (source instanceof Uint8Array)\n ;\n else if (ArrayBuffer.isView(source)) {\n source = new Uint8Array(source.buffer, source.byteOffset, source.byteLength);\n }\n else if (Array.isArray(source)) {\n source = Uint8Array.from(source);\n }\n if (!(source instanceof Uint8Array)) {\n throw new TypeError('Expected Uint8Array');\n }\n if (source.length === 0) {\n return '';\n }\n // Skip & count leading zeroes.\n var zeroes = 0;\n var length = 0;\n var pbegin = 0;\n var pend = source.length;\n while (pbegin !== pend && source[pbegin] === 0) {\n pbegin++;\n zeroes++;\n }\n // Allocate enough space in big-endian base58 representation.\n var size = ((pend - pbegin) * iFACTOR + 1) >>> 0;\n var b58 = new Uint8Array(size);\n // Process the bytes.\n while (pbegin !== pend) {\n var carry = source[pbegin];\n // Apply \"b58 = b58 * 256 + ch\".\n var i = 0;\n for (var it1 = size - 1; (carry !== 0 || i < length) && (it1 !== -1); it1--, i++) {\n carry += (256 * b58[it1]) >>> 0;\n b58[it1] = (carry % BASE) >>> 0;\n carry = (carry / BASE) >>> 0;\n }\n if (carry !== 0) {\n throw new Error('Non-zero carry');\n }\n length = i;\n pbegin++;\n }\n // Skip leading zeroes in base58 result.\n var it2 = size - length;\n while (it2 !== size && b58[it2] === 0) {\n it2++;\n }\n // Translate the result into a string.\n var str = LEADER.repeat(zeroes);\n for (; it2 < size; ++it2) {\n str += ALPHABET.charAt(b58[it2]);\n }\n return str;\n }\n /**\n * @param {string | string[]} source\n */\n function decodeUnsafe(source) {\n if (typeof source !== 'string') {\n throw new TypeError('Expected String');\n }\n if (source.length === 0) {\n return new Uint8Array();\n }\n var psz = 0;\n // Skip leading spaces.\n if (source[psz] === ' ') {\n return;\n }\n // Skip and count leading '1's.\n var zeroes = 0;\n var length = 0;\n while (source[psz] === LEADER) {\n zeroes++;\n psz++;\n }\n // Allocate enough space in big-endian base256 representation.\n var size = (((source.length - psz) * FACTOR) + 1) >>> 0; // log(58) / log(256), rounded up.\n var b256 = new Uint8Array(size);\n // Process the characters.\n while (source[psz]) {\n // Decode character\n var carry = BASE_MAP[source.charCodeAt(psz)];\n // Invalid character\n if (carry === 255) {\n return;\n }\n var i = 0;\n for (var it3 = size - 1; (carry !== 0 || i < length) && (it3 !== -1); it3--, i++) {\n carry += (BASE * b256[it3]) >>> 0;\n b256[it3] = (carry % 256) >>> 0;\n carry = (carry / 256) >>> 0;\n }\n if (carry !== 0) {\n throw new Error('Non-zero carry');\n }\n length = i;\n psz++;\n }\n // Skip trailing spaces.\n if (source[psz] === ' ') {\n return;\n }\n // Skip leading zeroes in b256.\n var it4 = size - length;\n while (it4 !== size && b256[it4] === 0) {\n it4++;\n }\n var vch = new Uint8Array(zeroes + (size - it4));\n var j = zeroes;\n while (it4 !== size) {\n vch[j++] = b256[it4++];\n }\n return vch;\n }\n /**\n * @param {string | string[]} string\n */\n function decode(string) {\n var buffer = decodeUnsafe(string);\n if (buffer) {\n return buffer;\n }\n throw new Error(`Non-${name} character`);\n }\n return {\n encode: encode,\n decodeUnsafe: decodeUnsafe,\n decode: decode\n };\n}\nvar src = base;\nvar _brrp__multiformats_scope_baseX = src;\nexport default _brrp__multiformats_scope_baseX;\n//# sourceMappingURL=base-x.js.map","import { coerce } from '../bytes.js';\nimport basex from '../vendor/base-x.js';\n/**\n * Class represents both BaseEncoder and MultibaseEncoder meaning it\n * can be used to encode to multibase or base encode without multibase\n * prefix.\n */\nclass Encoder {\n name;\n prefix;\n baseEncode;\n constructor(name, prefix, baseEncode) {\n this.name = name;\n this.prefix = prefix;\n this.baseEncode = baseEncode;\n }\n encode(bytes) {\n if (bytes instanceof Uint8Array) {\n return `${this.prefix}${this.baseEncode(bytes)}`;\n }\n else {\n throw Error('Unknown type, must be binary type');\n }\n }\n}\n/**\n * Class represents both BaseDecoder and MultibaseDecoder so it could be used\n * to decode multibases (with matching prefix) or just base decode strings\n * with corresponding base encoding.\n */\nclass Decoder {\n name;\n prefix;\n baseDecode;\n prefixCodePoint;\n constructor(name, prefix, baseDecode) {\n this.name = name;\n this.prefix = prefix;\n const prefixCodePoint = prefix.codePointAt(0);\n /* c8 ignore next 3 */\n if (prefixCodePoint === undefined) {\n throw new Error('Invalid prefix character');\n }\n this.prefixCodePoint = prefixCodePoint;\n this.baseDecode = baseDecode;\n }\n decode(text) {\n if (typeof text === 'string') {\n if (text.codePointAt(0) !== this.prefixCodePoint) {\n throw Error(`Unable to decode multibase string ${JSON.stringify(text)}, ${this.name} decoder only supports inputs prefixed with ${this.prefix}`);\n }\n return this.baseDecode(text.slice(this.prefix.length));\n }\n else {\n throw Error('Can only multibase decode strings');\n }\n }\n or(decoder) {\n return or(this, decoder);\n }\n}\nclass ComposedDecoder {\n decoders;\n constructor(decoders) {\n this.decoders = decoders;\n }\n or(decoder) {\n return or(this, decoder);\n }\n decode(input) {\n const prefix = input[0];\n const decoder = this.decoders[prefix];\n if (decoder != null) {\n return decoder.decode(input);\n }\n else {\n throw RangeError(`Unable to decode multibase string ${JSON.stringify(input)}, only inputs prefixed with ${Object.keys(this.decoders)} are supported`);\n }\n }\n}\nexport function or(left, right) {\n // eslint-disable-next-line @typescript-eslint/consistent-type-assertions\n return new ComposedDecoder({\n ...(left.decoders ?? { [left.prefix]: left }),\n ...(right.decoders ?? { [right.prefix]: right })\n });\n}\nexport class Codec {\n name;\n prefix;\n baseEncode;\n baseDecode;\n encoder;\n decoder;\n constructor(name, prefix, baseEncode, baseDecode) {\n this.name = name;\n this.prefix = prefix;\n this.baseEncode = baseEncode;\n this.baseDecode = baseDecode;\n this.encoder = new Encoder(name, prefix, baseEncode);\n this.decoder = new Decoder(name, prefix, baseDecode);\n }\n encode(input) {\n return this.encoder.encode(input);\n }\n decode(input) {\n return this.decoder.decode(input);\n }\n}\nexport function from({ name, prefix, encode, decode }) {\n return new Codec(name, prefix, encode, decode);\n}\nexport function baseX({ name, prefix, alphabet }) {\n const { encode, decode } = basex(alphabet, name);\n return from({\n prefix,\n name,\n encode,\n decode: (text) => coerce(decode(text))\n });\n}\nfunction decode(string, alphabet, bitsPerChar, name) {\n // Build the character lookup table:\n const codes = {};\n for (let i = 0; i < alphabet.length; ++i) {\n codes[alphabet[i]] = i;\n }\n // Count the padding bytes:\n let end = string.length;\n while (string[end - 1] === '=') {\n --end;\n }\n // Allocate the output:\n const out = new Uint8Array((end * bitsPerChar / 8) | 0);\n // Parse the data:\n let bits = 0; // Number of bits currently in the buffer\n let buffer = 0; // Bits waiting to be written out, MSB first\n let written = 0; // Next byte to write\n for (let i = 0; i < end; ++i) {\n // Read one character from the string:\n const value = codes[string[i]];\n if (value === undefined) {\n throw new SyntaxError(`Non-${name} character`);\n }\n // Append the bits to the buffer:\n buffer = (buffer << bitsPerChar) | value;\n bits += bitsPerChar;\n // Write out some bits if the buffer has a byte's worth:\n if (bits >= 8) {\n bits -= 8;\n out[written++] = 0xff & (buffer >> bits);\n }\n }\n // Verify that we have received just enough bits:\n if (bits >= bitsPerChar || (0xff & (buffer << (8 - bits))) !== 0) {\n throw new SyntaxError('Unexpected end of data');\n }\n return out;\n}\nfunction encode(data, alphabet, bitsPerChar) {\n const pad = alphabet[alphabet.length - 1] === '=';\n const mask = (1 << bitsPerChar) - 1;\n let out = '';\n let bits = 0; // Number of bits currently in the buffer\n let buffer = 0; // Bits waiting to be written out, MSB first\n for (let i = 0; i < data.length; ++i) {\n // Slurp data into the buffer:\n buffer = (buffer << 8) | data[i];\n bits += 8;\n // Write out as much as we can:\n while (bits > bitsPerChar) {\n bits -= bitsPerChar;\n out += alphabet[mask & (buffer >> bits)];\n }\n }\n // Partial character:\n if (bits !== 0) {\n out += alphabet[mask & (buffer << (bitsPerChar - bits))];\n }\n // Add padding characters until we hit a byte boundary:\n if (pad) {\n while (((out.length * bitsPerChar) & 7) !== 0) {\n out += '=';\n }\n }\n return out;\n}\n/**\n * RFC4648 Factory\n */\nexport function rfc4648({ name, prefix, bitsPerChar, alphabet }) {\n return from({\n prefix,\n name,\n encode(input) {\n return encode(input, alphabet, bitsPerChar);\n },\n decode(input) {\n return decode(input, alphabet, bitsPerChar, name);\n }\n });\n}\n//# sourceMappingURL=base.js.map","import { baseX } from './base.js';\nexport const base10 = baseX({\n prefix: '9',\n name: 'base10',\n alphabet: '0123456789'\n});\n//# sourceMappingURL=base10.js.map","import { rfc4648 } from './base.js';\nexport const base16 = rfc4648({\n prefix: 'f',\n name: 'base16',\n alphabet: '0123456789abcdef',\n bitsPerChar: 4\n});\nexport const base16upper = rfc4648({\n prefix: 'F',\n name: 'base16upper',\n alphabet: '0123456789ABCDEF',\n bitsPerChar: 4\n});\n//# sourceMappingURL=base16.js.map","import { rfc4648 } from './base.js';\nexport const base2 = rfc4648({\n prefix: '0',\n name: 'base2',\n alphabet: '01',\n bitsPerChar: 1\n});\n//# sourceMappingURL=base2.js.map","import { from } from './base.js';\nconst alphabet = Array.from('🚀🪐☄🛰🌌🌑🌒🌓🌔🌕🌖🌗🌘🌍🌏🌎🐉☀💻🖥💾💿😂❤😍🤣😊🙏💕😭😘👍😅👏😁🔥🥰💔💖💙😢🤔😆🙄💪😉☺👌🤗💜😔😎😇🌹🤦🎉💞✌✨🤷😱😌🌸🙌😋💗💚😏💛🙂💓🤩😄😀🖤😃💯🙈👇🎶😒🤭❣😜💋👀😪😑💥🙋😞😩😡🤪👊🥳😥🤤👉💃😳✋😚😝😴🌟😬🙃🍀🌷😻😓⭐✅🥺🌈😈🤘💦✔😣🏃💐☹🎊💘😠☝😕🌺🎂🌻😐🖕💝🙊😹🗣💫💀👑🎵🤞😛🔴😤🌼😫⚽🤙☕🏆🤫👈😮🙆🍻🍃🐶💁😲🌿🧡🎁⚡🌞🎈❌✊👋😰🤨😶🤝🚶💰🍓💢🤟🙁🚨💨🤬✈🎀🍺🤓😙💟🌱😖👶🥴▶➡❓💎💸⬇😨🌚🦋😷🕺⚠🙅😟😵👎🤲🤠🤧📌🔵💅🧐🐾🍒😗🤑🌊🤯🐷☎💧😯💆👆🎤🙇🍑❄🌴💣🐸💌📍🥀🤢👅💡💩👐📸👻🤐🤮🎼🥵🚩🍎🍊👼💍📣🥂');\nconst alphabetBytesToChars = (alphabet.reduce((p, c, i) => { p[i] = c; return p; }, ([])));\nconst alphabetCharsToBytes = (alphabet.reduce((p, c, i) => {\n const codePoint = c.codePointAt(0);\n if (codePoint == null) {\n throw new Error(`Invalid character: ${c}`);\n }\n p[codePoint] = i;\n return p;\n}, ([])));\nfunction encode(data) {\n return data.reduce((p, c) => {\n p += alphabetBytesToChars[c];\n return p;\n }, '');\n}\nfunction decode(str) {\n const byts = [];\n for (const char of str) {\n const codePoint = char.codePointAt(0);\n if (codePoint == null) {\n throw new Error(`Invalid character: ${char}`);\n }\n const byt = alphabetCharsToBytes[codePoint];\n if (byt == null) {\n throw new Error(`Non-base256emoji character: ${char}`);\n }\n byts.push(byt);\n }\n return new Uint8Array(byts);\n}\nexport const base256emoji = from({\n prefix: '🚀',\n name: 'base256emoji',\n encode,\n decode\n});\n//# sourceMappingURL=base256emoji.js.map","import { rfc4648 } from './base.js';\nexport const base32 = rfc4648({\n prefix: 'b',\n name: 'base32',\n alphabet: 'abcdefghijklmnopqrstuvwxyz234567',\n bitsPerChar: 5\n});\nexport const base32upper = rfc4648({\n prefix: 'B',\n name: 'base32upper',\n alphabet: 'ABCDEFGHIJKLMNOPQRSTUVWXYZ234567',\n bitsPerChar: 5\n});\nexport const base32pad = rfc4648({\n prefix: 'c',\n name: 'base32pad',\n alphabet: 'abcdefghijklmnopqrstuvwxyz234567=',\n bitsPerChar: 5\n});\nexport const base32padupper = rfc4648({\n prefix: 'C',\n name: 'base32padupper',\n alphabet: 'ABCDEFGHIJKLMNOPQRSTUVWXYZ234567=',\n bitsPerChar: 5\n});\nexport const base32hex = rfc4648({\n prefix: 'v',\n name: 'base32hex',\n alphabet: '0123456789abcdefghijklmnopqrstuv',\n bitsPerChar: 5\n});\nexport const base32hexupper = rfc4648({\n prefix: 'V',\n name: 'base32hexupper',\n alphabet: '0123456789ABCDEFGHIJKLMNOPQRSTUV',\n bitsPerChar: 5\n});\nexport const base32hexpad = rfc4648({\n prefix: 't',\n name: 'base32hexpad',\n alphabet: '0123456789abcdefghijklmnopqrstuv=',\n bitsPerChar: 5\n});\nexport const base32hexpadupper = rfc4648({\n prefix: 'T',\n name: 'base32hexpadupper',\n alphabet: '0123456789ABCDEFGHIJKLMNOPQRSTUV=',\n bitsPerChar: 5\n});\nexport const base32z = rfc4648({\n prefix: 'h',\n name: 'base32z',\n alphabet: 'ybndrfg8ejkmcpqxot1uwisza345h769',\n bitsPerChar: 5\n});\n//# sourceMappingURL=base32.js.map","import { baseX } from './base.js';\nexport const base36 = baseX({\n prefix: 'k',\n name: 'base36',\n alphabet: '0123456789abcdefghijklmnopqrstuvwxyz'\n});\nexport const base36upper = baseX({\n prefix: 'K',\n name: 'base36upper',\n alphabet: '0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZ'\n});\n//# sourceMappingURL=base36.js.map","import { baseX } from './base.js';\nexport const base58btc = baseX({\n name: 'base58btc',\n prefix: 'z',\n alphabet: '123456789ABCDEFGHJKLMNPQRSTUVWXYZabcdefghijkmnopqrstuvwxyz'\n});\nexport const base58flickr = baseX({\n name: 'base58flickr',\n prefix: 'Z',\n alphabet: '123456789abcdefghijkmnopqrstuvwxyzABCDEFGHJKLMNPQRSTUVWXYZ'\n});\n//# sourceMappingURL=base58.js.map","import { rfc4648 } from './base.js';\nexport const base64 = rfc4648({\n prefix: 'm',\n name: 'base64',\n alphabet: 'ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/',\n bitsPerChar: 6\n});\nexport const base64pad = rfc4648({\n prefix: 'M',\n name: 'base64pad',\n alphabet: 'ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/=',\n bitsPerChar: 6\n});\nexport const base64url = rfc4648({\n prefix: 'u',\n name: 'base64url',\n alphabet: 'ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789-_',\n bitsPerChar: 6\n});\nexport const base64urlpad = rfc4648({\n prefix: 'U',\n name: 'base64urlpad',\n alphabet: 'ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789-_=',\n bitsPerChar: 6\n});\n//# sourceMappingURL=base64.js.map","import { rfc4648 } from './base.js';\nexport const base8 = rfc4648({\n prefix: '7',\n name: 'base8',\n alphabet: '01234567',\n bitsPerChar: 3\n});\n//# sourceMappingURL=base8.js.map","import { fromString, toString } from '../bytes.js';\nimport { from } from './base.js';\nexport const identity = from({\n prefix: '\\x00',\n name: 'identity',\n encode: (buf) => toString(buf),\n decode: (str) => fromString(str)\n});\n//# sourceMappingURL=identity.js.map","const textEncoder = new TextEncoder();\nconst textDecoder = new TextDecoder();\nexport const name = 'json';\nexport const code = 0x0200;\nexport function encode(node) {\n return textEncoder.encode(JSON.stringify(node));\n}\nexport function decode(data) {\n return JSON.parse(textDecoder.decode(data));\n}\n//# sourceMappingURL=json.js.map","import * as base10 from './bases/base10.js';\nimport * as base16 from './bases/base16.js';\nimport * as base2 from './bases/base2.js';\nimport * as base256emoji from './bases/base256emoji.js';\nimport * as base32 from './bases/base32.js';\nimport * as base36 from './bases/base36.js';\nimport * as base58 from './bases/base58.js';\nimport * as base64 from './bases/base64.js';\nimport * as base8 from './bases/base8.js';\nimport * as identityBase from './bases/identity.js';\nimport * as json from './codecs/json.js';\nimport * as raw from './codecs/raw.js';\nimport * as identity from './hashes/identity.js';\nimport * as sha2 from './hashes/sha2.js';\nimport { CID, hasher, digest, varint, bytes } from './index.js';\nexport const bases = { ...identityBase, ...base2, ...base8, ...base10, ...base16, ...base32, ...base36, ...base58, ...base64, ...base256emoji };\nexport const hashes = { ...sha2, ...identity };\nexport const codecs = { raw, json };\nexport { CID, hasher, digest, varint, bytes };\n//# sourceMappingURL=basics.js.map","/**\n * Returns a `Uint8Array` of the requested size. Referenced memory will\n * be initialized to 0.\n */\nexport function alloc(size = 0) {\n return new Uint8Array(size);\n}\n/**\n * Where possible returns a Uint8Array of the requested size that references\n * uninitialized memory. Only use if you are certain you will immediately\n * overwrite every value in the returned `Uint8Array`.\n */\nexport function allocUnsafe(size = 0) {\n return new Uint8Array(size);\n}\n//# sourceMappingURL=alloc.js.map","import { bases } from 'multiformats/basics';\nimport { allocUnsafe } from '#alloc';\nfunction createCodec(name, prefix, encode, decode) {\n return {\n name,\n prefix,\n encoder: {\n name,\n prefix,\n encode\n },\n decoder: {\n decode\n }\n };\n}\nconst string = createCodec('utf8', 'u', (buf) => {\n const decoder = new TextDecoder('utf8');\n return 'u' + decoder.decode(buf);\n}, (str) => {\n const encoder = new TextEncoder();\n return encoder.encode(str.substring(1));\n});\nconst ascii = createCodec('ascii', 'a', (buf) => {\n let string = 'a';\n for (let i = 0; i < buf.length; i++) {\n string += String.fromCharCode(buf[i]);\n }\n return string;\n}, (str) => {\n str = str.substring(1);\n const buf = allocUnsafe(str.length);\n for (let i = 0; i < str.length; i++) {\n buf[i] = str.charCodeAt(i);\n }\n return buf;\n});\nconst BASES = {\n utf8: string,\n 'utf-8': string,\n hex: bases.base16,\n latin1: ascii,\n ascii,\n binary: ascii,\n ...bases\n};\nexport default BASES;\n//# sourceMappingURL=bases.js.map","import bases, {} from './util/bases.js';\n/**\n * Turns a `Uint8Array` into a string.\n *\n * Supports `utf8`, `utf-8` and any encoding supported by the multibase module.\n *\n * Also `ascii` which is similar to node's 'binary' encoding.\n */\nexport function toString(array, encoding = 'utf8') {\n const base = bases[encoding];\n if (base == null) {\n throw new Error(`Unsupported encoding \"${encoding}\"`);\n }\n // strip multibase prefix\n return base.encoder.encode(array).substring(1);\n}\n//# sourceMappingURL=to-string.js.map",null,null,null,null],"names":["toString","basex","decode","encode","base2","base8","base10","base16","base32","base36","base64","base256emoji","bases","uint8ArrayToString"],"mappings":"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AAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE;AAC9D,gBAAA,CAAC,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,CAAC,EAAE,CAAC,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,CAAC,EAAE,EAAE,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC;AACtD,gBAAA,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,EAAE,EAAE,CAAC,EAAE,EAAE,EAAE,EAAE;AACjD,gBAAA,EAAE,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC;AAC/C,gBAAA,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,CAAC;AAClD,gBAAA,EAAE,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC;AAC/C,gBAAA,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE;AACnD,gBAAA,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE;AAC9D,gBAAA,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE;AAC9D,gBAAA,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE;AAC9D,gBAAA,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE;AAC9D,gBAAA,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE;AAC9D,gBAAA,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE;AAC9D,gBAAA,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE;AAC9D,gBAAA,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAA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","x_google_ignoreList":[1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18]}
@@ -59,6 +59,9 @@ declare class StreamWriter {
59
59
  private dispatchBackpressureEvent;
60
60
  }
61
61
 
62
+ type ParserOptions = {
63
+ compatibilityMode?: boolean;
64
+ };
62
65
  declare class HTTP2Parser {
63
66
  buffer: Uint8Array;
64
67
  settingsAckReceived: boolean;
@@ -74,9 +77,18 @@ declare class HTTP2Parser {
74
77
  onData?: (payload: Uint8Array, frameHeader: any) => void;
75
78
  onEnd?: () => void;
76
79
  onHeaders?: (headers: Uint8Array, frameHeader: any) => void;
80
+ onGoaway?: (info: {
81
+ lastStreamId?: number;
82
+ errorCode?: number;
83
+ }) => void;
84
+ onSettingsParsed?: (settings: {
85
+ maxConcurrentStreams?: number;
86
+ initialWindowSize?: number;
87
+ }) => void;
77
88
  endFlag: boolean;
78
89
  writer: StreamWriter;
79
- constructor(writer: StreamWriter);
90
+ private readonly compatibilityMode;
91
+ constructor(writer: StreamWriter, options?: ParserOptions);
80
92
  processStream(stream: Stream): Promise<void>;
81
93
  private isHttp2Preface;
82
94
  waitForSettingsAck(): Promise<void>;