@discordeno/utils 19.0.0-next.4d0b7b2 → 19.0.0-next.5b20015

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/bucket.d.ts CHANGED
@@ -46,4 +46,10 @@ export declare function createLeakyBucket({ max, refillInterval, refillAmount, t
46
46
  */
47
47
  tokens?: number;
48
48
  }): LeakyBucket;
49
+ /** Update the tokens of that bucket.
50
+ * @returns {number} The amount of current available tokens.
51
+ */
52
+ export declare function updateTokens(bucket: LeakyBucket): number;
53
+ export declare function nextRefill(bucket: LeakyBucket): number;
54
+ export declare function acquire(bucket: LeakyBucket, amount: number, highPriority?: boolean): Promise<void>;
49
55
  //# sourceMappingURL=bucket.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"bucket.d.ts","sourceRoot":"","sources":["../src/bucket.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,mBAAmB,CAAA;AAGpD;;;;;GAKG;AACH,MAAM,WAAW,WAAW;IAC1B,4CAA4C;IAC5C,GAAG,EAAE,MAAM,CAAA;IACX;;OAEG;IACH,YAAY,EAAE,MAAM,CAAA;IACpB,iDAAiD;IACjD,cAAc,EAAE,MAAM,CAAA;IAEtB;;;OAGG;IACH,OAAO,EAAE,CAAC,MAAM,EAAE,MAAM,EAAE,YAAY,CAAC,EAAE,OAAO,KAAK,OAAO,CAAC,IAAI,CAAC,CAAA;IAElE,gEAAgE;IAChE,UAAU,EAAE,MAAM,MAAM,CAAA;IAExB,oCAAoC;IACpC,MAAM,EAAE,MAAM,MAAM,CAAA;IAEpB;;OAEG;IACH,UAAU,EAAE,MAAM,CAAA;IAElB;;OAEG;IACH,YAAY,EAAE,OAAO,CAAA;IAErB;;OAEG;IACH,WAAW,EAAE,MAAM,CAAA;IAEnB;;OAEG;IACH,OAAO,EAAE,KAAK,CAAC,CAAC,CAAC,CAAC,EAAE,OAAO,KAAK,IAAI,CAAC,CAAA;CACtC;AAED,wBAAgB,iBAAiB,CAAE,EACjC,GAAG,EACH,cAAc,EACd,YAAY,EACZ,MAAM,EACN,OAAO,EACP,GAAG,IAAI,EACR,EAAE,IAAI,CAAC,WAAW,CAAC,WAAW,EAAE,KAAK,GAAG,gBAAgB,GAAG,cAAc,CAAC,EAAE,QAAQ,CAAC,GAAG;IACvF;;OAEG;IACH,MAAM,CAAC,EAAE,MAAM,CAAA;CAChB,GAAG,WAAW,CAyBd"}
1
+ {"version":3,"file":"bucket.d.ts","sourceRoot":"","sources":["../src/bucket.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,mBAAmB,CAAA;AAGpD;;;;;GAKG;AACH,MAAM,WAAW,WAAW;IAC1B,4CAA4C;IAC5C,GAAG,EAAE,MAAM,CAAA;IACX;;OAEG;IACH,YAAY,EAAE,MAAM,CAAA;IACpB,iDAAiD;IACjD,cAAc,EAAE,MAAM,CAAA;IAEtB;;;OAGG;IACH,OAAO,EAAE,CAAC,MAAM,EAAE,MAAM,EAAE,YAAY,CAAC,EAAE,OAAO,KAAK,OAAO,CAAC,IAAI,CAAC,CAAA;IAElE,gEAAgE;IAChE,UAAU,EAAE,MAAM,MAAM,CAAA;IAExB,oCAAoC;IACpC,MAAM,EAAE,MAAM,MAAM,CAAA;IAEpB;;OAEG;IACH,UAAU,EAAE,MAAM,CAAA;IAElB;;OAEG;IACH,YAAY,EAAE,OAAO,CAAA;IAErB;;OAEG;IACH,WAAW,EAAE,MAAM,CAAA;IAEnB;;OAEG;IACH,OAAO,EAAE,KAAK,CAAC,CAAC,CAAC,CAAC,EAAE,OAAO,KAAK,IAAI,CAAC,CAAA;CACtC;AAED,wBAAgB,iBAAiB,CAAC,EAChC,GAAG,EACH,cAAc,EACd,YAAY,EACZ,MAAM,EACN,OAAO,EACP,GAAG,IAAI,EACR,EAAE,IAAI,CAAC,WAAW,CAAC,WAAW,EAAE,KAAK,GAAG,gBAAgB,GAAG,cAAc,CAAC,EAAE,QAAQ,CAAC,GAAG;IACvF;;OAEG;IACH,MAAM,CAAC,EAAE,MAAM,CAAA;CAChB,GAAG,WAAW,CAyBd;AAED;;GAEG;AACH,wBAAgB,YAAY,CAAC,MAAM,EAAE,WAAW,GAAG,MAAM,CASxD;AAED,wBAAgB,UAAU,CAAC,MAAM,EAAE,WAAW,GAAG,MAAM,CAKtD;AAED,wBAAsB,OAAO,CAAC,MAAM,EAAE,WAAW,EAAE,MAAM,EAAE,MAAM,EAAE,YAAY,UAAQ,GAAG,OAAO,CAAC,IAAI,CAAC,CA+CtG"}
package/dist/bucket.js CHANGED
@@ -1,2 +1,2 @@
1
- import{delay as t}from"./utils.js";export function createLeakyBucket({max:t,refillInterval:l,refillAmount:n,tokens:a,waiting:r,...o}){return{max:t,refillInterval:l,refillAmount:n>t?t:n,lastRefill:performance.now(),allowAcquire:!0,nextRefill:function(){return e(this),performance.now()-this.lastRefill+this.refillInterval},tokens:function(){return e(this)},acquire:async function(t,e){return await i(this,t,e)},tokensState:a??t,waiting:r??[],...o}}function e(t){let e=performance.now()-t.lastRefill,i=Math.floor(e/t.refillInterval);return t.tokensState=Math.min(t.tokensState+t.refillAmount*i,t.max),t.lastRefill+=t.refillInterval*i,t.tokensState}async function i(l,n,a=!1){if(!l.allowAcquire&&(await new Promise(t=>{a?l.waiting.unshift(t):l.waiting.push(t)}),!l.allowAcquire))return await i(l,n);l.allowAcquire=!1;let r=e(l);if(r<n){let o=Math.ceil((n-r)/l.refillAmount),f=l.refillInterval*o;await t(f),e(l)}let u=(n%l.refillAmount)??n;l.tokensState-=u,l.allowAcquire=!0,l.waiting.shift()?.()}
2
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uL3NyYy9idWNrZXQudHMiXSwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHR5cGUgeyBQaWNrUGFydGlhbCB9IGZyb20gJ0BkaXNjb3JkZW5vL3R5cGVzJ1xuaW1wb3J0IHsgZGVsYXkgfSBmcm9tICcuL3V0aWxzLmpzJ1xuXG4vKiogQSBMZWFreSBCdWNrZXQuXG4gKiBVc2VmdWwgZm9yIHJhdGUgbGltaXRpbmcgcHVycG9zZXMuXG4gKiBUaGlzIHVzZXMgYHBlcmZvcm1hbmNlLm5vdygpYCBpbnN0ZWFkIG9mIGBEYXRlLm5vdygpYCBmb3IgaGlnaGVyIGFjY3VyYWN5LlxuICpcbiAqIE5PVEU6IFRoaXMgYnVja2V0IGlzIGxhenksIG1lYW5zIGl0IG9ubHkgdXBkYXRlcyB3aGVuIGEgcmVsYXRlZCBtZXRob2QgaXMgY2FsbGVkLlxuICovXG5leHBvcnQgaW50ZXJmYWNlIExlYWt5QnVja2V0IHtcbiAgLyoqIEhvdyBtYW55IHRva2VucyB0aGlzIGJ1Y2tldCBjYW4gaG9sZC4gKi9cbiAgbWF4OiBudW1iZXJcbiAgLyoqIEFtb3VudCBvZiB0b2tlbnMgZ2FpbmVkIHBlciBpbnRlcnZhbC5cbiAgICogSWYgYmlnZ2VyIHRoYW4gYG1heGAgaXQgd2lsbCBiZSBwcmVzc2VkIHRvIGBtYXhgLlxuICAgKi9cbiAgcmVmaWxsQW1vdW50OiBudW1iZXJcbiAgLyoqIEludGVydmFsIGF0IHdoaWNoIHRoZSBidWNrZXQgZ2FpbnMgdG9rZW5zLiAqL1xuICByZWZpbGxJbnRlcnZhbDogbnVtYmVyXG5cbiAgLyoqIEFjcXVpcmUgdG9rZW5zIGZyb20gdGhlIGJ1Y2tldC5cbiAgICogUmVzb2x2ZXMgd2hlbiB0aGUgdG9rZW5zIGFyZSBhY3F1aXJlZCBhbmQgYXZhaWxhYmxlLlxuICAgKiBAcGFyYW0ge2Jvb2xlYW59IFtoaWdoUHJpb3JpdHk9ZmFsc2VdIFdoZXRoZXIgdGhpcyBhY3F1aXJlIGlzIHNob3VsZCBiZSBkb25lIGFzYXAuXG4gICAqL1xuICBhY3F1aXJlOiAoYW1vdW50OiBudW1iZXIsIGhpZ2hQcmlvcml0eT86IGJvb2xlYW4pID0+IFByb21pc2U8dm9pZD5cblxuICAvKiogUmV0dXJucyB0aGUgbnVtYmVyIG9mIG1pbGxpc2Vjb25kcyB1bnRpbCB0aGUgbmV4dCByZWZpbGwuICovXG4gIG5leHRSZWZpbGw6ICgpID0+IG51bWJlclxuXG4gIC8qKiBDdXJyZW50IHRva2VucyBpbiB0aGUgYnVja2V0LiAqL1xuICB0b2tlbnM6ICgpID0+IG51bWJlclxuXG4gIC8qKiBAcHJpdmF0ZSBJbnRlcm5hbCB0cmFjayBvZiB3aGVuIHRoZSBsYXN0IHJlZmlsbCBvZiB0b2tlbnMgd2FzLlxuICAgKiBETyBOT1QgVE9VQ0ggVEhJUyEgVW5sZXNzIHlvdSBrbm93IHdoYXQgeW91IGFyZSBkb2luZyBvZmMgOlBcbiAgICovXG4gIGxhc3RSZWZpbGw6IG51bWJlclxuXG4gIC8qKiBAcHJpdmF0ZSBJbnRlcm5hbCBzdGF0ZSBvZiB3aGV0aGVyIGN1cnJlbnRseSBpdCBpcyBhbGxvd2VkIHRvIGFjcXVpcmUgdG9rZW5zLlxuICAgKiBETyBOT1QgVE9VQ0ggVEhJUyEgVW5sZXNzIHlvdSBrbm93IHdoYXQgeW91IGFyZSBkb2luZyBvZmMgOlBcbiAgICovXG4gIGFsbG93QWNxdWlyZTogYm9vbGVhblxuXG4gIC8qKiBAcHJpdmF0ZSBJbnRlcm5hbCBudW1iZXIgb2YgY3VycmVudGx5IGF2YWlsYWJsZSB0b2tlbnMuXG4gICAqIERPIE5PVCBUT1VDSCBUSElTISBVbmxlc3MgeW91IGtub3cgd2hhdCB5b3UgYXJlIGRvaW5nIG9mYyA6UFxuICAgKi9cbiAgdG9rZW5zU3RhdGU6IG51bWJlclxuXG4gIC8qKiBAcHJpdmF0ZSBJbnRlcm5hbCBhcnJheSBvZiBwcm9taXNlcyBuZWNlc3NhcnkgdG8gZ3VhcmFudGVlIG5vIHJhY2UgY29uZGl0aW9ucy5cbiAgICogRE8gTk9UIFRPVUNIIFRISVMhIFVubGVzcyB5b3Uga25vdyB3aGF0IHlvdSBhcmUgZG9pbmcgb2ZjIDpQXG4gICAqL1xuICB3YWl0aW5nOiBBcnJheTwoXz86IHVua25vd24pID0+IHZvaWQ+XG59XG5cbmV4cG9ydCBmdW5jdGlvbiBjcmVhdGVMZWFreUJ1Y2tldCAoe1xuICBtYXgsXG4gIHJlZmlsbEludGVydmFsLFxuICByZWZpbGxBbW91bnQsXG4gIHRva2VucyxcbiAgd2FpdGluZyxcbiAgLi4ucmVzdFxufTogT21pdDxQaWNrUGFydGlhbDxMZWFreUJ1Y2tldCwgJ21heCcgfCAncmVmaWxsSW50ZXJ2YWwnIHwgJ3JlZmlsbEFtb3VudCc+LCAndG9rZW5zJz4gJiB7XG4gIC8qKiBDdXJyZW50IHRva2VucyBpbiB0aGUgYnVja2V0LlxuICAgKiBAZGVmYXVsdCBtYXhcbiAgICovXG4gIHRva2Vucz86IG51bWJlclxufSk6IExlYWt5QnVja2V0IHtcbiAgcmV0dXJuIHtcbiAgICBtYXgsXG4gICAgcmVmaWxsSW50ZXJ2YWwsXG4gICAgcmVmaWxsQW1vdW50OiByZWZpbGxBbW91bnQgPiBtYXggPyBtYXggOiByZWZpbGxBbW91bnQsXG4gICAgbGFzdFJlZmlsbDogcGVyZm9ybWFuY2Uubm93KCksXG4gICAgYWxsb3dBY3F1aXJlOiB0cnVlLFxuXG4gICAgbmV4dFJlZmlsbDogZnVuY3Rpb24gKCkge1xuICAgICAgcmV0dXJuIG5leHRSZWZpbGwodGhpcylcbiAgICB9LFxuXG4gICAgdG9rZW5zOiBmdW5jdGlvbiAoKSB7XG4gICAgICByZXR1cm4gdXBkYXRlVG9rZW5zKHRoaXMpXG4gICAgfSxcblxuICAgIGFjcXVpcmU6IGFzeW5jIGZ1bmN0aW9uIChhbW91bnQsIGhpZ2hQcmlvcml0eSkge1xuICAgICAgcmV0dXJuIGF3YWl0IGFjcXVpcmUodGhpcywgYW1vdW50LCBoaWdoUHJpb3JpdHkpXG4gICAgfSxcblxuICAgIHRva2Vuc1N0YXRlOiB0b2tlbnMgPz8gbWF4LFxuICAgIHdhaXRpbmc6IHdhaXRpbmcgPz8gW10sXG5cbiAgICAuLi5yZXN0XG4gIH1cbn1cblxuLyoqIFVwZGF0ZSB0aGUgdG9rZW5zIG9mIHRoYXQgYnVja2V0LlxuICogQHJldHVybnMge251bWJlcn0gVGhlIGFtb3VudCBvZiBjdXJyZW50IGF2YWlsYWJsZSB0b2tlbnMuXG4gKi9cbmZ1bmN0aW9uIHVwZGF0ZVRva2VucyAoYnVja2V0OiBMZWFreUJ1Y2tldCk6IG51bWJlciB7XG4gIGNvbnN0IHRpbWVQYXNzZWQgPSBwZXJmb3JtYW5jZS5ub3coKSAtIGJ1Y2tldC5sYXN0UmVmaWxsXG4gIGNvbnN0IG1pc3NlZFJlZmlsbHMgPSBNYXRoLmZsb29yKHRpbWVQYXNzZWQgLyBidWNrZXQucmVmaWxsSW50ZXJ2YWwpXG5cbiAgLy8gVGhlIHJlZmlsbCBzaGFsbCBub3QgZXhjZWVkIHRoZSBtYXggYW1vdW50IG9mIHRva2Vucy5cbiAgYnVja2V0LnRva2Vuc1N0YXRlID0gTWF0aC5taW4oYnVja2V0LnRva2Vuc1N0YXRlICsgYnVja2V0LnJlZmlsbEFtb3VudCAqIG1pc3NlZFJlZmlsbHMsIGJ1Y2tldC5tYXgpXG4gIGJ1Y2tldC5sYXN0UmVmaWxsICs9IGJ1Y2tldC5yZWZpbGxJbnRlcnZhbCAqIG1pc3NlZFJlZmlsbHNcblxuICByZXR1cm4gYnVja2V0LnRva2Vuc1N0YXRlXG59XG5cbmZ1bmN0aW9uIG5leHRSZWZpbGwgKGJ1Y2tldDogTGVha3lCdWNrZXQpOiBudW1iZXIge1xuICAvLyBTaW5jZSB0aGlzIGJ1Y2tldCBpcyBsYXp5IHVwZGF0ZSB0aGUgdG9rZW5zIGJlZm9yZSBjYWxjdWxhdGluZyB0aGUgbmV4dCByZWZpbGwuXG4gIHVwZGF0ZVRva2VucyhidWNrZXQpXG5cbiAgcmV0dXJuIHBlcmZvcm1hbmNlLm5vdygpIC0gYnVja2V0Lmxhc3RSZWZpbGwgKyBidWNrZXQucmVmaWxsSW50ZXJ2YWxcbn1cblxuYXN5bmMgZnVuY3Rpb24gYWNxdWlyZSAoYnVja2V0OiBMZWFreUJ1Y2tldCwgYW1vdW50OiBudW1iZXIsIGhpZ2hQcmlvcml0eSA9IGZhbHNlKTogUHJvbWlzZTx2b2lkPiB7XG4gIC8vIFRvIHByZXZlbnQgdGhlIHJhY2UgY29uZGl0aW9uIG9mIDIgYWNxdWlyZXMgaGFwcGVuaW5nIGF0IG9uY2UsXG4gIC8vIGNoZWNrIHdoZXRoZXIgaXRzIGN1cnJlbnRseSBhbGxvd2VkIHRvIGFjcXVpcmUuXG4gIGlmICghYnVja2V0LmFsbG93QWNxdWlyZSkge1xuICAgIC8vIGNyZWF0ZSwgcHVzaCwgYW5kIHdhaXQgdW50aWwgdGhlIGN1cnJlbnQgcnVubmluZyBhY3F1aXJpbmcgaXMgZmluaXNoZWQuXG4gICAgYXdhaXQgbmV3IFByb21pc2UoKHJlc29sdmUpID0+IHtcbiAgICAgIGlmIChoaWdoUHJpb3JpdHkpIHtcbiAgICAgICAgYnVja2V0LndhaXRpbmcudW5zaGlmdChyZXNvbHZlKVxuICAgICAgfSBlbHNlIHtcbiAgICAgICAgYnVja2V0LndhaXRpbmcucHVzaChyZXNvbHZlKVxuICAgICAgfVxuICAgIH0pXG5cbiAgICAvLyBTb21laG93IGFub3RoZXIgYWNxdWlyZSBoYXMgc3RhcnRlZCxcbiAgICAvLyBzbyBuZWVkIHRvIHdhaXQgYWdhaW4uXG4gICAgaWYgKCFidWNrZXQuYWxsb3dBY3F1aXJlKSB7XG4gICAgICByZXR1cm4gYXdhaXQgYWNxdWlyZShidWNrZXQsIGFtb3VudClcbiAgICB9XG4gIH1cblxuICBidWNrZXQuYWxsb3dBY3F1aXJlID0gZmFsc2VcbiAgLy8gU2luY2UgdGhlIGJ1Y2tldCBpcyBsYXp5IHVwZGF0ZSB0aGUgdG9rZW5zIG5vdyxcbiAgLy8gYW5kIGFsc28gZ2V0IHRoZSBjdXJyZW50IGFtb3VudCBvZiBhdmFpbGFibGUgdG9rZW5zXG4gIGNvbnN0IGN1cnJlbnRUb2tlbnMgPSB1cGRhdGVUb2tlbnMoYnVja2V0KVxuXG4gIC8vIEl0J3MgcG9zc2libGUgdGhhdCBtb3JlIHRoYW4gYXZhaWxhYmxlIHRva2VucyBoYXZlIGJlZW4gYWNxdWlyZWQsXG4gIC8vIHNvIGNhbGN1bGF0ZSB0aGUgYW1vdW50IG9mIG1pbGxpc2Vjb25kcyB0byB3YWl0IHVudGlsIHRoaXMgYWNxdWlyZSBpcyBnb29kIHRvIGdvLlxuICBpZiAoY3VycmVudFRva2VucyA8IGFtb3VudCkge1xuICAgIGNvbnN0IHRva2Vuc05lZWRlZCA9IGFtb3VudCAtIGN1cnJlbnRUb2tlbnNcbiAgICBjb25zdCByZWZpbGxzTmVlZGVkID0gTWF0aC5jZWlsKHRva2Vuc05lZWRlZCAvIGJ1Y2tldC5yZWZpbGxBbW91bnQpXG5cbiAgICBjb25zdCB3YWl0VGltZSA9IGJ1Y2tldC5yZWZpbGxJbnRlcnZhbCAqIHJlZmlsbHNOZWVkZWRcbiAgICBhd2FpdCBkZWxheSh3YWl0VGltZSlcblxuICAgIC8vIFVwZGF0ZSB0aGUgdG9rZW5zIGFnYWluIHRvIGVuc3VyZSBub3RoaW5nIGhhcyBiZWVuIG1pc3NlZC5cbiAgICB1cGRhdGVUb2tlbnMoYnVja2V0KVxuICB9XG5cbiAgLy8gSW4gb3JkZXIgdG8gbm90IHN1YnRyYWN0IHRvbyBtdWNoIGZyb20gdGhlIHRva2VucyxcbiAgLy8gY2FsY3VsYXRlIHdoYXQgaXMgYWN0dWFsbHkgbmVlZGVkIHRvIHN1YnRyYWN0LlxuICBjb25zdCB0b1N1YnRyYWN0ID0gYW1vdW50ICUgYnVja2V0LnJlZmlsbEFtb3VudCA/PyBhbW91bnRcbiAgYnVja2V0LnRva2Vuc1N0YXRlIC09IHRvU3VidHJhY3RcblxuICAvLyBBbGxvdyB0aGUgbmV4dCBhY3F1aXJlIHRvIGhhcHBlbi5cbiAgYnVja2V0LmFsbG93QWNxdWlyZSA9IHRydWVcbiAgLy8gSWYgdGhlcmUgaXMgYW4gYWNxdWlyZSB3YWl0aW5nLCBsZXQgaXQgY29udGludWUuXG4gIGJ1Y2tldC53YWl0aW5nLnNoaWZ0KCk/LigpXG59XG4iXSwibmFtZXMiOlsiZGVsYXkiLCJjcmVhdGVMZWFreUJ1Y2tldCIsIm1heCIsInJlZmlsbEludGVydmFsIiwicmVmaWxsQW1vdW50IiwidG9rZW5zIiwid2FpdGluZyIsInJlc3QiLCJsYXN0UmVmaWxsIiwicGVyZm9ybWFuY2UiLCJub3ciLCJhbGxvd0FjcXVpcmUiLCJuZXh0UmVmaWxsIiwidXBkYXRlVG9rZW5zIiwiYnVja2V0IiwiYWNxdWlyZSIsImFtb3VudCIsImhpZ2hQcmlvcml0eSIsInRva2Vuc1N0YXRlIiwidGltZVBhc3NlZCIsIm1pc3NlZFJlZmlsbHMiLCJNYXRoIiwiZmxvb3IiLCJtaW4iLCJQcm9taXNlIiwicmVzb2x2ZSIsInVuc2hpZnQiLCJwdXNoIiwiY3VycmVudFRva2VucyIsInJlZmlsbHNOZWVkZWQiLCJjZWlsIiwidG9rZW5zTmVlZGVkIiwid2FpdFRpbWUiLCJ0b1N1YnRyYWN0Iiwic2hpZnQiXSwibWFwcGluZ3MiOiJBQUNBLE9BQVNBLFNBQUFBLENBQUssS0FBUSxZQUFZLEFBbURsQyxRQUFPLFNBQVNDLGtCQUFtQixDQUNqQ0MsSUFBQUEsQ0FBRyxDQUNIQyxlQUFBQSxDQUFjLENBQ2RDLGFBQUFBLENBQVksQ0FDWkMsT0FBQUEsQ0FBTSxDQUNOQyxRQUFBQSxDQUFPLENBQ1AsR0FBR0MsRUFNSixDQUFlLENBQ2QsTUFBTyxDQUNMTCxJQUFBQSxFQUNBQyxlQUFBQSxFQUNBQyxhQUFjQSxFQUFlRixFQUFNQSxFQUFNRSxDQUFZLENBQ3JESSxXQUFZQyxZQUFZQyxHQUFHLEdBQzNCQyxhQUFjLENBQUEsRUFFZEMsV0FBWSxVQUFZLENBQ3RCLE9Ba0NKQyxFQWxDc0IsSUFBSSxFQW9DbkJKLFlBQVlDLEdBQUcsR0FBS0ksQUFwQ0wsSUFBSSxDQW9DUU4sVUFBVSxDQUFHTSxBQXBDekIsSUFBSSxDQW9DNEJYLGNBQWMsQUFuQ2xFLEVBRUFFLE9BQVEsVUFBWSxDQUNsQixPQUFPUSxFQUFhLElBQUksQ0FDMUIsRUFFQUUsUUFBUyxlQUFnQkMsQ0FBTSxDQUFFQyxDQUFZLENBQUUsQ0FDN0MsT0FBTyxNQUFNRixFQUFRLElBQUksQ0FBRUMsRUFBUUMsRUFDckMsRUFFQUMsWUFBYWIsR0FBVUgsRUFDdkJJLFFBQVNBLEdBQVcsRUFBRSxDQUV0QixHQUFHQyxDQUFJLEFBQ1QsQ0FDRixDQUFDLEFBS0QsU0FBU00sRUFBY0MsQ0FBbUIsQ0FBVSxDQUNsRCxJQUFNSyxFQUFhVixZQUFZQyxHQUFHLEdBQUtJLEVBQU9OLFVBQVUsQ0FDbERZLEVBQWdCQyxLQUFLQyxLQUFLLENBQUNILEVBQWFMLEVBQU9YLGNBQWMsRUFNbkUsT0FIQVcsRUFBT0ksV0FBVyxDQUFHRyxLQUFLRSxHQUFHLENBQUNULEVBQU9JLFdBQVcsQ0FBR0osRUFBT1YsWUFBWSxDQUFHZ0IsRUFBZU4sRUFBT1osR0FBRyxFQUNsR1ksRUFBT04sVUFBVSxFQUFJTSxFQUFPWCxjQUFjLENBQUdpQixFQUV0Q04sRUFBT0ksV0FBVyxBQUMzQixDQVNBLGVBQWVILEVBQVNELENBQW1CLENBQUVFLENBQWMsQ0FBRUMsRUFBZSxDQUFBLENBQUssQ0FBaUIsQ0FHaEcsR0FBSSxDQUFDSCxFQUFPSCxZQUFZLEdBRXRCLE1BQU0sSUFBSWEsUUFBUSxBQUFDQyxHQUFZLENBQ3pCUixFQUNGSCxFQUFPUixPQUFPLENBQUNvQixPQUFPLENBQUNELEdBRXZCWCxFQUFPUixPQUFPLENBQUNxQixJQUFJLENBQUNGLEVBRXhCLEdBSUksQ0FBQ1gsRUFBT0gsWUFBWSxFQUN0QixPQUFPLE1BQU1JLEVBQVFELEVBQVFFLEVBRWhDLEFBRURGLENBQUFBLEVBQU9ILFlBQVksQ0FBRyxDQUFBLEVBR3RCLElBQU1pQixFQUFnQmYsRUFBYUMsR0FJbkMsR0FBSWMsRUFBZ0JaLEVBQVEsQ0FFMUIsSUFBTWEsRUFBZ0JSLEtBQUtTLElBQUksQ0FBQ0MsQUFEWGYsQ0FBQUEsRUFBU1ksQ0FBWSxFQUNLZCxFQUFPVixZQUFZLEVBRTVENEIsRUFBV2xCLEVBQU9YLGNBQWMsQ0FBRzBCLENBQ3pDLE9BQU03QixFQUFNZ0MsR0FHWm5CLEVBQWFDLEVBQ2YsQ0FBQyxBQUlELElBQU1tQixFQUFhakIsQ0FBQUEsRUFBU0YsRUFBT1YsWUFBWSxBQUFELEdBQUtZLENBQ25ERixDQUFBQSxFQUFPSSxXQUFXLEVBQUllLEVBR3RCbkIsRUFBT0gsWUFBWSxDQUFHLENBQUEsRUFFdEJHLEVBQU9SLE9BQU8sQ0FBQzRCLEtBQUssTUFDdEIifQ==
1
+ import{delay as e}from"./utils.js";export function createLeakyBucket({max:e,refillInterval:t,refillAmount:n,tokens:i,waiting:l,...a}){return{max:e,refillInterval:t,refillAmount:n>e?e:n,lastRefill:performance.now(),allowAcquire:!0,nextRefill:function(){return nextRefill(this)},tokens:function(){return updateTokens(this)},acquire:async function(e,t){return await acquire(this,e,t)},tokensState:i??e,waiting:l??[],...a}}export function updateTokens(e){let t=performance.now()-e.lastRefill,n=Math.floor(t/e.refillInterval);return e.tokensState=Math.min(e.tokensState+e.refillAmount*n,e.max),e.lastRefill+=e.refillInterval*n,e.tokensState}export function nextRefill(e){return updateTokens(e),performance.now()-e.lastRefill+e.refillInterval}export async function acquire(t,n,i=!1){if(!t.allowAcquire&&(await new Promise(e=>{i?t.waiting.unshift(e):t.waiting.push(e)}),!t.allowAcquire))return await acquire(t,n);t.allowAcquire=!1;let l=updateTokens(t);if(l<n){let a=Math.ceil((n-l)/t.refillAmount),r=t.refillInterval*a;await e(r),updateTokens(t)}let o=(n%t.refillAmount)??n;t.tokensState-=o,t.allowAcquire=!0,t.waiting.shift()?.()}
2
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uL3NyYy9idWNrZXQudHMiXSwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHR5cGUgeyBQaWNrUGFydGlhbCB9IGZyb20gJ0BkaXNjb3JkZW5vL3R5cGVzJ1xuaW1wb3J0IHsgZGVsYXkgfSBmcm9tICcuL3V0aWxzLmpzJ1xuXG4vKiogQSBMZWFreSBCdWNrZXQuXG4gKiBVc2VmdWwgZm9yIHJhdGUgbGltaXRpbmcgcHVycG9zZXMuXG4gKiBUaGlzIHVzZXMgYHBlcmZvcm1hbmNlLm5vdygpYCBpbnN0ZWFkIG9mIGBEYXRlLm5vdygpYCBmb3IgaGlnaGVyIGFjY3VyYWN5LlxuICpcbiAqIE5PVEU6IFRoaXMgYnVja2V0IGlzIGxhenksIG1lYW5zIGl0IG9ubHkgdXBkYXRlcyB3aGVuIGEgcmVsYXRlZCBtZXRob2QgaXMgY2FsbGVkLlxuICovXG5leHBvcnQgaW50ZXJmYWNlIExlYWt5QnVja2V0IHtcbiAgLyoqIEhvdyBtYW55IHRva2VucyB0aGlzIGJ1Y2tldCBjYW4gaG9sZC4gKi9cbiAgbWF4OiBudW1iZXJcbiAgLyoqIEFtb3VudCBvZiB0b2tlbnMgZ2FpbmVkIHBlciBpbnRlcnZhbC5cbiAgICogSWYgYmlnZ2VyIHRoYW4gYG1heGAgaXQgd2lsbCBiZSBwcmVzc2VkIHRvIGBtYXhgLlxuICAgKi9cbiAgcmVmaWxsQW1vdW50OiBudW1iZXJcbiAgLyoqIEludGVydmFsIGF0IHdoaWNoIHRoZSBidWNrZXQgZ2FpbnMgdG9rZW5zLiAqL1xuICByZWZpbGxJbnRlcnZhbDogbnVtYmVyXG5cbiAgLyoqIEFjcXVpcmUgdG9rZW5zIGZyb20gdGhlIGJ1Y2tldC5cbiAgICogUmVzb2x2ZXMgd2hlbiB0aGUgdG9rZW5zIGFyZSBhY3F1aXJlZCBhbmQgYXZhaWxhYmxlLlxuICAgKiBAcGFyYW0ge2Jvb2xlYW59IFtoaWdoUHJpb3JpdHk9ZmFsc2VdIFdoZXRoZXIgdGhpcyBhY3F1aXJlIGlzIHNob3VsZCBiZSBkb25lIGFzYXAuXG4gICAqL1xuICBhY3F1aXJlOiAoYW1vdW50OiBudW1iZXIsIGhpZ2hQcmlvcml0eT86IGJvb2xlYW4pID0+IFByb21pc2U8dm9pZD5cblxuICAvKiogUmV0dXJucyB0aGUgbnVtYmVyIG9mIG1pbGxpc2Vjb25kcyB1bnRpbCB0aGUgbmV4dCByZWZpbGwuICovXG4gIG5leHRSZWZpbGw6ICgpID0+IG51bWJlclxuXG4gIC8qKiBDdXJyZW50IHRva2VucyBpbiB0aGUgYnVja2V0LiAqL1xuICB0b2tlbnM6ICgpID0+IG51bWJlclxuXG4gIC8qKiBAcHJpdmF0ZSBJbnRlcm5hbCB0cmFjayBvZiB3aGVuIHRoZSBsYXN0IHJlZmlsbCBvZiB0b2tlbnMgd2FzLlxuICAgKiBETyBOT1QgVE9VQ0ggVEhJUyEgVW5sZXNzIHlvdSBrbm93IHdoYXQgeW91IGFyZSBkb2luZyBvZmMgOlBcbiAgICovXG4gIGxhc3RSZWZpbGw6IG51bWJlclxuXG4gIC8qKiBAcHJpdmF0ZSBJbnRlcm5hbCBzdGF0ZSBvZiB3aGV0aGVyIGN1cnJlbnRseSBpdCBpcyBhbGxvd2VkIHRvIGFjcXVpcmUgdG9rZW5zLlxuICAgKiBETyBOT1QgVE9VQ0ggVEhJUyEgVW5sZXNzIHlvdSBrbm93IHdoYXQgeW91IGFyZSBkb2luZyBvZmMgOlBcbiAgICovXG4gIGFsbG93QWNxdWlyZTogYm9vbGVhblxuXG4gIC8qKiBAcHJpdmF0ZSBJbnRlcm5hbCBudW1iZXIgb2YgY3VycmVudGx5IGF2YWlsYWJsZSB0b2tlbnMuXG4gICAqIERPIE5PVCBUT1VDSCBUSElTISBVbmxlc3MgeW91IGtub3cgd2hhdCB5b3UgYXJlIGRvaW5nIG9mYyA6UFxuICAgKi9cbiAgdG9rZW5zU3RhdGU6IG51bWJlclxuXG4gIC8qKiBAcHJpdmF0ZSBJbnRlcm5hbCBhcnJheSBvZiBwcm9taXNlcyBuZWNlc3NhcnkgdG8gZ3VhcmFudGVlIG5vIHJhY2UgY29uZGl0aW9ucy5cbiAgICogRE8gTk9UIFRPVUNIIFRISVMhIFVubGVzcyB5b3Uga25vdyB3aGF0IHlvdSBhcmUgZG9pbmcgb2ZjIDpQXG4gICAqL1xuICB3YWl0aW5nOiBBcnJheTwoXz86IHVua25vd24pID0+IHZvaWQ+XG59XG5cbmV4cG9ydCBmdW5jdGlvbiBjcmVhdGVMZWFreUJ1Y2tldCh7XG4gIG1heCxcbiAgcmVmaWxsSW50ZXJ2YWwsXG4gIHJlZmlsbEFtb3VudCxcbiAgdG9rZW5zLFxuICB3YWl0aW5nLFxuICAuLi5yZXN0XG59OiBPbWl0PFBpY2tQYXJ0aWFsPExlYWt5QnVja2V0LCAnbWF4JyB8ICdyZWZpbGxJbnRlcnZhbCcgfCAncmVmaWxsQW1vdW50Jz4sICd0b2tlbnMnPiAmIHtcbiAgLyoqIEN1cnJlbnQgdG9rZW5zIGluIHRoZSBidWNrZXQuXG4gICAqIEBkZWZhdWx0IG1heFxuICAgKi9cbiAgdG9rZW5zPzogbnVtYmVyXG59KTogTGVha3lCdWNrZXQge1xuICByZXR1cm4ge1xuICAgIG1heCxcbiAgICByZWZpbGxJbnRlcnZhbCxcbiAgICByZWZpbGxBbW91bnQ6IHJlZmlsbEFtb3VudCA+IG1heCA/IG1heCA6IHJlZmlsbEFtb3VudCxcbiAgICBsYXN0UmVmaWxsOiBwZXJmb3JtYW5jZS5ub3coKSxcbiAgICBhbGxvd0FjcXVpcmU6IHRydWUsXG5cbiAgICBuZXh0UmVmaWxsOiBmdW5jdGlvbiAoKSB7XG4gICAgICByZXR1cm4gbmV4dFJlZmlsbCh0aGlzKVxuICAgIH0sXG5cbiAgICB0b2tlbnM6IGZ1bmN0aW9uICgpIHtcbiAgICAgIHJldHVybiB1cGRhdGVUb2tlbnModGhpcylcbiAgICB9LFxuXG4gICAgYWNxdWlyZTogYXN5bmMgZnVuY3Rpb24gKGFtb3VudCwgaGlnaFByaW9yaXR5KSB7XG4gICAgICByZXR1cm4gYXdhaXQgYWNxdWlyZSh0aGlzLCBhbW91bnQsIGhpZ2hQcmlvcml0eSlcbiAgICB9LFxuXG4gICAgdG9rZW5zU3RhdGU6IHRva2VucyA/PyBtYXgsXG4gICAgd2FpdGluZzogd2FpdGluZyA/PyBbXSxcblxuICAgIC4uLnJlc3QsXG4gIH1cbn1cblxuLyoqIFVwZGF0ZSB0aGUgdG9rZW5zIG9mIHRoYXQgYnVja2V0LlxuICogQHJldHVybnMge251bWJlcn0gVGhlIGFtb3VudCBvZiBjdXJyZW50IGF2YWlsYWJsZSB0b2tlbnMuXG4gKi9cbmV4cG9ydCBmdW5jdGlvbiB1cGRhdGVUb2tlbnMoYnVja2V0OiBMZWFreUJ1Y2tldCk6IG51bWJlciB7XG4gIGNvbnN0IHRpbWVQYXNzZWQgPSBwZXJmb3JtYW5jZS5ub3coKSAtIGJ1Y2tldC5sYXN0UmVmaWxsXG4gIGNvbnN0IG1pc3NlZFJlZmlsbHMgPSBNYXRoLmZsb29yKHRpbWVQYXNzZWQgLyBidWNrZXQucmVmaWxsSW50ZXJ2YWwpXG5cbiAgLy8gVGhlIHJlZmlsbCBzaGFsbCBub3QgZXhjZWVkIHRoZSBtYXggYW1vdW50IG9mIHRva2Vucy5cbiAgYnVja2V0LnRva2Vuc1N0YXRlID0gTWF0aC5taW4oYnVja2V0LnRva2Vuc1N0YXRlICsgYnVja2V0LnJlZmlsbEFtb3VudCAqIG1pc3NlZFJlZmlsbHMsIGJ1Y2tldC5tYXgpXG4gIGJ1Y2tldC5sYXN0UmVmaWxsICs9IGJ1Y2tldC5yZWZpbGxJbnRlcnZhbCAqIG1pc3NlZFJlZmlsbHNcblxuICByZXR1cm4gYnVja2V0LnRva2Vuc1N0YXRlXG59XG5cbmV4cG9ydCBmdW5jdGlvbiBuZXh0UmVmaWxsKGJ1Y2tldDogTGVha3lCdWNrZXQpOiBudW1iZXIge1xuICAvLyBTaW5jZSB0aGlzIGJ1Y2tldCBpcyBsYXp5IHVwZGF0ZSB0aGUgdG9rZW5zIGJlZm9yZSBjYWxjdWxhdGluZyB0aGUgbmV4dCByZWZpbGwuXG4gIHVwZGF0ZVRva2VucyhidWNrZXQpXG5cbiAgcmV0dXJuIHBlcmZvcm1hbmNlLm5vdygpIC0gYnVja2V0Lmxhc3RSZWZpbGwgKyBidWNrZXQucmVmaWxsSW50ZXJ2YWxcbn1cblxuZXhwb3J0IGFzeW5jIGZ1bmN0aW9uIGFjcXVpcmUoYnVja2V0OiBMZWFreUJ1Y2tldCwgYW1vdW50OiBudW1iZXIsIGhpZ2hQcmlvcml0eSA9IGZhbHNlKTogUHJvbWlzZTx2b2lkPiB7XG4gIC8vIFRvIHByZXZlbnQgdGhlIHJhY2UgY29uZGl0aW9uIG9mIDIgYWNxdWlyZXMgaGFwcGVuaW5nIGF0IG9uY2UsXG4gIC8vIGNoZWNrIHdoZXRoZXIgaXRzIGN1cnJlbnRseSBhbGxvd2VkIHRvIGFjcXVpcmUuXG4gIGlmICghYnVja2V0LmFsbG93QWNxdWlyZSkge1xuICAgIC8vIGNyZWF0ZSwgcHVzaCwgYW5kIHdhaXQgdW50aWwgdGhlIGN1cnJlbnQgcnVubmluZyBhY3F1aXJpbmcgaXMgZmluaXNoZWQuXG4gICAgYXdhaXQgbmV3IFByb21pc2UoKHJlc29sdmUpID0+IHtcbiAgICAgIGlmIChoaWdoUHJpb3JpdHkpIHtcbiAgICAgICAgYnVja2V0LndhaXRpbmcudW5zaGlmdChyZXNvbHZlKVxuICAgICAgfSBlbHNlIHtcbiAgICAgICAgYnVja2V0LndhaXRpbmcucHVzaChyZXNvbHZlKVxuICAgICAgfVxuICAgIH0pXG5cbiAgICAvLyBTb21laG93IGFub3RoZXIgYWNxdWlyZSBoYXMgc3RhcnRlZCxcbiAgICAvLyBzbyBuZWVkIHRvIHdhaXQgYWdhaW4uXG4gICAgaWYgKCFidWNrZXQuYWxsb3dBY3F1aXJlKSB7XG4gICAgICByZXR1cm4gYXdhaXQgYWNxdWlyZShidWNrZXQsIGFtb3VudClcbiAgICB9XG4gIH1cblxuICBidWNrZXQuYWxsb3dBY3F1aXJlID0gZmFsc2VcbiAgLy8gU2luY2UgdGhlIGJ1Y2tldCBpcyBsYXp5IHVwZGF0ZSB0aGUgdG9rZW5zIG5vdyxcbiAgLy8gYW5kIGFsc28gZ2V0IHRoZSBjdXJyZW50IGFtb3VudCBvZiBhdmFpbGFibGUgdG9rZW5zXG4gIGNvbnN0IGN1cnJlbnRUb2tlbnMgPSB1cGRhdGVUb2tlbnMoYnVja2V0KVxuXG4gIC8vIEl0J3MgcG9zc2libGUgdGhhdCBtb3JlIHRoYW4gYXZhaWxhYmxlIHRva2VucyBoYXZlIGJlZW4gYWNxdWlyZWQsXG4gIC8vIHNvIGNhbGN1bGF0ZSB0aGUgYW1vdW50IG9mIG1pbGxpc2Vjb25kcyB0byB3YWl0IHVudGlsIHRoaXMgYWNxdWlyZSBpcyBnb29kIHRvIGdvLlxuICBpZiAoY3VycmVudFRva2VucyA8IGFtb3VudCkge1xuICAgIGNvbnN0IHRva2Vuc05lZWRlZCA9IGFtb3VudCAtIGN1cnJlbnRUb2tlbnNcbiAgICBjb25zdCByZWZpbGxzTmVlZGVkID0gTWF0aC5jZWlsKHRva2Vuc05lZWRlZCAvIGJ1Y2tldC5yZWZpbGxBbW91bnQpXG5cbiAgICBjb25zdCB3YWl0VGltZSA9IGJ1Y2tldC5yZWZpbGxJbnRlcnZhbCAqIHJlZmlsbHNOZWVkZWRcbiAgICBhd2FpdCBkZWxheSh3YWl0VGltZSlcblxuICAgIC8vIFVwZGF0ZSB0aGUgdG9rZW5zIGFnYWluIHRvIGVuc3VyZSBub3RoaW5nIGhhcyBiZWVuIG1pc3NlZC5cbiAgICB1cGRhdGVUb2tlbnMoYnVja2V0KVxuICB9XG5cbiAgLy8gSW4gb3JkZXIgdG8gbm90IHN1YnRyYWN0IHRvbyBtdWNoIGZyb20gdGhlIHRva2VucyxcbiAgLy8gY2FsY3VsYXRlIHdoYXQgaXMgYWN0dWFsbHkgbmVlZGVkIHRvIHN1YnRyYWN0LlxuICBjb25zdCB0b1N1YnRyYWN0ID0gYW1vdW50ICUgYnVja2V0LnJlZmlsbEFtb3VudCA/PyBhbW91bnRcbiAgYnVja2V0LnRva2Vuc1N0YXRlIC09IHRvU3VidHJhY3RcblxuICAvLyBBbGxvdyB0aGUgbmV4dCBhY3F1aXJlIHRvIGhhcHBlbi5cbiAgYnVja2V0LmFsbG93QWNxdWlyZSA9IHRydWVcbiAgLy8gSWYgdGhlcmUgaXMgYW4gYWNxdWlyZSB3YWl0aW5nLCBsZXQgaXQgY29udGludWUuXG4gIGJ1Y2tldC53YWl0aW5nLnNoaWZ0KCk/LigpXG59XG4iXSwibmFtZXMiOlsiZGVsYXkiLCJjcmVhdGVMZWFreUJ1Y2tldCIsIm1heCIsInJlZmlsbEludGVydmFsIiwicmVmaWxsQW1vdW50IiwidG9rZW5zIiwid2FpdGluZyIsInJlc3QiLCJsYXN0UmVmaWxsIiwicGVyZm9ybWFuY2UiLCJub3ciLCJhbGxvd0FjcXVpcmUiLCJuZXh0UmVmaWxsIiwidXBkYXRlVG9rZW5zIiwiYWNxdWlyZSIsImFtb3VudCIsImhpZ2hQcmlvcml0eSIsInRva2Vuc1N0YXRlIiwiYnVja2V0IiwidGltZVBhc3NlZCIsIm1pc3NlZFJlZmlsbHMiLCJNYXRoIiwiZmxvb3IiLCJtaW4iLCJQcm9taXNlIiwicmVzb2x2ZSIsInVuc2hpZnQiLCJwdXNoIiwiY3VycmVudFRva2VucyIsInJlZmlsbHNOZWVkZWQiLCJjZWlsIiwidG9rZW5zTmVlZGVkIiwid2FpdFRpbWUiLCJ0b1N1YnRyYWN0Iiwic2hpZnQiXSwibWFwcGluZ3MiOiJBQUNBLE9BQVNBLFNBQUFBLENBQUssS0FBUSxZQUFZLEFBbURsQyxRQUFPLFNBQVNDLGtCQUFrQixDQUNoQ0MsSUFBQUEsQ0FBRyxDQUNIQyxlQUFBQSxDQUFjLENBQ2RDLGFBQUFBLENBQVksQ0FDWkMsT0FBQUEsQ0FBTSxDQUNOQyxRQUFBQSxDQUFPLENBQ1AsR0FBR0MsRUFNSixDQUFlLENBQ2QsTUFBTyxDQUNMTCxJQUFBQSxFQUNBQyxlQUFBQSxFQUNBQyxhQUFjQSxFQUFlRixFQUFNQSxFQUFNRSxDQUFZLENBQ3JESSxXQUFZQyxZQUFZQyxHQUFHLEdBQzNCQyxhQUFjLENBQUEsRUFFZEMsV0FBWSxVQUFZLENBQ3RCLE9BQU9BLFdBQVcsSUFBSSxDQUN4QixFQUVBUCxPQUFRLFVBQVksQ0FDbEIsT0FBT1EsYUFBYSxJQUFJLENBQzFCLEVBRUFDLFFBQVMsZUFBZ0JDLENBQU0sQ0FBRUMsQ0FBWSxDQUFFLENBQzdDLE9BQU8sTUFBTUYsUUFBUSxJQUFJLENBQUVDLEVBQVFDLEVBQ3JDLEVBRUFDLFlBQWFaLEdBQVVILEVBQ3ZCSSxRQUFTQSxHQUFXLEVBQUUsQ0FFdEIsR0FBR0MsQ0FBSSxBQUNULENBQ0YsQ0FBQyxBQUtELE9BQU8sU0FBU00sYUFBYUssQ0FBbUIsQ0FBVSxDQUN4RCxJQUFNQyxFQUFhVixZQUFZQyxHQUFHLEdBQUtRLEVBQU9WLFVBQVUsQ0FDbERZLEVBQWdCQyxLQUFLQyxLQUFLLENBQUNILEVBQWFELEVBQU9mLGNBQWMsRUFNbkUsT0FIQWUsRUFBT0QsV0FBVyxDQUFHSSxLQUFLRSxHQUFHLENBQUNMLEVBQU9ELFdBQVcsQ0FBR0MsRUFBT2QsWUFBWSxDQUFHZ0IsRUFBZUYsRUFBT2hCLEdBQUcsRUFDbEdnQixFQUFPVixVQUFVLEVBQUlVLEVBQU9mLGNBQWMsQ0FBR2lCLEVBRXRDRixFQUFPRCxXQUFXLEFBQzNCLENBQUMsQUFFRCxPQUFPLFNBQVNMLFdBQVdNLENBQW1CLENBQVUsQ0FJdEQsT0FGQUwsYUFBYUssR0FFTlQsWUFBWUMsR0FBRyxHQUFLUSxFQUFPVixVQUFVLENBQUdVLEVBQU9mLGNBQWMsQUFDdEUsQ0FBQyxBQUVELE9BQU8sZUFBZVcsUUFBUUksQ0FBbUIsQ0FBRUgsQ0FBYyxDQUFFQyxFQUFlLENBQUEsQ0FBSyxDQUFpQixDQUd0RyxHQUFJLENBQUNFLEVBQU9QLFlBQVksR0FFdEIsTUFBTSxJQUFJYSxRQUFRLEFBQUNDLEdBQVksQ0FDekJULEVBQ0ZFLEVBQU9aLE9BQU8sQ0FBQ29CLE9BQU8sQ0FBQ0QsR0FFdkJQLEVBQU9aLE9BQU8sQ0FBQ3FCLElBQUksQ0FBQ0YsRUFFeEIsR0FJSSxDQUFDUCxFQUFPUCxZQUFZLEVBQ3RCLE9BQU8sTUFBTUcsUUFBUUksRUFBUUgsRUFFaEMsQUFFREcsQ0FBQUEsRUFBT1AsWUFBWSxDQUFHLENBQUEsRUFHdEIsSUFBTWlCLEVBQWdCZixhQUFhSyxHQUluQyxHQUFJVSxFQUFnQmIsRUFBUSxDQUUxQixJQUFNYyxFQUFnQlIsS0FBS1MsSUFBSSxDQUFDQyxBQURYaEIsQ0FBQUEsRUFBU2EsQ0FBWSxFQUNLVixFQUFPZCxZQUFZLEVBRTVENEIsRUFBV2QsRUFBT2YsY0FBYyxDQUFHMEIsQ0FDekMsT0FBTTdCLEVBQU1nQyxHQUdabkIsYUFBYUssRUFDZixDQUFDLEFBSUQsSUFBTWUsRUFBYWxCLENBQUFBLEVBQVNHLEVBQU9kLFlBQVksQUFBRCxHQUFLVyxDQUNuREcsQ0FBQUEsRUFBT0QsV0FBVyxFQUFJZ0IsRUFHdEJmLEVBQU9QLFlBQVksQ0FBRyxDQUFBLEVBRXRCTyxFQUFPWixPQUFPLENBQUM0QixLQUFLLE1BQ3RCLENBQUMifQ==
@@ -1,2 +1,2 @@
1
- import{BitwisePermissionFlags as t}from"@discordeno/types";export function calculatePermissions(e){return Object.keys(t).filter(r=>"number"!=typeof r&&e&BigInt(t[r]))}export function calculateBits(e){return e.reduce((e,r)=>e|=BigInt(t[r]),0n).toString()}
2
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uL3NyYy9wZXJtaXNzaW9ucy50cyJdLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgdHlwZSB7IFBlcm1pc3Npb25TdHJpbmdzIH0gZnJvbSAnQGRpc2NvcmRlbm8vdHlwZXMnXG5pbXBvcnQgeyBCaXR3aXNlUGVybWlzc2lvbkZsYWdzIH0gZnJvbSAnQGRpc2NvcmRlbm8vdHlwZXMnXG5cbi8qKiBUaGlzIGZ1bmN0aW9uIGNvbnZlcnRzIGEgYml0d2lzZSBzdHJpbmcgdG8gcGVybWlzc2lvbiBzdHJpbmdzICovXG5leHBvcnQgZnVuY3Rpb24gY2FsY3VsYXRlUGVybWlzc2lvbnMocGVybWlzc2lvbkJpdHM6IGJpZ2ludCk6IFBlcm1pc3Npb25TdHJpbmdzW10ge1xuICByZXR1cm4gT2JqZWN0LmtleXMoQml0d2lzZVBlcm1pc3Npb25GbGFncykuZmlsdGVyKChwZXJtaXNzaW9uKSA9PiB7XG4gICAgLy8gU2luY2UgT2JqZWN0LmtleXMoKSBub3Qgb25seSByZXR1cm5zIHRoZSBwZXJtaXNzaW9uIG5hbWVzIGJ1dCBhbHNvIHRoZSBiaXQgdmFsdWVzIHdlIG5lZWQgdG8gcmV0dXJuIGZhbHNlIGlmIGl0IGlzIGEgTnVtYmVyXG4gICAgaWYgKHR5cGVvZiBwZXJtaXNzaW9uID09PSAnbnVtYmVyJykgcmV0dXJuIGZhbHNlXG4gICAgLy8gQ2hlY2sgaWYgcGVybWlzc2lvbkJpdHMgaGFzIHRoaXMgcGVybWlzc2lvblxuICAgIHJldHVybiBwZXJtaXNzaW9uQml0cyAmIEJpZ0ludChCaXR3aXNlUGVybWlzc2lvbkZsYWdzW3Blcm1pc3Npb24gYXMgUGVybWlzc2lvblN0cmluZ3NdKVxuICB9KSBhcyBQZXJtaXNzaW9uU3RyaW5nc1tdXG59XG5cbi8qKiBUaGlzIGZ1bmN0aW9uIGNvbnZlcnRzIGFuIGFycmF5IG9mIHBlcm1pc3Npb25zIGludG8gdGhlIGJpdHdpc2Ugc3RyaW5nLiAqL1xuZXhwb3J0IGZ1bmN0aW9uIGNhbGN1bGF0ZUJpdHMocGVybWlzc2lvbnM6IFBlcm1pc3Npb25TdHJpbmdzW10pOiBzdHJpbmcge1xuICByZXR1cm4gcGVybWlzc2lvbnNcbiAgICAucmVkdWNlKChiaXRzLCBwZXJtKSA9PiB7XG4gICAgICBiaXRzIHw9IEJpZ0ludChCaXR3aXNlUGVybWlzc2lvbkZsYWdzW3Blcm1dKVxuICAgICAgcmV0dXJuIGJpdHNcbiAgICB9LCAwbilcbiAgICAudG9TdHJpbmcoKVxufVxuIl0sIm5hbWVzIjpbIkJpdHdpc2VQZXJtaXNzaW9uRmxhZ3MiLCJjYWxjdWxhdGVQZXJtaXNzaW9ucyIsInBlcm1pc3Npb25CaXRzIiwiT2JqZWN0Iiwia2V5cyIsImZpbHRlciIsInBlcm1pc3Npb24iLCJCaWdJbnQiLCJjYWxjdWxhdGVCaXRzIiwicGVybWlzc2lvbnMiLCJyZWR1Y2UiLCJiaXRzIiwicGVybSIsInRvU3RyaW5nIl0sIm1hcHBpbmdzIjoiQUFDQSxPQUFTQSwwQkFBQUEsQ0FBc0IsS0FBUSxtQkFBbUIsQUFHMUQsUUFBTyxTQUFTQyxxQkFBcUJDLENBQXNCLENBQXVCLENBQ2hGLE9BQU9DLE9BQU9DLElBQUksQ0FBQ0osR0FBd0JLLE1BQU0sQ0FBQyxBQUFDQyxHQUVqRCxBQUEwQixVQUF0QixPQUFPQSxHQUVKSixFQUFpQkssT0FBT1AsQ0FBc0IsQ0FBQ00sRUFBZ0MsRUFFMUYsQ0FBQyxBQUdELE9BQU8sU0FBU0UsY0FBY0MsQ0FBZ0MsQ0FBVSxDQUN0RSxPQUFPQSxFQUNKQyxNQUFNLENBQUMsQ0FBQ0MsRUFBTUMsSUFDYkQsR0FBUUosT0FBT1AsQ0FBc0IsQ0FBQ1ksRUFBSyxFQUUxQyxDQUFFLEFBQUYsQ0FBRSxFQUNKQyxRQUFRLEVBQ2IsQ0FBQyJ9
1
+ import{BitwisePermissionFlags as t}from"@discordeno/types";export function calculatePermissions(e){return Object.keys(t).filter(r=>!Number(r)&&e&BigInt(t[r]))}export function calculateBits(e){return e.reduce((e,r)=>e|=BigInt(t[r]),0n).toString()}
2
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uL3NyYy9wZXJtaXNzaW9ucy50cyJdLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgdHlwZSB7IFBlcm1pc3Npb25TdHJpbmdzIH0gZnJvbSAnQGRpc2NvcmRlbm8vdHlwZXMnXG5pbXBvcnQgeyBCaXR3aXNlUGVybWlzc2lvbkZsYWdzIH0gZnJvbSAnQGRpc2NvcmRlbm8vdHlwZXMnXG5cbi8qKiBUaGlzIGZ1bmN0aW9uIGNvbnZlcnRzIGEgYml0d2lzZSBzdHJpbmcgdG8gcGVybWlzc2lvbiBzdHJpbmdzICovXG5leHBvcnQgZnVuY3Rpb24gY2FsY3VsYXRlUGVybWlzc2lvbnMocGVybWlzc2lvbkJpdHM6IGJpZ2ludCk6IFBlcm1pc3Npb25TdHJpbmdzW10ge1xuICByZXR1cm4gT2JqZWN0LmtleXMoQml0d2lzZVBlcm1pc3Npb25GbGFncykuZmlsdGVyKChwZXJtaXNzaW9uKSA9PiB7XG4gICAgLy8gU2luY2UgT2JqZWN0LmtleXMoKSBub3Qgb25seSByZXR1cm5zIHRoZSBwZXJtaXNzaW9uIG5hbWVzIGJ1dCBhbHNvIHRoZSBiaXQgdmFsdWVzIHdlIG5lZWQgdG8gcmV0dXJuIGZhbHNlIGlmIGl0IGlzIGEgTnVtYmVyXG4gICAgaWYgKE51bWJlcihwZXJtaXNzaW9uKSkgcmV0dXJuIGZhbHNlXG4gICAgLy8gQ2hlY2sgaWYgcGVybWlzc2lvbkJpdHMgaGFzIHRoaXMgcGVybWlzc2lvblxuICAgIHJldHVybiBwZXJtaXNzaW9uQml0cyAmIEJpZ0ludChCaXR3aXNlUGVybWlzc2lvbkZsYWdzW3Blcm1pc3Npb24gYXMgUGVybWlzc2lvblN0cmluZ3NdKVxuICB9KSBhcyBQZXJtaXNzaW9uU3RyaW5nc1tdXG59XG5cbi8qKiBUaGlzIGZ1bmN0aW9uIGNvbnZlcnRzIGFuIGFycmF5IG9mIHBlcm1pc3Npb25zIGludG8gdGhlIGJpdHdpc2Ugc3RyaW5nLiAqL1xuZXhwb3J0IGZ1bmN0aW9uIGNhbGN1bGF0ZUJpdHMocGVybWlzc2lvbnM6IFBlcm1pc3Npb25TdHJpbmdzW10pOiBzdHJpbmcge1xuICByZXR1cm4gcGVybWlzc2lvbnNcbiAgICAucmVkdWNlKChiaXRzLCBwZXJtKSA9PiB7XG4gICAgICBiaXRzIHw9IEJpZ0ludChCaXR3aXNlUGVybWlzc2lvbkZsYWdzW3Blcm1dKVxuICAgICAgcmV0dXJuIGJpdHNcbiAgICB9LCAwbilcbiAgICAudG9TdHJpbmcoKVxufVxuIl0sIm5hbWVzIjpbIkJpdHdpc2VQZXJtaXNzaW9uRmxhZ3MiLCJjYWxjdWxhdGVQZXJtaXNzaW9ucyIsInBlcm1pc3Npb25CaXRzIiwiT2JqZWN0Iiwia2V5cyIsImZpbHRlciIsInBlcm1pc3Npb24iLCJOdW1iZXIiLCJCaWdJbnQiLCJjYWxjdWxhdGVCaXRzIiwicGVybWlzc2lvbnMiLCJyZWR1Y2UiLCJiaXRzIiwicGVybSIsInRvU3RyaW5nIl0sIm1hcHBpbmdzIjoiQUFDQSxPQUFTQSwwQkFBQUEsQ0FBc0IsS0FBUSxtQkFBbUIsQUFHMUQsUUFBTyxTQUFTQyxxQkFBcUJDLENBQXNCLENBQXVCLENBQ2hGLE9BQU9DLE9BQU9DLElBQUksQ0FBQ0osR0FBd0JLLE1BQU0sQ0FBQyxBQUFDQyxHQUVqRCxDQUFJQyxPQUFPRCxJQUVKSixFQUFpQk0sT0FBT1IsQ0FBc0IsQ0FBQ00sRUFBZ0MsRUFFMUYsQ0FBQyxBQUdELE9BQU8sU0FBU0csY0FBY0MsQ0FBZ0MsQ0FBVSxDQUN0RSxPQUFPQSxFQUNKQyxNQUFNLENBQUMsQ0FBQ0MsRUFBTUMsSUFDYkQsR0FBUUosT0FBT1IsQ0FBc0IsQ0FBQ2EsRUFBSyxFQUUxQyxDQUFFLEFBQUYsQ0FBRSxFQUNKQyxRQUFRLEVBQ2IsQ0FBQyJ9
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@discordeno/utils",
3
- "version": "19.0.0-next.4d0b7b2",
3
+ "version": "19.0.0-next.5b20015",
4
4
  "main": "./dist/index.js",
5
5
  "types": "./dist/index.d.ts",
6
6
  "type": "module",
@@ -23,7 +23,7 @@
23
23
  "test:test-type": "tsc --project tsconfig.test.json"
24
24
  },
25
25
  "dependencies": {
26
- "@discordeno/types": "19.0.0-next.4d0b7b2",
26
+ "@discordeno/types": "19.0.0-next.5b20015",
27
27
  "tweetnacl": "^1.0.3"
28
28
  },
29
29
  "devDependencies": {