Make RateLimiter the default export
This commit is contained in:
@@ -8,10 +8,10 @@ Simple but effective way to rate limit Tasks in JavaScript. Anything can be rate
|
|||||||
|
|
||||||
## Usage
|
## Usage
|
||||||
```js
|
```js
|
||||||
var ratelimiter = require("@xaymar/ratelimiter");
|
var RateLimiter = require("@xaymar/ratelimiter");
|
||||||
|
|
||||||
let limitMany = new ratelimiter.RateLimiter(4);
|
let limitMany = new RateLimiter(4);
|
||||||
let limitOne = new ratelimiter.RateLimiter(1);
|
let limitOne = new RateLimiter(1);
|
||||||
|
|
||||||
for (let idx = 0; idx < 3; idx++) {
|
for (let idx = 0; idx < 3; idx++) {
|
||||||
limitOne.queue(async () => {
|
limitOne.queue(async () => {
|
||||||
@@ -40,10 +40,10 @@ No, but it is relatively easy to do without official support. See the example be
|
|||||||
|
|
||||||
```js
|
```js
|
||||||
// main.js
|
// main.js
|
||||||
var ratelimiter = require("@xaymar/ratelimiter");
|
var RateLimiter = require("@xaymar/ratelimiter");
|
||||||
|
|
||||||
let worker = new Worker("worker.js");
|
let worker = new Worker("worker.js");
|
||||||
let workerRL = new ratelimiter.RateLimiter(1);
|
let workerRL = new RateLimiter(1);
|
||||||
|
|
||||||
worker.onmessage = (event) => {
|
worker.onmessage = (event) => {
|
||||||
worker.resolve(event);
|
worker.resolve(event);
|
||||||
|
|||||||
@@ -24,11 +24,11 @@ interface RateLimiterInstance {
|
|||||||
solver?: Promise<any>,
|
solver?: Promise<any>,
|
||||||
}
|
}
|
||||||
|
|
||||||
export type RateLimiterAsyncExecutor = (...args: any[]) => Promise<any>;
|
type RateLimiterAsyncExecutor = (...args: any[]) => Promise<any>;
|
||||||
export type RateLimiterSyncExecutor = (...args: any[]) => any;
|
type RateLimiterSyncExecutor = (...args: any[]) => any;
|
||||||
export type RateLimiterExecutor = RateLimiterSyncExecutor | RateLimiterAsyncExecutor;
|
type RateLimiterExecutor = RateLimiterSyncExecutor | RateLimiterAsyncExecutor;
|
||||||
|
|
||||||
export class RateLimiter {
|
export default class RateLimiter {
|
||||||
private _maximum: number = 0;
|
private _maximum: number = 0;
|
||||||
private _available: number = 0;
|
private _available: number = 0;
|
||||||
private _instances: any[];
|
private _instances: any[];
|
||||||
|
|||||||
Reference in New Issue
Block a user