4 lines
25 KiB
JavaScript
Raw Normal View History

(function (root, factory) {(typeof module === 'object' && module.exports) ? module.exports = factory() : root.HamtSharding = factory()}(typeof self !== 'undefined' ? self : this, function () {
"use strict";var HamtSharding=(()=>{var Yt=Object.create;var j=Object.defineProperty;var Qt=Object.getOwnPropertyDescriptor;var Gt=Object.getOwnPropertyNames;var Ht=Object.getPrototypeOf,Wt=Object.prototype.hasOwnProperty;var Zt=(r,t)=>()=>(t||r((t={exports:{}}).exports,t),t.exports),d=(r,t)=>{for(var e in t)j(r,e,{get:t[e],enumerable:!0})},mt=(r,t,e,n)=>{if(t&&typeof t=="object"||typeof t=="function")for(let s of Gt(t))!Wt.call(r,s)&&s!==e&&j(r,s,{get:()=>t[s],enumerable:!(n=Qt(t,s))||n.enumerable});return r};var te=(r,t,e)=>(e=r!=null?Yt(Ht(r)):{},mt(t||!r||!r.__esModule?j(e,"default",{value:r,enumerable:!0}):e,r)),ee=r=>mt(j({},"__esModule",{value:!0}),r);var yt=Zt((Ar,xt)=>{"use strict";xt.exports=class{constructor(){this._bitArrays=[],this._data=[],this._length=0,this._changedLength=!1,this._changedData=!1}set(t,e){let n=this._internalPositionFor(t,!1);if(e===void 0)n!==-1&&(this._unsetInternalPos(n),this._unsetBit(t),this._changedLength=!0,this._changedData=!0);else{let s=!1;n===-1?(n=this._data.length,this._setBit(t),this._changedData=!0):s=!0,this._setInternalPos(n,t,e,s),this._changedLength=!0}}unset(t){this.set(t,void 0)}get(t){this._sortData();let e=this._internalPositionFor(t,!0);if(e!==-1)return this._data[e][1]}push(t){return this.set(this.length,t),this.length}get length(){if(this._sortData(),this._changedLength){let t=this._data[this._data.length-1];this._length=t?t[0]+1:0,this._changedLength=!1}return this._length}forEach(t){let e=0;for(;e<this.length;)t(this.get(e),e,this),e++}map(t){let e=0,n=new Array(this.length);for(;e<this.length;)n[e]=t(this.get(e),e,this),e++;return n}reduce(t,e){let n=0,s=e;for(;n<this.length;){let o=this.get(n);s=t(s,o,n),n++}return s}find(t){let e=0,n,s;for(;e<this.length&&!n;)s=this.get(e),n=t(s),e++;return n?s:void 0}_internalPositionFor(t,e){let n=this._bytePosFor(t,e);if(n>=this._bitArrays.length)return-1;let s=this._bitArrays[n],o=t-n*7;if(!((s&1<<o)>0))return-1;let a=this._bitArrays.slice(0,n).reduce(re,0),h=~(4294967295<<o+1),g=gt(s&h);return a+g-1}_bytePosFor(t,e){let n=Math.floor(t/7),s=n+1;for(;!e&&this._bitArrays.length<s;)this._bitArrays.push(0);return n}_setBit(t){let e=this._bytePosFor(t,!1);this._bitArrays[e]|=1<<t-e*7}_unsetBit(t){let e=this._bytePosFor(t,!1);this._bitArrays[e]&=~(1<<t-e*7)}_setInternalPos(t,e,n,s){let o=this._data,i=[e,n];if(s)this._sortData(),o[t]=i;else{if(o.length)if(o[o.length-1][0]>=e)o.push(i);else if(o[0][0]<=e)o.unshift(i);else{let a=Math.round(o.length/2);this._data=o.slice(0,a).concat(i).concat(o.slice(a))}else this._data.push(i);this._changedData=!0,this._changedLength=!0}}_unsetInternalPos(t){this._data.splice(t,1)}_sortData(){this._changedData&&this._data.sort(ne),this._changedData=!1}bitField(){let t=[],e=8,n=0,s=0,o,i=this._bitArrays.slice();for(;i.length||n;){n===0&&(o=i.shift(),n=7);let h=Math.min(n,e),g=~(255<<h),u=o&g;s|=u<<8-e,o=o>>>h,n-=h,e-=h,(!e||!n&&!i.length)&&(t.push(s),s=0,e=8)}for(var a=t.length-1;a>0&&t[a]===0;a--)t.pop();return t}compactArray(){return this._sortData(),this._data.map(se)}};function re(r,t){return r+gt(t)}function gt(r){let t=r;return t=t-(t>>1&1431655765),t=(t&858993459)+(t>>2&858993459),(t+(t>>4)&252645135)*16843009>>24}function ne(r,t){return r[0]-t[0]}function se(r){return r[1]}});var _r={};d(_r,{Bucket:()=>M,createHAMT:()=>wr});var $t=te(yt(),1);function S(r){return globalThis.Buffer!=null?new Uint8Array(r.buffer,r.byteOffset,r.byteLength):r}var W={};d(W,{base10:()=>fe});var Pr=new Uint8Array(0);function wt(r,t){if(r===t)return!0;if(r.byteLength!==t.byteLength)return!1;for(let e=0;e<r.byteLength;e++)if(r[e]!==t[e])return!1;return!0}function B(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 _t(r){return new TextEncoder().encode(r)}function vt(r){return new TextDecoder().decode(r)}function oe(r,t){if(r.length>=255)throw new TypeError("Alphabet too long");for(var e=new Uint8Ar
return HamtSharding}));