catto.js 0.6.0 → 0.6.2
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/User.js +83 -18
- package/index.js +1 -1
- package/package.json +1 -1
- package/Flags.js +0 -6
package/User.js
CHANGED
|
@@ -80,43 +80,99 @@ module.exports = class {
|
|
|
80
80
|
get tag() {
|
|
81
81
|
return `${this.name}#${this.discrim}`;
|
|
82
82
|
}
|
|
83
|
-
get
|
|
84
|
-
var i = 23;
|
|
85
|
-
var p = (this.options.flags ? (this.options.flags.bitfield ? this.options.flags.bitfield : this.options.flags) : (this.options.publicFlags.bitfield ? this.options.publicFlags.bitfield : this.options.publicFlags));
|
|
86
|
-
var f = [];
|
|
87
|
-
while (--i > -1) {
|
|
88
|
-
if (![21, 20, 15, 13, 12, 11, 5, 4].includes(i) && p >= (1 << i)) {
|
|
89
|
-
p -= (1 << i);
|
|
90
|
-
f.push(i);
|
|
91
|
-
}
|
|
92
|
-
}
|
|
83
|
+
get flags() {
|
|
93
84
|
var fl = [
|
|
94
85
|
"STAFF",
|
|
95
86
|
"PARTNER",
|
|
96
87
|
"HYPESQUAD",
|
|
97
88
|
"BUG_HUNTER_LEVEL_1",
|
|
98
|
-
|
|
99
|
-
|
|
89
|
+
"MFA_SMS",
|
|
90
|
+
"PREMIUM_PROMO_DISMISSED",
|
|
100
91
|
"HYPESQUAD_ONLINE_HOUSE_1",
|
|
101
92
|
"HYPESQUAD_ONLINE_HOUSE_2",
|
|
102
93
|
"HYPESQUAD_ONLINE_HOUSE_3",
|
|
103
94
|
"PREMIUM_EARLY_SUPPORTER",
|
|
104
95
|
"TEAM_PSEUDO_USER",
|
|
105
|
-
|
|
106
|
-
|
|
107
|
-
|
|
96
|
+
"INTERNAL_APPLICATION",
|
|
97
|
+
"SYSTEM",
|
|
98
|
+
"HAS_UNREAD_URGENT_MESSAGES",
|
|
108
99
|
"BUG_HUNTER_LEVEL_2",
|
|
109
|
-
|
|
100
|
+
"UNDERAGE_DELETED",
|
|
110
101
|
"VERIFIED_BOT",
|
|
111
102
|
"VERIFIED_DEVELOPER",
|
|
112
103
|
"CERTIFIED_MODERATOR",
|
|
113
104
|
"BOT_HTTP_INTERACTIONS",
|
|
105
|
+
"SPAMMER",
|
|
106
|
+
"DISABLE_PREMIUM",
|
|
107
|
+
"ACTIVE_DEVELOPER",
|
|
108
|
+
null,
|
|
109
|
+
null,
|
|
110
|
+
null,
|
|
111
|
+
null,
|
|
112
|
+
null,
|
|
113
|
+
null,
|
|
114
|
+
null,
|
|
115
|
+
null,
|
|
114
116
|
null,
|
|
115
117
|
null,
|
|
116
|
-
"
|
|
118
|
+
"HIGH_GLOBAL_RATE_LIMIT",
|
|
119
|
+
"DELETED",
|
|
120
|
+
"DISABLED_SUSPICIOUS_ACTIVITY",
|
|
121
|
+
"SELF_DELETED",
|
|
122
|
+
"PREMIUM_DISCRIMINATOR",
|
|
123
|
+
"USED_DESKTOP_CLIENT",
|
|
124
|
+
"USED_WEB_CLIENT",
|
|
125
|
+
"USED_MOBILE_CLIENT",
|
|
126
|
+
"DISABLED",
|
|
127
|
+
null,
|
|
128
|
+
"VERIFIED_EMAIL",
|
|
129
|
+
"QUARANTINED",
|
|
130
|
+
null,
|
|
131
|
+
null,
|
|
132
|
+
null,
|
|
133
|
+
null,
|
|
134
|
+
null,
|
|
135
|
+
"COLLABORATOR",
|
|
136
|
+
"RESTRICTED_COLLABORATOR"
|
|
117
137
|
];
|
|
138
|
+
var i = -1;
|
|
139
|
+
var p = (this.options.flags ? (this.options.flags.bitfield ? this.options.flags.bitfield : this.options.flags) : (this.options.publicFlags.bitfield ? this.options.publicFlags.bitfield : this.options.publicFlags));
|
|
140
|
+
var f = [];
|
|
141
|
+
while (++i < fl.length) {
|
|
142
|
+
if (p & (1 << i)) {
|
|
143
|
+
f.push(i);
|
|
144
|
+
}
|
|
145
|
+
}
|
|
118
146
|
return f.map(n => fl[n]);
|
|
119
147
|
}
|
|
148
|
+
get badges() {
|
|
149
|
+
return this.flags.filter(flag => ![
|
|
150
|
+
"MFA_SMS",
|
|
151
|
+
"PREMIUM_PROMO_DISMISSED",
|
|
152
|
+
"TEAM_PSEUDO_USER",
|
|
153
|
+
"INTERNAL_APPLICATION",
|
|
154
|
+
"SYSTEM",
|
|
155
|
+
"HAS_UNREAD_URGENT_MESSAGES",
|
|
156
|
+
"UNDERAGE_DELETED",
|
|
157
|
+
"VERIFIED_BOT",
|
|
158
|
+
"BOT_HTTP_INTERACTIONS",
|
|
159
|
+
"SPAMMER",
|
|
160
|
+
"DISABLE_PREMIUM",
|
|
161
|
+
"HIGH_GLOBAL_RATE_LIMIT",
|
|
162
|
+
"DELETED",
|
|
163
|
+
"DISABLED_SUSPICIOUS_ACTIVITY",
|
|
164
|
+
"SELF_DELETED",
|
|
165
|
+
"PREMIUM_DISCRIMINATOR",
|
|
166
|
+
"USED_DESKTOP_CLIENT",
|
|
167
|
+
"USED_WEB_CLIENT",
|
|
168
|
+
"USED_MOBILE_CLIENT",
|
|
169
|
+
"DISABLED",
|
|
170
|
+
"VERIFIED_EMAIL",
|
|
171
|
+
"QUARANTINED",
|
|
172
|
+
"COLLABORATOR",
|
|
173
|
+
"RESTRICTED_COLLABORATOR"
|
|
174
|
+
].includes(flag));
|
|
175
|
+
}
|
|
120
176
|
get bannerHash() {
|
|
121
177
|
return this.options.banner;
|
|
122
178
|
}
|
|
@@ -168,11 +224,20 @@ module.exports = class {
|
|
|
168
224
|
return this.options.bot;
|
|
169
225
|
}
|
|
170
226
|
get isBotVerified() {
|
|
171
|
-
return this.
|
|
227
|
+
return this.isBot && this.flags.has("VERIFIED_BOT");
|
|
228
|
+
}
|
|
229
|
+
get isBotHTTP() {
|
|
230
|
+
return this.isBot && this.flags.has("BOT_HTTP_INTERACTIONS");
|
|
231
|
+
}
|
|
232
|
+
get isBotWS() {
|
|
233
|
+
return this.isBot && !this.isBotHTTP;
|
|
172
234
|
}
|
|
173
235
|
get isSystem() {
|
|
174
236
|
return this.options.system;
|
|
175
237
|
}
|
|
238
|
+
get isSpammer() {
|
|
239
|
+
return this.flags.has("SPAMMER");
|
|
240
|
+
}
|
|
176
241
|
async requestApplication() {
|
|
177
242
|
if (this.isBot) {
|
|
178
243
|
this.application = new Application((await request.get({
|
package/index.js
CHANGED
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
var mod = {};
|
|
2
|
-
["random", "Server", "HTML", "request", "AuthClient", "utils", "GitHub", "Base64", "User", "Bitfield", "
|
|
2
|
+
["random", "Server", "HTML", "request", "AuthClient", "utils", "GitHub", "Base64", "User", "Bitfield", "Bot", "Application", "MessageBuilder", "TelegramBot", "TelegramMessage", "TelegramChannel", "TelegramMessageBuilder", "TelegramInteraction", "TelegramUser", "TelegramFile"].forEach(part => {
|
|
3
3
|
mod[part] = require(`./${part}`);
|
|
4
4
|
});
|
|
5
5
|
module.exports = mod;
|
package/package.json
CHANGED