diff --git a/databases/lang/en.json b/databases/lang/en.json index 85998b3..7b41fa5 100644 --- a/databases/lang/en.json +++ b/databases/lang/en.json @@ -60,6 +60,34 @@ "sent": "suggestion sent" } }, + "8ball": { + "name": "8ball", + "info": "Let the 8ball respond", + "params": { + "query": { + "name": "query", + "info": "What to ask the 8ball" + } + }, + "inner": { + "0": "yes", + "1": "no", + "2": "probably", + "3": "maybe", + "4": "never", + "5": "likely", + "6": "very likely", + "7": "unlikely", + "8": "very unlikely", + "9": "ask later", + "10": "sure, why not", + "11": "don't, why", + "12": "good", + "13": "bad", + "14": "**NO**", + "15": "**YES**" + } + }, "coin": { "name": "coin", "info": "Flip a coin", @@ -69,6 +97,20 @@ "tail": "Tail" } }, + "dice": { + "name": "dice", + "info": "Throw a dice", + "params": { + "sides": { + "name": "sides", + "info": "How many sides should the dice have" + } + }, + "inner": { + "rolled1": "Rolled a dice :game_die: with", + "rolled2": "sides, got" + } + }, "eat": { "name": "eat", "info": "Try to eat fsh", @@ -84,6 +126,19 @@ "8": "never gonna eat you" } }, + "gcomplete": { + "name": "gcomplete", + "info": "Let google finish a sentence", + "params": { + "query": { + "name": "query", + "info": "Query to google" + } + }, + "inner": { + "title": "Google complete" + } + }, "meme": { "name": "meme", "info": "Sends random fsh meme", diff --git a/databases/lang/es_es.json b/databases/lang/es_es.json index 70f3b06..8b6cb5b 100644 --- a/databases/lang/es_es.json +++ b/databases/lang/es_es.json @@ -60,6 +60,34 @@ "sent": "sugeriencia enviada" } }, + "8ball": { + "name": "bola8", + "info": "Deja la bola 8 responder", + "params": { + "query": { + "name": "pregunta", + "info": "Que preguntar a la bola 8" + } + }, + "inner": { + "0": "sí", + "1": "no", + "2": "posiblemente", + "3": "tal vez", + "4": "nunca", + "5": "probablemente", + "6": "muy probable", + "7": "poco probable", + "8": "muy poco probable", + "9": "pregunta mas tarde", + "10": "seguro, porque no", + "11": "no, porque", + "12": "bien", + "13": "mal", + "14": "**NO**", + "15": "**SÍ**" + } + }, "coin": { "name": "moneda", "info": "Tira una moneda", @@ -69,6 +97,20 @@ "tail": "Cruz" } }, + "dice": { + "name": "dado", + "info": "Lanzo un dado", + "params": { + "sides": { + "name": "lados", + "info": "Cuantos lados deberia tener el dado" + } + }, + "inner": { + "rolled1": "Tiro un dado :game_die: con", + "rolled2": "lados, consiguio" + } + }, "eat": { "name": "comer", "info": "Intenta comer a fsh", @@ -84,6 +126,19 @@ "8": "never gonna eat you" } }, + "gcomplete": { + "name": "gcompleta", + "info": "Deja que google termine tu frase", + "params": { + "query": { + "name": "frase", + "info": "Frase para google" + } + }, + "inner": { + "title": "Google completa" + } + }, "meme": { "name": "meme", "info": "Envia un meme aleatorio de fsh", diff --git a/neWeb/page/hub.html b/neWeb/page/hub.html deleted file mode 100644 index f7595b4..0000000 --- a/neWeb/page/hub.html +++ /dev/null @@ -1,81 +0,0 @@ - - - - Hub - Fsh bot - > - - - - -

Hub

-

Hello {MEN}!

-

Select what you will be doing

-
-
-
- - -

Music

-
-
-
-
-
-
-
-
-
- - \ No newline at end of file diff --git a/neWeb/page/hub/index.html b/neWeb/page/hub/index.html new file mode 100644 index 0000000..60bd3d1 --- /dev/null +++ b/neWeb/page/hub/index.html @@ -0,0 +1,65 @@ + + + + Hub - Fsh bot + + + + + +

Hub

+

Select what you will be doing

+
+
+ + +

Music

+
+
+
+
+
+
+
+
+ + \ No newline at end of file diff --git a/neWeb/page/hub/music/index.html b/neWeb/page/hub/music/index.html deleted file mode 100644 index 25467c3..0000000 --- a/neWeb/page/hub/music/index.html +++ /dev/null @@ -1 +0,0 @@ -music \ No newline at end of file diff --git a/newFsh/commands/economy/give.js b/newFsh/commands/economy/give.js index 207fe9c..e1b1ea6 100644 --- a/newFsh/commands/economy/give.js +++ b/newFsh/commands/economy/give.js @@ -4,8 +4,8 @@ module.exports = { name: ["give", "pay", "gift"], params: ["member", true, "amount", true], info: "Give someone fsh", - category: "economy", + async execute(message, arguments2, fsh) { let user = String(arguments2[0]).replace(/<@/g, "").replace(/>/g, ""); if (!typeof Number(user) == "Number") { @@ -25,11 +25,11 @@ module.exports = { message.channel.send("amount can't be negative"); return; } - // Could just Math.floor()... - // still user would be like: why didn't decimal part get sent - // ok - // wait am i dumb or did i not understand - // i was saying both ways + // Could just Math.floor()... + // still user would be like: why didn't decimal part get sent + // ok + // wait am i dumb or did i not understand + // i was saying both ways if (Number(arguments2[1]) != Math.floor(Number(arguments2[1]))) { message.channel.send("amount can't have decimals"); return; @@ -69,11 +69,10 @@ module.exports = { }) .setThumbnail(user.displayAvatarURL({ format: "png" })) .setColor("#888888") - .setDescription( - `${message.member} gave <@${user.id}> ${arguments2[1]} fsh` - ); + .setDescription(`${message.member} gave <@${user.id}> ${arguments2[1]} fsh`); + message.channel.send({ - embeds: [embed], + embeds: [embed] }); - }, -}; + } +}; \ No newline at end of file diff --git a/newFsh/commands/fun/8ball.js b/newFsh/commands/fun/8ball.js index be41384..5adb7fb 100644 --- a/newFsh/commands/fun/8ball.js +++ b/newFsh/commands/fun/8ball.js @@ -2,14 +2,17 @@ const Discord = require("discord.js"); module.exports = { name: "8ball", - params: ['query', false], - info: "Let the 8ball respond", + slash: true, + params: [{ + name: 'query', + type: 'string', + max: 200, + required: false + }], category: "fun", - async execute(message, arguments2, fsh) { - let data = await fetch('https://api.fsh.plus/8ball'); - data = await data.json(); - - message.reply(`:8ball: ${data.response}`) + async execute(interaction, arguments, fsh) { + let inner = fsh.getInnerLocale(interaction); + interaction.reply(`:8ball: ${inner[Math.floor(Math.random() * 16)]}`) } }; \ No newline at end of file diff --git a/newFsh/commands/fun/dice.js b/newFsh/commands/fun/dice.js index 79926f5..c2660f7 100644 --- a/newFsh/commands/fun/dice.js +++ b/newFsh/commands/fun/dice.js @@ -1,18 +1,22 @@ const Discord = require("discord.js"); module.exports = { - name: ['dice', 'die'], - params: ['sides', false], - info: "Throw a dice", + name: "dice", + slash: true, + params: [{ + name: 'sides', + type: 'number', + min: 1, + max: 420000, + required: false + }], category: "fun", - async execute(message, arguments2, fsh) { - let sides = 6 - if (String(Number(arguments2[0])) != "NaN") { - sides = Math.max(Number(arguments2[0]), 1) - } + async execute(interaction, arguments, fsh) { + let inner = fsh.getInnerLocale(interaction); + let sides = Number(arguments['sides']) || 6; let rs = Math.floor(Math.random() * sides + 1); - message.reply(`Rolled a dice :game_die: with ${sides} sides, got ${rs}`) + interaction.reply(`${inner.rolled1} ${sides} ${inner.rolled2} ${rs}`) } }; \ No newline at end of file diff --git a/newFsh/commands/fun/gcomplete.js b/newFsh/commands/fun/gcomplete.js index 1daadd7..59dbcc0 100644 --- a/newFsh/commands/fun/gcomplete.js +++ b/newFsh/commands/fun/gcomplete.js @@ -2,32 +2,34 @@ const Discord = require("discord.js"); module.exports = { name: "gcomplete", - params: ["query", true], - info: "Let google finish a sentence", + slash: true, + params: [{ + name: 'query', + type: 'string', + min: 1, + max: 100, + required: true + }], category: "fun", - - async execute(message, arguments2, fsh) { - if (arguments2.length < 1) { - message.reply("Include a query"); - return; - } - - let data = await fetch(`https://suggestqueries.google.com/complete/search?client=firefox&q=${arguments2.join(" ")}`); + + async execute(interaction, arguments, fsh) { + let inner = fsh.getInnerLocale(interaction); + let data = await fetch(`https://suggestqueries.google.com/complete/search?client=firefox&q=${arguments['query']}`); data = await data.json(); var embed = new Discord.EmbedBuilder() - .setTitle(`${fsh.emojis.google} Google complete "${arguments2.join(" ")}"`) - .setDescription(data[1].join("\n")) + .setTitle(`${fsh.emojis.google} ${inner.title} "${arguments['query']}"`) + .setDescription('1. '+data[1].join("\n2. ")) .setTimestamp() .setFooter({ text: `V${fsh.version}` }) .setAuthor({ - name: message.author.username, - iconURL: message.author.displayAvatarURL({ format: "png" }), + name: interaction.user.username, + iconURL: interaction.user.displayAvatarURL({ format: "png" }), }) .setColor("#888888"); - message.channel.send({ + interaction.reply({ embeds: [embed] }); } -}; +}; \ No newline at end of file diff --git a/newFsh/commands/fun/lemon.js b/newFsh/commands/fun/lemon.js index 8db3de3..23c555f 100644 --- a/newFsh/commands/fun/lemon.js +++ b/newFsh/commands/fun/lemon.js @@ -5,48 +5,24 @@ module.exports = { params: ["user", true], info: "Lemon a user", category: "fun", - async execute(message, arguments2, fsh) { + + async execute(message, arguments, fsh) { if (message.mentions.users != null && message.mentions.users.size > 0) { - if (fsh.cooldown.has(String(String(message.author.id) + "-lemon"))) { - if ( - Math.floor(new Date().getTime() / 1000) < - fsh.cooldown.get(String(String(message.author.id) + "-lemon")) + 3600 - ) { - message.channel.send({ - content: String( - String("you will be able to lemon again ").replaceAll( - "%r%", - String( - String( - fsh.cooldown.get( - String(String(message.author.id) + "-lemon") - ) + 3600 - ) - ) - ) - ), - }); + if (fsh.cooldown.has(message.author.id + "-lemon")) { + if (Math.floor(new Date().getTime() / 1000) < fsh.cooldown.get(message.author.id + "-lemon") + 3600) { + message.channel.send(`you will be able to lemon again `); return; } } - message.mentions.members.first().send({ - content: String( - fs - .readFileSync("text/lemon.txt", "utf8") - .replaceAll("{a}", String(message.author.username)) - ), - }); - message.channel.send({ - content: String("lemon sent"), - }); - fsh.cooldown.set( - String(String(message.author.id) + "-lemon"), - Math.floor(new Date().getTime() / 1000) + message.mentions.members.first().send( + fs + .readFileSync("text/lemon.txt", "utf8") + .replaceAll("{a}", message.author.username) ); + message.reply("lemon sent"); + fsh.cooldown.set(message.author.id + "-lemon", Math.floor(new Date().getTime() / 1000)); } else { - message.channel.send({ - content: String("you need to mention someone"), - }); + message.reply("you need to mention someone"); } - }, -}; + } +}; \ No newline at end of file diff --git a/newFsh/commands/fun/no-u.js b/newFsh/commands/fun/no-u.js index 3b557e6..f98a4a1 100644 --- a/newFsh/commands/fun/no-u.js +++ b/newFsh/commands/fun/no-u.js @@ -5,16 +5,17 @@ module.exports = { params: ['user', true], info: "No u a user", category: "fun", - async execute(message, arguments2, fsh) { - let user = String(arguments2[0]).replace(/<@/g, "").replace(/>/g, ""); - if (!typeof Number(user) == "Number") { - message.channel.send("mention someone"); + + async execute(message, arguments, fsh) { + let user = (arguments[0]??'').replace(/<@/g, "").replace(/>/g, ""); + if (Number.isNaN(Number(user))) { + message.reply("mention someone"); return; } message.delete() - if (["816691475844694047","1068572316986003466","712342308565024818"].includes(user)) { + if (fsh.devIds.includes(user)) { user = message.member.id } message.channel.send(`<@${user}> no u\n||This action was performed by a user||`) } -}; +}; \ No newline at end of file diff --git a/newFsh/commands/fun/robloxu.js b/newFsh/commands/fun/robloxu.js index 327c18b..9dfec53 100644 --- a/newFsh/commands/fun/robloxu.js +++ b/newFsh/commands/fun/robloxu.js @@ -36,10 +36,10 @@ module.exports = { let users = await getof(`https://users.roblox.com/v1/users/${data.id}`); let pfp = await getof(`https://thumbnails.roblox.com/v1/users/avatar?userIds=${data.id}&size=720x720&format=Png&isCircular=false`); - pfp = pfp.data[0].imageUrl; - + pfp = pfp.data[0].imageUrl; + let games = await getof(`https://games.roblox.com/v2/users/${data.id}/games?accessFilter=2&limit=10&sortOrder=Asc`); - games = games.data + games = games.data; let friends = await getof(`https://friends.roblox.com/v1/users/${data.id}/friends/count`); friends = friends.count; diff --git a/newFsh/commands/util/activitys.js b/newFsh/commands/util/activitys.js index 0f6c51f..8428069 100644 --- a/newFsh/commands/util/activitys.js +++ b/newFsh/commands/util/activitys.js @@ -33,16 +33,17 @@ module.exports = { params: ["userid/ping", false], info: "Get user activities", category: "utility", + async execute(message, arguments2, fsh) { //if (!fsh.devIds.includes(message.author.id)) return; /* - Playing 0 - Streaming 1 - Listening 2 - Watching 3 - Custom 4 - Competing 5 - */ + Playing 0 + Streaming 1 + Listening 2 + Watching 3 + Custom 4 + Competing 5 + */ let embeds = []; @@ -153,42 +154,42 @@ module.exports = { embeds.push(emb); /*const exampleEmbed = new EmbedBuilder() - .setColor(0x0099FF) - .setTitle('Some title') - .setURL('https://discord.js.org/') - .setAuthor({ - name: 'Some name', - iconURL: 'https://i.imgur.com/AfFp7pu.png', - url: 'https://discord.js.org' - }) - .setDescription('Some description here') - .setThumbnail('https://i.imgur.com/AfFp7pu.png') - .addFields({ - name: 'Regular field title', - value: 'Some value here' - }, { - name: '\u200B', - value: '\u200B' - }, { - name: 'Inline field title', - value: 'Some value here', - inline: true - }, { - name: 'Inline field title', - value: 'Some value here', - inline: true - }, ) - .addFields({ - name: 'Inline field title', - value: 'Some value here', - inline: true - }) - .setImage('https://i.imgur.com/AfFp7pu.png') - .setTimestamp() - .setFooter({ - text: 'Some footer text here', - iconURL: 'https://i.imgur.com/AfFp7pu.png' - });*/ + .setColor(0x0099FF) + .setTitle('Some title') + .setURL('https://discord.js.org/') + .setAuthor({ + name: 'Some name', + iconURL: 'https://i.imgur.com/AfFp7pu.png', + url: 'https://discord.js.org' + }) + .setDescription('Some description here') + .setThumbnail('https://i.imgur.com/AfFp7pu.png') + .addFields({ + name: 'Regular field title', + value: 'Some value here' + }, { + name: '\u200B', + value: '\u200B' + }, { + name: 'Inline field title', + value: 'Some value here', + inline: true + }, { + name: 'Inline field title', + value: 'Some value here', + inline: true + }, ) + .addFields({ + name: 'Inline field title', + value: 'Some value here', + inline: true + }) + .setImage('https://i.imgur.com/AfFp7pu.png') + .setTimestamp() + .setFooter({ + text: 'Some footer text here', + iconURL: 'https://i.imgur.com/AfFp7pu.png' + });*/ }); if (!embeds.length) { diff --git a/newFsh/commands/util/ask.js b/newFsh/commands/util/ask.js index 3f39898..24d1070 100644 --- a/newFsh/commands/util/ask.js +++ b/newFsh/commands/util/ask.js @@ -7,7 +7,7 @@ module.exports = { category: "hidden", async execute(message, arguments2, fsh) { - message.channel.sendTyping() + message.channel.sendTyping(); /*let data = await fetch("https://reverse.mubi.tech/v1/chat/completions", { "headers": { "content-type": "application/json", @@ -15,18 +15,22 @@ module.exports = { "body": `{"model":"llama-2-7b","messages":[{"role":"user","content":"${encodeURIComponent(arguments2.join("%20"))}"}]}`, "method": "POST" });*/ - let data = await fetch(`https://api.fsh.plus/generate?text=user -${encodeURIComponent(arguments2.join("%20"))} -model`); - if (!String(data.status).startsWith("2")) { + let data = await fetch(`https://api.fsh.plus/generate?text=user%0A${encodeURIComponent(arguments2.join("%20"))}%0Amodel`); + if ((!String(data.status).startsWith("2")) || data.err) { message.reply("ai not available") return; } data = await data.json(); - data = await fetch(`https://api.fsh.plus/generate?text=`+encodeURIComponent(data.generated_text)); + message.channel.sendTyping(); + let data2 = await fetch(`https://api.fsh.plus/generate?text=`+encodeURIComponent(data.generated_text)); + if ((!String(data.status).startsWith("2")) || data.err) { + message.reply(`${fsh.emojis.ai} Response: +${data.generated_text.split('model')[1]}`) + return; + } data = await data.json(); - + message.reply(`${fsh.emojis.ai} Response: -${data.generated_text.split('model')[1]}`) +${data2.generated_text.split('model')[1]}`) } }; \ No newline at end of file diff --git a/newFsh/commands/util/server.js b/newFsh/commands/util/server.js index 734be87..3ae9bff 100644 --- a/newFsh/commands/util/server.js +++ b/newFsh/commands/util/server.js @@ -1,53 +1,8 @@ const Discord = require("discord.js"); +const guild_features = require("../../../text/guild_features.js"); -function feat(f) { - let n = { - GUILD_ONBOARDING: 'Onboarding', - PREVIEW_ENABLED: 'Server preview', - THREADS_ENABLED: 'Threads', - COMMUNITY: 'Community server', - SOUNDBOARD: 'Soundboard', - NEWS: 'Announcement channels', - AUTOMOD_TRIGGER_USER_PROFILE: 'User profile automod', - GUILD_SERVER_GUIDE: 'Server guide', - GUILD_ONBOARDING_EVER_ENABLED: 'Onboarding tried', - NEW_THREAD_PERMISSIONS: 'Thread permisions v2', - AUTO_MODERATION: 'Automod', - GUILD_ONBOARDING_HAS_PROMPTS: 'Onboarding prompts', - MEMBER_VERIFICATION_GATE_ENABLED: 'Verification gate', - TEXT_IN_VOICE_ENABLED: 'Text in voice', - WELCOME_SCREEN_ENABLED: 'Welcome screen', - CHANNEL_ICON_EMOJIS_GENERATED: 'Auto channel icon', - ANIMATED_BANNER: 'Animated banner', - ANIMATED_ICON: 'Animated icon', - APPLICATION_COMMAND_PERMISSIONS_V2: 'Bot command permission v2', - BANNER: 'Banner', - CREATOR_MONETIZABLE_PROVISIONAL: 'Server monitization', - CREATOR_STORE_PAGE: 'Server store', - DEVELOPER_SUPPORT_SERVER: 'Bot support server', - DISCOVERABLE: 'Discoverable', - FEATURABLE: 'Featurable', - HAS_DIRECTORY_ENTRY: 'Channel directory', - HUB: 'Student hub', - INVITE_SPLASH: 'Invite splash', - INVITES_DISABLED: 'Disabled invites', - LINKED_TO_HUB: 'Student hub linked', - MEMBER_VERIFICATION_GATE_ENABLED: 'Member verification gate', - MONETIZATION_ENABLED: 'Monitization', - MORE_STICKERS: 'More stickers', - PARTNERED: 'Partnered', - PRIVATE_THREADS: 'Private threads', - RAID_ALERTS_DISABLED: 'Raid alerts off', - RELAY_ENABLED: 'Relay', - ROLE_ICONS: 'Role icons', - ROLE_SUBSCRIPTIONS_AVAILABLE_FOR_PURCHASE: 'Role subscriptions for purchased', - ROLE_SUBSCRIPTIONS_ENABLED: 'Role subscriptions', - TICKETED_EVENTS_ENABLED: 'Ticketed events', - VIP_REGIONS: 'Vip regions', - VANITY_URL: 'Vanity url', - VERIFIED: 'Verified' - }; - return (n[f] ? n[f] : 'U:'+f) +function feat(feature) { + return (guild_features[feature] ? guild_features[feature] : `U:${feature}`) } module.exports = { diff --git a/newFsh/server.js b/newFsh/server.js index bc5bf5c..1b75996 100644 --- a/newFsh/server.js +++ b/newFsh/server.js @@ -1,5 +1,5 @@ /* -- New Server -- */ -const PORT = 3000; +const PORT = 10002; const express = require("express"); const bodyParser = require("body-parser"); @@ -9,50 +9,6 @@ const crypto = require("crypto") const { useQueue, useTimeline } = require("discord-player"); -function listsGetRandomItem(list, remove) { - var x = Math.floor(Math.random() * list.length); - if (remove) { - return list.splice(x, 1)[0]; - } else { - return list[x]; - } -} - -function listsRepeat(value, n) { - var array = []; - for (var i = 0; i < n; i++) { - array[i] = value; - } - return array; -} - -function mathRandomInt(a, b) { - if (a > b) { - var c = a; - a = b; - b = c; - } - return Math.floor(Math.random() * (b - a + 1) + a); -} - -function listsGetSortCompare(type, direction) { - var compareFuncs = { - NUMERIC: function (a, b) { - return Number(a) - Number(b); - }, - TEXT: function (a, b) { - return a.toString() > b.toString() ? 1 : -1; - }, - IGNORE_CASE: function (a, b) { - return a.toString().toLowerCase() > b.toString().toLowerCase() ? 1 : -1; - }, - }; - var compare = compareFuncs[type]; - return function (a, b) { - return compare(a, b) * direction; - }; -} - function makeid(length) { var result = ''; var characters = 'ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789@#'; @@ -173,27 +129,27 @@ module.exports = { }); /* Music */ - app.get("/music-panel", async function(req, res) { - if (!req.query['id']) { + app.get("/hub/music", async function(req, res) { + if (!req.query['guild_id']) { res.send('provide id'); return; } - let queue = useQueue(req.query['id']); + let queue = useQueue(req.query['guild_id']); if (!queue) { res.send('unmeow'); return; } - const { timestamp, track, volume, paused } = useTimeline(req.query['id']); + const { timestamp, track, volume, paused } = useTimeline(req.query['guild_id']); let now = Date.now(); res.send(` Music panel - Fsh bot - + - + @@ -214,7 +170,7 @@ module.exports = { margin: 20px auto; padding: 15px; border-radius: 1rem; - background: linear-gradient(in oklch, rgba(0,0,0,0) 50%, rgba(0,0,0,0.75) 100%), url(${track.thumbnail}), var(--bg-2); + background: linear-gradient(in oklch, rgba(0,0,0,0) 50%, rgba(0,0,0,0.75) 100%), url(${track.thumbnail.replace('https://i.ytimg.com','/ytimg')}), var(--bg-2); background-size: 100%; background-repeat: no-repeat; } @@ -326,7 +282,6 @@ module.exports = { ["index.html", "/"], ["api.html", "/api"], ["invite.html", "/invite"], - ["hub.html", "/hub"], ["robots.txt"] ]; @@ -367,10 +322,7 @@ module.exports = { fsh.client.channels.cache .get(message.channel) .send(message.message); - socket.emit( - "chat", - `Server: Sent (${message.message}) to channel (${message.channel})` - ); + socket.emit("chat", `Server: Sent (${message.message}) to channel (${message.channel})`); } catch (err) { socket.emit("chat", `Server: ERR\n\n ${err}`); } diff --git a/package-lock.json b/package-lock.json index 5a97e74..655ef1f 100644 --- a/package-lock.json +++ b/package-lock.json @@ -15,9 +15,9 @@ "discord-gamecord": "^4.4.1", "discord-player": "^6.7.1", "discord-player-youtubei": "^1.3.1", - "discord.js": "^14.15.3", + "discord.js": "^14.17.2", "easy-json-database": "^1.5.0", - "express": "^4.21.1", + "express": "^4.21.2", "ffmpeg-static": "^5.2.0", "fshdb": "^1.0.0-beta.2", "math-expression-evaluator": "^2.0.4", @@ -89,32 +89,26 @@ } }, "node_modules/@discordjs/builders": { - "version": "1.9.0", - "resolved": "https://registry.npmjs.org/@discordjs/builders/-/builders-1.9.0.tgz", - "integrity": "sha512-0zx8DePNVvQibh5ly5kCEei5wtPBIUbSoE9n+91Rlladz4tgtFbJ36PZMxxZrTEOQ7AHMZ/b0crT/0fCy6FTKg==", + "version": "1.10.0", + "resolved": "https://registry.npmjs.org/@discordjs/builders/-/builders-1.10.0.tgz", + "integrity": "sha512-ikVZsZP+3shmVJ5S1oM+7SveUCK3L9fTyfA8aJ7uD9cNQlTqF+3Irbk2Y22KXTb3C3RNUahRkSInClJMkHrINg==", "license": "Apache-2.0", "dependencies": { - "@discordjs/formatters": "^0.5.0", + "@discordjs/formatters": "^0.6.0", "@discordjs/util": "^1.1.1", "@sapphire/shapeshift": "^4.0.0", - "discord-api-types": "0.37.97", + "discord-api-types": "^0.37.114", "fast-deep-equal": "^3.1.3", "ts-mixer": "^6.0.4", "tslib": "^2.6.3" }, "engines": { - "node": ">=18" + "node": ">=16.11.0" }, "funding": { "url": "https://github.com/discordjs/discord.js?sponsor" } }, - "node_modules/@discordjs/builders/node_modules/discord-api-types": { - "version": "0.37.97", - "resolved": "https://registry.npmjs.org/discord-api-types/-/discord-api-types-0.37.97.tgz", - "integrity": "sha512-No1BXPcVkyVD4ZVmbNgDKaBoqgeQ+FJpzZ8wqHkfmBnTZig1FcH3iPPersiK1TUIAzgClh2IvOuVUYfcWLQAOA==", - "license": "MIT" - }, "node_modules/@discordjs/collection": { "version": "1.5.3", "resolved": "https://registry.npmjs.org/@discordjs/collection/-/collection-1.5.3.tgz", @@ -124,26 +118,20 @@ } }, "node_modules/@discordjs/formatters": { - "version": "0.5.0", - "resolved": "https://registry.npmjs.org/@discordjs/formatters/-/formatters-0.5.0.tgz", - "integrity": "sha512-98b3i+Y19RFq1Xke4NkVY46x8KjJQjldHUuEbCqMvp1F5Iq9HgnGpu91jOi/Ufazhty32eRsKnnzS8n4c+L93g==", + "version": "0.6.0", + "resolved": "https://registry.npmjs.org/@discordjs/formatters/-/formatters-0.6.0.tgz", + "integrity": "sha512-YIruKw4UILt/ivO4uISmrGq2GdMY6EkoTtD0oS0GvkJFRZbTSdPhzYiUILbJ/QslsvC9H9nTgGgnarnIl4jMfw==", "license": "Apache-2.0", "dependencies": { - "discord-api-types": "0.37.97" + "discord-api-types": "^0.37.114" }, "engines": { - "node": ">=18" + "node": ">=16.11.0" }, "funding": { "url": "https://github.com/discordjs/discord.js?sponsor" } }, - "node_modules/@discordjs/formatters/node_modules/discord-api-types": { - "version": "0.37.97", - "resolved": "https://registry.npmjs.org/discord-api-types/-/discord-api-types-0.37.97.tgz", - "integrity": "sha512-No1BXPcVkyVD4ZVmbNgDKaBoqgeQ+FJpzZ8wqHkfmBnTZig1FcH3iPPersiK1TUIAzgClh2IvOuVUYfcWLQAOA==", - "license": "MIT" - }, "node_modules/@discordjs/node-pre-gyp": { "version": "0.4.5", "resolved": "https://registry.npmjs.org/@discordjs/node-pre-gyp/-/node-pre-gyp-0.4.5.tgz", @@ -200,9 +188,9 @@ } }, "node_modules/@discordjs/rest": { - "version": "2.4.0", - "resolved": "https://registry.npmjs.org/@discordjs/rest/-/rest-2.4.0.tgz", - "integrity": "sha512-Xb2irDqNcq+O8F0/k/NaDp7+t091p+acb51iA4bCKfIn+WFWd6HrNvcsSbMMxIR9NjcMZS6NReTKygqiQN+ntw==", + "version": "2.4.2", + "resolved": "https://registry.npmjs.org/@discordjs/rest/-/rest-2.4.2.tgz", + "integrity": "sha512-9bOvXYLQd5IBg/kKGuEFq3cstVxAMJ6wMxO2U3wjrgO+lHv8oNCT+BBRpuzVQh7BoXKvk/gpajceGvQUiRoJ8g==", "license": "Apache-2.0", "dependencies": { "@discordjs/collection": "^2.1.1", @@ -210,7 +198,7 @@ "@sapphire/async-queue": "^1.5.3", "@sapphire/snowflake": "^3.5.3", "@vladfrangu/async_event_emitter": "^2.4.6", - "discord-api-types": "0.37.97", + "discord-api-types": "^0.37.114", "magic-bytes.js": "^1.10.0", "tslib": "^2.6.3", "undici": "6.19.8" @@ -234,12 +222,6 @@ "url": "https://github.com/discordjs/discord.js?sponsor" } }, - "node_modules/@discordjs/rest/node_modules/discord-api-types": { - "version": "0.37.97", - "resolved": "https://registry.npmjs.org/discord-api-types/-/discord-api-types-0.37.97.tgz", - "integrity": "sha512-No1BXPcVkyVD4ZVmbNgDKaBoqgeQ+FJpzZ8wqHkfmBnTZig1FcH3iPPersiK1TUIAzgClh2IvOuVUYfcWLQAOA==", - "license": "MIT" - }, "node_modules/@discordjs/util": { "version": "1.1.1", "resolved": "https://registry.npmjs.org/@discordjs/util/-/util-1.1.1.tgz", @@ -253,20 +235,20 @@ } }, "node_modules/@discordjs/ws": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/@discordjs/ws/-/ws-1.1.1.tgz", - "integrity": "sha512-PZ+vLpxGCRtmr2RMkqh8Zp+BenUaJqlS6xhgWKEZcgC/vfHLEzpHtKkB0sl3nZWpwtcKk6YWy+pU3okL2I97FA==", + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/@discordjs/ws/-/ws-1.2.0.tgz", + "integrity": "sha512-QH5CAFe3wHDiedbO+EI3OOiyipwWd+Q6BdoFZUw/Wf2fw5Cv2fgU/9UEtJRmJa9RecI+TAhdGPadMaEIur5yJg==", "license": "Apache-2.0", "dependencies": { "@discordjs/collection": "^2.1.0", - "@discordjs/rest": "^2.3.0", + "@discordjs/rest": "^2.4.1", "@discordjs/util": "^1.1.0", "@sapphire/async-queue": "^1.5.2", "@types/ws": "^8.5.10", "@vladfrangu/async_event_emitter": "^2.2.4", - "discord-api-types": "0.37.83", + "discord-api-types": "^0.37.114", "tslib": "^2.6.2", - "ws": "^8.16.0" + "ws": "^8.17.0" }, "engines": { "node": ">=16.11.0" @@ -276,9 +258,9 @@ } }, "node_modules/@discordjs/ws/node_modules/@discordjs/collection": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/@discordjs/collection/-/collection-2.1.0.tgz", - "integrity": "sha512-mLcTACtXUuVgutoznkh6hS3UFqYirDYAg5Dc1m8xn6OvPjetnUlf/xjtqnnc47OwWdaoCQnHmHh9KofhD6uRqw==", + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/@discordjs/collection/-/collection-2.1.1.tgz", + "integrity": "sha512-LiSusze9Tc7qF03sLCujF5iZp7K+vRNEDBZ86FT9aQAv3vxMLihUvKvpsCWiQ2DJq1tVckopKm1rxomgNUc9hg==", "license": "Apache-2.0", "engines": { "node": ">=18" @@ -297,9 +279,9 @@ } }, "node_modules/@sapphire/async-queue": { - "version": "1.5.3", - "resolved": "https://registry.npmjs.org/@sapphire/async-queue/-/async-queue-1.5.3.tgz", - "integrity": "sha512-x7zadcfJGxFka1Q3f8gCts1F0xMwCKbZweM85xECGI0hBTeIZJGGCrHgLggihBoprlQ/hBmDR5LKfIPqnmHM3w==", + "version": "1.5.5", + "resolved": "https://registry.npmjs.org/@sapphire/async-queue/-/async-queue-1.5.5.tgz", + "integrity": "sha512-cvGzxbba6sav2zZkH8GPf2oGk9yYoD5qrNWdu9fRehifgnFZJMV+nuy2nON2roRO4yQQ+v7MK/Pktl/HgfsUXg==", "license": "MIT", "engines": { "node": ">=v14.0.0", @@ -909,9 +891,10 @@ "integrity": "sha512-qiSlmBq9+BCdCA/L46dw8Uy93mloxsPSbwnm5yrKn2vMPiy8KyAskTF6zuV/j5BMsmOGZDPs7KjU+mjb670kfA==" }, "node_modules/discord-api-types": { - "version": "0.37.83", - "resolved": "https://registry.npmjs.org/discord-api-types/-/discord-api-types-0.37.83.tgz", - "integrity": "sha512-urGGYeWtWNYMKnYlZnOnDHm8fVRffQs3U0SpE8RHeiuLKb/u92APS8HoQnPTFbnXmY1vVnXjXO4dOxcAn3J+DA==" + "version": "0.37.115", + "resolved": "https://registry.npmjs.org/discord-api-types/-/discord-api-types-0.37.115.tgz", + "integrity": "sha512-ivPnJotSMrXW8HLjFu+0iCVs8zP6KSliMelhr7HgcB2ki1QzpORkb26m71l1pzSnnGfm7gb5n/VtRTtpw8kXFA==", + "license": "MIT" }, "node_modules/discord-gamecord": { "version": "4.4.1", @@ -975,19 +958,19 @@ } }, "node_modules/discord.js": { - "version": "14.16.0", - "resolved": "https://registry.npmjs.org/discord.js/-/discord.js-14.16.0.tgz", - "integrity": "sha512-FcJtUkdfW1GCtq+jBkB6yTS6eu3kV9W1XE+t6+OGqjAj3o6P88kZMpZgrP+yBn0KeCxA0hvU2dFzQrcA4uhRQg==", + "version": "14.17.2", + "resolved": "https://registry.npmjs.org/discord.js/-/discord.js-14.17.2.tgz", + "integrity": "sha512-mrH6ziLVtNtId4bV4bsaUt5jE6NUaiHMPqO5VsSw1VVhFnjFi9duD8ctlo90/6cUH+8uyKBkoq9mSJ35SuuZ7Q==", "license": "Apache-2.0", "dependencies": { - "@discordjs/builders": "^1.9.0", + "@discordjs/builders": "^1.10.0", "@discordjs/collection": "1.5.3", - "@discordjs/formatters": "^0.5.0", - "@discordjs/rest": "^2.4.0", + "@discordjs/formatters": "^0.6.0", + "@discordjs/rest": "^2.4.2", "@discordjs/util": "^1.1.1", - "@discordjs/ws": "1.1.1", + "@discordjs/ws": "^1.2.0", "@sapphire/snowflake": "3.5.3", - "discord-api-types": "0.37.97", + "discord-api-types": "^0.37.114", "fast-deep-equal": "3.1.3", "lodash.snakecase": "4.1.1", "tslib": "^2.6.3", @@ -1000,12 +983,6 @@ "url": "https://github.com/discordjs/discord.js?sponsor" } }, - "node_modules/discord.js/node_modules/discord-api-types": { - "version": "0.37.97", - "resolved": "https://registry.npmjs.org/discord-api-types/-/discord-api-types-0.37.97.tgz", - "integrity": "sha512-No1BXPcVkyVD4ZVmbNgDKaBoqgeQ+FJpzZ8wqHkfmBnTZig1FcH3iPPersiK1TUIAzgClh2IvOuVUYfcWLQAOA==", - "license": "MIT" - }, "node_modules/dom-serializer": { "version": "2.0.0", "resolved": "https://registry.npmjs.org/dom-serializer/-/dom-serializer-2.0.0.tgz", @@ -1224,9 +1201,9 @@ } }, "node_modules/express": { - "version": "4.21.1", - "resolved": "https://registry.npmjs.org/express/-/express-4.21.1.tgz", - "integrity": "sha512-YSFlK1Ee0/GC8QaO91tHcDxJiE/X4FbpAyQWkxAvG6AXCuR65YzK8ua6D9hvi/TzUfZMpc+BwuM1IPw8fmQBiQ==", + "version": "4.21.2", + "resolved": "https://registry.npmjs.org/express/-/express-4.21.2.tgz", + "integrity": "sha512-28HqgMZAmih1Czt9ny7qr6ek2qddF4FclbMzwhCREB6OFfH+rXAnuNCwo1/wFvrtbgsQDb4kSbX9de9lFbrXnA==", "license": "MIT", "dependencies": { "accepts": "~1.3.8", @@ -1248,7 +1225,7 @@ "methods": "~1.1.2", "on-finished": "2.4.1", "parseurl": "~1.3.3", - "path-to-regexp": "0.1.10", + "path-to-regexp": "0.1.12", "proxy-addr": "~2.0.7", "qs": "6.13.0", "range-parser": "~1.2.1", @@ -1263,6 +1240,10 @@ }, "engines": { "node": ">= 0.10.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/express" } }, "node_modules/express/node_modules/debug": { @@ -2576,9 +2557,9 @@ } }, "node_modules/path-to-regexp": { - "version": "0.1.10", - "resolved": "https://registry.npmjs.org/path-to-regexp/-/path-to-regexp-0.1.10.tgz", - "integrity": "sha512-7lf7qcQidTku0Gu3YDPc8DJ1q7OOucfa/BSsIwjuh56VU7katFvuM8hULfkwB3Fns/rsVF7PwPKVw1sl5KQS9w==", + "version": "0.1.12", + "resolved": "https://registry.npmjs.org/path-to-regexp/-/path-to-regexp-0.1.12.tgz", + "integrity": "sha512-RA1GjUVMnvYFxuqovrEqZoxxW5NUZqbwKtYz/Tt7nXerk0LbLblQmrsgdeOxV5SFHf0UDggjS/bSeOZwt1pmEQ==", "license": "MIT" }, "node_modules/peek-readable": { @@ -3565,24 +3546,17 @@ } }, "@discordjs/builders": { - "version": "1.9.0", - "resolved": "https://registry.npmjs.org/@discordjs/builders/-/builders-1.9.0.tgz", - "integrity": "sha512-0zx8DePNVvQibh5ly5kCEei5wtPBIUbSoE9n+91Rlladz4tgtFbJ36PZMxxZrTEOQ7AHMZ/b0crT/0fCy6FTKg==", + "version": "1.10.0", + "resolved": "https://registry.npmjs.org/@discordjs/builders/-/builders-1.10.0.tgz", + "integrity": "sha512-ikVZsZP+3shmVJ5S1oM+7SveUCK3L9fTyfA8aJ7uD9cNQlTqF+3Irbk2Y22KXTb3C3RNUahRkSInClJMkHrINg==", "requires": { - "@discordjs/formatters": "^0.5.0", + "@discordjs/formatters": "^0.6.0", "@discordjs/util": "^1.1.1", "@sapphire/shapeshift": "^4.0.0", - "discord-api-types": "0.37.97", + "discord-api-types": "^0.37.114", "fast-deep-equal": "^3.1.3", "ts-mixer": "^6.0.4", "tslib": "^2.6.3" - }, - "dependencies": { - "discord-api-types": { - "version": "0.37.97", - "resolved": "https://registry.npmjs.org/discord-api-types/-/discord-api-types-0.37.97.tgz", - "integrity": "sha512-No1BXPcVkyVD4ZVmbNgDKaBoqgeQ+FJpzZ8wqHkfmBnTZig1FcH3iPPersiK1TUIAzgClh2IvOuVUYfcWLQAOA==" - } } }, "@discordjs/collection": { @@ -3591,18 +3565,11 @@ "integrity": "sha512-SVb428OMd3WO1paV3rm6tSjM4wC+Kecaa1EUGX7vc6/fddvw/6lg90z4QtCqm21zvVe92vMMDt9+DkIvjXImQQ==" }, "@discordjs/formatters": { - "version": "0.5.0", - "resolved": "https://registry.npmjs.org/@discordjs/formatters/-/formatters-0.5.0.tgz", - "integrity": "sha512-98b3i+Y19RFq1Xke4NkVY46x8KjJQjldHUuEbCqMvp1F5Iq9HgnGpu91jOi/Ufazhty32eRsKnnzS8n4c+L93g==", + "version": "0.6.0", + "resolved": "https://registry.npmjs.org/@discordjs/formatters/-/formatters-0.6.0.tgz", + "integrity": "sha512-YIruKw4UILt/ivO4uISmrGq2GdMY6EkoTtD0oS0GvkJFRZbTSdPhzYiUILbJ/QslsvC9H9nTgGgnarnIl4jMfw==", "requires": { - "discord-api-types": "0.37.97" - }, - "dependencies": { - "discord-api-types": { - "version": "0.37.97", - "resolved": "https://registry.npmjs.org/discord-api-types/-/discord-api-types-0.37.97.tgz", - "integrity": "sha512-No1BXPcVkyVD4ZVmbNgDKaBoqgeQ+FJpzZ8wqHkfmBnTZig1FcH3iPPersiK1TUIAzgClh2IvOuVUYfcWLQAOA==" - } + "discord-api-types": "^0.37.114" } }, "@discordjs/node-pre-gyp": { @@ -3647,16 +3614,16 @@ } }, "@discordjs/rest": { - "version": "2.4.0", - "resolved": "https://registry.npmjs.org/@discordjs/rest/-/rest-2.4.0.tgz", - "integrity": "sha512-Xb2irDqNcq+O8F0/k/NaDp7+t091p+acb51iA4bCKfIn+WFWd6HrNvcsSbMMxIR9NjcMZS6NReTKygqiQN+ntw==", + "version": "2.4.2", + "resolved": "https://registry.npmjs.org/@discordjs/rest/-/rest-2.4.2.tgz", + "integrity": "sha512-9bOvXYLQd5IBg/kKGuEFq3cstVxAMJ6wMxO2U3wjrgO+lHv8oNCT+BBRpuzVQh7BoXKvk/gpajceGvQUiRoJ8g==", "requires": { "@discordjs/collection": "^2.1.1", "@discordjs/util": "^1.1.1", "@sapphire/async-queue": "^1.5.3", "@sapphire/snowflake": "^3.5.3", "@vladfrangu/async_event_emitter": "^2.4.6", - "discord-api-types": "0.37.97", + "discord-api-types": "^0.37.114", "magic-bytes.js": "^1.10.0", "tslib": "^2.6.3", "undici": "6.19.8" @@ -3666,11 +3633,6 @@ "version": "2.1.1", "resolved": "https://registry.npmjs.org/@discordjs/collection/-/collection-2.1.1.tgz", "integrity": "sha512-LiSusze9Tc7qF03sLCujF5iZp7K+vRNEDBZ86FT9aQAv3vxMLihUvKvpsCWiQ2DJq1tVckopKm1rxomgNUc9hg==" - }, - "discord-api-types": { - "version": "0.37.97", - "resolved": "https://registry.npmjs.org/discord-api-types/-/discord-api-types-0.37.97.tgz", - "integrity": "sha512-No1BXPcVkyVD4ZVmbNgDKaBoqgeQ+FJpzZ8wqHkfmBnTZig1FcH3iPPersiK1TUIAzgClh2IvOuVUYfcWLQAOA==" } } }, @@ -3680,25 +3642,25 @@ "integrity": "sha512-eddz6UnOBEB1oITPinyrB2Pttej49M9FZQY8NxgEvc3tq6ZICZ19m70RsmzRdDHk80O9NoYN/25AqJl8vPVf/g==" }, "@discordjs/ws": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/@discordjs/ws/-/ws-1.1.1.tgz", - "integrity": "sha512-PZ+vLpxGCRtmr2RMkqh8Zp+BenUaJqlS6xhgWKEZcgC/vfHLEzpHtKkB0sl3nZWpwtcKk6YWy+pU3okL2I97FA==", + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/@discordjs/ws/-/ws-1.2.0.tgz", + "integrity": "sha512-QH5CAFe3wHDiedbO+EI3OOiyipwWd+Q6BdoFZUw/Wf2fw5Cv2fgU/9UEtJRmJa9RecI+TAhdGPadMaEIur5yJg==", "requires": { "@discordjs/collection": "^2.1.0", - "@discordjs/rest": "^2.3.0", + "@discordjs/rest": "^2.4.1", "@discordjs/util": "^1.1.0", "@sapphire/async-queue": "^1.5.2", "@types/ws": "^8.5.10", "@vladfrangu/async_event_emitter": "^2.2.4", - "discord-api-types": "0.37.83", + "discord-api-types": "^0.37.114", "tslib": "^2.6.2", - "ws": "^8.16.0" + "ws": "^8.17.0" }, "dependencies": { "@discordjs/collection": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/@discordjs/collection/-/collection-2.1.0.tgz", - "integrity": "sha512-mLcTACtXUuVgutoznkh6hS3UFqYirDYAg5Dc1m8xn6OvPjetnUlf/xjtqnnc47OwWdaoCQnHmHh9KofhD6uRqw==" + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/@discordjs/collection/-/collection-2.1.1.tgz", + "integrity": "sha512-LiSusze9Tc7qF03sLCujF5iZp7K+vRNEDBZ86FT9aQAv3vxMLihUvKvpsCWiQ2DJq1tVckopKm1rxomgNUc9hg==" } } }, @@ -3708,9 +3670,9 @@ "integrity": "sha512-vBZP4NlzfOlerQTnba4aqZoMhE/a9HY7HRqoOPaETQcSQuWEIyZMHGfVu6w9wGtGK5fED5qRs2DteVCjOH60sA==" }, "@sapphire/async-queue": { - "version": "1.5.3", - "resolved": "https://registry.npmjs.org/@sapphire/async-queue/-/async-queue-1.5.3.tgz", - "integrity": "sha512-x7zadcfJGxFka1Q3f8gCts1F0xMwCKbZweM85xECGI0hBTeIZJGGCrHgLggihBoprlQ/hBmDR5LKfIPqnmHM3w==" + "version": "1.5.5", + "resolved": "https://registry.npmjs.org/@sapphire/async-queue/-/async-queue-1.5.5.tgz", + "integrity": "sha512-cvGzxbba6sav2zZkH8GPf2oGk9yYoD5qrNWdu9fRehifgnFZJMV+nuy2nON2roRO4yQQ+v7MK/Pktl/HgfsUXg==" }, "@sapphire/shapeshift": { "version": "4.0.0", @@ -4153,9 +4115,9 @@ "integrity": "sha512-qiSlmBq9+BCdCA/L46dw8Uy93mloxsPSbwnm5yrKn2vMPiy8KyAskTF6zuV/j5BMsmOGZDPs7KjU+mjb670kfA==" }, "discord-api-types": { - "version": "0.37.83", - "resolved": "https://registry.npmjs.org/discord-api-types/-/discord-api-types-0.37.83.tgz", - "integrity": "sha512-urGGYeWtWNYMKnYlZnOnDHm8fVRffQs3U0SpE8RHeiuLKb/u92APS8HoQnPTFbnXmY1vVnXjXO4dOxcAn3J+DA==" + "version": "0.37.115", + "resolved": "https://registry.npmjs.org/discord-api-types/-/discord-api-types-0.37.115.tgz", + "integrity": "sha512-ivPnJotSMrXW8HLjFu+0iCVs8zP6KSliMelhr7HgcB2ki1QzpORkb26m71l1pzSnnGfm7gb5n/VtRTtpw8kXFA==" }, "discord-gamecord": { "version": "4.4.1", @@ -4204,29 +4166,22 @@ } }, "discord.js": { - "version": "14.16.0", - "resolved": "https://registry.npmjs.org/discord.js/-/discord.js-14.16.0.tgz", - "integrity": "sha512-FcJtUkdfW1GCtq+jBkB6yTS6eu3kV9W1XE+t6+OGqjAj3o6P88kZMpZgrP+yBn0KeCxA0hvU2dFzQrcA4uhRQg==", + "version": "14.17.2", + "resolved": "https://registry.npmjs.org/discord.js/-/discord.js-14.17.2.tgz", + "integrity": "sha512-mrH6ziLVtNtId4bV4bsaUt5jE6NUaiHMPqO5VsSw1VVhFnjFi9duD8ctlo90/6cUH+8uyKBkoq9mSJ35SuuZ7Q==", "requires": { - "@discordjs/builders": "^1.9.0", + "@discordjs/builders": "^1.10.0", "@discordjs/collection": "1.5.3", - "@discordjs/formatters": "^0.5.0", - "@discordjs/rest": "^2.4.0", + "@discordjs/formatters": "^0.6.0", + "@discordjs/rest": "^2.4.2", "@discordjs/util": "^1.1.1", - "@discordjs/ws": "1.1.1", + "@discordjs/ws": "^1.2.0", "@sapphire/snowflake": "3.5.3", - "discord-api-types": "0.37.97", + "discord-api-types": "^0.37.114", "fast-deep-equal": "3.1.3", "lodash.snakecase": "4.1.1", "tslib": "^2.6.3", "undici": "6.19.8" - }, - "dependencies": { - "discord-api-types": { - "version": "0.37.97", - "resolved": "https://registry.npmjs.org/discord-api-types/-/discord-api-types-0.37.97.tgz", - "integrity": "sha512-No1BXPcVkyVD4ZVmbNgDKaBoqgeQ+FJpzZ8wqHkfmBnTZig1FcH3iPPersiK1TUIAzgClh2IvOuVUYfcWLQAOA==" - } } }, "dom-serializer": { @@ -4364,9 +4319,9 @@ "integrity": "sha512-aIL5Fx7mawVa300al2BnEE4iNvo1qETxLrPI/o05L7z6go7fCw1J6EQmbK4FmJ2AS7kgVF/KEZWufBfdClMcPg==" }, "express": { - "version": "4.21.1", - "resolved": "https://registry.npmjs.org/express/-/express-4.21.1.tgz", - "integrity": "sha512-YSFlK1Ee0/GC8QaO91tHcDxJiE/X4FbpAyQWkxAvG6AXCuR65YzK8ua6D9hvi/TzUfZMpc+BwuM1IPw8fmQBiQ==", + "version": "4.21.2", + "resolved": "https://registry.npmjs.org/express/-/express-4.21.2.tgz", + "integrity": "sha512-28HqgMZAmih1Czt9ny7qr6ek2qddF4FclbMzwhCREB6OFfH+rXAnuNCwo1/wFvrtbgsQDb4kSbX9de9lFbrXnA==", "requires": { "accepts": "~1.3.8", "array-flatten": "1.1.1", @@ -4387,7 +4342,7 @@ "methods": "~1.1.2", "on-finished": "2.4.1", "parseurl": "~1.3.3", - "path-to-regexp": "0.1.10", + "path-to-regexp": "0.1.12", "proxy-addr": "~2.0.7", "qs": "6.13.0", "range-parser": "~1.2.1", @@ -5250,9 +5205,9 @@ "peer": true }, "path-to-regexp": { - "version": "0.1.10", - "resolved": "https://registry.npmjs.org/path-to-regexp/-/path-to-regexp-0.1.10.tgz", - "integrity": "sha512-7lf7qcQidTku0Gu3YDPc8DJ1q7OOucfa/BSsIwjuh56VU7katFvuM8hULfkwB3Fns/rsVF7PwPKVw1sl5KQS9w==" + "version": "0.1.12", + "resolved": "https://registry.npmjs.org/path-to-regexp/-/path-to-regexp-0.1.12.tgz", + "integrity": "sha512-RA1GjUVMnvYFxuqovrEqZoxxW5NUZqbwKtYz/Tt7nXerk0LbLblQmrsgdeOxV5SFHf0UDggjS/bSeOZwt1pmEQ==" }, "peek-readable": { "version": "4.1.0", @@ -5900,4 +5855,4 @@ } } } -} \ No newline at end of file +} diff --git a/package.json b/package.json index cf61858..7450d19 100644 --- a/package.json +++ b/package.json @@ -30,9 +30,9 @@ "discord-gamecord": "^4.4.1", "discord-player": "^6.7.1", "discord-player-youtubei": "^1.3.1", - "discord.js": "^14.15.3", + "discord.js": "^14.17.2", "easy-json-database": "^1.5.0", - "express": "^4.21.1", + "express": "^4.21.2", "ffmpeg-static": "^5.2.0", "fshdb": "^1.0.0-beta.2", "math-expression-evaluator": "^2.0.4", diff --git a/text/bad.txt b/text/bad.txt index 4389019..1af5919 100644 --- a/text/bad.txt +++ b/text/bad.txt @@ -1 +1 @@ -938831934962946170,945843153141911583,1042492981829173299,703405189872353401,1060305202948874403,980363502709530654,1110438615630217257,1108699529395568650,1108473547791290428,265941606035619841,396828331192090625,784977471162155029,1080404723133325392,990494289027018753,989179816873955378,846543119914893394,546917869141884938,989535117150158888,425708102520668173,784849546357768233,973829920025346088,436965815036674079,527604348037890048,615837732190552084,1114811223352016897,945816874938155029,1114247574115864656,961162577302388751,906907112704204820,893967180448821259,1092622262114467941,912881117277876297,1128423275391889490,880283255625113641,738113139295387761,1122818033669394504,1127927100947570708,599945975259201587,1141481803576770630,1137123219661410344,1145111635397193758,1118954109354123306,1118967325765410938,1154067086155468800,601480674670805024,1118969169547894804,972923595506475049,1118930270339473461,1075755980660416612,1165552145559457802,974608074771931166,976700749385990144,988428267562360913,1164461825614692372,159985870458322944,974601085341802508,1007288024658350111,1084182519454388306,376364221128245279,1031230682246160454,973686782837293067,964006257268752454,731772226608824371,498010961102503947,976960121764712478,1195430076595056701,984655808606380082,762076450047131648,1223168494426918914,429628691023134722,1236525969582587938,551360729425641473,558996514119221249,631754347591499786,654794063307866172,657093741823131650,705030473692348426,726171028354498560,726698838881992704,779242486186246155,842024725776695336,853307742651154432,878506828676345896,889243118157848599,889243962441859144,889244104200974386,889245165586358355,889245533288402977,889253631667343431,889255332155650079,889256000211791903,889259838478090272,889262616147554344,889282279304724533,891451407658528839,891451709711351808,891491235058057246,908999657450004480,919203544173785088,919577542829150298,919916564034228256,923436995236233238,925895536425459732,928533002441596968,932083147808596018,955717644969988116,957901669365055518,958095458482397314,963380769391259708,965472860569239622,965820979039318098,967335891410489355,967772286402854932,967784659540922409,967785909045059615,925899287676727348,967787195735875615,973048816951492678,973593889787240479,974638911374647318,975158085649838110,980043139802869810,979284706631761920,981819426263420958,981821046225240075,995744187590922341,1001418778590072933,1019723088675471461,1024235828077133834,1024377776217800876,1024969444511989780,1027158402767540235,1029857317870641252,1029872234782802070,1030046147072507967,1030989378291515524,1032198369222852688,1032521822983430154,1055212720804352100,1063032636500627476,1068710194122608640,1068782292438368266,1089174715156926556,1099130512922116188,1100173698683646042,1110723354232619018,1110855772994285588,1112167835259641917,1127329372911718431,1153763266900803704,1203168493563019337,1217899783969046679,1241345157085921291,771644607070732291,1142500629407875092,845681489958010960,866731936751550535,1253228308817248260,889090864029257790,1236460122088276070,1241768160504451083,868121476027531294,1297965381880778811,1301192498244358215,352210552484790276,897912041636003951,937656270373150800,1248732426558242920,924402811939192853,1287059628424826880,784061288040759367,1302847234311979079,1281361866643472569,1011721560207401041,739457218231009280,1283955193758875721 \ No newline at end of file +938831934962946170,945843153141911583,1042492981829173299,703405189872353401,1060305202948874403,980363502709530654,1110438615630217257,1108699529395568650,1108473547791290428,265941606035619841,396828331192090625,784977471162155029,1080404723133325392,990494289027018753,989179816873955378,846543119914893394,546917869141884938,989535117150158888,425708102520668173,784849546357768233,973829920025346088,436965815036674079,527604348037890048,615837732190552084,1114811223352016897,945816874938155029,1114247574115864656,961162577302388751,906907112704204820,893967180448821259,1092622262114467941,912881117277876297,1128423275391889490,880283255625113641,738113139295387761,1122818033669394504,1127927100947570708,599945975259201587,1141481803576770630,1137123219661410344,1145111635397193758,1118954109354123306,1118967325765410938,1154067086155468800,601480674670805024,1118969169547894804,972923595506475049,1118930270339473461,1075755980660416612,1165552145559457802,974608074771931166,976700749385990144,988428267562360913,1164461825614692372,159985870458322944,974601085341802508,1007288024658350111,1084182519454388306,376364221128245279,1031230682246160454,973686782837293067,964006257268752454,731772226608824371,498010961102503947,976960121764712478,1195430076595056701,984655808606380082,762076450047131648,1223168494426918914,429628691023134722,1236525969582587938,551360729425641473,558996514119221249,631754347591499786,654794063307866172,657093741823131650,705030473692348426,726171028354498560,726698838881992704,779242486186246155,842024725776695336,853307742651154432,878506828676345896,889243118157848599,889243962441859144,889244104200974386,889245165586358355,889245533288402977,889253631667343431,889255332155650079,889256000211791903,889259838478090272,889262616147554344,889282279304724533,891451407658528839,891451709711351808,891491235058057246,908999657450004480,919203544173785088,919577542829150298,919916564034228256,923436995236233238,925895536425459732,928533002441596968,932083147808596018,955717644969988116,957901669365055518,958095458482397314,963380769391259708,965472860569239622,965820979039318098,967335891410489355,967772286402854932,967784659540922409,967785909045059615,925899287676727348,967787195735875615,973048816951492678,973593889787240479,974638911374647318,975158085649838110,980043139802869810,979284706631761920,981819426263420958,981821046225240075,995744187590922341,1001418778590072933,1019723088675471461,1024235828077133834,1024377776217800876,1024969444511989780,1027158402767540235,1029857317870641252,1029872234782802070,1030046147072507967,1030989378291515524,1032198369222852688,1032521822983430154,1055212720804352100,1063032636500627476,1068710194122608640,1068782292438368266,1089174715156926556,1099130512922116188,1100173698683646042,1110723354232619018,1110855772994285588,1112167835259641917,1127329372911718431,1153763266900803704,1203168493563019337,1217899783969046679,1241345157085921291,771644607070732291,1142500629407875092,845681489958010960,866731936751550535,1253228308817248260,889090864029257790,1236460122088276070,1241768160504451083,868121476027531294,1297965381880778811,1301192498244358215,352210552484790276,897912041636003951,937656270373150800,1248732426558242920,924402811939192853,1287059628424826880,784061288040759367,1302847234311979079,1281361866643472569,1011721560207401041,739457218231009280,1283955193758875721,1315765026065354874,384495499908087809,1305306255589507163,989858264588124180,737578836505526303,1309984614085034095 \ No newline at end of file diff --git a/text/guild_features.js b/text/guild_features.js new file mode 100644 index 0000000..7848619 --- /dev/null +++ b/text/guild_features.js @@ -0,0 +1,142 @@ +module.exports = { + ACTIVITIES_ALPHA: 'Alpha activities', + ACTIVITIES_EMPLOYEE: 'Employee activities', + ACTIVITIES_INTERNAL_DEV: 'Dev activities', + ACTIVITY_FEED_DISABLED_BY_USER: 'Activity feed disabled', + ACTIVITY_FEED_ENABLED_BY_USER: 'Activity feed', + ANIMATED_BANNER: 'Animated banner', + ANIMATED_ICON: 'Animated icon', + APPLICATION_COMMAND_PERMISSIONS_V2: 'Old app permissions', + AUTO_MODERATION: 'AutoMod', + AUTOMOD_TRIGGER_KEYWORD_FILTER: 'Keyword AutoMod', + AUTOMOD_TRIGGER_ML_SPAM_FILTER: 'Spam (AI) AutoMod', + AUTOMOD_TRIGGER_SPAM_LINK_FILTER: 'Spam link AutoMod', + AUTOMOD_TRIGGER_USER_PROFILE: 'Profile AutoMod', + BANNER: 'Banner', + BOOSTING_TIERS_EXPERIMENT_MEDIUM_GUILD: 'Medium boost requirement', + BOOSTING_TIERS_EXPERIMENT_SMALL_GUILD: 'Small boost requirement', + BOT_DEVELOPER_EARLY_ACCESS: 'Early access bot', + BURST_REACTIONS: 'Burst reactions', + CHANNEL_BANNER: 'Channel banner', + CHANNEL_ICON_EMOJIS_GENERATED: 'Channel icon emojis', + CHANNEL_HIGHLIGHTS: 'Channel highlights', + CHANNEL_HIGHLIGHTS_DISABLED: 'Channel highlights disabled', + CLAN: 'Clan', + CLAN_DISCOVERY_DISABLED: 'Clan discovery disabled', + CLAN_PILOT_GENSHIN: 'Clan Genshin Impact', + CLAN_PILOT_VALORANT: 'Clan Valorant', + CLAN_PREPILOT_GENSHIN: 'Clan prepilot Genshin Impact', + CLAN_PREPILOT_VALORANT: 'Clan prepilot Valorant', + CLAN_SAFETY_REVIEW_DISABLED: 'Clan safety review disabled', + CLYDE_DISABLED: 'Clyde disabled', + CLYDE_ENABLED: 'Clyde enabled', + CLYDE_EXPERIMENT_ENABLED: 'Clyde experiment', + COMMERCE: 'Store', + COMMUNITY: 'Community', + COMMUNITY_CANARY: 'Community canary', + CREATOR_ACCEPTED_NEW_TERMS: 'New creator terms', + CREATOR_MONETIZABLE: 'Monetization', + CREATOR_MONETIZABLE_DISABLED: 'Monetization disabled', + CREATOR_MONETIZABLE_PENDING_NEW_OWNER_ONBOARDING: 'Monetization pending', + CREATOR_MONETIZABLE_PROVISIONAL: 'Monetization provisional', + CREATOR_MONETIZABLE_RESTRICTED: 'Restricted monetization', + CREATOR_MONETIZABLE_WHITEGLOVE: 'Monetization whiteglove', + CREATOR_MONETIZATION_APPLICATION_ALLOWLIST: 'Monetization app allowlist', + CREATOR_STORE_PAGE: 'Monetization store page', + DEVELOPER_SUPPORT_SERVER: 'App support server', + DISCOVERABLE: 'Discoverable', + DISCOVERABLE_DISABLED: 'Discovery disabled', + ENABLED_DISCOVERABLE_BEFORE: 'Previously discoverable', + ENABLED_MODERATION_EXPERIENCE_FOR_NON_COMMUNITY: 'Members tab without community', + EXPOSED_TO_BOOSTING_TIERS_EXPERIMENT: 'Reduced boosts requirement', + FEATURABLE: 'Featured', + FORCE_RELAY: 'Forced relay', + FORWARDING_DISABLED: 'Fowarding disabled', + GENSHIN_L30: 'Clan access beacause member use of Genshin Impact', + GUESTS_ENABLED: 'Guest invites', + GUILD_AUTOMOD_DEFAULT_LIST: 'Default automod lists', + GUILD_COMMUNICATION_DISABLED_GUILDS: 'Timeouts', + GUILD_HOME_DEPRECATION_OVERRIDE: 'Home tab deprecation hidden', + GUILD_HOME_OVERRIDE: 'Home tab without experiment', + GUILD_HOME_TEST: 'Home tab', + GUILD_ONBOARDING: 'Onboarding', + GUILD_ONBOARDING_ADMIN_ONLY: 'Onboarding only for admins', + GUILD_ONBOARDING_EVER_ENABLED: 'Previously onboarding', + GUILD_ONBOARDING_HAS_PROMPTS: 'Prompts configured in onboarding', + GUILD_PRODUCTS: 'Products', + GUILD_PRODUCTS_ALLOW_ARCHIVED_FILE: 'Archives as products', + GUILD_ROLE_SUBSCRIPTIONS: 'Role subscriptions', + GUILD_ROLE_SUBSCRIPTION_PURCHASE_FEEDBACK_LOOP: 'Role subscription suppress', + GUILD_ROLE_SUBSCRIPTION_TIER_TEMPLATE: 'Role subscriptions tier templates', + GUILD_ROLE_SUBSCRIPTION_TRIALS: 'Role subscriptions trials', + GUILD_SERVER_GUIDE: 'Server guide', + GUILD_WEB_PAGE_VANITY_URL: 'Vanity url by server web page', + HAD_EARLY_ACTIVITIES_ACCESS: 'Early activities access', + HAS_DIRECTORY_ENTRY: 'Listed in a directory channel', + HUB: 'Student hub', + INCREASED_THREAD_LIMIT: 'Can have over 1000 active threads', + INTERNAL_EMPLOYEE_ONLY: 'Discord employees only (Oh hi there)', + INVITE_SPLASH: 'Invite splash background', + LEADERBOARD_ENABLED: 'Game leaderboard', + INVITES_DISABLED: 'Paused invites', + LINKED_TO_HUB: 'Linked to a student hub', + LURKABLE: 'Preview guild', + MARKETPLACES_CONNECTION_ROLES: 'Linked roles', + MEDIA_CHANNEL_ALPHA: 'Media channels', + MEMBER_LIST_DISABLED: 'Member list disabled', + MEMBER_PROFILES: 'Member porfiles without Nitro', + MEMBER_SAFETY_PAGE_ROLLOUT: 'Member safety tab', + MEMBER_VERIFICATION_GATE_ENABLED: 'Member verification', + MEMBER_VERIFICATION_MANUAL_APPROVAL: 'Member verification v2', + MOBILE_WEB_ROLE_SUBSCRIPTION_PURCHASE_PAGE: 'Role subscriptions via web mobile', + MONETIZATION_ENABLED: 'Monetization', + MORE_EMOJI: 'More emoji slots', + MORE_SOUNDBOARD: 'More soundboard slots', + MORE_STICKERS: 'More sticker slots', + NEWS: 'News channels', + NEW_THREAD_PERMISSIONS: 'New thread permissions', + NON_COMMUNITY_RAID_ALERTS: 'Raid alerts without community', + PARTNERED: 'Partnered', + PREMIUM_TIER_3_OVERRIDE: 'Forced boost tier 3', + PREVIEW_ENABLED: 'Preview', + PRIVATE_THREADS: 'Private threads', + PRODUCTS_AVAILABLE_FOR_PURCHASE: 'Products for purchase', + PUBLIC: 'Public', + PUBLIC_DISABLED: 'Public disabled', + RAID_ALERTS_DISABLED: 'Raid alerts disabled', + RAID_ALERTS_ENABLED: 'Raid alerts', + RAPIDASH_TEST: 'Clan conversion', + RAPIDASH_TEST_REBIRTH: 'Clan conversion rebirth', + RELAY_ENABLED: 'Relay', + ROLE_ICONS: 'Role icons', + ROLE_SUBSCRIPTIONS_AVAILABLE_FOR_PURCHASE: 'Role subscriptions available for purchase', + ROLE_SUBSCRIPTIONS_ENABLED: 'Role subscriptions', + ROLE_SUBSCRIPTIONS_ENABLED_FOR_PURCHASE: 'Role subscriptions for purchase', + SEVEN_DAY_THREAD_ARCHIVE: '7 day thread archive', + SHARD: 'Shard student hub UI', + SHARED_CANVAS_FRIENDS_AND_FAMILY_TEST: 'Shared canvas', + SOUNDBOARD: 'Soundboard', + SUMMARIES_ENABLED: 'Summaries', + SUMMARIES_ENABLED_GA: 'Summaries general access', + SUMMARIES_DISABLED_BY_USER: 'Summaries disabled', + SUMMARIES_ENABLED_BY_USER: 'Summaries enabled', + SUMMARIES_OPT_OUT_EXPERIENCE: 'Summaries enabled by default', + STAFF_LEVEL_COLLABORATOR_REQUIRED: 'Collaborator or higer only (hallo)', + STAFF_LEVEL_RESTRICTED_COLLABORATOR_REQUIRED: 'Restricted collaborator or higher only (hewwo)', + TEXT_IN_STAGE_ENABLED: 'Text in stage', + TEXT_IN_VOICE_ENABLED: 'Text in voice', + THREADS_ENABLED: 'Threads', + THREADS_ENABLED_TESTING: 'Threads prerelease', + THREAD_DEFAULT_AUTO_ARCHIVE_DURATION: 'Thread default archive', + THREADS_ONLY_CHANNEL: 'Forum channels', + THREE_DAY_THREAD_ARCHIVE: '3 day thread archive', + TICKETED_EVENTS_ENABLED: 'Ticketed scheduled events', + TICKETING_ENABLED: 'Ticketing scheduled events', + VALORANT_L30: 'Clan access beacause member use of Valorant', + VANITY_URL: 'Vanity URL', + VERIFIED: 'Verified', + VIP_REGIONS: 'Better bitrate', + VOICE_CHANNEL_EFFECTS: 'Voice channel effects', + VOICE_IN_THREADS: 'Calls in threads', + WELCOME_SCREEN_ENABLED: 'Welcome screen' +} \ No newline at end of file