@discordeno/rest 21.0.1-next.fca0b40 → 22.0.1-next.0090dd2
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.d.ts.map +1 -0
- package/dist/index.js +8 -0
- package/dist/invalidBucket.d.ts.map +1 -0
- package/dist/invalidBucket.js +82 -0
- package/dist/manager.d.ts.map +1 -0
- package/dist/manager.js +1645 -0
- package/dist/queue.d.ts.map +1 -0
- package/dist/queue.js +162 -0
- package/dist/routes.d.ts +9 -0
- package/dist/routes.d.ts.map +1 -0
- package/dist/routes.js +642 -0
- package/dist/{types/types.d.ts → types.d.ts} +226 -177
- package/dist/types.d.ts.map +1 -0
- package/dist/types.js +3 -0
- package/dist/{types/typings → typings}/routes.d.ts +6 -0
- package/dist/typings/routes.d.ts.map +1 -0
- package/dist/typings/routes.js +3 -0
- package/package.json +26 -35
- package/dist/cjs/index.cjs +0 -25
- package/dist/cjs/invalidBucket.cjs +0 -86
- package/dist/cjs/manager.cjs +0 -1665
- package/dist/cjs/queue.cjs +0 -164
- package/dist/cjs/routes.cjs +0 -631
- package/dist/cjs/types.cjs +0 -6
- package/dist/cjs/typings/routes.cjs +0 -6
- package/dist/esm/index.js +0 -8
- package/dist/esm/invalidBucket.js +0 -82
- package/dist/esm/manager.js +0 -1623
- package/dist/esm/queue.js +0 -154
- package/dist/esm/routes.js +0 -621
- package/dist/esm/types.js +0 -3
- package/dist/esm/typings/routes.js +0 -3
- package/dist/types/index.d.ts.map +0 -1
- package/dist/types/invalidBucket.d.ts.map +0 -1
- package/dist/types/manager.d.ts.map +0 -1
- package/dist/types/queue.d.ts.map +0 -1
- package/dist/types/routes.d.ts +0 -3
- package/dist/types/routes.d.ts.map +0 -1
- package/dist/types/types.d.ts.map +0 -1
- package/dist/types/typings/routes.d.ts.map +0 -1
- /package/dist/{types/index.d.ts → index.d.ts} +0 -0
- /package/dist/{types/invalidBucket.d.ts → invalidBucket.d.ts} +0 -0
- /package/dist/{types/manager.d.ts → manager.d.ts} +0 -0
- /package/dist/{types/queue.d.ts → queue.d.ts} +0 -0
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,cAAc,oBAAoB,CAAC;AACnC,cAAc,cAAc,CAAC;AAC7B,cAAc,YAAY,CAAC;AAC3B,cAAc,aAAa,CAAC;AAC5B,cAAc,YAAY,CAAC;AAC3B,cAAc,qBAAqB,CAAC"}
|
package/dist/index.js
ADDED
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
export * from './invalidBucket.js';
|
|
2
|
+
export * from './manager.js';
|
|
3
|
+
export * from './queue.js';
|
|
4
|
+
export * from './routes.js';
|
|
5
|
+
export * from './types.js';
|
|
6
|
+
export * from './typings/routes.js';
|
|
7
|
+
|
|
8
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uL3NyYy9pbmRleC50cyJdLCJzb3VyY2VzQ29udGVudCI6WyJleHBvcnQgKiBmcm9tICcuL2ludmFsaWRCdWNrZXQuanMnO1xuZXhwb3J0ICogZnJvbSAnLi9tYW5hZ2VyLmpzJztcbmV4cG9ydCAqIGZyb20gJy4vcXVldWUuanMnO1xuZXhwb3J0ICogZnJvbSAnLi9yb3V0ZXMuanMnO1xuZXhwb3J0ICogZnJvbSAnLi90eXBlcy5qcyc7XG5leHBvcnQgKiBmcm9tICcuL3R5cGluZ3Mvcm91dGVzLmpzJztcbiJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxjQUFjLHFCQUFxQjtBQUNuQyxjQUFjLGVBQWU7QUFDN0IsY0FBYyxhQUFhO0FBQzNCLGNBQWMsY0FBYztBQUM1QixjQUFjLGFBQWE7QUFDM0IsY0FBYyxzQkFBc0IifQ==
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"invalidBucket.d.ts","sourceRoot":"","sources":["../src/invalidBucket.ts"],"names":[],"mappings":"AAAA,OAAO,EAAS,MAAM,EAAE,MAAM,mBAAmB,CAAC;AAElD;;;;;;GAMG;AACH,wBAAgB,0BAA0B,CAAC,OAAO,EAAE,2BAA2B,GAAG,oBAAoB,CA2FrG;AAED,MAAM,WAAW,2BAA2B;IAC1C,6BAA6B;IAC7B,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,iEAAiE;IACjE,GAAG,CAAC,EAAE,MAAM,CAAC;IACb,sGAAsG;IACtG,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,sDAAsD;IACtD,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,6CAA6C;IAC7C,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,6DAA6D;IAC7D,aAAa,CAAC,EAAE,MAAM,EAAE,CAAC;IACzB,mEAAmE;IACnE,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,kDAAkD;IAClD,MAAM,CAAC,EAAE,IAAI,CAAC,OAAO,MAAM,EAAE,OAAO,GAAG,MAAM,GAAG,MAAM,GAAG,OAAO,GAAG,OAAO,CAAC,CAAC;CAC7E;AAED,MAAM,WAAW,oBAAoB;IACnC,6BAA6B;IAC7B,eAAe,EAAE,MAAM,CAAC;IACxB,iEAAiE;IACjE,GAAG,EAAE,MAAM,CAAC;IACZ,sGAAsG;IACtG,QAAQ,EAAE,MAAM,CAAC;IACjB,uDAAuD;IACvD,OAAO,EAAE,MAAM,GAAG,SAAS,CAAC;IAC5B,6CAA6C;IAC7C,MAAM,EAAE,MAAM,CAAC;IACf,6DAA6D;IAC7D,aAAa,EAAE,MAAM,EAAE,CAAC;IACxB,mEAAmE;IACnE,cAAc,EAAE,MAAM,CAAC;IACvB,+CAA+C;IAC/C,OAAO,EAAE,KAAK,CAAC,CAAC,KAAK,EAAE,IAAI,GAAG,WAAW,CAAC,IAAI,CAAC,KAAK,IAAI,CAAC,CAAC;IAC1D,8DAA8D;IAC9D,UAAU,EAAE,OAAO,CAAC;IACpB,kDAAkD;IAClD,MAAM,EAAE,IAAI,CAAC,OAAO,MAAM,EAAE,OAAO,GAAG,MAAM,GAAG,MAAM,GAAG,OAAO,GAAG,OAAO,CAAC,CAAC;IAE3E,+DAA+D;IAC/D,eAAe,EAAE,MAAM,MAAM,CAAC;IAC9B,mDAAmD;IACnD,gBAAgB,EAAE,MAAM,OAAO,CAAC;IAChC,yCAAyC;IACzC,yBAAyB,EAAE,MAAM,OAAO,CAAC,IAAI,CAAC,CAAC;IAC/C,uDAAuD;IACvD,cAAc,EAAE,MAAM,OAAO,CAAC,IAAI,CAAC,CAAC;IACpC,iIAAiI;IACjI,sBAAsB,EAAE,CAAC,IAAI,EAAE,MAAM,EAAE,WAAW,EAAE,OAAO,KAAK,IAAI,CAAC;CACtE"}
|
|
@@ -0,0 +1,82 @@
|
|
|
1
|
+
import { delay, logger } from '@discordeno/utils';
|
|
2
|
+
/**
|
|
3
|
+
* A invalid request bucket is used in a similar manner as a leaky bucket but a invalid request bucket can be refilled as needed.
|
|
4
|
+
* It's purpose is to make sure the bot does not hit the limit to getting a 1 hr ban.
|
|
5
|
+
*
|
|
6
|
+
* @param options The options used to configure this bucket.
|
|
7
|
+
* @returns RefillingBucket
|
|
8
|
+
*/ export function createInvalidRequestBucket(options) {
|
|
9
|
+
const bucket = {
|
|
10
|
+
invalidRequests: options.current ?? 0,
|
|
11
|
+
max: options.max ?? 10000,
|
|
12
|
+
interval: options.interval ?? 600_000,
|
|
13
|
+
resetAt: options.resetAt,
|
|
14
|
+
safety: options.safety ?? 1,
|
|
15
|
+
errorStatuses: options.errorStatuses ?? [
|
|
16
|
+
401,
|
|
17
|
+
403,
|
|
18
|
+
429
|
|
19
|
+
],
|
|
20
|
+
activeRequests: options.requested ?? 0,
|
|
21
|
+
processing: false,
|
|
22
|
+
logger: options.logger ?? logger,
|
|
23
|
+
waiting: [],
|
|
24
|
+
requestsAllowed: function() {
|
|
25
|
+
if (bucket.resetAt !== undefined && Date.now() >= bucket.resetAt) {
|
|
26
|
+
bucket.invalidRequests = 0;
|
|
27
|
+
bucket.resetAt = Date.now() + bucket.interval;
|
|
28
|
+
}
|
|
29
|
+
return bucket.max - bucket.invalidRequests - bucket.activeRequests - bucket.safety;
|
|
30
|
+
},
|
|
31
|
+
isRequestAllowed: function() {
|
|
32
|
+
return bucket.requestsAllowed() > 0;
|
|
33
|
+
},
|
|
34
|
+
waitUntilRequestAvailable: async function() {
|
|
35
|
+
return await new Promise(async (resolve)=>{
|
|
36
|
+
// If whatever amount of requests is left is more than the safety margin, allow the request
|
|
37
|
+
if (bucket.isRequestAllowed()) {
|
|
38
|
+
bucket.activeRequests += 1;
|
|
39
|
+
resolve();
|
|
40
|
+
} else {
|
|
41
|
+
bucket.waiting.push(resolve);
|
|
42
|
+
await bucket.processWaiting();
|
|
43
|
+
}
|
|
44
|
+
});
|
|
45
|
+
},
|
|
46
|
+
processWaiting: async function() {
|
|
47
|
+
// If already processing, that loop will handle all waiting requests.
|
|
48
|
+
if (bucket.processing) return;
|
|
49
|
+
// Mark as processing so other loops don't start
|
|
50
|
+
bucket.processing = true;
|
|
51
|
+
while(bucket.waiting.length > 0){
|
|
52
|
+
bucket.logger.info(`[InvalidBucket] processing waiting queue while loop ran with ${bucket.waiting.length} pending requests to be made. ${JSON.stringify(bucket)}`);
|
|
53
|
+
if (!bucket.isRequestAllowed() && bucket.resetAt !== undefined) {
|
|
54
|
+
bucket.logger.warn(`[InvalidBucket] processing waiting queue is now paused until more requests are available. ${bucket.waiting.length} pending requests. ${JSON.stringify(bucket)}`);
|
|
55
|
+
await delay(bucket.resetAt - Date.now());
|
|
56
|
+
}
|
|
57
|
+
bucket.activeRequests += 1;
|
|
58
|
+
// Resolve the next item in the queue
|
|
59
|
+
bucket.waiting.shift()?.();
|
|
60
|
+
}
|
|
61
|
+
// Mark as false so next pending request can be triggered by new loop.
|
|
62
|
+
bucket.processing = false;
|
|
63
|
+
},
|
|
64
|
+
handleCompletedRequest: function(code, sharedScope) {
|
|
65
|
+
// Since request is complete, we can remove one from requested.
|
|
66
|
+
bucket.activeRequests -= 1;
|
|
67
|
+
// Since it is as a valid request, we don't need to do anything
|
|
68
|
+
if (!bucket.errorStatuses.includes(code)) return;
|
|
69
|
+
// Shared scope is not considered invalid
|
|
70
|
+
if (code === 429 && sharedScope) return;
|
|
71
|
+
// INVALID REQUEST WAS MADE
|
|
72
|
+
if (bucket.resetAt === undefined) {
|
|
73
|
+
bucket.resetAt = Date.now() + bucket.interval;
|
|
74
|
+
}
|
|
75
|
+
bucket.invalidRequests += 1;
|
|
76
|
+
bucket.logger.warn(`[InvalidBucket] an invalid request was made. Increasing invalidRequests count to ${bucket.invalidRequests}`);
|
|
77
|
+
}
|
|
78
|
+
};
|
|
79
|
+
return bucket;
|
|
80
|
+
}
|
|
81
|
+
|
|
82
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uL3NyYy9pbnZhbGlkQnVja2V0LnRzIl0sInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IGRlbGF5LCBsb2dnZXIgfSBmcm9tICdAZGlzY29yZGVuby91dGlscyc7XG5cbi8qKlxuICogQSBpbnZhbGlkIHJlcXVlc3QgYnVja2V0IGlzIHVzZWQgaW4gYSBzaW1pbGFyIG1hbm5lciBhcyBhIGxlYWt5IGJ1Y2tldCBidXQgYSBpbnZhbGlkIHJlcXVlc3QgYnVja2V0IGNhbiBiZSByZWZpbGxlZCBhcyBuZWVkZWQuXG4gKiBJdCdzIHB1cnBvc2UgaXMgdG8gbWFrZSBzdXJlIHRoZSBib3QgZG9lcyBub3QgaGl0IHRoZSBsaW1pdCB0byBnZXR0aW5nIGEgMSBociBiYW4uXG4gKlxuICogQHBhcmFtIG9wdGlvbnMgVGhlIG9wdGlvbnMgdXNlZCB0byBjb25maWd1cmUgdGhpcyBidWNrZXQuXG4gKiBAcmV0dXJucyBSZWZpbGxpbmdCdWNrZXRcbiAqL1xuZXhwb3J0IGZ1bmN0aW9uIGNyZWF0ZUludmFsaWRSZXF1ZXN0QnVja2V0KG9wdGlvbnM6IEludmFsaWRSZXF1ZXN0QnVja2V0T3B0aW9ucyk6IEludmFsaWRSZXF1ZXN0QnVja2V0IHtcbiAgY29uc3QgYnVja2V0OiBJbnZhbGlkUmVxdWVzdEJ1Y2tldCA9IHtcbiAgICBpbnZhbGlkUmVxdWVzdHM6IG9wdGlvbnMuY3VycmVudCA/PyAwLFxuICAgIG1heDogb3B0aW9ucy5tYXggPz8gMTAwMDAsXG4gICAgaW50ZXJ2YWw6IG9wdGlvbnMuaW50ZXJ2YWwgPz8gNjAwXzAwMCwgLy8gMTAgbWludXRlc1xuICAgIHJlc2V0QXQ6IG9wdGlvbnMucmVzZXRBdCxcbiAgICBzYWZldHk6IG9wdGlvbnMuc2FmZXR5ID8/IDEsXG4gICAgZXJyb3JTdGF0dXNlczogb3B0aW9ucy5lcnJvclN0YXR1c2VzID8/IFs0MDEsIDQwMywgNDI5XSxcbiAgICBhY3RpdmVSZXF1ZXN0czogb3B0aW9ucy5yZXF1ZXN0ZWQgPz8gMCxcbiAgICBwcm9jZXNzaW5nOiBmYWxzZSxcbiAgICBsb2dnZXI6IG9wdGlvbnMubG9nZ2VyID8/IGxvZ2dlcixcblxuICAgIHdhaXRpbmc6IFtdLFxuXG4gICAgcmVxdWVzdHNBbGxvd2VkOiBmdW5jdGlvbiAoKSB7XG4gICAgICBpZiAoYnVja2V0LnJlc2V0QXQgIT09IHVuZGVmaW5lZCAmJiBEYXRlLm5vdygpID49IGJ1Y2tldC5yZXNldEF0KSB7XG4gICAgICAgIGJ1Y2tldC5pbnZhbGlkUmVxdWVzdHMgPSAwO1xuICAgICAgICBidWNrZXQucmVzZXRBdCA9IERhdGUubm93KCkgKyBidWNrZXQuaW50ZXJ2YWw7XG4gICAgICB9XG5cbiAgICAgIHJldHVybiBidWNrZXQubWF4IC0gYnVja2V0LmludmFsaWRSZXF1ZXN0cyAtIGJ1Y2tldC5hY3RpdmVSZXF1ZXN0cyAtIGJ1Y2tldC5zYWZldHk7XG4gICAgfSxcblxuICAgIGlzUmVxdWVzdEFsbG93ZWQ6IGZ1bmN0aW9uICgpIHtcbiAgICAgIHJldHVybiBidWNrZXQucmVxdWVzdHNBbGxvd2VkKCkgPiAwO1xuICAgIH0sXG5cbiAgICB3YWl0VW50aWxSZXF1ZXN0QXZhaWxhYmxlOiBhc3luYyBmdW5jdGlvbiAoKSB7XG4gICAgICByZXR1cm4gYXdhaXQgbmV3IFByb21pc2UoYXN5bmMgKHJlc29sdmUpID0+IHtcbiAgICAgICAgLy8gSWYgd2hhdGV2ZXIgYW1vdW50IG9mIHJlcXVlc3RzIGlzIGxlZnQgaXMgbW9yZSB0aGFuIHRoZSBzYWZldHkgbWFyZ2luLCBhbGxvdyB0aGUgcmVxdWVzdFxuICAgICAgICBpZiAoYnVja2V0LmlzUmVxdWVzdEFsbG93ZWQoKSkge1xuICAgICAgICAgIGJ1Y2tldC5hY3RpdmVSZXF1ZXN0cyArPSAxO1xuICAgICAgICAgIHJlc29sdmUoKTtcbiAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICBidWNrZXQud2FpdGluZy5wdXNoKHJlc29sdmUpO1xuICAgICAgICAgIGF3YWl0IGJ1Y2tldC5wcm9jZXNzV2FpdGluZygpO1xuICAgICAgICB9XG4gICAgICB9KTtcbiAgICB9LFxuXG4gICAgcHJvY2Vzc1dhaXRpbmc6IGFzeW5jIGZ1bmN0aW9uICgpIHtcbiAgICAgIC8vIElmIGFscmVhZHkgcHJvY2Vzc2luZywgdGhhdCBsb29wIHdpbGwgaGFuZGxlIGFsbCB3YWl0aW5nIHJlcXVlc3RzLlxuICAgICAgaWYgKGJ1Y2tldC5wcm9jZXNzaW5nKSByZXR1cm47XG5cbiAgICAgIC8vIE1hcmsgYXMgcHJvY2Vzc2luZyBzbyBvdGhlciBsb29wcyBkb24ndCBzdGFydFxuICAgICAgYnVja2V0LnByb2Nlc3NpbmcgPSB0cnVlO1xuXG4gICAgICB3aGlsZSAoYnVja2V0LndhaXRpbmcubGVuZ3RoID4gMCkge1xuICAgICAgICBidWNrZXQubG9nZ2VyLmluZm8oXG4gICAgICAgICAgYFtJbnZhbGlkQnVja2V0XSBwcm9jZXNzaW5nIHdhaXRpbmcgcXVldWUgd2hpbGUgbG9vcCByYW4gd2l0aCAke2J1Y2tldC53YWl0aW5nLmxlbmd0aH0gcGVuZGluZyByZXF1ZXN0cyB0byBiZSBtYWRlLiAke0pTT04uc3RyaW5naWZ5KFxuICAgICAgICAgICAgYnVja2V0LFxuICAgICAgICAgICl9YCxcbiAgICAgICAgKTtcblxuICAgICAgICBpZiAoIWJ1Y2tldC5pc1JlcXVlc3RBbGxvd2VkKCkgJiYgYnVja2V0LnJlc2V0QXQgIT09IHVuZGVmaW5lZCkge1xuICAgICAgICAgIGJ1Y2tldC5sb2dnZXIud2FybihcbiAgICAgICAgICAgIGBbSW52YWxpZEJ1Y2tldF0gcHJvY2Vzc2luZyB3YWl0aW5nIHF1ZXVlIGlzIG5vdyBwYXVzZWQgdW50aWwgbW9yZSByZXF1ZXN0cyBhcmUgYXZhaWxhYmxlLiAke1xuICAgICAgICAgICAgICBidWNrZXQud2FpdGluZy5sZW5ndGhcbiAgICAgICAgICAgIH0gcGVuZGluZyByZXF1ZXN0cy4gJHtKU09OLnN0cmluZ2lmeShidWNrZXQpfWAsXG4gICAgICAgICAgKTtcbiAgICAgICAgICBhd2FpdCBkZWxheShidWNrZXQucmVzZXRBdCAtIERhdGUubm93KCkpO1xuICAgICAgICB9XG5cbiAgICAgICAgYnVja2V0LmFjdGl2ZVJlcXVlc3RzICs9IDE7XG4gICAgICAgIC8vIFJlc29sdmUgdGhlIG5leHQgaXRlbSBpbiB0aGUgcXVldWVcbiAgICAgICAgYnVja2V0LndhaXRpbmcuc2hpZnQoKT8uKCk7XG4gICAgICB9XG5cbiAgICAgIC8vIE1hcmsgYXMgZmFsc2Ugc28gbmV4dCBwZW5kaW5nIHJlcXVlc3QgY2FuIGJlIHRyaWdnZXJlZCBieSBuZXcgbG9vcC5cbiAgICAgIGJ1Y2tldC5wcm9jZXNzaW5nID0gZmFsc2U7XG4gICAgfSxcblxuICAgIGhhbmRsZUNvbXBsZXRlZFJlcXVlc3Q6IGZ1bmN0aW9uIChjb2RlLCBzaGFyZWRTY29wZSkge1xuICAgICAgLy8gU2luY2UgcmVxdWVzdCBpcyBjb21wbGV0ZSwgd2UgY2FuIHJlbW92ZSBvbmUgZnJvbSByZXF1ZXN0ZWQuXG4gICAgICBidWNrZXQuYWN0aXZlUmVxdWVzdHMgLT0gMTtcbiAgICAgIC8vIFNpbmNlIGl0IGlzIGFzIGEgdmFsaWQgcmVxdWVzdCwgd2UgZG9uJ3QgbmVlZCB0byBkbyBhbnl0aGluZ1xuICAgICAgaWYgKCFidWNrZXQuZXJyb3JTdGF0dXNlcy5pbmNsdWRlcyhjb2RlKSkgcmV0dXJuO1xuICAgICAgLy8gU2hhcmVkIHNjb3BlIGlzIG5vdCBjb25zaWRlcmVkIGludmFsaWRcbiAgICAgIGlmIChjb2RlID09PSA0MjkgJiYgc2hhcmVkU2NvcGUpIHJldHVybjtcblxuICAgICAgLy8gSU5WQUxJRCBSRVFVRVNUIFdBUyBNQURFXG4gICAgICBpZiAoYnVja2V0LnJlc2V0QXQgPT09IHVuZGVmaW5lZCkge1xuICAgICAgICBidWNrZXQucmVzZXRBdCA9IERhdGUubm93KCkgKyBidWNrZXQuaW50ZXJ2YWw7XG4gICAgICB9XG5cbiAgICAgIGJ1Y2tldC5pbnZhbGlkUmVxdWVzdHMgKz0gMTtcbiAgICAgIGJ1Y2tldC5sb2dnZXIud2FybihgW0ludmFsaWRCdWNrZXRdIGFuIGludmFsaWQgcmVxdWVzdCB3YXMgbWFkZS4gSW5jcmVhc2luZyBpbnZhbGlkUmVxdWVzdHMgY291bnQgdG8gJHtidWNrZXQuaW52YWxpZFJlcXVlc3RzfWApO1xuICAgIH0sXG4gIH07XG5cbiAgcmV0dXJuIGJ1Y2tldDtcbn1cblxuZXhwb3J0IGludGVyZmFjZSBJbnZhbGlkUmVxdWVzdEJ1Y2tldE9wdGlvbnMge1xuICAvKiogY3VycmVudCBpbnZhbGlkIGFtb3VudCAqL1xuICBjdXJyZW50PzogbnVtYmVyO1xuICAvKiogbWF4IGludmFsaWQgcmVxdWVzdHMgYWxsb3dlZCB1bnRpbCBiYW4uIERlZmF1bHRzIHRvIDEwLDAwMCAqL1xuICBtYXg/OiBudW1iZXI7XG4gIC8qKiBUaGUgdGltZSB0aGF0IGRpc2NvcmQgYWxsb3dzIHRvIG1ha2UgdGhlIG1heCBudW1iZXIgb2YgaW52YWxpZCByZXF1ZXN0cy4gRGVmYXVsdHMgdG8gMTAgbWludXRlcyAqL1xuICBpbnRlcnZhbD86IG51bWJlcjtcbiAgLyoqIFdoZW4gdGhlIHRpbWVvdXQgZm9yIHRoZSBidWNrZXQgaGFzIHN0YXJ0ZWQgYXQuICovXG4gIHJlc2V0QXQ/OiBudW1iZXI7XG4gIC8qKiBob3cgc2FmZSB0byBiZSBmcm9tIG1heC4gRGVmYXVsdHMgdG8gMSAqL1xuICBzYWZldHk/OiBudW1iZXI7XG4gIC8qKiBUaGUgcmVxdWVzdCBzdGF0dXNlcyB0aGF0IGNvdW50IGFzIGFuIGludmFsaWQgcmVxdWVzdC4gKi9cbiAgZXJyb3JTdGF0dXNlcz86IG51bWJlcltdO1xuICAvKiogVGhlIGFtb3VudCBvZiByZXF1ZXN0cyB0aGF0IHdlcmUgcmVxdWVzdGVkIGZyb20gdGhpcyBidWNrZXQuICovXG4gIHJlcXVlc3RlZD86IG51bWJlcjtcbiAgLyoqIFRoZSBsb2dnZXIgdGhhdCB3aWxsIGJlIHVzZWQgZm9yIHRoZSBidWNrZXQgKi9cbiAgbG9nZ2VyPzogUGljazx0eXBlb2YgbG9nZ2VyLCAnZGVidWcnIHwgJ2luZm8nIHwgJ3dhcm4nIHwgJ2Vycm9yJyB8ICdmYXRhbCc+O1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIEludmFsaWRSZXF1ZXN0QnVja2V0IHtcbiAgLyoqIGN1cnJlbnQgaW52YWxpZCBhbW91bnQgKi9cbiAgaW52YWxpZFJlcXVlc3RzOiBudW1iZXI7XG4gIC8qKiBtYXggaW52YWxpZCByZXF1ZXN0cyBhbGxvd2VkIHVudGlsIGJhbi4gRGVmYXVsdHMgdG8gMTAsMDAwICovXG4gIG1heDogbnVtYmVyO1xuICAvKiogVGhlIHRpbWUgdGhhdCBkaXNjb3JkIGFsbG93cyB0byBtYWtlIHRoZSBtYXggbnVtYmVyIG9mIGludmFsaWQgcmVxdWVzdHMuIERlZmF1bHRzIHRvIDEwIG1pbnV0ZXMgKi9cbiAgaW50ZXJ2YWw6IG51bWJlcjtcbiAgLyoqIFdoZW4gdGhlIHRpbWVvdXQgZm9yIHRoaXMgYnVja2V0IGhhcyBzdGFydGVkIGF0LiAqL1xuICByZXNldEF0OiBudW1iZXIgfCB1bmRlZmluZWQ7XG4gIC8qKiBob3cgc2FmZSB0byBiZSBmcm9tIG1heC4gRGVmYXVsdHMgdG8gMSAqL1xuICBzYWZldHk6IG51bWJlcjtcbiAgLyoqIFRoZSByZXF1ZXN0IHN0YXR1c2VzIHRoYXQgY291bnQgYXMgYW4gaW52YWxpZCByZXF1ZXN0LiAqL1xuICBlcnJvclN0YXR1c2VzOiBudW1iZXJbXTtcbiAgLyoqIFRoZSBhbW91bnQgb2YgcmVxdWVzdHMgdGhhdCB3ZXJlIHJlcXVlc3RlZCBmcm9tIHRoaXMgYnVja2V0LiAqL1xuICBhY3RpdmVSZXF1ZXN0czogbnVtYmVyO1xuICAvKiogVGhlIHJlcXVlc3RzIHRoYXQgYXJlIGN1cnJlbnRseSBwZW5kaW5nLiAqL1xuICB3YWl0aW5nOiBBcnJheTwodmFsdWU6IHZvaWQgfCBQcm9taXNlTGlrZTx2b2lkPikgPT4gdm9pZD47XG4gIC8qKiBXaGV0aGVyIG9yIG5vdCB0aGUgd2FpdGluZyBxdWV1ZSBpcyBhbHJlYWR5IHByb2Nlc3NpbmcuICovXG4gIHByb2Nlc3Npbmc6IGJvb2xlYW47XG4gIC8qKiBUaGUgbG9nZ2VyIHRoYXQgd2lsbCBiZSB1c2VkIGZvciB0aGUgYnVja2V0ICovXG4gIGxvZ2dlcjogUGljazx0eXBlb2YgbG9nZ2VyLCAnZGVidWcnIHwgJ2luZm8nIHwgJ3dhcm4nIHwgJ2Vycm9yJyB8ICdmYXRhbCc+O1xuXG4gIC8qKiBHaXZlcyB0aGUgbnVtYmVyIG9mIHJlcXVlc3RzIHRoYXQgYXJlIGN1cnJlbnRseSBhbGxvd2VkLiAqL1xuICByZXF1ZXN0c0FsbG93ZWQ6ICgpID0+IG51bWJlcjtcbiAgLyoqIENoZWNrcyBpZiBhIHJlcXVlc3QgaXMgYWxsb3dlZCBhdCB0aGlzIHRpbWUuICovXG4gIGlzUmVxdWVzdEFsbG93ZWQ6ICgpID0+IGJvb2xlYW47XG4gIC8qKiBXYWl0cyB1bnRpbCBhIHJlcXVlc3QgaXMgYXZhaWxhYmxlICovXG4gIHdhaXRVbnRpbFJlcXVlc3RBdmFpbGFibGU6ICgpID0+IFByb21pc2U8dm9pZD47XG4gIC8qKiBCZWdpbnMgcHJvY2Vzc2luZyB0aGUgd2FpdGluZyBxdWV1ZSBvZiByZXF1ZXN0cy4gKi9cbiAgcHJvY2Vzc1dhaXRpbmc6ICgpID0+IFByb21pc2U8dm9pZD47XG4gIC8qKiBIYW5kbGVyIGZvciB3aGVuZXZlciBhIHJlcXVlc3QgaXMgdmFsaWRhdGVkLiBUaGlzIHNob3VsZCB1cGRhdGUgdGhlIHJlcXVlc3RlZCB2YWx1ZXMgb3IgdHJpZ2dlciBhbnkgb3RoZXIgbmVjZXNzYXJ5IHN0dWZmLiAqL1xuICBoYW5kbGVDb21wbGV0ZWRSZXF1ZXN0OiAoY29kZTogbnVtYmVyLCBzaGFyZWRTY29wZTogYm9vbGVhbikgPT4gdm9pZDtcbn1cbiJdLCJuYW1lcyI6WyJkZWxheSIsImxvZ2dlciIsImNyZWF0ZUludmFsaWRSZXF1ZXN0QnVja2V0Iiwib3B0aW9ucyIsImJ1Y2tldCIsImludmFsaWRSZXF1ZXN0cyIsImN1cnJlbnQiLCJtYXgiLCJpbnRlcnZhbCIsInJlc2V0QXQiLCJzYWZldHkiLCJlcnJvclN0YXR1c2VzIiwiYWN0aXZlUmVxdWVzdHMiLCJyZXF1ZXN0ZWQiLCJwcm9jZXNzaW5nIiwid2FpdGluZyIsInJlcXVlc3RzQWxsb3dlZCIsInVuZGVmaW5lZCIsIkRhdGUiLCJub3ciLCJpc1JlcXVlc3RBbGxvd2VkIiwid2FpdFVudGlsUmVxdWVzdEF2YWlsYWJsZSIsIlByb21pc2UiLCJyZXNvbHZlIiwicHVzaCIsInByb2Nlc3NXYWl0aW5nIiwibGVuZ3RoIiwiaW5mbyIsIkpTT04iLCJzdHJpbmdpZnkiLCJ3YXJuIiwic2hpZnQiLCJoYW5kbGVDb21wbGV0ZWRSZXF1ZXN0IiwiY29kZSIsInNoYXJlZFNjb3BlIiwiaW5jbHVkZXMiXSwibWFwcGluZ3MiOiJBQUFBLFNBQVNBLEtBQUssRUFBRUMsTUFBTSxRQUFRLG9CQUFvQjtBQUVsRDs7Ozs7O0NBTUMsR0FDRCxPQUFPLFNBQVNDLDJCQUEyQkMsT0FBb0M7SUFDN0UsTUFBTUMsU0FBK0I7UUFDbkNDLGlCQUFpQkYsUUFBUUcsT0FBTyxJQUFJO1FBQ3BDQyxLQUFLSixRQUFRSSxHQUFHLElBQUk7UUFDcEJDLFVBQVVMLFFBQVFLLFFBQVEsSUFBSTtRQUM5QkMsU0FBU04sUUFBUU0sT0FBTztRQUN4QkMsUUFBUVAsUUFBUU8sTUFBTSxJQUFJO1FBQzFCQyxlQUFlUixRQUFRUSxhQUFhLElBQUk7WUFBQztZQUFLO1lBQUs7U0FBSTtRQUN2REMsZ0JBQWdCVCxRQUFRVSxTQUFTLElBQUk7UUFDckNDLFlBQVk7UUFDWmIsUUFBUUUsUUFBUUYsTUFBTSxJQUFJQTtRQUUxQmMsU0FBUyxFQUFFO1FBRVhDLGlCQUFpQjtZQUNmLElBQUlaLE9BQU9LLE9BQU8sS0FBS1EsYUFBYUMsS0FBS0MsR0FBRyxNQUFNZixPQUFPSyxPQUFPLEVBQUU7Z0JBQ2hFTCxPQUFPQyxlQUFlLEdBQUc7Z0JBQ3pCRCxPQUFPSyxPQUFPLEdBQUdTLEtBQUtDLEdBQUcsS0FBS2YsT0FBT0ksUUFBUTtZQUMvQztZQUVBLE9BQU9KLE9BQU9HLEdBQUcsR0FBR0gsT0FBT0MsZUFBZSxHQUFHRCxPQUFPUSxjQUFjLEdBQUdSLE9BQU9NLE1BQU07UUFDcEY7UUFFQVUsa0JBQWtCO1lBQ2hCLE9BQU9oQixPQUFPWSxlQUFlLEtBQUs7UUFDcEM7UUFFQUssMkJBQTJCO1lBQ3pCLE9BQU8sTUFBTSxJQUFJQyxRQUFRLE9BQU9DO2dCQUM5QiwyRkFBMkY7Z0JBQzNGLElBQUluQixPQUFPZ0IsZ0JBQWdCLElBQUk7b0JBQzdCaEIsT0FBT1EsY0FBYyxJQUFJO29CQUN6Qlc7Z0JBQ0YsT0FBTztvQkFDTG5CLE9BQU9XLE9BQU8sQ0FBQ1MsSUFBSSxDQUFDRDtvQkFDcEIsTUFBTW5CLE9BQU9xQixjQUFjO2dCQUM3QjtZQUNGO1FBQ0Y7UUFFQUEsZ0JBQWdCO1lBQ2QscUVBQXFFO1lBQ3JFLElBQUlyQixPQUFPVSxVQUFVLEVBQUU7WUFFdkIsZ0RBQWdEO1lBQ2hEVixPQUFPVSxVQUFVLEdBQUc7WUFFcEIsTUFBT1YsT0FBT1csT0FBTyxDQUFDVyxNQUFNLEdBQUcsRUFBRztnQkFDaEN0QixPQUFPSCxNQUFNLENBQUMwQixJQUFJLENBQ2hCLENBQUMsNkRBQTZELEVBQUV2QixPQUFPVyxPQUFPLENBQUNXLE1BQU0sQ0FBQyw4QkFBOEIsRUFBRUUsS0FBS0MsU0FBUyxDQUNsSXpCLFNBQ0M7Z0JBR0wsSUFBSSxDQUFDQSxPQUFPZ0IsZ0JBQWdCLE1BQU1oQixPQUFPSyxPQUFPLEtBQUtRLFdBQVc7b0JBQzlEYixPQUFPSCxNQUFNLENBQUM2QixJQUFJLENBQ2hCLENBQUMsMEZBQTBGLEVBQ3pGMUIsT0FBT1csT0FBTyxDQUFDVyxNQUFNLENBQ3RCLG1CQUFtQixFQUFFRSxLQUFLQyxTQUFTLENBQUN6QixTQUFTO29CQUVoRCxNQUFNSixNQUFNSSxPQUFPSyxPQUFPLEdBQUdTLEtBQUtDLEdBQUc7Z0JBQ3ZDO2dCQUVBZixPQUFPUSxjQUFjLElBQUk7Z0JBQ3pCLHFDQUFxQztnQkFDckNSLE9BQU9XLE9BQU8sQ0FBQ2dCLEtBQUs7WUFDdEI7WUFFQSxzRUFBc0U7WUFDdEUzQixPQUFPVSxVQUFVLEdBQUc7UUFDdEI7UUFFQWtCLHdCQUF3QixTQUFVQyxJQUFJLEVBQUVDLFdBQVc7WUFDakQsK0RBQStEO1lBQy9EOUIsT0FBT1EsY0FBYyxJQUFJO1lBQ3pCLCtEQUErRDtZQUMvRCxJQUFJLENBQUNSLE9BQU9PLGFBQWEsQ0FBQ3dCLFFBQVEsQ0FBQ0YsT0FBTztZQUMxQyx5Q0FBeUM7WUFDekMsSUFBSUEsU0FBUyxPQUFPQyxhQUFhO1lBRWpDLDJCQUEyQjtZQUMzQixJQUFJOUIsT0FBT0ssT0FBTyxLQUFLUSxXQUFXO2dCQUNoQ2IsT0FBT0ssT0FBTyxHQUFHUyxLQUFLQyxHQUFHLEtBQUtmLE9BQU9JLFFBQVE7WUFDL0M7WUFFQUosT0FBT0MsZUFBZSxJQUFJO1lBQzFCRCxPQUFPSCxNQUFNLENBQUM2QixJQUFJLENBQUMsQ0FBQyxpRkFBaUYsRUFBRTFCLE9BQU9DLGVBQWUsRUFBRTtRQUNqSTtJQUNGO0lBRUEsT0FBT0Q7QUFDVCJ9
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"manager.d.ts","sourceRoot":"","sources":["../src/manager.ts"],"names":[],"mappings":"AA4EA,OAAO,KAAK,EAA4B,wBAAwB,EAAsB,WAAW,EAAsB,MAAM,YAAY,CAAC;AAE1I,eAAO,MAAM,mBAAmB,KAAK,CAAC;AACtC,eAAO,MAAM,eAAe,4BAA4B,CAAC;AAEzD,eAAO,MAAM,uBAAuB,uBAAuB,CAAC;AAC5D,eAAO,MAAM,2BAA2B,0BAA0B,CAAC;AACnE,eAAO,MAAM,6BAA6B,4BAA4B,CAAC;AACvE,eAAO,MAAM,wBAAwB,uBAAuB,CAAC;AAC7D,eAAO,MAAM,wBAAwB,uBAAuB,CAAC;AAC7D,eAAO,MAAM,uBAAuB,sBAAsB,CAAC;AAC3D,eAAO,MAAM,uBAAuB,sBAAsB,CAAC;AAE3D,wBAAgB,iBAAiB,CAAC,OAAO,EAAE,wBAAwB,GAAG,WAAW,CAyxDhF"}
|