@discordeno/utils 19.0.0-next.b2f65c2 → 19.0.0-next.b567c13
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/cjs/Collection.cjs +121 -0
- package/dist/cjs/base64.cjs +272 -0
- package/dist/cjs/bucket.cjs +93 -0
- package/dist/cjs/builders/embeds.cjs +290 -0
- package/dist/cjs/builders.cjs +23 -0
- package/dist/cjs/casing.cjs +67 -0
- package/dist/cjs/colors.cjs +360 -0
- package/dist/cjs/hash.cjs +33 -0
- package/dist/cjs/images.cjs +47 -0
- package/dist/cjs/index.cjs +33 -0
- package/dist/cjs/logger.cjs +147 -0
- package/dist/cjs/oauth2.cjs +24 -0
- package/dist/cjs/permissions.cjs +31 -0
- package/dist/cjs/reactions.cjs +19 -0
- package/dist/cjs/token.cjs +35 -0
- package/dist/cjs/typeguards.cjs +35 -0
- package/dist/cjs/urlToBase64.cjs +17 -0
- package/dist/cjs/utils.cjs +26 -0
- package/dist/esm/Collection.js +113 -0
- package/dist/esm/base64.js +262 -0
- package/dist/esm/bucket.js +80 -0
- package/dist/esm/builders/embeds.js +295 -0
- package/dist/esm/builders.js +5 -0
- package/dist/esm/casing.js +51 -0
- package/dist/esm/colors.js +467 -0
- package/dist/esm/hash.js +19 -0
- package/dist/esm/images.js +66 -0
- package/dist/esm/index.js +18 -0
- package/dist/esm/logger.js +130 -0
- package/dist/esm/oauth2.js +16 -0
- package/dist/esm/permissions.js +17 -0
- package/dist/esm/reactions.js +11 -0
- package/dist/esm/token.js +21 -0
- package/dist/esm/typeguards.js +18 -0
- package/dist/esm/urlToBase64.js +9 -0
- package/dist/esm/utils.js +15 -0
- package/dist/types/Collection.d.ts.map +1 -0
- package/dist/types/base64.d.ts.map +1 -0
- package/dist/{bucket.d.ts → types/bucket.d.ts} +1 -1
- package/dist/types/bucket.d.ts.map +1 -0
- package/dist/types/builders/embeds.d.ts +146 -0
- package/dist/types/builders/embeds.d.ts.map +1 -0
- package/dist/types/builders.d.ts +4 -0
- package/dist/types/builders.d.ts.map +1 -0
- package/dist/types/casing.d.ts.map +1 -0
- package/dist/types/colors.d.ts.map +1 -0
- package/dist/types/hash.d.ts.map +1 -0
- package/dist/types/images.d.ts.map +1 -0
- package/dist/{index.d.ts → types/index.d.ts} +3 -1
- package/dist/types/index.d.ts.map +1 -0
- package/dist/types/logger.d.ts.map +1 -0
- package/dist/types/oauth2.d.ts +58 -0
- package/dist/types/oauth2.d.ts.map +1 -0
- package/dist/types/permissions.d.ts.map +1 -0
- package/dist/types/reactions.d.ts.map +1 -0
- package/dist/{token.d.ts → types/token.d.ts} +1 -1
- package/dist/types/token.d.ts.map +1 -0
- package/dist/{typeguards.d.ts → types/typeguards.d.ts} +2 -1
- package/dist/types/typeguards.d.ts.map +1 -0
- package/dist/types/urlToBase64.d.ts.map +1 -0
- package/dist/types/utils.d.ts.map +1 -0
- package/package.json +12 -6
- package/dist/Collection.d.ts.map +0 -1
- package/dist/Collection.js +0 -113
- package/dist/Collection.js.map +0 -1
- package/dist/base64.d.ts.map +0 -1
- package/dist/base64.js +0 -262
- package/dist/base64.js.map +0 -1
- package/dist/bucket.d.ts.map +0 -1
- package/dist/bucket.js +0 -76
- package/dist/bucket.js.map +0 -1
- package/dist/casing.d.ts.map +0 -1
- package/dist/casing.js +0 -51
- package/dist/casing.js.map +0 -1
- package/dist/colors.d.ts.map +0 -1
- package/dist/colors.js +0 -467
- package/dist/colors.js.map +0 -1
- package/dist/hash.d.ts.map +0 -1
- package/dist/hash.js +0 -19
- package/dist/hash.js.map +0 -1
- package/dist/images.d.ts.map +0 -1
- package/dist/images.js +0 -66
- package/dist/images.js.map +0 -1
- package/dist/index.d.ts.map +0 -1
- package/dist/index.js +0 -16
- package/dist/index.js.map +0 -1
- package/dist/interactions.d.ts +0 -3
- package/dist/interactions.d.ts.map +0 -1
- package/dist/interactions.js +0 -41
- package/dist/interactions.js.map +0 -1
- package/dist/logger.d.ts.map +0 -1
- package/dist/logger.js +0 -130
- package/dist/logger.js.map +0 -1
- package/dist/permissions.d.ts.map +0 -1
- package/dist/permissions.js +0 -17
- package/dist/permissions.js.map +0 -1
- package/dist/reactions.d.ts.map +0 -1
- package/dist/reactions.js +0 -11
- package/dist/reactions.js.map +0 -1
- package/dist/token.d.ts.map +0 -1
- package/dist/token.js +0 -16
- package/dist/token.js.map +0 -1
- package/dist/typeguards.d.ts.map +0 -1
- package/dist/typeguards.js +0 -15
- package/dist/typeguards.js.map +0 -1
- package/dist/urlToBase64.d.ts.map +0 -1
- package/dist/urlToBase64.js +0 -9
- package/dist/urlToBase64.js.map +0 -1
- package/dist/utils.d.ts.map +0 -1
- package/dist/utils.js +0 -15
- package/dist/utils.js.map +0 -1
- /package/dist/{Collection.d.ts → types/Collection.d.ts} +0 -0
- /package/dist/{base64.d.ts → types/base64.d.ts} +0 -0
- /package/dist/{casing.d.ts → types/casing.d.ts} +0 -0
- /package/dist/{colors.d.ts → types/colors.d.ts} +0 -0
- /package/dist/{hash.d.ts → types/hash.d.ts} +0 -0
- /package/dist/{images.d.ts → types/images.d.ts} +0 -0
- /package/dist/{logger.d.ts → types/logger.d.ts} +0 -0
- /package/dist/{permissions.d.ts → types/permissions.d.ts} +0 -0
- /package/dist/{reactions.d.ts → types/reactions.d.ts} +0 -0
- /package/dist/{urlToBase64.d.ts → types/urlToBase64.d.ts} +0 -0
- /package/dist/{utils.d.ts → types/utils.d.ts} +0 -0
|
@@ -0,0 +1,147 @@
|
|
|
1
|
+
/* eslint-disable @typescript-eslint/no-confusing-void-expression */ /* eslint-disable @typescript-eslint/explicit-function-return-type */ "use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", {
|
|
3
|
+
value: true
|
|
4
|
+
});
|
|
5
|
+
function _export(target, all) {
|
|
6
|
+
for(var name in all)Object.defineProperty(target, name, {
|
|
7
|
+
enumerable: true,
|
|
8
|
+
get: all[name]
|
|
9
|
+
});
|
|
10
|
+
}
|
|
11
|
+
_export(exports, {
|
|
12
|
+
LogLevels: ()=>LogLevels,
|
|
13
|
+
LogDepth: ()=>LogDepth,
|
|
14
|
+
createLogger: ()=>createLogger,
|
|
15
|
+
logger: ()=>logger,
|
|
16
|
+
default: ()=>_default
|
|
17
|
+
});
|
|
18
|
+
const _colorsJs = require("./colors.cjs");
|
|
19
|
+
var LogLevels;
|
|
20
|
+
(function(LogLevels) {
|
|
21
|
+
LogLevels[LogLevels["Debug"] = 0] = "Debug";
|
|
22
|
+
LogLevels[LogLevels["Info"] = 1] = "Info";
|
|
23
|
+
LogLevels[LogLevels["Warn"] = 2] = "Warn";
|
|
24
|
+
LogLevels[LogLevels["Error"] = 3] = "Error";
|
|
25
|
+
LogLevels[LogLevels["Fatal"] = 4] = "Fatal";
|
|
26
|
+
})(LogLevels || (LogLevels = {}));
|
|
27
|
+
var LogDepth;
|
|
28
|
+
(function(LogDepth) {
|
|
29
|
+
LogDepth[LogDepth["Minimal"] = 0] = "Minimal";
|
|
30
|
+
LogDepth[LogDepth["Full"] = 1] = "Full";
|
|
31
|
+
})(LogDepth || (LogDepth = {}));
|
|
32
|
+
const prefixes = new Map([
|
|
33
|
+
[
|
|
34
|
+
0,
|
|
35
|
+
'DEBUG'
|
|
36
|
+
],
|
|
37
|
+
[
|
|
38
|
+
1,
|
|
39
|
+
'INFO'
|
|
40
|
+
],
|
|
41
|
+
[
|
|
42
|
+
2,
|
|
43
|
+
'WARN'
|
|
44
|
+
],
|
|
45
|
+
[
|
|
46
|
+
3,
|
|
47
|
+
'ERROR'
|
|
48
|
+
],
|
|
49
|
+
[
|
|
50
|
+
4,
|
|
51
|
+
'FATAL'
|
|
52
|
+
]
|
|
53
|
+
]);
|
|
54
|
+
const noColor = (msg)=>msg;
|
|
55
|
+
const colorFunctions = new Map([
|
|
56
|
+
[
|
|
57
|
+
0,
|
|
58
|
+
_colorsJs.gray
|
|
59
|
+
],
|
|
60
|
+
[
|
|
61
|
+
1,
|
|
62
|
+
_colorsJs.cyan
|
|
63
|
+
],
|
|
64
|
+
[
|
|
65
|
+
2,
|
|
66
|
+
_colorsJs.yellow
|
|
67
|
+
],
|
|
68
|
+
[
|
|
69
|
+
3,
|
|
70
|
+
(str)=>(0, _colorsJs.red)(str)
|
|
71
|
+
],
|
|
72
|
+
[
|
|
73
|
+
4,
|
|
74
|
+
(str)=>(0, _colorsJs.red)((0, _colorsJs.bold)((0, _colorsJs.italic)(str)))
|
|
75
|
+
]
|
|
76
|
+
]);
|
|
77
|
+
function createLogger({ logLevel =1 , name } = {}) {
|
|
78
|
+
let depth = 0;
|
|
79
|
+
function log(level, ...args) {
|
|
80
|
+
if (level < logLevel) return;
|
|
81
|
+
let color = colorFunctions.get(level);
|
|
82
|
+
if (!color) color = noColor;
|
|
83
|
+
const date = new Date();
|
|
84
|
+
const log1 = [
|
|
85
|
+
(0, _colorsJs.bgBrightMagenta)((0, _colorsJs.black)(`[${date.toLocaleDateString()} ${date.toLocaleTimeString()}]`)),
|
|
86
|
+
color(prefixes.get(level) ?? 'DEBUG'),
|
|
87
|
+
name ? `${name} >` : '>',
|
|
88
|
+
...args
|
|
89
|
+
];
|
|
90
|
+
switch(level){
|
|
91
|
+
case 0:
|
|
92
|
+
return console.debug(...log1);
|
|
93
|
+
case 1:
|
|
94
|
+
return console.info(...log1);
|
|
95
|
+
case 2:
|
|
96
|
+
return console.warn(...log1);
|
|
97
|
+
case 3:
|
|
98
|
+
return console.error(...log1);
|
|
99
|
+
case 4:
|
|
100
|
+
return console.error(...log1);
|
|
101
|
+
default:
|
|
102
|
+
return console.log(...log1);
|
|
103
|
+
}
|
|
104
|
+
}
|
|
105
|
+
function setLevel(level) {
|
|
106
|
+
logLevel = level;
|
|
107
|
+
}
|
|
108
|
+
function setDepth(level) {
|
|
109
|
+
depth = level;
|
|
110
|
+
}
|
|
111
|
+
function debug(...args) {
|
|
112
|
+
if (0 === depth) log(0, args[0]);
|
|
113
|
+
else log(0, ...args);
|
|
114
|
+
}
|
|
115
|
+
function info(...args) {
|
|
116
|
+
if (0 === depth) log(1, args[0]);
|
|
117
|
+
else log(1, ...args);
|
|
118
|
+
}
|
|
119
|
+
function warn(...args) {
|
|
120
|
+
if (0 === depth) log(2, args[0]);
|
|
121
|
+
else log(2, ...args);
|
|
122
|
+
}
|
|
123
|
+
function error(...args) {
|
|
124
|
+
if (0 === depth) log(3, args[0]);
|
|
125
|
+
else log(3, ...args);
|
|
126
|
+
}
|
|
127
|
+
function fatal(...args) {
|
|
128
|
+
if (0 === depth) log(4, args[0]);
|
|
129
|
+
else log(4, ...args);
|
|
130
|
+
}
|
|
131
|
+
return {
|
|
132
|
+
log,
|
|
133
|
+
setDepth,
|
|
134
|
+
setLevel,
|
|
135
|
+
debug,
|
|
136
|
+
info,
|
|
137
|
+
warn,
|
|
138
|
+
error,
|
|
139
|
+
fatal
|
|
140
|
+
};
|
|
141
|
+
}
|
|
142
|
+
const logger = createLogger({
|
|
143
|
+
name: 'Discordeno'
|
|
144
|
+
});
|
|
145
|
+
const _default = logger;
|
|
146
|
+
|
|
147
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9sb2dnZXIudHMiXSwic291cmNlc0NvbnRlbnQiOlsiLyogZXNsaW50LWRpc2FibGUgQHR5cGVzY3JpcHQtZXNsaW50L25vLWNvbmZ1c2luZy12b2lkLWV4cHJlc3Npb24gKi9cbi8qIGVzbGludC1kaXNhYmxlIEB0eXBlc2NyaXB0LWVzbGludC9leHBsaWNpdC1mdW5jdGlvbi1yZXR1cm4tdHlwZSAqL1xuaW1wb3J0IHsgYmdCcmlnaHRNYWdlbnRhLCBibGFjaywgYm9sZCwgY3lhbiwgZ3JheSwgaXRhbGljLCByZWQsIHllbGxvdyB9IGZyb20gJy4vY29sb3JzLmpzJ1xuXG5leHBvcnQgZW51bSBMb2dMZXZlbHMge1xuICBEZWJ1ZyxcbiAgSW5mbyxcbiAgV2FybixcbiAgRXJyb3IsXG4gIEZhdGFsLFxufVxuXG5leHBvcnQgZW51bSBMb2dEZXB0aCB7XG4gIE1pbmltYWwsXG4gIEZ1bGwsXG59XG5cbmNvbnN0IHByZWZpeGVzID0gbmV3IE1hcDxMb2dMZXZlbHMsIHN0cmluZz4oW1xuICBbTG9nTGV2ZWxzLkRlYnVnLCAnREVCVUcnXSxcbiAgW0xvZ0xldmVscy5JbmZvLCAnSU5GTyddLFxuICBbTG9nTGV2ZWxzLldhcm4sICdXQVJOJ10sXG4gIFtMb2dMZXZlbHMuRXJyb3IsICdFUlJPUiddLFxuICBbTG9nTGV2ZWxzLkZhdGFsLCAnRkFUQUwnXSxcbl0pXG5cbmNvbnN0IG5vQ29sb3I6IChzdHI6IHN0cmluZykgPT4gc3RyaW5nID0gKG1zZykgPT4gbXNnXG5jb25zdCBjb2xvckZ1bmN0aW9ucyA9IG5ldyBNYXA8TG9nTGV2ZWxzLCAoc3RyOiBzdHJpbmcpID0+IHN0cmluZz4oW1xuICBbTG9nTGV2ZWxzLkRlYnVnLCBncmF5XSxcbiAgW0xvZ0xldmVscy5JbmZvLCBjeWFuXSxcbiAgW0xvZ0xldmVscy5XYXJuLCB5ZWxsb3ddLFxuICBbTG9nTGV2ZWxzLkVycm9yLCAoc3RyOiBzdHJpbmcpID0+IHJlZChzdHIpXSxcbiAgW0xvZ0xldmVscy5GYXRhbCwgKHN0cjogc3RyaW5nKSA9PiByZWQoYm9sZChpdGFsaWMoc3RyKSkpXSxcbl0pXG5cbmV4cG9ydCBmdW5jdGlvbiBjcmVhdGVMb2dnZXIoe1xuICBsb2dMZXZlbCA9IExvZ0xldmVscy5JbmZvLFxuICBuYW1lLFxufToge1xuICBsb2dMZXZlbD86IExvZ0xldmVsc1xuICBuYW1lPzogc3RyaW5nXG59ID0ge30pIHtcbiAgbGV0IGRlcHRoID0gTG9nRGVwdGguTWluaW1hbFxuXG4gIGZ1bmN0aW9uIGxvZyhsZXZlbDogTG9nTGV2ZWxzLCAuLi5hcmdzOiBhbnlbXSkge1xuICAgIGlmIChsZXZlbCA8IGxvZ0xldmVsKSByZXR1cm5cblxuICAgIGxldCBjb2xvciA9IGNvbG9yRnVuY3Rpb25zLmdldChsZXZlbClcbiAgICBpZiAoIWNvbG9yKSBjb2xvciA9IG5vQ29sb3JcblxuICAgIGNvbnN0IGRhdGUgPSBuZXcgRGF0ZSgpXG4gICAgY29uc3QgbG9nID0gW1xuICAgICAgYmdCcmlnaHRNYWdlbnRhKGJsYWNrKGBbJHtkYXRlLnRvTG9jYWxlRGF0ZVN0cmluZygpfSAke2RhdGUudG9Mb2NhbGVUaW1lU3RyaW5nKCl9XWApKSxcbiAgICAgIGNvbG9yKHByZWZpeGVzLmdldChsZXZlbCkgPz8gJ0RFQlVHJyksXG4gICAgICBuYW1lID8gYCR7bmFtZX0gPmAgOiAnPicsXG4gICAgICAuLi5hcmdzLFxuICAgIF1cblxuICAgIHN3aXRjaCAobGV2ZWwpIHtcbiAgICAgIGNhc2UgTG9nTGV2ZWxzLkRlYnVnOlxuICAgICAgICByZXR1cm4gY29uc29sZS5kZWJ1ZyguLi5sb2cpXG4gICAgICBjYXNlIExvZ0xldmVscy5JbmZvOlxuICAgICAgICByZXR1cm4gY29uc29sZS5pbmZvKC4uLmxvZylcbiAgICAgIGNhc2UgTG9nTGV2ZWxzLldhcm46XG4gICAgICAgIHJldHVybiBjb25zb2xlLndhcm4oLi4ubG9nKVxuICAgICAgY2FzZSBMb2dMZXZlbHMuRXJyb3I6XG4gICAgICAgIHJldHVybiBjb25zb2xlLmVycm9yKC4uLmxvZylcbiAgICAgIGNhc2UgTG9nTGV2ZWxzLkZhdGFsOlxuICAgICAgICByZXR1cm4gY29uc29sZS5lcnJvciguLi5sb2cpXG4gICAgICBkZWZhdWx0OlxuICAgICAgICByZXR1cm4gY29uc29sZS5sb2coLi4ubG9nKVxuICAgIH1cbiAgfVxuXG4gIGZ1bmN0aW9uIHNldExldmVsKGxldmVsOiBMb2dMZXZlbHMpIHtcbiAgICBsb2dMZXZlbCA9IGxldmVsXG4gIH1cblxuICBmdW5jdGlvbiBzZXREZXB0aChsZXZlbDogTG9nRGVwdGgpIHtcbiAgICBkZXB0aCA9IGxldmVsXG4gIH1cblxuICBmdW5jdGlvbiBkZWJ1ZyguLi5hcmdzOiBhbnlbXSkge1xuICAgIGlmIChMb2dEZXB0aC5NaW5pbWFsID09PSBkZXB0aCkgbG9nKExvZ0xldmVscy5EZWJ1ZywgYXJnc1swXSlcbiAgICBlbHNlIGxvZyhMb2dMZXZlbHMuRGVidWcsIC4uLmFyZ3MpXG4gIH1cblxuICBmdW5jdGlvbiBpbmZvKC4uLmFyZ3M6IGFueVtdKSB7XG4gICAgaWYgKExvZ0RlcHRoLk1pbmltYWwgPT09IGRlcHRoKSBsb2coTG9nTGV2ZWxzLkluZm8sIGFyZ3NbMF0pXG4gICAgZWxzZSBsb2coTG9nTGV2ZWxzLkluZm8sIC4uLmFyZ3MpXG4gIH1cblxuICBmdW5jdGlvbiB3YXJuKC4uLmFyZ3M6IGFueVtdKSB7XG4gICAgaWYgKExvZ0RlcHRoLk1pbmltYWwgPT09IGRlcHRoKSBsb2coTG9nTGV2ZWxzLldhcm4sIGFyZ3NbMF0pXG4gICAgZWxzZSBsb2coTG9nTGV2ZWxzLldhcm4sIC4uLmFyZ3MpXG4gIH1cblxuICBmdW5jdGlvbiBlcnJvciguLi5hcmdzOiBhbnlbXSkge1xuICAgIGlmIChMb2dEZXB0aC5NaW5pbWFsID09PSBkZXB0aCkgbG9nKExvZ0xldmVscy5FcnJvciwgYXJnc1swXSlcbiAgICBlbHNlIGxvZyhMb2dMZXZlbHMuRXJyb3IsIC4uLmFyZ3MpXG4gIH1cblxuICBmdW5jdGlvbiBmYXRhbCguLi5hcmdzOiBhbnlbXSkge1xuICAgIGlmIChMb2dEZXB0aC5NaW5pbWFsID09PSBkZXB0aCkgbG9nKExvZ0xldmVscy5GYXRhbCwgYXJnc1swXSlcbiAgICBlbHNlIGxvZyhMb2dMZXZlbHMuRmF0YWwsIC4uLmFyZ3MpXG4gIH1cblxuICByZXR1cm4ge1xuICAgIGxvZyxcbiAgICBzZXREZXB0aCxcbiAgICBzZXRMZXZlbCxcbiAgICBkZWJ1ZyxcbiAgICBpbmZvLFxuICAgIHdhcm4sXG4gICAgZXJyb3IsXG4gICAgZmF0YWwsXG4gIH1cbn1cblxuZXhwb3J0IGNvbnN0IGxvZ2dlciA9IGNyZWF0ZUxvZ2dlcih7IG5hbWU6ICdEaXNjb3JkZW5vJyB9KVxuZXhwb3J0IGRlZmF1bHQgbG9nZ2VyXG4iXSwibmFtZXMiOlsiY3JlYXRlTG9nZ2VyIiwibG9nZ2VyIiwiTG9nTGV2ZWxzIiwiRGVidWciLCJJbmZvIiwiV2FybiIsIkVycm9yIiwiRmF0YWwiLCJMb2dEZXB0aCIsIk1pbmltYWwiLCJGdWxsIiwicHJlZml4ZXMiLCJNYXAiLCJub0NvbG9yIiwibXNnIiwiY29sb3JGdW5jdGlvbnMiLCJncmF5IiwiY3lhbiIsInllbGxvdyIsInN0ciIsInJlZCIsImJvbGQiLCJpdGFsaWMiLCJsb2dMZXZlbCIsIm5hbWUiLCJkZXB0aCIsImxvZyIsImxldmVsIiwiYXJncyIsImNvbG9yIiwiZ2V0IiwiZGF0ZSIsIkRhdGUiLCJiZ0JyaWdodE1hZ2VudGEiLCJibGFjayIsInRvTG9jYWxlRGF0ZVN0cmluZyIsInRvTG9jYWxlVGltZVN0cmluZyIsImNvbnNvbGUiLCJkZWJ1ZyIsImluZm8iLCJ3YXJuIiwiZXJyb3IiLCJzZXRMZXZlbCIsInNldERlcHRoIiwiZmF0YWwiXSwibWFwcGluZ3MiOiJBQUFBLGtFQUFrRSxHQUNsRSxtRUFBbUU7Ozs7Ozs7Ozs7Ozs7SUFpQ25EQSxZQUFZLE1BQVpBO0lBb0ZIQyxNQUFNLE1BQU5BO0lBQ2IsT0FBcUIsTUFBckI7OzBCQXJIOEU7SUFFdkU7VUFBS0MsU0FBUztJQUFU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
|
|
@@ -0,0 +1,24 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", {
|
|
3
|
+
value: true
|
|
4
|
+
});
|
|
5
|
+
Object.defineProperty(exports, "createOAuth2Link", {
|
|
6
|
+
enumerable: true,
|
|
7
|
+
get: ()=>createOAuth2Link
|
|
8
|
+
});
|
|
9
|
+
const _permissionsJs = require("./permissions.cjs");
|
|
10
|
+
function createOAuth2Link(options) {
|
|
11
|
+
const joinedScopeString = options.scope.join(' ');
|
|
12
|
+
let url = `https://discord.com/oauth2/authorize?client_id=${options.clientId}&scope=${joinedScopeString}`;
|
|
13
|
+
if (options.responseType) url += `&response_type=${options.responseType}`;
|
|
14
|
+
if (options.state) url += `&state=${encodeURIComponent(options.state)}`;
|
|
15
|
+
if (options.redirectUri) url += `&redirect_uri=${encodeURIComponent(options.redirectUri)}`;
|
|
16
|
+
if (options.prompt) url += `&prompt=${options.prompt}`;
|
|
17
|
+
if (options.permissions) url += `&permissions=${Array.isArray(options.permissions) ? (0, _permissionsJs.calculateBits)(options.permissions) : options.permissions}`;
|
|
18
|
+
if (options.guildId) url += `&guild_id=${options.guildId}`;
|
|
19
|
+
// eslint-disable-next-line @typescript-eslint/restrict-template-expressions
|
|
20
|
+
if (options.disableGuildSelect !== undefined) url += `&disable_guild_select=${options.disableGuildSelect}`;
|
|
21
|
+
return url;
|
|
22
|
+
}
|
|
23
|
+
|
|
24
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9vYXV0aDIudHMiXSwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHR5cGUgeyBCaWdTdHJpbmcsIE9BdXRoMlNjb3BlLCBQZXJtaXNzaW9uU3RyaW5ncyB9IGZyb20gJ0BkaXNjb3JkZW5vL3R5cGVzJ1xuaW1wb3J0IHsgY2FsY3VsYXRlQml0cyB9IGZyb20gJy4vcGVybWlzc2lvbnMuanMnXG5cbmV4cG9ydCBmdW5jdGlvbiBjcmVhdGVPQXV0aDJMaW5rKG9wdGlvbnM6IENyZWF0ZU9BdXRoMkxpbmtPcHRpb25zKTogc3RyaW5nIHtcbiAgY29uc3Qgam9pbmVkU2NvcGVTdHJpbmcgPSBvcHRpb25zLnNjb3BlLmpvaW4oJyAnKVxuXG4gIGxldCB1cmwgPSBgaHR0cHM6Ly9kaXNjb3JkLmNvbS9vYXV0aDIvYXV0aG9yaXplP2NsaWVudF9pZD0ke29wdGlvbnMuY2xpZW50SWR9JnNjb3BlPSR7am9pbmVkU2NvcGVTdHJpbmd9YFxuXG4gIGlmIChvcHRpb25zLnJlc3BvbnNlVHlwZSkgdXJsICs9IGAmcmVzcG9uc2VfdHlwZT0ke29wdGlvbnMucmVzcG9uc2VUeXBlfWBcbiAgaWYgKG9wdGlvbnMuc3RhdGUpIHVybCArPSBgJnN0YXRlPSR7ZW5jb2RlVVJJQ29tcG9uZW50KG9wdGlvbnMuc3RhdGUpfWBcbiAgaWYgKG9wdGlvbnMucmVkaXJlY3RVcmkpIHVybCArPSBgJnJlZGlyZWN0X3VyaT0ke2VuY29kZVVSSUNvbXBvbmVudChvcHRpb25zLnJlZGlyZWN0VXJpKX1gXG4gIGlmIChvcHRpb25zLnByb21wdCkgdXJsICs9IGAmcHJvbXB0PSR7b3B0aW9ucy5wcm9tcHR9YFxuICBpZiAob3B0aW9ucy5wZXJtaXNzaW9ucykgdXJsICs9IGAmcGVybWlzc2lvbnM9JHtBcnJheS5pc0FycmF5KG9wdGlvbnMucGVybWlzc2lvbnMpID8gY2FsY3VsYXRlQml0cyhvcHRpb25zLnBlcm1pc3Npb25zKSA6IG9wdGlvbnMucGVybWlzc2lvbnN9YFxuICBpZiAob3B0aW9ucy5ndWlsZElkKSB1cmwgKz0gYCZndWlsZF9pZD0ke29wdGlvbnMuZ3VpbGRJZH1gXG4gIC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBAdHlwZXNjcmlwdC1lc2xpbnQvcmVzdHJpY3QtdGVtcGxhdGUtZXhwcmVzc2lvbnNcbiAgaWYgKG9wdGlvbnMuZGlzYWJsZUd1aWxkU2VsZWN0ICE9PSB1bmRlZmluZWQpIHVybCArPSBgJmRpc2FibGVfZ3VpbGRfc2VsZWN0PSR7b3B0aW9ucy5kaXNhYmxlR3VpbGRTZWxlY3R9YFxuXG4gIHJldHVybiB1cmxcbn1cblxuZXhwb3J0IGludGVyZmFjZSBDcmVhdGVPQXV0aDJMaW5rT3B0aW9ucyB7XG4gIC8qKlxuICAgKiBUaGUgdHlwZSBvZiByZXNwb25zZVxuICAgKlxuICAgKiBAcmVtYXJrc1xuICAgKiBTaG91bGQgYmUgZGVmaW5lZCBvbmx5IGlmIHVzaW5nIGVpdGhlciBPQXV0aDIgYXV0aG9yaXphdGlvbiwgaW1wbGljaXQgb3Igbm90LCBvciBbYWR2YW5jZWQgYm90IGF1dGhvcml6YXRpb25dKGh0dHBzOi8vZGlzY29yZC5jb20vZGV2ZWxvcGVycy9kb2NzL3RvcGljcy9vYXV0aDIjYWR2YW5jZWQtYm90LWF1dGhvcml6YXRpb24pXG4gICAqL1xuICByZXNwb25zZVR5cGU/OiAnY29kZScgfCAndG9rZW4nXG4gIC8qKiBUaGUgaWQgb2YgdGhlIGFwcGxpY2F0aW9uICovXG4gIGNsaWVudElkOiBCaWdTdHJpbmdcbiAgLyoqIFRoZSBzY29wZXMgZm9yIHRoZSBhcHBsaWNhdGlvbiAqL1xuICBzY29wZTogT0F1dGgyU2NvcGVbXVxuICAvKipcbiAgICogVGhlIG9wdGlvbmFsIHN0YXRlIGZvciBzZWN1cml0eVxuICAgKlxuICAgKiBAc2VlIGh0dHBzOi8vZGlzY29yZC5jb20vZGV2ZWxvcGVycy9kb2NzL3RvcGljcy9vYXV0aDIjc3RhdGUtYW5kLXNlY3VyaXR5XG4gICAqL1xuICBzdGF0ZT86IHN0cmluZ1xuICAvKipcbiAgICogVGhlIHJlZGlyZWN0IHVyaSBmb3IgYWZ0ZXIgdGhlIGF1dGhlbnRpY2F0aW9uXG4gICAqXG4gICAqIEByZW1hcmtzXG4gICAqIFNob3VsZCBiZSBkZWZpbmVkIG9ubHkgaWYgdXNpbmcgZWl0aGVyIE9BdXRoMiBhdXRob3JpemF0aW9uLCBpbXBsaWNpdCBvciBub3QsIG9yIFthZHZhbmNlZCBib3QgYXV0aG9yaXphdGlvbl0oaHR0cHM6Ly9kaXNjb3JkLmNvbS9kZXZlbG9wZXJzL2RvY3MvdG9waWNzL29hdXRoMiNhZHZhbmNlZC1ib3QtYXV0aG9yaXphdGlvbilcbiAgICovXG4gIHJlZGlyZWN0VXJpPzogc3RyaW5nXG4gIC8qKlxuICAgKiBUaGUgdHlwZSBvZiBwcm9tcHQgdG8gZ2l2ZSB0byB0aGUgdXNlclxuICAgKlxuICAgKiBAcmVtYXJrc1xuICAgKiBJZiBzZXQgdG8gYG5vbmVgLCBpdCB3aWxsIHNraXAgdGhlIGF1dGhvcml6YXRpb24gc2NyZWVuIGFuZCByZWRpcmVjdCB0aGVtIGJhY2sgdG8geW91ciByZWRpcmVjdCBVUkkgd2l0aG91dCByZXF1ZXN0aW5nIHRoZWlyIGF1dGhvcml6YXRpb24uXG4gICAqIEZvciBwYXNzdGhyb3VnaCBzY29wZXMsIGxpa2UgYm90IGFuZCB3ZWJob29rLmluY29taW5nLCBhdXRob3JpemF0aW9uIGlzIGFsd2F5cyByZXF1aXJlZC5cbiAgICovXG4gIHByb21wdD86ICdjb25zZW50JyB8ICdub25lJ1xuICAvKipcbiAgICogVGhlIHBlcm1pc3Npb25zIG9mIHRoZSBpbnZpdGVkIGJvdFxuICAgKlxuICAgKiBAcmVtYXJrc1xuICAgKiBTaG91bGQgYmUgZGVmaW5lZCBvbmx5IGluIGEgW2JvdCBhdXRob3JpemF0aW9uIGZsb3ddKGh0dHBzOi8vZGlzY29yZC5jb20vZGV2ZWxvcGVycy9kb2NzL3RvcGljcy9vYXV0aDIjYm90LWF1dGhvcml6YXRpb24tZmxvdykgb3Igd2l0aCBbYWR2YW5jZWQgYm90IGF1dGhvcml6YXRpb25dKGh0dHBzOi8vZGlzY29yZC5jb20vZGV2ZWxvcGVycy9kb2NzL3RvcGljcy9vYXV0aDIjYWR2YW5jZWQtYm90LWF1dGhvcml6YXRpb24pXG4gICAqL1xuICBwZXJtaXNzaW9ucz86IEJpZ1N0cmluZyB8IFBlcm1pc3Npb25TdHJpbmdzW11cbiAgLyoqXG4gICAqIFByZS1maWxscyB0aGUgZHJvcGRvd24gcGlja2VyIHdpdGggYSBndWlsZCBmb3IgdGhlIHVzZXJcbiAgICpcbiAgICogQHJlbWFya3NcbiAgICogU2hvdWxkIGJlIGRlZmluZWQgb25seSBpbiBhIFtib3QgYXV0aG9yaXphdGlvbiBmbG93XShodHRwczovL2Rpc2NvcmQuY29tL2RldmVsb3BlcnMvZG9jcy90b3BpY3Mvb2F1dGgyI2JvdC1hdXRob3JpemF0aW9uLWZsb3cpIG9yIHdpdGggW2FkdmFuY2VkIGJvdCBhdXRob3JpemF0aW9uXShodHRwczovL2Rpc2NvcmQuY29tL2RldmVsb3BlcnMvZG9jcy90b3BpY3Mvb2F1dGgyI2FkdmFuY2VkLWJvdC1hdXRob3JpemF0aW9uKSBvciB3aXRoIHRoZSBgd2ViaG9vay5pbmNvbWluZ2Agc2NvcGVcbiAgICovXG4gIGd1aWxkSWQ/OiBCaWdTdHJpbmdcbiAgLyoqXG4gICAqIERpc2FsbG93cyB0aGUgdXNlciBmcm9tIGNoYW5naW5nIHRoZSBndWlsZCBkcm9wZG93biBpZiBzZXQgdG8gdHJ1ZVxuICAgKlxuICAgKiBAcmVtYXJrc1xuICAgKiBTaG91bGQgYmUgZGVmaW5lZCBvbmx5IGluIGEgW2JvdCBhdXRob3JpemF0aW9uIGZsb3ddKGh0dHBzOi8vZGlzY29yZC5jb20vZGV2ZWxvcGVycy9kb2NzL3RvcGljcy9vYXV0aDIjYm90LWF1dGhvcml6YXRpb24tZmxvdyksIHdpdGggW2FkdmFuY2VkIGJvdCBhdXRob3JpemF0aW9uXShodHRwczovL2Rpc2NvcmQuY29tL2RldmVsb3BlcnMvZG9jcy90b3BpY3Mvb2F1dGgyI2FkdmFuY2VkLWJvdC1hdXRob3JpemF0aW9uKSBvciB3aXRoIHRoZSBgd2ViaG9vay5pbmNvbWluZ2Agc2NvcGVcbiAgICovXG4gIGRpc2FibGVHdWlsZFNlbGVjdD86IGJvb2xlYW5cbn1cbiJdLCJuYW1lcyI6WyJjcmVhdGVPQXV0aDJMaW5rIiwib3B0aW9ucyIsImpvaW5lZFNjb3BlU3RyaW5nIiwic2NvcGUiLCJqb2luIiwidXJsIiwiY2xpZW50SWQiLCJyZXNwb25zZVR5cGUiLCJzdGF0ZSIsImVuY29kZVVSSUNvbXBvbmVudCIsInJlZGlyZWN0VXJpIiwicHJvbXB0IiwicGVybWlzc2lvbnMiLCJBcnJheSIsImlzQXJyYXkiLCJjYWxjdWxhdGVCaXRzIiwiZ3VpbGRJZCIsImRpc2FibGVHdWlsZFNlbGVjdCIsInVuZGVmaW5lZCJdLCJtYXBwaW5ncyI6Ijs7OzsrQkFHZ0JBOzthQUFBQTs7K0JBRmM7QUFFdkIsU0FBU0EsaUJBQWlCQyxPQUFnQyxFQUFVO0lBQ3pFLE1BQU1DLG9CQUFvQkQsUUFBUUUsS0FBSyxDQUFDQyxJQUFJLENBQUM7SUFFN0MsSUFBSUMsTUFBTSxDQUFDLCtDQUErQyxFQUFFSixRQUFRSyxRQUFRLENBQUMsT0FBTyxFQUFFSixrQkFBa0IsQ0FBQztJQUV6RyxJQUFJRCxRQUFRTSxZQUFZLEVBQUVGLE9BQU8sQ0FBQyxlQUFlLEVBQUVKLFFBQVFNLFlBQVksQ0FBQyxDQUFDO0lBQ3pFLElBQUlOLFFBQVFPLEtBQUssRUFBRUgsT0FBTyxDQUFDLE9BQU8sRUFBRUksbUJBQW1CUixRQUFRTyxLQUFLLEVBQUUsQ0FBQztJQUN2RSxJQUFJUCxRQUFRUyxXQUFXLEVBQUVMLE9BQU8sQ0FBQyxjQUFjLEVBQUVJLG1CQUFtQlIsUUFBUVMsV0FBVyxFQUFFLENBQUM7SUFDMUYsSUFBSVQsUUFBUVUsTUFBTSxFQUFFTixPQUFPLENBQUMsUUFBUSxFQUFFSixRQUFRVSxNQUFNLENBQUMsQ0FBQztJQUN0RCxJQUFJVixRQUFRVyxXQUFXLEVBQUVQLE9BQU8sQ0FBQyxhQUFhLEVBQUVRLE1BQU1DLE9BQU8sQ0FBQ2IsUUFBUVcsV0FBVyxJQUFJRyxJQUFBQSw0QkFBYSxFQUFDZCxRQUFRVyxXQUFXLElBQUlYLFFBQVFXLFdBQVcsQ0FBQyxDQUFDO0lBQy9JLElBQUlYLFFBQVFlLE9BQU8sRUFBRVgsT0FBTyxDQUFDLFVBQVUsRUFBRUosUUFBUWUsT0FBTyxDQUFDLENBQUM7SUFDMUQsNEVBQTRFO0lBQzVFLElBQUlmLFFBQVFnQixrQkFBa0IsS0FBS0MsV0FBV2IsT0FBTyxDQUFDLHNCQUFzQixFQUFFSixRQUFRZ0Isa0JBQWtCLENBQUMsQ0FBQztJQUUxRyxPQUFPWjtBQUNUIn0=
|
|
@@ -0,0 +1,31 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", {
|
|
3
|
+
value: true
|
|
4
|
+
});
|
|
5
|
+
function _export(target, all) {
|
|
6
|
+
for(var name in all)Object.defineProperty(target, name, {
|
|
7
|
+
enumerable: true,
|
|
8
|
+
get: all[name]
|
|
9
|
+
});
|
|
10
|
+
}
|
|
11
|
+
_export(exports, {
|
|
12
|
+
calculatePermissions: ()=>calculatePermissions,
|
|
13
|
+
calculateBits: ()=>calculateBits
|
|
14
|
+
});
|
|
15
|
+
const _types = require("@discordeno/types");
|
|
16
|
+
function calculatePermissions(permissionBits) {
|
|
17
|
+
return Object.keys(_types.BitwisePermissionFlags).filter((permission)=>{
|
|
18
|
+
// Since Object.keys() not only returns the permission names but also the bit values we need to return false if it is a Number
|
|
19
|
+
if (Number(permission)) return false;
|
|
20
|
+
// Check if permissionBits has this permission
|
|
21
|
+
return permissionBits & BigInt(_types.BitwisePermissionFlags[permission]);
|
|
22
|
+
});
|
|
23
|
+
}
|
|
24
|
+
function calculateBits(permissions) {
|
|
25
|
+
return permissions.reduce((bits, perm)=>{
|
|
26
|
+
bits |= BigInt(_types.BitwisePermissionFlags[perm]);
|
|
27
|
+
return bits;
|
|
28
|
+
}, 0n).toString();
|
|
29
|
+
}
|
|
30
|
+
|
|
31
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9wZXJtaXNzaW9ucy50cyJdLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgdHlwZSB7IFBlcm1pc3Npb25TdHJpbmdzIH0gZnJvbSAnQGRpc2NvcmRlbm8vdHlwZXMnXG5pbXBvcnQgeyBCaXR3aXNlUGVybWlzc2lvbkZsYWdzIH0gZnJvbSAnQGRpc2NvcmRlbm8vdHlwZXMnXG5cbi8qKiBUaGlzIGZ1bmN0aW9uIGNvbnZlcnRzIGEgYml0d2lzZSBzdHJpbmcgdG8gcGVybWlzc2lvbiBzdHJpbmdzICovXG5leHBvcnQgZnVuY3Rpb24gY2FsY3VsYXRlUGVybWlzc2lvbnMocGVybWlzc2lvbkJpdHM6IGJpZ2ludCk6IFBlcm1pc3Npb25TdHJpbmdzW10ge1xuICByZXR1cm4gT2JqZWN0LmtleXMoQml0d2lzZVBlcm1pc3Npb25GbGFncykuZmlsdGVyKChwZXJtaXNzaW9uKSA9PiB7XG4gICAgLy8gU2luY2UgT2JqZWN0LmtleXMoKSBub3Qgb25seSByZXR1cm5zIHRoZSBwZXJtaXNzaW9uIG5hbWVzIGJ1dCBhbHNvIHRoZSBiaXQgdmFsdWVzIHdlIG5lZWQgdG8gcmV0dXJuIGZhbHNlIGlmIGl0IGlzIGEgTnVtYmVyXG4gICAgaWYgKE51bWJlcihwZXJtaXNzaW9uKSkgcmV0dXJuIGZhbHNlXG4gICAgLy8gQ2hlY2sgaWYgcGVybWlzc2lvbkJpdHMgaGFzIHRoaXMgcGVybWlzc2lvblxuICAgIHJldHVybiBwZXJtaXNzaW9uQml0cyAmIEJpZ0ludChCaXR3aXNlUGVybWlzc2lvbkZsYWdzW3Blcm1pc3Npb24gYXMgUGVybWlzc2lvblN0cmluZ3NdKVxuICB9KSBhcyBQZXJtaXNzaW9uU3RyaW5nc1tdXG59XG5cbi8qKiBUaGlzIGZ1bmN0aW9uIGNvbnZlcnRzIGFuIGFycmF5IG9mIHBlcm1pc3Npb25zIGludG8gdGhlIGJpdHdpc2Ugc3RyaW5nLiAqL1xuZXhwb3J0IGZ1bmN0aW9uIGNhbGN1bGF0ZUJpdHMocGVybWlzc2lvbnM6IFBlcm1pc3Npb25TdHJpbmdzW10pOiBzdHJpbmcge1xuICByZXR1cm4gcGVybWlzc2lvbnNcbiAgICAucmVkdWNlKChiaXRzLCBwZXJtKSA9PiB7XG4gICAgICBiaXRzIHw9IEJpZ0ludChCaXR3aXNlUGVybWlzc2lvbkZsYWdzW3Blcm1dKVxuICAgICAgcmV0dXJuIGJpdHNcbiAgICB9LCAwbilcbiAgICAudG9TdHJpbmcoKVxufVxuIl0sIm5hbWVzIjpbImNhbGN1bGF0ZVBlcm1pc3Npb25zIiwiY2FsY3VsYXRlQml0cyIsInBlcm1pc3Npb25CaXRzIiwiT2JqZWN0Iiwia2V5cyIsIkJpdHdpc2VQZXJtaXNzaW9uRmxhZ3MiLCJmaWx0ZXIiLCJwZXJtaXNzaW9uIiwiTnVtYmVyIiwiQmlnSW50IiwicGVybWlzc2lvbnMiLCJyZWR1Y2UiLCJiaXRzIiwicGVybSIsInRvU3RyaW5nIl0sIm1hcHBpbmdzIjoiOzs7Ozs7Ozs7OztJQUlnQkEsb0JBQW9CLE1BQXBCQTtJQVVBQyxhQUFhLE1BQWJBOzt1QkFidUI7QUFHaEMsU0FBU0QscUJBQXFCRSxjQUFzQixFQUF1QjtJQUNoRixPQUFPQyxPQUFPQyxJQUFJLENBQUNDLDZCQUFzQixFQUFFQyxNQUFNLENBQUMsQ0FBQ0MsYUFBZTtRQUNoRSw4SEFBOEg7UUFDOUgsSUFBSUMsT0FBT0QsYUFBYSxPQUFPLEtBQUs7UUFDcEMsOENBQThDO1FBQzlDLE9BQU9MLGlCQUFpQk8sT0FBT0osNkJBQXNCLENBQUNFLFdBQWdDO0lBQ3hGO0FBQ0Y7QUFHTyxTQUFTTixjQUFjUyxXQUFnQyxFQUFVO0lBQ3RFLE9BQU9BLFlBQ0pDLE1BQU0sQ0FBQyxDQUFDQyxNQUFNQyxPQUFTO1FBQ3RCRCxRQUFRSCxPQUFPSiw2QkFBc0IsQ0FBQ1EsS0FBSztRQUMzQyxPQUFPRDtJQUNULEdBQUcsRUFBRSxFQUNKRSxRQUFRO0FBQ2IifQ==
|
|
@@ -0,0 +1,19 @@
|
|
|
1
|
+
/** Converts an reaction emoji unicode string to the discord required form of name:id */ "use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", {
|
|
3
|
+
value: true
|
|
4
|
+
});
|
|
5
|
+
Object.defineProperty(exports, "processReactionString", {
|
|
6
|
+
enumerable: true,
|
|
7
|
+
get: ()=>processReactionString
|
|
8
|
+
});
|
|
9
|
+
function processReactionString(reaction) {
|
|
10
|
+
if (reaction.startsWith('<:')) {
|
|
11
|
+
return reaction.substring(2, reaction.length - 1);
|
|
12
|
+
}
|
|
13
|
+
if (reaction.startsWith('<a:')) {
|
|
14
|
+
return reaction.substring(3, reaction.length - 1);
|
|
15
|
+
}
|
|
16
|
+
return reaction;
|
|
17
|
+
}
|
|
18
|
+
|
|
19
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9yZWFjdGlvbnMudHMiXSwic291cmNlc0NvbnRlbnQiOlsiLyoqIENvbnZlcnRzIGFuIHJlYWN0aW9uIGVtb2ppIHVuaWNvZGUgc3RyaW5nIHRvIHRoZSBkaXNjb3JkIHJlcXVpcmVkIGZvcm0gb2YgbmFtZTppZCAqL1xuZXhwb3J0IGZ1bmN0aW9uIHByb2Nlc3NSZWFjdGlvblN0cmluZyhyZWFjdGlvbjogc3RyaW5nKTogc3RyaW5nIHtcbiAgaWYgKHJlYWN0aW9uLnN0YXJ0c1dpdGgoJzw6JykpIHtcbiAgICByZXR1cm4gcmVhY3Rpb24uc3Vic3RyaW5nKDIsIHJlYWN0aW9uLmxlbmd0aCAtIDEpXG4gIH1cblxuICBpZiAocmVhY3Rpb24uc3RhcnRzV2l0aCgnPGE6JykpIHtcbiAgICByZXR1cm4gcmVhY3Rpb24uc3Vic3RyaW5nKDMsIHJlYWN0aW9uLmxlbmd0aCAtIDEpXG4gIH1cblxuICByZXR1cm4gcmVhY3Rpb25cbn1cbiJdLCJuYW1lcyI6WyJwcm9jZXNzUmVhY3Rpb25TdHJpbmciLCJyZWFjdGlvbiIsInN0YXJ0c1dpdGgiLCJzdWJzdHJpbmciLCJsZW5ndGgiXSwibWFwcGluZ3MiOiJBQUFBLHNGQUFzRjs7OzsrQkFDdEVBOzthQUFBQTs7QUFBVCxTQUFTQSxzQkFBc0JDLFFBQWdCLEVBQVU7SUFDOUQsSUFBSUEsU0FBU0MsVUFBVSxDQUFDLE9BQU87UUFDN0IsT0FBT0QsU0FBU0UsU0FBUyxDQUFDLEdBQUdGLFNBQVNHLE1BQU0sR0FBRztJQUNqRCxDQUFDO0lBRUQsSUFBSUgsU0FBU0MsVUFBVSxDQUFDLFFBQVE7UUFDOUIsT0FBT0QsU0FBU0UsU0FBUyxDQUFDLEdBQUdGLFNBQVNHLE1BQU0sR0FBRztJQUNqRCxDQUFDO0lBRUQsT0FBT0g7QUFDVCJ9
|
|
@@ -0,0 +1,35 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", {
|
|
3
|
+
value: true
|
|
4
|
+
});
|
|
5
|
+
function _export(target, all) {
|
|
6
|
+
for(var name in all)Object.defineProperty(target, name, {
|
|
7
|
+
enumerable: true,
|
|
8
|
+
get: all[name]
|
|
9
|
+
});
|
|
10
|
+
}
|
|
11
|
+
_export(exports, {
|
|
12
|
+
removeTokenPrefix: ()=>removeTokenPrefix,
|
|
13
|
+
getBotIdFromToken: ()=>getBotIdFromToken
|
|
14
|
+
});
|
|
15
|
+
const _nodeBuffer = require("node:buffer");
|
|
16
|
+
const validTokenPrefixes = [
|
|
17
|
+
'Bot',
|
|
18
|
+
'Bearer'
|
|
19
|
+
];
|
|
20
|
+
function removeTokenPrefix(token, type = 'REST') {
|
|
21
|
+
// If no token is provided, throw an error
|
|
22
|
+
if (token === undefined) {
|
|
23
|
+
throw new Error(`The ${type} was not given a token. Please provide a token and try again.`);
|
|
24
|
+
}
|
|
25
|
+
const splittedToken = token.split(' ');
|
|
26
|
+
// If the token does not have a prefix just return token
|
|
27
|
+
if (splittedToken.length < 2 || !validTokenPrefixes.includes(splittedToken[0])) return token;
|
|
28
|
+
// Remove the prefix and return only the token.
|
|
29
|
+
return splittedToken.splice(1).join(' ');
|
|
30
|
+
}
|
|
31
|
+
function getBotIdFromToken(token) {
|
|
32
|
+
return BigInt(_nodeBuffer.Buffer.from(token.split('.')[0], 'base64').toString());
|
|
33
|
+
}
|
|
34
|
+
|
|
35
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy90b2tlbi50cyJdLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBCdWZmZXIgfSBmcm9tICdub2RlOmJ1ZmZlcidcblxuY29uc3QgdmFsaWRUb2tlblByZWZpeGVzID0gWydCb3QnLCAnQmVhcmVyJ11cblxuLyoqIFJlbW92ZXMgdGhlIEJvdC9CZWFyZXIgYmVmb3JlIHRoZSB0b2tlbi4gKi9cbmV4cG9ydCBmdW5jdGlvbiByZW1vdmVUb2tlblByZWZpeCh0b2tlbj86IHN0cmluZywgdHlwZTogJ0dBVEVXQVknIHwgJ1JFU1QnID0gJ1JFU1QnKTogc3RyaW5nIHtcbiAgLy8gSWYgbm8gdG9rZW4gaXMgcHJvdmlkZWQsIHRocm93IGFuIGVycm9yXG4gIGlmICh0b2tlbiA9PT0gdW5kZWZpbmVkKSB7XG4gICAgdGhyb3cgbmV3IEVycm9yKGBUaGUgJHt0eXBlfSB3YXMgbm90IGdpdmVuIGEgdG9rZW4uIFBsZWFzZSBwcm92aWRlIGEgdG9rZW4gYW5kIHRyeSBhZ2Fpbi5gKVxuICB9XG5cbiAgY29uc3Qgc3BsaXR0ZWRUb2tlbiA9IHRva2VuLnNwbGl0KCcgJylcblxuICAvLyBJZiB0aGUgdG9rZW4gZG9lcyBub3QgaGF2ZSBhIHByZWZpeCBqdXN0IHJldHVybiB0b2tlblxuICBpZiAoc3BsaXR0ZWRUb2tlbi5sZW5ndGggPCAyIHx8ICF2YWxpZFRva2VuUHJlZml4ZXMuaW5jbHVkZXMoc3BsaXR0ZWRUb2tlblswXSkpIHJldHVybiB0b2tlblxuICAvLyBSZW1vdmUgdGhlIHByZWZpeCBhbmQgcmV0dXJuIG9ubHkgdGhlIHRva2VuLlxuICByZXR1cm4gc3BsaXR0ZWRUb2tlbi5zcGxpY2UoMSkuam9pbignICcpXG59XG5cbi8qKiBHZXQgdGhlIGJvdCBpZCBmcm9tIHRoZSBib3QgdG9rZW4uIFdBUk5JTkc6IERpc2NvcmQgc3RhZmYgaGFzIG1lbnRpb25lZCB0aGlzIG1heSBub3QgYmUgc3RhYmxlIGZvcmV2ZXIuIFVzZSBhdCB5b3VyIG93biByaXNrLiBIb3dldmVyLCBub3RlIGZvciBvdmVyIDUgeWVhcnMgdGhpcyBoYXMgbmV2ZXIgYnJva2VuLiAqL1xuZXhwb3J0IGZ1bmN0aW9uIGdldEJvdElkRnJvbVRva2VuKHRva2VuOiBzdHJpbmcpOiBiaWdpbnQge1xuICByZXR1cm4gQmlnSW50KEJ1ZmZlci5mcm9tKHRva2VuLnNwbGl0KCcuJylbMF0sICdiYXNlNjQnKS50b1N0cmluZygpKVxufVxuIl0sIm5hbWVzIjpbInJlbW92ZVRva2VuUHJlZml4IiwiZ2V0Qm90SWRGcm9tVG9rZW4iLCJ2YWxpZFRva2VuUHJlZml4ZXMiLCJ0b2tlbiIsInR5cGUiLCJ1bmRlZmluZWQiLCJFcnJvciIsInNwbGl0dGVkVG9rZW4iLCJzcGxpdCIsImxlbmd0aCIsImluY2x1ZGVzIiwic3BsaWNlIiwiam9pbiIsIkJpZ0ludCIsIkJ1ZmZlciIsImZyb20iLCJ0b1N0cmluZyJdLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7Ozs7SUFLZ0JBLGlCQUFpQixNQUFqQkE7SUFlQUMsaUJBQWlCLE1BQWpCQTs7NEJBcEJPO0FBRXZCLE1BQU1DLHFCQUFxQjtJQUFDO0lBQU87Q0FBUztBQUdyQyxTQUFTRixrQkFBa0JHLEtBQWMsRUFBRUMsT0FBMkIsTUFBTSxFQUFVO0lBQzNGLDBDQUEwQztJQUMxQyxJQUFJRCxVQUFVRSxXQUFXO1FBQ3ZCLE1BQU0sSUFBSUMsTUFBTSxDQUFDLElBQUksRUFBRUYsS0FBSyw2REFBNkQsQ0FBQyxFQUFDO0lBQzdGLENBQUM7SUFFRCxNQUFNRyxnQkFBZ0JKLE1BQU1LLEtBQUssQ0FBQztJQUVsQyx3REFBd0Q7SUFDeEQsSUFBSUQsY0FBY0UsTUFBTSxHQUFHLEtBQUssQ0FBQ1AsbUJBQW1CUSxRQUFRLENBQUNILGFBQWEsQ0FBQyxFQUFFLEdBQUcsT0FBT0o7SUFDdkYsK0NBQStDO0lBQy9DLE9BQU9JLGNBQWNJLE1BQU0sQ0FBQyxHQUFHQyxJQUFJLENBQUM7QUFDdEM7QUFHTyxTQUFTWCxrQkFBa0JFLEtBQWEsRUFBVTtJQUN2RCxPQUFPVSxPQUFPQyxrQkFBTSxDQUFDQyxJQUFJLENBQUNaLE1BQU1LLEtBQUssQ0FBQyxJQUFJLENBQUMsRUFBRSxFQUFFLFVBQVVRLFFBQVE7QUFDbkUifQ==
|
|
@@ -0,0 +1,35 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", {
|
|
3
|
+
value: true
|
|
4
|
+
});
|
|
5
|
+
function _export(target, all) {
|
|
6
|
+
for(var name in all)Object.defineProperty(target, name, {
|
|
7
|
+
enumerable: true,
|
|
8
|
+
get: all[name]
|
|
9
|
+
});
|
|
10
|
+
}
|
|
11
|
+
_export(exports, {
|
|
12
|
+
isGetMessagesAfter: ()=>isGetMessagesAfter,
|
|
13
|
+
isGetMessagesBefore: ()=>isGetMessagesBefore,
|
|
14
|
+
isGetMessagesAround: ()=>isGetMessagesAround,
|
|
15
|
+
isGetMessagesLimit: ()=>isGetMessagesLimit,
|
|
16
|
+
isInviteWithMetadata: ()=>isInviteWithMetadata
|
|
17
|
+
});
|
|
18
|
+
const _utilsJs = require("./utils.cjs");
|
|
19
|
+
function isGetMessagesAfter(options) {
|
|
20
|
+
return (0, _utilsJs.hasProperty)(options, 'after');
|
|
21
|
+
}
|
|
22
|
+
function isGetMessagesBefore(options) {
|
|
23
|
+
return (0, _utilsJs.hasProperty)(options, 'before');
|
|
24
|
+
}
|
|
25
|
+
function isGetMessagesAround(options) {
|
|
26
|
+
return (0, _utilsJs.hasProperty)(options, 'around');
|
|
27
|
+
}
|
|
28
|
+
function isGetMessagesLimit(options) {
|
|
29
|
+
return (0, _utilsJs.hasProperty)(options, 'limit');
|
|
30
|
+
}
|
|
31
|
+
function isInviteWithMetadata(options) {
|
|
32
|
+
return !(0, _utilsJs.hasProperty)(options, 'channel_id');
|
|
33
|
+
}
|
|
34
|
+
|
|
35
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy90eXBlZ3VhcmRzLnRzIl0sInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB0eXBlIHtcbiAgRGlzY29yZEludml0ZUNyZWF0ZSxcbiAgRGlzY29yZEludml0ZU1ldGFkYXRhLFxuICBHZXRNZXNzYWdlc0FmdGVyLFxuICBHZXRNZXNzYWdlc0Fyb3VuZCxcbiAgR2V0TWVzc2FnZXNCZWZvcmUsXG4gIEdldE1lc3NhZ2VzTGltaXQsXG4gIEdldE1lc3NhZ2VzT3B0aW9ucyxcbn0gZnJvbSAnQGRpc2NvcmRlbm8vdHlwZXMnXG5pbXBvcnQgeyBoYXNQcm9wZXJ0eSB9IGZyb20gJy4vdXRpbHMuanMnXG5cbmV4cG9ydCBmdW5jdGlvbiBpc0dldE1lc3NhZ2VzQWZ0ZXIob3B0aW9uczogR2V0TWVzc2FnZXNPcHRpb25zKTogb3B0aW9ucyBpcyBHZXRNZXNzYWdlc0FmdGVyIHtcbiAgcmV0dXJuIGhhc1Byb3BlcnR5KG9wdGlvbnMsICdhZnRlcicpXG59XG5cbmV4cG9ydCBmdW5jdGlvbiBpc0dldE1lc3NhZ2VzQmVmb3JlKG9wdGlvbnM6IEdldE1lc3NhZ2VzT3B0aW9ucyk6IG9wdGlvbnMgaXMgR2V0TWVzc2FnZXNCZWZvcmUge1xuICByZXR1cm4gaGFzUHJvcGVydHkob3B0aW9ucywgJ2JlZm9yZScpXG59XG5cbmV4cG9ydCBmdW5jdGlvbiBpc0dldE1lc3NhZ2VzQXJvdW5kKG9wdGlvbnM6IEdldE1lc3NhZ2VzT3B0aW9ucyk6IG9wdGlvbnMgaXMgR2V0TWVzc2FnZXNBcm91bmQge1xuICByZXR1cm4gaGFzUHJvcGVydHkob3B0aW9ucywgJ2Fyb3VuZCcpXG59XG5cbmV4cG9ydCBmdW5jdGlvbiBpc0dldE1lc3NhZ2VzTGltaXQob3B0aW9uczogR2V0TWVzc2FnZXNPcHRpb25zKTogb3B0aW9ucyBpcyBHZXRNZXNzYWdlc0xpbWl0IHtcbiAgcmV0dXJuIGhhc1Byb3BlcnR5KG9wdGlvbnMsICdsaW1pdCcpXG59XG5cbmV4cG9ydCBmdW5jdGlvbiBpc0ludml0ZVdpdGhNZXRhZGF0YShvcHRpb25zOiBEaXNjb3JkSW52aXRlQ3JlYXRlIHwgRGlzY29yZEludml0ZU1ldGFkYXRhKTogb3B0aW9ucyBpcyBEaXNjb3JkSW52aXRlTWV0YWRhdGEge1xuICByZXR1cm4gIWhhc1Byb3BlcnR5KG9wdGlvbnMsICdjaGFubmVsX2lkJylcbn1cbiJdLCJuYW1lcyI6WyJpc0dldE1lc3NhZ2VzQWZ0ZXIiLCJpc0dldE1lc3NhZ2VzQmVmb3JlIiwiaXNHZXRNZXNzYWdlc0Fyb3VuZCIsImlzR2V0TWVzc2FnZXNMaW1pdCIsImlzSW52aXRlV2l0aE1ldGFkYXRhIiwib3B0aW9ucyIsImhhc1Byb3BlcnR5Il0sIm1hcHBpbmdzIjoiOzs7Ozs7Ozs7OztJQVdnQkEsa0JBQWtCLE1BQWxCQTtJQUlBQyxtQkFBbUIsTUFBbkJBO0lBSUFDLG1CQUFtQixNQUFuQkE7SUFJQUMsa0JBQWtCLE1BQWxCQTtJQUlBQyxvQkFBb0IsTUFBcEJBOzt5QkFsQlk7QUFFckIsU0FBU0osbUJBQW1CSyxPQUEyQixFQUErQjtJQUMzRixPQUFPQyxJQUFBQSxvQkFBVyxFQUFDRCxTQUFTO0FBQzlCO0FBRU8sU0FBU0osb0JBQW9CSSxPQUEyQixFQUFnQztJQUM3RixPQUFPQyxJQUFBQSxvQkFBVyxFQUFDRCxTQUFTO0FBQzlCO0FBRU8sU0FBU0gsb0JBQW9CRyxPQUEyQixFQUFnQztJQUM3RixPQUFPQyxJQUFBQSxvQkFBVyxFQUFDRCxTQUFTO0FBQzlCO0FBRU8sU0FBU0YsbUJBQW1CRSxPQUEyQixFQUErQjtJQUMzRixPQUFPQyxJQUFBQSxvQkFBVyxFQUFDRCxTQUFTO0FBQzlCO0FBRU8sU0FBU0QscUJBQXFCQyxPQUFvRCxFQUFvQztJQUMzSCxPQUFPLENBQUNDLElBQUFBLG9CQUFXLEVBQUNELFNBQVM7QUFDL0IifQ==
|
|
@@ -0,0 +1,17 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", {
|
|
3
|
+
value: true
|
|
4
|
+
});
|
|
5
|
+
Object.defineProperty(exports, "urlToBase64", {
|
|
6
|
+
enumerable: true,
|
|
7
|
+
get: ()=>urlToBase64
|
|
8
|
+
});
|
|
9
|
+
const _base64Js = require("./base64.cjs");
|
|
10
|
+
async function urlToBase64(url) {
|
|
11
|
+
const buffer = await fetch(url).then(async (res)=>await res.arrayBuffer());
|
|
12
|
+
const imageStr = (0, _base64Js.encode)(buffer);
|
|
13
|
+
const type = url.substring(url.lastIndexOf('.') + 1);
|
|
14
|
+
return `data:image/${type};base64,${imageStr}`;
|
|
15
|
+
}
|
|
16
|
+
|
|
17
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy91cmxUb0Jhc2U2NC50cyJdLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBlbmNvZGUgfSBmcm9tICcuL2Jhc2U2NC5qcydcblxuLyoqIENvbnZlcnRzIGEgdXJsIHRvIGJhc2UgNjQuIFVzZWZ1bCBmb3IgZXhhbXBsZSwgdXBsb2FkaW5nL2NyZWF0aW5nIHNlcnZlciBlbW9qaXMuICovXG5leHBvcnQgYXN5bmMgZnVuY3Rpb24gdXJsVG9CYXNlNjQodXJsOiBzdHJpbmcpOiBQcm9taXNlPHN0cmluZz4ge1xuICBjb25zdCBidWZmZXIgPSBhd2FpdCBmZXRjaCh1cmwpLnRoZW4oYXN5bmMgKHJlcykgPT4gYXdhaXQgcmVzLmFycmF5QnVmZmVyKCkpXG4gIGNvbnN0IGltYWdlU3RyID0gZW5jb2RlKGJ1ZmZlcilcbiAgY29uc3QgdHlwZSA9IHVybC5zdWJzdHJpbmcodXJsLmxhc3RJbmRleE9mKCcuJykgKyAxKVxuICByZXR1cm4gYGRhdGE6aW1hZ2UvJHt0eXBlfTtiYXNlNjQsJHtpbWFnZVN0cn1gXG59XG4iXSwibmFtZXMiOlsidXJsVG9CYXNlNjQiLCJ1cmwiLCJidWZmZXIiLCJmZXRjaCIsInRoZW4iLCJyZXMiLCJhcnJheUJ1ZmZlciIsImltYWdlU3RyIiwiZW5jb2RlIiwidHlwZSIsInN1YnN0cmluZyIsImxhc3RJbmRleE9mIl0sIm1hcHBpbmdzIjoiOzs7OytCQUdzQkE7O2FBQUFBOzswQkFIQztBQUdoQixlQUFlQSxZQUFZQyxHQUFXLEVBQW1CO0lBQzlELE1BQU1DLFNBQVMsTUFBTUMsTUFBTUYsS0FBS0csSUFBSSxDQUFDLE9BQU9DLE1BQVEsTUFBTUEsSUFBSUMsV0FBVztJQUN6RSxNQUFNQyxXQUFXQyxJQUFBQSxnQkFBTSxFQUFDTjtJQUN4QixNQUFNTyxPQUFPUixJQUFJUyxTQUFTLENBQUNULElBQUlVLFdBQVcsQ0FBQyxPQUFPO0lBQ2xELE9BQU8sQ0FBQyxXQUFXLEVBQUVGLEtBQUssUUFBUSxFQUFFRixTQUFTLENBQUM7QUFDaEQifQ==
|
|
@@ -0,0 +1,26 @@
|
|
|
1
|
+
/** Pause the execution for a given amount of milliseconds. */ "use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", {
|
|
3
|
+
value: true
|
|
4
|
+
});
|
|
5
|
+
function _export(target, all) {
|
|
6
|
+
for(var name in all)Object.defineProperty(target, name, {
|
|
7
|
+
enumerable: true,
|
|
8
|
+
get: all[name]
|
|
9
|
+
});
|
|
10
|
+
}
|
|
11
|
+
_export(exports, {
|
|
12
|
+
delay: ()=>delay,
|
|
13
|
+
hasProperty: ()=>hasProperty
|
|
14
|
+
});
|
|
15
|
+
async function delay(ms) {
|
|
16
|
+
// eslint-disable-next-line @typescript-eslint/return-await
|
|
17
|
+
return new Promise((resolve)=>setTimeout(()=>{
|
|
18
|
+
resolve();
|
|
19
|
+
}, ms));
|
|
20
|
+
}
|
|
21
|
+
function hasProperty(obj, prop) {
|
|
22
|
+
// eslint-disable-next-line no-prototype-builtins
|
|
23
|
+
return obj.hasOwnProperty(prop);
|
|
24
|
+
}
|
|
25
|
+
|
|
26
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy91dGlscy50cyJdLCJzb3VyY2VzQ29udGVudCI6WyIvKiogUGF1c2UgdGhlIGV4ZWN1dGlvbiBmb3IgYSBnaXZlbiBhbW91bnQgb2YgbWlsbGlzZWNvbmRzLiAqL1xuZXhwb3J0IGFzeW5jIGZ1bmN0aW9uIGRlbGF5KG1zOiBudW1iZXIpOiBQcm9taXNlPHZvaWQ+IHtcbiAgLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIEB0eXBlc2NyaXB0LWVzbGludC9yZXR1cm4tYXdhaXRcbiAgcmV0dXJuIG5ldyBQcm9taXNlKFxuICAgIChyZXNvbHZlKTogTm9kZUpTLlRpbWVvdXQgPT5cbiAgICAgIHNldFRpbWVvdXQoKCk6IHZvaWQgPT4ge1xuICAgICAgICByZXNvbHZlKClcbiAgICAgIH0sIG1zKSxcbiAgKVxufVxuXG4vLyBUeXBlc2NyaXB0IGlzIG5vdCBzbyBnb29kIGFzIHdlIGRldmVsb3BlcnMgc28gd2UgbmVlZCB0aGlzIGxpdHRsZSB1dGlsaXR5IGZ1bmN0aW9uIHRvIGhlbHAgaXQgb3V0XG4vLyBUYWtlbiBmcm9tIGh0dHBzOi8vZmV0dGJsb2cuZXUvdHlwZXNjcmlwdC1oYXNvd25wcm9wZXJ0eS9cbi8qKiBUUyBzYXZlIHdheSB0byBjaGVjayBpZiBhIHByb3BlcnR5IGV4aXN0cyBpbiBhbiBvYmplY3QgKi9cbi8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBAdHlwZXNjcmlwdC1lc2xpbnQvYmFuLXR5cGVzXG5leHBvcnQgZnVuY3Rpb24gaGFzUHJvcGVydHk8VCBleHRlbmRzIHt9LCBZIGV4dGVuZHMgUHJvcGVydHlLZXkgPSBzdHJpbmc+KG9iajogVCwgcHJvcDogWSk6IG9iaiBpcyBUICYgUmVjb3JkPFksIHVua25vd24+IHtcbiAgLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIG5vLXByb3RvdHlwZS1idWlsdGluc1xuICByZXR1cm4gb2JqLmhhc093blByb3BlcnR5KHByb3ApXG59XG4iXSwibmFtZXMiOlsiZGVsYXkiLCJoYXNQcm9wZXJ0eSIsIm1zIiwiUHJvbWlzZSIsInJlc29sdmUiLCJzZXRUaW1lb3V0Iiwib2JqIiwicHJvcCIsImhhc093blByb3BlcnR5Il0sIm1hcHBpbmdzIjoiQUFBQSw0REFBNEQ7Ozs7Ozs7Ozs7O0lBQ3RDQSxLQUFLLE1BQUxBO0lBY05DLFdBQVcsTUFBWEE7O0FBZFQsZUFBZUQsTUFBTUUsRUFBVSxFQUFpQjtJQUNyRCwyREFBMkQ7SUFDM0QsT0FBTyxJQUFJQyxRQUNULENBQUNDLFVBQ0NDLFdBQVcsSUFBWTtZQUNyQkQ7UUFDRixHQUFHRjtBQUVUO0FBTU8sU0FBU0QsWUFBMERLLEdBQU0sRUFBRUMsSUFBTyxFQUFpQztJQUN4SCxpREFBaUQ7SUFDakQsT0FBT0QsSUFBSUUsY0FBYyxDQUFDRDtBQUM1QiJ9
|
|
@@ -0,0 +1,113 @@
|
|
|
1
|
+
// eslint-disable-next-line @typescript-eslint/no-empty-interface
|
|
2
|
+
export class Collection extends Map {
|
|
3
|
+
constructor(entries, options){
|
|
4
|
+
super(entries ?? []);
|
|
5
|
+
this.maxSize = options?.maxSize;
|
|
6
|
+
if (!options?.sweeper) return;
|
|
7
|
+
this.startSweeper(options.sweeper);
|
|
8
|
+
}
|
|
9
|
+
startSweeper(options) {
|
|
10
|
+
if (this.sweeper?.intervalId) clearInterval(this.sweeper.intervalId);
|
|
11
|
+
this.sweeper = options;
|
|
12
|
+
this.sweeper.intervalId = setInterval(()=>{
|
|
13
|
+
this.forEach((value, key)=>{
|
|
14
|
+
if (!this.sweeper?.filter(value, key, options.bot)) return;
|
|
15
|
+
this.delete(key);
|
|
16
|
+
return key;
|
|
17
|
+
});
|
|
18
|
+
}, options.interval);
|
|
19
|
+
return this.sweeper.intervalId;
|
|
20
|
+
}
|
|
21
|
+
stopSweeper() {
|
|
22
|
+
return clearInterval(this.sweeper?.intervalId);
|
|
23
|
+
}
|
|
24
|
+
changeSweeperInterval(newInterval) {
|
|
25
|
+
if (this.sweeper == null) return;
|
|
26
|
+
this.startSweeper({
|
|
27
|
+
filter: this.sweeper.filter,
|
|
28
|
+
interval: newInterval
|
|
29
|
+
});
|
|
30
|
+
}
|
|
31
|
+
changeSweeperFilter(newFilter) {
|
|
32
|
+
if (this.sweeper == null) return;
|
|
33
|
+
this.startSweeper({
|
|
34
|
+
filter: newFilter,
|
|
35
|
+
interval: this.sweeper.interval
|
|
36
|
+
});
|
|
37
|
+
}
|
|
38
|
+
/** Add an item to the collection. Makes sure not to go above the maxSize. */ set(key, value) {
|
|
39
|
+
// When this collection is maxSized make sure we can add first
|
|
40
|
+
if ((this.maxSize !== undefined || this.maxSize === 0) && this.size >= this.maxSize) {
|
|
41
|
+
return this;
|
|
42
|
+
}
|
|
43
|
+
return super.set(key, value);
|
|
44
|
+
}
|
|
45
|
+
/** Add an item to the collection, no matter what the maxSize is. */ forceSet(key, value) {
|
|
46
|
+
return super.set(key, value);
|
|
47
|
+
}
|
|
48
|
+
/** Convert the collection to an array. */ array() {
|
|
49
|
+
return [
|
|
50
|
+
...this.values()
|
|
51
|
+
];
|
|
52
|
+
}
|
|
53
|
+
/** Retrieve the value of the first element in this collection. */ first() {
|
|
54
|
+
return this.values().next().value;
|
|
55
|
+
}
|
|
56
|
+
/** Retrieve the value of the last element in this collection. */ last() {
|
|
57
|
+
return [
|
|
58
|
+
...this.values()
|
|
59
|
+
][this.size - 1];
|
|
60
|
+
}
|
|
61
|
+
/** Retrieve the value of a random element in this collection. */ random() {
|
|
62
|
+
const array = [
|
|
63
|
+
...this.values()
|
|
64
|
+
];
|
|
65
|
+
return array[Math.floor(Math.random() * array.length)];
|
|
66
|
+
}
|
|
67
|
+
/** Find a specific element in this collection. */ find(callback) {
|
|
68
|
+
for (const key of this.keys()){
|
|
69
|
+
const value = this.get(key);
|
|
70
|
+
if (callback(value, key)) return value;
|
|
71
|
+
}
|
|
72
|
+
// If nothing matched
|
|
73
|
+
}
|
|
74
|
+
/** Find all elements in this collection that match the given pattern. */ filter(callback) {
|
|
75
|
+
const relevant = new Collection();
|
|
76
|
+
this.forEach((value, key)=>{
|
|
77
|
+
if (callback(value, key)) relevant.set(key, value);
|
|
78
|
+
});
|
|
79
|
+
return relevant;
|
|
80
|
+
}
|
|
81
|
+
/** Converts the collection into an array by running a callback on all items in the collection. */ map(callback) {
|
|
82
|
+
const results = [];
|
|
83
|
+
for (const key of this.keys()){
|
|
84
|
+
const value = this.get(key);
|
|
85
|
+
results.push(callback(value, key));
|
|
86
|
+
}
|
|
87
|
+
return results;
|
|
88
|
+
}
|
|
89
|
+
/** Check if one of the items in the collection matches the pattern. */ some(callback) {
|
|
90
|
+
for (const key of this.keys()){
|
|
91
|
+
const value = this.get(key);
|
|
92
|
+
if (callback(value, key)) return true;
|
|
93
|
+
}
|
|
94
|
+
return false;
|
|
95
|
+
}
|
|
96
|
+
/** Check if all of the items in the collection matches the pattern. */ every(callback) {
|
|
97
|
+
for (const key of this.keys()){
|
|
98
|
+
const value = this.get(key);
|
|
99
|
+
if (!callback(value, key)) return false;
|
|
100
|
+
}
|
|
101
|
+
return true;
|
|
102
|
+
}
|
|
103
|
+
/** Runs a callback on all items in the collection, merging them into a single value. */ reduce(callback, initialValue) {
|
|
104
|
+
let accumulator = initialValue;
|
|
105
|
+
for (const key of this.keys()){
|
|
106
|
+
const value = this.get(key);
|
|
107
|
+
accumulator = callback(accumulator, value, key);
|
|
108
|
+
}
|
|
109
|
+
return accumulator;
|
|
110
|
+
}
|
|
111
|
+
}
|
|
112
|
+
|
|
113
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9Db2xsZWN0aW9uLnRzIl0sInNvdXJjZXNDb250ZW50IjpbIi8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBAdHlwZXNjcmlwdC1lc2xpbnQvbm8tZW1wdHktaW50ZXJmYWNlXG5leHBvcnQgaW50ZXJmYWNlIFBsYWNlSG9sZGVyQm90IHt9XG5cbmV4cG9ydCBjbGFzcyBDb2xsZWN0aW9uPEssIFY+IGV4dGVuZHMgTWFwPEssIFY+IHtcbiAgLyoqXG4gICAqIFRoZSBtYXhpbXVtIGFtb3VudCBvZiBpdGVtcyBhbGxvd2VkIGluIHRoaXMgY29sbGVjdGlvbi4gVG8gZGlzYWJsZSBjYWNoZSwgc2V0IGl0IDAsIHNldCB0byB1bmRlZmluZWQgdG8gbWFrZSBpdCBpbmZpbml0ZS5cbiAgICogQGRlZmF1bHQgdW5kZWZpbmVkXG4gICAqL1xuICBtYXhTaXplOiBudW1iZXIgfCB1bmRlZmluZWRcbiAgLyoqIEhhbmRsZXIgdG8gcmVtb3ZlIGl0ZW1zIGZyb20gdGhlIGNvbGxlY3Rpb24gZXZlcnkgc28gb2Z0ZW4uICovXG4gIHN3ZWVwZXI6IChDb2xsZWN0aW9uU3dlZXBlcjxLLCBWPiAmIHsgaW50ZXJ2YWxJZD86IE5vZGVKUy5UaW1lciB9KSB8IHVuZGVmaW5lZFxuXG4gIGNvbnN0cnVjdG9yKGVudHJpZXM/OiAoUmVhZG9ubHlBcnJheTxyZWFkb25seSBbSywgVl0+IHwgbnVsbCkgfCBNYXA8SywgVj4sIG9wdGlvbnM/OiBDb2xsZWN0aW9uT3B0aW9uczxLLCBWPikge1xuICAgIHN1cGVyKGVudHJpZXMgPz8gW10pXG5cbiAgICB0aGlzLm1heFNpemUgPSBvcHRpb25zPy5tYXhTaXplXG5cbiAgICBpZiAoIW9wdGlvbnM/LnN3ZWVwZXIpIHJldHVyblxuXG4gICAgdGhpcy5zdGFydFN3ZWVwZXIob3B0aW9ucy5zd2VlcGVyKVxuICB9XG5cbiAgc3RhcnRTd2VlcGVyKG9wdGlvbnM6IENvbGxlY3Rpb25Td2VlcGVyPEssIFY+KTogTm9kZUpTLlRpbWVyIHtcbiAgICBpZiAodGhpcy5zd2VlcGVyPy5pbnRlcnZhbElkKSBjbGVhckludGVydmFsKHRoaXMuc3dlZXBlci5pbnRlcnZhbElkKVxuXG4gICAgdGhpcy5zd2VlcGVyID0gb3B0aW9uc1xuICAgIHRoaXMuc3dlZXBlci5pbnRlcnZhbElkID0gc2V0SW50ZXJ2YWwoKCkgPT4ge1xuICAgICAgdGhpcy5mb3JFYWNoKCh2YWx1ZSwga2V5KSA9PiB7XG4gICAgICAgIGlmICghdGhpcy5zd2VlcGVyPy5maWx0ZXIodmFsdWUsIGtleSwgb3B0aW9ucy5ib3QpKSByZXR1cm5cblxuICAgICAgICB0aGlzLmRlbGV0ZShrZXkpXG4gICAgICAgIHJldHVybiBrZXlcbiAgICAgIH0pXG4gICAgfSwgb3B0aW9ucy5pbnRlcnZhbClcblxuICAgIHJldHVybiB0aGlzLnN3ZWVwZXIuaW50ZXJ2YWxJZFxuICB9XG5cbiAgc3RvcFN3ZWVwZXIoKTogdm9pZCB7XG4gICAgcmV0dXJuIGNsZWFySW50ZXJ2YWwodGhpcy5zd2VlcGVyPy5pbnRlcnZhbElkKVxuICB9XG5cbiAgY2hhbmdlU3dlZXBlckludGVydmFsKG5ld0ludGVydmFsOiBudW1iZXIpOiB2b2lkIHtcbiAgICBpZiAodGhpcy5zd2VlcGVyID09IG51bGwpIHJldHVyblxuXG4gICAgdGhpcy5zdGFydFN3ZWVwZXIoeyBmaWx0ZXI6IHRoaXMuc3dlZXBlci5maWx0ZXIsIGludGVydmFsOiBuZXdJbnRlcnZhbCB9KVxuICB9XG5cbiAgY2hhbmdlU3dlZXBlckZpbHRlcihuZXdGaWx0ZXI6ICh2YWx1ZTogViwga2V5OiBLLCBib3Q6IFBsYWNlSG9sZGVyQm90KSA9PiBib29sZWFuKTogdm9pZCB7XG4gICAgaWYgKHRoaXMuc3dlZXBlciA9PSBudWxsKSByZXR1cm5cblxuICAgIHRoaXMuc3RhcnRTd2VlcGVyKHsgZmlsdGVyOiBuZXdGaWx0ZXIsIGludGVydmFsOiB0aGlzLnN3ZWVwZXIuaW50ZXJ2YWwgfSlcbiAgfVxuXG4gIC8qKiBBZGQgYW4gaXRlbSB0byB0aGUgY29sbGVjdGlvbi4gTWFrZXMgc3VyZSBub3QgdG8gZ28gYWJvdmUgdGhlIG1heFNpemUuICovXG4gIHNldChrZXk6IEssIHZhbHVlOiBWKTogdGhpcyB7XG4gICAgLy8gV2hlbiB0aGlzIGNvbGxlY3Rpb24gaXMgbWF4U2l6ZWQgbWFrZSBzdXJlIHdlIGNhbiBhZGQgZmlyc3RcbiAgICBpZiAoKHRoaXMubWF4U2l6ZSAhPT0gdW5kZWZpbmVkIHx8IHRoaXMubWF4U2l6ZSA9PT0gMCkgJiYgdGhpcy5zaXplID49IHRoaXMubWF4U2l6ZSkge1xuICAgICAgcmV0dXJuIHRoaXNcbiAgICB9XG5cbiAgICByZXR1cm4gc3VwZXIuc2V0KGtleSwgdmFsdWUpXG4gIH1cblxuICAvKiogQWRkIGFuIGl0ZW0gdG8gdGhlIGNvbGxlY3Rpb24sIG5vIG1hdHRlciB3aGF0IHRoZSBtYXhTaXplIGlzLiAqL1xuICBmb3JjZVNldChrZXk6IEssIHZhbHVlOiBWKTogdGhpcyB7XG4gICAgcmV0dXJuIHN1cGVyLnNldChrZXksIHZhbHVlKVxuICB9XG5cbiAgLyoqIENvbnZlcnQgdGhlIGNvbGxlY3Rpb24gdG8gYW4gYXJyYXkuICovXG4gIGFycmF5KCk6IFZbXSB7XG4gICAgcmV0dXJuIFsuLi50aGlzLnZhbHVlcygpXVxuICB9XG5cbiAgLyoqIFJldHJpZXZlIHRoZSB2YWx1ZSBvZiB0aGUgZmlyc3QgZWxlbWVudCBpbiB0aGlzIGNvbGxlY3Rpb24uICovXG4gIGZpcnN0KCk6IFYgfCB1bmRlZmluZWQge1xuICAgIHJldHVybiB0aGlzLnZhbHVlcygpLm5leHQoKS52YWx1ZVxuICB9XG5cbiAgLyoqIFJldHJpZXZlIHRoZSB2YWx1ZSBvZiB0aGUgbGFzdCBlbGVtZW50IGluIHRoaXMgY29sbGVjdGlvbi4gKi9cbiAgbGFzdCgpOiBWIHwgdW5kZWZpbmVkIHtcbiAgICByZXR1cm4gWy4uLnRoaXMudmFsdWVzKCldW3RoaXMuc2l6ZSAtIDFdXG4gIH1cblxuICAvKiogUmV0cmlldmUgdGhlIHZhbHVlIG9mIGEgcmFuZG9tIGVsZW1lbnQgaW4gdGhpcyBjb2xsZWN0aW9uLiAqL1xuICByYW5kb20oKTogViB8IHVuZGVmaW5lZCB7XG4gICAgY29uc3QgYXJyYXkgPSBbLi4udGhpcy52YWx1ZXMoKV1cbiAgICByZXR1cm4gYXJyYXlbTWF0aC5mbG9vcihNYXRoLnJhbmRvbSgpICogYXJyYXkubGVuZ3RoKV1cbiAgfVxuXG4gIC8qKiBGaW5kIGEgc3BlY2lmaWMgZWxlbWVudCBpbiB0aGlzIGNvbGxlY3Rpb24uICovXG4gIGZpbmQoY2FsbGJhY2s6ICh2YWx1ZTogViwga2V5OiBLKSA9PiBib29sZWFuKTogTm9uTnVsbGFibGU8Vj4gfCB1bmRlZmluZWQge1xuICAgIGZvciAoY29uc3Qga2V5IG9mIHRoaXMua2V5cygpKSB7XG4gICAgICBjb25zdCB2YWx1ZSA9IHRoaXMuZ2V0KGtleSkhXG4gICAgICBpZiAoY2FsbGJhY2sodmFsdWUsIGtleSkpIHJldHVybiB2YWx1ZVxuICAgIH1cbiAgICAvLyBJZiBub3RoaW5nIG1hdGNoZWRcbiAgfVxuXG4gIC8qKiBGaW5kIGFsbCBlbGVtZW50cyBpbiB0aGlzIGNvbGxlY3Rpb24gdGhhdCBtYXRjaCB0aGUgZ2l2ZW4gcGF0dGVybi4gKi9cbiAgZmlsdGVyKGNhbGxiYWNrOiAodmFsdWU6IFYsIGtleTogSykgPT4gYm9vbGVhbik6IENvbGxlY3Rpb248SywgVj4ge1xuICAgIGNvbnN0IHJlbGV2YW50ID0gbmV3IENvbGxlY3Rpb248SywgVj4oKVxuICAgIHRoaXMuZm9yRWFjaCgodmFsdWUsIGtleSkgPT4ge1xuICAgICAgaWYgKGNhbGxiYWNrKHZhbHVlLCBrZXkpKSByZWxldmFudC5zZXQoa2V5LCB2YWx1ZSlcbiAgICB9KVxuXG4gICAgcmV0dXJuIHJlbGV2YW50XG4gIH1cblxuICAvKiogQ29udmVydHMgdGhlIGNvbGxlY3Rpb24gaW50byBhbiBhcnJheSBieSBydW5uaW5nIGEgY2FsbGJhY2sgb24gYWxsIGl0ZW1zIGluIHRoZSBjb2xsZWN0aW9uLiAqL1xuICBtYXA8VD4oY2FsbGJhY2s6ICh2YWx1ZTogViwga2V5OiBLKSA9PiBUKTogVFtdIHtcbiAgICBjb25zdCByZXN1bHRzID0gW11cbiAgICBmb3IgKGNvbnN0IGtleSBvZiB0aGlzLmtleXMoKSkge1xuICAgICAgY29uc3QgdmFsdWUgPSB0aGlzLmdldChrZXkpIVxuICAgICAgcmVzdWx0cy5wdXNoKGNhbGxiYWNrKHZhbHVlLCBrZXkpKVxuICAgIH1cbiAgICByZXR1cm4gcmVzdWx0c1xuICB9XG5cbiAgLyoqIENoZWNrIGlmIG9uZSBvZiB0aGUgaXRlbXMgaW4gdGhlIGNvbGxlY3Rpb24gbWF0Y2hlcyB0aGUgcGF0dGVybi4gKi9cbiAgc29tZShjYWxsYmFjazogKHZhbHVlOiBWLCBrZXk6IEspID0+IGJvb2xlYW4pOiBib29sZWFuIHtcbiAgICBmb3IgKGNvbnN0IGtleSBvZiB0aGlzLmtleXMoKSkge1xuICAgICAgY29uc3QgdmFsdWUgPSB0aGlzLmdldChrZXkpIVxuICAgICAgaWYgKGNhbGxiYWNrKHZhbHVlLCBrZXkpKSByZXR1cm4gdHJ1ZVxuICAgIH1cblxuICAgIHJldHVybiBmYWxzZVxuICB9XG5cbiAgLyoqIENoZWNrIGlmIGFsbCBvZiB0aGUgaXRlbXMgaW4gdGhlIGNvbGxlY3Rpb24gbWF0Y2hlcyB0aGUgcGF0dGVybi4gKi9cbiAgZXZlcnkoY2FsbGJhY2s6ICh2YWx1ZTogViwga2V5OiBLKSA9PiBib29sZWFuKTogYm9vbGVhbiB7XG4gICAgZm9yIChjb25zdCBrZXkgb2YgdGhpcy5rZXlzKCkpIHtcbiAgICAgIGNvbnN0IHZhbHVlID0gdGhpcy5nZXQoa2V5KSFcbiAgICAgIGlmICghY2FsbGJhY2sodmFsdWUsIGtleSkpIHJldHVybiBmYWxzZVxuICAgIH1cblxuICAgIHJldHVybiB0cnVlXG4gIH1cblxuICAvKiogUnVucyBhIGNhbGxiYWNrIG9uIGFsbCBpdGVtcyBpbiB0aGUgY29sbGVjdGlvbiwgbWVyZ2luZyB0aGVtIGludG8gYSBzaW5nbGUgdmFsdWUuICovXG4gIHJlZHVjZTxUPihjYWxsYmFjazogKGFjY3VtdWxhdG9yOiBULCB2YWx1ZTogViwga2V5OiBLKSA9PiBULCBpbml0aWFsVmFsdWU/OiBUKTogVCB7XG4gICAgbGV0IGFjY3VtdWxhdG9yOiBUID0gaW5pdGlhbFZhbHVlIVxuXG4gICAgZm9yIChjb25zdCBrZXkgb2YgdGhpcy5rZXlzKCkpIHtcbiAgICAgIGNvbnN0IHZhbHVlID0gdGhpcy5nZXQoa2V5KSFcbiAgICAgIGFjY3VtdWxhdG9yID0gY2FsbGJhY2soYWNjdW11bGF0b3IsIHZhbHVlLCBrZXkpXG4gICAgfVxuXG4gICAgcmV0dXJuIGFjY3VtdWxhdG9yXG4gIH1cbn1cblxuZXhwb3J0IGludGVyZmFjZSBDb2xsZWN0aW9uT3B0aW9uczxLLCBWPiB7XG4gIC8qKiBIYW5kbGVyIHRvIGNsZWFuIG91dCB0aGUgaXRlbXMgaW4gdGhlIGNvbGxlY3Rpb24gZXZlcnkgc28gb2Z0ZW4uICovXG4gIHN3ZWVwZXI/OiBDb2xsZWN0aW9uU3dlZXBlcjxLLCBWPlxuICAvKiogVGhlIG1heGltdW0gbnVtYmVyIG9mIGl0ZW1zIGFsbG93ZWQgaW4gdGhlIGNvbGxlY3Rpb24uICovXG4gIG1heFNpemU/OiBudW1iZXJcbn1cblxuZXhwb3J0IGludGVyZmFjZSBDb2xsZWN0aW9uU3dlZXBlcjxLLCBWPiB7XG4gIC8qKiBUaGUgZmlsdGVyIHRvIGRldGVybWluZSB3aGV0aGVyIGFuIGVsZW1lbnQgc2hvdWxkIGJlIGRlbGV0ZWQgb3Igbm90ICovXG4gIGZpbHRlcjogKHZhbHVlOiBWLCBrZXk6IEssIC4uLmFyZ3M6IGFueVtdKSA9PiBib29sZWFuXG4gIC8qKiBUaGUgaW50ZXJ2YWwgaW4gd2hpY2ggdGhlIHN3ZWVwZXIgc2hvdWxkIHJ1biAqL1xuICBpbnRlcnZhbDogbnVtYmVyXG4gIC8qKiBUaGUgYm90IG9iamVjdCBpdHNlbGYgKi9cbiAgYm90PzogUGxhY2VIb2xkZXJCb3Rcbn1cbiJdLCJuYW1lcyI6WyJDb2xsZWN0aW9uIiwiTWFwIiwiY29uc3RydWN0b3IiLCJlbnRyaWVzIiwib3B0aW9ucyIsIm1heFNpemUiLCJzd2VlcGVyIiwic3RhcnRTd2VlcGVyIiwiaW50ZXJ2YWxJZCIsImNsZWFySW50ZXJ2YWwiLCJzZXRJbnRlcnZhbCIsImZvckVhY2giLCJ2YWx1ZSIsImtleSIsImZpbHRlciIsImJvdCIsImRlbGV0ZSIsImludGVydmFsIiwic3RvcFN3ZWVwZXIiLCJjaGFuZ2VTd2VlcGVySW50ZXJ2YWwiLCJuZXdJbnRlcnZhbCIsImNoYW5nZVN3ZWVwZXJGaWx0ZXIiLCJuZXdGaWx0ZXIiLCJzZXQiLCJ1bmRlZmluZWQiLCJzaXplIiwiZm9yY2VTZXQiLCJhcnJheSIsInZhbHVlcyIsImZpcnN0IiwibmV4dCIsImxhc3QiLCJyYW5kb20iLCJNYXRoIiwiZmxvb3IiLCJsZW5ndGgiLCJmaW5kIiwiY2FsbGJhY2siLCJrZXlzIiwiZ2V0IiwicmVsZXZhbnQiLCJtYXAiLCJyZXN1bHRzIiwicHVzaCIsInNvbWUiLCJldmVyeSIsInJlZHVjZSIsImluaXRpYWxWYWx1ZSIsImFjY3VtdWxhdG9yIl0sIm1hcHBpbmdzIjoiQUFBQSxpRUFBaUU7QUFHakUsT0FBTyxNQUFNQSxtQkFBeUJDO0lBU3BDQyxZQUFZQyxPQUE2RCxFQUFFQyxPQUFpQyxDQUFFO1FBQzVHLEtBQUssQ0FBQ0QsV0FBVyxFQUFFO1FBRW5CLElBQUksQ0FBQ0UsT0FBTyxHQUFHRCxTQUFTQztRQUV4QixJQUFJLENBQUNELFNBQVNFLFNBQVM7UUFFdkIsSUFBSSxDQUFDQyxZQUFZLENBQUNILFFBQVFFLE9BQU87SUFDbkM7SUFFQUMsYUFBYUgsT0FBZ0MsRUFBZ0I7UUFDM0QsSUFBSSxJQUFJLENBQUNFLE9BQU8sRUFBRUUsWUFBWUMsY0FBYyxJQUFJLENBQUNILE9BQU8sQ0FBQ0UsVUFBVTtRQUVuRSxJQUFJLENBQUNGLE9BQU8sR0FBR0Y7UUFDZixJQUFJLENBQUNFLE9BQU8sQ0FBQ0UsVUFBVSxHQUFHRSxZQUFZLElBQU07WUFDMUMsSUFBSSxDQUFDQyxPQUFPLENBQUMsQ0FBQ0MsT0FBT0MsTUFB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
|