-
Notifications
You must be signed in to change notification settings - Fork 19
/
Copy pathcensorRules.ts
293 lines (288 loc) · 11.3 KB
/
censorRules.ts
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
import { ZALGO_REGEX } from './constants';
export enum CensorRuleType {
Swear,
CopyPasta,
Invite,
Spam,
Zalgo,
}
const { Swear, CopyPasta, Invite, Spam, Zalgo } = CensorRuleType;
export const CENSOR_RULES = [
{ rule: ZALGO_REGEX.toString(), type: Zalgo, enabled: true },
{ rule: '\\b(h(o|0)?rny)', type: Swear, enabled: true },
{ rule: '\\b(b(o|0)(o|0)bs?)', type: Swear, enabled: true },
{
rule: '\\b(anal(?!(ysis|y(s|z)(e|ing)|(y|i)tic(al|s)?|ogy)))',
type: Swear,
enabled: true,
},
{
rule: '\\b(a\\.?(ss|\\$\\$)+(es)?(?![a-z]))',
type: Swear,
enabled: true,
},
{ rule: '\\b(sl(u|e)t)', type: Swear, enabled: true },
{ rule: '\\b(jerks)', type: Swear, enabled: true },
{ rule: '\\b(brainfuck)', type: Swear, enabled: true },
{ rule: '\\b(d(i|l|1|!)?c!?k)', type: Swear, enabled: true },
{
rule: '\\b(s(e|3)x(?!(y|uality|ualities|ist|ism)))',
type: Swear,
enabled: true,
},
{ rule: '\\b(bastard)', type: Swear, enabled: true },
{ rule: '\\b((send)? ?nudes?)', type: Swear, enabled: true },
{ rule: '\\b(orgas(i|l|1|a)?m)', type: Swear, enabled: true },
{ rule: '\\b(c(0|o)(0|o)ze)', type: Swear, enabled: true },
{ rule: '\\b((i|l|1)ab(i|l|1)a)', type: Swear, enabled: true },
{ rule: '\\b(c(i|l|1)(i|l|1)t)', type: Swear, enabled: true },
{ rule: '\\b(vu(i|l|1)va)', type: Swear, enabled: true },
{ rule: '\\b(bestiality)', type: Swear, enabled: true },
{ rule: '\\b(semen)', type: Swear, enabled: true },
{ rule: '\\b(rape(ist)?)', type: Swear, enabled: true },
{ rule: '\\b(douche)', type: Swear, enabled: true },
{ rule: '\\b(c(u|v)cc(i|l|1))', type: Swear, enabled: true },
{ rule: '\\b(yiff)', type: Swear, enabled: true },
{ rule: '\\b(slag)', type: Swear, enabled: true },
{ rule: '\\b(twat)', type: Swear, enabled: true },
{ rule: '\\b(testicles?)', type: Swear, enabled: true },
{ rule: '\\b(p\\.?u\\.?s\\.?s\\.?y)', type: Swear, enabled: true },
{ rule: '\\b(h(e|3)nta(i|l|1))', type: Swear, enabled: true },
{ rule: '\\b(virgin(?!ia)(ity)?)', type: Swear, enabled: true },
{ rule: '\\b(paki)', type: Swear, enabled: true},
{ rule: '\\b(m(i|l|1)lf)', type: Swear, enabled: true },
{ rule: '\\b(sped)', type: Swear, enabled: true },
{ rule: '\\b(brothel)', type: Swear, enabled: true },
{ rule: '\\b(thot)', type: Swear, enabled: true },
{ rule: '\\b(test(e|i|l|1)s)', type: Swear, enabled: true },
{
rule:
'\\b((n|/\\\\/)(1|i|!|e|3)(g|gg|bb|qq)(?!(otiat(e|ing|or|ion)|otiable|lect(able|ed)?|(i|a)tive|le|erian?))(?!(h|at))(a|3r|er)?)',
type: Swear,
enabled: true,
},
{
rule: '\\b(c(o|0)ck(?!roach|er spaniel|y)(head|sucker)?)',
type: Swear,
enabled: true,
},
{ rule: '\\b(tit(t?ies|s)?)', type: Swear, enabled: true },
{ rule: '(.)(?=([a-z\\.]){17})', type: Spam, enabled: false },
{
rule: '\\b(mine)?(f(\\.)?((uc|[uc]|vc)(k|q)|(uk|uc|\\.ck|(\\.|,)uck)))',
type: Swear,
enabled: true,
},
{ rule: '\\b(wh?at (da|the) (fawk)?(f(o|0|e|a)k)?)', type: Swear, enabled: true },
{ rule: '\\b((f(o|0|a|e)c?k|fawk) (u|v|you)?)', type: Swear, enabled: true },
{ rule: '\\b(fa(w|c)k)', type: Swear, enabled: true },
{ rule: '\\b(intercourse)', type: Swear, enabled: true },
{ rule: '\\b(c( |\\.?)?u( |\\.?)?m)', type: Swear, enabled: true },
{ rule: '\\b(semen)', type: Swear, enabled: true },
{ rule: '\\b(anus)', type: Swear, enabled: true },
{ rule: '\\b(f(u|v)hq)', type: Swear, enabled: true },
{ rule: '\\b(dildo)', type: Swear, enabled: true },
{
rule: '\\b(r ?e ?t ?a ?r ?(d(?!ant)|te?d))',
type: Swear,
enabled: true,
},
{ rule: '\\b(bl(0|o)wj(0|o)b)', type: Swear, enabled: true },
{ rule: '\\b(p(e|3)nn?(i|l|1)s)', type: Swear, enabled: true },
{ rule: '\\b(p(i|l|1)ss)', type: Swear, enabled: false },
{ rule: '\\b(c(u)nt)', type: Swear, enabled: true },
{ rule: '\\b(whore)', type: Swear, enabled: true },
{ rule: '\\b(b(i|\\*)t?ch)', type: Swear, enabled: true },
{ rule: '\\b(asshole)', type: Swear, enabled: true },
{ rule: '\\b(prick)', type: Swear, enabled: true },
{ rule: '\\b(fag(got)?)', type: Swear, enabled: true },
{ rule: '\\b(vagina)', type: Swear, enabled: true },
{ rule: '\\b(mibb(a|er))', type: Swear, enabled: true },
{ rule: '\\b((hub)?p(o|0)rn(hub)?)', type: Swear, enabled: true },
{ rule: '\\b(sperm)', type: Swear, enabled: true },
{ rule: '\\b(aroused)', type: Swear, enabled: true },
{ rule: '\\b(wanker)', type: Swear, enabled: true },
{ rule: '\\b(gas( )?(the)?( )?jews)', type: Swear, enabled: true },
{ rule: '\\b(hitler|nazi)', type: Swear, enabled: true },
{ rule: '\\b(erection)', type: Swear, enabled: true },
{ rule: '\\b(fisting)', type: Swear, enabled: true },
{ rule: '\\b(motherfucker)', type: Swear, enabled: true },
{ rule: '\\b(chode)', type: Swear, enabled: true },
{
rule: '\\b(masterbat(e|ion|or))',
type: Swear,
enabled: true,
},
{ rule: '\\b(suicide)', type: Swear, enabled: true },
{ rule: '\\b(wank)', type: Swear, enabled: true },
{
rule: '\\b(brazzerss?|youporn|spankbang|xvideos)',
type: Swear,
enabled: true,
},
{ rule: '\\b(buttplug)', type: Swear, enabled: true },
{ rule: '\\b(chingar)', type: Swear, enabled: true },
{ rule: '\\b(marijuana|weed)', type: Swear, enabled: true },
{ rule: '\\b(d(i|y)ke)', type: Swear, enabled: true },
{ rule: '\\b(beaner)', type: Swear, enabled: true },
{ rule: '\\b(cyka)', type: Swear, enabled: true },
{ rule: '\\b(blyat)', type: Swear, enabled: true },
//These are grabify links
{ rule: '\\b(grabify.link)', type: Swear, enabled: true },
{ rule: '\\b(lovebird.guru)', type: Swear, enabled: true },
{ rule: '\\b(trulove.guru)', type: Swear, enabled: true },
{ rule: '\\b(dateing.club)', type: Swear, enabled: true },
{ rule: '\\b(shrekis.life)', type: Swear, enabled: true },
{ rule: '\\b(headshot.monster)', type: Swear, enabled: true },
{ rule: '\\b(gaming-at-my.best)', type: Swear, enabled: true },
{ rule: '\\b(progaming.monster)', type: Swear, enabled: true },
{ rule: '\\b(yourmy.monster)', type: Swear, enabled: true },
{ rule: '\\b(imageshare.best)', type: Swear, enabled: true },
{ rule: '\\b(screenshot.best)', type: Swear, enabled: true },
{ rule: '\\b(gamingfun.me)', type: Swear, enabled: true },
{ rule: '\\b(catsnthing.com)', type: Swear, enabled: true },
{ rule: '\\b(catsnthings.fun)', type: Swear, enabled: true },
{ rule: '\\b(curiouscat.club)', type: Swear, enabled: true },
{ rule: '\\b(joinmy.site)', type: Swear, enabled: true },
{ rule: '\\b(fortnitechat.site)', type: Swear, enabled: true },
{ rule: '\\b(fortnight.space)', type: Swear, enabled: true },
{ rule: '\\b(freegiftcards.co)', type: Swear, enabled: true },
{ rule: '\\b(stopify.co)', type: Swear, enabled: true },
{ rule: '\\b(leancoding.co)', type: Swear, enabled: true },
//These are known fake nitro links
{ rule: '\\b(dlscord.org)', type: Swear, enabled: true },
{ rule: '\\b(dlscord-nitro.info)', type: Swear, enabled: true },
{ rule: '\\b(nitro-drop.com)', type: Swear, enabled: true },
{ rule: '\\b(discordgift.site)', type: Swear, enabled: true },
{ rule: '\\b(gamex.codes)', type: Swear, enabled: true },
{ rule: '\\b(blogspot.com)', type: Swear, enabled: true },
{ rule: '\\b(shared-tools.xyz)', type: Swear, enabled: true },
{ rule: '\\b(techgenerator.xyz)', type: Swear, enabled: true },
{ rule: '\\b(steamcomminuty.com)', type: Swear, enabled: true },
{ rule: '\\b(rbuxfree.com)', type: Swear, enabled: true },
{ rule: '\\b(genrates.xyz)', type: Swear, enabled: true },
{ rule: '\\b(psp-haxors.com)', type: Swear, enabled: true },
{ rule: '\\b(arcades.tech)', type: Swear, enabled: true },
{ rule: '\\b(sehotgame.xyz)', type: Swear, enabled: true },
{ rule: '\\b(appninjas.xyz)', type: Swear, enabled: true },
{ rule: '\\b(steamcomminutty.ru)', type: Swear, enabled: true },
{ rule: '\\b(giveawey.com)', type: Swear, enabled: true },
{ rule: '\\b(steamsnitro.ru)', type: Swear, enabled: true },
{ rule: '\\b(discorcl-gift.ru)', type: Swear, enabled: true },
{ rule: '\\b(dlscorldnitro.store)', type: Swear, enabled: true },
{ rule: '\\b(steamdiscord.com)', type: Swear, enabled: true },
{ rule: '\\b(dlscord-app.com)', type: Swear, enabled: true },
{ rule: '\\b(discords-nitro.xyz)', type: Swear, enabled: true },
{ rule: '\\b(discord-drop.xyz)', type: Swear, enabled: true },
{ rule: '\\b(gift-g2.ru)', type: Swear, enabled: true },
{ rule: '\\b(discord-give.com)', type: Swear, enabled: true },
{ rule: '\\b(discord-app.net)', type: Swear, enabled: true },
{ rule: '\\b(discocrd-nitro.com)', type: Swear, enabled: true },
{ rule: '\\b(dlscord.org)', type: Swear, enabled: true },
{ rule: '\\b(dlscordsteam.com)', type: Swear, enabled: true },
{ rule: '\\b(discorcll.com)', type: Swear, enabled: true },
{ rule: '\\b(discorid.gift)', type: Swear, enabled: true },
{ rule: '\\b(dlscord-app.info)', type: Swear, enabled: true },
{ rule: '\\b(merde)', type: Swear, enabled: true },
{
rule: '\\s(\\[[a-z0-9]{8,}\\])$',
type: Spam,
enabled: false,
},
{ rule: '\\b(ddos)', type: Swear, enabled: false },
{ rule: '卍', type: Swear, enabled: true },
{ rule: '\\b((?<!s)kys)', type: Swear, enabled: true },
{ rule: '\\b(kcuf)', type: Swear, enabled: true },
{ rule: '\\b((bull?|horse)shit)', type: Swear, enabled: true },
{ rule: '\\b(kanker)', type: Swear, enabled: true },
{ rule: '\\b(:middle_finger:)', type: Swear, enabled: true },
{
rule: '\\b((dip|dog)?s?(s|$|5)h(\\.|,)?(i|1|!)?1?(t|\\+))',
type: Swear,
enabled: true,
},
{ rule: '\\b(naked)', type: Swear, enabled: false },
{ rule: '\\b(cancer)', type: Swear, enabled: true },
{ rule: '\\b(pp(?![a-z]))', type: Swear, enabled: true },
{
rule: '\\b(chupa mi polla|sut min pik)',
type: Swear,
enabled: true,
},
{
rule: '[█゜▔゛▫■œ∑´®†¥¨ˆøπ¬˚∆˙©ƒ∂ßåΩ≈ç√∫˜µ]{8,}',
type: Spam,
enabled: true,
},
{ rule: '\\b(s(u|v)g(o|0)ma ?d(i|1|l)c?k)', type: Swear, enabled: true },
{ rule: '\\b(polidicks)', type: Swear, enabled: true },
{ rule: '\\b(gayass)', type: Swear, enabled: true },
{ rule: '\\b(dumbass)', type: Swear, enabled: true },
{ rule: '\\b(p(a)?edo(file)?)', type: Swear, enabled: true },
{
type: Swear,
enabled: true,
rule: '\\b(LiquidBounce|MoonX)',
},
{
rule:
'\\b(([0-9]|[1-9][0-9]|1[0-9]{2}|2[0-4][0-9]|25[0-5])\\.){3}([0-9]|[1-9][0-9]|1[0-9]{2}|2[0-4][0-9]|25[0-5])',
type: Swear,
enabled: true,
},
{
rule:
String.raw`\b(n( |\\)?i( |\\)?g( |\\)?g( |\\)?(e( |\\)?r|a)|f( |\.|,|\*|_)?(u|ú)?( |\.|,|\*|_)?c( |\.|,|\*|_)?k|(?<!player')s ?h ?i ?t|b ?i ?t ?c ?h ?(e ?)?s?(?!allenging)|(?<!s)k ?y ?s|d ?i ?c ?k)`,
type: Swear,
enabled: true,
},
{ rule: '\\b(fk(?!dr)( off+)?)', type: Swear, enabled: true },
{
rule:
'\\b((https?://)?(www.)?(discord.(gg|io|me|li)|discord(app)?.com/invite)/(?<invite>.+[a-z0-9]))',
type: Invite,
enabled: true,
},
{
rule:
'\\b((https://)?(www.)?(.+\\.)?zoom.us/j/.+)',
type: Swear,
enabled: true,
},
{
rule:
'\\b((https://)?(www\\.)?tornadus.net/orange)',
type: Swear,
enabled: true,
},
{
rule: '\\b(The Fitness ?Gram™? Pacer Test is a multistage aerobic)',
type: CopyPasta,
enabled: true,
},
{
rule: '\\b(That\'?s why Grammarly can help.)',
type: CopyPasta,
enabled: true,
},
{
rule: '\\b(reallybadword)',
type: CopyPasta,
enabled: true,
},
{
rule: '\\b(Copy And Paste (Him|Her))',
type: CopyPasta,
enabled: true,
},
{
rule: '\\b(This is (memedog|memecat))',
type: CopyPasta,
enabled: true,
},
{
rule: '\\b(Look out for (a|the) discord user)',
type: CopyPasta,
enabled: true,
},
];