UNPKG

blockstore-core

Version:

Contains various implementations of the API contract described in interface-blockstore

15 lines (14 loc) 31.4 kB
(function (root, factory) {(typeof module === 'object' && module.exports) ? module.exports = factory() : root.BlockstoreCore = factory()}(typeof self !== 'undefined' ? self : this, function () { "use strict";var BlockstoreCore=(()=>{var Y=Object.defineProperty;var Xe=Object.getOwnPropertyDescriptor;var Ke=Object.getOwnPropertyNames;var Qe=Object.prototype.hasOwnProperty;var Ze=(r,e)=>{for(var t in e)Y(r,t,{get:e[t],enumerable:!0})},We=(r,e,t,n)=>{if(e&&typeof e=="object"||typeof e=="function")for(let o of Ke(e))!Qe.call(r,o)&&o!==t&&Y(r,o,{get:()=>e[o],enumerable:!(n=Xe(e,o))||n.enumerable});return r};var He=r=>We(Y({},"__esModule",{value:!0}),r);var fr={};Ze(fr,{BaseBlockstore:()=>U,BlackHoleBlockstore:()=>Q,MemoryBlockstore:()=>K,TieredBlockstore:()=>H});var U=class{has(e,t){return Promise.reject(new Error(".has is not implemented"))}put(e,t,n){return Promise.reject(new Error(".put is not implemented"))}async*putMany(e,t){for await(let{cid:n,bytes:o}of e)await this.put(n,o,t),yield n}get(e,t){throw new Error(".get is not implemented")}async*getMany(e,t){for await(let n of e)yield{cid:n,bytes:this.get(n,t)}}delete(e,t){return Promise.reject(new Error(".delete is not implemented"))}async*deleteMany(e,t){for await(let n of e)await this.delete(n,t),yield n}async*getAll(e){throw new Error(".getAll is not implemented")}};var k=class r extends Error{static name="NotFoundError";name=r.name;static code="ERR_NOT_FOUND";code=r.code;constructor(e="Not Found"){super(e)}};function Ye(r){return r[Symbol.asyncIterator]!=null}function _e(r){if(Ye(r))return(async()=>{let t=[];for await(let n of r)t.push(n);return t})();let e=[];for(let t of r)e.push(t);return e}var he=_e;var br=new Uint8Array(0);function pe(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}function M(r){if(r instanceof Uint8Array&&r.constructor.name==="Uint8Array")return z(r);if(r instanceof ArrayBuffer)return new Uint8Array(r);if(ArrayBuffer.isView(r))return z(new Uint8Array(r.buffer,r.byteOffset,r.byteLength));throw new Error("Unknown type, must be binary type")}function et(r){return r?.buffer instanceof ArrayBuffer}function z(r){return et(r)?r:r.slice()}function tt(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 f=r.length,h=r.charAt(0),E=Math.log(f)/Math.log(256),c=Math.log(256)/Math.log(f);function d(a){if(a instanceof Uint8Array||(ArrayBuffer.isView(a)?a=new Uint8Array(a.buffer,a.byteOffset,a.byteLength):Array.isArray(a)&&(a=Uint8Array.from(a))),!(a instanceof Uint8Array))throw new TypeError("Expected Uint8Array");if(a.length===0)return"";for(var l=0,w=0,u=0,p=a.length;u!==p&&a[u]===0;)u++,l++;for(var x=(p-u)*c+1>>>0,b=new Uint8Array(x);u!==p;){for(var g=a[u],v=0,y=x-1;(g!==0||v<w)&&y!==-1;y--,v++)g+=256*b[y]>>>0,b[y]=g%f>>>0,g=g/f>>>0;if(g!==0)throw new Error("Non-zero carry");w=v,u++}for(var C=x-w;C!==x&&b[C]===0;)C++;for(var S=h.repeat(l);C<x;++C)S+=r.charAt(b[C]);return S}function m(a){if(typeof a!="string")throw new TypeError("Expected String");if(a.length===0)return new Uint8Array;var l=0;if(a[l]!==" "){for(var w=0,u=0;a[l]===h;)w++,l++;for(var p=(a.length-l)*E+1>>>0,x=new Uint8Array(p);a[l];){var b=t[a.charCodeAt(l)];if(b===255)return;for(var g=0,v=p-1;(b!==0||g<u)&&v!==-1;v--,g++)b+=f*x[v]>>>0,x[v]=b%256>>>0,b=b/256>>>0;if(b!==0)throw new Error("Non-zero carry");u=g,l++}if(a[l]!==" "){for(var y=p-u;y!==p&&x[y]===0;)y++;for(var C=new Uint8Array(w+(p-y)),S=w;y!==p;)C[S++]=x[y++];return C}}}function $(a){var l=m(a);if(l)return l;throw new Error(`Non-${e} character`)}return{encode:d,decodeUnsafe:m,decode:$}}var rt=tt,nt=rt,me=nt;var _=class{name;prefix;baseEncode;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")}},ee=class{name;prefix;baseDecode;prefixCodePoint;constructor(e,t,n){this.name=e,this.prefix=t;let o=t.codePointAt(0);if(o===void 0)throw new Error("Invalid prefix character");this.prefixCodePoint=o,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 be(this,e)}},te=class{decoders;constructor(e){this.decoders=e}or(e){return be(this,e)}decode(e){let t=e[0],n=this.decoders[t];if(n!=null)return n.decode(e);throw RangeError(`Unable to decode multibase string ${JSON.stringify(e)}, only inputs prefixed with ${Object.keys(this.decoders)} are supported`)}};function be(r,e){return new te({...r.decoders??{[r.prefix]:r},...e.decoders??{[e.prefix]:e}})}var re=class{name;prefix;baseEncode;baseDecode;encoder;decoder;constructor(e,t,n,o){this.name=e,this.prefix=t,this.baseEncode=n,this.baseDecode=o,this.encoder=new _(e,t,n),this.decoder=new ee(e,t,o)}encode(e){return this.encoder.encode(e)}decode(e){return this.decoder.decode(e)}};function ye({name:r,prefix:e,encode:t,decode:n}){return new re(r,e,t,n)}function O({name:r,prefix:e,alphabet:t}){let{encode:n,decode:o}=me(t,r);return ye({prefix:e,name:r,encode:n,decode:s=>M(o(s))})}function ot(r,e,t,n){let o=r.length;for(;r[o-1]==="=";)--o;let s=new Uint8Array(o*t/8|0),i=0,f=0,h=0;for(let E=0;E<o;++E){let c=e[r[E]];if(c===void 0)throw new SyntaxError(`Non-${n} character`);f=f<<t|c,i+=t,i>=8&&(i-=8,s[h++]=255&f>>i)}if(i>=t||(255&f<<8-i)!==0)throw new SyntaxError("Unexpected end of data");return s}function st(r,e,t){let n=e[e.length-1]==="=",o=(1<<t)-1,s="",i=0,f=0;for(let h=0;h<r.length;++h)for(f=f<<8|r[h],i+=8;i>t;)i-=t,s+=e[o&f>>i];if(i!==0&&(s+=e[o&f<<t-i]),n)for(;(s.length*t&7)!==0;)s+="=";return s}function it(r){let e={};for(let t=0;t<r.length;++t)e[r[t]]=t;return e}function N({name:r,prefix:e,bitsPerChar:t,alphabet:n}){let o=it(n);return ye({prefix:e,name:r,encode(s){return st(s,n,t)},decode(s){return ot(s,o,t,r)}})}var I=N({prefix:"b",name:"base32",alphabet:"abcdefghijklmnopqrstuvwxyz234567",bitsPerChar:5}),Er=N({prefix:"B",name:"base32upper",alphabet:"ABCDEFGHIJKLMNOPQRSTUVWXYZ234567",bitsPerChar:5}),Ar=N({prefix:"c",name:"base32pad",alphabet:"abcdefghijklmnopqrstuvwxyz234567=",bitsPerChar:5}),Fr=N({prefix:"C",name:"base32padupper",alphabet:"ABCDEFGHIJKLMNOPQRSTUVWXYZ234567=",bitsPerChar:5}),Sr=N({prefix:"v",name:"base32hex",alphabet:"0123456789abcdefghijklmnopqrstuv",bitsPerChar:5}),Ir=N({prefix:"V",name:"base32hexupper",alphabet:"0123456789ABCDEFGHIJKLMNOPQRSTUV",bitsPerChar:5}),Ur=N({prefix:"t",name:"base32hexpad",alphabet:"0123456789abcdefghijklmnopqrstuv=",bitsPerChar:5}),Nr=N({prefix:"T",name:"base32hexpadupper",alphabet:"0123456789ABCDEFGHIJKLMNOPQRSTUV=",bitsPerChar:5}),$r=N({prefix:"h",name:"base32z",alphabet:"ybndrfg8ejkmcpqxot1uwisza345h769",bitsPerChar:5});var J=O({prefix:"k",name:"base36",alphabet:"0123456789abcdefghijklmnopqrstuvwxyz"}),zr=O({prefix:"K",name:"base36upper",alphabet:"0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZ"});var D=O({name:"base58btc",prefix:"z",alphabet:"123456789ABCDEFGHJKLMNPQRSTUVWXYZabcdefghijkmnopqrstuvwxyz"}),Or=O({name:"base58flickr",prefix:"Z",alphabet:"123456789abcdefghijkmnopqrstuvwxyzABCDEFGHJKLMNPQRSTUVWXYZ"});var at=ge,we=128,ct=127,ft=~ct,ut=Math.pow(2,31);function ge(r,e,t){e=e||[],t=t||0;for(var n=t;r>=ut;)e[t++]=r&255|we,r/=128;for(;r&ft;)e[t++]=r&255|we,r>>>=7;return e[t]=r|0,ge.bytes=t-n+1,e}var dt=ne,lt=128,xe=127;function ne(r,n){var t=0,n=n||0,o=0,s=n,i,f=r.length;do{if(s>=f)throw ne.bytes=0,new RangeError("Could not decode varint");i=r[s++],t+=o<28?(i&xe)<<o:(i&xe)*Math.pow(2,o),o+=7}while(i>=lt);return ne.bytes=s-n,t}var ht=Math.pow(2,7),pt=Math.pow(2,14),mt=Math.pow(2,21),bt=Math.pow(2,28),yt=Math.pow(2,35),wt=Math.pow(2,42),xt=Math.pow(2,49),gt=Math.pow(2,56),Ct=Math.pow(2,63),vt=function(r){return r<ht?1:r<pt?2:r<mt?3:r<bt?4:r<yt?5:r<wt?6:r<xt?7:r<gt?8:r<Ct?9:10},Et={encode:at,decode:dt,encodingLength:vt},At=Et,V=At;function j(r,e=0){return[V.decode(r,e),V.decode.bytes]}function L(r,e,t=0){return V.encode(r,e,t),e}function B(r){return V.encodingLength(r)}function ve(r,e){let t=e.byteLength,n=B(r),o=n+B(t),s=new Uint8Array(o+t);return L(r,s,0),L(t,s,n),s.set(e,o),new T(r,t,e,s)}function G(r){let e=M(r),[t,n]=j(e),[o,s]=j(e.subarray(n)),i=e.subarray(n+s);if(i.byteLength!==o)throw new Error("Incorrect length");return new T(t,o,i,e)}function Ee(r,e){if(r===e)return!0;{let t=e;return r.code===t.code&&r.size===t.size&&t.bytes instanceof Uint8Array&&pe(r.bytes,t.bytes)}}var T=class{code;size;digest;bytes;constructor(e,t,n,o){this.code=e,this.size=t,this.digest=z(n),this.bytes=z(o)}};function Fe(r,e){let{bytes:t,version:n}=r;return n===0?St(t,oe(r),e??D.encoder):It(t,oe(r),e??I.encoder)}var Se=new WeakMap;function oe(r){let e=Se.get(r);if(e==null){let t=new Map;return Se.set(r,t),t}return e}var X=class r{code;version;multihash;bytes;"/";constructor(e,t,n,o){this.code=t,this.version=e,this.multihash=n,this.bytes=z(o),this["/"]=this.bytes}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!==q)throw new Error("Cannot convert a non dag-pb CID to CIDv0");if(t.code!==Ut)throw new Error("Cannot convert non sha2-256 multihash CID to CIDv0");return r.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=ve(e,t);return r.createV1(this.code,n)}case 1:return this;default:throw Error(`Can not convert CID version ${this.version} to version 1. This is a bug please report`)}}equals(e){return r.equals(this,e)}static equals(e,t){let n=t;return n!=null&&e.code===n.code&&e.version===n.version&&Ee(e.multihash,n.multihash)}toString(e){return Fe(this,e)}toJSON(){return{"/":Fe(this)}}link(){return this}[Symbol.toStringTag]="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 r)return t;if(t["/"]!=null&&t["/"]===t.bytes||t.asCID===t){let{version:n,code:o,multihash:s,bytes:i}=t;return new r(n,o,s,i??Ie(n,o,s.bytes))}else if(t[Nt]===!0){let{version:n,multihash:o,code:s}=t,i=G(o);return r.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!==q)throw new Error(`Version 0 CID must use dag-pb (code: ${q}) block encoding`);return new r(e,t,n,n.bytes)}case 1:{let o=Ie(e,t,n.bytes);return new r(e,t,n,o)}default:throw new Error("Invalid version")}}static createV0(e){return r.create(0,q,e)}static createV1(e,t){return r.create(1,e,t)}static decode(e){let[t,n]=r.decodeFirst(e);if(n.length!==0)throw new Error("Incorrect length");return t}static decodeFirst(e){let t=r.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 T(t.multihashCode,t.digestSize,s,o);return[t.version===0?r.createV0(i):r.createV1(t.codec,i),e.subarray(t.size)]}static inspectBytes(e){let t=0,n=()=>{let[d,m]=j(e.subarray(t));return t+=m,d},o=n(),s=q;if(o===18?(o=0,t=0):s=n(),o!==0&&o!==1)throw new RangeError(`Invalid CID version ${o}`);let i=t,f=n(),h=n(),E=t+h,c=E-i;return{version:o,codec:s,multihashCode:f,digestSize:h,multihashSize:c,size:E}}static parse(e,t){let[n,o]=Ft(e,t),s=r.decode(o);if(s.version===0&&e[0]!=="Q")throw Error("Version 0 CID string must not include multibase prefix");return oe(s).set(n,e),s}};function Ft(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 I.prefix:{let t=e??I;return[I.prefix,t.decode(r)]}case J.prefix:{let t=e??J;return[J.prefix,t.decode(r)]}default:{if(e==null)throw Error("To parse non base32, base36 or base58btc encoded CID multibase decoder must be provided");return[r[0],e.decode(r)]}}}function St(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}function It(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}var q=112,Ut=18;function Ie(r,e,t){let n=B(r),o=n+B(e),s=new Uint8Array(o+t.byteLength);return L(r,s,0),L(e,s,n),s.set(t,o),s}var Nt=Symbol.for("@ipld/js-cid/CID");var Ue=85;function Dt(r){return typeof r?.then=="function"}var K=class extends U{data;constructor(){super(),this.data=new Map}put(e,t,n){n?.signal?.throwIfAborted();let o;if(t instanceof Uint8Array)o=[t];else{let s=he(t);if(Dt(s))return s.then(i=>this._put(e,i,n));o=s}return this._put(e,o,n)}_put(e,t,n){return n?.signal?.throwIfAborted(),this.data.set(I.encode(e.multihash.bytes),t),e}*get(e,t){t?.signal?.throwIfAborted();let n=this.data.get(I.encode(e.multihash.bytes));if(n==null)throw new k;yield*n}has(e,t){return t?.signal?.throwIfAborted(),this.data.has(I.encode(e.multihash.bytes))}async delete(e,t){t?.signal?.throwIfAborted(),this.data.delete(I.encode(e.multihash.bytes))}*getAll(e){e?.signal?.throwIfAborted();for(let[t,n]of this.data.entries())yield{cid:X.createV1(Ue,G(I.decode(t))),bytes:(async function*(){yield*n})()},e?.signal?.throwIfAborted()}};var Q=class extends U{put(e,t,n){return n?.signal?.throwIfAborted(),e}get(e,t){throw t?.signal?.throwIfAborted(),new k}has(e,t){return t?.signal?.throwIfAborted(),!1}async delete(e,t){t?.signal?.throwIfAborted()}async*getAll(e){e?.signal?.throwIfAborted()}};var nn=new Uint8Array(0);function Ne(r){if(r instanceof Uint8Array&&r.constructor.name==="Uint8Array")return r;if(r instanceof ArrayBuffer)return new Uint8Array(r);if(ArrayBuffer.isView(r))return new Uint8Array(r.buffer,r.byteOffset,r.byteLength);throw new Error("Unknown type, must be binary type")}function kt(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 f=r.length,h=r.charAt(0),E=Math.log(f)/Math.log(256),c=Math.log(256)/Math.log(f);function d(a){if(a instanceof Uint8Array||(ArrayBuffer.isView(a)?a=new Uint8Array(a.buffer,a.byteOffset,a.byteLength):Array.isArray(a)&&(a=Uint8Array.from(a))),!(a instanceof Uint8Array))throw new TypeError("Expected Uint8Array");if(a.length===0)return"";for(var l=0,w=0,u=0,p=a.length;u!==p&&a[u]===0;)u++,l++;for(var x=(p-u)*c+1>>>0,b=new Uint8Array(x);u!==p;){for(var g=a[u],v=0,y=x-1;(g!==0||v<w)&&y!==-1;y--,v++)g+=256*b[y]>>>0,b[y]=g%f>>>0,g=g/f>>>0;if(g!==0)throw new Error("Non-zero carry");w=v,u++}for(var C=x-w;C!==x&&b[C]===0;)C++;for(var S=h.repeat(l);C<x;++C)S+=r.charAt(b[C]);return S}function m(a){if(typeof a!="string")throw new TypeError("Expected String");if(a.length===0)return new Uint8Array;var l=0;if(a[l]!==" "){for(var w=0,u=0;a[l]===h;)w++,l++;for(var p=(a.length-l)*E+1>>>0,x=new Uint8Array(p);a[l];){var b=t[a.charCodeAt(l)];if(b===255)return;for(var g=0,v=p-1;(b!==0||g<u)&&v!==-1;v--,g++)b+=f*x[v]>>>0,x[v]=b%256>>>0,b=b/256>>>0;if(b!==0)throw new Error("Non-zero carry");u=g,l++}if(a[l]!==" "){for(var y=p-u;y!==p&&x[y]===0;)y++;for(var C=new Uint8Array(w+(p-y)),S=w;y!==p;)C[S++]=x[y++];return C}}}function $(a){var l=m(a);if(l)return l;throw new Error(`Non-${e} character`)}return{encode:d,decodeUnsafe:m,decode:$}}var zt=kt,Mt=zt,$e=Mt;var se=class{name;prefix;baseEncode;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")}},ie=class{name;prefix;baseDecode;prefixCodePoint;constructor(e,t,n){this.name=e,this.prefix=t;let o=t.codePointAt(0);if(o===void 0)throw new Error("Invalid prefix character");this.prefixCodePoint=o,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 De(this,e)}},ae=class{decoders;constructor(e){this.decoders=e}or(e){return De(this,e)}decode(e){let t=e[0],n=this.decoders[t];if(n!=null)return n.decode(e);throw RangeError(`Unable to decode multibase string ${JSON.stringify(e)}, only inputs prefixed with ${Object.keys(this.decoders)} are supported`)}};function De(r,e){return new ae({...r.decoders??{[r.prefix]:r},...e.decoders??{[e.prefix]:e}})}var ce=class{name;prefix;baseEncode;baseDecode;encoder;decoder;constructor(e,t,n,o){this.name=e,this.prefix=t,this.baseEncode=n,this.baseDecode=o,this.encoder=new se(e,t,n),this.decoder=new ie(e,t,o)}encode(e){return this.encoder.encode(e)}decode(e){return this.decoder.decode(e)}};function ke({name:r,prefix:e,encode:t,decode:n}){return new ce(r,e,t,n)}function fe({name:r,prefix:e,alphabet:t}){let{encode:n,decode:o}=$e(t,r);return ke({prefix:e,name:r,encode:n,decode:s=>Ne(o(s))})}function Rt(r,e,t,n){let o=r.length;for(;r[o-1]==="=";)--o;let s=new Uint8Array(o*t/8|0),i=0,f=0,h=0;for(let E=0;E<o;++E){let c=e[r[E]];if(c===void 0)throw new SyntaxError(`Non-${n} character`);f=f<<t|c,i+=t,i>=8&&(i-=8,s[h++]=255&f>>i)}if(i>=t||(255&f<<8-i)!==0)throw new SyntaxError("Unexpected end of data");return s}function Ot(r,e,t){let n=e[e.length-1]==="=",o=(1<<t)-1,s="",i=0,f=0;for(let h=0;h<r.length;++h)for(f=f<<8|r[h],i+=8;i>t;)i-=t,s+=e[o&f>>i];if(i!==0&&(s+=e[o&f<<t-i]),n)for(;(s.length*t&7)!==0;)s+="=";return s}function Lt(r){let e={};for(let t=0;t<r.length;++t)e[r[t]]=t;return e}function A({name:r,prefix:e,bitsPerChar:t,alphabet:n}){let o=Lt(n);return ke({prefix:e,name:r,encode(s){return Ot(s,n,t)},decode(s){return Rt(s,o,t,r)}})}var ze=A({prefix:"b",name:"base32",alphabet:"abcdefghijklmnopqrstuvwxyz234567",bitsPerChar:5}),dn=A({prefix:"B",name:"base32upper",alphabet:"ABCDEFGHIJKLMNOPQRSTUVWXYZ234567",bitsPerChar:5}),ln=A({prefix:"c",name:"base32pad",alphabet:"abcdefghijklmnopqrstuvwxyz234567=",bitsPerChar:5}),hn=A({prefix:"C",name:"base32padupper",alphabet:"ABCDEFGHIJKLMNOPQRSTUVWXYZ234567=",bitsPerChar:5}),pn=A({prefix:"v",name:"base32hex",alphabet:"0123456789abcdefghijklmnopqrstuv",bitsPerChar:5}),mn=A({prefix:"V",name:"base32hexupper",alphabet:"0123456789ABCDEFGHIJKLMNOPQRSTUV",bitsPerChar:5}),bn=A({prefix:"t",name:"base32hexpad",alphabet:"0123456789abcdefghijklmnopqrstuv=",bitsPerChar:5}),yn=A({prefix:"T",name:"base32hexpadupper",alphabet:"0123456789ABCDEFGHIJKLMNOPQRSTUV=",bitsPerChar:5}),wn=A({prefix:"h",name:"base32z",alphabet:"ybndrfg8ejkmcpqxot1uwisza345h769",bitsPerChar:5});var Me=fe({name:"base58btc",prefix:"z",alphabet:"123456789ABCDEFGHJKLMNPQRSTUVWXYZabcdefghijkmnopqrstuvwxyz"}),Cn=fe({name:"base58flickr",prefix:"Z",alphabet:"123456789abcdefghijkmnopqrstuvwxyzABCDEFGHJKLMNPQRSTUVWXYZ"});var Re=A({prefix:"m",name:"base64",alphabet:"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/",bitsPerChar:6}),An=A({prefix:"M",name:"base64pad",alphabet:"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/=",bitsPerChar:6}),Fn=A({prefix:"u",name:"base64url",alphabet:"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789-_",bitsPerChar:6}),Sn=A({prefix:"U",name:"base64urlpad",alphabet:"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789-_=",bitsPerChar:6});function Bt(r,e){if(typeof r=="string")return Tt(r);if(typeof r=="number")return jt(r,e);throw Error(`Value provided to ms() must be a string or number. value=${JSON.stringify(r)}`)}var Z=Bt;function Tt(r){if(typeof r!="string"||r.length===0||r.length>100)throw Error(`Value provided to ms.parse() must be a string with length between 1 and 99. value=${JSON.stringify(r)}`);let e=/^(?<value>-?\d*\.?\d+) *(?<unit>milliseconds?|msecs?|ms|seconds?|secs?|s|minutes?|mins?|m|hours?|hrs?|h|days?|d|weeks?|w|months?|mo|years?|yrs?|y)?$/i.exec(r);if(!e?.groups)return NaN;let{value:t,unit:n="ms"}=e.groups,o=parseFloat(t),s=n.toLowerCase();switch(s){case"years":case"year":case"yrs":case"yr":case"y":return o*315576e5;case"months":case"month":case"mo":return o*26298e5;case"weeks":case"week":case"w":return o*6048e5;case"days":case"day":case"d":return o*864e5;case"hours":case"hour":case"hrs":case"hr":case"h":return o*36e5;case"minutes":case"minute":case"mins":case"min":case"m":return o*6e4;case"seconds":case"second":case"secs":case"sec":case"s":return o*1e3;case"milliseconds":case"millisecond":case"msecs":case"msec":case"ms":return o;default:throw Error(`Unknown unit "${s}" provided to ms.parse(). value=${JSON.stringify(r)}`)}}function Pt(r){let e=Math.abs(r);return e>=315576e5?`${Math.round(r/315576e5)}y`:e>=26298e5?`${Math.round(r/26298e5)}mo`:e>=6048e5?`${Math.round(r/6048e5)}w`:e>=864e5?`${Math.round(r/864e5)}d`:e>=36e5?`${Math.round(r/36e5)}h`:e>=6e4?`${Math.round(r/6e4)}m`:e>=1e3?`${Math.round(r/1e3)}s`:`${r}ms`}function Vt(r){let e=Math.abs(r);return e>=315576e5?R(r,e,315576e5,"year"):e>=26298e5?R(r,e,26298e5,"month"):e>=6048e5?R(r,e,6048e5,"week"):e>=864e5?R(r,e,864e5,"day"):e>=36e5?R(r,e,36e5,"hour"):e>=6e4?R(r,e,6e4,"minute"):e>=1e3?R(r,e,1e3,"second"):`${r} ms`}function jt(r,e){if(typeof r!="number"||!Number.isFinite(r))throw Error("Value provided to ms.format() must be of type number.");return e?.long?Vt(r):Pt(r)}function R(r,e,t,n){let o=e>=t*1.5;return`${Math.round(r/t)} ${n}${o?"s":""}`}function ue(r){t.debug=t,t.default=t,t.coerce=h,t.disable=s,t.enable=o,t.enabled=i,t.humanize=Z,t.destroy=E,Object.keys(r).forEach(c=>{t[c]=r[c]}),t.names=[],t.skips=[],t.formatters={};function e(c){let d=0;for(let m=0;m<c.length;m++)d=(d<<5)-d+c.charCodeAt(m),d|=0;return t.colors[Math.abs(d)%t.colors.length]}t.selectColor=e;function t(c,d){let m,$=null,a,l;function w(...u){if(!w.enabled)return;let p=w,x=Number(new Date),b=x-(m||x);p.diff=b,p.prev=m,p.curr=x,m=x,u[0]=t.coerce(u[0]),typeof u[0]!="string"&&u.unshift("%O");let g=0;u[0]=u[0].replace(/%([a-zA-Z%])/g,(y,C)=>{if(y==="%%")return"%";g++;let S=t.formatters[C];if(typeof S=="function"){let Ge=u[g];y=S.call(p,Ge),u.splice(g,1),g--}return y}),t.formatArgs.call(p,u),d?.onLog!=null&&d.onLog(...u),(p.log||t.log).apply(p,u)}return w.namespace=c,w.useColors=t.useColors(),w.color=t.selectColor(c),w.extend=n,w.destroy=t.destroy,Object.defineProperty(w,"enabled",{enumerable:!0,configurable:!1,get:()=>$!==null?$:(a!==t.namespaces&&(a=t.namespaces,l=t.enabled(c)),l),set:u=>{$=u}}),typeof t.init=="function"&&t.init(w),w}function n(c,d){let m=t(this.namespace+(typeof d>"u"?":":d)+c);return m.log=this.log,m}function o(c){t.save(c),t.namespaces=c,t.names=[],t.skips=[];let d,m=(typeof c=="string"?c:"").split(/[\s,]+/),$=m.length;for(d=0;d<$;d++)m[d]&&(c=m[d].replace(/\*/g,".*?"),c[0]==="-"?t.skips.push(new RegExp("^"+c.substr(1)+"$")):t.names.push(new RegExp("^"+c+"$")))}function s(){let c=[...t.names.map(f),...t.skips.map(f).map(d=>"-"+d)].join(",");return t.enable(""),c}function i(c){if(c[c.length-1]==="*")return!0;let d,m;for(d=0,m=t.skips.length;d<m;d++)if(t.skips[d].test(c))return!1;for(d=0,m=t.names.length;d<m;d++)if(t.names[d].test(c))return!0;return!1}function f(c){return c.toString().substring(2,c.toString().length-2).replace(/\.\*\?$/,"*")}function h(c){return c instanceof Error?c.stack??c.message:c}function E(){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.setupFormatters(t.formatters),t.enable(t.load()),t}var W=Zt(),qt=["#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 Jt(){return typeof window<"u"&&window.process&&(window.process.type==="renderer"||window.process.__nwjs)?!0:typeof navigator<"u"&&navigator.userAgent?.toLowerCase().match(/(edge|trident)\/(\d+)/)!=null?!1:typeof document<"u"&&document.documentElement?.style?.WebkitAppearance||typeof window<"u"&&window.console&&(window.console.firebug||window.console.exception&&window.console.table)||typeof navigator<"u"&&navigator.userAgent?.toLowerCase().match(/firefox\/(\d+)/)!=null&&parseInt(RegExp.$1,10)>=31||typeof navigator<"u"&&navigator.userAgent?.toLowerCase().match(/applewebkit\/(\d+)/)}function Gt(r){if(r[0]=(this.useColors?"%c":"")+this.namespace+(this.useColors?" %c":" ")+r[0]+(this.useColors?"%c ":" ")+"+"+Z(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)}var Xt=console.debug??console.log??(()=>{});function Kt(r){try{r?W?.setItem("debug",r):W?.removeItem("debug")}catch{}}function Qt(){let r;try{r=W?.getItem("debug")}catch{}return!r&&typeof globalThis.process<"u"&&"env"in globalThis.process&&(r=globalThis.process.env.DEBUG),r}function Zt(){try{return localStorage}catch{}}function Wt(r){r.j=function(e){try{return JSON.stringify(e)}catch(t){return"[UnexpectedJSONParseError]: "+t.message}}}var Oe=ue({formatArgs:Gt,save:Kt,load:Qt,useColors:Jt,setupFormatters:Wt,colors:qt,storage:W,log:Xt});var F=Oe;F.formatters.b=r=>r==null?"undefined":Me.baseEncode(r);F.formatters.t=r=>r==null?"undefined":ze.baseEncode(r);F.formatters.m=r=>r==null?"undefined":Re.baseEncode(r);F.formatters.p=r=>r==null?"undefined":r.toString();F.formatters.c=r=>r==null?"undefined":r.toString();F.formatters.k=r=>r==null?"undefined":r.toString();F.formatters.a=r=>r==null?"undefined":r.toString();function Le(r,e=""){let t=Be(r.message),n=Be(r.stack);return t!=null&&n!=null?n.includes(t)?`${n.split(` `).join(` ${e}`)}`:`${t} ${e}${n.split(` `).join(` ${e}`)}`:n!=null?`${n.split(` `).join(` ${e}`)}`:t!=null?`${t}`:`${r.toString()}`}function Ht(r){return r instanceof AggregateError||r?.name==="AggregateError"&&Array.isArray(r.errors)}function Te(r,e=""){if(Ht(r)){let t=Le(r,e);return r.errors.length>0?(e=`${e} `,t+=` ${e}${r.errors.map(n=>`${Te(n,`${e}`)}`).join(` ${e}`)}`):t+=` ${e}[Error list was empty]`,t.trim()}return Le(r,e)}F.formatters.e=r=>r==null?"undefined":Te(r);function Yt(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 de(r,e){let t=Yt(`${r}:trace`);return F.enabled(`${r}:trace`)&&F.names.map(n=>n.toString()).find(n=>n.includes(":trace"))!=null&&(t=F(`${r}:trace`,e)),Object.assign(F(r,e),{error:F(`${r}:error`,e),trace:t,newScope:n=>de(`${r}:${n}`,e)})}function Be(r){if(r!=null&&(r=r.trim(),r.length!==0))return r}function _t(r){let[e,t]=r[Symbol.asyncIterator]!=null?[r[Symbol.asyncIterator](),Symbol.asyncIterator]:[r[Symbol.iterator](),Symbol.iterator],n=[];return{peek:()=>e.next(),push:o=>{n.push(o)},next:()=>n.length>0?{done:!1,value:n.shift()}:e.next(),[t](){return this}}}var Pe=_t;function er(r){return r[Symbol.asyncIterator]!=null}function tr(r,e){let t=0;if(er(r))return(async function*(){for await(let h of r)await e(h,t++)&&(yield h)})();let n=Pe(r),{value:o,done:s}=n.next();if(s===!0)return(function*(){})();let i=e(o,t++);if(typeof i.then=="function")return(async function*(){await i&&(yield o);for(let h of n)await e(h,t++)&&(yield h)})();let f=e;return(function*(){i===!0&&(yield o);for(let h of n)f(h,t++)&&(yield h)})()}var Ve=tr;function P(){let r={};return r.promise=new Promise((e,t)=>{r.resolve=e,r.reject=t}),r}function rr(r){return r.reason}async function je(r,e,t){if(e==null)return r;let n=t?.translateError??rr;if(e.aborted)return r.catch(()=>{}),Promise.reject(n(e));let o;try{return await Promise.race([r,new Promise((s,i)=>{o=()=>{i(n(e))},e.addEventListener("abort",o)})])}finally{o!=null&&e.removeEventListener("abort",o)}}var le=class{readNext;haveNext;ended;nextResult;error;constructor(){this.ended=!1,this.readNext=P(),this.haveNext=P()}[Symbol.asyncIterator](){return this}async next(){if(this.nextResult==null&&await this.haveNext.promise,this.nextResult==null)throw new Error("HaveNext promise resolved but nextResult was undefined");let e=this.nextResult;return this.nextResult=void 0,this.readNext.resolve(),this.readNext=P(),e}async throw(e){return this.ended=!0,this.error=e,e!=null&&(this.haveNext.promise.catch(()=>{}),this.haveNext.reject(e)),{done:!0,value:void 0}}async return(){let e={done:!0,value:void 0};return this.ended=!0,this.nextResult=e,this.haveNext.resolve(),e}async push(e,t){await this._push(e,t)}async end(e,t){e!=null?await this.throw(e):await this._push(void 0,t)}async _push(e,t){if(e!=null&&this.ended)throw this.error??new Error("Cannot push value onto an ended pushable");for(;this.nextResult!=null;)await this.readNext.promise;e!=null?this.nextResult={done:!1,value:e}:(this.ended=!0,this.nextResult={done:!0,value:void 0}),this.haveNext.resolve(),this.haveNext=P(),await je(this.readNext.promise,t?.signal,t)}};function qe(){return new le}function nr(r){return r[Symbol.asyncIterator]!=null}async function or(r,e,t){try{await Promise.all(r.map(async n=>{for await(let o of n)await e.push(o,{signal:t}),t.throwIfAborted()})),await e.end(void 0,{signal:t})}catch(n){await e.end(n,{signal:t}).catch(()=>{})}}async function*sr(r){let e=new AbortController,t=qe();or(r,t,e.signal).catch(()=>{});try{yield*t}finally{e.abort()}}function*ir(r){for(let e of r)yield*e}function ar(...r){let e=[];for(let t of r)nr(t)||e.push(t);return e.length===r.length?ir(e):sr(r)}var Je=ar;var cr=de("blockstore:core:tiered"),H=class extends U{stores;constructor(e){super(),this.stores=e.slice()}async put(e,t,n){return await Promise.all(this.stores.map(async o=>{await o.put(e,t,n)})),e}async*get(e,t){let n;for(let o of this.stores)try{yield*o.get(e,t);return}catch(s){n=s,cr.error(s)}throw n??new k}async has(e,t){for(let n of this.stores)if(await n.has(e,t))return!0;return!1}async delete(e,t){await Promise.all(this.stores.map(async n=>{await n.delete(e,t)}))}async*putMany(e,t={}){for await(let n of e)await this.put(n.cid,n.bytes,t),yield n.cid}async*deleteMany(e,t={}){for await(let n of e)await this.delete(n,t),yield n}async*getAll(e){let t=new Set;yield*Ve(Je(...this.stores.map(n=>n.getAll(e))),n=>{let o=n.cid.toString();return t.has(o)?!1:(t.add(o),!0)})}};return He(fr);})(); return BlockstoreCore})); //# sourceMappingURL=index.min.js.map