├── .gitignore ├── LICENSE ├── README.md ├── config.yml ├── dashboard.config.js ├── def.database.niro.sqlite ├── index.js ├── myCodes.js ├── package.json └── src ├── commands ├── admin │ ├── add-emoji.js │ ├── ban.js │ ├── clear.js │ ├── embed.js │ ├── files-only.js │ ├── hide.js │ ├── kick.js │ ├── lock.js │ ├── mute.js │ ├── points.js │ ├── role.js │ ├── say.js │ ├── setnickname.js │ ├── show.js │ ├── slowmode.js │ ├── unban.js │ ├── unlock.js │ ├── unmute.js │ └── warn.js ├── auto │ ├── auto-respond.js │ ├── auto-role.js │ └── line.js ├── colors │ ├── color.js │ ├── colors.js │ ├── createColors.js │ └── setcolor.js ├── config │ ├── admin-role.js │ ├── language.js │ └── prefix.js ├── economy │ ├── credits.js │ ├── daily.js │ ├── profile.js │ ├── rep.js │ ├── title.js │ ├── top.js │ └── weekly.js ├── games (powerd by external) │ ├── func │ │ ├── activities.js │ │ ├── brand.js │ │ ├── capitals.js │ │ ├── fast.js │ │ ├── fkk.js │ │ ├── flags.js │ │ ├── fruits.js │ │ ├── letters.js │ │ ├── math.js │ │ ├── music.js │ │ ├── puzzle.js │ │ └── translate.js │ ├── games.js │ ├── points.js │ └── top.js ├── general │ ├── afk.js │ ├── avatar.js │ ├── banner.js │ ├── ping.js │ ├── roles.js │ ├── server.js │ ├── status.js │ └── user.js ├── leveling │ ├── add-level-role.js │ ├── disable-level-system.js │ ├── rank.js │ ├── remove-level-role.js │ ├── reset-all.js │ ├── set-level-channel.js │ └── set-level-message.js ├── music │ ├── nowplaying.js │ ├── pause.js │ ├── play.js │ ├── queue.js │ ├── repeat.js │ ├── resume.js │ ├── search.js │ ├── skip.js │ ├── stop.js │ └── volume.js ├── other │ ├── blacklist.js │ ├── help.js │ ├── nadeko-welcome.js │ ├── porn.js │ ├── set-welcome.js │ ├── temp.js │ ├── test.js │ └── welcomer-reset.js ├── premuim │ ├── stage_radio.js │ ├── stats_room.js │ └── youtube.js ├── rr │ └── setup-rr.js ├── security │ ├── add-swear.js │ ├── anti-bots.js │ ├── anti-links.js │ ├── anti-spam.js │ ├── anti-swear.js │ ├── anti-tokens.js │ ├── config-pr.js │ ├── maxprotect.js │ ├── remove-swear.js │ ├── set-limt.js │ ├── time-tokens.js │ └── toogle-limts.js ├── suggestions │ ├── get-user-suggestions.js │ ├── my-suggestions.js │ ├── send-suggestion.js │ └── suggestion-channel.js └── ticket │ ├── close.js │ ├── rename.js │ └── setup.js ├── data ├── background.png ├── colorsImage.png ├── emojis │ └── 5828a9abe4bd7a7dfbd221d64133aa43.png ├── profile.png └── xp.png ├── errors └── emiter.js ├── events ├── guildMemberAdd.js ├── interactionCreate.js ├── messageCreate.js ├── ready.js └── submitModalEvent.js ├── functions ├── afk.js ├── autoLine.js ├── checkPerms.js ├── leveling.js ├── prime.stage.js ├── prime.stats.js ├── protection.def.js ├── sugs.js ├── ticketSystem.js └── ytNoti.js ├── server ├── assets │ └── style.css ├── routers │ ├── auth │ │ ├── discord.js │ │ └── views.js │ └── router.js ├── serverBoat.js └── views │ ├── includes │ ├── axios.pug │ └── header.pug │ ├── index.pug │ ├── moved.pug │ ├── owners.pug │ ├── server.pug │ ├── servers.pug │ ├── underDev.pug │ └── welcome.pug └── utils ├── bot.js └── modules ├── events.js ├── register.js └── respond.js /.gitignore: -------------------------------------------------------------------------------- 1 | # Logs 2 | logs 3 | *.log 4 | npm-debug.log* 5 | yarn-debug.log* 6 | yarn-error.log* 7 | lerna-debug.log* 8 | 9 | # Diagnostic reports (https://nodejs.org/api/report.html) 10 | report.[0-9]*.[0-9]*.[0-9]*.[0-9]*.json 11 | 12 | # Runtime data 13 | pids 14 | *.pid 15 | *.seed 16 | *.pid.lock 17 | 18 | # Directory for instrumented libs generated by jscoverage/JSCover 19 | lib-cov 20 | 21 | # Coverage directory used by tools like istanbul 22 | coverage 23 | *.lcov 24 | 25 | # nyc test coverage 26 | .nyc_output 27 | 28 | # Grunt intermediate storage (https://gruntjs.com/creating-plugins#storing-task-files) 29 | .grunt 30 | 31 | # Bower dependency directory (https://bower.io/) 32 | bower_components 33 | 34 | # node-waf configuration 35 | .lock-wscript 36 | 37 | # Compiled binary addons (https://nodejs.org/api/addons.html) 38 | build/Release 39 | 40 | # Dependency directories 41 | node_modules/ 42 | jspm_packages/ 43 | 44 | # TypeScript v1 declaration files 45 | typings/ 46 | 47 | # TypeScript cache 48 | *.tsbuildinfo 49 | 50 | # Optional npm cache directory 51 | .npm 52 | 53 | # Optional eslint cache 54 | .eslintcache 55 | 56 | # Microbundle cache 57 | .rpt2_cache/ 58 | .rts2_cache_cjs/ 59 | .rts2_cache_es/ 60 | .rts2_cache_umd/ 61 | 62 | # Optional REPL history 63 | .node_repl_history 64 | 65 | # Output of 'npm pack' 66 | *.tgz 67 | 68 | # Yarn Integrity file 69 | .yarn-integrity 70 | 71 | # dotenv environment variables file 72 | .env 73 | .env.test 74 | 75 | # parcel-bundler cache (https://parceljs.org/) 76 | .cache 77 | 78 | # Next.js build output 79 | .next 80 | 81 | # Nuxt.js build / generate output 82 | .nuxt 83 | dist 84 | 85 | # Gatsby files 86 | .cache/ 87 | # Comment in the public line in if your project uses Gatsby and *not* Next.js 88 | # https://nextjs.org/blog/next-9-1#public-directory-support 89 | # public 90 | 91 | # vuepress build output 92 | .vuepress/dist 93 | 94 | # Serverless directories 95 | .serverless/ 96 | 97 | # FuseBox cache 98 | .fusebox/ 99 | 100 | # DynamoDB Local files 101 | .dynamodb/ 102 | 103 | # TernJS port file 104 | .tern-port 105 | -------------------------------------------------------------------------------- /LICENSE: -------------------------------------------------------------------------------- 1 | MIT License 2 | 3 | Copyright (c) 2023 Def 4 | 5 | Permission is hereby granted, free of charge, to any person obtaining a copy 6 | of this software and associated documentation files (the "Software"), to deal 7 | in the Software without restriction, including without limitation the rights 8 | to use, copy, modify, merge, publish, distribute, sublicense, and/or sell 9 | copies of the Software, and to permit persons to whom the Software is 10 | furnished to do so, subject to the following conditions: 11 | 12 | The above copyright notice and this permission notice shall be included in all 13 | copies or substantial portions of the Software. 14 | 15 | THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR 16 | IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, 17 | FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE 18 | AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER 19 | LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, 20 | OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE 21 | SOFTWARE. 22 | -------------------------------------------------------------------------------- /README.md: -------------------------------------------------------------------------------- 1 | ## devLOG (903) 🔧 2 | `[ / ] ` **Kypton version of SYSTEM-BOT (V4) !!!!!! 🚀🚀🚀🚀** 3 | 4 | # ⚠⚠⚠ All rights reserved defExtra ⚠⚠⚠ 5 | -------------------------------------------------------------------------------- /dashboard.config.js: -------------------------------------------------------------------------------- 1 | "use strict"; 2 | Object.defineProperty(exports, "__esModule", { value: true }); 3 | exports.default = { 4 | owners: ["", ""], 5 | clientID: "", 6 | clientSECRET: "", 7 | domain: "http://localhost:3030", 8 | port: 3030 9 | }; 10 | -------------------------------------------------------------------------------- /def.database.niro.sqlite: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/DefExtra/devLOG-903-/f8b63e4e6d8bf1c6948566181f3220d8c2e6d747/def.database.niro.sqlite -------------------------------------------------------------------------------- /index.js: -------------------------------------------------------------------------------- 1 | "use strict"; 2 | var __importDefault = 3 | (this && this.__importDefault) || 4 | function (mod) { 5 | return mod && mod.__esModule ? mod : { default: mod }; 6 | }; 7 | Object.defineProperty(exports, "__esModule", { value: true }); 8 | const bot_1 = require("./src/utils/bot"); 9 | const js_yaml_1 = __importDefault(require("js-yaml")); 10 | const fs_1 = __importDefault(require("fs")); 11 | const config = js_yaml_1.default.load( 12 | fs_1.default.readFileSync(__dirname + "/config.yml", "utf8") 13 | ); 14 | const bot = new bot_1.Bot(); 15 | (() => { 16 | bot.registerCommands("/src/commands"); 17 | bot.client.on("SystemLog", ({ text, error }) => { 18 | console.log(text); 19 | error ? console.log(error) : undefined; 20 | }); 21 | bot.on("SystemLog", ({ text }) => 22 | bot.client.emit("SystemLog", { 23 | type: "base", 24 | text: text, 25 | error: null, 26 | }) 27 | ); 28 | bot.login(config.BOT.TOKEN); 29 | })(); 30 | exports.default = { 31 | Manager: bot.getManager(), 32 | bot: bot, 33 | replys: config.REPLYS, 34 | config, 35 | }; 36 | -------------------------------------------------------------------------------- /myCodes.js: -------------------------------------------------------------------------------- 1 | "use strict"; 2 | Object.defineProperty(exports, "__esModule", { value: true }); 3 | exports.default = async (client, prefix) => { 4 | }; 5 | -------------------------------------------------------------------------------- /package.json: -------------------------------------------------------------------------------- 1 | { 2 | "name": "devLog-(system-bot-v4)", 3 | "version": "9.0.3", 4 | "main": "./index.js", 5 | "dependencies": { 6 | "@discordjs/opus": "^0.8.0", 7 | "@distube/soundcloud": "^1.3.0", 8 | "@distube/spotify": "^1.5.1", 9 | "@distube/yt-dlp": "^1.1.3", 10 | "@haileybot/captcha-generator": "^1.7.0", 11 | "@napi-rs/canvas": "^0.1.30", 12 | "aki-api": "^6.0.7", 13 | "axios": "^1.2.2", 14 | "better-sqlite3": "^8.0.1", 15 | "body-parser": "^1.19.2", 16 | "canvacord": "^5.4.8", 17 | "canvas": "^2.11.0", 18 | "canvas-constructor": "^3.2.0", 19 | "chalk": "^4.1.2", 20 | "dateformat": "^4.6.3", 21 | "discord-modals": "^1.3.9", 22 | "discord-temp-channels": "^3.0.2", 23 | "discord-together": "^1.3.31", 24 | "discord.js": "^13.12.0", 25 | "distube": "^3.3.4", 26 | "erela.js": "^2.4.0", 27 | "express": "^4.17.3", 28 | "express-session": "^1.17.2", 29 | "ffmpeg-static": "^5.1.0", 30 | "figlet": "^1.5.2", 31 | "js-yaml": "^4.1.0", 32 | "memorystore": "^1.6.6", 33 | "ms": "^2.1.3", 34 | "nodemon": "^2.0.20", 35 | "parse-ms": "^2.1.0", 36 | "passport": "^0.5.2", 37 | "passport-discord": "^0.1.4", 38 | "pug": "^3.0.2", 39 | "quick.db": "^9.0.8", 40 | "string-progressbar": "^1.0.4", 41 | "undici": "^5.14.0", 42 | "yt-channel-info": "^3.2.1" 43 | }, 44 | "devDependencies": { 45 | "@types/dateformat": "^5.0.0", 46 | "@types/express-session": "^1.17.5", 47 | "@types/js-yaml": "^4.0.5", 48 | "@types/ms": "^0.7.31", 49 | "@types/node": "^18.11.18", 50 | "@types/passport-discord": "^0.1.6", 51 | "dotenv": "^16.0.3", 52 | "npm": "^9.2.0", 53 | "pnpm": "^6.32.6", 54 | "ts-node": "^10.9.1", 55 | "typescript": "^4.9.4", 56 | "yarn": "^1.22.18" 57 | }, 58 | "scripts": { 59 | "test": "echo \"works fine\"", 60 | "start": "node ." 61 | }, 62 | "repository": "https://github.com/DefExtra/devLOG-903-.git", 63 | "author": "Def", 64 | "license": "MIT" 65 | } 66 | -------------------------------------------------------------------------------- /src/commands/admin/add-emoji.js: -------------------------------------------------------------------------------- 1 | "use strict"; 2 | var __importDefault = (this && this.__importDefault) || function (mod) { 3 | return (mod && mod.__esModule) ? mod : { "default": mod }; 4 | }; 5 | Object.defineProperty(exports, "__esModule", { value: true }); 6 | const discord_js_1 = require("discord.js"); 7 | const __1 = __importDefault(require("../../..")); 8 | const respond_1 = require("../../utils/modules/respond"); 9 | const checkPerms_1 = __importDefault(require("../../functions/checkPerms")); 10 | const progressbar = require("string-progressbar"); 11 | exports.default = { 12 | name: "add-emoji", 13 | description: "add emojis to the server.", 14 | type: 1, 15 | options: [ 16 | { 17 | name: "emojis", 18 | type: 3, 19 | required: true, 20 | description: "the emoji you won't to add", 21 | }, 22 | ], 23 | run: async (client, interaction, message, args, isSlash, author, guild, channel, db) => { 24 | let settingsTable = await db.table("settings"); 25 | let lang = (await settingsTable.get(`Lang_${guild.id}`)) || "en"; 26 | let REPLYS = __1.default.replys[lang]; 27 | let perms = await (0, checkPerms_1.default)(guild.members.cache.get(author.id), "BAN_MEMBERS", { 28 | base1: interaction, 29 | base2: message, 30 | isSlash, 31 | }, REPLYS); 32 | let emoji = args[0]?.value; 33 | if (perms == true) { 34 | let customemoji = discord_js_1.Util.parseEmoji(emoji); 35 | if (customemoji?.id) { 36 | const Link = `https://cdn.discordapp.com/emojis/${customemoji.id}.${customemoji.animated ? "gif" : "png"}`; 37 | const name = args.slice(1).join(" "); 38 | guild.emojis.create(`${Link}`, `${name || `${customemoji.name}`}`); 39 | (0, respond_1.respond)(interaction, message, { 40 | content: REPLYS.emojiADD.replace("{emoji}", `${name || `${customemoji.name}`}`), 41 | }, isSlash); 42 | } 43 | else { 44 | return (0, respond_1.respond)(interaction, message, { 45 | content: "Bad reading." 46 | }, isSlash); 47 | } 48 | } 49 | }, 50 | }; 51 | -------------------------------------------------------------------------------- /src/commands/admin/ban.js: -------------------------------------------------------------------------------- 1 | "use strict"; 2 | var __importDefault = (this && this.__importDefault) || function (mod) { 3 | return (mod && mod.__esModule) ? mod : { "default": mod }; 4 | }; 5 | Object.defineProperty(exports, "__esModule", { value: true }); 6 | const discord_js_1 = require("discord.js"); 7 | const respond_1 = require("../../utils/modules/respond"); 8 | const __1 = __importDefault(require("../../..")); 9 | const checkPerms_1 = __importDefault(require("../../functions/checkPerms")); 10 | exports.default = { 11 | name: "ban", 12 | description: "ban members.", 13 | type: 1, 14 | options: [ 15 | { 16 | name: "member", 17 | description: "the member you will ban.", 18 | type: 6, 19 | required: true, 20 | }, 21 | ], 22 | run: async (client, interaction, message, args, isSlash, author, guild, channel, db) => { 23 | let settingsTable = await db.table("settings"); 24 | let lang = (await settingsTable.get(`Lang_${guild.id}`)) || "en"; 25 | let REPLYS = __1.default.replys[lang]; 26 | let perms = await (0, checkPerms_1.default)(guild.members.cache.get(author.id), "BAN_MEMBERS", { 27 | base1: interaction, 28 | base2: message, 29 | isSlash, 30 | }, REPLYS); 31 | if (perms == true) { 32 | (0, respond_1.respond)(interaction, message, { 33 | components: [ 34 | new discord_js_1.MessageActionRow().addComponents(new discord_js_1.MessageSelectMenu() 35 | .setCustomId("menu") 36 | .setMaxValues(1) 37 | .setMinValues(1) 38 | .setOptions(REPLYS.ban_kickREASONS)), 39 | ], 40 | }, isSlash).then((d) => { 41 | d.createMessageComponentCollector({ 42 | filter: (i) => i.user.id == author.id, 43 | max: 1, 44 | }).on("collect", (c) => { 45 | let member = guild.members.cache.get(args[0]?.value); 46 | if (!member) 47 | return; 48 | if (member?.id == author.id) { 49 | (0, respond_1.editRespond)(interaction, message, { 50 | components: [], 51 | content: REPLYS.cantBanurSelf, 52 | }, isSlash, d.id); 53 | return; 54 | } 55 | let pr = guild.members.cache.get(author.id)?.roles.highest.position; 56 | if (member?.roles.highest?.position >= pr) { 57 | (0, respond_1.editRespond)(interaction, message, { 58 | components: [], 59 | content: REPLYS.errBAN, 60 | }, isSlash, d.id); 61 | return; 62 | } 63 | member 64 | ?.ban({ 65 | reason: c.values[0], 66 | }) 67 | .then(() => { 68 | (0, respond_1.editRespond)(interaction, message, { 69 | components: [], 70 | content: REPLYS.doneBAN 71 | .replace("{userTAG}", member?.user.tag) 72 | .replace("{reason}", c.values[0]), 73 | }, isSlash, d.id); 74 | }) 75 | .catch((err) => { 76 | (0, respond_1.editRespond)(interaction, message, { 77 | components: [], 78 | content: REPLYS.errBAN, 79 | }, isSlash, d.id); 80 | }); 81 | }); 82 | }); 83 | } 84 | }, 85 | }; 86 | -------------------------------------------------------------------------------- /src/commands/admin/clear.js: -------------------------------------------------------------------------------- 1 | "use strict"; 2 | var __importDefault = (this && this.__importDefault) || function (mod) { 3 | return (mod && mod.__esModule) ? mod : { "default": mod }; 4 | }; 5 | Object.defineProperty(exports, "__esModule", { value: true }); 6 | const respond_1 = require("../../utils/modules/respond"); 7 | const __1 = __importDefault(require("../../..")); 8 | const checkPerms_1 = __importDefault(require("../../functions/checkPerms")); 9 | exports.default = { 10 | name: "clear", 11 | description: "clear messages.", 12 | type: 1, 13 | options: [ 14 | { 15 | name: "number_of_messages", 16 | type: 3, 17 | description: "the number of messages you won't to delete.", 18 | required: false, 19 | }, 20 | { 21 | name: "stack", 22 | type: 3, 23 | description: "how many stacks of messages you wan't to delete (stack = 100).", 24 | required: false, 25 | }, 26 | ], 27 | run: async (client, interaction, message, args, isSlash, author, guild, channel, db) => { 28 | let settingsTable = await db.table("settings"); 29 | let lang = (await settingsTable.get(`Lang_${guild.id}`)) || "en"; 30 | let REPLYS = __1.default.replys[lang]; 31 | let perms = await (0, checkPerms_1.default)(guild.members.cache.get(author.id), "MANAGE_MESSAGES", { 32 | base1: interaction, 33 | base2: message, 34 | isSlash, 35 | }, REPLYS); 36 | if (perms == true) { 37 | try { 38 | let count = 100; 39 | if (args[0]?.value) 40 | count = args[0].value; 41 | if (count && !args[1]?.value) { 42 | if (isNaN(count)) 43 | return (0, respond_1.respond)(interaction, message, { 44 | content: REPLYS.cmdOptionsNana, 45 | }, isSlash); 46 | channel 47 | .bulkDelete(Number(count)); 48 | } 49 | else { 50 | if (isNaN(args[1]?.value)) 51 | return (0, respond_1.respond)(interaction, message, { content: REPLYS.cmdOptionsNana }, isSlash); 52 | for (let index = 0; index < Number(args[1]?.value); index++) { 53 | channel 54 | .bulkDelete(100); 55 | } 56 | } 57 | (0, respond_1.respond)(interaction, message, { 58 | content: REPLYS.clearDone 59 | }, isSlash); 60 | } 61 | catch (err) { 62 | console.log(err); 63 | (0, respond_1.respond)(interaction, message, { 64 | content: `Error: ${err}` 65 | }, isSlash); 66 | } 67 | } 68 | }, 69 | }; 70 | -------------------------------------------------------------------------------- /src/commands/admin/embed.js: -------------------------------------------------------------------------------- 1 | "use strict"; 2 | var __importDefault = (this && this.__importDefault) || function (mod) { 3 | return (mod && mod.__esModule) ? mod : { "default": mod }; 4 | }; 5 | Object.defineProperty(exports, "__esModule", { value: true }); 6 | const __1 = __importDefault(require("../../..")); 7 | const checkPerms_1 = __importDefault(require("../../functions/checkPerms")); 8 | exports.default = { 9 | name: "embed", 10 | description: "makes the bot say something in embed.", 11 | type: 1, 12 | options: [ 13 | { 14 | name: "text", 15 | description: "the word that the bot will say.", 16 | type: 3, 17 | required: true, 18 | }, 19 | { 20 | name: "color", 21 | description: "the embed color.", 22 | type: 3, 23 | required: false, 24 | }, 25 | ], 26 | run: async (client, interaction, message, args, isSlash, author, guild, channel, db) => { 27 | let settingsTable = await db.table("settings"); 28 | let lang = (await settingsTable.get(`Lang_${guild.id}`)) || "en"; 29 | let REPLYS = __1.default.replys[lang]; 30 | let perms = await (0, checkPerms_1.default)(guild.members.cache.get(author.id), "MANAGE_MESSAGES", { 31 | base1: interaction, 32 | base2: message, 33 | isSlash, 34 | }, REPLYS); 35 | if (perms == true) { 36 | if (message) 37 | setTimeout(() => message.delete()); 38 | if (interaction) 39 | setTimeout(() => interaction.deleteReply()); 40 | channel.send({ 41 | embeds: [ 42 | { 43 | color: args[1] ? args[1].value.toUpperCase() : "RANDOM", 44 | description: args[0]?.value, 45 | }, 46 | ], 47 | }); 48 | } 49 | }, 50 | }; 51 | -------------------------------------------------------------------------------- /src/commands/admin/files-only.js: -------------------------------------------------------------------------------- 1 | "use strict"; 2 | var __importDefault = (this && this.__importDefault) || function (mod) { 3 | return (mod && mod.__esModule) ? mod : { "default": mod }; 4 | }; 5 | Object.defineProperty(exports, "__esModule", { value: true }); 6 | const respond_1 = require("../../utils/modules/respond"); 7 | const __1 = __importDefault(require("../../..")); 8 | const checkPerms_1 = __importDefault(require("../../functions/checkPerms")); 9 | exports.default = { 10 | name: "files-only", 11 | description: "make channel for files only.", 12 | type: 1, 13 | options: [ 14 | { 15 | name: "channel", 16 | description: "the channel you will make in files only.", 17 | type: 7, 18 | required: true, 19 | }, 20 | ], 21 | run: async (client, interaction, message, args, isSlash, author, guild, channel, db) => { 22 | let settingsTable = await db.table("settings"); 23 | let lang = (await settingsTable.get(`Lang_${guild.id}`)) || "en"; 24 | let REPLYS = __1.default.replys[lang]; 25 | let perms = await (0, checkPerms_1.default)(guild.members.cache.get(author.id), "MANAGE_CHANNELS", { 26 | base1: interaction, 27 | base2: message, 28 | isSlash, 29 | }, REPLYS); 30 | if (perms == true) { 31 | let ch = guild.channels.cache.get(channel.id || args[0]?.value); 32 | let d = await db.get(`files-only_${guild.id}`); 33 | if (d) 34 | db.push(`files-only_${guild.id}`, ch?.id); 35 | else 36 | await db.set(`files-only_${guild.id}`, [`${ch?.id}`]); 37 | (0, respond_1.respond)(interaction, message, { 38 | content: REPLYS.FILES_ONLY, 39 | }, isSlash); 40 | } 41 | }, 42 | }; 43 | -------------------------------------------------------------------------------- /src/commands/admin/hide.js: -------------------------------------------------------------------------------- 1 | "use strict"; 2 | var __importDefault = (this && this.__importDefault) || function (mod) { 3 | return (mod && mod.__esModule) ? mod : { "default": mod }; 4 | }; 5 | Object.defineProperty(exports, "__esModule", { value: true }); 6 | const respond_1 = require("../../utils/modules/respond"); 7 | const __1 = __importDefault(require("../../..")); 8 | const checkPerms_1 = __importDefault(require("../../functions/checkPerms")); 9 | exports.default = { 10 | name: "hide", 11 | description: "hide channels.", 12 | type: 1, 13 | options: [ 14 | { 15 | name: "channel", 16 | description: "the channel you will hide.", 17 | type: 7, 18 | required: false, 19 | }, 20 | { 21 | name: "user", 22 | description: "the user you will hide for.", 23 | type: 6, 24 | required: false, 25 | }, 26 | ], 27 | run: async (client, interaction, message, args, isSlash, author, guild, channel, db) => { 28 | let settingsTable = await db.table("settings"); 29 | let lang = (await settingsTable.get(`Lang_${guild.id}`)) || "en"; 30 | let REPLYS = __1.default.replys[lang]; 31 | let perms = await (0, checkPerms_1.default)(guild.members.cache.get(author.id), "MANAGE_CHANNELS", { 32 | base1: interaction, 33 | base2: message, 34 | isSlash, 35 | }, REPLYS); 36 | if (perms == true) { 37 | let ch = guild.channels.cache.get(args[0]?.value || channel.id); 38 | let target = guild.members.cache.get(args[1]?.value || args[0]?.value) || 39 | guild.roles.everyone; 40 | if (ch?.type == "GUILD_TEXT") { 41 | ch.permissionOverwrites 42 | .edit(target, { 43 | VIEW_CHANNEL: false, 44 | }); 45 | } 46 | else if (ch?.type == "GUILD_VOICE") { 47 | ch.permissionOverwrites 48 | .edit(target, { 49 | VIEW_CHANNEL: false, 50 | CONNECT: false, 51 | }); 52 | } 53 | (0, respond_1.respond)(interaction, message, { 54 | content: REPLYS.doneHIDE, 55 | }, isSlash); 56 | } 57 | }, 58 | }; 59 | -------------------------------------------------------------------------------- /src/commands/admin/kick.js: -------------------------------------------------------------------------------- 1 | "use strict"; 2 | var __importDefault = (this && this.__importDefault) || function (mod) { 3 | return (mod && mod.__esModule) ? mod : { "default": mod }; 4 | }; 5 | Object.defineProperty(exports, "__esModule", { value: true }); 6 | const discord_js_1 = require("discord.js"); 7 | const respond_1 = require("../../utils/modules/respond"); 8 | const __1 = __importDefault(require("../../..")); 9 | const checkPerms_1 = __importDefault(require("../../functions/checkPerms")); 10 | exports.default = { 11 | name: "kick", 12 | description: "kick members.", 13 | type: 1, 14 | options: [ 15 | { 16 | name: "member", 17 | description: "the member you will kick.", 18 | type: 6, 19 | required: true, 20 | }, 21 | ], 22 | run: async (client, interaction, message, args, isSlash, author, guild, channel, db) => { 23 | let settingsTable = await db.table("settings"); 24 | let lang = (await settingsTable.get(`Lang_${guild.id}`)) || "en"; 25 | let REPLYS = __1.default.replys[lang]; 26 | let perms = await (0, checkPerms_1.default)(guild.members.cache.get(author.id), "KICK_MEMBERS", { 27 | base1: interaction, 28 | base2: message, 29 | isSlash, 30 | }, REPLYS); 31 | if (perms == true) { 32 | (0, respond_1.respond)(interaction, message, { 33 | components: [ 34 | new discord_js_1.MessageActionRow().addComponents(new discord_js_1.MessageSelectMenu() 35 | .setCustomId("menu") 36 | .setMaxValues(1) 37 | .setMinValues(1) 38 | .setOptions(REPLYS.ban_kickREASONS)), 39 | ], 40 | }, isSlash).then((d) => { 41 | d.createMessageComponentCollector({ 42 | filter: (i) => i.user.id == author.id, 43 | max: 1, 44 | }).on("collect", (c) => { 45 | let member = guild.members.cache.get(args[0]?.value); 46 | if (!member) 47 | return; 48 | if (member?.id == author.id) { 49 | (0, respond_1.editRespond)(interaction, message, { 50 | components: [], 51 | content: REPLYS.cantKickurSelf, 52 | }, isSlash, d.id); 53 | return; 54 | } 55 | let pr = guild.members.cache.get(author.id)?.roles.highest.position; 56 | if (member?.roles.highest?.position >= pr) { 57 | (0, respond_1.editRespond)(interaction, message, { 58 | components: [], 59 | content: REPLYS.errKICK, 60 | }, isSlash, d.id); 61 | return; 62 | } 63 | member 64 | ?.kick(c.values[0]) 65 | .then(() => { 66 | (0, respond_1.editRespond)(interaction, message, { 67 | components: [], 68 | content: REPLYS.doneKICK 69 | .replace("{userTAG}", member?.user.tag) 70 | .replace("{reason}", c.values[0]), 71 | }, isSlash, d.id); 72 | }) 73 | .catch((err) => { 74 | (0, respond_1.editRespond)(interaction, message, { 75 | components: [], 76 | content: REPLYS.errKICK, 77 | }, isSlash, d.id); 78 | }); 79 | }); 80 | }); 81 | } 82 | }, 83 | }; 84 | -------------------------------------------------------------------------------- /src/commands/admin/lock.js: -------------------------------------------------------------------------------- 1 | "use strict"; 2 | var __importDefault = (this && this.__importDefault) || function (mod) { 3 | return (mod && mod.__esModule) ? mod : { "default": mod }; 4 | }; 5 | Object.defineProperty(exports, "__esModule", { value: true }); 6 | const respond_1 = require("../../utils/modules/respond"); 7 | const __1 = __importDefault(require("../../..")); 8 | const checkPerms_1 = __importDefault(require("../../functions/checkPerms")); 9 | exports.default = { 10 | name: "lock", 11 | description: "lock channels.", 12 | type: 1, 13 | options: [ 14 | { 15 | name: "channel", 16 | description: "the channel you will lock.", 17 | type: 7, 18 | required: false, 19 | }, 20 | { 21 | name: "user", 22 | description: "the user you will lock for.", 23 | type: 6, 24 | required: false, 25 | }, 26 | ], 27 | run: async (client, interaction, message, args, isSlash, author, guild, channel, db) => { 28 | let settingsTable = await db.table("settings"); 29 | let lang = (await settingsTable.get(`Lang_${guild.id}`)) || "en"; 30 | let REPLYS = __1.default.replys[lang]; 31 | let perms = await (0, checkPerms_1.default)(guild.members.cache.get(author.id), "MANAGE_CHANNELS", { 32 | base1: interaction, 33 | base2: message, 34 | isSlash, 35 | }, REPLYS); 36 | if (perms == true) { 37 | let ch = guild.channels.cache.get(args[0]?.value || channel.id); 38 | let target = guild.members.cache.get(args[1]?.value || args[0]?.value) || 39 | guild.roles.everyone; 40 | if (ch?.type == "GUILD_TEXT") { 41 | ch.permissionOverwrites 42 | .edit(target, { 43 | SEND_MESSAGES: false, 44 | ADD_REACTIONS: false, 45 | }); 46 | } 47 | else if (ch?.type == "GUILD_VOICE") { 48 | ch.permissionOverwrites 49 | .edit(target, { 50 | CONNECT: false, 51 | }); 52 | } 53 | (0, respond_1.respond)(interaction, message, { 54 | content: REPLYS.doneLOCK, 55 | }, isSlash); 56 | } 57 | }, 58 | }; 59 | -------------------------------------------------------------------------------- /src/commands/admin/mute.js: -------------------------------------------------------------------------------- 1 | "use strict"; 2 | var __importDefault = (this && this.__importDefault) || function (mod) { 3 | return (mod && mod.__esModule) ? mod : { "default": mod }; 4 | }; 5 | Object.defineProperty(exports, "__esModule", { value: true }); 6 | const ms_1 = __importDefault(require("ms")); 7 | const respond_1 = require("../../utils/modules/respond"); 8 | const __1 = __importDefault(require("../../..")); 9 | const checkPerms_1 = __importDefault(require("../../functions/checkPerms")); 10 | exports.default = { 11 | name: "mute", 12 | description: "mute members.", 13 | type: 1, 14 | options: [ 15 | { 16 | name: "member", 17 | description: "the member you won't to change mute him.", 18 | type: 6, 19 | required: true, 20 | }, 21 | { 22 | name: "time", 23 | description: "time then the member will go unmuted. (3m)", 24 | type: 3, 25 | required: true, 26 | }, 27 | ], 28 | run: async (client, interaction, message, args, isSlash, author, guild, channel, db) => { 29 | let settingsTable = await db.table("settings"); 30 | let lang = (await settingsTable.get(`Lang_${guild.id}`)) || "en"; 31 | let REPLYS = __1.default.replys[lang]; 32 | let perms = await (0, checkPerms_1.default)(guild.members.cache.get(author.id), "MANAGE_ROLES", { 33 | base1: interaction, 34 | base2: message, 35 | isSlash, 36 | }, REPLYS); 37 | if (perms == true) { 38 | let member = guild.members.cache.get(args[0]?.value); 39 | if (member?.user.id == author.id) 40 | return (0, respond_1.respond)(interaction, message, { 41 | content: REPLYS.muteHIMself 42 | }, isSlash); 43 | let time = args[1]?.value; 44 | let muteRole = await guild.roles.cache.find((e) => e.name == "🔇 - Muted"); 45 | if (!muteRole) { 46 | await guild.roles 47 | .create({ 48 | name: "🔇 - Muted", 49 | color: "GREY", 50 | hoist: true, 51 | mentionable: false, 52 | reason: "N-System v4", 53 | }) 54 | .then(async (r) => { 55 | await r.setPermissions(0n); 56 | guild.channels.cache 57 | .filter((r) => r.type == "GUILD_TEXT") 58 | .forEach((c) => { 59 | if (c.type == "GUILD_TEXT") { 60 | c.permissionOverwrites.edit(r, { 61 | SEND_MESSAGES: false, 62 | ADD_REACTIONS: false, 63 | }); 64 | } 65 | }); 66 | muteRole = r; 67 | }); 68 | } 69 | (0, respond_1.respond)(interaction, message, { 70 | content: REPLYS.doneMUTE 71 | .replace("{userTAG}", member?.user.tag) 72 | .replace("{time}", time), 73 | }, isSlash); 74 | setTimeout(async () => { 75 | await member?.roles.remove(muteRole || ""); 76 | }, (0, ms_1.default)(time || "3m")); 77 | try { 78 | await member?.roles.add(muteRole || ""); 79 | } 80 | catch (err) { 81 | console.log(err); 82 | (0, respond_1.respond)(interaction, message, { 83 | content: REPLYS.errMUTE, 84 | }, isSlash); 85 | } 86 | } 87 | }, 88 | }; 89 | -------------------------------------------------------------------------------- /src/commands/admin/say.js: -------------------------------------------------------------------------------- 1 | "use strict"; 2 | var __importDefault = (this && this.__importDefault) || function (mod) { 3 | return (mod && mod.__esModule) ? mod : { "default": mod }; 4 | }; 5 | Object.defineProperty(exports, "__esModule", { value: true }); 6 | const __1 = __importDefault(require("../../..")); 7 | const checkPerms_1 = __importDefault(require("../../functions/checkPerms")); 8 | exports.default = { 9 | name: "say", 10 | description: "makes the bot say something.", 11 | type: 1, 12 | options: [ 13 | { 14 | name: "text", 15 | description: "the word that the bot will say.", 16 | type: 3, 17 | required: true, 18 | }, 19 | ], 20 | run: async (client, interaction, message, args, isSlash, author, guild, channel, db) => { 21 | let settingsTable = await db.table("settings"); 22 | let lang = (await settingsTable.get(`Lang_${guild.id}`)) || "en"; 23 | let REPLYS = __1.default.replys[lang]; 24 | let perms = await (0, checkPerms_1.default)(guild.members.cache.get(author.id), "MANAGE_MESSAGES", { 25 | base1: interaction, 26 | base2: message, 27 | isSlash, 28 | }, REPLYS); 29 | if (perms == true) { 30 | if (message) 31 | setTimeout(() => message.delete()); 32 | if (interaction) 33 | setTimeout(() => interaction.deleteReply()); 34 | channel.send({ content: args[0]?.value + "_ _" }); 35 | } 36 | }, 37 | }; 38 | -------------------------------------------------------------------------------- /src/commands/admin/setnickname.js: -------------------------------------------------------------------------------- 1 | "use strict"; 2 | var __importDefault = (this && this.__importDefault) || function (mod) { 3 | return (mod && mod.__esModule) ? mod : { "default": mod }; 4 | }; 5 | Object.defineProperty(exports, "__esModule", { value: true }); 6 | const respond_1 = require("../../utils/modules/respond"); 7 | const __1 = __importDefault(require("../../..")); 8 | const checkPerms_1 = __importDefault(require("../../functions/checkPerms")); 9 | exports.default = { 10 | name: "nickname", 11 | description: "change nickname for any member.", 12 | type: 1, 13 | options: [ 14 | { 15 | name: "member", 16 | description: "the member you won't to change his nickname.", 17 | type: 6, 18 | required: true, 19 | }, 20 | { 21 | name: "name", 22 | description: "the nickname.", 23 | type: 3, 24 | required: true, 25 | }, 26 | ], 27 | run: async (client, interaction, message, args, isSlash, author, guild, channel, db) => { 28 | let settingsTable = await db.table("settings"); 29 | let lang = (await settingsTable.get(`Lang_${guild.id}`)) || "en"; 30 | let REPLYS = __1.default.replys[lang]; 31 | let perms = await (0, checkPerms_1.default)(guild.members.cache.get(author.id), "MANAGE_NICKNAMES", { 32 | base1: interaction, 33 | base2: message, 34 | isSlash, 35 | }, REPLYS); 36 | if (perms == true) { 37 | let name = args[1]?.value; 38 | let user = guild.members.cache.get(args[0]?.value); 39 | user?.setNickname(name, "Nsysten-v4") 40 | .then(() => { 41 | (0, respond_1.respond)(interaction, message, { 42 | content: REPLYS.doneNICK 43 | .replace("{userUsername}", user?.user.username) 44 | .replace("{nickname}", name), 45 | }, isSlash); 46 | }) 47 | .catch((err) => { 48 | (0, respond_1.respond)(interaction, message, { 49 | content: REPLYS.errNICK, 50 | }, isSlash); 51 | }); 52 | } 53 | }, 54 | }; 55 | -------------------------------------------------------------------------------- /src/commands/admin/show.js: -------------------------------------------------------------------------------- 1 | "use strict"; 2 | var __importDefault = (this && this.__importDefault) || function (mod) { 3 | return (mod && mod.__esModule) ? mod : { "default": mod }; 4 | }; 5 | Object.defineProperty(exports, "__esModule", { value: true }); 6 | const respond_1 = require("../../utils/modules/respond"); 7 | const __1 = __importDefault(require("../../..")); 8 | const checkPerms_1 = __importDefault(require("../../functions/checkPerms")); 9 | exports.default = { 10 | name: "show", 11 | description: "show channels.", 12 | type: 1, 13 | options: [ 14 | { 15 | name: "channel", 16 | description: "the channel you will show.", 17 | type: 7, 18 | required: false, 19 | }, 20 | { 21 | name: "user", 22 | description: "the user you will show for.", 23 | type: 6, 24 | required: false, 25 | }, 26 | ], 27 | run: async (client, interaction, message, args, isSlash, author, guild, channel, db) => { 28 | let settingsTable = await db.table("settings"); 29 | let lang = (await settingsTable.get(`Lang_${guild.id}`)) || "en"; 30 | let REPLYS = __1.default.replys[lang]; 31 | let perms = await (0, checkPerms_1.default)(guild.members.cache.get(author.id), "MANAGE_CHANNELS", { 32 | base1: interaction, 33 | base2: message, 34 | isSlash, 35 | }, REPLYS); 36 | if (perms == true) { 37 | let ch = guild.channels.cache.get(args[0]?.value || channel.id); 38 | let target = guild.members.cache.get(args[1]?.value || args[0]?.value) || 39 | guild.roles.everyone; 40 | if (ch?.type == "GUILD_TEXT") { 41 | ch.permissionOverwrites 42 | .edit(target, { 43 | VIEW_CHANNEL: true, 44 | }); 45 | } 46 | else if (ch?.type == "GUILD_VOICE") { 47 | ch.permissionOverwrites 48 | .edit(target, { 49 | VIEW_CHANNEL: true, 50 | CONNECT: true, 51 | }); 52 | } 53 | (0, respond_1.respond)(interaction, message, { 54 | content: REPLYS.doneSHOW, 55 | }, isSlash); 56 | } 57 | }, 58 | }; 59 | -------------------------------------------------------------------------------- /src/commands/admin/slowmode.js: -------------------------------------------------------------------------------- 1 | "use strict"; 2 | var __importDefault = (this && this.__importDefault) || function (mod) { 3 | return (mod && mod.__esModule) ? mod : { "default": mod }; 4 | }; 5 | Object.defineProperty(exports, "__esModule", { value: true }); 6 | const respond_1 = require("../../utils/modules/respond"); 7 | const ms_1 = __importDefault(require("ms")); 8 | const __1 = __importDefault(require("../../..")); 9 | const checkPerms_1 = __importDefault(require("../../functions/checkPerms")); 10 | exports.default = { 11 | name: "slowmode", 12 | description: "change slowmode for any channel.", 13 | type: 1, 14 | options: [ 15 | { 16 | name: "time", 17 | description: "the slowmode time (with seconds).", 18 | type: 3, 19 | required: true, 20 | }, 21 | ], 22 | run: async (client, interaction, message, args, isSlash, author, guild, channel, db) => { 23 | let settingsTable = await db.table("settings"); 24 | let lang = (await settingsTable.get(`Lang_${guild.id}`)) || "en"; 25 | let REPLYS = __1.default.replys[lang]; 26 | let perms = await (0, checkPerms_1.default)(guild.members.cache.get(author.id), "MANAGE_CHANNELS", { 27 | base1: interaction, 28 | base2: message, 29 | isSlash, 30 | }, REPLYS); 31 | if (perms == true) { 32 | let t = args[0]?.value; 33 | let time = (0, ms_1.default)(t); 34 | if (channel.type == "GUILD_TEXT") { 35 | let td = channel; 36 | td.setRateLimitPerUser(time).catch(() => { 37 | (0, respond_1.respond)(interaction, message, { 38 | content: ":x:", 39 | }, isSlash); 40 | }); 41 | (0, respond_1.respond)(interaction, message, { 42 | content: REPLYS.slowDONE, 43 | }, isSlash); 44 | } 45 | } 46 | }, 47 | }; 48 | -------------------------------------------------------------------------------- /src/commands/admin/unban.js: -------------------------------------------------------------------------------- 1 | "use strict"; 2 | var __importDefault = (this && this.__importDefault) || function (mod) { 3 | return (mod && mod.__esModule) ? mod : { "default": mod }; 4 | }; 5 | Object.defineProperty(exports, "__esModule", { value: true }); 6 | const respond_1 = require("../../utils/modules/respond"); 7 | const __1 = __importDefault(require("../../..")); 8 | const checkPerms_1 = __importDefault(require("../../functions/checkPerms")); 9 | exports.default = { 10 | name: "unban", 11 | description: "unban members.", 12 | type: 1, 13 | options: [ 14 | { 15 | name: "user_id", 16 | description: "the user you will unban.", 17 | type: 3, 18 | required: true, 19 | }, 20 | ], 21 | run: async (client, interaction, message, args, isSlash, author, guild, channel, db) => { 22 | let settingsTable = await db.table("settings"); 23 | let lang = (await settingsTable.get(`Lang_${guild.id}`)) || "en"; 24 | let REPLYS = __1.default.replys[lang]; 25 | let perms = await (0, checkPerms_1.default)(guild.members.cache.get(author.id), "MODERATE_MEMBERS", { 26 | base1: interaction, 27 | base2: message, 28 | isSlash, 29 | }, REPLYS); 30 | let perms2 = await (0, checkPerms_1.default)(guild.members.cache.get(author.id), "BAN_MEMBERS", { 31 | base1: interaction, 32 | base2: message, 33 | isSlash, 34 | }, REPLYS); 35 | if (perms == true || perms2 == true) { 36 | let userID = args[0]?.value; 37 | await guild.bans 38 | .fetch(userID) 39 | .then((t) => { 40 | guild.bans 41 | .remove(guild.bans.cache.get(userID)?.user || "") 42 | .then(async () => { 43 | (0, respond_1.respond)(interaction, message, { 44 | content: REPLYS.unbanDONE.replace("{userTAG}", t.user.tag), 45 | }, isSlash); 46 | }) 47 | .catch((err) => { 48 | (0, respond_1.respond)(interaction, message, { 49 | content: REPLYS.unbanERR, 50 | }, isSlash); 51 | }); 52 | }) 53 | .catch((err) => { 54 | (0, respond_1.respond)(interaction, message, { 55 | content: REPLYS.unbanNOTfind, 56 | }, isSlash); 57 | return; 58 | }); 59 | } 60 | }, 61 | }; 62 | -------------------------------------------------------------------------------- /src/commands/admin/unlock.js: -------------------------------------------------------------------------------- 1 | "use strict"; 2 | var __importDefault = (this && this.__importDefault) || function (mod) { 3 | return (mod && mod.__esModule) ? mod : { "default": mod }; 4 | }; 5 | Object.defineProperty(exports, "__esModule", { value: true }); 6 | const respond_1 = require("../../utils/modules/respond"); 7 | const __1 = __importDefault(require("../../..")); 8 | const checkPerms_1 = __importDefault(require("../../functions/checkPerms")); 9 | exports.default = { 10 | name: "unlock", 11 | description: "unlock channels.", 12 | type: 1, 13 | options: [ 14 | { 15 | name: "channel", 16 | description: "the channel you will unlock.", 17 | type: 7, 18 | required: false, 19 | }, 20 | { 21 | name: "user", 22 | description: "the user you will lock unfor.", 23 | type: 6, 24 | required: false, 25 | }, 26 | ], 27 | run: async (client, interaction, message, args, isSlash, author, guild, channel, db) => { 28 | let settingsTable = await db.table("settings"); 29 | let lang = (await settingsTable.get(`Lang_${guild.id}`)) || "en"; 30 | let REPLYS = __1.default.replys[lang]; 31 | let perms = await (0, checkPerms_1.default)(guild.members.cache.get(author.id), "MANAGE_CHANNELS", { 32 | base1: interaction, 33 | base2: message, 34 | isSlash, 35 | }, REPLYS); 36 | if (perms == true) { 37 | let ch = guild.channels.cache.get(args[0]?.value || channel.id); 38 | let target = guild.members.cache.get(args[1]?.value || args[0]?.value) || 39 | guild.roles.everyone; 40 | if (ch?.type == "GUILD_TEXT") { 41 | ch.permissionOverwrites 42 | .edit(target, { 43 | SEND_MESSAGES: true, 44 | ADD_REACTIONS: true, 45 | }); 46 | } 47 | else if (ch?.type == "GUILD_VOICE") { 48 | ch.permissionOverwrites 49 | .edit(target, { 50 | CONNECT: true, 51 | }); 52 | } 53 | (0, respond_1.respond)(interaction, message, { 54 | content: REPLYS.doneUNLOCK, 55 | }, isSlash); 56 | } 57 | }, 58 | }; 59 | -------------------------------------------------------------------------------- /src/commands/admin/unmute.js: -------------------------------------------------------------------------------- 1 | "use strict"; 2 | var __importDefault = (this && this.__importDefault) || function (mod) { 3 | return (mod && mod.__esModule) ? mod : { "default": mod }; 4 | }; 5 | Object.defineProperty(exports, "__esModule", { value: true }); 6 | const respond_1 = require("../../utils/modules/respond"); 7 | const __1 = __importDefault(require("../../..")); 8 | const checkPerms_1 = __importDefault(require("../../functions/checkPerms")); 9 | exports.default = { 10 | name: "unmute", 11 | description: "unmute members.", 12 | type: 1, 13 | options: [ 14 | { 15 | name: "member", 16 | description: "the member you won't to change mute him.", 17 | type: 6, 18 | required: true, 19 | }, 20 | ], 21 | run: async (client, interaction, message, args, isSlash, author, guild, channel, db) => { 22 | let settingsTable = await db.table("settings"); 23 | let lang = (await settingsTable.get(`Lang_${guild.id}`)) || "en"; 24 | let REPLYS = __1.default.replys[lang]; 25 | let perms = await (0, checkPerms_1.default)(guild.members.cache.get(author.id), "MANAGE_ROLES", { 26 | base1: interaction, 27 | base2: message, 28 | isSlash, 29 | }, REPLYS); 30 | if (perms == true) { 31 | let member = guild.members.cache.get(args[0]?.value); 32 | let muteRole = await guild.roles.cache.find((e) => e.name == "🔇 - Muted"); 33 | if (!muteRole) { 34 | await guild.roles 35 | .create({ 36 | name: "🔇 - Muted", 37 | color: "GREY", 38 | hoist: true, 39 | mentionable: false, 40 | reason: "N-System v4", 41 | }) 42 | .then(async (r) => { 43 | await r.setPermissions(0n); 44 | guild.channels.cache.filter((r) => r.type == "GUILD_TEXT").forEach(c => { 45 | if (c.type == "GUILD_TEXT") { 46 | c.permissionOverwrites.edit(r, { 47 | SEND_MESSAGES: false, 48 | ADD_REACTIONS: false 49 | }); 50 | } 51 | }); 52 | muteRole = r; 53 | }); 54 | } 55 | await member?.roles.remove(muteRole || "") 56 | .then(() => { 57 | (0, respond_1.respond)(interaction, message, { 58 | content: REPLYS.doneUNMUTE.replace("{userTAG}", member?.user.tag), 59 | }, isSlash); 60 | }) 61 | .catch((err) => { 62 | (0, respond_1.respond)(interaction, message, { 63 | content: REPLYS.errUNMUTE, 64 | }, isSlash); 65 | }); 66 | } 67 | }, 68 | }; 69 | -------------------------------------------------------------------------------- /src/commands/auto/auto-respond.js: -------------------------------------------------------------------------------- 1 | "use strict"; 2 | var __importDefault = (this && this.__importDefault) || function (mod) { 3 | return (mod && mod.__esModule) ? mod : { "default": mod }; 4 | }; 5 | Object.defineProperty(exports, "__esModule", { value: true }); 6 | const respond_1 = require("../../utils/modules/respond"); 7 | const __1 = __importDefault(require("../../..")); 8 | const checkPerms_1 = __importDefault(require("../../functions/checkPerms")); 9 | exports.default = { 10 | name: "auto-respond", 11 | description: "🤖 set auto respond system", 12 | type: 1, 13 | options: [ 14 | { 15 | name: "msg", 16 | description: "✉ the message that the bot will auto respond for it.", 17 | required: true, 18 | type: 3, 19 | }, 20 | { 21 | name: "reply", 22 | description: "✉ the reply that the bot will say it.", 23 | required: true, 24 | type: 3, 25 | }, 26 | ], 27 | run: async (client, interaction, message, args, isSlash, author, guild, channel, db) => { 28 | let autoTable = await db.table("auto"); 29 | let settingsTable = await db.table("settings"); 30 | let lang = (await settingsTable.get(`Lang_${guild.id}`)) || "en"; 31 | let REPLYS = __1.default.replys[lang]; 32 | let perms = await (0, checkPerms_1.default)(guild.members.cache.get(author.id), "ADMINISTRATOR", { 33 | base1: interaction, 34 | base2: message, 35 | isSlash, 36 | }, REPLYS); 37 | if (perms == true) { 38 | let reply = args[1]?.value; 39 | let msg = args[0]?.value; 40 | let check = await autoTable.get(`${msg}_${guild.id}`); 41 | if (check) { 42 | await autoTable.delete(`${msg}_${guild.id}`); 43 | (0, respond_1.respond)(interaction, message, { 44 | content: REPLYS.doneDeleteARes, 45 | }, isSlash); 46 | } 47 | else { 48 | await autoTable.set(`${msg}_${guild.id}`, reply); 49 | (0, respond_1.respond)(interaction, message, { 50 | content: REPLYS.doneMakedARes, 51 | }, isSlash); 52 | } 53 | } 54 | }, 55 | }; 56 | -------------------------------------------------------------------------------- /src/commands/auto/auto-role.js: -------------------------------------------------------------------------------- 1 | "use strict"; 2 | var __importDefault = (this && this.__importDefault) || function (mod) { 3 | return (mod && mod.__esModule) ? mod : { "default": mod }; 4 | }; 5 | Object.defineProperty(exports, "__esModule", { value: true }); 6 | const respond_1 = require("../../utils/modules/respond"); 7 | const __1 = __importDefault(require("../../..")); 8 | const checkPerms_1 = __importDefault(require("../../functions/checkPerms")); 9 | exports.default = { 10 | name: "auto-role", 11 | description: "🤖 add a role when any member join", 12 | type: 1, 13 | options: [ 14 | { 15 | name: "role", 16 | description: "⚙ the role that the bot will give the member.", 17 | required: true, 18 | type: 8, 19 | }, 20 | ], 21 | run: async (client, interaction, message, args, isSlash, author, guild, channel, db) => { 22 | let autoTable = await db.table("auto"); 23 | let settingsTable = await db.table("settings"); 24 | let lang = (await settingsTable.get(`Lang_${guild.id}`)) || "en"; 25 | let REPLYS = __1.default.replys[lang]; 26 | let perms = await (0, checkPerms_1.default)(guild.members.cache.get(author.id), "ADMINISTRATOR", { 27 | base1: interaction, 28 | base2: message, 29 | isSlash, 30 | }, REPLYS); 31 | if (perms == true) { 32 | let role = guild.roles.cache.get(args[0]?.value); 33 | let check = await autoTable.get(`AutoRole_${guild.id}`); 34 | if (check && check == role?.id) { 35 | await autoTable.delete(`AutoRole_${guild.id}`); 36 | (0, respond_1.respond)(interaction, message, { 37 | content: REPLYS.doneDeleteARole, 38 | }, isSlash); 39 | } 40 | else { 41 | await autoTable.set(`AutoRole_${guild.id}`, role?.id); 42 | (0, respond_1.respond)(interaction, message, { 43 | content: REPLYS.doneUpdateARole, 44 | }, isSlash); 45 | } 46 | } 47 | }, 48 | }; 49 | -------------------------------------------------------------------------------- /src/commands/auto/line.js: -------------------------------------------------------------------------------- 1 | "use strict"; 2 | var __importDefault = (this && this.__importDefault) || function (mod) { 3 | return (mod && mod.__esModule) ? mod : { "default": mod }; 4 | }; 5 | Object.defineProperty(exports, "__esModule", { value: true }); 6 | const respond_1 = require("../../utils/modules/respond"); 7 | const __1 = __importDefault(require("../../..")); 8 | const checkPerms_1 = __importDefault(require("../../functions/checkPerms")); 9 | exports.default = { 10 | name: "auto-line", 11 | description: "🤖 set auto line to channels", 12 | type: 1, 13 | options: [ 14 | { 15 | name: "channel", 16 | description: "🔧 the channel you will.", 17 | required: true, 18 | type: 7, 19 | }, 20 | { 21 | name: "url", 22 | description: "🔧 the line image url.", 23 | required: true, 24 | type: 3, 25 | }, 26 | { 27 | name: "embed", 28 | description: "🔧 wont the line in embed or not?.", 29 | required: true, 30 | type: 3, 31 | choices: [ 32 | { name: "yes", value: "true" }, 33 | { name: "no", value: "false" }, 34 | ], 35 | }, 36 | ], 37 | run: async (client, interaction, message, args, isSlash, author, guild, channel, db) => { 38 | let settingsTable = await db.table("settings"); 39 | let lang = (await settingsTable.get(`Lang_${guild.id}`)) || "en"; 40 | let REPLYS = __1.default.replys[lang]; 41 | let perms = await (0, checkPerms_1.default)(guild.members.cache.get(author.id), "MANAGE_CHANNELS", { 42 | base1: interaction, 43 | base2: message, 44 | isSlash, 45 | }, REPLYS); 46 | if (perms == true) { 47 | let channel = guild.channels.cache.get(args[0]?.value); 48 | let embed = args[2]?.value; 49 | let url = args[1]?.value; 50 | let بتأكد = await db.get(`Line_${channel?.id}`); 51 | if (بتأكد) { 52 | await db.delete(`Line_${channel?.id}`); 53 | (0, respond_1.respond)(interaction, message, { 54 | content: REPLYS.deleLINE, 55 | }, isSlash); 56 | } 57 | else { 58 | await db.set(`Line_${channel?.id}`, { 59 | embed, 60 | url, 61 | }); 62 | (0, respond_1.respond)(interaction, message, { 63 | content: REPLYS.doneLINE, 64 | }, isSlash); 65 | } 66 | } 67 | }, 68 | }; 69 | -------------------------------------------------------------------------------- /src/commands/colors/color.js: -------------------------------------------------------------------------------- 1 | "use strict"; 2 | var __importDefault = (this && this.__importDefault) || function (mod) { 3 | return (mod && mod.__esModule) ? mod : { "default": mod }; 4 | }; 5 | Object.defineProperty(exports, "__esModule", { value: true }); 6 | const respond_1 = require("../../utils/modules/respond"); 7 | const __1 = __importDefault(require("../../..")); 8 | exports.default = { 9 | name: "color", 10 | description: "choose from the colors palit.", 11 | type: 1, 12 | options: [ 13 | { 14 | name: "color", 15 | type: 3, 16 | required: true, 17 | description: "the color number", 18 | }, 19 | ], 20 | run: async (client, interaction, message, args, isSlash, author, guild, channel, db) => { 21 | let settingsTable = await db.table("settings"); 22 | let lang = (await settingsTable.get(`Lang_${guild.id}`)) || "en"; 23 | let REPLYS = __1.default.replys[lang]; 24 | let color = args[0]?.value; 25 | if (guild.roles.cache.find((c) => c.name == color)) { 26 | let memberRoles = guild.members.cache.get(author.id); 27 | memberRoles?.roles.cache.forEach((r) => { 28 | if (!isNaN(r.name)) 29 | memberRoles?.roles.remove(r); 30 | }); 31 | memberRoles?.roles.add(guild.roles.cache.find((c) => c.name == color) || ""); 32 | return (0, respond_1.respond)(interaction, message, { content: REPLYS.doCOLOR }, isSlash); 33 | } 34 | else 35 | return (0, respond_1.respond)(interaction, message, { content: REPLYS.noCOLOR }, isSlash); 36 | }, 37 | }; 38 | -------------------------------------------------------------------------------- /src/commands/colors/colors.js: -------------------------------------------------------------------------------- 1 | "use strict"; 2 | var __importDefault = (this && this.__importDefault) || function (mod) { 3 | return (mod && mod.__esModule) ? mod : { "default": mod }; 4 | }; 5 | Object.defineProperty(exports, "__esModule", { value: true }); 6 | const respond_1 = require("../../utils/modules/respond"); 7 | const __1 = __importDefault(require("../../..")); 8 | const fs_1 = require("fs"); 9 | const canvas_constructor_1 = require("canvas-constructor"); 10 | exports.default = { 11 | name: "colors", 12 | description: "colors palit.", 13 | type: 1, 14 | run: async (client, interaction, message, args, isSlash, author, guild, channel, db) => { 15 | let settingsTable = await db.table("settings"); 16 | let lang = (await settingsTable.get(`Lang_${guild.id}`)) || "en"; 17 | let REPLYS = __1.default.replys[lang]; 18 | var x = 0; 19 | var y = 0; 20 | if (guild.roles.cache.filter((role) => !isNaN(role.name)).size <= 0) 21 | return; 22 | guild.roles.cache 23 | .filter((role) => !isNaN(role.name)) 24 | .sort((b1, b2) => Number(b1.name) - Number(b2.name)) 25 | .forEach(() => { 26 | x += 100; 27 | if (x > 100 * 12) { 28 | x = 100; 29 | y += 80; 30 | } 31 | }); 32 | var image = await (0, fs_1.readFileSync)(process.cwd() + "/src/data/colorsImage.png"); 33 | var xd = new canvas_constructor_1.Canvas(100 * 11, y + 350) 34 | .addBeveledImage(image, 0, 0, 100 * 11, y + 350, 100) 35 | .setTextBaseline("middle") 36 | .setColor("white") 37 | .setTextSize(60) 38 | .addText(`قائمة الألوان`, 375, 80); 39 | x = 0; 40 | y = 150; 41 | guild.roles.cache 42 | .filter((role) => !isNaN(role.name)) 43 | .sort((b1, b2) => Number(b1.name) - Number(b2.name)) 44 | .forEach((role) => { 45 | x += 75; 46 | if (x > 100 * 10) { 47 | x = 75; 48 | y += 80; 49 | } 50 | xd.setTextBaseline("middle") 51 | .setTextAlign("center") 52 | .setColor(role.hexColor) 53 | .addBeveledRect(x, y, 60, 60, 15) 54 | .setColor("white"); 55 | if (`${role.name}`.length > 2) { 56 | xd.setTextSize(30); 57 | } 58 | else if (`${role.name}`.length > 1) { 59 | xd.setTextSize(40); 60 | } 61 | else { 62 | xd.setTextSize(50); 63 | } 64 | xd.addText(role.name, x + 30, y + 30); 65 | }); 66 | (0, respond_1.respond)(interaction, message, { 67 | content: "Req:", 68 | files: [ 69 | { 70 | attachment: xd.toBuffer(), 71 | name: "image.png", 72 | }, 73 | ], 74 | }, isSlash); 75 | }, 76 | }; 77 | -------------------------------------------------------------------------------- /src/commands/colors/setcolor.js: -------------------------------------------------------------------------------- 1 | "use strict"; 2 | var __importDefault = (this && this.__importDefault) || function (mod) { 3 | return (mod && mod.__esModule) ? mod : { "default": mod }; 4 | }; 5 | Object.defineProperty(exports, "__esModule", { value: true }); 6 | const respond_1 = require("../../utils/modules/respond"); 7 | const __1 = __importDefault(require("../../..")); 8 | const checkPerms_1 = __importDefault(require("../../functions/checkPerms")); 9 | exports.default = { 10 | name: "setcolor", 11 | description: "change role color.", 12 | type: 1, 13 | options: [ 14 | { 15 | name: "hex", 16 | description: "the hex color code.", 17 | type: 3, 18 | required: true, 19 | }, 20 | { 21 | name: "role", 22 | description: "the role you won't to change.", 23 | type: 8, 24 | required: true, 25 | }, 26 | ], 27 | run: async (client, interaction, message, args, isSlash, author, guild, channel, db) => { 28 | let settingsTable = await db.table("settings"); 29 | let lang = (await settingsTable.get(`Lang_${guild.id}`)) || "en"; 30 | let REPLYS = __1.default.replys[lang]; 31 | let perms = await (0, checkPerms_1.default)(guild.members.cache.get(author.id), "MANAGE_ROLES", { 32 | base1: interaction, 33 | base2: message, 34 | isSlash, 35 | }, REPLYS); 36 | if (perms == true) { 37 | let hex = args[0]?.value; 38 | let role = guild.roles.cache.get(args[1]?.value); 39 | role?.setColor(hex); 40 | (0, respond_1.respond)(interaction, message, { 41 | content: REPLYS.colorDOne, 42 | }, isSlash); 43 | } 44 | }, 45 | }; 46 | -------------------------------------------------------------------------------- /src/commands/config/admin-role.js: -------------------------------------------------------------------------------- 1 | "use strict"; 2 | var __importDefault = (this && this.__importDefault) || function (mod) { 3 | return (mod && mod.__esModule) ? mod : { "default": mod }; 4 | }; 5 | Object.defineProperty(exports, "__esModule", { value: true }); 6 | const respond_1 = require("../../utils/modules/respond"); 7 | const __1 = __importDefault(require("../../..")); 8 | exports.default = { 9 | name: "admin-role", 10 | description: "🔧 add/remove a bot op roles .", 11 | type: 1, 12 | options: [ 13 | { 14 | name: "role", 15 | required: true, 16 | type: 8, 17 | description: "🔧 the role you will make his acess all bot options", 18 | }, 19 | ], 20 | run: async (client, interaction, message, args, isSlash, author, guild, channel, db) => { 21 | let settingsTable = await db.table("settings"); 22 | let lang = (await settingsTable.get(`Lang_${guild.id}`)) || "en"; 23 | let REPLYS = __1.default.replys[lang]; 24 | if (author.id !== __1.default.config.OWNER_ID) { 25 | let check = await settingsTable.get(`ARoles_${guild.id}`); 26 | if (check) { 27 | if (check.find((r) => args[0]?.value)) { 28 | await settingsTable.pull(`ARoles_${guild.id}`, args[0]?.value); 29 | (0, respond_1.respond)(interaction, message, { 30 | content: "**🔧 | Role has been removed !**", 31 | }, isSlash); 32 | } 33 | else { 34 | await settingsTable.push(`ARoles_${guild.id}`, args[0]?.value); 35 | (0, respond_1.respond)(interaction, message, { 36 | content: "**🔧 | Role has been added !**", 37 | }, isSlash); 38 | } 39 | } 40 | else { 41 | await settingsTable.set(`ARoles_${guild.id}`, [`${args[0]?.value}`]); 42 | (0, respond_1.respond)(interaction, message, { 43 | content: "**🔧 | Role has been added !**", 44 | }, isSlash); 45 | } 46 | } 47 | else 48 | (0, respond_1.respond)(interaction, message, { 49 | content: "**🚫 | Only Owners!!**", 50 | }, isSlash); 51 | }, 52 | }; 53 | -------------------------------------------------------------------------------- /src/commands/config/language.js: -------------------------------------------------------------------------------- 1 | "use strict"; 2 | var __importDefault = (this && this.__importDefault) || function (mod) { 3 | return (mod && mod.__esModule) ? mod : { "default": mod }; 4 | }; 5 | Object.defineProperty(exports, "__esModule", { value: true }); 6 | const respond_1 = require("../../utils/modules/respond"); 7 | const __1 = __importDefault(require("../../..")); 8 | const checkPerms_1 = __importDefault(require("../../functions/checkPerms")); 9 | exports.default = { 10 | name: "language", 11 | description: "change the bot language.", 12 | type: 1, 13 | run: async (client, interaction, message, args, isSlash, author, guild, channel, db) => { 14 | let settingsTable = await db.table("settings"); 15 | let lang = (await settingsTable.get(`Lang_${guild.id}`)) || "en"; 16 | let REPLYS = __1.default.replys[lang]; 17 | let perms = await (0, checkPerms_1.default)(guild.members.cache.get(author.id), "ADMINISTRATOR", { 18 | base1: interaction, 19 | base2: message, 20 | isSlash, 21 | }, REPLYS); 22 | if (perms == true) { 23 | if (lang == "en") 24 | await settingsTable.set(`Lang_${guild.id}`, "ar"); 25 | else if (lang == "ar") 26 | await settingsTable.set(`Lang_${guild.id}`, "en"); 27 | (0, respond_1.respond)(interaction, message, { 28 | content: REPLYS.langChange.replace("{lang}", lang), 29 | }, isSlash); 30 | } 31 | }, 32 | }; 33 | -------------------------------------------------------------------------------- /src/commands/config/prefix.js: -------------------------------------------------------------------------------- 1 | "use strict"; 2 | var __importDefault = (this && this.__importDefault) || function (mod) { 3 | return (mod && mod.__esModule) ? mod : { "default": mod }; 4 | }; 5 | Object.defineProperty(exports, "__esModule", { value: true }); 6 | const respond_1 = require("../../utils/modules/respond"); 7 | const __1 = __importDefault(require("../../..")); 8 | const checkPerms_1 = __importDefault(require("../../functions/checkPerms")); 9 | exports.default = { 10 | name: "prefix", 11 | description: "change the bot prefix.", 12 | type: 1, 13 | options: [ 14 | { 15 | name: "prefix", 16 | required: true, 17 | type: 3, 18 | description: "🔧 the new prefix of the bot .", 19 | }, 20 | ], 21 | run: async (client, interaction, message, args, isSlash, author, guild, channel, db) => { 22 | let settingsTable = await db.table("settings"); 23 | let lang = (await settingsTable.get(`Lang_${guild.id}`)) || "en"; 24 | let REPLYS = __1.default.replys[lang]; 25 | let perms = await (0, checkPerms_1.default)(guild.members.cache.get(author.id), "ADMINISTRATOR", { 26 | base1: interaction, 27 | base2: message, 28 | isSlash, 29 | }, REPLYS); 30 | if (perms == true) { 31 | await settingsTable.set(`Prefix_${guild.id}`, args[0]?.value); 32 | (0, respond_1.respond)(interaction, message, { 33 | content: REPLYS.prefixChange.replace("{pref}", args[0]?.value), 34 | }, isSlash); 35 | } 36 | }, 37 | }; 38 | -------------------------------------------------------------------------------- /src/commands/economy/daily.js: -------------------------------------------------------------------------------- 1 | "use strict"; 2 | var __importDefault = (this && this.__importDefault) || function (mod) { 3 | return (mod && mod.__esModule) ? mod : { "default": mod }; 4 | }; 5 | Object.defineProperty(exports, "__esModule", { value: true }); 6 | const respond_1 = require("../../utils/modules/respond"); 7 | const parse_ms_1 = __importDefault(require("parse-ms")); 8 | exports.default = { 9 | name: "daily", 10 | description: "💸 get your daily reward.", 11 | type: 1, 12 | options: [], 13 | run: async (client, interaction, message, args, isSlash, author, guild, channel, db) => { 14 | let creditsTable = await db.table("credits"); 15 | let timeout = 86400000; 16 | let amount = Math.floor(Math.random() * 1000) + 1; 17 | let daily = await creditsTable.get(`daily_${author.id}`); 18 | if (daily !== null && timeout - (Date.now() - daily) > 0) { 19 | let time = (0, parse_ms_1.default)(timeout - (Date.now() - daily)); 20 | (0, respond_1.respond)(interaction, message, { 21 | content: `**⏰ | ${author.username}, your daily credits refreshes in ${time.hours}h ${time.minutes}m ${time.seconds}s .**`, 22 | }, isSlash); 23 | } 24 | else { 25 | (0, respond_1.respond)(interaction, message, { 26 | content: `**💸 | ${author.username}, you got :dollar: ${amount} daily credits!**`, 27 | }, isSlash); 28 | await creditsTable.add(`Credits_${author.id}`, amount); 29 | await creditsTable.set(`daily_${author.id}`, Date.now()); 30 | } 31 | }, 32 | }; 33 | -------------------------------------------------------------------------------- /src/commands/economy/rep.js: -------------------------------------------------------------------------------- 1 | "use strict"; 2 | var __importDefault = (this && this.__importDefault) || function (mod) { 3 | return (mod && mod.__esModule) ? mod : { "default": mod }; 4 | }; 5 | Object.defineProperty(exports, "__esModule", { value: true }); 6 | const respond_1 = require("../../utils/modules/respond"); 7 | const parse_ms_1 = __importDefault(require("parse-ms")); 8 | exports.default = { 9 | name: "rep", 10 | description: "➕ give your friend a rep.", 11 | type: 1, 12 | options: [ 13 | { 14 | name: "user", 15 | type: 6, 16 | required: true, 17 | description: "🔧 The user you wont to rep him/her .", 18 | }, 19 | ], 20 | run: async (client, interaction, message, args, isSlash, author, guild, channel, db) => { 21 | let creditsTable = await db.table("credits"); 22 | let timeout = 7200000; 23 | let user = client.users.cache.get(args[0]?.value); 24 | if (user?.id == author.id) { 25 | (0, respond_1.respond)(interaction, message, { 26 | content: `**🚫 | ${user?.username}, you can't rep your self .**`, 27 | }, isSlash); 28 | return; 29 | } 30 | let amount = 1; 31 | let daily = await creditsTable.get(`Rdaily_${author.id}`); 32 | if (daily !== null && timeout - (Date.now() - daily) > 0) { 33 | let time = (0, parse_ms_1.default)(timeout - (Date.now() - daily)); 34 | (0, respond_1.respond)(interaction, message, { 35 | content: `**⏰ | ${user?.username}, your daily reps refreshes in ${time.hours}h ${time.minutes}m ${time.seconds}s .**`, 36 | }, isSlash); 37 | } 38 | else { 39 | (0, respond_1.respond)(interaction, message, { 40 | content: `**🤯 | you added ➕ ${amount} rep!**`, 41 | }, isSlash); 42 | await creditsTable.add(`Rep_${user?.id}`, Number(amount)); 43 | await creditsTable.set(`Rdaily_${author?.id}`, Date.now()); 44 | } 45 | }, 46 | }; 47 | -------------------------------------------------------------------------------- /src/commands/economy/title.js: -------------------------------------------------------------------------------- 1 | "use strict"; 2 | Object.defineProperty(exports, "__esModule", { value: true }); 3 | const respond_1 = require("../../utils/modules/respond"); 4 | exports.default = { 5 | name: "title", 6 | description: "💸 you profile title.", 7 | type: 1, 8 | options: [ 9 | { 10 | name: "title", 11 | description: "🔧 منتا عارف تكتب ايه لازم تبص هنا يعني؟", 12 | required: true, 13 | type: 3, 14 | }, 15 | ], 16 | run: async (client, interaction, message, args, isSlash, author, guild, channel, db) => { 17 | let creditsTable = await db.table("credits"); 18 | await creditsTable.set(`ProfileT_${author.id}`, args[0]?.value); 19 | (0, respond_1.respond)(interaction, message, { 20 | content: `**🔧 | your profile title has been added.**`, 21 | }, isSlash); 22 | }, 23 | }; 24 | -------------------------------------------------------------------------------- /src/commands/economy/top.js: -------------------------------------------------------------------------------- 1 | "use strict"; 2 | Object.defineProperty(exports, "__esModule", { value: true }); 3 | const respond_1 = require("../../utils/modules/respond"); 4 | exports.default = { 5 | name: "top", 6 | description: "💸 rich people.", 7 | type: 1, 8 | options: [], 9 | run: async (client, interaction, message, args, isSlash, author, guild, channel, db) => { 10 | let creditsTable = await db.table("credits"); 11 | let content = (await creditsTable.all()) 12 | .filter((data) => data.id.startsWith(`Credits_`)) 13 | .sort((a, b) => b.value - a.value) 14 | .map(({ id, value }, index) => `${index + 1}. ${client.users.cache.get(id.split("_")[1])?.username} - **$${value}**`) 15 | .join("\n").slice(0, 20); 16 | (0, respond_1.respond)(interaction, message, { 17 | embeds: [ 18 | { 19 | title: "💸 rich people.", 20 | color: 0xf43f, 21 | description: content, 22 | thumbnail: { url: guild.iconURL({ dynamic: true }) }, 23 | }, 24 | ], 25 | }, isSlash); 26 | }, 27 | }; 28 | -------------------------------------------------------------------------------- /src/commands/economy/weekly.js: -------------------------------------------------------------------------------- 1 | "use strict"; 2 | var __importDefault = (this && this.__importDefault) || function (mod) { 3 | return (mod && mod.__esModule) ? mod : { "default": mod }; 4 | }; 5 | Object.defineProperty(exports, "__esModule", { value: true }); 6 | const respond_1 = require("../../utils/modules/respond"); 7 | const parse_ms_1 = __importDefault(require("parse-ms")); 8 | exports.default = { 9 | name: "weekly", 10 | description: "💸 get your weekly reward.", 11 | type: 1, 12 | options: [], 13 | run: async (client, interaction, message, args, isSlash, author, guild, channel, db) => { 14 | let creditsTable = await db.table("credits"); 15 | let timeout = 86400000 * 7; 16 | let amount = Math.floor(Math.random() * 10000) + 1; 17 | let daily = await creditsTable.get(`week_${author.id}`); 18 | if (daily !== null && timeout - (Date.now() - daily) > 0) { 19 | let time = (0, parse_ms_1.default)(timeout - (Date.now() - daily)); 20 | (0, respond_1.respond)(interaction, message, { 21 | content: `**⏰ | ${author.username}, your weekly credits refreshes in ${time.hours}h ${time.minutes}m ${time.seconds}s .**`, 22 | }, isSlash); 23 | } 24 | else { 25 | (0, respond_1.respond)(interaction, message, { 26 | content: `**💸 | ${author.username}, you got :dollar: ${amount} weekly credits!**`, 27 | }, isSlash); 28 | await creditsTable.add(`Credits_${author.id}`, amount); 29 | await creditsTable.set(`week_${author.id}`, Date.now()); 30 | } 31 | }, 32 | }; 33 | -------------------------------------------------------------------------------- /src/commands/games (powerd by external)/func/fruits.js: -------------------------------------------------------------------------------- 1 | "use strict"; 2 | Object.defineProperty(exports, "__esModule", { value: true }); 3 | const respond_1 = require("../../../utils/modules/respond"); 4 | exports.default = { 5 | name: "fruits", 6 | description: "🎮 Give it a shot.", 7 | type: 1, 8 | options: [], 9 | run: async (client, interaction, message, args, isSlash, author, guild, channel, db) => { 10 | let settingsTable = await db.table("settings"); 11 | let lang = (await settingsTable.get(`Lang_${guild.id}`)) || "en"; 12 | var x; 13 | let slot1 = ["🍏", "🍇", "🍒", "🍍", "🍅", "🍆", "🍑", "🍓"]; 14 | let slots1 = `${slot1[Math.floor(Math.random() * slot1.length)]}`; 15 | let slots2 = `${slot1[Math.floor(Math.random() * slot1.length)]}`; 16 | let slots3 = `${slot1[Math.floor(Math.random() * slot1.length)]}`; 17 | let we; 18 | if (slots1 === slots2 && slots2 === slots3) { 19 | var points = await db.get(`points_${guild.id}_${author.id}`); 20 | if (points == null) 21 | points = db.set(`points_${guild.id}_${author.id}`, { 22 | user: author.id, 23 | guild: author.id, 24 | points: 0, 25 | }); 26 | else { 27 | db.add(`points_${guild.id}_${author.id}.points`, 3); 28 | } 29 | we = "Win!"; 30 | } 31 | else { 32 | we = "Lose!"; 33 | } 34 | (0, respond_1.respond)(interaction, message, { 35 | content: `${slots1} | ${slots2} | ${slots3} - ${we}`, 36 | }, isSlash); 37 | }, 38 | }; 39 | -------------------------------------------------------------------------------- /src/commands/games (powerd by external)/games.js: -------------------------------------------------------------------------------- 1 | "use strict"; 2 | var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) { 3 | if (k2 === undefined) k2 = k; 4 | var desc = Object.getOwnPropertyDescriptor(m, k); 5 | if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) { 6 | desc = { enumerable: true, get: function() { return m[k]; } }; 7 | } 8 | Object.defineProperty(o, k2, desc); 9 | }) : (function(o, m, k, k2) { 10 | if (k2 === undefined) k2 = k; 11 | o[k2] = m[k]; 12 | })); 13 | var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) { 14 | Object.defineProperty(o, "default", { enumerable: true, value: v }); 15 | }) : function(o, v) { 16 | o["default"] = v; 17 | }); 18 | var __importStar = (this && this.__importStar) || function (mod) { 19 | if (mod && mod.__esModule) return mod; 20 | var result = {}; 21 | if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k); 22 | __setModuleDefault(result, mod); 23 | return result; 24 | }; 25 | Object.defineProperty(exports, "__esModule", { value: true }); 26 | const discord_js_1 = require("discord.js"); 27 | const respond_1 = require("../../utils/modules/respond"); 28 | exports.default = { 29 | name: "games", 30 | description: "🎮 Games.", 31 | type: 1, 32 | options: [], 33 | run: async (client, interaction, message, args, isSlash, author, guild, channel, db) => { 34 | let settingsTable = await db.table("settings"); 35 | let lang = (await settingsTable.get(`Lang_${guild.id}`)) || "en"; 36 | var x; 37 | (0, respond_1.respond)(interaction, message, { 38 | ephemeral: false, 39 | content: "Choose a game: ...", 40 | components: [ 41 | new discord_js_1.MessageActionRow().setComponents(new discord_js_1.MessageSelectMenu() 42 | .setCustomId("meun") 43 | .setMaxValues(1) 44 | .setMinValues(1) 45 | .setOptions([ 46 | { label: "Activities", value: "activities", emoji: "🎮" }, 47 | { label: "Brand", value: "brand", emoji: "🎮" }, 48 | { label: "Capitals", value: "capitals", emoji: "🎮" }, 49 | { label: "Fast", value: "fast", emoji: "🎮" }, 50 | { label: "Fkk", value: "fkk", emoji: "🎮" }, 51 | { label: "Flags", value: "flags", emoji: "🎮" }, 52 | { label: "Fruits", value: "fruits", emoji: "🎮" }, 53 | { label: "Letters", value: "letters", emoji: "🎮" }, 54 | { label: "Music", value: "music", emoji: "🎮" }, 55 | { label: "Math", value: "math", emoji: "🎮" }, 56 | { label: "Puzzles", value: "puzzle", emoji: "🎮" }, 57 | { label: "Translate", value: "translate", emoji: "🎮" }, 58 | ])), 59 | ], 60 | }, isSlash).then((ider) => { 61 | ider 62 | .createMessageComponentCollector({ 63 | componentType: "SELECT_MENU", 64 | filter: (III) => III.user.id == author.id, 65 | max: 1, 66 | }) 67 | .on("collect", async (poi) => { 68 | var _a; 69 | isSlash == true 70 | ? interaction.editReply({ 71 | content: "Game has been created ..", 72 | components: [], 73 | embeds: [], 74 | files: [], 75 | }) 76 | : ider.delete(); 77 | (await (_a = "./func/" + poi.values[0], Promise.resolve().then(() => __importStar(require(_a))))).default.run(client, interaction, message, args, isSlash, author, guild, channel, db); 78 | }); 79 | }); 80 | }, 81 | }; 82 | -------------------------------------------------------------------------------- /src/commands/games (powerd by external)/points.js: -------------------------------------------------------------------------------- 1 | "use strict"; 2 | Object.defineProperty(exports, "__esModule", { value: true }); 3 | const discord_js_1 = require("discord.js"); 4 | const respond_1 = require("../../utils/modules/respond"); 5 | exports.default = { 6 | name: "games-points", 7 | description: "🎮 View your/user points.", 8 | type: 1, 9 | options: [ 10 | { 11 | name: "user", 12 | description: "🔧 the user id you wont to see his/her points.", 13 | type: 6, 14 | required: false, 15 | }, 16 | ], 17 | run: async (client, interaction, message, args, isSlash, author, guild, channel, db) => { 18 | let settingsTable = await db.table("settings"); 19 | let lang = (await settingsTable.get(`Lang_${guild.id}`)) || "en"; 20 | let user = guild.members.cache.get(args[0]?.value)?.user || author; 21 | if (lang == "en") { 22 | (0, respond_1.respond)(interaction, message, { 23 | embeds: [ 24 | new discord_js_1.MessageEmbed() 25 | .setColor("GREEN") 26 | .setAuthor(user.tag + " - Points! " + "🎉") 27 | .setDescription(`<@!${user.id}> Points Is: \`${await db.get(`points_${guild.id}_${user.id}.points`)}\``) 28 | .setFooter("Requested By " + author.tag) 29 | .setTimestamp(), 30 | ], 31 | }, isSlash); 32 | } 33 | else if (lang == "ar") { 34 | (0, respond_1.respond)(interaction, message, { 35 | embeds: [ 36 | new discord_js_1.MessageEmbed() 37 | .setColor("GREEN") 38 | .setAuthor(user.tag + " - نقاط! " + "🎉") 39 | .setDescription(`نفط <@!${user.id}> هيا: \`${await db.get(`points_${guild.id}_${user.id}.points`)}\``) 40 | .setFooter("Requested By " + user.tag) 41 | .setTimestamp(), 42 | ], 43 | }, isSlash); 44 | } 45 | }, 46 | }; 47 | -------------------------------------------------------------------------------- /src/commands/games (powerd by external)/top.js: -------------------------------------------------------------------------------- 1 | "use strict"; 2 | Object.defineProperty(exports, "__esModule", { value: true }); 3 | const discord_js_1 = require("discord.js"); 4 | const respond_1 = require("../../utils/modules/respond"); 5 | exports.default = { 6 | name: "games-top", 7 | description: "🎮 Points leaderboard.", 8 | type: 1, 9 | options: [], 10 | run: async (client, interaction, message, args, isSlash, author, guild, channel, db) => { 11 | let settingsTable = await db.table("settings"); 12 | let lang = (await settingsTable.get(`Lang_${guild.id}`)) || "en"; 13 | const usersData = []; 14 | await guild.members.cache.forEach((member) => { 15 | usersData.push(member.user); 16 | }); 17 | let pointsContent = usersData.length; 18 | let usersContent = 0; 19 | let usersMaxContent = 21; 20 | let tempData = []; 21 | for (let i = 0; i < pointsContent; i++) { 22 | var database = await db.get(`points_${guild.id}_${usersData[i].id}`); 23 | if (database == null) 24 | continue; 25 | tempData.push({ 26 | name: usersData[i].id, 27 | data: database, 28 | }); 29 | } 30 | const leaderboardData = []; 31 | tempData.sort((a, b) => b.data.points - a.data.points); 32 | for (let k = 0; k < tempData.length; k++) { 33 | usersContent++; 34 | if (usersContent >= usersMaxContent) 35 | continue; 36 | leaderboardData.push(`${k + 1}# <@!${tempData[k].name}> points: \`${tempData[k].data.points}\``); 37 | } 38 | var topValue = leaderboardData.join("\n"); 39 | (0, respond_1.respond)(interaction, message, { 40 | embeds: [ 41 | new discord_js_1.MessageEmbed() 42 | .setAuthor(guild.name + ` - Leaderboard! 📋`, guild.iconURL({ dynamic: true }) || "") 43 | .setColor("GREEN") 44 | .setDescription(topValue) 45 | .setFooter("Requesed By " + author.tag) 46 | .setTimestamp(), 47 | ], 48 | }, isSlash); 49 | }, 50 | }; 51 | -------------------------------------------------------------------------------- /src/commands/general/afk.js: -------------------------------------------------------------------------------- 1 | "use strict"; 2 | Object.defineProperty(exports, "__esModule", { value: true }); 3 | const respond_1 = require("../../utils/modules/respond"); 4 | exports.default = { 5 | name: "afk", 6 | description: "set user as afk", 7 | options: [], 8 | type: 1, 9 | run: async (client, interaction, message, args, isSlash, author, guild, channel, db) => { 10 | let status = await db.get(`AFK_${author.id}`); 11 | if (status == true) 12 | await db.set(`AFK_${author.id}`, false); 13 | else 14 | await db.set(`AFK_${author.id}`, true); 15 | await (0, respond_1.respond)(interaction, message, { 16 | content: `>>> **⌨ | Your are${(await db.get(`AFK_${author.id}`)) == true ? "" : " not"} AFK!!.**`, 17 | }, isSlash); 18 | }, 19 | }; 20 | -------------------------------------------------------------------------------- /src/commands/general/avatar.js: -------------------------------------------------------------------------------- 1 | "use strict"; 2 | Object.defineProperty(exports, "__esModule", { value: true }); 3 | const discord_js_1 = require("discord.js"); 4 | const respond_1 = require("../../utils/modules/respond"); 5 | exports.default = { 6 | name: "avatar", 7 | description: "user avatar.", 8 | options: [ 9 | { 10 | name: "user", 11 | description: "the user.", 12 | required: true, 13 | type: 6, 14 | }, 15 | ], 16 | type: 1, 17 | run: async (client, interaction, message, args, isSlash, author, guild, channel, db) => { 18 | let user = await guild.members.cache.get(args[0]?.value)?.fetch(); 19 | let embed = new discord_js_1.MessageEmbed() 20 | .setAuthor({ 21 | name: guild?.name || "", 22 | iconURL: guild?.iconURL({ dynamic: true }) || "", 23 | }) 24 | .setImage(user?.user.avatarURL({ dynamic: true, size: 4096 }) || "") 25 | .setColor(user?.displayHexColor || 0x0f1ed3); 26 | (0, respond_1.respond)(interaction, message, { embeds: [embed] }, isSlash); 27 | }, 28 | }; 29 | -------------------------------------------------------------------------------- /src/commands/general/banner.js: -------------------------------------------------------------------------------- 1 | "use strict"; 2 | var __importDefault = (this && this.__importDefault) || function (mod) { 3 | return (mod && mod.__esModule) ? mod : { "default": mod }; 4 | }; 5 | Object.defineProperty(exports, "__esModule", { value: true }); 6 | const discord_js_1 = require("discord.js"); 7 | const respond_1 = require("../../utils/modules/respond"); 8 | const node_fetch_1 = __importDefault(require("node-fetch")); 9 | exports.default = { 10 | name: "banner", 11 | description: "provide user banner .", 12 | type: 1, 13 | options: [ 14 | { 15 | name: "user", 16 | description: "the user.", 17 | type: 6, 18 | required: true, 19 | }, 20 | ], 21 | run: async (client, interaction, message, args, isSlash, author, guild, channel, db) => { 22 | const member = guild.members.cache.get(args[0]?.value) || 23 | guild.members.cache.get(author.id); 24 | let response = (0, node_fetch_1.default)(`https://discord.com/api/v8/users/${member?.id}`, { 25 | method: 'GET', 26 | headers: { 27 | Authorization: `Bot ${client.token}` 28 | } 29 | }); 30 | let receive = ''; 31 | let banner = 'https://cdn.discordapp.com/attachments/829722741288337428/834016013678673950/banner_invisible.gif'; 32 | response.then(a => { 33 | if (a.status !== 404) { 34 | a.json().then(data => { 35 | receive = data['banner']; 36 | if (receive !== null) { 37 | let format = 'png'; 38 | if (receive.substring(0, 2) === 'a_') { 39 | format = 'gif'; 40 | } 41 | banner = `https://cdn.discordapp.com/banners/${member?.id}/${receive}.${format}`; 42 | } 43 | }); 44 | } 45 | }); 46 | setTimeout(async () => { 47 | let embed = new discord_js_1.MessageEmbed() 48 | .setTitle(`${member?.user.username} banner`) 49 | .setImage(`${banner}`) 50 | .setColor(guild.me?.displayColor || "AQUA") 51 | .setFooter({ 52 | text: `Requested By ${author.username}`, 53 | iconURL: author.avatarURL({ dynamic: true }) || "", 54 | }) 55 | .setTimestamp(); 56 | await (0, respond_1.respond)(interaction, message, { embeds: [embed] }, isSlash); 57 | }, 1000); 58 | }, 59 | }; 60 | -------------------------------------------------------------------------------- /src/commands/general/ping.js: -------------------------------------------------------------------------------- 1 | "use strict"; 2 | Object.defineProperty(exports, "__esModule", { value: true }); 3 | const discord_js_1 = require("discord.js"); 4 | const respond_1 = require("../../utils/modules/respond"); 5 | exports.default = { 6 | name: "ping", 7 | description: "Pong.", 8 | options: [ 9 | ], 10 | type: 1, 11 | run: async (client, interaction, message, args, isSlash, author, guild, channel, db) => { 12 | let settingsTable = await db.table("settings"); 13 | let lang = (await settingsTable.get(`Lang_${guild.id}`)) || "en"; 14 | 15 | (0, respond_1.respond)(interaction, message, { content: `**:ping_pong: Pong ${client.ws.ping}ms**` }, isSlash); 16 | }, 17 | }; 18 | -------------------------------------------------------------------------------- /src/commands/general/roles.js: -------------------------------------------------------------------------------- 1 | "use strict"; 2 | Object.defineProperty(exports, "__esModule", { value: true }); 3 | const discord_js_1 = require("discord.js"); 4 | const respond_1 = require("../../utils/modules/respond"); 5 | exports.default = { 6 | name: "roles", 7 | description: "server roles.", 8 | type: 1, 9 | run: async (client, interaction, message, args, isSlash, author, guild, channel, db) => { 10 | let settingsTable = await db.table("settings"); 11 | let lang = (await settingsTable.get(`Lang_${guild.id}`)) || "en"; 12 | let embed = new discord_js_1.MessageEmbed() 13 | .setAuthor({ 14 | name: guild?.name || "", 15 | iconURL: guild?.iconURL({ dynamic: true }) || "", 16 | }) 17 | .setDescription(`\`\`\`yml\n${guild.roles.cache 18 | .map((r) => `${r.members.size} ${r.name}`) 19 | .join("\n")}\`\`\``) 20 | .setColor(0x0f1ed3); 21 | (0, respond_1.respond)(interaction, message, { embeds: [embed] }, isSlash); 22 | }, 23 | }; 24 | -------------------------------------------------------------------------------- /src/commands/general/server.js: -------------------------------------------------------------------------------- 1 | "use strict"; 2 | Object.defineProperty(exports, "__esModule", { value: true }); 3 | const discord_js_1 = require("discord.js"); 4 | const respond_1 = require("../../utils/modules/respond"); 5 | exports.default = { 6 | name: "server", 7 | description: "server information.", 8 | type: 1, 9 | run: async (client, interaction, message, args, isSlash, author, guild, channel, db) => { 10 | let settingsTable = await db.table("settings"); 11 | let lang = (await settingsTable.get(`Lang_${guild.id}`)) || "en"; 12 | let embed = new discord_js_1.MessageEmbed() 13 | .setAuthor({ 14 | name: guild?.name || "", 15 | iconURL: guild?.iconURL({ dynamic: true }) || "", 16 | }) 17 | .setThumbnail(guild?.iconURL({ dynamic: true }) || "") 18 | .setImage(guild.bannerURL() || "") 19 | .setDescription(guild.description || "") 20 | .setColor(0x0f1ed3) 21 | .setFields([ 22 | { 23 | inline: true, 24 | name: "🆔 **ID:**", 25 | value: `${guild.name} (${guild.id})`, 26 | }, 27 | { 28 | inline: true, 29 | name: "**🗓 Created On:**", 30 | value: `**${guild?.createdAt?.getFullYear()}/${guild?.createdAt?.getMonth()}/${guild?.createdAt?.getDay()} - ${guild?.createdAt?.getHours()}:${guild?.createdAt?.getMinutes()}:${guild?.createdAt?.getSeconds()} (${guild?.createdAt?.getDate()})**`, 31 | }, 32 | { 33 | inline: true, 34 | name: "**👑 Owned by:**", 35 | value: `<@!${guild.ownerId}>`, 36 | }, 37 | { 38 | inline: true, 39 | name: `**👥 Members (${guild.memberCount})**`, 40 | value: `**${guild.members.cache.filter((m) => !["offline", "invisible"].includes(m.presence?.status || "online")).size}** Online\n${guild.premiumSubscriptionCount} Boosts ✨`, 41 | }, 42 | { 43 | inline: true, 44 | name: `**💬 Channels (${guild.channels.cache.size})**`, 45 | value: `**${guild.channels.cache.filter((c) => c.isText()).size}** Text | **${guild.channels.cache.filter((c) => c.isVoice()).size}** Voice`, 46 | }, 47 | { 48 | inline: true, 49 | name: `🔐 **Roles (${guild.roles.cache.size})**`, 50 | value: `To see a list with all roles use **/roles**`, 51 | }, 52 | { 53 | inline: true, 54 | name: `😂 **Emojis (${guild.emojis.cache.size})**`, 55 | value: `**${guild.emojis.cache.filter((e) => e.animated == true).size}** Animated | **${guild.emojis.cache.filter((e) => e.animated == false).size}** Default`, 56 | }, 57 | { 58 | inline: true, 59 | name: `**🌍 Others**`, 60 | value: `**Verifcation Level:** ${guild.verificationLevel}\n**AFK Channel**: <#${guild.afkChannelId}>`, 61 | }, 62 | ]); 63 | (0, respond_1.respond)(interaction, message, { embeds: [embed] }, isSlash); 64 | }, 65 | }; 66 | -------------------------------------------------------------------------------- /src/commands/leveling/add-level-role.js: -------------------------------------------------------------------------------- 1 | "use strict"; 2 | var __importDefault = (this && this.__importDefault) || function (mod) { 3 | return (mod && mod.__esModule) ? mod : { "default": mod }; 4 | }; 5 | Object.defineProperty(exports, "__esModule", { value: true }); 6 | const respond_1 = require("../../utils/modules/respond"); 7 | const __1 = __importDefault(require("../../..")); 8 | const checkPerms_1 = __importDefault(require("../../functions/checkPerms")); 9 | exports.default = { 10 | name: "add-level-role", 11 | description: "💹 Add a reward when any user rich a spacific level.", 12 | type: 1, 13 | options: [ 14 | { 15 | name: "role", 16 | description: "⚙ the role you will give as a reward.", 17 | required: true, 18 | type: 8, 19 | }, 20 | { 21 | name: "level", 22 | description: "⚙ the level that you will give the reward at.", 23 | required: true, 24 | type: 3, 25 | }, 26 | ], 27 | run: async (client, interaction, message, args, isSlash, author, guild, channel, db) => { 28 | let settingsTable = await db.table("settings"); 29 | let lang = (await settingsTable.get(`Lang_${guild.id}`)) || "en"; 30 | let REPLYS = __1.default.replys[lang]; 31 | let perms = await (0, checkPerms_1.default)(guild.members.cache.get(author.id), "MANAGE_GUILD", { 32 | base1: interaction, 33 | base2: message, 34 | isSlash, 35 | }, REPLYS); 36 | if (perms == true) { 37 | let role = guild.roles.cache.get(args[0]?.value); 38 | let level = args[1]?.value; 39 | let rewards = await db.get(`LSA_${guild.id}`); 40 | if (!rewards) 41 | rewards = []; 42 | if (isNaN(level)) 43 | return (0, respond_1.respond)(interaction, message, { 44 | content: REPLYS.notAlevel, 45 | }, isSlash); 46 | rewards.forEach((V) => { 47 | if (V.roleId == role?.id || V.level == level) 48 | return (0, respond_1.respond)(interaction, message, { 49 | content: REPLYS.rewardIsHere, 50 | }, isSlash); 51 | }); 52 | if (!rewards) 53 | db.set(`LSA_${guild.id}`, [ 54 | { 55 | roleId: role?.id, 56 | level: level, 57 | }, 58 | ]); 59 | else 60 | db.push(`LSA_${guild.id}`, { 61 | roleId: role?.id, 62 | level: level, 63 | }); 64 | (0, respond_1.respond)(interaction, message, { 65 | content: REPLYS.updateRewards 66 | }, isSlash); 67 | } 68 | }, 69 | }; 70 | -------------------------------------------------------------------------------- /src/commands/leveling/disable-level-system.js: -------------------------------------------------------------------------------- 1 | "use strict"; 2 | var __importDefault = (this && this.__importDefault) || function (mod) { 3 | return (mod && mod.__esModule) ? mod : { "default": mod }; 4 | }; 5 | Object.defineProperty(exports, "__esModule", { value: true }); 6 | const respond_1 = require("../../utils/modules/respond"); 7 | const __1 = __importDefault(require("../../..")); 8 | const checkPerms_1 = __importDefault(require("../../functions/checkPerms")); 9 | exports.default = { 10 | name: "disable-level-system", 11 | description: "💹 Disable/Enable Leveling system in the server .", 12 | type: 1, 13 | options: [], 14 | run: async (client, interaction, message, args, isSlash, author, guild, channel, db) => { 15 | let settingsTable = await db.table("settings"); 16 | let lang = (await settingsTable.get(`Lang_${guild.id}`)) || "en"; 17 | let REPLYS = __1.default.replys[lang]; 18 | let perms = await (0, checkPerms_1.default)(guild.members.cache.get(author.id), "MANAGE_GUILD", { 19 | base1: interaction, 20 | base2: message, 21 | isSlash, 22 | }, REPLYS); 23 | if (perms == true) { 24 | let levelSystem = await db.get(`LS_${guild.id}`); 25 | if (!levelSystem) 26 | await db.set(`LS_${guild.id}`, false); 27 | else if (levelSystem == true) 28 | await db.set(`LS_${guild.id}`, false); 29 | else if (levelSystem == false) 30 | await db.set(`LS_${guild.id}`, true); 31 | await db.set(`LS_${guild.id}`, (await db.get(`LS_${guild.id}`)) == true ? false : true); 32 | (0, respond_1.respond)(interaction, message, { 33 | content: REPLYS.doneDisableLS.replace("{status}", (await db.get(`LS_${guild.id}`)) == true ? "Enabled" : "Disabled"), 34 | }, isSlash); 35 | } 36 | }, 37 | }; 38 | -------------------------------------------------------------------------------- /src/commands/leveling/rank.js: -------------------------------------------------------------------------------- 1 | "use strict"; 2 | var __importDefault = (this && this.__importDefault) || function (mod) { 3 | return (mod && mod.__esModule) ? mod : { "default": mod }; 4 | }; 5 | Object.defineProperty(exports, "__esModule", { value: true }); 6 | const discord_js_1 = require("discord.js"); 7 | const respond_1 = require("../../utils/modules/respond"); 8 | const __1 = __importDefault(require("../../..")); 9 | const canvacord_1 = __importDefault(require("canvacord")); 10 | exports.default = { 11 | name: "rank", 12 | description: "💹 View you level in this server.", 13 | type: 1, 14 | options: [], 15 | run: async (client, interaction, message, args, isSlash, author, guild, channel, db) => { 16 | canvacord_1.default.Welcomer; 17 | let settingsTable = await db.table("settings"); 18 | let creditsTable = await db.table("credits"); 19 | let lang = (await settingsTable.get(`Lang_${guild.id}`)) || "en"; 20 | let REPLYS = __1.default.replys[lang]; 21 | let LevelingSystem = { 22 | dot: await db.get(`LS_${guild?.id}`), 23 | channel: await db.get(`LSC_${guild?.id}`), 24 | msg: await db.get(`LSM_${guild?.id}`), 25 | userPoints: await db.get(`LSUP_${guild?.id}_${author.id}`), 26 | userLevel: await db.get(`LSUL_${guild?.id}_${author.id}`), 27 | userRep: (await creditsTable.get(`Rep_${author.id}`)) || 1, 28 | }; 29 | let حسبه = Number((Number(LevelingSystem["userLevel"]) * 500) / 30 | Number(LevelingSystem["userRep"])).toFixed(0); 31 | let STATUS = guild.members.cache.get(author.id)?.presence?.status; 32 | const rank = new canvacord_1.default.Rank() 33 | .setAvatar(author.avatarURL({ dynamic: false, format: "png" }) || 34 | "https://cdn.discordapp.com/embed/avatars/0.png") 35 | .setCurrentXP(Number(LevelingSystem["userPoints"])) 36 | .setRequiredXP(Number(حسبه)) 37 | .setStatus(STATUS || "online", false) 38 | .setProgressBar(["#5865f2", "#ee459e"], "GRADIENT") 39 | .setUsername(author.username) 40 | .setLevel(Number(LevelingSystem["userLevel"])) 41 | .setLevelColor("#ed4245") 42 | .setRank(Number(LevelingSystem["userRep"]), "Reps", true) 43 | .setDiscriminator(author.discriminator); 44 | try { 45 | rank.build({}).then((data) => { 46 | let attch = new discord_js_1.MessageAttachment(data, "RankCard.png"); 47 | (0, respond_1.respond)(interaction, message, { 48 | files: [attch], 49 | }, isSlash); 50 | }); 51 | } 52 | catch (err) { 53 | } 54 | }, 55 | }; 56 | -------------------------------------------------------------------------------- /src/commands/leveling/remove-level-role.js: -------------------------------------------------------------------------------- 1 | "use strict"; 2 | var __importDefault = (this && this.__importDefault) || function (mod) { 3 | return (mod && mod.__esModule) ? mod : { "default": mod }; 4 | }; 5 | Object.defineProperty(exports, "__esModule", { value: true }); 6 | const respond_1 = require("../../utils/modules/respond"); 7 | const __1 = __importDefault(require("../../..")); 8 | const checkPerms_1 = __importDefault(require("../../functions/checkPerms")); 9 | exports.default = { 10 | name: "remove-level-role", 11 | description: "💹 remove a reward from the rewards list.", 12 | type: 1, 13 | options: [ 14 | { 15 | name: "level", 16 | description: "⚙ the level reward you will delete.", 17 | required: true, 18 | type: 3, 19 | }, 20 | ], 21 | run: async (client, interaction, message, args, isSlash, author, guild, channel, db) => { 22 | let settingsTable = await db.table("settings"); 23 | let lang = (await settingsTable.get(`Lang_${guild.id}`)) || "en"; 24 | let REPLYS = __1.default.replys[lang]; 25 | let perms = await (0, checkPerms_1.default)(guild.members.cache.get(author.id), "MANAGE_GUILD", { 26 | base1: interaction, 27 | base2: message, 28 | isSlash, 29 | }, REPLYS); 30 | if (perms == true) { 31 | let level = args[0]?.value; 32 | let rewards = await db.get(`LSA_${guild.id}`); 33 | if (!rewards) 34 | rewards = []; 35 | if (isNaN(level)) 36 | return (0, respond_1.respond)(interaction, message, { 37 | content: REPLYS.notAlevel, 38 | }, isSlash); 39 | let array = []; 40 | await rewards.forEach(async (V) => { 41 | if (V.level !== level) 42 | await array.push(V); 43 | }); 44 | await db.set(`LSA_${guild.id}`, array); 45 | (0, respond_1.respond)(interaction, message, { 46 | content: REPLYS.updateRewards 47 | }, isSlash); 48 | } 49 | }, 50 | }; 51 | -------------------------------------------------------------------------------- /src/commands/leveling/reset-all.js: -------------------------------------------------------------------------------- 1 | "use strict"; 2 | var __importDefault = (this && this.__importDefault) || function (mod) { 3 | return (mod && mod.__esModule) ? mod : { "default": mod }; 4 | }; 5 | Object.defineProperty(exports, "__esModule", { value: true }); 6 | const respond_1 = require("../../utils/modules/respond"); 7 | const __1 = __importDefault(require("../../..")); 8 | const checkPerms_1 = __importDefault(require("../../functions/checkPerms")); 9 | exports.default = { 10 | name: "reset-all", 11 | description: "💹 reset leveling data for the sever.", 12 | type: 1, 13 | options: [], 14 | run: async (client, interaction, message, args, isSlash, author, guild, channel, db) => { 15 | let settingsTable = await db.table("settings"); 16 | let lang = (await settingsTable.get(`Lang_${guild.id}`)) || "en"; 17 | let REPLYS = __1.default.replys[lang]; 18 | let perms = await (0, checkPerms_1.default)(guild.members.cache.get(author.id), "ADMINISTRATOR", { 19 | base1: interaction, 20 | base2: message, 21 | isSlash, 22 | }, REPLYS); 23 | if (perms == true) { 24 | await guild.members.cache.forEach(async (V) => { 25 | await db.set(`LSUP_${guild?.id}_${V.id}`, 0); 26 | await db.set(`LSUL_${guild?.id}_${V.id}`, 1); 27 | }); 28 | await (0, respond_1.respond)(interaction, message, { 29 | content: REPLYS.reLS 30 | }, isSlash); 31 | } 32 | }, 33 | }; 34 | -------------------------------------------------------------------------------- /src/commands/leveling/set-level-channel.js: -------------------------------------------------------------------------------- 1 | "use strict"; 2 | var __importDefault = (this && this.__importDefault) || function (mod) { 3 | return (mod && mod.__esModule) ? mod : { "default": mod }; 4 | }; 5 | Object.defineProperty(exports, "__esModule", { value: true }); 6 | const respond_1 = require("../../utils/modules/respond"); 7 | const __1 = __importDefault(require("../../..")); 8 | const checkPerms_1 = __importDefault(require("../../functions/checkPerms")); 9 | exports.default = { 10 | name: "set-level-channel", 11 | description: "💹 Set/Remove the level up channel", 12 | type: 1, 13 | options: [ 14 | { 15 | name: "channel", 16 | description: "⚙ The channel you will make the level up alerts in.", 17 | required: true, 18 | type: 7, 19 | }, 20 | ], 21 | run: async (client, interaction, message, args, isSlash, author, guild, channel, db) => { 22 | let settingsTable = await db.table("settings"); 23 | let lang = (await settingsTable.get(`Lang_${guild.id}`)) || "en"; 24 | let REPLYS = __1.default.replys[lang]; 25 | let perms = await (0, checkPerms_1.default)(guild.members.cache.get(author.id), "MANAGE_GUILD", { 26 | base1: interaction, 27 | base2: message, 28 | isSlash, 29 | }, REPLYS); 30 | if (perms == true) { 31 | let ch = guild.channels.cache.get(args[0]?.value); 32 | let data = await db.get(`LSC_${guild?.id}`); 33 | if (!data) 34 | db.set(`LSC_${guild?.id}`, ch?.id); 35 | else if (data == ch?.id) 36 | db.delete(`LSC_${ch?.id}`); 37 | else 38 | db.set(`LSC_${ch?.id}`, ch?.id); 39 | (0, respond_1.respond)(interaction, message, { 40 | content: REPLYS.LSCupdated 41 | }, isSlash); 42 | } 43 | }, 44 | }; 45 | -------------------------------------------------------------------------------- /src/commands/leveling/set-level-message.js: -------------------------------------------------------------------------------- 1 | "use strict"; 2 | var __importDefault = (this && this.__importDefault) || function (mod) { 3 | return (mod && mod.__esModule) ? mod : { "default": mod }; 4 | }; 5 | Object.defineProperty(exports, "__esModule", { value: true }); 6 | const respond_1 = require("../../utils/modules/respond"); 7 | const __1 = __importDefault(require("../../..")); 8 | const checkPerms_1 = __importDefault(require("../../functions/checkPerms")); 9 | exports.default = { 10 | name: "set-level-message", 11 | description: "💹 Set the level up alert message", 12 | type: 1, 13 | options: [ 14 | { 15 | name: "msg", 16 | description: "⚙ {user} => mention the user, {level} => the user level", 17 | required: true, 18 | type: 3, 19 | }, 20 | ], 21 | run: async (client, interaction, message, args, isSlash, author, guild, channel, db) => { 22 | let settingsTable = await db.table("settings"); 23 | let lang = (await settingsTable.get(`Lang_${guild.id}`)) || "en"; 24 | let REPLYS = __1.default.replys[lang]; 25 | let perms = await (0, checkPerms_1.default)(guild.members.cache.get(author.id), "MANAGE_GUILD", { 26 | base1: interaction, 27 | base2: message, 28 | isSlash, 29 | }, REPLYS); 30 | if (perms == true) { 31 | let msg = args[0]?.value; 32 | await db.set(`LSM_${guild.id}`, msg); 33 | (0, respond_1.respond)(interaction, message, { 34 | content: REPLYS.LSMupdate 35 | }, isSlash); 36 | } 37 | }, 38 | }; 39 | -------------------------------------------------------------------------------- /src/commands/music/nowplaying.js: -------------------------------------------------------------------------------- 1 | "use strict"; 2 | var __importDefault = (this && this.__importDefault) || function (mod) { 3 | return (mod && mod.__esModule) ? mod : { "default": mod }; 4 | }; 5 | Object.defineProperty(exports, "__esModule", { value: true }); 6 | const __1 = __importDefault(require("../../..")); 7 | const respond_1 = require("../../utils/modules/respond"); 8 | const parse_ms_1 = __importDefault(require("parse-ms")); 9 | const progressbar = require("string-progressbar"); 10 | exports.default = { 11 | name: "nowplaying", 12 | description: "current muisc.", 13 | type: 1, 14 | options: [], 15 | run: async (client, interaction, message, args, isSlash, author, guild, channel, db) => { 16 | let settingsTable = await db.table("settings"); 17 | let lang = (await settingsTable.get(`Lang_${guild.id}`)) || "en"; 18 | let REPLYS = __1.default.replys[lang]; 19 | let manager = __1.default.bot.getManager(); 20 | let memberVoiceChannel = guild.members.cache.get(author.id)?.voice.channel; 21 | let botVoiceChannel = guild.me?.voice.channel; 22 | if (!memberVoiceChannel) 23 | return (0, respond_1.respond)(interaction, message, { 24 | content: REPLYS.mc1, 25 | }, isSlash); 26 | if (botVoiceChannel && botVoiceChannel.id !== memberVoiceChannel.id) 27 | return (0, respond_1.respond)(interaction, message, { 28 | content: REPLYS.mc2.replace("${botVoiceChannel.name}", `${botVoiceChannel.name}`), 29 | }, isSlash); 30 | let player = manager?.players.get(guild.id); 31 | if (!player || !player.queue.current) 32 | return (0, respond_1.respond)(interaction, message, { 33 | content: REPLYS.mc10, 34 | }, isSlash); 35 | let postion = player.position; 36 | let dur = player.queue.current.duration; 37 | (0, respond_1.respond)(interaction, message, { 38 | content: `**:notes: Now Playing in ${memberVoiceChannel.name}....**`, 39 | embeds: [ 40 | { 41 | author: { 42 | name: isSlash == true ? interaction.user.tag : message.author.tag, 43 | iconURL: isSlash == true 44 | ? interaction.user?.avatarURL({ dynamic: true }) || "" 45 | : message.author?.avatarURL({ dynamic: true }) || "", 46 | }, 47 | title: `**${player?.queue?.current.title}**`, 48 | description: `${player.paused == false ? "▶️" : "⏸️"} ${progressbar.splitBar(dur, postion, 12)[0]} \`[${(0, parse_ms_1.default)(postion).minutes}:${s((0, parse_ms_1.default)(postion).seconds) 49 | ? s((0, parse_ms_1.default)(postion).seconds) 50 | : (0, parse_ms_1.default)(postion).seconds}/${(0, parse_ms_1.default)(dur).minutes}:${s((0, parse_ms_1.default)(dur).seconds) ? s((0, parse_ms_1.default)(dur).seconds) : (0, parse_ms_1.default)(dur).seconds}]\`:loud_sound:`, 51 | }, 52 | ], 53 | }, isSlash); 54 | }, 55 | }; 56 | const s = (time) => { 57 | if (time == 1) { 58 | return "01"; 59 | } 60 | else if (time == 2) { 61 | return "02"; 62 | } 63 | else if (time == 3) { 64 | return "03"; 65 | } 66 | else if (time == 4) { 67 | return "04"; 68 | } 69 | else if (time == 5) { 70 | return "05"; 71 | } 72 | else if (time == 6) { 73 | return "06"; 74 | } 75 | else if (time == 7) { 76 | return "07"; 77 | } 78 | else if (time == 8) { 79 | return "08"; 80 | } 81 | else if (time == 9) { 82 | return "09"; 83 | } 84 | else if (time == 0) { 85 | return "00"; 86 | } 87 | else 88 | return time; 89 | }; 90 | -------------------------------------------------------------------------------- /src/commands/music/pause.js: -------------------------------------------------------------------------------- 1 | "use strict"; 2 | var __importDefault = (this && this.__importDefault) || function (mod) { 3 | return (mod && mod.__esModule) ? mod : { "default": mod }; 4 | }; 5 | Object.defineProperty(exports, "__esModule", { value: true }); 6 | const __1 = __importDefault(require("../../..")); 7 | const respond_1 = require("../../utils/modules/respond"); 8 | exports.default = { 9 | name: "pause", 10 | description: "pause muisc.", 11 | type: 1, 12 | options: [], 13 | run: async (client, interaction, message, args, isSlash, author, guild, channel, db) => { 14 | let settingsTable = await db.table("settings"); 15 | let lang = (await settingsTable.get(`Lang_${guild.id}`)) || "en"; 16 | let REPLYS = __1.default.replys[lang]; 17 | let manager = __1.default.bot.getManager(); 18 | let memberVoiceChannel = guild.members.cache.get(author.id)?.voice.channel; 19 | let botVoiceChannel = guild.me?.voice.channel; 20 | if (!memberVoiceChannel) 21 | return (0, respond_1.respond)(interaction, message, { 22 | content: REPLYS.mc1, 23 | }, isSlash); 24 | if (botVoiceChannel && botVoiceChannel.id !== memberVoiceChannel.id) 25 | return (0, respond_1.respond)(interaction, message, { 26 | content: REPLYS.mc2.replace("${botVoiceChannel.name}", `${botVoiceChannel.name}`), 27 | }, isSlash); 28 | let player = manager?.players.get(guild.id); 29 | if (!player || !player.queue.current) 30 | return (0, respond_1.respond)(interaction, message, { 31 | content: REPLYS.mc5, 32 | }, isSlash); 33 | if (player.paused) 34 | return (0, respond_1.respond)(interaction, message, { 35 | content: REPLYS.mc6 36 | }, isSlash); 37 | await player?.pause(true); 38 | (0, respond_1.respond)(interaction, message, { 39 | content: REPLYS.mc7.replace("{songName}", player.queue.current.title), 40 | }, isSlash); 41 | }, 42 | }; 43 | -------------------------------------------------------------------------------- /src/commands/music/queue.js: -------------------------------------------------------------------------------- 1 | "use strict"; 2 | var __importDefault = (this && this.__importDefault) || function (mod) { 3 | return (mod && mod.__esModule) ? mod : { "default": mod }; 4 | }; 5 | Object.defineProperty(exports, "__esModule", { value: true }); 6 | const __1 = __importDefault(require("../../..")); 7 | const respond_1 = require("../../utils/modules/respond"); 8 | const progressbar = require("string-progressbar"); 9 | exports.default = { 10 | name: "queue", 11 | description: "muisc queue.", 12 | type: 1, 13 | options: [], 14 | run: async (client, interaction, message, args, isSlash, author, guild, channel, db) => { 15 | let settingsTable = await db.table("settings"); 16 | let lang = (await settingsTable.get(`Lang_${guild.id}`)) || "en"; 17 | let REPLYS = __1.default.replys[lang]; 18 | let manager = __1.default.bot.getManager(); 19 | let memberVoiceChannel = guild.members.cache.get(author.id)?.voice.channel; 20 | let botVoiceChannel = guild.me?.voice.channel; 21 | if (!memberVoiceChannel) 22 | return (0, respond_1.respond)(interaction, message, { 23 | content: REPLYS.mc1, 24 | }, isSlash); 25 | if (botVoiceChannel && botVoiceChannel.id !== memberVoiceChannel.id) 26 | return (0, respond_1.respond)(interaction, message, { 27 | content: REPLYS.mc2.replace("${botVoiceChannel.name}", `${botVoiceChannel.name}`), 28 | }, isSlash); 29 | let player = manager?.players.get(guild.id); 30 | if (!player || !player.queue.current) 31 | return (0, respond_1.respond)(interaction, message, { 32 | content: "**:frowning2: No music playing.**", 33 | embeds: [ 34 | { 35 | title: "**:notes: Current Queue | 0 entries**", 36 | }, 37 | ], 38 | }, isSlash); 39 | (0, respond_1.respond)(interaction, message, { 40 | content: `**:arrow_forward: ${player.queue.current.title}**`, 41 | embeds: [ 42 | { 43 | title: "**:notes: Current Queue | 0 entries**", 44 | description: player.queue 45 | .map((track, index) => { 46 | let req = track.requester; 47 | return `**${index + 1}** ${track.title} - <@!${req?.id}>`; 48 | }) 49 | .slice(0, 20) 50 | .join("\n"), 51 | }, 52 | ], 53 | }, isSlash); 54 | }, 55 | }; 56 | -------------------------------------------------------------------------------- /src/commands/music/repeat.js: -------------------------------------------------------------------------------- 1 | "use strict"; 2 | var __importDefault = (this && this.__importDefault) || function (mod) { 3 | return (mod && mod.__esModule) ? mod : { "default": mod }; 4 | }; 5 | Object.defineProperty(exports, "__esModule", { value: true }); 6 | const __1 = __importDefault(require("../../..")); 7 | const respond_1 = require("../../utils/modules/respond"); 8 | const progressbar = require("string-progressbar"); 9 | exports.default = { 10 | name: "repeat", 11 | description: "repeat muisc.", 12 | type: 1, 13 | options: [], 14 | run: async (client, interaction, message, args, isSlash, author, guild, channel, db) => { 15 | let settingsTable = await db.table("settings"); 16 | let lang = (await settingsTable.get(`Lang_${guild.id}`)) || "en"; 17 | let REPLYS = __1.default.replys[lang]; 18 | let manager = __1.default.bot.getManager(); 19 | let memberVoiceChannel = guild.members.cache.get(author.id)?.voice.channel; 20 | let botVoiceChannel = guild.me?.voice.channel; 21 | if (!memberVoiceChannel) 22 | return (0, respond_1.respond)(interaction, message, { 23 | content: REPLYS.mc1, 24 | }, isSlash); 25 | if (botVoiceChannel && botVoiceChannel.id !== memberVoiceChannel.id) 26 | return (0, respond_1.respond)(interaction, message, { 27 | content: REPLYS.mc2.replace("${botVoiceChannel.name}", `${botVoiceChannel.name}`), 28 | }, isSlash); 29 | let player = manager?.players.get(guild.id); 30 | if (!player || !player.queue.current) 31 | return (0, respond_1.respond)(interaction, message, { 32 | content: REPLYS.mc5 33 | }, isSlash); 34 | await player.setTrackRepeat(player.trackRepeat == true ? false : true); 35 | (0, respond_1.respond)(interaction, message, { 36 | content: REPLYS.mc11.replace("{mode}", player.trackRepeat == true ? "ON" : "OFF"), 37 | }, isSlash); 38 | }, 39 | }; 40 | -------------------------------------------------------------------------------- /src/commands/music/resume.js: -------------------------------------------------------------------------------- 1 | "use strict"; 2 | var __importDefault = (this && this.__importDefault) || function (mod) { 3 | return (mod && mod.__esModule) ? mod : { "default": mod }; 4 | }; 5 | Object.defineProperty(exports, "__esModule", { value: true }); 6 | const __1 = __importDefault(require("../../..")); 7 | const respond_1 = require("../../utils/modules/respond"); 8 | exports.default = { 9 | name: "resume", 10 | description: "resume muisc.", 11 | type: 1, 12 | options: [], 13 | run: async (client, interaction, message, args, isSlash, author, guild, channel, db) => { 14 | let settingsTable = await db.table("settings"); 15 | let lang = (await settingsTable.get(`Lang_${guild.id}`)) || "en"; 16 | let REPLYS = __1.default.replys[lang]; 17 | let manager = __1.default.bot.getManager(); 18 | let memberVoiceChannel = guild.members.cache.get(author.id)?.voice.channel; 19 | let botVoiceChannel = guild.me?.voice.channel; 20 | if (!memberVoiceChannel) 21 | return (0, respond_1.respond)(interaction, message, { 22 | content: REPLYS.mc1, 23 | }, isSlash); 24 | if (botVoiceChannel && botVoiceChannel.id !== memberVoiceChannel.id) 25 | return (0, respond_1.respond)(interaction, message, { 26 | content: REPLYS.mc2.replace("${botVoiceChannel.name}", `${botVoiceChannel.name}`), 27 | }, isSlash); 28 | let player = manager?.players.get(guild.id); 29 | if (!player || !player.queue.current) 30 | return (0, respond_1.respond)(interaction, message, { 31 | content: REPLYS.mc5, 32 | }, isSlash); 33 | if (!player.paused) 34 | return (0, respond_1.respond)(interaction, message, { 35 | content: REPLYS.mc8, 36 | }, isSlash); 37 | await player?.pause(false); 38 | (0, respond_1.respond)(interaction, message, { 39 | content: REPLYS.mc9.replace("{songName}", player?.queue?.current?.title), 40 | }, isSlash); 41 | }, 42 | }; 43 | -------------------------------------------------------------------------------- /src/commands/music/skip.js: -------------------------------------------------------------------------------- 1 | "use strict"; 2 | var __importDefault = (this && this.__importDefault) || function (mod) { 3 | return (mod && mod.__esModule) ? mod : { "default": mod }; 4 | }; 5 | Object.defineProperty(exports, "__esModule", { value: true }); 6 | const __1 = __importDefault(require("../../..")); 7 | const respond_1 = require("../../utils/modules/respond"); 8 | const progressbar = require("string-progressbar"); 9 | exports.default = { 10 | name: "skip", 11 | description: "skip music.", 12 | type: 1, 13 | options: [], 14 | run: async (client, interaction, message, args, isSlash, author, guild, channel, db) => { 15 | let settingsTable = await db.table("settings"); 16 | let lang = (await settingsTable.get(`Lang_${guild.id}`)) || "en"; 17 | let REPLYS = __1.default.replys[lang]; 18 | let manager = __1.default.bot.getManager(); 19 | let memberVoiceChannel = guild.members.cache.get(author.id)?.voice.channel; 20 | let botVoiceChannel = guild.me?.voice.channel; 21 | if (!memberVoiceChannel) 22 | return (0, respond_1.respond)(interaction, message, { 23 | content: REPLYS.mc1, 24 | }, isSlash); 25 | if (botVoiceChannel && botVoiceChannel.id !== memberVoiceChannel.id) 26 | return (0, respond_1.respond)(interaction, message, { 27 | content: REPLYS.mc2.replace("${botVoiceChannel.name}", `${botVoiceChannel.name}`), 28 | }, isSlash); 29 | let player = manager?.players.get(guild.id); 30 | if (!player || !player.queue.current) 31 | return (0, respond_1.respond)(interaction, message, { 32 | content: REPLYS.mc5, 33 | }, isSlash); 34 | await player.stop(); 35 | let req = player?.queue?.current?.requester; 36 | (0, respond_1.respond)(interaction, message, { 37 | content: REPLYS.mc14.replace("{reqID}", `${req?.id}`).replace("{songName}", player?.queue?.current?.title), 38 | }, isSlash); 39 | }, 40 | }; 41 | -------------------------------------------------------------------------------- /src/commands/music/stop.js: -------------------------------------------------------------------------------- 1 | "use strict"; 2 | var __importDefault = (this && this.__importDefault) || function (mod) { 3 | return (mod && mod.__esModule) ? mod : { "default": mod }; 4 | }; 5 | Object.defineProperty(exports, "__esModule", { value: true }); 6 | const __1 = __importDefault(require("../../..")); 7 | const respond_1 = require("../../utils/modules/respond"); 8 | const progressbar = require("string-progressbar"); 9 | exports.default = { 10 | name: "stop", 11 | description: "stop music.", 12 | type: 1, 13 | options: [], 14 | run: async (client, interaction, message, args, isSlash, author, guild, channel, db) => { 15 | let settingsTable = await db.table("settings"); 16 | let lang = (await settingsTable.get(`Lang_${guild.id}`)) || "en"; 17 | let REPLYS = __1.default.replys[lang]; 18 | let manager = __1.default.bot.getManager(); 19 | let memberVoiceChannel = guild.members.cache.get(author.id)?.voice.channel; 20 | let botVoiceChannel = guild.me?.voice.channel; 21 | if (!memberVoiceChannel) 22 | return (0, respond_1.respond)(interaction, message, { 23 | content: REPLYS.mc1, 24 | }, isSlash); 25 | if (botVoiceChannel && botVoiceChannel.id !== memberVoiceChannel.id) 26 | return (0, respond_1.respond)(interaction, message, { 27 | content: REPLYS.mc2.replace("${botVoiceChannel.name}", `${botVoiceChannel.name}`), 28 | }, isSlash); 29 | let player = manager?.players.get(guild.id); 30 | if (!player || !player.queue.current) 31 | return (0, respond_1.respond)(interaction, message, { 32 | content: REPLYS.mc5, 33 | }, isSlash); 34 | await player?.destroy(); 35 | (0, respond_1.respond)(interaction, message, { 36 | content: REPLYS.mc13, 37 | }, isSlash); 38 | }, 39 | }; 40 | -------------------------------------------------------------------------------- /src/commands/music/volume.js: -------------------------------------------------------------------------------- 1 | "use strict"; 2 | var __importDefault = (this && this.__importDefault) || function (mod) { 3 | return (mod && mod.__esModule) ? mod : { "default": mod }; 4 | }; 5 | Object.defineProperty(exports, "__esModule", { value: true }); 6 | const __1 = __importDefault(require("../../..")); 7 | const respond_1 = require("../../utils/modules/respond"); 8 | const progressbar = require("string-progressbar"); 9 | exports.default = { 10 | name: "volume", 11 | description: "change music volume.", 12 | type: 1, 13 | options: [ 14 | { 15 | name: "amount", 16 | description: "Enter value to set.", 17 | type: 3, 18 | required: false, 19 | }, 20 | ], 21 | run: async (client, interaction, message, args, isSlash, author, guild, channel, db) => { 22 | let settingsTable = await db.table("settings"); 23 | let lang = (await settingsTable.get(`Lang_${guild.id}`)) || "en"; 24 | let REPLYS = __1.default.replys[lang]; 25 | let manager = __1.default.bot.getManager(); 26 | let memberVoiceChannel = guild.members.cache.get(author.id)?.voice.channel; 27 | let botVoiceChannel = guild.me?.voice.channel; 28 | if (!memberVoiceChannel) 29 | return (0, respond_1.respond)(interaction, message, { 30 | content: REPLYS.mc1, 31 | }, isSlash); 32 | if (botVoiceChannel && botVoiceChannel.id !== memberVoiceChannel.id) 33 | return (0, respond_1.respond)(interaction, message, { 34 | content: REPLYS.mc2.replace("${botVoiceChannel.name}", `${botVoiceChannel.name}`), 35 | }, isSlash); 36 | let player = manager?.players.get(guild.id); 37 | if (!player || !player.queue.current) 38 | return (0, respond_1.respond)(interaction, message, { 39 | content: REPLYS.mc5, 40 | }, isSlash); 41 | let vol = args[0]?.value; 42 | if (!vol) 43 | return (0, respond_1.respond)(interaction, message, { 44 | content: `**Volume: \`${player.volume}\`**`, 45 | }, isSlash); 46 | if (vol < 0 || vol > 150 || isNaN(vol)) 47 | return (0, respond_1.respond)(interaction, message, { 48 | content: REPLYS.mc15, 49 | }, isSlash); 50 | (0, respond_1.respond)(interaction, message, { 51 | content: REPLYS.mc16 52 | .replace("{songVol}", player.volume) 53 | .replace("{vol}", vol), 54 | }, isSlash); 55 | player.setVolume(Number(vol)); 56 | }, 57 | }; 58 | -------------------------------------------------------------------------------- /src/commands/other/blacklist.js: -------------------------------------------------------------------------------- 1 | "use strict"; 2 | Object.defineProperty(exports, "__esModule", { value: true }); 3 | const discord_js_1 = require("discord.js"); 4 | const respond_1 = require("../../utils/modules/respond"); 5 | exports.default = { 6 | name: "blacklist", 7 | description: "🎃 Blacklisted user .", 8 | type: 1, 9 | options: [], 10 | run: async (client, interaction, message, args, isSlash, author, guild, channel, db) => { 11 | let blacklist = await db.get(`Blacklist`); 12 | if (!blacklist) 13 | blacklist = []; 14 | (0, respond_1.respond)(interaction, message, { 15 | content: "Blacklisted users:", 16 | embeds: [ 17 | new discord_js_1.MessageEmbed().setColor("GREY").setDescription(blacklist 18 | ?.map((V, I) => `${I + 1} ${V.name}`) 19 | .slice(0, 40) 20 | .join("\n") || ""), 21 | ], 22 | }, isSlash); 23 | }, 24 | }; 25 | -------------------------------------------------------------------------------- /src/commands/other/nadeko-welcome.js: -------------------------------------------------------------------------------- 1 | "use strict"; 2 | var __importDefault = (this && this.__importDefault) || function (mod) { 3 | return (mod && mod.__esModule) ? mod : { "default": mod }; 4 | }; 5 | Object.defineProperty(exports, "__esModule", { value: true }); 6 | const respond_1 = require("../../utils/modules/respond"); 7 | const index_1 = __importDefault(require("../../../index")); 8 | const checkPerms_1 = __importDefault(require("../../functions/checkPerms")); 9 | exports.default = { 10 | name: "nadeko-welcome", 11 | description: "🙋‍♂️ welcome a user when join the server with mention him/her.", 12 | type: 1, 13 | options: [ 14 | { 15 | name: "channel", 16 | type: 7, 17 | required: true, 18 | description: "🔧 The channel that the bor will mention in", 19 | } 20 | ], 21 | run: async (client, interaction, message, args, isSlash, author, guild, channel, db) => { 22 | let settingsTable = await db.table("settings"); 23 | let lang = (await settingsTable.get(`Lang_${guild.id}`)) || "en"; 24 | let REPLYS = index_1.default.replys[lang]; 25 | let perms = await (0, checkPerms_1.default)(guild.members.cache.get(author.id), "ADMINISTRATOR", { 26 | base1: interaction, 27 | base2: message, 28 | isSlash, 29 | }, REPLYS); 30 | if (perms == true) { 31 | let channel = await guild.channels.cache.get(args[0]?.value); 32 | await db.set(`nadeko_${guild.id}`, channel?.id); 33 | (0, respond_1.respond)(interaction, message, { 34 | content: REPLYS.marwaaaaaaaaaaaaanPabloooooooooooo 35 | }, isSlash); 36 | } 37 | }, 38 | }; 39 | -------------------------------------------------------------------------------- /src/commands/other/porn.js: -------------------------------------------------------------------------------- 1 | "use strict"; 2 | Object.defineProperty(exports, "__esModule", { value: true }); 3 | const respond_1 = require("../../utils/modules/respond"); 4 | exports.default = { 5 | name: "porn", 6 | description: "Only For Adults and niro?.", 7 | type: 1, 8 | options: [], 9 | run: async (client, interaction, message, args, isSlash, author, guild, channel, db) => { 10 | (0, respond_1.respond)(interaction, message, { 11 | content: "روح يا نجس يا ابن الوسخه العب بعيد ، ايه الأشكال بنت المره دي" 12 | }, isSlash); 13 | }, 14 | }; 15 | -------------------------------------------------------------------------------- /src/commands/other/set-welcome.js: -------------------------------------------------------------------------------- 1 | "use strict"; 2 | var __importDefault = (this && this.__importDefault) || function (mod) { 3 | return (mod && mod.__esModule) ? mod : { "default": mod }; 4 | }; 5 | Object.defineProperty(exports, "__esModule", { value: true }); 6 | const respond_1 = require("../../utils/modules/respond"); 7 | const __1 = __importDefault(require("../../..")); 8 | const checkPerms_1 = __importDefault(require("../../functions/checkPerms")); 9 | const dashboard_config_1 = __importDefault(require("../../../dashboard.config")); 10 | exports.default = { 11 | name: "set-welcome", 12 | description: "👋 set welcome channel .", 13 | type: 1, 14 | options: [ 15 | { 16 | name: "channel", 17 | type: 7, 18 | required: true, 19 | description: "🔧 The channel you will make it as welcome", 20 | }, 21 | ], 22 | run: async (client, interaction, message, args, isSlash, author, guild, channel, db) => { 23 | let settingsTable = await db.table("settings"); 24 | let lang = (await settingsTable.get(`Lang_${guild.id}`)) || "en"; 25 | let REPLYS = __1.default.replys[lang]; 26 | let perms = await (0, checkPerms_1.default)(guild.members.cache.get(author.id), "ADMINISTRATOR", { 27 | base1: interaction, 28 | base2: message, 29 | isSlash, 30 | }, REPLYS); 31 | if (perms == true) { 32 | let ch = guild.channels.cache.get(args[0]?.value); 33 | if (!ch?.isText()) 34 | return (0, respond_1.respond)(interaction, message, { 35 | content: "🚫 | **Only text channel.**", 36 | }, isSlash); 37 | (0, respond_1.respond)(interaction, message, { 38 | content: "🔧 | **please type your welcome message.**\n\nKey words: {userId}, {userName}, {userTag}, {serverName}, {memberCount}", 39 | }, isSlash).then(async (der) => { 40 | channel 41 | .createMessageCollector({ 42 | max: 1, 43 | filter: (a) => a.author.id == author.id, 44 | }) 45 | .on("collect", async (d) => { 46 | d.delete(); 47 | await db.set(`WelcomeConfig_${guild.id}`, { 48 | ch: ch?.id, 49 | msg: d.content, 50 | }); 51 | (0, respond_1.editRespond)(interaction, message, { 52 | content: "👋 | **Welcome config updated!!. \nyou can edit the welcome banner from the website: **" + dashboard_config_1.default.domain + "/welcomer/" + guild.id, 53 | }, isSlash, der.id); 54 | }); 55 | }); 56 | } 57 | }, 58 | }; 59 | -------------------------------------------------------------------------------- /src/commands/other/temp.js: -------------------------------------------------------------------------------- 1 | "use strict"; 2 | var __importDefault = (this && this.__importDefault) || function (mod) { 3 | return (mod && mod.__esModule) ? mod : { "default": mod }; 4 | }; 5 | Object.defineProperty(exports, "__esModule", { value: true }); 6 | const respond_1 = require("../../utils/modules/respond"); 7 | const __1 = __importDefault(require("../../..")); 8 | const checkPerms_1 = __importDefault(require("../../functions/checkPerms")); 9 | const discord_temp_channels_1 = __importDefault(require("discord-temp-channels")); 10 | // |**** ⚠️ ALL COPYRIGHTS GOSE TO DEF(http://discord.com/users/933856726770413578) ⚠️ ****| 11 | // |**** ⚠️ ALL COPYRIGHTS GOSE TO DEF(http://discord.com/users/933856726770413578) ⚠️ ****| 12 | // |**** ⚠️ ALL COPYRIGHTS GOSE TO DEF(http://discord.com/users/933856726770413578) ⚠️ ****| 13 | // did you see casperMusic? chack out: https://discord.gg/ws9jA2cR5s 14 | /** 15 | ⚠️ stop right there ⚠️ 16 | did you know you are stealing my project when you remove the copyright? 17 | you can just contact me http://discord.com/users/933856726770413578 for publish it 18 | or if you are using it for your server know the no one will see the copyrights only you in the project 19 | so why you are removing it?, be nice and just leave it 20 | |**** ⚠️ ALL COPYRIGHTS GOSE TO DEF(http://discord.com/users/933856726770413578) ⚠️ ****| 21 | |**** ⚠️ ALL COPYRIGHTS GOSE TO DEF(http://discord.com/users/933856726770413578) ⚠️ ****| 22 | |**** ⚠️ ALL COPYRIGHTS GOSE TO DEF(http://discord.com/users/933856726770413578) ⚠️ ****| 23 | */ 24 | exports.default = { 25 | name: "temp", 26 | description: "🔊 temp voices.", 27 | type: 1, 28 | options: [], 29 | run: async (client, interaction, message, args, isSlash, author, guild, channel, db) => { 30 | let settingsTable = await db.table("settings"); 31 | let lang = (await settingsTable.get(`Lang_${guild.id}`)) || "en"; 32 | let REPLYS = __1.default.replys[lang]; 33 | let perms = await (0, checkPerms_1.default)(guild.members.cache.get(author.id), "ADMINISTRATOR", { 34 | base1: interaction, 35 | base2: message, 36 | isSlash, 37 | }, REPLYS); 38 | if (perms == true) { 39 | let primeTable = await db.table("prime"); 40 | guild.channels 41 | .create("Join To Create", { type: "GUILD_VOICE" }) 42 | .then(async (c) => { 43 | let cate = await guild.channels.create("temp channels", { 44 | type: "GUILD_CATEGORY", 45 | }); 46 | c.setParent(cate); 47 | await primeTable.set("Temp_" + guild.id, { 48 | channel: c.id, 49 | cate: cate.id, 50 | }); 51 | const tempChannels = new discord_temp_channels_1.default(client); 52 | tempChannels.registerChannel(c.id, { 53 | childCategory: cate.id, 54 | childAutoDeleteIfEmpty: true, 55 | childAutoDeleteIfOwnerLeaves: true, 56 | childFormat: (member, count) => `#${count} | ${member.user.username}`, 57 | }); 58 | (0, respond_1.respond)(interaction, message, { 59 | content: REPLYS.doneTempChannelCreated, 60 | }, isSlash); 61 | }); 62 | } 63 | }, 64 | }; 65 | -------------------------------------------------------------------------------- /src/commands/other/test.js: -------------------------------------------------------------------------------- 1 | "use strict"; 2 | Object.defineProperty(exports, "__esModule", { value: true }); 3 | const respond_1 = require("../../utils/modules/respond"); 4 | exports.default = { 5 | name: "test", 6 | description: "Mde in heaven", 7 | type: 1, 8 | options: [ 9 | { 10 | name: "only_admins", 11 | description: "🌟 Premuim Option: wont the channel controle for admins only?.", 12 | type: 3, 13 | required: true, 14 | choices: [ 15 | { name: "yes", value: "yes" }, 16 | { name: "no", value: "no" }, 17 | ], 18 | }, 19 | ], 20 | run: async (client, interaction, message, args, isSlash, author, guild, channel, db) => { 21 | (0, respond_1.respond)(interaction, message, { 22 | content: "Choose a category: ...", 23 | }, isSlash); 24 | }, 25 | }; 26 | -------------------------------------------------------------------------------- /src/commands/other/welcomer-reset.js: -------------------------------------------------------------------------------- 1 | "use strict"; 2 | var __importDefault = (this && this.__importDefault) || function (mod) { 3 | return (mod && mod.__esModule) ? mod : { "default": mod }; 4 | }; 5 | Object.defineProperty(exports, "__esModule", { value: true }); 6 | const respond_1 = require("../../../src/utils/modules/respond"); 7 | const index_1 = __importDefault(require("../../../index")); 8 | const checkPerms_1 = __importDefault(require("../../../src/functions/checkPerms")); 9 | exports.default = { 10 | name: "welcomer-reset", 11 | description: "👋 Reset DASHBOARD-welcomer data .", 12 | type: 1, 13 | options: [], 14 | run: async (client, interaction, message, args, isSlash, author, guild, channel, db) => { 15 | let settingsTable = await db.table("settings"); 16 | let lang = (await settingsTable.get(`Lang_${guild.id}`)) || "en"; 17 | let REPLYS = index_1.default.replys[lang]; 18 | let perms = await (0, checkPerms_1.default)(guild.members.cache.get(author.id), "ADMINISTRATOR", { 19 | base1: interaction, 20 | base2: message, 21 | isSlash, 22 | }, REPLYS); 23 | if (perms == true) { 24 | await db.set(`avatarXpostion_${guild.id}`, 40); 25 | await db.set(`avatarYpostion_${guild.id}`, 80); 26 | await db.set(`avatarXCpostion_${guild.id}`, 105); 27 | await db.set(`avatarYCpostion_${guild.id}`, 144); 28 | await db.set(`dimensionY_${guild.id}`, 280); 29 | await db.set(`dimensionX_${guild.id}`, 600); 30 | await db.set(`backgroundURL_${guild.id}`, "https://v13.discordjs.guide/assets/canvas-preview.30c4fe9e.png"); 31 | await db.set(`Deg_${guild.id}`, 65); 32 | await db.set(`usernamePosY_${guild.id}`, 150); 33 | await db.set(`usernamePosX_${guild.id}`, 200); 34 | await db.set(`usernameFSize_${guild.id}`, "20"); 35 | await db.set(`usernameColor_${guild.id}`, "#ed9209"); 36 | await db.set(`textContent_${guild.id}`, "Welcome to {guildName} !"); 37 | await db.set(`textPosY_${guild.id}`, 120); 38 | await db.set(`textPosX_${guild.id}`, 300); 39 | await db.set(`textFSize_${guild.id}`, "20"); 40 | await db.set(`textColor_${guild.id}`, "#ffffff"); 41 | (0, respond_1.respond)(interaction, message, { 42 | content: "🎨 Welcomer has been reseted .", 43 | }, isSlash); 44 | } 45 | }, 46 | }; 47 | -------------------------------------------------------------------------------- /src/commands/premuim/stats_room.js: -------------------------------------------------------------------------------- 1 | "use strict"; 2 | var __importDefault = (this && this.__importDefault) || function (mod) { 3 | return (mod && mod.__esModule) ? mod : { "default": mod }; 4 | }; 5 | Object.defineProperty(exports, "__esModule", { value: true }); 6 | const __1 = __importDefault(require("../../..")); 7 | const respond_1 = require("../../utils/modules/respond"); 8 | const checkPerms_1 = __importDefault(require("../../functions/checkPerms")); 9 | exports.default = { 10 | name: "stats_room", 11 | description: "🌟 Premuim: make a room for the voice online / members count / etc...", 12 | type: 1, 13 | options: [ 14 | { 15 | name: "channel", 16 | description: "🌟 Premuim Option: the channel.", 17 | type: 7, 18 | required: true, 19 | }, 20 | { 21 | name: "feature", 22 | description: "🌟 Premuim Option: What do you want the channel to display?.", 23 | type: 3, 24 | required: true, 25 | choices: [ 26 | { name: "voice_online", value: "voice_online" }, 27 | { name: "guild_member_count", value: "guild_member_count" }, 28 | { name: "server_channels", value: "server_channels" }, 29 | { name: "boosters", value: "boosters" }, 30 | { name: "online_members", value: "online_members" }, 31 | ], 32 | }, 33 | ], 34 | run: async (client, interaction, message, args, isSlash, author, guild, channel, db) => { 35 | let primeTable = await db.table("prime"); 36 | let settingsTable = await db.table("settings"); 37 | let lang = (await settingsTable.get(`Lang_${guild.id}`)) || "en"; 38 | let REPLYS = __1.default.replys[lang]; 39 | let perms = await (0, checkPerms_1.default)(guild.members.cache.get(author.id), "MANAGE_CHANNELS", { 40 | base1: interaction, 41 | base2: message, 42 | isSlash, 43 | }, REPLYS); 44 | if (perms == true) { 45 | let channelID = args[0]?.value; 46 | if (!guild.channels.cache.get(channelID)?.isVoice()) 47 | return (0, respond_1.respond)(interaction, message, { 48 | content: "🌟 (🚫) **| Only voice channels...**", 49 | }, isSlash); 50 | await primeTable.set(`InfoRoom_${guild.channels.cache.get(channelID)?.id}`, args[1]?.value); 51 | (0, respond_1.respond)(interaction, message, { 52 | content: "🌟 (✅) **| Status Room has been Added...**", 53 | }, isSlash); 54 | } 55 | }, 56 | }; 57 | -------------------------------------------------------------------------------- /src/commands/premuim/youtube.js: -------------------------------------------------------------------------------- 1 | "use strict"; 2 | var __importDefault = (this && this.__importDefault) || function (mod) { 3 | return (mod && mod.__esModule) ? mod : { "default": mod }; 4 | }; 5 | Object.defineProperty(exports, "__esModule", { value: true }); 6 | const respond_1 = require("../../utils/modules/respond"); 7 | const __1 = __importDefault(require("../../..")); 8 | const checkPerms_1 = __importDefault(require("../../functions/checkPerms")); 9 | exports.default = { 10 | name: "youtube-notic", 11 | description: "👋 set youtube notifications channel.", 12 | type: 1, 13 | options: [ 14 | { 15 | name: "text-channel", 16 | type: 7, 17 | required: true, 18 | description: "🔧 The channel that the bot will send the notification in", 19 | }, 20 | { 21 | name: "channel", 22 | type: 3, 23 | required: true, 24 | description: "🔧 The channel id you will notifications for it", 25 | }, 26 | ], 27 | run: async (client, interaction, message, args, isSlash, author, guild, channel, db) => { 28 | let primeTable = await db.table("prime"); 29 | let settingsTable = await db.table("settings"); 30 | let lang = (await settingsTable.get(`Lang_${guild.id}`)) || "en"; 31 | let REPLYS = __1.default.replys[lang]; 32 | let perms = await (0, checkPerms_1.default)(guild.members.cache.get(author.id), "MANAGE_CHANNELS", { 33 | base1: interaction, 34 | base2: message, 35 | isSlash, 36 | }, REPLYS); 37 | if (perms == true) { 38 | await primeTable.set(`YTnt_${guild.id}`, { 39 | c: args[0]?.value, 40 | id: args[1]?.value, 41 | }); 42 | (0, respond_1.respond)(interaction, message, { 43 | content: "🔧 | Channel has benn added .", 44 | }, isSlash); 45 | } 46 | }, 47 | }; 48 | -------------------------------------------------------------------------------- /src/commands/security/add-swear.js: -------------------------------------------------------------------------------- 1 | "use strict"; 2 | var __importDefault = (this && this.__importDefault) || function (mod) { 3 | return (mod && mod.__esModule) ? mod : { "default": mod }; 4 | }; 5 | Object.defineProperty(exports, "__esModule", { value: true }); 6 | const __1 = __importDefault(require("../../..")); 7 | const respond_1 = require("../../utils/modules/respond"); 8 | const checkPerms_1 = __importDefault(require("../../functions/checkPerms")); 9 | exports.default = { 10 | name: "add-swear", 11 | description: "🔒 Protect your server from bad words", 12 | type: 1, 13 | options: [ 14 | { 15 | name: "word", 16 | description: "🔧 the bad word??!", 17 | type: 3, 18 | required: true, 19 | }, 20 | ], 21 | run: async (client, interaction, message, args, isSlash, author, guild, channel, db) => { 22 | let settingsTable = await db.table("settings"); 23 | let lang = (await settingsTable.get(`Lang_${guild.id}`)) || "en"; 24 | let REPLYS = __1.default.replys[lang]; 25 | let perms = await (0, checkPerms_1.default)(guild.members.cache.get(author.id), "MANAGE_MESSAGES", { 26 | base1: interaction, 27 | base2: message, 28 | isSlash, 29 | }, REPLYS); 30 | if (perms == true) { 31 | let text = args[0]?.value; 32 | let check = await db.get(`ANTI_SWEAR_LIST_${guild.id}`); 33 | if (!check) 34 | await db.set(`ANTI_SWEAR_LIST_${guild.id}`, [`${text}`]); 35 | else 36 | db.push(`ANTI_SWEAR_LIST_${guild.id}`, `${text}`); 37 | (0, respond_1.respond)(interaction, message, { 38 | content: `🔒 **| ANTI_SWEAR :: list add a new word \`${text}\`...**`, 39 | }, isSlash); 40 | } 41 | }, 42 | }; 43 | -------------------------------------------------------------------------------- /src/commands/security/anti-bots.js: -------------------------------------------------------------------------------- 1 | "use strict"; 2 | var __importDefault = (this && this.__importDefault) || function (mod) { 3 | return (mod && mod.__esModule) ? mod : { "default": mod }; 4 | }; 5 | Object.defineProperty(exports, "__esModule", { value: true }); 6 | const __1 = __importDefault(require("../../..")); 7 | const respond_1 = require("../../utils/modules/respond"); 8 | const checkPerms_1 = __importDefault(require("../../functions/checkPerms")); 9 | exports.default = { 10 | name: "anti-bots", 11 | description: "🔒 Protect your server from bots", 12 | type: 1, 13 | options: [ 14 | { 15 | name: "toggle", 16 | description: "🔧 on or off??!", 17 | type: 3, 18 | required: true, 19 | choices: [ 20 | { name: "on", value: "on" }, 21 | { name: "off", value: "off" }, 22 | ], 23 | }, 24 | ], 25 | run: async (client, interaction, message, args, isSlash, author, guild, channel, db) => { 26 | let settingsTable = await db.table("settings"); 27 | let lang = (await settingsTable.get(`Lang_${guild.id}`)) || "en"; 28 | let REPLYS = __1.default.replys[lang]; 29 | let perms = await (0, checkPerms_1.default)(guild.members.cache.get(author.id), "BAN_MEMBERS", { 30 | base1: interaction, 31 | base2: message, 32 | isSlash, 33 | }, REPLYS); 34 | if (perms == true) { 35 | let toggle = args[0]?.value; 36 | await db.set(`ANTI_BOTS_${guild.id}`, toggle); 37 | (0, respond_1.respond)(interaction, message, { 38 | content: `🔒 **| ANTI_BOTS :: system \`${toggle}\`...**`, 39 | }, isSlash); 40 | } 41 | }, 42 | }; 43 | -------------------------------------------------------------------------------- /src/commands/security/anti-links.js: -------------------------------------------------------------------------------- 1 | "use strict"; 2 | var __importDefault = (this && this.__importDefault) || function (mod) { 3 | return (mod && mod.__esModule) ? mod : { "default": mod }; 4 | }; 5 | Object.defineProperty(exports, "__esModule", { value: true }); 6 | const __1 = __importDefault(require("../../..")); 7 | const respond_1 = require("../../utils/modules/respond"); 8 | const checkPerms_1 = __importDefault(require("../../functions/checkPerms")); 9 | exports.default = { 10 | name: "anti-links", 11 | description: "🔒 Protect your server from links", 12 | type: 1, 13 | options: [ 14 | { 15 | name: "toggle", 16 | description: "🔧 on or off??!", 17 | type: 3, 18 | required: true, 19 | choices: [ 20 | { name: "on", value: "on" }, 21 | { name: "off", value: "off" }, 22 | ], 23 | }, 24 | ], 25 | run: async (client, interaction, message, args, isSlash, author, guild, channel, db) => { 26 | let settingsTable = await db.table("settings"); 27 | let lang = (await settingsTable.get(`Lang_${guild.id}`)) || "en"; 28 | let REPLYS = __1.default.replys[lang]; 29 | let perms = await (0, checkPerms_1.default)(guild.members.cache.get(author.id), "MANAGE_MESSAGES", { 30 | base1: interaction, 31 | base2: message, 32 | isSlash, 33 | }, REPLYS); 34 | if (perms == true) { 35 | let toggle = args[0]?.value; 36 | await db.set(`ANTI_LINK_${guild.id}`, toggle); 37 | (0, respond_1.respond)(interaction, message, { 38 | content: `🔒 **| ANTI_LINKS :: system \`${toggle}\`...**`, 39 | }, isSlash); 40 | } 41 | }, 42 | }; 43 | -------------------------------------------------------------------------------- /src/commands/security/anti-spam.js: -------------------------------------------------------------------------------- 1 | "use strict"; 2 | var __importDefault = (this && this.__importDefault) || function (mod) { 3 | return (mod && mod.__esModule) ? mod : { "default": mod }; 4 | }; 5 | Object.defineProperty(exports, "__esModule", { value: true }); 6 | const __1 = __importDefault(require("../../..")); 7 | const respond_1 = require("../../utils/modules/respond"); 8 | const checkPerms_1 = __importDefault(require("../../functions/checkPerms")); 9 | exports.default = { 10 | name: "anti-spam", 11 | description: "🔒 Protect your server from spam.", 12 | type: 1, 13 | options: [ 14 | { 15 | name: "toggle", 16 | description: "🔧 on or off??!", 17 | type: 3, 18 | required: true, 19 | choices: [ 20 | { name: "on", value: "on" }, 21 | { name: "off", value: "off" }, 22 | ], 23 | }, 24 | ], 25 | run: async (client, interaction, message, args, isSlash, author, guild, channel, db) => { 26 | let settingsTable = await db.table("settings"); 27 | let lang = (await settingsTable.get(`Lang_${guild.id}`)) || "en"; 28 | let REPLYS = __1.default.replys[lang]; 29 | let perms = await (0, checkPerms_1.default)(guild.members.cache.get(author.id), "MANAGE_MESSAGES", { 30 | base1: interaction, 31 | base2: message, 32 | isSlash, 33 | }, REPLYS); 34 | if (perms == true) { 35 | let toggle = args[0]?.value; 36 | await db.set(`AntiSpam_${guild.id}`, toggle); 37 | (0, respond_1.respond)(interaction, message, { 38 | content: `🔒 **| ANTI_SPAM :: system \`${toggle}\`...**`, 39 | }, isSlash); 40 | } 41 | }, 42 | }; 43 | -------------------------------------------------------------------------------- /src/commands/security/anti-swear.js: -------------------------------------------------------------------------------- 1 | "use strict"; 2 | var __importDefault = (this && this.__importDefault) || function (mod) { 3 | return (mod && mod.__esModule) ? mod : { "default": mod }; 4 | }; 5 | Object.defineProperty(exports, "__esModule", { value: true }); 6 | const __1 = __importDefault(require("../../..")); 7 | const respond_1 = require("../../utils/modules/respond"); 8 | const checkPerms_1 = __importDefault(require("../../functions/checkPerms")); 9 | exports.default = { 10 | name: "anti-swear", 11 | description: "🔒 Protect your server from bad words", 12 | type: 1, 13 | options: [ 14 | { 15 | name: "toggle", 16 | description: "🔧 on or off??!", 17 | type: 3, 18 | required: true, 19 | choices: [ 20 | { name: "on", value: "on" }, 21 | { name: "off", value: "off" }, 22 | ], 23 | }, 24 | ], 25 | run: async (client, interaction, message, args, isSlash, author, guild, channel, db) => { 26 | let settingsTable = await db.table("settings"); 27 | let lang = (await settingsTable.get(`Lang_${guild.id}`)) || "en"; 28 | let REPLYS = __1.default.replys[lang]; 29 | let perms = await (0, checkPerms_1.default)(guild.members.cache.get(author.id), "MANAGE_MESSAGES", { 30 | base1: interaction, 31 | base2: message, 32 | isSlash, 33 | }, REPLYS); 34 | if (perms == true) { 35 | let toggle = args[0]?.value; 36 | await db.set(`ANTI_SWEAR_${guild.id}`, toggle); 37 | (0, respond_1.respond)(interaction, message, { 38 | content: `🔒 **| ANTI_SWEAR :: system \`${toggle}\`...**`, 39 | }, isSlash); 40 | } 41 | }, 42 | }; 43 | -------------------------------------------------------------------------------- /src/commands/security/anti-tokens.js: -------------------------------------------------------------------------------- 1 | "use strict"; 2 | var __importDefault = (this && this.__importDefault) || function (mod) { 3 | return (mod && mod.__esModule) ? mod : { "default": mod }; 4 | }; 5 | Object.defineProperty(exports, "__esModule", { value: true }); 6 | const __1 = __importDefault(require("../../..")); 7 | const respond_1 = require("../../utils/modules/respond"); 8 | const checkPerms_1 = __importDefault(require("../../functions/checkPerms")); 9 | exports.default = { 10 | name: "anti-tokens", 11 | description: "🔒 Protect your server from tokens", 12 | type: 1, 13 | options: [ 14 | { 15 | name: "toggle", 16 | description: "🔧 on or off??!", 17 | type: 3, 18 | required: true, 19 | choices: [ 20 | { name: "on", value: "on" }, 21 | { name: "off", value: "off" }, 22 | ], 23 | }, 24 | ], 25 | run: async (client, interaction, message, args, isSlash, author, guild, channel, db) => { 26 | let settingsTable = await db.table("settings"); 27 | let lang = (await settingsTable.get(`Lang_${guild.id}`)) || "en"; 28 | let REPLYS = __1.default.replys[lang]; 29 | let perms = await (0, checkPerms_1.default)(guild.members.cache.get(author.id), "BAN_MEMBERS", { 30 | base1: interaction, 31 | base2: message, 32 | isSlash, 33 | }, REPLYS); 34 | if (perms == true) { 35 | let toggle = args[0]?.value; 36 | await db.set(`AntiTokens_${guild.id}`, toggle); 37 | (0, respond_1.respond)(interaction, message, { 38 | content: `🔒 **| ANTI_TOKENS :: system \`${toggle}\`...**`, 39 | }, isSlash); 40 | } 41 | }, 42 | }; 43 | -------------------------------------------------------------------------------- /src/commands/security/config-pr.js: -------------------------------------------------------------------------------- 1 | "use strict"; 2 | var __importDefault = (this && this.__importDefault) || function (mod) { 3 | return (mod && mod.__esModule) ? mod : { "default": mod }; 4 | }; 5 | Object.defineProperty(exports, "__esModule", { value: true }); 6 | const discord_js_1 = require("discord.js"); 7 | const __1 = __importDefault(require("../../..")); 8 | const respond_1 = require("../../utils/modules/respond"); 9 | const checkPerms_1 = __importDefault(require("../../functions/checkPerms")); 10 | exports.default = { 11 | name: "config-pr", 12 | description: "🔒 Your Protection Config", 13 | type: 1, 14 | run: async (client, interaction, message, args, isSlash, author, guild, channel, db) => { 15 | let settingsTable = await db.table("settings"); 16 | let lang = (await settingsTable.get(`Lang_${guild.id}`)) || "en"; 17 | let REPLYS = __1.default.replys[lang]; 18 | let perms = await (0, checkPerms_1.default)(guild.members.cache.get(author.id), "ADMINISTRATOR", { 19 | base1: interaction, 20 | base2: message, 21 | isSlash, 22 | }, REPLYS); 23 | if (perms == true) { 24 | let embed = new discord_js_1.MessageEmbed() 25 | .setAuthor("Settings 🛠️", guild.iconURL({ dynamic: true }) || "", "https://discord.gg/developer-tools") 26 | .addField("Anti:", `**❯ Swear:** ${await await db.get(`ANTI_SWEAR_${guild.id}`)}, ${await db.get(`ANTI_SWEAR_LIST_${guild.id}`)} \n` + 27 | `**❯ Links:** ${await await db.get(`ANTI_LINK_${guild.id}`)}\n` + 28 | `**❯ Bots:** ${await await db.get(`ANTI_BOTS_${guild.id}`)} \n` + 29 | `**❯ Spam:** ${await await db.get(`AntiSpam_${guild.id}`)} \n` + 30 | `**❯ Tokens:** ${await await db.get(`AntiTokens_${guild.id}`)}, ${await await db.get(`AntiTokensTime_${guild.id}`)}`, false) 31 | .addField("Limit:", `**❯ RoleCreate:** ${await await db.get(`RoleCreateToggle_${guild.id}`)}, ${await await db.get(`RoleCreate_${guild.id}`)}\n` + 32 | `**❯ RoleDelete:** ${await await db.get(`RoleDeleteToggle_${guild.id}`)}, ${await await db.get(`RoleDelete_${guild.id}`)}\n` + 33 | `**❯ ChannelCreate:** ${await await db.get(`ChannelCreateToggle_${guild.id}`)}, ${await await db.get(`ChannelCreate_${guild.id}`)}\n` + 34 | `**❯ ChannelDelete:** ${await await db.get(`ChannelDeleteToggle_${guild.id}`)}, ${await await db.get(`ChannelDelete_${guild.id}`)}\n` + 35 | `**❯ MembersBan:** ${await await db.get(`MembersBanToggle_${guild.id}`)}, ${await await db.get(`MemebersBan_${guild.id}`)}\n`, false) 36 | .addField("Settings:", `**❯ Prefix:** ${await settingsTable.get(`Prefix_${guild?.id}`)}\n` + `**❯ Lang:** ${lang}\n`, false); 37 | (0, respond_1.respond)(interaction, message, { embeds: [embed], ephemeral: true }, isSlash); 38 | } 39 | }, 40 | }; 41 | -------------------------------------------------------------------------------- /src/commands/security/remove-swear.js: -------------------------------------------------------------------------------- 1 | "use strict"; 2 | var __importDefault = (this && this.__importDefault) || function (mod) { 3 | return (mod && mod.__esModule) ? mod : { "default": mod }; 4 | }; 5 | Object.defineProperty(exports, "__esModule", { value: true }); 6 | const __1 = __importDefault(require("../../..")); 7 | const respond_1 = require("../../utils/modules/respond"); 8 | const checkPerms_1 = __importDefault(require("../../functions/checkPerms")); 9 | exports.default = { 10 | name: "remove-swear", 11 | description: "🔒 Protect your server from bad words", 12 | type: 1, 13 | options: [ 14 | { 15 | name: "word", 16 | description: "🔧 the bad word??!", 17 | type: 3, 18 | required: true, 19 | }, 20 | ], 21 | run: async (client, interaction, message, args, isSlash, author, guild, channel, db) => { 22 | let settingsTable = await db.table("settings"); 23 | let lang = (await settingsTable.get(`Lang_${guild.id}`)) || "en"; 24 | let REPLYS = __1.default.replys[lang]; 25 | let perms = await (0, checkPerms_1.default)(guild.members.cache.get(author.id), "MANAGE_MESSAGES", { 26 | base1: interaction, 27 | base2: message, 28 | isSlash, 29 | }, REPLYS); 30 | if (perms == true) { 31 | let text = args[0]?.value; 32 | let check = await db.get(`ANTI_SWEAR_LIST_${guild.id}`); 33 | if (!check) 34 | (0, respond_1.respond)(interaction, message, { 35 | content: `🔒 **| ANTI_SWEAR :: there are no list...**`, 36 | }, isSlash); 37 | else 38 | db.pull(`ANTI_SWEAR_LIST_${guild.id}`, `${text}`); 39 | (0, respond_1.respond)(interaction, message, { 40 | content: `🔒 **| ANTI_SWEAR :: the word has been removed...**`, 41 | }, isSlash); 42 | } 43 | }, 44 | }; 45 | -------------------------------------------------------------------------------- /src/commands/security/time-tokens.js: -------------------------------------------------------------------------------- 1 | "use strict"; 2 | var __importDefault = (this && this.__importDefault) || function (mod) { 3 | return (mod && mod.__esModule) ? mod : { "default": mod }; 4 | }; 5 | Object.defineProperty(exports, "__esModule", { value: true }); 6 | const __1 = __importDefault(require("../../..")); 7 | const respond_1 = require("../../utils/modules/respond"); 8 | const checkPerms_1 = __importDefault(require("../../functions/checkPerms")); 9 | exports.default = { 10 | name: "time-tokens", 11 | description: "🔒 Protect your server from token (set the time)", 12 | type: 1, 13 | options: [ 14 | { 15 | name: "time", 16 | description: "🔧 time with days!!!", 17 | type: 3, 18 | required: true, 19 | }, 20 | ], 21 | run: async (client, interaction, message, args, isSlash, author, guild, channel, db) => { 22 | let settingsTable = await db.table("settings"); 23 | let lang = (await settingsTable.get(`Lang_${guild.id}`)) || "en"; 24 | let REPLYS = __1.default.replys[lang]; 25 | let perms = await (0, checkPerms_1.default)(guild.members.cache.get(author.id), "KICK_MEMBERS", { 26 | base1: interaction, 27 | base2: message, 28 | isSlash, 29 | }, REPLYS); 30 | if (perms == true) { 31 | let text = args[0]?.value; 32 | let time = await db.get(`AntiTokensTime_${guild?.id}`); 33 | if (time == null) 34 | return db.set(`AntiTokensTime_${guild.id}`, 120); 35 | await db.set(`AntiTokensTime_${guild.id}`, Number(text)); 36 | (0, respond_1.respond)(interaction, message, { 37 | content: `🔒 **| ANTI_TOKENS :: tokens time has been changed...**`, 38 | }, isSlash); 39 | } 40 | }, 41 | }; 42 | -------------------------------------------------------------------------------- /src/commands/suggestions/get-user-suggestions.js: -------------------------------------------------------------------------------- 1 | "use strict"; 2 | var __importDefault = (this && this.__importDefault) || function (mod) { 3 | return (mod && mod.__esModule) ? mod : { "default": mod }; 4 | }; 5 | Object.defineProperty(exports, "__esModule", { value: true }); 6 | const respond_1 = require("../../utils/modules/respond"); 7 | const __1 = __importDefault(require("../../..")); 8 | exports.default = { 9 | name: "get-user-suggestions", 10 | description: "➕ get suggestions of any user.", 11 | type: 1, 12 | options: [ 13 | { 14 | name: "user", 15 | description: "the user you will get the suggestion from", 16 | required: true, 17 | type: 6, 18 | }, 19 | ], 20 | run: async (client, interaction, message, args, isSlash, author, guild, channel, db) => { 21 | let settingsTable = await db.table("settings"); 22 | let lang = (await settingsTable.get(`Lang_${guild.id}`)) || "en"; 23 | let REPLYS = __1.default.replys[lang]; 24 | let userInfos = client.users.cache.get(args[0]?.value); 25 | let userKey = "Suggestions_" + guild.id + "_" + userInfos?.id.toString() + ".sugs"; 26 | let udata = await db.get(userKey); 27 | if (udata == null) 28 | return (0, respond_1.respond)(interaction, message, { 29 | content: "<@" + 30 | userInfos?.id + 31 | "> has no suggestion on **" + 32 | interaction.guild?.name + 33 | "**.", 34 | }, isSlash); 35 | else { 36 | let calSugs = await udata 37 | .map((message, index) => `${index + 1}. [go to suggestion message](${message.url})\n\`\`\`\n${message.content}\`\`\``) 38 | .join("\n\n"); 39 | (0, respond_1.respond)(interaction, message, { 40 | content: calSugs, 41 | }, isSlash); 42 | } 43 | }, 44 | }; 45 | -------------------------------------------------------------------------------- /src/commands/suggestions/send-suggestion.js: -------------------------------------------------------------------------------- 1 | "use strict"; 2 | var __importDefault = (this && this.__importDefault) || function (mod) { 3 | return (mod && mod.__esModule) ? mod : { "default": mod }; 4 | }; 5 | Object.defineProperty(exports, "__esModule", { value: true }); 6 | const __1 = __importDefault(require("../../..")); 7 | const discord_modals_1 = require("discord-modals"); 8 | exports.default = { 9 | name: "send-suggestion", 10 | description: "➕ send a suggestion to suggestions channel.", 11 | type: 1, 12 | options: [], 13 | run: async (client, interaction, message, args, isSlash, author, guild, channel, db) => { 14 | let settingsTable = await db.table("settings"); 15 | let lang = (await settingsTable.get(`Lang_${guild.id}`)) || "en"; 16 | let REPLYS = __1.default.replys[lang]; 17 | const modal = new discord_modals_1.Modal() 18 | .setCustomId("send") 19 | .setTitle("type you suggestion down below:") 20 | .addComponents(new discord_modals_1.TextInputComponent() 21 | .setCustomId("input") 22 | .setLabel("Some text Here") 23 | .setStyle("LONG") 24 | .setMinLength(3) 25 | .setMaxLength(1024) 26 | .setPlaceholder("write the suggestion here!.") 27 | .setRequired(true)); 28 | let modalData = await (0, discord_modals_1.showModal)(modal, { 29 | client: client, 30 | interaction: interaction, 31 | }); 32 | modalData; 33 | }, 34 | }; 35 | -------------------------------------------------------------------------------- /src/commands/suggestions/suggestion-channel.js: -------------------------------------------------------------------------------- 1 | "use strict"; 2 | var __importDefault = (this && this.__importDefault) || function (mod) { 3 | return (mod && mod.__esModule) ? mod : { "default": mod }; 4 | }; 5 | Object.defineProperty(exports, "__esModule", { value: true }); 6 | const respond_1 = require("../../utils/modules/respond"); 7 | const __1 = __importDefault(require("../../..")); 8 | const checkPerms_1 = __importDefault(require("../../functions/checkPerms")); 9 | exports.default = { 10 | name: "suggestion-channel", 11 | description: "➕ set/remove the suggestions channel", 12 | type: 1, 13 | options: [], 14 | run: async (client, interaction, message, args, isSlash, author, guild, channel, db) => { 15 | let settingsTable = await db.table("settings"); 16 | let lang = (await settingsTable.get(`Lang_${guild.id}`)) || "en"; 17 | let REPLYS = __1.default.replys[lang]; 18 | let perms = await (0, checkPerms_1.default)(guild.members.cache.get(author.id), "MANAGE_GUILD", { 19 | base1: interaction, 20 | base2: message, 21 | isSlash, 22 | }, REPLYS); 23 | if (perms == true) { 24 | let channeler = channel.id; 25 | let value = { channel: channeler }; 26 | let key = "SuggestionsChannel_" + guild?.id; 27 | let _5ra = await db.get(key); 28 | if (_5ra && _5ra?.channel == channeler) { 29 | await db.delete(key); 30 | (0, respond_1.respond)(interaction, message, { 31 | content: "Suggestion channel has been removed.", 32 | }, isSlash); 33 | } 34 | else { 35 | await db.set(key, value); 36 | (0, respond_1.respond)(interaction, message, { 37 | content: "<#" + 38 | channeler + 39 | "> has set as suggestion channel on **" + 40 | guild?.name + 41 | "**.", 42 | }, isSlash); 43 | } 44 | } 45 | }, 46 | }; 47 | -------------------------------------------------------------------------------- /src/commands/ticket/close.js: -------------------------------------------------------------------------------- 1 | "use strict"; 2 | var __importDefault = (this && this.__importDefault) || function (mod) { 3 | return (mod && mod.__esModule) ? mod : { "default": mod }; 4 | }; 5 | Object.defineProperty(exports, "__esModule", { value: true }); 6 | const respond_1 = require("../../utils/modules/respond"); 7 | const __1 = __importDefault(require("../../..")); 8 | exports.default = { 9 | name: "close", 10 | description: "🗿 close the ticket.", 11 | type: 1, 12 | options: [], 13 | run: async (client, interaction, message, args, isSlash, author, guild, channel, db) => { 14 | let ticketsTable = await db.table("ticket_system"); 15 | let settingsTable = await db.table("settings"); 16 | let lang = (await settingsTable.get(`Lang_${guild.id}`)) || "en"; 17 | let REPLYS = __1.default.replys[lang]; 18 | let data = await ticketsTable.get(`TK_${interaction.guild?.id}`); 19 | if (!data) 20 | return (0, respond_1.respond)(interaction, message, { 21 | content: "🚫 | **Ticket system have missing items, please reSETUP the system and try againe ...**", 22 | }, isSlash); 23 | let role = interaction.guild?.roles.cache.get(data.adminRole); 24 | let cate2 = interaction.guild?.channels.cache.get(data.closedCate); 25 | if (!cate2) 26 | return (0, respond_1.respond)(interaction, message, { 27 | content: "🚫 | **Ticket system have missing items, please reSETUP the system and try againe ...**", 28 | }, isSlash); 29 | if (guild.members.cache.get(author.id)?.roles.cache.has(role?.id || "")) { 30 | if (!channel?.isText()) 31 | return; 32 | if (!channel.name.startsWith("ticket-")) 33 | return (0, respond_1.respond)(interaction, message, { 34 | content: "🚫 | **Only in tickets...**", 35 | }, isSlash); 36 | if (!channel?.permissionsFor(guild?.roles.everyone.id)?.has("ATTACH_FILES")) { 37 | channel.delete(); 38 | } 39 | else { 40 | (0, respond_1.respond)(interaction, message, { 41 | content: "🎫 | **Ticket has been disabled ...**", 42 | }, isSlash); 43 | await channel.setParent(cate2); 44 | await channel.permissionOverwrites.set([ 45 | { 46 | id: guild?.roles.everyone.id, 47 | deny: [ 48 | "VIEW_CHANNEL", 49 | "SEND_MESSAGES", 50 | "READ_MESSAGE_HISTORY", 51 | "ADD_REACTIONS", 52 | "EMBED_LINKS", 53 | "ATTACH_FILES", 54 | ], 55 | }, 56 | { 57 | id: role?.id || "", 58 | allow: [ 59 | "VIEW_CHANNEL", 60 | "SEND_MESSAGES", 61 | "READ_MESSAGE_HISTORY", 62 | "ADD_REACTIONS", 63 | "EMBED_LINKS", 64 | "MANAGE_CHANNELS", 65 | ], 66 | }, 67 | ]); 68 | } 69 | } 70 | else 71 | return (0, respond_1.respond)(interaction, message, { 72 | content: "🚫 | **You are not allowed to use this type of commands ...**", 73 | }, isSlash); 74 | }, 75 | }; 76 | -------------------------------------------------------------------------------- /src/commands/ticket/rename.js: -------------------------------------------------------------------------------- 1 | "use strict"; 2 | var __importDefault = (this && this.__importDefault) || function (mod) { 3 | return (mod && mod.__esModule) ? mod : { "default": mod }; 4 | }; 5 | Object.defineProperty(exports, "__esModule", { value: true }); 6 | const respond_1 = require("../../utils/modules/respond"); 7 | const __1 = __importDefault(require("../../..")); 8 | exports.default = { 9 | name: "rename", 10 | description: "🗿 rename the ticket.", 11 | type: 1, 12 | options: [ 13 | { type: 3, name: "name", description: "🔧 the new name", required: true }, 14 | ], 15 | run: async (client, interaction, message, args, isSlash, author, guild, channel, db) => { 16 | let ticketsTable = await db.table("ticket_system"); 17 | let settingsTable = await db.table("settings"); 18 | let lang = (await settingsTable.get(`Lang_${guild.id}`)) || "en"; 19 | let REPLYS = __1.default.replys[lang]; 20 | let data = await ticketsTable.get(`TK_${interaction.guild?.id}`); 21 | if (!data) 22 | return (0, respond_1.respond)(interaction, message, { 23 | content: "🚫 | **Ticket system have missing items, please reSETUP the system and try againe ...**", 24 | }, isSlash); 25 | let role = interaction.guild?.roles.cache.get(data.adminRole); 26 | if (!role) 27 | return (0, respond_1.respond)(interaction, message, { 28 | content: "🚫 | **Ticket system have missing items, please reSETUP the system and try againe ...**", 29 | }, isSlash); 30 | if (guild.members.cache.get(author.id)?.roles.cache.has(role?.id || "")) { 31 | if (!channel?.isText()) 32 | return; 33 | if (!channel.name.startsWith("ticket-")) 34 | return (0, respond_1.respond)(interaction, message, { 35 | content: "🚫 | **Only in tickets...**", 36 | }, isSlash); 37 | await channel.setName("ticket-" + args[0]?.value); 38 | (0, respond_1.respond)(interaction, message, { 39 | content: "🎫 | **Ticket name has changed ...**", 40 | }, isSlash); 41 | } 42 | else 43 | return (0, respond_1.respond)(interaction, message, { 44 | content: "🚫 | **You are not allowed to use this type of commands ...**", 45 | }, isSlash); 46 | }, 47 | }; 48 | -------------------------------------------------------------------------------- /src/commands/ticket/setup.js: -------------------------------------------------------------------------------- 1 | "use strict"; 2 | var __importDefault = (this && this.__importDefault) || function (mod) { 3 | return (mod && mod.__esModule) ? mod : { "default": mod }; 4 | }; 5 | Object.defineProperty(exports, "__esModule", { value: true }); 6 | const discord_js_1 = require("discord.js"); 7 | const __1 = __importDefault(require("../../..")); 8 | const checkPerms_1 = __importDefault(require("../../functions/checkPerms")); 9 | exports.default = { 10 | name: "setup-tickets", 11 | description: "🗿 setup the ticket system.", 12 | type: 1, 13 | options: [ 14 | { 15 | name: "image", 16 | description: "⚙ if you wont to add image to ticket embed.", 17 | required: false, 18 | type: 3, 19 | }, 20 | ], 21 | run: async (client, interaction, message, args, isSlash, author, guild, channel, db) => { 22 | let ticketsTable = await db.table("ticket_system"); 23 | let settingsTable = await db.table("settings"); 24 | let lang = (await settingsTable.get(`Lang_${guild.id}`)) || "en"; 25 | let REPLYS = __1.default.replys[lang]; 26 | let perms = await (0, checkPerms_1.default)(guild.members.cache.get(author.id), "MANAGE_GUILD", { 27 | base1: interaction, 28 | base2: message, 29 | isSlash, 30 | }, REPLYS); 31 | if (perms == true) { 32 | channel 33 | .send({ 34 | embeds: [ 35 | { 36 | title: 'Press "🎫" To Open a Ticket', 37 | author: { 38 | icon_url: guild.iconURL({ dynamic: true }) || "", 39 | name: guild.name, 40 | }, 41 | image: { 42 | url: args[0]?.value ? args[0]?.value : "", 43 | }, 44 | color: "RANDOM", 45 | }, 46 | ], 47 | components: [ 48 | new discord_js_1.MessageActionRow().addComponents(new discord_js_1.MessageButton() 49 | .setCustomId("OPEN-T") 50 | .setEmoji("🎫") 51 | .setStyle("SECONDARY")), 52 | ], 53 | }) 54 | .then(async (tr) => { 55 | let adminRole = await guild.roles.create({ 56 | name: "Support Team", 57 | mentionable: true, 58 | }); 59 | let cate1 = await guild.channels.create("OPENED TICKET", { 60 | type: "GUILD_CATEGORY", 61 | }); 62 | let cate2 = await guild.channels.create("CLOSED TICKET", { 63 | type: "GUILD_CATEGORY", 64 | }); 65 | await ticketsTable.set(`TK_${guild.id}`, { 66 | adminRole: adminRole.id, 67 | openedCate: cate1.id, 68 | closedCate: cate2.id, 69 | }); 70 | }); 71 | } 72 | }, 73 | }; 74 | -------------------------------------------------------------------------------- /src/data/background.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/DefExtra/devLOG-903-/f8b63e4e6d8bf1c6948566181f3220d8c2e6d747/src/data/background.png -------------------------------------------------------------------------------- /src/data/colorsImage.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/DefExtra/devLOG-903-/f8b63e4e6d8bf1c6948566181f3220d8c2e6d747/src/data/colorsImage.png -------------------------------------------------------------------------------- /src/data/emojis/5828a9abe4bd7a7dfbd221d64133aa43.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/DefExtra/devLOG-903-/f8b63e4e6d8bf1c6948566181f3220d8c2e6d747/src/data/emojis/5828a9abe4bd7a7dfbd221d64133aa43.png -------------------------------------------------------------------------------- /src/data/profile.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/DefExtra/devLOG-903-/f8b63e4e6d8bf1c6948566181f3220d8c2e6d747/src/data/profile.png -------------------------------------------------------------------------------- /src/data/xp.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/DefExtra/devLOG-903-/f8b63e4e6d8bf1c6948566181f3220d8c2e6d747/src/data/xp.png -------------------------------------------------------------------------------- /src/errors/emiter.js: -------------------------------------------------------------------------------- 1 | "use strict"; 2 | var __importDefault = (this && this.__importDefault) || function (mod) { 3 | return (mod && mod.__esModule) ? mod : { "default": mod }; 4 | }; 5 | Object.defineProperty(exports, "__esModule", { value: true }); 6 | const chalk_1 = __importDefault(require("chalk")); 7 | exports.default = { 8 | errorEmt: (thiser, err) => { 9 | thiser.emit("SystemLog", { 10 | type: "error", 11 | text: chalk_1.default.red.bold("[ + ]") + " Error has been done...", 12 | error: err, 13 | }); 14 | }, 15 | logEmt: (thiser, text, type) => { 16 | if (!type) 17 | type = "log"; 18 | thiser.emit("SystemLog", { 19 | type: type, 20 | text: chalk_1.default.blue.bold("[ + ] ") + text, 21 | error: null 22 | }); 23 | }, 24 | }; 25 | -------------------------------------------------------------------------------- /src/events/interactionCreate.js: -------------------------------------------------------------------------------- 1 | "use strict"; 2 | var __importDefault = (this && this.__importDefault) || function (mod) { 3 | return (mod && mod.__esModule) ? mod : { "default": mod }; 4 | }; 5 | Object.defineProperty(exports, "__esModule", { value: true }); 6 | const dashboard_config_1 = __importDefault(require("../../dashboard.config")); 7 | const sugs_1 = __importDefault(require("../functions/sugs")); 8 | const ticketSystem_1 = __importDefault(require("../functions/ticketSystem")); 9 | exports.default = async (interaction, db, commands) => { 10 | const client = interaction.client; 11 | if (interaction.isButton()) { 12 | sugs_1.default.buttons(interaction, db); 13 | (0, ticketSystem_1.default)(interaction, db); 14 | } 15 | else if (interaction.isCommand()) { 16 | if (interaction.commandName !== "send-suggestion") 17 | await interaction.deferReply().catch(() => { }); 18 | let check = await db.get(`Blacklist`); 19 | if (!check) 20 | check = []; 21 | if (check?.includes(interaction.user.id)) { 22 | interaction.followUp(">>> **You are on the blacklist.**").catch(() => { }); 23 | return; 24 | } 25 | let shut = await db.get(`Project`); 26 | if (shut == true) { 27 | interaction 28 | .followUp(">>> bot is underdevelopment: " + dashboard_config_1.default.domain) 29 | .catch(() => { }); 30 | return; 31 | } 32 | if (interaction.user.bot) 33 | return; 34 | if (interaction.guildId == null) 35 | return; 36 | let command = commands.get(interaction.commandName); 37 | if (command) 38 | command.run(client, interaction, null, interaction.options.data, true, interaction.user, interaction.guild, interaction.channel, db); 39 | } 40 | }; 41 | -------------------------------------------------------------------------------- /src/events/submitModalEvent.js: -------------------------------------------------------------------------------- 1 | "use strict"; 2 | Object.defineProperty(exports, "__esModule", { value: true }); 3 | const discord_js_1 = require("discord.js"); 4 | exports.default = async (client, modal, db) => { 5 | if (modal.customId == "send") { 6 | let key = "SuggestionsChannel_" + modal.guild?.id; 7 | let res = modal.getTextInputValue("input"); 8 | let trtr = await db.get(key); 9 | let value = trtr?.channel; 10 | let channel = client?.channels.cache.get(value); 11 | if (!channel?.isText()) 12 | return; 13 | if (!channel) 14 | return modal.reply({ 15 | content: "Sorry! I can not find the suggestion channel in this server", 16 | ephemeral: true, 17 | }); 18 | modal.reply({ 19 | content: "Done! Your suggestion has been sent successfully, suggestion:```\n" + 20 | res + 21 | "```", 22 | ephemeral: true, 23 | }); 24 | channel 25 | .send({ 26 | embeds: [ 27 | { 28 | author: { 29 | name: modal.user.username, 30 | iconURL: modal.user.avatarURL({ dynamic: true }) || "", 31 | }, 32 | color: 0x2c2f33, 33 | timestamp: new Date(), 34 | footer: { 35 | iconURL: modal.guild?.iconURL({ dynamic: true }) || "", 36 | text: modal.guild?.name, 37 | }, 38 | description: res, 39 | fields: [ 40 | { name: "👍 Up votes:", value: "```\n0```", inline: true }, 41 | { 42 | name: "👎 Down votes:", 43 | value: "```\n0```", 44 | inline: true, 45 | }, 46 | ], 47 | }, 48 | ], 49 | components: [ 50 | new discord_js_1.MessageActionRow().addComponents(new discord_js_1.MessageButton() 51 | .setCustomId("up") 52 | .setStyle("DANGER") 53 | .setLabel("👍 Up"), new discord_js_1.MessageButton() 54 | .setCustomId("down") 55 | .setStyle("DANGER") 56 | .setLabel("👎 Down"), new discord_js_1.MessageButton() 57 | .setCustomId("info") 58 | .setStyle("SECONDARY") 59 | .setLabel("❓ Who Voted")), 60 | ], 61 | }) 62 | .then(async (message) => { 63 | let dataConstructor = { 64 | url: message.url.toString(), 65 | content: res, 66 | }; 67 | let userKey = "Suggestions_" + 68 | modal.guild?.id + 69 | "_" + 70 | modal.user.id.toString() + 71 | ".sugs"; 72 | let udata = await db.get(userKey); 73 | let value = { voters: [], votersInfo: [] }; 74 | let key = message.id.toString(); 75 | if (udata == null) 76 | await db.set(userKey, [dataConstructor]); 77 | else 78 | await db.push(userKey, dataConstructor); 79 | await db.set(key, value); 80 | }); 81 | } 82 | }; 83 | -------------------------------------------------------------------------------- /src/functions/afk.js: -------------------------------------------------------------------------------- 1 | "use strict"; 2 | Object.defineProperty(exports, "__esModule", { value: true }); 3 | exports.default = async (m, db) => { 4 | let status = await db.get(`AFK_${m.mentions.users.first()?.id}`); 5 | if (status == true) 6 | return true; 7 | else 8 | return false; 9 | }; 10 | -------------------------------------------------------------------------------- /src/functions/autoLine.js: -------------------------------------------------------------------------------- 1 | "use strict"; 2 | Object.defineProperty(exports, "__esModule", { value: true }); 3 | const discord_js_1 = require("discord.js"); 4 | exports.default = async (db, messgae) => { 5 | let data = await db.get(`Line_${messgae.channel.id}`); 6 | if (!data) 7 | return; 8 | if (data.embed == "false") 9 | messgae.channel.send({ 10 | files: [new discord_js_1.MessageAttachment(data.url)], 11 | }); 12 | else 13 | messgae.channel.send({ embeds: [new discord_js_1.MessageEmbed().setImage(data.url)] }); 14 | }; 15 | -------------------------------------------------------------------------------- /src/functions/checkPerms.js: -------------------------------------------------------------------------------- 1 | "use strict"; 2 | var __importDefault = (this && this.__importDefault) || function (mod) { 3 | return (mod && mod.__esModule) ? mod : { "default": mod }; 4 | }; 5 | Object.defineProperty(exports, "__esModule", { value: true }); 6 | const respond_1 = require("../utils/modules/respond"); 7 | const register_1 = __importDefault(require("../utils/modules/register")); 8 | exports.default = async (user, perms, respondCIG, replys) => { 9 | let is = 0; 10 | let settingsTable = await register_1.default.table("settings"); 11 | let roles = await settingsTable.get(`ARoles_${user?.guild.id}`); 12 | await roles?.forEach((roleID) => { 13 | if (user?.roles.cache.get(roleID)) 14 | is = 1; 15 | }); 16 | if (is == 1) 17 | return true; 18 | if (!user?.permissions.has(perms)) 19 | return (0, respond_1.respond)(respondCIG.base1, respondCIG.base2, { 20 | content: replys.noPerms 21 | .replace("{userID}", user?.id) 22 | .replace("{perm}", perms), 23 | }, respondCIG.isSlash); 24 | else 25 | return true; 26 | }; 27 | -------------------------------------------------------------------------------- /src/functions/leveling.js: -------------------------------------------------------------------------------- 1 | "use strict"; 2 | Object.defineProperty(exports, "__esModule", { value: true }); 3 | exports.default = async (msg, db) => { 4 | let autoTable = await db.table("auto"); 5 | msg.content.split(" ").forEach(async (content) => { 6 | let auto = await autoTable.get(`${content}_${msg.guild?.id}`); 7 | if (auto) { 8 | if (!auto) 9 | return; 10 | msg.channel.sendTyping().then(() => { 11 | msg.reply(auto || ""); 12 | }); 13 | } 14 | }); 15 | let re = await db.get(`LSA_${msg.guild?.id}`); 16 | let creditsTable = await db.table("credits"); 17 | // wait 18 | let LevelingSystem = { 19 | dot: await db.get(`LS_${msg.guild?.id}`), 20 | channel: await db.get(`LSC_${msg.guild?.id}`), 21 | msg: await db.get(`LSM_${msg.guild?.id}`), 22 | userPoints: await db.get(`LSUP_${msg.guild?.id}_${msg.author.id}`), 23 | userLevel: await db.get(`LSUL_${msg.guild?.id}_${msg.author.id}`), 24 | rewards: re, 25 | userRep: await creditsTable.get(`Rep_${msg.author.id}`), 26 | }; 27 | // check if data is existing 28 | if (LevelingSystem["dot"] == null) 29 | await db.set(`LS_${msg.guild?.id}`, true); 30 | if (!LevelingSystem["channel"]) 31 | await db.set(`LSC_${msg.guild?.id}`, ""); 32 | if (!LevelingSystem["userRep"]) 33 | await creditsTable.set(`Rep_${msg.guild?.id}`, 1); 34 | if (!LevelingSystem["rewards"]) 35 | await db.set(`LSA_${msg.guild?.id}`, []); 36 | if (!LevelingSystem["userLevel"]) 37 | await db.set(`LSUL_${msg.guild?.id}_${msg.author.id}`, 1); 38 | if (!LevelingSystem["userPoints"]) 39 | await db.set(`LSUP_${msg.guild?.id}_${msg.author.id}`, 0); 40 | if (!LevelingSystem["msg"]) 41 | await db.set(`LSM_${msg.guild?.id}`, `{user}, has rich a new level **{level}** 🎉🎉🎉`); 42 | if (LevelingSystem["dot"] == false) 43 | return; 44 | let reqPoints = (Number(LevelingSystem["userLevel"]) * 500) / 45 | Number(LevelingSystem["userRep"]); 46 | await db.add(`LSUP_${msg.guild?.id}_${msg.author.id}`, 1); 47 | LevelingSystem.rewards?.forEach(async (V) => { 48 | if (Number(V.level) <= 49 | Number(await db.get(`LSUL_${msg.guild?.id}_${msg.author.id}`))) { 50 | let r = msg.guild?.roles.cache.get(V.roleId); 51 | if (r) 52 | msg.member?.roles.add(r).catch((err) => { }); 53 | } 54 | }); 55 | if (reqPoints < Number(LevelingSystem["userPoints"])) { 56 | let ch = msg.guild?.channels.cache.get(String(LevelingSystem["channel"])); 57 | if (ch && ch.isText()) 58 | ch.send({ 59 | content: String(LevelingSystem["msg"]) 60 | .replace("{user}", `<@!${msg.author.id}>`) 61 | .replace("{level}", String(await db.get(`LSUL_${msg.guild?.id}_${msg.author.id}`))), 62 | }); 63 | await db.set(`LSUP_${msg.guild?.id}_${msg.author.id}`, 0); 64 | await db.add(`LSUL_${msg.guild?.id}_${msg.author.id}`, 1); 65 | } 66 | }; 67 | -------------------------------------------------------------------------------- /src/functions/prime.stats.js: -------------------------------------------------------------------------------- 1 | "use strict"; 2 | Object.defineProperty(exports, "__esModule", { value: true }); 3 | exports.default = (client, db) => { 4 | setInterval(() => { 5 | client?.channels.cache.forEach(async (channel) => { 6 | let primeTable = await db.table("prime"); 7 | let data = await primeTable.get(`InfoRoom_${channel.id}`); 8 | if (!channel.isVoice()) 9 | return; 10 | if (data) { 11 | let guild = await client.guilds.cache.find((g) => g.channels.cache.get(channel.id)); 12 | if (!guild) 13 | return; 14 | if (data == "voice_online") { 15 | let channelName = channel.name; 16 | let newName = `🔊 Voice Online: ${Number(guild.memberCount) - 17 | Number((await guild.members.fetch())?.filter((m) => !m.voice.channel?.id) 18 | .size)}`; 19 | if (channelName !== newName) 20 | await channel.setName(newName); 21 | } 22 | if (data == "guild_member_count") { 23 | let channelName = channel.name; 24 | let newName = `👥 Members: ${guild.memberCount}`; 25 | if (channelName !== newName) 26 | await channel.setName(newName); 27 | } 28 | if (data == "server_channels") { 29 | let channelName = channel.name; 30 | let newName = `🚪 Channels: ${guild.channels.cache.size}`; 31 | if (channelName !== newName) 32 | await channel.setName(newName); 33 | } 34 | else if (data == "boosters") { 35 | let channelName = channel.name; 36 | let newName = `🚀 Boosts: ${guild.premiumSubscriptionCount}`; 37 | if (channelName !== newName) 38 | await channel.setName(newName); 39 | } 40 | else if (data == "online_members") { 41 | let channelName = channel.name; 42 | let newName = `🟢 Online: ${Number((await guild.members.fetch()).filter((member) => member.presence?.status == "online" && !member.user.bot).size) + 43 | Number((await guild.members.fetch()).filter((member) => member.presence?.status == "idle" && !member.user.bot).size) + 44 | Number((await guild.members.fetch()).filter((member) => member.presence?.status == "dnd" && !member.user.bot).size)}`; 45 | if (channelName !== newName) 46 | await channel.setName(newName); 47 | } 48 | } 49 | }); 50 | }, 10000); 51 | }; 52 | -------------------------------------------------------------------------------- /src/functions/ytNoti.js: -------------------------------------------------------------------------------- 1 | "use strict"; 2 | var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) { 3 | if (k2 === undefined) k2 = k; 4 | var desc = Object.getOwnPropertyDescriptor(m, k); 5 | if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) { 6 | desc = { enumerable: true, get: function() { return m[k]; } }; 7 | } 8 | Object.defineProperty(o, k2, desc); 9 | }) : (function(o, m, k, k2) { 10 | if (k2 === undefined) k2 = k; 11 | o[k2] = m[k]; 12 | })); 13 | var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) { 14 | Object.defineProperty(o, "default", { enumerable: true, value: v }); 15 | }) : function(o, v) { 16 | o["default"] = v; 17 | }); 18 | var __importStar = (this && this.__importStar) || function (mod) { 19 | if (mod && mod.__esModule) return mod; 20 | var result = {}; 21 | if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k); 22 | __setModuleDefault(result, mod); 23 | return result; 24 | }; 25 | var __importDefault = (this && this.__importDefault) || function (mod) { 26 | return (mod && mod.__esModule) ? mod : { "default": mod }; 27 | }; 28 | Object.defineProperty(exports, "__esModule", { value: true }); 29 | const index_1 = __importDefault(require("../../index")); 30 | exports.default = async (db, guild) => { 31 | let { default: { getChannelVideos }, } = await Promise.resolve().then(() => __importStar(require("yt-channel-info"))); 32 | let primeTable = await db.table("prime"); 33 | let data = await primeTable.get(`YTnt_${guild.id}`); 34 | if (!data) 35 | return; 36 | let channel = guild.channels.cache.get(data.c); 37 | let video = await getChannelVideos({ 38 | channelId: data.id, 39 | channelIdType: 0, 40 | sortBy: "newest", 41 | }); 42 | if (channel && channel?.isText()) { 43 | let content = index_1.default.replys["videoNOT"] 44 | .replace("{videoURL}", `https://www.youtube.com/watch?v=${video.items[0].videoId}`) 45 | .replace("{videoName}", `${video.items[0].title}`); 46 | if ((await channel.messages.fetch()) 47 | .filter((m) => m.author.id == guild.me?.user.id) 48 | .first() 49 | ?.content.includes(content)) 50 | return; 51 | channel.send(content); 52 | } 53 | }; 54 | -------------------------------------------------------------------------------- /src/server/routers/auth/discord.js: -------------------------------------------------------------------------------- 1 | "use strict"; 2 | var __importDefault = (this && this.__importDefault) || function (mod) { 3 | return (mod && mod.__esModule) ? mod : { "default": mod }; 4 | }; 5 | Object.defineProperty(exports, "__esModule", { value: true }); 6 | const passport_1 = __importDefault(require("passport")); 7 | const url_1 = __importDefault(require("url")); 8 | exports.default = (app) => { 9 | app 10 | .get("/login", (req, res, next) => { 11 | if (req.session?.backURL) { 12 | req.session.backURL = req.session?.backURL; 13 | } 14 | else if (req.headers.referer) { 15 | const parsed = url_1.default.parse(req.headers.referer); 16 | if (parsed.hostname == app.locals.domain) { 17 | req.session.backURL = parsed.path; 18 | } 19 | } 20 | else { 21 | req.session.backURL = "/"; 22 | } 23 | next(); 24 | }, passport_1.default.authenticate("discord", { prompt: "none" })) 25 | .get("/logout", (req, res) => { 26 | req.session.destroy(() => { 27 | req.logout(); 28 | res.redirect("/"); 29 | }); 30 | }) 31 | .get("/callback", passport_1.default.authenticate("discord", { failureRedirect: "/" }), async (req, res) => { 32 | res.redirect("/"); 33 | }); 34 | }; 35 | -------------------------------------------------------------------------------- /src/server/routers/router.js: -------------------------------------------------------------------------------- 1 | "use strict"; 2 | var __importDefault = (this && this.__importDefault) || function (mod) { 3 | return (mod && mod.__esModule) ? mod : { "default": mod }; 4 | }; 5 | Object.defineProperty(exports, "__esModule", { value: true }); 6 | const discord_1 = __importDefault(require("./auth/discord")); 7 | const views_1 = __importDefault(require("./auth/views")); 8 | exports.default = (app, db) => { 9 | (0, discord_1.default)(app); 10 | (0, views_1.default)(app, db); 11 | }; 12 | -------------------------------------------------------------------------------- /src/server/serverBoat.js: -------------------------------------------------------------------------------- 1 | "use strict"; 2 | var __importDefault = (this && this.__importDefault) || function (mod) { 3 | return (mod && mod.__esModule) ? mod : { "default": mod }; 4 | }; 5 | Object.defineProperty(exports, "__esModule", { value: true }); 6 | const express_1 = __importDefault(require("express")); 7 | const app = (0, express_1.default)(); 8 | const passport_1 = __importDefault(require("passport")); 9 | const body_parser_1 = __importDefault(require("body-parser")); 10 | const passport_discord_1 = __importDefault(require("passport-discord")); 11 | const Strategy = passport_discord_1.default.Strategy; 12 | const express_session_1 = __importDefault(require("express-session")); 13 | const memorystore_1 = __importDefault(require("memorystore")); 14 | const memorystore = (0, memorystore_1.default)(express_session_1.default); 15 | const dashboard_config_1 = __importDefault(require("../../dashboard.config")); 16 | const router_1 = __importDefault(require("./routers/router")); 17 | const chalk_1 = __importDefault(require("chalk")); 18 | exports.default = (db, thiser) => { 19 | passport_1.default.serializeUser((user, done) => done(null, user)); 20 | passport_1.default.deserializeUser((obj, done) => done(null, obj)); 21 | passport_1.default.use(new Strategy({ 22 | clientID: dashboard_config_1.default.clientID, 23 | clientSecret: dashboard_config_1.default.clientSECRET, 24 | callbackURL: dashboard_config_1.default.domain + "/callback", 25 | scope: ["identify", "guilds", "guilds.join"], 26 | }, (accessToken, refreshToken, profile, done) => { 27 | process.nextTick(() => done(null, profile)); 28 | })); 29 | app.use((0, express_session_1.default)({ 30 | store: new memorystore({ checkPeriod: 86400000 }), 31 | secret: `!@#$d8932%^ni#(!@bn9312)`, 32 | resave: false, 33 | saveUninitialized: false, 34 | })); 35 | app.set("views", __dirname + "/views"); 36 | app.set("view engine", "pug"); 37 | app.use(passport_1.default.initialize()); 38 | app.use(passport_1.default.session()); 39 | app.use(body_parser_1.default.json()); 40 | app.use(body_parser_1.default.urlencoded({ 41 | extended: true, 42 | })); 43 | app.use(express_1.default.json()); 44 | app.use(express_1.default.urlencoded({ 45 | extended: true, 46 | })); 47 | (0, router_1.default)(app, db); 48 | app.use(express_1.default.static(`${__dirname}/assets`)); 49 | app.locals.basedir = `${__dirname}/assets`; 50 | app.listen(dashboard_config_1.default.port, () => { 51 | thiser.emit("SystemLog", { 52 | type: "connection", 53 | text: chalk_1.default.blue.bold("[ + ]") + " Loading Dashboard To The Host...", 54 | }); 55 | }); 56 | }; 57 | -------------------------------------------------------------------------------- /src/server/views/includes/axios.pug: -------------------------------------------------------------------------------- 1 | link(href='https://cdn.jsdelivr.net/npm/bootstrap@5.1.3/dist/css/bootstrap.min.css' rel='stylesheet' integrity='sha384-1BmE4kWBq78iYhFldvKuhfTAU6auU8tT94WrHftjDbrCEXSU1oBoqyl2QvZ6jIW3' crossorigin='anonymous') 2 | script(src='https://cdn.jsdelivr.net/npm/bootstrap@5.1.3/dist/js/bootstrap.bundle.min.js' integrity='sha384-ka7Sk0Gln4gmtz2MlQnikT1wXgYsOg+OMhuP+IlRH9sENBO0LRn5q+8nbTov4+1p' crossorigin='anonymous') 3 | script(src='https://cdn.jsdelivr.net/npm/@popperjs/core@2.10.2/dist/umd/popper.min.js' integrity='sha384-7+zCNj/IqJ95wo16oMtfsKbZ9ccEh31eOz1HGyDuCQ6wgnyJNSYdrPa03rtR1zdB' crossorigin='anonymous') 4 | script(src='https://cdn.jsdelivr.net/npm/bootstrap@5.1.3/dist/js/bootstrap.min.js' integrity='sha384-QJHtvGhmr9XOIpI6YVutG+2QOK9T+ZnN4kzFN1RtK3zEFEIsxhlmWl5/YESvpZ13' crossorigin='anonymous') 5 | link(rel='stylesheet' href='https://cdnjs.cloudflare.com/ajax/libs/font-awesome/5.14.0/css/all.min.css') 6 | link(rel='stylesheet' href='style.css') -------------------------------------------------------------------------------- /src/server/views/includes/header.pug: -------------------------------------------------------------------------------- 1 | nav.navbar.navbar-expand-lg 2 | title #{client.user.username} - #{title} 3 | .container-fluid 4 | a.navbar-brand(href='/owners') #{client.user.username} 5 | button.navbar-toggler(type='button' data-bs-toggle='collapse' data-bs-target='#navbarSupportedContent' aria-controls='navbarSupportedContent' aria-expanded='false' aria-label='Toggle navigation') 6 | span.navbar-toggler-icon 7 | #navbarSupportedContent.collapse.navbar-collapse 8 | ul.navbar-nav.me-auto.mb-2.mb-lg-0 9 | li.nav-item 10 | a.nav-link(aria-current='page' href='/' style="color: #f7f7f7;") Home 11 | i.fas.fa-home 12 | li.nav-item 13 | a.nav-link(href='/dashboard' style="color: #f7f7f7;") Dashboard 14 | i.fas.fa-chart-line 15 | form.d-flex 16 | - if (user && user.id) { 17 | a(href='/logout') 18 | button.btn.btn-outline-prem(type='button') Logout 19 | i.fas.fa-sign-out 20 | - } else { 21 | a(href='/login') 22 | button.btn.btn-outline-prem(type='button') Login 23 | i.fas.fa-sign-in 24 | - } -------------------------------------------------------------------------------- /src/server/views/index.pug: -------------------------------------------------------------------------------- 1 | doctype html 2 | include includes/axios.pug 3 | head 4 | meta(charset='utf-8') 5 | meta(name='viewport' content='width=device-width, initial-scale=1') 6 | include includes/header.pug 7 | title #{client.user.username} 8 | bady 9 | .container.mt-5.top-ass 10 | .row.cont 11 | .col 12 | p.par1 Enhance your server control with us ✨. 13 | p.col-cus 14 | | The best services are provided here! 15 | br 16 | | Ready to boost your discord server with us? 17 | a(href='/invite' target='_blank') 18 | button.btn.btn-invite(type='button') Invite to Discord 19 | - if (user && user.id) { 20 | a(href='/dashboard') 21 | button.btn.btn-outline-prem(type='button') Dashboard 22 | - } else { 23 | a(href='/login') 24 | button.btn.btn-outline-prem(type='button') Login 25 | - } 26 | .col 27 | img.float-end.logo-main.rounded-circle(src=client.user.displayAvatarURL({ dynamic: true }) alt='Logo-bot') 28 | 29 | div(align="center" ) 30 | h6.text-center(style="color: #5e5ac9; width: 30%; box-shadow: rgba(0, 0, 0, 0.25) 0px 54px 55px, rgba(0, 0, 0, 0.12) 0px -12px 30px, rgba(0, 0, 0, 0.12) 0px 4px 6px, rgba(0, 0, 0, 0.17) 0px 12px 13px, rgba(0, 0, 0, 0.09) 0px -3px 5px;") all copy right goes to NIR0 -------------------------------------------------------------------------------- /src/server/views/moved.pug: -------------------------------------------------------------------------------- 1 | doctype html 2 | include includes/axios.pug 3 | head 4 | meta(charset='utf-8') 5 | meta(name='viewport' content='width=device-width, initial-scale=1') 6 | title all copyright goes to def & niro 7 | bady.text-center 8 | br 9 | br 10 | br 11 | br 12 | br 13 | br 14 | br 15 | br 16 | br 17 | h1 🔧 This button has been moved to bot commands 🔧 18 | p use: " /welcomer-reset " to reset the welcomer 19 | br 20 | br 21 | br 22 | br 23 | br 24 | br 25 | br 26 | br 27 | br 28 | br 29 | br 30 | br 31 | br 32 | br 33 | br 34 | br 35 | 36 | div(align="center" ) 37 | h6.text-center(style="color: #5e5ac9; width: 30%; box-shadow: rgba(0, 0, 0, 0.25) 0px 54px 55px, rgba(0, 0, 0, 0.12) 0px -12px 30px, rgba(0, 0, 0, 0.12) 0px 4px 6px, rgba(0, 0, 0, 0.17) 0px 12px 13px, rgba(0, 0, 0, 0.09) 0px -3px 5px;") all copy right goes to NIR0 -------------------------------------------------------------------------------- /src/server/views/owners.pug: -------------------------------------------------------------------------------- 1 | doctype html 2 | include includes/axios.pug 3 | head 4 | meta(charset='utf-8') 5 | meta(name='viewport' content='width=device-width, initial-scale=1') 6 | nav.navbar.navbar-expand-lg 7 | title Owners 8 | .container-fluid 9 | a.navbar-brand(href='/') Owners 10 | button.navbar-toggler(type='button' data-bs-toggle='collapse' data-bs-target='#navbarSupportedContent' aria-controls='navbarSupportedContent' aria-expanded='false' aria-label='Toggle navigation') 11 | form(method="POST") 12 | .container.mt-5.top-ass 13 | .row.cont 14 | .col 15 | p.par1 Owners Page ✨. 16 | p.col-cus 17 | | your secret area to blacklist users :) 18 | br 19 | | What you can do now?! 20 | a(href='/brgrzrfr3rmrsrnrwrfrfrfrfrfrfrfr309' target='_blank') 21 | button.btn.btn-invite(type='button') ShutDownTheBot 22 | button.btn.btn-outline-prem(type="submit" onclick="alert('Your data has been saved please click ok to continue')") Save 23 | .col 24 | 25 | 26 | 27 | div(align="center" ) 28 | h6.text-center(style="color: #5e5ac9; width: 30%; box-shadow: rgba(0, 0, 0, 0.25) 0px 54px 55px, rgba(0, 0, 0, 0.12) 0px -12px 30px, rgba(0, 0, 0, 0.12) 0px 4px 6px, rgba(0, 0, 0, 0.17) 0px 12px 13px, rgba(0, 0, 0, 0.09) 0px -3px 5px;") all copy right goes to NIR0 -------------------------------------------------------------------------------- /src/server/views/servers.pug: -------------------------------------------------------------------------------- 1 | doctype html 2 | include includes/axios.pug 3 | head 4 | meta(charset='utf-8') 5 | meta(name='viewport' content='width=device-width, initial-scale=1') 6 | include includes/header.pug 7 | title #{client.user.username} 8 | bady 9 | section 10 | .jumbotron 11 | .text-center.d-flex.justify-content-center.head.text-white.display-5 12 | h1(style='color: rgba(12, 217, 90, 255)') 13 | | Dashboard ✨ 14 | br 15 | - if (user && user.id) { 16 | div(style='\ 17 | border-bottom-left-radius: 10px;\ 18 | border-bottom-right-radius: 10px;\ 19 | ') 20 | - user.guilds.filter(guild=> { 21 | - const permsOnGuild = new permissions(guild.permissions_new); 22 | - if(permsOnGuild.has(permissions.FLAGS.ADMINISTRATOR)) return guild; 23 | - }).sort((a, b) => { return (client.guilds.cache.get(a.id) == client.guilds.cache.get(b.id)) ? 0 : a ? -1 : 1; }).forEach(guild => { 24 | - let guildICON = guild.icon ? `https://cdn.discordapp.com/icons/${guild.id}/${guild.icon}` : 'https://th.bing.com/th?id=OIF.5p%2fpiurNILYfilJFAZZqlw&pid=ImgDet&rs=1'; 25 | - let buttonURL = client.guilds.cache.get(guild.id) ? `location.href='${domain}/dashboard/${guild.id}'` : `location.href='https://discord.com/api/oauth2/authorize?response_type=code&client_id=${client.user.id}&guild_id=${guild.id}&permissions=6747975000&redirect_uri=${domain + "/callback"}&scope=bot%20applications.commands'` 26 | - let buttonTEXT = client.guilds.cache.get(guild.id) ? `Setting!.` : `Invite!.` 27 | - let description = client.guilds.cache.get(guild.id) ? `this server can be setting now!.` : `you must invite the bot to your server for setting it!`; 28 | .card-body 29 | .main-bot-sec 30 | img.rounded-circle.bot-img(style='display: inline-block; margin-top: 2vh' src=guildICON width='66px' height='66px') 31 | .typorgraphy-prem(style='display: inline-block') 32 | h4.text-white 33 | | #{guild.name} 34 | p.exp-time.text-dark 35 | | #{description} 36 | button.btn.btn-outline.float-end.btn-invite-prem(style='padding: 10px 25px;' type='button' onclick=buttonURL) #{buttonTEXT} 37 | - }); 38 | br 39 | - } else { 40 | h3(align="center") Please Login First (بدل ما اجي انيكك) 41 | - } -------------------------------------------------------------------------------- /src/server/views/underDev.pug: -------------------------------------------------------------------------------- 1 | doctype html 2 | include includes/axios.pug 3 | head 4 | meta(charset='utf-8') 5 | meta(name='viewport' content='width=device-width, initial-scale=1') 6 | title all copyright goes to def & niro 7 | bady.text-center 8 | br 9 | br 10 | br 11 | br 12 | br 13 | br 14 | br 15 | br 16 | br 17 | h1 🔧 The bot is under development 🔧 18 | br 19 | br 20 | br 21 | br 22 | br 23 | br 24 | br 25 | br 26 | br 27 | br 28 | br 29 | br 30 | br 31 | br 32 | br 33 | br 34 | 35 | div(align="center" ) 36 | h6.text-center(style="color: #5e5ac9; width: 30%; box-shadow: rgba(0, 0, 0, 0.25) 0px 54px 55px, rgba(0, 0, 0, 0.12) 0px -12px 30px, rgba(0, 0, 0, 0.12) 0px 4px 6px, rgba(0, 0, 0, 0.17) 0px 12px 13px, rgba(0, 0, 0, 0.09) 0px -3px 5px;") all copy right goes to NIR0 -------------------------------------------------------------------------------- /src/utils/bot.js: -------------------------------------------------------------------------------- 1 | "use strict"; 2 | var __importDefault = (this && this.__importDefault) || function (mod) { 3 | return (mod && mod.__esModule) ? mod : { "default": mod }; 4 | }; 5 | Object.defineProperty(exports, "__esModule", { value: true }); 6 | exports.Bot = void 0; 7 | const discord_js_1 = require("discord.js"); 8 | const register_1 = require("./modules/register"); 9 | const chalk_1 = __importDefault(require("chalk")); 10 | const discord_modals_1 = __importDefault(require("discord-modals")); 11 | class Bot extends register_1.Register { 12 | constructor(client = new discord_js_1.Client({ 13 | intents: [ 14 | "DIRECT_MESSAGES", 15 | "DIRECT_MESSAGE_TYPING", 16 | "GUILDS", 17 | "GUILD_BANS", 18 | "GUILD_EMOJIS_AND_STICKERS", 19 | "GUILD_INTEGRATIONS", 20 | "GUILD_INVITES", 21 | "GUILD_MEMBERS", 22 | "GUILD_MESSAGES", 23 | "GUILD_MESSAGE_REACTIONS", 24 | "GUILD_MESSAGE_TYPING", 25 | "GUILD_PRESENCES", 26 | "GUILD_SCHEDULED_EVENTS", 27 | "GUILD_VOICE_STATES", 28 | "GUILD_WEBHOOKS", 29 | "MESSAGE_CONTENT", 30 | ], 31 | allowedMentions: { repliedUser: false }, 32 | }), dirname = process.cwd(), commands = new Map()) { 33 | super(client, dirname, commands); 34 | this.client = client; 35 | this.dirname = dirname; 36 | this.commands = commands; 37 | (0, discord_modals_1.default)(this.client); 38 | this.client.on("error", (error) => console.log(error)); 39 | this.client.on("shardError", (error) => console.log(error)); 40 | process.on("unhandledRejection", (reason, p) => console.log(p, reason)); 41 | process.on("uncaughtException", (reason, p) => console.log(p, reason.message)); 42 | process.on("uncaughtExceptionMonitor", (reason, p) => console.log(p, reason.message)); 43 | } 44 | getCommands() { 45 | return this.commands; 46 | } 47 | login(token) { 48 | return new Promise((resolve, reject) => { 49 | this.client 50 | .login(token) 51 | .then(() => { 52 | resolve(this.client); 53 | this.emit("SystemLog", { 54 | type: "connection", 55 | text: chalk_1.default.blue.bold("[ + ]") + " Discord Bot Is Connected...", 56 | }); 57 | }) 58 | .catch((err) => { 59 | reject(err); 60 | this.emit("SystemLog", { 61 | type: "error", 62 | text: chalk_1.default.red.bold("[ + ]") + 63 | " Error has been done in Discord Bot Login...\n\n" + 64 | err, 65 | }); 66 | }); 67 | }); 68 | } 69 | getManager() { 70 | return this.manager; 71 | } 72 | } 73 | exports.Bot = Bot; 74 | -------------------------------------------------------------------------------- /src/utils/modules/events.js: -------------------------------------------------------------------------------- 1 | "use strict"; 2 | var __importDefault = (this && this.__importDefault) || function (mod) { 3 | return (mod && mod.__esModule) ? mod : { "default": mod }; 4 | }; 5 | Object.defineProperty(exports, "__esModule", { value: true }); 6 | const __1 = __importDefault(require("../../../")); 7 | const messageCreate_1 = __importDefault(require("../../events/messageCreate")); 8 | const guildMemberAdd_1 = __importDefault(require("../../events/guildMemberAdd")); 9 | const interactionCreate_1 = __importDefault(require("../../events/interactionCreate")); 10 | const ready_1 = __importDefault(require("../../events/ready")); 11 | const submitModalEvent_1 = __importDefault(require("../../events/submitModalEvent")); 12 | exports.default = (client, manager, thiser, config, db) => { 13 | client 14 | ?.on("raw", (d) => manager?.updateVoiceState(d)) 15 | .on("ready", async () => { 16 | console.log(thiser.commands.size); 17 | let rr = await db.table("rr_system"); 18 | (await rr.all()).forEach((d) => { 19 | let id = d.id.split("rr_").join(""); 20 | client.channels.cache 21 | .filter((c) => c.isText()) 22 | .forEach((c) => { 23 | if (c.isText()) 24 | c.messages 25 | .fetch(id) 26 | .then((m) => { }) 27 | .catch((c) => { }); 28 | }); 29 | }); 30 | manager?.init(client?.user?.id || ""); 31 | (0, ready_1.default)(client, config, db, thiser.commands, thiser); 32 | }) 33 | .on("messageReactionAdd", async (r, u) => { 34 | let rr = await db.table("rr_system"); 35 | let data = await rr.get(`rr_${r.message.id}`); 36 | if (data) { 37 | let role = r.message.guild?.roles.cache.get(data.find((d) => d.emoji == r.emoji.id)?.role || ""); 38 | if (!role) 39 | return; 40 | let member = r.message.guild?.members.cache.get(u.id); 41 | if (member) 42 | member?.roles.add(role); 43 | } 44 | }) 45 | .on("messageReactionRemove", async (r, u) => { 46 | let rr = await db.table("rr_system"); 47 | let data = await rr.get(`rr_${r.message.id}`); 48 | if (data) { 49 | let role = r.message.guild?.roles.cache.get(data.find((d) => d.emoji == r.emoji.id)?.role || ""); 50 | if (!role) 51 | return; 52 | let member = r.message.guild?.members.cache.get(u.id); 53 | if (member) 54 | member?.roles.remove(role); 55 | } 56 | }) 57 | .on("interactionCreate", async (interaction) => (0, interactionCreate_1.default)(interaction, db, thiser.commands)) 58 | .on("messageCreate", async (message) => (0, messageCreate_1.default)(message, db, config, thiser.commands, __1.default)) 59 | .on("guildMemberAdd", async (member) => (0, guildMemberAdd_1.default)(member, db, __1.default)) 60 | .on("modalSubmit", async (modal) => { 61 | if (!client) 62 | return; 63 | (0, submitModalEvent_1.default)(client, modal, db); 64 | }); 65 | }; 66 | -------------------------------------------------------------------------------- /src/utils/modules/respond.js: -------------------------------------------------------------------------------- 1 | "use strict"; 2 | var __importDefault = (this && this.__importDefault) || function (mod) { 3 | return (mod && mod.__esModule) ? mod : { "default": mod }; 4 | }; 5 | Object.defineProperty(exports, "__esModule", { value: true }); 6 | exports.editRespond = exports.respond = void 0; 7 | const chalk_1 = __importDefault(require("chalk")); 8 | const __1 = __importDefault(require("../../../")); 9 | /** 10 | * @returns {Message} 11 | */ 12 | async function respond(base, base2, options, isSlash) { 13 | let dataS = new Promise((resolve, reject) => { 14 | if (isSlash) 15 | base 16 | .followUp(options) 17 | .catch((d) => { 18 | reject(d); 19 | __1.default.bot.emit("SystemLog", { 20 | type: "error", 21 | text: chalk_1.default.red.bold("[ + ]") + 22 | " Error has been done in respond system...\n\n" + 23 | d, 24 | }); 25 | }) 26 | .then((m) => { 27 | resolve(m); 28 | }); 29 | else 30 | base2 31 | .reply(options) 32 | .catch((d) => reject(d)) 33 | .then((m) => { 34 | resolve(m); 35 | }); 36 | }); 37 | let data = dataS; 38 | return data; 39 | } 40 | exports.respond = respond; 41 | async function editRespond(base, base2, options, isSlash, messageId) { 42 | let dataS = new Promise(async (resolve, reject) => { 43 | if (isSlash) 44 | base 45 | .editReply(options) 46 | .catch((d) => { 47 | reject(d); 48 | __1.default.bot.emit("SystemLog", { 49 | type: "error", 50 | text: chalk_1.default.red.bold("[ + ]") + 51 | " Error has been done in respond system...\n\n" + 52 | d, 53 | }); 54 | }) 55 | .then((m) => resolve(m)); 56 | else 57 | (await base2.channel.messages.fetch(messageId)) 58 | .edit(options) 59 | .then((m) => resolve(m)); 60 | }); 61 | let data = dataS; 62 | return data; 63 | } 64 | exports.editRespond = editRespond; 65 | --------------------------------------------------------------------------------