@libp2p/multistream-select 3.1.3 → 3.1.5

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 CHANGED
@@ -1,4 +1,4 @@
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 Qt=Object.create;var me=Object.defineProperty;var Zt=Object.getOwnPropertyDescriptor;var Yt=Object.getOwnPropertyNames;var er=Object.getPrototypeOf,tr=Object.prototype.hasOwnProperty;var be=(r,e)=>()=>(e||r((e={exports:{}}).exports,e),e.exports),L=(r,e)=>{for(var t in e)me(r,t,{get:e[t],enumerable:!0})},nt=(r,e,t,n)=>{if(e&&typeof e=="object"||typeof e=="function")for(let o of Yt(e))!tr.call(r,o)&&o!==t&&me(r,o,{get:()=>e[o],enumerable:!(n=Zt(e,o))||n.enumerable});return r};var ot=(r,e,t)=>(t=r!=null?Qt(er(r)):{},nt(e||!r||!r.__esModule?me(t,"default",{value:r,enumerable:!0}):t,r)),rr=r=>nt(me({},"__esModule",{value:!0}),r);var it=be((Xn,st)=>{var Q=1e3,Z=Q*60,Y=Z*60,G=Y*24,nr=G*7,or=G*365.25;st.exports=function(r,e){e=e||{};var t=typeof r;if(t==="string"&&r.length>0)return sr(r);if(t==="number"&&isFinite(r))return e.long?ar(r):ir(r);throw new Error("val is not a non-empty string or a valid number. val="+JSON.stringify(r))};function sr(r){if(r=String(r),!(r.length>100)){var e=/^(-?(?:\d+)?\.?\d+) *(milliseconds?|msecs?|ms|seconds?|secs?|s|minutes?|mins?|m|hours?|hrs?|h|days?|d|weeks?|w|years?|yrs?|y)?$/i.exec(r);if(e){var t=parseFloat(e[1]),n=(e[2]||"ms").toLowerCase();switch(n){case"years":case"year":case"yrs":case"yr":case"y":return t*or;case"weeks":case"week":case"w":return t*nr;case"days":case"day":case"d":return t*G;case"hours":case"hour":case"hrs":case"hr":case"h":return t*Y;case"minutes":case"minute":case"mins":case"min":case"m":return t*Z;case"seconds":case"second":case"secs":case"sec":case"s":return t*Q;case"milliseconds":case"millisecond":case"msecs":case"msec":case"ms":return t;default:return}}}}function ir(r){var e=Math.abs(r);return e>=G?Math.round(r/G)+"d":e>=Y?Math.round(r/Y)+"h":e>=Z?Math.round(r/Z)+"m":e>=Q?Math.round(r/Q)+"s":r+"ms"}function ar(r){var e=Math.abs(r);return e>=G?ge(r,e,G,"day"):e>=Y?ge(r,e,Y,"hour"):e>=Z?ge(r,e,Z,"minute"):e>=Q?ge(r,e,Q,"second"):r+" ms"}function ge(r,e,t,n){var o=e>=t*1.5;return Math.round(r/t)+" "+n+(o?"s":"")}});var ct=be((Wn,at)=>{function cr(r){t.debug=t,t.default=t,t.coerce=l,t.disable=s,t.enable=o,t.enabled=i,t.humanize=it(),t.destroy=p,Object.keys(r).forEach(a=>{t[a]=r[a]}),t.names=[],t.skips=[],t.formatters={};function e(a){let u=0;for(let h=0;h<a.length;h++)u=(u<<5)-u+a.charCodeAt(h),u|=0;return t.colors[Math.abs(u)%t.colors.length]}t.selectColor=e;function t(a){let u,h=null,A,d;function f(...m){if(!f.enabled)return;let g=f,x=Number(new Date),F=x-(u||x);g.diff=F,g.prev=u,g.curr=x,u=x,m[0]=t.coerce(m[0]),typeof m[0]!="string"&&m.unshift("%O");let C=0;m[0]=m[0].replace(/%([a-zA-Z%])/g,(T,E)=>{if(T==="%%")return"%";C++;let O=t.formatters[E];if(typeof O=="function"){let K=m[C];T=O.call(g,K),m.splice(C,1),C--}return T}),t.formatArgs.call(g,m),(g.log||t.log).apply(g,m)}return f.namespace=a,f.useColors=t.useColors(),f.color=t.selectColor(a),f.extend=n,f.destroy=t.destroy,Object.defineProperty(f,"enabled",{enumerable:!0,configurable:!1,get:()=>h!==null?h:(A!==t.namespaces&&(A=t.namespaces,d=t.enabled(a)),d),set:m=>{h=m}}),typeof t.init=="function"&&t.init(f),f}function n(a,u){let h=t(this.namespace+(typeof u>"u"?":":u)+a);return h.log=this.log,h}function o(a){t.save(a),t.namespaces=a,t.names=[],t.skips=[];let u,h=(typeof a=="string"?a:"").split(/[\s,]+/),A=h.length;for(u=0;u<A;u++)h[u]&&(a=h[u].replace(/\*/g,".*?"),a[0]==="-"?t.skips.push(new RegExp("^"+a.slice(1)+"$")):t.names.push(new RegExp("^"+a+"$")))}function s(){let a=[...t.names.map(c),...t.skips.map(c).map(u=>"-"+u)].join(",");return t.enable(""),a}function i(a){if(a[a.length-1]==="*")return!0;let u,h;for(u=0,h=t.skips.length;u<h;u++)if(t.skips[u].test(a))return!1;for(u=0,h=t.names.length;u<h;u++)if(t.names[u].test(a))return!0;return!1}function c(a){return a.toString().substring(2,a.toString().length-2).replace(/\.\*\?$/,"*")}function l(a){return a instanceof Error?a.stack||a.message:a}function p(){console.warn("Instance method `debug.destroy()` is deprecated and no longer does anything. It will be removed in the next major version of `debug`.")}return t.enable(t.load()),t}at.exports=cr});var ut=be((v,we)=>{v.formatArgs=fr;v.save=lr;v.load=hr;v.useColors=ur;v.storage=dr();v.destroy=(()=>{let r=!1;return()=>{r||(r=!0,console.warn("Instance method `debug.destroy()` is deprecated and no longer does anything. It will be removed in the next major version of `debug`."))}})();v.colors=["#0000CC","#0000FF","#0033CC","#0033FF","#0066CC","#0066FF","#0099CC","#0099FF","#00CC00","#00CC33","#00CC66","#00CC99","#00CCCC","#00CCFF","#3300CC","#3300FF","#3333CC","#3333FF","#3366CC","#3366FF","#3399CC","#3399FF","#33CC00","#33CC33","#33CC66","#33CC99","#33CCCC","#33CCFF","#6600CC","#6600FF","#6633CC","#6633FF","#66CC00","#66CC33","#9900CC","#9900FF","#9933CC","#9933FF","#99CC00","#99CC33","#CC0000","#CC0033","#CC0066","#CC0099","#CC00CC","#CC00FF","#CC3300","#CC3333","#CC3366","#CC3399","#CC33CC","#CC33FF","#CC6600","#CC6633","#CC9900","#CC9933","#CCCC00","#CCCC33","#FF0000","#FF0033","#FF0066","#FF0099","#FF00CC","#FF00FF","#FF3300","#FF3333","#FF3366","#FF3399","#FF33CC","#FF33FF","#FF6600","#FF6633","#FF9900","#FF9933","#FFCC00","#FFCC33"];function ur(){return typeof window<"u"&&window.process&&(window.process.type==="renderer"||window.process.__nwjs)?!0:typeof navigator<"u"&&navigator.userAgent&&navigator.userAgent.toLowerCase().match(/(edge|trident)\/(\d+)/)?!1:typeof document<"u"&&document.documentElement&&document.documentElement.style&&document.documentElement.style.WebkitAppearance||typeof window<"u"&&window.console&&(window.console.firebug||window.console.exception&&window.console.table)||typeof navigator<"u"&&navigator.userAgent&&navigator.userAgent.toLowerCase().match(/firefox\/(\d+)/)&&parseInt(RegExp.$1,10)>=31||typeof navigator<"u"&&navigator.userAgent&&navigator.userAgent.toLowerCase().match(/applewebkit\/(\d+)/)}function fr(r){if(r[0]=(this.useColors?"%c":"")+this.namespace+(this.useColors?" %c":" ")+r[0]+(this.useColors?"%c ":" ")+"+"+we.exports.humanize(this.diff),!this.useColors)return;let e="color: "+this.color;r.splice(1,0,e,"color: inherit");let t=0,n=0;r[0].replace(/%[a-zA-Z%]/g,o=>{o!=="%%"&&(t++,o==="%c"&&(n=t))}),r.splice(n,0,e)}v.log=console.debug||console.log||(()=>{});function lr(r){try{r?v.storage.setItem("debug",r):v.storage.removeItem("debug")}catch{}}function hr(){let r;try{r=v.storage.getItem("debug")}catch{}return!r&&typeof process<"u"&&"env"in process&&(r=process.env.DEBUG),r}function dr(){try{return localStorage}catch{}}we.exports=ct()(v);var{formatters:pr}=we.exports;pr.j=function(r){try{return JSON.stringify(r)}catch(e){return"[UnexpectedJSONParseError]: "+e.message}}});var Et=be((Do,At)=>{"use strict";function Ct(r,e){for(let t in e)Object.defineProperty(r,t,{value:e[t],enumerable:!0,configurable:!0});return r}function $r(r,e,t){if(!r||typeof r=="string")throw new TypeError("Please pass an Error to err-code");t||(t={}),typeof e=="object"&&(t=e,e=""),e&&(t.code=e);try{return Ct(r,t)}catch{t.message=r.message,t.stack=r.stack;let o=function(){};return o.prototype=Object.create(Object.getPrototypeOf(r)),Ct(new o,t)}}At.exports=$r});var qn={};L(qn,{PROTOCOL_ID:()=>N,handle:()=>Kt,lazySelect:()=>Wt,select:()=>Xt});var N="/multistream/1.0.0";var R=ot(ut(),1);var De={};L(De,{base58btc:()=>D,base58flickr:()=>xr});function mr(r,e){if(r.length>=255)throw new TypeError("Alphabet too long");for(var t=new Uint8Array(256),n=0;n<t.length;n++)t[n]=255;for(var o=0;o<r.length;o++){var s=r.charAt(o),i=s.charCodeAt(0);if(t[i]!==255)throw new TypeError(s+" is ambiguous");t[i]=o}var c=r.length,l=r.charAt(0),p=Math.log(c)/Math.log(256),a=Math.log(256)/Math.log(c);function u(d){if(d instanceof Uint8Array||(ArrayBuffer.isView(d)?d=new Uint8Array(d.buffer,d.byteOffset,d.byteLength):Array.isArray(d)&&(d=Uint8Array.from(d))),!(d instanceof Uint8Array))throw new TypeError("Expected Uint8Array");if(d.length===0)return"";for(var f=0,m=0,g=0,x=d.length;g!==x&&d[g]===0;)g++,f++;for(var F=(x-g)*a+1>>>0,C=new Uint8Array(F);g!==x;){for(var k=d[g],T=0,E=F-1;(k!==0||T<m)&&E!==-1;E--,T++)k+=256*C[E]>>>0,C[E]=k%c>>>0,k=k/c>>>0;if(k!==0)throw new Error("Non-zero carry");m=T,g++}for(var O=F-m;O!==F&&C[O]===0;)O++;for(var K=l.repeat(f);O<F;++O)K+=r.charAt(C[O]);return K}function h(d){if(typeof d!="string")throw new TypeError("Expected String");if(d.length===0)return new Uint8Array;var f=0;if(d[f]!==" "){for(var m=0,g=0;d[f]===l;)m++,f++;for(var x=(d.length-f)*p+1>>>0,F=new Uint8Array(x);d[f];){var C=t[d.charCodeAt(f)];if(C===255)return;for(var k=0,T=x-1;(C!==0||k<g)&&T!==-1;T--,k++)C+=c*F[T]>>>0,F[T]=C%256>>>0,C=C/256>>>0;if(C!==0)throw new Error("Non-zero carry");g=k,f++}if(d[f]!==" "){for(var E=x-g;E!==x&&F[E]===0;)E++;for(var O=new Uint8Array(m+(x-E)),K=m;E!==x;)O[K++]=F[E++];return O}}}function A(d){var f=h(d);if(f)return f;throw new Error(`Non-${e} character`)}return{encode:u,decodeUnsafe:h,decode:A}}var br=mr,gr=br,ft=gr;var Qn=new Uint8Array(0);var lt=(r,e)=>{if(r===e)return!0;if(r.byteLength!==e.byteLength)return!1;for(let t=0;t<r.byteLength;t++)if(r[t]!==e[t])return!1;return!0},I=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")};var ht=r=>new TextEncoder().encode(r),dt=r=>new TextDecoder().decode(r);var Fe=class{constructor(e,t,n){this.name=e,this.prefix=t,this.baseEncode=n}encode(e){if(e instanceof Uint8Array)return`${this.prefix}${this.baseEncode(e)}`;throw Error("Unknown type, must be binary type")}},Te=class{constructor(e,t,n){if(this.name=e,this.prefix=t,t.codePointAt(0)===void 0)throw new Error("Invalid prefix character");this.prefixCodePoint=t.codePointAt(0),this.baseDecode=n}decode(e){if(typeof e=="string"){if(e.codePointAt(0)!==this.prefixCodePoint)throw Error(`Unable to decode multibase string ${JSON.stringify(e)}, ${this.name} decoder only supports inputs prefixed with ${this.prefix}`);return this.baseDecode(e.slice(this.prefix.length))}else throw Error("Can only multibase decode strings")}or(e){return mt(this,e)}},Oe=class{constructor(e){this.decoders=e}or(e){return mt(this,e)}decode(e){let t=e[0],n=this.decoders[t];if(n)return n.decode(e);throw RangeError(`Unable to decode multibase string ${JSON.stringify(e)}, only inputs prefixed with ${Object.keys(this.decoders)} are supported`)}},mt=(r,e)=>new Oe({...r.decoders||{[r.prefix]:r},...e.decoders||{[e.prefix]:e}}),Ne=class{constructor(e,t,n,o){this.name=e,this.prefix=t,this.baseEncode=n,this.baseDecode=o,this.encoder=new Fe(e,t,n),this.decoder=new Te(e,t,o)}encode(e){return this.encoder.encode(e)}decode(e){return this.decoder.decode(e)}},ee=({name:r,prefix:e,encode:t,decode:n})=>new Ne(r,e,t,n),z=({prefix:r,name:e,alphabet:t})=>{let{encode:n,decode:o}=ft(t,e);return ee({prefix:r,name:e,encode:n,decode:s=>I(o(s))})},wr=(r,e,t,n)=>{let o={};for(let a=0;a<e.length;++a)o[e[a]]=a;let s=r.length;for(;r[s-1]==="=";)--s;let i=new Uint8Array(s*t/8|0),c=0,l=0,p=0;for(let a=0;a<s;++a){let u=o[r[a]];if(u===void 0)throw new SyntaxError(`Non-${n} character`);l=l<<t|u,c+=t,c>=8&&(c-=8,i[p++]=255&l>>c)}if(c>=t||255&l<<8-c)throw new SyntaxError("Unexpected end of data");return i},yr=(r,e,t)=>{let n=e[e.length-1]==="=",o=(1<<t)-1,s="",i=0,c=0;for(let l=0;l<r.length;++l)for(c=c<<8|r[l],i+=8;i>t;)i-=t,s+=e[o&c>>i];if(i&&(s+=e[o&c<<t-i]),n)for(;s.length*t&7;)s+="=";return s},b=({name:r,prefix:e,bitsPerChar:t,alphabet:n})=>ee({prefix:e,name:r,encode(o){return yr(o,n,t)},decode(o){return wr(o,n,t,r)}});var D=z({name:"base58btc",prefix:"z",alphabet:"123456789ABCDEFGHJKLMNPQRSTUVWXYZabcdefghijkmnopqrstuvwxyz"}),xr=z({name:"base58flickr",prefix:"Z",alphabet:"123456789abcdefghijkmnopqrstuvwxyzABCDEFGHJKLMNPQRSTUVWXYZ"});var Re={};L(Re,{base32:()=>V,base32hex:()=>Lr,base32hexpad:()=>Sr,base32hexpadupper:()=>Ur,base32hexupper:()=>vr,base32pad:()=>Ar,base32padupper:()=>Er,base32upper:()=>Cr,base32z:()=>Fr});var V=b({prefix:"b",name:"base32",alphabet:"abcdefghijklmnopqrstuvwxyz234567",bitsPerChar:5}),Cr=b({prefix:"B",name:"base32upper",alphabet:"ABCDEFGHIJKLMNOPQRSTUVWXYZ234567",bitsPerChar:5}),Ar=b({prefix:"c",name:"base32pad",alphabet:"abcdefghijklmnopqrstuvwxyz234567=",bitsPerChar:5}),Er=b({prefix:"C",name:"base32padupper",alphabet:"ABCDEFGHIJKLMNOPQRSTUVWXYZ234567=",bitsPerChar:5}),Lr=b({prefix:"v",name:"base32hex",alphabet:"0123456789abcdefghijklmnopqrstuv",bitsPerChar:5}),vr=b({prefix:"V",name:"base32hexupper",alphabet:"0123456789ABCDEFGHIJKLMNOPQRSTUV",bitsPerChar:5}),Sr=b({prefix:"t",name:"base32hexpad",alphabet:"0123456789abcdefghijklmnopqrstuv=",bitsPerChar:5}),Ur=b({prefix:"T",name:"base32hexpadupper",alphabet:"0123456789ABCDEFGHIJKLMNOPQRSTUV=",bitsPerChar:5}),Fr=b({prefix:"h",name:"base32z",alphabet:"ybndrfg8ejkmcpqxot1uwisza345h769",bitsPerChar:5});var Me={};L(Me,{base64:()=>ke,base64pad:()=>Tr,base64url:()=>Or,base64urlpad:()=>Nr});var ke=b({prefix:"m",name:"base64",alphabet:"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/",bitsPerChar:6}),Tr=b({prefix:"M",name:"base64pad",alphabet:"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/=",bitsPerChar:6}),Or=b({prefix:"u",name:"base64url",alphabet:"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789-_",bitsPerChar:6}),Nr=b({prefix:"U",name:"base64urlpad",alphabet:"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789-_=",bitsPerChar:6});R.default.formatters.b=r=>r==null?"undefined":D.baseEncode(r);R.default.formatters.t=r=>r==null?"undefined":V.baseEncode(r);R.default.formatters.m=r=>r==null?"undefined":ke.baseEncode(r);R.default.formatters.p=r=>r==null?"undefined":r.toString();R.default.formatters.c=r=>r==null?"undefined":r.toString();R.default.formatters.k=r=>r==null?"undefined":r.toString();function Dr(r){let e=()=>{};return e.enabled=!1,e.color="",e.diff=0,e.log=()=>{},e.namespace=r,e.destroy=()=>!0,e.extend=()=>e,e}function te(r){let e=Dr(`${r}:trace`);return R.default.enabled(`${r}:trace`)&&R.default.names.map(t=>t.toString()).find(t=>t.includes(":trace"))!=null&&(e=(0,R.default)(`${r}:trace`)),Object.assign((0,R.default)(r),{error:(0,R.default)(`${r}:error`),trace:e})}var _=class extends Error{constructor(e,t,n){super(e),this.code=t,this.name=n?.name??"CodeError",this.props=n??{}}};function j(r){return globalThis.Buffer!=null?new Uint8Array(r.buffer,r.byteOffset,r.byteLength):r}function B(r=0){return globalThis.Buffer?.alloc!=null?j(globalThis.Buffer.alloc(r)):new Uint8Array(r)}function P(r=0){return globalThis.Buffer?.allocUnsafe!=null?j(globalThis.Buffer.allocUnsafe(r)):new Uint8Array(r)}function Ie(r,e){e==null&&(e=r.reduce((o,s)=>o+s.length,0));let t=P(e),n=0;for(let o of r)t.set(o,n),n+=o.length;return j(t)}function bt(r,e){if(r===e)return!0;if(r.byteLength!==e.byteLength)return!1;for(let t=0;t<r.byteLength;t++)if(r[t]!==e[t])return!1;return!0}var wt=Symbol.for("@achingbrain/uint8arraylist");function gt(r,e){if(e==null||e<0)throw new RangeError("index is out of bounds");let t=0;for(let n of r){let o=t+n.byteLength;if(e<o)return{buf:n,index:e-t};t=o}throw new RangeError("index is out of bounds")}function ye(r){return Boolean(r?.[wt])}var w=class{constructor(...e){Object.defineProperty(this,wt,{value:!0}),this.bufs=[],this.length=0,e.length>0&&this.appendAll(e)}*[Symbol.iterator](){yield*this.bufs}get byteLength(){return this.length}append(...e){this.appendAll(e)}appendAll(e){let t=0;for(let n of e)if(n instanceof Uint8Array)t+=n.byteLength,this.bufs.push(n);else if(ye(n))t+=n.byteLength,this.bufs.push(...n.bufs);else throw new Error("Could not append value, must be an Uint8Array or a Uint8ArrayList");this.length+=t}prepend(...e){this.prependAll(e)}prependAll(e){let t=0;for(let n of e.reverse())if(n instanceof Uint8Array)t+=n.byteLength,this.bufs.unshift(n);else if(ye(n))t+=n.byteLength,this.bufs.unshift(...n.bufs);else throw new Error("Could not prepend value, must be an Uint8Array or a Uint8ArrayList");this.length+=t}get(e){let t=gt(this.bufs,e);return t.buf[t.index]}set(e,t){let n=gt(this.bufs,e);n.buf[n.index]=t}write(e,t=0){if(e instanceof Uint8Array)for(let n=0;n<e.length;n++)this.set(t+n,e[n]);else if(ye(e))for(let n=0;n<e.length;n++)this.set(t+n,e.get(n));else throw new Error("Could not write value, must be an Uint8Array or a Uint8ArrayList")}consume(e){if(e=Math.trunc(e),!(Number.isNaN(e)||e<=0)){if(e===this.byteLength){this.bufs=[],this.length=0;return}for(;this.bufs.length>0;)if(e>=this.bufs[0].byteLength)e-=this.bufs[0].byteLength,this.length-=this.bufs[0].byteLength,this.bufs.shift();else{this.bufs[0]=this.bufs[0].subarray(e),this.length-=e;break}}}slice(e,t){let{bufs:n,length:o}=this._subList(e,t);return Ie(n,o)}subarray(e,t){let{bufs:n,length:o}=this._subList(e,t);return n.length===1?n[0]:Ie(n,o)}sublist(e,t){let{bufs:n,length:o}=this._subList(e,t),s=new w;return s.length=o,s.bufs=n,s}_subList(e,t){if(e=e??0,t=t??this.length,e<0&&(e=this.length+e),t<0&&(t=this.length+t),e<0||t>this.length)throw new RangeError("index is out of bounds");if(e===t)return{bufs:[],length:0};if(e===0&&t===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],c=o,l=c+i.byteLength;if(o=l,e>=l)continue;let p=e>=c&&e<l,a=t>c&&t<=l;if(p&&a){if(e===c&&t===l){n.push(i);break}let u=e-c;n.push(i.subarray(u,u+(t-e)));break}if(p){if(e===0){n.push(i);continue}n.push(i.subarray(e-c));continue}if(a){if(t===l){n.push(i);break}n.push(i.subarray(0,t-c));break}n.push(i)}return{bufs:n,length:t-e}}indexOf(e,t=0){if(!ye(e)&&!(e instanceof Uint8Array))throw new TypeError('The "value" argument must be a Uint8ArrayList or Uint8Array');let n=e instanceof Uint8Array?e:e.subarray();if(t=Number(t??0),isNaN(t)&&(t=0),t<0&&(t=this.length+t),t<0&&(t=0),e.length===0)return t>this.length?this.length:t;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 c=i,l=this.byteLength-n.byteLength,p=n.byteLength-1,a;for(let u=t;u<=l;u+=a){a=0;for(let h=p;h>=0;h--){let A=this.get(u+h);if(n[h]!==A){a=Math.max(1,h-c[A]);break}}if(a===0)return u}return-1}getInt8(e){let t=this.subarray(e,e+1);return new DataView(t.buffer,t.byteOffset,t.byteLength).getInt8(0)}setInt8(e,t){let n=P(1);new DataView(n.buffer,n.byteOffset,n.byteLength).setInt8(0,t),this.write(n,e)}getInt16(e,t){let n=this.subarray(e,e+2);return new DataView(n.buffer,n.byteOffset,n.byteLength).getInt16(0,t)}setInt16(e,t,n){let o=B(2);new DataView(o.buffer,o.byteOffset,o.byteLength).setInt16(0,t,n),this.write(o,e)}getInt32(e,t){let n=this.subarray(e,e+4);return new DataView(n.buffer,n.byteOffset,n.byteLength).getInt32(0,t)}setInt32(e,t,n){let o=B(4);new DataView(o.buffer,o.byteOffset,o.byteLength).setInt32(0,t,n),this.write(o,e)}getBigInt64(e,t){let n=this.subarray(e,e+8);return new DataView(n.buffer,n.byteOffset,n.byteLength).getBigInt64(0,t)}setBigInt64(e,t,n){let o=B(8);new DataView(o.buffer,o.byteOffset,o.byteLength).setBigInt64(0,t,n),this.write(o,e)}getUint8(e){let t=this.subarray(e,e+1);return new DataView(t.buffer,t.byteOffset,t.byteLength).getUint8(0)}setUint8(e,t){let n=P(1);new DataView(n.buffer,n.byteOffset,n.byteLength).setUint8(0,t),this.write(n,e)}getUint16(e,t){let n=this.subarray(e,e+2);return new DataView(n.buffer,n.byteOffset,n.byteLength).getUint16(0,t)}setUint16(e,t,n){let o=B(2);new DataView(o.buffer,o.byteOffset,o.byteLength).setUint16(0,t,n),this.write(o,e)}getUint32(e,t){let n=this.subarray(e,e+4);return new DataView(n.buffer,n.byteOffset,n.byteLength).getUint32(0,t)}setUint32(e,t,n){let o=B(4);new DataView(o.buffer,o.byteOffset,o.byteLength).setUint32(0,t,n),this.write(o,e)}getBigUint64(e,t){let n=this.subarray(e,e+8);return new DataView(n.buffer,n.byteOffset,n.byteLength).getBigUint64(0,t)}setBigUint64(e,t,n){let o=B(8);new DataView(o.buffer,o.byteOffset,o.byteLength).setBigUint64(0,t,n),this.write(o,e)}getFloat32(e,t){let n=this.subarray(e,e+4);return new DataView(n.buffer,n.byteOffset,n.byteLength).getFloat32(0,t)}setFloat32(e,t,n){let o=B(4);new DataView(o.buffer,o.byteOffset,o.byteLength).setFloat32(0,t,n),this.write(o,e)}getFloat64(e,t){let n=this.subarray(e,e+8);return new DataView(n.buffer,n.byteOffset,n.byteLength).getFloat64(0,t)}setFloat64(e,t,n){let o=B(8);new DataView(o.buffer,o.byteOffset,o.byteLength).setFloat64(0,t,n),this.write(o,e)}equals(e){if(e==null||!(e instanceof w)||e.bufs.length!==this.bufs.length)return!1;for(let t=0;t<this.bufs.length;t++)if(!bt(this.bufs[t],e.bufs[t]))return!1;return!0}static fromUint8Arrays(e,t){let n=new w;return n.bufs=e,t==null&&(t=e.reduce((o,s)=>o+s.byteLength,0)),n.length=t,n}};function xe(r){return r instanceof Uint8Array?{get(e){return r[e]},set(e,t){r[e]=t}}:{get(e){return r.get(e)},set(e,t){r.set(e,t)}}}var yt=4294967296,S=class{constructor(e=0,t=0){this.hi=e,this.lo=t}toBigInt(e){if(e===!0)return BigInt(this.lo>>>0)+(BigInt(this.hi>>>0)<<32n);if(this.hi>>>31){let t=~this.lo+1>>>0,n=~this.hi>>>0;return t===0&&(n=n+1>>>0),-(BigInt(t)+(BigInt(n)<<32n))}return BigInt(this.lo>>>0)+(BigInt(this.hi>>>0)<<32n)}toNumber(e){return Number(this.toBigInt(e))}zzDecode(){let e=-(this.lo&1),t=((this.lo>>>1|this.hi<<31)^e)>>>0,n=(this.hi>>>1^e)>>>0;return new S(n,t)}zzEncode(){let e=this.hi>>31,t=((this.hi<<1|this.lo>>>31)^e)>>>0,n=(this.lo<<1^e)>>>0;return new S(t,n)}toBytes(e,t=0){let n=xe(e);for(;this.hi>0;)n.set(t++,this.lo&127|128),this.lo=(this.lo>>>7|this.hi<<25)>>>0,this.hi>>>=7;for(;this.lo>127;)n.set(t++,this.lo&127|128),this.lo=this.lo>>>7;n.set(t++,this.lo)}static fromBigInt(e){if(e===0n)return new S;let t=e<0;t&&(e=-e);let n=Number(e>>32n)|0,o=Number(e-(BigInt(n)<<32n))|0;return t&&(n=~n>>>0,o=~o>>>0,++o>yt&&(o=0,++n>yt&&(n=0))),new S(n,o)}static fromNumber(e){if(e===0)return new S;let t=e<0;t&&(e=-e);let n=e>>>0,o=(e-n)/4294967296>>>0;return t&&(o=~o>>>0,n=~n>>>0,++n>4294967295&&(n=0,++o>4294967295&&(o=0))),new S(o,n)}static fromBytes(e,t=0){let n=xe(e),o=new S,s=0;if(e.length-t>4){for(;s<4;++s)if(o.lo=(o.lo|(n.get(t)&127)<<s*7)>>>0,n.get(t++)<128)return o;if(o.lo=(o.lo|(n.get(t)&127)<<28)>>>0,o.hi=(o.hi|(n.get(t)&127)>>4)>>>0,n.get(t++)<128)return o;s=0}else for(;s<4;++s){if(t>=e.length)throw RangeError(`index out of range: ${t} > ${e.length}`);if(o.lo=(o.lo|(n.get(t)&127)<<s*7)>>>0,n.get(t++)<128)return o}if(e.length-t>4){for(;s<5;++s)if(o.hi=(o.hi|(n.get(t)&127)<<s*7+3)>>>0,n.get(t++)<128)return o}else if(t<e.byteLength)for(;s<5;++s){if(t>=e.length)throw RangeError(`index out of range: ${t} > ${e.length}`);if(o.hi=(o.hi|(n.get(t)&127)<<s*7+3)>>>0,n.get(t++)<128)return o}throw RangeError("invalid varint encoding")}};var Rr=Math.pow(2,7),kr=Math.pow(2,14),Mr=Math.pow(2,21),Ir=Math.pow(2,28),Br=Math.pow(2,35),Pr=Math.pow(2,42),zr=Math.pow(2,49),Vr=Math.pow(2,56),_r=Math.pow(2,63),q={encodingLength(r){return r<Rr?1:r<kr?2:r<Mr?3:r<Ir?4:r<Br?5:r<Pr?6:r<zr?7:r<Vr?8:r<_r?9:10},encode(r,e,t=0){if(Number.MAX_SAFE_INTEGER!=null&&r>Number.MAX_SAFE_INTEGER)throw new RangeError("Could not encode varint");return e==null&&(e=P(q.encodingLength(r))),S.fromNumber(r).toBytes(e,t),e},decode(r,e=0){return S.fromBytes(r,e).toNumber(!0)}};function xt(r){return globalThis?.Buffer?.allocUnsafe!=null?globalThis.Buffer.allocUnsafe(r):new Uint8Array(r)}var Ce=r=>{let e=q.encodingLength(r),t=xt(e);return q.encode(r,t),Ce.bytes=e,t};Ce.bytes=0;function Ae(r){r=r??{};let e=r.lengthEncoder??Ce;return async function*(n){for await(let o of n){let s=e(o.byteLength);s instanceof Uint8Array?yield s:yield*s,o instanceof Uint8Array?yield o:yield*o}}}Ae.single=(r,e)=>{e=e??{};let t=e.lengthEncoder??Ce;return new w(t(r.byteLength),r)};var ie=ot(Et(),1),Gr=8,jr=1024*1024*4,H;(function(r){r[r.LENGTH=0]="LENGTH",r[r.DATA=1]="DATA"})(H||(H={}));var Be=r=>{let e=q.decode(r);return Be.bytes=q.encodingLength(e),e};Be.bytes=0;function ae(r){return async function*(t){let n=new w,o=H.LENGTH,s=-1,i=r?.lengthDecoder??Be,c=r?.maxLengthLength??Gr,l=r?.maxDataLength??jr;for await(let p of t)for(n.append(p);n.byteLength>0;){if(o===H.LENGTH)try{if(s=i(n),s<0)throw(0,ie.default)(new Error("invalid message length"),"ERR_INVALID_MSG_LENGTH");if(s>l)throw(0,ie.default)(new Error("message length too long"),"ERR_MSG_DATA_TOO_LONG");let a=i.bytes;n.consume(a),r?.onLength!=null&&r.onLength(s),o=H.DATA}catch(a){if(a instanceof RangeError){if(n.byteLength>c)throw(0,ie.default)(new Error("message length length too long"),"ERR_MSG_LENGTH_TOO_LONG");break}throw a}if(o===H.DATA){if(n.byteLength<s)break;let a=n.sublist(0,s);n.consume(s),r?.onData!=null&&r.onData(a),yield a,o=H.LENGTH}}if(n.byteLength>0)throw(0,ie.default)(new Error("unexpected end of input"),"ERR_UNEXPECTED_EOF")}}ae.fromReader=(r,e)=>{let t=1,n=async function*(){for(;;)try{let{done:s,value:i}=await r.next(t);if(s===!0)return;i!=null&&(yield i)}catch(s){if(s.code==="ERR_UNDER_READ")return{done:!0,value:null};throw s}finally{t=1}}();return ae({...e??{},onLength:s=>{t=s}})(n)};var Ee=class{constructor(e){if(!(e>0)||e-1&e)throw new Error("Max size for a FixedFIFO should be a power of two");this.buffer=new Array(e),this.mask=e-1,this.top=0,this.btm=0,this.next=null}push(e){return this.buffer[this.top]!==void 0?!1:(this.buffer[this.top]=e,this.top=this.top+1&this.mask,!0)}shift(){let e=this.buffer[this.btm];if(e!==void 0)return this.buffer[this.btm]=void 0,this.btm=this.btm+1&this.mask,e}isEmpty(){return this.buffer[this.btm]===void 0}},re=class{constructor(e={}){this.hwm=e.splitLimit??16,this.head=new Ee(this.hwm),this.tail=this.head,this.size=0}calculateSize(e){return e?.byteLength!=null?e.byteLength:1}push(e){if(e?.value!=null&&(this.size+=this.calculateSize(e.value)),!this.head.push(e)){let t=this.head;this.head=t.next=new Ee(2*this.head.buffer.length),this.head.push(e)}}shift(){let e=this.tail.shift();if(e===void 0&&this.tail.next!=null){let t=this.tail.next;this.tail.next=null,this.tail=t,e=this.tail.shift()}return e?.value!=null&&(this.size-=this.calculateSize(e.value)),e}isEmpty(){return this.head.isEmpty()}};function M(r={}){return Hr(t=>{let n=t.shift();if(n==null)return{done:!0};if(n.error!=null)throw n.error;return{done:n.done===!0,value:n.value}},r)}function Hr(r,e){e=e??{};let t=e.onEnd,n=new re,o,s,i,c=async()=>n.isEmpty()?i?{done:!0}:await new Promise((f,m)=>{s=g=>{s=null,n.push(g);try{f(r(n))}catch(x){m(x)}return o}}):r(n),l=f=>s!=null?s(f):(n.push(f),o),p=f=>(n=new re,s!=null?s({error:f}):(n.push({error:f}),o)),a=f=>{if(i)return o;if(e?.objectMode!==!0&&f?.byteLength==null)throw new Error("objectMode was not true but tried to push non-Uint8Array value");return l({done:!1,value:f})},u=f=>i?o:(i=!0,f!=null?p(f):l({done:!0})),h=()=>(n=new re,u(),{done:!0}),A=f=>(u(f),{done:!0});if(o={[Symbol.asyncIterator](){return this},next:c,return:h,throw:A,push:a,end:u,get readableLength(){return n.size}},t==null)return o;let d=o;return o={[Symbol.asyncIterator](){return this},next(){return d.next()},throw(f){return d.throw(f),t!=null&&(t(f),t=void 0),{done:!0}},return(){return d.return(),t!=null&&(t(),t=void 0),{done:!0}},push:a,end(f){return d.end(f),t!=null&&(t(f),t=void 0),o},get readableLength(){return d.readableLength}},o}async function*Pe(...r){let e=M({objectMode:!0});Promise.resolve().then(async()=>{try{await Promise.all(r.map(async t=>{for await(let n of t)e.push(n)})),e.end()}catch(t){e.end(t)}}),yield*e}var Jr=(...r)=>{let e;for(;r.length>0;)e=r.shift()(e);return e},Lt=r=>r!=null&&(typeof r[Symbol.asyncIterator]=="function"||typeof r[Symbol.iterator]=="function"||typeof r.next=="function"),ze=r=>r!=null&&typeof r.sink=="function"&&Lt(r.source),Xr=r=>e=>{let t=r.sink(e);if(t.then!=null){let n=M({objectMode:!0});return t.then(()=>{n.end()},s=>{n.end(s)}),Pe(n,async function*(){yield*r.source,n.end()}())}return r.source};function vt(r,...e){if(ze(r)){let n=r;r=()=>n.source}else if(Lt(r)){let n=r;r=()=>n}let t=[r,...e];if(t.length>1&&ze(t[t.length-1])&&(t[t.length-1]=t[t.length-1].sink),t.length>2)for(let n=1;n<t.length-1;n++)ze(t[n])&&(t[n]=Xr(t[n]));return Jr(...t)}var Ve={};L(Ve,{identity:()=>Wr});var Wr=ee({prefix:"\0",name:"identity",encode:r=>dt(r),decode:r=>ht(r)});var _e={};L(_e,{base2:()=>Kr});var Kr=b({prefix:"0",name:"base2",alphabet:"01",bitsPerChar:1});var $e={};L($e,{base8:()=>Qr});var Qr=b({prefix:"7",name:"base8",alphabet:"01234567",bitsPerChar:3});var Ge={};L(Ge,{base10:()=>Zr});var Zr=z({prefix:"9",name:"base10",alphabet:"0123456789"});var je={};L(je,{base16:()=>Yr,base16upper:()=>en});var Yr=b({prefix:"f",name:"base16",alphabet:"0123456789abcdef",bitsPerChar:4}),en=b({prefix:"F",name:"base16upper",alphabet:"0123456789ABCDEF",bitsPerChar:4});var qe={};L(qe,{base36:()=>tn,base36upper:()=>rn});var tn=z({prefix:"k",name:"base36",alphabet:"0123456789abcdefghijklmnopqrstuvwxyz"}),rn=z({prefix:"K",name:"base36upper",alphabet:"0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZ"});var He={};L(He,{base256emoji:()=>cn});var St=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}"),nn=St.reduce((r,e,t)=>(r[t]=e,r),[]),on=St.reduce((r,e,t)=>(r[e.codePointAt(0)]=t,r),[]);function sn(r){return r.reduce((e,t)=>(e+=nn[t],e),"")}function an(r){let e=[];for(let t of r){let n=on[t.codePointAt(0)];if(n===void 0)throw new Error(`Non-base256emoji character: ${t}`);e.push(n)}return new Uint8Array(e)}var cn=ee({prefix:"\u{1F680}",name:"base256emoji",encode:sn,decode:an});var Ke={};L(Ke,{sha256:()=>Un,sha512:()=>Fn});var un=Tt,Ut=128,fn=127,ln=~fn,hn=Math.pow(2,31);function Tt(r,e,t){e=e||[],t=t||0;for(var n=t;r>=hn;)e[t++]=r&255|Ut,r/=128;for(;r&ln;)e[t++]=r&255|Ut,r>>>=7;return e[t]=r|0,Tt.bytes=t-n+1,e}var dn=Je,pn=128,Ft=127;function Je(r,n){var t=0,n=n||0,o=0,s=n,i,c=r.length;do{if(s>=c)throw Je.bytes=0,new RangeError("Could not decode varint");i=r[s++],t+=o<28?(i&Ft)<<o:(i&Ft)*Math.pow(2,o),o+=7}while(i>=pn);return Je.bytes=s-n,t}var mn=Math.pow(2,7),bn=Math.pow(2,14),gn=Math.pow(2,21),wn=Math.pow(2,28),yn=Math.pow(2,35),xn=Math.pow(2,42),Cn=Math.pow(2,49),An=Math.pow(2,56),En=Math.pow(2,63),Ln=function(r){return r<mn?1:r<bn?2:r<gn?3:r<wn?4:r<yn?5:r<xn?6:r<Cn?7:r<An?8:r<En?9:10},vn={encode:un,decode:dn,encodingLength:Ln},Sn=vn,ce=Sn;var ue=(r,e=0)=>[ce.decode(r,e),ce.decode.bytes],ne=(r,e,t=0)=>(ce.encode(r,e,t),e),oe=r=>ce.encodingLength(r);var J=(r,e)=>{let t=e.byteLength,n=oe(r),o=n+oe(t),s=new Uint8Array(o+t);return ne(r,s,0),ne(t,s,n),s.set(e,o),new se(r,t,e,s)},Ot=r=>{let e=I(r),[t,n]=ue(e),[o,s]=ue(e.subarray(n)),i=e.subarray(n+s);if(i.byteLength!==o)throw new Error("Incorrect length");return new se(t,o,i,e)},Nt=(r,e)=>{if(r===e)return!0;{let t=e;return r.code===t.code&&r.size===t.size&&t.bytes instanceof Uint8Array&&lt(r.bytes,t.bytes)}},se=class{constructor(e,t,n,o){this.code=e,this.size=t,this.digest=n,this.bytes=o}};var We=({name:r,code:e,encode:t})=>new Xe(r,e,t),Xe=class{constructor(e,t,n){this.name=e,this.code=t,this.encode=n}digest(e){if(e instanceof Uint8Array){let t=this.encode(e);return t instanceof Uint8Array?J(this.code,t):t.then(n=>J(this.code,n))}else throw Error("Unknown type, must be binary type")}};var Rt=r=>async e=>new Uint8Array(await crypto.subtle.digest(r,e)),Un=We({name:"sha2-256",code:18,encode:Rt("SHA-256")}),Fn=We({name:"sha2-512",code:19,encode:Rt("SHA-512")});var Qe={};L(Qe,{identity:()=>Nn});var kt=0,Tn="identity",Mt=I,On=r=>J(kt,Mt(r)),Nn={code:kt,name:Tn,encode:Mt,digest:On};var is=new TextEncoder,as=new TextDecoder;var It=(r,e)=>{let{bytes:t,version:n}=r;switch(n){case 0:return Mn(t,Ze(r),e||D.encoder);default:return In(t,Ze(r),e||V.encoder)}};var Bt=new WeakMap,Ze=r=>{let e=Bt.get(r);if(e==null){let t=new Map;return Bt.set(r,t),t}return e},y=class{constructor(e,t,n,o){this.code=t,this.version=e,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:e,multihash:t}=this;if(e!==le)throw new Error("Cannot convert a non dag-pb CID to CIDv0");if(t.code!==Bn)throw new Error("Cannot convert non sha2-256 multihash CID to CIDv0");return y.createV0(t)}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:e,digest:t}=this.multihash,n=J(e,t);return y.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(e){return y.equals(this,e)}static equals(e,t){let n=t;return n&&e.code===n.code&&e.version===n.version&&Nt(e.multihash,n.multihash)}toString(e){return It(this,e)}toJSON(){return{"/":It(this)}}link(){return this}get[Symbol.toStringTag](){return"CID"}[Symbol.for("nodejs.util.inspect.custom")](){return`CID(${this.toString()})`}static asCID(e){if(e==null)return null;let t=e;if(t instanceof y)return t;if(t["/"]!=null&&t["/"]===t.bytes||t.asCID===t){let{version:n,code:o,multihash:s,bytes:i}=t;return new y(n,o,s,i||Pt(n,o,s.bytes))}else if(t[Pn]===!0){let{version:n,multihash:o,code:s}=t,i=Ot(o);return y.create(n,s,i)}else return null}static create(e,t,n){if(typeof t!="number")throw new Error("String codecs are no longer supported");if(!(n.bytes instanceof Uint8Array))throw new Error("Invalid digest");switch(e){case 0:{if(t!==le)throw new Error(`Version 0 CID must use dag-pb (code: ${le}) block encoding`);return new y(e,t,n,n.bytes)}case 1:{let o=Pt(e,t,n.bytes);return new y(e,t,n,o)}default:throw new Error("Invalid version")}}static createV0(e){return y.create(0,le,e)}static createV1(e,t){return y.create(1,e,t)}static decode(e){let[t,n]=y.decodeFirst(e);if(n.length)throw new Error("Incorrect length");return t}static decodeFirst(e){let t=y.inspectBytes(e),n=t.size-t.multihashSize,o=I(e.subarray(n,n+t.multihashSize));if(o.byteLength!==t.multihashSize)throw new Error("Incorrect length");let s=o.subarray(t.multihashSize-t.digestSize),i=new se(t.multihashCode,t.digestSize,s,o);return[t.version===0?y.createV0(i):y.createV1(t.codec,i),e.subarray(t.size)]}static inspectBytes(e){let t=0,n=()=>{let[u,h]=ue(e.subarray(t));return t+=h,u},o=n(),s=le;if(o===18?(o=0,t=0):s=n(),o!==0&&o!==1)throw new RangeError(`Invalid CID version ${o}`);let i=t,c=n(),l=n(),p=t+l,a=p-i;return{version:o,codec:s,multihashCode:c,digestSize:l,multihashSize:a,size:p}}static parse(e,t){let[n,o]=kn(e,t),s=y.decode(o);if(s.version===0&&e[0]!=="Q")throw Error("Version 0 CID string must not include multibase prefix");return Ze(s).set(n,e),s}},kn=(r,e)=>{switch(r[0]){case"Q":{let t=e||D;return[D.prefix,t.decode(`${D.prefix}${r}`)]}case D.prefix:{let t=e||D;return[D.prefix,t.decode(r)]}case V.prefix:{let t=e||V;return[V.prefix,t.decode(r)]}default:{if(e==null)throw Error("To parse non base32 or base58btc encoded CID multibase decoder must be provided");return[r[0],e.decode(r)]}}},Mn=(r,e,t)=>{let{prefix:n}=t;if(n!==D.prefix)throw Error(`Cannot string encode V0 in ${t.name} encoding`);let o=e.get(n);if(o==null){let s=t.encode(r).slice(1);return e.set(n,s),s}else return o},In=(r,e,t)=>{let{prefix:n}=t,o=e.get(n);if(o==null){let s=t.encode(r);return e.set(n,s),s}else return o},le=112,Bn=18,Pt=(r,e,t)=>{let n=oe(r),o=n+oe(e),s=new Uint8Array(o+t.byteLength);return ne(r,s,0),ne(e,s,n),s.set(t,o),s},Pn=Symbol.for("@ipld/js-cid/CID");var Ye={...Ve,..._e,...$e,...Ge,...je,...Re,...qe,...De,...Me,...He},gs={...Ke,...Qe};function Vt(r,e,t,n){return{name:r,prefix:e,encoder:{name:r,prefix:e,encode:t},decoder:{decode:n}}}var zt=Vt("utf8","u",r=>"u"+new TextDecoder("utf8").decode(r),r=>new TextEncoder().encode(r.substring(1))),et=Vt("ascii","a",r=>{let e="a";for(let t=0;t<r.length;t++)e+=String.fromCharCode(r[t]);return e},r=>{r=r.substring(1);let e=P(r.length);for(let t=0;t<r.length;t++)e[t]=r.charCodeAt(t);return e}),zn={utf8:zt,"utf-8":zt,hex:Ye.base16,latin1:et,ascii:et,binary:et,...Ye},ve=zn;function U(r,e="utf8"){let t=ve[e];if(t==null)throw new Error(`Unsupported encoding "${e}"`);return(e==="utf8"||e==="utf-8")&&globalThis.Buffer!=null&&globalThis.Buffer.from!=null?j(globalThis.Buffer.from(r,"utf-8")):t.decoder.decode(`${t.prefix}${r}`)}async function tt(r){for await(let e of r)return e}var he=class extends Error{constructor(e,t){super(e??"The operation was aborted"),this.type="aborted",this.code=t??"ABORT_ERR"}};function _t(r){if(r!=null){if(typeof r[Symbol.iterator]=="function")return r[Symbol.iterator]();if(typeof r[Symbol.asyncIterator]=="function")return r[Symbol.asyncIterator]();if(typeof r.next=="function")return r}throw new Error("argument is not an iterator or iterable")}function $t(r,e,t){let n=t??{},o=_t(r);async function*s(){let i,c=()=>{i?.()};for(e.addEventListener("abort",c);;){let l;try{if(e.aborted){let{abortMessage:a,abortCode:u}=n;throw new he(a,u)}let p=new Promise((a,u)=>{i=()=>{let{abortMessage:h,abortCode:A}=n;u(new he(h,A))}});l=await Promise.race([p,o.next()]),i=null}catch(p){e.removeEventListener("abort",c);let a=p.type==="aborted"&&e.aborted;if(a&&n.onAbort!=null&&await n.onAbort(r),typeof o.return=="function")try{let u=o.return();u instanceof Promise&&u.catch(h=>{n.onReturnError!=null&&n.onReturnError(h)})}catch(u){n.onReturnError!=null&&n.onReturnError(u)}if(a&&n.returnOnAbort===!0)return;throw p}if(l.done===!0)break;yield l.value}e.removeEventListener("abort",c)}return s()}function Gt(r,e="utf8"){let t=ve[e];if(t==null)throw new Error(`Unsupported encoding "${e}"`);return(e==="utf8"||e==="utf-8")&&globalThis.Buffer!=null&&globalThis.Buffer.from!=null?globalThis.Buffer.from(r.buffer,r.byteOffset,r.byteLength).toString("utf8"):t.encoder.encode(r).substring(1)}var _n=te("libp2p:mss"),jt=U(`
3
- `);function X(r){let e=new w(r,jt);return Ae.single(e)}function W(r,e,t={}){let n=X(e);t.writeBytes===!0?r.push(n.subarray()):r.push(n)}function qt(r,e,t={}){let n=new w;for(let o of e)n.append(X(o));t.writeBytes===!0?r.push(n.subarray()):r.push(n)}async function $n(r,e){let t=1,n={[Symbol.asyncIterator]:()=>n,next:async()=>await r.next(t)},o=n;e?.signal!=null&&(o=$t(n,e.signal));let i=await vt(o,ae({onLength:c=>{t=c},maxDataLength:1024}),async c=>await tt(c));if(i==null||i.length===0)throw new _("no buffer returned","ERR_INVALID_MULTISTREAM_SELECT_MESSAGE");if(i.get(i.byteLength-1)!==jt[0])throw _n.error("Invalid mss message - missing newline - %s",i.subarray()),new _("missing newline","ERR_INVALID_MULTISTREAM_SELECT_MESSAGE");return i.sublist(0,-1)}async function $(r,e){let t=await $n(r,e);return Gt(t.subarray())}function Se(r){let e=async function*(){let t=yield,n=new w;for await(let o of r){if(t==null){n.append(o),t=yield n,n=new w;continue}for(n.append(o);n.length>=t;){let s=n.sublist(0,t);if(n.consume(t),t=yield s,t==null){n.length>0&&(t=yield n,n=new w);break}}}if(t!=null)throw Object.assign(new Error(`stream ended before ${t} bytes became available`),{code:"ERR_UNDER_READ",buffer:n})}();return e.next(),e}function rt(){let r={};return r.promise=new Promise((e,t)=>{r.resolve=e,r.reject=t}),r}function Ue(r){let e=M(),t=Se(r.source),n=rt(),o,s=r.sink(async function*(){yield*e,yield*await n.promise}());return s.catch(c=>{o=c}),{reader:t,writer:e,stream:{sink:async c=>o!=null?await Promise.reject(o):(n.resolve(c),await s),source:t},rest:()=>e.end(),write:e.push,read:async()=>{let c=await t.next();if(c.value!=null)return c.value}}}function Gn(r){return r[Symbol.asyncIterator]!=null}function jn(...r){let e=[];for(let t of r)Gn(t)||e.push(t);return e.length===r.length?function*(){for(let t of e)yield*t}():async function*(){let t=M({objectMode:!0});Promise.resolve().then(async()=>{try{await Promise.all(r.map(async n=>{for await(let o of n)t.push(o)})),t.end()}catch(n){t.end(n)}}),yield*t}()}var Jt=jn;var de=te("libp2p:mss:select");async function Xt(r,e,t={}){e=Array.isArray(e)?[...e]:[e];let{reader:n,writer:o,rest:s,stream:i}=Ue(r),c=e.shift();if(c==null)throw new Error("At least one protocol must be specified");de('select: write ["%s", "%s"]',N,c);let l=U(N),p=U(c);qt(o,[l,p],t);let a=await $(n,t);if(de('select: read "%s"',a),a===N&&(a=await $(n,t),de('select: read "%s"',a)),a===c)return s(),{stream:i,protocol:c};for(let u of e){de('select: write "%s"',u),W(o,U(u),t);let h=await $(n,t);if(de('select: read "%s" for "%s"',h,u),h===u)return s(),{stream:i,protocol:u}}throw s(),new _("protocol selection failed","ERR_UNSUPPORTED_PROTOCOL")}function Wt(r,e){let t=M(),n=!1;return{stream:{sink:async o=>await r.sink(async function*(){let s=!0;for await(let i of Jt(o,t))if(s){s=!1,n=!0,t.end();let c=U(N),l=U(e),p=new w(X(c),X(l));i.length>0&&p.append(i),yield*p}else yield i}()),source:async function*(){n||t.push(new Uint8Array);let o=Se(r.source),s=await $(o);if(s===N&&(s=await $(o)),s!==e)throw new _("protocol selection failed","ERR_UNSUPPORTED_PROTOCOL");for await(let i of o)yield*i}()},protocol:e}}var pe=te("libp2p:mss:handle");async function Kt(r,e,t){e=Array.isArray(e)?e:[e];let{writer:n,reader:o,rest:s,stream:i}=Ue(r);for(;;){let c=await $(o,t);if(pe('read "%s"',c),c===N){pe('respond with "%s" for "%s"',N,c),W(n,U(N),t);continue}if(e.includes(c))return W(n,U(c),t),pe('respond with "%s" for "%s"',c,c),s(),{stream:i,protocol:c};if(c==="ls"){W(n,new w(...e.map(l=>X(U(l)))),t),pe('respond with "%s" for %s',e,c);continue}W(n,U("na"),t),pe('respond with "na" for "%s"',c)}}return rr(qn);})();
2
+ "use strict";var Libp2PMultistreamSelect=(()=>{var Wt=Object.create;var me=Object.defineProperty;var Zt=Object.getOwnPropertyDescriptor;var Yt=Object.getOwnPropertyNames;var er=Object.getPrototypeOf,tr=Object.prototype.hasOwnProperty;var be=(r,e)=>()=>(e||r((e={exports:{}}).exports,e),e.exports),L=(r,e)=>{for(var t in e)me(r,t,{get:e[t],enumerable:!0})},nt=(r,e,t,n)=>{if(e&&typeof e=="object"||typeof e=="function")for(let o of Yt(e))!tr.call(r,o)&&o!==t&&me(r,o,{get:()=>e[o],enumerable:!(n=Zt(e,o))||n.enumerable});return r};var ot=(r,e,t)=>(t=r!=null?Wt(er(r)):{},nt(e||!r||!r.__esModule?me(t,"default",{value:r,enumerable:!0}):t,r)),rr=r=>nt(me({},"__esModule",{value:!0}),r);var it=be((Qn,st)=>{var W=1e3,Z=W*60,Y=Z*60,G=Y*24,nr=G*7,or=G*365.25;st.exports=function(r,e){e=e||{};var t=typeof r;if(t==="string"&&r.length>0)return sr(r);if(t==="number"&&isFinite(r))return e.long?ar(r):ir(r);throw new Error("val is not a non-empty string or a valid number. val="+JSON.stringify(r))};function sr(r){if(r=String(r),!(r.length>100)){var e=/^(-?(?:\d+)?\.?\d+) *(milliseconds?|msecs?|ms|seconds?|secs?|s|minutes?|mins?|m|hours?|hrs?|h|days?|d|weeks?|w|years?|yrs?|y)?$/i.exec(r);if(e){var t=parseFloat(e[1]),n=(e[2]||"ms").toLowerCase();switch(n){case"years":case"year":case"yrs":case"yr":case"y":return t*or;case"weeks":case"week":case"w":return t*nr;case"days":case"day":case"d":return t*G;case"hours":case"hour":case"hrs":case"hr":case"h":return t*Y;case"minutes":case"minute":case"mins":case"min":case"m":return t*Z;case"seconds":case"second":case"secs":case"sec":case"s":return t*W;case"milliseconds":case"millisecond":case"msecs":case"msec":case"ms":return t;default:return}}}}function ir(r){var e=Math.abs(r);return e>=G?Math.round(r/G)+"d":e>=Y?Math.round(r/Y)+"h":e>=Z?Math.round(r/Z)+"m":e>=W?Math.round(r/W)+"s":r+"ms"}function ar(r){var e=Math.abs(r);return e>=G?ge(r,e,G,"day"):e>=Y?ge(r,e,Y,"hour"):e>=Z?ge(r,e,Z,"minute"):e>=W?ge(r,e,W,"second"):r+" ms"}function ge(r,e,t,n){var o=e>=t*1.5;return Math.round(r/t)+" "+n+(o?"s":"")}});var ct=be((Wn,at)=>{function cr(r){t.debug=t,t.default=t,t.coerce=l,t.disable=s,t.enable=o,t.enabled=i,t.humanize=it(),t.destroy=d,Object.keys(r).forEach(u=>{t[u]=r[u]}),t.names=[],t.skips=[],t.formatters={};function e(u){let c=0;for(let h=0;h<u.length;h++)c=(c<<5)-c+u.charCodeAt(h),c|=0;return t.colors[Math.abs(c)%t.colors.length]}t.selectColor=e;function t(u){let c,h=null,E,p;function f(...m){if(!f.enabled)return;let g=f,x=Number(new Date),U=x-(c||x);g.diff=U,g.prev=c,g.curr=x,c=x,m[0]=t.coerce(m[0]),typeof m[0]!="string"&&m.unshift("%O");let C=0;m[0]=m[0].replace(/%([a-zA-Z%])/g,(O,A)=>{if(O==="%%")return"%";C++;let T=t.formatters[A];if(typeof T=="function"){let Q=m[C];O=T.call(g,Q),m.splice(C,1),C--}return O}),t.formatArgs.call(g,m),(g.log||t.log).apply(g,m)}return f.namespace=u,f.useColors=t.useColors(),f.color=t.selectColor(u),f.extend=n,f.destroy=t.destroy,Object.defineProperty(f,"enabled",{enumerable:!0,configurable:!1,get:()=>h!==null?h:(E!==t.namespaces&&(E=t.namespaces,p=t.enabled(u)),p),set:m=>{h=m}}),typeof t.init=="function"&&t.init(f),f}function n(u,c){let h=t(this.namespace+(typeof c>"u"?":":c)+u);return h.log=this.log,h}function o(u){t.save(u),t.namespaces=u,t.names=[],t.skips=[];let c,h=(typeof u=="string"?u:"").split(/[\s,]+/),E=h.length;for(c=0;c<E;c++)h[c]&&(u=h[c].replace(/\*/g,".*?"),u[0]==="-"?t.skips.push(new RegExp("^"+u.slice(1)+"$")):t.names.push(new RegExp("^"+u+"$")))}function s(){let u=[...t.names.map(a),...t.skips.map(a).map(c=>"-"+c)].join(",");return t.enable(""),u}function i(u){if(u[u.length-1]==="*")return!0;let c,h;for(c=0,h=t.skips.length;c<h;c++)if(t.skips[c].test(u))return!1;for(c=0,h=t.names.length;c<h;c++)if(t.names[c].test(u))return!0;return!1}function a(u){return u.toString().substring(2,u.toString().length-2).replace(/\.\*\?$/,"*")}function l(u){return u instanceof Error?u.stack||u.message:u}function d(){console.warn("Instance method `debug.destroy()` is deprecated and no longer does anything. It will be removed in the next major version of `debug`.")}return t.enable(t.load()),t}at.exports=cr});var ut=be((v,we)=>{v.formatArgs=fr;v.save=lr;v.load=hr;v.useColors=ur;v.storage=dr();v.destroy=(()=>{let r=!1;return()=>{r||(r=!0,console.warn("Instance method `debug.destroy()` is deprecated and no longer does anything. It will be removed in the next major version of `debug`."))}})();v.colors=["#0000CC","#0000FF","#0033CC","#0033FF","#0066CC","#0066FF","#0099CC","#0099FF","#00CC00","#00CC33","#00CC66","#00CC99","#00CCCC","#00CCFF","#3300CC","#3300FF","#3333CC","#3333FF","#3366CC","#3366FF","#3399CC","#3399FF","#33CC00","#33CC33","#33CC66","#33CC99","#33CCCC","#33CCFF","#6600CC","#6600FF","#6633CC","#6633FF","#66CC00","#66CC33","#9900CC","#9900FF","#9933CC","#9933FF","#99CC00","#99CC33","#CC0000","#CC0033","#CC0066","#CC0099","#CC00CC","#CC00FF","#CC3300","#CC3333","#CC3366","#CC3399","#CC33CC","#CC33FF","#CC6600","#CC6633","#CC9900","#CC9933","#CCCC00","#CCCC33","#FF0000","#FF0033","#FF0066","#FF0099","#FF00CC","#FF00FF","#FF3300","#FF3333","#FF3366","#FF3399","#FF33CC","#FF33FF","#FF6600","#FF6633","#FF9900","#FF9933","#FFCC00","#FFCC33"];function ur(){return typeof window<"u"&&window.process&&(window.process.type==="renderer"||window.process.__nwjs)?!0:typeof navigator<"u"&&navigator.userAgent&&navigator.userAgent.toLowerCase().match(/(edge|trident)\/(\d+)/)?!1:typeof document<"u"&&document.documentElement&&document.documentElement.style&&document.documentElement.style.WebkitAppearance||typeof window<"u"&&window.console&&(window.console.firebug||window.console.exception&&window.console.table)||typeof navigator<"u"&&navigator.userAgent&&navigator.userAgent.toLowerCase().match(/firefox\/(\d+)/)&&parseInt(RegExp.$1,10)>=31||typeof navigator<"u"&&navigator.userAgent&&navigator.userAgent.toLowerCase().match(/applewebkit\/(\d+)/)}function fr(r){if(r[0]=(this.useColors?"%c":"")+this.namespace+(this.useColors?" %c":" ")+r[0]+(this.useColors?"%c ":" ")+"+"+we.exports.humanize(this.diff),!this.useColors)return;let e="color: "+this.color;r.splice(1,0,e,"color: inherit");let t=0,n=0;r[0].replace(/%[a-zA-Z%]/g,o=>{o!=="%%"&&(t++,o==="%c"&&(n=t))}),r.splice(n,0,e)}v.log=console.debug||console.log||(()=>{});function lr(r){try{r?v.storage.setItem("debug",r):v.storage.removeItem("debug")}catch{}}function hr(){let r;try{r=v.storage.getItem("debug")}catch{}return!r&&typeof process<"u"&&"env"in process&&(r=process.env.DEBUG),r}function dr(){try{return localStorage}catch{}}we.exports=ct()(v);var{formatters:pr}=we.exports;pr.j=function(r){try{return JSON.stringify(r)}catch(e){return"[UnexpectedJSONParseError]: "+e.message}}});var Et=be((ko,Ct)=>{"use strict";function xt(r,e){for(let t in e)Object.defineProperty(r,t,{value:e[t],enumerable:!0,configurable:!0});return r}function $r(r,e,t){if(!r||typeof r=="string")throw new TypeError("Please pass an Error to err-code");t||(t={}),typeof e=="object"&&(t=e,e=""),e&&(t.code=e);try{return xt(r,t)}catch{t.message=r.message,t.stack=r.stack;let o=function(){};return o.prototype=Object.create(Object.getPrototypeOf(r)),xt(new o,t)}}Ct.exports=$r});var Xn={};L(Xn,{PROTOCOL_ID:()=>N,handle:()=>Qt,lazySelect:()=>Kt,select:()=>Jt});var N="/multistream/1.0.0";var I=ot(ut(),1);var Re={};L(Re,{base58btc:()=>D,base58flickr:()=>xr});function mr(r,e){if(r.length>=255)throw new TypeError("Alphabet too long");for(var t=new Uint8Array(256),n=0;n<t.length;n++)t[n]=255;for(var o=0;o<r.length;o++){var s=r.charAt(o),i=s.charCodeAt(0);if(t[i]!==255)throw new TypeError(s+" is ambiguous");t[i]=o}var a=r.length,l=r.charAt(0),d=Math.log(a)/Math.log(256),u=Math.log(256)/Math.log(a);function c(p){if(p instanceof Uint8Array||(ArrayBuffer.isView(p)?p=new Uint8Array(p.buffer,p.byteOffset,p.byteLength):Array.isArray(p)&&(p=Uint8Array.from(p))),!(p instanceof Uint8Array))throw new TypeError("Expected Uint8Array");if(p.length===0)return"";for(var f=0,m=0,g=0,x=p.length;g!==x&&p[g]===0;)g++,f++;for(var U=(x-g)*u+1>>>0,C=new Uint8Array(U);g!==x;){for(var R=p[g],O=0,A=U-1;(R!==0||O<m)&&A!==-1;A--,O++)R+=256*C[A]>>>0,C[A]=R%a>>>0,R=R/a>>>0;if(R!==0)throw new Error("Non-zero carry");m=O,g++}for(var T=U-m;T!==U&&C[T]===0;)T++;for(var Q=l.repeat(f);T<U;++T)Q+=r.charAt(C[T]);return Q}function h(p){if(typeof p!="string")throw new TypeError("Expected String");if(p.length===0)return new Uint8Array;var f=0;if(p[f]!==" "){for(var m=0,g=0;p[f]===l;)m++,f++;for(var x=(p.length-f)*d+1>>>0,U=new Uint8Array(x);p[f];){var C=t[p.charCodeAt(f)];if(C===255)return;for(var R=0,O=x-1;(C!==0||R<g)&&O!==-1;O--,R++)C+=a*U[O]>>>0,U[O]=C%256>>>0,C=C/256>>>0;if(C!==0)throw new Error("Non-zero carry");g=R,f++}if(p[f]!==" "){for(var A=x-g;A!==x&&U[A]===0;)A++;for(var T=new Uint8Array(m+(x-A)),Q=m;A!==x;)T[Q++]=U[A++];return T}}}function E(p){var f=h(p);if(f)return f;throw new Error(`Non-${e} character`)}return{encode:c,decodeUnsafe:h,decode:E}}var br=mr,gr=br,ft=gr;var Yn=new Uint8Array(0);var lt=(r,e)=>{if(r===e)return!0;if(r.byteLength!==e.byteLength)return!1;for(let t=0;t<r.byteLength;t++)if(r[t]!==e[t])return!1;return!0},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")};var ht=r=>new TextEncoder().encode(r),dt=r=>new TextDecoder().decode(r);var Te=class{constructor(e,t,n){this.name=e,this.prefix=t,this.baseEncode=n}encode(e){if(e instanceof Uint8Array)return`${this.prefix}${this.baseEncode(e)}`;throw Error("Unknown type, must be binary type")}},Ne=class{constructor(e,t,n){if(this.name=e,this.prefix=t,t.codePointAt(0)===void 0)throw new Error("Invalid prefix character");this.prefixCodePoint=t.codePointAt(0),this.baseDecode=n}decode(e){if(typeof e=="string"){if(e.codePointAt(0)!==this.prefixCodePoint)throw Error(`Unable to decode multibase string ${JSON.stringify(e)}, ${this.name} decoder only supports inputs prefixed with ${this.prefix}`);return this.baseDecode(e.slice(this.prefix.length))}else throw Error("Can only multibase decode strings")}or(e){return mt(this,e)}},De=class{constructor(e){this.decoders=e}or(e){return mt(this,e)}decode(e){let t=e[0],n=this.decoders[t];if(n)return n.decode(e);throw RangeError(`Unable to decode multibase string ${JSON.stringify(e)}, only inputs prefixed with ${Object.keys(this.decoders)} are supported`)}},mt=(r,e)=>new De({...r.decoders||{[r.prefix]:r},...e.decoders||{[e.prefix]:e}}),Ie=class{constructor(e,t,n,o){this.name=e,this.prefix=t,this.baseEncode=n,this.baseDecode=o,this.encoder=new Te(e,t,n),this.decoder=new Ne(e,t,o)}encode(e){return this.encoder.encode(e)}decode(e){return this.decoder.decode(e)}},ee=({name:r,prefix:e,encode:t,decode:n})=>new Ie(r,e,t,n),P=({prefix:r,name:e,alphabet:t})=>{let{encode:n,decode:o}=ft(t,e);return ee({prefix:r,name:e,encode:n,decode:s=>M(o(s))})},wr=(r,e,t,n)=>{let o={};for(let u=0;u<e.length;++u)o[e[u]]=u;let s=r.length;for(;r[s-1]==="=";)--s;let i=new Uint8Array(s*t/8|0),a=0,l=0,d=0;for(let u=0;u<s;++u){let c=o[r[u]];if(c===void 0)throw new SyntaxError(`Non-${n} character`);l=l<<t|c,a+=t,a>=8&&(a-=8,i[d++]=255&l>>a)}if(a>=t||255&l<<8-a)throw new SyntaxError("Unexpected end of data");return i},yr=(r,e,t)=>{let n=e[e.length-1]==="=",o=(1<<t)-1,s="",i=0,a=0;for(let l=0;l<r.length;++l)for(a=a<<8|r[l],i+=8;i>t;)i-=t,s+=e[o&a>>i];if(i&&(s+=e[o&a<<t-i]),n)for(;s.length*t&7;)s+="=";return s},b=({name:r,prefix:e,bitsPerChar:t,alphabet:n})=>ee({prefix:e,name:r,encode(o){return yr(o,n,t)},decode(o){return wr(o,n,t,r)}});var D=P({name:"base58btc",prefix:"z",alphabet:"123456789ABCDEFGHJKLMNPQRSTUVWXYZabcdefghijkmnopqrstuvwxyz"}),xr=P({name:"base58flickr",prefix:"Z",alphabet:"123456789abcdefghijkmnopqrstuvwxyzABCDEFGHJKLMNPQRSTUVWXYZ"});var ke={};L(ke,{base32:()=>z,base32hex:()=>Lr,base32hexpad:()=>Sr,base32hexpadupper:()=>Fr,base32hexupper:()=>vr,base32pad:()=>Er,base32padupper:()=>Ar,base32upper:()=>Cr,base32z:()=>Ur});var z=b({prefix:"b",name:"base32",alphabet:"abcdefghijklmnopqrstuvwxyz234567",bitsPerChar:5}),Cr=b({prefix:"B",name:"base32upper",alphabet:"ABCDEFGHIJKLMNOPQRSTUVWXYZ234567",bitsPerChar:5}),Er=b({prefix:"c",name:"base32pad",alphabet:"abcdefghijklmnopqrstuvwxyz234567=",bitsPerChar:5}),Ar=b({prefix:"C",name:"base32padupper",alphabet:"ABCDEFGHIJKLMNOPQRSTUVWXYZ234567=",bitsPerChar:5}),Lr=b({prefix:"v",name:"base32hex",alphabet:"0123456789abcdefghijklmnopqrstuv",bitsPerChar:5}),vr=b({prefix:"V",name:"base32hexupper",alphabet:"0123456789ABCDEFGHIJKLMNOPQRSTUV",bitsPerChar:5}),Sr=b({prefix:"t",name:"base32hexpad",alphabet:"0123456789abcdefghijklmnopqrstuv=",bitsPerChar:5}),Fr=b({prefix:"T",name:"base32hexpadupper",alphabet:"0123456789ABCDEFGHIJKLMNOPQRSTUV=",bitsPerChar:5}),Ur=b({prefix:"h",name:"base32z",alphabet:"ybndrfg8ejkmcpqxot1uwisza345h769",bitsPerChar:5});var Be={};L(Be,{base64:()=>Me,base64pad:()=>Or,base64url:()=>Tr,base64urlpad:()=>Nr});var Me=b({prefix:"m",name:"base64",alphabet:"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/",bitsPerChar:6}),Or=b({prefix:"M",name:"base64pad",alphabet:"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/=",bitsPerChar:6}),Tr=b({prefix:"u",name:"base64url",alphabet:"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789-_",bitsPerChar:6}),Nr=b({prefix:"U",name:"base64urlpad",alphabet:"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789-_=",bitsPerChar:6});I.default.formatters.b=r=>r==null?"undefined":D.baseEncode(r);I.default.formatters.t=r=>r==null?"undefined":z.baseEncode(r);I.default.formatters.m=r=>r==null?"undefined":Me.baseEncode(r);I.default.formatters.p=r=>r==null?"undefined":r.toString();I.default.formatters.c=r=>r==null?"undefined":r.toString();I.default.formatters.k=r=>r==null?"undefined":r.toString();function Dr(r){let e=()=>{};return e.enabled=!1,e.color="",e.diff=0,e.log=()=>{},e.namespace=r,e.destroy=()=>!0,e.extend=()=>e,e}function te(r){let e=Dr(`${r}:trace`);return I.default.enabled(`${r}:trace`)&&I.default.names.map(t=>t.toString()).find(t=>t.includes(":trace"))!=null&&(e=(0,I.default)(`${r}:trace`)),Object.assign((0,I.default)(r),{error:(0,I.default)(`${r}:error`),trace:e})}var V=class extends Error{constructor(e,t,n){super(e),this.code=t,this.name=n?.name??"CodeError",this.props=n??{}}};function j(r){return globalThis.Buffer!=null?new Uint8Array(r.buffer,r.byteOffset,r.byteLength):r}function B(r=0){return globalThis.Buffer?.alloc!=null?j(globalThis.Buffer.alloc(r)):new Uint8Array(r)}function k(r=0){return globalThis.Buffer?.allocUnsafe!=null?j(globalThis.Buffer.allocUnsafe(r)):new Uint8Array(r)}function Pe(r,e){e==null&&(e=r.reduce((o,s)=>o+s.length,0));let t=k(e),n=0;for(let o of r)t.set(o,n),n+=o.length;return j(t)}function bt(r,e){if(r===e)return!0;if(r.byteLength!==e.byteLength)return!1;for(let t=0;t<r.byteLength;t++)if(r[t]!==e[t])return!1;return!0}var wt=Symbol.for("@achingbrain/uint8arraylist");function gt(r,e){if(e==null||e<0)throw new RangeError("index is out of bounds");let t=0;for(let n of r){let o=t+n.byteLength;if(e<o)return{buf:n,index:e-t};t=o}throw new RangeError("index is out of bounds")}function ye(r){return!!r?.[wt]}var w=class{constructor(...e){Object.defineProperty(this,wt,{value:!0}),this.bufs=[],this.length=0,e.length>0&&this.appendAll(e)}*[Symbol.iterator](){yield*this.bufs}get byteLength(){return this.length}append(...e){this.appendAll(e)}appendAll(e){let t=0;for(let n of e)if(n instanceof Uint8Array)t+=n.byteLength,this.bufs.push(n);else if(ye(n))t+=n.byteLength,this.bufs.push(...n.bufs);else throw new Error("Could not append value, must be an Uint8Array or a Uint8ArrayList");this.length+=t}prepend(...e){this.prependAll(e)}prependAll(e){let t=0;for(let n of e.reverse())if(n instanceof Uint8Array)t+=n.byteLength,this.bufs.unshift(n);else if(ye(n))t+=n.byteLength,this.bufs.unshift(...n.bufs);else throw new Error("Could not prepend value, must be an Uint8Array or a Uint8ArrayList");this.length+=t}get(e){let t=gt(this.bufs,e);return t.buf[t.index]}set(e,t){let n=gt(this.bufs,e);n.buf[n.index]=t}write(e,t=0){if(e instanceof Uint8Array)for(let n=0;n<e.length;n++)this.set(t+n,e[n]);else if(ye(e))for(let n=0;n<e.length;n++)this.set(t+n,e.get(n));else throw new Error("Could not write value, must be an Uint8Array or a Uint8ArrayList")}consume(e){if(e=Math.trunc(e),!(Number.isNaN(e)||e<=0)){if(e===this.byteLength){this.bufs=[],this.length=0;return}for(;this.bufs.length>0;)if(e>=this.bufs[0].byteLength)e-=this.bufs[0].byteLength,this.length-=this.bufs[0].byteLength,this.bufs.shift();else{this.bufs[0]=this.bufs[0].subarray(e),this.length-=e;break}}}slice(e,t){let{bufs:n,length:o}=this._subList(e,t);return Pe(n,o)}subarray(e,t){let{bufs:n,length:o}=this._subList(e,t);return n.length===1?n[0]:Pe(n,o)}sublist(e,t){let{bufs:n,length:o}=this._subList(e,t),s=new w;return s.length=o,s.bufs=n,s}_subList(e,t){if(e=e??0,t=t??this.length,e<0&&(e=this.length+e),t<0&&(t=this.length+t),e<0||t>this.length)throw new RangeError("index is out of bounds");if(e===t)return{bufs:[],length:0};if(e===0&&t===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,l=a+i.byteLength;if(o=l,e>=l)continue;let d=e>=a&&e<l,u=t>a&&t<=l;if(d&&u){if(e===a&&t===l){n.push(i);break}let c=e-a;n.push(i.subarray(c,c+(t-e)));break}if(d){if(e===0){n.push(i);continue}n.push(i.subarray(e-a));continue}if(u){if(t===l){n.push(i);break}n.push(i.subarray(0,t-a));break}n.push(i)}return{bufs:n,length:t-e}}indexOf(e,t=0){if(!ye(e)&&!(e instanceof Uint8Array))throw new TypeError('The "value" argument must be a Uint8ArrayList or Uint8Array');let n=e instanceof Uint8Array?e:e.subarray();if(t=Number(t??0),isNaN(t)&&(t=0),t<0&&(t=this.length+t),t<0&&(t=0),e.length===0)return t>this.length?this.length:t;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 c=0;c<s;c++)i[c]=-1;for(let c=0;c<o;c++)i[n[c]]=c;let a=i,l=this.byteLength-n.byteLength,d=n.byteLength-1,u;for(let c=t;c<=l;c+=u){u=0;for(let h=d;h>=0;h--){let E=this.get(c+h);if(n[h]!==E){u=Math.max(1,h-a[E]);break}}if(u===0)return c}return-1}getInt8(e){let t=this.subarray(e,e+1);return new DataView(t.buffer,t.byteOffset,t.byteLength).getInt8(0)}setInt8(e,t){let n=k(1);new DataView(n.buffer,n.byteOffset,n.byteLength).setInt8(0,t),this.write(n,e)}getInt16(e,t){let n=this.subarray(e,e+2);return new DataView(n.buffer,n.byteOffset,n.byteLength).getInt16(0,t)}setInt16(e,t,n){let o=B(2);new DataView(o.buffer,o.byteOffset,o.byteLength).setInt16(0,t,n),this.write(o,e)}getInt32(e,t){let n=this.subarray(e,e+4);return new DataView(n.buffer,n.byteOffset,n.byteLength).getInt32(0,t)}setInt32(e,t,n){let o=B(4);new DataView(o.buffer,o.byteOffset,o.byteLength).setInt32(0,t,n),this.write(o,e)}getBigInt64(e,t){let n=this.subarray(e,e+8);return new DataView(n.buffer,n.byteOffset,n.byteLength).getBigInt64(0,t)}setBigInt64(e,t,n){let o=B(8);new DataView(o.buffer,o.byteOffset,o.byteLength).setBigInt64(0,t,n),this.write(o,e)}getUint8(e){let t=this.subarray(e,e+1);return new DataView(t.buffer,t.byteOffset,t.byteLength).getUint8(0)}setUint8(e,t){let n=k(1);new DataView(n.buffer,n.byteOffset,n.byteLength).setUint8(0,t),this.write(n,e)}getUint16(e,t){let n=this.subarray(e,e+2);return new DataView(n.buffer,n.byteOffset,n.byteLength).getUint16(0,t)}setUint16(e,t,n){let o=B(2);new DataView(o.buffer,o.byteOffset,o.byteLength).setUint16(0,t,n),this.write(o,e)}getUint32(e,t){let n=this.subarray(e,e+4);return new DataView(n.buffer,n.byteOffset,n.byteLength).getUint32(0,t)}setUint32(e,t,n){let o=B(4);new DataView(o.buffer,o.byteOffset,o.byteLength).setUint32(0,t,n),this.write(o,e)}getBigUint64(e,t){let n=this.subarray(e,e+8);return new DataView(n.buffer,n.byteOffset,n.byteLength).getBigUint64(0,t)}setBigUint64(e,t,n){let o=B(8);new DataView(o.buffer,o.byteOffset,o.byteLength).setBigUint64(0,t,n),this.write(o,e)}getFloat32(e,t){let n=this.subarray(e,e+4);return new DataView(n.buffer,n.byteOffset,n.byteLength).getFloat32(0,t)}setFloat32(e,t,n){let o=B(4);new DataView(o.buffer,o.byteOffset,o.byteLength).setFloat32(0,t,n),this.write(o,e)}getFloat64(e,t){let n=this.subarray(e,e+8);return new DataView(n.buffer,n.byteOffset,n.byteLength).getFloat64(0,t)}setFloat64(e,t,n){let o=B(8);new DataView(o.buffer,o.byteOffset,o.byteLength).setFloat64(0,t,n),this.write(o,e)}equals(e){if(e==null||!(e instanceof w)||e.bufs.length!==this.bufs.length)return!1;for(let t=0;t<this.bufs.length;t++)if(!bt(this.bufs[t],e.bufs[t]))return!1;return!0}static fromUint8Arrays(e,t){let n=new w;return n.bufs=e,t==null&&(t=e.reduce((o,s)=>o+s.byteLength,0)),n.length=t,n}};function xe(r){return r instanceof Uint8Array?{get(e){return r[e]},set(e,t){r[e]=t}}:{get(e){return r.get(e)},set(e,t){r.set(e,t)}}}var yt=4294967296,S=class{constructor(e=0,t=0){this.hi=e,this.lo=t}toBigInt(e){if(e===!0)return BigInt(this.lo>>>0)+(BigInt(this.hi>>>0)<<32n);if(this.hi>>>31){let t=~this.lo+1>>>0,n=~this.hi>>>0;return t===0&&(n=n+1>>>0),-(BigInt(t)+(BigInt(n)<<32n))}return BigInt(this.lo>>>0)+(BigInt(this.hi>>>0)<<32n)}toNumber(e){return Number(this.toBigInt(e))}zzDecode(){let e=-(this.lo&1),t=((this.lo>>>1|this.hi<<31)^e)>>>0,n=(this.hi>>>1^e)>>>0;return new S(n,t)}zzEncode(){let e=this.hi>>31,t=((this.hi<<1|this.lo>>>31)^e)>>>0,n=(this.lo<<1^e)>>>0;return new S(t,n)}toBytes(e,t=0){let n=xe(e);for(;this.hi>0;)n.set(t++,this.lo&127|128),this.lo=(this.lo>>>7|this.hi<<25)>>>0,this.hi>>>=7;for(;this.lo>127;)n.set(t++,this.lo&127|128),this.lo=this.lo>>>7;n.set(t++,this.lo)}static fromBigInt(e){if(e===0n)return new S;let t=e<0;t&&(e=-e);let n=Number(e>>32n)|0,o=Number(e-(BigInt(n)<<32n))|0;return t&&(n=~n>>>0,o=~o>>>0,++o>yt&&(o=0,++n>yt&&(n=0))),new S(n,o)}static fromNumber(e){if(e===0)return new S;let t=e<0;t&&(e=-e);let n=e>>>0,o=(e-n)/4294967296>>>0;return t&&(o=~o>>>0,n=~n>>>0,++n>4294967295&&(n=0,++o>4294967295&&(o=0))),new S(o,n)}static fromBytes(e,t=0){let n=xe(e),o=new S,s=0;if(e.length-t>4){for(;s<4;++s)if(o.lo=(o.lo|(n.get(t)&127)<<s*7)>>>0,n.get(t++)<128)return o;if(o.lo=(o.lo|(n.get(t)&127)<<28)>>>0,o.hi=(o.hi|(n.get(t)&127)>>4)>>>0,n.get(t++)<128)return o;s=0}else for(;s<4;++s){if(t>=e.length)throw RangeError(`index out of range: ${t} > ${e.length}`);if(o.lo=(o.lo|(n.get(t)&127)<<s*7)>>>0,n.get(t++)<128)return o}if(e.length-t>4){for(;s<5;++s)if(o.hi=(o.hi|(n.get(t)&127)<<s*7+3)>>>0,n.get(t++)<128)return o}else if(t<e.byteLength)for(;s<5;++s){if(t>=e.length)throw RangeError(`index out of range: ${t} > ${e.length}`);if(o.hi=(o.hi|(n.get(t)&127)<<s*7+3)>>>0,n.get(t++)<128)return o}throw RangeError("invalid varint encoding")}};var Ir=Math.pow(2,7),Rr=Math.pow(2,14),kr=Math.pow(2,21),Mr=Math.pow(2,28),Br=Math.pow(2,35),Pr=Math.pow(2,42),zr=Math.pow(2,49),Vr=Math.pow(2,56),_r=Math.pow(2,63),q={encodingLength(r){return r<Ir?1:r<Rr?2:r<kr?3:r<Mr?4:r<Br?5:r<Pr?6:r<zr?7:r<Vr?8:r<_r?9:10},encode(r,e,t=0){if(Number.MAX_SAFE_INTEGER!=null&&r>Number.MAX_SAFE_INTEGER)throw new RangeError("Could not encode varint");return e==null&&(e=k(q.encodingLength(r))),S.fromNumber(r).toBytes(e,t),e},decode(r,e=0){return S.fromBytes(r,e).toNumber(!0)}};function Ce(r){return r[Symbol.asyncIterator]!=null}var Ee=r=>{let e=q.encodingLength(r),t=k(e);return q.encode(r,t),Ee.bytes=e,t};Ee.bytes=0;function Ae(r,e){e=e??{};let t=e.lengthEncoder??Ee;function*n(o){let s=t(o.byteLength);s instanceof Uint8Array?yield s:yield*s,o instanceof Uint8Array?yield o:yield*o}return Ce(r)?async function*(){for await(let o of r)yield*n(o)}():function*(){for(let o of r)yield*n(o)}()}Ae.single=(r,e)=>{e=e??{};let t=e.lengthEncoder??Ee;return new w(t(r.byteLength),r)};var re=ot(Et(),1);var Gr=8,jr=1024*1024*4,H;(function(r){r[r.LENGTH=0]="LENGTH",r[r.DATA=1]="DATA"})(H||(H={}));var ze=r=>{let e=q.decode(r);return ze.bytes=q.encodingLength(e),e};ze.bytes=0;function ae(r,e){let t=new w,n=H.LENGTH,o=-1,s=e?.lengthDecoder??ze,i=e?.maxLengthLength??Gr,a=e?.maxDataLength??jr;function*l(){for(;t.byteLength>0;){if(n===H.LENGTH)try{if(o=s(t),o<0)throw(0,re.default)(new Error("invalid message length"),"ERR_INVALID_MSG_LENGTH");if(o>a)throw(0,re.default)(new Error("message length too long"),"ERR_MSG_DATA_TOO_LONG");let d=s.bytes;t.consume(d),e?.onLength!=null&&e.onLength(o),n=H.DATA}catch(d){if(d instanceof RangeError){if(t.byteLength>i)throw(0,re.default)(new Error("message length length too long"),"ERR_MSG_LENGTH_TOO_LONG");break}throw d}if(n===H.DATA){if(t.byteLength<o)break;let d=t.sublist(0,o);t.consume(o),e?.onData!=null&&e.onData(d),yield d,n=H.LENGTH}}}return Ce(r)?async function*(){for await(let d of r)t.append(d),yield*l();if(t.byteLength>0)throw(0,re.default)(new Error("unexpected end of input"),"ERR_UNEXPECTED_EOF")}():function*(){for(let d of r)t.append(d),yield*l();if(t.byteLength>0)throw(0,re.default)(new Error("unexpected end of input"),"ERR_UNEXPECTED_EOF")}()}ae.fromReader=(r,e)=>{let t=1,n=async function*(){for(;;)try{let{done:s,value:i}=await r.next(t);if(s===!0)return;i!=null&&(yield i)}catch(s){if(s.code==="ERR_UNDER_READ")return{done:!0,value:null};throw s}finally{t=1}}();return ae(n,{...e??{},onLength:s=>{t=s}})};var Le=class{constructor(e){if(!(e>0)||e-1&e)throw new Error("Max size for a FixedFIFO should be a power of two");this.buffer=new Array(e),this.mask=e-1,this.top=0,this.btm=0,this.next=null}push(e){return this.buffer[this.top]!==void 0?!1:(this.buffer[this.top]=e,this.top=this.top+1&this.mask,!0)}shift(){let e=this.buffer[this.btm];if(e!==void 0)return this.buffer[this.btm]=void 0,this.btm=this.btm+1&this.mask,e}isEmpty(){return this.buffer[this.btm]===void 0}},ne=class{constructor(e={}){this.hwm=e.splitLimit??16,this.head=new Le(this.hwm),this.tail=this.head,this.size=0}calculateSize(e){return e?.byteLength!=null?e.byteLength:1}push(e){if(e?.value!=null&&(this.size+=this.calculateSize(e.value)),!this.head.push(e)){let t=this.head;this.head=t.next=new Le(2*this.head.buffer.length),this.head.push(e)}}shift(){let e=this.tail.shift();if(e===void 0&&this.tail.next!=null){let t=this.tail.next;this.tail.next=null,this.tail=t,e=this.tail.shift()}return e?.value!=null&&(this.size-=this.calculateSize(e.value)),e}isEmpty(){return this.head.isEmpty()}};function _(r={}){return Hr(t=>{let n=t.shift();if(n==null)return{done:!0};if(n.error!=null)throw n.error;return{done:n.done===!0,value:n.value}},r)}function Hr(r,e){e=e??{};let t=e.onEnd,n=new ne,o,s,i,a=async()=>n.isEmpty()?i?{done:!0}:await new Promise((f,m)=>{s=g=>{s=null,n.push(g);try{f(r(n))}catch(x){m(x)}return o}}):r(n),l=f=>s!=null?s(f):(n.push(f),o),d=f=>(n=new ne,s!=null?s({error:f}):(n.push({error:f}),o)),u=f=>{if(i)return o;if(e?.objectMode!==!0&&f?.byteLength==null)throw new Error("objectMode was not true but tried to push non-Uint8Array value");return l({done:!1,value:f})},c=f=>i?o:(i=!0,f!=null?d(f):l({done:!0})),h=()=>(n=new ne,c(),{done:!0}),E=f=>(c(f),{done:!0});if(o={[Symbol.asyncIterator](){return this},next:a,return:h,throw:E,push:u,end:c,get readableLength(){return n.size}},t==null)return o;let p=o;return o={[Symbol.asyncIterator](){return this},next(){return p.next()},throw(f){return p.throw(f),t!=null&&(t(f),t=void 0),{done:!0}},return(){return p.return(),t!=null&&(t(),t=void 0),{done:!0}},push:u,end(f){return p.end(f),t!=null&&(t(f),t=void 0),o},get readableLength(){return p.readableLength}},o}function Xr(r){return r[Symbol.asyncIterator]!=null}function Jr(...r){let e=[];for(let t of r)Xr(t)||e.push(t);return e.length===r.length?function*(){for(let t of e)yield*t}():async function*(){let t=_({objectMode:!0});Promise.resolve().then(async()=>{try{await Promise.all(r.map(async n=>{for await(let o of n)t.push(o)})),t.end()}catch(n){t.end(n)}}),yield*t}()}var ve=Jr;function At(r,...e){if(r==null)throw new Error("Empty pipeline");if(Ve(r)){let n=r;r=()=>n.source}else if(vt(r)||Lt(r)){let n=r;r=()=>n}let t=[r,...e];if(t.length>1&&Ve(t[t.length-1])&&(t[t.length-1]=t[t.length-1].sink),t.length>2)for(let n=1;n<t.length-1;n++)Ve(t[n])&&(t[n]=Qr(t[n]));return Kr(...t)}var Kr=(...r)=>{let e;for(;r.length>0;)e=r.shift()(e);return e},Lt=r=>r?.[Symbol.asyncIterator]!=null,vt=r=>r?.[Symbol.iterator]!=null,Ve=r=>r==null?!1:r.sink!=null&&r.source!=null,Qr=r=>e=>{let t=r.sink(e);if(t?.then!=null){let n=_({objectMode:!0});t.then(()=>{n.end()},i=>{n.end(i)});let o,s=r.source;if(Lt(s))o=async function*(){yield*s,n.end()};else if(vt(s))o=function*(){yield*s,n.end()};else throw new Error("Unknown duplex source type - must be Iterable or AsyncIterable");return ve(n,o())}return r.source};var _e={};L(_e,{identity:()=>Wr});var Wr=ee({prefix:"\0",name:"identity",encode:r=>dt(r),decode:r=>ht(r)});var $e={};L($e,{base2:()=>Zr});var Zr=b({prefix:"0",name:"base2",alphabet:"01",bitsPerChar:1});var Ge={};L(Ge,{base8:()=>Yr});var Yr=b({prefix:"7",name:"base8",alphabet:"01234567",bitsPerChar:3});var je={};L(je,{base10:()=>en});var en=P({prefix:"9",name:"base10",alphabet:"0123456789"});var qe={};L(qe,{base16:()=>tn,base16upper:()=>rn});var tn=b({prefix:"f",name:"base16",alphabet:"0123456789abcdef",bitsPerChar:4}),rn=b({prefix:"F",name:"base16upper",alphabet:"0123456789ABCDEF",bitsPerChar:4});var He={};L(He,{base36:()=>nn,base36upper:()=>on});var nn=P({prefix:"k",name:"base36",alphabet:"0123456789abcdefghijklmnopqrstuvwxyz"}),on=P({prefix:"K",name:"base36upper",alphabet:"0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZ"});var Xe={};L(Xe,{base256emoji:()=>fn});var St=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}"),sn=St.reduce((r,e,t)=>(r[t]=e,r),[]),an=St.reduce((r,e,t)=>(r[e.codePointAt(0)]=t,r),[]);function cn(r){return r.reduce((e,t)=>(e+=sn[t],e),"")}function un(r){let e=[];for(let t of r){let n=an[t.codePointAt(0)];if(n===void 0)throw new Error(`Non-base256emoji character: ${t}`);e.push(n)}return new Uint8Array(e)}var fn=ee({prefix:"\u{1F680}",name:"base256emoji",encode:cn,decode:un});var We={};L(We,{sha256:()=>On,sha512:()=>Tn});var ln=Ot,Ft=128,hn=127,dn=~hn,pn=Math.pow(2,31);function Ot(r,e,t){e=e||[],t=t||0;for(var n=t;r>=pn;)e[t++]=r&255|Ft,r/=128;for(;r&dn;)e[t++]=r&255|Ft,r>>>=7;return e[t]=r|0,Ot.bytes=t-n+1,e}var mn=Je,bn=128,Ut=127;function Je(r,n){var t=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++],t+=o<28?(i&Ut)<<o:(i&Ut)*Math.pow(2,o),o+=7}while(i>=bn);return Je.bytes=s-n,t}var gn=Math.pow(2,7),wn=Math.pow(2,14),yn=Math.pow(2,21),xn=Math.pow(2,28),Cn=Math.pow(2,35),En=Math.pow(2,42),An=Math.pow(2,49),Ln=Math.pow(2,56),vn=Math.pow(2,63),Sn=function(r){return r<gn?1:r<wn?2:r<yn?3:r<xn?4:r<Cn?5:r<En?6:r<An?7:r<Ln?8:r<vn?9:10},Fn={encode:ln,decode:mn,encodingLength:Sn},Un=Fn,ce=Un;var ue=(r,e=0)=>[ce.decode(r,e),ce.decode.bytes],oe=(r,e,t=0)=>(ce.encode(r,e,t),e),se=r=>ce.encodingLength(r);var X=(r,e)=>{let t=e.byteLength,n=se(r),o=n+se(t),s=new Uint8Array(o+t);return oe(r,s,0),oe(t,s,n),s.set(e,o),new ie(r,t,e,s)},Tt=r=>{let e=M(r),[t,n]=ue(e),[o,s]=ue(e.subarray(n)),i=e.subarray(n+s);if(i.byteLength!==o)throw new Error("Incorrect length");return new ie(t,o,i,e)},Nt=(r,e)=>{if(r===e)return!0;{let t=e;return r.code===t.code&&r.size===t.size&&t.bytes instanceof Uint8Array&&lt(r.bytes,t.bytes)}},ie=class{constructor(e,t,n,o){this.code=e,this.size=t,this.digest=n,this.bytes=o}};var Qe=({name:r,code:e,encode:t})=>new Ke(r,e,t),Ke=class{constructor(e,t,n){this.name=e,this.code=t,this.encode=n}digest(e){if(e instanceof Uint8Array){let t=this.encode(e);return t instanceof Uint8Array?X(this.code,t):t.then(n=>X(this.code,n))}else throw Error("Unknown type, must be binary type")}};var It=r=>async e=>new Uint8Array(await crypto.subtle.digest(r,e)),On=Qe({name:"sha2-256",code:18,encode:It("SHA-256")}),Tn=Qe({name:"sha2-512",code:19,encode:It("SHA-512")});var Ze={};L(Ze,{identity:()=>In});var Rt=0,Nn="identity",kt=M,Dn=r=>X(Rt,kt(r)),In={code:Rt,name:Nn,encode:kt,digest:Dn};var fs=new TextEncoder,ls=new TextDecoder;var Mt=(r,e)=>{let{bytes:t,version:n}=r;switch(n){case 0:return Bn(t,Ye(r),e||D.encoder);default:return Pn(t,Ye(r),e||z.encoder)}};var Bt=new WeakMap,Ye=r=>{let e=Bt.get(r);if(e==null){let t=new Map;return Bt.set(r,t),t}return e},y=class{constructor(e,t,n,o){this.code=t,this.version=e,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:e,multihash:t}=this;if(e!==le)throw new Error("Cannot convert a non dag-pb CID to CIDv0");if(t.code!==zn)throw new Error("Cannot convert non sha2-256 multihash CID to CIDv0");return y.createV0(t)}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:e,digest:t}=this.multihash,n=X(e,t);return y.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(e){return y.equals(this,e)}static equals(e,t){let n=t;return n&&e.code===n.code&&e.version===n.version&&Nt(e.multihash,n.multihash)}toString(e){return Mt(this,e)}toJSON(){return{"/":Mt(this)}}link(){return this}get[Symbol.toStringTag](){return"CID"}[Symbol.for("nodejs.util.inspect.custom")](){return`CID(${this.toString()})`}static asCID(e){if(e==null)return null;let t=e;if(t instanceof y)return t;if(t["/"]!=null&&t["/"]===t.bytes||t.asCID===t){let{version:n,code:o,multihash:s,bytes:i}=t;return new y(n,o,s,i||Pt(n,o,s.bytes))}else if(t[Vn]===!0){let{version:n,multihash:o,code:s}=t,i=Tt(o);return y.create(n,s,i)}else return null}static create(e,t,n){if(typeof t!="number")throw new Error("String codecs are no longer supported");if(!(n.bytes instanceof Uint8Array))throw new Error("Invalid digest");switch(e){case 0:{if(t!==le)throw new Error(`Version 0 CID must use dag-pb (code: ${le}) block encoding`);return new y(e,t,n,n.bytes)}case 1:{let o=Pt(e,t,n.bytes);return new y(e,t,n,o)}default:throw new Error("Invalid version")}}static createV0(e){return y.create(0,le,e)}static createV1(e,t){return y.create(1,e,t)}static decode(e){let[t,n]=y.decodeFirst(e);if(n.length)throw new Error("Incorrect length");return t}static decodeFirst(e){let t=y.inspectBytes(e),n=t.size-t.multihashSize,o=M(e.subarray(n,n+t.multihashSize));if(o.byteLength!==t.multihashSize)throw new Error("Incorrect length");let s=o.subarray(t.multihashSize-t.digestSize),i=new ie(t.multihashCode,t.digestSize,s,o);return[t.version===0?y.createV0(i):y.createV1(t.codec,i),e.subarray(t.size)]}static inspectBytes(e){let t=0,n=()=>{let[c,h]=ue(e.subarray(t));return t+=h,c},o=n(),s=le;if(o===18?(o=0,t=0):s=n(),o!==0&&o!==1)throw new RangeError(`Invalid CID version ${o}`);let i=t,a=n(),l=n(),d=t+l,u=d-i;return{version:o,codec:s,multihashCode:a,digestSize:l,multihashSize:u,size:d}}static parse(e,t){let[n,o]=Mn(e,t),s=y.decode(o);if(s.version===0&&e[0]!=="Q")throw Error("Version 0 CID string must not include multibase prefix");return Ye(s).set(n,e),s}},Mn=(r,e)=>{switch(r[0]){case"Q":{let t=e||D;return[D.prefix,t.decode(`${D.prefix}${r}`)]}case D.prefix:{let t=e||D;return[D.prefix,t.decode(r)]}case z.prefix:{let t=e||z;return[z.prefix,t.decode(r)]}default:{if(e==null)throw Error("To parse non base32 or base58btc encoded CID multibase decoder must be provided");return[r[0],e.decode(r)]}}},Bn=(r,e,t)=>{let{prefix:n}=t;if(n!==D.prefix)throw Error(`Cannot string encode V0 in ${t.name} encoding`);let o=e.get(n);if(o==null){let s=t.encode(r).slice(1);return e.set(n,s),s}else return o},Pn=(r,e,t)=>{let{prefix:n}=t,o=e.get(n);if(o==null){let s=t.encode(r);return e.set(n,s),s}else return o},le=112,zn=18,Pt=(r,e,t)=>{let n=se(r),o=n+se(e),s=new Uint8Array(o+t.byteLength);return oe(r,s,0),oe(e,s,n),s.set(t,o),s},Vn=Symbol.for("@ipld/js-cid/CID");var et={..._e,...$e,...Ge,...je,...qe,...ke,...He,...Re,...Be,...Xe},Cs={...We,...Ze};function Vt(r,e,t,n){return{name:r,prefix:e,encoder:{name:r,prefix:e,encode:t},decoder:{decode:n}}}var zt=Vt("utf8","u",r=>"u"+new TextDecoder("utf8").decode(r),r=>new TextEncoder().encode(r.substring(1))),tt=Vt("ascii","a",r=>{let e="a";for(let t=0;t<r.length;t++)e+=String.fromCharCode(r[t]);return e},r=>{r=r.substring(1);let e=k(r.length);for(let t=0;t<r.length;t++)e[t]=r.charCodeAt(t);return e}),_n={utf8:zt,"utf-8":zt,hex:et.base16,latin1:tt,ascii:tt,binary:tt,...et},Fe=_n;function F(r,e="utf8"){let t=Fe[e];if(t==null)throw new Error(`Unsupported encoding "${e}"`);return(e==="utf8"||e==="utf-8")&&globalThis.Buffer!=null&&globalThis.Buffer.from!=null?j(globalThis.Buffer.from(r,"utf-8")):t.decoder.decode(`${t.prefix}${r}`)}function $n(r){return r[Symbol.asyncIterator]!=null}function Gn(r){if($n(r))return(async()=>{for await(let e of r)return e})();for(let e of r)return e}var _t=Gn;var he=class extends Error{constructor(e,t){super(e??"The operation was aborted"),this.type="aborted",this.code=t??"ABORT_ERR"}};function $t(r){if(r!=null){if(typeof r[Symbol.iterator]=="function")return r[Symbol.iterator]();if(typeof r[Symbol.asyncIterator]=="function")return r[Symbol.asyncIterator]();if(typeof r.next=="function")return r}throw new Error("argument is not an iterator or iterable")}function Gt(r,e,t){let n=t??{},o=$t(r);async function*s(){let i,a=()=>{i?.()};for(e.addEventListener("abort",a);;){let l;try{if(e.aborted){let{abortMessage:u,abortCode:c}=n;throw new he(u,c)}let d=new Promise((u,c)=>{i=()=>{let{abortMessage:h,abortCode:E}=n;c(new he(h,E))}});l=await Promise.race([d,o.next()]),i=null}catch(d){e.removeEventListener("abort",a);let u=d.type==="aborted"&&e.aborted;if(u&&n.onAbort!=null&&await n.onAbort(r),typeof o.return=="function")try{let c=o.return();c instanceof Promise&&c.catch(h=>{n.onReturnError!=null&&n.onReturnError(h)})}catch(c){n.onReturnError!=null&&n.onReturnError(c)}if(u&&n.returnOnAbort===!0)return;throw d}if(l.done===!0)break;yield l.value}e.removeEventListener("abort",a)}return s()}function jt(r,e="utf8"){let t=Fe[e];if(t==null)throw new Error(`Unsupported encoding "${e}"`);return(e==="utf8"||e==="utf-8")&&globalThis.Buffer!=null&&globalThis.Buffer.from!=null?globalThis.Buffer.from(r.buffer,r.byteOffset,r.byteLength).toString("utf8"):t.encoder.encode(r).substring(1)}var qn=te("libp2p:mss"),qt=F(`
3
+ `);function J(r){let e=new w(r,qt);return Ae.single(e)}function K(r,e,t={}){let n=J(e);t.writeBytes===!0?r.push(n.subarray()):r.push(n)}function Ht(r,e,t={}){let n=new w;for(let o of e)n.append(J(o));t.writeBytes===!0?r.push(n.subarray()):r.push(n)}async function Hn(r,e){let t=1,n={[Symbol.asyncIterator]:()=>n,next:async()=>await r.next(t)},o=n;e?.signal!=null&&(o=Gt(n,e.signal));let s=a=>{t=a},i=await At(o,a=>ae(a,{onLength:s,maxDataLength:1024}),async a=>await _t(a));if(i==null||i.length===0)throw new V("no buffer returned","ERR_INVALID_MULTISTREAM_SELECT_MESSAGE");if(i.get(i.byteLength-1)!==qt[0])throw qn.error("Invalid mss message - missing newline - %s",i.subarray()),new V("missing newline","ERR_INVALID_MULTISTREAM_SELECT_MESSAGE");return i.sublist(0,-1)}async function $(r,e){let t=await Hn(r,e);return jt(t.subarray())}function Ue(r){let e=async function*(){let t=yield,n=new w;for await(let o of r){if(t==null){n.append(o),t=yield n,n=new w;continue}for(n.append(o);n.length>=t;){let s=n.sublist(0,t);if(n.consume(t),t=yield s,t==null){n.length>0&&(t=yield n,n=new w);break}}}if(t!=null)throw Object.assign(new Error(`stream ended before ${t} bytes became available`),{code:"ERR_UNDER_READ",buffer:n})}();return e.next(),e}function rt(){let r={};return r.promise=new Promise((e,t)=>{r.resolve=e,r.reject=t}),r}function Oe(r){let e=_(),t=Ue(r.source),n=rt(),o,s=r.sink(async function*(){yield*e,yield*await n.promise}());return s.catch(a=>{o=a}),{reader:t,writer:e,stream:{sink:async a=>o!=null?await Promise.reject(o):(n.resolve(a),await s),source:t},rest:()=>e.end(),write:e.push,read:async()=>{let a=await t.next();if(a.value!=null)return a.value}}}var de=te("libp2p:mss:select");async function Jt(r,e,t={}){e=Array.isArray(e)?[...e]:[e];let{reader:n,writer:o,rest:s,stream:i}=Oe(r),a=e.shift();if(a==null)throw new Error("At least one protocol must be specified");de.trace('select: write ["%s", "%s"]',N,a);let l=F(N),d=F(a);Ht(o,[l,d],t);let u=await $(n,t);if(de.trace('select: read "%s"',u),u===N&&(u=await $(n,t),de.trace('select: read "%s"',u)),u===a)return s(),{stream:i,protocol:a};for(let c of e){de.trace('select: write "%s"',c),K(o,F(c),t);let h=await $(n,t);if(de.trace('select: read "%s" for "%s"',h,c),h===c)return s(),{stream:i,protocol:c}}throw s(),new V("protocol selection failed","ERR_UNSUPPORTED_PROTOCOL")}function Kt(r,e){let t=_(),n=!1;return{stream:{sink:async o=>{await r.sink(async function*(){let s=!0;for await(let i of ve(o,t))if(s){s=!1,n=!0,t.end();let a=F(N),l=F(e),d=new w(J(a),J(l));i.length>0&&d.append(i),yield*d}else yield i}())},source:async function*(){n||t.push(new Uint8Array);let o=Ue(r.source),s=await $(o);if(s===N&&(s=await $(o)),s!==e)throw new V("protocol selection failed","ERR_UNSUPPORTED_PROTOCOL");for await(let i of o)yield*i}()},protocol:e}}var pe=te("libp2p:mss:handle");async function Qt(r,e,t){e=Array.isArray(e)?e:[e];let{writer:n,reader:o,rest:s,stream:i}=Oe(r);for(;;){let a=await $(o,t);if(pe.trace('read "%s"',a),a===N){pe.trace('respond with "%s" for "%s"',N,a),K(n,F(N),t);continue}if(e.includes(a))return K(n,F(a),t),pe.trace('respond with "%s" for "%s"',a,a),s(),{stream:i,protocol:a};if(a==="ls"){K(n,new w(...e.map(l=>J(F(l)))),t),pe.trace('respond with "%s" for %s',e,a);continue}K(n,F("na"),t),pe('respond with "na" for "%s"',a)}}return rr(Xn);})();
4
4
  return Libp2PMultistreamSelect}));
@@ -10,15 +10,15 @@ export async function handle(stream, protocols, options) {
10
10
  const { writer, reader, rest, stream: shakeStream } = handshake(stream);
11
11
  while (true) {
12
12
  const protocol = await multistream.readString(reader, options);
13
- log('read "%s"', protocol);
13
+ log.trace('read "%s"', protocol);
14
14
  if (protocol === PROTOCOL_ID) {
15
- log('respond with "%s" for "%s"', PROTOCOL_ID, protocol);
15
+ log.trace('respond with "%s" for "%s"', PROTOCOL_ID, protocol);
16
16
  multistream.write(writer, uint8ArrayFromString(PROTOCOL_ID), options);
17
17
  continue;
18
18
  }
19
19
  if (protocols.includes(protocol)) {
20
20
  multistream.write(writer, uint8ArrayFromString(protocol), options);
21
- log('respond with "%s" for "%s"', protocol, protocol);
21
+ log.trace('respond with "%s" for "%s"', protocol, protocol);
22
22
  rest();
23
23
  return { stream: shakeStream, protocol };
24
24
  }
@@ -26,7 +26,7 @@ export async function handle(stream, protocols, options) {
26
26
  // <varint-msg-len><varint-proto-name-len><proto-name>\n<varint-proto-name-len><proto-name>\n\n
27
27
  multistream.write(writer, new Uint8ArrayList(...protocols.map(p => multistream.encode(uint8ArrayFromString(p)))), options);
28
28
  // multistream.writeAll(writer, protocols.map(p => uint8ArrayFromString(p)))
29
- log('respond with "%s" for %s', protocols, protocol);
29
+ log.trace('respond with "%s" for %s', protocols, protocol);
30
30
  continue;
31
31
  }
32
32
  multistream.write(writer, uint8ArrayFromString('na'), options);
@@ -1 +1 @@
1
- {"version":3,"file":"handle.js","sourceRoot":"","sources":["../../src/handle.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAE,MAAM,gBAAgB,CAAA;AACvC,OAAO,KAAK,WAAW,MAAM,kBAAkB,CAAA;AAC/C,OAAO,EAAE,SAAS,EAAE,MAAM,cAAc,CAAA;AACxC,OAAO,EAAE,WAAW,EAAE,MAAM,gBAAgB,CAAA;AAC5C,OAAO,EAAE,UAAU,IAAI,oBAAoB,EAAE,MAAM,yBAAyB,CAAA;AAC5E,OAAO,EAAE,cAAc,EAAE,MAAM,gBAAgB,CAAA;AAI/C,MAAM,GAAG,GAAG,MAAM,CAAC,mBAAmB,CAAC,CAAA;AAkDvC,MAAM,CAAC,KAAK,UAAU,MAAM,CAAE,MAAmB,EAAE,SAA4B,EAAE,OAA+B;IAC9G,SAAS,GAAG,KAAK,CAAC,OAAO,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC,CAAA;IAC9D,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,EAAE,WAAW,EAAE,GAAG,SAAS,CAAC,MAAM,CAAC,CAAA;IAEvE,OAAO,IAAI,EAAE;QACX,MAAM,QAAQ,GAAG,MAAM,WAAW,CAAC,UAAU,CAAC,MAAM,EAAE,OAAO,CAAC,CAAA;QAC9D,GAAG,CAAC,WAAW,EAAE,QAAQ,CAAC,CAAA;QAE1B,IAAI,QAAQ,KAAK,WAAW,EAAE;YAC5B,GAAG,CAAC,4BAA4B,EAAE,WAAW,EAAE,QAAQ,CAAC,CAAA;YACxD,WAAW,CAAC,KAAK,CAAC,MAAM,EAAE,oBAAoB,CAAC,WAAW,CAAC,EAAE,OAAO,CAAC,CAAA;YACrE,SAAQ;SACT;QAED,IAAI,SAAS,CAAC,QAAQ,CAAC,QAAQ,CAAC,EAAE;YAChC,WAAW,CAAC,KAAK,CAAC,MAAM,EAAE,oBAAoB,CAAC,QAAQ,CAAC,EAAE,OAAO,CAAC,CAAA;YAClE,GAAG,CAAC,4BAA4B,EAAE,QAAQ,EAAE,QAAQ,CAAC,CAAA;YACrD,IAAI,EAAE,CAAA;YACN,OAAO,EAAE,MAAM,EAAE,WAAW,EAAE,QAAQ,EAAE,CAAA;SACzC;QAED,IAAI,QAAQ,KAAK,IAAI,EAAE;YACrB,+FAA+F;YAC/F,WAAW,CAAC,KAAK,CAAC,MAAM,EAAE,IAAI,cAAc,CAAC,GAAG,SAAS,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,WAAW,CAAC,MAAM,CAAC,oBAAoB,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,OAAO,CAAC,CAAA;YAC1H,4EAA4E;YAC5E,GAAG,CAAC,0BAA0B,EAAE,SAAS,EAAE,QAAQ,CAAC,CAAA;YACpD,SAAQ;SACT;QAED,WAAW,CAAC,KAAK,CAAC,MAAM,EAAE,oBAAoB,CAAC,IAAI,CAAC,EAAE,OAAO,CAAC,CAAA;QAC9D,GAAG,CAAC,4BAA4B,EAAE,QAAQ,CAAC,CAAA;KAC5C;AACH,CAAC"}
1
+ {"version":3,"file":"handle.js","sourceRoot":"","sources":["../../src/handle.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAE,MAAM,gBAAgB,CAAA;AACvC,OAAO,KAAK,WAAW,MAAM,kBAAkB,CAAA;AAC/C,OAAO,EAAE,SAAS,EAAE,MAAM,cAAc,CAAA;AACxC,OAAO,EAAE,WAAW,EAAE,MAAM,gBAAgB,CAAA;AAC5C,OAAO,EAAE,UAAU,IAAI,oBAAoB,EAAE,MAAM,yBAAyB,CAAA;AAC5E,OAAO,EAAE,cAAc,EAAE,MAAM,gBAAgB,CAAA;AAI/C,MAAM,GAAG,GAAG,MAAM,CAAC,mBAAmB,CAAC,CAAA;AAkDvC,MAAM,CAAC,KAAK,UAAU,MAAM,CAAE,MAAmB,EAAE,SAA4B,EAAE,OAA+B;IAC9G,SAAS,GAAG,KAAK,CAAC,OAAO,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC,CAAA;IAC9D,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,EAAE,WAAW,EAAE,GAAG,SAAS,CAAC,MAAM,CAAC,CAAA;IAEvE,OAAO,IAAI,EAAE;QACX,MAAM,QAAQ,GAAG,MAAM,WAAW,CAAC,UAAU,CAAC,MAAM,EAAE,OAAO,CAAC,CAAA;QAC9D,GAAG,CAAC,KAAK,CAAC,WAAW,EAAE,QAAQ,CAAC,CAAA;QAEhC,IAAI,QAAQ,KAAK,WAAW,EAAE;YAC5B,GAAG,CAAC,KAAK,CAAC,4BAA4B,EAAE,WAAW,EAAE,QAAQ,CAAC,CAAA;YAC9D,WAAW,CAAC,KAAK,CAAC,MAAM,EAAE,oBAAoB,CAAC,WAAW,CAAC,EAAE,OAAO,CAAC,CAAA;YACrE,SAAQ;SACT;QAED,IAAI,SAAS,CAAC,QAAQ,CAAC,QAAQ,CAAC,EAAE;YAChC,WAAW,CAAC,KAAK,CAAC,MAAM,EAAE,oBAAoB,CAAC,QAAQ,CAAC,EAAE,OAAO,CAAC,CAAA;YAClE,GAAG,CAAC,KAAK,CAAC,4BAA4B,EAAE,QAAQ,EAAE,QAAQ,CAAC,CAAA;YAC3D,IAAI,EAAE,CAAA;YACN,OAAO,EAAE,MAAM,EAAE,WAAW,EAAE,QAAQ,EAAE,CAAA;SACzC;QAED,IAAI,QAAQ,KAAK,IAAI,EAAE;YACrB,+FAA+F;YAC/F,WAAW,CAAC,KAAK,CAAC,MAAM,EAAE,IAAI,cAAc,CAAC,GAAG,SAAS,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,WAAW,CAAC,MAAM,CAAC,oBAAoB,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,OAAO,CAAC,CAAA;YAC1H,4EAA4E;YAC5E,GAAG,CAAC,KAAK,CAAC,0BAA0B,EAAE,SAAS,EAAE,QAAQ,CAAC,CAAA;YAC1D,SAAQ;SACT;QAED,WAAW,CAAC,KAAK,CAAC,MAAM,EAAE,oBAAoB,CAAC,IAAI,CAAC,EAAE,OAAO,CAAC,CAAA;QAC9D,GAAG,CAAC,4BAA4B,EAAE,QAAQ,CAAC,CAAA;KAC5C;AACH,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"multistream.d.ts","sourceRoot":"","sources":["../../src/multistream.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,cAAc,EAAE,MAAM,gBAAgB,CAAA;AAQ/C,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,aAAa,CAAA;AAC3C,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,oBAAoB,CAAA;AAEtD,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,WAAW,CAAA;AACvC,OAAO,KAAK,EAAE,qBAAqB,EAAE,MAAM,GAAG,CAAA;AAQ9C,wBAAgB,MAAM,CAAE,MAAM,EAAE,UAAU,GAAG,cAAc,GAAG,cAAc,CAI3E;AAED;;GAEG;AACH,wBAAgB,KAAK,CAAE,MAAM,EAAE,QAAQ,CAAC,GAAG,CAAC,EAAE,MAAM,EAAE,UAAU,GAAG,cAAc,EAAE,OAAO,GAAE,qBAA0B,QAQrH;AAED;;GAEG;AACH,wBAAgB,QAAQ,CAAE,MAAM,EAAE,QAAQ,CAAC,GAAG,CAAC,EAAE,OAAO,EAAE,UAAU,EAAE,EAAE,OAAO,GAAE,qBAA0B,QAY1G;AAED,wBAAsB,IAAI,CAAE,MAAM,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,YAAY,GAAG,OAAO,CAAC,cAAc,CAAC,CAoC3F;AAED,wBAAsB,UAAU,CAAE,MAAM,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,YAAY,mBAIvE"}
1
+ {"version":3,"file":"multistream.d.ts","sourceRoot":"","sources":["../../src/multistream.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,cAAc,EAAE,MAAM,gBAAgB,CAAA;AAQ/C,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,aAAa,CAAA;AAC3C,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,oBAAoB,CAAA;AAEtD,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,WAAW,CAAA;AACvC,OAAO,KAAK,EAAE,qBAAqB,EAAE,MAAM,GAAG,CAAA;AAQ9C,wBAAgB,MAAM,CAAE,MAAM,EAAE,UAAU,GAAG,cAAc,GAAG,cAAc,CAI3E;AAED;;GAEG;AACH,wBAAgB,KAAK,CAAE,MAAM,EAAE,QAAQ,CAAC,GAAG,CAAC,EAAE,MAAM,EAAE,UAAU,GAAG,cAAc,EAAE,OAAO,GAAE,qBAA0B,GAAG,IAAI,CAQ5H;AAED;;GAEG;AACH,wBAAgB,QAAQ,CAAE,MAAM,EAAE,QAAQ,CAAC,GAAG,CAAC,EAAE,OAAO,EAAE,UAAU,EAAE,EAAE,OAAO,GAAE,qBAA0B,GAAG,IAAI,CAYjH;AAED,wBAAsB,IAAI,CAAE,MAAM,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,YAAY,GAAG,OAAO,CAAC,cAAc,CAAC,CAoC3F;AAED,wBAAsB,UAAU,CAAE,MAAM,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,YAAY,GAAG,OAAO,CAAC,MAAM,CAAC,CAIzF"}
@@ -57,7 +57,7 @@ export async function read(reader, options) {
57
57
  const onLength = (l) => {
58
58
  byteLength = l;
59
59
  };
60
- const buf = await pipe(input, lp.decode({ onLength, maxDataLength: MAX_PROTOCOL_LENGTH }), async (source) => await first(source));
60
+ const buf = await pipe(input, (source) => lp.decode(source, { onLength, maxDataLength: MAX_PROTOCOL_LENGTH }), async (source) => await first(source));
61
61
  if (buf == null || buf.length === 0) {
62
62
  throw new CodeError('no buffer returned', 'ERR_INVALID_MULTISTREAM_SELECT_MESSAGE');
63
63
  }
@@ -1 +1 @@
1
- {"version":3,"file":"multistream.js","sourceRoot":"","sources":["../../src/multistream.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"multistream.js","sourceRoot":"","sources":["../../src/multistream.ts"],"names":[],"mappings":"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"}
@@ -16,16 +16,16 @@ export async function select(stream, protocols, options = {}) {
16
16
  if (protocol == null) {
17
17
  throw new Error('At least one protocol must be specified');
18
18
  }
19
- log('select: write ["%s", "%s"]', PROTOCOL_ID, protocol);
19
+ log.trace('select: write ["%s", "%s"]', PROTOCOL_ID, protocol);
20
20
  const p1 = uint8ArrayFromString(PROTOCOL_ID);
21
21
  const p2 = uint8ArrayFromString(protocol);
22
22
  multistream.writeAll(writer, [p1, p2], options);
23
23
  let response = await multistream.readString(reader, options);
24
- log('select: read "%s"', response);
24
+ log.trace('select: read "%s"', response);
25
25
  // Read the protocol response if we got the protocolId in return
26
26
  if (response === PROTOCOL_ID) {
27
27
  response = await multistream.readString(reader, options);
28
- log('select: read "%s"', response);
28
+ log.trace('select: read "%s"', response);
29
29
  }
30
30
  // We're done
31
31
  if (response === protocol) {
@@ -34,10 +34,10 @@ export async function select(stream, protocols, options = {}) {
34
34
  }
35
35
  // We haven't gotten a valid ack, try the other protocols
36
36
  for (const protocol of protocols) {
37
- log('select: write "%s"', protocol);
37
+ log.trace('select: write "%s"', protocol);
38
38
  multistream.write(writer, uint8ArrayFromString(protocol), options);
39
39
  const response = await multistream.readString(reader, options);
40
- log('select: read "%s" for "%s"', response, protocol);
40
+ log.trace('select: read "%s" for "%s"', response, protocol);
41
41
  if (response === protocol) {
42
42
  rest(); // End our writer so others can start writing to stream
43
43
  return { stream: shakeStream, protocol };
@@ -53,25 +53,27 @@ export function lazySelect(stream, protocol) {
53
53
  let negotiated = false;
54
54
  return {
55
55
  stream: {
56
- sink: async (source) => await stream.sink((async function* () {
57
- let first = true;
58
- for await (const chunk of merge(source, negotiateTrigger)) {
59
- if (first) {
60
- first = false;
61
- negotiated = true;
62
- negotiateTrigger.end();
63
- const p1 = uint8ArrayFromString(PROTOCOL_ID);
64
- const p2 = uint8ArrayFromString(protocol);
65
- const list = new Uint8ArrayList(multistream.encode(p1), multistream.encode(p2));
66
- if (chunk.length > 0)
67
- list.append(chunk);
68
- yield* list;
56
+ sink: async (source) => {
57
+ await stream.sink((async function* () {
58
+ let first = true;
59
+ for await (const chunk of merge(source, negotiateTrigger)) {
60
+ if (first) {
61
+ first = false;
62
+ negotiated = true;
63
+ negotiateTrigger.end();
64
+ const p1 = uint8ArrayFromString(PROTOCOL_ID);
65
+ const p2 = uint8ArrayFromString(protocol);
66
+ const list = new Uint8ArrayList(multistream.encode(p1), multistream.encode(p2));
67
+ if (chunk.length > 0)
68
+ list.append(chunk);
69
+ yield* list;
70
+ }
71
+ else {
72
+ yield chunk;
73
+ }
69
74
  }
70
- else {
71
- yield chunk;
72
- }
73
- }
74
- })()),
75
+ })());
76
+ },
75
77
  source: (async function* () {
76
78
  if (!negotiated)
77
79
  negotiateTrigger.push(new Uint8Array());
@@ -1 +1 @@
1
- {"version":3,"file":"select.js","sourceRoot":"","sources":["../../src/select.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAE,MAAM,gBAAgB,CAAA;AACvC,OAAO,EAAE,SAAS,EAAE,MAAM,2BAA2B,CAAA;AACrD,OAAO,KAAK,WAAW,MAAM,kBAAkB,CAAA;AAC/C,OAAO,EAAE,SAAS,EAAE,MAAM,cAAc,CAAA;AACxC,OAAO,EAAE,UAAU,IAAI,oBAAoB,EAAE,MAAM,yBAAyB,CAAA;AAC5E,OAAO,EAAE,WAAW,EAAE,MAAM,YAAY,CAAA;AAExC,OAAO,EAAE,cAAc,EAAE,MAAM,gBAAgB,CAAA;AAC/C,OAAO,EAAE,QAAQ,EAAE,MAAM,aAAa,CAAA;AACtC,OAAO,KAAK,MAAM,UAAU,CAAA;AAC5B,OAAO,EAAE,MAAM,EAAE,MAAM,WAAW,CAAA;AAGlC,MAAM,GAAG,GAAG,MAAM,CAAC,mBAAmB,CAAC,CAAA;AA+CvC,MAAM,CAAC,KAAK,UAAU,MAAM,CAAE,MAAmB,EAAE,SAA4B,EAAE,UAAiC,EAAE;IAClH,SAAS,GAAG,KAAK,CAAC,OAAO,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,CAAC,GAAG,SAAS,CAAC,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC,CAAA;IACnE,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,EAAE,WAAW,EAAE,GAAG,SAAS,CAAC,MAAM,CAAC,CAAA;IAEvE,MAAM,QAAQ,GAAG,SAAS,CAAC,KAAK,EAAE,CAAA;IAElC,IAAI,QAAQ,IAAI,IAAI,EAAE;QACpB,MAAM,IAAI,KAAK,CAAC,yCAAyC,CAAC,CAAA;KAC3D;IAED,GAAG,CAAC,4BAA4B,EAAE,WAAW,EAAE,QAAQ,CAAC,CAAA;IACxD,MAAM,EAAE,GAAG,oBAAoB,CAAC,WAAW,CAAC,CAAA;IAC5C,MAAM,EAAE,GAAG,oBAAoB,CAAC,QAAQ,CAAC,CAAA;IACzC,WAAW,CAAC,QAAQ,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE,EAAE,CAAC,EAAE,OAAO,CAAC,CAAA;IAE/C,IAAI,QAAQ,GAAG,MAAM,WAAW,CAAC,UAAU,CAAC,MAAM,EAAE,OAAO,CAAC,CAAA;IAC5D,GAAG,CAAC,mBAAmB,EAAE,QAAQ,CAAC,CAAA;IAElC,gEAAgE;IAChE,IAAI,QAAQ,KAAK,WAAW,EAAE;QAC5B,QAAQ,GAAG,MAAM,WAAW,CAAC,UAAU,CAAC,MAAM,EAAE,OAAO,CAAC,CAAA;QACxD,GAAG,CAAC,mBAAmB,EAAE,QAAQ,CAAC,CAAA;KACnC;IAED,aAAa;IACb,IAAI,QAAQ,KAAK,QAAQ,EAAE;QACzB,IAAI,EAAE,CAAA;QACN,OAAO,EAAE,MAAM,EAAE,WAAW,EAAE,QAAQ,EAAE,CAAA;KACzC;IAED,yDAAyD;IACzD,KAAK,MAAM,QAAQ,IAAI,SAAS,EAAE;QAChC,GAAG,CAAC,oBAAoB,EAAE,QAAQ,CAAC,CAAA;QACnC,WAAW,CAAC,KAAK,CAAC,MAAM,EAAE,oBAAoB,CAAC,QAAQ,CAAC,EAAE,OAAO,CAAC,CAAA;QAClE,MAAM,QAAQ,GAAG,MAAM,WAAW,CAAC,UAAU,CAAC,MAAM,EAAE,OAAO,CAAC,CAAA;QAC9D,GAAG,CAAC,4BAA4B,EAAE,QAAQ,EAAE,QAAQ,CAAC,CAAA;QAErD,IAAI,QAAQ,KAAK,QAAQ,EAAE;YACzB,IAAI,EAAE,CAAA,CAAC,uDAAuD;YAC9D,OAAO,EAAE,MAAM,EAAE,WAAW,EAAE,QAAQ,EAAE,CAAA;SACzC;KACF;IAED,IAAI,EAAE,CAAA;IACN,MAAM,IAAI,SAAS,CAAC,2BAA2B,EAAE,0BAA0B,CAAC,CAAA;AAC9E,CAAC;AAYD,MAAM,UAAU,UAAU,CAAE,MAAmB,EAAE,QAAgB;IAC/D,6EAA6E;IAC7E,uBAAuB;IACvB,MAAM,gBAAgB,GAAG,QAAQ,EAAE,CAAA;IACnC,IAAI,UAAU,GAAG,KAAK,CAAA;IACtB,OAAO;QACL,MAAM,EAAE;YACN,IAAI,EAAE,KAAK,EAAC,MAAM,EAAC,EAAE,CAAC,MAAM,MAAM,CAAC,IAAI,CAAC,CAAC,KAAK,SAAU,CAAC;gBACvD,IAAI,KAAK,GAAG,IAAI,CAAA;gBAChB,IAAI,KAAK,EAAE,MAAM,KAAK,IAAI,KAAK,CAAC,MAAM,EAAE,gBAAgB,CAAC,EAAE;oBACzD,IAAI,KAAK,EAAE;wBACT,KAAK,GAAG,KAAK,CAAA;wBACb,UAAU,GAAG,IAAI,CAAA;wBACjB,gBAAgB,CAAC,GAAG,EAAE,CAAA;wBACtB,MAAM,EAAE,GAAG,oBAAoB,CAAC,WAAW,CAAC,CAAA;wBAC5C,MAAM,EAAE,GAAG,oBAAoB,CAAC,QAAQ,CAAC,CAAA;wBACzC,MAAM,IAAI,GAAG,IAAI,cAAc,CAAC,WAAW,CAAC,MAAM,CAAC,EAAE,CAAC,EAAE,WAAW,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC,CAAA;wBAC/E,IAAI,KAAK,CAAC,MAAM,GAAG,CAAC;4BAAE,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,CAAA;wBACxC,KAAM,CAAC,CAAC,IAAI,CAAA;qBACb;yBAAM;wBACL,MAAM,KAAK,CAAA;qBACZ;iBACF;YACH,CAAC,CAAC,EAAE,CAAC;YACL,MAAM,EAAE,CAAC,KAAK,SAAU,CAAC;gBACvB,IAAI,CAAC,UAAU;oBAAE,gBAAgB,CAAC,IAAI,CAAC,IAAI,UAAU,EAAE,CAAC,CAAA;gBACxD,MAAM,UAAU,GAAG,MAAM,CAAC,MAAM,CAAC,MAAM,CAAC,CAAA;gBACxC,IAAI,QAAQ,GAAG,MAAM,WAAW,CAAC,UAAU,CAAC,UAAU,CAAC,CAAA;gBACvD,IAAI,QAAQ,KAAK,WAAW,EAAE;oBAC5B,QAAQ,GAAG,MAAM,WAAW,CAAC,UAAU,CAAC,UAAU,CAAC,CAAA;iBACpD;gBACD,IAAI,QAAQ,KAAK,QAAQ,EAAE;oBACzB,MAAM,IAAI,SAAS,CAAC,2BAA2B,EAAE,0BAA0B,CAAC,CAAA;iBAC7E;gBACD,IAAI,KAAK,EAAE,MAAM,KAAK,IAAI,UAAU,EAAE;oBACpC,KAAM,CAAC,CAAC,KAAK,CAAA;iBACd;YACH,CAAC,CAAC,EAAE;SACL;QACD,QAAQ;KACT,CAAA;AACH,CAAC"}
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.1.3",
3
+ "version": "3.1.5",
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-multistream-select#readme",
@@ -146,11 +146,11 @@
146
146
  "@libp2p/interfaces": "^3.2.0",
147
147
  "@libp2p/logger": "^2.0.0",
148
148
  "abortable-iterator": "^4.0.2",
149
- "it-first": "^2.0.0",
149
+ "it-first": "^3.0.1",
150
150
  "it-handshake": "^4.1.2",
151
- "it-length-prefixed": "^8.0.3",
151
+ "it-length-prefixed": "^9.0.0",
152
152
  "it-merge": "^3.0.0",
153
- "it-pipe": "^2.0.4",
153
+ "it-pipe": "^3.0.0",
154
154
  "it-pushable": "^3.1.0",
155
155
  "it-reader": "^6.0.1",
156
156
  "it-stream-types": "^1.0.4",
@@ -160,10 +160,10 @@
160
160
  },
161
161
  "devDependencies": {
162
162
  "@types/varint": "^6.0.0",
163
- "aegir": "^37.2.0",
163
+ "aegir": "^38.1.8",
164
164
  "iso-random-stream": "^2.0.2",
165
165
  "it-all": "^3.0.1",
166
- "it-map": "^2.0.0",
166
+ "it-map": "^3.0.2",
167
167
  "it-pair": "^2.0.3",
168
168
  "p-timeout": "^6.0.0",
169
169
  "timeout-abort-controller": "^3.0.0",
package/src/handle.ts CHANGED
@@ -63,17 +63,17 @@ export async function handle (stream: Duplex<any>, protocols: string | string[],
63
63
 
64
64
  while (true) {
65
65
  const protocol = await multistream.readString(reader, options)
66
- log('read "%s"', protocol)
66
+ log.trace('read "%s"', protocol)
67
67
 
68
68
  if (protocol === PROTOCOL_ID) {
69
- log('respond with "%s" for "%s"', PROTOCOL_ID, protocol)
69
+ log.trace('respond with "%s" for "%s"', PROTOCOL_ID, protocol)
70
70
  multistream.write(writer, uint8ArrayFromString(PROTOCOL_ID), options)
71
71
  continue
72
72
  }
73
73
 
74
74
  if (protocols.includes(protocol)) {
75
75
  multistream.write(writer, uint8ArrayFromString(protocol), options)
76
- log('respond with "%s" for "%s"', protocol, protocol)
76
+ log.trace('respond with "%s" for "%s"', protocol, protocol)
77
77
  rest()
78
78
  return { stream: shakeStream, protocol }
79
79
  }
@@ -82,7 +82,7 @@ export async function handle (stream: Duplex<any>, protocols: string | string[],
82
82
  // <varint-msg-len><varint-proto-name-len><proto-name>\n<varint-proto-name-len><proto-name>\n\n
83
83
  multistream.write(writer, new Uint8ArrayList(...protocols.map(p => multistream.encode(uint8ArrayFromString(p)))), options)
84
84
  // multistream.writeAll(writer, protocols.map(p => uint8ArrayFromString(p)))
85
- log('respond with "%s" for %s', protocols, protocol)
85
+ log.trace('respond with "%s" for %s', protocols, protocol)
86
86
  continue
87
87
  }
88
88
 
@@ -28,7 +28,7 @@ export function encode (buffer: Uint8Array | Uint8ArrayList): Uint8ArrayList {
28
28
  /**
29
29
  * `write` encodes and writes a single buffer
30
30
  */
31
- export function write (writer: Pushable<any>, buffer: Uint8Array | Uint8ArrayList, options: MultistreamSelectInit = {}) {
31
+ export function write (writer: Pushable<any>, buffer: Uint8Array | Uint8ArrayList, options: MultistreamSelectInit = {}): void {
32
32
  const encoded = encode(buffer)
33
33
 
34
34
  if (options.writeBytes === true) {
@@ -41,7 +41,7 @@ export function write (writer: Pushable<any>, buffer: Uint8Array | Uint8ArrayLis
41
41
  /**
42
42
  * `writeAll` behaves like `write`, except it encodes an array of items as a single write
43
43
  */
44
- export function writeAll (writer: Pushable<any>, buffers: Uint8Array[], options: MultistreamSelectInit = {}) {
44
+ export function writeAll (writer: Pushable<any>, buffers: Uint8Array[], options: MultistreamSelectInit = {}): void {
45
45
  const list = new Uint8ArrayList()
46
46
 
47
47
  for (const buf of buffers) {
@@ -71,13 +71,13 @@ export async function read (reader: Reader, options?: AbortOptions): Promise<Uin
71
71
  }
72
72
 
73
73
  // Once the length has been parsed, read chunk for that length
74
- const onLength = (l: number) => {
74
+ const onLength = (l: number): void => {
75
75
  byteLength = l
76
76
  }
77
77
 
78
78
  const buf = await pipe(
79
79
  input,
80
- lp.decode({ onLength, maxDataLength: MAX_PROTOCOL_LENGTH }),
80
+ (source) => lp.decode(source, { onLength, maxDataLength: MAX_PROTOCOL_LENGTH }),
81
81
  async (source) => await first(source)
82
82
  )
83
83
 
@@ -93,7 +93,7 @@ export async function read (reader: Reader, options?: AbortOptions): Promise<Uin
93
93
  return buf.sublist(0, -1) // Remove newline
94
94
  }
95
95
 
96
- export async function readString (reader: Reader, options?: AbortOptions) {
96
+ export async function readString (reader: Reader, options?: AbortOptions): Promise<string> {
97
97
  const buf = await read(reader, options)
98
98
 
99
99
  return uint8ArrayToString(buf.subarray())
package/src/select.ts CHANGED
@@ -68,18 +68,18 @@ export async function select (stream: Duplex<any>, protocols: string | string[],
68
68
  throw new Error('At least one protocol must be specified')
69
69
  }
70
70
 
71
- log('select: write ["%s", "%s"]', PROTOCOL_ID, protocol)
71
+ log.trace('select: write ["%s", "%s"]', PROTOCOL_ID, protocol)
72
72
  const p1 = uint8ArrayFromString(PROTOCOL_ID)
73
73
  const p2 = uint8ArrayFromString(protocol)
74
74
  multistream.writeAll(writer, [p1, p2], options)
75
75
 
76
76
  let response = await multistream.readString(reader, options)
77
- log('select: read "%s"', response)
77
+ log.trace('select: read "%s"', response)
78
78
 
79
79
  // Read the protocol response if we got the protocolId in return
80
80
  if (response === PROTOCOL_ID) {
81
81
  response = await multistream.readString(reader, options)
82
- log('select: read "%s"', response)
82
+ log.trace('select: read "%s"', response)
83
83
  }
84
84
 
85
85
  // We're done
@@ -90,10 +90,10 @@ export async function select (stream: Duplex<any>, protocols: string | string[],
90
90
 
91
91
  // We haven't gotten a valid ack, try the other protocols
92
92
  for (const protocol of protocols) {
93
- log('select: write "%s"', protocol)
93
+ log.trace('select: write "%s"', protocol)
94
94
  multistream.write(writer, uint8ArrayFromString(protocol), options)
95
95
  const response = await multistream.readString(reader, options)
96
- log('select: read "%s" for "%s"', response, protocol)
96
+ log.trace('select: read "%s" for "%s"', response, protocol)
97
97
 
98
98
  if (response === protocol) {
99
99
  rest() // End our writer so others can start writing to stream
@@ -122,23 +122,25 @@ export function lazySelect (stream: Duplex<any>, protocol: string): ProtocolStre
122
122
  let negotiated = false
123
123
  return {
124
124
  stream: {
125
- sink: async source => await stream.sink((async function * () {
126
- let first = true
127
- for await (const chunk of merge(source, negotiateTrigger)) {
128
- if (first) {
129
- first = false
130
- negotiated = true
131
- negotiateTrigger.end()
132
- const p1 = uint8ArrayFromString(PROTOCOL_ID)
133
- const p2 = uint8ArrayFromString(protocol)
134
- const list = new Uint8ArrayList(multistream.encode(p1), multistream.encode(p2))
135
- if (chunk.length > 0) list.append(chunk)
136
- yield * list
137
- } else {
138
- yield chunk
125
+ sink: async source => {
126
+ await stream.sink((async function * () {
127
+ let first = true
128
+ for await (const chunk of merge(source, negotiateTrigger)) {
129
+ if (first) {
130
+ first = false
131
+ negotiated = true
132
+ negotiateTrigger.end()
133
+ const p1 = uint8ArrayFromString(PROTOCOL_ID)
134
+ const p2 = uint8ArrayFromString(protocol)
135
+ const list = new Uint8ArrayList(multistream.encode(p1), multistream.encode(p2))
136
+ if (chunk.length > 0) list.append(chunk)
137
+ yield * list
138
+ } else {
139
+ yield chunk
140
+ }
139
141
  }
140
- }
141
- })()),
142
+ })())
143
+ },
142
144
  source: (async function * () {
143
145
  if (!negotiated) negotiateTrigger.push(new Uint8Array())
144
146
  const byteReader = reader(stream.source)