@libp2p/multistream-select 5.1.17 → 6.0.0-18dd3cb26
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.
- package/dist/index.min.js +14 -14
- package/dist/src/multistream.js +2 -2
- package/dist/src/multistream.js.map +1 -1
- package/dist/src/select.js +3 -3
- package/dist/src/select.js.map +1 -1
- package/package.json +3 -3
- package/src/multistream.ts +2 -2
- package/src/select.ts +3 -3
- package/dist/typedoc-urls.json +0 -9
package/dist/index.min.js
CHANGED
|
@@ -1,16 +1,16 @@
|
|
|
1
1
|
(function (root, factory) {(typeof module === 'object' && module.exports) ? module.exports = factory() : root.Libp2PMultistreamSelect = factory()}(typeof self !== 'undefined' ? self : this, function () {
|
|
2
|
-
"use strict";var Libp2PMultistreamSelect=(()=>{var Le=Object.defineProperty;var Ct=Object.getOwnPropertyDescriptor;var It=Object.getOwnPropertyNames;var _t=Object.prototype.hasOwnProperty;var D=(r,t)=>{for(var e in t)Le(r,e,{get:t[e],enumerable:!0})},Ft=(r,t,e,n)=>{if(t&&typeof t=="object"||typeof t=="function")for(let o of It(t))!_t.call(r,o)&&o!==e&&Le(r,o,{get:()=>t[o],enumerable:!(n=Ct(t,o))||n.enumerable});return r};var Mt=r=>Ft(Le({},"__esModule",{value:!0}),r);var nn={};D(nn,{PROTOCOL_ID:()=>x,handle:()=>Tt,select:()=>Ot});var x="/multistream/1.0.0";var G=class extends Error{code;props;constructor(t,e,n){super(t),this.code=e,this.name=n?.name??"CodeError",this.props=n??{}}};function O(){let r={};return r.promise=new Promise((t,e)=>{r.resolve=t,r.reject=e}),r}var ne=class extends Error{type;code;constructor(t,e,n){super(t??"The operation was aborted"),this.type="aborted",this.name=n??"AbortError",this.code=e??"ABORT_ERR"}};async function oe(r,t,e){if(t==null)return r;if(t.aborted)return Promise.reject(new ne(e?.errorMessage,e?.errorCode,e?.errorName));let n,o=new ne(e?.errorMessage,e?.errorCode,e?.errorName);try{return await Promise.race([r,new Promise((i,s)=>{n=()=>{s(o)},t.addEventListener("abort",n)})])}finally{n!=null&&t.removeEventListener("abort",n)}}var Ee=class{readNext;haveNext;ended;nextResult;constructor(){this.ended=!1,this.readNext=O(),this.haveNext=O()}[Symbol.asyncIterator](){return this}async next(){if(this.nextResult==null&&await this.haveNext.promise,this.nextResult==null)throw new Error("HaveNext promise resolved but nextResult was undefined");let t=this.nextResult;return this.nextResult=void 0,this.readNext.resolve(),this.readNext=O(),t}async throw(t){return this.ended=!0,t!=null&&(this.haveNext.promise.catch(()=>{}),this.haveNext.reject(t)),{done:!0,value:void 0}}async return(){let t={done:!0,value:void 0};return await this._push(void 0),t}async push(t,e){await this._push(t,e)}async end(t,e){t!=null?await this.throw(t):await this._push(void 0,e)}async _push(t,e){if(t!=null&&this.ended)throw new Error("Cannot push value onto an ended pushable");for(;this.nextResult!=null;)await this.readNext.promise;t!=null?this.nextResult={done:!1,value:t}:(this.ended=!0,this.nextResult={done:!0,value:void 0}),this.haveNext.resolve(),this.haveNext=O(),await oe(this.readNext.promise,e?.signal,e)}};function tt(){return new Ee}function _(r=0){return new Uint8Array(r)}function N(r=0){return new Uint8Array(r)}function Ae(r,t){t==null&&(t=r.reduce((o,i)=>o+i.length,0));let e=N(t),n=0;for(let o of r)e.set(o,n),n+=o.length;return e}function rt(r,t){if(r===t)return!0;if(r.byteLength!==t.byteLength)return!1;for(let e=0;e<r.byteLength;e++)if(r[e]!==t[e])return!1;return!0}var ot=Symbol.for("@achingbrain/uint8arraylist");function nt(r,t){if(t==null||t<0)throw new RangeError("index is out of bounds");let e=0;for(let n of r){let o=e+n.byteLength;if(t<o)return{buf:n,index:t-e};e=o}throw new RangeError("index is out of bounds")}function ie(r){return!!r?.[ot]}var L=class r{bufs;length;[ot]=!0;constructor(...t){this.bufs=[],this.length=0,t.length>0&&this.appendAll(t)}*[Symbol.iterator](){yield*this.bufs}get byteLength(){return this.length}append(...t){this.appendAll(t)}appendAll(t){let e=0;for(let n of t)if(n instanceof Uint8Array)e+=n.byteLength,this.bufs.push(n);else if(ie(n))e+=n.byteLength,this.bufs.push(...n.bufs);else throw new Error("Could not append value, must be an Uint8Array or a Uint8ArrayList");this.length+=e}prepend(...t){this.prependAll(t)}prependAll(t){let e=0;for(let n of t.reverse())if(n instanceof Uint8Array)e+=n.byteLength,this.bufs.unshift(n);else if(ie(n))e+=n.byteLength,this.bufs.unshift(...n.bufs);else throw new Error("Could not prepend value, must be an Uint8Array or a Uint8ArrayList");this.length+=e}get(t){let e=nt(this.bufs,t);return e.buf[e.index]}set(t,e){let n=nt(this.bufs,t);n.buf[n.index]=e}write(t,e=0){if(t instanceof Uint8Array)for(let n=0;n<t.length;n++)this.set(e+n,t[n]);else if(ie(t))for(let n=0;n<t.length;n++)this.set(e+n,t.get(n));else throw new Error("Could not write value, must be an Uint8Array or a Uint8ArrayList")}consume(t){if(t=Math.trunc(t),!(Number.isNaN(t)||t<=0)){if(t===this.byteLength){this.bufs=[],this.length=0;return}for(;this.bufs.length>0;)if(t>=this.bufs[0].byteLength)t-=this.bufs[0].byteLength,this.length-=this.bufs[0].byteLength,this.bufs.shift();else{this.bufs[0]=this.bufs[0].subarray(t),this.length-=t;break}}}slice(t,e){let{bufs:n,length:o}=this._subList(t,e);return Ae(n,o)}subarray(t,e){let{bufs:n,length:o}=this._subList(t,e);return n.length===1?n[0]:Ae(n,o)}sublist(t,e){let{bufs:n,length:o}=this._subList(t,e),i=new r;return i.length=o,i.bufs=[...n],i}_subList(t,e){if(t=t??0,e=e??this.length,t<0&&(t=this.length+t),e<0&&(e=this.length+e),t<0||e>this.length)throw new RangeError("index is out of bounds");if(t===e)return{bufs:[],length:0};if(t===0&&e===this.length)return{bufs:this.bufs,length:this.length};let n=[],o=0;for(let i=0;i<this.bufs.length;i++){let s=this.bufs[i],a=o,c=a+s.byteLength;if(o=c,t>=c)continue;let f=t>=a&&t<c,l=e>a&&e<=c;if(f&&l){if(t===a&&e===c){n.push(s);break}let h=t-a;n.push(s.subarray(h,h+(e-t)));break}if(f){if(t===0){n.push(s);continue}n.push(s.subarray(t-a));continue}if(l){if(e===c){n.push(s);break}n.push(s.subarray(0,e-a));break}n.push(s)}return{bufs:n,length:e-t}}indexOf(t,e=0){if(!ie(t)&&!(t instanceof Uint8Array))throw new TypeError('The "value" argument must be a Uint8ArrayList or Uint8Array');let n=t instanceof Uint8Array?t:t.subarray();if(e=Number(e??0),isNaN(e)&&(e=0),e<0&&(e=this.length+e),e<0&&(e=0),t.length===0)return e>this.length?this.length:e;let o=n.byteLength;if(o===0)throw new TypeError("search must be at least 1 byte long");let i=256,s=new Int32Array(i);for(let h=0;h<i;h++)s[h]=-1;for(let h=0;h<o;h++)s[n[h]]=h;let a=s,c=this.byteLength-n.byteLength,f=n.byteLength-1,l;for(let h=e;h<=c;h+=l){l=0;for(let b=f;b>=0;b--){let P=this.get(h+b);if(n[b]!==P){l=Math.max(1,b-a[P]);break}}if(l===0)return h}return-1}getInt8(t){let e=this.subarray(t,t+1);return new DataView(e.buffer,e.byteOffset,e.byteLength).getInt8(0)}setInt8(t,e){let n=N(1);new DataView(n.buffer,n.byteOffset,n.byteLength).setInt8(0,e),this.write(n,t)}getInt16(t,e){let n=this.subarray(t,t+2);return new DataView(n.buffer,n.byteOffset,n.byteLength).getInt16(0,e)}setInt16(t,e,n){let o=_(2);new DataView(o.buffer,o.byteOffset,o.byteLength).setInt16(0,e,n),this.write(o,t)}getInt32(t,e){let n=this.subarray(t,t+4);return new DataView(n.buffer,n.byteOffset,n.byteLength).getInt32(0,e)}setInt32(t,e,n){let o=_(4);new DataView(o.buffer,o.byteOffset,o.byteLength).setInt32(0,e,n),this.write(o,t)}getBigInt64(t,e){let n=this.subarray(t,t+8);return new DataView(n.buffer,n.byteOffset,n.byteLength).getBigInt64(0,e)}setBigInt64(t,e,n){let o=_(8);new DataView(o.buffer,o.byteOffset,o.byteLength).setBigInt64(0,e,n),this.write(o,t)}getUint8(t){let e=this.subarray(t,t+1);return new DataView(e.buffer,e.byteOffset,e.byteLength).getUint8(0)}setUint8(t,e){let n=N(1);new DataView(n.buffer,n.byteOffset,n.byteLength).setUint8(0,e),this.write(n,t)}getUint16(t,e){let n=this.subarray(t,t+2);return new DataView(n.buffer,n.byteOffset,n.byteLength).getUint16(0,e)}setUint16(t,e,n){let o=_(2);new DataView(o.buffer,o.byteOffset,o.byteLength).setUint16(0,e,n),this.write(o,t)}getUint32(t,e){let n=this.subarray(t,t+4);return new DataView(n.buffer,n.byteOffset,n.byteLength).getUint32(0,e)}setUint32(t,e,n){let o=_(4);new DataView(o.buffer,o.byteOffset,o.byteLength).setUint32(0,e,n),this.write(o,t)}getBigUint64(t,e){let n=this.subarray(t,t+8);return new DataView(n.buffer,n.byteOffset,n.byteLength).getBigUint64(0,e)}setBigUint64(t,e,n){let o=_(8);new DataView(o.buffer,o.byteOffset,o.byteLength).setBigUint64(0,e,n),this.write(o,t)}getFloat32(t,e){let n=this.subarray(t,t+4);return new DataView(n.buffer,n.byteOffset,n.byteLength).getFloat32(0,e)}setFloat32(t,e,n){let o=_(4);new DataView(o.buffer,o.byteOffset,o.byteLength).setFloat32(0,e,n),this.write(o,t)}getFloat64(t,e){let n=this.subarray(t,t+8);return new DataView(n.buffer,n.byteOffset,n.byteLength).getFloat64(0,e)}setFloat64(t,e,n){let o=_(8);new DataView(o.buffer,o.byteOffset,o.byteLength).setFloat64(0,e,n),this.write(o,t)}equals(t){if(t==null||!(t instanceof r)||t.bufs.length!==this.bufs.length)return!1;for(let e=0;e<this.bufs.length;e++)if(!rt(this.bufs[e],t.bufs[e]))return!1;return!0}static fromUint8Arrays(t,e){let n=new r;return n.bufs=t,e==null&&(e=t.reduce((o,i)=>o+i.byteLength,0)),n.length=e,n}};var se=class extends Error{name="UnexpectedEOFError";code="ERR_UNEXPECTED_EOF"};var ve=class extends Error{code;constructor(t,e){super(t),this.code=e}},Se=class extends ve{type;constructor(t){super(t,"ABORT_ERR"),this.type="aborted",this.name="AbortError"}};function it(r,t){let e=tt();r.sink(e).catch(async s=>{await e.end(s)}),r.sink=async s=>{for await(let a of s)await e.push(a);await e.end()};let n=r.source;r.source[Symbol.iterator]!=null?n=r.source[Symbol.iterator]():r.source[Symbol.asyncIterator]!=null&&(n=r.source[Symbol.asyncIterator]());let o=new L;return{read:async(s,a)=>{a?.signal?.throwIfAborted();let c,f=new Promise((l,h)=>{c=()=>{h(new Se("Read aborted"))},a?.signal?.addEventListener("abort",c)});try{if(s==null){let{done:h,value:b}=await Promise.race([n.next(),f]);return h===!0?new L:b}for(;o.byteLength<s;){let{value:h,done:b}=await Promise.race([n.next(),f]);if(b===!0)throw new se("unexpected end of input");o.append(h)}let l=o.sublist(0,s);return o.consume(s),l}finally{c!=null&&a?.signal?.removeEventListener("abort",c)}},write:async(s,a)=>{a?.signal?.throwIfAborted(),s instanceof Uint8Array?await e.push(s,a):await e.push(s.subarray(),a)},unwrap:()=>{if(o.byteLength>0){let s=r.source;r.source=async function*(){t?.yieldBytes===!1?yield o:yield*o,yield*s}()}return r}}}var Pt=Math.pow(2,7),Vt=Math.pow(2,14),Bt=Math.pow(2,21),Re=Math.pow(2,28),De=Math.pow(2,35),Ue=Math.pow(2,42),Ne=Math.pow(2,49),d=128,E=127;function F(r){if(r<Pt)return 1;if(r<Vt)return 2;if(r<Bt)return 3;if(r<Re)return 4;if(r<De)return 5;if(r<Ue)return 6;if(r<Ne)return 7;if(Number.MAX_SAFE_INTEGER!=null&&r>Number.MAX_SAFE_INTEGER)throw new RangeError("Could not encode varint");return 8}function Gt(r,t,e=0){switch(F(r)){case 8:t[e++]=r&255|d,r/=128;case 7:t[e++]=r&255|d,r/=128;case 6:t[e++]=r&255|d,r/=128;case 5:t[e++]=r&255|d,r/=128;case 4:t[e++]=r&255|d,r>>>=7;case 3:t[e++]=r&255|d,r>>>=7;case 2:t[e++]=r&255|d,r>>>=7;case 1:{t[e++]=r&255,r>>>=7;break}default:throw new Error("unreachable")}return t}function kt(r,t,e=0){switch(F(r)){case 8:t.set(e++,r&255|d),r/=128;case 7:t.set(e++,r&255|d),r/=128;case 6:t.set(e++,r&255|d),r/=128;case 5:t.set(e++,r&255|d),r/=128;case 4:t.set(e++,r&255|d),r>>>=7;case 3:t.set(e++,r&255|d),r>>>=7;case 2:t.set(e++,r&255|d),r>>>=7;case 1:{t.set(e++,r&255),r>>>=7;break}default:throw new Error("unreachable")}return t}function zt(r,t){let e=r[t],n=0;if(n+=e&E,e<d||(e=r[t+1],n+=(e&E)<<7,e<d)||(e=r[t+2],n+=(e&E)<<14,e<d)||(e=r[t+3],n+=(e&E)<<21,e<d)||(e=r[t+4],n+=(e&E)*Re,e<d)||(e=r[t+5],n+=(e&E)*De,e<d)||(e=r[t+6],n+=(e&E)*Ue,e<d)||(e=r[t+7],n+=(e&E)*Ne,e<d))return n;throw new RangeError("Could not decode varint")}function $t(r,t){let e=r.get(t),n=0;if(n+=e&E,e<d||(e=r.get(t+1),n+=(e&E)<<7,e<d)||(e=r.get(t+2),n+=(e&E)<<14,e<d)||(e=r.get(t+3),n+=(e&E)<<21,e<d)||(e=r.get(t+4),n+=(e&E)*Re,e<d)||(e=r.get(t+5),n+=(e&E)*De,e<d)||(e=r.get(t+6),n+=(e&E)*Ue,e<d)||(e=r.get(t+7),n+=(e&E)*Ne,e<d))return n;throw new RangeError("Could not decode varint")}function H(r,t,e=0){return t==null&&(t=N(F(r))),t instanceof Uint8Array?Gt(r,t,e):kt(r,t,e)}function ae(r,t=0){return r instanceof Uint8Array?zt(r,t):$t(r,t)}var fe=class extends Error{name="InvalidMessageLengthError";code="ERR_INVALID_MSG_LENGTH"},he=class extends Error{name="InvalidDataLengthError";code="ERR_MSG_DATA_TOO_LONG"},ue=class extends Error{name="InvalidDataLengthLengthError";code="ERR_MSG_LENGTH_TOO_LONG"};function Y(r,t={}){let e=it(r,t);t.maxDataLength!=null&&t.maxLengthLength==null&&(t.maxLengthLength=F(t.maxDataLength));let n=t?.lengthDecoder??ae,o=t?.lengthEncoder??H;return{read:async s=>{let a=-1,c=new L;for(;;){c.append(await e.read(1,s));try{a=n(c)}catch(f){if(f instanceof RangeError)continue;throw f}if(a<0)throw new fe("Invalid message length");if(t?.maxLengthLength!=null&&c.byteLength>t.maxLengthLength)throw new ue("message length length too long");if(a>-1)break}if(t?.maxDataLength!=null&&a>t.maxDataLength)throw new he("message length too long");return e.read(a,s)},write:async(s,a)=>{await e.write(new L(o(s.byteLength),s),a)},writeV:async(s,a)=>{let c=new L(...s.flatMap(f=>[o(f.byteLength),f]));await e.write(c,a)},unwrap:()=>e.unwrap()}}var _e={};D(_e,{base10:()=>Wt});var Fn=new Uint8Array(0);function st(r,t){if(r===t)return!0;if(r.byteLength!==t.byteLength)return!1;for(let e=0;e<r.byteLength;e++)if(r[e]!==t[e])return!1;return!0}function M(r){if(r instanceof Uint8Array&&r.constructor.name==="Uint8Array")return r;if(r instanceof ArrayBuffer)return new Uint8Array(r);if(ArrayBuffer.isView(r))return new Uint8Array(r.buffer,r.byteOffset,r.byteLength);throw new Error("Unknown type, must be binary type")}function at(r){return new TextEncoder().encode(r)}function ct(r){return new TextDecoder().decode(r)}function Ht(r,t){if(r.length>=255)throw new TypeError("Alphabet too long");for(var e=new Uint8Array(256),n=0;n<e.length;n++)e[n]=255;for(var o=0;o<r.length;o++){var i=r.charAt(o),s=i.charCodeAt(0);if(e[s]!==255)throw new TypeError(i+" is ambiguous");e[s]=o}var a=r.length,c=r.charAt(0),f=Math.log(a)/Math.log(256),l=Math.log(256)/Math.log(a);function h(u){if(u instanceof Uint8Array||(ArrayBuffer.isView(u)?u=new Uint8Array(u.buffer,u.byteOffset,u.byteLength):Array.isArray(u)&&(u=Uint8Array.from(u))),!(u instanceof Uint8Array))throw new TypeError("Expected Uint8Array");if(u.length===0)return"";for(var w=0,C=0,S=0,p=u.length;S!==p&&u[S]===0;)S++,w++;for(var y=(p-S)*l+1>>>0,m=new Uint8Array(y);S!==p;){for(var v=u[S],U=0,R=y-1;(v!==0||U<C)&&R!==-1;R--,U++)v+=256*m[R]>>>0,m[R]=v%a>>>0,v=v/a>>>0;if(v!==0)throw new Error("Non-zero carry");C=U,S++}for(var I=y-C;I!==y&&m[I]===0;)I++;for(var re=c.repeat(w);I<y;++I)re+=r.charAt(m[I]);return re}function b(u){if(typeof u!="string")throw new TypeError("Expected String");if(u.length===0)return new Uint8Array;var w=0;if(u[w]!==" "){for(var C=0,S=0;u[w]===c;)C++,w++;for(var p=(u.length-w)*f+1>>>0,y=new Uint8Array(p);u[w];){var m=e[u.charCodeAt(w)];if(m===255)return;for(var v=0,U=p-1;(m!==0||v<S)&&U!==-1;U--,v++)m+=a*y[U]>>>0,y[U]=m%256>>>0,m=m/256>>>0;if(m!==0)throw new Error("Non-zero carry");S=v,w++}if(u[w]!==" "){for(var R=p-S;R!==p&&y[R]===0;)R++;for(var I=new Uint8Array(C+(p-R)),re=C;R!==p;)I[re++]=y[R++];return I}}}function P(u){var w=b(u);if(w)return w;throw new Error(`Non-${t} character`)}return{encode:h,decodeUnsafe:b,decode:P}}var jt=Ht,qt=jt,ht=qt;var Oe=class{name;prefix;baseEncode;constructor(t,e,n){this.name=t,this.prefix=e,this.baseEncode=n}encode(t){if(t instanceof Uint8Array)return`${this.prefix}${this.baseEncode(t)}`;throw Error("Unknown type, must be binary type")}},Te=class{name;prefix;baseDecode;prefixCodePoint;constructor(t,e,n){if(this.name=t,this.prefix=e,e.codePointAt(0)===void 0)throw new Error("Invalid prefix character");this.prefixCodePoint=e.codePointAt(0),this.baseDecode=n}decode(t){if(typeof t=="string"){if(t.codePointAt(0)!==this.prefixCodePoint)throw Error(`Unable to decode multibase string ${JSON.stringify(t)}, ${this.name} decoder only supports inputs prefixed with ${this.prefix}`);return this.baseDecode(t.slice(this.prefix.length))}else throw Error("Can only multibase decode strings")}or(t){return ut(this,t)}},Ce=class{decoders;constructor(t){this.decoders=t}or(t){return ut(this,t)}decode(t){let e=t[0],n=this.decoders[e];if(n!=null)return n.decode(t);throw RangeError(`Unable to decode multibase string ${JSON.stringify(t)}, only inputs prefixed with ${Object.keys(this.decoders)} are supported`)}};function ut(r,t){return new Ce({...r.decoders??{[r.prefix]:r},...t.decoders??{[t.prefix]:t}})}var Ie=class{name;prefix;baseEncode;baseDecode;encoder;decoder;constructor(t,e,n,o){this.name=t,this.prefix=e,this.baseEncode=n,this.baseDecode=o,this.encoder=new Oe(t,e,n),this.decoder=new Te(t,e,o)}encode(t){return this.encoder.encode(t)}decode(t){return this.decoder.decode(t)}};function j({name:r,prefix:t,encode:e,decode:n}){return new Ie(r,t,e,n)}function V({name:r,prefix:t,alphabet:e}){let{encode:n,decode:o}=ht(e,r);return j({prefix:t,name:r,encode:n,decode:i=>M(o(i))})}function Xt(r,t,e,n){let o={};for(let l=0;l<t.length;++l)o[t[l]]=l;let i=r.length;for(;r[i-1]==="=";)--i;let s=new Uint8Array(i*e/8|0),a=0,c=0,f=0;for(let l=0;l<i;++l){let h=o[r[l]];if(h===void 0)throw new SyntaxError(`Non-${n} character`);c=c<<e|h,a+=e,a>=8&&(a-=8,s[f++]=255&c>>a)}if(a>=e||255&c<<8-a)throw new SyntaxError("Unexpected end of data");return s}function Jt(r,t,e){let n=t[t.length-1]==="=",o=(1<<e)-1,i="",s=0,a=0;for(let c=0;c<r.length;++c)for(a=a<<8|r[c],s+=8;s>e;)s-=e,i+=t[o&a>>s];if(s!==0&&(i+=t[o&a<<e-s]),n)for(;i.length*e&7;)i+="=";return i}function g({name:r,prefix:t,bitsPerChar:e,alphabet:n}){return j({prefix:t,name:r,encode(o){return Jt(o,n,e)},decode(o){return Xt(o,n,e,r)}})}var Wt=V({prefix:"9",name:"base10",alphabet:"0123456789"});var Fe={};D(Fe,{base16:()=>Yt,base16upper:()=>Kt});var Yt=g({prefix:"f",name:"base16",alphabet:"0123456789abcdef",bitsPerChar:4}),Kt=g({prefix:"F",name:"base16upper",alphabet:"0123456789ABCDEF",bitsPerChar:4});var Me={};D(Me,{base2:()=>Qt});var Qt=g({prefix:"0",name:"base2",alphabet:"01",bitsPerChar:1});var Pe={};D(Pe,{base256emoji:()=>nr});var dt=Array.from("\u{1F680}\u{1FA90}\u2604\u{1F6F0}\u{1F30C}\u{1F311}\u{1F312}\u{1F313}\u{1F314}\u{1F315}\u{1F316}\u{1F317}\u{1F318}\u{1F30D}\u{1F30F}\u{1F30E}\u{1F409}\u2600\u{1F4BB}\u{1F5A5}\u{1F4BE}\u{1F4BF}\u{1F602}\u2764\u{1F60D}\u{1F923}\u{1F60A}\u{1F64F}\u{1F495}\u{1F62D}\u{1F618}\u{1F44D}\u{1F605}\u{1F44F}\u{1F601}\u{1F525}\u{1F970}\u{1F494}\u{1F496}\u{1F499}\u{1F622}\u{1F914}\u{1F606}\u{1F644}\u{1F4AA}\u{1F609}\u263A\u{1F44C}\u{1F917}\u{1F49C}\u{1F614}\u{1F60E}\u{1F607}\u{1F339}\u{1F926}\u{1F389}\u{1F49E}\u270C\u2728\u{1F937}\u{1F631}\u{1F60C}\u{1F338}\u{1F64C}\u{1F60B}\u{1F497}\u{1F49A}\u{1F60F}\u{1F49B}\u{1F642}\u{1F493}\u{1F929}\u{1F604}\u{1F600}\u{1F5A4}\u{1F603}\u{1F4AF}\u{1F648}\u{1F447}\u{1F3B6}\u{1F612}\u{1F92D}\u2763\u{1F61C}\u{1F48B}\u{1F440}\u{1F62A}\u{1F611}\u{1F4A5}\u{1F64B}\u{1F61E}\u{1F629}\u{1F621}\u{1F92A}\u{1F44A}\u{1F973}\u{1F625}\u{1F924}\u{1F449}\u{1F483}\u{1F633}\u270B\u{1F61A}\u{1F61D}\u{1F634}\u{1F31F}\u{1F62C}\u{1F643}\u{1F340}\u{1F337}\u{1F63B}\u{1F613}\u2B50\u2705\u{1F97A}\u{1F308}\u{1F608}\u{1F918}\u{1F4A6}\u2714\u{1F623}\u{1F3C3}\u{1F490}\u2639\u{1F38A}\u{1F498}\u{1F620}\u261D\u{1F615}\u{1F33A}\u{1F382}\u{1F33B}\u{1F610}\u{1F595}\u{1F49D}\u{1F64A}\u{1F639}\u{1F5E3}\u{1F4AB}\u{1F480}\u{1F451}\u{1F3B5}\u{1F91E}\u{1F61B}\u{1F534}\u{1F624}\u{1F33C}\u{1F62B}\u26BD\u{1F919}\u2615\u{1F3C6}\u{1F92B}\u{1F448}\u{1F62E}\u{1F646}\u{1F37B}\u{1F343}\u{1F436}\u{1F481}\u{1F632}\u{1F33F}\u{1F9E1}\u{1F381}\u26A1\u{1F31E}\u{1F388}\u274C\u270A\u{1F44B}\u{1F630}\u{1F928}\u{1F636}\u{1F91D}\u{1F6B6}\u{1F4B0}\u{1F353}\u{1F4A2}\u{1F91F}\u{1F641}\u{1F6A8}\u{1F4A8}\u{1F92C}\u2708\u{1F380}\u{1F37A}\u{1F913}\u{1F619}\u{1F49F}\u{1F331}\u{1F616}\u{1F476}\u{1F974}\u25B6\u27A1\u2753\u{1F48E}\u{1F4B8}\u2B07\u{1F628}\u{1F31A}\u{1F98B}\u{1F637}\u{1F57A}\u26A0\u{1F645}\u{1F61F}\u{1F635}\u{1F44E}\u{1F932}\u{1F920}\u{1F927}\u{1F4CC}\u{1F535}\u{1F485}\u{1F9D0}\u{1F43E}\u{1F352}\u{1F617}\u{1F911}\u{1F30A}\u{1F92F}\u{1F437}\u260E\u{1F4A7}\u{1F62F}\u{1F486}\u{1F446}\u{1F3A4}\u{1F647}\u{1F351}\u2744\u{1F334}\u{1F4A3}\u{1F438}\u{1F48C}\u{1F4CD}\u{1F940}\u{1F922}\u{1F445}\u{1F4A1}\u{1F4A9}\u{1F450}\u{1F4F8}\u{1F47B}\u{1F910}\u{1F92E}\u{1F3BC}\u{1F975}\u{1F6A9}\u{1F34E}\u{1F34A}\u{1F47C}\u{1F48D}\u{1F4E3}\u{1F942}"),Zt=dt.reduce((r,t,e)=>(r[e]=t,r),[]),er=dt.reduce((r,t,e)=>(r[t.codePointAt(0)]=e,r),[]);function tr(r){return r.reduce((t,e)=>(t+=Zt[e],t),"")}function rr(r){let t=[];for(let e of r){let n=er[e.codePointAt(0)];if(n===void 0)throw new Error(`Non-base256emoji character: ${e}`);t.push(n)}return new Uint8Array(t)}var nr=j({prefix:"\u{1F680}",name:"base256emoji",encode:tr,decode:rr});var Ve={};D(Ve,{base32:()=>q,base32hex:()=>ar,base32hexpad:()=>fr,base32hexpadupper:()=>hr,base32hexupper:()=>cr,base32pad:()=>ir,base32padupper:()=>sr,base32upper:()=>or,base32z:()=>ur});var q=g({prefix:"b",name:"base32",alphabet:"abcdefghijklmnopqrstuvwxyz234567",bitsPerChar:5}),or=g({prefix:"B",name:"base32upper",alphabet:"ABCDEFGHIJKLMNOPQRSTUVWXYZ234567",bitsPerChar:5}),ir=g({prefix:"c",name:"base32pad",alphabet:"abcdefghijklmnopqrstuvwxyz234567=",bitsPerChar:5}),sr=g({prefix:"C",name:"base32padupper",alphabet:"ABCDEFGHIJKLMNOPQRSTUVWXYZ234567=",bitsPerChar:5}),ar=g({prefix:"v",name:"base32hex",alphabet:"0123456789abcdefghijklmnopqrstuv",bitsPerChar:5}),cr=g({prefix:"V",name:"base32hexupper",alphabet:"0123456789ABCDEFGHIJKLMNOPQRSTUV",bitsPerChar:5}),fr=g({prefix:"t",name:"base32hexpad",alphabet:"0123456789abcdefghijklmnopqrstuv=",bitsPerChar:5}),hr=g({prefix:"T",name:"base32hexpadupper",alphabet:"0123456789ABCDEFGHIJKLMNOPQRSTUV=",bitsPerChar:5}),ur=g({prefix:"h",name:"base32z",alphabet:"ybndrfg8ejkmcpqxot1uwisza345h769",bitsPerChar:5});var Be={};D(Be,{base36:()=>dr,base36upper:()=>lr});var dr=V({prefix:"k",name:"base36",alphabet:"0123456789abcdefghijklmnopqrstuvwxyz"}),lr=V({prefix:"K",name:"base36upper",alphabet:"0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZ"});var Ge={};D(Ge,{base58btc:()=>T,base58flickr:()=>pr});var T=V({name:"base58btc",prefix:"z",alphabet:"123456789ABCDEFGHJKLMNPQRSTUVWXYZabcdefghijkmnopqrstuvwxyz"}),pr=V({name:"base58flickr",prefix:"Z",alphabet:"123456789abcdefghijkmnopqrstuvwxyzABCDEFGHJKLMNPQRSTUVWXYZ"});var ke={};D(ke,{base64:()=>mr,base64pad:()=>gr,base64url:()=>wr,base64urlpad:()=>br});var mr=g({prefix:"m",name:"base64",alphabet:"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/",bitsPerChar:6}),gr=g({prefix:"M",name:"base64pad",alphabet:"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/=",bitsPerChar:6}),wr=g({prefix:"u",name:"base64url",alphabet:"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789-_",bitsPerChar:6}),br=g({prefix:"U",name:"base64urlpad",alphabet:"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789-_=",bitsPerChar:6});var ze={};D(ze,{base8:()=>yr});var yr=g({prefix:"7",name:"base8",alphabet:"01234567",bitsPerChar:3});var $e={};D($e,{identity:()=>xr});var xr=j({prefix:"\0",name:"identity",encode:r=>ct(r),decode:r=>at(r)});var Kn=new TextEncoder,Qn=new TextDecoder;var je={};D(je,{identity:()=>$r});var Ar=mt,lt=128,vr=127,Sr=~vr,Rr=Math.pow(2,31);function mt(r,t,e){t=t||[],e=e||0;for(var n=e;r>=Rr;)t[e++]=r&255|lt,r/=128;for(;r&Sr;)t[e++]=r&255|lt,r>>>=7;return t[e]=r|0,mt.bytes=e-n+1,t}var Dr=He,Ur=128,pt=127;function He(r,n){var e=0,n=n||0,o=0,i=n,s,a=r.length;do{if(i>=a)throw He.bytes=0,new RangeError("Could not decode varint");s=r[i++],e+=o<28?(s&pt)<<o:(s&pt)*Math.pow(2,o),o+=7}while(s>=Ur);return He.bytes=i-n,e}var Nr=Math.pow(2,7),Or=Math.pow(2,14),Tr=Math.pow(2,21),Cr=Math.pow(2,28),Ir=Math.pow(2,35),_r=Math.pow(2,42),Fr=Math.pow(2,49),Mr=Math.pow(2,56),Pr=Math.pow(2,63),Vr=function(r){return r<Nr?1:r<Or?2:r<Tr?3:r<Cr?4:r<Ir?5:r<_r?6:r<Fr?7:r<Mr?8:r<Pr?9:10},Br={encode:Ar,decode:Dr,encodingLength:Vr},Gr=Br,K=Gr;function Q(r,t=0){return[K.decode(r,t),K.decode.bytes]}function X(r,t,e=0){return K.encode(r,t,e),t}function J(r){return K.encodingLength(r)}function k(r,t){let e=t.byteLength,n=J(r),o=n+J(e),i=new Uint8Array(o+e);return X(r,i,0),X(e,i,n),i.set(t,o),new W(r,e,t,i)}function gt(r){let t=M(r),[e,n]=Q(t),[o,i]=Q(t.subarray(n)),s=t.subarray(n+i);if(s.byteLength!==o)throw new Error("Incorrect length");return new W(e,o,s,t)}function wt(r,t){if(r===t)return!0;{let e=t;return r.code===e.code&&r.size===e.size&&e.bytes instanceof Uint8Array&&st(r.bytes,e.bytes)}}var W=class{code;size;digest;bytes;constructor(t,e,n,o){this.code=t,this.size=e,this.digest=n,this.bytes=o}};var bt=0,kr="identity",yt=M;function zr(r){return k(bt,yt(r))}var $r={code:bt,name:kr,encode:yt,digest:zr};var Je={};D(Je,{sha256:()=>Hr,sha512:()=>jr});function Xe({name:r,code:t,encode:e}){return new qe(r,t,e)}var qe=class{name;code;encode;constructor(t,e,n){this.name=t,this.code=e,this.encode=n}digest(t){if(t instanceof Uint8Array){let e=this.encode(t);return e instanceof Uint8Array?k(this.code,e):e.then(n=>k(this.code,n))}else throw Error("Unknown type, must be binary type")}};function Lt(r){return async t=>new Uint8Array(await crypto.subtle.digest(r,t))}var Hr=Xe({name:"sha2-256",code:18,encode:Lt("SHA-256")}),jr=Xe({name:"sha2-512",code:19,encode:Lt("SHA-512")});function Et(r,t){let{bytes:e,version:n}=r;switch(n){case 0:return Xr(e,We(r),t??T.encoder);default:return Jr(e,We(r),t??q.encoder)}}var At=new WeakMap;function We(r){let t=At.get(r);if(t==null){let e=new Map;return At.set(r,e),e}return t}var le=class r{code;version;multihash;bytes;"/";constructor(t,e,n,o){this.code=e,this.version=t,this.multihash=n,this.bytes=o,this["/"]=o}get asCID(){return this}get byteOffset(){return this.bytes.byteOffset}get byteLength(){return this.bytes.byteLength}toV0(){switch(this.version){case 0:return this;case 1:{let{code:t,multihash:e}=this;if(t!==ee)throw new Error("Cannot convert a non dag-pb CID to CIDv0");if(e.code!==Wr)throw new Error("Cannot convert non sha2-256 multihash CID to CIDv0");return r.createV0(e)}default:throw Error(`Can not convert CID version ${this.version} to version 0. This is a bug please report`)}}toV1(){switch(this.version){case 0:{let{code:t,digest:e}=this.multihash,n=k(t,e);return r.createV1(this.code,n)}case 1:return this;default:throw Error(`Can not convert CID version ${this.version} to version 1. This is a bug please report`)}}equals(t){return r.equals(this,t)}static equals(t,e){let n=e;return n!=null&&t.code===n.code&&t.version===n.version&&wt(t.multihash,n.multihash)}toString(t){return Et(this,t)}toJSON(){return{"/":Et(this)}}link(){return this}[Symbol.toStringTag]="CID";[Symbol.for("nodejs.util.inspect.custom")](){return`CID(${this.toString()})`}static asCID(t){if(t==null)return null;let e=t;if(e instanceof r)return e;if(e["/"]!=null&&e["/"]===e.bytes||e.asCID===e){let{version:n,code:o,multihash:i,bytes:s}=e;return new r(n,o,i,s??vt(n,o,i.bytes))}else if(e[Yr]===!0){let{version:n,multihash:o,code:i}=e,s=gt(o);return r.create(n,i,s)}else return null}static create(t,e,n){if(typeof e!="number")throw new Error("String codecs are no longer supported");if(!(n.bytes instanceof Uint8Array))throw new Error("Invalid digest");switch(t){case 0:{if(e!==ee)throw new Error(`Version 0 CID must use dag-pb (code: ${ee}) block encoding`);return new r(t,e,n,n.bytes)}case 1:{let o=vt(t,e,n.bytes);return new r(t,e,n,o)}default:throw new Error("Invalid version")}}static createV0(t){return r.create(0,ee,t)}static createV1(t,e){return r.create(1,t,e)}static decode(t){let[e,n]=r.decodeFirst(t);if(n.length!==0)throw new Error("Incorrect length");return e}static decodeFirst(t){let e=r.inspectBytes(t),n=e.size-e.multihashSize,o=M(t.subarray(n,n+e.multihashSize));if(o.byteLength!==e.multihashSize)throw new Error("Incorrect length");let i=o.subarray(e.multihashSize-e.digestSize),s=new W(e.multihashCode,e.digestSize,i,o);return[e.version===0?r.createV0(s):r.createV1(e.codec,s),t.subarray(e.size)]}static inspectBytes(t){let e=0,n=()=>{let[h,b]=Q(t.subarray(e));return e+=b,h},o=n(),i=ee;if(o===18?(o=0,e=0):i=n(),o!==0&&o!==1)throw new RangeError(`Invalid CID version ${o}`);let s=e,a=n(),c=n(),f=e+c,l=f-s;return{version:o,codec:i,multihashCode:a,digestSize:c,multihashSize:l,size:f}}static parse(t,e){let[n,o]=qr(t,e),i=r.decode(o);if(i.version===0&&t[0]!=="Q")throw Error("Version 0 CID string must not include multibase prefix");return We(i).set(n,t),i}};function qr(r,t){switch(r[0]){case"Q":{let e=t??T;return[T.prefix,e.decode(`${T.prefix}${r}`)]}case T.prefix:{let e=t??T;return[T.prefix,e.decode(r)]}case q.prefix:{let e=t??q;return[q.prefix,e.decode(r)]}default:{if(t==null)throw Error("To parse non base32 or base58btc encoded CID multibase decoder must be provided");return[r[0],t.decode(r)]}}}function Xr(r,t,e){let{prefix:n}=e;if(n!==T.prefix)throw Error(`Cannot string encode V0 in ${e.name} encoding`);let o=t.get(n);if(o==null){let i=e.encode(r).slice(1);return t.set(n,i),i}else return o}function Jr(r,t,e){let{prefix:n}=e,o=t.get(n);if(o==null){let i=e.encode(r);return t.set(n,i),i}else return o}var ee=112,Wr=18;function vt(r,t,e){let n=J(r),o=n+J(t),i=new Uint8Array(o+e.byteLength);return X(r,i,0),X(t,i,n),i.set(e,o),i}var Yr=Symbol.for("@ipld/js-cid/CID");var Ye={...$e,...Me,...ze,..._e,...Fe,...Ve,...Be,...Ge,...ke,...Pe},xo={...Je,...je};function Rt(r,t,e,n){return{name:r,prefix:t,encoder:{name:r,prefix:t,encode:e},decoder:{decode:n}}}var St=Rt("utf8","u",r=>"u"+new TextDecoder("utf8").decode(r),r=>new TextEncoder().encode(r.substring(1))),Ke=Rt("ascii","a",r=>{let t="a";for(let e=0;e<r.length;e++)t+=String.fromCharCode(r[e]);return t},r=>{r=r.substring(1);let t=N(r.length);for(let e=0;e<r.length;e++)t[e]=r.charCodeAt(e);return t}),Kr={utf8:St,"utf-8":St,hex:Ye.base16,latin1:Ke,ascii:Ke,binary:Ke,...Ye},pe=Kr;function A(r,t="utf8"){let e=pe[t];if(e==null)throw new Error(`Unsupported encoding "${t}"`);return e.decoder.decode(`${e.prefix}${r}`)}function Dt(r,t="utf8"){let e=pe[t];if(e==null)throw new Error(`Unsupported encoding "${t}"`);return e.encoder.encode(r).substring(1)}var Qr=A(`
|
|
3
|
-
`);async function z(r,t,e){await r.write(t,e)}async function
|
|
4
|
-
`),
|
|
5
|
-
`);await
|
|
6
|
-
`),e),e.log.trace("select: reading protocol response");let f=await B(n,e);if(e.log.trace('select: read "%s" for "%s"',f,c),f===c)return{stream:n.unwrap(),protocol:c}}throw new
|
|
7
|
-
`;yield new
|
|
8
|
-
`)
|
|
9
|
-
`),
|
|
10
|
-
`)]),e.log.trace('optimistic: wrote ["%s", "%s", data] in source',x,t)}finally{c=!0,f=!1,
|
|
11
|
-
`),e),e.log.trace('handle: responded with "%s" for "%s"',x,o);continue}if(t.includes(o))return e.log.trace('handle: respond with "%s" for "%s"',o,o),await z(n,
|
|
12
|
-
`),e),e.log.trace('handle: responded with "%s" for "%s"',o,o),{stream:n.unwrap(),protocol:o};if(o==="ls"){let
|
|
13
|
-
`))),
|
|
14
|
-
`));e.log.trace('handle: respond with "%s" for %s',t,o),await z(n,
|
|
15
|
-
`),e),e.log('handle: responded with "na" for "%s"',o)}}return
|
|
2
|
+
"use strict";var Libp2PMultistreamSelect=(()=>{var Le=Object.defineProperty;var Rt=Object.getOwnPropertyDescriptor;var Ft=Object.getOwnPropertyNames;var Mt=Object.prototype.hasOwnProperty;var D=(r,t)=>{for(var e in t)Le(r,e,{get:t[e],enumerable:!0})},Pt=(r,t,e,n)=>{if(t&&typeof t=="object"||typeof t=="function")for(let o of Ft(t))!Mt.call(r,o)&&o!==e&&Le(r,o,{get:()=>t[o],enumerable:!(n=Rt(t,o))||n.enumerable});return r};var Vt=r=>Pt(Le({},"__esModule",{value:!0}),r);var on={};D(on,{PROTOCOL_ID:()=>x,handle:()=>Ot,select:()=>Tt});var x="/multistream/1.0.0";var W=class extends Error{static name="UnsupportedProtocolError";constructor(t="Unsupported protocol error"){super(t),this.name="UnsupportedProtocolError"}},ne=class extends Error{static name="InvalidMessageError";constructor(t="Invalid message"){super(t),this.name="InvalidMessageError"}};function I(){let r={};return r.promise=new Promise((t,e)=>{r.resolve=t,r.reject=e}),r}var oe=class extends Error{type;code;constructor(t,e,n){super(t??"The operation was aborted"),this.type="aborted",this.name=n??"AbortError",this.code=e??"ABORT_ERR"}};async function se(r,t,e){if(t==null)return r;if(t.aborted)return Promise.reject(new oe(e?.errorMessage,e?.errorCode,e?.errorName));let n,o=new oe(e?.errorMessage,e?.errorCode,e?.errorName);try{return await Promise.race([r,new Promise((s,i)=>{n=()=>{i(o)},t.addEventListener("abort",n)})])}finally{n!=null&&t.removeEventListener("abort",n)}}var ve=class{readNext;haveNext;ended;nextResult;constructor(){this.ended=!1,this.readNext=I(),this.haveNext=I()}[Symbol.asyncIterator](){return this}async next(){if(this.nextResult==null&&await this.haveNext.promise,this.nextResult==null)throw new Error("HaveNext promise resolved but nextResult was undefined");let t=this.nextResult;return this.nextResult=void 0,this.readNext.resolve(),this.readNext=I(),t}async throw(t){return this.ended=!0,t!=null&&(this.haveNext.promise.catch(()=>{}),this.haveNext.reject(t)),{done:!0,value:void 0}}async return(){let t={done:!0,value:void 0};return await this._push(void 0),t}async push(t,e){await this._push(t,e)}async end(t,e){t!=null?await this.throw(t):await this._push(void 0,e)}async _push(t,e){if(t!=null&&this.ended)throw new Error("Cannot push value onto an ended pushable");for(;this.nextResult!=null;)await this.readNext.promise;t!=null?this.nextResult={done:!1,value:t}:(this.ended=!0,this.nextResult={done:!0,value:void 0}),this.haveNext.resolve(),this.haveNext=I(),await se(this.readNext.promise,e?.signal,e)}};function rt(){return new ve}function F(r=0){return new Uint8Array(r)}function N(r=0){return new Uint8Array(r)}function Ae(r,t){t==null&&(t=r.reduce((o,s)=>o+s.length,0));let e=N(t),n=0;for(let o of r)e.set(o,n),n+=o.length;return e}function nt(r,t){if(r===t)return!0;if(r.byteLength!==t.byteLength)return!1;for(let e=0;e<r.byteLength;e++)if(r[e]!==t[e])return!1;return!0}var st=Symbol.for("@achingbrain/uint8arraylist");function ot(r,t){if(t==null||t<0)throw new RangeError("index is out of bounds");let e=0;for(let n of r){let o=e+n.byteLength;if(t<o)return{buf:n,index:t-e};e=o}throw new RangeError("index is out of bounds")}function ie(r){return!!r?.[st]}var E=class r{bufs;length;[st]=!0;constructor(...t){this.bufs=[],this.length=0,t.length>0&&this.appendAll(t)}*[Symbol.iterator](){yield*this.bufs}get byteLength(){return this.length}append(...t){this.appendAll(t)}appendAll(t){let e=0;for(let n of t)if(n instanceof Uint8Array)e+=n.byteLength,this.bufs.push(n);else if(ie(n))e+=n.byteLength,this.bufs.push(...n.bufs);else throw new Error("Could not append value, must be an Uint8Array or a Uint8ArrayList");this.length+=e}prepend(...t){this.prependAll(t)}prependAll(t){let e=0;for(let n of t.reverse())if(n instanceof Uint8Array)e+=n.byteLength,this.bufs.unshift(n);else if(ie(n))e+=n.byteLength,this.bufs.unshift(...n.bufs);else throw new Error("Could not prepend value, must be an Uint8Array or a Uint8ArrayList");this.length+=e}get(t){let e=ot(this.bufs,t);return e.buf[e.index]}set(t,e){let n=ot(this.bufs,t);n.buf[n.index]=e}write(t,e=0){if(t instanceof Uint8Array)for(let n=0;n<t.length;n++)this.set(e+n,t[n]);else if(ie(t))for(let n=0;n<t.length;n++)this.set(e+n,t.get(n));else throw new Error("Could not write value, must be an Uint8Array or a Uint8ArrayList")}consume(t){if(t=Math.trunc(t),!(Number.isNaN(t)||t<=0)){if(t===this.byteLength){this.bufs=[],this.length=0;return}for(;this.bufs.length>0;)if(t>=this.bufs[0].byteLength)t-=this.bufs[0].byteLength,this.length-=this.bufs[0].byteLength,this.bufs.shift();else{this.bufs[0]=this.bufs[0].subarray(t),this.length-=t;break}}}slice(t,e){let{bufs:n,length:o}=this._subList(t,e);return Ae(n,o)}subarray(t,e){let{bufs:n,length:o}=this._subList(t,e);return n.length===1?n[0]:Ae(n,o)}sublist(t,e){let{bufs:n,length:o}=this._subList(t,e),s=new r;return s.length=o,s.bufs=[...n],s}_subList(t,e){if(t=t??0,e=e??this.length,t<0&&(t=this.length+t),e<0&&(e=this.length+e),t<0||e>this.length)throw new RangeError("index is out of bounds");if(t===e)return{bufs:[],length:0};if(t===0&&e===this.length)return{bufs:this.bufs,length:this.length};let n=[],o=0;for(let s=0;s<this.bufs.length;s++){let i=this.bufs[s],a=o,c=a+i.byteLength;if(o=c,t>=c)continue;let f=t>=a&&t<c,d=e>a&&e<=c;if(f&&d){if(t===a&&e===c){n.push(i);break}let u=t-a;n.push(i.subarray(u,u+(e-t)));break}if(f){if(t===0){n.push(i);continue}n.push(i.subarray(t-a));continue}if(d){if(e===c){n.push(i);break}n.push(i.subarray(0,e-a));break}n.push(i)}return{bufs:n,length:e-t}}indexOf(t,e=0){if(!ie(t)&&!(t instanceof Uint8Array))throw new TypeError('The "value" argument must be a Uint8ArrayList or Uint8Array');let n=t instanceof Uint8Array?t:t.subarray();if(e=Number(e??0),isNaN(e)&&(e=0),e<0&&(e=this.length+e),e<0&&(e=0),t.length===0)return e>this.length?this.length:e;let o=n.byteLength;if(o===0)throw new TypeError("search must be at least 1 byte long");let s=256,i=new Int32Array(s);for(let u=0;u<s;u++)i[u]=-1;for(let u=0;u<o;u++)i[n[u]]=u;let a=i,c=this.byteLength-n.byteLength,f=n.byteLength-1,d;for(let u=e;u<=c;u+=d){d=0;for(let b=f;b>=0;b--){let V=this.get(u+b);if(n[b]!==V){d=Math.max(1,b-a[V]);break}}if(d===0)return u}return-1}getInt8(t){let e=this.subarray(t,t+1);return new DataView(e.buffer,e.byteOffset,e.byteLength).getInt8(0)}setInt8(t,e){let n=N(1);new DataView(n.buffer,n.byteOffset,n.byteLength).setInt8(0,e),this.write(n,t)}getInt16(t,e){let n=this.subarray(t,t+2);return new DataView(n.buffer,n.byteOffset,n.byteLength).getInt16(0,e)}setInt16(t,e,n){let o=F(2);new DataView(o.buffer,o.byteOffset,o.byteLength).setInt16(0,e,n),this.write(o,t)}getInt32(t,e){let n=this.subarray(t,t+4);return new DataView(n.buffer,n.byteOffset,n.byteLength).getInt32(0,e)}setInt32(t,e,n){let o=F(4);new DataView(o.buffer,o.byteOffset,o.byteLength).setInt32(0,e,n),this.write(o,t)}getBigInt64(t,e){let n=this.subarray(t,t+8);return new DataView(n.buffer,n.byteOffset,n.byteLength).getBigInt64(0,e)}setBigInt64(t,e,n){let o=F(8);new DataView(o.buffer,o.byteOffset,o.byteLength).setBigInt64(0,e,n),this.write(o,t)}getUint8(t){let e=this.subarray(t,t+1);return new DataView(e.buffer,e.byteOffset,e.byteLength).getUint8(0)}setUint8(t,e){let n=N(1);new DataView(n.buffer,n.byteOffset,n.byteLength).setUint8(0,e),this.write(n,t)}getUint16(t,e){let n=this.subarray(t,t+2);return new DataView(n.buffer,n.byteOffset,n.byteLength).getUint16(0,e)}setUint16(t,e,n){let o=F(2);new DataView(o.buffer,o.byteOffset,o.byteLength).setUint16(0,e,n),this.write(o,t)}getUint32(t,e){let n=this.subarray(t,t+4);return new DataView(n.buffer,n.byteOffset,n.byteLength).getUint32(0,e)}setUint32(t,e,n){let o=F(4);new DataView(o.buffer,o.byteOffset,o.byteLength).setUint32(0,e,n),this.write(o,t)}getBigUint64(t,e){let n=this.subarray(t,t+8);return new DataView(n.buffer,n.byteOffset,n.byteLength).getBigUint64(0,e)}setBigUint64(t,e,n){let o=F(8);new DataView(o.buffer,o.byteOffset,o.byteLength).setBigUint64(0,e,n),this.write(o,t)}getFloat32(t,e){let n=this.subarray(t,t+4);return new DataView(n.buffer,n.byteOffset,n.byteLength).getFloat32(0,e)}setFloat32(t,e,n){let o=F(4);new DataView(o.buffer,o.byteOffset,o.byteLength).setFloat32(0,e,n),this.write(o,t)}getFloat64(t,e){let n=this.subarray(t,t+8);return new DataView(n.buffer,n.byteOffset,n.byteLength).getFloat64(0,e)}setFloat64(t,e,n){let o=F(8);new DataView(o.buffer,o.byteOffset,o.byteLength).setFloat64(0,e,n),this.write(o,t)}equals(t){if(t==null||!(t instanceof r)||t.bufs.length!==this.bufs.length)return!1;for(let e=0;e<this.bufs.length;e++)if(!nt(this.bufs[e],t.bufs[e]))return!1;return!0}static fromUint8Arrays(t,e){let n=new r;return n.bufs=t,e==null&&(e=t.reduce((o,s)=>o+s.byteLength,0)),n.length=e,n}};var ae=class extends Error{name="UnexpectedEOFError";code="ERR_UNEXPECTED_EOF"};var Se=class extends Error{code;constructor(t,e){super(t),this.code=e}},Ue=class extends Se{type;constructor(t){super(t,"ABORT_ERR"),this.type="aborted",this.name="AbortError"}};function it(r,t){let e=rt();r.sink(e).catch(async i=>{await e.end(i)}),r.sink=async i=>{for await(let a of i)await e.push(a);await e.end()};let n=r.source;r.source[Symbol.iterator]!=null?n=r.source[Symbol.iterator]():r.source[Symbol.asyncIterator]!=null&&(n=r.source[Symbol.asyncIterator]());let o=new E;return{read:async(i,a)=>{a?.signal?.throwIfAborted();let c,f=new Promise((d,u)=>{c=()=>{u(new Ue("Read aborted"))},a?.signal?.addEventListener("abort",c)});try{if(i==null){let{done:u,value:b}=await Promise.race([n.next(),f]);return u===!0?new E:b}for(;o.byteLength<i;){let{value:u,done:b}=await Promise.race([n.next(),f]);if(b===!0)throw new ae("unexpected end of input");o.append(u)}let d=o.sublist(0,i);return o.consume(i),d}finally{c!=null&&a?.signal?.removeEventListener("abort",c)}},write:async(i,a)=>{a?.signal?.throwIfAborted(),i instanceof Uint8Array?await e.push(i,a):await e.push(i.subarray(),a)},unwrap:()=>{if(o.byteLength>0){let i=r.source;r.source=async function*(){t?.yieldBytes===!1?yield o:yield*o,yield*i}()}return r}}}var _t=Math.pow(2,7),Bt=Math.pow(2,14),kt=Math.pow(2,21),De=Math.pow(2,28),Ce=Math.pow(2,35),Ne=Math.pow(2,42),Ie=Math.pow(2,49),l=128,L=127;function M(r){if(r<_t)return 1;if(r<Bt)return 2;if(r<kt)return 3;if(r<De)return 4;if(r<Ce)return 5;if(r<Ne)return 6;if(r<Ie)return 7;if(Number.MAX_SAFE_INTEGER!=null&&r>Number.MAX_SAFE_INTEGER)throw new RangeError("Could not encode varint");return 8}function zt(r,t,e=0){switch(M(r)){case 8:t[e++]=r&255|l,r/=128;case 7:t[e++]=r&255|l,r/=128;case 6:t[e++]=r&255|l,r/=128;case 5:t[e++]=r&255|l,r/=128;case 4:t[e++]=r&255|l,r>>>=7;case 3:t[e++]=r&255|l,r>>>=7;case 2:t[e++]=r&255|l,r>>>=7;case 1:{t[e++]=r&255,r>>>=7;break}default:throw new Error("unreachable")}return t}function Gt(r,t,e=0){switch(M(r)){case 8:t.set(e++,r&255|l),r/=128;case 7:t.set(e++,r&255|l),r/=128;case 6:t.set(e++,r&255|l),r/=128;case 5:t.set(e++,r&255|l),r/=128;case 4:t.set(e++,r&255|l),r>>>=7;case 3:t.set(e++,r&255|l),r>>>=7;case 2:t.set(e++,r&255|l),r>>>=7;case 1:{t.set(e++,r&255),r>>>=7;break}default:throw new Error("unreachable")}return t}function $t(r,t){let e=r[t],n=0;if(n+=e&L,e<l||(e=r[t+1],n+=(e&L)<<7,e<l)||(e=r[t+2],n+=(e&L)<<14,e<l)||(e=r[t+3],n+=(e&L)<<21,e<l)||(e=r[t+4],n+=(e&L)*De,e<l)||(e=r[t+5],n+=(e&L)*Ce,e<l)||(e=r[t+6],n+=(e&L)*Ne,e<l)||(e=r[t+7],n+=(e&L)*Ie,e<l))return n;throw new RangeError("Could not decode varint")}function Ht(r,t){let e=r.get(t),n=0;if(n+=e&L,e<l||(e=r.get(t+1),n+=(e&L)<<7,e<l)||(e=r.get(t+2),n+=(e&L)<<14,e<l)||(e=r.get(t+3),n+=(e&L)<<21,e<l)||(e=r.get(t+4),n+=(e&L)*De,e<l)||(e=r.get(t+5),n+=(e&L)*Ce,e<l)||(e=r.get(t+6),n+=(e&L)*Ne,e<l)||(e=r.get(t+7),n+=(e&L)*Ie,e<l))return n;throw new RangeError("Could not decode varint")}function $(r,t,e=0){return t==null&&(t=N(M(r))),t instanceof Uint8Array?zt(r,t,e):Gt(r,t,e)}function ce(r,t=0){return r instanceof Uint8Array?$t(r,t):Ht(r,t)}var ue=class extends Error{name="InvalidMessageLengthError";code="ERR_INVALID_MSG_LENGTH"},he=class extends Error{name="InvalidDataLengthError";code="ERR_MSG_DATA_TOO_LONG"},le=class extends Error{name="InvalidDataLengthLengthError";code="ERR_MSG_LENGTH_TOO_LONG"};function K(r,t={}){let e=it(r,t);t.maxDataLength!=null&&t.maxLengthLength==null&&(t.maxLengthLength=M(t.maxDataLength));let n=t?.lengthDecoder??ce,o=t?.lengthEncoder??$;return{read:async i=>{let a=-1,c=new E;for(;;){c.append(await e.read(1,i));try{a=n(c)}catch(f){if(f instanceof RangeError)continue;throw f}if(a<0)throw new ue("Invalid message length");if(t?.maxLengthLength!=null&&c.byteLength>t.maxLengthLength)throw new le("message length length too long");if(a>-1)break}if(t?.maxDataLength!=null&&a>t.maxDataLength)throw new he("message length too long");return e.read(a,i)},write:async(i,a)=>{await e.write(new E(o(i.byteLength),i),a)},writeV:async(i,a)=>{let c=new E(...i.flatMap(f=>[o(f.byteLength),f]));await e.write(c,a)},unwrap:()=>e.unwrap()}}var Me={};D(Me,{base10:()=>Kt});var Pn=new Uint8Array(0);function at(r,t){if(r===t)return!0;if(r.byteLength!==t.byteLength)return!1;for(let e=0;e<r.byteLength;e++)if(r[e]!==t[e])return!1;return!0}function P(r){if(r instanceof Uint8Array&&r.constructor.name==="Uint8Array")return r;if(r instanceof ArrayBuffer)return new Uint8Array(r);if(ArrayBuffer.isView(r))return new Uint8Array(r.buffer,r.byteOffset,r.byteLength);throw new Error("Unknown type, must be binary type")}function ct(r){return new TextEncoder().encode(r)}function ft(r){return new TextDecoder().decode(r)}function jt(r,t){if(r.length>=255)throw new TypeError("Alphabet too long");for(var e=new Uint8Array(256),n=0;n<e.length;n++)e[n]=255;for(var o=0;o<r.length;o++){var s=r.charAt(o),i=s.charCodeAt(0);if(e[i]!==255)throw new TypeError(s+" is ambiguous");e[i]=o}var a=r.length,c=r.charAt(0),f=Math.log(a)/Math.log(256),d=Math.log(256)/Math.log(a);function u(h){if(h instanceof Uint8Array||(ArrayBuffer.isView(h)?h=new Uint8Array(h.buffer,h.byteOffset,h.byteLength):Array.isArray(h)&&(h=Uint8Array.from(h))),!(h instanceof Uint8Array))throw new TypeError("Expected Uint8Array");if(h.length===0)return"";for(var w=0,O=0,S=0,p=h.length;S!==p&&h[S]===0;)S++,w++;for(var y=(p-S)*d+1>>>0,m=new Uint8Array(y);S!==p;){for(var A=h[S],C=0,U=y-1;(A!==0||C<O)&&U!==-1;U--,C++)A+=256*m[U]>>>0,m[U]=A%a>>>0,A=A/a>>>0;if(A!==0)throw new Error("Non-zero carry");O=C,S++}for(var R=y-O;R!==y&&m[R]===0;)R++;for(var re=c.repeat(w);R<y;++R)re+=r.charAt(m[R]);return re}function b(h){if(typeof h!="string")throw new TypeError("Expected String");if(h.length===0)return new Uint8Array;var w=0;if(h[w]!==" "){for(var O=0,S=0;h[w]===c;)O++,w++;for(var p=(h.length-w)*f+1>>>0,y=new Uint8Array(p);h[w];){var m=e[h.charCodeAt(w)];if(m===255)return;for(var A=0,C=p-1;(m!==0||A<S)&&C!==-1;C--,A++)m+=a*y[C]>>>0,y[C]=m%256>>>0,m=m/256>>>0;if(m!==0)throw new Error("Non-zero carry");S=A,w++}if(h[w]!==" "){for(var U=p-S;U!==p&&y[U]===0;)U++;for(var R=new Uint8Array(O+(p-U)),re=O;U!==p;)R[re++]=y[U++];return R}}}function V(h){var w=b(h);if(w)return w;throw new Error(`Non-${t} character`)}return{encode:u,decodeUnsafe:b,decode:V}}var qt=jt,Xt=qt,ht=Xt;var Te=class{name;prefix;baseEncode;constructor(t,e,n){this.name=t,this.prefix=e,this.baseEncode=n}encode(t){if(t instanceof Uint8Array)return`${this.prefix}${this.baseEncode(t)}`;throw Error("Unknown type, must be binary type")}},Oe=class{name;prefix;baseDecode;prefixCodePoint;constructor(t,e,n){if(this.name=t,this.prefix=e,e.codePointAt(0)===void 0)throw new Error("Invalid prefix character");this.prefixCodePoint=e.codePointAt(0),this.baseDecode=n}decode(t){if(typeof t=="string"){if(t.codePointAt(0)!==this.prefixCodePoint)throw Error(`Unable to decode multibase string ${JSON.stringify(t)}, ${this.name} decoder only supports inputs prefixed with ${this.prefix}`);return this.baseDecode(t.slice(this.prefix.length))}else throw Error("Can only multibase decode strings")}or(t){return lt(this,t)}},Re=class{decoders;constructor(t){this.decoders=t}or(t){return lt(this,t)}decode(t){let e=t[0],n=this.decoders[e];if(n!=null)return n.decode(t);throw RangeError(`Unable to decode multibase string ${JSON.stringify(t)}, only inputs prefixed with ${Object.keys(this.decoders)} are supported`)}};function lt(r,t){return new Re({...r.decoders??{[r.prefix]:r},...t.decoders??{[t.prefix]:t}})}var Fe=class{name;prefix;baseEncode;baseDecode;encoder;decoder;constructor(t,e,n,o){this.name=t,this.prefix=e,this.baseEncode=n,this.baseDecode=o,this.encoder=new Te(t,e,n),this.decoder=new Oe(t,e,o)}encode(t){return this.encoder.encode(t)}decode(t){return this.decoder.decode(t)}};function H({name:r,prefix:t,encode:e,decode:n}){return new Fe(r,t,e,n)}function _({name:r,prefix:t,alphabet:e}){let{encode:n,decode:o}=ht(e,r);return H({prefix:t,name:r,encode:n,decode:s=>P(o(s))})}function Jt(r,t,e,n){let o={};for(let d=0;d<t.length;++d)o[t[d]]=d;let s=r.length;for(;r[s-1]==="=";)--s;let i=new Uint8Array(s*e/8|0),a=0,c=0,f=0;for(let d=0;d<s;++d){let u=o[r[d]];if(u===void 0)throw new SyntaxError(`Non-${n} character`);c=c<<e|u,a+=e,a>=8&&(a-=8,i[f++]=255&c>>a)}if(a>=e||255&c<<8-a)throw new SyntaxError("Unexpected end of data");return i}function Wt(r,t,e){let n=t[t.length-1]==="=",o=(1<<e)-1,s="",i=0,a=0;for(let c=0;c<r.length;++c)for(a=a<<8|r[c],i+=8;i>e;)i-=e,s+=t[o&a>>i];if(i!==0&&(s+=t[o&a<<e-i]),n)for(;s.length*e&7;)s+="=";return s}function g({name:r,prefix:t,bitsPerChar:e,alphabet:n}){return H({prefix:t,name:r,encode(o){return Wt(o,n,e)},decode(o){return Jt(o,n,e,r)}})}var Kt=_({prefix:"9",name:"base10",alphabet:"0123456789"});var Pe={};D(Pe,{base16:()=>Qt,base16upper:()=>Yt});var Qt=g({prefix:"f",name:"base16",alphabet:"0123456789abcdef",bitsPerChar:4}),Yt=g({prefix:"F",name:"base16upper",alphabet:"0123456789ABCDEF",bitsPerChar:4});var Ve={};D(Ve,{base2:()=>Zt});var Zt=g({prefix:"0",name:"base2",alphabet:"01",bitsPerChar:1});var _e={};D(_e,{base256emoji:()=>or});var dt=Array.from("\u{1F680}\u{1FA90}\u2604\u{1F6F0}\u{1F30C}\u{1F311}\u{1F312}\u{1F313}\u{1F314}\u{1F315}\u{1F316}\u{1F317}\u{1F318}\u{1F30D}\u{1F30F}\u{1F30E}\u{1F409}\u2600\u{1F4BB}\u{1F5A5}\u{1F4BE}\u{1F4BF}\u{1F602}\u2764\u{1F60D}\u{1F923}\u{1F60A}\u{1F64F}\u{1F495}\u{1F62D}\u{1F618}\u{1F44D}\u{1F605}\u{1F44F}\u{1F601}\u{1F525}\u{1F970}\u{1F494}\u{1F496}\u{1F499}\u{1F622}\u{1F914}\u{1F606}\u{1F644}\u{1F4AA}\u{1F609}\u263A\u{1F44C}\u{1F917}\u{1F49C}\u{1F614}\u{1F60E}\u{1F607}\u{1F339}\u{1F926}\u{1F389}\u{1F49E}\u270C\u2728\u{1F937}\u{1F631}\u{1F60C}\u{1F338}\u{1F64C}\u{1F60B}\u{1F497}\u{1F49A}\u{1F60F}\u{1F49B}\u{1F642}\u{1F493}\u{1F929}\u{1F604}\u{1F600}\u{1F5A4}\u{1F603}\u{1F4AF}\u{1F648}\u{1F447}\u{1F3B6}\u{1F612}\u{1F92D}\u2763\u{1F61C}\u{1F48B}\u{1F440}\u{1F62A}\u{1F611}\u{1F4A5}\u{1F64B}\u{1F61E}\u{1F629}\u{1F621}\u{1F92A}\u{1F44A}\u{1F973}\u{1F625}\u{1F924}\u{1F449}\u{1F483}\u{1F633}\u270B\u{1F61A}\u{1F61D}\u{1F634}\u{1F31F}\u{1F62C}\u{1F643}\u{1F340}\u{1F337}\u{1F63B}\u{1F613}\u2B50\u2705\u{1F97A}\u{1F308}\u{1F608}\u{1F918}\u{1F4A6}\u2714\u{1F623}\u{1F3C3}\u{1F490}\u2639\u{1F38A}\u{1F498}\u{1F620}\u261D\u{1F615}\u{1F33A}\u{1F382}\u{1F33B}\u{1F610}\u{1F595}\u{1F49D}\u{1F64A}\u{1F639}\u{1F5E3}\u{1F4AB}\u{1F480}\u{1F451}\u{1F3B5}\u{1F91E}\u{1F61B}\u{1F534}\u{1F624}\u{1F33C}\u{1F62B}\u26BD\u{1F919}\u2615\u{1F3C6}\u{1F92B}\u{1F448}\u{1F62E}\u{1F646}\u{1F37B}\u{1F343}\u{1F436}\u{1F481}\u{1F632}\u{1F33F}\u{1F9E1}\u{1F381}\u26A1\u{1F31E}\u{1F388}\u274C\u270A\u{1F44B}\u{1F630}\u{1F928}\u{1F636}\u{1F91D}\u{1F6B6}\u{1F4B0}\u{1F353}\u{1F4A2}\u{1F91F}\u{1F641}\u{1F6A8}\u{1F4A8}\u{1F92C}\u2708\u{1F380}\u{1F37A}\u{1F913}\u{1F619}\u{1F49F}\u{1F331}\u{1F616}\u{1F476}\u{1F974}\u25B6\u27A1\u2753\u{1F48E}\u{1F4B8}\u2B07\u{1F628}\u{1F31A}\u{1F98B}\u{1F637}\u{1F57A}\u26A0\u{1F645}\u{1F61F}\u{1F635}\u{1F44E}\u{1F932}\u{1F920}\u{1F927}\u{1F4CC}\u{1F535}\u{1F485}\u{1F9D0}\u{1F43E}\u{1F352}\u{1F617}\u{1F911}\u{1F30A}\u{1F92F}\u{1F437}\u260E\u{1F4A7}\u{1F62F}\u{1F486}\u{1F446}\u{1F3A4}\u{1F647}\u{1F351}\u2744\u{1F334}\u{1F4A3}\u{1F438}\u{1F48C}\u{1F4CD}\u{1F940}\u{1F922}\u{1F445}\u{1F4A1}\u{1F4A9}\u{1F450}\u{1F4F8}\u{1F47B}\u{1F910}\u{1F92E}\u{1F3BC}\u{1F975}\u{1F6A9}\u{1F34E}\u{1F34A}\u{1F47C}\u{1F48D}\u{1F4E3}\u{1F942}"),er=dt.reduce((r,t,e)=>(r[e]=t,r),[]),tr=dt.reduce((r,t,e)=>(r[t.codePointAt(0)]=e,r),[]);function rr(r){return r.reduce((t,e)=>(t+=er[e],t),"")}function nr(r){let t=[];for(let e of r){let n=tr[e.codePointAt(0)];if(n===void 0)throw new Error(`Non-base256emoji character: ${e}`);t.push(n)}return new Uint8Array(t)}var or=H({prefix:"\u{1F680}",name:"base256emoji",encode:rr,decode:nr});var Be={};D(Be,{base32:()=>j,base32hex:()=>cr,base32hexpad:()=>ur,base32hexpadupper:()=>hr,base32hexupper:()=>fr,base32pad:()=>ir,base32padupper:()=>ar,base32upper:()=>sr,base32z:()=>lr});var j=g({prefix:"b",name:"base32",alphabet:"abcdefghijklmnopqrstuvwxyz234567",bitsPerChar:5}),sr=g({prefix:"B",name:"base32upper",alphabet:"ABCDEFGHIJKLMNOPQRSTUVWXYZ234567",bitsPerChar:5}),ir=g({prefix:"c",name:"base32pad",alphabet:"abcdefghijklmnopqrstuvwxyz234567=",bitsPerChar:5}),ar=g({prefix:"C",name:"base32padupper",alphabet:"ABCDEFGHIJKLMNOPQRSTUVWXYZ234567=",bitsPerChar:5}),cr=g({prefix:"v",name:"base32hex",alphabet:"0123456789abcdefghijklmnopqrstuv",bitsPerChar:5}),fr=g({prefix:"V",name:"base32hexupper",alphabet:"0123456789ABCDEFGHIJKLMNOPQRSTUV",bitsPerChar:5}),ur=g({prefix:"t",name:"base32hexpad",alphabet:"0123456789abcdefghijklmnopqrstuv=",bitsPerChar:5}),hr=g({prefix:"T",name:"base32hexpadupper",alphabet:"0123456789ABCDEFGHIJKLMNOPQRSTUV=",bitsPerChar:5}),lr=g({prefix:"h",name:"base32z",alphabet:"ybndrfg8ejkmcpqxot1uwisza345h769",bitsPerChar:5});var ke={};D(ke,{base36:()=>dr,base36upper:()=>pr});var dr=_({prefix:"k",name:"base36",alphabet:"0123456789abcdefghijklmnopqrstuvwxyz"}),pr=_({prefix:"K",name:"base36upper",alphabet:"0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZ"});var ze={};D(ze,{base58btc:()=>T,base58flickr:()=>mr});var T=_({name:"base58btc",prefix:"z",alphabet:"123456789ABCDEFGHJKLMNPQRSTUVWXYZabcdefghijkmnopqrstuvwxyz"}),mr=_({name:"base58flickr",prefix:"Z",alphabet:"123456789abcdefghijkmnopqrstuvwxyzABCDEFGHJKLMNPQRSTUVWXYZ"});var Ge={};D(Ge,{base64:()=>gr,base64pad:()=>wr,base64url:()=>br,base64urlpad:()=>yr});var gr=g({prefix:"m",name:"base64",alphabet:"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/",bitsPerChar:6}),wr=g({prefix:"M",name:"base64pad",alphabet:"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/=",bitsPerChar:6}),br=g({prefix:"u",name:"base64url",alphabet:"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789-_",bitsPerChar:6}),yr=g({prefix:"U",name:"base64urlpad",alphabet:"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789-_=",bitsPerChar:6});var $e={};D($e,{base8:()=>xr});var xr=g({prefix:"7",name:"base8",alphabet:"01234567",bitsPerChar:3});var He={};D(He,{identity:()=>Er});var Er=H({prefix:"\0",name:"identity",encode:r=>ft(r),decode:r=>ct(r)});var Yn=new TextEncoder,Zn=new TextDecoder;var qe={};D(qe,{identity:()=>Hr});var Ar=gt,pt=128,Sr=127,Ur=~Sr,Dr=Math.pow(2,31);function gt(r,t,e){t=t||[],e=e||0;for(var n=e;r>=Dr;)t[e++]=r&255|pt,r/=128;for(;r&Ur;)t[e++]=r&255|pt,r>>>=7;return t[e]=r|0,gt.bytes=e-n+1,t}var Cr=je,Nr=128,mt=127;function je(r,n){var e=0,n=n||0,o=0,s=n,i,a=r.length;do{if(s>=a)throw je.bytes=0,new RangeError("Could not decode varint");i=r[s++],e+=o<28?(i&mt)<<o:(i&mt)*Math.pow(2,o),o+=7}while(i>=Nr);return je.bytes=s-n,e}var Ir=Math.pow(2,7),Tr=Math.pow(2,14),Or=Math.pow(2,21),Rr=Math.pow(2,28),Fr=Math.pow(2,35),Mr=Math.pow(2,42),Pr=Math.pow(2,49),Vr=Math.pow(2,56),_r=Math.pow(2,63),Br=function(r){return r<Ir?1:r<Tr?2:r<Or?3:r<Rr?4:r<Fr?5:r<Mr?6:r<Pr?7:r<Vr?8:r<_r?9:10},kr={encode:Ar,decode:Cr,encodingLength:Br},zr=kr,Q=zr;function Y(r,t=0){return[Q.decode(r,t),Q.decode.bytes]}function q(r,t,e=0){return Q.encode(r,t,e),t}function X(r){return Q.encodingLength(r)}function k(r,t){let e=t.byteLength,n=X(r),o=n+X(e),s=new Uint8Array(o+e);return q(r,s,0),q(e,s,n),s.set(t,o),new J(r,e,t,s)}function wt(r){let t=P(r),[e,n]=Y(t),[o,s]=Y(t.subarray(n)),i=t.subarray(n+s);if(i.byteLength!==o)throw new Error("Incorrect length");return new J(e,o,i,t)}function bt(r,t){if(r===t)return!0;{let e=t;return r.code===e.code&&r.size===e.size&&e.bytes instanceof Uint8Array&&at(r.bytes,e.bytes)}}var J=class{code;size;digest;bytes;constructor(t,e,n,o){this.code=t,this.size=e,this.digest=n,this.bytes=o}};var yt=0,Gr="identity",xt=P;function $r(r){return k(yt,xt(r))}var Hr={code:yt,name:Gr,encode:xt,digest:$r};var We={};D(We,{sha256:()=>jr,sha512:()=>qr});function Je({name:r,code:t,encode:e}){return new Xe(r,t,e)}var Xe=class{name;code;encode;constructor(t,e,n){this.name=t,this.code=e,this.encode=n}digest(t){if(t instanceof Uint8Array){let e=this.encode(t);return e instanceof Uint8Array?k(this.code,e):e.then(n=>k(this.code,n))}else throw Error("Unknown type, must be binary type")}};function Lt(r){return async t=>new Uint8Array(await crypto.subtle.digest(r,t))}var jr=Je({name:"sha2-256",code:18,encode:Lt("SHA-256")}),qr=Je({name:"sha2-512",code:19,encode:Lt("SHA-512")});function vt(r,t){let{bytes:e,version:n}=r;switch(n){case 0:return Jr(e,Ke(r),t??T.encoder);default:return Wr(e,Ke(r),t??j.encoder)}}var At=new WeakMap;function Ke(r){let t=At.get(r);if(t==null){let e=new Map;return At.set(r,e),e}return t}var pe=class r{code;version;multihash;bytes;"/";constructor(t,e,n,o){this.code=e,this.version=t,this.multihash=n,this.bytes=o,this["/"]=o}get asCID(){return this}get byteOffset(){return this.bytes.byteOffset}get byteLength(){return this.bytes.byteLength}toV0(){switch(this.version){case 0:return this;case 1:{let{code:t,multihash:e}=this;if(t!==ee)throw new Error("Cannot convert a non dag-pb CID to CIDv0");if(e.code!==Kr)throw new Error("Cannot convert non sha2-256 multihash CID to CIDv0");return r.createV0(e)}default:throw Error(`Can not convert CID version ${this.version} to version 0. This is a bug please report`)}}toV1(){switch(this.version){case 0:{let{code:t,digest:e}=this.multihash,n=k(t,e);return r.createV1(this.code,n)}case 1:return this;default:throw Error(`Can not convert CID version ${this.version} to version 1. This is a bug please report`)}}equals(t){return r.equals(this,t)}static equals(t,e){let n=e;return n!=null&&t.code===n.code&&t.version===n.version&&bt(t.multihash,n.multihash)}toString(t){return vt(this,t)}toJSON(){return{"/":vt(this)}}link(){return this}[Symbol.toStringTag]="CID";[Symbol.for("nodejs.util.inspect.custom")](){return`CID(${this.toString()})`}static asCID(t){if(t==null)return null;let e=t;if(e instanceof r)return e;if(e["/"]!=null&&e["/"]===e.bytes||e.asCID===e){let{version:n,code:o,multihash:s,bytes:i}=e;return new r(n,o,s,i??St(n,o,s.bytes))}else if(e[Qr]===!0){let{version:n,multihash:o,code:s}=e,i=wt(o);return r.create(n,s,i)}else return null}static create(t,e,n){if(typeof e!="number")throw new Error("String codecs are no longer supported");if(!(n.bytes instanceof Uint8Array))throw new Error("Invalid digest");switch(t){case 0:{if(e!==ee)throw new Error(`Version 0 CID must use dag-pb (code: ${ee}) block encoding`);return new r(t,e,n,n.bytes)}case 1:{let o=St(t,e,n.bytes);return new r(t,e,n,o)}default:throw new Error("Invalid version")}}static createV0(t){return r.create(0,ee,t)}static createV1(t,e){return r.create(1,t,e)}static decode(t){let[e,n]=r.decodeFirst(t);if(n.length!==0)throw new Error("Incorrect length");return e}static decodeFirst(t){let e=r.inspectBytes(t),n=e.size-e.multihashSize,o=P(t.subarray(n,n+e.multihashSize));if(o.byteLength!==e.multihashSize)throw new Error("Incorrect length");let s=o.subarray(e.multihashSize-e.digestSize),i=new J(e.multihashCode,e.digestSize,s,o);return[e.version===0?r.createV0(i):r.createV1(e.codec,i),t.subarray(e.size)]}static inspectBytes(t){let e=0,n=()=>{let[u,b]=Y(t.subarray(e));return e+=b,u},o=n(),s=ee;if(o===18?(o=0,e=0):s=n(),o!==0&&o!==1)throw new RangeError(`Invalid CID version ${o}`);let i=e,a=n(),c=n(),f=e+c,d=f-i;return{version:o,codec:s,multihashCode:a,digestSize:c,multihashSize:d,size:f}}static parse(t,e){let[n,o]=Xr(t,e),s=r.decode(o);if(s.version===0&&t[0]!=="Q")throw Error("Version 0 CID string must not include multibase prefix");return Ke(s).set(n,t),s}};function Xr(r,t){switch(r[0]){case"Q":{let e=t??T;return[T.prefix,e.decode(`${T.prefix}${r}`)]}case T.prefix:{let e=t??T;return[T.prefix,e.decode(r)]}case j.prefix:{let e=t??j;return[j.prefix,e.decode(r)]}default:{if(t==null)throw Error("To parse non base32 or base58btc encoded CID multibase decoder must be provided");return[r[0],t.decode(r)]}}}function Jr(r,t,e){let{prefix:n}=e;if(n!==T.prefix)throw Error(`Cannot string encode V0 in ${e.name} encoding`);let o=t.get(n);if(o==null){let s=e.encode(r).slice(1);return t.set(n,s),s}else return o}function Wr(r,t,e){let{prefix:n}=e,o=t.get(n);if(o==null){let s=e.encode(r);return t.set(n,s),s}else return o}var ee=112,Kr=18;function St(r,t,e){let n=X(r),o=n+X(t),s=new Uint8Array(o+e.byteLength);return q(r,s,0),q(t,s,n),s.set(e,o),s}var Qr=Symbol.for("@ipld/js-cid/CID");var Qe={...He,...Ve,...$e,...Me,...Pe,...Be,...ke,...ze,...Ge,..._e},Eo={...We,...qe};function Dt(r,t,e,n){return{name:r,prefix:t,encoder:{name:r,prefix:t,encode:e},decoder:{decode:n}}}var Ut=Dt("utf8","u",r=>"u"+new TextDecoder("utf8").decode(r),r=>new TextEncoder().encode(r.substring(1))),Ye=Dt("ascii","a",r=>{let t="a";for(let e=0;e<r.length;e++)t+=String.fromCharCode(r[e]);return t},r=>{r=r.substring(1);let t=N(r.length);for(let e=0;e<r.length;e++)t[e]=r.charCodeAt(e);return t}),Yr={utf8:Ut,"utf-8":Ut,hex:Qe.base16,latin1:Ye,ascii:Ye,binary:Ye,...Qe},me=Yr;function v(r,t="utf8"){let e=me[t];if(e==null)throw new Error(`Unsupported encoding "${t}"`);return e.decoder.decode(`${e.prefix}${r}`)}function Ct(r,t="utf8"){let e=me[t];if(e==null)throw new Error(`Unsupported encoding "${t}"`);return e.encoder.encode(r).substring(1)}var Zr=v(`
|
|
3
|
+
`);async function z(r,t,e){await r.write(t,e)}async function Nt(r,t,e){await r.writeV(t,e)}async function en(r,t){let e=await r.read(t);if(e.byteLength===0||e.get(e.byteLength-1)!==Zr[0])throw t.log.error("Invalid mss message - missing newline",e),new ne("Missing newline");return e.sublist(0,-1)}async function B(r,t){let e=await en(r,t);return Ct(e.subarray())}async function Tt(r,t,e){if(t=Array.isArray(t)?[...t]:[t],t.length===1&&e.negotiateFully===!1)return tn(r,t[0],e);let n=K(r,{...e,maxDataLength:1024}),o=t.shift();if(o==null)throw new Error("At least one protocol must be specified");e.log.trace('select: write ["%s", "%s"]',x,o);let s=v(`${x}
|
|
4
|
+
`),i=v(`${o}
|
|
5
|
+
`);await Nt(n,[s,i],e),e.log.trace("select: reading multistream-select header");let a=await B(n,e);if(e.log.trace('select: read "%s"',a),a===x&&(e.log.trace("select: reading protocol response"),a=await B(n,e),e.log.trace('select: read "%s"',a)),a===o)return{stream:n.unwrap(),protocol:o};for(let c of t){e.log.trace('select: write "%s"',c),await z(n,v(`${c}
|
|
6
|
+
`),e),e.log.trace("select: reading protocol response");let f=await B(n,e);if(e.log.trace('select: read "%s" for "%s"',f,c),f===c)return{stream:n.unwrap(),protocol:c}}throw new W("protocol selection failed")}function tn(r,t,e){let n=r.sink.bind(r),o=r.source,s=!1,i=!1,a=I(),c=!1,f=!1,d=I(),u=!1,b=!1,V=I(),h=K({sink:n,source:o},{...e,maxDataLength:1024});r.sink=async p=>{let{sink:y}=h.unwrap();await y(async function*(){let m=!1;for await(let A of p){if(f&&await d.promise,c)yield A;else{f=!0,e.log.trace('optimistic: write ["%s", "%s", data(%d)] in sink',x,t,A.byteLength);let C=`${t}
|
|
7
|
+
`;yield new E(Uint8Array.from([19]),v(`${x}
|
|
8
|
+
`),$(C.length),v(C),A).subarray(),e.log.trace('optimistic: wrote ["%s", "%s", data(%d)] in sink',x,t,A.byteLength),c=!0,f=!1,d.resolve(),w().catch(U=>{e.log.error("could not finish optimistic protocol negotiation of %s",t,U)})}m=!0}m||await w()}())};async function w(){if(i){e.log.trace("optimistic: already negotiating %s stream",t),await a.promise;return}i=!0;try{c||(e.log.trace("optimistic: doing send protocol for %s stream",t),await O()),u||(e.log.trace("optimistic: doing read protocol for %s stream",t),await S())}finally{i=!1,s=!0,a.resolve()}}async function O(){if(f){await d.promise;return}f=!0;try{e.log.trace('optimistic: write ["%s", "%s", data] in source',x,t),await h.writeV([v(`${x}
|
|
9
|
+
`),v(`${t}
|
|
10
|
+
`)]),e.log.trace('optimistic: wrote ["%s", "%s", data] in source',x,t)}finally{c=!0,f=!1,d.resolve()}}async function S(){if(b){await V.promise;return}b=!0;try{e.log.trace("optimistic: reading multistream select header");let p=await B(h,e);if(e.log.trace('optimistic: read multistream select header "%s"',p),p===x&&(p=await B(h,e)),e.log.trace('optimistic: read protocol "%s", expecting "%s"',p,t),p!==t)throw new W("protocol selection failed")}finally{u=!0,b=!1,V.resolve()}}if(r.source=async function*(){await w(),e.log.trace('optimistic: reading data from "%s" stream',t),yield*h.unwrap().source}(),r.closeRead!=null){let p=r.closeRead.bind(r);r.closeRead=async y=>{s||await w().catch(m=>{e.log.error("could not negotiate protocol before close read",m)}),await p(y)}}if(r.closeWrite!=null){let p=r.closeWrite.bind(r);r.closeWrite=async y=>{s||await w().catch(m=>{e.log.error("could not negotiate protocol before close write",m)}),await p(y)}}if(r.close!=null){let p=r.close.bind(r);r.close=async y=>{let m=[];f&&m.push(d.promise),b&&m.push(V.promise),m.length>0?await se(Promise.all(m),y?.signal):(s=!0,i=!1,a.resolve()),await p(y)}}return{stream:r,protocol:t}}function ge(r){return r[Symbol.asyncIterator]!=null}var we=r=>{let t=M(r),e=N(t);return $(r,e),we.bytes=t,e};we.bytes=0;function be(r,t){t=t??{};let e=t.lengthEncoder??we;function*n(o){let s=e(o.byteLength);s instanceof Uint8Array?yield s:yield*s,o instanceof Uint8Array?yield o:yield*o}return ge(r)?async function*(){for await(let o of r)yield*n(o)}():function*(){for(let o of r)yield*n(o)}()}be.single=(r,t)=>{t=t??{};let e=t.lengthEncoder??we;return new E(e(r.byteLength),r)};var ye=class extends Error{name="InvalidMessageLengthError";code="ERR_INVALID_MSG_LENGTH"},xe=class extends Error{name="InvalidDataLengthError";code="ERR_MSG_DATA_TOO_LONG"},Ee=class extends Error{name="InvalidDataLengthLengthError";code="ERR_MSG_LENGTH_TOO_LONG"},te=class extends Error{name="UnexpectedEOFError";code="ERR_UNEXPECTED_EOF"};var rn=8,nn=1024*1024*4,G;(function(r){r[r.LENGTH=0]="LENGTH",r[r.DATA=1]="DATA"})(G||(G={}));var tt=r=>{let t=ce(r);return tt.bytes=M(t),t};tt.bytes=0;function et(r,t){let e=new E,n=G.LENGTH,o=-1,s=t?.lengthDecoder??tt,i=t?.maxLengthLength??rn,a=t?.maxDataLength??nn;function*c(){for(;e.byteLength>0;){if(n===G.LENGTH)try{if(o=s(e),o<0)throw new ye("Invalid message length");if(o>a)throw new xe("Message length too long");let f=s.bytes;e.consume(f),t?.onLength!=null&&t.onLength(o),n=G.DATA}catch(f){if(f instanceof RangeError){if(e.byteLength>i)throw new Ee("Message length length too long");break}throw f}if(n===G.DATA){if(e.byteLength<o)break;let f=e.sublist(0,o);e.consume(o),t?.onData!=null&&t.onData(f),yield f,n=G.LENGTH}}}return ge(r)?async function*(){for await(let f of r)e.append(f),yield*c();if(e.byteLength>0)throw new te("Unexpected end of input")}():function*(){for(let f of r)e.append(f),yield*c();if(e.byteLength>0)throw new te("Unexpected end of input")}()}et.fromReader=(r,t)=>{let e=1,n=async function*(){for(;;)try{let{done:s,value:i}=await r.next(e);if(s===!0)return;i!=null&&(yield i)}catch(s){if(s.code==="ERR_UNDER_READ")return{done:!0,value:null};throw s}finally{e=1}}();return et(n,{...t??{},onLength:s=>{e=s}})};async function Ot(r,t,e){t=Array.isArray(t)?t:[t],e.log.trace("handle: available protocols %s",t);let n=K(r,{...e,maxDataLength:1024,maxLengthLength:2});for(;;){e.log.trace("handle: reading incoming string");let o=await B(n,e);if(e.log.trace('handle: read "%s"',o),o===x){e.log.trace('handle: respond with "%s" for "%s"',x,o),await z(n,v(`${x}
|
|
11
|
+
`),e),e.log.trace('handle: responded with "%s" for "%s"',x,o);continue}if(t.includes(o))return e.log.trace('handle: respond with "%s" for "%s"',o,o),await z(n,v(`${o}
|
|
12
|
+
`),e),e.log.trace('handle: responded with "%s" for "%s"',o,o),{stream:n.unwrap(),protocol:o};if(o==="ls"){let s=new E(...t.map(i=>be.single(v(`${i}
|
|
13
|
+
`))),v(`
|
|
14
|
+
`));e.log.trace('handle: respond with "%s" for %s',t,o),await z(n,s,e),e.log.trace('handle: responded with "%s" for %s',t,o);continue}e.log('handle: respond with "na" for "%s"',o),await z(n,v(`na
|
|
15
|
+
`),e),e.log('handle: responded with "na" for "%s"',o)}}return Vt(on);})();
|
|
16
16
|
return Libp2PMultistreamSelect}));
|
package/dist/src/multistream.js
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import {
|
|
1
|
+
import { InvalidMessageError } from '@libp2p/interface';
|
|
2
2
|
import {} from 'uint8arraylist';
|
|
3
3
|
import { fromString as uint8ArrayFromString } from 'uint8arrays/from-string';
|
|
4
4
|
import { toString as uint8ArrayToString } from 'uint8arrays/to-string';
|
|
@@ -22,7 +22,7 @@ export async function read(reader, options) {
|
|
|
22
22
|
const buf = await reader.read(options);
|
|
23
23
|
if (buf.byteLength === 0 || buf.get(buf.byteLength - 1) !== NewLine[0]) {
|
|
24
24
|
options.log.error('Invalid mss message - missing newline', buf);
|
|
25
|
-
throw new
|
|
25
|
+
throw new InvalidMessageError('Missing newline');
|
|
26
26
|
}
|
|
27
27
|
return buf.sublist(0, -1); // Remove newline
|
|
28
28
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"multistream.js","sourceRoot":"","sources":["../../src/multistream.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,
|
|
1
|
+
{"version":3,"file":"multistream.js","sourceRoot":"","sources":["../../src/multistream.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,mBAAmB,EAAE,MAAM,mBAAmB,CAAA;AACvD,OAAO,EAAuB,MAAM,gBAAgB,CAAA;AACpD,OAAO,EAAE,UAAU,IAAI,oBAAoB,EAAE,MAAM,yBAAyB,CAAA;AAC5E,OAAO,EAAE,QAAQ,IAAI,kBAAkB,EAAE,MAAM,uBAAuB,CAAA;AAKtE,MAAM,OAAO,GAAG,oBAAoB,CAAC,IAAI,CAAC,CAAA;AAE1C;;GAEG;AACH,MAAM,CAAC,KAAK,UAAU,KAAK,CAAE,MAAqG,EAAE,MAAmC,EAAE,OAAsB;IAC7L,MAAM,MAAM,CAAC,KAAK,CAAC,MAAM,EAAE,OAAO,CAAC,CAAA;AACrC,CAAC;AAED;;GAEG;AACH,MAAM,CAAC,KAAK,UAAU,QAAQ,CAAE,MAAqG,EAAE,OAAqB,EAAE,OAAsB;IAClL,MAAM,MAAM,CAAC,MAAM,CAAC,OAAO,EAAE,OAAO,CAAC,CAAA;AACvC,CAAC;AAED;;GAEG;AACH,MAAM,CAAC,KAAK,UAAU,IAAI,CAAE,MAAqG,EAAE,OAAqC;IACtK,MAAM,GAAG,GAAG,MAAM,MAAM,CAAC,IAAI,CAAC,OAAO,CAAC,CAAA;IAEtC,IAAI,GAAG,CAAC,UAAU,KAAK,CAAC,IAAI,GAAG,CAAC,GAAG,CAAC,GAAG,CAAC,UAAU,GAAG,CAAC,CAAC,KAAK,OAAO,CAAC,CAAC,CAAC,EAAE,CAAC;QACvE,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,uCAAuC,EAAE,GAAG,CAAC,CAAA;QAC/D,MAAM,IAAI,mBAAmB,CAAC,iBAAiB,CAAC,CAAA;IAClD,CAAC;IAED,OAAO,GAAG,CAAC,OAAO,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAA,CAAC,iBAAiB;AAC7C,CAAC;AAED;;GAEG;AACH,MAAM,CAAC,KAAK,UAAU,UAAU,CAAE,MAAqG,EAAE,OAAqC;IAC5K,MAAM,GAAG,GAAG,MAAM,IAAI,CAAC,MAAM,EAAE,OAAO,CAAC,CAAA;IAEvC,OAAO,kBAAkB,CAAC,GAAG,CAAC,QAAQ,EAAE,CAAC,CAAA;AAC3C,CAAC"}
|
package/dist/src/select.js
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import {
|
|
1
|
+
import { UnsupportedProtocolError } from '@libp2p/interface';
|
|
2
2
|
import { lpStream } from 'it-length-prefixed-stream';
|
|
3
3
|
import pDefer from 'p-defer';
|
|
4
4
|
import { raceSignal } from 'race-signal';
|
|
@@ -92,7 +92,7 @@ export async function select(stream, protocols, options) {
|
|
|
92
92
|
return { stream: lp.unwrap(), protocol };
|
|
93
93
|
}
|
|
94
94
|
}
|
|
95
|
-
throw new
|
|
95
|
+
throw new UnsupportedProtocolError('protocol selection failed');
|
|
96
96
|
}
|
|
97
97
|
/**
|
|
98
98
|
* Optimistically negotiates a protocol.
|
|
@@ -220,7 +220,7 @@ function optimisticSelect(stream, protocol, options) {
|
|
|
220
220
|
}
|
|
221
221
|
options.log.trace('optimistic: read protocol "%s", expecting "%s"', response, protocol);
|
|
222
222
|
if (response !== protocol) {
|
|
223
|
-
throw new
|
|
223
|
+
throw new UnsupportedProtocolError('protocol selection failed');
|
|
224
224
|
}
|
|
225
225
|
}
|
|
226
226
|
finally {
|
package/dist/src/select.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"select.js","sourceRoot":"","sources":["../../src/select.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,
|
|
1
|
+
{"version":3,"file":"select.js","sourceRoot":"","sources":["../../src/select.ts"],"names":[],"mappings":"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"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@libp2p/multistream-select",
|
|
3
|
-
"version": "
|
|
3
|
+
"version": "6.0.0-18dd3cb26",
|
|
4
4
|
"description": "JavaScript implementation of multistream-select",
|
|
5
5
|
"license": "Apache-2.0 OR MIT",
|
|
6
6
|
"homepage": "https://github.com/libp2p/js-libp2p/tree/main/packages/multistream-select#readme",
|
|
@@ -58,7 +58,7 @@
|
|
|
58
58
|
"test:electron-main": "aegir test -t electron-main"
|
|
59
59
|
},
|
|
60
60
|
"dependencies": {
|
|
61
|
-
"@libp2p/interface": "
|
|
61
|
+
"@libp2p/interface": "2.0.0-18dd3cb26",
|
|
62
62
|
"it-length-prefixed": "^9.0.4",
|
|
63
63
|
"it-length-prefixed-stream": "^1.1.7",
|
|
64
64
|
"it-stream-types": "^2.0.1",
|
|
@@ -69,7 +69,7 @@
|
|
|
69
69
|
"uint8arrays": "^5.1.0"
|
|
70
70
|
},
|
|
71
71
|
"devDependencies": {
|
|
72
|
-
"@libp2p/logger": "
|
|
72
|
+
"@libp2p/logger": "5.0.0-18dd3cb26",
|
|
73
73
|
"aegir": "^44.0.1",
|
|
74
74
|
"iso-random-stream": "^2.0.2",
|
|
75
75
|
"it-all": "^3.0.6",
|
package/src/multistream.ts
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import {
|
|
1
|
+
import { InvalidMessageError } from '@libp2p/interface'
|
|
2
2
|
import { type Uint8ArrayList } from 'uint8arraylist'
|
|
3
3
|
import { fromString as uint8ArrayFromString } from 'uint8arrays/from-string'
|
|
4
4
|
import { toString as uint8ArrayToString } from 'uint8arrays/to-string'
|
|
@@ -30,7 +30,7 @@ export async function read (reader: LengthPrefixedStream<Duplex<AsyncGenerator<U
|
|
|
30
30
|
|
|
31
31
|
if (buf.byteLength === 0 || buf.get(buf.byteLength - 1) !== NewLine[0]) {
|
|
32
32
|
options.log.error('Invalid mss message - missing newline', buf)
|
|
33
|
-
throw new
|
|
33
|
+
throw new InvalidMessageError('Missing newline')
|
|
34
34
|
}
|
|
35
35
|
|
|
36
36
|
return buf.sublist(0, -1) // Remove newline
|
package/src/select.ts
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import {
|
|
1
|
+
import { UnsupportedProtocolError } from '@libp2p/interface'
|
|
2
2
|
import { lpStream } from 'it-length-prefixed-stream'
|
|
3
3
|
import pDefer from 'p-defer'
|
|
4
4
|
import { raceSignal } from 'race-signal'
|
|
@@ -113,7 +113,7 @@ export async function select <Stream extends SelectStream> (stream: Stream, prot
|
|
|
113
113
|
}
|
|
114
114
|
}
|
|
115
115
|
|
|
116
|
-
throw new
|
|
116
|
+
throw new UnsupportedProtocolError('protocol selection failed')
|
|
117
117
|
}
|
|
118
118
|
|
|
119
119
|
/**
|
|
@@ -273,7 +273,7 @@ function optimisticSelect <Stream extends SelectStream> (stream: Stream, protoco
|
|
|
273
273
|
options.log.trace('optimistic: read protocol "%s", expecting "%s"', response, protocol)
|
|
274
274
|
|
|
275
275
|
if (response !== protocol) {
|
|
276
|
-
throw new
|
|
276
|
+
throw new UnsupportedProtocolError('protocol selection failed')
|
|
277
277
|
}
|
|
278
278
|
} finally {
|
|
279
279
|
readProtocol = true
|
package/dist/typedoc-urls.json
DELETED
|
@@ -1,9 +0,0 @@
|
|
|
1
|
-
{
|
|
2
|
-
"MultistreamSelectInit": "https://libp2p.github.io/js-libp2p/interfaces/_libp2p_multistream_select.MultistreamSelectInit.html",
|
|
3
|
-
".:MultistreamSelectInit": "https://libp2p.github.io/js-libp2p/interfaces/_libp2p_multistream_select.MultistreamSelectInit.html",
|
|
4
|
-
"ProtocolStream": "https://libp2p.github.io/js-libp2p/interfaces/_libp2p_multistream_select.ProtocolStream.html",
|
|
5
|
-
".:ProtocolStream": "https://libp2p.github.io/js-libp2p/interfaces/_libp2p_multistream_select.ProtocolStream.html",
|
|
6
|
-
"PROTOCOL_ID": "https://libp2p.github.io/js-libp2p/variables/_libp2p_multistream_select.PROTOCOL_ID.html",
|
|
7
|
-
"handle": "https://libp2p.github.io/js-libp2p/functions/_libp2p_multistream_select.handle.html",
|
|
8
|
-
"select": "https://libp2p.github.io/js-libp2p/functions/_libp2p_multistream_select.select.html"
|
|
9
|
-
}
|