@amatiscorp/disguard 1.1.0 → 1.3.0

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.
Files changed (70) hide show
  1. package/README.md +384 -22
  2. package/dist/AntiSpam.d.ts +15 -1
  3. package/dist/AntiSpam.d.ts.map +1 -1
  4. package/dist/AntiSpam.js +159 -12
  5. package/dist/AntiSpam.js.map +1 -1
  6. package/dist/defaults.d.ts.map +1 -1
  7. package/dist/defaults.js +79 -2
  8. package/dist/defaults.js.map +1 -1
  9. package/dist/detectors/accounts.d.ts +3 -0
  10. package/dist/detectors/accounts.d.ts.map +1 -0
  11. package/dist/detectors/accounts.js +50 -0
  12. package/dist/detectors/accounts.js.map +1 -0
  13. package/dist/detectors/duplicates.d.ts.map +1 -1
  14. package/dist/detectors/duplicates.js +5 -1
  15. package/dist/detectors/duplicates.js.map +1 -1
  16. package/dist/detectors/files.d.ts.map +1 -1
  17. package/dist/detectors/files.js +10 -0
  18. package/dist/detectors/files.js.map +1 -1
  19. package/dist/detectors/flood.d.ts.map +1 -1
  20. package/dist/detectors/flood.js +7 -1
  21. package/dist/detectors/flood.js.map +1 -1
  22. package/dist/detectors/ghost.d.ts +4 -0
  23. package/dist/detectors/ghost.d.ts.map +1 -0
  24. package/dist/detectors/ghost.js +34 -0
  25. package/dist/detectors/ghost.js.map +1 -0
  26. package/dist/detectors/hop.d.ts +3 -0
  27. package/dist/detectors/hop.d.ts.map +1 -0
  28. package/dist/detectors/hop.js +30 -0
  29. package/dist/detectors/hop.js.map +1 -0
  30. package/dist/detectors/images.d.ts +1 -0
  31. package/dist/detectors/images.d.ts.map +1 -1
  32. package/dist/detectors/images.js +19 -3
  33. package/dist/detectors/images.js.map +1 -1
  34. package/dist/detectors/length.d.ts +3 -0
  35. package/dist/detectors/length.d.ts.map +1 -0
  36. package/dist/detectors/length.js +23 -0
  37. package/dist/detectors/length.js.map +1 -0
  38. package/dist/detectors/links.d.ts.map +1 -1
  39. package/dist/detectors/links.js +15 -1
  40. package/dist/detectors/links.js.map +1 -1
  41. package/dist/detectors/mentions.d.ts.map +1 -1
  42. package/dist/detectors/mentions.js +19 -0
  43. package/dist/detectors/mentions.js.map +1 -1
  44. package/dist/detectors/punctuation.d.ts +3 -0
  45. package/dist/detectors/punctuation.d.ts.map +1 -0
  46. package/dist/detectors/punctuation.js +26 -0
  47. package/dist/detectors/punctuation.js.map +1 -0
  48. package/dist/detectors/spoilers.d.ts +3 -0
  49. package/dist/detectors/spoilers.d.ts.map +1 -0
  50. package/dist/detectors/spoilers.js +25 -0
  51. package/dist/detectors/spoilers.js.map +1 -0
  52. package/dist/detectors/words.d.ts +3 -0
  53. package/dist/detectors/words.d.ts.map +1 -0
  54. package/dist/detectors/words.js +56 -0
  55. package/dist/detectors/words.js.map +1 -0
  56. package/dist/enforcement.d.ts +1 -0
  57. package/dist/enforcement.d.ts.map +1 -1
  58. package/dist/enforcement.js +57 -9
  59. package/dist/enforcement.js.map +1 -1
  60. package/dist/index.d.ts +4 -1
  61. package/dist/index.d.ts.map +1 -1
  62. package/dist/index.js +9 -1
  63. package/dist/index.js.map +1 -1
  64. package/dist/locale.d.ts +14 -0
  65. package/dist/locale.d.ts.map +1 -0
  66. package/dist/locale.js +35 -0
  67. package/dist/locale.js.map +1 -0
  68. package/dist/types.d.ts +103 -15
  69. package/dist/types.d.ts.map +1 -1
  70. package/package.json +2 -2
@@ -8,16 +8,23 @@ export declare class AntiSpam {
8
8
  private readonly detectors;
9
9
  private readonly options;
10
10
  private readonly guildConfigs;
11
+ private readonly channelConfigs;
11
12
  private stats;
12
13
  private started;
14
+ private paused;
13
15
  private cleanupTimer;
14
16
  private readonly onMessage;
15
17
  private readonly onEdit;
18
+ private readonly onDelete;
16
19
  constructor(client: Client, options?: AntiSpamOptions);
17
- /** Starts listening to `messageCreate` (and `messageUpdate` if enabled). */
20
+ /** Starts listening to `messageCreate` (and `messageUpdate` / `messageDelete` if enabled). */
18
21
  start(): this;
19
22
  /** Stops listening. Call this on shutdown. */
20
23
  stop(): this;
24
+ /** Temporarily skip all enforcement without removing listeners. */
25
+ pause(): this;
26
+ resume(): this;
27
+ isPaused(): boolean;
21
28
  /** Adds a custom detector. It runs after the built-in ones. */
22
29
  use(detector: Detector): this;
23
30
  getConfig(): ResolvedConfig;
@@ -26,6 +33,11 @@ export declare class AntiSpam {
26
33
  getGuildConfig(guildId: string): ResolvedConfig;
27
34
  setGuildConfig(guildId: string, patch: DeepPartial<ResolvedConfig>): ResolvedConfig;
28
35
  clearGuildConfig(guildId: string): void;
36
+ getChannelConfig(guildId: string, channelId: string): ResolvedConfig;
37
+ setChannelConfig(guildId: string, channelId: string, patch: DeepPartial<ResolvedConfig>): ResolvedConfig;
38
+ clearChannelConfig(guildId: string, channelId: string): void;
39
+ setRoleConfig(roleId: string, patch: DeepPartial<ResolvedConfig>): void;
40
+ clearRoleConfig(roleId: string): void;
29
41
  getStrikes(guildId: string, userId: string): number;
30
42
  isCoolingDown(guildId: string, userId: string): boolean;
31
43
  resetUser(guildId: string, userId: string): void;
@@ -39,8 +51,10 @@ export declare class AntiSpam {
39
51
  isEdit?: boolean;
40
52
  }): Promise<Incident | null>;
41
53
  private handle;
54
+ private handleDelete;
42
55
  shouldIgnore(message: Message): boolean;
43
56
  private configFor;
57
+ private orderedDetectors;
44
58
  private toSnapshot;
45
59
  private maxRetentionMs;
46
60
  }
@@ -1 +1 @@
1
- {"version":3,"file":"AntiSpam.d.ts","sourceRoot":"","sources":["../src/AntiSpam.ts"],"names":[],"mappings":"AAAA,OAAO,EAEL,KAAK,MAAM,EACX,KAAK,OAAO,EACb,MAAM,YAAY,CAAC;AAapB,OAAO,EAAE,WAAW,EAAE,MAAM,qBAAqB,CAAC;AAClD,OAAO,KAAK,EAEV,eAAe,EACf,aAAa,EACb,WAAW,EACX,QAAQ,EAER,QAAQ,EAER,cAAc,EACf,MAAM,SAAS,CAAC;AA4BjB,qBAAa,QAAQ;IACnB,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAC;IACxB,QAAQ,CAAC,KAAK,cAAqB;IAEnC,OAAO,CAAC,MAAM,CAAiB;IAC/B,OAAO,CAAC,QAAQ,CAAC,SAAS,CAAa;IACvC,OAAO,CAAC,QAAQ,CAAC,OAAO,CAAkB;IAC1C,OAAO,CAAC,QAAQ,CAAC,YAAY,CAAkD;IAC/E,OAAO,CAAC,KAAK,CAAgB;IAC7B,OAAO,CAAC,OAAO,CAAS;IACxB,OAAO,CAAC,YAAY,CAA+B;IAEnD,OAAO,CAAC,QAAQ,CAAC,SAAS,CAExB;IAEF,OAAO,CAAC,QAAQ,CAAC,MAAM,CAGrB;gBAEU,MAAM,EAAE,MAAM,EAAE,OAAO,GAAE,eAAoB;IAmBzD,4EAA4E;IAC5E,KAAK,IAAI,IAAI;IAcb,8CAA8C;IAC9C,IAAI,IAAI,IAAI;IAYZ,+DAA+D;IAC/D,GAAG,CAAC,QAAQ,EAAE,QAAQ,GAAG,IAAI;IAK7B,SAAS,IAAI,cAAc;IAI3B,SAAS,CAAC,KAAK,EAAE,WAAW,CAAC,cAAc,CAAC,GAAG,cAAc;IAK7D,gDAAgD;IAChD,cAAc,CAAC,OAAO,EAAE,MAAM,GAAG,cAAc;IAI/C,cAAc,CAAC,OAAO,EAAE,MAAM,EAAE,KAAK,EAAE,WAAW,CAAC,cAAc,CAAC,GAAG,cAAc;IAMnF,gBAAgB,CAAC,OAAO,EAAE,MAAM,GAAG,IAAI;IAIvC,UAAU,CAAC,OAAO,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,GAAG,MAAM;IASnD,aAAa,CAAC,OAAO,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,GAAG,OAAO;IAKvD,SAAS,CAAC,OAAO,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,GAAG,IAAI;IAIhD,QAAQ,IAAI,aAAa;IAIzB,UAAU,IAAI,IAAI;IAIlB;;;OAGG;IACG,OAAO,CAAC,OAAO,EAAE,OAAO,EAAE,OAAO,GAAE;QAAE,MAAM,CAAC,EAAE,OAAO,CAAA;KAAO,GAAG,OAAO,CAAC,QAAQ,GAAG,IAAI,CAAC;YAwC/E,MAAM;IAkDpB,YAAY,CAAC,OAAO,EAAE,OAAO,GAAG,OAAO;IA4BvC,OAAO,CAAC,SAAS;IAKjB,OAAO,CAAC,UAAU;IAWlB,OAAO,CAAC,cAAc;CAUvB;AAED,wBAAgB,cAAc,CAAC,MAAM,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,eAAe,GAAG,QAAQ,CAElF"}
1
+ {"version":3,"file":"AntiSpam.d.ts","sourceRoot":"","sources":["../src/AntiSpam.ts"],"names":[],"mappings":"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"}
package/dist/AntiSpam.js CHANGED
@@ -4,15 +4,22 @@ exports.AntiSpam = void 0;
4
4
  exports.createAntiSpam = createAntiSpam;
5
5
  const discord_js_1 = require("discord.js");
6
6
  const defaults_1 = require("./defaults");
7
+ const accounts_1 = require("./detectors/accounts");
7
8
  const caps_1 = require("./detectors/caps");
8
9
  const duplicates_1 = require("./detectors/duplicates");
9
10
  const emojis_1 = require("./detectors/emojis");
10
11
  const files_1 = require("./detectors/files");
11
12
  const flood_1 = require("./detectors/flood");
13
+ const ghost_1 = require("./detectors/ghost");
14
+ const hop_1 = require("./detectors/hop");
12
15
  const images_1 = require("./detectors/images");
16
+ const length_1 = require("./detectors/length");
13
17
  const links_1 = require("./detectors/links");
14
18
  const mentions_1 = require("./detectors/mentions");
15
19
  const newlines_1 = require("./detectors/newlines");
20
+ const punctuation_1 = require("./detectors/punctuation");
21
+ const spoilers_1 = require("./detectors/spoilers");
22
+ const words_1 = require("./detectors/words");
16
23
  const zalgo_1 = require("./detectors/zalgo");
17
24
  const enforcement_1 = require("./enforcement");
18
25
  const MemoryStore_1 = require("./store/MemoryStore");
@@ -28,8 +35,15 @@ const DETECTOR_TYPES = [
28
35
  "file",
29
36
  "zalgo",
30
37
  "newline",
38
+ "account",
39
+ "length",
40
+ "word",
41
+ "hop",
42
+ "punctuation",
43
+ "spoiler",
44
+ "ghost",
31
45
  ];
32
- const ACTION_TYPES = ["delete", "warn", "timeout", "kick", "ban"];
46
+ const ACTION_TYPES = ["delete", "warn", "timeout", "kick", "ban", "addRole", "removeRole"];
33
47
  function emptyStats() {
34
48
  return {
35
49
  analyzed: 0,
@@ -46,8 +60,10 @@ class AntiSpam {
46
60
  detectors;
47
61
  options;
48
62
  guildConfigs = new Map();
63
+ channelConfigs = new Map();
49
64
  stats = emptyStats();
50
65
  started = false;
66
+ paused = false;
51
67
  cleanupTimer = null;
52
68
  onMessage = (message) => {
53
69
  void this.handle(message, false);
@@ -57,25 +73,34 @@ class AntiSpam {
57
73
  return;
58
74
  void this.handle(newMessage, true);
59
75
  };
76
+ onDelete = (message) => {
77
+ void this.handleDelete(message);
78
+ };
60
79
  constructor(client, options = {}) {
61
80
  this.client = client;
62
81
  this.options = options;
63
- const { preset, onDetect: _onDetect, onAction: _onAction, onError: _onError, ...configOptions } = options;
82
+ const { preset, onDetect: _d, onAction: _a, onError: _e, onCooldown: _c, ...configOptions } = options;
64
83
  this.config = (0, defaults_1.resolveConfig)(preset, configOptions);
65
84
  this.detectors = [
66
85
  files_1.fileDetector,
86
+ words_1.wordDetector,
67
87
  flood_1.floodDetector,
88
+ hop_1.hopDetector,
68
89
  duplicates_1.duplicateDetector,
69
90
  links_1.linkDetector,
70
91
  (0, images_1.createImageDetector)(this.store),
71
92
  mentions_1.mentionDetector,
72
93
  zalgo_1.zalgoDetector,
73
94
  newlines_1.newlineDetector,
95
+ punctuation_1.punctuationDetector,
96
+ spoilers_1.spoilerDetector,
97
+ accounts_1.accountDetector,
98
+ length_1.lengthDetector,
74
99
  caps_1.capsDetector,
75
100
  emojis_1.emojiDetector,
76
101
  ];
77
102
  }
78
- /** Starts listening to `messageCreate` (and `messageUpdate` if enabled). */
103
+ /** Starts listening to `messageCreate` (and `messageUpdate` / `messageDelete` if enabled). */
79
104
  start() {
80
105
  if (this.started)
81
106
  return this;
@@ -83,6 +108,9 @@ class AntiSpam {
83
108
  if (this.config.checkEdits) {
84
109
  this.client.on("messageUpdate", this.onEdit);
85
110
  }
111
+ if (this.config.checkDeletes) {
112
+ this.client.on("messageDelete", this.onDelete);
113
+ }
86
114
  this.cleanupTimer = setInterval(() => {
87
115
  this.store.cleanup(Date.now(), this.maxRetentionMs());
88
116
  }, this.config.cleanupIntervalMs);
@@ -96,6 +124,7 @@ class AntiSpam {
96
124
  return this;
97
125
  this.client.off("messageCreate", this.onMessage);
98
126
  this.client.off("messageUpdate", this.onEdit);
127
+ this.client.off("messageDelete", this.onDelete);
99
128
  if (this.cleanupTimer) {
100
129
  clearInterval(this.cleanupTimer);
101
130
  this.cleanupTimer = null;
@@ -103,6 +132,18 @@ class AntiSpam {
103
132
  this.started = false;
104
133
  return this;
105
134
  }
135
+ /** Temporarily skip all enforcement without removing listeners. */
136
+ pause() {
137
+ this.paused = true;
138
+ return this;
139
+ }
140
+ resume() {
141
+ this.paused = false;
142
+ return this;
143
+ }
144
+ isPaused() {
145
+ return this.paused;
146
+ }
106
147
  /** Adds a custom detector. It runs after the built-in ones. */
107
148
  use(detector) {
108
149
  this.detectors.push(detector);
@@ -127,6 +168,28 @@ class AntiSpam {
127
168
  clearGuildConfig(guildId) {
128
169
  this.guildConfigs.delete(guildId);
129
170
  }
171
+ getChannelConfig(guildId, channelId) {
172
+ return structuredClone(this.configFor(guildId, channelId));
173
+ }
174
+ setChannelConfig(guildId, channelId, patch) {
175
+ const key = `${guildId}:${channelId}`;
176
+ const previous = this.channelConfigs.get(key) ?? {};
177
+ this.channelConfigs.set(key, (0, defaults_1.mergeDeep)(previous, patch));
178
+ return this.getChannelConfig(guildId, channelId);
179
+ }
180
+ clearChannelConfig(guildId, channelId) {
181
+ this.channelConfigs.delete(`${guildId}:${channelId}`);
182
+ }
183
+ setRoleConfig(roleId, patch) {
184
+ const current = { ...this.config.roleOverrides };
185
+ current[roleId] = (0, defaults_1.mergeDeep)(current[roleId] ?? {}, patch);
186
+ this.config = (0, defaults_1.mergeDeep)(this.config, { roleOverrides: current });
187
+ }
188
+ clearRoleConfig(roleId) {
189
+ const current = { ...this.config.roleOverrides };
190
+ delete current[roleId];
191
+ this.config = { ...this.config, roleOverrides: current };
192
+ }
130
193
  getStrikes(guildId, userId) {
131
194
  return this.store.getStrikes(guildId, userId, Date.now(), this.configFor(guildId).punishment.strikeDecayMs);
132
195
  }
@@ -152,16 +215,21 @@ class AntiSpam {
152
215
  return null;
153
216
  if (!message.guild)
154
217
  return null;
155
- const config = this.configFor(message.guild.id);
218
+ const config = this.configFor(message.guild.id, message.channelId, message);
156
219
  const now = Date.now();
157
220
  const snapshot = this.toSnapshot(message, now);
158
221
  const history = options.isEdit
159
222
  ? this.store.getHistory(message.guild.id, message.author.id, now, this.maxRetentionMs(config))
160
223
  : this.store.pushMessage(message.guild.id, message.author.id, snapshot, this.maxRetentionMs(config));
161
224
  this.stats.analyzed += 1;
162
- const detectors = options.isEdit
163
- ? this.detectors.filter((detector) => detector.type === "link" || detector.type === "mention")
164
- : this.detectors;
225
+ const detectors = this.orderedDetectors(config).filter((detector) => {
226
+ if (config.disabledDetectors.includes(detector.type))
227
+ return false;
228
+ if (options.isEdit) {
229
+ return detector.type === "link" || detector.type === "mention" || detector.type === "word";
230
+ }
231
+ return true;
232
+ });
165
233
  for (const detector of detectors) {
166
234
  try {
167
235
  const incident = await detector.inspect({
@@ -181,7 +249,9 @@ class AntiSpam {
181
249
  return null;
182
250
  }
183
251
  async handle(message, isEdit) {
184
- const config = message.guild ? this.configFor(message.guild.id) : this.config;
252
+ if (this.paused)
253
+ return;
254
+ const config = message.guild ? this.configFor(message.guild.id, message.channelId, message) : this.config;
185
255
  if (!config.enabled)
186
256
  return;
187
257
  if (isEdit && !config.checkEdits)
@@ -199,6 +269,7 @@ class AntiSpam {
199
269
  if (config.punishment.deleteDuringCooldown && !config.dryRun && message.deletable) {
200
270
  await message.delete().catch((error) => this.options.onError?.(error, "cooldown-delete"));
201
271
  }
272
+ await this.options.onCooldown?.(message);
202
273
  return;
203
274
  }
204
275
  const incident = await this.analyze(message, { isEdit });
@@ -219,12 +290,47 @@ class AntiSpam {
219
290
  this.options.onError?.(error, "handle");
220
291
  }
221
292
  }
293
+ async handleDelete(message) {
294
+ if (this.paused)
295
+ return;
296
+ if (message.partial)
297
+ return;
298
+ if (!message.guild)
299
+ return;
300
+ const config = this.configFor(message.guild.id, message.channelId, message);
301
+ if (!config.enabled || !config.checkDeletes)
302
+ return;
303
+ if (this.shouldIgnore(message))
304
+ return;
305
+ if (config.disabledDetectors.includes("ghost"))
306
+ return;
307
+ try {
308
+ const incident = (0, ghost_1.inspectGhostPing)(message, config.ghostPing, Date.now());
309
+ if (!incident)
310
+ return;
311
+ this.stats.incidents += 1;
312
+ this.stats.byType.ghost += 1;
313
+ await this.options.onDetect?.(incident, message);
314
+ const strikes = this.store.addStrike(incident.guildId, incident.userId, Date.now(), config.punishment.strikeDecayMs);
315
+ const result = await (0, enforcement_1.applyPunishment)(message, incident, strikes, config);
316
+ this.store.markAction(incident.guildId, incident.userId, Date.now());
317
+ for (const action of result.applied) {
318
+ this.stats.actions[action] += 1;
319
+ }
320
+ await this.options.onAction?.(result);
321
+ }
322
+ catch (error) {
323
+ this.options.onError?.(error, "handleDelete");
324
+ }
325
+ }
222
326
  shouldIgnore(message) {
223
- const config = message.guild ? this.configFor(message.guild.id) : this.config;
327
+ const config = message.guild ? this.configFor(message.guild.id, message.channelId, message) : this.config;
224
328
  if (message.author.bot && config.ignoreBots)
225
329
  return true;
226
330
  if (message.webhookId && config.ignoreWebhooks)
227
331
  return true;
332
+ if (message.system && config.ignoreSystem)
333
+ return true;
228
334
  if (!message.guild)
229
335
  return true;
230
336
  if (config.ignored.guilds.includes(message.guild.id))
@@ -233,6 +339,13 @@ class AntiSpam {
233
339
  return true;
234
340
  if (config.ignored.users.includes(message.author.id))
235
341
  return true;
342
+ if (config.ignoreThreads && "isThread" in message.channel && typeof message.channel.isThread === "function" && message.channel.isThread()) {
343
+ return true;
344
+ }
345
+ const trimmed = message.content.trimStart();
346
+ if (config.ignored.prefixes.some((prefix) => prefix && trimmed.startsWith(prefix))) {
347
+ return true;
348
+ }
236
349
  const parentId = "parentId" in message.channel ? message.channel.parentId : null;
237
350
  if (parentId && config.ignored.categories.includes(parentId))
238
351
  return true;
@@ -243,15 +356,48 @@ class AntiSpam {
243
356
  if (config.ignoreAdministrators && member.permissions.has(discord_js_1.PermissionFlagsBits.Administrator)) {
244
357
  return true;
245
358
  }
359
+ for (const name of config.ignorePermissions) {
360
+ const flag = discord_js_1.PermissionFlagsBits[name];
361
+ if (flag && member.permissions.has(flag))
362
+ return true;
363
+ }
246
364
  if (config.ignored.roles.some((roleId) => member.roles.cache.has(roleId))) {
247
365
  return true;
248
366
  }
249
367
  }
250
368
  return false;
251
369
  }
252
- configFor(guildId) {
253
- const patch = this.guildConfigs.get(guildId);
254
- return patch ? (0, defaults_1.mergeDeep)(this.config, patch) : this.config;
370
+ configFor(guildId, channelId, message) {
371
+ let resolved = this.config;
372
+ const guildPatch = this.guildConfigs.get(guildId);
373
+ if (guildPatch)
374
+ resolved = (0, defaults_1.mergeDeep)(resolved, guildPatch);
375
+ const member = message?.member;
376
+ if (member) {
377
+ for (const [roleId, patch] of Object.entries(resolved.roleOverrides)) {
378
+ if (member.roles.cache.has(roleId) && patch) {
379
+ resolved = (0, defaults_1.mergeDeep)(resolved, patch);
380
+ }
381
+ }
382
+ }
383
+ if (channelId && resolved.channelOverrides[channelId]) {
384
+ resolved = (0, defaults_1.mergeDeep)(resolved, resolved.channelOverrides[channelId]);
385
+ }
386
+ if (channelId) {
387
+ const runtime = this.channelConfigs.get(`${guildId}:${channelId}`);
388
+ if (runtime)
389
+ resolved = (0, defaults_1.mergeDeep)(resolved, runtime);
390
+ }
391
+ return resolved;
392
+ }
393
+ orderedDetectors(config) {
394
+ if (config.detectorOrder.length === 0)
395
+ return this.detectors;
396
+ return [...this.detectors].sort((left, right) => {
397
+ const leftIndex = config.detectorOrder.indexOf(left.type);
398
+ const rightIndex = config.detectorOrder.indexOf(right.type);
399
+ return (leftIndex === -1 ? 999 : leftIndex) - (rightIndex === -1 ? 999 : rightIndex);
400
+ });
255
401
  }
256
402
  toSnapshot(message, now) {
257
403
  return {
@@ -270,6 +416,7 @@ class AntiSpam {
270
416
  config.images.windowMs,
271
417
  config.punishment.strikeDecayMs,
272
418
  config.punishment.cooldownMs,
419
+ config.hop.windowMs,
273
420
  ];
274
421
  return Math.max(30_000, ...windows);
275
422
  }
@@ -1 +1 @@
1
- {"version":3,"file":"AntiSpam.js","sourceRoot":"","sources":["../src/AntiSpam.ts"],"names":[],"mappings":";;;AA0UA,wCAEC;AA5UD,2CAIoB;AACpB,yCAAsD;AACtD,2CAAgD;AAChD,uDAA2D;AAC3D,+CAAmD;AACnD,6CAAiD;AACjD,6CAAkD;AAClD,+CAAyD;AACzD,6CAAiD;AACjD,mDAAuD;AACvD,mDAAuD;AACvD,6CAAkD;AAClD,+CAAgD;AAChD,qDAAkD;AAYlD,iDAAkD;AAElD,MAAM,cAAc,GAAmB;IACrC,OAAO;IACP,WAAW;IACX,MAAM;IACN,OAAO;IACP,SAAS;IACT,MAAM;IACN,OAAO;IACP,MAAM;IACN,OAAO;IACP,SAAS;CACV,CAAC;AAEF,MAAM,YAAY,GAAiB,CAAC,QAAQ,EAAE,MAAM,EAAE,SAAS,EAAE,MAAM,EAAE,KAAK,CAAC,CAAC;AAEhF,SAAS,UAAU;IACjB,OAAO;QACL,QAAQ,EAAE,CAAC;QACX,SAAS,EAAE,CAAC;QACZ,UAAU,EAAE,CAAC;QACb,MAAM,EAAE,MAAM,CAAC,WAAW,CAAC,cAAc,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,CAAC,IAAI,EAAE,CAAC,CAAC,CAAC,CAA4B;QAC9F,OAAO,EAAE,MAAM,CAAC,WAAW,CAAC,YAAY,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,CAAC,IAAI,EAAE,CAAC,CAAC,CAAC,CAA6B;KAC/F,CAAC;AACJ,CAAC;AAED,MAAa,QAAQ;IACV,MAAM,CAAS;IACf,KAAK,GAAG,IAAI,yBAAW,EAAE,CAAC;IAE3B,MAAM,CAAiB;IACd,SAAS,CAAa;IACtB,OAAO,CAAkB;IACzB,YAAY,GAAG,IAAI,GAAG,EAAuC,CAAC;IACvE,KAAK,GAAG,UAAU,EAAE,CAAC;IACrB,OAAO,GAAG,KAAK,CAAC;IAChB,YAAY,GAA0B,IAAI,CAAC;IAElC,SAAS,GAAG,CAAC,OAAgB,EAAQ,EAAE;QACtD,KAAK,IAAI,CAAC,MAAM,CAAC,OAAO,EAAE,KAAK,CAAC,CAAC;IACnC,CAAC,CAAC;IAEe,MAAM,GAAG,CAAC,UAAuC,EAAE,UAAmB,EAAQ,EAAE;QAC/F,IAAI,UAAU,IAAI,SAAS,IAAI,UAAU,IAAI,UAAU,CAAC,OAAO;YAAE,OAAO;QACxE,KAAK,IAAI,CAAC,MAAM,CAAC,UAAU,EAAE,IAAI,CAAC,CAAC;IACrC,CAAC,CAAC;IAEF,YAAY,MAAc,EAAE,UAA2B,EAAE;QACvD,IAAI,CAAC,MAAM,GAAG,MAAM,CAAC;QACrB,IAAI,CAAC,OAAO,GAAG,OAAO,CAAC;QACvB,MAAM,EAAE,MAAM,EAAE,QAAQ,EAAE,SAAS,EAAE,QAAQ,EAAE,SAAS,EAAE,OAAO,EAAE,QAAQ,EAAE,GAAG,aAAa,EAAE,GAAG,OAAO,CAAC;QAC1G,IAAI,CAAC,MAAM,GAAG,IAAA,wBAAa,EAAC,MAAM,EAAE,aAAa,CAAC,CAAC;QACnD,IAAI,CAAC,SAAS,GAAG;YACf,oBAAY;YACZ,qBAAa;YACb,8BAAiB;YACjB,oBAAY;YACZ,IAAA,4BAAmB,EAAC,IAAI,CAAC,KAAK,CAAC;YAC/B,0BAAe;YACf,qBAAa;YACb,0BAAe;YACf,mBAAY;YACZ,sBAAa;SACd,CAAC;IACJ,CAAC;IAED,4EAA4E;IAC5E,KAAK;QACH,IAAI,IAAI,CAAC,OAAO;YAAE,OAAO,IAAI,CAAC;QAC9B,IAAI,CAAC,MAAM,CAAC,EAAE,CAAC,eAAe,EAAE,IAAI,CAAC,SAAS,CAAC,CAAC;QAChD,IAAI,IAAI,CAAC,MAAM,CAAC,UAAU,EAAE,CAAC;YAC3B,IAAI,CAAC,MAAM,CAAC,EAAE,CAAC,eAAe,EAAE,IAAI,CAAC,MAAM,CAAC,CAAC;QAC/C,CAAC;QACD,IAAI,CAAC,YAAY,GAAG,WAAW,CAAC,GAAG,EAAE;YACnC,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC,GAAG,EAAE,EAAE,IAAI,CAAC,cAAc,EAAE,CAAC,CAAC;QACxD,CAAC,EAAE,IAAI,CAAC,MAAM,CAAC,iBAAiB,CAAC,CAAC;QAClC,IAAI,CAAC,YAAY,CAAC,KAAK,EAAE,EAAE,CAAC;QAC5B,IAAI,CAAC,OAAO,GAAG,IAAI,CAAC;QACpB,OAAO,IAAI,CAAC;IACd,CAAC;IAED,8CAA8C;IAC9C,IAAI;QACF,IAAI,CAAC,IAAI,CAAC,OAAO;YAAE,OAAO,IAAI,CAAC;QAC/B,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,eAAe,EAAE,IAAI,CAAC,SAAS,CAAC,CAAC;QACjD,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,eAAe,EAAE,IAAI,CAAC,MAAM,CAAC,CAAC;QAC9C,IAAI,IAAI,CAAC,YAAY,EAAE,CAAC;YACtB,aAAa,CAAC,IAAI,CAAC,YAAY,CAAC,CAAC;YACjC,IAAI,CAAC,YAAY,GAAG,IAAI,CAAC;QAC3B,CAAC;QACD,IAAI,CAAC,OAAO,GAAG,KAAK,CAAC;QACrB,OAAO,IAAI,CAAC;IACd,CAAC;IAED,+DAA+D;IAC/D,GAAG,CAAC,QAAkB;QACpB,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;QAC9B,OAAO,IAAI,CAAC;IACd,CAAC;IAED,SAAS;QACP,OAAO,eAAe,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;IACtC,CAAC;IAED,SAAS,CAAC,KAAkC;QAC1C,IAAI,CAAC,MAAM,GAAG,IAAA,oBAAS,EAAC,IAAI,CAAC,MAAM,EAAE,KAAK,CAAC,CAAC;QAC5C,OAAO,IAAI,CAAC,SAAS,EAAE,CAAC;IAC1B,CAAC;IAED,gDAAgD;IAChD,cAAc,CAAC,OAAe;QAC5B,OAAO,eAAe,CAAC,IAAI,CAAC,SAAS,CAAC,OAAO,CAAC,CAAC,CAAC;IAClD,CAAC;IAED,cAAc,CAAC,OAAe,EAAE,KAAkC;QAChE,MAAM,QAAQ,GAAG,IAAI,CAAC,YAAY,CAAC,GAAG,CAAC,OAAO,CAAC,IAAI,EAAE,CAAC;QACtD,IAAI,CAAC,YAAY,CAAC,GAAG,CAAC,OAAO,EAAE,IAAA,oBAAS,EAAC,QAAQ,EAAE,KAAK,CAAC,CAAC,CAAC;QAC3D,OAAO,IAAI,CAAC,cAAc,CAAC,OAAO,CAAC,CAAC;IACtC,CAAC;IAED,gBAAgB,CAAC,OAAe;QAC9B,IAAI,CAAC,YAAY,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC;IACpC,CAAC;IAED,UAAU,CAAC,OAAe,EAAE,MAAc;QACxC,OAAO,IAAI,CAAC,KAAK,CAAC,UAAU,CAC1B,OAAO,EACP,MAAM,EACN,IAAI,CAAC,GAAG,EAAE,EACV,IAAI,CAAC,SAAS,CAAC,OAAO,CAAC,CAAC,UAAU,CAAC,aAAa,CACjD,CAAC;IACJ,CAAC;IAED,aAAa,CAAC,OAAe,EAAE,MAAc;QAC3C,MAAM,MAAM,GAAG,IAAI,CAAC,SAAS,CAAC,OAAO,CAAC,CAAC;QACvC,OAAO,IAAI,CAAC,KAAK,CAAC,aAAa,CAAC,OAAO,EAAE,MAAM,EAAE,IAAI,CAAC,GAAG,EAAE,EAAE,MAAM,CAAC,UAAU,CAAC,UAAU,CAAC,CAAC;IAC7F,CAAC;IAED,SAAS,CAAC,OAAe,EAAE,MAAc;QACvC,IAAI,CAAC,KAAK,CAAC,SAAS,CAAC,OAAO,EAAE,MAAM,CAAC,CAAC;IACxC,CAAC;IAED,QAAQ;QACN,OAAO,eAAe,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;IACrC,CAAC;IAED,UAAU;QACR,IAAI,CAAC,KAAK,GAAG,UAAU,EAAE,CAAC;IAC5B,CAAC;IAED;;;OAGG;IACH,KAAK,CAAC,OAAO,CAAC,OAAgB,EAAE,UAAgC,EAAE;QAChE,IAAI,IAAI,CAAC,YAAY,CAAC,OAAO,CAAC;YAAE,OAAO,IAAI,CAAC;QAC5C,IAAI,CAAC,OAAO,CAAC,KAAK;YAAE,OAAO,IAAI,CAAC;QAEhC,MAAM,MAAM,GAAG,IAAI,CAAC,SAAS,CAAC,OAAO,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC;QAChD,MAAM,GAAG,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC;QACvB,MAAM,QAAQ,GAAG,IAAI,CAAC,UAAU,CAAC,OAAO,EAAE,GAAG,CAAC,CAAC;QAC/C,MAAM,OAAO,GAAG,OAAO,CAAC,MAAM;YAC5B,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,UAAU,CAAC,OAAO,CAAC,KAAK,CAAC,EAAE,EAAE,OAAO,CAAC,MAAM,CAAC,EAAE,EAAE,GAAG,EAAE,IAAI,CAAC,cAAc,CAAC,MAAM,CAAC,CAAC;YAC9F,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,WAAW,CACpB,OAAO,CAAC,KAAK,CAAC,EAAE,EAChB,OAAO,CAAC,MAAM,CAAC,EAAE,EACjB,QAAQ,EACR,IAAI,CAAC,cAAc,CAAC,MAAM,CAAC,CAC5B,CAAC;QAEN,IAAI,CAAC,KAAK,CAAC,QAAQ,IAAI,CAAC,CAAC;QAEzB,MAAM,SAAS,GAAG,OAAO,CAAC,MAAM;YAC9B,CAAC,CAAC,IAAI,CAAC,SAAS,CAAC,MAAM,CAAC,CAAC,QAAQ,EAAE,EAAE,CAAC,QAAQ,CAAC,IAAI,KAAK,MAAM,IAAI,QAAQ,CAAC,IAAI,KAAK,SAAS,CAAC;YAC9F,CAAC,CAAC,IAAI,CAAC,SAAS,CAAC;QAEnB,KAAK,MAAM,QAAQ,IAAI,SAAS,EAAE,CAAC;YACjC,IAAI,CAAC;gBACH,MAAM,QAAQ,GAAG,MAAM,QAAQ,CAAC,OAAO,CAAC;oBACtC,OAAO;oBACP,QAAQ;oBACR,OAAO;oBACP,MAAM;oBACN,GAAG;iBACJ,CAAC,CAAC;gBACH,IAAI,QAAQ;oBAAE,OAAO,QAAQ,CAAC;YAChC,CAAC;YAAC,OAAO,KAAK,EAAE,CAAC;gBACf,IAAI,CAAC,OAAO,CAAC,OAAO,EAAE,CAAC,KAAK,EAAE,YAAY,QAAQ,CAAC,IAAI,EAAE,CAAC,CAAC;YAC7D,CAAC;QACH,CAAC;QAED,OAAO,IAAI,CAAC;IACd,CAAC;IAEO,KAAK,CAAC,MAAM,CAAC,OAAgB,EAAE,MAAe;QACpD,MAAM,MAAM,GAAG,OAAO,CAAC,KAAK,CAAC,CAAC,CAAC,IAAI,CAAC,SAAS,CAAC,OAAO,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,MAAM,CAAC;QAC9E,IAAI,CAAC,MAAM,CAAC,OAAO;YAAE,OAAO;QAC5B,IAAI,MAAM,IAAI,CAAC,MAAM,CAAC,UAAU;YAAE,OAAO;QACzC,IAAI,IAAI,CAAC,YAAY,CAAC,OAAO,CAAC;YAAE,OAAO;QACvC,IAAI,CAAC,OAAO,CAAC,KAAK;YAAE,OAAO;QAE3B,IAAI,CAAC;YACH,IAAI,IAAI,CAAC,KAAK,CAAC,aAAa,CAAC,OAAO,CAAC,KAAK,CAAC,EAAE,EAAE,OAAO,CAAC,MAAM,CAAC,EAAE,EAAE,IAAI,CAAC,GAAG,EAAE,EAAE,MAAM,CAAC,UAAU,CAAC,UAAU,CAAC,EAAE,CAAC;gBAC5G,IAAI,CAAC,KAAK,CAAC,UAAU,IAAI,CAAC,CAAC;gBAC3B,IAAI,CAAC,MAAM,EAAE,CAAC;oBACZ,IAAI,CAAC,KAAK,CAAC,WAAW,CACpB,OAAO,CAAC,KAAK,CAAC,EAAE,EAChB,OAAO,CAAC,MAAM,CAAC,EAAE,EACjB,IAAI,CAAC,UAAU,CAAC,OAAO,EAAE,IAAI,CAAC,GAAG,EAAE,CAAC,EACpC,IAAI,CAAC,cAAc,CAAC,MAAM,CAAC,CAC5B,CAAC;gBACJ,CAAC;gBACD,IAAI,MAAM,CAAC,UAAU,CAAC,oBAAoB,IAAI,CAAC,MAAM,CAAC,MAAM,IAAI,OAAO,CAAC,SAAS,EAAE,CAAC;oBAClF,MAAM,OAAO,CAAC,MAAM,EAAE,CAAC,KAAK,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,IAAI,CAAC,OAAO,CAAC,OAAO,EAAE,CAAC,KAAK,EAAE,iBAAiB,CAAC,CAAC,CAAC;gBAC5F,CAAC;gBACD,OAAO;YACT,CAAC;YAED,MAAM,QAAQ,GAAG,MAAM,IAAI,CAAC,OAAO,CAAC,OAAO,EAAE,EAAE,MAAM,EAAE,CAAC,CAAC;YACzD,IAAI,CAAC,QAAQ;gBAAE,OAAO;YAEtB,IAAI,CAAC,KAAK,CAAC,SAAS,IAAI,CAAC,CAAC;YAC1B,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,QAAQ,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;YAEtC,MAAM,IAAI,CAAC,OAAO,CAAC,QAAQ,EAAE,CAAC,QAAQ,EAAE,OAAO,CAAC,CAAC;YAEjD,MAAM,OAAO,GAAG,IAAI,CAAC,KAAK,CAAC,SAAS,CAClC,QAAQ,CAAC,OAAO,EAChB,QAAQ,CAAC,MAAM,EACf,IAAI,CAAC,GAAG,EAAE,EACV,MAAM,CAAC,UAAU,CAAC,aAAa,CAChC,CAAC;YAEF,MAAM,MAAM,GAAG,MAAM,IAAA,6BAAe,EAAC,OAAO,EAAE,QAAQ,EAAE,OAAO,EAAE,MAAM,CAAC,CAAC;YACzE,IAAI,CAAC,KAAK,CAAC,UAAU,CAAC,QAAQ,CAAC,OAAO,EAAE,QAAQ,CAAC,MAAM,EAAE,IAAI,CAAC,GAAG,EAAE,CAAC,CAAC;YACrE,KAAK,MAAM,MAAM,IAAI,MAAM,CAAC,OAAO,EAAE,CAAC;gBACpC,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC;YAClC,CAAC;YACD,MAAM,IAAI,CAAC,OAAO,CAAC,QAAQ,EAAE,CAAC,MAAM,CAAC,CAAC;QACxC,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,IAAI,CAAC,OAAO,CAAC,OAAO,EAAE,CAAC,KAAK,EAAE,QAAQ,CAAC,CAAC;QAC1C,CAAC;IACH,CAAC;IAED,YAAY,CAAC,OAAgB;QAC3B,MAAM,MAAM,GAAG,OAAO,CAAC,KAAK,CAAC,CAAC,CAAC,IAAI,CAAC,SAAS,CAAC,OAAO,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,MAAM,CAAC;QAE9E,IAAI,OAAO,CAAC,MAAM,CAAC,GAAG,IAAI,MAAM,CAAC,UAAU;YAAE,OAAO,IAAI,CAAC;QACzD,IAAI,OAAO,CAAC,SAAS,IAAI,MAAM,CAAC,cAAc;YAAE,OAAO,IAAI,CAAC;QAC5D,IAAI,CAAC,OAAO,CAAC,KAAK;YAAE,OAAO,IAAI,CAAC;QAChC,IAAI,MAAM,CAAC,OAAO,CAAC,MAAM,CAAC,QAAQ,CAAC,OAAO,CAAC,KAAK,CAAC,EAAE,CAAC;YAAE,OAAO,IAAI,CAAC;QAClE,IAAI,MAAM,CAAC,OAAO,CAAC,QAAQ,CAAC,QAAQ,CAAC,OAAO,CAAC,SAAS,CAAC;YAAE,OAAO,IAAI,CAAC;QACrE,IAAI,MAAM,CAAC,OAAO,CAAC,KAAK,CAAC,QAAQ,CAAC,OAAO,CAAC,MAAM,CAAC,EAAE,CAAC;YAAE,OAAO,IAAI,CAAC;QAElE,MAAM,QAAQ,GAAG,UAAU,IAAI,OAAO,CAAC,OAAO,CAAC,CAAC,CAAC,OAAO,CAAC,OAAO,CAAC,QAAQ,CAAC,CAAC,CAAC,IAAI,CAAC;QACjF,IAAI,QAAQ,IAAI,MAAM,CAAC,OAAO,CAAC,UAAU,CAAC,QAAQ,CAAC,QAAQ,CAAC;YAAE,OAAO,IAAI,CAAC;QAE1E,IAAI,MAAM,CAAC,WAAW,IAAI,OAAO,CAAC,MAAM,CAAC,EAAE,KAAK,OAAO,CAAC,KAAK,CAAC,OAAO;YAAE,OAAO,IAAI,CAAC;QAEnF,MAAM,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC;QAC9B,IAAI,MAAM,EAAE,CAAC;YACX,IAAI,MAAM,CAAC,oBAAoB,IAAI,MAAM,CAAC,WAAW,CAAC,GAAG,CAAC,gCAAmB,CAAC,aAAa,CAAC,EAAE,CAAC;gBAC7F,OAAO,IAAI,CAAC;YACd,CAAC;YACD,IAAI,MAAM,CAAC,OAAO,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,MAAM,EAAE,EAAE,CAAC,MAAM,CAAC,KAAK,CAAC,KAAK,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC,EAAE,CAAC;gBAC1E,OAAO,IAAI,CAAC;YACd,CAAC;QACH,CAAC;QAED,OAAO,KAAK,CAAC;IACf,CAAC;IAEO,SAAS,CAAC,OAAe;QAC/B,MAAM,KAAK,GAAG,IAAI,CAAC,YAAY,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC;QAC7C,OAAO,KAAK,CAAC,CAAC,CAAC,IAAA,oBAAS,EAAC,IAAI,CAAC,MAAM,EAAE,KAAK,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,MAAM,CAAC;IAC7D,CAAC;IAEO,UAAU,CAAC,OAAgB,EAAE,GAAW;QAC9C,OAAO;YACL,EAAE,EAAE,OAAO,CAAC,EAAE;YACd,SAAS,EAAE,OAAO,CAAC,SAAS;YAC5B,OAAO,EAAE,OAAO,CAAC,OAAO;YACxB,UAAU,EAAE,IAAA,yBAAa,EAAC,OAAO,CAAC,OAAO,CAAC;YAC1C,SAAS,EAAE,GAAG;YACd,gBAAgB,EAAE,EAAE;SACrB,CAAC;IACJ,CAAC;IAEO,cAAc,CAAC,SAAyB,IAAI,CAAC,MAAM;QACzD,MAAM,OAAO,GAAG;YACd,MAAM,CAAC,KAAK,CAAC,QAAQ;YACrB,MAAM,CAAC,UAAU,CAAC,QAAQ;YAC1B,MAAM,CAAC,MAAM,CAAC,QAAQ;YACtB,MAAM,CAAC,UAAU,CAAC,aAAa;YAC/B,MAAM,CAAC,UAAU,CAAC,UAAU;SAC7B,CAAC;QACF,OAAO,IAAI,CAAC,GAAG,CAAC,MAAM,EAAE,GAAG,OAAO,CAAC,CAAC;IACtC,CAAC;CACF;AAhRD,4BAgRC;AAED,SAAgB,cAAc,CAAC,MAAc,EAAE,OAAyB;IACtE,OAAO,IAAI,QAAQ,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;AACvC,CAAC"}
1
+ {"version":3,"file":"AntiSpam.js","sourceRoot":"","sources":["../src/AntiSpam.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"defaults.d.ts","sourceRoot":"","sources":["../src/defaults.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACV,WAAW,EACX,UAAU,EACV,cAAc,EACf,MAAM,SAAS,CAAC;AA+LjB,wBAAgB,SAAS,CAAC,CAAC,EAAE,IAAI,EAAE,CAAC,EAAE,QAAQ,CAAC,EAAE,WAAW,CAAC,CAAC,CAAC,GAAG,CAAC,CAuBlE;AAED,wBAAgB,aAAa,CAC3B,MAAM,EAAE,UAAU,GAAG,SAAS,EAC9B,OAAO,GAAE,WAAW,CAAC,cAAc,CAAM,GACxC,cAAc,CAGhB;AAED,eAAO,MAAM,cAAc,gBAAO,CAAC"}
1
+ {"version":3,"file":"defaults.d.ts","sourceRoot":"","sources":["../src/defaults.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACV,WAAW,EACX,UAAU,EACV,cAAc,EACf,MAAM,SAAS,CAAC;AA2QjB,wBAAgB,SAAS,CAAC,CAAC,EAAE,IAAI,EAAE,CAAC,EAAE,QAAQ,CAAC,EAAE,WAAW,CAAC,CAAC,CAAC,GAAG,CAAC,CAuBlE;AAED,wBAAgB,aAAa,CAC3B,MAAM,EAAE,UAAU,GAAG,SAAS,EAC9B,OAAO,GAAE,WAAW,CAAC,cAAc,CAAM,GACxC,cAAc,CAGhB;AAED,eAAO,MAAM,cAAc,gBAAO,CAAC"}
package/dist/defaults.js CHANGED
@@ -6,21 +6,25 @@ exports.resolveConfig = resolveConfig;
6
6
  const BASE = {
7
7
  enabled: true,
8
8
  dryRun: false,
9
+ locale: "en",
9
10
  ignoreBots: true,
10
11
  ignoreWebhooks: true,
11
12
  ignoreOwner: true,
12
13
  ignoreAdministrators: true,
14
+ ignorePermissions: [],
13
15
  ignored: {
14
16
  users: [],
15
17
  roles: [],
16
18
  channels: [],
17
19
  categories: [],
18
20
  guilds: [],
21
+ prefixes: [],
19
22
  },
20
23
  flood: {
21
24
  enabled: true,
22
25
  maxMessages: 5,
23
26
  windowMs: 4000,
27
+ sameChannelOnly: false,
24
28
  severity: "medium",
25
29
  },
26
30
  duplicates: {
@@ -28,6 +32,7 @@ const BASE = {
28
32
  maxRepeats: 3,
29
33
  windowMs: 12_000,
30
34
  similarity: 0.9,
35
+ sameChannelOnly: false,
31
36
  severity: "medium",
32
37
  },
33
38
  links: {
@@ -60,6 +65,9 @@ const BASE = {
60
65
  suspiciousTlds: [],
61
66
  customPatterns: [],
62
67
  extraPhishingKeywords: [],
68
+ maxLinks: 0,
69
+ scanEmbeds: true,
70
+ blockOauth: true,
63
71
  severity: "high",
64
72
  },
65
73
  images: {
@@ -71,6 +79,8 @@ const BASE = {
71
79
  includeStickers: true,
72
80
  includeEmbeds: true,
73
81
  crossUserThreshold: 0,
82
+ skipContentTypes: [],
83
+ maxAttachments: 0,
74
84
  severity: "medium",
75
85
  },
76
86
  mentions: {
@@ -78,6 +88,7 @@ const BASE = {
78
88
  maxMentions: 6,
79
89
  blockEveryone: true,
80
90
  blockHere: true,
91
+ maxRepeatsOfSame: 0,
81
92
  severity: "high",
82
93
  },
83
94
  caps: {
@@ -107,6 +118,7 @@ const BASE = {
107
118
  "jar",
108
119
  "apk",
109
120
  ],
121
+ maxBytes: 0,
110
122
  severity: "critical",
111
123
  },
112
124
  zalgo: {
@@ -119,15 +131,59 @@ const BASE = {
119
131
  maxNewlines: 15,
120
132
  severity: "low",
121
133
  },
134
+ accounts: {
135
+ enabled: false,
136
+ minAgeDays: 3,
137
+ blockDefaultAvatar: false,
138
+ minGuildAgeDays: 0,
139
+ severity: "medium",
140
+ },
141
+ length: {
142
+ enabled: false,
143
+ maxCharacters: 1000,
144
+ severity: "low",
145
+ },
146
+ words: {
147
+ enabled: false,
148
+ list: [],
149
+ regex: [],
150
+ ignoreCase: true,
151
+ matchWholeWord: true,
152
+ severity: "high",
153
+ },
154
+ hop: {
155
+ enabled: true,
156
+ maxChannels: 5,
157
+ windowMs: 8_000,
158
+ severity: "high",
159
+ },
160
+ punctuation: {
161
+ enabled: true,
162
+ maxRepeated: 10,
163
+ severity: "low",
164
+ },
165
+ spoilers: {
166
+ enabled: true,
167
+ maxSpoilers: 8,
168
+ severity: "low",
169
+ },
170
+ ghostPing: {
171
+ enabled: false,
172
+ minMentions: 1,
173
+ maxAgeMs: 15_000,
174
+ severity: "high",
175
+ },
122
176
  punishment: {
123
177
  deleteMessage: true,
124
178
  warnUser: true,
125
179
  dmUser: false,
126
- warnMessage: "{user}, tu mensaje se ha bloqueado: {reason}. Strikes: {strikes}.",
180
+ warnMessage: "",
127
181
  timeout: {
128
182
  enabled: true,
129
183
  durationMs: 60_000,
130
184
  minStrikes: 2,
185
+ scale: "none",
186
+ maxDurationMs: 28 * 24 * 60 * 60 * 1000,
131
187
  },
132
188
  kick: {
133
189
  enabled: false,
@@ -142,9 +198,20 @@ const BASE = {
142
198
  strikeDecayMs: 15 * 60_000,
143
199
  cooldownMs: 8_000,
144
200
  deleteDuringCooldown: true,
201
+ warnAsEmbed: false,
202
+ addRoleIds: [],
203
+ removeRoleIds: [],
204
+ minStrikesForRoles: 1,
145
205
  },
146
206
  checkEdits: true,
207
+ checkDeletes: true,
208
+ ignoreThreads: false,
209
+ ignoreSystem: true,
147
210
  cleanupIntervalMs: 60_000,
211
+ disabledDetectors: [],
212
+ detectorOrder: [],
213
+ channelOverrides: {},
214
+ roleOverrides: {},
148
215
  };
149
216
  const PRESET_OVERRIDES = {
150
217
  lenient: {
@@ -156,6 +223,9 @@ const PRESET_OVERRIDES = {
156
223
  emojis: { maxEmojis: 20 },
157
224
  zalgo: { enabled: false },
158
225
  newlines: { maxNewlines: 25 },
226
+ hop: { enabled: false },
227
+ punctuation: { enabled: false },
228
+ spoilers: { maxSpoilers: 15 },
159
229
  links: {
160
230
  blockInvites: false,
161
231
  blockShorteners: false,
@@ -163,6 +233,7 @@ const PRESET_OVERRIDES = {
163
233
  punishment: {
164
234
  timeout: { enabled: false, durationMs: 30_000, minStrikes: 3 },
165
235
  },
236
+ locale: "en",
166
237
  },
167
238
  balanced: {},
168
239
  strict: {
@@ -177,10 +248,16 @@ const PRESET_OVERRIDES = {
177
248
  links: {
178
249
  blockInvites: true,
179
250
  blockShorteners: true,
251
+ maxLinks: 4,
180
252
  severity: "critical",
181
253
  },
254
+ accounts: { enabled: true, minAgeDays: 1, minGuildAgeDays: 0 },
255
+ length: { enabled: true, maxCharacters: 800 },
256
+ hop: { maxChannels: 3, windowMs: 6_000 },
257
+ ghostPing: { enabled: true },
258
+ words: { enabled: false },
182
259
  punishment: {
183
- timeout: { enabled: true, durationMs: 5 * 60_000, minStrikes: 1 },
260
+ timeout: { enabled: true, durationMs: 5 * 60_000, minStrikes: 1, scale: "linear" },
184
261
  kick: { enabled: false, minStrikes: 4 },
185
262
  },
186
263
  },
@@ -1 +1 @@
1
- {"version":3,"file":"defaults.js","sourceRoot":"","sources":["../src/defaults.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"defaults.js","sourceRoot":"","sources":["../src/defaults.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,3 @@
1
+ import type { Detector } from "../types";
2
+ export declare const accountDetector: Detector;
3
+ //# sourceMappingURL=accounts.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"accounts.d.ts","sourceRoot":"","sources":["../../src/detectors/accounts.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,QAAQ,EAA2B,MAAM,UAAU,CAAC;AAKlE,eAAO,MAAM,eAAe,EAAE,QA6C7B,CAAC"}