mirror of
https://github.com/ReVanced/revanced-bots.git
synced 2026-01-11 13:56:15 +00:00
feat(bot-discord): cure names (#23)
This commit is contained in:
@@ -1,20 +1,22 @@
|
||||
import { Events } from 'discord.js';
|
||||
import cureUsername from '../utils/cureUsername.js';
|
||||
|
||||
export default {
|
||||
name: Events.GuildMemberAdd,
|
||||
once: false,
|
||||
async execute(_, config, member) {
|
||||
const mute = await client.db.collection('muted').findOne({
|
||||
guild_id: member.guild.id,
|
||||
user_id: member.id
|
||||
});
|
||||
name: Events.GuildMemberAdd,
|
||||
once: false,
|
||||
async execute(_, config, member) {
|
||||
cureUsername(member);
|
||||
const mute = await client.db.collection('muted').findOne({
|
||||
guild_id: member.guild.id,
|
||||
user_id: member.id
|
||||
});
|
||||
|
||||
if (mute) {
|
||||
// Add the roles given.
|
||||
member.roles.add(mute.support_mute ?
|
||||
if (mute) {
|
||||
// Add the roles given.
|
||||
member.roles.add(mute.support_mute ?
|
||||
config.mute.supportGiveRoles :
|
||||
config.mute.giveRoles
|
||||
);
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
};
|
||||
|
||||
10
apps/bot-discord/src/events/guildMemberUpdate.js
Normal file
10
apps/bot-discord/src/events/guildMemberUpdate.js
Normal file
@@ -0,0 +1,10 @@
|
||||
import { Events } from 'discord.js';
|
||||
import cureUsername from '../utils/cureUsername.js';
|
||||
|
||||
export default {
|
||||
name: Events.GuildMemberUpdate,
|
||||
once: false,
|
||||
async execute(_, _, _, newMember) {
|
||||
cureUsername(newMember);
|
||||
}
|
||||
};
|
||||
355
apps/bot-discord/src/package-lock.json
generated
355
apps/bot-discord/src/package-lock.json
generated
@@ -10,6 +10,7 @@
|
||||
"license": "GPL-3.0-or-later",
|
||||
"dependencies": {
|
||||
"@revanced-helper/helper-client": "file:../../../packages/client",
|
||||
"decancer": "^1.6.5",
|
||||
"discord.js": "^14.11.0",
|
||||
"mongodb": "^5.7.0",
|
||||
"parse-duration": "^1.1.0"
|
||||
@@ -104,6 +105,15 @@
|
||||
"node": ">=16.9.0"
|
||||
}
|
||||
},
|
||||
"node_modules/@mongodb-js/saslprep": {
|
||||
"version": "1.1.0",
|
||||
"resolved": "https://registry.npmjs.org/@mongodb-js/saslprep/-/saslprep-1.1.0.tgz",
|
||||
"integrity": "sha512-Xfijy7HvfzzqiOAhAepF4SGN5e9leLkMvg/OPOF97XemjfVCYN/oWa75wnkc6mltMSTwY+XlbhWgUOJmkFspSw==",
|
||||
"optional": true,
|
||||
"dependencies": {
|
||||
"sparse-bitfield": "^3.0.3"
|
||||
}
|
||||
},
|
||||
"node_modules/@revanced-helper/helper-client": {
|
||||
"resolved": "../../../packages/client",
|
||||
"link": true
|
||||
@@ -171,6 +181,186 @@
|
||||
"@types/node": "*"
|
||||
}
|
||||
},
|
||||
"node_modules/@vierofernando/decancer-android-arm-eabi": {
|
||||
"version": "1.6.5",
|
||||
"resolved": "https://registry.npmjs.org/@vierofernando/decancer-android-arm-eabi/-/decancer-android-arm-eabi-1.6.5.tgz",
|
||||
"integrity": "sha512-/xPMebqSFb6fePZdwD9Pz8pIc9GkCGlMOQA4ucFtKeepQrMhoil4qN+ri5DUSeW9PFvnj/cEWuPEeNDbFc4WyA==",
|
||||
"cpu": [
|
||||
"arm"
|
||||
],
|
||||
"optional": true,
|
||||
"os": [
|
||||
"android"
|
||||
],
|
||||
"engines": {
|
||||
"node": ">= 10"
|
||||
}
|
||||
},
|
||||
"node_modules/@vierofernando/decancer-android-arm64": {
|
||||
"version": "1.6.5",
|
||||
"resolved": "https://registry.npmjs.org/@vierofernando/decancer-android-arm64/-/decancer-android-arm64-1.6.5.tgz",
|
||||
"integrity": "sha512-FraWlT6lfjFuV5L383+XzzFD5I2pzZ5TRDfix4BVXvDxjnO8ZKt4AB7DbWteDVu18zZbuVpBh3Tp1Eu1adidUg==",
|
||||
"cpu": [
|
||||
"arm64"
|
||||
],
|
||||
"optional": true,
|
||||
"os": [
|
||||
"android"
|
||||
],
|
||||
"engines": {
|
||||
"node": ">= 10"
|
||||
}
|
||||
},
|
||||
"node_modules/@vierofernando/decancer-darwin-arm64": {
|
||||
"version": "1.6.5",
|
||||
"resolved": "https://registry.npmjs.org/@vierofernando/decancer-darwin-arm64/-/decancer-darwin-arm64-1.6.5.tgz",
|
||||
"integrity": "sha512-pOarySDUPdxf/YQ673HxH+tJubapiiPt7SOuK8lRw3NoiQZ3cOf/LofU8rEUgK/yKfDyWbmQLnvMi1Hl1JTmhg==",
|
||||
"cpu": [
|
||||
"arm64"
|
||||
],
|
||||
"optional": true,
|
||||
"os": [
|
||||
"darwin"
|
||||
],
|
||||
"engines": {
|
||||
"node": ">= 10"
|
||||
}
|
||||
},
|
||||
"node_modules/@vierofernando/decancer-darwin-x64": {
|
||||
"version": "1.6.5",
|
||||
"resolved": "https://registry.npmjs.org/@vierofernando/decancer-darwin-x64/-/decancer-darwin-x64-1.6.5.tgz",
|
||||
"integrity": "sha512-B7JzUC5EHQtA7yJOrdRrKjHWBbzvBaPNAKHBKJ+brAwqa3yStpBodJZTgsfGHidCY8Gje0pGxSZVbPnGs+5Xbg==",
|
||||
"cpu": [
|
||||
"x64"
|
||||
],
|
||||
"optional": true,
|
||||
"os": [
|
||||
"darwin"
|
||||
],
|
||||
"engines": {
|
||||
"node": ">= 10"
|
||||
}
|
||||
},
|
||||
"node_modules/@vierofernando/decancer-linux-arm-gnueabihf": {
|
||||
"version": "1.6.5",
|
||||
"resolved": "https://registry.npmjs.org/@vierofernando/decancer-linux-arm-gnueabihf/-/decancer-linux-arm-gnueabihf-1.6.5.tgz",
|
||||
"integrity": "sha512-1ALPTMzUo750lIuHn/paZ2wq+GkDXv15dP9w4bmP3ytrYVj8b0uJmb57FexNEIMPf4M0gkGmyNLjq+Y1AJoQvw==",
|
||||
"cpu": [
|
||||
"arm"
|
||||
],
|
||||
"optional": true,
|
||||
"os": [
|
||||
"linux"
|
||||
],
|
||||
"engines": {
|
||||
"node": ">= 10"
|
||||
}
|
||||
},
|
||||
"node_modules/@vierofernando/decancer-linux-arm64-gnu": {
|
||||
"version": "1.6.5",
|
||||
"resolved": "https://registry.npmjs.org/@vierofernando/decancer-linux-arm64-gnu/-/decancer-linux-arm64-gnu-1.6.5.tgz",
|
||||
"integrity": "sha512-RDNTJ9812zlQkWRxZS513xZoSUeRbONzcFX6VDnl/Lx20NVRZOryF8o4EtKDwzEd3kQrIr2tQlZyLLLsTGL48g==",
|
||||
"cpu": [
|
||||
"arm64"
|
||||
],
|
||||
"optional": true,
|
||||
"os": [
|
||||
"linux"
|
||||
],
|
||||
"engines": {
|
||||
"node": ">= 10"
|
||||
}
|
||||
},
|
||||
"node_modules/@vierofernando/decancer-linux-arm64-musl": {
|
||||
"version": "1.6.5",
|
||||
"resolved": "https://registry.npmjs.org/@vierofernando/decancer-linux-arm64-musl/-/decancer-linux-arm64-musl-1.6.5.tgz",
|
||||
"integrity": "sha512-Qnm6yQxvUF8uojyIIUiZepTZIyJN2jdqvm2QptxfB1LGABkWCpTlv+xml8KTPFTUcPT1Epwye1FaVEwd90W7VQ==",
|
||||
"cpu": [
|
||||
"arm64"
|
||||
],
|
||||
"optional": true,
|
||||
"os": [
|
||||
"linux"
|
||||
],
|
||||
"engines": {
|
||||
"node": ">= 10"
|
||||
}
|
||||
},
|
||||
"node_modules/@vierofernando/decancer-linux-x64-gnu": {
|
||||
"version": "1.6.5",
|
||||
"resolved": "https://registry.npmjs.org/@vierofernando/decancer-linux-x64-gnu/-/decancer-linux-x64-gnu-1.6.5.tgz",
|
||||
"integrity": "sha512-eKdF0jsdVpm+lcDHALqtH79Z8vPX5qsoJHM2YHrQ5pJ3khP2+OcEYdAyis2rl438OK6NJyQZfECSUSj9dtfAeQ==",
|
||||
"cpu": [
|
||||
"x64"
|
||||
],
|
||||
"optional": true,
|
||||
"os": [
|
||||
"linux"
|
||||
],
|
||||
"engines": {
|
||||
"node": ">= 10"
|
||||
}
|
||||
},
|
||||
"node_modules/@vierofernando/decancer-linux-x64-musl": {
|
||||
"version": "1.6.5",
|
||||
"resolved": "https://registry.npmjs.org/@vierofernando/decancer-linux-x64-musl/-/decancer-linux-x64-musl-1.6.5.tgz",
|
||||
"integrity": "sha512-RaJoJSIkLSu0l4tODVFWoeE+4BSVjHUn+Gb3yQKn5DHmsl1/EOuj6rlwX6uddleV9aQIDEAljSL3SExNZbmm2A==",
|
||||
"cpu": [
|
||||
"x64"
|
||||
],
|
||||
"optional": true,
|
||||
"os": [
|
||||
"linux"
|
||||
],
|
||||
"engines": {
|
||||
"node": ">= 10"
|
||||
}
|
||||
},
|
||||
"node_modules/@vierofernando/decancer-win32-arm64-msvc": {
|
||||
"version": "1.6.5",
|
||||
"resolved": "https://registry.npmjs.org/@vierofernando/decancer-win32-arm64-msvc/-/decancer-win32-arm64-msvc-1.6.5.tgz",
|
||||
"integrity": "sha512-SXI6r8m+J4vYCvjKQeafukSpBORU9wzM38SkBhjdp8wfcHVYfjVtoHVr4JxkpNfMJoIhv9j2MJYIaYVExvw8pg==",
|
||||
"cpu": [
|
||||
"arm64"
|
||||
],
|
||||
"optional": true,
|
||||
"os": [
|
||||
"win32"
|
||||
],
|
||||
"engines": {
|
||||
"node": ">= 10"
|
||||
}
|
||||
},
|
||||
"node_modules/@vierofernando/decancer-win32-ia32-msvc": {
|
||||
"version": "1.6.5",
|
||||
"resolved": "https://registry.npmjs.org/@vierofernando/decancer-win32-ia32-msvc/-/decancer-win32-ia32-msvc-1.6.5.tgz",
|
||||
"integrity": "sha512-Ml6Gx6iwOzLopcH8BEd3Kn2MQ1bg5S4mKHQrxNn2MK3SqCLNzZKZhoWe18aCzaKLnwTTkcZvXNcZk1OLPLxmUw==",
|
||||
"cpu": [
|
||||
"ia32"
|
||||
],
|
||||
"optional": true,
|
||||
"os": [
|
||||
"win32"
|
||||
],
|
||||
"engines": {
|
||||
"node": ">= 10"
|
||||
}
|
||||
},
|
||||
"node_modules/@vierofernando/decancer-win32-x64-msvc": {
|
||||
"version": "1.6.5",
|
||||
"resolved": "https://registry.npmjs.org/@vierofernando/decancer-win32-x64-msvc/-/decancer-win32-x64-msvc-1.6.5.tgz",
|
||||
"integrity": "sha512-fnMKkLkYJ/K/e1jo6WfwpoI4eNEkcWsA/rJMMF6XGLD6YhHnZZdlugqsbSK8j4GiBBTfgj6yCeCMEfLe2QP15w==",
|
||||
"cpu": [
|
||||
"x64"
|
||||
],
|
||||
"optional": true,
|
||||
"os": [
|
||||
"win32"
|
||||
],
|
||||
"engines": {
|
||||
"node": ">= 10"
|
||||
}
|
||||
},
|
||||
"node_modules/@vladfrangu/async_event_emitter": {
|
||||
"version": "2.2.2",
|
||||
"resolved": "https://registry.npmjs.org/@vladfrangu/async_event_emitter/-/async_event_emitter-2.2.2.tgz",
|
||||
@@ -199,6 +389,28 @@
|
||||
"node": ">=10.16.0"
|
||||
}
|
||||
},
|
||||
"node_modules/decancer": {
|
||||
"version": "1.6.5",
|
||||
"resolved": "https://registry.npmjs.org/decancer/-/decancer-1.6.5.tgz",
|
||||
"integrity": "sha512-7p9ShXWXwKwTIwa5VoFtvUpIWMI4MEgCYLJqOwczBDyEHR65GhTxW/l0V/fazxV3w9KvlmoHI0HtTTI3nSNy1A==",
|
||||
"engines": {
|
||||
"node": ">= 16"
|
||||
},
|
||||
"optionalDependencies": {
|
||||
"@vierofernando/decancer-android-arm-eabi": "1.6.5",
|
||||
"@vierofernando/decancer-android-arm64": "1.6.5",
|
||||
"@vierofernando/decancer-darwin-arm64": "1.6.5",
|
||||
"@vierofernando/decancer-darwin-x64": "1.6.5",
|
||||
"@vierofernando/decancer-linux-arm-gnueabihf": "1.6.5",
|
||||
"@vierofernando/decancer-linux-arm64-gnu": "1.6.5",
|
||||
"@vierofernando/decancer-linux-arm64-musl": "1.6.5",
|
||||
"@vierofernando/decancer-linux-x64-gnu": "1.6.5",
|
||||
"@vierofernando/decancer-linux-x64-musl": "1.6.5",
|
||||
"@vierofernando/decancer-win32-arm64-msvc": "1.6.5",
|
||||
"@vierofernando/decancer-win32-ia32-msvc": "1.6.5",
|
||||
"@vierofernando/decancer-win32-x64-msvc": "1.6.5"
|
||||
}
|
||||
},
|
||||
"node_modules/discord-api-types": {
|
||||
"version": "0.37.43",
|
||||
"resolved": "https://registry.npmjs.org/discord-api-types/-/discord-api-types-0.37.43.tgz",
|
||||
@@ -295,9 +507,9 @@
|
||||
"optional": true
|
||||
},
|
||||
"node_modules/mongodb": {
|
||||
"version": "5.7.0",
|
||||
"resolved": "https://registry.npmjs.org/mongodb/-/mongodb-5.7.0.tgz",
|
||||
"integrity": "sha512-zm82Bq33QbqtxDf58fLWBwTjARK3NSvKYjyz997KSy6hpat0prjeX/kxjbPVyZY60XYPDNETaHkHJI2UCzSLuw==",
|
||||
"version": "5.8.1",
|
||||
"resolved": "https://registry.npmjs.org/mongodb/-/mongodb-5.8.1.tgz",
|
||||
"integrity": "sha512-wKyh4kZvm6NrCPH8AxyzXm3JBoEf4Xulo0aUWh3hCgwgYJxyQ1KLST86ZZaSWdj6/kxYUA3+YZuyADCE61CMSg==",
|
||||
"dependencies": {
|
||||
"bson": "^5.4.0",
|
||||
"mongodb-connection-string-url": "^2.6.0",
|
||||
@@ -307,12 +519,12 @@
|
||||
"node": ">=14.20.1"
|
||||
},
|
||||
"optionalDependencies": {
|
||||
"saslprep": "^1.0.3"
|
||||
"@mongodb-js/saslprep": "^1.1.0"
|
||||
},
|
||||
"peerDependencies": {
|
||||
"@aws-sdk/credential-providers": "^3.201.0",
|
||||
"@mongodb-js/zstd": "^1.1.0",
|
||||
"kerberos": "^2.0.1",
|
||||
"@aws-sdk/credential-providers": "^3.188.0",
|
||||
"@mongodb-js/zstd": "^1.0.0",
|
||||
"kerberos": "^1.0.0 || ^2.0.0",
|
||||
"mongodb-client-encryption": ">=2.3.0 <3",
|
||||
"snappy": "^7.2.2"
|
||||
},
|
||||
@@ -415,18 +627,6 @@
|
||||
}
|
||||
]
|
||||
},
|
||||
"node_modules/saslprep": {
|
||||
"version": "1.0.3",
|
||||
"resolved": "https://registry.npmjs.org/saslprep/-/saslprep-1.0.3.tgz",
|
||||
"integrity": "sha512-/MY/PEMbk2SuY5sScONwhUDsV2p77Znkb/q3nSVstq/yQzYJOH/Azh29p9oJLsl3LnQwSvZDKagDGBsBwSooag==",
|
||||
"optional": true,
|
||||
"dependencies": {
|
||||
"sparse-bitfield": "^3.0.3"
|
||||
},
|
||||
"engines": {
|
||||
"node": ">=6"
|
||||
}
|
||||
},
|
||||
"node_modules/smart-buffer": {
|
||||
"version": "4.2.0",
|
||||
"resolved": "https://registry.npmjs.org/smart-buffer/-/smart-buffer-4.2.0.tgz",
|
||||
@@ -648,6 +848,15 @@
|
||||
"ws": "^8.13.0"
|
||||
}
|
||||
},
|
||||
"@mongodb-js/saslprep": {
|
||||
"version": "1.1.0",
|
||||
"resolved": "https://registry.npmjs.org/@mongodb-js/saslprep/-/saslprep-1.1.0.tgz",
|
||||
"integrity": "sha512-Xfijy7HvfzzqiOAhAepF4SGN5e9leLkMvg/OPOF97XemjfVCYN/oWa75wnkc6mltMSTwY+XlbhWgUOJmkFspSw==",
|
||||
"optional": true,
|
||||
"requires": {
|
||||
"sparse-bitfield": "^3.0.3"
|
||||
}
|
||||
},
|
||||
"@revanced-helper/helper-client": {
|
||||
"version": "file:../../../packages/client",
|
||||
"requires": {
|
||||
@@ -705,6 +914,78 @@
|
||||
"@types/node": "*"
|
||||
}
|
||||
},
|
||||
"@vierofernando/decancer-android-arm-eabi": {
|
||||
"version": "1.6.5",
|
||||
"resolved": "https://registry.npmjs.org/@vierofernando/decancer-android-arm-eabi/-/decancer-android-arm-eabi-1.6.5.tgz",
|
||||
"integrity": "sha512-/xPMebqSFb6fePZdwD9Pz8pIc9GkCGlMOQA4ucFtKeepQrMhoil4qN+ri5DUSeW9PFvnj/cEWuPEeNDbFc4WyA==",
|
||||
"optional": true
|
||||
},
|
||||
"@vierofernando/decancer-android-arm64": {
|
||||
"version": "1.6.5",
|
||||
"resolved": "https://registry.npmjs.org/@vierofernando/decancer-android-arm64/-/decancer-android-arm64-1.6.5.tgz",
|
||||
"integrity": "sha512-FraWlT6lfjFuV5L383+XzzFD5I2pzZ5TRDfix4BVXvDxjnO8ZKt4AB7DbWteDVu18zZbuVpBh3Tp1Eu1adidUg==",
|
||||
"optional": true
|
||||
},
|
||||
"@vierofernando/decancer-darwin-arm64": {
|
||||
"version": "1.6.5",
|
||||
"resolved": "https://registry.npmjs.org/@vierofernando/decancer-darwin-arm64/-/decancer-darwin-arm64-1.6.5.tgz",
|
||||
"integrity": "sha512-pOarySDUPdxf/YQ673HxH+tJubapiiPt7SOuK8lRw3NoiQZ3cOf/LofU8rEUgK/yKfDyWbmQLnvMi1Hl1JTmhg==",
|
||||
"optional": true
|
||||
},
|
||||
"@vierofernando/decancer-darwin-x64": {
|
||||
"version": "1.6.5",
|
||||
"resolved": "https://registry.npmjs.org/@vierofernando/decancer-darwin-x64/-/decancer-darwin-x64-1.6.5.tgz",
|
||||
"integrity": "sha512-B7JzUC5EHQtA7yJOrdRrKjHWBbzvBaPNAKHBKJ+brAwqa3yStpBodJZTgsfGHidCY8Gje0pGxSZVbPnGs+5Xbg==",
|
||||
"optional": true
|
||||
},
|
||||
"@vierofernando/decancer-linux-arm-gnueabihf": {
|
||||
"version": "1.6.5",
|
||||
"resolved": "https://registry.npmjs.org/@vierofernando/decancer-linux-arm-gnueabihf/-/decancer-linux-arm-gnueabihf-1.6.5.tgz",
|
||||
"integrity": "sha512-1ALPTMzUo750lIuHn/paZ2wq+GkDXv15dP9w4bmP3ytrYVj8b0uJmb57FexNEIMPf4M0gkGmyNLjq+Y1AJoQvw==",
|
||||
"optional": true
|
||||
},
|
||||
"@vierofernando/decancer-linux-arm64-gnu": {
|
||||
"version": "1.6.5",
|
||||
"resolved": "https://registry.npmjs.org/@vierofernando/decancer-linux-arm64-gnu/-/decancer-linux-arm64-gnu-1.6.5.tgz",
|
||||
"integrity": "sha512-RDNTJ9812zlQkWRxZS513xZoSUeRbONzcFX6VDnl/Lx20NVRZOryF8o4EtKDwzEd3kQrIr2tQlZyLLLsTGL48g==",
|
||||
"optional": true
|
||||
},
|
||||
"@vierofernando/decancer-linux-arm64-musl": {
|
||||
"version": "1.6.5",
|
||||
"resolved": "https://registry.npmjs.org/@vierofernando/decancer-linux-arm64-musl/-/decancer-linux-arm64-musl-1.6.5.tgz",
|
||||
"integrity": "sha512-Qnm6yQxvUF8uojyIIUiZepTZIyJN2jdqvm2QptxfB1LGABkWCpTlv+xml8KTPFTUcPT1Epwye1FaVEwd90W7VQ==",
|
||||
"optional": true
|
||||
},
|
||||
"@vierofernando/decancer-linux-x64-gnu": {
|
||||
"version": "1.6.5",
|
||||
"resolved": "https://registry.npmjs.org/@vierofernando/decancer-linux-x64-gnu/-/decancer-linux-x64-gnu-1.6.5.tgz",
|
||||
"integrity": "sha512-eKdF0jsdVpm+lcDHALqtH79Z8vPX5qsoJHM2YHrQ5pJ3khP2+OcEYdAyis2rl438OK6NJyQZfECSUSj9dtfAeQ==",
|
||||
"optional": true
|
||||
},
|
||||
"@vierofernando/decancer-linux-x64-musl": {
|
||||
"version": "1.6.5",
|
||||
"resolved": "https://registry.npmjs.org/@vierofernando/decancer-linux-x64-musl/-/decancer-linux-x64-musl-1.6.5.tgz",
|
||||
"integrity": "sha512-RaJoJSIkLSu0l4tODVFWoeE+4BSVjHUn+Gb3yQKn5DHmsl1/EOuj6rlwX6uddleV9aQIDEAljSL3SExNZbmm2A==",
|
||||
"optional": true
|
||||
},
|
||||
"@vierofernando/decancer-win32-arm64-msvc": {
|
||||
"version": "1.6.5",
|
||||
"resolved": "https://registry.npmjs.org/@vierofernando/decancer-win32-arm64-msvc/-/decancer-win32-arm64-msvc-1.6.5.tgz",
|
||||
"integrity": "sha512-SXI6r8m+J4vYCvjKQeafukSpBORU9wzM38SkBhjdp8wfcHVYfjVtoHVr4JxkpNfMJoIhv9j2MJYIaYVExvw8pg==",
|
||||
"optional": true
|
||||
},
|
||||
"@vierofernando/decancer-win32-ia32-msvc": {
|
||||
"version": "1.6.5",
|
||||
"resolved": "https://registry.npmjs.org/@vierofernando/decancer-win32-ia32-msvc/-/decancer-win32-ia32-msvc-1.6.5.tgz",
|
||||
"integrity": "sha512-Ml6Gx6iwOzLopcH8BEd3Kn2MQ1bg5S4mKHQrxNn2MK3SqCLNzZKZhoWe18aCzaKLnwTTkcZvXNcZk1OLPLxmUw==",
|
||||
"optional": true
|
||||
},
|
||||
"@vierofernando/decancer-win32-x64-msvc": {
|
||||
"version": "1.6.5",
|
||||
"resolved": "https://registry.npmjs.org/@vierofernando/decancer-win32-x64-msvc/-/decancer-win32-x64-msvc-1.6.5.tgz",
|
||||
"integrity": "sha512-fnMKkLkYJ/K/e1jo6WfwpoI4eNEkcWsA/rJMMF6XGLD6YhHnZZdlugqsbSK8j4GiBBTfgj6yCeCMEfLe2QP15w==",
|
||||
"optional": true
|
||||
},
|
||||
"@vladfrangu/async_event_emitter": {
|
||||
"version": "2.2.2",
|
||||
"resolved": "https://registry.npmjs.org/@vladfrangu/async_event_emitter/-/async_event_emitter-2.2.2.tgz",
|
||||
@@ -723,6 +1004,25 @@
|
||||
"streamsearch": "^1.1.0"
|
||||
}
|
||||
},
|
||||
"decancer": {
|
||||
"version": "1.6.5",
|
||||
"resolved": "https://registry.npmjs.org/decancer/-/decancer-1.6.5.tgz",
|
||||
"integrity": "sha512-7p9ShXWXwKwTIwa5VoFtvUpIWMI4MEgCYLJqOwczBDyEHR65GhTxW/l0V/fazxV3w9KvlmoHI0HtTTI3nSNy1A==",
|
||||
"requires": {
|
||||
"@vierofernando/decancer-android-arm-eabi": "1.6.5",
|
||||
"@vierofernando/decancer-android-arm64": "1.6.5",
|
||||
"@vierofernando/decancer-darwin-arm64": "1.6.5",
|
||||
"@vierofernando/decancer-darwin-x64": "1.6.5",
|
||||
"@vierofernando/decancer-linux-arm-gnueabihf": "1.6.5",
|
||||
"@vierofernando/decancer-linux-arm64-gnu": "1.6.5",
|
||||
"@vierofernando/decancer-linux-arm64-musl": "1.6.5",
|
||||
"@vierofernando/decancer-linux-x64-gnu": "1.6.5",
|
||||
"@vierofernando/decancer-linux-x64-musl": "1.6.5",
|
||||
"@vierofernando/decancer-win32-arm64-msvc": "1.6.5",
|
||||
"@vierofernando/decancer-win32-ia32-msvc": "1.6.5",
|
||||
"@vierofernando/decancer-win32-x64-msvc": "1.6.5"
|
||||
}
|
||||
},
|
||||
"discord-api-types": {
|
||||
"version": "0.37.43",
|
||||
"resolved": "https://registry.npmjs.org/discord-api-types/-/discord-api-types-0.37.43.tgz",
|
||||
@@ -796,13 +1096,13 @@
|
||||
"optional": true
|
||||
},
|
||||
"mongodb": {
|
||||
"version": "5.7.0",
|
||||
"resolved": "https://registry.npmjs.org/mongodb/-/mongodb-5.7.0.tgz",
|
||||
"integrity": "sha512-zm82Bq33QbqtxDf58fLWBwTjARK3NSvKYjyz997KSy6hpat0prjeX/kxjbPVyZY60XYPDNETaHkHJI2UCzSLuw==",
|
||||
"version": "5.8.1",
|
||||
"resolved": "https://registry.npmjs.org/mongodb/-/mongodb-5.8.1.tgz",
|
||||
"integrity": "sha512-wKyh4kZvm6NrCPH8AxyzXm3JBoEf4Xulo0aUWh3hCgwgYJxyQ1KLST86ZZaSWdj6/kxYUA3+YZuyADCE61CMSg==",
|
||||
"requires": {
|
||||
"@mongodb-js/saslprep": "^1.1.0",
|
||||
"bson": "^5.4.0",
|
||||
"mongodb-connection-string-url": "^2.6.0",
|
||||
"saslprep": "^1.0.3",
|
||||
"socks": "^2.7.1"
|
||||
}
|
||||
},
|
||||
@@ -853,15 +1153,6 @@
|
||||
"resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.2.1.tgz",
|
||||
"integrity": "sha512-rp3So07KcdmmKbGvgaNxQSJr7bGVSVk5S9Eq1F+ppbRo70+YeaDxkw5Dd8NPN+GD6bjnYm2VuPuCXmpuYvmCXQ=="
|
||||
},
|
||||
"saslprep": {
|
||||
"version": "1.0.3",
|
||||
"resolved": "https://registry.npmjs.org/saslprep/-/saslprep-1.0.3.tgz",
|
||||
"integrity": "sha512-/MY/PEMbk2SuY5sScONwhUDsV2p77Znkb/q3nSVstq/yQzYJOH/Azh29p9oJLsl3LnQwSvZDKagDGBsBwSooag==",
|
||||
"optional": true,
|
||||
"requires": {
|
||||
"sparse-bitfield": "^3.0.3"
|
||||
}
|
||||
},
|
||||
"smart-buffer": {
|
||||
"version": "4.2.0",
|
||||
"resolved": "https://registry.npmjs.org/smart-buffer/-/smart-buffer-4.2.0.tgz",
|
||||
|
||||
@@ -9,6 +9,7 @@
|
||||
"license": "GPL-3.0-or-later",
|
||||
"dependencies": {
|
||||
"@revanced-helper/helper-client": "file:../../../packages/client",
|
||||
"decancer": "^1.6.5",
|
||||
"discord.js": "^14.11.0",
|
||||
"mongodb": "^5.7.0",
|
||||
"parse-duration": "^1.1.0"
|
||||
|
||||
17
apps/bot-discord/src/utils/cureUsername.js
Normal file
17
apps/bot-discord/src/utils/cureUsername.js
Normal file
@@ -0,0 +1,17 @@
|
||||
import decancer from 'decancer';
|
||||
|
||||
export default async function cureUsername(member) {
|
||||
let toCure = member.user.username;
|
||||
if (member.nickname) toCure = member.nickname;
|
||||
|
||||
if (!/^[\x20-\x7D]+$/.test(toCure)) {
|
||||
// Cure username/nickname if there's non-ascii characters.
|
||||
|
||||
let curedName = decancer(toCure).toString();
|
||||
|
||||
// If the output is empty, rename them to "ReVanced member".
|
||||
if (/^\s*$/.test(curedName)) curedName = 'ReVanced member';
|
||||
|
||||
member.setNickname(curedName);
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user